張安偉,喻皓,張金良
(廣州汽車集團股份有限公司汽車工程研究院,廣州 510640)
感應(yīng)電機因其價格便宜、高穩(wěn)定性等優(yōu)點,已被廣泛應(yīng)用在工業(yè)伺服、機器人運動控制、新能源電動汽車驅(qū)動系統(tǒng)等場合[1-2]。為了實現(xiàn)感應(yīng)電機的高效控制,常需要使用旋轉(zhuǎn)變壓器、光電編碼器等傳感器以及感應(yīng)電機電流模型來獲取電機轉(zhuǎn)子磁鏈的位置。但在感應(yīng)電機的實際運行當(dāng)中,高溫、潮濕、振動等惡劣條件都會對傳感器的可靠性造成影響,降低系統(tǒng)的控制性能。因此,感應(yīng)電機無位置傳感器的研究是已成為當(dāng)前電機控制的熱門課題之一[3-5]。
傳統(tǒng)的擴展卡爾曼濾波器算法[6-7]是目前常用的感應(yīng)電機無傳感器觀測器方案,它可以在一定程度上消除由于電機模型參數(shù)擾動及測量誤差對狀態(tài)量估計精度造成的影響,具有調(diào)速范圍寬和控制精度高等優(yōu)點,但該方法對感應(yīng)電機參數(shù)和模型的精度有較大依賴,為獲取合適的協(xié)方差矩陣,需要進行大量實驗。目前基于傳統(tǒng)擴展卡爾曼濾波器算法的觀測器為了簡化設(shè)計,往往選取固定的Q、R 矩陣值,而實際的感應(yīng)電機模型參數(shù)會隨環(huán)境、工況的變化而改變,當(dāng)電機模型參數(shù)變化時就有可能影響觀測器的跟蹤精度及辨識性能。為此,許多學(xué)者從多個方面來解決傳統(tǒng)擴展卡爾曼濾波算法存在的這一問題:Szabat K[8]提出一種Q、R矩陣最優(yōu)估計的基于代價函數(shù)的遺傳算法;Orlowska Kowalska T[9]使用全局優(yōu)化的策略來計算矩陣Q、R,并以此為基礎(chǔ)對傳統(tǒng)的擴展卡爾曼濾波算法進行改善,將該算法應(yīng)用在無傳感器控制算法中取得了不錯的效果;還有一種效果較為顯著的方法是在擴展卡爾曼濾波器算法增益矩陣中引入衰減因子[10-11],該衰減因子可有效降低外界環(huán)境對電機模型參數(shù)的影響及模型參數(shù)誤差所引起的系統(tǒng)狀態(tài)參數(shù)辨識性能。該策略同樣可實現(xiàn)預(yù)期的效果。
為了解決傳統(tǒng)擴展卡爾曼觀測器在感應(yīng)電機無位置傳感器控制系統(tǒng)中遇到的上述辨識問題,本文設(shè)計一種強跟蹤擴展卡爾曼觀測器來觀測電機的相關(guān)控制參數(shù)。該方法可以有效克服電機模型及信號測量過程中的攝動對辨識性能的影響。
假設(shè)電機三相繞組對稱,所產(chǎn)生的磁動勢空間按正弦分布,各繞組間的互感、自感保持不變。忽略空間諧波,忽略鐵心損耗、磁路飽和以及開關(guān)頻率和溫度變化對感應(yīng)電機定子繞組阻抗的影響,感應(yīng)電機在兩相靜止坐標(biāo)系的數(shù)學(xué)離散化狀態(tài)方程為[5]:
其中:
式中:isα、isβ、usα、usβ、Ψrα、Ψrβ分別為兩相靜止坐標(biāo)系下的定子電流、定子電壓以及轉(zhuǎn)子磁鏈;Rr、Rs分別為轉(zhuǎn)子、定子電阻;Ls、Lr、Lm,Lσ分別為定轉(zhuǎn)子電感、定轉(zhuǎn)子互感、定子漏感;θr為感應(yīng)電機轉(zhuǎn)子電角度;ωr為感應(yīng)電機轉(zhuǎn)子電角速度;T為控制的采樣周期,采樣周期滿足香濃定理;為系統(tǒng)噪聲;vk為測量誤差。
根據(jù)式(1)中的非線性模型,將待估計的轉(zhuǎn)子電角度和轉(zhuǎn)子電角速度作為增廣狀態(tài)量,那么相應(yīng)的擴展卡爾曼濾波器算法方程如下:
其中:“^”上標(biāo)表示為估計值。
Qk和Rk分別為系統(tǒng)噪聲wk及測量噪聲vk的協(xié)方差矩陣。所估計的轉(zhuǎn)子磁鏈位置角可表示為幅值可表示
為了降低感應(yīng)電機模型不確定性及測量信號噪聲對算法辨識精度的影響,同時提高應(yīng)對系統(tǒng)運行狀態(tài)改變下的辨識性能,改造上述傳統(tǒng)的擴展卡爾曼濾波器算法,對計算得出的增益矩陣K進行在線調(diào)整,動態(tài)地滿足相應(yīng)的正交性條件[14]。這里,在原EKF的增益計算公式(4)中引入衰減因子系數(shù)αk,將式(4)變?yōu)椋?/p>
要確定αk值,除了要獲取Mk的信息外,還需要新息協(xié)方差矩陣的估計值可以根據(jù)新息的歷史數(shù)據(jù),由開窗估計法得出:
式中:N為窗口長度;ηi為i時刻實測向量Yi的新息序列,定義為:
可以看出,式(10)已完全忽略了歷史信息,僅與當(dāng)前的新息值有關(guān),這樣便可對當(dāng)前的系統(tǒng)模型誤差做出及時的反映。如果Mk和之間的關(guān)系選取為:
則衰減因子αk可由下式得到:
式中:tr(·)表示對矩陣求跡。
為盡可能避免矩陣求逆運算,式(10)可用下式計算得出:
當(dāng)αk=1 時,就是傳統(tǒng)的擴展卡爾曼濾波器算法。為了簡化計算,將加入衰減因子的式(7)取代傳統(tǒng)卡爾曼濾波器中的式(5),便可獲得強跟蹤擴展卡爾曼濾波器算法。
仿真實驗在Matlab/Simulink環(huán)境中進行。仿真模型中感應(yīng)電機具體參數(shù)如表1 所示,仿真算法采樣周期為100 μs。
表1 感應(yīng)電機仿真參數(shù)
為了體現(xiàn)出STEKF 算法的優(yōu)勢,將做與STEKF 和EKF 的對比實驗,將兩組算法加入到同一模型中運行。EKF 和對應(yīng)STEKF的Q、R矩陣、狀態(tài)量以及協(xié)方差P矩陣的初值是一樣,在模型中EKF、STEKF只根據(jù)電機的所測量的電流電壓對參數(shù)進行辨識,所得結(jié)果不參與閉環(huán)控制。
仿真中,負(fù)載值設(shè)為4 N·m,速度設(shè)定為1 000 r/min,觀察感應(yīng)電機的啟動調(diào)速性能。圖1~2 分別是STEKF和EKF對轉(zhuǎn)速及轉(zhuǎn)速誤差觀測值,圖3~4 為兩算法對電子磁鏈幅值的辨識。從圖1~2 中可以看出,STEKF 對電機轉(zhuǎn)速、定子磁鏈的辨識收斂速度明顯快于EKF,對實際轉(zhuǎn)速的辨識誤差都達(dá)到38 r/min左右,轉(zhuǎn)子磁鏈幅值最大誤差為0.02 Wb 而后迅速平穩(wěn)收斂于0,相比而言,EKF對感應(yīng)電機實際轉(zhuǎn)速的辨識誤差最大達(dá)到90 r/min左右,轉(zhuǎn)子磁鏈幅值最大誤差為0.08 Wb 且是震蕩收斂。可以看出,STEKF較傳統(tǒng)的EKF,具有更高的抗干擾及收斂速度的能力。
圖1 電機轉(zhuǎn)速辨識
圖2 電機轉(zhuǎn)速算法辨識誤差
圖3 電機定子磁鏈幅值辨識
圖4 電機定子磁鏈幅值辨識算法誤差
本文利用兩相靜止坐標(biāo)系下感應(yīng)電機數(shù)學(xué)模型建立相應(yīng)的擴展卡爾曼濾波器算法方程,為克服系統(tǒng)模型擾動和測量誤差所帶來的算法辨識性能損失,在傳統(tǒng)擴展卡爾曼濾波器算法的基礎(chǔ)上進行改進,在增益矩陣中加入衰減因子,實現(xiàn)了強跟蹤擴展卡爾曼濾波器。仿真結(jié)果驗證了設(shè)計思想,這為擴展卡爾曼濾波器在非線性領(lǐng)域的推廣使用提供了一種新的解決思路。