5 #include <VirtualRobot/VirtualRobot.h>
16 #include <armarx/control/deprecated_njoint_mp_controller/task_space/ControllerInterface.h>
20 class SensorValue1DoFActuatorTorque;
21 class SensorValue1DoFActuatorVelocity;
22 class SensorValue1DoFActuatorPosition;
23 class ControlTarget1DoFActuatorTorque;
24 class ControlTarget1DoFActuatorVelocity;
25 class SensorValueForceTorque;
51 using ConfigPtrT = NJointPeriodicTSDMPControllerConfigPtr;
53 const NJointControllerConfigPtr& config,
73 void runDMP(
const Ice::DoubleSeq& goals,
double tau,
const Ice::Current&);
75 void setGoals(
const Ice::DoubleSeq& goals,
const Ice::Current&);
81 return dmpCtrl->canVal;
94 struct DebugBufferData
96 StringFloatDictionary latestTargetVelocities;
97 StringFloatDictionary currentPose;
109 struct RTToControllerData
114 Eigen::VectorXf currentTwist;
122 float waitTimeForCalibration;
130 std::vector<const SensorValue1DoFActuatorVelocity*> velocitySensors;
131 std::vector<const SensorValue1DoFActuatorPosition*> positionSensors;
132 std::vector<ControlTarget1DoFActuatorVelocity*> targets;
136 std::string nodeSetName;
144 VirtualRobot::DifferentialIKPtr ik;
145 VirtualRobot::RobotNodePtr tcp;
147 NJointPeriodicTSDMPControllerConfigPtr cfg;
155 Eigen::Vector3f filteredForce;
156 Eigen::Vector3f forceOffset;
158 Eigen::Vector3f oriToolDir;
165 TripleBuffer<UserToRTData> user2rtData;