基于ZigBee的LED灯调光控制器设计与实现_第1页
基于ZigBee的LED灯调光控制器设计与实现_第2页
基于ZigBee的LED灯调光控制器设计与实现_第3页
基于ZigBee的LED灯调光控制器设计与实现_第4页
基于ZigBee的LED灯调光控制器设计与实现_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、5 基于ZigBee技术的LED灯调光控制器设计与实现5.1 概述LED(Light Emitting Diode),发光二极管,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一个支架上,一端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。半导体晶片由两部分组成,一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个P-N结。当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这

2、就是LED灯发光的原理。而光的波长也就是光的颜色,是由形成P-N结的材料决定的。LED灯最大的优点就是节能环保。光的发光效率达到100流明/瓦以上,普通的白炽灯只能达到40流明/瓦,节能灯也就在70流明/瓦左右徘徊。所以,同样的瓦数,LED灯效果会比白炽灯和节能灯亮很多。1瓦LED灯亮度相当于2瓦左右的节能灯, 5瓦LED灯1000小时耗电5度,LED灯寿命可以达到5万小时,LED灯无辐射。随着社会经济的发展,对LED灯的需求越来越高。所以在物联网智能家居、智慧照明系统中研究基于ZigBee的LED灯驱动控制显得非常重要。5.2 LED灯驱动电路研究设计采用电容降压电路是一种常见的小电流电源电

3、路,由于其具有体积小成本低电流相对恒定等优点,也常应用于LED的驱动电路中。图5-1为一个实际的采用电容降压的LED驱动电路:请注意,大部分应用电路中没有连接压敏电阻或瞬变电压抑制晶体管,建议连接上,因压敏电阻或瞬变电压抑制晶体管能在电压突变瞬间(如雷电大用电设备起动等)有效地将突变电流泄放,从而保护二级关和其它晶体管,它们的响应时间一般在微毫秒级。图5-1 LED驱动原理图电路工作原理:电容C1的作用为降压和限流:大家都知道,电容的特性是通交流隔直流,当电容连接于交流电路中时,其容抗计算公式为:  XC=1/2fC式中,XC表示电容的容抗f表示输入交流电源的频率C表示降压

4、电容的容量。流过电容降压电路的电流计算公式为:I = U/XC式中I表示流过电容的电流U表示电源电压XC表示电容的容抗。在220V50Hz的交流电路中,当负载电压远远小于220V时,电流与电容的关系式为:I=69C,其中电容的单位为uF,电流的单位为mA表5-1为在220V50Hz的交流电路中,理论电流与实际测量电流的比较。表5-1 在220V50Hz的交流电路中理论电流与实际测量电流的比较 电阻R1为泄放电阻,其作用为:当正弦波在最大峰值时刻被切断时,电容C1上的残存电荷无法释放,会长久存在,在维修时如果人体接触到C1的金属部分,有强烈的触电可能,而电阻R1的存在,能将残

5、存的电荷泄放掉,从而保证人机安全。泄放电阻的阻值与电容的大小有关,一般电容的容量越大,残存的电荷就越多,泄放电阻就阻值就要选小些。经验数据如表5-2,供设计时参考:表5-2 泄放电阻的阻值与电容对比表D1D4的作用是整流,其作用是将交流电整流为脉动直流电压。C2C3的作用为滤波,其作用是将整流后的脉动直流电压滤波成平稳直流电压。压敏电阻(或瞬变电压抑制晶体管)的作用是将输入电源中瞬间的脉冲高压电压对地泄放掉,从而保护LED不被瞬间高压击穿。LED串联的数量视其正向导通电压(Vf)而定,在220V AC电路中,最多可以达到80个左右。组件选择:电容的耐压一般要求大于输入电源电压的峰值,在220V

6、,50Hz的交流电路中时,可以选择耐压为400伏以上的涤纶电容或纸介质电容。D1D4可以选择IN4007。滤波电容C2C3的耐压根据负载电压而定,一般为负载电压的1.2倍。其电容容量视负载电流的大小而定。5.3 LED灯调光电路设计(1)12V直流电源设计12V直流电源设计主要是AC220到DC12V的转换(如图5-2所示)。在下图中采用了LNK306芯片。LNK306在一片IC上面集成了一个700 V的功率MOSFET、振荡器、简单的开/关控制电路、高压开关电流源、频率调制、逐周期的电流限制及过温保护电路。图5-2 AC220到DC12V的转换电路输入级由保险电阻F1、二极管D10和D11、

7、电容C18和C21以及电感L2组成。电阻F1为阻燃可熔的绕线电阻,它同时具备多个功能:a)将整流管D10和D11的浪涌电流限制在安全的范围;b)差模噪声的衰减;c)在其它任何元件出现短路故障时,充当输入保险丝的功能(元件故障时必须安全开路,不应产生任何冒烟、冒火及过热发光现象)。功率处理级由LNK306、续流二极管D13、输出电感L1及输出电容C19构成。电容C19是输出滤波电容,其主要功能是限制输出电压纹波。输出电压的纹波最主要取决于输出电容的ESR而非电容的容量。二极管D13和D12的正向导通压降是相同的。因此,C22两端的电压会跟踪输出电压。连接到LNK306 FB引脚由R26和R27组

8、成的电阻分压器对C22的电压进行检测及稳压。(2)CC2530单片机外围电路设计1)CC2530单片机电源设计LED灯需要12V直流电源,但是CC2530工作需要3.3V直流电源,所以这里还需要进行DC12V到DC3.3V的转换。这里采用电源芯片BM1117-3.3,该芯片可以输入DC12V,输出DC3.3V。电路设计如图5-3所示:图5-3 3.3V直流电源设计图该电路图只是在输入输出端分别加入了滤波电容。2) CC2530单片机电路设计芯片的RF-P和RF-N引脚为天线接入引脚,M1为天线接入端;为了节省模块以及控制板的空间尺寸,这里采用PCB天线设计。芯片的P10P17作为2位数码管模块

9、的阴极驱动引脚;芯片的P00P01作为2位数码管模块的阳极驱动引脚;芯片的P02作为4个LED灯指示灯的驱动引脚;芯片的P06作为按键AD输入;芯片的P03作为蜂鸣器控制引脚、P04作为继电器控制引脚。CC2530模块设计原理图如图5-4所示。图5-4 CC2530单片机电路设计图(3)基于PWM的LED调光电路设计1) PWM简介脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。脉冲宽度调制是一种模拟控制方式,其根据相应载荷的

10、变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字信号对模拟电路进行控制的一种非常有效的技术。PWM控制技术以其控制简单、灵活和动态响应好的优点而成为电力电子技术最广泛应用的控制方式,也是人们研究的热点。随着电子技术的发展,出现了多种PWM技术,其中包括:相电压控制PWM、脉宽PWM法、随机PWM、SPWM法、线电压控制PWM等。2)PWM控制LED亮度原理对于控制LED灯由亮到暗或由暗到亮,采用的是脉宽PWM法。它是把每一脉冲宽度均相等的脉冲列作PWM波形,通过改变脉冲列的周期可以调频

11、,改变脉冲的宽度或占空比可以调压,采用适当控制方法即可使电压与频率协调变化。可以通过调整PWM的周期、PWM的占空比而达到控制电流的目的。这次设计利用单片机产生占空比可变的矩形波,当产生此矩形波的I/O通过滤波电路再与LED灯相连接后,由于输出矩形波占空比不断变化,那么一个周期内有一部分时间LED导通,一部分时间截止,从整体来看有一个平均电压,因为PWM信号频率周期很高,我们无法通过肉眼来观察到每一个周期LED灯亮灭的变化过程,所以通过平均电压的方式来决定LED灯的亮的程度。随着波形占空比的不断变化,LED灯也会有着由暗到亮或由亮到暗的不断变化。如图5-5所示。单片机通过PWM调节灯光亮暗基本

12、原理电路图:图5-5 CC2530单片机PWM驱动LED电路设计这里加了一个三极管和MOS管来驱动LED灯,以达到加强亮度的目的。3)PWM驱动电路结构PWM电路的特点是频率高、效率高、功率密度高、可靠性高、然而由于开关器件工作在高频通断状态,高频的快速瞬变过程本身就是一电磁骚扰源,它产生的EMI信号有很宽的频率范围,又有一定的幅度。如图5-6所示,为PWM驱动电路结构。图5-6 利用PWM信号控制LED亮度的驱动电路5.4 软件设计(1)ZigBee协议栈Z-STACK是美国德州仪器(简称“TI”)公司推出的支持ZigBee标准的协议栈,具有开源、稳定可靠等特点,本案将采用此协议栈进行开发。

13、打开Z-STACK协议栈任何一工程均有如图5-7所示。图5-7 Z-STACK结构图APP(Application Programming):应用层目录,这是用户创建各种不同工程的区域,在这个目录中包含了应用层的内容和这个项目的主要内容,在协议栈里面一般是以操作系统的任务实现的。HAL(Hardware (H/W) Abstraction Layer):硬件层目录,包含有与硬件相关的配置和驱动及操作函数。MAC:MAC 层目录,包含了MAC 层的参数配置文件及其MAC 的LIB 库的函数接口文件。MT(Monitor Test):实现通过串口可控各层,于各层进行直接交互。NWK(ZigBee

14、Network Layer):网络层目录,含网络层配置参数文件及网络层库的函数接口文件,APS 层库的函数接口。OSAL(Operating System (OS) Abstraction Layer):协议栈的操作系统。Profile:AF(Application Framework) 层目录,包含AF 层处理函数文件。Security:安全层目录,安全层处理函数,比如加密函数等。Services:地址处理函数目录,包括着地址模式的定义及地址处理函数。Tools:工程配置目录,包括空间划分及ZStack 相关配置信息。ZDO(ZigBee Device Objects):ZDO 目录。ZMa

15、c: MAC 层目录,包括MAC 层参数配置及MAC 层LIB 库函数回调处理函数。ZMain:主函数目录,包括入口函数及硬件配置文件。Output:输出文件目录,这个EW8051 IDE 自动生成的。(2)PWM驱动LED灯驱动设计调节LED灯亮度本案采用PWM输出模式来实现。PWM的产生这里采用定时器3来定时实现。Timer34int();/定时器3初始化PERCFG |= 0x20;/Timer3管脚关联P1SEL |= 0x40;/P16功能选择P1DIR |= 0x40;/P16设置为输出P1_6 = 0;/P16置零有必要研究下定时器3初始化函数(在hal_timer34.c源文件

16、中)。static void Timer3int( void )T3CTL &= TIMER34_TICK_BIT;/清除分频位T3CTL |= TIMER3_TICK;/置分频系数T3CTL &= TIMER34_OVFIM;/关溢出中断/中断是否开启#if defined(TIMER3_INTERRUPT_EN)&&(TIMER3_INTERRUPT_EN = ENABLE)T3CTL |= TIMER34_OVFIM; /溢出中断开启#endif/设置定时器工作模式T3CTL = (T3CTL&(TIMER34_MODE_BIT)|TIMER3_M

17、ODE; #if defined(TIMER3_CHANNEL0_EN) && (TIMER3_CHANNEL0_EN = ENABLE) timer3Channel0Int();#endif#if defined(TIMER3_CHANNEL1_EN) && (TIMER3_CHANNEL1_EN = ENABLE) timer3Channel1Int();#endif_interrupt void TIMER3_ISR(void) if( TIMIF & 0x01 )/T3OVFIF溢出中断 TIMIF &= 0x01; if( TIMIF

18、& 0x02 )/T3CH0IF TIMIF &= 0x02 if( TIMIF & 0x04 )/T3CH1IF TIMIF &= 0x04 关于LED灯亮度的控制方式主要采用P16输出PWM的频率确定,只需要改变T3CC0寄存器的值即可实现。/*/函数原型:void ChangT3Cmp0Val( unsigned char ch )/功能:改变定时器3的比较值/输入:比较值/返回:无/*void ChangT3Cmp0Val( unsigned char ch )Timer3Stop();/停止定时器3T3CC0 = ch;/为T3CC0赋值Timer3Start();/启动定时器3那么在使用过程中只需要调用该函数,改变函数参数即可实时改变PWM的输出频率,本案采用上位机控制的方式。if

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论