|
|
#include <armarx/control/common/control_law/TaskspaceMixedImpedanceVelocityController.h>
Classes | |
| struct | RtStatus |
| internal status of the controller, containing intermediate variables, mutable targets More... | |
Public Types | |
| using | Config = common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfig |
| using | ConfigDict = common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfigDict |
| using | FTConfig = common::ft::arondto::FTConfig |
Public Member Functions | |
| void | firstRun () |
| void | initialize (const VirtualRobot::RobotNodeSetPtr &rns, const VirtualRobot::RobotNodeSetPtr &rtRns, const std::vector< size_t > &torqueControlledIndex, const std::vector< size_t > &velocityControlledIndex) |
| bool | isControlModeValid (const std::vector< std::string > &nameList, const std::map< std::string, std::string > &jointControlModeMap) |
| void | preactivateInit (const VirtualRobot::RobotNodeSetPtr &rns) |
| void | run (Config &c, RtStatus &robotStatus) |
Public Attributes | |
| common::ft::FTSensor | ftsensor |
| std::vector< size_t > | jointIDTorqueMode |
| std::vector< size_t > | jointIDVelocityMode |
| size_t | nDoFTorque |
| size_t | nDoFVelocity |
| unsigned int | numOfJoints |
| VirtualRobot::RobotNodePtr | rtTCP |
| VirtualRobot::RobotNodePtr | tcp |
Definition at line 36 of file TaskspaceMixedImpedanceVelocityController.h.
| using Config = common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfig |
Definition at line 41 of file TaskspaceMixedImpedanceVelocityController.h.
| using ConfigDict = common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfigDict |
Definition at line 43 of file TaskspaceMixedImpedanceVelocityController.h.
| using FTConfig = common::ft::arondto::FTConfig |
Definition at line 39 of file TaskspaceMixedImpedanceVelocityController.h.
| void firstRun | ( | ) |
Definition at line 54 of file TaskspaceMixedImpedanceVelocityController.cpp.
Here is the call graph for this function:| void initialize | ( | const VirtualRobot::RobotNodeSetPtr & | rns, |
| const VirtualRobot::RobotNodeSetPtr & | rtRns, | ||
| const std::vector< size_t > & | torqueControlledIndex, | ||
| const std::vector< size_t > & | velocityControlledIndex | ||
| ) |
Definition at line 23 of file TaskspaceMixedImpedanceVelocityController.cpp.
Here is the call graph for this function:| bool isControlModeValid | ( | const std::vector< std::string > & | nameList, |
| const std::map< std::string, std::string > & | jointControlModeMap | ||
| ) |
Definition at line 60 of file TaskspaceMixedImpedanceVelocityController.cpp.
Here is the call graph for this function:| void preactivateInit | ( | const VirtualRobot::RobotNodeSetPtr & | rns | ) |
Definition at line 48 of file TaskspaceMixedImpedanceVelocityController.cpp.
run in rt thread
-------------------------— safety guard by FT and target pose ---------------------—
this should not be moved to non rt, just in case non rt thread dies, rt still functions as safely
---------------------------— compute jacobi ---------------------------------------—
---------------------------— update velocity/twist --------------------------------—
----------------------------------— Impedance control -----------------------------— calculate pose error between target pose and current pose !!! This is very important: you have to keep position and orientation both with UI unit (meter, radian) to calculate impedance force.
in mm
----------------------------------— Velocity control ------------------------------------------------— calculate pose error between target pose and current pose !!! This is very important: you have to keep position and orientation both with UI unit (meter, radian) to calculate desired Cartesian velocity.
--------------------------— Nullspace PD Control -----------------------------------------------—
--------------------------— Map TS target force/velocity to JS -----------------------------------------------—
--------------------------— write torque target ----------------------------------—
Definition at line 112 of file TaskspaceMixedImpedanceVelocityController.cpp.
Here is the call graph for this function:| common::ft::FTSensor ftsensor |
Definition at line 108 of file TaskspaceMixedImpedanceVelocityController.h.
| std::vector<size_t> jointIDTorqueMode |
Definition at line 110 of file TaskspaceMixedImpedanceVelocityController.h.
| std::vector<size_t> jointIDVelocityMode |
Definition at line 111 of file TaskspaceMixedImpedanceVelocityController.h.
| size_t nDoFTorque |
Definition at line 93 of file TaskspaceMixedImpedanceVelocityController.h.
| size_t nDoFVelocity |
Definition at line 94 of file TaskspaceMixedImpedanceVelocityController.h.
| unsigned int numOfJoints |
Definition at line 92 of file TaskspaceMixedImpedanceVelocityController.h.
| VirtualRobot::RobotNodePtr rtTCP |
Definition at line 107 of file TaskspaceMixedImpedanceVelocityController.h.
| VirtualRobot::RobotNodePtr tcp |
Definition at line 106 of file TaskspaceMixedImpedanceVelocityController.h.