一种基于51单片机的烟感报警器设计*
2022-04-15王佳伟
李 俊 , 王佳伟 , 李 帅 , 袁 梦
(宿迁学院,江苏 宿迁 223800)
传统的烟感报警器主要分为有线型和独立型烟感设备,其中有线型需要安装布线和其他消防设备联动,独立型主要应用在小场所。近年出现的智能烟感,也就是无线型烟感,增加了无线传输模块,通过网络在电子设备上实时反馈数据,这样更加透明化、信息化。但存在的问题也相对突出,由于成本太高,不适合大量推广,只能在少量地方使用,不能满足国内广大市场需求。因此,课题组的设计着重于好用、便宜,一款造价低、性能优良的烟感报警器应运而生。烟感报警系统是保持高度警惕烟雾和输出信号报警的有力措施,是一种早期预警。
1 系统总体方案设计
本设计主要以STC89C52单片机为核心器件,由烟雾探测电路、声光报警电路、液晶显示、按键电路、排气扇驱动电路、控制程序和编解码程序等组成。系统的组成结构如图1所示。
图1 系统结构图
2 系统的硬件设计
2.1 单片机和时钟复位电路
单片机采用的是STC89C52芯片,一款增强型51单片机。该微控制器具有造价低、耗电低、性能高、市场应用量大等优良品质,而且是由CMOS工艺技术制成的八位微控制器。提供的高灵活和有效低价的控制核心使它成为嵌入式产品控制的重要选择方案。为了能使单片机始终处于正常的工作状态,电源、时钟复位电路等是让单片机正常运行的必要条件,这也是最小系统。然后,通过对存储器和A/D的拓展来完成更为复杂的系统功能。因单片机片内含有ROM/EPROM,其构成的最小系统简单可靠。只需将时钟电路和复位电路接上,就可以作为小型控制单元使用[1]。
时钟电路顾名思义就是时钟一样的电路。它的特点是让工作按照时间顺序产生电路。一般是由晶体振荡芯片、晶体振荡器、电容组成。电容器的电容值在5 μf~30 μf范围内,典型值30 μf,其是为了快速起振和稳定频率的,复位电路是为了让电路恢复到起始状态。其组成相对简单,大多只需要电阻和电容组合一下就可以形成。复位电路的启动手段有三种:1)电路通电立刻进行复位操作;2)手动操作;3)根据电路运行情况和程序自动运行。本设计采用按键手动复位,有电平和脉冲两种复位方式。电平复位是通过单片机的RST9端和电源VCC接通来实现的[2]。除此之外,为了提高单片机的工作效率和实时性,给产品以更好的体验,采用中断技术,很好地解决了问题,完全消除了单片机在查询方式中的等待现象。
2.2 烟雾探测电路
此模块采用的是MQ-3气体传感器和ADC0809模数转换器,通过传感器接收到外界的信号并以模拟信号传出,由模数转换器转换成数字信号传入单片机后进行相应操作。
选择一款适合的传感器对整体的重要程度不言而喻,课题组之所以选择MQ-3气体传感器,是看中它稳定性好、灵敏度高、响应快、抗干扰、寿命长等优点[3]。其广泛应用于家庭和工厂,对天然气、石油气等烟雾的灵敏度极高,尤其对烷类气体更加敏感。其检测可燃气体与烟雾的范围是100 ppm~10 000 ppm,所以不存在吸烟后检测不到的状况。需要注意的是:使用之前必须要加热一段时间才能正常工作,不然输出的电阻和电压会有误差,但是加热电压过高,会造成输入电流增大,内部电路熔断,破坏器件。这也是这款传感器美中不足的地方,不过影响不大,在电路中控制好电压就可以了。
ADC转换电路课题组采用的是ADC信号采集法,将电信号转换为数字信号,最后转换为精确的烟雾浓度值。其中,用于模数转换的芯片是ADC0809芯片。模数转换器主要面对的问题是转换数据的传送以及如何确认数据的传送完成。为此,有三种方式解决:定时传送方式、查询方式和中断方式[4]。
2.3 声光报警电路
本模块为了加强报警效果,采用了声音和光照双重提示,旨在使提醒更加醒目,效果更突出。光照方面采用的是两个LED发光二极管,当触发响应时LED灯会发出光,它能够将电直接转换为光,其发光效率较之前提高了近1 000倍,色域方面实现了可见波段的所有颜色,是较为简单的半导体器件。其优点特别明显:寿命长、光效高、辐射低、功耗低、亮度强、无毒、可回收等,是不折不扣的绿色照明光源,因此也被称为21世纪最有发展潜力的照明光源。采用它也正响应了我国绿色节能环保低碳的理念。声音方面采用的是语音播报方式,语音播报具有准确、定时、快速的特性,能够为人们的生活提供更多的便利,当有人吸烟,语音提示“公共场合 严禁吸烟”。为此,选择了ISD1110这款语音芯片和米头组成录放模块,录放时长达8 s~10 s,采用了CMOS技术,占用空间小,仅需麦克风、喇叭、按钮少数电阻电容就能组成,实现良好的录放功能。并且在录放结束以后芯片会主动进入低消耗状态,功耗仅需0.5 μA,非常节能[5]。
2.4 液晶显示模块
本模块旨在将传感器测得的数据等实时传递到显示屏上,让人们有一个更直观的感受。采用的是LCD1602液晶显示器,它应用广泛,是字符型显示屏,内部存储器存储了160个各异的点阵字符图形,字符含阿拉伯数字、常用符号、英语大小写等,一个字符对应一个代码,因其识别的是ASCII码,可以直接赋值,单片机编程中可以用字符型常量或变量赋值。同时,单片机中应用此显示器有以下优点:收到信号后能一直保持色彩和亮度,发光恒定。不需要不断刷新亮点,所以画质高、不闪烁。因其都为数字式,和单片机连接更加简单可靠,操作起来便捷。在重量上,相较于传统显示器轻得多,但是功耗相对要高一些。
2.5 按键电路
在单片机组成的系统中,需要有人机交互功能。按键便是最常见的输入方式。常见的按键电路方式有两种,一对一直连和矩阵式连接。独立式电路简单直接,一个按键独占一个端口,在按键数少或者按键端口数量丰富时使用。矩阵式电路就相对复杂许多,它适合需要按键数量多的场合,为了尽量少占端口就用矩阵式。根据本设计的需求,选择了独立式。本设计按键的读取采用按键取低。顾名思义,只读取低电平,当单片机通电,初始为高电平,按下键便触发低电平,让单片机读取做出处理。
独立式键盘利用单片机端接口的高低电平感应来检测是否有键按下。常开按键一端接地,另一端接端口。端口在程序刚开始时置于高电平,没有按键按下,端口保护高电平。当有键按下,端口与地产生短路,致使端口被迫变为低电平。在按键释放后,端口在单片机内部的上拉电阻控制下仍为高电平。所以要想了解是否有按键动作,只需要在程序中查询端口的电平状态即可。
键盘的按键开关通常为机械弹性开关,由于弹性原因,开关在闭合和断开时不会一下子结束,从而瞬间都产生抖动,产生抖动的危害便是会出现按一次输出多次的情况,这会降低整体的使用效果,为了不产生这种影响,采取按键消抖的措施。键盘去抖动是在用单片机对键盘进行处理时涉及的重要过程。此处说的抖动是机械的抖动,指的是当键盘没有按到按下的临界区产生的电平不稳定正常现象,并不是人们在按键时通过注意可以避免的。10 ms~20 ms之间的不稳定电平抖动时间对于人来说几乎是不会感应到的,但对于时间计量单位是微秒的单片机来说是漫长的。用部分电路对抖动部分加以处理即为硬件去抖动,软件去抖动则不是去掉抖动,而是避开抖动部分时间,待键盘稳定再处理。综上,选择软件去抖动。软件去抖动便是在软件上利用延时程序去抖动,当按键按下对程序进行短暂延时,就能跳过前沿抖动,对于后延抖动,再次检测时如果检测到抬起,一次按键检测完毕。
2.6 排风扇模块
本设计虽然叫烟感报警器,但仅仅报警并不是课题组设计的最终目的,课题组的目的是让人们能够在室内公共场所待得舒适,享受健康的空气。所以当有人不自觉地吸烟,如果装置仅仅是检测到然后报警制止,即使当事人停止吸烟行为,也给室内环境带来了或多或少的污染。因此,能有效地将室内被污染的空气排出也极为重要。对于这个问题,课题组选择添加一个排气扇装置,排气扇具有投资成本低、风量大、噪声低、耗能小、运行平稳、寿命长、效率高等优势。通过排气扇将室内的气体排出,换上室外新鲜的空气,同时也能够调节室内温度、湿度,有通风、透气、降温的效果。排气扇的排气方式有排出式、吸入式和并用式三种,课题组采用了并用式,吸气与排气均由换气扇来完成。
3 系统的软件设计
软件设计采用的是C语言编程,编程软件为Keil。设计包括主程序、判断显示程序、数据采集程序、报警程序、数制转化程序和串口通信程序。MQ-3烟雾传感器采集到的数据和单片机控制程序里设定的数据比较,通过显示屏显示,并传达相应的指令,从而控制声光系统工作[6]。
在给完电后,对端口和显示屏进行初始化,MQ-3采集到的数据经过A/D模数转换器,将采集的模拟信号转化成数字信号并由单片机读取和处理。主程序流程图,如图2所示。
图2 主程序流程图
4 软件仿真
实时显示当前的烟雾值,烟雾的上限报警值可以通过按键设定,当烟雾超过上限的时候触发声光报警同时语音提示“公共场合 严禁吸烟”。当温度达到一定值时,排风扇开始运行,进行通风作业。proteus仿真图如图3所示[7]。
图3 proteus仿真图
5 总结
课题组在参考了国内外大量资料的基础上,针对传统烟感报警器存在的问题,提出了较为合理妥善的烟感报警器设计方法,极大地提高了产品的实用性和市场竞争力。课题组设计的烟感报警探测器由传感器电路和无线通信电路两大部分构成。控制处理器是以管脚资源丰富的STC89C52为核心,使对探测器写入信号和对信号进行编译等人机交互功能成为现实[8-11]。通过C语言编写程序,充分利用芯片的内部资源,代码执行效率得到极大提升,代码的容量大大减少。该报警器具有体积小、功耗低、安装调试简单、可靠性高等优点,因此,该烟感报警器的市场前景相对广阔。由于水平和能力有限,该报警器还有很多地方有待改善。