โ Back to Projects
๐ Learning Project
Mapless Navigation with ROS2 + LiDAR Odometry
Making a robot move autonomously in simulation โ no pre-built map, just sensors and local planning.
The Goal
Simple goal: make a robot navigate autonomously without any pre-built map. I wanted to understand how local planners work, how LiDAR sensors feed into navigation, and how to set up a complete ROS2 navigation pipeline inside NVIDIA Isaac Sim.
Sensors I Used
Ouster 3D LiDAR (OS0/OS1)
Tested with FAST-LIO and LIO-SAM to understand 3D LiDAR-IMU odometry and SLAM. Used to explore how motion estimation works with point cloud data.
NVIDIA Isaac Rotary 2D LiDAR
Used for real-time obstacle detection and mapless navigation with Nav2. Feeds directly into Nav2's local costmap for obstacle avoidance.
What I Built
- โMapless navigation setup using ROS2 Nav2 โ robot moves to goals using only LiDAR-based obstacle avoidance
- โFAST-LIO and LIO-SAM tested separately to understand how they estimate motion
- โIntegrated sensor data pipeline: Isaac Sim โ ROS2 โ Nav2
- โConfigured TF frames, ROS2-Isaac Sim bridge, and full navigation pipeline
- โTested Nav2 local planners: RPP, DWB, and TEB
What I Learned
This project gave me a clear hands-on understanding of how robots navigate in practice:
- โHow local planners work in Nav2 (RPP, DWB, TEB) and when to use each
- โWhy mapless navigation relies entirely on the local planner โ no global map, no global planner
- โThe difference between 3D LiDAR odometry (FAST-LIO) and SLAM (LIO-SAM)
- โHow LiDAR scans form costmaps and why costmap tuning matters
- โSetting up TF frames, sensor bridges, and navigation pipelines from scratch in ROS2
Tools and Tech
ROS2Nav2Isaac SimFAST-LIOLIO-SAMOuster 3D LiDARNVIDIA Rotary LiDARTF2RViz2Python