CH4、CO2等气体浓度检测与告警系统_第1页
CH4、CO2等气体浓度检测与告警系统_第2页
CH4、CO2等气体浓度检测与告警系统_第3页
CH4、CO2等气体浓度检测与告警系统_第4页
CH4、CO2等气体浓度检测与告警系统_第5页
已阅读5页,还剩41页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

[4]。系统的设计基于51单片机平台,其主要功能包括气体浓度的实时监测、数据处理和告警系统的实现。为了达到预定的目标,该系统使用了三种独特的气体传感器技术:MQ-4甲烷气体传感器、SGP30二氧化碳气体传感器以及MQ-2半导体气体烟雾传感器。这批传感器具备准确和迅速检测目标气体浓度的能力,并能将这些数据传送至单片机进行进一步处理REF_Ref162909976\r\h[5]。在硬件配置上,该系统整合了单片机的最小系统、时钟与复位电路的设计,还包括了多种气体的检测和采集电路,如甲烷、二氧化碳和烟雾的检测与采集电路。此外,还设计了LCD1602显示模块用于显示监测数据、声音报警电路以及按键控制电路来实现用户交互功能。为了增强系统的可用性,还加入了蓝牙模块,使得用户可以通过手机等远程设备监控气体浓度情况REF_Ref162909994\r\h[6]。在软件设计方面,系统主程序经过精心设计,实现了对传感器数据的实时读取、处理和告警逻辑的制定。通过合理的算法设计和严密的逻辑控制,系统能够及时准确地判断气体浓度是否超过设定阈值,并触发相应的告警措施,保障用户的安全。因此基于51单片机的CH4、CO2等气体浓度检测与告警系统具有重要的应用意义和市场需求。通过本文系统的设计与实现,可以有效监测室内空气质量,提升人们对环境安全的意识,为建立更加健康、安全的生活环境提供有力支持。1.3国内外现状在全球防火安全形势日益严峻的今天,气体浓度检测与告警系统犹如一道无形的防火墙,默默守护着我们的生命安全。它利用先进的单片机等嵌入式技术,以其高效、精准的性能,为我们筑起一道坚固的安全防线。在国外,气体检测技术的研发早已走在了前列。无论是针对甲烷、二氧化碳等易燃易爆气体的检测,还是对于其他有毒有害气体的监测,国外都推出了众多高精度、高智能化的气体检测产品。这些产品如同敏锐的哨兵,时刻警惕着潜在的危险,一旦气体浓度超标,告警系统便会迅速启动,发出警报,为人们的生命安全保驾护航。而在国内,虽然起步稍晚,但气体浓度检测与告警系统的发展势头却势不可挡。随着防火安全意识的不断提高,这一领域的需求日益旺盛。国内的高校和科研机构纷纷投身其中,不断探索创新性的设计方案和技术手段。他们的努力,不仅推动了气体浓度监测技术的飞速发展,更为我们的生命安全提供了有力保障。气体浓度检测与告警系统,就像我们生活中的安全卫士,时刻守护着我们的生命安全。它能够在火灾发生前及时发现潜在的危险,通过告警系统提醒我们采取相应的措施,从而避免火灾的发生。在未来,相信气体检测告警系统会越来越完善,为我们创造一个更加安全、健康的生活环境。共同开启防火于未“燃”。1.4发展趋势随着科技的迅猛进步,单片机正引领气体浓度检测与告警系统迈向智能化、便捷化和多功能化的三大革新之路。这不仅深刻改变了我们与环境的互动方式,更为生活安全筑起了一道坚实的屏障。气体浓度检测与告警系统将会朝着智能化、便捷化和多功能化方向发展。具体表现在以下几个方面:一、智能化发展未来的气体检测与告警系统将实现智能飞跃。凭借先进的学习算法,这些系统能从海量气体浓度数据中提炼智慧,不再只是数据的收集者,而是成为风险预测的智慧之眼。这一智能进化让我们能在安全隐患初现端倪时便迅速察觉,真正做到防患于未然。二、便捷化应用物联网技术的突飞猛进,赋予了气体检测与告警系统前所未有的便捷性。未来,用户只需通过手机App等远程设备,便能随时随地监控气体浓度数据。无论身处何地,环境状况尽在掌控,实现了环境监控的轻松便捷。三、多功能化设计未来的气体检测与告警系统不再局限于单一的告警功能。它们将集声音、光线告警、自动通风等多种技能于一身。这些功能的加入,不仅使系统更加全面,更能为用户提供及时有效的帮助。一机多用的设计,让我们的生活更加安全便捷。在51单片机的推动下,未来的气体浓度检测与告警系统正迈向智能化、便捷化和多功能化的新时代。它们用智慧守护我们的生活,用便捷点亮我们的未来,用多功能为安全保驾护航。让我们共同期待这一天的到来。1.5设计任务分析系统设计的主要任务分析:1.系统功能要求实时监测CH4、CO2等气体浓度,并显示数据,设定阈值,一旦超过则触发告警,提供声音和光线告警功能。实现远程监控功能,可通过手机等设备查看监测数据。2.系统硬件设计选择适合的51单片机型号,配置MQ-4、SGP30、MQ-2等气体传感器;设计电路板,包括传感器接口、显示模块、声音报警电路、蓝牙模块等。3.系统软件设计编写单片机程序,实现传感器数据的读取和处理,设计告警逻辑,一旦检测到超过预设值的浓度即触发告警,实现与LCD1602显示模块的数据交互,展示监测数据和告警信息,编写蓝牙通信模块程序,实现远程监控功能。4.系统性能要求系统应具有高精度的气体浓度检测能力,响应速度快,能够及时发出告警信息,系统稳定可靠,能够长时间稳定运行。5.系统测试与验证对系统硬件进行电路测试和功能验证,确保各部分正常工作,对软件进行单元测试和整体验证,确保系统功能正常,进行气体浓度检测实验,验证系统的准确性和可靠性。

第2章总体方案设计2.1系统方案设计本文了设计一个CH4、CO2等气体浓度检测与告警系统,包括了甲烷、二氧化碳和烟雾信息的监测。系统的功能包括数据采集并在显示器上显示,同时通过蓝牙传输至手机。此外,系统具有可设置阈值的按键功能,一旦检测到浓度超出了预设的阈值,蜂鸣器会立即发出警告。在此基础上,通过深入的分析,设计了一种包涵了单片机最小系统,时钟复位,气体采集功能,显示功能,告警功能和按键控制,蓝牙以及电源等模块的总体方案。对该方案进行了详细说明:STC89C52单片机作为本系统的核心控制,对其进行了硬件设计。单片机的工作就是从各个传感器采集到的信号,并对其进行分析、处理。此外,它还负责管理系统的多项功能,包括显示、告警以及蓝牙通信。传感器模块:利用MQ-4,SGP30,MQ-2等传感器,对CH4、CO2和烟雾进行检测。该系统通过与单片机连接,完成了对气体含量的测量。

显示模块:液晶显示屏在屏幕上显示采集到的气体浓度数据,以便用户实时监测。

告警模块:设置蜂鸣器作为告警模块,当气体浓度超过预先设定的临界值时,警报模组会发出报警信号。

按键控制模块:设计按键控制模块,使用户能够设置和调整报警阈值。这些按键可用于设定系统的阈值参数。

蓝牙模块:集成蓝牙模块,使得系统能够将采集到的数据传输到用户的手机或其他移动设备上,实现远程监控和数据记录功能。

电源模块:设计了5V电源模块,保证系统正常工作REF_Ref162910185\r\h[7]。图2-1系统方案图2.2传感器选型2.2.1MQ-4甲烷气体传感器简要说明MQ-4传感器:MQ-4气敏传感器采用二氧化锡(SnO2)作为气体敏感体,其在纯净的大气环境下导电率很低。对于有易燃气体的空气敏感元件,其电导率会随着可燃气体含量的增加而增加。即由简单的电路设计,可将传导率之涨落转换成对应于特定气体浓度之输出讯号。MQ-4气敏传感器不仅具备高灵敏性,而且对于丙烷、丁烷等气体也表现出较高的探测敏感性。这个传感器可以检测许多种类的易燃的气体,特别是天然气,它是一种适用于多种场景的经济实惠的传感器。该模块是为家庭或工厂中的甲烷气体和天然气监测设备设计的,能够测定天然气和甲烷的浓度在300to10000ppm之间;模组的特色是:高质量的双极板,电源显示器和TTL信号的指示;该设备能够输出DO和AO的转换模拟信号;TTL输出的信号为低电位REF_Ref162910209\r\h[8]。当电池的输出功率很小时,指示灯就会点亮,这时就可以与单片机或者是继电器模块进行连接。模拟输出电压和浓度成正相关,并且随着气体浓度的增大而增大。它的灵敏度在甲烷和天然气探测中表现得非常优秀。其使用寿命长,稳定性高,恢复响应迅速。就电气性能而言,其输入电压设定为DC5V,将功率消耗(电流)设为150mA,DO的输出是TTL数字量0与1(0.1及5V),AO的输出为0.1~0.3V(较无污染),最高浓度电压大约4VREF_Ref17572\r\h[9]。其连接方法为:VCC与电源正极(5V)相连,GND与电源负极相连,TTL开关输出信号与DO相连,模拟信号输出与AO相连REF_Ref162910220\r\h[10]。图2-1MQ-4传感器图2-2MQ-4传感器2.2.2SGP30二氧化碳气体传感器SGP30是一种新型的金属氧化物室内气敏器件,它将多个敏感元件集成到一个芯片内,内部集成4个敏感元件,通过精确校正的空气质量,可以探测到室内里的空气质量。能够检测出TVOC(总挥发有机物)在0至60000ppb的范围内;在400至60000ppm范围内测定CO2的浓度。图2-3SGP30传感器参数SGP30(MEMS)是一种以金属氧化物(MOx)为基底的高温薄膜。气敏材料——在金属氧化物上吸收氧,并与被检测的气体进行化学反应,从而产生电子。这样,在传感器上所测得的金属氧化物膜的阻值就会改变。简单地说,还原性气体的存在会导致气敏材料表面氧气浓度下降,从而导致半导体电阻(或导电率)发生变化。然后再进行电阻检测、信号处理、变换等处理,最终得出气体的数值REF_Ref162910243\r\h[11]。图2-4SGP30二氧化碳传感器2.2.3MQ-2半导体气体烟雾传感器MQ-2型烟雾传感器(参照图2-5)为二氧化锡类半导体气体敏感元件,其结构为一种高灵敏度的表面离子型N型半导体气体传感器。二氧化锡在200~300摄氏度时会吸收大气中的氧,产生对氧的吸附作用,从而降低了材料中的电子浓度,从而提高了器件的电阻。当颗粒与烟雾接触时,若阻挡层受到烟雾的影响,将改变颗粒的界面导电性能。由此可以得出以下几种烟气的分布状况:烟气密度越高,导电率越高,输出阻力越小,而其模拟信号的输出越大。图2-5MQ-2传感器MQ-2传感器一共有四位引脚,即为GND、AOUT、DOUT以及VCC。VCC用作正极的引脚线,用作正极,一般为3.3伏或5伏。接地到模块上的地线可以理解为负电极,通常是0V。DOUT是一个管脚,它是一个数字信号的输出。AOUT是一个类比输出线,它是一个类比式的输出,一般采用AOUT引脚,即把类比信号从模组中读出。由模数变换器(ADC)读出来自该传感器的模拟电压信号,并根据其特征曲线函数,将所述电压值转换成烟雾浓度值。图2-6所示是MQ-2型传感器的技术指标。图2-4SGP30二氧化碳传感器2.3单片机选型2.3.1STC89C52单片机简介单片机是气体浓度检测告警系统中的核心部分,它承担着接收气体浓度信号和触发报警装置完成相应工作的功能。在单片机担负的控制功能当中,运算速度特别关键,这样才能保证检测人员以及使用者可以对气体浓度的级别进行实时观测,并且根据这些数据进行适当的处理。选用适用于告警器系统计算速度快、接口功能强的单片机需要考虑价格和体积等因素。为了减少成本与尺寸,该系统在保证精确性,可靠性与抗干扰性的前提下,优先选用经济实惠且尺寸较小的型号。随着单片机技术的广泛应用,世界上主要的集成电路生产商也纷纷发布了各自的MCU产品。在这些产品中,51系列具有性能优良,技术成熟,可靠性高,性能价格比高等优点。51系列具有价格低廉、输入输出端口丰富、编程空间大等优点,在测量和控制系统中得到广泛应用。因此,采用STC89C52单片机作为本系统的设计REF_Ref162910264\r\h[12]。STC89C52单片机是具有高性能、低功耗的CMOS工艺的8位单片机。这款产品最显著的特点就是采用了8K可编程闪存存储系统,采用了先进的高密度存储技术,保证了它与80C51工业标准的指令及管脚的兼容性。这一Flash技术的片上应用,使程序的内存既能进行在线编程,又能很好地应用于传统的编码器。STC89C52由于其独特的8位CPU及可编程序Flash技术,表现出极高的灵活性与高效率,能很好地支持各种嵌入式应用系统。这款产品有8K的闪存,RAM有256个字节,32位I/O输入输出口,还有一个监视计时器和双数据的指针。此外,该芯片还具有三个16比特的计数器和定时器,6矢量二级中断和全双工串行通信,以及一个晶体振荡器和一个时钟电路。此外,该单片机在节能方面也有很好的应用前景。该装置具有将静态逻辑运算降低到0赫兹的潜力,以及为这个系统提供能量节约选项。当CPU没有运行的时候,内存,定时器,计数器都会关闭,但RAM、计时器/计数器、串口和中断等功能都能正常工作。另外,当断电保护程序启动时,内存中的数据会被存储起来,振荡器也会被冻结,整个芯片的工作也就停止了,可能要等到下一次中断或硬件重启。气体浓度检测告警系统以STC89C52单片机为核心元件,采用外围连接复位电路、振荡电路及按键控制电路等,以及LED显示电路,告警电路等,以完成接受超出气体浓度阀值信号、触发报警装置完成相应工作。由于其卓越的性能和众多的功能特点,它在工业测控以及自动化工程领域展现出了广大的应用潜力。2.3.2单片机的引脚功能描述STC89C52单片机作为一种强大的8位微控制器拥有多个输入/输出端口及特殊的功能引脚来适应各类嵌入式控制应用要求。接下来详细介绍STC89C52的引脚作用:1.电源引脚:VCC(40引脚):单片机电源的正电极引脚接于+5V的电源。VSS(20引脚):单片机电源负电极引脚接地.2.I/O端口:P0端口:P0端口是一个具备双功能的输入输出端口,包括8个漏极端口。当用作输出端口时,它能够驱动8个TTL逻辑电平。值得注意的是,当向P0端口写入“1”时,其引脚变为高阻抗状态,从而成为输入端口。此外,P0端口还作为低8位地址/数据复用器,用于访问外部程序和数据存储器。在此模型设计中,P0端口内部集成了上拉电阻。在flash编程过程中,P0端口负责接收指令字节;而在程序检查时,则负责输出指令位。但请注意,为了程序校验的准确性,可能还需额外添加上拉电阻。P1端口:P1端口是一个包含8位的双向输入输出端口,其内部集成了上拉电阻。作为输出端口时,P1端口的输出缓冲器能够驱动4个TTL逻辑电平。当向P1端口写入“1”时,其内部的上拉电阻会将端口电平拉高,使其可以作为输入端口使用。在作为输入端口时,由于内部电阻的存在,引脚可能产生一定的输出电流(IIL)。此外,P1端口还具有特殊功能引脚。其中,P1.0用作定时器/计数器的外部计数输入(P1.0/T2),而P1.2则作为定时器/计数器的触发输入(P1.1/T2EX)。值得一提的是,在flash编程和校验时,P1端口接收的地址字节数量相对较少,仅为8个。引脚的其他功能:P1.0:除了作为定时器/计数器T2的外部计数输入外,还具备时钟输出的功能,这使得P1.0能够在需要时输出时钟信号。P1.1:除了作为计时器/计数器T2的捕获/重置触发信号和控制方向外,它还控制定时器的运行模式和方向。P1.5:MOSI(MasterOutSlaveIn,主设备输出从设备输入),在线编程(ISP,In-SystemProgramming)过程中发挥着关键作用,用于向从设备传输数据或指令。P1.6:MISO(MasterInSlaveOut,主设备输入从设备输出)负责在线编程过程中接收从设备发送的数据或状态信息。P1.7:SCK(SerialClock,串行时钟),在线编程中提供串行通信所需的时钟信号,确保主设备与从设备之间的数据同步传输。P2端口:P2端口是一个具有8位双向输入/输出功能的接口,内部集成了上拉电阻。其输出缓冲器具备驱动4路TTL逻辑电平的能力。当向P2端口写入“1”时,内部的上拉电阻会使端口电平上升,从而使其可以作为输出端口使用。而在作为输入端口时,由于内部电阻的存在,外部引脚可能会产生一定的输出电流(IIL)。在访问外部程序存储器或以16位地址读取外部数据存储器(例如执行MOVX@DPTR指令)时,P2端口负责输出高8位地址。在这种应用场景下,为了确保地址的稳定传输,P2端口会使用强内部上拉来发送“1”。另一方面,当外部数据存储器通过8位地址(如MOVX@RI指令)进行访问时,P2端口将输出P2锁存器中的内容。值得注意的是,在flash编程和校验过程中,P2端口不仅接收超过8位的地址字节,还负责接收部分控制信号。P3端口介绍:P3端口同样是一个具有8位双向输入/输出功能的接口,并内置了上拉电阻。当向P3端口写入“1”时,内部的上拉电阻会将其电平拉起,从而使其转变为输出端口。而在作为输入端口使用时,由于内部电阻的存在,外部引脚可能会产生一定的输出电流(IIL)。P3端口亦为STC89C52单片机的第二个作用。见表2-1。在flash程序校对验证过程中,P3端口也接收一部分控制信号。表2-1P3口的第二功能表引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时器0外部中断)P3.5T1(定时器1外部中断)P3.6WR(外部存储器写选通)P3.7RD(外部存储器读写通)3.专用的引脚:RST,即重置输入端。当振荡器处于工作状态时,如果RST引脚持续接收到高电平信号,并且这个高电平状态维持超过两个机器循环的时间,那么单片机将会进行复位操作。ALE/PROG,其中ALE表示地址锁存使能(AddressLatchEnable)。在访问外部的程序存储器或数据存储器时,ALE会发出一个脉冲,用于锁存低8位的地址。通常情况下,ALE还会产生一个稳定的脉冲,其频率为振荡器频率的六分之一,因此它也可以作为时钟信号进行输出,也可以作为计时用途。注意:ALE脉冲一到外置的资料存贮器就开始跳跃。此引脚在FLASH编程过程中,还承担着输入程序脉冲(PROG)的功能。当需要时,通过在专用功能寄存器(SFR)区中的8位寄存器设置D0位,可以使ALE的功能被禁止。在这个比特之后,紧跟着的是MOVX操作。此外,这个引脚还具备轻微的上拉功能。当执行外部程序时,应确保ALE中的禁止位不被激活,即保持为无效状态。PSEN,程序存储使能(ProgramStoreEnable)的输出信号,其主要功能是为外部程序存储器提供读/选通信号。当STC89C52单片机需要从外部程序存储器中读取指令(或数据)时,PSEN信号会处于激活状态,表现为输出两个脉冲信号。EA/VPP引脚用于控制外部存取的权限。由于CPU只能访问位于地址0000H至FFFFH之间的外部程序存储器,所以当希望CPU从外部存储器读取指令时,EA/VPP引脚必须保持低电平(连接到GND)。需要注意的是,如果密码位LB1已被编程设置,那么在复位操作之后,EA/VPP引脚的状态将会被锁定。另外,当EA/VPP引脚处于高电平状态(连接到Vcc端口)时,CPU将转而执行内部程序存储器中的指令。编写FLASH过程中时,需要在此引脚上加上一个+12V的程序,这样就能得到一个电压为12V的电压。这些引脚与功能使STC89C52单片机在嵌入式控制系统中起着十分重要的作用,能够针对不同应用需求灵活地配置与应用,完成多种复杂控制任务。第3章系统的硬件电路3.1单片机最小系统如图3-1使单片机工作的最基本电路所组成单片机最小系统;图3-1单片机最小系统单片机最小系统是一个集成了多个关键组件的体系,这些组件包括单片机主体、复位电路以及时钟电路等。STC89C52单片机,作为这一体系的核心,其工作电压有一个特定的范围,即在4伏特到5.5伏特之间。为了满足这一工作电压需求,选择了5伏特的直流电源作为外部供电来源。在连接电源时,单片机的40引脚,即VCC引脚,会与正极5伏特的电源相连,而20引脚,即VSS引脚,则会连接到电源的接地端,也就是GND。复位电路在整个单片机系统中扮演着至关重要的角色。它的主要任务是确保单片机的初始工作状态准确无误,从而保障单片机启动过程的顺利进行。每当单片机接通电源时,复位电路就会迅速发出复位信号REF_Ref18300\r\h[13],使单片机具有一个明确的初始工作方式。此外,当单片机在运行过程中因外界干扰而导致程序不能正常运行时,可以通过按下复位键实现内部程序的重新启动。复位方式包括自动和手动按键复位两种。在启动单片机时钟电路时,连续在RESET端给出两个机器循环的高电平信号即可完成复位。此设计采用了外部手动按键复位电路,并增强了输出的高电平稳定性,通过增加上拉电阻实现。时钟电路,作为单片机的核心部分,控制着其运行节奏。从本质上看,时钟电路就是一种振荡电路,它通过产生正弦信号作为标准,从而决定了单片机的运行速度。XTAL1和XTAL2作为反向放大器,其输入和输出可以集成在片内振荡器中,共同参与时钟信号的生成。当单片机采用外部时钟源供电时,由于外部时钟信号已经提供,因此无需再连接XTAL2。此外,单片机的运行周期与振荡周期密切相关。一个完整的机器周期由6个状态周期构成,而每个状态周期又可以细分为两个振荡周期。因此,一整个的机器周期实际上是由12个振荡周期组成的。例如,在外部连接的石英晶体振荡器的振荡频率达到12MHZ的情况下,每一个振荡周期所需的时间长度约为1/12微秒。3.2单片机的时钟电路与复位电路设计本系统选用了STC系列单片机,相较于其他系列单片机,其优势显著。通常情况下,STC单片机拥有比其他同类型产品更丰富的资源,并且其运行速度也相对更快。从编程上看,STC系列单片机是利用串口烧写的,从而使程序的下载相当方便。尤其值得一提的是STC89C52型单片机内集成有看门狗电路且抗干扰能力优秀,在很多应用场合是一个极其关键的功能。该系统由内部时钟电路和加电自复位两种复位电路组成,其具体结构见图3-2。图3-2时钟电路与复位电路由于单片机的P0口内部并未集成上拉电阻,呈现出高阻态,因此无法直接输出正常的高电平或低电平。为了确保该组I/O口的正常使用,必须外接上拉电阻。这样的设计虽然增加了一些复杂性,但确保了系统的稳定性和可靠性。3.3CH4气体检测采集电路甲烷气体检测采集电路采用MQ-4气体传感器并通过模拟输出接口与PCF8591T中ADC(模数转换器)模块相连接。图3-3CH4采集电路3.4CO2气体检测采集电路如下图3-4,利用SGP30二氧化碳传感器通过I2C通讯协议,对SGP30传感器测得的二氧化碳浓度数据进行了读取。图3-4CO2采集电路3.5烟雾检测采集电路此电路使用MQ-2型半导体烟雾传感器进行烟雾检测。经PCF8591T采集后进行数模转换,从而获得不同烟雾浓度的电压值,接着便可设置烟雾浓度告警的理想阈值REF_Ref19094\r\h[15]。电路见图3-5。图3-5烟雾采集电路3.6LCD1602显示模块LCD1602是一款字符型LCD模块,具备多样化的显示功能,可呈现文字、数字及符号等各式内容。这款设备能够展示16×2个字符,即每行可显示16个字符,共包含两行。该显示模块结构上由内部控制器组成,多采用HD44780,可对液晶显示屏进行驱动和显示内容的加工。LCD1602和51单片机主要是由它们的引脚相连而成。其中,LCD1602的数据引脚D0至D7与单片机的P0.0至P0.7端口相连,用于实现数据的传输功能。而指令/资料选择引脚RS则用于选择发送指令或资料REF_Ref19244\r\h[16];读/写选择引脚RW是用来决定是进行写入操作还是读取操作的;行使执行指令的引脚E。在基于51单片机的二氧化碳浓度检测系统中,LCD1602显示模块电路的主要作用是将从MQ-4、SGP30和MQ-2传感器读取的浓度数据转换为可视化的字符,并显示在液晶屏幕上。单片机通过I/O口向LCD1602发送命令和数据,控制其显示内容和格式。图3-6LCD1602显示电路3.7声音报警电路单片机控制声音报警模块输入信号触发声音报警。由单片机I/O口。单片机在气体浓度大于阈值时置对应I/O口至高电平或者低电平以带动声音报警模块发声。该电路通过接入单片机的P1.4端口,以此来实现对蜂鸣器报警与否的控制。图3-7声音报警电路3.8按键控制电路该电路共设计4个键,1个设置键,1个加键,1个减键和1个确定键,气体浓度阈值由按键设定,气体浓度到达预设值后蜂鸣器发出警报。如图3-8所示。图3-8按键控制电路3.9蓝牙模块该系统采用的是JDY-31蓝牙模块,这是一个基于蓝牙技术的无线通讯模块。该设备运用了低能耗的蓝牙技术,并以其简洁易用和稳定的性能为特点。系统将JDY-31模块的TXD引脚与单片机的RXD引脚相连,以实现数据的接收功能。将模块的VCC引脚连接到单片机的5V电源引脚,为模块提供稳定的电源输入REF_Ref19427\r\h[17]。此外,模块的GND引脚则与单片机的接地引脚相连,确保电路的稳定性和安全性。图3-9蓝牙模块电路3.10电源模块针对该系统主要依靠电池供电的问题,本文对如下供电方案进行了深入的探讨。方案一:在工作之初,曾考虑使用5V蓄电池。这种电源因其强大的电流驱动能力和稳定的电压输出而受到青睐。然而,在实际应用中,我也发现了其明显的不足之处。蓄电池的体积相对较大,这在报警器这类需要紧凑设计的设备中显得尤为不便。因此,尽管蓄电池在电能供应方面有其优势,但考虑到体积因素,本系统决定寻找其他更适合的电源方案。方案二:另一种供电方式是采用5V的USB接口。经实验证明,该系统运行过程中,不论单片机或传感器工作电压均稳定,并能达到系统要求。另外,USB供电方式具有便捷性强等特点。考虑到上述因素,本系统最后选定方案二。有关电源接口电路的详细情况可参见图3-10。在图示中,USB作为电源的接口,而自锁开关则代表的是电源开关。图3-10电源模块3.11系统整体硬件设计关于系统整体设计原理图详细如图3-11。图中,主要组成部分涵盖单片机最小系统、时钟电路、气体检测采集电路、显示模块、蓝牙模块以及电源模块。在这些模块中,气体传感器模块起到关键作用。它负责实时检测周围环境中的CH4、CO2以及烟雾浓度,有效地将检测到的浓度信号有效地转化成电信号REF_Ref19603\r\h[18],经PCF8591T数模转换为浓度值,报警模块则根据设定的浓度阈值,当浓度值超过阈值时,触发报警信号。图3-11系统原理图以下是关于系统整体硬件的PCB图,STC89C52单片机布局在液晶显示屏下方,使PCB板空间更紧凑,气体传感器依次排列在PCB板下端,按键控制布局于PCB板右侧,蜂鸣器告警模块位于PCB板中间区域,整个系统尺寸小巧,可以节约成本,空间布局较为紧密,更方便在室内外使用,详细如图3-12。图3-12系统PCB图以下是关于系统整体设计物料清单表,详细如表3-1。表3-1物料清单表CommentDescriptionDesignatorFootprintLibRefQuantity1KHeader,9-PinA103JHDR1X9Header91GPC1407AT-5V4000蜂鸣器BUZZER1BUZ-TH_BD14.0-P7.50-D0.8GPC1407AT-5V4000122pF电容C1,C3C-RAD-0805CAP_0805210uF电容C2,C8C-RAD-0805CAP_08052100nF电容C9C-RAD-0805CAP_08051LEDLEDD1,D2,D3LED_0805LED_0805310K电阻R10805-1RES_0805110K电阻R2RM065RES_RM06511k电阻R3,R4,R80805-1RES_08053SW-PB微动开关S2,S3,S4,S5,S6SW_PB2_A1SW-PB5STC89C5251单片机U1DIP40STC89C51_DIP401LCD1602LCD1602U2LCD-1602LCD16021PCF8591数模转换器U3SOP16W_MPCF8591_SOP161MQ2U4MQ2_XMQ21TTSU5HDR2.54-LI-4PTTS1MQ4U6MQ2_XMQ21JY-31蓝牙U7HDR2.54-LI-4PJY-311SGP30U8HDR2.54-LI-4PSGP301自锁开关自锁开关U9自锁开关自锁开关1USBUSB-2PUSB1USB-2PUSB-2P111.0592MHzXT1HC-49SXTAL_HC-49S1第4章系统软件的设计4.1系统软件开发环境这个系统的软件开发主要基于Keil软件平台,而Keil是一种针对嵌入式开发人员的集成开发工具,因功能强大,效率高而备受行业赞誉。Keil在代码编辑,编译,连接,调试等各方面都给予支持,使嵌入式系统开发过程更加顺畅,更有效率。支持C、C++等各种编程语言,使开发者能根据项目需要选择最合适的编程方式。同时Keil具有丰富的库函数与中间件,能够极大地缩短开发周期、提高开发效率。在Keil环境下能够很容易的完成代码编写与调试。它所提供的直观界面以及功能强大的调试工具能够帮助我们迅速定位并解决程序运行过程中存在的各种问题。另外Keil支持各种硬件平台并能无缝连接各种嵌入式处理器,这给设计者带来了很大的灵活性及便利性。图4-1系统软件开发环境4.2系统主程序设计及流程图如图4-2给出了系统主程序的流程图。以下是主要流程的概述:系统的启动与初始化:在系统启动后,首要任务是进行初始化操作。包括配置单片机的输入输出端口,确保各个端口能够按照预定的功能进行数据的输入输出;设定定时器,以满足系统对时间精度的要求;以及初始化中断服务程序。。传感器的预热:由于MQ-4气体传感器和MQ-2烟雾传感器在之前经历了较长时间的停电存储,它们需要在重新启动后经历一个预热期。这个预热过程对于确保传感器能够准确获取气体数据至关重要。在预热期间,传感器的内部元件会逐渐达到稳定的工作状态,从而能够更精确地响应环境中的气体浓度变化。通过这一步骤,可以确保传感器在后续的气体检测中能够提供准确可靠的数据。数据采集:预热结束时,系统处于监控模式。监控模式时,启动SGP30二氧化碳气体传感器,MQ-4甲烷气体传感器和MQ-2烟雾气体传感器对周围环境进行数据采集。这些传感器负责收集环境中的模拟信号,随后将这些信号传输至PCF8591T数模转换器。PCF8591T发挥着关键作用,将传感器发出的模拟信号转换成数字信号,以便单片机进行处理。与此同时,LCD1602显示屏实时展示了当前的气体浓度,能够直观地了解环境状况。阈值设定和判断:按键控制设定气体浓度阈值。单片机在收到上述阈值设置时,将对当前气体浓度进行实时判断,以确定其是否超过预设阈值。超出阈值:若所述单片机判断所述当前气体浓度超过预设阈值,则系统启动报警机制。红灯亮起,蜂鸣器发出报警声音,以提醒当前环境可能存在危险。未超出阈值:如果气体浓度在安全范围内,绿灯亮起,表示当前环境安全。循环监控:无论是否触发报警,系统都会继续循环进行传感器数据采集、显示、阈值判断等步骤,以实现对环境的持续监控。图4-2主程序流程图整个报警机制工作时,通过PCF8591T转换器对气体浓度数据进行处理,然后送到单片机进行处理,以判决是否需要启动告警装置。在主程序中,还集成了自动告警、告警浓度设置与LCD1602浓度值显示等功能,使报警装置的功能更加完善REF_Ref19779\r\h[19]。以下为主程序部分代码:voidmain(void){uart_init();timer0_mode1_init();lcd1602_init();ad_da_pcf8591_init();__enable_irq();get_sensor_data();while(1){time_event_loop(read_sensor_data,get_sensor_data,1000);keypros();}}代码4-1代码示例4.3传感器采集程序初始化气体传感器后,气体传感器主要是通过采集数据时产生的电信号传送到PCF8591T数模转换器,PCF8591T基于信号进行数模转换。图4-3是气体传感器数据采集程序的流程图。图4-3传感器采集流程图以下为传感器采集数据部分代码:staticvoidget_sensor_data(void){if(adc_pcf8591_read_ad(0,ad_buf,3)&&set_flag==0){sprintf(display_buf,"YW:%bu",ad_buf[0]);lcd1602_display_string(0,0,display_buf);sprintf(display_buf,"JW:%bu",ad_buf[1]);lcd1602_display_string(8,0,display_buf);sprintf(display_buf,"CO2:%bu",ad_buf[2]);lcd1602_display_string(0,1,display_buf);if(ad_buf[0]>max_yw||ad_buf[1]>max_jw||ad_buf[2]>max_co2){ledr=0;ledg=1;}else{ledr=1;ledg=0;}printf("YW:%bu,JW:%bu,CO2:%bu\r\n",ad_buf[0],ad_buf[1],ad_buf[2]);}time_event_start(read_sensor_data);}代码4-2代码示例4.4按键控制程序如下图4-4所示为按键控制程序流程图,通过判断按键是否被按下来执行是否进入按键设置函数,通过按键加减设定气体浓度阈值后,按下确定键可以成功设置阈值。图4-4按键控制流程图以下为按键控制部分代码:voidkeypros(void){ if(k1==0) { delay(1000); if(k1==0) {set_flag++;lcd1602_clear_display();ledg=1;ledr=1;if(set_flag>3){set_flag=0;get_sensor_data();}display_set(); } while(!k1); }代码4-3代码示例4.5显示模块程序如下图4-5为显示模块程序流程图,在电源稳定电压下,对LCD1602显示模块进行初始化,设置显示模式与内容,向LCD1602发送显示气体浓度值的文字、数字和符号,显示模块读取结果后发送气体数据浓度到LCD1602屏幕上显示气体浓度。图4-5显示模块流程图以下为显示模块部分代码:staticvoiddisplay_set(void){switch(set_flag){case1:lcd1602_display_string(4,0,"MaxYW");sprintf(display_buf,"%03bu",max_yw);lcd1602_display_string(7,1,display_buf);break;case2:lcd1602_display_string(4,0,"MaxJW");sprintf(display_buf,"%03bu",max_jw);lcd1602_display_string(7,1,display_buf);break;case3:lcd1602_display_string(4,0,"MaxCO2");sprintf(display_buf,"%03bu",max_co2);lcd1602_display_string(7,1,display_buf);break;default:break;}}代码4-4代码示例4.6蓝牙串口通信程序如下图4-6为蓝牙串口通信模块程序流程图,在电源稳定电压下,打开蓝牙串口模块与手机端进行连接,蓝牙串口初始化后,配置串口通信参数,读写数据通过串口与手机端进行蓝牙通信,把气体浓度信息发送至手机端,手机端可查看CH4、CO2和烟雾等气体浓度信息。图4-6蓝牙串口通信模块流程图以下为蓝牙通信模块串口初始化部分代码:voiduart_init(void){SCON=0x50;TMOD&=0x0f;TMOD|=0x20;PCON=0x00;TH1=0xFD;TL1=0xFD;TR1=1;REN=1;ES=1;}代码4-5代码示例第5章系统的调试5.1系统硬件调试在CH4、CO2等气体浓度检测与告警系统中,硬件调试可以确保系统硬件部分的正常工作和稳定性。它涉及到对单片机、传感器、显示屏、按键、蜂鸣器等硬件组件的细致检查和测试。通过硬件调试,可以发现并解决硬件连接错误、电源问题、传感器故障等硬件层面的问题,确保硬件能够按照设计要求正确工作。下面是其步骤的详细描述:第一步骤,首先要进行的是目视检查。鉴于单片机应用系统中的全部电路都是人工焊接在PCB板上的,因此每一个焊接点都需要细致地审视。要评估焊点的稳固程度,确保没有出现虚焊现象,并且焊点表面要光滑,无毛刺及其他不良情况。第二步骤,利用万用表进行更为深入的测量。首先,对可能发生故障的线路和触点进行目视检查,之后,再运用万用表来验证它们的通断情况是否符合设计要求。除此之外,还应检查各类电源线及地线,确保其不存在短路现象,确保线路的安全性。第三步骤是检查通电情况。当给系统接通电源时,应该检查所有的设备引脚电源端口上的电压值是否符合要求,并且当确认接地端的电压接近于零。这一步的目的,就是为了保证电源的正常供应,以及各部件在通电后能够正常工作。最后一步是联机检查。这一步骤旨在通过实际运行来验证硬件电路的性能和稳定性,确保系统能够按照设计要求正常工作。在硬件电路的调试中,我也碰到过很多的问题。比如第一次把元件都焊好了准备调试,却发现正负极插针离得太近,给接电源带来了困难。这个错误本不应该发生,纯粹是由于走进的疏忽。所以,我深深认识到不可以有丝毫马虎之处,否则不但浪费了时间与精力,而且也会影响系统的整体进度。如图5-1为系统整体实物图:图5-1系统整体实物图5.2系统软件调试在CH4、CO2等气体浓度检测与告警系统中,软件调试可以确保系统软件部分的正确性和可靠性。它涉及到对程序逻辑、阈值判断、告警触发等关键部分的检查和测试。通过软件调试,可以发现并修复程序中的语法错误、逻辑错误或设计缺陷,确保软件能够准确地读取传感器数据、处理数据并触发相应的告警动作。程序逻辑校验:深入检查程序编写的细节,确保逻辑通顺,不存在语法瑕疵或逻辑矛盾。特别应着重检验数据处理流程、阈值判定机制、报警触发等重要部分的代码实现。仿真测试:在模拟的运作环境中执行程序,密切观测其执行流程和结果。此举有助于捕捉潜在的问题和疏漏,如图5-2所示为系统仿真图。图5-2系统仿真图5.3系统测试系统实物测试,将编译好的程序烧录至单片机中,在室内环境中进行测试。细心观察液晶显示屏所呈现的信息、蜂鸣器发出的报警声响、指示灯的状态等,确保它们与现场气体浓度的实际情况相符。以下为本系统主要模块测试内容。CH4、CO2气体及烟雾采集模块测试:如下图5-3所示,当系统上电后,MQ-4甲烷气体传感器、SGP30二氧化碳气体传感器以及MQ-2烟雾传感器均可正常采集气体数据,将气体浓度电信号转为相应电压值显示,气体采集功能正常工作。图5-3气体采集模块测试图LCD1602显示模块测试:如下图5-4所示,当系统上电后,LCD1602可正常工作,显示相应气体浓度字符数字,其中YW表示烟雾浓度,JW表示甲烷气体浓度,CO2为二氧化碳气体浓度,显示模块正常工作。图5-4显示模块测试图按键控制模块测试:如下图5-5所示,当系统上电开启后,通过控制按键的设置键可以设置不同气体的浓度阈值,通过加、减键实现调节气体浓度阈值,按下确定键后可成功设定气体浓度阈值,按键控制功能正常工作。图5-5按键控制模块测试图蓝牙模块测试:如下图5-6所示,当系统上电开启后,蓝牙串口打开,通过手机端可连接串口,进行蓝牙传输气体浓度信息,手机端可看到实时检测到的气体浓度,蓝牙功能正常工作。图5-6蓝牙模块测试图报警模块测试:如下图5-7所示,当系统上电开启后,设置气体浓度阈值,向对应传感器释放对应气体,可观察屏幕检测气体浓度增加,当大于设定气体浓度阈值时触发蜂鸣器发出警报,并亮红灯,告警功能正常工作。图5-7报警模块测试图系统测试结果:表5-5系统测试CH4、CO2气体及烟雾采集模块测试LCD1602显示模块测试按键控制模块测试蓝牙模块测试报警模块测试第6章总结评价气体浓度检测告警器对保证生产和生活安全起关键作用,可有效地防止火灾,爆炸事故和煤气中毒事件,从而成为防火,防爆和安全生产必不可少的关键仪器。它以优异的功能性在市场上占有举足轻重的位置,并且它具有广阔的发展前景。本文通过对气体传感器及告警技术的深入研究,对国内外类似产品进行了对比,确定了合适的设计方案。本文详尽介绍了系统的整体结构及各个组成的部分。在本设计中,气体浓度检测报警装置主要包括两个核心部分:气体信号采集电路及单片机控制电路。根据设计要求、使用环境和成本等方面的考虑,本系统选用了MQ-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论