2019年8月27日ここのところ2台目Ender-3用のオートベッドレベリングの取り付けをやっていました。ここで気になるのは「で、結局どのセンサーが良いのか?」って所です。今回は、3DTouch、自作タッチセンサー、電磁誘導センサーの3種の精度の比較をしてみました。本題の比較ですが、GCODEのM48コマンドの結果と、G29コマンドの結果をそれぞれ比較してみたいと思います。2号機で実施しています。当比較結果は、あくまでも私の環境で利用した場合の結果で、各センサーの絶対的な精度ではありません。あと、テーブルは常温の冷えた状態で行いました。夏場の冷房無しの部屋で、テーブル温度は30度程度でした。M48コマンドで比較M48コマンドとは、Z軸のプローブの精度を検証する為の命令です。Z軸の上げ下げを何度か繰り返してプローブの検出誤差を表示してくれます。このコマンドはファームウェア(Marlin)に実装されている機能ですが、ファームウェアの設定ファイルで有効化しておかないと使えない機能です。今回の比較では、各センサーの上下動10回(デフォルト値)を3セット行ってその結果を見てみることにしました。各セット毎に、ホーミング(G28コマンド)を行っています。FirmwareG29コマンドで比較G29コマンドは、オートベッドレベリングの走査を実行する命令です。テーブル上の3×3の地点で高さを測り、その結果を出力してくれます。M48での比較と同様、3セット行ってその結果を見てみることにしました。各セット毎に、ホーミング(G28コマンド)を行っています。実際に実行したコマンドとしてはG28G29です。FirmwareM48コマンドの結果とりあえず実行結果の生データを記しておきます。見てもよく分からないと思うので、読み飛ばして下さい。0.001346各実行結果を表にしました。Deviation(標準偏差)だと思うのですが、実のところこの数値が何を表しているのか良く分かっていません。なんとなく数値が小さい方が良いと言うことだけは分かるのですが・・・Meanは平均値、RangeがMinとMaxの差で、私としてはこのRangeの値が結構重要なんじゃ無いかと思っています。平均値がどれだけ良くても、時々とんでも無く狂うとなれば、そんなセンサー使えませんからね。表を見てみると意外な結果が出ました。私としては3DTouchが一番良くて、電磁誘導は一番悪いんじゃないかと思っていましたが、真逆の結果となりました。電磁誘導が一番良くて、BFPTouch、3DTouchの順です。BFPTouchと3DTouchの差は僅かですが、電磁誘導はそれより数倍は精度が高い感じですね。電磁誘導のRangeの数値を見てみると、10回上げ下げしてもステッピングモーターの1ステップ狂うか狂わないかと言う結果は凄くないですか?BFPTouch、3DTouchは4ステップ程度ズレています。実行結果の数値はテーブルの傾きを表しています。傾きが酷いのは見逃してもらうとして、ここではセンサーの数値の再現性がどれだけ有るかに注目して欲しいです。1回目との差、2回目との差を実行結果と共に表にしました。0.003結果検証3つのセンサー全てで言えることですが、M48コマンドの結果よりも悪い数値となっています。その原因は良く分かりませんが、G29は移動を伴うので、その影響かなと考えています。ここでの結果もダントツで電磁誘導センサーが勝っていて、次いでBFPTouch、3DTouchとなっています。BFPTouchと3DTouchの差がより顕著に出ている気がしますね。あと、3DTouchは1箇所につき2回タッチ(1回目は通常速度、2回目はゆっくり)して高さをチェックしています。1回だけだと結果がもう少し悪いので、2回にしています。電磁誘導とBFPTouchは1回づつなので、3DTouchは他のセンサーよりもG29コマンドの実行時間が長いという点もマイナスポイントです。以上の結果から、センサーの精度は電磁誘導タイプのセンサーが一番良いことがわかりました。手作りのタッチセンサーであるBFPTouch、最後に3DTouchが来るという予想外の結果でした。数値を見る限りはどのセンサーでも実用に問題無いレベルじゃ無いかと思います。BFPTouch(お勧めNo1)お勧め度★★★★★(5)BFPTouchは、フォトインタラプタとサーボを組み合わせた手作りのタッチセンサーで、その精度は意外なことに3DTouchよりも高い結果が出ました。私は3DTouchの方が上だと思っていたので本当に意外でした。このセンサーのデメリットは、自分で作らなくてはいけないと言う所でしょうか。3Dプリンタを持つくらいの人なら、逆に作るのを楽しめるかも?電磁誘導センサー(お勧めNo2)お勧め度★★★★☆(4)センサーの精度としては電磁誘導のセンサーが圧倒的に良いことが分かったのですが、電磁誘導なのでベッドの表面では無く、その下の金属にしか反応しないので、使いにくさが否めません。上に乗せるビルドシートの厚みの影響もあるので、実際のレベリングの精度はこれだけでは分かりません。反応範囲の狭さからガラス板なんかは使えないと言うデメリットもあります。3DTouchお勧め度★★★☆☆(3)3DTouchは、ホールセンサーとソレノイドが組み合わさったタッチセンサーで、所謂BLTouchのクローン品です。製品として売られているので比較的お手軽に導入できます。精度は、残念ながら今回チェックしたセンサーの中では一番悪い結果でした。Deviationが0.001出ると言われているので、今回の結果の悪さはクローン品だからなのだろうと思われます。言う訳で、2台目Ender-3のABL用センサーはBFPTouchを使おうと思います。3DTouchはお蔵入り、1300円程出したのですがね・・・何か他に使い道が有れば良いのですが。以前からBS01+で使っている液晶コントローラー表示がまだらでとても見難い。...BFPTouchをEnder-3で使う為のファームウェア書き換え今回は、BFPTouch(自作のタッチセンサー)をEnder-3でオートベッドレベリングに利用する為のファームウェアについてです。...Ender-3を置くラック先週届いた2台目のEnder-3。置き場所が無くてまだ組み立てていませんが、なんとか置く場所を作りました。1号機を置いているラックです。...3Dプリンター用の自作ベッドレベリングセンサー2台目Ender-3用にオートベッドレベリング(ABL)のセンサーを作りました。Leveling(ABL)に挑戦しました。オート・ベッド・レベリングとは、ベッドの高さ調整を自動でやってくれるやつです。