崔小順 魏建峰 魏紅港 楊 程
(①天水星火機(jī)床有限責(zé)任公司,甘肅天水 741024;②酒泉鋼鐵(集團(tuán))有限責(zé)任公司,甘肅嘉峪關(guān) 735100;③東北大學(xué),遼寧沈陽 110004;④西安理工大學(xué),陜西西安 710048)
后置處理技術(shù)是數(shù)控加工編程理論中關(guān)鍵技術(shù)之一,它是連接CAD/CAM系統(tǒng)與機(jī)械制造的紐帶,后置處理直接影響到自動編程軟件的使用效果和工件的加工質(zhì)量以及機(jī)床的可靠運行?,F(xiàn)代集成化的CAD/CAM系統(tǒng)能實現(xiàn)從設(shè)計到制造過程的高質(zhì)、高效化。但是現(xiàn)在企業(yè)普遍采用的CAD/CAM系統(tǒng)的后置處理軟件尚沒有通過合適的算法對五軸數(shù)控機(jī)床的加工產(chǎn)生的非線性誤差進(jìn)行控制,這必然會對五軸數(shù)控機(jī)床的加工精度產(chǎn)生影響。
目前的CNC在控制多軸聯(lián)動時一般只具有線性插補功能,非線性連續(xù)軌跡只能以一系列微小線性段來離散逼近,再由數(shù)控機(jī)床各運動軸做五軸線性插補來實現(xiàn)加工曲面的近似包絡(luò)成型。但是在多軸加工時由于旋轉(zhuǎn)運動的影響,機(jī)床各軸線性插補合成運動會使實際刀位偏離編程直線。這樣在加工曲面的過程中,刀具切觸點的軌跡并不是預(yù)先離散的直線段,而是連接此直線段的一段三維曲線,這條曲線與兩切觸點之間的直線段之間的偏差就是非線性誤差[1-2]。
五軸聯(lián)動加工時刀具中心點和刀軸方向都是不斷變化的,加工過程中由于旋轉(zhuǎn)運動所造成的非線性運動和數(shù)控系統(tǒng)線性插補方式之間的不一致性,導(dǎo)致了五軸聯(lián)動數(shù)控加工非線性誤差的產(chǎn)生。非線性誤差描述的是五軸數(shù)控加工時刀具理論插補軌跡與實際插補軌跡之間的偏差。非線性誤差是在相鄰刀位點進(jìn)行線性插補的過程中產(chǎn)生的,研究它就必須在相鄰程序段內(nèi)進(jìn)行,而不應(yīng)該籠統(tǒng)地在整個刀具路徑上進(jìn)行[3]。
圖1所示為A-C雙轉(zhuǎn)臺五軸聯(lián)動插補軌跡示意圖,(Oc1,V1)和(Oc2,V2)為相鄰刀位數(shù)據(jù),由刀位點坐標(biāo)值Oc(xc,yc,zc)和刀軸矢量V(i,j,k)組成。X、Y、Z軸為機(jī)床平動軸,A、C軸為機(jī)床旋轉(zhuǎn)軸。(Oc1,V1)對應(yīng)于機(jī)床各軸的運動位置為(X1,Y1,Z1,A1,C1),(Oc2,V2)對應(yīng)的機(jī)床的各軸位置為(X2,Y2,Z2,A2,C2)。機(jī)床從位置(X1,Y1,Z1,A1,C1)到位置(X2,Y2,Z2,A2,C2)的運動過程是由線性插補完成的,因此以事件t為參數(shù)可建立起如下插補軌跡方程:
從位置(X1,Y1,Z1,A1,C1)到位置(X2,Y2,Z2,A2,C2)過程中,五軸聯(lián)動數(shù)控機(jī)床經(jīng)插補器計算后,使刀尖點沿各軸的實際刀尖點軌跡Q(t)運動。這樣Q(t)就與相鄰刀位點之間的理想刀尖點軌跡L(t)發(fā)生偏離,其最大偏離量εmax就可以近似地作為非線性誤差的估計值,可見,要求解εmax就先要求解Q(t)。
因為要求解實際刀尖點軌跡Q(t)用到了機(jī)床運動學(xué)變化模型,所以在此首先對該原理進(jìn)行研究[4]。
建立A-C雙轉(zhuǎn)臺機(jī)床各坐標(biāo)系之間的關(guān)系如圖2所示。其中:OwXwYw Zw為與工件固聯(lián)的加工坐標(biāo)系,機(jī)床運動坐標(biāo)X、Y、Z就是以此坐標(biāo)系為參考;OtXtYtZt是與刀具固聯(lián)的坐標(biāo)系,稱之為刀具坐標(biāo)系,它在加工坐標(biāo)系的位置rt就是刀位點Oc(xc,yc,zc)。刀具刀尖點在刀具坐標(biāo)系原點,刀軸矢量為(i,j,k);OmXmYmZm為與定軸A固聯(lián)的坐標(biāo)系,其原點為兩個回轉(zhuǎn)軸的交點,其坐標(biāo)方向與機(jī)床坐標(biāo)系一致,稱之為旋轉(zhuǎn)坐標(biāo)系,它的坐標(biāo)原點Om在加工坐標(biāo)系中的位置rm(mx,my,mz),其中參數(shù)mx、my、mz與機(jī)床的轉(zhuǎn)臺的結(jié)構(gòu)和尺寸有關(guān)。
由機(jī)床運動鏈進(jìn)行坐標(biāo)變換得:
式(2)和(3)中,T和R分別為平移和回轉(zhuǎn)運動的變換矩陣,解式(2)和(3)得到機(jī)床運動坐標(biāo)為:
式(4)就是機(jī)床正向運動學(xué)變換模型,該模型描述的是前置刀位數(shù)據(jù)點和機(jī)床各軸運動坐標(biāo)之間的關(guān)系。本文采用的是基于正向和逆向運動學(xué)變換模型對實際刀尖點軌跡Q(t)進(jìn)行求解,其過程分為以下3步:
(1)根據(jù)式(4),采用正向運動學(xué)模型分別計算刀位點(Oc1,V1)和(Oc2,V2)對應(yīng)的機(jī)床坐標(biāo)系下坐標(biāo)值(X1,Y1,Z1,A1,C1)、(X2,Y2,Z2,A2,C2)。
(2)按照式(1)在機(jī)床的相鄰兩個位置(X1,Y1,Z1,A1,C1)和(X2,Y2,Z2,A2,C2)建立插補軌跡方程(X(t),Y(t),Z(t),A(t),C(t))。
(3)采用逆向運動學(xué)模型求解(X(t),Y(t),Z(t),A(t),C(t))對應(yīng)于工件坐標(biāo)系中的刀位點數(shù)據(jù)值(Oc(t),V(t)),即:
其中M(A(t)),C(t)=T'(-rm)R'(-Ai)R'(-Ci)T'(rm)
式(5)中Oc(t)就是實際刀尖點軌跡Q(t),V(t)為Q(t)的刀軸矢量變化。
記理想插補軌跡L(t)的方向矢量為α,實際插補軌跡Q(t)上任意一點到L(t)的距離為ε(t),則:
假設(shè)當(dāng)t=ts時,ε 取得最大值 εmax,則 εmax為理想插補軌跡和實際插補軌跡之間的最大距離,該距離能夠可靠地估計非線性誤差。
在五軸聯(lián)動數(shù)控加工中,由于旋轉(zhuǎn)臺和刀具擺動的影響使得計算非線性誤差時很難精確地估計刀具與工件的接觸位置。而刀位文件中只有刀心位置和刀軸矢量信息,缺乏實際切削點等相關(guān)信息的描述,因此難以估計最大非線性誤差的精確位置。文獻(xiàn)[6]雖然對最大非線性誤差產(chǎn)生位置進(jìn)行了數(shù)學(xué)推導(dǎo),但只是近似的推導(dǎo)。
本文擬采用工程驗證的方法對最大非線性誤差產(chǎn)生的位置進(jìn)行預(yù)測,取某段連續(xù)的航空葉輪流道清根加工程序相鄰程序段,按照式(7)進(jìn)行Matlab仿真,圖3為仿真出的最大非線性誤差產(chǎn)生位置,圖4為任意取的相鄰程序段刀位點非線性誤差的分布,可見最大非線性誤差產(chǎn)生在大約在相鄰刀位點的中點附近,即t=0.5處,與文獻(xiàn)[6]結(jié)論相同。
目前控制非線性誤差的方法主要有切觸點偏置法、線性化法和自適應(yīng)線性化法3種,本文采用自適應(yīng)線性化法。
已經(jīng)證明最大非線性誤差產(chǎn)生在相鄰刀位點的重點附近,,故在當(dāng)最大非線性誤差大于許用值時就在兩刀位點 (Oc1,V1)和(Oc2,V2)之間插入新的刀位點(Oci,Vi),如圖 5 所示,其中:
之后計算新的刀位點(Oci,Vi)對應(yīng)于機(jī)床各軸的位置(Xi,Yi,Zi,Ai,Ci),再檢驗(Oc1,V1)和(Oci,Vi)之間及(Oci,Vi)和(Oc2,V2)之間的非線性誤差,然后判斷是否大于許用值,如果仍然大于許用值則按上述方法繼續(xù)插入刀位點,再進(jìn)行計算,直到小于許用值為止。
把非線性誤差簡化模型和誤差的控制策略應(yīng)用到五坐標(biāo)雙轉(zhuǎn)臺加工葉輪流道清根試驗中,通過對比非線性誤差控制前后兩組實驗誤差的分布值來評價控制策略的效果。
在沒有進(jìn)行誤差控制的刀位文件中采樣一段由50個連續(xù)程序段Ni(1≦i≦50))組成的加工曲線,每相鄰兩個程序段為一個采樣段,共形成49個采樣段。利用MATLAB在程序段內(nèi)進(jìn)行非線性誤差分析并生成最大非線性誤差分布圖,如圖6所示,其橫坐標(biāo)表示采樣段,縱坐標(biāo)表示最大非線性誤差。不難發(fā)現(xiàn)未經(jīng)非線誤差控制的εmax的平均值較大約為1.5 μm。
將許用誤差取為1.5 μm,采用本文提出的非線性誤差控制策略,當(dāng)檢測到某段程序最大非線性誤差大于許用誤差時就插入刀位點。從圖6可見第1-3、5-10、31-32、48-49采樣段內(nèi)最大非線性誤差大于許用誤差,故要在這13個采樣段內(nèi)插入新的刀位點。經(jīng)非線性誤差控制后的最大非線性誤差分布如圖7,可見最大非線性誤差小于1.5 μm,非線性誤差得到有效的控制,采樣段由原來的49個增加到63個,這也就是在誤差不符合條件的采樣段內(nèi)進(jìn)行刀位的合理密化。
為了更有效地控制非線性誤差,需要對五軸聯(lián)動數(shù)控加工非線性誤差的影響因素進(jìn)行分析。
以五坐標(biāo)端銑加工為例分析刀具半徑和轉(zhuǎn)角變化量對非線性誤差的影響。如圖8所示,設(shè)D1、D2分別為刀具兩個刀觸點,O1和O2為相應(yīng)的刀具中心。因為五軸加工時兩個旋轉(zhuǎn)軸是獨立的,故可將當(dāng)前刀位分解為平行于yoz平面和xoy平面的兩個分量,則A軸的轉(zhuǎn)動反映在yoz平面,C軸的轉(zhuǎn)動反映在xoy平面,因此可以分別求出在兩個坐標(biāo)平面內(nèi)刀軸轉(zhuǎn)動所引起的非線性誤差,然后再將他們合成[4]。
則刀心點連線的直線方程為:
刀觸點連線的直線方程為:
則非線性誤差的分布函數(shù)為:
2.1節(jié)中已經(jīng)得出最大非線性誤差的產(chǎn)生位置在相鄰刀位點中點附近,即當(dāng)y=yO2+yO1/2,θ=θ1+θ2/2刀觸點軌跡與理論直線軌跡偏差值最大。最大非線性誤差為:
同理可求得C軸引起的非線性誤差εCmax。由于A軸和C軸正交,并且εAmax和εCmax分別產(chǎn)生在兩個分量中點附近,結(jié)合上式,可近似地認(rèn)為:
由式(14)可見相同條件下,最大非線性誤差隨著刀具半徑和轉(zhuǎn)角變化量的增大而增大。
在非線性誤差求解時用到了正向和逆向運動學(xué)模型,該模型是基于坐標(biāo)轉(zhuǎn)換建立的,而坐標(biāo)變換又和機(jī)床的結(jié)構(gòu)尤其是轉(zhuǎn)臺旋轉(zhuǎn)中心Om在加工坐標(biāo)系的位置rm(mx,my,mz)有很大關(guān)系。不同的數(shù)控機(jī)床rm(mx,my,mz)是不同的,為了研究rm和非線性誤差的關(guān)系,進(jìn)行以下幾步工作:
(1)任取刀位源文件中相鄰兩個刀位點為:
GOTO/- 3.3108, - 66.9176,70.6195,0.2057720,-0.7120434,0.6713062
GOTO/- 2.7118, - 66.0299,71.2919,0.1905765,-0.7346359,0.6511457
(2)取Om在加工坐標(biāo)系的位置rm(0,0,mz),利用式(4)進(jìn)行坐標(biāo)變換得含有未知量mz的數(shù)控代碼:N0100 X -21.75882 Y9.80256+ .74118*mz
Z94.37428 - .32869*mzA47.83204 C16.11865 N0105 X -19.20532 Y12.93306+ .75895*mz
Z94.41254 - .34885*mzA49.37196 C14.54288
(3)按式(1)~(7)建立起誤差模型ε(mz);
(4)求最大非線性誤差,已經(jīng)證明在程序段中點處取得最大非線性誤差,故取t=0.5,由此得出僅含變量mz的最大非線性誤差模型εmax(mz),其仿真圖像見圖9,其橫坐標(biāo)表示mz,縱坐標(biāo)表示最大非線性誤差??梢姡S著機(jī)床轉(zhuǎn)臺參數(shù)mz的增大,同一程序段內(nèi)最大非線性誤差也相應(yīng)地增大。
以上是基于正向和逆向運動學(xué)模型推導(dǎo)出函數(shù)εmax(mz)的變化規(guī)律的。另外還可以針對相同的刀位源文件經(jīng)后置處理生成的五軸聯(lián)動數(shù)控加工程序分別在轉(zhuǎn)臺旋轉(zhuǎn)中心為rm(0,0,98)和rm(0,0,200)機(jī)床上加工時進(jìn)行對比分析,結(jié)果見圖10。顯然相同情況下在rm(0,0,200)機(jī)床上加工產(chǎn)生的最大非線性誤差大于在rm(0,0,98)機(jī)床上產(chǎn)生的。
綜上所述,五軸數(shù)控機(jī)床的轉(zhuǎn)臺結(jié)構(gòu)及尺寸參數(shù)對非線性誤差影響很大,所以選擇合理的機(jī)床結(jié)構(gòu)及尺寸參數(shù)也是減小非線性誤差的一條途徑。
本文提出的非線性誤差的控制策略的實質(zhì)是進(jìn)行合理的刀位密化,刀位密化本身就是減小走刀步長,所以走刀步長也是影響非線性誤差的因素之一。減小非線性誤差的一個有效途徑就是在保證加工效率的前提下,編程時合理地減小走刀步長。
加工曲面的局部幾何形狀及刀具的形狀也對非線性誤差有影響[7],由于篇幅關(guān)系這里不再論述。
五軸聯(lián)動數(shù)控加工時,數(shù)控系統(tǒng)的線性插補和旋轉(zhuǎn)運動的非線性導(dǎo)致了多軸機(jī)床特有的非線性誤差的產(chǎn)生。本文基于正向和逆向運動學(xué)模型建立起了非線性誤差分布模型,并采用工程實驗的方法分析了最大非線性誤差的產(chǎn)生位置,提出了自適應(yīng)性非線性誤差的控制策略,該策略既可以根據(jù)加工精度的要求將非線性誤差控制在合理的范圍之內(nèi),又排除了不必要的程序細(xì)化,減小了程序的長度,彌補了CAD/CAM軟件后置處理過程中缺少考慮非線性誤差的控制要求,最大限度地發(fā)揮了機(jī)床的加工能力。最后,本文分析了非線性誤差的影響因素,對實踐有一定的指導(dǎo)意義。多軸聯(lián)動數(shù)控加工非線性誤差控制策略的的研究是完善數(shù)控編程理論的一個重要的內(nèi)容,還有很多問題有待繼續(xù)研究。
[1]張立波,劉曉云,張曰敏.五軸NC加工中非線性誤差分析及補償[J].華中理工大學(xué)學(xué)報,1995,23(2):67 -70.
[2]Jung Y H,Lee D W,Kim J S,et al.NC post-processor for 5-axis milling machine of table - rotating/tilting type[J].Journal of Materials Processing Technology,2002,130/131:641 -646.
[3]陳良驥.五軸CNC系統(tǒng)中有效降低非線性誤差的兩種方法[J].鄭州大學(xué)學(xué)報:工學(xué)版,2009,30(2):107 -111.
[4]任學(xué)軍,劉維偉,汪文虎,等.五坐標(biāo)數(shù)控機(jī)床后置處理算法[J].航空計算技術(shù),2000,30(1):40 -43.
[5]劉雄偉,張定華,王增強(qiáng),等.數(shù)控加工理論與編程技術(shù)[M].2版.北京:機(jī)械工業(yè)出版社,2000.
[6]石宏,蔡光起,李景奎.混聯(lián)機(jī)床五軸聯(lián)動加工時刀擺的非線性誤差分析與控制[J].中國機(jī)械工程,2008,19(6):675 -682.
[7]劉宏.復(fù)雜曲面多軸數(shù)控加工非線性誤差理論分析及控制[J].組合機(jī)床與自動化加工技術(shù),2003(12):66-68.