Today we try a circuit from the internet for charging batteries,
a BMS or battery management system. I’ll show you a schematic for only one cell and scale it up
for any amount of batteries if you want, 2S, 3S, and so on. The function of this circuit
is to charge the batteries, protect them for overvoltage, limit the current and also balance
the batteries in case of more than one cell. Is not the best circuit or the most compact,
but does it work? Well, stick till the end to see it. I’ll show to the components we need and what
each part will do in the circuit and by that, how the circuit works. We mount it on a PCB and test
it out to charge and balance our batteries. This circuit is not my idea, there are already a lot
of similar circuits on the internet so check more links below. So, let’s get started.
What’s up my friends, welcome back. This is the PCB we will analyze today and learn how it works.
Is this simple circuit able to limit the current, control for overvoltage and balance the battery
pack? Well, let’s see. Lithium ion or LiPo batteries are verry popular, especially with
makers like us for small robots, portable devices, RC toy cars and drones and so on.
But these batteries are also very sensible and dangerous. If you don’t control the
process of charging and discharging of such batteries, they will stop working or worse.
The battery banks can swell and even explode from overcharging,
and a deep discharge can cause battery failure. That’s why these batteries should go together with
a battery management system unit or BMS. This will control the voltage and current from the battery
and keep them safe. Usually, the charged voltage of a LIPO battery is 4.2 volts.
So, as soon as the battery bank will reach this value, the charging process should stop
and that’s what this circuit should do. When you have only one cell, you only care about the
maximum voltage and the current limit to protect the battery. But when you have a battery pack of
more than 1 cell, so 2S, 3S and so on, you also need to balance the value of each individual cell.
For example, let’s say we have 3 batteries in series, so a 3S pack. The total voltage would
be 3 times 4.2 so 12.6V. But let’s say the batteries are discharged so we need to charge
them up. We apply a constant voltage of 12.6V to the pack. The battery pack start charging
but is impossible to have the internal structure of all the batteries equally the same. So one will
charge faster and other slower. Also, maybe one battery is discharged to 3.6V but the other one is
only discharged to 3.8V so when we apply 12.6V to the battery pack, some batteries will get to 4.2V
faster than the other ones. If we keep charging the pack till all of the batteries get above 4.2V,
that means some batteries will have over voltage and that is very bad. A balancing system
will cut of the connections only to those batteries that have already reached 4.2V and
leave the other batteries connected. In this way, all batteries will get to exactly 4.2V safely.
Let’s analyze the circuit for only one cell. We have a PNP transistor connected in series with 4
diodes that will simulate a load. At the base of the transistor, we have a ZENNER reference diode
which will get open at a certain voltage value and by that connects ground to the transistors base
and when the transistor is active, we bypass the battery and waste the power on the diodes instead.
Let’s see the animation to understand better. Battery is connected here which is the input and
also the output of the circuit. When the battery is below 4.2V and we apply 4.2V at the input,
the battery will start charging and a current will flow through it. Also, the voltage will drop.
If the voltage is below 4.2V, the reference diode will be closed,
so the PNP transistor is OFF because it has a pullup at its base. So at this point,
the only current path is through the battery. But when we reach 4.2V on this point, the ZENNER
reference diode will close and make connection between the base of the transistor and GND.
This ZENNER diode is the TL431 and it has a reference pin, so by adjusting the potentiometer
we can set this reference to be at 4.2V, that’s how we select when the charging process will stop.
That’s why this diode has 3 pins instead of 2 as other diodes.
So now, if the PNP transistor is open, current will flow through this transistor and also through
the diodes which will act as a new load. So now we waste power instead of charging the battery,
and that’s how the charging process is stopped.
Also, when the transistor is ON, the voltage is also connected to this resistor and LED,
in this way the LED will turn on when the charging process is complete. So as you can see,
this circuit is not that efficient since we waste power inside the diodes and transistor.
Also, if the power waste is too high, maybe the transistor would need a heat dissipator
so it won’t burn out. But we are not looking for efficiency here since we can use this
charger with supply from the main outlet so we don’t care that much about efficiency.
I mount this simple circuit on my breadboard. I supply it with 4.2V from my power supply.
I connect my multimeter at the output and using the potentiometer, we fix the threshold value
to around 4.14 up to 4.2V. I will use this battery which as you can see is discharged and below 4.2V.
When I connect it to the charger, the LED is turned off.
We have a current flow of around XX mA and the battery is getting charged up. When we reach 4.2V
the LED will turn ON so the charging process is complete. Current is now flowing through the
diodes and transistor and we skip the battery, so the cell is protected for over voltage.
I also measure the battery and is 4.11V
But how can we control the current limit which is also an important protection factor? At
this point, we can’t really regulate the current limit with this circuit.
But we can add a LM317 regulator at the input place in current mode.
In this configuration, the current limit is set by the resistor at the output
and is equal to this formula, VREF divided by the resistance value. VREF for the LM317 is 1.25V
so is should be easy to select a resistor and limit the charging current at let’s say 600mA.
In order to get a decent 2ohm resistor, for the final PCB
I've merged together in parallel, 5 resistors of 10 ohms
So a total of 2 ohms but for more power
At this point, with this circuit we can protect the battery for overvoltage and charging current
limit. We could also add a second LM317 regulator but ion voltage control mode. With the previous
circuit, the input must be exactly 4.2V. But sometimes we only have 5V or maybe 12V input if
we use DC adaptors like these ones. So with this second LM317, we can adjust the output at 4.2V so
no matter the input value, the voltage that goes to the battery is 4.2V. Now comes the interesting
part. We can take this simple circuit and merge it in series with another identical circuit.
Now we can charge a 2S battery pack and also balance the voltage as I mentioned before.
If we add 3 circuits in series like I have here, we can charge a 3S battery for example and all
individual cells will stop charging at 4.2V. Also, by having the two LM317 regulators at the input
we have current limit protection but we are also able to supply the entire circuit
with let’s say 16 to 20V and set the voltage that goes to the battery to 12.6V,
whi8ch is the charged voltage of 3 batteries in series. Get this final schematic from below.
I get all the needed components and solder the circuit on a prototyping PCB.
I first add the transistors and ZENNER diodes
then the potentiometers and 4 normal diodes for each group.
Then I add the LEDs and finally I add the LM317 regulators and the current limiting resistor made out of 5 resistors of 10 ohms
I make connections with solder and wires on the back. Now we have 3 pairs of connections for
the battery and one input and output. Each LED will turn ON when each individual cell is full.
Using the potentiometer, you can fine adjust the threshold value. Changing
this resistor value connected to the second LM317, can change the charging current limit.
I connect everything and power the circuit with 16V from my power supply.
All batteries are now charging. After a while, one LED turned on, then the second one and finally
all 3 are ON, so all batteries are full. I check the voltage with the multimeter and it is 4.2V.
So the circuit works with no problems. The only downside, is the efficiency and heat dissipation.
But if you don’t care about that, this circuit could be useful for your battery pack.
And if you want more power, you should use powerful transistors, bigger diodes
to simulate the load and also add heat dissipator on the components. You should also change current
limiting resistor value and power, so get a bigger one. I hope that you like this vide and that you
have learned something new. Now you could make your own BMS circuit and the components are very
cheap. The total cost of this PCB is under a dollar if you buy bags of 20 components.
Consider giving this video a like or comment below. Thanks again and see you later guys.