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. |
PR2 Opens a Door
Description: Simulated environment for testing autonomous door opening in simulation.Tutorial Level: INTERMEDIATE
Contents
Installation
This tutorial uses the door opening code from the pr2_doors stack. You will need to install the 'pr2all' variant of ROS (see installation instructions). On Ubuntu, this means:
$ sudo apt-get install ros-cturtle-pr2all
And you will also need to check out an unreleased package ( use at your own risk):
svn co https://code.ros.org/svn/wg-ros-pkg/stacks/wg_robots_gazebo/trunk/pr2_doors_gazebo_demo/ svn co https://code.ros.org/svn/ros/stacks/ros_experimental/trunk ros_experimental
Add above pr2_doors_gazebo_demo and ros_experimental directory paths to your ROS_PACKAGE_PATH environment variable.
Please note that pr2_doors 0.3.8 release contained a bug, a recent update to 0.3.9 fixed the issue.
Compiling
Now you should be able to rosmake and launch the demo:
rosmake pr2_doors_gazebo_demo
Running
First, export environment variable
export ROBOT=sim
This sets the launch scripts to use sim.machine in pr2_machine.
Next, start the door opening simulation:
roslaunch pr2_doors_gazebo_demo pr2_doors_demo.launch
This brings up the simulated world with the PR2 robot in front of a door.
To trigger the door opening action and tell the executive to start opening the door:
rosrun pr2_doors_executive trigger_opendoor.py