Imad-Eddine NACIRI
← Back to Projects

SLAM-Based Autonomous Navigation in ROS 2

Implemented a complete SLAM-based autonomous navigation stack in ROS 2, enabling a mobile robot to build maps of unknown environments and navigate autonomously using sensor fusion, path planning, and obstacle avoidance.

SLAMROS2Autonomous NavigationLiDARRobotics
SLAM Navigation System

Overview

This project implements a full autonomous navigation pipeline using SLAM (Simultaneous Localization and Mapping) in ROS 2. The robot can explore unknown environments, build accurate maps, and navigate to goal positions while avoiding static and dynamic obstacles.

Key Features

  • SLAM Mapping: Real-time map generation using LiDAR data with loop closure detection
  • Autonomous Navigation: Goal-based navigation with dynamic path planning
  • Obstacle Avoidance: Real-time obstacle detection and avoidance using sensor fusion
  • ROS 2 Integration: Built on the Nav2 stack with custom configuration and tuning
  • Sensor Fusion: Combines LiDAR, IMU, and odometry for robust localization

System Components

  1. SLAM Node: Generates occupancy grid maps from LiDAR scans
  2. Localization: AMCL-based particle filter localization within known maps
  3. Path Planning: Global (Dijkstra/A*) and local (DWB) planners
  4. Recovery Behaviors: Automated recovery from stuck situations

Technologies Used

  • ROS 2 (Humble/Iron)
  • Nav2 Navigation Stack
  • SLAM Toolbox
  • LiDAR sensors
  • Gazebo simulation
  • Python / C++

Results

The system demonstrated reliable navigation in both simulated and real-world indoor environments, achieving consistent goal completion rates with smooth trajectory execution.

Contributors

  • Imad-Eddine NACIRI