Skip to content

RoboticsJuly 2025 - November 2025

Leaf Collection Robot

Autonomous Mobile Robotics with ROS2 & LiDAR SLAM

Leaf Collection Robot
  • Autonomous Navigation

    Nav2 path planning on a Cartographer map

  • Leaf Collection

    String roller sweeping into a removable box

  • Dual Control

    Both autonomous and manual control modes

System Overview

This robot combines a leaf-sweeping roller and removable box with manual and autonomous ROS2 control.

A Jetson Nano handles navigation; an ESP32 regulates encoder-equipped motors through Micro-ROS. Reported results include indoor mapping, moderate navigation accuracy, and responsive manual collection, with outdoor inconsistencies and roller, storage, and computing limitations.

How it actually works

From a key press to a turning wheel

Walk the robot's documented ROS2 pipeline, from teleop and Nav2 commands through Micro-ROS to the ESP32's 20 ms wheel loops, its two batteries, and the mapping stack.

Things to try

  • In Wheel loop, pick Reverse right to see its pins and driver.
  • In Power, turn off the Roller switch and watch battery 1's runtime.
  • Open Navigation and compare it with Drive command.

Built from the project's own code and documents.from code: A constant or rule copied from the project's repositoryfrom report: A value from the project's report or presentationsimulated: Computed in your browser by running the project's logic

How it works

Coordinate navigation with ground-level collection.

  1. 1

    Build a map

    Combine LiDAR-derived motion and wheel odometry in Cartographer, inspect the occupancy grid in RViz, and save the map.

  2. 2

    Choose a control mode

    Set a navigation goal through Nav2 or use keyboard teleoperation; both paths supply velocity commands to the Robot Core node.

  3. 3

    Drive with encoder feedback

    Convert velocity commands into motor RPM targets and send them over serial Micro-ROS to the ESP32 for feedback-based PWM control.

  4. 4

    Sweep leaves into storage

    Operate the roller to sweep leaves into the collection box, which can be detached for emptying and cleaning.

Project Demo

The project's own demonstration footage.

Engineering features

  • Built an autonomous and manually controlled leaf-collection robot using the ROS2 framework, combining a Jetson Nano for navigation with an ESP32 for real-time motor and encoder control.

  • Implemented LiDAR-based SLAM to generate 2D maps, detect obstacles, and enable autonomous path following.

  • Fused encoder wheel odometry with RF2O LiDAR odometry in Cartographer for mapping and localization.

  • Designed the roller-collection mechanism and its separate motor driver, and the encoder motors' PI speed control on the ESP32.

Inside the build

The control logic, integration and design decisions, one note at a time.

01

Separate navigation from motor regulation

The Jetson handles ROS2 navigation while the ESP32 reads encoder counts and regulates motor RPM. A 20 ms measurement interval feeds speed estimates back to ROS2 and a local controller. Reported tuning uses proportional and integral terms without a derivative term, with signed PWM determining speed and direction.

02

Two odometry inputs for mapping

Robot Core converts encoder feedback into wheel odometry, while RF2O estimates motion from LiDAR scans. Cartographer uses these inputs to build the occupancy grid. The saved map then supports Nav2 localization and planning, with RViz exposing goals, planned paths, and the robot's estimated pose.

03

A serviceable roller and collection box

Plastic strings attached to the roller sweep leaves toward the box. The roller is split for printing, and its motor uses a separate L298N driver with on/off control. A flexible box tip sits near the ground, while an adjustable holder and handle support positioning and removal of the collection box.

Build artifacts

Figures taken from the project's own report or presentation.

Map example reproduced as Figure 4.1 in the leaf collection robot report
The report's generated-map example, Figure 4.1, extracted from PDF page 30.

Evidence & limitations

What the project documents show, and where each claim comes from.

Indoor mapping and navigation results

The results chapter reproduces a generated map and describes autonomous navigation with moderate accuracy. Mapping worked in controlled indoor conditions, while outdoor operation showed inconsistencies associated with uneven surfaces and varying conditions.

Manual collection and system integration

The report describes prompt keyboard response, stable manual movement, and leaf pickup into the box in narrow and open campus spaces. It also reports reliable communication between the ESP32, Jetson Nano, and sensors during testing.

Project Resources

The original documents behind this case study.

Next projectInventory Management SystemFull-Stack Solution with AI-Powered Sales Forecasting

Hiring for robotics or embedded work?

I'm looking for internships. The rรฉsumรฉ has the short version.