Датчик угарного газа MQ7: характеристики и работа с Arduino

Датчик угарного газа MQ7: характеристики и работа с Arduino

Что измеряет датчик MQ7, почему его нужно прогревать и как подключить модуль к Arduino для индикации превышения порога.

Зачем нужен датчик CO

Угарный газ образуется, когда углеродное топливо сгорает при нехватке кислорода: вместо углекислого газа в воздух попадает CO. Он очень ядовит, при этом не имеет ни цвета, ни запаха, так что заметить его можно лишь по косвенным симптомам отравления. Датчик MQ7 рассчитан именно на этот газ и широко используется в схемах автоматизации.

Модуль датчика угарного газа MQ7

Как устроен сенсор

Главная часть MQ7 — нагревательный элемент. За счёт нагрева идёт химическая реакция, по которой и определяется концентрация газа, поэтому в работе корпус сенсора горячий. Аналоговый сигнал на выходе пропорционален содержанию CO.

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

Технические характеристики

Напряжение питания5 В
Потребляемый ток160 мА
Диапазон чувствительности10–10000 ppm
Напряжение нагревателя1,5–5 В
Время накала нагревателя60–90 с
Сопротивление нагревателя31 Ом
Мощность нагревателя350 мВт
Сопротивление датчика2–20 кОм
Рабочая температураот −10 до +50 °C
Влажностьдо 95 % RH
Габариты модуля22 × 22 × 17 мм
Вес5 г

Единица ppm означает «частей на миллион»: 1 ppm равен 0,0001 %. Для сравнения, в выхлопе бензинового двигателя доля CO может доходить до 3 %, то есть 30 000 ppm.

Выводы модуля

На плате четыре контакта с шагом 2,54 мм: VCC (питание 5 В), GND (земля), A0 и D0.

Расположение выводов модуля MQ7

A0 — аналоговый выход, его соединяют с аналоговым входом Arduino. D0 — цифровой выход: он переходит в состояние HIGH, когда концентрация газа превышает заданный порог. Порог подстраивается резистором на плате, хотя заводская калибровка у модуля уже есть.

Пример со светодиодом

В простом проекте светодиод сигнализирует о превышении уровня CO. Понадобятся плата Arduino, макетная плата, датчик MQ7, светодиод, резистор 220 Ом и провода.

Схема подключения MQ7 и светодиода к Arduino

Аналоговый выход датчика подключён к входу A0, светодиод — к выводу 8. При запуске скетч выводит в порт сообщение о прогреве и ждёт 60 секунд, после чего начинает измерения. Каждые 5 секунд значение считывается через analogRead и сравнивается с порогом highLevel, равным 150: при превышении светодиод загорается, иначе гаснет. Прочитанное значение отправляется в последовательный порт на скорости 9600.

Показания MQ7 в мониторе последовательного порта

Возможные неполадки

  • В мониторе порта нет данных — следует проверить подключение датчика.
  • Показания явно завышены — новый сенсор нужно прогреть в течение 48 часов и выполнить калибровку.

← Все статьи