Nimm2 Class Reference

Robot that looks like a Nimm 2 Bonbon :-) 2 wheels and a cylinder like body. More...

#include <nimm2.h>

Inherits lpzrobots::OdeRobot.

Inherited by TwoWheeled.

Collaboration diagram for Nimm2:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Nimm2 (const OdeHandle &odehandle, const OsgHandle &osgHandle, const Nimm2Conf &conf, const std::string &name)
virtual ~Nimm2 ()
virtual void update ()
 updates the OSG nodes of the vehicle
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 void doInternalStuff (GlobalData &globalData)
 this function is called in each timestep.
virtual double & getSumForce ()
virtual double & getContactPoints ()

Static Public Member Functions

static Nimm2Conf getDefaultConf ()

Protected Member Functions

virtual void create (const osg::Matrix &pose)
 creates vehicle at desired pose
virtual void destroy ()
 destroys vehicle and space

Static Protected Member Functions

static void mycallback (void *data, dGeomID o1, dGeomID o2)

Protected Attributes

double contactPoints
Nimm2Conf conf
 Inspectable interface.
double length
double width
double height
double radius
double wheelthickness
double cmass
double wmass
int sensorno
int motorno
bool created
double max_force
double wheeloffset
int number_bumpers
Bumper bumper [2]
RaySensorBank irSensorBank
bool visForce
double sumForce

Detailed Description

Robot that looks like a Nimm 2 Bonbon :-) 2 wheels and a cylinder like body.

wheel order: left, right IR order: front left, front right, right, right rear, rear right, rear left, left rear, left


Constructor & Destructor Documentation

Nimm2 ( const OdeHandle odehandle,
const OsgHandle osgHandle,
const Nimm2Conf conf,
const std::string &  name 
)
~Nimm2 (  )  [virtual]

Member Function Documentation

void create ( const osg::Matrix pose  )  [protected, virtual]

creates vehicle at desired pose

creates vehicle at desired position

Parameters:
pose 4x4 pose matrix
pos struct Position with desired position

Reimplemented in TwoWheeled.

void destroy (  )  [protected, virtual]

destroys vehicle and space

Reimplemented in TwoWheeled.

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.

Parameters:
globalData structure that contains global data from the simulation environment

Reimplemented from OdeRobot.

virtual double& getContactPoints (  )  [inline, virtual]
static Nimm2Conf getDefaultConf (  )  [inline, static]

Reimplemented in TwoWheeled.

virtual int getMotorNumber (  )  [inline, virtual]

returns number of motors

Implements AbstractRobot.

int getSegmentsPosition ( std::vector< Position > &  poslist  )  [virtual]

returns a vector with the positions of all segments of the robot

Parameters:
poslist vector of positions (of all robot segments)
Returns:
length of the list
virtual int getSensorNumber (  )  [inline, virtual]

returns number of sensors

Implements AbstractRobot.

Reimplemented in TwoWheeled.

int getSensors ( sensor sensors,
int  sensornumber 
) [virtual]

returns actual sensorvalues

Parameters:
sensors sensors scaled to [-1,1]
sensornumber length of the sensor array
Returns:
number of actually written sensors
Parameters:
sensors sensors scaled to [-1,1] (more or less)
sensornumber length of the sensor array
Returns:
number of actually written sensors

Implements AbstractRobot.

Reimplemented in TwoWheeled.

virtual double& getSumForce (  )  [inline, virtual]
static void mycallback ( void *  data,
dGeomID  o1,
dGeomID  o2 
) [static, protected]
void place ( const osg::Matrix pose  )  [virtual]

sets the pose of the vehicle

Parameters:
pose desired 4x4 pose matrix

Implements OdeRobot.

void setMotors ( const motor motors,
int  motornumber 
) [virtual]

sets actual motorcommands

Parameters:
motors motors scaled to [-1,1]
motornumber length of the motor array

Implements AbstractRobot.

void update (  )  [virtual]

updates the OSG nodes of the vehicle

updates the osg notes and sensorbank

Implements OdeRobot.

Reimplemented in TwoWheeled.


Member Data Documentation

Bumper bumper[2] [protected]
double cmass [protected]
Nimm2Conf conf [protected]

Inspectable interface.

Reimplemented in TwoWheeled.

double contactPoints [protected]
bool created [protected]
double height [protected]
double length [protected]
double max_force [protected]
int motorno [protected]
int number_bumpers [protected]
double radius [protected]
int sensorno [protected]
double sumForce [protected]
bool visForce [protected]
double wheeloffset [protected]
double wheelthickness [protected]
double width [protected]
double wmass [protected]

The documentation for this class was generated from the following files:
Generated on Thu Jun 28 14:48:57 2012 for Robot Simulator of the Robotics Group for Self-Organization of Control by  doxygen 1.6.3