37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉。

【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)

实验三十七:MQ-3酒精乙醇传感器模块

MQ-3气体传感器

所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。当传感器所处环境中存在酒精蒸汽时,传感器的电导率随空气中酒精气体浓度的增加而增大。使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。 MQ-3气体传感器对酒精的灵敏度高,可以抵抗汽油、烟雾、水蒸气的干扰。这种传感器可检测多种浓度酒精气氛,是一款适合多种应用的特种传感器。

工作原理

MQ-3属于表面电阻控制型酒精气体浓度气敏传感器,其敏感材料是活性很高的金属氧化物半导体,最常用的如SnO2(二氧化锡)。当N型半导体的表面,在高温下遇到离解能力较小(易失去电子)的还原性气体时,气体分子中的电子将向MQ3气敏电阻表面转移,使气敏电阻中的自由电子浓度增加,电阻率降低,电阻减小。半导体式传感器是利用一些金属氧化物半导体材料,在一定温度下,电导率随着环境气体成份的变化而变化的原理制造的,MQ-3酒精传感器就是其中一种,它是利用二氧化锡在高温下遇到酒精气体时,电阻会急剧减小的原理制造的。

MQ-3可应用于家庭、工厂、商业场所的气体泄漏监测装置,防火,安全探测系统。气体泄漏报警器.气体检漏仪。高灵敏度、快速响应恢复、优异的稳定性、长寿命、驱动电路简单、电信号输出强。

模块优点

可有效用于酒精、乙醇等气体的检测。寿命长、成本低廉,适用于民用气体的检测,高质量的半导体传感器也可满足工业检测的需求。

模块缺点

需要预热,稳定性较差,受环境温度、湿度等因素影响较大;每一种传感器的选择性都不是唯一的,输出参数也不能确定,不宜应用于计量准确要求的场所。

MQ-3酒精乙醇传感器模块(半导体式表面电阻控制型)

规格参数
1. 探测范围:10~1000ppm酒精
2. 特征气体:125ppm酒精
3. 加热电压:5±0.2V(AC·DC)
4. 回路电压:≤24V    DC
5. 负载电阻:可调
6. 清洁空气中电压:≤1.5V 
7. 灵敏度:Rin air/Rin typical gas≥5
8. 响应时间:≤10S
9. 恢复时间:≤30S
10.元件功耗:≤0.9W
11.主要芯片:LM393、MQ-3气体传感器
12.使用寿命:5年

模块电原理图

电气性能

主要芯片:LM393、MQ-3气体传感器

输入电压:DC5V 功耗(电流):150mA

DO输出:TTL数字量0和1(0.1和5V)

AO输出:0.1-0.3V(相对无污染),最高浓度电压4V左右

特别提醒:传感器通电后,需要预热20S左右,测量的数据才稳定,传感器发热属于正常现象,因为内部有电热丝,如果烫手就不正常了。

模块特色

1、采用优质双面板设计,具有电源指示和TTL信号输出指示

2、具有DO开关信号(TTL)输出和AO模拟信号输出

3、TTL输出有效信号为低电平。(当输出低电平时信号灯亮,可直接接单片机或继电器模块)

4、模拟量输出电压,浓度越高电压越高

5、对酒精检测有较好的灵敏度

6、有四个螺丝孔便于定位

7、产品外形尺寸:32(L)*20(W)*22(H)

8、具有长期的使用寿命和可靠的稳定性

9、快速的响应恢复特性

10、用于机动车驾驶人员及其他严禁酒后作业人员的现场检测,也用于其他场所乙醇蒸汽的检测,探测酒精范围:探测范围 10~ 1000ppm。

模块接口定义(以实物为准)

1. AO:  传感器模拟量输出

2. DO:  数字量输出(比较器输出)

3. GND:  接地

4.  VCC:  电源输入,范围: 3V-24V

非常简单的一个测试程序,读读串口数据,看看实验波形

/*
【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
实验三十七:MQ-3酒精乙醇传感器模块(半导体式表面电阻控制型)
*/ void setup()
{
Serial.begin(9600);
pinMode(A0, INPUT);
} void loop()
{
Serial.println(analogRead(A0));
delay(200);
}

  预热之后的串口数据,大概在250前后

而后,串口输出的数字一直下降,大概十分钟前后,稳定在75左右

实验用的是居家75%的消毒酒精

这模块确实对酒精很敏感,最高升到800多

拧紧酒精瓶盖后,数据有个缓慢的下降过程

把酒精撒到地上一点,也能检测到,数据幅度小很多

一个检测酒精浓度的可视化报警程序,目前稳态数据在68

检测到超标酒精浓度(大于400),报警灯亮

/*
【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
实验三十七:MQ-3酒精乙醇传感器模块(半导体式表面电阻控制型)之二
*/ int Buzzer = 8; // 定义数字口8 为Buzzer (蜂鸣器) void setup()
{
pinMode(Buzzer, OUTPUT); // 定义数字口8 为输出模式
Serial.begin(9600);
} void loop()
{
int val;
val = analogRead(A0);
Serial.println(val, DEC);
while (val < 400)
{
digitalWrite(Buzzer, LOW); //蜂鸣器不响
val = analogRead(A0);
Serial.println(val, DEC);
}
digitalWrite(Buzzer, HIGH); // 蜂鸣器响
}

  

/*
【Arduino】108种传感器模块系列实验(资料+代码+图形+仿真)
实验三十七:MQ-3酒精乙醇传感器模块(半导体式表面电阻控制型)之三
*/ const int gasSensor = 0; void setup() {
Serial.begin(9600); // sets the serial port to 9600
} void loop() {
float voltage;
voltage = getVoltage(gasSensor); Serial.println(voltage);
delay(1000);
} float getVoltage(int pin) {
return (analogRead(pin) * 0.004882814);
// This equation converts the 0 to 1023 value that analogRead()
// returns, into a 0.0 to 5.0 value that is the true voltage
// being read at that pin.
}

  

「雕爷学编程」Arduino动手做(37)——MQ-3酒精传感器的更多相关文章

  1. 「雕爷学编程」Arduino动手做(9)——火焰传感器模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  2. 「雕爷学编程」Arduino动手做(10)——敲击传感器模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  3. 「雕爷学编程」Arduino动手做(8)——湿度传感器模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  4. 「雕爷学编程」Arduino动手做(32)——雨滴传感器模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

  5. 「雕爷学编程」Arduino动手做(15)——手指侦测心跳模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  6. 「雕爷学编程」Arduino动手做(14)——倾斜角度模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  7. 「雕爷学编程」Arduino动手做(13)——触摸开关模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  8. 「雕爷学编程」Arduino动手做(12)——霍尔磁力模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  9. 「雕爷学编程」Arduino动手做(11)——金属触摸模块

    37款传感器和模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器与模块,依照实践出真知(动手试试)的理念,以学习和交流为目的,这里准备 ...

  10. 「雕爷学编程」Arduino动手做(7)——旋转电位器模块

    37款传感器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器,依照实践(动手试试)出真知的理念,以学习和交流为目的,这里准备逐一做做实验 ...

随机推荐

  1. ES6中对函数的扩展

    ES6一路扩展,字符串.数组.数值.对象无一“幸免”,ES6说要雨露均沾,函数也不能落下,今天,就来讲解ES6对函数的扩展. 参数的默认值 在开发中,给函数的参数指定默认值,是很普遍很常见的一个需求, ...

  2. C语言字符数组超细讲解

    看到标题,有不少朋友会想:字符数组不也是数组吗?为什么要单独拿出来讲哩?莫非它是朵奇葩? 哈哈,确实,一起来认识一下这朵数组界的奇葩吧! 一.字符数组的定义.引用.初始化 大家好!我是字符数组,看我的 ...

  3. Docker help详细帮助

    常用的 docker 命令 docker # docker 命令帮助 Commands: attach Attach to a running container # 当前 shell 下 attac ...

  4. Copy ArrayList的四种方式

    目录 简介 使用构造函数 使用addAll方法 使用Collections.copy 使用stream 总结 Copy ArrayList的四种方式 简介 ArrayList是我们经常会用到的集合类, ...

  5. Libra教程之:来了,你最爱的Move语言

    文章目录 Move语言 Move的核心概念 Move交易脚本 Move modules Move resources 写一个Move程序 编写交易脚本 编写自己的Modules Move语言 Move ...

  6. XmlSerializer .NET 序列化、反序列化

    序列化对象   要序列化对象,首先创建要序列化的对象并设置其公共属性和字段.为此,您必须确定要将XML流存储的传输格式,作为流或文件. 例如,如果XML流必须以永久形式保存,则创建一个FileStre ...

  7. python 类C数组的两种形式:list -->内容可变, tuple --->内容不可变

    python 中的列表相当与 C 中的数组,列表:list 初始化使用[ ], 元组:tuple 初始化使用(): 一.列表list 1 #!/usr/bin/python  2   3 #list初 ...

  8. 对包含HttpContext.Current.Cache的代码进行单元测试

    假设我们如下代码调用了HttpContext.Current.Cache 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 public class CacheManager { ...

  9. C语言编程入门题目--No.13

    题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数 本身.例如:153是一个"水仙花数",因为153= ...

  10. CF思维联系--CodeForces - 218C E - Ice Skating (并查集)

    题目地址:24道CF的DIv2 CD题有兴趣可以做一下. ACM思维题训练集合 Bajtek is learning to skate on ice. He's a beginner, so his ...