Delcam软件在发动机加工中的运用有多少?

随着国内外汽车制造业的迅速发展,CAD/CAM技术在发动机加工业中得到了广泛的用。本文针对PowerMILL软件在一汽大连柴油机厂发动机加工中应用的某些具体细节进行了阐述。

一、概述

一汽大连柴油机厂的产品开发部门应用的CAD的软件为AutoCAD和Pro/ENGINEER两种软件,即二维和三维CAD文档共存。对二维的AutoCAD文档,转为CAM加工所需的加工特征时,先通过Delcam公司PowerMILL软件生成加工特征,再进行数控编程。对三维的Pro/ENGINEER文档,可以直接通过PowerMILL软件提取加工特征,进而进行数控编程。在一汽大连柴油机厂进行的6DE2产品试制时,同时采用了上述两种方法进行编程。

由于PowerMILL直接接收CAD数据,避免了手工编程时反复查找图纸相关尺寸所浪费的时间,编程效率大大提高,为新产品上市取得了宝贵的时间。

二、对后处理技术的开发

后处理技术是CAM技术的重要环节之一,针对不同的数控系统(如FANUC、SIEMENS和TOSHIBA等),要对CAM系统编制不同的后处理程序。同时,由于二维加工与三维加工本质的区别,PowerMILL系统要求的后处理也不尽相同。在二维加工中,特别是发动机的加工中,主要是点位的加工(主要是孔位的加工,有时带有很少的平面的加工)。而在三维加工中,主要是曲面加工。但无论曲面怎样复杂,CAM系统都是以小的直线段,在精度要求的范围内来逼近复杂的曲面,在其生成的G代码中主要以G01为主。针对曲面加工所生成的加工程序如下:  

%

:0001

N10G91G28X0Y0Z0

N20G40G17G80G49

N30G0G90Z33.031

N40T1M6

N50G54G90

N420X1.828Y21.705S1500M3

N430G43Z28.031H1M8

N440G1Z22.531F500

N450X1.142Y21.014

N460X.247Y21.705

……….

……….

N818022.679Y35.32

N8190G0Z33.031

N8200M9

N8210G91G28Z0

N8220G49H0

N8230G28X0Y0

N8240M30

DELCAM公司的PowerMILL软件提供的缺省的后处理可以满足三维加工的要求。而在二维加工中,孔位加工(钻、扩、铰、攻丝和镗等)都以G81为主,其中攻丝时缺少节距和停留时间等参数。以FANUC为例,进行攻丝钻孔时,应用缺省的后处理,生成的G代码格式如下:

G81G99Z-167.R-95.F341

应用笔者开发的后处理程序所生成的代码如下:

G84G99Z-167.0R-95.0P300F2.0

针对上述情况,笔者分别为TOYODA、YEONGCHIN和TOSHIBA三种加工中心开发了PowerMILL软件孔位加工(钻、扩、铰、攻丝和镗等)的后处理程序,从而使所有的孔位加工功能得到充分的发挥,保证产品加工过程的工艺要求。

YEONGCHIN加工中心的后处理如下:

machinefanuc15m

#OriginaloptionbyFaw_DDEWLiGuangQuan

definewordNT

addressletter=”T”

addresswidth=1

fieldwidth=2

notmodal

enddefine

definewordTS

addressletter=”N”

addresswidth=1

fieldwidth=3

notmodal

enddefine

definewordTPN

addressletter=”(TOOLPATH:*******”

addresswidth=20

fieldwidth=30

enddefine

defineformat(ID)

addressletter=”:”

enddefine

defineformat(N)

notpermanent

enddefine

defineformat(G1)

leadingzeros=true

notmodal

enddefine

defineformat(F)

modal

decimalpoint=true

decimalplaces=2

trailingzeros=false

imperialformats=metricformats

enddefine

defineformat(HM1M2)

leadingzeros=true

enddefine

defineformat(P)

fieldwidth=3

metricformats

decimalpoint=false

decimalplaces=0

trailingzeros=true

imperialformats=metricformats

enddefine

definewordPF

addressletter=”F”

fieldwidth=5

notmodal

metricformats

decimalpoint=true

decimalplaces=2

trailingzeros=false

imperialformats=metricformats

enddefine

defineformatall

tapeposition=0

enddefine

wordorder=(+TPNNTTSPPFD)

definekeys

toolradius=D

cycledwell=P

dwellnotused

enddefine

definecodes

cycleretract=G699

linear=G11

compoff=G240

componleft=G241

componright=G242

enddefine

messageoutput=false

blockorder=true

toolresetcoordinates=3

integer51=4

integer69=2

incrementalcentre=false

integer34=0

integer35=1

integer36=0

integer37=1

defineblocktapestart

“%”

IDProgID

rapid;incrementaldata;G628;zcoord0

incrementaldata=C;G630;ycoord0;xcoord0

enddefine

defineblocktoolchangefirst

toolnumberToolNumber

changetool

if(NextTool<>0)

NTNextTool

endif

TSToolNumber

setswa

enddefine

defineblocktoolchange

if(word[30]=7orword[30]=8)

M29

endif

rapid;incrementaldata;G628;zcoord0

incrementaldata;G630;ycoord0;xcoord0

compensationoff;G149;G480=C

changetool

if(NextTool<>0)

NTNextTool

endif

TSToolNumber

setswa

enddefine

defineblockmoverapid

if(swa)

TPNToolPathName;”)”

G259;absolutedata;rapid;G6;xcoord;

ycoord;zcoord;spindle;toollength;M1;M2

unsetswa

else

rapid;G6;xcoord;ycoord;zcoord;spindle;

toollength;M1;M2

endif

enddefine

defineblockmovelinear

linear;G2;xcoord;ycoord;zcoord;toolradius;

feedrate;M1;M2

enddefine

defineblockmovecircle

N;G1;G3;xcoord;ycoord;zcoord;keyi; keyj;keyk;feedrate

enddefine

defineblockcyclestart

if(cycle=1)

G4;cycleretract;xcoord;ycoord;

drillholedepth;clearplane;feedratePrat

endif

if(cycle=2orcycle=3orcycle=>5)

G4;cycleretract;xcoord;ycoord;drillholedepth;

clearplane;cycledwell;feedratePrat

endif

if(cycle=4)

G4;cycleretract;xcoord;ycoord;drillholedepth;

clearplane;cycledwell;

PF(Cycfed/ToolSpeed[ToolNum])

endif

enddefine

defineblockmovecycle

xcoord;ycoord;M1;M2

enddefine

defineblockmovetap

xcoord;ycoord;M1;M2

enddefine

defineblockcycleend

endofdrill

enddefine

defineblocktapeend

if(word[30]=7orword[30]=8)

M29

endif

rapid;incrementaldata;G628;zcoord0

rapid;incrementaldata=C;G628;ycoord0

G140;G249;G480=C

changetool

endoftape

enddefine

end

三、应用实例

通过此项技术运用,笔者高效率、高质量地为一汽大连柴油机厂完成了三个品种发动机(6DE1、6DE2和大马力发动机)的试制编程工作。

下面介绍6DE1发动机产品缸盖喷油嘴加工程序的编制。所使用的设备为YEONGCHIN立式加工中心。由于产品的特殊性和设备的限制,理论上要求缸盖的底面和工作台面的夹角为3.840966°,缸盖第一喷油嘴和第六喷油嘴连线与加工中心X轴的夹角为14.51082°。这就要求夹具制造与安装时必须满足上述要求,而实际上很难满足上述要求。当14.51082°超差0.006°时,就不能加工出合格的产品。解决上述问题的办法是在装好的夹具上加工一个缸盖,在三坐标测量设备上进行检验,把检验的结果通过CAD进行分析,找出角度偏差。再通过PowerMILL进行调整,重新在此坐标系下生成数控加工程序。一般情况下只需加工并分析一个缸盖即可得到合格产品的数控加工程序。以下是用笔者编写的后置处理程序,为YEONGCHIN立式加工中心加工缸盖喷油嘴生成的加工代码。要加工的6个M32的孔,深度为33mm。生成的加工代码如下:

%

:0001

G00G91G28Z0

G91G30Y0X0

T1

M06

N1

(TOOLPATH:)

G59G90G00X-29.556Y-68.85S120M03

G00G43Z86.552H01M08

G00Z81.552

G84G99Z49.551R81.551P300F1.5

G80

G00Z86.552

G01X100.844Y-102.6F9999.0

G00Z72.508

G84G99Z40.508R72.508P300F1.5

G80

G00Z77.508

G01X231.244Y-136.35F9999.0

G00Z63.465

G84G99Z31.465R63.465P300F1.5

G80

G00Z68.465

G01X361.644Y-170.1F9999.0

G00Z54.422

G84G99Z22.421R54.421P300F1.5

G80

G00Z59.422

G01X492.044Y-203.85F9999.0

G00Z45.378

G84G99Z13.378R45.378P300F1.5

G80

G00Z50.378

G01X622.444Y-237.6F9999.0

G00Z36.335

G84G99Z4.335R36.335P300F1.5

G80

G00Z86.552

M09

G00G91G28Z0

G00G91G28Y0

G40G49G80

M06

M02

通过以上程序可以看出,运用PowerMILL使数控程序的精度大大提高。同时进行了刀具路径的优化,节省了加工时间,为企业带来部分经济效益。

四、结论

(1)通过Delcam软件的运用,编程效率大大提高。发动机缸盖的数控程序由原来手工编制一个月时间缩短为一周左右的时间。发动机缸体的数控程序编制时间节省更为显著。

(2)程序块规范化。由于通过后置处理程序的约束,生成的数控程序严格按照后处理程序约束的格式输出。

(3)降低试切时间。由于程序块的规范化,在产品进行多工步试切时,只需跟踪第一工步即可。从而提高产品的加工效率。

(4)编程的灵活性大。在手工编程时,当装夹方式变化时,所有的加工程序要重新编制。而用上述技术时,只需调整坐标的方向,重新输出程序即可。从而降低产品的试制时间。

(5)避免碰撞。编程时可以把夹具作为非加工对象,PowerMILL软件可以自动识别那些是要加工的对象,从而保护了加工设备和夹具。

(6)加工精度高。可直接接收CAD数据,避免手工计算时的数据取舍。

作者:西部车床,如若转载,请注明出处:https://www.lathe.cc/2023/09/6552.html