FANUC宏程序怎么运用的?哪个能教教我,详细点阿
1个回答
展开全部
1、宏指令编程概述
在数控加工中经常会遇到一些非圆曲线(如椭圆、抛物线、双曲线、螺旋线、三角函数曲线等)的加工,这些曲线都没有自己的插补指令(即使有也是选择功能),用普通的手工编程方法需算出很多点的坐标,少则几十个点,多则上千上万个点,处理周期长、计算量大、精度差、非常容易出错,难以满足生产需求。
随着数控技术的发展,先进的数控系统不仅向用户编程提供了一般的准备功能和辅助功能,而且为编程提供了扩展数控功能的手段,FANUC数控系统的宏指令编程,应用灵活、形式自由,不仅可以利用表达式进行算术运算,还可以进行逻辑运算。用宏指令编程使加工程序简练易懂,实现了普通编程难以实现的功能,即非圆曲线的加工。
宏指令还可以对形状类似或相似的系列零件进行编程(不同数值的尺寸都设成变量),把它作为子程序,然后在主程序中进行宏程序调用,给各个尺寸(即变量)进行赋值,这样使程序数量大大减少,减少了占用系统的空间,方便了程序的管理。现有的数控粗加工复合循环指令要么没有,要么不能完全满足一些特殊情况下的应用,通过宏指令也可以对零件的粗加工进行复合循环编程,使程序简化,提高了编程效率。
用户宏程序的最大特点是:可以对变量进行运算,使程序应用更加灵活、方便。使用用户宏程序时,数值可以直接指定,也可以用变量指定。
下面以FANUC 0i数控系统为例,介绍用户宏程序编程在数控车削中的应用。
2、宏指令在椭圆车削加工中的应用
在车削中椭圆的解析方程和参数方程如下图:
用宏指令编写椭圆的程序方法很多,可以用解析方程编写,也可以用参数方程编写,参数方程的编写应用较多,因为它车削出的椭圆表面粗糙度比较均匀,相对循环周期可短些。我们可以用循环语句(WHILE语句)编写,也可以用条件转移语句(IF语句)形成一个循环语句编写。下面举一个实例进行说明。
如下图所示工件,毛坯尺寸为φ45×100。
2.1 方法一
用解析方程、IF语句编程。
……
#1=30.0 定义Z轴起始位置(作为变量)
#2=30.0 定义椭圆长半轴(沿Z轴方向)
#3=20.0 定义椭圆短半轴(沿X轴方向)
#4=-[#2*SQRT[1.0-[10.0*10.0]/[#3*#3]]] Z轴终止位置
N1 #5=#3*SQRT[1.0-[#1*#1]/[#2*#2]] 计算短半轴(X轴)变量数值
G01 X[2*#5] Z[#1-#2] F0.1 椭圆插补
#1=#1-0.05 Z轴步距,每次0.05 mm
IF[#1GE#4] GOTO1 椭圆插补条件判断
……
2.2 方法二
用解析方程、WHILE语句编程。
……
#1=30.0 定义Z轴起始位置(作为变量)
#2=30.0 定义椭圆长半轴
#3=20.0 定义椭圆短半轴
#4=-[#2*SQRT[1.0-[10.0*10.0]/[#3*#3]]] 定义Z轴终止位置
WHILE [#1GE#4] DO1 循环语句
#5=#3*SQRT[1.0-[#1*#1]/[#2*#2]] 计算短半轴(X轴)变量数值
G01 X[2*#5] Z[#1-#2] F0.1 椭圆插补
#1=#1-0.05 Z轴步距,每次0.05mm
END1
……
2.3 方法三
用参数方程、IF语句编程。
……
#1=0 定义起始角度(作为变量)
#2=20.0 定义椭圆短半轴
#3=30.0 定义椭圆长半轴
#4=180-ASIN[10.0/#2] 终止角度
N1 #100=#2*SIN[#1] 短半轴(X轴)变量数值
#101=#3*COS[#1] 长半轴(Z轴)变量数值
G01 X[2*#100] Z[#101-#3] F0.1 椭圆插补
#1= #1+1 步距角为1°
IF[#1LE#4] GOTO1 条件判别语句
……
2.4 方法四
用参数方程、WHILE语句编程。
……
#1= 0 定义起始角度(作为变量)
#2=20.0 定义椭圆短半轴
#3=30.0 定义椭圆长半轴
#4=180-ASIN[10.0/#2] 终止角度
WHILE[#1LE#4] DO1 循环语句
#100=#2*SIN[#1] 短半轴(X轴)变量数值
#101=#3*COS[#1] 长半轴(Z轴)变量数值
G01 X[2*#100] Z[#101-#3] F0.1 椭圆插补
#1=#1+1 步距角为1°
END1
……
在数控加工中经常会遇到一些非圆曲线(如椭圆、抛物线、双曲线、螺旋线、三角函数曲线等)的加工,这些曲线都没有自己的插补指令(即使有也是选择功能),用普通的手工编程方法需算出很多点的坐标,少则几十个点,多则上千上万个点,处理周期长、计算量大、精度差、非常容易出错,难以满足生产需求。
随着数控技术的发展,先进的数控系统不仅向用户编程提供了一般的准备功能和辅助功能,而且为编程提供了扩展数控功能的手段,FANUC数控系统的宏指令编程,应用灵活、形式自由,不仅可以利用表达式进行算术运算,还可以进行逻辑运算。用宏指令编程使加工程序简练易懂,实现了普通编程难以实现的功能,即非圆曲线的加工。
宏指令还可以对形状类似或相似的系列零件进行编程(不同数值的尺寸都设成变量),把它作为子程序,然后在主程序中进行宏程序调用,给各个尺寸(即变量)进行赋值,这样使程序数量大大减少,减少了占用系统的空间,方便了程序的管理。现有的数控粗加工复合循环指令要么没有,要么不能完全满足一些特殊情况下的应用,通过宏指令也可以对零件的粗加工进行复合循环编程,使程序简化,提高了编程效率。
用户宏程序的最大特点是:可以对变量进行运算,使程序应用更加灵活、方便。使用用户宏程序时,数值可以直接指定,也可以用变量指定。
下面以FANUC 0i数控系统为例,介绍用户宏程序编程在数控车削中的应用。
2、宏指令在椭圆车削加工中的应用
在车削中椭圆的解析方程和参数方程如下图:
用宏指令编写椭圆的程序方法很多,可以用解析方程编写,也可以用参数方程编写,参数方程的编写应用较多,因为它车削出的椭圆表面粗糙度比较均匀,相对循环周期可短些。我们可以用循环语句(WHILE语句)编写,也可以用条件转移语句(IF语句)形成一个循环语句编写。下面举一个实例进行说明。
如下图所示工件,毛坯尺寸为φ45×100。
2.1 方法一
用解析方程、IF语句编程。
……
#1=30.0 定义Z轴起始位置(作为变量)
#2=30.0 定义椭圆长半轴(沿Z轴方向)
#3=20.0 定义椭圆短半轴(沿X轴方向)
#4=-[#2*SQRT[1.0-[10.0*10.0]/[#3*#3]]] Z轴终止位置
N1 #5=#3*SQRT[1.0-[#1*#1]/[#2*#2]] 计算短半轴(X轴)变量数值
G01 X[2*#5] Z[#1-#2] F0.1 椭圆插补
#1=#1-0.05 Z轴步距,每次0.05 mm
IF[#1GE#4] GOTO1 椭圆插补条件判断
……
2.2 方法二
用解析方程、WHILE语句编程。
……
#1=30.0 定义Z轴起始位置(作为变量)
#2=30.0 定义椭圆长半轴
#3=20.0 定义椭圆短半轴
#4=-[#2*SQRT[1.0-[10.0*10.0]/[#3*#3]]] 定义Z轴终止位置
WHILE [#1GE#4] DO1 循环语句
#5=#3*SQRT[1.0-[#1*#1]/[#2*#2]] 计算短半轴(X轴)变量数值
G01 X[2*#5] Z[#1-#2] F0.1 椭圆插补
#1=#1-0.05 Z轴步距,每次0.05mm
END1
……
2.3 方法三
用参数方程、IF语句编程。
……
#1=0 定义起始角度(作为变量)
#2=20.0 定义椭圆短半轴
#3=30.0 定义椭圆长半轴
#4=180-ASIN[10.0/#2] 终止角度
N1 #100=#2*SIN[#1] 短半轴(X轴)变量数值
#101=#3*COS[#1] 长半轴(Z轴)变量数值
G01 X[2*#100] Z[#101-#3] F0.1 椭圆插补
#1= #1+1 步距角为1°
IF[#1LE#4] GOTO1 条件判别语句
……
2.4 方法四
用参数方程、WHILE语句编程。
……
#1= 0 定义起始角度(作为变量)
#2=20.0 定义椭圆短半轴
#3=30.0 定义椭圆长半轴
#4=180-ASIN[10.0/#2] 终止角度
WHILE[#1LE#4] DO1 循环语句
#100=#2*SIN[#1] 短半轴(X轴)变量数值
#101=#3*COS[#1] 长半轴(Z轴)变量数值
G01 X[2*#100] Z[#101-#3] F0.1 椭圆插补
#1=#1+1 步距角为1°
END1
……
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询