ЧПУ-станок под управлением ИИ: интеграция GRBL и Marlin с ASI Biont

Представьте: вы стоите в цеху, а ваш фрезерный станок с прошивкой GRBL шлёт статусы в Telegram, отвечает на вопросы «где сейчас шпиндель?» и принимает команды «сделай прорезь 20 мм» — просто через чат. Это не магия, а связка ЧПУ-станка с AI-агентом ASI Biont. В этой статье разберём, как подключить GRBL/Marlin к агенту, какие протоколы использовать и как автоматизировать типовые задачи.

Зачем подключать станок к ИИ-агенту

GRBL и Marlin — одни из самых популярных прошивок для станков с числовым программным управлением. GRBL работает на Arduino и управляет шаговыми двигателями по G-code. Marlin используется в большинстве 3D-принтеров и многих фрезерах. Оба устройства общаются с компьютером через последовательный порт. Однако обычный станок — это «немое железо»: он не понимает человеческий язык, не умеет анализировать свой статус и не может предупредить о ошибке. Подключение к AI-агенту решает три главные задачи:

  • Удалённый мониторинг — статус станка, температура, координаты, скорость шпинделя.
  • Чат-управление — отправить G-code простой фразой, например «в домашнюю позицию».
  • Генерация G-code — ИИ создаёт управляющую программу по текстовому описанию детали.

Особенно это важно для небольших мастерских, где нет полноценной MES-системы, но есть пара станков. Вместо того чтобы подходить к каждому устройству и проверять индикаторы, оператор видит всё в одном чате.

Как ASI Biont подключается к ЧПУ-станку

В ASI Biont нет панели управления с кнопкой «Добавить устройство». Вместо этого агент сам пишет код интеграции под конкретную железку. Для GRBL/Marlin чаще всего используется COM-порт (RS-232), поэтому нужен Hardware Bridge — bridge.py, который скачивается из дашборда ASI Biont. Bridge запускается на компьютере, к которому станок подключён через USB, и создаёт мост между COM-портом и AI-агентом. Пример запуска:

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

Разберём параметры: --token — токен дашборда, --ports — имя COM-порта, --baud — скорость обмена (для GRBL обычно 115200, для Marlin — 250000), --rate — частота опроса в секунду. Hardware Bridge не имеет HTTP API; команды отправляются через industrial_command(). Это важно, чтобы не пытаться дёргать endpoint'ы, которых нет.

Альтернативный способ — универсальный execute_python. AI-агент прямо в sandbox выполняет Python-скрипт, который использует pyserial, paramiko, paho-mqtt или pymodbus. Это идеально для разовых задач и экспериментов: не нужно запускать bridge, достаточно описать в чате порт и baud rate.

| Способ | Когда использовать | Плюсы | Минусы |
| Hardware Bridge (COM) | Станок подключён к ПК через USB/RS-232 | Постоянный мост, низкая задержка | Требует запуска bridge.py |
| execute_python | Разовые запросы и тесты | Не требует bridge, работает в sandbox | Ограничение по времени выполнения 30с |
| MQTT/Modbus | Промышленные станки с Ethernet | Удалённо, без прямой COM | Нужен шлюз/адаптер |

Выбор метода зависит от задачи. Для постоянной интеграции удобнее Hardware Bridge, для прототипа — execute_python.

Практический пример: удалённый мониторинг и управление

Рассмотрим реальный сценарий. На небольшом производстве настроен фрезерный станок с прошивкой GRBL. Оператору необходимо удалённо проверять статус станка с телефона и отправлять простые команды. Для этого ASI Biont через Hardware Bridge подключается к COM3.

Вот диалог с агентом:

  • Пользователь: «Подключись к станку на COM3, скорость 115200. Читай статус каждые 5 секунд. Если станок в состоянии Idle — напиши мне об этом».
  • ASI Biont: сгенерировал код, запустил Hardware Bridge и начал опрос.

Код, который генерирует ASI Biont для чтения статуса, выглядит так:

import serial

ser = serial.Serial('COM3', 115200, timeout=1)
ser.write(b'?\n')
response = ser.readline().decode().strip()
print(response)

Ответ GRBL выглядит похоже:

<Idle

|MPos:0.000,0.000,0.000|FS:0,0|WCO:0.000,0.000,0.000>

Это значит: станок в режиме Idle, координаты в нуле, скорость шпинделя 0. Если в ответе Alarm, значит, требуется сброс. AI-агент может сам интерпретировать эти строки и написать оператору человеческим языком: «Станок свободен, текущие координаты X=0, Y=0, Z=0».

Для отправки команд достаточно записать их в порт. Например, чтобы отправить станок в домашнюю позицию:

ser.write(b'G28\n')
response = ser.readline().decode()  # 'ok' или 'error'

Оператору достаточно написать в чат: «отправь G28» — и AI выполнит код. Аналогично с Marlin: команда M105 возвращает температуры сопла и стола. Вот код для Marlin:

ser.write(b'M105\n')
temperature = ser.readline().decode().strip()
# 'ok T:25.0 /0.0 B:20.0 /0.0'

Эти примеры показывают, как AI-агент превращает станок в «умное устройство», которое понимает естественный язык.

Сценарий: генерация G-code по текстовому описанию

Самый интересный сценарий — создание управляющей программы по описанию детали. Например, вы пишете агенту: «Фрезеровать прямоугольное углубление 30×20 мм, глубина 2 мм, начало в точке X=10, Y=10». ASI Biont генерирует G-code:

G21 ; установить единицы в мм
G90 ; абсолютные координаты
G0 X10 Y10 Z5
G1 Z-2 F100
G1 X40 Y10
G1 X40 Y30
G1 X10 Y30
G1 X10 Y10
G0 Z5
M30

Конечно, такой код нужно проверять. AI может предложить симуляцию или предупреждение о возможных коллизиях. Но сама по себе возможность сэкономить часы на написании вручную — огромный плюс.

Для более сложных деталей можно попросить агента сгенерировать код с использованием циклов и подпрограмм. Например, для фрезеровки «кармана» с несколькими проходами по глубине AI может создать цикл G-code. Вот фрагмент для трёх проходов:

G1 Z-1 F50
G1 X20 Y20
G1 Z-2 F50
G1 X20 Y20
G1 Z-3 F50
G1 X20 Y20

Это упрощает подготовку производства и уменьшает вероятность человеческой ошибки.

Дополнительные сценарии автоматизации

AI-агент может не только выполнять команды, но и реагировать на события. Например:

  • Автоматический сброс ошибки. Если GRBL вернул Alarm, агент отправляет $X и предупреждает оператора.
  • Уведомление в Telegram. После завершения обработки агент вызывает Telegram Bot API:

    import requests
    requests.post('https://api.telegram.org/bot/sendMessage', json={'chat_id': '...', 'text': 'Станок завершил работу'})

  • Формирование отчётов. По команде «что происходило сегодня» агент собирает логи и выдаёт сводку.

Безопасность и типичные ошибки

При подключении ЧПУ к ИИ важно помнить о безопасности:

  • Всегда проверяйте, что станок не находится в режущем цикле, перед отправкой новых координат.
  • Настраивайте границы рабочего поля (soft limits) в прошивке.
  • Запускайте bridge.py с минимальными правами, чтобы случайный код не имел доступ к системе.

Типичные ошибки новичков:

  • Неправильный baud rate: для GRBL используйте 115200, для Marlin — 250000.
  • Забыли про символ \n в конце G-code — станок не выполнит команду.
  • Чтение порта без timeout — программа зависает навсегда.

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

Традиционная интеграция с ЧПУ требует написания отдельной программы на C++ или C#, протокольной документации и отладки. С ASI Biont интеграция делается в диалоге. Пользователь описывает задачу, AI пишет код на Python и сразу же его выполняет. Это сокращает время интеграции с дней до минут.

Более того, execute_python позволяет подключить любое устройство, даже если для него ещё нет готового коннектора. Нужен только Python-модуль — pyserial для COM-порта, paramiko для SSH, paho-mqtt для MQTT, pymodbus для Modbus/TCP, aiohttp для HTTP API. Пользователь сообщает порт, IP, baud rate или API-ключ, и AI сам пишет скрипт. Не нужно ждать, пока разработчики добавят поддержку в платформу.

Заключение

Подключение ЧПУ-станка с прошивками GRBL и Marlin к AI-агенту ASI Biont — это реальный способ сделать станок «разговорчивым». Удалённый мониторинг, чат-управление и генерация G-code экономят время и снижают количество ошибок. Всё, что нужно, — скачать Hardware Bridge из дашборда, указать COM-порт и начать диалог с агентом.

Попробуйте интеграцию на asibiont.com. Скачайте bridge.py, подключите станок через COM-порт и напишите в чат: «Настрой доступ к COM3 и покажи статус». Через минуту вы увидите координаты своего станка в ленте чата — и это только начало.

Источники

  • GRBL Wiki: https://github.com/gnea/grbl/wiki
  • Marlin Documentation: https://marlinfw.org/docs/basics/introduction.html
  • PySerial Documentation: https://pyserial.readthedocs.io/en/latest/
  • Paho MQTT Python Client: https://www.eclipse.org/paho/index.php?page=clients/python/docs/index.php
  • opcua-asyncio: https://github.com/FreeOpcUa/opcua-asyncio
← Все статьи

Комментарии

Читайте также

Курс Blockchain и Web3 на asibiont.com: как освоить Solidity, смарт-контракты и аудит безопасности

7 августа 2026

Интеграция RS-485 с AI-агентом ASI Biont: автоматизация телеметрии и Modbus RTU без единой строчки кода

7 августа 2026

Industrial IoT Gateways: как AI-агент превращает потоки телеметрии в прогнозы и деньги

7 августа 2026

Курс «Китайский язык с нуля»: как выучить китайский до HSK 4 с помощью AI-репетитора

7 августа 2026

Обрушение и переворот айсберга в Илулиссате: видео, физика и климатический контекст

7 августа 2026

От 4 часов до 15 минут: как ИИ-агенты с IMAP/SMTP-интеграцией автоматизируют работу с электронной почтой

7 августа 2026

Интеграция GitHub с ASI Biont: AI-агент для автоматизации code review, issues и CI/CD — гайд без кода

7 августа 2026

ИИ-автоматизация электронной почты: подключение любого IMAP/SMTP-ящика к ASI Biont

7 августа 2026

Интеграция COM / RS-232 с AI-агентом ASI Biont: автоматизация склада и производства

7 августа 2026