劉振超,葉 燕
(柳州鐵道職業(yè)技術(shù)學(xué)院,廣西 柳州545616)
空間曲面的加工,通??刹捎肅AD/CAM軟件編程加工,但也存在占用數(shù)控系統(tǒng)內(nèi)存大、缺乏靈活性和通用性等弊端。利用數(shù)控系統(tǒng)提供的用戶宏程序,通過對(duì)數(shù)控系統(tǒng)編程功能進(jìn)行擴(kuò)展,或者對(duì)數(shù)控系統(tǒng)的控制功能進(jìn)行二次開發(fā),即可用手工編程加工此類曲面,且具有良好的靈活性和通用性,適合相似零件的批量生產(chǎn)[1-2]。但目前宏程序的應(yīng)用研究,大多只針對(duì)一個(gè)坐標(biāo)平面內(nèi)的輪廓,如橢圓,而且只討論精加工的編程,而對(duì)于從立方體毛坯到橢球體的去余量加工,卻很難真正用宏程序完成整個(gè)零件的加工,這就需要利用宏程序設(shè)計(jì)和開發(fā)出能夠自動(dòng)完成空間非球體零件加工的編程方法。
宏編程就是使用變量進(jìn)行編程,可以用宏指令對(duì)這些變量進(jìn)行賦值、運(yùn)算等處理,可以控制程序的轉(zhuǎn)移和循環(huán)等,通過使用宏程序能執(zhí)行一些有規(guī)律變化(如非圓二次曲線輪廓)的動(dòng)作[4-5]。
在宏程序中,使用GOTO語(yǔ)句和IF語(yǔ)句可以改變控制的流向,而通過WHILE條件判斷語(yǔ)句,可以控制程序的循環(huán)執(zhí)行,其編程格式如下:
WHILE[條件表達(dá)式]DO m;
︰
END m;
式中:m是循環(huán)執(zhí)行范圍的識(shí)別號(hào),只能是1、2和3,否則系統(tǒng)報(bào)警。
當(dāng)指定的條件滿足時(shí),WHILE循環(huán)就被執(zhí)行,即執(zhí)行WHILE從DO到END之間的程序,否則轉(zhuǎn)而執(zhí)行END之后的程序段。WHILE[條件表達(dá)式]DOm和ENDm必須成對(duì)使用。
WHILE條件判斷語(yǔ)句的多次使用,使DO—END循環(huán)能夠按需要使用多次,即形成多層宏循環(huán)嵌套,如圖1所示。
圖1 多層嵌套宏循環(huán)
在編制較復(fù)雜的宏程序時(shí),往往采用循環(huán)嵌套,但一定要注意嵌套規(guī)則和要求。
(1)循環(huán)可以嵌套,但不能超過3個(gè),如圖1所示。
(2)標(biāo)號(hào)(1、2、3)可以根據(jù)要求多次使用,如圖 2所示,但DO的范圍不能交叉,如圖3所示。
圖2 同一循環(huán)標(biāo)號(hào)可以多次使用
圖3 DO-END的范圍不能交叉
(3)循環(huán)控制也可與條件控制一起使用,以滿足復(fù)雜加工的要求。條件控制可以使程序執(zhí)行轉(zhuǎn)移到循環(huán)外邊,如圖4所示,但轉(zhuǎn)移卻不能進(jìn)入循環(huán)區(qū)內(nèi),如圖5所示。
圖4 控制可以轉(zhuǎn)到循環(huán)外邊
圖5 轉(zhuǎn)移不能進(jìn)入循環(huán)區(qū)內(nèi)
要在一個(gè)70 mm×70 mm×50 mm的45#鋼方塊上加工出半個(gè)三維橢球體,其在X、Y、Z方向上的半軸長(zhǎng)度分別為a=30 mm,b=20 mm,c=20 mm。單件加工。
在加工橢球體時(shí),其三個(gè)平面內(nèi)的投影均為橢圓。粗加工時(shí),如果采用從下往上分層切削,平底立銑刀在XOZ平面往上插補(bǔ)后,再在XY平面上銑削走一個(gè)完整的橢圓,如圖6所示??梢岳肍ANUC系統(tǒng)的宏程序多層嵌套循環(huán)完成多次切削,從而去除粗加工余量。在XY面上的加工余量去除后,刀具在XOZ平面再向上插補(bǔ)一個(gè)層高,確定新的刀具位置(X1,Z1),再次進(jìn)入 XY 面上的去余量加工,如此循環(huán),直到刀具插補(bǔ)到橢球面頂點(diǎn)處時(shí)退出循環(huán)。精加工時(shí)走刀路線跟粗加工一樣,只是把平底立銑刀改成球頭立銑刀,如圖7所示,進(jìn)刀插補(bǔ)值更小,以便保證橢球體加工的表面質(zhì)量及尺寸精度。
圖6 分層切削粗銑走刀軌跡
圖7 精銑走刀軌跡
根據(jù)走刀路線的設(shè)計(jì),宏程序的執(zhí)行過程如圖8所示。
圖8 宏程序結(jié)構(gòu)圖
橢球體的標(biāo)準(zhǔn)方程:
從方程中可以看出a,b,c三項(xiàng)中,如果有一項(xiàng)為零則三維橢球就變?yōu)槎S橢圓。
分層加工橢圓,并保證每層橢圓尺寸和層距關(guān)系符合橢球方程??梢杂脜?shù)方程表達(dá)刀位軌跡上任意一點(diǎn)X、Y、Z三個(gè)坐標(biāo)值之間的關(guān)系。如圖7所示,設(shè)角度Φ為XY面上的自變量,角度θ為XZ面上的自變量,則
(1)XOY平面內(nèi)橢圓參數(shù)方程為:
(2)在XOZ平面內(nèi)建立的橢圓參數(shù)方程為:
(3)在任意高度XY平面的橢圓參數(shù)方程為:
其中0< Φ ≤ 360°,0< θ≤ 90°。
粗加工時(shí)使用平底立銑刀,編程時(shí)以平底刀的底面中心為刀位點(diǎn),要考慮刀具半徑對(duì)加工輪廓的影響。因?yàn)槊鳛榉叫危繉拥挠嗔坎灰粯?,所以每層的橢圓切削次數(shù)也不一樣,需要根據(jù)橢圓輪廓的實(shí)際大小自動(dòng)計(jì)算。
精加工時(shí)使用球頭銑刀,編程時(shí)以球頭刀的球心為刀位點(diǎn),刀位點(diǎn)與切削點(diǎn)不重合。
因?yàn)槭菃渭庸ぃ园汛?、精加工的程序編制為一個(gè)程序。
O1001程序名
N10 G91G28Z0;回參考點(diǎn)
N20 T1M06;換平底銑刀粗加工
N30 G54G90G0Z100H1;初始化
N40 M3S1000;主軸正轉(zhuǎn)
N50#1=30.0;XY 平面長(zhǎng)半軸 a賦值
N60#2=20.0;XY平面短半軸b賦值
N70#3=20.0;XZ 平面短半軸 c賦值
N80#4=6.0;平底銑刀半徑賦初值
N90#5=6.0;球頭銑刀半徑賦初值
N100#6=0 XZ平面角度θ賦初值
N110#7=0 XY平面角度Φ賦初值
N120 G0 X45 Y0;快速定位
N130 Z5;下刀至安全平面
N140 G1 Z0 F100;進(jìn)刀到加工平面
N150 WHILE[#6LE90]DO1;判斷角度變量θ,執(zhí)行循環(huán)1
N160#24=#1*COS[#6]+#4;計(jì)算XZ平面上刀位點(diǎn)X坐標(biāo)
N170#26=#3*SIN[#6];計(jì)算 XZ平面上刀位點(diǎn)Z坐標(biāo)
N180 G1X[#24]Y0F100 XY;平面上進(jìn)刀
N190 Z[#26];Z向進(jìn)刀
N200#15=70;毛坯邊長(zhǎng)
N210#16=9.6;步距賦值,取刀具直徑的 0.8 倍
N220#17=0.707*#15-#24*#2/#1 ;任意層 XY 面需要切削的最大余量
N230#8=FIX[#17/#16];每層XY面銑削時(shí)的粗切次數(shù),需要取整
N240 WHILE[#8GT0]DO2;(判斷切削次數(shù)變量,執(zhí)行循環(huán)2
N250#19=#24+#8*#16;計(jì)算XY平面銑削每次進(jìn)刀時(shí)的橢圓長(zhǎng)半軸;
N260#20=#19*#2/#1; 計(jì)算XY平面銑削每次進(jìn)刀時(shí)的橢圓短半軸
N270 G1X[#19]Y0 F100;進(jìn)刀
N280 WHILE[#7LE360]DO3;判斷角度Φ變量,執(zhí)行循環(huán)3
N290#11=#19*COS[#7];計(jì)算XY平面上切削的X坐標(biāo)
N300#12=#20*SIN[#7];計(jì)算XY平面上切削的Y坐標(biāo)
N310 G1X[#11]Y[#12]F100;切削
N320#7=#7+1;角度Φ遞增
N330 END3;第3層循環(huán)結(jié)束
N340#8=#8-1;每層切削次數(shù)遞減
N350 END2;第2層循環(huán)結(jié)束
N360#6=#6+1;角度θ遞增
N370 END1;第1層循環(huán)結(jié)束
N380 G0G49Z100;抬刀
N390 M5;主軸停
N400 G91G28Z0;回參考點(diǎn)
N410 T02 M06;換球頭刀精加工
N420 G0Z100H2;初始化
N430 M3S1500;主軸正轉(zhuǎn)
N435 X45 YO;定位
N440 Z5;下刀至安全平面
N450#6=0;角度θ賦初值
N460 WHILE [#6 LE 90]DO1;判斷角度θ變量,精加工第一層循環(huán)
N470#27=[#1+#5]*COS[#6];球頭刀刀位點(diǎn) X坐標(biāo)
N480#28=#3*SIN[#6]+#5;球頭刀刀位點(diǎn)Z坐標(biāo)
N490 G1X[#27]Y0F80;進(jìn)刀
N500 Z[#28];Z向進(jìn)刀
N510#7=0;角度Φ賦初值
N520 WHILE[#7 LE 360]DO2;判斷角度Φ變量,精加工第二層循環(huán)
N530#29=(#1+#5)*COS[#6];球頭刀刀位點(diǎn) X坐標(biāo)
N540#30=#29*COS[#7];計(jì)算XY平面上切削的X坐標(biāo)
N550#31=[#29*20/30]*SIN[#7];計(jì)算 XY平面上切削的Y坐標(biāo)
N560 G1X[#30]Y[#31]F80;切削
N570#7=#7+1;角度Φ遞增
N580 END2;精加工第二層循環(huán)結(jié)束
N590#6=#6+1;角度θ遞增
N600 END1;精加工第一層循環(huán)結(jié)束
N610 G0G49Z100;抬刀
N620 M5;主軸停
N630 M30;程序結(jié)束
通過仿真加工,結(jié)果如圖9所示。實(shí)踐證明,通過用FANUC系統(tǒng)多層嵌套宏循環(huán)編程功能,可以很好地解決空間二次曲面類零件的粗、精加工。編制宏程序關(guān)鍵是建立好數(shù)學(xué)模型和確定變量,并理清變量之間的邏輯關(guān)系,明確變量范圍,恰當(dāng)?shù)貙懗龈髯兞恐g的函數(shù)表達(dá)式,尤其要注意變量累加、條件判斷以及切削軌跡程序段之間的邏輯關(guān)系。宏循環(huán)多層嵌套運(yùn)用時(shí)需注意分層,首先應(yīng)該考慮被包容層,再依次擴(kuò)大考慮上級(jí)包容層,反之亦行,關(guān)鍵是理清嵌套層的相互關(guān)系。
圖9 仿真結(jié)果