Controlling high power transistors with arduino

Hello,
Simple newb question:

I have a 6V motor which needs 2.25 - 3A to perform its function (lifting and lowering a weight).
I want to control it with a simple standard BJT H Bridge, like the one in this picture:

https://courses.cit.cornell.edu/ee476/FinalProjects/s2002/brader/nerdcar/hbridgeturn.jpg

My question:
From what I understand, the amount of current that can pass through a BJT is linearly related to the base current, i.e. the current I want my Arduino to supply. But I need these BJTs to allow for up to 3A, and an arduino pin can only provide a maximum of 50 mA... So do I need to find BJTs that have a gain of at least 60? If I ignore the gain of the BJTs I get is there a chance I'll damage the arduino pins by sourcing more than 50 mA?

I had previously bought a l293D and was using it for this task. It seemed to work fine! But then I checked the datasheet and it says the max output current is only 600 mA... Pulled out my ammeter and found out that actually 1A was being output. Why did it say 600 mA is the max if it seemed to be doing fine with 1 A? I stopped using it because I'm afraid it'll blow up or something.

Just looking for the simplest way to control this motor with my arduino

Thanks

Why not two bjt in cascade setup?

For example, the first one draws 20ma and sources 200ma, the second draws 200ma to base and sources 2A.

20ma is usually consider the comfortable upper limit. Most modern BJTs have a beta of at least 100. But one in the 3-5 amp range is a little less common. A darlington pair or better yet a MOSFET h-bridge would be more applicable. If the l293 is an acceptable temperature when running, the heatsink must be sufficient. If it ain't broke don't fix it. And it's a relatively inexpensive chip. But if it runs hot to the touch, best to find a substitute.

The schematic with 75174 only works with Vdd 5 volt.
The arduino are not overloaded, input resistans for 4011 are 10^12 ohm, the 75174 also have high input resistans.

Use your L293 driving your BJT.

Pelle

And you must remember the current gain of a BJT is in the linear region, not the
switching region - significantly more base current is needed to fully saturate a BJT
(very important in high power applications where you want the IR losses across the
device to be minimized). Older power transistors required 5 to 10% of the load
current in the base to achieve this, ie a "gain" of 10 to 20.

Modern super-beta devices fare a lot better, where base current can be perhaps 2% of
load current for good saturation.

For high power MOSFETs dominate, just easier to interface to, easy to keep conduction
losses under control.

Back to the 5V H-bridge - darlington's are v. poor here as you just don't have enough
volts to cope with the large Vsat values of darlingtons - you'd throw away 30% of
the supply voltage immediately. The circuit given is over complex really, something like
this will do the job, just 6 transistors:

Sorry the configuration is non-standard with the cross-connection, but it uses
an NPN to drive one high and one low switch on each side of the bridge - you
have to avoid driving both inputs at the same time, that would be shoot-through
and destroy the transistors! This circuit can run from 12V or 24V for instance, since the
input transistors actually level-shift (though resistor values need tuning)

@MarkT To me your circuit seems more complex than mine! I know mine may be overcomplicated but the fact is that I already have the logic gates all set up, so besides complexity, is there an important reason why I should use the extra 2 transistors and all those resistors (in your schematic) instead of the logic gate configuration I already have implemented? From your post it sounds like my current config should work, if I can get the right BJTs ? Please correct me if I've misunderstood.

Hm. The 75174n has current limiting, so I suppose you can use your circuit.

As MarkT pointed out, the real advantage to his is that, with resistor changes, his can use a higher supply voltage for the motor. So as long as you are using 5V to drive the motor, your circuit should work.

As to current - the 75174n is current limited to 60mA source and sink. 3A/20 = 150mA, so you had better be using very high gain modern driver transistors.

Note that the transistors in MarkT's circuit, PBSS4032SPN, are rated as a switch at a 1:10 base to collector current ratio. So it would require 300mA drive to get 3A saturation.

Darlington pair configuration is, IMHO, way less than ideal as the saturation voltage is on the order of 1V because the first transistor is not driven into saturation.

If you are not trying to do fast PWM, you could use P and N channel logic level MOSFETs instead of bipolar transistors. Logic Level means that they are rated to be in saturation at about 4.5V. That is NOT the same as gate threshold voltage.

etaba:
I need these BJTs to allow for up to 3A, and an arduino pin can only provide a maximum of 50 mA... So do I need to find BJTs that have a gain of at least 60?

Yes, but finding a BJT that can handle 3A won't be easy.

MOSFETs are a much better choice for this.

The general consensus seems to be that a MOSFET H bridge is more appropriate here. I wish to implement a simple one like in the image below:

And I want to use TO-220 Mosfets (N on the bottom, P on the top), like the N channel one whose datasheet is below:
http://www.st.com/web/en/resource/technical/document/datasheet/CD00002501.pdf

But when I google TO-220 mosfets I seem to get a whole variety of different ones... Will any Nchannel and Pchannel T)-220 work?

Not that circuit, that is all N channel.

You want Logic Level. Don't start your search with TO-220. Start with "logic level MOSFET". Later, you can filter for Through Hole.

It is simple to find TO-220 N-channel Logic Level (aka "digital") MOSFETs. Not so easy to find P-channel.

Sparkfun has one! TO-220 package, 50mOhms at 4.5V Vgs, P-channel 20V 24A. Fairchild Semiconductor NDP6020P, so you can get it from other sources, too.

https://www.fairchildsemi.com/pf/ND/NDP6020P.html

fungus:
Yes, but finding a BJT that can handle 3A won't be easy.

Digikey lists 1,997 BJT transistors rated for 3A and above. ZTX1049A is a nice BJT that will saturate at 50mA Ib -> 4A Ic.

That is a nice BJT! A bit tiny, but as long as you switch it quickly and don't underdrive it.

Looking at the ratings on the datasheet, I think I'd drive it at something more like 150mA for 3A motor drive. Keep the saturation voltage low, and therefore the power dissipation.

Polymorph thanks the "logic level" keyword is a lifesaver. Also I know that pic I showed had all N types, not sure why, mine will definitely have P types on the top
Tylernt and polymorph, as for those BJTs, again I don't think the arduino pins should be outputting more than like 20-40 mA so I don't think I can drive the BJTs you describe.
I'm going to try and assemble the MOSFET H Bridge now, I'll post the results. Thanks to all!

Well, in MarkT's circuit, the output transistors need that current, but there is another transistor that is driving them that should only need about 1/20th to 1/10th of that.

etaba:
@MarkT To me your circuit seems more complex than mine! I know mine may be overcomplicated but the fact is that I already have the logic gates all set up, so besides complexity, is there an important reason why I should use the extra 2 transistors and all those resistors (in your schematic) instead of the logic gate configuration I already have implemented? From your post it sounds like my current config should work, if I can get the right BJTs ? Please correct me if I've misunderstood.

Because the motor voltage can be higher or lower than the logic voltage without
burning out the logic chips. Motor supplies usually have drop-outs (during large
current pulses) and spikes (due to inductive nature of the load) incompatible with
logic supply. The bases of two NPN transistors can be driven from any voltage
from about 1V up with suitable choice of resistor and the driver circuit cannot push
more than one Vbe drop back into the controller.

polymorph:
Well, in MarkT's circuit, the output transistors need that current, but there is another transistor that is driving them that should only need about 1/20th to 1/10th of that.

Actually the drivers can operate in the linear region, its only the power devices
that need to saturate properly, so the input can be 1/100 of the output devices
base current.

Anyway I notice the initial problem was for 2 to 3A running current, so large
stall currents may be involved, a high-current MOSFET H-bridge would be the most robust
approach.