煤气泄漏检测毕业设计.docx
《煤气泄漏检测毕业设计.docx》由会员分享,可在线阅读,更多相关《煤气泄漏检测毕业设计.docx(38页珍藏版)》请在冰豆网上搜索。
![煤气泄漏检测毕业设计.docx](https://file1.bdocx.com/fileroot1/2023-6/28/3f04b112-a919-4755-80c3-562cba1b14c6/3f04b112-a919-4755-80c3-562cba1b14c61.gif)
煤气泄漏检测毕业设计
煤气泄漏检测毕业设计
录
第一章绪论
一.3本设计的背景
随着我国天燃气、煤气供应的变革及西气东输工程的发展,煤气或天燃气已成为多数家庭以及工厂的能源。
现如今,因一氧化碳泄漏造成的一氧化碳中毒事故中,因使用煤气炉子不当或产品本身的质量问题,造成的煤气中毒事故,在中国有很多事例。
有的甚至因为室内一氧化碳浓度过高,引起爆炸的惨烈事故亦是很常见。
所以怎样防止煤气中毒与爆炸已成为人们的迫切需要。
为此我们开发研制了智能煤气泄漏控制系统。
随着自动化技术的普及和计算机技术的迅猛发展,人们己不满足于传统的居住环境,进而对家庭及工作环境的安全性提出了更高的要求,智能化家电被引入家庭,并迅速在世界各地发展起来。
人们对工作、居住环境的要求日益增高,体现在希望住宅以及工作单位不仅更便利、舒适而且更安全。
对家庭及工作单位设备的智能化的定义,在国际上至今尚无一致的定论,在现代化的住宅小区以及工业现场综合采用微处理器、自动控制、通信与智能卡及网络等技术,建立一个由安全系统与管理中心、管理系统与信息通信服务和智能化系统组成的住宅管理与服务的综合系统,这样做想达到的目标就是让每一位工作人员或者住户得到满足其要求的解决方案方案。
国家建设部规定,目前住宅小区应实现六项智能化要求,这里面就包含施行安全防护系统的自动化监测与管理;防盗报警系统或一氧化碳泄漏报警器等各式各样的报警系统。
基于这项规定,实现煤气泄漏自动报警器的智能化是很有必要的。
在信息化与智能化进程迅速发展的今天,信息化技术的运用己渗透到人类生存、活动的各个领域,在建筑领域,人们对现在的生活、工作环境的要求越来越高。
但是此时人们对气体燃料的需求也越来越大。
现在一氧化碳,丙烷、甲烷正在广泛作为气体燃料应用在家庭或者工业现场,逐渐走进了人们的日常生活当中。
对气体能源的普及和需求,随之而来的是可燃气体的泄漏而引起的爆炸、火灾、中毒等事故经常发生。
在这里面由于煤气泄漏引起一氧化碳中毒死亡的人数占很大比重。
众多周知因为一氧化碳与血液中的血红素的结合能力是氧与血红素结合能力的二百多倍,因此,当一氧化碳进入血液里面以后,就会代替氧而大量的与血红素相结合,并且抑制血液中氧气的吸收,因而引起血压降低、呕吐、耳鸣、头痛等不同程度的病症。
如果一氧化碳中毒程度很严重,会造成脑部受损甚至导致死亡。
这就对煤气自动报警的器的设计更加迫切。
为了预防一氧化碳的泄漏,人们采用了各种措施。
家用智能煤气报警器是为了预防气体中毒的一种家用的自动报警器,也是一种高灵敏度的气体探测器,一般都是应用高灵敏度的气敏元件作气电转换元件,并配以电路和声光报警部分组成。
当泄漏的气体达到危险极限值时报警器就会发生鸣响和声光报警。
一.4本设计的目的及意义
测控技术与仪器仪表技术已经是现在社会不可缺少的重要组件。
从今天进入信息科技时代来看,仪器仪表是实现信息的获取、转换、存贮和揭示物质运动的必备工具,现如今普遍将这称为信息与科技的三大支柱(信息获取及处理、信息传输与通信、计算机及电子技术)的必要方法,也是现在新技术革命时期的一个重要方向。
随着我国现代化建设进程的发展,现在人们对以往仪器仪表所能起到的监控作用在智能化技术上有了更高的要求,因而仪器仪表技术是促进开发与节约能源和材料,提高劳动生产率和社会经济效益,各部门技术进步,进行技术改造,国民经济发展的先驱行业。
仪器仪表的技术水平可以很好地体现一个国家的科学技术的现代化水平和生产力的发展。
随着科技的发展,计算机技术的应用,测试技术与仪表专业的趋势越来越向智能化转变——智能仪表。
智能仪表一出现就显示了它强大的生命力,现已成为仪器仪表发展的一个重要方向。
这不仅在一般的测量仪表中,而且在分析仪表、实验室仪表与生物医学仪表中反映出来。
仪器仪表的技术水平可以很好地体现一个国家的科学技术的现代化水平,当前仪器仪表的研发方向正从自动化控制向智能化的方向迈进,毫无疑问,这对于提高生产力,优化设备性能,加快我国现代化建设有不可或缺的作用。
由此可见,测控及仪表开发具有很有前景的未来。
在小区内保安室或是矿区主控室(以下简称总台)安装好一个控制主机和报警模块,在小区的每一个住户安装或是矿区的每一个矿点安装一个到多个探测头和报警模块。
这样就可以同时在发生意外的时候及时的在总台和发生意外的所在点产生声光报警,及时的疏散意外所在点的人群并告之总台的控制端。
总台可以通过显示模块得知哪个点发生意外,并及时的进行处理和疏导人群。
一.5本设计的主要内容
本论文设计了一种基于STM32的可自锁智能煤气泄漏控制器,主要内容如下:
(1)STM32核心板设计及其程序开发;
(2)MQ2烟雾传感器的硬件电路设计及其程序开发;
(3)直流电机的驱动电路设计及其程序开发;
(4)霍尔传感器的电路设计及其程序开发。
第二章系统总设计
二.3方案的选择
方案一,通过可燃气体传感器来检测可燃气体,通过降低自身的阻值的方法来增大电流,并且驱动电动机关闭阀门。
这个方案外围电路少,但是实用性与可靠性比较差。
方案二,能够用气体传感器监测经过多级放大器放大后的信号,并通过调节可调电阻从而获得恒定的电压值,当检测到可燃气体信号时,电阻值变小,但是运放的放大倍数增高,输出电压也随之增加,继电器导通,电动机旋转。
这个方案比较灵活并且可执性较高,而外围电路比较复杂,智能化性能不好。
方案三,通过STM32系列单片机作为主控制器,并且能够通过传感器把模拟信号通过A/D转换器转换为数字信号,并且读取出来。
当检测到煤气泄漏以后,控制器自动控制电动机关闭阀门,并且通过霍尔传感器检测阀门是否关严。
综合考虑,由于使用单片机设计灵活性更强、用途更宽广,所以本设计采用方案三。
二.4系统流程图
如图2-1所示,该设计是由STM32单片机主要控制单元,由7.2V锂电池提供电源,具备JTAG下载接口以及3.3V和5V稳压电源。
7.2V电源
+5V电源
图2-1系统流程框图
第三章硬件系统设计与传感器选用
硬件系统的电路包括主机单元的电路和功能实现系统模块电路。
主控制单元主要由STM32单片机最小系统与JTAG下载接口和AMS1117-3.3电源电路组成。
功能实现系统模块,由A/D转换电路、信号处理电路、人机接口电路、传感器和报警电路组成。
三.3主控制器电路
三.3.1STM32F103C8T6
主控制器采用STM32F103C8T6。
STM32控制芯片是半导体制造商意法半导体ST公司率先推出了基于Cortex-M3内核的STM32系列MCU。
STM32系列处理器是以高性能、低成本、低功耗的专门应用于嵌入式应用的ARMCortex-M3内核为中央处理单元的微控制器。
STM32系列32位闪存微控制器使用ARM公司的Cortex-M3内核,处理器的核心是基于哈佛架构的3级流水线内核,该内核集成了分支预测,单周期乘法,硬件除法等众多功能强大的特性,目前己获得广泛的应用。
STM32按照性能可分为STM32f101“基本型”、STM32f103“增强型”、STM32f105和STM32f107“互连型等。
所有系列的STM32都是32位的基于Cortex-M3的微型控制器,它的功耗仅为36mA,是目前32位嵌入式微处理器中功耗最低的产品。
STM32f101系列的时钟频率为36MHz,但是它的价格和16位处理器相当,性能却比16位单片机高出很多,是性价比最高的32位微控制器。
STM32f103系列的产品的系统时钟频率超频后可达72MHz,并能从Flash执行代码,是同级别产品中最具性价比的产品。
STM32f103系列和STM32f101系列片内都自带有32K到128K的Flash空间,而且具备各种其他的片内外设如定时器、各种通信接口、A/D转换器等。
STM32f105和STM32f107系列产品延续了STM32f103系列的72MHz系统主频的设计,Flash包括64KB到256KB和20KB到64KB的SRAM,并在STM32f103系列的基础上加强了的通讯互连的性能。
STM32系列微控制器的内部数据总线为32位,基于ARMCortex-M3内核,该内核在架构上进行了多项创新,性能大幅提升。
具有优先级抢占的中断控制器,支持中断自动嵌套,硬件完成现场保护与恢复,并且具有业界最优的功耗水平。
它提供了一个完整的32位产品系列,在结合高性能、低功耗和低电压特性的同时保持高度集成性和简易的开发特性。
STM32F103处理器的主要特点如下:
(1)低功耗:
采用3.3V电压供电,内嵌RTC时钟,支持低功耗模式运行。
(2)数据处理能力强:
最大工作频率72MHz,内有单周期硬件乘法器和除法器。
(3)存储空间大:
内部有64KB的SRAM、256KB的FLASH,支持外部SRAM、NOR、NAND类存储器扩展。
同时支持8080和6800两种总线形式LCD扩展。
(4)外设资源丰富:
有2个IIC接口、5个DART接口、3个SPI接口,此外还有USB,CAN接口以及80个GPIO资源。
完全满足日历时钟、看门狗、通讯、按键、报警接口的扩展。
ST公司为STM32系列的用户开发了一套固件库函数,并且这一系列处理器有着相同规格的封装。
当用户使用不同容量的处理器时,依然能够沿用原来的开发程序,这为嵌入式程序的移植提供了巨大的方便。
嵌入式开发人员只需掌握STM32系列中任一款芯片,便能够运用该系列中其它型号的芯片。
三.3.2Cortex-M3内核
STM32系列微处理器是基于Cortex-M3的嵌入式微控制器。
Cortex-M3是ARM公司研发的一款32位处理器的内核。
它内部的寄存器、存储器接口、数据总线都是32位的。
Cortex-M3是基于哈佛结构的,哈佛结构就是将指令和数据在不同的内存空间分开储存,分别使用指令总线和数据总线访问不同的内存空间,因此,系统对指令和数据的存取能够同时执行。
因而当处理器存取数据时不会阻碍程序指令的执行,因此增强了处理器的综合能力。
Cortex-M3中含有多条总线,并且它们能够同时运行,开发者能够根据想要达到的目标将片内外设与对应的总线连接。
但是实际上,指令总线和数据总线是共同使用同一个内存空间的(内存空间采用统一的编址方式)。
换句话说,如果不是有指令总线和数据总线,其可寻址范围就成了8GB了。
Cortex-M3既支持大端模式,也支持小端模式。
针对于需要更多存储空间的应用,Cortex-M3可以为用户提供合适的MPU内存保护单元,有的时候还会运用外部cache。
Cortex-M3不仅可以达到嵌入式开发者对嵌入式控制的要求,并且为开发者提供了很多的开发、调试工具,用户能够使用这些工具对嵌入式系统进行在线开发、调试。
Cortex-M3的结构简图如图3-1所示。
图3-1Cortex-M3结构图
Cortex-M3具有的高代码密度、高性能、使用较小的硅片面积等硬件特征使Cortex-M3变得备受瞩目,变成当下趋于完美的处理器内核。
Cortex-M3从一开始研发出来就适合做单片机,甚至简单到在用于控制小电器或玩具的低成本单片机中,也能够应用Cortex-M3作为内核。
之前,这些低成本控制器主要是8位或者16位的内核,但是Cortex-M3内核的低成本,高性能,方便使用,高性价比的特性,使得开发人员将目光转移到这个ARM32位内核来。
Cortex-M3也适用于汽车电子领域。
Cortex-M3拥有较高的处理速度以及很低的中断延迟,因而可以在实时控制领域得到广泛应用。
Cortex-M3中有中断向量嵌套控制器,并且支持多达240个外部中断。
三.3.3电源模块设计
本系统的5V电源使用的是开关稳压器(适用于压差大的电路),目前市场上的稳压电源按其工作状态分类,有线性稳压器和开关稳压器,调整元件工作在线性状态的称为线性稳压电源,又称为连续导电稳压电源,调整元件工作在开关状态的称为开关稳压电源。
开关电源的优点主要是效率高、自身功耗小、体积小、重量轻、输入电压范围宽等,缺点是电压稳定性欠佳。
D2亮显示电路板上电,D3亮显示电路板的电源开关打开,电容的作用为滤波。
5.0V稳压电源为MQ-2烟雾传感器供电,电路图如图3-2所示。
3.3V稳压电源为STM32单片机、DS18B20温度传感器、12864液晶显示屏、LED指示灯和蜂鸣器供电,电路图如图3-3所示。
图3-25.0V开关稳压电源电路
图3-33.3V线性稳压电源电路
三.3.4单片机最小系统外围电路
晶振电路电路图如图3-4所示:
图3-4晶振电路
无论使用哪种类型的单片机,总要涉及到单片机复位电路的设计。
该系统的复位采用上电低电平复位,而单片机在平时则复位端为高电平。
复位电路电路图如图3-5所示:
图3-5复位电路
三.3.5SWD下载器接口设计
STM32使用J-link仿真器下载程序,J-link有两种下载方式:
JTAG和SWD,JTAG接法复杂,因此采用SWD,接法简单,只需接VCC、GND、SWDIO和SWCLK四根线。
下载器接口模块电路图如图3-6所示:
图3-6程序下载电路
三.4功能模块部分
该部分中主要由数据采集模块、位置检测模块、信号处理模块、电机驱动模块和声光报警模块。
可以实现STM32单片机的对传感器信号进行采集计算比较,并产生相应的措施。
3.2.1MQ2的数据采集单元
本设计A/D转换器选择了STM32内部的A/D转换器。
STM32拥有最快1µs转换速度的双12位精度ADC,此快速采集,高性能的ADC非常适用于数据的快速采集和快速处理,这也是本系统选择它作为核心控制器的一个重要原因。
STM32片内的12位ADC是一种逐次逼近式模拟数字转换器。
它有多达18个转换通道,可以采集16个外部和2个片内信号源的模拟信号。
各个转换通道的A/D转换能够工作在扫描、单次、连续或间断的模式下。
ADC的转换值能够选择向左对齐或者向右对齐的方式存储在16位转换结果寄存器中。
它拥有12位分辨率以及自校准功能,可以配置成单次和连续转换模式。
选择STM32的内部ADC不仅可以拥有高性能的ADC还能降低开发成本缩短开发周期。
STM32的ADC的基准电压是3.3V,因此我们在采集MQ2的最高为5V的模拟信号时需要进行分压。
3.2.2气体传感器MQ2的模块设计
烟雾传感器选用MQ-2烟雾传感器,因为其对一氧化碳、液化气、丙烷的灵敏度高,对天然气和其他可燃气体的检测也非常理想。
这种传感器能够检测多种可燃气体,所以应用这种传感器的系统的应用范围将会更广,是一款适用于多种场合的低成本传感器。
工作电压:
直流5伏。
A0输出模拟信号,经过两个10K电阻进行分压,然后用STM32内部ADC进行采集,最后转换成浓度。
特点:
(1)具备有效信号指示灯。
(2)具有模拟信号输出和数字信号输出
(3)TTL输出的有效电平为低电平。
(当输出低电平时信号灯亮,可直接接单片机)
(4)模拟量输出0~5V电压,浓度越高电阻越低电压越高。
(5)对液化气,天然气,城市煤气有较好的灵敏度。
(6)具有长期的使用寿命和可靠的稳定性。
(7)快速的响应恢复特性。
MQ-2模块原理图如图3-7所示
图3-7MQ-2原理图图
MQ-2模块的接口电路图如图3-8所示:
图3-8MQ-2烟雾传感器模块接口电路图
3.2.2霍尔传感器的模块设计
霍尔传感器是一种能将磁信号转换为电信号的输入换能器,被广泛应用于日常生活的各个领域,并在高端应用领域发展势头强劲。
霍尔传感元器件是霍尔传感器的核心组件,它的性能在很大程度上决定了霍尔传感器的性能。
微型化、集成化、数字系统化是现代霍尔传感器的研究方向,同时还将朝着新型材料应用、高可靠性、宽温度范围、微功耗及无源化的方向发展。
霍尔传感器技术的不断成熟和应用不断扩大,市场竞争也会更加激烈。
霍尔传感器的市场需求仍处在不断上升的趋势,而环保、农业、医疗卫生等领域将成为其新兴应用市场,这些新兴市场更加激发了霍尔传感器的竞争和发展。
霍尔传感器的需求处在不断上升中。
当今的霍尔传感器主要采用数字技术,它使霍尔传感器具有更好的磁场探测性能和效率。
霍尔传感器被应用在各个行业中。
霍尔传感器的主要应用领域为汽车工业、消费电子工业、国土安全、医疗保健和国防工业等。
与计算机应用程序相结合的消费市场是它最大的市场,其次是汽车市场。
在汽车工业中,磁场传感器具有改善驾驶安全、舒适性、引擎效率和整体功能等作用。
磁场传感器具有很多优势:
它能实现非接触式传感,继而能够实现无磨损的机械和电气探测,例如:
旋转角度的探测、角速度探测、线性位移探测和电流探测等。
当今社会的能源问题十分突出,电机领域最炙手可热的研究方向就是开发高效率,低耗能的电机。
而霍尔传感器工c就可以代替传统电机的电刷,这也是这项技术在小型电机领域取得迅猛发展的原因之一。
不仅如此,这项技术还推动了霍尔传感器的发展和研究。
直流无刷电机还具有很多优势,比如说,效率高,低耗能,小体积,低噪声,且满足高速度应用,功能多,在纯电动汽车和混合动力汽车、电动车等等方面具有很大的应用潜质。
本系统的霍尔传感器模块具有以下特点:
(1)具备有效信号输出指示灯和电源指示灯。
(2)输出数字信号。
(3)输出低电平时,霍尔传感器没有被触发;输出高电平时,霍尔传感器被触发,。
(4)只要有磁场切割磁感线就会输出数字信号。
(5)模块输出数字信号,能够直接接单片机的IO口或者继电器模块,蜂鸣器模块等。
(6)能用于位置检测/电机测速等应用。
霍尔传感器原理图如图3-9所示
图3-9MQ-2霍尔传感器模块电路图
3.2.3电机驱动模块设计
电机驱动模块利用L298N来驱动电动机。
L298N是SGS公司的产品,片内含有4个逻辑驱动电路通道。
它是一种二相和四相电机的专用驱动器,内部包含两个H桥的大功率双全桥式驱动器,输入TTL逻辑电平信号,能够驱动46V、2A以下的直流电动机。
其引脚图如图所示。
图3-10L298N引脚图
L298N能够驱动两个直流电动机,OUTl、OUT2和OUT3、OUT4之间可以各接一个电机。
5、7、10、12脚接输入的逻辑控制信号,从而控制电动机的正、反转,ENA,ENB连接使能端,控制电机的停转。
1脚和15脚可以单独引出连接电流采样电阻器。
L298N原理图如下图所示
图3-10L298N模块原理图
第四章可自锁智能煤气泄漏控制器软件设计
4.1煤气泄漏控制器软件设计思路
系统流程图如图4-1所示
图4-1系统流程图
4.2煤气泄漏控制器软件
/*Includes------------------------------------------------------------------*/
#include"stm32f10x.h"
#include
#include"adc.h"
#include"delay.h"
#include"sys.h"
#include"usart.h"
/**@addtogroupSTM32F10x_StdPeriph_Template
*@{
*/
/*Privatetypedef-----------------------------------------------------------*/
GPIO_InitTypeDefGPIO_InitStructure;
/*Privatedefine------------------------------------------------------------*/
/*Privatemacro-------------------------------------------------------------*/
/*Privatevariables---------------------------------------------------------*/
u16adcx;
u8realvalue_CO,realvalue_Hall;
/*Privatefunctionprototypes-----------------------------------------------*/
voidRCC_Configuration_main(void);
voidGPIO_Configuration(void);
/*Privatefunctions---------------------------------------------------------*/
intmain(void)
{
delay_init(72);
NVIC_Configuration();
uart_init(9600);
RCC_Configuration_main();
GPIO_Configuration();
Adc_Init();
GPIO_ResetBits(GPIOA,GPIO_Pin_3);
GPIO_SetBits(GPIOA,GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7);
GPIO_ResetBits(GPIOA,GPIO_Pin_5);
/*Infiniteloop*/
printf("123");
while
(1)
{
realvalue_CO=GPIO_ReadInputDataBit(GPIOB,GPIO_Pin_10);
realvalue_Hall=GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0);
if(realvalue_CO==0)
{
GPIO_SetBits(GPIOA,GPIO_Pin_3);//蜂鸣器响
GPIO_SetBits(GPIOA,GPIO_Pin_5);//绿灯灭
if(realvalue_Hall==1)
{
GPIO_ResetBits(GPIOA,GPIO_Pin_7);//红灯亮
GPIO_SetBits(GPIOA,GPIO_Pin_6);//黄灯灭
GPIO_ResetBits(GPIOA,GPIO_Pin_4);//电机转
while
(1)
{
realvalue_Hall=GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0);
if(realvalue_Hall==0)
{
GPIO_SetBits(GPIOA,GPIO_Pin_4);//关电机
break;
}
}
//GPIO_SetBits(GPIOA,GPIO_Pin_4);//关电机
}
else
{
GPIO_SetBits(GPIOA,GPIO_Pin_7);//红灯灭
GPIO_ResetBits(GPIOA,GPIO_Pin_6);//黄灯亮
}
}
else
{
GPIO_SetBits(GPIOA,GPIO_Pin_6|GPIO_Pin_7);
GPIO_ResetBits(GPIOA,GPIO_Pin_3|GPIO_Pin_5);
}