资讯详情 基于51单片机火灾报警
📅 2026/11/5 1:59:14
基于51单片机火灾报警木子单片机摘 要随着现代的家庭用火、用电量的增加家庭火灾发生的频率随之提高人们的防火意识也随之增强。为了有效避免火灾以及减少各类火灾危险造成的直接损失我们必须遵循“隐患险于明火防患胜于救灾责任重于泰山”的基本理念设计和完善火灾自动报警系统将火灾消灭在萌芽状态最大限度地减少社会财富的损失。这就出现了火灾探测报警技术越来越受到人们的重视也被广泛应用于各种场合的情况。本文设计的是智能火灾报警系统。即可以对火灾进行检测本文的核心处理器是单片机由气体传感器和温度传感器对气体浓度及室内温度进行检测检测的数值显示在显示屏中当检测值超过阈值时、可以实现声光报警并同时打开排气扇。在硬件设计方面本设计所研究的智能火灾报警系统选用STC89C52为核心控制器气体传感器采用MQ-2模数转换采用ADC0832芯片温度传感器采用DS18B20声光报警由蜂鸣器、PNP三极管和LED灯组成设定阈值采用非自锁按键在软件设计方面包括主程序、气体浓度子程序、温度子程序、按键子程序。通过这些传感器和芯片当周围环境中有害气体浓度或温度等发生变化时系统会自动发出一个相应的灯光报警信号和声音报警信号以此方式来实现火灾自动报警智能化报警提示。关键词气体传感器MQ-2火灾报警单片机智能控制DS18B20AbstractAlong with the modern home with fire, electricity consumption increases, the frequency of home fires is getting higher and higher. Smoke detectors have also been widelyused in various occasions.Wireless multifunctional fire alarm in the paper uses STC89C51 as the core controller,the realization of the basic functions of the gas sensor MQ-2, ADC0809 converter etc..Through these sensors and chips, when environmental smoke concentration or combustible gas concentration changes the system sends out corresponding light alarm signal and the sound alarm signal, in order to achieve smoke alarm, when the smoke reaches a certain range, the system can also drive the relay, the relay can drive a load, such as a ventilation fan, alarm signal lamp, fire hydrant water tap switchetc.. Implementation of intelligent alarm control.Key words:MQ-2 gas sensor; fire alarm; MCU; intelligent controlDS18B20第1章 绪论1.1 课题的研究背景火灾作为一种在时空上失去控制的燃烧所引发的灾害对人类生命财产和社会安全构成了极大的威胁。由此引发的重大安全事故比皆是所以人类一直也未停止过对它的研究。火灾早已成为我国常发性和破坏性以及影响力最强的灾害之一。随着经济和城市建设的快速发展城市高层、地下建筑以及大型综合性建筑日益增多火灾隐患也大大增加火灾发生的数量及其造成的损失呈逐年上升趋势。在过去的一段时间人类不得不持续对火灾进行专题研究预测火灾发生过程中的爆发截至目前已形成一个相对成熟的概念。在火灾的发生及其发展过程中一个复杂的物理和化学反应过程但也与环境有很强的相关性。正常情况下发生火警伴随着的是烟雾温度光照信号产生的过程。产生不同的环境和不同的燃烧成分烟雾粒度的组成温度的分布和光谱的气体成分都是不同的所以火灾过程中涉及多个物理和化学参数一般的骚乱有着本质的不同。基于上述特点早期的火灾探测技术应运而生越来越多的火灾探测技术被广泛采用在各种火灾探测领域如复合材料的物理参数复合烟气温度探测器使用不同材料的带光传感器的复合双波段火焰探测器。在我国当前社会随着国民经济的发展和人民生活水平的不断提高工业与民用建设日趋增多火灾发生的可能性也随之大幅提高。另外现代建筑物中塑料制品和玻璃的大量应用使火场内部的求援行为困难重重。现代建筑尤其是在大型高档公寓酒店宾馆商场图书馆博物馆档案馆和办公楼及其他大型商业公共场所对于火灾的危险探测报警系统也提出了更高的安全技术性能要求。一旦发生的火灾很难及时救助时势必要给国家和个人带来不可估量的损失。基于上述情况火灾自动报警技术便应运而生火灾自动报警系统始终是警惕火灾和输出联动忠实的哨兵火灾信号的有力手段是一种早期预警。1.2 课题的研究目的与意义目的随着我们步入现代化的社会以及家庭日常用火用电的不断增加家庭中发生重大火灾事故的频率越来越高。家庭发生重大火灾很容易造成明火扑灭不及时在缺乏消防设备和在场的人惊慌失措、逃离缓慢的不利因素下最终导致人民的生命和财产遭受重大损失。据消防部门去年的统计数据调查分析结果显示所有的火灾比例中家庭火灾发生的比例已经占到去年全国火灾的30。家庭火灾的原因是多方面的可能就在我们面前发生也可能隐藏在我们没有注意到的地方。综上所述因为许多人不懂家庭安全常识而引起火灾事故使好端端的幸福家庭在自己眼前毁于一旦有的甚至可以导致家破人亡。而且一旦发生居民家庭火灾处置不当、报警迟缓都是造成人员伤亡的重要因素。所以说人们应该积极了解家庭火灾的主要起因还要预防火灾的发生。这就是我们研究声光报警器的目的。意义在中国的一些大、中型城市几乎每一天都在发生家庭火灾所以每一个家庭必须关注防火。如果能根据各个家庭的实际情况提前采取简单的防火措施就能避免许多灾难的发生。声音和灯光视觉的报警对减少火灾损失具有重大的现实意义。一系列悲剧性的损失让国家从社会各界意识到声光报警对于火灾报警的必要性。据调查在最近一次发生的火灾公寓内大部分的房间里都没有安装报警器。因此声光报警对于火灾预防具有重要意义。1.3 火灾报警器的发展与现状近年来无线火灾报警控制系统在国外已被广泛开发并逐渐走向实用。起初无线火灾报警控制系统不仅是价格贵还必须连接室外布线这样还是只适合一些特殊的偏远地方检测火灾设备的一部分。今天几乎所有的电气装置都可以通过无线遥控进行改变可广泛应用于各类大型建筑和公共场所。美国松柏公司ITI成立于1981年是美国最大的无线报警系统制造商其产品占90的无线报警器在北美市场的年销售额已接近一亿美元。该公司生产的无线火灾报警系统还通过了中国的“国家消防电子产品质量监督检验测试中心”的监测该系统可作为火灾报警系统但也可作为一个安全的系统两者的结合是一个高科技的无线安全系统。火灾报警系统出现在中国的时间相对较晚与发达国家相比 20世纪70年代末的十几年间我国开始研制并生产火灾报警系统。 20世纪80年代后国内各大厂商也基本模仿国外产品或引进国外技术生产没有真正意义上的核心技术市场也才刚刚开始发展。在20世纪90年代火灾报警产品的发展促进了市场的成熟政府开始逐步的开放大门在同一时间外国公司开始进入中国的防火市场带来先进的技术。在此期间中国生产火灾报警产品的企业也得到了快速发展在一些企业中彼此技术合作合资生产并取得了不菲的成绩。今天市场上已经创造了许多强大的生产企业有些技术正接近或赶上国际标准。1.4课题的研究内容火灾报警器主要用于检测室内温度和烟雾浓度再通过单片机来控制相应的报警并驱动负载。通过液晶显示温度和烟雾浓度的阈值还有当前的烟雾值和温度值通过按键设定设置相应的阀值。该项目主要是为了完成任务包括1硬件部分主要包括温度传感器的选取显示模块的选择烟雾信号转换电路的设计报警驱动电路的设计。2软件部分内容包括微处理器正确控制程序的编制和原理图的绘制。3系统的综合调试与分析在软硬件完成以后要对系统进行综合的测试与实验分析系统的可靠性与实用性调整系统的不足。2 火灾报警器的总体方案设计本研究课题主要内容是实现烟雾报警和火灾发生时的报警及控制下面分别对系统功能要求、系统技术要求及系统实现方案总体阐述。2.1系统的功能要求本系统的研制主要包括以下几项功能(1)火情探测功能为了提高火灾报警的准确性和及时性火灾报警系统需要使用各种方法进行火灾探测。在实际使用中根据不同的防火场所用户可以选用温度探测法、可燃气体检测法及烟雾探测法等合适的火灾探测方法来有效的探测火灾(2)灯光报警功能当室内烟雾浓度过大、有火情产生、故障等异常情况发生时报警器要进行灯光报警。当烟雾超过最大设定值时可以蜂鸣器报警。2.2 系统的技术要求在了解这个系统的工作原理以及功能之后我们就可以基本确定系统的技术要求。系统采用的单片机处理器成本都比较低可以满足批量生产和各类工程的需求。对于完整的一个系统而言为提高市场的竞争力这个系统应符合体积小、功耗低、数传性能可靠和成本低廉等技术要求。具体指标和参数如下:(1)体积小探测器的体积要尽可能的小这样占用的空间才能减少使用和更换才会方便(2)功耗低系统可以采用三节5号干电池供电或5v电源供电。(3)可靠性高:由于不确定的电磁干扰可能存在在系统工作环境中为了保证系统长时间的可靠工作以及减少误报次数所以选择多指示灯指示不同的状态。2.3 系统的组成及方案设计本设计主要由烟雾探测传感器电路、单片机、灯光报警电路、负载驱动电路、控制程序和编解码程序等组成。系统的组成结构如下图2-1 系统整体设计原理框图2.4 方案论证2.4.1 微处理器选择方案一:使用8031单片机。8031片内不带程序存储器ROM使用时用户需外接程序存储器和一片逻辑电路373外接的程序存储器多为EPROM的2764系列。用户若想对写入到EPROM中的程序进行修改必须先用一种特殊的紫外线灯将其照射擦除之后再可写入。写入到外接程序存储器的程序代码没有什么保密性可言。方案二:使用STC89C52单片机。系统选用宏晶科技公司生产的STC89C52单片机作为控制核心,并由其构成单片机最小系统,STC89C52使用经典的MCS-51内核,片内带有8KB的Flash ROM 和512B的RAM ,32个通用IO口,1个全双工的串行接口,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),集成看门狗定时器和MAX810复位电路﹐工作频率范围O-40MHz,工作电压范围5.5V-3.3V。方案比较:由于8031类型的单片机应用的早影响很大已成为事实上的工业标准。后来很多芯片厂商以各种方式与Intel公司合作也推出了同类型的单片机如同一种单片机的多个版本一样虽都在不断的改变制造工艺但内核却一样也就是说这类单片机指令系统完全兼容绝大多数管脚也兼容;在使用上基本可以直接互换。我们统称这些与8051内核相同的单片机为“51系列单片机”。单片机是报警系统的核心部件一方面它要接收来自传感器的烟雾浓度和温度的模拟信号数字信号和故障检测信号另一方面要对两种信号分别进行处理控制后续电路的相应工作;同时查询是否有键按下的命令。在单片机实现的功能中将模数转换后的信号做数字滤波再进行线性化处理这一过程的软件实现需要单片机有较快的运算速度使仪表监测人员能够观测到实时的烟雾浓度并进行相应处理。同时在能够满足报警器设计的计算速度及接口数的要求的同类型单片机中要考虑选择价格低廉且体积轻巧的机型在保证了报警器的精确性、可靠性及抗干扰性的基础上能够不提高成本缩小体积。STC89C52单片机应用普遍工具多易上手片源广价格低且适合民用、商用用途更广泛。综合以上观点本论文选定STC89C52作为本系统的核心。2.4.2烟雾传感器的选择烟雾传感器作为烟雾检测报警器的信号采集部分是智能火灾报警系统的核心组成部分之一。由此可见传感器的选择是非常重要的直接关系到智能火灾报警系统能否工作。烟雾传感器一种室内安装的探测器用于检测现场环境是否有烟雾以及烟雾的浓度。现在市面上使用的烟雾传感器主要分为离子式烟雾传感器和气敏式烟雾传感器。那么现在就来对比一下这两种烟雾传感器优劣势选择一个适合本设计的烟雾传感器。方案一:选择使用NIS-09C离子式烟雾传感器。NIS-09C离子式烟雾传感器属于低功耗、灵敏度高的烟雾传感器离子感烟探测器探头电路是利用两片放射性物质媚241构成的两个电离室(检测电离室和补偿电离室)及场效应晶体管(EFT)等电子元件组成。其工作原理为:P1和P2是一相对的电极在电极之间放有a放射源由于它持续不断地放射出a射线a粒子以高速运动撞击空气分子从而使极扳问空气分子电离为正离子和负离子(电子)这样电极之间原来不导电的空气具自一定的导电性使探头电路导通从而实现探测器感应烟雾的功能。方案二:选择使用MQ-2气敏式烟雾传感器。MQ-2烟气敏式雾式烟雾传感器可用于家庭和工厂的气体泄漏监测装置适宜于液化气、丁烷、丙烷、甲烷、酒精、氢气、烟雾的探测是一种探测范围广泛灵敏度高相应速度快使用寿命长稳定性高的烟雾传感器。方案比较:火灾烟雾是由气、液、固体微粒群组成的混合物具有体积、质量、温度、电荷等物理特性。NIS-09C离子式烟雾传感器是通过相当于烟敏电阻的电离室引起的电压变化来感知烟雾粒子的微电流变化装置。当烟雾粒子进入电离室改变了电离室空气的电离状态从而宏观表现为电离室的等效电阻增加引起电离室两端的电压增大由此来确定空气中的烟雾状况。MQ-2气敏式烟雾传感器可探测烟雾浓度与空气中某些可燃气体的成分探测空气中可燃气体的含量能有效地探测煤气、液化石油气、然气、一氧化碳等多种可燃性气体的微量泄漏。然而尽管NIS-09C离子式烟雾传感器的性能与灵敏度都较强于MQ-2气敏式烟雾传感器但是在价格方面NIS-09C烟雾传感器要比MQ-2烟雾传感器高体积也较大相比于MQ-2气敏式烟雾传感器来说MQ-2气敏式烟雾传感器已经满足低功耗、灵敏度高的探测需求所以MQ-2气敏式烟雾传感器更适用于本设计的智能火灾报警系统。本设计最终选择使用MQ-2气敏式烟雾传感器。2.4.3温度探测器的选择方案一热敏电阻在一定的范围内它的阻值随着温度的不断改变也发生变化的特点所以它能够作为本系统设计的温度检测模块。如选用它作为本系统的温度检测模块则在系统中要设计相应的分压电阻并且需要安装数模转换器设计数模转换电路整体的电路设计比较复杂。在精准度方面热敏电阻的变化曲线是非线性曲线检测温度时可能有很大误差。方案二温度传感器DS18B20它的特点是数字型传感器不需要模数转换在数据传输时仅需要一条数据而且很容易与单片机相连减少了硬件的成本电路设计简单化同时它的测量精度高且范围广检测温度范围在-45℃至125℃之间当屋内发生火灾时环境温度会迅速上升至百摄氏度以上在平时的生活中是不会有其它情况使温度瞬间升至百摄氏度故不存在误判的情况。方案比较数字式传感器DS18B20相比方案一结构简单不需要A/D转换模块使成本降低精度提高误判率低。因此选择温度传感器DS18B20。2.4.4显示模块显示屏作为本系统不可或缺的器件,能够直观的表现智能火灾报警系统的工作情况。因此显示屏的选择也是设计本系统至关重要的环节下面是两个可选方案的比较与论证。方案一选择使用LCD1602液晶显示屏。LCD液晶显示屏是一款体积小、厚度薄、重量轻、可背光、无闪烁、无辐射、耗能少并能够直接与CSMOS电路匹配的显示屏。方案二采用LED共阴极/共阳极数码管。其电路简单接线方便功耗极低。但对于本系统缺点十分明显由于它显示的字符长度十分有限所以如果想扩展位就需要改变电路的设计和相关软件的配置。不利于整个系统的设计与实际制作。缺点是无法显示字母对于本系统而言这个缺点是致命的完全背离了基本设计要求。方案比较:由于需显示的数据较多为了使该系统的操作与观察更为方便与人性化通过实际系统其它所需要进而考虑本系统设计采用LCD1602。3 系统的硬件设计3.1 单片机最小系统最小系统包括单片机及其所需的必要的电源、时钟、复位等部件能使单片机始终处于正常的运行状态。电源、时钟等电路是使单片机能运行的必备条件可以将最小系统作为应用系统的核心部分通过对其进行存储器扩展、A/D扩展等使单片机完成较复杂的功能。STC89C52单片机微处理器的最小系统如图3-1所示。(1) 时钟电路STC89C52单片机的时钟信号通常选用内部时钟方式。在STC89C52单片机中有一个用于构成内部振荡器的高增益反相放大器引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。只要在单片机的XTAL1(18)和XTAL2(19)引脚外接石英晶体(简称晶振)就构成了自激振荡器并在单片机内部产生时钟脉冲信号。图中电容C1和C2的作用是稳定频率和快速起振电容值选用典型值为30pF。晶振CYS的振荡频率范围在1.2~12MHz间选择典型值为12MHz和6MHz。(2)复位电路复位是使单片机或系统恢复某种确定的初始状态。单片机就是从复位开始工作的。当STC89C52单片机开机瞬间RST引脚获得高电平随着电容C1的充电引脚的高电平将逐渐下降。若RST引脚的高电平保持2个机器周期单片机就复位持续保持则循环复位[5]。复位后温度传感器DS18B20设置的值为50℃烟雾传感器MQ-2设置的值为45ppm。本设计采用按键手动复位按键手动复位使用的是电平复位。其中电平复位是通过9引脚RST端与电源Vcc接通而实现的。图3-1 单片机最小系统原理图3.2 烟雾检测电路的设计如图3-2所示在这个电路中有两个部分主要是烟雾传感器检测烟雾将电压信号给ADC0832模数转换电路将模拟信号转换成数字信号给单片机单片机再读取相应的数值和处理。3.2.1 烟雾传感器电路MQ-2型气体传感器用于以氢气为主要成分的城市煤气、天然气、液化石油的测量而且它抗干扰能力强水蒸气、烟等干扰气体对它的影响小。MQ-2共有6只针状管脚其中4引脚和6引脚用于信号传送1引脚和3引脚用来接直流电源供电2引脚和5引脚用于提供加热电流其中1引脚和3引脚需要短接4引脚与6引脚需要短接。C4电容为滤波电容5引脚接的R7电阻为保护电路可以去掉此电阻但不推荐。直流电压直接供传感器MQ-2的加热丝F-F工作F两端接到电源的两端起预热的作用检测烟雾之前传感器MQ-2要给加热丝预热一定时间。在可燃气体或烟雾中MQ-2烟雾传感器的电阻会有相应的变化当烟雾浓度变大时MQ-2的内部电阻会减小由MQ-2的6引脚输出的模拟信号增大以此来表示当前的被检测气体浓度。3.2.2 A/D转换电路经气敏传感器所检测的电压信号为模拟信号无法直接被单片机所识别所以在经过放大电路后对信号进行AD装换将模拟信号转化为数字信号输入单片机AD转换。ADC0832与单片机进行数字信号传输所需要引脚分别有片选引脚CS、时钟引脚CLK、输出信号DO和输入信号DI引脚由于ADC0832中的输入输出引脚工作时无法同时有效所以将DI和DO并联在一根数据线上。ADC0832芯片内部所需要的时钟脉冲由单片机提供经CLK引脚送入芯片ADC0832中。当ADC0832未工作时其CS输入端为高电平当要进行A/D转换时CS置于低电平并使ADC0832进入工作状态。ADC0832是一款具有8位分辨率的半导体模数转换器其最大量化编码值就是0xFF那么所对应的模拟电压值就是基准电压值即 Vref。而该芯片的电源电压也是基准电压因此如果电源电压为5V则最大量化编码值为0xFF那么其一半 2.5V对应 FF/2 7F。输入电压 UinVref与量化编码值M十进制的关系为采用模拟信号量输出的MQ-2气体检测探头进行检测所输出的模拟量信号通过ADC0832模数转换器转换至数字信号输入值至单片机并运算。图3-2 气体检测电路图3.3 液晶显示电路设计液晶显示部分如图3-3采用LCD1602用STC89C52的P0口作为数据线其中 P1.1连接E使能信号6引脚P1.0连接RS数据/命令选择端4引脚5引脚R/W读/写选择端接地。显示屏的VL液晶显示偏压信号3引脚接了2个电阻这两个电阻为串联分压10K电阻接在电源上470电阻接在地。2个电阻间的节点会输出一个电压值由3引脚采集此电压值此电压值为0.7V左右。3引脚主要作用为灰度调节若这两个电阻接反或者接错显示屏将出现显示模糊或无显示的错误。1引脚VSS与2引脚VDD分别接地与5V电源为整个显示系统供电15引脚BLA与16引脚BLK分别接5V电源与地为显示屏灯光增强可视性。在单片机中写入已编写完成的程序后利用ASCII码来在屏幕上显示对应程序输入的内容。表3-1显示位与 DD RAM 地址的对应关系显示位序号1 2 3 4 5……40DD RAM地址HES第一行00 01 02 03 04 ……27第二行40 41 42 43 44……67图3-3 LCD1602显示电路图3.4 声光报警提示电路3.4.1 灯光报警电路光报警电路结构简单仅由分压电阻和LED发光二极管所组成的。LED发光二极管的工作电压为3V供电的电压为5V。初始时单片机的P2.2接口为高电平此时的LED发光二极管不会被点亮。当温度传感器DS18B20检测到的温度超过设定的阈值时经过单片机的运算单片机的P2.2接口变为低电平此时的红色LED发光二极管被点亮。当烟雾传感器MQ-2检测到的烟雾浓度超过设定的阈值时经过单片机的运算单片机的P2.1接口变为低电平此时的黄色LED发光二极管被点亮。如果检测的温度或烟雾浓度都超过设定的阈值时两个LED发光二极管将都被点亮。图3-4 灯光报警电路图3.4.2 声音报警电路声音报警模块采用9012PNP型三极管利用了三极管的开关作用三极管的基极接了一个限流电阻。初始时单片机的P2.5引脚为高电平当温度传感器或烟雾传感器检测到的温度或烟雾浓度超过设定的阈值时单片机的P2.5引脚就会置为低电平三极管被导通蜂鸣器发出声音。电流从5V电源出发经过蜂鸣器经过三极管再回到地形成回路。如果检测到的温度或烟雾浓度都超过设定的阈值时蜂鸣器也会发出声音。图3-5 声音报警电路图3.5 温度采集电路发生火灾的时候首先伴随着温度的变化。火灾报警系统需要采集外界的温度根据温度的变化来判别是否发生火灾因此我们需要温度传感器系统采用 DSI8B20温度传感器。其性能介绍如下。3.5.1 DS18B20概述及特性本系统使用的DS18B20温度传感器适应比较宽电压范围.对空气温度的敏感性比较高.不会产生冗余数据。因为单片机的接口信号是数字信号DS18B20温度传感器芯片可直接输出串行数字信号,供核心控制模块处理。DS18B20数字温度计提供9位温度读数指示器件的温度。其具有单线接口性即仅需一根接口线与单片机连接无需外围元件由总线提供电源测温范围为-55℃~125℃精度为0.5℃九位温度读数A/D变换时间为200ms用户自设定温度报警上下限其值是非易失性的。3.5.2 DS18B20电路说明本设计采用温度传感器DS18B20它的1引脚接地2引脚为数据脚接到了单片机的P2.0引脚上2引脚还加了一个10K的电阻接在电源上此电阻为上拉电阻起到信号稳定作用3引脚接在电源上用来给温度传感器DS18B20供电。3.5.3 DS18B20的工作原理DSl8B20的测温原理:它可把温度信号直接转换成串行数字信号供单片机处理对它读信息或写信息仅需要一根口线。读写及温度变换功率来源于数据总线总线本身也可以向所挂接的DSI8B20供电而无需额外电源。将DSI8820信号线与单片机P2.0口线相连系统对DSI8B20的操作以ROM 命令和存储器命令形式出现。如果只有一片 DSl88B20可用此命令读出其序列号。内部计数器对一个受温度影响的振荡器的脉冲计数低温时振荡器的脉冲可以通过门电路,而当到达某一设置高温时振荡器的脉冲无法通过门电路。计数器设置为-55℃时的值如果计数器到达0之前门电路未关闭则温度寄存器的值将增加这表示当前温度高于-55℃。同时计数器复位在当前温度值上电路对振荡器的温度系数进行补偿计数器重新开始计数直到回零。图3-6 DS18B20电路图3.6 按键电路本设计采用按键接地的方式来读取按键单片机初始时按键连接在单片机P1.5P1.6P1.7引脚的一端为高电平接地的另一端为低电平。当按键按下的时候会给单片机一个低电平单片机对信号进行处理。在设计单片机对键盘处理的时候其中涉及到了一个重要的过程那就是键盘的去抖动。此抖动是机械的抖动是当键盘在未按到按下的临界区产生的电平不稳定正常现象并不是我们在按键时通过注意可以避免的。这种抖动一般10~200毫秒之间这种不稳定电平的抖动时间对于我们来说太快了而对于时钟是微秒的单片机而言则是漫长的。所以这里选择了软件去抖动先查寻按键当有低电平出现时立即延时10~200毫秒以避开抖动经典值为20毫秒延时结束后再读一次I/O口的值这一次的值如果为1表示低电平的时间不到10~200 毫秒视为干扰信号。当读出的值是0时则表示有按键按下调用相应的处理程序。K1按键的功能为设置温度和烟雾浓度的阈值体现在显示屏上的SET一行中的T温度和E浓度。当按一下K1时P1.5引脚与地短路迫使P1.5引脚为低电平。此时显示屏中SET一行的T的个位数会呈现阴影闪烁而E中的个位数不会呈现阴影闪烁这时我们可以按动K2K3来进行调节T的阈值当再次按下K1时显示屏中SET一行的E的个位数会呈现阴影闪烁而T中的个位数不会呈现阴影闪烁这时我们可以按动K2K3来进行调节E的阈值当再一次按下K1时显示屏中SET一行没有阴影闪烁此时为T和E的阈值设置完毕。K2按键的功能为将显示屏中SET一行的阴影闪烁数值增加。当按下K2时P1.6引脚与地短接迫使P1.6引脚为低电平。此时显示屏中SET一行的阴影数值值加1不支持长按快速持续加的功能。K3按键的功能为将显示屏中SET一行的阴影闪烁数值减少。当按下K2时P1.7引脚与地短接迫使P1.7引脚为低电平。此时显示屏中SET一行的阴影数值减少1不支持长按快速持续减少的功能。图3-7 键盘接口电路3.7 继电器驱动模块继电器模块采用PNP型9012三极管利用了三极管的开关作用三极管的基极接了一个限流电阻。初始时单片机的P3.4引脚为高电平当烟雾传感器检测到的烟雾浓度超过阈值时单片机的P3.4引脚置为低电平三极管被导通继电器的线圈得电。继电器吸合公共端与常开接通风扇转动。风扇接在排针上。排针只用到黑色和红色的正负极白色为空。风扇的正极接在接线端子2上继电器吸合时红线就会接通电流从电源经过排针红线流入接线端子1引脚流入风扇正极从风扇负极流入地形成回路。图3-8 继电器驱动电路图4 系统的软件设计4.1 程序软件介绍Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统与汇编相比C语言在功能上、结构性、可读性、可维护性上有明显的优势因而易学易用。用过汇编语言后再使用C语言来开发体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具全Windows界面。另外重要的一点只要看一下编译后生成的汇编代码就能体会到Keil C51生成的目标代码效率非常之高多数语句生成的汇编代码很紧凑容易理解。在开发大型软件时更能体现高级语言的优势。4.2 系统总体程序流程图智能火灾报警系统设计主要包括气体检测模块、温度检测模块、继电器模块、LCD模块、按键模块等。工作流程如图4-1所示。当系统开始运行时首先对系统进行初始化给传感器预热因为MQ-2型半导体电阻式烟雾传感器在不通电存放一段时间后再次通电时传感器不能立即正常采集烟雾信息需要一段时间预热。由传感器检测到的烟雾浓度和温度进行A/D转换等处理后送入单片机内。通过按键模块设置烟雾浓度和温度的报警阈值并将显示在LCD屏上。单片机将检测值与报警阈值相比较判断是否报警。图4-1 总体程序流程图4.3可燃气体检测子程序的设计4.3.1 可燃气体报警子程序当系统处于开始检测状态时气体报警子程序会自动进入初始化状态等待传感器信号此时的气体传感器MQ处于预热状态预热时间根据实际的环境温度和湿度有所不同当预热结束后进入正式工作状态将采样到气体通过模拟信号的形式传送给A/D转换器经A/D转换器转换为数字信号后再传送至单片机并与单片机内部所设定的气体浓度值阈值相比较如果超过了系统所设定的阈值时启动报警程序即灯光报警打开排风扇当达到设定阈值以下时报警停止此时数字信号依旧传送至LCD显示屏中显示当前浓度。具体检测工作流程如图4-3所示。图4-2 MQ可燃气体报警子程序流程图4.3.2 ADC转换子程序模数转换的子程序在气体检测中的价值在于对输入的模拟值进行检测和转换因为MQ探头所输出的是连续的模拟量单片机无法识别和处理必须对连续的模拟量转换为离散的数字信号所以模数转换是整个系统在检测方面的核心内容。首先在程序开始前设置模拟量输入通道当接收到模拟信号时模数转换器开始工作如果转换成成功则将数据传送至单片机进行数据处理与阈值对比和传送至显示屏显示若失败则重新转换。转换子程序流程图如图4-4所示图4-3 A/D转换子程序流程图在设置数值时根据图4-5 MQ2气体灵敏度指标进行设定经查询资料可知天然气的危险浓度最小值约为5%即5000ppm。MQ2模拟量输出为0-5V并且ADC0832的设定显示为0-100所以最终确定设定报警阈值为40。图4-4 MQ-2灵敏度特性指标纵坐标为传感器的电阻比Rs/R0横坐标为气体浓度Rs表示传感器在差异浓度气体中的电阻值R0表示传感器在1000ppm甲烷中的电阻值[9]。4.4 温度子程序设计对室内温度的测量需要由单片机对DS18B20进行控制当系统运行时开始对室内温度进行检测首先对DS18B20进行复位如果需要多点测温则需要对DS18B20的内部序列号进行区分以此定位某一个探头然后输出RAM指令。测温工作的整体流程图如图4-5所示图4-5 温度检测子程序流程图温度数据是将一个十六位二进制补码数存储在DS18B20寄存器中DS18B20的数据转换是先将补码变换为原码在根据二进制转换为十进制值进行显示。其中二进制中的前面五位是符号位当测得实际温度大于0时前五位值为0如果温度小于0前五位值为1后四位是十进制的小数点位将所得的数值乘以0.0625即可得到实际数值。标准参考值如表4-1其它值计算方法如下当二进制为0000 0111 1101 0000时温度为125℃若二进制为0000 0111 1101 0001时温度为125.0625℃若二进制为0000 0111 1101 0011时温度为125.1.875℃以此类推。表4-1 DS18B20温度数据转换表温度℃数字量输出二进制数字量输出十六进制125℃0000 0111 1101 000007D0850000 0101 0101 0000055025.06250000 0001 1001 0001019110.1250000 0000 1010 001000A20.50000 0000 0000 1000000800000 0000 0000 00000000-0.51111 1111 1111 1000FFF8-10.1251111 1111 0101 1110FF5E-25.06251111 1110 0110 1111FE6F-551111 1100 1001 0000FC904.5 按键子程序设计系统初始化后用户可以根据自己的想法对报警值进行设置烟雾浓度和温度的设置值为整数。当检测到启动设置按键被按下时则系统进入设置程序。P1.6、P1.7对应加和减。“设置”键处于按下状态时进入温度报警值设置再次按下设置按键时则进入烟雾报警值设置按“加”和“减”键进行报警值的递增、递减设置。报警值设置程序流程图如图4-3所示。图4-6 按键子程序流程图5 系统调试5.1使用Keil软件编程步骤下面详细介绍Keil C51开发系统各部分功能和使用。1在软件中新建一个Project。2针对新的工程选择芯片编写程序。3将编写好的程序保存后进行软件系统的调试阶段将所有的子程序与主程序汇合并进行编译在执行下一步操作若编译执行结果有错按照提示在程序内查找错误直至程序无错误显示4对工程进行相关的配置在Option for Target1配置页面的窗口中选中Output页面中的Create HEX选项。5编写程序并且使用Project菜单项中的Build All子菜单为应用创建可执行.HEX文件并将此文件下载至单片机。编译效果如图5-1所示。图5-1 keil软件编程界面5.2 使用Protuse模拟仿真步骤完整项目公众号木子单片机为测试整体电路是否正确在实际焊接前需要预先采用软件proteus进行单片机和其他电路进行整体的模拟仿真与调试。本次系统设计仿真选用英国的proteus软件该软件是世界单片机应用范围最广的软件之一也是本科教材的事例软件之一其相对简单的操作和简介的页面深受各界单片机工作者爱好者和同学老师的好评内容上它的功能十分的全面具体内容有原理布图、PCB自动和人工布线等功能根据实际工作经验的结论为使用 Proteus软件进行系统仿真可以发现许多实际动手制作才能发现的问题这样能极大的提高我们的工作效率。仿真其流程如下首先新建任务列表选择单片机及其他外部元器件经由导线相连接形成完整的电路再将编辑无误的程序语言下载到模拟单片机STC89C52中具操作流程如下在单片机STC89C52的器件模拟图中右击鼠标在左击鼠标确认单击弹出的“Edit Componet”执行之前生成的.hex文件单击鼠标确认。整个下载程序流程结束。运行方式如下在主界面单击仿真按钮三角软件开始进行仿真。由于Proteus软件中没有MQ探头但根据MQ探头是电阻型传感器这个特性我们可以采用10K的电位器来代替模拟MQ探头的工作情况。记录程序运行的最后结果如果不符合系统设计需求时就进入编程软件进行逻辑检查。仿真系统接线原理如图5-2 所示图5-2 proteus电路仿真界面结论本课题中设计的火灾报警探测器由传感器电路与无线通信电路两大部分构成。控制处理器是以管脚资源丰富的STC89C52为核心实现对探测器写入信号和对信号进行编译等人机交互功能。应用程序以C语言编写充分利用芯片的内部资源提高了代码执行效率减小了代码的容量。由于该探测器具有体积小、功耗低、安装调试简单、可靠性高等优点因此该火灾探测器有着良好的市场前景。系统正常状态时天然气浓度趋近于零温度为室温未达到警报要求下限气体报警LED灯熄灭温度报警LED灯熄灭当天然气扩散到在气体传感器上方位置如果浓度超过设定阈值开启警报状态气体报警LED灯长亮温度报警LED灯熄灭单片机通过连接声光报警器系统联动检测天然气浓度显示在LCD上并通过声光报警当温度大于设定阈值时开启警报状态温度报警LED灯长亮报警过程与上述相同。由于本人在各方面的知识不够全面再加上时间紧迫以及实验条件的限制该报警器还有较多需要提高的地方。比如添加灭火的消防栓通过消防栓减少火灾的扩大。致谢本次毕业论文的顺利完成离不开老师的精心指导和关怀从选题到开题报告再到论文的撰写自始至终老师对我提出的问题都会认真、详细、耐心的解答更让我感动的是老师经常会主动了解我的学习情况以及督促我的学业进度对于我此次论文的完成给与了极大的信心和帮助。老师严谨细致的治学态度一丝不荷的工作作风深深的感染了我是我学习的榜样让我终身受益。并使我在对待学习的态度以及独立研究问题的能力上都有了很大的提高。在以后的工作和生活中我也要虚心求学和严以律己养成和保持终身学习的习惯并不忘师恩将老师的教询常记心头作为自己生活的标杆和方向在此我要向我的导师表示衷心的感谢此外我还要感谢在我学习期间给我极大关心和支持的各位同学尤其是我的室友一个人的力量终究有限在知识体系构建过程中离不开大家有针对性的宝贵的建设性意见这将是我受益终身的宝藏感谢他们对我的无私帮助、支持和鼓励。最后感谢担任本论文评审和审阅的各位老师感谢你们在百忙之中抽出宝贵的时间评审我的论文可能由于我本人才疏学浅、水平有限导致论文仍有不足之处希望各位评审老师能够予以斧正和帮助谢谢你们对本论文提出的宝贵建议和意见。通过本次毕业论文使我彻底的认识到本专业在实际应用中的重要性提高了我的学习兴趣让我更加热爱我的专业我也会在日后更加注重与专业相关的知识积累以及了解自动化行业的发展趋势让自己的所学能够一以贯之的应用与工作中。同时我也在毕业设计这个艰苦而又充满求知乐趣的过程中更加正确地认识自己让我看到自身知识和能力上存在的不足客观地去重新认识与评价自我使我能够潜心思考自身的发展问题不断地去提高自身素质和能力以适应社会发展的需要。再次感谢各位曾经帮助过我指导过我的各位老师及同学。是您们无私的帮助才能使我最终完成这个课题的设计。参考文献[1] 陈权昌,李兴富.单片机原理及应用[M].广州:华南理工大学出版社,2007.8[2] 李庆亮.C语言程序设计实用教程[M].北京:机械工业出版社,2005.3[3] 杨志忠.数字电子技术[M].北京:高等教育出版社,2003.12.[4] 朱作为. 用户端天然气安全事故原因剖析与防范措施[J]. 能源与节能, 2012.[5] 徐江海.单片机实用教程[M].北京:机械工业出版社,2006.12[6] 周易.基于单片机的智能火灾报警系统设计[J].电子制作,2018(17):44-46.[7] 康华光.电子技术基础数字部分[M].北京:高等教育出版社,2008.[8] 鲁西坤,巩银苗,徐帅,侯凡博,姬鹏飞.基于单片机的智能火灾报警系统的设计[J].电子测试,2018(Z1):7-9131.[9] 包航,仲毅,蔡长安,陈德进,胡文涛.基于单片机的智能火灾报警系统的设计[J].福建电脑,2017,33(09):1219.[10] 朱贵宪.基于STC89C52单片机控制的智能灭火系统设计[J].电脑知识与技术,2017,13(16):211-212236.[11] Kun Zhou,Xi Zhang. Design of Outdoor Fire Intelligent Alarm System Based on Image Recognition[J]. International Journal of Pattern Recognition and Artificial Intelligence,2020,34(07).[12] Xuefen Zeng. Design of Laboratory Fire Alarm System Based on MCU[J]. International Core Journal of Engineering,2020,6(6).附录1电路原理图附录2