H-Bridge Fundamentals


Real Mosfets

On the last page I mentioned that mosfets are like electronic switches. In many ways they are, but it is actually not that simple. Mosfets have many imperfections that can cause problems for H-Bridge designs. Each mosfet also has maximum current and voltage parameters, which must not be exceeded in your designs. It is a good idea to read through the mosfet datasheets to ensure that it is the right mosfet for your design. Nothing is more frustrating than freeing trapped smoke because you chose the wrong mosfet.

Symbols

Mosfets have 3 regions of operation that we will concern ourselves with for H-Bridge design:

The first is cut-off mode, when the mosfet does not conduct.

The second is the saturation mode, when the mosfet is switched on and is conducting with a very low drain to source resistance.

The third region is in between cut-off and saturation, and is known as the triode region. This is the region where the mosfet begins to conduct, but has a high channel resistance (discussed below).

There are 3 key voltages that will determine what mode the mosfet is operating in. These are:

  • VGS, the voltage from the gate to the source, taken with the gate as positive and source as negative

  • VDS, the voltage from the drain to the source, taken with the drain as positive and the source as negative

  • Vt, the mosfet’s threshold voltage. This value is a device parameter, and is roughly given in the device’s data sheets. (For example, an IRF540 N-Mos has a Vt of 2 to 4 volts, while an IRF9540 P-Mos has a Vt of (-2) to (-4) volts)

For an N-Mos device:

  • Cutoff when VGS < Vt
  • Triode when VGS > Vt, and VDS < (VGS – Vt)
  • Saturation when VGS > Vt, and VDS > (VGS – Vt)

For an P-Mos device:

  • Cutoff when VGS > Vt
  • Triode when VGS < Vt, and VDS > (VGS – Vt)
  • Saturation when VGS < Vt, and VDS < (VGS – Vt)

Ideally, for an H-Bridge we want to spend as little time in the triode region as possible, and maximize the time the mosfets are in the cutoff (off) and the saturation (on) regions. This will cause the mosfet to be the most efficient, since we avoid the losses caused by the higher drain to source resistance in the triode region.

Don’t get the idea, though, that the triode region is useless. For other types of circuits, such as analog amplifiers, the triode region can be quite useful. However, for an H-Bridge we treat it as a bad thing, and try to avoid it as much as possible.

Channel Resistance

Every mosfet has a drain to source resistance, or channel resistance. We will mainly concern ourselves with the saturation mode channel resistance, or RDS-ON. The higher the current rating of the mosfet, and the smaller the package, the smaller this channel resistance will be.

Why does the channel resistance matter? Every resistance has a voltage drop when current is passing through it, and this voltage drop will increase proportionally with current.

For example, if a motor draws one amp of current, and the high and low side transistors each have an RDS-ON of 0.5 ohms, Ohm’s law will give us a voltage drop of:

V = I * R = (1 Amp) * (2 * 0.5 Ohm) = 1 V.

So, if you are using a 7.2 volt battery pack, the motors would only be getting 6.2 volts. The higher the current, the lower the voltage across the motor terminals will be, and you will not be achieving maximum performance.

Surface mount mosfets also have smaller RDS-ON values, if you are willing to work with them. However surface mount components also need more care for heat dissipation than a component in a TO-220 package.

When the mosfet is in the triode region, the channel resistance is much higher, which is not desirable for H-Bridge design, and is why we try to avoid the triode region.

Voltage Limits

One very important thing to note is that all mosfets have a rated VGS-MAX. The value is usually between 15 and 20 volts, usually with an average of 18 volts. If you exceed this voltage limit, you will destroy your mosfets. It is not a problem when your power supply is below the rated VGS-MAX. However, if you are running with a voltage higher than the rated VGS-MAX, you need to limit the VGS voltage difference. The easiest way to do this is to use Zener diodes to limit the voltage.

MOSFET Reaction Times

If you look through a Mosfet’s data sheet, you will notice delay times for the mosfet to turn on and off. These delay times can be as long as 50 nano-seconds. Usually it takes loner for a mosfet to turn off than to turn on.

This is another reason why you should put a delay in-between switching mosfets on and off in your circuit. For example, if your h-bridge has a ‘forward’ signal, to go backward first turn all the mosfets off, wait a couple milliseconds, then switch on the appropriate combination of mosfets to reverse your motor.

Gate Capacitance

Gate capacitance in mosfets is also an issue. If you are driving your h-bridges with a PWM signal, a higher gate capacitance will increase the time it takes for the mosfet to switch on and off. Ideally, you want to have the mosfet switching on and off as quickly as possible, in order to spend as little time as possible in the triode region. Slow switching will result in much higher channel resistances, which in turn will result in more power dissipation across the mosfet, causing the circuit to become less efficient, and the mosfets to heat up.

Also, you must make sure the gates of your mosfets see as little resistance as possible. For example, a high resistance to ground will cause the gate capacitance of an N-Mos to discharge much slower than if the resistance was low. This results in the mosfet spending more time in the triode region.

Mosfet drivers are one solution. I have successfully used the TC4427. It is very easy to use, and is placed in the circuit right before the mosfet gates. Other solutions are available, though I have not used any others as this one has worked fine for me. Note that the maximum supply voltage for the TC4427 is 18v. Make sure you DO NOT put any pull up or pull down resistors between the TC4427 and the mosfet’s gate, as this will severely reduce it’s effectiveness.

Also, choosing the correct PWM frequency is essential. If the frequency is too low, the motors will become too inefficient. If the frequency is too high, the h-bridge will become too inefficient for the reasons outlined above.

PSpice Simulations

I have created a simple PSpice simulation, using the student version of OrCad PSpice, in order to demonstrate some of the problems of real PWM driven mosfets.

The circuit is a mosfet H-Bridge, using the IRF9540 as the high side P-Mos, and the IRF540 as the low side N-Mos. I attained spice models of these two components from International Rectifier’s web page.

The spice circuit I made can be downloaded here. (This file requires the mosfet models mentioned in the above paragraph. Click on the part numbers to download them) The circuit is set up to have the high side P-Mos connected directly to the 18v volt supply, while the low side N-Mos is connected to a 1kHz, 50% duty cycle square wave with an 18 volt amplitude. I put a resistance on the input signal in order to demonstrate the effect of not only this resistance, but the current limiting it causes and to exaggerate the distorted waveform caused by the gate capacitance.

Figure 4.1 - PWM Driven H-Bridge Output, High Side Fixed, Low Side Toggled.

In figure 4.1, the faint dotted square wave is the PWM input (V(7) in the circuit), and the solid line is the output, or voltage across the load ( V(2)-V(5) in the circuit). The gate capacitance is causing a brief delay while the mosfet is turning on, and a much larger delay while turning the mosfet off. When the mosfet is turning on and turning off, it is in the triode region, which is very inefficient and causes high power losses in the mosfets. It is important to minimize the time the mosfet is in the triode region.

It is hard to see in figure 4.1, but the output voltage maximum is slightly below the 18 volt supply voltage. This is caused by the channel resistance, RDS-ON. In this simulation, the load is drawing approximately 1.8 amperes. the IRF540 and IRF9540 have RDS-ON values of 0.077 ohms and 0.2 ohms, respectively. (Maximum current ratings are 27 amperes and -19 amperes)

Using Ohm’s law:

V = I*R = (1.8A) * (0.077 + 0.2) = 0.4986

This voltage drop of approximately half a volt may not seem like much, but it will increase proportionally with current draw. When larger motors are used, with higher currents at load, this voltage drop will be much greater.

Figure 4.2 - PWM Driven H-Bridge Output, Both High and Low Toggled.

For comparison, figure 4.2 shows the output when both the high side and low side MOSFETs are driven by the PWM signal. It is easy to see that when the high side is left fixed and only the low side has a PWM signal applied to it (as in figure 4.1), the output is much more desirable.

Figure 4.3 - PWM Driven H-Bridge Output, Low side toggled with 5v.

As a final comparison, Figure 4.3 shows the output when the high side mosfet is fixed to 5 volts, and the low side mosfet is driven with an 5 volt amplitude square wave (1kHz, 50% duty cycle). The rail voltages are still 18v. This demonstrates why it is a good idea to drive the mosfet gates with the same voltages as the H-bridge circuit is driven by, not a smaller logic voltage. (However keep in mind the VGS-MAX). The mosfet will switch on and off much slower when you drive the gates with your logic voltage (usually 5v). If you drive them with your motor voltage, you will have much better performance.

Spice simulations, however, are not perfect and do not always react like a real world circuit. I created this one simply to demonstrate some of the problems associated with h-bridges, and as such Spice can be a powerful tool.

« Previous

  1. Introduction
  2. H-Bridge Basics
  3. The Ideal MOSFET H-Bridge
  4. MOSFET Imperfections
  5. Power Supplies, Noise and Cooling
  6. Design Considerations and Conclusion
Next »

Pages: 1 2 3 4 5 6

, ,

  1. #1 by Rodrigo at January 19th, 2009

    You say LM293 and LM298. I think you mean L293 and L298. Regards.

  2. #2 by Roko at January 19th, 2009

    Good catch, thanks!
    Updated..

  3. #3 by Frank at April 6th, 2009

    The mosfets I want to use have their heatsink connected to drain. Is it wise to connect them together on a heatsink ? I want to use irf9450 (P) and irf620 (N) but put them all on the same heatsink. Will this produce smoke or am I safe?

  4. #4 by Roko at April 6th, 2009

    Frank;

    Since all the drains are connected to heat sink pad on the FETs, connecting them all directly to the same external heat sink would cause you to short out your left and right legs if the heat sink is electrically conductive.

    There are available special heat sink insulators available for this purpose:
    http://en.wikipedia.org/wiki/Mica_insulator

  5. #5 by Romeu at April 10th, 2009

    hey!

    Thanks a lot for all this informations about H-bridge! I’m trying to make one but it’s not easy when we dont know a lot of things… Now i hope it will be a bit better:)

    Good luck in your hobbies!

  6. #6 by nhaan at April 14th, 2009

    thanks for your informations.
    Can i use a 12-220V transformer instead of a motor in full h-bridge to make a inverter? I use PWM method with a micro controller.

  7. #7 by djallel at May 20th, 2009

    hi guys,
    i’m working in a project whitch contient an H-bridge for driving my DC motor with I load =10A.and i have my battery voltage =6V.
    so in the first step i used 4 N channel mosfets to build my H bridge with PWM input toin crease mu current load to 10A.
    the problem i didn’t find a good idea to wire my H bridge with the microcontroller (it’s power supply is 3V) .
    i tried some H-bridge driver can be work in this project but i didn’t.
    can some one help me.
    thanx.

  8. #8 by Roko at May 20th, 2009

    Using 4 N channel Fets is a good idea, as it is cheaper and N channel fets tend to have a lower RDS On resistance, the challenge is that you need to switch the upper N-channel fets with a voltage higher than your bridge supply voltage.

    I’ve used the MC33883 bridge driver from Freescale successfully. It requires a 5.5 volt supply, so you could power it directly for your battery, but the I/O will work with 3 volt inputs, so you should be able to wire up your micro directly to the bridge driver I/O and a common ground.

  9. #9 by djallel at June 3rd, 2009

    Hi;

    Thank you very mush for your replay,

    Regarding your suggestion,is a good idea but the problem that i haven’t Pins enought in my microcontroller there is just 2 Pins (one for hight mosfets and another for the down mosfets ).
    I found some H-bridge driver like L99H01 with voltage supply of 6V and operate logic supply between 3 to 5.3.

    But I have a doubt about voltage supply will decrease during use.

    Thank you again.

  10. #10 by vpunk at July 17th, 2009

    Thanks for this very practical and informative guide! You’ve answered all the questions I had and some I hadn’t even considered. Keep up the good work!

  11. #11 by Matt at July 20th, 2009

    Hey, this is a damn good article. As an ee, I really appreciate the analysis. I have looked at some websites out there, riddled with foolishness like paralleled BJT’s :( . I have spent a lot of time recently studying mosfets and h-bridges, so I know what I’m talking about when I say excellent Job!

    I’ll be looking forward to upcoming posts.

  12. #12 by aditya at July 28th, 2009

    i’cant see the picture! i only see a black line… please send the picture to my e-mail. i need their picture to help me to understand how H-bridge work!thx..

  13. #13 by Hugh at August 2nd, 2009

    Very nicely written article. It is informative and understandable! Thank you so much :)

  14. #14 by sam at August 5th, 2009

    Thank you for this great article. I’m building my first H-bridge now :)

  15. #15 by Jose at October 12th, 2009

    I’m think you might be confused names of the operating areas. The triode/linear region for a fet is where you WANT to be for switching this area is similar to a BJT’s saturation reagion (this is where i think the confusion started). Now the fets saturation region is typically used for amplification NOT SWITCHING this is similar to the BJT’s active region.

  16. #16 by Roko at October 14th, 2009

    Thanks for the note! It’s been a while since I wrote this, so I’ll check it over and correct that when I get a chance.

  17. #17 by ashish at November 5th, 2009

    heyy all,
    im making a solar boat.. the solar panel can deliver a max 12 v. can u help me to make a motor driver circuit which can drive a 12 v , 5A motor ..plz give me the details

  18. #18 by ashish at November 5th, 2009

    itz realy urgent and important for me…plz send me the circuit layout on a pcb….my email id is ashishr_singh@yahoo.co.in

  19. #19 by Omer Malik at November 7th, 2009

    can some one tell that waht are the chances of burnout in L298/293. I have heard that they are quite often burnt and dont prove to be reliable

  20. #20 by Omer Malik at November 9th, 2009

    ……. i am using pitman motor.

  21. #21 by Roko at November 9th, 2009

    Omer, the chances of burning out an L298/L293 depends a lot on your motor an application. Smaller motors that they are designed for will run well, and won’t burn them out. However, larger motors that draw a lot of current are what often causes problem. To reliably use them, you will need to ensure that your motor’s stall current is lower than the maximum rated current for the chip, and that you are properly cooling the chip with a large heat sink.

  22. #22 by Guy at November 13th, 2009

    Hi,
    I was just reading through this design and was curious as to whether this design requires that motor supply voltage be at the same voltage as the output of the micro ? Otherwise if say the motor supply was 12 V and the micro outputs 5 V, wouldn’t there still be a negative potential across the p-channel Vgs? hence not turning it off when we want it to. Or perhaps I am misunderstanding something?

    Cheers

  23. #23 by Roko at November 14th, 2009

    Hi Guy,

    You are correct that by itself a 5 volt MCU would have trouble switching a 12v bridge. To get around this, a mosfet driver should be used to translate the low current 5v signal to a higher current signal capable of sourcing 12v to the fets.

    I briefly mention this on page 4, but when I get a chance I’ll elaborate upon this in the article. Thanks for the note!

  24. #24 by Guy at November 15th, 2009

    Thanks man,

    Its just a small area of confusion.

  25. #25 by Guy at November 15th, 2009

    So should I some how amplify the signals from the micro to the Mosfets to match that of the load?

    Would that work?

  26. #26 by XTL at November 16th, 2009

    “Turning either A or B high will cause the motor to rotate in one direction or the other. If they are both high or both low at the same time, then the motor will actively bake.”

    :-D That line really made my day.

  27. #27 by Martin Kynde at December 2nd, 2009

    Hallo

    I am studying electronics. The interface circuit would not work! Q1 and Q4 has to work together, and Q2 and Q3, else the motor would not turn in any direction. Just swap Q1 with Q2 on figure 3.2, then it would work :-)

  28. #28 by Roko at December 2nd, 2009

    Hi Martin,

    I believe you’re confusing the operation of P and N channel FETs. As the paragraph below figure 3.2 states, the P and N channel fets are activated by opposite polarities.

    Thus, the interface circuit is correctly set up to provide a high signal to Q4, and a low signal to Q1 to switch them both on, while ensuring that the others are off.

  29. #29 by Martin Kynde at December 13th, 2009

    Hallo Roko

    I think you have right. Sorry for the confusing

  30. #30 by John Essen at January 12th, 2010

    A clearly written article on this subject, it answered all my questions.
    Thanks Roko

  31. #31 by genotio at January 19th, 2010

    Note that you can put 2 or more mosfets in paralell. Rdson will be smaller, but driver will be more loaded.

  32. #32 by arash at January 24th, 2010

    hello
    my friend
    please help me
    please send pdf or shematic file circuit driver dc motor 24 v for automatic door(left or right fasrt speed and low speed by pwm and countering rpm by shaft encoder ) by mosfet and L99H01 chip or masfet and ir 2102 chip

    thank you

    please send now
    i am a waiting

(will not be published)
  1. No trackbacks yet.