Современное производство стремится к гибкости и интеллектуальному управлению. CNC-станки с прошивками GRBL и Marlin — основа малого и среднего бизнеса: от фрезеровки печатных плат до изготовления мебели. Однако ручное управление, перенос G-кода на флешке и отсутствие обратной связи ограничивают производительность. Что если станок сам анализирует износ фрезы, корректирует подачу и отправляет отчёт в Telegram? Интеграция CNC-станков с AI-агентом ASI Biont делает это реальностью без единой строки кода со стороны оператора. В этой статье мы разберём, как ASI Biont подключается к GRBL/Marlin через COM-порт, управляет станком, анализирует данные и автоматизирует производственные процессы.
Что такое GRBL и Marlin и зачем их подключать к AI?
GRBL — это прошивка для Arduino (обычно на базе ATmega328), которая интерпретирует G-код и управляет шаговыми двигателями через драйверы (A4988, DRV8825, TMC2209). Marlin — более сложная прошивка для 3D-принтеров и ЧПУ, работающая на 32-битных платах (STM32, ARM Cortex), поддерживающая до 6 осей, автоматическое выравнивание стола и SD-карту. Обе прошивки общаются через последовательный порт (UART) по протоколу с ASCII-командами: G0, G1, M3, M5, G28 и т.д.
Подключение CNC к AI-агенту даёт:
- Удалённое управление: отправить команду из чата — станок запускает фрезеровку.
- Мониторинг состояния: AI читает ответы (ok, error, Alarm) и анализирует их.
- Автоматизация: при превышении температуры шпинделя — остановка и уведомление.
- Оптимизация: AI корректирует скорость подачи на основе данных с датчика тока.
Как ASI Biont подключается к CNC-станку?
Для подключения к GRBL/Marlin используется Hardware Bridge — программа bridge.py, которую пользователь запускает на ПК, подключённом к станку через USB (COM-порт). Bridge соединяется с ASI Biont через WebSocket (единственный канал связи) и обеспечивает AI доступ к COM-порту. AI отправляет команды через инструмент industrial_command с протоколом serial://.
Почему именно COM-порт?
- GRBL и Marlin работают только через UART (USB-to-Serial).
- Протокол простой: отправляем строку G-кода, получаем ok или error.
- Bridge обеспечивает атомарную операцию записи+чтения: AI отправляет команду и сразу получает ответ.
Как это выглядит для пользователя:
1. Пользователь скачивает bridge.py из дашборда ASI Biont (Devices → Create API Key → Скачать bridge).
2. Запускает bridge на своём ПК: python bridge.py --token=ВАШ_ТОКЕН --ports=COM3 --baud=115200.
3. В чате с ASI Biont пишет: «Подключись к моему ЧПУ-станку на COM3, скорость 115200. Отправь команду G28 для парковки осей».
4. AI выполняет industrial_command(protocol='serial', command='write_and_read', data='4732380a') (G28 в hex) — станок паркуется, AI возвращает ответ ok.
Конкретный сценарий: мониторинг загрузки шпинделя и аварийная остановка
Рассмотрим реальный кейс: мастерская фрезеровки алюминия. Станок на базе Arduino Uno + GRBL 1.1. Задача: AI должен отслеживать ответы станка после каждой команды, и если станок выдаёт ALARM:6 (обрыв связи с драйвером оси) или ALARM:7 (перегрев драйвера), AI немедленно останавливает шпиндель (M5) и отправляет уведомление в Telegram.
Пошаговая интеграция:
- Пользователь запускает bridge.py с параметрами порта.
- В чате пишет: «Станок на COM3, 115200 бод. После каждой команды проверяй ответ. Если приходит ALARM — отправь M5, затем M3 S0 и напиши мне в Telegram: "Авария на станке: [текст ошибки]". Используй мой Telegram ID @user123».
- AI генерирует Python-скрипт для execute_python (выполняется в облаке), который:
- Подключается к Telegram API для отправки сообщений.
- Использует
industrial_commandдля отправки команд на bridge.
Пример кода, который AI пишет и выполняет:
import requests
import time
# Функция отправки команды на станок через bridge
def send_gcode(command):
# industrial_command — это вызов инструмента AI, не Python-функция
# В execute_python мы вызываем её через специальный синтаксис
# Здесь показан упрощённый пример логики
pass
# Отправляем G28 (парковка)
response = send_gcode('G28')
print('Ответ станка:', response)
# Если в ответе ALARM
if 'ALARM' in response:
send_gcode('M5') # остановка шпинделя
send_gcode('M3 S0') # шпиндель на 0 оборотов
# Отправка в Telegram
token = 'ВАШ_ТОКЕН'
chat_id = '@user123'
text = f'Авария на станке: {response}'
requests.get(f'https://api.telegram.org/bot{token}/sendMessage', params={'chat_id': chat_id, 'text': text})
Результат: AI непрерывно мониторит станок, и при любой аварии автоматически останавливает оборудование и оповещает оператора. Время реакции — менее 1 секунды.
Альтернативные способы подключения CNC к ASI Biont
Хотя COM-порт — основной способ для GRBL/Marlin, ASI Biont поддерживает и другие протоколы, которые могут быть полезны в смежных сценариях:
| Способ | Когда использовать | Пример |
|---|---|---|
| SSH | Если станок управляется через Raspberry Pi, который подключён к CNC-щиту | AI подключается по SSH к Raspberry Pi, запускает скрипт на Python, который отправляет G-код через pyserial на Arduino |
| MQTT | Если на станке установлен ESP32 с прошивкой, публикующей состояние в MQTT | AI подписывается на топик cnc/status, получает температуру шпинделя, и при превышении публикует cnc/command с M5 |
| Modbus/TCP | Если CNC-контроллер промышленный (например, Siemens SINUMERIK) с Modbus-шлюзом | AI читает регистры с текущей позицией осей и записывает новые координаты |
| HTTP API | Если станок имеет встроенный веб-интерфейс (например, Duet3D, RepRapFirmware) | AI отправляет REST-запросы на http://192.168.1.100/rr_upload для загрузки G-кода |
Почему COM-порт — лучший выбор для GRBL/Marlin?
- Прямое соединение без дополнительных устройств.
- Минимальная задержка (1-5 мс).
- Поддержка всех команд G-кода без ограничений.
Сценарии автоматизации производства с ASI Biont
1. Автоматическая смена инструмента по износу
AI анализирует ток шпинделя (если подключён датчик тока через COM-порт или MQTT). Когда ток превышает порог (фреза затупилась), AI останавливает станок, отправляет уведомление и ждёт подтверждения оператора.
Пример команды пользователя:
«Подключись к станку на COM3. Каждые 10 секунд читай текущий ток из регистра аналогового входа (A0). Если ток > 2.5 А, останови шпиндель M5 и отправь мне сообщение в Telegram: "Фреза изношена, требуется замена"».
2. Пакетная обработка деталей с автоматическим перезапуском
AI получает список G-кодов для разных деталей. После завершения одного файла (станок возвращает ok на M30), AI автоматически загружает следующий файл через bridge и запускает его.
Пример команды пользователя:
«У меня есть три файла: part1.gcode, part2.gcode, part3.gcode в папке C:\cnc. Подключись к станку на COM3. Сначала отправь part1.gcode, после его завершения (M30) — part2.gcode, затем part3.gcode. Если будет ALARM — останови всё и сообщи».
3. Удалённый мониторинг и логирование
AI каждую минуту записывает текущие координаты (G92) и состояние (M114) в Google Sheets или локальный CSV-файл. Оператор может в любой момент спросить: «Где сейчас станок?» и получить ответ.
Пример команды пользователя:
«Подключись к станку на COM3. Каждые 30 секунд отправляй M114 и сохраняй ответ в файл cnc_log.csv на моём ПК. Если станок не отвечает 3 раза подряд — отправь мне уведомление».
Почему это выгодно: AI пишет код за секунды
Традиционная интеграция CNC-станка с системой мониторинга требует:
- Знания Python, pyserial, threading.
- Написания скрипта для парсинга ответов GRBL.
- Настройки уведомлений (Telegram, email).
- Тестирования и отладки.
С ASI Biont всё это делает AI за 10-15 секунд. Пользователь просто описывает задачу на естественном языке. AI сам выбирает протокол (COM-порт через bridge), генерирует код, выполняет его в sandbox-окружении и возвращает результат.
Ключевые преимущества:
- Zero coding: не нужно писать код вручную.
- Гибкость: подключение к любому CNC через COM, SSH, MQTT, Modbus.
- Автоматизация: AI сам решает, когда остановить станок, сменить инструмент или вызвать оператора.
- Экономия времени: интеграция за минуты, а не дни.
Как начать: пошаговая инструкция
- Зарегистрируйтесь на asibiont.com.
- Создайте API-ключ в разделе Devices → Create API Key.
- Скачайте bridge.py из того же раздела (кнопка «Скачать bridge»).
- Установите зависимости:
pip install pyserial requests websockets. - Запустите bridge:
python bridge.py --token=ВАШ_ТОКЕН --ports=COM3 --baud=115200. - В чате с ASI Biont напишите: «Подключись к станку на COM3. Отправь G28».
- Готово! Станок выполнит команду, AI вернёт ответ.
Заключение
Интеграция CNC-станков (GRBL, Marlin) с AI-агентом ASI Biont открывает новые возможности для автоматизации производства: от удалённого управления до интеллектуального мониторинга и аварийной остановки. Благодаря Hardware Bridge и универсальному execute_python, подключение занимает минуты, а AI берёт на себя всю работу по написанию кода, парсингу данных и принятию решений.
Не нужно ждать, пока разработчики добавят поддержку вашего станка — подключайте любое оборудование прямо сейчас через диалог в чате. Попробуйте интеграцию на asibiont.com и сделайте своё производство умнее.
Комментарии