Closed GiulioRomualdi closed 6 years ago
The code of the first version of the DCM trajectory generator can be found here. (if you want I can create a new branch in this repository and open a pull request)
The results are collected using the interpolationTest
.
In the figure below the DCM trajectory (both x and y coordinates) is shown. The trajectory generator takes into account both Single and Double Support using an heuristic technique.
mergePoints
in the generation of the DCM trajectoryWith the new release two DCM trajectories can be are merged in the middle of the Double Support phase (mergePoint
).
It is important to notice that the new trajectory is evaluated imposing, at the mergePoint
, the same velocity and position of the old trajectory.
More formally
where is the time at the merge point and is the DCM position.
It is important to underline that the mergePoint
approach allows the real-time evaluation of the trajectory (for example using a joystick).
In the following some result plots (obtained using the new DcmInterpolationTest
) are shown. In the first one the old (blue) and the new merged (orange) DCM trajectories are shown
while in the other figures the x and y coordinate of the DCM trajectories are shown
Here you can find further information about the theory behind the DCM trajectory generator.
@GiulioRomualdi A simple question.How can I run DcmInterpolationTest? My steps are as follows:
cd /unicycle-footstep-planner/build/tests/
./DcmInterpolationTest
But it reminds me that I have no footprint name.
[DCM TRAJECTORY GENERATOR] The name of the footprint is neither left nor right. Does iCub have more legs?!
[DCM TRAJECTORY GENERATOR] Unable to get the ZMP Delta.
[FEETINTERPOLATOR] Failed while computing the DCM trajectories.
:-1 : assertTrue failure
so I try
./DcmInterpolationTest left
It doesn't work either.
In order to implement a DCM based controller a trajectory generator for the Divergent Component Of Motion is needed.