首页 理论教育 B类宏程序的编制与应用

B类宏程序的编制与应用

时间:2023-06-24 理论教育 版权反馈
【摘要】:本节主要讲的是B类宏程序的编制与应用。b.通用变量#100~#144,#500~#531可在各级宏程序中被共同使用的变量称为通用变量,即这一变量在不同程序级中调用时含义相同。因此,一个宏程序中经计算得到的一个通用变量的数值,可以被另一个宏程序应用。

B类宏程序的编制与应用

本节主要讲的是B类宏程序编制与应用。或许这样的分类会让读者感觉不适,但是编者希望读者在充分学习了A类宏程序的编制之后,再了解B类宏程序,因为B类宏程序的许多内容与前面所讲述的A类宏程序过于相似,如果在A类宏程序完全了解之后,再来学习B类宏程序,或许会让读者感觉些许轻松。

1.B类宏程序的基本指令

(1)宏程序的简单调用格式

宏程序的简单调用是指在主程序中,宏程序可以被单个程序段单次调用。

调用指令格式:G65 P(宏程序号)L(重复次数)(变量分配)。

其中:G65:宏程序调用指令;

P(宏程序号):被调用的宏程序代号;

L(重复次数):宏程序重复运行的次数,重复次数为1时,可以省略不写;

(变量分配):宏程序中使用的变量赋值

宏程序与子程序相同的一点是,一个宏程序可被另一个宏程序调用,最多可调用4重。

(2)宏程序的编写格式

宏程序的编写格式与子程序相同。其格式为

0~(0001~8999为宏程序号);程序名

N10……指令

N~M99;宏程序结束

上述宏程序中,除通常使用的编程指令外,还可使用变量、算术运算指令及其他控制指令。变量值在宏程序调用指令中赋值。

(3)变量

①变量的分配类型

这类变量中的文字变量与数字序号变量之间有如表7-5所示的关系。

表7-5 文字变量与数字序号变量之间的关系

978-7-111-39424-2-Chapter07-17.jpg

表7-5中,文字变量为除G、L、N、O、P以外的英文字母,一般可不按字母顺序排列,I、J、K例外;#1~#26为数字序号变量。

例:G65P1000A1.0 B2.0L3.0

上述程序段为宏程序的简单调用格式,其含义是:调用宏程序号为1000的宏程序运行一次,并为宏程序中的变量赋值,其中:#1为1.0,#2为2.0,#4为3.0。

②变量的级别

a.本级变量#1~#33

作用于宏程序某一级中的变量称为本级变量,即这一变量在同一程序级中调用时含义相同,若在另一级程序(如子程序)中使用,则意义不同。本级变量主要用于变量间的相互传递,初始状态下未赋值的本级变量即为空白变量。

b.通用变量#100~#144,#500~#531

可在各级宏程序中被共同使用的变量称为通用变量,即这一变量在不同程序级中调用时含义相同。因此,一个宏程序中经计算得到的一个通用变量的数值,可以被另一个宏程序应用。

(4)算术运算指令

变量之间进行运算的通常表达形式是:#i=(表达式)

①变量的定义和替换

#i=#j

②加减运算

#i=#j+#k;加

#i=#j-#k;减

③乘除运算

#i=#j×#k;乘

#i=#j/#k;除

④函数运算

#i=SIN[#j];正统函数(单位为度“°”)

#i=COS[#j];余函数(单位为度“°”)

#i=TAN[#j];正切函数(单位为度“°”)

#i=ATAN[#j]/#k;反正切函数(单位为度“°”)

#i=SQRT[#j];平方根

#i=ABS[#j];取绝对值

⑤运算的组合

以上算术运算和函数运算可以结合在一起使用,运算的先后顺序是:函数运算、乘除运算、加减运算。

括号的应用

表达式中括号的运算将优先进行。连同函数中使用的括号在内,括号在表达式中最多用5层。

(5)控制指令

①条件转移

编程格式:IF[条件表达式]GOTO n

以上程序段含义为

a.如果条件表达式的条件得以满足,则转而执行程序中程序号为n的相应操作,程序段号n可以由变量或表达式替代。

b.如果表达式中条件未满足,则顺序执行下一段程序。(www.xing528.com)

c.如果程序作无条件转移,则条件部分可以被省略。

d.表达式可按如下书写:

#j EQ#k表示=

#j NE#k表示≠

#j GT#k表示>

#j LT#k表示<

#j GE#k表示≥

#j LE#k表示≤

②重复执行

编程格式:WHILE[条件表达式]DOm(m=1,2,3)

……

END m

上述“WHILE…END m”程序含意为

a.条件表达式满足时,程序段DO m~END m即重复执行。

b.条件表达式不满足时,程序转到END m后处执行。

c.如果WHILE[条件表达式]部分被省略,则程序段DO m~END m之间的部分将一直重复执行。

在使用该循环时要注意:

a.WHILE DO m和END m必须成对使用。

b.DO语句允许有3层嵌套,即:

DO 1

DO 2

DO 3

END 3

END 2

END 1

c.DO语句范围不允许交叉,即如下语句是错误的:

DO 1

DO 2

END 1

END 2

前面的内容仅介绍了B类宏程序应用的基本知识,如若需要更加有效地应用详细说明,请查阅FANUC-0i系统说明书或其他相关书籍

2.B类宏程序的应用举例

【例7-3】如图7-4所示的圆环点阵孔群中各孔的加工,在【例7-1】中我们用的是A类宏程序的解决方式,现在我们再用B类宏程序方法来实现加工。

978-7-111-39424-2-Chapter07-18.jpg

图7-4 圆环点阵孔群的加工

宏程序中将用到下列变量:

#1:第一个孔的起始角度A,在主程序中用对应的文字变量A赋值;

#3:孔加工固定循环中R平面值C,在主程序中用对应的文字变量C赋值;

#9:孔加工的进给量值F,在主程序中用对应的文字变量F赋值;

#11:要加工孔的孔数H,在主程序中用对应的文字变量H赋值;

#18:加工孔所处的圆环半径值r,在主程序中用对应的文字变量r赋值;

#26:孔深坐标值Z,在主程序中用对应的文字变量Z赋值;

#30:基准点,即圆环形中心的X坐标值X0

#31:基准点,即圆环形中心的Y坐标值Y0

#32:当前加工孔的序号i

#33:当前加工第i孔的角度;

#100:已加工孔的数量;

#101:当前加工孔的X坐标值,初值设置为圆环形中心的X坐标值X0

#102:当前加工孔的Y坐标值,初值设置为圆环形中心的Y坐标值Y0

用户宏程序编写如下:

978-7-111-39424-2-Chapter07-19.jpg

在主程序中调用上述宏程序的调用格式为

G65 P8000A_C_F_H_R_Z_

上述程序段中各文字变量后的值均应按零件图样中给定值来赋值。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈