彭方想,南金瑞,孫立清
(北京理工大學 機械與車輛學院,北京100081)
鋰離子電池荷電狀態(tài)估計是電池管理系統(tǒng)的核心部分,對電動汽車意義重大,但由于其受到溫度、充放電倍率、電池實際容量及傳感器靈敏度等因素的影響,使得電池SOC估計成為難點。目前常用的SOC估計方法有安時積分法、開路電壓法、基于模型的估計方法和基于數據驅動的估計方法[1]。使用較多的方法是基于模型的方法,其中包括改進的卡爾曼濾波(KF)算法、改進的粒子濾波(PF)算法、HIF算法等。HE et al[2],YU et al[3]為了減少系統(tǒng)噪聲對SOC估計精度的影響,提出了自適應擴展卡爾曼濾波算法(AEKF)進行鋰離子電池的SOC估計。文獻[4-6]基于UT變換,提出了一種自適應無跡卡爾曼濾波(AUKF)算法,該方法比傳統(tǒng)的擴展卡爾曼濾波有更高的估計精度,但依然不能準確描述系統(tǒng)的非線性特征。文獻[7-8]為了擴大SOC估計算法的適用范圍,提高實車工況下算法的魯棒性,將HIF算法應用于電池的SOC估計,但該算法復雜度較高。粒子濾波(PF)算法常用于解決非線性系統(tǒng)的狀態(tài)估計問題,YE et al[9],TIAN et al[10]提出了改進的粒子濾波算法,雖然能解決常用粒子濾波算法的粒子退化問題,但是會導致粒子多樣性降低。李亞濱等[11],張琪等[12]提出一種基于權值選擇的粒子濾波(WSPF)算法,該方法能夠有效地解決PF算法的“粒子退化問題”,同時保證粒子的多樣性,提高了PF算法的估計精度。本文選用MNC電池作為研究對象,根據Thev-enin模型建立狀態(tài)方程和觀測方程;采用帶遺忘因子的最小二乘(FFRLS)法實現(xiàn)電池模型參數的在線辨識,以電池端電壓為指標評價模型參數辨識精度;結合FFRLS和WSPF算法,提出一種新型的鋰離子電池SOC估計方法,并通過仿真驗證算法的估計精度。
電池模型是研究電池狀態(tài)估計的基礎,鋰離子電池模型的種類主要分為電化學模型、等效電路模型和黑箱模型。電化學模型雖然能直觀反映電池內部特性,但其存在模型計算復雜、使用范圍受限的問題。黑箱模型是建立電池輸入輸出的映射函數,從而確定電池內部的結構和參數。目前使用較多的是等效電路模型,利用電子元器件來模擬電池的動態(tài)特性,具有模型參數少、精度高的特點。郭向偉[13]驗證了隨著RC等效電路模型階數的增加,電池模型精度提升并不明顯,但參數辨識難度會大大提高。因此本文選用Thevenin模型作為鋰離子電池模型,其原理圖如圖1所示。
圖1 Thevenin模型Fig.1 Thevenin model
電池模型的狀態(tài)方程和觀測方程分別為:
式中:Uocv為動力電池的開路電壓;Ut表示動力電池的端電壓;R0表示動力電池的歐姆電阻;Rp表示動力電池的極化電阻;Cp表示動力電池的極化電容;I表示電池的輸出電流。
電池模型參數辨識分為離線參數辨識和在線參數辨識。電池在使用過程中具有時變特性,在不同溫度、電流、SOC的情況下,電池模型參數在不斷變化。離線參數辨識是利用電池試驗標定點的參數進行分段辨識,雖然能描述電池的內部特性,但魯棒性和適應性較差。在線參數辨識能隨著工況變化實時更新模型參數,實現(xiàn)電池狀態(tài)的精準監(jiān)控,因此本文將對電池模型進行在線參數辨識。遞推最小二乘法具有算法簡單、占用內存小的特點,在模型的參數估計和狀態(tài)估計使用較多[14],但存在數據飽和現(xiàn)象,即隨著數據量增大,新數據難以發(fā)揮修正作用,造成模型參數辨識精度的下降。因此引入遺忘因子,以加強當前數據影響,減少歷史數據影響。本文采用帶遺忘因子的遞推最小二乘(FFRLS)算法完成電池模型的參數辨識。
將Thevenin模型進行離散化處理,可得傳遞函數G(s):
雙線性變換常用于從系統(tǒng)s平面到z平面的映射:
式中:Δt系統(tǒng)采樣間隔時間。
其中,a1,b0,b1與電池模型參數有關。
將式(5)進行離散化處理:
Thevenin模型的數據矩陣和參數矩陣分別為:
通過公式推導,可得模型參數R0,Rp,Rp與參數向量θ的關系:
其中,τ=RpCp.
基于FFRLS算法原理,將式(6)改寫為:
FFRLS算法步驟如下所示:
1)初始化參數向量θ(k)和數據向量θφ(k),協(xié)方差矩陣P(k).
2)計算增益矩陣K(k)
3)計算后驗誤差e(k)
4)計算k+1時刻的θ(k+1)
5)更新協(xié)方差矩陣P(k)
6)循環(huán)步驟2),3),4),5).
4塊MNC實驗電池均來自北京國能電池科技有限公司,標注為 MNC1,MNC2,MNC3,MNC4.其標稱容量為30Ah,充放電截止電壓分別為4.2 V和3.0V.電池實驗測試設備采用新威科技的BTS動力電池檢測設備,測量精度為0.1%,數據儲存頻率為50Hz.本次實驗選用電池單體MNC1,實驗采用混合動力脈沖特性測試(HPPC測試),實驗溫度為25℃.具體試驗步驟為:
1)利用標準恒流恒壓法將電池充滿,靜置1h.
2)加載混合脈沖激勵信號,對電池進行一段時間的恒流放電,使其SOC變化10%,靜置1h.
3)重復步驟2),直至電池達到放電截止電壓,靜置1h.
4)加載混合脈沖激勵信號,然后對電池進行一段時間的恒流充電,使其SOC變化10%,靜置1h.
5)重復步驟4),直至電池達到充電截止電壓,靜置1h.
HPPC測試過程中加載電流和電壓的曲線如圖2所示?;?HPPC測試數據(放電過程),采用FFRLS算法進行電池模型的在線參數辨識,辨識結果如圖3所示。
圖2 HPPC測試Fig.2 HPPC test
圖3 模型參數隨時間變化曲線Fig.3 Curve of model parameters over time
HPPC測試開始階段,電池處于靜置狀態(tài)(未加載電流),因此FFRLS算法未進行電池模型參數的更新,維持初始參數值。當電池單體有加載電流時,F(xiàn)FRLS算法能夠迅速識別數據向量的變化,實現(xiàn)電池模型參數的更新。其效果見圖4中電池端電壓的誤差曲線。電池端電壓的誤差基本穩(wěn)定在3mV以內,因此驗證了FFRLS算法在Thevenin模型參數辨識精度較高。
圖4 電池端電壓誤差隨時間變化曲線Fig.4 Curve of battery terminal voltage error
PF算法是一種基于貝葉斯估計的非線性濾波算法,常用于解決非線性系統(tǒng)的參數估計和狀態(tài)濾波問題,但其存在“粒子退化”現(xiàn)象,即多次遞推之后,除了少部分粒子以外,大部分粒子的權值幾乎為0,降低了粒子的多樣性。基于權值選擇的粒子濾波算法可以有效地解決這一問題。因此,本文提出一種聯(lián)合FFRLS和WSPF算法的鋰離子電池SOC估計方法。
WSPF算法的核心思想是選取粒子權重較大的粒子用于狀態(tài)估計,但所有備選粒子都參與到粒子的更新過程。WSPF算法流程如下。
1)粒子初始化:根據重要性概率密度選取Ns個粒子作為粒子集,其初始值為,權值為1/Ns.
2)預測:已知k-1時刻狀態(tài)xk-1,預測k時刻Ns個粒子的狀態(tài).
3)加權:計算k時刻Ns個粒子的權值。
4)選優(yōu):將Ns個粒子按照權值從大到小排序,選擇其中權值排序靠前的Np個粒子。
5)權值歸一化。
6)濾波估計:選出的Np個粒子,計算k時刻的后驗概率密度。
7)權值恢復及均一化。
8)循環(huán):重復步驟2)-6).
開路電壓Uocv和xsoc的關系獲得主要通過曲線擬合的方式獲得。通過開路電壓測試:以10%SOC為間隔,測得電池靜置狀態(tài)下的Uocv.擬合公式常用高階多項式。本文的擬合公式為:
基于FFRLS算法和WSPF算法完成鋰離子電池的SOC估計,其流程圖如圖5所示。
圖5 電池SOC估計流程圖Fig.5 Flowchart of battery SOC estimation
將WSPF算法粒子數Ns設置為1 000,選優(yōu)粒子數Np設置為200,SIR-PF算法粒子數Ns設置為1 000.對4塊MNC單體分別進行HPPC測試和動態(tài)工況測試(dynamic street test,DST),采用均方根誤差(root-mean-square error,RMSE)來衡量電池SOC估計的優(yōu)化結果。RMSE結果可見表1和表2。通過仿真結果可知,WSPF算法的RMSE均比SIR-PF算法低。
表2 DST工況下的SOC均方根誤差Table 2 RMSE of SOC under DST
為更直觀比較兩算法的估計精度,以MNC1單體為例,基于HPPC測試和DST工況下的電池SOC狀態(tài)估計結果分別為圖6和圖7,結果顯示WSPF算法的估計誤差能控制在2%以內,且估計精度優(yōu)于SIR-PF算法。
本文基于FFRLS算法完成了Thevenin模型的在線參數辨識,提出了一種基于WSPF算法的電池SOC估計方法。通過仿真驗證,WSPF算法比SIR-PF算法估計精度更高,估計精度能控制在2%以內。WSPF算法通過選優(yōu)粒子進行狀態(tài)估計,省略了粒子重采樣的工作,降低了算法復雜度,在保證估計精度的前提下提升了粒子的多樣性。
圖6 HPPC測試下的電池SOC估計Fig.6 Estimation of battery state under HPPC test
圖7 DST工況下的電池SOC估計Fig.7 Estimation of battery state under DST