#include <muscledarm.h>
Inherits OdeRobot.
Inheritance diagram for MuscledArm:


Public Member Functions | |
| MuscledArm (const OdeHandle &odeHandle, const OsgHandle &osgHandle, const MuscledArmConf &conf, const std::string &name) | |
| virtual | ~MuscledArm () |
| virtual void | update () |
| draws the arm | |
| virtual void | place (const osg::Matrix &pose) |
| sets the pose of the vehicle | |
| virtual int | getSensors (sensor *sensors, int sensornumber) |
| returns actual sensorvalues | |
| virtual void | setMotors (const motor *motors, int motornumber) |
| sets actual motorcommands | |
| virtual int | getSensorNumber () |
| returns number of sensors | |
| virtual int | getMotorNumber () |
| returns number of motors | |
| virtual int | getSegmentsPosition (std::vector< Position > &poslist) |
| returns a vector with the positions of all segments of the robot | |
| virtual bool | collisionCallback (void *data, dGeomID o1, dGeomID o2) |
| virtual void | doInternalStuff (GlobalData &globalData) |
| this function is called in each timestep. | |
| paramlist | getParamList () const |
| The list of all parameters with there value as allocated lists. | |
| virtual paramval | getParam (const paramkey &key) const |
| virtual bool | setParam (const paramkey &key, paramval val) |
| virtual Primitive * | getMainObject () const |
Static Public Member Functions | |
| static MuscledArmConf | getDefaultConf () |
Public Attributes | |
| double | force_ [6] |
Protected Member Functions | |
| virtual Primitive * | getMainPrimitive () const |
| the main object of the robot, which is used for position and speed tracking | |
| virtual void | create (const osg::Matrix &pose) |
| creates arm at desired position | |
| virtual void | destroy () |
| destroys vehicle and space | |
| double | dBodyGetPositionAll (dBodyID basis, int para) |
| double | dGeomGetPositionAll (dGeomID basis, int para) |
| void | BodyCreate (int n, dMass m, dReal x, dReal y, dReal z, dReal qx, dReal qy, dReal qz, dReal qangle) |
Static Protected Member Functions | |
| static void | mycallback (void *data, dGeomID o1, dGeomID o2) |
Protected Attributes | |
| MuscledArmConf | conf |
| Primitive * | object [NUMParts] |
| Joint * | joint [NUMJoints] |
| Position | old_dist [NUMParts] |
| paramval | factorMotors |
| paramval | factorSensors |
| paramval | damping |
| paramval | |
| int | segmentsno |
| double | gelenkabstand |
| double | SOCKEL_LAENGE |
| double | SOCKEL_BREITE |
| double | SOCKEL_HOEHE |
| double | SOCKEL_MASSE |
| int | sensorno |
| int | motorno |
| bool | created |
| dSpaceID | parentspace |
| int | printed |
| double | max_l |
| double | max_r |
| double | min_l |
| double | min_r |
| double | base_width |
| double | base_length |
| double | upperArm_width |
| double | upperArm_length |
| double | lowerArm_width |
| double | lowerArm_length |
| double | joint_offset |
| double | mainMuscle_width |
| double | mainMuscle_length |
| double | smallMuscle_width |
| double | smallMuscle_length |
Static Protected Attributes | |
| static const int | armanzahl = 3 |
| MuscledArm | ( | const OdeHandle & | odeHandle, | |
| const OsgHandle & | osgHandle, | |||
| const MuscledArmConf & | conf, | |||
| const std::string & | name | |||
| ) |
| virtual ~MuscledArm | ( | ) | [inline, virtual] |
| void BodyCreate | ( | int | n, | |
| dMass | m, | |||
| dReal | x, | |||
| dReal | y, | |||
| dReal | z, | |||
| dReal | qx, | |||
| dReal | qy, | |||
| dReal | qz, | |||
| dReal | qangle | |||
| ) | [protected] |
| bool collisionCallback | ( | void * | data, | |
| dGeomID | o1, | |||
| dGeomID | o2 | |||
| ) | [virtual] |
Reimplemented from OdeRobot.
| void create | ( | const osg::Matrix & | pose | ) | [protected, virtual] |
creates arm at desired position
| pose | 4x4 pose matrix |
| double dBodyGetPositionAll | ( | dBodyID | basis, | |
| int | para | |||
| ) | [protected] |
| void destroy | ( | ) | [protected, virtual] |
destroys vehicle and space
| double dGeomGetPositionAll | ( | dGeomID | basis, | |
| int | para | |||
| ) | [protected] |
| void doInternalStuff | ( | GlobalData & | globalData | ) | [virtual] |
this function is called in each timestep.
It should perform robot-internal checks, like space-internal collision detection, sensor resets/update etc.
| globalData | structure that contains global data from the simulation environment |
Implements OdeRobot.
| static MuscledArmConf getDefaultConf | ( | ) | [inline, static] |
| Primitive * getMainObject | ( | ) | const [virtual] |
| virtual Primitive* getMainPrimitive | ( | ) | const [inline, protected, virtual] |
| virtual int getMotorNumber | ( | ) | [inline, virtual] |
| Configurable::paramval getParam | ( | const paramkey & | key | ) | const [virtual] |
| Configurable::paramlist getParamList | ( | ) | const [virtual] |
| int getSegmentsPosition | ( | std::vector< Position > & | poslist | ) | [virtual] |
returns a vector with the positions of all segments of the robot
| poslist | vector of positions (of all robot segments) |
| virtual int getSensorNumber | ( | ) | [inline, virtual] |
| int getSensors | ( | sensor * | sensors, | |
| int | sensornumber | |||
| ) | [virtual] |
returns actual sensorvalues
| sensors | sensors scaled to [-1,1] | |
| sensornumber | length of the sensor array |
Implements AbstractRobot.
| void mycallback | ( | void * | data, | |
| dGeomID | o1, | |||
| dGeomID | o2 | |||
| ) | [static, protected] |
| void place | ( | const osg::Matrix & | pose | ) | [virtual] |
| void setMotors | ( | const motor * | motors, | |
| int | motornumber | |||
| ) | [virtual] |
sets actual motorcommands
| motors | motors scaled to [-1,1] | |
| motornumber | length of the motor array |
Implements AbstractRobot.
| void update | ( | ) | [virtual] |
const int armanzahl = 3 [static, protected] |
double base_length [protected] |
double base_width [protected] |
MuscledArmConf conf [protected] |
bool created [protected] |
paramval factorMotors [protected] |
paramval factorSensors [protected] |
| double force_[6] |
double gelenkabstand [protected] |
double joint_offset [protected] |
double lowerArm_length [protected] |
double lowerArm_width [protected] |
double mainMuscle_length [protected] |
double mainMuscle_width [protected] |
double max_l [protected] |
double max_r [protected] |
double min_l [protected] |
double min_r [protected] |
int motorno [protected] |
dSpaceID parentspace [protected] |
Reimplemented from OdeRobot.
int printed [protected] |
int segmentsno [protected] |
int sensorno [protected] |
double smallMuscle_length [protected] |
double smallMuscle_width [protected] |
double SOCKEL_BREITE [protected] |
double SOCKEL_HOEHE [protected] |
double SOCKEL_LAENGE [protected] |
double SOCKEL_MASSE [protected] |
double upperArm_length [protected] |
double upperArm_width [protected] |
1.4.7