Hello forum members!
I'm new here and would like some help with a project that aims at developing a simple electronic Battery Management System (BMS) for NiMH serial batteries in an electric Vectrix scooter or other electric vehicles. I call it the IDeA for "Imbalance Detection Apparatus".
The "IDeA" would have at least 2 separate functions:
1) Warning the rider of battery imbalance when the stock system is unaware of this, by illuminating a warning light but not cutting power. The rider will have the choice to continue to use all power that the stock system provides, but at the expense of the reversing cell; this keeps the vehicle roadworthy for longer in case it occurs in dangerous traffic conditions.
2) Automatically cut power during automated deep discharges once imbalance due to a single reversing cell is detected.
The IDeA is supposed to compare battery segment voltages to each other and trigger the "Imbalance" response if a voltage difference of maybe 0.8V is detected between any two of them.
The IDeA should run on the same 12V DC as the cooling impellers.
The IDeAs output must be galvanically isolated from the battery to keep everything as safe as possible.
Here is some background to help understand the problem to be solved:
All the effort for BMS development seems to go into Lithium BMS at the moment; I cannot find any decent NiMH system (except maybe the Prius and Insight systems, but they are not easily adaptable).
The cell voltage (of 1.2-1.5V) per NiMH cell means that the cell numbers are much higher than in comparable Lithium batteries. Any cell-level-BMS becomes expensive due to this large number of cells. And there may not be enough space in the batteries to install multiple per-cell-systems without interfering with the forced airflow usually needed for cooling NiMH batteries.
It appears to me that the usual approach to NiMH battery management is to overcharge them at C/10 (or less) to equalise the cells. The more often this is done, the quicker the entire battery ages. But if the EQ charging is not done, then sooner or later cell reversal occurs during discharge. If the cell reversal goes undetected, then it will soon kill the affected cells and bring down the entire battery pack.
Alternatively, the SOC (State of Charge) is kept in a relatively narrow band around the 50% SOC area most of the time, like 40%-60% SOC. My hypothesis for how this works is this: It allows some cells to fall behind in SOC until they are being cycled between maybe 10%-30% SOC, while the highest cells cycle around 70%-90% SOC. Because the self-discharge rate (SDCR) is higher at higher SOC, they drift apart until the SDCR of the low cells is so low (and that of the high-SOC cells so high) that the difference in SOC stabilises. The battery is then imbalanced, but no cell reversal occurs, because only a small part of the capacity is ever used.
This approach might work well for hybrid vehicles, but if only such a small portion of the capacity is being accessed it restricts the range too severely for EV (electric vehicle) use.
Lithium BMSystems need to monitor every cell because the cells suffer quite severe damage if they are discharged to deeply or if they are over-charged. Once the over-charge or over-discharge has occurred, it is generally too late for Lithium cells.
But NiMH cells are much more resilient in this respect and I think that a system that detects the sudden drop by about 1.4V will prevent serious damage to the reversing cell - if the discharge is then stopped.
The reversal of a single cell in a NiMH battery string should be the latest point at which the discharge is terminated. If the discharge continues for too long, particularly if at a high current rate, then the cell will become irreversibly damaged.
Complicating all this is the fact that NiMH cell voltage is very dependent on discharge (or charge) current, SOC and temperature. It is very difficult - if not impossible - to reliably determine the remaining charge from the voltage of a NiMH cell.
And occasional deep discharges are required in order to remove voltage depression effects from the cells and sometimes to synchronise the "Fuel gauge", which progressively gets out of sync with the real SOC if it only relies on coulomb counting.
This graphs shows the voltage drop from a single reversing cell in a Vectrix 102s 30Ah NiMH battery pack. It is this small drop in pack voltage (at 12hrs:33min) that I want the IDeA to detect.
Red curve: Pack voltage (x100)
Blue curve: Current (x 1/10)
X-axis: hrs:min:sec:msec
So what you can see there is a drop in voltage from about 123V to 122V over a minute or so, under a current draw of about 1.1A .
Done on the bench with a constant current discharge it is easy to spot.
But under a, say, 200A current draw the battery voltage would immediately drop to about 105V. During on-road use, the constantly changing discharge currents (or charge from regenerative braking) make it impossible to spot such a small drop in voltage - unless one compares equal sub-strings to each other.
That's where the IDeA (Imbalance Detection Apparatus) comes in!
It compares the voltages of equal parts of the battery to each other, while they are experiencing identical charge and discharge currents. The cell temperatures would hopefully be similar enough to not introduce too much voltage difference between these sub-strings.
For the Vectrix pack of 102 serial connected cells, three segments of 34 cells each might be the best option to implement the IDeA.
Two segments of 51 cells would make it much more likely that a reversing cell occurs in each segment at the same time, making it invisible to the IDeA. Synchronous reversal of equal numbers of cells in 3 or 6 segments are much less likely, but monitoring six segments of 17 cells each involves a lot of dismantling and installation of cables and fuses close to live parts.
The 3x34 cells option could be installed easily, because all the relevant cells are in the top layer (of three layers) in the battery.
The work done so far is based on a circuit by G. La Rooy, Christchurch, New Zealand.
described here: http://www.siliconchip.com.au/cms/A_30610/article.html and here: http://www.extremecircuits.net/2009/12/battery-equality-monitor-circuit.html
This circuit was then extended to work for three battery segments by "Mikemitbike" here: http://visforvoltage.org/forum/9675...trix-battery-it-becomes-damaged#comment-54426
I did then play around with resistor values to tweak it a bit so that transistors with a hFE of 50 can be used, but the simulation was otherwise already complete. It was made using the applet at http://www.falstad.com/circuit/
Here is what it looks like:
Unfortunately the applet does not seem to have opto-couplers to simulate with, so LED's take their place.
Here is a schematic that shows it more clearly:
To see the simulation in action, paste the code (coming in the next post because it exceeds the 10000 chracter limit!) into the "Import" window of the applet. You can also run this applet from your computer after downloading it. Then change the voltages of the three battery parts a little bit (right click on components and select "Edit") to see what happens (the LED's light up). I assume I will not be able to post a reply to this first post immediately, so in the meantime you can grab the code from this post: http://visforvoltage.org/forum/9675...trix-battery-it-becomes-damaged#comment-54490
I have made a simulation to show how the IDeA part on the output side of the optocouplers will hopefully work with the rest of the Vectrix scooter:
The code for this simulation will also have to follow in the next post due to character limits of the forum software.
In the meantime you can grab it from here: http://visforvoltage.org/forum/9675...trix-battery-it-becomes-damaged#comment-54731
I better stop here before the post becomes completely unreadable - if it is not already!
I'll specify the questions I have in the next post. They mainly relate to the best approach for turning this from a simulation into a real prototype device....
I'm new here and would like some help with a project that aims at developing a simple electronic Battery Management System (BMS) for NiMH serial batteries in an electric Vectrix scooter or other electric vehicles. I call it the IDeA for "Imbalance Detection Apparatus".
The "IDeA" would have at least 2 separate functions:
1) Warning the rider of battery imbalance when the stock system is unaware of this, by illuminating a warning light but not cutting power. The rider will have the choice to continue to use all power that the stock system provides, but at the expense of the reversing cell; this keeps the vehicle roadworthy for longer in case it occurs in dangerous traffic conditions.
2) Automatically cut power during automated deep discharges once imbalance due to a single reversing cell is detected.
The IDeA is supposed to compare battery segment voltages to each other and trigger the "Imbalance" response if a voltage difference of maybe 0.8V is detected between any two of them.
The IDeA should run on the same 12V DC as the cooling impellers.
The IDeAs output must be galvanically isolated from the battery to keep everything as safe as possible.
Here is some background to help understand the problem to be solved:
All the effort for BMS development seems to go into Lithium BMS at the moment; I cannot find any decent NiMH system (except maybe the Prius and Insight systems, but they are not easily adaptable).
The cell voltage (of 1.2-1.5V) per NiMH cell means that the cell numbers are much higher than in comparable Lithium batteries. Any cell-level-BMS becomes expensive due to this large number of cells. And there may not be enough space in the batteries to install multiple per-cell-systems without interfering with the forced airflow usually needed for cooling NiMH batteries.
It appears to me that the usual approach to NiMH battery management is to overcharge them at C/10 (or less) to equalise the cells. The more often this is done, the quicker the entire battery ages. But if the EQ charging is not done, then sooner or later cell reversal occurs during discharge. If the cell reversal goes undetected, then it will soon kill the affected cells and bring down the entire battery pack.
Alternatively, the SOC (State of Charge) is kept in a relatively narrow band around the 50% SOC area most of the time, like 40%-60% SOC. My hypothesis for how this works is this: It allows some cells to fall behind in SOC until they are being cycled between maybe 10%-30% SOC, while the highest cells cycle around 70%-90% SOC. Because the self-discharge rate (SDCR) is higher at higher SOC, they drift apart until the SDCR of the low cells is so low (and that of the high-SOC cells so high) that the difference in SOC stabilises. The battery is then imbalanced, but no cell reversal occurs, because only a small part of the capacity is ever used.
This approach might work well for hybrid vehicles, but if only such a small portion of the capacity is being accessed it restricts the range too severely for EV (electric vehicle) use.
Lithium BMSystems need to monitor every cell because the cells suffer quite severe damage if they are discharged to deeply or if they are over-charged. Once the over-charge or over-discharge has occurred, it is generally too late for Lithium cells.
But NiMH cells are much more resilient in this respect and I think that a system that detects the sudden drop by about 1.4V will prevent serious damage to the reversing cell - if the discharge is then stopped.
The reversal of a single cell in a NiMH battery string should be the latest point at which the discharge is terminated. If the discharge continues for too long, particularly if at a high current rate, then the cell will become irreversibly damaged.
Complicating all this is the fact that NiMH cell voltage is very dependent on discharge (or charge) current, SOC and temperature. It is very difficult - if not impossible - to reliably determine the remaining charge from the voltage of a NiMH cell.
And occasional deep discharges are required in order to remove voltage depression effects from the cells and sometimes to synchronise the "Fuel gauge", which progressively gets out of sync with the real SOC if it only relies on coulomb counting.
This graphs shows the voltage drop from a single reversing cell in a Vectrix 102s 30Ah NiMH battery pack. It is this small drop in pack voltage (at 12hrs:33min) that I want the IDeA to detect.
Red curve: Pack voltage (x100)
Blue curve: Current (x 1/10)
X-axis: hrs:min:sec:msec
So what you can see there is a drop in voltage from about 123V to 122V over a minute or so, under a current draw of about 1.1A .
Done on the bench with a constant current discharge it is easy to spot.
But under a, say, 200A current draw the battery voltage would immediately drop to about 105V. During on-road use, the constantly changing discharge currents (or charge from regenerative braking) make it impossible to spot such a small drop in voltage - unless one compares equal sub-strings to each other.
That's where the IDeA (Imbalance Detection Apparatus) comes in!
It compares the voltages of equal parts of the battery to each other, while they are experiencing identical charge and discharge currents. The cell temperatures would hopefully be similar enough to not introduce too much voltage difference between these sub-strings.
For the Vectrix pack of 102 serial connected cells, three segments of 34 cells each might be the best option to implement the IDeA.
Two segments of 51 cells would make it much more likely that a reversing cell occurs in each segment at the same time, making it invisible to the IDeA. Synchronous reversal of equal numbers of cells in 3 or 6 segments are much less likely, but monitoring six segments of 17 cells each involves a lot of dismantling and installation of cables and fuses close to live parts.
The 3x34 cells option could be installed easily, because all the relevant cells are in the top layer (of three layers) in the battery.
The work done so far is based on a circuit by G. La Rooy, Christchurch, New Zealand.
described here: http://www.siliconchip.com.au/cms/A_30610/article.html and here: http://www.extremecircuits.net/2009/12/battery-equality-monitor-circuit.html
This circuit was then extended to work for three battery segments by "Mikemitbike" here: http://visforvoltage.org/forum/9675...trix-battery-it-becomes-damaged#comment-54426
I did then play around with resistor values to tweak it a bit so that transistors with a hFE of 50 can be used, but the simulation was otherwise already complete. It was made using the applet at http://www.falstad.com/circuit/
Here is what it looks like:
Unfortunately the applet does not seem to have opto-couplers to simulate with, so LED's take their place.
Here is a schematic that shows it more clearly:
To see the simulation in action, paste the code (coming in the next post because it exceeds the 10000 chracter limit!) into the "Import" window of the applet. You can also run this applet from your computer after downloading it. Then change the voltages of the three battery parts a little bit (right click on components and select "Edit") to see what happens (the LED's light up). I assume I will not be able to post a reply to this first post immediately, so in the meantime you can grab the code from this post: http://visforvoltage.org/forum/9675...trix-battery-it-becomes-damaged#comment-54490
I have made a simulation to show how the IDeA part on the output side of the optocouplers will hopefully work with the rest of the Vectrix scooter:
The code for this simulation will also have to follow in the next post due to character limits of the forum software.
In the meantime you can grab it from here: http://visforvoltage.org/forum/9675...trix-battery-it-becomes-damaged#comment-54731
I better stop here before the post becomes completely unreadable - if it is not already!
I'll specify the questions I have in the next post. They mainly relate to the best approach for turning this from a simulation into a real prototype device....