王佳伟++赵素荣
本文通过分析曲轴曲柄圆、连杆颈圆弧,画图建模分析寻找结构外形相似性的曲轴,通过参数化编程编制适合加工多种同类型曲轴部位的通用程序。
一、引言
传统的曲轴曲柄圆、连杆颈圆弧加工是采用偏心夹具把工件调整到机床回转中心,以加工曲柄圆中心或连杆颈圆弧中心作为机床回转中心,通过车削加工的方式来完成加工,此加工方式加工效率低,偏心夹具调整时间长,工人找正工件误差大且工件找正时对操作者操作技能要求较高。为实现曲轴产业的高效加工,引入了新的加工方式,目前我们引入大型卧式车铣加工中心,可实现三轴以上联动铣削加工,该方式利用车铣加工中心三轴联动的方式,以曲轴主轴颈中心作为回转中心,加工刀具跟随曲轴曲柄圆和连杆颈做空间圆弧插补运动,以铣削的方式完成加工。当机床C轴(或A轴)做旋转运动,刀具在x轴和Y轴平面内以圆弧运动跟随机床旋转轴C轴运动时,编制程序时不容易找到编程所需的坐标点。要实现三轴以上加工程序的编制,目前主流的编程方法是采用编程软件编程,而编程软件编出来的程序会相当长,缺乏可读性,且不容易修改;如果手工编程,编程时间长,且需要每次作图才能确定其复杂的坐标点,如果绘制的图形不准确或坐标点精度不够,在程序运行时则容易出错及出现报警而导致程序的调试时间增长,影响加工效率及产品开发周期。
二、曲轴连杆颈、曲柄图样分析
本公司近年先后开发了多种船用、机车曲轴,而这些曲轴的曲柄外形轮廓80%都相似(如图1所示),就是尺寸大小不一样。针对目前批量小,交货周期短的特点,为缩短程序编制及调试周期,对各种曲轴的曲柄外形进行建模分析,寻求相似性,通过图1看以看出曲轴连杆颈是由一个与主轴颈中心相距一定距离的圆柱面,曲轴曲柄外形则是由与主轴颈中心有一定偏心距离的圆弧组成,由此我们可以把曲柄圆、连杆颈看成是以主轴颈作为回转中心加工由一定角度组成的偏心圆弧。因此需要开发一种能加工偏心圆弧的通用铣削子程序,以满足不同品种曲轴曲柄圆及连杆颈外圆加工。这样可以大大节省程序的编制及调试时间,减少程序出错几率。
三、程序编制
以图1中曲轴外形为例,机床操作系统:西门子840D;机床:车铣复合加工中心。
我们要写通用程序,就要使用参数化编程,参数化编程也称为零件类编程,就是对于同一类相似零件,通过使用变量而不是特定的尺寸数据和加工数据来进行编程,程序最大特点就是将有规律的形状或尺寸用最短且通用的程序段表示出来。
目前数控机床不管是做何种复杂的轨迹运动,其本质都是由无数细分的直线段组成,加工的任何复杂轮廓都是刀具走过无数个很小的直线段拼接而成。也就是说铣削曲轴偏心圆弧时需要写出C轴转6度X和Y的坐标点位置,C轴转b*2度X和Y的坐标点位置……这种程序编制方法也就是编程软件编程的原理,编制程序如下(参数坐标只是为了举例,没有实际意义)。
NIO Gl XlO Y20 C=DC(l+b*l)F800
N20 Xll Y22 C=DC(1+b*2)
N30 X14 Y23 C=DC(1+b*3)
为了保证铣削表面的圆度,机床主轴C轴每次增加的角度6要非常小,才能满足图样要求,如果机床主轴C在每个程序段增加的角度6较大则铣削出的圆会是一个明显的多边形,当铣削直径越大铣削出的多边形越明显。因此需要C轴每次转过很小的角度,而这样编制出的程序会很长;而每一个坐标点X、Y都需要CAD作图才能写出正确的坐标点,程序编制时间会非常长,程序读写和修改很不方便。
为了方便读写及修改,程序编制简单,我们通过建立数学模型来寻找各坐标参数点之间的相互关系。由图2和图3可以看出:刀具切削点始终与曲轴上加工的部位保持相切状态,当C轴旋转角度6时,坐标点X、Y和增加角度6之间存在一定的三角函数关系,这样程序中X、Y坐标点的赋值,可通过一个变量角度b,利用三角函数关系表示出来;C轴每次增加的角度b可以控制铣削圆形的圆度;通过C轴累计增加的角度b的总角度再结合if判断语句、goto跳转指令就可以完成一定角度偏心圆弧的循环铣削。
曲柄圆上任一铣削点坐标如下。
X=R+AC=R+R8*cos(a)
Y=AB=R8*sin(a)
当角度α增大b度时(机床C轴旋转b度),其坐标如下。
X1=R+AC=R+R8*cos(a+b)
Y1=AB=R8*sin(a+b)
连杆颈上任一铣削点坐标如下。
X=R+AB=R+R8*cos(a)
Y=AC=R8*sin(a)
当角度a增大b度时(机床C轴旋转b度),其坐标如下。
X1=R+AB=R+R8*cos(a+b)
Y1=AC=R8*sin(a+b)
当机床C轴,铣刀到达合适起始点X、Y、Z时以下程序段即可以完成一定角度圆弧的铣削。
R31=0
R15=1
角度增量,铣削连杆颈0.25
0.5,铣削曲柄0. 5-1
R9=圆弧半径
R16=-1
c轴转向
R5=铣削角度
R2=铣削预留安全角度 刀具快速移动到铣削点外距
开始铣削点之间的角度
R6=偏心圆弧中心线与开始铣削点连线夹角(图4)
MILLWEBR:
跳转标示
N630 IF (R3I《R5+R2》 铣削角度判段,决定铣
削角度
N640 R3I=R3I+R15
计算下次铣削角度
N650 Gl X=(R8*cos《R6+ 以GOI直线插补的方式
R3I)*R16》+R9 Y=《R8* X、Y、C轴到达指定坐
sin《R6+R3I)*R16》+
标
(R17*R16))C=DC
((R6+R3I)*R16) F800
N660 GOTOB_MILLWEBR 跳转语句
N670 ENDIF
以上程序段虽然可以实现偏心圆弧的加工,但在平时加工过程中,粗加工完精加工有一定的加工余量,我们需要分几刀来完成半精加工及精加工,所以在子程序里面可以使用G59偏置X轴来实现加工留量的分配;在测量头找正时,由于所有曲柄圆圆弧圆心与曲轴旋转中心连线角度无法测量,各个曲柄圆的角度只能通过与连杆颈的相对角度来计算确定,所以需要在子程序里面引入G59偏置C轴角度。
RlO=精加工佘量;精加工时数值为0
Rll=粗加工切削深度
RL2=粗加工铣削刀数
R3=偏心圆弧中心线与连杆颈中心线夹角。
G59 X=RIO+(RII*R12)C=R4或C=R3;附加零点偏置语句X偏置的数值就是偏心圆弧的留量
通过以上分析,偏心圆弧的铣削可以通过由带有R参数的程序来实现,具体程序如下。
R1-R17参数赋值
N10 STOPRE
N20 G58 Z=R1O1 X=O Y=O
G58零点偏置
C=R111+R3
N30 LLMILLCIRCLE
子程序调用
LLMILLCIRCLE为偏心圆弧加工子程序,内容如下:
(jia gong pian xin yuan hu zi cheng xu)
N10 R4=360R3
参数计算,铣削曲柄
圆2面参数(图4)
N20 R7=360-R5-R6
参数计算,铣削曲柄
圆2面参数(图4)
N30 IF (R16<>-I)OR(R16<>1) 参数赋值正确判断
N40 GOTOF END
N50 ENDIF
N60 IF (R17>$PTOOLR)
参数赋值正确判断
N70 GOTOF END
N80 ENDIF
N90 STOPRE
START:
N100 G59 X=RIO+(RII*R12)
G59零点附加偏置
C=R4
NllO GO X=R1+50
X轴快速进给到安
全位置
N120 R31=0
计算参数赋值
*******mill Web l or mill pin**********
N130 GO G94 Y=((R8*
铣刀Y、Z轴到达
sin((R6R2)*R16))+
S3=R13 M3=3预
(R17*R16)) Z=0
铣削位置,C轴转
C=DC((R6R2)*R16)
到预铣削位置,
刀具主轴正向以
R13转速开启。
N140 GO X=(R8*
X轴到达铣削
cos((R6R2)*R16))+
位置+lOmm处
R9+10
N150 G1 Y=((R8*
Y轴到达指定开始
sin((R6R2)*R16))+
铣削位置
(R17*R16)) M8
N160 G1 X=(R8*
在R2角度安全铣削
cos(R6*R16))+R9+
范围内,X、Y、
0.1 Y=((R8*sin((R6)*
C轴开始铣削
R16))+(R17*R16》
C=DC(R6*R16) F=R14
MILLWEBR:
跳转标示
N170 IF (R31<(R5+R2))
铣削角度范围判读
N180 R3I=R3I+R15
铣削角度递增
N190 G1 X=(R8*
以直线插补的方式
cos((R6+R3I)*R16))+R9
X、Y、C轴到达指
Y=((R8*sin((R6+R31)*
定坐标
R16))+(R17*R16))
C=DC((R6+R3I)*R16);
N200 GOTOB MILLWEBR 跳转语句
N210 ENDIF
N220 G59 X=RIO+RIl*R12 G59零点附加偏置
C=R3
N230 GO X=R1+50
X轴快速进给到安全
位置
N240 IF(R3==O)and(R6==0) 判断是铣削曲柄还是
铣削连杆颈。当R3和
R6参数都是0时,说
明铣削的是连杆颈,
则 N240-N320之间程
序段不执行。
N250 GOTOF MILLPIN
N260 ENDIF
**********mill wcb 2********
以下N240-N320意思同N130-N210
N270GOG94Y=((R8*sin((R7R2)*R16))+(R17*R16)) Z=0 C=DC((R7R2)*R16)S3=R13 M3=3
N280 GO X=(R8*cos((R7R2)*R16))+R9+10
N290 G1 Y=((R8*sin((R7R2)*R16))+(R17*R16)
N300 G1 X=(R8*cos(R7*R16))+R9+0.1 Y=((R8*sin((R7)*R16))+(R17*R16)) C=DC(R7*R16) F=R14
_MILLWEBL:
N310 IF (R3I<(R5+R2)
N320 R3I=R3I+R15
N330 G1 X=(R8*cos((7+R3I)*R16((+R9 Y=((R8*sin((R7+R3I)*R16((+(R17*R16(( C=DC((R7+R3I)*R16)
N340 GOTOB MILLWEBL
N350 ENDIF
_MILLPIN :
N360 R12=R12-1
N370 IF (R12>0)
N380 GOTO START
N390 ENDIF
N400 STOPRE
N410 GO X=R1+50 M9
END:
N420 M17
以上子程序的编制,在编制第一个程序时需要花费较长的时间做参数逻辑计算,但在以后编制新程序时,只需要按照图4和图5给指定R参数和切削参数赋值就可以完成偏心圆弧的铣削加工程序编制,编制方法简单且不易出错。在此程序编制时也同时考虑了高效加工在每次刀具定位时都采用4个轴同时运动,以节省辅助时间,此程序有效的解决了如图1所示所有轮廓相似的连杆颈外圆及曲柄圆的铣削加工,而且此方法在车铣加工中心中已得到很好的应用。
目前曲轴外形的设计多种多样,之前分析的某曲轴曲柄外形为一段椭圆,现有要加工一段椭圆,就可通过以上参数化编程方法编制来铣削完成。如以后遇到抛物线或其他有方程函数规则的外形,都可以通过以上方法完成程序编制。
四、结语
参数化编程是手工编程的一种高级编程方法,具有程序逻辑性强,程序简单,修改方便等优点。利用参数间的计算功能,可以节省大量的刀位点计算时间和调试时间,提高加工精度,减少编程错误。对于同系列相似的产品,只需编写一个通用的程序,加工时修改相应的R参数即可完成程序编制,这样可以避免重复编程,实现柔性化生产,提高生产效率。