FANUC宏程序详解
加减乘除
1.运算命令的种类
种类 加法 减法 乘法 除法
符号 + * /
格式 #i = #j + #k #i = #j - #k #i = #j*#k #i = #j / #k
✓ 大小相同但位置不同(组孔、阵列等) ✓ 特殊形状(椭圆、球等) ✓ 自动化功能(刀具长度测量、生产管理等)
实用文档
✓其 它
上一页
BEIJING-FANUC
宏程序与子程序的比较:
宏程序
子程序
使用变量
可使用变量
不可以使用变量
调用方式 G65 P_ L _<自变量赋值> ; M98 P_ _;
调用行有其 它NC指令时
BEIJING-FANUC
条件表达式
指令 #2 EQ #1
#2 NE #1
#2 GT #1
#2 LT #1
#2 GE #1
实用文档
#2 LE #1
意思 #2=#1 #2≠#1 #2>#1 #2<#1 #2≥#1 #2≤#1
BEIJING-FANUC
条件表达式
EQ和NE中的<空>不同于0
实用文档
当#1=<空>时
#1 = 123;
#1 123.000
变量的引用
• 跟在地址后面的数值可用变量来代替。
G01 X10.0 F#1;
F
G01 X-[#1+#2] F#1;
实用文档
把表达式放 在括号中
把#1值作为F 的指令值
BEIJING-FANUC
• 把变量用于地址数据的时候,被引用变量的值根据地址 的最小设定单位自动地四舍五入 G01 X#1; 当#1赋值为12.3456时,实际指令值为G01 X12.346;
• 改变引用变量的值的符号,要把负号放在#的前面
G00 X-#1;
实用文档
BEIJING-FANUC
• 当引用未定义的变量时,变量及地址字都被忽略
G00 X#1 Y#2;
当#1=0,#2为空时,
G00 X0;
• 程序号、顺序号和任选程序段跳转号不能使用变量
实用文档
O#1; N#3 Y200.0; /#2 G00 X10.;
#1000~
系统变量 可用于读写CNC运行时的各种数据
实用文档
BEIJING-FANUC
变量的范围
正值 0
负值
+10-29 ~ +1047 0
-10-29 ~ -1047
实用文档
BEIJING-FANUC
2.变量的显示与设定
变量的显示
1.按下MDI面板上的
功能键
OFFSET SETTING
2.按几次 键,直至出现
一、变量
• 变量的种类 • 变量的显示与设定 • 变量的使用 • 未定义变量
实用文档
BEIJING-FANUC
1. 变量的种类
变量的表示 变量符号(#)+ 变量号
例: #10,#1005
▪ 表达式也可以用于指定变量号,需封闭在括号中。
例: #[#2-1], #[#500/2]
▪ 可在程序段结尾加注释说明变量内容,需用括号 封闭。
实用3.文键档 入数据并按
BEIJING-FANUC
3.变量的使用
表示方法 # i = <表达式>
将计算结果赋值 给对应的变量号
常数、变量、函数 和运算符的组合
#1= #2 + 100 ; #1= #2 + #18 * SIN[#5] ;
实用文档
BEIJING-FANUC
变量的定义
•当在程序中定义变量值时,小数点可以省略
实用文档
例: #2=#3-1(TOOL NUMBER);
BEIJING-FANUC
变量的种类
变量号 变量类型
用途
#0
空变量
总为空
#1~#33
#100~#199 #500~#999
局部变量 公共变量
只能用在当前宏程序中存储变量, 断电后数据初始化
在不同的程序中意义相同,各宏程 序公用。断电后#100~#199初始化 为空, #500~#999数据保存
BEIJING-FANUC
4.未定义变量
当变量值未定义时,这样的变量成为<空>变量
• 变量#0 总是空变量,它不能写只能读 未定义变量的引用
当引用一个未定义的变量时,地址本身也被忽略
实用文档
当#1=<空>时
G90 X100 Y#1 ↓
G90 X100
当#1=0时
G90 X100 Y#1 ↓
G90 X100 Y0
#1 EQ #0 ↓
成立
#1 NE 0 ↓
成立
#1 GE #0 ↓
成立
#1 GT 0 ↓
不成立
当#1=0时
#1 EQ #0 ↓
不成立
#1 NE 0 ↓
不成立
#1 GE #0 ↓
成立
#1 GT 0 ↓
不成立
BEIJING-FANUC
二、运算指令
• 运算命令的种类 • 运算顺序
实用文档
BEIJING-FANUC
BEIJING-FANUC
未定义变量的计算
除了用<空>赋值以外,其余情况下<空>与0 相同
用<空>赋值
实用文档
当#1=<空>时
#2=#1 ↓ #2=<空>
#2=#1﹡5 ↓ #2=0
#2=#1+#1 ↓ #2=0
当#1=0时
#2=#1 ↓ #2=0
#2=#1﹡5 ↓ #2=0
#2=#1+# 1 ↓ #2=0
实用文档
0: 清空 1: 不清空 0: 清空 1: 不清空
BEIJING-FANUC
#4(NE9) 编辑程序号为9000~9999的程序
0: 不禁止 1: 禁止
#6(NPE)
实用文档
程序登录时,对含有M02,M99,M30的程序段 0: 视为登录结束 1: 不视为登录结束
BEIJING-FANUC
实用文档
BEIJING-FANUC 3.按下
显示宏程序变量 值
实用文档
BEIJING-FANUC
4.按
、
显示局部和公共
变量值
实用文档
BEIJING-FANUC
公共变量的设定
1.找到显示公共变量的画面。
2.将光标移至欲设定的变量 号上。
• 键入变量号并按 键
• 按换页键
、
和光标键将光标移
至欲设定的变量号上
BEIJING-FANUC
用户宏程序
实用文档
BEIJING-FANUC
主要内容:
一、变量
二、运算指令
三、控制指令
四、简单练习
五、系统变量
实用文档
六、宏程序调用
BEIJING-FANUC 主程序
宏程序
实用文档
下一页
BEIJING-FANUC
宏程序的适用范围:
✓ 形状类似但大小不同(圆、方及其它)
无条件调用
先执行NC指令,再 调用子程序
嵌套
4重
4重
实用文档
BEIJING-FANUC0: 单程序段不停止 1: 单程序段停止
#6(CCV) 复位(Reset)后,公共变量#100~#199
#7(CLV) 复位(Reset)后,局部变量#1~#33