Balancing and Reaching with Model Predictive Control

HRP-2 balances while trying to reach a moving target (i.e. a simulated yellow ball moved by the user through a 3D mouse). The motion is generated online through MuJoCo, a fast trajectory optimization software based on the optimal-control algorithm iLQR and a smooth approximation of the contact dynamics. The control objectives are specified with a cost function, which was designed to make the robot i) balance, ii) reach the ball, iii) not take a step and iv) minimize joint torques and velocities.

Chiken head tracking enables hand stabilization

The HRP-2 robot stabilizes its right hand position regarding perturbations, introduced by Jean-Paul, that excitate the flexibility of the ankles, using IMU sensors and Kalman filtering techniques. As we put a stuffed chicken in HRP-2 stabilized hand, we have the illusion that the stabilization is achieved by tracking the bird's head.

HRP-2 walks through a hole inside a wall

Application of our whole-body motion planner: HRP-2 walks through a constrained hole in a brick wall. This motion illustrates both the capabilities of humanoid robots and the power of motion planning methods that are developped.

Dance with HRP2

Demonstration of the performances of the new inverse-dynamics solver. The final motion was scenarized by the dancer Tayeb Benamara, dancing with the robot a teacher/student relationship, led by the rhythms of the DJ EnjeB. The dance was performed three times on the night of October, the 15th, 2011, in front of 1000 persons.

Small-Space Controllability

The walking trajectory is planned in two steps. A first draft path is computed using random motion planning techniques that ensure collision avoidance. In a second step, the draft path is approximated by a whole-body dynamically stable walk trajectory. The mall-space controllability property ensures that the first draft path can always be approximated by a collision-free dynamically stable trajectory.

Moving across a door (documented objects)

Documented objects are a mean to plan sequences of tasks with a sampling-based path planner, by specifying the affordance of some important objects of the environment. It was used for example to move across a door in various contexts.

See also...

All the videos of the team are collected in a youtube channel. See the easy acces below, or move to the channel page of the Youtube website to subscribe and comment.