What you'll learn:
- Discover the Navigation 2 stack with hands-on experiments
- Create a map with SLAM in ROS2
- Make a robot navigate while avoiding obstacles
- Work with Navigation using a Gazebo simulation
- Understand the Nav2 architecture
- Tune the Navigation parameters
- Experiment with the global planner, local planner, and recovery behavior
- Create your own custom world in Gazebo building editor
- Get the steps to adapt a custom ROS2 robot for the Navigation 2 stack
- Control Nav2 with Python using the Simple Commander API
- Get to know what TFs are important for the navigation
- Understand the map and odom frames
- Use the slam_toolbox package for mapping and SLAM
- Practice more with additional activities and challenges
You have learned ROS 2 basics and want to start with SLAM and the Navigation 2 stack?
Or you have already started but you feel completely lost?
In this course you will finally understand what the Navigation 2 stack is, step by step. And you will be able to apply this knowledge to your own ROS2 robotics projects.
And to get started, no need to buy any hardware! You will be able to complete the course with a Gazebo simulation.
-- Why this course?
I realized that (while doing it myself) learning the Navigation stack is really not easy. If you thought that learning ROS2 was hard, then wait until you start with Nav2!
There are not so many resources online, and just getting started with the existing documentation can be a nightmare - unless you’re already a ROS expert. For many parts, in order to understand, you need so many prerequisites in ROS2 that it can become overwhelming.
Because of this, understanding Navigation2 would take you weeks of painful learning and frustration. That’s actually exactly what happened to me. And I don’t wish that to you.
That’s why I created this course: so you can SAVE COUNTLESS HOURS and learn the Navigation 2 stack with minimum knowledge of ROS2, in the easiest possible way.
Instead of dropping you in a sea of documentation I will guide you to make you experiment first, and then progress in a smooth way towards a practical understanding.
To be clear, this course is not for complete ROS2 beginners, you need to have some ROS2 basics. But then, once you have the basics, you will be able to easily follow the course and learn Nav2 efficiently.
My goal is to make Navigation accessible to anyone with a basic to intermediate level of ROS2.
-- How do I teach?
If you’ve taken other ROS 2 courses from me you know that I’m not here to waste your time.
My teaching method is quite simple:
Step by step
Going to the point
Learn while doing
Also I strongly focus on the “why” behind what you learn. The goal is not just to make you blindly repeat some steps, but to understand why those steps matter.
And don’t take my word for it - here are some reviews from fellow students/researchers/engineers/teachers who took my ROS 2 course on Udemy:
“Best course on ROS2 I’ve taken! Other courses (different sites/platforms) made it confusing but this course makes it so clear and easy to understand while letting you try on your own. I am definitely learning a lot in a painless and simple way. I should have gotten this course from the beginning.” - Miguel Martinez G.
“Overall very satisfied. I’ve a strong background in programming, but at a higher level (web mostly) and the elegant, fluent and clean approach of this course has leveraged my introduction to the ROS environment in a short amount of time, without the struggle of going through a lot of documentation” - Devis D.
“This is the best course in ROS2 I’ve ever seen” - Aleksandar K.
“Great course content, straight to the point and very easy to follow” - Kevin M.
-- What will you do and learn in the course?
You will follow a progression line that allows you to experiment first, so you get an intuitive approach to Navigation. And only then we reinforce the learning with some explanations and a bit of theory, followed by more practice.
In the course you will:
Install ROS2 and the Navigation 2 stack.
Generate and save a map with SLAM (Simultaneous Localization and Mapping).
Make a robot navigate using this map.
Understand how Navigation 2 works and what are the different components of the stack: global planner, local planner, recovery behavior, TFs, etc.
Build a custom Gazebo world to be able to create a simulation of your own environment.
Discover the steps to adapt your own robot for the Navigation 2 stack.
Interact with Nav2 using the Python Simple Commander API.
Each section is built on top of the previous ones, and you will reinforce what you’ve learned with extra challenges to practice more.
So, to learn the Navigation stack and save countless hours, don’t wait anymore and enroll in the course today!
Oh and you don’t take any risk here, because you also get a 30-day money back guarantee if you’re not fully satisfied - no questions asked.
See you in the course!
Note - this course is not for you if:
You are a complete ROS 2 beginner. In this case, you need to learn ROS 2 Basics first
You want to learn the Navigation 1 Stack for ROS1 (not exactly the same thing)