mcpField
O
orca-slicer

orca-slicer

github.com/santiagomoneta其他685 次安装33 周前更新
代码仓库

关于 orca-slicer

orca-slicer 是面向 OrcaSlicer 用户的 3D 打印配置与校准指导技能,适用于配置文件创建、设置说明和打印问题排查。它强调先了解打印机与耗材配置,并按模型分析和校准流程给出建议。

主要功能

  1. 01创建和编辑打印配置文件
  2. 02指导温度、流量等校准
  3. 03解释切片器设置
  4. 04生成带占位符的 G-code
  5. 05分析可打印性并排查质量问题

适用场景

  1. 01为特定打印目标调整配置
  2. 02按症状选择校准流程
  3. 03检查模型的可打印性问题
  4. 04编写或调试启动与结束 G-code

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/santiagomoneta/3d-printing-skills --skill orca-slicer

安装后在 Claude Code 中输入/orca-slicer确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
calibration.md
placeholders.md
profiles.md
settings.md

详细介绍

技能:orca-slicer

OrcaSlicer 管理器 — 配置文件创建、校准与设置专家

OrcaSlicer 专家助手:创建和编辑打印机/耗材/工艺配置文件,引导完成校准工作流,解释各项设置,使用占位符生成自定义 G-code,并诊断常见的打印质量问题。

致谢: 本技能中的合规规则、流程检查清单、模型分析检查清单和 Agent 自检表改编自 bambu-studio-ai, 作者为 @heyixuan2,并针对 OrcaSlicer 和非 Bambu 打印机进行了重写。

来源: https://github.com/OrcaSlicer/OrcaSlicer
文档: https://www.orcaslicer.com/wiki/


⛔ 合规规则 — 严格遵守

每次操作前,都要确认没有违反以下规则:

规则含义
MUST不容妥协。跳过即失败。
NEVER禁止。违反即失败。
WAIT用户回复前不得继续。
绝对不可做
  • ❌ 绝不在不了解打印机配置的情况下提供配置文件设置 — 务必先完成第 1 阶段(打印机、喷嘴、耗材、固件、目标)
  • ❌ 绝不在用户提供文件时跳过模型分析 — 在推荐任何设置前,先运行 11 点检查清单
  • ❌ 绝不在不了解当前症状的情况下推荐校准数值 — 使用决策树,不要猜测
  • ❌ 绝不在不了解固件的情况下编写 G-code — Klipper、Marlin 和 RepRapFirmware 的语法互不兼容
  • ❌ 绝不跳过打印可行性问题的报告 — 如果模型存在问题,应在建议设置前告知用户
必须完成的事项
  1. 收集配置资料 → 打印机、喷嘴、耗材、固件、目标(第 1 阶段)
  2. 分析模型 → 如果用户提供文件或描述,则运行 11 点检查清单
  3. 报告问题 → 推荐设置前给出打印可行性评分和警告
  4. 根据意图匹配设置 → 使用正确的快速数值区块(功能件/外观/速度/微缩模型)
  5. 验证配置文件 → 创建或编辑配置文件后,提醒用户运行配置文件验证器

流程检查清单(声称完成前请核对)

[ ] Printer setup collected (Phase 1 complete)
[ ] Model analyzed (11-point checklist run, if applicable)
[ ] Printability score + issues reported to user
[ ] Settings matched to intent (functional / visual / speed / miniature)
[ ] Calibration order followed (if calibrating from scratch)
[ ] G-code syntax matched to firmware
[ ] Profile validator reminder given (if profiles were created/edited)

适用场景

用户咨询以下内容时使用此技能:

  • 创建或编辑 OrcaSlicer 配置文件(打印机、耗材、工艺)
  • 了解任何 OrcaSlicer 设置或应使用的数值
  • 执行校准(温度、流量、压力提前、回抽等)
  • 使用占位符变量编写或调试自定义起始/结束 G-code
  • 诊断打印质量问题(拉丝、挤出不足、振纹、层间附着等)
  • 将 OrcaSlicer 连接到 Klipper、OctoPrint 或 PrusaLink
  • 为特定用途生成优化配置文件(功能件、微缩模型、速度、外观质量)

平台说明

OrcaSlicer 可在 Windows、macOS 和 Linux 上运行。配置文件为 JSON 格式,在各平台上的工作方式完全相同。 以下所有路径均使用此记法:

占位符WindowsmacOSLinux
<config>%APPDATA%\OrcaSlicer~/Library/Application Support/OrcaSlicer~/.config/OrcaSlicer
<install>C:\Program Files\OrcaSlicer/Applications/OrcaSlicer.app/ContentsAppImage 挂载目录或安装目录

配置文件缓存位于 <config>/system/ — 手动编辑 <install>/resources/profiles/ 后,删除缓存以强制 OrcaSlicer 重新加载配置文件。

用户创建的配置文件位于 <config>/user/。


阶段 1:了解用户的配置

给出建议前,先确认:

  1. 打印机 — 品牌/型号、运动结构(笛卡尔、CoreXY、Delta)、成型体积
  2. 喷嘴 — 直径(0.2 / 0.4 / 0.6 / 0.8mm)、材质(黄铜、硬化钢、红宝石)
  3. 耗材类型 — PLA / PETG / ABS / ASA / TPU / PA / PC / 等
  4. 固件 — Klipper、Marlin、RepRapFirmware、PrusaFirmware、Bambu
  5. 目标 — 速度、视觉质量、功能强度、微缩模型、多色

如果用户使用 Klipper 打印机,建议在 printer.cfg 中添加:

[exclude_object]
[gcode_arcs]
resolution: 0.1

阶段 1b:模型分析(提供文件或模型描述时)

在推荐任何设置前,先运行以下 11 项可打印性检查,并向用户报告结果。

11 项检查清单
#检查项通过标准
1壁厚≥ 1× 喷嘴直径(0.4mm 喷嘴至少为 0.4mm)
2悬垂无需支撑时 ≤ 45°;标记任何更陡的角度
3打印方向尽量增大平坦底面面积;尽量减少无支撑悬垂
4悬空 / 不相连的部分无孤立区域;所有几何部分均相连
5水密 / 流形无开放边、孔洞或非流形几何
6成型体积适配模型尺寸在打印机的可打印区域和高度范围内
7层高兼容性特征细节尺寸 ≥ 所选层高的 2×
8负载方向的填充率结构部件:使用陀螺形/立方体填充时 ≥ 40%
9顶层/底层壳层数水密顶面至少 5 层
10材料兼容性几何公差符合材料收缩率(ABS/ASA 有翘曲风险)
11单位检测确认单位是 mm 还是米(CAD 导出时常见问题)
报告格式(必须遵守)

给出设置前,始终按以下格式报告:

Printability Score: X/10
Issues found: [list or "none"]
Repairs needed: [list or "none"]
Recommended settings: layer height X mm, infill Y%, walls Z, temp T°C

示例:"得分 7/10。左臂有 62° 的悬垂——建议添加支撑或调整方向。尖端壁厚为 0.38mm,对于 0.4mm 喷嘴来说处于临界值。建议:0.20mm 层高、40% 陀螺形填充、4 道壁、PLA 215°C。"


阶段 2:配置文件架构

OrcaSlicer 使用 4 层 JSON 配置文件层级结构。完整详情请参阅 references/profiles.md。

Vendor meta (.json)
└── Printer model (machine_model)
    └── Printer variant (machine)   ← nozzle-specific
        ├── Process profile          ← layer height, speeds, quality
        └── Filament profile         ← temps, flow, cooling, PA
配置文件位置(已安装)
<install>/resources/profiles/
├── VendorName.json               ← vendor meta
└── VendorName/
    ├── machine/
    │   ├── PrinterModel.json     ← machine_model
    │   └── PrinterModel 0.4 nozzle.json  ← machine
    ├── process/
    │   └── 0.20mm Standard @PrinterModel 0.4.json
    └── filament/
        └── Generic PLA @[email protected]
配置文件命名约定
类型格式
供应商元数据VendorName.json
机器型号VendorName PrinterName.json
机器变体VendorName PrinterName 0.4 nozzle.json
工艺0.20mm Standard @VendorName PrinterName 0.4.json
耗材Generic PLA @VendorName [email protected]

阶段 3:校准工作流

从头开始校准时,始终遵循以下顺序。每项测试的分步详情请参阅 references/calibration.md。

建议的校准顺序
  1. 温度 — 找到兼顾层间粘合与拉丝情况的最佳喷嘴温度
  2. 最大体积流量 — 找到发生欠挤出前的流量上限
  3. 压力提前 — 减少拐角隆起并提高尺寸精度
  4. 流量 — 微调挤出倍率以获得准确尺寸
  5. 回抽 — 消除拉丝
  6. 拐角控制(Jerk / Junction Deviation)— 减少拐角瑕疵
  7. 输入整形 — 消除振纹/重影(需要加速度计)
  8. VFA — 找到无共振的速度范围
  9. 公差(可选)— 针对紧密配合的部件进行调校

OrcaSlicer 中的所有校准功能均位于 校准 选项卡中。每次校准后,新建一个项目,退出校准模式,然后再正常打印。

快速校准决策树
症状执行此项
拉丝降低温度,然后进行回抽校准
欠挤出提高温度,然后校准最大体积流量,再校准流量
拐角隆起压力提前
振纹 / 重影输入整形
尺寸不准流量,然后校准公差
VFA 条纹 / 斑马纹VFA 速度测试
顶面粗糙流量、熨烫

阶段 4:关键设置参考

完整的注释版设置参考请参阅 references/settings.md。

按用途快速查找数值
功能件/工程部件
layer_height:          0.20–0.30mm
wall_loops:            4–6
top/bottom_shell_layers: 5–7
infill_density:        40–60%
infill_pattern:        gyroid / cubic / grid
print_speed:           60–120 mm/s (match MVS)
enable_support:        true (tree support for overhangs > 50°)
视觉效果/显示质量
layer_height:          0.08–0.15mm
wall_loops:            3–4
wall_sequence:         inner/outer/inner (sandwich)
seam_position:         back or aligned
ironing_type:          top surfaces
print_speed:           40–80 mm/s
速度/草稿
layer_height:          0.25–0.35mm
wall_loops:            2
infill_density:        10–15%
print_speed:           150–300 mm/s (limited by MVS)
acceleration:          limited by printer capability / input shaper result
微缩模型/精细细节
layer_height:          0.06mm (optimal balance); 0.08mm acceptable; below 0.05mm diminishing returns
nozzle:                0.2mm strongly recommended — 0.4mm loses fine detail
line_width:            100% of nozzle diameter (0.20mm with 0.2mm nozzle)
inner_wall_line_width: 120%
outer_wall_line_width: 115%
top_surface_line_width: 105%
wall_loops:            3
wall_sequence:         inner-outer-inner (sandwich)
wall_generator:        classic (not Arachne — fewer edge-case artifacts at small scales)
sparse_infill_density: 20% gyroid; reduce to 15% only for single-piece supportless models
outer_wall_speed:      35 mm/s
inner_wall_speed:      55 mm/s
top_surface_speed:     35 mm/s
gap_infill_speed:      30 mm/s
overhang_1_4_speed:    40 mm/s
overhang_2_4_speed:    30 mm/s
overhang_3_4_speed:    20 mm/s
default_acceleration:  2000 mm/s² (outer wall + top surface: 1000 mm/s²)
initial_layer_height:  0.12mm
brim:                  outer_only, 6mm — critical for thin bases and multi-piece prints
skirt:                 2 loops, 2.5mm distance — primes nozzle before model
seam:                  scarf seam entire loop
xy_contour_compensation: 0.05mm
xy_hole_compensation:  -0.1mm
resolution:            0.001mm
reduce_crossing_wall:  enabled
reduce_infill_retraction: enabled only with calibrated filament; disable if nozzle hits print
bridge_flow:           0.85

微缩模型的支持设置(关键):

support_type:              tree(auto) organic/grid — NOT slim (slim skips interface generation)
support_threshold_angle:   15° conservative; increase to 20–25° if spaghetti occurs, max 30°
support_top_z_distance:    must be a multiple of layer_height:
                             0.06mm layers → 0.18mm
                             0.08mm layers → 0.24mm (easier removal)
                             0.12mm layers → 0.12mm (cleaner surface, harder removal)
support_bottom_z_distance: 0mm
support_interface_spacing: 0.2mm
support_base_pattern:      rectilinear-grid, spacing 3mm
tree_support_tip_diameter: 1.2mm — CRITICAL: values below 1.0mm suppress interface generation,
                           causing supports to fuse directly to the model
tree_support_branch_diameter: 1.0mm
tree_support_branch_distance: 1.0mm
tree_support_wall_count:   2
support_on_build_plate_only: true

微缩模型专用工作流提示(来自社区测试):

  • 将复杂模型拆分成多个部件,并调整每个部件的方向以尽量减少悬垂——这比调整任何设置都更有效
  • 优先调整方向:尽可能增大平坦底面面积,旋转手臂/武器以减少无支撑角度
  • 耗材校准(流量比例、PA、温度)对质量的影响,大于将层高从 0.06mm 调整到 0.05mm
  • 烘干耗材:打印前以 50°C 烘干 PLA 8h——水分会导致 0.06mm 层高打印时出现表面缺陷
  • 推荐耗材:eSun PLA+ HS(悬垂效果更好)、Sunlu PLA+ 2.0 HS(表面质量更好)
  • 熨烫:微缩模型应关闭(平坦表面较少);仅在打印顶部有大面积平面的车辆/地形时启用
  • 如果喷嘴撞到打印件:先禁用 reduce_infill_retraction——这是最常见的原因
  • 如果树状支撑倒塌:先检查首层附着情况——树状支撑需要牢固的锚点
  • 如果预览中缺少支撑界面(看不到深绿色图层):增大 tree_support_tip_diameter——否则支撑会与模型融合

来源: u/ObscuraNox 的 “Dungeons and Derps” HQ Profile v2.0 (r/FDMminiatures)—— 设置和原理摘录自 v2.0 JSON 配置文件及完整文档帖子。


阶段 5:自定义 G-code

OrcaSlicer 在机器启动/结束 G-code、耗材启动/结束 G-code、图层更改 G-code 和换工具 G-code 中提供丰富的占位符变量。

完整的变量参考请参阅 references/placeholders.md。

常见启动 G-code 模式(Klipper)
; --- Machine Start G-code for Klipper ---
M104 S0                          ; cancel any temp from preview
M140 S0
PRINT_START BED={first_layer_bed_temperature[0]} EXTRUDER={first_layer_temperature[0]}
; --- Machine Start G-code (inline heating) ---
G28                              ; home
M190 S{first_layer_bed_temperature[0]}   ; wait for bed
M109 S{first_layer_temperature[0]}       ; wait for nozzle
G29                              ; bed leveling (if not in PRINT_START)
图层更改 G-code
; pause at layer 3 for color change
{if layer_num == 3}M600{endif}
条件 G-code 语法
{if condition}...{endif}
{if condition}...{else}...{endif}
{value|default(fallback)}
温度占位符
M104 S{first_layer_temperature[0]}         ; initial layer nozzle
M190 S{first_layer_bed_temperature[0]}     ; initial layer bed
M104 S{nozzle_temperature[0]}              ; normal printing temp
M140 S{bed_temperature[0]}                 ; normal bed temp

阶段 6:耗材配置文件——关键参数

参数PLAPETGABS/ASATPUPA/Nylon
喷嘴温度190–220°C230–250°C235–260°C210–240°C240–280°C
热床温度55–65°C70–85°C100–115°C30–60°C70–90°C
腔体温度——40–50°C—50–60°C
风扇速度80–100%20–50%0–20%50–80%0–30%
流量比例0.95–1.00.95–1.00.95–1.00.9–1.00.95–1.0
最大体积速度12–20 mm³/s8–15 mm³/s8–12 mm³/s3–8 mm³/s6–12 mm³/s
压力提前0.02–0.060.04–0.100.02–0.060.05–0.150.03–0.08
回抽(直驱)0.4–1.0mm0.5–1.5mm0.5–1.0mm1.0–3.0mm0.5–1.5mm
回抽(鲍登)3–6mm4–7mm4–7mm2–4mm4–8mm

阶段 7:诊断打印质量问题

问题可能原因要调整的设置
拉丝温度过高、回抽过少降低温度、增加回抽、检查 PA
挤出不足温度过低、速度过快、喷嘴堵塞提高温度、降低速度、检查流量比
挤出过量流量比过高降低 filament_flow_ratio
角部鼓起PA 过低提高 pressure_advance
振纹/重影机械共振运行输入整形校准
层间粘合失败温度过低提高喷嘴温度
翘曲热床温度过低、没有封闭机箱提高热床温度、加 brim、封闭打印机
象脚首层压得过紧提高 Z 偏移,或启用“象脚补偿”
顶面有间隙流量过低,或顶面速度过快提高流量比、降低顶面速度
顶面起泡冷却过强、顶层过少降低风扇转速、增加顶层
支撑难以拆除接口间隙过小增大支撑与模型的间隙,PLA 使用 PETG 接口
接缝明显接缝位置不理想使用“对齐”或“背面”接缝,或使用围巾接缝
VFA / 斑马纹特定速度下发生共振进行 VFA 测试,找出并避开共振速度

阶段 8:网络打印机集成

Klipper(通过 Moonraker)

在 OrcaSlicer 中:打印机设置 → 连接

  • 协议:Moonraker
  • 主机名/IP:<printer_ip>
  • 端口:7125
  • API 密钥:未配置时留空
OctoPrint
  • 协议:OctoPrint
  • 主机名/IP:<printer_ip>
  • 端口:5000(默认)
  • API 密钥:从 OctoPrint → 设置 → 应用密钥中获取
PrusaLink(Prusa MK4 / XL)
  • 协议:PrusaLink
  • 主机名/IP:<printer_ip>
  • 密码:在打印机屏幕上查看
Bambu Lab
  • 使用专有的 Bambu 网络插件(可选安装)
  • 云模式需要 Bambu 账号
  • 局域网模式:在打印机上启用,并在 OrcaSlicer 中设置访问码

阶段 9:配置文件 JSON 结构

最简打印机变体(machine)配置文件
{
  "type": "machine",
  "name": "MyPrinter 0.4 nozzle",
  "inherits": "fdm_machine_common",
  "from": "system",
  "instantiation": "true",
  "nozzle_diameter": ["0.4"],
  "printer_model": "MyPrinter",
  "printer_variant": "0.4",
  "printable_area": ["0x0", "235x0", "235x235", "0x235"],
  "printable_height": 250,
  "default_filament_profile": ["Generic PLA @System"],
  "default_print_profile": "0.20mm Standard @MyPrinter 0.4",
  "machine_start_gcode": "PRINT_START BED={first_layer_bed_temperature[0]} EXTRUDER={first_layer_temperature[0]}",
  "machine_end_gcode": "PRINT_END"
}
最简耗材配置文件
{
  "type": "filament",
  "name": "Generic PLA @MyPrinter@",
  "inherits": "Generic PLA @System",
  "from": "system",
  "instantiation": "true",
  "nozzle_temperature": ["215"],
  "bed_temperature": ["60"],
  "filament_flow_ratio": ["0.98"],
  "compatible_printers": ["MyPrinter 0.4 nozzle"]
}
最简工艺配置文件
{
  "type": "process",
  "name": "0.20mm Standard @MyPrinter 0.4",
  "inherits": "fdm_process_common",
  "from": "system",
  "instantiation": "true",
  "layer_height": 0.2,
  "print_speed": 150,
  "compatible_printers": ["MyPrinter 0.4 nozzle"]
}

阶段 10:配置文件验证

创建或编辑配置文件后,请验证它们:

方法 1 — OrcaSlicer 配置文件验证器
# Linux / macOS
./OrcaSlicer_profile_validator -p /path/to/resources/profiles -l 2 -v VendorName

# Windows
OrcaSlicer_profile_validator.exe --path C:\path\to\resources\profiles -l 2 -v VendorName
方法 2 — Python 脚本
python orca_extra_profile_check.py --vendor="VendorName" --check-filaments --check-materials
强制重新加载配置文件(编辑已安装的配置文件后)

删除系统缓存:

  • Windows:%APPDATA%\OrcaSlicer\system\
  • macOS:~/Library/Application Support/OrcaSlicer/system/
  • Linux:~/.config/OrcaSlicer/system/

然后重启 OrcaSlicer。


Agent 常见错误(自查)

错误正确做法
不了解打印机就提供设置必须先完成阶段 1——询问打印机、喷嘴、耗材、固件和目标
因为“形状很简单”而跳过模型分析所有模型都需要进行 11 项检查——简单形状也可能有不良壁面或单位错误
校准顺序建议不正确始终按以下顺序进行:温度 → MVS → PA → 流量 → 回抽 → 转角控制 → 输入整形
为 Marlin 打印机编写 Klipper G-code编写任何 G-code 之前,必须确认固件
不清楚目标就给出单一“最佳”设置始终询问:功能 / 外观 / 速度 / 微缩模型——不同目标的设置差异很大
跳过可打印性评分报告推荐设置前必须报告分数和问题,即使分数是 10/10 也不例外
不清楚是直驱还是 Bowden 就建议回抽值必须询问挤出机类型——数值可能相差 3–5 倍
编辑已安装的配置文件,却不提删除缓存必须提醒用户删除 <config>/system/ 缓存并重启 OrcaSlicer

参考资料

  • references/profiles.md — 完整的配置文件 JSON 架构、继承规则和字段参考
  • references/calibration.md — 每项测试的分步校准流程
  • references/placeholders.md — 内置占位符变量完整参考
  • references/settings.md — 三种配置文件类型的带注释设置参考

Wiki: https://www.orcaslicer.com/wiki/
GitHub: https://github.com/OrcaSlicer/OrcaSlicer
版本发布: https://github.com/OrcaSlicer/OrcaSlicer/releases/latest

评论

支持 Markdown