Интеграция датчиков газа MQ-* (MQ-2, MQ-135, MQ-7) с AI-агентом ASI Biont: удаленный мониторинг и автоматизация без кода

Введение

Датчики газа серии MQ (MQ-2, MQ-135, MQ-7, MQ-9) — одни из самых популярных сенсоров для обнаружения утечек метана, пропана, угарного газа, дыма и оценки качества воздуха в умном доме, гараже или на производстве. Однако их потенциал часто ограничен: данные выводятся на локальный дисплей или отправляются в простую IoT-панель. Чтобы по-настоящему автоматизировать реакцию (включение вентиляции, отправка тревоги в Telegram, логирование в базу данных), требуется писать код, настраивать серверы и разбираться в протоколах. AI-агент ASI Biont решает эту проблему: он подключается к датчику через микроконтроллер (ESP32/Arduino) по MQTT или COM-порту, сам пишет код интеграции и управляет сценариями через обычный диалог в чате. В этой статье мы разберем, как подключить датчик MQ-* к ASI Biont, настроить мониторинг и автоматизировать действия без единой строки ручного кода.

Что такое датчики MQ-* и зачем их подключать к AI-агенту?

Датчики MQ- — это полупроводниковые сенсоры, изменяющие сопротивление при контакте с определенными газами:
-
MQ-2 — метан, пропан, дым (чувствительность 300–10000 ppm).
-
MQ-135 — аммиак, бензол, CO2 (качество воздуха).
-
MQ-7 — угарный газ (CO).
-
MQ-9* — метан, пропан, угарный газ.

Они подключаются к аналоговому пину микроконтроллера (ESP32, Arduino) через напряжение 5 В. Микроконтроллер оцифровывает сигнал (0–1023 или 0–4095 для ESP32) и передает его по UART, MQTT или HTTP. Без AI-агента данные остаются «сырыми» — их нужно преобразовывать в ppm, анализировать тренды и вручную писать триггеры. ASI Biont берет на себя всю логику: он получает данные, конвертирует их в значения концентрации, сравнивает с порогами и принимает решения (уведомление, команда на реле, запуск вентилятора).

Как ASI Biont подключается к датчику MQ-*

ASI Biont использует два основных способа для интеграции с датчиками газа:

  1. MQTT (через paho-mqtt) — если микроконтроллер (ESP32 с Wi-Fi) публикует данные в топик MQTT-брокера (например, Mosquitto на Raspberry Pi). ASI Biont подписывается на топик, получает JSON с показаниями и анализирует их.
  2. COM-порт через Hardware Bridge — если микроконтроллер (Arduino Uno, ESP32 без Wi-Fi) подключен к ПК по USB. Пользователь запускает bridge.py на своем компьютере, который соединяется с ASI Biont через WebSocket, и AI отправляет команды на чтение аналоговых пинов.

Почему именно эти способы? Для датчиков газа MQ-* не требуется промышленный протокол (Modbus, OPC UA) — достаточно простого последовательного чтения. MQTT удобен для удаленного мониторинга через интернет, а COM-порт — для локальных проектов с Arduino. ASI Biont сам выбирает метод на основе описания пользователя.

Сценарий: ESP32 + MQ-135 + ASI Biont — мониторинг качества воздуха и автоматизация вентиляции

Постановка задачи

Вы хотите отслеживать качество воздуха в гостиной с помощью датчика MQ-135, подключенного к ESP32. Если концентрация CO2 или вредных газов превышает порог, нужно включить вытяжку (через реле) и отправить уведомление в Telegram. Все это без написания кода вручную.

Шаг 1. Подготовка устройства

На ESP32 загружается прошивка, которая каждые 10 секунд считывает аналоговый сигнал с пина GPIO34 (ADC) и отправляет его по MQTT:

# Микропрограмма для ESP32 (MicroPython)
import network
import time
from umqtt.simple import MQTTClient
from machine import Pin, ADC

WIFI_SSID = "your_wifi"
WIFI_PASS = "your_pass"
MQTT_BROKER = "192.168.1.100"  # IP брокера
TOPIC = "home/air_quality/mq135"

adc = ADC(Pin(34))
adc.atten(ADC.ATTN_11DB)  # 0-3.3V -> 0-4095

wifi = network.WLAN(network.STA_IF)
wifi.active(True)
wifi.connect(WIFI_SSID, WIFI_PASS)
while not wifi.isconnected():
    time.sleep(0.5)

client = MQTTClient("esp32_mq135", MQTT_BROKER)
client.connect()

while True:
    raw = adc.read()
    # Простая конвертация в ppm (калибровка зависит от датчика)
    ppm = (raw / 4095.0) * 1000  # примерный диапазон 0-1000 ppm
    payload = f'{{"raw": {raw}, "ppm": {ppm:.2f}}}'
    client.publish(TOPIC, payload)
    time.sleep(10)

Шаг 2. Подключение ASI Biont через чат

Пользователь описывает задачу в диалоге с ASI Biont:

«Подключись к MQTT-брокеру 192.168.1.100:1883, подпишись на топик home/air_quality/mq135. Получай JSON с полями raw и ppm. Если ppm > 500, отправь уведомление в Telegram на мой канал @my_channel и опубликуй команду home/ventilation/control с payload {"state": "on"}. Логируй все данные в PostgreSQL базу данных air_quality.»

AI автоматически генерирует и выполняет Python-скрипт в sandbox-окружении:

import paho.mqtt.client as mqtt
import json
import requests
import psycopg2
from datetime import datetime

# Настройки
BROKER = "192.168.1.100"
PORT = 1883
TOPIC = "home/air_quality/mq135"
TELEGRAM_TOKEN = "your_token"
TELEGRAM_CHAT = "@my_channel"
DB_HOST = "localhost"
DB_NAME = "air_quality"
DB_USER = "user"
DB_PASS = "pass"
THRESHOLD = 500.0

conn = psycopg2.connect(host=DB_HOST, dbname=DB_NAME, user=DB_USER, password=DB_PASS)
cur = conn.cursor()

def on_message(client, userdata, msg):
    data = json.loads(msg.payload)
    ppm = data["ppm"]
    timestamp = datetime.now()

    # Логирование в БД
    cur.execute("INSERT INTO readings (timestamp, ppm) VALUES (%s, %s)", (timestamp, ppm))
    conn.commit()

    # Проверка порога
    if ppm > THRESHOLD:
        # Уведомление в Telegram
        text = f"⚠️ Внимание! Концентрация газов превышает норму: {ppm:.2f} ppm"
        requests.post(f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage",
                      json={"chat_id": TELEGRAM_CHAT, "text": text})
        # Команда на включение вентиляции (через MQTT publish)
        client.publish("home/ventilation/control", '{"state": "on"}')

mqtt_client = mqtt.Client()
mqtt_client.on_message = on_message
mqtt_client.connect(BROKER, PORT, 60)
mqtt_client.subscribe(TOPIC)
mqtt_client.loop_forever()  # Примечание: в sandbox используется asyncio для избежания бесконечного цикла

Важно: В реальном sandbox ASI Biont код выполняется с таймаутом 30 секунд, поэтому для долгоживущих интеграций используется асинхронный подход с asyncio или подписка через industrial_command. AI адаптирует скрипт под ограничения среды.

Шаг 3. Результат

  • Данные с датчика поступают в PostgreSQL для исторического анализа.
  • При превышении порога AI автоматически отправляет сообщение в Telegram и включает вентиляцию.
  • Все действия происходят без участия человека — только через диалог в чате.

Альтернативный сценарий: Arduino + MQ-2 через COM-порт

Если у вас Arduino Uno без Wi-Fi, ASI Biont подключается через Hardware Bridge. Пользователь запускает bridge.py на ПК (скачивает из дашборда), указывает порт COM3 и baud rate 9600. Затем в чате пишет:

«Подключись к COM3 через bridge, читай аналоговый пин A0 каждые 5 секунд. Если значение > 800, отправь мне уведомление в Telegram.»

AI использует industrial_command с протоколом serial: serial_write_and_read(data="READ_A0\n"). Микроконтроллер отвечает строкой "A0: 723", AI парсит ответ и проверяет условие.

Преимущества интеграции с ASI Biont

Параметр Традиционный подход С ASI Biont
Время настройки Часы — дни (писать код, отлаживать) Минуты (описать задачу в чате)
Необходимые навыки Знание Python, MQTT, SQL, Telegram API Умение описать задачу словами
Гибкость Нужно переписывать код при изменении требований Изменить условие в чате — AI перепишет код
Интеграция с другими сервисами Ручная настройка каждого AI подключает Telegram, БД, реле одной командой

Заключение

Датчики газа MQ-* — это доступный и эффективный способ контролировать безопасность и качество воздуха. Интеграция с AI-агентом ASI Biont превращает их из простых сенсоров в интеллектуальную систему мониторинга с автоматическими реакциями: уведомления, управление вентиляцией, логирование данных. Вам не нужно писать код — просто опишите задачу в чате, и AI сам подключится к устройству через MQTT или COM-порт, настроит все сценарии и будет следить за показаниями. Попробуйте интеграцию на asibiont.com уже сегодня — подключите свой датчик газа и убедитесь, насколько это просто.

← Все статьи

Комментарии

Читайте также

Banana Pi + ASI Biont: AI-агент для умного дома без дорогих контроллеров — пошаговый гайд по интеграции

19 июля 2026

Освойте административное право с ИИ: почему курс «Административное право РФ (КоАП)» на Asibiont.com — ваше конкурентное преимущество в 2026 году

19 июля 2026

Промышленный RS-485 под контролем AI: пошаговый гайд по интеграции с ASI Biont

19 июля 2026

Бананы зацвели в саду Рэли (Великобритания) спустя 15 лет: что это говорит о климатических сдвигах и технологиях автоматизации

19 июля 2026

Пожарная безопасность: как онлайн-курс на Asibiont помогает защитить бизнес и жизнь

19 июля 2026

Rust — системное программирование: почему этот курс меняет рынок труда в 2026 году

19 июля 2026

10 промтов для генерации JavaScript и TypeScript кода: React, Node.js, утилиты

19 июля 2026

Революция в автоматизации платежей: Как AI-агент ASI Biont интегрируется с Т-Банком (Тинькофф) в 2026 году

19 июля 2026

Посмотрел, как современные дейтинг-приложения обращаются с данными и нежелательным контентом: разбор подходов и уроков

19 июля 2026