1、(1)设计时钟电路(2)设计上电复位电路(3)设计开关量信号控制电路(4)电位器电压给定及电压采样电路3.2画出控制原理总图并给出总图中所用元器件的选型清单(清单中应包含序号、元器件名称、规格、单位、数量、单价、合计及总价等)本调光控制器的框图如下:控制部分:为了便于灵活设计,选择可多次写入的可编程器件,本设计方案中选用的是ATMEL公司生产的AT89C51单片机。驱动部分:由于驱动的对象是交流负载,且为了实现连续调节的目的,本电路中采用了无触点开关元件双向可控硅。双向可控硅能够对交流电源的导通进行无触点连续控制,以小电流控制大电流,且动作快、寿命长、可靠性高。负载部分:本电路的负载是白炽灯(
2、纯阻负载)。4.软件部分要控制的对象是50Hz的正弦交流信号,通过同步信号检测电路,将同步信号送至单片机的中断口。单片机接收到同步信号后就启动一个延时程序,延时的具体时间由按键来改变。延时结束后,单片机立即产生触发信号。触发信号可使可控硅导通,电流经过可控硅流过白炽灯,使灯发光。延时越长,亮的时间就越短,灯的亮度越暗。由于延时的长短是由按键决定的,所以实际上就是按键控制了光的强弱。理论上讲,延时时间应该可以是010ms内的任意值。在程序中,将一个周期均分成N等份,每次按键只需要去改变其等份数,在这里,N越大越好,但由于受到单片机本身的限制和基于实际必要性的考虑,只需要分成大约100份左右即可,
3、实际采用的值是95。可控硅的触发脉冲宽度要根据具体的光耦结合示波器观察而定,在本设计中取20 s。程序中使用T1来控制这个时间。对两个调光按键的处理的方式是:短按只调整一个台阶,长按可以连续调整。4.1软件设计:(1)电位器电压给定及电压采样(2)开关量(I/O 端口)输入输出(3)定时器结构定义及延时(4)触发脉冲产生(5)单片机中断及定时器初始化(6)中断子程序(7)主程序4.2交流电源同步信号交流电源同步信号的产生如图2电路所示,图中的同步信号就是我们需要的交流电压过零点信号。各部分波形如图3所示。图中整流后波形中的水平虚线表示光藕P52l输入二极管的门限电压。P521是TLP521的简
4、称,下图是其引脚图。引脚图中器件名的后缀“-1”表示包含一组光藕。2、程序编写(三)系统软硬件联调4.3单片机控制部分:主控单元以AT89C51单片机为核心,交流电压过零点信号提取电路中产生的同步信号SYN接到AT89C5l的INT0,此信号的下降沿将使AT89-C51产生中断,以此为延时时间的起点。三个按键只用于控制一路灯:一个为开关,另外两个分别为提高亮度和降低亮度。74HC573用于输出控制可控硅的导通的触发信号。220V交流主电源导通区间、同步信号和触发信号的时序关系如图6所示。图中的阴影部分表示可控硅的导通区间,它的大小决定了灯的亮度。改变延时时间可改变触发信号和同步信号的相位关系,
5、也改变了可控硅的导通区间的大小,达到调光的目的。1、编写程序流程图4.4驱动单元:图中,L1_D是单片机输出的触发信号,该信号通过光控可控硅MOC3022去驱动可控硅T435。受控的白炽灯接在Ll和零线(图中未画出)之间。MOC3022是DIP-6封装的光控可控硅。其1、2脚分别为二极管的正、负极:4、6脚为输出回路的两端;3、5脚不用连接。如图8所示。T435-400是可控硅,“4”表示主回路电流是4A;“35”表示触发端的最大电流是35mA,一般该端有最大电流的5就可保证可靠地触发。T435-400外型图如图9所示。5、硬件和软件设计过程中存在的问题及改进方法6、程序 ORG 0000H
6、LJMP INIT ORG 000BH ;定时器0用于设定触发角的大小 LJMP TIMER ORG 001BH ;定时器1用于按键消抖延时 LJMP DELAY2MS ORG 0030H /初始化程序 INIT: MOV R3, #13H ;灯光亮度级别寄存器 MOV TMOD,#11H ;定时器的工作模式 SETB ET1 ;允许定时器1 中断 SETB EA ;允许全局中断 SETB ET0 ;允许计时器0中断 MOV TH1,#0B1H MOV TL1,#0E0H ;定时器1赋初值 MOV R0,#00H ;增量键状态寄存器 MOV R1,#00H ;减量键状态寄存器 MOV R2,#
7、00H ;开机键计数 CLR 20 ;开机状态寄存器 /主程序 MAIN: JB P2.2 ,COUNTPOWER ;判断开机键 MAIN1: JB P2.0, MAIN ;判断开机状态 JB P2.1,OPENTIMER ; 判断过零点,如果过零点就开定时器0 JNB P2.3,COUNTADD ; 判断减量键 JNB P2.5,COUNTDEC ;跳到增量子程序 LJMP MAIN /开机键消抖程序 COUNTPOWER:SETB TR1 CJNE R2,#8,MAIN MOV R2,#00H LJMP ONOFF /增量键消抖子程序 COUNTADD: SETB TR1 CJNE R0,
8、#10,MAIN MOV R0,#00H LJMP TURNADD /减量键消抖子程序 COUNTDEC: CJNE R1,#10,MAIN MOV R1,#00H LJMP TURNDEC /开机或关机 ONOFF: CPL 20 CPL P2.2 MOV R5,#0E4H MOV R6,#0DAH MOV TH0,R6 MOV TL0,R5 MOV R3, #13H LJMP MAIN1 /过零点开定时子程序 OPENTIMER: SETB TR0 LJMP MAIN /增量子程序 TURNADD: CJNE R3,#01H,TURNADD1 ;判断是不是最亮级别(最高级别1) LJMP
9、MAIN TURNADD1: DEC R3 ; 亮度级别加1 MOV A,R5 SUBB A,#0CH MOV R5,A MOV A,R6 ADD A,#2 MOV R6,A /减量子程序 TURNDEC: CJNE R3,#13H,TURNDEC1 ;判断是不是亮度最低级别 (最低级别9) TURNDEC1: INC R3 ;亮度级别加1 ADD A,#0CH SUBB A,#2 LJMP MAIN /定时器子程序 TIMER: CLR TR0 MOV TL0,R5 MOV TH0,R6 CLR P2.0 ;给晶闸管出发信号 LCALL DELAY100uS SETB P2.0 ;关闭晶闸管
10、出发信号 RETI /100us延时程序,确保触发信号有效 DELAY100uS: MOV R7,#100 DJNZ R7,$ RET /消抖定时子程序 DELAY2MS: CLR TR1 MOV TH1,#0B1H MOV TL1,#0E0H JNB P2.4,DELAY1 JNB P2.5,DELAY2 JNB P2.3,DELAY3 RETI DELAY1: INC R0 SETB RETI DELAY2: INC R1 SETB TR1 RETI DELAY3: INC R2 SETB TR1 RETI6、结束语本控制器使用了三个开关控制一路灯,主要是为了在教学过程中降低难度。也可改为一个开关控制一路灯,比如短按为开、关,第一次长按为降低亮度,连续的第二次长按为提高亮度等。电路不用改动,只需修改程序即可。学生通过制作该调光控制器,可以掌握单片机、光藕和可控硅等方面的知识和使用技能。由于该调光控制器调光的效果比较好,对提高学生的学习兴趣有很大帮助,教学效果良好。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1