跳到主要内容

加热容差配置

功能说明

verify_heater 用于调整 Klipper 对加热器的安全检测阈值。它不是提高加热功率的配置,而是用于处理升温较慢、热惯性较大或温度波动较明显时的误报问题。

安全提醒
  • 不要为了绕过真实故障而盲目放宽检测阈值。
  • 如果加热一直升不上去,应优先检查加热棒、热床、MOS 管、供电、电源功率、热敏接线和热敏型号。
  • 修改后必须现场观察一次完整升温过程,确认温度变化正常。

挤出机参考配置

printer.cfg
[verify_heater extruder]
max_error: 120
check_gain_time: 120
hysteresis: 50
heating_gain: 2

热床参考配置

printer.cfg
[verify_heater heater_bed]
max_error: 120
check_gain_time: 120
hysteresis: 50
heating_gain: 2
参考值说明

上方参考配置中的 check_gain_time: 120hysteresis: 50放宽后的示例值,仅用于确认硬件正常后排查误报。Klipper 官方默认值为:check_gain_time 挤出头 20 秒 / 热床 60 秒、hysteresis: 5。误报排除后建议恢复默认值,避免掩盖真实故障。

参数说明

以下为 Klipper 官方对 [verify_heater] 各参数的定义,修改前请先理解其工作机制。

max_error

  • 默认值120
  • 报错之前最大的“累计温度偏差”。更小的值会导致更严格的检查,而更大的值在报错前允许更多的时间。
  • 具体地说,温度会每秒检查一次:
    • 如果温度正在接近目标温度,内部的“错误计数”会重置;
    • 否则,如果温度低于目标区间,计数器会增加“汇报的温度与目标的差”;
    • 当计数值超过 max_error 就会报错。

check_gain_time

  • 默认值:挤出头 20 秒,热床 60
  • 这个量控制着加热器初始化加热时的检查。更小的值会导致更严格的检查,而更大的值在报错前允许更多的时间。
  • 具体地说,初始化加热时,只要加热器在时间片内(秒)升高温度,错误计数会重置。

hysteresis

  • 默认值5(°C)
  • 被认为是在目标区间内的最大温差(以摄氏度为单位)。这个量控制着 max_error 区间检测。
  • 很少需要定制这个值。

heating_gain

  • 默认值2(°C)
  • check_gain_time 检查中最小需要升高的温度(以摄氏度为单位)。
  • 很少需要定制这个值。

适合调整的情况

  • 大尺寸热床升温慢,确认硬件正常但偶发 Heater heater_bed not heating at expected rate
  • 高温热端接近目标温度时波动较大,确认 PID 已校准但仍偶发误报
  • 腔体温度变化导致热床或热端升温曲线变慢

不建议调整的情况

  • 热敏温度显示为负数、几百度或明显跳变
  • 加热器开启后温度完全不变化
  • MOS 管、接线端子或电源有发热、变色、异味
  • 配置的 sensor_type 与实际热敏型号不一致

调试建议

  1. 先执行 PID 校准并保存配置。
  2. 冷机状态下观察一次完整升温曲线。
  3. 只针对误报的加热器添加 [verify_heater],不要一次改多个。
  4. 每次只修改一个参数,并记录修改前后的表现。

常用 PID 校准命令:

PID_CALIBRATE HEATER=extruder TARGET=245
PID_CALIBRATE HEATER=heater_bed TARGET=100
SAVE_CONFIG
Loading...