Best way to log mA/V for a NiMh solar charger?

I am toying around with the idea of using the arduino to control the charging of 4(maybe 6) NiMh AA batteries using a solar panel rated at 6V 400 mA.

First thing I would like to do is figure out exactly how the current varies throughout the day from my window.

Any advice on how to do this? I was thinking of using a voltage divider (I have read that higher resistance the better so as to not dissipate as much energy) and then measuring the voltage before and after an additional resistor to calculate current.

Will this work?

What's the best way to log this?

Once I get the logging figure out, any recommendations as to the best way to charge the NiMh batteries with solar panels? I was going to use an LM317 to provide a constant current to the NiMh batteries. However, I am also considering just wiring the panels directly to the batteries (with the appropriate diode). Will the NiMh batteries have a problem with the fluctuating current? If I go without the LM317, how will I know when they are fully charged? With the LM317, I was going to use the "negative delta v" cutoff method which relies on the fact that battery voltage peaks and drops about 20mV per cell when fully charged. Without regulating current, any ideas on when to cut off charging (perhaps a temperature sensor?).


I've never dealt with battery charging, but I would like to get into that in the very near future.

Regarding the task at hand, I think a temperature limit safety would be an excellent idea. I'm not sure how high the limit should be, but that would be one thing I'd recommend. Another good idea would be to use current limiting. I believe C/10 is typically the charging current you want. You could implement a digital resistor to control a transistor. You could use your voltage divider circuit to monitor the voltage and current.

This website gives a pretty good description of the various cutoff methods:

It recommends a cutoff when there is a rise of 1 to 2 deg C per minute.

Still need to figure out how to log mA/V from my solar panel though...


A nice way to measure current is with something like a Zetex ZXCT1010. You can take the analog output directly into an A/D pin. It will likely be more accurate than your voltage divider method, and with a sense resistor as small as 0.01ohms you will waste very little power.

Measure current by placing a 1 ohm resistor in series with the batteries and solar panel, and measure the voltage across the resistor. If you're charging at 600 mA, then you'll read 600 millivolts across the resistor. A lower value resistor (.01 or .001 ohm) plus an op amp would also work and possibly waste less power.

That powerstream link is a great resource. Also see for tips on charging.