Variable Current Lead Acide Battery Charger

Thread Starter

Amir Mohammad Soltanpour

Joined Sep 10, 2017
23
Digitally controlling charge voltage with some regulator like Lm317 is a matter of using some resistor and transistor as stated in lm317 datasheet to select from multiple pre defined voltage.

But what about choosing output current ? How it can be adjust with digital signals from microcontroller ? Normally what i found on the web and lm317 datasheet is using a fixed high wattage resistor to limit charge current.

I am trying to build a smart charger as a part of smart ups and i want to use a range of battery with different voltage and current and it must be selectable from software.

So what is your suggestion for digitally selecting charge current ?
 

crutschow

Joined Mar 14, 2008
34,285
I am trying to build a smart charger
A smart charger requires you to monitor both battery voltage and current.
Are you planning on doing that?
It can be done with the A/D converter built into most micros.

An LM317 output voltage can be controlled by applying a DAC voltage from a Micro directly to the ADJ input of the LM317, no resistors needed.
This will give an output voltage of about 1.24V above the DAC voltage.

Here are the three (CC-CV-CV) basic charging steps for a lead-acid battery:
  1. CC -- Control the current by measuring the voltage across a small shunt resistor in series with the battery and adjusting the output voltage to maintain the desired constant-current charge value
  2. CV -- When the battery voltage meets the desired charge voltage (such as about 14.4V for a 12V lead-acid battery) you adjust the charge voltage to keep the voltage at that value for the top-off charge.
  3. CV -- When the top-off charge reaches a small current (say <3-5% of the AH rating), you reduce the voltage to the trickle-charge value (about 13.5V for a 12V battery).
See this for more info.
 
Last edited:

Thread Starter

Amir Mohammad Soltanpour

Joined Sep 10, 2017
23
A smart charger requires you to monitor both battery voltage and current.
Are you planning on doing that?
It can be done with the A/D converter built into most micros.

An LM317 output voltage can be controlled by applying a DAC voltage from a Micro directly to the ADJ input of the LM317, no resistors needed.
This will give an output voltage of about 1.24V above the DAC voltage.

Here are the three (CC-CV-CV) basic charging steps for a lead-acid battery:
  1. CC -- Control the current by measuring the voltage across a small shunt resistor in series with the battery and adjusting the output voltage to maintain the desired constant-current charge value
  2. CV -- When the battery voltage meets the desired charge voltage (such as about 14.4V for a 12V lead-acid battery) you adjust the charge voltage to keep the voltage at that value for the top-off charge.
  3. CV -- When the top-off charge reaches a small current (say <3-5% of the AH rating), you reduce the voltage to the trickle-charge value (about 13.5V for a 12V battery).
See this for more info.

Of course monitoring battery voltage and charge current is essential part but they are fairly easy to implement. for example with a voltage divider resistor battery voltage can be monitored.


And the algorithm of charge will be the one that you stated above.


The actual problem is the way of implementing the charger section, the requirementd are stated below :


1. it must be capable of producing different output voltage as the microcontroller determine what voltage is needed in different steps of charge or even for different battery voltage.

2. it must be capable of digitally selecting different charge current according to different battery AH.


(Other thing like monitoring battery temperature or determining state of charge are fairly straight to implement and not discussing here)

(LM317 is just for example and it can be switching regulator or any better idea )

(And i haven't seen Digital to Analog Converter (DAC) in most microcontroller and especially AVR micros)
 

crutschow

Joined Mar 14, 2008
34,285
1. it must be capable of producing different output voltage as the microcontroller determine what voltage is needed in different steps of charge or even for different battery voltage.
(And i haven't seen Digital to Analog Converter (DAC) in most microcontroller and especially AVR micros)
I believe many micros have variable duty-cycle PWM output which can be filtered to give a DC control voltage.
2. it must be capable of digitally selecting different charge current according to different battery AH.
And as I said, that can be done by monitoring the voltage across a small shunt resistor in series with the battery charge current, and adjusting the output voltage to generate the desired current.

What about the above can't you do?
 

crutschow

Joined Mar 14, 2008
34,285
You don't need to control the current, the battery will do that, Lead Acid is charged by Constant Voltage.
Not completely true.
It's true that's how it's done in vehicle charging systems, but for optimum charging, especially for batteries that have been significantly discharged, the initial charging current should be limited to what the battery manufacture recommends until it reaches the desired full-charge voltage.
Initially applying just a voltage will like cause a high charging current that is limited only by the voltage source limit.
 
Top