跳到主要内容

热敏配置方法

本页面整理 Klipper 中常见温度传感器配置方式,包括热端、热床、仓温、主板温度、上位机温度、PT1000 直连、MAX31865 和 K 型热电偶。示例中的引脚、传感器型号、上拉电阻和温度范围都需要按实际硬件修改。

断电操作

检查或更换热敏、PT100/PT1000、热电偶模块、加热棒、热床、跳线帽或端子前,请完全关闭打印机并断开电源供应,并等待热端和热床冷却。不要在通电状态下插拔线束、整理接口线序或触碰端子。

使用说明
  • sensor_type 必须与实际传感器一致,不能只按配置示例照抄。
  • sensor_pin 必须连接到支持温度采样的 ADC / 热敏接口,不能填风扇口、加热口、限位口或普通输出口。
  • PT100/PT1000、热电偶和普通 NTC 热敏电阻使用的接口和配置方式不同,接错接口会导致温度异常或 ADC out of range
  • 修改温度传感器或加热器配置后,应重新检查温度读数,并按需重新 PID 校准。

基本结构

温度传感器通常出现在以下配置段中:

场景配置段常见用途
热端[extruder]读取热端温度并控制热端加热
热床[heater_bed]读取热床温度并控制热床加热
仓温 / 额外温度[temperature_sensor xxx]只显示温度,不直接控制加热
自定义加热器[heater_generic xxx]控制加热仓、干燥箱等额外加热设备
主板温度[temperature_sensor xxx] + temperature_mcu显示 MCU 内部温度
上位机温度[temperature_sensor xxx] + temperature_host显示上位机 CPU 温度

最常见的热端配置结构如下:

printer.cfg
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: <sensor_type>
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300

最常见的热床配置结构如下:

printer.cfg
[heater_bed]
heater_pin: <bed_heater_pin>
sensor_type: <sensor_type>
sensor_pin: <bed_sensor_pin>
min_temp: 0
max_temp: 120

普通 NTC 热敏电阻

普通热端、热床常见使用 100K NTC 热敏电阻。此类传感器通常接在主板或工具板的普通热敏接口上。

热端示例

printer.cfg
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: Generic 3950
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300

热床示例

printer.cfg
[heater_bed]
heater_pin: <bed_heater_pin>
sensor_type: Generic 3950
sensor_pin: <bed_sensor_pin>
min_temp: 0
max_temp: 120

C8P 口位示例

下面只演示 C8P 常见口位写法。实际使用时请按你接线的热敏口和加热口填写。

C8P 热端示例
[extruder]
heater_pin: PD12
sensor_type: Generic 3950
sensor_pin: PC2
min_temp: 0
max_temp: 300
C8P 热床示例
[heater_bed]
heater_pin: PB0
sensor_type: Generic 3950
sensor_pin: PC5
min_temp: 0
max_temp: 120
传感器型号

常见 sensor_typeGeneric 3950PT1000 或其他 Klipper 内置型号。请以热端、热床或传感器标称型号为准,不确定时优先查看产品资料或联系售后确认。

PT1000 直连

PT1000 可以直接接到支持 PT1000 的热敏接口。部分 FLY 主板或工具板需要通过跳线帽切换上拉电阻,常见为普通 NTC 使用 4.7K 上拉,PT1000 使用 1K 上拉。

PT1000 直连示例
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: PT1000
sensor_pin: <pt1000_sensor_pin>
pullup_resistor: 1000
min_temp: 0
max_temp: 350
上拉电阻
  • 如果主板或工具板已经按 PT1000 跳线为 1K 上拉,配置中应写 pullup_resistor: 1000
  • 如果硬件仍是默认 4.7K 上拉,可不写 pullup_resistor,Klipper 默认按 4700 处理。
  • 跳线状态和配置必须一致,否则温度会明显偏高、偏低或触发 ADC out of range

MAX31865 配置

MAX31865 用于读取 RTD 铂电阻温度传感器,常见分为 PT100 和 PT1000 两类。此方式不使用普通热敏 ADC 引脚,而是使用 SPI 通信和片选引脚。

传感器常见写法参考电阻示例说明
PT100rtd_nominal_r: 100rtd_reference_r: 430探头标称电阻为 100 欧姆
PT1000rtd_nominal_r: 1000rtd_reference_r: 4300探头标称电阻为 1000 欧姆
先确认类型

PT100、PT1000 和 K 型热电偶不是同一种传感器。MAX31865 只用于 PT100/PT1000 这类 RTD 铂电阻传感器,不用于 K 型热电偶。

PT100 示例

PT100 + MAX31865
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: MAX31865
sensor_pin: <max31865_cs_pin>
spi_bus: <spi_bus>
rtd_nominal_r: 100
rtd_reference_r: 430
rtd_num_of_wires: 2
min_temp: 0
max_temp: 350

PT1000 示例

PT1000 + MAX31865
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: MAX31865
sensor_pin: <max31865_cs_pin>
spi_bus: <spi_bus>
rtd_nominal_r: 1000
rtd_reference_r: 4300
rtd_num_of_wires: 2
min_temp: 0
max_temp: 350
MAX31865 注意事项
  • MAX31865 只能按对应板卡支持的 PT100 / PT1000 接法使用,不要把普通 NTC 热敏电阻接到 MAX31865。
  • sensor_pin 是 MAX31865 的片选引脚,不是普通热敏 ADC 引脚。
  • rtd_num_of_wires 应按实际探头线数填写,常见为 234
  • 带拨码或跳线的板卡必须按产品文档设置 PT100/PT1000 和线制,否则温度读数会异常。

K 型热电偶配置

K 型热电偶需要搭配对应热电偶转换芯片,不能直接接到普通热敏接口,也不能接到 MAX31865 的 PT100/PT1000 接口。常见配置使用 SPI:

K 型热电偶示例
[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: MAX31856
sensor_pin: <thermocouple_cs_pin>
spi_bus: <spi_bus>
tc_type: K
min_temp: 0
max_temp: 500

如果使用其他 K 型热电偶转换芯片,请把 sensor_type 改为实际芯片型号,例如 MAX6675MAX31855MAX31856,并按模块说明配置 SPI。tc_type: K 表示当前探头为 K 型热电偶。

高温配置

只有在热端、加热棒、热敏、喷嘴、热端固定结构和线材都支持高温时,才可以提高 max_temp。不要为了消除报错而随意把 max_temp 设置到远高于硬件能力的数值。

独立温度显示

如果只想显示温度,不需要控制加热器,可以使用 [temperature_sensor xxx]

仓温 / 环境温度

仓温示例
[temperature_sensor chamber]
sensor_type: Generic 3950
sensor_pin: <chamber_sensor_pin>
min_temp: 0
max_temp: 100

主板温度

MCU 温度示例
[temperature_sensor MCU]
sensor_type: temperature_mcu
min_temp: 0
max_temp: 100

上位机温度

Host 温度示例
[temperature_sensor Host]
sensor_type: temperature_host
min_temp: 0
max_temp: 100
显示名称

[temperature_sensor chamber] 中的 chamber 是前端显示名称,可以按实际用途改成 boxtoolboardhost 等。名称不要与已有配置段重复。

常用热敏与自定义热敏

Klipper 内置 sensor_type

以下 sensor_type 已在 Klipper 中内置,直接填写即可使用,不需要自定义 [thermistor xxx]

sensor_type标称电阻定义方式常见用途
Loading...
100K @ 25°C三点法FLY 主板热端 / 热床默认配置
Loading...
100K @ 20°C三点法高温热端、E3D 类热端
Loading...
100K @ 25°C三点法热端 / 热床通用
Loading...
100K @ 25°CB 值 4100硅胶加热垫
Loading...
500K @ 25°C三点法高温热端(450°C)
Loading...
100K @ 25°C三点法热端 / 热床
Loading...
100K @ 25°CB 值 3974热端 / 热床
Loading...
100K @ 25°C三点法热端
选择建议
  • FLY 主板出厂配置通常使用 Generic 3950,更换热敏前先确认原始型号。
  • 如果使用 E3D 类高温热端或配套热敏,常见为 ATC Semitec 104GT-2
  • 不确定型号时,优先查看产品资料或联系售后确认,不要随意更换 sensor_type

自定义热敏

如果传感器不在上方内置列表中,可以用 [thermistor xxx] 定义自定义热敏曲线。

放置位置

[thermistor xxx] 必须写在引用它的配置段上方,也就是写在对应 [extruder][heater_bed][temperature_sensor xxx][heater_generic xxx] 之前。

自定义热敏常见有两种写法:

资料类型推荐写法说明
有多个温度/电阻点三点法优先使用,温度曲线更接近实际传感器
只有标称电阻和 B 值B 值法写法更简单,但高温段精度可能不如三点法

三点法示例

下面以 ATC Semitec 104GT-2 的参数为例,演示三点法自定义热敏的写法。先定义 [thermistor semitec_104gt2],再在 [extruder] 中使用:

ATC Semitec 104GT-2 三点法
[thermistor semitec_104gt2]
temperature1: 20
resistance1: 126800
temperature2: 150
resistance2: 1360
temperature3: 300
resistance3: 80.65

[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: semitec_104gt2
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300

下面以 EPCOS 100K B57560G104F 的参数为例:

EPCOS 100K B57560G104F 三点法
[thermistor epcos_100k]
temperature1: 25
resistance1: 100000
temperature2: 150
resistance2: 1641.9
temperature3: 250
resistance3: 226.15

[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: epcos_100k
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
三点选取

三点应尽量覆盖常用打印温度范围,例如室温、中温和最高常用温度附近。如果规格书提供温度/电阻表,优先从表中选取三个点。

B 值法

如果厂家只提供标称电阻和 B 值,可以使用 temperature1resistance1beta 的方式定义:

100K B3950 B 值法
[thermistor ntc_100k_b3950]
temperature1: 25
resistance1: 100000
beta: 3950

[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: ntc_100k_b3950
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
100K B4500 B 值法
[thermistor ntc_100k_b4500]
temperature1: 25
resistance1: 100000
beta: 4500

[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: ntc_100k_b4500
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 350

高温热敏配置

以下高温热敏参数来自 Marlin 固件源码中经厂家规格书验证的热敏表,适用于需要超过 300°C 测温的高温热端。使用前请确认热端、加热棒、喷嘴和线材均支持对应温度。

ATC Semitec 204GT-2(200K / 300°C)
# R25 = 200K, B25 = 4338, 4.7K 上拉
# 来源:Marlin thermistor_2.h,经 Mouser 厂家规格书验证
[thermistor semitec_204gt2]
temperature1: 25
resistance1: 200000
temperature2: 150
resistance2: 2520
temperature3: 300
resistance3: 142

[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: semitec_204gt2
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
204GT-2 说明
  • 200K 标称电阻在高温段阻值更高,相比 100K 热敏在 250°C 以上有更好的 ADC 分辨率。
  • 适合 300°C 级高温热端,如 PEI、PC、PA 等高温耗材打印场景。
  • 使用标准 4.7 kΩ 上拉即可,无需更换上拉电阻。
Formbot / Vivedino 100K B3950 高温版(350°C)
# R25 = 100K, B25/50 = 3950, 4.7K 上拉
# 来源:Marlin thermistor_61.h,100KR13950181203
[thermistor formbot_3950_350]
temperature1: 25
resistance1: 100000
temperature2: 150
resistance2: 509
temperature3: 300
resistance3: 63.5

[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: formbot_3950_350
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 350
100K 高温精度限制

100K 热敏在 300°C 时阻值仅约 63 Ω,与 4.7 kΩ 上拉差距极大,高温段 ADC 分辨率较低。如果需要长期在 300°C 以上打印,建议优先选用 200K(204GT-2)或 500K(SliceEngineering 450)热敏。

Dyze Design 2.5M B4500(500°C)
# R25 = 2.5M, B25 = 4500, 需配合大阻值上拉
# 来源:Marlin thermistor_66.h 注释参数
[thermistor dyze_500]
temperature1: 25
resistance1: 2500000
beta: 4500

[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: dyze_500
sensor_pin: <hotend_sensor_pin>
pullup_resistor: 470000
min_temp: 0
max_temp: 500
2.5M 热敏上拉要求
  • 2.5MΩ 标称电阻在室温下远大于标准 4.7 kΩ 上拉,使用默认上拉时低温段 ADC 几乎饱和,无法准确测温。
  • 必须配合 470 kΩ 或更大上拉电阻,并在配置中设置 pullup_resistor: 470000
  • 如果主板或工具板不支持更换上拉电阻,不要使用此热敏,改用 PT1000 + MAX31865 或 K 型热电偶方案。
  • 500°C 级别测温请同时确认加热棒、喷嘴、热端结构和线材均满足耐温要求。
高温方案选择
目标温度推荐方案说明
≤ 300°C
Loading...
Loading...
标准配置即可
300°C ~ 350°C
Loading...
需先添加本页对应自定义 [thermistor] 配置
350°C ~ 450°C
Loading...
Klipper 内置,直接填写 sensor_type
450°C ~ 500°C
Loading...
Loading...
需先添加本页对应自定义 [thermistor] 配置,或使用 K 型热电偶
500°C 以上
Loading...
NTC 热敏不适用

三点法通用模板

如果手上有规格书但没有现成参数,可以按下方模板填写:

三点法模板
[thermistor my_custom_thermistor]
temperature1: 25
resistance1: <resistance_at_25c>
temperature2: 150
resistance2: <resistance_at_150c>
temperature3: 250
resistance3: <resistance_at_250c>

[extruder]
heater_pin: <hotend_heater_pin>
sensor_type: my_custom_thermistor
sensor_pin: <hotend_sensor_pin>
min_temp: 0
max_temp: 300
高温热敏限制

max_temp 只能按热端、加热棒、热敏、喷嘴和线材的实际耐温能力设置。高温 NTC 配置能读取更高温度,不代表整套热端都可以安全加热到该温度。

修改后检查

保存配置并重启 Klipper 后,请按下面顺序检查:

  1. 查看前端温度是否接近室温。
  2. 如果显示 ADC out of range、极高温、极低温或负温,先停止加热,断电后检查插头、线材和传感器类型。
  3. 确认 sensor_pin 没有被其他功能重复占用。
  4. 确认 sensor_typepullup_resistorrtd_nominal_rrtd_reference_r 与实际硬件一致。
  5. 热端或热床传感器更换后,重新执行 PID 校准并保存结果。

常见温度与加热报错请参考:温度、加热与挤出报错

Loading...