版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
[19]。1.3主要研究内容1.阅读相关文献确定了设计功能和软件硬件的选择方案2.硬件部分采用52单片机3.设计采用KEIL5软件平台和C编程语言完成位软件设计4.将系统进行调试运行并成功实现5.实现的成果为实物该系统应完成的主要功能有:LCD1602液晶屏显示当前时间、年月日、时分秒;2.LCD1602液晶屏显示当前教室人数;3.2路红外探头用来感应当前教室进出人数;4.按键可以设置当前时间、自动手动模式;5.按键设置开启和关闭教室灯光时间;6.在手动模式下,可以通过按键直接控制灯光亮度(3档)自动模式下LED指示灯亮;7.自动模式下,光敏传感器检测当前教室光线强度光线较弱,教室有人并且在开灯的时间范围内将自动开启台灯进行照明(室内人数>0<10灯光亮度为1档,>10<20灯光亮度为2档,>20灯光亮度为3档)。
第2章系统总体结构2.1设计方案本设计是一种基于单片机技术的智能低耗教室明系统,该套系统主要由光照传感器模块、红外传感器模块、按键模块、52单片机、LCD1602显示模块等部分组成;采用52单片机技术对传感器模块采集参数进行处理,并通过LCD1602液晶屏显示通过按键模块来实现开启和关闭教室灯的时间,实现自动模式和手动模式的切换。2.2功能需求分析1.系统应具备智能调光和自动开关功能,能够根据教室的自然光照情况和使用需求自动调整照明亮度,以达到最佳照明效果并减少能源消耗。2.系统应能够确保整个教室内各个区域的光照均匀,避免出现强光和弱光的不平衡现象,提供舒适的学习环境。3.系统应支持色温的调节,可以根据学生的学习需求和时间变化自动调整照明的色温,提供适合不同学习场景的光线色彩。4.系统应配备光照传感器,能够感知周围环境的光照强度,根据需要自动调整照明亮度,避免过度照明或过暗的情况发生。5.系统应支持预设定时功能,可以按照教室的使用时间表自动开启和关闭照明设备,避免人为操作造成的能源浪费。6.系统应与其他智能设备(如窗帘、空调等)进行联动控制,根据教室内部环境的变化综合调节各项设备的工作状态,提高能源利用效率。7.系统应提供用户友好的界面,方便教师或管理员对照明系统进行设置和管理,如调光、定时、色温调节等。8.系统应具备数据采集和分析功能,能够收集照明系统的使用数据,并提供实时监控和报告,帮助用户了解和评估能源使用情况,优化照明方案。9.系统应具备稳定可靠的性能,能够确保照明设备的正常工作,并具备保护措施,如过载保护、短路保护等,确保教室的使用安全。10.系统应具备良好的扩展性和兼容性,可以与其他智能设备或未来的技术进行集成,满足教室照明系统的不断升级和扩展需求。2.2.1技术路线(1)硬件部分需要52单片机;(2)软件平台程序用keil5;(3)画原理图用AD;(4)编程语言用C语言;2.2.2预期结果智能教室照明系统具有多项功能,其中包括LCD1602液晶屏的显示功能,能够显示当前时间、年月日、时分秒以及当前教室人数。为了实现实时监控教室人数的功能,系统还配备了2路红外探头,用于感应当前教室进出人数。此外,系统还配备了按键,用于设置当前时间、自动手动模式、开启和关闭教室灯光时间以及控制灯光亮度等。在手动模式下,通过按键可以直接控制灯光亮度,一共有三档可供选择。而在自动模式下,光敏传感器会检测当前教室的光线强度,如果光线较弱并且有人在教室内,系统会自动开启台灯进行照明。此时,照明的亮度会根据当前教室人数进行调节,当室内人数在0-10人之间时,灯光亮度为1档,当室内人数在10-20人之间时,灯光亮度为2档,当室内人数大于20人时,灯光亮度为3档。通过这些功能,智能教室照明系统能够实现自动化控制,不仅方便了使用者的操作,也能够更好地保障教室内的照明环境,提高教室的使用效率。2.3总体方案设计设计一个系统的过程可以分为以下六个步骤:1.理论知识准备阶段。在这个阶段,我们需要认真研究设计课题所涉及的内容,以便能够较好地掌握有关题目的知识。2.系统模块确定阶段。在这个阶段,我们需要确定系统的各个模块,并理清它们之间的关系。同时,我们还需要收集相关的软硬件资料,为后续的设计做好准备。3.系统规划阶段。在这个阶段,我们需要规划整个系统的组成结构,勾画出大体的系统框架,并在此基础上提出原理框图。4.硬件设计阶段。在这个阶段,我们需要使用软件完成硬件电路部分的设计,并画出各部分电路图。此外,我们还需要将系统部件通过接口电路集合在一起,并画出电路图。5.软件设计阶段。在这个阶段,我们需要根据系统的控制过程完成软件设计部分,并绘制出主流程图。6.模拟仿真阶段。在这个阶段,我们需要对系统进行模拟仿真,检查系统是否能够按照要求实现控制功能。2.4单片机型号选择图2.1STC89C52原理图STC89C52是MSC-51单片机中应用最广泛的型号,现在以其为代表介绍其参数。STC89C52单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器、数据存储器、程序存储器、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器。该单片机还包括定时器、串行口、并行口、中断控制器、ADC转换器等多种功能模块,适用于各种控制和嵌入式系统应用。STC89C52具有广泛的应用领域,例如智能家居控制系统、工业自动化控制系统、电子仪器仪表、医疗器械、车载设备等等。由于STC89C52的价格相对较低,易于学习和开发,因此在中国及其他许多国家都受到广泛的使用和推广。
第3章系统的硬件部分设计3.1系统总体设计本设计是智能低耗教室照明系统,系统由单片机对信号进行运算处理,系统通过红外传感器和光照传感器采集教室信息,按键模块设置开灯关灯时间,实现自动手动模式切换。该系统应完成的主要功能有:LCD1602液晶屏显示当前时间、年月日、时分秒;2.LCD1602液晶屏显示当前教室内的人数;3.2路红外探头用来感应当前进出教室的人数;4.按键可以设置当前时间、模式;5.按键设置开启和关闭教室灯光的时间;6.在手动模式下,可以通过按键直接控制灯光亮度(3档)自动模式下LED指示灯亮;7.自动模式下,光敏传感器检测当前教室光线强度光线较弱,教室有人并且在开灯的时间范围内将自动开启台灯进行照明(室内人数>0<10灯光亮度为1档,>10<20灯光亮度为2档,>20灯光亮度为3档)。总体原理图如下所示:图3.1总体原理图3.2系统的主要功能模块设计3.2.1时钟电路模块设计图3.2时钟电路模块原理图DS1302是由MaximIntegrated制造的实时时钟(RTC)芯片。它旨在为电子设备和系统提供准确的时间计时。DS1302芯片具有简单的接口,可以轻松地与微控制器或其他电子电路集成。它以5V电源供电,具有低功耗模式,非常适合用于电池供电的应用。DS1302RTC芯片使用32.768kHz石英晶体振荡器作为时间基准,可在广泛的温度范围内提供准确的时间计时。它具有内置的涓流充电器,可用于充电备用电池,有助于确保时钟在断电情况下仍然运行。DS1302具有简单的串行接口,可用于与微控制器或其他电子电路进行通信。它可以使用一些简单的命令进行控制,例如读取或写入时间和日期信息。该芯片还具有可编程的闹钟功能,可用于在指定时间触发中断或信号。总的来说,DS1302是一款功能强大且可靠的实时时钟芯片,广泛应用于各种电子应用中,包括数字钟表、计时器和数据记录仪等。DS1302内部寄存器如下:表3.1寄存器名称命令字取值范围各位内容写操作读操作76543210秒寄存器80H81H00-59CH10SECSEC分寄存器82H83H00-59010MINMIN时寄存器84H85H01-12或00-2301-28,2912/24010HRHR日寄存器86H87H30,310010DATEDATE月寄存器88H89H01-1200010MMONTH周寄存器8AH8BH01-0700000DAY年寄存器8CH8DH00-9910YEARYEARDS1302是一款常用的实时时钟电路模块,它包含了时钟和日历功能,并且具有低功耗特性。下面是DS1302时钟电路模块的硬件电路设计。供电电路:DS1302模块需要3.3V的供电电压。可以通过将3.3V电源连接到模块的VCC引脚来提供电源。同时,还需要将GND引脚连接到地线,确保电路的接地。控制引脚连接:DS1302模块包含三个控制引脚:RST、CLK和DAT。这些引脚用于与DS1302通信,并控制时钟和日历功能。RST引脚:该引脚用于复位DS1302模块。将RST引脚连接到微控制器或单片机的一个GPIO引脚,以便在需要时进行复位操作。CLK引脚:CLK引脚是DS1302的时钟输入引脚。将CLK引脚连接到微控制器或单片机的一个GPIO引脚,用于提供时钟信号。DAT引脚:DAT引脚用于数据输入/输出。将DAT引脚连接到微控制器或单片机的一个GPIO引脚,以便进行数据传输和接收。时钟和日历连接:DS1302模块还包含了时钟和日历功能,它们与外部系统进行连接。时钟连接:将DS1302的CLK引脚连接到一个32.768kHz的晶振,以提供准确的时钟信号。日历连接:将DS1302的日历引脚(RST、CLK、DAT)连接到相应的GPIO引脚,用于与外部系统进行通信,例如微控制器或单片机。电池备份:DS1302模块可以使用电池进行备份以保持时钟和日历的数据。连接一个3V的锂电池到模块的VBAT引脚,以实现断电时的数据持久化。3.2.2光照检测电路模块设计光照检测电路的原理图是光敏通过LM393比较器来进行比较,从而输出高低电平来进行判断当前是否下和光线强弱。LM393是一种通用的双比较器芯片,由多个电路元件组成。它采用标准双列直插封装,具有8个引脚,可在广泛的电压和温度范围内工作。LM393的工作原理是将两个电压信号进行比较,并根据比较结果输出逻辑高或逻辑低的电平。它具有两个比较器输入端口,每个输入端口都有一个内部参考电压和一个外部电压输入。当外部电压高于参考电压时,输出为逻辑高电平;当外部电压低于参考电压时,输出为逻辑低电平。比较器具有开环增益,因此需要反馈电路来提高其稳定性和精度。LM393的输出引脚可直接连接到外部反馈电路,以实现放大和滤波等功能。LM393的应用领域非常广泛,例如它可以用作电池电压监测器、温度传感器、光电传感器等。由于其低功耗、高精度和低成本等优点,LM393已成为电子工程师和制造商的首选之一。图3.3光照检测电路模块原理图LM393是一种常用的比较器芯片,常用于光线传感器模块中。下面是一个含有LM393模块的光线采集模块的硬件电路设计。光线传感器连接:光线传感器通常是一个光敏电阻器(光敏电阻)或光电二极管。将光线传感器的一个引脚连接到3.3V电源,将另一个引脚连接到LM393模块的输入引脚(通常是VIN+)。比较器连接:LM393芯片具有两个比较器,每个比较器都有一个非反相输入引脚(VIN-)和一个输出引脚(OUT)。连接光线传感器的输出引脚(OUT)到LM393模块的一个比较器的非反相输入引脚(VIN-)。参考电压设置:LM393的比较器需要一个参考电压来进行比较。这个参考电压可以通过将一个电位器连接到3.3V电源并将电位器的中间引脚连接到LM393模块的另一个比较器的非反相输入引脚(VIN-)来设置。通过调节电位器,可以设置比较器的触发阈值,以适应不同的光线条件。输出引脚连接:将LM393模块的比较器的输出引脚(OUT)连接到微控制器或单片机的一个GPIO引脚。通过读取该引脚的状态,可以获取光线传感器的信号,并进行进一步的处理和分析。供电电路:LM393模块需要3.3V的供电电压。可以通过将3.3V电源连接到模块的VCC引脚来提供电源。同时,还需要将GND引脚连接到地线,确保电路的接地。3.2.3红外感应模块设计红外线传感器是利用红外线来进行数据处理的一种传感器,有灵敏度高等优点,红外线传感器可以控制驱动装置的运行。红外线传感器常用于无接触温度测量,气体成分分析和无损探伤,在医学、军事、空间技术和环境工程等领域得到广泛应用。例如采用红外线传感器远距离测量人体表面温度的热像图,可以发现温度异常的部位。利用红外线的物理性质来进行测量的传感器。红外线又称光化学射线,它具有反射、折射、散射、干涉、吸收等性质。任何物质,只要它本身具有一定的温度(高于绝对零度),都能辐射红外线。红外线传感器测量时不与被测物体直接接触,因而不存在摩擦,并且有灵敏度高,反应快等优点。红外线传感器包括光学系统 、检测 元件和 转换电 路。光 学系统 按结构 不同可 分为透 射式和 反射式 两类检 测元件 按工作 原理可 分为热 敏检测 元件和 光电检 测元件 。热敏 元件应 用最多 的是热 敏电阻 。热敏 电阻受 到红外 时温度 升高, 电阻发 生变化 (这种 变化可 能是变 大也可 能是变 小,因 为热敏 电阻可 分为电 阻), 通过转 换电路 变成电 信号输 出。光 电检测 元件常 用的是 光敏元 件,通 常由、 硒化铅 、砷化 铟、砷 化锑、 碲镉汞 三元合 金、锗 及硅掺 杂等材料制成。图3.4红外感应模块原理图以下是红外感应模块的基本硬件电路设计:供电电路:红外感应模块通常需要供电电压为3.3V或5V。将对应的电源引脚(VCC)连接到相应的电源引脚,确保电路正常工作。同时,将模块的地线引脚(GND)连接到地线,以提供共同的地。输出引脚连接:红外感应模块通常具有一个输出引脚,用于传输检测到的红外信号。将模块的输出引脚连接到微控制器或单片机的一个GPIO引脚,以便读取和处理红外信号。感应器连接:红外感应模块通常由红外发射器和红外接收器组成。红外发射器发射红外光,而红外接收器接收反射回来的红外信号。将红外发射器引脚连接到模块的发射器引脚,将红外接收器引脚连接到模块的接收器引脚。调节电阻:红外感应模块通常具有一个调节电阻,用于调整感应的距离和敏感度。根据需要,通过调节这个电阻来调整模块的灵敏度。滤波电容:为了提高红外感应模块的稳定性和抗干扰能力,可以在电路中添加一个滤波电容。将滤波电容连接到模块的相应引脚,以滤除高频噪声。3.3.4显示模块设计图3.5显示模块原理图考虑到要显示的是教室人数和时间这两个数据,所以只需要能够显示一到两行的显示器即可。我选择了LCD1602液晶显示器。它是一款工业字符型液晶,可以显示两行数据,每行可以显示十六个符号、字母或者数字,刚好可以满足设计的需要。它体积小巧,功耗较低,显示效果良好,是一款非常实用的液晶显示设备。LCD1602工作在3.5V~5V的工作电压下,它内部设计有复位电路,可以进行光标移动、清屏的操作。显示的亮度可以通过外部连接的电位计进行调节。内部带有存储器可以储存数据。它可以直接与单片机相连接,通过单片机程序来控制液晶的显示。
第4章系统的软件设计4.1软件主流程图软件部分的主要任务时完成对光照检测电路和传感器信号处理电路的输出信号进行处理。通过光照强度的强弱自动控制灯的亮灭;通过按键设置开关灯时间和实现自动手动模式的切换。系统初始化开始系统初始化开始否否系统初始化成功系统初始化成功检测教室光照强度 检测教室光照强度时钟电路红外传感器显示模块光照传感器时钟电路红外传感器显示模块光照传感器 实现时间掉电保存检测教室出入人数显示教室时间和人数实现时间掉电保存检测教室出入人数显示教室时间和人数结束结束图4.1软件主流程图4.2时钟模块的软件设计DS1302是一款实时时钟芯片,用于嵌入式系统中对时间的管理。以下是该模块的软件设计:1.初始化:(1)配置所需的GPIO引脚,将其连接到DS1302的控制引脚(如时钟、数据和复位引脚)。(2)将DS1302芯片的控制引脚拉高,以进入正常工作模式。(3)设置DS1302的初始时间和日期。2.读取时间和日期:(1)将数据和时钟引脚设置为输入模式。(2)发送读取命令给DS1302。(3)通过时钟引脚读取数据位。(4)将读取的数据解码为时间和日期格式。3.设置时间和日期:(1)将数据和时钟引脚设置为输出模式。(2)发送写入命令给DS1302。(3)将要设置的时间和日期数据编码并通过数据引脚发送给DS1302。4.更新时间:(1)读取当前时间和日期。(2)增加或减少所需的时间量。(3)设置更新后的时间和日期。5.备份和恢复时间:(1)使用非易失性存储器(如EEPROM)来备份当前时间和日期。(2)当系统断电后,重新上电时,从备份中恢复时间和日期。DS1302时钟模块的软件设计包括以下几个方面:引入库文件:首先,在你的代码中引入DS1302时钟模块的库文件,以便可以使用相关的函数和常量。这些库文件可以是自己编写的或者是第三方提供的,根据具体情况进行选择。初始化时钟模块:在代码的初始化部分,通过相应的函数初始化DS1302时钟模块。这包括设置时钟的初始时间、日期和相关的参数,如12小时制还是24小时制、星期几的起始设置等。读取时钟数据:使用相应的函数从DS1302模块中读取当前的时钟数据,包括年、月、日、小时、分钟和秒等信息。将这些数据存储在变量中以供后续使用。设置时钟数据:如果需要设置时钟数据,使用相应的函数将新的时间、日期等信息写入DS1302模块中。这可以包括手动设置当前时间,或者根据其他传感器或网络时间服务器来自动更新时间。控制时钟模块:可以编写相应的函数来控制DS1302时钟模块的其他功能。例如,可以实现闹钟功能、定时器功能或者定期检查时钟数据的变化等。与其他模块的交互:DS1302时钟模块通常与其他模块一起使用,如LCD显示屏、LED灯、蜂鸣器等。根据具体需求,编写相应的代码来与这些模块进行交互,实现时钟数据的显示、报警功能等。错误处理和异常情况:考虑到可能出现的错误和异常情况,编写相应的代码来处理这些情况。例如,如果无法读取或写入时钟数据,可以采取相应的措施来处理或报告错误。4.3光照检测模块的软件设计如图4.2为该模块的设计流程图。接通电源后,光照传感将收集的光照强度信息传输给单片机,在由单片机进行信息处理。系统初始化开始系统初始化开始 N初始化成功初始化成功 Y采集光线强度信息采集光线强度信息结束结束图4.2光照检测模块设计流程图该模块的软件设计可以按照以下步骤进行:引入库文件:在代码中引入与所使用的开发平台和编程语言相对应的库文件,以便可以使用LM393模块相关的函数和常量。初始化引脚:根据所选的引脚配置,将光线传感器模块的输出引脚连接到微控制器或单片机的GPIO引脚。在代码的初始化部分,设置这个GPIO引脚为输入模式。主循环:在主循环中,持续地读取光线传感器模块的输出引脚状态。可以使用相应的函数来获取引脚的状态值(高电平或低电平),表示光线的强弱。光线检测:通过判断引脚的状态值,可以确定当前光线的强弱。可以设置一个阈值,比较读取到的光线强度与阈值的大小关系,从而确定是否达到某种光线触发条件。响应动作:当光线达到触发条件时,根据实际需求,可以执行相应的动作。例如,可以通过控制输出引脚来驱动其他设备,如LED灯、蜂鸣器等,以指示或响应光线变化。错误处理和异常情况:考虑到可能出现的错误和异常情况,编写相应的代码来处理这些情况。例如,如果无法读取光线传感器模块的输出引脚状态,可以采取相应的措施来处理或报告错误。可选:数据记录和分析:如果需要对光线数据进行记录和分析,可以使用适当的数据结构和算法来保存和处理读取到的光线强度值。这可以包括数据存储、数据统计、图表绘制等功能。4.4红外感应模块的软件设计如图4.3为该模块的设计流程图。接通电源后,两个红外传感器来检测教室内出入人员,从而判断教室中的人员数量。系统初始化开始系统初始化开始 N初始化成功初始化成功 Y采集人员信息采集人员信息结束结束图4.3红外感应模块设计流程图红外感应模块的软件设计可以按照以下步骤进行:引入库文件:在代码中引入与所使用的开发平台和编程语言相对应的库文件,以便可以使用红外感应模块相关的函数和常量。初始化引脚:根据所选的引脚配置,将红外感应模块的输出引脚连接到微控制器或单片机的GPIO引脚。在代码的初始化部分,设置这个GPIO引脚为输入模式。主循环:在主循环中,持续地读取红外感应模块的输出引脚状态。可以使用相应的函数来获取引脚的状态值(高电平或低电平),表示是否检测到红外信号。红外信号检测:通过判断引脚的状态值,可以确定当前是否检测到红外信号。可以设置一个阈值,比较读取到的状态值与阈值的大小关系,从而确定是否达到红外信号触发条件。响应动作:当检测到红外信号达到触发条件时,根据实际需求,可以执行相应的动作。例如,可以通过控制输出引脚来驱动其他设备,如LED灯、蜂鸣器等,以指示或响应红外信号。错误处理和异常情况:考虑到可能出现的错误和异常情况,编写相应的代码来处理这些情况。例如,如果无法读取红外感应模块的输出引脚状态,可以采取相应的措施来处理或报告错误。可选:数据记录和分析:如果需要对红外信号进行记录和分析,可以使用适当的数据结构和算法来保存和处理读取到的红外信号值。这可以包括数据存储、数据统计、图表绘制等功能。4.5显示模块的软件设计LCD1602有16个引脚,其中RS、RW的值控制单片机对它的读写:表4.1LCD工作状态介绍RSRW操作命令00写入指令寄存器(清清屏等)01读busy(DB7),以及读取位址计数器(DB0—DB6)的值10写入数据寄存器(显示各字符等)11从数据寄存器读取数据在使用LCD1602液晶显示器显示字符之前,需要检查模块的忙标志位,只有在该标志位为低电平时才能执行指令。为了显示指定的字符,需要获取该字符在液晶显示器内部RAM中的地址。此外,液晶显示器内部有11条控制指令,包括清屏和光标移位等功能。通过执行这些指令,可以实现液晶显示器的各种显示功能。系统初始化开始系统初始化开始 N初始化成功 初始化成功 Y写控制字 写控制字写数据写数据显示显示结束结束图4.4显示模块流程图LCD显示模块的软件设计可以按照以下步骤进行:引入库文件:在代码中引入与所使用的开发平台和编程语言相对应的LCD库文件,以便可以使用LCD显示模块相关的函数和常量。这些库文件可以是自己编写的或者是第三方提供的,根据具体情况进行选择。初始化LCD:在代码的初始化部分,通过相应的函数初始化LCD显示模块。这包括设置LCD的参数、模式和初始化显示内容等。具体的初始化步骤和函数调用方式将根据LCD模块的型号和接口类型而有所不同,需要参考相关的文档和数据手册。显示内容:使用LCD库提供的函数,可以在LCD显示模块上显示所需的内容。这可以包括文本、数字、图标、图像等。根据具体需求,调用相应的函数将数据传输到LCD模块上的指定位置,并实时更新显示内容。控制光标:如果需要在LCD上显示光标,可以使用相应的函数控制光标的位置和显示状态。这可以用于用户输入、指示当前操作位置等。清除屏幕:如果需要清除LCD屏幕上的内容,可以调用相应的函数进行清屏操作。这样可以提供一个空白的显示区域,为显示新的内容做准备。功能扩展:根据LCD模块的支持,可以实现各种功能扩展。例如,可以调整显示的亮度、对比度,设置背光等。还可以添加滚动、翻页、动画等效果来丰富显示体验。错误处理和异常情况:考虑到可能出现的错误和异常情况,编写相应的代码来处理这些情况。例如,如果无法正常初始化LCD模块或无法进行通信,可以采取相应的措施来处理或报告错误。
第5章系统测试5.1系统实物图图5.1系统完整实物图该设计的实物图如图5.1所示。该系统通过LCD1602液晶屏来完成显示功能,能够显示当前时间、年月日、时分秒以及当前教室人数。通过2路红外探头完成实时监控教室人数的功能,实现感应当前教室进出人数。此外,系统还配备了按键,用于设置当前时间、自动手动模式、开启和关闭教室灯光时间以及控制灯光亮度等。在手动模式下,通过按键可以直接控制灯光亮度,一共有三档可供选择。而在自动模式下,光敏传感器会检测当前教室的光线强度,如果光线较弱并且有人在教室内,系统会自动开启台灯进行照明。此时,照明的亮度会根据当前教室人数进行调节,当室内人数在0-10人之间时,灯光亮度为1档,当室内人数在10-20人之间时,灯光亮度为2档,当室内人数大于20人时,灯光亮度为3档。该系统的整体软件设计可以按照以下步骤进行:引入库文件和定义常量:在代码中引入与所使用的开发平台和编程语言相对应的库文件,以便可以使用LCD、红外探头、光敏传感器等相关的函数和常量。同时定义需要用到的常量,如灯光亮度档位、人数阈值等。初始化硬件:在代码的初始化部分,通过相应的函数初始化LCD、红外探头、光敏传感器以及按键等硬件模块。设置引脚的输入输出模式,并进行必要的参数配置。显示时间和人数:使用LCD库提供的函数,根据获取到的时间和人数信息,在LCD1602液晶屏上显示当前时间、年月日、时分秒以及当前教室人数。监测人数:在主循环中,使用2路红外探头实时监测教室人数。通过检测红外信号的触发状态,判断人员进出教室的动态变化。根据触发的次数来更新当前教室人数的计数器。控制灯光亮度:在手动模式下,通过按键读取用户的操作,控制灯光的亮度。根据按键的状态,切换灯光亮度档位,并使用相应的函数控制灯光亮度的调节。自动模式下的照明控制:在自动模式下,使用光敏传感器检测当前教室的光线强度。如果光线较弱且有人在教室内,根据当前教室人数的范围,自动调节灯光的亮度档位,并通过相应的函数控制灯光的开启和关闭。设置时间:通过按键操作,设置当前时间。读取按键的状态和操作,根据用户输入的指令来设置年月日、时分秒等时间参数。错误处理和异常情况:考虑到可能出现的错误和异常情况,编写相应的代码来处理这些情况。例如,如果无法读取传感器的状态或无法正常通信,可以采取相应的措施来处理或报告错误。5.2测试目的系统测试的主要目的是验证该系统符合要求,以保证系统的可靠性、稳定性和安全性。具体来说,系统测试的目的包括以下几点:首先,功能验证是系统测试的重要目标之一。这意味着需要测试系统是否能够按照要求完成各项功能。对系统的各个模块进行测试,以验证它们的功能是否正常,是否满足系统的需求。其次,性能测试是另一个关键目标。通过性能测试,可以评估系统的性能是否符合要求。这包括测试系统的响应时间、数据传输速度、功耗等指标,以确定系统的实际性能并确定是否需要进行优化或调整。兼容性测试也是系统测试的重要内容之一。通过兼容性测试,可以验证系统在不同平台、不同环境下的兼容性。这有助于评估系统的可移植性和兼容性,确保系统能够在各种环境下正常运行。此外,可靠性测试是系统测试的关键环节之一。通过长时间运行测试,可以评估系统在运行过程中是否会出现故障、崩溃等问题。这有助于确定系统的可靠性和稳定性,并确定是否需要增强系统的容错能力和稳定性。最后,安全性测试是系统测试不可或缺的一部分。通过安全性测试,可以评估系统在面临安全攻击、恶意软件等情况下的安全性。这有助于确保系统具备良好的安全性和抗攻击能力,为系统的实际应用提供保障。综上所述,系统测试的目的是为了验证系统是否能够正常运行,并确保系统满足各种要求,包括功能、性能、兼容性、可靠性和安全性等方面。这有助于保证系统的质量,提高系统的稳定性和安全性,为系统的实际应用提供保障。5.3测试原理图5.2测试原理图如图5.2为显示模块,实时显示当前时间和当前教室人数。这个模块具有一个清晰的界面,通过它我们可以方便地获取这些信息。在屏幕上,时间以数字形式显示,精确到小时和分钟。而当前教室的人数也会在屏幕上直观地呈现出来。这个显示模块为我们提供了一个方便的方式来获取实时信息,使我们能够快速了解当前的时间以及教室里的人数。图5.3LED灯模块图图5.3展示了一个LED灯模块,它以不同的颜色来表示不同的显示模式。黄色代表自动模式,而绿色则代表手动模式。这个模块通过使用LED灯来传达模式信息,使用户能够清晰地了解当前的工作状态。当LED灯显示为黄色时,表明模块正在运行自动模式,这意味着系统将根据预设的条件和算法自主运行。而当LED灯显示为绿色时,表示模块处于手动模式,需要用户的干预和操作。通过这种设计,用户可以方便地识别出当前的工作模式,并相应地采取适当的行动。这个LED灯模块提供了直观和便捷的方式来指示显示模式,为用户带来了便利。图5.4按键模块图如图5.4为按键模块,左边三个代表时间的设计键,其中右边两个代表增加减少;第一个按键按下,可设置当前时间,连续按下,光标移动,可进行年月日、时间修改,光标到达时间的秒后,再次按下可设置自动模式下的开灯时间,再次按下可设置关灯时间;右边三个按键中左边的表示模式切换,右边两个代表手动模式下的灯亮度的增加和减少。图5.5红外传感器图在图5.5中展示了两个红外传感器,它们用于感知人员进出教室的情况,从而判断教室内的人数。这些红外传感器通过检测红外线的变化来实现人员的感应。当有人进入或离开教室时,红外传感器会感知到这种变化,并通过相应的算法来计算人数。这种技术可以实时、准确地监测教室内的人数变化。通过使用这两个红外传感器,我们可以获取到关于教室内人数的重要信息,从而做出相应的管理和调整。这种人员感应技术为教室管理提供了一种方便和高效的方法。图5.6光照传感器图在图5.6中展示了一个光照传感器,其作用是检测教室内光线的强弱程度。当教室内的光线较暗时,光照传感器会感知到这一情况,并触发相应的反应。在有人存在的情况下,传感器会自动将教室内的灯光点亮。根据人数的不同,灯光亮度也会有所调整。当教室内有0至10人时,灯光亮度为等级1;当有11至20人时,灯光亮度为等级2;而当人数超过20人时,灯光亮度则提升至等级3。通过这种方式,光照传感器能够自动调节教室内的照明,以适应不同人数的需要。这样的设计可以提供舒适的光线环境,并节约能源。光照传感器在教室照明管理中起到了重要的作用,为人们创造了更加宜居的学习和工作环境。
第6章总结与展望6.1总结智能低耗教室照明系统是一种应用现代技术实现智能化、高效能的教室照明系统。本系统采用了多种传感器和控制技术,能够根据教室内的人数、光照情况等因素进行自适应控制,从而实现节能和环保的目的。该系统主要由LCD1602液晶屏、红外探头、按键、光敏传感器等组件构成。其中,LCD1602液晶屏可以显示当前时间、年月日、时分秒和教室人数,而红外探头则用于感应进出人数。按键可以设置当前时间、自动手动模式以及开启和关闭教室灯光时间,而在手动模式下,还可以通过按键直接控制灯光亮度(3档)。自动模式下,光敏传感器会检测教室内光线强度,如果光线较弱并且有人在教室内,系统会自动开启台灯进行照明。该系统设计的核心是智能化和节能环保。通过使用多种传感器和控制技术,系统可以实现自适应控制,根据不同的环境变化来调节灯光亮度和颜色,从而提高照明效率的同时降低能源消耗。此外,通过智能算法和数据分析,系统还可以不断优化和升级,以实现更高的节能效果。总之,智能低耗教室照明系统是一种创新的、高效的照明系统,它不仅可以提高教室照明效率,还可以节省能源,保护环境。随着科技的不断进步,该系统的设计和应用将会不断发展,为教育领域的可持续发展做出更大的贡献。6.2展望智能低耗教室照明系统是一种非常有前途的技术,在未来可能得到更多的应用和发展。以下是一些展望:智能化程度更高:未来智能低耗教室照明系统将更加智能化,不仅能够根据光线强度和人数自动控制灯光亮度,还能够根据教室活动情况、气氛等因素来控制灯光,使教室的照明更加人性化。可视化管理更便捷:未来智能低耗教室照明系统将会加入更多的可视化管理功能,如实时监控教室灯光开关状态、灯光亮度、用电量等信息,为教室管理提供更加便捷和有效的方式。多种传感器技术结合应用:未来智能低耗教室照明系统将会结合更多种类的传感器技术,如声音传感器、温湿度传感器等,使系统能够更加全面地感知教室环境的变化,从而更好地控制教室照明。节能环保更加重要:未来智能低耗教室照明系统的节能环保功能将会更加重要,这也是未来教育机构、学校、企事业单位更加关注的方向。在节能环保方面,未来的系统将会更加注重绿色能源、节约用电等方面的设计,为建设智慧校园、可持续发展提供更好的技术支持。总之,未来的智能低耗教室照明系统将会越来越多地结合传感器、可视化管理、节能环保等技术,为教育机构提供更好的照明管理方案。
参考文献冯浩瀚.阶梯教室智能照明系统设计[P].电视技术2021.杨永鹏.基于深度学习的高校教室智能照明系统的研究[J],重庆理工大学.2020.何林;赵瑞瑞;张慧;张菡.基于ZigBee的教室智能照明系统[J],灯与照明.2021.苟海;刘尧;李杰;刘朝飞.基于单片机的教室智能照明系统设计.科技创新与生产力,2021.徐小玲;雷高伟;刘凌云.基于WiFi的教室智能照明系统设计[P].电子设计工程,2019.刘安彬;张江;向劲松;曾江林.基于图像识别和红外传感的教室智能照明系统[C].中国新通信,2020.黄志文;区莞运;闭吕庆;李显圣.基于MSP430的超低功耗教室智能照明系统[J].广西职业技术学院学报,2019.周碧英.基于89C52的教室智能节能照明系统设计[P].电子设计工程,2021.田甄;李茜茹;曹诗琪;潘阳瑞.基于单片机与晶闸管的智能教室照明系统[J].数字技术与应用.2021马玉凤;韦金玲;梁兰芳.智能教室照明系统[M].电子世界.2020冯浩瀚.阶梯教室智能照明系统设计[J].电视技术,2021,45(12):89-92.DOI:10.16280/j.videoe.2021.12.027.苟海,刘尧,李杰,刘朝飞,陈越,姜博文.基于单片机的教室智能照明系统设计[J].科技创新与生产力,2021(11):115-117.何林,赵瑞瑞,张慧,张菡,刘品杰,张昊,魏建平.基于ZigBee的教室智能照明系统[J].灯与照明,2021,45(02):1-5.[17]宋璐,冯艳平,卫亚博.基于单片机的智能教室照明系统的设计[J].电脑知识与技术,2019,15(04):253-254.DOI:10.14004/ki.ckt.2019.0577.马玉风,韦金玲,梁兰芳。智能教室照明系统[J].电子世界,2017(17):143.DOI:10.19353/ki.dzs.2017.17.1000.JiangLuansheng;LiuChunxia;GuoXiumei.TheDesignofIntelligentLightingSysteminCollegeClassroom.[P].2020MinLi;ShengLiLu.DesignandImplementationofClassroomIntelligentLEDLightingControlSystem.2020. DanTongZhang.ResearchonUniversityClassroomLightingEnergySavingIntelligenceControlSystemBasedonSingleChipMicrocomputer.2021KarmakarAvijit;KumarRajeev.DesignofEnergyEfficientLightingSystemforClassRoom[P].2020AvijitKarmakar;RajeevKumar.DesignofEnergyEfficientLightingSystemforClassRoom[C]2018AvijitKarmakar;;RajeevKumar
附录电路图程序#include"common.h"#include"DS1302.h"#include"lcd1602.h"sbitLED1=P1^0;//自动模式指示灯sbitLED2=P1^1;//手动模式指示灯sbitKEY1=P1^2; //设置键sbitKEY2=P1^3; //加键sbitKEY3=P1^4;//减键sbitKEY4=P1^5; //切换键sbitKEY5=P1^6; //灯光亮度加sbitKEY6=P1^7;//灯光亮度减sbitHW_Outside=P3^6;//外面的传感器sbitHW_Inside=P3^7;//里面的传感器sbitGM=P3^3;//光敏sbitPWMLED=P2^3;//PWM灯光ucharPWM_Val=0xFF;//用于PWM调节ucharGearTemp=0;ucharxdataDS1302_Table[7]={0};ucharxdatasec,min,hour,day,month,week,year;bitp_r=0; //平年/润年=0表示平年,=1表示润年ucharsetn=0;//设置标志ucharkq_shi=18,kq_fen=30;//开启时间 18:30uchargb_shi=22,gb_fen=0;//关闭时间22:00unsignedintCountNum=0;//人数bitMode=0;//0是自动模式,1是手动模式voidInitialTimer2(void)//定时器2,定时100us{T2CON=0x00; //16BitAuto-ReloadModeTH2=RCAP2H=0xFF; //重装值,初始值 TL2=RCAP2L=0x18;TL2=RCAP2L=0x9C;ET2=1; //定时器2中断允许TR2=1; //定时器2启动 EA=1;}voidDimming(uchartemp)//调节LED{ switch(temp) { case(0):PWM_Val=0xFF;PWMLED=0;break; case(1):PWM_Val=0x46;break; case(2):PWM_Val=0x28;break; case(3):PWM_Val=0x00;PWMLED=1;break; default:PWM_Val=0x00;PWMLED=1;break; }}voiddisplayTime(){ //显示时间 lcd_write_com(0x80+6); lcd_write_data('2'); lcd_write_data('0'); lcd_write_data(DS1302_Table[0]/10+0x30);//显示十位 lcd_write_data(DS1302_Table[0]%10+0x30);//显示个位 lcd_write_data('-'); lcd_write_data(DS1302_Table[1]/10+0x30); lcd_write_data(DS1302_Table[1]%10+0x30); lcd_write_data('-'); lcd_write_data(DS1302_Table[2]/10+0x30); lcd_write_data(DS1302_Table[2]%10+0x30); lcd_write_com(0x80+0x40+7); lcd_write_data(DS1302_Table[4]/10+0x30); lcd_write_data(DS1302_Table[4]%10+0x30); lcd_write_data(':'); lcd_write_data(DS1302_Table[5]/10+0x30); lcd_write_data(DS1302_Table[5]%10+0x30); lcd_write_data(':'); lcd_write_data(DS1302_Table[6]/10+0x30); lcd_write_data(DS1302_Table[6]%10+0x30);}voidmain(){ bitin_flag=0,out_flag=0;//进出标志 bitf1=0,f2=0; LED1=0; Mode=0;//自动模式 PWMLED=0;//让灯熄灭 lcd_init();//1602初始化 lcd_write_str(0,0,"Count|2000-00-00"); lcd_write_str(0,1,"000|00:00:00"); InitialTimer2();//定时器初始化 while(1) { keyscan(); if(setn==0)//不在设置模式下 { Run_DS1302();//读取时间,并且显示 if(HW_Outside==0)//外面的传感器 { delay_ms(1); if(HW_Outside==0) { if(f1==0)//每次感应只执行一次 { f1=1; if(out_flag==1)//先判断是不是出来的人,如果是就人数减1 { out_flag=0; in_flag=0; if(CountNum>0)CountNum--;//人数减1 } elsein_flag=1;//如果不是出来的,则是进去的人 } } }
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度家具设计与生产销售合同2篇
- 体育教练聘用合同
- 2024年度环保设备维护与运营合同3篇
- 2024年度东莞市房屋买卖合同3篇
- 租用物料合同范本
- 实习劳动合同范本
- 二零二四年度保险合同理赔程序及范围2篇
- 2024年度跨境电子商务平台共建合同2篇
- 年度淘宝店铺全托管运营服务合同(04年)
- 树木种植合同
- 少先队辅导员工作记录表(共7页)
- 世界少年奥林匹克数学竞赛 (中国区)选拔赛全国总决赛
- 学校校长工作述职报告PPT课件(有内容)
- 第五章硅酸盐分析
- 平安工地自查自纠活动总结
- 小学六年级数学趣味竞赛试题(课堂PPT)
- 小学作文假如我是(课堂PPT)
- 高等学校英语应用能力考试B级真题作文及参考范文
- 课件-秋妈妈和果娃娃
- 中国银行境外汇款申请书打印模板(新)
- 《交互设计》课程教学大纲
评论
0/150
提交评论