基于Proteus的数字调光系统设计
2013-11-23杜宇上钟积星徐小明
杜宇上,钟积星,徐小明
(1.华南师范大学 物理与电信工程学院,广东 广州 510006;2.广东工业大学 实验教学部,广东 广州,510006;3.广东工业大学 物理与光电工程学院,广东 广州 510006)
照明电路在很多应用场合下需要进行亮度调节,亮度调节通常利用可控硅来实现。数字调光系统包含了可控硅、单片机及相关的模拟电子技术和数字电子技术内容。将数字调光系统引入电子技术实验教学中,作为学生基于研发设计的学习内容[1],有助于促进学生对电子技术知识的综合运用,提高了学生解决问题能力,调动了学生学习兴趣。
Proteus是Labcenter Electronics公司研发的EDA工具软件。采用基于Proteus的仿真平台进行实验教学是探索电子技术实验教学改革的一种途径,已越来越受到国内外很多著名大学关注[2]。Proteus克服了以往在实验箱上进行验证性实验的一些弊端,减少了教学开支,易于操作,提高了实验设计效率,有助于提高学生学习的积极性、自主性和培养学生的创新能力[3]。本文提出一种以Proteus为仿真平台的数字调光系统设计方案。
1 数字调光原理
数字调光是在系统输入电源电压不变的情况下,通过改变调光信号来控制灯具的发光和熄灭时间,利用人眼的视觉积分特性实现亮度调节[4]。采用可控硅可实现灯光的亮度调节[5]。可控硅是应用极为广泛的半导体功率开关元件,它具有导通和关断两种状态[6]。本系统采用双向可控硅,当双向可控硅门极出现触发信号时可使双向可控硅导通[7]。
当可控硅两端承受正弦波电压,从正弦波电压过零点开始到使可控硅导通的触发信号出现,这一区间称为触发角,而可控硅触发后在该半周期中的导通区间称为导通角[8]。如图1所示:Ui为系统输入电源电压,设其有效值为U;Ug为双向可控硅门极触发信号;Ud为双向可控硅输出负载两端的工作电压。可控硅的触发角为α,且0<α<π,导通角为(α~π)。可控硅工作时相关信号波形见图1。
图1 可控硅工作时相关波形
由式(1)可知,改变双向可控硅的触发角α就可改变其负载的平均工作电压。而调光电路中负载为灯具,可通过改变双向可控硅的触发角α来改变灯具的平均工作电压以实现调光。在1个周期中,触发信号越早出现,触发角α就越小,即导通角越大,灯具的平均工作电压UD则越大,灯具亮度就被提高。反之,则灯具亮度被降低。
本文的数字调光系统就是利用单片机等数字电路模块产生双向可控硅导通触发信号,以及控制该触发信号出现的时间,进行双向可控硅触发角和导通角的调节控制,实现灯具亮度的调节。
2 系统设计
本系统实现100级亮度,开机默认亮度为50。亮度值由键盘设置,用两位LED数码管显示。图2所示为数字调光系统的结构框图。图3所示为在Proteus平台上构建的数字调光系统电路。
图2 系统结构框图
2.1 单片机的选择
单片机需要完成4个主要的功能:(1)扫描键盘状态,根据键盘状态确定调光亮度值的大小;(2)向LED显示模块输出调光亮度值,并控制LED模块的显示;(3)接收过零检测模块发送的过零信号;(4)当出现过零信号时,根据亮度值控制可控硅的触发时间,使可控硅定时导通,实现调光。
由于单片机需要执行键盘扫描、过零检测和亮度显示、可控硅导通控制等功能,而单片机AT89C52具有时钟中断和外部中断,也能实现键盘状态的循环扫描以及数据的输入和输出[10],可见它能完成调光系统所需要的控制行为;同时,系统输入的电源电压为220V市电,其频率为50Hz,其半周期为1ms,设置100个亮度等级的单位时间为10ns,单片机AT89C52使用12MHz晶振,普通模式下一般单指令处理时间为1ns,小于10 ns。因此使用单片机AT89C52便能满足调光要求。
2.2 键盘扫描的实现
键盘模块采用的是4×4键盘[10],与图3中的单片机P2口相接。单片机实现键盘功能的程序流程如图4所示。其中,变量Key用于存储所有按键的当前状态,变量i对应P2口8个引脚的位置。单片机先使P2口高四位引脚P2.7—P2.4为低电平,低四位引脚P2.3—P2.0为高电平,延迟10个指令周期后再读出P2口的状态,如果P2口的各个引脚状态都没发生变化,则认为没有按键按下,此时所有按键都关闭;若P2口有引脚的电平发生变化,则先延迟40个指令周期进行按键抖动检测后,单片机再扫描按键状态。单片机扫描按键状态是从P2口高四位的P2.4引脚开始,依次把P2口的高四位引脚P2.7—P2.4中的每一引脚变为低电平,保持其他3个引脚为高电平,同时扫描检测P2口低四位引脚P2.3—P2.0电平的高低状态,并逐次保存记录,最后获得16个按键的开关状态。
图3 在Proteus平台上构建的系统电路
图4 键盘扫描流程图
2.3 调光值显示的实现
显示模块采用Proteus软件中的4位一体7段LED数码管。LED数码管采用动态显示方法[11],即分时轮流选通各位数码管的公共端,使各位数码管轮流在显示字段上得到显示字形码。这种方法提高了数码管的发光效率,简化了系统线路。
本调光系统把4位LED数码管的所有笔画段(即数码管引脚A、B、C、D、E、F、G和 DP)与图3中的单片机P0口相连,由P0口控制输出单个显示数字的内容。引脚P1.0—P1.3分别与各位数码管的公共端(即数码管引脚1、2、3、4)相连,控制LED数码管显示的位置,当P1.0为低电平,P1.1、P1.2、P1.3为高电平时,显示LED数码管的第1位,如此类推。P1.0、P1.1、P1.2、P1.3依次单独为低电平,快速轮流控制四位LED数码管显示的位置,由于人眼有暂存记忆,刷新频率比较高,所以看起来并不会闪烁。
单片机实现LED数码管显示调光值的程序流程图如图5所示。其中,变量curLED作为当前显示位置的标志。设计系统时,令curLED分别为0或者1,对应显示千位或者百位,由于调光亮度值为0~99,LED数码管显示千位和百位为预留位,因此设定curLED不会出现0和1的状态,设其初值为2。若curLED为2,显示十位上的数字;若curLED为3,显示个位数的数字;其他情况下均不在任何位置显示任何数字,全部熄灭。
图5 LED数码管显示控制流程图
2.4 过零检测及亮度调节的实现
由于可控硅调光是通过改变可控硅的触发角和导通角来实现的,并以该点为时间基准点,所以调光系统中单片机必须检测主回路电源电压的过零点。
电压过零点由过零检测模块检测。过零检测模块由变压器、二极管、三极管等元器件组成。图3中的变压器TR1将220V电源电压降低,二极管D1、D2、D3、D4构成整流桥[12]对降压后的正弦交流电压信号进行整流,当该整流电压下降到低于三极管Q1的截止电压时,Q1截止,其集电极输出高电平,即输出过零信号。图3中三极管Q1的集电极经非门7404输入到单片机引脚P3.2。非门的作用是将过零信号中的高电平脉冲转变成低电平脉冲,方便单片机使用引脚P3.2进行下降沿中断检测过零信号的出现。
当单片机检测到过零信号时,由引脚P3.3发出信号,经限流电阻R3使可控硅截止,并打开定时器T1,定时时间由键盘设置的亮度值决定。当定时器T1定时中断结束时,单片机引脚P3.3发出触发信号令可控硅导通。这样,实现了由键盘输入的亮度值决定可控硅导通时间,从而引起灯泡每个工作周期平均工作电压的变化,达到亮度调节和改变的目的。单片机实现定时器T1中断并产生触发信号的流程如图6所示,TH1、TL1分别表示定时器T1计数初始值的高8位和低8位。
220V交流电下的工作环境应该选择耐压大于交流电的最大瞬时电压的双向可控硅。在Proteus元件库中选择耐压值为400V、型号是L4004L3的双向可控硅。L4004L3维持电流比较小,又能通过足够大的负载电流,保证灯泡能够正常工作。图3中为实时观测灯泡L1工作电压和工作电流的变化,接上了虚拟的交流电流表和交流电压表。
图6 定时器中断及触发可控硅导通流程图
3 系统仿真
电路系统通过Proteus和Keil软件相结合,进行仿真调试[13]。首先根据图2所示系统结构图和调光系统的功能要求,以及图4、图5、图6所示的流程图,在单片机工具软件KeilμVision3中编写整个项目工程的程序代码,并编译得到HEX文件。在图3所示的Proteus界面中单击选择AT89C52单片机组件,打开属性窗口;设置单片机的晶振频率为12MHz,源文件确定为在Keil编译好的HEX文件。
启动仿真运行电路,修改设定的亮度值,查看虚拟示波器显示的波形图。图7所示是设定亮度为50时的虚拟示波器的波形图。图7中示波器显示的4个通道波形从上到下分别为:通道A(Channel A)波形为系统输入的220V电源电压经变压、整流后的波形;通道B(Channel B)波形为过零检测电路输出的过零信号,它随电源电压过零点的出现而出现;通道C(Chan-nel C)波形为过零检测电路输出的过零信号通过非门后转换成的负脉冲信号;通道D(Channel D)波形为可控硅控制下的灯泡两端的电压波形。从图7中灯泡两端电压波形可知,当亮度为50时,可控硅在1个周期内基本实现一半时间导通,一半时间截止。
图7 调光亮度为50的仿真结果
综合测试结果表明,亮度设定值基本与灯泡的导通时间相符,如表1所示,系统基本达到了预期的目标。通过仿真调试可知,基于Proteus的数字调光系统是可行的。
表1 各亮度设定值对应灯泡导通时间比值
4 结论
(1)实验教学中将科学技术与社会、生活相结合,有利于激发学生的学习兴趣,使学生认识到科学技术对生产和生活的作用,培养热爱科学技术与热爱生活的态度[14]。将数字调光系统作为电子技术实验教学内容,和生产、生活实际紧密联系,有助于提高学生的学习兴趣,促进学生将“学”与“用”相结合。
(2)数字调光系统涉及单片机、可控硅、LED数码管显示和有关的模拟电子技术和数字电子技术知识。将数字调光系统作为电子技术实验教学内容,有利于培养学生综合运用电子技术知识的能力。
(3)以Proteus软件作为调光系统的设计工具,在实验教学中具有可行性,可减少教学成本,可提高学生学习效率和学习积极性,也拓展了高等院校电子技术创新型实验教学的教学内容和策略。
(
)
[1]顾少轩,郭丽玲,雷丽文,等.材料科学与工程专业综合性实验的PBL教学[J].教育教学论坛,2012(17):145-146.
[2]董增文,胡瑢华,刘国平.机电控制器类课程虚拟实验系统的研究与开发[J].实验技术与管理,2011,28(8):53-56.
[3]高强,倪维晨,谷海青.基于Proteus设计电子台历的单片机教学[J].实验技术与管理,2011,28(7):88-90,105.
[4]刘震,耿海,孙永魁,等.无汞平面荧光灯数字调光电路的设计与实现[J].真空电子技术,2009(6):55-59.
[5]郑永驹.单片机观众席调光台的设计[J].华南师范大学学报:自然科学版,1995(2):81-86.
[6]肖虹,景彦君,李倩.可控硅模拟演示教具的设计与制作[J].实验室科学,2012,15(4):171-173.
[7]郭津,葛良安,毛昭祺,等.用于传统双向可控硅 (TRIAC)调光器的 LED驱动方案比较[J].照明工程学报,2011,22(4):65-70.
[8]蔡海燕.探索晶闸管在直流电动机调速方法[J].数字技术与应用,2012(2):15-16.
[9]肖化.现代电源技术[M].广州:华南理工大学出版社,1996:10.
[10]张齐,杜群贵.单片机应用系统设计技术:基于C语言编程[M].北京:电子工业出版社,2007:4-5,280-284.
[11]华强LED网.LED数码管的静动态显示设计方案[EB/OL].[2012-09-19].http://led.hqew.com/tech/26894.html.
[12]华成英,童诗白.模拟电子技术基础[M].4版.北京:高等教育出版社,2006:514-522.
[13]王海燕,杨艳华.Proteus和Keil软件在单片机实验教学中的应用[J].实验室研究与探索,2012,31(5):88-91.
[14]张志颖,张晓燕,余丹.“STS教育”理念下的高校教学模式改革的探讨[J].长春理工大学学报:社会科学版,2011,24(9):123-125.