胡明哲
(西京学院机械工程学院,西安 710123)
目前,机械行业使用的数控机床的数控系统主要有FANUC、SINMENS、HNC 等,其中,德国的西门子系统(SINMENS)是高精度的数控系统,系统中包括典型的轮廓加工和孔系加工等,编程时采用人机对话方式,操作人员只需输入所需要的尺寸参数即可加工出所需要的轮廓形状,但是其价格昂贵。而国产的华中系统不具备上述西门子系统所拥有的模块化编程模式,于是绝大多数编程人员在编制零件的程序时,按照工艺路线都得从程序开头开始,一步一步完成直到程序结束。采用这种编程方法程序字为常数,只能描述固定的几何形状,缺乏灵活性和通用性。为了解决这个问题,我们可以利用HNC 数控系统的宏程序控制功能,参照系统,将需要改变的参数设置成变量,将程序模块化,遇到形状相同的零件或者加工轨迹相同的零件时,只需修改相应的参数,其余程序不变,即可完成零件的加工,大大提高了加工效率。下面以HNC 数控系统为例,对数控程序模块化作详细说明[2]。
孔口倒角是机械零件中较常见的一种结构型面,主要作用是为了去除毛刺和零件之间便于装配。从外形观察,孔口倒角就是一个空间曲面,采用成型刀具加工时,生产效率高,但加工刀具价格昂贵,并且刀具在加工过程中一旦磨损就无法保证加工尺寸。当倒角的尺寸发生改变时,还需要重新设计和制造,既费时又费力,影响加工进度[2]。采用普通的立铣刀加工时,一般的手工编程无法实现,可以借助CAM 软件进行编程,但是CAM软件编出来的程序不能循环,一般都非常长,程序不够灵活,空走刀多。为了降低成本,提高加工效率,我们可以采用宏程序编程,刀具参数、倒角参数和一些经常要改变的参数设置成变量,利用三角函数将孔口倒角的程序模块化。当刀具的尺寸或者倒角尺寸发生改变时,只需更改程序开头的变量值就可以。
如图1所示孔口倒圆角,已知孔口直径尺寸I,孔口倒圆角尺寸R,球头立铣刀半径r1,采用球头立铣刀倒圆角建立几何模型(如图2所示),其中,θ 为圆角角度,X、Z 分别为倒圆角时刀具中心的X、Z 坐标。
图1 倒圆角
图2 球头刀倒圆角时建立的几何模型
%0001;//主程序名
G54G90G40;//建坐标系,程序初始化
M3S1500;//启动主轴
#1=6;//孔口倒角尺寸
#2=5;//刀具半径
#3=24;//孔口直径
#4=90;//圆角角度
#5=0.05;//角度的变量
#0=0;//角度的初始值
WHILE#0LE#4角度变化不能超过90度
#20=#3/2+#1-[#1+#2]*SIN[#0];//刀具中心X 的坐标
#21=#1+#2-[#1+#2]*COS[#0];//刀具中心Z 的坐标
G01X[#20]Y0;//刀具中心定位到循环起点
G03X[#20]Y0Z[-#21]I[-#20]J0;//螺旋线插补倒圆角
#0=#0+#5;循环一次角度每次加0.05
ENDW;//循环结束
G00X0Y0;//XY 向快速定位至工件中心
G0Z100M9;//抬刀至安全高度
M30;//主程序结束
说明:
(1)走刀路线采用顺铣。(2)为了提高工件表面加工质量或者为了提高加工效率,可以改变角度变量#5。
(3)当零件的尺寸和刀具尺寸发生改变时,只需更改参数#1、#3和#2就可以直接加工。
模块化编程省时快速,应用灵活,不容易出错,且容易校验,充分发挥了机床特有的功能,提高了机床的编程效率,比使用自动编程软件更具有优越性。采用模块化编程,则可以扩大机床的工艺范围,减少了工作量,提高了加工效率。因此数控程序模块化的设计与开发的价值是不可估量的,也将影响数控功能的增加。