Duet3でのホーミング

Duet3のクローンを入手して遊んでいます。

色々と試しているのですがZ軸のフォーミングだけがうまく動きません。
センサーは M119 で確認したところ
M119
Endstops - X: not stopped, Y: not stopped, Z: not stopped, Z probe: at min stop
から
M119
Endstops - X: at max stop, Y: at max stop, Z: at max stop, Z probe: at min stop
に変わりちゃんと動作しているようです。

またZ軸がリミットスイッチにかかってない状態であれば正しくホーミングします。
問題はZ軸が既にリミットスイッチにかかっている状態の時でリミットスイッチにかかっているのにZ軸を引き上げようとして可動範囲を超えてガガガガってやってしまいます。

関係しそうな所の設定を出しておきます。

config.g
; エンドストップ設定
M574 Z2 S1 P"!^io3.in" ; configure active-high endstop for high end on Z via pin !^io3.in
; Axis Limits
M208 X0 Y0 Z-99 S1 ; set axis minima
M208 X240 Y325 Z0 S0 ; set axis maxima

homez.g
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G1 H1 Z104 F1800 ; move Z up until the endstop is triggered
G92 Z0 ; set Z position to axis maximum (you may want to adjust this)

今の所は
M564 S1 H0 の設定にしておいて、ホーミング無しで動かせるようにしてZ軸をリミットセンサーにひっかからないレベルまで下げてからホーミングしています。
ただ、とっても美しく無いので何とかしたいんです。

G1 H2 Z5 F6000 ; lift Z relative to current position
が間違っていて
G1 H2 Z-5 F6000 ; lift Z relative to current position
じゃないのかな。これで動いているようだし。こういう意図なんでしょうか?

で、大体分かってきました。つまり
---- homeall.g
G91 ; relative positioning
G1 H1 Z99 F1800 ; move quickly to Z axis endstop and stop there (first pass)
G1 H1 Z99 X245 Y330 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
G1 H2 X-5 Y-5 Z-5 F6000 ; go back a few mm
G1 H1 X245 Y330 Z99 F360 ; move slowly to X and Y axis and Z endstops once more (second pass)
G90 ; absolute positioning
G92 Z0 ; set Z position to axis maximum (you may want to adjust this)
;先にZ軸を上げる
— homex.g
G91 ; relative positioning
G1 H1 X245 F1800 ; move quickly to X axis endstop and stop there (first pass)
G1 H2 X-5 F6000 ; go back a few mm
G1 H1 X245 F360 ; move slowly to X axis endstop once more (second pass)
G90 ; absolute positioning
;これはZ軸に手を入れないようにする
— homey.g
G91 ; relative positioning
G1 H1 Y330 F1800 ; move quickly to Y axis endstop and stop there (first pass)
G1 H2 Y-5 F6000 ; go back a few mm
G1 H1 Y330 F360 ; move slowly to Y axis endstop once more (second pass)
G90 ; absolute positioning
;これはZ軸に手を入れないようにする
— homez.g
G91 ; relative positioning
G1 H1 Z104 F1800 ; move quickly to Z axis endstop and stop there (first pass)
G1 H2 Z-5 F6000 ; go back a few mm
G1 H1 Z104 F1800 ; move Z up until the endstop is triggered
G92 Z0 ; set Z position to axis maximum (you may want to adjust this)
とすれば、homeallでZ軸を先に上げて事故を減らし、個別にやるときはZ軸を触らないようにできる。
たぶん。これが正解だと思うんだが。

「いいね!」 1

検証お疲れさまです。

Duet 系のクローンもあるんですね。クローンならではの苦労もありそうですが、色々機能が充実していそう :smile: