5 #include <VirtualRobot/Robot.h>
6 #include <VirtualRobot/IK/DifferentialIK.h>
18 #include <armarx/control/deprecated_njoint_mp_controller/task_space/ControllerInterface.h>
45 using ConfigPtrT = NJointPeriodicTSDMPControllerConfigPtr;
62 void runDMP(
const Ice::DoubleSeq& goals,
double tau,
const Ice::Current&);
64 void setGoals(
const Ice::DoubleSeq& goals,
const Ice::Current&);
70 return dmpCtrl->canVal;
81 struct DebugBufferData
83 StringFloatDictionary latestTargetVelocities;
84 StringFloatDictionary currentPose;
96 struct RTToControllerData
101 Eigen::VectorXf currentTwist;
108 float waitTimeForCalibration;
115 std::vector<const SensorValue1DoFActuatorVelocity*> velocitySensors;
116 std::vector<const SensorValue1DoFActuatorPosition*> positionSensors;
117 std::vector<ControlTarget1DoFActuatorVelocity*> targets;
121 std::string nodeSetName;
129 VirtualRobot::DifferentialIKPtr ik;
130 VirtualRobot::RobotNodePtr tcp;
132 NJointPeriodicTSDMPControllerConfigPtr cfg;
140 Eigen::Vector3f filteredForce;
141 Eigen::Vector3f forceOffset;
143 Eigen::Vector3f oriToolDir;
148 TripleBuffer<UserToRTData> user2rtData;