Note: This tutorial assumes that you have completed the previous tutorials: Assembling the TurtleBot Arm. |
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. |
Installation Instructions for TurtleBot Arm
Description: Installing the software for the TurtleBot Arm, both on the TurtleBot and on the local machine.Tutorial Level: INTERMEDIATE
Next Tutorial: turtlebot_arm/Tutorials/SettingUpServos
Contents
Introduction
Please note that the turtelbot_arm stack requires that your PC and the TurtleBot are both running electric.
On your PC
Set your directories up
You will need to have a folder to store the packages we are about to check out. We suggest ~/hydro. In order to set up ROS to search ~/hydro for packages, follow the steps below:
mkdir -p ~/hydro/src echo "export ROS_PACKAGE_PATH=$HOME/hydro/src:$ROS_PACKAGE_PATH" >> ~/.bashrc
arbotix and simple_arms
sudo apt-get update sudo apt-get install ros-hydro-arbotix
turtlebot_arm
cd ~/hydro/src git clone https://github.com/corot/turtlebot_arm
Or, at some point, if the changes get pushed back upstream, you can pull from the main repo
cd ~/hydro/src git clone https://github.com/turtlebot/turtlebot_arm
Build the turtlebot arm code
cd ~/hydro catkin_make . ~/.bashrc
On the TurtleBot
You will need to install the same stacks on the TurtleBot, again we suggest in the ~/hydro directory.
arbotix
sudo apt-get update sudo apt-get install ros-hydro-arbotix
turtlebot_arm
mkdir -p ~/hydro/src cd ~/hydro/src git clone https://github.com/corot/turtlebot_arm
Build the turtlebot arm code
cd ~/hydro catkin_make echo "export ROS_PACKAGE_PATH=$HOME/hydro/src:$ROS_PACKAGE_PATH" >> ~/.bashrc . ~/.bashrc
Setting up the URDF
Next, we have to set up the TurtleBot's hardware description file (URDF) to include the arm. This is done through the TurtleBot bringup script in /etc/ros/turtlebot.
On the TurtleBot, edit /etc/ros/turtlebot/bringup.launch in your favorite text editor and change it to resemble this:
<launch> <param name="turtlebot_node/gyro_scale_correction" value="1.0"/> <param name="turtlebot_node/odom_angular_scale_correction" value="1.0"/> <include file="$(find turtlebot_bringup)/launch/minimal.launch"> <arg name="urdf_file" value="$(find xacro)/xacro.py '$(find turtlebot_arm_description)/urdf/arm.urdf.xacro'" /> </include> </launch>
The line
<arg name="urdf_file" value="$(find xacro)/xacro.py '$(find turtlebot_arm_description)/urdf/arm.urdf.xacro'" />
tells the TurtleBot to use the urdf that includes the arm from the turtlebot_arm_description package.
Next Tutorial
The next tutorial, Setting up the Dynamixel Servos, will walk you through programming the firmware on the ArbotiX and setting up the servo IDs.