Electronics-Related.com
Forums

Analog MUX using discrete MOSFETs for flying capacitor cell measurement BMS

Started by P E Schoen November 10, 2017
My latest project is a battery management system (BMS) that can accurately 
measure cells in a lithium battery pack, and also perform shunt balancing 
and possibly charge shuttling to balance the pack. I would also like to be 
able to use it for a pack of four 12V SLA batteries. A DG408 could be used 
to select up to 8 cell voltage taps from nominal 3.2V (LiFePO4) or 3.7V 
(Li-Ion), with a maximum voltage of 8 * 4.2 or 33.6V, which is within the 
maximum voltage of 40V for the DG408. But the voltage would need a 12:1 
voltage divider to read using a PIC with a 3V power supply (from the bottom 
cell), and this renders the precision of the 10 bit ADC to 33.6/1024=0.032V, 
which is really not accurate enough for lithium cell monitoring.

I did a preliminary design using a DG409 which can read any one of four 
cells differentially, or two DG408s for 8 cells. The outputs can be fed to a 
"flying capacitor", which will hold a voltage sample taken from a cell, and 
then a pair of MOSFETs can translate that charge to ground level so the ADC 
can read it using the full range allowed by the reference.

Another method, used by some BMS chips, utilizes a high CMRR differential 
amplifier to translate the samples to the ADC.

It is also desired to implement shunt charge balancing, where selected cells 
that have a higher voltage can be discharged to match lower cells in the 
pack. This is wasteful, but is a commonly used method, and can be done with 
MOSFETs and resistors.

It is also possible to use charge shuttling, where the flying capacitor can 
be connected to lower voltage cells so that its charge adds to that of the 
low cell. But this requires a fairly large capacitor and a low resistance 
MUX. The DG408/9 have about 50 ohms per element, so that severely limits the 
practicality of such charge shuttling.

So, I endeavored to design a multiplexer using discrete MOSFETs. My first 
attempt used MOSFET opto-isolators, but they are somewhat costly and use a 
fair amount of current for the LED. Then I tried several designs using 
discrete MOSFETs, and it looks to be successful, although it's a bit 
complex. Here is the LTSpice file for a simulation:

http://enginuitysystems.com/pix/electronics/Analog_Mux_1.asc

Here is an image of a complete schematic (as it stands now):

http://enginuitysystems.com/pix/electronics/BMS_MOSFET_1.png

And a PDF that may be easier to view:

http://enginuitysystems.com/pix/electronics/BMS_MOSFET.pdf

I think this should work pretty well, and the discrete MOSFETs should be 
able to carry at least 100 mA to perform shunt balancing. A larger sampling 
capacitor might be able to provide charge shuttling. The circuit seems 
pretty efficient and should work on cell voltages of 2.5 to 4.5 volts, and 
12V nominal batteries.

If anyone has a schematic for the DG408 or similar analog MUX, I'd 
appreciate a link to the design. What I found from searching turned up NMOS 
and PMOS devices in anti-parallel, which won't work because of the body 
diodes. In series should work, but providing the correct gate voltages is a 
challenge. 

On a sunny day (Fri, 10 Nov 2017 04:04:51 -0500) it happened "P E Schoen"
<paul@pstech-inc.com> wrote in <ou3q3o$g6k$1@dont-email.me>:

>My latest project is a battery management system (BMS) that can accurately >measure cells in a lithium battery pack, and also perform shunt balancing >and possibly charge shuttling to balance the pack. I would also like to be >able to use it for a pack of four 12V SLA batteries. A DG408 could be used >to select up to 8 cell voltage taps from nominal 3.2V (LiFePO4) or 3.7V >(Li-Ion), with a maximum voltage of 8 * 4.2 or 33.6V, which is within the >maximum voltage of 40V for the DG408. But the voltage would need a 12:1 >voltage divider to read using a PIC with a 3V power supply (from the bottom >cell), and this renders the precision of the 10 bit ADC to 33.6/1024=0.032V, >which is really not accurate enough for lithium cell monitoring. > >I did a preliminary design using a DG409 which can read any one of four >cells differentially, or two DG408s for 8 cells. The outputs can be fed to a >"flying capacitor", which will hold a voltage sample taken from a cell, and >then a pair of MOSFETs can translate that charge to ground level so the ADC >can read it using the full range allowed by the reference. > >Another method, used by some BMS chips, utilizes a high CMRR differential >amplifier to translate the samples to the ADC. > >It is also desired to implement shunt charge balancing, where selected cells >that have a higher voltage can be discharged to match lower cells in the >pack. This is wasteful, but is a commonly used method, and can be done with >MOSFETs and resistors. > >It is also possible to use charge shuttling, where the flying capacitor can >be connected to lower voltage cells so that its charge adds to that of the >low cell. But this requires a fairly large capacitor and a low resistance >MUX. The DG408/9 have about 50 ohms per element, so that severely limits the >practicality of such charge shuttling. > >So, I endeavored to design a multiplexer using discrete MOSFETs. My first >attempt used MOSFET opto-isolators, but they are somewhat costly and use a >fair amount of current for the LED. Then I tried several designs using >discrete MOSFETs, and it looks to be successful, although it's a bit >complex. Here is the LTSpice file for a simulation: > >http://enginuitysystems.com/pix/electronics/Analog_Mux_1.asc > >Here is an image of a complete schematic (as it stands now): > >http://enginuitysystems.com/pix/electronics/BMS_MOSFET_1.png > >And a PDF that may be easier to view: > >http://enginuitysystems.com/pix/electronics/BMS_MOSFET.pdf > >I think this should work pretty well, and the discrete MOSFETs should be >able to carry at least 100 mA to perform shunt balancing. A larger sampling >capacitor might be able to provide charge shuttling. The circuit seems >pretty efficient and should work on cell voltages of 2.5 to 4.5 volts, and >12V nominal batteries. > >If anyone has a schematic for the DG408 or similar analog MUX, I'd >appreciate a link to the design. What I found from searching turned up NMOS >and PMOS devices in anti-parallel, which won't work because of the body >diodes. In series should work, but providing the correct gate voltages is a >challenge.
My idea is n small switchers with each one PIC and 1 MOSFET, so 1 for each cell, isolated. and fed from a 1 turn on a big transformer driven by 2 MOSFETS push pull oscillator Big charge currents no problem. Avoids disspiating power in parallel MOSFETS, no heat. Usenet patent. When mass produced the small PCBs are possibly cheaper. And greener.
Since 4-pin MOSFETs are nearly unavailable (not completely extinct, but, I'm 
not aware of any over 6V), you have to replace them with back-to-back 
MOSFETs, and a suitable drive arrangement.  In short -- trace out the body 
diodes in your circuit.

This is a good application for photoMOS relays:
https://www.digikey.com/short/q3cnbr
PhotoFET optos also come to mind,
http://www.mouser.com/ds/2/149/h11f1m-185284.pdf

Tim

-- 
Seven Transistor Labs, LLC
Electrical Engineering Consultation and Contract Design
Website: https://www.seventransistorlabs.com/

"P E Schoen" <paul@pstech-inc.com> wrote in message 
news:ou3q3o$g6k$1@dont-email.me...
> My latest project is a battery management system (BMS) that can accurately > measure cells in a lithium battery pack, and also perform shunt balancing > and possibly charge shuttling to balance the pack. I would also like to be > able to use it for a pack of four 12V SLA batteries. A DG408 could be used > to select up to 8 cell voltage taps from nominal 3.2V (LiFePO4) or 3.7V > (Li-Ion), with a maximum voltage of 8 * 4.2 or 33.6V, which is within the > maximum voltage of 40V for the DG408. But the voltage would need a 12:1 > voltage divider to read using a PIC with a 3V power supply (from the > bottom cell), and this renders the precision of the 10 bit ADC to > 33.6/1024=0.032V, which is really not accurate enough for lithium cell > monitoring. > > I did a preliminary design using a DG409 which can read any one of four > cells differentially, or two DG408s for 8 cells. The outputs can be fed to > a "flying capacitor", which will hold a voltage sample taken from a cell, > and then a pair of MOSFETs can translate that charge to ground level so > the ADC can read it using the full range allowed by the reference. > > Another method, used by some BMS chips, utilizes a high CMRR differential > amplifier to translate the samples to the ADC. > > It is also desired to implement shunt charge balancing, where selected > cells that have a higher voltage can be discharged to match lower cells in > the pack. This is wasteful, but is a commonly used method, and can be done > with MOSFETs and resistors. > > It is also possible to use charge shuttling, where the flying capacitor > can be connected to lower voltage cells so that its charge adds to that of > the low cell. But this requires a fairly large capacitor and a low > resistance MUX. The DG408/9 have about 50 ohms per element, so that > severely limits the practicality of such charge shuttling. > > So, I endeavored to design a multiplexer using discrete MOSFETs. My first > attempt used MOSFET opto-isolators, but they are somewhat costly and use a > fair amount of current for the LED. Then I tried several designs using > discrete MOSFETs, and it looks to be successful, although it's a bit > complex. Here is the LTSpice file for a simulation: > > http://enginuitysystems.com/pix/electronics/Analog_Mux_1.asc > > Here is an image of a complete schematic (as it stands now): > > http://enginuitysystems.com/pix/electronics/BMS_MOSFET_1.png > > And a PDF that may be easier to view: > > http://enginuitysystems.com/pix/electronics/BMS_MOSFET.pdf > > I think this should work pretty well, and the discrete MOSFETs should be > able to carry at least 100 mA to perform shunt balancing. A larger > sampling capacitor might be able to provide charge shuttling. The circuit > seems pretty efficient and should work on cell voltages of 2.5 to 4.5 > volts, and 12V nominal batteries. > > If anyone has a schematic for the DG408 or similar analog MUX, I'd > appreciate a link to the design. What I found from searching turned up > NMOS and PMOS devices in anti-parallel, which won't work because of the > body diodes. In series should work, but providing the correct gate > voltages is a challenge.
On Fri, 10 Nov 2017 04:04:51 -0500, "P E Schoen" <paul@pstech-inc.com>
wrote:

>My latest project is a battery management system (BMS) that can accurately >measure cells in a lithium battery pack, and also perform shunt balancing >and possibly charge shuttling to balance the pack. I would also like to be >able to use it for a pack of four 12V SLA batteries. A DG408 could be used >to select up to 8 cell voltage taps from nominal 3.2V (LiFePO4) or 3.7V >(Li-Ion), with a maximum voltage of 8 * 4.2 or 33.6V, which is within the >maximum voltage of 40V for the DG408. But the voltage would need a 12:1 >voltage divider to read using a PIC with a 3V power supply (from the bottom >cell), and this renders the precision of the 10 bit ADC to 33.6/1024=0.032V, >which is really not accurate enough for lithium cell monitoring. > >I did a preliminary design using a DG409 which can read any one of four >cells differentially, or two DG408s for 8 cells. The outputs can be fed to a >"flying capacitor", which will hold a voltage sample taken from a cell, and >then a pair of MOSFETs can translate that charge to ground level so the ADC >can read it using the full range allowed by the reference. > >Another method, used by some BMS chips, utilizes a high CMRR differential >amplifier to translate the samples to the ADC. > >It is also desired to implement shunt charge balancing, where selected cells >that have a higher voltage can be discharged to match lower cells in the >pack. This is wasteful, but is a commonly used method, and can be done with >MOSFETs and resistors. > >It is also possible to use charge shuttling, where the flying capacitor can >be connected to lower voltage cells so that its charge adds to that of the >low cell. But this requires a fairly large capacitor and a low resistance >MUX. The DG408/9 have about 50 ohms per element, so that severely limits the >practicality of such charge shuttling. > >So, I endeavored to design a multiplexer using discrete MOSFETs. My first >attempt used MOSFET opto-isolators, but they are somewhat costly and use a >fair amount of current for the LED. Then I tried several designs using >discrete MOSFETs, and it looks to be successful, although it's a bit >complex. Here is the LTSpice file for a simulation: > >http://enginuitysystems.com/pix/electronics/Analog_Mux_1.asc > >Here is an image of a complete schematic (as it stands now): > >http://enginuitysystems.com/pix/electronics/BMS_MOSFET_1.png > >And a PDF that may be easier to view: > >http://enginuitysystems.com/pix/electronics/BMS_MOSFET.pdf > >I think this should work pretty well, and the discrete MOSFETs should be >able to carry at least 100 mA to perform shunt balancing. A larger sampling >capacitor might be able to provide charge shuttling. The circuit seems >pretty efficient and should work on cell voltages of 2.5 to 4.5 volts, and >12V nominal batteries. > >If anyone has a schematic for the DG408 or similar analog MUX, I'd >appreciate a link to the design. What I found from searching turned up NMOS >and PMOS devices in anti-parallel, which won't work because of the body >diodes. In series should work, but providing the correct gate voltages is a >challenge.
That's awfully complex. Why not just slam the mosfet gates from some open-drain things, to ground? Opto-ssrs would sure be easy. -- John Larkin Highland Technology, Inc lunatic fringe electronics
"John Larkin"  wrote in message 
news:39kb0d1pni0gf8pd3bv1tbh12hbd11cfqv@4ax.com...

> That's awfully complex.
> Why not just slam the mosfet gates from some open-drain things, to ground?
The PMOS devices are pulled to ground, with gate protection for when the pack voltage is greater than the rated 20V. They are used for the voltages that are above GND, but they don't work for the ground voltage. Of course, that is not really needed. The low voltage taps, including GND, are read with NMOS devices, gates pulled high.
> Opto-ssrs would sure be easy.
They were considered previously. Here is a design using TLP222, which are about $1 each, and have 2 ohms ON resistance and can handle 500 mA. The TLP175 is rated for 100 mA, has a trigger current of 1 mA, and is about $0.60 each. Here is my design using that topology (yes, much simpler): http://enginuitysystems.com/pix/electronics/BMS_TLP222.png And a design using a DG408 for 8 channels: http://enginuitysystems.com/pix/electronics/BMS_DG408.png For that design, I was going to use an RC circuit and a comparator for each of the cell voltages to GND. The voltage would be determined by the charge time on the capacitor, which can be measured to 16 bits. An additional DG408 would allow 8 channels of differential measurement, and a high CMRR differential amplifier could provide GND reference for the ADC. A DG409 would provide 4 channels. The flying capacitor topology could be implemented as well. Paul
"Tim Williams"  wrote in message news:ou4esp$3an$1@dont-email.me...

> Since 4-pin MOSFETs are nearly unavailable (not completely extinct, but, > I'm not aware of any over 6V), you have to replace them with back-to-back > MOSFETs, and a suitable drive arrangement. In short -- trace out the body > diodes in your circuit.
I have considered that approach, but it only works for channels more than about 2 volts below the supply rail or above GND.
> This is a good application for photoMOS relays: > https://www.digikey.com/short/q3cnbr
Yes, I have considered the TLP179 and the TLP222 for lower ON resistance and higher current. They are about $0.69 and $0.96 each in 100 piece quantity. That may be the easiest.
> PhotoFET optos also come to mind, > http://www.mouser.com/ds/2/149/h11f1m-185284.pdf
I have used them in the past. They are rather expensive. Tim -- Seven Transistor Labs, LLC Electrical Engineering Consultation and Contract Design Website: https://www.seventransistorlabs.com/ "P E Schoen" <paul@pstech-inc.com> wrote in message news:ou3q3o$g6k$1@dont-email.me...
> My latest project is a battery management system (BMS) that can accurately > measure cells in a lithium battery pack, and also perform shunt balancing > and possibly charge shuttling to balance the pack. I would also like to be > able to use it for a pack of four 12V SLA batteries. A DG408 could be used > to select up to 8 cell voltage taps from nominal 3.2V (LiFePO4) or 3.7V > (Li-Ion), with a maximum voltage of 8 * 4.2 or 33.6V, which is within the > maximum voltage of 40V for the DG408. But the voltage would need a 12:1 > voltage divider to read using a PIC with a 3V power supply (from the > bottom cell), and this renders the precision of the 10 bit ADC to > 33.6/1024=0.032V, which is really not accurate enough for lithium cell > monitoring. > > I did a preliminary design using a DG409 which can read any one of four > cells differentially, or two DG408s for 8 cells. The outputs can be fed to > a "flying capacitor", which will hold a voltage sample taken from a cell, > and then a pair of MOSFETs can translate that charge to ground level so > the ADC can read it using the full range allowed by the reference. > > Another method, used by some BMS chips, utilizes a high CMRR differential > amplifier to translate the samples to the ADC. > > It is also desired to implement shunt charge balancing, where selected > cells that have a higher voltage can be discharged to match lower cells in > the pack. This is wasteful, but is a commonly used method, and can be done > with MOSFETs and resistors. > > It is also possible to use charge shuttling, where the flying capacitor > can be connected to lower voltage cells so that its charge adds to that of > the low cell. But this requires a fairly large capacitor and a low > resistance MUX. The DG408/9 have about 50 ohms per element, so that > severely limits the practicality of such charge shuttling. > > So, I endeavored to design a multiplexer using discrete MOSFETs. My first > attempt used MOSFET opto-isolators, but they are somewhat costly and use a > fair amount of current for the LED. Then I tried several designs using > discrete MOSFETs, and it looks to be successful, although it's a bit > complex. Here is the LTSpice file for a simulation: > > http://enginuitysystems.com/pix/electronics/Analog_Mux_1.asc > > Here is an image of a complete schematic (as it stands now): > > http://enginuitysystems.com/pix/electronics/BMS_MOSFET_1.png > > And a PDF that may be easier to view: > > http://enginuitysystems.com/pix/electronics/BMS_MOSFET.pdf > > I think this should work pretty well, and the discrete MOSFETs should be > able to carry at least 100 mA to perform shunt balancing. A larger > sampling capacitor might be able to provide charge shuttling. The circuit > seems pretty efficient and should work on cell voltages of 2.5 to 4.5 > volts, and 12V nominal batteries. > > If anyone has a schematic for the DG408 or similar analog MUX, I'd > appreciate a link to the design. What I found from searching turned up > NMOS and PMOS devices in anti-parallel, which won't work because of the > body diodes. In series should work, but providing the correct gate > voltages is a challenge.
"Jan Panteltje"  wrote in message news:ou44at$5dc$1@adenine.netfront.net...

> My idea is n small switchers with each one PIC and 1 MOSFET, so 1 for each > cell, isolated. and fed from a 1 turn on a big transformer driven by 2 > MOSFETS push pull oscillator
> Big charge currents no problem.
> Avoids disspiating power in parallel MOSFETS, no heat.
> Usenet patent.
> When mass produced the small PCBs are possibly cheaper. And greener.
I have also considered such a design. Small PICs are like 50 cents each. But the problem is with communication of the cell voltages to a master processor for display and control. It is possible (and has been done) to daisy-chain multiple units with communication up and down the chain, but that involves opto-isolators or MOSFETs which increases complexity and cost. There is a long-running thread in the DIYelectricCar forum where various topologies are being discussed. The most recent discussion starts about here and on following pages: http://www.diyelectriccar.com/forums/showthread.php/bms-design-guidelines-82646p8.html Paul
On Fri, 10 Nov 2017 15:32:15 -0500, "P E Schoen" <paul@pstech-inc.com>
wrote:

>"John Larkin" wrote in message >news:39kb0d1pni0gf8pd3bv1tbh12hbd11cfqv@4ax.com... > >> That's awfully complex. > >> Why not just slam the mosfet gates from some open-drain things, to ground? > >The PMOS devices are pulled to ground, with gate protection for when the >pack voltage is greater than the rated 20V. They are used for the voltages >that are above GND, but they don't work for the ground voltage. Of course, >that is not really needed. The low voltage taps, including GND, are read >with NMOS devices, gates pulled high.
You can use one section of a cheap quad opamp open-loop as a r-r gate driver. Add a series resistor and use a protected-gate mosfet maybe. -- John Larkin Highland Technology, Inc picosecond timing precision measurement jlarkin att highlandtechnology dott com http://www.highlandtechnology.com
"John Larkin"  wrote in message 
news:oh6c0dhfq08qsraerae30ut3a6aejlqn1r@4ax.com...

> On Fri, 10 Nov 2017 15:32:15 -0500, "P E Schoen" <paul@pstech-inc.com> > wrote:
>>"John Larkin" wrote in message >>news:39kb0d1pni0gf8pd3bv1tbh12hbd11cfqv@4ax.com... > >>> That's awfully complex. > >>> Why not just slam the mosfet gates from some open-drain things, to >>> ground? > >> The PMOS devices are pulled to ground, with gate protection for when the >> pack voltage is greater than the rated 20V. They are used for the >> voltages that are above GND, but they don't work for the ground voltage. >> Of course, that is not really needed. The low voltage taps, including >> GND, are read with NMOS devices, gates pulled high.
> You can use one section of a cheap quad opamp open-loop as a r-r gate > driver. Add a series resistor and use a protected-gate mosfet maybe.
That might be a good idea. I found a TSM104 quad op-amp that can drive to GND and within 2V of supply rail (30V max). It also has a programmable precision reference, and costs less than 50 cents in 100 piece quantity. http://www.ti.com/lit/ds/symlink/tsm104w.pdf The outputs could provide sink voltage to each of four PMOS devices, which can be used to sample the high sides of four cells as well as the low sides of three top cells. It isn't necessary to sample the low side of the bottom cell, which is GND. The spare amplifier can be used to turn on the gates of another pair of PMOS devices to get the high and low sides of the flying capacitor. That looks to be a good solution for up to eight LiFePO4 cells (3.75V each), or six Li-Ion cells (up to 5V each). Perhaps each op-amp could be used for a pair of PMOS devices, so one quad device can suffice. It seems I may have over-complicated this design, but it still may be useful for higher voltage battery packs of 12V each, although the MOSFET opto-isolators may be best for that. Thanks, Paul
"P E Schoen"  wrote in message news:ou5gi3$2hv$1@dont-email.me...

> The outputs could provide sink voltage to each of four PMOS devices, which > can be used to sample the high sides of four cells as well as the low > sides of three top cells. It isn't necessary to sample the low side of the > bottom cell, which is GND. The spare amplifier can be used to turn on the > gates of another pair of PMOS devices to get the high and low sides of the > flying capacitor. That looks to be a good solution for up to eight LiFePO4 > cells (3.75V each), or six Li-Ion cells (up to 5V each). Perhaps each > op-amp could be used for a pair of PMOS devices, so one quad device can > suffice.
> It seems I may have over-complicated this design, but it still may be > useful for higher voltage battery packs of 12V each, although the MOSFET > opto-isolators may be best for that.
It seems that there is a problem using all PMOS devices. When one pair is sampling one of the higher cells, the turned-off PMOS devices on the lower cells will conduct through the body diodes. My original design using both PMOS and NMOS for each pair might be OK. Otherwise, maybe a series-connected PMOS and NMOS with high and low gate drives may work, although perhaps not for the top voltage. That might require a single PMOS device. Here is a simulation showing the problem: http://enginuitysystems.com/pix/electronics/Analog_Mux_2a.png http://enginuitysystems.com/pix/electronics/Analog_Mux_2a.asc The DG408/9 and the opto-isolators and the differential amplifier are beginning to look much better. Paul