Built to order

Solar Panel Cleaning Robot using Brushes

This project builds a dry-brush cleaning robot that drives across tilted solar panels on its own: dual rotating brush rollers sweep loose dust off the glass while an Arduino follows programmed sweep patterns and four IR edge sensors keep it from driving off the panel edge. A 12 V 18650 battery pack powers roughly two hours of cleaning per charge. The dashboard shows robot status, battery and runtime, today's cleaned area and panel count, a coverage grid, the weekly schedule and a robot event log. The honesty discipline is explicit: no efficiency-gain figure is pre-claimed — the guide

Solar Panel Cleaning Robot using Brushes — project thumbnail preview
More project photos (2)

The problem

Dust is a quiet tax on solar power: in arid regions, soiling can shave a noticeable share off a rooftop array's output, and manual cleaning is labor nobody schedules. Water-based cleaning wastes water; a dry-brush robot that sweeps on a schedule is the low-maintenance answer — and a genuinely multidisciplinary student build. This robot is a four-wheeled chassis sized for standard ~1x2 m panels, carrying two counter-rotating brush rollers that sweep dust ahead of the drive wheels. An Arduino runs the show: timed sweep patterns (lawnmower passes along the panel), brush RPM control, and an IR edge-sensor array that stops and reverses the robot at panel edges and gaps. A 12 V pack of 18650 cells powers the drive and brushes with onboard voltage monitoring, and the robot returns to a dock at the array edge when the battery runs low or the schedule ends. The dashboard — the software half of this hybrid project — shows live status, battery with estimated runtime, cleaned area and panel count, a 40-panel coverage grid, the weekly schedule (with rain-skip) and the event log. Because dust type, humidity and panel tilt all change results, the report refuses to pre-claim a percentage gain; instead the measurement guide has the buyer log panel output before and after cleaning and compute their own number.

How it works

  1. On schedule (or manual start), the robot undocks and drives onto the first panel row at ~0.4 m/min with brushes spinning at ~180 RPM.
  2. The Arduino executes lawnmower passes: straight runs along the panel, 180° turns at row ends detected by the edge sensors.
  3. Each IR edge sensor watches for the panel edge or gap; any sensor losing the surface triggers a stop-and-reverse maneuver.
  4. Battery voltage is monitored continuously; at the low threshold the robot finishes its row and returns to the dock.
  5. Every pass, panel completion and sensor event is logged with timestamps to the dashboard's event log and coverage grid.
  6. The weekly schedule repeats the routine; rain-skip parks the robot until the next dry window.
  7. The buyer runs the before/after measurement procedure and records the verified cleaning gain in the report.

Tech stack:

  • 4-wheel robot chassis with dual brush rollers (DC gear motors)
  • Arduino Uno/Nano (drive firmware: patterns, edge logic, scheduling)
  • 4x IR edge sensors, 12 V 18650 battery pack with BMS
  • L298N / TB6612 motor drivers for drive and brushes
  • Single-file HTML/CSS/JS dashboard (status, battery, coverage grid, schedule, log)
Parameter Value
Chassis 4-wheel, sized for ~1 x 2 m standard panels
Brushes Dual counter-rotating soft-bristle rollers, ~180 RPM
Drive speed ~0.4 m/min sweep speed (design target)
Controller Arduino (Uno/Nano), L298N/TB6612 drivers
Edge sensing 4x downward IR sensors, stop-and-reverse at edges/gaps
Battery 12 V 18650 pack with BMS; runtime design target ~2 h per charge
Panel tilt range 10–30 degrees (documented operating envelope)
Scheduling Weekly plan, rain-skip, dock parking
Cleaning gain Measured by buyer via before/after procedure — never pre-claimed
Dashboard Status, battery, coverage grid, schedule, event log

Project features

  • [Dual brush-roller cleaning head] Two counter-rotating soft-bristle rollers sweep loose dust ahead of the drive wheels; brush pressure is set by the suspension geometry.
  • [Arduino sweep firmware] Lawnmower pass patterns along the panel, brush RPM control, turn-at-edge logic and dock-return behavior.
  • [IR edge-sensor array] Four downward IR sensors detect panel edges and inter-panel gaps, stopping and reversing before a drop.
  • [18650 battery system] 12 V pack with voltage monitoring, runtime estimation and low-battery dock return.
  • [Weekly cleaning schedule] Configurable sweep days and times with rain-skip logic and night parking at the dock.
  • [Robot dashboard] Live status, battery gauge, cleaned area and panel count, coverage grid, schedule editor and timestamped event log.
  • [Before/after measurement procedure] Documented buyer-run method: log panel output at solar noon before and after a clean, then compute the gain yourself.

What is included

  • Complete cleaning robot (chassis, brush rollers, drive, sensors, battery), assembled and tested
  • Arduino firmware (sweep patterns, edge logic, battery management, scheduling)
  • Robot dashboard web app (status, battery, coverage grid, schedule editor, log)
  • Assembly manual and wiring diagram (motor drivers, sensor placement, battery pack)
  • Before/after measurement guide (panel-output comparison procedure)
  • Project report PDF (background, mechanical design, control logic, buyer-run effectiveness measurement)
  • PPT presentation for final review
  • Viva Q&A preparation document (DC motors, IR sensing, battery management, scheduling, soiling)
  • Setup guide (panel compatibility check, dock placement, first sweep)

Limitations & prerequisites

  • Dry brushing removes loose dust only — caked soiling, bird droppings and sticky residues need manual cleaning; the report documents this boundary plainly.
  • No cleaning-gain percentage is pre-claimed: results depend on dust type, humidity, tilt and climate, so the buyer measures their own with the documented procedure.
  • Operating envelope is 10–30° panel tilt on standard framed panels; flat roofs, steep arrays and frameless glass are outside it.
  • The robot parks during rain — wet glass plus electronics is a combination the design avoids by policy, not by waterproofing.
  • Brush bristles wear with use; the maintenance guide documents inspection and replacement intervals.
  • Very dusty environments may need multiple passes or a deep-clean schedule; the dashboard's dust-level indicator guides the frequency.

Frequently Asked Questions

How does the robot clean?

Dual counter-rotating brush rollers sweep loose dust off the panel glass as the robot drives lawnmower passes at ~0.4 m/min; IR edge sensors keep it on the panel.

How much does panel output improve?

That is measured, not claimed: the guide has you log panel output at solar noon before and after a clean and compute your own gain — dust type and climate change the number too much to pre-print one.

What powers it, and for how long?

A 12 V 18650 pack with BMS; the design target is ~2 hours of sweeping per charge, with low-battery dock return handled by the firmware.

What if it reaches the panel edge?

Four downward IR sensors detect edges and gaps; the firmware stops and reverses before any drop. The 10–30° tilt envelope is part of the same safety design.

Does it work in rain?

No — rain-skip parks it at the dock. The build is not waterproofed; avoiding wet operation is a deliberate design rule.

Is this project suitable for a final-year project?

Yes — for Mechanical, Mechatronics and Electrical programs. It demonstrates mobile-robot kinematics, sensor-based edge safety, battery management, scheduling and honest effectiveness measurement, all strong viva material. Suitable for B.E./B.Tech final-year projects in Mechanical, Mechatronics and Electrical.

Components & software requirements
  • 4-wheel robot chassis with dual brush rollers (DC gear motors)
  • Arduino Uno/Nano (drive firmware: patterns, edge logic, scheduling)
  • 4x IR edge sensors, 12 V 18650 battery pack with BMS
  • L298N / TB6612 motor drivers for drive and brushes
  • Single-file HTML/CSS/JS dashboard (status, battery, coverage grid, schedule, log)
Delivery information

Built-to-order project. Delivery timeline is shared after order confirmation based on current queue.

Support terms

Complete documentation, setup guide, and viva preparation included. Support for setup and explanation provided.

Download abstract (PDF)

Related guides

All guides
Get a quotation