何多政,郭 辉,沈 勇,许锋国
(中航飞机起落架有限责任公司,陕西 汉中 723200)
飞机起落架大型结构件的材料主要以附加值高的超高强度钢、钛合金等为主,加工难度大,产品超差、报废时有发生,致使企业蒙受巨大的经济损失。对各类质量事故原因进行分析和统计可知,程序调用错误、刀具补偿错误和使用刀具错误等是造成80%零件报废的主要原因。一直以来被大家沿用的防止人为错误的主要措施是培训与惩罚,虽然可以避免部分人为错误,比如不熟悉操作过程、缺乏工作经验和适当的作业指导所致的错误,但是由于过度疲劳、人为疏忽、忘记等所造成的失误却很难防止。长期大量实践证明:惩罚与教育相结合的防错方式并不理想。消除错误的最好办法是采用防差错手段,从工艺设计阶段就考虑到可能出现的操作错误,并采用适当的方法进行预防,从源头防止错误和缺陷的发生,符合质量经济性原则[1-3]。
传统工装防差错是借助安装于机床工作台上与加工坐标系原点相对固定的防错棒执行预设动作,实现差错防止的一种工艺方法。防差错工装如图1所示。在产品数控加工前,调用预设防错子程序,刀具执行与防错棒相对应的防错运动,对程序原点设置正确性、刀具直径和根部R正确使用及对刀Z值正确输入等参数进行检测与识别。根据差错警示具体情况进行处理:若刀具在运动中直接与防错棒发生碰撞,表明原点数值错误,需重新确定加工坐标系原点;当刀具圆周运动过程中铣伤防错棒倒角部位时,反映了刀片(或刀具R)选用不当;当刀具圆周运动铣伤防错棒圆柱部位时,说明刀具直径选择错误;当刀具横向直线运动过程中铣伤防错棒顶面时,表明对刀Z值输入有问题[4-5]。
程序防差错主要是通过主程序运行过程中,调用子程序记录前阶段角度、原点和对刀位置值的差值,在后续进行相应参数差值比较,并通过预先设置代码段,提示报警或中断操作的一种防差错方法。
图1 防差错工装
防错程序模块语句一般放在主程序中第1次Z轴定位(如:G90 G0 G54 Z300.)程序段之后,平移、旋转、镜像、比列、极坐标和快速定位X、Y轴之前,其主要目的是刀具抬高到安全位置,防止防错模块在识别当前坐标系及坐标值时切伤工件。
1)FANUC系统防错程序调用:
G65 P8000 Dxx Rxx Qxx Sxx
注释:xx为数值;Dxx为刀具直径;Rxx为刀具圆角/刀具特质值;Qxx为防错棒的直径;Sxx为工位号。
2)SIEMENS系统防错程序调用:
SCHECK(a,b,c,d,e)
注释:a、b、c、d、e均为数值;a为刀具直径;b为刀具圆角/刀具特质值;c为防错棒的直径;d为防错棒坐标系,一般默认为57;e为工位号。
起落架一般为三点式布局,主起落架左右件对称。因此,起落架零组件中存在大量的左、右对称件,或是相似零件。由于程序的集中存放,在程序调用时容易出错,为此可根据数控加工产品和对应工序,规定不可重复的顺序号和机床中对应变量的位置,在加工程序中赋予如下所示#1变量规定的顺序号,在加工产品前,在变量#5301中赋予与程序相同的顺序号,程序才能继续执行,否则报警退出,通过上述方式可有效降低程序错误调用[6-10]。
主要防错程序段:
(X30283A.TXT,D20R10,THICK)
#1=50012
IF[#5301 NE #1] THEN #3000=1(PROGRAM ERROR) //将产品顺序号50012放入指定的坐标系的X地址中
N0001 G40 G69 G80
N0002 G00 G91 G28 Z0.
N0003 G90
…
G01X260.F1500
Y-172.
Z90.
X220.
G03X220.Y-172.I0.J-28.
%
起落架复杂结构件一般需借助转台、复合转台或机床摆头进行某工位铣削加工。
结构件在旋转工作台装夹加工时,首件加工坐标原点(X,Y)变化由坐标系统参数值判定,工位状态变化由机床回转工作台进行角度控制,并通过回转台角度和加工坐标原点的增量方式去实现。批产过程如果坐标原点和角度都无变化,则需要系统产生报警提示,操作者进行状态确认。
结构件由夹具固定或摆头加工时,坐标原点(X,Y)变化由坐标系统参数值判定,可以从加工坐标原点的增量方式去获取工位状态,后续工位无坐标原点(X,Y)变化的,需要操作者根据报警提示,操作者进行状态确认。
通过增量智能判断和人工确认方式的结合,实现加工的分类和程序的工位管理,可极大地提高产品加工的安全性。当加工的零件是多工位时(如加工工位为0°、180°、90°以及特殊角度),可以进行参数赋值,通过条件判断语句进行工位防错。
主要防错程序段:
(X30286A.TXT,D20R10)
#1=100° //如当零件摆放为100°工位时,需在程序中设定#1=100°,操作者还需在G58的X值中输入100°。
IF[#1 NE #5301] THEN#3000=1(STEP ERROR) //条件判断语句,条件满足时执行,不满足时报警并提示错误内容。
N0001 G40 G69 G80
N0002 G00 G91 G28 Z0.
N0003 G90
G10 L2 P1 Z-566.5
G00 G54 G90
G00 G40 X190. Y200.
Z200.
S1500M03
G00 Z98.
…
注:工艺文件需明确不同工位代表的数值。
在零件粗加工或精加工过程中,现场操作人员常在公共坐标系中输入偏置量以保证X向或Y向加工尺寸,为防止输入数值错误,可根据实际加工余量,设定允许的偏移量。
公共坐标偏移量过大检查:
(COMMON OFFSET)
#151=ABS[#5201-1.0] //X轴偏移量检测(设定允许误差1 mm);
#152=ABS[#5202-1.0] //Y轴偏移量检测(设定允许误差1 mm);
IF[[#151 GE 0.0]OR[#152 GE 0.0]]GOTO1 //偏移量超差判断;
N1 #3000=1(COMMON OFFSET ERROR) //若公共坐标X、Y轴有一轴超差,则显示“3001(COMMON OFFSET ERROR)”报警。
宏程序报警的系统变量号为#3000,当变量#3000的值为0~200时,CNC停止运行并报警。CNC屏幕上显示不超过26个字符的报警号和报警信息,其中报警号为变量#3000的值加上3000。
#3000=1(TOOL NOT FOUND)报警屏幕上显示:3001 TOOL NOT FOUND刀具未找到;
#3000=2(COMMON OFFSET ERROR)报警屏幕上显示:3002 COMMON OFFSET ERROR公共坐标偏移错误;
#3000=3(STEP ERROR) 报警屏幕上显示:3003 STEP ERROR工位错误;
#3000=4(ANGLE ERROR) 报警屏幕上显示:3004 ANGLE ERROR角度错误。
加工某型号零件前起落架(见图2)时,防错程序采用宏程序调用子程序的方法。操作者需找正零件在机床上的加工原点坐标值和防错工装在机床上的坐标值,并分别输入G54、G59即可(注G59中的Z值为防错工装在机床坐标系的Z值相对于G54的Z值差)。
主程序:
…
G65 P8000 D30. R6. Q50.
…
防错子程序:
O8000 (CHECK TOOL: D_R_)
(G65 P8000 D#7 R#18 Q#17 )
N005 #101=#7 ;(DIMEN OF TOOL)
N010 #102=#18 ;(ARC OF TIP)
N015 #103=#17 ;(DIMEN OF POLE)
N020 #124=#5321-#[[#4014-53]*20+5201];
N025 #125=#5322-#[[#4014-53]*20+5202];
N030 #126=#5323
N035 #105=[#101+#103]/2 ;
G00X[#124+25.0+#101/2.0+30.0]Y#125
Z200.0
S300M03
G00Z200.0
G01Z#126F480 //对Z值的验证
X[#124-25.0-#101/2.0-20.]
G52 X#124 Y#125 Z#126
G00G90X-[#105+5.0] Y0.
G01 X-[21+#102*COS[45.]+[[#101-2*#102]/2]] Y0.
Z-[#102-#102*SIN[45.]+4-0.1]
G02I[[21+#102*COS[45.]]+[[#101-2*#102]/2]]//对X、Y值和刀具R的验证
G01 X-[#105+0.1]
Z-[#18+10.0]
G02I[#105+0.1]
G00Z200.
G52 X0. Y0. Z0.
G00Z200.
G91G00G28Z0.
G90
M99
%
图2 某型号零件前起落架加工
程序运行过程中,按防错程序段分别进行了程序原点,刀具直径、根部R及Z值输入等信息的正确性判断,未发生异常现象,程序轨迹符合预设运动。程序防差错可有效防止人为操作过失,进一步降低零件废品率。
对现场数控加工人为操作过失进行分析可知:当程序原点,刀具直径、根部R及Z值等信息输入正确时,仍会存在一些因对称件程序调用、多工位角度、偏置量输入错误等造成的加工事故。为此,本文提出了切实可行的程序防错方法,可实现程序与工位或工步间关联控制、工步或工位间的关联管理、程序与加工方向或角度分布关联、警示信息的过程管控等功能。并经现场加工验证,该方法可进一步减少数控加工过程中人为损失,减少中小机械加工企业数控加工过程中的质量隐患。