1、毕业设计论文基于AT89S51单片机的教室灯光智能控制系统设计摘 要本课题针对教室灯光的控制,分析了教室灯光智能控制的原理和实现方法,提出了基于单片机设计教室灯光智能控制系统的思路,并在此基础上开发了智能控制系统的硬件模块和相应软件部分。该系统以AT89S51单片机作为控制模块的核心部件,采用热释红外人体传感器检测人体的存在,采用光敏三极管构成的电路检测环境光的强度;根据教室合理开灯的条件,通过对人体存在信号和环境光信号的识别与判断,完成对教室灯光的智能控制,避免了教室用电的大量浪费。系统还具有报警功能;同时还采用了软/硬件的“看门狗”等抗干扰措施。本系统程序部分采用C语言编写,采用模块化结构
2、设计、条理清晰、通用性好,便于改进和扩充。该系统具有体积小,控制方便,可靠性高,针对性强,性价比高等优点,可以满足各类院校对教室灯光控制的要求,很大程度的达到节能目的。关键词:智能控制器 热释红外传感器 单片机引言 当前,随着经济的飞速发展,能源短缺问题日益突出,成为一个国家经济发展的“瓶颈”。作为工业生产和人民生活不可或缺的电力能源更是如此。尤其现今越来越提倡低碳生活,节约能源已经成为一种全球共识,而作为培养社会精英的高校更应该起到榜样的作用。但是目前在校园内,教室灯火通明,却空无一人的现象屡见不鲜,这不仅造成了严重的资源浪费,也对高校的形象造成了很坏的影响。本文所研究的教室灯光控制系统就可
3、以很好地实现节约能源的作用。1 系统硬件组成 整个系统由中央控制电路、24按键电路、光敏传感电路、继电器驱动电路、时钟电路、液晶显示电路六个模块组成。其中,光敏传感电路模块主要完成对教室当前光线明暗程度的判定,时钟电路主要实现时基功能,两者分别提供光照和定时数据供以单片机为核心的中央控制模块进行逻辑判断,单片机最终将运算结果输出到液晶显示屏,同时对教室灯光进行控制。整个系统的硬件框图如图1所示。11 中央控制模块 系统中,中央控制器主要用于接收两个外部数据,由此判断是否定时时间已到,教室光照是否充足。控制器根据这两个外部数据来进行逻辑运算,从而实现定时开关灯、刷新液晶显示屏,同时可以通过键盘设
4、置时间日期、查看相关信息根据系统设计要求,控制器选择了宏晶科技公司提供的STCl2C4052AD型单片机。该款是一种高速、高可靠性单片机,工作电压5534V,Flash程序存储器4K字节,SRAM为256字节,2个定时器,8路8位AD转换器,可通过串口实现在线编程、AD转换、看门狗等功能。12 液晶显示电路 为了实现较好的人机交互界面,在本系统中采用1602液晶显示屏来显示用户的设定作息时间及用户所查询的信息。 点阵字符型液晶显示器是专门用于显示数字、字母、图形符号及少量自定义符号的显示器。这类显示器把LCD控制器点阵驱动器字符存贮器全做在一块印刷板上。系统选用日立公司的HD44780液晶显示
5、。HD44780具有简单而功能较强的指令集,可实现字符移动闪烁等功能。与MCU的传输可采用8位并行传输或4位并行传输2种方式。液晶显示电路如图2所示。 13 其他电路 按键电路主要由一个24的按键阵列组成,主要用于完成作息时间、当前时间、定时时间段的设定。光敏传感电路实现教室内光照强度数据的采集,其门限值可通过可调电阻调节。指示灯主要实现对系统工作状态,如系统工作于自动控制模式还是强制模式,灭灯或亮灯状态等的指示。2 系统工作原理 本系统能够采集室内光照强度数据,并结合学校作息时间对教室灯光进行实时控制,达到方便和节约能源的目的。电路存在两种工作模式:自动控制模式和强制模式。21 自动控制模式
6、 系统复位默认工作在自动控制模式,当教室内自然光线弱,光敏传感器把感应到的光强信号送至单片机处理,输出照明命令,则打开教室灯光,但因系统定时关灯时间与学校作息时间一致,因此在非需要开灯的时间段内,教室灯光自动关闭,达到节约用电的效果。 系统考虑到如果教室外自然光很强,但因某种需求需要拉上窗帘,这样室内光照就不太理想,需要开灯,因而设置了两路光敏传感器,一路探测室内光强,一路探测室外光强,这体现了系统设计的灵活性。22 强制模式 系统正常工作的情况下,通过按下强制按钮,就能对灯进行强制开关的控制,通过该按钮也能使电路切换回自动控制状态。设置强制按钮主要考虑到有时需要对灯进行强制控制,例如需要在教
7、室通过投影仪观看电影时,为达到最佳的收看效果,需要关上灯。3 软件设计 系统采用STC12C4052AD单片机作为控制的核心,负责整个系统的逻辑运算,因此软件设计是系统能否稳定运行以及能否实现设计功能的关键。本系统中STCl2C4052AD单片机主要完成接收外部数据、处理数据、输出控制数据。所以软件的重点是:如何接收外部数据,如何处理以及如何输出控制数据。因此,在该软件实现中我们采用了模块化的方案,整个软件设计由初始化模块、键盘接收模块、中断处理模块、数据显示模块和定时输出模块五个模块组成,系统程序主流程框图如图3所示。 初始模块主要完成IO口、定时计数器、中断以及液晶显示屏的初始化,键盘接收
8、模块主要用于接收初始变量,如当前时间、作息时间等的设定。同时也接受相关数据的查询,如查询设定好的作息时间、光照阈值等,数据显示模块用于显示当前的时间、定时开关时间以及用户要查询的相关数据。4 调试和总结 在整个系统设计完成之后我们在调查研究的基础上,对什么光线情况下应该开灯及系统在根据学校的作息时间上进行了设定验证、调试,结果显示本系统可以稳定运行且效果理想。 本系统主要应用于教室的灯光控制,但是对于一些公共场合,如会议室、办公室、楼道等场所,只要在本系统的基础上稍加改动,也可以很好地满足其需要,因此本系统的可移植性好,具有比较大的市场潜力和广泛的应用前景.目 录摘 要 I第一章 教室灯光控制
9、器简介与方案分析 11.1教室灯光控制器简介 11.2系统控制方案分析 1第二章 系统控制模块的硬件设计 32.1系统控制模块的硬件构成及简介 32.2系统控制的主要硬件电路 32.2.1系统主控电路 32.2.2系统供电电路 42.2.3数据采集电路 52.2.4系统时钟电路 72.2.5继电器驱动电路 82.2.6超时报警电路 82.2.7按键控制电路 92.2.8系统看门狗电路 9第三章 控制模块软件设计 133.1系统监控主程序模块 133.1.1系统自检初始化 133.1.2定时中断处理设计 143.2数据采集模块 143.2.1人体存在传感器的优缺点 143.2.2数据采集软件的实
10、现 143.3时钟模块 153.3.1数据输入输出 153.3.2时钟程序设计 163.4显示驱动模块 18第四章 系统调试运行及问题分析 214.1单片机系统调试方法及步骤 214.2主要问题分析 22第五章 总结与展望 255.1总结 255.2展望 25致 谢 27参考文献 29第一章 教室灯光控制器简介与方案分析1.1教室灯光控制器简介本课题设计的控制器可有效的实现教室灯光的智能控制。其输入参数主要是人体存在信号和环境光强度信号等外界因素。环境光的强度达到一定值时不开灯,环境光强度在一定阀值以下且有人存在时开灯,实验证明这种方案可以实现对教室灯进行智能控制。教室灯光控制器一般安装在教室
11、内避开电灯直射的位置,且人体传感器安置时应使人体活动方向与人体传感器中两个热释电元连线方向垂直,这样可使人体存在信号采集更加灵敏、可靠,同时还要尽可能避免外界风直接吹向人体传感器。1.2系统控制方案分析该控制器以自然光强度和人体存在作为控制器的主要输入参数,能够实现自动与手动控制相兼容。在自然环境光较强光线足够时,无论人是否存在,都不开灯;在自然环境光较弱时,有人存在且超过一定时间,控制器自动打开电灯,直到人离开后再延时一定时间后关灯。同时,还可设置作息时间来控制,夜晚超过12点,若还有人存在,则关闭自动控制器的运行,改用开关来手动控制,以解决因特殊情况下,自动控制器的不人性化运行。所研究的教
12、室灯光控制器主要是由硬件和软件两大部分组成。硬件部分是前提,是整个系统执行的基础,它主要为软件提供程序运行的平台。而软件部分,是对硬件端口所体现的信号,加以采集、分析、处理,最终实现控制器所要实现的各项功能,达到设计目的。第二章 系统控制模块的硬件设计2.1系统控制模块的硬件构成及简介系统控制单元是以AT89S51单片机主控模块为核心,其它外围电路主要包括:环境光采集电路、时钟模块、热释红外传感器模块、看门狗模块、按键电路、EEPROM存储模块、超时报警模块、数码管显示模块,其结构框图如图2-1所示。图2-1 系统控制结构框图环境光模块采用光敏三极管来检测环境光的强度,有光照时,电阻减小,随着
13、光照强度的减弱,电阻逐渐增大,把光信号转化成电信号,实现对光强度的检测。人体存在传感器模块采用HP-208是基于红外线技术的智能产品,实现对人体存在的检测。硬件时钟模块采用具有充电能力的低功耗,具有临时性存放数据的RAM寄存器的实时时钟芯片DS1302。该电路的接口简单、价格低廉、使用方便,被广泛的使用。系统数据存储及故障保护部分由X5045组成,X5045是一种串行通讯的512字节EEPROM,同时兼有看门狗和电源监控功能键盘模块。2.2系统控制的主要硬件电路考虑到本系统安装时受环境影响因素比较多,且教室控制设备中的人体存在传感器、光敏三极管等经常会因环境情形变化而不稳定,所以在设计过程中,
14、电子元器件的选用、线路布置和设备的安放要充分考虑到抗干扰问题。2.2.1系统主控电路本系统的主控模块采用AT89S51作为主控芯片,它是一种低功耗,8位CMOS工艺处理器,具有8K在线可编程Flash存储器,片内的Flash可多次编程,为在线编程提供了方便。片内有128字节的RAM,4KB的EEPROM,由于合理的安排使用片内RAM空间,所以没有片外扩展的RAM,使电路结构简洁。该芯片的主要特征见如表2.1:表2.1 AT89S51主要特征AT89S51引脚外围器件引脚说明P0. 0-P0. 7ULN2803数码管段码驱动接口P2. 0-P2. 7PNP-9012基极数码管段码驱动接口P1.
15、0X5045SIX5045串行输入端P1. 1X5045SCKX5045串行时钟端P1. 2X5045CSX5045片选端P1. 3X504550X5045串行输出端P1. 4工作状态指示灯P1. 5DS1302CLKDS1302时钟线P1.6DS1302I/ODS1302数据线P1. 7DS1302RSTDS1302复位线P3. 0- P3. 1数据采集输入端P3. 3人体存在传感器输出信号端P3. 4超时报警信号输入端P3. 7光敏三极管输入信号端单片机最小系统如图2-2所示:图2-2 单片机最小系统(1) 40(Vcc)20(GND)脚间的电压应有5V 。(2) 18、19脚分别与20脚
16、间有1.72.5V电压 (3) 9(RST)脚与GND间电压基本为0 。(4) 31脚 (EA)与20引脚(GND)间电压为5V 。2.2.2系统供电电路系统供电原理如图2-3所示,采用+5V电压供电。本设计采用输出电压为9V的变压器。系统接通220V交流电源后,将220V交流电变压到9V,经过二极管全波整流、电解电容C1,C2滤波,再经正输出稳压器LM7805,为了缓冲负载突变,改善瞬态响应,输出端还采用了电容C3,C4,最后得到+5V的直流电压,用于给控制系统中单片机系统及其它外围电路的Vcc端供电。. 图2-3 系统供电电路2.2.3数据采集电路教室的环境光强度和人体存在与否是系统主要的
17、输入参数,因此教室中的环境光照强度和人体存在成为系统数据采集的主要对象。常见的环境光强度采集器件主要有光敏二极管和光敏三极管,考虑抗干扰的需要,选用灵敏度较高的光敏三极管。此外,人体存在传感器要求灵敏度高,可靠性强。一、环境光强度采集电路光电传感器是一种能够将光转化为电量的传感器。采用的光敏三极管除了具有光敏二极管将光信号转化为电信号的功能外,还具有对电信号的放大功能。在无光照时,三极管的穿透电流很小,为暗电流,有光照时,产生的Ib增大,成为光电流Ie,光电流的大小与光照强度成正比,于是在负载电阻上就能得到随光照强度变化而变化的电信号。光敏三极管具有灵敏度高,体积小,工作电压低,工作电流小,发
18、光均匀稳定,响应速度快,寿命长等特点。环境光采集电路原理如图为2-4所示。当环境光照强度大于一定程度时,光敏三极管D6呈现低阻状态1K,三极管Q12的基极电压升高,Q12管饱和导通,集电极输出低电平。当环境光强度小于一定程度时,光敏三极管D6呈现高阻状态100,使三极管Q12截止,集电极输出高电平。其中调节R26阻值,可使三极管Q12受环境光强度影响在适当的亮度下导通。图2-4环境光电路二、人体存在信号采集电路人体存在传感器采用HP-208-N-L人体感应模块(低电平输出)。基于红外线技术的自动控制产品,灵敏度高,可靠性强,广泛应用于各类自动感应电器中。人体传感器的1号引脚为电源信号端VCC,
19、2号引脚为采集信号输出端OUT,3号引脚为地信号端GND。其硬件连接如图2-5。图2-5 人体存在信号采集电路HP-208-N-L功能特点:全自动感应:人进入其感应范围则输出低电平,人离开感应范围则自动延时关闭低电平,输出待机时的高电平。两种触发方式:a.不可重复触发方式:即感应输出低电平后,延时时间段一结束,输出将自动从低电平变为高电平;b.可重复触发方式:即感应输出低电平后,在延时时间段内,如果有人体在其感应范围内活动,其输出将一直保持低电平,直到人离开后至延时结束,低电平跳变为高电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点).
20、具有感应封锁时间:感应模块在每一次感应输出后,待延时时间一结束,可以紧跟着设置一个封锁时间段,在此时间段内感应器不接受任何感应信号。此功能可以实现“感应输出时间”和“封锁时间”两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。(此时间可设置在零点几秒几十秒钟)。微功耗:静态电流50微安,特别适合干电池供电的电器产品;输出高电平信号:可方便与各类电路实现对接;技术参数:工作电压:DC4.5V至DC24V均可;输出低电平:0V,待机时的高电平为3.3V;延时时间:可制作范围零点几秒十几分钟;封锁时间:可制作范围零点几秒几十秒;触发方式:L不可重复;H可重复;感
21、应范围:Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc2 Vcc1时,由Vcc1向DS1302供电。SCLK:串行时钟,输入,控制数据的输入与输出;I/O:三线接口时的双向数据线;CE:输入信号,在读、写数据期间,必须为高。DS1302与单片机接口电路连接如图2-7,其中Vcc2外接3.6V可充电的锂电池,为DS1302的备用电源。Vcc1外接供电模块的稳定输出电压+5V,为DS1302的主电源。DS1302由Vcc1和Vcc2两者中较大者供电。系统正常运行时,Vcc1大于Vcc2,因此由Vcc1给DS1302供电,在主电源关闭的情况下,则由Vcc2给DS1302供电,保持时钟的
22、连续运行。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送,与单片机的复位信号相连。时钟输入端SCLK接单片机P1.5引脚,进行时钟控制。图 2-7 时钟电路2.2.5继电器驱动电路继电器驱动接口电路如图2-8所示,这里继电器由相应的PNP型号的9012三极管来驱动。开机时,单片机初始化后的P3.5、P3.6 为高电平,三极管截止,所以开机后继电器始终处于释放状态。如果P3.5、P3.6 为低电平,三极管的基极就会被拉低而产生足够的基极电流,使三极管导通,继电器就会得电吸合,从而驱动负载,点亮相应电灯。继电器的输出端并联10
23、0欧的电阻和6800皮法电容,目的是避免继电器吸合与释放期间产生火花。继电器线圈两端反相并联的二极管是起到吸收反向电动势的功能,保护相应的驱动三极管,这种继电器驱动方式硬件结构比较简单。 图2-8 继电器驱动电路2.2.6超时报警电路本系统采用的超时报警电路如图2-9所示。单片机的P3.4端口外加一个10K的上拉电阻,再经过限流电阻100欧与三极管C945的基极相连。当P3.4 端口为低电平,即基极为低电平时,三极管导通,驱动蜂鸣器发出声音,以示教室灯工作超时。若P3.4端口为高电平,即基极为高电平时,三极管截止,蜂鸣器不工作,教室灯工作正常。本系统采用超时报警电路方便了管理人员对教室灯的管理
24、,能够科学、有效地管理教室电灯。图2-9超时报警电路2.2.7按键控制电路按键控制电路如图2-10所示。按键的输入信号分别接到P2.0,P2.1,P2.2,P2.3,用二极管和与门电路将按键信号引到外中断0的引脚P3.2。按键控制电路采用单片机P2口的低4个口作按键的输入信号端,信号取自电阻的分压。当按键未按下时,P2.0P2.3端口的电压接近电源电压,为高电平,当某一按键按下时,对应端口被按纽开关短接到地,为低电平。单片机检测4个端口电平的变化,从而确定是哪个键被按下。键盘工作方式采用中断扫描方式,4个二极管和10K电阻组成与门电路,当任一键按下时,与门输出P3.2引脚的电平都会由高为低。P
25、3.2第二功能是外部中断0的输入引脚,我们利用其电平的变化产生中断,在中断服务程序中读入P2口低4位信号,确定哪个键按下,执行相应的按键功能,0.1pf电容和10K电阻组成滤波电路,消除按键的抖动。图2-10按键控制电路2.2.8系统看门狗电路在单片机工作过程中,不可避免的会由于外界的干扰而产生程序跑飞、死机甚至造成整机瘫痪等情况。为了能够及时恢复单片机的工作,只能采用重新复位的方法,因此还应该在硬件设计中使用看门狗电路,这样在单片机发生死机的情况下,看门狗将产生一个复位信号给单片机,使单片机复位,重新执行程序。由于系统同时需要看门狗和EEPROM,所以本设计中使用芯片X5045。X5045具
26、有三种常用的功能:看门狗定时器、复位控制和EEPROM。这三种功能是集成在单个8引脚封装的CMOS器件内,将电源监控和看门狗功能以及高速三线非易失性存储器组合在一起,从而在很大程度上降低了系统成本并减少了对电路板空间的要求,X5045的引脚排列如图2-11。图2-11 X5045的引脚图 看门狗定时器的预置时间是通过X5045的状态寄存器的相应位来设定的。如表2.2状态寄存器所示,X5045状态寄存器共有6位。其中WD1.WD0和看门狗电路有关,其余位和EEPROM的工作设置有关。表2.2 状态寄存器WD1=0,WD0=0,预置时间为1.4S,WD1=0,WD0=1,预置时间为0.6S,WD1
27、=1,WD0=0,预置时间为0.2S,WD1=1,WD0=1,禁止看门狗工作。看门狗电路的定时时间长短可由具体应用程序的循环周期决定,通常比系统正常工作时最大循环周期的时间略长即可。X5045硬件部分连接如图2-12。图2-12 系统看门狗电路系统看门狗电路由系统数据存储及故障保护部分组成,X5045是一种串行通信512字节的EEPROM,同时兼有看门狗和电源监控功能,X5045有三种可编程看门狗周期,上电和VCC低于检测门限时,输出复位信号,X5045输出复位高电平有效,为了复位更加可靠,其复位输出端外接一个10K的上拉电阻,并与AT89S51的复位端相连。看门狗能在电源上电、掉电期间产生一
28、个复位信号。该芯片还带有一个1.4秒的看门狗定时器可用来监控单片机的工作。如果在1.4秒内未检测到其工作,出现故障,内部定时器将使看门狗WD1处于低电平状态,为系统提供保护,避免死机、程序跑飞或进入死循环等意外的发生。第三章 控制模块软件设计3.1系统监控主程序模块监控程序按模块分为监控主程序和命令处理子程序叫。监控主程序的基本任务是调用子程序,一个主程序可以调用多个子程序,对于51系列单片机,系统资源有限,主程序通常是一个无限循环的过程,即是一个反复调用子程序的过程。子程序主要分为中断子程序和功能子程序,它们之间可以互相嵌套和调用,即中断子程序可以调用功能子程序。在应用软件的设计中,尽可能各
29、个功能模块写成子程序的形式,并通过主程序调用。而命令处理子程序完成各种命令所规定的具体操作,它按各种命令再分为不同的子程序模块,它的编程方法与功能要求及系统应用密切相关。监控主程序是整个控制系统的核心部分,其它外围模块一般都需经过监控模块实现其在控制系统中的作用。监控主程序接受和分析来自键盘的命令,进而把控制转到相应的处理子程序的入口,起引导作用。本系统监控主程序模块主要包括对系统外围器件输入、输出参数的初始化自检,看门狗的激活,多任务操作模块的调用(系统中的信号采集处理、时钟管理、按键接收处理、驱动显示模块),实时中断处理等。除初始化和自检外,监控主程序一般总是把其余部分连接起来构成一个无限
30、循环,系统所有功能都在这一循环中周而复始的有选择的执行3.1.1系统自检初始化系统自检初始化是保证整个控制系统能够正常运行的重要条件,系统加电复位后,直接进入自检初始化程序,完成系统的自检及初始化。初始化过程主要是对一些控制寄存器(如中断控制)、数据区和外部芯片(如时钟芯片DS1302等)进行初始参数设置和定义。本系统中的自检初始化主要指各接口芯片的检测、芯片内部设定参数的初始化及系统内部寄存器的初始化。各接口芯片的检测主要检测各芯片是否已处于准备工作的就绪状态,有无硬件故障等,如检测各位LED是否正常显示系统设置开机时的界面,检测硬件时钟DS1302是处于更换芯片后初次使用为起振状态,还是处于备用电源供电振荡保持状态,即检测系统中控制时间表的有效性,检测热释红外传感器输出信号是否正常体现人体存在的信息,检测光采集电路输出的信号等。若时钟芯片处于启动状态,则需要对其进行初始化并启动实时时钟。系统内部寄存器初
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1