首页> 中国专利> 可变效果照明系统

可变效果照明系统

摘要

一种可变效果照明系统包括灯组件和与该灯组件相连接的灯控制器。灯组件包括多个多色灯,所述多色灯与AC电压源串联,并且彼此串联在一起。每个多色灯包括用于产生第一颜色的光的第一照明元件以及用于产生第二颜色的光的第二照明元件。灯控制器被配置成通过根据预定模式改变每一个所述照明元件的导通时间间隔而改变灯产生的颜色。该控制器还被配置成当所述控制器的用户可操作输入被激活时终止所述改变。

著录项

  • 公开/公告号CN101292575A

    专利类型发明专利

  • 公开/公告日2008-10-22

    原文格式PDF

  • 申请/专利权人 法洛斯创新公司;

    申请/专利号CN200680038563.3

  • 发明设计人 詹姆斯·鲁克斯顿;

    申请日2006-08-16

  • 分类号H05B37/02;G05D25/02;

  • 代理机构中科专利商标代理有限责任公司;

  • 代理人王波波

  • 地址 加拿大安大略省

  • 入库时间 2023-12-17 20:58:06

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2012-12-26

    授权

    授权

  • 2008-12-17

    实质审查的生效

    实质审查的生效

  • 2008-10-22

    公开

    公开

说明书

技术领域

本发明涉及可变效果照明系统。具体地说,本发明涉及一种具有彩灯来产生多种颜色显示的照明系统。

背景技术

可变效果照明系统通常被用于广告、装潢以及装饰性或庆祝性显示。这些照明系统常常包括封装在公共固定装置中的一组彩灯以及控制系统,其中控制系统控制每盏灯的输出强度,以便控制从该固定装置发出的光的颜色。

例如,Kazar(US 5,008,595)公开了这样一种光显示器,其包括多串的双色LED封装,他们并联在公共的DC电压源上。每个双色LED封装包括一对红色和绿色LED,它们背靠背(back-to-back)连接在一起,并且每一串中的双色LED封装通过H电桥电路并联到电压源。与H电桥电路连接的控制电路允许红色和绿色LED每一个交替地导通半个周期,其中根据连接到控制电路的调制输入源来确定每半个周期的导通角。然而,所产生的颜色光的变化速率受限于调制输入源。因此,这种光显示器能产生的颜色显示范围是有限的。

Phares(US 5,420,482)公开了这样一种受控照明系统,其允许实现更大范围的颜色显示。这种照明系统包括控制系统,其将照明数据发送到多个照明模块。每个照明模块包括至少两盏灯以及与这些灯相连接的控制单元,控制单元响应于照明数据来单独地改变从每盏灯发射出来的光的数量。然而,照明数据仅仅控制在任意给定时刻每盏灯的亮度。因此,这种照明系统尤其不适于容易地产生复杂的颜色显示。

Murad(US 4,317,071)公开了一种计算机化的照明系统,用于在输出颜色中产生连续改变。这种照明系统包括多盏不同颜色的灯、低频时钟以及与低频时钟和每盏彩灯相连接的控制电路,其中控制电路用于改变每盏灯所产生的光的强度。然而,灯强度的变化速率由低频时钟的频率规定,并且颜色显示的范围有限。

Gomoluch(GB 2,244,358)公开了一种照明控制系统,其包括照明控制单元以及与该照明控制单元相连接的一串发光单元。照明控制单元包括DC电源单元、微处理器、包含显示位序列的只读存储器、以及用于允许用户选择显示位序列的开关。每个发光单元包括双色LED和数据存储元件,其中每个数据存储元件并联到照明控制单元的DC电源输出,并且串联到微处理器的数据和时钟输出。微处理器以串行方式将选定的位模式按时钟送入存储元件。数据存储元件接收每个数据位,并且点亮或熄灭相关LED。

然而,Gomoluch需要使用复杂的发光单元。因此,仍然需要一种相对简单的可变效果照明系统,这种系统在其能够实现的颜色显示范围中允许更大的改变。

发明内容

根据本发明,提供了一种可变效果照明系统,该系统包括灯组件和连接到该灯组件的灯控制器。

在本发明的第一方面中,灯组件包括多个多色灯,所述多色灯与AC电压源串联,并且彼此串联。每个多色灯包括用于产生第一颜色的光的第一照明元件以及用于产生第二颜色的光的第二照明元件。灯控制器被配置成:通过根据预定模式改变每一个所述照明元件的导通时间间隔而改变灯产生的颜色。该控制器还被配置成当该控制器的用户可操作输入被激活时终止所述改变。

在本发明的第二方面中,灯组件包括多个多色灯,所述多色灯与AC电压源串联,并且彼此串联。每个多色灯包括用于产生第一颜色的光的第一照明元件,以及用于产生第二颜色的光的第二照明元件。灯控制器被配置成:通过根据灯控制器的外部信号输入改变每一个照明元件的导通时间间隔而改变灯产生的颜色。

在本发明的第三方面中,灯组件包括与AC电压源串联并且彼此串联的多个多色灯。每个多色灯包括用于产生第一颜色的光的第一照明元件,以及用于产生第二颜色的光的第二照明元件。灯控制器被配置成:根据电压源的频率来控制每一个所述照明元件的电流走向(current draw)。

在本发明的第四方面中,可变效果照明系统包括:第一灯组件,其包括多个第一多色灯,所述第一多色灯与AC电压源并联,并且彼此串联;和连接到第一灯组件的第一灯控制器,用于控制第一多色灯所产生的第一颜色的光。该照明系统还包括:第二灯组件,其包括多个第二多色灯,所述多个第二多色灯与AC电压源并联,并且彼此串联;和连接到第二灯组件的第二灯控制器,用于控制述第二多色灯所产生的第二颜色的光。第一灯控制器被配置成改变所产生的第一颜色。第二灯控制器被配置成与所产生的第一颜色同步地改变所产生的第二颜色。

在本发明的第五方面中,灯组件包括与DC电压源并联的多个多色灯。每一个多色灯包括用于产生第一颜色的光的第一照明元件,以及用于产生不同于第一颜色的第二颜色的光的第二照明元件。灯控制器包括与所有的第一照明元件相连的第一电子开关,以及与所有第二照明元件相连的第二电子开关。灯控制器被配置成:根据至少一个预定模式来设置每一个照明元件的导通角度。利用所述预定模式来配置所述控制器。

附图说明

现在将参考附图描述本发明的优选实施例,这些实施例仅仅作为示例,附图中:

图1a是根据本发明第一实施例的可变效果照明系统的示意电路图,其中示出了灯控制器、包括一串串联的双色灯的灯组件;

图1b是图1a所示的灯组件的一种变体的示意电路图;

图1c是根据本发明第二实施例的可变效果照明系统的示意电路图;

图1d是根据本发明第三实施例的可变效果照明系统的示意电路图;

图1e是根据本发明第四实施例的可变效果照明系统的示意电路图;

图2a是根据本发明第八实施例的可变效果照明系统的示意电路图,其中灯组件包括一串并联的双色灯;

图2b是图2a所示的灯组件的一种变体的示意电路图;

图2c是根据本发明第九实施例的可变效果照明系统的示意电路图;

图3是根据本发明第十实施例的可变效果照明系统的示意电路图,其中灯控制器直接驱动每盏双色灯;

图4是根据图2所示实施例的一种实现方式的夜明灯;

图5a是根据图3所示实施例的一种实现方式的珠宝件;以及

图5b是根据图3所示实施例的另一种实现方式的钥匙链。

具体实施方式

参考图1a,示出了一般被表示为10的根据本发明第一实施例的可变效果照明系统,并且包括灯组件11和灯控制器12,其中灯控制器12连接到灯组件11,用于设置灯组件11所产生的光的颜色。优选地,灯组件11包括一串多色灯14,他们通过柔性导线互相连接在一起,以允许装饰性照明系统10可以用作装饰用的圣诞树灯饰。然而,多色灯14还可以用实质上刚性的导线来互相连接,或者被固定在实质上刚性的背衬上,用于那些需要灯组件11具有一定硬度的应用中。

多色灯14彼此串联,并且串联到AC电压源16和限流电阻器18。通常,AC电压源16包括通常可获得的60Hz、120V的AC源。然而,在不脱离本发明范围的前提下,也可以使用其他AC电压源。可以理解,灯14的串联排列使得AC电压源16和灯组件11之间不需要降压变压器。限流电阻器18限制了流过灯14的电流的大小。然而,如果使用了足够数目的灯14,或者如果所选择的AC电压源16产生的电压的大小使得灯14不会遭受过多的电流,则可以去除限流电阻器18,

优选地,每盏灯14包括双色LED,其具有用于产生第一颜色的光的第一照明元件和用于产生与第一颜色不同的第二颜色的光的第二照明元件,并且设置每盏灯14的引线,使得当电流在一个方向流过灯14时产生第一颜色的光,而当电流在相反方向流过灯14时产生第二颜色的光。如图1a所示,优选地,每个双色LED包括一对不同颜色的LED 14a、14b,它们背靠背连接在一起,其中第一照明元件包括LED14a,并且第二照明元件包括LED 14b。

在本发明的优选实施例中,第一照明元件产生红光,而第二照明元件产生绿光。然而,如果希望的话,也可以是使用其他的LED颜色。另外,如果希望某一些灯14只改变其各自的颜色输出的强度,灯14中某一些灯的LED 14a、14b可以具有相同的颜色。另外,每盏灯14可以安装有半透明的装饰灯泡,其形状可以是星形、花形,或者可以具有任意其他美观的形状,以获得更多的通用性。

优选地,灯控制器12包括微控制器20、由微控制器20的输出Z控制的双向半导体开关22、以及与微控制器20的输入S连接、用于选择所希望的颜色显示的用户可操作开关24。另外,微控制器20的输入X通过限流电阻器26连接到AC电压源16,用于同步目的,下面将对此进行描述。双向开关22与灯14串联放置,处于限流电阻器18和地之间。在图1a中,双向开关22被示为包括三端开关。然而,在不脱离本发明范围的前提下,也可以使用诸如IGBT和背靠背SCR之类的双向开关。

灯控制器12由与AC电压源16相连接的5伏DC稳压电源28供电,这确保了微控制器20接收稳定的电压供应,以进行正常的操作。然而,为了更多的安全性,灯控制器12还包括与微控制器20的输入Y相连接的电力不足检测器30,用于在微控制器20的供电电压下降到低于可接受的界限时使微控制器20处于稳定的工作模式。

优选地,微控制器20包括非易失性存储器,利用优选的数个导通角度模式来对该存储器编程或将这些模式“烧入”其中,用于根据所选择的模式来设置双向开关22的导通角度。以这种方式,可以选择LED 14a、14b的导通角度(因此,可以选择双色灯14生成的颜色显示)。或者,微控制器20可以被“硬接线(hard wired)”有一个或多个导通角度模式的专用集成电路(ASIC)代替。

优选的颜色显示包括但不限于:

1、在红色、琥珀色和绿色之间的连续慢速颜色变化

2、在红色、琥珀色和绿色之间的连续快速颜色变化

3、红色和绿色的连续交替闪烁

4、红色和绿色的连续随机闪烁

5、仅有红色的连续照明

6、红色强度的连续变化

7、仅有红色的连续闪烁

8、仅有绿色的连续照明

9、绿色强度的连续变化

10、仅有绿色的连续闪烁

11、红色和绿色的连续照明,以产生琥珀色

12、任意前述颜色显示的组合

然而,可以理解,微控制器20只需要用单个导通角度模式来编程就能运行。另外,微控制器20只需要利用用户接口(未示出)来就地编程,这增加了灵活性。显而易见的是,如果微控制器20只被编程有单个导通角度模式,可以从灯控制器12中去除用户可操作的开关24。另外,即使微控制器20被编程有多个导通角度模式,如果微控制器20自动在各个导通角度模式之间切换,也可以去除用户可操作的开关24。或者,用户可操作的开关24可以被时钟电路代替,该时钟电路向微控制器20发出信号,以根据时间来切换导通角度模式。

现在描述可变效果照明系统10的操作。在照明系统10接通电源之前,微控制器20被编程有至少一个导通角度模式。或者,在接通电源之后使用上述用户接口来对微控制器20编程。一旦通过AC电压源16加了电,5伏稳压电源28就向微控制器20和电力不足检测器30供电。

在电力不足检测器30在输入Y处向微控制器20提供信号通知电源28已经达到微控制器20足以正常工作的阈值之后,微控制器20开始执行用于实现默认导通角度模式的指令。然而,如果由于用户激活用户可操作开关24而导致在输入S处检测到状态改变,则微控制器20将开始执行用于实现下一导通角度模式的指令。例如,如果微控制器正在执行用于实现上述第三导通角度模式的指令,则用户可操作开关24的激活将使微控制器20执行用于实现第四导通角度模式的指令。

为了易于解释,出于便利,假设LED 14a是红色LED而LED 14b是绿色LED。出于便利,该假设选择了上述第一导通角度模式。从下面的描述中,本领域的技术人员将容易理解照明系统10保持导通角度模式的操作。

在选择了导通角度模式之后,无论这种选择是默认的还是由于用户可操作开关24的激活引起的,微控制器20都将开始监视在微控制器20的输入X处接收到的AC信号。一旦检测到AC电压源16的正向过零点,微控制器20就延迟预定的一段时间。在这段预定时间过去后,微控制器20向双向开关22发出脉冲,使双向开关22在箭头32所示的方向导通电流。结果,红色LED 14a点亮,直至AC电压源16的下一过零点出现。另外,当LED 14a导通电流时,增加LED 14a的预定时间段,以便为AC电压源16的下一正向过零点做准备。

在输入X处检测到AC电压源16的负向过零点后,微控制器20再次延迟预定的一段时间。在这段预定的时间过去后,微控制器20向双向开关22发出脉冲,使双向开关22在箭头34所示的方向导通电流。结果,绿色LED 14点亮,直至AC电压源16的下一过零点出现。另外,当LED 14b导通电流时,减小LED 14b的预定时间段,以便为AC电压源16的下一负向过零点做准备。

对于上述导通角度顺序,显而易见的是,每个周期中其中红色LED14a点亮的时间段将不断减小,而每个周期中其中绿色LED 14b点亮的时间段将不断增加。因此,从双色灯14发出的光的颜色将逐渐从红色改变为琥珀色,直至变为绿色,其中当LED 14a、14b都导通时,灯14a发出的光的颜色由LED 14a的导通角度的大小与LED 14b的导通角度的大小的瞬时比率确定。

当绿色LED 14b的导通角度达到180°时,导通角度模式反转,从而从双色灯14发出的光的颜色从绿色变为琥珀色,最终又变回红色。可以理解,如果希望的话,灯14的每个导通元件的最大导通角度可以被设置为小于180°。

在本发明的优选实施方式中,微控制器20包括MicrochipPIC12C508微控制器。在管脚3处检测AC电压源16的过零点,在管脚7处检测用户可操作开关24的状态,并且由管脚6控制双向开关22。电力不足检测器30连接到管脚4。

表A中示出了用于利用Microchip PIC12C508来生成导通角度模式1、2和3的示例汇编代码列表。

TABLE A

;Constants

    AC_IN EQU 4;GP4(pin 3)is AC input pin X

    TRIGGER_OUT EQU 1;GP1(pin 6)is Triac Trigger pin Z

    BUTTON EQU 0;GP0(pin 7)is input pin S and is active low

    delay_dim EQU 0x007

    dim_val EQU 0x008

    trigger_delay EQU 0x009

    DELAY1 EQU 0x00A

    DELAY2 EQU 0x00B

    DELAY3 EQU 0x00C

    RED_INTENSITY EQU 0x00D

    SUBTRACT_REG EQU 0x00E

    DELAY5 EQU 0x00F

    FLASH_COUNT EQU 0x010

    FLASH_COUNT_SHAD EQU 0x011

    FADE_DELAY EQU 0x012

    org 0;    RESET vector location

    movwf OSCCAL;move data from W register to OSCCAL

    goto START

DELAY;       subroutine to delay 83 usec * register W

   movwf dim_val;

LOOP1

   movlw.27

   movwf delay_dim

LOOP2;delay 83 usec

   decfsz delay_dim,1

   goto LOOP2

   decfsz dim_val,1

    goto LOOP1

return

TRIGGER;       subroutine to send trigger pulse to triac

    bsf GPIO,TRIGGER_OUT

               movLw b′00010001′

               TRIS GPIO;     send trigger to triac

    movlw.30

    movwf trigger_delay

LOOP3

    decfsz trigger_delay,1

    goto LOOP3;          delay 30 usec

              movlw b′00010011′

              TRIS GPIO;remove trigger from triac

return

DELAY_SEC

    movlw.4

    movwf DELAY3;       set DELAY3

SEC2

    movlw.250

    movwf DELAY2;       set DELAY2

QUART_SEC2

    movlw.250

    movwf DELAY1;       set DELAY1

MSEC2

    clrwdt;    clear Watchdog timer

    decfsz DELAY1,1;   wait DELAY1

    goto MSEC2

    decfsz DELAY2,1;   wait DELAY2*DELAY1

    goto QUART_SEC2

    decfsz DELAY3,1:   wait DELAY3*DELAY2*DELAY1

    goto SEC2

return

FADE_SUB;subroutine to vary conduction angle for triac

          each half cycle

UP_LOOP ;increase delay before triac starts to conduct

          each negative half cycle while decreasing delay

          each positive half cycle

   btfss GPIO,AC_IN

   goto UP_LOOP;       wait for positive swing on AC input

WAIT_NEG1

   call  WAIT_NEG_EDGE1;  increase delay before turning triac on each

                           negative half cycle

NO_CHANGE

    movlw.90;           register W=maximum delay value

                          before triac turns on

    subwf RED_INTENSITY,0

    btfsc STATUS,Z

    goto WAIT_NEG2;      if RED_INTENSITY is equal to maximum delay

                          value,start increasing delay value

    movf RED_INTENSITY,0

    btfss GPIO,BUTTON

return;                  return if Button depressed

    call DELAY;          delay RED_INTENSITY*83 usec

    call TRIGGER;        send trigger pulse to triac

NAIN_LOOP2

    btfsc GPIO,AC_IN

    goto MAIN_LOOP2;wait for negative swing on AC input

WAIT_POS_EDGE1

    btfss GPIO,AC_IN

    goto WAIT_POS_EDGE1; wait for positive swing on AC input

    movlw.96

    movwf SUBTRACT_REG ; SUBTRACT_REG=maximum delay value+

                          minimum delay value before triac turns on

    movf RED_INTENSITY,0

    subwf SUETRACT_REG,0

    call DELAY;          delay(SUBTRACT_RED-RED_INTENSITY)*83 usec

    call TRIGGER;        send trigger pulse to triac

    goto UP_LOOP

DOWN_LOOP

    btfss GPIO,AC_IN

    goto DOWN_LOOP;wait for positive swing on AC input

WAIT_NEG2

    call WAIT_NEG_EDGE2; decrease delay before triac turns on each

                          negative half cycle

NO_CHNGE2

    movlw.6

    subwf RED_INTENSITY,0;register W=RED_INTENSITY-minimum delay

                            value

    btfsc STATUS,Z

    goto WAIT_NEG1;      if RED_INTENSITY is equal to minimum delay

                          value,start increasing delay

    movf RED_INTENSITY,0

    btfss GPIO,BUTTON

return;                 return if Button depressed

    call DELAY;         delay RED_INTENSITY*83 usec

    call TRIGGER;       send trigger pulse to triac

MAIN_LOOP3

    btfsc GPIO,AC_IN

    goto MAIN_LOOP3;wait for negative swing on AC input

WAIT_POS_EDGE2

    btfss GPIO,AC_IN

    goto WAIT_POS_EDGE2;        wait for positive swing on AC input

    movlw.96

    movwf SUBTRACT_REG;         SUBTRACT_REG =maximum delay value before

                             triac turns on

    movf RED_INTENSITY,0

    subwf SUBTRACT_REG,0

    call DELAY;           delay(SUBTRACT_REG-RED_INTENSITY)* 83 usec

    call TRIGGER;         send trigger pulse to triac

    goto DOWN_LOOP

return

WAIT_NEG_EDGE1;routine to increase delay before triac turns

              ;on each negative half cycle

    btfsc GPIO,AC_IN;  wait for negative swing on AC input

    goto WAIT_NEG_EDGE1

    decfsz DELAY5,1;   DELAY5=fade delay(number of cycles at present delay)

                         value;decrement and return if not zero

return

    incf RED_INTENSITY,1;  otherwise,increment delay and return

    movf FADE_DELAY,0

    movwf DELAY5

return

WAIT_NEG_EDGE2;             routine to decrease delay before triac turns

                             on each negative half cycle

    btfsc GPIO,AC_IN;  wait for negative swing on AC input

    goto WAIT_NEG_EDGE2

    decfsz DELAY5,1;   DELAY5=number of cycles at present delay value;

decrement and return if not zero

    return

        decf RED_INTENSITY,1;    otherwise decrement delay and return

        movf FADE_DELAY,0

        movwf DELAY5;             DELAY5=FADE_DELAY

return

FLASH_SUB;                  subroutine to flash lights at speed dictated by

                             value assigned to FLASH_COUNT_SHAD

     movf FLASH_COUNT_SHAD,0

     movwf FLASH_COUNT;         FLASH_COUNT=duration of flash

MAIN_LOOP4

     btfsc CPIO,AC_IN;         wait for negative swing on AC input

     goto MAIN_LOOP4

WAIT_POS_EDGE4

     btfsc GPIO,AC_IN

     goto WAIT_POS_EDGE4;       wait for positive swing on AC input

     movlw.6

    call DELAY

    call TRIGGER;            send trigger pulse to triac

    btfss GPIO,BUTTON

return;                      return if Button pressed

    decfsz FLASH_COUNT

    goto MAIN_LOOP4;         decrement FLASH_COUNT and repeat until zero

    movf FLASH_COUNT_SHAD,0

    movwf FLASH_COUNT;       reset FLASH_COUNT

DOWN_LOOP4

    btfss GPIO,AC_IN;       wait for positive swing on AC input

    goto DOWN_LOOP4

WAIT_NEG_EDGE4

    btfsc GPIO,AC_IN

    goto WAIT_NEG_EDGE4;     wait for negative swing on AC input

    movlw.6

    call DELAY

    call TRIGGER              send trigger pulse to triac

    btfss GPIO,BUTTON

return;                      return if Button pressed

    decfsz FLASH__COUNT

    goto DOWN_LOOP4;         decrement FLASH_COUNT and repeat until zero

return

START

    movlw b′00010011′

    TRIS GPIO;  set pins GP4(AC input),GP1(Triac output to high

                 impedance),GP0(Button as input)

    movlw b′10010111′;enable pullups on GP0,GP1,GP3

OPTION

    movlw.4

    movwf RED_INTENSITY;     load RED_INTENSITY register

    movlw.5

    movwf DELAY5;            set initial fade

FADE_SLOW

    call DELAY_SEC;    wait DELAY3*DELAY2*DELAY1

    movlw.5

    movwf  FADE_DELAY; set slow FADE_DELAY

    call FADE_SUB;     slowly fade colours until Button is pressed

    goto FADE_FAST

FADE_FAST

    call DELAY_SEC;    wait DELAY3*DELAY2*DELAY1

    movlw.1

    movwf FADE_DELAY;  set fast FADE_DELAY

    call FADE_SUB;     rapidly fade colours until Button is pressed

   goto FLASH2_SEC

FLASH2_SEC;flash red/green 2 sec interval

    call DELAY_SEC;    wait DELAY3*DELAY2*DELAY1

    movlw.120

    movwf FLASH_COUNT_SHAD

FLASH2B_SEC

    btfss GPIO,BUTTON

    goto FLASH1_SEC;   slowly flash lights until Button is pressed

    call FLASH_SUB

    goto FLASH2B_SEC

FLASH1_SEC;flash red/green 1 sec.interval

    call DELAY_SEC;    wait DELAY3*DELAY2*DELAY1

    movlw.60

    movwf FLASH_COUNT_SHAD

FLASH1B_SEC

    btfss GPIO,BUTTON

    goto FLASH_FAST;   flash lights at moderate speed until

                        Button is pressed

    call FLASH_SUB

    goto FLASH1B_SEC

FLASH_FAST;flash red/green 0.25 sec.interval

    call DELAY_SEC;    wait DELAY3*DELAY2*DELAY1

    movlw.15

    movwf FLASH_COUNT_SHAD

FLASH_FASTB

    btfss GPIO,BUTTON

    goto FADE_SLOW;    rapidly flash lights until Button is pressed

    call  FLASH_SUB;   slowly fade colours if Button is pressed

    goto FLASH_FASTB

end

照明系统10的许多变体也是可以的。在一种变体(未示出)中,用户可操作开关24被温度传感器代替,该温度传感器连接到微控制器20的输入S,用于根据环境温度来改变导通角度模式。或者,灯控制器12包括多个温度传感器,每一个都对不同的温度范围敏感,并且连接到微控制器20的各个输入。利用这种变体,在环境温度落入一个范围内就产生一种颜色显示,而当环境温度落入不同范围时就产生另一种颜色显示。

在另一种变体中,灯控制器12包括与微控制器20的适当输入相连接的运动或接近传感器。利用这种变体,在检测到运动或目标(诸如人)时就产生一种颜色显示,而在没有检测到运动或目标时就产生另一种颜色显示。

在另一种变体(未示出)中,每盏灯14包括一对LED,其中一个能够发射白光,而另一个能够产生白光之外的其他颜色的光。在另一种变体中,每盏灯14包括能够产生三种或更多种不同颜色的光的LED,而在图1b所示的变体中,每盏灯14包括三个或多个不同颜色的LED。在这后两种变体中,LED是如此连接的:当电流在一个方向流动时,产生一种颜色的光,而当电流在相反方向流动时,则产生另一种颜色的光。

图1c中示出了照明系统的第二实施例。如图所示,灯控制器12包括两个双向开关22a、22b,它们每一个分别连接到微控制器20的输出Z1、Z2。灯组件11包括两串(11a、11b)串联且背靠背连接的LED 14a、14b,每一串11a、11b连接到AC电压源16,并且分别连接到双向开关22a、22b之一。在这种变体中,每盏多色灯14包括第一串11a中的一对背靠背连接的LED 14a、14b以及第二串11b中的一对背靠背连接的LED 14a、14b,其中每盏灯14中的LED装入到各自的半透明装饰灯泡中。结果,从每个灯泡发出的光的颜色取决于两串11a、11b中LED 14a、14b的导通角度的瞬时比率。优选地,输出Z1、Z2可独立地操作来增加颜色显示的范围。

在一种变体中,灯控制器12类似于图1c所示的灯控制器12,其中,该灯控制器包括两个双向开关22a、22b,它们每一个都分别连接到微控制器20的可独立操作的输出Z1、Z2。然而,与图1c所示的灯控制器12不同,灯组件11包括两串串联的单色灯14:第一串11a和第二串11b。如上,第一串11a中每盏单色灯14与第二串11b中的单色灯14相关联,每一对相关联的灯被装入各自的半透明装饰灯泡中。

图1d示出了照明系统的第三实施例。如图所示,照明系统10”’包括RC通电电路30’,用于使微控制器20在接通电源时处于已知状态,并且包括连接到微控制器20的EEPROM 21,用于保存识别所选择的导通角度模式的数据元素,从而照明系统10”’在接通电源之后实现预先选择的导通角度模式。显而易见的是,EEPROM 21可以被实现为微控制器20的一部分。

照明系统10”’的灯控制器12”’的双向半导体开关22”’包括闸流管23和二极管H电桥22d。闸流管22c在其门极处连接到微控制器20的输出Z。二极管H电桥22d连接在闸流管22c的阳极和灯组件11之间。二极管H电桥22d包括两条臂,每一条臂由两个串联二极管组成,并且1兆欧的电阻器连接在一条二极管臂和信号地之间,用来向微控制器20提供由于二极管电桥22d的正常工作而带来的固定的电压参考。双向开关22”’以类似于半导体开关22的方式运行,但是因为闸流管的成本一般低于三端开关的成本,所以是有利的。

图1e示出了照明系统的第四实施例。如图所示,照明系统10iv的灯控制器12iv的双向半导体开关22iv包括闸流管22c、二极管H电桥22d和二极管导向段(diode steering section)22e。闸流管22c在其门极处连接到微控制器20的输出Z。二极管H电桥22d连接到闸流管22c的阳极,并且二极管导向段22e连接在二极管H电桥22d和灯组件11之间。

二极管导向段22e包括与第一限流电阻器串联的第一导向二极管以及与第二限流电阻器串联的第二导向二极管。如图所示,第一导向二极管在其阳极处连接到二极管H电桥22d,并且在其阴极处连接到第一限流电阻器。第二导向二极管在其阴极处连接到二极管H电桥22d,并且在其阳极处连接到第二限流电阻器。

在操作中,当电流从电压源通过灯14在第一方向流动时,电流被第一导向二极管导向通过第一限流电阻器。当电流从电压源通过灯14在第二方向(相反方向)流动时,电流被第二导向二极管导向通过第二限流电阻器。

通常,LED 14a的正向电压可能不同于LED 14b的正向电压。结果,通常,由LED 14a所导通的电流可能不同于LED 14b所导通的电流。因此,LED 14a所产生的光强度可能不同于LED 14b所产生的光强度。另外,即使LED 14a的正向电压与LED 14b的正向电压相同,LED 14a所产生的光强度仍可能不同于LED 14b所产生的光强度。利用二极管导向段22e,通过适当地选择第一和第二限流电阻器的值,可以使LED 14a所产生的光强度与LED 14b所产生的光强度匹配。

虽然图1e中将二极管导向段22e示为与二极管H电桥22d分离的电路,但是通过将二极管导向段22e中的第一和第二限流电阻器移到二极管H电桥22d的各臂中,并去除第一和第二导向二极管,二极管导向段22e的功能可以结合在二极管H电桥22d中。在这种变体中,H电桥22d中的二极管实际上将执行与第一和第二导向二极管相同的功能。

另外,二极管导向段22e的第一和第二限流电阻器在图1e中被示为固定电阻。然而,可以去除闸流管22c和二极管H电桥22d,并且第一和第二限流电阻器可以被由微控制器20控制的电可变电阻器代替。在后一种变体中,可以控制每盏灯14所产生的强度/颜色,而不必计算每个照明元件14a、14b的导通时间间隔。

就前面的讨论而言,假设了AC电压源的频率是常数。在表A所示的汇编代码列表中所实现的算法中,假设了AC电压源的频率恒定为60Hz。实际上,AC电压源的频率可能不是常数。或者,AC电压源的频率可以是不同于60Hz的常数。例如,在某些国家中,AC电压是以大约50Hz的频率传送到家庭的。在这些情形中,利用表A所示汇编代码列表实现的算法来配置的灯控制器12将产生不可预知的结果,这是因为由该算法对电压源的每个半周期所计算的剩余导通时间间隔将不能反映出实际的剩余导通时间间隔。

具体地说,如果电压源的频率低于预期频率,则电压源的周期将长于预期周期。将会达到这样一点,在该点处,算法假定LED 14a完全打开而LED 14b完全关闭,因此在这一点处算法将开始反转(即,将减小LED 14a的导通时间间隔而增加LED 14b的导通时间间隔)。然而,在这一点处,LED 14a没有完全打开,而LED 14b也没有完全关闭。结果,每盏灯14所产生的颜色将不是预期颜色。

相反,如果电压源的频率高于预期频率,则电压源的周期将短于预期周期。将会达到这样一点,在该点处,LED 14a完全打开而LED 14b完全关闭。然而,在该点处,算法将假定LED 14a没有完全打开而LED14b也没有完全关闭,因此在这一点处算法将继续增加LED 14a的导通时间间隔而继续减小LED 14b的导通时间间隔。结果,LED 14a、14b将在电压周期的错误的半周期中被打开,由此产生不可预知的视觉显示。

因此,与假定固定的源电压频率的算法不同,优选地,(照明系统的任一前述实施例中的)灯控制器12所实现的算法测量AC源电压的过0伏点之间的时间段,并使用测得的时间段来计算AC源电压的线路频率。通过使用计算得到的线路频率,算法能够精确地跟踪在AC电压的每个半周期期间LED 14的实际导通时间间隔。算法可以在逐一周期的基础上计算线路频率。然而,为了实现更高的精度,算法在数个AC电压周期上计算线路频率。

到本发明说明书的目前为止,用户可操作开关24用于在不同的导通角度模式之间循环。根据本发明的第五实施例,仅利用单个导通角度算法来配置等控制器,例如连续的颜色改变或连续的强度变化,而且用户可操作开关24用于开始/停止导通角度的改变。结果,用户能够通过在灯控制器已经产生期望的颜色或强度时压下用户可操作开关24,根据期望来固定或设置灯组件所产生的颜色或强度。如上文,优选地,当用户可操作开关24被激活使得灯控制器12再次执行所选择的颜色或强度时,当前的导通角度被存储在EEPROM中。使用已存储的导通角度,在去除电源后,再次施加到照明系统。

如果用户希望选择不同的颜色或强度,则用户再次压下用户可操作开关24,从而致使导通角度算法恢复颜色或强度的改变。当灯控制器已经产生新的所希望的颜色或强度时,用户再次按下用户可操作开关24。

下文在表B中列出了使用Microchip PIC12F629作为微控制器时用于固定期望的颜色的示例汇编代码列表。

TABLE B

;The program consists of a fade routine in which the conduction angles of

;two sets of series-connected LEDs(connected back-to-back)are changed.

;During the SCR trigger pulse,the user-operable switch 24 is monitorsd.

;Activation of the switch 24 toggles a FLAG.If the switch 24 is pressed

;when the fade is occurring,the current conduction angles are kept

;steady.These values are also stored in EEPROM so that the information

;is retained in the event of a power loss.On power up,the previous

;state is retrieved from the EEPROM.

LIST P=12f629,F=INHX8M

      LIST FREE

  #include″p12f629.inc″

;Constants

Start_Stop EQU 0

Button EQU 0;Button on GPIO,0

AC_IN EQU 5;AC input on GPIO,5

TRIGGER_OUT EQU 1;Triac Trigger on GPIO,1

min_intensity EQU.80;values for min and max delays of trigger pulse

max_intensity EQU.30

Flag_Address EQU 0;location where start/stop status is stored

Intensity_Address EQU 1;location where current intensity is stored

Position_Address EQU 2;location which says where in the fade routine program was;

stopped

;variables

delay_dim EQU 0x020

dim_val EQU 0x021

trigger_delay EQU 0x022

RED_INTENSITY EQU 0x023

SUBTRACT_REG EQU 0x024

DELAY5 EQU 0x025

FADE_DELAY EQU 0x026

FLAG EQU 0x027

Dlay EQU 0x028

DELAY1 equ 0x029

DELAY2 equ 0x02a

DELAY3 equ 0x02b

ADDRESS equ 0x02C

DATA_B equ 0x02D

POSITION EQU 0x02E

       ORG     0x000           ;processor reset vector

       goto    start           ;go to beginning of program

org 0x007

WAIT_NEG_EDGE1;wait here till negative going pulse

       btfsc GPIO,AC_IN

       goto WAIT_NEG_EDGE1

       decfsz DELAY5,1;after FADE_DELAY counted down,increase RED_INTENSITY

       return

       btfss FLAG,Start_Stop;if flag set,don′t fade

                             ;(i.e.don′tincrement intensity register)

       incf RED_INTENSITY,1

       movf FADE_DELAY,0

       movwf DELAY5

       return

WAIT_NEG_EDGE2

       btfsc GPIO,AC_IN

       goto WAIT_NEG_EDGE2

       decfsz DELAY5,1;after FADE_DELAY counted down,decrease RED_INTENSITY

       return

       btfss FLAG,Start_Stop;if flag set,don′t decrement intensity register

       decf RED_INTENSITY,1

       movf FADE_DELAY,0

       movwf DELAY5

       return

start

       call   0x3FF          ;retrieve factory calibration value

       bsf    STATUS,RP0    ;set file register bank to 1

       movwf  OSCCAL         ;update register with factory cal value

       movlw b′00000001′   ;enable pullup on GPIO,0

       movwf WPU

       bcf    STATUS,RP0    ;set file register bank to 0

       bcf FLAG,Start_Stop;reset fade stop flag

       movlw b′00000111′

       movwf CMCON

       movlw b′00101011′;GP0 button input,GP1 trigger SCR

                          ;GP3 Reset,GP5 A.C.timing pulse

       TRIS GPIO

       movlw b′00011111′;prescale wdt 128,

       OPTION

       movlw max_intensity

       movwf RED_INTENSITY

       movlw.7;

       movwf DELAY5;counter for FADE_DELAY determines fade speed

       movwf FADE_DELAY

       movlw Flag_Address;check state(1=fade stopped,0=fade)

       movwf ADDRESS

      call EE_READ

      movf DATA_B,0

      movwf FLAG;only one bit used so can use reg.

      btfss FLAG,Start_Stop;if fade stopped get intensity

      goto FADE_SLOWB;otherwise continue

      movlw Intensity_Address

      movwf ADDRESS;get intensity value

      call EE_READ

      movf DATA_B,0

      movwf RED_INTENSITY

      movlw Position_Address;find out where in program it was stopped

      movwf ADDRESS

      call EE_READ

      movf DATA_B,0

      movwf POSITION         ;save position in POSITION variable

      movlw.1        ;determine where in programtoo jump to

      subwf POSITION,0

      btfsc STATUS,Z

      call POSITION1

      movlw.2

      subwf POSITION,0

      btfsc STATUS,Z

      call POSITION2

      movlw.3

      subwf POSITION,0

      btfsc STATUS,Z

      call POSITION3

      movlw.4

      subwf POSITION,0

      btfsc STATUS,Z

      call POSITION4

FADE_SLOWB;fade between colors

      movlw.7;determines fade speed ie.1 would be a fast fade

      movwf FADE_DELAY

      call WAIT_NEG1;

      movlw max_intensity

      movwf RED_INTENSITY

      goto FADE_SLOWB

DELAY

      movwf dim_val;used to set up time to trigger scr

LOOP1

      movlw.27

      movwf delay_dim

LOOP2 decfsz delay_dim,1

      goto LOOP2

      decfsz dim_val,1

      goto LOOP1

      return

EE_READ;routines to read and write to EEPROM

      movf ADDRESS,0

      bsf STATUS,RP0

      movwf EEADR

      bsf EECON1,RD

      movf EEDATA,w

      bcf STATUS,RP0

      movwf DATA_B

      return

EE_WRITE

      movf DATA_B,0

      bsf STATUS,RP0

      movwf EEDATA

      bcf STATUS,RP0

      movf ADDRESS,0

      bsf STATUS,RP0

      movwf EEADR

      bsf EECON1,WREN

      movlw 55h

      movwf EECON2

      movlw 0x0AA

      movwf EECON2

      bsf EECON1,WR

Write_Loop

      btfsc EECON1,WR

      goto Write_Loop;stay in loop till complete

      bcf EECON1,WREN

      bcf STATUS,RP0

      return

Check_Button

      movlw.4;check button and debounce

      movwf DELAY3

SEC2

      movlw.25

      movwf DELAY2

QUART_SEC2

      movlw.250

      movwf DELAY1

MSEC2

      clrwdt

      decfsz DELAY1,1

      goto MSEC2

      decfsz DELAY2,1

      goto QUART_SEC2

      decfsz DELAY3,1

      goto SEC2

      btfss GPIO,Button

      goto $-1

      movlw.4

      movwf DELAY3

SEC3

      movlw.250

      movwf DELAY2

QUART_SEC3

      movlw.25

      movwf DELAY1

MSEC3

      clrwdt

      decfsz DELAY1,1

      goto MSEC3

      decfsz DELAY2,1

      goto QUART_SEC3

      decfsz DELAY3,1

      goto SEC3

      movlw b′00000001′;when button pressed toggle flag from stopped

                            ;to fade position

      xorwf FLAG.1

      movlw Flag_Address

      movwf ADDRESS

      movf FLAG,0

      movwf DATA_B

      call EE_WRITE;save values in EEPROM

      movlw Intensity_Address

      movwf ADDRESS

      movf RED_INTENSITY,0

      movwf DATA_B

      call EE_WRITE

      movlw Position_Address

      movwf ADDRESS

      movf POSITION,0

      movwf DATA_B

      call EE_WRITE

      return

TRIGGER    ;trigger pulse to SCR

           ;button press is checked during each trigger pulse

       clrwdt

       bsf GPIO,TRIGGER_OUT

       movlw b′00101001′;

       TRIS GPIO

       movlw.30

       movwf trigger_delay

LOOP3

       decfsz trigger_delay ,1

       goto LOOP3

       bcf GPIO,TRIGGER_OUT

       movlw b′00101011′;

       TRIS GPIO

       btfss GPIO ,Button;if button pressed check it

       call Check_Button

       return

FADE_SUB;subroutine for fading(4 positions in fade sequence)

UP_LOOP

POSITION1

       movlw.1

       movwf POSITION

       btfss GPIO,AC_IN;

       goto UP_LOOP;RED LOOP

WAIT_NEG1

       call WAIT_NEG_EDGE1

NO_CHANGE

       movlw min_intensity;

       subwf RED_INTENSITY,0

       btfsc STATUS,Z

       goto WAIT_EEG2;DOWN_LOOP

       movf RED_INTENSITY,0;(RED_INTENSITY-min_intensity)

       call DELAY

       call TRIGGER

MAIN_LOOP2

       btfsc GPIO,AC_IN

       goto MAIN_LOOP2

WAIT_POS_EDGE1

       btfss GPIO,AC_IN

       goto WAIT_POS_EDGE1

       movlw max_intensity

       call DELAY

       call TRIGGER

       goto UP_LOOP

DOWN_LOOP

POSITION2

       movlw.2

       movwf POSITION

       btfss GPIO,AC_IN

       goto DOWN_LOOP

WAIT_NEG2

       call WAIT_NEG_EDGE2

NO_CHANGE2

       movlw max_intensity

       subwf RED_INTENSITY,0

       btfsc STATUS,Z

       goto GREEN_DOWN_RED_ON

       movf RED_INTENSITY,0

       call DELAY

       call TRIGGER

MAIN_LOOP3

       btfsc GPIO,AC_IN;

       goto MAIN_LOOP3

WAIT_POS_EDGE2

       btfss GPIO,AC_IN

       goto WAIT_POS_EDGE2

       movlw max_intensity

       call DELAY

       call TRIGGER

       goto DOWN_LOOP

GREEN_DOWN_RED_ON

       movlw min_intensity

       movwf RED_INTENSITY

       goto WAIT_NEG2C

GREEN_DOWN_RED_ONB

POSITION3

       movlw.3

       movwf POSITION

       btfss GPIO,AC_IN;

       goto GREEN_DOWN_RED_ONB

WAIT_NEG2C

       call WAIT_NEG_EDGE2

NO_CHANGE2C

       movlw max_intensity

       subwf RED_INTENSITY,0

       btfsc STATUS,Z

       goto WAIT_NEG1C

       movlw max_intensity

       call DELAY

       call TRIGGER

MAIN_LOOP3C

       btfsc GPIO,AC_IN

       goto MAIN_LOOP3C

WAIT_POS_EDGE2C

      btfss GPIO,AC_IN

      goto WAIT_POS_EDGE2C

      movlw min_intensity+max_intensity

      movwf SUBTRACT_REG

      movf RED_INTENSITY,0

      subwf SUBTRACT_REG,0

      call DELAY

      call TRIGGER

      goto GREEN_DOWN_RED_ONB

GREEN_UP_RED_ON

POSITION4

      movlw.4

      movwf POSITION

      btfss GPIO,AC_IN;

      goto GREEN_UP_RED_ON

WAIT_NEG1C

      call WAIT_NEG_EDGE1

NO_CHANGEC

      movlw min_intensity

      subwf RED_INTENSITY,0

      btfss STATUS,Z

      goto Continue_Loop

      movlw max_intensity;start over

      movwf RED_INTENSITY

      goto WAIT_NEG1

Continue_Loop

      movlw max_intensity

      call DELAY

      call TRIGGER

MAIN_LOOP2C

      btfsc GPIO,AC_IN;

      goto MAIN_LOOP2C

WAIT_POS_EDGE1C

      btfss GPIO,AC_IN

      goto WAIT_POS_EDGE1C

      movlw max_intensity+min_intensity

      movwf SUBTRACT_REG

      movf RED_INTENSITY,0

      subwf SUBTRACT_REG,0

      call DELAY

      call TRIGGER

      goto GREEN_UP_RED_ON

            ;

end

在第六实施例中(未示出),灯控制器包括两个用户可操作输入,并实现了第五实施例中的颜色/强度选择算法以及第一至第四实施例中的多个导通角度模式算法两者。在这个第六实施例中,用于可操作输入之一用于选择期望的导通角度模式,而另一个用户可操作输入用于在期望的点处开始/停止所选择的导通角度模式。

每一个前述实施例的固有优点在于它们都是自同步的。例如,在每个前述实施例中,如果多个灯控制器由公共的AC电压源供电,并且配置有相同的预定显示模式,则每个相应的灯组件所产生的视觉显示将与其他灯组件所产生的视觉显示同步。这样,例如在家庭环境中,数个120V AC插座并联到相同的电压源,即使相应的灯控制器插到不同的插座中,所有的灯组件也会彼此同步。

在每一个上述示例算法中,RED_INTENSITY变量的值在WAIT_NEG_EDGE1和WAIT_NEG_EDGE2子例程的FADE_DELAY次迭代后增大/减小。由于RED_INTENSITY变量的值确定了每一个LED 14的导通时间间隔,灯组件产生的颜色的变化速率由分配给FADE_DELAY变量的值所固定。在第七实施例中,颜色的变化速率不是固定的,而是由灯控制器外部的信号源来确定。在这个实施例中,该算法根据外部信号来增大/减小分配给RED_INTENSITY变量的值,而不是由WAIT_NEG_EDGE1和WAIT_NEG_EDGE2子例程以预定速率增大/减小RED_INTENSITY变量的值。优选地,分配给RED_INTENSITY变量的值基于施加给灯控制器的数字信号,例如DMX信号。然而,在一个变体中,微控制器包括模数转换器,而且分配给RED_INTENSITY变量的值基于施加到该模数转换器的输入端的模拟信号的幅值。这个实施例的优点是,用户不会被限制在预定的视觉效果集中,而是可以基于施加到灯控制器的外部电信号来控制灯组件所产生的视觉效果。

转向图2a,示出了根据本发明第八实施例的可变效果照明系统,其被一般地示为110,并且包括灯组件111和灯控制器112,其中灯控制器112连接到灯组件111,用于设置灯组件111所产生的光的颜色。

灯组件111包括彼此并联的一串多色灯114。多色灯114还并联到AC/DC变压器116,AC/DC变压器116连接到AC电压源。每盏灯114包括双色LED,该双色LED具有用于产生第一颜色的光的第一照明元件以及用于产生与第一颜色不同的第二颜色的光的第二照明元件,其中配置每盏灯114的引线,使得当电流通过一条引线流动时产生第一颜色的光,而当电流通过另一条引线流动时产生第二颜色的光。如图2a所示,优选地,每个双色LED包括第一和第二不同颜色的LED114a、114b,它们串联到各自的限流电阻器118,并且LED114的公共的阴极接地,并且第一照明元件包括第一LED114a,第二照明元件包括第二LED 114b。

AC/DC变压器116产生大小足以向灯114供电而又不会损坏灯114的DC输出电压。通常,AC/DC变压器116在其输入处接收120伏的AC,并且产生大约5V DC的输出电压。

优选地,控制器112还由AC/DC变压器116的输出进行供电,并且包括微控制器20、由微控制器20的输出Z1控制的第一半导体开关122、由微控制器20的输出Z2控制的第二半导体开关123、以及用户可操作开关24,其中用户可操作开关24连接到微控制器20的输入S,用于选择所希望的颜色显示。如上所述,如果希望的话,可以去除用户可操作开关24。在图2a中,半导体开关122、123被示为包括MOSFET开关。然而,在不脱离本发明范围的前提下,也可以使用其他半导体开关。

第一半导体开关122连接在AC/DC变压器116的输出和第一LED114a的阳极之间(通过第一限流电阻器118),而第二半导体开关123连接在AC/DC变压器116的输出和第二LED114b的阳极之间(通过第二限流电阻器118)。然而,LED114a、114b的阳极可以不连接到AC/DC变压器的输出,而是第一和第二半导体开关122、123连接在各个阴极和地之间。对本领域的技术人员而言,关于半导体开关122、123的放置的其他变体是显而易见的。

与前述实施例一样,微控制器20包括非易失性存储器,优选地,其被编程有数个导通角度序列,用于根据所选择的序列来设置半导体开关122、123的点亮角度。以这种方式,可以选择LED114a、114b的导通角度,并且因此可以选择灯114所生成的最终颜色显示。或者,如上所述,微控制器20可以被“硬接线”有一个或多个导通角度序列的专用集成电路(ASIC)代替。

可变效果照明系统110的操作类似于可变效果照明系统10的操作。在向AC/DC变压器16供电之后,微控制器20开始执行用于实现一种导通角度序列的指令。还是假设选择了上述第一导通角度序列,微控制器20向第一半导体开关122发出信号,使第一LED114a点亮。在预定的时间段过去后,去除发送给第一半导体开关122的信号,使第一LED114a熄灭。当LED114a正在导通电流时,减小第一LED114a的预定时间段,以便为下一周期做准备。

然后,微控制器20向第二半导体开关123发出信号,使第二LED114b点亮。在预定的时间段过去之后,去除发送给第二半导体开关123的信号,使第二LED114b熄灭。当第二LED114b正在导通电流时,增加第二LED114b的预定时间段,以便为下一周期做准备。

对于上述导通角度序列,显而易见的是,每个周期中其中第一LED114a点亮的时间段将不断减小,而每个周期中其中第二LED114b点亮的时间段将不断增加。因此,从灯114发出的光的颜色将逐渐从第一LED114a的颜色改变为第二LED114b的颜色,其中,当LED114a、114b都导通时,从灯114发出的光的颜色由第一LED114a的导通时间段的大小与第二LED114b的导通时间段的大小的瞬时比率确定。

照明系统110的许多变体也是可以的。在一种变体中,每盏灯114包括一对LED,其中一个能够发射白光,而另一个能够产生白光之外的其他颜色的光。在另一种变体中,每盏灯114包括能够产生三种或更多种不同颜色的光的LED,而在图2b所示的变体中,每盏灯114包括三个或多个不同颜色的LED。在这后两种变体中,LED是如此连接的:当电流流过一个半导体开关时,产生一种颜色的光,而当电流流过另一半导体开关时,则产生另一种颜色的光。

图2c示出了照明系统的第九实施例。如图所示,控制器112包括由微控制器20的输出Z1驱动的第一对电子开关122a、122b以及由微控制器20的输出Z2驱动的第二对电子开关123a、123b。每盏灯114的每一对第一和第二LED 114a、114b背靠背连接在一起,从而将灯114和半导体开关122、123配置为H电桥。如上所述,优选地,第一和第二LED 114a、114b产生不同的颜色,尽管本发明并不局限于此。

参考图3,示出了根据本发明第十实施例的可变效果照明系统,其被一般地示作210,并且包括多色灯214以及灯控制器212,其中灯控制器212连接到多色灯214,用于设置灯214所产生的光的颜色。多色灯214包括双色LED,其具有用于产生第一颜色的光的第一照明元件以及用于产生与第一颜色不同的第二颜色的光的第二照明元件。如图3所示,优选地,第一照明元件包括红色LED 214a,并且第二照明元件包括绿色LED 214b,其中LED 214a、214b的公共的阴极接地。如上所述,如果希望的话,还可以使用多色LED和/或不同颜色的分立LED的排列和/或半透明装饰灯泡。

灯控制器212由9伏电池216供电,并且包括微控制器20和用户可操作开关24,其中用户可操作开关24连接到微控制器20的输入S,用于选择所希望的颜色显示。或者,对于其中空间非常宝贵的应用,灯控制器212可以由产生更小电压的较小电池供电。如果必要,较小的电池可以通过电压放大器(诸如DC到DC的变压器)连接到灯控制器212。

如上所述,微控制器20可以被“硬接线”有一个或多个导通角度序列的专用集成电路(ASIC)代替。同样,如果希望的话,也可以去除用户可操作开关24。

微控制器20的输入Z1连接到红色LED 214a的阳极,并且微控制器20的输出Z2连接到绿色LED 214b的阳极。因为灯214是由微控制器20直接驱动的,所以变色装饰照明系统210局限于只需要少量灯214的应用。

从前面的讨论中,可以容易地清楚可变效果照明系统210的操作,因此不需进行描述。

参考图4,示出了夜明灯310,其包括上述的可变效果照明系统110,但是只包括单个的多色灯114,外壳340包住灯控制器112和AC/DC变压器116,并且半透明灯泡342覆盖住灯114并紧固到外壳340。优选地,外壳340还包括环境光传感器344,其连接到微控制器20,用于在环境光的强度超过阈值时禁止灯114导通。

在图5a中,示出了戒指形状的珠宝件410,其包括上述的可变效果照明系统210,并且外壳440中装有灯214、灯控制器212和电池216。外壳440的部分442是半透明的,以使光能够从灯214发射出去。在图5b中,示出了钥匙链510,其包括变色装置照明系统210,并且外壳540中装有灯214、灯控制器212和电池216。外壳540的部分542是半透明的,以使光能够从灯214发射出去。钥匙扣544连接到外壳540,以装住钥匙。珠宝件410和钥匙链510都可以可选地包括用户可操作输入,用于选择导通角度模式。

本发明由所附权利要求限定,前面的讨论描述了本发明的优选实施例。尽管这里没有明确建议,但是本领域的普通技术人员可以想象出对所述实施例的某些修改,而这些修改不会脱离由所附权利要求所限定的本发明的范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号