本章前言:大家好!当您看到这篇文章时,说明您已经成功部署了树莓派上位机,并且完成了八爪鱼主板固件的刷写与上下位机握手。此时,打印机已整装待发,但千万不要急着直接归零或加热打印!Voron 2.4 作为一款由 4 根独立 Z 轴悬挂龙门架的 CoreXY 结构机器,在通电初次运转时,哪怕一个电机的转向反了、或者一个限位开关开路,都可能导致严重的物理撞机和硬件损坏。
本文将参照经典的 Voron 调试规范,针对 BIGTREETECH Octopus Pro 主板及 TMC2209 驱动的硬件特性,为您提供一份极其详尽、避坑点满满的 15 步调试全攻略。建议用作打印机身边的“通关备忘录”。
🚨 安全第一须知
在进入软硬件调试之前,请牢记以下红线:
- 严禁带电拔插驱动与电机:在主板通电(无论是 24V 还是 USB 5V)的状态下,绝对不要插拔步进电机线束或 TMC 驱动模块,这会产生极高的反向电动势,瞬间烧毁驱动芯片或主板。
- 紧急停机(E-Stop)随时待命:在首次测试任何轴的运动(
G28或QGL)时,左手请务必按在键盘的FIRMWARE_RESTART快捷键或 Fluidd 网页端的 【EMERGENCY STOP (急停)】 按钮上。一旦发现运动方向相反或听见刺耳的皮带摩擦声,立刻拍下急停,或者直接切断打印机主开关电源。
🛠️ 三、 15 步系统化检查与校准实战
2.11.1 X Y Z轴限位开关检查
确保 X、Y 和 Z 轴的限位开关均处于空载未被按压的状态,在控制台发送:
QUERY_ENDSTOPS
正常情况下,终端应有如下返回值,所有轴均为 open(打开)状态:
Send: QUERY_ENDSTOPS
Recv: x:open y:open z:open
接下来,手动用手指按住 X 轴限位开关,再次发送 QUERY_ENDSTOPS。终端应显示 X 轴已被触发(triggered):
Send: QUERY_ENDSTOPS
Recv: x:triggered y:open z:open
使用相同方法逐个测试 Y 轴限位(龙门架最右侧后方)和 Z 轴物理限位(热床后方右侧的微动开关轴针)。
⚠️ 避坑逻辑:如果某个限位开关在未按压时就显示
triggered,而按压后显示open,说明物理接线常开/常闭(NO/NC)逻辑相反。打开printer.cfg,在对应轴的endstop_pin设置值前添加或删除感叹号!(实现状态取反):
- 针对八爪鱼主板,X限位通常为
PG6,Y限位为PG9,Z物理限位为PG10:[stepper_x] endstop_pin: ^PG6 # 若相反,则改为 ^!PG6
2.11.2 步进电机检查
在首次归位前,必须确认 7 个电机的物理运动方向。依次发送以下微动嗡鸣测试指令:
STEPPER_BUZZ STEPPER=stepper_x # 测试 X 轴电机 (MOTOR 0)
STEPPER_BUZZ STEPPER=stepper_y # 测试 Y 轴电机 (MOTOR 1)
STEPPER_BUZZ STEPPER=stepper_z # 测试 Z0 电机 (MOTOR 2_1, 左前)
STEPPER_BUZZ STEPPER=stepper_z1 # 测试 Z1 电机 (MOTOR 3, 左后)
STEPPER_BUZZ STEPPER=stepper_z2 # 测试 Z2 电机 (MOTOR 4, 右后)
STEPPER_BUZZ STEPPER=stepper_z3 # 测试 Z3 电机 (MOTOR 5, 右前)
- 测试现象:对应的电机会以 1mm 的幅度来回正反微动 10 次。
- 方向判定:
- X 和 Y 轴电机的方向在此时没有硬性要求(只要能动即可,方向在 XY 归位中判定)。
- Z轴四颗电机(Z0/Z1/Z2/Z3)的微动方向极其关键:当接收到指令时,该电机带动的龙门架角部必须先向上升起,然后向下降落。若方向反了(先降后升),请前往
printer.cfg找到该电机的dir_pin,在其前加上或去掉感叹号!。 - 例如:将
dir_pin: PG3修改为dir_pin: !PG3。
📌 Voron 2.4 Z轴电机物理位置映射图:
┌──────────────────────────┐ │ Z1 (左后) Z2 (右后) │ │ │ │ │ │ Z0 (左前) Z3 (右前) │ └──────────[ 正门 ]─────────┘
2.11.3 XY归位检查
当确认限位与电机方向没有低级错误后,执行首次 XY 归位测试。左手放在网页端“急停”上,控制台发送:
G28 X Y
- 标准运动轨迹:正视打印机,打印头应当先向右移动,直至触碰到 X 轴限位开关归位;接着,整个 X 轴横梁应当向后移动,直至触碰到 Y 轴限位开关归位。
- 故障纠正:由于 CoreXY 结构的运动强耦合性,如果移动方向不对,请参照下表检查并反转对应电机的
dir_pin:
| 实际移动方向 | 应该进行的引脚调整 |
|---|---|
| G28 X 往左移 | 同时反转 Motor B (X) 和 Motor A (Y) 的 dir_pin 极性 |
| G28 X 往前移 | 同时反转 Motor B (X) 的极性,并保持 Motor A (Y) 不变 |
| G28 Y 往前移 | 同时反转 Motor B (X) 和 Motor A (Y) 的 dir_pin 极性 |
2.11.4 定义(0,0)点
执行 G28 X Y 归位后,通过网页控制面板手动点动(Jog)移动打印头,使喷嘴精确对准热床的左前角(即打印有效区域的零点)。
- 若喷嘴已移动到左前角,但网页端显示的坐标不是
X=0, Y=0。 - 在控制台运行
M114命令,读取当前的物理位置(例如显示X=5, Y=8)。 - 根据偏差,更新
printer.cfg中[stepper_x]和[stepper_y]的限位点数值: $$\text{新 position\_endstop} = \text{旧 position\_endstop} - \text{M114读取值}$$ 注:一般 300 规格的 Voron,position_endstop约为 300。调整后输入FIRMWARE_RESTART重启。
2.11.5 Z轴复位传感器位置定义
- 执行
G28 X Y。 - 手动点动打印头,将喷嘴中心精确移动到热床右后方的 Z 物理轴针正上方。
- 发送
M114读取当前的 XY 坐标(例如X=232, Y=338)。 - 将此坐标更新到配置文件的
[safe_z_home]节点下的home_xy_position参数中:[safe_z_home] home_xy_position: 232, 338 # 将其替换为您实测的 Z 轴针坐标 speed: 100 z_hop: 10 - 保存并重启 Klipper,测试发送
G28。打印机应该会在完成 XY 归零后,自动把头移动到轴针上方,向下轻触完成 Z 归零。
2.11.6 调平传感器Probe的检查
在执行四轴龙门调平(QGL)前,必须检测接近开关(Probe)的信号:
- 确保喷嘴处于半空,传感器距离热床较远(指示灯熄灭)。发送:应返回
QUERY_PROBEopen。 - 用一把钢板尺或金属薄片贴近 Probe 传感器底部,直至其顶部的红色指示灯亮起。再次发送
QUERY_PROBE,应返回triggered。 - 如果状态相反,请在
[probe]的pin参数前添加或去掉感叹号!。 ⚠️ 高度物理避坑:请调整 Probe 的物理安装高度。其金属感应底端面必须高出喷嘴尖端 1.5mm ~ 2mm。如果装得太低,打印时探头会刮蹭并击倒已打印好的模型;装得太高,则在探测时喷嘴会先于探头撞击并损坏热床。
2.11.7 probe传感器精度测试
- 在冷态下,执行
G28将打印机归零。 - 手动将打印头移动至热床几何中心点(例如 300 规格为
X=150, Y=150),将高度降至 Z=10 左右。 - 在控制台运行:打印头会在此位置自动连续下探并抬升 10 次,最终在控制台输出极差(range)和标准差(standard deviation)。
PROBE_ACCURACY - 合格判定:标准差(standard deviation)应小于 0.003mm。若极差或标准差过大,请检查龙门架各处螺丝是否松动,或者 Z 轴皮带张力是否过松。
2.11.8 四轴龙门调平(Quad Gantry Leveling)
- 确认
[quad_gantry_level]下的points坐标均位于您的热床打印边界内(通常距离热床边缘 25-50mm)。对于 300 规格热床配置:[quad_gantry_level] gantry_corners: -60,-10 360,370 points: 25,25 # 左下 25,250 # 左后 275,250 # 右后 275,25 # 右下 - 先执行
G28归零,然后发送命令:QUAD_GANTRY_LEVEL- 打印头会依次在这 4 个点下探测距。
- 系统会自动计算出四个角的高度公差,并控制 4 个 Z 电机微调龙门架角度。
- 调平程序会自动循环运行,直至差值收敛到
retry_tolerance: 0.0075mm以内,并输出成功提示。如果提示错误或调整幅度越调越大,说明[stepper_z]至[stepper_z3]的电机引脚顺序接反了,请仔细核对 Z 轴电机的驱动物理插槽。
2.11.9 热床的PID校正
热床面积大,加热至 100°C 需要充足的闭环控制。将喷嘴移动到床子中心上方 10mm,运行命令:
PID_CALIBRATE HEATER=heater_bed TARGET=100
校准过程会循环加热 5 次,耗时约 10 分钟。结束后控制台会输出 PID 推荐数值,运行:
SAVE_CONFIG
Klipper 会将参数自动追加到配置文件最末尾并重启系统。
2.11.10 挤出头的PID校正
为模拟实际打印状态,先通过网页端或控制台将模型冷却风扇开启至 25% 功率(M106 S64),然后输入命令:
PID_CALIBRATE HEATER=extruder TARGET=245
等待 5 分钟左右校准完毕,发送:
SAVE_CONFIG
2.11.11 在热仓中运行四轴龙门调平
3D 打印热床(尤其是大尺寸厚铝板)在被加热至 100°C 过程中会产生不可避免的热膨胀变形(通常会呈现微拱或马鞍形翘曲),框架材料也会因热态膨胀发生微米级的形变。
- 终极调平流程:在开始实际打印前,必须先将热床加热到 100°C,喷头预热至 150°C,开启热床风扇或循环风扇,进行 15-20 分钟的“闷仓预热”。
- 当仓温稳定,且 Probe 重新执行
PROBE_ACCURACY标准差收敛到 0.003mm 以内时,再执行QUAD_GANTRY_LEVEL,以获得最真实的打印热平面。
2.11.12 Z复位偏移调整 (Z-Offset)
Z-Offset 决定了打印时喷嘴离热床的基准高度。在热床(100°C)和喷头(240°C)达到打印温度且闷仓预热 15 分钟后,执行:
- 发送
G32(包含清空网格、双归零及 QGL)。 - 将打印头移动到床子中心,执行:
Z_ENDSTOP_CALIBRATE - 在喷嘴和 Z 轴针之间垫一张标准的 A4 白纸。
- 在控制台使用微调降高命令:
TESTZ Z=-1(大跨度)或TESTZ Z=-0.05(微调)缓慢降低喷嘴高度,其间用手轻轻拉动白纸。 - 判定标准:当感受到拉动白纸有较明显的阻力,且向前推白纸时纸张会发生弯折,即为完美的第一层高度。
- 发送
ACCEPT接受该数值,接着发送SAVE_CONFIG保存重启。 🚨 特别重要安全警告:发送
SAVE_CONFIG重启的一瞬间,请立刻在脑海里做好准备——重启后立刻执行G28归位,或者手动点动抬高 Z 轴!防止处于 240°C 高温的喷嘴长时间贴在 PEI 钢板的同一位置,从而把 PEI 涂层烫出一个永久性凹坑!
2.11.13 挤出机校准
确保拉出 100mm 耗材时,挤出机刚好精确消耗 100mm:
- 加热喷头到 220°C。
- 从挤出机进料口的铁氟龙管口处,用卡尺精准量取 120mm 料丝,并用记号笔做一个标记。
- 在控制台慢速挤出 100mm(由于 Klipper 限制单次出料安全值,需要分两次执行):
G91 G1 E50 F60 G1 E50 F60 G90 - 挤出完成后,用卡尺测量剩余料丝到进料口的距离(设为 $X$)。
- 更新计算:
- 完美的实际挤出长度应为 $120 - X$。若实际挤出为 95mm(说明欠挤出):
- 打开
printer.cfg,找到[extruder]节点下的rotation_distance(值越大,挤出越少;值越小,挤出越多): $$\text{新 rotation\_distance} = \text{旧 rotation\_distance} \times \frac{\text{实际挤出量 (95)}}{100}$$ - 修改后保存并重启 Klipper,再次运行测试,使出料误差控制在 $\pm 0.5\%$ 以内。
2.11.14 动态微调 Z 轴高度 (Baby-stepping)
即使静态 Z-offset 调得很准,不同材质的耗材流动性不同,仍需在首次打印第一层时进行细微修正:
- 在切片软件里切好测试方块或裙边开始打印,观察第一层线条:
- 线条间有空隙(粘结不牢,说明太高):在 Fluidd 控制台点击 Z- (降低 0.01mm)。
- 首层表面起皮、发白甚至无出料(说明太低):点击 Z+ (抬高 0.01mm)。
- 固化参数:在第一层调整完美后,记住此时微调的 Z 偏移量(假设微调了
-0.02mm)。在控制面板点击“保存”,或手动计算: $$\text{新 position\_endstop} = \text{旧 position\_endstop} - \text{动态偏移值}$$ 例:若原值位 3.56,微调了 -0.02,则新值为:$3.56 - (-0.02) = 3.58$。
2.11.15 切片设置和首次打印
建议使用 OrcaSlicer 或 PrusaSlicer(这两款软件对 Klipper 具有极为出色的原生支持)。
- 在切片机中添加
Voron 2.4,并设定对应的机器尺寸(250/300/350mm)。 - 在起止 G-code 脚本中填入上面我们配置的
PRINT_START和PRINT_END:- 开始 Gcode 范例:
M104 S0 ; 禁用切片默认的加热代码 M140 S0 ; PRINT_START BED=[first_layer_bed_temperature] EXTRUDER=[first_layer_temperature]
- 开始 Gcode 范例:
- 从开源网站下载经典的
voron_design_cube.stl(Voron 测试方块)进行切片,建议耗材温度参考:- ABS 耗材:热床 100°C,喷嘴 250°C,前几层关闭模型风扇。
- PLA 耗材:热床 60°C,喷嘴 200°C,开启模型风扇。
经过这 15 步硬核的软硬件校准,您的 Voron 2.4 已经具备了极为稳定的第一层打印基础和完美的定位几何精度,可以正式开启您的极客 3D 打印之旅了!
(第四部分:Voron 2.4 从零开始的 Klipper 机械/传感器校验、PID整定与首层校准避坑指南完成。第五部分我们将深入解析 Klipper 的灵魂配置文件 printer.cfg,逐行拆解八爪鱼主板引脚映射、步进电机细分及核心运行安全保护参数配置。)
本文引用与技术讨论规范
作者:陈亚明(Tony Chen)|微型电磁执行器数字化研发专家
原始出处:ansv.net
本文链接:https://ansv.net/knowledge-base/voron-24-engineering-tuning/04-klipper-calibration-and-tuning/
版权声明:除另有说明外,本文原创文字、公式与原创图示采用 CC BY-NC-ND 4.0(署名—非商业性使用—禁止演绎)协议授权。欢迎在署名、注明原文链接且仅作非商业用途的前提下转载;不得改编、删改或拆分原文内容。
除非另有明确说明,文中涉及的第三方商标、专利附图、产品图片及其他第三方素材,均不在本 CC 协议授权范围内,相关权利归其各自权利人所有。
如有技术交流,欢迎联系:hi@ansv.net。
💬 探讨与反馈
123456@qq.com),无需登录即可秒显您的专属 QQ 头像。