使用KinematicsDesign編輯CFG檔案

應用

KinematicsDesign允許在控制器內編輯CFG檔案。在此過程中,KinematicsDesign以圖形顯示治具,因此支援故障排除與錯誤移除。可連接多個治具,以便在動態碰撞監控(DCM)中考慮複雜的夾持情況。

功能說明

當在控制器內準備CFG檔案時,控制器自動使用KinematicsDesign開啟檔案。

  • KinematicsDesign提供以下功能:
  • 含圖形化支援的治具編輯
  • 在錯誤輸入時回饋
  • 轉換整合
  • 新增新元件
    • 3D模型(M3D或STL檔案)
    • 圓筒
    • Prism
    • 長方體
    • 截斷的圓錐
    • 鑽孔

您可多次將STL檔案和M3D檔案整合成CFG檔案。

CFG檔案語法

以下語法元件運用在許多CFG功能內:

功能

說明

key:= ""

功能的名稱

dir:= ""

轉換方向(例如X)

val:= ""

數值

name:= ""

若發生碰撞時顯示的名稱(選擇性輸入)

filename:= ""

檔案名稱

vertex:= [ ]

立方體的位置

edgeLengths:= [ ]

立方體的尺寸

bottomCenter:= [ ]

圓筒的中心

radius:=[ ]

圓筒的半徑

height:= [ ]

幾何物體的高度

polygonX:= [ ]

X內多邊形的線條

polygonY:= [ ]

Y內多邊形的線條

origin:= [ ] 

多邊形的起點

每一元件都必須具有自己的按鍵按鍵必須明確且唯一,這意味著在治具說明中不能出現多次。根據按鍵,元件彼此參照。

若要使用CFG功能來說明控制器內的治具,則以下功能必須可用:

功能

說明

CfgCMOMesh3D(key:="Fixture_body",
filename:="1.STL",name:="")

治具組件的定義

 
Tip

您也可輸入絕對路徑給定義的治具組件(例如TNC:\nc_prog\1.STL)

CfgKinSimpleTrans(key:="XShiftFixture",
dir:=X,val:=0)

在X軸內位移

已插入的轉換,像是位移或旋轉,對以下座標結構配置鍊內的所有元件有效。

CfgKinSimpleTrans(key:="CRot0",
dir:=C,val:=0)

在C軸內旋轉

CfgCMO ( key:="fixture",
primitives:= ["XShiftFixture","CRot0",
"Fixture_body"],
active :=TRUE, name :="")

說明治具內含的所有轉換。參數啟動:= TRUE啟動治具的碰撞監控。

CfgCMO內含碰撞物體與轉換。治具根據不同轉換的配置來結合。在此,轉換XShiftFixture位移轉換的旋轉中心CRot0

CfgKinFixModel(key:="Fix_Model",
kinObjects:=["fixture"])

治具代號

CfgKinFixModel內含一或多個CfgCMO元件。

幾何形狀

您可直接在CFG檔案內或使用KinematicsDesign,將簡單幾何物體新增至碰撞物體。

所有已整合幾何形狀都為高階CfgCMO的子元件,其列成圖元

以下為可用的幾何形狀:

功能

說明

CfgCMOCuboid ( key:="FIXTURE_Cub", 
vertex:= [ 0, 0, 0 ], 
edgeLengths:= [0, 0, 0], 
name:="" )

立方體的定義

CfgCMOCylinder ( key:="FIXTURE_Cyl", 
dir:=Z, bottomCenter:= [0, 0, 0], radius:=0, height:=0, name:="")

圓筒的定義

CfgCMOPrism ( key:="FIXTURE_Pris_002", 
height:=0,  polygonX:=[],  polygonY:=[], 
name:="",  origin:= [ 0,  0,  0 ] )

稜柱的定義

通過輸入高度與多個多邊形線條來描述稜柱。

建立含碰撞物體的治具輸入

以下內容說明使用KinematicsDesign開啟的程序。

  1. 選擇插入夾盤設備
  2. KinematicsDesign在CFG檔案之內建立新治具輸入。
  3. 輸入治具的按鍵名稱(例如夾鉗)
  4. 確認輸入
  5. KinematicsDesign載入輸入。

  1. 將游標向下移動一層

  1. 選擇插入碰撞物體
  2. 確認輸入
  3. KinematicsDesign建立新碰撞物體。

定義幾何形狀

KinematicsDesign允許您定義許多幾何形狀。您可通過結合許多幾何形狀,來建構簡單治具。

  1. 建立含碰撞物體的治具輸入

  1. 選擇碰撞物體底下的游標按鍵

  1. 選擇所要的幾何形狀(例如立方體)
  2. 定義立方體的位置(例如X = 0Y = 0Z = 0)
  3. 定義立方體的尺寸(例如X = 100Y = 100Z = 100)
  4. 確認輸入
  5. 控制器以圖形顯示定義的立方體。

整合3D模型

整合的3D模型必須滿足控制器的要求。

  1. 建立含碰撞物體的治具輸入

  1. 選擇碰撞物體底下的游標按鍵

  1. 選擇插入3D物體
  2. 控制器開啟Open file視窗。
  3. 選擇所要的STL或M3D檔案
  4. 按下確定
  5. 控制器整合選取的檔案,並在圖形視窗內顯示檔案。

治具放置

可將整合的治具放置在任何位置上(例如用於修正外部3-D模型的方位)。對此,對要使用的所有軸進行插入轉換。

  1. 定義治具

  1. 選擇要定位元件底下的游標按鍵

  1. 選擇插入轉換
  2. 輸入轉換的按鍵名稱(例如Z位移)
  3. 選擇轉換的(例如Z)
  4. 選擇轉換的(例如100)
  5. 確認輸入
  6. KinematicsDesign插入轉換。
  7. KinematicsDesign在圖形中描述該轉換。

備註

作為使用KinematicsDesign的替代方法,您還可直接從CAM系統或在文字編輯器中使用適當代碼,來建立治具檔案。

範例

底下的範例說明用於具有兩可移動鉗的老虎鉗之CFG檔案語法。

使用的檔案

使用許多STL檔案來描述老虎鉗。因為老虎鉗的鉗在尺寸上對稱,因此使用相同的STL檔案來定義。

程式碼

解釋

CfgCMOMesh3D 
(key:="Fixture_body",
filename:="vice_47155.STL",
name:="")

老虎鉗本體

CfgCMOMesh3D 
(key:="vice_jaw_1",
filename:="vice_jaw_47155.STL",
name:="")

老虎鉗的第一鉗

CfgCMOMesh3D 
(key:="vice_jaw_2",
filename:="vice_jaw_47155.STL",
name:="")

老虎鉗的第二鉗

鉗開口寬度的定義

在此範例中,使用兩個相互依賴的轉換來定義老虎鉗的開口寬度。

程式碼

解釋

CfgKinSimpleTrans
(key:="TRANS_opening_width",
dir:=Y, val:=-60)

老虎鉗在Y方向的鉗開口寬度:60 mm

CfgKinSimpleTrans
(key:="TRANS_opening_width_2",
dir:=Y, val:=30)

老虎鉗的第一鉗在Y方向的位置:30 mm

將治具定位在工作空間內

使用多種轉換來定位已定義的治具組件。

程式碼

解釋

CfgKinSimpleTrans (key:="TRANS_X", dir:=X, 
val:=0) CfgKinSimpleTrans (key:="TRANS_Y", dir:=Y,
val:=0) CfgKinSimpleTrans (key:="TRANS_Z", dir:=Z,
val:=0) CfgKinSimpleTrans (key:="TRANS_Z_vice_jaw",
dir:=Z, val:=60) CfgKinSimpleTrans (key:="TRANS_C_180",
dir:=C, val:=180) CfgKinSimpleTrans (key:="TRANS_SPC", dir:=C,
val:=0) CfgKinSimpleTrans (key:="TRANS_SPB", dir:=B,
val:=0) CfgKinSimpleTrans (key:="TRANS_SPA", dir:=A,
val:=0)

治具組件的定位

在此範例中,插入180°旋轉,來旋轉老虎鉗的已定義鉗。這是必須的,因為相同的初始模型運用在老虎鉗的兩個鉗上。

插入的旋轉適用於轉換鏈中隨後的所有組件。

治具說明

您需要在CFG檔案中組合所有物體和轉換,以確保在模擬中正確描繪治具。

程式碼

解釋

CfgCMO (key:="FIXTURE", primitives:= [ 
"TRANS_X", 
"TRANS_Y", 
"TRANS_Z", 
"TRANS_SPC", 
"TRANS_SPB", 
"TRANS_SPA",     
"Fixture_body", 
"TRANS_Z_vice_jaw", 
"TRANS_opening_width_2", 
"vice_jaw_1", 
"TRANS_opening_width", 
"TRANS_C_180", 
"vice_jaw_2" ], active:=TRUE, name:="") 

結合治具內含的轉換和液體

治具代號

您需要指定代號給已組合的治具。

程式碼

解釋

CfgKinFixModel (key:="FIXTURE1",
kinObjects:=["FIXTURE"])

已組合治具的代號