_20200910_112809数控培训fanuc宏程序_第1页
_20200910_112809数控培训fanuc宏程序_第2页
_20200910_112809数控培训fanuc宏程序_第3页
_20200910_112809数控培训fanuc宏程序_第4页
_20200910_112809数控培训fanuc宏程序_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、纽威数控装备(苏州)纽威数控装备(苏州)一.宏程序概念所谓宏程序是以变量的组合,通过各种算术和逻辑运算,转移和循环等命令,而编制的一种可以灵活运用的程序。即数控程序中含有变量的程序称为宏程序 。只要改变变量的值,即可完成不同的加工或操作。宏程序可以简化程序的编制,提高工作效率。加工程序中可以像调用子程序一样用一个简单指令即可调用宏程序。1.变量宏程序中使用的变量与日常生活中使用的变量不同,变量用符号“#”后跟变量的变量号指定。变量可分为四种类型。A.空变量#0为空变量,该变量不能赋值。纽威数控装备(苏州)我们将尚未定义变量值的状态叫做“空值”。变量#0、#3100 永远是空变量,它不能写入,但

2、能读取(a) 引用变量在引用一个尚未定义的变量时,地址本身也被忽略。G90 X100 Y#1G90 X100 G90 X100 Y0原来的指令#1=空值时的等效指令时的等效指令(b) 定义替换、加法运算、乘法运算、将局部变量或公共变量直接替换为空值时,其结果也为空值 将系统变量直接替换为空值时,或者替换使用空值运算出来的结果是,均作为变量值0 来对待。纽威数控装备(苏州)原来的运算式子(局部变量例)#2=#1#2=#1*5#2=#1+#1替换结果(#1=空值时)空值00替换结果(#1=0 时)000原来的运算式子(公共变量)#100=#1#100=#1*5#100=#1+#1替换结果(#1=空

3、值时)空值00替换结果(#1=0 时)000原来的运算式子(系统变量)#2001=#1#2001=#1*5#2001=#1+#1替换结果(#1=空值时)000替换结果(#1=0 时)000纽威数控装备(苏州)(c) 比较运算若是EQ 和NE 的情形,空值和0 被判定为不同的值若是GE、GT、LE、LT 的情形,空值和0 被判定为相同的值。将空值代入#1 时条件表达式的表达方式#1 EQ #0#1 NE #0#1 GE #0#1 GT 0#1 LE #0#1 LT 0评价结果 成立成立(真)成立(真)成立(真)不成立(假)成立(真)不成立(假) 将0 代入#1 时条件表达式的表达方式#1 EQ

4、#00 #1 NE 0#1 GE #0#1 GT 0#1 LE #0#1 LT 0评价结果 成立成立(真)成立(真)成立(真)不成立(假)成立(真)不成立(假)纽威数控装备(苏州)B. 局部变量#1#33为局部变量,局部变量只能在宏程序中存储数据。当断电时局部变量被初始化为空,调用宏程序时,自变量对局部变量赋值。局部变量的数值范围最大值约10308;最小值:约10-308,如果计算结果超过该范围则发出P/S报警No.111。C.公共变量#100#199、#500#999为公共变量,公共变量在不同的宏程序中意义相同。当断电时,变量#100#199被初始化为空,变量#500#999的数据不会丢失。

5、全局变量的数值范围10-291047或-1047-10-29,如果计算结果超过该范围则发出P/S报警No.111。纽威数控装备(苏州)D.系统变量#1000为系统变量,系统变量用于读和写CNC运行时的各种数据,如刀具的当前位置和补偿 值等。2.变量的运算对宏程序中的变量可以可以进行算术运算和逻辑运算A. 算术运算 可以进行加、减、乘、除运算。举例:G00X#1+#2X坐标的值是变量1与变量2之和。B. 三角函数计算对宏程序中的变量可进行正弦(SIN)、反正弦(ASIN)、余弦(COS)、反余弦(ACOS)、正切(TAN)、反正切(ATAN)函数运算。三角函数中的角度以度为单位。纽威数控装备(苏

6、州)变量运算功能算术运算加法#i=#j+#k 减法#i=#j-#k 乘法#i=#j*#k 除法#I=#j/#k 三角函数运算正弦#i=SIN#j#1=#2+#3#1=#2-#3 #1=#2*#3 #1=#2/#3#1=SIN#2 #1=ASIN#2 #1=COS#2 #1=ACOS#2 #1=TAN#2 #1=ATAN#2反正弦#i=ASIN#j 余弦#i=COS#j反余弦#i=ACOS#j 正切#i=TAN#j反正切#i=ATAN#j纽威数控装备(苏州)其它函数运算平方根 #i=SQRT#j绝对值 #i=ABS#j#1=SQRT#2 #1=ABS#2#1=ROUN#2 #1=FIX#2 #1

7、=FUP#2 #1=LN#2#1=EXP#2#i=ROUN#j舍入上取整 #i=FIX#j下取整 #i=FUP#j 自然对数#i=LN#j 指数对数#i=EXP#j 逻辑运算与 #i=#jAND#k或#i=#j OR #k异或#i=#j XOR #k#1=#2AND#3 #1=#2OR#3#1=#2XOR#3纽威数控装备(苏州)转换运算BCD转BIN BIN转BCD3.关系运算#i=BIN#j #i=BCD#j#1=BIN#2 #1=BCD#21)等于(EQ)用EQ与两个变量(或表达式)组成表达式,当运算符EQ两边的变量(或表达式)相等时,表达式的值为真, 否则为假。例如,#1EQ#2,当#1

8、与#2相等时,表达式的值为真。(2)不等于(NE)用NE与两个变量或表达式组成表达式,当运算符NE两边的变量(或表达式)不相等时,表达式的值为真,否则为假。例如,#1NE#2,当#1与#2不相等时,表达式的值为真。纽威数控装备(苏州)(3)大于等于(GE)用GE与两个变量或表达式组成表达式,当左边的变量(或表达式)大于或等于右边的变量(或表达式)时, 表达式的值为真,否则为假。例如,#1GE#2,当#1大于或等于#2时,表达式的值为真。否则为假。(4)大于(GT)用GT与两个变量或表达式组成表达式,当左边的变量(或表达式)大于右边的变量(或表达式)时,表达式的值为真,否则为假。例如,#1GT#

9、2,当#1大于#2时,表达式的值为真。否则为假纽威数控装备(苏州)(5)小于等于(LE)用LE与两个变量或表达式组成表达式,当左边的变量(或表达式)小于或等于右边的变量(或表达式)时, 表达式的值为真,否则为假。例如,#1LE#2,当#1小于或等于#2时,表达式的值为真。否则为假。(6)小于(LT)用LT与两个变量或表达式组成表达式,当左边的变量(或表达式)小于右边的变量(或表达式)时,表达式的值为真,否则为假。例如,#1GE#2,当#1大于#2时,表达式的值为真。否则为假。纽威数控装备(苏州)二.宏程序调用2.1 宏程序调用指令 格式:G65P L ; 式中:P宏程序号; L重复调用次数(1

10、9999,1次时L可省略);用以对宏程序中的局部变量赋值。自变量赋值是由地址及数值构成。2.2 自变量赋值 自变量赋值 自变量赋值纽威数控装备(苏州)二.宏程序调用1.宏程序调用的方法纽威数控装备(苏州)2. 宏程序调用指令 格式:G65P L ; 式中:P宏程序号; L重复调用次数(19999,1次时L可省略);用以对宏程序中的局部变量赋值。自变量赋值是由地址及数值构成。自变量赋值 自变量赋值 自变量赋值纽威数控装备(苏州)3.宏程序嵌套层数纽威数控装备(苏州)在G66后,用地址P为模态调用指定程序号;当需要重复次数时,可在地址L后指定从19999的数字。和简单调用G65一样,传递给宏程序的

11、数据用实参指定。当指定G67指令时,后续程序段不再执行模态调用。纽威数控装备(苏州)自变量赋值的地址与变量号码之间的对应关系参数6008.7=1时纽威数控装备(苏州)自变量赋值的地址与变量号码之间的对应关系6008.7=0纽威数控装备(苏州)例如:G65 P9301 A1.0 B2.0 I10 J12 K17; #1=1.0#2=2.0#4=10.0#5=12.0#6=17.0纽威数控装备(苏州)1.控制指令1、无条件转移(GOTO语句) 格式:GOTOn; 式中:n顺序号(19999),可用变量表示。例如,GOTO6; 语句组N6 G00X100;执行GOTO6语句时,转去执行标号为N6的程

12、序段。纽威数控装备(苏州)2、条件转移(IF语句)格式:IF条件式:条件式GOTOn;O9100; #1=0; #2=1;N1 IF #2 GT 10 GOTO 2; #1=#1+#2;#2=#2+1; GOTO 1; N2 M30;#j EQ k#j 是否k#j GT#k#j 是否k#j GE k#j 是否#k#j NE #k#j 是否 #k#j LT #k#j 是否 #k#j LE #k#j 是否 #k纽威数控装备(苏州)3、循环(WHILE语句) 格式:WHILE条件式DOm;END m; 式中:m循环执行范围的识别号,只能是1.2.3 注意:DOEND循环能够按需要使用多次,即循环嵌套

13、。纽威数控装备(苏州)4. 条件转移(IF)格式:IF表达式THENTHEN后只能跟一个语句。例如,IF#1EQ#2THEN#3=0;当#1等于#2时,将0赋给变量#3。纽威数控装备(苏州)DOEND循环嵌套:WHILE 条件式1 DO 1;WHILE 条件式2 DO 2;WHILE 条件式3 DO 3; END3;END 2 END 1;纽威数控装备(苏州)举例:求1到10之和。O9200; #1=0; #2=1;WHILE #2 LE 10 DO 1;#1 =#1+#2; #2=#2+1; END 1;M30;纽威数控装备(苏州)【例1】圆周等份孔加工:在半径I的圆周上钻削H个等分孔,已知

14、加工第一个孔的起始角度为A,相邻两孔之间角度的增量为B,圆周中心坐标为(x,y)。O7500;G90 G54 G00 X0 Y0 Z100; M03 S800;G65 P9500 X50. Y150. R10. Z-20.F300I120. A0 B45. H5; G00 X0 Y0 Z100.;M30;纽威数控装备(苏州)O9500;G99 G81 Z#26 R#18 F#9 L0;WHILE #11 GT 0DO 1;#5 = #24 + #4*COS#1;#6 = #25 + #4*SIN#1; X#5 Y#6;#1 = #1 + #2;#11 = #11 1; END 1;G67;纽威

15、数控装备(苏州)用12球头铣刀对半球体进铣削内半球体:在数控铣行精加工。若用同一程序以及用不同半径的刀具加工不同半径的内球体,编宏程序。O7400;G90 G54 G17 G00 X0 Y0; G43 Z5. H01 M08;M03S900;G65 P9800 A35. B6. D5.; G00 Z5. M09;G91 G28Z0;M30;纽威数控装备(苏州)O9800; #101 = #1;#102 = #2;#103 = #1 #2;#104 = #7; G00 X#103 ; G01 Z0 F120;WHILE #104 LE 90 DO 1;#110 = #103 *COS#104;#

16、120 = #103 *SIN#104; G01 X#110 Z#120 F80 ; G02 I#110;#104 = #104 + #7; END 1;M99;纽威数控装备(苏州)椭圆加工:零件材料45钢,毛坯为50mm100mm,按图要求完成数控加工程序。纽威数控装备(苏州)O0001; T0101 ;M03 S800; G0 X51. Z2.; G71 U1.5 R1. ;G71 P10 Q20 U0.5 W0.1 F150 ;N10 G1 X25.966; Z0.;Z-19.;X35.988 Z-29.; Z-46;X44.;X45.992 Z-47.; N20 Z-55.;G70 P

17、10 Q20 S1000 F120; G00 X100.;Z50.;S800 F150; #150 = 26.;N30 IF #150 LT 1 GOTO 40; M98 P0003;#150 = #150 - 2;GOTO 30 ;N40 G0 X30. Z2.; S1500 F80; #150 =0;M98 P0003; G0 X100. Z5.; M30;纽威数控装备(苏州)O0003;#101=20.; #102=13.; #103=20.;N20 IF #103 LT 1 GOTO 50;#104 = SQRT#101*#101 - #103*#103; #105 = #102*#1

18、04/#101;G01 X2*#105 + #150 #103 = #103 0.5; GOTO 20;N50 G00 U2. Z2.;M99Z#103 20;纽威数控装备(苏州)椭圆加工:假定椭圆长轴(X向)、短轴(Y向)半长分别为A和B。编程条件:编程原点在椭圆中心,A=50,B=30,椭圆轮廓为外轮廓,下刀点在椭圆右极限点,刀具直径18,加工深度10mm。O9800;G90 G54 G00 G17 G43 Z50. H01 ; M03 S1000; X60. Y-15.;Z5. M08;G01 Z-12.F800 ;WHILE #1 LE 360 DO 1;#2 = 50 *COS#1;

19、#3 = 30 *SIN#1; G01 X#2 Y#3 ; #1 = #1 + 0.5; END 1;G01 Y15.; G00 G40 X60.; Z100.M30G40;G42 X50. Y0. D01 F100;#1 = 0.5;(变量初始值0.5度)纽威数控装备(苏州)加工如下图所示的椭圆表面,材料为中碳钢。由于一般的数控系统无椭圆插补功能,手工编程可用宏程序实现编程计算。本例使用20键槽铣刀分两层铣削,每一次切削深度为5mm。按刀具刀具轨迹编程。纽威数控装备(苏州)主程序O0001N0001 G92X0.0Y0.0Z150.0; N0002 M03S300;N0003 G00X-80

20、.0; N0004 G00Z1.0; N0005 G01Z0.0F100.0工件坐标系原点设在工件中心距顶面上主轴正转,转速刀具移至椭圆左端点处快速接近工件慢速接近工件N0006 G65P0100A80.0B50.0C-5.0(椭圆长半轴为80,短半轴为50。Z向进刀5mm) N0007 G65P0100A80.0B50.0C-10.0椭圆长半轴为80,短半轴为50。Z向进刀5mmN0007 G00Z150.0;N0008 G00X0.0Y0.0; N0009 M05;N0010 M30;抬刀刀具回起点主轴停程序结束纽威数控装备(苏州)宏程序O1000#10=-#1;N1000 G01Z#3;

21、 WHIL#10LE#1DO1;(#1为长半轴=80,#2为短半轴=50,#10为X坐标(#3为Z向进刀深度(X坐标小于等于80循环加工上半椭圆#11=SQRT#1*#1-#10*#10*#2/#1;(#11为Y坐标用椭圆公式计算N1001 G01X#10Y#11F100.0; #10=#10+0.05;END1; #10=#1;WHIL#10GE-#1DO2;(切削进给(修改X坐标,X+0.05(#1为长半轴=80,#2为短半轴=50,#10为X坐标(X坐标小于等于80循环加工下半椭圆#11=-SQRT#1*#1-#10*#10*#2/#1;(#11为Y坐标用椭圆公式计算N1002 G01X

22、#10Y#11F100; #10=#10-0.05;END2; N1003 M99(切削进给(修改X坐标,X-0.05(返回主程序纽威数控装备(苏州)O1;G90 G54 G00 X0 Y0 ;G43 H2 Z100. M3 S1000 ; G01 Z0 M8 F200;#1=0.5. N10;每刀进给量;段落符号G01 X488.F2000; Y#1;X0; Y(#1+0.5); #1=#1+1;IF#1LE320.GOTO10;如果#1小于等于320.就回到此段开头G0 Z200.; M30;纽威数控装备(苏州)O100; #3=0;#1=30-tan10*#3; #2=30-tan10*

23、#3+0.2;G90 G54 G00 X50. Y45.; G43 H1 Z100. M3 S1000; G1 X#1 Y#3 F100 ;Z0;N1;G1 X#1 Y-#3 F2000; X-#1;X-#2 Y-#3+0.2; X#2; #3=#3+0.4;IF#3LE28.356GOTO1;G0 Z100.; M30;纽威数控装备(苏州)O100; #1=tg10*#2+19.411; #2=0; #3=75+#2/cos10.;G90 G54 G00 X25. Y0 ; G43 H1 Z100. M3 S1000; G1 X#1 Y#2 F100;Z0;N1;G1 X#1 Y#2 F2000;Z0;G2 X-#1 Y#2 R#3; G0 Z100.; #2=#2+0.2; IF

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论