Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Voltage sag from FET gate driver.

Status
Not open for further replies.

Triode

Well-Known Member
I'm trying to figure out why my motor driver doesn't like a 90% duty cycle. It works fine at 0-80 and 100, but at 90 it gets hot. I've found that the gate driver is lowering it's duty cycle at that range. I don't know why. More details and traces below.

I'm using an IR2136 driver
https://www.infineon.com/dgdl/ir2136.pdf?fileId=5546d462533600a4015355c8a02116a5

and the transistors are IRFB7430
https://www.infineon.com/dgdl/irfb7430pbf.pdf?fileId=5546d462533600a4015356169bcd1e53

Here's my circuit
upload_2017-11-27_15-1-9.png upload_2017-11-27_15-1-30.png

The motor being driven is 0.3 ohms through any pair of leads. Controller is a PSoC, set up to do PWM on the high side. The commutation table seems to work well so unless requested I'm going to skip that whole schematic and code.

Now here is the issue, at 90% duty cycle it gets very hot. It's fine at 0 to 80 and at 100, just not 90. I found a trace that at least seems to point to the reason why. If anyone is so kind as to help I'll be glad to get other current or voltage traces as needed. I can do up to 3 current traces and 4 voltages at once. The following traces are of the gate voltage coming from the driver chip. At 30% and 80% they're fine, close to the expected duty cycle, at 100% (not shown) it's just a plateau as you would expect. But at 90% it's not nearly 90%, closer to 60%.

Details
PWM f = 20kHz
FET positive supply 14.8-14.6V from a lipo battery
Driver chip supply 17.4V from a 10A current limited power supply

30% - the top trace is the one of interest, the lower one is just me monitoring the low side gate, as expected it stayed near 0.
Duty 30%.jpg
80% - note on this one the motor moved, so the lower part at the start is not the full signal, seems like it should be 0 though not a lower pulse.
Duty 80%.jpg
90%
Duty 90%.jpg

Any ideas?

Thanks for any help!
 
Last edited:
Your high side floating supply is running out prematurely. Larger bootstrap caps and/or drive the bootstrap caps from a higher supply. Also and smaller R10, much smaller, if you even need R10 at all. RC time constant x 3 is 5307Hz which is lower than your pwm freq. The caps arent even able to fully recharge each cycle.

To verify: Drive just one high side gate continuously. Does it always die after a certain amount of on-time? Does the problem improve when you increase the PWM frequency and worse when you lower it?

Do you understand what the bootstrap diodes and caps are supposed to do?
 
Last edited:
Ah, you have a point. I saw those on the example layout (no values) and assumed they were just filters. When I search for other examples of using the IRF2136 it looks like 10uF is more typical and I've used 0.1F. The polarity marking on the diagram should have tipped me off.

So these supply a bit of extra current for the charge pump to switch the high side capacitors on more quickly. Right?

Thanks!
 
Not extra current or faster switching. Those caps are the sole source of current unassisted by the 12V supply while the high side gates are on. The high side gates will be unpowered without them. They are a poor man's temporary duty floating power supply. The drawback is they can never run the high side at 100% duty.

They get recharged only whenever the low side in the same half bridge is on. Not when the high side is off. If commutation doesnt already do this, you must manually switch the low side on and off in between high side turn-ons to charge the bootstrap cap before activating that high side gate again or you will starve the high side gate of charge.

Figure 1:
https://www.infineon.com/dgdl/an-1123.pdf?fileId=5546d462533600a40153559692661096
 
Last edited:
Here is what the commutation during a normal motor rotation looks like now. This is from the PSoC microcontroller to the driver chip (they are actually inverted, but here +5V is on)

Signal phases from PSoC during rotation.jpg
It seems like even while spinning the wait for a charge would be fairly long, and if I want torque while slowed or stalled it will not appear at all with my current scheme. Is that correct?

So is the right thing to do in my firmware to add a complimentary PWM on the low side of each channel during it's pulse? So that each gates low side turns on in between the PWM pulses of its high side. At first I thought that might complete a circuit across another gate, but since two high sides are never on at the same time it should have nowhere to draw from except the capacitor.

Other than that, it looks like on the PCB I should put in an electrolytic 10uF cap in place of each 0.1uF cap. I'm still reading through the paper you linked to to verify that is a good size of capacitor to use.

Thanks for the help, please let me know if I have the right idea.
 
Other than that, it looks like on the PCB I should put in an electrolytic 10uF cap in place of each 0.1uF cap. I'm still reading through the paper you linked to to verify that is a good size of capacitor to use.

You want at least a one ceramic cap rather than exclusively electrolytic caps since the charging and discharge of that cap is a high frequency application. You might be able to get away with a 1uF ceramic in parallel with a much larger 1oouF-470uF electrolytic that could supply the gate charge through multiple switchigns before a recharge is required. I've never actually tried this though and never seen a circuit that did and there might be a reason why (maybe resonance peaking or something like that messes with things) but it seems worth a shot.

It seems like even while spinning the wait for a charge would be fairly long, and if I want torque while slowed or stalled it will not appear at all with my current scheme. Is that correct?
YeahYou either need to provide a cap large enough that it never needs to recharge the duration of the switching in a commutation phase at slowest RPM, or you need to do synchronous rectification which you already suggested (below).

I should note though that you don't necessarily have to precharge the bootstrap via the low-side immediately before you turn the high-side on every time. The cap should be large and low self-discharge so the charge should last long until the rotation makes it's way around back to the high-side switch again unless you're spinning super slow. In this way, regular commutation should require that the low-side be turned on at some point during the rotation before the high-side needs to turn on again and that alone might be enough unless you provide a very large bootstrap cap (like the ceramic and larger electrolytic in parallel).

How many transitions you want to do off of a single bootstrap charge and how long you want to maintain a drive state after a gate transition are often bigger issues than how long you have to wait between the time a bootstrap is charged and the time a bootstrap is used.

So is the right thing to do in my firmware to add a complimentary PWM on the low side of each channel during it's pulse? So that each gates low side turns on in between the PWM pulses of its high side. At first I thought that might complete a circuit across another gate, but since two high sides are never on at the same time it should have nowhere to draw from except the capacitor.

Yes. If you're furiously PWMing the high-side multiple times in a single commutation phase such that the low-side switch never has a chance to recharge the bootstrap from regular commutation before the bootstrap cap is starved, then you can do what you described which is also called synchronous rectification. The low-side MOSFET acts as an actively controlled flyback diode and reduces flyback losses. A bonus is it also recharges the bootstrap cap. Just make sure you don't shoot-through or keep the low-side on for so long that the motor starts to begin to brake as a generator.

Also keep in mind that it might be necessary to turn on all the low-side switches momentarily at startup or after a prolonged period of zero RPM to precharge all the bootstrap caps prior to beginning rotation. Otherwise you could experience some strange jittery behaviour on startup during the first rotation when the high-side switches are depowered and unreponsive until the low-side switches fumble around enough to charge the bootstraps. The same applies if the motor might coast for a long time.

For either zero RPM startup or coasting, you can pre-charge each bootstrap in rotation or do it simultaneously. Simultaneous precharge is 3x faster but produces generator braking effects while rotation precharge is 3x longer but has no braking effects. So in theory, it's best to use simutaneous precharge for zero RPM startup and rotation precharge for coasting startup. In practice though, the simultaneous precharge is probably such a short interval that no observer is going to notice the braking effect if you were to use it during coasting. Likewise, the time interval of rotation precharge is so short no one would probably notice if you used it for zero RPM startup.

At either zero RPM or coasting, you could do precharge immediately before startup or periodically precharge so it's always ready to go.
 
Last edited:
Could the inductance and relatively high ESR of electrolytics form some kind of tank circuit and cause problems in this application?
 
Could the inductance and relatively high ESR of electrolytics form some kind of tank circuit and cause problems in this application?
The high inductance might, but I would think that the high ESR would also help dampen such effects.

The high electrolytic L and R are why you always want at least one sizeable ceramic cap in there. I had always assumed you never see an electrolytic in parallel with one to increase the charge storage is because of resonance peaking which is a type of tank effect.

Other reasons could be that whenever it's actually required, other more effective methods are used. For example, you can augment each bootstrap capacitor circuit with a 555 timer charge pump which provides 100% duty cycle capability.
Section 8, pg 17.
https://www.infineon.com/dgdl/an-978.pdf?fileId=5546d462533600a40153559f7cf21200

If you stare at the circuit for long enough, you'll see that the it uses a zener to provide linear regulation which floats on the half-bridge node between transistors. This powers a a 555 timer which acts as a charge pump that only activates when the high-side is on and periodically pumps up charge from this floating zener to supply to into bootstrap cap circuit to refresh it.

The brute force way is to just install a floating, isolated SMPS for each high-side circuit.
 
Last edited:
Ok, I had to look at an inductive voltage booster and sketch it out to get it but I think I understand what's happening here.
boost3.png


upload_2017-12-1_10-46-43.png

If you draw the inductor in between two of the "To load" pins, and the high low side on one of the other phases, then the diode at the top, the cap at the right, and the fet on the low side, and the inductor of the motor form the same voltage boost circuit. Which is useful to know because I should be able to use similar equations to size the caps and set the duty cycle/frequency to get enough power and an appropriate boost voltage.

Does this sound correct?

Thanks for all the help!
 
No, the voltage boost circuit relies on the inductive spike to boost the voltage beyond the source voltage. The bootstrap cap doesn't do that. It's much simpler:

1. When the low-side is on, current can flow from the gate drive supply -> boostrap diode -> bootstrap cap -> low-side switch -> to ground. This just charges the bootstrap cap up to the gate drive supply.
Show in Figure 1:
https://www.infineon.com/dgdl/an-1123.pdf?fileId=5546d462533600a40153559692661096

2. When the low-side switch opens, the charge is now stored in the bootstrap cap.
3. Now, whenever the "to load" pin rises above ground, the bootstrap cap rides on top of this and the diode prevents the stored charge from draining back into the gate supply.
4. The high-side MOSFET source pin is connected directly to the "to load" pin and it's gate drive voltage is referenced to its source pin.
5. So the bootstrap cap gives you a voltage between gate-source on the high-side switch that is always enough to turn the gate on and off.

Do you understand why you can't just connect the gate drive supply directly to the high-side gate and expect it to work? Suppose it did work: a high-side switch in one phase was on and a low-side switch in another phase was on and current flows through the winding:

1. The voltage at the "to load" pin for the high-side switch taht is on would rise up very close to the motor supply since the high-side MOSFET is low resistance when on.
2. The high-side gate needs 12~15V between its gate-source to turn on.
3. Your gate drive supply of 12~15V is sits on top of (or is referenced) to ground/0V.
4. But the gate voltage required to turn on the high-side gate is not the voltage between gate and ground. It's the voltage between gate and source. In other words, the required gate voltage is a 12~15V that sits on top of the source pin (or is referenced to the source pin).
5. But your source pin is not at 0V. It's much higher than 0V, and higher than 15V if you are running your motor off something higher than 15V.
6. You need a 12~15V at the gate that is referenced to (sits on top of) the source pin, not to ground.

In other words, connecting the gate supply directly to the high side pin and assuming it turns on and works produces a contradictory scenario where the high-side switch can't possibly be on.Does that make sense?

The boostrap circuit doesn't behave as much like a inductive boost circuit as much as it behaves like a capacitive charge pump that rides on top of the source pin of the high side switch aka "to load" pin.
 
Last edited:
Your PWM is at 20kHz but you are using very slow 50Hz rectifier diodes. Use high speed diodes instead.
 
Use high speed diodes instead.
Yes use the right diodes. Ultra fast. The reverse recovery time is slow and steels power from the capacitors.
R10, 100 ohms seem high. Maybe 10 ohms. At high duty cycle there is not much time to charge the capacitors.
This type of circuit does not do well at very low or very high duty cycle.
upload_2017-12-1_18-31-28.png
 
I totally missed that on the diodes, thanks. I just downsized the resistors on my schematic to 47 ohms, but I haven't built another board yet, so down to 10 it is.

I would like to be able to run this at high duty cycles, near or at 100% some times, and also when the motor is stalled I would like it to have torque. So I think this will eventually fail in any case.

I know Dknguyen mentioned putting a floating SMPS on each input. This is a battery powered application, from a 14.8V 4C 4800mAh battery. I'm not sure how much current is needed. Many gate drivers I see source only 1.7A or so, and it shows on the data sheet that it sources 20 mA from HO, but I could be reading that wrong.

Related question, can I just put 3 boost converter modules on there that supply about 35V @ 4A, and have it run at any duty cycle and after stopping without trouble? I'm not sure how I would connect them in that case. I suppose the Vin and ground would go to the supply for my driver, and V out would go to Vb for one channel each, would the output ground also just go off of the chip ground. I'm not totally sure if that would work at all. Here's a module I'm looking at for reference.

For anyone wondering how I'm this clueless but still kinda know what I'm doing, I'm a mechanical engineer, not an EE. I'm working on learning electronics to build on my skills, but there is a lot to learn.

Thanks again for all the help!
 
I see you are running on 12 volts. In my head, I normally use this type of part at 200 and 400 volts.
This part stops working not far below 12V.

Can't find it now. The first "high side, low side gate drivers" has a page of the data sheet for how to choose the diode and capacitors. I use a 0.1uf or 0.01uf in parallel with 47uF or 100uF. And a very fast diode. UF4002 not 1N4002

This part was not designed to go to 100%. The FETs must be turned off for a short time to charge up the capacitors.

I can't find the part now. A couple of years back I need 12 volts that was not connected to anything. I found a DC to DC isolator that looks like a 16 pin dip IC. Input 9 to 15 volts and the output is the same is the input just isolated. I think it was only good for 50ma. ??? You will need three. One for each high side driver. You can forget the diode. Each high side driver will be powered all the time by the isolator. Then you can run to 100%. I will keep looking for the part number. Got it from DigiKey.
 
It's not 1.7A continuous. That 1.7A is just a burst to charge the gate capacitor as quickly as possible for the MOSFET to run on after which it's just to maintain the charge on the capacitor due to leakage (which is practically nothing). The continuous current is going to very low. More like 20mA in most cases. The higher the frequency, the more actual charging of the gate cap happens and proportionally higher that continuous current will be.

But yeah, if you truly do require 100% duty cycle you can augment the bootstrap cap and diode with a 555-timer charge pump for 100% duty cycle (to which I linked earlier). But that circuit is rather complicated and tricky to follow so if you're not an EE just toss in some isolated supplies and be done with it. I would personally never use that charge pump unless I was really pressed to cut costs on something being mass-produced.
 
Fount it:
https://www.ti.com/product/DCP021212D/compare
I have some of the 12V to 12V power isolators like these. You will need three.

It would be worth it to me for the added cost to simplify the circuit a bit, and the firmware that drives it. Just to be sure I understand, the inputs would be the supply and ground to the IC and the output V- connects to Vs while the output V+ connects to Vb, so that it can ride on top of the source, as dknguyen explained. So if I understand correctly the isolation serves to allow my ground to reference the source voltage to make sure the gate is always above it.

By the way since my actual supply voltage is 14.8-14.0V I think I should use the
DCP021515U, I still have it shown as 12 on the diagram but this isn't accurate.

If my FET driver IC is getting 19V and I drive the motor with 14.8V, can I run VB off the chip supply?

1. The voltage at the "to load" pin for the high-side switch taht is on would rise up very close to the motor supply since the high-side MOSFET is low resistance when on.
2. The high-side gate needs 12~15V between its gate-source to turn on.
3. Your gate drive supply of 12~15V is sits on top of (or is referenced) to ground/0V.
4. But the gate voltage required to turn on the high-side gate is not the voltage between gate and ground. It's the voltage between gate and source. In other words, the required gate voltage is a 12~15V that sits on top of the source pin (or is referenced to the source pin).
5. But your source pin is not at 0V. It's much higher than 0V, and higher than 15V if you are running your motor off something higher than 15V.
6. You need a 12~15V at the gate that is referenced to (sits on top of) the source pin, not to ground.

In other words, connecting the gate supply directly to the high side pin and assuming it turns on and works produces a contradictory scenario where the high-side switch can't possibly be on.Does that make sense?

The boostrap circuit doesn't behave as much like a inductive boost circuit as much as it behaves like a capacitive charge pump that rides on top of the source pin of the high side switch aka "to load" pin.

Sorry I didn't respond to this earlier. I do understand that the gate has to be at the switching voltage relative to the supply, but this explanation helps clarify what the circuit is doing. I think I have it working now. I replaced the diodes with UF4004, and put 2 ceramic 1uF capacitors in series across Vb-Vs.
I'm thinking I should scope the capacitor voltage to see if it's staying high enough. The FETs are not getting burning hot now, but they still get kind of warm. I wonder if it is just because the motor is only 6 mOhm, so even with an Rds ON of 1.7 mOhm, the fets are still dissipating some considerable power.
 
Last edited:
I replaced the diodes with UF4004, and put 2 ceramic 1uF capacitors in series across Vb-Vs.
I'm thinking I should scope the capacitor voltage to see if it's staying high enough. The FETs are not getting burning hot now, but they still get kind of warm.
Sounds like fixing the diodes and capacitors solved the problem. You can not connect a scope probe (ground) to VS.
You can connect two probes, one to VB and the other to VS and add/subtract on the scope.

About getting warm. 1.7mOhms and 14 volts is some current.
the inputs would be the supply and ground to the IC and the output V- connects to Vs while the output V+ connects to Vb, so that it can ride on top of the source,
Yes.
As Dknguyen said: each MOSFET see a turn on/off voltage from G to S. They do not care about ground.
The bottom MOSFET sits on ground so in that case it is G to ground (S).
The top MOSFET sits on the voltage going to the motor. So on/off voltage is G to motor voltage, which is switching.
 
So I have it all set up still using the bootstrap circuit and things seem to mostly be working well. Now there are 2 10 uF caps in parallel for the bootstrap, ultrafast diodes, and 5.1 ohm resistors everywhere. Going into the gates, and for the one connecting into the diodes.

I did a lot of testing and it seemed to be working as expected, when the mosfets got hot it was only when I was near the limit of the current they should be able to handle. Execpt two instances.

Once I was running it with the motor leads in the wrong order and the legs burnt off a transistor. I know that it makes sense this would cause it to lock in one position, but the driver shouldn't burn up a transistor from that (I think). Specifically it burnt the source pin on one of the low side transistors. After removing it and checking it was showing a short between all pins.

Earlier today it burnt the wire supplying the fet driver, which was at 15V at the time. Not the motor supply wire, but the one to the driver. I haven't been able to replicate this behavior so I can't figure out why it would do that. It was an AWG 22 wire, and it doesn't seem like the fet driver could pull enough current to cut through the wire like that. Oddly the driver chip was fine.

Thanks for all the help so far. I haven't tried the isolated supply method yet since I got the wrong chips. I got single supply ones and it turns out they give you +15 and -15 with no common, so I can only boost to 30V above Vs, unless I'm missing something here, and that would kill my fets since their Vgs max is 20.
 
Are your bootstrap caps okay? They didn't fail short for some reason did they? If you split up the line between the driver and gate into two halves meeting at the node where the bootstrap cap links up with the line, did only the line between the bootstrap node and FET gate burn up? Or did the entire line between driver and FET gate burn up?

EDIT: Actually, this woudl also depend on whether you are charging the bootstrap caps through a resistor. If the resistor was large enough it wouldn't burn the lines up even if the boostrap cap failed short.

There are other things that can kill the FETs themselves, though I don't know why the line would burn up. Parasitic inductances with fast rise times can cause things like ringing resulting in undershoot and overshoot which can destroy FET gates. The simplest way to remedy this is using a small (very small, like 10 ohms, often less than half that) gate resistor which will slow the gate rise time so these parasitics aren't excited. But your schematics say you are using 100 ohm gate resistors so that shouldn't be an issue. I also noticed you don't have flyback diodes in parallel with each FET and are instead relying on the slower, body diodes in the FETs...though that wouldn't burn the gate wire.

Even if the gate-source isolation failed short first and when the low-side driver tried to turn off the FET, it produced a short to ground your 100ohm gate resistor should have stopped so much current from flowing as to burn a 22AWG wire.
 
Last edited:
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top