Five-Project Series

Build Mobile Robots with ROS2 you own this product

prerequisites
intermediate Git • intermediate Python • XML • YAML • OOP • linear algebra • debug Python code • intermediate Linux
skills learned
robot simulation • using Python for robotics • ROS2 • sensor fusion • SLAM • navigation
Mat Sadowski
5 weeks · 6-8 hours per week average · INTERMEDIATE
filed under

Welcome to the exciting world of robotics! As a programmer for the RoboPrototypes company, you’ll simulate a mobile robot, implementing basic functionality and progressively improving control with a camera, LiDAR (light detection and ranging) and IMU (Inertial Measurement Units) sensors, an EKF (Extended Kalman Filter), and SLAM (Simultaneous Localization and Mapping). By the end of this series of liveProjects, you’ll have a self-driving robot as well as practical experience designing and working with complex mobile robotic systems.

These projects are designed for learning purposes and are not complete, production-ready applications or solutions.
Get Your Certificate of Completion—Free!
Finish the work in this liveProject to earn a Certificate of Completion. Once you’re done with your build, take a short online test, then contact the liveProject mentor who will review your submissions. Finally, set up a 15-minute video call with the mentor to verify your work.

here's what's included

Project 1 Get Started

Start building your robotics foundation: You’re a programmer helping create prototype robots for the RoboPrototypes company. You’ll get a brief introduction to ROS2, set up the programming environment, and onboard robotics building blocks with basic tutorials. Then you’re ready to create launch files, which are integral to every ROS project. As you create packages in ROS2, you’ll learn to define and use parameters and declare custom messages. When you’re finished, you’ll have a firm foundation for delving deeper into robotics.

$29.99 FREE
try now
Project 2 Simulate a Robot

The future of the RoboPrototypes company is in your hands. It’s your first day at the company, which specializes in bespoke robotic solutions. The CEO has asked you to develop a prototype of a mobile robot that will serve drinks to mall food court customers. An important client will decide whether they’ll provide follow-up funding after they see your prototype in simulation. Working with Gazebo 11 and employing ROS best practices, you’ll create a model for a differential drive robot that meets the provided specifications. Next, you’ll simulate the robot, implement a basic teleoperation node for controlling it, and add velocity multiplexing for safety purposes.

$29.99 $19.99
add to cart
Project 3 Sensors and Sensor Fusion

You’re a programmer at the RoboPrototypes company, and its “dribot”—a prototype of a robot that will serve drinks to customers at a food court—has been running into things (including the CEO’s shin). Using Gazebo 11 and RVIZ2, you’ll add LiDAR (light detection and ranging) and IMU (Inertial Measurement Units) sensors that will provide a view of the environment from the robot’s perspective. To make the most out of the sensor data, you’ll fuse information from multiple sensor sources to better estimate where the robot is in the world.

$29.99 $19.99
add to cart
Project 4 Simultaneous Localization and Mapping

Keep tabs on your robot. RoboPrototype, the company you work for, is preparing to demo its autonomous beverage delivery robot for investors in a food court next month. Your CEO has tasked you with setting up SLAM (Simultaneous Localization and Mapping) on the robot, making it possible to locate the robot at all times. Using the Slam Toolbox, you’ll equip the robot with the ability to create a map of its environment as well as pinpoint its location on the map. You’ll also get firsthand experience mapping on real data captured on a Turtlebot3 Burger, a widely used mobile robot platform.

$29.99 $19.99
add to cart
Project 5 Navigation

Let your robot drive itself! Your company, RoboPrototypes, is preparing to demo its autonomous beverage delivery robot to investors soon, but the technician who was supposed to drive it has quit. Since there’s no one to take his place, your CEO has tasked you with upgrading the robot with automatic navigation. You’ll set up Nav2 to load your desired parameters, implement navigation planners and controllers, and optimize navigation by tuning costmap parameters. Once you send your waypoint goals to Nav2 telling your robot where to go, it’ll be ready to quench thirsts at a food court near you.

$29.99 $19.99
add to cart

project author

Mat Sadowski

Mat Sadowski is a robotics consultant with eight years of experience in the industry. He has experience working with over thirty worldwide clients on such platforms as mobile robots, unmanned boats, industrial robots, and even lawnmowers. In his spare time, Mat is developing the robotics newsletter Weekly Robotics. You can get up to date on his work by following him on LinkedIn or by following his blog.

Prerequisites

These liveProjects are for programmers who are interested in gaining practical experience building mobile robots with ROS2 or who want to switch from ROS1 to ROS2. To follow these liveProjects you’ll need a computer running Ubuntu 20.04 capable of running Gazebo and be familiar with the following:

TOOLS
  • Git
  • XML
  • YAML
  • Python
TECHNIQUES
  • Linux basics (installing and building software, working with command-line tools, shell basics, working with multiple terminals)
  • Linear algebra (translations, rotations, and coordinate systems)
  • Probability theory
  • Physics (kinematics and dynamics)

you will learn

In this liveProject series, you’ll acquire essential skills and knowledge for designing and working with complex mobile robotics systems including

  • Use ROS2 for mobile robotics
  • Use Python to create ROS2 nodes
  • Create ROS2 packages/nodes
  • Test and troubleshoot ROS2-based systems
  • Work with Gazebo 11 simulator
  • Design a robot using XACRO/URDF
  • Work with bag files
  • Use Extended Kalman Filter for sensor fusion
  • Slam with Slam Toolbox
  • Robot navigation with Nav2

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.
Get Your Certificate of Completion—Free!
Finish the work in this liveProject to earn a Certificate of Completion. Once you’re done with your build, take a short online test, then contact the liveProject mentor who will review your submissions. Finally, set up a 15-minute video call with the mentor to verify your work.
includes 5 liveProjects
liveProject $41.99 $69.99 self-paced learning
RECENTLY VIEWED