YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches

remote_controlboard: The client side of the control board, connects to a remote controlboard using the YARP network. More...

#include <networkWrappers/RemoteControlBoard/RemoteControlBoard.h>

+ Inheritance diagram for RemoteControlBoard:

Public Member Functions

 RemoteControlBoard ()=default
 
 RemoteControlBoard (const RemoteControlBoard &)=delete
 
 RemoteControlBoard (RemoteControlBoard &&)=delete
 
RemoteControlBoardoperator= (const RemoteControlBoard &)=delete
 
RemoteControlBoardoperator= (RemoteControlBoard &&)=delete
 
 ~RemoteControlBoard () override=default
 
bool open (Searchable &config) override
 Open the DeviceDriver.
 
bool close () override
 Close the device driver and stop the port connections.
 
bool getAxes (int *ax) override
 Get the number of controlled axes.
 
bool setPid (const PidControlTypeEnum &pidtype, int j, const Pid &pid) override
 Set new pid value for a joint axis.
 
bool setPids (const PidControlTypeEnum &pidtype, const Pid *pids) override
 Set new pid value on multiple axes.
 
bool setPidReference (const PidControlTypeEnum &pidtype, int j, double ref) override
 Set the controller reference for a given axis.
 
bool setPidReferences (const PidControlTypeEnum &pidtype, const double *refs) override
 Set the controller reference, multiple axes.
 
bool setPidErrorLimit (const PidControlTypeEnum &pidtype, int j, double limit) override
 Set the error limit for the controller on a specifi joint.
 
bool setPidErrorLimits (const PidControlTypeEnum &pidtype, const double *limits) override
 Get the error limit for the controller on all joints.
 
bool getPidError (const PidControlTypeEnum &pidtype, int j, double *err) override
 Get the current error for a joint.
 
bool getPidErrors (const PidControlTypeEnum &pidtype, double *errs) override
 Get the error of all joints.
 
bool getPid (const PidControlTypeEnum &pidtype, int j, Pid *pid) override
 Get current pid value for a specific joint.
 
bool getPids (const PidControlTypeEnum &pidtype, Pid *pids) override
 Get current pid value for a specific joint.
 
bool getPidReference (const PidControlTypeEnum &pidtype, int j, double *ref) override
 Get the current reference of the pid controller for a specific joint.
 
bool getPidReferences (const PidControlTypeEnum &pidtype, double *refs) override
 Get the current reference of all pid controllers.
 
bool getPidErrorLimit (const PidControlTypeEnum &pidtype, int j, double *limit) override
 Get the error limit for the controller on a specific joint.
 
bool getPidErrorLimits (const PidControlTypeEnum &pidtype, double *limits) override
 Get the error limit for all controllers.
 
bool resetPid (const PidControlTypeEnum &pidtype, int j) override
 Reset the controller of a given joint, usually sets the current status of the joint as the reference value for the PID, and resets the integrator.
 
bool disablePid (const PidControlTypeEnum &pidtype, int j) override
 Disable the pid computation for a joint.
 
bool enablePid (const PidControlTypeEnum &pidtype, int j) override
 Enable the pid computation for a joint.
 
bool isPidEnabled (const PidControlTypeEnum &pidtype, int j, bool *enabled) override
 Get the current status (enabled/disabled) of the pid.
 
bool getPidOutput (const PidControlTypeEnum &pidtype, int j, double *out) override
 Get the output of the controller (e.g.
 
bool getPidOutputs (const PidControlTypeEnum &pidtype, double *outs) override
 Get the output of the controllers (e.g.
 
bool setPidOffset (const PidControlTypeEnum &pidtype, int j, double v) override
 Set offset value for a given controller.
 
bool resetEncoder (int j) override
 Reset encoder, single joint.
 
bool resetEncoders () override
 Reset encoders.
 
bool setEncoder (int j, double val) override
 Set the value of the encoder for a given joint.
 
bool setEncoders (const double *vals) override
 Set the value of all encoders.
 
bool getEncoder (int j, double *v) override
 Read the value of an encoder.
 
bool getEncoderTimed (int j, double *v, double *t) override
 Read the instantaneous acceleration of all axes.
 
bool getEncoders (double *encs) override
 Read the position of all axes.
 
bool getEncodersTimed (double *encs, double *ts) override
 Read the instantaneous acceleration of all axes.
 
bool getEncoderSpeed (int j, double *sp) override
 Read the istantaneous speed of an axis.
 
bool getEncoderSpeeds (double *spds) override
 Read the instantaneous speed of all axes.
 
bool getEncoderAcceleration (int j, double *acc) override
 Read the instantaneous acceleration of an axis.
 
bool getEncoderAccelerations (double *accs) override
 Read the instantaneous acceleration of all axes.
 
bool getRemoteVariable (std::string key, yarp::os::Bottle &val) override
 
bool setRemoteVariable (std::string key, const yarp::os::Bottle &val) override
 
bool getRemoteVariablesList (yarp::os::Bottle *listOfKeys) override
 
bool getNumberOfMotors (int *num) override
 Get the number of available motors.
 
bool getTemperature (int m, double *val) override
 Get temperature of a motor.
 
bool getTemperatures (double *vals) override
 Get temperature of all the motors.
 
bool getTemperatureLimit (int m, double *val) override
 Retreives the current temperature limit for a specific motor.
 
bool setTemperatureLimit (int m, const double val) override
 Set the temperature limit for a specific motor.
 
bool getGearboxRatio (int m, double *val) override
 Get the gearbox ratio for a specific motor.
 
bool setGearboxRatio (int m, const double val) override
 Set the gearbox ratio for a specific motor.
 
bool resetMotorEncoder (int j) override
 Reset motor encoder, single motor.
 
bool resetMotorEncoders () override
 Reset motor encoders.
 
bool setMotorEncoder (int j, const double val) override
 Set the value of the motor encoder for a given motor.
 
bool setMotorEncoderCountsPerRevolution (int m, const double cpr) override
 Sets number of counts per revolution for motor encoder m.
 
bool getMotorEncoderCountsPerRevolution (int m, double *cpr) override
 Gets number of counts per revolution for motor encoder m.
 
bool setMotorEncoders (const double *vals) override
 Set the value of all motor encoders.
 
bool getMotorEncoder (int j, double *v) override
 Read the value of a motor encoder.
 
bool getMotorEncoderTimed (int j, double *v, double *t) override
 Read the instantaneous position of a motor encoder.
 
bool getMotorEncoders (double *encs) override
 Read the position of all motor encoders.
 
bool getMotorEncodersTimed (double *encs, double *ts) override
 Read the instantaneous position of all motor encoders.
 
bool getMotorEncoderSpeed (int j, double *sp) override
 Read the istantaneous speed of a motor encoder.
 
bool getMotorEncoderSpeeds (double *spds) override
 Read the instantaneous speed of all motor encoders.
 
bool getMotorEncoderAcceleration (int j, double *acc) override
 Read the instantaneous acceleration of a motor encoder.
 
bool getMotorEncoderAccelerations (double *accs) override
 Read the instantaneous acceleration of all motor encoders.
 
bool getNumberOfMotorEncoders (int *num) override
 Get the number of available motor encoders.
 
Stamp getLastInputStamp () override
 Get the time stamp for the last read data.
 
bool positionMove (int j, double ref) override
 Set new reference point for a single axis.
 
bool positionMove (const int n_joint, const int *joints, const double *refs) override
 Set new reference point for a subset of joints.
 
bool positionMove (const double *refs) override
 Set new reference point for all axes.
 
bool getTargetPosition (const int joint, double *ref) override
 Get the last position reference for the specified axis.
 
bool getTargetPositions (double *refs) override
 Get the last position reference for all axes.
 
bool getTargetPositions (const int n_joint, const int *joints, double *refs) override
 Get the last position reference for the specified group of axes.
 
bool relativeMove (int j, double delta) override
 Set relative position.
 
bool relativeMove (const int n_joint, const int *joints, const double *refs) override
 Set relative position for a subset of joints.
 
bool relativeMove (const double *deltas) override
 Set relative position, all joints.
 
bool checkMotionDone (int j, bool *flag) override
 Check if the current trajectory is terminated.
 
bool checkMotionDone (const int n_joint, const int *joints, bool *flag) override
 Check if the current trajectory is terminated.
 
bool checkMotionDone (bool *flag) override
 Check if the current trajectory is terminated.
 
bool setRefSpeed (int j, double sp) override
 Set reference speed for a joint, this is the speed used during the interpolation of the trajectory.
 
bool setRefSpeeds (const int n_joint, const int *joints, const double *spds) override
 Set reference speed on all joints.
 
bool setRefSpeeds (const double *spds) override
 Set reference speed on all joints.
 
bool setRefAcceleration (int j, double acc) override
 Set reference acceleration for a joint.
 
bool setRefAccelerations (const int n_joint, const int *joints, const double *accs) override
 Set reference acceleration on all joints.
 
bool setRefAccelerations (const double *accs) override
 Set reference acceleration on all joints.
 
bool getRefSpeed (int j, double *ref) override
 Get reference speed for a joint.
 
bool getRefSpeeds (const int n_joint, const int *joints, double *spds) override
 Get reference speed of all joints.
 
bool getRefSpeeds (double *spds) override
 Get reference speed of all joints.
 
bool getRefAcceleration (int j, double *acc) override
 Get reference acceleration for a joint.
 
bool getRefAccelerations (const int n_joint, const int *joints, double *accs) override
 Get reference acceleration for a joint.
 
bool getRefAccelerations (double *accs) override
 Get reference acceleration of all joints.
 
bool stop (int j) override
 Stop motion, single joint.
 
bool stop (const int len, const int *val1) override
 Stop motion for subset of joints.
 
bool stop () override
 Stop motion, multiple joints.
 
bool getLastJointFault (int j, int &fault, std::string &message) override
 
bool velocityMove (int j, double v) override
 Start motion at a given speed, single joint.
 
bool velocityMove (const double *v) override
 Start motion at a given speed, multiple joints.
 
bool enableAmp (int j) override
 Enable the amplifier on a specific joint.
 
bool disableAmp (int j) override
 Disable the amplifier on a specific joint.
 
bool getAmpStatus (int *st) override
 
bool getAmpStatus (int j, int *st) override
 
bool setMaxCurrent (int j, double v) override
 
bool getMaxCurrent (int j, double *v) override
 Returns the maximum electric current allowed for a given motor.
 
bool getNominalCurrent (int m, double *val) override
 
bool setNominalCurrent (int m, const double val) override
 
bool getPeakCurrent (int m, double *val) override
 
bool setPeakCurrent (int m, const double val) override
 
bool getPWM (int m, double *val) override
 
bool getPWMLimit (int m, double *val) override
 
bool setPWMLimit (int m, const double val) override
 
bool getPowerSupplyVoltage (int m, double *val) override
 
bool setLimits (int axis, double min, double max) override
 Set the software limits for a particular axis, the behavior of the control card when these limits are exceeded, depends on the implementation.
 
bool getLimits (int axis, double *min, double *max) override
 Get the software limits for a particular axis.
 
bool setVelLimits (int axis, double min, double max) override
 Set the software speed limits for a particular axis, the behavior of the control card when these limits are exceeded, depends on the implementation.
 
bool getVelLimits (int axis, double *min, double *max) override
 Get the software speed limits for a particular axis.
 
bool getAxisName (int j, std::string &name) override
 
bool getJointType (int j, yarp::dev::JointTypeEnum &type) override
 
bool calibrateRobot () override
 Calibrate robot by using an external calibrator.
 
bool abortCalibration () override
 
bool abortPark () override
 
bool park (bool wait=true) override
 
bool calibrateAxisWithParams (int j, unsigned int ui, double v1, double v2, double v3) override
 Start calibration, this method is very often platform specific.
 
bool setCalibrationParameters (int j, const CalibrationParameters &params) override
 Start calibration, this method is very often platform specific.
 
bool calibrationDone (int j) override
 Check if the calibration is terminated, on a particular joint.
 
bool getRefTorque (int j, double *t) override
 Get the reference value of the torque for a given joint.
 
bool getRefTorques (double *t) override
 Get the reference value of the torque for all joints.
 
bool setRefTorques (const double *t) override
 Set the reference value of the torque for all joints.
 
bool setRefTorque (int j, double v) override
 Set the reference value of the torque for a given joint.
 
bool setRefTorques (const int n_joint, const int *joints, const double *t) override
 Set new torque reference for a subset of joints.
 
bool setMotorTorqueParams (int j, const MotorTorqueParameters params) override
 Set a subset of motor parameters (bemf, ktau etc) useful for torque control.
 
bool getMotorTorqueParams (int j, MotorTorqueParameters *params) override
 Get a subset of motor parameters (bemf, ktau etc) useful for torque control.
 
bool getTorque (int j, double *t) override
 Get the value of the torque on a given joint (this is the feedback if you have a torque sensor).
 
bool getTorques (double *t) override
 Get the value of the torque for all joints (this is the feedback if you have torque sensors).
 
bool getTorqueRange (int j, double *min, double *max) override
 Get the full scale of the torque sensor of a given joint.
 
bool getTorqueRanges (double *min, double *max) override
 Get the full scale of the torque sensors of all joints.
 
bool getImpedance (int j, double *stiffness, double *damping) override
 Get current impedance gains (stiffness,damping,offset) for a specific joint.
 
bool getImpedanceOffset (int j, double *offset) override
 Get current force Offset for a specific joint.
 
bool setImpedance (int j, double stiffness, double damping) override
 Set current impedance gains (stiffness,damping) for a specific joint.
 
bool setImpedanceOffset (int j, double offset) override
 Set current force Offset for a specific joint.
 
bool getCurrentImpedanceLimit (int j, double *min_stiff, double *max_stiff, double *min_damp, double *max_damp) override
 Get the current impedandance limits for a specific joint.
 
bool getControlMode (int j, int *mode) override
 Get the current control mode.
 
bool getControlModes (int *modes) override
 Get the current control mode (multiple joints).
 
bool getControlModes (const int n_joint, const int *joints, int *modes) override
 Get the current control mode for a subset of axes.
 
bool setControlMode (const int j, const int mode) override
 Set the current control mode.
 
bool setControlModes (const int n_joint, const int *joints, int *modes) override
 Set the current control mode for a subset of axes.
 
bool setControlModes (int *modes) override
 Set the current control mode (multiple joints).
 
bool setPosition (int j, double ref) override
 Set new position for a single axis.
 
bool setPositions (const int n_joint, const int *joints, const double *refs) override
 Set new reference point for all axes.
 
bool setPositions (const double *refs) override
 Set new position for a set of axis.
 
bool getRefPosition (const int joint, double *ref) override
 Get the last position reference for the specified axis.
 
bool getRefPositions (double *refs) override
 Get the last position reference for all axes.
 
bool getRefPositions (const int n_joint, const int *joints, double *refs) override
 Get the last position reference for the specified group of axes.
 
bool velocityMove (const int n_joint, const int *joints, const double *spds) override
 Start motion at a given speed for a subset of joints.
 
bool getRefVelocity (const int joint, double *vel) override
 Get the last reference speed set by velocityMove for single joint.
 
bool getRefVelocities (double *vels) override
 Get the last reference speed set by velocityMove for all joints.
 
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.
 
bool getInteractionMode (int axis, yarp::dev::InteractionModeEnum *mode) override
 Get the current interaction mode of the robot, values can be stiff or compliant.
 
bool getInteractionModes (int n_joints, int *joints, yarp::dev::InteractionModeEnum *modes) override
 Get the current interaction mode of the robot for a set of joints, values can be stiff or compliant.
 
bool getInteractionModes (yarp::dev::InteractionModeEnum *modes) override
 Get the current interaction mode of the robot for a all the joints, values can be stiff or compliant.
 
bool setInteractionMode (int axis, yarp::dev::InteractionModeEnum mode) override
 Set the interaction mode of the robot, values can be stiff or compliant.
 
bool setInteractionModes (int n_joints, int *joints, yarp::dev::InteractionModeEnum *modes) override
 Set the interaction mode of the robot for a set of joints, values can be stiff or compliant.
 
bool setInteractionModes (yarp::dev::InteractionModeEnum *modes) override
 Set the interaction mode of the robot for a all the joints, values can be stiff or compliant.
 
bool isCalibratorDevicePresent (bool *isCalib) override
 isCalibratorDevicePresent: check if a calibrator device has been set
 
bool calibrateSingleJoint (int j) override
 calibrateSingleJoint: call the calibration procedure for the single joint
 
bool calibrateWholePart () override
 calibrateWholePart: call the procedure for calibrating the whole device
 
bool homingSingleJoint (int j) override
 homingSingleJoint: call the homing procedure for a single joint
 
bool homingWholePart () override
 homingWholePart: call the homing procedure for a the whole part/device
 
bool parkSingleJoint (int j, bool _wait=true) override
 parkSingleJoint(): start the parking procedure for the single joint
 
bool parkWholePart () override
 parkWholePart: start the parking procedure for the whole part
 
bool quitCalibrate () override
 quitCalibrate: interrupt the calibration procedure
 
bool quitPark () override
 quitPark: interrupt the park procedure
 
bool getRefCurrents (double *t) override
 Get the reference value of the currents for all motors.
 
bool getRefCurrent (int j, double *t) override
 Get the reference value of the current for a single motor.
 
bool setRefCurrents (const double *refs) override
 Set the reference value of the currents for all motors.
 
bool setRefCurrent (int j, double ref) override
 Set the reference value of the current for a single motor.
 
bool setRefCurrents (const int n_joint, const int *joints, const double *refs) override
 Set the reference value of the current for a group of motors.
 
bool getCurrents (double *vals) override
 
bool getCurrent (int j, double *val) override
 
bool getCurrentRange (int j, double *min, double *max) override
 Get the full scale of the current measurement for a given motor (e.g.
 
bool getCurrentRanges (double *min, double *max) override
 Get the full scale of the current measurements for all motors motor (e.g.
 
bool setRefDutyCycle (int j, double v) override
 Sets the reference dutycycle to a single motor.
 
bool setRefDutyCycles (const double *v) override
 Sets the reference dutycycle for all the motors.
 
bool getRefDutyCycle (int j, double *ref) override
 Gets the last reference sent using the setRefDutyCycle function.
 
bool getRefDutyCycles (double *refs) override
 Gets the last reference sent using the setRefDutyCycles function.
 
bool getDutyCycle (int j, double *out) override
 Gets the current dutycycle of the output of the amplifier (i.e.
 
bool getDutyCycles (double *outs) override
 Gets the current dutycycle of the output of the amplifier (i.e.
 
- Public Member Functions inherited from yarp::dev::IPidControl
virtual ~IPidControl ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IPositionControl
virtual ~IPositionControl ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IVelocityControl
virtual ~IVelocityControl ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IEncodersTimed
virtual ~IEncodersTimed ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IEncoders
virtual ~IEncoders ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IMotorEncoders
virtual ~IMotorEncoders ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IMotor
virtual ~IMotor ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IAmplifierControl
virtual ~IAmplifierControl ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IControlLimits
virtual ~IControlLimits ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IAxisInfo
virtual ~IAxisInfo ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IPreciselyTimed
virtual ~IPreciselyTimed ()
 
- Public Member Functions inherited from yarp::dev::IControlCalibration
 IControlCalibration ()
 
virtual ~IControlCalibration ()
 Destructor.
 
virtual bool setCalibrator (ICalibrator *c)
 Set the calibrator object to be used to calibrate the robot.
 
- Public Member Functions inherited from yarp::dev::ITorqueControl
virtual ~ITorqueControl ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IImpedanceControl
virtual ~IImpedanceControl ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IControlMode
virtual ~IControlMode ()
 
- Public Member Functions inherited from yarp::dev::DeviceDriver
 DeviceDriver ()
 
 DeviceDriver (const DeviceDriver &other)=delete
 
 DeviceDriver (DeviceDriver &&other) noexcept=delete
 
DeviceDriveroperator= (const DeviceDriver &other)=delete
 
DeviceDriveroperator= (DeviceDriver &&other) noexcept=delete
 
virtual ~DeviceDriver ()
 
virtual std::string id () const
 Return the id assigned to the PolyDriver.
 
virtual void setId (const std::string &id)
 Set the id for this device.
 
template<class T >
bool view (T *&x)
 Get an interface to the device driver.
 
virtual DeviceDrivergetImplementation ()
 Some drivers are bureaucrats, pointing at others.
 
- Public Member Functions inherited from yarp::dev::IPositionDirect
virtual ~IPositionDirect ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IInteractionMode
virtual ~IInteractionMode ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IRemoteCalibrator
 IRemoteCalibrator ()
 This interface is meant to remotize the access of the calibration device in order to allow users to remotely call the calibration procedure for a single joint or the whole device and let the calibrator do the job.
 
virtual ~IRemoteCalibrator ()=default
 
virtual bool setCalibratorDevice (yarp::dev::IRemoteCalibrator *dev)
 setCalibratorDevice: store the pointer to the calibrator device.
 
virtual yarp::dev::IRemoteCalibratorgetCalibratorDevice ()
 getCalibratorDevice: return the pointer stored with the setCalibratorDevice
 
virtual void releaseCalibratorDevice ()
 releaseCalibratorDevice: reset the internal pointer to NULL when stop using the calibrator
 
- Public Member Functions inherited from yarp::dev::IRemoteVariables
virtual ~IRemoteVariables ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IPWMControl
virtual ~IPWMControl ()
 
- Public Member Functions inherited from yarp::dev::ICurrentControl
virtual ~ICurrentControl ()
 Destructor.
 
- Public Member Functions inherited from yarp::dev::IJointFault
virtual ~IJointFault ()
 
- Public Member Functions inherited from RemoteControlBoard_ParamsParser
 RemoteControlBoard_ParamsParser ()
 
 ~RemoteControlBoard_ParamsParser () override=default
 
bool parseParams (const yarp::os::Searchable &config) override
 Parse the DeviceDriver parameters.
 
std::string getDeviceClassName () const override
 Get the name of the DeviceDriver class.
 
std::string getDeviceName () const override
 Get the name of the device (i.e.
 
std::string getDocumentationOfDeviceParams () const override
 Get the documentation of the DeviceDriver's parameters.
 
std::vector< std::string > getListOfParams () const override
 Return a list of all params used by the device.
 
- Public Member Functions inherited from yarp::dev::IDeviceDriverParams
virtual ~IDeviceDriverParams ()
 

Protected Member Functions

bool isLive ()
 
bool checkProtocolVersion (bool ignore)
 
bool send1V (int v)
 
bool send2V (int v1, int v2)
 
bool send2V1I (int v1, int v2, int axis)
 
bool send1V1I (int v, int axis)
 
bool send3V1I (int v1, int v2, int v3, int j)
 
bool set1V (int code)
 Send a SET command without parameters and wait for a reply.
 
bool set1V2D (int code, double v)
 Send a SET command and an additional double valued variable and then wait for a reply.
 
bool set1V1I (int code, int v)
 Send a SET command with an additional integer valued variable and then wait for a reply.
 
bool get1V1D (int code, double &v) const
 Send a GET command expecting a double value in return.
 
bool get1V1I (int code, int &v) const
 Send a GET command expecting an integer value in return.
 
bool set1V1I1D (int code, int j, double val)
 Helper method to set a double value to a single axis.
 
bool set1V1I2D (int code, int j, double val1, double val2)
 
bool set1VDA (int v, const double *val)
 Helper method used to set an array of double to all axes.
 
bool set2V1DA (int v1, int v2, const double *val)
 
bool set2V2DA (int v1, int v2, const double *val1, const double *val2)
 
bool set1V1I1IA1DA (int v, const int len, const int *val1, const double *val2)
 
bool set2V1I1D (int v1, int v2, int axis, double val)
 
bool setValWithPidType (int voc, PidControlTypeEnum type, int axis, double val)
 
bool setValWithPidType (int voc, PidControlTypeEnum type, const double *val_arr)
 
bool getValWithPidType (int voc, PidControlTypeEnum type, int j, double *val)
 
bool getValWithPidType (int voc, PidControlTypeEnum type, double *val)
 
bool set2V1I (int v1, int v2, int axis)
 
bool get1V1I1D (int v, int j, double *val)
 Helper method used to get a double value from the remote peer.
 
bool get1V1I1I (int v, int j, int *val)
 Helper method used to get an integer value from the remote peer.
 
bool get2V1I1D (int v1, int v2, int j, double *val)
 
bool get2V1I2D (int v1, int v2, int j, double *val1, double *val2)
 
bool get1V1I2D (int code, int axis, double *v1, double *v2)
 
bool get1V1I1B (int v, int j, bool &val)
 Helper method used to get a double value from the remote peer.
 
bool get1V1I1IA1B (int v, const int len, const int *val1, bool &retVal)
 
bool get2V1I1IA1DA (int v1, int v2, const int n_joints, const int *joints, double *retVals, std::string functionName="")
 
bool get1V1B (int v, bool &val)
 
bool get1VIA (int v, int *val)
 Helper method to get an array of integers from the remote peer.
 
bool get1VDA (int v, double *val)
 Helper method to get an array of double from the remote peer.
 
bool get1V1DA (int v1, double *val)
 Helper method to get an array of double from the remote peer.
 
bool get2V1DA (int v1, int v2, double *val)
 Helper method to get an array of double from the remote peer.
 
bool get2V2DA (int v1, int v2, double *val1, double *val2)
 
bool get1V1I1S (int code, int j, std::string &name)
 
bool get1V1I1IA1DA (int v, const int len, const int *val1, double *val2)
 

Protected Attributes

yarp::os::Port rpc_p
 
yarp::os::Port command_p
 
DiagnosticThreaddiagnosticThread {nullptr}
 
yarp::os::PortReaderBuffer< yarp::sig::Vectorstate_buffer
 
yarp::os::PortWriterBuffer< CommandMessagecommand_buffer
 
bool writeStrict_singleJoint {true}
 
bool writeStrict_moreJoints {false}
 
StateExtendedInputPort extendedIntputStatePort
 
std::mutex extendedPortMutex
 
yarp::dev::impl::jointData last_singleJoint
 
yarp::dev::impl::jointData last_wholePart
 
Stamp lastStamp
 
size_t nj {0}
 
bool njIsKnown {false}
 
ProtocolVersion protocolVersion
 

Additional Inherited Members

- Public Attributes inherited from RemoteControlBoard_ParamsParser
const std::string m_device_classname = {"RemoteControlBoard"}
 
const std::string m_device_name = {"remote_controlboard"}
 
bool m_parser_is_strict = false
 
const parser_version_type m_parser_version = {}
 
const std::string m_remote_defaultValue = {""}
 
const std::string m_local_defaultValue = {""}
 
const std::string m_writeStrict_defaultValue = {""}
 
const std::string m_carrier_defaultValue = {"udp"}
 
const std::string m_timeout_defaultValue = {"0.5"}
 
const std::string m_local_qos_enable_defaultValue = {"false"}
 
const std::string m_local_qos_thread_priority_defaultValue = {"0"}
 
const std::string m_local_qos_thread_policy_defaultValue = {"0"}
 
const std::string m_local_qos_packet_priority_defaultValue = {""}
 
const std::string m_remote_qos_enable_defaultValue = {"false"}
 
const std::string m_remote_qos_thread_priority_defaultValue = {"0"}
 
const std::string m_remote_qos_thread_policy_defaultValue = {"0"}
 
const std::string m_remote_qos_packet_priority_defaultValue = {""}
 
const std::string m_ignoreProtocolCheck_defaultValue = {"false"}
 
const std::string m_diagnostic_defaultValue = {"false"}
 
std::string m_remote = {}
 
std::string m_local = {}
 
std::string m_writeStrict = {}
 
std::string m_carrier = {"udp"}
 
float m_timeout = {0.5}
 
bool m_local_qos_enable = {false}
 
int m_local_qos_thread_priority = {0}
 
int m_local_qos_thread_policy = {0}
 
std::string m_local_qos_packet_priority = {}
 
bool m_remote_qos_enable = {false}
 
int m_remote_qos_thread_priority = {0}
 
int m_remote_qos_thread_policy = {0}
 
std::string m_remote_qos_packet_priority = {}
 
bool m_ignoreProtocolCheck = {false}
 
bool m_diagnostic = {false}
 

Detailed Description

remote_controlboard: The client side of the control board, connects to a remote controlboard using the YARP network.

This device communicates using the YARP ports opened the controlBoard_nws_yarp device to use a device exposing controlboard method even from a different process (or even computer) from the one that opened the controlboard device.

Parameters required by this device are shown in class: RemoteControlBoard_ParamsParser

Definition at line 60 of file RemoteControlBoard.h.

Constructor & Destructor Documentation

◆ RemoteControlBoard() [1/3]

RemoteControlBoard::RemoteControlBoard ( )
default

◆ RemoteControlBoard() [2/3]

RemoteControlBoard::RemoteControlBoard ( const RemoteControlBoard )
delete

◆ RemoteControlBoard() [3/3]

RemoteControlBoard::RemoteControlBoard ( RemoteControlBoard &&  )
delete

◆ ~RemoteControlBoard()

RemoteControlBoard::~RemoteControlBoard ( )
overridedefault

Member Function Documentation

◆ abortCalibration()

bool RemoteControlBoard::abortCalibration ( )
overridevirtual

Reimplemented from yarp::dev::IControlCalibration.

Definition at line 2043 of file RemoteControlBoard.cpp.

◆ abortPark()

bool RemoteControlBoard::abortPark ( )
overridevirtual

Reimplemented from yarp::dev::IControlCalibration.

Definition at line 2048 of file RemoteControlBoard.cpp.

◆ calibrateAxisWithParams()

bool RemoteControlBoard::calibrateAxisWithParams ( int  axis,
unsigned int  type,
double  p1,
double  p2,
double  p3 
)
overridevirtual

Start calibration, this method is very often platform specific.

Returns
true/false on success failure

Implements yarp::dev::IControlCalibration.

Definition at line 2058 of file RemoteControlBoard.cpp.

◆ calibrateRobot()

bool RemoteControlBoard::calibrateRobot ( )
overridevirtual

Calibrate robot by using an external calibrator.

The external calibrator must be previously set by calling the setCalibration() method.

Returns
true/false on success failure

Reimplemented from yarp::dev::IControlCalibration.

Definition at line 2038 of file RemoteControlBoard.cpp.

◆ calibrateSingleJoint()

bool RemoteControlBoard::calibrateSingleJoint ( int  j)
overridevirtual

calibrateSingleJoint: call the calibration procedure for the single joint

Parameters
jjoint to be calibrated
Returns
true if calibration was successful

Implements yarp::dev::IRemoteCalibrator.

Definition at line 2688 of file RemoteControlBoard.cpp.

◆ calibrateWholePart()

bool RemoteControlBoard::calibrateWholePart ( )
overridevirtual

calibrateWholePart: call the procedure for calibrating the whole device

Returns
true if calibration was successful

Implements yarp::dev::IRemoteCalibrator.

Definition at line 2693 of file RemoteControlBoard.cpp.

◆ calibrationDone()

bool RemoteControlBoard::calibrationDone ( int  j)
overridevirtual

Check if the calibration is terminated, on a particular joint.

Non blocking.

Returns
true/false

Implements yarp::dev::IControlCalibration.

Definition at line 2097 of file RemoteControlBoard.cpp.

◆ checkMotionDone() [1/3]

bool RemoteControlBoard::checkMotionDone ( bool flag)
overridevirtual

Check if the current trajectory is terminated.

Non blocking.

Parameters
flagis a pointer to return value ("and" of all joints)
Returns
true/false on network communication (value you actually want is stored in *flag)

Implements yarp::dev::IPositionControl.

Definition at line 1767 of file RemoteControlBoard.cpp.

◆ checkMotionDone() [2/3]

bool RemoteControlBoard::checkMotionDone ( const int  n_joint,
const int joints,
bool flag 
)
overridevirtual

Check if the current trajectory is terminated.

Non blocking.

Parameters
jointspointer to the array of joint numbers
flagpointer to return value (logical "and" of all set of joints)
Returns
true/false if network communication went well.

Implements yarp::dev::IPositionControl.

Definition at line 1762 of file RemoteControlBoard.cpp.

◆ checkMotionDone() [3/3]

bool RemoteControlBoard::checkMotionDone ( int  j,
bool flag 
)
overridevirtual

Check if the current trajectory is terminated.

Non blocking.

Parameters
jis the axis number
flagis a pointer to return value
Returns
true/false on network communication (value you actually want is stored in *flag)

Implements yarp::dev::IPositionControl.

Definition at line 1757 of file RemoteControlBoard.cpp.

◆ checkProtocolVersion()

bool RemoteControlBoard::checkProtocolVersion ( bool  ignore)
protected

Definition at line 118 of file RemoteControlBoard.cpp.

◆ close()

bool RemoteControlBoard::close ( )
overridevirtual

Close the device driver and stop the port connections.

Returns
true/false on success/failure.

Reimplemented from yarp::dev::DeviceDriver.

Definition at line 367 of file RemoteControlBoard.cpp.

◆ disableAmp()

bool RemoteControlBoard::disableAmp ( int  j)
overridevirtual

Disable the amplifier on a specific joint.

All computations within the board will be carried out normally, but the output will be disabled.

Returns
true/false on success/failure

Implements yarp::dev::IAmplifierControl.

Definition at line 1928 of file RemoteControlBoard.cpp.

◆ disablePid()

bool RemoteControlBoard::disablePid ( const PidControlTypeEnum pidtype,
int  j 
)
overridevirtual

Disable the pid computation for a joint.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
Returns
true on success, false on failure.

Implements yarp::dev::IPidControl.

Definition at line 1315 of file RemoteControlBoard.cpp.

◆ enableAmp()

bool RemoteControlBoard::enableAmp ( int  j)
overridevirtual

Enable the amplifier on a specific joint.

Be careful, check that the output of the controller is appropriate (usually zero), to avoid generating abrupt movements.

Returns
true/false on success/failure

Implements yarp::dev::IAmplifierControl.

Definition at line 1923 of file RemoteControlBoard.cpp.

◆ enablePid()

bool RemoteControlBoard::enablePid ( const PidControlTypeEnum pidtype,
int  j 
)
overridevirtual

Enable the pid computation for a joint.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
Returns
true on success, false on failure.

Implements yarp::dev::IPidControl.

Definition at line 1330 of file RemoteControlBoard.cpp.

◆ get1V1B()

bool RemoteControlBoard::get1V1B ( int  v,
bool val 
)
protected

Definition at line 899 of file RemoteControlBoard.cpp.

◆ get1V1D()

bool RemoteControlBoard::get1V1D ( int  code,
double v 
) const
protected

Send a GET command expecting a double value in return.

Parameters
codeis the Vocab code of the GET command.
vis a reference to the return variable.
Returns
true/false on success/failure.

Definition at line 483 of file RemoteControlBoard.cpp.

◆ get1V1DA()

bool RemoteControlBoard::get1V1DA ( int  v1,
double val 
)
protected

Helper method to get an array of double from the remote peer.

Parameters
v1is the name of the command
valis the array of double
Returns
true/false on success/failure

Definition at line 967 of file RemoteControlBoard.cpp.

◆ get1V1I()

bool RemoteControlBoard::get1V1I ( int  code,
int v 
) const
protected

Send a GET command expecting an integer value in return.

Parameters
codeis the Vocab code of the GET command.
vis a reference to the return variable.
Returns
true/false on success/failure.

Definition at line 503 of file RemoteControlBoard.cpp.

◆ get1V1I1B()

bool RemoteControlBoard::get1V1I1B ( int  v,
int  j,
bool val 
)
protected

Helper method used to get a double value from the remote peer.

Parameters
vis the command to query for
jis the axis number
valis the return value
Returns
true/false on success/failure

Definition at line 817 of file RemoteControlBoard.cpp.

◆ get1V1I1D()

bool RemoteControlBoard::get1V1I1D ( int  v,
int  j,
double val 
)
protected

Helper method used to get a double value from the remote peer.

Parameters
vis the command to query for
jis the axis number
valis the return value
Returns
true/false on success/failure

Definition at line 727 of file RemoteControlBoard.cpp.

◆ get1V1I1I()

bool RemoteControlBoard::get1V1I1I ( int  v,
int  j,
int val 
)
protected

Helper method used to get an integer value from the remote peer.

Parameters
vis the command to query for
jis the axis number
valis the return value
Returns
true/false on success/failure

Definition at line 745 of file RemoteControlBoard.cpp.

◆ get1V1I1IA1B()

bool RemoteControlBoard::get1V1I1IA1B ( int  v,
const int  len,
const int val1,
bool retVal 
)
protected

Definition at line 832 of file RemoteControlBoard.cpp.

◆ get1V1I1IA1DA()

bool RemoteControlBoard::get1V1I1IA1DA ( int  v,
const int  len,
const int val1,
double val2 
)
protected

Definition at line 1078 of file RemoteControlBoard.cpp.

◆ get1V1I1S()

bool RemoteControlBoard::get1V1I1S ( int  code,
int  j,
std::string &  name 
)
protected

Definition at line 1062 of file RemoteControlBoard.cpp.

◆ get1V1I2D()

bool RemoteControlBoard::get1V1I2D ( int  code,
int  axis,
double v1,
double v2 
)
protected

Definition at line 800 of file RemoteControlBoard.cpp.

◆ get1VDA()

bool RemoteControlBoard::get1VDA ( int  v,
double val 
)
protected

Helper method to get an array of double from the remote peer.

Parameters
vis the name of the command
valis the array of double
Returns
true/false on success/failure

Definition at line 940 of file RemoteControlBoard.cpp.

◆ get1VIA()

bool RemoteControlBoard::get1VIA ( int  v,
int val 
)
protected

Helper method to get an array of integers from the remote peer.

Parameters
vis the name of the command
valis the array of double
Returns
true/false on success/failure

Definition at line 913 of file RemoteControlBoard.cpp.

◆ get2V1DA()

bool RemoteControlBoard::get2V1DA ( int  v1,
int  v2,
double val 
)
protected

Helper method to get an array of double from the remote peer.

Parameters
v1is the name of the command
v2v2
valis the array of double
Returns
true/false on success/failure

Definition at line 994 of file RemoteControlBoard.cpp.

◆ get2V1I1D()

bool RemoteControlBoard::get2V1I1D ( int  v1,
int  v2,
int  j,
double val 
)
protected

Definition at line 762 of file RemoteControlBoard.cpp.

◆ get2V1I1IA1DA()

bool RemoteControlBoard::get2V1I1IA1DA ( int  v1,
int  v2,
const int  n_joints,
const int joints,
double retVals,
std::string  functionName = "" 
)
protected

Definition at line 853 of file RemoteControlBoard.cpp.

◆ get2V1I2D()

bool RemoteControlBoard::get2V1I2D ( int  v1,
int  v2,
int  j,
double val1,
double val2 
)
protected

Definition at line 781 of file RemoteControlBoard.cpp.

◆ get2V2DA()

bool RemoteControlBoard::get2V2DA ( int  v1,
int  v2,
double val1,
double val2 
)
protected

Definition at line 1022 of file RemoteControlBoard.cpp.

◆ getAmpStatus() [1/2]

bool RemoteControlBoard::getAmpStatus ( int st)
overridevirtual

Implements yarp::dev::IAmplifierControl.

Definition at line 1933 of file RemoteControlBoard.cpp.

◆ getAmpStatus() [2/2]

bool RemoteControlBoard::getAmpStatus ( int  j,
int st 
)
overridevirtual

Implements yarp::dev::IAmplifierControl.

Definition at line 1938 of file RemoteControlBoard.cpp.

◆ getAxes()

bool RemoteControlBoard::getAxes ( int ax)
overridevirtual

Get the number of controlled axes.

This command asks the number of controlled axes for the current physical interface.

Parameters
axpointer to storage
Returns
true/false.

Implements yarp::dev::IPositionControl.

Definition at line 1120 of file RemoteControlBoard.cpp.

◆ getAxisName()

bool RemoteControlBoard::getAxisName ( int  j,
std::string &  name 
)
overridevirtual

Implements yarp::dev::IAxisInfo.

Definition at line 2025 of file RemoteControlBoard.cpp.

◆ getControlMode()

bool RemoteControlBoard::getControlMode ( int  j,
int mode 
)
overridevirtual

Get the current control mode.

Parameters
jjoint number
modea vocab of the current control mode for joint j.
Returns
: true/false success failure.

Implements yarp::dev::IControlMode.

Definition at line 2362 of file RemoteControlBoard.cpp.

◆ getControlModes() [1/2]

bool RemoteControlBoard::getControlModes ( const int  n_joint,
const int joints,
int modes 
)
overridevirtual

Get the current control mode for a subset of axes.

Parameters
n_jointshow many joints this command is referring to
jointslist of joint numbers, the size of this array is n_joints
modesarray containing the new controlmodes, 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 modes VOCAB_CM_POSITION VOCAB_CM_VELOCITY VOCAB_CM_POSITION
Returns
true/false success failure.

Implements yarp::dev::IControlMode.

Definition at line 2380 of file RemoteControlBoard.cpp.

◆ getControlModes() [2/2]

bool RemoteControlBoard::getControlModes ( int modes)
overridevirtual

Get the current control mode (multiple joints).

Parameters
modesa vector containing vocabs for the current control modes of the joints.
Returns
: true/false success failure.

Implements yarp::dev::IControlMode.

Definition at line 2371 of file RemoteControlBoard.cpp.

◆ getCurrent()

bool RemoteControlBoard::getCurrent ( int  j,
double val 
)
overridevirtual

Implements yarp::dev::IAmplifierControl.

Definition at line 2828 of file RemoteControlBoard.cpp.

◆ getCurrentImpedanceLimit()

bool RemoteControlBoard::getCurrentImpedanceLimit ( int  j,
double min_stiff,
double max_stiff,
double min_damp,
double max_damp 
)
overridevirtual

Get the current impedandance limits for a specific joint.

Returns
success/failure

Implements yarp::dev::IImpedanceControl.

Definition at line 2335 of file RemoteControlBoard.cpp.

◆ getCurrentRange()

bool RemoteControlBoard::getCurrentRange ( int  m,
double min,
double max 
)
overridevirtual

Get the full scale of the current measurement for a given motor (e.g.

-20A +20A) Reference values set by user with methods such as setRefCurrent() should be in this range. This method is not related to the current overload protection methods belonging to the iAmplifierControl interface.

Parameters
mmotor number
minminimum current of the motor m
maxmaximum current of the motor m
Returns
true/false on success/failure

Implements yarp::dev::ICurrentControl.

Definition at line 2837 of file RemoteControlBoard.cpp.

◆ getCurrentRanges()

bool RemoteControlBoard::getCurrentRanges ( double min,
double max 
)
overridevirtual

Get the full scale of the current measurements for all motors motor (e.g.

-20A +20A) Reference values set by user with methods such as setRefCurrent() should be in this range. This method is not related to the current overload protection methods belonging to the iAmplifierControl interface.

Parameters
minpointer to the array that will store minimum currents
maxpointer to the array that will store maximum currents
Returns
true/false on success/failure

Implements yarp::dev::ICurrentControl.

Definition at line 2842 of file RemoteControlBoard.cpp.

◆ getCurrents()

bool RemoteControlBoard::getCurrents ( double vals)
overridevirtual

Implements yarp::dev::IAmplifierControl.

Definition at line 2819 of file RemoteControlBoard.cpp.

◆ getDutyCycle()

bool RemoteControlBoard::getDutyCycle ( int  m,
double val 
)
overridevirtual

Gets the current dutycycle of the output of the amplifier (i.e.

pwm value sent to the motor)

Parameters
mmotor number
valpointer to storage for return value, expressed as percentage (-100% +100%)
Returns
true/false on success/failure

Implements yarp::dev::IPWMControl.

Definition at line 2918 of file RemoteControlBoard.cpp.

◆ getDutyCycles()

bool RemoteControlBoard::getDutyCycles ( double vals)
overridevirtual

Gets the current dutycycle of the output of the amplifier (i.e.

pwm values sent to all motors)

Parameters
valspointer to the vector that will store the values, expressed as percentage (-100% +100%)
Returns
true/false on success/failure

Implements yarp::dev::IPWMControl.

Definition at line 2927 of file RemoteControlBoard.cpp.

◆ getEncoder()

bool RemoteControlBoard::getEncoder ( int  j,
double v 
)
overridevirtual

Read the value of an encoder.

Parameters
jencoder number
vpointer to storage for the return value
Returns
true/false, upon success/failure (you knew it, uh?)

Implements yarp::dev::IEncoders.

Definition at line 1401 of file RemoteControlBoard.cpp.

◆ getEncoderAcceleration()

bool RemoteControlBoard::getEncoderAcceleration ( int  j,
double spds 
)
overridevirtual

Read the instantaneous acceleration of an axis.

Parameters
jaxis number
spdspointer to the array that will contain the output

Implements yarp::dev::IEncoders.

Definition at line 1464 of file RemoteControlBoard.cpp.

◆ getEncoderAccelerations()

bool RemoteControlBoard::getEncoderAccelerations ( double accs)
overridevirtual

Read the instantaneous acceleration of all axes.

Parameters
accspointer to the array that will contain the output
Returns
true if all goes well, false if anything bad happens.

Implements yarp::dev::IEncoders.

Definition at line 1473 of file RemoteControlBoard.cpp.

◆ getEncoders()

bool RemoteControlBoard::getEncoders ( double encs)
overridevirtual

Read the position of all axes.

Parameters
encspointer to the array that will contain the output
Returns
true/false on success/failure

Implements yarp::dev::IEncoders.

Definition at line 1422 of file RemoteControlBoard.cpp.

◆ getEncoderSpeed()

bool RemoteControlBoard::getEncoderSpeed ( int  j,
double sp 
)
overridevirtual

Read the istantaneous speed of an axis.

Parameters
jaxis number
sppointer to storage for the output
Returns
true if successful, false ... otherwise.

Implements yarp::dev::IEncoders.

Definition at line 1444 of file RemoteControlBoard.cpp.

◆ getEncoderSpeeds()

bool RemoteControlBoard::getEncoderSpeeds ( double spds)
overridevirtual

Read the instantaneous speed of all axes.

Parameters
spdspointer to storage for the output values
Returns
guess what? (true/false on success or failure).

Implements yarp::dev::IEncoders.

Definition at line 1454 of file RemoteControlBoard.cpp.

◆ getEncodersTimed()

bool RemoteControlBoard::getEncodersTimed ( double encs,
double time 
)
overridevirtual

Read the instantaneous acceleration of all axes.

Parameters
encspointer to the array that will contain the output
timepointer to the array that will contain individual timestamps
Returns
true if all goes well, false if anything bad happens.

Implements yarp::dev::IEncodersTimed.

Definition at line 1433 of file RemoteControlBoard.cpp.

◆ getEncoderTimed()

bool RemoteControlBoard::getEncoderTimed ( int  j,
double encs,
double time 
)
overridevirtual

Read the instantaneous acceleration of all axes.

Parameters
jaxis index
encsencoder value (pointer to)
timecorresponding timestamp (pointer to)
Returns
true if all goes well, false if anything bad happens.

Implements yarp::dev::IEncodersTimed.

Definition at line 1411 of file RemoteControlBoard.cpp.

◆ getGearboxRatio()

bool RemoteControlBoard::getGearboxRatio ( int  m,
double val 
)
overridevirtual

Get the gearbox ratio for a specific motor.

Parameters
mmotor number
valretrieved gearbox ratio
Returns
true/false

Reimplemented from yarp::dev::IMotor.

Definition at line 1563 of file RemoteControlBoard.cpp.

◆ getImpedance()

bool RemoteControlBoard::getImpedance ( int  j,
double stiffness,
double damping 
)
overridevirtual

Get current impedance gains (stiffness,damping,offset) for a specific joint.

Returns
success/failure

Implements yarp::dev::IImpedanceControl.

Definition at line 2263 of file RemoteControlBoard.cpp.

◆ getImpedanceOffset()

bool RemoteControlBoard::getImpedanceOffset ( int  j,
double offset 
)
overridevirtual

Get current force Offset for a specific joint.

Returns
success/failure

Implements yarp::dev::IImpedanceControl.

Definition at line 2284 of file RemoteControlBoard.cpp.

◆ getInteractionMode()

bool RemoteControlBoard::getInteractionMode ( int  axis,
yarp::dev::InteractionModeEnum mode 
)
overridevirtual

Get the current interaction mode of the robot, values can be stiff or compliant.

Parameters
axisjoint number
modecontains the requested information about interaction mode of the joint
Returns
true or false on success or failure.

Implements yarp::dev::IInteractionMode.

Definition at line 2569 of file RemoteControlBoard.cpp.

◆ getInteractionModes() [1/2]

bool RemoteControlBoard::getInteractionModes ( int  n_joints,
int joints,
yarp::dev::InteractionModeEnum modes 
)
overridevirtual

Get the current interaction mode of the robot for a set of joints, values can be stiff or compliant.

Parameters
n_jointshow many joints this command is referring to
jointslist of joints controlled. The size of this array is n_joints
modesarray containing the requested information about interaction mode, one value for each joint, the size is n_joints. for example: n_joint 3 joints 0 2 4 refs VOCAB_IM_STIFF VOCAB_IM_STIFF VOCAB_IM_COMPLIANT
Returns
true or false on success or failure.

Implements yarp::dev::IInteractionMode.

Definition at line 2578 of file RemoteControlBoard.cpp.

◆ getInteractionModes() [2/2]

bool RemoteControlBoard::getInteractionModes ( yarp::dev::InteractionModeEnum modes)
overridevirtual

Get the current interaction mode of the robot for a all the joints, values can be stiff or compliant.

Parameters
modearray containing the requested information about interaction mode, one value for each joint.
Returns
true or false on success or failure.

Implements yarp::dev::IInteractionMode.

Definition at line 2597 of file RemoteControlBoard.cpp.

◆ getJointType()

bool RemoteControlBoard::getJointType ( int  j,
yarp::dev::JointTypeEnum type 
)
overridevirtual

Reimplemented from yarp::dev::IAxisInfo.

Definition at line 2030 of file RemoteControlBoard.cpp.

◆ getLastInputStamp()

Stamp RemoteControlBoard::getLastInputStamp ( )
overridevirtual

Get the time stamp for the last read data.

Returns
last time stamp.

Implements yarp::dev::IPreciselyTimed.

Definition at line 1699 of file RemoteControlBoard.cpp.

◆ getLastJointFault()

bool RemoteControlBoard::getLastJointFault ( int  j,
int fault,
std::string &  message 
)
overridevirtual

Implements yarp::dev::IJointFault.

Definition at line 1864 of file RemoteControlBoard.cpp.

◆ getLimits()

bool RemoteControlBoard::getLimits ( int  axis,
double min,
double max 
)
overridevirtual

Get the software limits for a particular axis.

Parameters
axisjoint number
pointerto store the value of the lower limit
pointerto store the value of the upper limit
Returns
true if everything goes fine, false otherwise.

Implements yarp::dev::IControlLimits.

Definition at line 2006 of file RemoteControlBoard.cpp.

◆ getMaxCurrent()

bool RemoteControlBoard::getMaxCurrent ( int  j,
double v 
)
overridevirtual

Returns the maximum electric current allowed for a given motor.

Exceeding this value will trigger instantaneous hardware fault.

Parameters
jmotor number
vthe return value
Returns
probably true, might return false in bad times

Implements yarp::dev::IAmplifierControl.

Definition at line 1948 of file RemoteControlBoard.cpp.

◆ getMotorEncoder()

bool RemoteControlBoard::getMotorEncoder ( int  m,
double v 
)
overridevirtual

Read the value of a motor encoder.

Parameters
mmotor encoder number
vpointer to storage for the return value
Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1607 of file RemoteControlBoard.cpp.

◆ getMotorEncoderAcceleration()

bool RemoteControlBoard::getMotorEncoderAcceleration ( int  m,
double acc 
)
overridevirtual

Read the instantaneous acceleration of a motor encoder.

Parameters
mmotor number
accpointer to the array that will contain the output
Returns
true if successful, false otherwise.

Implements yarp::dev::IMotorEncoders.

Definition at line 1668 of file RemoteControlBoard.cpp.

◆ getMotorEncoderAccelerations()

bool RemoteControlBoard::getMotorEncoderAccelerations ( double accs)
overridevirtual

Read the instantaneous acceleration of all motor encoders.

Parameters
accspointer to the array that will contain the output
Returns
true if successful, false otherwise.

Implements yarp::dev::IMotorEncoders.

Definition at line 1677 of file RemoteControlBoard.cpp.

◆ getMotorEncoderCountsPerRevolution()

bool RemoteControlBoard::getMotorEncoderCountsPerRevolution ( int  m,
double cpr 
)
overridevirtual

Gets number of counts per revolution for motor encoder m.

Parameters
mmotor number
cprvals pointer to the new value
Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1597 of file RemoteControlBoard.cpp.

◆ getMotorEncoders()

bool RemoteControlBoard::getMotorEncoders ( double encs)
overridevirtual

Read the position of all motor encoders.

Parameters
encspointer to the array that will contain the output
Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1628 of file RemoteControlBoard.cpp.

◆ getMotorEncoderSpeed()

bool RemoteControlBoard::getMotorEncoderSpeed ( int  m,
double sp 
)
overridevirtual

Read the istantaneous speed of a motor encoder.

Parameters
mmotor number
sppointer to storage for the output
Returns
true if successful, false otherwise.

Implements yarp::dev::IMotorEncoders.

Definition at line 1650 of file RemoteControlBoard.cpp.

◆ getMotorEncoderSpeeds()

bool RemoteControlBoard::getMotorEncoderSpeeds ( double spds)
overridevirtual

Read the instantaneous speed of all motor encoders.

Parameters
spdspointer to storage for the output values
Returns
true if successful, false otherwise.

Implements yarp::dev::IMotorEncoders.

Definition at line 1659 of file RemoteControlBoard.cpp.

◆ getMotorEncodersTimed()

bool RemoteControlBoard::getMotorEncodersTimed ( double encs,
double time 
)
overridevirtual

Read the instantaneous position of all motor encoders.

Parameters
encspointer to the array that will contain the output
timepointer to the array that will contain individual timestamps
Returns
true if successful, false otherwise.

Implements yarp::dev::IMotorEncoders.

Definition at line 1639 of file RemoteControlBoard.cpp.

◆ getMotorEncoderTimed()

bool RemoteControlBoard::getMotorEncoderTimed ( int  m,
double encs,
double time 
)
overridevirtual

Read the instantaneous position of a motor encoder.

Parameters
mmotor index
encsencoder value (pointer to)
timecorresponding timestamp (pointer to)
Returns
true if successful, false otherwise.

Implements yarp::dev::IMotorEncoders.

Definition at line 1617 of file RemoteControlBoard.cpp.

◆ getMotorTorqueParams()

bool RemoteControlBoard::getMotorTorqueParams ( int  j,
MotorTorqueParameters params 
)
overridevirtual

Get a subset of motor parameters (bemf, ktau etc) useful for torque control.

Parameters
jjoint number
paramsa struct containing the motor parameters to be retrieved
Returns
true/false on success/failure

Reimplemented from yarp::dev::ITorqueControl.

Definition at line 2198 of file RemoteControlBoard.cpp.

◆ getNominalCurrent()

bool RemoteControlBoard::getNominalCurrent ( int  m,
double val 
)
overridevirtual

Reimplemented from yarp::dev::IAmplifierControl.

Definition at line 1953 of file RemoteControlBoard.cpp.

◆ getNumberOfMotorEncoders()

bool RemoteControlBoard::getNumberOfMotorEncoders ( int num)
overridevirtual

Get the number of available motor encoders.

Parameters
mpointer to a value representing the number of available motor encoders.
Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1686 of file RemoteControlBoard.cpp.

◆ getNumberOfMotors()

bool RemoteControlBoard::getNumberOfMotors ( int num)
overridevirtual

Get the number of available motors.

Parameters
numretrieved number of available motors
Returns
true/false

Implements yarp::dev::IMotor.

Definition at line 1538 of file RemoteControlBoard.cpp.

◆ getPeakCurrent()

bool RemoteControlBoard::getPeakCurrent ( int  m,
double val 
)
overridevirtual

Reimplemented from yarp::dev::IAmplifierControl.

Definition at line 1963 of file RemoteControlBoard.cpp.

◆ getPid()

bool RemoteControlBoard::getPid ( const PidControlTypeEnum pidtype,
int  j,
Pid pid 
)
overridevirtual

Get current pid value for a specific joint.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
pidpointer to storage for the return value.
Returns
success/failure

Implements yarp::dev::IPidControl.

Definition at line 1209 of file RemoteControlBoard.cpp.

◆ getPidError()

bool RemoteControlBoard::getPidError ( const PidControlTypeEnum pidtype,
int  j,
double err 
)
overridevirtual

Get the current error for a joint.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
errpointer to the storage for the return value
Returns
true/false on success failure

Implements yarp::dev::IPidControl.

Definition at line 1199 of file RemoteControlBoard.cpp.

◆ getPidErrorLimit()

bool RemoteControlBoard::getPidErrorLimit ( const PidControlTypeEnum pidtype,
int  j,
double limit 
)
overridevirtual

Get the error limit for the controller on a specific joint.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
limitpointer to storage
Returns
success/failure

Implements yarp::dev::IPidControl.

Definition at line 1290 of file RemoteControlBoard.cpp.

◆ getPidErrorLimits()

bool RemoteControlBoard::getPidErrorLimits ( const PidControlTypeEnum pidtype,
double limits 
)
overridevirtual

Get the error limit for all controllers.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
limitspointer to the array that will store the output
Returns
success or failure

Implements yarp::dev::IPidControl.

Definition at line 1295 of file RemoteControlBoard.cpp.

◆ getPidErrors()

bool RemoteControlBoard::getPidErrors ( const PidControlTypeEnum pidtype,
double errs 
)
overridevirtual

Get the error of all joints.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
errspointer to the vector that will store the errors

Implements yarp::dev::IPidControl.

Definition at line 1204 of file RemoteControlBoard.cpp.

◆ getPidOutput()

bool RemoteControlBoard::getPidOutput ( const PidControlTypeEnum pidtype,
int  j,
double out 
)
overridevirtual

Get the output of the controller (e.g.

pwm value)

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
outpointer to storage for return value
Returns
success/failure

Implements yarp::dev::IPidControl.

Definition at line 1362 of file RemoteControlBoard.cpp.

◆ getPidOutputs()

bool RemoteControlBoard::getPidOutputs ( const PidControlTypeEnum pidtype,
double outs 
)
overridevirtual

Get the output of the controllers (e.g.

pwm value)

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
outspinter to the vector that will store the output values

Implements yarp::dev::IPidControl.

Definition at line 1367 of file RemoteControlBoard.cpp.

◆ getPidReference()

bool RemoteControlBoard::getPidReference ( const PidControlTypeEnum pidtype,
int  j,
double ref 
)
overridevirtual

Get the current reference of the pid controller for a specific joint.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
refpointer to storage for return value
Returns
reference value

Implements yarp::dev::IPidControl.

Definition at line 1280 of file RemoteControlBoard.cpp.

◆ getPidReferences()

bool RemoteControlBoard::getPidReferences ( const PidControlTypeEnum pidtype,
double refs 
)
overridevirtual

Get the current reference of all pid controllers.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
refsvector that will store the output.

Implements yarp::dev::IPidControl.

Definition at line 1285 of file RemoteControlBoard.cpp.

◆ getPids()

bool RemoteControlBoard::getPids ( const PidControlTypeEnum pidtype,
Pid pids 
)
overridevirtual

Get current pid value for a specific joint.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
pidsvector that will store the values of the pids.
Returns
success/failure

Implements yarp::dev::IPidControl.

Definition at line 1239 of file RemoteControlBoard.cpp.

◆ getPowerSupplyVoltage()

bool RemoteControlBoard::getPowerSupplyVoltage ( int  m,
double val 
)
overridevirtual

Reimplemented from yarp::dev::IAmplifierControl.

Definition at line 1992 of file RemoteControlBoard.cpp.

◆ getPWM()

bool RemoteControlBoard::getPWM ( int  m,
double val 
)
overridevirtual

Reimplemented from yarp::dev::IAmplifierControl.

Definition at line 1973 of file RemoteControlBoard.cpp.

◆ getPWMLimit()

bool RemoteControlBoard::getPWMLimit ( int  m,
double val 
)
overridevirtual

Reimplemented from yarp::dev::IAmplifierControl.

Definition at line 1982 of file RemoteControlBoard.cpp.

◆ getRefAcceleration()

bool RemoteControlBoard::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::IPositionControl.

Definition at line 1817 of file RemoteControlBoard.cpp.

◆ getRefAccelerations() [1/2]

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

Get reference acceleration for a joint.

Returns the acceleration used to generate the trajectory profile.

Parameters
jointspointer to the array of joint numbers
accspointer to the array that will store the acceleration values
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1822 of file RemoteControlBoard.cpp.

◆ getRefAccelerations() [2/2]

bool RemoteControlBoard::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::IPositionControl.

Definition at line 1827 of file RemoteControlBoard.cpp.

◆ getRefCurrent()

bool RemoteControlBoard::getRefCurrent ( int  m,
double curr 
)
overridevirtual

Get the reference value of the current for a single motor.

Parameters
mmotor number
currthe current reference value for motor m. Value is expressed in amperes.
Returns
true/false on success/failure

Implements yarp::dev::ICurrentControl.

Definition at line 2763 of file RemoteControlBoard.cpp.

◆ getRefCurrents()

bool RemoteControlBoard::getRefCurrents ( double currs)
overridevirtual

Get the reference value of the currents for all motors.

Parameters
currspointer to the array to be filled with reference current values. Values are expressed in amperes.
Returns
true/false on success/failure

Implements yarp::dev::ICurrentControl.

Definition at line 2758 of file RemoteControlBoard.cpp.

◆ getRefDutyCycle()

bool RemoteControlBoard::getRefDutyCycle ( int  m,
double ref 
)
overridevirtual

Gets the last reference sent using the setRefDutyCycle function.

Parameters
mmotor number
refpointer to storage for return value, expressed as percentage (-100% +100%)
Returns
true/false on success/failure

Implements yarp::dev::IPWMControl.

Definition at line 2890 of file RemoteControlBoard.cpp.

◆ getRefDutyCycles()

bool RemoteControlBoard::getRefDutyCycles ( double refs)
overridevirtual

Gets the last reference sent using the setRefDutyCycles function.

Parameters
refspointer to the vector that will store the values, expressed as percentage (-100% +100%)
Returns
true/false on success/failure

Implements yarp::dev::IPWMControl.

Definition at line 2913 of file RemoteControlBoard.cpp.

◆ getRefPosition()

bool RemoteControlBoard::getRefPosition ( const int  joint,
double ref 
)
overridevirtual

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.

Parameters
reflast reference sent using setPosition(s) functions
Returns
true/false on success/failure

Reimplemented from yarp::dev::IPositionDirect.

Definition at line 2511 of file RemoteControlBoard.cpp.

◆ getRefPositions() [1/2]

bool RemoteControlBoard::getRefPositions ( const int  n_joint,
const int joints,
double refs 
)
overridevirtual

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.

Parameters
refarray containing last reference sent using setPosition(s) functions
Returns
true/false on success/failure

Reimplemented from yarp::dev::IPositionDirect.

Definition at line 2521 of file RemoteControlBoard.cpp.

◆ getRefPositions() [2/2]

bool RemoteControlBoard::getRefPositions ( double refs)
overridevirtual

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.

Parameters
refarray containing last reference sent using setPosition(s) functions
Returns
true/false on success/failure

Reimplemented from yarp::dev::IPositionDirect.

Definition at line 2516 of file RemoteControlBoard.cpp.

◆ getRefSpeed()

bool RemoteControlBoard::getRefSpeed ( int  j,
double ref 
)
overridevirtual

Get reference speed for a joint.

Returns the speed used to generate the trajectory profile.

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

Implements yarp::dev::IPositionControl.

Definition at line 1802 of file RemoteControlBoard.cpp.

◆ getRefSpeeds() [1/2]

bool RemoteControlBoard::getRefSpeeds ( const int  n_joint,
const int joints,
double spds 
)
overridevirtual

Get reference speed of all joints.

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

Parameters
jointspointer to the array of joint numbers
spdspointer to the array that will store the speed values.
Returns
true/false upon success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1807 of file RemoteControlBoard.cpp.

◆ getRefSpeeds() [2/2]

bool RemoteControlBoard::getRefSpeeds ( double spds)
overridevirtual

Get reference speed of all joints.

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

Parameters
spdspointer to the array that will store the speed values.

Implements yarp::dev::IPositionControl.

Definition at line 1812 of file RemoteControlBoard.cpp.

◆ getRefTorque()

bool RemoteControlBoard::getRefTorque ( int  j,
double t 
)
overridevirtual

Get the reference value of the torque for a given joint.

This is NOT the feedback (see getTorque instead).

Parameters
jjoint number
tthe returned reference torque of joint j
Returns
true/false on success/failure

Implements yarp::dev::ITorqueControl.

Definition at line 2106 of file RemoteControlBoard.cpp.

◆ getRefTorques()

bool RemoteControlBoard::getRefTorques ( double t)
overridevirtual

Get the reference value of the torque for all joints.

This is NOT the feedback (see getTorques instead).

Parameters
tpointer to the array of torque values
Returns
true/false on success/failure

Implements yarp::dev::ITorqueControl.

Definition at line 2111 of file RemoteControlBoard.cpp.

◆ getRefVelocities() [1/2]

bool RemoteControlBoard::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 2560 of file RemoteControlBoard.cpp.

◆ getRefVelocities() [2/2]

bool RemoteControlBoard::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 2555 of file RemoteControlBoard.cpp.

◆ getRefVelocity()

bool RemoteControlBoard::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 2550 of file RemoteControlBoard.cpp.

◆ getRemoteVariable()

bool RemoteControlBoard::getRemoteVariable ( std::string  key,
yarp::os::Bottle val 
)
overridevirtual

Implements yarp::dev::IRemoteVariables.

Definition at line 1486 of file RemoteControlBoard.cpp.

◆ getRemoteVariablesList()

bool RemoteControlBoard::getRemoteVariablesList ( yarp::os::Bottle listOfKeys)
overridevirtual

Implements yarp::dev::IRemoteVariables.

Definition at line 1517 of file RemoteControlBoard.cpp.

◆ getTargetPosition()

bool RemoteControlBoard::getTargetPosition ( const int  joint,
double ref 
)
overridevirtual

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

Parameters
reflast reference sent using PositionMove functions
Returns
true/false on success/failure

Reimplemented from yarp::dev::IPositionControl.

Definition at line 1727 of file RemoteControlBoard.cpp.

◆ getTargetPositions() [1/2]

bool RemoteControlBoard::getTargetPositions ( const int  n_joint,
const int joints,
double refs 
)
overridevirtual

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

Parameters
reflast reference sent using PositionMove functions
Returns
true/false on success/failure

Reimplemented from yarp::dev::IPositionControl.

Definition at line 1737 of file RemoteControlBoard.cpp.

◆ getTargetPositions() [2/2]

bool RemoteControlBoard::getTargetPositions ( double refs)
overridevirtual

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

Parameters
reflast reference sent using PositionMove functions
Returns
true/false on success/failure

Reimplemented from yarp::dev::IPositionControl.

Definition at line 1732 of file RemoteControlBoard.cpp.

◆ getTemperature()

bool RemoteControlBoard::getTemperature ( int  m,
double val 
)
overridevirtual

Get temperature of a motor.

Parameters
mmotor number
valretrieved motor temperature
Returns
true/false

Implements yarp::dev::IMotor.

Definition at line 1543 of file RemoteControlBoard.cpp.

◆ getTemperatureLimit()

bool RemoteControlBoard::getTemperatureLimit ( int  m,
double temp 
)
overridevirtual

Retreives the current temperature limit for a specific motor.

The specific behavior of the motor when the temperature limit is exceeded depends on the implementation (power off recommended)

Parameters
mmotor number
tempthe current temperature limit.
Returns
true/false

Implements yarp::dev::IMotor.

Definition at line 1553 of file RemoteControlBoard.cpp.

◆ getTemperatures()

bool RemoteControlBoard::getTemperatures ( double vals)
overridevirtual

Get temperature of all the motors.

Parameters
valspointer to an array containing all motor temperatures
Returns
true/false

Implements yarp::dev::IMotor.

Definition at line 1548 of file RemoteControlBoard.cpp.

◆ getTorque()

bool RemoteControlBoard::getTorque ( int  j,
double t 
)
overridevirtual

Get the value of the torque on a given joint (this is the feedback if you have a torque sensor).

Parameters
jjoint number
tpointer to the result value
Returns
true/false on success/failure

Implements yarp::dev::ITorqueControl.

Definition at line 2231 of file RemoteControlBoard.cpp.

◆ getTorqueRange()

bool RemoteControlBoard::getTorqueRange ( int  j,
double min,
double max 
)
overridevirtual

Get the full scale of the torque sensor of a given joint.

Parameters
jjoint number
minminimum torque of the joint j
maxmaximum torque of the joint j
Returns
true/false on success/failure

Implements yarp::dev::ITorqueControl.

Definition at line 2249 of file RemoteControlBoard.cpp.

◆ getTorqueRanges()

bool RemoteControlBoard::getTorqueRanges ( double min,
double max 
)
overridevirtual

Get the full scale of the torque sensors of all joints.

Parameters
minpointer to the array that will store minimum torques of the joints
maxpointer to the array that will store maximum torques of the joints
Returns
true/false on success/failure

Implements yarp::dev::ITorqueControl.

Definition at line 2254 of file RemoteControlBoard.cpp.

◆ getTorques()

bool RemoteControlBoard::getTorques ( double t)
overridevirtual

Get the value of the torque for all joints (this is the feedback if you have torque sensors).

Parameters
tpointer to the array that will store the output
Returns
true/false on success/failure

Implements yarp::dev::ITorqueControl.

Definition at line 2240 of file RemoteControlBoard.cpp.

◆ getValWithPidType() [1/2]

bool RemoteControlBoard::getValWithPidType ( int  voc,
PidControlTypeEnum  type,
double val 
)
protected

Definition at line 688 of file RemoteControlBoard.cpp.

◆ getValWithPidType() [2/2]

bool RemoteControlBoard::getValWithPidType ( int  voc,
PidControlTypeEnum  type,
int  j,
double val 
)
protected

Definition at line 669 of file RemoteControlBoard.cpp.

◆ getVelLimits()

bool RemoteControlBoard::getVelLimits ( int  axis,
double min,
double max 
)
overridevirtual

Get the software speed limits for a particular axis.

Parameters
axisjoint number
minpointer to store the value of the lower limit
maxpointer to store the value of the upper limit
Returns
true if everything goes fine, false otherwise.

Implements yarp::dev::IControlLimits.

Definition at line 2016 of file RemoteControlBoard.cpp.

◆ homingSingleJoint()

bool RemoteControlBoard::homingSingleJoint ( int  j)
overridevirtual

homingSingleJoint: call the homing procedure for a single joint

Parameters
jjoint to be calibrated
Returns
true if homing was successful, false otherwise

Implements yarp::dev::IRemoteCalibrator.

Definition at line 2703 of file RemoteControlBoard.cpp.

◆ homingWholePart()

bool RemoteControlBoard::homingWholePart ( )
overridevirtual

homingWholePart: call the homing procedure for a the whole part/device

Returns
true if homing was successful, false otherwise

Implements yarp::dev::IRemoteCalibrator.

Definition at line 2708 of file RemoteControlBoard.cpp.

◆ isCalibratorDevicePresent()

bool RemoteControlBoard::isCalibratorDevicePresent ( bool isCalib)
overridevirtual

isCalibratorDevicePresent: check if a calibrator device has been set

Returns
true if a valid calibrator device has been found

Reimplemented from yarp::dev::IRemoteCalibrator.

Definition at line 2673 of file RemoteControlBoard.cpp.

◆ isLive()

bool RemoteControlBoard::isLive ( )
protected

Definition at line 102 of file RemoteControlBoard.cpp.

◆ isPidEnabled()

bool RemoteControlBoard::isPidEnabled ( const PidControlTypeEnum pidtype,
int  j,
bool enabled 
)
overridevirtual

Get the current status (enabled/disabled) of the pid.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
enabledthe current status of the pid controller.
Returns
true on success, false on failure.

Implements yarp::dev::IPidControl.

Definition at line 1345 of file RemoteControlBoard.cpp.

◆ open()

bool RemoteControlBoard::open ( Searchable config)
overridevirtual

Open the DeviceDriver.

Parameters
configis a list of parameters for the device. Which parameters are effective for your device can vary. See device invocation examples. If there is no example for your device, you can run the "yarpdev" program with the verbose flag set to probe what parameters the device is checking. If that fails too, you'll need to read the source code (please nag one of the yarp developers to add documentation for your device).
Returns
true/false upon success/failure

Reimplemented from yarp::dev::DeviceDriver.

Definition at line 181 of file RemoteControlBoard.cpp.

◆ operator=() [1/2]

RemoteControlBoard & RemoteControlBoard::operator= ( const RemoteControlBoard )
delete

◆ operator=() [2/2]

RemoteControlBoard & RemoteControlBoard::operator= ( RemoteControlBoard &&  )
delete

◆ park()

bool RemoteControlBoard::park ( bool  wait = true)
overridevirtual

Reimplemented from yarp::dev::IControlCalibration.

Definition at line 2053 of file RemoteControlBoard.cpp.

◆ parkSingleJoint()

bool RemoteControlBoard::parkSingleJoint ( int  j,
bool  _wait = true 
)
overridevirtual

parkSingleJoint(): start the parking procedure for the single joint

Returns
true if successful

Implements yarp::dev::IRemoteCalibrator.

Definition at line 2719 of file RemoteControlBoard.cpp.

◆ parkWholePart()

bool RemoteControlBoard::parkWholePart ( )
overridevirtual

parkWholePart: start the parking procedure for the whole part

Returns
true if successful

Implements yarp::dev::IRemoteCalibrator.

Definition at line 2724 of file RemoteControlBoard.cpp.

◆ positionMove() [1/3]

bool RemoteControlBoard::positionMove ( const double refs)
overridevirtual

Set new reference point for all axes.

Parameters
refsarray, new reference points.
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1722 of file RemoteControlBoard.cpp.

◆ positionMove() [2/3]

bool RemoteControlBoard::positionMove ( const int  n_joint,
const int joints,
const double refs 
)
overridevirtual

Set new reference point for a subset of joints.

Parameters
jointspointer to the array of joint numbers
refspointer to the array specifying the new reference points
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1717 of file RemoteControlBoard.cpp.

◆ positionMove() [3/3]

bool RemoteControlBoard::positionMove ( int  j,
double  ref 
)
overridevirtual

Set new reference point for a single axis.

Parameters
jjoint number
refspecifies the new ref point
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1712 of file RemoteControlBoard.cpp.

◆ quitCalibrate()

bool RemoteControlBoard::quitCalibrate ( )
overridevirtual

quitCalibrate: interrupt the calibration procedure

Returns
true if successful

Implements yarp::dev::IRemoteCalibrator.

Definition at line 2734 of file RemoteControlBoard.cpp.

◆ quitPark()

bool RemoteControlBoard::quitPark ( )
overridevirtual

quitPark: interrupt the park procedure

Returns
true if successful

Implements yarp::dev::IRemoteCalibrator.

Definition at line 2744 of file RemoteControlBoard.cpp.

◆ relativeMove() [1/3]

bool RemoteControlBoard::relativeMove ( const double deltas)
overridevirtual

Set relative position, all joints.

Parameters
deltaspointer to the relative commands
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1752 of file RemoteControlBoard.cpp.

◆ relativeMove() [2/3]

bool RemoteControlBoard::relativeMove ( const int  n_joint,
const int joints,
const double deltas 
)
overridevirtual

Set relative position for a subset of joints.

Parameters
jointspointer to the array of joint numbers
deltaspointer to the array of relative commands
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1747 of file RemoteControlBoard.cpp.

◆ relativeMove() [3/3]

bool RemoteControlBoard::relativeMove ( int  j,
double  delta 
)
overridevirtual

Set relative position.

The command is relative to the current position of the axis.

Parameters
jjoint axis number
deltarelative command
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1742 of file RemoteControlBoard.cpp.

◆ resetEncoder()

bool RemoteControlBoard::resetEncoder ( int  j)
overridevirtual

Reset encoder, single joint.

Set the encoder value to zero

Parameters
jencoder number
Returns
true/false

Implements yarp::dev::IEncoders.

Definition at line 1381 of file RemoteControlBoard.cpp.

◆ resetEncoders()

bool RemoteControlBoard::resetEncoders ( )
overridevirtual

Reset encoders.

Set the encoders value to zero

Returns
true/false

Implements yarp::dev::IEncoders.

Definition at line 1386 of file RemoteControlBoard.cpp.

◆ resetMotorEncoder()

bool RemoteControlBoard::resetMotorEncoder ( int  m)
overridevirtual

Reset motor encoder, single motor.

Set the encoder value to zero.

Parameters
mmotor number
Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1577 of file RemoteControlBoard.cpp.

◆ resetMotorEncoders()

bool RemoteControlBoard::resetMotorEncoders ( )
overridevirtual

Reset motor encoders.

Set the motor encoders value to zero.

Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1582 of file RemoteControlBoard.cpp.

◆ resetPid()

bool RemoteControlBoard::resetPid ( const PidControlTypeEnum pidtype,
int  j 
)
overridevirtual

Reset the controller of a given joint, usually sets the current status of the joint as the reference value for the PID, and resets the integrator.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
Returns
true on success, false on failure.

Implements yarp::dev::IPidControl.

Definition at line 1300 of file RemoteControlBoard.cpp.

◆ send1V()

bool RemoteControlBoard::send1V ( int  v)
protected

Definition at line 387 of file RemoteControlBoard.cpp.

◆ send1V1I()

bool RemoteControlBoard::send1V1I ( int  v,
int  axis 
)
protected

Definition at line 423 of file RemoteControlBoard.cpp.

◆ send2V()

bool RemoteControlBoard::send2V ( int  v1,
int  v2 
)
protected

Definition at line 398 of file RemoteControlBoard.cpp.

◆ send2V1I()

bool RemoteControlBoard::send2V1I ( int  v1,
int  v2,
int  axis 
)
protected

Definition at line 410 of file RemoteControlBoard.cpp.

◆ send3V1I()

bool RemoteControlBoard::send3V1I ( int  v1,
int  v2,
int  v3,
int  j 
)
protected

Definition at line 435 of file RemoteControlBoard.cpp.

◆ set1V()

bool RemoteControlBoard::set1V ( int  code)
protected

Send a SET command without parameters and wait for a reply.

Parameters
codeis the command Vocab identifier.
Returns
true/false on success/failure.

Definition at line 449 of file RemoteControlBoard.cpp.

◆ set1V1I()

bool RemoteControlBoard::set1V1I ( int  code,
int  v 
)
protected

Send a SET command with an additional integer valued variable and then wait for a reply.

Parameters
codeis the command to send.
vis an integer valued parameter.
Returns
true/false on success/failure.

Definition at line 471 of file RemoteControlBoard.cpp.

◆ set1V1I1D()

bool RemoteControlBoard::set1V1I1D ( int  code,
int  j,
double  val 
)
protected

Helper method to set a double value to a single axis.

Parameters
codeis the name of the command to be transmitted
jis the axis
valis the double value
Returns
true/false on success/failure

Definition at line 523 of file RemoteControlBoard.cpp.

◆ set1V1I1IA1DA()

bool RemoteControlBoard::set1V1I1IA1DA ( int  v,
const int  len,
const int val1,
const double val2 
)
protected

Definition at line 601 of file RemoteControlBoard.cpp.

◆ set1V1I2D()

bool RemoteControlBoard::set1V1I2D ( int  code,
int  j,
double  val1,
double  val2 
)
protected

Definition at line 534 of file RemoteControlBoard.cpp.

◆ set1V2D()

bool RemoteControlBoard::set1V2D ( int  code,
double  v 
)
protected

Send a SET command and an additional double valued variable and then wait for a reply.

Parameters
codeis the command to send.
vis a double valued parameter.
Returns
true/false on success/failure.

Definition at line 459 of file RemoteControlBoard.cpp.

◆ set1VDA()

bool RemoteControlBoard::set1VDA ( int  v,
const double val 
)
protected

Helper method used to set an array of double to all axes.

Parameters
vis the command to set
valis the double array (of length nj)
Returns
true/false on success/failure

Definition at line 547 of file RemoteControlBoard.cpp.

◆ set2V1DA()

bool RemoteControlBoard::set2V1DA ( int  v1,
int  v2,
const double val 
)
protected

Definition at line 563 of file RemoteControlBoard.cpp.

◆ set2V1I()

bool RemoteControlBoard::set2V1I ( int  v1,
int  v2,
int  axis 
)
protected

Definition at line 716 of file RemoteControlBoard.cpp.

◆ set2V1I1D()

bool RemoteControlBoard::set2V1I1D ( int  v1,
int  v2,
int  axis,
double  val 
)
protected

Definition at line 623 of file RemoteControlBoard.cpp.

◆ set2V2DA()

bool RemoteControlBoard::set2V2DA ( int  v1,
int  v2,
const double val1,
const double val2 
)
protected

Definition at line 580 of file RemoteControlBoard.cpp.

◆ setCalibrationParameters()

bool RemoteControlBoard::setCalibrationParameters ( int  axis,
const CalibrationParameters params 
)
overridevirtual

Start calibration, this method is very often platform specific.

Returns
true/false on success failure

Reimplemented from yarp::dev::IControlCalibration.

Definition at line 2077 of file RemoteControlBoard.cpp.

◆ setControlMode()

bool RemoteControlBoard::setControlMode ( const int  j,
const int  mode 
)
overridevirtual

Set the current control mode.

Parameters
jjoint number
modea vocab of the desired control mode for joint j.
Returns
true if the new controlMode was successfully set, false if the message was not received or the joint was unable to switch to the desired controlMode (e.g. the joint is on a fault condition or the desired mode is not implemented).

Implements yarp::dev::IControlMode.

Definition at line 2399 of file RemoteControlBoard.cpp.

◆ setControlModes() [1/2]

bool RemoteControlBoard::setControlModes ( const int  n_joint,
const int joints,
int modes 
)
overridevirtual

Set the current control mode for a subset of axes.

Parameters
n_jointshow many joints this command is referring to
jointslist of joint numbers, the size of this array is n_joints
modesarray containing the new controlmodes, 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 modes VOCAB_CM_POSITION VOCAB_CM_VELOCITY VOCAB_CM_POSITION
Returns
true if the new controlMode was successfully set, false if the message was not received or the joint was unable to switch to the desired controlMode (e.g. the joint is on a fault condition or the desired mode is not implemented).

Implements yarp::dev::IControlMode.

Definition at line 2415 of file RemoteControlBoard.cpp.

◆ setControlModes() [2/2]

bool RemoteControlBoard::setControlModes ( int modes)
overridevirtual

Set the current control mode (multiple joints).

Parameters
modesa vector containing vocabs for the desired control modes of the joints.
Returns
true if the new controlMode was successfully set, false if the message was not received or the joint was unable to switch to the desired controlMode (e.g. the joint is on a fault condition or the desired mode is not implemented).

Implements yarp::dev::IControlMode.

Definition at line 2440 of file RemoteControlBoard.cpp.

◆ setEncoder()

bool RemoteControlBoard::setEncoder ( int  j,
double  val 
)
overridevirtual

Set the value of the encoder for a given joint.

Parameters
jencoder number
valnew value
Returns
true/false

Implements yarp::dev::IEncoders.

Definition at line 1391 of file RemoteControlBoard.cpp.

◆ setEncoders()

bool RemoteControlBoard::setEncoders ( const double vals)
overridevirtual

Set the value of all encoders.

Parameters
valspointer to the new values
Returns
true/false

Implements yarp::dev::IEncoders.

Definition at line 1396 of file RemoteControlBoard.cpp.

◆ setGearboxRatio()

bool RemoteControlBoard::setGearboxRatio ( int  m,
const double  val 
)
overridevirtual

Set the gearbox ratio for a specific motor.

Parameters
mmotor number
gearboxratio to be set
Returns
true/false

Reimplemented from yarp::dev::IMotor.

Definition at line 1568 of file RemoteControlBoard.cpp.

◆ setImpedance()

bool RemoteControlBoard::setImpedance ( int  j,
double  stiffness,
double  damping 
)
overridevirtual

Set current impedance gains (stiffness,damping) for a specific joint.

Returns
success/failure

Implements yarp::dev::IImpedanceControl.

Definition at line 2304 of file RemoteControlBoard.cpp.

◆ setImpedanceOffset()

bool RemoteControlBoard::setImpedanceOffset ( int  j,
double  offset 
)
overridevirtual

Set current force Offset for a specific joint.

Returns
success/failure

Implements yarp::dev::IImpedanceControl.

Definition at line 2320 of file RemoteControlBoard.cpp.

◆ setInteractionMode()

bool RemoteControlBoard::setInteractionMode ( int  axis,
yarp::dev::InteractionModeEnum  mode 
)
overridevirtual

Set the interaction mode of the robot, values can be stiff or compliant.

Please note that some robot may not implement certain types of interaction, so always check the return value.

Parameters
axisjoint number
modethe desired interaction mode
Returns
true or false on success or failure.

Implements yarp::dev::IInteractionMode.

Definition at line 2606 of file RemoteControlBoard.cpp.

◆ setInteractionModes() [1/2]

bool RemoteControlBoard::setInteractionModes ( int  n_joints,
int joints,
yarp::dev::InteractionModeEnum modes 
)
overridevirtual

Set the interaction mode of the robot for a set of joints, values can be stiff or compliant.

Please note that some robot may not implement certain types of interaction, so always check the return value.

Parameters
n_jointshow many joints this command is referring to
jointslist of joints controlled. The size of this array is n_joints
modesarray containing the desired interaction mode, one value for each joint, the size is n_joints. for example: n_joint 3 joints 0 2 4 refs VOCAB_IM_STIFF VOCAB_IM_STIFF VOCAB_IM_COMPLIANT
Returns
true or false on success or failure. If one or more joint fails, the return value will be false.

Implements yarp::dev::IInteractionMode.

Definition at line 2623 of file RemoteControlBoard.cpp.

◆ setInteractionModes() [2/2]

bool RemoteControlBoard::setInteractionModes ( yarp::dev::InteractionModeEnum modes)
overridevirtual

Set the interaction mode of the robot for a all the joints, values can be stiff or compliant.

Some robot may not implement some types of interaction, so always check the return value

Parameters
modearray with the desired interaction mode for all joints, length is the total number of joints for the part
Returns
true or false on success or failure. If one or more joint fails, the return value will be false.

Implements yarp::dev::IInteractionMode.

Definition at line 2649 of file RemoteControlBoard.cpp.

◆ setLimits()

bool RemoteControlBoard::setLimits ( int  axis,
double  min,
double  max 
)
overridevirtual

Set the software limits for a particular axis, the behavior of the control card when these limits are exceeded, depends on the implementation.

Parameters
axisjoint number (why am I telling you this)
minthe value of the lower limit
maxthe value of the upper limit
Returns
true or false on success or failure

Implements yarp::dev::IControlLimits.

Definition at line 2001 of file RemoteControlBoard.cpp.

◆ setMaxCurrent()

bool RemoteControlBoard::setMaxCurrent ( int  j,
double  v 
)
overridevirtual

Implements yarp::dev::IAmplifierControl.

Definition at line 1943 of file RemoteControlBoard.cpp.

◆ setMotorEncoder()

bool RemoteControlBoard::setMotorEncoder ( int  m,
const double  val 
)
overridevirtual

Set the value of the motor encoder for a given motor.

Parameters
mmotor number
valnew value
Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1587 of file RemoteControlBoard.cpp.

◆ setMotorEncoderCountsPerRevolution()

bool RemoteControlBoard::setMotorEncoderCountsPerRevolution ( int  m,
const double  cpr 
)
overridevirtual

Sets number of counts per revolution for motor encoder m.

Parameters
mmotor number
cprnew value
Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1592 of file RemoteControlBoard.cpp.

◆ setMotorEncoders()

bool RemoteControlBoard::setMotorEncoders ( const double vals)
overridevirtual

Set the value of all motor encoders.

Parameters
valspointer to the new values
Returns
true/false

Implements yarp::dev::IMotorEncoders.

Definition at line 1602 of file RemoteControlBoard.cpp.

◆ setMotorTorqueParams()

bool RemoteControlBoard::setMotorTorqueParams ( int  j,
const MotorTorqueParameters  params 
)
overridevirtual

Set a subset of motor parameters (bemf, ktau etc) useful for torque control.

Parameters
jjoint number
paramsa struct containing the motor parameters to be set
Returns
true/false on success/failure

Reimplemented from yarp::dev::ITorqueControl.

Definition at line 2177 of file RemoteControlBoard.cpp.

◆ setNominalCurrent()

bool RemoteControlBoard::setNominalCurrent ( int  m,
const double  val 
)
overridevirtual

Reimplemented from yarp::dev::IAmplifierControl.

Definition at line 1958 of file RemoteControlBoard.cpp.

◆ setPeakCurrent()

bool RemoteControlBoard::setPeakCurrent ( int  m,
const double  val 
)
overridevirtual

Reimplemented from yarp::dev::IAmplifierControl.

Definition at line 1968 of file RemoteControlBoard.cpp.

◆ setPid()

bool RemoteControlBoard::setPid ( const PidControlTypeEnum pidtype,
int  j,
const Pid pid 
)
overridevirtual

Set new pid value for a joint axis.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
pidnew pid value
Returns
true/false on success/failure

Implements yarp::dev::IPidControl.

Definition at line 1127 of file RemoteControlBoard.cpp.

◆ setPidErrorLimit()

bool RemoteControlBoard::setPidErrorLimit ( const PidControlTypeEnum pidtype,
int  j,
double  limit 
)
overridevirtual

Set the error limit for the controller on a specifi joint.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
limitlimit value
Returns
true/false on success/failure

Implements yarp::dev::IPidControl.

Definition at line 1189 of file RemoteControlBoard.cpp.

◆ setPidErrorLimits()

bool RemoteControlBoard::setPidErrorLimits ( const PidControlTypeEnum pidtype,
const double limits 
)
overridevirtual

Get the error limit for the controller on all joints.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
limitspointer to the vector with the new limits
Returns
true/false on success/failure

Implements yarp::dev::IPidControl.

Definition at line 1194 of file RemoteControlBoard.cpp.

◆ setPidOffset()

bool RemoteControlBoard::setPidOffset ( const PidControlTypeEnum pidtype,
int  j,
double  v 
)
overridevirtual

Set offset value for a given controller.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
vthe offset to be added to the output of the pid controller
Returns
true on success, false on failure.

Implements yarp::dev::IPidControl.

Definition at line 1372 of file RemoteControlBoard.cpp.

◆ setPidReference()

bool RemoteControlBoard::setPidReference ( const PidControlTypeEnum pidtype,
int  j,
double  ref 
)
overridevirtual

Set the controller reference for a given axis.

Warning this method can result in very large torques and should be used carefully. If you do not understand this warning you should avoid using this method. Have a look at other interfaces (e.g. position control).

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
jjoint number
refnew reference point
Returns
true/false upon success/failure

Implements yarp::dev::IPidControl.

Definition at line 1179 of file RemoteControlBoard.cpp.

◆ setPidReferences()

bool RemoteControlBoard::setPidReferences ( const PidControlTypeEnum pidtype,
const double refs 
)
overridevirtual

Set the controller reference, multiple axes.

Warning this method can result in very large torques and should be used carefully. If you do not understand this warning you should avoid using this method. Have a look at other interfaces (e.g. position control).

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
refspointer to the vector that contains the new reference points.
Returns
true/false upon success/failure

Implements yarp::dev::IPidControl.

Definition at line 1184 of file RemoteControlBoard.cpp.

◆ setPids()

bool RemoteControlBoard::setPids ( const PidControlTypeEnum pidtype,
const Pid pids 
)
overridevirtual

Set new pid value on multiple axes.

Parameters
pidtypethe id of the pid that will be affected by the command (e.g. position, velocity etc)
pidspointer to a vector of pids
Returns
true/false upon success/failure

Implements yarp::dev::IPidControl.

Definition at line 1150 of file RemoteControlBoard.cpp.

◆ setPosition()

bool RemoteControlBoard::setPosition ( int  j,
double  ref 
)
overridevirtual

Set new position for a single axis.

Parameters
jjoint number
refspecifies the new ref point
Returns
true/false on success/failure

Implements yarp::dev::IPositionDirect.

Definition at line 2463 of file RemoteControlBoard.cpp.

◆ setPositions() [1/2]

bool RemoteControlBoard::setPositions ( const double refs)
overridevirtual

Set new position for a set of axis.

Parameters
refsspecifies the new reference points
Returns
true/false on success/failure

Implements yarp::dev::IPositionDirect.

Definition at line 2497 of file RemoteControlBoard.cpp.

◆ setPositions() [2/2]

bool RemoteControlBoard::setPositions ( const int  n_joint,
const int joints,
const double refs 
)
overridevirtual

Set new reference point for all axes.

Parameters
n_jointhow many joints this command is referring to
jointslist of joints controlled. The size of this array is n_joints
refsarray, 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
Returns
true/false on success/failure

Implements yarp::dev::IPositionDirect.

Definition at line 2478 of file RemoteControlBoard.cpp.

◆ setPWMLimit()

bool RemoteControlBoard::setPWMLimit ( int  m,
const double  val 
)
overridevirtual

Reimplemented from yarp::dev::IAmplifierControl.

Definition at line 1987 of file RemoteControlBoard.cpp.

◆ setRefAcceleration()

bool RemoteControlBoard::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::IPositionControl.

Definition at line 1787 of file RemoteControlBoard.cpp.

◆ setRefAccelerations() [1/2]

bool RemoteControlBoard::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::IPositionControl.

Definition at line 1797 of file RemoteControlBoard.cpp.

◆ setRefAccelerations() [2/2]

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

Set reference acceleration on all joints.

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

Parameters
jointspointer to the array of joint numbers
accspointer to the array with acceleration values
Returns
true/false upon success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1792 of file RemoteControlBoard.cpp.

◆ setRefCurrent()

bool RemoteControlBoard::setRefCurrent ( int  m,
double  curr 
)
overridevirtual

Set the reference value of the current for a single motor.

Parameters
mmotor number
currthe current reference value for motor m. Value is expressed in amperes.
Returns
true/false on success/failure

Implements yarp::dev::ICurrentControl.

Definition at line 2783 of file RemoteControlBoard.cpp.

◆ setRefCurrents() [1/2]

bool RemoteControlBoard::setRefCurrents ( const double currs)
overridevirtual

Set the reference value of the currents for all motors.

Parameters
currsthe array containing the reference current values. Values are expressed in amperes.
Returns
true/false on success/failure

Implements yarp::dev::ICurrentControl.

Definition at line 2768 of file RemoteControlBoard.cpp.

◆ setRefCurrents() [2/2]

bool RemoteControlBoard::setRefCurrents ( const int  n_motor,
const int motors,
const double currs 
)
overridevirtual

Set the reference value of the current for a group of motors.

Parameters
n_motorsize of motors ans currs arrays
motorspointer to the array containing the list of motor numbers
currspointer to the array specifying the new current references
Returns
true/false on success/failure

Implements yarp::dev::ICurrentControl.

Definition at line 2799 of file RemoteControlBoard.cpp.

◆ setRefDutyCycle()

bool RemoteControlBoard::setRefDutyCycle ( int  m,
double  ref 
)
overridevirtual

Sets the reference dutycycle to a single motor.

Parameters
mmotor number
refthe dutycycle, expressed as percentage (-100% +100%)
Returns
true/false on success/failure

Implements yarp::dev::IPWMControl.

Definition at line 2850 of file RemoteControlBoard.cpp.

◆ setRefDutyCycles()

bool RemoteControlBoard::setRefDutyCycles ( const double refs)
overridevirtual

Sets the reference dutycycle for all the motors.

Parameters
refsthe dutycycle, expressed as percentage (-100% +100%)
Returns
true/false on success/failure

Implements yarp::dev::IPWMControl.

Definition at line 2870 of file RemoteControlBoard.cpp.

◆ setRefSpeed()

bool RemoteControlBoard::setRefSpeed ( int  j,
double  sp 
)
overridevirtual

Set reference speed for a joint, this is the speed used during the interpolation of the trajectory.

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

Implements yarp::dev::IPositionControl.

Definition at line 1772 of file RemoteControlBoard.cpp.

◆ setRefSpeeds() [1/2]

bool RemoteControlBoard::setRefSpeeds ( const double spds)
overridevirtual

Set reference speed on all joints.

These values are used during the interpolation of the trajectory.

Parameters
spdspointer to the array of speed values.
Returns
true/false upon success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1782 of file RemoteControlBoard.cpp.

◆ setRefSpeeds() [2/2]

bool RemoteControlBoard::setRefSpeeds ( const int  n_joint,
const int joints,
const double spds 
)
overridevirtual

Set reference speed on all joints.

These values are used during the interpolation of the trajectory.

Parameters
jointspointer to the array of joint numbers
spdspointer to the array with speed values.
Returns
true/false upon success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1777 of file RemoteControlBoard.cpp.

◆ setRefTorque()

bool RemoteControlBoard::setRefTorque ( int  j,
double  t 
)
overridevirtual

Set the reference value of the torque for a given joint.

Parameters
jjoint number
tnew value
Returns
true/false on success/failure

Implements yarp::dev::ITorqueControl.

Definition at line 2135 of file RemoteControlBoard.cpp.

◆ setRefTorques() [1/2]

bool RemoteControlBoard::setRefTorques ( const double t)
overridevirtual

Set the reference value of the torque for all joints.

Parameters
tpointer to the array of torque values
Returns
true/false on success/failure

Implements yarp::dev::ITorqueControl.

Definition at line 2116 of file RemoteControlBoard.cpp.

◆ setRefTorques() [2/2]

bool RemoteControlBoard::setRefTorques ( const int  n_joint,
const int joints,
const double t 
)
overridevirtual

Set new torque reference for a subset of joints.

Parameters
jointspointer to the array of joint numbers
refspointer to the array specifying the new torque reference
Returns
true/false on success/failure

Reimplemented from yarp::dev::ITorqueControl.

Definition at line 2155 of file RemoteControlBoard.cpp.

◆ setRemoteVariable()

bool RemoteControlBoard::setRemoteVariable ( std::string  key,
const yarp::os::Bottle val 
)
overridevirtual

Implements yarp::dev::IRemoteVariables.

Definition at line 1502 of file RemoteControlBoard.cpp.

◆ setTemperatureLimit()

bool RemoteControlBoard::setTemperatureLimit ( int  m,
const double  temp 
)
overridevirtual

Set the temperature limit for a specific motor.

The specific behavior of the motor when the temperature limit is exceeded depends on the implementation (power off recommended)

Parameters
mmotor number
tempthe temperature limit to be set
Returns
true/false

Implements yarp::dev::IMotor.

Definition at line 1558 of file RemoteControlBoard.cpp.

◆ setValWithPidType() [1/2]

bool RemoteControlBoard::setValWithPidType ( int  voc,
PidControlTypeEnum  type,
const double val_arr 
)
protected

Definition at line 651 of file RemoteControlBoard.cpp.

◆ setValWithPidType() [2/2]

bool RemoteControlBoard::setValWithPidType ( int  voc,
PidControlTypeEnum  type,
int  axis,
double  val 
)
protected

Definition at line 635 of file RemoteControlBoard.cpp.

◆ setVelLimits()

bool RemoteControlBoard::setVelLimits ( int  axis,
double  min,
double  max 
)
overridevirtual

Set the software speed limits for a particular axis, the behavior of the control card when these limits are exceeded, depends on the implementation.

Parameters
axisjoint number
minthe value of the lower limit
maxthe value of the upper limit
Returns
true or false on success or failure

Implements yarp::dev::IControlLimits.

Definition at line 2011 of file RemoteControlBoard.cpp.

◆ stop() [1/3]

bool RemoteControlBoard::stop ( )
overridevirtual

Stop motion, multiple joints.

Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1856 of file RemoteControlBoard.cpp.

◆ stop() [2/3]

bool RemoteControlBoard::stop ( const int  n_joint,
const int joints 
)
overridevirtual

Stop motion for subset of joints.

Parameters
jointspointer to the array of joint numbers
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1837 of file RemoteControlBoard.cpp.

◆ stop() [3/3]

bool RemoteControlBoard::stop ( int  j)
overridevirtual

Stop motion, single joint.

Parameters
jjoint number
Returns
true/false on success/failure

Implements yarp::dev::IPositionControl.

Definition at line 1832 of file RemoteControlBoard.cpp.

◆ velocityMove() [1/3]

bool RemoteControlBoard::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 1905 of file RemoteControlBoard.cpp.

◆ velocityMove() [2/3]

bool RemoteControlBoard::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 2530 of file RemoteControlBoard.cpp.

◆ velocityMove() [3/3]

bool RemoteControlBoard::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 1889 of file RemoteControlBoard.cpp.

Member Data Documentation

◆ command_buffer

yarp::os::PortWriterBuffer<CommandMessage> RemoteControlBoard::command_buffer
protected

Definition at line 91 of file RemoteControlBoard.h.

◆ command_p

yarp::os::Port RemoteControlBoard::command_p
protected

Definition at line 87 of file RemoteControlBoard.h.

◆ diagnosticThread

DiagnosticThread* RemoteControlBoard::diagnosticThread {nullptr}
protected

Definition at line 88 of file RemoteControlBoard.h.

◆ extendedIntputStatePort

StateExtendedInputPort RemoteControlBoard::extendedIntputStatePort
protected

Definition at line 98 of file RemoteControlBoard.h.

◆ extendedPortMutex

std::mutex RemoteControlBoard::extendedPortMutex
protected

Definition at line 99 of file RemoteControlBoard.h.

◆ last_singleJoint

yarp::dev::impl::jointData RemoteControlBoard::last_singleJoint
protected

Definition at line 100 of file RemoteControlBoard.h.

◆ last_wholePart

yarp::dev::impl::jointData RemoteControlBoard::last_wholePart
protected

Definition at line 102 of file RemoteControlBoard.h.

◆ lastStamp

Stamp RemoteControlBoard::lastStamp
mutableprotected

Definition at line 104 of file RemoteControlBoard.h.

◆ nj

size_t RemoteControlBoard::nj {0}
protected

Definition at line 105 of file RemoteControlBoard.h.

◆ njIsKnown

bool RemoteControlBoard::njIsKnown {false}
protected

Definition at line 106 of file RemoteControlBoard.h.

◆ protocolVersion

ProtocolVersion RemoteControlBoard::protocolVersion
protected

Definition at line 108 of file RemoteControlBoard.h.

◆ rpc_p

yarp::os::Port RemoteControlBoard::rpc_p
protected

Definition at line 86 of file RemoteControlBoard.h.

◆ state_buffer

yarp::os::PortReaderBuffer<yarp::sig::Vector> RemoteControlBoard::state_buffer
protected

Definition at line 90 of file RemoteControlBoard.h.

◆ writeStrict_moreJoints

bool RemoteControlBoard::writeStrict_moreJoints {false}
protected

Definition at line 93 of file RemoteControlBoard.h.

◆ writeStrict_singleJoint

bool RemoteControlBoard::writeStrict_singleJoint {true}
protected

Definition at line 92 of file RemoteControlBoard.h.


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