当前位置:首页 > 科技 > 正文

FANUC系统宏程序编程的变量,简单实用

?点击上方,关注我哈

普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板上的操作改变。

  普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板上的操作改变。

  #1=#2+100

  G01 X#1 F300

  说明:

  变量的表示

  计算机允许使用变量名,用户宏程序不行。变量用变量符号(#)和后面的变量号指定。

  例如:#1

  表达式可以用于指定变量号。此时,表达式必须封闭在括号中。

  例如:#[#1+#2-12]

  变量的类型

  变量根据变量号可以分成四种类型

  1.变量号:#0

  变量类型:空变量

  功能:该变量总是空,没有值能赋给该变量。

  2.变量号:#1-#33

  变量类型:局部变量

  功能:局部变量只能用在宏程序中存储数据,例如,运算结果.当断电时,局部变量被初始化为空.调用宏程序时,自变量对局部变量赋值。

  3.变量号:#100-#199、#500-#999

  变量类型:公共变量

  功能:公共变量在不同的宏程序中的意义相同.当断电时,变量#100-#199初始化为空.变量#500-#999的数据保存,即使断电也不丢失。

4.变量号:#1000 变量类型:系统变量 功能:系统变量用于读和写CNC运行时各种数据的变化,例如,刀具的当前位置和补偿值。 变量值的范围 局部变量和公共变量可以有0值或下面范围中的值: -1047到-10-29或-10-2到-1047

  4.变量号:#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总是空变量。它不能写,只能读。 (a) 引用 当引用一个未定义的变量时,地址本身也被忽略。 当#1=空 G90 X100 Y#1 G90 X100 当#1=0 G90 X100 Y#1 G90

  未定义的变量

  当变量值未定义时,这样的变量成为空变量。变量#0总是空变量。它不能写,只能读。

  (a) 引用

  当引用一个未定义的变量时,地址本身也被忽略。

  当#1=

  G90 X100 Y#1

  G90 X100

  当#1=0

  G90 X100 Y#1

  G90 X100 Y0

  (b) 运算

  除了用 赋值以外,其余情况下 与0相同。

  当#1= 时

  #2=#1

  #2=

  #2=#*5

  #2=0

  #2=#1+#1

  #2=0

  当#1=0时

  #2=#1

  #2=0

  #2=#*5

  #2=0

  #2=#1+#1

  #2=0

  (c)条件表达式

  EQ和NE中的 不同于0。

  当#1= 时

  #1EQ#0 成立

  #1 NE #0 成立

  #1 GE #0 成立

  #1 GT #0 不成立

  当#1=0时

  #1EQ#0 不成立

  #1 NE #0 不成立

  #1 GE #0 不成立

  #1 GT #0 不成立

  限制

  程序号,顺序号和任选程序段跳转号不能使用变量。

  例:下面情况不能使用变量:

  0#1;

  /#2G00X100.0;

  N#3Y200.0;

你可能想看:

有话要说...

取消
扫码支持 支付码