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

上传人:cl****1 文档编号:514031568 上传时间:2023-07-06 格式:DOC 页数:17 大小:120.51KB
返回 下载 相关 举报
宏程序在数控编程中的应用_第1页
第1页 / 共17页
宏程序在数控编程中的应用_第2页
第2页 / 共17页
宏程序在数控编程中的应用_第3页
第3页 / 共17页
宏程序在数控编程中的应用_第4页
第4页 / 共17页
宏程序在数控编程中的应用_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《宏程序在数控编程中的应用》由会员分享,可在线阅读,更多相关《宏程序在数控编程中的应用(17页珍藏版)》请在金锄头文库上搜索。

1、第七章 宏程序在数控编程中的应用7.1 概述用户宏程序是以变量的组合,通过各种算术和逻辑运算、转移和循环等命令,而编制的一种可以灵活运用的程序,只要改变变量的值,即可完成不同的加工或操作。用户宏功能是提高数控机床性能的一种特殊功能。使用中,通常把能完成某一功能的一系列指令像子程序一样存入存储器,然后用一个总指令代表它们,使用时只需给出这个总指令就能执行其功能。用户宏功能主体是一系列指令,相当于子程序体。既可以由机床生产厂提供,也可以由机床用户自己编制。宏指令是代表一系列指令的总指令,相当于子程序调用指令。用户宏功能的最大特点是,可以对变量进行运算,使程序应用更加灵活、方便。用户宏功能有A、B两

2、类。7.2 A类宏程序变量在常规的主程序和子程序内,总是将一个具体的数值赋给一个地址。为了使程序更具通用性、更加灵活,在宏程序中设置了变量,即将变量赋给一个地址。(1)变量的表示 变量可以用“#”号和跟随其后的变量序号来表示:#i(i1,2,3.) 例:#5, #109, #501。(2)变量的引用将跟随在一个地址后的数值用一个变量来代替,即引入了变量。 例:对于F#103,若#10350时,则为F50; 对于Z-#110,若#110100时,则Z为-100; 对于G#130,若#1303时,则为G03。(3)变量的类型 0MC系统的变量分为公共变量和系统变量两类。1)公共变量 公共变量是在主

3、程序和主程序调用的各用户宏程序内公用的变量。也就是说,在一个宏指令中的#i与在另一个宏指令中的#i是相同的。 公共变量的序号为:#100#131;#500#531。其中#100#131公共变量在电源断电后即清零,重新开机时被设置为“0”;#500#531公共变量即使断电后,它们的值也保持不变,因此也称为保持型变量。2)系统变量 系统变量定义为:有固定用途的变量,它的值决定系统的状态。系统变量包括刀具偏置变量,接口的输入/输出信号变量,位置信息变量等。系统变量的序号与系统的某种状态有严格的对应关系。例如,刀具偏置变量序号为#01#99,这些值可以用变量替换的方法加以改变,在序号199中,不用作刀

4、偏量的变量可用作保持型公共变量#500#531。接口输入信号#1000#1015,#1032。通过阅读这些系统变量,可以知道各输入口的情况。当变量值为“1”时,说明接点闭合;当变量值为“0”时,表明接点断开。这些变量的数值不能被替换。阅读变量#1032,所有输入信号一次读入。 宏指令G65宏指令G65可以实现丰富的宏功能,包括算术运算、逻辑运算等处理功能。一般形式: G65 Hm P#i Q#j R#k式中:m-宏程序功能,数值范围0199;#i-运算结果存放处的变量名;#j-被操作的第一个变量,也可以是一个常数;#k-被操作的第二个变量,也可以是一个常数。 例如,当程序功能为加法运算时:程序

5、P#100 Q#101 R#102.含义为#100#101#102程序P#100 Q-#101 R#102.含义为#100-#101#102程序P#100 Q#101 R15.含义为#100#10115 宏功能指令1. 算术运算指令(表7.1)表7.1 算术运算指令G码H码功 能定 义G65H01定义,替换# i# jG65H02加# i# j# kG65H03减# i# j-# kG65H04乘# i# j # kG65H05除# i# j/# kG65H21平方根# i# j G65H22绝对值# i|# j|G65H23求余# i# j-trunc# j/# k # k Trunc;丢弃

6、小于1的分数部分G65H24BCD码二进制码# iBIN# jG65H25二进制码BCD码# iBCD# jG65H26复合乘/除# i# i # j# kG65H27复合平方根1# i# j2# k2 G65H28复合平方根2# i# j2-# k2 1)变量的定义和替换 #i#j编程格式 G65 H01 P#i Q#j 例 G65 H01 P#101 Q1005; (#1011005) G65 H01 P#101 Q-#112;(#101-#112) 2)加法 #i#j#k 编程格式 G65 H02 P#i Q#j R#k 例 G65 H02 P#101 Q#102 R#103;(#101

7、#102#103) 3)减法 #i#j-#k 编程格式 G65 H03 P#i Q#j R#k 例 G65 H03 P#101 Q#102 R#103;(#101#102-#103) 4)乘法 #i#j#k 编程格式 G65 H04 P#i Q#j R#k 例 G65 H04 P#101 Q#102 R#103;(#101#102#103) 5)除法 #i#j / #k 编程格式 G65 H05 P#i Q#j R#k 例 G65 H05 P#101 Q#102 R#103;(#101#102/#103) 6)平方根 #i 编程格式 G65 H21 P#i Q#j 例 G65 H21 P#10

8、1 Q#102;(#101 ) 7)绝对值 #i#j 编程格式 G65 H22 P#i Q#j 例 G65 H22 P#101 Q#102;(#101#102) 8)复合平方根1 #i 编程格式 G65 H27 P#i Q#j R#k 例 G65 H27 P#101 Q#102 R#103;( #101= 9)复合平方根2 #i 编程格式 G65 H28 P#i Q#j R#k 例 G65 H28 P#101 Q#102 R#103(#1012. 逻辑运算指令(表7.2)表7.2 逻辑运算指令G码H码功 能定 义G65H11逻辑“或”# i# j OR # kG65H12逻辑“与”# i# j

9、 AND # kG65H13异或# i# j XOR # k1)逻辑或 #i#j OR #k编程格式 G65 H11 P#i Q#j R#k例 G65 H11 P#101 Q#102 R#103;(#101#102 OR #103)2)逻辑与 #i#j AND #k编程格式 G65 H12 P#i Q#j R#k例 G65 H12 P#101 Q#102 R#103;(#101#102 AND #103)3. 三角函数指令 (表7.3)表7.3 三角函数指令G码H码功 能定 义G65H31正弦# i# j SIN # kG65H32余弦# i# j COS # kG65H33正切# i# j

10、TAN# kG65H34反正切# iATAN# j/# k1)正弦函数 #i#jSIN(#k)编程格式 G65 H31 P#i Q#j R#k (单位:度)例 G65 H31 P#101 Q#102 R#103;(#101#102SIN(#103)2)余弦函数 #i#jCOS(#k) 编程格式 G65 H32 P#i Q#j R#k (单位:度) 例 G65 H32 P#101 Q#102 R#103;(#101#102COS(#103)3)正切函数 #i#jTAN#k 编程格式 G65 H33 P#i Q#j R#k (单位:度) 例 G65 H33 P#101 Q#102 R#103;(#

11、101#102TAN(#103) 4)反正切 #iATAN(#j/#k) 编程格式 G65 H34 P#i Q#j R#k (单位:度,0o #j 360o) 例 G65 H34 P#101 Q#102 R#103;(#101ATAN(#102/#103)4. 控制类指令(表7.4)表7.4 控制类指令G码H码功 能定 义G65H80无条件转移GO TO nG65H81条件转移1IF # j# k,GOTOnG65H82条件转移2IF # j# k,GOTOnG65H83条件转移3IF # j# k,GOTOnG65H84条件转移4IF # j# k,GOTOnG65H85条件转移5IF #

12、j# k,GOTOnG65H86条件转移6IF # j# k,GOTOnG65H99产生PS报警PS报警号500n出现1)无条件转移编程格式 G65 H80 Pn (n为程序段号) 例 G65 H80 P120;(转移到N120) 2)条件转移1 #j EQ #k() 编程格式 G65 H81 Pn Q#j R#k (n为程序段号) 例 G65 H81 P1000 Q#101 R#102当#101#102,转移到N1000程序段;若#101 #102,执行下一程序段。 3)条件转移2 #j NE #k() 编程格式 G65 H82 Pn Q#j R#k (n为程序段号) 例 G65 H82 P

13、1000 Q#101 R#102当#101 #102,转移到N1000程序段;若#101#102,执行下一程序段。 4)条件转移3 #j GT #k ( ) 编程格式 G65 H83 Pn Q#j R#k (n为程序段号) 例 G65 H83 P1000 Q#101 R#102当#101 #102,转移到N1000程序段;若#101 #102,执行下一程序段。 5)条件转移4 #j LT #k() 编程格式 G65 H84 Pn Q#j R#k (n为程序段号) 例 G65 H84 P1000 Q#101 R#102 当#101 #102,转移到N1000;若#101 #102,执行下一程序段。 6)条件转移5 #j GE #k() 编程格式 G65 H85 Pn Q#j R#k (n为程序段号) 例 G65 H85 P1000 Q#101 R#102当#101 #102,转移到N1000;若#101#102,执行下一程序段。 7)条件转移6 #j LE #k() 编程格式 G65 H86 Pn Q#j Q#k (n为程序段号) 例 G6

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 机械/制造/汽车 > 汽车技术

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号