【Arduino基础教程】MQ135空气质量检测模块

【Arduino基础教程】MQ135空气质量检测模块
MQ135空气质量检测模块

MQ135主要用于检测空气中的二氧化碳、酒精、苯、氮氧化物、氨等气体的浓度。

本文将介绍MQ135的两种使用方法

  1. 不使用库文件
  2. 使用别人写好的库文件

1.不使用库文件

准备材料

  • Arduino Uno *1
  • MQ-135 传感器 *1
  • 跳线 *3
  • 面包板 *1

接线

【Arduino基础教程】MQ135空气质量检测模块
接线示意图
MQ135 Arduino
VCC -> 5V
AOUT -> A0
GND -> GND

示例程序

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.
}

2.使用<MQ135.h>库

所需材料接线都与不使用库文件一样。唯一的区别就是需要下载MQ135的库。

加载库文件

https://codeload.github.com/GeorgK/MQ135/zip/master下载MQ135的库文件,在Arduino IDE中,点击项目->加载库->添加一个.zip库,选择下载好的MQ135库文件即可。

初始化设置

开始使用它之前,你需要将它通电,预热12-24个小时,之后,在20°C/35%空气温度的环境中执行下列程序,读取RZERO的值。

#include "MQ135.h"
const int ANALOGPIN=0;
MQ135 gasSensor = MQ135(ANALOGPIN);
void setup(){
  Serial.begin(9600);      // sets the serial port to 9600
}
void loop(){
  float rzero = gasSensor.getRZero();
  Serial.println(rzero);
  delay(1000);
}

将读到的值写入库文件中的MQ135.h文件中。
那么问题来了:如何找到MQ135.h文件?

  • 可以在Arduino IDE中选择文件->首选项,在弹出的窗口中可以看到项目文件夹位置,eg: d:\Users\weiwe\Documents\Arduino,然后你找到这个文件夹里面的libraries->MQ135-master->MQ135.h文件,打开便可以将RZERO的值填进去。
#define RZERO 76.63

开始检测空气质量

#include "MQ135.h"
const int ANALOGPIN=0;
MQ135 gasSensor = MQ135(ANALOGPIN);
void setup(){
  Serial.begin(9600);      // sets the serial port to 9600
}
void loop(){
  float ppm = gasSensor.getPPM();
  Serial.println(ppm);
  delay(1000);
}

参考文献

1.http://www.hackerscapes.com/2014/11/using-an-air-quality-sensor/
2.https://hackaday.io/project/3475-sniffing-trinket/log/12363-mq135-arduino-library

小贴士

  • 实验表明,MQ-135 可以检测上述提及的气体,但它并不能区别这些气体。如果你想检测某种具体的气体在空气中的含量,那你可能需要寻找其他更好的传感器了~
  • MQ-135使用一个加热模块来预热传感器,因此建议使用容量大一点的电源才不会很快就耗尽电量。
  • 附:室内空气质量对照表


    【Arduino基础教程】MQ135空气质量检测模块
    室内空气质量对照表
上一篇:【Arduino基础教程】继电器


下一篇:【Arduino基础教程】多线程入门