Snapmaker:AI 驱动的 3D 打印机控制 - Openclaw Skills
作者:互联网
2026-03-24
什么是 Snapmaker 打印机控制?
Snapmaker 技能使 AI 代理能够直接与运行 Klipper 和 Moonraker 的 Snapmaker U1 打印机进行交互。通过将此功能集成到您的 Openclaw Skills 集合中,开发人员可以通过编程方式检查喷嘴和热床温度、管理活动打印任务,并检索详细的 RFID 耗材数据,以确保高质量打印和硬件安全,而无需手动监控仪表板。
下载入口:https://github.com/openclaw/skills/tree/main/skills/lucakaufmann/snapmaker
安装与下载
1. ClawHub CLI
从源直接安装技能的最快方式。
npx clawhub@latest install snapmaker
2. 手动安装
将技能文件夹复制到以下位置之一
全局模式~/.openclaw/skills/
工作区
/skills/
优先级:工作区 > 本地 > 内置
3. 提示词安装
将此提示词复制到 OpenClaw 即可自动安装。
请帮我使用 Clawhub 安装 snapmaker。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
Snapmaker 打印机控制 应用场景
- 实时监控当前打印进度和预计完成时间
- 在硬件故障期间远程暂停、恢复或取消打印
- 使用集成的 RFID 传感器数据验证耗材类型、颜色和剩余重量
- 在启动远程任务前检查热床和挤出机温度
- 在集中式开发人员工作区内自动化打印机状态报告
- AI 代理根据用户触发词(如“打印状态”或“Snapmaker”)识别与打印机相关的意图。
- 该技能使用 SNAPMAKER_IP 环境变量或本地配置文件解析打印机的网络位置。
- 它向 80 端口的 Moonraker REST API 发送请求,查询特定的打印机对象,如加热器或 print_stats。
- 解析来自 Snapmaker 硬件的原始 JSON 响应,以提取遥测数据,如温度、进度或耗材 RFID 元数据。
- 处理后的数据返回给代理,以提供可操作的反馈或触发后续自动化步骤。
Snapmaker 打印机控制 配置指南
要将此打印机控制集成到您的 Openclaw Skills 中,您必须提供 Snapmaker U1 的连接详细信息。
在 ~/clawd/config/snapmaker.json 创建配置文件:
{
"ip": "192.168.x.x",
"port": 80
}
或者,您可以使用环境变量进行快速设置:
export SNAPMAKER_IP=192.168.x.x
export SNAPMAKER_PORT=80
通过运行状态脚本验证连接:
scripts/snapmaker.py status
Snapmaker 打印机控制 数据架构与分类体系
该技能根据 Moonraker API 响应将打印机遥测和硬件元数据组织到以下模式中:
| 类别 | 字段 | 描述 |
|---|---|---|
print_stats |
state, filename, print_duration |
当前任务状态(打印中、已暂停等)和时间 |
virtual_sdcard |
progress |
指示完成情况的 0.0 到 1.0 之间的浮点值 |
heaters |
temperature, target |
喷嘴(挤出机)和热床的当前值及目标值 |
filament_detect |
VENDOR, MAIN_TYPE, WEIGHT |
包含材料类型和线轴重量的 RFID 数据 |
sensors |
filament_detected |
物理运动和耗材检测传感器的布尔状态 |
name: snapmaker
version: 1.0.0
description: Monitor and control Snapmaker 3D printers (U1 with Moonraker/Klipper). Use when checking print status, temperatures, progress, or controlling prints (pause/resume/cancel). Triggers on "printer", "3D print", "Snapmaker", "print status", "nozzle temp", "bed temp".
license: MIT
Snapmaker Printer Control
Control Snapmaker U1 printers via the Moonraker API.
Configuration
Create a config file at ~/clawd/config/snapmaker.json:
{
"ip": "192.168.x.x",
"port": 80
}
Or use environment variables:
export SNAPMAKER_IP=192.168.x.x
export SNAPMAKER_PORT=80 # optional, defaults to 80
Config search order:
SNAPMAKER_IPenvironment variable (highest priority)~/clawd/config/snapmaker.json~/.config/clawdbot/snapmaker.json
Quick Commands
Check Status
scripts/snapmaker.py status
Filament Info
scripts/snapmaker.py filament
Shows RFID tag data for each slot: material type, color (hex), temp ranges, and sensor status.
Monitor Print (Live)
scripts/snapmaker.py monitor
Print Control
scripts/snapmaker.py pause
scripts/snapmaker.py resume
scripts/snapmaker.py cancel
Temperature
scripts/snapmaker.py temps
API Reference
The U1 uses Moonraker REST API on port 80:
| Endpoint | Description |
|---|---|
/server/info |
Server status |
/printer/info |
Printer info |
/printer/objects/query?heater_bed&extruder&print_stats |
Status |
/printer/print/pause |
Pause print |
/printer/print/resume |
Resume print |
/printer/print/cancel |
Cancel print |
Status Response Fields
print_stats.state:standby,printing,paused,complete,errorprint_stats.filename: Current fileprint_stats.print_duration: Seconds elapsedvirtual_sdcard.progress: 0.0 to 1.0heater_bed.temperature/heater_bed.target: Bed tempsextruder.temperature/extruder.target: Nozzle temps
Filament & Sensor Data
Query filament RFID and sensors:
/printer/objects/query?filament_detect&filament_motion_sensor%20e0_filament&filament_motion_sensor%20e1_filament&filament_motion_sensor%20e2_filament&filament_motion_sensor%20e3_filament
filament_detect.info[]
Array of 4 slots with RFID tag data (or defaults if no tag):
| Field | Description |
|---|---|
VENDOR |
"Snapmaker" or "NONE" if no RFID |
MANUFACTURER |
e.g. "Polymaker" |
MAIN_TYPE |
Material: "PLA", "PETG", "ABS", etc. |
SUB_TYPE |
Variant: "SnapSpeed", "generic", etc. |
RGB_1 |
Color as decimal int (convert: #${(rgb>>16&0xFF).toString(16)}...) |
ARGB_COLOR |
Color with alpha (decimal) |
WEIGHT |
Spool weight in grams |
HOTEND_MIN_TEMP / HOTEND_MAX_TEMP |
Nozzle temp range |
BED_TEMP |
Recommended bed temp |
OFFICIAL |
true if official Snapmaker filament |
filament_motion_sensor e{0-3}_filament
| Field | Description |
|---|---|
filament_detected |
Boolean - filament present in slot |
enabled |
Boolean - sensor active |
Note: Slots can have filament_detected: true but VENDOR: NONE — this means third-party filament without RFID tag.
相关推荐
专题
+ 收藏
+ 收藏
+ 收藏
+ 收藏
+ 收藏
最新数据
相关文章
每日语音名言:AI 驱动的励志与数字人视频 - Openclaw Skills
Zoho Bookings API 集成:管理预约与员工 - Openclaw Skills
工程经理操作系统:技术领导力与团队扩展 - Openclaw Skills
Markdown 报告生成器:专业文档制作 - Openclaw Skills
Business Claw:ERPNext MCP 自动化与工作流 - Openclaw 技能
Context Engineer:Openclaw 技能的 Token 优化专家
韩国发票:自动化估价单与税务发票 - Openclaw Skills
小红书文案教练:爆款笔记生成器 - Openclaw Skills
慕尼黑 MVG & S-Bahn 实时追踪命令行工具 - Openclaw Skills
Reddit 研究技能:自动化社群洞察 - Openclaw Skills
AI精选
