Circuit to distribute LED driver current

kuksul08

Enlightened
Joined
Jun 4, 2007
Messages
783
Location
California
I have a project I'm working on and I need to distribute current from an LED driver to an array of LEDs.

My ti buck driver outputs a constant 5000mA. I'd like to send that current through a circuit that will "distribute" it to some LEDs, and control that current distribution from an Arduino (PWM for example).

For example:
First I want to send 100% of the current to a single LED.
Then, I want to send 50% to one LED and 50% to a second.
Then, I want to send 10% to one, 60% to a second, and 30% to a third.
...and every ratio in between (programmable from Arduino).

One easy way of doing it is to have n number of independent driver circuits and drive the adjust pin with a PWM signal from the Arduino. However this requires me to have multiple expensive complete driver circuits.

Is there a way to do this in a more simple way, perhaps by using a single driver circuit and a transistor array? Or maybe you have some other creative ideas?
 
If pwm is okay and if you don't need the hogher efficiancy of the led of running them at lower currents, you can just use n-mosfets between the leds and ground and switch those with the 5v outputs of the arduino directly. This option wpuld also be the most efficiant and cheapest.
If you need true linear current distribution (without pwm) you'd need constand current driver chips on each led (maby a bunch of cn5711 if you only have 1 led in series, or a lot mor of amc7135s). This would give you the current distribution but you'd have to swap resistors to not have to use pwm to set the brightness.
 
If pwm is okay and if you don't need the hogher efficiancy of the led of running them at lower currents, you can just use n-mosfets between the leds and ground and switch those with the 5v outputs of the arduino directly. This option wpuld also be the most efficiant and cheapest.
If you need true linear current distribution (without pwm) you'd need constand current driver chips on each led (maby a bunch of cn5711 if you only have 1 led in series, or a lot mor of amc7135s). This would give you the current distribution but you'd have to swap resistors to not have to use pwm to set the brightness.
Interesting - with the first approach would that still rely on the LED driver before the n-mosfets or not? I am currently using an LM3409 based driver ic. I have strayed away from using linear drivers such as amc7135's due to the low efficiency.
 
Yes, the mosfets would only switch the leds on or pff. You need the buck driver board to limit the current and step down the voltage to the apropriate level for the leds.
2 issues with that solution:
1) If you use different led colours, they'll have different forward voltages which will lead to one led getting much more current than the other if you drive them at the same time.
2) You may want to write your own pwm implementation, since if you just use the pwm function of an arduino you can end up with channels being on at the same time and splitting the current between the leds or being on alternatly running each channel at the full 5a when its on.
 
Yes, the mosfets would only switch the leds on or pff. You need the buck driver board to limit the current and step down the voltage to the apropriate level for the leds.
2 issues with that solution:
1) If you use different led colours, they'll have different forward voltages which will lead to one led getting much more current than the other if you drive them at the same time.
2) You may want to write your own pwm implementation, since if you just use the pwm function of an arduino you can end up with channels being on at the same time and splitting the current between the leds or being on alternatly running each channel at the full 5a when its on.
Hmm, sounds like a challenge. Sounds like having multiple driver boards is the better solution from all points except cost.
 
LED's are best driven trough PWM.
Current limiting can be done with PWM but also using other methods.
Overall that driver is not designed to be cascaded with something else, as its PWM output will may confuse other regulators below or after it.
So better use separate regulators IMHO.
 
I have a project I'm working on and I need to distribute current from an LED driver to an array of LEDs.

My ti buck driver outputs a constant 5000mA. I'd like to send that current through a circuit that will "distribute" it to some LEDs, and control that current distribution from an Arduino (PWM for example).

For example:
First I want to send 100% of the current to a single LED.
Then, I want to send 50% to one LED and 50% to a second.
Then, I want to send 10% to one, 60% to a second, and 30% to a third.
...and every ratio in between (programmable from Arduino).

One easy way of doing it is to have n number of independent driver circuits and drive the adjust pin with a PWM signal from the Arduino. However this requires me to have multiple expensive complete driver circuits.

Is there a way to do this in a more simple way, perhaps by using a single driver circuit and a transistor array? Or maybe you have some other creative ideas?
An interesting challenge, though I don't have a lot of experience in drivers.

What is the LED voltage i.e. are these multiples (series)? Is three the maximum number? Are LEDs white, or R/G/B or other non-white? What is the buck input voltage (range)?

I have seen a multiple-output driver in a ceiling lamp which allows CCT change; three options by controlling current to two outputs. However it is manually switched, and current ratios fixed, and is ac-input, not what you are looking for. It also drives multiple series LEDs, somewhere in the 20-40v, so high voltage, low current (yours is high current).

Individual PWM circuits or modules might work (still thinking). Possibly you find a small dc dimmer module which is cheap, which does not include a driver. However, be aware of risk of creating EMI i.e. RF interference depending how this is done.

Lastly, what is you approximate budget for this?


Dave
 
The controller for low-cost ($5-$10 typ.) RGB LED strips has three outputs to drive each colour, using PWM. The controller is marked at up to 4A each, not sure if this is per output or total. In any case I would not trust the tiny transistors with that much current, especially in a fault condition.

Typically these use IR remote, and offer limited selection of RGB colours using various PWM combinations. LED voltage is limited to 5v on some. Not sure if you could adapt one of these, it's a possibility.

PWM frequency is fixed, and might be as little as 200Hz (measured one but forgot).

However, the various mixed colour PWM combos might be sufficient for your needs. Pure colours are 90%. Others vary, could be as low as 10%. Pushing certain colour keys on remote sets that combo. It would have to be determined by measuring (with a scope, or DVM).

You could probably get away adding MOSFET drivers for each colour with a bit of interface circuitry.

Some of these strips have Bluetooth or WiFi control, would that help?


Dave
 
Constant-current buck drivers used for 12v/24vdc automotive "auxiliary" LED lighting products commonly have a 0-5v PWM input (which may also work on analog voltage). Example is PowTech PT4115E. I was able to dim one of these lights using one output of a simple RGB LED controller (10%-90% in certain steps).

Problem is, many of these are good from 6v-30v or so but only 1A or a bit higher, not near 5A. I have seen at least one design using an external MOSFET, so higher current is possible.

Another option if each LED can be a series (say 5S = 15v) version at 1000mA, the above drivers can be used.

Dave
 
I have a project I'm working on and I need to distribute current from an LED driver to an array of LEDs.

My ti buck driver outputs a constant 5000mA. I'd like to send that current through a circuit that will "distribute" it to some LEDs, and control that current distribution from an Arduino (PWM for example).

For example:
First I want to send 100% of the current to a single LED.
Then, I want to send 50% to one LED and 50% to a second.
Then, I want to send 10% to one, 60% to a second, and 30% to a third.
...and every ratio in between (programmable from Arduino).

One easy way of doing it is to have n number of independent driver circuits and drive the adjust pin with a PWM signal from the Arduino. However this requires me to have multiple expensive complete driver circuits.

Is there a way to do this in a more simple way, perhaps by using a single driver circuit and a transistor array? Or maybe you have some other creative ideas?
So did you figure something out?

Possibly by setting up three parallel CC buck convertors each set to maximum current for the LEDs, depending on input voltage range, you might be able to eliminate the common LM3409 convertor. The PWM duty cycles would need to be managed carefully to avoid overcurrent on the input i.e. due to output overlapping etc.; making sure it never exceeds 100% of maximum total current.

Dave
 
Top