Summer SLAM — Visual SLAM Study Path
Rose-Hulman · Advised by Dr. Berry · Jun 2026 – Aug 2026
A 12-week independent research project that turns core concepts from Probabilistic Robotics and Visual SLAM: Fourteen Lectures into a reproducible, hardware-backed tutorial series for mobile robotics. I built a mecanum-drive robot platform from scratch with a deliberately split architecture: an STM32F103 owns the hard real-time layer, running motor PWM, hardware-assisted encoder capture, and PID velocity loops, while a Raspberry Pi 4B owns the ROS2 perception and localization stack. The two communicate over a CAN bus built from the STM32’s bxCAN peripheral, SN65HVD230 transceivers, and an MCP2515 SPI-CAN bridge on the Pi, integrated through Linux SocketCAN and a ROS2 bridge node.
The study path advances through encoder-based mecanum odometry, motion uncertainty modeling from repeated-trial drift data, probabilistic range-sensor modeling, particle filter Monte Carlo Localization, camera intrinsic calibration, ORB feature extraction and matching, frame-to-frame visual odometry with encoder-assisted scale resolution, and visual-inertial fusion across camera, encoder, and IMU. Mecanum wheels were a deliberate choice: their roller-slip noise makes odometry drift severe enough that probabilistic correction and visual feedback show clear, measurable value in every experiment. Each module ships as a reproducible tutorial with code, data logs, and validation plots. Stretch goals extend the fusion work into EKF SLAM and a factor-graph-style multi-sensor pipeline.
Highlights
- Built a mecanum robot platform from scratch: STM32F103 real-time control layer linked to a Raspberry Pi 4B ROS2 stack over a custom CAN bus
- Implemented the full localization pipeline: encoder odometry → particle filter MCL → camera calibration → ORB visual odometry → visual-inertial fusion
- Published each module as a reproducible tutorial with code, data logs, and validation plots on GitHub