MarlinのLinear Advanceで柔らかいTPUフィラメントのプリントに再挑戦【TRONXY XY-2 PRO】

タイトル
TPUフィラメントを使ってプリントしてみます。MarlinのLinear Advanceがどのくらい効くか試します。

TPUは柔らかいフィラメントです。ノズルで溶けるとサラサラな液体になるのでノズルからすぐに垂れてきます。
前回はフサフサなプリントになりました。

TPUで糸引きが起きるのは当たり前です。いかに少なく目立たなくするかがポイントです。今回はMarlinファームウエアのLinear Advanceという機能を使ってプリントします。
私はTronxyのXY-2 PROを使っていますがファームウエアはMarlinにしています。USBのシリアル通信でOctoPrintを使うとXY-2 PROのファームウエアでは問題がたくさんあり使っていられないためMarlinにしました。

Linear Advanceはノズルの移動に合わせて最適な量のフィラメントを押し出すよう制御されます。その制御はK Valueという一つの値で調整できます。

K Valueを決める

フィラメント毎にK Valueを決めます。
Kは理想の状態なら0です。これはLinear Advanceの機能がオフになります。実際はエクストルーダの押し出しタイミングに遅れてノズルからフィラメントが出てきます。この遅れを無くすような調整がされます。遅れが大きいほどK Valueは大きな値になります。
ダイレクトエクストルーダでABSやTPUを使う場合は0.1未満の値になるでしょう。ボーデンチューブタイプなら0.1~0.4くらいでしょう。フィラメントがTPUになると2~4くらいになるようです。
K Valueはテストパターンをプリントして決めます。テストパターンは次のページで生成できます。
Use this form to generate G-code that you can use to calibrate your Linear Advance K-factor. 
テストパターンを綺麗にプリントするのは難しいです。1層目を綺麗にプリントできなくてはなりませんのでヒートベッドの水平出しをきちんとやり、ノズルのオフセット調整もとことんやりましょう。
私の手元の2つのTPUでは 2.02  と 3.55 という値にしました。

Combing Mode

Linear Advanceを使っても糸引きは残ります。
糸引き
もう少しノズル温度を下げれば良かったかもしれませんが層間の接着が弱くなるのでモデルの目的に応じて調整します。

モデルの形によってはスライサのコーミングモードを設定する事で糸引きを回避できます。ノズルを移動する時にモデルの外周を横切らないようにします。
コーミングモード
コーミングモードを使わないとタコの足の間を移動する時に糸引きができます。コーミングモードではタコの内側を通ってヘッドが移動するようになるので糸引きはモデルの内側で起きるので見えなくなります。

ビデオ


Raspberry Pi HQ Cameraのエラー

タイムラプス撮影にRaspberry Pi HQ Cameraを使っています。このカメラを使うと最近フリーズが頻発して困っています。タイムラプス撮影にはOctolapseを使っているのですが、スナップ撮影のタイミングでmjpg-streamerの応答が停止しCamera Errorが出ます。mjpg-streamerより深い場所のサービスが停まるようです。

Octolapseにはテストモードというのがあります。ノズルを加熱せずエクストルーダを止めた状態でプリントします。ヘッド移動だけしてコマ撮りをします。この状態だとCamera Errorは起きません。
OctoPrintにはバーチャルプリンタという仮想3Dプリンタ機能があります。このプリンタを使うとCamera Errorは起きません。
何故か本番のタイムラプス撮影をすると時々フリーズします。

フリーズしたらwebcamdサービスを再起動すると直ります。
sudo service webcamd start
sudo service webcamd stop
sudo service webcamd restart
何度か繰り返しているとこれでも復活しなくなります。

OctoPiのOSが何かおかしいのかと思いました。そこでDockerで動かしてみました。最新のRapberry Pi OSにしてDockerを動かします。OctoPrintとmjpg-streamerは別のコンテナにして分離します。
これでもスナップ撮影の時にだけmjpg-streamerはフリーズしました。

OctoPrintを動かすRaspberry Piとは別にmjpg-streamerだけを動かすRaspberry Piを用意しました。Raspberry Piは別のものに、カメラのケーブルは短い別のものにしました。WiFi経由でスナップショットを撮ります。
これでもスナップ撮影の時にだけmjpg-streamerはフリーズしました。サービス毎落ちています。OctoPrint側は普通に動いています。

カーネルを最新の5.10にしたり、4.19へ戻したりもしました。ですが症状は変わりません。

ほんの2週間前は何も問題が無かったのに。
もう試すことを思いつかない状態です。Octolapseの本番撮影時だけという極めて限定的な条件でサービスが死んでしまいます。

ソフトウエアの問題ではないと考え始めました。
Pi HQ Cameraで問題が起きやすいのはカメラケーブルです。貧弱なリボンケーブルを使います。長いケーブルを使うべきでは無いところです。3Dプリンタの撮影に最適な場所へカメラを置くため1m近いケーブルを使っているのが悪いのでしょう。
リボンケーブルのコネクタも問題が起きやすいです。リボンケーブルの電極を綺麗にしてコネクタにしっかり刺さっているか確認します。
でも別Raspberry Piでケーブルを短くしてもダメだったんだけど・・・。ケーブルが悪くてもサービスがフリーズする事は無いんですよ。映像が映らない程度で済むのですが。
Pi HQ Cameraが故障したというのも考えられますが、替わりを買うほどの理由が見つかりません。
ちなみにPi Camera V2.1 では今のところ正常に動きます。


コメント

最近のコメント

Threaded Recent Comments will be here.