TIAGo Base

tiago_base.png

ROS Software Maintainer: PAL Robotics

TIAGo Base is an indoor mobile robot designed with minimum footprint and maximum payload in mind. Its primary sensors are a laser range finder, an IMU and ultrasound sensors though additional devices and sensors can be easily added. TIAGo Base features built-in speakers so the robot can inform its surroundings of the completion of a task or ask you to rescue it from under a pile of objects. It also has already developed software for navigation. This robot runs on ROS Kinetic internally, and uses state-of-the-art ros_control components.

If you wish to know more or request a quote, please send us a message or refer to the product page

Installation

  Show EOL distros: 

  • Not supported. Currently supported: indigo.

These instructions assume that you are comfortable with ROS and the catkin build system. Please familiarize yourself using the ROS and catkin tutorials.

For a source-based installation, first create an empty workspace:

  • mkdir ~/tiago_base_public_ws
    cd ~/tiago_base_public_ws

Click on the tiago_base_public.rosinstall link and press get button in order to download the file. Then copy it in ~/tiago_base_public_ws. In order to clone the required repositories do as follows:

  • cd ~/tiago_base_public_ws
    rosinstall src /opt/ros/indigo tiago_base_public.rosinstall

Then run this command to make sure that all dependencies are installed.

  • sudo rosdep init
    rosdep update
    rosdep install --from-paths src --ignore-src --rosdistro indigo --skip-keys "pal_gazebo_plugins speed_limit sensor_to_cloud"

Finally you can build the workspace and source it:

  • catkin build
    source ./devel/setup.bash

and it is ready to go!

  • Coming soon! Currently supported: indigo.

Launching a Gazebo simulation

To launch the simulation of the TIAGo Base, execute:

  • roslaunch pmb2_gazebo pmb2_gazebo.launch public_sim:=true

With the simulation of TIAGo Base we are providing several pre-defined worlds which stress different aspects of navigation systems. You can find a list of these here.

Now let's launch the TIAGo Base simulation in a large corridor as follows:

  • roslaunch pmb2_gazebo pmb2_gazebo.launch public_sim:=true world:=large_corridor

The simulated TIAGo Base can provide the laser scan and sonar readings as depicted below. pmb2_gazebo_rviz.png

Control the robot

TIAGo Base supports a logitech joystick by default.

logitech-joystick.png

Controllers from other vendors may have different key mappings. In this case the joy_teleop.yaml file needs to be changed to reflect the different configuration.

If you had one plugged when you started up the (real or simulated) robot, now it can be used. Activate the joystick commands by pressing the 'X' button, and drive using the controllers. This activation behaviour comes in very handy when the robot is navigating autonomously but a rapid interruption is needed.

One can also use the rqt_robot_steering plugin to drive the robot by sending commands directly to /mobile_base_controller/cmd_vel

Library Overview

Basic Configuration

Component

ROS package/stack

Robot model (URDF)

pmb2_description

Robot controller configuration

pmb2_controller_configuration

Robot bringup files

pmb2_bringup

Hardware Drivers and Simulation

Component

ROS package/stack

Robot hardware simulation

pmb2_hardware_gazebo

Simulation-specifig controller config

pmb2_controller_configuration_gazebo

Gazebo setup

pmb2_gazebo

High-Level Capabilities

Component

ROS package/stack

Control over the source of movement commands

twist_mux

Joystick teleoperation interface

joy_teleop

PAL Robotics GitHub organization

Wiki: Robots/TIAGo-base (last edited 2018-05-02 15:14:06 by Jordi Pages)