数控宏指令编程.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数控宏指令编程数控宏指令编程

宏指令编程 数控系统为用户配备了强有力的类似于高级语言的宏程序功能,用户可以使用变量进行算术运算、逻辑运算和函数的混合运算,此外宏程序还提供了循环语句、分支语句和子程序调用语句,利于编制各种复杂的零件加工程序,减少乃至免除手工编程时进行繁琐的数值计算,以及精简程序量。 一 变量 使用宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板操作改变。 #1=#2+100; G01 X#1 F300; 变量的表示 变量用变量符号#和后面的变量号指定。 例如:#1 表达式可以用于指定变量号。此时,表达式必须封闭在括号中。 例如:#[#1+#2-12] 变量的类型 变量根据变量号可以分成四种类型。 #0 空变量 该变量总是空,没有值能赋给该变量。 #1—#33 局部变量 局部变量只能用在宏程序中存储数据,例如,运算结果。 #100—#199 #500—#999 公共变量 公共变量在不同的宏程序中的意义相同。当断电时,变量#100—#199被清除,变量#500—#999即使断电也不丢失。 #1000— 系统变量 系统变量用于读和写 CNC 的各种数据 变量的引用 在地址后指定变量号即可引用其变量值。当用表达式指定变量时,要把表达式放在括号中。 例如:G01X[#1+#2]F#3; 被引用变量的值根据地址的最小设定单位自动地舍入。 例如: 当系统的最小输入增量为 1/1000mm 单位,指令 G00X#1,并将12.3456 赋值给变量#1,实际指令值为 G00X12.346;。 改变引用变量的值的符号,要把负号(-)放在#的前面。 例如:G00X-#1; 当引用未定义的变量时,变量及地址字都被忽略。 例如: 当变量#1 的值是 0,并且变量#2 的值是空时,G00X#1 Y#2 的执行 限制 程序号,顺序号和任选程序段跳转号不能使用变量。 例: 下面情况不能使用变量: O#1; /#2G00X100.0; N#3Y200.0; 二 运算符 1. 算术运算符:+,-,*,/ 2. 条件运算符:EQ(=),NE(≠),GT(>),GE(≥),LT(<),LE(≤) 3. 逻辑运算符:AND,OR,NOT 4. 函数:SIN,ASIN,COS,ACOS,TAN,ATAN,SQRT,ABS,ROUND,FIX,FUP,IN,EXP 5. 表达式:用运算符连接起来的常数,宏变量构成表达式。 例如:175/SQRT[2] * COS[55 * PI/180 ]; #3*6 GT 14; 三 转移和循环 在程序中,使用 GOTO 语句和 IF 语句可以改变控制的流向。有三种转移和循环操作可供使用: 转移和循环 GOTO 语句(无条件转移) IF 语句(条件转移:IF…THEN…) WHILE 语句(当…时循环) 1. 无条件转移(GOTO 语句) 转移到标有顺序号 n 的程序段。当指定 1 到 99999 以外的顺序号时,出现 P/S 报警 No.128。可用表达式指定顺序号。 GOTOn; n:顺序号(1 到 99999) 例: GOTO 1; GOTO #10; 2. 条件转移(IF 语句) IF 之后指定条件表达式。 IF[条件表达式]GOTO n 如果指定的条件表达式满足时,转移到标有顺序号 n 的程序段。如果指 定的条件表达式不满足,执行下个程序段。 IF[条件表达式]THEN 如果条件表达式满足,执行预先决定的宏程序语句。只执行一个宏程序 语句。 如果#1 和#2 的值相同,0 赋给#3。 IF[#1 EQ #2] THEN #3=0; 说明 ? 条件表达式 条件表达式必须包括运算符。运算符插在两个变量中间或变量和常数中 间,并且用括号([,])封闭。表达式可以替代变量。 ? 运算符 运算符由 2 个字母组成,用于两个值的比较,以决定它们是相等还是一 个值小于或大于另一个值。注意,不能使用不等号。 EQ(=),NE(≠),GT(>),GE(≥),LT(<),LE(≤) 示例程序 下面的程序计算数值 1~10 的总和 ○9500; #1=0;……………………………存储和的变量初值 #2=1;……………………………被加数变量的初值 N1 IF[#2 GT 10]GOTO 2;………当被加数大于 10 时转移到 N2 #1=#1+#2;………………………计算和 #2=#2+#1;………………………下一个被加数 GOTO 1;…………………………转到 N1 N2 M30;…………………………程序结束 3. 循环(WHILE语句) 在 WHILE 后指定一个条件表达式。当指定条件满足时,执行从 DO 到END 之间的程序。否则,转到 END 后的程序段。 说明 当指

文档评论(0)

enxyuio + 关注
文档贡献者

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

1亿VIP精品文档

相关文档