李培新 馬 躍 于 東 王志成, 韓 旭
1.中國科學院研究生院,北京,100049 2.中國科學院沈陽計算技術研究所高檔數(shù)控國家工程研究中心,沈陽,110171 3.沈陽高精數(shù)控技術有限公司,沈陽,110171
輪廓誤差的計算是高檔數(shù)控系統(tǒng)的一個重要研究課題。目前離線計算輪廓誤差的方法很多[1-4],雖然這些方法的計算精度很高,但是由于其計算復雜、計算時間較長,很難應用到實時計算輪廓誤差的任務中。實時計算輪廓誤差方法在工程上可以指導控制參數(shù)的選取,并為實時輪廓誤差控制方法(如交叉耦合控制方法)提供支持[5-7]。目前,許多研究實時估算輪廓誤差的方法中,輪廓誤差的估算與跟隨誤差直接相關[8-11]。然而,這些輪廓誤差估算方法對跟隨誤差的依賴性很大,估算的精度有待進一步提高,如Yeh等[8]提出的實時輪廓誤差估算方法,對跟隨誤差有比較苛刻的要求。從數(shù)學上分析,計算輪廓誤差最直接和有效的方法是計算反饋點到指令曲線的最短距離。這種方法計算的輪廓誤差計算精度高,然而對于任意加工曲線,這種方法計算時間長,計算復雜,適合離線計算。為了達到實時估算輪廓誤差的要求,需要將其作相應的簡化。本文對上述離線計算方法進行修改,提出一種輪廓誤差實時估算方法,該方法具有計算量小和精度高的優(yōu)點,能夠滿足多種工程需要。
圖1給出了線性軌跡命令下的輪廓誤差計算方法,圖中,P為實際位置點,R為指令位置點,ε為輪廓誤差,e為跟隨誤差。
圖1 線性軌跡命令下輪廓誤差計算
由圖1可知,ε為點P到指令軌跡(直線)的距離。設點P的坐標為(x′,y′),指令軌跡方程為
則
圖2給出了曲線軌跡命令下的輪廓誤差計算方法。由圖2可知,ε為點P到指令軌跡(曲線)的最近距離。如果知道了指令的軌跡方程,則點P到曲線的距離便可以計算出。求點到曲線的距離,工程上有許多方法,如最優(yōu)化理論。此方法要求首先求出指令曲線的方程,然后根據(jù)最優(yōu)化理論將點P到曲線的最短距離求出,即得到點P到指令軌跡的輪廓誤差。
圖2 曲線軌跡命令下的輪廓誤差計算
在重構數(shù)控系統(tǒng)加工輪廓曲線的方法中,分段樣條插值法能很好地反映原曲線的形狀,所以可以將分段差值得到的曲線作為原輪廓曲線。本文分別采用分段線性樣條插值和三次樣條插值離線重構的方法加工輪廓曲線。實際上,線性插值可以反映原曲線的整體特性,經(jīng)過三次樣條插值后,曲線變得連續(xù)、平滑,然后分別求出線性插值后的輪廓誤差曲線和三次樣條插值后的輪廓誤差曲線作為輪廓誤差曲線的基準。求解的過程采用最優(yōu)化原理,將問題轉化為非線性約束規(guī)劃問題來求解。
1.2.1 線性插值輪廓誤差計算
線性樣條插值是最簡單的樣條插值。數(shù)據(jù)點使用直線進行連接,結果樣條是一個多邊形。從代數(shù)的角度來看,每個分段函數(shù)si都是一個如下的線性函數(shù):
樣條的每個數(shù)據(jù)點都必須連續(xù),即
這樣,輪廓誤差的計算可如圖3所示。
圖3 線性插值輪廓誤差計算
圖3中,P為實際反饋點位置,輪廓誤差ε即為點P到指令點Ri與Ri+1之間軌跡的最短距離。令點Ri+1的坐標為(xi+1,yi+1),點Ri的坐標為(xi,yi),則點Ri、Ri+1之間的軌跡方程如式(3)所示。其中Ri為離點P最近的指令點,輪廓誤差ε的計算表達式如式(2)所示。
1.2.2 三次樣條插值輪廓誤差計算
對于給定的數(shù)據(jù)點(xi,yi),y i=f(xi),i=0,1,…,n。用n段三次多項式在數(shù)據(jù)點之間構建一個三次樣條。如果
表示對函數(shù)f進行插值的樣條函數(shù),則仍需要以下條件:
設s¨(x0)=s¨(xn)=0,這樣總共有4n個已知條件,從而可確定n段多項式,輪廓誤差的計算可由圖4得出。點Ri與Ri+1之間的曲線軌跡方程為
圖4 三次樣條插值輪廓誤差計算
輪廓誤差ε即是點P到si(x)的最短距離,將求解過程轉化為非線性約束規(guī)劃問題如下:
由上文分析可知,對于輪廓誤差的計算,特別是三次樣條插值輪廓誤差的計算,計算復雜且計算量大,很難應用到實時系統(tǒng)中。為此,本文提出了一種修正的輪廓誤差估算方法,并給出了該算法的實時性分析。
圖5給出了實時輪廓誤差的估算方法。圖5中,點Ri為離點P最近的指令位置點,Ri-1、Ri+1分別是點Ri的直接前驅點和直接后繼點。實際上,由于直接計算ε計算量大,不能實現(xiàn)實時計算的要求,所以需要一種簡便且估算準確的方法來代替ε的計算。本文用?ε來代替ε作為輪廓誤差的估計。?ε的計算方法如下:
圖5 實時輪廓誤差估算
將Ri-1、Ri+1的連線作為曲線在點Ri處的切線向量τ。設點 Ri-1的坐標為(xi-1,yi-1),點Ri+1的坐標為(xi+1,y i+1),點 Ri的坐標為(xi,y i),則過點Ri-1、Ri+1的直線的斜率k為
用k來代替指令曲線在點R i處的切向量τ,那么過點Ri的切線方程為
化為直線的一般方程為
則點 P(x′,y′)到直線(式(10))的距離?ε為
將?ε作為ε的代替。注意:用此方法計算斜率k時,當k為無窮大時,即 xi+1-xi-1=0時,
在該算法中,尋找離點P最近的指令位置點Ri的具體方法是:以當前的指令位置點Rj向前找,計算|PRi|2(1≤i≤j),即點P、Ri之間距離的平方,避免開根號的運算量,當發(fā)現(xiàn)當前|PRi-1|2比|PRi|2大時停止搜索,點Ri即是離點P最近的指令點。實際上,由于點P與其跟隨點R距離不會很遠(輪廓誤差控制的方法也在減小跟隨誤差,使點P逼近點R),所以只需要向前搜索很小一個常數(shù)點的位置即可以找到Ri,在下文的實驗中平均只需前找十幾個點位置即可以找到Ri。
由上述方法分析可知,當指令軌跡為線性時,?ε即是ε。因為 ,過點Ri-1、Ri+1的直線的斜率k即為線性軌跡的斜率,過點Ri線率為k的方程即是式(1),?ε的計算可采用式(2)。當指令軌跡為不規(guī)則曲線時,?ε或大于、或小于ε。在下文的實驗中將給出?ε與ε之間誤差的對比分析。
實際上,在輪廓曲線重構的方法中樣條插值法具有很高的精度,本文提出的輪廓誤差實時估算方法,將曲線在各點的切線用前后兩點的連線代替,見式(9),即如果共有n+1個指令點,按這種方法參考式(5)與式(6)可得出4n個已知條件(已有條件2n+2個、內部條件2n-2 個,令這樣就可重構出軌跡指令的輪廓曲線,并且重構的曲線也能很好地反映曲線的原形狀。而本文提出的方法正是以此重構輪廓曲線方法為理論基礎加以修改得出輪廓誤差的估算,這樣從理論上可以保證其算法的正確性。
由上述的闡述可以發(fā)現(xiàn),此方法所需的主要運算時間有求根運算1次、絕對值運算1次、除法運算1次,完全可以滿足實時運算的要求,在下文的實驗中給出了其運算時間。相對于插值法的算法時間復雜度O(n2)和大量的運算(式(5)、式(6)、式(8)),本文提出的實時估算方法計算簡單,運算量小。
兩個軸的實時輪廓誤差估算實驗裝置采用的伺服和電機均由沈陽高精數(shù)控技術有限公司提供,伺服型號為 GJS-015ADA,電機型號為GJM096ADB22。CNC和伺服電機通過運動控制總線相連,CNC的插補命令通過運動控制總線發(fā)給指定的伺服,伺服的反饋響應也通過運動控制總線傳給CNC。為了實時地估算輪廓誤差,需要實時地從總線上獲取當前位置信息(包括指令位置和實際反饋位置),然后依據(jù)上文給出的方法估算輪廓誤差。由于實驗只涉及到兩個軸,所以實驗中只是向X軸和Y軸發(fā)送插補數(shù)據(jù),并采集相應的反饋數(shù)據(jù),沒有用到其他軸,如Z軸。
線性樣條插值輪廓誤差的計算和三次樣條插值輪廓誤差的計算不考慮樣條插值的時間,即假設輪廓曲線已經(jīng)給出,僅計算輪廓誤差運算的時間,表1給出了其運算時間對比。
表1 運算時間對比 s
實驗中,插補器每隔0.25ms發(fā)送一個插補位置點,總共發(fā)送n個插補點。因而平均每個反饋點輪廓誤差計算所需的時間等于總時間除以插補點數(shù)。如表1所示,在這0.25ms的周期內實時估算的方法完全可以完成輪廓誤差的計算,每個點的平均計算時間只需要0.02ms,由此可以證明提出的實時估算輪廓誤差方法滿足實時計算的要求。
在采樣點密集的情況下,線性插值可以反映輪廓曲線的整體特性,三次樣條插值可以連續(xù)平滑地重構出輪廓曲線。本實驗中每隔0.25ms采一個樣點,由于采樣點較密集所以本文將εrt(實時估算輪廓誤差)分別和εliner(線性插值重構輪廓誤差)與εspline(三次樣條插值重構輪廓誤差)作比較,以求給出準確的對比。圖6所示為雙軸實驗加工的輪廓曲線,圖7給出了實時估算的輪廓誤差曲線圖,圖8所示為實時估算的輪廓誤差εrt分別與基準輪廓誤差εliner和εspline作差比較的誤差曲線。
圖6 實驗加工曲線
圖7 實時輪廓誤差曲線
圖 8 εrt與 εliner、εspline作差比較
為了較明顯地給出對照 ,將 εrt與 εliner、εspline在數(shù)學分析上作比較,如表2所示。
表 2 εrt與 εliner、εspline的差值 nm
由表2可以發(fā)現(xiàn),實時估算的輪廓誤差εrt和基準輪廓誤差εliner、εspline之間的平均差值為納米級別,說明該估算方法在提高實時性的同時,犧牲的精度很小,完全可以滿足實際工程的應用需要。
本文分析了離線計算輪廓誤差的方法,在此基礎上提出了實時估算輪廓誤差的新方法,通過實驗證明該方法實時性好,估算精度高。該方法簡單明了,可以應用到數(shù)控系統(tǒng)上實時估算輪廓誤差。在工程上可以指導控制參數(shù)的選取,并為實時輪廓誤差控制方法,如交叉耦合控制方法,提供誤差控制支持。
[1] 郭慧,林大鈞.基于微粒群算法的復雜曲面輪廓度誤差計算[J].東華大學學報(自然科學版),2008,34(3):274-277.
[2] 侯宇,張競,崔晨陽.復雜線輪廓度誤差坐標測量的數(shù)據(jù)處理方法[J].計量學報,2002,23(1):13-16.
[3] 廖平.基于粒子群算法和分割逼近法的復雜曲面輪廓度誤差計算[J].中國機械工程,2010,21(2):201-205.
[4] Yu Yuan,Lu Jun,Wang Xiaochun.Modeling and Analysis of the Best Match in Free-form Surface Measuring[J].Mechanical Science and Technology,2001,20(3):19-20.
[5] Koren Y.Cross-coupled Biaxial Computer for Manufacturing Systems[J].Trans.ASME,J.Dyn.Syst.Meas.Control,1980,102(4):265-272.
[6] Koren Y,Lo C C.Variable Gain Cross Coupling Controller for Contouring[J].CIRP Proc.Manufacturing Systems,1991,40:371-374.
[7] Ramesh R,Mannan M A,Poo A N.Tracking and Contour Error Control in CNC Servo Systems[J].Int.J.Mach.Tools Manuf.,2005,45:301-326.
[8] Yeh S S,Hsu P L.Estimation of the Contouring Error Vector for the Cross-coupled Control Design[J].IEEE/ASME Trans.on Mechatronics,2002,7(1):44-51.
[9] Cheng M Y,Lee C C.Motion Controller Design for Contour-following Tasks Based on Real-time Contour Error Estimation[J].IEEE Transactions on Industrial Electronics,2007,54(3):1686-1695.
[10] Chen S L,Wu K C.Contouring Control of Smooth Paths for Multiaxis Motion Systems Based on E-quivalent Errors[J].IEEE Trans.Control Syst.Technol.,2007,15(16):1151-1158.
[11] 周凱.數(shù)控原理、系統(tǒng)及應用[M].1版.北京:機械工業(yè)出版社,2007.