Let's Make Robots!

H Bridge Matrix


Description

An H-bridge circuit typically provides motor control in robotic designs. Low voltage, low amperage control signals (TTL) are used to control motors. The H-Bridge can interpret these signals into a Motor Go Forward, Motor Go Backward, Motor Stop commands. Often speed can be implemented using PWM (Pulse-width modulation) through a H-Bridge. H-Bridges are extremely important in robotics. It is like the connection between the brains and the muscle of a robot. The brains being a computer or micro-Processor, and the muscles being a motor. This Matrix (when it is somewhat completed) should help you step through the process of selecting an appropriate H-Bridge design for your application.

 Terms

  • Ampere  - (symbol A) the unit of measure for electrical current
  • BJT - a common often inexpensive transistor
  • Ground - the negative part of a battery :)
  • Inductance - The magnetic field that is generated when a current is passed through an inductor, typically a wire coil. Important, because a motor which is spinning is also a generator. The current generated from this can (and has) put many H-bridges in Magic Smoke mode.
  • Load - the work a motor is doing
    • No-load - is the speed and current drawn by a motor when there is no external load
    • Stalled - is the current and torque of a motor when so much load is put on the shaft, the motor does not turn
    • Rated - maximum load conditions which the motor can be operated continuously
  • Magic Smoke - (slang) the smoke released from your circuit, which previously made it work. When a circuit becomes overloaded and components burn, they make magic smoke.
  • MOSFET - a silicon switch which is capable of switching a considerable amount of current, typically more than BJTs. Due to the fact that MOSFETs conduct less when heated, they can be ganged together to provide massive current capability. BJTs in contrast conduct more when they get hot, and will destroy themselves in similar conditions.
  • Ohm - a unit of measure for electrical resitance
  • Ohm's law - a helpful formula for figuring out how much work your circuit can do, before going into "Magic Smoke" mode. I = V/R. Current = Voltage / Resistance
  • Shoot Through - a term describing when some of the switches in an h-bridge do not open or close at the appropriate time. Shoot through shorts the power and can lead to circuit destruction. It is a good thing to avoid when possible. Some h-bridges are designed to prevent shoot through, other designs leave it to control circuitry.
  • Short - a term describing power from a circuit going directly to ground without resistance. Another good thing to avoid. It can destroy batteries, circuits, and the wire or trace which was shorted.
  • VCC, VDD, V+, VS+, PWR, + Positive supply voltage
  • VEE, VSS, V-, VS-, GND, - Negative supply voltage
  • Volt- (symbol V) the unit of measure for electrical potential/pressure
  • Sign Magnitude - a method of using 2 inputs to an h-bridge, in which one input signals direction, and a PWM input gives the magnitude of drive.
  • Locked Antiphase - input method where direction and magnitude are a single PWM input. At 50% duty the motor is stopped, lowering the duty percent would increase drive one direction, raising the duty cycle would increase in the opposite direction. Offers true 4 quadrant control of motors (CW driven, CW regenerating, CCW driven, CCW regenerating), but increases switching which increases heat.

How it works

 

 How to select the appropriate H-Bridge design

Measure resistance of the coil of your motor To find the stall current of your motor use Ohm's Law V/R=I (Current = Voltage/Resistance). For example if you measure the resistance of a motors leads at 2.4 Ohms and your battery is 24 volts, your stall current will be : 24 volts / 2.4 Ohms = 10 Amps. So if your motor stalls, your circuit should be protected or capable of handling 10 amps.

 BOA's Brilliant Hybrid H Bridge

BOA's Brilliant Hybrid H Bridge
DescriptionBaseOverApex's design of a great Hybrid H-bridge. The hybrid is a combination of relays and MOSFETs. The relays are for forward and reverse switching. The MOSFETS can accept a high frequency PWM for speed control. This design has been built (not just theory) and is currently powering one of BOA's great bots. Hopefully he will post a version of the PCB art - although it might be good to rework it so that the PIC is not part of the design, as others might be using different methods of control.
Original AuthorBaseOverApex
Built ByBaseOverApex,
Max Current10 Amps
Max Voltage12 Volts
Build Time3 Days?
Pros 
ConsSchematic is completely wrong at the moment - will fix
Max PWM Frequency 
Featuresforward, reverse, pwm speed control, current overload protection, fuse
Parts List 
Schematic
BreadBoard
Gerber

 

 BOA's Brilliant Hybrid H Bridge - Robologist Mod

BOA's Brilliant Hybrid H Bridge - Robologist Mod
DescriptionBaseOverApex's design of a great Hybrid H-bridge. The hybrid is a combination of relays and MOSFETs. The relays are for forward and reverse switching. The MOSFETS can accept a high frequency PWM for speed control. This design has been built (not just theory) and is currently powering one of BOA's great bots. Hopefully he will post a version of the PCB art - although it might be good to rework it so that the PIC is not part of the design, as others might be using different methods of control.
Original AuthorBaseOverApex robologist
Built By 
Max Current15 Amps - limit by relay
Max Voltage12 Volts to 15 Volts
Build Time3 Days?
Prosstrong, low cost
Consnot quicklyswitchable forward to reverse, limit by relay
Max PWM Frequency 
Featuresreverse flyback diodes, MOSFET driver
Parts List
Desig  Qty  Part#           Each  Total    Dist      Description
*K1,K2 2 PB897-ND $4.44 $8.88 Digikey Tyco PCLH-202D1SP,000 12VDC/75 mA coil, 15A relay
*Q1,Q2 2 IRFZ44NPBF-ND $1.89 $3.78 Digikey IRF IRFZ44NPBF 49A 55v N-chan FET TO-220
*Q3,Q4 2 P2N2222AGOS-ND 0.36 0.72 Digikey On Semi P2N2222AG 600mA 40v NPN GP BJT TO-92
*D1-D8 8 497-2753-5-ND $1.09 $8.72 Digikey STMicro STPS1545D 15A 45v Schottky rectifier diode
*U1 1 TC4427CPA-ND $1.05 $1.05 Digikey Microchip TC4427CPA 1.5A MOSFET driver
*C1 1 4035PHCT-ND 0.81 0.81 Digikey Vishay 220 uF 35 v Electrolytic Cap
* Total $23.96
Schematic
BreadBoard
Gerber

 SINGLE CHIP N-CHANNEL FET BRIDGE

SINGLE CHIP N-CHANNEL FET BRIDGE
DescriptionDesign which contains a very small amount of components for a very large capacity H-Bridge.
Original AuthorGroG
Built By 
Max Current30 Amps
Max Voltage50 Volts
Build Time3 Days?
ProsVery small number of components, includes a under current protection line, will not "shoot through"
ConsSchematic is completely wrong at the moment - will fix
Max PWM Frequency 
Featuresforward, reverse, pwm speed control, current overload protection
Parts List 
Schematic
BreadBoard
Gerber

 

 

 SIMPLE LOW POWER NPN PNP H-Bridge

SIMPLE LOW POWER NPN PNP H-Bridge
DescriptionDesign which contains a very small amount of components for a very small capacity H-Bridge. The NPN transistors can be substituted with a variety of differently rated components. 2N2222 TIP120, etc.
Original AuthorGroG
Built By 
Max CurrentDependent on the transistor used - 2n2222 can sink ~800 mA, a TIP 120 can drive 5 amps with proper heat sink
Max Voltage50 Volts
Build Time 
Prossmall, inexpensive
Consno protection of shoot through, will only drive small motors
Max PWM Frequency 
Featuresforward, reverse, pwm speed control
Parts List 
Schematic
BreadBoard
Gerber

 SINGLE CHIP CONTOLLERS

SINGLE CHIP CONTOLLERS
DescriptionDesign which contains a very small amount of components for a very small capacity H-Bridge. The NPN transistors can be substituted with a variety of differently rated components. 2N2222 TIP120, etc.
Original AuthorKrumlink
Built ByKrumlink - It is being implemented in my revised AREV-RSPF232
Max Current1.2 Amps per line
Max Voltage4.5 VDC to 40 volts (Forgot max but it is around 40 VDC) for motor lines / VCC2
Build Time 
Prossingle chip, no external peripheral stuff needed, just hook up the motors, input and enable lines and you are good.
ConsThe SN754410 does not have build in clamp diodes, so you need to add them. The internal diodes are for ESD protection  Pulldown resistors may be wanted to prevent the enable lines drifting high Low max voltage for motors but with internal diodes it drops the voltage to 3.1VDC anyways.
Max PWM Frequency 
FeaturesSimple to hook up, you do not need PWM and it is easy to throw together and use with LED's too
Parts ListSN754410 - optional pulldown resistors (1-10k usually)
Schematic
BreadBoard
Gerber 

 Simple P-channel over N-channel h-bridge

Simple P-channel over N-channel h-bridge
DescriptionBasic low part count P over N h-bridge
Original Authorrobologist
Built By 
Max Current80 Amps?
Max Voltage12-15 Volts limit by driver and configuration
Build Time2 hours?
ProsVery few parts, cheap
Cons

No shoot through protections, uses 4 inputs, untested

Could be improved by connecting upper and lower inputs, then adding an inverter attached between right and left sides for lock antiphase single input drive. Test shoot-through with uppers/lowers connected for feasibility.

Max PWM Frequency 
Featuresforward, reverse, pwm speed control
Parts List
Desig  Qty  Part#             Each  Total    Dist      Description  
*U1,U2 2 579-TC4427ACPA $1.36 $2.72 Mouser Microchip TC4427CPA 1.5A MOSFET driver
*Q1,Q2 2 726-SPP80P06P $3.02 $6.04 Mouser Infineon SPP80P06N P-ch 60V 80A FET TO-220
*Q3,Q4 2 726-IPB080N06NG $2.11 $4.22 Mouser Infineon IPB080N06N G N-ch 60V 80A FET TO-220
*C1 1 647-UVY1E221MED1TA 0.11 0.11 Mouser Nichon 220 uF 25 v Electrolytic Cap
*total $13.09
Schematic
BreadBoard 
Gerber 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

a noobish question: if the motor stalls (=doesn't move) why does the circuit have to be protected from, say, 10 amps (if my stall current is 10 amps)? I mean... current differently from voltage, doesn't get "absorbed" by components, so you would anyway have the same current going around your circuit, but is this true?

In other words: what is the difference if i have a stalled motor in my circuit rather than having a motor working properly.

Nice walkthrough btw. I think have to get inspired from these kind of pages, they gather informations in one single place, and this is veeery useful. Good job. 

Brushed DC motors draw less current the faster they go. At stall they draw the most current possible, and have the highest torque, at "free run" they have the highest speed while drawing the least amount of current. And it is typically a linear relationship.

If you have a motor that draws 500 mA just running on it's own, nothing holding the shaft, it is possible for that same motor to pull 5 or 10 A when the shaft is locked down. Likewise a 3 A draw on a free spin, might turn into 30 A locked. You set up your motor driver to handle the worst case, stall. Which every motor starts out from, since they start from rest.

To add slightly to robologists reply.  When you stall a motor, or when it initially starts up the coil within a brushed DC motor is  "shorted".   As the motor spins the energy travelling through the short changes from heat into kinetic energy of the shaft turning.  The characteristics of the motor, effeciency, and load will determine how much of this energy is converted into kinetic energy vs. heat.  If a motor is stalled, then the motor behaves like a shorted low value resistor.  So you want a circuit and motor which can take the maximum amount of power you give it, when its in this low value "resistor" state - otherwise SMOKE!
ok, so i basically need some resistors to limit the current in case it gets stalled, right?
Resistors would simply waste the power you are trying to deliver to the motor. In some cases high wattage small value resistors are added to allow current measurement, but not to limit the flow. You could take the measureed current and have your micro adjust the PWM to limit the average voltage applied to the motor. Or simply set the PWM to never go over a set value to keep the average current in the range you want. Or program the micro to shutdown the h-bridge or PWM if a stall condition is detected.
ok, so maybe i could use an ADC port to do that, right? I was also thinking about placing a fuse in case i do something wrong.

Yep, the ADC is good to measure whatever comes from the voltage drop across the resistor. Some calculating of what the voltage might be before hooking up might be good, don't want to over-volt the ADC. And this have the program cut down / cut off the PWM if the measurement gets too high.

Fuses are a really great failsafe. Don't have anything empirical, but maybe 80% or 90% of the max value wanted. So like for a 30 A cutoff, maybe a 24 to 27 A fuse? If such a value exists. Or maybe a good PTC fuse, those I've seen in a small minisumo robot to keep it from frying. (Bournes, Littlefuse, Tyco makes them)

?

It's baby food, to feed the baby gremlins so they won't attack your circuit.

 Actually it's a PCB layout format that PCB manufacturers can read to make your PCB.

Well folks,

My order is in! --I went with the souped-up BOA relay system, and parts should be in the mail soon. Included in my order is 2 blank boards which I ordered with the 2oz copper instead of the 1/2 oz stuff. I'm sure the thinner metal would have worked fine and in either case I am planning on keeping my lines nice and wide when I etch the board. I am using eagle to draw it up, even if it is total trial and error to learn the software. If I end up with anything usable in terms of a PCB layout I will be sure to post it! 

 

Big-ass robot here I come!!