[sci.electronics] Light Dimmer

lindner@hppad.HP.COM (Steffen Lindner) (11/24/90)

I would appreciate it if any of you could help me with the following:

Background Information:
I am trying to built a digitally controlled light dimmer.  This system should
control about 24 individual channels.  Each channel consists of one or more
lights (incandescent).  The maximum load on each channel is about 3A.  The
dimmer must allow a minimum of 16 brightness settings (more would be better).
The system uses a microcontroller for I/O and triggering the TRIACs.  All
seems well except that I have not been able to come up with a simple, cost
effective solution to reduce (eliminate) noise.

Problem:
A regular dimmer setup (controlling the phase angle of a TRIAC) produces 
substantial current spikes, since the load current is turned on under
non-cross-over conditions.  This causes a lot of interference.         

Another solution would be to always switch at cross-over points and just skip
one or more half cycle.  This works well as long as not too many cycles
are skipped.  At 1/16 of full brightness there would be a substantial flicker
noticable.


Are there any better methods of building a dimmer?  
Is there any way to trigger the TRIAC "gently" (ie. soft start)?


				Please help,             

				   Steffen       

ftpam1@acad3.fai.alaska.edu (MUNTS PHILLIP A) (11/25/90)

In article <2570007@hppad.HP.COM>, lindner@hppad.HP.COM (Steffen Lindner) writes...
>I would appreciate it if any of you could help me with the following:
> 
>Background Information:
>I am trying to built a digitally controlled light dimmer.  This system should
>control about 24 individual channels.  Each channel consists of one or more
>lights (incandescent).  The maximum load on each channel is about 3A.  The
>dimmer must allow a minimum of 16 brightness settings (more would be better).
>The system uses a microcontroller for I/O and triggering the TRIACs.  All
>seems well except that I have not been able to come up with a simple, cost
>effective solution to reduce (eliminate) noise.
> 
>Problem:
>A regular dimmer setup (controlling the phase angle of a TRIAC) produces 
>substantial current spikes, since the load current is turned on under
>non-cross-over conditions.  This causes a lot of interference.         
> 
>Another solution would be to always switch at cross-over points and just skip
>one or more half cycle.  This works well as long as not too many cycles
>are skipped.  At 1/16 of full brightness there would be a substantial flicker
>noticable.
> 
> 
>Are there any better methods of building a dimmer?  
>Is there any way to trigger the TRIAC "gently" (ie. soft start)?
> 
> 
>				Please help,             
> 
>				   Steffen       

     I once had occasion to replace the SCR's in a commercial stage light
controller.  That particular system had toroids (inductors) larger than glazed
donuts.  I don't remember what the associated capacitors were; the coils were
so large that they monopolized your attention!

(This system was rated at 2.4 kW per channel.  Each channel had its own LC
noise filter.)

Philip Munts N7AHL
NRA Extremist, etc.
University of Alaska, Fairbanks

rsnider@xrtll.uucp (Richard Snider) (11/27/90)

In article <2570007@hppad.HP.COM> lindner@hppad.HP.COM (Steffen Lindner) writes:
>control about 24 individual channels.  Each channel consists of one or more
>lights (incandescent).  The maximum load on each channel is about 3A.  The
>dimmer must allow a minimum of 16 brightness settings (more would be better).
>The system uses a microcontroller for I/O and triggering the TRIACs. 
>
>Problem:
>A regular dimmer setup (controlling the phase angle of a TRIAC) produces 
>substantial current spikes, since the load current is turned on under
>non-cross-over conditions.  This causes a lot of interference.         

While on the topic of problems, depending on the type of incandescent
lights you are using, you probabbly will need some form of "preheating"
current through the fillament in the bulbs if you want them to come on
from some minimum setting without "popping" on.  This is becuase the
current required to get the filament glowing from a "cold" condition is
considerably higher than that which is needed to keep it glowing.

Your idea of skipping cycles to dim the bulb will work, you can also
trigger on half cycles as well, to cut down on flicker.  If you are
expecting these bulbs to be used in any kind of lighting situation where
people are not looking directly at the bulbs, then the flicker won't
be noticed at all.  Also, if dimming to 1/16th, chances are there won't
be much light to look at anyway, since that is less than 10V and most
120V incandescant bulbs (I assume you are dimming 120V circuits) will
not light up appreciably (sometimes not at all) with that kind of
voltage through them.

>Is there any way to trigger the TRIAC "gently" (ie. soft start)?

Yes, use an inductor in series with your triac and load, this will
remove a considerable amount of the spike associated with turning
the Triac on during part of the cycle. The calculation of the inductance
is left as an excercise for the student  :-)

					.....Rich
                                        rsnider@xrtll

johnf@hpscdc.scd.hp.com (John Flowers) (11/27/90)

A friend of mine works for Teatronics, Inc. Teatronics makes multi-channel
analog and digitally controlled dimmer "packs", from 4 to 24 channels.

In the models that carry a 2.4 kW load they have LARGE inductors on the
outputs of the TRIACS. These inductances are not measured in Henries but in
Seconds (of rise time). For a typical 2.4kW (20A) channel, the inductor is
spec'd to not be less than 500 uSeconds (micro).

I hope you can figure out what inductance this translates to for your
system.

******************************************************************
*        John "Microwaves are for cooking" Flowers    /_/ \/\/   *
*         johnf@scd.scd.com, hplabs!hpscdc!johnf     /           *
*   HP Santa Clara Division, Microwave Counters Manufacturing    *
******************************************************************

hgw@julia.math.ucla.edu (Harold Wong) (11/27/90)

In article <1990Nov24.205337.18959@hayes.ims.alaska.edu> ftpam1@acad3.fai.alaska.edu writes:
>In article <2570007@hppad.HP.COM>, lindner@hppad.HP.COM (Steffen Lindner) writes...
>     I once had occasion to replace the SCR's in a commercial stage light
>controller.  That particular system had toroids (inductors) larger than glazed
>donuts.  I don't remember what the associated capacitors were; the coils were
>so large that they monopolized your attention!
>

Could someone explain the uses of toroids?  Specifically,
	For what purpose should they be used for.
	Where should they be used?
	How should they be used?
	What are the differences between the donut vs bar version?
	How do you determine the size you need?
	Should I wrap all my wires around toroids?

Any inspiration would be appreciated.  Thanks.

Harold

-------------------------------------------------------------------------------

Harold Wong         (213) 825-9040 
UCLA-Mathnet; 3915F MSA; 405 Hilgard Ave.; Los Angeles, CA 90024-1555
ARPA: hgw@math.ucla.edu          BITNET: hgw%math.ucla.edu@INTERBIT

bender@oobleck.Eng.Sun.COM (Michael Bender) (11/27/90)

In article <2570007@hppad.HP.COM> lindner@hppad.HP.COM (Steffen Lindner) writes:
>I would appreciate it if any of you could help me with the following:
>
>Background Information:
>I am trying to built a digitally controlled light dimmer.  This system should
>control about 24 individual channels.  Each channel consists of one or more
>lights (incandescent).  The maximum load on each channel is about 3A.  The
>dimmer must allow a minimum of 16 brightness settings (more would be better).
>The system uses a microcontroller for I/O and triggering the TRIACs.  All
>seems well except that I have not been able to come up with a simple, cost
>effective solution to reduce (eliminate) noise.

A few years ago I built an 8-channel digitally-controlled dimmer.  I used an
8749 for the CPU, and Intel 8254 (right number??) counter/timer chips to
actually control the firing of the Triacs.  A zero-cross detector would feed
the CT chips' reset (clear?) input, a higher-frequency clock would actually
clock the CT chips, and the 8749 would load values into the CT registers,
which determined the duty cycle of the Triac-controlled load.  It worked
quite well.  The CT chips would be used in auto-reload mode, so that every
time they got a reset (clear??) from the zero-cross detector, they would
start counting again; after a programmed number of counts, they would
trigger the Triac and it would turn on for the remainder of the cycle.

mike
--
Won't look like rain,           Won't look like snow,            | DOD #000007
Won't look like fog,            That's all we know!              | AMA #511250
We just can't tell you anymore, We've never made oobleck before! | MSC #298726

ftpam1@acad3.fai.alaska.edu (MUNTS PHILLIP A) (11/28/90)

In article <3450@exodus.Eng.Sun.COM>, bender@oobleck.Eng.Sun.COM (Michael Bender) writes...
> 
>A few years ago I built an 8-channel digitally-controlled dimmer.  I used an
>8749 for the CPU, and Intel 8254 (right number??) counter/timer chips to
>actually control the firing of the Triacs.  A zero-cross detector would feed
>the CT chips' reset (clear?) input, a higher-frequency clock would actually
>clock the CT chips, and the 8749 would load values into the CT registers,
>which determined the duty cycle of the Triac-controlled load.  It worked
>quite well.  The CT chips would be used in auto-reload mode, so that every
>time they got a reset (clear??) from the zero-cross detector, they would
>start counting again; after a programmed number of counts, they would
>trigger the Triac and it would turn on for the remainder of the cycle.
>

     Better yet, use an 8751 and do it all in software.  An 11 MHz 8751 can
support 16 channels at 128 brightness levels.  It also has a serial port for
easy interfacing to a host computer.

     What did you use for a zero-cross detector?  My latest is an AC input
optocoupler, but the current transfer ratio is critical for proper operation.
(8751 port pins require a fair bit of current to pull down.)

Philip Munts N7AHL
NRA Extremist, etc.
University of Alaska, Fairbanks

bender@oobleck.Eng.Sun.COM (Michael Bender) (11/28/90)

In article <1990Nov27.201653.4865@hayes.ims.alaska.edu> ftpam1@acad3.fai.alaska.edu writes:
>In article <3450@exodus.Eng.Sun.COM>, bender@oobleck.Eng.Sun.COM (Michael Bender) writes...
>> 
>>A few years ago I built an 8-channel digitally-controlled dimmer.  I used an
>>8749 for the CPU [...]
>
>     Better yet, use an 8751 and do it all in software.  An 11 MHz 8751 can
>support 16 channels at 128 brightness levels.  It also has a serial port for
>easy interfacing to a host computer.
>
>     What did you use for a zero-cross detector?  My latest is an AC input
>optocoupler, but the current transfer ratio is critical for proper operation.
>(8751 port pins require a fair bit of current to pull down.)

At the time I was doing the dimmer I had an 8048 ICE for my S-100 system.
The 8051 ICE that my school had was under the control of some anal-retentive
type that couldn't see it being used to develop a "mere" light dimmer.
I think that guy is selling used cars now or something...

I used a transistor/resistor off of the p.s. transformer, and as I remember
it wouldn't really switch at the zero-cross point, but just a little after
when the transistor turned on (this was way back before I knew anything
about engineering!), so I couldn't get the triac on for the complete cycle,
but it was close enough that the lights looked like they were full on.  I
had plans to build this great digitally-controlled light board, but never
built more than the first 8 channel card.  Looking back on it, an 8051 would
have been a better processor to use, especially because of the built-in
serial port - I was using an 8-bit parallel connection between my 8048 and
the controlling computer.  I guess you just learn these things as time goes
on (this was in 1984 I think).

mike
--
Won't look like rain,           Won't look like snow,            | DOD #000007
Won't look like fog,            That's all we know!              | AMA #511250
We just can't tell you anymore, We've never made oobleck before! | MSC #298726

rando@ginger.dfrf.nasa.gov (Randy Brumbaugh) (11/28/90)

I also have done some work with light dimmers, mostly trying to 
fix them.  (This newsgroup was very helpful).  Anyway, with
all this talk of digitally controlled light dimmers, I thought
I would throw in a couple of things:

1)  There is a standard for serial, digital dimmer control,
 USITT (US Institute for Theatre Technology) DMX-512.
 It is a 250kbit/sec RS-422/485 serial link.  I have a copy and
 will elaborate if there is any interest.  A light board which
 uses this protocol will control most dimmers on the market, and 
 a dimmer can be controlled by most light boards.

2)  Consider the dimmer curves.  There are four, I think:
 - The control position vs digital output value (In the control
   board).  I think this is usually linear. (i.e. halfway up = 
   128 if the range is 0-255).
 
 - The digital input to the dimmer control circuit vs. the firing
   of the SCR/TRIAC.
 
 - The firing of the SCR vs. average voltage output.  The voltage 
   varies throughout the AC cycle, so this is not as straightforward
   as it might seem.

 - The average voltage to the lamp vs. light output.  This is 
   surprisingly non-linear.  Something like a 10% voltage drop
   gives a 50% light output decrease.  I can look up the exact
   curves if anybody is interested.

 ( I guess there is also light output vs. perceived brightness
   in the human eye, which is not linear.)

 There are several "standard" curves - "linear voltage", "linear
 light", "linear brightness", etc.  Some are preferred by stage, 
 some by TV.
  
 My point is, if you are building a dimmer to mate with an existing
 control board, you can only control the second curve.  Maybe 
 some kind of EPROM, table-look-up would be a good idea.  Maybe a 
 switch to select from 2-3 curves.  Maybe using a timer/counter
 directly happens to work out to a reasonable curve?

  Does anybody have any experience in this area?

  Randy Brumbaugh
  rando@skipper.dfrf.nasa.gov

stevem@specialix.co.uk (Steven Murray) (11/29/90)

rando@skipper.dfrf.nasa.gov (Randy Brumbaugh) writes:
  
> My point is, if you are building a dimmer to mate with an existing
> control board, you can only control the second curve.  Maybe 
> some kind of EPROM, table-look-up would be a good idea.  Maybe a 
> switch to select from 2-3 curves.  Maybe using a timer/counter
> directly happens to work out to a reasonable curve?

>  Does anybody have any experience in this area?

I've been interested in digitally controlled light dimmers for a few years.
I worked for a New Zealand company a couple of years ago, and actually got 
around to MAKING one.  The unit we made was based on the 80C552 which is
a derivative of the 8051.  The first version was just 4 channels with
256 light levels.  The software I wrote allowed 3 phase operation, and
the plan was to make a 12 channel 3 phase unit, but it got vetoed by the
boss.

I had the microprocessor trigger the triacs directly, just as you are
thinking of.  I had a lookup table in EPROM consisting of 256 16 bit
values, where the 16 bit values were reloads for the timer counter,
and the 256 values were the desired brightness levels.  To tell you
the truth, we have only ever used one curve - linear brightness of the
lamp.  This is what the operators wanted and what the control desks put
out, so it is what we delivered.  All adjustment for the non-linearity
of the bulb and triac triggering time was done in the dimmer.
To generate the look-up table to produce the linear brightness curve
I wrote a flash basic program that worked out the amount of energy 
left in each half cycle at each point in time ('area under the curve')
and then allowed for the basic non-linearity of the bulbs - when you
give them just a small phase angle they glow red, but produce little
useful light.

The work we were doing needed 256 light levels.  You can get away with
64 and still have a professional product, as long as you don't intend
to 'Fade' the light - with just 64 levels, it seems to 'Jump' on slow
fades.  On 10 minute fades with 15 watt bulbs in a dark room near the
lower light levels, my boss noticed that my 256 levels 'Jumped' so I
had to redo my software for 1024 levels in the end (by that stage the
boss had also got me to change to a 68705 CPU because it was $1 cheaper
than the best 8051 price at the time).  Soon after that I left the
company because I felt the boss was wasting my time!

Anyway, I wouldn't advise people to try skipping half cycles to dim
lamps - unless the bulb has got a high thermal inertia, it looks
really bad.  All the professional dimmers have good, big torroids for
filtering, too.  A 500us time constant is fantastic - you can get a
good quality system with just 140us torroids.  We used to use EI type
chokes, but they are more than twice the weight and size.  Also, if
you want to drive halogens (through transformers usually) you have
to ensure both positive and negative half cycles have the same trigger
point - different by more than a couple of percent and your transformers
will be very unhappy indeed.

DMX-512 is neat, but the 250kbaud rate makes the software a mite tricky,
especially if you intend to be doing real time triac triggering as well!

 - Regards
   Steven Murray

-- 
Steven Murray
uunet!slxsys!stevem  stevem@specialix.co.uk
I am speaking, but  | If these are your opinions, then we are in agreement!!
not for my employer.| Flames, spelling errors, complaints > /dev/null

tell@oscar.cs.unc.edu (Stephen Tell) (11/30/90)

In article <1990Nov26.181619.9855@xrtll.uucp> rsnider@xrtll.UUCP (Richard Snider) writes:
>In article <2570007@hppad.HP.COM> lindner@hppad.HP.COM (Steffen Lindner) writes:

>While on the topic of problems, depending on the type of incandescent
>lights you are using, you probabbly will need some form of "preheating"
>current through the fillament in the bulbs if you want them to come on
>from some minimum setting without "popping" on.  This is becuase the
>current required to get the filament glowing from a "cold" condition is
>considerably higher than that which is needed to keep it glowing.

I note that its fairly common for lighting designers to build this into their
cues, preheating lamps that are to come on in the next cue at 10% power.
Unless the first cue is very dim, the soft orange glow is hardly noticable on
stage.  This actualy makes the transition happen faster, since the filament is
alreay somewhat warm.  The difference is definitely visible, and for
theatrical work, it depends on the effect you want.  It might also affect bulb
life, I suppose.

Tuning instructions for an analog dimmer I worked on once had you set things
so a 10% control input (1 volt) produced an 18 volt AC output, resulting in a
fairly dim but visible output from a 120 volt lamp.  When turning the control
up from 0, the dimmer output stayed off untill around 8 or 9%, and then came
up quickly to the "preheat" value.  I'm not sure if this was to ensure that
if the analog stuff drifted that 0% was always definitely off, or if it is
related to the cold-filament problem

>					.....Rich
>                                        rsnider@xrtll

--------------------------------------------------------------------
Steve Tell      e-mail: tell@wsmail.cs.unc.edu usmail:  #5L Estes Park apts
CS Grad Student, UNC Chapel Hill.                       Carrboro NC 27510
Former chief engineer, Duke Union Community Television, Durham, NC.

oparadis@oracle.uucp (On G. Paradise) (12/12/90)

Most of the problems with el-cheapo dimmers in those $40 halogen
lamps can be solved by:

1. Adding a resistor in series with the triac gate, to get rid of
   potentiometer backlash.

2. Getting the diac trigger voltage through a double RC network,
   to obtain zero through 360 degrees of conduction.

3. Adding a pi (CLC) network to reduce RFI.

Way back in the '70s, RCA had schematics and values for these in
one of their triac data books. They also mentioned:

4. Connecting a snubber network across the triac (MT1 - MT2) for
   dV/dt control of inductive loads.

My old RCA databooks are long gone.  Can anybody look thses up and post
the values?

On