What it shows
Small solar lighting systems fail when batteries are overcharged or deeply discharged. A charge controller protects them. The project builds one with an Arduino, a MOSFET switch and voltage and current sensing, with three-stage charging, low-voltage load disconnect and data logging, tested on a 12 V 7 Ah sealed lead-acid battery with a 20 W panel.
The science
A PWM controller connects the panel to the battery through a MOSFET that switches rapidly. In bulk stage it stays on to deliver full current until the battery reaches about 14.4 V, then it reduces the duty cycle to hold the absorption voltage, and finally it holds a float of about 13.6 V. A low-voltage disconnect opens the load switch near 11.5 V to stop deep discharge, which shortens battery life.
Materials
Cost: under Rs 5,000. Many items come from home or from waste; spare parts such as LEDs, motors and wire are in the store.
- An Arduino Nano
- A 20 W, 18 V solar panel
- A 12 V 7 Ah sealed lead-acid battery
- Two P-channel or N-channel MOSFETs (for example IRF4905 with a gate driver) and a Schottky diode of 10 A
- An INA219 or ACS712 current sensor and resistor dividers for voltage
- A 12 V LED lamp as load and a fuse of 5 A on each side
- A heat sink, wires of adequate thickness and a plastic box
Safety
For this project: Lead-acid batteries can release gas when overcharged and can deliver very large current if shorted, so fit a fuse next to the battery. Work in a ventilated place with no flame. An adult must check all wiring and supervise the first power-up. Never connect to the mains.
Never use mains electricity: power models with cells, batteries or a low-voltage adapter. Sharp and hot tools, flames and lab chemicals need an adult or your teacher beside you. Keep magnets, button cells and small parts away from young children, and wash your hands after making.
All the safety rulesStep by step
12 steps. Do them in order, and test each part before you go on to the next. Write what you notice in a notebook as you go.
Read the battery datasheet for charge voltages, maximum charge current and discharge cut-off.
Draw the block diagram: panel, blocking diode, charge MOSFET, battery, load MOSFET, sensors and microcontroller.
Build the voltage dividers for panel and battery and test them with a multimeter before connecting to the Arduino.
Connect the current sensor in the battery line and calibrate it with a known load.
Write the state machine for bulk, absorption and float and add a timer for absorption.
Control the charge MOSFET with a PWM signal of about 1 kHz through a gate driver or level shifter.
Add the load disconnect with hysteresis, so the load reconnects only above 12.6 V.
Add the logger that stores volts, amps and state every minute and prints a CSV file.
Test first with a bench power supply or a second battery in place of the panel to check each stage.
Test in sunlight over three days and plot panel voltage, battery voltage and current against time.
Calculate energy harvested in watt-hours per day and compare with a direct connection without a controller.
Write the report with the circuit, tests, efficiency and safety design.
What you should see
The controller charges the battery through bulk, absorption and float, disconnects the lamp at the low-voltage limit, and the log shows the daily energy. The battery never exceeds about 14.6 V.
Viva questions
A teacher or a judge will ask how it works. Try to answer each question before you open it, then compare.
1Why is overcharging harmful?
It makes the battery produce gas and heat, losing water and shortening its life.
2What is the use of the blocking diode?
It stops the battery from discharging back through the panel at night.
3What is hysteresis in load disconnect?
Different thresholds for switching off and on, so the load does not flicker around one voltage.
4How is MPPT different from PWM?
MPPT uses a converter to work the panel at its best voltage and can harvest more energy, but is more complex.
Take it further
Add a buck converter to convert the extra panel voltage to current, a simple MPPT, and compare the energy gain with the PWM version.
Change one thing, measure what happens, and add a table or chart of your readings: that is what turns a model into your own investigation.
Free ebooks for this project
Hardware & repair
Using a Digital Multimeter
Measure voltage, current, resistance and continuity safely
