3Dプリンターの出力を高速化します

高速化の鍵は、二つあります。hotendがスムーズにフィラメントを溶かして供給できるのかどうか、またメカニズムとして高速移動に耐える精度剛性を持っているのかという点です。
Robo3Dプリンターのオリジナルの構成としてはフィラメントドライブがダイレクト式となっていて駆動モーターがhotendノズルと共にありますので慣性モーメントが大きく、高速化に伴いタイミングベルトかスリップしてしまう事態が想定されます。テンションの強化などである程度は対応できますが、移動部分の重量を下げるべくフィラメントエクストルーダーのドライブは外部に置くというのもカスタマイズの一つです。
今回適用しようとしているのは熱容量の大きいホットエンドへの交換とノズル径の拡大です。従来メジャーに使ってきたのは0.4mmのノズルですが精度実現という目的では0.1-0.2mmの積層ということが可能ですが、メカニズムの速度などから安定出力には速度を抑えての実施50mm/s程度というのが、このマシンの現在の実力です。

適用するホットエンドはE3D社のvolcanoというモデルで既に中華モデルも出回っています。

image

左側のノズルが従来モデルで利用されてきたもので、今回のものが右側です。
ノズル長さが10mm程度増えます。長いホットエンドのブロックを通じて溶けている部分の熱容量ならびに供給力が増えるので太いノズルを利用してドライブからの供給力を増やして高速化するというものです。この方法では積層厚みを大きくすることになります。0.2mm程度で実施してきたものが0.4mm以上にすることで時間が早くなるのが期待値です。

image

設置状態で比較するとヒーター自体は共通でホットエンドのブロックが横置きから縦置きになります。プリンターのZ軸での制限として出力が10mmほど高さ制限を受けます。

image

ABS素材の処理顚末

PLA素材での、出力詰まりに奔走していたのだが、既報のようにシーズニングと呼ばれる油をさしたりすることで以下のようなクーリングファンホルダが出来るようになっていた。

image

しかし、溶けてしまった

image

ABS素材の出力を改善しようとして背面にファンヒーターをおいて熱風を供給したのがキッカケでした

image

ABS素材の出力では、ベッドを高音にして80度ほど、その上その温かい雰囲気を確保した中で出力をしないと収縮がおきてしまうのです。

このプリンターは、オープン構造なので、工夫が必要なのですが、まずは外部から熱風供給をすることで解決をみようとしたのですね。背面にファンヒーターが見えますね。

プリンターのヘッドは、およそ240度(ABS素材の場合)となり、上部の冷却用のフィンの部分も100度を超えていました。先日作成してあったPLA素材のカバーが溶けたのはこの温度に耐えられないからでした。

そして、このファンホルダを付けて冷やさないと何の出力も出来なくなるのです。

仮に溶けないような素材でカバーを作らないと進まないのでアルミと木で作りました。

image

これで、先程のファンヒーターで熱風供給しながら作ると綺麗に出来ました。

image

ところで。このABS素材の耐熱温度も80度くらいのようですから、現在の仮作りのカバーを少し仕上げて使うことにしました。

image

電子工作のケースを3Dプリンターで作る

トランジスタテスターに適当なケースが無かったので3Dプリンターで作成することにした。
課題としては、006P電池も収納出来ること。電池ボックスのふたも構成できることも含めると3D設計の難度は上がる。本体はこんなイメージで、仮にアイロンビーズのケースに入っている。

image

もう少し収まり具合をよくしたいので、まずは基板のサイズを各部測定した。

image

これにカバーするイメージ作り、背面のふたにさらに電池ボックスを抱かせるイメージで前面部のカバーを作った。使ったソフトは123Designだ。プリンターはRobo3Dで黒のPLAです。
image
実際に基板を当ててみると使いにくいのが部品装着のレバーの部分だったので改良して次のようにした。

image

液晶の収まり具合も修正してぴったりはいった。
image

背面の収まり具合は、こんな感じで次にふたを作ることにした。
image

電源は006Pなので横置きにして台座のように傾斜して使うようなイメージにした。
imageimage

電池を交換出来るようにスライドするような設計をしたのだが、問題多数でまだ試作段階だ。
とりあえず、こんな感じになりますよというサンプルになっている。3Dプリントで複数のパーツを作成してスライドふたを作ったりする経験はノウハウが色々ありそうだ。
image

現在の形は006Pの収納部分の配置がバランスわるく直ぐに平置きになってしまうということがあるが、まあ最初の試作品はこんな形で・・・。

imageimage

 

 

3Dプリンターのフィラメント詰まり(Clogging)には食用油?

プリンターの出力が安定して途中でエアー印刷モードに陥ってしまっていた。
フィラメントの詰まりだ。色々原因を調査してきたがソフト動作での異常ログも見られず、印刷完了となっていた。clogged あるいは cloggingといったフレーズでforumで取り上げられているが、使い込んでくると起こる現象のようでもあり、一つの理由にはhot-endの温度管理があるのだが、対策を講じても違いが判らない。先日、hot-end自体もリニューアルして少し安定動作したかと思った矢先にエアー印刷症状が発症したので温度管理以外のファクタがあるようだった。劣化したのはフィラメント自身(PLA)が吸湿してしまったからではないかという説もあり、防湿管理などせずに裸でストックしていることも反省材料だった。seasoning/oilerという対策っぽいワードが出てきた。

seasoningとは、フィラメントに植物性油を付けて、ホットエンドにマニュアルで通すことのようだ。そしてoilerは定常的なフィラメントのパスにオイルを保つ脱脂綿のようなポットを置き、その中を通すような道具らしい。仮に適当な穴の開いているパーツにクッキングペーパータオルの切れ端を通して、グレープシードオイルに浸して、そこを通すようにした。次の写真だ。

image

結果は、次の通りでエアー印刷は解消できた。フィラメントが湿気を呼ぶとスムーズな運びができなくなるようだ。注意しよう。

 

image

結果が、とても良いのでoilerパーツを作成した。グレープシードオイルを使っています。
ペーパータオルを巻き込んでいます。

DSC_0561

 

 

猫ドア第2世代を3Dプリント

猫ドア第1世代は、アルミサッシに木枠をカスタマイズして作成したものに100×150の穴をあけたところに簡易にA4ファイルポケットを材料にカットして幅広の透明テープで止めていました。市販の猫ドア程度の精度で風の吹きこみを抑えたいので3Dプリントして現在の枠に当てるフレームと、ドア本体とを作成するものです。123Designで、フレームとドア本体の枠を作成します。確認の意味でアクリル板の部分も3Dソフト上で作っています。

スクリーンショット (24)

こちらが第一世代の状況です。
DSC_0532

そして、こちらが第二世代です。猫達も、慣れたようです。

imageimageimage

3Dプリンター障害解析 step by step

3D Printer Robo3D の故障

P1030165

第一発見症状
X resetで止まらない  retryの末に最終的に止まった?

確認項目 12/12

  1. X-end stop スイッチの動作をRAMPSボード側で確認 ーー> OK

2) MOTORドライバー基板のX軸の調整値をいじりながら反応をみる–> X軸の動作はスムーズに動かない。

3) RAMPSボードの目視確認–>NG Regulatorでコネクター接触部において一部溶融して接点ネジ困難
==>予備のRAMPSボードに交換、MOTORドライバーは付け替えで現状品を換装

MatterControl(制御ソフト)から確認
3) ATMEGAを切り分けで、交換したところ、シリアルポートがUbuntu(Linux1)側からttyACMxとして見えないという状態
–> Firmwareの書き換えが必要と認識して書き込み環境からNV, イメージを同一にすべく行ったが解決せず。
4) 同一品として認識していたATMEGA2560がチャイナ仕様でUSBがCH340だったことが判明。オリジナル版は、ATMEGA16UがUSB処理として搭載されていて、これはttyACMxとしてLinux側ではハンドリングされていた。–> CH340対応のカーネルドライバーモジュールを探索して、これをbuildしてinsmodして検知できたが、そのデバイス名は/dev/ttyUSBxとなった。Windowsと違ってデバイスのクラスがそこに見えてしまうのでアプリ設定が変更になる。

12/13 対応
1) 温度センサーがエクストルーダー側が計測できない。差し替えでRAMPSポートはOKなので、センサーサイドの抵抗を確認すると途中に作成した延長ケーブルで接触不良(断線っぽい)
–> 延長ケーブルの修理(圧着不良なのでそのラインのみ雌雄の端子を圧着した別の線を作成してハウジングに挿入した)でセンサー系統は解決、以前発生していた温度計測が0とフリッカー表示していたのは、これが原因だったらしい。

head温度のループ制御が崩れると制御不能に陥るので、これは肝心

2)次に各モーター制御を確認するのだが、モータードライバの調整について要調査だ。

年が明けての報告 1/5

突然モーター制御が一切動作しなくなった。切り分けとしてはMatterControlのメニューからのヒータープリセットと、その温度設定に伴う温度センス報告は正しく期待通りに動くのだが、モーター制御でX,Y,Zの各軸の移動指示が動作しない。RAMPSシールドやATMEGAの組み合わせや搭載すべきFirmwareのイメージ書き換えなどでも解決しない。

構成しているハードウェア結線側の確認を逐一行なったが不確実なQIコネクター箇所などの発見程度で現在の問題解決にはつながらず、将来の問題予防にはなったが・・・。

ハードウェアの組み合わせ変更を行い試験を続けたが、進展を見ないまま新年を迎えた。MatterControl以外の環境は現在は搭載していないので旧環境ReptierHostを搭載しなおしてみるかと思っていた。MatterControlの画面に残っている印刷Queueが気になり、何気に消していった。消し切ったところで、ヘッドの位置制御のコマンドが動作しはじめた。

使っていた印刷クライアントソフトの問題だった。このMatterControlは、印刷Queueが残っている限りは、印刷に関係するヘッドの位置制御などが出来ないということに思いが至った。

新しい、カードにしてしまっていたので各軸の制御を確認していき、Z軸の駆動能力が足らずにいることが判明したのでドライバー基板のポテンショメーターを時計回しにして増やしていき解決に近づくのを見つけかかった時に、煙が上がった。ドライバー基板が能力を超えたようだ。Z軸は二つのモーターを駆動する設計なので無理があるようだ。使っていない第二Extruder用のドライバー基板と差し替えて調整をして動作に至った。

クライアントソフトのスレッドで確認手順について問い合わせを早めにしておけば、よかったと悔やまれる。

Robo3D故障対応

3Dプリンターで昨夜、出力をしていたら朝になって途中でおかしくなっていた。
確認したところコマンドが正しく通らなくなっていた、コントロール側からみるとX軸のリセットをするとセンスが正しく動いていないようだった。切り分けを進めるとセンススイッチに問題はなく、どうもシステムとしてFirmwareが正しく動作してないようだった。いったんリセットスタートをCliantのUbuntuも3Dプリンターともに行うと、ATMEGAの本来動作すべきUSB動作が正しく立ち上がらない状況が起きていた。「/dev/ttyACM0」がUbuntuからは見えていないという状況だった。

DSC_0487

溶けたPoroluシールド

RampsシールドとATMEGAを取り外してみて、ATMEGA単体では動作しているようで/deb/ttyACM0が見えているのだが、シールド込みではおかしくなるようだった。シールドを交換してみようとすると、取りついているターミナルの一つがうまくネジが回らない状況だった。よくみると、ターミナルに当たっていたレギュレータでターミナルのハウジングが溶けていた。
交換した予備のシールドの当該箇所を見てみると、放熱器をつけているではないか。レギュレータが壊れたのかどうかの確認は、後にして、まずは交換した。動作していたモータードライバのモジュールはすべて換装しなおした。

DSC_0489

Robo3D Auto Level 改造メモとか

image

Lead Screwの更新でZ軸の安定化とAuto Level機構が合わせてつけられるようになった。調整をしているのか、整備をしているのか、バグ取りをしているのか不明なのだが時間がかかった。まあ、二年ほど使ってきた3Dプリンターで今更ながらに原理機構について学ぶことがある。

Robo3Dは、RepRapというOpenSource/OpenHardの3Dプリンタープロジェクトの一つである。ABSとPLAの双方に対応していて、大きなサイズの印刷物が作れて安いということで登場した米国ベンチャー(KickStarterで立ち上げ)の製品だ。ABS樹脂のほうが強度がありそうだということで、このフィラメントをまとめ買いしたのだが安定に印刷するという目的で完成品を購入したつもりだったが、ABSは作成途上の温度管理が難しくオープンエアーな構造の機械では難しいらしく、おもにPLAを使ってきた。

3Dプリンターの調整で、めんどくさいのはヘッドを清掃交換したりした際に生じるZ軸のゼロ点調整である。紙や隙間ゲージを使って0.12ミリくらいのギャップに調整するわけである。その後のプリンターでは自動調整機構が搭載されてきたので、この機械にも入れることにしたというわけだ。

Auto Levelの肝は、従来の調整したポジションからどれだけヘッドを下げたら、当該センサーがシグナルを出すかということであり、その値を測定してプリンターの個体値としGコードで与えることだ。そのコマンドはM565で、今回は従来通りに隙間ゲージで最適となるギャップを設定しておき、そこから3Dプリンター制御ソフトでZ軸を0.1ミリ単位で下げていくということで割り出した。制御している側から見れば、信号がきた時点が、どれだけ先に行ってしまっているのかということになる。

最後の調整は、第一レイヤの引き回し具合で確認することになる。正しく押し付けて伸びた樹脂として引き回しが出来ていれば完了です。のしが足らない場合には、にょろにょろとした引き回しになってしまいます。その状態ではプリントが外れてしまいます。

設定データを、保存してしまえばマイクロスイッチの取り付けさえしっかりしていれば、あとは、プレートに様々なシートや糊を貼ってもチューニングされた出力が始まります。

調整中に気づいた改善修正項目メモ
1) 出力ヘッドの取り付けボルトの二組のうち、一つがなくなっていた。
これで印刷がぶれていた可能性がありました。–>修正済
2) 背面にある電源スイッチとインレットがおれていました。–>同様なものを手配しました。立てかける時には、必ず電源ケーブルを抜きましょう。
3) 何度かMatterControlの画面で温度表示が0と表示値を繰り返す現象がおきた。–>要調査
Arduino Megaのリセットを行い復旧はした。
4) Z軸のモーターを変えたことでmotorドライバーの出力が不足して振動するのみとなった。–> 当該のモータードライバー基板のポテンショを右回しして出力を増やすことで動作した。モーターでばらつきがあるというよりも、プリンター側のメカが変わったので必要なトルクが増えたということだろう。
5) AutoLevelのセンサはマイクロスイッチなのだが取り付けのM2のネジが効いていない気がする箇所がある。ロック処置が必要。
6) 5)がおかしくなった場合には、フィラメント出力が止まってしまう可能性があるが、位置が下にずれてフィラメントが出なくなった場合には、エクストルーダーのドライブギアの切り込みでフィラメントが削れてしまっているのでフィラメント送りが進まなくなっている。ヘッドの温度を加熱設定してフィラメントを手操作で押しだすことで解消する。

P1030165