TRONXYの3DプリンタをUSBから使うためには守らなくてはならない掟がある

USB接続でTRONXY XY-2 PRO TITANをパソコンから使うことはできるのでしょうか? ドライバは? シリアルの条件は?
そんな心配よりもっとややこしい事がありました。


TRONXYの3DプリンタのファームウエアはChituと呼ばれるMarlinファームウエアのクローンもどきです。作り込みが悪いのかMarlinのすべてのG-Codeが正しく使えるわけではないようです。コマンドが無いとか正しく動かないというだけならそのコマンドを使わなければ良いわけですが、何やらシリアル通信のコマンドバッファにも問題があるようです。

TRONXYのファームウエアの問題

小型コンピュータ ラズベリーパイで3Dプリンタを制御するソフトウエアOctoPrintのフォーラムではその挙動の怪しさが話題になっていました。
I cannot successfully print on my printer running a firmware identifying itself only as "CBD make it" or "ZWLF make it"
問題を少し緩和するプラグインも公開されています。
OctoPrint/OctoPrint-FixCBDFirmware
This plugin works around issues with a firmware that identifies itself only with the string CBD make it in response to M115 - hence the name "CBD Firmware" due to a lack of alternatives - and which wrongly implements some parts of the established communication protocol, causing severe issues when trying to communicate and print with it from OctoPrint.

M105とSDカードのコマンド

スライサから直接プリントする時にも面倒な事が起きました。プリントが始まって正常に動いているように見えるのですが、時々動作が止まります。5~10秒ほど経つと再び動き始めます。プリント中にヘッドの動きが停まるので出力したモデルが溶けてしまいます。
この問題は、シリアルでヘッドの移動コマンドを連続して送っている時に温度モニタの要求(M105命令)を送ると時々フリーズするようです。
これを回避するには、プリント中に温度モニタをしないことです。温度だけではなくプリンタのSDメモリの状態をモニタするコマンドも危険です。
ですがこれらの状態モニタを止めることができないスライサもあります。そんなスライサではTRONXYをUSBから使うことはできないでしょう。

どうもUSBのバッファ処理周りがダメな感じですね。シリアルのバッファがいっぱいな状態とG-Codeコマンドの実行完了を待つ処理の兼ね合いが悪いようです。

M104とM190の問題

USBシリアルがダメならSDメモリにG-Codeを書き込んでやればいいじゃん、と思ったら・・・単純じゃなかった。
プリント開始時、ノズルとベッドの温度設定をした後にヘッドの位置を所定の場所へ移動させ指定温度になるのを待つスタートスクリプトを使っていました。このヘッドの移動が終わり次の移動を始めたと思ったら3Dプリンタが再起動してしまいました。USBシリアルでもSDメモリでも同じ症状でした。

落ちるコマンドの順番
M104/M109 → G1 → M140/M190 → G1
落ちないコマンドの順番
M104/M109 → G1 → M140/M190 → G28 → G1
M104/M109 → M140/M190 →  G1

何故か温度待機の後に原点復帰をするとその後問題なく動きます。つまり温度設定後のヘッド移動は意味がありません。
温度設定をして待ってから原点復帰するのが安全そうです。

まとめ

USB接続でTRONXY XY-2 PRO TITANをパソコンから使うことができました。
WindowsはUSB-シリアルのドライバは自動的に入ります。Linuxは標準ドライバで動くようです。XY-2 PRO
付属のUSBメモリをパソコンにつなぐ必要はありません。
シリアル設定は多くの3Dプリンタと同じくボーレート 115200でつながります。
しかしスライサソフトから直接プリントするにはいくつかの掟を守る必要がありました。

TRONXYの掟

一 プリント中にノズル温度を問うてはならない
二 温度上昇が終わるのをじっと待て
三 頼み事を2つ同時にしてはならない
四 前の仕事が終わるのを待て

トラブルまみれですが何とか動かせます。



コメント

  1. 3Dプリンターは同じ機種を使ってます。自分はラズベリーパイ4Bです。
    octolapseのプリンターの設定にTRONXYの設定が無いですがどのようにプリンターの設定はしていますか?
    色々設定していますがエクストルーダー、ベットの温度が上がらずにプリントしに行きます
    エクストルーダーも動いてません。
    写真の撮影はします。造形物は写ってませんが・・・

    返信削除
    返信
    1. こんにちは。
      プリンタ設定はほとんどする必要はありません。機種によってはファームウエアの設定をします。
      温度が上がらないのはテストモードがオンだからでしょう。ヘッド移動とカメラ撮影だけします。
      ヘッド位置が思い通りならテストモードをオフにして本番です。

      削除
    2. ありがとうございます。
      確かにテストモードがオンでした
      YouTubeともども参考にさせていただいてます。

      削除

コメントを投稿

最近のコメント

Threaded Recent Comments will be here.