Chuông báo cháy Arduino

Trong hướng dẫn này, chúng ta sẽ học cách làm một hệ thống báo cháy có khả năng phát hiện cháy và phát cảnh báo bằng còi báo động và đèn.

Phần cứng cần chuẩn bị

1×Arduino Uno R3
1×USB 2.0 cable type A/B (for USB-A PC)
1×USB 2.0 cable type C/B (for USB-C PC)
1×Smoke Sensor (MQ2 Gas Sensor)
1×Flame Sensor
1×5-in-1 5-way Flame Sensor
1×Relay
1×12V Fire Alarm Siren Horn
1×(Hoặc) 12V Active Buzzer
1×12V Power Adapter
1×DC Power Jack
1×dây jumper
1×(Khuyến nghị) Screw Terminal Block Shield for Arduino Uno
1×(Khuyến nghị) Breadboard Shield for Arduino Uno
1×(Khuyến nghị) Enclosure for Arduino Uno
1×(Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO

Or you can buy the following kits:

1×DIYables STEM V3 Starter Kit (Arduino included)
1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Về hệ thống báo cháy

Hệ thống báo cháy bao gồm hai phần:

  • Phát hiện cháy: có thể sử dụng cảm biến khói (cảm biến khí MQ2) và/hoặc cảm biến lửa
  • Chuông báo động: có thể là một siren (kèm đèn và âm thanh), hoặc buzzer (chỉ âm thanh)

Trong hệ thống phát hiện cháy, bạn có thể sử dụng một trong hai cảm biến. Tuy nhiên, để tăng độ tin cậy, chúng tôi khuyến nghị sử dụng cả cảm biến khói và cảm biến lửa. Nếu bạn chỉ sử dụng một cảm biến, hệ thống có thể không phát hiện cháy ở một số vị trí trong khu vực giám sát của bạn.

Nếu bạn chưa biết về cảm biến khí MQ-2 và cảm biến ngọn lửa (pinout, cách hoạt động, cách lập trình ...), hãy tìm hiểu về chúng trong các bài hướng dẫn sau:

Cách hoạt động của hệ thống báo cháy

Arduino đọc trạng thái từ cảm biến khói và cảm biến ngọn lửa; nếu khói hoặc ngọn lửa được phát hiện, Arduino kích hoạt rơ-le để kích hoạt báo động.

Sơ đồ đấu dây

  • Sơ đồ đấu dây với chuông báo động
sơ đồ nối dây cho hệ thống còi báo cháy Arduino

This image is created using Fritzing. Click to enlarge image

  • Sơ đồ đấu dây với còi 12V
sơ đồ đấu nối hệ thống còi báo cháy Arduino

This image is created using Fritzing. Click to enlarge image

Mã Arduino

/* * Mã Arduino này được phát triển bởi newbiely.vn * Mã Arduino này được cung cấp để sử dụng công khai, không có ràng buộc. * Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: * https://newbiely.vn/tutorials/arduino/arduino-fire-alarm */ #define FLAME_PIN 7 // Arduino's pin connected to DO pin of the flame sensor #define SMOKE_PIN 13 // Arduino's pin connected to DO pin of the smoke MQ2 sensor #define RELAY_PIN 2 // Arduino's pin connected to relay void setup() { // initialize serial communication Serial.begin(9600); // initialize the Arduino's pin pinMode(FLAME_PIN, INPUT); pinMode(SMOKE_PIN, INPUT); pinMode(RELAY_PIN, OUTPUT); } void loop() { int flame_state = digitalRead(FLAME_PIN); int smoke_state = digitalRead(SMOKE_PIN); if (flame_state == LOW) { Serial.println("Fire is detected based on the flame sensor => alarming"); digitalWrite(RELAY_PIN, HIGH); } else if (smoke_state == LOW) { Serial.println("Fire is detected based on the smoke sensor => alarming"); digitalWrite(RELAY_PIN, HIGH); } else { Serial.println("No fire detected => great!"); digitalWrite(RELAY_PIN, LOW); } }

Hướng dẫn từng bước

  • Sao chép mã ở trên và mở bằng Arduino IDE
  • Nhấp vào nút Tải lên trên Arduino IDE để tải mã lên Arduino
  • Mở Serial Monitor trên Arduino IDE
  • Tải mã lên Arduino
  • Tạo một ít khói quanh cảm biến khói
  • Tạo một ngọn lửa trước cảm biến lửa
  • Nghe tín hiệu báo động từ còi hoặc buzzer
  • Xem kết quả trên Serial Monitor.
COM6
Send
No fire detected => great! No fire detected => great! No fire detected => great! Fire is detected based on the smoke sensor => alarming Fire is detected based on the smoke sensor => alarming Fire is detected based on the smoke sensor => alarming Fire is detected based on the smoke sensor => alarming No fire detected => great! No fire detected => great! No fire detected => great! Fire is detected based on the flame sensor => alarming Fire is detected based on the flame sensor => alarming Fire is detected based on the flame sensor => alarming
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Giải thích mã nguồn

Đọc lời giải thích từng dòng trong các dòng chú thích của mã nguồn!

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.

Bài hướng dẫn liên quan