用KinematicsDesign编辑CFG文件
应用
KinematicsDesign允许在数控系统中编辑CFG文件。在此过程中,KinematicsDesign图形显示夹具,因此可进行故障排除和消除错误。可将多个夹具结合在一起,使动态碰撞监测(DCM)功能可考虑复杂夹紧情况。
功能说明
在数控系统中准备CFG文件时,数控系统用KinematicsDesign自动打开文件。
KinematicsDesign提供以下功能:
- 带图形支持功能的夹具编辑
- 如果输入不正确提供反馈
- 提供变换功能
- 新几何元素的添加
- 3D模型(M3D或STL文件)
- 圆柱体
- 棱镜
- 立方体
- 无顶圆锥
- 孔
可将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", | 夹具部件的定义 Tip 可用绝对路径输入所定义的夹具部件(例如,TNC:\nc_prog\1.STL) |
CfgKinSimpleTrans(key:="XShiftFixture", | X轴平移 对于运动特性链上的全部几何元素,插入的变换都有效,例如平移或旋转。 |
CfgKinSimpleTrans(key:="CRot0", | C轴旋转 |
CfgCMO ( key:="fixture", | 描述夹具中的全部变换。参数有效:= TRUE激活夹具的碰撞监测。 CfgCMO含碰撞对象和变换。根据不同变换的排列,组合夹具。这里,XShiftFixture变化是平移变换的旋转中心CRot0。 |
CfgKinFixModel(key:="Fix_Model", | 夹具标识 CfgKinFixModel含一个或多个CfgCMO元素。 |
几何形状
可将简单几何对象添加到碰撞对象中,可直接在CFG文件中添加或用KinematicsDesign添加。
插入的全部几何形状都是高一级CfgCMO的子元素,在高一级中提供primitives的元素列表。
几何对象包括:
功能 | 描述 |
---|---|
CfgCMOCuboid ( key:="FIXTURE_Cub", vertex:= [ 0, 0, 0 ], edgeLengths:= [0, 0, 0], | 立方体的定义 |
CfgCMOCylinder ( key:="FIXTURE_Cyl", | 圆柱体的定义 |
CfgCMOPrism ( key:="FIXTURE_Pris_002", height:=0, polygonX:=[], polygonY:=[], name:="", origin:= [ 0, 0, 0 ] ) | 棱柱形的定义 输入高度和多条折线描述棱柱形。 |
创建含碰撞对象的夹具项
以下内容介绍打开KinematicsDesign情况下的操作步骤。
创建含碰撞对象的夹具项: | ||
| ||
| ||
|
定义几何形状
KinematicsDesign可定义不同的几何形状。组合多个几何形状可创建简单的夹具。
定义几何形状:
| ||
| ||
|
插入3D模型
整合的3D模型必须满足数控系统要求。
整合3D模型为夹具:
- 创建含碰撞对象的夹具项
| ||
|
夹具位置
插入的夹具可位于任何位置(例如,修正外部3D模型的方向)。为此,插入全部所需轴的变换。
用KinematicsDesign定位夹具:
| ||
| ||
|
注意
除使用KinematicsDesign之外,也能直接从CAM系统创建夹具文件,或在文本编辑器中直接输入相应代码创建。
举例
下例介绍用CFG文件的语法描述含两个可动夹爪的虎钳。
使用的文件
用不同的STL文件描述虎钳。虎钳的夹爪尺寸相同,因此,可用同一个STL文件定义。
代码 | 说明 |
---|---|
CfgCMOMesh3D | 虎钳的本体 |
CfgCMOMesh3D | 虎钳的第一个夹爪 |
CfgCMOMesh3D | 虎钳的第二个夹爪 |
夹爪开口宽度的定义
在该例中,虎钳夹爪的开口宽度由两个相互关联的变换定义。
代码 | 说明 |
---|---|
CfgKinSimpleTrans | 虎钳夹爪开口在Y轴方向上的宽度:60 mm |
CfgKinSimpleTrans | 虎钳第一夹爪在Y轴方向上的位置:30 mm |
夹具在加工区内的位置
用不同的变换定位所定义的夹具部件。
代码 | 说明 |
---|---|
CfgKinSimpleTrans (key:="TRANS_X", dir:=X, | 夹具部件的位置 在本例中,为旋转虎钳所定义的夹爪,插入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", | 合并后夹具的标识名 |