RGB LEDs in automotive environment with fluctuating voltage

arduinoautomotivevoltage-regulator

I'm hooking up an Arduino to an automotive power supply which fluctuates between 12 and 14.4 volts. I'm also hooking up RGB LED light strips in this circuit as well, now I'm not afraid of the 14V frying the LEDs, but I do not want the brightness of the LEDs to fluctuate with the voltage. Is there anything I can do to prevent this besides an inefficient 12 V linear regulator?

Best Answer

schematic

simulate this circuit – Schematic created using CircuitLab

This is a good first cut. The Arduino output is assumed to be 3.3 volts, and the total of 33 k load on it should not change that appreciably. C2 gives a turn-on/turn-off time of a millisecond or so. OA1 is a single-supply, rail-to-rail opamp. With 1 volt on the + input, it will drive enough current through Q1 to produce 1 volt across R2, which in this case will be 10 mA. You can change the LED current by changing R2. The R5/C1 network will keep noise on the 12V line from upsetting the op amp.

The opamp should not draw much current, and the Q1/R2 combination is no less efficient than a simple resistor.