内容正文:
第八章 非圆曲线的加工
第一节 宏程序
第二节 非圆曲线加工
第三节 采用特殊指令加工非圆曲线
第一节 宏程序
一、宏程序概念
以一组子程序的形式存储并带有变量的程序称为用户宏程序,简称宏程序;调用宏程序的指令称为用户宏程序指令或宏程序调用指令(简称宏指令)。
使用B 类宏程序编程时,操作者只需会使用宏命令即可,而不必记忆宏程序主(本)体。用户宏程序的最大特征有以下几个方面:
(1)可以在宏程序中使用变量。
(2)可以进行变量之间的运算。
(3)宏指令可以对变量进行赋值。
二、变量
1. 变量的表示
变量由变量符号“#” 和变量号(阿拉伯数字)组成,如#1、#20 等。变量也可由变量符号“#”和表达式组成,如# [#1 +10]。
2. 变量的种类
3. 变量的引用
(1)用变量置换地址后数值
格式: ﹤地址﹥ + “# I”或﹤地址﹥ + “- # I”, 表示把变量“# I”的值或把变量“# I”的值的负值作为地址值。
(2)用变量置换变量号
格式: “#” + “9”+ 置换变量号。
1. 地址O、G 和N 不能引用变量, 如O#100, G#101, N#120 为非法引用。
2. 如超过地址规定的最大代码值, 则不能使用, 如#130 = 120 时, M#130 超过了最大代码值。
三、运算符
在加工程序中, 方括号“[ ]” 用于封闭表达式, 圆括号“( )” 用于注释。
四、语句
1. 无条件转移(GOTO n)
例如:N10 G00 X50. 0 Z10. 0;
N20 G01 X45. 0 F0. 2;
N30 G01 Z0;
N40 GOTO 20;
表示执行N40 程序段时,程序无条件转移到N20 程序段继续运行。
2. 条件语句(IF 语句)
(1)GOTO 格式
IF [条件表达式] GOTO n (n = 顺序号)
(2)THEN 格式
IF [条件表达式] THEN < 宏程序语句> ;
如果条件表达式成立,执行THEN 后面的语句,只能执行一条语句。
条件表达式必须包括条件运算符, 条件运算符两边可以是变量、常数或表达式, 条件表达式要用方括号“ [ ]” 封闭。
3. 循环语句(WHILE 语句)
当条件表达式成立时,从DOm 的程序段到ENDm 的程序段重复执行;如果条件表达式不成立,则从ENDm 的下一个程序段执行。
五、宏程序的调用
宏程序调用示意图
1. 单纯调用
通常宏程序主体是由下列形式进行一次性调用,也称为单纯调用。
G65 P (程序号) < 引数赋值>
(1)引数赋值Ⅰ
除G、L、N、O、P 地址符以外都可作为引数赋值的地址符,大部分地址符无顺序要求,但对I、J、K 则必须按字母顺序排列,对没使用的地址可省略。
(2)引数赋值Ⅱ
(3)引数赋值Ⅰ、Ⅱ的混用
引数赋值Ⅰ、Ⅱ的混用
2. 模态调用
其调用形式为: G66P (程序号码)L(循环次数) < 引数赋值> ;
在这一调用状态下,当程序段中有移动指令时,则先执行完这一移动指令后,再调用宏,所以,又称为移动调用指令。
取消用户宏程序用G67 指令。
$