Interface for a generic control board device implementing position control. More...
#include <yarp/dev/IPositionDirect.h>
Public Member Functions | |
virtual | ~IPositionDirect () |
Destructor. | |
virtual bool | getAxes (int *ax)=0 |
Get the number of controlled axes. | |
virtual bool | setPosition (int j, double ref)=0 |
Set new position for a single axis. | |
virtual bool | setPositions (const int n_joint, const int *joints, const double *refs)=0 |
Set new reference point for all axes. | |
virtual bool | setPositions (const double *refs)=0 |
Set new position for a set of axis. | |
virtual bool | getRefPosition (const int joint, double *ref) |
Get the last position reference for the specified axis. | |
virtual bool | getRefPositions (double *refs) |
Get the last position reference for all axes. | |
virtual bool | getRefPositions (const int n_joint, const int *joints, double *refs) |
Get the last position reference for the specified group of axes. | |
Interface for a generic control board device implementing position control.
This interface is used to send high frequency streaming commands to the boards, the aim is to reach low level control in firmware bypassing the trajetory generator.
Definition at line 26 of file IPositionDirect.h.
|
inlinevirtual |
Destructor.
Definition at line 33 of file IPositionDirect.h.
|
pure virtual |
Get the number of controlled axes.
This command asks the number of controlled axes for the current physical interface.
Implemented in ControlBoardRemapper, FakeMotionControl, RemoteControlBoard, yarp::dev::ImplementPositionDirect, and yarp::dev::StubImplPositionDirectRaw.
|
inlinevirtual |
Get the last position reference for the specified axis.
This is the dual of setPositionsRaw and shall return only values sent using IPositionDirect interface. If other interfaces like IPositionControl are implemented by the device, this call must ignore their values, i.e. this call must never return a reference sent using IPositionControl::PositionMove.
ref | last reference sent using setPosition(s) functions |
Reimplemented in ControlBoardRemapper, RemoteControlBoard, and yarp::dev::ImplementPositionDirect.
Definition at line 77 of file IPositionDirect.h.
|
inlinevirtual |
Get the last position reference for the specified group of axes.
This is the dual of setPositionsRaw and shall return only values sent using IPositionDirect interface. If other interfaces like IPositionControl are implemented by the device, this call must ignore their values, i.e. this call must never return a reference sent using IPositionControl::PositionMove.
ref | array containing last reference sent using setPosition(s) functions |
Reimplemented in ControlBoardRemapper, RemoteControlBoard, and yarp::dev::ImplementPositionDirect.
Definition at line 99 of file IPositionDirect.h.
|
inlinevirtual |
Get the last position reference for all axes.
This is the dual of setPositionsRaw and shall return only values sent using IPositionDirect interface. If other interfaces like IPositionControl are implemented by the device, this call must ignore their values, i.e. this call must never return a reference sent using IPositionControl::PositionMove.
ref | array containing last reference sent using setPosition(s) functions |
Reimplemented in ControlBoardRemapper, RemoteControlBoard, and yarp::dev::ImplementPositionDirect.
Definition at line 88 of file IPositionDirect.h.
|
pure virtual |
Set new position for a single axis.
j | joint number |
ref | specifies the new ref point |
Implemented in ControlBoardRemapper, RemoteControlBoard, yarp::dev::ImplementPositionDirect, and yarp::dev::StubImplPositionDirectRaw.
|
pure virtual |
Set new position for a set of axis.
refs | specifies the new reference points |
Implemented in ControlBoardRemapper, RemoteControlBoard, yarp::dev::ImplementPositionDirect, and yarp::dev::StubImplPositionDirectRaw.
|
pure virtual |
Set new reference point for all axes.
n_joint | how many joints this command is referring to |
joints | list of joints controlled. The size of this array is n_joints |
refs | array, new reference points, one value for each joint, the size 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 refs 10 30 40 |
Implemented in RemoteControlBoard, yarp::dev::ImplementPositionDirect, yarp::dev::StubImplPositionDirectRaw, and ControlBoardRemapper.