Мобильная версия Форум Arduino Документация Гарантийные условия 0 0
UA RU
График работы магазина:
Пн-Пт: 8.00 - 19.00
Сб: 10.00 - 17.00
Вс: выходной
Каталог
Напиши статью и получи скидку!

Модуль датчика газа MQ-7

код: DAT182

  • Доставка по Украине
    Мы отправляем заказы "Новой Почтой" по Украине. Также возможен самовывоз из нашего магазина
  • 6 месяцев гарантии

    Мы даем гарантию на любой товар приобретенный в нашем магазине:

    6 месяцев на товары, кроме батареек и аккумуляторов

    14 дней на батарейки и аккумуляторы

    В случае наступления гарантийного случая товар бесплатно ремонтируется, меняется на аналогичный или возвращается полная сумма его стоимости

    Внимательно ознакомьтесь с условиями гарантии
  • Проконсультируем до и после продажи.
    Вы можете задавать вопросы письменно по e-mail или по контактным телефонам нашего магазина
67 грн с НДС

в наличии

 

Купить в один клик

11
голосовать
Нашли дешевле?
  • Модуль датчика газа MQ-7
  • Модуль датчика газа MQ-7
  • Модуль датчика газа MQ-7
  • Модуль датчика газа MQ-7
  • Описание
  • Отзывы (17)
  • Задать вопрос

Модуль датчика газа MQ-7 служит для определения угарного газа.

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

  • Датчик: MQ-7
  • Детектируемый газ: угарный газ
  • Рабочее напряжение нагревателя: от 1,4 В до 5 В
  • Потребляемая нагревателем мощность: 350 мВт
  • Нагрузочное сопротивление: 10 К (регулируемое)
  • Обнаружение концентрации газа: 10-1000 ppm
  • Время разогрева: от 60 (напряжение подогревателя 5В) до 90 секунд (для напряжения подогревателя 1,4В)
  • Рабочая температура:-10 ~ 50 градусов (номинальная температура: 20 градусов)
  • Рабочая влажность: 95% RH (номинальный влажность: 65% rh)
  • Срок службы: 5 лет
  • Размер: 35x20x11 мм
  • Вес нетто: 4.8 г

Ссылки:

Отзывы покупателей про Модуль датчика газа MQ-7

Павел (24.12.2025)

Использование библиотеки MQUnifiedsensor для MQ-7 на ESP32 позволяет автоматизировать расчеты PPM, но требует ручного управления циклами нагрева (5В и 1.4В), так как ESP32 сам по себе не меняет напряжение питания. 
Схема подключения (2025):

Для реализации двух режимов вам понадобится транзистор (MOSFET), подключенный к PWM-пину ESP32, чтобы регулировать среднее напряжение на нагревателе. 
VCC датчика: к внешним 5В.
GND датчика: к Drain (стоку) MOSFET.
Gate (затвор) MOSFET: к PWM_PIN (например, GPIO 25).
A0 датчика: к ADC_PIN (например, GPIO 34). 

Код с использованием MQUnifiedsensor , *.cpp :


#include

#define Board "ESP32"
#define Voltage_Resolution 3.3 // Напряжение логики ESP32
#define Pin 34 // Аналоговый пин ADC1
#define Type "MQ-7" // Тип датчика
#define ADC_Bit_Resolution 12 // Разрешение АЦП ESP32
#define RatioMQ7CleanAir 27.5 // Коэффициент для чистого воздуха
#define PWM_PIN 25 // Пин управления нагревателем

MQUnifiedsensor MQ7(Board, Voltage_Resolution, ADC_Bit_Resolution, Pin, Type);

unsigned long previousMillis = 0;
bool isHighHeating = true; // Текущая фаза: true - 5В, false - 1.4В

void setup() {
Serial.begin(115200);
pinMode(PWM_PIN, OUTPUT);

// Настройка параметров библиотеки (экспоненциальная модель для CO)
MQ7.setRegressionMethod(1);
MQ7.setA(99.042); MQ7.setB(-1.518);
MQ7.init();

Serial.println("Разминка датчика...");
}

void loop() {
unsigned long currentMillis = millis();

if (isHighHeating) {
// РЕЖИМ 1: Очистка (5В / 60 сек) - ШИМ 100%
analogWrite(PWM_PIN, 255);
if (currentMillis - previousMillis >= 60000) {
isHighHeating = false;
previousMillis = currentMillis;
Serial.println("Фаза измерения (1.4В)...");
}
} else {
// РЕЖИМ 2: Измерение (1.4В / 90 сек) - ШИМ ~28% (1.4/5.0 * 255 ≈ 71)
analogWrite(PWM_PIN, 71);

// Считываем показания только в самом конце цикла 90 сек
if (currentMillis - previousMillis >= 85000 && currentMillis - previousMillis < 86000) {
MQ7.update(); // Обновление данных из АЦП
float ppm = MQ7.readSensor();
Serial.print("Концентрация CO: ");
Serial.print(ppm);
Serial.println(" ppm");
}

if (currentMillis - previousMillis >= 90000) {
isHighHeating = true;
previousMillis = currentMillis;
Serial.println("Фаза очистки (5В)...");
}
}
}

Используйте код с осторожностью!
Поправьте строки в скетче, если они подверглись автопереносу, при копи-паст...

Основные моменты:
Калибровка:
Для точной работы запустите цикл MQ7.calibrate() только после того, как датчик проработает 48 часов в режиме циклического нагрева.
ШИМ (PWM): Значение 71 для 1.4В является расчетным (
). В реальности проверьте вольтметром напряжение на ножках нагревателя и подкорректируйте это число.
АЦП: ESP32 имеет нелинейный АЦП. Для повышения точности библиотека MQUnifiedsensor использует внутренние таблицы, но рекомендуется использовать пины ADC1 (GPIO 32-39), так как ADC2 отключается при работе Wi-Fi. 

Ответить

Павел (23.12.2025)

Рекомендую для газовых датчиков Библиотеку - MQUnifiedsensor . В ней отработаны множество датчиков....

Пример КОДа для MQ-7 для ESP32:

#include
#define Board "ESP-32"
#define Pin 34
#define Type "MQ-7"
#define Voltage_Resolution 3.3
#define ADC_Bit_Resolution 12
#define RatioMQ7CleanAir 27.5 // Коэффициент для чистого воздуха

MQUnifiedsensor MQ7(Board, Voltage_Resolution, ADC_Bit_Resolution, Pin, Type);

void setup() {

Serial.begin(115200);
MQ7.setRegressionMethod(1); // _PPM_ = a*ratio^-b
MQ7.setA(99.042);
MQ7.setB(-1.518); // Параметры из даташита для CO
MQ7.init();
Serial.print("Калибровка...");
float calcR0 = 0;
for(int i = 1; i<=10; i++) {
MQ7.update();
calcR0 += MQ7.calibrate(RatioMQ7CleanAir);
}
MQ7.setR0(calcR0/10);
Serial.println(" Готово!");

}
void loop(){

MQ7.update();
float ppm = MQ7.readSensor();
Serial.print("Концентрация CO: ");
Serial.print(ppm);
Serial.println(" PPM");
delay(2000);
}

Ответить

Павел (18.12.2025)

Для реализации правильного цикла нагрева MQ-7 (60с при 5В и 90с при 1.4В) на ESP32-C3, вам понадобится N-канальный MOSFET-транзистор (например, 2N7000 или IRLZ44N), так как пин контроллера не выдаст нужный ток и напряжение.
Схема подключения с транзистором:
VCC датчика: К +5В питания.
GND датчика: К стоку (Drain) MOSFET.
Исток (Source) MOSFET: К общему GND.
Затвор (Gate) MOSFET: К GPIO 7 (через резистор 220 Ом).
Выход AO датчика: К GPIO 0 (через делитель напряжения).
Принцип управления:
Фаза очистки (60с): Подаем полный ШИМ (255), чтобы на нагревателе было 5В.
Фаза измерения (90с): Подаем пониженный ШИМ (~71 из 255), чтобы имитировать 1.4В через среднее напряжение.
Программный код с логикой фаз:

include
#include

#define MQ7_AO_PIN 0 // Пин чтения данных (ADC)
#define MQ7_HEATER_PIN 7 // Пин управления транзистором (PWM)

U8G2_SSD1306_72X40_ER_F_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE);

unsigned long phaseStartTime = 0;
bool isHighVoltage = true; // Текущая фаза: true = 5V, false = 1.4V

void setup() {
u8g2.begin();
pinMode(MQ7_HEATER_PIN, OUTPUT);
analogReadResolution(12);
phaseStartTime = millis();
}

void loop() {
unsigned long elapsed = (millis() - phaseStartTime) / 1000;

if (isHighVoltage) {
// ФАЗА ОЧИСТКИ (60 сек, 5В)
analogWrite(MQ7_HEATER_PIN, 255); // Максимальный нагрев

displayStatus("CLEANING", 60 - elapsed, 0);

if (elapsed >= 60) {
isHighVoltage = false;
phaseStartTime = millis();
}
} else {
// ФАЗА ИЗМЕРЕНИЯ (90 сек, 1.4В)
// 255 * (1.4V / 5.0V) = примерно 71
analogWrite(MQ7_HEATER_PIN, 71);

int rawVal = analogRead(MQ7_AO_PIN);
displayStatus("READING", 90 - elapsed, rawVal);

if (elapsed >= 90) {
isHighVoltage = true;
phaseStartTime = millis();
}
}
}

void displayStatus(String phase, int timeLeft, int value) {
u8g2.clearBuffer();
u8g2.setFont(u8g2_font_6x10_tf);

u8g2.setCursor(0, 10);
u8g2.print("Phase: " + phase);

u8g2.setCursor(0, 25);
u8g2.print("Time: "); u8g2.print(timeLeft); u8g2.print("s");

u8g2.setCursor(0, 40);
if (phase == "READING") {
u8g2.print("CO Raw: "); u8g2.print(value);
} else {
u8g2.print("Wait...");
}

u8g2.sendBuffer();

Ответить

Павел (17.12.2025)

Позвольте , в помощь всем, предложить метод-справка по любому датчику , в частности для MQ-7.. :
Делаете запрос в Google , например : "код MQ-7 для ESP32", и продолжаете поиск в "Режим ИИ"...
И он выдаст ВСЁ и ВСЯ , от А до Я , предложит написать КОД-скетч для Ардуино среды, где прописан алгоритм двух режимов работы , на 5 вольт и 1.4 вольта...и т.д....
Вообщем , стало жить легчее и веселее с этим ИИ.. )))

Ответить

Олег Ігорович (28.06.2022)

Вроді як працює, але достовірні дані я поки-що не отримую... як вже писали, потрібно подавати різну напргу циклами 60/90с. Цього я поки-що не зробив через свою криворукість, тому ?_(?)_/?

Ответить

Сушма Анастасія (15.11.2021)

Все, супер, все працює

Ответить

Павел (09.01.2021)

Датчик рабочий, но очень, очень капризный. Как писал ранее Богдан, корректные показания получить не так-то просто. Я установил датчик в бойлерной и он периодически сходит с ума, особенно "радует" зашкал газа при выключенном котле )) Согласен, условия суровые - броски температуры от 10 до 35, влажность от 20% до 90% (из-за сушки белья), но где ж еще мерять газ? В общем для умного дома путем простого подключения 1/0 на GPIO не годится, нужно мудрить отдельное решение с прогревом/очисткой и циклами замера... ИМО проще взять законченное решение от Tuya и перепрошить.

Ответить

Анатолий (23.06.2019)

Время разогрева: от 60 (напряжение подогревателя 5В) до 90 секунд (для напряжения подогревателя 1,4В)

Источник https://arduino.ua/prod1389-modyl-datchika-gaza-mq-7

Не совсем понятно про 1.4В - откуда их брать и куда их подключать?

Ответить

admin (24.06.2019)

Напряжение для подогревателя брать от Вашего источника и подавать на контакты подогревателя датчика.

Ответить

Avazart (23.01.2019)

""Нагреватель напряжение: 50.2 В (acdc)
Рабочее напряжение: 140mA""

Что этот бред,по вашему значит?

Ответить

admin (25.01.2019)

Описание исправили.

Ответить

Богдан (17.01.2018)

Хочу добавить, что этот сенсор не так прост в обращении как кажется. Вот некоторые ньюансы:
1) требует бережного обращения: чувствительный к сотрясению, переохлаждению, повышенной влажности, повышенной концентрации измеряемых газов.
2) неправильное подключение может вывести датчик из строя.
3) Требует циклической подачи двух напряжений: 90 секунд самоочищается (5в) и 60 секунд для измерения значений (1.5в). Просто подключить питание и измерять значения не получится.
4) Значения зависят от температуры и влажности. Поэтому в проект желательно включать датчик температуры и влажности для правильного измерения концентрации газов.
5) Требует обязательной калибровки

Ответить

Антон (06.02.2018)

По п.3. И куда его подавать? Вместо питания или на А0 или ... ?

Ответить

admin (09.02.2018)

На подогреватель датчика.

Ответить

Андрій (05.02.2019)

А де контакт підігрівача датчика, є чотири піна, VCC, GND, A0, D0. Куди подавати змінну напругу 5в/1,5в?

Ответить

admin (06.02.2019)

Подогреватель питается напряжением, подаваемым на контакты GND и VCC

Ответить

Милых Михаил (15.10.2017)

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

Ответить

Написать отзыв:

Фото:

Есть вопросы по "Модуль датчика газа MQ-7" ?

Также рекомендуем ознакомиться:

Дорогие друзья! Мы стараемся держать на сайте информацию про наличие товаров и цены на них в АКТУАЛЬНОМ состоянии. Корректировки происходят постоянно. Если вы находите цену на товар завышенной, напишите нам про это с указанием ссылки на товар. Мы рассмотрим письмо и или обоснуем цену, или подкорректируем ее. Ассортимент магазина очень большой и иногда бывают ошибки в ценообразовании, особенно при скачках курса доллара. Благодарим за понимание.
оплата картами Visa и MasterCard