Введение
Роботизированные руки (robotic arms) — ключевой элемент современной автоматизации: от сборки электроники на заводах Foxconn до сортировки посылок на складах Amazon. Но настройка интеграции манипулятора с AI-системами традиционно требует написания сотен строк кода, отладки протоколов и длительного обучения персонала. Что, если вместо этого просто описать задачу текстом, а AI-агент сам подключится к устройству, сгенерирует скрипты и начнёт управление?
Именно это делает ASI Biont — AI-агент для промышленной автоматизации, который подключается к любому оборудованию через execute_python и industrial_command. В этой статье на практическом примере разберём, как подключить роботизированную руку (например, Dobot Magician или Universal Robots UR3) к ASI Biont через MQTT и COM-порт, автоматизировать сценарии «сборка детали» и «сортировка по цвету» — без единой строчки ручного кода.
Почему именно ASI Biont?
Традиционные интеграции требуют:
- Установки SDK производителя (например, URscript для Universal Robots).
- Написания middleware на Python/C++ с ROS или MQTT.
- Настройки пайплайнов computer vision для детекции объектов.
ASI Biont берёт на себя всю рутину: пользователь описывает в чате, к какому устройству подключиться и какие параметры (IP, порт, baud rate, API-ключ), а AI сам пишет код на Python с использованием pyserial, paho-mqtt, paramiko, pymodbus, aiohttp или opcua-asyncio. Всё подключение происходит через диалог, никаких панелей управления и кнопок «добавить устройство» не требуется.
Какой способ подключения используется?
Для роботизированной руки мы используем два способа:
1. COM-порт (RS-232/RS-485) — через Hardware Bridge (bridge.py на ПК пользователя). Подходит для старых манипуляторов (Epson SCARA, Yamaha) и учебных Arm (uArm, Dobot Magician).
2. MQTT — через paho-mqtt в execute_python. Идеально для современных роботов с Ethernet-интерфейсом (Universal Robots, Franka Emika, KUKA LBR iisy).
Почему именно эти протоколы? COM-порт — де-факто стандарт для промышленных роботов нижнего сегмента, а MQTT — лёгкий и надёжный протокол для IoT, поддерживаемый большинством контроллеров через ROS 2 или собственные библиотеки.
Сценарий 1: Управление роботизированной рукой через COM-порт (Dobot Magician)
Проблема: Инженеру нужно заставить Dobot Magician захватывать детали с конвейера и перемещать их на сортировочный стол. Робот подключён к ПК через USB-COM (виртуальный порт COM3).
Решение: Пользователь запускает на своём ПК bridge.py (скачивается с asibiont.com) и описывает задачу в чате:
«Подключись к роботу Dobot Magician через COM3 на 115200 baud. Отправь команду G28 (home), затем G01 X100 Y0 Z50 (переместить в точку), и активируй захват через SetEndEffector(true).»
AI генерирует код и отправляет команды через industrial_command:
import serial
import time
ser = serial.Serial('COM3', 115200, timeout=1)
time.sleep(2) # ждём инициализации
# Home (G28)
ser.write(b'G28\r\n')
response = ser.readline()
print('Home response:', response.decode().strip())
# Move to X100 Y0 Z50 (G01)
ser.write(b'G01 X100 Y0 Z50\r\n')
response = ser.readline()
print('Move response:', response.decode().strip())
# Activate gripper (SetEndEffector)
ser.write(b'SetEndEffector(true)\r\n')
response = ser.readline()
print('Gripper response:', response.decode().strip())
ser.close()
AI выполняет этот скрипт через execute_python, bridge транслирует команды из облака на ПК, и робот начинает движение. Пользователь видит результат в чате: «Робот выполнил home и переместился в точку (100, 0, 50), захват активирован.»
Сценарий 2: Сортировка деталей по цвету с камерой (Universal Robots + MQTT)
Проблема: На складе нужно сортировать коробки по цвету наклейки (красный, зелёный, синий). Робот Universal Robots UR3 подключён к локальной сети, на контроллере запущен MQTT-брокер Mosquitto. Рядом установлена камера Raspberry Pi с OpenCV.
Решение: Пользователь описывает задачу:
«Подключись к MQTT-брокеру на 192.168.1.100:1883, подпишись на топик camera/color. Когда приходит сообщение с цветом "red", опубликуй команду robot/move с координатами для красной зоны. Для зелёного — другие координаты, для синего — третьи.»
AI пишет скрипт с paho-mqtt:
import paho.mqtt.client as mqtt
import json
import time
# Параметры зон сортировки
ZONES = {
'red': {'x': 200, 'y': 100, 'z': 50},
'green': {'x': 200, 'y': 0, 'z': 50},
'blue': {'x': 200, 'y': -100, 'z': 50}
}
def on_message(client, userdata, msg):
color = msg.payload.decode().strip().lower()
print(f'Received color: {color}')
if color in ZONES:
# Публикуем команду для робота
command = {
'type': 'move',
'target': ZONES[color],
'speed': 0.5
}
client.publish('robot/move', json.dumps(command))
print(f'Published move command for {color}')
client = mqtt.Client()
client.on_message = on_message
client.connect('192.168.1.100', 1883, 60)
client.subscribe('camera/color')
print('Listening for colors...')
# Не используем while True — используем loop_start() для асинхронной работы
client.loop_start()
time.sleep(30) # слушаем 30 секунд (ограничение sandbox)
client.loop_stop()
AI запускает скрипт в sandbox, подписывается на топик, и как только камера детектирует цвет, робот автоматически перемещается в нужную зону. Всё без единой ручной настройки.
Схема подключения
[Пользователь] → [Чат с ASI Biont] → [industrial_command/execute_python]
↓
[bridge.py на ПК] → [COM-порт (RS-232)] → [Роботизированная рука]
ИЛИ
[execute_python] → [MQTT-брокер] → [Роботизированная рука]
Выводы и преимущества
- Нулевой порог входа — не нужно знать C++, ROS или SDK производителя. Достаточно описать задачу текстом.
- Любое устройство — ASI Biont подключается к чему угодно через execute_python: AI сам пишет код с pyserial, paho-mqtt, paramiko, pymodbus, aiohttp или opcua-asyncio.
- Автоматизация без кода — AI генерирует скрипты за секунды, а не за дни. Ошибки исправляются в том же диалоге.
- Промышленная надёжность — MQTT с QoS 1 и COM-порт с CRC-контролем гарантируют доставку команд.
Как начать?
- Скачайте bridge.py с asibiont.com (если используете COM-порт).
- Запустите:
python bridge.py --token=YOUR_TOKEN --ports=COM3 --default-baud=115200 - Откройте чат с ASI Biont и опишите задачу: «Подключись к моему роботу через COM3, отправь home и перемести в точку X100 Y50 Z10».
- AI выполнит интеграцию за секунды.
Попробуйте интеграцию прямо сейчас на asibiont.com.
Примечание: Все примеры кода выполняются в sandbox-окружении ASI Biont. Sandbox имеет таймаут 30 секунд, поэтому скрипты с while True будут остановлены. Для длительных задач используйте MQTT с loop_start().
Комментарии