寺庙网站素材,东莞专业全网推广建站公司,东莞债务优化公司,做网站的荣誉证书点击链接获取Keil源码与Project Backups仿真图#xff1a; https://download.csdn.net/download/qq_64505944/90419908?spm1001.2014.3001.5501
C16 部分参考设计如下#xff1a;
摘 要
本项目的智能教室灯光控制系统通过合理的软硬件设计#xff0c;有效地提升了教室…点击链接获取Keil源码与Project Backups仿真图 https://download.csdn.net/download/qq_64505944/90419908?spm1001.2014.3001.5501
C16 部分参考设计如下
摘 要
本项目的智能教室灯光控制系统通过合理的软硬件设计有效地提升了教室的能效和管理便利性。系统核心通过AT89S51单片机与热释红外传感器、光敏三极管电路相结合能够智能判断教室内的人员存在与环境光强度并据此自动调整灯光的开关状态。当教室内有人员存在且环境光较暗时系统会自动开灯而当人员离开或环境光充足时灯光会自动关闭从而有效避免了不必要的电力消耗。通过这一方式能够显著节省能源减少对环境的影响。
此外系统的报警功能可以在传感器故障或者系统异常时及时提醒管理人员确保系统的长期稳定运行。同时系统通过“看门狗”机制增强了抗干扰能力在复杂的电磁环境下也能够正常工作。
系统的软件部分采用C语言编写设计采用模块化结构使得系统易于维护和扩展。程序能够灵活应对不同教室的需求具备较强的适应性和可操作性。系统的低功耗、简便的操作和高可靠性使其在学校教室中的应用非常适合既能减少电费支出又有助于推动绿色环保理念的实施。
关键词单片机 智能控制器 热释红外传感器
引言
随着经济的快速增长能源不足的问题日益严峻成为制约国家经济发展的瓶颈之一。特别是电力能源作为工业和日常生活中不可或缺的部分变得尤为紧张。随着低碳生活理念的推崇节能已成为全球共识高校更应在此方面发挥示范作用。然而在许多校园内经常出现教室灯光长时间亮着而教室空无一人的情况这不仅浪费了大量能源也影响了学校形象。本课题研究的智能教室灯光控制系统旨在通过有效的能源管理来解决这一问题。
1. 系统硬件结构
该系统由多个模块构成包括中央控制模块、光敏传感器电路、2×4键盘电路、时钟电路、继电器驱动电路、以及液晶显示电路。光敏传感器用于判断教室内外的光照强度时钟电路提供时间数据而这两者则为中央控制单片机提供必要的输入数据单片机基于这些信息来做出决策最终控制灯光并显示信息。
1.1 中央控制模块
中央控制模块负责处理来自光照传感器和时钟的输入数据并根据这些数据判断是否需要开灯或关灯。此外控制器还负责显示当前时间、设定的作息时间等信息并允许通过键盘进行相关设置。选用的单片机为STC12C4052AD型它是一款高性能、低电压工作的单片机具有4KB的Flash存储、256字节的SRAM、多个定时器及A/D转换器支持在线编程及看门狗功能。
1.2 液晶显示电路
为了提供良好的人机交互系统中选用了1602液晶显示屏显示用户设定的作息时间、当前时间以及系统状态等信息。液晶显示模块采用的是日立公司生产的HD44780型显示控制器支持字符显示、字符闪烁及移动等功能能够与单片机通过并行数据总线进行通信。
1.3 其他电路
系统配备了2×4按键阵列用于设置作息时间及当前时间等参数。光敏传感器电路采集教室内外的光照强度数据且其光照强度的门限值可以通过可调电阻进行调整。指示灯电路则显示系统当前工作状态例如灯光是否处于自动模式或强制模式。
2. 系统工作原理
该系统通过采集光照强度并结合学校作息时间实现教室灯光的智能控制达到节约能源的目的。系统具有自动控制模式和强制控制模式两种工作方式。
2.1 自动控制模式
当系统复位时默认进入自动控制模式。在此模式下如果教室内光线较暗光敏传感器将信号传送至单片机单片机根据预设条件判断是否开启灯光。同时系统依据学校作息时间确保灯光仅在需要时开启非活动时间段自动关闭显著节省电能。如果外部光线强烈但因特殊需求如窗帘关闭导致室内光线不足系统会启动第二个光敏传感器进行补充判断。
2.2 强制模式
在强制模式下用户可以通过按下强制按钮手动控制灯光的开关并可以随时切换回自动控制模式。此模式主要用于特殊场合如需要在教室中使用投影仪时为了获得最佳观看效果用户可以手动关闭灯光。
3. 软件设计
系统的核心控制由STC12C4052AD单片机完成其主要任务是接收、处理并输出相关数据确保系统的正常运行。软件设计采用模块化方法系统主要包括初始化模块、键盘输入模块、数据处理中断模块、数据显示模块以及定时控制模块。 初始化模块负责配置I/O端口、定时器和中断服务程序。键盘输入模块负责接收用户设定的时间、作息信息及查询请求。数据显示模块则用于实时显示系统的当前时间、设定时间、以及用户查询的数据。
4. 调试与总结
系统设计完成后我们进行了全面的验证与调试确保在不同光照条件下系统能按照预定规则正确地控制灯光开关且能根据学校作息时间自动调整。调试结果表明系统运行稳定且效果良好。该系统不仅适用于教室灯光控制也可以在会议室、办公室等场所进行适当调整后广泛应用具有较强的可移植性和市场前景。
第一章 方案分析
1.1控制器简介
本设计的智能灯光控制系统能够高效地调节教室内的灯光。该系统的输入主要来源于两个因素一个是检测人体是否存在的信号另一个是教室内的环境光强度。当环境光强度足够时灯光不会开启如果光强度低于设定的阀值且检测到有人存在灯光则会自动开启。通过实验证明这种控制方案能够实现对教室灯光的智能调节。 通常教室内的灯光控制器应安装在远离灯光直射的区域确保其正常工作。而人体传感器的安装位置则应选择合适的角度使得传感器的两个热释电元件与人体活动的方向垂直这样可以更准确、更敏感地捕捉到人体存在信号。此外为了提高可靠性传感器应避免直接暴露在风口处以免外界气流干扰其正常工作。
1.2方案分析
该控制器的设计主要依据自然光强度和人体存在信号来作为输入能够灵活地支持自动与手动控制模式。当环境光充足时灯光不受人体存在的影响始终保持关闭状态而在光线不足的情况下如果有人的存在且经过设定的时间延迟系统将自动开启灯光直到人离开后延时一段时间后才关闭。除了这些自动功能外用户还可以设定作息时间例如在深夜12点后若教室仍有人系统会停止自动控制转而由手动开关来控制灯光以应对特殊情况下自动控制可能带来的不便。 本研究的教室灯光控制器由硬件和软件两部分组成。硬件部分为系统的基础平台支持软件运行所需的各项功能。软件则负责采集和分析硬件端口的信号并进行处理最终实现控制器设计的目标功能。
第二章 硬件设计
2.1硬件构成及简介
系统控制单元是以AT89S51单片机主控模块为核心其它外围电路主要包括环境光采集电路、时钟模块、热释红外传感器模块、看门狗模块、按键电路、EEPROM存储模块、超时报警模块、数码管显示模块其结构框图如图2-1所示。
图2-1 系统控制结构框图
环境光检测模块通过光敏三极管来感知光强。当光线照射时光敏电阻的阻值减小随着光照减弱阻值逐渐增大从而将光信号转换为电信号实现光强度的监测。人体存在检测模块采用HP-208这是一款基于红外线技术的智能传感器专门用于探测人体的存在。硬件时钟模块选用DS1302这是一款低功耗、具备电池充电功能的实时时钟芯片内建RAM寄存器能够暂时存储数据。该芯片接口简洁、成本低廉并且使用方便因此被广泛应用。数据存储与故障保护功能由X5045芯片提供。X5045是一款具有512字节存储容量的串行EEPROM同时具备看门狗和电源监控功能确保系统的稳定运行。
2.2主要硬件电路
考虑到本系统安装时受环境影响因素比较多且教室控制设备中的人体存在传感器、光敏三极管等经常会因环境情形变化而不稳定所以在设计过程中电子元器件的选用、线路布置和设备的安放要充分考虑到抗干扰问题。
2.2.1系统主控电路
该系统的核心控制模块选用了AT89S51主控芯片这是一款低功耗、基于8位CMOS技术的处理器配备了8K的在线可编程Flash存储器支持多次编程便于在线更新程序。芯片内集成了128字节RAM和4KB的EEPROM充分利用片内资源避免了额外扩展RAM的需要从而简化了电路设计。该芯片的关键特性见下表2.1 表2.1 AT89S51主要特征
AT89S51引脚 外围器件引脚 说明 P0. 0-P0. 7 ULN2803 数码管段码驱动接口 P2. 0-P2. 7 PNP-9012基极 数码管段码驱动接口 P1. 0 X5045SI X5045串行输入端 P1. 1 X5045SCK X5045串行时钟端 P1. 2 X5045CS X5045片选端 P1. 3 X504550 X5045串行输出端 P1. 4 工作状态指示灯 P1. 5 DS1302CLK DS1302时钟线 P1.6 DS1302I/O DS1302数据线 P1. 7 DS1302RST DS1302复位线 P3. 0- P3. 1 数据采集输入端 P3. 3 人体存在传感器输出信号端 P3. 4 超时报警信号输入端 P3. 7 光敏三极管输入信号端 40Vcc20GND脚间的电压应有5V 。18、19脚分别与20脚间有1.7―2.5V电压。9RST脚与GND间电压基本为0。31脚 EA与20引脚GND间电压为5V 。
2.2.2系统供电电路
如图2-3所示系统采用5V电源供电方案供电过程从220V交流电开始首先通过一个9V输出的变压器将交流电压降至9V。接着经过二极管全波整流后使用电解电容C1和C2进行滤波得到平滑的电压。然后利用正输出稳压器LM7805将电压稳压为5V。为了优化瞬态响应并缓解负载突变输出端配置了电容C3和C4最终为控制系统中的单片机及其他外围电路提供稳定的5V直流电源。
图2-3 系统供电电路
2.2.3采集电路
系统的主要输入参数包括教室内的环境光强度和人体是否存在。因此环境光强度和人体存在是系统数据采集的关键。常用的环境光强度传感器包括光敏二极管和光敏三极管。考虑到抗干扰需求本系统选择了灵敏度较高的光敏三极管。此外人体存在传感器要求具备高灵敏度和较强的可靠性。 一、环境光强度采集电路 光电传感器将光能转换为电信号。所选的光敏三极管除了具备光敏二极管的基本功能还具有对电信号的放大作用。在无光照情况下三极管的穿透电流非常小表现为暗电流。当有光照时光敏三极管的基电流Ib增大进而产生与光照强度成正比的光电流Ie负载电阻上的电压随光强变化。光敏三极管具有高灵敏度、小体积、低电压工作、低电流消耗、均匀稳定的发光、快速响应和长寿命等优点。 环境光采集电路的工作原理如图2-4所示。当环境光强度高于某一阈值时光敏三极管D6呈现低阻态≤1KΩ使得三极管Q12的基极电压升高Q12饱和并导通集电极输出低电平。若环境光强度低于阈值光敏三极管D6呈现高阻态≥100KΩQ12进入截止状态集电极输出高电平。通过调节R26的阻值可以使三极管Q12在合适的光照强度下导通。
图2-4环境光电路
二、人体存在信号采集电路
人体存在传感器采用HP-208-N-L模块这是一种基于红外技术的自动控制传感器输出为低电平信号。其高灵敏度和强可靠性使其广泛应用于各种自动感应电器设备中。该传感器的引脚定义如下1号引脚为电源输入端VCC2号引脚为输出端OUT3号引脚为接地端GND。 HP-08-N-L的主要特点
全自动感应当人体进入感应范围时传感器输出低电平当人体离开感应范围后传感器会延时关闭低电平并输出待机时的高电平。两种触发模式 不可重复触发即感应后输出低电平延时时间结束后自动切换为高电平。可重复触发当感应输出低电平后如果在延时期间内仍然有活动输出会持续为低电平直到活动停止并经过延时时间输出切换为高电平。每次活动会重新开始延时计时。 感应封锁时间在每次感应输出后待延时结束后可以设置一个封锁期在此期间传感器不再接受任何新的感应信号。此功能可确保“感应输出”和“封锁时间”交替工作减少负载切换时产生的干扰。此封锁时间可设定在几秒至几十秒之间低功耗设计静态电流小于50微安非常适合用于干电池供电的电器产品。输出信号高电平信号输出便于与各种电路对接。 技术规格工作电压DC4.5V至DC24V输出低电平0V待机时输出高电平为3.3V延时时间从零点几秒到十几分钟封锁时间从零点几秒到几十秒触发方式不可重复L可重复H感应范围最大7米且感应角度小于140度工作温度范围-20°C至70°C 2.2.4系统时钟电路 考虑到教室灯光的使用特点时间因素对系统的控制至关重要。因此本研究在设计中加入了硬件时钟电路以确保系统能够智能化地运作。 为了在停电时为时钟电路提供电源并且尽量减少对单片机资源的占用本系统选择了实时时钟芯片DS1302。此芯片能够作为数据的临时存储寄存器并且具有充电功能以为掉电时提供保护电源。该芯片支持串行通信可选择开启或关闭充电功能适用于系统的需求。它能够准确计时年、月、日、时、分、秒并具备闰年补偿功能工作电压范围为2.5V至5.5V。DS1302通过三根引脚与单片机通信具备体积小、使用简便、时钟精度高等优点完全符合系统设计要求其引脚配置如图2-6所示。
图2-6 DS1302的引脚图 该芯片的各引脚功能如下
Vcc1主电源输入Vcc2备份电源输入。当Vcc2的电压比Vcc1高0.2V时供电来源为Vcc2当Vcc2的电压低于Vcc1时则由Vcc1供电。SCLK串行时钟输入用于控制数据的传输。I/O在三线模式下为双向数据传输线。CE输入控制信号在读取或写入数据时必须为高电平。 DS1302与单片机的连接电路如图2-7所示。在该连接中Vcc2连接到外部3.6V充电型锂电池作为备用电源Vcc1则连接到主电源模块提供稳定的5V电压。在正常工作时Vcc1电压大于Vcc2因此由Vcc1供电而当主电源断开时系统将切换到由Vcc2供电确保时钟功能持续运行。外部晶振X1和X2工作频率为32.768kHz用于提供时钟源信号。RST引脚用于复位或片选通过将其输入高电平来启动数据传输它与单片机的复位信号相连。SCLK时钟信号接单片机的P1.5引脚以便控制时钟操作。 2.2.5系统看门狗电路 在单片机工作过程中不可避免的会由于外界的干扰而产生程序跑飞、死机甚至造成整机瘫痪等情况。为了能够及时恢复单片机的工作只能采用重新复位的方法因此还应该在硬件设计中使用看门狗电路这样在单片机发生死机的情况下看门狗将产生一个复位信号给单片机使单片机复位重新执行程序。由于系统同时需要看门狗和EEPROM所以本设计中使用芯片X5045。 X5045具有三种常用的功能看门狗定时器、复位控制和EEPROM。这三种功能是集成在单个8引脚封装的CMOS器件内将电源监控和看门狗功能以及高速三线非易失性存储器组合在一起从而在很大程度上降低了系统成本并减少了对电路板空间的要求X5045的引脚排列如图2-11。
图2-11 X5045的引脚图 看门狗定时器的预置时间是通过X5045的状态寄存器的相应位来设定的。如表2.2状态寄存器所示X5045状态寄存器共有6位。其中WD1.WD0和看门狗电路有关其余位和EEPROM的工作设置有关。 表2.2 状态寄存器
WD10WD00预置时间为1.4S WD10WD01预置时间为0.6S WD11WD00预置时间为0.2S WD11WD01禁止看门狗工作。 看门狗电路的定时时间长短可由具体应用程序的循环周期决定通常比系统正常工作时最大循环周期的时间略长即可。 系统看门狗电路由系统数据存储及故障保护部分组成X5045是一种串行通信512字节的EEPROM同时兼有看门狗和电源监控功能X5045有三种可编程看门狗周期上电和VCC低于检测门限时输出复位信号X5045输出复位高电平有效为了复位更加可靠其复位输出端外接一个10K的上拉电阻并与AT89S51的复位端相连。看门狗能在电源上电、掉电期间产生一个复位信号。该芯片还带有一个1.4秒的看门狗定时器可用来监控单片机的工作。如果在1.4秒内未检测到其工作出现故障内部定时器将使看门狗WD1处于低电平状态为系统提供保护避免死机、程序跑飞或进入死循环等意外的发生。
第三章 控制模块
3.1主程序模块
监控程序分为多个模块其中主要包括监控主程序和命令处理子程序。监控主程序的核心任务是调用各个子程序。一个主程序通常会调用多个子程序尤其对于资源有限的51系列单片机主程序常常被设计为一个无限循环重复调用这些子程序。子程序可以分为中断子程序和功能子程序它们之间可互相嵌套甚至中断子程序也可以调用功能子程序。在应用程序设计时通常将各个功能模块作为子程序实现主程序负责依次调用这些子程序。 监控主程序是控制系统的核心所有外围模块的操作通常都需要通过主程序进行管理。监控主程序的主要任务是接收并解析来自键盘的指令随后将控制权转移至相应的子程序入口发挥引导作用。 该系统的监控主程序模块包括以下几个部分外围设备的初始化与自检、看门狗的启动、多任务操作模块的调用包括信号采集、时钟管理、按键处理和显示驱动模块以及实时中断处理等。除去初始化和自检的部分监控主程序一般会进入一个无限循环在这个循环中系统的各项功能会根据需要有选择地反复执行。
3.1.1自检初始化
初始化与自检过程是确保控制系统正常运行的关键步骤。系统通电复位后首先进入初始化程序进行各项硬件检测和参数设置。初始化过程主要针对控制寄存器如中断控制器、数据区以及外部设备如时钟芯片DS1302等进行参数的定义和配置。系统中的自检初始化主要包括对接口芯片的检测、内部参数设定和寄存器复位。 接口芯片的检测涉及确认每个芯片是否已经准备就绪并检查是否存在硬件故障。例如检查LED显示是否正常是否正确显示系统开机界面检查时钟芯片DS1302是否处于初次使用时的启动状态或在备用电源供电下是否处于振荡保持状态以验证时间控制表的有效性检查人体感应传感器是否正常输出信号检查光信号采集电路是否有效工作等。如果时钟芯片处于初始化状态则需要对其进行配置并启动实时时钟。 系统内部寄存器的初始化主要是为数据缓冲区内的用户定义数据进行赋值并复位一些特殊功能寄存器如SFR。在单片机复位时程序计数器PC会指向程序存储器的入口地址000H程序状态字寄存器PSW清零内部存储器工作寄存器选择默认用户标志位F0为0堆栈指针SP为07H其他寄存器如定时器、中断允许寄存器IE和累加器ACC均为00H。
3.1.2定时中断
定时中断通过单片机内部定时器的计数机制触发当达到预定时间或计数溢出时产生中断请求。定时器计数器可以基于内部时钟或外部输入脉冲如T0、T1引脚接收的信号进行计数。当计数器溢出时会触发中断请求并设置定时器溢出标志位向CPU发起中断信号。 该类型的中断为周期性中断固定时间间隔内触发一次。本系统中的定时中断用于实现多任务操作系统响应中断后无需进行复杂的现场保护直接进行任务时间划分确保相关任务进入就绪状态从而启动相应的操作任务。定时中断处理程序的基本框图展示了这一过程
图3-1 定时中断处理程序框图 本系统还采用了外部中断此外部中断主要用来判断是否有外来信号输入若有就采集下来并加以处理若无则返回到主循环。
3.2数据采集模块
本控制系统中的数据采集对象为环境光信号及人体存在信号在程序设计中对这两个数据的采集放置在多任务模块中实施定时采集。
3.2.1传感器的优缺点
人体存在传感器具有本身不发出任何类型的辐射器件功耗很小隐蔽性好价格低廉的优点。而缺点是容易受各种热源、光源干扰。由于红外穿透力差因此人体的红外辐射容易被遮挡不易被探头接收易受射频辐射的干扰当环境温度和人体温度接近时探测和灵敏度就会明显下降甚至造成短时失灵。试验也证明了这点如果人体存在却一定时间内没有活动人体传感器则认为没有人体存在。为避免这种现象的出现本系统软件程序中设计为有人体存在状态后间隔1分钟或更长的时间来对人体存在参数信号的采集。
3.2.2数据采集软件的实现
本系统考虑到环境光足够亮时无论是否有人体存在都不开灯而环境光不够亮时有人体存在才开灯无人体存在则不开灯。本系统逻辑定义为环境光亮时为逻辑“0(符合光采集电路输出信号状态)暗时为“1人体存在为“1人体不存在为“0开灯为“1”关灯为“0那么环境光与人体存在可以用以下的逻辑关系表来表示如表所示3.1 表3.1 环境光与人体存在逻辑关系 环境光参数 人体存在参数 教室灯状态 0 0 0 1 0 0 0 1 0 1 1 1 上表数据表明可将环境光参数与人体存在参数进行与操作又由于继电器是低电平驱动所以要将采集处理后的信号进行非操作才可以驱动继电器工作即可得到教室灯的状态。
3.3时钟模块
在系统启动自检初始化时首先会对时钟芯片DS1302的运行状态进行判断当检测到DS1302处于启动状态时才对其进行初始化启动时钟。实时时钟芯片DS1302的初始化及其读写程序设计的关键是要遵循其时序要求。
3.3.1数据输入输出
在对DS1302进行各种操作之前必须先对其初始化即需要把复位输入RST端置为高电平如果RST输入为低电平那么所有的数据传送中止且I/O引脚变为高阻抗状态。在数据读/写完后RST端应置成低电平以防止外部干扰对DS1302内部时钟的影响。 同时为了防止复位输入端受到外部的干扰要求上电时在主电源引脚Vcc2≥2.5V之前RST必须为逻辑0。无论是读操作还是写操作都必须在开头的8个时钟周期内把提供地址和命令信息的8位数据装入到DS1302的移位寄存器中。地址/命令信息用于指明40个寄存器中的哪个进行何种操作。数据在SCLK的上升沿串行输入在开始的8个时钟周期把命令字装入移位寄存器之后若跟随的是写命令字节则在下8个SCLK周期的上升沿输入数据字节若跟随在读命令字节的8个SCLK周期之后在下8个SCLK周期的下降沿输出数据字节。程序流程如图3-3所示 图3-3数据输入输出流程图
3.3.2时钟程序设计
3.4显示驱动模块
系统运行过程中的数据显示是人机交互对话的一个重要通道。通过的显示系统数据我们才可以更好的了解系统运行的状态从而方便对整个系统进行必要的操作。本系统中采用共阳极的数码管其中采用ULN2803作为驱动数码管的段选的芯片采用简单又便宜的9012三极管来驱动数码管的位选节约成本程序编写简单。 考虑到数码管驱动信号要求的电流较大采用功率驱动器件ULN2803芯片。此芯片是八组NPN型达林顿功放三极管集成芯片典型的输入电压是5V集电极输出功率可达50V×0.6A。因此采用ULN2803共阳极数码管的段信号驱动器。而共阳极数码管的位信号驱动则采用8个晶体管9012来实现。又由于ULN2803为低电平驱动所以数据送到单片机端口前应在程序中先将数据取反。然后将数据送到ULN2803输入端相连接单片机的P0端口即可。 每次先送一位要显示的数据字节然后再送该位数码管的地址字节直到8位显示完全。 本系统在运行过程中需要显示查看的数据有时钟及显示数值。正常工作中8位显示器显示实时时钟显示小时、分钟、秒其中有两位用来显示“—”用以分隔显示小时、分钟和秒这样显示更加清晰。
第四章 调试运行
4.1调试方法及步骤
单片机系统的调试应包括硬件及软件两部分主要是通过调试发现硬件及软件中存在的问题查看其运行结果是否符合设计要求。 在对系统进行实际调试时首先应对硬件进行静态调试同时对系统软件进行初步调试此后再对软件和硬件进行动态调试最后才能使系统进入正常工作. (1)静态调试静态调试主要是排除明显的硬件故障。在将芯片、传感器等元件连接到电路板上时要保证各处电源极性、电压正确以防止因电源极性接反或电压过高损坏芯片或传感器。此外插入芯片必须在断电的情况下进行特别注意芯片的方向不要插反。 (2)软件调试在软件调试时采用在计算机上利用模拟软件实现对单片机的硬件模拟、指令模拟及运行状态模拟从而完成应用软件开发的全过程。调试过程中的运行状态、各寄存器状态、端口状态等都可以在指定的窗口区域显示出来通过这些显示结果随时跟踪程序运行状态以确定程序运行无错误。 (3)动态调试控制系统的软件和硬件是密切相关的由于软件模拟开发系统不能对硬件部分进行诊断同时也不能实时在线仿真所以用户程序还需跟硬件连接起来进行联调同时对软件和硬件进行检查和诊断。整个单片机系统进行在线调试时需借助仿真开发工具来对用户软件及硬件电路进行诊断、调试。 在应用系统各模块电路调试成功后将程序加载到在线仿真器上这时就能单步或连续地执行目标程序同时也可以根据需要分段设置断点执行程序。而对于一些与硬件相关的用户程序如接口驱动程序等则需要配合硬件进行在线调试如果有逻辑错误也要及时纠正修改。 程序调试完毕后利用编程器将程序固化到单片机中使整个系统运行起来。 各模块电路调试流程图如下示
图4-1电源调试 图4-2单片机最小系统调试
图4-3按键电路调试 图4-4显示电路调试
图4-5采集电路调试
4.2问题分析
在本系统的调试过程中遇到的主要问题的分析与解决方案。 1电源供电电路中集成稳压器温度过高。 分析解决稳压器温度过高的原因之一是变压器整流滤波后加到集成稳压器上的电压较高使7805上的压降过大。此问题可通过选用输出电压低些的变压器并在集成稳压器前串入两只二极管降压同时增大散热片来解决。 2人体存在传感器有人存在时输出高电平的电压偏低 分析解决人体存在传感器输出高电平的电压偏低单片机会产生误判或采集不到正确的信号于是在人体存在传感器的输出端加一个100KΩ的上拉电阻。 3人存在的教室中若人体超过十秒没有活动人体传感器是不会有信号输出的那么如何判定教室此时有人的问题。 分析解决 此问题在系统软件设计时可将采集有人体信号存在的状态适当延长保持二至五分钟并加以后续处理。 4单片机控制信号输出后继电器没按预定设计产生动作。 分析解决单片机输出控制信号在控制继电器时必须加三极管来驱动否则信号电流过小将不能使继电器产生吸合动作而且必须采用三极管的集电极来驱动继电器最后再带动负载。继电器驱动电路中还需注意的是要与继电器线圈并联一个续流二极管增加对驱动三极管的保护。 5每次开机插上电源后硬件时钟显示的时间都从所设初始值开始计时。 分析解决硬件时钟显示的时间不正常。 解决办法一方面是充电电池没有充电功能另一方面是应对硬件时钟进行自检。
第五章 总结与展望
5.1总结
该灯光控制系统的核心为AT89S51单片机通过驱动相关电路完成对教室灯光的自动控制。系统使用一个二极管指示工作状态实现自动开关灯的功能。硬件部分采用集成电路如ULN2803、DS1302、X5045等不仅简化了电路设计还节省了单片机的I/O口资源为后期扩展提供了可能。实验表明硬件和软件设计具备良好的稳定性同时提高了电能的利用效率。 在设计过程中硬件元件选择了性价比高的组件以降低成本而软件设计则采用多任务方式确保信号采集与处理的有效性最终实现对灯光的控制。 此系统能够与现有的教室灯光设施兼容且无需对原有电路进行大规模修改从而降低了实现智能控制的成本。
5.2展望
由于教室的面积大小和灯光数量差异系统中智能控制设备的配置也会有所不同特别是人体传感器的数量受教室面积的影响尤为显著。如果教室较大人体传感器的辐射范围可能无法覆盖全部区域导致信号采集不准确从而影响设备的正常运行。为了提升系统的可靠性建议使用多个传感器进行覆盖。 人体传感器通常只能在人体活动时采集信号如果人处于静止状态比如坐着阅读时传感器则无法检测到信号。因此设计时最好让人体传感器在运行过程中具有摆动功能以增加其灵敏度。 在本系统中人体传感器与环境光传感器紧密配合相互关联。为了简化电路与软件程序最好将两者集成在一个电路中。初步测试显示系统具有良好的适用性可以广泛应用于教室、办公室和楼道等场所。
致 谢
在这篇论文即将完成之际我首先想向我的导师谭伟东老师表达最真挚的感激与崇高的敬意在整个论文设计过程中得到了谭老师的悉心指导和无微不至的关怀使我能够顺利完成论文。谭老师的广博知识、严谨的学术态度、务实的工作作风以及敏锐的思维给我留下了深刻的印象至今难以忘怀。在此我再次向他表示衷心的感谢感谢他为我创造的浓厚学术氛围以及在学习和生活中给予的无私帮助 回首在学校的两年多时光面对今天的成果我深感欣慰与感激。由此我要感谢所有曾经热心帮助过我的老师和同学们 特别感谢我的师兄和师姐们在学习和生活中给予的无私帮助与支持同时也要感谢我的室友在我成长过程中给予的关心与支持 在即将结束学业之际我要由衷地感谢我的家人一直以来的全力支持 最后衷心感谢各位专家教授在百忙之中评阅我的论文并参与答辩
参考文献
1张毅刚.彭喜源谭晓钧曲春波.MCS-51单片机应用设计哈尔滨工业大学出版社 2周明珠.王炜王福源无触点开关在控制中的应用现代电子技术.2002 3俞海珍.李宪章冯浩热释电红外传感器及其应用电子照明技术2006.7 4赵海兰.赵样.实时时钟电路DS1302的原理及应用.电子元器件应用2005 5胡又农等可编程看门狗监控EEPROM-X5045及其在8051系统中的应用电子技术应用.1998 No.718-19 6瞿贵荣.热释电红外传感器的结构原理及特性家庭电子爱好者 7樊贵卿李庆武靳建华串行实时时钟芯片DS 1302程序设计中的问题与对策电子技术应用2005.2 8冀兰风.芯片X5045在智能化互感器检验仪中的应用电子技术1998 9刘大茂.严飞.单片机应用系统监控主程序的设计方法.福州大学学报1998