@@ -99,25 +99,13 @@ ImplTestSotMockDevice::ImplTestSotMockDevice(std::string RobotName)
9999 dataForces.setZero ();
100100 for (int i = 0 ; i < 4 ; i++) forcesSOUT[i]->setConstant (dataForces);
101101
102- using namespace dynamicgraph ::command;
103- std::string docstring;
104- /* Command increment. */
105- docstring =
106- " \n "
107- " Integrate dynamics for time step provided as input\n "
108- " \n "
109- " take one floating point number as input\n "
110- " \n " ;
111- addCommand (" increment" ,
112- makeCommandVoid1 ((Device&)*this , &Device::increment, docstring));
113-
114102 sotDEBUGOUT (25 );
115103}
116104
117105ImplTestSotMockDevice::~ImplTestSotMockDevice () {}
118106
119107void ImplTestSotMockDevice::setSensorsForce (
120- map<string, dgsot::SensorValues>& SensorsIn, int t) {
108+ map<string, dgsot::SensorValues>& SensorsIn, dg:: sigtime_t t) {
121109 int map_sot_2_urdf[4 ] = {2 , 0 , 3 , 1 };
122110 sotDEBUGIN (15 );
123111 map<string, dgsot::SensorValues>::iterator it;
@@ -140,7 +128,7 @@ void ImplTestSotMockDevice::setSensorsForce(
140128}
141129
142130void ImplTestSotMockDevice::setSensorsIMU (
143- map<string, dgsot::SensorValues>& SensorsIn, int t) {
131+ map<string, dgsot::SensorValues>& SensorsIn, dg:: sigtime_t t) {
144132 map<string, dgsot::SensorValues>::iterator it;
145133 // TODO: Confirm if this can be made quaternion
146134 it = SensorsIn.find (" attitude" );
@@ -171,7 +159,7 @@ void ImplTestSotMockDevice::setSensorsIMU(
171159}
172160
173161void ImplTestSotMockDevice::setSensorsEncoders (
174- map<string, dgsot::SensorValues>& SensorsIn, int t) {
162+ map<string, dgsot::SensorValues>& SensorsIn, dg:: sigtime_t t) {
175163 map<string, dgsot::SensorValues>::iterator it;
176164
177165 it = SensorsIn.find (" motor-angles" );
@@ -202,7 +190,7 @@ void ImplTestSotMockDevice::setSensorsEncoders(
202190}
203191
204192void ImplTestSotMockDevice::setSensorsVelocities (
205- map<string, dgsot::SensorValues>& SensorsIn, int t) {
193+ map<string, dgsot::SensorValues>& SensorsIn, dg:: sigtime_t t) {
206194 map<string, dgsot::SensorValues>::iterator it;
207195
208196 it = SensorsIn.find (" velocities" );
@@ -219,7 +207,7 @@ void ImplTestSotMockDevice::setSensorsVelocities(
219207}
220208
221209void ImplTestSotMockDevice::setSensorsTorquesCurrents (
222- map<string, dgsot::SensorValues>& SensorsIn, int t) {
210+ map<string, dgsot::SensorValues>& SensorsIn, dg:: sigtime_t t) {
223211 map<string, dgsot::SensorValues>::iterator it;
224212 it = SensorsIn.find (" torques" );
225213 if (it != SensorsIn.end ()) {
@@ -242,7 +230,7 @@ void ImplTestSotMockDevice::setSensorsTorquesCurrents(
242230}
243231
244232void ImplTestSotMockDevice::setSensorsGains (
245- map<string, dgsot::SensorValues>& SensorsIn, int t) {
233+ map<string, dgsot::SensorValues>& SensorsIn, dg:: sigtime_t t) {
246234 map<string, dgsot::SensorValues>::iterator it;
247235 it = SensorsIn.find (" p_gains" );
248236 if (it != SensorsIn.end ()) {
@@ -267,7 +255,7 @@ void ImplTestSotMockDevice::setSensors(
267255 map<string, dgsot::SensorValues>& SensorsIn) {
268256 sotDEBUGIN (25 );
269257 map<string, dgsot::SensorValues>::iterator it;
270- int t = stateSOUT.getTime () + 1 ;
258+ dg:: sigtime_t t = stateSOUT.getTime () + 1 ;
271259
272260 setSensorsForce (SensorsIn, t);
273261 setSensorsIMU (SensorsIn, t);
@@ -298,15 +286,14 @@ void ImplTestSotMockDevice::cleanupSetSensors(
298286}
299287
300288void ImplTestSotMockDevice::getControl (
301- map<string, dgsot::ControlValues>& controlOut) {
289+ map<string, dgsot::ControlValues>& controlOut, const double & ) {
302290 ODEBUG5FULL (" start" );
303291 sotDEBUGIN (25 );
304292 vector<double > anglesOut, velocityOut;
305293 anglesOut.resize (state_.size ());
306294 velocityOut.resize (state_.size ());
307295
308296 // Integrate control
309- increment (timestep_);
310297 sotDEBUG (25 ) << " state = " << state_ << std::endl;
311298 sotDEBUG (25 ) << " diff = "
312299 << ((previousState_.size () == state_.size ())
@@ -327,7 +314,7 @@ void ImplTestSotMockDevice::getControl(
327314 velocityOut.resize (state_.size () - 6 );
328315 }
329316
330- int time = controlSIN.getTime ();
317+ dg:: sigtime_t time = controlSIN.getTime ();
331318 for (unsigned int i = 6 ; i < state_.size (); ++i) {
332319 anglesOut[i - 6 ] = state_ (i);
333320 velocityOut[i - 6 ] = controlSIN (time)(i);
@@ -342,31 +329,7 @@ void ImplTestSotMockDevice::getControl(
342329 dg::Vector zmpGlobal (4 );
343330 for (unsigned int i = 0 ; i < 3 ; ++i) zmpGlobal (i) = zmpSIN (time + 1 )(i);
344331 zmpGlobal (3 ) = 1 .;
345- dgsot::MatrixHomogeneous inversePose;
346-
347- inversePose = freeFlyerPose ().inverse (Eigen::Affine);
348- dg::Vector localZmp (4 );
349- localZmp = inversePose.matrix () * zmpGlobal;
350- vector<double > ZMPRef (3 );
351- for (unsigned int i = 0 ; i < 3 ; ++i) ZMPRef[i] = localZmp (i);
352-
353- controlOut[" zmp" ].setName (" zmp" );
354- controlOut[" zmp" ].setValues (ZMPRef);
355-
356- // Update position of freeflyer in global frame
357- Eigen::Vector3d transq_ (freeFlyerPose ().translation ());
358- dg::sot::VectorQuaternion qt_ (freeFlyerPose ().linear ());
359-
360- // translation
361- for (int i = 0 ; i < 3 ; i++) baseff_[i] = transq_ (i);
362-
363- // rotation: quaternion
364- baseff_[3 ] = qt_.w ();
365- baseff_[4 ] = qt_.x ();
366- baseff_[5 ] = qt_.y ();
367- baseff_[6 ] = qt_.z ();
368332
369- controlOut[" baseff" ].setValues (baseff_);
370333 ODEBUG5FULL (" end" );
371334 sotDEBUGOUT (25 );
372335}
0 commit comments