ROS2 for Beginners: Robot Programming with C++ from Scratch
Learn to program real and simulated robots from scratch using ROS2 Humble and Modern C++ with 5 hands-on robotics projects.
- 8
- Chapters
- 32
- Topics
- 164
- Lessons
- 1900
- Total XP
About this course
A complete, step-by-step introduction to Robot Operating System 2 (ROS2 Humble) using Modern C++ (rclcpp) designed for absolute beginners. Master the Linux terminal, C++ classes, smart pointers, ROS2 workspaces, nodes, publishers, subscribers, services, custom interfaces, parameters, launch files, TF2 transforms, 3D URDF/Xacro modeling, RViz2, and Gazebo simulation — building 5 progressive robotics projects culminating in an autonomous LiDAR obstacle-avoiding robot.
What you'll learn
- Navigate the Linux terminal, configure ~/.bashrc, and inspect live robot graphs with ROS2 CLI and rqt_graph
- Write clean Modern C++17 for robotics: classes, inheritance, std::shared_ptr, lambdas, and std::bind callbacks
- Create and compile ament_cmake C++ packages using colcon build, package.xml, and CMakeLists.txt
- Stream and process real-time sensor data using C++ Publishers, Subscribers, and Wall Timers
Prerequisites
- No prior robotics or ROS experience required. Every Linux and C++ concept is explained step by step for beginners!
Course outline
Chapter 1
Welcome to ROS2, Linux Essentials & Turtlesim
4 topics
Chapter 1
Welcome to ROS2, Linux Essentials & Turtlesim
Discover how modern robots think, master essential Linux terminal commands, set up ROS2 Humble, and drive your first simulated robot in Turtlesim.
- What is ROS2 & How Do Robots Think?
- Linux Terminal Survival Guide for Robotics
- Installing ROS2 Humble & Sourcing Your Environment