分享

FANUC系统加工中心用户宏程序使用详解

 随波逐流S 2011-03-27
FANUC系统加工中心用户宏程序使用详解
时间:2009-07-15   来源:五月花专修学院  作者:马永菊   浏览:987/次

  能完成某一功能的一系列指令像子程序那样存入存储器,用一个总指令来它们,使用时只需给出这个总指令就能执行其功能。
  能完成某一功能的一系列指令像子程序那样存入存储器,用一个总指令来它们,使用时只需给出这个总指令就能执行其功能。

  所存入的这一系列指令——用户宏程序

  调用宏程序的指令————宏指令

  特点:使用变量

  一. 变量的表示和使用

  (一) 变量表示

  #I(I=1,2,3,…)或#[<式子>]

  例:#5,#109,#501,#[#1+#2-12]

  (二) 变量的使用

  1. 地址字后面指定变量号或公式

  格式: <地址字>#I

  <地址字>-#I

  <地址字>[<式子>]

  例:F#103,设#103=15 则为F15

  Z-#110,设#110=250 则为Z-250

  X[#24+#18*COS[#1]]

  2. 变量号可用变量代替

  例:#[#30],设#30=3 则为#3

  3. 变量不能使用地址O,N,I

  例:下述方法下允许

  O#1;

  I#2 6.00×100.0;

  N#3 Z200.0;

  4. 变量号所对应的变量,对每个地址来说,都有具体数值范围

  例:#30=1100时,则M#30是不允许的

  5. #0为空变量,没有定义变量值的变量也是空变量

  6. 变量值定义:

  程序定义时可省略小数点,例:#123=149
MDI键盘输一. 变量的种类

  1. 局部变量#1~#33

  一个在宏程序中局部使用的变量

  例:   A宏程序     B宏程序

  …        …

  #10=20     X#10 不表示X20

  …        …

  断电后清空,调用宏程序时代入变量值

  2. 公共变量#100~#149,#500~#531

  各用户宏程序内公用的变量

  例:上例中#10改用#100时,B宏程序中的

  X#100表示X20

  #100~#149 断电后清空

  #500~#531保持型变量(断电后不丢失)

  3. 系统变量

  固定用途的变量,其值取决于系统的状态

  例:#2001值为1号刀补X轴补偿值

  #5221值为X轴G54工件原点偏置值

  入时必须输入小数点,小数点省略时单位为μm

    一. 运算指令

  运算式的右边可以是常数、变量、函数、式子

  式中#j,#k也可为常量

  式子右边为变量号、运算式

  1. 定义

  #I=#j

  2. 算术运算

  #I=#j+#k

  #I=#j-#k

  #I=#j*#k

  #I=#j/#k

  3. 逻辑运算

  #I=#JOK#k

  #I=#JXOK#k

  #I=#JAND#k

  4. 函数

  #I=SIN[#j] 正弦

  #I=COS[#j] 余弦

  #I=TAN[#j] 正切

  #I=ATAN[#j] 反正切

  #I=SQRT[#j] 平方根

  #I=ABS[#j] 绝对值

  #I=ROUND[#j] 四舍五入化整

  #I=FIX[#j] 下取整

  #I=FUP[#j] 上取整

  #I=BIN[#j] BCD→BIN(二进制)

  #I=BCN[#j] BIN→BCD

    1. 说明

  1) 角度单位为度

  例:90度30分为90.5度

  2) ATAN函数后的两个边长要用“1”隔开

  例:#1=ATAN[1]/[-1]时,#1为了35.0

  3) ROUND用于语句中的地址,按各地址的最小设定单位进行四舍五入

  例:设#1=1.2345,#2=2.3456,设定单位1μm

  G91 X-#1;X-1.235

  X-#2 F300;X-2.346

  X[#1+#2];X3.580

  未返回原处,应改为

  X[ROUND[#1]+ROUND[#2]];

  4) 取整后的绝对值比原值大为上取整,反之为下取整

  例:设#1=1.2,#2=-1.2时

  若#3=FUP[#1]时,则#3=2.0

  若#3=FIX[#1]时,则#3=1.0

  若#3=FUP[#2]时,则#3=-2.0

  若#3=FIX[#2]时,则#3=-1.0

  5) 指令函数时,可只写开头2个字母

  例:ROUND→RO

  FIX→FI

  6) 优先级

  函数→乘除(*,1,AND)→加减(+,-,OR,XOR)

  例:#1=#2+#3*SIN[#4];

  7) 括号为中括号,最多5重,园括号用于注释语句

  例:#1=SIN[[[#2+#3]*#4+#5]*#6];(3重)
       一. 转移与循环指令

  1.无条件的转移

  格式: GOTO 1;

  GOTO #10;

  2.条件转移

  格式: IF[<条件式>= GOTO n

  条件式:

  #j EQ#k 表示=

  #j NE#k 表示≠

  #j GT#k 表示>

  #j LT#k 表示<

  #j GE#k 表示≥

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多