本章前言:大家好!当您看到这篇文章时,说明您已经成功部署了树莓派上位机,并且完成了八爪鱼主板固件的刷写与上下位机握手。此时,打印机已整装待发,但千万不要急着直接归零或加热打印!Voron 2.4 作为一款由 4 根独立 Z 轴悬挂龙门架的 CoreXY 结构机器,在通电初次运转时,哪怕一个电机的转向反了、或者一个限位开关开路,都可能导致严重的物理撞机和硬件损坏。

本文将参照经典的 Voron 调试规范,针对 BIGTREETECH Octopus Pro 主板及 TMC2209 驱动的硬件特性,为您提供一份极其详尽、避坑点满满的 15 步调试全攻略。建议用作打印机身边的“通关备忘录”。


🚨 安全第一须知

在进入软硬件调试之前,请牢记以下红线:

  1. 严禁带电拔插驱动与电机:在主板通电(无论是 24V 还是 USB 5V)的状态下,绝对不要插拔步进电机线束或 TMC 驱动模块,这会产生极高的反向电动势,瞬间烧毁驱动芯片或主板。
  2. 紧急停机(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)移动打印头,使喷嘴精确对准热床的左前角(即打印有效区域的零点)。

  1. 若喷嘴已移动到左前角,但网页端显示的坐标不是 X=0, Y=0。
  2. 在控制台运行 M114 命令,读取当前的物理位置(例如显示 X=5, Y=8)。
  3. 根据偏差,更新 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轴复位传感器位置定义

  1. 执行 G28 X Y。
  2. 手动点动打印头,将喷嘴中心精确移动到热床右后方的 Z 物理轴针正上方。
  3. 发送 M114 读取当前的 XY 坐标(例如 X=232, Y=338)。
  4. 将此坐标更新到配置文件的 [safe_z_home] 节点下的 home_xy_position 参数中:
    [safe_z_home]
    home_xy_position: 232, 338  # 将其替换为您实测的 Z 轴针坐标
    speed: 100
    z_hop: 10
    
  5. 保存并重启 Klipper,测试发送 G28。打印机应该会在完成 XY 归零后,自动把头移动到轴针上方,向下轻触完成 Z 归零。

2.11.6 调平传感器Probe的检查

在执行四轴龙门调平(QGL)前,必须检测接近开关(Probe)的信号:

  1. 确保喷嘴处于半空,传感器距离热床较远(指示灯熄灭)。发送:
    QUERY_PROBE
    
    应返回 open。
  2. 用一把钢板尺或金属薄片贴近 Probe 传感器底部,直至其顶部的红色指示灯亮起。再次发送 QUERY_PROBE,应返回 triggered。
  3. 如果状态相反,请在 [probe] 的 pin 参数前添加或去掉感叹号 !。
  4. ⚠️ 高度物理避坑:请调整 Probe 的物理安装高度。其金属感应底端面必须高出喷嘴尖端 1.5mm ~ 2mm。如果装得太低,打印时探头会刮蹭并击倒已打印好的模型;装得太高,则在探测时喷嘴会先于探头撞击并损坏热床。


2.11.7 probe传感器精度测试

  1. 在冷态下,执行 G28 将打印机归零。
  2. 手动将打印头移动至热床几何中心点(例如 300 规格为 X=150, Y=150),将高度降至 Z=10 左右。
  3. 在控制台运行:
    PROBE_ACCURACY
    
    打印头会在此位置自动连续下探并抬升 10 次,最终在控制台输出极差(range)和标准差(standard deviation)。
  4. 合格判定:标准差(standard deviation)应小于 0.003mm。若极差或标准差过大,请检查龙门架各处螺丝是否松动,或者 Z 轴皮带张力是否过松。

2.11.8 四轴龙门调平(Quad Gantry Leveling)

  1. 确认 [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   # 右下
    
  2. 先执行 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 分钟后,执行:

  1. 发送 G32(包含清空网格、双归零及 QGL)。
  2. 将打印头移动到床子中心,执行:
    Z_ENDSTOP_CALIBRATE
    
  3. 在喷嘴和 Z 轴针之间垫一张标准的 A4 白纸。
  4. 在控制台使用微调降高命令:TESTZ Z=-1(大跨度)或 TESTZ Z=-0.05(微调)缓慢降低喷嘴高度,其间用手轻轻拉动白纸。
  5. 判定标准:当感受到拉动白纸有较明显的阻力,且向前推白纸时纸张会发生弯折,即为完美的第一层高度。
  6. 发送 ACCEPT 接受该数值,接着发送 SAVE_CONFIG 保存重启。
  7. 🚨 特别重要安全警告:发送 SAVE_CONFIG 重启的一瞬间,请立刻在脑海里做好准备——重启后立刻执行 G28 归位,或者手动点动抬高 Z 轴!防止处于 240°C 高温的喷嘴长时间贴在 PEI 钢板的同一位置,从而把 PEI 涂层烫出一个永久性凹坑!


2.11.13 挤出机校准

确保拉出 100mm 耗材时,挤出机刚好精确消耗 100mm:

  1. 加热喷头到 220°C。
  2. 从挤出机进料口的铁氟龙管口处,用卡尺精准量取 120mm 料丝,并用记号笔做一个标记。
  3. 在控制台慢速挤出 100mm(由于 Klipper 限制单次出料安全值,需要分两次执行):
    G91
    G1 E50 F60
    G1 E50 F60
    G90
    
  4. 挤出完成后,用卡尺测量剩余料丝到进料口的距离(设为 $X$)。
  5. 更新计算:
    • 完美的实际挤出长度应为 $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 具有极为出色的原生支持)。

  1. 在切片机中添加 Voron 2.4,并设定对应的机器尺寸(250/300/350mm)。
  2. 在起止 G-code 脚本中填入上面我们配置的 PRINT_START 和 PRINT_END:
    • 开始 Gcode 范例:
      M104 S0 ; 禁用切片默认的加热代码
      M140 S0 ; 
      PRINT_START BED=[first_layer_bed_temperature] EXTRUDER=[first_layer_temperature]
      
  3. 从开源网站下载经典的 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。

💬 探讨与反馈

💡 快速交流与账号登录贴士
🔹 免填/趣味随机昵称:系统已为您随机分配趣味昵称(如「摸鱼的卡皮巴拉」「喝冰美式的工程喵」),可随时点击 快速换一个,支持免注册畅聊。
🔹 第三方账号一键登录(密码绝不泄露):支持 GitHub、微博、Twitter、Facebook、QQ 官方直接授权登录。点击输入区右上角登录图标即可一键登录,采用标准 OAuth 2.0 官方鉴权机制,密码全程由官方平台验证,本站绝不经手且无法获取您的密码,安全可靠。
🔹 QQ 号免密同步头像:直接在邮箱栏输入 QQ 号 或 QQ 邮箱(如 123456@qq.com),无需登录即可秒显您的专属 QQ 头像。