Only released in EOL distros:  

reem_teleop: joint_position_controller | motion_adaption | reem_teleop_coordinator | tree_kinematics

Package Summary

Motion retargeting packages for teleoperating REEM.

reem_teleop: joint_position_controller | motion_adaption | reem_teleop_coordinator | tree_kinematics

Package Summary

Catkin metapackage for reem_teleop

  • Maintainer: Marcus Liebhardt <marcus.liebhardt AT yujinrobot DOT com>, Adolfo Rodríguez Tsouroukdissian <adolfo.rodriguez AT pal-robotics DOT com>
  • Author: Marcus Liebhardt <marcus.liebhardt AT yujinrobot DOT com>, Adolfo Rodríguez Tsouroukdissian <adolfo.rodriguez AT pal-robotics DOT com>, Hilario Tome <hilario.tome AT pal-robotics DOT com>
  • License: BSD, LPGLv2.1
  • Source: git https://github.com/pal-robotics/reem_teleop.git (branch: groovy-devel)

Overview

Motion retargeting is the process of mapping motions between different kinematic structures. This stack implements a simple, yet effective motion retargeting method that is used in the context of a unilateral teleoperation system for transferring upper body motions from a human operator to a robot in an online fashion.

The operator's motion is captured using a Kinect device. In order to capture as much of the original motion's expressiveness as possible, we are making use of multiple end-effectors, which are currently the wrists, elbows, torso and head (caveat: the openni_tracker does not capture head/wrist orientation). Then, we adapt the captured motion to the robot's kinematic structure, which can differ significantly in terms of number of degrees of freedom and body proportions. Finally, an inverse kinematics computation produces a joint space reference for the robot to follow. This reference takes into account technological and geometric constraints like joint position and velocity limits, as well as self-collisions.

Installation

The current version of the stack only supports ros diamondback, and in order for it to work, a couple of packages must be overlaid on top of your vanilla diamondback (orocos_kdl, pr2_mechanism_model, gazebo_plugins). The following steps should take care of it all:

Preliminaries Make sure that the libeigen3-dev package is installed in your system.

sudo apt-get install libeigen3-dev

Get the source We need to get not only the source for this stack, but also the REEM model, and the packages to overlay. A rosinstall file is provided to automate this step. It can be found here:

https://raw.github.com/pal-robotics/pal-ros-pkg/master/motion_retargeting.rosinstall

The following is an example of a rosinstall invocation that downloads the code to ~/workspace and preserves the default ros diamondback setup:

rosinstall ~/workspace /opt/ros/diamondback https://raw.github.com/pal-robotics/pal-ros-pkg/master/motion_retargetting.rosinstall

Build everything

rosmake -a

Note

There are plans to remove this stack's dependencies on overlaid packages, which should streamline the installation process. This is high on our todo list.

Tutorials/Examples

The tutorials page contains a tutorial for testing the pipeline using your Kinect or a provided bag file of an example captured operator motion.

Documentation

See individual packages for details.

Report a Bug

https://github.com/pal-robotics/reem_teleop/issues

Wiki: reem_teleop/diamondback (last edited 2012-06-26 02:15:05 by MarcusLiebhardt)