FANUC宏程序详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用户宏程序
例: #2=#3-1(TOOL NUMBER);
变量的种类
变量号 #0 #1~#33 #100~#199 #500~#999 变量类型 空变量 局部变量 用 途
总为空
只能用在当前宏程序中存储变量, 断电后数据初始化
在不同的程序中意义相同,各宏程 序公用。断电后#100~#199初始化 为空, #500~#999数据保存
用户宏程序
用户宏程序
主要内容:
一、变量 二、运算指令 三、控制指令 四、简单练习
五、系统变量
六、宏程序调用
用户宏程序
主程序
宏程序
用户宏程序
下一页
宏程序的适用范围: 形状类似但大小不同(圆、方及其它) 大小相同但位置不同(组孔、阵列等) 特殊形状(椭圆、球等)
自动化功能(刀具长度测量、生产管理等)
显示
宏程序变量值
用户宏程序
4.按

显示局部和公共 变量值
用户宏程序
公共变量的设定
1.找到显示公共变量的画面。
2.将光标移至欲设定的变量 号上。
• 键入变量号并按

• 按换页键 、 和 光标键将光标移至欲设定 的变量号上 3.键入数据并按
用户宏程序
3.变量的使用
表示方法 #i
将计算结果赋值 给对应的变量号
#1 GE #0 ↓ 成立
#1 GT 0 ↓ 不成立
#1 GE #0 ↓ 成立
#1 GT 0 ↓ 不成立
用户宏程序
二、运算指令
• 运算命令的种类 • 运算顺序
用户宏程序
1.运算命令的种类
加减乘除
种 类 加法
减法 乘法 除法
用户宏程序
符 号 +
* /
格 式 #i = #j + #k
#i = #j - #k #i = #j*#k #i = #j / #k
=
<表达式>
常数、变量、函数 和运算符的组合
#1= #2 + 100 ; #1= #2 + #18 * SIN[#5] ;
用户宏程序
变量的定义
•当在程序中定义变量值时,小数点可以省略 #1 = 123; #1 123.000
变量的引用
• 跟在地址后面的数值可用变量来代替。
把#1值作为F 的指令值
G01 X10.0 F#1;
公共变量 系统变量
#1000~
用户宏程序
可用于读写CNC运行时的各种数据
变量的范围
正 值 0
+10-29 ~ +1047 0
负 值
-10-29 ~ -1047
用户宏程序
2.变量的显示与设定
变量的显示
1.按下MDI面板上 的功能键
OFFSET SETTING
2.按几次 直至出现
键,
用户宏程序
3.按下
1: 不视为登录结束
用户宏程序
一、变量
• 变量的种类 • 变量的显示与设定 • 变量的使用
• 未定义变量
用户宏程序
1. 变量的种类
变量的表示 变量符号(#)+ 变量号 例: #10, #1005
表达式也可以用于指定变量号,需封闭在括号中。 例: #[#2-1], #[#500/2]
可在程序段结尾加注释说明变量内容,需用括号 封闭。
其它
用户宏程序
上一页
宏程序与子程序的比较:
使用变量
调用方式
调用行有其 它NC指令时 嵌套
宏程序 子程序 可使用变量 不可以使用变量 G65 P_ L _<自变量赋值> ; M98 P_ _;
无条件调用 4重 先执行NC指令,再 调用子程序 4重
用户宏程序
宏程序相关的参数
#5(SBຫໍສະໝຸດ Baidu)
用户宏程序语句中, 0: 单程序段不停止 1: 单程序段停止
#6(CCV) 复位(Reset)后,公共变量#100~#199
0: 清空
1: 不清空
#7(CLV) 复位(Reset)后,局部变量#1~#33
用户宏程序
0: 清空
1: 不清空
#4(NE9)
编辑程序号为9000~9999的程序
0: 不禁止 1: 禁止
#6(NPE)
程序登录时,对含有M02,M99,M30的程序段 0: 视为登录结束
G90 X100 Y#1 ↓ G90 X100
用户宏程序
G90 X100 Y#1 ↓ G90 X100 Y0
未定义变量的计算 除了用<空>赋值以外,其余情况下<空>与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
G01 X-[#1+#2] F#1;
用户宏程序
F
把表达式放 在括号中
• 把变量用于地址数据的时候,被引用变量的值根据地址 的最小设定单位自动地四舍五入 G01 X#1; 当#1赋值为12.3456时,实际指令值为G01 X12.346; • 改变引用变量的值的符号,要把负号放在#的前面
G00 X-#1;
计算相应的变量值#1
运算指令 #1= FIX[ #2 ]
#1= FUP[ #2 ] #1=ROUND[ #2 ] #1=ABS[ #2 ]
#2=1.234时
1.0 2.0 1.0
用户宏程序
• 当引用未定义的变量时,变量及地址字都被忽略 G00 X#1 Y#2; 当#1=0,#2为空时, G00 X0;
• 程序号、顺序号和任选程序段跳转号不能使用变量
O#1;
N#3 Y200.0;
用户宏程序
/#2 G00 X10.;
4.未定义变量
当变量值未定义时,这样的变量成为<空>变量 • 变量#0 总是空变量,它不能写只能读 未定义变量的引用 当引用一个未定义的变量时,地址本身也被忽略 当#1=<空>时 当#1=0时
数据处理
种 类 下取整
上取整 四舍五入 绝对值
函数名 FIX
FUP ROUND ABS
格 式 #i = FIX[ #k ]
#i = FUP[ #k ] #i =ROUND[ #k ] #i =ABS[ #k ]
下取整(FIX):舍去小数点以下部分 上取整(FUP):将小数后部分进位到整数部分
用户宏程序
用<空>赋值
用户宏程序
条件表达式 指令 #2 EQ #1 #2 NE #1 #2 GT #1 #2 LT #1 意思 #2=#1 #2≠#1 #2>#1 #2<#1
#2 GE #1
#2 LE #1
用户宏程序
#2≥#1
#2≤#1
条件表达式 EQ和NE中的<空>不同于0
当#1=<空>时 #1 EQ #0 ↓ 成立 #1 NE 0 ↓ 成立 当#1=0时 #1 EQ #0 ↓ 不成立 #1 NE 0 ↓ 不成立
相关文档
最新文档