余文利 鄧小雷 姚鑫驊 傅建中
(1.衢州職業(yè)技術(shù)學院機電工程學院, 衢州 324000; 2.浙江大學浙江省三維打印工藝與裝備重點實驗室, 杭州 310027;3.浙江永力達數(shù)控科技股份有限公司, 衢州 324000)
對于精密數(shù)控機床而言,幾何誤差、刀具磨損等都會影響加工精度,但是主軸系統(tǒng)高速旋轉(zhuǎn)導致主軸軸承處產(chǎn)生較多熱量,引起主軸熱伸長對機床的加工精度影響較大[1]。大量研究表明,精密加工機械的最大的誤差源是機床外部環(huán)境和內(nèi)部熱源引起的熱誤差,占總體幾何誤差的40%~70%[2]。主軸是機床的核心部件,其性能對機床的切削速度和加工精度至關(guān)重要[3]。在減少熱變形或進行熱誤差補償之前,需獲得機床主軸的熱態(tài)特性,如溫度場分布、熱傳導特性、溫升特性、降溫特性、熱平衡時間以及熱位移和熱應(yīng)力場分布等。
對機床熱態(tài)特性進行建模的方法主要有有限元法、熱網(wǎng)絡(luò)法和有限差分法等,其中有限元法[4-7]最常用。利用有限元模擬方法可以得到主軸溫度場和溫度關(guān)鍵點,然而,由于主軸結(jié)構(gòu)復雜,仿真模型無法接近實際工況,導致溫度的模擬結(jié)果不能反映真實的溫度變化。因此,獲得機床主軸熱態(tài)特性的最主要方法仍是主軸熱平衡試驗。數(shù)控機床從啟動到達到熱平衡狀態(tài)是一個緩慢變化過程,機床主軸熱平衡試驗周期長,一般根據(jù)機床的品種、類型和規(guī)格的不同,試驗時間可從數(shù)小時到數(shù)十小時不等。因此,研究快速識別主軸溫升特性的方法,縮短數(shù)控機床主軸熱平衡試驗時間,對提高數(shù)控機床熱態(tài)特性分析效率具有重要意義。為提高機床熱平衡試驗的效率,國內(nèi)外許多學者提出了機床溫升快速辨識方法,通過使用熱平衡試驗周期中一小段時間的溫度測量值來預測機床結(jié)構(gòu)的原始溫升,取得了一些研究成果[8-10]。
無跡卡爾曼濾波(UKF)算法因其在處理非線性狀態(tài)估計和參數(shù)識別方面的明顯優(yōu)勢而得到廣泛應(yīng)用[11]。為了準確地估計壓電堆疊作動器的非線性滯后和蠕變效應(yīng),MINASE等[12]提出了一種基于UKF算法的自適應(yīng)識別方法。WANG等[13]探索使用UKF算法估計電動車電池的峰值功率。UKF算法也成功地應(yīng)用于各種環(huán)境溫度下基于開路電壓估計鋰電池充電狀態(tài)[14]。REGULSKI等[15]使用UKF算法估計功率分量和頻率。在移動機器人同步定位和映射領(lǐng)域,UKF算法用于地標位置估計和更新[16]。雖然UKF算法已經(jīng)成功應(yīng)用于實時非線性結(jié)構(gòu)系統(tǒng)辨識,但是標準UKF算法存在性能下降甚至發(fā)散等問題,而且研究發(fā)現(xiàn)其先驗噪聲分布與真實系統(tǒng)中的分布存在不匹配現(xiàn)象[17]。為了克服標準UKF算法的不足,阮承治等[18]利用免疫粒子群算法來優(yōu)化UKF算法,提出一種組合導航定位方法。HU等[19]提出兩種不同的UKF算法用于GPS車輛導航,一種基于漸消記憶,另一種基于方差估計。LOEBIS等[20]使用模糊邏輯技術(shù)來更新傳感器的噪聲協(xié)方差。孫宇新等[21]提出一種改進的UKF算法,并且使用該算法實現(xiàn)了無軸承異步電機的轉(zhuǎn)速估計。
本文提出基于改進的自適應(yīng)漸消卡爾曼濾波(AFUKF)快速辨識機床主軸溫升的方法。通過利用殘差序列的協(xié)方差,自適應(yīng)地改變漸消因子以調(diào)整測量值,有助于減小先前測量值和不準確的系統(tǒng)模型對預測精度的影響,可直接應(yīng)用于測量數(shù)據(jù)進行辨識,在此基礎(chǔ)上引入自適應(yīng)規(guī)則動態(tài)調(diào)整過程噪聲和測量噪聲協(xié)方差,以提高UKF算法的濾波性能。
1 基于改進的AFUKF算法的機床主軸溫升快速辨識
非線性離散模型如下
(1)
式中xk——k時刻n1階系統(tǒng)狀態(tài)向量
yk——k時刻m1階測量向量
f(·)、h(·)——非線性函數(shù)
wk——過程噪聲,滿足高斯分布wk~N(0,Qk)
Qk——過程噪聲協(xié)方差
vk——測量噪聲,滿足高斯分布vk~N(0,Rk)
Rk——測量噪聲協(xié)方差
漸消UKF算法具體步驟如下:
(1)初始化
(2)
(2)時間更新
通過無跡變換構(gòu)造2n+1個采樣點,即sigma點集
(3)
新構(gòu)造采樣點的對應(yīng)權(quán)值為
(4)
i——采樣點序號
δ——縮放比例參數(shù)
κ——待選參數(shù)
φ——調(diào)整參數(shù)
η——高階誤差采樣因子,滿足高斯分布時取為2
(5)
(6)
(7)
(3)測量更新
對上述預測值進行無跡變換,構(gòu)造2n+1個新Sigma點集
(8)
(9)
(10)
(11)
Kalman濾波增益陣為
(12)
式中αk——漸消因子
系統(tǒng)的狀態(tài)與協(xié)方差更新為
(13)
式中yk——在kΔt時刻的實際測量向量
Δt——采樣間隔
假定測量持續(xù)進行了NΔt時間,N為采樣總次數(shù),則在時刻0, Δt,…,NΔt分別有N+1個測量值。即可以利用在NΔt時間段內(nèi)的實際測量值更新狀態(tài)變量的后驗均值和協(xié)方差估計。本文將NΔt定義為辨識時間,在辨識時間內(nèi),測量更新所使用的測量值yk為真實測量值。然而,在辨識以后,測量更新中將沒有實際數(shù)據(jù)可用,全是預測值。此時,測量值yk會被預測值替換,預測值計算如下
(14)
式中q、r——標準差
randn(i,j)——產(chǎn)生標準正態(tài)分布的隨機數(shù)或矩陣的函數(shù),返回一個i×j階隨機項矩陣
由1.1節(jié)可知,漸消UKF算法在增益矩陣Kk中引入了漸消因子αk以區(qū)別于傳統(tǒng)UKF算法。對于不準確的系統(tǒng)模型,當前測量值對預測值的修正作用減弱,而先前測量值的修正作用相對增強,是導致系統(tǒng)發(fā)散的主要原因。為了減輕模型誤差對Kalman濾波的影響,通過在濾波時漸消因子的引入使增益矩陣增大αk倍,從而在狀態(tài)估計時增強當前測量值的作用,減輕先前測量值對系統(tǒng)的影響。其中,漸消UKF算法的關(guān)鍵是漸消因子的選擇。
在Kalman濾波中,測量向量yk在k時刻的殘差序列和協(xié)方差陣為
(15)
(16)
依據(jù)Kalman濾波最優(yōu)理論[23],如增益陣Kk是最優(yōu)增益陣,則新殘差列應(yīng)保持處處正交[24],即
(17)
對于不準確的系統(tǒng)模型,真實殘差協(xié)方差陣與計算得出的理論值存在不一致,無法保證殘差的自相關(guān)函數(shù)等于零。因此,本文通過對增益陣Kk的實時調(diào)整來保證殘差序列相互正交,使?jié)u消因子得到不斷的修正,即
(18)
如果Pxkyk-KkVk=0,則可得
(19)
對式(19)進行求跡運算,得
(20)
為使狀態(tài)估計更加平滑,引入弱化因子ρ來避免漸消因子αk的過調(diào)節(jié),即
(21)
其中
(22)
式中ξ——遺忘因子,取0.95
ρ——弱化因子,取3[25]
(23)
則式(21)、(22)可改寫為
(24)
(25)
濾波新息的理論方差應(yīng)與實時識別的方差近似相互匹配,則約束等式為
(26)
(27)
式(27)各分量經(jīng)歸一化后基本相等,則化簡后的等式為
(28)
由式(28)可得
(29)
非線性參考模型只能近似描述實際變化而無法準確反映,并且在測量過程中難免會出現(xiàn)隨時間變化的測量誤差,因此將協(xié)方差陣Q和R定為常量會導致改進漸消UKF算法的發(fā)散。本文提出一種改進的AFUKF算法,通過動態(tài)調(diào)整協(xié)方差陣Q和R,可以獲得更好的濾波性能。自適應(yīng)規(guī)則流程如圖1所示。
圖1 自適應(yīng)規(guī)則流程圖Fig.1 Flow chart of adaptive law
(30)
在以上策略中,Q和R調(diào)整方法為:如果γk<-H,Q以固定速率(c>1)增大,即Qupdate=cQ。對于R來說,如果ψk>0,則增大R,反之亦然;在增大或減小R時,首先設(shè)置一個調(diào)整步長Rstep,然后用步長搜索以找到適當?shù)腞,使得|γk|≤H。如果γk>H,調(diào)整方法與上述類似,Q以固定速率(c∈(0,1))減小,即Qupdate=cQ;對于R來說,如果ψk>0,則減小R,反之亦然。R的調(diào)整方法與上述相同,通過對Q和R的調(diào)整,使得|γk|≤H。
根據(jù)熱模態(tài)理論[8],對于熱系統(tǒng),其瞬時傳熱過程描述如下
(31)
式中C——熱容矩陣
H——熱阻抗矩陣
W——熱負載向量
T(t)——溫度向量
t——時間
式(31)可以通過解下列方程式求解
HMr=brCMr(r=1,2,…,n)
(32)
式中Mr——特征模式向量
br——熱特征值(b1 則式(31)的解可以表示為 (33) 式中T0——初始溫度向量 當T0=0且W(ζ)為階躍負載時,式(33)可以簡化為 (34) 因此,式(34)可轉(zhuǎn)換為 (35) 式中s——任一溫度測點位置坐標 T(s,t)——t時刻位置s處溫度測點的瞬態(tài)溫度 T∞(s)——位置s處溫度測點的穩(wěn)態(tài)溫度 Dr——常量,只與材料的熱物理性質(zhì)和初始溫度有關(guān) br(s)——與熱系統(tǒng)的綜合物理性質(zhì)相關(guān)的常量 使用式(35)來表示熱系統(tǒng)的瞬態(tài)溫度分布,如果在測量溫度時沒有外界干擾,式(35)中從2到n的高階項會迅速衰減,因此,可以保留第1項來近似表示瞬態(tài)溫度分布 T(s,t)=T∞(s)+D(s)exp(-b(s)t) (36) 將溫升模型轉(zhuǎn)換為離散狀態(tài)空間模型,假設(shè)狀態(tài)向量x=(T,b,T∞)T,則離散溫升模型為 (37) 機床主軸選點溫升曲線可以在辨識時間內(nèi)通過改進的AFUKF算法得到,并在辨識時間后通過改進的漸消UKF算法獲得。為了衡量溫升曲線預測精度,選用給定時間段內(nèi)預測溫度與測量溫度之間的均方根誤差為 (38) 式中Te(k)——kΔt時刻的預測溫度 To(k)——kΔt時刻的測量溫度 圖2 不同采樣時間下均方根誤差隨辨識時間變化曲線Fig.2 Changes in RMSE with different identifying times in different sampling periods (1)在時長為I1Δt的辨識時間內(nèi),使用改進的AFUKF算法,根據(jù)溫度測量值,動態(tài)調(diào)整變量Q和R,并對所選溫度測點進行預測,得到變化曲線。 (2)計算預測精度。將采樣時長N1Δt下的預測溫度與測量溫度代入式(38),計算兩者的均方根誤差σ1。 (3)加大辨識時間,使其變?yōu)镮2Δt,I3Δt,…,IgΔt,且滿足I1 (5)通過圖2可以看出,對于4個不同的采樣時長,均方根誤差均在辨識時間Ig-2Δt時刻呈現(xiàn)最小值,則可以判定該辨識時間為最短辨識時間。 當判別最短辨識時間后,即可以停止主軸熱平衡試驗,利用最短辨識時間內(nèi)采集的主軸選點溫升數(shù)據(jù),使用改進的AFUKF算法就能夠準確預測主軸選點溫升,大幅度減少熱平衡試驗時間。 為了驗證基于改進的AFUKF算法主軸溫升快速辨識方法的可行性和有效性,依據(jù)ISO 230-3[26]數(shù)控機床熱平衡試驗相關(guān)標準,進行立式機床的主軸熱平衡試驗,通過試驗獲取所需溫升數(shù)據(jù)。圖3為機床主軸熱平衡試驗系統(tǒng)。在立式機床的不同位置布置了10個溫度傳感器來測量溫度,所有溫度傳感器均為PT100型,如圖4所示,表1為溫度傳感器位置說明。測量溫度由數(shù)據(jù)采集系統(tǒng)記錄,然后在計算機中進行處理和分析,并在計算機上執(zhí)行基于改進的AFUKF的快速主軸溫升辨識過程。 圖3 機床主軸熱平衡試驗系統(tǒng)Fig.3 Thermal equilibrium test system of machine tool spindle 1.數(shù)據(jù)采集系統(tǒng) 2.溫度傳感器 3.立式機床 4.計算機 圖4 溫度傳感器布置Fig.4 Location of temperature sensors 溫度傳感器編號測溫點布置位置1~5主軸前軸承端蓋表面6、9主軸套筒7主軸缸筒末端8主軸電機10主軸下端11環(huán)境溫度 在室溫為17.9℃時,機床主軸以5 000 r/min速度空轉(zhuǎn),開始熱平衡試驗。溫度傳感器的采樣間隔Δt設(shè)置為1 min,每分鐘記錄一次溫度測量數(shù)據(jù),直到機床達到熱平衡狀態(tài)。本文提出基于改進的AFUKF算法主軸選點溫升快速辨識方法,是針對某一點溫度測量值進行處理的方法,因此對每個點來說都是獨立的,對于某個辨識點來說,算法只需該點的溫度測量值,而無需其他點的溫度,所以其他測點的溫度對所需辨識點沒有影響。在本文熱平衡試驗中,布置了10個測點,每個測點均可作為辨識點,來驗證算法的可行性。選擇傳感器5驗證所提出算法,其他點的溫升曲線以相同的方式預測。 圖5 主軸選點的溫度測量數(shù)據(jù)Fig.5 Measured temperature of spindle selected point 圖6 不同采樣時間下均方根誤差隨辨識時間的變化曲線Fig.6 Changes in RMSE with identifying times for different sampling periods of selected point 通過改進的AFUKF算法,計算得到在40、45、50、55 min采樣時間下均方根誤差隨辨識時間的變化曲線,如圖6所示。從圖6可以看出,在辨識時間28 min處,均方根誤差均為最小。根據(jù)最短辨識時間的判別規(guī)則,可以判斷出28 min為該點溫升曲線的最短辨識時間。因此,可以在28 min內(nèi)準確預測選點的溫升變化,而如果不使用本文算法,則需要大約400 min才能獲得從機床啟動到達到熱平衡的溫升變化。 在28 min辨識時間內(nèi),采用改進的AFUKF算法來辨識選點的溫升。參數(shù)Q和R分別調(diào)整為diag(10-7, 10-7, 10-7)和1.932×10-9。圖7為基于改進的AFUKF算法使用28 min辨識時間內(nèi)的測量溫升數(shù)據(jù)所得到的預測溫升和測量溫升變化曲線比較情況 ,使用穩(wěn)態(tài)溫度和達到熱平衡時間(當溫度達到最大溫升的95%時的時間)來比較選點的預測溫升和測量溫升。預測的穩(wěn)態(tài)溫度為26.797℃,熱平衡時間為197 min。測量的穩(wěn)態(tài)溫度為26.7℃,熱平衡時間為195 min。本文算法穩(wěn)態(tài)溫度的偏差為0.097℃,熱平衡時間偏差為2 min。預測結(jié)果表明,本文算法取得了良好的預測效果,能夠使用28 min的測量溫升數(shù)據(jù)準確預測400 min的熱平衡試驗的溫升數(shù)據(jù),大幅縮短了熱平衡試驗時間。 圖7 測量溫升與本文算法的預測溫升曲線比較Fig.7 Comparison of measured and estimated temperature rises of selected point based on proposed algorithm 另外,對于狀態(tài)向量x=(T,b,T∞)T,在溫升辨識過程中獲得了參數(shù)b和T∞的值,如圖8、9所示。從圖8、9可以看出,預測變量b和T∞分別收斂于0.016 min-1和26.797℃,證明本文算法在預測主軸選點溫升時具有很好的收斂性。 圖8 預測變量b的變化曲線Fig.8 Changing curve of estimated variable b 圖9 預測變量T∞變化曲線Fig.9 Changing curve of estimated variable T∞ 通過計算得到總采樣時間的不同辨識時間下預測溫度與測量溫度之間的均方根誤差。圖10為在總采樣時間內(nèi)均方根誤差隨辨識時間的變化曲線,從圖10可以看出,辨識時間28 min的均方根誤差最小,約為0.129 1℃。該時間與基于選點溫升的快速辨識的時間相同。因此,可以證明本文提出的基于改進的AFUKF算法的溫升快速辨識方法是有效的。 圖10 總采樣時間內(nèi)均方根誤差隨辨識時間的變化Fig.10 Changes in RMSE with different identifying times in a sampling period of 400 min 在溫升辨識過程中,傳統(tǒng)漸消UKF算法與改進的AFUKF算法使用相同的初始化參數(shù)。進行選點溫升快速辨識時,使用傳統(tǒng)漸消UKF算法,在50、55、60、65 min的采樣時間下均方根誤差隨辨識時間的變化曲線如圖11所示。由圖11可知,在辨識時間32 min處均方根誤差均為最小。 圖12為在辨識時間32 min處傳統(tǒng)漸消UKF算法預測溫升和測量溫升變化曲線比較情況,從圖12可以看出,雖然使用傳統(tǒng)漸消UKF算法對所選點的最小辨識時間僅為32 min,但是在32 min辨識時間下預測溫升與測量溫升有較大偏差。基于改進的AFUKF算法下最短辨識時間28 min內(nèi)的預測溫升更接近于測量溫升(圖7)。原因在于傳統(tǒng)漸消UKF算法,僅考慮漸消因子中對角元素的信息,導致殘差信息不對稱,而測量噪聲和過程噪聲的協(xié)方差R和Q保持固定不變的話,則會導致協(xié)方差Q、R與實際系統(tǒng)中的真實協(xié)方差不匹配,從而導致算法性能下降甚至發(fā)散,使得在最短辨識時間32 min內(nèi)的預測溫升與測量溫升出現(xiàn)大的偏差。而改進的AFUKF算法因為通過殘差歸一化自動更新漸消因子,同時引入自適應(yīng)調(diào)整規(guī)則,使得在進行溫升預測時,得出的主軸溫升預測結(jié)果符合實際的溫度變化,因此,基于改進的AFUKF的快速辨識方法優(yōu)于傳統(tǒng)漸消UKF方法。 圖11 傳統(tǒng)漸消UKF算法不同采樣時間下均方根誤差隨辨識時間的變化曲線Fig.11 Changes in RMSE with identifying times for selected point based on normal fading UKF in different sampling times 圖12 測量溫升與傳統(tǒng)漸消UKF算法預測溫升 曲線比較Fig.12 Measured and estimated temperature rises of selected point based on normal fading UKF (1)基于改進的AFUKF的溫升辨識方法可以在更短的時間內(nèi)快速預測機床主軸選點的溫升變化。 (2)首先使用殘差歸一化處理自動更新漸消因子并將其引入增益矩陣,以減小系統(tǒng)模型偏差對估算精度的影響,增強濾波器的穩(wěn)定性;其次通過使用自適應(yīng)規(guī)則,動態(tài)調(diào)整協(xié)方差矩陣Q和R,減少外部擾動對溫升預測的影響,獲得了更好的濾波性能。 (3)使用立式機床驗證所提出方法的可行性和有效性,試驗中選定主軸上的一個點,得到28 min為該選點的最短辨識時間,利用該最短辨識時間下的測量溫度所預測的主軸溫升,與400 min時間段內(nèi)測量溫升之間的均方根誤差為0.129 1℃、穩(wěn)態(tài)溫度之間的誤差為0.097℃。試驗結(jié)果表明,本文提出方法是有效的,應(yīng)用于主軸熱平衡試驗,能夠大幅度提高試驗效率。1.5 辨識方法設(shè)計
2 試驗驗證
2.1 試驗
圖5為傳感器5的測量溫度變化情況,總測量時間約為400 min。2.2 對比分析
3 結(jié)論