1       免责声明

本使用手册及样例包目录内所包含文档、PLC程序、机床可执行程序(MPF、SPF、…)、电气图,可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。

对于在使用中发生的人员、财产损失本公司不承担任何责任,由使用者自行承担风险。

以上声明内容的最终解释权归西门子(中国)有限公司所有,后续内容更新不做另行通知。


 


测量运动变换(CYCLE996)

2       测量原理

测量运动变换(CYCLE996)通过测量标准球的空间位置,自动计算运动几何转换(TRAORI或TCARR)定义的几何矢量尺寸。

工件测头在每个回转轴的三个位置接触球体以进行测量,回转轴位置可根据机床的几何尺寸确定。

3       测量条件

Ø  3D测头(测头类型710)

Ø  在机床工作台上安装标准球

Ø  3D测头已标定(长度和半径)

Ø  至少一组刀架数据(CYCLE800),其误差不超过±1mm

Ø  标准型机床机构(X,Y,Z互相垂直),明确的旋转轴关系,轴方向符合ISO 841-2001或DIN 66217标准(右手定则)

Ø  Protocol文件(MD11420 $MN_LEN_PROTOCOL_FILE ≥ 100)

                                                      image.png                         image.png  

                                                                        3D测头                                                  标定基准球


4       测量

4.1      测量说明

每个旋转轴选取3个测量位置,进行标定测量。

使用CYCLE800或TRAORI+TOROT指令将测头定位到标准球的测量起始点,使用CYCLE996测量标准球的位置。系统根据每个旋转轴3个测量位置的数据,计算出要求的几何矢量。

 

如在带有回转头的机床上,旋转轴的三个测量位置:

image.png                              image.png                       image.png

第 1 次测量 P1(初始位置)      第 2 次测量 P2                 第 3 次测量 P3

Ø  说明

在进行第 2 次和第 3 次测量时,待测回转轴旋转一个任意、尽可能大的角度。

 

4.2      安装标准球

标准球安装在工作台上,且尽可能远离待测回转轴的旋转中心安装标准球。

为测量可回转夹具的坐标回转矢量,球体必须安装在相应的夹具上。并确保测头在所有选择的回转轴位置上都可以安全、无碰撞地逼近标准球、从标准球返回。

 

4.3      测量点选择

为每根回转轴确定三个测量位置(球面位置)。请注意,这三个位置产生的球面位置应形成一个尽可能大的三角形。

image.pngimage.pngimage.png

正确                                      错误                                 错误

 

Ø  注意

1)选定标定点时,注意测量起点(DFA)的选取必须足够长,否则会报警

2)选取标定点时,注意测头与基准球的干涉,避免在标定时发生碰撞

 

4.4      测量方向

可设置两种测量方向,

沿直线轴方向(适用于工作台旋转机械结构)

沿刀具矢量方向(适用于铣头旋转机械结构)


沿直线轴方向                                                     沿刀具矢量方向

 

MD55740 $SCS_MEA_FUNCTION_MASK

Bit8 = 0:运动测量不激活TRAORI或TCARR

Bit8 = 1:运动测量中激活TRAORI或TCARR

4.5      测量步骤

1)    3D测头标定(长度和半径)

2)    创建标定程序

3)    手动方式下,找到所有标定点的坐标(总共测量6次),将坐标输入到测量程序中

4)    开始测量

5)    旋转轴1三个不同位置的测量

如旋转轴C第1次测量,

image.png

 

6)    旋转轴2三个不同位置的测量

如旋转轴A第1次测量,

image.png

7)    计算

image.png

8)    测量结果

参数MD55740 $SCS_MEA_FUNCTION_MASK Bit7设置几何矢量计算的基础。

 

MD55740 位7:机床运动测量,以回转轴矢量的输入值为标定基础

= 0:以计算出的定向矢量(V1xyz, V2xyz)为标定基础

= 1:以定向矢量(V1xyz, V2xyz)输入值(TCARR)为标定基础

    image.png image.png

Bit7=1                                                              Bit7=0

建议设置MD55740 Bit7=1。

 


5       创建tool carrier

以双摆台为例,创建TOOLCARR – tool carrier (classic)

image.png

5.1      运动类型:回转台

运动类型:回转台

image.png

5.2      Tool carrier设置(类型:TOOL_CARRIER_CLASSIC

元素

设置

旋转轴1&2

image.png

image.png

属性

image.png

6       标定程序

6.1      通过CYCLE800定位

; TCARR_MEAS_CYC800_TRACK.MPF

CYCLE800()

CYCLE832(0,_OFF,1)

G54 G17 G90 G64

$SCS_MEA_RESULT_DISPLAY=3

T="3D_999"

; M6

; GOTOF _ONLY_CALC

SUPA G0 A0 C0

SUPA G0 X-38.5 Y-343

SUPA G0 Z-315.5

STOPRE

; $P_UIFR[($P_GG[8]-1)]=CTRANS(X,$AA_IM[X],Y,$AA_IM[Y],Z,($AA_IM[Z]-17.5-$P_TOOLL[1]))

STOPRE

G54

CYCLE997(1102109,1,1,25,5,5,0,90,0,0,0,5,5,5,10,10,10,0,1,,1,)

STOPRE

G54

; ----------------- 回转轴C第 1次测量:C0 A0 -----------------

CYCLE800(5,"TC1",200000,39,0,0,0,0,0,0,0,0,0,1,20,1)

G0 X0 Y0

G0 Z17.5

CYCLE996(20201,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴C第 2次测量:C120 A0 -----------------

TOFFL=17.5

CYCLE800(0,"TC1",200010,192,0,0,0,0,120,0,0,0,0,1,20,1)

TOFFL=0

G0 X0 Y0

G0 Z17.5

CYCLE996(20202,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴C第 3次测量:C240 A0 -----------------

TOFFL=17.5

CYCLE800(0,"TC1",200010,192,0,0,0,0,240,0,0,0,0,1,20,1)

TOFFL=0

G0 X0 Y0

G0 Z17.5

CYCLE996(20203,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴A第 1次测量:C0 A0 -----------------

TOFFL=17.5

CYCLE800(0,"TC1",200010,192,0,0,0,0,0,0,0,0,0,1,20,1)

TOFFL=0

G0 X0 Y0

G0 Z17.5

CYCLE996(10201,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴A第 2次测量:C0 A45 -----------------

TOFFL=17.5

CYCLE800(0,"TC1",200010,39,0,0,0,0,45,0,0,0,0,1,20,1)

TOFFL=0

G0 X0 Y0

G0 Z17.5

CYCLE996(10202,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴A第 3次测量:C0 A90 -----------------

TOFFL=17.5

CYCLE800(0,"TC1",200010,39,0,0,0,0,90,0,0,0,0,1,20,1)

TOFFL=0

G0 X0 Y0

G0 Z17.5

CYCLE996(10203,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

TOFFL=17.5

CYCLE800(0,"TC1",200010,39,0,0,0,0,0,0,0,0,0,1,20,1)

CYCLE800()

; MHOME("1","2")

TOFFL=0

 

_ONLY_CALC:

; ----------------- 计算坐标转换矢量 -----------------

; WITH SCALING

CYCLE996(3201200,1,1,25,0,0,0,-225.971,-550.753,0.2,0.03,20,5,5,1,,1,101)

; WITHOUT SCALING

; CYCLE996(1200,2,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,100)

;T0

;M6

M17

 

6.2      通过TRAORI定位

; TCARR_MEAS_TRAORI.MPF

CYCLE800()

CYCLE832(0,_OFF,1)

G54 G17 G90 G64

$SCS_MEA_RESULT_DISPLAY=3

; MHOME("1","2")

T="3D_999"

; M6

; GOTOF _ONLY_CALC

SUPA G0 A0 C0

SUPA G0 X-38.5 Y-343

SUPA G0 Z-315.5

STOPRE

FL[C]=1000

FL[A]=1000

; $P_UIFR[($P_GG[8]-1)]=CTRANS(X,$AA_IM[X],Y,$AA_IM[Y],Z,($AA_IM[Z]-17.5-$P_TOOLL[1]))

STOPRE

G54

CYCLE997(1102109,1,1,25,5,5,0,90,0,0,0,5,5,5,10,10,10,0,1,,1,)

STOPRE

G54

ORIMKS

; ----------------- 回转轴C第 1次测量:C0 A0 -----------------

TRAORI(1)

G0 X0 Y0 C0 A0

G0 Z17.5

TRAFOOF

CYCLE996(20201,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴C第 2次测量:C120 A0 -----------------

TOFFL=17.5

TRAORI(1)

G0 C120 A0 X0 Y0 Z0

TOFFL=0

TRAFOOF

CYCLE996(20202,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴C第 3次测量:C240 A0 -----------------

TOFFL=17.5

TRAORI(1)

G0 C240 A0 X0 Y0 Z0

TOFFL=0

TRAFOOF

CYCLE996(20203,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴A第 1次测量:C0 A0 -----------------

TOFFL=17.5

TRAORI(2)

G0 C0 A0 X0 Y0 Z0

TOFFL=0

TRAFOOF

CYCLE996(10201,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴A第 2次测量:C0 A45 -----------------

TOFFL=17.5

TRAORI(1)

G0 C0 A45 X0 Y0 Z0

TOFFL=0

TRAFOOF

CYCLE996(10202,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

 

; ----------------- 回转轴A第 3次测量:C0 A90 -----------------

TOFFL=17.5

TRAORI(1)

G0 C0 A90 X0 Y0 Z0

TOFFL=0

TRAFOOF

CYCLE996(10203,1,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,)

TOFFL=17.5

TRAORI(1)

G0 C0 A0 X0 Y0 Z0

TOFFL=0

TRAFOOF

FL[C]=99999

FL[A]=99999

; MHOME("1","2")

 

_ONLY_CALC:

; ----------------- 计算坐标转换矢量 -----------------

; WITH SCALING

CYCLE996(3201200,1,1,25,0,0,0,-225.971,-550.753,0.2,0.03,20,5,5,1,,1,101)

; WITHOUT SCALING

;CYCLE996(1200,2,1,25,0,0,0,0,0,0,0,20,5,5,1,,1,100)

;T0

;M6

M17

6.3      标定结果

image.png

 

7       相关参数

参数

N13210   $MN_MEAS_TYPE

分布式驱动器上的测量方式

0:集中式测量

p0680[0...7]   Central measuring probe, input terminal

[0]   中央测量头1输入端子

[1]   中央测量头2输入端子

[0]=3 ; DI/DO 11 (X122.13)

[1]=6 ; DI/DO 15 (X132.13)

p0488[0...2]   Measuring probe 1 input terminal

伺服测量头1 的输入端子

[0]=0

N51740 $MNS_MEA_FUNCTION_MASK

测量循环的设定,工件测量/刀具测量

Bit 0 =1;工件测量,标定状态监控功能激活

Bit 1 =1;工件测量,测头长度的参照物为测球球面

Bit 2 =1;工件测量,补偿刀具时考虑刀架

Bit 6=1;在测量循环中测量程序段(MEAS)进给率100%(进给倍率>0时)

Bit 15=1;工件测量,测量程序段采用G60准停

Bit 16 =1;刀具测量,补偿刀具时考虑刀架

 

 

N51770 $MNS_J_MEA_CAL_RING_DIAM

手动测量环规的直径

-1

N52005 $MCS_DISP_PLANE_MILL

铣削平面选择

0

N54600 $SNS_MEA_WP_BALL_DIAM

工件测球的直径

测头半径标定完成后,自动输入

N54760 $SNS_MEA_FUNCTION_MASK_PIECE

自动工件测量的输入屏幕定

Bit 1 =1;程序编辑画面显示软键‘3D测量’

Bit 3 =1;激活测头组选项

Bit 4 =1;激活标定测量进给率输入栏

Bit 22 =1;激活标定选项‘以未知中心标定’或‘以已知中心标定’

Bit 27 =1;在运动测量中未使能时,选择线性矢量公差

N54780 $SNS_J_MEA_FUNCTION_MASK_PIECE

手动工件测量的输入屏幕设定

Bit 2 =1;激活选项‘电子工件测头标定’

Bit 3 =1;激活测头标定数据字段的选择

Bit 9 =1;激活零偏补偿选项‘可设置框架’

Bit 17 =1;激活选项‘在切换方向校准工件测头’

 

 

N55613 $SCS_MEA_RESULT_DISPLAY

测量结果图显示选项

3 显示测量结果图,测量循环会被一个系统自设的M0停止。按下“CYCLE START”后,测量循环会继续,测量结果图被取消

N55628 $SCS_MEA_TP_FEED_MEASURE

标定刀具侧头时的进给率

300 mm/min

N55630 $SCS_MEA_FEED_MEASURE

标定工件测头时的进给率

300 mm/min

N55637 $SCS_MEA_FEED_POS_DEG

两次测量之间定位回转轴时的进给率

10 rpm

N55638 $SCS_MEA_FEED_FAST_MEASURE

快速测量进给率

900 mm/min

N55640 $SCS_MEA_FEED_CIRCLE

圆弧测量和球测量进给率

1000 mm/min

N55644 $SCS_MEA_KIN_DM_TOL

运动测量:标准球的直径公差

0

N55740 $SCS_MEA_FUNCTION_MASK

测量循环的设定,工件测量/刀具测量

Bit 0 =1;工件测量,中间定位中的碰撞监控

Bit 7 =1;机床运动,回转轴矢量输入值的标定基础

Bit 8 =1;机床运动,测量带有回转(TCARR)或有效的TRAORI

Bit 10 =1;使用参考基准测量整个运动

Bit 11 =1;运动,测量校正球时的测量点数量

0:在圆弧轨道上测量时有10个测量点

1:在圆弧轨道上测量时有8个测量点

 

 

 

 

8       作者/联系人

顾向清

2019-09-10

 

9       版本信息

版本

日期

修改内容

V1.0

2019.09.10