Датчик MQ-2 определит концентрацию углеводородных газов (пропан, метан, н-бутан), дыма (взвешенных частиц, являющихся результатом горения) и водорода в окружающей среде.
Датчик газа MQ-2 подключается к управляющей электронике по 5 проводам. Для подключения используются два трёхпроводных шлейфа. Для быстрого подключения модуля к Iskra JS или Arduino используйте Troyka Shield. С Troyka Slot Shield можно обойтись без лишних проводов.
Для обладателей платформ Arduino выведем в Serial-порт текущее значение вредных газов в ppm
, управляя нагревателем. Для запуска примера скачайте и установите библиотеку TroykaMQ.
// библиотека для работы с датчиками MQ (Troyka-модуль) #include <TroykaMQ.h> // имя для пина, к которому подключен датчик #define PIN_MQ2 A0 // имя для пина, к которому подключен нагреватель датчика #define PIN_MQ2_HEATER 13 // создаём объект для работы с датчиком // и передаём ему номер пина выходного сигнала и нагревателя MQ2 mq2(PIN_MQ2, PIN_MQ2_HEATER); void setup() { // открываем последовательный порт Serial.begin(9600); // включаем нагреватель mq2.heaterPwrHigh(); Serial.println("Heated sensor"); } void loop() { // если прошёл интервал нагрева датчика // и калибровка не была совершена if (!mq2.isCalibrated() && mq2.heatingCompleted()) { // выполняем калибровку датчика на чистом воздухе mq2.calibrate(); // выводим сопротивление датчика в чистом воздухе (Ro) в serial-порт Serial.print("Ro = "); Serial.println(mq2.getRo()); } // если прошёл интервал нагрева датчика // и калибровка была совершена if (mq2.isCalibrated() && mq2.heatingCompleted()) { // выводим отношения текущего сопротивление датчика // к сопротивлению датчика в чистом воздухе (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); } }
К платам Arduino c 5 вольтовой логикой датчик можно подключить используя всего один трёхпроводной шлейф. Для этого установите перемычку на разъём «выбор питания нагревателя».
Выведем в Serial-порт текущее значение вредных газов в ppm
, при этом нагреватель всегда включён.
// библиотека для работы с датчиками 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 относиться к полупроводниковым приборам. Принцип работы датчика основан на изменении сопротивления тонкопленочного слоя диоксида олова SnO2 при контакте с молекулами определяемого газа. Чувствительный элемент датчика состоит из керамической трубки с покрытием Al2O3 и нанесенного на неё чувствительного слоя диоксида олова. Внутри трубки проходит нагревательный элемент, который нагревает чувствительный слой до температуры, при которой он начинает реагировать на определяемый газ. Чувствительность к разным газам достигается варьированием состава примесей в чувствительном слое.
В сенсоре предусмотрено два режима работы, переключаемых джампером.
GND
микроконтроллера.5V
GND
микроконтроллера..