CNC代码及宏程式指令.doc

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

加工中心宏程式 一?变量? 普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用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运行时各种数据的变化,例如,刀具的当前位置和补偿值.? 变量值的范围 局部变量和公共变量可以有0值或下面范围中的值: -1047到-10-29或-10-2到-1047 如果计算结果超出有效范围,则发出P/S报警NO.111. 小数点的省略 当在程序中定义变量值时,小数点可以省略。? 例:当定义#1=123;变量#1的实际值是123.000。 变量的引用 为在程序中使用变量值,指定后跟变量号的地址。当用表达式指定变量时,要把表达式放在括号中。? 例如:G01X[#1+#2]F#3; 被引用变量的值根据地址的最小设定单位自动地舍入。? 例如:? 当G00X#/;以1/1000mm的单位执行时,CNC把123456赋值给变量#1,实际指令值为G00X12346. 改变引用变量的值的符号,要把负号(-)放在#的前面。? 例如:G00X-#1 当引用未定义的变量时,变量及地址都被忽略。? 例如:当变量#1的值是0,并且变量#2的值是空时,G00X#1?Y#2的执行结果为G00X0。? 双轨迹(双轨迹控制)的公共变量 对双轨迹控制,系统为每一轨迹都提供了单独的宏变量,但是,根据参数N0.6036和6037的设定,某些公共变量可同时用于两个轨迹。? 未定义的变量 当变量值未定义时,这样的变量成为空变量。变量#0总是空变量。它不能写,只能读。? 引用 当引用一个未定义的变量时,地址本身也被忽略。?当#1=空??当#1=0? G90?X100?Y#1 G90?X100?G90?X100?Y#1 G90?X100?Y0? (b)?运算? 除了用空赋值以外,其余情况下空与0相同。? 当#1=空时??当#1=0时?? #2=#1 #2=空?#2=#1 #2=0? #2=#*5 #2=0?#2=#*5 #2=0? #2=#1+#1 #2=0?#2=#1+#1 #2=0? ?条件表达式? EQ和NE中的空不同于0。? 当#1=空时??当#1=0时?? #1EQ#0?成立??#1EQ#0?不成立?? #1?NE?#0?成立??#1?NE?#0?不成立?? #1?GE?#0?成立??#1?GE?#0?不成立?? #1?GT?#0?不成立??#1?GT?#0?不成立?? 限制 程序号,顺序号和任选程序段跳转号不能使用变量。? 例:下面情况不能使用变量:? 0#1;? /#2G00X100.0; N#3Y200.0; 二?算术和逻辑运算? 下面表中列出的运算可以在变量中执行。运算符右边的表达式可包含常量和或由函数或运算符组成的变量。表达式中的变量#j和#k可以用常数赋值。左边的变量也可以用表达式赋值。? 说明:? 角度单位 函数SIN?,COS,ASIN,ACOS,TAN和ATAN的角度单位是度。如90°30’表示为90.5度。 ARCSIN?#?i=?ASIN[#j]? (1)取值范围如下:? 当参数(NO.6004#0)NAT位设为0时,270°~90°? 当参数(NO.6004#0)NAT位设为1时,-90°~90°? (2)当#j超出-1到1的范围时,发出P/S报警NO.111. (3)常数可替代变量#j ARCCOS?#i=ACOS[#j]?取值范围从180°~0°?当#j超出-1到1的范围时,发出P/S报警NO.111.?常数可替代变量#j 三?程序举例 铣椭圆: 轨迹: 椭圆程序代码如下: N10?G54?G90?G0?S1500?M03 N12?X0?Y0?Z20. N14?G0?Z1 N16?G1?Z-5.?F150. N18?G41?D1 N20?#1=0 N22?#2=34 N24?#3=2

文档评论(0)

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

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

1亿VIP精品文档

相关文档