TurtleBot3 SLAM & Localization
Overview
Final Autonomous Robotics project developed in ROS 2 Humble. We engineered a complete robotics stack from mathematical foundations: simultaneous localization and mapping (SLAM) with particle filtering and occupancy grids, AMCL probabilistic localization, and autonomous navigation, deployed both in simulation and on a physical TurtleBot3 Burger robot.
Key Features
- Custom Particle Filter SLAM: Implemented Monte Carlo particle filtering with odometry motion modeling, LiDAR scan matching, and map log-odds updates in Python.
- Occupancy Grid Mapping & Ray Tracing: Computed inverse sensor models with 2D Bresenham ray tracing to construct metric maps of unknown environments.
- ROS 2 Navigation & Transforms: Configured Nav2 stack, costmaps, planner/controller servers, and dynamic TF2 coordinate transforms (map -> odom -> base_footprint -> base_scan).
- Physical Hardware Validation: Deployed the ROS 2 workspace directly to the TurtleBot3 Burger hardware, validating LiDAR perception, wheel encoders, and motor control on a real physical arena track.
Architecture & Implementation
ROS 2 nodes process laser scans (/scan) and wheel odometry (/odom). A custom particle filter node propagates robot pose hypotheses and updates occupancy grid probabilities. The Nav2 planner computes optimal paths around obstacles, with TF2 broadcasting dynamic coordinate frames in real time.
Results & Performance
Successfully constructed high-resolution metric grid maps and executed autonomous navigation goals both in Gazebo simulated mazes and on physical university robotics laboratory tracks without collisions.