(!) 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.

Installing TIAGo OMNI Base Tutorial Docker

Description: How to pull and launch a docker all set up for the TIAGo OMNI Base Tutorial with melodic or noetic

Tutorial Level: BEGINNER

Next Tutorial: Robots/TIAGo-OMNI-base/Tutorials/Installation/OMNI_Base_Simulation

Author: Job van Dieten < job.1994@gmail.com >, Sai Kishor Kothakota < sai.kishor@pal-robotics.com >

Maintainer: Jordi Pages < jordi.pages@pal-robotics.com >, Thomas Peyrucain < thomas.peyrucain@pal-robotics.com >

Support: tiago-support@pal-robotics.com

Source: https://github.com/pal-robotics/omni_base_tutorials.git

Docker-based installation

Those Dockerfiles are meant to be used to explore the functionalities of PAL Robotics mobile bases, it is not meant for development on the real robots since more functionalities are available in the dockers provided to customers when purchasing a robot.

These instructions assume that you have a basic docker understanding and have already installed it. Please familiarize yourself using the docker tutorials.

First of all open a terminal and pull the image of Melodic out of pal_mobile_base_tutorials:

  • docker pull palroboticssl/pal_mobile_base_tutorials:melodic

or Noetic:

  • docker pull palroboticssl/pal_mobile_base_tutorials:noetic

Rocker is mandatory for the following tutorials to have a graphical user interface with docker. osrf/rocker,it is a tool to run docker images with customized local support injected for things like nvidia support, and user_id specific files for cleaner mounting file permissions. You could also find more useful information on this topic on Tooling with Docker.

  • rocker with nvidia support:.

    You would need first to install nvidia docker support : https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html#docker :

  • distribution=$(. /etc/os-release;echo $ID$VERSION_ID)    && curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -    && curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
    sudo apt-get update
    sudo apt-get install -y nvidia-docker2
    sudo systemctl restart docker
    And then run the rocker
  • rocker --home --user --nvidia --x11 --privileged palroboticssl/pal_mobile_base_tutorials:<ros_distro>
  • rocker with intel integrated graphics support:
  • rocker --home --user --x11 --privileged palroboticssl/pal_mobile_base_tutorials:<ros_distro> --devices /dev/dri/card0

The options --home and --user are used so that the user won't be root and home directory will be mounted

If you are using a version of rocker that is lower than version 0.2.4, you would need to remove the --privileged option

Once you are inside the rocker you can do

  • terminator -u

To open a terminal inside the rocker that will allow you to use several terminals on the same rocker (Do not forget to source them all)

  • cd /pal_mobile_base_ws/
    source devel/setup.bash

To check that everything is properly installed run the TIAGo OMNI Base simulation

Wiki: Robots/TIAGo-OMNI-base/Tutorials/Installation/OMNI_Base_tutorial_docker (last edited 2023-01-25 15:54:21 by thomaspeyrucain)