Ultimaker Cura / Anycubic Mega-s / 印刷位置の微妙なズレを修正する方法

3Dプリンター

Mega-s を使い始めてまもなく1年ですが、最近になってビルドプレートの中心と印刷の中心がズレていることに気が付いてしまいました。ビルドプレートサイズいっぱいのモデルを印刷する需要がほぼ無いので問題はないのですが、知ってしまうと気になって仕方がないので、修正することに。で、どこで?・・色々調べると、2つの方法が浮かび上がりました。果たして正しい修正方法はどちら?

どの程度ずれている?

修正するにしても、どの程度ずれているのかが正確に分からないと先に進まないので、まず、ズレ量を測ってみます。ビルドプレート中心に30mmの正方形を印刷して、各辺からビルドプレート端部までの距離を測定しました。結果がこちら。

Gcode上で、本当にビルドプレート中心に印刷しようとしているのかも確認しておきます。Mega-sの印刷原点は、ビルドプレートの左手前です。印刷可能範囲が左右前後とも210mmですので、30mm の正方形が中心にあるとすれば、各頂点の座標は、[120,120]、[120,90]、[90,90]、[90,120] となります。

プリファレンスのプリンターの設定です。

ただし、実際の印刷パスはライン幅を考慮してオフセットされますので、ライン幅が0.4mmの今回の場合は、[119.8,119.8]、[119.8,90.2]、[90.2,90.2]、[90.2,119.8] となっているはずです。

間違いなさそうです。

ということで、印刷されたモデルが右側に 2mm、奥側に 3.5mm ズレてくれると中心が一致することが分かりました。

修正方法ーその1

修正方法についてネット上の情報を漁ってて見つかった方法が、プリンターの設定で、ノズルのオフセットを調整する方法です。設定する場所はプリファレンスのプリンターの設定のエクストルーダーのタブ内にある、ノズルオフセットX および、ノズルオフセットY です。

デフォルトは、XY共に 0 なので、先程調べた値を入力します。ここで悩むのが値の符号です。
一度間違えました。今回の正解は、XYともにマイナスです。

印刷結果がこちら。修正できました。

Gcodeにどんな変化があったのかを見てみると、印刷の原点はそのままで、オフセットした分だけ座標値が変化していることが分かります。

修正方法ーその2

「修正方法ーその1」で目的は達成できているのですが、気に入らない点がひとつあります。Gcode上での座標がわかりにくいことです。こんな事する人はあまりいないと思うのですが、私の場合、印刷するのは工業的な部品が多いので、精度の担保のためノズルの位置をGcodeの座標で確認することがあります。この時、オフセット分をいちいち考慮するのが面倒なのです。
そこで思いついたのが、Start G-code(G-Codeの開始) にノズルのオフセットを入れ込んでしまう作戦です。通常、印刷開始前に、G28でXYZ各軸をホーミングしますが、この後に、G92 で原点を補正分だけずらせば、ビルドプレート中心とGcode上でのビルドプレート中心座標(105,105)が一致するだろうという発想です。思惑通り行くかどうか、やってみましょう。

先程変更した、ノズルオフセットX および、Y は、0 に戻しておきます。続いて、Start-Gcode に次の一行を追加します。

G92 X-2 Y-3.5

G92という命令は、命令を読み込んだ時のノズルの位置が、同じ行にある各軸の座標値になるようにセットする命令です。追加した場所は、ホーミングの命令であるG28の直後です。したがって、原点であるはずのビルドプレート左手前が、 X-2 Y-3.5 の座標になり、その分だけモデルがプラス側にズレて印刷されます。ちなみにG92の行に書かれていない軸は変更されません(Z軸は0のまま)。

Start G-code の書き換え方などについては、過去記事が詳しいですので、興味のある方は御覧ください。

この設定でスライスしたGcodeの座標は、ノズルオフセットX および、Y が 0 の時と全く同じですが、

印刷結果では中心が合っているはず・・。で、ダメでした。Y軸はバッチリですけど、X軸が意味不明です。モデル右側が109mmになってしまいました。元の位置から3mm逆方向にズレる結果です。この”3″という数字はどこから出てくるのって感じです。

2021/10/12 追記
”3”の意味がわかりました。 G92 X-7 Y-3.5 が正解です。次の記事に詳しく書いていますのでご参照ください。

いろいろ調べてると、Ultimaker のコミュニティーに、Ender-3 での話ですが、Xにマイナスの値はダメよ、みたいなことが書いてあったので、ここを参考に次のように変更してみました。
G92 X-2 Y-3.5 の代わりに、次の2行を追加。

G1 X2 Y3.5 F1500
G92 X0 Y0

G92 X-2 Y-3.5 の時には、設定したい原点から見ると現在地はここですって宣言していましたけど、今回は、設定したい原点に実際に移動して、ここが原点よって宣言しています。これだと、Xの値にマイナスの数字を使わなくて済みます。まぁ、本当にそれが原因かどうかは不明なんですけどね。また、テーブルすれすれでノズルが動くのが気持ち悪いので、G28直後にZ軸を2mm程持ち上げています。

で、印刷結果は?

いいですね~。ちょうど中心です。Gcodeにも問題有りませんでした。ミッションコンプリートです。

どちらが正解?

今回は、2つの方法で、ビルドプレート中心と印刷中心を一致させてみました。どちらの方法が良いのかと、もし聞かれると、設定のし易さからすると、間違いなくノズルオフセットに値を設定する方法ですと答えますが、私がどちらを採用するかと言えば、Start G-code を編集する方法です。ただ、そもそも、ノズルオフセットの設定が何のために準備されているのかも定かではないですし、Gcodeで原点をずらして印刷することが薦められる方法なのかもわかりません。どちらも正解でなく、もっといい方法があるかも知れません。もし、この記事を読まれて変更してみようと思われた方は、やろうとしていることをよく理解されてから印刷に臨んでください。

では、今回はこのへんで。

2021/10/12 追記
いい方法かどうかはわかりませんが、3つ目の方法が見つかりました。 次の記事に書いていますのでご参照ください。 記事中程の追記と同じリンクです。

コメント

スポンサーリンク