Hướng dẫn sử dụng module cảm biến lửa với Raspberry Pi 4

Giới thiệu về cảm biến lửa (Flame sensor)

Cảm biến lửa là một loại cảm biến quang điện dùng để phát hiện ngọn lửa hoặc ánh sáng hồng ngoại phát ra từ lửa. Nó hoạt động bằng cách phát hiện bức xạ hồng ngoại trong khoảng bước sóng từ 760nm đến 1100nm, tương ứng với phổ sáng của ngọn lửa.

Loại cảm biến này thường được sử dụng trong các hệ thống cảnh báo cháy, robot phát hiện hỏa hoạn, hoặc các ứng dụng an toàn phòng cháy chữa cháy.

  • Dải quang phổ: 760nm ~ 1100nm
  • Góc phát hiện: 0 – 60 độ
  • Điện áp: 3.3V ~ 5.3V
  • Nhiệt độ hoạt động: -25℃ ~ 85℃
  • Kích thước: 27.3mm * 15.4mm
  • Kích thước lỗ gá: 2.0mm

Linh kiện được sử dụng trong bài viết gồm:

Giảm 30%
Giá từ: 1.720.000 
Sản phẩm này có nhiều biến thể. Các tùy chọn có thể được chọn trên trang sản phẩm
Giảm 14%
Giá gốc là: 350.000 ₫.Giá hiện tại là: 300.000 ₫.

Cảm biến

Bộ 13 cảm biến

950.000 

Sơ đồ kết nối với Raspberry Pi 4:

Raspberry Pi 4 Flame sensor
5V VCC
GND GND
GPIO 17 Dout

Sử dụng Raspberry Pi 4 và Flame sensor để phát hiện ngọn lửa

Mở IDE bất kỳ trên Raspberry Pi. Trong hướng dẫn này, chúng ta sẽ sử dụng Thonny IDE – một môi trường lập trình Python thân thiện với người mới bắt đầu.

Nhập và chạy đoạn code dưới đây:

from gpiozero import InputDevice
import time

# Connect the digital output of the flame sensor to GPIO17 on the Raspberry Pi
flame_sensor = InputDevice(17)

# Continuous loop to read from the sensor
while True:
    # Check if the sensor is active (no flame detected)
    if flame_sensor.is_active:
        print("No flame detected.")
    else:
        # When the sensor is inactive (flame detected)
        print("Flame detected!")
    # Wait for 1 second before reading the sensor again
    time.sleep(1)

Khi đưa đến gần ngọn lửa, cảm biến sẽ phát hiện ra có cháy và hiển thị lên màn hình dòng chữ ‘Flame detected!’

Lưu ý: Cảm biến không có khả năng kháng lửa nên tuyệt đối không đưa cảm biến quá sát ngọn lửa tránh gây hỏng hóc

Giải thích câu lệnh

1. Nhập thư viện

from gpiozero import InputDevice import time
  • gpiozero.InputDevice: Dùng để khai báo và đọc tín hiệu số từ chân GPIO của Raspberry Pi.

  • time: Thư viện chuẩn của Python, dùng để tạo độ trễ trong chương trình.

2. Khởi tạo cảm biến lửa

flame_sensor = InputDevice(17)
  • Tạo một đối tượng flame_sensor đại diện cho cảm biến lửa.

  • 17 là số GPIO mà cảm biến được kết nối – tương ứng với chân số 11 trên Raspberry Pi 4.

  • Cảm biến đang sử dụng ngõ ra digital (DO).

3. Vòng lặp kiểm tra liên tục

while True: if flame_sensor.is_active: print("No flame detected.") else: print("Flame detected!") time.sleep(1)
  • while True: Tạo một vòng lặp vô hạn để liên tục kiểm tra trạng thái cảm biến.

  • flame_sensor.is_active:

    • True: Không có ngọn lửa (DO mức cao).

    • False: Có ngọn lửa (DO mức thấp) – vì cảm biến phát hiện lửa và kéo tín hiệu xuống LOW.

  • print(...): In ra trạng thái lên màn hình để giám sát.

  • time.sleep(1): Dừng 1 giây giữa mỗi lần đọc để tránh chiếm dụng CPU quá mức.

Kết luận

Qua bài viết này, chúng ta đã tìm hiểu cách kết nối và lập trình cảm biến lửa (Flame Sensor) với Raspberry Pi 4 bằng ngôn ngữ Python trong môi trường Thonny IDE. Kết quả cho thấy khi đưa cảm biến đến gần nguồn phát sáng như ngọn lửa, thiết bị sẽ phát hiện và hiển thị cảnh báo "Flame detected!" trên màn hình.

Đây là một bước khởi đầu đơn giản nhưng hiệu quả để áp dụng cảm biến lửa trong các hệ thống cảnh báo cháy tự động, robot cứu hỏa, hoặc các dự án IoT an toàn. Tuy nhiên, cần lưu ý rằng cảm biến không chịu được nhiệt độ cao, do đó không nên đặt quá gần ngọn lửa để tránh hư hỏng thiết bị.