Michael Reid wrote: > I work for a manufacturer of home lighting control systems and the > TRIAC vs. reverse phase dimming (or lagging edge dimming) has heated > up in the past few years. CE approvals in Europe and other parts of > the world test for emmitted emissions and conducted emissions. TRIAC > dimmers need massive amounts of filtering to pass CE. Some of my > clients claim that TRIAC dimming is against code in some countries > due to the high EMI output as they turn on part way through the > cycle. My previous company, Vantage Lighting has a reverse phase > dimmer that uses MOSFETS. It is expensive and limited to 6 amps per > channel, and is very easily blown. Of course they use 2 MOSFETs per > dimmer. There are a number of commercial IBGT dimmers on the market. > We've done some testing of IGBT's for dimming and they do run a > little hotter than TRIAC's and cost more. > > Here is some info from a document I found on my computer. I think it > is from an engineer in New Zealand by the name of Mike Pearce. He > has a PIC design for a dimmer with code for both types of dimming. > If anyone wants the files I can send them to you. I always wanted to do an AC-PWM type of dimmer. Never read anything against, nor in favor. The PWM is based on the 60Hz from the AC power, a simply microcontroller or even a counter controls a Zero Crossing Detector to fire a TRIAC, keeps it on for one, two, n cycles, turn it off, keeps it off for one, two, n cycles, like a PWM, with the pulse resolution to be exactly 16.66ms synchronized by the street AC. For a large incandescent lamp, it doesn't matter to receive 2 whole AC cycles ON and 1 cycle OFF, to run at 66.6% of the power. The heavy incandescent filament will not blink or cintilate since it takes almost one second (or more) to get fully bright and more than that to cool down, so, the filament itself will serve as a cintilation filter. Cycles ON Cycles OFF % Power Status --------- ---------- ------- ------ 1 0 100 a 9 1 90 b 8 1 88 c 7 1 87 d 6 1 85 e 5 1 83 f 4 1 80 g 3 1 75 h 5 2 71 i 4 2 66 j 5 3 62 k 3 2 60 l 5 4 55 m 1 1 50 n ... ... ... .. Other than the load will receive an interrupted rate of whole sinewaves, everything else should be fine. Even at 50% power (1x1), the load will receive 30 whole sinewaves per second, no noise, no EMI, I suppose. The software algorithm for such thing should be quite easy. The Zero Cross Detector interrupts the microcontroller each time it crosses zero. The microcontroller divide it by two so it gets a whole sinewave period (16.66ms). The uC inserts a 14ms delay after the "even" interruption (even delayed interrupt), and decides that at the next interrupt (zero crossing) the power should be; x) Removed y) Applied Once the user set the Status desired (a-n) the microcontroller loads the relative PWM values and start operating. Suppose the selecetd was "d", 87%, values loaded would be 7=ON, 1=OFF. It loads the values, waits for the first "even" delayed interrupt and turn ON the TRIAC (at zero crossing) if the "ON" value is bigger than zero, and decrement it. If the ON value is zero than the operation is over OFF counter, at this time turning OFF the TRIAC at zero crossing. When both counters are zero, they are reload with the table values, in the example, 7 and 1. The example will results in a load receiving power in a train of 7 sinewaves (116ms) and skiping just one sinewave (16.6ms), cycle repeating itself. Some loads require 60Hz, others don't. What about not-sync motors? how they would react? Is this solution already exist? Wagner -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu