Телефон
8(927)943-43-68
(пн.-пт. 08:00-16:00)
электронная почта
Магазин
Новинки
Проекты
Оплата
Доставка
Как заказать
Акции
Гарантии
Контакты
Каталог
Способы оплаты

Просмотренные
Главная > Проекты > Подключение датчика газа MQ-2 к Arduino

Подключение датчика газа MQ-2 к Arduino

Датчик газа MQ-2 позволяет регистрировать концентрацию таких газов как водород, дым и горючие углеводородные газы (метан, пропан, бутан). Датчик относится к распространенному семейству датчиков MQ. Это семейство датчиков, благодаря своей низкой стоимости и простоте использования завоевало популярность. Датчик имеет аналоговый и цифровой выход. На цифровой выход сигнал подается при превышении определенного порога концентрации газа, который настраивается подстроечным резистором. Датчик прост в подключении, имеет высокую чувствительность и малое время отклика.

Датчик дыма MQ-2

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

Применяют датчики MQ-2 в системах умного дома, в системах обнаружения газа или дыма на промышленных или частных объектах, в автомобильных вентиляционных фильтрах и т.д.

Характеристики

  • Напряжение питания: 5В;
  • Потребляемый ток (ток нагревателя): 180мА;
  • Диапазон чувствительности 300-10000 ppm;
  • Газ, для которого нормируется датчик: изобутан, 1000ppm;
  • Время отклика: менее 10 с;
  • Рабочая температура: от -10 до +50 °C;
  • Рабочая влажность воздуха: не более 95% RH;
  • Интерфейс: аналоговый и цифровой;

Принцип работы

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

Концентрация газа измеряется в ppm. Она расшифровывается, как parts per million (частей на миллион). Таким образом 1ppm соответствует концентрации в 0,0001%. Что бы получить точное значение измеренной концентрации газа ppm, необходимо выполнить сложное нелинейное преобразование напряжения на аналоговом выходе датчика по таблицам преобразования из документации на датчик, с учетом температуры окружающего воздуха.

С помощью потенциометра можно изменять порог чувствительности цифрового выхода датчика. Имейте ввиду что для разных газов порог чувствительности будет не один и тот же.

Индикаторы, расположенные на датчике, уведомляют нас подключенном питании и превышении порога чувствительности цифрового выхода.

Подключение

Подключить датчик можно к плате Arduino или напрямую к модулю реле. В первом случае используется аналоговый выход А0 датчика, который подключают к аналоговому входу на плате Arduino. В случае с реле используют цифровой выход датчика.

Датчик газа MQ

Внимание. Не подавайте на датчик напряжение питания более 5В, избегайте попадания влаги и щелочи на газоанализатор, избегайте обморожения датчика при очень низких температурах.

Схема подключения представлена на картинке ниже:

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

Программный код для Arduino IDE

Пример исходного кода проверки работоспособности датчика для Arduino представлен ниже. Код выводит в монитор порта текущее значение АЦП аналогового входа и информацию о превышении порогового значения. В строчке кода #define smokePin A0 вы можете задать номер пина Arduino, к которому подключен аналоговый выход датчика. Пороговое значение концентрации газа в воздухе вы можете задать самостоятельно.


#define smokePin A0    // определяем аналоговый выход к которому подключен датчик
int sensorThres = 400; // пороговое значение АЦП, при котором считаем что газ есть

void setup() {
  Serial.begin(9600);   // Устанавливаем скорость порта 9600 бод
}

void loop() {
  int analogSensor = analogRead(smokePin);    // считываем значения АЦП с аналогового входа
                                              // к которому подключен датчик 
  Serial.print (analogSensor);                // выводим в порт значение АЦП сигнала с датчика
  
  // Проверяем, достигнуто ли пороговое значение
  if (analogSensor > sensorThres) {  // если значение больше допустимого...
    Serial.println(" Gaz!");         // выводим в порт надпись, что газ есть
  }
  else {                             // иначе...
   Serial.println(" normal");        // выводим в порт надпись, что газа нет
  }
  delay(500);  // задержка в 500 миллисекунд.
}

Товары, используемые в проекте

Корзина покупок
Список пуст

Отзывы
Отзыв
Сергей, Самара

Все доставили в лучшем виде и быстро. Забирал на складе СДЭК. Все упаковано в антистатику, затем в пузырчатую пленку и еще сверху в коробку. Не побилось ни чего.

Отзыв
Константин, Волгоград

Купил комплектующие для сборки робота. Оплачено было прямо на сайте картой. Быстро отправили, почта на этот раз хорошо сработала, что удивительно

Отзыв
Михаил, Москва

Привезли макетки, все достойно упаковано, ничего не сломано. Можно покупать, если надо быстро.

Отзыв
Игорь Васильевич, Казань

Работаем с магазином по безналу очень давно. Хочу отметить быструю реакцию менеджера Евгения на наши запросы, а так же своевременную отгрузку товаров. Рекомендую магазин MCU Store для покупок комплектующих с быстрой доставкой по России.

Читайте отзывы покупателей и оценивайте качество магазина на Яндекс.Маркете