PowerCubeCtrl Class Reference

#include <PowerCubeCtrl.h>

List of all members.

Public Types

enum  PC_CTRL_STATE { PC_CTRL_OK = 0, PC_CTRL_NOT_REFERENCED = -1, PC_CTRL_ERR = -2, PC_CTRL_POW_VOLT_ERR = -3 }

Public Member Functions

bool Close ()
bool doHoming ()
 Waits until all Modules are homed, writes status comments to out.
bool dontWaitForSync ()
 Execute move commands immediately from now on:
bool getConfig (std::vector< double > &result)
 Returns the current Joint Angles.
std::string getErrorMessage () const
bool getJointVelocities (std::vector< double > &result)
 Returns the current Angular velocities (Rad/s).
bool getStatus (PC_CTRL_STATE &error, std::vector< std::string > &errorMessages)
bool HomingDone ()
bool Init (PowerCubeCtrlParams *params)
bool isInitialized () const
bool MoveJointSpaceSync (const std::vector< double > &Angle)
 same as MoveJointSpace, but final angles should by reached simultaniously! Returns the time that the movement will take
bool MoveVel (const std::vector< double > &Vel)
 Moves all cubes by the given velocities.
 PowerCubeCtrl ()
bool Recover ()
 Recovery after emergency stop or power supply failure.
bool setMaxAcceleration (const std::vector< double > &radPerSecSquared)
bool setMaxAcceleration (double radPerSecSquared)
 Sets the maximum angular acceleration (rad/s^2) for the Joints, use with care! A Value of 0.5 is already pretty fast, you probably don't want anything more than one...
bool setMaxVelocity (const std::vector< double > &radpersec)
bool setMaxVelocity (double radpersec)
 Sets the maximum angular velocity (rad/s) for the Joints, use with care! A Value of 0.5 is already pretty fast, you probably don't want anything more than one...
bool statusAcc ()
 Returs true if any of the Joints are accelerating.
bool statusDec ()
 Returns true if any of the Joints are decelerating.
bool statusMoving ()
 Returns true if any of the Joints are still moving Should also return true if Joints are accelerating or decelerating.
bool Stop ()
 Stops the Manipulator immediately.
bool waitForSync ()
 Tells the Modules not to start moving until PCubel_startMotionAll is called.
 ~PowerCubeCtrl ()

Protected Member Functions

void millisleep (unsigned int milliseconds) const
 Returns the time for a ramp-move about dtheta with v, a would take, assuming the module is currently moving at vnow.

Protected Attributes

bool m_CANDeviceOpened
int m_Dev
int m_DOF
std::string m_ErrorMessage
std::vector< int > m_IdModules
bool m_Initialized
std::vector< double > m_maxAcc
std::vector< double > m_maxVel

Detailed Description

Definition at line 203 of file PowerCubeCtrl.h.


Member Enumeration Documentation

Enumerator:
PC_CTRL_OK 
PC_CTRL_NOT_REFERENCED 
PC_CTRL_ERR 
PC_CTRL_POW_VOLT_ERR 

Definition at line 274 of file PowerCubeCtrl.h.


Constructor & Destructor Documentation

PowerCubeCtrl::PowerCubeCtrl (  ) 

Definition at line 80 of file PowerCubeCtrl.cpp.

PowerCubeCtrl::~PowerCubeCtrl (  ) 

The Deconstructor

Definition at line 255 of file PowerCubeCtrl.cpp.


Member Function Documentation

bool PowerCubeCtrl::Close (  ) 

Definition at line 683 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::doHoming (  ) 

Waits until all Modules are homed, writes status comments to out.

does homing for all Modules

Definition at line 564 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::dontWaitForSync (  ) 

Execute move commands immediately from now on:

Definition at line 616 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::getConfig ( std::vector< double > &  result  ) 

Returns the current Joint Angles.

Definition at line 264 of file PowerCubeCtrl.cpp.

std::string PowerCubeCtrl::getErrorMessage (  )  const [inline]

Definition at line 214 of file PowerCubeCtrl.h.

bool PowerCubeCtrl::getJointVelocities ( std::vector< double > &  result  ) 

Returns the current Angular velocities (Rad/s).

Definition at line 283 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::getStatus ( PC_CTRL_STATE error,
std::vector< std::string > &  errorMessages 
)
bool PowerCubeCtrl::HomingDone (  ) 

Wait functions which is waiting that all cubes have done their homing

Definition at line 579 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::Init ( PowerCubeCtrlParams params  ) 

Definition at line 89 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::isInitialized (  )  const [inline]

Definition at line 212 of file PowerCubeCtrl.h.

void PowerCubeCtrl::millisleep ( unsigned int  milliseconds  )  const [protected]

Returns the time for a ramp-move about dtheta with v, a would take, assuming the module is currently moving at vnow.

Definition at line 700 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::MoveJointSpaceSync ( const std::vector< double > &  Angle  ) 

same as MoveJointSpace, but final angles should by reached simultaniously! Returns the time that the movement will take

Definition at line 299 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::MoveVel ( const std::vector< double > &  Vel  ) 

Moves all cubes by the given velocities.

Definition at line 410 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::Recover (  ) 

Recovery after emergency stop or power supply failure.

Definition at line 710 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::setMaxAcceleration ( const std::vector< double > &  radPerSecSquared  ) 

Definition at line 496 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::setMaxAcceleration ( double  radPerSecSquared  ) 

Sets the maximum angular acceleration (rad/s^2) for the Joints, use with care! A Value of 0.5 is already pretty fast, you probably don't want anything more than one...

Definition at line 483 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::setMaxVelocity ( const std::vector< double > &  radpersec  ) 

Definition at line 468 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::setMaxVelocity ( double  radpersec  ) 

Sets the maximum angular velocity (rad/s) for the Joints, use with care! A Value of 0.5 is already pretty fast, you probably don't want anything more than one...

Definition at line 456 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::statusAcc (  ) 

Returs true if any of the Joints are accelerating.

Definition at line 547 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::statusDec (  ) 

Returns true if any of the Joints are decelerating.

Definition at line 529 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::statusMoving (  ) 

Returns true if any of the Joints are still moving Should also return true if Joints are accelerating or decelerating.

Returns true if some cubes are still moving.

Definition at line 512 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::Stop (  ) 

Stops the Manipulator immediately.

Definition at line 439 of file PowerCubeCtrl.cpp.

bool PowerCubeCtrl::waitForSync (  ) 

Tells the Modules not to start moving until PCubel_startMotionAll is called.

Definition at line 597 of file PowerCubeCtrl.cpp.


Member Data Documentation

Definition at line 299 of file PowerCubeCtrl.h.

int PowerCubeCtrl::m_Dev [protected]

Definition at line 297 of file PowerCubeCtrl.h.

int PowerCubeCtrl::m_DOF [protected]

Definition at line 296 of file PowerCubeCtrl.h.

std::string PowerCubeCtrl::m_ErrorMessage [protected]

Definition at line 306 of file PowerCubeCtrl.h.

std::vector<int> PowerCubeCtrl::m_IdModules [protected]

Definition at line 301 of file PowerCubeCtrl.h.

bool PowerCubeCtrl::m_Initialized [protected]

Definition at line 298 of file PowerCubeCtrl.h.

std::vector<double> PowerCubeCtrl::m_maxAcc [protected]

Definition at line 304 of file PowerCubeCtrl.h.

std::vector<double> PowerCubeCtrl::m_maxVel [protected]

Definition at line 303 of file PowerCubeCtrl.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines


cob_powercube_chain
Author(s): Florian Weisshardt
autogenerated on Fri Jan 11 09:14:23 2013