Lab.Vatli365
← Cấp độ 3 · Cảm biến đơn giản

Bài 20 · Hóa học · Công nghệ

Cảm biến khí gas MQ-2
học cách đọc một cảm biến không chọn lọc mà không biến nó thành thiết bị an toàn giả

MQ-2 nóng lên, phản ứng với nhiều loại hơi và cho một tín hiệu analog thay đổi. Nó phù hợp để học về đường nền, thời gian ổn định và báo động giả. Nó không tự cho nồng độ ppm chính xác và tuyệt đối không được dùng thay máy báo cháy hoặc báo rò khí đạt chuẩn.

Thời lượng
1–2 tiết (60 phút, chưa tính ổn định cảm biến mới)
Chi phí một nhóm
≈ 30 nghìn đồng (chưa tính bo)
Cấp độ
3 / 12
Trạng thái
Đã có phần cứng, đang hoàn thiện
01

Mục tiêu và yêu cầu cần đạt

Tôi coi đây là bài học về giới hạn phép đo, không phải bài chế tạo máy báo gas. Học sinh phải biết cảm biến đang nóng, không chọn lọc, chưa có đường chuẩn ppm và có thể phản ứng với độ ẩm hay nhiều loại hơi khác nhau.

Sau bài này học sinh làm được

  • Lắp cầu chia áp để tín hiệu AO không vượt mức GPIO34.
  • Ghi đường nền nhiều mẫu sau khi cảm biến đã ổn định tương đối.
  • Đặt một ngưỡng thực hành dựa trên dao động nền.
  • Giải thích vì sao một lần LED sáng chưa chứng minh có loại khí cụ thể.
  • Nêu rõ MQ-2 trong bài không phải thiết bị bảo vệ tính mạng.
Gắn với chương trình
  • Hóa học — tính chất khí, hỗn hợp và giới hạn của phép nhận biết không chọn lọc.
  • Công nghệ — cảm biến, hiệu chuẩn, cảnh báo và an toàn hệ thống.

Khi đưa vào KHBD, đối chiếu chương trình chính thức và không mô tả đây là thí nghiệm nhận biết khí cháy.

02

Lí thuyết

Phần tử nhạy cần được nung nóng

Bên trong MQ-2 có lớp vật liệu bán dẫn và bộ sưởi. Khi nhiệt độ làm việc thay đổi, điện trở của lớp nhạy cũng thay đổi. Các phân tử trong không khí tác động lên bề mặt và làm tín hiệu đổi tiếp. Bởi vậy số đọc ngay sau cấp nguồn thường trôi mạnh.

Một con số không nói tên khí

MQ-2 phản ứng chéo với nhiều hơi và điều kiện môi trường. Chân AO chỉ cho điện áp tổng hợp, không mang nhãn “khói”, “LPG” hay “cồn”. Muốn ước lượng nồng độ cần quy trình hiệu chuẩn, đường đặc tuyến, điện trở tải và điều kiện kiểm soát mà bài này không có. Vì vậy kết quả chỉ là mức tương đối so với đường nền.

Vì sao AO phải qua cầu chia áp

Module dùng 5 V cho bộ sưởi và AO có thể cao hơn mức an toàn của ESP32. Hai điện trở 10 kΩ chia điện áp gần một nửa. Trước khi nối GPIO34, dùng đồng hồ xác nhận điểm đo không vượt 3,3 V trong toàn bộ điều kiện thực hành.

03

Linh kiện

Linh kiệnMô tả, lưu ý khi muaSố lượng · giá
ESP32 DevKit V1Bo 30 chân, cấp nguồn bằng USB1 · 90–150k
Module MQ-2Module analog có bộ sưởi1 · 20–35k
Hai điện trở 10 kΩCầu chia áp bảo vệ GPIO342 · 400đ
LED 5 mm và điện trở 220 ΩĐèn chỉ báo trong thí nghiệm1 bộ · 700đ
Đồng hồ vạn năngKiểm tra điện áp tại điểm giữa trước khi nối GPIO1 mỗi nhóm
04

Lắp mạch và sơ đồ nối dây

Đỏ · nguồn dương Đen · GND Vàng · SCL Xanh dương · SDA Trắng · tín hiệu Xanh lá · 1-Wire
KhốiNối dâyNguồn
Nguồn MQ-2VCC → 5V USB của ESP32 · GND → GNDBộ sưởi làm module ấm là bình thường
Nhánh trên cầu chiaAO MQ-2 → điện trở 10 kΩ → điểm đoKhông nối AO thẳng GPIO34
Nhánh dưới cầu chiaĐiểm đo → điện trở 10 kΩ → GNDHai điện trở chia điện áp gần một nửa
Chân đoĐiểm đo → GPIO34Đo bằng đồng hồ trước khi cắm dây này
LEDGPIO23 → 220 Ω → LED → GNDChỉ là đèn thực hành, không phải báo động an toàn
B20.1 Ảnh thực

Module MQ-2 đặt thoáng trên đế không cháy, cách giấy và vật dễ cháy; ESP32 nối USB ở bên cạnh.

Khung giữ chỗ — thay bằng ảnh chụp thật khi có
B20.2 Hình vẽ

AO đi qua điện trở 10 kΩ tới điểm đo; từ điểm đo có 10 kΩ xuống GND và dây tới GPIO34.

Khung giữ chỗ — thay bằng ảnh chụp thật khi có
B20.3 Đồ thị

Ba giai đoạn sau cấp nguồn: tăng nhiệt, trôi chậm và vùng đường nền; ngưỡng nằm trên dao động nền.

Khung giữ chỗ — thay bằng ảnh chụp thật khi có

Kiểm tra cầu chia trước khi nối ESP32

  1. Đặt module trên đế thoáng, không cháy; chưa nối dây AO vào ESP32.
  2. Nối VCC → 5V và GND → GND.
  3. Mắc AO qua điện trở 10 kΩ tới điểm đo, rồi thêm 10 kΩ từ điểm đo xuống GND.
  4. Cấp nguồn, dùng đồng hồ đo điểm giữa so với GND; chỉ tiếp tục nếu luôn dưới 3,3 V.
  5. Rút USB, nối điểm đo tới GPIO34, rồi lắp LED ở GPIO23.
Không tạo khí thử

Không dùng bật lửa, bếp gas, khói, cồn, dung môi, bình xịt hay bất kì chất dễ cháy nào. Không che kín đầu dò đang nóng. Hoạt động của bài chỉ theo dõi đường nền trong phòng thông thoáng và quan sát phản ứng chéo an toàn với hơi thở từ xa.

Không phải thiết bị báo rò khí

Không lắp sản phẩm ở bếp, phòng ngủ, gara hay nơi có nguy cơ thật. Nếu nghi có rò khí hoặc cháy, rời khỏi khu vực và làm theo quy trình an toàn của đơn vị; không dùng mạch học tập này để kiểm tra.

Module nóng không đồng nghĩa chập mạch

Bộ sưởi làm vỏ lưới ấm lên khi hoạt động. Đây là nguyên lí của cảm biến, nhưng nếu có mùi khét, dây đổi màu hoặc điện áp bất thường thì rút USB ngay.

05

Mã nguồn

Mã dùng MicroPython cho ESP32. Hoạt động chỉ ghi đường nền trong không khí lớp học; không tạo, đốt hoặc phun khí dễ cháy để thử.

Bước 1 — ghi đường nền
# Ghi 30 mau trong khong khi lop hoc binh thuong
from machine import ADC, Pin
import time

mq2 = ADC(Pin(34))
mq2.atten(ADC.ATTN_11DB)
print("Cho cam bien on dinh toi thieu 60 giay...")
time.sleep_ms(60000)

cac_mau = []
for lan in range(30):
    gia_tri = mq2.read()
    cac_mau.append(gia_tri)
    print(lan + 1, gia_tri)
    time.sleep_ms(1000)

trung_binh = sum(cac_mau) // len(cac_mau)
dao_dong = max(cac_mau) - min(cac_mau)
print("Duong nen:", trung_binh)
print("Khoang dao dong:", dao_dong)
print("Goi y khoi dau:", trung_binh + 3 * dao_dong)

Với cảm biến mới, thời gian ổn định ban đầu có thể dài hơn nhiều một tiết học; chuẩn bị và chạy trước theo tài liệu của đúng module. Ba mươi mẫu ở đây chỉ mô tả dao động sau khi thiết bị đã được chuẩn bị, không thay thế hiệu chuẩn chuẩn khí.

Bước 2 — chỉ báo vượt ngưỡng tương đối
# Bai 20 - Doc MQ-2 theo muc tuong doi
from machine import ADC, Pin
import time

# ===== CẤU HÌNH =====
CHAN_MQ2 = 34
CHAN_LED = 23
NGUONG_CANH_BAO = 1800   # thay bang duong nen cua chinh cam bien
THOI_GIAN_CHO_MS = 60000 # toi thieu cho buoi thuc hanh, khong thay qua trinh on dinh ban dau
CHU_KY_MS = 1000
# ====================

mq2 = ADC(Pin(CHAN_MQ2))
mq2.atten(ADC.ATTN_11DB)
led = Pin(CHAN_LED, Pin.OUT)

print("Dang cho cam bien on dinh...")
time.sleep_ms(THOI_GIAN_CHO_MS)

while True:
    gia_tri = mq2.read()
    print("MQ2:", gia_tri)

    if gia_tri > NGUONG_CANH_BAO:
        led.on()
    else:
        led.off()

    time.sleep_ms(CHU_KY_MS)

Thay ngưỡng 1800 bằng giá trị suy ra từ đường nền của nhóm. LED sáng chỉ có nghĩa “tín hiệu vừa vượt ngưỡng”, không được diễn giải thành có một loại khí hay nồng độ cụ thể.

Em mô tả bằng tiếng Việt, hệ thống dựng thuật toán và chương trình, rồi nạp thẳng xuống ESP32 qua Wi-Fi.

06

Hiệu chuẩn và kiểm thử

Theo dõi độ trôi sau cấp nguồn

Thời điểmNhỏ nhất trong 30 sLớn nhất trong 30 sTrung bìnhNhận xét
Phút 1…………
Phút 3…………
Phút 5…………
Phút 10…………

Danh sách kiểm

  • AO đi qua cầu chia 10 kΩ/10 kΩ trước GPIO34.
  • Điện áp điểm đo đã được xác nhận dưới 3,3 V bằng đồng hồ.
  • Module đặt thoáng, cách vật dễ cháy.
  • Ngưỡng dựa trên đường nền của chính cảm biến.
  • Không tạo khí thử và không gán số ADC thành ppm.
  • Sản phẩm được ghi rõ “mô hình giáo dục, không phải thiết bị an toàn”.
07

Kinh nghiệm và cạm bẫy

Số giảm dần cả buổi dù không có gì xảy ra

Khi dựng bài, tôi cấp nguồn rồi đặt ngưỡng ngay ở phút đầu. LED tắt dần không phải vì không khí sạch hơn mà vì cảm biến còn trôi theo nhiệt. Ghi số theo thời gian trước giúp tách quá trình ổn định khỏi một thay đổi của môi trường.

Hơi thở làm số đổi nhưng không chứng minh phát hiện gas

Hơi thở ẩm từ khoảng cách an toàn có thể làm số thay đổi. Đây chính là minh chứng cho phản ứng chéo và báo động giả, không phải phương pháp hiệu chuẩn hay kiểm tra độ nhạy với khí cháy.

08

Ứng dụng trong dạy học

Hóa họcCông nghệToánSTEM

Hóa học — tín hiệu không chọn lọc

Một cảm biến phản ứng với nhiều chất không thể tự xác định thành phần hỗn hợp. Học sinh cần tách câu “tín hiệu thay đổi” khỏi câu “đã có khí X”, giống như màu của một chỉ thị chưa đủ để kết luận khi nhiều yếu tố cùng tác động.

Toán — đường nền và biến thiên

Trung bình mô tả mức nền; khoảng dao động cho biết tín hiệu tự thay đổi bao nhiêu. Một ngưỡng quá gần trung bình sẽ báo liên tục. Ngưỡng xa hơn giảm báo giả nhưng cũng có thể bỏ sót — đó là một đánh đổi cần được trình bày.

Bài học STEM 5 hoạt động — “Bộ minh hoạ cảnh báo có giới hạn”

Hoạt động 1 — Xác định vấn đề. Cần minh hoạ vì sao cảm biến giá rẻ dễ báo giả mà vẫn bảo đảm an toàn lớp học.

Tiêu chí sản phẩm: ghi được đường nền; phát hiện vượt ngưỡng trong dữ liệu mô phỏng; có nhãn giới hạn rõ; không tạo khí thử.

Hoạt động 2 — Kiến thức nền. Phần tử bán dẫn, bộ sưởi, phản ứng chéo, ADC và cầu chia áp.

Hoạt động 3 — Đề xuất phương án. Chọn thời gian lấy mẫu, cách đặt ngưỡng và cách trình bày cảnh báo không gây hiểu lầm.

Hoạt động 4 — Chế tạo và thử. Dùng đường nền thật và chèn các giá trị giả lập tăng cao để kiểm tra logic LED.

Hoạt động 5 — Báo cáo và điều chỉnh. So số báo giả ở các ngưỡng và bảo vệ lựa chọn bằng dữ liệu.

Hướng mở rộng an toàn
  • Dùng dữ liệu giả lập để so nhiều thuật toán ngưỡng mà không tạo khí.
  • So độ trôi của cảm biến nguội và cảm biến đã chạy ổn định.
  • Thêm trung bình trượt để giảm dao động rồi đánh giá độ trễ.
  • Hướng thi Khoa học kĩ thuật: nghiên cứu cảnh báo giả trên dữ liệu cảm biến công khai, không dựng môi trường nguy hiểm.