← Back to work

A pelican-inspired autonomous robot that collects waste using LiDAR-based perception and YOLO camera detection.

RoleRobot Navigation, 3D Design, and CAD
ForAutonomous waste collection in public spaces
Team2 — Robotics Students
TimelineMarch 2026
hero screenshot — PELICAN
View on GitHub
01 — Why We Built This

Why We Built This

Most cleaning robots wait for trash to be placed in them, or need someone to drive them to it. PELICAN flips that around — instead of waiting, it wanders indoor spaces on its own, watches for litter with an onboard camera, and comes to the trash instead of the other way around.

When the camera spots something — a bottle, a cup, a can — the robot switches out of its default wandering behavior, tracks the object, and moves to align it in the center of its view.

Once it's in position, it opens its lid — like a pelican's beak — to receive the trash. That's where the name comes from.

02 — System Architecture

System Architecture

Perception

Camera + LiDAR

  • RGB/USB camera + YOLOv8 — detects trash in real time
  • 360° LiDAR (LDS-01) — maps the space for SLAM + obstacle avoidance
  • 5 Hz update rate, 0.12–3.5 m range
Compute

Split across two nodes

  • Raspberry Pi 3B+ — hardware drivers, motor control, LiDAR
  • Desktop PC — YOLOv8 inference + tracking logic
  • Coordinated over a shared ROS Domain ID
Control

PID tracking + lid actuation

  • Custom PID node — angular + linear alignment
  • Publishes to /cmd_vel to approach the target
  • Dynamixel lid motor triggers once aligned
Hardware Stack

TurtleBot3 Waffle base · LDS-01 360° LiDAR · RGB/USB camera · Dynamixel motors ×2 (wheels) + ×1 (lid) · OpenCR microcontroller · Raspberry Pi 3B+

Detection runs off-robot: the desktop handles YOLOv8 inference and sends tracking commands back to the Pi over the network.

03 — Design Process

Design Process

PELICAN design process — sketch, CAD model, cardboard mockup, 3D-printed shell, final assembly, and live testing

Sketch → CAD model → cardboard mockup → 3D-printed shell → painted final assembly — then straight to live testing with a bottle and the detection feed running.

04 — The Pipeline

The Pipeline

1

Wander

Explores at a steady 0.12 m/s, using LiDAR to avoid obstacles while the camera scans for trash.

2

Track

Once YOLO detects an object, PID control steers toward it — up to 0.25 m/s forward, 0.8 rad/s turning, aligning within a 20px deadband.

3

Aim

Fine positioning once the robot is close and aligned, right before the lid actuates.

4

Deposit

The lid motor opens (45°–145°) to receive the item, then the robot goes back to wandering.

Interrupts

If something's within 0.5 m, PELICAN backs up and turns regardless of its current state — and if nothing's detected for 7 seconds while tracking, it gives up and returns to wandering.

Wandering and obstacle avoidance

YOLO detection and tracking

Detection, tracking, and disposal all run in one continuous loop — no human steps in unless something goes wrong.

05 — Challenges

Challenges

Remapping visual space to motor space.

Our camera sits at a 45-degree upward tilt, breaking the standard assumption that object position in frame maps directly to heading and distance. We built a custom correction model to translate what the camera saw into the correct motor response.

Tuning PID against a live camera feed.

Detection noise and lighting changes injected error into tracking, wrong gains meant the robot either oscillated around the target or drifted too slowly to catch it.

Balancing search and safety.

The robot had to wander for trash, interrupt itself for obstacles, and still catch a valid detection mid-interrupt, prioritizing either one too heavily broke the other.

DDS discovery across two machines.

Detection runs off-robot on a desktop PC, so ROS_DOMAIN_ID had to match exactly between the Pi and desktop. Discovery state doesn't persist across reboots, so a mismatch meant nodes ran clean with zero errors, just no data flowing.

06 — What's Next

What's Next

  • Increase capacity. Enable the system to carry and manage a larger volume of waste.

  • Add audio feedback. Sound or voice cues to make the robot's behavior clearer to people nearby.

  • Extend perception range. Detect trash beyond the current camera view with wide-angle lenses or a multi-camera setup.

  • Improve detection accuracy. Expand training data to recognize more object types more reliably.

  • Speed up response time. Optimize navigation and control for quicker movement and less latency.

Next case study
Alio: AI Copilot for Elder Care