
MQ135空氣質量檢測模塊
MQ135主要用于檢測空氣中的二氧化碳、酒精、苯、氮氧化物、氨等氣體的濃度。
本文將介紹MQ135的兩種使用方法
- 不使用庫文件
- 使用別人寫好的庫文件
1.不使用庫文件
準備材料
- Arduino Uno *1
- MQ-135 傳感器 *1
- 跳線 *3
- 面包板 *1
接線
接線示意圖
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使用一個加熱模塊來預熱傳感器,因此建議使用容量大一點的電源才不會很快就耗盡電量。
-
附:室內空氣質量對照表
室內空氣質量對照表