マクロ機能を知っていても、目的が無いとなかなかマクロを作成することがありません。
そこで、もっとマクロ機能を身近に感じて頂こうと思い、簡単なマクロサンプルを作成してみました。
※実機での動作確認はしておりますが、機種により仕様がことなりますので、お客様の責任においてご使用下さい。
4軸の横型マシニングで、ロータリー軸を持っている機械のロータリー軸角度が360度以上であった場合、原点復帰する際にゼロになるまで復帰動作を行います。 この動作を360度以内にまるめる処理をします。(但し、ロータリー軸が近回りの設定にされていない場合に限り有効なマクロです。)
また、引数を指定した場合はロータリー軸の原点復帰も行います。
現在の機械の状態を取得するためにシステム変数を利用します。
内容 |
FANUC 18i以上では |
MATRIX(MC系)では |
現在の状態がG90 or G91 |
#4003 |
#4203 |
現在のロータリー軸角度 |
#5044 |
#5044 |
例題ではFANUC 18i以上の場合で説明します。
|
※ このマクロではロータリー軸をBとしておりますが、機械によってもしくは回転軸によってアドレスがかわりますので、その場合はA、若しくはCなどに変更して下さい。
基本的に4軸目ですので、アドレスはそのままで使用可能だと思います。
アドレスを変更した際は引数も変更した方が分かり易いので、IF [#2 EQ #0]のところの、#2を、アドレスがAであれば#1に、アドレスがCであれば#3に変更して下さい。
今回のマクロではロータリー軸のアドレスを指定しているかのみを判定しておりますので、詳しく判定される場合はさらに判定(IF)命令を使って詳しく判定してみて下さい。
復帰動作をしない場合は |
復帰する場合は呼出しの後に、ロータリー軸のアドレスを指定します。
G65P9010B0; |
また、マクロをG65Pでは無く、GコードやMコードで呼出すことが出来ます。
| 例えばGコードで呼出したい場合 (G192 、G192B0) |
同じくFANUC 18i、30i, 31iの場合で説明します。
パラメータ番号の書替えを可能になるようにセッティングパラメータを変更します。
次にGコードでマクロを呼べるようにパラメータ番号を設定します。
パラメータ6050〜6059とプログラム O9010〜O9019が適応するようになっており、パラメータには、マクロを呼出すためのGコード番号をセットします。
例えば、G192を指令し、O9010マクロを呼出す場合、パラメータ6050に192をセットします。
以上の設定により、今回のマクロをG192、若しくはG192B0で指令できるようになりました。
このようにすることで、他メーカーであっても、同じプログラムを使うことが出来るようにすることも可能になります。

今回はFANUC社製の制御機を具体的に説明致しましたが、他の制御機でも同機能が存在します。
システム変数の番号、若しくはマクロの呼び出し指令を変更することで動作すると思います。
是非、マクロを使ってアイデアを一つの機能にしてみて下さい。
きっと、機械が更に便利だと、感じられると思います。