FANUC宏程序详解谷风详析_第1页
FANUC宏程序详解谷风详析_第2页
FANUC宏程序详解谷风详析_第3页
FANUC宏程序详解谷风详析_第4页
FANUC宏程序详解谷风详析_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1特制分析特制分析一、一、变量变量二、运算指令二、运算指令三、控制指令三、控制指令四、简单练习四、简单练习五、系统变量五、系统变量六、宏程序调用六、宏程序调用主要内容:主要内容:2特制分析特制分析主程序主程序宏程序宏程序下一页下一页3特制分析特制分析宏程序的宏程序的适用范围:适用范围: 形状类似但大小不同(圆、方及其它)形状类似但大小不同(圆、方及其它) 其它其它 自动化功能(刀具长度测量、生产管理等)自动化功能(刀具长度测量、生产管理等) 特殊形状(椭圆、球等)特殊形状(椭圆、球等) 大小相同但位置不同(组孔、阵列等)大小相同但位置不同(组孔、阵列等)上一页上一页4特制分析特制分析宏程序宏程

2、序与子程序的比较:与子程序的比较:宏程序宏程序子程序子程序使用变量使用变量可使用变量可使用变量不可以使用变量不可以使用变量调用方式调用方式g65 p_ l _ ;m98 p_ _;调用行有其调用行有其它它nc指令时指令时无条件调用无条件调用先执行先执行nc指令指令,再再调用子程序调用子程序嵌套嵌套4重重4重重5特制分析特制分析宏程序宏程序相关的参数相关的参数#5(sbm) 用户宏程序语句中,用户宏程序语句中, 0: 单程序段不停止单程序段不停止 1: 单程序段停止单程序段停止#6(ccv) 复位(复位(reset)后,公共变量)后,公共变量#100#1990: 清空清空1: 不清空不清空#7(

3、clv) 复位(复位(reset)后,局部变量)后,局部变量#1#33 0: 清空清空1: 不清空不清空6特制分析特制分析#4(ne9) 编辑程序号为编辑程序号为90009999的程序的程序0: 不禁止不禁止1: 禁止禁止#6(npe) 程序登录时,对含有程序登录时,对含有m02,m99,m30的程序段的程序段0: 视为登录结束视为登录结束1: 不视为登录结束不视为登录结束7特制分析特制分析 变量的种类变量的种类 变量的显示与设定变量的显示与设定 变量的使用变量的使用 未定义变量未定义变量一、变量一、变量8特制分析特制分析1. 变量的种类变量的种类 例:例:#10,#1005 表达式表达式也可

4、以用于指定变量号,需封闭在括号中。也可以用于指定变量号,需封闭在括号中。 例:例:#2-1,#500/2 可在程序段结尾加可在程序段结尾加注释注释说明变量内容,需用括号说明变量内容,需用括号封闭。封闭。 例:例: #2=#3-1(tool number);变量符号(变量符号(#)+ 变量号变量号变量的表示变量的表示9特制分析特制分析变量号变量号变量类型变量类型用用 途途#0空变量空变量总为空总为空#1#33局部变量局部变量只能用在当前宏程序中存储变量,只能用在当前宏程序中存储变量,断电后数据初始化断电后数据初始化#100#199#500#999公共变量公共变量在不同的程序中意义相同,各宏程在不

5、同的程序中意义相同,各宏程序公用。序公用。断电后断电后#100#199初始化初始化为空,为空, #500#999数据保存数据保存#1000系统变量系统变量可用于读写可用于读写cnc运行时的各种数据运行时的各种数据变量的种类变量的种类10特制分析特制分析正正 值值+10-29 +104700负负 值值-10-29 -1047变量的范围变量的范围11特制分析特制分析2.变量的显示与设定变量的显示与设定变量的显示变量的显示1.按下按下mdi面板上面板上的功能键的功能键offsetsetting2.按几次按几次 键,键,直至出现直至出现12特制分析特制分析3.按下按下 显示显示宏程序变量值宏程序变量值

6、13特制分析特制分析4.按按 、 显示局部和公共显示局部和公共变量值变量值14特制分析特制分析公共变量的设定公共变量的设定1.找到显示公共变量的画面。找到显示公共变量的画面。2.将光标移至欲设定的变量将光标移至欲设定的变量号上。号上。 键入变量号并按键入变量号并按 键键 按换页键按换页键 、 和和光标键将光标移至欲设定光标键将光标移至欲设定的变量号上的变量号上3.键入数据并按键入数据并按15特制分析特制分析3.变量的使用变量的使用 将计算结果赋值将计算结果赋值给对应的变量号给对应的变量号常数、变量、函数常数、变量、函数和运算符的组合和运算符的组合表示方法表示方法#1= #2 + 100 ;#1

7、= #2 + #18 sin#5 ;16特制分析特制分析变量的定义变量的定义当在程序中定义变量值时,小数点可以省略当在程序中定义变量值时,小数点可以省略#1 = 123;#1123.000变量的引用变量的引用 跟在地址后面的数值可用变量来代替。跟在地址后面的数值可用变量来代替。g01 x10.0 f#1;f把把#1值作为值作为f的指令值的指令值g01 x-#1+#2 f#1;把表达式放把表达式放在括号中在括号中17特制分析特制分析 把变量用于地址数据的时候,被引用变量的值把变量用于地址数据的时候,被引用变量的值根据地址根据地址的最小设定单位自动地四舍五入的最小设定单位自动地四舍五入g01 x#

8、1;当当#1赋值为赋值为12.3456时,实际指令值为时,实际指令值为g01 x12.346; 改变引用变量的值的符号,要改变引用变量的值的符号,要把负号放在把负号放在#的前面的前面g00 x-#1;18特制分析特制分析 当引用未定义的变量时,当引用未定义的变量时,变量及地址字都被忽略变量及地址字都被忽略g00 x#1 y#2;当当#1=0,#2为空时,为空时, g00 x0; 程序号、顺序号程序号、顺序号和和任选程序段跳转号任选程序段跳转号不能使用变量不能使用变量o#1;n#3 y200.0;/#2 g00 x10.;19特制分析特制分析4.未定义变量未定义变量当变量值未定义时,这样的变量成

9、为当变量值未定义时,这样的变量成为变量变量 变量变量#0 总是空变量总是空变量,它不能写只能读它不能写只能读未定义变量的引用未定义变量的引用当引用一个未定义的变量时当引用一个未定义的变量时, ,地址本身也被忽略地址本身也被忽略当当#1=时时当当#1=0时时g90 x100 y#1 g90 x100g90 x100 y#1 g90 x100 y020特制分析特制分析未定义变量的计算未定义变量的计算除了用除了用赋值以外,其余情况下赋值以外,其余情况下与与0 相同相同当当#1=时时当当#1=0时时#2=#1 #2=#2=#1 #2=0#2=#15 #2=0#2=#15 #2=0#2=#1+#1 #2

10、=0#2=#1+# 1 #2=0用用赋值赋值21特制分析特制分析条件表达式条件表达式指令指令意思意思#2 eq #1#2=#1#2 ne #1#2#1#2 gt #1#2#1#2 lt #1#2#1#2 ge #1#2#1#2 le #1#2#122特制分析特制分析条件表达式条件表达式eq和和ne中的中的不同于不同于0当当#1=时时当当#1=0时时#1 eq #0成立成立#1 eq #0不成立不成立#1 ne 0成立成立#1 ne 0不成立不成立#1 ge #0成立成立#1 ge #0成立成立#1 gt 0不成立不成立#1 gt 0不成立不成立23特制分析特制分析二、运算指令二、运算指令 运算

11、命令的种类运算命令的种类 运算顺序运算顺序 24特制分析特制分析种种 类类符符 号号格格 式式加法加法+#i = #j + #k 减法减法-#i = #j - #k乘法乘法#i = #j#k除法除法/#i = #j / #k1.运算命令的种类运算命令的种类加减乘除加减乘除25特制分析特制分析种种 类类函数名函数名格格 式式下取整下取整fix#i = fix #k 上取整上取整fup#i = fup #k 四舍五入四舍五入round#i =round #k 绝对值绝对值abs#i =abs #k 下取整下取整(fix):舍去小数点以下部分:舍去小数点以下部分上取整上取整(fup):将小数后部分进

12、位到整数部分:将小数后部分进位到整数部分数据处理数据处理26特制分析特制分析运算指令运算指令#2=1.234时时#2=-1.679时时#1= fix #2 #1= fup #2 #1=round #2 #1=abs #2 1.02.0-1.0-2.01.01.234-2.01.679计算相应的变量值计算相应的变量值#1下取整下取整(fix):舍去小数点以下部分:舍去小数点以下部分上取整上取整(fup):将小数后部分进位到整数部分:将小数后部分进位到整数部分27特制分析特制分析种种 类类符符 号号格格 式式结果结果正弦正弦sin#i=sinc/a余弦余弦cos#i=cosb/a正切正切tan#i

13、=tanc/b反正弦反正弦asin#i=asinc/a反余弦反余弦acos#i=acosb/a反正切反正切atan#i=atanc/b三角函数的角度单位为三角函数的角度单位为度度。如:。如:9030表示为表示为90.5三角函数三角函数28特制分析特制分析反三角函数的取值范围反三角函数的取值范围函函 数数no.6004#0=0no.6004#0=1atan0360-180+180asin27090-9090acos1800#1=sin90;#1=cos90;#1=tan45;#1=atan1/1;#1=atan-1/-1;101123.000123.000#1#1#1#1#129特制分析特制分析

14、其它函数其它函数种种 类类函数名函数名格格 式式平方根平方根sqrt#i = sqrt #k 自然对数自然对数ln#i = ln #k 指数函数指数函数exp#i =exp #k #2=2;#1=sqrt#2;1.414#130特制分析特制分析逻辑运算逻辑运算种种 类类名称名称格格 式式或或or#i = #j or #k异或异或xor#i = #j xor #k与与and#i = #j and #k 对对32位的每一位按二进制进行逻辑运算位的每一位按二进制进行逻辑运算输入值输入值或或异或异或与与0000001110101101110131特制分析特制分析十进制十进制二进制二进制#2210001

15、0101#31200001111#1=#2 or #3#1=#2 xor #3#1=#2 and #329254000111010001100100000100从从bcd转为转为bin: #i= bin#j;从从bin转为转为bcd: #i= bcd#j;32特制分析特制分析2. 运算顺序运算顺序 函数函数 乘除运算(乘除运算( ,/,and ) 加减运算加减运算(+, - , or , xor )#1=#2 + #3 sin#4;33特制分析特制分析 可以利用可以利用 来改变运算顺序,可来改变运算顺序,可嵌套嵌套5次次 可以使用函数名可以使用函数名前面的两个字母前面的两个字母来指定该函数。来

16、指定该函数。roundro fixfi34特制分析特制分析三、控制指令三、控制指令 goto 语句语句 if 语句语句 while 语句语句 35特制分析特制分析1.无条件转移(无条件转移(goto 语句)语句) goto n; n:程序段号(:程序段号(1- 99999)无条件地转移到程序段无条件地转移到程序段n去。去。 n也可用变量或表达式来代替也可用变量或表达式来代替goto 10;goto #10;36特制分析特制分析 if goto n; 若满足若满足,下步操作转移到程序,下步操作转移到程序段号为段号为n的程序段去。的程序段去。 若不满足,执行下个程序段。若不满足,执行下个程序段。2

17、. 条件转移(条件转移(if语句)语句) if then ; 若满足若满足,执行,执行then后的宏程后的宏程序语句,只执行一个语句。序语句,只执行一个语句。if#1 eq #2 then #3=0;37特制分析特制分析条件表达条件表达式式条件不满足时条件不满足时执行的操作执行的操作ifgoto上一页上一页38特制分析特制分析常用格式常用格式(当前值)(当前值)=(初值);(初值);while (当前值)比较(目标值)(当前值)比较(目标值) do m;(执行循环操作);(执行循环操作);(当前值)(当前值)=(当前值)(当前值)1;endm;39特制分析特制分析四、简单练习四、简单练习 深孔

18、加工深孔加工 铣圆内腔铣圆内腔 粗车外圆粗车外圆 数据计算数据计算40特制分析特制分析#26= -30.0;#17= -10.0;#1= 0;#2= 0;#3= 0;while#1 gt #26 do1; #1= #1+ #17; if#1 ge #26 goto1; #1= #26; g00 g90 z#2 + #3; g01 z#1 f300; g00 z0; #2= #1; #3= 1.0;end1;n1钻孔最终深度赋值钻孔最终深度赋值每次钻孔深度赋值每次钻孔深度赋值当次钻孔深度坐标初始化当次钻孔深度坐标初始化前次钻孔深度坐标初始化前次钻孔深度坐标初始化计算当次钻孔深度坐标计算当次钻孔深

19、度坐标记录当次钻孔深度记录当次钻孔深度与最终钻孔深度比较与最终钻孔深度比较钻孔深度空程量初始化钻孔深度空程量初始化 钻孔深度空程量赋值钻孔深度空程量赋值41特制分析特制分析o9999;#1=500;while#1 le 507 do1; #1=#0 ; #1=#1+1;end1;m30;o9999;#1=0;while#1 le 9 do1; #500+#1=sin#1*10 ; #1=#1+1;end1;m30;将将#500#507的值设为的值设为计算计算sin0sin90的值并赋的值并赋值给值给#500#50942特制分析特制分析o9999;#1=501;#506=#500;while#1 le 505 do1;if#506 gt #1 goto1;#506=#1;n1 #1=#1+1;end1;m30;o9999;#2=501;while#2 le 505 do2; #1=#2; #506=#2-1; while#1 le 505 do1; if#506 gt #1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论