Skip to content
SUNSET// Sejong
Back to archive
Component U1Active

Autonomous Cart Robot

A self-navigating cart built to move parts and equipment between lab benches without a human pushing it.

RoboticsAdvanced2025–present

Implementation

The cart is a differential-drive platform carrying a 2D LiDAR, an IMU, and a Raspberry Pi 4 running ROS2. It builds a map of the lab floor with SLAM Toolbox on first run, then localizes against that map for subsequent trips. Route requests currently come from a fixed set of named waypoints entered over SSH — there's no app or UI yet. The motor controller is a separate STM32 board that takes velocity commands over UART and closes the loop on wheel encoders.

Architecture

Nav2 handles global/local planning and obstacle avoidance on top of the SLAM Toolbox occupancy grid. Sensor fusion (LiDAR + IMU + wheel odometry) runs through robot_localization's EKF node before being fed to the planner. The STM32 motor controller is treated as a black box behind a thin ROS2 driver node that translates Twist messages into UART packets.

Technologies

ROS2C++Nav2LiDARRaspberry Pi 4

Known limitations

  • No dynamic obstacle re-planning faster than ~2 Hz — fast-moving people can cause the cart to stop rather than smoothly avoid them.
  • Waypoints are hardcoded per building floor; moving the cart to a new room requires a manual remap.
  • No payload weight sensing, so the cart doesn't know if it's actually carrying anything.

Members

  • Jiho Park
  • Sujin Oh
  • Daniel Cho

Related projects