2011年6月13日

IGES→Gコード変換

先日の自作CAM。

処理があまりに重すぎるので改良を試みた。

 

エンドミルの半径分オフセットした曲面。
image

 

ジグザグのラインを投影します。
image

前回は、このライン上に点を打ったのですが。

処理に数十分もかかり。
点データが50Mとかになる欠点がありました。

 

今回はまず。

曲線を直線に変換します。
エッジの間隔が0.1ミリくらいになるようにしました。
image

そしてラインのみをIGESで出力。
IGESをWordで開きます。

 

IGESはソフトによって違いがあるので詳しくは判りませんが。
「パラメータデータセクション」という所に座標データが書かれています。

 

なので置換のワイルドカードを使い、必要な形にします。

 

改行スペース削除。
@*^13→なし

不要部分削除。
*D0,1.0D0,1.0D0,1.0(*D0,0.0D0;)*^13→\1

XYZ挿入。
0,([!D]@)D0,([!D]@)D0,([!D]@)D→X\1Y\2Z\3^13

 

これではまだ不完全。
最初と最後に不要な部分が多少あるので除去します。
(もう疲れたから諦めた)

 

あとは、Gコードの開始と終了のコードを付加。
これはバッチファイルで結合しました。

 

CNCソフトで読むとこんな感じ。
image

 

Wordによる置換は、やはり時間がかかるので。
これで完成とは言えません。

 

でもまぁデータ量は激的に少なくなりました。
実際に試していませんが半分以下にはなると思います。
十数万個の点が無くなったためです。

 

直線の中間点も不要になりました。
ビフォア→アフターです。
image

 

本当はVBSあたりで置換しようと思ったんだけど難しかったので頓挫。

でもまぁ、とりあえず完成ってことで。

明日からは切削。

0 件のコメント: