Help making a high powered RGB Lighting system for my highschool

"Looking at your circuit (thanks), it appear the LEDs are driven by a voltage source and a resistor, with no control other than the PWM signal?"
That is correct.
Light levels will set by the 255 levels of PWM available to you from the arduino.
analogWrite(Ax, 0) will be full off,
analogWrite(Ax, 255) will be full on.

I understand that, but how equal will the current in the LEDs be? For example when the arduino is set to 255 across the board all of the LEDs should have 350mA +/- 10mA running across them. If one LED had more current than the other it could be counter acted in software with scaled PWM values but it'd be better to have a more even output precisely controlled by a driver IC.

Basically, if I set the red channel on the left and right to be 100% brightness, all of the RED diodes should be emitting the same amount of light. I just do not know how close you can get to a perfect even brightness with resistors. If one LED got more current the left side of the stage would appear more bright than the other.

As drawn up, there are 12 LEDs of the same color on each side. There may be some small variation from part to part. The variations will pretty much be a wash among part. If you find one side is too bright, bring down the PWM on that side a few notches.
If you use current limiting resistors that are 1% variation, then 350 +/- 10 should be achievable.
I would suggest reading the value of a potentiometer for each color, and using that to control the PWM value that is used. Then you turn a knob and see the lights of up & down.
You can also create presets. Twiddle the knob to find the color you want with the cast & set in place, then program a button to jump (or fade up to) those colors when the button is pushed.

Ah, I see thanks. I think I'll use a bunch of trimpots inside the unit for control. I had planned on adding presets in the software, including the ability to read a light program from a file.

The only concern I have now is the wattage of those resistors. The voltage of the red channel is much less than of the the other two, and thus in series you get:

Red: 14-16V
Blue: 20-22V
Green: 20-22V

Now, at 350mA the resistor will have to drop 8V, so that gives:

0.350*8V = 2.8W. For safety I want a 5W trimpot, which could require a heat sink and such. Unless I am misunderstanding how this setup is supposed to work?

I want a 5W trimpot

Not sure if such a thing exists. These are normally quarter watt. That is why constant current drivers are such a good idea.

Grumpy_Mike:

I want a 5W trimpot

Not sure if such a thing exists. These are normally quarter watt. That is why constant current drivers are such a good idea.

That's what I suspected. I guess I'll be sticking with the constant current drivers then. I will need some small trimpots to balance the current between the two series of LEDs but they won't be dissipating much heat at all.

Got most of the project worked out quite well now.

Just need to figure out how to turn the 5V amplitude on the arduino's PWM signal to the 1V amplitude required for the Driver IC's I have.

Run it thru a voltage divider.

Thanks for that diagram Crossroads, that explained it perfectly.

User KE7GKP is correct.

According to the datasheet you linked to, the Dimming input pin, Pin#2 "Can be connected to a logic level PWM signal". (Typical logic levels are 3.3V or 5V)

On page 3 it says Vdim threshold ranges from 1.85 to 2.25 typically 2. Therefore when the voltage is below 1.85v it is off and when it is above 2.25v it is on (or vise-versa). This confirms you can use either a 3.3V logic or 5V logic. So the arduino output will be fine. No voltage divider is required.

No, I was asking about the data sheet I linked later on in the thread, for a different product. It clearly states that the maximum Vdim voltage is 1.25 and that a PWM signal should be 0-1V amplitude.

http://www.xppower.com/pdfs/SF_LDU.pdf
This one, showing 1.25V

PWM
Output Current Range • 25% to 100%
Operating Frequency • 1 kHz max
On Time • 200 ns min
Off Time • 200 ns min
Amplitude • 1.25 V max <<<
DC Voltage Control
Output Current Range • 25% to 100%
Control Input • 0.3 to 1.25 V max <<<

The LM3401 are only available in surface mount per that datasheet.
The other part looks like a thru hole part it can be built up on a perfboard a lot easier.
(Still seems like overkill to me vs TO-220 transistors.)

It is not easy to make switching LED driver working properly on protoboard. If you etch a PCB for it, it will be OK. I would suggest to check the pre-made modules as mentioned before. In theory, driving power LEDs in parallel is a bad idea. In practice, it may be OK as long as you use exact same LEDs. If one led goes bad for whatever reason, the other led in parallel will burn out instantly. I recently designed a shield for power led and wrote about my experiences. It may be useful for you. http://arduino.cc/forum/index.php/topic,51887.0.html

YAY! Budget increase.

Now I have enough to manufacture my own PCB!

I won't be driving the LEDs in parallel anymore, I'm going to use 12x 500mA drivers at 350mA and then split the PWM signals from the arduino. I'm currently in the process of drawing up the circuit, I'll post it here when I am done.

EDIT: Is it okay to use a 350mA driver to drive 350mA? I know it's always a good idea to underrate electronics but I can't find a chip that does exactly what I need it to for with more current. I need an IC that can handle 24V input, 350mA output with a PWM frequency range that supports both the 500Hz and 1kHz speeds on the arduino pins.

It seems that the driver I listed in my original post is my best bet. Their datasheet seems to point to the fact that it was designed for use at 350mA.

Besides, this unit isn't going to see more than a thousand hours of use anyways. Not that I'd want to make it un-reliable, but if I reduce the IC'd MTBF to 40,000 hours from 80,000 it isn't a huge deal.

Here is a tentative circuit representing one of the six color channels.

Will this work? I'm pretty sure it will but I want to make sure before I get to work designing a PCB.

Thanks.

@neurostar: "In theory, driving power LEDs in parallel is a bad idea." The design being worked from the first page of the thread had current limit resistors in each string, thus they are not actually in parallel.

@charliehorse,
This design is total overkil for a limited use stage lighting setup. Running left & right lights with brightness matching controlled by PWM adjust from ardiuno would have been plenty. Logic level mosfets with 0.005 Rds and 350mA going thru them would dissipate <2mW and would have no cooling needs.
Now you have a ton more parts to deal with, you've got a pile of NPN transistors that may need cooling as well, dissipating 250mW each, a controller that you are using at 100% capacity, no derating, and with 0.95mm lead spacing which will be a bear to solder hand.

If you still want to pursue something besides MOSFET switching, consider one of the parts in this flyer I just received via e-mail notice.

MAX16822 or MAX16832 for example.
Higher current flow, fewer parts, and with a student/school e-mail you are eligible for free samples.

Perhaps I am not fully understanding the mofset idea...

Looking at the circuit you posted earlier it looks as though when the PWM signal is ON, the LEDs are simply in run directly off 24V with only a resistor to reduce the voltage. If this is true, that resistor could be dissipating up to 10W when the circuit is on.

10W?
P=IV = .35 * (24V-14V) = 3.5W. So use 5W resistors. 10V/.35A = 28 ohm for Red,
(14 v worse case for Red)
4V/.35A = 68 ohm for blue/green. P=4*.35 = 1.4W, use 3W.

Depending on your PWM setting from Arduino, power dissipated will be 1/255 to 255/255 of that.
Or use a high wattage rheostat for even more fine tuning of the light levels
Say a 50 ohm resistor in series with 25 ohm 7.5W rheostat if you can find a place to get them - digikey has the part numbers to look for.
I would go with fixed resistors and PWM trimming, see how it works & add rheostats if its not quite what you want.
http://www.ohmite.com/catalog/pdf/rheostats_wirewound.pdf