本文へ移動
サポートシェアリングソリューション
OKWAVE Plus

このQ&Aは役に立ちましたか?

締切済み
※ ChatGPTを利用し、要約された質問です(原文:fanucの簡単なマクロ教えてください!)

Fanucの簡単なマクロ教えます!

2023/10/16 00:21

このQ&Aのポイント
  • Fanucのマクロで簡単な慣らし運転を作りたい場合、以下のコードを使用できます。
  • マクロコードの詳細は、質問文章の内容に沿って設定されています。
  • これを使用することで、指定した動作を繰り返すマクロを作成できます。
※ 以下は、質問の原文です

fanucの簡単なマクロ教えてください!

2008/10/23 21:11

okkマシニングセンターを使い始めたんですが、簡単な慣らし運転のマクロを作りたいと思います(fanuc)

O1
G91G28G00Z0
G28X0Y0
M03S500
G01X819Y-509F4000(最大ストロークX820Y-510)
G28G01X0Y0
この作業(最後の2行)を繰り返したいのですがどういったマクロになるのでしょうか?

回答 (3件中 1~3件目)

2008/10/24 07:33
回答No.3

下記で10往復します。
----------
O1
G91G28Z0
G28X0Y0
M03S500
#1=0
WHILE[#1LT10]DO1
G01X819.Y-509.F4000
X-819.Y509.
#1=#1+1
END1
M05
M30
----------

回答(1)さんと同じになりますが、
Xの±について確認して下さい。

回答(2)さんへ、

>追記
>2008-10-24 13:01:47

ご教示ありがとうございます。
勉強になりました。

お礼

2008/10/24 07:53

大変わかりやすかったです。ちなみに原点はマイナスです。ありがとうございました!

質問者

このQ&Aは役に立ちましたか?

この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。

質問する
2008/10/24 07:16
回答No.2

マクロを使わなくてもループできます
O1
G40G0
G91G28Z0
G28X0Y0
M3S500
N1G1X819.Y-509.F4000.(X,Yは小数点を入れないと最小設定単位での指令になる. Fには小数点はとくに必要ないが...)
X-819.Y509.(G28は常に早送り)
/M99P1(オプショナルブロックスキップスイッチがOFFでN1に戻る)
M30

どうしてもマクロが使いたければ、
“M99P1”を“GOTO1”に変えます.
M99よりもGOTOの方がサーチは早いのですが.

繰り返し回数を決め打ちするなら、WHILEループを使います.
#1=__(回数を指定)
WHILE[#1GT0]DO1
(中略)
#1=#1-1
END1

変数を0で初期化し、回数をインクリメントでカウントするよりは、
予め回数の値で変数を初期化しデクリメントした方が
回数変更時にプログラム修正が楽だと思います.
そうすればまた、何かしらの条件でループを強制終了させるにも、
ループの最後で変数に0を入れるだけで済みますし.
例えば、オプショナルブロックスキップスイッチOFFでも
ループを終了させたい場合、END1の直前で
/#1=0
とする事ができます.
この他、回数だけでなく時刻も終了条件に加える様な応用もできます.

お礼

2008/10/24 07:53

大変わかりやすかったです。ちなみに原点はマイナスです。ありがとうございました!

質問者
2008/10/24 01:41
回答No.1

マクロなど必要ないのでは?

O1
G40G80(一応、キャンセルを入れておく)
G91G28Z0(G00不要)
G49(一応、キャンセルを入れておく)
G28X0Y0
M03S500
G01X-819.0Y-509.0F4000(小数点が必要)
M99(O1に戻って繰り返す)

でいかがでしょうか。
O1 を実行すれば、ご希望通りに動きます。
Xがプラスかマイナスか、機械によります。
普通は、原点がプラス側ではないかと思います。

お礼

2008/10/24 07:54

大変わかりやすかったです。ちなみに原点はマイナスです。ありがとうございました!

質問者

お礼をおくりました

さらに、この回答をベストアンサーに選びますか?

ベストアンサーを選ぶと質問が締切られます。
なおベストアンサーを選びなおすことはできません。