このQ&Aは役に立ちましたか?
ファナックマクロ#5001~5008、#5041~#5048の違いについて
2009/04/12 20:52
- ファナックマクロ#5001~#5008と#5041~#5048の違いについて教えてください。
- #5003と#5043の違いについて教えてください。
- ファナックマクロの使用方法に関する質問です。
ファナックマクロ#5001~5008、#5041…
ファナックマクロ#5001~5008、#5041~#5048の違いについて
初歩的な質問で申し訳ないのですが#5001~#5008と#5041~#5048の違いって何かわかりますか?例えば
#1=#4001
#3=#4003
#4=#4109
#5=#5003←この部分
G00G90Z#18
G01Z#26F#9
IF[#4010EQ98]GOTO1
G00Z#18
GOTO2
N1G00Z#5
N2G#1G#3F#4
M99
上記の#5003は#5043でもいいのではないかと思うのですが明確な違いが分かりません。それとも僕が勘違いしているのでしょうか?どなたか
ご教授おねがいします!
回答 (1件中 1~1件目)
#500xは“ブロック終点位置”、
#504xは“現在位置”です.
ブロック終点位置は、NCの移動指令に指定された終点であり、
実行中のNC指令ブロックがどの位置で完了するかというものですから、
残移動量があってもなくても一定です.
従って、移動の最中でも確実に同じ値を読み取れます.
現在位置というのはNCがその時点で把握している工具位置で、
NCの画面に表示されるのとほぼ同じ数字になります.
しかし、マクロ文は先行実施される上に読み取りのタイムラグ等があり、
移動を伴うブロックの後では、実行される度に数値が変わる事があります.
先読み停止を伴う指令の後でなければ、
確実性のある値を読み取れないのです.
しかも、ブロック終点位置は工具補正量を含まず、
対象ブロックで指令されたそのままの値ですが、
現在位置は工具補正量が加味された値である点も異なります.
例えば、Z10.が指令された後の#5003は必ず10.0を返しますが、
Z10.の位置で静止している状態の#5043は、10.0を返すとは限らず
仮に-0.1mm工具長補正されていれば、9.9になります.
このQ&Aは役に立ちましたか?
この質問は投稿から一年以上経過しています。
解決しない場合、新しい質問の投稿をおすすめします。
お礼
2009/04/13 21:21
なるほど!では#500Xを使用すれば確実というわけですね!
回答ありがとうございました!