COM / RS-232 + ASI Biont: автоматизация промышленного оборудования без программирования

Введение: почему COM-порт до сих пор актуален?

Казалось бы, COM-порт — пережиток прошлого. Но на производстве до сих пор работают тысячи устройств с RS-232: промышленные весы, станки с ЧПУ, считыватели штрих-кодов, лабораторные анализаторы. Проблема в том, что данные с этих устройств чаще всего считываются вручную: оператор подходит к весам, записывает показания в тетрадку, потом переносит в Excel. Это часы рутины и источник ошибок.

ASI Biont — AI-агент, который подключается к любому оборудованию через чат. Для COM-портов используется Hardware Bridge — небольшая программа, которая скачивается из дашборда ASI Biont и запускается на компьютере, к которому физически подключено устройство. Bridge читает данные с порта и передаёт их AI-агенту, а тот уже парсит, анализирует и отправляет в нужные системы — 1С, Google Sheets, Telegram.

Как AI-агент подключается к устройству

У ASI Biont есть несколько способов интеграции с железом. Для COM/RS-232 основной — Hardware Bridge (bridge.py). Это Python-скрипт, который скачивается из дашборда (не с GitHub!) и запускается командой:

python bridge.py --token=YOUR_TOKEN --ports=COM3 --baud 115200 --rate=10

Параметры:
- --token — токен из дашборда ASI Biont;
- --ports — имя COM-порта (можно несколько через запятую);
- --baud — скорость, например 9600 или 115200;
- --rate — частота опроса в Гц (10 — значит 10 раз в секунду).

Bridge не имеет HTTP API — он общается с ASI Biont через industrial_command(). Это внутренний протокол, который AI-агент использует для отправки команд на устройство и получения данных.

Конкретный сценарий: ESP32 + датчик температуры + ASI Biont

Хотя в заголовке заявлен COM / RS-232, давайте рассмотрим реальный пример интеграции с ESP32 — популярной платой для IoT. ESP32 подключается к ASI Biont через тот же Hardware Bridge, если использовать USB-UART переходник, либо через MQTT, если ESP32 работает как MQTT-клиент. Покажу оба варианта.

Чтение данных с COM-порта (весы) с помощью pyserial

Если у вас промышленные весы с RS-232, Bridge уже читает с них данные. Но для кастомного устройства (например, ESP32, отправляющего температуру на COM-порт) нужно написать код. ASI Biont может сгенерировать его сам через execute_python — универсальный инструмент, где AI пишет Python-скрипт под вашу задачу.

Вот пример скрипта, который читает строку с COM-порта и отправляет в Telegram:

import serial
import requests
import json

# Настройка порта (параметры берутся из чата с AI)
ser = serial.Serial('COM3', 9600, timeout=1)

# Читаем строку от устройства
line = ser.readline().decode('utf-8', errors='ignore').strip()
print(f"Получено: {line}")

# Отправляем в Telegram через Bot API
bot_token = "123456:ABC-DEF..."
chat_id = "123456789"
requests.post(
    f"https://api.telegram.org/bot{bot_token}/sendMessage",
    json={"chat_id": chat_id, "text": f"📊 Данные: {line}"}
)

Этот скрипт выполняется в sandbox ASI Biont, но может быть запущен и на вашем компьютере через Bridge.

Подключение ESP32 через MQTT

ESP32 может отправлять данные по MQTT — это удобнее, чем COM-порт, если устройство удалённое. В прошивке ESP32 используем библиотеку PubSubClient:

#include <WiFi.h>
#include <PubSubClient.h>

const char* ssid = "...";
const char* password = "...";
const char* mqtt_server = "192.168.1.100"; // адрес брокера ASI Biont

WiFiClient espClient;
PubSubClient client(espClient);

void setup() {
  Serial.begin(115200);
  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) delay(500);
  client.setServer(mqtt_server, 1883);
}

void loop() {
  if (!client.connected()) client.connect("esp32");
  client.loop();
  // Читаем температуру с датчика (например, DS18B20)
  float temp = readTemperature();
  // Публикуем в топик
  client.publish("sensors/temp", String(temp).c_str());
  delay(10000);
}

ASI Biont подписывается на топик sensors/temp и автоматически обрабатывает данные.

Код для Arduino (RS-232 через Serial)

Если вы используете Arduino, то отправка данных в порт выглядит так:

void setup() {
  Serial.begin(9600);
}

void loop() {
  int sensorValue = analogRead(A0);
  float voltage = sensorValue * (5.0 / 1023.0);
  Serial.print("TEMP:");
  Serial.println(voltage);
  delay(5000);
}

Bridge читает эту строку, а ASI Biont парсит её и может отправлять в Google Sheets.

Как описать задачу в чате AI-агенту

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

«Подключись к COM3, скорость 9600. Устройство — весы, отправляют строку вида "WEIGHT: 12.345 kg". Читай данные каждые 5 секунд, отправляй в Google Sheets и при превышении 20 кг предупреди в Telegram».

AI сам сгенерирует Python-код, настроит парсер, создаст триггеры. Вам останется только запустить bridge и проверить. Весь процесс занимает минуты, а не дни.

Почему это выгодно?

  • Скорость: интеграция без программирования — AI пишет код за секунды.
  • Гибкость: подключается любое устройство через execute_python — вам не нужно ждать, пока разработчики ASI Biont добавят драйвер.
  • Надёжность: автоматический сбор данных исключает человеческий фактор.
  • Масштабируемость: можно подключить десятки устройств к одному агенту.

По данным компании Aberdeen Group, компании, автоматизировавшие сбор данных, сокращают время на отчётность на 80%. Конечно, цифры зависят от отрасли, но тенденция очевидна.

Реальные кейсы

  1. Промышленные весы на складе: оператор раньше записывал вес каждой паллеты вручную, ошибки были в 3% случаев. Теперь данные с весов через COM-порт идут в ASI Biont, который заносит их в 1С и при отклонении от нормы отправляет уведомление в Telegram.

  2. Считыватель штрих-кодов в лаборатории: считыватель подключён к компьютеру через RS-232. Раньше лаборант вбивал коды вручную, теперь ASI Biont автоматически сверяет коды с базой и открывает доступ к оборудованию.

Таблица: способы подключения устройств к ASI Biont

Устройство Способ подключения Используемые библиотеки
COM-порт / RS-232 Hardware Bridge (bridge.py) pyserial
MQTT Встроенный MQTT-клиент paho-mqtt
Modbus/TCP Прямое подключение pymodbus
SSH Для устройств на Linux paramiko
HTTP API REST API aiohttp
OPC-UA Промышленные контроллеры opcua-asyncio
Любое устройство execute_python (AI пишет код) любые

Подводные камни

  • Не используйте while True в execute_python — таймаут 30 секунд. Для постоянного чтения данных используйте Bridge или запускайте скрипт через планировщик.
  • Проверяйте права на COM-порт — в Windows может потребоваться запуск от администратора.
  • Не путайте RS-232 и RS-485 — для RS-485 нужен преобразователь USB-RS485, и схема подключения другая.
  • Всегда указывайте baud rate — без него устройство не ответит.

Заключение

Интеграция COM / RS-232 устройств с ASI Biont — это реальный способ избавиться от ручного ввода данных и получать отчётность в реальном времени. Благодаря AI-конструктору интеграций вам не нужно писать код с нуля — просто опишите задачу в чате, и AI сам создаст скрипт. Попробуйте прямо сейчас на asibiont.com — подключите свои весы, датчик или станок и убедитесь, что это работает.

← Все статьи

Комментарии