宏程序在数控编程中的的应用.doc

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

宏程序在数控编程中的应用 7.1 概述 用户宏程序是以变量的组合,通过各种算术和逻辑运算、转移和循环等命令,而编制的一种可以灵活运用的程序,只要改变变量的值,即可完成不同的加工或操作。 用户宏功能是提高数控机床性能的一种特殊功能。使用中,通常把能完成某一功能的一系列指令像子程序一样存入存储器,然后用一个总指令代表它们,使用时只需给出这个总指令就能执行其功能。   用户宏功能主体是一系列指令,相当于子程序体。既可以由机床生产厂提供,也可以由机床用户自己编制。   宏指令是代表一系列指令的总指令,相当于子程序调用指令。   用户宏功能的最大特点是,可以对变量进行运算,使程序应用更加灵活、方便。   用户宏功能有A、B两类。 7.2 A类宏程序 7.2.1变量   在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更具通用性、更加灵活,在宏程序中设置了变量,即将变量赋给一个地址。 (1)变量的表示 变量可以用“#”号和跟随其后的变量序号来表示:#i(i=1,2,3......) 例:#5, #109, #501。 (2)变量的引用   将跟随在一个地址后的数值用一个变量来代替,即引入了变量。 例:对于F#103,若#103=50时,则为F50; 对于Z-#110,若#110=100时,则Z为-100; 对于G#130,若#130=3时,则为G03。 (3)变量的类型   0MC系统的变量分为公共变量和系统变量两类。 1)公共变量   公共变量是在主程序和主程序调用的各用户宏程序内公用的变量。也就是说,在一个宏指令中的#i与在另一个宏指令中的#i是相同的。 公共变量的序号为:#100~#131;#500~#531。其中#100~#131公共变量在电源断电后即清零,重新开机时被设置为“0”;#500~#531公共变量即使断电后,它们的值也保持不变,因此也称为保持型变量。 2)系统变量   系统变量定义为:有固定用途的变量,它的值决定系统的状态。系统变量包括刀具偏置变量,接口的输入/输出信号变量,位置信息变量等。   系统变量的序号与系统的某种状态有严格的对应关系。例如,刀具偏置变量序号为#01~#99,这些值可以用变量替换的方法加以改变,在序号1~99中,不用作刀偏量的变量可用作保持型公共变量#500~#531。   接口输入信号#1000~#1015,#1032。通过阅读这些系统变量,可以知道各输入口的情况。当变量值为“1”时,说明接点闭合;当变量值为“0”时,表明接点断开。这些变量的数值不能被替换。阅读变量#1032,所有输入信号一次读入。 7.2.2 宏指令G65   宏指令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 7.2.3 宏功能指令 1. 算术运算指令(表7.1) 表7.1 算术运算指令 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=√# j G65 H22 绝对值 # i=|# j| G65 H23 求余 # i=# j-trunc﹙# j/# k﹚· # k ? Trunc;丢弃小于1的分数部分 G65 H24 BCD码→二进制码 # i=BIN﹙# j﹚ G65 H25 二进制码→BCD码 # i=BCD﹙# j﹚ G65 H26 复合乘/除 # i=﹙# i × # j﹚÷# k G65 H27 复合平方根1 # i=√# j2+# k2 G65 H28 复合平方根2 # i=√# j2-# k2 1)变量的定义和替换 #i=#j 编程格式 G65 H01 P#i Q#j 例 G65 H01 P#101 Q1005; (#101=1005) G65 H01 P#101

文档评论(0)

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

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

1亿VIP精品文档

相关文档