What is it?
It is a battery charger/analyzer. It is not going to save the world from an alien invasion or cure cancer or something equally noble. It'll let you charge, maintain, and test the discharge characteristics of rechargeable batteries. It is a nice tool for re-purposing or evaluating cheap batteries of unknown capacity/performance as . It helps to save you money in the long run by not throw away otherwise usable batteries.
Whenever the topic of electronic load is brought up on HaD articles, testing batteries come up quite often as one of the main applications.
What does it do that similar design doesn't?
What set this charger design different are:
- Flexible power source - two independent buck/boost converters allow higher/lower than input voltage. So you could be charging batteries from USB, vehicle power or green power source such as unregulated power from small solar power panel/wind power etc.
- High switching frequency beyond traditional uC PWM type of design can offer. This allows for the use of much smaller components and also reduces input/output ripple current.
- During discharge mode, the switch mode converter works to draw power away from the battery. The power can be diverted to external use. e.g. charging a Super capacitor bank, light. etc.
- Scalable design for additional channels and/or higher power.
The following is the block diagram. This is essentially a programmable power supply during charging and an electronic load during discharging. The firmware also implements the charging/discharging algorithms for the supported battery types and display/communicate with the Window PC charger software.
In charging mode, the input power is routed into a SEPIC converter and the output is used to charge the battery. The input voltage can be higher/lower than the output and the output is DC blocked. The voltage/current is monitor by the microcontroller and controlled by means of PWM duty cycle. The microcontroller uses a charge algorithm that is tailored for the battery chemistry and capacity. The parameters for a supported battery type can be edited and saved by the end user on a computer.
In the discharging mode, the input power is routed from the battery via the converter into an external load. By monitoring the voltage, current over time, the battery capacity and characteristics can be analyzed. The discharge is also controlled by user defined parameters.
The same changing circuit can be used for discharging by simply rearranging the input and output. The external load can be a large battery, a super capacitor bank etc or a simple resistive load. The two channels can share the same load output. The discharge can work all the way down to below 1 volt as SEPIC converters boost the battery voltage up.
By keeping the dissipation outside the unit, I have reduced the cooling requirements. This also improves on the accuracy due to components temperature coefficients. There are commercial RC Battery Analyzer designs that use a MOSFET as a resistive load which limits their discharge capacity.
The microcontroller has native USB hardware and raw data can be streamed to a PC for logging/plotting purposes. The unit can operate in a stand alone mode or connected to PC. There is bidirectional communication between the unit and the PC, so unit can be controlled from either side. (See here)
This is the part that is done very differently than most microcontroller based chargers. I use Analog PWM for the SEPIC converters in my design. This is why the SEPIC operates at 200-300kHz instead of the much lower tens of kHz that most common digital PWM design seems to use. This means the the components do not need to store a lot of energy until the next period arrives. Smaller and cheaper (because less material) inductors/capacitors can be used and you'll also get smaller ripples.
By lowering the peak ripple current, you lower the amount of I^2*R losses. When the frequency is too high, the switching losses come...Read more »