B宏程序语句.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文档。上传文档
查看更多
B宏程序语句

宏程序语句 和NC 语句 下面的程序段为宏程序语句: ? 包含算术或逻辑运算(=)的程序段。 ? 包含控制语句(例如,GOTO,DO,END)的程序段。 ? 包含宏程序调用指令(例如,用G65,G66,G67 或其它G 代码,M 代码 调用宏程序)的程序段。 除了宏程序语句以外的任何程序段都为NC 语句。 说明 ? 即使置于单程序段运行方式, 机床也不停止。但是, 当参数 N0.6000#5SBM 设定为1 时,在单程序段方式中,机床停止。 ? 与NC 语句的不同 ? 在刀具半径补偿方式中宏程序语句段不做为不移动程序段处理(见Ⅱ- 15.7 节)。 如果NPS(参数N0.3450#4)为1,满足以下条件时程序段中的NC 语句 可认为与宏程序语句性质相同。 ? 与宏程序语句有相 同性质的NC 语句 ? 含有子程序调用指令(例如,用M98 或其它M 代码或用T 代码调用子 程序)但没有除O,N 或L 地址之外的其它地址指令的NC 语句其性质 与宏程序相同。 ? 不包含除O,N,P 或L 以外的指令地址的程序段其性质与宏程序语句 相同。 15.5.2 IF 之后指定条件表达式。 条件转移 (IF 语句) IF[条件表达式] GOTO n 如果指定的条件表达式满足时,转移到标有顺序号n 的程序段。如果指定 的条件表达式不满足,执行下个程序段。 如果变量#1 的值大于10,转移到顺序号N2 的程序段。 IF[#1GT10]GOTO2; 如果条件满足 程序 如果条件不满足 N2 G00 G91 X10.0; IF[条件表达式 ]THEN 如果条件表达式满足,执行预先决定的宏程序语句。只执行一个宏程序语 句。 如果#1 和#2 的值相同,0 赋给#3。 IF〔#1 EQ #2〕THEN #3=0; 说明 ·条件表达式 条件表达式必须包括算符。算符插在两个变量中间或变量和常数中间,并 且用括号 (〔,〕)封闭。表达式可以替代变量。 运算符由2 个字母组成,用于两个值的比较,以决定它们是相等还是一个 值小于或大于另一个值。注意,不能使用不等符号。 ·运算符 表15.5.2 运算符 运算符 含义 EQ 等于(=) NE 不等于(≠) GT 大于(>) GE 大于或等于(≥) LT 小于(<) LE 小于等于(≤) ·示例程序 下面的程序计算数值1~10 的总和 〇9500 #1=0;???????????存储和数变量的初值 #2=1;???????????被加数变量的初值 N1 IF〔#2 GT 10〕GOTO2;??当被加数大于10 时转移到N2 #1=#1+#2;?????????计算和数 #2=#2+#1;?????????下一个被加数 GOTO1;??????????转到N1 N2 M30;??????????程序结束 功能 格式 备注 定义 #i=#j 加法 #i=#j+#k; 减法 #i=#j-#k; 乘法 #i=#j*#k; 除法 #i=#j/#k; 正弦 #i=SIN[#j]; 反正弦 #i=ASIN[#j]; 余弦 #i=COS[#j]; 反余弦 #i=ACOS[#j]; 正切 #i=TAN[#j]; 反正切 #i=ATAN[#j]/[#k]; 角度以度指定。90°30′ 表示为90.5 度。 平方根 #i=SQRT[#j]; 绝对值 #i=ABS[#j]; 舍入 #i=ROUND[#j]; 上取整 #i=FIX[#j]; 下取整 #i=FUP[#j]; 自然对数 #i=LN[#j]; 指数函数 #i=EXP[#j]; 或 #i=#j OR #k; 异或 #i=#j XOR #k; 与 #i=#j AND #k; 逻辑运算一位一位地按 二进制数执行。 从BCD 转为BIN #i=BIN[#j]; 从BIN 转为BCD #i=BCD[#j]; 用于与PMC 的信号交换 转移和循环 在程序中,使用GOTO 语句和IF 语句可以改变控制的流向。有三种转移 和循环操作可供使用: 转移和循环 GOTO 语句(无条件转移) IF 语句(条件转移:IF?THEN?) WHILE 语句(当?时循环) 转移到标有顺序号n 的程序段。当指定1 到99999 以外的顺序号时,出现 P/S 报警No.128。可用表达式指定顺序号。 15.5.1 无条件转移 (GOTO 语句) GOTOn;n:顺序号(1~99999) 例: GOTO1; GOTO#10; 15.5.3 循环 (WHILE 语句) 在WHILE 后指定一个条件表

文档评论(0)

cgtk187 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档