Transistor Motor Driver

Hello everyone,

I was working on a robotor project recently using about 12 DC motors (6-12V) controlled by an Arduino. However, i decided to try to build a motor driver using bipolar transistors. The driver should be able to power each of the 12 motors in both directions with 2 and not more batteries at all. So I came to the following circuit:


The circuit diagram seemed to fulfill the requirements, but it seems very inconsistent and not reliable. So sometimes it works, sometimes it works partially and most of the time it doesnt work at all.

So my question for you is, if you notice any mistakes in my circuit or if you have some advices to make it more consistent.


Oh, I don’t know, it looks askew to me.

That aside, if you are going to use bipolar transistors put a resistor in line with the base or else the signal driving them will be driven down to the diode voltage drop of the base (~.7V) and that will do the driving circuit no good. 

Pick one of these:

Questionable Circuit

I’m not a transistor expert but the circuit looks very questionable to me. Transistors are somewhat analogous to mechanical switches but they do have definite requirements. At a minimum, T1 & T3 are floating at  B2 volts and the return paths are very suspicious. I would suggest you get an analog simulator and evaluate the circuit under ideal conditions.

I also see no benefit in this circuit over a tradition well documented h-bridge. If you examine those you will see both PNP & NPN transistors. You will also note that bi-polar transistors are not recommended for motor control.

Motors will generate back EMF when they switch off due to the inductance in the winding’s. Usually we provide diodes to route this current back to the power source instead of thru the transistor.

Your requirement for only 2 batteries makes no sense to me.