YARP
Yet Another Robot Platform
yarp::dev::ImplementVelocityControl Class Reference

#include <yarp/dev/ImplementVelocityControl.h>

+ Inheritance diagram for yarp::dev::ImplementVelocityControl:

Public Member Functions

 ImplementVelocityControl (yarp::dev::IVelocityControlRaw *y)
 Constructor. More...
 
virtual ~ImplementVelocityControl ()
 Destructor. More...
 
bool getAxes (int *axes) override
 Get the number of controlled axes. More...
 
bool velocityMove (int j, double sp) override
 Start motion at a given speed, single joint. More...
 
bool velocityMove (const double *sp) override
 Start motion at a given speed, multiple joints. More...
 
bool setRefAcceleration (int j, double acc) override
 Set reference acceleration for a joint. More...
 
bool setRefAccelerations (const double *accs) override
 Set reference acceleration on all joints. More...
 
bool getRefAcceleration (int j, double *acc) override
 Get reference acceleration for a joint. More...
 
bool getRefAccelerations (double *accs) override
 Get reference acceleration of all joints. More...
 
bool stop (int j) override
 Stop motion, single joint. More...
 
bool stop () override
 Stop motion, multiple joints. More...
 
bool velocityMove (const int n_joint, const int *joints, const double *spds) override
 Start motion at a given speed for a subset of joints. More...
 
bool getRefVelocity (const int joint, double *vel) override
 Get the last reference speed set by velocityMove for single joint. More...
 
bool getRefVelocities (double *vels) override
 Get the last reference speed set by velocityMove for all joints. More...
 
bool getRefVelocities (const int n_joint, const int *joints, double *vels) override
 Get the last reference speed set by velocityMove for a group of joints. More...
 
bool setRefAccelerations (const int n_joint, const int *joints, const double *accs) override
 Set reference acceleration for a subset of joints. More...
 
bool getRefAccelerations (const int n_joint, const int *joints, double *accs) override
 Get reference acceleration for a subset of joints. More...
 
bool stop (const int n_joint, const int *joints) override
 Stop motion for a subset of joints. More...
 
- Public Member Functions inherited from yarp::dev::IVelocityControl
virtual ~IVelocityControl ()
 Destructor. More...
 

Protected Member Functions

bool initialize (int size, const int *amap, const double *enc, const double *zos)
 Initialize the internal data and alloc memory. More...
 
bool uninitialize ()
 Clean up internal data and memory. More...
 

Protected Attributes

IVelocityControlRawiVelocity
 
void * helper
 
yarp::dev::impl::FixedSizeBuffersManager< int > * intBuffManager
 
yarp::dev::impl::FixedSizeBuffersManager< double > * doubleBuffManager
 

Detailed Description

Definition at line 34 of file ImplementVelocityControl.h.

Constructor & Destructor Documentation

◆ ImplementVelocityControl()

ImplementVelocityControl::ImplementVelocityControl ( yarp::dev::IVelocityControlRaw y)

Constructor.

Parameters
yis the pointer to the class instance inheriting from this implementation.

Definition at line 20 of file ImplementVelocityControl.cpp.

◆ ~ImplementVelocityControl()

ImplementVelocityControl::~ImplementVelocityControl ( )
virtual

Destructor.

Definition at line 27 of file ImplementVelocityControl.cpp.

Member Function Documentation

◆ getAxes()

bool ImplementVelocityControl::getAxes ( int *  axes)
overridevirtual

Get the number of controlled axes.

This command asks the number of controlled axes for the current physical interface. parame axes pointer to storage

Returns
true/false.

Implements yarp::dev::IVelocityControl.

Reimplemented in FakeMotionControl.

Definition at line 72 of file ImplementVelocityControl.cpp.

◆ getRefAcceleration()

bool ImplementVelocityControl::getRefAcceleration ( int  j,
double *  acc 
)
overridevirtual

Get reference acceleration for a joint.

Returns the acceleration used to generate the trajectory profile.

Parameters
jjoint number
accpointer to storage for the return value
Returns
true/false on success/failure

Implements yarp::dev::IVelocityControl.

Definition at line 199 of file ImplementVelocityControl.cpp.

◆ getRefAccelerations() [1/2]

bool ImplementVelocityControl::getRefAccelerations ( const int  n_joint,
const int *  joints,
double *  accs 
)
overridevirtual

Get reference acceleration for a subset of joints.

These are the values used during the interpolation of the trajectory.

Parameters
n_jointhow many joints this command is referring to
jointslist of joints controlled. The size of this array is n_joints
accspointer to the array containing acceleration values, one value for each joint, the size of the array is n_joints. The first value will be the new reference for the joint joints[0]. for example: n_joint 3 joints 0 2 4 accs 10 30 40
Returns
true/false on success/failure

Implements yarp::dev::IVelocityControl.

Definition at line 210 of file ImplementVelocityControl.cpp.

◆ getRefAccelerations() [2/2]

bool ImplementVelocityControl::getRefAccelerations ( double *  accs)
overridevirtual

Get reference acceleration of all joints.

These are the values used during the interpolation of the trajectory.

Parameters
accspointer to the array that will store the acceleration values.
Returns
true/false on success or failure

Implements yarp::dev::IVelocityControl.

Definition at line 236 of file ImplementVelocityControl.cpp.

◆ getRefVelocities() [1/2]

bool ImplementVelocityControl::getRefVelocities ( const int  n_joint,
const int *  joints,
double *  vels 
)
overridevirtual

Get the last reference speed set by velocityMove for a group of joints.

Parameters
n_jointhow many joints this command is referring to
jointsof joints controlled. The size of this array is n_joints
velspointer to the array containing the requested values, one value for each joint. The size of the array is n_joints.
Returns
true/false on success/failure

Reimplemented from yarp::dev::IVelocityControl.

Definition at line 136 of file ImplementVelocityControl.cpp.

◆ getRefVelocities() [2/2]

bool ImplementVelocityControl::getRefVelocities ( double *  vels)
overridevirtual

Get the last reference speed set by velocityMove for all joints.

Parameters
velspointer to the array containing the new speed values, one value for each joint
Returns
true/false on success/failure

Reimplemented from yarp::dev::IVelocityControl.

Definition at line 127 of file ImplementVelocityControl.cpp.

◆ getRefVelocity()

bool ImplementVelocityControl::getRefVelocity ( const int  joint,
double *  vel 
)
overridevirtual

Get the last reference speed set by velocityMove for single joint.

Parameters
jjoint number
velreturns the requested reference.
Returns
true/false on success/failure

Reimplemented from yarp::dev::IVelocityControl.

Definition at line 116 of file ImplementVelocityControl.cpp.

◆ initialize()

bool ImplementVelocityControl::initialize ( int  size,
const int *  amap,
const double *  enc,
const double *  zos 
)
protected

Initialize the internal data and alloc memory.

Parameters
sizeis the number of controlled axes the driver deals with.
amapis a lookup table mapping axes onto physical drivers.
encis an array containing the encoder to angles conversion factors.
zosis an array containing the zeros of the encoders. respect to the control/output values of the driver.
Returns
true if initialized succeeded, false if it wasn't executed, or assert.

Definition at line 32 of file ImplementVelocityControl.cpp.

◆ setRefAcceleration()

bool ImplementVelocityControl::setRefAcceleration ( int  j,
double  acc 
)
overridevirtual

Set reference acceleration for a joint.

This value is used during the trajectory generation.

Parameters
jjoint number
accacceleration value
Returns
true/false upon success/failure

Implements yarp::dev::IVelocityControl.

Definition at line 161 of file ImplementVelocityControl.cpp.

◆ setRefAccelerations() [1/2]

bool ImplementVelocityControl::setRefAccelerations ( const double *  accs)
overridevirtual

Set reference acceleration on all joints.

This is the valure that is used during the generation of the trajectory.

Parameters
accspointer to the array of acceleration values
Returns
true/false upon success/failure

Implements yarp::dev::IVelocityControl.

Definition at line 190 of file ImplementVelocityControl.cpp.

◆ setRefAccelerations() [2/2]

bool ImplementVelocityControl::setRefAccelerations ( const int  n_joint,
const int *  joints,
const double *  accs 
)
overridevirtual

Set reference acceleration for a subset of joints.

This is the valure that is used during the generation of the trajectory.

Parameters
n_jointhow many joints this command is referring to
jointslist of joints controlled. The size of this array is n_joints
accspointer to the array containing acceleration values, one value for each joint, the size of the array is n_joints. The first value will be the new reference for the joint joints[0]. for example: n_joint 3 joints 0 2 4 accs 10 30 40
Returns
true/false on success/failure

Implements yarp::dev::IVelocityControl.

Definition at line 170 of file ImplementVelocityControl.cpp.

◆ stop() [1/3]

bool ImplementVelocityControl::stop ( )
overridevirtual

Stop motion, multiple joints.

Returns
true/false on success or failure

Implements yarp::dev::IVelocityControl.

Definition at line 271 of file ImplementVelocityControl.cpp.

◆ stop() [2/3]

bool ImplementVelocityControl::stop ( const int  n_joint,
const int *  joints 
)
overridevirtual

Stop motion for a subset of joints.

Parameters
n_jointhow many joints this command is referring to
jointsjoints pointer to the array of joint numbers
Returns
true/false on success or failure

Implements yarp::dev::IVelocityControl.

Definition at line 255 of file ImplementVelocityControl.cpp.

◆ stop() [3/3]

bool ImplementVelocityControl::stop ( int  j)
overridevirtual

Stop motion, single joint.

Parameters
jjoint number
Returns
true/false on success or failure

Implements yarp::dev::IVelocityControl.

Definition at line 246 of file ImplementVelocityControl.cpp.

◆ uninitialize()

bool ImplementVelocityControl::uninitialize ( )
protected

Clean up internal data and memory.

Returns
true if uninitialization is executed, false otherwise.

Definition at line 49 of file ImplementVelocityControl.cpp.

◆ velocityMove() [1/3]

bool ImplementVelocityControl::velocityMove ( const double *  sp)
overridevirtual

Start motion at a given speed, multiple joints.

Parameters
sppointer to the array containing the new speed values
Returns
true/false upon success/failure

Implements yarp::dev::IVelocityControl.

Definition at line 107 of file ImplementVelocityControl.cpp.

◆ velocityMove() [2/3]

bool ImplementVelocityControl::velocityMove ( const int  n_joint,
const int *  joints,
const double *  spds 
)
overridevirtual

Start motion at a given speed for a subset of joints.

Parameters
n_jointhow many joints this command is referring to
jointsof joints controlled. The size of this array is n_joints
spdspointer to the array containing the new speed values, one value for each joint, the size of the array is n_joints. The first value will be the new reference for the joint joints[0]. for example: n_joint 3 joints 0 2 4 spds 10 30 40
Returns
true/false on success/failure

Implements yarp::dev::IVelocityControl.

Definition at line 87 of file ImplementVelocityControl.cpp.

◆ velocityMove() [3/3]

bool ImplementVelocityControl::velocityMove ( int  j,
double  sp 
)
overridevirtual

Start motion at a given speed, single joint.

Parameters
jjoint number
spspeed value
Returns
bool/false upone success/failure

Implements yarp::dev::IVelocityControl.

Definition at line 78 of file ImplementVelocityControl.cpp.

Member Data Documentation

◆ doubleBuffManager

yarp::dev::impl::FixedSizeBuffersManager<double>* yarp::dev::ImplementVelocityControl::doubleBuffManager
protected

Definition at line 40 of file ImplementVelocityControl.h.

◆ helper

void* yarp::dev::ImplementVelocityControl::helper
protected

Definition at line 38 of file ImplementVelocityControl.h.

◆ intBuffManager

yarp::dev::impl::FixedSizeBuffersManager<int>* yarp::dev::ImplementVelocityControl::intBuffManager
protected

Definition at line 39 of file ImplementVelocityControl.h.

◆ iVelocity

IVelocityControlRaw* yarp::dev::ImplementVelocityControl::iVelocity
protected

Definition at line 37 of file ImplementVelocityControl.h.


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