pboon09
Institute of Field Robotics (FIBO), KMUTT

Autonomous Ackermann Navigation with 3D LiDAR Localization

November 2025 – December 2025

About the project

Autonomous navigation for CARVER, an Ackermann-steered mobile robot, built for the Advanced Robotic Control and Simulation with ROS 2 course.

A car-like robot cannot turn in place, so path following depends on steering geometry, and localization has to hold up along curved paths.

Localization runs on a Livox 3D LiDAR with the MOLA package, and micro-ROS firmware on STM32 boards handles steering, sensing, and the driver interface. Three path followers, Pure Pursuit, Stanley, and a combination of the two, are compared on the robot to see which keeps CARVER on its path most accurately and smoothly.

3Path followers compared
3DLiDAR localization with MOLA

Process

  1. Localize with 3D LiDAR

    A Livox 3D LiDAR and its IMU feed the MOLA LiDAR localization package, which tracks the robot against a prebuilt map and publishes its pose.

  2. Follow the path

    The controller node reads the path and the pose, then runs Pure Pursuit, Stanley, or a combination of the two to output a target speed and steering angle.

  3. Switch between manual and autonomous

    A mode node chooses between the controller output and manual commands from the accelerator handle, so a driver can switch to manual control.

  4. Drive the hardware with micro-ROS

    STM32 boards running micro-ROS read the BNO055 IMU, close the steering loop with an absolute encoder and PWM motor driver, and handle the driver interface with its emergency switch and lights. An ODrive S1 Pro runs the drive motor from the velocity setpoint.

  5. Compare the controllers

    Each path follower is measured and compared for how accurately and smoothly it keeps CARVER on its path.

Figures

CARVER.
CARVER.
First-person view while driving.
Point cloud map of FIBO.
Point cloud map of FIBO.
Building the map.
ROS 2 system architecture.
ROS 2 system architecture.
Combined Pure Pursuit and Stanley on the FIBO path.
Combined Pure Pursuit and Stanley on the FIBO path.

System

RobotCARVER, Ackermann steering
SensorsLivox 3D LiDAR, BNO055 IMU, absolute steering encoder
LocalizationMOLA LiDAR localization on a prebuilt map
ControllersPure Pursuit, Stanley, combined Pure Pursuit and Stanley
DriveODrive S1 Pro for the drive motor, PWM motor driver for steering
EmbeddedSTM32 boards with micro-ROS
SoftwareROS 2, micro-ROS, RViz
CourseAdvanced Robotic Control and Simulation with ROS 2