Cell voltage monitoring a 14S LiPo - Page 1
Forum section: electronics / projects

author: Harvs
author_rank: Super Contributor
timestamp: December 01, 2016, 11:10:29 pm
content: I'm trying to think of an elegant way to monitor cell voltages across my 14S LiPo pack on my bike. Ideally I want something to live with the pack and switch on under software control (i.e. when a display gets turned on.)Everything I've looked at so far has gotten a bit ridiculous, e.g.- Put a cheap uC on each cell (internal ADC with internal reference) and opto-couple the result, about the best option so far.- Linear optocouplers - expensive and hard to achieve precision- High voltage muxes - the only ones I could find run at about $15ea for an 8:1, so will end up pretty expensive.- Split it into block of 4ish cells and use cheap muxes + micro on each block and opto-couple it together.Any thoughts on something fairly straightforward and cheapish to achieve the idea?

author: digsys
author_rank: Unknown
timestamp: December 02, 2016, 01:47:47 am
content: This is a 22 channel design I've done for solar / electric cars. It is completely open-source and many clubs etc have used it, either parts of it or the whole design.The key component is the LT1990, a +/- 250V precision differential op-amp (and has up to 10X precision gain, if required). Run twisted pair wires from EACH cell,DON'T rely on the next cell in series for the other half of the reference. That way you have +/- 250V isolation (if needed) between channels, plus more importantly,you don't get caught out with inter-connection losses / problems.This will give you a fully 0V referenced cell volatge, irrespective of ANY wiring configuration.oopswww.pbase.com/digsys/image/161061592

author: Harvs
author_rank: Super Contributor
timestamp: December 02, 2016, 05:49:52 am
content: Thanks for that, it looks good. I didn't know you could get difference amps up to that sort of voltage range. Certainly gives a lot of flexibility.Price does add up though, not significant for a one off, but you could put a uC, 18bit ADC and opto the output for that price. Still makes it very neat by comparison to other options.

author: digsys
author_rank: Unknown
timestamp: December 02, 2016, 09:17:00 am
content: It is an awesome diff-amp. One note: Always have a -rail (as shown), even -3V is enough. The linearity down near zero diff is not that good without it.The micro I use has 24+ 12bit ADC channels, with gain control. 12 bits is plenty. 4096 is nearly 1mV resolution per cell. Heaps

author: Harvs
author_rank: Super Contributor
timestamp: December 02, 2016, 09:31:52 am
content: I'm going I'll follow your lead, but I'll use an STM32F373 as I work with them all the time. It's mux gives 21 channels into 3x 16 bit sigma delta converters, but as always the level of noise on internal ADCs makes a couple of those bits fairly useless.I gathered it'd need a negative rail. I find the ease of generating a negative rail almost always pays off compared to dealing issues around 0V.Thanks for your help.

author: Marco
author_rank: Super Contributor
timestamp: December 02, 2016, 09:45:37 am
content: Intuitively for a lower cost approach I think I'd try to go in the direction of sampling capacitors, pulling them down to ground to do a measurement.

author: digsys
author_rank: Unknown
timestamp: December 02, 2016, 09:58:08 am
content: Quote from: HarvsAs shown, the MAX1044 / ICL7660 is very simple easy to use and quite adequate. IF you do their maths, often you'd believe you don't need a -ve rail. Not true.Glad it is of help

author: Siwastaja
author_rank: Super Contributor
timestamp: December 02, 2016, 10:12:33 am
content: What is the case where you need accurate sensing near 0V diff? My BMS doesn't even operate below Vcell=2.0V, because the battery is a brick and needs a replacement. As long as it doesn't report 0V as a valid voltage inside valid voltage range, it's meaningless.50k resistor over the cell seems a bit low value, do you really need it, or would something like 470k work? The leakage with 50k will be 60µA with empty cell at 3.2V. My BMS design leaks about 15µA, and I document a precaution that the BMS should be used on relatively large packs (>10Ah) only, or if used with small packs, the designer should carefully evaluate the usage case whether there is risk of overdischarge when the pack is drivenemptyand let sit formonthsbefore charging (which is a VERY usual scenario, almost surprisingly so; often completely overlooked in faulty products - I have seen so many destructed packs due to this failure mode, where the BMS becomes a battery destruction unit!)

author: Harvs
author_rank: Super Contributor
timestamp: December 02, 2016, 10:35:40 am
content: The specs for the LT1990 are significantly better when driven with a higher voltage dual supply compared to single 5V, which is to be expected for a diff amp. Not just around 0V diff, but also CMRR etc.It's one of those things where it's cheap and easy to generate the rails (like less than the price of a single amp), so why wouldn't you?

author: digsys
author_rank: Unknown
timestamp: December 02, 2016, 10:58:10 am
content: Quote from: SiwastajaInourcase, we often run packs down to near zero. As long as you re-calculate the max C rates, and don't have any cells depleted (as in some of my pix :-) ),the cells recover 100% fine. And as Harvs mentions, these ICs work well with reasonable extra headroom. As for those dead cells in the pix, we had to finish a race,so they were sacrificed. Plus I can always claim research purposes .. yeah that :-)Quote from: SiwastajaWell, our packs are ~ 50AH+, and when used, go through heavy duty cycles. Sometimes I use even lower value resistors. Their job is to minimize reading errors due tosurface charges etc during regen / idle / changes in power levels / SMode ripple. The packs also have a few RF caps to help with this. It doesn't seem much of a load,but it helps a lot. Plus it gives me a place-holder.Note: our packs are for race vehicles, so we likely have different requirements. And I have said before, as long as you re-profile the C charge / recharges, based oncharge state, we can run right to 0V without any degradation. For much lighter use, yes you are right, not needed that low at all.As for othersfaulty products, there may be many other reasons involved.Edit added: Plus I try to always be asperfectas possible when I design stuff. I would never leave a non-linear region, irrespective if I needed it or not.One thing you learn, those things will ALWAYS bite you one day !!

author: Marco
author_rank: Super Contributor
timestamp: December 02, 2016, 11:45:29 am
content: So would a capacitor, 3 resistors, two N-MOS and one P-MOS per cell be acceptable? That is AFAICS all you need.Charge capacitor to cell voltage through two large value resistors. Pull capacitor down to ground with a N-MOS and connect it to the ADC with a N-MOS/P-MOS pair, with the P-MOS having a pull up resistor on its gate. Quickly take the measurement (the battery is still connected through the resistors) and let the capacitor back up.You might also be able to do low cost V to I conversion at each cell with a shunt reference and some wizardry to get the voltages down to ground.

author: Harvs
author_rank: Super Contributor
timestamp: December 03, 2016, 08:28:15 pm
content: Quote from: Marco on December 02, 2016, 11:45:29 amMaybe? I was thinking about something kind of similar before, basically making a discrete analog mux of sorts to switch down to ground. But it's not the most straight forward thing. Would need some testing to see how accurate it is over the complete range.