Mastering Mobile Manipulators Python

Master how to create ROS applications for autonomous mobile manipulators

Course Overview


Robot manipulators are mobile robots equipped with mobility, one or several robotic arms, and a gripper. They have the ability to autonomously move within an environment, detect objects to grasp, and grasp them to bring them to the proper location. They are widely used in warehouses to locate and bring stuff, in malls and airports to clean, in nuclear areas to access dangerous zones, and even underwater to reach difficult locations. Robot manipulators will be used even more in the near future as their skills improve.

In this course, you will learn how to build a complete ROS application to make a mobile manipulator fill a box with the proper objects obtained from another location.


Learning Objectives

  • Do robot navigation in known environments.
  • Use perception to detect the objects to grasp in the background.
  • Move a robotic arm with a gripper to grasp an object.
  • Create a complete application that integrates all these behaviors into a single ROS app based on State Machines.
  • Create a web interface that allows people without ROS knowledge to control the robot’s operation.

Simulation robots used in this course

RB-KAIROS Mobile Manipulator Robot






What projects will you be doing?

[ROS Q&A] 168 - What are the differences between global and local costmap

Set Up the Navigation System

Mapping, Localization, and Path Planning with Obstacle Avoidance…

ROS Mini Challenge #2 - RViz

Create a MoveIt package

Create a MoveIt Package for the industrial robot in order to perform motion planning

Motion Planning

Perform basic Motion Planning through the MoveIt RViz GUI

Perception in MoveIt

Allow the robot to perceive the environment and avoid colliding with other objects

[ROS Q&A] 168 - What are the differences between global and local costmap

Set Up Manipulation

Perform motion planning with Python

ROS Mini Challenge #2 - RViz

Set Up Grasping

Object detection and Pick & Place

Program the Robot Behavior

Using FlexBe to create the behavior of the robot

Design Web Interfaces

Build a web interface to control the mobile robot manipulator using Javascript

What you will learn

Course Syllabus

Unit 1: Setting Up the Navigation System for a Mobile Manipulator
  • Basic Navigation Concepts
  • Creating a Map
  • Using the Map for Navigation
  • Localizing the Robot
  • Path Planning and Obstacle Avoidance
  • Navigation Without a Map
  • Create a Table of Locations to Visit
  • Create a Custom Program That Interacts With the Navigation System
  • Create a Complete Navigation Launch

9 hrs.

Unit 2: Setting Up Manipulation (Part 1)
  • Generating a MoveIt configuration package
  • Define the self-collision matrix
  • Define virtual joints
  • Define Planning Groups
  • Define Robot Poses
  • Define End Effector
  • Setup ROS Controllers
  • Set Up Perception
  • Basic Motion Planning
  • Moving the real robot
  • Add controllers for the Gripper
  • Using Perception in MoveIt

12 hrs.

Unit 3: Setting Up Manipulation (Part 2)
  • The moveit_commander
  • Planning to a joint space goal
  • Executing a trajectory
  • moveit_python
  • Move robot arm by Joint Positions
  • Move robot arm by End Effector position

6 hrs. 

Unit 4: Setting Up Grasping
  •  The simple_grasping package
  • Detecting the graspable object
  • Creating a pick and place task

3 hrs.

Unit 5: Creating the Behavior of the robot
  • Create a basic behavior with FlexBe
  • Creating a new behavior
  • Creating an Actionlib state
  • Adding the Pick&Place pipeline to FlexBe
  • Full behavior pipeline

5 hrs.

Unit 6: Creating th Web interface
  • Creating and running a web page
  • Adding some styles to the page
  • What is Javascript and how to use it
  • Basic setup of Vue.js framework
  • Publishing to a topic from a web page
  • Controlling the robot from a web page
  • Create a web joystick interface
  • Subscribing to a topic from a web page
  • Showing data in the webpage
  • Showing the camera on the web page
  • Showing a map on the web page
  • Using ROS Action Servers from the web
  • Launching the Pick&Place/Navigation system

13 hrs.

Unit 7: Project using the real robot RB-Kairos
  • Safety measures
  • Move RB-KAIROS robot
  • Manipulation
  • Robot Behavior
  • Web Page for Control

5 hrs.

Ready to get started?

Start learning ROS & Robotics online quickly and easily

What’s next

People interested in this course also viewed


ROS for Industrial Robots 101

Learning Path

Robot Manipulation

Top universities choose The Construct for Campus to teach ROS & Robotics.

Pin It on Pinterest