3Dプリンタ

Ender-3 Auto Bed Leveling

投稿日:2018年10月21日 更新日:

前ページからの続きです。

 

ファームウェア書き換え

近接センサーの配線ができて、ヘッドに搭載できれば、次はファームウェアにABL対応させる作業です。
前回書き換えたファームウェアのMarlin 1.1.9は、設定ファイルを少し修正するだけで、ABLに対応できます。

注意)
・この説明で使用しているのは、前回書き込みに使ったMarlin 1.1.9とその設定ファイル(Configuration.hとConfiguration_adv.h)です。
・また、近接センサーの回路や取り付けもここで説明した方法を前提としています。
・アンコメントは行頭の // を消すこと、コメントアウトは行頭に // を書き込むことです。
・行番号は違っているかもしれません。

Configuration.hの修正箇所

FIX_MOUNTED_PROBE

716行 #define FIX_MOUNTED_PROBE
行頭の//を外してアンコメントします。

これは、近接センサーを利用する設定です。

 

PROBE_OFFSET_FROM_EXTRUDER

776行 #define X_PROBE_OFFSET_FROM_EXTRUDER -46 // X offset: -left +right [of the nozzle]
777行 #define Y_PROBE_OFFSET_FROM_EXTRUDER -10 // Y offset: -front +behind [the nozzle]

この2行の値を、それぞれ -46、-10に変更

この値は、ノズル先端からセンサーの先端までの位置関係を示しています。
これは私の自作のマウントにセンサーを取り付けた場合の数値で、センサー取り付けのマウントが変わればこの値も変わります。
良く分からない場合はノズルとセンサーの距離を実際に計って数値を出します。

 

MIN_SOFTWARE_ENDSTOP_Z

904行 //#define MIN_SOFTWARE_ENDSTOP_Z
行頭に//を入れてコメントアウトします。

これはZ軸のマイナス方向を許可する設定です。

 

AUTO_BED_LEVELING_BILINEAR

975行 #define AUTO_BED_LEVELING_BILINEAR
行頭の//を外してアンコメントします。

これは、ABLの種類を選択しています。

 

RESTORE_LEVELING_AFTER_G28

983行 #define RESTORE_LEVELING_AFTER_G28
行頭の//を外してアンコメントします。

これは、ホーミング(G28)を行った後、前回のABL(G29)の結果を有効化する指定。
(2018-12-23に追記しました)

 

Z_SAFE_HOMING

1141行 #define Z_SAFE_HOMING
行頭の//を外してアンコメントします。

ホーミング位置をベッドの中央へ変更

 

SLIM_LCD_MENUS

1452行 #define SLIM_LCD_MENUS
行頭の//を外してアンコメントします。

これは、液晶コントローラーのメニューの項目を減らす設定です。
実はEnder-3のマイコン(ATmega1284P)はプログラムメモリが小さく、ABL対応のMarlinだと大きくて書き込めません。
その為に、利用メモリを小さくする為に、メニューの項目を減らさないといけません。
他の機能を削ってメニュー項目を残すことも可能ですが、私はこの方法を選びました。

 

Configuration_adv.hの修正箇所

BABYSTEP_ZPROBE_OFFSET

752行 #define BABYSTEP_ZPROBE_OFFSET
行頭の//を外してアンコメントします。

これは、ベビーステッピングの設定をZ軸のオフセットに連動させる設定です。
ベビーステッピングの設定項目がProbe Z offsetに統一され、プリント中にProbe Z offsetを変更すると、ノズル位置もリアルタイムで変更できる。

なお、ベビーステッピング(ベイビーステップ)とは、印刷中にノズル位置の微調整ができる機能のこと(たぶん)

 

以上、2つのファイルを修正し終えたら、コンパイルして書き込みます。
これでファームウェアのABLの対応も終了。

 

ABL動作テスト

 

ファームウェアのアップデートが終われば、もうABLが動作します。
ちょっとテストしてみます。

 

ABLの実行は、メニューに無いようなので、ArduinoIDEのシリアルモニターからコマンドを送って実行してみます。
パソコンとEnder-3が接続された状態で、右上のシリアルモニターのボタンをクリックします。

 

画面上に色々とecho情報が表示されます。
表示されない場合、画面下の通信速度の設定が115200bpsになっているか確認して下さい。

 

上のコマンド入力欄に、「G28」と入力して送信します。
すると、ホーミングが実行されると思います。

 

次に、「G29」を入力して送信します。
すると、ABLが実行されます。

ベッドの縦3x横3で計9カ所でベッドの高さがチェックされます。

 

このベッド、相当な歪みがあることが分かりました。
ま、知ってたけど(´・ω・`)

 

この動画は、自動ベッドレベリングのテストの様子です。

 

Z軸の調整

ファームウェアのアップデートが終了したら、次はZ軸の高さを調整をします。

 

まず、Ender-3を起動して、メニューからホーミングを行います。

Prepare > AutoHome

 

すると、X軸とY軸がホーミングした後、ベッドの中央に移動してZ軸がホーミングします。

 

この時、画面でのZ座標は0ですが、ノズルの高さはテーブルから離れていると思います。

 

Control > Motion > Probe Z offset

Offset設定画面ではダイヤルを回すとノズルが上下するので、ダイヤルを回してノズルとテーブルの間を調節します。

 

Control > Store setting

を実行して、オフセットを保存。
(実行するとビープ音が鳴る)

これで高さ調整は終了。

 

スライサーの設定

実際のプリントでABLを利用するには、スライサーの設定も不可欠です。

ホーミングは G28 で、
ABLのG-Codeは G29 です。

スライサーの設定で、Start G-CodeのG28の下にG29を追加しておくと、ホーミング後にABLが働きます。
ベッドやノズルの加熱後にも微妙に変化するので、加熱後に挿入する方法もあるそうです。

 

Curaの場合、

Preferences > Configure Cura…

 

Printers > Ender-3 > Machine Settings

 

とりあえず、Start G-CodeのG28の下にG29を追加しておく。

 

これで、ABLの設定は終了。
後は実際にプリントしてみて試してみるだけ。

 

プリント中の高さ微調整

ベビーステッピングの設定をこのProbe Z offsetに統一する設定をしているので、プリント中にProbe Z offsetを変更すると、ノズル位置がリアルタイムで微調整できます。

主にファーストレイヤープリント中にこの操作を行います。

メニューの

Tune > Probe Z offset

Control > Motion > Probe Z offset

のどちらからでも設定画面にいけるほか、

Menu表示時にダイヤルボタンをダブルクリックすることで、素早くオフセット設定画面に移動することもできます。

 

このオフセットは自動で保存されないので

Control > Store setting

を実行して保存します。

 

 

> 前のページへ 

-3Dプリンタ
-

執筆者:

関連記事

Ender-3 シート張り替え

Ender-3 傷んだビルドシートを張り替え

Ender-3を買ってから約2ヶ月、いつも中心でばかりでプリントしているせいで、シートの真ん中はシートの糊が剥がれて、浮き上がってしまっています。 最近では、少し破れてしまい穴が空いてしまいました。 …

Ender-3 改造パーツ

Ender-3 改造プリントパーツまとめ

私が現在Ender-3で使ってる改造プリントパーツをまとめてみました。 もくじ 誰かが作ったパーツケーブルクリップケーブルクリップ2エクストルーダーノブフィラメントローラーガイドダンピングフィートホッ …

Ender-3 Fan filter

PETGフィラメントとファンフィルター

最近、PETGフィラメントを使い始めました。 PETGは、ABSと比べて反りが少なくプリントが簡単で、PLAと比べると温度が高めなのと加工性が良くて切ったり削ったりできるので、とても便利です。 特に今 …

ちょんまげマウント

バカ殿マウント?

今回もまた3Dプリンターでの製作です。 自転車用ヘルメットにカメラをマウントするパーツを作りました。 今回もまた、市販のマウントの一部を取り替えて使うかたちです。 実際に自転車のヘルメットにRicoh …

プラダン保温箱

3Dプリンタ、冬支度

今年は11月に入っても暖かい日が続いていて、ここ数日でやっと平年並みに気温が下がりましたね。 しかし、気温が下がって困るのが3Dプリンタです。 私の持っている3Dプリンタは温度を高くして軟らかくなった …