====== Датчик сжиженного нефтяного газа MQ-6 ====== [[amp>product/troyka-mq6-gas-sensor?utm_source=man&utm_campaign=mqgas&utm_medium=wiki|Датчик MQ-6]] определит концентрацию углеводородных газов.{{ :продукты:mq6:troyka-mq6-gas-sensor.1.jpg?nolink |}} ===== Видеообзор ===== {{youtube>tU1WjoE15m8?large}} ===== Подключение и настройка ===== Датчик газа MQ-6 подключается к управляющей электронике по 5 проводам. Для подключения используются два [[amp>product/3-wire-cable-digital-troyka?utm_source=man&utm_campaign=mqgas&utm_medium=wiki|трёхпроводных шлейфа]]. Для быстрого подключения модуля к Iskra JS или Arduino используйте [[amp>product/arduino-troyka-shield?utm_source=man&utm_campaign=mqgas&utm_medium=wiki|Troyka Shield]]. {{ :продукты:mq6:troyka-mq6_scheme_troyka-shiled.png |}} С [[amp>product/arduino-troyka-slot-shield?utm_source=man&utm_campaign=mqgas&utm_medium=wiki|Troyka Slot Shield]] можно обойтись без лишних проводов. {{ :продукты:mq6:troyka-mq6_scheme_troyka-slot-shiled.png |}} ==== Примеры программ для Arduino ==== Для обладателей платформ Arduino выведем в Serial-порт текущее значение вредных газов в ppm, управляя нагревателем. Для запуска примера скачайте и установите библиотеку [[https://github.com/amperka/TroykaMQ|TroykaMQ]]. // библиотека для работы с датчиками MQ (Troyka-модуль) #include // имя для пина, к которому подключен датчик #define PIN_MQ6 A0 // имя для пина, к которому подключен нагреватель датчика #define PIN_MQ6_HEATER 13 // создаём объект для работы с датчиком // и передаём ему номер пина выходного сигнала и нагревателя MQ6 mq6(PIN_MQ6, PIN_MQ6_HEATER); void setup() { // открываем последовательный порт Serial.begin(9600); // включаем нагреватель mq6.heaterPwrHigh(); Serial.println("Heated sensor"); } void loop() { // если прошёл интервал нагрева датчика // и калибровка не была совершена if (!mq6.isCalibrated() && mq6.heatingCompleted()) { // выполняем калибровку датчика на чистом воздухе mq6.calibrate(); // выводим сопротивление датчика в чистом воздухе (Ro) в serial-порт Serial.print("Ro = "); Serial.println(mq6.getRo()); } // если прошёл интервал нагрева датчика // и калибровка была совершена if (mq6.isCalibrated() && mq6.heatingCompleted()) { // выводим отношения текущего сопротивление датчика // к сопротивлению датчика в чистом воздухе (Rs/Ro) Serial.print("Ratio: "); Serial.print(mq6.readRatio()); // выводим значения газов в ppm Serial.print("LPG: "); Serial.print(mq6.readLPG()); Serial.println(" ppm "); delay(100); } } К платам Arduino c 5 вольтовой логикой датчик можно подключить используя всего один [[amp>product/3-wire-cable-digital-troyka?utm_source=man&utm_campaign=mqgas&utm_medium=wiki|трёхпроводной шлейф]]. Для этого установите перемычку на разъём «выбор питания нагревателя». {{ :продукты:mq6:troyka-mq6_scheme_troyka-shiled_without_heater.png |}} Выведем в Serial-порт текущее значение вредных газов в ''ppm'', при этом нагреватель всегда включён. // библиотека для работы с датчиками MQ (Troyka-модуль) #include //имя для пина, к которому подключен датчик #define PIN_MQ6 A0 // создаём объект для работы с датчиком и передаём ему номер пина MQ6 mq6(PIN_MQ6); void setup() { // открываем последовательный порт Serial.begin(9600); // перед калибровкой датчика прогрейте его 60 секунд // выполняем калибровку датчика на чистом воздухе mq6.calibrate(); // выводим сопротивление датчика в чистом воздухе (Ro) в serial-порт Serial.print("Ro = "); Serial.println(mq6.getRo()); } void loop() { // выводим отношения текущего сопротивление датчика // к сопротивление датчика в чистом воздухе (Rs/Ro) Serial.print("Ratio: "); Serial.print(mq6.readRatio()); // выводим значения газов в ppm Serial.print(" LPG: "); Serial.print(mq6.readLPG()); Serial.println(" ppm "); delay(100); } ===== Элементы платы ===== {{ :продукты:mq6:troyka-mq6_annotation.png |}} ==== Датчик газа MQ-6 ==== Датчик MQ-6 относиться к полупроводниковым приборам. Принцип работы датчика основан на изменении сопротивления тонкопленочного слоя диоксида олова SnO2 при контакте с молекулами определяемого газа. Чувствительный элемент датчика состоит из керамической трубки с покрытием Al2O3 и нанесенного на неё чувствительного слоя диоксида олова. Внутри трубки проходит нагревательный элемент, который нагревает чувствительный слой до температуры, при которой он начинает реагировать на определяемый газ. Чувствительность к разным газам достигается варьированием состава примесей в чувствительном слое. ==== Выбор режима питания нагревателя ==== В сенсоре предусмотрено два режима работы, переключаемых джампером. * Нагреватель датчика постоянно включён. Таким образом можно обойтись одним трёхпроводным шлейфом. * Управление нагревателем программно. ==== Контакты подключения трёхпроводных шлейфов ==== === 1 группа === * Сигнальный (S) — Выходной сигнал сенсора. Подключите к аналоговому входу микроконтроллера. * Питание (V) — Питание датчика. Соедините с рабочим напряжением микроконтроллера. * Земля (G) — Соедините с пином ''GND'' микроконтроллера. === 2 группа === * Сигнальный (E) — Управление питанием нагревателя. Подключите к цифровому пину микроконтроллера. * Питание (H) — Питание нагревателя. Соедините с пином ''5V''. * Земля (G) — Соедините с пином ''GND'' микроконтроллера. ===== Принципиальная и монтажная схемы ===== {{:продукты:mq6:troyka-mq6_schematic.png?direct&350 |}} {{ :продукты:mq6:troyka-mq6_layout.png?direct&300|}} ===== Диапазон измерений ====== * Пропан: 200–10000 ppm * Изобутан: 200–10000 ppm ===== Характеристики ===== * Напряжение питания нагревателя: 5 В * Напряжение питания датчика: 3,3–5 В * Потребляемый ток: 150 мА * Габариты: 25,4×25,4 мм ===== Ресурсы ===== * [[amp>product/troyka-mq6-gas-sensor?utm_source=man&utm_campaign=mqgas&utm_medium=wiki|Датчик газа MQ6 (Troyka-модуль)]] в магазине. * [[https://github.com/amperka/TroykaMQ|Библиотека для Arduino]] * [[:js:gas-sensor|Описание библиотеки для Iskra JS]] * [[https://github.com/amperka/hardware-drawings/blob/master/troyka-mq6-gas-sensor.svg|Векторное изображение датчика газа MQ6 (Troyka-модуль)]] * {{:продукты:mq6:troyka-mq6_datasheet.pdf|Datasheet на датчик MQ6}} * {{:продукты:mq6:mq6_graph_factors.zip|Линейная и логарифмическая аппроксимация датчика MQ6}}