Shop OBEX P1 Docs P2 Docs Learn Events
Mosfet driving and bridge — Parallax Forums

Mosfet driving and bridge

Erik FriesenErik Friesen Posts: 1,071
edited 2011-09-17 06:12 in General Discussion
In this design, I am using the mcp14700 (u2 - 4) - http://ww1.microchip.com/downloads/en/DeviceDoc/22201a.pdf and the Infineon ipg20n (u6 - 8)- http://www.infineon.com/dgdl/IPG20N06S2L-50_DS_10.pdf?folderId=db3a304412b407950112b4322c6d574b&fileId=db3a30432313ff5e0123a3bf936226b1

R8-13 are 15 ohms. Is this a mistake? Should these be straight through?

Here are the symptoms. Mosfets and drivers are running warm to the touch, not hot. However, when the motor (brushless)gets under load, or gets into a debug type jerk and start due to testing, it is blowing both the driver, and the mosfet, although not every time. Failure is a demonstrated by a high current draw from the 5v reg, which is usually from the 14700 driver. Loads are less than 1.5 amp at this point.
640 x 480 - 181K
640 x 480 - 174K
«1

Comments

  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2011-08-15 20:27
    H-bridge failures are sometimes a symptom of "shoot through", as might occur during a direction reversal. Are you sure you're providing enough dead time while switching between high- and low-drive on each side of your H-bridge?

    -Phil
  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2011-08-15 21:40
    Handling heavy power, especially inductive drive circuits, has a lot of nuances that simple low-power digital circuits do not. You might save yourself a lot of trouble by including some good old fuses in the circuitry until you complete development. It wouldn't hurt to leave them in even after development, just use higher values onces you have everything right.
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-16 04:08
    I hadn't thought of "shoot through". I don't know if that could be the issue or not. If it is synced with the off PWM cycle, that wouldn't be an issue, would it? That does merit some consideration though, as this typically has happened when the commutation gets out of sync. It could only be switching time though, not a messed up commutation. The commutation is done with a series of constants, based on existing well proven code. I am just tweaking the bemf sensing, and other related parameters.
  • Capt. QuirkCapt. Quirk Posts: 872
    edited 2011-08-16 23:38
    My information on gate resistors: they are necessary for reducing rf oscillation in the mosfet, and
    that you must consider the gate load capacitance to determine the resistor value. Possibly to
    decrease losses by fine tuning the gate drive voltage for a given frequency?

    May not be the problem, but it's a learning experience for me,.
  • LeonLeon Posts: 7,620
    edited 2011-08-17 01:07
    Erik,

    How are you generating your PWM? PICs that are used with BLDC motors have dead-band built into their PWM peripherals.

    Have you incorporated all those precautions mentioned in the Microchip data sheet?
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-17 03:24
    @leon, I am using an1160 based code. That code isn't using the dead band. It is using a timer to change the p1ovdcon reg at commutation, so that isn't synced to the pwm I now realize. I did most of my initial work using the mclv demo board, didn't have any trouble out of it. Its rated at 15a, 48v however, is using much larger mosfets than I.

    Which data sheet do you refer to?

    @capt quirk
    The data sheet for the mcp14700 gives no recommendation and does not show resistors in their sample schematic, thus the uncertainty.
  • LeonLeon Posts: 7,620
    edited 2011-08-17 04:01
    The one you mentioned, for the Microchip driver chip. There is a lot of design information in it. I'd use a dsPIC for BLDC motor control:

    http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=2125&param=en542235
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-17 04:30
    Its a dspic.

    This is a four layer board, so ground and power come from internal layers.
    896 x 601 - 49K
  • Capt. QuirkCapt. Quirk Posts: 872
    edited 2011-08-17 11:43
    From what I have learned (in the last 24 hrs) is that your resistor value is
    based on your hardware and your software, and is used to fine tune the
    gate voltage in order to reduce switching losses that may increase heat.

    So, I am curious what your gate drive voltage is, is it regulated, the pwm frequency.

    I believe, that with this information and what you supplied, I could calculate
    your switching losses that may be contributing to the heat.
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-17 11:48
    No, actually the resistor has been a seat of the pants thing, unfortunately. The mclv demo board uses resistors between the drive and gate. The mcp14700 data sheet is a bit fuzzy, but alludes that a resistor is not needed. I have been experimenting with 40-80khz switching speeds.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2011-08-17 11:50
    The resistor value (including the driver's internal resistance), combined with the gate capacitance and the drive voltage and PWM frequency, will determine what percentage of time the MOSFET is in its linear region. This, largely, is what determines the amount of heat produced, unless the MOSFET is underrated for the load it's being asked to handle.

    You can get a feeling of this by looking at the gate voltage (post-resistor) on an oscilloscope. Are the leading and trailing edges of the PWM vertical, or do they rise and fall more slowly? If the latter, either your resistor is too large, your gate driver is inadequate, or both.

    -Phil
  • Capt. QuirkCapt. Quirk Posts: 872
    edited 2011-08-17 16:10
    There are many mosfet appnotes, this one is my favorite. Page 8 is great, I also referenced pgs 11, 44.
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-18 06:35
    This isn't so good. This is with 0 ohm jumpers between the gates and drivers. This is the low and high side of one bridge set gate. For starters the dead time isn't working, next I will have to work on the ringing.
    640 x 480 - 21K
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2011-08-18 08:25
    Erik,

    Are you sure the ringing is still there when you remove the scope probes? Yeah, rhetorical question, I know; but how are you probing the gate, and where are you connecting the ground lead? In situations like this, it's best not to use the ground lead with the alligator clip, but to attach a short wire to the probe's ground collar and solder it directly to the MOSFET's source pin.

    -Phil
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-18 08:55
    Yet another thing, yet simple, I was only using a 470uf aluminum to directly bypass the motor supply. Adding a .1uf cap has made a large difference. I suspect a few problems are related.

    I suppose it could be ringing because of the probe, but wouldn't that show up in other places? The whole probe ground thing is murky in my mind, as my scope has them all tied together internally, as well as to the ground plug on the plugin. (fluke pm3382) Really to do it right a person ought to have a differential probe set, which I can't afford right now.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2011-08-18 09:13
    Another potential source of trouble could be the grounding. It's not a good idea to connect the motor's return supply (i.e. the minus side) to the ground plane and hope for the best. The motor ground and logic ground should be treated as separate circuits and connected together only at the MOSFET itself, so that motor currents do no run through the ground plane.

    -Phil
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-18 09:18
    Well, what I have done is create a small power plane containing the bypass caps, which then feeds through to the ground plane through a shunt resistor. May not be enough.
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-18 09:32
    I am getting quite sure that what is happening, is the driver is latching both low and high together under certain conditions. I can catch it on the driver side, and have confirmed that the mcu is not commanding it. I am puzzling the cause.
  • Capt. QuirkCapt. Quirk Posts: 872
    edited 2011-08-18 12:50
    [QUOTE=Erik Friesen;Here are the symptoms. Mosfets and drivers are running warm to the touch,
    not hot. However, when the motor (brushless)gets under load, or gets into a debug type jerk and start
    due to testing, it is blowing both the driver, and the mosfet, although not every time. Failure is a
    demonstrated by a high current draw from the 5v reg, which is usually from the 14700 driver.
    Loads are less than 1.5 amp at this point.[/QUOTE]

    I am curious if your problem occurs before you start sampling the zero-cross? and if your load is a propeller.

    Also, I have been reading about motor misfiring or not being in sync from start up to the zero cross range,
    and programming for that possibility. I have also read about "over-current" protection during start-up, but
    I think that may protect the motor coils?
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-19 20:46
    This cannot be related to commutation. The same code works on the demo board. I have noticed that the demo board does not show any voltage loss in the power area. Note my board shows no spikes in the driven heart shaped area, which shows voltage loss is occurring somewhere. (ch2 is the filtered signal to the chip)

    I have started to suspect a transient problem, or at least enough to fry the driver chips, which in turn then fries the mosfets. I also suspect the IPG20 mosfet is way overrated in the datasheet. Or, the 15a avalanche rating is not enough for my motor.

    Its a learning process by force.
    640 x 480 - 78K
    640 x 480 - 85K
  • Capt. QuirkCapt. Quirk Posts: 872
    edited 2011-08-21 00:41
    After more reading on failures of mosfets and their drivers caused by power spikes; A common cause was that a supply (boot) capacitor
    was unable to deal with the spike. That very low esr ceramic caps are preferred over electrolytic, and that an x7r temp rated ceramic capacitors
    are recommended.

    Bill M.
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-21 19:01
    Look at these two driver arrangements. Can you explain the difference? I feel like the key lies with getting myself to understand what these drivers are doing, and how they are getting the voltage to the the high side driver. When I probe the ir2181 driven gate, the voltage is clean, from 0 to on, to 0. The 14700 drives high, then drops to below gate threshold(as near as I can tell), then slowly drops, but not clear out to zero.
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2011-08-21 19:10
    Erik,

    How did you create your PDFs? Neither one opened in my PDF viewer but caused errors, and all I got was blank pages.

    -Phil
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-22 05:24
    I used cutepdf from a pdf, and didn't check them before I attached them.
    837 x 589 - 60K
    936 x 603 - 39K
  • Mark_TMark_T Posts: 1,981
    edited 2011-08-22 16:08
    What are the motor winding specs? RC brushless motors have ultra-low winding resistance for instance. Those MOSFETs don't seem to have any heatsinking so will only do about 0.3W per package (0.15W per MOSFET) without getting very hot, limiting them to less than 2A or so...) and are rather poorly speced for driving an RC brushless motor (5 milliohms would be more like it than 50 milliohm). What current can the supply give? Are you sure its only 1.5A? All that ringing on the gates suggests the driver's haven't got proper decoupling (they need a lot of decoupling as MOSFET drivers switch something like 10^8 amps/second) - 0.1 and 1.0uF ceramic per driver chip would be a good start I think.
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-22 19:20
    Those mosfets have a metal plane on the underneath side, I think they can do better than 0.3w. Tell me where my calcs are off, but at a max of 2 amps, that is 2a * .05 ohm * 2a = .2w * 2 = .4watts + switching. The datasheet specs these at 65w, which I think is rubbish.

    The supply can give 4 amps or so, but peak pulse amps are much higher, I estimate closer to 10, based on mclv testing.

    I don't know if I have it figured out yet, but one major source I have identified is fairly severe ground bounce, enough to reset the uP. 100 ohms resistance on the gates has made a huge difference. I think the ground bounce was also affecting the driver outputs. These mosfets switching speed is specked at 5ns rise time, 15ns fall, compared to the mclv board at 250 rise, 140 fall.

    I also changed the .1uf bypass caps on the driver for 1 uf, now the switching and driving waveforms look the same as the mclv board.

    Yet another problem, I have forward and reverse constants, I had accidentally added a 0 to the end of one, thus one direction was causing issues.

    http://www.hobbypartz.com/86ma64-2215-740kv.html Yes I know, its not rated to 24v.
  • Capt. QuirkCapt. Quirk Posts: 872
    edited 2011-08-23 13:06
    Will slowing down your pwm help? Most speed controllers would run at only 30 - 40 khz.
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-23 13:11
    I think the problems described above are taken care of, mostly. I do have a new one I am pondering. Note how the output jumps up after each pulse. If due to increasing current the 'jump' gets close to the next pulse, it simply quits driving the mosfet every other time. I think it has to do with resonance in the motor, but I can't find much info on it. I think it is pushing the wrong way on the boot cap at just the right time.
    640 x 480 - 71K
  • Capt. QuirkCapt. Quirk Posts: 872
    edited 2011-08-24 09:04
    Did you change the Capacitor to a low esr ceramic? the IR & Microchip mosfet driver data sheets recommended it, and it was part of the the MCLV board.
  • Erik FriesenErik Friesen Posts: 1,071
    edited 2011-08-24 09:17
    This is what I am using. http://www.mouser.com/ProductDetail/Kemet/C0603C105K4PACTU/?qs=sGAEpiMZZMvQvaS66kI3Tgu8GvNES3US7zIId5fVdYM%3d

    Are you suggesting that I need to get a ceramic that is specked as low esr? There is only about 4 0805 size ceramic caps listed as low esr at mouser, and they are all y5v.

    The mclv is using 3.3uf tantalum for the bootcap, which I doubt is lower esr than a ceramic.
Sign In or Register to comment.