メインコンテンツにスキップ

サーミスタ設定方法

このページでは、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_mcuMCU 内部温度の表示
ホスト温度[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_type としては、Generic 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 の2種類に分けられます。この方法は、通常のサーミスタ 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 は、実際のプローブの線数に従って記入します。一般的には 23、または 4 です。
  • ディップスイッチやジャンパー付きのボードは、製品ドキュメントに従って 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] の前に記述する必要があります。

カスタムサーミスタの一般的な記述方法は2つあります:

資料の種類推奨記述方法説明
複数の温度/抵抗点がある三点法優先して使用。温度曲線が実際のセンサーにより近い
公称抵抗と 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
三点の選択

三点は、一般的な印刷温度範囲(例:室温、中温、最高使用温度付近)をカバーするように選択してください。仕様書に温度/抵抗表が記載されている場合は、表から3点を選択することを優先してください。

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 分解能が優れています。
  • PEI、PC、PA などの高温フィラメント印刷シナリオに適した 300°C 級高温ホットエンドに適しています。
  • 標準の 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...