Solar Panel Robot Cleaner
An automated cleaning system for solar panels featuring an ESP8266-powered robot with real-time control via Python (Flask) and a React dashboard.
Robot Brain
ESP8266
Communication
MQTT & WS
Key Tech
System Architecture
Interactive diagram: click nodes to see configuration details.
01. What This Project Does
This project is an automated cleaning system for solar panels. It consists of a physical robot controlled via a web interface. The robot moves across the panel surface to remove dust and debris, maximizing energy efficiency. Users can start the cleaning process, monitor real-time progress, and receive status updates through a dedicated dashboard.
02. Hardware Components (Robot)
Core Brain
ESP8266 microcontroller with built-in WiFi for MQTT communication.
Actors
L298N Motor Driver, High-torque DC Motors, and a specialized Water Pump.
Sensors
Top and Bottom Limit Switches for precise movement boundaries.
03. Communication Workflow
Web ↔ Backend (WebSocket)
Real-time bidirectional communication between the React frontend and Python backend. Handles command execution and provides instant progress updates (e.g., P:1%, P:2%) to the user interface.
Backend ↔ Robot (MQTT)
Asynchronous messaging via Mosquitto Broker. The backend sends movement commands (START, RETURN), while the ESP8266 robot reports its physical status and progress back to the system.
04. Technologies Used
- React (Vite) & Tailwind CSS
- Python (Flask & Eventlet)
- MQTT (Mosquitto) & WebSockets
- PostgreSQL & Docker Compose
05. My Role & Contribution
I designed the full-stack architecture, including the circuit schematics for the sensor nodes and the firmware logic for reliable data transmission under varying network conditions. I implemented the MQTT-based communication layer and developed the interactive web dashboard, which features custom SVG-based system architecture diagrams and real-time data visualization charts.