Note: This tutorial assumes that you have completed the previous tutorials: Robots/REEM/Tutorials/Launching a REEM Gazebo simulation. |
Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags. |
Play pre-recorded motions on REEM
Description: This tutorial will show you how to play pre-recorded motions on the REEM robot.Tutorial Level: BEGINNER
Next Tutorial: Robots/REEM/Tutorials/moveit
Contents
In order to go through this tutorial, you should have a Gazebo simulation of REEM running as per the previous tutorial.
Playing a pre-recorded arms-t motion
We will use a tool called play_motion to play a arms-t motion. The motion simply consists of a single pose, and the joint trajectory controllers will interpolate a trajectory to reach this pose.
First, fire up an actionlib client:
rosrun actionlib axclient.py /play_motion
Fill the action goal as per the following:
motion_name: 'arms_t' skip_planning: False priority: 0
After clicking the 'Send goal' button, you will see the robot open its arms on your Gazebo window.
To get back to the default position, play the home motion.
The motions are stored in a human-readable YAML file in reem_bringup/config/reem_motions.yaml and are loaded in the param server on startup, you can check which movements are available with:
rosparam list | grep play_motion
Which will get you something like:
/play_motion/motions/arms_t/joints /play_motion/motions/arms_t/points /play_motion/motions/hands_down/joints /play_motion/motions/hands_down/points /play_motion/motions/home/joints /play_motion/motions/home/points
You can also find an example on how to send a goal via python code in reem_snippets/send_motion.py