宏程序编制的.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
宏程序编制的

6.3 FANUC数控系统宏指令编程 虽然子程序对编制相同加工操作的程序非常有用,但用户宏程序由于允许使用变量、算术和逻辑运算及条件转移,使得编制相同加工操作的程序更方便、更容易。可将相同加工操作编为通用程序,如型腔加工宏程序和固定加工循环宏程序。使用时加工程序可用一条简单指令调出用户宏程序,和调用子程序完全一样。 6.3.1宏变量及常量 (1)变量 在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更具有通用性,更加灵活,在宏程序中设置了变量,即将变量赋给一个地址。 ① 变量的表示 变量可以用“#”号和跟随其后的变量序号来表示:# i (i =1,2,3,……) 例:#5,#109,#501。 ② 变量的类型 变量根据变量号可以分成4种类型,见表6-1。 表6-1 变量类型 变量号 变量类型 功 能 # 0 空变量 该变量总是空没有值能赋给该变量 # 1~# 33 局部变量 只能用在宏程序中存储数据,例如,运算结果。当断电时局部变量被初始化为空。调用宏程序时,自变量对局部变量赋值 # 100~# 199 # 500~# 999 公共变量 在不同的宏程序中的意义相同。当断电时,变量#100~#199初始化为空。变量#500~#999 的数据保存,即使断电也不丢失 # 1000~ 系统变量 用于读和写CNC运行时各种数据的变化,例如:刀具的当前位置和补偿值 公共变量是在主程序和主程序调用的各用户内公用的变量。也就是说,在一个宏指令中的# i与在另一个宏指令中的# i是相同的。其中#100~#131公共变量早电源断电后即清零,重新开机时被设置为“0”;#500~#531公共变量即使断电后,它们的值也保持不变,因此也称为保持性变量。 ③ 变量值的范围 局部变量和公共变量可以有0值或下面范围中的值-1047~-10-29或10-29~1047,如果计算结果超出有效范围则发出P/S报警。 ④ 变量的引用 将跟随在一个地址后的数值用一个变量来代替,即引入了变量。i 例:对于F#103,若#103=50时,则为F50; 对于Z—#110,若#110=100,则Z为—100; 对于G#130,若#130=3时,则为G03。 (2)系统变量 系统变量定义为:有固定用途的变量,它的值决定系统的状态。系统变量包括刀具偏置变量,接口的输入/输出信号变量,位置信息变量等。 系统变量的序号与系统的某种状态有严格的对应关系。例如,刀具偏置序号为#01~#99,这些值可以用变量替换的方法加以改变,在序号1~99中,不用作刀具偏置变量的变量可以用作保持性公共变量#500~#531。 接口输入信号#1000~#1015,#1032。通过阅读这些系统变量,可以知道各输入口的情况。当变量值为“1”时,说明接点闭合;当变量值为“0”时,表明接点断开。这些变量的数值不能被替换,阅读变量#1032,所有输入信号一次读入。 6.3.2 宏程序调用 宏程序有许多种调用方式,其中包括非模态调用(G65),模态调用(G66,G67),用G代码、T代码和M代码调用宏程序。 利用宏程序调用指令G65可以实现丰富的宏功能,包括算术运算、逻辑运算等处理功能。其一般形式为: G65 Hm P# i Q# j R# k 其中:m——宏程序功能,数值范围01~99; # i——运算结果存放处的变量名; # j——被操作的第一个变量,也可以是一个常数; # k——被操作的第二个变量,也可以是一个常数。 例如,当程序功能为加法运算时: 程序 P#100 Q#101 R#102… 含义为#100=#101+#102 程序 P#100 Q-#101 R#102… 含义为#100=-#101+#102 程序 P#100 Q#101 R15… 含义为#100=#101+15 6.3.3 算术与逻辑运算指令 该类指令可以在变量中执行,运算符右边的表达式可包含常量和/或由函数或运算符组成的变量。表达式中的变量# j 和# k 可以用常数赋值左边的变量,也可以用表达式赋值。 (1)算术运算指令 算术运算指令如表6-2所示。 表6-2算术运算指令 G码 H码 功 能 定 义 G65 H01 定义,替换 # i = # j G65 H02 加 # i = # j + # k G65 H03 减 # i = # j - # k G65 H04 乘 # i = # j × # k G65 H05 除 # i = # j / # k G65 H21 平方根 # i = G65 H22 绝对值 # i = │# j│ G65 H23 求余 # i = # j·trunc(# j / # k)·# k Trunc;丢弃小于1的分数部分 G6

文档评论(0)

ayangjiayu4 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档