董策勇,李紅月
(安徽理工大學 電氣與信息工程學院,安徽 淮南 232001)
鋰電池SOC是電池管理系統(BMS)中的一個重要參數,SOC的精確估計對電動汽車的安全、穩定運行發揮著重要作用[1,2]。然而SOC卻無法像電流、電壓那樣通過傳感器直接獲得,需要通過特殊的方法進行估計。現階段,常見的SOC估計方法有:安時積分法[3]、開路電壓法[4]、神經網絡法[5,6]以及卡爾曼濾波法[7,8]等。其中,安時積分法由于SOC估計時初始值難以確定,導致SOC估計誤差不斷累積,其精度會隨著降低;開路電壓法需要把電池靜置很長時間,才能獲取精確的開路電壓值,這種條件在電動汽車實際運行中很難達到;神經網絡法需要大量的數據對模型進行訓練,但當訓練不充分時,SOC估計的精度就會降低。
由于卡爾曼濾波算法(KF)只能解決線性系統問題,國內外研究學者對KF算法進行改進,提出了擴展卡爾曼濾波算法[9,10](EKF)和無跡卡爾曼濾波算法[11](UKF)等非線性系統算法。EKF算法在進行線性化處理時,由于忽略一階以上的高階項,引入了線性誤差問題,并且還容易造成算法的發散。UKF算法針對線性化方法進行了改進,采用無跡變換求取協方差和均值,避免了線性誤差問題,有效地提高了SOC估計的精度[12,13]。但是UKF算法在SOC估計過程中忽略了系統噪聲的時變特性,采用固定的系統噪聲值,導致了鋰電池SOC估計精度較低、穩定性較差[14]。因此,本文采用了Sage-Husa自適應濾波器對系統噪聲進行實時估算和修正,再與UKF算法相結合的AUKF算法。
本文基于Thevenin電路等效模型,通過可變遺忘因子最小二乘算法(VFFRLS)對模型參數進行實時辨識,再將參數辨識結果傳遞給AUKF算法進行SOC的在線估計。最后在UDDS工況對該算法進行了驗證。
建立鋰電池電路等效模型是鋰電池SOC估計的重要一步,模型的精度將會直接影響最終SOC估計精度。本文采用如圖1所示的Thevenin等效電路模型,相比較于其它模型具有結構簡單、計算復雜度低以及SOC估計精度高的特點。

圖1 Thevenin等效電路模型
圖1中,Uoc為開路電壓,R0為歐姆內阻,R1和C1分別表示極化電阻和極化電容,UL為鋰電池端電壓,IL為電池干路電流。該模型的數學表達式為:
(1)
鋰電池SOC的計算表達式為:
(2)
式(2)中,SOC(t)為當前t時刻的值;CN為電池額定容量;I(t)為t時刻電流;SOC(t0)為t0時刻SOC值。
開路電壓Uoc和SOC之間有著很強的對應關系,它們的關系曲線在SOC估計中發揮著重要作用。本文以容量為3200 mAh的18650型三元鋰電池為研究對象,對該鋰電池進行HPPC工況實驗來獲取OCV-SOC關系曲線。首先對電池充滿電,靜置1 h以上;采用0.3 C橫流放電,每次循環放電10%SOC,直至SOC為0。最后將得到的10組OCV-SOC數據通過MATLAB/Curve Fitting軟件進行關系擬合,關系曲線如圖2所示。

圖2 OCV和SOC關系曲線
VFFRLS算法是對RLS算法的改進,可以根據估計誤差的大小實時的計算出RLS算法中可變遺忘因子的最優值。可變遺忘因子λ的計算公式如下[15,16]:
(3)
式(3)中,λ(k)為當前時刻的遺忘因子;ρ為敏感因子。λmax、λmin分別為遺忘因子的最大值和最小值;M為窗口大小;ei為i時刻的參數估計誤差。
計算出λ值后,再結合RLS算法對鋰電池模型參數進行辨識。RLS算法的具體遞推公式如下:
(4)

結合VFFRLS算法,對模型表達式(1)進行離散化處理,得到用于鋰電池參數辨識的離散化系統方程:
UL(k)=Uoc(k)+a1IL(k)+a2IL(k-1)
+a3[Uoc(k-1)-UL(k-1)]
(5)
式(5)中,a1~a3是用R0,R1和C1表示的參數,通過對a1~a3的反解得到每個時刻R0,R1和C1的參數值,最后再把參數辨識結果傳遞給AUKF算法進行鋰電池的SOC估計。
UKF算法是采用無跡變換(UT)解決了系統噪聲的均值和協方差非線性問題。有效克服了無跡卡爾曼濾液(UKF)算法忽略高階項而導致的精度低,穩定性差的缺陷。
系統的狀態方程和測量方程為:
(6)
式(6)中,xk為k時刻的狀態向量;wk為系統白噪聲;yk為觀測向量;vk為測量噪聲。
UKF算法估計SOC的具體流程:
流程二:計算k-1時刻的Sigma采樣點:
(7)
流程三:狀態變量時間更新。
利用步驟(2)獲得的Sigma采樣點,計算出k時刻狀態變量均值和協方差的預測值:
(8)
流程四:測量變量時間更新。計算k時刻觀測變量的預測值。
(9)
流程五:協方差與卡爾曼增益矩陣Kk更新。

+Rk
(10)
(11)
(12)
流程六:狀態變量和協方差測量更新。
(13)
(14)
將鋰電池SOC估計的非線性系統方程(1)和(2)經過離散化處理,應用到上述UKF算法中,從而實現SOC的估計。
使用UKF算法對鋰電池SOC進行估計時,往往將系統的噪聲設定為定值,但是電動汽車實際行駛過程中系統噪聲是時變的,不變的系統噪聲導致了SOC估計的精度不高。針對以上問題,本文在UKF算法的基礎上加入了Sage-Husa自適應濾波器對系統噪聲進行實時的估計和校正,以提高SOC的估計精度。Sage-Husa自適應濾波算法對系統噪聲的估算如下:
3.2.1 過程噪聲均值和協方差的計算
(15)

(16)
通過對系統過程噪聲和測量噪聲自適應更新后,再與UKF算法SOC估計流程相結合,進而提高SOC估計的精度和穩定性。
本文選用容量為3200 mAh的18650型三元鋰電池作為研究對象。采用UDDS循環工況數據作為驗證數據,將UDDS工況數據導入MATLAB軟件中,進行AUKF算法的精度驗證,并與UKF算法對比。SOC初始值設定為0.8,實際初始值為1,采樣間隔為0.1s。圖3為兩種估計算法的SOC估計結果對比圖,圖4為SOC估計誤差對比圖。

圖3 SOC估計結果對比
由圖3的SOC估計結果可以看出AUKF算法比UKF算法更加逼近SOC真實值。由圖4的SOC誤差對比可以看出AUKF算法明顯優于UKF,具有更好的估計精度和穩定性。為了更直觀體現2種SOC算法的估計效果,本文選取SOC平均誤差與SOC最大誤差作為評價指標,如表1所示。

圖4 SOC誤差對比
由表1數據對比可知,AUKF的SOC最大誤差與SOC平均誤差均比UKF算法小。相比較與UKF算法,AUKF算法SOC精度提高了1.04%。充分驗證了AUKF算法的精確性和穩定性。

表1 2種算法的SOC估計誤差對比 %
本文為提高UKF算法的SOC估計精度,利用Sage-Husa自適應濾波器對系統噪聲進行實時估算和修正,形成AUKF算法。基于Thevenin等效電路模型,利用VFFRLS算法對等效模型參數進行辨識,再把參數辨識結果傳遞給AUKF算法進行SOC估計。通過仿真結果對比,驗證了AUKF算法的SOC估計能力要優于UKF算法,SOC估計精度提升了超1%,具有更好的精確性和收斂性。