運用編

出力制御ファイル

「NCマクロ部」

さまざまなメーカ、機種に柔軟に対応するために、マクロを活用できます。
マクロでは任意の文字列はもちろん、IF文、算術式あるいは豊富な予約語を使用して思い通りのNCデータが作成できます。

マクロ内では原則として1行がNCデータの1ブロックに相当します。
また、1行の中に記述した複数のNCコードは記述された順に出力されます。
よって「NCコード部」で設定した"1ブロック内での出力順"は無視されます。

ただし、予約語"OUTPUTORDER"に1を設定することで「NCコード部」で設定した"1ブロック内での出力順"を有効にすることができます。

1行の中の両端にある空白はNCデータ作成時に自動的に削除されます。
意図的に空白を入 れたい場合は";" を記述することで1文字の空白に変換されます。
" ;G92 X0Y0 " は " G92 X0Y0"と出力されます。

マクロの種類
マクロ内での記述仕様
予約語一覧
加工条件テーブルについて

 

マクロの種類

マクロは機能別にいくつかのパートに分かれており、各パート毎にNCデータに変換するための記述を行います。
各パートは必要に応じて1回あるいは複数回、システムから自動的に呼出されます。

以下に各パートについての概要と一般的な記述内容を説明します。

1.先頭
2.形状加工開始情報
3.加工開始情報
4.アプローチ
5.第1アプローチ分割処理
6.第2アプローチ分割処理
7.リトラクト処理
8.形状間移動処理
9.停止点処理
10.形状内移動処理
11.加工条件1の加工条件テーブル構築(加工条件部)
12.加工条件1の加工条件テーブル構築(アドレス部)
13.加工条件2の加工条件テーブル構築(加工条件部)
14.加工条件2の加工条件テーブル構築(アドレス部)
15.加工条件3の加工条件テーブル構築(加工条件部)
16.加工条件3の加工条件テーブル構築(アドレス部)
17.加工条件4の加工条件テーブル構築(加工条件部)
18.加工条件4の加工条件テーブル構築(アドレス部)
19.テーパ属性の加工条件テーブル構築(加工条件部)
20.テーパ属性の加工条件テーブル構築(アドレス部)
21.終了
22.サブプログラム出力パターン1
23.サブプログラム出力パターン2
24.サブプログラム出力パターン3
25.リトラクト完了
26.サブプログラム開始位置
27.サブプログラム終了位置
28.メインプログラム終了位置

1.先頭

キーワード"[MacroStart]"で始まります。
このマクロははじめに1回だけ呼出されます。
ここではプログラム番号の出力や各種初期設定などを行います。

2.形状加工開始情報

キーワード"[MacroWireShapeStart]"で始まります。
形状の加工を開始する前に呼び出されます。
加工開始情報[MacroWireCuttingStart]の前に呼び出されますが、アプローチの前に形状間移動がある場合は、形状間移動が始まる前に呼び出されます。
形状間移動の前に出力するコメントなどを記述します。

3.加工開始情報

キーワード"[MacroWireCuttingStart]"で始まります。
このマクロはアプローチ動作に入る前に呼出されます。
ここでは回転方向の情報を参照してテーパ角度の正負を判断したり、ワイヤ結線コードの出力処理などを行います。

4.アプローチ

キーワード"[MacroWireApproach]"で始まります。
このマクロは加工形状にアプローチするときに呼出されます。
ここではアプローチするときの移動や補正、加工条件などの出力内容を記述します。

5.第1アプローチ分割処理

キーワード "[MacroWireApproachDiv1]"で始まります。
このマクロは「形状登録ダイアログ」−「アプローチ分割」の[する]チェックボックスにチェックマークを付けて、「距離1」を設定した場合に呼出されます。
ここでは助走路1における移動や補正、加工条件などの出力内容を記述します。

6.第2アプローチ分割処理

キーワード "[MacroWireApproachDiv2]"で始まります。
このマクロは「形状登録ダイアログ」−「アプローチ分割」の[する]チェックボックスにチェックマークを付けて、「距離2」を設定した場合に呼出されます。
ここでは助走路2における移動や補正、加工条件などの出力内容を記述します。

7.リトラクト処理

キーワード "[MacroWireRetract]"で始まります。
このマクロは形状からリトラクトするときに呼出されます。
ここではリトラクトにおける移動や補正などの出力内容を記述します。

8.形状間移動処理

キーワード "[MacroWireTransfer]"で始まります。
このマクロはある形状から次の形状へ移動するときに呼出されます。
ここでは形状間の移動に関する出力内容を記述します。

9.停止点処理

キーワード "[MacroWireStopPoint]"で始まります。
このマクロは停止点の位置で呼び出されます。
ここでは停止点における出力内容を記述します。

10.形状内移動処理

キーワード"[MacroWireMovement]"で始まります。
このマクロは加工形状内の各要素を移動するたびに呼出されます。
ここでは形状内移動における出力内容を記述します。

11.加工条件1の加工条件テーブル構築(加工条件部)

キーワード"[MacroCond1Tbl1]"で始まります。
このマクロは加工条件テーブルを作成するときに呼出されます。
ここでは加工条件テーブルの「加工条件部」を記述します。

詳しい内容は後の「加工条件テーブルについて」を参照してください。

12.加工条件1の加工条件テーブル構築(アドレス部)

キーワード"[MacroCond1Tbl2]"で始まります。
このマクロは加工条件テーブルを作成するときに呼出されます。
ここでは加工条件テーブルの「アドレス部」を記述します。

詳しい内容は後の「加工条件テーブルについて」を参照してください。

13.加工条件2の加工条件テーブル構築(加工条件部)

キーワード"[MacroCond2Tbl1]"で始まります。
以下同上。

14.加工条件2の加工条件テーブル構築(アドレス部)

キーワード"[MacroCond2Tbl2]"で始まります。
以下同上。

15.加工条件3の加工条件テーブル構築(加工条件部)

キーワード"[MacroCond3Tbl1]"で始まります。
以下同上。

16.加工条件3の加工条件テーブル構築(アドレス部)

キーワード"[MacroCond3Tbl2]"で始まります。
以下同上。

17.加工条件4の加工条件テーブル構築(加工条件部)

キーワード"[MacroCond4Tbl1]"で始まります。
以下同上。

18.加工条件4の加工条件テーブル構築(アドレス部)

キーワード"[MacroCond4Tbl2]"で始まります。
以下同上。

19.テーパ属性の加工条件テーブル構築(加工条件部)

キーワード"[MacroTaperTbl1]"で始まります。
以下同上。

20.テーパ属性の加工条件テーブル構築(アドレス部)

キーワード"[MacroTaperTbl2]"で始まります。
以下同上。

21.終了

キーワード"[MacroEnd]"で始まります。
このマクロは最後に1回だけ呼出されます。
ここではNCデータの最後に出力する内容を記述します。

22.サブプログラム出力パターン1

キーワード"[MacroWireSubPattern1]"で始まります。
荒取り用のサブプログラムを出力するためのサブプロ呼び出し方法を指定します。
荒取りの場合、アプローチ処理をメインプログラム側で行うため、ここでは形状加工用の加工条件と呼び出しコードを記述します。

例)
[MacroWireSubPattern1]
<P=WSUBCALLNO>
$WCOND2$ M98 $P$

23.サブプログラム出力パターン2

キーワード"[MacroWireSubPattern2]"で始まります。
仕上げ用のサブプログラムを出力するためのサブプロ呼び出し方法を記述します。
仕上げの場合、アプローチ処理と形状加工処理をサブプログラム側で行います。
ここでは、アプローチに必要な径補正に関する情報、加工条件と呼び出しコードを指定します。

例)
[MacroWireSubPattern2]
<A=DABS(ANG)>
<P=WSUBCALLNO>
IF(WFIRSTTAPERFLAG==0)
$WCOMPMODE$ $WCOND1$ $WCOND2$ M98 $P$
ELSE
IF(ANG<=0)
$WCOMPMODE$ $WCOND1$ $WCOND2$ !-G51! $A$ M98 $P$
ELSE
$WCOMPMODE$ $WCOND1$ $WCOND2$ !-G52! $A$ M98 $P$
ENDIF
ENDIF

24.サブプログラム出力パターン3

キーワード"[MacroWireSubPattern3]"で始まります。
コアレスの1周回加工で径補正モードを指定した時のサブプロ呼び出し方法を記述します。
原則的にパターン1と同じ動作を指定します。

例)
[MacroWireSubPattern3]
<P=WSUBCALLNO>
$WCOND2$ M98 $P$

25.リトラクト完了

キーワード"[MacroWireRetractComplete]"で始まります。
リトラクト終了時に特別なコードを出力する場合、そのコードを記述します。

例)
#形状加工終了時にポンプをOFFにする。
[MacroWireRetractComplete]
!-T85!

26.サブプログラム開始位置

キーワード"[MacroSubStart]"で始まります。
ここではシステムが自動作成したプログラム番号を使用してサブプログラムの先頭に出力するプログラム番号を記述します。

例)
[MacroSubStart]
<P2=WSUBCALLNO>
N$P2$

27.サブプログラム終了位置

キーワード"[MacroSubEnd]"で始まります。
ここではサブプログラムの最後に出力するメインプログラムへの復帰コードを記述します。

例)
[MacroSubEnd]
M99

28.メインプログラム終了位置

キーワード"[MacroMainEnd]"で始まります。
ここではメインプログラムの最後に出力する内容を記述します。

例)
#サブプログラム出力モードの時のみ内容を出力します。
[MacroMainEnd]
IF(WNCOUTPUTTYPE==2)
!-T90!
G54G00X0Y0
M02
ENDIF

補足説明

サブプログラム番号は次の規則で作成されます。


・予約語"WSUBCALLNO"を参照した場合

1000番台・・・加工種
    下記の加工種の番号が設定されます。
    1:パンチ(荒)、2:パンチ(切)
    3:ダイ(荒)、4:ダイ・コアレス1周回、5:ダイ(切)、6:ダイ(仕)
    7:開(荒)、8:開(切)、9:開(仕)
10番台・・・形状番号
    99まで表現可能です。加工形状が100個以上の場合は全体の桁を上げます。
1番台・・・セカンドカット

    1,2,1,2....または2,3,2,3...と交互に出力します。


・予約語"WSUBCALLNOADR"を参照した場合

1からの追い番で番号が設定されます。