H-Bridge Driving me MAD, help needed

Status
Not open for further replies.

burners

New Member
OK so let me draw out the plan and circuit so you know where I am.
I was messing with my cats toy (a laser with a motor for them to chase). I took it apart because it sucked and the cats would get bored very quickly with it.

OK so the goal, use an Ardweeny to operate this cats toy which has a small motor normally ran on 6v (I plan to run on 12 Volt DC). I already tested the motor and it works fine with 12 volt (I want it to be faster for rapid movement).

OK So the goal was to use the Ardweeny which puts out 5 Volt on its I/O's if you didn't already know that.

I built an H-Bridge using this diagram
Bipolar Transistor HBridge Motor Driver - Robot Room
I changed the NPN transistors for IRF520 MOSFET's
https://www.futurlec.com/Transistors/IRF520.shtml
I changed the PNP transistors for IRF9Z34N MOSFET's
https://www.futurlec.com/Transistors/IRF9Z34N.shtml

I Programmed my code to Run forward for a few seconds then reverse for a few seconds. It was something like

Code:
# NOT real code
r1 = digital pin 1
r2 = digital pin 2;
r3 = digital pin 3;
r4 = digital pin 4;

forward();
delay(2000);
reverse();
delay(2000);

forward()
r1 LOW
r2 LOW
r3 HIGH
r4 HIGH

reverse()
r1 HIGH
r2 HIGH
r3 LOW
r4 LOW

I have 2 separate voltage sources, 1 from the Ardweeny and 2 from the Wall Wart DC REGULATED 12 Volt power supply.
Both Power supplied are connected by GROUND, The Wall Wart powers the motor, The Ardweeny +5volt powers the base of the transistors.

Now when I hooked up a battery pack which is 3Volt everything worked fine. When I changed the 3Volt battery pack for my 12volt Wall Wart I get instant overheating transistors and they go up in smoke.

I have tried several transistors, MOSFET's and varying voltages and once I try to use the 12Volt supply its game over.

Any help is greatly appreciated, I feel like I have a good understanding of NPN transistors but PNP transistors make me insane.
 
hi,
A quick look at the circuit links shows then when powered from 3V you are able to control the upper transistors from a 3v/5v drive signal, but when powering from 12V you cannot switch OFF the upper pair
 
hi,
A quick look at the circuit links shows then when powered from 3V you are able to control the upper transistors from a 3v/5v drive signal, but when powering from 12V you cannot switch OFF the upper pair

Why would that be? Do I need to use a higher gate voltage? I think 5 Volt is the rated max / saturation voltage on both transistors.
 
Why would that be? Do I need to use a higher gate voltage? I think 5 Volt is the rated max / saturation voltage on both transistors.

hi,
Say the top fet/transistors had their source/emitters connected to +12V, for a transistor to turn OFF the Base would have to go to +12V, I guess your driving signal goes to +5v max, so there is still +7V on the gates/bases, so they are still ON

So when the bottom pair are switched ON there is a short thru one of the top pair to 0V via one of the bottom pair.

If you change direction the other pair are shorted thru.

You need 5V to 12V levels shifters
 
Last edited:
OK so your saying when I want to turn OFF one of the top PNP transistors I must apply +12 volt ? but I can still use -5 Volt to turn it on just like how I use +5 volt on the bottom?

That does make sense because like I said the Ground -5 Volt and Ground -12 Volt are both connected so when I want to turn on one of the bottom NPN I can apply +5 volt and when I want to turn it off it technically gets -12 Volt because the ground from the 12 Volt is connected to the Ground from the 5 Volt.
 
Last edited:

hi,
Have a look at this option.

It uses a 74LS07 non inverting o/c IC for level shifting
 

Attachments

  • BipolarHBridgeSchematic.gif
    13.9 KB · Views: 857
hi,
Yes, sorry just a quick sketch.

So your saying I should use the resistors to pull up to +12v when not in use and then use the 74LS07 for -12v when I want to turn on?
Couldn't I just use a couple cheap NPN transistors in place of the 74LS07 ?
 
So your saying I should use the resistors to pull up to +12v when not in use and then use the 74LS07 for -12v when I want to turn on?
Couldn't I just use a couple cheap NPN transistors in place of the 74LS07 ?

hi,
A transistor would invert the signal you dont want that.

Its a +12V OFF signal and a ~0V signal ON at the upper transistor/gate, not -12V

Are you going to use transistors or FET in the bridge
 
Your IRF520 Mosfets need a gate voltage of +10V to properly turn on but you are feeding only +5V so some will not turn on well.
You should use logic-level mosfets that turn on well when the gate is +5V. Use IRL520.
 
The gate-to-source voltage on a Mosfet of 0V turns it off. So if the source of a P-channel Mosfet is +12V then the gate must also be +12V to turn it off. Usually a resistor from gate to source turns it off when the resistor is not driven from a level shifting transistor.

Your circuit has +12V, +5V and 0V. It does not have -12V nor -5V.
 
Your IRF520 Mosfets need a gate voltage of +10V to properly turn on but you are feeding only +5V so some will not turn on well.
You should use logic-level mosfets that turn on well when the gate is +5V. Use IRL520.

VGS(th) Gate Threshold Voltage VDS = VGS ID = 250 µA MIN 2 AVG 2.9 MAX 4V

I thought that meant 4V MAX for the gate, where are you getting 10 Volt from?
 

Sorry I am used to saying -12V in reference to the negative line coming from the wall wart and -5V in reference to the ground coming from the Arduino
 
VGS(th) Gate Threshold Voltage VDS = VGS ID = 250 µA MIN 2 AVG 2.9 MAX 4V

I thought that meant 4V MAX for the gate, where are you getting 10 Volt from?
The on-resistance is spec'd and is low when the gate-source voltage is 10V. So it needs 10V to properly turn on.
The Gate Threshold Voltage is 2V to 4V when the Mosfet is almost turned off conducting a current of only 250uA (0.25mA or 0.00025A).
If your Mosfet conducts only 250uA when its gate-source voltage is 4V then maybe it will conduct only 10mA when its gate-source voltage is 5V. But it will conduct many amps when its gate-source voltage is 10V.
 
Your IRF520 Mosfets need a gate voltage of +10V to properly turn on but you are feeding only +5V so some will not turn on well.
You should use logic-level mosfets that turn on well when the gate is +5V. Use IRL520.

Could I use a pair of TIP106 PNP transistors? I already have those on hand
Its says the Emitter-Base is 5 Volt, not sure if that is the value I am looking for. These damn transistors are so confusing, all the specs sheets lists the values one way or another or just leave a bunch out. They sure don't make it easy for a beginner.
 
Last edited:
I found my last order of transistors, here is what I have on hand

IRF3710 MOSFET N
IRF540 MOSFET N
IRF530 MOSFET N
IRF520 MOSFET N
IRF9Z34N MOSFET P
BUZ72 Mosfet
TIP100 NPN
TIP106 PNP
TIP101 NPN
TIP110 NPN
TIP115 PNP
TIP142 NPN
TIP147 PNP


What do you think are the best for this circuit?
 
Last edited:
The TIP106 is a PNP darlington power transistor with built-in resistors that will turn it off when your level-shifting transistor turns off.

The 5V max allowed emitter-base voltage rating is when the emitter-base voltage is backwards in your circuit which will never happen.

You (not me) can look at the datasheets for all your other transistors to see if their spec's are suitable in your circuit.
 
hi burners,
Decide whether you are going to use transistors or FET's in the bridge and I will post a level shifting circuit, otherwise some people are just going to waltz you around until you go dizzy and fall over.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…