前回セットアップしたマザーボードに、ベッド高さ計測センサ"BLTouch"を追加することで、印刷物の剥がれや反り・歪みを防止しようと思います。
背景
3Dプリンタの印刷面(プラットフォームやベッドなどと呼ばれる)は、たいていネジによる高さ・傾きの調整機構がある。
ノズルをHOME位置まで動作させた状態でノズルとベッドの距離を0.1~0.2mmに調整するのだが、ノズルがXY平面上どの位置に移動したとしても同じ高さになっていなければならない。実際の方法としてはノズルをベッドの四隅に移動させ、A4コピー用が引っかかる程度にネジを回すのだが、一箇所のネジを調整すると他の位置に影響するうえ、印刷毎に調整しないと少しずつズレていくので意外と面倒である。
3Dプリンタにおける印刷物とベッドの密着性はとてもシビアで、印刷し始めは問題ないように見えても、数時間後出来上がったものは無残にも剥がれて失敗となってしてしまう。
必要なもの
- BLTouchセンサ
- 3DTouchセンサというコピー品もあるが、ほぼ品質は問題ない(個人的な感想)。
- Creality社製センサもあるが、購入したもののピンアサインが分からず動作せず。
- BLtouchセンサ用ブラケット
- ヘッドにセンサを取り付けるために必要
BLtouchセンサの設定
BLTouchセンサ設定の有効化(Configration.h)
#define BLTOUCH
#define NUM_SERVOS 1
レベリング設定(Configration.h)。
// ノズル先端からBLTouchセンサ先端の位置を測って記入(X,Y,Z)。Zは後でしっかり調整するのである程度。
#define NOZZLE_TO_PROBE_OFFSET { -44.5, -15.0, -5.16 }
// 中略
#define Z_CLEARANCE_BETWEEN_PROBES 4 // Z Clearance between probe points
#define Z_CLEARANCE_DEPLOY_PROBE 5 // Z Clearance for Deploy/Stow
// 中略
#define Z_MIN_PROBE_REPEATABILITY_TEST
// 中略
#define AUTO_BED_LEVELING_BILINEAR
// 中略
#define RESTORE_LEVELING_AFTER_G28
// 中略
// 5*5で25点の補正
#define GRID_MAX_POINTS_X 5
// 中略
#define EXTRAPOLATE_BEYOND_GRID
// 中略
#define ABL_BILINEAR_SUBDIVISION
// 中略
#define LEVEL_BED_CORNERS
Z高さ調整はBLTouchに統一するため、ホーミング調整をBLTouchに変更(Configraltion.h)
#define Z_MIN_PROBE_USES_Z_MIN_ENDSTOP_PIN
#define USE_PROBE_FOR_Z_HOMING
// 中略
#define Z_SAFE_HOMING
// 中略
#define HOMING_FEEDRATE_MM_M { (20*60), (20*60), (4*60) }
LCDディスプレイのBLTouchのZオフセット用メニューを有効化(Configration_adv.h)。
#define PROBE_OFFSET_WIZARD
印刷しながらZオフセット調整を行うためにベイビーステップを有効(Configration_adv.h)。
#define BABYSTEPPING
試運転
- LCDにレベリングの警告が出るが無視。
- Zホーミングを実施。
- この時Z-OFFSETメニューでA4用紙一枚分の厚さになるように、Z-OFFSETを調整。
- ステッピングモータをDisableして、四隅を調整(通常の動作と同じ)。
- オートレベリングを実施しEEPROMへ書き込み(これ以降1のエラーは出ないはず)。
Next...
次回はフィラメントランアウトセンサの設定を実施します。