[注意] STLファイルの加工について続報 Meshmixer

既存のSTLファイルを加工して利用する場合についてデータ出力で問題となる場合がわかった。

imageこの写真の例では、左端のデザインをベースにして一部の脚のみを分割して伸ばしたいというものだったのだが、真ん中の事例は、そのままやったことが明確なままに部材も分断されて出てきた。

右側の事例は、そのことが判明したので対策をしたものです。Meshmixerで面カットなどで分断した場合で別の部品や拡張した形で接続しようとする場合に起こりました。

Gcodeベースで確認すると違いは次の通り。

スクリーンショット (55)結合しただけの状態で出したSTLファイルは実際には内部は結合していませんでした。Mattercontrolでgcode生成した場合の第一層の写真です。

 

 

スクリーンショット (53)結合した後にMake solid(固体化)というアクションをとることで作ったSTLファイルでは綺麗に内部が固体化されたのが確認されました。

 

 

必要な手続きをMeshmixerで再確認すると

スクリーンショット (44)これが内部で固体化されていないSTLファイルを読み込んだ状態でObject Browserを開きました。

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

 

Edit->Separate Shellを実行すると内部に三つのパートがあったことがわかり分解されました。
Object Browserで三つのパートを再選択して、Combine(結合)します。

 

 

スクリーンショット (46)Object Browserでも一つになりましたが、これではもとに戻っただけですね。

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

 

 

Edit-> Make solidを選択するとメニューが出てきますので、固体化する際の精度などを選択できます、ここではsolid accuracyを最大の512にしました。そしてacceptを実行すると

 

 

スクリーンショット (50)Object Browserにもう一つのデータとして名前に(solid)が付加されたものが作られました。

 

 

 

スクリーンショット (51)固体化していないオブジェクトを一旦Object Browserでゴミ箱に入れて

 

 

 

スクリーンショット (52)このオブジェクトに対して、Edit->Separate shellを実施すると出来ないよとアラートが出ますので、これで固体化が完了しました。

 

 

スクリーンショット (54)Object Browserで、固体化したオブジェクトを選択した状態でFileメニューからExportを選んで、STL形式で出力することで完了となります。

 

 

 

 

 

[作業メモ] STLファイルの加工について Meshmixer

3Dプリンターを使い始めると、パソコン創成期のように自分で改造していくということが頻繁に発生するようになる。完成品というには、似つかわしくない進化する道具といえるだろう。カスタマイズが共通だったりする場合も、オプションが異なる場合なども含めて共有されるカスタマイズパーツのSTLファイルはthingiverseなどのコミュニティに提供される共有フォーマットとしては有用なのだが、加工をベースにした場合には123Designなどで開いても加工できないケースが多い。

今回は、Robo3Dプリンターに保温カバーを取り付けるという長年の懸案事項に踏み込んだ為にスマート液晶コントローラの取り付けパーツを変更することが必要になった。

2016-07-20 (1)左側の3Dデータが、従来使ってきたものだが、今回取り付け位置を右にずらす必要から、右側のように3Dデータを変更してパーツを作成する必要がある。

踏み込んで使えるように、今回はMeshMixerというAutodesk社のツールを用いて、こなしつつ学ぶことにした。

 

行うべき手順は、取り付け部分のパーツをカットして、スライドしてということなのだが、実際には、それだけでは済まなかった。

Plane Cutという機能で切断面を当該部分の根元に当てようとすると、角度の調整が難しいのである程度あわせて切断面を前後に移動させながら角度を追い込んで適当な位置を求めた。
2016-07-20 (2)写真の下のほうでカバーの一部が、この切断面で切れてしまうことが分かったので、あらかじめ、このケーブルカバーを根元で切断して保存しておき、あとで結合することにした。

 

 

2016-07-20 (3)切り出されたオブジェクトはObject Browserに追加された。この部分を非表示にしておいて、本体の部分のカットに取り掛かる。

 

 

2016-07-20 (4)ある程度のところで妥協すると断面は、すこしスカートが残ってしまうことになった。このままスライドしてもつながらないので、それは断面をextrudeして伸ばして面に接地されるようにしなればならないが、適当な厚みで重なっても問題はない。

 

2016-07-20 (5)切断するとこの動かすべきパーツがさらにObject Browserに追加された。

 

 

 

2016-07-20 (6)移動させてみると断面がおかしなことになっていることが判明したので、これを修正する。

 

2016-07-20 (7)

修正には、Analysis->Inspectorで断面をFlatFilでAuto Repair allを実施してまずはベースの修正を完了したので、このパーツを非表示にして移動した部品の断面を伸ばすことにとりかかる。

 

 

2016-07-20 (8) 2016-07-20 (9)案の定切った断面の前処理が必要なのでベースと同様にAnalysis->Inspectorで断面をFlatFilでAuto Repair allを実施し処理してみる。

 

 

これでこの断面を伸ばすことに取り掛かれる。

 

 

 

2016-07-20 (10) 2016-07-20 (11)selectの画面で、左クリックする少しずつ領域が選択されるので、繰り返し残りの領域を選択して全面あるいは少なくとも周囲を押さえることが必要だ。

 

 

まじめに全部選択してみた。

 

 

 

2016-07-20 (12)Edit->Extrudeでメニューがでるので、ここで長さを調整する。おそらく3mmもあればかぶるので適当なところでAcceptをする。

2016-07-20 (13)

 

非表示にしていたメイン部品を表示にすると重ね合わせが出るので少し長いが問題ないと判断するか調整をするか

 

 

2016-07-20 (14) 2016-07-20 (15)三つのパーツがそろったので、Object Browserですべて表示させて、シフトおしながら選択して、EditからCombineを選択して結合させる。

 

 

Object Browserでも一つになったことが分かるので、これで一応目的は達成した。最後に出来上がったファイルをSTLフォーマットでExportして完了だ。

Robo3DにもABS保温カバーを作ろうPart2

imageさて、左のRobo3Dプリンターに保温カバーを取り付けるとなると、課題がある。どこかというと

2014-12-28_22.10.30_preview_featured

 

 

 

そう、制御コンソールの取り付け位置が保温カバーのそれと当たるのである。

 

 

 

2014-12-28_22.10.38_preview_featured

背面にある取り付け部品をずらすことが必要なのだが、複雑な形状のSTLデータの削除は大本の3Dデータのものがないと難しいのだが、STLファイルを直接いじるツールも存在するが使い勝手というと、粘土をいじる感覚のような使い方を念頭にしているようで正確な部品を作るといったことには向いていないようだ。そんなMESHMIXERを使うことにする。このソフトもAutodesk社から提供されている。

 

2016-07-17左側のSTLファイルを必要な角度で面でカットして(Sliceする)、当該のパーツをトランスフォームのメニュから移動させて右側の形にして、STLファイルとして保存した。足元のカバーの長さも若干カットが必要だ。

mattercontrolでサポートが出来ないケース

連結して作成しようと思った長手の部品だったがこちらがわは上部の突起に対してのサポート材が生成されないようだ。暫く、mattercontrolのみでやってきたので他のslicerを見直してみるしかないか。クーリングが十分になっているプリンターならば、これでも可能なのかもしれませんが・・・。

image

PLAではあるが上部の突起に対して、サポート材が出せていない。

3Dプリント失敗(ABS)のケースでの学び

imageしばらく続いている池の噴水(小便小僧)への揚水ポンプ関連です。15mmの接栓に6mmのホースを接続する必要があり異径ジョイントを作成しているのですが、チューブ構造が悪さをしているのか5mm径で内径2.5mmのものを出力すると右のようになってしまいました。

5mmの外径がやせてしまうようで、さらにあるサイズを起点に積層が乱れるようです。ABS材で高温処理していることも要因のひとつと思われますが中空のものを作成する際には課題のようです。先端が5mmで根元が6mmのサイズでテーパーを指示したのですが、途中でこの状況に陥るようです。左側は6mmの円柱で出力したもので、こちらは問題がないようです。とはいえ少し出力が痩せる傾向にあります。6-7のテーパーを指定しないと、この条件では内径6mmのホースを固定するのには合致しないかも知れませんね。

ニキシー管時計を作ろう (更新3)

レトロな映画で最近も見かける表示器だが数字のエレメントが重なり0-9あるいは単位などの表示ものもあるようだ。高専に入学したころ(1971)には、電子計算機室という名前で、実際にはこの表示器のついた大型電子卓上計算機が並んでいる部屋だったりもした。当時はSONY製やカシオ製の電子式卓上計算機が鎮座していた。ルート計算ができるモデルがあったが、計算をすると途中経過の表示などが確定していくさまでは表示が前後する形のこの表示管の味わいがありました。このチューブはソケットの上部から覗くようになっていてパネル面につけるタイプのものなのだろう。現在はロシアで生産しているようで、ソケットと合わせてチューブを購入した。中身はネオンサインと一緒で高圧200V程度をかけて当該のエレメントが点灯するようになる。

IMG_5821

真空管のソケットタイプではなく、ニキシー管の専用のソケットになっているらしい。
これを立てて取り付けるパネルを3Dプリンターで作成した。
IMG_5824

制御基板はATMEGAでArduino開発ベースとなっていた。基板には、高圧発生回路、フォトドライバー、高圧対応のBCDデコーダとなり、別にリアルタイムクロックのモジュールとi2cで接続する形だ。

IMG_5820

配線自体は、基本的に横一線で同じエレメントを数珠つなぎとしてアノードを各自に配線する。IMG_5825

制御基板やrtcモジュールを載せるシャーシも3dで作成した。ここにニキシー管パネルを立てる

IMG_5826

配線の終わったニキシー管パネルをつけた。

IMG_5831

これを落とし込む100円均一で買った木製ボックスにいれてみた。
この窓からニキシー管が見える予定。

IMG_5829

全体を接続して動作確認をしてみると点灯しない文字があるのでデバッグ開始

IMG_5835

今回のキットはチェコの方の作品だが、基板の改版とコードのメンテナンスがシンクしていないようで、atmegaからの引き出しピンが私の入手した基板ではあっていないようだ。古い基板をくれたのかもしれない。ソースは開示されているので修正することにして、まずケースに収めてつけてみた。こんな感じ
IMG_5845
問題点は、明らかになり基板のバージョンが古いらしいこととソースコードとマッチしていないことだった。基板をソースコードに合わせて修正してソフトを書き戻した。RGBとTICKのLEDにPWM制御をかけたいらしく仕様変更があったようだ。最新の図面は提供されていないがソースには、そのように書かれている。基板のパターンも訂正されていないのでパターンカットとジャンパーで筆者がしたであろう状態にしている。予備の基板が一枚あるので、作りたい方は、ジャンパーのみ実施していただく必要がある。パターンカットは実施済。

表示できない文字や配線していないはずの小数点が表示されるなどの挙動がありさらに追及するとニキシー管のソケットナンバリングと向きが想定外になっていて180度異なっていたことが判明した。スペックシートとまったく反転しているのには驚いた。下記のスペックシートをみて、実際のTUBEを正立で見た際に天が12ピンではないのだとは・・・・。

in-12adiagram

ソケットを180度回すだけの配線の余長があったので幸いでした。

image

操作キーは秋月の基板を天板のアクリルにとめつけて操作ボタンとLEDを出すことにしたのだが、基板加工機を使ってNCマシンの代行にさせようとしたのだが失敗してしまった。アクリル加工には基板加工とは違って出来るだけ発熱をしないようにしないといけないのだ。ドリル径より大きな穴をスイングしてあけさせようというのは周辺が溶け出してしまいみっともない形になった。1mm程度のドリルで上下の打ち抜きのみをさせるように次回はしたいと思います。
image

出来上がりを確認してみると1,2,5の文字が表示できないという現象となり74141がおかしいようだ。ついてきたパーツはロシア製の互換チップのK155だったが、中華マーケットに手配をかけたが、いまさら秋葉原にもなさそうなので、入荷したら再開しよう。

原因は、基板のパターン間違いだった。A-Dが入れ替わっていた。途中表示をしなかったのは、10進デコーダの範囲外となっていたからだった。うーん、困ったものでしたがソース修正して無事表示が出るようになりました。

DSC_0587

予備の基板がありますので、作りたい方はNIXIE管の手配で作れそうです。

DSC_0588

追加のバグ報告 アノードの出力ピンがコネクタ順で時刻の10位と1位が入れ替わっていました。なぜか、この基板設計した人は間違ったままにしていたようです。表示がおかしいので、ソース側で修正しつつ、基板の間違いを確認しました。

作者からソースコードの旧ハード(Revisionなし)に対応するものが提供されましたが、若干の相違があったのでレポートを返しておきました。

時刻表示もOKです

image

カレンダー表示もOKです

image

レーザーミニ加工機で表札作成

里にあるレーザー加工機SmartLasr-miniは出力1.6Wの半導体レーザーマシンです。
このため、紙の切り出しや、皮革や木材の上に焼き入れで文字や模様をつけたりといったことが使い方になっています。ここでは、表札作成を通じてデータ作成方法について記します。

作例はこんな形です。厚みで15mmくらいの板まで加工できます。

IMG_5686IMG_5687

表札の文字データは、InkScapeで作成します。2016-02-20 (1)

文字の大きさは、文字のオブジェクトを選択して上下左右のサイズを拡大縮小して合わせる。2016-02-20 (2)

文字のオブジェクトをパスに変換します。2016-02-20 (3)

パスに変換すると、文字ごとに確認ができます。

2016-02-26

サイズ変更はパスに変換した後でも可能です。2016-02-20 (5)

最後にハッチング処理をプラグインで行いますが、色を指定しておくと塗りつぶしの密度を確認できます。黒のままではわからないので・・・

2016-02-26 (2)

Inkscapeでは、EggBotというエクステンションを使います。

2016-02-26 (3)

 

物理的なサイズとInkspaceでのサイズを合わせるには、SVG読み込みの際に90dpiのファイルとして読み込ませることで合致します。

2016-02-26 (4)

ここでは、クロスハッチで角度を45度指定で行っています。パワーが少ないのでピッチは1mm程度にするとよいようです。細かくするとさらに時間がかかります。

2016-02-26 (7)

 

試し刷りでボール紙などを置いて位置を確認してから、部材を置きます。
レーザーミニでは焦点距離を合わせないといけないので、部材に合わせてレーザーホルダーの取り付け位置を調整します。加工材の上に、基準板を載せて、そこにホルダーが当たるように調整します。
image image

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

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

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

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

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

imageimageimage