• 締切済み
※ ChatGPTを利用し、要約された質問です(原文:マクロでツール状態(装着してるか未装着か)を取得…)

マクロでツール状態(装着してるか未装着か)を取得する方法とは?

このQ&Aのポイント
  • マクロを使用して、主軸のツール状態(装着しているか、未装着か)を取得したい場合、FANUC社製のα-T14iELやFANUC 31i-A5を使用することができます。
  • 装着されていない状態で加工を行うと、アラームが発生し、機械が停止します。この問題を回避するために、マクロを使用して主軸のツール状態を取得し、未装着時には別のツールを使用することができます。
  • ただし、マクロ文を実行する際には引数アドレスに正しい値を指定する必要があります。誤った値を指定すると、エラーが発生することがあります。注意して実行してください。

みんなの回答

noname#230359
noname#230359
回答No.4

回答(3)です。 少し気になったのですが。 加工プログラムを作って、必要な工具を準備してマガジンへ収めて、ワークを段取りしてサイクルスタート。 こんな流れが基本だろうと思いますが、人がマガジンへ工具を収めたときに勘違いで、1ポットづつずれて収納してしまった とかの「人為的ミス」の場合 いくら工具未装着で代替工具を選択しても 意味がありません。使いたい工具が予期せぬ場所に収納されていることも考慮した方が無難です。 コレばかりは、プログラムではどうしようも無いです。 なので、「主軸にツールが装着されてない状態で、加工をすると アラームが出てストップします。(当然の事ですが)」は、このままの方が安全かもしれません。 目的の工具を主軸へ装着しようとしたが、実際は無かった ということですので。

noname#230359
noname#230359
回答No.3

#8401~#8470までは、工具管理機能で使いますので この機能を購入されていないと使えないと思われます。 ATC動作は、PMCで制御しているはずです。主軸の工具番号とポット番号もPMCで管理しなければ、マガジン→主軸、主軸→マガジンの動作ができないはずです。必要な工具はどこに収納されているか、返却工具をどこに収納するか(収納先をランダムにしている場合もあり)。 これら機能をNCの機能として統合しさらに拡張(例えば補正や寿命といったことも一元管理できるらしい)したものが工具管理機能のようです。私は使ったことが無いし、今後採用の予定が無いので取説を簡単に読み飛ばしました。詳細は御調べください。 それに加えATCマクロを使って軸移動や機械状態の判断等を行っているのが普通です。 ?主軸に工具があるか無いかだけでよければ(例えば#1001)が「0か1」を出してもらって、それで判断する。 ?PMCで管理している主軸工具番号(例えば#1032)を出してもらって それが「0か0以外」または「主軸工具番号」で判断する。 #1001~や#1032~は、既にPMCで使われている可能性があるので重ならないように。(メーカに聞いてみるか、やってもらうのが安全で確実) コノくらいしか思いつきません。ご参考に。 FANUCほどのメーカなので、もしかして#1032~#1035のどこかに主軸工具番号を出しているかもしれません。 ご質問を読んでいたら、もうひとつの方法があるかもしれません。 >主軸にツールが装着されてない状態で、加工をすると >アラームが出てストップします。(当然の事ですが) ?このアラーム判断しているタイミングや方法ががわかりませんが、アラームになる情報(主軸に工具が無い)を取り込めませんか? 1.PMCによるアラームなら、工具有り無しの情報を変数へ出してもらい、アラームレベルを変えてもらう。判断はプログラムで行うようにする。 2.M06(ATCマクロ)で出しているアラームなら、マクロを編集して代替工具を判断する。 3.その他

noname#230358
質問者

お礼

なるほど! ようやく理解できました。 このOPは購入してないです・・・・。 ラダーで挑戦してみます ありがとうございました。

noname#230359
noname#230359
回答No.2

回答(1)です 追記だと気づかないのであげさせてください。 小生は工具関係のシステム変数を知ってはいますが実際プログラムに使用したことがありません。 他に良策ある方いましたら宜しくお願いします。 他対策をもらえてよかった・・・。 オプション機能とは知らずに失礼をしました。

noname#230359
noname#230359
回答No.1

工具種類番号(T*****)は#8402に格納されているので 未装着時に該当のシステム変数の数値を見てみれば、多分0になっていると思います。 マガジン番号とポット番号の組み合わせなので、未装着なら必然的に0になっているかと。 ただ別のツールを使わせたいなら工具管理データを編集して新規登録したほうが安全かと思いますが(登録できるようなツールであればですが、できなければPS5360アラーム出てくれますね) 小生自身変数#8402をプログラムで使用したことはありません。 (実際に使用するような機会がなかったので) 先ずは読み込み可能な変数なのか調べてみます。 他の方からの解決方法提示があればよいのですが、ないようでしたら ご一緒に解決方法模索しましょう。 他の方法として、#8401(工具管理データ番号)も試してみてください。 これについても、(主軸位置テーブル、待機位置テーブルが空きポットとなっている時)0となっているはずです。 前回申し上げた工具管理データ編集で新規登録については不可能なツールでしょうか? 調べてみましたが、読み取り可能な変数です。 主軸位置テーブル、待機位置テーブルが空きポットとなっている時 #8401(工具管理データ番号)は0、#8402(工具種類番号)については数値のない空状態となっているようです。 (その他にも工具の状態を格納している変数がありますが、そちらも空状態) 空だったからダメだった・・・? そういえば空状態の変数を代入しようとしたことがない・・・。

noname#230358
質問者

お礼

ありがとうございます。 早速、試してみます!!

関連するQ&A