在编制加工程序时,有时会遇到一组程序段在一个程序中多次出现,或者在几个程序中都要使用的情况,这个典型的加工程序可以做成固定程序,并单独加以命名。这组程序段就称为子程序。使用子程序,可以简化编程。
1.子程序调用格式
在程序中,调用子程序的指令是一个程序段,其格式随具体的数控系统而定,FANUC 0i系统子程序调用格式为:
M98 P□□□□L□□□□;
说明:
①M98:子程序调用字。
②P后面的4位数是子程序号;L后面4位数是重复调用次数,省略时为调用一次。
③M98只能出现在主程序中。
子程序返回主程序用指令M99,它表示子程序运行结束,请返回到主程序。
子程序调用下一级子程序称为嵌套,上一级子程序与下一级子程序的关系,与主程序与第一层子程序的关系相同。不但主程序可以调用子程序,一个子程序也可以调用下一级的子程序,其作用相当于一个固定循环。子程序可以嵌套多少层由具体的数控系统决定。在FANUC 0i系统中,只能有两次嵌套。
2.子程序的应用
子程序不但可以用于有结构相同的零件轮廓加工程序中,也可以用子程序来去除余量,简化编程。为了能够在子程序循环中不断地吃刀,子程序应采用增量编程。编写子程序时,要注意以下两个方面:
①要根据主程序调用子程序前一个程序段刀具所在的X位置(用X主表示),确定子程序第一个程序段X的值(用X子表示),以协调子程序的起刀位置。这个过程称为确定子程序的起刀点设置。可用下列公式确定子程序起刀点位置:
X子=X主-[2ap×(N-1)]
式中,ap为每次切削深度;N为调用子程序的次数。
②在子程序运行结束时,子程序中要有如下关系式:∑X=-2ap,∑Z=0。这样使子程序每一次走刀能够在Z方向不移动,X方向能吃刀,达到去除余量的目的。为了实现这个关系式,在子程序结束时,应增加X和Z向移动指令,到达指定的子程序结束位置,为下一次循环做准备,把这个子程序结束时的位置称为子程序的循环终点。
例3-15 加工零件如图3-60所示,已知:毛坯直径φ32 mm,长度为50 mm,1号刀为外圆车刀,2号刀为切断刀,其宽度为2 mm。
(www.xing528.com)
图3-60 子程序应用
参考程序:
主程序
例3-16 在数控车床上加工如图3-61所示的零件。
图3-61 子程序加工
(1)分析零件图
确定毛坯尺寸:根据零件图,其最大外径是φ96 mm,长度是164 mm,故可以下料为φ100×200的圆棒料,采用夹一头的方式装夹。
(2)选用刀具
为了加工零件的圆弧,应选用如图3-62所示的外圆车刀,主偏角为90°,副偏角为54°,副偏角的确定要考虑到在切削过程中不发生干涉。
(3)确定走刀路径及走刀次数
为了去除毛坯余量,需要确定去除余量的方法。显然,刀具从工件外面偏离轮廓线一定距离,平行轮廓线开始切削,并逐步吃刀,很方便地得到工件轮廓。用轮廓线走刀路线编写子程序,通过控制调用子程序的次数,就很容易地实现上述刀具的加工动作。本例中凹圆处与球柄头部余量最多,考虑球柄头部Z方向余量比较少,故以凹圆处余量计算走刀次数。如果除第一刀外,后面每次吃刀ap=3 mm,则至少要走6刀。如图3-62所示。
图3-62 子程序刀具路径
(4)参考程序
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。