Step 6: The 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.
Remove these ads by
Signing Up










































Visit Our Store »
Go Pro Today »




Loving this design! It's working really well for me so far, but I'm curious about component selection.
I'm using a (purchased) high powered buck regulator to get the voltage down to as low as I can, and still have this circuit operate. (~0.6V above the LED Vfwd) I'm building 36 of these circuits, to individually power and PWM twelve RGB LEDs (with 3 of the buck regulators, one for each colour), at 700ma per channel, so these serve as excellent low part-count CCRs. However, I'm not sure how various characteristics of Q1 and Q2 relate to the efficiency of the design. At 700ma x 36 any efficiency gains I can get by choosing the correct components will help reduce the amount of heat I have to deal with.
What kind of things should one look for in Q1 and Q2 to help with efficiency, either to allow input and output voltages to be closer, or anything else?
I want to build a constant current source which has input voltage between 3-311v.
how can i make it with low cost and transistor based circuit?
Thank you very much.
that is kind off a stretch. Do i understand correctly that you want 1 circuit that can drive 1 LED with 311 Volt as well as 80 LED's with 311 Volt?
if the LED is 3,2 Volt you would need a transistor that can take at least 310 Volt as Vce or as much as (311-80x3.2)=55 Volt when you use 80 LED's.
Going by the circuit I just uploaded before (but you are going to need a different transistor) you would need an emmitter resistor of about 30 Ohms (1/4 Watt more than enough). But I would not know a transistor that can take 310 Volts just from the top of my head. Even the BU111 can only take 300 Volt, but even then, that would be overdoing it as it can take 6 amps and u only need 20MA.
The MJ16110 can take 400 Volts, but at 15 amps and tht is looking launching a scud missile to kill an ant. I am really not aware of a 350 Volt 50-100mA low power transistor.
If beforehand you would already know that you will drive 80 LED's then it becomes a whole different ballparc because then a BC546 would be enough.
I am not saying you should do things different from what you plan but as far as I understand your plans you are setting yourself up for trouble and high cost, whereas it could be simple and cheap.
Also, are you really bound to 311 Volt? because even with 80 LED's you still will be turning 55 Volt*20mA=1 Watt into heat.
Perhaps your project will still be possible if you rethink a bit what you are doing
I bought a bunch of MC34167's hoping to run some led's with it, only to find that it doesn't have current sensing. So you saved my reer.
To make sure of the Forward voltage drop being close to your input voltage though, the MC34167 is a tremendous choice. It is a single chip step up/down converter with a minimum of external components available that will get you to the correct voltage for super cheap and not have to worry about heat as it is crazy efficient.. I now use this along with most of your circuit for current control for 4ampere's worth of 100lumen/watt led's in an automotive environment....... CRAZY bright. And no heat given off anywhere except for the LED's themself. Best of all, no need for an O-scope and you can get this much efficiency. Lets face it, if you have a $4000 scope you can make your own PWM circuits and not have to worry about any of this. But if you don't it is good to know there is still ways to do things.
biglongurl
Unfortunately, the current doesn't seem too stable. :(
Anyhow, thanks for a great post!
I have since chosen a 36v DC supply ( so that I can connect more LED's in each series and maximise efficiency) and found that it once again alters the formula slightly. With the 12v supply I had a steady 302ma current, but with the same circuit and 36v input I am showing a steady 326ma. I am currently using a breadboard, so I'm not sure if the higher voltage is proving more efficient at driving the current through the connecting points... maybe, but I'm rusty as hell with electronics!
The good thing is that the Vgs on the MOSFET is sitting around 3.6v, so no danger there!
Anyway, thanks again for this fab cicuit, and I hope my findings help some others with their experiments!
So, Thank You!!
anyone know.
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