一、前言
数控编程作为数控加工的关键技术之一,其程序的编制效率和质量在很大程度上决定了产品的加工精度和生产效率。尤其是随着数控加工不断朝高速、精密方向的发展,提高数控程序的编制质量和效率对于提高制造企业的竞争力有着重要的意义。随着CAD/CAM软件的不断普及应用,数控编程的模式逐渐由自动编程取代手工编程。但CAM软件编程和手工编程有着各自的特长,且现有的CAM软件不能满足所有数控系统的特殊功能,充分结合两种编程模式,对于提高编程的效率和质量有着重要的意义。由于历史的原因,国内企业普通数控机床和高精密数控机床并存的局面将持续很长时间,对于传统的普通数控机床,无法实现高速切削加工,采用高速切削加工的编程策略难以发挥普通数控机床的加工效率,且传统数控机床普遍内存容量有限,因此合理有效地利用传统数控机床的特性,结合CAM软件自动编程和手工编程两种方式,编制简洁合理的小容量数控程序,有着非常现实的意义。
二、子程序及宏程序应用
在实际数控加工编程中,充分利用CAM软件的功能,配合手工编程,如宏程序的应用、代码段及子程序的调用等,可以充分提高数控编程的效率。
1.用户子程序应用实例
实际应用中,针对同一产品的多个相同加工特征的情况,以CAM软件编程或手工编程时,如能充分利用子程序功能,既可减少建模的工作量,也可提高程序的简洁性,降低程序的错误率。在多数数控系统中,子程序调用都有专门的指令,如在FANUC系统中有M98/M99,在DeckelMaho系统中有G14或G22等。如图1所示的分别是轮廓深度铣削循环、矩形阵列铣削循环、圆形旋转阵列铣削循环等三种不同的典型铣削循环。图2则是基于FANUC系统的相应的子程序调用代码,其中O8001为深度铣削循环子程序调用代码、O8002为矩形阵列程序代码、O8003为圆形旋转阵列的循环铣削子程序调用代码。