# Low Cost Cell Voltage Monitoring



## jddcircuit (Mar 18, 2010)

I started working on this project quite some time ago but recently picked it back up and made some new progress.

Check out my power point presentation with theory of operation. Basically I am looking for a low cost way to monitor every cell voltage without inducing an imbalance over time with the parasitic leakage currents of my monitoring circuit.

https://drive.google.com/open?id=0ByvAoBSpt8yfQlVEVlpOTXBFcjg


Here is a picture of my monitoring boards attached to 88 cell LFP pack. The cells are pretty old so there is some capacity variation among them.








This version of my monitoring circuit only draws 12uA +/- .5uA. So with less than 1uA difference between parasitic leakage currents it would take over 1Million hours to induce an imbalance of 1Ah.









There are 4 of these Voltage to Time Converter circuits per PCB for total of 8 cells. The comparator pulses are passed through each daisy chained board without delay to an opto-isolated microprocessor at the end of chain. The micro captures the input pulse time intervals and finishes the digital conversion.









I am now on a quest for seeing if balancing is really necessary or not.

I was doing a Deep Discharge Bounce Back test to see if I could find if some of my cells contained internal soft shorts or not. I thought I found one but then over the weekend it seems to have self corrected without any interaction on my part. Very puzzling to me.









Here is graph of the discharge curve for all 88 cells. They all seem to go over the knee at the end of discharge at about the same time.









Regards
Jeff


----------



## palmer_md (Jul 22, 2011)

very nice work. Thanks for sharing your progress.


----------



## AntronX (Feb 23, 2009)

Nice work, could you share circuit schematic? I can't get your power point presentation to work.


----------



## jddcircuit (Mar 18, 2010)

AntronX said:


> Nice work, could you share circuit schematic? I can't get your power point presentation to work.


Here is the schematic for a single voltage converter for 2 cells. You will notice on the circuit boards there are 4 of these circuits in series for converting 8 cells.


----------



## dcb (Dec 5, 2009)

I recall, it is a very interesting arrangement. fwiw I had sorted isolated VCO for about $0.50/cell/125uA as a thought experiment, but realized temperature sensitivity was an issue, esp for the caps/voltage refs. Have you considered temperature effects?


----------



## jddcircuit (Mar 18, 2010)

dcb said:


> I recall, it is a very interesting arrangement. fwiw I had sorted isolated VCO for about $0.50/cell/125uA as a thought experiment, but realized temperature sensitivity was an issue, esp for the caps/voltage refs. Have you considered temperature effects?


I hit it with a heat gun and it seems to be quite stable.

I did however realize that I needed to use a discharge cap with COG designated dielectric. I couldn't figure out why my accuracy was not good and then discovered that the capacitors change in value depending on the applied voltage. My circuit expects the capacitance to be constant through the 5ms discharge curve of the RC network used for conversion. Slow changes in capacitance related to temperature don't have an effect on the conversion.

On this version I also added some needed filtering to the data and trigger lines.


----------



## Sunking (Aug 10, 2009)

jddcircuit said:


> Basically I am looking for a low cost way to monitor every cell voltage without inducing an imbalance over time with the parasitic leakage currents of my monitoring circuit.


When you figure that out, you will be a very rich man.


----------



## dcb (Dec 5, 2009)

Lol, people aren't getting rich off of DIY'evrs. And people design BMS's just for the fun of it. Nobody is gonna get rich off of low volume low cost.


----------



## Sunking (Aug 10, 2009)

dcb said:


> Lol, people aren't getting rich off of DIY'evrs. And people design BMS's just for the fun of it. Nobody is gonna get rich off of low volume low cost.


It was a compliment. At 12 micro-amp difference it would take 9 years to discharge 1 Amp Hour or roughly 3 Watt Hours. 

What I find troubling is how can the monitor with processing power and some sort of interface only consume 12 micro-amps at 3.2 volts. That is less than self discharge of the battery. Just does not sound right, 3 watt hours in 9 years? Maybe a month I could swallow, but have trouble with 9 years.

I must of missed something.


----------



## jddcircuit (Mar 18, 2010)

Sunking said:


> It was a compliment. At 12 micro-amp difference it would take 9 years to discharge 1 Amp Hour or roughly 3 Watt Hours.
> 
> What I find troubling is how can the monitor with processing power and some sort of interface only consume 12 micro-amps at 3.2 volts. That is less than self discharge of the battery. Just does not sound right, 3 watt hours in 9 years? Maybe a month I could swallow, but have trouble with 9 years.
> 
> I must of missed something.


The posted schematic is for a single Voltage to Time converter for two cells. It is powered from the two cells (6.4V) and only draws 12uA. I noted on the schematic where the majority of the current is going. There is no muxing, clocks, or digital processing overhead on this cell referenced modules to minimize the quiescent currents.

I put 4 of these circuits on a single PCB for ease of installation.

There is a low power daisy chained data link between the VTC modules all the way to the most southern cell. This data link does draw some power during conversion data transfer. The amount of power is proportional to the frequency of conversion and the number of cells in the stack.

The most north board has to drive slightly more power to communicate than the most southern board. With a voltage update every 2 seconds and 100 cells in the stack I think I calculated a 4uA difference between the first cell and the 100th cell. If you are not updating then the data power penalty does not apply.
CORRECTION: the more southern cells have higher data traffic burden so the power is slightly less for more northern cells in the stack.

Data bus power calculations:
40usec * 1mA * 4 pulses = 160nC per cell pair conversion
160nC * 50 cell pairs = 8uC for 100 cells
at 2 second intervals = 4uA for 100 cells
at 10 second intervals = .8uA for 100 cells
So depending on how often the voltages are converted and transmitted can create a slight power imbalance between the north and south cells but this is very very small.

I do have ways to offset the data link imbalance but I think it is acceptable for now. If I add a mirrored data link in the north direction then it would offset the link to the south and thus balance the data transmission power for all cells. I decided not to do this because it would add another wire to the daisy chain and the pay off was not significant.

My processor that collects, decodes, and displays the voltages is powered from an isolated 12V supply so it does not contribute to imbalancing the individual cells within the stack.

I am comfortable with the overall power consumption for now. I can see ways to make this even lower but not a priority at this time.

thanks
jeff


----------



## jddcircuit (Mar 18, 2010)

Besides getting rich

My hope is that if this method holds water that eventually it could be made into a single IC and take cell monitoring costs even lower. So low that we won't avoid monitoring our cells due to costs.

If making an IC becomes a reality there are several other features I would add since I wouldn't have to solder the extra components
- Improved accuracy
- Further reduce the current draw and residual imbalance of the data bus
- Passive balancing shunts that latch for a fixed duration when triggered
- aux inputs for temperature conversion


----------



## Moltenmetal (Mar 20, 2014)

A feature I'd like would be the ability to defeat the balancing when it's not required. This approach looks awesome- well done!


----------



## Zimnismoboy34 (Sep 27, 2016)

You can disable cell balancing on bigger more expensive bms systems .
But why when you can either charge to below the bms cell balancing voltage usually set to 3.5vpc . most bottom balanced systems charge to 3.45-3.49vpc.
Secondly Ideally the knees of the cells are where cells actually race away from each other, the smallest cell is always the first to reach these knees.
So stay away from the knees and don't risk carpet burn he he he .
its a compromise that makes the most sense and will yield the best the results .
Longer cell life because you aren't charging full and cells do stay balanced when used correctly .
Now to the op the system is really nice and looks good, I don't think you need the balancing shunts or bleed resistors .
Don't worry about it as the most important systems need thermal cut off high or low and Voltage high and low basically the monitoring system is ideal for a pack that needs many cells watched over during charge and discharge.


----------



## sholland (Jan 16, 2012)

jddcircuit said:


> Here is graph of the discharge curve for all 88 cells. They all seem to go over the knee at the end of discharge at about the same time.
> View attachment 64650


It's kind of hard to tell from that plot as the cells don't all start from the same voltage. They seem to have ~50mV spread at the top of SoC, but a greater spread at the bottom of SoC. I think if you balanced all the cells to within a couple of mV's then did the same test you would see some cells moving to slightly different curves than others...


----------



## Zimnismoboy34 (Sep 27, 2016)

I agree looking at the graphs those cells do start all over the place and do end up relatively in the same place, meaning they have been top balanced I would be more inclined to ask if they were bottom balanced correctly, to ensure they hit the low voltage at the same time .


----------



## PStechPaul (May 1, 2012)

One concept that I have been exploring is using a DG408 octal analog switch, or a DG409 4 channel differential switch, which has a current draw of only about 10 uA. It has a maximum supply voltage of 44V, so it will easily measure 8 lithium cells. A microprocessor can select any one of the cells for measurement, which can be done with perhaps a 1 mSec sample time to charge a capacitor every second, so even if the sample takes 1 mA the average will be only 1 uA. The MPU could be powered from each bank of 8 cells such that it draws current for short durations during which it can do its processing and send a stream of data over an isolated link to a main processing unit powered from the 12V accessory battery or the charger.

I agree that balancing shunts may not be required, except perhaps for a separate balancing circuit that might be attached to a bank of cells when an imbalance is detected by the monitors.


----------



## WolfTronix (Feb 8, 2016)

You just described off the shelf chips:
http://www.ti.com/lit/ds/symlink/bq77pl900.pdf
http://www.ti.com/lit/ds/symlink/bq76pl536a.pdf
http://www.ams.com/eng/content/download/476603/1402377/244331
http://www.ti.com/lit/ds/symlink/bq76925.pdf
http://www.ti.com/lit/ds/symlink/bq78pl116.pdf
http://www.intersil.com/content/dam/Intersil/documents/isl9/isl94203.pdf
etc...

If I was designing a BMS for a large series pack, I would just use one of these chips. They have already done all the hard work for you. Some even have the balancer FETs built in, just add resistors. 



PStechPaul said:


> One concept that I have been exploring is using a DG408 octal analog switch, or a DG409 4 channel differential switch, which has a current draw of only about 10 uA. It has a maximum supply voltage of 44V, so it will easily measure 8 lithium cells. A microprocessor can select any one of the cells for measurement, which can be done with perhaps a 1 mSec sample time to charge a capacitor every second, so even if the sample takes 1 mA the average will be only 1 uA. The MPU could be powered from each bank of 8 cells such that it draws current for short durations during which it can do its processing and send a stream of data over an isolated link to a main processing unit powered from the 12V accessory battery or the charger.
> 
> I agree that balancing shunts may not be required, except perhaps for a separate balancing circuit that might be attached to a bank of cells when an imbalance is detected by the monitors.


----------



## jddcircuit (Mar 18, 2010)

sholland said:


> It's kind of hard to tell from that plot as the cells don't all start from the same voltage. They seem to have ~50mV spread at the top of SoC, but a greater spread at the bottom of SoC. I think if you balanced all the cells to within a couple of mV's then did the same test you would see some cells moving to slightly different curves than others...


It is a little hard to tell. There is about a +/- 20mV accuracy in the circuit which creates the spread that you see. Plenty good for keeping within operating limits. The precision is about 1mV so it is possible to calculate relative measurements like internal resistance.

However the knee can be viewed as an increase in the rate of change which only needs relative precision. If run the shape of the slope thru a filter I can see where the knee is by the change in the slope.

Thanks
Jeff


----------



## sholland (Jan 16, 2012)

I guess my concern is that I see some different curves across the cells... Just in the top knee area I see a blue line following a very different profile from the others. You can also see some different cell curves in the center of the SoC area, e.g. looking at the delta between the bottom most orange trace and the light blue trace near the middle. The orange trace also seems to drop off much sooner than the others at the bottom knee.

Depending on where you end up when the attach the charger, there could be quite a large delta when charging is again applied. Without some kind of balancing that delta will only grow. Monitoring at least is a must to determine when you should manual balance...


----------



## PStechPaul (May 1, 2012)

The off-the-shelf chips have idle current draw of 40-450 uA, although even the high figure takes 2.5 years to drain 10 A-h. I think much of the concern about current draw and unbalancing due to a BMS is unfounded. It's probably a good idea to do a fairly complete maintenance procedure on a battery pack every year, at which time you can rebalance as needed. I prefer designing my own more because it is a fun challenge, and not to save money or come up with the world's best and cheapest BMS. 

BTW, I found a very similar discharge curve for a cheap LiFePO4 18650 cell supposedly rated at 1800 mA-h but actually closer to 1100. The curve takes a pretty sharp turn at both ends:


----------



## jddcircuit (Mar 18, 2010)

WolfTronix said:


> You just described off the shelf chips:
> http://www.ti.com/lit/ds/symlink/bq77pl900.pdf
> http://www.ti.com/lit/ds/symlink/bq76pl536a.pdf
> http://www.ams.com/eng/content/download/476603/1402377/244331
> ...


I could use the chips you mention. I wish I had already so I could compare.

However, my theory is that these ICs are possibly creating the imbalance over time due to small differences in parasitic current draw during conversion and communications. You mention they have balancer FETs but what if you didn't need them or better yet have to create the algorithm that decides when to use them.

If anyone has experience with these ICs and could inform me of the range of leakage current they are experiencing it would be much appreciated. I find it difficult to extract from the data sheet. There are so many different operating modes.

For example if there is a 1ma difference between cell groups then it would only take 1000 hours to create a 1Ah difference which would inevitably require rebalancing at some point.

Thanks
Jeff


----------



## sholland (Jan 16, 2012)

jddcircuit said:


> I could use the chips you mention. I wish I had already so I could compare.
> 
> However, my theory is that these ICs are possibly creating the imbalance over time due to small differences in parasitic current draw during conversion and communications. You mention they have balancer FETs but what if you didn't need them or better yet have to create the algorithm that decides when to use them.
> 
> ...


The leakage current on the cell inputs for the bq76PL536A is ~10nA, 100nA max. The IC itself is powered from the local stack of cells it is monitoring, and it consumes ~45uA in idle, and 10 - 15mA sending measured data back to the host. There is also a sleep mode where it consumes just 12uA. 

Another device is the bq76PL455A which is a 16 channel device, and it has a bit higher input leakage of ~4uA, only during sampling, and its consumption from the local stack of cells is 5 - 7mA. There is a sleep mode where it consumes just 22uA.

Both of these devices have integrated protector functions, so dedicated comparators on each cell input with a configurable threshold. If doing nothing else at all, they will at least give a fault output if the configured thresholds are surpassed.


----------



## jddcircuit (Mar 18, 2010)

sholland said:


> The leakage current on the cell inputs for the bq76PL536A is ~10nA, 100nA max. The IC itself is powered from the local stack of cells it is monitoring, and it consumes ~45uA in idle, and 10 - 15mA sending measured data back to the host. There is also a sleep mode where it consumes just 12uA.
> 
> Another device is the bq76PL455A which is a 16 channel device, and it has a bit higher input leakage of ~4uA, only during sampling, and its consumption from the local stack of cells is 5 - 7mA. There is a sleep mode where it consumes just 22uA.
> 
> Both of these devices have integrated protector functions, so dedicated comparators on each cell input with a configurable threshold. If doing nothing else at all, they will at least give a fault output if the configured thresholds are surpassed.


That is a very good breakdown of what is stated in the spec sheets.
This may be useful but I haven't figured out what this means in real world.

Assume performing a voltage query of all cells once per second. How much and with what variation in current will the modules consume? If the variation in average current consumption between modules is in the order of a mA then it will only take 1000 hours to create a 1Ah imbalance between groups which is too high in some applications.

I have no idea what the module to module variation will be. Seems to rely heavily on the implementation and use of sleep and idle modes.

For EVs continuous monitoring is not needed since they are parked 90% of the time excluding charging. However we also could consider energy storage systems that may be continuously active.

Thanks


----------



## sholland (Jan 16, 2012)

Normally, all modules are being queried simultaneously with a broadcast command, so they all see the same small load. The difference between modules is usually almost nothing.

It is really up to the user how often they are put into a shutdown mode. During normal driving, the report rate could be anywhere from 20ms to 1 second or longer depending on the OEMs functional safety or performance requirements. When parked, they may startup every hour or so, just to update the SoC, so the range when starting again is a relatively current estimate. Other sensors may trigger an update when parked, such as an impact sensor or other alarm.

What a DiY'er needs will obviously be up to their own definition...


----------



## Zimnismoboy34 (Sep 27, 2016)

Just a quick question as ive been down this road and shortly after travelling on it decided it was way above my pay grade !!!! lol . What about an algorithm that is set in the Chip to only monitor when there is activity on the inputs .
So effectively the bms goes to sleep sending out a random check on cells at given 1 min intervals, this essentially is when the energy storage isn't being used, in both cars and standby energy this would mean a voltage of say 3.85v this wouldn't change if no energy is going in or out by much maybe .001v but only because of draw from the battery monitor system .
So when there is a deviation in Cells or cell from a given fixed voltage it would then come out of sleep mode and wake up to monitor cells under load and or charge effectively making sure LVC and HVC was kept in check !!!
Then once the users finished the charge or driving the car ... it goes back to sleep say after a given standing time of 3 hrs .
This will ensure the bms is a hybrid both active and inactive when the user needed it to be ?
Or alternatively a ignition commanded sleep state when ignition is off the bms only monitors cells every 30 mins etc.
Just a theory not too sure the logic or workings but plausible enough to make a go of it ?


----------



## PStechPaul (May 1, 2012)

It should be possible to use something like a 20 megohm resistor on a 400 volt pack, and a 10 uF capacitor, that will charge to perhaps 12 VDC in 6 seconds with a drain of 20 uA. Every 6 seconds the BMS could wake up and use the stored energy to power up the BMS and check the SOC. The stored energy (720 uJ) would provide 100 uA for 500 mSec (250 uJ at 5 V), long enough to check status, and enough to flash an LED at 2 mA for 100 mSec (400 uJ at 2V). The flashing LED would indicate that the pack is charged up and the BMS is operating. The LED could be green, yellow, or red, depending on the SOC and any problems detected. The 20 uA constant drain will drain just 1 A-h in 50,000 hours, or about 5 years.


----------

