如何使用LM393 IR火焰感測器與Arduino
By Kunkune | Published: 2026-10-24
Category: 操作指南
了解如何將 LM393 紅外線火焰偵測模組與 Arduino 接線及編寫程式。逐步指南,包含程式碼、常見錯誤與故障排除技巧。
快速解答
將 LM393 IR 火焰感測器的 VCC 腳位連接到 Arduino 5V,GND 連接到 GND,數位輸出腳位連接到數位輸入腳位(如 D2)。使用提供的程式碼讀取感測器,並在偵測到火焰時觸發動作。
LM393 IR 火焰感測器的工作原理
LM393 模組可偵測火焰發出的紅外線(通常在 760–1100 nm 範圍內)。當偵測到火焰時,它會輸出數位 HIGH 訊號,無火焰時則輸出 LOW。內建的 LM393 比較器晶片會處理紅外線接收器的訊號,因此您無需在 Arduino 端進行類比轉數位轉換。
此模組具有 4 腳位介面:VCC(電源)、GND(接地)、DO(數位輸出)和 AO(類比輸出)。在大多數專案中,您只需要使用數位輸出腳位。類比輸出可用於更精確的火焰距離估算,但數位輸出更簡單,足以滿足基本偵測需求。
常見陷阱:電源電壓
LM393 模組的額定輸入電壓為 3.3–5V。如果您使用的是 5V Arduino 板,直接將其連接到 Arduino 的 5V 腳位是沒問題的。但如果您使用的是 3.3V Arduino 板(例如某些 Arduino 相容板),請改用 3.3V 腳位。供電超過 5V 可能會損壞模組。
逐步接線與程式碼
- 將感測器連接到 Arduino: 將 VCC(腳位 1)連接到 Arduino 的 5V,GND(腳位 2)連接到 GND,DO(腳位 3)連接到數位腳位 2。本指南中請將 AO(腳位 4)保持未連接。 再次確認 VCC 連接到 5V,而非 3.3V,除非您的開發板僅提供 3.3V。
- 上傳測試草稿碼: 開啟 Arduino IDE 並上傳以下程式碼:const int flamePin = 2; void setup() { pinMode(flamePin, INPUT); Serial.begin(9600); } void loop() { int flame = digitalRead(flamePin); if (flame == HIGH) { Serial.println("偵測到火焰!"); } else { Serial.println("無火焰"); } delay(500); } 如果即使沒有火焰,仍持續顯示「偵測到火焰!」,可能是感測器受到陽光或其他紅外線源干擾。請在較暗的環境中測試。
- 使用火焰源進行測試: 將打火機(未點燃)或蠟燭火焰放在距離感測器約 10–20 公分處。序列監控視窗應顯示「偵測到火焰!」。將火焰移遠以觀察偵測範圍。 請勿將感測器直接放入火焰中——這可能會熔化塑膠外殼。請保持安全距離。
- 新增動作(可選): 若要在偵測到火焰時觸發某個動作,請修改 loop():if (flame == HIGH) { digitalWrite(ledPin, HIGH); // 開啟 LED 或蜂鳴器 delay(1000); digitalWrite(ledPin, LOW); } 確保輸出裝置(LED、蜂鳴器)已連接到另一個腳位,並且已在 setup() 中宣告。
本指南使用的產品
- LM393 IR 火焰偵測感測器模組 火災偵測器: LM393 4 腳位 IR 火焰偵測感測器模組 火災偵測器 紅外線接收器模組 適用於 Arduino 此模組提供即用型 IR 火焰偵測器,具備數位與類比輸出,讓您能專注於專案本身,無需自行搭建感測器電路。

LM393 IR 火焰偵測感測器模組 火災偵測器
