#include <ControlBoardWrapper/ControlBoardWrapperPidControl.h>
Public Member Functions | |
bool | setPid (const yarp::dev::PidControlTypeEnum &pidtype, int j, const yarp::dev::Pid &p) override |
Set new pid value for a joint axis. More... | |
bool | setPids (const yarp::dev::PidControlTypeEnum &pidtype, const yarp::dev::Pid *ps) override |
Set new pid value on multiple axes. More... | |
bool | setPidReference (const yarp::dev::PidControlTypeEnum &pidtype, int j, double ref) override |
Set the controller reference for a given axis. More... | |
bool | setPidReferences (const yarp::dev::PidControlTypeEnum &pidtype, const double *refs) override |
Set the controller reference, multiple axes. More... | |
bool | setPidErrorLimit (const yarp::dev::PidControlTypeEnum &pidtype, int j, double limit) override |
Set the error limit for the controller on a specifi joint. More... | |
bool | setPidErrorLimits (const yarp::dev::PidControlTypeEnum &pidtype, const double *limits) override |
Get the error limit for the controller on all joints. More... | |
bool | getPidError (const yarp::dev::PidControlTypeEnum &pidtype, int j, double *err) override |
Get the current error for a joint. More... | |
bool | getPidErrors (const yarp::dev::PidControlTypeEnum &pidtype, double *errs) override |
Get the error of all joints. More... | |
bool | getPidOutput (const yarp::dev::PidControlTypeEnum &pidtype, int j, double *out) override |
Get the output of the controller (e.g. More... | |
bool | getPidOutputs (const yarp::dev::PidControlTypeEnum &pidtype, double *outs) override |
Get the output of the controllers (e.g. More... | |
bool | setPidOffset (const yarp::dev::PidControlTypeEnum &pidtype, int j, double v) override |
Set offset value for a given controller. More... | |
bool | getPid (const yarp::dev::PidControlTypeEnum &pidtype, int j, yarp::dev::Pid *p) override |
Get current pid value for a specific joint. More... | |
bool | getPids (const yarp::dev::PidControlTypeEnum &pidtype, yarp::dev::Pid *pids) override |
Get current pid value for a specific joint. More... | |
bool | getPidReference (const yarp::dev::PidControlTypeEnum &pidtype, int j, double *ref) override |
Get the current reference of the pid controller for a specific joint. More... | |
bool | getPidReferences (const yarp::dev::PidControlTypeEnum &pidtype, double *refs) override |
Get the current reference of all pid controllers. More... | |
bool | getPidErrorLimit (const yarp::dev::PidControlTypeEnum &pidtype, int j, double *limit) override |
Get the error limit for the controller on a specific joint. More... | |
bool | getPidErrorLimits (const yarp::dev::PidControlTypeEnum &pidtype, double *limits) override |
Get the error limit for all controllers. More... | |
bool | resetPid (const yarp::dev::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. More... | |
bool | disablePid (const yarp::dev::PidControlTypeEnum &pidtype, int j) override |
Disable the pid computation for a joint. More... | |
bool | enablePid (const yarp::dev::PidControlTypeEnum &pidtype, int j) override |
Enable the pid computation for a joint. More... | |
bool | isPidEnabled (const yarp::dev::PidControlTypeEnum &pidtype, int j, bool *enabled) override |
Get the current status (enabled/disabled) of the pid. More... | |
Public Member Functions inherited from ControlBoardWrapperCommon | |
bool | getAxes (int *ax) |
bool | setRefAcceleration (int j, double acc) |
bool | setRefAccelerations (const double *accs) |
bool | setRefAccelerations (const int n_joints, const int *joints, const double *accs) |
bool | getRefAcceleration (int j, double *acc) |
bool | getRefAccelerations (double *accs) |
bool | getRefAccelerations (const int n_joints, const int *joints, double *accs) |
bool | stop (int j) |
bool | stop () |
bool | stop (const int n_joint, const int *joints) |
bool | getNumberOfMotors (int *num) |
bool | getCurrent (int m, double *curr) |
bool | getCurrents (double *currs) |
void | printError (const std::string &func_name, const std::string &info, bool result) |
Public Member Functions inherited from yarp::dev::IPidControl | |
virtual | ~IPidControl () |
Destructor. More... | |
Additional Inherited Members | |
Public Attributes inherited from ControlBoardWrapperCommon | |
WrappedDevice | device |
size_t | controlledJoints {0} |
std::string | partName |
std::mutex | rpcDataMutex |
MultiJointData | rpcData |
std::mutex | timeMutex |
yarp::os::Stamp | time |
Definition at line 16 of file ControlBoardWrapperPidControl.h.
|
overridevirtual |
Disable the pid computation for a joint.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
Implements yarp::dev::IPidControl.
Definition at line 461 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Enable the pid computation for a joint.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
Implements yarp::dev::IPidControl.
Definition at line 484 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get current pid value for a specific joint.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
pid | pointer to storage for the return value. |
Implements yarp::dev::IPidControl.
Definition at line 288 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the current error for a joint.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
err | pointer to the storage for the return value |
Implements yarp::dev::IPidControl.
Definition at line 163 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the error limit for the controller on a specific joint.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
limit | pointer to storage |
Implements yarp::dev::IPidControl.
Definition at line 388 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the error limit for all controllers.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
limits | pointer to the array that will store the output |
Implements yarp::dev::IPidControl.
Definition at line 411 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the error of all joints.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
errs | pointer to the vector that will store the errors |
Implements yarp::dev::IPidControl.
Definition at line 187 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the output of the controller (e.g.
pwm value)
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
out | pointer to storage for return value |
Implements yarp::dev::IPidControl.
Definition at line 214 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the output of the controllers (e.g.
pwm value)
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
outs | pinter to the vector that will store the output values |
Implements yarp::dev::IPidControl.
Definition at line 238 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the current reference of the pid controller for a specific joint.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
ref | pointer to storage for return value |
Implements yarp::dev::IPidControl.
Definition at line 339 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the current reference of all pid controllers.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
refs | vector that will store the output. |
Implements yarp::dev::IPidControl.
Definition at line 361 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get current pid value for a specific joint.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
pids | vector that will store the values of the pids. |
Implements yarp::dev::IPidControl.
Definition at line 312 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the current status (enabled/disabled) of the pid.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
enabled | the current status of the pid controller. |
Implements yarp::dev::IPidControl.
Definition at line 507 of file ControlBoardWrapperPidControl.cpp.
|
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.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
Implements yarp::dev::IPidControl.
Definition at line 438 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Set new pid value for a joint axis.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
pid | new pid value |
Implements yarp::dev::IPidControl.
Definition at line 17 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Set the error limit for the controller on a specifi joint.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
limit | limit value |
Implements yarp::dev::IPidControl.
Definition at line 117 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Get the error limit for the controller on all joints.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
limits | pointer to the vector with the new limits |
Implements yarp::dev::IPidControl.
Definition at line 140 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Set offset value for a given controller.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
v | the offset to be added to the output of the pid controller |
Implements yarp::dev::IPidControl.
Definition at line 265 of file ControlBoardWrapperPidControl.cpp.
|
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).
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
j | joint number |
ref | new reference point |
Implements yarp::dev::IPidControl.
Definition at line 67 of file ControlBoardWrapperPidControl.cpp.
|
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).
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
refs | pointer to the vector that contains the new reference points. |
Implements yarp::dev::IPidControl.
Definition at line 94 of file ControlBoardWrapperPidControl.cpp.
|
overridevirtual |
Set new pid value on multiple axes.
pidtype | the id of the pid that will be affected by the command (e.g. position, velocity etc) |
pids | pointer to a vector of pids |
Implements yarp::dev::IPidControl.
Definition at line 44 of file ControlBoardWrapperPidControl.cpp.