吳繼春,王笑江,周會成,方海國
(1.湘潭大學 復雜軌跡加工工藝及裝備教育部工程中心,湖南 湘潭 411105;2.華中科技大學 國家數控系統工程技術研究中心,湖北 武漢 430074)
復雜曲面類零部件廣泛應用于航空航天、汽車、船舶、能源、國防等行業,這些曲面通常在五軸數控機床上由刀具和工件的相對切削運動產生,其制造技術水平對國民經濟發展和國防現代化建設都具有十分重要的意義[1]。五軸數控機床通常由后置處理器生成G代碼[2],Son等[3]和Tang等[4]提出平移軸和旋轉軸非正交五軸機床與車銑復合機床的通用后置處理器;She等[5]在總結前人研究成果的基礎上,提出適用于常用3種類型五軸機床的通用后置處理器,但是經過數控系統插補后,采用通用后置處理器時會因旋轉軸與平移軸聯動而產生非線性誤差;楊旭靜等[7]研究發現,由于機床旋轉軸提供的線性插補限制了實際旋轉插補而產生了非線性誤差。各軸線性運動的合成可能使某點在某些離散段內的運動軌跡嚴重偏移直線[6]。
Zhang等[8]提出角度單球域線性插補(Single Spherical Angle Linear Interpolation, SSALI)方法來減少非線性誤差;Fu等[9]通過用粒子群優化(Particle Swarm Optimization, PSO)算法優化數控代碼來補償幾何誤差;文獻[10-12]提出控制非線性誤差的算法,該算法在有效控制非線性誤差的同時增加了機床運算的點,然而其所采用的密化中間點方法并未對實際誤差進行補償;Sun等[13]提出將數控系統插補的模擬信息反饋給計算機輔助制造(Computer Aided Manufacturing, CAM)系統的反饋機制來控制非線性誤差;張宏韜等[14]提出雙轉臺五軸數控機床誤差的實時補償方法,通過解耦分別對轉動誤差和平移誤差進行補償。因為雙轉臺五軸數控機床不但具有良好的穩定性,而且精度高,所以本文以雙轉臺五軸數控機床為例。
目前國外高檔數控系統提供有旋轉刀具中心點(Rotation Tool Center Point, RTCP)編程功能,目的是減少非線性誤差,提高加工精度,然而這些功能的核心算法并未公開[15],國內趙薇等[16]對實時傳輸控制協議(Real-Time Control Protocol, RTCP)進行了研究。針對雙轉臺五軸數控機床的特點,本文建立了該類型機床非線性誤差模型的解析表達式,進一步提出具有RTCP補償效果的非線性誤差補償機制。最后以葉輪作為仿真模型,通過MATLAB仿真分析證明了該補償機制的有效性。
一般五軸加工流程是由CAM軟件生成工件坐標系中的刀位文件,經后置處理后得到相應的數控代碼(NC代碼),再由NC代碼裝載機床進行加工。圖1所示為后置處理流程圖,可知工件坐標系(Workpiece Coordinate System, WCS)的點經插補密化、后置處理后,轉換為機床坐標系(Machine Coordinate System, MCS)中的點。圖1a中的實線為工件坐標系理想的軌跡曲線,圖1b中的虛線為機床坐標系實際的軌跡,實線為理想軌跡,經后置處理后,機床實際運行軌跡與理想軌跡的偏差即為非線性誤差。圖1c所示為插補點分解為5個軸運動的軌跡圖。
由文獻[17-18]可知,建立雙轉臺五軸數控機床逆向運動模型,即已知工件坐標系中的坐標值,求解機床3個平移軸的平移量與兩個旋轉軸的轉動量:
Sx=cosθC·(Px-mx)-sinθC·(Py-my)+mx;
Sy=sinθC·cosθA·(Px-mx)+cosθA·
cosθC·(Py-my)-sinθA·(Pz-mx)+my;
Sz=sinθA·cosθC·(Px-mx)+sinθA·cosθC·
(Py-my)+cosθA·(Pz-mx)+mz。
(1)
式中:θA表示A軸旋轉的角度;θC表示C軸旋轉的角度;Px,Py,Pz分別表示X軸、Y軸、Z軸平移的距離。其結構如圖2所示。
本文根據非線性誤差的分布特性,選取諧波函數作為多項式的基。為了簡化函數模型,選取一階多項式建模,同時根據仿真實驗獲取的非線性誤差數據確定該模型的數學解析式參數,從而建立該誤差的數學模型。
通過上述分析建立諧波函數模型及非線性誤差補償機制,以預測和補償插補點的非線性誤差,具體流程如圖3所示,該圖分為3個模塊,即后置處理模塊、非線性誤差建模與補償模塊、非線性誤差計算和比較模塊。
圖中虛線框為通用后置處理模塊,該模塊首先對刀位點進行線性插補,然后將插補點代入本文所提的雙轉臺五軸數控機床逆運動學模型,得到經典的后置處理點,即將工件坐標系中的坐標點和刀軸矢量轉換為機床坐標系中的坐標點和兩旋轉軸的角位移;實線框為非線性誤差的建模與補償模塊,根據文獻[19]提出的非線性誤差的最大值分布在兩點的中間位置,本文建立了一種實時預測非線性誤差模型并進行補償;點劃線框為非線性誤差計算和比較模塊,該模塊對比不同軌跡的非線性誤差,主要比較插補軌跡和數值,插補軌跡部分是在機床坐標系中比較補償后的插補軌跡、未補償的插補軌跡和理想軌跡,數值部分是在二維圖上比較補償后的軌跡和未補償軌跡非線性誤差的數值。
刀位點參數(單位均為mm)如下:
P0=(-191.403 7,11.350 8,7.618 2),
U0=(0.011 639,-0.036 377,0.999 27);
P1=(-191.405 7,13.515 9,7.909 3),
U1=(0.006 393,-0.068 922,0.999 60)。
其中:P為工件坐標系中的刀具位置,U為工件坐標系中的刀軸矢量。采用線性插補將這些插補點代入式(1),求出相應的后置處理點。本文將理想軌跡近似表示為一條直線,非線性誤差則為實際刀位軌跡到直線的偏差。所計算出的非線性誤差如表1所示,表中給出了23個插補點及其對應的非線性誤差值。圖4所示為插補點非線性誤差值的分布,其中橫坐標為P0到P1中間的插補點,縱坐標d為非線性誤差數值。
表1 插補點非線性誤差ε mm
根據非線性誤差分布的特征,以諧波函數為基進行逼近,具體表達式為
m=1,2,3,…,n。
(2)
式中:Aj,Bj為諧波函數的幅值,m為多項式的階數。本文為了簡便計算,使用一階多項式對非線性誤差進行逼近。首末兩點的誤差為零,初值為
bj=0,m=1,x=π,
則式(3)可以化簡為
P(x)=Aj·sin(k·π)。
(3)
本文在MATLAB中構建數據矩陣,這些矩陣用來存儲非線性誤差補償后后置處理點的三維數據。補償函數ε即為P(x),由式(3)可得諧波函數誤差模型。根據非線性誤差模型預估非線性誤差的分布,進行非線性誤差補償,解析式為
ε=P(x);
(4)
選擇一個典型五軸加工零件—葉輪進行驗證。如圖6所示,葉輪的葉片為自由曲面,因此需要多軸聯動加工,在UG(Unigraphics NX)的多軸加工模式中生成工件的加工刀位文件。本文選取葉輪的主葉片加工刀位文件的一段來驗證。
利用加工模式導出整個加工刀位文件的數據,P(x,y,z)為刀位點的空間坐標,U(i,j,k)為刀軸矢量的空間坐標。選擇一段20個刀位點的刀位文件進行驗證,如表2所示。
表2 20個刀位文件中的點
續表2
采用MATLAB計算所有中間插補點,經后置處理得到后置處理點。通過非線性誤差的諧波函數模型計算各后置處理點由于旋轉軸聯動產生的非線性誤差,然后采用本文提出的非線性誤差補償機制對后置處理點進行誤差補償。
表2中的刀位點經線性插補與后置處理(式(1))后獲得機床五軸的坐標信息,以及插補軌跡在機床坐標系中的位置。圖7a所示為刀具軌跡對比圖,其中虛線為未經過補償,直接經過后置處理的曲線,實線為采用本文所提非線性誤差補償函數補償誤差后的軌跡,點劃線為理想軌跡。圖7b所示為圖7a的局部放大圖,可見實線比虛線更接近點劃線,即利用所提非線性誤差補償方法的曲線比未經過補償的曲線更加接近理想軌跡。
圖8所示為非線性誤差的分布曲線,虛線為未經補償、由后置處理直接獲取的刀具軌跡,實線是利用本文所提非線性誤差補償方法計算出來的刀具軌跡??梢钥闯?,補償后大約為補償前10%,從而驗證了非線性誤差補償機制的有效性。
針對雙轉臺五軸數控機床因旋轉軸與平移軸聯動而產生的非線性誤差,本文提出一種解析模型對非線性誤差進行實時預測和補償。選取一階諧波函數進行擬合,并以該誤差的最大值分布在中點的特點,用首末兩點及中間點確立諧波函數誤差模型分布的解析表達式。
仿真結果表明,根據諧波函數模型進行非線性誤差向量補償能夠有效改善誤差大小,而且采用非線性誤差諧波函數補償機制進行非線性誤差補償后的誤差峰值不超過0.5,未經補償軌跡誤差的峰值超過4.5,誤差得到了有效改善。
本文在機床坐標系下所研究的利用諧波函數建立的非線性誤差模型需要計算諧波函數的系數,考慮實時性,下一步重點考慮建立更加準確且實時計算簡便的誤差模型。另外,目前利用的是經典后置處理變換公式,未來將重點研究既能替換現有變換公式,又能進行誤差補償的新的后置處理方法。