Author Topic: BMS: Contactors using MOSFETs  (Read 1194 times)

0 Members and 1 Guest are viewing this topic.

Offline BlackgarTopic starter

  • Contributor
  • Posts: 27
  • Country: gr
BMS: Contactors using MOSFETs
« on: January 25, 2022, 07:42:05 am »
Hello all,

For a BMS project, for the first prototype (A sample - proof of concept), I am going to use some MOSFETs to implement the 'contactors' functionality for AIR+, AIR- and Precharge.

The charge/discharge current will be <3A and the Vstack <30V.

I am thinking of the attached circuit, using P-Channel MOSFETs on the high side switches, to simplify the circuit. Any suggestion or recommendations? I searched for ICs used on B2B configurations but due to the ICs shortage is nearly impossible to get them.

P.S Current flow for Precharge is unidirectional but I kept the same circuit as AIR+

 

Offline Siwastaja

  • Super Contributor
  • ***
  • Posts: 8172
  • Country: fi
Re: BMS: Contactors using MOSFETs
« Reply #1 on: January 25, 2022, 07:55:57 am »
I have made that exact mistake of following an appnote and driving MOSFETs sloowly with 1k gate resistance. The result is, they spend too much time on linear region, SOA is exceeded with usual load capacitance (I had less than 2000µF) even if you don't have short circuit condition, and the FETs blow up as short circuits. Bad for BMS, since it then allows overdischarging or even worse, overcharging of the pack.

Really, I would not recommend designing a BMS power path semiconductor switch without desaturation detection (and/or current sensing, basically the same thing). What I did to fix the mentioned failure, was to sense voltage over the MOSFETs and drive the gate low with comparator within microseconds, with just some tens of ohms of gate resistance, and clamp ringing on the DC bus with TVS + snubber. I tested this with different short circuit currents, varying the amount of shorting resistance, measuring peak current and reaction time. Finally it matched spreadsheet modeling quite well, triggering around 50A (modeling said unit variation between 40A .. 70A. Yeah, Rds_on, copper resistance, fuse resistance are not closely matched parameters.)

What I also did was to use N-channel MOSFETs and MCU generate the gate drive using charge pump, safeguarding around stuck code, since square-ish wave was required to keep the switch on. Seeing that MCU existed anyway and chargepump components are near zero cost jellybeans, the total cost was also lower thanks to better performance of N-channel MOSFETs at high currents.

Thinking that you can avoid short circuits by not doing mistakes, and avoid short circuit current into capacitors by adding separate precharge path is quite risky, IMHO. Even the cheapest Chinese cell protector modules sense Vds to implement short circuit protection!

A small nitpick, contactor is specific type of electromechanical device, not a generic name that can be applied to semiconductor switches. The generic term you are looking for is just "switch".
« Last Edit: January 25, 2022, 07:58:19 am by Siwastaja »
 
The following users thanked this post: Blackgar

Offline BlackgarTopic starter

  • Contributor
  • Posts: 27
  • Country: gr
Re: BMS: Contactors using MOSFETs
« Reply #2 on: January 25, 2022, 08:24:42 am »
I am following app notes and recommendations like Infineon's for Precharge path.

I know the benefits of N-Channel Mosfets over P-Channel but in order to boost the time to the first prototype was thinking of use P-Channel, at least for first boards.

What I also did was to use N-channel MOSFETs and MCU generate the gate drive using charge pump, safeguarding around stuck code, since square-ish wave was required to keep the switch on. Seeing that MCU existed anyway and chargepump components are near zero cost jellybeans, the total cost was also lower thanks to better performance of N-channel MOSFETs at high currents.

This is very interesting.

« Last Edit: January 25, 2022, 08:29:52 am by Blackgar »
 

Offline fcb

  • Super Contributor
  • ***
  • Posts: 2117
  • Country: gb
  • Test instrument designer/G1YWC
    • Electron Plus
Re: BMS: Contactors using MOSFETs
« Reply #3 on: January 25, 2022, 08:30:59 am »
To add to what Siwastja has said.

The 100nF on the gate's will dwarf any gate capacitance, and lead to a very slow turn on/off, which in-turn will mean considerably more time in the linear region of the MOSFET, which will lead to heating and could cause failure.

Size the gate resistor (1K) with a view to the peak current that the photcoupler transistor can cope with and what your zener is set for.  If power consumption is an issue, probably build some sort of active gate drive circuit (out of discretes) - no point in wasting power on your zeners, as once your FET's have switched then they require no current to stay switched.
https://electron.plus Power Analysers, VI Signature Testers, Voltage References, Picoammeters, Curve Tracers.
 
The following users thanked this post: Blackgar

Offline Siwastaja

  • Super Contributor
  • ***
  • Posts: 8172
  • Country: fi
Re: BMS: Contactors using MOSFETs
« Reply #4 on: January 25, 2022, 08:47:00 am »
The reason why some appnotes add extra capacitance over G-S, and use large Rg, is they limit switching speed to limit the peak voltage during switching off high current. They do it because high Vds can also destroy the MOSFET. But what they fail to take into account is the SOA. Replacing one problem with another, showing how TI's appnotes are written by total amateurs; SOA curves are "harder to read" than Vds_max value, are more likely unknown to beginners.

I'd start with no Cgs, and lower Rg (like 100 ohms). But then you need to take the possibility of generating high voltage peaks seriously. Measure, add snubber over the switch, add TVS clamping to the bus...

I'm sorry but you can't do this quickly. I'm not stupid and I still colossally failed the only time I tried to do it quickly and follow appnotes. But not having experience is OK. It just takes even more time. Take your time and at least simulate it in LTSpice. Add parasitics, add inductance of wiring (both battery and load), add load capacitance. Look at voltage ringing, but also look at Vds & Id curves to see if they fit within SOA.

And do add overcurrent detection. It's colossally important. If you sense it over Vds, it will also act as SOA protection.

What you need to do is to consider every failure mode of the MOSFET:
* Excess Vds (due to parasitic inductance or inductive load)
* Excess Id (due to short circuit or capacitive load)
* Exceeding SOA (localized die hotspotting)
* Excess power dissipation and overheating (longer-term than SOA)
* Gate overvoltage (seems you have this well figured out already)

Regarding my failure, I actually scoped the voltages and currents to verify the MOSFET is indeed going out of SOA by about 2x. 100% failure rate within days of use. Then I removed capacitance and added resistance to make it just barely inside SOA - failures stopped. Then I continued the process until a bit more margin. But this was just a hack to fix the few dozen manufactured units. The next revision did it properly.
« Last Edit: January 25, 2022, 09:04:48 am by Siwastaja »
 
The following users thanked this post: Blackgar

Offline BlackgarTopic starter

  • Contributor
  • Posts: 27
  • Country: gr
Re: BMS: Contactors using MOSFETs
« Reply #5 on: January 25, 2022, 09:07:48 am »
I understand what you point out but at this phase even the load might be just resistive. That's why I used the term A-Sample.

Also required a feedback that the switch opened/closed correctly but this is something that will be added on next steps.

A low current contactor will simplify the things (with a feedback coil) but from what I saw, most of them start at tens of A. Maybe an IC dedicated/designed for this functionality with all protections integrated would help (dunno if something like this exists).

« Last Edit: January 25, 2022, 09:12:09 am by Blackgar »
 

Offline NiHaoMike

  • Super Contributor
  • ***
  • Posts: 9018
  • Country: us
  • "Don't turn it on - Take it apart!"
    • Facebook Page
Re: BMS: Contactors using MOSFETs
« Reply #6 on: January 25, 2022, 02:46:33 pm »
Instead of bothering with switching the positive, switching just the negative is what most commercially made low voltage packs do.
Cryptocurrency has taught me to love math and at the same time be baffled by it.

Cryptocurrency lesson 0: Altcoins and Bitcoin are not the same thing.
 
The following users thanked this post: Blackgar


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf