1、Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,前 言,Slide,1,变 量 基 础 部 分,Slide,2,变量类型,变量,局部,变量,全局,变量,系统,变量,用户,变量,所有的宏程序中都可以共用的变量,#100-#199,:掉电不保持,#500-#999,:掉电保持,只能在当前宏程序中使用的变量,#1-#33,用来储存系统数据的变量,如刀补,位置等,#1000-,Slide,3,常用系统变量,-,工件坐标
2、系,外部坐标系偏置,#5201-#5203,G54,(,1-3,轴),#5221-#5223,G55,(,1-3,轴),#5241-#5243,G56,(,1-3,轴),#5261-#5263,G57,(,1-3,轴),#5281-#5283,G58,(,1-3,轴),#5301-#5303,G59,(,1-3,轴),#5321-#5323,G54.1P1,(,1-3,轴),#7001-#7003,G54.1P48,(,1-3,轴),#7941-#7943,我们能用这些变量干什么?(见测试),Slide,4,常用系统变量,-,刀具补偿偏置,我们能用这些变量干什么?(见测试),Slide,5,常
3、用系统变量,-,报警变量,变量号,功能,举例,#3000,赋值,0-200,,机床停止并报警,#3000=1(NG),屏幕显示“,3001,NG,”,我们能用这个变量干什么?,(见测试),Slide,6,算数和逻辑运算,部分一,Slide,7,算数和逻辑运算(一),功能,格式,备注,定义,#i=#j,加法,#i=#j+#k,减法,#i=#j-#k,乘法,#i=#j*#k,除法,#i=#j/#k,#k,不为,0,正弦,#i=SIN#j,角度以度指定,90.5,表示,90,度,30,分,反正弦,#i=ASIN#j,正切,#i=TAN#j,反正切,#i=ATAN#j/#k,余弦,#i=COS#j,反
4、余弦,#i=ACOS#j,Slide,8,算数和逻辑运算(二),功能,格式,备注,平方根,#i=SQRT#j,绝对值,#i=ABS#j,舍入,#i=ROUND#j,上取整,#i=FIX#j,下取整,#i=FUP#j,自然对数,#i=LN#j,指数对数,#i=EXP#j,或,#i=#j OR,#k,运算按照二进制一位一位的进行,异或,#i=#j,XOR#k,与,#i=#j AND,#k,蓝色字体为不常用运算符,所有运算格式要正确,Slide,9,测试一,可以把,G55,的坐标值写入全局变量吗?局部变量呢?,怎么写?,两个有什么差异?,我可以给,G55,的坐标赋值吗?,怎么写?,有什么用处?,要读
5、取,5,号刀的刀具长度补偿(含磨损),怎么读?,有什么用处?,程序中要添加报警,用哪个变量,怎么用?,Slide,10,休 息 会?,Slide,11,算数和逻辑运算,部分二,Slide,12,运算符,作用,多用于逻辑判断,和,IF,等条件语句使用,Slide,13,IF,条件语句,判断后跳转,示例:,如果变量,#1,的值大于,10,,跳转到,N2,程序段,N1,IF#1 GT 10.GOTO2,N2,G00 G91 X10.,IF THEN,如果表达式满足,执行,THEN,后的语句。否则顺序执行,示例:,如果,#1,和,#2,的值相同,,0,赋值给,#3,IF#1 EQ#2THEN#3=0,
6、Slide,14,宏程序调用,重要内容,Slide,15,程序调用方式,M98,调用,格式:,M98 P*,举例:,M98 P1000,G65,调用,格式:,G65 P*Aa Bb Cc Dd Ee Ff Hh Ii Jj Kk Mm Nn,Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz,举例:,G65 P1000 A1.B2.X10.Z5.,都可以调用,有区别吗?,Slide,16,G65,和,M98,的差别(一),指定变量的值,格式:,M98 P*,G65 P*Aa Bb Cc Dd Ee Ff Hh Ii Jj Kk Mm Nn,Qq Rr Ss Tt Uu Vv Ww
7、Xx Yy Zz,所以,M98,不能在调用时指定变量的值,而,G65,可以,那么,G65,后面跟的一大堆字母表示的是什么意思呢?,Slide,17,G65,和,M98,的差别(一),变量表,举例:,G65 P1000 A1.B2.X10.Z5.,表示在调用,O1000,的同时,就指定了程序中,#1,,,#2,,,#24,,,#26,的值,通常在程序中有类似的语句:,IF#1 NE,#0,GOTO2,或,#600=#2+10.,等类似的语句,那么,这样有什么好处?,Slide,18,G65,和,M98,的差别(二),示例:,O0001,#1=1.,M98 P1000;,#600=#1;,此时,#
8、600,的值是多少?,-,O0002,#1=1.,G65 P1000,#600=#1;,此时,#600,的值是多少?,O1000,#1=-1.,M99,#600=-1,#600=1,Slide,19,G65,和,M98,的差别(二),Slide,20,休 息 会?,Slide,21,INSPECTION PLUS,Slide,22,软件中的全局变量,Slide,23,全局变量(一),#100,#110,#120,#130,#140,#101,#111,#121,#131,#141,#102,#112,#122,#132,#142,#103,#113,#123,#133,#143,#104,#1
9、14,#124,#134,#144,#105,#115,#125,#135,#145,#106,#116,#126,#136,#146,#107,#117,#127,#137,#147,#108,#118,#128,#138,#148,#109,#119,#129,#139,#149,用户可用变量,Slide,24,全局变量(二),#100,#110,#120,#130,#140,#101,#111,#121,#131,#141,#102,#112,#122,#132,#142,#103,#113,#123,#133,#143,#104,#114,#124,#134,#144,#105,#11
10、5,#125,#135,#145,#106,#116,#126,#136,#146,#107,#117,#127,#137,#147,#108,#118,#128,#138,#148,#109,#119,#129,#139,#149,INSPECTION PLUS,内部计算,Slide,25,全局变量(三),#100,#110,#120,#130,#140,0,#101,#111,#121,#131,#141,0,#102,#112,#122,#132,#142,1.000,#103,#113,#123,#133,#143,1.000,#104,#114,#124,#134,#144,#105
11、115,#125,#135,0,#145,#106,#116,#126,#136,0,#146,-1.000,#107,#117,#127,#137,10.00,#147,#108,#118,#128,#138,#148,#109,#119,#129,#139,#149,0,INSPECTION PLUS,测量结果和旗帜,测量结果和旗帜的数值在每次测量后被覆盖,Slide,26,全局变量(四),#500,#510,#520,#530,#540,#501,#511,#521,#531,#541,#502,#512,#522,#532,#542,#503,#513,#523,#533,#543
12、504,#514,#524,#534,#544,#505,#515,#525,#535,#545,#506,#516,#526,#536,#546,#507,#517,#527,#537,#547,#508,#518,#528,#538,#548,#509,#519,#529,#539,#549,标准校正数值,回退系数,矢量校正数值,Slide,27,测头校正程序,Slide,28,为什么要校正,测头安装后,测头中心与主轴的偏心量,测针球的直径误差,测头的触发距离,机床的重复性,所以,每次更换测头,或者更换测针后,必须校正!,如何校正?软件部分再讲,Slide,29,校正项目,测头长度校正
13、测针半径校正,测针偏心校正,值存放在刀具补偿,值存放在全局变量,值存放在全局变量,为什么要存放在全局变量中?,Slide,30,测头长度校正,格式:,G65 P9801 Zz Tt,举例:,G65 P9801 Z0.T21,Tt,要更新的刀具号,.,Zz,标准表面的工件坐标,.,O1000,G17 G40 G49 G69 G80 G90,G54 X0 Y0,G43 H21 Z20.,G65 P9801 Z0 T21,G91 G28 Z0,G90,M30,注意:在这里,T21,的刀补中要有,一个预置的大概刀长,Slide,31,校正测针,X/Y,偏置,格式:,G65 P9802 Dd,举例:,
14、G65 P9802 D50.005,D,d:,用于校正的环规直径,4,#502,Dd,Y,X,3,1,2,#503,O1000,G17 G40 G49 G69 G80 G90,G54 X0 Y0,(环规中心),G65 P9802 D50.005,G91 G28 Z0,G90,M30,注意:,1.,准确将主轴定位至环规的,中心位置,并将测针置于环规内,部,2.,程序运行后,会将偏心写入,#502,和,#503,Slide,32,校正测针球半径,格式:,G65 P9803 Dd,举例:,G65 P9803 D50.005,D,d:,用于校正的环规直径,O1000,G17 G40 G49 G69 G
15、80 G90,G54 X0 Y0,(环规中心),G65 P9803 D50.005,G91 G28 Z0,G90,M30,注意:,1.,准确将主轴定位至环规的,中心位置,并将测针置于环规内,部,2.,程序运行后,会将半径写入,#500,和,#501,Slide,33,小结,对于初学者,以下变量范围,建议先不用:,#100-#199,#500-#550,其他全局变量可按需要使用,测头使用必须要标定,初次使用时,更换测针后,使用一段时间后,标定后,挂刀方向要固定,标定时的进给与测量的进给保持一致,Slide,34,休 息 会?,Slide,35,保护移动程序,-O9810,Slide,36,保护移
16、动程序,-O9810,功能:,在测头移动时,如果有障碍物阻挡,机床停止并报警,格式:,G65 P9810 X,x Yy Zz Ff,X,x Yy Zz,:目标位置在当前坐标系下的坐标,F,f,:移动的进给率,注 意,1.,目标位置指定,可以单独指定,X/Y/Z,中的任何一个值;也可以同时指定其中任意,2,个或,3,个全部指定,举例:,G65 P9810 Y-1.F3000,G65 P9810 X0 Z-5.F3000,G65 P9810 X0 Y1.Z2.F4000,2.,报警,当在移动的过程中,碰到障碍,机床停止,报警号,3086,提示信息“,PATH OBSTRUCTED,”,Slide,
17、37,成功移动至目标位置,G65,P9810,X50.0 Z5.0,F3000,保护移动程序,-O9810,Slide,38,保护移动程序,-O9810,#3000=86(PATH OBSTRUCTED,),未成功移动至目标位置,G65,P9810,X50.0 Z5.0,F3000,Slide,39,单点测量程序,-O9811,Slide,40,单点测量程序,-O9811,功能:,每次测量一个面,常用格式:,G65 P981,1,X,x,或,Yy,或,Zz,X,x Yy Zz,:目标位置在当前坐标系下的坐标,注 意,1.,目标位置指定,每次,只能,指定,X/Y/Z,中的一个值,举例:,G65
18、P9811 X-1.,G65 P9811 Z-5.,G65 P9811 Y1.,Slide,41,单点测量程序,-O9811,常用扩展格式:,G65 P9811 Xx,或,Yy,或,Zz Ss Tt,中的变量为可选输入变量,Ss,:欲更新的坐标系,Tt,:欲更新的刀具编号,举例:,G65 P9811 X0.S101,G65 P9811 Z10.T4,S,参数,工件偏置,S1,G54,S2,G55,S3,G56,S4,G57,S5,G58,S6,G59,S0,G53,S101,G54.1 P1,S102,G54.1,P2,Etc.,Etc.,S148,G54.1 P48,Slide,42,单点测
19、量程序,-O9811,测量后的数据输出:,1.G65 P9811 X4.,输出:,#135-,实测值(,4.012,),#140-,误差值(,0.012,),2.G65 P9811 Y4.,输出:,#136-,实测值(,4.012,),#141-,误差值(,0.012,),1.G65 P9811 Z4.,输出:,#137-,实测值(,4.012,),#142-,误差值(,0.012,),我们能用这些变量干什么?,(见测试),Slide,43,槽,/,凸台测量程序,-O9812,Slide,44,槽,/,凸台测量程序,-O9812,功能:,测量沿,X/Y,轴向的槽,/,凸台,见上图,常用格式:,
20、G65 P981,2,X,x,或,YyZz Rr Ss Tt,X,x,:,X,方向的槽,/,凸台测量,Yy,:,Y,方向的槽,/,凸台测量,Zz,:图,2,和图,3,形式的特征测量点,Z,坐标,Rr,:图,3,特征测量时,回退量,Ss,:欲更新的坐标系,Tt,:欲更新的刀具编号,注意:在使用此程序前,需要事先将测头定位在欲测特征的理论中心上,Slide,45,槽测量程序,-O9812,1.G65 P9812 X12.S1 T3,输出:,#135-,槽对称中心,X,坐标,#140-,槽对称中心坐标值与理论值的误差(如何计算?),#138-,槽的实测宽度,#143-,槽的实测宽度与理论宽度的差值(
21、如何计算?),2.G65 P9812 Y12.S2 T4,输出:,#136-,槽对称中心,X,坐标,#141-,槽对称中心坐标值与理论值的误差,#138-,槽的实测宽度,#143-,槽的实测宽度与理论宽度的差值,X0,(2.0),(X-100.0),20.0,上图的程序要怎么写?,Slide,46,凸台测量程序,-O9812,1.G65 P9812 X12.Z1.S1 T3,输出:,#135-,槽对称中心,X,坐标,#140-,槽对称中心坐标值与理论值的误差(如何计算?),#138-,槽的实测宽度,#143-,槽的实测宽度与理论宽度的差值(如何计算?),2.G65 P9812 Y12.Z1.S
22、2 T4,输出:,#136-,槽对称中心,X,坐标,#141-,槽对称中心坐标值与理论值的误差,#138-,槽的实测宽度,#143-,槽的实测宽度与理论宽度的差值,上图的程序要怎么写?,(Y-100.0),(2.0),Y0,20.0,Z-5.0,Slide,47,有凸台的槽测量程序,-O9812,1.G65 P9812 X12.Z-1.R-2.S1 T3,输出:,#135-,槽对称中心,X,坐标,#140-,槽对称中心坐标值与理论值的误差(如何计算?),#138-,槽的实测宽度,#143-,槽的实测宽度与理论宽度的差值(如何计算?),2.G65 P9812 Y12.Z-1.S2 T4 R2.,
23、输出:,#136-,槽对称中心,X,坐标,#141-,槽对称中心坐标值与理论值的误差,#138-,槽的实测宽度,#143-,槽的实测宽度与理论宽度的差值,上图的程序要怎么写?,Slide,48,孔,/,圆台测量程序,-O9814,Slide,49,孔,/,圆台测量程序,-O9814,功能:,4,点测量孔或圆台,见上图,常用格式:,G65 P981,4,D,d Zz Rr Ss Tt,Dd,:孔或圆台的直径,Zz,:图,2,和图,3,形式的特征测量点,Z,坐标,Rr,:图,3,特征测量时,回退量,Ss,:欲更新的坐标系,Tt,:欲更新的刀具编号,注意:在使用此程序前,需要事先将测头定位在欲测特征
24、的理论中心上,Slide,50,孔测量程序,-O9814,1.G65 P9814 D12.S1 T3,输出:,#135-,圆心,X,坐标,#140-,圆心测量,X,坐标值与理论值的误差(如何计算?),#136-,圆心,Y,坐标,#141-,圆心测量,X,坐标值与理论值的误差(如何计算?),#138-,圆的实测直径,#143-,圆的直径测量值与理论值的误差(如何计算?),X0,(2.0),(X-100.0),20.0,上图的程序要怎么写?,Slide,51,圆台测量程序,-O9814,上图的程序要怎么写?,(Y-100.0),(2.0),Y0,20.0,Z-5.0,1.G65 P9814 D12
25、Z-2.S1 T3,输出:,#135-,圆心,X,坐标,#140-,圆心测量,X,坐标值与理论值的误差(如何计算?),#136-,圆心,Y,坐标,#141-,圆心测量,X,坐标值与理论值的误差(如何计算?),#138-,圆的实测直径,#143-,圆的直径测量值与理论值的误差(如何计算?),Slide,52,有圆台的内孔测量程序,-O9814,上图的程序要怎么写?,1.G65 P9814 D12.Z-2.R-2.S1 T3,输出:,#135-,圆心,X,坐标,#140-,圆心测量,X,坐标值与理论值的误差(如何计算?),#136-,圆心,Y,坐标,#141-,圆心测量,X,坐标值与理论值的误差
26、如何计算?),#138-,圆的实测直径,#143-,圆的直径测量值与理论值的误差(如何计算?),Slide,53,休 息 会?,Slide,54,测试二,如何编写一个完整的测头校准程序?,试着编写测量下面的特征,工件坐标在圆心,产品表面,中心大孔直径,20mm,,深度,15mm,,测量孔并输出数据,更新坐标系,G57,中心圆台直径,6mm,,顶面距离表面,5mm,,高度为,10mm,,测量并输出数据,整个工件长宽均为,50mm,,高度为,30mm,,测量黄色表面,输出相关的测量数据,Slide,55,小结二,3086-PATH OBSTRUCTED,保护移动过程中,光线阻挡,保护移动过程中,测头碰触到障碍物,3092-PROBE OPEN,测量是二次触发,第一次测量后,测头需要完全离开产品表面,再进行第二次测量,如果在第一次后,不能完全离开产品表面,会报警;,可以通过修改,#506,,将,#506,中的值增大,3093-PROBE FAIL,测量移动结束时,还没有触碰到任何物体,报警,查看,O9811,,,O9812,,,O9814,后面指定的数据是否有误,坐标系设定等,Slide,56,






