四 子程序的嵌套
1,子程序的执行顺序主程序执行到M98指令后,会找子程序号,子程序执行完毕到M99后,返回主程序。M99返回到丰程序M98程序段找次数,若没完成凋用次数,继续至子程序号,至M99,直到执行完M98中的次数后,才执行主程序M98段的下一句,其参考执行顺序,如图1所示。
2,子程序的嵌套在编程时为了进一步简化程序,可以在一个子程序中再调用另一个子程序,这一功能称为子程序的嵌套。当主程序调用予程序时,不管调用多少次。凋多少个,都是一级嵌套,而子程序中再调用另一个子程序时,则为二级嵌套,在FANUC—0i系统中。子程序可以嵌套四级,四级嵌套的运行顺序如图2所示。
嵌套执行的路线顺序:1—2—3—4—5—6—7—8—9一lO—ll—12—14—15—16—17......尽管嵌套路线清晰可辩,但嵌套编程的难点在于M98指令的下一句(往往在编程中加入一句回刀指令)指令。而非M98这旬本身。
3,子程序四级嵌套的编程应用子程序编程的总体思路是寻找工件加工中霞复与相类同地方,为简化编程和调用子程序,必须分析和找出这种规律性。这种相似规律性的寻找及应用体现在以下几个方面:
(1)在一次装夹中完成多个相同轮廓形状工件的加工,则编程时只编写一个轮廓形状的加工程序,然后用主程序调用子程序。
(2)有些零件在某个方向上的总切削深度比较大,要进行分层铣削,则可用子程序来实现:粗、半精及精加工阶段町尝试通过子程序的调用来实现。
下面就以图3所示加工144个15ram高的矩阵凸台为例来说明子程四级嵌套的应用。其尺寸要求如图4所示,所选刀具的背吃刀置为1.5mm。
①思路分析:这是一个规律性很强的矩阵,X向有12个大小凸台,Y向有12个大小凸台,共记计144个,大凸台高|5mm,小凸台高7.5mm。显然这是一个重复图形在X、Y、Z三个方向的重复出现,用子程序的四级嵌套极易实现编程的。
②方法探讨:先加工大凸台,刀具每次切深1.5m,显然这是30mm*30mm*1.5mm这一凸台在X、Y、z三个方向不同地方的调用。
第一步:以增量形式编写出一个水平轮廓的子程序。
第二步:将第一步的子程序在Z方向调用一次。编写一个30mm*30mm*1.5mm凸台的子程序。
第三步:将第二步编的子程序在X方向凋用12次,可以编出X向12个凸台1.5mm深的加工程序。
第四步:将第二步当作子程在Y方向调用12次可以编出144个XY平面1,5mm高的凸台加工程序。
第五步:再将第四步当作一个程序(即144个)在Z方向调用11次,即可完成15ram高的全部凸台加工程序。
第六步:做好大凸台后,小凸台与大凸台显然是水平轮廓的子程序不同,加工深度不一样。我们只要稍稍修改一下程序,小凸台的程序就编好了。做到了事半功倍。
由上述步骤可看出,各步均是一个子程序中再调用一个子程序。实现的是四级嵌套。加工是顺序的,而编程步骤是逆向的。即先编第四步、再编第三步、接着编第二步、最后编第一步的“顺想逆编”的编程方法。加工程序如下(在FANUC----Oi Mate-MB上调试运行通过):
五 结束语
能够利用子程序的四级嵌套编程,可最大限度地利用了数控系统所具备的功能。利用此功能解决了相关零件的编程问题,提高了编程效率,减少了出错率,取得较好的经济效益。