ИСКУССТВО
КРАСОТА И ЗДОРОВЬЕ
РЕМЕСЛО
КУЛЬТУРА И ИСТОРИЯ
РАЗВЛЕЧЕНИЯ
ЭКОЛОГИЯ
ЕДА И НАПИТКИ
ОБРАТНАЯ ИНЖЕНЕРИЯ
НАУКИ
СПОРТ
ТЕХНОЛОГИИ
НОСИМЫЕ УСТРОЙСТВА
Building a Carbon Monoxide Detector
Ed

Создано

Ed

13. июль 2026FI
76
0
0
0
0

Building a Carbon Monoxide Detector

Build a circuit that senses carbon monoxide (CO) — the invisible, odourless gas from any incomplete combustion — and raises an alarm when it rises. An MQ-7 sensor gives the Arduino a reading that climbs with CO; the code compares it to a clean-air baseline and triggers a buzzer and red LED. A great way to learn gas sensing — but read the safety note: this is a demonstration, NOT a certified life-safety CO alarm.

Средний
1-2 hours

Инструкции

1

Wire the sensor, buzzer and LED

On the breadboard: MQ-7 VCC to Arduino 5V, GND to GND, and its analog output (AOUT) to Arduino A0. Active buzzer + to pin 8, - to GND. Red LED anode to pin 7 through a 330 Ω resistor, cathode to GND.

Материалы для этого шага:

Arduino Uno R3Arduino Uno R31 штука
Carbon Monoxide Sensor - MQ-7Carbon Monoxide Sensor - MQ-71 штука
Модуль активного зуммераМодуль активного зуммера1 штука
Светодиод 5 ммСветодиод 5 мм1 штука
Резистор 330 ОмРезистор 330 Ом1 штука
Макетная платаМакетная плата1 штука
Соединительные проводаСоединительные провода1 упаковка
2

Connect and open the IDE

Plug the Arduino into your computer with the USB cable, open the Arduino IDE, and select Arduino Uno and its serial port.

Необходимые инструменты:

Компьютер с Arduino IDEКомпьютер с Arduino IDE
Кабель USB-BКабель USB-B
3

Upload the detector sketch

Paste this sketch and upload. It warms the sensor for two minutes, records a clean-air baseline, then sounds the buzzer and lights the LED whenever the reading climbs above that baseline.

co_detector.inoarduino
// Carbon monoxide INDICATOR using an MQ-7 sensor.
// NOT a certified life-safety alarm - see the blueprint's safety note.
// MQ-7 analog output on A0; buzzer on pin 8; red warning LED on pin 7.

const int MQ7_PIN = A0;
const int BUZZER_PIN = 8;
const int LED_PIN = 7;

int cleanAirValue = 0;          // baseline, measured at startup
const int ALARM_MARGIN = 150;   // how far above baseline triggers the alarm

void setup() {
  pinMode(BUZZER_PIN, OUTPUT);
  pinMode(LED_PIN, OUTPUT);
  Serial.begin(9600);

  Serial.println("Warming up the MQ-7 (2 min) in clean air...");
  delay(120000);                // 2-minute warm-up
  cleanAirValue = analogRead(MQ7_PIN);
  Serial.print("Clean-air baseline: ");
  Serial.println(cleanAirValue);
}

void loop() {
  int reading = analogRead(MQ7_PIN);
  Serial.println(reading);

  if (reading > cleanAirValue + ALARM_MARGIN) {
    digitalWrite(LED_PIN, HIGH);      // CO above baseline -> alarm
    digitalWrite(BUZZER_PIN, HIGH);
  } else {
    digitalWrite(LED_PIN, LOW);
    digitalWrite(BUZZER_PIN, LOW);
  }
  delay(500);
}
4

Warm up, baseline and test

Power it in fresh air and let the 2-minute warm-up set the clean-air baseline (a brand-new MQ-7 also needs a longer 24–48 h burn-in before its readings settle). Then hold a small CO source nearby in a ventilated room — the smoke from a just-blown-out match works — and the buzzer and LED should trigger. Change ALARM_MARGIN to make it more or less sensitive.

5

Important safety limits

This is a LEARNING project and, at best, a supplementary indicator — it is NOT a certified life-safety device. A hobby MQ-7 gives a relative reading, not a calibrated ppm; it drifts over time and needs regular re-baselining, and it also responds to smoke and other gases. Carbon monoxide is invisible, odourless and can be fatal: for real protection always use a UL- or EN-certified CO alarm. Never rely on this circuit to keep anyone safe.

Материалы

7

Требуемые инструменты

3
Предполагаемая сумма
То, что купил мастер. Материалы без цены вы покупаете там, где найдёте.
$7.11

Связанные чертежи

Эти чертежи делятся знаниями — техники, материалы или принципы

CC0 Общественное достояние

Этот чертёж выпущен под лицензией CC0. Вы можете свободно копировать, изменять, распространять и использовать эту работу в любых целях без запроса разрешения.

Поддержите мейкера, покупая товары через его чертёж, где он получает Комиссию мейкера установленную продавцами, или создайте новую итерацию этого чертежа и включите его как связь в свой чертёж для распределения дохода.

Обсуждение

(0)

Войти чтобы присоединиться к обсуждению

Загрузка комментариев...