MQ-2烟雾传感器的原理及使用教程
一、MQ-2烟雾传感器简介
MQ-2常用于家庭和工厂的气体泄漏监测装置,适宜于液化气、苯、烷、酒精、氢气、烟雾等的探测。故因此,MQ-2可以准确来说是一个多种气体探测器。
MQ-2的探测范围极其的广泛。它的优点:灵敏度高、响应快、稳定性好、寿命长、驱动电路简单。
二、MQ-2的工作原理
MQ-2型烟雾传感器属于二氧化锡半导体气敏材料,属于表面离子式N型半导体。处于200~300摄氏度时,二氧化锡吸附空气中的氧,形成氧的负离子吸附,使半导体中的电子密度减少,从而使其电阻值增加。当与烟雾接触时,如果晶粒间界处的势垒收到烟雾的调至而变化,就会引起表面导电率的变化。利用这一点就可以获得这种烟雾存在的信息,烟雾的浓度越大,导电率越大,输出电阻越低,则输出的模拟信号就越大。
三、MQ-2的特性
1、MQ-2型传感器对天然气、液化石油气等烟雾有很高的灵敏度,尤其对烷类烟雾更为敏感,具有良好的抗干扰性,可准确排除有刺激性非可燃性烟雾的干扰信息。
2、MQ-2型传感器具有良好的重复性和长期的稳定性。初始稳定,响应时间短,长时间工作性能好。需要注意的是:在使用之前必须加热一段时间,否则其输出的电阻和电压不准确。
3、其检测可燃气体与烟雾的范围是100~10000ppm
(ppm为体积浓度。 1ppm=1立方厘米/1立方米)
4.电路设计电压范围宽,24V以下均可,加热电压5±0.2V
注意:。如果加热电压过高,会导致输入电流过大,将内部的信号线熔断,从而器件报废。
四、MQ-2应用电路
MQ-2常用的电路有两种,一种使用采用比较器电路监控,另一种为ADC电路检测。
1.比较器电路
MQ-2的4脚输出随烟雾浓度变化的直流信号,被加到比较器U1A的2脚,Rp构成比较器的门槛电压。当烟雾浓度较高输出电压高于门槛电压时,比较器输出低电平(0v),此时LED亮报警;当浓度降低传感器的输出电压低于门槛电压时,比较器翻转输出高电平(Vcc),LED熄灭。调节Rp,可以调节比较器的门槛电压,从而调节报警输出的灵敏度。
R1串入传感器的加热回路,可以保护加热丝免受冷上电时的冲击。
2.ADC转换电路
MQ-2传感器另外一个采集方法为AD信号采集,即将电压信号转化为数字信号,进而转化为精确的烟雾浓度值。
MQ-2传感器的4脚、6脚的电压为输出信号,Rs为传感器的本体电阻。其中若气体浓度上升,必导致Rs下降。而Rs的下降则会导致MQ-2的4脚、6脚对地输出的电压增大。所以气体浓度增大,其输出的电压也会增大,最终通过ADC0832转换后数值增大。
五.控制程序
1.因为比较器电路处理的检测信号只有高和低两种状态;当浓度低于阈值时,信号为高电平;浓度高于阈值时,信号为低电平。所以单片机只需要将引脚配置为输入模式,监控该信号的高低电平即可。
2.AD信号采集程序
实现对MQ-2烟雾浓度的采集,只需实现ADC0832采集函数便可完成信号的采集。但通过ADC0832采集到的信号只为原始信号,要转换为实际的烟雾浓度,还需要根据MQ-2的特性进行校正和公式转换,最终得到实际的浓度值。
/****************************************************************************
函数功能:AD转换子程序
入口参数:channel
出口参数:dat
****************************************************************************/
unsigned char adc0832(unsigned char channel )
{unsigned char i,test,adval,dat;adval = 0x00;test = 0x00;Clk = 0; //初始化DATI = 1;_nop_();CS = 0;_nop_();Clk = 1;_nop_();if (channel == 0x00 ) //通道选择{Clk = 0;DATI = 1; //通道0的第一位_nop_();Clk = 1;_nop_();Clk = 0;DATI = 0; //通道0的第二位_nop_();Clk = 1;_nop_();} else{Clk = 0;DATI = 1; //通道1的第一位_nop_();Clk = 1;_nop_();Clk = 0;DATI = 1; //通道1的第二位_nop_();Clk = 1;_nop_();}Clk = 0;DATI = 1;for( i = 0;i < 8;i++ ) //读取前8位的值{_nop_();adval <<= 1;Clk = 1;_nop_();Clk = 0;if (DATO)adval |= 0x01;elseadval |= 0x00;}for (i = 0; i < 8; i++) //读取后8位的值{test >>= 1;if (DATO)test |= 0x80;else test |= 0x00;_nop_();Clk = 1;_nop_();Clk = 0;}if (adval == test) //比较前8位与后8位的值,如果不相同舍去。若一直出现显示为零,请将该行去掉dat = test;nop_();CS = 1; //释放ADC0832DATO = 1;Clk = 1;return dat;
}
/****************************************************************************
函数功能:获取烟雾浓度
入口参数:无
出口参数:dat
****************************************************************************/
unsigned char GetYanWuValue(void)
{unsigned int sum=0;unsigned char m,value=0;for(m=0;m<20;m++) //读50次AD值sum = adc0832(0)+sum; //读到的AD值,将读到的数据累加到sumvalue=(unsigned char)(sum/20); //跳出上面的for循环后,将累加的总数除以50得到平均值valueif(value > ADC_Zero) value = value - ADC_Zero; //首先减去零点漂移elsevalue = 0;return value;}
如需MQ-2相关资料, 请关注公众号,首页回复“MQ-2”获取资料
MQ-2烟雾传感器的原理及使用教程相关推荐
- 《数据库技术原理与应用教程》一3-5信息世界与逻辑模型
本节书摘来华章计算机<数据库技术原理与应用教程>一书中的第3章 ,第3.5节,徐洁磐 操凤萍 编著更多章节内容可以访问云栖社区"华章计算机"公众号查看. 3-5信息世界 ...
- 网络工程原理与实践教程实验安排
<网络工程原理与实践教程(第3版)>胜在超凡实验指导书和教材合为一体,"易学,易教,内容新" 第10章 实 验.... 235 实验1 水晶头的制作... 23 ...
- 《数据库技术原理与应用教程(第2版)》——习 题 1
本节书摘来自华章计算机<数据库技术原理与应用教程(第2版)>一书中的第1章,习 题 1,作者 徐洁磐 操凤萍,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 习 ...
- 《数据库技术原理与应用教程第2版》——3.6计算机世界与物理模型
本节书摘来自华章出版社<数据库技术原理与应用教程第2版>一书中的第3章,第3.6节,作者 徐洁磐 操凤萍 ,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 3. ...
- 《数据库技术原理与应用教程(第2版)》——第3章 数据管理中的数据模型 3.1 数据模型的基本概念...
本节书摘来自华章计算机<数据库技术原理与应用教程(第2版)>一书中的第3章,第3.1节,作者 徐洁磐 操凤萍,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 第 ...
- 我的世界红石计算机教程1,《我的世界》红石电脑制作原理及使用教程
原标题:<我的世界>红石电脑制作原理及使用教程 <我的世界>中的红石可以说是非常好玩的要素,很多玩家就做一些红石小装置就满足了,那么下面小编为大家带来的这个红石设施,绝对让各位 ...
- c语言链表单值化,《编译原理及实践教程》第3章词法分析.ppt
<编译原理及实践教程>第3章词法分析 方法如下: 正规式R?有穷自动机NFA M ? s,t是正规式,相应NFA为N(s),N(t),则正规式R=s|t,构造NFA(R) 为: ? 对应正 ...
- ToLua原理和使用教程
ToLua原理和使用教程 Tolua是用来实现C++程序中的类.变量.函数等绑定到lua程序中.绑定后lua代码可以直接调用C++程序中的类.变量.函数等等. Tolua原理 Tolua做了哪些事 要 ...
- 《数据库系统原理及应用教程》(苗雪兰等,第五版) 实验五:数据库的组合查询和统计查询实验
阅读前注意: 1. 本实验报告配套<数据库系统原理及应用教程>(苗雪兰等,第五版) 实验五:数据库的组合查询和统计查询实验(书上10.4节以及第六章部分内容),书本中采用Microsoft ...
最新文章
- 反编译软件dnSpy中修改baml文件
- 大工18秋c c 语言程序设计,大工19秋《可编程控制器》在线作业3【满分答案】
- Android-PullLayout
- Javascript中for循环
- Wyn Enterprise 核心功能:系统集成
- 机器学习笔试面试超详细总结(四)
- 【TensorFlow】——合并与分割(stack、concat、split)
- 数组排序并找出元素索引--Where do I belong-FCC
- ubuntu设置静态ip不能联网
- 故障-bash-4.1$ 的解决
- 数据量大的sql怎么做优化_南浔区360优化怎么做,百度关键词优化_万推霸屏
- GBin1教程:使用jQuery插件jquery.validationEngine实现表单验证功能
- mysql允许虚拟机访问权限_设置虚拟机安装的mysql访问权限及删除mysql
- 安装虚拟机之下载windows镜像
- php spider视频教程,phpspider的简单使用
- 史上最拉跨的导线平差程序 2.0(by C#)
- Google开源C++单元测试框架gTest 5:死亡测试
- MapReduce Inverted Index
- web前端移动端课程之canvas教程系列
- 经典 bgp 路由黑洞
热门文章
- 麦迪日记·There is always something to be said sooner or later.
- 請叫我程序小廚娘 小吉狂想曲
- 软件设计师c语言做题技巧,干货!软件设计师备考攻略
- Linux学习之安装OpenCV3.4.1
- 【激光雷达点云障碍物检测】(一)滤波部分
- R语言dplyr包:高效数据处理函数arrange、sample_n、n_distinct、select、compute等
- collate utf8_bin是什么意思
- 思科利用三层交换机实现 VLAN 间路由
- HTML课程表制作(利用html、css、table表格知识)
- java半角英数check_如何进行全半角英数字记号カナ及汉字的チェック?