C#ATIA

↑タイトル詐欺 主にFusion360API 偶にCATIA V5 VBA(絶賛ネタ切れ中)

ポストの修正

こちらにチラッと書いた続きです。
Autodesk CAM Challenge - C#ATIA
先日に引き続きポストの修正です。細々と。

〇小数点表記
元のポストでは座標値類が小数点で表記されていないのが
気に入らないんです。結構探しまくりました。
f:id:kandennti:20180509184025p:plain
Formatsのこの辺です。恐らくこの辺の名称は任意で決められる
ような気がするので、他人にはあまり役立たないとは思ってます。

〇実績稼働時間
以前こちらで記載した内容です。
加工時間の実績を取る - C#ATIA
ベタに書くのもおしゃれじゃない為、[User Commands] に
「Time_Reset」と「Time_Get」のコマンドを作ります。
[User Commands] ですが、何となくLisp等のマクロ展開みたいな
感じで便利ですね。

「Time_Reset」で時間をリセットします。ついでに使っていなかった
コモン変数#505を 0 にします。
f:id:kandennti:20180509184053p:plain
未だにアイテムの背景色の違いが、何を意味しているものか不明です・・・。

「Time_Get」では以前同様に、コモン変数#502~#504に時間を出力し
#505はカウンタとして+1します。
f:id:kandennti:20180509184104p:plain

「Time_Reset」は 「Program Start」に入れておきます。
f:id:kandennti:20180509184117p:plain
この背景色が黄土色は [Command] と言う事だけは覚えました。

「Time_Get」は 「Toolpath End」に入れます。
f:id:kandennti:20180509184128p:plain

この状態でポスト処理すると、

%
・・・
「Time_Reset」コマンド
・・・
1個目のツールパス
・・・
「Time_Get」コマンド
・・・
2個目のツールパス
・・・
「Time_Get」コマンド
・・・
・・・
M30
%

の形で出力されます。

今までの形では、最初に時間をリセットし最後に時間を書き出して
いたので、何も問題無い時は良かったのですが、
何らかのトラブルで機械を止めた際、
1)止めるまでの実績時間が全くわからない
2)何処で止めたのか? が、主軸に付いている工具からのカン
と言う状態でした。

「2」に関しては、"ブロックナンバーを付ければ良いじゃん"
と世間の皆様は思うと思うのですが、N88BASICっぽい上ファイルサイズ
が無駄に巨大になってしまう為付けてません。

これで止めた際でも、#505の番号の工程までは終了している事が
わかるため、リスタートする際の目安になります。
(特に同一工具で複数工程加工している場合でも、はっきりとわかるはず)

〇コメント類
社内の先任者の責任にするつもりは無いのですが、出力されたNCプログラムが
あまりにGコード過ぎるので、もう少し情報をコメント出力するように
しました。
f:id:kandennti:20180509184143p:plain
右が修正前で、左が修正後。 実際にNCプログラムを細かく見るわけではない
のですが、修正前のものは何処までが同一工具なのかすら、わからない・・・。


時間の書き出しは、サブプログラム化しておいてNCプログラムでは呼び出しだけに
するのも良いような気もしましたが、まぁとりあえずこのままで。

ある程度慣れれば「Manufacturing Post Processor Utility」も
ビジュアルエディタとでも呼びたくなるような機能満載なのは理解できました。
使いこなせるとは到底思えませんが・・・。