- เซ็นเซอร์เปลวไฟ
- ส่วนประกอบที่จำเป็น
- แผนภูมิวงจรรวม
- การทำงานของ Flame Sensor กับ Arduino
- คำอธิบายรหัส
ระบบแจ้งเตือนอัคคีภัยเป็นสิ่งที่พบเห็นได้ทั่วไปในอาคารพาณิชย์และโรงงานโดยปกติอุปกรณ์เหล่านี้จะมีกลุ่มเซ็นเซอร์ที่คอยตรวจสอบเปลวไฟก๊าซหรือไฟในอาคารอยู่ตลอดเวลาและจะส่งเสียงเตือนหากตรวจพบสิ่งเหล่านี้ วิธีที่ง่ายที่สุดวิธีหนึ่งในการตรวจจับไฟคือการใช้เซ็นเซอร์ IR Flame เซ็นเซอร์เหล่านี้มีโฟโตไดโอด IR ซึ่งไวต่อแสง IR ตอนนี้ในกรณีที่เกิดเพลิงไหม้ไฟจะไม่เพียงสร้างความร้อน แต่ยังปล่อยรังสี IR อีกด้วยใช่ว่าเปลวไฟที่ลุกไหม้ทุกครั้งจะปล่อยแสง IR ในระดับหนึ่งแสงนี้จะมองไม่เห็นด้วยตามนุษย์ แต่เซ็นเซอร์เปลวไฟของเราสามารถตรวจจับได้ และแจ้งเตือนไมโครคอนโทรลเลอร์เช่น Arduino ว่าตรวจพบไฟ
ในบทความนี้เราเชื่อมต่อ Flame Sensor กับArduinoและเรียนรู้ขั้นตอนทั้งหมดในการสร้างFire Alarm Systemโดยใช้ Arduino และเซ็นเซอร์เปลวไฟ โมดูลเซ็นเซอร์เปลวไฟมีโฟโตไดโอดเพื่อตรวจจับแสงและออปแอมป์เพื่อควบคุมความไว ใช้เพื่อตรวจจับไฟและให้สัญญาณสูงเมื่อตรวจจับ Arduino อ่านสัญญาณและแจ้งเตือนโดยการเปิดเสียงกริ่งและไฟ LED เซ็นเซอร์เปลวไฟที่ใช้ที่นี่เป็นเซ็นเซอร์เปลวไฟที่ใช้ IR นอกจากนี้เรายังใช้แนวคิดเดียวกันนี้ในการตรวจจับไฟในหุ่นยนต์ดับเพลิงของเราคุณสามารถตรวจสอบได้ว่าของเราหากคุณสนใจ
เซ็นเซอร์เปลวไฟ
ตรวจจับเปลวไฟเป็นเซ็นเซอร์ที่ออกแบบมาเพื่อตรวจสอบและตอบสนองต่อการปรากฏตัวของเปลวไฟหรือไฟไหม้ การตอบสนองต่อเปลวไฟที่ตรวจพบขึ้นอยู่กับการติดตั้ง แต่อาจรวมถึงการส่งเสียงเตือนการปิดใช้งานสายเชื้อเพลิง (เช่นโพรเพนหรือสายก๊าซธรรมชาติ) และการเปิดใช้งานระบบดับเพลิง เซ็นเซอร์ IR Flame ที่ใช้ในโครงการนี้แสดงไว้ด้านล่างเซ็นเซอร์เหล่านี้เรียกอีกอย่างว่าโมดูลเซ็นเซอร์ไฟหรือเซ็นเซอร์ตรวจจับเปลวไฟในบางครั้ง
วิธีการตรวจจับเปลวไฟมีหลายประเภท บางส่วน ได้แก่ เครื่องตรวจจับรังสีอัลตราไวโอเลต, เครื่องตรวจจับอาร์เรย์ IR, เครื่องตรวจจับอินฟราเรด (IR), กล้องความร้อนอินฟราเรด, เครื่องตรวจจับ UV / IR
เมื่อไฟลุกไหม้ไฟจะเปล่งแสงอินฟาเรดเพียงเล็กน้อยโฟโตไดโอด (ตัวรับสัญญาณ IR) บนโมดูลเซ็นเซอร์จะรับแสงนี้ จากนั้นเราใช้ Op-Amp เพื่อตรวจสอบการเปลี่ยนแปลงของแรงดันไฟฟ้าในตัวรับ IR ดังนั้นหากตรวจพบไฟขาเอาต์พุต (DO) จะให้ 0V (LOW) และหากไม่มีไฟขาเอาต์พุตจะเป็น 5V (สูง)
ในโครงการนี้เราจะใช้เซ็นเซอร์เปลวไฟ IR ตาม มันขึ้นอยู่กับเซ็นเซอร์ YG1006 ซึ่งเป็นโฟโตทรานซิสเตอร์ซิลิกอน NPN ความเร็วสูงและมีความไวสูง สามารถตรวจจับแสงอินฟราเรดที่มีความยาวคลื่นตั้งแต่ 700 นาโนเมตรถึง 1000 นาโนเมตรและมุมตรวจจับอยู่ที่ประมาณ 60 ° โมดูลเซ็นเซอร์เปลวไฟประกอบด้วยโฟโตไดโอด (ตัวรับ IR) ตัวต้านทานตัวเก็บประจุโพเทนชิออมิเตอร์และตัวเปรียบเทียบ LM393 ในวงจรรวม ความไวสามารถปรับได้โดยการปรับเปลี่ยนโพเทนชิออมิเตอร์บนบอร์ด แรงดันไฟฟ้าที่ใช้งานอยู่ระหว่าง 3.3v ถึง 5v DC พร้อมเอาต์พุตดิจิตอล ลอจิกที่เอาต์พุตสูงบ่งชี้ว่ามีเปลวไฟหรือไฟ ลอจิกที่เอาต์พุตต่ำแสดงว่าไม่มีเปลวไฟหรือไฟ
ด้านล่างนี้คือคำอธิบายพินของโมดูลเซ็นเซอร์เปลวไฟ:
พิน |
คำอธิบาย |
Vcc |
แหล่งจ่ายไฟ 3.3 - 5V |
GND |
พื้น |
Dout |
เอาต์พุตดิจิตอล |
การใช้เซ็นเซอร์เปลวไฟ
- สถานีไฮโดรเจน
- เครื่องตรวจสอบการเผาไหม้สำหรับหัวเผา
- ท่อส่งน้ำมันและก๊าซ
- โรงงานผลิตยานยนต์
- สิ่งอำนวยความสะดวกนิวเคลียร์
- โรงเก็บเครื่องบิน
- เปลือกกังหัน
ส่วนประกอบที่จำเป็น
- Arduino Uno (สามารถใช้บอร์ด Arduino ใดก็ได้)
- โมดูลเซ็นเซอร์เปลวไฟ
- LED
- Buzzer
- ตัวต้านทาน
- สายจัมเปอร์
แผนภูมิวงจรรวม
ภาพด้านล่างคือแผนภาพวงจรเซ็นเซอร์ไฟ Arduinoซึ่งแสดงวิธีการเชื่อมต่อโมดูลเซ็นเซอร์ไฟกับ Arduino
การทำงานของ Flame Sensor กับ Arduino
Arduino Uno เป็นบอร์ดไมโครคอนโทรลเลอร์โอเพนซอร์สที่ใช้ไมโครคอนโทรลเลอร์ ATmega328p มีพินดิจิทัล 14 พิน (ซึ่ง 6 พินสามารถใช้เป็นเอาต์พุต PWM ได้) อินพุตอะนาล็อก 6 ตัวตัวควบคุมแรงดันไฟฟ้าออนบอร์ดเป็นต้น Arduino Uno มีหน่วยความจำแฟลช 32KB SRAM 2KB และ EEPROM 1KB ทำงานที่ความถี่สัญญาณนาฬิกา 16MHz Arduino Uno รองรับการสื่อสาร Serial, I2C, SPI สำหรับการสื่อสารกับอุปกรณ์อื่น ๆ ตารางด้านล่างแสดงข้อกำหนดทางเทคนิคของ Arduino Uno
ไมโครคอนโทรลเลอร์ |
ATmega328p |
แรงดันไฟฟ้าที่ใช้งาน |
5V |
แรงดันไฟฟ้าขาเข้า |
7-12V (แนะนำ) |
พิน I / O ดิจิทัล |
14 |
หมุดอะนาล็อก |
6 |
หน่วยความจำแฟลช |
32KB |
SRAM |
2KB |
EEPROM |
1KB |
ความเร็วนาฬิกา |
16MHz |
เซ็นเซอร์ตรวจจับเปลวไฟการปรากฏตัวของไฟหรือเปลวไฟอยู่บนพื้นฐานของอินฟาเรด (IR) ความยาวคลื่นปล่อยออกมาจากเปลวไฟ ให้ลอจิก 1 เป็นเอาต์พุตหากตรวจพบเปลวไฟมิฉะนั้นจะให้ลอจิก 0 เป็นเอาต์พุต Arduino Uno ตรวจสอบระดับลอจิกบนขาเอาต์พุตของเซ็นเซอร์และดำเนินการต่อไปเช่นการเปิดใช้งานเสียงกริ่งและไฟ LED ส่งข้อความแจ้งเตือน
ตรวจสอบโครงการสัญญาณเตือนไฟไหม้อื่น ๆ ของเรา:
- สัญญาณเตือนไฟไหม้โดยใช้ Thermistor
- ระบบแจ้งเหตุเพลิงไหม้โดยใช้ไมโครคอนโทรลเลอร์ AVR
- หุ่นยนต์ดับเพลิงจาก Arduino
คำอธิบายรหัส
รหัส Arduino ที่สมบูรณ์สำหรับโครงการนี้มีให้ในตอนท้ายของบทความนี้ รหัสจะแบ่งออกเป็นส่วนเล็ก ๆ ที่มีความหมายและอธิบายไว้ด้านล่าง
ในส่วนนี้ของรหัสเราจะกำหนดพินสำหรับเซ็นเซอร์ Flame, LED และกริ่งที่เชื่อมต่อกับ Arduino เซ็นเซอร์เปลวไฟเชื่อมต่อกับพินดิจิตอล 4 ของ Arduino กริ่งเชื่อมต่อกับพินดิจิตอล 8 ของ Arduino LED เชื่อมต่อกับพินดิจิตอล 7 ของ Arduino
ตัวแปร“ flame_detected ” ใช้สำหรับจัดเก็บค่าดิจิตอลที่อ่านได้จากเซ็นเซอร์เปลวไฟ จากค่านี้เราจะตรวจจับการมีอยู่ของเปลวไฟ
int buzzer = 8; int LED = 7; int flame_sensor = 4; int flame_detected;
ในส่วนนี้ของรหัสเราจะตั้งค่าสถานะของพินดิจิทัลของ Arduinoและกำหนดค่า
อัตราบอดสำหรับการสื่อสารแบบอนุกรมกับพีซีสำหรับแสดงสถานะของวงจรตรวจจับเปลวไฟ
การตั้งค่าเป็นโมฆะ () { Serial.begin (9600); pinMode (เสียงกริ่งเอาท์พุท); PinMode (LED, เอาท์พุท); pinMode (flame_sensor, INPUT); }
รหัสบรรทัดนี้อ่านเอาต์พุตดิจิตอลจากเซ็นเซอร์เปลวไฟและเก็บไว้ในตัวแปร“ flame_detected ”
flame_detected = digitalRead (flame_sensor);
จากค่าที่เก็บไว้ใน“ flame_detected ” เราต้องเปิดเสียงกริ่งและไฟ LED ในส่วนของรหัสนี้เราเปรียบเทียบค่าที่เก็บไว้ใน“ flame_detected ” กับ 0 หรือ 1
ถ้าเท่ากับ 1แสดงว่าตรวจพบเปลวไฟ เราต้องเปิดกริ่งและ LED จากนั้นแสดงข้อความแจ้งเตือนใน Serial monitor ของ Arduino IDE
หากมีค่าเท่ากับ 0แสดงว่าไม่มีการตรวจพบเปลวไฟดังนั้นเราจึงต้องปิดไฟ LED และเสียงกริ่ง กระบวนการนี้ซ้ำทุกวินาทีเพื่อระบุว่ามีไฟหรือเปลวไฟ
ถ้า (flame_detected == 1) { Serial.println ("ตรวจพบเปลวไฟ… ! ดำเนินการทันที"); digitalWrite (กริ่งสูง); digitalWrite (LED สูง); ล่าช้า (200); digitalWrite (LED, LOW); ล่าช้า (200); } else { Serial.println ("ตรวจไม่พบเปลวไฟใจเย็น ๆ "); digitalWrite (เสียงกริ่งต่ำ); digitalWrite (LED, LOW); } ล่าช้า (1,000);
เราได้สร้างหุ่นยนต์ดับเพลิงตามแนวคิดนี้ซึ่งจะตรวจจับไฟโดยอัตโนมัติและสูบน้ำออกเพื่อดับไฟ ตอนนี้คุณรู้วิธีตรวจจับไฟโดยใช้ Arduino และเซ็นเซอร์เปลวไฟแล้วหวังว่าคุณจะสนุกกับการเรียนรู้หากคุณมีคำถามใด ๆ ทิ้งไว้ในส่วนความคิดเห็นด้านล่าง
ตรวจสอบโค้ดทั้งหมดและวิดีโอสาธิตด้านล่าง