複雜的輪廓公式

基本原則

您可使用複雜輪廓公式結合許多子輪廓(口袋或島嶼),來編寫複雜輪廓。您可在個別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循環程式 (全部的輪廓描述程式) 時的記憶體容量,限於128個輪廓。可能的輪廓元件的數量取決於輪廓的類型(內部或外部輪廓),以及輪廓描述的數量。您可最多程式編輯16384 個輪廓元件。
  • 若要使用具備輪廓公式的SL循環程式,必須小心建構您的程式。這些循環程式可讓您將經常使用的輪廓儲存在個別NC程式內。您可以使用輪廓公式,將子輪廓連接到完整的輪廓,並指定是適用於口袋形或島嶼狀。
  • 子輪廓的特性
  • 控制器假設每一輪廓都是口袋形,如此,不要編寫刀徑補償。
  • 控制器忽略進給速率F與雜項功能M。
  • 座標轉換允許—如果是在子輪廓內編寫,則在後續呼叫的NC程式內也有效,但是在循環程式呼叫之後不需要重設。
  • 雖然所呼叫的NC程式能包含主軸內的座標,但是這種座標會遭忽略。
  • 工作平面是在NC程式的第一個座標單節內加以定義。
  • 根據需求,可用不同深度來定義子輪廓。
  • 循環程式屬性
  • 循環程式開始前,控制器自動將刀具定位到設定淨空處。
  • 因為銑刀是繞著而非跨越島部來銑削,所以每一層螺旋進給深度的銑削不被中斷
  • 可程式編輯內側轉角的半徑,刀具將不停止,避免停留標記(這適用於粗銑或側面精銑操作的最外路徑)
  • 側邊精銑時,刀具以圓弧切線接近輪廓
  • 底面精銑時,刀具再一次以圓弧切線接近工件(例如當主軸是Z軸時,圓弧會落在Z/X平面)
  • 整個輪廓會以順銑或逆銑徹底加工

像是銑削深度、預留量以及淨空高度這些加工尺寸可集中在循環程式20 CONTOUR DATA271 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

定義字串參數的編號

 
Tip
  • 編寫注意事項:
  • 如果已呼叫檔案與要呼叫的檔案位於同一目錄中,則也可整合檔名而不包含路徑。
  • 在 SL 循環程式之前程式編輯 SEL CONTOUR 單節。如果您使用SEL CONTOUR,就不再需要循環程式14 CONTOUR GEOMETRY

定義輪廓描述

您可在NC程式內使用 宣告輪廓 功能,在NC程式內輸入程式路徑,而控制器從此獲得輪廓的描述。此外,您可選擇此輪廓描述的獨立深度。

進行方式如下:

  1. 選擇插入NC函數
  2. 控制器開啟插入NC函數視窗。

  1. 選擇DECLARE CONTOUR
  2. 控制器即開啟輸入輪廓公式的對話。
  3. 輸入輪廓指令碼QC
  4. 定義輪廓描述

您可用下列方式輸入輪廓:

可能的設定值

功能

檔案

  • 輸入
  • 檔案選擇

定義輪廓名稱或選擇「檔案選擇」

QS

定義字串參數的編號

 
Tip
  • 編寫注意事項:
  • 藉著輸入的輪廓指定QC,您可以包括輪廓公式內的多種輪廓。
  • 如果已呼叫檔案與要呼叫的檔案位於同一目錄中,則也可整合檔名而不包含路徑。
  • 如果您對於輪廓程式編輯獨立的深度,則您必須指定到所有的子輪廓之一深度(如果需要的話指定深度為0)。
  • 若元件重疊,控制器只考量不同深度(DEPTH)。在口袋內純島嶼的情況下則否。為此,使用簡單輪廓公式。
  • 簡單輪廓公式

輸入複雜輪廓公式

您可使用輪廓公式函數來連結數學公式內的多種輪廓。

  1. 選擇插入NC函數
  2. 控制器開啟插入NC函數視窗。

  1. 選擇輪廓公式 QC
  2. 控制器即開啟輸入輪廓公式的對話。
  3. 輸入輪廓指令碼QC
  4. 輸入輪廓公式

說明圖

輸入

數學功能

範例

&

交叉

QC10 = QC1 & QC5

|

結合

QC25 = QC7 | QC18

^

已結合,但是無交叉

QC12 = QC5 ^ QC25

\

不含

QC25 = QC1 \ QC2

(

開括號

QC12 = QC1 & (QC2 | QC3)

)

閉括號

QC12 = QC1 & (QC2 | QC3)

定義單一輪廓

QC12 = QC1

重疊輪廓

控制器預設程式編輯的輪廓是口袋形,您可以使用輪廓公式功能,將口袋形輪廓轉換為島嶼狀輪廓。

口袋形與島嶼狀可以重疊來形成新輪廓。 如此可以用另一個口袋來擴大口袋的範圍,或以島嶼來縮小口袋的範圍。

子程式:重疊的口袋

 
Tip

以下的範例是輪廓描述程式,這個程式是在輪廓定義程式當中加以定義。輪廓定義程式是透過實際主程式內的 SEL CONTOUR 功能來呼叫。

口袋 A 與 B 重疊。

控制器會計算交叉點 S1 與 S2 (交叉點不需要程式編輯)。

口袋形是以完整圓來程式編輯的。

輪廓描述程式1:口袋A

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

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是以「結合」功能來處理。

輪廓定義程式::

* - ...

21 DECLARE CONTOUR QC1 = "POCKET.H"

22 DECLARE CONTOUR QC2 = "POCKET2.H"

23 QC10 = QC1 | QC2

* - ...

不包括的範圍

區域A要加工,但是不包括由B重疊的部分:

  • 表面A與B必須在個別NC程式當中程式編輯,沒有半徑補償。
  • 在輪廓公式中,使用不含功能將區域A減去區域B。

輪廓定義程式::

* - ...

21 DECLARE CONTOUR QC1 = "POCKET.H"

22 DECLARE CONTOUR QC2 = "POCKET2.H"

23 QC10 = QC1 \ QC2

* - ...

交叉的範圍

只需要加工 A 與 B 相重疊的區域。 (只由 A 或 B 覆蓋的區域不需要加工。)

  • 表面A與B必須在個別NC程式當中程式編輯,沒有半徑補償。
  • 在輪廓公式內,使用「交會」功能來處理區域A與B。

輪廓定義程式::

* - ...

21 DECLARE CONTOUR QC1 = "POCKET.H"

22 DECLARE CONTOUR QC2 = "POCKET2.H"

23 QC10 = QC1 & QC2

* - ...

使用SL或OCM循環程式加工

 
Tip

已定義的完整輪廓用SL循環程式或OCM循環程式(請參閱 概述)來加工。