作息时间控制器的设计
可编程作息时间控制器设计单片机课程设计
单片机系统课程设计成绩评定表设计课题:可编程作息时间控制器设计学院名称:电气工程学院专业班级:学生姓名:学号:指导教师:设计地点:设计时间:单片机系统课程设计课程设计名称:可编程作息时间控制器设计专业班级:学生姓名:学号:指导教师:课程设计地点:课程设计时间:单片机系统课程设计任务书1、引言 (1)1.1研究背景和用途 (3)1.2设计思想及基本功能 (3)1.3研究内容及采方法 (3)(1)主要研究内容 (3)(2)主要采用方法 (4)2、总体设计方案 (4)2.1 方案选取 (4)2.2系统框图 (4)2.3系统工作原理 (5)3、硬件电路及芯片介绍 (5)3.1 AT89C51单片机 (5)3.2 1602LCD液晶显示器 (8)3.3其他重要元件 (9)(1) 独立式键盘的接口电路: (9)(2)蜂鸣器: (10)3.4硬件电路设计图 (11)4、系统软件设计 (12)4.1主程序软件设计 (12)4.2键盘扫描程序设计 (13)4.3时钟调节程序设计 (14)4.4闹钟时间调节程序设计 (15)4.5闹钟时间判断子程序设计 (16)5、总结 (17)参考文献 (18)附录: (19)1、引言1.1研究背景和用途20世纪末,电子技术得到了飞速的发展。
在其推动下,现代电子产品乎渗透到了社会的各个领域,有力的推动和提高了社会生产力的发展与信息化程度,同时也使现代电子产品性能进一步提升,产品更新换代的节奏也越来越快。
时间对于人来说总是那么珍贵,工作的忙碌性和繁杂让人容易忘记当前时间。
然而遇到重大事情的时候,一旦忘记时间,就会给自己或他人造成更大的麻烦。
对于学校来说作息时间尤为重要。
如今,在电子计算机基础上发展而来的可编程作息时间控制器,它可以利用电子计算机的内部时间,通过程序判断处理,完成对作息时间的精确控制,并且由于是程序控制,所以可通过改变程序而进而灵活改变作息时间,同时可以实时显示时间,并实现打铃功能。
作息时间控制器的设计和制作
一、设计要求在单片机的功能下,利用LED数码管,蜂鸣器及轻触开关,设计了一个数字电子时钟。
(一)LED数码管能实时显示当前时、分、秒;(二)LED数码管闪动做秒显示,并且无闪烁,能正确显示程序送显的数据;(三)具有手动校时、校分功能,可以分别对时及分进行单独校时,使其校正到正确时间;(四)具有整点报时的功能。
二、设计方案该电路由键盘扫描模块,89C52主控模块,LED显示模块,发声模块组成。
键盘扫描模块由4个独立式键盘组成,主控模块由89C52单片机、复位及晶振模块组成,LED显示模块由一个4位7段数码管和一个2位7段数码管组成,发声模块由一个蜂鸣片组成。
三、硬件原理分析(一)复位控制模版通过轻触按钮S5使电路起到复位作用,在无按下按键时,电源Vcc对电容C3进行充电,按下按钮时,电容C3被短路,STC89C52芯片的9脚(RST)和电源Vcc直接连通,让RST得到高电平进行复位,使数码管回到初始状态,从而起到复位的功能。
(二)蜂鸣器控制模版通过三极管放大驱动电路,从而可以让蜂鸣器发出声音,假如输出的电平为高时,那么三极管会导通,导通电流使得蜂鸣器发出声音,假如输出电平为低时,那么三极管会截止不工作,没有导通电流,故无声音。
(三)LED电路控制模版LED显示器总共使用了一个8位I/O,LED数码管的位选线是由分别相互对应的P2.0-P2.5所控制,而将其相应的段选线并联在一起,由一个8位的I/O口控制,即P0口。
LED七段显示器分别将七段显示译码器译码的时、分、秒输出状态显示。
校时的电路用来对“时”、“分”、“秒”显示数字进行校对调整的。
LED数码管由两位七段数码管和四位七段数码管构成六位七段数码管。
(四)时钟晶振电路模版时钟晶振电路,晶振频率为11.0592MHz,接入芯片的18脚与19脚上,晶振与芯片间的连线越短越好,避免产生干扰现象。
(五)键盘控制电路模版键盘控制电路,当松开按键S1时,P1.0口通过电阻接电源Vcc,P1.0口为高电平,当按下按键S1时,P1.0口接地,P1.0口为低电平。
可编程作息时间控制器设计
可编程作息时间控制器设计作息时间控制器是一种用来帮助人们管理健康作息时间的设备。
它可以根据个人的需求和习惯自定义作息时间,并通过可编程功能来控制各种任务和提醒。
作息时间控制器的设计主要分为硬件和软件两个部分。
硬件部分包括显示屏、按钮、电源供应和时钟模块等,用于显示时间和设置参数。
软件部分则负责运行用户设置的程序,实现相应的功能。
首先,用户可以通过硬件部分的按钮界面来设置睡眠时间和起床时间。
可以根据个人需要设置每天起床时间、睡眠时间、午休时间和提醒时间等。
用户还可以设置不同的作息时间表,如工作日和周末的作息时间可以不一样。
其次,作息时间控制器可以通过软件部分的程序来控制各种任务和提醒。
用户可以设置不同的任务,如早晨运动、午休、提醒喝水等,控制器会在设定的时间触发相应的提醒。
此外,控制器还可以通过定时器功能来控制其他设备,如自动开启关闭灯光、咖啡机等。
最后,作息时间控制器还可以提供统计和分析功能来帮助用户更好地管理作息时间。
它可以记录用户的作息时间,并生成相应的报告,帮助用户了解自己的作息情况和睡眠数据,以便做出相应的调整。
总而言之,可编程作息时间控制器是一种方便实用的设备,它能够帮助人们管理健康的作息时间。
通过具备硬件和软件的设计,用户可以自定义作息时间、设置任务和提醒,并通过统计和分析数据来实现更好的作息管理。
作息时间对于个人的健康和生活品质有着重要的影响。
良好的作息时间可以提高工作和学习效率,增加身体健康和免疫力,改善睡眠质量和心理状态。
然而,现代社会的快节奏和各种干扰因素往往使人们难以维持规律的作息时间。
为了帮助人们更好地管理作息时间,可编程作息时间控制器成为了一种理想的解决方案。
硬件部分是可编程作息时间控制器的基础,它主要由显示屏、按钮、电源供应和时钟模块组成。
显示屏用于显示当前时间、设置参数以及展示任务和提醒的信息。
用户可以通过按钮来操作控制器,包括设置作息时间、添加任务和提醒等。
电源供应保证控制器的正常运行,时钟模块则提供精准的时间计量,确保作息时间的准确性和可靠性。
作息时间控制器的设计
前言本次毕业设计的课题是《作息时间控制器》控制的设计,用时间来控制自动打铃,开(熄)学生宿舍灯等。
在指导老师的悉心指导及本组成员的共同努力下,完成了0~24小时循环显示的程序、自动打铃程序、开(熄)学生宿舍灯程序的设计,及电路板的制作。
通过本次设计领悟了作为一名技术员所具备分析、解决问题的能力,为今后的工作打下基础。
由于时间仓促、能力有限,程序难免有不足之处,请老师批评指正。
目录一、设计任务1、作息时间控制器控制设计大纲 (4)2、设计步骤 (4)二、设计过程1、时间控制显示程序 (5)1.1秒脉冲显示程序 (5)1.2分钟显示程序 (6)1.3小时显示程序 (7)1.4星期显示程序 (9)1.5自动扫描秒程序 (11)1.6开机显示 (12)2、电铃控制程序 (14)2.1作息时间电铃控制 (16)2.2双休日电铃控制 (17)3、学生宿舍开(熄)灯程序 (18)4、控制器输入输出点分配 (19)5、PCB接线图及元器件 (21)5.1 PCB的外部接线图 (21)5.2 元器件 (22)6、作息时间控制器控制梯形图 (22)7、作息时间控制器使用说明 (23)三、设计总结 (24)概述PLC即可编程控制器(Programmable logic Controller),是指以计算机技术为基础的新型工业控制装置。
PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。
它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。
PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。
20世纪70年代中末期,可编程控制器进入实用化发展阶段,计算机技术已全面引入可编程控制器中,使其功能发生了飞跃。
更高的运算速度、超小型体积、更可靠的工业抗干扰设计、模拟量运算、PID功能及极高的性价比奠定了它在现代工业中的地位。
作息时间控制系统设计
五、作息时间控制系统设计1.功能简介该时钟控制器有4位LED数码显示器,具有基本时钟(显示当前时间的小时及分钟)功能,通过外扩继电器、光电耦合器或固体继电器还可实现多点、多路电气设备的控制。
该控制器可广泛应用于学校、工厂和机关的自动打铃、电视、路灯、室内照明及其他对象控制,也可用于家庭或学生寝室进行时间指示及多点时间提醒。
2.硬件电路硬件电路如图5-1所示。
图5-2 作息时间控制系统电路采用单片机AT89C51,显示器采用四联共阳极LED数码显示器。
其中字段由串入、并出的移位寄存器74LSl64控制,74LSl64的串行数据输入端由P1.4控制,移位脉冲由P1.5提供;字位由P1.0~P1.3控制,P1.0~P1.3对应控制L4~L1。
SWl~SW3用来进行时间校准及控制时间点的设定。
LED1~LED8用来模拟被控对象。
另有铃响信号输出(铃响信号驱动蜂鸣器发声)。
3.使用说明(1)时间校对在任何时候均可通过按压SW2和SW3按钮进行时间校准。
每按动一下SW2,小时自动加1;持续按住不放,小时将自动连续加1。
当小时指示为24时,再加1将自动回零。
每按动一下SW3,分钟自动加1;持续按住SW3按钮不放,分钟将自动连续加1。
当分钟指示为59时,再按动SW3,分钟将变为00。
(2)控制时间设定需要设定控制时间点时,应首先按SWl按钮,然后再按动SW2和SW3,使指示时间与要求时间一致,再按SWl按钮进入“控制码”(控制对象)设置状态,按SW3进行对象切换,最后按SW2保存时间点;也可以按SWl取消本次设定。
如此可设定多个控制时间点。
在正常状态下按下SWl不放,然后再按SW3按钮可删除所有的控制时间点。
4.参考程序软件采用MCS-51汇编语言编写,使用T0产生50ms时基信号,通过软计数器产生时、分、秒信号。
单片机内部RAM资源分配见表5-1所示。
参考程序如下:;--------------------------------------------------------------------------------------------------------------;5_1.asm;作息时间控制系统;------------------------------------头文件-------------------------------------------------------------------- SDATA BIT P1.4 ;定义74LSl64串行移位数据端SCLK BIT P1.5 ;定义74LSl64串行移位时钟端DIS EQU P1 ;定义字形口Control EQU P0 ;控制输出SWl EQU P3.2SW2 EQU P3.3SW3 EQU P3.4MS EQU 10H ;定义50ms计数器Secs EQU 11H ;定义秒计数器Minute EQU 12H ;定义分钟计数器Hour EQU 13H ;定义时计数器T_Hour EQU 19H ;定义定时时单元Tcontrol EQU 1AH ;定义控制码单元;-------------------------------------------------------------------------------------------------------------- ORG 0000HLJMP Main;-------------------------------------------------------------------------------------------------------------- ORG 000BHLJMP TOINT;-------------------------------------------------------------------------------------------------------------- Main:MOV SP,#70H ;将栈区设置在70H~7FHMOV IE,#10000010B ;允许T0中断MOV TMOD,#01H ;T0定时方式1MOV MS,#20 ;50ms单元初值,使20X50ms=lsMOV Secs,#0MOV Minute,#0MOV Hour,#12H ;开机显示12:00MOV T_Minute,#0MOV T Hom,#6MOV B,#20H;-------------------------------------------------------------------------------------------------------------- CLR P0CLR F1MOV R7,#80MOV TL0,#0B0H ;50ms定时参数MOV TH0,#3CHSETB TR0 ;启动定时器LOOP:MOV R1,#MinuteLCALL Split ;调用拆分子程序NOPLCALL DISP ;调用显示子程序NOPLCALL VerifyNOPLCALL SetupMOV A,SecsCJNE A,#5,$+3 ;定时精度控制在5秒以内JNC LOOPLCALL CompareSJMP LOOP;--------------------------------------------------------------------------------------------------------------MOV TH0,#3CHPUSH ACCDJNZ MS,T0ExitMOV MS,#20MOV A,SecsINC AMOV Secs,ACJNE A,#60,$+3 ;60后不能加H,表示该数为十进制数JC T0Exit ;若秒小于60,则直接返回MOV Secs,#0 ;若秒大于或等于60,则回零MOV A,MinuteADD A,#1DA A ;对分进行十进制调整,以便送显示器显示MOV Minute,ACJNE A,#60H,$+3 ;60后一定要加H,表示该数为BCD码JC T0Exit ;若分小于60,则直接返回MOV Minute,#0 ;若分大于或等于60,则回零MOV A,HourADD A,#1MOV Hour,ACJNE A,#24H,$+3JC T0ExitMOV Hour, #0T0Exit:POP ACCRETI;-------------------------------------------------------------------------------------------------------------- Compare:MOV R0,#20H ;定时数据存储区NextTime:LCALL DISPMOV A,@R0CJNE A,Hour,CLPlINC R0MOV A,@R0CJNE A,Minute,CLP2INC R0MOV A,@R0CPL AMOV Control,AINC R0;-------------------------------------------------------------------------------------------------------------- CLPl:INC R0 ;指向分CLP2:INC R0 ;指向控制码MOV A,@R0JNZ CLP3RET;-------------------------------------------------------------------------------------------------------------- CLP3:INC R0 ;指向下一个时间的开始CJNE R0,#6FH,$+3JC NextTimeRET;-------------------------------------------------------------------------------------------------------------- Verify:JB SW3,VLP3 ;判断是否需要校“分”CLR EACLR TR0 ;校时期间,暂时关闭定时器VLPl:MOV A,Minute ;SW3闭合时,则对分钟加1 ADD A,#1DA AMOV Minute,ACJNE A,#60H,VLP2MOV Minute,#0VLP2:MOV R6,#40MOV R1,#MinuteLCALL SplitLCALL DISPDJNZ R6,$-3JNB SW3,VLPl ;若SW3未释放,则继续对分钟加1MOV Secs,#0 ;校时期间,将秒清零SETB EASETB TR0 ;恢复计数RET;-------------------------------------------------------------------------------------------------------------- VLP3:JB SW2,VExit ;判断是否需要校“时”CLR EACLR TR0 ;校时期间,暂时关闭定时器VLP4:MOV A,Hour ;SW3闭合时,则对小时加1 ADD A,#1DA ACJNE A,#24H,VLP5MOV Hour,#0VLP5:MOV R6,#40MOV R1,#MinuteLCALL SplitLCALL DISPDJNZ R6,$-3JNB SW2,VLP4 ;若SW3未释放,则继续对小时加1MOV Secs,#0 ;校时期间,将秒清零SETB EASETB TR0 ;恢复计数Vexit:RET;-------------------------------------------------------------------------------------------------------------- Setup:JNB SWl,SLP0 ;判断SWl是否闭合RETSLP0:MOV R6,#20 ;延时80ms(用显示程序) MOV 14H,#10HMOV 15H,#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPDJNZ R6,$-3JNB SWl,SLP0SIPl:MOV R6,#20 ;延时80ms(用显示程序) MOV 14H,#10HMOV 15H.#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPDJNZ R6,$-3JB SW3,SLP2LCALL Clear ;按下SW1+SW3则清除所有数据MOV R6,#50 ;延时200ms(用显示程序)MOV 14H,#10HMOV 15H,#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPRET;-------------------------------------------------------------------------------------------------------------- SLP2:JB SW2,SLP1SETB P0SETB F1SLP21:MOV R6,#50 ;延时200ms(用显示程序) MOV 14H,#10HMOV 15H.#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPDJNZ R6,$-3JB SW1,SLP21SLP22:MOV R6,#50 ;延时200ms(用显示程序) MOV 14H,#10HMOV 15H,#0AHMOV 16H,#11HMOV 17H,#0CHLCALL DISPDJNZ R6,$-3SLP23:JNB SW1,SLP22 ;等待SW1释放SLP3:MOV R1,#T_MinuteLCALL SplitLCALL DISPJB SW3,SLP6SLP4:MOV A,T_MinuteADD A,#1DA AMOV T_Minute,ACJNE A,#60H,SLP5MOV T_Minute,#0SLP5:MOV R6,#60MOV R1,#T_MinuteLCALL SplitLCALL DISPDJNZ R6,$-3JNB SW3,SLP4SLP6:JB SW2,SLP9DA AMOV T_Hour,ACJNE A,#24H,SLP8MOV T_Hour,#0 SLP8:MOV R6,#60MOV R1,#T_MinuteLCALL SplitLCALL DISPDJNZ R6,$-3JNB SW2,SLP7 SLP9:JB SW1,SLP3 SLP10:MOV R1,#T_MinuteLCALL SplitLCALL DISPJNB SW1,SLP10MOV TControl,#0JB SW3,SLP12 SLP11:MOV A,TControlINC AMOV TControl,A SLP12:MOV A,TControlANL A,#0FHMOV 14H,AMOV A,TControlSWAP AANL A,#0FHMOV 15H,AMOV 16H,#10HMOV 17H,#10HMOV R6,#50HLCALL DISPDJNZ R6,$-3JNB SW3,SLP11JNB SW1,SLP15 SLP13:JB SW2,SLP12LCALL STORESLP14:MOV R6,#50HJNB SW2,SLP14CLR F0CLR F1RETSLP15:MOV R6,#50HLCALL DISPDJNZ R6,$-3JNB SW1,SLP15CLR F0CLR F1RET;-------------------------------------------------------------------------------------------------------------- Clear:MOV R1,#20HCLRP1:CLR AMOV @R1,AINC R1CJNE R1,#70H,CLRP1RET;-------------------------------------------------------------------------------------------------------------- STORE:MOV R1,BCJNE R1,#6A,$+3JC STLP1MOV R1,#20HMOV B,R1STLP1:MOV @R1,T_HourINC R1MOV @R1,T_MinuteINC R1MOV @R1,TControlINC R1MOV B,R1RET;-------------------------------------------------------------------------------------------------------------- Split:MOV R0,#14H ;分个位显示缓冲单元MOV A,@R1ANL A,#0FH ;取分个位MOV @R0,ASWAP AANL A,#0FH ;取分十位MOV @R0,AINC R0 ;指向时个位显示缓冲单元INC R1MOV A,@R1ANL A,#0FH ;取时个位MOV @R0,AINC R0 ;指向时十位显示缓冲单元MOV A,@R1SWAP AANL A,#0FH ;取时十位MOV @R0,ARET;-------------------------------------------------------------------------------------------------------------- DISP:PUSH 00HMOV R0,#14H ;显示缓冲区首地址MOV R2,#11111110B ;对应个位的字位码MOV DPTR,#WordTab ;送字形表首地址JNB P0,DISP0DJNZ R7,DISP1CPL F1MOV R7,#60SJMP DISP1DISP0:CLR F1DISP1:ORL DIS,#00001111B ;关显示器MOV R3,#20DJNZ R3,$ ;延时40usMOV A,@R0 ;取待显示数字MOVC A,@A+DPTR ;查字形WordOut:MOV R3,#8 ;传送字形码到74LS164 NEXTB: RLC A ;取待发送位MOV SDATA,C ;送数据到数据口SETB SCLK ;产生时钟CLR SCLKDJNZ R3,NEXTB ;继续送下一位INC R0单片机应用:作息时间控制系统设计MOV A,R2 ;取字位码ANL DIS,AHIDE:MOV R3,#5 ;延时1msMOV R4,#100DJNZ R4,$DJNZ R3,$-4MOV A,R2 ;修改字位码RL AMOV R2,AJB ACC.4,DISP1DExit:POP 00HRET;--------------------------------------------------------------------------------------------------------------WodTab: DB 0C0H,0F9H,0A4H,0B0H ;“0”,“1”,“2”,“3”DB 99H,92H,82H,0F8H ;“4”,“5”,“6”,“7”DB 80H,90H,88H,83H ;“8”,“9”,“A”,“B”DB 0C6H,0A1H,86H,8EH ;“C”,“D”,“E”,“F”DB 0BFH,0C7H ;“-”,“L”END11。
作息时间控制器设计
题目7 可编程作息时间控制器设计
1. 设计要求
设计一个以单片机为核心的可编程作息时间控制器:
按照给定的时间模拟控制,实现广播、上下课打铃、灯光控制(屏幕显示),同时具备日期和时钟显示。
2. 实验原理
本题目原理与题目4相同,程序是在题目4的基础上将定时闹钟改造为4路可调闹钟,从而实现打铃等功能。
当四路闹钟中的任一路到时,均会点亮灯、打铃。
如有需求,可对程序进行调整,增加闹钟的路数,及到时后的处理方式。
题目中4个按键的功能分别为:设置限制的时间/时的调整、显示闹钟设置的时间/分的调整、设置闹钟的时间/设置完成、闹钟更换。
3. 电路设计(Proteus仿真通过)
本可编程作息时间控制器程序设计电路原理图,如下页图所示:
4. Proteus仿真
加载目标代码文件打开元器件单片机属性窗口,在“Program File”栏中添加上面编译好的目标代码文件“keil-17.hex”;在“Clock Frequency”栏中输入晶振频率为11.0592MHz。
启动仿真如下页图所示,当四路闹钟中的任一路到时,均会点亮灯、打铃。
毕业设计基于单片机的作息时间控制器
毕业设计基于单片机的作息时间控制器WTD standardization office【WTD 5AB- WTDK 08- WTD 2C】摘要校园作息时间控制系统主要用于学校,对一些以24小时为周期的开关量进行自动控制。
该控制系统是采用8031单片机来实现对上述开关量的控制,利用内部时钟来提供时钟信息,设有六位数码管、可以实时显示时间、系统还设有输入键盘,用以修改实时时钟,体现了系统简单、工作稳定可靠、价廉、控制时间精确及系统体积小等优点。
关键词作息时间控制定时器语音芯片 8031AbstractThe campus the daily timetable control system which is mainly used in the campus, it auto-control some switches which have periods of 24 hours.This control system carries out the switch parameter controls all above by SCM 8031 .It uses the to provide the clock information. It could show the real time with 6 bit digital tube. And it could modify the real time clock with the input keyboard. The system is simple, the running is steady and dependable, the controlled time is exact, and the physical volume of the system is small, all the advantages above can be incarnated in this system.Key words:THE DAILY TIMETABLE CONTROL,TIMER, DELAYED ACTION,8031目录1 引言随着计算机技术的发展和在控制系统中的广泛应用,以及设备向小型化,智能化发展,作为高新技术之一的单片机以其体积小,功能强,价格低廉,使用灵活等优势,显示出很强的生命力。
可编程作息时间控制器设计方案
可编程作息时间控制器设计方案1、阅读中外文献资料摘要:数字钟是采用数字电路实现对"年、月、日、周、时、分、秒"数字显示的计时装置.由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
可编程作息时间控制器就是其中的一个部分,它能很好的帮助我们完成对操控方面的时序和时间的控制,可见可编程时钟控制器在未来有很大的发展潜力,其研究领域十分宽广,应用领域十分广泛。
2、立题依据及主要研究内容:数字钟能长期、连续、可靠、稳定地工作;同时还具有体积小,功耗低等特点,便于携带,使用方便。
目前应用广泛是可编程作息时间控制器,它不仅具有数字钟的一般优点,还有控制时间精确,且通过改变单片机的程序能够灵活改变冬、夏季作息时间,同时能够实时显示时间. 能够让我们来掌握运筹时间而不是让时间来催促逼迫我们。
可编程作息时间控制器实现了对时间控制的智能化,摆脱了传统由人来控制时间的长短的不便,实现代学校必不可少的设备.本次研究的主要内容是可编程作息时间控制器系统,系统包括:单片机、LCD驱动及显示系统、按键输入系统、功率放大系统和电源组成。
利用单片机提供的基信号作为基准计时信号,进行年月日周时分秒计时,根据设定时间完成语音播报,可按照设定的时间进行相应的控制,能够随意设置语音播报时间和内容。
3、设计方案及思路:主要的设计方案为:1.硬件设计由单片机系统、输入键盘、功率放大器、显示系统等部分组成。
系统扩展了四个按键用于报时及设定时间。
利用单片机的DAC为电流型输出,经负载电阻R1、三极管Q1,放大驱动扬声器放音,SPEAKER 可选用4Ω或8Ω扬声器,作为调试和当地语音播报使用,留有音频输出接口经功率放大器驱动音箱。
用一个LED 显示作息时间到等相关信息,根据具体需要可控制电铃、播放提示语音等。
2.软件设计整个程序分为:主程序、键盘扫描程序、校时子程序、语音子程序等几部分。
单片机作息时间控制器课程设计报告书
课程设计课程名称微机原理与应用学科名称SCM 作息时间控制器课程设计作业书课程名称微机原理与应用主题微控制器作息时间控制器,目录第 1 章引言 (7)1.1 简介及技术要求 (7)1.2 时序方案 (7)1.3 键盘/显示方案 (7)第二章硬件设计............................................................ 8 2.1 电路原理图 (8)2.2 系统工作流程 (9)2.3 系统使用说明 (10)第三章系统软件设计 (10)3.1 软件设计 (10)3.2 系统工作流程 (11)第4章程序模块设计。
(15)4.1 主程序模块 (16)4.2 定时中断服务程序模块 (18)4.3 扫描显示模块 (22)4.4 按键扫描子程序 (23)4.5 键值处理子程序……………………………………………………274.6 Shift键处理模块……………………………………………………30第五章调试与分析 (32)第 6 章课程总结 (33)参考 (34)附录 (35)第一章简介因为单片机种类多,模型复杂,我们学习起来也比较困难,所以对于MCS-51系列的产品来说,就是一种典型的学习方式。
对于类似于组装的MCU编程过程来说,这也是一个非常有趣的过程。
为了更好的说明,我先从应用电路入手,介绍它们的使用方法,以便我快速掌握它们的应用。
1.1 简介及技术要求校园作息时间控制系统主要用于学校,以24小时为周期自动控制一些开关量。
如钟声和扩音设备的开合,教学楼照明的定时开合,学生宿舍灯和校园路灯的定时开关的控制。
技术要求如下:(1)计时准确,月误差<=10%。
(2)有显示和上课时间功能。
(3)具有时间到时响铃的功能。
1.2 时序方案采用软件控制,利用MCS-51系列单片机的定时器/计数器进行数年计时,配合软件延时实现时分秒计时。
该方案节省了硬件成本,可以使读者锻炼和提高定时器/计数器的使用、年份和编程,因此本系统将采用软件的方式来实现计时。
单片机课程设计-作息时间控制器
河南理工大学—电子设计综合训练报告作息时间控制器姓名:学号:专业班级:指导老师:所在学院:2010 年7 月2 日本设计是作息时间控制器,由单片机最小系统、按键模块、数码管显示模块、闹钟模块组成。
采用单片机AT89S52与12MHZ晶振相连;通过按键K1、K2、K3、K4控制时间的校正、闹钟时间设定;数码管显示模块用来显示时间,显示格式为“时分”,并能够根据需要显示年、月、日,由数码管小数点闪动作为秒计数;闹钟模块进行到时提醒并作出相应动作:发光二极管闪亮,同时播放音乐。
本设计中,利用单片机定时器设计时间计时处理,采用单片机内部的T0 定时器溢出中断来实现,工作在T1 方式下,定时50 微妙,则连续中断20 次即为一秒,得到了我们所需时间的最小单位秒,60 秒为一分,60 分为一小时,24 小时为一天,1、3、5、7、8、10、12 月为31 天,4、6、9、11 月为30 天,闰年二月为29 天,非闰年二月为28 天,12 个月为一年。
采用这种时间设计思想来进行时间设置。
在整个系统的设计中,单片机的P0 口输出显示信号,P1 口按键输入控制、P2 口用来扫描,为动态显示、P3 口闹钟模块。
该设计用C51 编写程序,由于汇编语言的移植性比较差,而C 语言则比较灵活。
许多子函数都可以直接移植过去。
摘要 (1)目录 (2)1概述 (1)1.151 单片机简介 (1)1.2设计要求及功能 (1)1.3本设计实现的功能 (1)2系统总体方案及硬件设计 (2)2.1系统总体方案框图 (2)2.2按键控制模块 (3)2.3时间显示模块 (4)2.4闹钟模块 (4)3软件设计 (5)3.1系统软件设计思想 (5)3.2系统主程序 (5)3.3中断子程序 (6)3.4按键扫描子程序 (8)4Proteus 软件仿真 (9)4.1Proteus 软件简介 (9)4.2Proteus 软件仿真 (9)5课程设计体会 (13)参考文献: (14)附1:源程序代码 (15)附2:系统原理图 (25)1 概述1.1 51 单片机简介单片微型计算机简称单片机,即把组成微型计算机的各个功能部件,如中央处理器、随机存储器、只读存储器、I/O接口电路、定时器/计数器以及串行通信接口等集成在一块芯片上,构成一个完整的微型计算机。
基于单片机可编程作息时间控制器设计与制作
基于单片机可编程作息时间控制器设计与制作一、引言现代社会人们的生活节奏越来越快,工作压力、学习任务等加大,导致很多人的作息时间不规律。
而良好的作息时间对人的身心健康非常重要。
因此,设计一款基于单片机的可编程作息时间控制器就变得很有必要。
二、设计方案本设计方案采用基于单片机的可编程作息时间控制器,通过预设时间段,控制灯光和蜂鸣器的开关,提醒人们要进行休息或工作。
1.硬件设计(1)主控芯片选择本设计采用单片机AT89C52作为主控芯片,该芯片采用8位的CMOS单片机,并具有丰富的IO口和存储器。
(2)时钟电路设计为了保证控制器的时钟准确性,设计了一个由晶振和电容构成的时钟电路。
晶振的频率暂定为12MHz,电容选择合适的值以满足电路的要求。
(3)人机交互部分该作息时间控制器通过LCD屏幕和按键进行人机交互。
选择了常见的1602液晶屏,并接入按键进行数据输入。
(4)输出部分通过继电器控制灯光和蜂鸣器的开关。
根据设定的时间段,通过电流驱动继电器吸合或断开,控制相应设备的开关状态。
(5)电源部分整个作息时间控制器采用5V电源供电,并设计了稳压电路,保证主控芯片工作电压的稳定。
2.软件设计(1)时钟设置通过单片机的定时器进行时钟设置,包括时钟的启动和停止,时钟的频率调整等。
(2)数据输入通过按键进行数据的输入,包括设定时间段的起始时间和结束时间,以及设定每个时间段的作息状态。
(3)定时器中断使用定时器中断来实现时间的自动循环更新,根据设定的时间段和当前时间,判断当前处于何种作息状态,并控制输出部分的灯光和蜂鸣器。
(4)LCD显示通过LCD屏幕来实现时间的显示和友好的界面交互,便于用户对时间的设置和查看。
三、制作过程1.硬件制作按照设计方案中的硬件部分进行元件的布局和焊接,在焊接时注意保持元件间的间距,避免短路等问题。
2.软件编程根据设计方案中的软件部分,使用C语言进行单片机的编程,实现时钟的设置、数据的输入、定时器的中断、LCD的显示等功能。
单片机课程设计作息时间控制器设计报告
单片机课程设计作息时间控制器设计报告XX大学单片机课程设计报告作息时间控制器设计姓名:学号:专业班级:自动化班指导老师:所在学院:电气工程与自动化学院2022年X月X日摘要本设计是作息时间控制器的设计,由单片机AT89C52芯片和LED数码管为核心,辅以必要的电路,构成的一个单片机电子作息时间控制器。
该功能的实现主要通过软件编程来完成,降低了硬件电路的复杂性,成本也有所降低。
设计内容包括了秒信号指示、时间“时”和“分”显示电路、按键调整电路、供电电源以及闹铃指示电路等几部分的设计。
采用四个开关来控制作息时间控制器的工作状态,分别为:K1、设置时间和闹钟的小时;K2、设置小时以及设置闹钟的开关;K3、设置分钟和闹钟的分钟;K4、设置完成退出。
当作息时间控制器达到课程设计的要求,在到达设定的定时时间时蜂鸣器便被控制立即发出声音,持续一分钟,而后按K4键退出显示闪烁状态,即恢复时钟状态。
显示采用的四位数码管电路,定时提示采用蜂鸣器发声指示。
本设计方案也可以经过改进作为实现定时控制系统的控制定时电路。
关键词:作息时间单片机显示定时目录1概述31.1课程设计的目的和意义31.2单片机课程设计的要求31.3作息时间控制器的设计要求32系统总体方案及硬件设计42.1系统总体设计42.2系统各个部分的电路设计53软件的设计83.1概述83.2主模块的设计83.3显示模块设计93.4时间设定模块设计93.5闹铃功能的实现104Proteus软件仿真124.1仿真结果124.2性能及误差分析145课程设计体会15参考文献15附1程序源代码16附2原理图261概述1.1课程设计的目的和意义综合利用所学单片机知识完成一个单片机应用系统设计并仿真、由硬件实现,从而加深对单片机软硬知识的理解,获得初步的应用经验,为走出校门从事单片机应用的相关工作打下良好基础。
1.2单片机课程设计的要求1、进一步熟悉和掌握单片机的内部结构和工作原理,了解单片机应用系统设计的基本方法和步骤;2、掌握单片机仿真软件Proteus的使用方法;3、掌握键盘和显示器在的单片机控制系统中的应用。
电子设计综合训练之作息时间控制器
电子设计综合训练之作息时间控制器随着现代社会的快节奏发展,人们的生活越来越快,人们的作息时间和生活习惯也发生了改变。
特别是现在网络时代的来临,人们沉迷于网络游戏、社交媒体等,导致学生的作息时间混乱,影响了学习和生活。
为了解决这个问题,我设计了一款作息时间控制器,希望能够帮助人们维持健康的生活作息方式。
一、设计目标针对学生的生活习惯和作息时间不规律所导致的问题,本作息时间控制器的设计目标是:通过控制电子设备的使用时间和提供科学合理的作息时间,帮助学生养成健康的作息习惯和生活方式。
二、原理介绍本作息时间控制器的实现使用了单片机、电子元件和程序设计,主要包括以下几个部分的实现:1. 时间显示模块:通过OLED屏幕显示时间,并提供设置功能,让用户可以正确设置时间和闹钟时间。
2. 传感器模块:通过安装在电脑、手机等电子设备上的传感器,可以实时监测电子设备的开关状态。
当电子设备处于关闭状态时,控制器计算出未使用时间,并在下次电子设备开启时,把剩余时间自动加到计时器中。
3. 电子设备开关模块:通过与电脑、手机等电子设备连接,实现对电子设备的开关控制。
当达到设定时间后,控制器会自动关闭电子设备,提示用户应该休息或进行其他活动。
当休息时间结束后,电脑、手机等电子设备会自动开启。
4. 显示模块:显示电脑、手机等电子设备的使用情况和剩余时间,并有提示功能提醒用户在规定时间内完成任务。
三、使用流程1. 设置时间和闹钟时间首次使用时需要设置时间和闹钟时间。
使用者可以操纵按键组设置时间和闹钟时间。
2. 连接电脑、手机等电子设备将电脑、手机等电子设备连接控制器,然后开启控制器,控制器会自动开始计时。
3. 监测电子设备使用时间当电脑、手机等电子设备打开并连上Wi-Fi 之后,控制器会监测它们的状态,并记录它们的使用时间。
4. 控制电子设备的开关达到设定的使用时间后,控制器会自动关闭电子设备,并提示用户休息或进行其他活动。
5. 其他功能还包括时间调节、闹钟关闭、提醒功能等功能。
基于单片机的作息时间控制器设计
基于单片机的作息时间控制器设计
基本思路:
作息时间控制器可以分为两个部分:硬件部分和软件部分。
硬件包括单片机、时钟模块、显示模块、按键模块和继电器模块,软件则是以单片机为核心开展的程序设计。
1. 硬件部分的设计
单片机的选择:根据具体需求选择适合的单片机,通常采用8051系列单片机,如STC89C52。
因为这种单片机具有可编程性强、集成度高、性能稳定等优点。
时钟模块的选择:由于作息时间控制器需要精确计时,需要选用高精度的DS1302时钟模块。
显示模块的选择:通常采用大屏幕液晶显示屏,方便用户查看时间。
按键模块的选择:按键模块一般采用矩阵按键,方便用户选择需要设置的时间。
继电器模块的选择:用于控制开关机,一般选用5V继电器。
2. 软件部分的设计
(1) 初始界面设计:控制器初始界面需要显示当前时间、日期和上下午。
(2) 按键扫描算法:根据不同按键的输入数据,采用按键扫描算法对输入进行处理并进行响应操作。
(3) 设置起始时间和结束时间:根据用户设置的起始时间和结束时间,计算相应的时间差,并把时间差发送给继电器控制模块。
(4) 定时查询计算当前时间: 通过定时查询时钟模块,计算当前时间,在LCD屏幕上显示出来。
(5) 控制继电器开关:软件需要对继电器模块进行控制,控制器需要根据设置的起始时间和结束时间,给继电器模块发送控制信号,实现自动开关机。
以上就是基于单片机的作息时间控制器设计的基本思路,具体实现需要根据具体要求进行详细设计和开发。
作息时间控制器机电硬件与软件设计
作息时间控制器机电硬件与软件设计摘要作息时间对于个人的生活和工作有着重要的影响。
为了帮助人们更好地控制自己的作息时间,本文介绍了一种作息时间控制器的机电硬件与软件设计。
该控制器使用了微控制器作为控制核心,通过设置不同的时间参数来控制灯光和声音的开关,提醒人们进行相应的活动。
本文将重点讨论该控制器的设计思路、硬件选型与搭建、以及软件的编程与实现。
最后,通过实验验证了该控制器在实际使用中的可行性和效果。
1. 引言作息时间是指人们在一天当中的睡眠、进食、工作和休息等活动的时间安排。
良好的作息时间对于人们的身心健康和工作效率具有重要影响。
然而,由于各种原因,许多人往往无法很好地控制自己的作息时间,造成了作息不规律的问题。
为了解决这个问题,本文提出了一种作息时间控制器的机电硬件与软件设计,旨在帮助人们更好地控制自己的作息时间。
2. 设计思路作息时间控制器的设计思路是通过设置不同的时间参数,控制灯光和声音的开关来提醒人们进行相应的活动。
例如,设定一个早上7点的时间参数,当时间达到7点时,控制器会自动打开灯光和发出声音,提醒人们起床。
类似地,可以设置午餐时间、休息时间和睡觉时间等时间参数。
为了实现这一设计思路,我们选用了一款功能强大、使用方便的微控制器作为控制核心。
微控制器具有较强的实时控制能力和可编程性,非常适合用于控制作息时间控制器。
在硬件方面,我们选择了适当的开关、灯光和声音器件,并通过电路连接到微控制器上。
在软件方面,我们编写了控制程序,通过设置时间参数和控制指令来实现作息时间的控制。
3. 硬件选型与搭建3.1 微控制器选型我们选择了一款功能强大且广泛应用的微控制器作为控制核心,例如Arduino、Raspberry Pi等。
这些微控制器具有良好的开发生态系统和丰富的资源,方便我们进行软件开发和硬件连接。
3.2 灯光和声音器件选型在选择灯光和声音器件时,需要考虑其亮度和音量是否足够,并且易于控制。
我们可以选择常见的LED灯和蜂鸣器作为灯光和声音器件。
基于单片机的作息时间控制器系统设计课程
基于单片机的作息时间控制器系统设计课程第一步是系统的需求分析。
在这个任务中,学生需要了解人们在日常生活中的作息规律,并确定系统的主要功能和特点。
学生需要设计一个可以根据设定时间点自动控制不同设备的系统,比如定时开关灯、开关窗帘、调节室内温度等。
在需求分析的过程中,学生需要考虑不同的需求,比如工作日和休息日的时间表不同等。
第二步是系统的硬件设计。
学生需要选择合适的单片机以及其他必要的传感器和执行器。
学生需要学习如何连接和配置这些硬件设备,并学会使用适当的编程语言来控制它们。
学生还需要设计电源电路以供系统运行,并考虑系统的稳定性和安全性。
第三步是系统的软件设计。
学生需要学习如何编写单片机的程序,以实现所需的功能。
学生需要掌握基本的编程概念和语法,并学会如何使用特定的开发环境和库。
学生需要编写可以读取时间的程序,并在设定的时间点执行相应的操作。
学生还需要考虑灵活性问题,比如能否通过手机或者电脑远程控制系统。
最后一步是系统的测试和调试。
学生需要使用合适的测试方法和工具来验证系统的功能和性能。
学生需要学习如何查找和修复软硬件问题,并考虑如何提高系统的可靠性和稳定性。
通过这门课程的学习,学生可以了解到基于单片机的系统设计的基本原理和方法。
学生通过设计和实现作息时间控制器系统,不仅可以提高自己的实践能力,还可以培养自己的创新思维和解决问题的能力。
在进一步研究基于单片机的作息时间控制器系统设计课程中,学生还可以学习更多的相关知识和技能。
一方面,学生可以学习更深入的电子技术知识。
他们可以了解电子元器件的工作原理和特性,学会使用不同的传感器来检测环境参数,比如温度、湿度和光照强度等。
他们还可以学习如何设计合适的电路来保护系统免受电压干扰和过载等问题的影响。
此外,学生还可以了解电源电路和通信接口的设计,以满足系统的需求。
另一方面,学生可以学习更高级的编程技术。
他们可以学习如何使用C语言来编写更复杂的程序,并学会使用编程工具来调试代码和优化性能。
作息闹铃控制器设计
作息闹铃控制器设计作息闹铃控制器设计引言在日常工作和学习中,经常需要对作息时间进行控制,以规范工作、学习、休息等作息秩序,本文采用51系列单片机机实现对校园作息时间的控制设计,已完成对每天对作息最多40次打铃控制,同时具有对控制器日常时间调整及显示、打铃时间设置、掉电数据不丢失等功能。
系统硬件结构组成为实现上述功能,硬件方面主要采用AT89C52单片机实现对整个系统控制,采用DS1302时钟芯片完成对控制器时间的计时控制,同时采用24C02串行存储芯片保存打铃时间控制参数以免掉电丢失,设计8个按键分别用于对时间调整和打铃时间的设置和调整,并采用静态显示方法对6个数码管控制已完成对时间及打铃时间点等参数的设置和调整显示,采用继电器控制电路完成弱电对强电220V控制以完成对电铃的通断电控制从而控制铃声。
具体电路图。
图1作息打铃控制器硬件原理图MCS-51模拟IIC总线本设计为防止掉电后所设置电铃时间点数据丢失,特用一片IIC协议串行通信的含有256字节的EEPROM芯片CAT24WC02作为存储芯片。
IIC协议允许系统设计者只用两根线就可以将多达128个不同的设备连接在一起,极大的节省了单片机接口线,只需在这两根线上分别加一个10kΩ的上拉电阻,即可解决阻抗匹配问题。
IIC器件通过各自的硬件连线方式来确定自己的地址,如本设计中CAT24WC02芯片地址为0000。
对于没有IIC总线接口的单片机来说,使用任何两根线均可模拟IIC总线时序。
在本设计中采用P3.3、P3.4分别来模拟SCL和SDA线,当SCL处于高电平时,SDA 由高电平变成低电平时构成一个开始条件,对IIC总线的所有操作均须由开始条件开始;当SCL处于高电平时,SDA由低电平变成高电平时构成一个停止条件,此时IIC总线的所有操作均停止;当SCL为低电平且SDA线电平变化时,则数据由CPU输出到IIC 总线;当SCL为高电平且SDA线电平不变时,则CPU读取IIC总线上的数据;当SCL 为高电平且SDA电平变化时,IIC总线上位开始条件或停止条件;数据传输以8为序列进行,IIC器件在第9个时钟周期时将SDA置位为低电平,即送出一个确认(应答)信号ACK,表明数据已经被其收到。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
前言本次毕业设计的课题是《作息时间控制器》控制的设计,用时间来控制自动打铃,开(熄)学生宿舍灯等。
在指导老师的悉心指导及本组成员的共同努力下,完成了0~24小时循环显示的程序、自动打铃程序、开(熄)学生宿舍灯程序的设计,及电路板的制作。
通过本次设计领悟了作为一名技术员所具备分析、解决问题的能力,为今后的工作打下基础。
由于时间仓促、能力有限,程序难免有不足之处,请老师批评指正。
目录一、设计任务1、作息时间控制器控制设计大纲 (4)2、设计步骤 (4)二、设计过程1、时间控制显示程序 (5)1.1秒脉冲显示程序 (5)1.2分钟显示程序 (6)1.3小时显示程序 (7)1.4星期显示程序 (9)1.5自动扫描秒程序 (11)1.6开机显示 (12)2、电铃控制程序 (14)2.1作息时间电铃控制 (16)2.2双休日电铃控制 (17)3、学生宿舍开(熄)灯程序 (18)4、控制器输入输出点分配 (19)5、PCB接线图及元器件 (21)5.1 PCB的外部接线图 (21)5.2 元器件 (22)6、作息时间控制器控制梯形图 (22)7、作息时间控制器使用说明 (23)三、设计总结 (24)概述PLC即可编程控制器(Programmable logic Controller),是指以计算机技术为基础的新型工业控制装置。
PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。
它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。
PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。
20世纪70年代中末期,可编程控制器进入实用化发展阶段,计算机技术已全面引入可编程控制器中,使其功能发生了飞跃。
更高的运算速度、超小型体积、更可靠的工业抗干扰设计、模拟量运算、PID功能及极高的性价比奠定了它在现代工业中的地位。
20世纪80年代初,可编程控制器在先进工业国家中已获得广泛应用。
这个时期可编程控制器发展的特点是大规模、高速度、高性能、产品系列化。
这个阶段的另一个特点是世界上生产可编程控制器的国家日益增多,产量日益上升,这标志着可编程控制器已步入成熟阶段。
我国可编程控制器的引进、应用、研制、生产是伴随着改革开放开始的。
最初是在引进设备中大量使用了可编程控制器。
接下来在各种企业的生产设备及产品中不断扩大了PLC的应用。
目前,我国自己已可以生产中小型可编程控制器。
可以预期,随着我国现代化进程的深入,PLC在我国将有更广阔的应用天地。
所以PLC才被越来越多的人所熟悉,也被广泛的应用于自动化的生产与生活当中。
而本课题就来源于学校的实际情况,包括上下课打铃程序、双休日控制程序以及控制学生宿舍开(熄)灯等自动化程序的控制,相信PLC将会更加贴近生活,服务大众。
一、设计任务1、作息时间控制设计大纲PLC作息时间控制器采用数码显示,能够准确显示分、时、星期,在一定的时间内能够自动打铃,开(熄)学生宿舍灯。
此外,该PLC作息时间控制器还设置了手动按钮,用于调整分钟、小时和星期。
1.2作息时间控制设计大纲控制要求作息时间控制器的控制要求如下:(1、开机时初始状态显示为00时00分,显示星期为“1”。
按下启动按钮,控制器开始计时工作。
(2、能将时间显示调整到当前的日期及时间。
(3、可按所设置的时间要求打铃。
(4、可根据需要控制其它装置。
(5、作息时间表见图2-22。
(6 、设置相应的手动按钮,使控制器使用更加方便。
(7、为了便于广大师生过好双休日,从星期五下午17:00至星期日下午17:00停止打铃。
2、设计步骤1、先设计时间循环显示的程序,设计完成后在实验室进行试运行。
2、根据要求使程序运行到一定时间的时候开始打铃、控制学生宿舍开(熄)灯等。
3、绘制其外部接线图,后使用protel99绘制其外部接线图。
根据接线图,使用数码管、按钮、开关、万能板、电烙铁等工具来制电路板。
4、结合时间显示程序、打铃控制程序、学生宿舍开(熄)灯程序之后,在制作好的电路板上实验运行。
二、设计过程1、时间控制显示程序时间显示程序分秒脉冲显示、分钟显示、小时显示以及星期显示,当秒脉冲计数60次之后向分钟进位。
当分钟显示数码管显示到59之后又向小时进位,而小时则是用了一个计数器,当计数器计了24次之后向星期进位,同理星期显示也是用了一个计数器,7次之后使程序全部复位。
1.1秒脉冲显示程序秒脉冲程序梯形图如图2-11所示。
当按下SB0时,X0闭合,发出启动信号,使辅助继电器M200线圈得电并自锁。
计时器T0、T1组成1S时钟脉冲程序;Y15为秒闪烁输出;M0、C0组成分进位脉冲。
2-11作息时间PLC控制——秒脉冲发生程序当按下启动按钮X0之后,M200导通并自锁,而接通电源之后M1、M13、M21、M33也随之导通,所以开机接通电源时会立刻显示星期一00时00分,M200的导通后,由T0、T1共同发出一个1S的脉冲,使得Y15每秒亮一下。
而C0也开始计数,60次之后使M0导通。
M0一方面使C0清0,另一方面发出的脉冲信号使SFTL移位。
此时M2导通,使M1断电,分个位由“0”变为“1”。
以此类推。
1.2分显示程序图2-12作息时间PLC控制器——分钟显示程序分显示程序梯形图如图2-12所示。
由辅助继电器M1~M10分别接通分个位显示程序。
当M1闭合时,分个位显示“0”;当M2闭合时,分个位显示“1”;初始状态时,辅助继电器M1和M13闭合,分的个位及十位均显示“0”。
当计数器C0累计满60个脉冲时,计数器C0常开触点闭合,辅助继电器M0线圈得电,其常开触点闭合,产生一个分个位脉冲及一个分个位移位脉冲。
分个位移位脉冲的到来,使得移位指令将M1当前的“1”状态左移一位至M2,辅助继电器M2闭合,分的个位上显示“1”;若再来一个移位脉冲,移位指令将M2当前的状态左移一位至M3,辅助继电器M3闭合,分的个位上显示“2”;以此类推。
当分个位脉冲满10个时,M1的状态已移位至辅助继电器M11中,M11线圈通电,其常开触点闭合,使辅助继电器M2~M10复位,辅助继电器M1又闭合,分个位上又显示为“0 ”,辅助继电器M2~M10复位,为下一次分个位循环显示作好准备。
同时,M11常开触点闭合,使辅助继电器M12产生一个扫描周期的上升沿脉冲。
这个上升沿脉冲使得辅助继电器M13当前的“1”状态移位至M14中,分的十位上显示“1”,以此类推。
当分十位脉冲满6个时,M13的状态已移位至辅助继电器M19中,M19线圈通电,其常开触点闭合,使辅助继电器M13~M18复位,辅助继电器M13闭合,分十位上又显示为“0”。
当需要对分进行手动调整时,只需要按下按钮SB4,此时X3闭合,计数器C10计数。
经过1计数后,其常开触点闭合,使得状态继电器S5得电,其一常开触点闭合,产生一个分个位脉冲,改变分的当前显示,而状态继电器S5的另一常开触点闭合,使计数器C10复位,为下一次计数做好准备。
1.3时显示程序时显示程序梯形图如图2-13所示。
由辅助继电器M21~M30分别接通时个位显示程序。
当M21闭合时,时个位显示“0”;当M22闭合时,时个位显示“1”;当M23闭合时,时个位显示“2”。
以此类推。
由辅助继电器M33~M35分别接通时十位显示程序。
当M33闭合时,时十位显示“0”;当M34闭合时,时十位显示“1”;当M35闭合时,时十位显示“2”。
初始状态时,因辅助继电器M21和M33闭合,故时的个位及十位均显示为“0”。
当分十位脉冲满6个时,M13的状态已移位至辅助继电器M19,M19线圈通电,其常开触点闭合,使辅助继电器M20产生一个扫描周期宽的上升沿脉冲。
这个上升脉冲一方面向计数器C1提供脉冲,另一方面使得辅助继电器M21当前的“1”状态移位至助继电器M22中,时的个位上显示“1”,如此不断循环移位。
当时个位脉冲满10个时,M20的状态已移位至辅助继电器的M31中,M31线圈得电,其常开触点闭合,使辅助继电器M32产生一个扫描周期的上升沿脉冲。
这个上升沿脉冲使得辅助继电器M33当前的“1”状态移位至辅助继电器M34中,时的十位上显示为“1 ”。
图2-13作息时间PLC控制器——小时显示程序当脉冲C1累计满24个脉冲时,计数器C1常开触点闭合,辅助继电器M38线圈得电,其常开触点闭合,使辅助继电器M22~M30及辅助继电器M33~M34复位,辅助继电器M21及M33闭合,时个位和时十位上又显示位“0 ”,如此不断循环移位。
当需要对时状态进行手动调整时,只需要按下按钮SB5,此时X4闭合,计数器C11计数。
经过一次计数后,其常开触点闭合,使得状态继电器S6得电,其一常开触点闭合,产生一个时个位移位脉冲,改变时的当前显示。
而状态继电器S6的另一常开触点闭合,使计数器C11复位,为下一次计数做好准备。
1.4星期显示程序星期显示程序设计梯形图如图2-14所示,由辅助继电器M40~M46分别接通星期显示程序。
当M40闭合时,星期显示“1”;当M41闭合时,星期显示“2”,以此类推。
初始状态时,因辅助继电器M40闭合,星期显示为“1”。
当时移位脉冲满24个时,辅助继电器M38得电,其常开触点闭合,接通计数器C2并开始计数,另一常开触点产生一个星期脉冲及星期移位脉冲。
星期移位脉冲的来到,使移位指令将M40当前的“1”状态右移一位至M41中,辅助继电器M41闭合,星期显示“2”;若再来一个移位脉冲,移位指令M41当前的状态右移一位至M42,辅助继电器M42闭合,星期上显示“3”,如此不断移位。
当星期脉冲满7个时,计数器C2的常开触点闭合,一方面使其复位,另一方面接通辅助继电器M48,辅助继电器M48 的常开触点闭合,同时M40的状态已移位至M47,图2-14作息时间PLC控制器——星期显示程序梯形图M47线圈通电,其常开触点闭合,使辅助继电器M41~M46复位,辅助继电器M40又闭合,星期上又显示为“1 ”。
当需要对星期状态进行手动调整时,只需按下按钮SB6,此时X5闭合,计数器C12经过一次计数后动作,其常开触点闭合,使得状态继电器S7得电,其一常开触点闭合,产生一个星期移位脉冲,改变星期的当前显示。
而状态继电器S7的另一常开触点闭合,使计数器C12复位,为下一次计数作好准备。
1.5自动扫描程序数码管的动态扫描梯形图2-15所示。
初始状态时,辅助继电器M100闭合,特殊辅助继电器M8011每闭合一次,计数器C3就计数一次,其常开触点闭合并接通辅助继电器M110,辅助继电器M110的常开触点又是计数器C3复位。