Heidenhain iTNC530
■ データムシフト・・ローカル座標系2012.4.30

NCデータ概要の
https://www.kazuban.com/bbs/heidenhain/heidenhain.cgi?mode=main&no=2

13 LBL 1
14 CYCL DEF 7.0 DATUM SHIFT
15 CYCL DEF 7.1 X0
16 CYCL DEF 7.2 Y0
17 CYCL DEF 7.3 Z0
18 PLANE RESET STAY
19 LBL 0

データムシフト・・G52みたいな機能でしょうか?!
現在の座標系をシフトします
この例の場合には、X0,Y0,Z0 なので、座標系をシフトしませんので、この段階ではあまり意味はないコードですが
LBL で囲こんでサブプロ化しているので、下記のように他でシフトさせた場合このルーチンを呼び出し、リセット処理として使用されています

35 CYCL DEF 7.0 DATUM SHIFT
36 CYCL DEF 7.1 X10.107
37 CYCL DEF 7.2 Y130.11
38 CYCL DEF 7.3 Z22.735
39 PLANE SPATIAL SPA-43 SPB0 SPC0 STAY SEQ- TABLE ROT
40 L X+0 Y+0 R0 F MAX
41 L Z+0 R0 F MAX
42 CALL LBL 1


ISO_Gコードの場合、基本的にGコードでの指令が多いですが
ハイデンはこのように、サイクルコードでの指令が多いです
この場合、CYCL_DEF の7番のサイクルとなります
また、添付画像のように、コントローラからサイクルを選択したり
読み込んだNCプログラムの、サイクルの行をアクティブにすると
イラストが表示されます
英語が苦手な私でも、イメージ的にだいたい理解できます

また、これは、通常のNCの位置指令でも同様ですが
「L X*** Y***」 の場合は、カレント座標系からのアブソリュート指示になります
「L IX*** IY***」 とすると、インクレメンタル指令になります

ちなみに「L」は直線移動の意味なので、ISOコードでは、
「G90 G01 X*** Y***」
「G91 G01 X*** Y***」
となりますね
ただし、後で、説明しますがこの例の場合「F MAX」が付いているので
「G00」早送り指令となります

ISOコードのG90、G91のように、モーダル指示にはなりませんが
その行を見たときに、アブソかインクレかが、一目でわかります
また、G52の指示は、ISOではたぶん、アブソ指示のみか?と思っているのですが
(もし、間違っていたら、ご指示お願いします)

CYCL DEF 7.0 DATUM SHIFT
CYCL DEF 7.1 IX10
CYCL DEF 7.2 IY20.5

このように、インクレで指示出来ます


CGI-design