Как подключить 3D-принтер к AI-агенту: интеграция Marlin и Klipper с ASI Biont

Зачем 3D-принтеру AI-агент?

Современная 3D-печать — это не просто нажатие кнопки «Печать». Длинные циклы, риск сбоя (например, застревание филамента или перегрев сопла) и необходимость постоянного мониторинга — задачи, которые отнимают время. Интеграция 3D-принтера с AI-агентом ASI Biont позволяет:
- удалённо отслеживать температуру стола и сопла в реальном времени;
- получать оповещения в Telegram при критических отклонениях;
- запускать печать голосовой командой или по расписанию;
- автоматически ставить принтер на паузу при обнаружении аномалий.

И всё это без написания кода вручную: вы описываете задачу в чате, а AI-агент самостоятельно генерирует и выполняет Python-скрипт интеграции.

Как ASI Biont подключается к 3D-принтеру?

ASI Biont поддерживает разные способы подключения — выбор зависит от прошивки принтера:

Прошивка Рекомендуемый метод Протокол
Klipper (через Moonraker) HTTP API / WebSocket REST API (aiohttp) +

| Marlin (через OctoPrint) | HTTP API / MQTT | REST API OctoPrint |
| Marlin (прямой USB) | COM-порт (Hardware Bridge) | Serial G-code |

В этой статье разберём самый современный вариант — Klipper с Moonraker API. Этот способ не требует дополнительных адаптеров: принтер подключён к локальной сети, и вы просто указываете его IP-адрес.

Пошаговый сценарий: Klipper + Moonraker + Telegram-мониторинг

1. Подготовка

Убедитесь, что на Raspberry Pi (или другом хосте) запущен Moonraker (обычно на порту 7125). Проверьте доступность:

curl http://192.168.1.100:7125/printer/info

Если приходит JSON с данными — всё готово.

2. Описываем задачу в чате ASI Biont

Вы пишете (или диктуете голосом):

«Подключись к моему 3D-принтеру на 192.168.1.100:7125. Читай температуру сопла и стола каждые 30 секунд. Если температура сопла превысит 250°C — отправь мне предупреждение в Telegram (токен: XXX, chat_id: XXX). Также дай мне возможность отправить команду "пауза" через чат, чтобы принтер остановил печать.»

3. Что делает AI-агент?

AI-агент генерирует Python-скрипт, который выполняется в sandbox-окружении ASI Biont (с доступом к aiohttp, requests и всем стандартным библиотекам). Скрипт:
- устанавливает HTTP-соединение с Moonraker;
- через WebSocket (если нужно) или периодические GET-запросы получает статус принтера;
- анализирует данные и при превышении порога отправляет сообщение в Telegram;
- ожидает входящие команды (через чат AI Biont) и транслирует их в G-код.

Пример реального кода, который напишет AI:

import asyncio
import aiohttp
import requests

MOONRAKER_URL = "http://192.168.1.100:7125"
TELEGRAM_TOKEN = "YOUR_TOKEN"
CHAT_ID = "YOUR_CHAT_ID"

async def get_status():
    async with aiohttp.ClientSession() as session:
        async with session.get(f"{MOONRAKER_URL}/printer/objects/query?extruder=temperture,heater_bed=temperture") as resp:
            data = await resp.json()
            return data['result']['status']

async def monitor():
    while True:
        status = await get_status()
        extruder_temp = status['extruder']['temperture']
        bed_temp = status['heater_bed']['temperture']

        if extruder_temp > 250:
            requests.post(
                f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage",
                json={"chat_id": CHAT_ID, "text": f"⚠️ Температура сопла {extruder_temp}°C — превышен порог!"}
            )

        await asyncio.sleep(30)

# Запуск (sandbox выполнит этот код с таймаутом 30 сек)
asyncio.run(monitor())

Важно: В sandbox-окружении ASI Biont нельзя использовать бесконечные циклы (таймаут 30 секунд). Поэтому в реальном сценарии AI настраивает триггеры на стороне Biont: например, при получении нового сообщения от принтера (через вызов industrial_command) выполняется проверка и отправка Telegram. Код выше — упрощённая иллюстрация логики.

4. Управление печатью голосом

Для команды «Пауза» AI-агент выполняет:

industrial_command(protocol='http_api', command='POST', url='http://192.168.1.100:7125/printer/gcode/script', data='{"script": "PAUSE"}')

Этот вызов отправляет G-код PAUSE напрямую в Moonraker. Аналогично можно возобновить печать (RESUME) или остановить (CANCEL).

Альтернативные способы интеграции

Marlin через OctoPrint API

Если у вас старый принтер с прошивкой Marlin и вы используете OctoPrint, AI-агент может подключаться по REST API OctoPrint (порт 80). Пример команды:

industrial_command(protocol='http_api', command='GET', url='http://octopi.local/api/printer?apikey=YOUR_KEY')

Marlin через USB (Hardware Bridge)

Для принтеров, подключённых к ПК по USB, запускается bridge.py (скачивается из дашборда ASI Biont). Bridge открывает COM-порт, и AI отправляет G-код через industrial_command:

industrial_command(protocol='serial', command='serial_write_and_read', data='M105\n')  # запрос температуры

Почему это удобно?

  • Никакого ручного кодирования. Вы говорите на естественном языке — AI пишет скрипт и выполняет его. Не нужно разбираться в Moonraker API или paho-mqtt.
  • Любое устройство. ASI Biont подключается к чему угодно: от ESP32 до промышленных контроллеров. Вы не ограничены готовыми интеграциями.
  • Единый центр управления. Все устройства и оповещения — в одном чате. Можно комбинировать: замолотил принтер — AI выключает свет через умную розетку.

Заключение

Интеграция 3D-принтера с AI-агентом ASI Biont превращает громоздкий процесс печати в управляемую автоматизированную систему. Вы получаете контроль над производством прямо из мессенджера, а AI берёт на себя мониторинг и реагирование на нештатные ситуации.

Готовы попробовать? Зайдите на asibiont.com, создайте API-ключ, скачайте bridge (если нужно) и опишите в чате вашу задачу — AI сам настроит интеграцию за секунды.

← Все статьи

Комментарии

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

Jenkins + ASI Biont AI Agent: автоматизация CI/CD без кода в 2026 году

26 июля 2026

Как автоматизировать квалификацию лидов и воронки продаж с помощью интеграции ASI Biont + amoCRM (Руководство 2026 года)

26 июля 2026

Команда `:` в shell ничего не делает. Но используйте её: магия пустой команды

26 июля 2026

Подключаем Arduino Uno/Nano/Mega к AI-агенту ASI Biont: пошаговый гайд по интеграции через COM-порт и MQTT

26 июля 2026

15 промтов для RAG систем: от чанкинга до гибридного поиска

26 июля 2026

Как обезопасить свою музыкальную карьеру: Как курс музыки и аудиопроизводства от Asibiont готовит вас к 2026 году и далее

26 июля 2026

10 промтов для маркетинга и копирайтинга: посты, письма, лендинги и A/B тесты

26 июля 2026

Как я написал свой первый драйвер для Linux на Rust: опыт курса «Операционные системы и системное программирование» на asibiont.com

26 июля 2026

Крестьянская война в Германии (German Peasants' War): как vibe coding превращает историю в интерактивный опыт

26 июля 2026