Somewhere on Earth
Offline
Newbie
Karma: 0
Posts: 17
|
 |
« on: May 17, 2011, 05:48:52 am » |
Hello all, I understand how a NPN transistor works and what it does, but I can't figure out how to use a PNP transistor and what it does. At first, sorta due to only having really basic electronics at school, I thought it did the opposite of a NPN and when the base was low the output would be high and vice versa. But after some research this doesn't seem to be the case. I tried using the Java circuit sim/visualiser/thingymajigy to help explain it but I'm still confused. Could someone explain what it does please?
Thanks in advance.
edit: I want to make a really really simple intervalometer for my camera, but do not have any NPN transistors handy.
|
|
|
|
« Last Edit: May 17, 2011, 06:11:38 am by mcookieman »
|
Logged
|
|
|
|
|
Manchester (England England)
Offline
Brattain Member
Karma: 277
Posts: 25506
Solder is electric glue
|
 |
« Reply #1 on: May 17, 2011, 06:36:51 am » |
You just use a PNP like an NPN transistor but the power rails are swapped over. It is an upside down transistor. I thought it did the opposite of a NPN and when the base was low the output would be high and vice versa Yes it does but remember that the emitter instead of going to ground has to go to plus. And the collector instead of going through the load to plus goes through the load to ground.
|
|
|
|
|
Logged
|
|
|
|
|
0
Offline
Tesla Member
Karma: 71
Posts: 6624
Arduino rocks
|
 |
« Reply #2 on: May 17, 2011, 10:56:44 am » |
If you use the convention that positive voltages are always above ground and negative below ground, then the conversion from NPN to PNP is exactly like a mirror flipping the circuit upside-down - positive supply becomes negative.
In a circuit where 'ground' is the negative rail then the PNP treats the positive supply in the same way an NPN treats ground. For instance a PNP can switch a load on the 'high side' whereas an NPN switches the ground (low side) of the load.
Hope that less confusing rather than more confusing!! Basically in a PNP all voltages and currents swap sign from the NPN case.
There is a similar relation between n-channel MOSFETs and p-channel MOSFETs BTW
|
|
|
|
|
Logged
|
|
|
|
|
West palm beach, FL
Offline
Sr. Member
Karma: 0
Posts: 264
|
 |
« Reply #3 on: July 06, 2011, 03:36:27 am » |
Hey guys , excuse me for kicking up settled dust, i understand how the PNP switches the high side which means to go about actually switching we apply negative to the base...but how does one go about that? let me explain I have an arduino , and i would like to pulse width modulate to vary the speed of a small dc motor. and yes i do have NPN transistors and i have done it like this just fine , but if in reality a PNP can replace an NPN then how do i pulse width modulate with a PNP using the arduino? If my understanding of PWM is simply ranging from 0-5 volts,lets say on pin 9 , that would be feeding the base of an PNP positive charge , which is not what i need. so how do i go about this.
|
|
|
|
|
Logged
|
I could print the Arduino logo on a box of cereal and sell it as "Arduin-O's"
|
|
|
|
Manchester (England England)
Offline
Brattain Member
Karma: 277
Posts: 25506
Solder is electric glue
|
 |
« Reply #4 on: July 06, 2011, 03:44:33 am » |
No it is only a negitave voltage with respect to the emitter. As the emitter is sitting at +5V then applying a 0V signal is like applying. -5V signal.
|
|
|
|
|
Logged
|
|
|
|
|
West palm beach, FL
Offline
Sr. Member
Karma: 0
Posts: 264
|
 |
« Reply #5 on: July 06, 2011, 04:00:45 am » |
okay i think i understood that, its not really negative charged its just less positive then the emitter,so the more positive the base gets in other words the closer to the emitters 5v the more current will flow? And i just wired it motor is directly connected to a ground and the other side to the emitter of the PNP and the collector to positive 12v and the base to an arduino pwm pin , bu its just ran straight and did not vary in speed .. so obviously i did not get it huh
|
|
|
|
|
Logged
|
I could print the Arduino logo on a box of cereal and sell it as "Arduin-O's"
|
|
|
|
Leighton Buzzard, UK
Offline
Edison Member
Karma: 11
Posts: 1049
|
 |
« Reply #6 on: July 06, 2011, 04:05:52 am » |
a picture would help, but your words imply you wired it wrong!
I would expect (for a PNP) emitter to +volts base (via resistor) to Arduino pin collector to motor, other side of motot=r to ground
ALSO reverse biased diode across motor
|
|
|
|
|
Logged
|
there are only 10 types of people them that understands binary and them that doesn't
|
|
|
|
West palm beach, FL
Offline
Sr. Member
Karma: 0
Posts: 264
|
 |
« Reply #7 on: July 06, 2011, 04:13:02 am » |
i have exactly like that and once i add the common ground the motor just runs straight no pwm going on at all
|
|
|
|
|
Logged
|
I could print the Arduino logo on a box of cereal and sell it as "Arduin-O's"
|
|
|
|
Leighton Buzzard, UK
Offline
Edison Member
Karma: 11
Posts: 1049
|
 |
« Reply #8 on: July 06, 2011, 04:16:06 am » |
I suspect without "PMW running" the output pin is LOW so I would expect it to do just that try getting PMW running - it ought to slow down!
|
|
|
|
|
Logged
|
there are only 10 types of people them that understands binary and them that doesn't
|
|
|
|
West palm beach, FL
Offline
Sr. Member
Karma: 0
Posts: 264
|
 |
« Reply #9 on: July 06, 2011, 04:16:59 am » |
drawing a quick picture right now
|
|
|
|
|
Logged
|
I could print the Arduino logo on a box of cereal and sell it as "Arduin-O's"
|
|
|
|
Leighton Buzzard, UK
Offline
Edison Member
Karma: 11
Posts: 1049
|
 |
« Reply #10 on: July 06, 2011, 04:18:02 am » |
another thing to try disconnect the resistor from the arduino and connect it to +volts that should stop the motor
|
|
|
|
|
Logged
|
there are only 10 types of people them that understands binary and them that doesn't
|
|
|
|
West palm beach, FL
Offline
Sr. Member
Karma: 0
Posts: 264
|
 |
« Reply #11 on: July 06, 2011, 04:23:14 am » |
okay ill try that in a sec, while i do that this is my connections, however i did not draw the resistor or diode so simplicity sake and i wanted to draw it fast before you logged out heheh 
|
|
|
|
|
Logged
|
I could print the Arduino logo on a box of cereal and sell it as "Arduin-O's"
|
|
|
|
West palm beach, FL
Offline
Sr. Member
Karma: 0
Posts: 264
|
 |
« Reply #12 on: July 06, 2011, 04:24:27 am » |
this connection shown above makes the motor run just all out , no pwm.
|
|
|
|
|
Logged
|
I could print the Arduino logo on a box of cereal and sell it as "Arduin-O's"
|
|
|
|
West palm beach, FL
Offline
Sr. Member
Karma: 0
Posts: 264
|
 |
« Reply #13 on: July 06, 2011, 04:27:48 am » |
as a matter of fact with that connection right there the arduino doesnt even have to have power for the motor to run so i am basically making a complete circuit. swtich the C and E connections makes absolutely nothing happen . so i dont know
|
|
|
|
« Last Edit: July 06, 2011, 04:29:24 am by eddiea6987 »
|
Logged
|
I could print the Arduino logo on a box of cereal and sell it as "Arduin-O's"
|
|
|
|
Leighton Buzzard, UK
Offline
Edison Member
Karma: 11
Posts: 1049
|
 |
« Reply #14 on: July 06, 2011, 04:36:56 am » |
you can't just swap pins around and hope (well you can but the magic smoke will soon leak out if you do)
a) you MUST have a resistor between base and arduino - to keep the magic smoke in the arduino b) you have emiiter and collector the wrong way round - transistor will work backwards, but very badly and the smoke will soon leak out c) you MUST put a reverse diode across the motor, the back emf will kill the transistor - and you know what happens to the magic smoke! d) did you try connecting the resistor to +12? - it will turn the transistor off - and the motor should stop
I can't tell which transistor you are using so can't tell if E B and C are correct also what size motor is it? (no not inches - current rating!)
|
|
|
|
|
Logged
|
there are only 10 types of people them that understands binary and them that doesn't
|
|
|
|
|