Admittance controller for an upper body end-effector (right or left wrist) More...
#include <sot/talos_balance/admittance-controller-end-effector.hh>
Public Member Functions | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | AdmittanceControllerEndEffector (const std::string &name) |
DECLARE_SIGNAL_IN (dqSaturation, dynamicgraph::Vector) | |
Value of the saturation to apply on the velocity output. More... | |
DECLARE_SIGNAL_IN (force, dynamicgraph::Vector) | |
6d force given by the sensor in its local frame More... | |
DECLARE_SIGNAL_IN (Kd, dynamicgraph::Vector) | |
Derivative gain (6d) for the error on the force. More... | |
DECLARE_SIGNAL_IN (Kp, dynamicgraph::Vector) | |
Gain (6d) for the integration of the error on the force. More... | |
DECLARE_SIGNAL_IN (q, dynamicgraph::Vector) | |
Current joint configuration of the robot. More... | |
DECLARE_SIGNAL_IN (w_forceDes, dynamicgraph::Vector) | |
6d desired force of the end-effector in the world frame More... | |
DECLARE_SIGNAL_INNER (w_dq, dynamicgraph::Vector) | |
Internal intergration computed in the world frame. More... | |
DECLARE_SIGNAL_INNER (w_force, dynamicgraph::Vector) | |
6d force given by the sensor in the world frame More... | |
DECLARE_SIGNAL_OUT (dq, dynamicgraph::Vector) | |
Velocity reference for the end-effector in the local frame. More... | |
virtual void | display (std::ostream &os) const |
void | init (const double &dt, const std::string &sensorFrameName, const std::string &endeffectorName) |
Initialize the entity. More... | |
void | resetDq () |
Reset the velocity. More... | |
Protected Attributes | |
pinocchio::Data * | m_data |
Pinocchio robot data. More... | |
double | m_dt |
Time step of the control. More... | |
pinocchio::JointIndex | m_endEffectorId |
Id of the joint of the end-effector. More... | |
bool | m_initSucceeded |
True if the entity has been successfully initialized. More... | |
double | m_mass |
pinocchio::Model | m_model |
Pinocchio robot model. More... | |
int | m_n |
Dimension of the force signals and of the output. More... | |
RobotUtilShrPtr | m_robot_util |
Robot Util instance to get the sensor frame. More... | |
pinocchio::FrameIndex | m_sensorFrameId |
Id of the force sensor frame. More... | |
dynamicgraph::Vector | m_w_dq |
Internal state. More... | |
Admittance controller for an upper body end-effector (right or left wrist)
This entity computes a velocity reference for an end-effector based on the force error in the world frame : w_dq = integral(Kp(w_forceDes-w_force)) + Kd (w_dq)
Definition at line 65 of file admittance-controller-end-effector.hh.
AdmittanceControllerEndEffector | ( | const std::string & | name | ) |
Definition at line 55 of file admittance-controller-end-effector.cpp.
DECLARE_SIGNAL_IN | ( | dqSaturation | , |
dynamicgraph::Vector | |||
) |
Value of the saturation to apply on the velocity output.
DECLARE_SIGNAL_IN | ( | force | , |
dynamicgraph::Vector | |||
) |
6d force given by the sensor in its local frame
DECLARE_SIGNAL_IN | ( | Kd | , |
dynamicgraph::Vector | |||
) |
Derivative gain (6d) for the error on the force.
DECLARE_SIGNAL_IN | ( | Kp | , |
dynamicgraph::Vector | |||
) |
Gain (6d) for the integration of the error on the force.
DECLARE_SIGNAL_IN | ( | q | , |
dynamicgraph::Vector | |||
) |
Current joint configuration of the robot.
DECLARE_SIGNAL_IN | ( | w_forceDes | , |
dynamicgraph::Vector | |||
) |
6d desired force of the end-effector in the world frame
DECLARE_SIGNAL_INNER | ( | w_dq | , |
dynamicgraph::Vector | |||
) |
Internal intergration computed in the world frame.
DECLARE_SIGNAL_INNER | ( | w_force | , |
dynamicgraph::Vector | |||
) |
6d force given by the sensor in the world frame
DECLARE_SIGNAL_OUT | ( | dq | , |
dynamicgraph::Vector | |||
) |
Velocity reference for the end-effector in the local frame.
|
virtual |
Definition at line 237 of file admittance-controller-end-effector.cpp.
void init | ( | const double & | dt, |
const std::string & | sensorFrameName, | ||
const std::string & | endeffectorName | ||
) |
Initialize the entity.
[in] | dt | Time step of the control |
[in] | sensorFrameName | Name of the force sensor of the end-effector used in the pinocchio model |
[in] | endeffectorName | Name of the endEffectorJoint |
Definition at line 87 of file admittance-controller-end-effector.cpp.
void resetDq | ( | ) |
Reset the velocity.
Definition at line 137 of file admittance-controller-end-effector.cpp.
|
protected |
Pinocchio robot data.
Definition at line 134 of file admittance-controller-end-effector.hh.
|
protected |
Time step of the control.
Definition at line 125 of file admittance-controller-end-effector.hh.
|
protected |
Id of the joint of the end-effector.
Definition at line 138 of file admittance-controller-end-effector.hh.
|
protected |
True if the entity has been successfully initialized.
Definition at line 121 of file admittance-controller-end-effector.hh.
|
protected |
Definition at line 127 of file admittance-controller-end-effector.hh.
|
protected |
Pinocchio robot model.
Definition at line 132 of file admittance-controller-end-effector.hh.
|
protected |
Dimension of the force signals and of the output.
Definition at line 119 of file admittance-controller-end-effector.hh.
|
protected |
Robot Util instance to get the sensor frame.
Definition at line 130 of file admittance-controller-end-effector.hh.
|
protected |
Id of the force sensor frame.
Definition at line 136 of file admittance-controller-end-effector.hh.
|
protected |
Internal state.
Definition at line 123 of file admittance-controller-end-effector.hh.