Autonomous Navigation & SLAM
Transform mobile robots into autonomous vehicles. Dive into Cartographer 2D SLAM, FAST-LIO 3D LiDAR mapping, Extended Kalman Filter (EKF) sensor fusion, Dijkstra/A*/TEB local trajectory planners, and dynamic obstacle avoidance.
All Guides in Autonomous Navigation & SLAM
Simultaneous Localization & Mapping (SLAM) Fundamentals: From Graph-SLAM to Loop Closure
The core mathematics of SLAM: probabilistic state estimation, frontend scan-matching (ICP/NDT), pose graph formulation, and backend Ceres/g2o non-linear optimization with loop closure.
The SLAM dilemma: To build a map, the robot must know where it is; to localize itself, the robot needs an accurate map.
2D LiDAR SLAM with SLAM Toolbox & Google Cartographer in ROS 2
Step-by-step tutorial comparing SLAM Toolbox vs Cartographer: tuning scan matchers, configuring submaps, running lifelong multi-session mapping, and saving .yaml/.pgm occupancy grids.
SLAM Toolbox is the official default SLAM system in ROS 2 Nav2, featuring built-in lifelong mapping and map merging.
3D LiDAR-Inertial Odometry & Mapping with FAST-LIO2
Implement high-speed, direct 3D LiDAR-inertial state estimation using FAST-LIO2: ikd-Tree dynamic spatial indexing, Iterated Error-State Kalman Filter (IESKF), and Livox/Ouster point clouds.
FAST-LIO2 processes raw 3D LiDAR point clouds at 100Hz+ with sub-millisecond computation per frame.
Adaptive Monte Carlo Localization (AMCL) in ROS 2 Nav2
Localize mobile robots on pre-built 2D maps using particle filters (KLD-sampling), likelihood field beam models, and dynamic particle count adaptation.
AMCL represents robot pose uncertainty as a cloud of weighted particles [x, y, θ].
Nav2 Costmaps: Layered Costmaps, Inflation, Obstacles & 3D Voxels
Master Nav2 2D/3D costmap configuration: static layers, obstacle layers, voxel raytracing, inflation radii, and cost scaling factors for safe obstacle clearance.
Costmaps assign values from 0 (Free Space) to 254 (Lethal Obstacle) to guide path planning.
Global Path Planning: A*, Dijkstra, NavFn & Smac Planners in Nav2
Comprehensive analysis of search-based path planning algorithms in 2D costmaps: Dijkstra vs A* vs Hybrid-A* / Lattice planners for Ackermann and non-holonomic mobile robots.
A* uses a heuristic distance function h(n) to guide the search frontier toward the goal, finding optimal paths 10x-50x faster than Dijkstra.
Local Planners & Trajectory Controllers: TEB vs DWB vs MPPI
Tune and evaluate local trajectory generation: Timed Elastic Band (TEB), Dynamic Window Approach (DWB), and Model Predictive Path Integral (MPPI) controllers for dynamic obstacle avoidance.
Global planners generate a static path; local controllers execute real-time closed-loop velocity commands (cmd_vel) avoiding dynamic moving obstacles at 20-50Hz.
Multi-Robot Fleet Management & Coordination with ROS 2 & Open-RMF
Coordinate fleets of heterogeneous AMRs and robotic arms using ROS 2 namespaces, Zenoh DDS bridging, traffic scheduling, and Open Robotics Middleware Framework (Open-RMF).
Open-RMF (Robotics Middleware Framework) orchestrates traffic sharing across heterogeneous fleets (different robot brands, doors, elevators).