Введение
3D-печать давно перестала быть хобби для энтузиастов — сегодня это полноценный инструмент прототипирования, мелкосерийного производства и даже медицины. Но любой, кто хоть раз запускал печать сложной детали, знает: процесс требует постоянного контроля. Температура сопла и стола, адгезия первого слоя, забивание экструдера, вибрации на высоких скоростях — каждый фактор может испортить модель за часы работы. Традиционные прошивки вроде Marlin и Klipper дают гибкость настройки, но не умеют самостоятельно анализировать аномалии и принимать решения. Здесь на помощь приходит AI-агент ASI Biont. В этой статье я покажу, как подключить 3D-принтер на Marlin или Klipper к AI-агенту, настроить удалённый мониторинг и автоматизировать управление печатью — без написания сложного кода вручную.
Что такое Marlin и Klipper и зачем их подключать к AI-агенту?
Marlin — самая популярная открытая прошивка для FDM-принтеров. Она работает на 8- и 32-битных платах (Arduino Mega, STM32) и управляет шаговыми двигателями, нагревателями, вентиляторами. Взаимодействие с Marlin происходит через COM-порт (UART) по протоколу G-code: вы посылаете M104 S200 — сопло нагревается до 200°C, G28 — парковка, M106 S255 — вентилятор на полную.
Klipper — более современная прошивка, которая выносит расчёты траекторий на отдельный одноплатник (Raspberry Pi, Orange Pi), а на плате принтера оставляет только исполнение команд через микроконтроллер. Klipper управляется через SSH или HTTP API (Moonraker), предоставляя REST-эндпоинты для чтения статусов и отправки G-code.
Подключение AI-агента к принтеру даёт возможность:
- Запускать печать голосом или текстовой командой: «Напечатай вазу из PLA, слой 0.2 мм, заполнение 20%».
- Мониторить температуру в реальном времени и получать уведомления в Telegram, если сопло перегревается или стол остывает.
- Автоматически приостанавливать печать при детекции ошибки (например, срыв слоя или перекос оси).
- Собирать статистику по каждой печати: время, расход пластика, ошибки — и анализировать её.
Как ASI Biont подключается к 3D-принтеру?
ASI Biont использует два основных способа для интеграции с 3D-принтерами, в зависимости от прошивки:
1. COM-порт через Hardware Bridge (для Marlin)
Если принтер работает на Marlin, он подключается к компьютеру через USB (виртуальный COM-порт). Пользователь запускает на своём ПК утилиту bridge.py, которая соединяется с ASI Biont через WebSocket и открывает доступ к COM-портам. AI-агент отправляет команды через industrial_command с протоколом serial://.
Пошаговая настройка:
1. Скачайте bridge.py из дашборда ASI Biont (Devices → Create API Key → Скачать bridge).
2. Запустите bridge с токеном и указанием порта:
bash
python bridge.py --token=ВАШ_ТОКЕН --ports=COM3 --default-baud=115200 --rate=10
3. В чате с AI-агентом напишите: «Подключись к моему 3D-принтеру на порту COM3, скорость 115200, прошивка Marlin. Я хочу управлять печатью через чат».
4. AI автоматически отправит тестовую команду M115 (запрос версии прошивки) и подтвердит соединение.
Пример команды от AI для чтения температуры:
# AI вызывает industrial_command
industrial_command(
protocol='serial',
command='send_receive',
params={
'port': 'COM3',
'baud': 115200,
'message': 'M105\n', # Запрос текущих температур
'timeout': 2
}
)
Bridge отправляет M105 в COM-порт, получает ответ ok T:210.3 /200.0 B:55.0 /60.0 и возвращает его AI. Агент парсит данные и, если температура сопла превышает 250°C, может отправить команду M104 S0 (выключить нагрев) и уведомить пользователя.
2. SSH-подключение (для Klipper)
Klipper запускается на Raspberry Pi, поэтому подключение идёт через SSH с использованием библиотеки paramiko. AI пишет Python-скрипт в execute_python, который соединяется с одноплатником и выполняет команды.
Пример: AI подключается к Klipper и запускает печать
Пользователь пишет в чате: «Подключись к моему Raspberry Pi по SSH (IP 192.168.1.100, логин pi, пароль raspberry) и запусти печать файла /home/pi/gcodes/vase.gcode на 3D-принтере с Klipper».
AI генерирует и выполняет такой код:
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('192.168.1.100', username='pi', password='raspberry')
# Отправляем команду в Moonraker API (Klipper)
stdin, stdout, stderr = ssh.exec_command(
'curl -X POST "http://localhost:7125/printer/print/start" '
'-H "Content-Type: application/json" '
'-d \'{"filename": "/home/pi/gcodes/vase.gcode"}\''
)
print(stdout.read().decode())
ssh.close()
AI также может выполнять команды через Moonraker API напрямую, используя HTTP-запросы из sandbox (библиотека requests).
3. Универсальный способ: execute_python с любой библиотекой
Если у принтера есть HTTP API (например, OctoPrint или Moonraker), AI может подключиться напрямую через requests или aiohttp, без bridge и SSH. Пользователь просто передаёт IP и API-ключ, AI сам пишет код.
Пример: получение статуса печати с OctoPrint
import requests
api_key = 'YOUR_OCTOPRINT_API_KEY'
printer_ip = '192.168.1.50'
response = requests.get(
f'http://{printer_ip}/api/printer',
headers={'X-Api-Key': api_key}
)
data = response.json()
print(f"Температура сопла: {data['temperature']['tool0']['actual']}°C")
print(f"Статус печати: {data['state']['text']}")
Реальный сценарий: автоматизация печати с уведомлениями
Представьте: вы запускаете печать сложной модели на 12 часов. Спите, работаете, уходите по делам. Раньше приходилось периодически проверять принтер глазами. Теперь AI делает это за вас.
Сценарий:
1. Пользователь просит: «Следи за печатью vase.gcode. Если температура сопла упадёт ниже 190°C или поднимется выше 230°C — приостанови печать и напиши мне в Telegram».
2. AI подключается к принтеру через bridge (или SSH), каждые 30 секунд читает M105.
3. Если температура выходит за пределы — AI отправляет G-code M25 (пауза) и через Telegram API шлёт сообщение:
```python
import requests
telegram_token = 'ВАШ_ТОКЕН'
chat_id = 'ВАШ_CHAT_ID'
message = '⚠️ Принтер: температура сопла 235°C! Печать приостановлена.'
requests.post(
f'https://api.telegram.org/bot{telegram_token}/sendMessage',
json={'chat_id': chat_id, 'text': message}
)
``
4. Пользователь из любого места может написать в чат ASI Biont: «Продолжи печать», и AI отправитM24`.
Почему это проще, чем писать код самому?
Традиционная интеграция 3D-принтера с внешними системами требует:
- Знания протокола G-code и особенностей конкретной прошивки.
- Умения писать Python-скрипты для работы с serial, SSH или HTTP.
- Настройки веб-сервера или бота для уведомлений.
- Отладки ошибок соединения, таймаутов, парсинга ответов.
С ASI Biont всё это делает AI. Вы просто описываете задачу на естественном языке. Агент сам выбирает способ подключения (COM, SSH, HTTP API), пишет код, выполняет его и сообщает результат. Если что-то пошло не так — AI анализирует ошибку и предлагает исправление.
Таблица: сравнение подходов
| Характеристика | Ручная интеграция | Интеграция с ASI Biont |
|---|---|---|
| Время настройки | Часы-дни | Минуты |
| Необходимые навыки | Python, G-code, сети | Разговорный язык |
| Обработка ошибок | Ручная отладка | Автоматическая диагностика AI |
| Гибкость | Фиксированный скрипт | Адаптация под любую задачу |
| Уведомления | Дополнительная разработка | Готовый код от AI |
Как начать?
- Зайдите на asibiont.com и создайте аккаунт.
- В дашборде перейдите в раздел Devices, создайте API-ключ и скачайте bridge.py (если используете COM-порт).
- Запустите bridge на компьютере, подключённом к принтеру.
- Откройте чат с AI-агентом и опишите, что хотите сделать. Например:
- «Подключись к моему принтеру на COM5, скорость 250000, прошивка Marlin. Каждые 10 секунд читай температуру и если она выше 240°C — выключи нагрев и напиши мне в Telegram».
- «Зайди по SSH на 192.168.1.100, логин pi, пароль mypass, и запусти печать файла benchy.gcode».
- AI выполнит интеграцию за секунды. Вы получите полностью рабочий код и сможете управлять принтером через чат.
Заключение
3D-принтер — идеальный кандидат для интеграции с AI-агентом. Прошивки Marlin и Klipper предоставляют открытые протоколы (COM, SSH, HTTP), а ASI Biont умеет работать с любым из них без дополнительных панелей управления. Всё, что нужно — описать задачу словами. AI сам напишет код, подключится к устройству и начнёт управлять печатью. Попробуйте сами: автоматизируйте свой принтер сегодня на asibiont.com.
Комментарии