Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Advice on H-bridge construction

Status
Not open for further replies.

Rusttree

Member
I'm designing an H-bridge to power a linear actuator to extend and retract. The actuator will be driven by a 12V supply, but board logic will probably be 3.3V. This will be a very slow mechanism and it won't be driven back and forth quickly (read: shoot-through in the H-bridge is not an issue).

For simplicity, I'd like to use two low-side N-channel FETs and two high-side P-channel FETs. But, of course, I can't drive the P-Channel directly from the 3.3V logic on a 12V system. So, I'd put pull-up resistors on the gates of the P-Channels to keep them off. The DIO pins connected to the gate pins would be kept in high-impedance state. When I wanted to turn on one of the P-Channel FETs, I'd just change the DIO pin to an output at 0V. And back again to high-impedance to turn the FET off. The N-channel FETs would have logic level gates and be driven directly from a DIO pin.

Any reason this wouldn't be a robust design? In the past, I've made H-bridges using ICs made for the purpose, but those were for systems that switched back and forth quickly and had high chance of shoot-through. This actuator will be slowly extended, turned off for a while, and then slowly retracted later.

Thanks!
 
Thanks for the incredibly fast response, Nigel.

I don't think I'm seeing the whole circuit you're alluding to. I can definitely see how a DPDT can be used to drive a motor forward and reverse. Is the transistor you mentioned to turn on and off the relay's coil? Or is it to turn on and off the current flow into the motor?
 
The pull up to +12 will probably still blow the micro even though it is in the high impedace state
 
I would have thought the protection diodes on the uC pin would force the voltage down as necessary... assuming the pull-up is large enough to keep the current well below the diode's capability.
 
Hi,

uC protection diodes have limited current capability so you'd have to watch out for that for one thing as you noted, but the power supply that powers the uC also has to have the ability to SINK that current, so that's another thing to think about. Not sure if i would like to depend on the protection diodes but it may work anyway.

The H bridge really has to be driven with a signal that does not overlap for an upper and lower or you get a huge current. It doesnt matter if you switch slow or fast. But if your load can get by with a resistor in series with the power supply, then a trick is to insert a small resistor in series with the top of the bridge. The resistor limits the current to some max just in case an upper and lower turn on at the same time for any reason.
If you have a 12v supply and you use a 12 ohm resistor then the max possible current is of course 1 amp. That may be enough to protect the transistors as long as they are rated above that. You load has to be able to tolerate a 12 ohm resistor in series with it too though, and if it cant then you have to use a smaller resistor and higher rated transistors. If you dont want to do this then you have to use more careful timing of the uppers and lowers so that one side of the bridge can not turn on and 'short' the power supply.
Another method is to use an inductor but that gets more complicated.
 
Unless the pins of the microcontroller are truly open collector, they will still turn your pmos devices on. Even though you make the pins hi-z, the protection diodes on the pins will still clamp the voltage to a diode drop above Vcc, or about 3.9V. So you will have about 8V across the source-gate and they will be fully on.

You will need to use a couple of low side NPN transistors to drive the pmos gates.
 
Ah, fatal flaw. You're right, thanks Chris. Once I drew out the whole circuit (instead of just thinking it through in my head) that became very obvious.

For simplicity, then, I think I'll go with Nigel's suggestion of the DPDT relay.
 
Hello again,


Oh you are using P Mosfets for the high side? Yeah then you need to be able to generate a voltage that goes all the way up to 12v (power supply voltage). However, you dont always have to bring the voltage down to exactly zero to turn them on it depends on the required gate voltage drive.

For example, if the P Mosfet in question operates on 5 volts (actually more like -5 volts relative to the source) then all you need is a 5 volt change, not a 12 volt change. That means the 0v to 5v signal out of the uC can be coupled to the gate via either a resistor divider or a zener. Probably better is a zener so lets look at that first.

If the supply is 12v, 12-5=7 so you need (ideally) a 7v zener. When the uC pin goes high assuming it goes to +5v, the voltage at the other end of the zener (with a pullup resistor) will be about 12v, which means 0v to the P Mosfet gate, turning it off. When the uC output pin goes low, that means the other end of the zener will be at about 7 volts, or as the mosfet sees it, -5v thereby turning it on.

So you'd need a zener of the right voltage plus a pullup resistor. The pullup resistor value can not be too low or it will overload the uC output pin, so adjust accordingly.

Another method is to bias the uC at +12v instead of 0v. That means the power supply pin goes to +12v and the ground pin goes to -5v down from the +12v source (a -5v regulator means it will be at +7v). You probably cant do this though if you have to also drive an N Mosfet, which works better with ground to 0v of the power supply unless you want to use two uC chips and sync them up.

Small transistor drivers are not complicated so dont be intimidated if you want to add one instead of a zener.
 
The zener idea will only work if you have well defined, regulated supply rails. A couple volts of variation and you'll have problems. Even the ripple from a transformer-rectifier could be trouble.
 
The zener idea will only work if you have well defined, regulated supply rails. A couple volts of variation and you'll have problems. Even the ripple from a transformer-rectifier could be trouble.

Hi,

Yup that's right. I would say the allowable variation is about 0.5v but no higher due to the protection diodes. But most systems have regulated supply voltages these days so it is an option after all.

But i also expect other questions to come up too :)
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top