Skip to main content

ROS2 (Foxy) and Turtlebot3 installation

VirtualBox Intallation

Since Turtlebot3 with ROS2 work well with Linux OS such as UBUNTU Focal Fosa, if your system is Window or Mac OSX, it is important to install a virtual PC environment to enable Ubuntu into our PC environment.

VirtualBox Installation

Ubuntu Intallation

Select the correct version of Ubuntu to be used with the ROS2 installation version that you would like to install.

Ubuntu Installation Link

Check for environment

$ locale  # check for UTF-8

$ sudo apt update && sudo apt install locales
$ sudo locale-gen en_US en_US.UTF-8
$ sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
$ export LANG=en_US.UTF-8

$ locale  # verify settings

Setup Sources

$ sudo apt update && sudo apt install curl gnupg2 lsb-release
$ sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key  -o /usr/share/keyrings/ros-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

ROS2 installation

$ sudo apt update
$ sudo apt install ros-foxy-desktop
$ sudo apt-get install gedit

 Source your installation

$ echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

Instal other tools

$ sudo apt install -y python3-pip
$ pip3 install -U argcomplete

Gazebo 11 Installation

$ curl -sSL http://get.gazebosim.org | sh

GIT Installation

$ sudo apt install git-all

Gazebo 11 set up on ROS2

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install ros-foxy-gazebo-ros-pkgs

Check for Environment Set up

 Check for ubuntu version

$ lsb_release -a

 Check for ROS version

$ printenv ROS_DISTRO

 Check for Gazebo version

$ gazebo -version

Instal Dependency for Turtlrbot3

 Install Cartographer for ROS

$ sudo apt install ros-foxy-cartographer
$ sudo apt install ros-foxy-cartographer-ros

 And Install Navigation2

$ sudo apt install ros-foxy-navigation2
$ sudo apt install ros-foxy-nav2-bringup
$ sudo apt install python3-colcon-common-extensions

Instal Turtlebot3

 Install TurtleBot3 via Debian Packages.

$ sudo apt install ros-foxy-dynamixel-sdk
$ sudo apt install ros-foxy-turtlebot3-msgs
$ sudo apt install ros-foxy-turtlebot3

 Source your package in the bash

$ echo 'export ROS_DOMAIN_ID=30 #TURTLEBOT3' >> ~/.bashrc
$ source ~/.bashrc

Instal Turtlebot3 Simulation folder

 Create a workspace for turtlebot

$ mkdir ~/turtlebot3_ws/
$ mkdir ~/turtlebot3_ws/src/
$ cd ~/turtlebot3_ws/src/
$ git clone -b foxy-devel  https://github.com/ROBOTIS-GIT/turtlebot3.git
$ git clone -b foxy-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git

Turtlebot3 Simulation Environment

$ echo 'export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:~/turtlebot3_ws/src/turtlebot3/turtlebot3_simulations/turtlebot3_gazebo/models' >> ~/.bashrc
$ echo 'export TURTLEBOT3_MODEL=waffle_pi' >> ~/.bashrc
$ echo 'source ~/turtlebot3_ws/install/setup.bash' >> ~/.bashrc
$ source ~/.bashrc

Build your package



$ cd ~/turtlebot3_ws && colcon build --symlink-install

Run Turtlebot3 for manual navigation

$ export TURTLEBOT3_MODEL=burger
$ ros2 launch turtlebot3_gazebo empty_world.launch.py

 Open new terminal to run Turtlebot3 controller

$ ros2 run turtlebot3_teleop teleop_keyboard

Whats next:

You may look into the official Turtlebot3 website to look further into the simulation example on SLAM and more

  • https://emanual.robotis.com/docs/en/platform/turtlebot3/simulation/
  • https://navigation.ros.org/tutorials/docs/navigation2_on_real_turtlebot3.html

Comments (2)

Leave a Reply to profile backlinks full course Cancel reply

Your email address will not be published. Required fields are marked *