Romeo Robot - Dual Arm Manipulation: ball-in-maze game

Hi !

Thanks to Panda3D I created a simple dual arm manipulation demo using the humanoid robot Romeo.

The two arms, 14 joints in total, are holding a tray from two handles. A known picture is placed on the tray, it is detected automatically and then tracked using the template tracker in ViSP. Furthermore, this algorithm computes the 6D pose of the picture with respect to the camera. A virtual maze is added in augmented reality on the top of the tray and its pose is directly linked with the pose of the picture. The aim of the game is to roll the virtual ball from its actual position to the end of the maze. The arms are controled using a Position-Based Visual Servoing and a master/slave approach, in order to apply any translation and rotation to the grabbed object, just by knowing its pose with respect to the camera.


Video
Code

I modified the maze provided with the tutorial starting from this translation in c++.

Thanks dri and rdb for the help!