I heard you saying that you may change the place of the limiting resistor. I wonder why we don't revise the whole thing and make it as simple as possible.
What we have is just 30 parallel white LEDs. And we look to control their brightness (likely using a uC).
Let's throw away the 220V/12V transformer.
Let's throw away the 4-diode bridge of each LED.
Let's throw away the zero-cross detector.
Let's throw away the triac.
Let's decrease the heat dissipation of the current limiting resistor at each LED.
Let's make the software easy to write.
Let's make the controller easy to design and build.
Is it possible?!!! Let's see how:
We will use a 5V DC supply.
The LED driver will be a low cost n-channel MOSFET (having Vgs =< 5V for saturation).
First, we will find out which 5V supply is available for you. I usually import 50W, 100W and 200W.
That is, they are rated for 10A, 20A and 40A.
I usually don’t exceed half of the rated current.
Case 50W: total current 5A, LED current 5000mA/30 = 166 mA
Case 100W: total current 10A, LED current 10000mA/30 = 333 mA
I prefer to keep the LED current no higher than 250 mA. That is the total current would be 30 * 0.25 = 7.5A
In this case, the 100W will run with a good margin. (I don’t think there will be a big difference in the prices for the 100W and 50W).
The type of MOSFET I use lately for LEDs, is equivalent to FQP50N06L, FG50N06L and STP50N06L.
At Vgs=5V, its ON resistance is about 0.025 Ohm, so for 7.5A Vds < 0.2V and its dissipation is less than 1.5 W at full load (a small heatsink on it is enough).
So each LED in this case needs just a limiting resistor (no bridge), its value (approximately):
R = ( 5 – 3.5 ) / 0.25 = 6 Ohm
P_r = ( 5 – 3.5 ) * 0.25 = 375 mW
So R can be made with two 500mW resistors in parallel, each of value 12 Ohm.
Since the LEDs are now supplied by DC, you need to connect them with the right polarity to their common 2-wire line. And if you will notice later that the LEDs near the end of the line have a lower brightness you can add a third resistor in parallel to the former two.
About the software you just need to generate a PWM signal with a period of not longer than 5 msec (>200 Hz).
For instance, I didn’t suggest this simple and efficient solution earlier because I thought you are not free to choose the topology. I guess you could :wink:
Good luck.
Kerim