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

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


🧯 Проект: автоматическое отключение газового клапана при утечке на датчике MQ-6

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

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

Принцип обнаружения такой же, как и в проекте с LCD: MQ-6 чувствителен к парам пропана, бутана и похожих горючих газов, выдавая на аналоговом выходе напряжение, растущее с концентрацией этих газов в воздухе. Разница — в реакции кода на это значение: вместо постоянного отображения числа на экране код один раз проверяет, не превышено ли безопасное пороговое значение, и если да — немедленно отключает реле и держит его в этом состоянии.

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

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

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

  1. MQ-6: аналоговый выход (A0 на самом модуле) → A0 Arduino, VCC → 5V, GND → GND. Датчику требуется время прогрева нагревателя (от десятков секунд до нескольких минут) перед стабильными показаниями.
  2. Модуль реле: сигнальный вход → D4, VCC → 5V, GND → GND.
  3. Клапан или прибор подключайте через контакты COM/NO реле строго по инструкции модуля — эта часть схемы работает с реальным напряжением прибора и должна быть собрана аккуратно и изолированно.

Скетч

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

const int SENSOR_PIN = A0;
const int RELAY_PIN = 4;
const int GAS_THRESHOLD = 400; // подберите по месту после прогрева датчика

bool tripped = false;

void setup() {
  Serial.begin(9600);
  pinMode(RELAY_PIN, OUTPUT);
  digitalWrite(RELAY_PIN, HIGH); // прибор включён в обычном режиме

  Serial.println("Прогрев датчика MQ-6...");
  delay(60000); // минимальный прогрев, для надёжных показаний может требоваться больше времени
}

void loop() {
  if (tripped) {
    digitalWrite(RELAY_PIN, LOW);
    return;
  }

  int level = analogRead(SENSOR_PIN);
  Serial.print("Уровень газа: ");
  Serial.println(level);

  if (level > GAS_THRESHOLD) {
    tripped = true;
    digitalWrite(RELAY_PIN, LOW);
    Serial.println("УТЕЧКА ГАЗА! Клапан/прибор отключён.");
  }

  delay(500);
}

Дополнительных библиотек не требуется — только `analogRead()`. Как и в других защитных проектах, после срабатывания прибор остаётся отключённым до перезагрузки Arduino — это осознанное решение безопасности.

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

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

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

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

← 📡 удалённый мониторинг энергопотребления на …🚦 автоматическая остановка конвейера по датч… →

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

Все 2 товара сразу в корзину: 226 ₽ 203 ₽ (экономия 23 ₽)

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

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

Корзина


Поиск



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