A little h-bridge help?

I'm building an h-bridge motor controller using mosfets, the schematic to which is at the link below. It should be able to spin my motor forward or backward depending on which of the 3904 transistors is high. When I hook up *only* my multimeter to the outputs (where the motor would go), it appears to be working fine - I get nearly the full voltage from my power supply by activating one transistor, and the same thing with reversed polarity from the other transistor.

If I hook up a small test motor, however, everything goes pear-shaped. Only one half of the circuit will work - the motor will turn in "reverse" but not in "forward." I get a correct voltage, with a little drop because it's under load, when the motor is spinning. With the other transistor activated (and the motor mysteriously not moving) I get zero voltage. I'm using a 9V supply to run the motor, and a 5V supply to switch the two transistors. The two are commonly grounded.

Something unfortunate is happening when there's a real load on my circuit, but what? I looked over everything and to the best of my knowledge (admittedly not that great) I have it built correctly. I also pulled and tested my mosfets, and they appear to be OK. I tried swapping out the 3904s as well.

Has anyone had and solved this problem already? Any thoughts on what I might be doing wrong? Your help would be greatly appreciated...

I'm using this circuit. The only change I've made is to leave out the LED, which I didn't have to hand.

formatting link

Reply to
Eriswerks
Loading thread data ...

Eriswerks wrote: (snip)

The circuit is simple but a poor design. The gate drive for the bottom two fets depends on the top two saturating well under load, and that may be iffy with your motor load. We could spend a long thread discussing all the things wrong about this circuit, but the ultimate goal should be to design a better one.

Reply to
John Popelish

This is really a marginal circuit. Scanning the link, I didn't see a specification for the MOSFETs. You're depending on the first MOSFET really saturating to turn on the one kitty-corner to it. This is a particular concern because you're going with a 9V supply instead of a

12V supply. Many power MOSFETs won't saturate with a 9V gate voltage.

Assuming you've triple-checked your wiring:

  • What's your motor current?
  • You mentioned you didn't install the tri-color LED. Apparently you
*do* need it (test mode). Try putting in two LEDs inverse parallel, and see if your circuit will light up one in one direction, and the other in the other direction without the motor being connected. That's what the LEDs are there for. Also, try putting a few 100 ohm 1 watt resistors in parallel with the test LEDs, like this (view in fixed font or M$ Notepad):

| | ~ | ~ | .--->|---. | ___ | | | o---o---|___|---o o-----o----o | | 1K | | | | | '---|

Reply to
Chris

Hi, Mr. Popelish. As usual, you've gotten to the point, while I kind of cast "long thread" around it. ;-)

I'd definitely second the motion. The OP should either go for some increased complexity and make something that's designed to work well, or just go with an H-bridge driver IC if he wants it simple. Many have MOSFET outputs with low Rds(on), and are really simple to use.

Cheers Chris

It is rather for us the living, we here be dedicated to the great task remaining before us--that from these honored dead we take increased devotion to that cause for which they here gave the last full measure of devotion--that we here highly resolve that these dead shall not have died in vain, that this nation shall have a new birth of freedom, and that government of the people, by the people, for the people shall not perish from the earth." - A. Lincoln

Reply to
Chris

While this is not exactly a very good solution either, at least if you are switching the mosfets fast (using only small gate series resistor

Reply to
Jan Wagner

Oh, missed an important word: complementary. Meant complementary emitter followers.

- Jan

Reply to
Jan Wagner

It looks as if the 2N3904's are only being used as inverters. I would take the gate of Q6 to "A" and the gate of Q4 to "B" this would provide the proper MOSFET drive without relying on saturation of the MOSFETs themselves. Make sure your driver circuit goes to ground for logic 0 and Vcc for logic

  1. Remove the 1k resistors (R5 and R7) on the gates to get full drive voltage to the gates. Also most MOSFET have a built-in clamping diode so the
1N4001s are redundant.

These changes should reduce the component count while providing better results.

I'm thinking fast and loose here so someone please step in if you see a problem with my reasoning.

It would be far better to use a design based solely on N-Channel MOSFETs due to their superior conductivity specs but this would require a high-side driver.

Dorian

Reply to
Dorian McIntire

It looks as if the 2N3904's are only being used as inverters. I would take the gate of Q6 to "A" and the gate of Q4 to "B" this would provide the proper MOSFET drive without relying on saturation of the MOSFETs themselves. Make sure your driver circuit goes to ground for logic 0 and Vcc for logic

  1. Remove the 1k resistors (R5 and R7) on the gates to get full drive voltage to the gates. Also most MOSFET have a built-in clamping diode so the
1N4001s are redundant.

These changes should reduce the component count while providing better results.

I'm thinking fast and loose here so someone please step in if you see a problem with my reasoning.

It would be far better to use a design based solely on N-Channel MOSFETs due to their superior conductivity specs but this would require a high-side driver.

Dorian

Reply to
Dorian McIntire

This circuit is utter garbage. Have a look on a chip makers website for something that will work. eg. IR, ST, Texas, Microchip and loads of others.

Reply to
cbarn24050

I think the 2n3904s are also being used to step the voltage up from logic levels to the motor drive level.

if the input goes 1V could the supply could be shorted?

what does that entail? a 555 driving a diode pump and two pnp trasisrors?

Bye. Jasen

Reply to
Jasen Betts

Your right about the level-shifting function of the transistors. After I replied I did notice in the text that the circuits expects A or B to be 0v or +5v which is not enough voltage to fully turn on a MOSFET. To prevent any confusion I mentioned that to drive the circuit properly with the proposed modifications the drive voltages would have to be 0 or Vcc.

I don't see a problem if the input goes to 1v. Could you be more specific?

You could build a high-side driver with a 555 timer-based circuit. You can also purchase an IC to do this from a number of manufacturers including International Rectifier, Maxim and others. See the Google link below for more information.

formatting link

The point of the high-side driver is to get the gate voltage on the upper MOSFETs high enough to turn the MOSFETs fully on when the source of the FET is near VCC. This requires a voltage over and above VCC.

Take care

Dorian

Reply to
Dorian

neither can I now.

Bye. Jasen

Reply to
Jasen Betts

Thanks for all the help. I've played around with various different versions of this circuit and never did get it to work properly. What's strange is that if you search for h-bridge circuits on google, almost everything out there is some version of this guy's circuit. Maybe everyone else is just using different mosfets than I am, or maybe they just put it online without trying to build it.

I have some mosfet driver chips from Microchip on their way right now, which hopefully will make life easier.

In building simpler test circuits to figure out what exactly was wrong with this, I came across a couple of quirks. One is that the mosfets like to stay on once I've given them a gate voltage, even once I take that voltage away. I can get rid of this gate capacitance by running a resistor from the gate to ground, but then there's an undesirable voltage drop. What's the preferred method of dealing with gate capacitance?

The other odd thing is that my n-channel mosfets are giving me a huge voltage drop even when I test them singly, not in a larger circuit. (Not so for the p-channels, they work as expected.) It'll drop from a

12v supply to a 1.8v output, and that's with 12v at the gate. Do I need to use a gate voltage that's higher than Vcc in all cases for n-channel mosfets? Or is that an issue that only arises when you try to incorporate them in an h-bridge?

Eriswerks wrote:

Reply to
Eriswerks

By the way, the reason I am not just dropping in an IC h-bridge is that I expect some pretty serious current to flow through this. Continuous current is going to be up to 25 amps, with peaks higher than that if I screw up and stall the motors somehow. I've got some high-rated mosfets and large heatsinks, and will probably throw in a cooling fan for good measure. My n-channel mosfets are IRF1010N, and my p-channels are STP80PF55.

Eriswerks wrote:

Reply to
Eriswerks

Probably the latter...

Not a quirk but natural, since the conductivity of the drain source channel is controlled by the gate to source voltage, i.e. the voltage across the gate capacitance.

See pretty metal gate + oxide + semiconductor picture at

formatting link

Bipolars eat base current to stay conducting (imagine a small resistance between base and emitter), whereas mosfets just need to have the gate charged up once and that's it (small capacitance between gate and source).

The gate capacitance will remain charged if you entirely disconnect the gate voltage. If the n-channel mosfet gate remains positively charged => mosfet remains conducting, until you discharge the gate.

Dealing? Errm. Switching mosfets is pretty much identical to driving (charge, discharge) a capacitor.

A bad choice to handle the discharging (turn off) part is to use the resistor you mention. Actually, your reference schematic

formatting link
has such resistors, namely R3, R4, R6, R8, and relies on these for the mosfet to switch off. Not good. Also because of the voltage drop, as you noticed.

Usually you "get rid of" the gate charge with a driver setup that can actively both charge and discharge the gate. Like, complementary emitter follower, TTL logic buffer, mosfet driver chip.

(Btw, D1..D4 are unnecessary since MOSFETs already contain internal parasitic diodes that are at least as fast as 1N4001's, often even significantly faster).

Connected how, and output being what pin? If as source follower: the voltage at the source is typically at least by V_threshold (see mosfet datasheet, Vth, may be e.g. around 4V) lower than the voltage at the gate.

Depends on the circuit. Not necessarily Vcc, but the gate voltage Vg has to be at least 8V higher than the voltage Vs at the source, so you get gate->source voltage Vgs of at least 8V.

Btw if the source is not connected to ground, don't make the mistake of measuring the gate->ground voltage instead of gate->source. :)

In the upper n-channel mosfets of a h-bridge, certainly an issue. There you want the h-bridge output to be alternately 0V and Vcc, so to get the Vcc output, the upper mosfet's source will have to give out same as on its drain i.e. Vcc. So, the source is at Vcc, hence the gate to ground voltage must be at least Vcc+8V for that mosfet to have gate-to-source of 8V and be fully conducting.

- Jan

Reply to
Jan Wagner

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.