#include <PowerCubeSim.h>
|
int | startSimulatedMovement (std::vector< double > target) |
|
double | timeRampMove (double dtheta, double vnow, double v, double a) |
| Tells the Modules not to start moving until PCubel_startMotionAll is called. More...
|
|
Definition at line 62 of file PowerCubeSim.h.
Looks for connected Modules and returns their Ids in a vector.
Waits until all Modules are homed, writes status comments to out.
Enumerator |
---|
PC_CTRL_OK |
|
PC_CTRL_NOT_REFERENCED |
|
PC_CTRL_ERR |
|
PC_CTRL_POW_VOLT_ERR |
|
Definition at line 142 of file PowerCubeSim.h.
PowerCubeSim::PowerCubeSim |
( |
| ) |
|
PowerCubeSim::~PowerCubeSim |
( |
| ) |
|
int PowerCubeSim::Close |
( |
| ) |
|
|
inline |
bool PowerCubeSim::getConfig |
( |
std::vector< double > & |
result | ) |
|
std::vector<double> PowerCubeSim::getCurrentAngularMaxAccel |
( |
| ) |
|
|
inline |
std::vector<double> PowerCubeSim::getCurrentAngularMaxVel |
( |
| ) |
|
|
inline |
std::string PowerCubeSim::getErrorMessage |
( |
| ) |
const |
|
inline |
bool PowerCubeSim::getJointVelocities |
( |
std::vector< double > & |
result | ) |
|
Returns the current Angular velocities (Rad/s)
Definition at line 156 of file PowerCubeSim.cpp.
vector<int> PowerCubeSim::getModuleMap |
( |
| ) |
const |
|
inline |
bool PowerCubeSim::getStatusMoving |
( |
int |
cubeNo | ) |
const |
|
inline |
The Init function opens the bus and initializes it. Furthermore the Id`s of the Cubes are taken and mapped. These function has to be used before the cubes can be positioned after the power up.
- Parameters
-
m_DOF | gives the number of Degrees of freedom of the manipulator which is connected (the gripper is not counted as DOF) |
Definition at line 58 of file PowerCubeSim.cpp.
bool PowerCubeSim::isInitialized |
( |
| ) |
const |
|
inline |
void PowerCubeSim::millisleep |
( |
unsigned int |
milliseconds | ) |
const |
bool PowerCubeSim::MoveJointSpaceSync |
( |
const std::vector< double > & |
Angle | ) |
|
same as MoveJointSpace, but final angles should by reached simultaniously! Returns the time that the movement will take
same as MoveJointSpace, but final angles should by reached simultaniously!
Definition at line 205 of file PowerCubeSim.cpp.
bool PowerCubeSim::MoveVel |
( |
const std::vector< double > & |
vel | ) |
|
Moves all cubes by the given velocities.
Starts moving all cubes with the given velocities.
Definition at line 338 of file PowerCubeSim.cpp.
void PowerCubeSim::setCurrentAngles |
( |
std::vector< double > |
Angles | ) |
|
void PowerCubeSim::setCurrentJointVelocities |
( |
std::vector< double > |
Angles | ) |
|
bool PowerCubeSim::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 385 of file PowerCubeSim.cpp.
bool PowerCubeSim::setMaxAcceleration |
( |
const std::vector< double > & |
radPerSecSquared | ) |
|
bool PowerCubeSim::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 365 of file PowerCubeSim.cpp.
bool PowerCubeSim::setMaxVelocity |
( |
const std::vector< double > & |
radpersec | ) |
|
void PowerCubeSim::setStatusMoving |
( |
int |
cubeNo, |
|
|
bool |
moving |
|
) |
| |
int PowerCubeSim::startSimulatedMovement |
( |
std::vector< double > |
target | ) |
|
|
protected |
bool PowerCubeSim::statusAcc |
( |
| ) |
|
Returs true if any of the Joints are accelerating.
Definition at line 485 of file PowerCubeSim.cpp.
bool PowerCubeSim::statusDec |
( |
| ) |
|
Returns true if any of the Joints are decelerating.
Definition at line 469 of file PowerCubeSim.cpp.
bool PowerCubeSim::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 409 of file PowerCubeSim.cpp.
bool PowerCubeSim::statusMoving |
( |
int |
cubeNo | ) |
|
bool PowerCubeSim::Stop |
( |
| ) |
|
double PowerCubeSim::timeRampMove |
( |
double |
dtheta, |
|
|
double |
vnow, |
|
|
double |
v, |
|
|
double |
a |
|
) |
| |
|
protected |
Tells the Modules not to start moving until PCubel_startMotionAll is called.
Returns the time for a ramp-move about dtheta with v, a would take, assuming the module is currently moving at vnowClose.
Execute move commands immediately from now on: Returns the time for a ramp-move about dtheta with v, a would take, assuming the module is currently moving at vnowClose
Definition at line 296 of file PowerCubeSim.cpp.
Jointd PowerCubeSim::m_AngleOffsets |
|
protected |
pthread_mutex_t PowerCubeSim::m_Angles_Mutex |
|
protected |
pthread_mutex_t PowerCubeSim::m_AngularVel_Mutex |
|
protected |
std::vector<double> PowerCubeSim::m_CurrentAngles |
|
protected |
std::vector<double> PowerCubeSim::m_CurrentAngularMaxAccel |
|
protected |
std::vector<double> PowerCubeSim::m_CurrentAngularMaxVel |
|
protected |
std::vector<double> PowerCubeSim::m_CurrentAngularVel |
|
protected |
std::string PowerCubeSim::m_ErrorMessage |
|
protected |
vector<int> PowerCubeSim::m_IdModules |
|
protected |
int PowerCubeSim::m_Initialized |
|
protected |
std::vector<double> PowerCubeSim::m_maxAcc |
|
protected |
std::vector<double> PowerCubeSim::m_maxVel |
|
protected |
pthread_mutex_t PowerCubeSim::m_Movement_Mutex |
|
protected |
std::vector<bool> PowerCubeSim::m_MovementInProgress |
|
protected |
int PowerCubeSim::m_NumOfModules |
|
protected |
pthread_t* PowerCubeSim::m_SimThreadID |
|
protected |
float PowerCubeSim::maxAcc |
|
protected |
double PowerCubeSim::maxVel |
The documentation for this class was generated from the following files: