数控编程技能训练项目教程教学课件作者张小新项目1-7

上传人:w****i 文档编号:102748726 上传时间:2019-10-04 格式:PPT 页数:37 大小:544KB
返回 下载 相关 举报
数控编程技能训练项目教程教学课件作者张小新项目1-7_第1页
第1页 / 共37页
数控编程技能训练项目教程教学课件作者张小新项目1-7_第2页
第2页 / 共37页
数控编程技能训练项目教程教学课件作者张小新项目1-7_第3页
第3页 / 共37页
数控编程技能训练项目教程教学课件作者张小新项目1-7_第4页
第4页 / 共37页
数控编程技能训练项目教程教学课件作者张小新项目1-7_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《数控编程技能训练项目教程教学课件作者张小新项目1-7》由会员分享,可在线阅读,更多相关《数控编程技能训练项目教程教学课件作者张小新项目1-7(37页珍藏版)》请在金锄头文库上搜索。

1、项目七 非圆曲线加工,知识准备 (一)宏程序的概念 用户宏程序是FANUC数控系统及类似产品中的特殊编程功能。用户宏程序的实质与子程序相似,它也是把一组实现某种功能的指令,以子程序的形式预先存储在系统存储器中,通过宏程序调用指令执行这一功能。在主程序中,只要编入相应的调用指令就能实现这些功能。 一组以子程序的形式存储并带有变量的程序称为用户宏程序,简称宏程序;调用宏程序的指令称为“用户宏程序指令”或宏程序调用指令(简称宏指令)。用户宏程序的最大特征有以下几个方面: (1)可以在用户宏程序中使用变量; (2)可以进行变量之间的运算;,下一页,返回,项目七 非圆曲线加工,(3)可以用用户宏程序指令

2、对变量进行赋值。 使用用户宏程序时的主要方便之处在于可以用变量代替具体数值,因而在加工同一类下件时,只需将实际的值赋予变量即可,而不需要对每一个零件都编一个程序。 (二)宏程序的种类 FANUC系统提供两种用户宏程序,即A类宏程序和B类宏程序。A类宏程序可以说是FANUC系统的标准配置功能,任何配置的FANUC系统都具备此功能,B类宏程序虽然不算是FANUC系统的标准配置功能,但是绝大部分的FANUC系统也都支持B类宏程序。 由于A类宏程序需要使用“G65Hm”格式的宏指令来表达各种数学运算和逻辑关系,不太直观,可读性较差,因而在实际工作中用得较少。,上一页,下一页,返回,项目七 非圆曲线加工

3、,FANUCOTD系统采用A类宏程序,FANUCOi系统采用B类宏程序。B类宏程序在生产实际中用得较广泛,本模块将介绍B类宏程序的使用。 (三)变量及变量的使用方法 如前所述,变量是指可以在宏程序的地址上代替具体数值,在调用宏程序时再用引数进行赋值的符号:#i(z=1,2,3,)。使用变量可以使宏程序具有通用性。宏程序中可以使用多个变量,以变量号码进行识别 1.变量的形式 变量是用符号#后面加上变量号码所构成的,即: (i一1,2,3,) B类宏程序也可用“#表达式”的形式来表示,如:#100、#1001一1、#6/2。,上一页,下一页,返回,项目七 非圆曲线加工,2.变量的引用 在地址符后的

4、数值可以用变量置换。 但需要注意,作为地址符的0,N,/等,不能引用变量,例如:0#27,N#1等,都是错误的。 3.未定义变量 当变量值未定义时,这样的变量称为“空变量”。变量#fl总是空变量。 4.定义变量 当在程序中定义变量值时,整数值的小数点可以省略,例如:当定义#10=120时,变量#10的实际值是120.0000,上一页,下一页,返回,项目七 非圆曲线加工,(四)变量的种类 变量从功能上主要可归纳为两种,即: (1)系统变量(系统占用部分),用于系统内部运算时各种数据的存储。 (2)用户变量,包括局部变量和公共变量,用户可以单独使用,系统把用户变量作为处理资料的一部分。 局部变量(

5、#1一#33)是在宏程序中局部使用的变量。当宏程序1调用宏程序2而且都有变量#1时,由于变量#1服务于不同的局部,1中的#1与2中的#1不是同一个变量,因此可以赋予不同的值,且互不影响。 公共变量(#100#199,#500一#999)贯穿于整个程序过程。同样,当宏程序1调用宏程序2而且都有变量#100时,由于#100是全局变量,所以1中的#100与2中的#ioo是同一个变量。,上一页,下一页,返回,项目七 非圆曲线加工,(五)变量的赋值 赋值是指将一个数据赋予一个变量。例如:#i=o,则表示#i的值是0。其中#i代表变量,+#;是变量符号(注意:根据数控系统的不同,它的表示方法可能有差别),

6、0就是给变量#i赋的值。这里的“=”是赋值符号,起语句定义作用。 赋值的规律: 1)赋值号“=”两边内容不能随意互换,左边只能是变量,右边可以是表达式、数值或变量。 (2)一个赋值语句只能给一个变量赋值。 (3)可以多次给一个变量赋值,新变量值将取代原变量值(即最后赋的值生效)。,上一页,下一页,返回,项目七 非圆曲线加工,(4)赋值语句具有运算功能,它的一般形式为:变量=表达式。 在赋值运算中,表达式可以是变量自身与其他数据的运算结果,如:#1=#1+1,则表示#1的值为#1+1,这一点与数学运算是有所不同的。 (5)赋值表达式的运算顺序与数学运算顺序相同。 (6)辅助功能(M代码)的变量有

7、最大值限制,例如,将M30赋值为300显然是不合理的。 六)运算指令 宏程序具有赋值、算术运算、逻辑运算、函数运算等功能。变量之间进行运算的通常表达形式是:#i=(表达式)。,上一页,下一页,返回,项目七 非圆曲线加工,1.变量的定义和替换 #i=#j 2.加减运算 #i=#j+#k加 #i=#j一#k减 3.乘除运算 #i=#j*#k乘 #i=#j/#k除 4.逻辑运算 #i=#jOR#k或 #i=#iXOR#k异或#i=#jAND#k与,上一页,下一页,返回,项目七 非圆曲线加工,5.函数运算 #i=SIN#j正弦函数 #i=ASIN#j反正弦函数 #i=COS#j余弦函数 #i=ACOS

8、#j反余弦函数 #i=TAN#j正切函数 #i=ATAN#j反正切函数 #i=SQRT#j平方根 #i=ABS#j取绝对值 #i=ROUND#j四舍五入整数化 #i=FIX#j小数点以后舍去,上一页,下一页,返回,项目七 非圆曲线加工,#i=FUP#j小数点以后进位 #i=LN#j自然对数 #i=EXP#j 6.运算的组合 以上算术运算和函数运算可以结合在一起使用,运算的先后顺序是:函数运算、乘除运算、加减运算。 7.括号的应用 表达式中括号的运算将优先进行。连同函数中使用的括号在内,括号在表达式中最多可用5层,上一页,下一页,返回,项目七 非圆曲线加工,(七)控制指令 通过控制指令可以控制用

9、户宏程序主体的程序流程,常用的控制指令有以下三种: IF语句:条件转移;格式为IF.GOTO或IF.THEN. GOTO语句:无条件转移 WHILE语句:当时,执行循环 1.条件转移(IF语句) IF之后指定条件表达式。 1)IFGOTOn 表示如果指定的条件表达式满足时,则转移(跳转)到标有顺序号n(即俗称的行号)的程序段。,上一页,下一页,返回,项目七 非圆曲线加工,如果不满足指定的条件表达式,则顺序执行下个程序段。如图1一7一2所示,其含义为:如果变量#1的值大于100,则转移(跳转)到顺序号为N99的程序段。 2)IFTHEN 如果指定的条件表达式满足,则执行预先指定的宏程序语句,而且

10、只执行一个宏程序语句。 IF#1EQ#2THEN#3=10;如果#1和#2的值相同,则10赋值给#3 2.无条件转移(GOTO语句) 转移(跳转)到标有顺序号n(即俗称的行号)的程序段。当指定1一99999以外的顺序号时,会触发P/S报警No.128。其格式为:GOTOn;n为Jill序号(1一99999),上一页,下一页,返回,项目七 非圆曲线加工,3.循环(WHILE语句) 在WHILE后指定一个条件表达式。当指定条件满足时,则执行从DO一END的程序;否则,转到END后的程序段。 DO后面的号是指定程序执行范围的标号,标号值为1,2,3。如果使用了1,2,3以外的值,则会触发P/S报警N

11、o.126oWHILE语句的使用方法如图1一7一3所示。 1)嵌套 在DO一END循环中的标号(1一3)可根据需要多次使用。但是需要注意的是,无论怎样多次使用,标号永远限制在1,2,3;此外,当程序有交叉重复循环(DO范围的重叠)时,会触发P/S报警No.124。以下为关于嵌套的详细说明。,上一页,下一页,返回,项目七 非圆曲线加工,(1)标号(1一3)可以根据需要多次使用,如图1一7一4所示。 (2)DO的范围不能交叉,如图1一7一5所示。 (3)DO循环可以3重嵌套,如图1-7-6所示。 (4)(条件)转移可以跳出循环的外边,如图1-7-7所示。 (5)(条件)转移不能进入循环区内,注意与

12、上述(4)对照。如图1-7一8所示。 2)关于循环(WHILE语句)的其他说明 (1)“DOm”和“ENDm”必须成对使用:“DOm”和“ENDm”必须成对使用,而且“DOm”一定要在“ENDm”指令之前。用识别号m来识别。,上一页,下一页,返回,项目七 非圆曲线加工,(2)无限循环:当指定DO而没有指定WHILE语句时,将产生DO一END的无限循环。 (3)未定义的变量:在使用EQ或NE的条件表达式中,值为空和值为零将会有不同的效果。而在其他形式的条件表达式中,空即被当作零。 (4)条件转移(IF语句)和循环(WHILE语句)的关系:显而易见,从逻辑关系上说,两者不过是从正反两个方面描述同一

13、件事情;从实现的功能上说,两者具有相当程度的相互替代性;从具体的用法和使用的限制上说,条件转移(IF语句)受到系统的限制相对更少,使用更灵活。 (八)宏程序的格式及程序号 1.宏程序的使用格式 宏程序的编写格式与子程序相同。其格式为:,上一页,下一页,返回,项目七 非圆曲线加工,0;宏程序号,0后面为4位数,范围为。001一8999 N10.;指令 NM99; 上述宏程序内容中,除通常使用的编程指令外,还可使用变量、算术运算指令及其他控制指令。变量值在宏程序调用指令中赋值。 2.选择程序号 (九)调用指令 宏程序调用和一般子程序调用之间有差别。首先,宏程序的调用可以在调用语句中传递数据到宏程序

14、内部,而子程序的调用(M98)则没有这种功能。其次,M98程序段可以与另一数据指令共处同一条指令,如GO1X100.0M98P1000,在执行时,先执行GO1X100.0,然后再运行子程序01000,而宏程序调用语句是独立自成一行。,上一页,下一页,返回,项目七 非圆曲线加工,宏程序的调用方法有单纯调用(G65、模态调用(G66,G67及用G代码或M代码等。 1.单纯调用(G65) 用指令G65可调用地址P指令的宏程序,并将赋值的数据送到用户宏程序中,G65是非模态调用,即只在G65程序段调用宏程序。 (1)格式:G65PL;引数赋值 (2)说明:G65宏调用代码; P之后为宏程序主体的程序号

15、码; 循环次数(省略时为1); (引数赋值)由地址符及数值(有小数点)构成,给宏主体中所对应的变量赋予实际数值。,上一页,下一页,返回,项目七 非圆曲线加工,引数赋值有以下两种形式: 引数赋值I。除去G,L,N,0,P地址符以外都可作为引数赋值的地址符,大部分无顺序要求,但对I,J,K则必须按字母顺序排列,对没使用的地址可省略。 引数赋值IIA,B,C只能用一次,三维坐标赋值时使用此种参数。 (2)模态调用(G66) G67、K作为一组引数最多可指定10组。当给格式:G66P-L; 引数赋值 取消用户宏程序 当指令了模态调用G66后,在用G67取消之前,每执行一段轴移动指令的程序段,就调用一次

16、宏程序。G66程序段或只有辅助功能的程序段不能模态调用宏程序。,上一页,下一页,返回,项目七 非圆曲线加工,当主程序执行完N40后调用宏程序09100两次,执行完N50后调用09100两次,执行完N60后调用09100两次,直到G67停止调用。 3.G代码宏调用方法 宏主体除了用G65,G66方法调用外,还可以用G代码调用。将调用宏程序用的G代码号设定在参数上,然后就可以与单纯调用G65一样调用宏程序了。 格式:Gxx; 将调用指令的形式换为G(参数设定值)。如将宏主体09010用G81调用,其做法如下: (1)将所使用宏程序号设为090100 (2)将与09010对应的参数号码(第6050号)上的值设定为810 (3)用G81调用宏程序090100,上一页,下一页,返回,项目七 非圆曲线加工,(九)偏心轴套的概念 在机械传动中,常采用曲柄滑块(连杆)机构来实现回转运动转变为直线运动或直线运动转变为回转运动,在实际生产中常见的偏心轴、

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号