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

FANUC 宏程序基础篇

吐槽愉快

东北这两天真是冷到,大爷大妈都认不出来了!这两天齐齐哈尔的最低温度-32°C,体感温度竟然达到了-39°C,真是三九不南走,四九冻成狗啊!


一、宏程序的概述

虽然子程序对一个重复操作很有用,但若使用用户宏程序功能,则还可以使用变量、运算指令以及条件转移,使一般程序(如型腔加工和用户自定义的固定循环等)的编写变得更加容易。加工程序可以用一个简单的指令调用用户宏程序,就像调用子程序一样。

普通的加工程序直接用数值指定G 代码和移动量,例如G00 X100.0。使用用户宏程序时,除了可直接指定数值外,还可以指定变量号,可通过程序或MDI 面板上操作来改变该数值。
例如:

①#1=#2+100 ;
②G01 X#1 F300 ;

二、变量的表达方式

当指定一个变量时,在符号“#”的后面指定变量号。
#i (i=1,2,3,4,.....)
[例]

#5
#109
#1005
或者使用后面将要叙述的“运算指令”项目中的<表达式>,按照如下方式表达
#[<表达式>]
[例]

#[#100]
#[#1001-1]
#[#6/2]

三、变量的引用

可以用变量指定紧接地址之后的数值。如果编制一个<地址>#i 或<地址>‐#i 的程序,则意味着原样使用变量值,或者将其补码作为该地址的指令值。
[例] 当F#33、#33=1.5 时, 与指定了F1.5 时的情形相同。
当Z-#18、#18=20.0 时,与指定了Z-20.0 时的情形相同。
当G#130、#130=3.0 时,与指定了G3 时的情形相同。

四、注意事项
1、不可引用地址/、:、O 和N 中的变量。
[例] 不可编制诸如O#27、N#1 或N[#1]的程序。
2、不可将可选程序段跳过/n 的n(n=1~9)作为变量来使用。不能直接用变量来指定变量号。
[例] 用#30 来替换#5 的5 时,代之以指定##30,指定#[#30]。
3、不能指定超过每个地址中所确定的最大指令值的值。
[例] 当#140=120 时,G#140 超过最大指令值。

4、变量为地址数据时,变量被自动地四舍五入到各地址有效位数以下的位
数。
[例] 在设定单位为1/1000mm(IS-B)的装置上,#1 为12.3456 时,如果执行G00X#1;实际指令将成为G00 X12.346;
利用后面叙述的<表达式>,可以用<表达式>来替换紧跟在地址之后的数值。<地址>[<表达式>]或<地址>-[<表达式>]


若按照上面的顺序编程,则意味着原样使用<表达式>的值,或者将其补码作为该地址的指令值。需要注意的是,[ ]中使用的不带小数点的常量,视为其末尾带有小数点。

[例] X[#24+#18*COS[#1]]
Z-[#18+#26]__

五、附带运算功能表



你可能想看:

有话要说...

取消
扫码支持 支付码