ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

基于51单片机火灾报警

基于51单片机火灾报警

基于51单片机火灾报警

木子单片机

摘 要

随着现代的家庭用火、用电量的增加,家庭火灾发生的频率随之提高,人们的防火意识也随之增强。为了有效避免火灾以及减少各类火灾危险造成的直接损失,我们必须遵循“隐患险于明火,防患胜于救灾,责任重于泰山”的基本理念,设计和完善火灾自动报警系统,将火灾消灭在萌芽状态,最大限度地减少社会财富的损失。这就出现了火灾探测报警技术越来越受到人们的重视也被广泛应用于各种场合的情况。

本文设计的是智能火灾报警系统。即可以对火灾进行检测,本文的核心处理器是单片机,由气体传感器和温度传感器对气体浓度及室内温度进行检测,检测的数值显示在显示屏中,当检测值超过阈值时、可以实现声光报警,并同时打开排气扇。

在硬件设计方面,本设计所研究的智能火灾报警系统选用STC89C52为核心控制器;气体传感器采用MQ-2;模数转换采用ADC0832芯片;温度传感器采用DS18B20;声光报警由蜂鸣器、PNP三极管和LED灯组成;设定阈值采用非自锁按键;在软件设计方面,包括主程序、气体浓度子程序、温度子程序、按键子程序。通过这些传感器和芯片,当周围环境中有害气体浓度或温度等发生变化时,系统会自动发出一个相应的灯光报警信号和声音报警信号,以此方式来实现火灾自动报警,智能化报警提示。

关键词:气体传感器MQ-2;火灾报警;单片机;智能控制;DS18B20

Abstract

Along 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 control;DS18B20

第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。输入电压 Uin(<=Vref)与量化编码值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……40

DD 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.5,P1.6,P1.7引脚的一端为高电平,接地的另一端为低电平。当按键按下的时候,会给单片机一个低电平,单片机对信号进行处理。

在设计单片机对键盘处理的时候,其中涉及到了一个重要的过程,那就是键盘的去抖动。此抖动是机械的抖动,是当键盘在未按到按下的临界区产生的电平不稳定正常现象,并不是我们在按键时通过注意可以避免的。这种抖动一般10~200毫秒之间,这种不稳定电平的抖动时间对于我们来说太快了,而对于时钟是微秒的单片机而言则是漫长的。所以这里选择了软件去抖动,先查寻按键当有低电平出现时立即延时10~200毫秒以避开抖动(经典值为20毫秒),延时结束后再读一次I/O口的值,这一次的值如果为1表示低电平的时间不到10~200 毫秒,视为干扰信号。当读出的值是0时则表示有按键按下,调用相应的处理程序。

K1按键的功能为设置温度和烟雾浓度的阈值,体现在显示屏上的SET一行中的T(温度)和E(浓度)。当按一下K1时,P1.5引脚与地短路,迫使P1.5引脚为低电平。此时显示屏中SET一行的T的个位数会呈现阴影闪烁,而E中的个位数不会呈现阴影闪烁,这时我们可以按动K2,K3来进行调节T的阈值;当再次按下K1时,显示屏中SET一行的E的个位数会呈现阴影闪烁,而T中的个位数不会呈现阴影闪烁,这时我们可以按动K2,K3来进行调节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 0000

07D0

+85

0000 0101 0101 0000

0550

+25.0625

0000 0001 1001 0001

0191

+10.125

0000 0000 1010 0010

00A2

+0.5

0000 0000 0000 1000

0008

0

0000 0000 0000 0000

0000

-0.5

1111 1111 1111 1000

FFF8

-10.125

1111 1111 0101 1110

FF5E

-25.0625

1111 1110 0110 1111

FE6F

-55

1111 1100 1001 0000

FC90

4.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-9+131.

[9] 包航,仲毅,蔡长安,陈德进,胡文涛.基于单片机的智能火灾报警系统的设计[J].福建电脑,2017,33(09):12+19.

[10] 朱贵宪.基于STC89C52单片机控制的智能灭火系统设计[J].电脑知识与技术,2017,13(16):211-212+236.

[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

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进