Klippain详细使用指南
项目简介
Klippain是一个通用、模块化且高度可自定义的Klipper配置系统,专为3D打印机设计。该项目名称中的"pain"是法语中"面包"的意思,所以Klippain旨在提供一种"无痛"的Klipper配置方案,让用户能够更轻松地配置和管理3D打印机。
Klippain适用于各种打印机类型,包括笛卡尔结构、CoreXY和CoreXZ,已被证实可在Voron V2.4、Voron Trident、Voron V0、Voron SwitchWire、TriZero、VZbot、Ender5、Ender3、Prusa等多种打印机上正常工作。
Klippain的主要特点包括:
- 标准宏命令集
- 自适应热床网格校准
- 自定义打印机校准功能
- 自动化输入整形工作流
- 振动测量宏和脚本
- 等多种高级功能
安装过程
前提条件
在安装Klippain之前,请确保您已经安装了:
- Klipper
- Moonraker
- 一个Web界面(如Mainsail或Fluidd)
如果您尚未安装这些组件,可以使用KIAUH工具进行安装。
安装步骤
-
运行安装脚本:
通过SSH连接到您的打印机控制器(如树莓派),并执行以下命令:wget -O - https://raw.githubusercontent.com/Frix-x/klippain/main/install.sh | bash
此脚本将:
- 备份您当前的配置
- 下载Klippain仓库到您的树莓派主目录
- 在
~/printer_data/config
中设置Klippain - 提示您选择并安装MCU板引脚模板(推荐,但也可稍后手动设置)
-
MCU模板选择:
安装脚本会提示您选择:- 主MCU模板
- 可选的热端MCU模板(如果您使用热端控制板)
- 可选的MMU/ERCF MCU模板(如果您使用多材料单元)
-
安装完成后:
安装脚本将重启Klipper服务,并自动安装Shake&Tune插件(用于输入整形和振动测量)。
重要提示
警告:为保持自动更新功能正常工作:切勿直接修改Klippain文件,而应按照文档添加覆盖配置。您可以修改配置根目录中的预安装模板(
printer.cfg
、mcu.cfg
、variables.cfg
和overrides.cfg
),这些文件在更新时会被保留。
配置调试
Klippain的配置过程包括几个重要步骤:
1. MCU设置
在配置Klippain之前,您需要配置MCU和接线。如果您在安装过程中没有选择任何模板(或想要自定义默认接线),请根据MCU引脚和接线文档修改mcu.cfg
文件。
别忘了填写MCU的serial_port或can_uuid。如需帮助,请参考官方Klipper文档。
2. 打印机设置、覆盖和变量
这是最重要的部分。MCU配置完成后,您需要:
-
在
printer.cfg
中,取消注释与您的打印机硬件或软件组件对应的行,以启用它们(例如挤出机类型、XY电机、Z电机、QGL与Z_TILT等)。 -
根据覆盖文档和示例编辑
overrides.cfg
。使用覆盖来调整机器尺寸、反转电机方向、更改轴限制、电流、传感器类型或任何您需要更改的内容。 -
Klipper成功启动后,调整
variables.cfg
文件以匹配您的机器配置。此文件为宏行为提供额外的自定义选项(坐标、启用/禁用软件功能等)。
注意:如果要将MMU/ERCF与Klippain一起使用,您需要安装HappyHare后端。
3. 机器初始启动
在首次打印之前,仔细检查所有功能,以防止机器出现问题!首先从官方Klipper文档的配置检查部分开始。
接下来,确保:
- 机械探针(如果使用)可以正确安装/拆卸
- QGL/Z_TILT正常工作
- 所有组件的坐标正确(清洗桶、物理Z限位开关等)
- 首层校准正确(如果使用自动Z校准插件,还需检查
switch_offset
参数)
4. 切片软件配置
Klippain可以与市面上大多数切片软件开箱即用,您的配置文件应该几乎可以直接使用。您只需设置一些自定义的打印起始和结束G代码,为Klippain提供正确的信息。
自定义打印起始G代码
切片软件 | 自定义打印起始G代码 |
---|---|
SuperSlicer | START_PRINT EXTRUDER_TEMP={first_layer_temperature[initial_extruder] + extruder_temperature_offset[initial_extruder]} BED_TEMP=[first_layer_bed_temperature] MATERIAL=[filament_type] SIZE={first_layer_print_min[0]}_{first_layer_print_min[1]}_{first_layer_print_max[0]}_{first_layer_print_max[1]} INITIAL_TOOL={initial_extruder} |
OrcaSlicer | START_PRINT EXTRUDER_TEMP=[nozzle_temperature_initial_layer] BED_TEMP=[bed_temperature_initial_layer_single] MATERIAL=[filament_type] SIZE={first_layer_print_min[0]}_{first_layer_print_min[1]}_{first_layer_print_max[0]}_{first_layer_print_max[1]} INITIAL_TOOL=[initial_tool] |
PrusaSlicer | START_PRINT EXTRUDER_TEMP={first_layer_temperature[initial_extruder]} BED_TEMP=[first_layer_bed_temperature] MATERIAL=[filament_type] SIZE={first_layer_print_min[0]}_{first_layer_print_min[1]}_{first_layer_print_max[0]}_{first_layer_print_max[1]} INITIAL_TOOL={initial_extruder} |
此外,Klippain还支持一些可选参数(必须在同一行上的第一个参数之后添加):
CHAMBER=[chamber_temperature]
:在START_PRINT序列期间设置目标热浸温度TOTAL_LAYER=[total_layer_count]
:用于在Klipper中设置PRINT_STATS_INFOSTOOLS_USED=!referenced_tools!
:(仅适用于MMU用户)强烈推荐使用HappyHare Moonraker G代码预处理器检查仅使用的工具CHECK_GATES=0
或1
:(仅适用于MMU用户)将覆盖Klippainvariables.cfg
中为此特定打印定义的相应变量SYNC_MMU_EXTRUDER=1
:(仅适用于MMU用户)如果要保持HappyHare的默认sync_to_extruder: 0
值,但仍想为特定打印使用同步
自定义打印结束G代码
所有切片软件都可以使用简单的:
END_PRINT
此外,Klippain还支持一些可选参数:
FILTER_TIME=600
:将覆盖Klippainvariables.cfg
中为此特定打印定义的相应变量。时间以秒为单位表示MMU_UNLOAD_AT_END=0
或1
:(仅适用于MMU用户)将覆盖Klippainvariables.cfg
中定义的相应变量
自定义和覆盖
在Klipper中,当定义了两个相同的 [section]
时,包含顺序中的最后一个将优先生效。此外,所有缺失的值都将由最后一个条目填充。这种机制称为"覆盖"。
为了保持Klippain文件只读并与Moonraker的更新管理器兼容,您需要广泛使用此机制。每个Klippain文件中都包含默认值,但如果要更改它们,可以添加一些覆盖,而无需深入并修改Klippain文件夹中的所有文件。
如何编写覆盖
以下示例将帮助您添加所需的所有覆盖,以自定义Klippain并使其正确地与您的打印机一起工作!
例如,如果您想更改X轴的电机电流,需要覆盖 [tmc2209 stepper_x]
部分,因为这是定义电流的地方。要执行此操作,只需将以下内容添加到您的 overrides.cfg
文件中:
[tmc2209 stepper_x]
run_current: ...
类似地,如果要反转Z2电机方向,请覆盖 [stepper_z2]
部分并在引脚名称前添加 !
:
[stepper_z2]
dir_pin: !mcu:Z2_DIR
更改热敏电阻类型(例如床热敏电阻),可以这样做:
[heater_bed]
sensor_type: ...
您甚至可以重新定义整个宏!例如,如果默认的Klippain引导线不适合您的需求,只需像这样覆盖宏:
[gcode_macro _MODULE_PRIMELINE]
gcode:
# 在此处放置您的自定义引导线G代码...
主要功能
Klippain提供了许多强大的功能,以下是一些主要特性:
1. 自适应热床网格校准
自适应热床网格是本配置中最知名的宏之一。它几乎与普通热床网格相同,但只在"需要时"和"需要的地方"执行。这意味着它只会在打印区域进行网格校准,从而节省时间并提高精度。
2. 压力提前校准宏
Klippain提供了一个简易的压力提前校准宏,使得调整压力提前值变得简单直观。这有助于减少挤出不连续性并提高打印质量。
3. 流量校准宏
流量校准宏提供了一种与材料和切片软件无关的方法,使用简单的测量工具来校准流量挤出倍增器。
4. 自动输入整形工作流
Klippain集成了一个自动化的输入整形工作流,无需使用SSH就能完成校准过程。这大大简化了打印机共振校准的过程。
5. 振动测量和校准工作流
Klippain提供了自定义设计的振动测量和校准工作流,使您能够对机器速度设置进行高级校准,并优化整体机械组装。
卸载Klippain
如果Klippain不符合您的需求,或者您错误地安装了它,可以使用自动卸载脚本轻松移除Klippain并恢复到之前的配置。在卸载过程中,脚本将移除所有特定的Klippain文件和配置。此外,您还可以选择恢复之前备份的配置,使打印机恢复到最后的工作状态(从安装Klippain之前的状态)。
要运行卸载脚本,请通过SSH执行以下命令:
wget -O - https://raw.githubusercontent.com/Frix-x/klippain/main/uninstall.sh | bash
注意:在卸载过程中,所有备份都会被保留。因此,如果您希望恢复,可以随时轻松地恢复。
总结
Klippain是一个功能强大、高度可定制的Klipper配置系统,适用于各种3D打印机。通过其模块化设计和丰富的功能,它能够帮助用户轻松配置和优化打印机,提高打印质量和效率。
关键特点包括:
- 通用性:适用于多种打印机类型和硬件配置
- 模块化:可根据需要启用或禁用各种功能
- 自动化:提供多种自动化校准和测量工具
- 可扩展性:通过覆盖机制轻松自定义而不影响核心文件
- 易于维护:支持通过Moonraker自动更新
通过按照本指南中的步骤,您应该能够成功安装、配置和使用Klippain,充分发挥您3D打印机的潜力。