25 #include <RobotAPI/interface/units/RobotUnit/NJointController.ice>
26 #include <RobotAPI/interface/core/Trajectory.ice>
28 #include <ArmarXCore/interface/serialization/Eigen.ice>
37 string dmpMode =
"MinimumJerk";
38 string dmpType =
"Discrete";
59 void learnDMPFromFiles(Ice::StringSeq trajfiles);
60 void learnJointDMPFromFiles(
string jointTrajFile, Ice::FloatSeq currentJVS);
63 void runDMP(Ice::DoubleSeq goals);
64 void runDMPWithTime(Ice::DoubleSeq goals,
double timeDuration);
66 void setViaPoints(
double canVal, Ice::DoubleSeq point);
67 void setGoals(Ice::DoubleSeq goals);
69 double getVirtualTime();
70 void setCanVal(
double canVal);
76 void setKdImpedance(Ice::FloatSeq dampings);
77 void setKpImpedance(Ice::FloatSeq stiffness);
78 void setKpNull(Ice::FloatSeq knull);
79 void setKdNull(Ice::FloatSeq dnull);
80 Ice::FloatSeq getForce();
81 Ice::FloatSeq getVelocityInMM();
82 void removeAllViaPoints();
84 void setUseNullSpaceJointDMP(
bool useJointDMP);
85 void setDefaultJointValues(Ice::FloatSeq desiredJointVals);
94 double dmpAmplitude = 1;
95 double timeDuration = 10;
99 float phaseDist0 = 50;
100 float phaseDist1 = 10;
101 double phaseKpPos = 1;
102 double phaseKpOri = 0.1;
103 double posToOriRatio = 100;
107 string nodeSetName =
"";
119 string forceSensorName =
"FT R";
120 string forceFrameName =
"ArmR8_Wri2";
121 float forceFilter = 0.8;
122 float waitTimeForCalibration = 0.1;
125 float minimumReactForce = 0;
154 void learnDMPFromFiles(Ice::StringSeq trajfiles);
155 void learnDMPFromTrajectory(TrajectoryBase trajectory);
158 void runDMP(Ice::DoubleSeq goals,
double tau);
160 void setSpeed(
double times);
161 void setGoals(Ice::DoubleSeq goals);
162 void setAmplitude(
double amplitude);
163 void setTargetForceInRootFrame(
float force);
172 int kernelSize = 100;
173 double dmpAmplitude = 1;
174 double timeDuration = 10;
178 float phaseDist0 = 50;
179 float phaseDist1 = 10;
180 double phaseKpPos = 1;
181 double phaseKpOri = 0.1;
182 double posToOriRatio = 100;
186 string nodeSetName =
"";
198 string forceSensorName =
"FT R";
199 string forceFrameName =
"ArmR8_Wri2";
200 float forceFilter = 0.8;
201 float waitTimeForCalibration = 0.1;
204 int velocityHorizon = 100;
205 int frictionHorizon = 100;
218 float minimumReactForce = 0;
272 void learnDMPFromFiles(Ice::StringSeq trajfiles);
273 void learnDMPFromTrajectory(TrajectoryBase trajectory);
276 void runDMP(Ice::DoubleSeq goals,
double tau);
278 void setSpeed(
double times);
279 void setGoals(Ice::DoubleSeq goals);
280 void setAmplitude(
double amplitude);
281 void setTargetForceInRootFrame(
float force);
285 Ice::FloatSeq getAnomalyInput();
286 Ice::FloatSeq getAnomalyOutput();
288 void setTrigerAbnormalEvent(
bool abnormal);