複雑な輪郭式

基本事項

複雑な輪郭式を用いると、複雑な輪郭を部分輪郭 (ポケットまたはアイランド) から構成することができます。個々の部分輪郭 (形状データ) を個別の NC プログラムまたはサブプログラムとして入力します。それによって、すべての部分輪郭を任意に再利用することができます。輪郭式を用いて互いに結びつけた複数の部分輪郭を選択すると、コントローラが輪郭全体を計算します。

パターン:SL サイクルと複雑な輪郭式を使用した処理

0 BEGIN CONT MM

...

5 SEL CONTOUR "MODEL"

6 CYCL DEF 20 CONTOUR DATA

...

8 CYCL DEF 21 ROUGHING

...

9 CYCL CALL

...

13 CYCL DEF 23 FLOOR FINISHING

...

14 CYCL CALL

...

16 CYCL DEF 24 SIDE FINISHING

...

17 CYCL CALL

...

50 L Z+250 R0 FMAX M2

51 END PGM CONT MM

 
Tip

プログラミング上の注意:

  • SL サイクル (すべての輪郭記述プログラム) あたりのメモリは、最大 100 個の輪郭に制限されています。使用できる輪郭要素の数は、輪郭の種類 (内側輪郭または外側輪郭) と輪郭記述の数によって異なり、最大で 16384 個の輪郭要素になります。
  • 輪郭式を伴う SL サイクルは、構造化されたプログラム構成を前提とし、反復する輪郭を個別の NC プログラムに保存することが可能です。輪郭式を用いて部分輪郭を 1 つの輪郭全体に関連づけ、ポケットとアイランドのどちらであるかを指定します。

部分輪郭の特徴

  • コントローラは、すべての輪郭をポケットとして認識します。半径補正はプログラミングしないでください
  • コントローラは送り速度 F と追加機能 M を無視します
  • 座標変換は可能です。座標変換が部分輪郭内でプログラミングされると、それ以降に呼び出される NC プログラムにおいても有効ですが、サイクル呼出し後にリセットする必要はありません
  • 呼び出される NC プログラムはスピンドル軸上の座標を含むこともできますが、その座標は無視されます
  • 呼び出される NC プログラムの最初の座標ブロックで加工面を指定します
  • 必要に応じて、様々な深さで部分輪郭を定義できます

サイクルの特徴

  • それぞれのサイクルの前に、コントローラは自動的にセットアップ許容値の位置に位置決めします
  • それぞれの深さレベルは、工具を持ち上げることなしにフライス加工され、アイランドではわきを迂回します
  • 「内側コーナー」の半径はプログラミング可能です。工具は停止したままではなく、切り離しマークは阻止されます (ブローチ加工と側面仕上加工の場合は、最も外側の経路に対して適用されます)
  • 側面仕上加工の場合、コントローラは接線方向の円経路で輪郭に接近します
  • 床面仕上加工の場合、コントローラは同じく接線方向の円経路で工具をワークピースに接近させます (例えばスピンドル軸 Z:平面 Z/X における円経路)
  • コントローラは、一貫して順方向または逆方向に輪郭を加工します

フライス加工深さ、許容値、セットアップ許容値などの加工用の寸法データは、サイクル 20 CONTOUR DATA または 271 OCM CONTOUR DATA の中央で入力します。

パターン:輪郭式による部分輪郭の計算

0 BEGIN MODEL MM

1 DECLARE CONTOUR QC1 = "120"

2 DECLARE CONTOUR QC2 = "121" DEPTH15

3 DECLARE CONTOUR QC3 = "122" DEPTH10

4 DECLARE CONTOUR QC4 = "123" DEPTH5

5 QC10 = ( QC1 | QC3 | QC4 ) \ QC2

6 END PGM MODEL MM

0 BEGIN PGM 120 MM

1 CC X+75 Y+50

2 LP PR+45 PA+0

3 CP IPA+360 DR+

4 END PGM 120 MM

0 BEGIN PGM 121 MM

...

輪郭が定義された NC プログラムの選択

SEL CONTOUR 機能を用いて、輪郭定義 (そこからコントローラは輪郭記述を読み取る) 付きの NC プログラムを選択します。

次の手順に従ってください。

  1. NC機能を挿入」を選択します
  2. NC機能を挿入」ウィンドウが開きます。

  1. SEL CONTOUR を選択します
  2. 輪郭式の入力が開始します。
  3. 輪郭の定義

輪郭の入力には次の方法があります。

選択内容

機能

ファイル

  • 入力
  • ファイルの選択

輪郭の名前を定義するか、「ファイル選択」を選択します

QS

QS パラメータの番号を定義します

LBL

  • 番号
  • 名前
  • パラメータ

ラベルの番号、名前、変数を定義します

 
Tip

プログラミング上の注意:

  • 呼び出すファイルが呼出し元のファイルと同じディレクトリにある場合は、パスなしでファイル名のみを入れることができます。
  • SEL CONTOUR ブロックは、SL サイクルの前にプログラミングします。SEL CONTUR を使用する場合、サイクル 14 CONTOUR GEOMETRY は必要なくなりました。

輪郭記述を定義します

DECLARE CONTOUR 機能を用いて、NC プログラムに、コントローラが輪郭記述を読み取る NC プログラムのパスを入力します。さらに、その輪郭記述には個別の深さを選択することができます。

次の手順に従ってください。

  1. NC機能を挿入」を選択します
  2. NC機能を挿入」ウィンドウが開きます。

  1. DECLARE CONTOUR を選択します
  2. 輪郭式の入力が開始します。
  3. 輪郭名称 QC の番号を入力します
  4. 輪郭記述を定義します

輪郭の入力には次の方法があります。

選択内容

機能

ファイル

  • 入力
  • ファイルの選択

輪郭の名前を定義するか、「ファイル選択」を選択します

QS

QS パラメータの番号を定義します

 
Tip

プログラミング上の注意:

  • 入力した輪郭名称 QC を用いると、輪郭式において様々な輪郭の相互計算が可能になります。
  • 呼び出すファイルが呼出し元のファイルと同じディレクトリにある場合は、パスなしでファイル名のみを入れることができます。
  • 個別の深さをもつ輪郭を使用するときは、すべての部分輪郭に 1 つの深さを割り当てる必要があります (場合によっては深さ 0 を割り当てます)。
  • 異なる深さ (DEPTH) は、オーバーラップする要素の場合のみ計算に入ります。それは、ポケット内の純粋なアイランドには当てはまりません。そのためには、単純な輪郭式を使用してください。
  • 簡単な輪郭式

複雑な輪郭式の入力

輪郭式機能により、各種の輪郭を数式上で互いに結びつけることができます。

  1. NC機能を挿入」を選択します
  2. NC機能を挿入」ウィンドウが開きます。

  1. 輪郭式 QC」を選択します
  2. 輪郭式の入力が開始します。
  3. 輪郭名称 QC の番号を入力します
  4. 輪郭式の入力

補助図

入力

リンク機能

&

交叉

QC10 = QC1 & QC2

|

結合

QC10 = QC1 | QC2

^

結合、ただし交叉なし

QC10 = QC1 ^ QC2

\

なし

QC10 = QC1 \ QC2

(

括弧を開く

QC10 = QC1 & (QC2 | QC3)

)

括弧を閉じる

QC10 = QC1 & (QC2 | QC3)

個々の輪郭を定義する

QC10 = QC1

コントローラには以下の式の入力方法があります。

重ね合わせた輪郭

コントローラはプログラミングされた輪郭をポケットとして認識します。輪郭式の機能を使うと、輪郭をアイランドに変換することが可能です。

ポケットとアイランドは、1 つの新しい輪郭に重ね合わせることができます。 それによって、ポケット面を別のポケットを重ね合わせることによって拡大するか、あるいはアイランドによって縮小することができます。

サブプログラム:重ね合わせたポケット

 
Tip

以下の例は、輪郭定義プログラムで定義されている輪郭記述プログラムです。また、輪郭定義プログラムは SEL CONTOUR 機能によって本来のメインプログラムで呼び出すことができます。

ポケット A と B が重なり合っています。

コントローラは交点 S1 と S2 を計算します。これらの交点はプログラミングする必要はありません。

ポケットは完全円としてプログラミングされています。

輪郭記述プログラム 1:ポケット A

ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。

以下に応じて調整を行います。

  • 工具
  • 切断値
  • 送り速度
  • 安全な高さまたは安全な位置
  • 機械特有の位置 (例:M91)
  • プログラム呼出しのパス

一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。

さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。

 
Tip

プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。

0 BEGIN PGM POCKET MM

1 L X+10 Y+50 R0

2 CC X+35 Y+50

3 C X+10 Y+50 DR-

4 END PGM POCKET MM

輪郭記述プログラム 2:ポケット B

ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。

以下に応じて調整を行います。

  • 工具
  • 切断値
  • 送り速度
  • 安全な高さまたは安全な位置
  • 機械特有の位置 (例:M91)
  • プログラム呼出しのパス

一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。

さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。

 
Tip

プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。

0 BEGIN PGM POCKET2 MM

1 L X+90 Y+50 R0

2 CC X+65 Y+50

3 C X+90 Y+50 DR-

4 END PGM POCKET2 MM

「合併」面

部分面 A と B は、オーバーラップした面も含めて加工されます:

  • A 面および B 面は、別個の NC プログラムに半径補正なしでプログラミングしておく必要があります
  • 輪郭式で A 面と B 面が機能「結合」を使用して計算されます

輪郭定義プログラム:

ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。

以下に応じて調整を行います。

  • 工具
  • 切断値
  • 送り速度
  • 安全な高さまたは安全な位置
  • 機械特有の位置 (例:M91)
  • プログラム呼出しのパス

一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。

さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。

 
Tip

プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。

* - ...

21 DECLARE CONTOUR QC1 = "POCKET.H"

22 DECLARE CONTOUR QC2 = "POCKET2.H"

23 QC10 = QC1 | QC2

* - ...

「除外」面

A 面は、B 面とオーバーラップした部分を除外して加工されます:

  • A 面および B 面は、別個の NC プログラムに半径補正なしでプログラミングしておく必要があります
  • 輪郭式において、B 面は機能「」によって A 面から差し引かれます

輪郭定義プログラム:

ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。

以下に応じて調整を行います。

  • 工具
  • 切断値
  • 送り速度
  • 安全な高さまたは安全な位置
  • 機械特有の位置 (例:M91)
  • プログラム呼出しのパス

一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。

さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。

 
Tip

プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。

* - ...

21 DECLARE CONTOUR QC1 = "POCKET.H"

22 DECLARE CONTOUR QC2 = "POCKET2.H"

23 QC10 = QC1 \ QC2

* - ...

「交叉」面

A 面と B 面がオーバーラップした面が加工されます。 (オーバーラップしていない面は加工されないままです。)

  • A 面および B 面は、別個の NC プログラムに半径補正なしでプログラミングしておく必要があります
  • 輪郭式で A 面と B 面は機能「交叉」を使用して計算されます

輪郭定義プログラム:

ユーザーマニュアルに含まれている NC プログラムは、あくまで解決のヒントです。機械で NC プログラムまたは個々の NC ブロックを使用する前には、必ずそれらを調整してください。

以下に応じて調整を行います。

  • 工具
  • 切断値
  • 送り速度
  • 安全な高さまたは安全な位置
  • 機械特有の位置 (例:M91)
  • プログラム呼出しのパス

一部の NC プログラムは機械キネマティクスに依存しています。このような NC プログラムは、最初のテストランの前にその機械キネマティクスに合わせてプログラムを調整してください。

さらに、実際のプログラムランの前にシミュレーションで NC プログラムをテストしてください。

 
Tip

プログラムをテストすることで、ソフトウェアオプションや有効な機械キネマティクス、現在の機械構成で、その NC プログラムが使用可能かどうかを確認できます。

* - ...

21 DECLARE CONTOUR QC1 = "POCKET.H"

22 DECLARE CONTOUR QC2 = "POCKET2.H"

23 QC10 = QC1 & QC2

* - ...

SL または OCM サイクルによる輪郭の処理