FlashPrint エディター

FlashPrint 用のG-codeデータを編集できるソフトを作成してみました

f:id:kazuban:20170524084845j:plain

基本的には、データを保管するフォルダを新規作成して、そのフォルダをドロップして適当に編集後、「Create」ボタンを押すだけです

入力したG-codeのテキスト分の先頭に、FlashPrint 特有のヘッダー情報を自動挿入しファイルを作成します

このファイルは、FlashPrintで直接読み込めるようになります

すでに作成されている、G-codeデータをドロップすれば、編集可能となります

サンプルとして、FINDER のランニング用データを作成し同梱してみました

エクストルーダを暖めた後、テーブルを下げ、テーブルの最大最小を移動し、最後に若干フィレメントを押し出して終了となります

ソフトはVector に登録しましたが、まだ古いバージョンです

Vectorでも更新されました

[Vector] ライブラリ公開のお知らせ

 

 こちらのほうが新しいです

こちらからでも、ダウンロードできます 

http://www.geocities.jp/sako_sho_kei/temp/EditorForFlashPrint.zip

 

もし興味あれば、ダウンロードしてみてください

次回はこいつを使って、テーブルの水平だしをする、G-codeを作ってみようかと思っています

 

 

FLASHFORGE FlashPrint が吐き出した G-Code を覗いてみた。

NC工作機械のGコードは仕事でも携わってきたので
3DプリンターのG-codeにも興味がありテキストエディタで覗いてみた
テキストエディタでは、ヘッダー部分はたぶんバイナリデータなんだろうね?
文字化けの文字が並んでて、その後、G-code部分はテキストで出てくる
改行文字は通常のWindowsのテキストの「CR,LF」ではなく「LF」のみ・・
これは、FANUC系の工作機械と同じだね
なので、「メモ帳」では改行されないで、連続文字に見えるかもしれない
私の使ってる秀丸エディタは自動認識で正常に表示してくれた
さて、FLASHFORGE FINDER に同梱されていたサンプルデータ「20mm_Box.gx」
を覗いてみると、下記の感じ

;start gcode
M118 X15.00 Y15.00 Z10.00 T0
M140 S0
M104 S210 T0
M104 S0 T1
M107
G90
G28
M132 X Y Z A B
G1 Z50.00 F400
G161 X Y F3300
M6 T0
M907 X100 Y100 Z40 A80 B20
M108 T0
G1 X-15.00 Y15.00 F4800
;preExtrude:0.20
G1 Z.20 F400
;preExtruder0
G1 X-15.00 Y15.00 F4800
G1 X-15.00 Y-15.00 E4.3504 F1200
G1 X15.00 Y-15.00 E8.7009
G1 X15.00 Y15.00 E13.0513
G1 X-15.00 Y15.00 E17.4017
...
...実際のプリント動作指令
...
G1 X9.03 Y-9.06 E737.1908
G1 X9.06 Y-9.03 E737.1922
M107
;percent
G1 E735.8922 F1800
;end gcode
M104 S0 T0
G162 Z
G28 X Y
M132 X Y Z A B
G91
M18


G1やG90など、NC工作機械にも馴染みのコードもあるけど
主に機械の補助的機能を指令するMコードはあまり互換性がない
調べてみると下記サイトが見つかった
http://reprap.org/wiki/G-code

これみると
  G00 位置決め(早送り)
  G01 直線補間(切削送り)
  G02 円弧補間・時計回り
  G03 円弧補間・反時計回り
  G04 ドウェル・一定時間停止
  G28 機械原点復帰(指令軸のホームへ移動)
  G90 絶対座標系(アブソリュート指令)
  G91 相対座標系(インクレメンタル指令)
  M06 工具交換
ここらは、NC機械と同じですね

プリンタ特有なのは
  M118 ?よく分からない。プリントの最大値なのかな?
  M140 ベット温度設定。これはFINDERではあまり関係なさそう
  M104 エクストローダー温度設定。
  M107 ファンOFF
  M132 軸のオフセット設定?よく分からないが初期設定みないなものかな?
  G161 指令軸の最小点に移動させる
  G162 指令軸の最大点に移動させる
  M907 軸のモータ電流設定?これもよく分からないがおまじない?
  M108 エクストルーダ速度設定
  M106 ファンON
  M18 すべてのモーター無効(終了コード?)
  E指令 フィレメントを押出す長さ指令(mm)
  ;  記号 コメント行
こんなところか。

まぁ、分からない指令は、おまじない的に書くとして
「G0」「G1」「G28」「G161」「G162」あたりの組合せで
ある程度の動作は、させられそうですね。
会社では新しいNC機械が入ってくると、ランニング運転用として
機械の最大最小付近を動作するようなNCデータを作成するのですが
そんなイメージのFINDER用G-Codeを作成してみたいと思います

っと思い、適当にテキストエディタでヘッダーの後にコードを編集し
そのデータを、FlashPrint へロードしてみたけど、読込んでくれない!

う~ん、たぶん、ヘッダー部分をエディタが壊したんだなぁ?
秀丸のバイナリモードで、オリジナルデータと壊れたデータを比べると
なるほど・・・
オリジナルの[0x00]ヌル文字が[0x20]スペース文字に変換されてた。
たぶんテキスト的には、ヌル文字なんて意味がないので
テキストエディタは勝手に変更しちゃうんだろうね
おそらくwindowsのメモ帳も同じような処理をするんじゃないかな?
これじゃ、テキストエディタでは、FlashPrintのG-codeの編集は無理!
そうなると、バイナリエディタで編集するしかないか?
と言う事でネットで探してみるとバイナリエディタ自体は
いろいろ見つかった。その一つを試してみると、
16進表示での編集になりそう。これでG-codeを入力するのには、
ちょっと面倒だなぁ
しょうがない、ヘッダーはバイナリのままで、G-code部分は
テキスト入力で、改行は「LF」にするプログラムを
暇つぶしに作ろうか~
使う人はあまりいないかもしれないけどね~
もしかすると、他のスライサーで出力したデータをコピペで
利用できるようになるかもしれない

 

HANAKOさんを印刷してみる!

 

サポート材の練習にもなるかと思い、HANAKOさんを印刷してみた

原寸は私のプリンタからは、かるく飛び出てしまうサイズ

時間とフィレメントの経済性を考えて、身長100mmぐらいまで縮小

とりあえず、FlashPrint の枝状サポート自動サポート

デフォルトでは大きそうだったので、太さは2mmに設定

サポート材はかなり少ない。こんなんで、綺麗に印刷できるならいいなぁ

f:id:kazuban:20170518102501j:plain

もも付近までは、ラフトが少し反ったぐらいで、順調だったけど、

それ以上になってくると、だんだん揺れ始めた

左手首がかなり揺れてるけど、どうにか通過。

でも右手側で、もう限界。腕がべたべたになってしまって。強制終了!

う~ん、ケチって小さくしすぎたのかもしれないが、難しいなぁ

それで、今度は、自動サポートの後で、手動で追加。

なるべく、手先付近は多めにして、さらに、サポート材をさらにサポートするようになるべく土台を強くするようなイメージで追加

f:id:kazuban:20170518103202j:plain

ちょっと、多すぎたか?

でも今度は、かなり安定している。手首でもほとんど揺れない

ただ積層を標準(0.18mm)にしたからか、少し粗かったかな!

f:id:kazuban:20170518103415j:plain

でもどうにか、終了!

サポート材は、注意しながら、ニッパで外したけど、それほど大変ではなかった

でも、この魅力的なスタイル。腕が結構細かった。

写真を撮ろうと、立てているときにちょっと指があたって、左腕が折れてしまったぁ

ごめんなさい。HANAKOさん。どうにか接着剤で治療したけど、くっ付くかな?

f:id:kazuban:20170518103930j:plain

まぁ、いずれにしても、サポート材は難しいね~

もっと、経験が必要ですね

 

 

 

フィラメント詰まり

フィラメント交換。

前回交換したときも、なかなか出てこなくて、何度もやっていたらそのうち出てきたけど

今日はなかなか出てこない。

う~ん、こりゃエクストルーダーをばらさないとだめかな?

とりあえず、FLASH FORGE のブログにバラし方載ってたけど、面倒だなぁ

休みの日昼間なら、やってもいいけど、晩酌後の寝る前じゃやりたくない!

どうにかならないか?

とりあえず、交換するフィラメントの先っぽを、カッターで尖らせてみる

f:id:kazuban:20170515205043j:plain

こいつを再度突っ込んで・・・・

おぉっ、さっきより奥へ入ったような感じ。

「押出し」をやってみると、最初は前の樹脂がグルグルと出た後、正常に押し出された!

やった、成功

いつもこれで解決するのか疑問だけど、とりあえずバラさずに済んでよかった

ボトルキャップの漏れ!

結構硬いのに、どうして漏れるのだろう?

印刷方向とサポート - 還暦じじぃの暇つぶし

 

やっぱり、ネジの断面形状か?と思って簡単にネジの幅を計ってみると、結構品物によって溝幅は違うんだね~

じゃぁ、やっぱり汎用的な蓋は難しいのかな?

っと思いながら、キャップを覗いていると、おっ、これかぁ~

f:id:kazuban:20170515133020j:plain

キャップの天井には、漏れ防止の円柱突起があるじゃないか・・・

ボトルの内径を蓋するような、突起をつければいいのかな?

次回、この対策をやってみよう!

印刷方向とサポート

ペットボトルキャップの頭にカメラ用のボルトを立てて、簡易カメラスタンドを作ってみようと思う

調べるとカメラ用のネジは、UNC 1/4-20 と言うことなので、外径は約Φ6.3、ピッチ1.27 ぐらい・

結構小さいし、ピッチも大きいなぁ。すぐに折れそう!

f:id:kazuban:20170513143708j:plain

モデリングFusion360のネジ作成で簡単にできたけど、どっち側から印刷したほうがいいか?

横と言うわけにいかないだろうな?縦にしても、どっち側でもアンダーになるからサポートが必要だろうなぁ。

とりあえず、ボトル側を上、カメラボルト側を下にして、サポートはスライスソフトの自動サポートで印刷してみるが、うまくいかない。

やっぱり、PLAだと弾力がないし、ボルト部がきゃしゃなので、はがす時に折れてしまった

サポートも一緒にモデリングしたほうがよさそうだ

どんなサポートがいいのか?ネジに接触させると、結局折れてしまいそう

よくわからないが、ネジからは、半径で0.6程度はなして、リングを何本か作成

f:id:kazuban:20170513144850j:plain

こんなんで、再度印刷。ちょっと、離しすぎたかな?

f:id:kazuban:20170513145026j:plain

バリがすごい。でも今度は、すんなり外れた。リングは綺麗な輪になってる。

f:id:kazuban:20170513145114j:plain

とりあえず、ペットボトルにも装着できて、カメラもすんなり取り付いた。

f:id:kazuban:20170513145256j:plain

f:id:kazuban:20170513145409j:plain

でも・・・・

横にすると、もれるんだよねぇ~

もう少し、ネジの断面をキチンと描かなきゃだめなんだろうなぁ

まぁ、カメラの簡易スタンドには、なりそう。

3Dプリンターでネジの蓋を作ってみる

ネジをプリントするとどうなるんだろう?

とりあえず、メジャーなペットボトルのネジを印刷してみよう

ピッチは昔仕事でやった事があったので、通常はインチ8山なので3.175mm

径は、実際の物を測ると、外形がφ27.3mmで内径がφ25.0mm

ネジのモデリングは、Fusion360 にはネジ作成のコマンドがあったと思ったので簡単!

と思っていたけど、一般的な規格ではないらしく、簡単には描けない?

しょうがないので、コイルを描いて引き算することに・・・

本来だったら、断面形状も大事かもしれないけど、まぁペットボトルだからいいかぁ

f:id:kazuban:20170508221807p:plain

さぁ、印刷。

おおぅ、とりあえず形にはなった。

f:id:kazuban:20170508221954j:plain

はめてみると、ちょっと堅いけど、力をいれれば入る

f:id:kazuban:20170508222231j:plain

やっぱり、前回のテストと同様に、少し小さくできているのかなぁ?

径で0.2~0.3mmほど大きくモデリングすれは、いいような感じ

それにしても、こんなに簡単にネジの部品が作れるのには、感動!