预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共13页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第七章宏指令编程A类宏指令一、教学目的与要求1.了解宏指令的概念、种类、特点及应用场合。2.熟记A类宏指令的书写格式。3.掌握宏指令的一般编程思路。4.在数控机床上能熟练完成宏程序相关操作。5.能应用宏指令完成相应零件的编程与加工。6.能正确选择硬质合金刀具的切削用量。二、教学重点与难点宏程序编程的思路与步骤。宏指令程序的编制。三、实例导入如何用A类宏程序完成如图7—1所示零件的加工。四、理论讲授在数控加工中把除了直线与圆弧之外,轮廓外形可以用数学表达式的形式给出的曲线称为非圆方程曲线,其表达式可以用直角坐标、极坐标、参数方程等多种形式给出。还有些轮廓形状是通过实验或测量的方法得到的,这些通过实验或测量得到的数据,在图样上是以坐标点的表格形式给出,我们把这类轮廓曲线称为列表曲线。为完成这些特别曲线的加工,FANUC系统提供了具有相应功能的用户宏指令。采纳这些方法不但可以完成上述曲线的编程而且还有利于程序的模块化。用户宏程序是FANUC数控系统及类似产品中的特别编程功能。所谓用户宏程序其实质与子程序相似,它也是把一组实现某种功能的指令,以子程序的形式事先存储在系统存储器中,通过宏程序调用指令执行这一功能。在主程序中,只要编入相应的调用指令就能实现这些功能。一组以子程序的形式存储并带有变量的程序称为用户宏程序,简称宏程序;调用宏程序的指令称为“用户宏程序命令〞,或宏程序调用指令。宏程序与一般程序相比较,一般程序的程序字为常量,一个程序只能描述一个几何形状,所以缺乏灵活性和适用性。而用户宏程序本体中可以使用变量进行编程,还可以用宏指令对这些变量进行赋值、运算等处理,从而可以使用宏程序执行一些有规律变化的动作。用户宏程序分为A、B两种。一般地,在一些较老的FANUC系统〔如FANUC-0MD〕中采纳A类宏程序,而在较为先进的系统〔如FANUC-OI〕中则采纳B类宏程序。宏指令的分类在FANUC系统提供的用户宏程序可分为A、B两种。一般地,在一些较老的FANUC系统〔如FANUC-0MD〕中采纳A类宏程序,而在较为先进的系统〔如FANUC-OI〕中则采纳B类宏程序。A类宏程序的变量表达方式在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址,为了使程序更具有通用性更加灵活,在宏程序中设置了变量。1.变量的表示一个变量由#符号和变量组成,如:#I(I=1,2,3,…)。如下例所示:例#100,#500,#5等2.变量的引用将跟随在地址后的数值用变量来代替,即引入变量。例G011X#100Y-#110F#120;当#100=300.0、#110=80.0、#120=800时。上式即表示为G011X300.0Y-80.0F800;3.变量的种类变量分局部变量,公共变量〔全局变量〕和系统变量三种。局部变量#1~#33局部变量是一个在宏程序中局部使用的变量。当宏程序A调用宏程序B而且都有变量#1时,由于变量#1服务于不同的局部,所以A中的#1与B中的#1不是同一个变量,因此可以赋于不同的值,互相间互不影响。公共变量#100~#149、#500~#549公共变量贯穿于整个程序过程,同样,当宏程序A调用宏程序B而且都有变量#100时,由于#100是全局变量,所以A中的#100与B中的#100是同一个变量。系统变量系统变量是指有固定用途的变量,它的值决定系统的状态。系统变量包括刀具偏置值变量、接中的输入与输出信号变量、位置信号变量。〔三〕变量的数学运算和转移指令如表7—1所示A类宏指令的运算具有功能强大的运算与转移指令。G码H码功能定义G65H01定义、替换#I=#jG65H02加#I=#j+#kG65H03减#I=#j-#kG65H04乘#I=#j×#kG65H05除#I=#j÷#kG65H11逻辑或#I=#jOR#kG65H12逻辑与#I=#jAND#kG65H13异或#I=#jXOR#kG65H21平方根#I=√#jG65H22绝对值#I=|#j|G65H23求余#I=#j-trunc(#j÷#k)×#kG65H24十进制码变为二进制码#I=BIN〔#j〕G65H25二进制码变为十进制码#I=BCD〔#j〕G65H26复合乘/除#I=(#i×#j)÷#kG65H27复合平方根1#I=〔#j2+#k2〕开根号G65H28复合平方根2#I=〔#j2-#k2〕开根号G65H31正弦#I=#j×SIN(#k)G65H32余弦#I=#j×cos(#k)G65H33正切#I=#j×TAN(#k)G65H34反正切#I=ATAN(#j/#k)G65H80无条件转移GOTOnG65H81条件转移1(EQ)IF#j=#k,GOTOnG65H82条件转移2(NE)IF#j≠#k,GOTOnG65H83条件转移3(GT)IF#j>#k,GOTOnG65H84条件