Quickstart

This guide will help you to setup your programming environment to start using the xbot2 framework.

System Setup

The xbot2 framework is written in C++17 and depends on a few external packages. Note that xbot2 is released free of charge, and it is not open source: as a standard user you are expected to install the framework using our apt server as follow.

System Requirements

Currently the xbot2 framework support the following operating systems:

  • Linux Ubuntu 18.04 LTS

  • Linux Ubuntu 20.04 LTS

Moreover it supports the Xenomai3 Real-Time (RT) co-kernel system.

Dependencies

Install the ROS base version of the target OS you choose.

First of all set up the source.list and your keys:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

sudo apt install curl
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

Then continue based on the OS you are working on for the right ROS and Gazebo version (including the sourcing in the .bashrc):

  • on Ubuntu 18.04 LTS (Bionic):

sudo apt update && sudo apt install -y \
ros-melodic-ros-base \
libgazebo9-dev

echo ". /opt/ros/melodic/setup.bash" >> ~/.bashrc
. ~/.bashrc
  • on Ubuntu 20.04 LTS (Focal):

sudo apt update && sudo apt install -y \
ros-noetic-ros-base \
libgazebo11-dev

echo ". /opt/ros/noetic/setup.bash" >> ~/.bashrc

You can now install some extra ROS and QT packages needed for xbot2:

source $HOME/.bashrc
sudo apt install -y \
ros-$ROS_DISTRO-urdf ros-$ROS_DISTRO-kdl-parser \
ros-$ROS_DISTRO-eigen-conversions ros-$ROS_DISTRO-robot-state-publisher ros-$ROS_DISTRO-moveit-core \
ros-$ROS_DISTRO-rviz ros-$ROS_DISTRO-interactive-markers ros-$ROS_DISTRO-tf-conversions ros-$ROS_DISTRO-tf2-eigen \
qttools5-dev libqt5charts5-dev qtdeclarative5-dev

Install the xbot2 framework

This installation is meant for a non-RT capable machine (e.g. your laptop).

sudo sh -c 'echo "deb http://xbot.cloud/xbot2/ubuntu/$(lsb_release -sc) /" > /etc/apt/sources.list.d/xbot-latest.list'
wget -q -O - http://xbot.cloud/xbot2/ubuntu/KEY.gpg | sudo apt-key add -
sudo apt update
sudo apt install xbot2_desktop_full

The installed libraries/binaries are made visible by sourcing the provided /opt/xbot/setup.sh script:

echo ". /opt/xbot/setup.sh" >> ~/.bashrc

Note that installing the xbot2_dekstop_full package will also provide the following SDKs:

Run the examples

Clone and compile the examples repository! The readme file will guide you through the commented source code, and you’ll be able to play with the IIT-Teleop robotic arm inside Gazebo. If you’re just curious and you don’t want to deal with software installation, the examples can be executed on a Docker container as well (see the provided instruction).