基于51单片机的MQ-5天然气监测报警系统设计

这篇具有很好参考价值的文章主要介绍了基于51单片机的MQ-5天然气监测报警系统设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基于51单片机的天然气监测报警系统设计

视频

基于51单片机的MQ-5天然气监测报警系统设计

1 开发环境

仿真图:proteus8.9以上

程序代码:KEIL4/KEIL5

原理图:AD

设计编号:A0008

2 功能说明介绍

结合实际情况,基于51单片机设计一个天然气监测报警统设计。该系统应满足的功能要求为:

实物功能:

本设计由51单片机+MQ-5传感器模块电路+3个LED指示灯电路+蜂鸣器报警电路+PCF8591AD模块+风扇控制电路+继电器电路+电源电路组成。

1、MQ-5实时检测煤气浓度,浓度分为低中高3档,并分别用绿灯、黄灯和红灯指示,浓度到达相应的档位,则相应的灯亮,指示灯指示安全状态。

2、当浓度达到高档的时候,蜂鸣器报警,风扇启动,疏散煤气,继电器工作驱动负载断开煤气阀;

3、当浓度达到中档时,继电器工作,驱动负载断开煤气阀。

仿真功能:

本设计由51单片机+MQ-5传感器模块电路+LED指示灯电路+蜂鸣器报警电路+ADC0832模块+风扇控制电路+继电器电路+电源电路组成。

1、MQ-5实时检测煤气浓度,浓度分为2档,并分别用绿灯红灯指示,浓度到达相应的档位,则相应的灯亮,指示灯指示安全状态。

2、当浓度达到高档的时候,蜂鸣器报警,风扇启动,疏散煤气,继电器工作驱动负载断开煤气阀;红灯闪烁。

3、当浓度达到低档时,风扇关闭,煤气阀正常工作,绿灯闪烁。

3 仿真图

AT89C51可以替换为AT89C52,实物可以换做STC89C51,STC89C52

AT89C51是美国ATMEL公司生产的低电压,高性能CMOS16位单片机,片内含4k bytes的可反复擦写的只读程序存储器和128 bytes的随机存取数据存储器,期间采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用16位中央处理器和Flash存储单元,功能强大的AT89C51单片机可灵活应用于各种控制领域。

AT89C51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个1 6位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

本系统中央控制器采用的AT89C51单片机,复位电路采用上电复位电路。外接的晶振为12MHz晶振。

mq-5 气体标定,51单片机设计,51单片机,单片机,嵌入式硬件

4 程序

工程文件使用Keil4/keil5打开。编译产生hex加载到对应的单片机中。实物代码和仿真代码略有不同。分别的工程文件。

mq-5 气体标定,51单片机设计,51单片机,单片机,嵌入式硬件

代码

#include <reg52.h> 
#include <intrins.h>
#include <stdio.h>
#include "i2c.h"
#include "delay.h"

sbit fengshan = P1^0;  //接口定义
sbit buzzer = P1^1;
sbit relay = P1^2;  
sbit LED_GRE = P1^3;  
sbit LED_YEL = P1^4;
sbit LED_RED = P1^5;

unsigned long time_20ms=0;	//定时变量
unsigned char dis0[16];		//数组暂存
unsigned char midVolt ;		//ad采集电压
unsigned char i; 

void Init_Timer0(void);//函数声明
void UART_Init(void);
void uartSendByte(unsigned char dat);
void uartSendStr(unsigned char *s,unsigned char length);
 
void main (void)
{

	Init_Timer0();        //定时器0初始化
	
	UART_Init();
	DelayMs(120);
	uartSendStr("ready ok!",9);
	while(1)         //主循环
	{
			midVolt=ReadADC(0)*99/255;				//读取AD检测到的转化为数值
			sprintf(dis0,"NongDu:%2d\n",(unsigned int)midVolt);	 //发送
			uartSendStr(dis0,10);
			if(midVolt<30)		
			{
				fengshan = 1;//关 风扇
				buzzer = 1;//关 蜂鸣器
				relay = 1;//关 继电器
				LED_GRE = 0;//开 绿灯
				LED_YEL = 1;//关 黄灯
				LED_RED = 1;//关 红灯			
			}
			else if(midVolt<50)		
			{
				fengshan = 1;//关 风扇
				buzzer = 1;//关 蜂鸣器
				relay = 0;//开 继电器
				LED_GRE = 1;//关 绿灯
				LED_YEL = 0;//开 黄灯
				LED_RED = 1;//关 红灯			
			}
			else
			{
				fengshan = 0;//开 风扇
				buzzer = 0;//开 蜂鸣器
				relay = 0;//开 继电器
				LED_GRE = 1;//关 绿灯
				LED_YEL = 1;//关 黄灯
				LED_RED = 0;//开 红灯			
			}
			for(i=0;i<5;i++) DelayMs(100);
	}
}

void Init_Timer0(void)
{
 TMOD |= 0x01;	  //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响		     
 TH0=(65536-20000)/256;		  //重新赋值 20ms
 TL0=(65536-20000)%256;
 EA=1;            //总中断打开
 ET0=1;           //定时器中断打开
 TR0=1;           //定时器开关打开
}

void Timer0_isr(void) interrupt 1 
{
 TH0=(65536-20000)/256;		  //重新赋值 20ms
 TL0=(65536-20000)%256;

 time_20ms++;
}
void UART_Init(void)
{
    SCON  = 0x50;		        // SCON: 模式 1, 8-bit UART, 使能接收  
    TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit 重装
    TH1   = 0xFD;               // TH1:  重装值 9600 波特率 晶振 11.0592MHz  
    TR1   = 1;                  // TR1:  timer 1 打开                         
    EA    = 1;                  //打开总中断
    ES    = 1;                  //打开串口中断
}

void uartSendByte(unsigned char dat)
{
	unsigned char time_out;
	time_out=0x00;
	SBUF = dat;			  //将数据放入SBUF中
	while((!TI)&&(time_out<100))  //检测是否发送出去
	{time_out++;DelayUs2x(10);}	//未发送出去 进行短暂延时
	TI = 0;						//清除ti标志
}

void uartSendStr(unsigned char *s,unsigned char length)
{
	unsigned char NUM;
	NUM=0x00;
	while(NUM<length)	//发送长度对比
	{
		uartSendByte(*s);  //放松单字节数据
		s++;		  //指针++
		NUM++;		  //下一个++
  	 }
}

void UART_SER (void) interrupt 4 //串行中断服务程序
{
	unsigned char u_buf;
    if(RI)                        //判断是接收中断产生
    {
	  RI=0;                      //标志位清零
	  u_buf = SBUF;
	}
   if(TI)  //如果是发送标志位,清零
	TI=0;
}

流程图如下图所示。

mq-5 气体标定,51单片机设计,51单片机,单片机,嵌入式硬件

5 原理图

原理图由AD绘制,原理图和仿真图有出入,原理图需要电源,电源开关模块。此设计资料详细,硬件手册资料图片详细,不对硬件调试负责,做实物需要一定的基本功。主控芯片可以换为STC89C51/STC89C52

mq-5 气体标定,51单片机设计,51单片机,单片机,嵌入式硬件

本设计由STC89C52单片机+天然气传感器模块电路+3个LED指示灯电路+蜂鸣器报警电路+风扇控制电路+继电器控制电路+电源电路组成。

1、MQ-5实时检测煤气浓度,浓度分为低中高3档,并分别用绿灯、黄灯和红灯指示,浓度到达相应的档位,则相应的灯亮,指示灯指示安全状态。

2、当浓度达到高档的时候,蜂鸣器报警,风扇启动,疏散煤气。

3、浓度达到中档的时候继电器断开。

mq-5 气体标定,51单片机设计,51单片机,单片机,嵌入式硬件

6 视频讲解

代码讲解+仿真讲解+仿真演示+原理图讲解

7 设计报告

人的生存离不开空气,人的一生大约有80%的时间是在室内度过的,室内环境质量的好坏影响着人们的身心健康。室内的有害气体来源有来自装修不当造成的甲醛、氨气、氡气、苯、放射性物质的释放,而这些气体在装修时加以注意,完全可以减少其排放量,从而不至于影响人的健康状况。室内存在的有害气体的另一主要来源为可燃性气体的泄漏,主要可分为天然气泄漏、液化气泄漏和煤气泄漏。

煤气泄漏的主要成分是一氧化碳与氢气,一氧化碳中毒原因是一氧化碳进入人体后会和血液中的血红蛋白结合,从而出现缺氧。常见于家庭居室内通风差得情况下,煤炉产生的煤气或液化气管道泄漏气中的一氧化碳吸入会导致一氧化碳中毒。 液化气泄漏危害也不易小视,液化石油气是石油产品之一。是由炼厂气或天然气(包括油田伴生气)加压、降温、液化得到的一种无色、挥发性气体。由炼厂气所得的液化石油气,主要成分为丙烷、丙烯、丁烷、丁烯,同时含有少量戊烷、戊烯和微量硫化合物杂质。由天然气所得的液化气的成分基本不含烯烃。液化石油气主要用作石油化工原料,用于烃类裂解制乙烯或蒸气转化制合成气,可作为工业、民用、内燃机燃料。其主要质量控制指标为蒸发残余物和硫含量等,有时也控制烯烃含量。液化石油气是一种易燃物质,空气中含量达到一定浓度范围时,遇明火即爆炸。

天然气主要成分是烷烃,其中甲烷含量在95%以上。人所赖以生存的空气中有大约20%的氧气,如果人的生活空间是封闭空间,氧气稀薄,人会因氧气不足,导致窒息、昏迷,有心脑血管疾病的人将会危及生命。室内天然气泄漏会使室内空气中的氧气相对稀薄,由于天然气是无色无味,人很难察觉到,尤其当人处于睡眠状态时,天然气的泄漏就更加危险,甚至会使人窒息。天然气的另一危险是当空气中的天然气含量达到一定含量时,遇到明火就会产生爆炸,危及人的生命。

人们面对可燃性气体泄漏而危及生命健康情况,有没有一个彻底的解决办法?据有关专家介绍,可燃气体泄漏报警器是对付燃气泄漏的重要预防手段之一。为防止中毒事件发生,现提出利用单片机系统进行有效的预防措施。所以怎样预防燃气中毒与爆炸已成为人们的迫切需要。基于此现实,本设计宗旨是为家庭用户设计一种能够对天然气,液化气和、煤气泄漏的装置,从于减少不必要的事故,进于保证人民的生命健康,减少不必要的损失。

7.1 设计目的

(1)巩固和加深对单片机原理和接口技术知识的理解;

(2)培养根据课题需要选学参考书籍、查阅手册和文献资料的能力;

(3)学会方案论证的比较方法,拓宽知识,初步掌握工程设计的基本方法;

(4)掌握常用仪器、仪表的正确使用方法,学会软、硬件的设计和调试方法;

(5) 能按课程设计的要求编写课程设计报告,能正确反映设计和实验成果,能用计算机绘制电路图、仿真图和流程图。

7.2 概述

随着天然气的大量使用,每一座居民大楼都被天然气所“笼罩”。天然气的普及给公共生活带来了方便,减少了城市的污染,提高了生活质量和效率,但是同时,天然气也是潜在的“危险品”,一旦发生大面积泄漏,处置不及时就可能引发大爆炸,给居民的生命财产安全带来巨大的威胁。面对燃气泄漏而造成的种种事故威胁,我们需要一个解决办法。使用天然气报警器是对付燃气无形杀手的重要手段之一。

本论文以半导体气敏传感器和单片机技术为核心设计的气体报警器可实现声光报警功能,是一种结构简单、性能稳定、使用方便、价格低廉、智能化的气体报警器,具有一定的实用价值。

其中选用MQ-5传感器实现对气体的检测,具有灵敏度高、响应快、抗干扰能力强等优点,而且价格低廉,使用寿命长。传感器采集到数据,经过A/D转换后,再由单片机处理,并对处理后的数据进行分析,是否大于或等于某个预设值(也就是报警限),如果大于则会自动启动报警电路发出报警声音和风扇,反之则为正常状态,

7.3 国内外研究现状

可燃性气体泄漏报警器,多用于大型公寓、饮食餐店、医院、学校、工厂的各种气体报警器和系统,有单体分离型报警器、外部报警系统、集中监视系统、遮断连动系统、防止中毒报警防护系统等。可燃性气体泄漏报警器可发出声光报警,或伴有数字显示,或联动外部设备。有的可燃性气体泄漏报警器可自动开启排风扇,把燃气排出室外;有的可燃性气体泄漏报警器在报警时可自动关闭燃气阀门,以防燃气继续泄漏。当前应用最广泛的可燃性气体泄漏报警器与气敏元件传感器,已普及应用于气体泄漏检测和监控,仅用于安全保护家用燃气泄漏报警器为例,不少发达国家已经明确规定家庭、公寓等要求安装相应的报警器。国外可燃性气体泄漏报警器发展很快,是由于人们安全意识增强,对环境安全性和生活舒适性要求提高;另一方面是由于燃气泄漏报警器市场增长受到政府安全法规的推动。因此,国外燃气报警器技术得到了较快发展,据有关统计猜测,美国在1996年—2002年就煤气报警器的年均增长率为27%~30%。在这些方面,国内应该增强安全意识增强。

可燃性气体泄漏报警器的发展趋势集中表现为,一是提高灵敏度和工作性能,降低功耗和成本,缩小尺寸,简化电路,与应用整机相结合,这也是燃气泄漏报警器一直追求的目标;二是增强可靠性,实现元件和应用电路集成化,多功能化,发展MEMS技术,发展现场适用的变送器和智能型可燃性气体泄漏气报警器。如美国在燃气泄漏报警器中嵌入微处理器,使燃气泄漏报警器具有控制校准和监视故障状况功能,实现了智能化、涉多功能化。

mq-5 气体标定,51单片机设计,51单片机,单片机,嵌入式硬件

8 资料清单下载链接

见文章开头视频

mq-5 气体标定,51单片机设计,51单片机,单片机,嵌入式硬件文章来源地址https://www.toymoban.com/news/detail-795704.html

到了这里,关于基于51单片机的MQ-5天然气监测报警系统设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【开源】JAVA+Vue.js实现天然气工程运维系统

    基于Vue+SpringBoot+MySQL的天然气工程运维系统,包含工程项目模块、材料档案模块、材料领用单模块,还包含系统自带的用户管理、部门管理、角色管理、菜单管理、日志管理、数据字典管理、文件管理、图表展示等基础模块,天然气工程运维系统基于角色的访问控制,给工程

    2024年02月21日
    浏览(49)
  • 问道管理:燃气板块拉升走高,胜通能源涨停,欧洲天然气价飙升

    燃气板块10日盘中发力走高,到发稿,美能动力、胜通动力、水发燃气涨停,首华燃气涨约8%,山东墨龙、贵州燃气涨逾7%,贝肯动力涨逾5%。   消息面上,因液化天然气供给危险添加,美国天然气期货日内大涨7.36%,欧洲天然气期货价格一度上涨40%,创下2022年3月以来最大涨幅

    2024年02月13日
    浏览(41)
  • Java实现天然气工程运维系统 JAVA+Vue+SpringBoot+MySQL

    基于Vue+SpringBoot+MySQL的天然气工程运维系统,包含工程项目模块、材料档案模块、材料领用单模块,还包含系统自带的用户管理、部门管理、角色管理、菜单管理、日志管理、数据字典管理、文件管理、图表展示等基础模块,天然气工程运维系统基于角色的访问控制,给工程

    2024年01月18日
    浏览(41)
  • 基于51单片机 + MQ-3酒精传感器 + ADC0832模数转换器 + LCD1602液晶显示器的酒精检测系统

    废话不多说,直接上东西。本文是基于51单片机的酒精检测系统设计,用的元器件有:51单片机、MQ-3酒精传感器、ADC0832模数转换器、 LCD1602液晶显示器、喇叭等元器件。 1、MQ-3 酒精检测传感器,用于检测酒精浓度。当然采集到的数据是模拟的还需要通过ADC0832模数转换器将其转

    2024年02月12日
    浏览(61)
  • 51单片机 DHT11温湿度传感器 MQ2传感器

    目录 前言 程序思路 DHT11 一、DHT11基础储备  二、接口说明 三、协议及数据格式 ​编辑 四、DHT11代码 MQ-2烟雾传感器 一、MQ-2烟雾传感器介绍 二、工作原理 三、时序配置 四、指令配置 ​编辑 五、代码 LCD1602 一、LCD1602介绍 二、LCD1602指令介绍 ​编辑 三、LCD1602代码  HC-05 一

    2024年02月04日
    浏览(56)
  • 51单片机项目(9)——基于51单片机的电子琴设计

    简易电子琴设计设计内容: 1.用矩阵键盘代表琴键,至少能弹出8个音符,分别是:音符1.23.4.,5,6,  2.键按下的时间长短表征节拍的长短,用蜂鸣器发出声音 3.数码管显示出当前音符 4.音量可调 (代码及其工程文件放在最后) 电路图如下: 51单片机电子琴是一种基于51单片机(

    2024年02月09日
    浏览(49)
  • 51单片机项目(7)——基于51单片机的温湿度测量仿真

    本次做的设计,是利用DHT11传感器,测量环境的温度以及湿度,同时具备温度报警的功能:利用两个按键,设置温度阈值的加和减,当所测温度大于温度阈值的时候,蜂鸣器就会响起,进行报警提示。 同时系统还有一个LCD1602屏幕,用于显示实时的温度湿度,还可以显示温度阈

    2024年02月10日
    浏览(51)
  • 基于51单片机的单片机倒车雷达报警系统

      前言 至今世界汽车工业通过了近122年的进展,今世汽车已经超级成熟和普遍了。汽车已经渗透于国防建设、国民经济和人类生活的各个领域当中,成为人类生存必不可少的、最要紧的交通工具,尽管每辆车都有后视镜,但不可幸免地都存在一个后视盲区,倒车雷达那么能够

    2024年02月04日
    浏览(51)
  • 51单片机课程设计——基于单片机的AD模数转换设计

    一、功能简介 1.A/D 是模拟量到数字量的转换,依靠的是模数转换器(AnalogtoDigitalConverter),简称ADC。D/A是数字量到模拟量的转换,依靠的是数模转换器(DigitaltoAnalogConverter),简称DAC。它们的道理是完全一样的,只是转换方向不同,因此我们讲解过程主要以A/D为例来讲解。

    2024年02月04日
    浏览(54)
  • 单片机原理与应用课程设计-基于51单片机的时钟日历

    摘 要 本课程设计是基于51单片机的日历时钟设计。作为嵌入式系统中常用的控制器,单片机在各种电子设备和系统中广泛应用。日历时钟作为一个常见的功能模块,在现代生活中具有重要意义。因此,设计一个基于51单片机的日历时钟,不仅有助于我们掌握单片机编程技术和

    2024年02月20日
    浏览(72)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包