Step 6The new stuff!! Constant Current Source #1
The first set of circuits are all small variations on a super-simple constant-current source.
Pros:
- consistent LED performance with any power supply and LED's
- costs about $1
- only 4 simple parts to connect
- efficiency can be over 90% (with proper LED and power supply selection)
- can handle LOTS of power, 20 Amps or more no problem.
- low "dropout" - the input voltage can be as little as 0.6 volts higher than the output voltage.
- super-wide operation range: between 3V and 60V input
Cons:
- must change a resistor to change LED brightness
- if poorly configured it may waste as much power as the resistor method
- you have to build it yourself (oh wait, that should be a 'pro').
- current limit changes a bit with ambient temperature (may also be a 'pro').
So to sum it up: this circuit works just as well as the step-down switching regulator, the only difference is that it doesn't guarantee 90% efficiency. on the plus side, it only costs $1.
Simplest version first:
"Low Cost Constant Current Source #1"
This circuit is featured in my simple power-led light project.
How does it work?
- Q2 (a power NFET) is used as a variable resistor. Q2 starts out turned on by R1.
- Q1 (a small NPN) is used as an over-current sensing switch, and R3 is the "sense resistor" or "set resistor" that triggers Q1 when too much current is flowing.
- The main current flow is through the LED's, through Q2, and through R3. When too much current flows through R3, Q1 will start to turn on, which starts turning off Q2. Turning off Q2 reduces the current through the LED's and R3. So we've created a "feedback loop", which continuously monitors the LED current and keeps it exactly at the set point at all times. transistors are clever, huh!
- R1 has high resistance, so that when Q1 starts turning on, it easily overpowers R1.
- The result is that Q2 acts like a resistor, and its resistance is always perfectly set to keep the LED current correct. Any excess power is burned in Q2. Thus for maximum efficiency, we want to configure our LED string so that it is close to the power supply voltage. It will work fine if we don't do this, we'll just waste power. this is really the only downside of this circuit compared to a step-down switching regulator!
setting the current!
the value of R3 determines the set current.
Calculations:
- LED current is approximately equal to: 0.5 / R3
- R3 power: the power dissipated by the resistor is approximately: 0.25 / R3. choose a resistor value at least 2x the power calculated so the resistor does not get burning hot.
so for 700mA LED current:
R3 = 0.5 / 0.7 = 0.71 ohms. closest standard resistor is 0.75 ohms.
R3 power = 0.25 / 0.71 = 0.35 watts. we'll need at least a 1/2 watt rated resistor.
Parts used:
R1: small (1/4 watt) approximately 100k-ohm resistor (such as: Yageo CFR-25JB series)
R3: large (1 watt+) current set resistor. (a good 2-watt choice is: Panasonic ERX-2SJR series)
Q2: large (TO-220 package) N-channel logic-level FET (such as: Fairchild FQP50N06L)
Q1: small (TO-92 package) NPN transistor (such as: Fairchild 2N5088BU)
Maximum limits:
the only real limit to the current source circuit is imposed by NFET Q2. Q2 limits the circuit in two ways:
1) power dissipation. Q2 acts as a variable resistor, stepping down the voltage from the power supply to match the need of the LED's. so Q2 will need a heatsink if there is a high LED current or if the power source voltage is a lot higher than the LED string voltage. (Q2 power = dropped volts * LED current). Q2 can only handle 2/3 watt before you need some kind of heatsink. with a large heatsink, this circuit can handle a LOT of power & current - probably 50 watts and 20 amps with this exact transistor, but you can just put multiple transistors in parallel for more power.
2) voltage. the "G" pin on Q2 is only rated for 20V, and with this simplest circuit that will limit the input voltage to 20V (lets say 18V to be safe). if you use a different NFET, make sure to check the "Vgs" rating.
thermal sensitivity:
the current set-point is somewhat sensitive to temperature. this is because Q1 is the trigger, and Q1 is thermally sensitive. the part nuber i specified above is one of the least thermally sensitive NPN's i could find. even so, expect perhaps a 30% reduction in current set point as you go from -20C to +100C. that may be a desired effect, it could save your Q2 or LED's from overheating.
| « Previous Step | Download PDFView All Steps | Next Step » |










































V across R3 (Vbe which can be 0.7V) + drop across Q2ds which probably can be ignored because it will open fully when needed and Ron is 0.021 Ohm.
But the led Vf can be higher than 4V for 100mA and who know how much higher. But it seems like i have only 5-0.7-4=0.3V headroom.
Do you think this is not enough and i should switch to higher voltage power supply? For my project this means 12V. If so, i would probably go for switching regulator because of power dissipation on the FET.
I not even sure that with 100mA the Vf will be within 5V :( No graph for such case in the datasheet, but 100mA is allowed with 1/10 PWM. Any idea what could it be?
You should not put the LEDs in parallel. It sounds good in theory, but there is no control as to how much current each LED will draw. You will only control the total current. That means that if one of the LEDs starts to draw a little more than the others it could overheat and then blow. If that happens the current in the other LEDs will rise, the circuit keeps pushing the same current, and they will all eventually die.
In your case I would recommend a separate driver for each LED. Circuit #1 would work but may not give 100% brightness. If you had 4.5-6V you could guarantee 100% brightness. At a few dollars each it would be the cheapest and easiest solution.
The other option is to use a boost driver to raise the 3.7V to something higher. The LEDs would be in series. The required voltage would be at least Number of LEDs x LED Voltage. So 4 LEDS at 3V = 12V the currrent setting would be 700mA. Unless you can find a suitable design to build you'll need to buy one.
Thank you.
I don't know how to say it but the Instructable was a little bit confusing even if the schematics are easy to understand. Please don't get me wrong but the "parts used" and "setting the current!"-part are the most important and its kind of hidden in this much extra information. ordering the textparts a little bit different will make it easier for the reader ... I think^^
Thanks for the Instructable made me read a lot about stuff I didn't understood before oh and my LED's are actually emitting light now ^^
@Everyone who cares
I replaced Q1 with an IRF1010N (because of the lack of Fairchild FQP50N06L in the German market) and Q2 with a 2N3904 (hat too much lying around) and it works nicely
Dear Dan,
Thanks for the article!
I would like to use your current regulator to provide 5A. (For a DC motor.)
Based on the above calcularions in my circuit R3 should be 0,1 Ohm / 2,5W.
Should I modify anything else or that's all?
Can I use 2N5089 instead of 2N5088? The supply voltage is 18V.
Thank you in advance for the answer.
Peter
First of all, I guess the symbol for Q2 is wrong. You write, that you are using a N-channel FET, but in the scematics there are p-channel FET symbols!
Also I'm trying to build this circuit, but it isn't working as I expected. I'm tried a 100k and 1M for R1, 0.85 Ohm (5 watt) for R3 (should be around 600mA), white power LED (3,4 - 3,6V @ 700mA), BD548C for Q1 and IRL540N for Q2 because I already have them. The power supply was a regulated powersupply. I set it to 5 Volts and set the current limiter to 100 mA which I increased slowly up to 600mA.
The problem is, that the voltage wasn't regulated by this circuit! In the end the LED got 4 V at 550mA!
So where is the problem? My Q1 and Q2 seems to have nearly the same technical data, don't they?
While this circuit is not the most efficient from a power view, it is easily one of the best to understand and sets the current with a minimum of components. This is a good circuit and should perform well with a wide power supply tolerance. Just monitor the heat dissapated by the FET.
i want to drive 12x3w power LED's. LED's forward voltages are 3.2V. Total i need 38.4V. How can i drive it.
I like to make use of this circuit for my LEDs about 18 LEDs in a row. It groups into 3 LEDs in serial and 4 parallel (3 LEDs in serial) in a row of 18 LEDs. Each LED is 1 Watt x 18 = 18watts in a row and also LED is 3 Watts x 18watts = 54 watts in a row.
Anyone can help me on what is the right resistors value for LED circuit 18watts and 54watts?
Your advise and help is very much appreciated.
Thanks and best regards,
Stuart
The gate of Q2 is held near its threshold voltage (around 1 - 2 V) by the potential divider formed by R1 and C-E of Q1. But as the voltage on the gate rises, the resistance of D-S of Q2 falls (perhaps as low as 0.02 ohm). As that happens, the voltage on the base of Q1 rises, which turns on Q1, pulling the voltage on the gate of Q2 down. Which feeds back by increasing the D-S resistance, which lowers the voltage on the base of Q1. It reaches equilibrium quickly.
In practice, both transistors will be near their turn-on points.
I built this with the same FET (FQP 50N06L), a similar NPN (the very common 2n3904), and a single 3 W LED from Avago (ASMT-MYE0).
The FET has gate threshold of 1.0-2.5 V, the 2n3904 has base saturation voltage of 0.65-0.95 V, and the LED has a forward drop of 3.6-4.3 V, current of 700 mA. (Values from datasheets.)
If the supply voltage is enough (above the forward voltage of the LEDs + the turn-on voltage of Q1), then the base of Q1 will basically be at its turn-on voltage (measured at about 550 mV in my circuit). It depends a little on the supply voltage (see later), but mostly on the properties of Q1. It doesn't depend on R1 at all (tried a few values 100K, 150K etc).
This is the crux of the design: the voltage on the base of Q1 is held constant, R3 is constant, so the current is constant. As all the current (except for a negligible amount) is going through the LEDs, the D-S of the FET, and R3, we can control the current through the LEDs by the value of R3.
So now we know that R3 will have all the LED current, and drop 550 mV. Per Dan's calculation, a 1R resistor will give 550 mV = 550 mA * 1R, thus 0.55 V * 0.55 A = 0.3 W.
It should be pointed out that the power used by the resistor is dependent on the turn-on voltage of Q1 and the required current. The power dissipated by the FET is dependent on how much we have to drop the supply voltage to the forward drop voltage of the LED chain.
Attached below are the scope traces for 100R, 10R and 1R setting resistors. The top trace is the voltage at the gate of the FET, the bottom trace is the base of the NPN. We see some start-up bounce, then the gate falls while the base rises until they are in equilibrium. It's quicker if R3 is lower.
The start-spike for 10R is shown expanded in the fourth trace. It shows a gate voltage 'shoulder', followed by a fast rise, and damped oscillation to the supply voltage. At this point Q1 is off with Vbase at zero. With 10R, it takes a further 75 usec unti Vbase starts rising. Sorry but I don't know why that is! (Both Q1 and Q2 have switching times in nanoseconds, so my guess is that capacitive effects of the LED or the circuit in general are charging up.)
At 1R, the current should be 550 mA (confirmed on power supply) and the 1 Watt resister got warm. The FET got very hot, and the LED got finger-burning hot. (It should have had a heatsink like they told us as it has an external operating temperature of only 95 C. It lasted about 5 minutes.)
Lastly is graph of measured Vbase against Vsupply.
Hope that's of some use.
Kind regards.
Jonathan
minor point: the circuit depends *a little* on R1. If you use 10k, Vbe on Q1 must be a little higher to turn off Q2. maybe 0.1V higher, so you do get a 10% or 20% reduction in R3 power losses is you use R1 of 100k or 200k. That's also why i spec the 2N5088BU - it has a slightly lower turn-on point than 2N3904 so again reduces R3 losses by 10%.
You're right of course: I've just tried it now with R1 = 12K, and it drives up the Q1 base voltage to 631mV. When R1 was 100K or 150K I got the same 550mV value.
6 x blue LED (@ 3.6V fwd drop) = 21.6V
(24V - 21.6V) * 1A = 2.4W
2.4W dissipation is going to require a larger chassis vent system and significant (for what it is) heatsink, both of which add to project cost and overall size. Granted, the transistor could be heatsunk to the same 'sink used by the LEDs, but either way this does still increase that heatsink size, overall size, and project cost by more than a typical switching regulator.
A 210W PSU seems overkill when your load is under 50W, but I could see the practical side of using what you have or are familiar with - in that situation the feedback circuit of the supply could be tweaked to drop the voltage down closer to that of the sum forward drop of the LEDs in series, OR use of a voltage divider in the feedback loop could cause the target current to result in the voltage drop the PSU's comparator circuit uses to regulate (similar to how it's already done in a typical LED switching regulator) and arrive at the target current with very little addt'l power loss and heat.