搜索

用户子程序及宏程序在模具数控铣加工编程中的应用

2006-04-20   http://www.mw1950.com

目前,小内存的数控机床仍然是我国在用机床的主流,如何使加工程序变得简洁,对现实加工来说,有着很重要的实际意义。本文作者通过实例介绍了数控铣削加工编程中常用的子程序、宏程序、代码段调用及主轴复合摆动的五轴数控机床的刀具平面转换的应用等方面的content,希望能为从事数控加工与编程的读者提供借鉴。

一、前言

数控编程作为数控加工的关键技术之一,其程序的编制效率和质量在很大程度上决定了产品的加工精度和生产效率。尤其是随着数控加工不断朝高速、精密方向的发展,提高数控程序的编制质量和效率对于提高制造企业的竞争力有着重要的意义。随着CAD/CAM软件的不断普及应用,数控编程的模式逐渐由自动编程取代手工编程。但CAM软件编程和手工编程有着各自的特长,且现有的CAM软件不能满足所有数控系统的特殊功能,充分结合两种编程模式,对于提高编程的效率和质量有着重要的意义。由于历史的原因,国内企业普通数控机床和高精密数控机床并存的局面将持续很长时间,对于传统的普通数控机床,无法实现高速切削加工,采用高速切削加工的编程策略难以发挥普通数控机床的加工效率,且传统数控机床普遍内存容量有限,因此合理有效地利用传统数控机床的特性,结合CAM软件自动编程和手工编程两种方式,编制简洁合理的小容量数控程序,有着非常现实的意义。

二、子程序及宏程序应用

在实际数控加工编程中,充分利用CAM软件的功能,配合手工编程,如宏程序的应用、代码段及子程序的调用等,可以充分提高数控编程的效率。

1.用户子程序应用实例

实际应用中,针对同一产品的多个相同加工特征的情况,以CAM软件编程或手工编程时,如能充分利用子程序功能,既可减少建模的工作量,也可提高程序的简洁性,降低程序的错误率。在多数数控系统中,子程序调用都有专门的指令,如在FANUC系统中有M98/M99,在DeckelMaho系统中有G14或G22等。如图1所示的分别是轮廓深度铣削循环、矩形阵列铣削循环、圆形旋转阵列铣削循环等三种不同的典型铣削循环。图2则是基于FANUC系统的相应的子程序调用代码,其中O8001为深度铣削循环子程序调用代码、O8002为矩形阵列程序代码、O8003为圆形旋转阵列的循环铣削子程序调用代码。


a)深度铣削循环


b)矩形阵列铣削循环 c)圆形阵列铣削循环
图1 典型铣削循环示意图


a)深度铣削循环调用


b)矩形阵列子程序调用


c)圆形阵列子程序调用
图2 相应子程序循环调用示意图

2. 用户宏程序应用

早期的普通数控机床系统都具有内存容量小的特征,但数控系统大多都提供用户宏程序的功能。使用用户宏程序可以有效地解决比较规则的曲面、圆角、型腔和外形轮廓等加工特征。使用宏程序时,要求思路清楚,语法正确。一般的数控系统提供的宏程序功能由条件判断语句、逻辑运算、算术运算、循环控制语句、系统变量及用户变量设置等组成。其基本功能组成描述如下表所示。
用户宏程序功能组成

如图3所示的是某产品上部圆角的加工,如果以圆柱铣刀或球头刀采用直线拟合的方式进行加工时,采用CAM软件编制此圆角曲面的数控程序,其程序以直线拟合的方式进行加工,程序代码的容量是传统数控机床所无法容纳的,若采用DNC加工,则存在数据丢失的风险。如果以手工编程方式采用宏程序,采用圆柱立铣刀的刀尖或球头刀进行该圆角曲面的圆弧插补加工,则程序变得简洁短小,其程序如图4b所示,而以CAM软件进行编程的直线拟合的加工程序代码如图4a所示。从图中可以看出,CAM编制的程序容量较宏程序的容量大得多。如采用相同的加工插补精度,宏程序只需调节#110用户变量来调节每层Z轴的加工深度,即可满足加工精度要求。而以直线拟合加工方式提高精度时,程序容量可能呈倍数增加,传统数控机床的容量更难以满足生产要求。同时该程序通过调节#110用户变量可满足粗加工、半精加工和精加工要求,程序的柔性比用CAM软件编制出的数控程序适应性更好。

用户宏程序功能组成


图3 用户宏程序循环加工示意图


a)直线拟合加工程序代码


b)用户宏程序循环加工程序
图4 直线拟合与宏程序加工程序代码对比

3. 程序代码段调用

如图5所示,在某卧式铣削加工中心上加工某回转体零件侧面的均布U形槽,如采用CAM软件编程,即使采用绝对轨迹编程,其程序容量也较大。由于有相同的加工特征,可以充分利用系统的程序代码段或子程序调用的功能,在方便了编程的同时,提高了编程的效率,降低了程序加工的风险。图5c和图5d分别为利用DeckelMaho和Heidenhain数控系统的程序代码段调用的功能,来完成相同的特征的加工NC程序示意图,其中G14和 Tool CALL指令完成程序代码段的调用。MAHO系统中的G14重复完成N9至N191之间的加工功能,而Heidenhain系统中的ToolCall重复调用LBL1到LBL0之间的程序代码。从图5中可以看出,对于重复加工的产品特征对象,采用这种程序,风格简洁明了,思路清晰了,而且程序的柔性适应性较好,编辑修改、错误检查都变得非常方便。


a)刀具轨迹示意图


b)仿真加工示意图


c)DeckelMaho系统NC代码段调用


d)Heidenhain系统NC代码段调用
图5 程序代码段调用

4. 刀具平面转换编程

据统计,零件的数控加工,用于机床的切削加工时间相对于装夹、调度、检验时间而言,其比重不超过50%,因此提高产品的装夹效率对于提高数控加工的效率有着极其重要的意义。如图6所示的是某产品的孔加工示意图,如果采用三轴数控机床,需要装夹、找正两次,而对于主轴复合摆动的五轴数控机床,如DMU125P来说,则可充分利用数控系统的功能,采用刀具平面转换等功能快速完成程序的编制。针对DMU125P型数控机床系统,DeckelMaho提供的M55功能,可以用手工的方式采用G7指令代码完成刀具平面的转换。如图7所示的是刀具平面分别绕X、Y、Z轴旋转的示意图,图8则是针对该产品的孔加工,采用刀具平面转换和坐标偏移的方式来完成产品的五轴钻孔加工的NC代码示意图。通过这种加工策略减少在了装夹辅助时间的同时,提高了产品的加工精度和效率。


图6 五轴钻孔加工示意图


M55 G7 A5=15°
a)刀具平面绕X轴旋转


M55 G7 B5=15°
b)刀具平面绕Y轴旋转


M55 G7 C5=15°
c)刀具平面绕Z轴旋转
图7 可变刀具平面示意图


图8 DMU125P主轴复合摆五轴钻孔加工

三、结束语

合理地利用子程序、宏程序和代码段进行手工编程,对于数控加工程序的简化,作用是十分明显的,通过我们的实例,大家对其产生的显著效果有了感性的认识。现实的加工中,有相同或相似特征的零件很多,如果大家在从事加工或编程的过程中能合理的利用这些技术,定能起到事半功倍的效果。

关键词: | 作者 :

最新评论

查看更多评论   

关于我们

因为有你 新闻才更精彩

欢迎来投稿

版权所有

机械工业信息研究院· 金属加工在线MW1950 copyright © 2006-2018 mw1950.com .All Rights Reserved