子程序在数控编程中的应用技巧
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
子程序在数控编程中的应用技巧
一、引言
在一个加工程序中的若干位置,如果包含有一连串在写法上完全相同或相似的内容,为了简化程序,可以
把这些重复的程序段单独列出,并按一定的格式编写成子程序。主程
序在执行过程中如果需要某一子程序,可以通过调用指令来调用该程序,子程序执行后又可以返回主程序,继续执行后面的程序段。子程
序在数控编程中应用相当广泛。合理、正确应用子程序功能,为编写
和修改加工程序带来很大方便,能大大提高工作效率。下面介绍子程
序的应用原则。
(1)零件上有若干处相同的轮廓形状。在这种情况下只编写一个子程序,然后用主程序调用该子程序就可以了。
(2)加工中反复出现有相同轨迹的走刀路线。被加工的零件需要刀具在某一区域内分层或分行反复走刀,走
刀轨迹总是出现某一特定的形状,采用子程序比较方便,此时通常要
以增量方式编程。
(3)程序的内容具有相对的独立性。在加工较复杂的零件时,往往包含许多独立的工序,有时工序之间的调整也是容许的,为了优化加工顺
序,把每一个的工序编成一个独立子程序,主程序中只需加入换刀和
调用子程序等指令即可。
二、子程序的应用实例与技巧
1.分层切深零件外轮廓
示例:用直径为20mm的立铣刀,加工图1所示零件。要求每次最大切削深度不超过10mm。
分析:零件在Z向厚度为40mm,根据要求,如果每次切削的深度为10mm,则需通过4次切深完成,在这四次循环切深过程中,刀具在XY平面上的运动轨迹是完全一样的。故只要把刀具在XY平面上的运动
轨迹编写成子程序,主程序四次调用该子程序就可以了。参考程序及说明如表1所示。
图1 零件之一
表1 零件1的参考加工程序
2.分层切深加工槽
示例:用直径为8mm的立铣刀,加工长方形槽,刀心轨迹如图2所示,槽深6mm,要求每次切削的深度不超
过2mm。
分析:将刀心轨迹A-B-C-D-A编成子程序,主程序三次调用子程序,使槽深逐次增加,此时通常采用增量
方式编程比较方便,参考加工程序如表2所示。
图2 零件之二表2 零件2参考加工程序如
3.分行切宽粗加工型腔
示例:用直径为8mm的立铣刀,粗铣如图3所示的型腔。
分析:(1)确定工艺路线如图4a所示刀心轨迹A-B-C-D-E-F-G 作为一个循环单元,反复循环多次;(2)计算刀心轨迹坐标、循环次数
及步进量如图4b所示。设循环次数为n,Y方向的步进距为y,步进方向槽宽为B,刀具直径为d,则各参数关系如下:
循环1次,铣出槽宽y+d;
循环2次,铣出槽宽3y+d;
循环3次,铣出槽宽5y+d;
循环n次,铣出槽宽B=(2n-1)y+d。
根据图样要求,将B =50、d=8代入B=(2n-1)y+d,取n=4,得Y=6,刀心轨迹有1mm重叠,方案可行。相关参考程序如表3所示。
图 3 零件之三
表 3 零件 3 的参考加工程序
4.加工多工序零件
示例:用直径为 5mm 的立铣刀,加工图 5 所示的零件,方槽的深
度为 6mm,圆槽的深度为 4mm,要求每次切削的深度不超过 2mm,试用
子程序编程。
分析:将两工序的加工轨迹编成子程序,然后用主程序分别调用,
参考程序
如表 4 所示。
javascri pt:resizepic(this) border=0>
图 4 刀心轨迹
图 5 零件之四
表 4 零件 4 的参考加工程序
三、结束语
本文通过几个典型的实例,从而详细、全面地介绍了FANUC系统中子程序的应用技巧,提高了编制程序的效率,简化了加工程序。
a)深度铣削循环
b)矩形阵列铣削循环c)圆形阵列铣削循环
图1 典型铣削循环示意图
a)深度铣削循环调用
合理地利用子程序、宏程序和代码段进行手工编程,对于数控加工程序的简化,作用是十分明显的,通过我们的实例,大家对其产生的显著效果有了感性的认识。现实的加工中,有相同或相似特征的零件很多,如果大家在从事加工或编程的过程中能合理的利用这些技术,定能起到事半功倍的效果。
[3] 华丽娟,徐朔.《数控加工技术》教学改革探索.职教论坛[J]. 2005,(3).
[4] 马雪峰. 《数控技术及应用》专业教学内容的改革与实践[J]. 黑龙江省高等教育学会2002年学术年会交流论文集.2002 年.
b)矩形阵列子程序调用
c)圆形阵列子程序调用
图2 相应子程序循环调用示意图
在数控机床上巧用子程序加工网式点阵孔群(一)数控编程是数控加工的重要步骤,数控编程一般又分为手工编程和自动编
程两种。手工编程主要用于对一些加工形状简单、计算量小、程序不多的零件,因此,在点位加工或直线与圆弧组成的轮廓加工中主要采用手工编程加工。而
对于形状复杂的零件,特别是具有非圆曲线、列表曲线及曲面组成的零件多采
用自动编程。
加工中心上经常需要加工一些多孔类零件,尤其是孔数比较多而且每个孔
须经过几道工艺加工方可完成的零什,例如在板类零件上进行点阵群孔的加工。SIEMENS数控系统中具有线性孔和环形孔的固定循环加工指令,而在FANUC和
华中世纪星等一些老的数控系统上没有线性孔和环形孔固定循环加工指令,要
进行点阵群孔的加工则必须没汁一套用户宏程序。而宏程序和宏指令是一个比
较难以理解的概念和指令,所以在编程中大多数人还不会或不愿使用宏程序。
同时受客观条件的限制,自动编程(计算机编程)在目前还未被普及。因此,存
编制多孔类零件加工程序时,如果按常规编程,需要计算每个结点的坐标值,
不但计算量大,编群速度慢,程序冗长,且极容易出错。假如我们能灵活应用
数控系统中的辅助编程功能来编程,则会使群孔加工的编程变得简单、清晰明
了、程序编制时间也短。下面是一种巧用子程序和钻孔固定循环进行网式点阵
孔群加工的编程举例。
例:在VMC750E华中世纪星HNC-21M加工中心上,在一厚度为12mm的工件
上加工100个φ6mm线性矩阵排列孔(如图1所示),设刀具起点为(12,0,80)。工艺分析如下:
1.刀具与合理的切削用量(详见附表)