Mobile Autonomous Room Cleaning Organizer
I recently completed an ambitious robotics project: Autonomous Smart Cleaning Robot. It’s an intelligent cleaning system I built using a Raspberry Pi 5, YDLIDAR X3, TS100 6-DOF robotic arm, and an ESP32 wall-mounted control panel.
It’s designed to autonomously map rooms, detect objects on the floor, pick them up with its robotic arm, and sort them into designated containers.
What It Can Do
The Autonomous Smart Cleaning Robot includes the following features:
- SLAM Mapping: Creates a detailed map of the room using LIDAR (8m range, 360° scanning)
- Object Detection: Identifies toys, socks, papers, bottles using YOLOv8 AI vision
- Robotic Manipulation: 6-axis arm picks up detected objects and sorts them
- Smart Scheduling: Set cleaning times for each day of the week via touchscreen
- Remote Control: Manual control through wall panel, web interface, or MQTT
- Auto-Charging: Returns to charging station when battery is low
What You Need
To build this project, I used:
- Raspberry Pi 5 (8GB RAM recommended)
- TS100 Tank Robot (6-DOF arm with gripper, tracked chassis)
- YDLIDAR X3 (360° laser scanner, 8m range, 10Hz)
- ESP32 + 3.5″ TFT Touch Display (wall-mounted control panel)
- Pi Camera Module (for object recognition)
- DS3231 RTC Module (for scheduling)
- 12V LiPo Battery + voltage regulators
- Some wires and mounting hardware
How It Works
- Initial Setup: Robot maps the clean room using LIDAR, creating a reference map
- Scheduled Cleaning: Starts automatically based on your weekly schedule
- Object Detection: Compares current LIDAR scans with reference map to find new objects
- AI Recognition: Camera + YOLOv8 identifies what type of object it is
- Smart Sorting: Robot arm picks up items and places them in correct containers
- Wall Control Panel: Three main modes:
- Welcome Mode: Room mapping and boundary setup
- Schedule Mode: Set automatic cleaning times
- Manual Mode: Direct robot control with D-pad interface
Software Architecture
The system runs on:
- Python + OpenCV for vision processing
- ROS2-compatible SLAM for mapping
- MQTT for real-time communication
- Flask web interface for browser control
- Arduino code on ESP32 for touchscreen UI
Key Innovation
Unlike basic vacuum robots that get stuck when encountering objects, this robot actively identifies, picks up, and sorts items before cleaning. It knows the difference between a toy that belongs in the toy box and paper that goes to recycling.
Important Note
⚠️ This is an advanced maker project requiring experience with robotics, Linux, and electronics. The total cost is approximately $400-500. All code and designs are open-source and available for educational purposes.

