Go to the documentation of this file.
26 #include <VirtualRobot/VirtualRobot.h>
28 #include <armarx/control/common/control_law/aron/TaskspaceMixedImpedanceVelocityControllerConfig.aron.generated.h>
31 #include <armarx/control/common/ft/aron/FTConfig.aron.generated.h>
39 using FTConfig = common::ft::arondto::FTConfig;
41 common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfig;
43 common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfigDict;
86 reset(
const unsigned int nDoF,
const size_t numDoFTorque,
const size_t numDoFVelocity);
95 std::atomic_bool enablePreactivateInit{
false};
99 VirtualRobot::DifferentialIKPtr ik;
101 const float lambda = 2.0f;
104 VirtualRobot::RobotNodePtr
tcp;
112 const std::map<std::string, std::string>& jointControlModeMap);
114 void initialize(
const VirtualRobot::RobotNodeSetPtr& rns,
115 const VirtualRobot::RobotNodeSetPtr& rtRns,
116 const std::vector<size_t>& torqueControlledIndex,
117 const std::vector<size_t>& velocityControlledIndex);
Eigen::Matrix4f desiredPose
std::vector< size_t > jointIDTorqueMode
Eigen::Vector6f poseErrorImp
Eigen::Vector6f forceImpedance
task space variables
std::vector< size_t > jointIDVelocityMode
common::ft::FTSensor ftsensor
MatrixXX< 4, 4, float > Matrix4f
Eigen::AngleAxisf oriDiffAngleAxis
void preactivateInit(const VirtualRobot::RobotNodeSetPtr &rns)
common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfigDict ConfigDict
Eigen::Vector6f currentTwist
VirtualRobot::RobotNodePtr tcp
Eigen::VectorXf nullspaceVelocity
Eigen::Matrix3f poseDiffMatImp
intermediate results
Eigen::Vector6f safeFTGuardOffset
Eigen::Matrix4f currentPose
bool isControlModeValid(const std::vector< std::string > &nameList, const std::map< std::string, std::string > &jointControlModeMap)
void rtPreActivate(const Eigen::Matrix4f ¤tPose)
common::control_law::arondto::TaskspaceMixedImpedanceVelocityControllerConfig Config
Eigen::VectorXf desiredJointVelocity
internal status of the controller, containing intermediate variables, mutable targets
This file is part of ArmarX.
void reset(const unsigned int nDoF, const size_t numDoFTorque, const size_t numDoFVelocity)
Eigen::VectorXf desiredJointTorques
targets
void run(Config &c, RtStatus &robotStatus)
void initialize(const VirtualRobot::RobotNodeSetPtr &rns, const VirtualRobot::RobotNodeSetPtr &rtRns, const std::vector< size_t > &torqueControlledIndex, const std::vector< size_t > &velocityControlledIndex)
VirtualRobot::RobotNodePtr rtTCP
common::ft::arondto::FTConfig FTConfig
Eigen::VectorXf nullspaceTorque
Eigen::MatrixXf jacobi
others
Eigen::VectorXf qvelFiltered
current status
MatrixXX< 3, 3, float > Matrix3f
Eigen::Vector6f cartesianVelTarget
Eigen::Vector6f currentForceTorque
force torque