Interface for a generic control board device implementing position control. More...
#include <yarp/dev/IPositionControl.h>
Public Member Functions | |
virtual | ~IPositionControl () |
Destructor. More... | |
virtual bool | getAxes (int *ax)=0 |
Get the number of controlled axes. More... | |
virtual bool | positionMove (int j, double ref)=0 |
Set new reference point for a single axis. More... | |
virtual bool | positionMove (const double *refs)=0 |
Set new reference point for all axes. More... | |
virtual bool | relativeMove (int j, double delta)=0 |
Set relative position. More... | |
virtual bool | relativeMove (const double *deltas)=0 |
Set relative position, all joints. More... | |
virtual bool | checkMotionDone (int j, bool *flag)=0 |
Check if the current trajectory is terminated. More... | |
virtual bool | checkMotionDone (bool *flag)=0 |
Check if the current trajectory is terminated. More... | |
virtual bool | setRefSpeed (int j, double sp)=0 |
Set reference speed for a joint, this is the speed used during the interpolation of the trajectory. More... | |
virtual bool | setRefSpeeds (const double *spds)=0 |
Set reference speed on all joints. More... | |
virtual bool | setRefAcceleration (int j, double acc)=0 |
Set reference acceleration for a joint. More... | |
virtual bool | setRefAccelerations (const double *accs)=0 |
Set reference acceleration on all joints. More... | |
virtual bool | getRefSpeed (int j, double *ref)=0 |
Get reference speed for a joint. More... | |
virtual bool | getRefSpeeds (double *spds)=0 |
Get reference speed of all joints. More... | |
virtual bool | getRefAcceleration (int j, double *acc)=0 |
Get reference acceleration for a joint. More... | |
virtual bool | getRefAccelerations (double *accs)=0 |
Get reference acceleration of all joints. More... | |
virtual bool | stop (int j)=0 |
Stop motion, single joint. More... | |
virtual bool | stop ()=0 |
Stop motion, multiple joints. More... | |
virtual bool | positionMove (const int n_joint, const int *joints, const double *refs)=0 |
Set new reference point for a subset of joints. More... | |
virtual bool | relativeMove (const int n_joint, const int *joints, const double *deltas)=0 |
Set relative position for a subset of joints. More... | |
virtual bool | checkMotionDone (const int n_joint, const int *joints, bool *flag)=0 |
Check if the current trajectory is terminated. More... | |
virtual bool | setRefSpeeds (const int n_joint, const int *joints, const double *spds)=0 |
Set reference speed on all joints. More... | |
virtual bool | setRefAccelerations (const int n_joint, const int *joints, const double *accs)=0 |
Set reference acceleration on all joints. More... | |
virtual bool | getRefSpeeds (const int n_joint, const int *joints, double *spds)=0 |
Get reference speed of all joints. More... | |
virtual bool | getRefAccelerations (const int n_joint, const int *joints, double *accs)=0 |
Get reference acceleration for a joint. More... | |
virtual bool | stop (const int n_joint, const int *joints)=0 |
Stop motion for subset of joints. More... | |
virtual bool | getTargetPosition (const int joint, double *ref) |
Get the last position reference for the specified axis. More... | |
virtual bool | getTargetPositions (double *refs) |
Get the last position reference for all axes. More... | |
virtual bool | getTargetPositions (const int n_joint, const int *joints, double *refs) |
Get the last position reference for the specified group of axes. More... | |
Interface for a generic control board device implementing position control.
Definition at line 256 of file IPositionControl.h.
|
inlinevirtual |
Destructor.
Definition at line 262 of file IPositionControl.h.
|
pure virtual |
Check if the current trajectory is terminated.
Non blocking.
flag | is a pointer to return value ("and" of all joints) |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Check if the current trajectory is terminated.
Non blocking.
joints | pointer to the array of joint numbers |
flag | pointer to return value (logical "and" of all set of joints) |
Implemented in ControlBoardWrapperPositionControl, ControlBoardRemapper, yarp::dev::ImplementPositionControl, SerialServoBoard, FakeMotor, FakeBot, RemoteControlBoard, and DynamixelAX12FtdiDriver.
|
pure virtual |
Check if the current trajectory is terminated.
Non blocking.
j | is the axis number |
flag | is a pointer to return value |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Get the number of controlled axes.
This command asks the number of controlled axes for the current physical interface.
ax | pointer to storage |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeMotionControl, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Get reference acceleration for a joint.
Returns the acceleration used to generate the trajectory profile.
j | joint number |
acc | pointer to storage for the return value |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Get reference acceleration for a joint.
Returns the acceleration used to generate the trajectory profile.
joints | pointer to the array of joint numbers |
accs | pointer to the array that will store the acceleration values |
Implemented in ControlBoardWrapperPositionControl, ControlBoardRemapper, yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, and DynamixelAX12FtdiDriver.
|
pure virtual |
Get reference acceleration of all joints.
These are the values used during the interpolation of the trajectory.
accs | pointer to the array that will store the acceleration values. |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Get reference speed for a joint.
Returns the speed used to generate the trajectory profile.
j | joint number |
ref | pointer to storage for the return value |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Get reference speed of all joints.
These are the values used during the interpolation of the trajectory.
joints | pointer to the array of joint numbers |
spds | pointer to the array that will store the speed values. |
Implemented in ControlBoardWrapperPositionControl, ControlBoardRemapper, yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, and DynamixelAX12FtdiDriver.
|
pure virtual |
Get reference speed of all joints.
These are the values used during the interpolation of the trajectory.
spds | pointer to the array that will store the speed values. |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
inlinevirtual |
Get the last position reference for the specified axis.
This is the dual of PositionMove and shall return only values sent using IPositionControl interface. If other interfaces like IPositionDirect are implemented by the device, this call must ignore their values, i.e. this call must never return a reference sent using IPositionDirect::SetPosition
ref | last reference sent using PositionMove functions |
Reimplemented in yarp::dev::ImplementPositionControl, RemoteControlBoard, FakeMotor, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
Definition at line 452 of file IPositionControl.h.
|
inlinevirtual |
Get the last position reference for the specified group of axes.
This is the dual of PositionMove and shall return only values sent using IPositionControl interface. If other interfaces like IPositionDirect are implemented by the device, this call must ignore their values, i.e. this call must never return a reference sent using IPositionDirect::SetPosition
ref | last reference sent using PositionMove functions |
Reimplemented in yarp::dev::ImplementPositionControl, RemoteControlBoard, FakeMotor, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
Definition at line 474 of file IPositionControl.h.
|
inlinevirtual |
Get the last position reference for all axes.
This is the dual of PositionMove and shall return only values sent using IPositionControl interface. If other interfaces like IPositionDirect are implemented by the device, this call must ignore their values, i.e. this call must never return a reference sent using IPositionDirect::SetPosition
ref | last reference sent using PositionMove functions |
Reimplemented in yarp::dev::ImplementPositionControl, RemoteControlBoard, FakeMotor, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
Definition at line 463 of file IPositionControl.h.
|
pure virtual |
Set new reference point for all axes.
refs | array, new reference points. |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Set new reference point for a subset of joints.
joints | pointer to the array of joint numbers |
refs | pointer to the array specifying the new reference points |
Implemented in ControlBoardWrapperPositionControl, ControlBoardRemapper, yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, and DynamixelAX12FtdiDriver.
|
pure virtual |
Set new reference point for a single axis.
j | joint number |
ref | specifies the new ref point |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Set relative position, all joints.
deltas | pointer to the relative commands |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Set relative position for a subset of joints.
joints | pointer to the array of joint numbers |
deltas | pointer to the array of relative commands |
Implemented in ControlBoardWrapperPositionControl, ControlBoardRemapper, RemoteControlBoard, yarp::dev::ImplementPositionControl, SerialServoBoard, FakeMotor, FakeBot, and DynamixelAX12FtdiDriver.
|
pure virtual |
Set relative position.
The command is relative to the current position of the axis.
j | joint axis number |
delta | relative command |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Set reference acceleration for a joint.
This value is used during the trajectory generation.
j | joint number |
acc | acceleration value |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Set reference acceleration on all joints.
This is the valure that is used during the generation of the trajectory.
accs | pointer to the array of acceleration values |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Set reference acceleration on all joints.
This is the valure that is used during the generation of the trajectory.
joints | pointer to the array of joint numbers |
accs | pointer to the array with acceleration values |
Implemented in ControlBoardWrapperPositionControl, ControlBoardRemapper, yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, and DynamixelAX12FtdiDriver.
|
pure virtual |
Set reference speed for a joint, this is the speed used during the interpolation of the trajectory.
j | joint number |
sp | speed value |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Set reference speed on all joints.
These values are used during the interpolation of the trajectory.
spds | pointer to the array of speed values. |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Set reference speed on all joints.
These values are used during the interpolation of the trajectory.
joints | pointer to the array of joint numbers |
spds | pointer to the array with speed values. |
Implemented in ControlBoardWrapperPositionControl, ControlBoardRemapper, yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, and DynamixelAX12FtdiDriver.
|
pure virtual |
Stop motion, multiple joints.
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.
|
pure virtual |
Stop motion for subset of joints.
joints | pointer to the array of joint numbers |
Implemented in ControlBoardWrapperPositionControl, ControlBoardRemapper, yarp::dev::ImplementPositionControl, SerialServoBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, and RemoteControlBoard.
|
pure virtual |
Stop motion, single joint.
j | joint number |
Implemented in yarp::dev::ImplementPositionControl, SerialServoBoard, RemoteControlBoard, FakeMotor, FakeBot, DynamixelAX12FtdiDriver, ControlBoardWrapperPositionControl, and ControlBoardRemapper.