Датчик дыма для ардуино широко применяется в различных технических проектах. Датчик дыма MQ-2 разработан для детектирования в воздухе различных газов. Можно обнаружить такие газы как: нефтяной газ, дым (твердые частицы образованные горением), испарения алкоголя, газы пропана, водорода, метана и угарный газ.
По своей сути, датчик газов MQ-2 является химическим резистором. Принцип работы датчика следующий: при превышении концентрации определяемого газа, чувствительный элемент датчика вступает в химическую реакцию. В результате этой реакции сопротивление модуля меняется. С помощью электрической схемы оно переводится в напряжение, поступая на аналоговый контакт.
Данный датчик можно приобрести в виде отдельного сенсора или модуля датчика для ардуино. В данной статье рассмотрим модуль датчика дыма MQ-2.
Данный модуль датчика дыма имеет 6 контактов подключения.
В первую группу входят:
Сигнальная линия от датчика (S) — аналоговый выход.
VDD (V) — Питание модуля 5V.
GND (G) — Земля.
К второй группе относятся:
Сигнал к датчику (E) — Данный сигнал управляет питанием нагревательного элемента. Подключается к цифровому выходу ардуина.
VCC (H) — Питание нагревательного элемента 5V.
GND(G) —земля.
Установив перемычку в место выбора режима, можно установить режим работы нагревателя:
- Постоянно включен;
- Управление программным кодом.
Датчик дыма Arduino : пример программы
Для работы датчика дыма MQ2 будем использовать библиотеку TroykaMQ.
// библиотека для работы с датчиками MQ (Troyka-модуль)
#include <TroykaMQ.h>
//имя для пина, к которому подключен датчик
#define PIN_MQ2 A0
// создаём объект для работы с датчиком и передаём ему номер пина
MQ2 mq2(PIN_MQ2);
void setup()
{
// открываем последовательный порт
Serial.begin(9600);
// перед калибровкой датчика прогрейте его 60 секунд
// выполняем калибровку датчика на чистом воздухе
mq2.calibrate();
// выводим сопротивление датчика в чистом воздухе (Ro) в serial-порт
Serial.print("Ro = ");
Serial.println(mq2.getRo());
}
void loop()
{
// выводим отношения текущего сопротивление датчика
// к сопротивлению датчика в чистом воздухе (Rs/Ro)
Serial.print("Ratio: ");
Serial.print(mq2.readRatio());
// выводим значения газов в ppm
Serial.print("LPG: ");
Serial.print(mq2.readLPG());
Serial.print(" ppm ");
Serial.print(" Methane: ");
Serial.print(mq2.readMethane());
Serial.print(" ppm ");
Serial.print(" Smoke: ");
Serial.print(mq2.readSmoke());
Serial.print(" ppm ");
Serial.print(" Hydrogen: ");
Serial.print(mq2.readHydrogen());
Serial.println(" ppm ");
delay(100);
}
Документация
Где купить?
- Датчик MQ-2 на Алиэкспресс
- Модуль датчика MQ-2 на Алиэкспресс





