🛒
0 товаров
0 руб.

Интернет-магазин «Неглупый Дом»


💨 Проект: газосигнализатор на MQ-2 с автовентиляцией

Схема газосигнализатора на MQ-2, реле и зуммере

MQ-2 реагирует на дым и бытовой газ, а при превышении порога Arduino включает и звуковой сигнал, и реле вытяжного вентилятора.

Как это работает

MQ-2 — газоанализатор на полупроводниковом чувствительном элементе: внутри металлического корпуса датчика находится небольшой нагревательный элемент и слой материала (диоксид олова), электрическое сопротивление которого меняется в присутствии определённых газов — дыма, пропана, бутана, метана и паров некоторых других горючих веществ. Чем выше концентрация газа в воздухе рядом с датчиком, тем сильнее меняется его сопротивление, а значит — меняется и напряжение на аналоговом выходе AO, которое Arduino считывает как число от 0 до 1023.

Важная особенность датчиков серии MQ — им требуется "прогрев": нагревательному элементу нужно какое-то время выйти на рабочую температуру, и в первые минуты после включения показания нестабильны и завышены. Именно поэтому порог срабатывания (`threshold`) нельзя жёстко прописать "на глаз" — его нужно подобрать индивидуально для конкретного экземпляра датчика и условий помещения, уже после прогрева.

Пошаговая сборка

Так как реализации данного модуля бывают разные, если у вас на плате нет тех контактов, которые указаны ниже — сориентируйтесь по названиям контактов на своей плате.

  1. Подключите MQ-2: AO (аналоговый выход) → A0, VCC → 5V, GND → GND.
  2. Подключите активный зуммер: сигнальный контакт → D8, второй контакт → GND.
  3. Подключите модуль реле вентилятора: сигнал → D7, VCC и GND — к 5V и GND Arduino. Сам вентилятор/вытяжку подключайте к силовым контактам реле (COM/NO) отдельно, по инструкции конкретного устройства.
  4. После первого включения дайте датчику прогреться минимум несколько минут (по паспорту многих MQ-датчиков рекомендуется 24-48 часов для полной стабилизации, но для учебного проекта обычно достаточно 2-5 минут, чтобы значения перестали "плыть").

Скетч

// ВНИМАНИЕ: рекомендую отладить код через монитор порта, так как я языковая
// модель, а не специализированный кодер, и могу что-то упустить. Основу
// и идею я накидал, но проверьте под свою схему.

const int gasPin = A0;      // аналоговый выход датчика MQ-2
const int buzzerPin = 8;    // пин зуммера
const int relayPin = 7;     // пин управления реле вентилятора
const int threshold = 400;  // подберите под свой датчик после прогрева

void setup() {
  pinMode(buzzerPin, OUTPUT);
  pinMode(relayPin, OUTPUT);
  Serial.begin(9600); // монитор порта нужен, чтобы подобрать порог threshold
}

void loop() {
  int value = analogRead(gasPin); // читаем аналоговое значение с датчика (0-1023)
  Serial.println(value);          // выводим для подбора порога

  if (value > threshold) {
    digitalWrite(buzzerPin, HIGH); // превышение — включаем сигнал
    digitalWrite(relayPin, HIGH);  // и вентилятор
  } else {
    digitalWrite(buzzerPin, LOW);
    digitalWrite(relayPin, LOW);
  }

  delay(500); // пауза между измерениями
}

Датчику нужно несколько минут прогрева после включения, прежде чем показания станут стабильными — порог `threshold` подбирайте только после прогрева, наблюдая за значениями в Serial-мониторе.

Частые проблемы

Как улучшить проект

Товары по теме

Ещё модули для Arduino: Электронные модули.

← 🚗 парковочный радар на HC-SR04🍺 алкотестер на MQ-3 с выводом на LCD1602 →

🎁 Купить весь комплект со скидкой 10%

Все 3 товара сразу в корзину: 292 ₽ 263 ₽ (экономия 29 ₽)

Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.

Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.

Корзина


Поиск



Пример: понижающий или DC-DC или mini360 или aw-023 или арт. OZ/WB/YA