Contents
Setting Up a System to Run ARIAC 2018
This tutorial will walk you through the setup required to make a computer ready to run ARIAC. In order to run ARIAC your computer will need a discrete graphics card and will need to satisfy the minimum System Requirements.
ARIAC 2018 requires Gazebo8 to be installed. Note that Gazebo8 and Gazebo7 cannot be installed at the same time. If you already have Gazebo7 installed, these steps will remove it.
Note: this tutorial assumes you are using ROS Kinetic (Ubuntu Xenial 16.04), the officially supported ROS distro for ARIAC 2018.
Setup Ubuntu to Install Packages from the Open Source Robotics Foundation (OSRF)
You can either install the ARIAC packages from binaries (recommended) or by building the software locally on your machine. Whether you are installing from binaries or from source, you will need to add OSRF's package repository to your system so it can install packages from there. Do so by running this command:
sudo sh -c ' echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" \ > /etc/apt/sources.list.d/gazebo-stable.list'
Next you need to add the signing key to your computer so the packages can be verified:
wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
And finally update the apt-get database since you added the OSRF packages repository to the sources list:
sudo apt-get update
Now either continue to the installation from binaries or the installation from source steps.
Installing the ARIAC 2018 packages from Binaries
To install from binaries (only available on Ubuntu 16.04 Xenial + ROS Kinetic), run the following command (note the 2 at the end to get the 2018 ARIAC packages):
sudo apt-get install ariac2
To finish your install, source the ROS setup.bash file:
source /opt/ros/kinetic/setup.bash
This sets up your shell to run the ROS commands needed to run ARIAC. There is also a setup.zsh if you are using that shell.
So that the above line will be automatically run when you open new terminal windows, put it in your bashrc:
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
Alternative: Building the ARIAC packages from Source
This strategy is only recommended for a few cases:
- You want to test a change you're going to propose to the ARIAC source code.
- There are no ARIAC binaries available for your system.
Installing Gazebo8
ARIAC 2018 requires Gazebo8 to be installed. Do so with:
sudo apt-get install gazebo8 gazebo8-plugin-base libignition-math3 libsdformat5
Installing ROS
Next you need to install ROS, which ARIAC uses to provide the competition interface. Instructions to do this can be found here:
http://wiki.ros.org/kinetic/Installation/Ubuntu
These instructions will be summarized next.
Setup Ubuntu to Install Packages from ROS
First add the ROS packages repository to apt-get's list of sources:
sudo sh -c ' echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" \ > /etc/apt/sources.list.d/ros-latest.list'
Then add the key ROS uses to sign the packages:
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net --recv-key 0xB01FA116
Installing ROS Desktop
ROS has a few "variants" which contain commonly used components, e.g. "Robot" is a small set of things that you'd run on a deployed robot, "Desktop" is a superset of "Robot" that also contains tools you might use on a workstation, and "Desktop-Full" additionally has perception algorithms and simulators.
Normally ROS Kinetic uses Gazebo7, but since ARIAC uses Gazebo8 you will need to avoid installing "Desktop-Full" and instead install the "Desktop" set of packages and then manually install the Gazebo8 version of the Gazebo-ROS compatibility packages afterwards.
First update apt-get's database since you added the ROS repositories to the list of sources:
sudo apt-get update
Then install the "Desktop" packages for ROS Kinetic:
sudo apt-get install ros-kinetic-desktop
To finish the ROS Kinetic installation, initialize the rosdep database:
sudo rosdep init; rosdep update
Installing Gazebo-ROS Compatibility Packages
Now install the Gazebo-ROS compatibility packages:
sudo apt-get install ros-kinetic-gazebo8-ros-pkgs ros-kinetic-gazebo8-ros-control
Installing Additional Dependencies
Install the following package which is needed to run the ARIAC examples:
sudo apt-get install ros-kinetic-ros-controllers
Setting Up a Catkin Workspace
Since the ARIAC packages are catkin packages, we'll start by setting up a catkin workspace. First create a folder for the workspace, something like this:
mkdir -p ~/ariac_ws/src
The src folder will contain the source code you want to build.
Getting the Source Code
Next you will need to get the ARIAC source code. You can either "clone" the source using git or you can extract an archive of the source that you downloaded from BitBucket. To clone the source:
cd ~/ariac_ws/src git clone https://bitbucket.org/osrf/ariac -b master
If you would prefer to download the source as an archive:
cd ~/ariac_ws/src wget https://bitbucket.org/osrf/ariac/get/master.zip unzip master.zip rm master.zip
Building the ARIAC Packages
Before starting the build, you need to source the ROS setup.bash file:
source /opt/ros/kinetic/setup.bash
This sets up your shell to build on top of ROS. There is also a setup.zsh if you are using that shell.
Next start the build using the catkin build tool called catkin_make:
cd ~/ariac_ws catkin_make install
This will build the ARIAC packages and install them to a local folder, in this case ~/ariac_ws/install next to the src folder.
This folder will also have a setup.bash file in it that you can source before building your own competition packages:
source ~/ariac_ws/install/setup.bash
So that the above line will be automatically run when you open new terminal windows, put it in your bashrc:
echo "source ~/ariac_ws/install/setup.bash" >> ~/.bashrc
Using ARIAC
See the ARIAC interface tutorial for how to run ARIAC.