3Dプリンタ

BS01+にオートベッドレベリング(電磁誘導センサー)

投稿日:2019年9月16日 更新日:

BS01+にABL(オートベッドレベリング)を搭載する。その2。

前回は、IRセンサーを取り付けましたが、私のBS01では精度が出ないので取り付けを諦めました。

それでもやっぱりABLはやりたいので、しょうがないので、余っていた電磁誘導型のセンサーを取り付けてみることにしました。
ただ、このセンサー取り付けると他と干渉してしまうので、造形可能サイズが小さくなってしまいます。

 

電磁誘導センサー

LJ12A3-4-Z/BX

LJ12A3-4-Z/BX New Inductive Proximity Sensor Detection Switch NPN DC 6-36V – AliExpress

今回使ったのは、このセンサーです。
これはEnder-3でABLする時にAliexpressで購入したのですが、買ったことすら忘れてずっと放置していました。
今回ふと「あれ?あの時買わなかったっけ?」と思い出して部屋中をかき分けて発掘した次第です。

このセンサーは、Ender-3で使っているセンサーより直径が少し小さく12mmとなっています。
このセンサーの検出距離は公称4mmとなっていますが、私の環境では2mm弱です。

Ender-3で使っているセンサーは直径18mm、検出距離は公称8mmですが実測4mm弱。
電磁誘導センサーは公称検出距離より短くなる傾向を感じます。

私のBS01はアルミの板にビルドタックを貼り付けているので、検出距離2mm以下でもなんとか使えますが、もう少し余裕が欲しいところ・・・

 

マウント

BS01 LV Sensor Mount

BS01へは、このようなマウントを作って取り付けました。
結構シンプルなマウントになりました。
M6のネジ1本でヘッドのブロックに取り付け、センサーはM3のネジで締め付けて取り付ける感じです。

 

BS01へ取り付け

BS01+にはデュアルノズル用のネジ穴が開いているので、その穴を利用して、ヘッドの後ろ側に取り付けました。
ノズル用の穴はM6のネジが始めから切られてあります。

 

BS01 センサー干渉

この位置にセンサーを取り付けると、Y軸を一番後ろに移動させた時、Z軸のロッドを支えている天板に干渉してしまいます。
ここは、ファームウェアの書き換え時に3mm程造形エリアを小さくすることで対処しました。

 

BS01 センサー干渉

他にもY軸のモーターにセンサーが干渉しますが、ここをファームウェア書き換えて造形エリアを小さくすると20mm程小さくしないといけません。
BS01でそんなに大きな物をプリントすることは無いですが、でも造形エリアが小さくなるのはなるべく避けたいので、ここは造形エリアはそのままで、ヘッドがこの位置に行かないように気をつけるようにします。

 

接続

今回使ったセンサーもEnder-3に使ったセンサーと同様、出力はNPN-NOとなっています。
センサーの電源電圧も6~36Vと同じなので、Ender-3に使ったフォトカプラを使った接続回路と同じものを作りました。

BS01 ABL接続回路図

BS01 ABL接続回路 実態配線

Ender-3用との違いは、BS01の電源が12Vと言うこと。
電圧が下がったのでフォトカプラ用の抵抗を1Kに変更しました。

写真左のBR,BK,BUをセンサーに接続して、+12,S(Limit Z-),GNDをBS01のメインボードに取り付けます。

 

BS01の接続箇所

この写真だと分かりにくいですが、BS01のRAMPS基板のこの辺りに接続しました。
電源の+12Vは、E1(2ndエクストルーダー)のモータードライバー用の端子から取り出しました。
どこでも良かったのですが、ここが一番簡単そうだったので

 

BS01の接続箇所

 

ファームウェア

取り付けが終わったので、ファームウェアを書き換えます。

ファームウェアは前回のBS01にMarlin1.1.9を書き込んだ時の物をベースに編集しました。

BS01+にMarlin1.1.9

編集した箇所の詳細書こうか悩みましたが、とりあえずファイルだけアップしておくことにしました。
どこを書き換えたかは、Diffツールとかで見れば分かると思います。

MarlinConfiguration_for_BS01p_ABL.zip

中のファイル3つをMarlin1.1.9に上書きすればそのまま使えると思います。

 

精度

ファームウェアも無事書き換えられたので、早速M48コマンドを使ってテストしてみました。

M48 Z-Probe Repeatability Test
Positioning the probe...
Bed X: 73.000 Y: 63.000 Z: 0.003
1 of 10: z: -0.011 mean: -0.0109 sigma: 0.000000 min: -0.011 max: -0.011 range: 0.000
2 of 10: z: -0.011 mean: -0.0108 sigma: 0.000156 min: -0.011 max: -0.011 range: 0.000
3 of 10: z: -0.011 mean: -0.0107 sigma: 0.000147 min: -0.011 max: -0.011 range: 0.000
4 of 10: z: -0.011 mean: -0.0107 sigma: 0.000135 min: -0.011 max: -0.011 range: 0.000
5 of 10: z: -0.011 mean: -0.0107 sigma: 0.000125 min: -0.011 max: -0.011 range: 0.000
6 of 10: z: -0.011 mean: -0.0107 sigma: 0.000116 min: -0.011 max: -0.011 range: 0.000
7 of 10: z: -0.011 mean: -0.0107 sigma: 0.000109 min: -0.011 max: -0.011 range: 0.000
8 of 10: z: -0.010 mean: -0.0106 sigma: 0.000156 min: -0.011 max: -0.010 range: 0.001
9 of 10: z: -0.010 mean: -0.0106 sigma: 0.000177 min: -0.011 max: -0.010 range: 0.001
10 of 10: z: -0.010 mean: -0.0106 sigma: 0.000188 min: -0.011 max: -0.010 range: 0.001
Finished!
Mean: -0.010562 Min: -0.011 Max: -0.010 Range: 0.001
Standard Deviation: 0.000188

 

電磁誘導センサーなので、なかなかの精度ですが、Ender-3で電磁誘導センサーをテストした時よりもさらに良い結果です。
これは多分、BS01のZ軸の分解能がEnder-3よりも高いからじゃないかと思います。
ちなみに、BS01のZ軸の分解能は 0.0003125mm、Ender-3のZ軸の分解能は 0.0025mm

続いてG29コマンドの実行結果を見てみると・・・

  実行結果 1回目との差 2回目との差
1回目
Bilinear Leveling Grid:
      0      1      2
 0 -0.058 +0.046 +0.066
 1 -0.078 -0.026 -0.049
 2 -0.082 -0.070 -0.079
   
2回目
  Bilinear Leveling Grid:
      0      1      2
 0 -0.048 +0.057 +0.083
 1 -0.064 -0.019 -0.039
 2 -0.072 -0.062 -0.068
 
      0      1      2
 0  0.01   0.011  0.017
 1  0.014  0.007  0.01
 2  0.01   0.008  0.011
 
3回目
Bilinear Leveling Grid:
      0      1      2
 0 -0.044 +0.057 +0.076
 1 -0.070 -0.022 -0.038
 2 -0.071 -0.056 -0.062
 
      0      1      2
 0  0.014  0.011  0.01
 1  0.008  0.004  0.011
 2  0.011  0.014  0.017
 
      0      1      2
 0  0.004  0.0    0.007
 1  0.006  0.003  0.001
 2  0.001  0.006  0.006

1回目と2,3回目の結果の誤差が大きくて、これはEnder-3&BFPTouchと同等かそれ以下。
2回目と3回目の誤差はかなり小さく、これはEnder-3&電磁誘導センサーと同等かそれ以下。

と言うような結果がでました。
1回目と2,3回目の結果の誤差が大きくて再現性が悪いなと思いますが、これはもしかするとBS01特有のヘッドのぐらつきが有るからかなと思ったりします。
でも、全ての結果は許容範囲内の数値なので、しばらくはこれで様子を見ようと思います。

 

と言う訳で、
BS01でもABLが使えるようになりました。

 

 

-3Dプリンタ
-

執筆者:

関連記事

Ender-3 メニューをカスタマイズ

Ender-3 カスタムコマンドを登録

Ender-3のファームウェアであるMarlinには良く使うスクリプト(G-Code)を、カスタムコマンドとしてLCDメニューに登録しておく機能があります。 カスタムコマンドを登録しておけば、後からL …

Ender-3 ケース ファン

Ender-3 ケースファンの回転問題とABSプリント対策

Ender-3のコントローラー基板が格納されているケースには、熱を逃す為のファンが付いています。上の写真がそうです。 これは電源投入直後、一瞬だけ回ってその後すぐに止まります。 でも、プリント中に見て …

便利アイテム

3Dプリントする時の便利なアイテム

Ender-3は、本体と一緒に最小限の工具が付属していますが、それに加えて有った方が便利なアイテムを書いてみました。 他にももう少しありますが、とりあえず以下の3つが特にお勧めで、使い始めるとこれらが …

Ender-3 ファンを交換

Ender-3 とにかくうるさいFANを交換

最近、Ender-3のファンから異音が鳴り響くようになってしまいました。 たぶん、ベアリング(?)が駄目なんだと思います。 電源を入れると、 ビビビビビーーーー っと鳴る。 これがとにかくうるさい。 …

Ender-3

格安3Dプリンター Creality Ender-3

最近、2台目となる3Dプリンターを買いました。 買ったのは、サインスマートが販売しているCreality Ender-3。 以前から気になっていて、買おうかどうしようか迷っていたのですが、ついつい手が …