我住的大樓有幾次因為線路老舊的關係,觸發火災警報,一般是使用煙霧感測器來觸發警報。另一種類型是偵測火焰,這類型的傳感器用於短距離火災探測,也可作為安全預防措施來開啟或關閉設備,如自動灑水裝置等。常見的感測器中,有一個可以偵測火焰的模組,本實作要來瞭解一下這個感測模組的運作方式。
模組使用注意事項:
接腳定義:
[火焰感測模組]
感測模組特點:- 可以檢測火焰或者波長在 760 nm(奈米, 10的負9次方) ~1100 nm範圍內的光源,打火機測試火焰距離為80cm,當火焰越大時,測試距離越遠
- 探測角度60度左右,對火焰光譜特別靈敏
- 可調整靈敏度(圖中藍色數字電位器調節)
- 工作電壓 3.3V-5V
- 輸出形式 :DO數位開關量輸出(0和1)和AO類比電壓輸出
- 使用寬電壓LM393比較器
模組使用注意事項:
- 火焰感測器對火焰最敏感,對普通光也是有反應的,一般用做火焰報警等用途。
- 感測器與火焰要保持一定距離,以免高溫損壞感測器,對打火機測試火焰距離約為80公分,當火焰越大,測試距離越遠。
接腳定義:
- GND:接地線
- VCC:電源範圍 3~24V
- DO:數位輸出:當溫度達到一定閾值時,可透過電位器調節輸出高低信號。
- AO:類比輸出:熱敏阻上的即時輸出電壓信號。
[材料]
- Arduino Uno x 1
- 火焰感測模組 x 1
- 麵包板 x 1
- LED x 1
- 220K 電阻 x 1
- 蜂鳴器 x 1
- 連接線 x 7條
[接線與電路圖]
Arduino
|
火焰感測模組
|
5V (VCC)
|
VCC
|
GND
|
GND
|
A0
|
A0
|
[程式]
#include <SoftwareSerial.h>
// 讀取的最大和最小值
const int sensorMin = 0;
const int sensorMax = 1024;
int sensorPin = A0; // select the input pin for the LDR
int led = 9; // LED 輸出接腳
int buzzer = 12; // 蜂鳴器輸出接腳
int sensorValue = 0; // 感測值
void setup() {
// 設定通訊速率
Serial.begin(9600);
// 定義 ledPin 跟 buzzer 為輸出
pinMode(led, OUTPUT);
pinMode(buzzer,OUTPUT);
}
void loop() {
// 從A0讀取感測值
sensorValue = analogRead(A0);
// 將感測值對應區間 0 ~ 1024 值為 0 ~ 3
int range = map(sensorValue, sensorMin, sensorMax, 0, 3);
// 對應值
switch (range) {
case 0: // 接近火焰大約在 45公分以內
Serial.println("** Close Fire **");
Serial.println("Fire Detected");
Serial.println("LED on");
digitalWrite(led,HIGH);
digitalWrite(buzzer,HIGH);
delay(2000);
break;
case 1: // 接近火焰大約在45公分以外
Serial.println("** Distant Fire **");
break;
case 2: // 沒有火焰
Serial.println("No Fire");
break;
}
// 關閉蜂鳴器及LED
digitalWrite(led,LOW);
digitalWrite(buzzer,LOW);
delay(sensorValue);
delay(1);
}
[實作結果]
[參考資料]
- Arduino Projecthub:Flame Sensor
- Instructables: Fire Detection Using Arduino and Flame Sensor

請問一下45公分是從哪判斷的?
回覆刪除這個傳感器的有效感測距離約3英吋=90公分, 感測值從0-1024, 將這個值分成3段(0,1,2), 數值1大約是感測值的一半, 也就是45公分. 我沒真的用尺量, 實測也差不多是這個距離, 您也可以試看看.
刪除請問蜂鳴器要買哪一種的呢
刪除請問蜂鳴器要買哪一種的呢
回覆刪除蜂鳴器分為電磁式及壓電式,應該都可以,要注意推動的電壓即可。
刪除請問一下 為何我的只叫一聲很小聲的短音就停 不會發長音到停止
回覆刪除舔舔
刪除不好意思打擾了
回覆刪除想請問一下這張圖是用TinkerCAD做出來的嗎?
如果是用TinkerCAD完成的話。因為我在TinkerCAD搜尋火焰相關感測元件查不到相關元件,想請問你們是去哪裡放入火焰傳感器做出此圖?
從上往下數第二張接電路的圖
刪除我是用 Fritzing 畫的圖,可參考:https://fritzing.org/
刪除張貼留言