I have recently been having fun with a solar-energy power monitoring system, some friends live in a remote area without access to grid power. They are currently using two banks of old Telcom v2 SLA cells, with pair of solar panels on the roof for charging. There is a 600w inverter providing 240v power for the house, and a solar management unit to ensure peak charge from the solar panels. There is a 240v petrol generator providing backup power and also charging the batteries via a intelligent SLA 25A charger. To make life easier, there is also a automatic change-over switcher which will run the house off the generator whilst it is running, and automatically drop back to the batteries / inverter when it stops.
To monitor the state of the batteries and system, we have installed a Arduino clone board (Freetronics EtherMega) with a RTC, MicroSD card and custom op-amp and shunt sense board. This allows for the battery voltage, load and charge status to be tracked via a 20×4 LCD screen, as well as over the network via a custom website. Plus with data capture, the state of the batteries can be analysed on a excel graph.
This is where I came. As a result of about three weeks of off-and-on work on the system, I have taken it from a system which simply displayed the voltage, load and charge current of the batteries to a system which is network capable, with a custom website which allows access to this information plus more. There is now a real-time clock onboard as well, so the system knows the current date and time. There is also a MicroSD card which is being used to capture data for later analysis. The website allows the user to grab the data in CSV format, and easily graph it using Microsoft Excel, thus easily visualise the data over time and assess the condition of the batteries.
The website also allows for calibration of the unit, formatting of the MicroSD card, saving of calibration data and resetting to default settings. Next up is to refine and make the code more bullet-proof, and also add the ability to set the time! Then, time to work out how to track the capacity of the batteries in a reliable manner.