《FANUC数车宏程序.ppt》由会员分享,可在线阅读,更多相关《FANUC数车宏程序.ppt(36页珍藏版)》请在三一文库上搜索。
1、FANUC数车宏程序,永州职业技术学院 何玉山,宏程序定义,利用数控系统提供的变量、数学运算功能、逻辑判断、条件转移等功能编写的加工程序。,宏程序中的变量,一个普通的零件加工程序指定G码并直接用数字值表示移动的距离,例:G01 X100.0。而利用用户宏,既可以直接使用数字值也可以使用变量号。当使用变量号时,变量值既可以由程序改变,也可以用MDI面板改变。 #1=#2+100 G01 X#1 F300,变量的表示,变量用变量符号(#)和后面的变量号指定,例:#1 表达式可用于指定变量号,表达式必须封闭在方括号里。例:#1+#2-12,变量的类型,根据变量号将变量分为三类(#0为空变量) ,见下
2、表:,变量的范围,小数点的省略 当程序中定义变量值时,小数点可以省略 例:当定义#1=123;变量#1的实际值是 123.000,变量的引用 为了在程序中使用变量,指定后面跟变量号的地址。当用表达式指定一个变量时,须用方括号括起来。例:G01 X#1+#2 F#3。 引用的变量值根据地址的最小输入增量自动舍入。 例:G00 X#1;其中#1值为12.3456,CNC最小输入增量1/1000mm,则实际指令值为G00 X12.346。 改变引用的变量值的符号,要把“”号放在(#)前面。 例:G00 X#1; 当引用未定义的变量时,变量及地址字都被忽略。例:#1=0 ,#2=“空”, 则G00 X
3、#1 Y#2;的执行结果是G00 X0;,变量的赋值,变量的算术与逻辑运算,变量的运算符 等于: EQ 格式: #j EQ #k 不等于: NE 格式: #j NE #k 大于: GT 格式: #j GT #k 小于: LT 格式: #j LT #k 大于等于:GE 格式: #j GE #k 小于等于:LE 格式: #j LE #k,宏程序语句的转移循环,在程序中,使用IF语句和GOTO语句可以改变控制的流向。有三种转移和循环操作可供使用,无条件转移(GOTO)语句,条件转移(IF)语句,IFTHEN,示例程序,注:#2=#2+#1应改为 #2=#2+1,循环(WHILE)语句,嵌 套 在DO
4、END之间循环中的标号(13)可根据需要多次使用。但是当程序有交叉重复循环(DO范围的重叠)时,会出现P/S报警NO.124,说明 1.无限循环:当指定DO而没有WHILE语句时,产生从DO到END的无限循环。 2.处理时间:当在GOTO语句中有标号转移的语句时,进行顺序号检索,反向检索要比正向检索的时间长,用WHILE 语句实现循环可减少处理时间。 3未定义的变量:在使用EQ和NE的表达式中和零有不同的效果,在其他形式的表达式中,空被当作零。,示例程序,宏程序在车床编程中的应用实例,参数编程 参数编程用于系列零件的加工,此系列零件形状相同,但有部分尺寸不同。如果将这些不同的尺寸用宏变量(参数
5、)形式给出,由程序自动对相关节点坐标进行计算,则可用同一程序完成一个系列零件的加工。 如下图示:该系列零件的右端面半球球径可取R15和R10,可将球径用变量表示。编程零件设在工件右端面中心,棒料45。,从图中可以看出,编程所需节点,除A、D、E三点外,B、C点均与球径R有关。下面给出各节点坐标。,加工程序如下: %1001 G98 S800 M3; T0101; G00 X45.0 Z2 .0M07; G71 U2 R1; G71 P10 Q20 U1 W0.2 F0.4 S750; N10 G0 X0 Z0 S1200; #1=15 G3 X2*#1 Z-#1 R#1 F0.15; G1 Z
6、-20-2*#1; X40.0 Z-60.0; Z-100.0; N20 X45; G70 P10 Q20; G0 X200. Z200.0; M30;,方程曲线的车削加工 在实际车削加工中,有时会遇到工件轮廓是某种方程曲线的情况,此时可采用宏程序完成方程曲线的加工。 1.方程曲线车削加工的走刀路线: 粗加工:应根据毛坯的情况选用合理的走刀路线。 对棒料、外圆切削,应采用类似G71的走刀路线; 对盘料,应采用类似G72的走刀路线; 对内孔加工,选用类似G72的走刀路线较好,此时镗刀杆可粗一些,易保证加工质量。 精加工:一般应采用仿形加工,即半精车、精车各一次,椭圆轮廓的加工 对椭圆轮廓,其方程
7、有两种形式。对粗加工,采用G71/G72走刀方式时,用直角坐标方程比较方便;而精加工(仿形加工)用极坐标方程比较方便。 极坐标方程 直角坐标方程:,注意:方程式中的X、Z为数车坐标轴,通常ab,且X为直径值。,示例: 加工下图所示a=20,b=60椭圆轮廓,棒料45,编程零点放在工件右端面。 O9988 G98 S700 M3; T0101; G0 X41 Z2; G1 Z-100 F150; 粗加工开始 G0 X42; Z2; #1=20*20*4; 4a2 #2=60; b #3=35 ; X初值(直径值) WHILE #3 GE 0 DO1; 粗加工控制 #4=#2*SQRT1-#3*#
8、3/#1; Z G0 X#3+1 ; 进刀 G1 Z#4-60+0.2 F150; 切削 G0 U1; 退刀 Z2; 返回 #3=#3-4; 下一刀切削直径 END1;,#10=0.8; x向精加工余量 #11=0.1; z向精加工余量 WHILE #10 GE 0 DO1; 半精精加工控制 G0 X0 S800; 进刀,准备精加工 #20=0 ; 角度初值 WHILE #20 LE 90 DO2; 曲线加工 #3=2*20*SIN#20; X #4=60*COS#20; Z G1X#3+#10Z#4+#11-60 F100; #20=#20+1; END2; G1 Z-100; G0 X45
9、 Z2; #10=#10-0.8; #11=#11-0.1; END1; G0 X100 Z200; M30; FANUC Oi-T,抛物线加工 加工下图所示抛物线孔,方程为Z=X2/16,换算成直径编程形式 为Z=X2/64,则X=sqrtZ/8。采用端面切削方式,编程零点放在 工件右端面中心,工件预钻有30底孔。,参考程序: O6688 G98S700M3 T0101 G0X30Z2 #3=35 X初始值 WHILE#3LE78DO1 粗加工条件控制 #4=#3*#3/64 Z G0X#3-2 X精加工余量2mm G1Z#4-100+0.2F150 Z精加工余量0.2mm G0Z2 回刀 #3=#3+2 进刀 END1 粗加工结束,G0Z100 退刀 X100 S1200M3 T0202 G0X30Z2 G0X80 G1Z1.4 精加工定位 #1=80 X初始值 WHILE#1GE30DO1 精加工条件控制 #2=#1*#1/64 Z值 #1=#1-0.2 精加工步距控制 G1X#1Z#2-100F0.2 精加工 END1 精加工结束 G0X100Z200 M30,谢 谢!,谢谢大家,
链接地址:https://www.31doc.com/p-2090104.html