IoT-enabled autonomous robot for cleaning solar panels with ESP32 cloud connectivity (15 citations).
Field-tested on 1 kWp solar array in Jakarta, Indonesia. 7-day cleaning interval with autonomous ESP32 controller.
Solar panels in tropical and arid regions lose 15-30% of their rated efficiency within days due to dust accumulation. In Jakarta, Indonesia, field measurements show 4.2% loss at just 0.5 g/m² of dust density, escalating to 27.9% loss at 4.0 g/m². The problem is acute in urban and agricultural zones where particulate matter concentrations are high.
Manual cleaning is the default solution but comes with significant costs: up to 8 liters of water per 1 kWp array per cycle, 45 minutes of labor, and serious safety risks for rooftop installations. For rural and off-grid systems — where the robot is most needed — manual cleaning is often neglected entirely, leading to chronic underperformance.
Prior to this work, no autonomous IoT-enabled cleaning robot had been validated for small-scale solar installations in tropical environments. Existing robotic cleaners were designed for utility-scale solar farms and were too expensive and complex for residential and community arrays.
Efficiency loss measured on 1 kWp polycrystalline array in Jakarta. Dust density from gravimetric sampling (g/m²).
The robot uses an ESP32 microcontroller running FreeRTOS for real-time motor control and sensor fusion. An optical dust sensor (Sharp GP2Y1010AU0F) and an OV7670 camera module provide dust detection and visual inspection of the panel surface. The robot navigates the panel array using a programmed grid path with ultrasonic edge detection to prevent falls.
Cleaning is performed by a DC motor-driven rotating brush combined with a micro-spray water system delivering 2.5 liters per cycle — a 69% reduction compared to manual cleaning. A built-in water recycling filter captures and reuses runoff, minimizing water waste in water-scarce deployment locations.
The controller communicates via MQTT over Wi-Fi to a cloud dashboard (Node-RED + InfluxDB), transmitting per-cycle efficiency measurements from an onboard INA219 current sensor. This enables remote monitoring and scheduling without on-site human intervention.
Over 12 cleaning cycles on a 1 kWp polycrystalline array in Jakarta, the robot consistently restored panel efficiency from a soiled average of 76.2% to a cleaned average of 95.8% — a mean recovery of 19.6 percentage points. The narrow variance (before: 73.9-78.4%, after: 94.8-96.5%) demonstrates reliable cleaning performance across varying dust conditions.
Water consumption averaged 2.5 liters per cycle compared to 8.0 liters for manual cleaning of equivalent panel area. The cleaning cycle completed in 12 minutes versus 45 minutes for manual labor. With a 7-day interval, the robot maintained panel efficiency above 94% at all times — preventing the cumulative efficiency loss of 20%+ that occurred under the neglected-manual-cleaning baseline.
The study was conducted on a 1 kWp rooftop polycrystalline silicon array (4 × 250 Wp panels) at Universitas Indonesia, Depok campus (6.36°S, 106.83°E). The test period spanned 12 weeks (February to April 2021) covering both wet and dry season conditions. Dust accumulation was measured gravimetrically using glass slide coupons weighed before and after exposure on a 0.1 mg precision balance.
Panel efficiency was measured using an I-V curve tracer (HT I-V400w) before and after each cleaning cycle. Measurements were taken at solar noon (±30 minutes) under clear-sky conditions with irradiance above 800 W/m² to ensure comparability across cycles. Temperature correction was applied per IEC 60891 to normalize all measurements to 25°C.
The robot's autonomous navigation was implemented as a grid-based path planner on the ESP32. The panel surface was divided into 12 zones (4 panels × 3 rows), and the robot traversed each zone using ultrasonic edge detection for boundary recognition. Cleaning quality was assessed via image processing of the OV7670 camera feed using OpenCV on the cloud side, computing the soil coverage ratio before and after each pass.
Sigit designed the mechanical chassis, wrote the ESP32 firmware (Arduino framework with FreeRTOS tasks), and implemented the MQTT telemetry pipeline. The cloud dashboard (Node-RED + InfluxDB + Grafana) was deployed on a Raspberry Pi 4 at the test site, with remote access via Ngrok tunneling for off-site monitoring.
Indonesian Journal of Electrical Engineering and Computer Science (IJEECS), 2022
DOI: 10.11591/ijeecs.v25.i2.pp789-798
Provides the solar sizing and irradiance models used for energy budget calculations of the cleaning robot.
Supplies the solar radiation measurement data used to correlate soiling with irradiance loss.
The robot's cleaning methodology is designed for similar off-grid solar arrays in tropical environments.
Targets the same rural deployment context where manual panel cleaning is impractical.
This autonomous cleaning robot extends sigit's work in solar instrumentation and off-grid energy systems, applying IoT and robotics to address a practical maintenance problem in tropical solar deployment.