RcsPySim
A robot control and simulation library
Rcs::ECQuanserQube Class Reference
Inheritance diagram for Rcs::ECQuanserQube:
Collaboration diagram for Rcs::ECQuanserQube:

Private Member Functions

virtual ActionModelcreateActionModel ()
 
virtual ObservationModelcreateObservationModel ()
 
virtual void populatePhysicsParameters (PhysicsParameterManager *manager)
 
virtual InitStateSettercreateInitStateSetter ()
 
virtual ForceDisturbercreateForceDisturber ()
 
virtual void initViewer (Rcs::Viewer *viewer)
 
void getHUDText (std::vector< std::string > &linesOut, double currentTime, const MatNd *obs, const MatNd *currentAction, PhysicsBase *simulator, PhysicsParameterManager *physicsManager, ForceDisturber *forceDisturber) override
 

Additional Inherited Members

- Public Types inherited from Rcs::ExperimentConfig
typedef ExperimentConfig *(* ExperimentConfigCreateFunction) ()
 
- Public Member Functions inherited from Rcs::ExperimentConfig
 ExperimentConfig ()
 
virtual ~ExperimentConfig ()
 
PhysicsParameterManagercreatePhysicsParameterManager ()
 
std::string getHUDText (double currentTime, const MatNd *currentObservation, const MatNd *currentAction, PhysicsBase *simulator, PhysicsParameterManager *physicsManager, ForceDisturber *forceDisturber)
 
- Static Public Member Functions inherited from Rcs::ExperimentConfig
static void registerType (const char *name, ExperimentConfigCreateFunction creator)
 
static ExperimentConfigcreate (PropertySource *properties)
 
- Public Attributes inherited from Rcs::ExperimentConfig
PropertySourceproperties
 
RcsGraph * graph
 
ActionModelactionModel
 
ObservationModelobservationModel
 
RcsCollisionMdl * collisionMdl
 
double dt
 
bool checkJointLimits
 
- Protected Member Functions inherited from Rcs::ExperimentConfig
virtual void load (PropertySource *properties)
 

Detailed Description

Definition at line 66 of file ECQuanserQube.cpp.

Member Function Documentation

◆ createActionModel()

virtual ActionModel* Rcs::ECQuanserQube::createActionModel ( )
inlineprivatevirtual

Create the action model. Read any configuration from this->properties.

Returns
the new action model

V_m_max = 5 V and theta_dot_0 = 0 rad/s tau_max = k_m (V_m_max - k_m * theta_dot_0) / R_m = 0.04375 Nm J = m * l^2 / 12 = 0.000033282 kg m^2 alpha_ddot_max = tau_max / J = 1314.52 rad/s^2

Implements Rcs::ExperimentConfig.

Definition at line 68 of file ECQuanserQube.cpp.

◆ createForceDisturber()

virtual ForceDisturber* Rcs::ECQuanserQube::createForceDisturber ( )
inlineprivatevirtual

Create a model for artificial external disturbing forces. The default implementation returns NULL to ignore this.

Returns
the new force disturber

Reimplemented from Rcs::ExperimentConfig.

Definition at line 114 of file ECQuanserQube.cpp.

◆ createInitStateSetter()

virtual InitStateSetter* Rcs::ECQuanserQube::createInitStateSetter ( )
inlineprivatevirtual

Create the init state setter. Read any configuration from this->properties. Since the init state setter is only needed for the simulation, it is not stored in the ExperimentConfig. Instead, the simulation calls this method and manages the object on it's own. The default implementation returns NULL to use the state from the graph file.

Returns
the new init state setter

Reimplemented from Rcs::ExperimentConfig.

Definition at line 109 of file ECQuanserQube.cpp.

◆ createObservationModel()

virtual ObservationModel* Rcs::ECQuanserQube::createObservationModel ( )
inlineprivatevirtual

Create the observation model. Read any configuration from this->properties.

Returns
the new observation model

Implements Rcs::ExperimentConfig.

Definition at line 92 of file ECQuanserQube.cpp.

◆ getHUDText()

void Rcs::ECQuanserQube::getHUDText ( std::vector< std::string > &  linesOut,
double  currentTime,
const MatNd *  currentObservation,
const MatNd *  currentAction,
PhysicsBase *  simulator,
PhysicsParameterManager physicsManager,
ForceDisturber forceDisturber 
)
inlineoverrideprivatevirtual

Called to update the HUD text for the viewer. The default implementation will show the physics engine name, the current time.

Parameters
[out]linesOutvector of HUD lines. initially empty.
[in]currentTimesimulation time
[in]currentObservationlatest observation
[in]currentActionlatest action
[in]simulatorphysics simulator or NULL if none
[in]physicsManagerphysics parameter manager or NULL if none
[in]forceDisturberdistruber which applies the forces to a given body
Returns
concatenated HUD lines

Reimplemented from Rcs::ExperimentConfig.

Definition at line 130 of file ECQuanserQube.cpp.

◆ initViewer()

virtual void Rcs::ECQuanserQube::initViewer ( Rcs::Viewer *  viewer)
inlineprivatevirtual

Perform additional initialization on the viewer. This could, for example, change the camera position or add additional visualization. The default implementation does nothing.

Reimplemented from Rcs::ExperimentConfig.

Definition at line 121 of file ECQuanserQube.cpp.

◆ populatePhysicsParameters()

virtual void Rcs::ECQuanserQube::populatePhysicsParameters ( PhysicsParameterManager manager)
inlineprivatevirtual

Add the physics parameter descriptors to the given physics parameter manager.

Parameters
managerparameter manager to populate.

Reimplemented from Rcs::ExperimentConfig.

Definition at line 99 of file ECQuanserQube.cpp.


The documentation for this class was generated from the following file: