Demos on Robotont

Before running the demos it is necessary to get acquinted with the setup section of the documentation.

Before running the demos on the robot read the following instructions:

Note that some of the commands will run on Robotont on-board computer and some on user PC.

2D Mapping and Localization

The following are needed to run the 2D mapping demo:

sudo apt update
sudo apt install ros-noetic-depthimage-to-laserscan
sudo apt install ros-noetic-move-base

To run the 2D mapping demo, you need to clone the base package:

git clone https://github.com/robotont-demos/demo_slam.git

and choose a mapping method from the following:

  1. Cartographer

  2. Gmapping

  3. Hector SLAM

Gmapping and AMCL

Installation

You can clone the package for the Gmapping method from this repository.

To clone the packages:

git clone https://github.com/robotont-demos/demo_slam_gmapping.git
git clone https://github.com/robotont-demos/demo_teleop.git

Running the demo

  1. On Robotont on-board computer or on PC launch 2d_slam.launch

    roslaunch demo_slam_gmapping 2d_slam.launch
    
  2. On PC launch 2d_slam_display.launch to visualize the result

    roslaunch demo_slam 2d_slam_display.launch
    
  3. To move the robot open another terminal window on robotont on-board computer or on the PC and run teleop twist keyboard (TBA)

    roslaunch demo_teleop teleop_keyboard.launch
    

    Hint

    Notice that the teleop node only receives keypresses when the terminal window is active.

Cartographer

Installation

You can clone the package for the Cartographer method from this repository.

To clone the packages:

git clone https://github.com/robotont-demos/demo_slam_cartographer.git
git clone https://github.com/robotont-demos/demo_teleop.git

Running the demo

  1. On Robotont on-board computer or on PC launch 2d_slam.launch

    roslaunch demo_slam_cartographer 2d_slam.launch
    
  2. On PC launch 2d_slam_display.launch to visualize the result

    roslaunch demo_slam 2d_slam_display.launch
    
  3. To move the robot open another terminal window on robotont on-board computer or on the PC and run teleop twist keyboard (TBA)

    roslaunch demo_teleop teleop_keyboard.launch
    

    Hint

    Notice that the teleop node only receives keypresses when the terminal window is active.

Hector SLAM

Installation

You can clone the package for the Hector SLAM method from this repository.

To clone the packages:

git clone https://github.com/robotont-demos/demo_slam_hector.git
git clone https://github.com/robotont-demos/demo_teleop.git

Running the demo

  1. On Robotont on-board computer or on PC launch 2d_slam.launch

    roslaunch demo_slam_hector 2d_slam.launch
    
  2. On PC launch 2d_slam_display.launch to visualize the result

    roslaunch demo_slam 2d_slam_display.launch
    
  3. To move the robot open another terminal window on robotont on-board computer or on the PC and run teleop twist keyboard.

    roslaunch demo_teleop teleop_keyboard.launch
    

    Hint

    Notice that the teleop node only receives keypresses when the terminal window is active.

Setting 2D navigation goals

  1. Using ROS Navigation to make the robot move autonomously is pretty straightforward. There are two GUI buttons in RViz to tell the robot where it is located (if it fails to accurately localize at startup) and where it needs to go.

  2. For setting initial pose, click on 2D Pose Estimate and drag the arrow where and how the robot actually is.

    _images/poseestimatearrow.png
  3. To tell the robot where to go, click on 2D Nav Goal and drag the arrow to where you want the robot to go and which way does it have to face.

_images/2dnavgoalarrow.png

3D mapping

Creates a 3D map of the robot’s surroundings.

Installation

  1. For 3D mapping:

    sudo apt install ros-noetic-rtabmap-ros
    

and clone the following packages:

git clone https://github.com/robotont-demos/demo_mapping_3d.git
git clone https://github.com/robotont-demos/demo_teleop.git

Running the demo

  1. On Robotont on-board computer or on PC launch mapping_3d.launch

    roslaunch demo_mapping_3d mapping_3d.launch
    
  2. On PC launch mapping_3d_display.launch to visualize the result

    roslaunch demo_mapping_3d mapping_3d_display.launch
    
  3. To move the robot open another terminal window on robotont on-board computer or on user PC and run teleop twist keyboard

    rosrun demo_teleop teleop_keyboard.launch
    

    Hint

    Notice that the teleop node only receives keypresses when the terminal window is active.

_images/3dmap.png

AR tracking

The robot identifies and tracks the pose of the provided AR tag and acts accordingly.

Follow the leader

The follow the leader demo showing the capabilities of the Robotont platform to detect and follow the AR Tag.

Installation

  1. For AR tracking:

    git clone https://github.com/machinekoder/ar_track_alvar.git -b noetic-devel
    git clone https://github.com/robotont-demos/demo_ar_follow_the_leader.git
    

Running the demo

  1. On Robotont on-board computer or on PC launch ar_follow_the_leader.launch (change tag_nr with your AR tag number)

    roslaunch demo_ar_follow_the_leader ar_follow_the_leader.launch marker_id:=tag_nr
    
  2. On PC launch ar_marker_display.launch to visualize the result

    roslaunch demo_ar_follow_the_leader ar_marker_display.launch
    

AR steering

The AR steering demo showing the capabilities of the Robotont platform to detect and follow the AR Tag.

Installation

  1. For AR tracking:

    git clone https://github.com/machinekoder/ar_track_alvar.git -b noetic-devel
    git clone https://github.com/robotont-demos/demo_ar_steering.git
    

Running the demo

  1. On Robotont on-board computer or on PC launch ar_steering.launch (change tag_nr with your AR tag number)

    roslaunch demo_ar_steering ar_steering.launch marker_id:=tag_nr
    
  2. On PC launch ar_marker_display.launch to visualize the result

    roslaunch demo_ar_steering ar_marker_display.launch
    

AR Maze

The AR maze demo showing the capabilities of the Robotont platform to detect and follow the AR Tag and navigate through the maze.

Installation

  1. For AR tracking:

    git clone https://github.com/machinekoder/ar_track_alvar.git -b noetic-devel
    git clone https://github.com/robotont-demos/demo_ar_maze.git
    

Running the demo

  1. On Robotont on-board computer or on PC launch ar_maze.launch

    roslaunch demo_ar_maze ar_maze.launch
    

    Hint

    Make sure to modify the list with ar tags for maze navigation in 8th line of ar_maze.launch: roslaunch demo_ar_maze ar_maze.launch marker_ids:=”4,10,5”