Промышленные IoT-шлюзы (Industrial IoT Gateways), такие как Siemens IOT2050, Advantech UNO-2271G или Digi IX30, занимают центральное место в современной автоматизации. Они собирают данные с десятков датчиков, контроллеров и станков по протоколам Modbus RTU/TCP, OPC UA, Profinet, а затем передают их в SCADA-системы или облачные платформы. Однако без интеллектуальной обработки накопленные телеметрии остаются «сырыми» — их нужно анализировать, находить аномалии и своевременно реагировать.
AI-агент ASI Biont позволяет превратить любой Industrial IoT Gateway в умный узел управления: он подключается к шлюзу через его нативные протоколы (MQTT, Modbus/TCP, OPC UA или HTTP API), анализирует поток данных в реальном времени и автоматически принимает решения — от отправки аварийного оповещения до изменения уставок контроллера. Всё это делается через обычный чат, без программирования сложной логики.
Зачем подключать Industrial IoT Gateway к ASI Biont?
Типичная проблема промышленной автоматизации — разрозненность данных. Датчики температуры, давления, вибрации и уровня передают показания в шлюз, но оператор или инженер вынужден вручную отслеживать тренды. При перегрузке линии или выходе параметра за пределы нормы реакция часто запаздывает. ASI Biont решает эту задачу, обеспечивая:
- Непрерывный мониторинг — AI подписывается на топики MQTT или регистры Modbus и каждые несколько секунд проверяет значения.
- Интеллектуальную фильтрацию — AI не просто логирует все данные, а выделяет критические события (например, рост температуры выше 85°C или падение давления ниже 2 бар).
- Автоматическое управление — при аварийной ситуации AI может отправить команду на шлюз для включения вентилятора, открытия клапана или остановки конвейера.
- Уведомления в Telegram/Slack — AI отправляет сообщения с графиками и рекомендациями в мессенджеры, не требуя от человека постоянного наблюдения за SCADA-экраном.
Какой способ подключения использовать?
Для интеграции Industrial IoT Gateway с ASI Biont оптимально подходят два протокола: MQTT (для шлюзов с поддержкой брокера, например, Siemens IOT2050 с Node-RED) и Modbus/TCP (для прямого доступа к регистрам ПЛК через шлюз). Выбор зависит от того, как именно шлюз публикует данные.
| Способ подключения | Когда применять | Пример оборудования |
|---|---|---|
| MQTT (через paho-mqtt) | Шлюз публикует данные в топики MQTT (встроенный брокер или внешний Mosquitto) | Siemens IOT2050 с Node-RED, Advantech WISE-4460 |
| Modbus/TCP (через pymodbus) | Шлюз выступает как Modbus-шлюз между датчиками и сетью | Anybus X-gateway, Moxa MGate 5105 |
| OPC UA (через asyncua) | Шлюз предоставляет OPC UA-сервер с иерархией тегов | Siemens S7-1500 с OPC UA, KEPServerEX |
| HTTP API (через aiohttp) | Шлюз имеет REST API для чтения/записи данных | Digi IX30 с Digi Remote Manager |
В этой статье мы подробно разберём MQTT-подключение как самый универсальный и простой вариант.
Конкретный сценарий: мониторинг температуры и давления на производственной линии
Представим, что на предприятии установлен шлюз Advantech WISE-4460, к которому подключены датчик температуры PT100 и датчик давления 4-20 мА. Шлюз публикует данные в топики MQTT на локальном брокере Mosquitto. Задача AI-агента ASI Biont:
- Подписаться на топик
factory/line1/sensors. - Получать JSON-сообщения вида
{"temp": 72.5, "pressure": 3.2}каждые 5 секунд. - Анализировать тренды: если температура превышает 80°C или давление падает ниже 2.5 бар — отправить аварийное оповещение в Telegram.
- Если температура выше 85°C — отправить команду на шлюз через MQTT publish в топик
factory/line1/actuatorsсо значением{"fan": "on"}.
Шаг 1. Пользователь описывает задачу в чате с ASI Biont
Пользователь пишет:
«Подключись к MQTT-брокеру по адресу 192.168.1.100:1883. Подпишись на топик factory/line1/sensors. Каждые 5 секунд проверяй температуру и давление. Если temp > 80 или pressure < 2.5, отправь мне сообщение в Telegram с этими данными. Если temp > 85, опубликуй в топик factory/line1/actuators команду включения вентилятора. Мой Telegram chat ID — 123456789, токен бота — 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11.»
Шаг 2. AI-агент генерирует и выполняет Python-код в sandbox
ASI Biont использует инструмент execute_python, который запускает код в облачном sandbox-окружении (Railway). AI пишет скрипт с использованием библиотек paho.mqtt.client (MQTT), requests (Telegram) и json. Код выглядит так:
import paho.mqtt.client as mqtt
import json
import requests
import time
# Параметры подключения
BROKER = "192.168.1.100"
PORT = 1883
TOPIC_SUB = "factory/line1/sensors"
TOPIC_PUB = "factory/line1/actuators"
TELEGRAM_TOKEN = "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"
CHAT_ID = "123456789"
# Состояние вентилятора
fan_status = "off"
def send_telegram(text):
url = f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage"
requests.post(url, json={"chat_id": CHAT_ID, "text": text})
def on_message(client, userdata, msg):
global fan_status
try:
data = json.loads(msg.payload.decode())
temp = data.get("temp")
pressure = data.get("pressure")
if temp > 80 or pressure < 2.5:
alert = f"⚠️ Авария: температура {temp}°C, давление {pressure} бар"
send_telegram(alert)
if temp > 85 and fan_status == "off":
payload = json.dumps({"fan": "on"})
client.publish(TOPIC_PUB, payload)
fan_status = "on"
send_telegram(f"Вентилятор включён (температура {temp}°C)")
elif temp <= 80 and fan_status == "on":
payload = json.dumps({"fan": "off"})
client.publish(TOPIC_PUB, payload)
fan_status = "off"
send_telegram(f"Вентилятор выключен (температура {temp}°C)")
except Exception as e:
print(f"Ошибка: {e}")
client = mqtt.Client()
client.on_message = on_message
client.connect(BROKER, PORT, 60)
client.subscribe(TOPIC_SUB)
client.loop_start()
time.sleep(30) # sandbox работает 30 секунд
client.loop_stop()
Шаг 3. AI запускает скрипт и начинает мониторинг
После выполнения скрипта ASI Biont сообщает пользователю:
«Подключился к MQTT-брокеру 192.168.1.100:1883. Подписался на топик factory/line1/sensors. Уведомления в Telegram настроены. При превышении температуры 85°C включу вентилятор.»
Теперь при каждом новом сообщении от датчиков AI анализирует его и при необходимости отправляет уведомления и команды.
Альтернативный сценарий: прямое подключение по Modbus/TCP
Если шлюз не поддерживает MQTT, а предоставляет только Modbus/TCP, ASI Biont подключается через industrial_command с протоколом modbus_tcp. Пользователь пишет:
«Подключись к Modbus-устройству по адресу 192.168.1.200:502. Прочитай holding registers 0-9, каждый регистр — температура в десятых долях градуса. Если среднее значение за 5 измерений превышает 800 (80.0°C), запиши в register 10 значение 1 (включить вентилятор).»
AI использует команду:
industrial_command(protocol='modbus_tcp', command='read_registers', params={'host': '192.168.1.200', 'port': 502, 'address': 0, 'count': 10, 'unit': 1})
Затем на основе полученных данных выполняет логику и при необходимости записывает:
industrial_command(protocol='modbus_tcp', command='write_register', params={'host': '192.168.1.200', 'port': 502, 'address': 10, 'value': 1, 'unit': 1})
Почему ASI Biont выгоднее традиционных решений?
Традиционно для настройки такой автоматизации потребовалось бы:
- Установить и настроить MQTT-клиент или Modbus-скрипт на сервере.
- Написать код обработки данных.
- Настроить интеграцию с Telegram через Bot API.
- Развернуть всё на VPS или одноплатнике.
С ASI Biont всё это занимает несколько минут диалога в чате. AI пишет код, выполняет его и поддерживает подключение. Если нужно изменить условия (например, порог температуры), достаточно сказать об этом в чате — AI обновит логику.
Кроме того, ASI Biont подключается к любому устройству через execute_python — AI сам пишет код интеграции под каждое устройство. Не нужно ждать, пока разработчики добавят поддержку — подключайте что угодно прямо сейчас. Пользователь просто описывает в чате, к какому устройству подключиться и какие параметры (порт, IP, baud rate, API-ключ), и AI сам пишет код на Python с использованием pyserial, paramiko, paho-mqtt, pymodbus, aiohttp или opcua-asyncio. Всё подключение происходит через диалог в чате, никаких панелей управления и кнопок «добавить устройство» не требуется.
Заключение
Интеграция Industrial IoT Gateway с AI-агентом ASI Biont — это быстрый и надёжный способ добавить интеллект в промышленную автоматизацию. MQTT и Modbus/TCP — два наиболее распространённых протокола, которые поддерживаются «из коробки» через sandbox-окружение. AI не только собирает данные, но и принимает решения, отправляет уведомления и управляет актуаторами.
Попробуйте интеграцию прямо сейчас на asibiont.com. Опишите в чате ваше оборудование и задачу — AI-агент подключится к вашему шлюзу за секунды.
Комментарии