GRBLの設定で関係のあるところは
|$5=0|
|$20=0|Soft limits, boolean|
|$21=0|Hard limits, boolean|
|$22=1|Homing cycle, boolean|
|$23=0|Homing dir invert, mask|
|$24=25.000|Homing feed, mm/min|
|$25=500.000|Homing seek, mm/min|
|$26=250|Homing debounce, milliseconds|
|$27=1.000|Homing pull-off, mm|
ここの設定でリミットスイッチを使ったあれこれの挙動が変わります。
-
$5=0
$5=1にすることでリミットスイッチのトリガーをハイにするかローにするかを逆転させます。
NCを使うかNOを使うかで切り替えてください。 -
$22=1に設定することで$H コマンドでホーミング機能が使えるようになります。(恐らくデフォルトだとオフになっています。)
-
|$20=0|Soft limits, boolean|
有効($20=1)にすると$130らへんの最大移動距離より離れた距離では止まるようになります。 -
|$21=0|Hard limits, boolean|
有効にするとスイッチが押されると停止するようになります。 -
$23=0|Homing dir invert, mask|
プラス・マイナス方向を逆転させます。設定方法はXYZのモーター反転と同じなので割愛します。 -
|$24=25.000|Homing feed, mm/min|
スイッチにそっと近づいて原点の位置を確定するときの移動速度 -
|$25=500.000|Homing seek, mm/min|
スイッチの場所までとりあえずガーっと移動する速度。この速度でスイッチの場所を検知してから$24の速度でもう一度原点の場所を確認します。 -
|$26=250|Homing debounce, milliseconds|
無視するチャタリング時間の設定、と認識しています。難しいので多分ですが。
スイッチを押される瞬間は振動とか電気ノイズでONとOFFが短時間で入れ替わります。これをそのまま制御に使うと動作がおかしくなるので、ノイズが発生している時間の信号は無視します。この無視する時間の長さをここで設定しています。デフォルトのままでOKです。 -
|$27=1.000|Homing pull-off, mm|
原点位置で止まるとスイッチが押されたままになるので、原点位置がわかったらこの数値ぶんだけ移動したところで待機します。