SLAM and Localization

SLAM & Localization

Simultaneous Localization and Mapping (SLAM) is the foundational capability that transforms a remote-controlled machine into an autonomous robot. I specialize in deploying and tuning SLAM systems for competition and research environments.

Mapping with SLAM Toolbox

I use the ROS2 SLAM Toolbox for real-time 2D occupancy grid mapping:

  • Online Synchronous SLAM โ€” Real-time map building using scan matching for competition arena mapping
  • Loop Closure โ€” Automatic detection and correction of accumulated drift errors as the robot revisits previously mapped areas
  • Map Serialization โ€” Saving and loading maps for persistent localization across power cycles
  • Dynamic Environment Handling โ€” Strategies for dealing with moving obstacles and changing environments during competition

Localization with AMCL

For localization within known maps, I deploy Adaptive Monte Carlo Localization (AMCL):

  • Particle Filter Tuning โ€” Optimizing particle count, distribution, and resampling parameters for accuracy vs. computation trade-offs
  • Multi-Sensor Fusion โ€” Combining LiDAR scan matching with wheel odometry for robust pose estimation
  • Global Localization โ€” Recovering the robot's position from an unknown initial pose using dense particle distributions

Sensor Fusion

I integrate Extended Kalman Filters (EKF) via robot_localization to fuse multiple odometry sources:

  • Wheel encoder odometry for short-term accuracy
  • IMU data for orientation and angular velocity
  • Visual odometry from camera systems for drift correction
  • Configurable covariance matrices for sensor reliability weighting
See SLAM in My Projects โ†’