エンドストップなしホーミング
エンドストップなしホーミング(センサレスホーミング)は、TMCドライバの DIAG 信号を利用してモーターのロックを検出し、物理的なリミットスイッチを代替する方法です。
必須条件
以下の条件をすべて満たす必要があります:
- マザーボードが
DIAG機能に対応している。 - ドライバが
DIAG信号出力に対応している。 - 対応するリミットポートには何も接続しない。
- 機械構造がエンドストップなしホーミングに適しており、可動部がエンドポイントに衝突しても損傷しない。
マザーボードの互換性確認
| タイプ | サポート状況 | 代表モデル | 操作要件 |
|---|---|---|---|
| A 類 | デフォルトで直結 | Super / Gemini / CDY / E3 シリーズ | 対応するリミットインターフェースをそのまま使用 |
| B 類 | ジャンパー設定が必要 | D / C / Pro-X10 / Micro シリーズ | DIAG ジャンパーキャップを取り付け必須 |
| C 類 | 非対応 | Fly-F407ZG | エンドストップなし機能を使用不可 |
確認方法:
- マザーボードに
DIAGと記載されたジャンパー端子があるか確認。 - 回路図を参照し、ドライバインターフェースの
DIAG信号がリミットポートに接続されているか確認。 - ほとんどのマザーボードでは、
Drive0はio0、Drive1はio1に対応し、以下同様。
A 類マザーボード:DIAG ジャンパーはなく、デフォルトで対応するリミットポートに直結。
Loading...
B 類マザーボード:DIAG ジャンパーを使用する必要がある。
Loading...
ドライバの互換性確認
ヒント
TMC5160、TMC2240 および TMC2130 には通常2つの DIAG ピンがあります。対応する製品ドキュメントを確認するか、カスタマーサポートに問い合わせて使用するピンを確認してください。
| ドライバモデル | 互換性 | DIAG ピン | 設定要件 | 感度範囲 |
|---|---|---|---|---|
| TMC2209 | 対応 | 単一ピン | diag_pin をそのまま使用 | 0-255、255が最も感度が高く、0が最も低い |
| TMC5160 | 対応 | 2つのピン | diag0_pin または diag1_pin を選択 | -64-63、-64が最も感度が高く、63が最も低い |
| TMC2240 | 対応 | 2つのピン | diag0_pin または diag1_pin を選択 | -64-63、-64が最も感度が高く、63が最も低い |
| TMC2130 | 対応 | 2つのピン | diag0_pin または diag1_pin を選択 | -64-63、-64が最も感度が高く、63が最も低い |
| TMC2208 | 非対応 | - | エンドストップなし機能を使用不可 | - |
| TMC2660 | 非対応 | - | エンドストップなし機能を使用不可 | - |
| LV8729 | 非対応 | - | エンドストップなし機能を使用不可 | - |
設定説明
- 実際のドライバモデルと軸名に合わせて設定を変更する必要があります。
tmc2209_stepper_xのtmc2209は対応するドライバモデルに変更してください。stepper_xのxは X 軸を表します。Y 軸を設定する場合はstepper_yに変更してください。- 一部の機械ではエンドストップなしホーミング使用時に、後退動作によりホーミングが失敗する場合があります。その場合は
homing_retract_distを0に設定してください。
参考設定
- TMC2209 参考設定
- TMC5160 参考設定
- TMC2130 参考設定
- TMC2240 参考設定
注意事項:
- 以下のピンは参考値です。実際のマザーボードに合わせて変更してください。
diag_pinには通常^を追加する必要があります。追加しないとホーミングが失敗する可能性があります。driver_SGTHRSは実測が必要です。255が最も感度が高く、0が最も低いです。
printer.cfg
[stepper_x]
endstop_pin: tmc2209_stepper_x:virtual_endstop
position_endstop: 0
homing_retract_dist: 0
[tmc2209 stepper_x]
diag_pin: ^PD9
driver_SGTHRS: 100
注意事項:
- 以下のピンは参考値です。実際のマザーボードに合わせて変更してください。
- 製品マニュアルを確認して、
diag0_pinとdiag1_pinのどちらを使用するか確認してください。 driver_SGTは実測が必要です。-64が最も感度が高く、63が最も低いです。
printer.cfg
[stepper_y]
endstop_pin: tmc5160_stepper_y:virtual_endstop
position_endstop: 0
homing_retract_dist: 0
[tmc5160 stepper_y]
diag1_pin: ^!PD9
driver_SGT: 1
注意事項:
- 以下のピンは参考値です。実際のマザーボードに合わせて変更してください。
- 製品マニュアルを確認して、
diag0_pinとdiag1_pinのどちらを使用するか確認してください。 driver_SGTは実測が必要です。-64が最も感度が高く、63が最も低いです。
printer.cfg
[stepper_y]
endstop_pin: tmc2130_stepper_y:virtual_endstop
position_endstop: 0
homing_retract_dist: 0
[tmc2130 stepper_y]
diag1_pin: ^!PD9
driver_SGT: 1
注意事項:
- 以下のピンは参考値です。実際のマザーボードに合わせて変更してください。
- 製品マニュアルを確認して、
diag0_pinとdiag1_pinのどちらを使用するか確認してください。 driver_SGTは実測が必要です。-64が最も感度が高く、63が最も低いです。
printer.cfg
[stepper_x]
endstop_pin: tmc2240_stepper_x:virtual_endstop
position_endstop: 0
homing_retract_dist: 0
[tmc2240 stepper_x]
diag1_pin: ^!PD9
driver_SGT: 1
感度テスト
テストの安全
エンドストップなしテストを行う際は、必ずプリントヘッドを機械の中央に移動させ、いつでも M112 緊急停止を実行できるように準備してください。高速または無人状態でのテストは行わないでください。
ステップ 1:最高感度を設定
TMC2209:
SET_TMC_FIELD STEPPER=stepper_x FIELD=SGTHRS VALUE=255
TMC5160 / TMC2240 / TMC2130:
SET_TMC_FIELD STEPPER=stepper_x FIELD=sgt VALUE=-64
ステップ 2:単軸ホーミングを実行
G28 X
軸が移動を開始しない、異常な動きをする、または停止できない場合は、すぐに以下を実行:
M112
この場合、対応する DIAG ピンの配線、ジャンパーキャップ、設定を確認する必要があります。
ステップ 3:徐々に感度を下げる
- TMC2209:
SGTHRSを徐々に減らす。 - TMC5160 / TMC2240 / TMC2130:
sgtを徐々に増やす。 - 調整するたびに、
SET_TMC_FIELDと単軸ホーミングテストを再度実行。
目標は、キャリッジが安定してエンドポイントに移動し停止できる、最も高い信頼性のある感度値を見つけることです。
ステップ 4:設定に書き戻す
テストで適切な値が見つかったら、その値を printer.cfg の対応するドライバ設定に書き戻します。
最大感度でも明らかな衝突音、クリック音、または不安定なトリガーが発生する場合は、通常、ホーミング速度が低すぎる、ドライバ電流が低すぎる、機械的抵抗が異常である、またはその軸がエンドストップなしホーミングに適していないことを示しています。
Loading...