Let's Make Robots!

Hybrid H bridge single relay configuration

So I have been brainstorming H-bridge designs for a 5V motor with 5A stall current.  I want max speed from the motor off 4xAA batteries, so I am considering using a high side relay vs a high side transistor.  I would like the H bridge to:

  • Have minimal voltage loss, to get motor voltage as close to Vcc as possible
  • Be small enough to hopefully fit on top of a small RC car chassis such that the body fits over it
  • Handle currents up to at least 10A
  • Be fairly inexpensive
  • Be suitable for PWM
  • Obviously prevent shoot through and overheating

I like the small Rds(on) value of the IRFZ44 and current capability.  If a relay is used on the high side then at 5A the voltage loss should be less than 100mV.  Relays tend to be bulky so I am thinking maybe I can get away with only using one.  I've drawn out a couple of basic configurations using a single relay as the high side of a bridge.

The schematic with a SPDT relay has three control lines to be used with an AVR uC:

  • Direction: selects which way the motor turns
  • CW PWM:  motor logic for clockwise direction
  • CCW PWM:  motor logic for counter clockwise direction

I don't know how safe this configuration is, as if the relay doesn't switch as expected then shoot through will occur.

The second schematic might be the solution to this, which uses a DPDT relay to disable shoot through.  I am also considering using an AND MOSFET driver such as the TC4468 in this configuration.

Please feel free to point out any schematic design flaws, ideas for better configurations, or your thoughts on the pros and cons.  I am just starting to come around to discrete H bridges since a single L298 is not cutting it.

Thanks in advance.

AttachmentSize
H_bridge_single_relay_SPDT.pdf9.68 KB
H_bridge_single_relay_DPDT.pdf10.48 KB

Comment viewing options

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

This circuit will work with 5A motors if you use a suitable FET. As you want to work with 5V you need to find a low voltage FET designed to work with 5V logic. Many FETs need at least 10V Vgs. Usually they have the letter "L" in their number to indicate "Logic" level or "Low voltage". Other FETs will work but their "On" resistance will be higher which will cause them to get hotter and limit current to the motor.

As the FET's usually have a "body" diode capable of working as a flyback diode the "1N4004" shown in this circuit is not normally required.

 

Looking back this is actually on the Hybrid H-bridge page, the post:

BOA's Brilliant Hybrid H Bridge - Robologist Mod

I should have been more astute and thorough in reading.

This is indeed a different configuration, I am curious if you have used this with good results?  It looks like there is no possibility for shoot through, which is great.  The MOSFET I'm interested in using is the IRFZ44 which probably won't work.  It has a max threshold voltage of 4.0V (but Rds(on) is spec'd at Vgs=10V).  I appreciate you bringing this aspect to my attention, I will have to do some more research to find something suitable or else go with a BJT I suppose.  This looks like it will be a fairly small and powerful H-bridge with little voltage loss to the motor.

This circuit is being produced with a BD681 as a "Mr. Basic" motor controller.
You can see all the info in my blog here: http://letsmakerobots.com/node/7447

The problem with a BJT is that it's internal resistance will limit maximum current to the motor.
If you use a FET such as a FQP45N03L for example then with 5V on the gate, Rds(on) is still only 0.0192Ω

With a 5A load that is a voltage drop of only 0.096V which is 0.48W of heat so no heatsink would be required.

TO-220 devices can usually handle up to 2W without a heatsink although I prefer to put on a small heatsink once it gets to 1W.

Yes a MOSFET is a transistor. Sorry for the confusion.

I don't know if they supply enough current "quickly" enough.  It would definitely supply enough current to turn the FET on, but the transition state is what  you want to avoid, and the more current supplied in a short time gets them out of the transition state quickly.  A lot would depend on the details of your motor.

I don't see how design 1 would work.  How does 5 V flow into the gate of Q4?
I see that it "floats" and you will ground it when the CW PWM switches...

But that means the gate on Q1 will go from floating to ground and back to floating on every pwm cycle.... Q1 (and Q2) will not energize.

Also, my personal feeling is, if I go to the trouble of designing an H Bridge, and build it.. then I will want only 2 bits to drive the motor..
one would be PWM and the other would be direction...   This makes it safe and you can always use that other bit to do something else ... like turn on the laser cannon !

Good Luck !

Concerning the BJT driver configuration it looks like it needs to be changed. I think the TC4424 IC should be used to drive the power MOSFETs.  If I implement only two digital output pins as you suggested and add the driver IC the schematic looks like this:

I of course will add four schottky flyback diodes and a capacitor to the motor terminals, just keeping the circuit less cluttered until its fully designed.  The apostrophe before CW just means that clockwise is acitve when low, and CCW is active when high.

With this configuration I will need to pull the PWM line low when switching rotation between clockwise and counter clockwise to prevent shoot through.

I'm not sure if I need R3 and will have to determine values for R4 and R5.  I'm also unsure if shorting the output of a MOSFET driver is appropriate, I may need a series resistor(s) for the drivers.  Well it will be fun to experiment once I've got the parts in hand.  Time to start looking for a smallish, 10A+ and cheap DPDT relay.

If I have problems with this configuration I will probably go back to having seperate PWM lines so I'm not intentionally shorting the output of the MOSFET driver which is probably a very bad power drainer.  I would rather add an output pin on my ATmega328 than add an extra IC such as an AND gate for resolving.  Well I'm still eager for suggestions and comments if ya have em.

 

What are you using in the diagram above for the a/b switchs? Noted as c1 c2 c3.

It's the DPDT switch in the relay itself.

What relays do you guys use? I need to run 4 in an rc airplane and the relays that I have been using require about 3v each...