数控编程与加工 第7章 数控加工宏编程.ppt

上传人:qwe****56 文档编号:80597837 上传时间:2023-03-23 格式:PPT 页数:41 大小:653KB
返回 下载 相关 举报
数控编程与加工 第7章 数控加工宏编程.ppt_第1页
第1页 / 共41页
数控编程与加工 第7章 数控加工宏编程.ppt_第2页
第2页 / 共41页
点击查看更多>>
资源描述

《数控编程与加工 第7章 数控加工宏编程.ppt》由会员分享,可在线阅读,更多相关《数控编程与加工 第7章 数控加工宏编程.ppt(41页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 1本章内容:本章内容:7.1 概述概述 7.2 FANUC系统的系统的A类宏程序及其应用类宏程序及其应用 7.3 FANUC系统的系统的B类宏程序及其应用类宏程序及其应用 第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 27.1 概述概述 1.1.概念概念v所谓用户宏程序是将一群命令所构成的功能像子程序一样事先输入到存储器中,再把这些功能用一个命令作为代

2、表,执行时只需写出这个代表命令,就可以执行其功能。我们将这一群命令称为宏程序本体,简称用户宏程序(或用户宏指令)。这个代表命令称为用户宏命令,也称为宏调用命令。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 3若水平方向去除的材料为,竖直方向去除的材料的宽度为,则上面的程序将变为如下形式。O0050;N1G90G54;(设定加工初始状态)N2M3S500;N3M08;N4G0X-20.0Y-20.0Z100;(其中X-20.0Y-20.0为初始点坐标)N5G1Z2.0F500;N6Z-10.0;(

3、到达切削层深度)N7G41XaD01F150;(进行刀具半径补偿)N8Y(80-b);N9X(100-a);N10Yb;N11X0;N12G40X-20.0Y-20.0;(取消刀具半径补偿)N13G0Z200;M30;(程序结束)将其中的变量用宏程序中的变量#i对应为:#1,#2,则宏程序即可写为如下形式:O0050;N1G90G54M03S500;N2M08;N3G65P0501A10.0B10.0;N4M05;N5M30;经分析,可以写出如下加工程序(取毛坯上表面的左下角点为工件原点)。O0050;N1G90G54;(设定加工初始状态)N2M3S500;N3M08;N4G0X-20.0Y-

4、20.0Z100;(其中X-20.0Y-20.0为初始点坐标)N5G1Z2.0F500;N6Z-10.0;(到达切削层深度)N7G41X10.0D01F150;(进行刀具半径补偿)N8Y70.0;N9X90.0;N10Y10.0;N11X0;N12G40X-20.0Y-20.0;(取消刀具半径补偿)N13G0Z200;M30;(程序结束)O0501;N1G0X-20.0Y-20.0Z100.0;N2G1Z2.0F500;N3Z-10.0;N4G41X#1D01F150;N5Y80.0-#2;N6X100.0-#1;N7Y#2;N8X0;N9G40X-20.0Y-20.0;N10G0Z200.0

5、;N11M99;例如:现有一批零件需要加工。毛坯的尺寸100mm80mm40mm,要求切出一个长、宽分别为10mm,深10mm的台阶,如图所示,编写加工程序。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 47.1 概述概述 2.2.宏宏编编程的技程的技术术特点特点 v宏程序的主要特征有以下几个方面:a.可以在用户宏本体中使用变量;b.可以进行变量之间的运算;c.可以用用户宏对变量进行赋值;d.程序可以跳转令。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程

6、数数数数控控控控编编编编程程程程与与与与加加加加工工工工 5n宏本体中使用变量:n例如:G01F100可以写为#1=100,G01F#1;n变量之间进行运算:n算术运算(+*/);例如:#2=10,#3=20,#1#2+#3;那么G01G90X#1F200后,X=30。n圆整函数(ROUND,FIX,FUP);例如:假设#1=2.1,#2=-2.1;n当执行#3=FUP#1时,3.0赋给#3。n当执行#3=FIX#1时,2.0赋给#3。n当执行#3=FUP#2时,-3.0赋给#3。n当执行#3=FIX#2时,-2.0赋给#3。1.三角函数(SIN,COS,TAN,ATAN,ASIN,ACOS)

7、;n例如:#1=30,X=10*SIN#1,那么X=5。1.混合函数(SQRT,ABS);例如:#2=4,Y=SQRT#2,那么Y=2。n对变量进行赋值:例如:#19=10001.程序可以跳转:例如:GOTO5程序转到N5段执行程序。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 67.1 概述概述 3.3.变变量及其量及其应应用用v使用用户宏程序时,数值可以直接指定或用变量指定。变量是指可以在宏主体的地址上代替具体数值,在调用宏主体时再用引数进行赋值的符号:#i(i=1,2,3)。使用变量可以使

8、宏程序具有通用性。宏主体中可以使用多个变量,用变量号码进行识别。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 7(1)变量的形式变量是用符号“#”后面加上变量号码所构成的,即#i(i=1,2,3)例如:#3;#100。也可用表达式的形式表示,例如:#100;#1+#2-5;#10/3。(2)变量的引用地址符后的数值可以用变量置换。例如:F#101,当#101=500时,F#101与F500指令相同,X#101与X500指令相同。注意:作为地址符的O、N、/等,不能引用变量。第第第第7 7 7 7

9、章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 8 (3)未定义变量 当变量值未定义时,这样的变量成为“空”变量。变量#0总是空变量。它不能写,只能读。当引用一个未定义的变量时,地址本身也被忽略。例如:当变量#2的值是空时,并且变量#3的值是0时,G00X#2Y#3的执行结果为G00Y0。#2=#1+#1#2=0#2=#1+#1#2=0#2=#1*2#2=0#2=#1*2#2=0#2=#1#2=0#2=#1#2=当#1=0时当#1=时除了EQ、NE的场合外,与0相同。#1GT#0不成立#1GT#0不成立#1GE#0成立

10、#1GE#0成立#1NE#0不成立#1NE#0成立#1EQ=#0不成立#1EQ=#0成立当#1=0时当#1=时 除了用赋值外,其余情况下与0相同。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 9 变量从功能上主要可归纳为两种,即:系统变量(系统占用部分),用于系统内部运算时各种数据的存储,例如刀具偏 置和当前位置数据。但是,某些系统变量只能读,不能写。系统变量是自动控制和通用程序开发的基础。系统变量工件偏置量#5221#5315单步、连续控制#3003#3004各轴现时位置#5021#5026时

11、钟#3001,#3002各轴程序段终点位置#5001#5006P/S报警信息#3000,#3006D,E,F,H,M,S,T等#4107#4120刀具补偿量#2000#2999G代码#4001#4018接口信号DO#1100#1135镜像#3007接口信号DI#1000#1035用途变量号码用途变量号码第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 10FANUC0i系统的变量类型系统变量用于读写各种NC数据项,如当前位置、刀具补偿值。系统变量#1000以上公共变量可在不同的宏程序间共享。关闭电源

12、时变量#100#149被初始化成“空”,而变量#500#531保持数据,即使在断电时也不清除。公共变量#100#149(#199)#500#531(#999)局部变量只能在宏中使用,以保持操作的结果,关闭电源时,局部变量被初始化成“空”。宏调用时,自变量分配给局部变量。局部变量#1#33用户变量这个变量总是空的,不能赋值。“空”变量#0功 能变量类型变 量 名第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 117.2 FANUC系统的系统的A类宏程序及其应用类宏程序及其应用 1.1.宏宏调调用指令

13、用指令 vA类宏程序是以G65HxxP#xxQ#xxR#xx的格式输入的,而B类宏程序则是以直接的公式和语言输入的。(1)非模态调用(G65)调用格式:G65P_L_;G65宏调用代码;P_P之后的宏程序号码;L_循环次数(省略时为1);由地址符及数值(有小数点)构成,给宏主体中所对应的变量赋予实际数值。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 12O0010;G65P9001L3A2.0B3.0;M30;O9001;#3=#1+#2;IF#3GT360GOTO10;G00G91X#3N10

14、M99;例如:引数赋值有以下两种形式:引数赋值和引数赋值。地址变量地址变量A#1Q#17B#2R#18C#3S#19D#7T#20E#8U#21F#9V#22H#11W#23I#4X#24J#5Y#25K#6Z#26M#13引数赋值引数赋值所指定的地址和变量号的对应关系所指定的地址和变量号的对应关系第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 13地址变量地址变量A#1K5#18B#2I6#19C#3J6#20I1#4K6#21J1#5I7#22K1#6J7#23I2#7K7#24J2#8I8#

15、25K2#9J8#26I3#10K8#27J3#11I9#28K3#12J9#29I4#13K9#30J4#14I10#31K4#15J10#32I5#16K10#33J#17引数赋值引数赋值所指定的地址和变量号的对应关系所指定的地址和变量号的对应关系 第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 14非模态调用G65示例:编制一个宏程序加工轮圆上的圆周螺纹孔。圆周上的半径为I,起始角度为A,间隔为B,钻孔数为H,圆的中心是(X,Y)。指令可以用绝对坐标或增量坐标编程,顺时针方向钻孔时B应指定负

16、值。调用格式G65P9100XxYyZzRrFfIiAaBbHh;X:圆心的X坐标(绝对值或增量值指定),用#24表示;Y:圆心的Y坐标(绝对值或增量值指定),用#25表示;Z:孔深,用#26表示;R:趋近点坐标,用#18表示;F:切削进给速度,用#9表示;I:圆半径,用#4表示;A:第一个孔的角度,用#1表示;B量角,用#2表示;H:孔数,用#11表示。宏调用程序O0006;主程序名G90G92X0Y0Z100.0;绝对坐标编程,刀具起始点在工件原点上方100mm处G65P9100X200.0Y100.0R25.0Z-60.0F450I200.0A0B-30.0H6;非模态G65调用赋值M3

17、0;变量的含义:#3:储存03组的G代码;#5:下个孔的X坐标;#6:下个孔的Y坐标。宏程序O9100;主程序名#3=#4003;储存03组G代码G81Z#26R#18F#9K0;钻孔循环IF#3EQ90GOTO1;在G90方式下转移到N1#24=#5001+#24;计算圆心的X坐标#25=#5002+#25;计算圆心的Y坐标N1WHILE#11GT0DO1;直到剩余孔为0#5=#24+#4*COS#1;计算X轴上的孔位#6=#25+#4*SIN#1;计算Y轴上的孔位G90X#5Y#6;移动到目标位置之后执行钻孔#1=#1+#2;更新角度#11=#11-1;孔数减1END 1;G#3 G80;

18、返回原始状态的G代码M99;第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 157.2 FANUC系统的系统的A类宏程序及其应用类宏程序及其应用 1.1.宏宏调调用指令用指令 (2)模态调用(G66)调用格式:G66P_L_;模态调用宏程序G67;取消用户宏程序O0011;N40G66P9002L3A2.0B3.0;N50G00G90X150.0;N60Y220.0;N70X200.0Y330.0;N80G67;N100M30;O9002;N50G00Z-#1;N60G01Z-#2F300;N70

19、G00G91X#3;N100M99;例如:第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 16说明:1、在G66之后,用地址P指定模态代码调用的程序号。2、当要求重复时,在地址L后指定从19999的重复次数。3、与非模态代码G65调用相同,自变量指定的数据传递到宏程序体中。4、调用可以嵌套4级,包括非模态代码调用G65和模态代码调用G66注意:1、在G66程序段中,不能调用宏程序。2、G66必须在自变量之前指定。3、在只有诸如辅助功能,但无移动指令的程序段中不能调用宏程序。4、局部变量(自变量)只

20、能在G66程序段中指定。每次执行模态代码调用时,不再设定局部变量。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 17模态调用G66示例:用宏程序编制G81固定循环的操作。加工程序使用模态调用。固定循环由下面基本动作组成:X、Y轴定位;刀具快速定位到参考平面高度R点;切削进给到Z点;快速退回到R点或初始高度点。调用格式调用格式G66P9100XxYyZzRrFfLl;X:孔的X坐标(绝对值指定),用#24表示;Y:孔的Y坐标(绝对值指定),用#25表示;Z:孔深Z坐标(绝对值指定),用#26表示;

21、R:参考平面高度点坐标,用#18表示;F:切削进给速度,用#9表示;L:孔加工重复次数;宏调用程序O0007;主程序名G92X0Y0Z100.0;刀具起始点在工件原点上方100mm处G00G90X80.0Y20.0;绝对坐标编程,快速点定位G66P9100Z-60.0R6.0F450;G90X60.0Y10.0;X80.0;Y-10.0;X30.0;X90.0Y-30.0;G67;M30;宏程序O9100;主程序名#1=#4001;储存G00/G01代码;#2=#4003;储存G90/G91代码;#3=#4109;储存切削进给速度#5=#5003;储存钻孔开始的Z坐标G00G90Z#18;定位

22、在R点G01Z#26F#9;切削进给到Z点IF#4010EQ98GOTO1;返回到初始高度点G00Z#18;定位在R点GOTO2;N1G00Z#5;定位在初始高度N2G#1G#2F#3;恢复模态信息M99;第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 187.2 FANUC系统的系统的A类宏程序及其应用类宏程序及其应用 1.1.宏宏调调用指令用指令 vA类宏程序是以G65HxxP#xxQ#xxR#xx的格式输入的,而B类宏程序则是以直接的公式和语言输入的。(3)用G代码调用宏程序格式:G_;例如

23、,将宏主体O9010用G81调用,如下所示:1、将宏程序号设为O9010;2、将与O9010对应的参数号码(6050)上的值设定为81,即参数6050=81;第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 19用G81调用宏程序O9010,如下所示:O0012;G81X20.0Y30.0Z40.0;M30;O9010;M99;第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 207.2 FANUC系统的

24、系统的A类宏程序及其应用类宏程序及其应用 2.2.宏功能指令宏功能指令 一般形式:G65HmP#iQ#jR#k式中,m宏程序功能,数值范围0199;#i运算结果存放处的变量名;#j被操作的第一个变量,也可以是一个常数;#k被操作的第二个变量,也可以是一个常数。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 21G代码H代码功能定义G65H01定义、替换#i=#jG65H02加#i=#j#kG65H03减#i=#j#kG65H04乘#i=#j#kG65H05除#i=#j/#kG65H11逻辑“或”#

25、i=#jOR#kG65H12逻辑“与”#i=#jAND#kG65H13异或#i=#jXOR#kG65H21平方根#i=SQRT#jG65H22绝对值#i=#kG65H23求余#i=#jtrunc#j/#k#kG65H24BCD转换为二进制码#i=BIN#jG65H25二进制码转换为BCD#i=BCD#jG65H26复合乘/除#i=#i#j#kG65H27复合平方根1#i=SQRT#j2#k2G65H28复合平方根2#i=SQRT#j2#k2G65H31正弦#i=#jSIN#kG65H32余弦#i=#jCOS#kG65H33正切#i=#jTAN#kG65H34反正切#i=#jATAN#kG65H

26、80无条件转移GOTOnG65H81有条件转移1IF#j#k,GOTOnG65H82有条件转移2IF#j#k,GOTOnG65H83有条件转移3IF#j#k,GOTOnG65H84有条件转移4IF#j#k,GOTOnG65H85有条件转移5IF#j#k,GOTOnG65H86有条件转移6IF#j#k,GOTOnG65H99产生P/S报警P/S报警号为500n宏宏功功能能指指令令表表第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 227.2 FANUC系统的系统的A类宏程序及其应用类宏程序及其应用

27、3.3.编编程程实实例例 (1)在一根轴上加工N个槽,每个槽的宽度为,槽的间距为,槽底直径为,棒料直径,并且设所给材料足够长,试编写程序加工该零件,现有一零件参数为N50个槽,槽宽4mm,间隔3mm,槽底直径35mm,工件直径40mm,刀宽为4mm,现编写程序加工。(1)零件工艺过程分析该零件是一个比较简单的例子,假定槽宽与刀宽相等。零件的精度要求不高,为了使程序有更广泛的适应性,将宏程序做成一个子程序,用主程序来调用实现零件的加工。零件的加工过程如下:将刀具移至加工起点进刀切削第一个槽计算下一槽的位置并将刀具移到此位置加工下一个槽如此至最后一个槽加工完为止。(2)零件加工过程中所使用的变量通

28、过分析,要加工该零件,需要如下一些变量:槽宽#200=a1槽间间隔#201=a2槽底直径#202=a3工件直径#203=a4切槽刀宽度#204每加工一个槽后,切槽刀在Z轴方向移动的距离#205(等于槽间距加上槽宽)槽的起点坐标Xs=#206,Zs=#207加工终点的坐标Xf=#208,Yf=#207计算槽数目的变量#215加工槽的总数#216根据程序流程图编制程序宏程序O9061;N10G65H83P160Q#204R#200;N20G65H01P#215Q0;计数器变量清零N30G65H02P#205Q#200R#201;计算#205N40G65H02P#206Q#203R4;N50G65H

29、02P#207Q#201R#204;N60G65H01P#207Q-#207;取负值后作为第一个槽的Z向起点N70G65H01P#208Q#202;N80G00X#206Z#207M08;N90G01X#208Z#207F20;N100G04X2;N110G00X#206;N120G65H03P#207Q#207R#205;N160M99;N130G65H02P#215Q#215R1;N140G65H84P90Q#215R#216;N150M08;主程序O0001;N10G65H01P#200Q4;槽宽赋值N20G65H01P#201Q3;槽间间隔赋值N30G65H01P#202Q35;槽底直

30、径赋值N40G65H01P#203Q40;工件直径赋值N50G65H01P#204Q4;切槽刀宽赋值N60G65H01P#216Q50;槽数赋值N70G00X80Z100;起刀点位置N80M98P9061;调用宏程序N90M30;程序结束第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 23(2)零件厚度为10mm,试编写该零件图的外轮廓精加工程序。(用A类宏程序编程。)(1)零件加工过程中所使用的变量该零件是对外轮廓进行铣削精加工的一个比较简单的例子,通过分析,要加工该零件,需要如下一些变量:X方

31、向的尺寸#101;X方向的尺寸#103;Y方向的尺寸#102;Y方向的尺寸#104;圆弧半径尺寸#105;工件厚度尺寸#106;Y方向退刀量#107;主轴转速#108;进给速度#109N70X-#103;N80G03G91X-#105Y-#105R#105;N90G65P#107Q#104R5;N100G01G01Y-#107;N110G00G40X-10Y-10;N120G90Z100;N130X0Y0;N140M08;N150M99;(2)根据程序流程图编制程序为了使程序有更广泛的适应性,使程序能完成同类型零件的加工,将宏程序做成一个子程序,用主程序来调用实现零件的加工。宏程序O9062;

32、N10G54G00G90X-10Y-10Z50;N20G00Z5;快速靠近工件N30G00G42X-5Y0D01;进行刀具半径补偿N40G01Z-12F#109;Z向下N50G01X#101;X方向切削工件N60Y#102;Y方向切削工件(3)主程序O0002;N10G65H01P#101Q120;X方向尺寸1赋值N20G65H01P#102Q80;Y方向尺寸1赋值N30G65H01P#103Q90;X方向尺寸2赋值N40G65H01P#104Q50;Y方向尺寸2赋值N50G65H01P#105Q30;刀具半径赋值N60G65H01P#106Q10;工件厚度赋值N70G65H01P#108Q5

33、00;主轴转速赋值N80G65H01P#109Q50;切削进给速度赋值N90M03S#108;设定主轴转速N100M98P9062;调用宏程序N110M30;程序结束第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 24(3)用宏程序和子程序功能顺序加工圆周等分孔。设圆心在O点,它在机床坐标系中的坐标为(X0,Y0),在半径为r的圆周上均匀地钻几个等分孔,起始角度为,孔数为n。以零件上表面为Z向零点。使用以下保持型变量:#502:半径r;#503:起始角度;#504:孔数n,当n0时,按逆时针方向加

34、工,当n0时,按顺时针方向加工;#505:孔底Z坐标值;#506:R平面Z坐标值;#507:F进给量。使用以下变量进行操作运算:#100:表示第i步钻第i孔的记数器;#101:记数器的最终值(为n的绝对值);#102:第i个孔的角度位置i的值;#103:第i个孔的X坐标值;#104:第i个孔的Y坐标值;用用户宏程序编制的钻孔子程序如下:O9010;N110G65H01P#100Q0;#100=0N120G65H22P#101Q#504;#101=#504N130G65H04P#102Q#100R360;#102=#100360oN140G65H05P#102Q#102R#504;#102=#1

35、02/#504N150G65H02P#102Q#503R#102;#102=#503+#102当前孔角度位置i=+(360oi)/nN160G65H32P#103Q#502R#102;#103=#502COS(#102)当前孔X坐标N170G65H31P#104Q#502R#102;#104=#502SIN(#102)当前孔Y坐标N180G90G00X#103Y#104;定位到当前孔N190G00Z#506;快速进到R平面N200G01Z#505F#507;加工当前孔N210G00Z#506;快速退到R平面N220G65H02P#100Q#100R1;#100=#100+1孔计数N230G65

36、H84P-130Q#100R#101;当#100#101时,向上返回到N130段N240M99子程序结束调用上述子程序的主程序如下:O0010;N10G54G90G00X0Y0Z20;进入坐标系N20M98P9010;调用子程序,加工圆周孔N30Z20;抬刀N40G00G90X0Y0;返回加工坐标系零点N50M30;程序结束设置G54:X=-350,Y=-150,Z=-100。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 257.3 FANUC系统的系统的B类宏程序及其应用类宏程序及其应用 1.

37、1.宏功能基本指令宏功能基本指令 vB类用户宏程序与A类用户宏程序的主要区别是通过算术和逻辑运算进行赋值,以直接的公式进行输入的。同一运算分别用A、B两类用户宏程序实现的程序段如下:vA类:G65H02P#1Q#2R#3vB类:#1=#2+#3第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 26(1)变量的赋值赋值可以分为直接赋值和调用赋值,它们的应用分别为:直接赋值:#1=10调用赋值:G65P1000A10;其中,P1000代表子程序号,A代表引数赋值的地址,A10中的10代表宏主体中的变量#

38、1中的值是10。所以,这两种赋值方式是等效的。(2)运算指令宏程序运算符右边的表达式可包含常量和/,或有函数运算符组成的变量。表达式中的变量#i和#j可以用常数替换,左边的变量可以用表达式赋值。第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 27#i=COS#j余弦函数#i=EXP#jex#i=ASIN#j反正弦函数#i=LN#j自然对数#i=SIN#j正弦函数函数运算#i=FUP#j小数点后进位#i=#jAND#k与#i=FIX#j小数点后舍去#i=#jXOR#k异或#i=ROUND#j四舍五入

39、整数化#i=#jOR#k或逻辑运算#i=ABS#j取绝对值#i=#j/#k除#i=SQRT#j平方根#i=#j*#k乘乘除运算#i=ATAN#j反正切函数#i=#j-#k减#i=TAN#j正切函数#i=#j+#k加加减运算#i=ACOS#j反余弦函数函数运算#i=#j变量的定义和替换表达式运算指令表达式运算指令FANUC 0iFANUC 0i系统的变量类型系统的变量类型 第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 28(3)程序格式及程序号宏程序格式如下:O_;宏程序号,O后面为4位数,000

40、18999N10;指令代码N_M99;程序结束程序编号使用规则O0001O7999程序自由存储、删除和编辑O8000O8999不经设定,该程序就不能进行存储、删除和编辑O9000O9019用于特殊调用的宏程序O9020O9899不设定参数,就不能进行存储、删除和编辑O9900O9999用于机器人操作程序参数号和程序号之间的对应关系参数号和程序号之间的对应关系 第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 297.3 FANUC系统的系统的B类宏程序及其应用类宏程序及其应用 2.2.宏功能控制指令

41、宏功能控制指令 (1)无条件转移(GOTO语句)功能转向程序的第Nn句。当指定的顺序号大于19999时,出现128号报警,顺序号可以用表达式。格式:GOTOn;n为顺序号(199999)例如:GOTO66;程序转移至N66段执行程序(2)条件转移(IF语句)a.IF条件表达式GOTOn;应用举例:计算数值110的总和。O0711;#1=0;#2=1;N1IF#2GT10GOTO2;#1=#1+#2;#2=#2+1;GOTO1;N2M30;第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 30b.IF

42、条件表达式THEN;应用举例:使用直径为18mm的硬质合金立铣刀铣削加工如图7-8所示的台阶(材料45钢,硬度36HRC),编写加工程序。设定变量:#1铣削深度变量;#2铣削最后深度的判别值O001;G90G54G40G17M3S800;G0X-10Y-80;G43Z20H01;Z0;#1=0;WHILE#1GT-10DO1;#1=#1-0.6;IF#1LE-10THEN#1=-10;G1Z#1F1500;G41G1X-75D01;Y50;X75;Y-50;X-100;G40G0Y-80;END1;G0Z150;M30;第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程

43、数控加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 31n(3)循环(WHILE语句)功能在WHILE后指定一个条件表达式,条件满足时,执行DO到END之间的语句,否则,执行END后的语句。格式:WHILE条件表达式DOm;(m=1,2,3)ENDm;END1;WHILE条件表达式DO1;程序END1;WHILE条件表达式DO1;程序END1;WHILE条件表达式DO2;END2;错误的!程序a.数13可以多次使用。b.DO的范围不能交叉WHILE条件表达式DO1;程序第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控加工宏编程数数数数控控控控编

44、编编编程程程程与与与与加加加加工工工工 32WHILE条件表达式DO1;IF 条件表达式 GOTOn;END1;NnIF条件表达式GOTOn;WHILE条件表达式DO1;NnEND1;错误的!WHILE条件表达式DO1;WHILE条件表达式DO2;WHILE条件表达式DO3;END3;END2;END1;c.条件转移可以跳出循环 d.条件不能进入循环区内e.循环可以三重嵌套应用举例:计算数值110的总和。O0713;#1=0;#2=1;WHILE#2LE10DO1;#1=#1+#2;#2=#2+1;END1;M30;第第第第7 7 7 7章章章章 数控加工宏编程数控加工宏编程数控加工宏编程数控

45、加工宏编程数数数数控控控控编编编编程程程程与与与与加加加加工工工工 337.3 FANUC系统的系统的B类宏程序及其应用类宏程序及其应用 3.3.应应用用举举例例 (1)、编写如图所示的轴类零件加工程序。自变量定义如下:#1=AA直径D1(毛坯外径)#2=BB直径D2(直径表示)#3=CC直径D3(直径表示)#4=II直径D4(直径表示)#5=JJ长度Z1#6=KK长度Z2#7=DD长度Z3#8=EE倒角边长(C)#9=FF刀具起点纵向工件坐标值L#11=HH刀具起点纵向工件坐标值#18=RR背吃刀量(半径表示)#19=SS精加工余量(直径表示)#20=TT粗加工转速(r/min)#21=UU

46、精加工转速(r/min)#22=VV粗加工进给量(mm/r)#23=WW精加工进给量(mm/r)#24=XX圆弧半径值主程序如下:O;主程序名N10G18G99G97G21G95G90G54G40;工艺加工状态设置N20G65P221A_B_C_D_E_F_H_I_J_K_R_S_T_U_V_W_X_;调用规格不同轴加工的用户宏程序N50M05;主轴停止N60M30;程序结束并回到程序开头宏程序如下:O221;宏程序名N010#30=FUP#1-#2-#19/2/#18;计算第一级粗车循环次数(上取整)N015#31=#1-#2-#19/#30;计算第一级径向粗加工每次背吃刀量N020#40=

47、FUP#2-#3-#19/2/#18;计算第二级粗车循环次数(上取整)N025#41=#2-#3-#19/#40;计算第二级径向粗加工每次背吃刀量N030#50=FUP#3-#4-#19/2/#18;计算第三级粗车循环次数(上取整)N035#51=#3-#4-#19/#50;计算第三级径向粗加工每次背吃刀量N040T0101;调用1号外圆粗车刀具N050G90G00X2*#11Z#9S#20M03;N055#28=1;切削次数初始值赋值N060WHILE#28GT#30DO1;当#28大于#30时,跳转到N095段N065G01X#1Z#5+5F3*#22;直线插补到工件右端附近N070U-#

48、31F#22;径向切入一个背吃刀量N075W-#5-5+#19/2;粗车D2外圆N080X#1+5;粗车D2外圆的左端面N082G00Z#9;返回起刀点N085#28=#28+1;切削次数累加1N090#31=#31+#28;背吃刀量递减N095END1;返回循环体2N100#28=1;累加器置1N105WHILE#28GT#40DO2;当#28大于#40时跳转到N150段N110G01X#1Z#5+5F3*#22;直线插补到工件右端附近N115X#2F#22;径向直线插补到D2外圆N120U-#41;径向切入一个背吃刀量N125W-#5+5-#6+#19/2;粗车削D4外圆N130U#3-#

49、4/2;粗车圆球面右端面N135G03U#2-#3/2W-#6-#7R#2-#3/2+#24-#41;粗车圆球面N138G00Z#9;返回起始点N140#28=#28+1;背切削次数累加1N145#41=#41*#28;吃刀量递增N150END2;返回循环体2N155#28=1;计数器置1N160WHILE#28GT#50DO3;当#28大于#50时跳转到N200段N165G01X#1Z#5+5F3*#22;直线插补到工件右端附近N170X#3F#22;径向直线插补到D3外圆N175U-#51;径向切入一个背吃刀量N180W-#5+5-#6+#19/2;粗车D4外圆N185X#1;粗车D4外圆

50、左端面N188G00Z#9;返回起到点N190#28=#28+1;切削次数累加1N195#51=#51*#28;背吃刀量递增N200END3;返回循环体3N205G00X2*#11Z#9;刀具快移到换刀点N210T0202;调用2号外圆精加工车刀N215G97M03S#21;设置精加工工艺参数N220G41G01X#4Z#5+5F5*#23D02;建立左刀补,直线插补到右端附近N225X#4-#9-1.0Z#5+1.0F#23;直线插补到倒角C的延长线上N230X#4Z#5-#9;倒角N235Z#6;精车D4外圆N240X#3;精车D4外圆左端面N245G03X#2Z#7R#24;精车圆球面N

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com