Введение
Роботизированные руки (robotic arms) — это универсальные исполнительные устройства, применяемые в промышленности, лабораториях и образовательных проектах. От промышленных манипуляторов KUKA и Fanuc до настольных моделей Dobot или uArm — все они требуют программирования для выполнения задач: сборки, сортировки, перемещения. Традиционно для этого пишут код на языках вроде Python, C++ или используют специализированные IDE. Это отнимает время и требует квалификации.
AI-агент ASI Biont меняет подход: вы описываете задачу на естественном языке, а нейросеть сама генерирует код, подключается к роботу и управляет им. Поддерживаются любые манипуляторы — от Arduino-совместимых до промышленных контроллеров с Modbus TCP или EtherNet/IP. В этой статье мы разберём три реальных сценария интеграции, покажем примеры кода и объясним, как ASI Biont делает автоматизацию доступной каждому.
Как ASI Biont подключается к роботизированной руке
ASI Biont — это AI-агент, который работает через диалог в чате. Пользователь описывает, к какому устройству нужно подключиться и какие параметры использовать (порт, IP-адрес, baud rate, API-ключ). ASI Biont самостоятельно пишет Python-код интеграции и выполняет его в защищённом sandbox-окружении (execute_python) или отправляет команды через специальные инструменты (industrial_command).
Для роботизированных рук доступны следующие способы подключения:
| Способ | Когда использовать | Примеры устройств |
|---|---|---|
| Hardware Bridge (COM-порт) | Робот подключается через USB/RS-232/RS-485 к ПК | uArm, Dobot Magician, Arduino-совместимые манипуляторы |
| SSH (execute_python) | Робот управляется с Raspberry Pi или другого одноплатника | Роботы на базе ROS, OpenManipulator, MeArm на Pi |
| Modbus TCP | Промышленный манипулятор с поддержкой Modbus | KUKA, Fanuc, Universal Robots (через Modbus-шлюз) |
| HTTP API / WebSocket | Робот имеет REST-интерфейс | Dobot Magician (HTTP API), UR (REST API) |
Важно: если ваш робот подключается через COM-порт, используйте Hardware Bridge. Это отдельное приложение bridge.py, которое пользователь скачивает из дашборда ASI Biont (Devices → Create API Key → Скачать bridge). Bridge запускается на ПК, подключается к облачному AI-агенту через WebSocket и обеспечивает чтение/запись в COM-порт. AI отправляет команды через industrial_command с протоколом serial://, а bridge преобразует их в байты и отправляет в порт.
Сценарий 1: Управление роботизированной рукой через COM-порт (Arduino-совместимая рука)
Проблема
У вас есть самодельная роботизированная рука на базе Arduino (например, 4 сервопривода + захват). Она подключена к ПК через USB (COM3). Нужно по команде из чата переместить руку в заданные координаты, захватить деталь и переместить её в другую точку. Раньше для этого пришлось бы писать прошивку на Arduino и Python-скрипт на ПК.
Решение
Пользователь запускает bridge.py на ПК, указывая порт COM3 и baud rate 115200. В чате с ASI Biont он пишет:
Подключись к роботизированной руке на COM3, скорость 115200. Отправь команду MOVE 90 45 30 10, подожди 2 секунды, затем отправь GRIP 150.
AI-агент использует industrial_command с протоколом serial:// и командой serial_write_and_read. Вот как это выглядит в диалоге:
industrial_command(protocol='serial://', command='serial_write_and_read', params={'data': '4d4f56452039302034352033302031300a'})
Где 4d4f56452039302034352033302031300a — это hex-представление строки MOVE 90 45 30 10\n. Bridge отправляет эти байты в порт и возвращает ответ устройства (например, OK).
Пример кода для Arduino (прошивка)
#include <Servo.h>
Servo base, shoulder, elbow, wrist;
int gripPin = 9;
void setup() {
Serial.begin(115200);
base.attach(3);
shoulder.attach(5);
elbow.attach(6);
wrist.attach(10);
pinMode(gripPin, OUTPUT);
}
void loop() {
if (Serial.available()) {
String cmd = Serial.readStringUntil('\n');
if (cmd.startsWith("MOVE")) {
int vals[4];
sscanf(cmd.c_str(), "MOVE %d %d %d %d", &vals[0], &vals[1], &vals[2], &vals[3]);
base.write(vals[0]);
shoulder.write(vals[1]);
elbow.write(vals[2]);
wrist.write(vals[3]);
Serial.println("OK");
} else if (cmd.startsWith("GRIP")) {
int angle;
sscanf(cmd.c_str(), "GRIP %d", &angle);
analogWrite(gripPin, angle);
Serial.println("OK");
}
}
}
Результаты
- Время настройки: 2 минуты (запуск bridge + описание задачи в чате).
- Вместо написания Python-скрипта с pyserial — просто диалог.
- AI может автоматизировать последовательность: захват, перемещение, отпускание — без ручного программирования.
Сценарий 2: Управление роботом через SSH на Raspberry Pi (ROS-совместимая рука)
Проблема
У вас есть роботизированная рука OpenManipulator X, подключённая к Raspberry Pi 4. На Pi установлен ROS (Robot Operating System). Нужно запустить скрипт, который перемещает руку по заданной траектории, считывает показания с датчика силы (например, FSR) и останавливается при достижении порога.
Решение
Пользователь описывает задачу в чате:
Подключись по SSH к Raspberry Pi (IP 192.168.1.100, логин pi, пароль ****). Запусти скрипт /home/pi/arm_control.py, который двигает руку по точкам (0.2, 0.0, 0.3), (0.3, 0.1, 0.2), (0.4, 0.0, 0.1). Если сила захвата превышает 3 Н, остановись и верни руку в исходное положение.
AI генерирует Python-скрипт с paramiko и выполняет его через execute_python:
import paramiko
import time
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('192.168.1.100', username='pi', password='****')
# Отправляем команды ROS через SSH
commands = [
"rosrun open_manipulator_controller move_to_pose 0.2 0.0 0.3",
"rosrun open_manipulator_controller move_to_pose 0.3 0.1 0.2",
"rosrun open_manipulator_controller move_to_pose 0.4 0.0 0.1"
]
for cmd in commands:
stdin, stdout, stderr = ssh.exec_command(cmd)
output = stdout.read().decode()
print(f"Выполнено: {cmd}, ответ: {output}")
time.sleep(2)
ssh.close()
Важно: В sandbox нельзя использовать os.system() или subprocess. Весь код выполняется на сервере ASI Biont, а на Raspberry Pi команды отправляются через paramiko.
Результаты
- AI сам написал и выполнил скрипт за 10 секунд.
- Пользователю не нужно знать ROS API — достаточно описать задачу.
- Если датчик силы показывает аномалию, AI может остановить руку и уведомить в Telegram (через requests.post к api.telegram.org).
Сценарий 3: Интеграция промышленного манипулятора по Modbus TCP
Проблема
На заводе установлен промышленный манипулятор KUKA KR 6 R900 с контроллером KR C4. Он поддерживает Modbus TCP для внешнего управления. Нужно автоматизировать процесс: при получении сигнала с конвейера (бит в регистре 100) манипулятор должен взять деталь из точки A и переместить в точку B, затем сбросить бит завершения (регистр 200).
Решение
Пользователь пишет в чате:
Подключись к Modbus TCP-контроллеру манипулятора по IP 10.0.0.50:502. Читай регистр 100 каждые 500 мс. Если значение стало 1, запиши в регистр 200 значение 1 (запуск программы перемещения), подожди 5 секунд, запиши 0.
AI использует industrial_command с протоколом modbus://:
industrial_command(protocol='modbus://', command='read_register', params={'ip': '10.0.0.50', 'port': 502, 'register': 100, 'count': 1})
Если регистр равен 1, AI выполняет:
industrial_command(protocol='modbus://', command='write_register', params={'ip': '10.0.0.50', 'port': 502, 'register': 200, 'value': 1})
Через 5 секунд:
industrial_command(protocol='modbus://', command='write_register', params={'ip': '10.0.0.50', 'port': 502, 'register': 200, 'value': 0})
Результаты
- Время интеграции: 3 минуты (вместо часов написания кода на Structured Text или C++).
- AI может параллельно логировать все операции в БД (через psycopg2) и отправлять отчёты в Telegram.
- Если конвейер остановился — AI сам перезапускает цикл или вызывает оператора.
Почему ASI Biont выгоден для автоматизации роботов
- Не нужно писать код вручную — AI генерирует его за секунды. Даже сложные протоколы (Modbus, OPC UA, EtherNet/IP) становятся доступны через диалог.
- Поддержка любого устройства — благодаря execute_python AI может подключиться к чему угодно: от Arduino до промышленного контроллера. Не нужно ждать, пока разработчики добавят поддержку нового оборудования.
- Адаптивность — AI анализирует ответы устройства и корректирует команды. Если робот не выполнил движение (из-за препятствия), AI может повторить попытку или изменить траекторию.
- Единый интерфейс — все устройства управляются из одного чата. Не нужно переключаться между IDE, терминалами и панелями управления.
- Безопасность — код выполняется в sandbox-окружении, bridge работает только с указанными портами. AI не имеет доступа к файловой системе пользователя.
Как начать интеграцию
- Зарегистрируйтесь на asibiont.com.
- В дашборде перейдите в раздел Devices → Create API Key → Скачайте bridge.py.
- Запустите bridge на ПК, к которому подключена роботизированная рука:
pip install pyserial requests websockets
python bridge.py --token=ВАШ_ТОКЕН --ports=COM3 --baud=115200
- В чате с AI-агентом опишите задачу, например:
Подключись к моей роботизированной руке на COM3, скорость 115200. Каждую минуту перемещай руку в случайную точку в пределах 0-180 градусов для каждого сервопривода. Если рука застревает (нет ответа от сервопривода более 2 секунд), отправь мне сообщение в Telegram и останови цикл.
- AI сгенерирует код, выполнит его и начнёт управление. Всё — автоматизация запущена.
Заключение
Интеграция роботизированной руки с AI-агентом ASI Biont — это не просто удобство, а смена парадигмы: вместо программирования — диалог. Вы описываете задачу, AI пишет код и управляет устройством. Поддерживаются любые манипуляторы: от Arduino-совместимых до промышленных KUKA и Fanuc. Не нужно знать Modbus, ROS или HTTP API — достаточно сказать, что нужно сделать.
Попробуйте сами: подключите свою роботизированную руку к ASI Biont и автоматизируйте сборку, сортировку или перемещение деталей за минуты. Переходите на asibiont.com и начните интеграцию сегодня.
Комментарии