What caused this 400W H-bridge to burn! - Page 1
Forum section: electronics / projects

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: September 24, 2017, 09:43:27 am
content: 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

author: nctnico
author_rank: Super Contributor
timestamp: September 24, 2017, 10:44:45 am
content: 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.

author: Benta
author_rank: Super Contributor
timestamp: September 24, 2017, 11:53:16 am
content: 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.

author: H.O
author_rank: Frequent Contributor
timestamp: September 24, 2017, 12:24:15 pm
content: 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?

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: September 24, 2017, 12:56:33 pm
content: Thanks for the hints, the Motor Resistance is about 0.5 Ohm and the inductance is 750uH @ 1KHz and 500uH @ 10Khz and 320uH @ 100KhzI 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?

author: Benta
author_rank: Super Contributor
timestamp: September 24, 2017, 01:30:40 pm
content: Looking at your photos, you need way more cooling for your power FETs.

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: September 24, 2017, 01:34:07 pm
content: Thanks, but it took only about a few seconds to burn the Mosfets! at 50% everything was almost cool, maybe 10C above ambient

author: H.O
author_rank: Frequent Contributor
timestamp: September 24, 2017, 02:30:10 pm
content: 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.

author: mk_
author_rank: Regular Contributor
timestamp: September 24, 2017, 03:27:50 pm
content: Quote from: ali_asadzadeh on September 24, 2017, 01:34:07 pmyour 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

author: Benta
author_rank: Super Contributor
timestamp: September 24, 2017, 05:49:22 pm
content: The motor willnotwork 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 iswhichleg 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.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: September 24, 2017, 06:01:23 pm
content: What does the controller look like?Do you use current mode control?Tim

author: Benta
author_rank: Super Contributor
timestamp: September 24, 2017, 06:25:49 pm
content: QuoteInteresting 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.

author: mk_
author_rank: Regular Contributor
timestamp: September 24, 2017, 06:47:19 pm
content: Quote from: Benta on September 24, 2017, 05:49:22 pmIt 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.

author: Benta
author_rank: Super Contributor
timestamp: September 24, 2017, 07:01:16 pm
content: Quote from: mk_ on September 24, 2017, 06:47:19 pm"It runs faster when speed is reduced via pwm from 50% to 10%."?For the rest, already explained in my previous post.

author: Yansi
author_rank: Super Contributor
timestamp: September 24, 2017, 07:33:21 pm
content: 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.//EDIT: Not to mention, a good understanding of electric machines (motors) is a must to design any converters.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: September 24, 2017, 07:58:38 pm
content: Quote from: Benta on September 24, 2017, 06:25:49 pmSimple: 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

author: Benta
author_rank: Super Contributor
timestamp: September 24, 2017, 08:25:01 pm
content: Quote from: T3sl4co1l on September 24, 2017, 07:58:38 pmOK, I think we'll need to agree to disagree here.A PMDC motor isnotan 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.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: September 24, 2017, 08:37:04 pm
content: Quote from: Benta on September 24, 2017, 08:25:01 pmUm,QuoteUpthread, OP said:Quote from: ali_asadzadeh on September 24, 2017, 12:56:33 pmSo as you note,QuoteWhich is all that is needed, nothing more!QuoteSo it'll fucking explode? Don't you think there's something wrong with that?QuoteBingo!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

author: Benta
author_rank: Super Contributor
timestamp: September 24, 2017, 08:48:09 pm
content: 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.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: September 24, 2017, 11:01:54 pm
content: I meant the transistors exploding...

author: CM800
author_rank: Frequent Contributor
timestamp: September 24, 2017, 11:41:07 pm
content: From my experiences in the Motion Industry. I'd say 20kHz is the most common switching frequency.

author: rstofer
author_rank: Super Contributor
timestamp: September 25, 2017, 12:52:01 am
content: 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.

author: BrianHG
author_rank: Super Contributor
timestamp: September 25, 2017, 01:48:19 am
content: 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....

author: jmelson
author_rank: Super Contributor
timestamp: September 25, 2017, 02:28:36 am
content: Quote from: Benta on September 24, 2017, 11:53:16 amWell, 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

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: September 25, 2017, 07:01:32 am
content: 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 functionalityHere is this very simple Code that I have written for testing the H-bridge,Code://Motor timerHAL_TIM_Base_Start(&htim1);HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);//Trun LEFT//Turn all offHAL_GPIO_WritePin(GPIOA,GPIO_PIN_10,GPIO_PIN_RESET);//Base of Q3HAL_GPIO_WritePin(GPIOA,GPIO_PIN_11,GPIO_PIN_RESET);//Base of Q4TIM1->CCR1=0;//Gate of Q5TIM1->CCR2=0;//Gate of Q6HAL_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;

author: xavier60
author_rank: Super Contributor
timestamp: September 25, 2017, 10:09:58 pm
content: Even if the high side MOSFETs are being statically driven, any ripple or oscillation on the 24v rail can affect the Gate voltage.I see there are large capacitors on the PCB, so maybe not a problem.Also, every time a low side MOSFET turns off, the body diode in a high side MOSFET has to carry the motor's inductive current, causing some dissipation depending on motor load.

author: MattHollands
author_rank: Frequent Contributor
timestamp: September 25, 2017, 11:24:28 pm
content: Side question that I'm hoping won't derail the thread: What purpose do D2 and D3 play? As far as I can tell they prevent current from flowing through Q3 and Q4, basically making them useless, but obviously this cannot be the case I assume.

author: Phoenix
author_rank: Frequent Contributor
timestamp: September 25, 2017, 11:27:01 pm
content: Quote from: MattHollands on September 25, 2017, 11:24:28 pmI think they are badly drawn zeners to limit the gate voltage.

author: MattHollands
author_rank: Frequent Contributor
timestamp: September 25, 2017, 11:35:24 pm
content: Quote from: Phoenix on September 25, 2017, 11:27:01 pmMake sense. Cheers.

author: xavier60
author_rank: Super Contributor
timestamp: September 26, 2017, 02:35:06 am
content: Those zenners are subtracting from the 24v. If the 24v rail voltage drops, the Gate voltage will drop by the same amount.It would be better if they were used to limit Gate voltage by clamping it.

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: September 26, 2017, 06:34:35 am
content: They are Zeners as others say

author: Yansi
author_rank: Super Contributor
timestamp: September 26, 2017, 11:58:32 am
content: Quote from: jmelson on September 25, 2017, 02:28:36 amThese are not the only PWM modulation schemes. There is a metric shit ton of them.You run motor controllers at 50kHz? You should definitely not do that. EMI, extreme losses in the motor, cable capacitances are the three strictly against your crazy design ideas. There in no way is any legit reason to do 50kHz, unless you have low pass filters on every PWM output which, as you might have noticed is NOT the case of the OP's converter topology.

author: Yansi
author_rank: Super Contributor
timestamp: September 26, 2017, 02:50:32 pm
content: As I have already pointed out. Throw away this discrete gate drive. It is not worth the trouble! *Use a proper bootstrapped gate driver. For example IRS2001 is what I would go for:https://www.infineon.com/dgdl/Infineon-IRS2001-DS-v02_00-EN.pdf?fileId=5546d462533600a401535675a760277e*Note: Fully working discrete bootstrap driver for the high side gate can be made from 3 transistors, but really, why?//EDIT: 2 transistors would be sufficient too.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: September 26, 2017, 06:17:41 pm
content: Quote from: Yansi on September 26, 2017, 11:58:32 amGosh, you feel awfully strongly about this. You must have a truly well reasoned, generally applicable, quantitative proof! Please tell!Tim

author: Yansi
author_rank: Super Contributor
timestamp: September 27, 2017, 01:34:43 am
content: Just have told you. Now it's your turn to tell me how you will cope with those listed above.And yes, I am rock solid that 50kHz let alone 64kHz is pure foolishness for such drive topology the OP presented.

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: September 27, 2017, 07:29:34 am
content: I can change everything, I also have lowered the PWM frequency to 10KHz and again after changing the Motor PWM from 50% to 10% one side would blow!can the Back emf have higher voltages like more than 100V, so they would kill the mosfets!? what about the body diodes in mosfets? can't they coupe with the Motor current and back emf?

author: mirbagheri1122
author_rank: Contributor
timestamp: September 27, 2017, 09:05:03 am
content: Add a parallel 100nf cap with the R16 and R15, the EMI causes the P-MOSFET to turn on and a shoot trough would burn the Bridges, this would hopefully make your design work!

author: xavier60
author_rank: Super Contributor
timestamp: September 27, 2017, 09:09:33 am
content: Quote from: ali_asadzadeh on September 27, 2017, 07:29:34 amDo you change the duty cycle gradually or abruptly?How long does it take to fail?Do you monitor rail voltage and any waveforms?Do you understand the shortcomings that have been mentioned about the high side drive? The problem that the zenners can cause if the rail voltage dips.

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: September 27, 2017, 09:27:34 am
content: QuoteDude it's working properly now! How did you figure it out, that it was EMI, fucking EMI

author: sibeen
author_rank: Frequent Contributor
timestamp: September 27, 2017, 10:11:08 am
content: Quote from: mirbagheri1122 on September 27, 2017, 09:05:03 am...and 22 minutes later the circuit is working. Now that is fast workI also found it amusing that on an Australian website one Iranian helped another Iranian outWhat a world.

author: xavier60
author_rank: Super Contributor
timestamp: September 27, 2017, 10:13:24 pm
content: The High side MOSFET must be getting turned on through the Drain to Gate capacitance. Needs lower resistance in the Gate circuit.

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: September 28, 2017, 07:05:01 am
content: This world is so big and so small at the same time!

author: jmelson
author_rank: Super Contributor
timestamp: September 28, 2017, 09:51:14 pm
content: Quote from: Yansi on September 26, 2017, 11:58:32 amNo extreme losses. 50 KHz with synchronous antiphase would indeed be really bad! But, with sign-magnitude PWM and shorting the motor during the PWM off-period, there is no problem.We do have a simple LC filter at the output terminals, so the motor sees only a very slight current ripple. I have sold over 500 of these servo amps so far.The reason for the 50 KHz is to keep the motor and filter inductors in continuous conduction.Jon

author: jmelson
author_rank: Super Contributor
timestamp: September 28, 2017, 09:56:01 pm
content: Quote from: ali_asadzadeh on September 27, 2017, 09:27:34 amDo you have any idea how much EMI is produced by power transistors switching several amps in 100 ns or so? You have to work very hard to reduce the loop area of the power traces. You can easily see several Volts produced across a several inch-long power trace. Totally amazing to see on a scope, you can't believe what is displayed is real! I'm still amazed my servo amps work, they run up to 20 A at 120 V or so, I even have one guy running them on 168 V DC. And, the CPLD that controls it is only an inch away and runs off 3.3 V.Jon

author: T3sl4co1l
author_rank: Super Contributor
timestamp: September 28, 2017, 10:53:57 pm
content: Even better, I designed an induction heater system, up to 400kHz at 650VDC. The switching edge was only 50ns. In an early prototype, we had the control board (at its heart, FPGA with 1.2V core, 2.5 and 3.3V IO) less than an inch away from the switching nodes of the inverter boards (a stack of boards, bolted together on standoffs, to share the current -- on the order of 100A total). The inverter boards were also an early prototype that suffered from 80% overshoot, ringing at 60MHz.All the graybeards (the guys who designed the previous generations of controls, using 15V CMOS usually) thought it wouldn't work, because 1.2V is too small, even inside a chip. As is usually the case, this was a mistaken judgement not grounded in real measurements. (They didn't even have ground pours / planes on their boards. What were they thinking?) The control board worked perfectly fine (given our code inside it, which was constantly being debugged..). It was the gate drive cables that gave us trouble. (But alas, that signalling was one of many suboptimal technical decisions made by management that troubled our development.)Tim

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: October 02, 2017, 01:20:27 pm
content: Thanks guys for sharing this info, it would be nice if jmelson and T3sl4co1l could share us some photos or some circuits!

author: T3sl4co1l
author_rank: Super Contributor
timestamp: October 02, 2017, 01:38:19 pm
content: Nothing technical like boards or circuits, unfortunately, but it looks cool at least:https://www.seventransistorlabs.com/Images/Tallboy_HotStuff.jpgTim

author: Yansi
author_rank: Super Contributor
timestamp: October 02, 2017, 04:14:50 pm
content: Quote from: jmelson on September 28, 2017, 09:51:14 pmAnd what did I say?Still waiting for Kony and T3sl4co1l to explain what you need 50kHz switching for, without lowpass filters and how for example the cable capacitance magically disappears.

author: jmelson
author_rank: Super Contributor
timestamp: October 02, 2017, 04:39:15 pm
content: Quote from: ali_asadzadeh on October 02, 2017, 01:20:27 pmHere's a photo of my brush servo amp, which uses 4000-series CMOS running off 12 V for the control logic:pico-systems.com/osc2.5/catalog/product_info.php?cPath=3&products_id=26And, here's a pic of an older version of my brushless servo amp, which uses a Xilinx 9672XL CPLD.Since these are commercial products, I'm not going to give out schematics.The brush version uses two of International Rectifier's IR2113S, the brushless version uses 3 of the IR2181S for the FET drive circuits.These deliver at least 600 mA both for charge and discharge of the FET gates. That turns them on and off quickly with predictable timing.Jon

author: Yansi
author_rank: Super Contributor
timestamp: October 02, 2017, 05:01:31 pm
content: Not sure if I am allowed to post a photo of my own motor controller, so... here's one. Unfortunately not a DC brushed motor. Induction 3~ instead.

author: H.O
author_rank: Frequent Contributor
timestamp: October 02, 2017, 06:49:35 pm
content: Is it possible that part of the debate regarding switching frequency is due to one party talking about permanent magnet motors while the other is talking about induction motors?On a 120W(ish) PMDC motor I have on the bench the inductance is 1.1mH. On a 180W 3 phase induction motor I also have on the bench the inductance 70mH....20kHz is a very common switching fequency for DC motor drives and, as I wrote previously, Maxon is using 50kHz in several of their drives and having experience with their products (including said servo amps and motor controllers) I tend to believe they know what their doing.

author: Yansi
author_rank: Super Contributor
timestamp: October 02, 2017, 07:03:04 pm
content: You forgot to mention WHY maxon uses higher frequency. Their DC motors have quite lower inductance, due to the internal motor construction (they call it ironless). They do not use enough iron (if at all?) so they have motors with very low inductance. That may be good for some, very special applications like brutally fast servos, where the electrical time constant of the motor does matter a lot.I insist upon that in no way it is reasonable to design any kind of motor drive at 20kHz and much higher, unless having lowpass filters (then the switching frequency is kind of irrelevant as is dealt by the filters) or a special application, like the maxon motors. But tell me, how many people do you think have ever seen any maxon motor, handled it or even design any controller for it? Not many, I'd guess.For most motors, the very sufficient frequency is 10kHz and may even be lower. Just get the damn inductance, and design the switching frequency so that current ripple is well below 10% of the nominal current, meaning that it is "low". For many DC brushed motors at a kW power levels, the frequency that fulfills this rule of thumb may be as low as few kHz.//EDIT: Don't forget mains voltage motor will have much more turns, i.e higher inductance, than the low voltage motor. Otherwise you're comparing pears and apples.

author: H.O
author_rank: Frequent Contributor
timestamp: October 02, 2017, 08:22:33 pm
content: QuoteNo, I actually mentioned exactly that in my first reply in this thread, namely that Maxon is using 50kHz but that their motors are very low inductance - which is my point exactly, a 3 phase induction motor has much higher inductance and can therefor use a lower switching frequency than a typical PMDC motor. Your point about voltage is is certainly valid though.Quote"Or even designed a controller for it" well probably not THAT many since Maxon does sell suitable drives for their motors. With that said I've come across Machines with Maxon motors in them using custom drives. I don't see any point in guessing how many people around the world being familiar with Maxon motors but they're no small player.You insist that using 20kHz or higher on any kind of motor drive is unreasonable and yet many many (I was going to say most but I really can't verify that)commercial drivescommercial servo drives for PMDC (brushed and brushless) from reputable manufacurers are doing just that.

author: Yansi
author_rank: Super Contributor
timestamp: October 02, 2017, 08:52:15 pm
content: Still it may be comparing pears and apples, forgot to mention you may need to normalize even for the nominal electrical speed (phase frequency), as that is what gives you the overall voltage-per-turn ratio, therefore number of turns and resulting inductance.All in all, I'd expect any type of motor to have very similar say "normalized" inductance, as they all use the same silicon iron (unless you go for a very expensive high power density AMK motor).Hence why all drives from tenths of a watt up to megawatt work with the same range of frequencies. Independent from the motor voltage, size, power rating or speed. But all of them will have different inductance.To be honest, I have never came across any commercial industrial automation drive, that would run over 25kHz. The run length of cables and the dv/dt strictly says no to any attempt to go above.Incorrect designs of inverter with too high dv/dt (usually resulting from faster switching) may result even in damaging the winding isolation on the motor itself, due to excessive ringing and voltage overshoots on the load.OP of this thread has a 400W brushed motor that in all my honesty, should not be driven over 20 kHz. No reason for it. Even the slightly lax layout of the power stage and use of rather very basic gatedrive circuitry speaks against in my opinion.If anyone thinks the opposite, than please give a proof, what benefits you will have from switching at 64kHz, which as I recall was mentioned in the first post, that the OP tries to do.

author: jmelson
author_rank: Super Contributor
timestamp: October 02, 2017, 09:39:38 pm
content: The ONLY reason I recommend running my servo amps at 50 KHz is to allow the use of much smaller (and therefore cheaper) inductors in the output filter. This keeps the PWM modulation out of the wires and out of the motor windings. I have some OEMs who love my servo amps, because they have much higher bandwidth that typical other units. They may not even be running rotary motors with them, they haven't told me what the inner workings of their device is.Jon

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: October 03, 2017, 12:53:18 pm
content: QuoteWhat's this?

author: T3sl4co1l
author_rank: Super Contributor
timestamp: October 03, 2017, 01:17:59 pm
content: Quote from: ali_asadzadeh on October 03, 2017, 12:53:18 pmInduction heater, prototype stage. We were doing 30kW at 200kHz, I think. That's a 10cm steel round you see glowing.Tim

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: October 05, 2017, 07:52:38 am
content: That's Hugeee!in which power outlet did you get 30KW! and what are your H-bridge MOSFET's part numbers?

author: T3sl4co1l
author_rank: Super Contributor
timestamp: October 05, 2017, 08:08:04 am
content: Industrial 480VAC three phase. It's angry stuff...Transistors aren't anything special -- basically anything on the market, that'll handle >800V and >30A will get there. Use several in parallel if needed.PCB layout and wiring is more important. That particular revision had terrible layout, resulting in 80% overshoot, ringing at 60MHz. We had to use 1200V transistors just to continue testing. I had followed conventional advice in the initial design, and got betrayed by it. On the upside, I learned precisely where that advice falls flat, and how dangerous and irresponsible it is.Tim

author: ali_asadzadeh
author_rank: Super Contributor
timestamp: October 07, 2017, 06:26:42 am
content: That's great that you could do itsharing some pitfall's would help others too.

author: thobie
author_rank: Newbie
timestamp: October 07, 2017, 08:46:58 am
content: Quote from: Yansi on September 26, 2017, 11:58:32 amIncreasing ONLY the switching frequency decreases current ripple which actually decreases iron losses in the motor, has nothing to do with EMI (basically triangle wave harmonics are in so high frequencies that changing just the base freq has little effect), increases the switching losses in the power stage. The motor winding inductance itself acts as a filter and with H-bridge you can use 3-level voltage modulation (zero voltage vector / free wheeling) instead of 2-level on 3-phase motors so actually increasing the switching frequency don't have such a drastic difference as in 3-phase motors using 2-level voltage modulation. Copper losses/skin effect is dominated by the current ripple not voltage pwm freq and by increasing the sw freq you lower the ripple which decreases the copper losses also. But from the sleeve the effect of this is in the range of ~1% or even less compared to the total losses?EMI is dominated by the dI/dt and dU/dt (rise/fall rate of the current & voltage) which don't change if you just increase the switching freq. Of course, with faster switching you typically want to also use faster switches/switching - optimization of losses and the overall circuit design once again. Up to the point you end up problems with the stray inductance/capacitance in your circuit (long wiring / poor PCB layout design).Also the transmission line effects (cabling and the need for dU/dt filtering) is dominated by the dU/dt, not the switching frequency. The switching is square wave +/-Udc (& zero volts when using H-bridge) always with 2-/3-level voltage modulation. The fundamental wave is there but the EMI and transmission line effects are dominated by the harmonics (= square wave nature, the fast edge of the voltage waveform).

author: T3sl4co1l
author_rank: Super Contributor
timestamp: October 07, 2017, 10:52:10 am
content: Some clarification:Quote from: thobie on October 07, 2017, 08:46:58 amDepends on material.An ideal eddy current material has a Steinmetz core loss exponent of 2, and no dependence on frequency. The electrical equivalent circuit is a simple pole.Real materials have an exponent larger or smaller than 2. If smaller, then losses rise slower with frequency than the impedance does. If larger, losses rise faster.You'd have to look up typical loss curves for the silicon steel used in the motor, to find out which one is the case.QuoteEMI is not due to the current waveform, at least not until you've done a damned good job attenuating all other offending sources in a circuit.Switching noise from dV/dt and dI/dt, is different from the fundamental switching frequency.Keep in mind that switching speed and fundamental are independent quantities. RFI tends to depend on the switching speed, the derivatives. EMI and RFI depend proportionally on the fundamental.Note also that you cannot measure these generalizations in just any circuit, because any circuit will have quirks in its frequency response which modify the result. (Ideally, the result is strong attenuation at all frequencies, and thus little offending emission!)QuoteYes, most likely. (I could think of some possible exceptions, but they would not be generally applicable, nor likely to be used.)QuoteThree-level drive is significantly better, because the harmonics are reduced proportionally. Good idea!QuoteSkin effect is always proportional to frequency, or sqrt(F) rather.If current ripple goes as 1/F, then copper losses will go as 1/sqrt(F).The magnitude depends. Due to this factor, it will likely be more than 1%. R(ac) / R(dc) of a winding changes significantly with frequency. It depends on wire size and winding shape.The loss is due to R(ac) * Iripple^2. (And, to be perfectly precise: this needs to be evaluated at all frequencies in the ripple current, following Parseval's theorem. In practice, R(ac) will not change as rapidly as the harmonics, which will go as 1/N to 1/N^2, so only the first few harmonics will be significant.)DC copper loss, R(dc) * I(average)^2, does not vary with frequency, and remains dependent on load current (average, or RMS for LF AC).Or, again more precisely: DC is just another term to add up, according to Parseval's theorem, and R(ac) at zero frequency is just R(dc). If we wish to account it separately, we can do so.QuoteDominated, yes, but theydochange. The rate of those switching edges is proportional to switching frequency, therefore they become more frequent -- a higher duty cycle -- at higher frequency.This shows up more on the average and QP spectrum, than the peak spectrum. The peak doesn't change (though a receiver might read a change in peak response anyway; depends), but the fundamental is well below the QP risetime so will tend to be averaged out, and sensitive to duty cycle.QuoteThis fits under my earlier statement that the circuit has a filtering effect on the ideal waveform contents. As a result, changing the frequency in a particular case may make EMI better or worse, because different frequency components hit different peaks and valleys in the response. Ideally, the response should be flat and well attenuated, so this doesn't happen.Tim

author: Zero999
author_rank: Super Contributor
timestamp: October 09, 2017, 11:01:04 am
content: Quote from: Benta on September 24, 2017, 08:25:01 pmA PWM h-bridge DC motor can inject a high voltage in to the supply line. I've seen it before myself.What you've said is correct, under normal conditions, apart from a small inductive spike at switch off, the back EMF generated by a DC motor is slightly less than the supply voltage. If the supply has adequate decoupling, then it will be able to absorb the short spikes, when the armature is accelerating, driven at a steady speed, or free-wheeling.In order for the motor to generate a higher voltage, than the supply, a boost converter is required. It turns out that an h-bridge + diodes and the motor's inductance form a boost converter, when the motor is braking. Both the top or bottom switches, usually the latter, are momentarily turned on, short circuiting the motor. The current through the transistors and motor rises, until they need to be turned off, otherwise they'll overheat. When this happens, the inductive kick-back keeps the current flowing, via the diodes, to the power supply. Because the motor isn't been driven, current is being dumped into the power supply which will cause the voltage to rise, unless there's something to limit it.The control system is important here. If the h-bridge is not doing any breaking, then it should not generate a higher voltage, than the supply, unless as you say, the motor is being forced to spin at a higher speed, than it would otherwise do, when connected to the given supply voltage. If h-bridge is performing a breaking function, then something needs to be connected across the supply to limit the voltage rise. If the amount of braking energy is small, then a large capacitor can be used, otherwise it needs to be dissipated in a resistor or large power transistor. In my last project, I used a Darlington pair made from a 2N3055 & TIP32, with a 30V zener diode connected from the TIP31 base to collector, to dump the excess energy in to.

author: Siwastaja
author_rank: Super Contributor
timestamp: October 09, 2017, 11:21:01 am
content: Indeed, anybody driving a permanent magnet motor with a half or full bridge should understand the basic operation: when it regenerates, being able to produce much higher voltages than what the motor generates into open circuit at the same RPM.This means that the DC link voltage needs active monitoring or overvoltage protection, which stops the PWM generation (to stop regen happening even at low speeds).After the PWM generation stops, the regen only happens when the motor RPM and the related open-circuit back-EMF voltage exceeds the DC bus voltage - then it goes through the freewheeling diodes directly, no boost action needed. Only at this point you "need" the clamps. But if someone coasts your motor into huge RPMs, what you are going to do with all the energy? The clamp you need will be totally massive. A 400W nominal motor driver? Prepare for dissipating 1000W for a long time!So, IMO, instead of clamping anything, you should design the basics of the complete system so that the RPM required to generate problematic voltages without active driving is so high that it's dangerous to the motor brushes anyway. If this is not possible, then you need something else than a clamp - something that isolates the motor from the bridge and lets it spin freely.

author: H.O
author_rank: Frequent Contributor
timestamp: October 09, 2017, 05:40:23 pm
content: QuoteExactly, lets say the bridge is fully on (100% dutycycle, which most can't do but it doesn't matter), the motor sees (almost) the full power supply voltage and is gladly spinning along at whatever speed that voltage dictates. Now the bridge goes from 100% to 60% dutycycle, the motorisnow spinning faster thanit would otherwise do when connected to the given supply voltageand will regenerate (push power back into the powersupply).I've got a medium size CNC knee-mill with PMDC motors. The servo drives are using the locked anti-phase scheme and the supply voltage is 130VDC. I have an active power dump circuit across the supply. When the supply voltage goes above 140V it uses an IRPF264N to place a 7.5ohm resistor across the DC-bus. This circuit "turns on" regularily when the machine axis are decelerating from rapid traverse.

author: Zero999
author_rank: Super Contributor
timestamp: October 09, 2017, 06:19:33 pm
content: Quote from: H.O on October 09, 2017, 05:40:23 pmNo, if the PWM just goes from 100% to 60%, the motor will just freewheel, without injecting any power back into the power supply.QuoteThat will happen because the drive is breaking. If the power is disconnected from the drive (0% PWM) then the voltage will suddenly fall below the nominal level and the motor will freewheel to a standstill.

author: H.O
author_rank: Frequent Contributor
timestamp: October 09, 2017, 07:18:03 pm
content: If, by breaking, you mean "shorting" the motor by turning on both bottom (or top) switches then I'm sorry but I know for a fact that the drives I'm using on the CNC-millnever everdoes that. It's using locked antiphase PWM and when the drive is decelerating the motor the supply voltage increases to the point where the dump circuit activates.

author: Zero999
author_rank: Super Contributor
timestamp: October 09, 2017, 08:42:54 pm
content: Quote from: H.O on October 09, 2017, 07:18:03 pmThe control scheme you're using doesn't allow freewheeling of the motor, without careful monitoring the supply voltage or current. The motor is effectively driven at an RMS voltage nearly equal to the supply voltage, irrespective of the speed. It relies on the motor's inductance to limit the current. When the motor's duty cycle is changed, in the opposite direction, energy will be taken from the motor and transferred to the power supply, by inductive kick-back, similar to how I described above. The article linked below describes it better than I have time for.http://www.modularcircuits.com/blog/articles/h-bridge-secrets/lock-anti-phase-drive/

author: jmelson
author_rank: Super Contributor
timestamp: October 09, 2017, 09:14:31 pm
content: Quote from: Hero999 on October 09, 2017, 06:19:33 pmThis would be true if the circuit did not have any inductance. But, because the motor certainly has inductance, and the drive output filter (if fitted) would add some more, it IS possible for energy to return to the DC supply.Jon

author: Zero999
author_rank: Super Contributor
timestamp: October 09, 2017, 10:12:59 pm
content: Quote from: jmelson on October 09, 2017, 09:14:31 pmUnless you're referring to anti-phase PWM, then no, the motor won't supply any energy to the supply, just by reducing the duty cycle. It will free-wheel.Look at the schematic below. Only one pair of the MOSFETs are switching, so the others can be ignored. There may be brief spikes but the average flow of current will never go back into the power supply.

author: H.O
author_rank: Frequent Contributor
timestamp: October 10, 2017, 04:21:15 am
content: QuoteI've been quite clear that I'm referring to locked anti-phase and I know that it doesn't freewheel the motor, thanks.QuoteI'm not sure I agree with this. At 50% dutycyle the average voltage is 0V, at 100% the average voltage, as seen by the motor is +V and at 0% dutycycle the average voltage as seen by the motor is -V.What we don't seem to agree on is WHEN the motor returns energy to the suppl (regenerates). I claim that it happens when reducing the dutycycle from say 90% to 60%, in other words when both the motor and bridge are "moving" in the same direction but the motor is moving faster than what the bridge is - so to speak.QuoteBased on the above comment you seem to indicate that it happens when the "direction of the bridge" is the opposite of the motorAt 50% dutycycle (again I'm talking about locked antiphase) the average voltage that the motor would see is 0V. If we connect a motor to 50V (100% dutycycle), let it spin up and then reduce the voltage to 10V (60% dutycycle) energy would be returned from the motor/load into the power supply, this is regenerative braking.QuoteIf we instead "reversed" the voltage and connected -10V (40% dutycycle) then energy would not be returned to the Power supply, this is dynamic braking.

author: Zero999
author_rank: Super Contributor
timestamp: October 10, 2017, 08:06:23 am
content: Quote from: H.O on October 10, 2017, 04:21:15 amI know that now. When I made that comment, I didn't know what locked anti-phase scheme was. I had to look it up. Fortunately, I was already familiar with it to some extent: it's commonly used in class D amplifiers, which is what an h-bridge motor driver effectively is.QuoteThat is true. I didn't say otherwise. What I meant was the RMS voltage across the motor is always equal to the supply voltage - the losses in the switches. If the motor was replaced with a resistive load, such as an incandescent lamp, the same current would flow, irrespective of the PWM setting. It works because the motor is an inductive load, which blocks AC and acts as a low pass filter, thus the current flowing through it depends on the average voltage across it, not the RMS voltage.QuoteNo we do agree. I made that comment before I learned about anti-phase PWM. Regeneration will occur when the bridge is actively causing the motor to decelerate. This is true, whatever PWM control scheme is being used.QuoteYes, I know that now, after reading the article, I linked to previously.QuoteWhat I meant was, with anti-phase PWM, any reduction in motor speed, at a rate faster, than what the motor would naturally decelerate at, is dynamic braking. When I talked about the motor's duty cycle changing, in the opposite direction, I didn't mean the average voltage reversing. I was referring to the current through the motor. The average polarity of the bridge doesn't have to go in the opposite direction for that to happen. Changing the duty cycle from 60% to 50% or from 60% to 40% will both result in dynamic breaking and power being injected into the supply, due to the inductive kick-back from the motor. The principle is the same, regardless of the PWM control scheme being used.Thank you for raising the subject of anti-phase locked PWM but we don't want to derail the thread. The problem is we don't know what control scheme the original poster is using.

author: Leo Bodnar
author_rank: Frequent Contributor
timestamp: October 21, 2017, 10:28:37 am
content: Quote from: Yansi on September 26, 2017, 11:58:32 amIs this generic advice or specific to this design?There are motors with low enough inductance (many Maxon and pancake motors are) and if compact design precludes the use of external high current inductors the only way out is to use high PWM frequency. This will keep form factor closer to unity and avoid additional heat losses in the windings.It is not unusual to use 100kHz PWM and even higher, we have a few designs running at 200kHz. This was found to result in most power efficient system as a whole. Maxon own amplifiers run at 54kHz even though theydohave internal motor chokes.Leo