Arbitrary (Li-ion, NiCd and others) accumulator charger based on switching power supply regulated by ARM microcontroller
I did work on coursework about universal charging device from the September of 2015. I’m developing this device’s modification until now.
There’re specialized charger controlling chips. Why do I work on my device if anyone can use such chip with only a few mounted passive components? The feature of my project is its universality—it should have ability to change charging accumulator’s type without physical intervention at least in theory.
Every accumulators’ variety has its own charging regime. For example lead-acid battery is charged by constant voltage, but nickel-cadmium battery—by constant current.
As the basement for my work I’ve used AVR450 demo board (PDF, 411 KiB), regulated by AVR microcontroller AT90S4433. This board is able to charge various accumulators only changing MCU’s flash.
You’re able to monitor charging process with AVR450. Using RS232 interface you can see on computer current through the accumulator, voltage on it and accumulator’s temperature. Why such information could be important when you’re charging ordinary accumulator? Li-ion accumulators which I was focused at aren’t as simple as they’re look. For full and fast charging they should pass through two stages:
- constant current charging (I),
- constant voltage charging (U).
You may see this stages on graph from “Annual Radio Journal” 2013, no. 27 (RU, DJVU, 25 MiB): at some point we should switch the stages. We want to see on the computer’s screen something like that after Li-ion accumulator charging from zero. We’re interested in stability of desired parameters and in precision of stages’ switching moment.
But AVR450’s microcontroller is obsolete at least because it’s hard to find in shops. I have a desire to renovate the scheme using modern ARM-microcontroller STM32L152RBT6. This chip is slightly excess for such charging device, but I want to study modern microcontrollers this way.
At this moment preliminary device scheme is ready. It still needs to pick up exact resistors’ values, but in general it should stay as is.
I’ve used breadboarding with STM32L152 Discovery board actively during the development. This made me sure that the scheme will work when I order expensive PCB.
I hope that I’ll extend this post with assembled device photos and final schematic files soon.