EasyThreed X1の精度改善メモ
1万円3DプリンタEasyThreed X1 miniには円を印刷すると多角形になってしまう問題がある。
これはギアバックラッシュが原因のようで調べると補正により精度改善する方法が出てきたので、(方法説明というよりかは)主にリンクを残しておく。
ビフォーアフター、適当な補正値でもこのぐらい良くなる。
方法は2種類あります
- Gcodeファイルに対して補正をかける
- 簡単だけど毎回やるのが手間
- カスタムファームウェアを導入する
- 設定が初回だけで済む
- 焼きこむのが面倒だし、FW焼きに失敗すると戻したりがまた面倒
順に説明する
1. 生成したGcodeに対して補正をかける
Cura等でGcodeを生成して、以下のサイトにアップロードし補正されたファイルをダウンロードし印刷する。
Gcodeに対してバックラッシュ補償をかけてくれるWebサービス
-
- X1ならこっちが簡単
- X,Yのところだけいじればいい。補正値の測定方法は2の冒頭で紹介する。
-
- こっちはX1以外に使えそう。
2. カスタムファームウェアを導入する
流れ
韓国向け?同型のプリンタ sondori picoのカスタムファームウェアが使えるので、それを使うのが基本スタンス。まずは、韓国語で詳しくはわからないが動画を眺めて流れを確認する。この動画内でバックラッシュの補正値の測定方法も紹介されている。
FWのDL
最新のカスタムファームウェア(v0.7.E)は、以下からDLする。
Marlin 2.0 for PICO - 업데이트 : 버전 0.7.E : 네이버 카페
-> 新しいの出ました。
Marlin 2.0 for PICO - 업데이트 : 버전 0.7.ER : 네이버 카페
このFWはバックラッシュ補正コマンドが使えるMarlin2.0系がベースになっているよう。
プリンタドライバ
プリンタのUSBシリアルドライバは秋月電子さんから拝借し、プリンタとPCをつなげる。
USB・シリアル変換IC CH340G: 半導体 秋月電子通商-電子部品・ネット通販
FWの焼きこみ
上記動画内ではArduinoIDEを使って焼いていたが、VSCODE+Platformioを使った方が簡単なので、以下のスレッドを読みながら進める。(ちなみにこのスレッド自体も参考になるので要チェック!)
[Backlash fix] EasyThreed X1 Mini Marlin 2.0 files and PrusaSlicer config. : EasyThreeD
機械翻訳&転記
Visual Studio Codeが必要です。ダウンロードしたら、拡張機能メニューで「PlatformIO IDE」を見つけてインストールします。
Visual Code Studioを開いたら、VSCodeの左端のアイコンのリストがあり、一番下には「platformio」と表示されているはずです。それをクリックし、PIO HOME > Openと進み、[Import Arduino Project]をクリックし、sanguino atmega1284p 16mhzボード(ボードを選択する場所にatmega1284pと入力)を選択し、ファームウェアをDLしたフォルダー内に移動します。marlinフォルダーとplatformio.iniファイルが一緒にあるところで、インポートを押します。
プロジェクトがインポートされると、必要に応じて変更できますが、ほとんどの場合、X1 Mini用にセットアップされており変更は不要です。VSCodeの左端のアイコンのリストがあり、一番下には「platformio」と表示されているはずです。それをクリックし、「env:melzi」までスクロールして、[Build]をクリックします。それが完了したら、プリンタが接続されていることを確認し、Windowsがそれを認識していることを確認して、[Upload]を押します。
Curaの設定
Curaのプリンターの設定画面でStart G-codeのところに補正値を設定します。
- 1行目はX,Yの補正値
- 2行目は有効化と係数、スムージングの有無
M425 コマンドの意味は以下を参考する。
あとはGcodeを出力して印刷するだけ~
X1操作
操作系統は元のFWと異なります。
印刷前
ボタンのLEDは押されたキーとノズル温度を交互に表示します。
LEDの表示と温度目安
三角 :20~80℃
三角、+ :80~130℃
三角、+、ー、 :130~190℃
三角、+、ー、ホーム:190~220℃
- 三角
- 印刷開始
- +
- ノズル加熱(内部LED点灯ー>点滅中)、もう一度+でフィラメントイン
- ホームで停止
- ノズル加熱が十分でないとZ軸を上下する?
- ホームボタンと誤認識されることがある?
- ー
- ノズル加熱(内部LED点灯ー>点滅中)、もう一度ーでフィラメントリムーブ
- ホームで停止
- ノズル加熱が十分でないとZ軸を上下する?
- ホーム
- ホームポジションへ移動
- +長押し
- Z軸上へ
印刷中
- 三角
- 印刷を一時停止、再開
- ホーム
- 印刷を停止中なら印刷をキャンセル
LEDで0〜99%の印刷進捗状況を示しています。
参考:EASYTHREED X1(SONDORY PICO - Controller stand & Marlin 2.0 firmware by GloSense - Thingiverse
補正値の測定
動画内で紹介されているように、ガタを実際に測定してあたりをつけ、以下のモデルを印刷しながら設定を詰めていくのが良さそう。
m3d Backlash calibration object by zet23t - Thingiverse
Quick Backlash Calibration V.2 by Muele - Thingiverse
その他
ノブを回しやすくするやつ
Discussion
参考にさせていただき、姉妹機のK1のmarlin2.0化させていただきました。ありがとうございます。
変更後の感想ですが、バックラッシュよりもS字制御の機能が上がっているように感じました。
丸に対しては、見た目でかなり精度向上しているとわかりました。当たり前なのかもしれないですがバックラッシュ設定していると積層してずれていきました。ベルトなので張ってあれば0でよいと思われます。