模块四宏程序数控车床加工编程_第1页
模块四宏程序数控车床加工编程_第2页
模块四宏程序数控车床加工编程_第3页
模块四宏程序数控车床加工编程_第4页
模块四宏程序数控车床加工编程_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

1、任务二 宏程序的基本知识1用户宏程序概念一组以子程序的形式存储并带有变量的程序称为用户宏程序,简称宏程序;调用宏程序的指令称为“用户宏程序指令”或宏程序调用指令(简称宏指令)。宏程序与普通程序相比较,普通程序的程序字为常量,一个程序只能描述一个几何形状,所以缺乏灵活性和适用性。而在用户宏程序的本体中,可以使用变量进行编程,还可以用宏指令对这些变量进行赋值、运算等处理。通过使用宏程序能执行一些有规律变化(如非圆二次曲线轮廓)的动作。用户宏程序分为A、B两类,FANUC 0i系统则采用B类宏程序2.变量普通加工程序直接用数值指定G代码和移动距离;例如:G100和X100.0。使用宏程序时,数值可以

2、直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板上的操作改变。(1)变量的表示:变量用变量符号(#)和后面的变量号指定。例如:#1表达式可以用于指定变量号。此时,表达时必须封闭在括号中。例如:#1+#2-12(2)变量的类型:变量根据变量号可以分成四种类型。变量号变量类型功能#0空变量该变量总是空,没有值能赋给该变量。#1#33局部变量局部变量值能用在宏程序中存储数据,例如,运算结果。当断电时,局部变量被初始化为空。调用宏程序时,自变量对局部变量赋值。#100#199#500#999公共变量公共变量在不同的宏程序中意义相同。当断电时,变量#100#199初始化为空,变量#500#

3、999的数据保存,即使断电也不丢失。#1000系统变量系统变量用于读或写CNC运行时的各种数据,例如,刀具的当前位置和补偿值。(3)变量的引用在程序中使用变量值,须制定后跟变量号的地址。当用表达式指定变量时,要把表达式放在括号中。例如:G01 X#1+#2 F#3;3.变量的算式与逻辑运算运算符右边的表达式可包含常量和/或有函数或运算符组成的变量。表达式中的变量#j和#k可以用常数赋值。左边的变量也可以用表达式赋值。功能格式备注定义#i=#j加法减法乘法除法#i=#j+#k#i=#j-#k#i=#j*#k#i=#j/#k正弦反正弦余弦反余弦正切反正切#i=SIN#j#i=ASIN#j#i=CO

4、S#j#i=ACOS#j#i=TAN#j#i=ATAN#j角度以度指定,90º30表示为90.5度。平方根绝对值舍入上取整下取整自然对数指数函数#i=SQRT#j#i=ABS#j#i=ROUND#j#i=FIX#j#i=FUP#j#i=LN#j#i=EXP#j或异或与#i=#j OR #k#i=#j XOR #k#i=#j AND #k逻辑运算一位一位地按二进制数执行。从BCD转为BIN从BIN转为BCD#i=BIN#j#i=BCD#j用于与PMC的信号交换。(1)宏程序数学计算的次序依次为:函数运算,乘和除运算(*、/、AND等),加和加运算(+、-、OR、XOR等)。(2)函数中

5、的括号:括号用于改变运算次序,函数中的括号允许嵌套使用,但最多只允许嵌套5层。(3)宏程序中的上、下取整运算CNC处理数值运算时,若操作产生的整数大于原数时为上取整,反之则为下取整。例:设#1=1.2,#2=-1.2 执行#3=FUP#1时,2.0赋给#3 执行#3=FIX#1时,1.0赋给#3 执行#3=FUP#2时,-2.0赋给#3 执行#3=FIX#2时,-1.0赋给#34.宏程序中转移与循环(1)无条件转移 格式:GOTO n; 例如:GOTO 20该例为无条件转移。当执行该程序段时,将无条件转移到N20程序段执行。(2)条件转移 格式:IF<条件表达式> GOTO n;

6、例如:IF #1GT10 GOTO 2;该例为有条件转移语句。如果变量#1的值大于10,转移到顺序号N2的程序段;如果条件不成立,则执行下一程序段。条件表达式的种类见表4-13。条件意义示例#i EQ #j等于(=)IF #5 EQ #6 GOTO 20#i NE #j不等于()IF #5 NE #6 GOTO 20#i GT #j大于( > )IF #5 GT #6 GOTO 20#i GE #j大于等于()IF #5 GE #6 GOTO 20#i LT #j小于(< )IF #5 LT #6 GOTO 20#i LE #j小于等于()IF #5 LE #6 GOTO 20(3

7、)循环语句 格式:WHILE 条件表达式 DO m;(m=1、2、3) END m;当条件满足时,就循环执行WHILE与END之间的程序段;当条件不满足时,就执行END m的下一个程序段。DO和END后的m是指定程序执行范围的标号。 例如:下面的程序计算数值1到10的总和。 O0001; #1=0;#2=1;WHILE #2 LE 10 DO 1;#1=#1+#2;#2=#2+1;END 1;M30;5.宏程序的调用(1)非模态调用G65格式:G65 P×××× L×××× <自变量指定>;说明:在G6

8、5之后,用地址P指定用户宏程序的程序号。 当要求重复时,在地址L后指定从1到9999的重复次数。默认值为1。 使用自变量指定,其值被赋值到相应的局部变量。自变量指定: 可用两种形式的自变量指定。自变量指定使用除了G、L、O、N和P以外的字母,每个字母指定一次。自变量指定使用A、B、C和Ii、Ji、和Ki(i为110)。根据使用的字母,自动地决定自变量指定的类型。自变量指定地址变量号地址变量号地址变量号A#1I#4T#20B#2J#5U#21C#3K#6V#22D#7M#13W#23E#8Q#17X#24F#9R#18Y#25H#11S#19Z#26注意:地址G、L、N、O和P不能在自变量中使用

9、。 地址不需要按字母顺序指定,但应符合字地址的格式。但是,I、J和K需要按字母顺序指定。例:B A D J K 正确 B A D J I 不正确自变量指定自变量指定使用A、B和C各1次,I、J、K10次,自变量指定用于传递诸如三维坐标值的变量。地址变量号地址变量号地址变量号A#1K3#12J7#23B#2I4#13K7#24C#3J4#14I8#25I1#4K4#15J8#26J1#5I5#16K8#27K1#6J5#17I9#28I2#7K5#18J9#29J2#8I6#19K9#30K2#9J6#20I10#31I3#10K6#21J10#32J3#11I7#22K10#33注意:I、J、

10、K的下标用于确定自变量指定的顺序,在实际编程中不写。自变量指定、的混合在G65程序段中,可以同时用自变量指定、两组自变量赋值。但当对同一个变量用、两组自变量同时赋值时,只有后一个自变量赋值有效。例:G65 A1.0 B2.O I3.0 I24.0 D5.0 P1000#1 #2 #4 #7 #7 (2) 模态调用G66格式:G66 P×××× L×××× <自变量指定>;说明:在G66之后,用地址P指定模态调用的程序号。 当要求重复时,在地址L后指定从1到9999的重复次数。默认值为1。 与非模态调用相同,自变量指定数据传递到宏程序体中。 指定G67代码时,其后面的程序段不再执行模态宏程序调用。 调用可以嵌套4级。包括非模态调用(G65)和模态调用(G66)。但不包括子程序调用(M98)。例:如图所示,用宏程序在指定位置切槽。 调用宏程序的主程序:O0003;G50 X100.0 Z200.0;S1000 M03;G66 P9110 U5.0 F0.5; U表示槽深,F槽加工的进给速度G00 X60.0 Z80.0;Z50.0;Z30.0;G67;G00 X100.0 Z200.0 M05;M30;宏程序:O9110;G01 U-#21 F#9; 加工G00 U#21; 撤回刀具M

温馨提示

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

评论

0/150

提交评论