Введение
3D-принтер — это не просто станок, а сложная киберфизическая система. Маршрут печати, контроль температуры стола и сопла, мониторинг ошибок, управление очередью задач — всё это требует постоянного внимания. Если вы используете прошивки Marlin или Klipper, то уже знакомы с возможностями удалённого управления через веб-интерфейс (OctoPrint, Mainsail, Fluidd), но что, если добавить к этому AI-агента, который не только следит за процессом, но и сам принимает решения?
ASI Biont — это AI-агент, который подключается к вашему 3D-принтеру через диалог в чате. Вы описываете задачу, передаёте параметры подключения — и AI сам пишет код интеграции, настраивает мониторинг, отправляет уведомления и запускает умные сценарии. Никаких панелей управления, никаких кнопок «добавить устройство» — только чат.
В этой статье мы разберём конкретный сценарий: подключение 3D-принтера с прошивкой Marlin или Klipper к ASI Biont через MQTT и REST API, чтобы AI-агент управлял печатью, отслеживал прогресс и автоматически реагировал на ошибки.
Почему именно MQTT и REST API?
Для 3D-принтеров на базе Marlin и Klipper есть два основных способа интеграции с внешними системами:
| Протокол | Устройство | Особенности применения |
|---|---|---|
| MQTT | ESP32 (например, в составе принтера) | Лёгкий, асинхронный, идеален для IoT-датчиков и команд с низкой задержкой |
| REST API | OctoPrint / Moonraker (Klipper) | Стандартный HTTP API, позволяет управлять печатью, получать статус, файлы |
ASI Biont поддерживает оба протокола через execute_python с библиотеками paho-mqtt и aiohttp/requests. Вы просто описываете в чате, какой тип подключения нужен, передаёте IP-адрес, порт, API-ключ — и AI сам генерирует код.
Сценарий 1: Мониторинг прогресса печати через MQTT (Marlin + ESP32)
Допустим, у вас есть 3D-принтер на Marlin, к которому подключён ESP32 с датчиком температуры (термопара или термистор). ESP32 публикует данные в MQTT-топик, например printer/temperature. ASI Biont подписывается на этот топик и анализирует температуру в реальном времени.
Как это работает:
1. Пользователь пишет в чате: «Подключись к MQTT-брокеру по адресу 192.168.1.100:1883, подпишись на топик printer/temperature, и если температура сопла превысит 250°C, отправь мне уведомление в Telegram».
2. ASI Biont генерирует Python-скрипт с paho-mqtt, подключается к брокеру, подписывается на топик, парсит JSON-сообщение (например, {"nozzle": 235.4}), сравнивает с порогом.
3. При превышении AI формирует HTTP POST-запрос к Telegram Bot API и отправляет сообщение.
Пример кода, который AI выполняет в sandbox:
import paho.mqtt.client as mqtt
import requests
import json
BROKER = "192.168.1.100"
PORT = 1883
TOPIC = "printer/temperature"
TELEGRAM_TOKEN = "your_token"
CHAT_ID = "123456789"
def on_message(client, userdata, msg):
data = json.loads(msg.payload)
nozzle_temp = data.get("nozzle", 0)
if nozzle_temp > 250:
requests.post(
f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage",
json={"chat_id": CHAT_ID, "text": f"⚠️ Перегрев сопла! {nozzle_temp}°C"}
)
client = mqtt.Client()
client.on_message = on_message
client.connect(BROKER, PORT, 60)
client.subscribe(TOPIC)
client.loop_start()
Этот скрипт выполняется в sandbox-окружении ASI Biont с таймаутом 30 секунд, поэтому для длительного мониторинга используется механизм industrial_command с протоколом mqtt://, который поддерживает долгоживущие подписки.
Сценарий 2: Управление печатью через REST API (Klipper + Moonraker)
Klipper использует Moonraker в качестве API-сервера. ASI Biont может подключаться к Moonraker по HTTP и выполнять команды: запуск печати, пауза, остановка, получение статуса.
Пример задачи от пользователя: «Подключись к Moonraker по адресу 192.168.1.101:7125, получи текущий статус принтера, и если он в режиме Ready, начни печать файла vase.gcode».
AI генерирует скрипт, который использует requests для общения с Moonraker:
import requests
import json
MOONRAKER_URL = "http://192.168.1.101:7125"
# Получить статус
status = requests.get(f"{MOONRAKER_URL}/printer/objects/query?print_stats").json()
if status["result"]["status"]["print_stats"]["state"] == "standby":
# Запустить печать
requests.post(f"{MOONRAKER_URL}/printer/print/start", json={"filename": "vase.gcode"})
После выполнения AI возвращает пользователю отчёт: «Принтер в режиме standby, печать запущена». Всё это без единой строчки кода, написанной вручную.
Сценарий 3: Умные триггеры — голосовая команда через Telegram
ASI Biont можно интегрировать с Telegram-ботом. Пользователь отправляет голосовое сообщение «Напечатай вазу», AI распознаёт текст (через встроенный STT), находит файл vase.gcode в очереди и отправляет команду на Moonraker.
Цепочка действий:
1. Пользователь отправляет голосовое сообщение в Telegram.
2. ASI Biont получает обновление через long-polling (или webhook).
3. Использует requests для скачивания аудиофайла и отправки его в OpenAI Whisper API (доступен через openai библиотеку).
4. Получает текст, извлекает имя файла.
5. Отправляет команду на Moonraker через requests.post.
6. Отвечает пользователю: «Печать vase.gcode запущена».
Этот сценарий демонстрирует, как AI-агент объединяет несколько сервисов без ручного программирования.
Как подключить 3D-принтер к ASI Biont?
Всё происходит в чате. Вы пишете, например:
«Подключись к моему принтеру на Klipper. Moonraker доступен по адресу 192.168.1.101:7125. Настрой мониторинг температуры: если температура стола упадёт ниже 50°C, отправь мне уведомление в Telegram. Мой Telegram токен — ...»
AI сам:
- выбирает протокол (HTTP API Moonraker),
- генерирует код с requests и paho-mqtt (если нужно),
- подключается к брокеру или API,
- настраивает подписки и триггеры.
Никаких панелей управления, никаких кнопок «добавить устройство» — только диалог.
Почему это выгодно?
- Экономия времени: не нужно писать код интеграции вручную. AI делает это за секунды.
- Гибкость: можно подключить любое устройство, даже если его нет в списке готовых интеграций. ASI Biont поддерживает MQTT, Modbus, OPC-UA, SSH, HTTP, COM-порты — AI сам напишет код под ваше железо.
- Масштабируемость: один AI-агент может управлять десятками принтеров, датчиков и роботов одновременно.
- Умные сценарии: AI не просто передаёт данные, а анализирует их и принимает решения: остановить печать при перегреве, запустить новую задачу при освобождении принтера, уведомить оператора.
Заключение
Интеграция 3D-принтера с AI-агентом ASI Biont превращает обычный станок в интеллектуальную производственную единицу. Вы получаете не просто удалённое управление, а полноценного AI-ассистента, который следит за процессом, предупреждает об ошибках и автоматизирует рутину.
Попробуйте сами: откройте asibiont.com, создайте API-ключ в разделе Devices, скачайте bridge.py, опишите в чате свой принтер и начните управлять печатью с помощью AI.
Готовы автоматизировать свой 3D-принтер? Переходите на asibiont.com и начните интеграцию прямо сейчас.
Комментарии