Thanks a lot for your information.
In my case, I think it will not be mandatory to pulse anything.
Let's make it simple, no?
Thank you anyway.
Thanks a lot for your information.
In my case, I think it will not be mandatory to pulse anything.
Let's make it simple, no?
Thank you anyway.
Roger
It makes great sense to pulse LEDs, and is well worth the trouble in increased performance.
You have two physics principles working together. First, you can pulse a LED with a high peak current but low average current that will extend battery life. Second, your eye responds as a peak detector. Together this means a LED pulsed with a 10% duty cycle at 10 times a DC level will look brighter then that LED just running a pure DC (for the same power).
So taken together this means you can run a pulsed LED on less power then a DC LED and make it look just as bright (or same power and make it appear brighter).
LEDs are basically current controlled devices. Your driver should control the current and let the voltage be whatever it is; practically you’ll typically use a resistor anyway, but size it to give the LED the desired current. The drawback of a resistor is the intensity will fall as the battery drains, you’ll have to play that against the increased complexity/cost of a true current source or sink driver. LED current driver chips are available (I’ve used one from Maxim).
The goal of any driver scheme here (portable device on a bike needs to use every Joule stored) would be to transmit maximum power to the LED and burn off the minimum (such as in a current limiting resistor): a PWM scheme is not above consideration and doable with a PIC.
LEDs are becoming more popular in factory supplied automotive signals. If you ever noticed some cars seem to flash as they speed by you you’re seeing the pulsed nature of the LED drive.
Sounds like a perfect place to put a PIC10f200. 6 pins, no oscillator; power, ground, switch input, LED output, and still 2 pins left over to play with.
Program changes the PWM to the LED according to the switch input. Easily done.
About the only thing I can see needing to be done outside of that would be to add an external MOSFET to switch power to the LED, but that depends on the total current your LEDs are pulling.
The rest of the guys are right though...
PWM at V(f) at near maximum I(f) on an LED is the only way to go. There's just too much variation in brightness to be messing with different current limiting resistors. If you look at the spec sheets and the graphs for the light output from the high brightness LEDs, you'll see that the majority of LEDs are only spec'd to run at X amount of current to produce Y amount of light. Lower current levels generally aren't even listed because there's just too much variation. PWM is just that much more efficient, produces less heat, your eyes don't know the difference...etc.etc.etc.
Well then, let's pulse!
Amazing how things can be "not as simple" as they would look like at a first glance.
If I understand you weel, the idea is to get rid of resistors and power the leds with an appropriate pulse (hope I'm right here).
About maximum "brightness", how do I measure it? I assume I'll have to use the led's datasheet specs for a value (mA)... but when pulsing power to the led, the time to measure the current will be far to slow for my ampmeter (Vf is not difficult to measaure with my oscillo but this value is not mentionned in the datasheet).
Second, if the PWM doesn't allow frequencies lower than (can't recall exactly) around 250Hz, how would you do?
I'm not an expert in PWM so I may have missed some infos on how to go that low in freq.
Roger
Oh, don't kid yourself, it's a piece of cake...
You still need current limiting resistors in most cases, but you can set them at the maximum current value and with PWM, you won't have to worry about letting all of the smoke out of them.
Max brightness - I wouldn't worry about that so much as driving it at max current for too long (i.e. pulse widths too long).
Personally, I've been able to use PWM down to about 40hz without any flickering. Some people can tolerate down to 20hz or so, varies on the person. In my LED strips that I use for undercar lighting, I use 76.3hz (20mhz-Fosc / 4-Instruction Rate / 256-Timer0 overflow / 256-Software PWM) as my PWM frequency. Works like a champ.
So, even if you use a PIC10F200 running at 4mhz and just keep everything in a tight loop with some software driven PWM, you should be able to easily stay well above the 20-40hz minimum rate.
A simple software PWM is a piece of cake. Get your hardware designed and 'finalized', then we can all work on a decent program for it.
Actually, forget the PIC10F200. It's a surface mount, pain to work with for prototyping. Go with a PIC12F675 or similar, 8 pin DIP package, easy to put on a proto-board. Same thing still applies though, but now you might be able to combine ports together to get a bit more power out to drive the LEDs.
Last edited by skimask; - 11th April 2007 at 15:56. Reason: Changed my mind on the PIC
Bookmarks