Installation
This guide is a detailed step by step instruction to install the ROS2swarm package on top of Ubuntu for the use with
the TurtleBot 3
the Jackal UGV
the Thymio II
AgileX Limo
Prerequisistes
Ubuntu 18.04
Ubuntu 20.04
Ubuntu 20.04
Installation of ROS 2
ROS2swarm currently supports ROS 2 Dashing, Foxy, and Galactic.
Please install your desired ROS 2 version (recommended: Foxy) following the official ROS 2 installation guide:
Installation of Additional Dependencies
sudo apt install -y python3-pip
pip3 install -U argcomplete
sudo apt install python3-colcon-common-extensions python3-vcstool
sudo apt install -y python3-pip
pip3 install -U argcomplete
sudo apt install python3-colcon-common-extensions ros-foxy-xacro
sudo apt install -y python3-pip
pip3 install -U argcomplete
sudo apt install python3-colcon-common-extensions
Installation of Gazebo
curl -sSL http://get.gazebosim.org | sh
sudo apt remove gazebo11 libgazebo11-dev
sudo apt install gazebo9 libgazebo9-dev
sudo apt install ros-dashing-gazebo-ros-pkgs
sudo apt install ros-dashing-cartographer ros-dashing-cartographer-ros
sudo apt install ros-dashing-navigation2 ros-dashing-nav2-bringup
sudo apt install ros-foxy-gazebo-ros-pkgs
sudo apt install ros-foxy-cartographer ros-foxy-cartographer-ros
sudo apt install ros-foxy-navigation2 ros-foxy-nav2-bringup
sudo apt install ros-galactic-gazebo-ros-pkgs
sudo apt install ros-galactic-cartographer ros-galactic-cartographer-ros
sudo apt install ros-galactic-navigation2 ros-galactic-nav2-bringup
Installation of Robot Packages
TurtleBot 3
mkdir -p ~/turtlebot3_ws/src
cd ~/turtlebot3_ws/src/
git clone -b dashing-devel https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone -b dashing-devel https://github.com/ROBOTIS-GIT/turtlebot3.git
sudo apt install ros-dashing-dynamixel-sdk
git clone -b dashing-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/turtlebot3_ws && colcon build --symlink-install
mkdir -p ~/turtlebot3_ws/src
cd ~/turtlebot3_ws/src/
git clone -b foxy-devel https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone -b foxy-devel https://github.com/ROBOTIS-GIT/turtlebot3.git
sudo apt install ros-foxy-dynamixel-sdk
git clone -b foxy-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/turtlebot3_ws && colcon build --symlink-install
mkdir -p ~/turtlebot3_ws/src
cd ~/turtlebot3_ws/src/
git clone -b galactic-devel https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone -b galactic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git
sudo apt install ros-galactic-dynamixel-sdk
git clone -b galactic-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
cd ~/turtlebot3_ws && colcon build --symlink-install
Thymio II
No Thymio II support
Please follow the official installation guide for ROS-Aseba (simulation and real robots) and ROS-Thymio (real robots only).
Clone the Thymio description repository to your colcon workspace
git clone https://github.com/ROS2swarm/thymio_description.git src/thymio_description
Build your colcon workspace
colcon build --symlink-install
follow instructions for foxy (untested!)
Jackal
No Jackal support
Please follow the official installation guide.
Set the parameters for including a LiDAR:
echo 'export JACKAL_LASER=1' >> ~/.bashrc
echo 'export JACKAL_LASER_MOUNT=mid' >> ~/.bashrc
No Jackal support
Limo
ToDo
ToDo
ToDo
Installation of ROS2swarm
Please download the ROS2swarm version for your desired ROS 2 version from the ROS2swarm Github page.
Installation of Driving Swarm Infrastructure
Install required dependencies:
pip3 install xacro pickle5 transforms3d shapely graph-tool deprecation dubins bezier
sudo apt install python3-rosgraph ros-foxy-tf-transformations python3-pykdl python3-termcolor python3-skimage python3-scipy
pip3 install git+https://github.com/ghliu/pyReedsShepp.git
Download driving swarm infrastructure package from Github (tested only for foxy so far).
Now, you can build the driving swarm packages by navigating into the driving_swarm_infrastructure folder and running colcon build.
Environment Configuration
echo 'source /opt/ros/dashing/setup.bash' >> ~/.bashrc
echo 'source ~/turtlebot3_ws/install/setup.bash' >> ~/.bashrc
echo 'export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:~/turtlebot3_ws/src/turtlebot3_simulations/turtlebot3_gazebo/models:~/turtlebot3_ws/src/thymio_description' >> ~/.bashrc
echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc
echo 'source /opt/ros/foxy/setup.bash' >> ~/.bashrc
echo 'source ~/turtlebot3_ws/install/setup.bash' >> ~/.bashrc
echo 'source ~/driving_swarm_infrastructure/install/setup.bash' >> ~/.bashrc
echo 'export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:~/turtlebot3_ws/src/turtlebot3_simulations/turtlebot3_gazebo/models' >> ~/.bashrc
echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc
echo 'source /opt/ros/galactic/setup.bash' >> ~/.bashrc
echo 'source ~/turtlebot3_ws/install/setup.bash' >> ~/.bashrc
echo 'source ~/driving_swarm_infrastructure/install/setup.bash' >> ~/.bashrc
echo 'export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:~/turtlebot3_ws/src/turtlebot3_simulations/turtlebot3_gazebo/models' >> ~/.bashrc
echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc