文档介绍:(用外文写)
外文出处: CNC Machine Tools and the
Introduction of the Processing
中文译文
数控加工介绍
例3:G65 P2000 I1 J2 K3 I4 J5 K6;
以下字母不得用于把参数传送到宏指令子程序中:G,L,N,O 或者P。
宏变量
现有3 类宏变量:系统变量、全局变量以及本地变量。
宏常数是位于宏表达式中的浮点数值。它们可以与地址A…Z 相组合,或者在一个表达式中使用时,它们可以单独使用。, 或者-10。
本地变量
本地变量的范围是#1 到#33 之间。在任何时候都可以提供一组本地变量。当带有G65 指令来执行子程序调用时,可以保存本地变量并且提供新的一组变量来使用。这就是称做本地变量的“嵌套”。在一次G65 调用期间,可以为那些未定义的数值清除所有新的本地变量,而且那些在G65 行中有相应地
址变量的任何本地变量都将设置为G65 指令行的数值。以下是一张本地变量以及改变它们的地址自变量的表格。
注意:变量10、12、14-16 及27-33 并没有相应的地址自变量。如果按照上述自变量章节中所指示的那样,使用足够数量的I、J 和K 自变量的话,就可以设置它们。一旦处于宏子程序,可以参照变量编号1-33 来读取并且修改本地变量。
当使用L 自变量来多次重复宏指令子程序时,只在第一次重复时设置自变量。这意味着如果在第一次重复时修改本地变量1-33 的话,那么下一次重复时将会只访问经修改的数值。当L 地址大于1 时,本地数值会保持多次重复。
通过M97 或者M98 来调用一个子程序并不会把本地变量嵌套。在M98 调用的子程序内所参考的任何本地变量与M97 或者M98 调用之前存在的变量和数值一样。
全局变量
全局变量是在任何时候都可以访问的变量。这儿仅有一份全局变量的复印件。它出现在三种范围:
100-199,500-699 和800-999。当关闭电源时,全局变量会保持在内存中。
有时,有些为厂方安装的手写宏变量选项是用全局变量的。例如:探测,托盘变换器等。当调用全局变量时,必须确定它们没有在机床上的其他程序中应用。
系统变量
系统变量为编程人员提供与多种控制条件相结合的能力。通过设置一个系统变量,可以修改控制功能。读取一个系统变量,一个程序就可以根据变量值修改自己的行为。一些系统变量有READ ONLY(只读)状态。这意味着编程人员无法进行修改。以下是一份当前执行的系统变量的简表,以及它们的用法说明。
变量用法
#0 不是一个数字(只读)
#1-#33 宏调用自变量
#100-#199 关闭电源时可保存的一般用途变量
#500-#699 关闭电源时可保存的一般用途变量
#700-#749 仅供内部使用的隐藏变量
#800-#999 关闭电源时可保存的一般用途变量
#1000-#1063 64个离散输入(只读)
#1064-#1068 最大轴负载
#1080-#1087 原始模拟至数字输入(只读)
#1090-#1098 过滤模拟至数字输入(只读)
#1094 配有OEM 主轴驱动的主轴负载(只读)
#1098 配有HAAS 矢量驱动的主轴负载(只读)
#1100-#1139 40 个离散输出
#1140-#1155 通过多路输出的16 个额外继电器输出
#1264-#1268 最大轴负载
#1601-#1800 刀具1 到200 的凹槽数目
#1801-#2000 刀具1 到200 最大震动记录
#2001-#2200 刀具长度补偿
#2201-#2400 刀具长度磨损
#2401-#2600 刀具直径/半径补偿
#2601-#2800 刀具直径/半径磨损
#3000 可编程报警
#3001 毫秒计时器
#3002 小时计时器
#3003 单块取消
#3004 过载控制
#3006 配有消息的可编程停止
#3011 年、月、日
#3012 小时、分钟、秒
#3020 接通电源的计时器(只读)
#3021 循环起动计时器(只读)
#3022 进给计时器(只读)
#3023 当前工件计时器(只读)
#3024 上一次完成工件计时器(只读)
#3025 前一个工件计时器(只读)
#3026 主轴内的刀具(只读)
#3027 主轴RPM(只读)
#3030 单块(只读)
#3031 试运行(只读)
#3032 块删除(只读)
#3033 可选停止(只读)
#3201-#3400 刀具1 到200 的实际直径
#3401-#3600 刀具1 到200 的可编程冷却液位置
#3901 M30 计数1
#