Интернет-магазин «Неглупый Дом»
MQ-6, в отличие от более универсального MQ-2, чувствителен к пропану, бутану и изобутану — бытовому газу и аэрозолям. Показания выводятся на LCD1602 в реальном времени, а не просто включают зуммер по порогу.
MQ-6 — резистивный сенсор: сопротивление чувствительного слоя падает при контакте с целевыми газами. `analogRead()` растёт при росте концентрации, но это относительный уровень, не калиброванный ppm — для точных ppm нужна калибровка по известной концентрации.
У датчиков MQ есть нагревательный элемент, которому нужен прогрев: первые минуты после включения показания нестабильны и завышены, полная стабилизация происходит ощутимо дольше.
Так как реализации данного модуля бывают разные, если у вас на плате нет тех контактов, которые указаны ниже — сориентируйтесь по названиям контактов на своей плате.
// ВНИМАНИЕ: рекомендую отладить код через монитор порта, я языковая
// модель, а не специализированный кодер, могу что-то упустить.
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
const int MQ6_PIN = A0;
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("MQ-6 прогрев...");
delay(2000);
lcd.clear();
}
void loop() {
int raw = analogRead(MQ6_PIN); // относительный уровень, не ppm
lcd.setCursor(0, 0);
lcd.print("Gas lvl: ");
lcd.print(raw);
lcd.print(" ");
int bars = map(raw, 0, 1023, 0, 16);
lcd.setCursor(0, 1);
for (int i = 0; i < 16; i++) {
lcd.print(i < bars ? "#" : "-");
}
Serial.println(raw);
delay(500);
}
Библиотека LiquidCrystal_I2C ставится через Менеджер библиотек. Если дисплей не откликается — проверьте адрес I2C сканером (часто 0x27 или 0x3F).
Ещё модули для Arduino: Электронные модули.
🎁 Купить весь комплект со скидкой 10%
Все 2 товара сразу: 348 ₽ 313 ₽ (экономия 35 ₽)
Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.
Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.