Interface for a generic control board device implementing position control. More...
#include <yarp/dev/IPositionDirect.h>
Public Member Functions | |
virtual | ~IPositionDirect () |
Destructor. More... | |
virtual bool | getAxes (int *ax)=0 |
Get the number of controlled axes. More... | |
virtual bool | setPosition (int j, double ref)=0 |
Set new position for a single axis. More... | |
virtual bool | setPositions (const int n_joint, const int *joints, const double *refs)=0 |
Set new reference point for all axes. More... | |
virtual bool | setPositions (const double *refs)=0 |
Set new position for a set of axis. More... | |
virtual bool | getRefPosition (const int joint, double *ref) |
Get the last position reference for the specified axis. More... | |
virtual bool | getRefPositions (double *refs) |
Get the last position reference for all axes. More... | |
virtual bool | getRefPositions (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.
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 31 of file IPositionDirect.h.
|
inlinevirtual |
Destructor.
Definition at line 38 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 yarp::dev::StubImplPositionDirectRaw, yarp::dev::ImplementPositionDirect, RemoteControlBoard, FakeMotionControl, ControlBoardWrapperPositionDirect, and ControlBoardRemapper.
|
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 yarp::dev::ImplementPositionDirect, RemoteControlBoard, ControlBoardWrapperPositionDirect, and ControlBoardRemapper.
Definition at line 82 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 yarp::dev::ImplementPositionDirect, RemoteControlBoard, ControlBoardWrapperPositionDirect, and ControlBoardRemapper.
Definition at line 104 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 yarp::dev::ImplementPositionDirect, RemoteControlBoard, ControlBoardWrapperPositionDirect, and ControlBoardRemapper.
Definition at line 93 of file IPositionDirect.h.
|
pure virtual |
Set new position for a single axis.
j | joint number |
ref | specifies the new ref point |
Implemented in yarp::dev::StubImplPositionDirectRaw, yarp::dev::ImplementPositionDirect, RemoteControlBoard, ControlBoardWrapperPositionDirect, and ControlBoardRemapper.
|
pure virtual |
Set new position for a set of axis.
refs | specifies the new reference points |
Implemented in yarp::dev::StubImplPositionDirectRaw, yarp::dev::ImplementPositionDirect, RemoteControlBoard, ControlBoardWrapperPositionDirect, and ControlBoardRemapper.
|
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 ControlBoardWrapperPositionDirect, ControlBoardRemapper, yarp::dev::StubImplPositionDirectRaw, yarp::dev::ImplementPositionDirect, and RemoteControlBoard.