喬家璐,王順利,于春梅,史衛(wèi)豪,楊 瀟
(西南科技大學信息工程學院,四川綿陽 621010)
在汽車工業(yè)的發(fā)展過程中,純電動汽車以其低噪音、低污染、結構簡單、維修方便等優(yōu)點逐漸成為新能源汽車發(fā)展的主要方向[1-2],鋰離子電池以其能量密度大、重量輕、無記憶效應、充放電電壓穩(wěn)定等優(yōu)點成為電動汽車電源的最佳選擇[3-4]。隨著鋰電池的應用范圍不斷擴大,電池狀態(tài)監(jiān)測和安全問題成為了亟待解決的難題[5]。作為車輛系統(tǒng)和電池管理系統(tǒng)的一個重要參數(shù),電池荷電狀態(tài)(state-ofcharge,SOC)的精確在線實時估計不僅可以保護電池[6],防止過充電和過放電現(xiàn)象的發(fā)生[7-9],延長其使用壽命[10],還可以為用戶提供更直觀的續(xù)航里程和更好的駕駛體驗,因此研究準確高效的SOC估算方法具有重要意義[11-13]。
常用的SOC 估計算法有直接測量法、數(shù)據(jù)驅動法和基于模型的方法[14-15]。直接測量通常包括開路電壓法和安時積分法[16]。數(shù)據(jù)驅動是在機器學習和人工智能算法的基礎上發(fā)展起來的,它需要大量的數(shù)據(jù)和高昂的計算成本[17]。基于模型的方法通過建立等效電路模型來模擬鋰離子電池內部的動態(tài)反應過程[18],并結合控制理論中的濾波算法對SOC進行估計,常用的有擴展卡爾曼濾波(extended Kalman filtering,EKF)算法[19-20]。但鋰電池內部結構復雜,呈強烈非線性,傳統(tǒng)算法難以實現(xiàn)SOC的高精度估計[21]。經(jīng)過該領域諸多學者的不斷開拓與創(chuàng)新,提出一種擴展卡爾曼濾波與自適應無跡卡爾曼濾波相結合(extended Kalman filtering-adaptive unscented Kalman filtering,EKF-AUKF)的算法來估算SOC,獲得了較高的精度[22]。提出了一種AUKFBP 網(wǎng)絡的估算方法,避免了UKF 過于依賴電池模型的精度和BP 神經(jīng)網(wǎng)絡收斂速度慢的缺點,又保留了UKF魯棒性高和BP神經(jīng)網(wǎng)絡非線性特性強的優(yōu)點[23]。但UT 變換中Cholesky 分解矩陣的半正定性無法保證,極有可能導致濾波器精度降低、甚至發(fā)散,不適合實際應用。
為了更精準表征電池的動態(tài)特性和進行電池狀態(tài)的估算,本文提出一種加權多新息自適應擴展卡爾曼濾波(multiple weighted-adaptive extended Kalman filtering,MW-AEKF)方法對電池SOC 進行估計,引入了二階RC 等效電路模型,采用帶遺忘因子的遞推最小二乘法(forgetting factor-recursive least square,F(xiàn)FRLS)在線辨識電池參數(shù)。為驗證算法可行性,在自定義動態(tài)測試應力(dynamic stress test,DST)工況和北京公交動態(tài)測試(Beijing bus dynamic stress test,BBDST)工況下分別進行實驗驗證并與其他算法進行對比。
綜合考慮建模的精準性和計算的簡便性,采用二階RC等效電路模型,如圖1所示。
圖1 二階RC等效電路模型Fig.1 Second-order RC equivalent circuit model
在圖1中,UOC表示開路電壓;UL表示端電壓;R0表示歐姆內阻。其中R1和R2分別表示電化學極化電阻和濃差極化電阻,C1和C2分別表示電化學極化電容和濃差極化電容,其電壓和電流的表達式如式(1)所示。
選擇[SOCU1U2]T作為狀態(tài)變量,對等效電路進行離散化處理,得到其離散狀態(tài)的狀態(tài)空間表達式如式(2)所示。
式中,?t為采樣時間間隔;T為時間常數(shù),T1=R1C1,τ2=R2C2;wk為狀態(tài)誤差,vk為測量誤差,分別是協(xié)方差矩陣Q和R的零均值白噪聲;QN為電池的額定容量;η為庫侖效率,設為0.98。
遞推最小二乘法(recursive least square,RLS)通過對系統(tǒng)參數(shù)的不斷修正和更新,能夠準確捕捉系統(tǒng)的實時特性,待辨識模型的離散方程和相應的差分方程如式(3)所示
式中,ai和bi是系統(tǒng)待辨識參數(shù)向量;y(k)為系統(tǒng)輸出的k時刻的觀測值;U(k)為k時刻的系統(tǒng)輸入;v(k)為平均值為0的隨機噪聲。
為了提高RLS算法的在線辨識能力,在原有算法中增加了遺忘因子λ,稱為FFRLS算法。遺忘因子的作用是根據(jù)不同時刻數(shù)據(jù)包含的信息量來對其進行最合理的分配和利用。引入遺忘因子λ(0<λ<1)后,改進的遞推方程如式(4)所示。
設時間常數(shù)τ1=R1C1,τ2=R2C2,a=τ1τ2,b=τ1+τ2,c=R0+R1+R2,d=R1τ2+R2τ1+R0(τ1+τ2)。將s=[x(k)-x(k-1)]/T代入式(5)進行離散化,式中T為采樣時間,設定為0.1 s,將式(5)離散化后為了方便參數(shù)辨識,將k1~k5代替實際參數(shù)進行抽象化表達,如式(6)所示。
式中,待辨識的參數(shù)向量為θ=(k1,k2,k3,k4,k5)T。在線參數(shù)辨識完成后,實際電池參數(shù)通過式(7)獲得。
為了提高EKF在非線性系統(tǒng)中的適應性,通過利用多個時刻數(shù)據(jù)信息的方式將算法中的殘差標量擴展為新息矩陣,建立了基于新息的辨識理論和方法。
基于多新息理論,將新息e(k)=UL(k)?Ckx(k|k?1)擴展到新息矩陣E(p,k),如式(8)第1部分所示。為了進一步提高估算精度且適應計算的兼容性,將擴展卡爾曼濾波增益K(k)擴展為濾波增益矩陣K(p,k),如式(8)第2部分所示。
將新息矩陣E(p,k)和濾波增益矩陣K(p,k)引入標準EKF 算法后,狀態(tài)更新方程如式(9)所示。其中p為時間步長,表示k時刻狀態(tài)的估算需要利用p個時刻的新息值與濾波增益值。
一般認為,由于矩陣中不同時刻的新息e(k)的所處時刻不同,其中包含的信息量也不同,為不同時刻的新息配置不同的權重因子,如式(10)所示
式中,p為新息數(shù)據(jù)寬度,即時間步長;a為權重的配置系數(shù),其值設為1.98。完成配置后的加權多新息矩陣和狀態(tài)更新方程如式(11)所示
綜上所述,EKF中加權多新息的計算原理和具體實現(xiàn)流程如圖2所示
圖2 加權多新息計算Fig.2 principle of multiple weighted calculation
采用AEKF算法的本質是通過測量過程中的誤差協(xié)方差來調整SOC 的當前值以實現(xiàn)更精確的估算。首先,對系統(tǒng)進行初始化,設定初始狀態(tài)的估計值x0和誤差協(xié)方差矩陣P0如式(12)所示
然后,根據(jù)k?1時刻的狀態(tài)和誤差協(xié)方差矩陣來對k時刻的狀態(tài)和誤差協(xié)方差矩陣進行更新,計算過程如式(13)所示
式中,C為系統(tǒng)觀測矩陣,Rk為測量噪聲vk的方差。測量數(shù)據(jù)用于對下一時刻狀態(tài)估計和誤差協(xié)方差進行持續(xù)更新,表達式如式(15)所示
式中,D為驅動預測系統(tǒng)觀測量,rk為測量噪聲vk的均值,E為單位矩陣。最后,利用測量數(shù)據(jù)對噪聲的均值和方差進行在線估計,從而實現(xiàn)對系統(tǒng)噪聲和過程噪聲的均值和誤差協(xié)方差的迭代更新和對SOC 估計的自適應調節(jié),計算方程如式(16)所示
式中,G=(ΓTΓ)ΓT,dk?1=(1?b)/(1?bk)。b為遺忘因子且0
圖3 加權多新息AEKF估算SOC總體流程Fig.3 Total process of MW-AEKF SOC estimation
為了驗證本文所提出算法的運行效果,在DST、BBDST 這些不同的復雜工況下進行了實驗驗證,并與其他算法進行對比驗證。
實驗選取德力普電池科技有限公司生產的額定容量為50 A·h的鋰離子鋁殼電池,深圳亞科源科技有限公司提供的BTS200-100-104電池測試設備作為實驗平臺。實驗中使用的鋰離子電池如圖4(a)所示,能夠進行充放電并實時監(jiān)測和記錄電流、電壓狀態(tài)的電池測試設備如圖4(b)所示。
圖4 實驗設備Fig.4 Experimental equipment
通過實驗可以得到OCV-SOC曲線,實驗過程為:將電池充滿電,然后恒流放電至特定的SOC值,靜置一定時間后等待電池達到穩(wěn)定狀態(tài)。此時,測量與該SOC值相對應的OCV值。重復該過程,將電池每次以額定電量的10%依次進行放電,直至電池放電到0 SOC,以獲得放電OCV-SOC曲線。由圖5(a)可知,SOC 為0.8 時,OCV 為3.9443 V??紤]到電池的遲滯效應,將電池以同樣的方式進行充電實驗。一般情況下,充放電的OCV-SOC 曲線并不完全一致,而是會形成一段兩端有間隙的帶狀遲滯結構,如圖5(b)所示。UOC,1代表充電過程曲線,UOC,2代表放電過程曲線,通過取平均的方式得到更加準確的OCV。
圖5 電池OCV的遲滯效應曲線Fig.5 Hysteresis characteristic curve of battery OCV
采用HPPC 工況下獲取的實驗數(shù)據(jù)對FFRLS算法進行驗證,以獲取鋰離子電池的內部參數(shù)在不同時刻的動態(tài)變化情況,并將它們作為模型的輸入得到模擬電壓后與測量電壓作對比以分析參數(shù)辨識精度。實驗結果如圖6所示。
圖6 HPPC工況下參數(shù)辨識結果Fig.6 Parameter identification results under HPPC working condition
圖6(a)中,U1表示測量電壓值,U2表示FFRLS 在線參數(shù)辨識對應的模擬電壓值。圖6(b)中,Err表示模擬電壓誤差曲線,可以看出,在每次循環(huán)中,電流突變瞬間也即電池充放電部分的模擬誤差相對較大,但仍可控制在3.46%以內,這與鋰電池內部劇烈的化學反應有關,在其余階段的模擬效果都十分良好。由實驗結果可知,通過FFRLS算法可獲得較高精度的在線參數(shù)辨識結果,以應用于后續(xù)的SOC估算中。
為了驗證所提出算法的可行性,采用自定義DST 工況的實驗數(shù)據(jù)進行驗證。DST 實驗步驟如下:首先,電池以1 C恒定電流進行充電,直至達到上限截止電壓4.2 V。充電完成后,將電池擱置30 min以穩(wěn)定電壓。再對其以0.5 C速率進行恒流放電和恒流充電4 min,然后以1 C 速率進行恒流放電4 min。循環(huán)這3 個步驟直至放電結束。新息數(shù)據(jù)寬度p要根據(jù)多次調試來確定最佳取值,比較不同取值下的估算效果,該工況下令p=4,SOC估算初始值設置為0.95,EKF、AEKF 和加權多新息AEKF在DST工況下的仿真結果如圖7所示。
圖7 DST工況下SOC估算結果Fig.7 SOC estimation results under DST operating condition
在圖7(a)中,SOC1表示實際SOC值,SOC2表示基于EKF算法的SOC估計值,SOC3表示基于AEKF算法的SOC估計值,SOC4表示基于加權多新息AEKF算法的SOC估計值。圖7(b)中的Err1~Err3 分別表示與圖7(a)中SOC2~SOC4 相對應的估算誤差。在放電后期,電池SOC 估算值波動較大,產生誤差的累積,這與電池自身內部化學反應有關,但Err3 明顯要比Err1 和Err2 具有更好的收斂性,能較好地跟蹤真實值,誤差可控制在1.94%以內,EKF誤差則高達3.89%,且誤差有明顯增大趨勢。在DST 工況下,通過平均絕對誤差(MAE,mean absolute error)和均方根誤差(RMSE,rootmean-square error)對3 種算法的估算結果進行對比,見表1。
表1 DST工況下不同算法SOC的估算比較Table 1 Comparison of experimental results of different algorithms under DST working condition
BBDST工況來自北京公交動態(tài)測試的真實數(shù)據(jù)采集,包含汽車在啟動、滑行、加速、急加速等多種操作下的數(shù)據(jù),具有真實性和動態(tài)性,而大功率鋰電池的實際應用工況是復雜多變的,采用BBDST實驗數(shù)據(jù)來對算法進行可行性驗證會更有說服力。完整BBDST工況的電壓狀態(tài)變化如圖8所示。
圖8 BBDST工況Fig.8 BBDST working condition
該工況下令新息數(shù)據(jù)寬度p=4,SOC估算初始值設置為0.95,EKF、AEKF 和加權多新息AEKF在BBDST工況下的仿真結果如圖9所示。
在圖9(a)中,SOC1 表示實際SOC 值,SOC2表示基于EKF 算法的SOC 估計值,SOC3 表示基于AEKF算法的SOC估計值,SOC4表示基于加權多新息AEKF算法的SOC估計值。圖9(b)中的Err1~Err3 分別表示與圖9(a)中SOC2~SOC4 相對應的估算誤差,在放電前期,3 條誤差曲線重合度較高,Err3略優(yōu)于前兩種算法。在放電后期,EKF估算結果產生較大偏差,誤差累積現(xiàn)象明顯,高達4.19%。AEKF 的估算精度明顯優(yōu)于EKF,后期穩(wěn)定性有所提高,誤差最大可至2.49%。加權多新息AEKF算法具有最佳性能,在完整實驗過程中模擬值偏離真實值始終較小,且誤差始終呈收斂趨勢,末期在0附近上下波動,在放電末期電池內部化學反應強烈的情況下,誤差最高也僅為1.17%。在BBDST 工況下,通過MAE 和RMSE 對3 種算法的估算結果進行對比,見表2。
圖9 BBDST工況下SOC估算結果Fig.9 SOC estimation results under BBDST operating condition
表2 BBDST工況下不同算法SOC的估算比較Table 2 Comparison of experimental results of different algorithms under BBDST working condition
通過在上述兩種復雜工況下對算法的實驗驗證可知,相比于傳統(tǒng)EKF,AEKF增加了自適應調節(jié)效果,能減少誤差的積累,在一定程度上增強算法的跟蹤能力。加權多新息AEKF極大克服了傳統(tǒng)算法的后期易發(fā)散問題,大大提高了電池SOC 估算精度和算法穩(wěn)定性。通過算法間在MAE 和RMSE上的比較可知,加權多新息AEKF的估算效果在整體上偏離真實值較小,離散程度小。
大功率鋰離子電池荷電狀態(tài)的精確估計對新能源汽車的應用和發(fā)展具有重要意義。本文采用二階RC等效模型來表征電池的動態(tài)特性,采用FFRLS進行在線參數(shù)辨識,得出電池內部參數(shù)和SOC 間的動態(tài)變化關系。為了提高SOC 估算精度,本文創(chuàng)新性地提出了一種加權多新息AEKF方法,該算法充分利用多個時刻的殘差信息并根據(jù)包含信息量的不同為其配置相應權值,且具有良好的自適應調節(jié)和校正功能。利用DST和BBDST兩種復雜工況下實驗數(shù)據(jù)進行驗證,結果表明,該算法的估算均方根誤差可分別控制在1.31%和1.23%,與傳統(tǒng)算法相比,估算精度和穩(wěn)定性都有明顯提升。本文的研究內容對鋰電池的狀態(tài)監(jiān)測和新能源汽車的長遠發(fā)展具有積極意義。