A practical approach to learn the foundation of mobile robots SLAM and Navigation with ROS
What you'll learn
- Theoretical foundations of 2D and 3D localization
- Transformation between frames in 2D and 3D Spaces
- The powerful feature of the tf package to represent frames and perform transformation and localization
- Theoretical foundation of localization and mapping (SLAM)
- Background on navigation concepts (global path planning, local path planning, collision avoidance)
- Difference between Map-Based Navigation and Reactive Navigation
- The navigation stack of ROS (move_base, amcl, gmapping)
- Prior knowledge of the basic concepts of the Robot Operating System (ROS) (required)
- Knowledge in C++ and/or Python Programming language
- Background on the concepts of Linear Algebra, Trigonometry, and Geometry
- Want to learn ROS
- Eager to learn robotics navigation
- OCT 9, 2020: I added the installation instruction of Turtlebot3 on ROS Noetic
Localization, mapping, and navigation are fundamental topics in the Robot Operating System (ROS) and mobile robots. However, it is very complex to learn. Usually, beginners find it difficult to even know where to start. The typical tutorials in ROS give high-level information about how to run ROS nodes to performs mapping and navigation, but they do not give any details about the technical aspects. Some other courses focus more on the technical aspects, which is mathematically complex but does not give a clear link to how these concepts are tied with the ROS navigation stack.
This ROS for Beginners II: Localization Navigation and SLAM course addresses this gap and follows a practical approach to introduce new learners to mobile robot navigation foundations and how it is implemented in ROS. The ROS for Beginners II: Localization Navigation and SLAM course is designed to introduce you to the world of mobile robot navigation in a quick and effective manner.
In this course, I presented detailed coverage of the most important package in ROS for navigation: the tf package! Without understanding this package, it will be difficult to deeply understand how navigation works in ROS. Although there are tf tutorials, the tf package heavily relies on important theoretical concepts not presented in ROS tutorials. This ROS for Beginners II: Localization Navigation and SLAM course provides a systematic introduction to the necessary theoretical background and complement with demonstration and programming activities of the tf package utilities and API.
This ROS for Beginners II: Localization Navigation and SLAM course assumes that you have some background on the main concepts of Robot Operating System (ROS), such as ROS nodes, ROS topics, ROS services, and an understanding of the basic notion of motion with ROS. If you do not have these skills, I would recommend first enroll in my course ROS for Beginners: Basics, Motion, and OpenCV to get the necessary background.
My experience with ROS
I have been programming with ROS for many years both in academic and industrial projects. I am very passionate to develop programs with ROS. I have also been teaching ROS at the University and providing training programs. I am the R&D Director of Gaitech Robotics, and I have developed many ROS packages for robots and drones. I have been leading international scientific activities around ROS, and in particular, I am the editor of five volumes of books with Springer entitled Robot Operating System, The Complete Reference. I gained a lot of experience in what difficulties new users encounter to learn ROS and this contributed to pin right to the point addressing these problems through the different lectures of the ROS for Beginners II: Localization Navigation and SLAM course.
Who this course is for:
- Beginner ROS developers and users
- Students at Universities learning ROS
- Anyone interest to know about the navigation concepts of ROS and mobile robots
- Curious about robotics
- Whoever wants to learn ROS navigation without wasting time
Created by Anis Koubaa
Last updated 10/2020
Size: 1.43 GB