読者です 読者をやめる 読者になる 読者になる

C#ATIA

↑タイトル詐欺 主にCATIA V5 の VBA

加工時間の実績を取る

Fusion360CAMにも、ソフト上で加工時間を確認する機能があるのですが、
正直なところ目安程度ですよね。
f:id:kandennti:20160902122014p:plain

恐らくどのソフトでも。こちらの方も。
機械加工時間予測 | 技術の森 過去ログ | 挑戦する製造業のために/NCネットワーク

予測される原因はこちらに詳しく記載されておりました。
加工見積り時間について

求める精度にもよりますが、予測はかなり難しいのが本音ですが、
せめて実績は取っておきたいです。

超一流工作機メーカーさんの工作機であれば、終了後に実績の時間が
表示されるのではないかな?と思うのですが、素のFANUCの制御機を
積んだだけのものの場合、実績時間が出ないような気がします。
(どこかに出るものですか?)

そこで、"カスタムマクロを利用して時間を記録しておこう" と数年前に
思い作ってみたものの、上手く動作しなかったんです。
"NCの井戸端" と言うサイトで質問し無事に解決したのですが、
残念なことにそのサイトは閉鎖されてしまったようです。

仕組み自体は単純で、これをCAMのポストを修正し先頭と末尾に追加
するようにするだけです。(FANUC系だけです)

%
#3001=0

・・・

G53
#1=#3001/1000
#502=FIX[#1/3600]
#503=FIX[#1/60]-#502*60
#504=FIX[#1]-#502*3600-#503*60
M30
%

システム変数#3001はクロックです。
FANUC Series 0 システム変数一覧| NCプログラム基礎知識
(今考えれば#3002を利用したほうが、良かったかも・・・)

コモン変数#502~#504を利用しているので、他で利用している場合は別の
番号にする必要が有ります。クロックの単位がミリ秒なのでその辺を計算し、
#502 : 時間
#503 : 分
#504 : 秒
の値が加工終了後に入ります。

悩んだのは "G53" 何ですよ。 簡単なものでテストを行い、シングルで確認し
ながら動作させると正しそうな値が返って来るのですが、最後まで
一気に動作させると、0秒になってしまったんです。 何度やっても。
恐らく機械の動作とは無関係な部分は、先読みの機能で早く処理されるの
だろうとは予測できたのですが、それの食い止め方がわからなかったんです。

教えて頂いた方法は2つありました。1つは機械のパラメータのどこかを
変更する方法(忘れました)で、もう一つが "G53" を入れる方法でした。
実績が出ない機械が、社内で7台程あったのでこちらの方法を採用しました。