Введение
Промышленные протоколы передачи данных, такие как RS-485, остаются стандартом де-факто в автоматизации зданий, энергетике и на производственных линиях. Температурные датчики, контроллеры клапанов, счётчики электроэнергии — тысячи устройств ежедневно передают данные по двухпроводной шине. Однако интеграция этих устройств с современными AI-агентами часто требует ручного написания кода, настройки шлюзов и постоянного администрирования.
ASI Biont решает эту проблему: AI-агент подключается к любому устройству с RS-485 через USB-конвертер и протокол Modbus RTU, самостоятельно пишет код интеграции и управляет автоматизацией. В этой статье мы разберём, как за час построить систему мониторинга температуры и давления с голосовым управлением, уведомлениями в Telegram и автоматическими аварийными оповещениями.
Что такое RS-485 и зачем подключать его к AI-агенту
RS-485 — это стандарт последовательной передачи данных, позволяющий объединять до 32 устройств на одной витой паре на расстоянии до 1200 метров. В промышленности он используется повсеместно: от датчиков температуры (например, DS18B20) до контроллеров задвижек и частотных преобразователей.
Подключение RS-485 к AI-агенту даёт возможность:
- Автоматически собирать данные с десятков датчиков без программирования логики вручную.
- Анализировать тренды и предсказывать отказы оборудования.
- Управлять исполнительными механизмами по голосовой команде или по расписанию.
- Отправлять уведомления в Telegram, Slack или по email при выходе параметров за пределы нормы.
Как ASI Biont подключается к RS-485
ASI Biont использует Hardware Bridge — приложение bridge.py, которое пользователь запускает на своём ПК (Windows, Linux, macOS). Bridge подключается к облаку ASI Biont через HTTP long polling и обеспечивает доступ к локальным COM-портам. AI-агент отправляет команды через инструмент industrial_command с протоколом serial://, а bridge выполняет чтение/запись в COM-порт через библиотеку pyserial.
Пошаговая схема подключения
- Физическое подключение: соедините устройство RS-485 с компьютером через USB-конвертер (например, FTDI или CH340). Узнайте номер порта: в Windows это будет COM3, COM4 и т.д., в Linux — /dev/ttyUSB0.
- Запуск bridge.py: скачайте bridge с официального репозитория ASI Biont и запустите с указанием порта и baud rate.
python bridge.py --token=ВАШ_ТОКЕН --ports=COM3 --default-baud=9600
- Настройка в чате: в диалоге с AI-агентом ASI Biont опишите задачу, например: «Подключись к Modbus RTU устройству на COM3, baud 9600, slave ID 1, считай регистры 0-10 и отправляй данные каждые 30 секунд». AI сам сгенерирует и выполнит код.
Конкретный сценарий: мониторинг температуры и давления с уведомлениями
Рассмотрим реальный пример: на объекте установлены датчик температуры (PT100 с Modbus RTU) и датчик давления (4-20 мА через аналогово-цифровой преобразователь с Modbus). Задача — собирать данные каждые 10 секунд, при превышении температуры 80°C отправлять аварийное сообщение в Telegram, а при падении давления ниже 2 бар — автоматически закрывать клапан.
Шаг 1. Определение параметров подключения
Пользователь указывает в чате:
- Порт: COM3
- Baud rate: 9600
- Slave ID: 1 (датчик температуры), Slave ID: 2 (датчик давления)
- Регистры температуры: 0x0001 (тип float)
- Регистры давления: 0x0002 (тип integer, масштаб 0.1)
Шаг 2. AI генерирует код
AI-агент пишет Python-скрипт, который выполняется через execute_python в sandbox-окружении ASI Biont. Скрипт использует библиотеку pymodbus для опроса устройств через Hardware Bridge.
from pymodbus.client import ModbusSerialClient
import time
import requests
# Параметры подключения
PORT = "COM3"
BAUDRATE = 9600
SLAVE_TEMP = 1
SLAVE_PRESS = 2
TELEGRAM_TOKEN = "ваш_токен"
CHAT_ID = "ваш_chat_id"
def send_telegram(message):
url = f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage"
payload = {"chat_id": CHAT_ID, "text": message}
requests.post(url, json=payload)
# Подключение к шине RS-485 через bridge
client = ModbusSerialClient(method="rtu", port=PORT, baudrate=BAUDRATE, timeout=1)
client.connect()
# Основной цикл опроса (ограничен таймаутом sandbox 30 секунд)
for _ in range(3):
# Чтение температуры
result_temp = client.read_holding_registers(0x0001, 2, unit=SLAVE_TEMP)
if result_temp.isError():
print("Ошибка чтения температуры")
else:
temp = result_temp.registers[0] / 10.0 # масштабирование
print(f"Температура: {temp} °C")
if temp > 80:
send_telegram(f"⚠️ Авария: температура {temp}°C превышает 80°C!")
# Чтение давления
result_press = client.read_holding_registers(0x0002, 1, unit=SLAVE_PRESS)
if result_press.isError():
print("Ошибка чтения давления")
else:
pressure = result_press.registers[0] * 0.1
print(f"Давление: {pressure} бар")
if pressure < 2.0:
# Команда на закрытие клапана (регистр 0x0003)
client.write_register(0x0003, 0, unit=SLAVE_PRESS)
send_telegram(f"🔧 Давление {pressure} бар ниже нормы. Клапан закрыт.")
time.sleep(10)
client.close()
Шаг 3. Результат
ASI Biont выполняет скрипт в облаке, bridge передаёт команды на COM-порт, и система начинает мониторинг. При первом же превышении температуры пользователь получает Telegram-уведомление. Всё работает без участия человека.
Почему это выгодно
| Критерий | Традиционный подход | Интеграция с ASI Biont |
|---|---|---|
| Время настройки | 2-3 дня (написание кода, отладка) | 1 час (физическое подключение + диалог в чате) |
| Необходимость знаний | Знание Modbus, Python, сетевых протоколов | Базовое понимание COM-портов и baud rate |
| Гибкость | Изменение логики требует правки кода | Достаточно описать новое условие в чате |
| Уведомления | Настройка через веб-хуки или email-шлюзы | Автоматически через Telegram, Slack, email |
Дополнительные возможности
- Голосовое управление: скажите «Открой клапан на 50%», и AI отправит соответствующую команду через Modbus.
- Предиктивная аналитика: AI анализирует историю данных и предсказывает, когда датчик выйдет из строя.
- Интеграция с другими устройствами: RS-485 — лишь один из протоколов. ASI Biont одновременно может работать с MQTT, Modbus TCP, OPC-UA, SSH и HTTP API.
Как начать
- Подключите устройство RS-485 к компьютеру через USB-конвертер.
- Запустите bridge.py с указанием порта и baud rate.
- Откройте чат с ASI Biont на asibiont.com и опишите задачу, например: «Считай данные с Modbus RTU на COM3 и отправляй мне в Telegram, если температура выше 80°C».
AI сам напишет код, выполнит его и начнёт мониторинг. Никаких панелей управления, никаких кнопок «добавить устройство» — только диалог.
Заключение
Интеграция промышленных устройств RS-485 с AI-агентом ASI Biont превращает рутинную задачу сбора данных и управления в диалог с искусственным интеллектом. За час можно построить систему, которая раньше требовала дней работы инженера. Попробуйте сами — перейдите на asibiont.com, подключите своё устройство и убедитесь, что промышленная автоматизация становится доступной каждому.
Комментарии