资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2014-5-6,精选课件ppt,#,单击此处编辑母版标题样式,单击此处编辑母版文本样式,二级,三级,四级,五级,精选课件ppt,*,FANUC,宏程序编程,中捷立加事业部,工程技术部,1,精选课件ppt,第 一 章,变量,2,精选课件ppt,普通的加工程序直接用数值指定,G,代码和移动量,例如,G00 X100.0,。使用用户宏程序时,除了可直接指定数值外,还可以指定变量号,可通过程序或,MDI,面板上操作来改变该数值。,#1=#2,100;,G01 X#1 F300;,变量:,变量的表示:,当指定一个变量时,在符号“,#,”的后面指定变量号。,#i(i=1,2,3,4,.),例,#5#109#1005,或者使用后面将要叙述的“运算指令”项目中的表达式,按照如下方式表达。,#,表达式,例,#100#1001-1#6/2,3,精选课件ppt,变量的种类,:,变量的种类,用 途,局部变量,在各宏程序中独自使用的变量。,用于存储运算结果,带入调用宏程序的自变量等,公共变量,在多个宏程序中,共同使用的变量。,系统变量,读、写当前位置的信息,刀具补偿量等,CNC,系统信息的变量,变量号的范围:,变量,变量号,备注,局部变量,#1#33,非保持型,公共变量,#100#199,#500#999,保持型,系统变量,#1000,可用于读写,CNC,运行时的各种数据,4,精选课件ppt,表达式的书写方法:,在式子左侧是代入运算结果的变量号。,式子右侧是运算式。,例如:,#1=#2+#3,表达式是命令,#2,和,#3,相加的结果写入,#1,中。,变量值的定义:,#1=123,;,#2=123.45678,;(使用的数值最大位数是,8,位),#1=#2+#3*SIN#4,;(,#4,的单位是,),变量值的引用:,G01 X10.0 F#1,;,G00 G90 X#2,;,T#2,;,G00 G90 X#2/10;G00 G90 X-#2;,5,精选课件ppt,未定义:,未定义的含义:,变量值未设定的状态称为“空”。,除了少数例子外,空和,0,是不同的。,#0,通常,#0,是空的变量,不能代入值,它用于变量值得比较和置换上。,例如:,#500,置为空时,,#500=#0,。,G00 G91 X#1 Y#2,;时的各轴移动量如下表:,#1,#2,动作,50.0,100.0,X,轴,,Y,轴都移动,空,100.0,只,Y,轴移动,50.0,空,只,X,轴移动,6,精选课件ppt,第二章,使用运算命令,7,精选课件ppt,运算式的种类和使用方法,加减乘除,运算种类,运算符,运算式,加法,+,#1=#2+#3,;,减法,#1=#2-#3,;,乘法,*,#1=#2,*,#3,;,除法,/,#1=#2/#3,;,数值处理,运算种类,函数名,运算式,上取整,FUP,#1=FUP#2,;,下取整,FIX,#1=FIX#2,;,四舍五入,ROUND,#1=ROUND#2,;,绝对值,ABS,#1=ABS#2,;,8,精选课件ppt,三角函数,运算种类,表达式,答案,正弦,#1=SIN,;,c/a,余弦,#1=COS,;,b/a,正切,#1=TAN,;,c/b,反正切,#1=ATANc/b,;,反正弦,#1=ASINc/a,;,反余弦,#1=ACOSb/a,;,直角三角形(边长为,a,、,b,、,c,)的边长和角度的关系用下面公式可以求得。,9,精选课件ppt,其他函数,运算的种类,函数名,表达式,平方根,SQRT,#1=SQRT#2;,自然对数,LN,#1=LN#2;,以,e,为底的指数,EXP,#1=EXP#2;,余数,MOD,#1=#2MOD#3;,逻辑运算,ORXORAND,输入,或,OR,异或,XOR,与,AND,0,0,0,0,0,0,1,1,1,0,1,0,1,1,0,1,1,1,0,1,10,精选课件ppt,运算的优先顺序与通常的计算式相同。,1,、函数,2,、乘除运算(*、,/,、,AND,、,MOD,),3,、加减运算(,+,、,-,、,OR,、,XOR,),改变运算顺序时,使用括号,。,包括函数在内括号可以使用到,5,重。,运算顺序:,11,精选课件ppt,第三章,改变程序流程,(转移和循环),12,精选课件ppt,条件转移(,IF,语句),功能,根据条件,跳过程序的一部分后执行时,使用,IF,语句。,当,IF,语句的条件成立时,转移到被指定的顺序号,IF,语句的条件式不成立时,进入下一个程序段。,13,精选课件ppt,程序的书写方法:,在,IF,后面的,中,要书写条件式。,IF,比较运算符,GOTO n;,在,中,比较运算符(,GE,和,LT,等)的两侧是进行比较的,2,个数值或者是式子,常数。,在,的右侧,,GOTO,的后面写着当条件成立时的转移目的顺序号。,比较运算符,意义,英语拼音,EQ,=,Equal,(等于),NE,Not Equal,(不等于),GT,Greater,Than,(大于),GE,Greater or Equal,(大于等于),LT,Less Than,(小于),LE,Less or Equal,(小于等于),IF#1GT10GOTO1,;如果,#1,比,10,大,就转移到顺序号,1,,如果不大于,10,(包括等于,10,)时,进入下一个程序段。,注:,GOTO N1,是错的,14,精选课件ppt,用变量也可以指定转移目的地顺序号。,IF GOTO#1,;,N1,(,#1,为,1,时的处理),GOTO9,;,N2,(,#1,为,2,时的处理),GOTO9,;,N3,(,#1,为,3,时的处理),GOTO9,;,N9,如果执行此程序,则无条件地转移到被指定的顺序号上。在程序中,GOTO,之后书写转移目的地顺序号。,GOTO1,;或者,GOTO#1,;,注:,GOTO N1,;是错的。,无条件转移语句(,GOTO,语句),15,精选课件ppt,循环(,WHILE,语句),功能:,反复执行处理的某一部分是,使用,WHILE,语句。,条件成立时,执行从,DO,到,END,之间的程序。,条件不成立时,进入到,END,语句。,16,精选课件ppt,程序的书写方法,WHILE,比较运算符,DOm;,条件成立时循环,ENDm;,条件不成立时,执行,END,语句,条件式的后面,书写,DO,和识别号(,1,、,2,、,3,)。,在循环的最后,书写,END,和识别号(和指定的识别号相同),17,精选课件ppt,循环语句的使用举例,一个重复某一动作,3,次的程序,#1=0,;,WHILE#1 LT 3 DO 1,;,G00 G91 X100.0,;,Y100.0,;,#1=#1+1,;,END 1,;,18,精选课件ppt,识别号和循环语句的嵌套:,在使用了,WHILE,语句的循环体中,还可使用,WHILE,语句既可以使,循环多重嵌套。,WHILE,语句中,嵌套最多为,3,重。,WHILEDO1,;,WHILEDO2,;,WHILEDO3,;,:,:,END3,;,END2,;,END1,;,如果循环的范围不重叠的话,识别号使用几次都可以。,19,精选课件ppt,第四章,宏程序调用,20,精选课件ppt,一个简单的宏程序:,O9999;,N1 G01 G91 X150.0 F300;,N2 Y60.0;,N3 X-150.0;,N4 Y-60.0;,M30;,O9999;,N1 G01 G91 X90.0 F300;,N2 Y120.0;,N3 X-90.0;,N4 Y-120.0;,M30;,21,精选课件ppt,如果两个边的长度用宏变量,#24,,,#25,置换,则程序如下所示。,O9999;,#24=90.0,;,#25=120.0,;,N1 G01 G91 X#24 F300;,N2 Y#25;,N3 X-#24;,N4 Y-#25;,M30;,22,精选课件ppt,如果两个边的长度用宏变量,#24,,,#25,置换,则程序如下所示。,O9999;,N1 G01 G91#24 F300;,N2 Y#24;,N3 X-#24;,N4 Y-#25;,M30;,O6120,;,#24=90.0,;,#25=120.0,;,M98 P9999,;,M30,23,精选课件ppt,1,、,G65,、,G66,调用宏程序,1,)非模态调用(,G65,),G65 P L X Y,P:,调用程序号,L:,重复次数,A,、,B,、,I:,传递参数的自变量,允许嵌套,4,级,2,)模态调用(,G66,),G66 P L A B I,P:,调用程序号,L:,重复次数,A,、,B,、,I:,传递参数的自变量,G66,所在的程序段无加工,允许嵌套,4,级,G67,取消模态调用,24,精选课件ppt,自变量赋值,I,地址 变量号 地址 变量号 地址 变量号,A#1 I#4 T#20,B#2 J#5 U#21,C#3 K#6 V#22,D#7 M#13 W#23,E#8 Q#17 X#24,F#9 R#18 Y#25,H#11 S#19 Z#26,25,精选课件ppt,自变量赋值,II,地址 变量号 地址 变量号 地址 变量号,A#1 I4#13 I8#25,B#2 J4#14 J8#26,C#3 K4#15 K8#27,I1#4 I5#16 I9#28,J1#5 J5#17 J9#29,K1#6 K5#18 K9#30,I2#7 I6#19 I10#31,J2#8 J6#20 J10#32,K2#9 K6#21 K10#33,I3#10 I7#22,J3#11 J7#23,K3#12 K7#24,26,精选课件ppt,如果两个边的长度用宏变量,#24,,,#25,置换,则程序如下所示。,O9999;,N1 G01 G91 X#24 F300;,N2 Y#24;,N3 X-#24;,N4 Y-#25;,M30;,O6120,;,G65 P9999 X90.0 Y120.0,M30,27,精选课件ppt,巡边器测孔中心并设定零偏,G65 P7005 K1,O7005,S200 M03,G4 P2000,M05,M00,#3=#5022,M00,#1=#5021,#4=#5022,M00,#2=#5021,G10 L2 P#6 X#1+#2/2 Y#3+#4/2,G1 G90 G53+#6 X0 Y0 F500,M99,28,精选课件ppt,2,、,G,代码调用宏程序,在参数中设定调用宏程序的,G,代码,同用,G65,一样调用宏程序,其参数(,No.6050,至,No.6059,)对应调用宏程序(,O9010,至,O9019,),G,代码号(,1,至,9999,),参数号与宏程序号之间的对应关系:,程序号 参数号,O9010 6050,O9011 6051,O9012 6052,O9013 6053,O9014 6054,O9015 6055,O9016 6056,O9017 6057,O9018 6058,O9019 6059,29,精选课件ppt,在参数,6050,下写入,610,,则可利用,G610,调用宏程序。,O9010;,N1 G01 G91#24 F300;,N2 Y#24;,N3 X-#24;,N4 Y-#25;,M30;,O6120,;,G610 X90.0 Y120.0,M30,30,精选课件ppt,3,、用,M,代码调用宏程序,在参数中设定调用宏程序的,M,代码,同用,G65,一样调用宏程序。,其参数(,No.6080,至,No.6089,)对应调用宏程序(,O9020,至,O9029,),G,代码号(,1,至),参数号与宏程序号之间的对应关系:,程序号 参数号,O9020 6080,O9021 6081,O9022 6082,O9023 6083,O9024 6084,O9025 6085,O9026 6086,O9027 6087,O9028 6088,O9029 6089,31,精选课件ppt,在参数,6080,下写入,610,,则可利用,M610,调用宏程序。,O9020;,N1 G01 G91#24 F300;,N2 Y#24;,N3 X-#24;,N4 Y-#25;,M30;,O6120,;,M610 X90.0 Y120.0,M30,32,精选课件ppt,5,)用,M,代码调用子程序,在参数中设定调用宏程序的,M,代码,同用,M98,一样调用子程序。,其参数(,No.6071,至,No.6079,)对应调用宏程序(,O9001,至,O9009,),M,代码号(,1,至),参数号与宏程序号之间的对应关系:,程序号 参数号,O9001 6071,O9002 6072,O9003 6073,O9004 6074,O9005 6075,O9006 6076,O9007 6077,O9008 6078,O9009 6079,33,精选课件ppt,G,代码调用宏程序举例:,G840 X_ Y_ Z_ R_ C_ Q_ M_ D_ F_,X_X,坐标位置,Y_Y,坐标位置,Z_,螺纹深度,R_,安全高度,C_,螺纹旋向,(2,为右旋螺纹,3,为左旋螺纹,),Q_,螺距,M_,螺纹直径,D_,螺纹铣刀直径,F_,走刀速度,查表,I,:,X#24,Y#25,Z#26,R#18,C#3,Q#17,M#13,D#7,F#9,34,精选课件ppt,%,O9015,IF#26EQ#0GOTO90,IF#18EQ#0GOTO90,IF#3EQ#0GOTO90,IF#17EQ#0GOTO90,IF#13EQ#0GOTO90,IF#7EQ#0GOTO90(Z,R,C,Q,H,D,未赋值则报警,),IF#9NE#0GOTO1(,若,F,赋值则转到,N1,程序段,),#9=#4109(,若,F,未赋值则使用前面的,F,值,),N1#33=#5003(,保存出始平面,),G52X#24Y#25,G00G90X0Y0,Z#33,N3G0Z#18(,快速趋近,R,点,),G4,查表,I,:,X#24,Y#25,Z#26,R#18,C#3,Q#17,M#13,D#7,F#9,35,精选课件ppt,#3003=1(,取消单段停止,),#3004=5(,进给倍率暂停,),N3#155=#13/2(,螺纹半径,),#156=#7/2(,刀具半径,),#157=#155-#156,#159=#17/8(,软切入圆弧半径,),#160=#157/2,#151=#26+#159(,软切入距离,),#152=#151+#17(,切削距离,),#153=#152+#159(,切出距离,),IF#3EQ2THEN#101=3(,反向切出,),IF#3EQ2THEN#170=-#160,IF#3EQ3THEN#101=2,IF#3EQ3THEN#170=#160,N4,N5Z#26,G#101X#160Y#170R#160F#9,X#157Y0Z#151R#160,Z#152I-#157,X#160Y#170Z#153R#160,G0Z#33,G90,G52X0Y0,#3003=0(,打开单段,),#3004=0,GOTO100,N90#3000=1(NO DATA)(,报警文本,),N100M99,%,查表,I,:,X#24 Y#25 Z#26,R#18 C#3 Q#17,M#13 D#7 F#9,36,精选课件ppt,谢 谢,37,精选课件ppt,此课件下载可自行编辑修改,供参考!,感谢您的支持,我们努力做得更好!,
展开阅读全文