胡曉東
(浙江工業(yè)職業(yè)技術(shù)學(xué)院 機(jī)械工程學(xué)院,浙江 紹興 312000)
圓錐螺旋線在箱體類、蓋板類零件中應(yīng)用較廣,主要用于管道密封連接以及特殊螺旋傳動(dòng)等零件,其尺寸精度(IT)及表面粗糙度(Ra)加工要求較高,具有內(nèi)、外圓錐螺旋線之分[1-4]。一些復(fù)雜零件受零件結(jié)構(gòu)的限制或加工精度的影響,不易采用車削或手動(dòng)攻絲,通常需要在數(shù)控銑床(或加工中心)上采用螺旋線銑削的加工工藝來完成。但目前數(shù)控系統(tǒng)只提供直線(G01)、圓弧插補(bǔ)(G02/G03)等通用功能指令,對圓錐螺旋線、二次曲線、規(guī)則曲面輪廓等復(fù)雜曲線、曲面的加工,不具備相應(yīng)的G代碼功能指令進(jìn)行直接編程,需要借助CAD/CAM軟件進(jìn)行自動(dòng)編程[5-8]。而自動(dòng)編程需要對圓錐螺旋線進(jìn)行曲線設(shè)計(jì)(或?qū)嶓w建模)、走刀軌跡參數(shù)優(yōu)化、G代碼生成、程序傳輸?shù)炔僮鞑襟E,且生成的G代碼程序冗長,系統(tǒng)讀取程序段量大,粗精加工需要生成不同程序等問題,大大制約了圓錐螺旋線銑削的加工效率[9-10]。
國內(nèi)外學(xué)者對圓柱螺紋銑削加工方法研究較多,而對圓錐螺旋線只是涉及不同程序?qū)?nèi)、外圓錐螺紋銑削的研究,需要調(diào)用不同的宏程序或指令來實(shí)現(xiàn)[11]。針對上述問題,本文利用FANUC 0i-MD系統(tǒng)用戶宏程序的功能,開發(fā)出一種編程簡單、實(shí)用性強(qiáng)、加工效率高、工藝性廣的圓錐螺旋線銑削G代碼功能指令,可以實(shí)現(xiàn)采用同一指令、不同參數(shù)輸入即可完成不同規(guī)格的內(nèi)、外圓錐螺旋線的粗精加工。該功能指令的開發(fā),能有效地增強(qiáng)FANUC 0i-MD系統(tǒng)的編程功能及提高加工能效。
利用數(shù)控系統(tǒng)直線插補(bǔ)(G01)指令以微小直線段擬合完成圓錐螺旋線,并采用自變量方式編制成用戶宏程序本體。通過使用G代碼的宏程序調(diào)用及自變量賦值功能,來實(shí)現(xiàn)圓錐螺旋線銑削功能指令的開發(fā)。
編程之前,需要對圓錐螺旋線進(jìn)行數(shù)學(xué)分析及建模。圓錐螺旋線的運(yùn)動(dòng)軌跡示意圖,如圖1所示。
圖1 圓錐螺旋線運(yùn)動(dòng)軌跡示意圖
假設(shè)A點(diǎn)為圓錐螺旋線△t上的一點(diǎn),則在PRO/E環(huán)境下,建立的笛卡爾坐標(biāo)系A(chǔ)點(diǎn)對于旋轉(zhuǎn)軸的參數(shù)方程為:
r(t)=r1±(r1-r2)t
(1)
x(t)=rcos(360kt)
(2)
y(t)=rsin(360kt)
(3)
z(t)=±ht
(4)
式(1)~式(4)中,r(t)為變半徑,正負(fù)取向決定內(nèi)、外圓錐螺旋線,其r1為起始半徑,r2為終止半徑;t為變量從0到1發(fā)生變化;x(t)、y(t)、z(t)分別為x軸、y軸、z軸坐標(biāo)對變量t的參數(shù)方程;h為螺紋總高度,正負(fù)決定螺旋線上下走向;k為螺旋線圈數(shù)。
假設(shè)螺旋線螺距P不變,半徑r隨著變量△t發(fā)生變化,根據(jù)圓錐螺旋線式(1)~式(4),設(shè)定圓錐螺旋線銑削的自變量賦值Ⅰ地址(參數(shù))及變量,如表1所列。
表1 圓錐螺旋線銑削參數(shù)的地址變量
利用FANUC 0i-MD系統(tǒng)配置的用戶宏程序B功能,使用G代碼的宏程序調(diào)用指令來表達(dá)各種數(shù)學(xué)運(yùn)算、邏輯關(guān)系以及控制動(dòng)作,實(shí)現(xiàn)圓錐(內(nèi)外)螺旋線銑削G代碼功能指令的開發(fā),具體流程圖如下圖2所示。執(zhí)行螺旋線銑削G代碼功能指令時(shí),地址變量相應(yīng)賦值的變量數(shù)據(jù)傳遞到用戶宏程序本體中,實(shí)現(xiàn)圓錐螺旋線銑削的直接編程。
圖2 圓錐螺旋線銑削程序框圖
設(shè)置參數(shù)3202.4為1,取消系統(tǒng)程序保護(hù),并在EXIT編輯狀態(tài)下,根據(jù)圓錐螺旋線銑削參數(shù)的地址變量(表1),編制O9010用戶宏程序本體程序,其代碼如下:
%
O9010;(用戶宏程序體)
#33=#4003;(保存03組G代碼)
#32=#5003;(保存初始平面)
IF [#4 LT 0] THEN #3000=1(起始半徑為負(fù)值報(bào)警);報(bào)警NO.3001
IF [#4 EQ #0] THEN #3000=1 (起始半徑不賦值報(bào)警); 報(bào)警NO.3001
IF [#5 LT 0] THEN #3000=2 (終止半徑為負(fù)值報(bào)警); 報(bào)警NO.3002
IF [#5 EQ #0] THEN #3000=2 (起始半徑不賦值報(bào)警); 報(bào)警NO.3002
IF [#6 EQ #0] THEN #3000=3 (銑削圈數(shù)不賦值報(bào)警); 報(bào)警NO.3003
IF [#1 EQ #0] GOTO 1;
#1=0;(若未賦值為0)
N1 IF [#23 EQ #0] GOTO 2;
#23=0;(若未賦值為0)
N2 IF [#24 EQ #0] GOTO 3;
#24=0;(若未賦值為0)
N3 IF [#25 EQ #0] GOTO4;
#25=0;(若未賦值為0)
N4 IF [#1 EQ #0] GOTO5;
#1=0;(若未賦值為0)
N5 IF [#9 EQ #0] GOTO 6;
#9=#4109;(F不賦值沿用以前)
N6 IF [#7 NE #0] GOTO 7;(刀具半徑不賦值為前面所用的刀具半徑,但不得為0或負(fù)值)
#7=#[2000+#4107];
N7 IF [ #7 LE 0] THEN #3000=4(刀具小于或等于0);報(bào)警NO.3004
IF [#7 GE ABS [#5]] THEN #3000=5(刀具太大);報(bào)警NO.3005
IF [#4113 NE 3]] THEN #3000=6(主軸未轉(zhuǎn)報(bào)警);報(bào)警NO.3006
G00 X0 Y0;
G00 Z#18;快速趨近R點(diǎn)
#501=#21;(軸線坐標(biāo)相對編程坐標(biāo)系的X坐標(biāo)值)
#502=#22; (軸線坐標(biāo)相對編程坐標(biāo)系的Y坐標(biāo)值)
#503=#23; (軸線坐標(biāo)相對編程坐標(biāo)系的Z坐標(biāo)值)
#509=0;( 變量△t初始賦值)
IF [#5 GT #4] GOTO 10;(內(nèi)、外錐螺旋線判別)
WHILE [#509LE1]DO1;(內(nèi)錐螺旋線,如果變量△t大于1,則跳出DO1-END1之間的循環(huán))
#504=#4-[#4-#5]*#509-#7;(計(jì)算變半徑值)
#505=#504*COS[#1+360*#6*#509];(計(jì)算X坐標(biāo)值)
#506=#504*SIN[#1+360*#6*#509];(計(jì)算Y坐標(biāo)值)
#507=#11*#509;(計(jì)算Z坐標(biāo)值)
G01 X[#501+#505] Y[#502+#506] Z-[#503+#507] F#9;(直線插補(bǔ)擬合圓錐螺旋線)
#509=#509+#20;(變量△t步長累加賦值,從0-1變化)
END1;(WHILE循環(huán)結(jié)束)
G00 X0 Y0;
GOTO 20;
N10 WHILE [#509LE1]DO1;(外錐螺旋線,如果變量△t大于1,則跳出DO1-END1之間的循環(huán))
#504=#4+[#5-#4]*#509+#7;(計(jì)算變半徑值)
#505=#504*COS[#1+360*#6*#509];(計(jì)算X坐標(biāo)值)
#506=#504*SIN[#1+360*#6*#509];(計(jì)算Y坐標(biāo)值)
#507=#11*#509;(計(jì)算Z坐標(biāo)值)
G01 X[#501+#505] Y[#502+#506] Z-[#503+#507] F#9;(直線插補(bǔ)擬合圓錐螺旋線)
#509=#509+#20;(變量△t步長累加賦值,從0-1變化)
END1;(WHILE循環(huán)結(jié)束)
N20 G00 G90 Z#32
G#33 M99;(子程序結(jié)束)
%
FANUC 0i-MD系統(tǒng)提供了用戶指令開發(fā)接口,在參數(shù)6050-6059中設(shè)置G代碼值就可調(diào)用程序號為9010-9019的用戶宏程序。本文圓錐螺旋線銑削指令設(shè)置為G111 <自變量賦值>,其對應(yīng)的用戶宏程序號為O9010,自變量根據(jù)圓錐螺旋線設(shè)定變量參數(shù)賦值。
其指令格式:
G111 A_ U_ V_ W_ I_J_K_H_ T_ D_R_ F_;
其中,A為螺旋線初始角(缺省為0);U、V、W為螺旋線軸線坐標(biāo)相對于編程坐標(biāo)X、Y、Z的坐標(biāo)值(缺省為0);I、J分別為螺旋線起始半徑、終止半徑,且為正值(若I>J為內(nèi)圓錐螺旋線銑削,I 在配備FANUC 0i-MD系統(tǒng)的數(shù)控銑床上,輸入O9010用戶宏程序體,并對G111指令相應(yīng)參數(shù)賦值。其主程序如下: % O1000; G90G54G40G80; G00X0Y0; Z100; S1000M03; G111 I20 J10 K5 H20 T0.01 D5 R5 F1000;(圓錐螺旋線銑削指令及參數(shù)值) G00Z100; X0Y0; M05; M30; % 切換數(shù)控系統(tǒng)控制界面到“模擬仿真”狀態(tài),執(zhí)行O1000主程序,可以得到內(nèi)圓錐螺旋線(I>J)走刀軌跡的仿真結(jié)果,如圖3所示。 圖3 內(nèi)圓錐螺旋線走刀軌跡 若修改I20 J10為 I10 J20 ,則可以得到外圓錐螺旋線(I 圖4 外圓錐螺旋線走刀軌跡 從仿真結(jié)果看,設(shè)計(jì)開發(fā)的G111指令功能只需對其相應(yīng)的參數(shù)賦值,就可以實(shí)現(xiàn)內(nèi)、外圓錐螺旋線銑削的編程。具有編程簡單、加工工藝廣、加工效率高等功能特點(diǎn)。 如圖5所示,該零件為某企業(yè)產(chǎn)品制氧機(jī)上的核心部件空氣壓縮機(jī)進(jìn)出閥蓋,其中要求完成NPT1/2圓錐螺紋的加工。 圖5 某型號壓縮機(jī)進(jìn)出閥蓋的局部工程圖及三維視圖 查機(jī)械手冊(GB/T12716-2011)可知,NPT1/2(深度L為18.14mm)為60°密封管螺紋,即尺寸代號為1/2的右旋圓錐內(nèi)螺紋,其螺紋錐度為1:16(軸向錐度α為1°47'),螺距P為1.814,牙高h(yuǎn)為1.451,基本大徑D為21.223,基本小徑D1為18.321。 計(jì)算可得,I=D/2=21.223/2=10.61mm,J=I-L×tan(α)=10.61-18.14×tan(1.47)=10.15mm,K=L/P=18.14/1.814=10圈。為提高加工精度,設(shè)置加工步長T為0.001。 根據(jù)螺紋螺距P、牙高h(yuǎn),選擇型號為266RL-16MM01A200M的60°螺紋刀片,刀桿型號為SNR0012M11K1,螺紋銑削半徑為8mm。試切設(shè)備為KD1000LA的數(shù)控銑床,配備FAUNC 0i-MD系統(tǒng)。按照上述參數(shù)變量,編制試切主程序?yàn)椋?/p> % O1000; … G111 I10.61 J10.15 K10 H18.14 T0.001 D8 R5 F1000; … % 其中,通過修改D參數(shù),就可完成同一程序內(nèi)圓錐螺紋的粗、精加工,保證螺旋線銑削的加工精度(IT)及表面粗糙度(Ra)。試切效果,如圖6所示。 圖6 試切的壓縮機(jī)進(jìn)出閥蓋NPT1/2圓錐螺紋效果圖 經(jīng)60°密封錐管螺紋塞規(guī)(NPT1/2)手工檢驗(yàn),銑削的圓錐螺紋符合60°密封管螺紋的加工要求。 本文利用FANUC 0i-MD系統(tǒng)用戶宏程序,開發(fā)了含內(nèi)、外圓錐螺旋線銑削功能的宏程序本體及G111功能指令。圓錐螺旋線銑削編程時(shí),只需直接調(diào)用G111指令,并對相應(yīng)的地址變量進(jìn)行賦值,就可以實(shí)現(xiàn)同一指令、不同規(guī)格的內(nèi)、外圓錐螺旋線粗精銑削加工,不在需要按照內(nèi)、外圓錐螺旋線的不同規(guī)格尺寸進(jìn)行逐一編制程序,簡化了編程、提高了加工效率、拓展了加工工藝范圍,也進(jìn)一步豐富了數(shù)控銑削加工的直接編程功能指令。2 驗(yàn)證
2.1 模擬仿真
2.2 零件試切加工
3 結(jié)束語