Lightweight, Dockerized System for SLAM and Indoor Navigation
KouBot is a mecanum-wheeled indoor robot designed for autonomous navigation using ROS 2. It runs entirely in Docker on a Raspberry Pi 4B and features holonomic movement, SLAM, and real-time navigation for robust indoor autonomy.
Design and build an affordable, ROS 2-based indoor robot with full autonomous navigation capabilities, leveraging Docker for reproducibility and portability.
All ROS 2 packages and launch files are containerized, allowing isolated, consistent development environments and simplifying deployment on the Raspberry Pi.
KouBot supports manual control through a Bluetooth-connected PS4 controller, allowing for smooth and precise holonomic movement in all directions. This setup was essential for early testing, calibration, and validating motor functionality before implementing full autonomy.
Using SLAM Toolbox, KouBot was able to construct accurate 2D maps of its environment in real time.
Here is the resulting map:
KouBot currently performs localization using LiDAR-based scan matching. In the future, IMU data will be fused with LiDAR-derived odometry using an Extended Kalman Filter (EKF) to enhance robustness and accuracy.
KouBot uses the ROS 2 Nav2 stack to navigate point-to-point, avoiding obstacles and reaching goals with high precision.
While KouBot has proven its core SLAM and navigation capabilities, future improvements will focus on: