MQ Sensors CN

아두위키 : Arduwiki

概要

MQ传感器是一种廉价的电子传感器,可检测多种气体浓度。每种传感器都被设计用于检测特定气体,并可轻松与Arduino等微控制器结合使用。广泛应用于空气质量监测、气体泄漏检测、工业安全等多个领域。

主要型号

MQ系列包含多种型号,每种型号可检测不同类型的气体。

大多数传感器需要约24小时预热。考虑到其测量范围和精度,更适合用作“是否存在某种气体”的检测,而非用于需要精确数值的安全装置。

背面配有可调电阻,可调整灵敏度。

传感器型号 可检测气体 预热时间 检测范围 工作电压 输出方式
MQ-2 LPG、丙烷、氢气、甲烷、酒精、烟雾 24小时 300–10000 ppm 5V 模拟
MQ-3 酒精、苯、CH4、己烷、一氧化碳 24小时 25–500 ppm(酒精) 5V 模拟
MQ-4 甲烷、CNG 24小时 200–10000 ppm 5V 模拟
MQ-5 LPG、天然气、城市燃气 24小时 200–10000 ppm 5V 模拟
MQ-6 LPG、丁烷、异丁烷、丙烷 24小时 200–10000 ppm 5V 模拟
MQ-7 一氧化碳 24小时 20–2000 ppm 5V 模拟
MQ-8 氢气 24小时 100–10000 ppm 5V 模拟
MQ-9 一氧化碳、甲烷、LPG 24小时 10–10000 ppm(CO)、100–10000 ppm(可燃气体) 5V 模拟
MQ-135 氨气、苯、酒精、烟雾 24小时 10–1000 ppm(NH3、酒精、苯) 5V 模拟

工作原理

MQ系列传感器内部包含加热器和导电材料构成的检测元件。当特定气体接触到检测元件时,导电材料的电阻会发生变化,从而测量出气体的浓度。检测元件通常由SnO2(二氧化锡)制成,电阻值随空气中气体浓度而变化。

电气特性

  • 电源输入: 5V(部分型号支持3.3V)
  • 输出: 模拟电压信号(部分型号也支持数字输出)
  • 加热器电流: 约150mA
  • 响应时间: 1~2分钟(稳定所需时间)

应用示例

所需硬件

  • Arduino board
  • 杜邦线
  • MQ-6模块

连接方式

本例中未使用数字引脚,但仍提供连接参考。

Arduino Uno MQ-6
5V VCC
GND GND
A0 AO
D7 DO

示例代码

1. 简单读取数值示例

使用analogRead()在串口监视器中简单读取传感器值的示例。

int sensorPin = A0; // 模拟输出引脚
int sensorValue = 0; // 读取的传感器值

void setup() {
  Serial.begin(9600); // 启动串口通讯
}

void loop() {
  sensorValue = analogRead(sensorPin); // 读取传感器值
  Serial.println(sensorValue); // 输出到串口
  delay(1000); // 每秒读取一次
}

每秒在串口监视器中显示一次PPM值。气体靠近时数值会升高。

2. 使用库进行测量

使用 Miguel Califa 开发的 MQUnifiedsensor 库。

可在Arduino libraries页面查看安装和使用方法。

库使用示例的执行结果

检测到气体时,传感器背面的LED会亮起。

在串口监视器中,可看到右侧PPM值随着打火机气体而变化。

应用领域

  • 气体泄漏检测: 用于厨房、工厂等场所,保障安全。
  • 空气质量监测: 检测室内空气中有害气体浓度。
  • 酒精测试仪: 检测酒精浓度判断是否饮酒。
  • 工业安全: 工业现场检测有害气体以保障工作人员安全。