MQ系列傳感器是使用非常廣泛的低成本傳感器,廣泛應用於家庭或工廠的氣體洩漏監測裝置。本篇介紹MQ家族中的MQ-2煙霧傳感器的使用,其他MQ傳感器使用都是相類似的。
1. MQ系列傳感器工作原理
MQ系列傳感器使用的敏感材料是活性很高的金屬氧化物半導體,傳感器加熱後,在不同氣體濃度中電導率不同。使用簡單的電路就可以將電導率的變化轉換成與該氣體濃度相對應的信號輸出了。
2. 煙霧傳感器模塊介紹
MQ-2傳感器對可燃氣、煙霧等氣體靈敏度高,基於MQ-2的煙霧傳感器模塊通過電路設計,提供了兩種輸出方式:
數字量輸出:通過板載電位器設定濃度閾值,當檢測到環境氣體濃度超過閾值時,通過數字引腳DO輸出低電平。模擬量輸出:濃度越高,AO引腳輸出的電壓值越高,通過ADC採集的模擬值越高。
需要注意的是,傳感器通電後,需要預熱20秒左右,測量的數據才會穩定。由於傳感器工作時需要內部電熱絲加熱,所以傳感器發熱屬於正常現象。
3. 實驗材料
Uno R3開發板配套USB數據線麵包板及配套連接線MQ-2煙霧傳感器模塊4. 實驗步驟
1. 根據原理圖搭建電路圖。
煙霧傳感器模塊的VCC、GND分別連接到開發板的5V、GND。模塊的AO引腳連接到開發板的模擬引腳A0,模塊的DO引腳連接到開發板的數字引腳2。
實驗原理圖如下圖所示:
實物連接圖如下圖所示:
2. 新建sketch,拷貝如下代碼替換自動生成的代碼並進行保存。
/*
MQ-2煙霧傳感器的使用
*/
#include <Arduino.h>
#define Sensor_AO A0
#define Sensor_DO 2
unsigned int sensorValue = 0;
void setup()
{
pinMode(Sensor_DO, INPUT);
Serial.begin(9600);
}
void loop()
{
sensorValue = analogRead(Sensor_AO);
Serial.print("Sensor AD Value = ");
Serial.println(sensorValue);
if (digitalRead(Sensor_DO) == LOW)
{
Serial.println("Alarm!");
}
delay(1000);
}
3. 連接開發板,設置好對應埠號和開發板類型,進行程序下載。
5. 實驗現象
打開串口監視器,波特率設置成與程序中相一致的9600。監視器中將顯示AO引腳輸出電壓對應的ADC模擬量,當氣體濃度高於設定的閾值時,輸出報警提示。我們可以配合使用聲光報警器等設備,製作家用煙霧監測儀器。