Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Mastering ROS 2 for Robotics Programming
  • Table Of Contents Toc
Mastering ROS 2 for Robotics Programming

Mastering ROS 2 for Robotics Programming - Fourth Edition

By : Lentin Joseph, Jonathan Cacace
close
close
Mastering ROS 2 for Robotics Programming

Mastering ROS 2 for Robotics Programming

By: Lentin Joseph, Jonathan Cacace

Overview of this book

The rising demand for advanced robotics software has made proficiency in frameworks like ROS 2 essential for engineers and enthusiasts alike. Lentin Joseph, co-founder of RUNTIME Robotics, and Jonathan Cacace, PhD in robotics, help you grasp the foundational concepts and practical applications in this comprehensive fourth edition updated to cover the latest LTS release from 2024—ROS 2 Jazzy. Starting with a solid introduction to ROS 2, including core components and tools, the chapters get you ready to start programming and using its key features confidently. Building on this, the book focuses on 3D robot modeling and simulation with the new Gazebo Sim, supported by ROS 2 controllers. You’ll explore high-level features such as Nav2 for navigation and MoveIt 2 for manipulation, which are crucial for developing advanced systems. You'll also dive into aerial robotics with ROS 2 and learn how to build real-world robots using Micro-ROS. The concluding chapters cover advanced topics like CI/CD workflows, interfacing ROS 2 with large language model (LLM) agents for intelligent planning, and applying deep reinforcement learning for autonomy. By the end of this book, you'll have a strong foundation in ROS 2, along with the skills needed to build sophisticated, real-world robotic applications.
Table of Contents (22 chapters)
close
close
Preface
Lock Free Chapter
1
Part I: ROS 2 Programming and Simulation
7
Part II: ROS 2 Applications: Navigation, Manipulation, and Control
13
Part III: Advanced Applications and Machine Learning
20
Other Books You May Enjoy
21
Index

Implementing ROS 2 Concepts

In the last chapter, we discussed various ROS 2 concepts that we need to know before starting to program with ROS 2.

In this chapter, we will continue with a few topics we left out in Chapter 2. After discussing these concepts, we will start implementing them using rclcpp, the ROS 2 client library for C++.

This chapter will help you build a strong foundation for implementing different ROS 2 concepts. We will see the detailed implementation of ROS 2 concepts using C++ that can be used in various robot use cases. It is very important to understand all these basic ROS 2 concepts before diving into the more advanced concepts of ROS 2.

Here are the important topics we will discuss in this chapter:

  • What is a ROS 2 action?
  • What is a ROS 2 parameter?
  • What is a ROS 2 launch file?
  • How do we build a ROS 2 package?
  • Introduction to ROS 2 client libraries
  • Diving into ROS 2 nodes
  • Implementing ROS 2 topics in C...
CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Mastering ROS 2 for Robotics Programming
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist download Download options font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon