Let's Make Robots!

Transistor terminal naming conventions.

I am trying to figure out how transistors work and have seen the three terminals on a bipolar transistor labelled base, collector, and emitter.

I am having a hard time understanding the purpose of the three, and would like it if someone could explain why they are named this way. I.e. what is basey about the base and what is the collector collecting?

At the moment they just look like three randomly chosen words.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Thanks everyone. This is great. I feel like I understand what the transistors are up too. I have also taken out a couple of library books and am reading up some more.

I originally bought the L293D motor driver because I was building the “start” robot. I deviated from the instructions by getting a Netduino because I’m familiar with C#. When I tried to use the L293D I just had no comprehension of what it was, so started look into transistors which I could vaguely understand. I am now feeling more confident and I’m looking over the L293D datasheet again.

Could anyone post a similar circuit diagram to those below, except making use of the L293D?  Ideally, I want to be able to control two motors independently and turn them both forwards and backwards. 

I have searched around, but all the tutorials I can find are much too complicated and build a whole robot. I’m still struggling to just turn the motor on. I don’t understand if a second power supply is really necessary or if I’m making life hard for myself.

Thanks for your help and apologies if I am asking too much.

     I will add a schematic for using the L293D, but first, you asked if you really needed an extra battery.

     I took a look at the description of your motors and I see that they seem to operate across a broad range. While they mention the expected performance at 3 volts and 6 volts, I saw one listing that said the motor will actually work up to 12 volts, but since they are saying to use it at 3 or 6 volts, I suspect that 12 volts is a bit much for it. It probably overheats and may wear out much quicker, beating itself to death...

     I would suggest waiting and trying the motors on the main battery to see how they perform.  It may depend a lot on how heavy your finished robot is and how well the motors move it without the extra battery. Just leave yourself the option of adding the extra battery if it seems to need it. 

Ok, here is a sample circuit for using the L293D chips.  (Click drawing to see it a bit bigger.)

You have two leads for each motor, giving you on/off and forward/reverse for each of them. The L293D also comes in a 20-pin package. The principle is the same whichever one you have.

Thanks, I'll give this a try now and let me know how I get on.

I take it this meams that I don't need any resistors or that diode over the motor.  The chip takes care of all those concerns for me?

Yep it works. My motor is going fowards and backwards at a nice steady slow pace.

I gave it a smell test and it seams ok.

Thanks again everyone!  Up next I have the infrared eyes.  Hopefully I will be able to figure that one out on my own.  I was supprised how hard the motor was to understand.  I had my servo working within an hour, but this has taken me days.   I thought because it was just a simple motor turning on and off that it would be easy, but it turns out the servo it easier because it takes care of itself.

Oh and it works ok just using the 5V from the Netduino and no extra battery.  The wheel only turns slowly but that is probably for the best right now.

Cool. Glad to hear it.


and your question about the diode across the batteries, —Yes, the L293D already has internal protection diodes, so nothing else is needed.


The FET version below should work, but here is another choice, using the circuit you have already but with a couple added parts.

Your BC547B will not carry enough current, but it could easily drive a second transistor such as a 2N2222 which handles up to an ampere of current. (or even 2 of them in paralell if your motor did exceed one amp when stalled). What I have shown here is the well-known darlington configuration.  You are also correct that you should put a switching diode across the motor. Notice that it must be reverse so it does not normally conduct. This diode only conducts if reverse voltage comes from the collapsing field of the motor windings.

You asked when to use a reverse diode and the general answer is any time you are driving an inductive load (anything with a coil). Oh, and the diode could also be a schottky diode. 1N5817s and the like are fairly common.

Mail order, 2N2222s are $4.00 US (about £2 50p) per hundred and 1N5817s cost me $6.00 US (under £4) per hundred         (plus shipping)

[ Oops, above I said the 2N2222(A) is good for 1 amp. I should note that this depends on which version (which manufacturer made it). Some are as low as half an amp, so check the spec sheet for the actual ones you have.]

For motors and control from an MC, I would suggest using the RFP30N06LE MOSFET which is basically the same as a Transistor but can handle much higher currents than the transistor you have.

It will also connect basically the same way, however the pins are called Gate (base), Source (Emitter), and Drain (Collector) (if I have that right).

Here is a drawing

MOSFET as a switch


R28 is the suggested current limiting resistor, and really only needed if you don't know what will be controlling the MOSFET (transistor) - but good practice.

R29 is a pull down that keeps the MOSFET switched OFF when no power is applied to the gate from the Netduino

R30 is a limiting resistor for the LED which lights when the MOSFET is turned ON (Even if the motor is not connected or burned out)

D7 (although not a scotty) is a fly back diode that will shunt reverse voltages from the magnetic field collaps when the motor is turned off and protects the MOSFET. Note that this should always be used with an inductor load, but not needed for a resistive load. Regardless I always include it.

In this case, the MOSFET is being used to provide ground to the motor+LED circuit thus turning the motor ON or OFF.



Ok, I'm 100% MOSFET noob, never tried anything with them yet. I have a few questions to how they work.

The current flowing between drain and source is controlled by the voltage between gate and source right?

There does not flow any (significant?) current in the gate right?

The drain-source current is a somewhat linear function of the gate-source voltage, for the RFP30N06LE MOSFET it seems to start conducting at approx 2v and will be at full tilt at 6v (@25C), or did I misread the datasheet?

Still using the RFP30N06LE, in a application where motor is drawing max 10A, it should be completely perfect to wire the gate directly to a TTL output?

All Correct

However for that heavy of a load I would definatly recommend a small resistor between the TTL and the gate. It is mainly just needed to control how fast the MOSFET turns on and off in order to reduce interference, ringing, and voltage spikes. If you are just turning the motor on and off slowly it's less of a concern, but If you are switching the MOSFET on and off vary rapidly it becomes more important. It really depends on your application. It is also possible that the inrush of current when the transistor turns on can damage the MC, but I haven't seen this happen... yet ;) (knocks on wood).

Here is some additional information and here