欢迎来到天天文库
浏览记录
ID:21745474
大小:1.39 MB
页数:48页
时间:2018-10-20
《fanuc宏程序详解》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、用户宏程序用户宏程序用户宏程序一、变量二、运算指令三、控制指令四、简单练习五、系统变量六、宏程序调用主要内容:用户宏程序主程序宏程序下一页用户宏程序宏程序的适用范围:形状类似但大小不同(圆、方及其它)其它自动化功能(刀具长度测量、生产管理等)特殊形状(椭圆、球等)大小相同但位置不同(组孔、阵列等)上一页用户宏程序宏程序与子程序的比较:宏程序子程序使用变量可使用变量不可以使用变量调用方式G65P_L_<自变量赋值>;M98P__;调用行有其它NC指令时无条件调用先执行NC指令,再调用子程序嵌套4重4重用户宏程序
2、宏程序相关的参数#5(SBM)用户宏程序语句中,0:单程序段不停止1:单程序段停止#6(CCV)复位(Reset)后,公共变量#100~#1990:清空1:不清空#7(CLV)复位(Reset)后,局部变量#1~#330:清空1:不清空用户宏程序#4(NE9)编辑程序号为9000~9999的程序0:不禁止1:禁止#6(NPE)程序登录时,对含有M02,M99,M30的程序段0:视为登录结束1:不视为登录结束用户宏程序变量的种类变量的显示与设定变量的使用未定义变量一、变量用户宏程序1.变量的种类例:#10,#1
3、005表达式也可以用于指定变量号,需封闭在括号中。例:#[#2-1],#[#500/2]可在程序段结尾加注释说明变量内容,需用括号封闭。例:#2=#3-1(TOOLNUMBER);变量符号(#)+变量号变量的表示用户宏程序变量号变量类型用途#0空变量总为空#1~#33局部变量只能用在当前宏程序中存储变量,断电后数据初始化#100~#199#500~#999公共变量在不同的程序中意义相同,各宏程序公用。断电后#100~#199初始化为空,#500~#999数据保存#1000~系统变量可用于读写CNC运行时的各种
4、数据变量的种类用户宏程序正值+10-29~+104700负值-10-29~-1047变量的范围用户宏程序2.变量的显示与设定变量的显示1.按下MDI面板上的功能键OFFSETSETTING2.按几次键,直至出现用户宏程序3.按下显示宏程序变量值用户宏程序4.按、显示局部和公共变量值用户宏程序公共变量的设定1.找到显示公共变量的画面。2.将光标移至欲设定的变量号上。键入变量号并按键按换页键、和光标键将光标移至欲设定的变量号上3.键入数据并按用户宏程序3.变量的使用#i=<表达式>将计算结果赋值给对应的变量号常数
5、、变量、函数和运算符的组合表示方法#1=#2+100;#1=#2+#18*SIN[#5];用户宏程序变量的定义当在程序中定义变量值时,小数点可以省略#1=123;#1123.000变量的引用跟在地址后面的数值可用变量来代替。G01X10.0F#1;F把#1值作为F的指令值G01X-[#1+#2]F#1;把表达式放在括号中用户宏程序把变量用于地址数据的时候,被引用变量的值根据地址的最小设定单位自动地四舍五入G01X#1;当#1赋值为12.3456时,实际指令值为G01X12.346;改变引用变量的值的符号,要把
6、负号放在#的前面G00X-#1;用户宏程序当引用未定义的变量时,变量及地址字都被忽略G00X#1Y#2;当#1=0,#2为空时,G00X0;程序号、顺序号和任选程序段跳转号不能使用变量O#1;N#3Y200.0;/#2G00X10.;用户宏程序4.未定义变量当变量值未定义时,这样的变量成为<空>变量变量#0总是空变量,它不能写只能读未定义变量的引用当引用一个未定义的变量时,地址本身也被忽略当#1=<空>时当#1=0时G90X100Y#1↓G90X100G90X100Y#1↓G90X100Y0用户宏程序未定义变
7、量的计算除了用<空>赋值以外,其余情况下<空>与0相同当#1=<空>时当#1=0时#2=#1↓#2=<空>#2=#1↓#2=0#2=#1﹡5↓#2=0#2=#1﹡5↓#2=0#2=#1+#1↓#2=0#2=#1+#1↓#2=0用<空>赋值用户宏程序条件表达式指令意思#2EQ#1#2=#1#2NE#1#2≠#1#2GT#1#2>#1#2LT#1#2<#1#2GE#1#2≥#1#2LE#1#2≤#1用户宏程序条件表达式EQ和NE中的<空>不同于0当#1=<空>时当#1=0时#1EQ#0↓成立#1EQ#0↓不成立#
8、1NE0↓成立#1NE0↓不成立#1GE#0↓成立#1GE#0↓成立#1GT0↓不成立#1GT0↓不成立用户宏程序二、运算指令运算命令的种类运算顺序用户宏程序种类符号格式加法+#i=#j+#k减法-#i=#j-#k乘法*#i=#j*#k除法/#i=#j/#k1.运算命令的种类加减乘除用户宏程序种类函数名格式下取整FIX#i=FIX[#k]上取整FUP#i=FUP[#k]四舍五入ROUND#i=ROU
此文档下载收益归作者所有