Author Topic: What caused this 400W H-bridge to burn!  (Read 11952 times)

0 Members and 1 Guest are viewing this topic.

Offline ali_asadzadehTopic starter

  • Super Contributor
  • ***
  • Posts: 1896
  • Country: ca
What caused this 400W H-bridge to burn!
« on: September 24, 2017, 09:43:27 am »
Hi,
I'm working on this 400W 24v DC motor Controller, everything was ok with 50% PWM, until I tried a 10% PWM on the Motor, It burnt one side of the H-bridge, This is the Schematics and PWM frequency is 64KHz

ASiDesigner, Stands for Application specific intelligent devices
I'm a Digital Expert from 8-bits to 64-bits
 

Offline nctnico

  • Super Contributor
  • ***
  • Posts: 26751
  • Country: nl
    • NCT Developments
Re: What caused this 400W H-bridge to burn!
« Reply #1 on: September 24, 2017, 10:44:45 am »
At 64kHz you need a real H bridge driver. This circuit is way too slow. But... you might want to choose a lower frequency like a couple of hundred Hertz otherwise you are heating the copper instead of driving current through it.
There are small lies, big lies and then there is what is on the screen of your oscilloscope.
 

Offline Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: What caused this 400W H-bridge to burn!
« Reply #2 on: September 24, 2017, 11:53:16 am »
The circuit as such is fine. The upper side drivers are slow, yes, but that's not really important, they are being driven statically for direction control, only the lower side switches are PWMing.

On a related note: which motor will accept 64 kHz switching? My experience with normal PMDC motors is, that at switching frequencies above 3..4 kHz you'll have enormous losses in the motor, to the extent that it won't even turn.

 

Offline H.O

  • Frequent Contributor
  • **
  • Posts: 807
  • Country: se
Re: What caused this 400W H-bridge to burn!
« Reply #3 on: September 24, 2017, 12:24:15 pm »
64kHz seems high on such a large motor, I'd think it's got enough inductance to keep the ripple current at managable levels. IME around 20kHz is a fairly commom switching frequency but I know drives from Maxon that are using 50kHz but their line of motors are generally very low inductance. I'm curious what size motors are using 3-4kHz switching frequency, must be very big ones.

How much current are you pushing? 400W at 24V is "only" 17A, I'm surprised by the extremely low value sense resistor. Have you verified that the sense circuitry is working properly and what are you doing with the current sense signal? I suppose it is possible that doing a big step change in dutycycle would make the motor pull enough current to blow the MOSFET(s). Is that what you did and if so, have you tried gradually changing the dutycycle?
 

Offline ali_asadzadehTopic starter

  • Super Contributor
  • ***
  • Posts: 1896
  • Country: ca
Re: What caused this 400W H-bridge to burn!
« Reply #4 on: September 24, 2017, 12:56:33 pm »
Thanks for the hints, the Motor Resistance is about 0.5 Ohm and the inductance is 750uH @ 1KHz and 500uH @ 10Khz and 320uH @ 100Khz

I could not test the Motor with Slow increasing the PWM, I just changed it from 50% to 10% as a test and It blowed!, and even if the motor does not had any inductance, the 0.5 ohm resistance would only generate about 48A of current which mosfets should cope with that, the high side mosfets are only for direction control and they are derived statically,

Also why 64KHz is high frequency, 3-4Khz PWM would certainly generate audible noise, and for the current sense since the Motor Current would be around 25A has been selected, and it's for measuring the motor Current readout only and I have not implemented that part yet in software and If it's not working properly it should not heart anything.

So what's the cause of death?
ASiDesigner, Stands for Application specific intelligent devices
I'm a Digital Expert from 8-bits to 64-bits
 

Offline Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: What caused this 400W H-bridge to burn!
« Reply #5 on: September 24, 2017, 01:30:40 pm »
Looking at your photos, you need way more cooling for your power FETs.
 

Offline ali_asadzadehTopic starter

  • Super Contributor
  • ***
  • Posts: 1896
  • Country: ca
Re: What caused this 400W H-bridge to burn!
« Reply #6 on: September 24, 2017, 01:34:07 pm »
Thanks, but it took only about a few seconds to burn the Mosfets! at 50% everything was almost cool, maybe 10C above ambient
ASiDesigner, Stands for Application specific intelligent devices
I'm a Digital Expert from 8-bits to 64-bits
 

Offline H.O

  • Frequent Contributor
  • **
  • Posts: 807
  • Country: se
Re: What caused this 400W H-bridge to burn!
« Reply #7 on: September 24, 2017, 02:30:10 pm »
You said it burnt one side of the bridge, what does that mean?
Did it burn both the top and bottom switch on the same "leg"? Did it burn the diagonal top/bottom pair? Did it burn "just" one of the top/bottom switch?

If you don't believe enough current can flow thru the motor to kill the switch then perhaps a fault in your code, logic or noise on in the circuit caised the "wrong" bottom side switch to turn on causing a shoot-thru event.
 

Online mk_

  • Regular Contributor
  • *
  • Posts: 225
  • Country: at
Re: What caused this 400W H-bridge to burn!
« Reply #8 on: September 24, 2017, 03:27:50 pm »
Thanks, but it took only about a few seconds to burn the Mosfets! at 50% everything was almost cool, maybe 10C above ambient

your motor acted as generator when reducing pwm from 50 to 10%.  How did you limit the then rising 24V? The SMBJ seems a little bit underrated.

Gate-Source-voltage for most FETs is limited. So if your 24V rises because motor acts as generator the P-Fet-Gate voltage could get out of specs... It`s now something around -14V, there is not much headroom for the abs. max. -20V and 6V rising on the 24V is still within the limit of the SMBJ28CA (max. Clamping around 31-34V). together with voltagespikes on the motorlines (you are running a DC-Motor) it`s no wonder that something blew up....

btw: Which H-side blow up? The statical one which feeds the motor with 24V or the one on the pwm'd side?
Do you pwm only the lowside or do you also pwm the highside?
How do you reduce effects of "Bürstenfeuer" (brush sparking?)  some kind of ferrrites or Cs attached on the DC-Motor?

good luck
 

Offline Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: What caused this 400W H-bridge to burn!
« Reply #9 on: September 24, 2017, 05:49:22 pm »
The motor will not work as a generator supplying current to the 24 V supply, unless you drive it mechanically at a higher speed than it would run at normally (at 24 V)

The back EMF from the motor (which is appr. the same as the "generator" voltage) is equal to supply voltage minus losses, so even at "full on"/100% DC it will be below 24 V.

Thus, the back EMF (or "generator voltage" if you like) will be below 24 V and is not able to turn on the MOSFET reverse diodes.

The motor inductance will give a small kickback, but compared to the mechanical inertia it's insignificant.

In short, the motor will generate a voltage, but supply no current and will gradually drift to a stop.


Brush sparking will generate some EMI, but energy is low and it's improbable that it would take out the power stage. I've never seen this happen in practice.


Still, a pertinent question is which leg of the bridge burned, and in which direction operation was.
I have a strong suspicion that your control scheme has a problem. I've designed H-bridge power stages for PMDC and always spent a couple of cents on a few gates to have hardware protection against cross-conduction. Also look to power-up/down UVLO protection.
« Last Edit: September 24, 2017, 05:57:55 pm by Benta »
 

Offline T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21606
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: What caused this 400W H-bridge to burn!
« Reply #10 on: September 24, 2017, 06:01:23 pm »
What does the controller look like?

Do you use current mode control?

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: What caused this 400W H-bridge to burn!
« Reply #11 on: September 24, 2017, 06:25:49 pm »
Quote
Do you use current mode control?

Interesting question. Can you elaborate? I've never seen this in conjunction with PMDC motor control. But looking at the schematic it's a straightforward H-bridge.
 

Online mk_

  • Regular Contributor
  • *
  • Posts: 225
  • Country: at
Re: What caused this 400W H-bridge to burn!
« Reply #12 on: September 24, 2017, 06:47:19 pm »
The motor will not work as a generator supplying current to the 24 V supply, unless you drive it mechanically at a higher speed than it would run at normally (at 24 V)



It runs faster when speed is reduced via pwm from 50% to 10%.

If you are so sure about that this cannot happen - explain. I've buildt, seen and measured this voltagerise much to often and I`m intersted in your explanation.





 

Offline Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: What caused this 400W H-bridge to burn!
« Reply #13 on: September 24, 2017, 07:01:16 pm »
The motor will not work as a generator supplying current to the 24 V supply, unless you drive it mechanically at a higher speed than it would run at normally (at 24 V)



It runs faster when speed is reduced via pwm from 50% to 10%.

If you are so sure about that this cannot happen - explain. I've buildt, seen and measured this voltagerise much to often and I`m intersted in your explanation.

"It runs faster when speed is reduced via pwm from 50% to 10%."    ???????

For the rest, already explained in my previous post.
 

Offline Yansi

  • Super Contributor
  • ***
  • Posts: 3893
  • Country: 00
  • STM32, STM8, AVR, 8051
Re: What caused this 400W H-bridge to burn!
« Reply #14 on: September 24, 2017, 07:33:21 pm »
It did burn because of:

1) improper gate drive. The circuit posted is bad enough for 1kHz, let alone what you attempt. Use proper gatedriver for halfbridges or even full bridge (for example HIP4082 if my memory serves me correct).

2) improper switching frequency (and probably wrong deadtime used too). 64kHz is one order magnitude higher then you need. Use a frequency that makes sure the current ripple is low enough. By low enough, I mean <10% of the motor nominal current: fPWM > Vdc / 0.4*La*Ia. You will likely find that a few kHz is good enough, 10 or 15kHz being the sweet spot. Increasing the frequency more will only lead to higher power loss, with no benefit.

3) incorrect current sensing. At the source of the mosfets, you measure the DC bus current,  not the motor current. These two are not the same at all, when looking at the average value (which is what your circuit is trying to measure). With the motor stalled, you can get 100A output current, while only few amps input current.  Either measure the current on the floating output (using for example a hall effect sensor like ACS712 or whatever) and use the instantaneous current value for the current control loop, or measure the current in the source shunts, but you will then need to understand the current waveform in there and measure in the middle of the lower side mosfet ON time. (Meaning you need a high bandwidth amplifier, which in no way LM324 is sufficient).

4) No overvoltage protection of the dc link. Remember you can not regeneratively brake the motor, unless your PSU can return energy to the mains or dissipate it somewhere else.  Voltage can spike dangerously even when stopping the large inertia of the motor itself rapidly.

5) before attempting multiple hundreds watts converters, get a good grasp of high power switching electronics design, including good circuit layout practice.  400W converter is not a toy for kids.  >:D
//EDIT: Not to mention, a good understanding of electric machines (motors) is a must to design any converters.
« Last Edit: September 24, 2017, 07:38:39 pm by Yansi »
 

Offline T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21606
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: What caused this 400W H-bridge to burn!
« Reply #15 on: September 24, 2017, 07:58:38 pm »
Quote
Do you use current mode control?

Interesting question. Can you elaborate? I've never seen this in conjunction with PMDC motor control. But looking at the schematic it's a straightforward H-bridge.

Simple: it's an inductive load.  The state variable is current as a function of time.  Control the current.

Then set the reference current by whatever it is you want to do: PWM%, EMF, torque, RPM, etc.

If you ignore the current, you are implicitly allowing the variable to be unbounded.  Magic smoke quickly ensues...

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: What caused this 400W H-bridge to burn!
« Reply #16 on: September 24, 2017, 08:25:01 pm »
Quote
Do you use current mode control?

Interesting question. Can you elaborate? I've never seen this in conjunction with PMDC motor control. But looking at the schematic it's a straightforward H-bridge.

Simple: it's an inductive load.  The state variable is current as a function of time.  Control the current.

Then set the reference current by whatever it is you want to do: PWM%, EMF, torque, RPM, etc.

If you ignore the current, you are implicitly allowing the variable to be unbounded.  Magic smoke quickly ensues...

Tim

OK, I think we'll need to agree to disagree here.

A PMDC motor is not an inductive load. In fact, an ideal PMDC motor is a voltage source, where the magnitude of the voltage is proportional to RPM. This is also known as back EMF.
When supplied voltage and back EMF are equal, the system is in equilibrium and the motor is running at a certain speed.
Remember, we are talking DC here.

A more realistic model of a PMDC motor is:

[Voltage source (back EMF)] - [Armature/brush resistance] - [Armature inductance] as a series connection. I'm purposely ignoring permanent-magnet and armature iron eddy-current losses here.

Both resistance and inductance are parasitic and unsuitable for regulation purposes. But the inductance can help current smoothing a PWM drive waveform. No more. It is of very low importance to the major system dynamics, which are dominated by mechanics (inertia, torque needed etc.).

I still don't see where current control comes in. Yes, you can call it unbounded, which it is. If you stall the motor, it will draw short-circuit current only limited by the armature/brush resistance. This is consistent with the model of PMDC motors. But trying to control this current will bring you nowhere regulation-wise. Limiting it will protect your system, of course.



« Last Edit: September 24, 2017, 08:34:57 pm by Benta »
 

Offline T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21606
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: What caused this 400W H-bridge to burn!
« Reply #17 on: September 24, 2017, 08:37:04 pm »
OK, I think we'll need to agree to disagree here.

A PMDC motor is not an inductive load.

Um,

Quote
[Voltage source (back EMF)] - [Armature/brush resistance] - [Armature inductance] as a series connection.

Upthread, OP said:

Thanks for the hints, the Motor Resistance is about 0.5 Ohm and the inductance is 750uH @ 1KHz and 500uH @ 10Khz and 320uH @ 100Khz

So as you note,

Quote
the inductance can help current smoothing a PWM drive waveform

Which is all that is needed, nothing more!

Quote
I still don't see where current control comes in. Yes, you can call it unbounded, which it is. If you stall the motor, it will draw short-circuit current only limited by the armature/brush resistance.

So it'll fucking explode?  Don't you think there's something wrong with that? :)

Quote
This is consistent with the model of PMDC motors. But trying to control this current will bring you nowhere regulation-wise. Limiting it will protect your system, of course.

Bingo!

So, why not limit it, from the very start, at the very lowest level: at the switching controller?

We can always adjust the current to whatever value we need, later.  Two control loops: inner current loop, outer voltage loop (or EMF, or PWM, or torque, or whatever you like).

You aren't even losing any system bandwidth in the process, because the current loop is very fast, almost as fast as the motor inductance allows.

All you're making is a nice, clean, fast transconductance stage, with high efficiency. :)

If you still want a voltage mode control (to regulate motor terminal voltage, or EMF if you have some way to sense it, or RPM, or..), simply wire up that variable to an error amplifier, no problem.  You can't explode such a circuit, because the error amplifier's output saturates to a bounded current setpoint.  The motor is never unregulated: its current is always 100% under control.

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Benta

  • Super Contributor
  • ***
  • Posts: 5839
  • Country: de
Re: What caused this 400W H-bridge to burn!
« Reply #18 on: September 24, 2017, 08:48:09 pm »
Yes, current limiting makes sense. It doesn't change the fact that the loop is voltage regulated.
Apart from that, I've never seen a motor explode. PMDCs are rugged little beasts.  :-+
 

Offline T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 21606
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: What caused this 400W H-bridge to burn!
« Reply #19 on: September 24, 2017, 11:01:54 pm »
I meant the transistors exploding...
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline CM800

  • Frequent Contributor
  • **
  • Posts: 882
  • Country: 00
Re: What caused this 400W H-bridge to burn!
« Reply #20 on: September 24, 2017, 11:41:07 pm »
From my experiences in the Motion Industry. I'd say 20kHz is the most common switching frequency.
 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9886
  • Country: us
Re: What caused this 400W H-bridge to burn!
« Reply #21 on: September 25, 2017, 12:52:01 am »
You need to look at the MOSFET waveform.  It will look trapazoidal with ramps at the leading and trailing edges and a short flat portion where the MOSFET is fully turned on.

Now, increase the frequency.  The flat portion goes away and the MOSFET spends all of its time in the transition regions (the ramps).  Since the MOSFET never goes into full conduction, excess heat is the result.

When you reduce the pulse width (10% setting), the MOSFET, once again, never goes into full conduction.

There are two solutions and both are required in order to steepen the ramps or shorten the ramp time as a percentage of the total period.  First, you need a gate driver that can dump AMPS of gate current into the MOSFET.  Second, you need to slow the PWM frequency such that the remaining ramp period is a small percentage of the total period.

The MOSFET needs to get into full conduction as fast as possible and it also needs to turn off quickly.

There's a reason that MOSFET drivers were invented.
 

Offline BrianHG

  • Super Contributor
  • ***
  • Posts: 7660
  • Country: ca
Re: What caused this 400W H-bridge to burn!
« Reply #22 on: September 25, 2017, 01:48:19 am »
Firmware issue.  The firmware is not taking into proper consideration all the turn-turn off delays of the each mosfet's driving circuitry and the mosfets themselves.  You need to setup your PWM with all these factors in mind.

1 other software error possibility, at 10% drive, the current dead-time settings for one side of the H-bridge is incorrectly set.  I would say try removing the mosfets & scope all 4 gates simultaneously and sweep your PWM between 50% and 10% and proved us with the scope shots...  Also, caps should be inserted in plage of the Gates to simulate the mosfet Gate load.

Otherwise, everything we all said here are nothing but shots in the dark....
« Last Edit: September 25, 2017, 02:15:37 am by BrianHG »
 

Offline jmelson

  • Super Contributor
  • ***
  • Posts: 2758
  • Country: us
Re: What caused this 400W H-bridge to burn!
« Reply #23 on: September 25, 2017, 02:28:36 am »
The circuit as such is fine. The upper side drivers are slow, yes, but that's not really important, they are being driven statically for direction control, only the lower side switches are PWMing.

On a related note: which motor will accept 64 kHz switching? My experience with normal PMDC motors is, that at switching frequencies above 3..4 kHz you'll have enormous losses in the motor, to the extent that it won't even turn.
Well, you should see what others have done for full-bridge servo drives.  I make a line of brush and brushless servo drives.  We normally run them at 50 KHz.  But, the brush drives keep the motor shorted between PWM on pulses, unless there is excessive current.  That allows the current to recirculate in the motor winding.  I have dead time designed into the drive circuits, to prevent a high and low-side transistor from being on at the same time.  One of the features of this is it prevents the body diode in the FETs from ever conducting.  Those diodes are hideously slow, taking microseconds to turn on with large forward voltages.

There are two common schemes of driving brush motors with full bridges.  One is called synchronous antiphase, where having the motor stand still is done by having the two bridge halves at opposite 50% duty cycle square waves.  This forces a triangle-wave current in the motor, and can lead to substantial heating.  The other scheme is a sign-magnitude PWM, which it sounds like you may be using.  If you allow the current to recirculate between the PWM on-times, the motor will not heat up much.

Jon
 

Offline ali_asadzadehTopic starter

  • Super Contributor
  • ***
  • Posts: 1896
  • Country: ca
Re: What caused this 400W H-bridge to burn!
« Reply #24 on: September 25, 2017, 07:01:32 am »
Thanks dudes for the hints, here are some things that I have done for your answers,
First of all, one side of the H-bridge burned completely! Q1 and Q6 in the Schematics, and I was driving the Q3 with a steady state logic ‘1’ that caused the Q1 to turn on completely, as the motor needs to turn in one direction about 1 hour and then if the customer decided, can change the direction so I shall not PWM the high side MOSFETS. And I PWM the input of the MOSFET driver U4, which is connected to the gate of Q5,

Q5 and Q2 are fine, but Q1 and Q6 has burnt!!!

I was in the very beginning of Coding for the Project and current measurement and current control with PID loop was not implemented yet as I was just initial testing of the hardware, testing their functionality

Here is this very simple Code that I have written for testing the H-bridge,
Code: [Select]

//Motor timer
HAL_TIM_Base_Start(&htim1);
HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);

//Trun LEFT
//Turn all off
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_10,GPIO_PIN_RESET);//Base of Q3
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_11,GPIO_PIN_RESET);//Base of Q4
TIM1->CCR1=0;//Gate of Q5
TIM1->CCR2=0;//Gate of Q6

HAL_GPIO_WritePin(GPIOA,GPIO_PIN_10,GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_11,GPIO_PIN_RESET);
TIM1->CCR1=500;
TIM1->CCR2=0;
ASiDesigner, Stands for Application specific intelligent devices
I'm a Digital Expert from 8-bits to 64-bits
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf