史衛(wèi)朝, 張猛
(1.西安理工大學(xué),西安 710082;2;西安應(yīng)用光學(xué)研究所,西安 710065)
隨著工業(yè)產(chǎn)品的不斷發(fā)展,數(shù)控車削中經(jīng)常遇到雙曲線輪廓。在數(shù)控加工中,對于復(fù)雜輪廓的程序,一般采用自動編程實(shí)現(xiàn),但由于編程軟件生成的雙曲線輪廓程序長、不易修改、難以控制加工精度,因此編程人員只能花費(fèi)大量時間手工編寫雙曲線程序,編寫效率低。
我們根據(jù)雙曲線輪廓參數(shù)方程,采用華中系統(tǒng)為用戶配置的高級編程語言,結(jié)合數(shù)控插補(bǔ)原理,編寫了雙曲線輪廓的“插補(bǔ)指令”及源代碼程序[1],不僅減少了程序段數(shù)目,而且控制了加工精度。編程人員根據(jù)雙曲線輪廓的尺寸,設(shè)定“插補(bǔ)指令”參數(shù),便可獲得雙曲線輪廓的數(shù)控加工程序。
所謂“插補(bǔ)”是指數(shù)控系統(tǒng)根據(jù)曲線起點(diǎn)和終點(diǎn)的坐標(biāo),運(yùn)用特定的數(shù)學(xué)算法,自動地在起點(diǎn)與終點(diǎn)之間生成一系列的坐標(biāo)數(shù)據(jù),即數(shù)據(jù)點(diǎn)的密化處理。插補(bǔ)運(yùn)算的任務(wù)就是要以最簡單的數(shù)學(xué)計(jì)算方法,用微小的直線段去逼近工件的成形輪廓[2]。數(shù)控系統(tǒng)中,一般都有直線和圓弧插補(bǔ)功能,而雙曲線等特殊輪廓的插補(bǔ)功能需要編程人員根據(jù)數(shù)控系統(tǒng)的語言構(gòu)建。
下面將根據(jù)華中系統(tǒng)的編程原則及雙曲線輪廓的特點(diǎn),實(shí)現(xiàn)雙曲線輪廓“插補(bǔ)”功能。
首先確定數(shù)控加工的雙曲線方程一般為:
其曲線圖如圖1所示。
圖1 雙曲線示意圖
以雙曲線焦點(diǎn)位置不同,分兩種情況討論雙曲線參數(shù)方程[3]:
1)當(dāng)焦點(diǎn)在x軸時,以雙曲線方程中的Z為自變量,X為因變量,參數(shù)方程為:
其中:a為實(shí)半軸長;b為虛半軸長;x0和z0為雙曲線中心點(diǎn)坐標(biāo)。
2)當(dāng)焦點(diǎn)在z軸時,以雙曲線方程中的以X為自變量,Z為因變量,參數(shù)方程為:
方程中的參數(shù)含義同式(2)一致。
華中系統(tǒng)G代碼調(diào)用子程序時,系統(tǒng)會將當(dāng)前程序段的內(nèi)容拷貝到子程序執(zhí)行時的局部變量#0~#25中,同時拷貝當(dāng)前通道軸的絕對位置(機(jī)床絕對坐標(biāo))到子程序執(zhí)行時的局部變量#30~#38。插補(bǔ)計(jì)算程序中的局部變量對應(yīng)著插補(bǔ)指令的地址符,編程人員按字符含義為地址符賦值,插補(bǔ)計(jì)算程序中的局部變量也會得到相應(yīng)數(shù)值。表1為雙曲線輪廓插補(bǔ)計(jì)算時需要設(shè)置的參數(shù)。
根據(jù)數(shù)控插補(bǔ)原理規(guī)定,插補(bǔ)運(yùn)算之前應(yīng)給定插補(bǔ)曲線起點(diǎn)和終點(diǎn)的坐標(biāo)值、雙曲線實(shí)軸和虛軸長度、中心點(diǎn)坐標(biāo)值、自變量增加值等。自變量增加值的大小決定工件表面質(zhì)量及加工精度,雙曲線插補(bǔ)運(yùn)算具體流程圖如圖2 所示。
表1 雙曲線插補(bǔ)變量參數(shù)定義及處理
圖2 雙曲線插補(bǔ)流程圖
1)當(dāng)焦點(diǎn)在x軸時,雙曲線輪廓的插補(bǔ)計(jì)算程序如下:
%9999
IF[#12]EQ[#13]M99
ENDIF
IF[#12*#13]LT 0
M99
ENDIF
IF#12 GT#13 ;走刀方向判斷
#14=-#14
ENDIF
#3=#12 ;雙曲線起點(diǎn)Z坐標(biāo)
#3=#3+#16 ;雙曲線Z方向中間點(diǎn)位置偏移
#4=(#0/#1)*SQRT[#1*#1+#3*#3];雙曲線 X 方向中間點(diǎn)計(jì)算
WHILE ABS[#12]NE ABS[#13] ;用步長#14段小直線逼近雙曲線
IF ABS[#13-#12]LE ABS[#14] ;終點(diǎn)判別
#12=#13
ELSE
#12=#12+#14 ;自變量增加
ENDIF
#5=#12
#5=#5+#16
#6=(#0/#1)*SQRT[#1*#1+#6*#6]
G91 G01 U[2*[#6-#4]]W[#5-#3] ;采用增量方式直線走刀
#12=#12 ;坐標(biāo)點(diǎn)替換
ENDW
M99
2)當(dāng)焦點(diǎn)在Z軸時,雙曲線輪廓的插補(bǔ)計(jì)算程序如下:
%9998
IF[#12]EQ[#13]M99
ENDIF
IF[#12*#13]LT 0
M99
ENDIF
IF#12 GT#13 ;走刀方向判斷
#14=-#14
ENDIF
#3=#12 ;雙曲線起點(diǎn)X坐標(biāo)
#4=(#0/#1)*SQRT[#1*#1+#3*#3] ;雙曲線Z方向中間點(diǎn)計(jì)算
#4=#4+#16 ;雙曲線Z方向中間點(diǎn)位置偏移
WHILE ABS[#12]NE ABS[#13] ;用步長#14段小直線逼近雙曲線
IF ABS[#13-#12]LE ABS[#14] ;終點(diǎn)判別
#12=#13
ELSE
#12=#12+#14 ;自變量增加
ENDIF
#5=#12
#6=(#0/#1)*SQRT[#1*#1+#6*#6]
#6=#6+#16
G91 G01 U[2*[#5-#3]]W[#6-#4];采用增量方式直線走刀
#12=#12 坐標(biāo)點(diǎn)替換
ENDW
M99
指令格式:
M98__P__M__N__O__Q__A__B__;
其中:M98為調(diào)用程序;P為雙曲線插補(bǔ)計(jì)算程序名稱;M為雙曲線起點(diǎn)X或Z坐標(biāo)值;N為雙曲線終點(diǎn)X或Z坐標(biāo)值;O為自變量增加值;Q為雙曲線中心點(diǎn)X或Z坐標(biāo)值;A為實(shí)軸長度;B為虛軸長度。
圖3 加工零件圖
在華中數(shù)控車床上加工如圖3所示的零件[4],采用尺寸為φ32 mm×70 mm的鋁毛坯,工件坐標(biāo)系原點(diǎn)設(shè)置在工件右端面與軸線交點(diǎn)處,雙曲線中心點(diǎn)的坐標(biāo)為(X0,Z-29.5),起點(diǎn)坐標(biāo)為(X30,Z-15),終點(diǎn)坐標(biāo)為(X30,Z-44)。
加工程序:
T0101
M03 S700 ;主軸正轉(zhuǎn),轉(zhuǎn)速700r/min G00 X35 Z5 ;刀具到達(dá)加工起點(diǎn)
G01 X30 ;刀具到達(dá)加工輪廓位置
Z-63 ;車削外輪廓
G00 X32 Z-15 ;刀具到達(dá)雙曲線起點(diǎn)
M98 P9999 M-15 N-44 O0.5
Q-29.5 A10 B13 ;加工雙曲線輪廓
G90 G00 X100 Z100 ;退刀
M02 ;程序結(jié)束。
工件加工后的效果見圖4所示,測量后發(fā)現(xiàn),零件實(shí)際尺寸與要求尺寸一致,這表明構(gòu)建的雙曲線輪廓“插補(bǔ)指令”是正確的。
圖4 工件加工后的效果圖
本文采用插補(bǔ)思想,使用華中系統(tǒng)高級編程語言編寫了雙曲線輪廓的“插補(bǔ)指令”,提高了編程效率。該指令具有以下特點(diǎn):
1)簡潔易讀,編程者編寫雙曲線程序時,不必讀懂雙曲線插補(bǔ)代碼,僅需根據(jù)雙曲線的尺寸對“插補(bǔ)指令”中的參數(shù)賦值。
2)可控制加工精度,工件的加工精度與插補(bǔ)代碼中的自變量增加值大小有關(guān),增加值越小,加工精度越高,但也會增加計(jì)算量。
3)適用性強(qiáng),編程人員使用雙曲線“插補(bǔ)指令”時,根據(jù)雙曲線焦點(diǎn)的位置,調(diào)用對應(yīng)的雙曲線插補(bǔ)計(jì)算程序,便可完成雙曲線加工程序的編寫。
[1] 呼剛義,劉振.基于華中數(shù)控車宏程序的橢圓輪廓“插補(bǔ)指令”構(gòu)建與實(shí)現(xiàn)[J].制造業(yè)自動化,2012,34(9):35-36.
[1] 姬清華.數(shù)控原理與應(yīng)用[M].北京:北京理工大學(xué)出版社,2007.
[1] 關(guān)穎.基于FANUC系統(tǒng)的雙曲線宏程序編制與加工解析[J].機(jī)床與液壓,2012,40(8):59-60.
[4] 關(guān)雄飛.數(shù)控加工工藝與編程[M].北京:機(jī)械工業(yè)出版社,2011.