3Dプリンターの調整方法をまとめたい
3Dプリンターを始めたものの調整方法が結構まとまっていなかったりする。
一目でわかるように3Dプリンターの調整方法をフローチャートかマップにまとめたい。
最終的にはXYZCubeと3DBenchyを印刷するところからスタートして、
「この現象ならここを修正、そのときこのモデル(スクリプト)を印刷して値を決めよう」
という内容がまとまっているチャートを作りたい。
完成できるかどうかは分からないが、勉強になるのでよし。
Kp3s, Prusa Slicer, Klipper, Mainsailの利用を基準とする。
フィラメント幅と押し出し量の調整
押し出し量の過不足判定方法は要調査
調整は下記を参考に調整する。
KP3S公式のガイド
他ももう少し詳しく記載してほしかった。
XYZ Cubeの幅からモーター移動幅を調整する
ADXL345を使った共振周波数の測定
ミニPCでKlipperを使う予定なので加速度センサーを使うには、
SPI to USB Serial変換してくれるPi Pico準備すればできるかなーとか考えていたけど、
まさにその方法がKlipper公式ドキュメントに詳しく記載してあった。
Measuring Resonances
input shaperの手動設定
共振周波数を測定しなくてもマニュアルで設定する方法が下記に記載されている。
Klipper: Input Shaping – Simply Explained(ALL3DP)
サンプルモデルを印刷して、ゴースティングが起きた距離をノギスで測定し、
その距離の中で何回ゴースティングが起きているかカウントする。
よく考えれば当然で周波数は単位時間当たりの波の数のことなので、
波の数をcとすると単位はc/s、つまり下記の式で計算できる。
プリント速度[mm/s] × 波の数[c] ÷ 測定した距離[mm] = 周波数[c/s]
フィラメント送り出し量、XYZStep
All3DPに大体記載されている。
モデルはXYZCubeでOKだが、校正にはKP3SとUSB接続が必要。
Slicerソフトが入っているPCをUSB接続するか、Octoprintが入ったPCを接続してWeb越しにコードを送る。
M503
M92 X###.## Y###.## Z###.## E###.##
M500
ちなみにOctoprintは印刷しだすと通信ロスでエラーになった。
色々な原因があるが、ファームウェアはMarlin2.x系に変えた方が良いらしい。
ノズル温度
Temperature TowerモデルにPrusa SlicerでカスタムG-codeを使用する方法の解説
Smart compact temperature calibration tower
上記Youtubeの動画で利用しているモデル。ここにも利用方法が書いてあるので、こちらを参照してもOK。
積層ピッチは0.2mm
そのまま利用すると3h以上印刷時間がかかるので、
必要数分だけstlファイルを自分で3DCADで重ねて印刷すると良い。
基本的にSlicerで温度を変えたいレイヤーを表示し、"Add Cutome g-Code"から'M104 S###'を追加するだけ。
リトラクション関連
条件を入れるとカスタムでG-CODEを作ってくれるWebサイトもあるが、普段使っているSlicerの条件をできるだけそのまま入れたいので、下記の簡単なモデルをダウンロードして、G-CODEを出力した後、テキストエディタの置換機能を使いながらカスタムG-CODEを追加した。
Stringing test
もう少し楽な方法を確立したい。
正直、いまいち結果の善し悪しが分からなかったため、とりあえず元の設定を使っている。
Jerk
解説は下記が分かりやすい。
正直、StockFWで設定を頑張るよりKlipperを利用できるようにする方が優先度が高いかなと思った。
Klipperのprinter.cfg
簡単な日本語の解説
スクラッチで設定するときの解説動画
基本は公式リファレンスページを見ながら頑張るみたい
Prusa Slicerで印刷速度設定を上げてもモデルに反映されない
この値を変更すれば速度が上がるはず。
設定項目についての公式な説明は下記
KlipperのPressure Advance
下記のマクロが大体そのまま使えて便利
ただし、プリント開始/終了マクロが必要で、"PRINT_START","PRINT_END"という名前のマクロが必要。
Klipperの開始/終了マクロのサンプルは"START_PRINT","END_PRINT"なので、そちらに合わせた。
KilipperのSlicerではなくRetraction設定を有効にする
下記動画でSlicerとFirmwareによるRetractionの違いと、FWでの設定方法が解説されている。
最適値はマクロで調整用のモデルを出力して確認する。
出来ればRetraction lengthとspeedともに変えたマクロが良いのだが・・・。
Klipperで共振周波数を測定する
加速度センサー'ADXL345'とRaspberry pi pico・・・ではなくRP2040-zeroを使う
RP2040-zeroへのつなぎ方と設定方法
測定方法の紹介ブログ
Klipper公式ドキュメント
BL Touch for klipper
Kingroon社製のBL Touchを使用した。
config設定してからの動作確認は公式ドキュメントを参照した。
ただし、"Initial tests"に記載されてある方法は使えなかった。
BL Touchを反応させた状態で"QUERY_PROBE"コマンドを送信しても"probe: TRIGGERED"にはならない。
printer.cfgの[bltouch]の"probe_with_touch_mode"を'False 'に指定した状態で、"PROBE"コマンドを送信すれば問題なく動作することが分かった。
BL-Touch v3はTrueに設定するらしい。
keepang storeで購入するとき違いが分からずv2とv3の両方を購入してしまったが、今になって違いが出てくるとは・・・。でも実際に送られてきたのは同じシリアル番号付いたものだったけどな・・・。
z_offsetは下記の方法で調整する。理想は1mmとのこと。
Z軸の稼働範囲を~-5までに設定しておかないと調整したい値には"out of range"になると思う。