Go to the documentation of this file.
24 #include <VirtualRobot/IK/DifferentialIK.h>
25 #include <VirtualRobot/Robot.h>
32 #include <armarx/control/common/control_law/aron/TaskspaceAdmittanceControllerConfig.aron.generated.h>
35 #include <armarx/control/common/ft/aron/FTConfig.aron.generated.h>
43 using FTConfig = common::ft::arondto::FTConfig;
44 using Config = common::control_law::arondto::TaskspaceAdmittanceControllerConfig;
45 using ConfigDict = common::control_law::arondto::TaskspaceAdmittanceControllerConfigDict;
90 void reset(
const unsigned int nDoF);
96 std::atomic_bool enablePreactivateInit{
false};
100 VirtualRobot::DifferentialIKPtr ik;
102 const float lambda = 2.0f;
105 VirtualRobot::RobotNodePtr
tcp;
110 void initialize(
const VirtualRobot::RobotNodeSetPtr& rns,
111 const VirtualRobot::RobotNodeSetPtr& rtRns);
common::control_law::arondto::TaskspaceAdmittanceControllerConfig Config
internal status of the controller, containing intermediate variables, mutable targets
VirtualRobot::RobotNodePtr rtTCP
common::ft::arondto::FTConfig FTConfig
void rtPreActivate(const Eigen::Matrix4f ¤tPose)
Eigen::Vector6f virtualVel
Eigen::VectorXf nullspaceTorque
void reset(const unsigned int nDoF)
Eigen::Vector6f poseErrorAdm
common::ft::FTSensor ftsensor
Eigen::Matrix4f currentPose
Eigen::Vector6f forceImpedance
task space variables
Eigen::Vector6f currentTwist
Eigen::AngleAxisf oriDiffAngleAxis
Eigen::VectorXf qpos
current status
void preactivateInit(const VirtualRobot::RobotNodeSetPtr &rns)
Eigen::Matrix4f virtualPose
variables that need to be kept locally by the rt thread
Eigen::Vector6f poseErrorImp
void run(Config &c, RtStatus &robotStatus)
This file is part of ArmarX.
Eigen::VectorXf qvelFiltered
common::control_law::arondto::TaskspaceAdmittanceControllerConfigDict ConfigDict
VirtualRobot::RobotNodePtr tcp
Eigen::Vector6f currentForceTorque
force torque
MatrixXX< 3, 3, float > Matrix3f
MatrixXX< 4, 4, float > Matrix4f
Eigen::Vector6f virtualAcc
Eigen::Matrix3f poseDiffMatAdm
Eigen::Matrix3f poseDiffMatImp
intermediate results
Eigen::VectorXf desiredJointTorques
targets
void initialize(const VirtualRobot::RobotNodeSetPtr &rns, const VirtualRobot::RobotNodeSetPtr &rtRns)
Eigen::Matrix4f desiredPose
Eigen::MatrixXf jacobi
others