吳蘭花, 楊秀芝, 鄭明魁, 蘇凱雄
(福州大學(xué)物理與信息工程學(xué)院, 福建 福州 350116)
電池SOC的定義為: 電池剩余容量與標(biāo)稱容量的比值[1]. 其準(zhǔn)確估計能有效提高電池的利用率還能起到保護(hù)電池的作用. 鋰電池是一個復(fù)雜的非線性的系統(tǒng), 而電池SOC不僅無法直接測量得到, 而且受到諸如放電倍率、 工作溫度、 循環(huán)壽命、 自放電等多種因素的影響. 因此, 鋰電池SOC的準(zhǔn)確估計是電池管理系統(tǒng)的重點(diǎn)與難點(diǎn). 為此, 大量的學(xué)者對其進(jìn)行了研究, 并提出多種估計方法, 如安時積分法[2]、 神經(jīng)網(wǎng)絡(luò)法[3]、 卡爾曼濾波法[4-6]、 以及粒子濾波法[7-9], 等. 其中, 粒子濾波(PF)算法可以彌補(bǔ)上述卡爾曼濾波算法的不足. 文獻(xiàn)[7]利用PF算法實(shí)現(xiàn)鋰電池SOC 與SOH的聯(lián)合估計; 文獻(xiàn)[8]提出一種基于溫度補(bǔ)償?shù)匿囯姵啬P停?然后應(yīng)用雙重PF算法實(shí)現(xiàn)SOC和漂移電流的同步估計; 文獻(xiàn)[9]采用PF算法實(shí)現(xiàn)磷酸鐵鋰電池SOC估計, 結(jié)果表明PF算法對SOC 估計具有一定的適用性, 而且相較于EKF可以獲得更加準(zhǔn)確的估計. PF算法通過重要性重采樣技術(shù)將注意力集中在權(quán)值較大的粒子上, 減小權(quán)值較小的粒子數(shù). 但是, 較大權(quán)值的粒子被多次選擇, 采樣結(jié)果包含了許多重復(fù)點(diǎn), 也會損失樣本粒子多樣性.
為了有效解決PF算法中粒子多樣性喪失的問題, 本研究以某公司提供的磷酸鐵鋰電池放電數(shù)據(jù)為研究基礎(chǔ), 提出了基于改進(jìn)粒子濾波的鋰電池SOC估計算法. 在PF算法重采樣之前增加基于BP神經(jīng)網(wǎng)絡(luò)的權(quán)值調(diào)整過程, 通過增大位于概率分布尾部的粒子權(quán)值, 提高樣本粒子的多樣性, 減小SOC估計誤差.
實(shí)現(xiàn)電池SOC估計之前, 首先要建立合適的電池狀態(tài)空間模型. 將SOC作為電池模型中的狀態(tài)變量, 根據(jù)安時積分法中SOC 的計算原理并離散化得到鋰電池的狀態(tài)方程, 如下式所示
(1)
其中:xk為k時刻電池SOC狀態(tài)值;ik表示k時刻電池放電電流;Cn為電池的標(biāo)稱容量; 電池的庫倫效率為ηc=1; Δt為采樣間隔;wk表示系統(tǒng)的過程噪聲且wk~(0,Qw).
常見的電池簡化電化學(xué)模型有Shepherd模型、 Unnewehr統(tǒng)一模型、 Nernst模型, 但這三種模型都只在局部較好地匹配電池SOC與開路電壓的特性. 而由這三個模型組合而成的組合模型(CM)[10]能在鋰電池整個充放電區(qū)間內(nèi)提供較好擬合度. 因此, 本研究選擇CM模型作為鋰電池系統(tǒng)模型的觀測方程, 其形式如下式所示,
(2)
其中:yk為k時刻電池端電壓;E0表示電池SOC=100%時的電動勢;R為電池內(nèi)阻;K1、K2、K3、K4為模型匹配系數(shù);vk表示系統(tǒng)觀測噪聲且vk~(0,Qv).
式(1)與式(2)共同構(gòu)成鋰電池的非線性狀態(tài)空間模型. 式(2)的若干未知參數(shù), 可根據(jù)一系列輸入輸出三元組{yk,ik,xk}, 采用最小二乘估計法實(shí)現(xiàn)參數(shù)的離線辨識.
已知鋰電池非線性系統(tǒng)狀態(tài)空間模型如式(1)、 (2)所示, PF算法[8]可以歸納為以下幾個步驟:
本研究提出的基于改進(jìn)粒子濾波的SOC估計算法, 在PF算法重采樣之前增加了權(quán)值調(diào)整過程, 利用BP 神經(jīng)網(wǎng)絡(luò)來調(diào)整位于概率尾部的低權(quán)值粒子, 使其進(jìn)入高權(quán)值區(qū)域, 同時部分高權(quán)值的粒子在一定情況下會分裂成兩個較小權(quán)值粒子, 從而達(dá)到提高樣本粒子多樣性的目的.
圖1 粒子濾波重采樣示意圖
本算法在重采樣之前增加了兩個步驟: 第一步是權(quán)值分裂. 在計算得到粒子權(quán)值之后, 設(shè)定一個閾值并以此為界將權(quán)值較大的q粒子分裂成兩個權(quán)值減半的粒子. 為保證粒子總數(shù)不變, 舍棄權(quán)值最小的q個粒子. 第二步是采用BP神經(jīng)網(wǎng)絡(luò)調(diào)整那些低權(quán)值粒子. 首先進(jìn)行網(wǎng)絡(luò)訓(xùn)練, 將粒子的狀態(tài)值作為神經(jīng)網(wǎng)絡(luò)的輸入, 該時刻的系統(tǒng)量測值作為神經(jīng)網(wǎng)絡(luò)的教師信號, 通過神經(jīng)網(wǎng)絡(luò)多次鍛煉, 將誤差反傳, 得到具有系統(tǒng)量測方程功能的神經(jīng)網(wǎng)絡(luò)模型. 然后將需要調(diào)整的小權(quán)值粒子的狀態(tài)值作為神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù), 并將網(wǎng)絡(luò)的輸出值作用于權(quán)值公式得到粒子的新權(quán)值. 通過這個步驟可以使粒子的平均值更接近于真實(shí)狀態(tài), 減小粒子采樣的方差, 達(dá)到提高粒子多樣性, 改善濾波性能的目的.
圖3 本算法流程圖Fig.3 Algorithm processes
圖3是本研究提出的改進(jìn)算法的實(shí)現(xiàn)流程圖, 算法流程分析如下.
步驟二: 對于k=1, 2, …,N.
2) 粒子權(quán)值更新.
3)權(quán)值分裂. 將粒子權(quán)值降序排列, 以某閾值為界, 將權(quán)值較大的q個粒子分裂成兩個權(quán)值減半的粒子, 并舍棄粒子矩陣中權(quán)值靠后的q個粒子.
在采集了大量實(shí)測電池數(shù)據(jù)的基礎(chǔ)上, 實(shí)現(xiàn)本算法以及文獻(xiàn)[9]所述PF算法進(jìn)行SOC預(yù)測, 并將兩種算法的預(yù)測結(jié)果與SOC實(shí)測值相比較. 由于本研究的鋰電池是作通信領(lǐng)域備用電源使用的磷酸鐵鋰電池, 其運(yùn)行環(huán)境溫度被控制在較為穩(wěn)定的狀態(tài). 因此, 選取的實(shí)驗數(shù)據(jù)為某公司提供的磷酸鐵鋰電池室溫(25 ℃)工作條件下, 放電倍率(放電倍率等于電池額定容量的倍數(shù))分別為1C、 0.5C、 0.2C三組放電測試數(shù)據(jù). 每組數(shù)據(jù)的采樣間隔都是60 s, 取粒子數(shù)N=200, 狀態(tài)噪聲方差Qw=1, 觀測噪聲方差Qv=10. 本實(shí)驗使用SOC估計相對誤差(相對誤差=估計值-實(shí)測值)的絕對值來刻畫算法的估計性能. 經(jīng)過多次測試并調(diào)整得到的SOC估計結(jié)果分別如圖4~6所示.
圖4 1C放電情況下的SOC估計結(jié)果Fig.4 SOC estimate results under 1C discharge
圖5 0.5C放電情況下的SOC估計結(jié)果Fig.5 SOC estimate results under 0.5C discharge
圖6 0.2C放電情況下的SOC估計結(jié)果Fig.6 SOC estimate results under 0.2C discharge
圖4 顯示了電池以1C放電倍率恒流放電的條件下, 本算法及PF算法的估計情況. 其中, 圖4(a)為一個完整放電區(qū)間內(nèi), SOC估計值與實(shí)測值的對比圖. 從圖中可以看到用算法得到的SOC 估計值曲線與實(shí)測值非常相近, 說明PF 算法和本算法都能對電池SOC 做出較好的估計; 圖4(b)展示了算法估計結(jié)果的局部細(xì)節(jié), 可以看到本算法的估計值更加接近實(shí)測值, 說明相比于PF 算法, 本算法可以獲得更高的估計精度; 兩種算法的誤差如圖4(c)所示, 從圖中可以看到, 本算法的估計誤差小于PF 算法, 進(jìn)一步說明了本算法的估計性能優(yōu)于PF算法.
在0.5C恒流放電的情況下, PF 算法及本算法的估計情況如圖5 所示. 圖5(a)顯示了兩種算法的整體估計性能, 圖中本算法和PF算法都能較好實(shí)現(xiàn)SOC準(zhǔn)確估計, 在電池放電末期由于電池遲滯特性的作用, 算法的估計誤差增大; 從圖5(b)中可以看到, 本算法的估計值更加接近實(shí)測值, 而且兩種算法的估計誤差總體呈現(xiàn)先減小后增大的趨勢, 這是因為在算法估計初始階段, 粒子存在初始誤差, 隨著多次遞推計算, 這種誤差逐漸縮小, 算法估計值快速收斂于實(shí)測值. 而隨著放電時間的增加, 尤其是在電池放電后期, 電池的遲滯特性顯著, 遲滯特性成為影響SOC估計精度的主要因素. 進(jìn)一步觀察兩種算法的估計誤差可以看到: 在放電初期, PF算法的誤差小于本算法, 但是這段時間很短, 只占整個放電周期的15%左右. 隨著放電時間的增加, 本研究算法很快就體現(xiàn)出優(yōu)勢, 粒子權(quán)值調(diào)整過程有效地提高了粒子多樣性, 減小了粒子采樣方差, 從而提高了SOC估計精度, 使得算法的估計誤差曲線小于PF算法. 因此, 相比于PF算法, 雖然在放電初期本算法的誤差收斂速度沒有PF算法快, 但從電池的整體放電情況來看, 絕大部分時間里, 本算法的估計誤差都小于PF算法, 所獲得的估計曲線更加接近SOC真實(shí)值, 估計性能更好.
為了驗證電池在小倍率放電情況下, 算法的SOC估計特性, 本研究進(jìn)一步對0.2C放電倍率下的電池SOC 進(jìn)行估計, 測試結(jié)果如圖6所示. 從圖6 中可以發(fā)現(xiàn), 在這種放電情況下算法的估計性能結(jié)果與圖5類似. 從整體來看, 兩種算法都能較為準(zhǔn)確地實(shí)現(xiàn)SOC估計, 隨著放電時間的增加, 尤其是放電末期, 由于電池遲滯作用的影響, 算法估計誤差總體呈現(xiàn)先減小后增大的趨勢. 在放電初期的短時間內(nèi), 本算法對粒子初始誤差具有負(fù)作用, PF算法表現(xiàn)出更好的初始誤差收斂效果. 但隨著放電時間的增加, 在絕大多部分的放電時間內(nèi), 本算法得到的估計誤差均小于PF算法, 所獲得的SOC估計值更加接近真實(shí)值, 本算法具有更好的估計性能.
為了更直觀地對比算法的SOC估計性能, 從統(tǒng)計學(xué)角度出發(fā), 分別計算了兩種算法的均方根誤差及最大絕對誤差. SOC估計的均方根誤差(RMSE)定義為:
表1濾波性能
Tab.1Filterperformance(%)
算法1C放電MAERMSE0.5C放電MAERMSE0.2C放電MAERMSEPF算法[9]1.5681.3524.02212.36735.20362.8786本算法1.12150.860133.52211.99774.70972.4932
由表1知, 在不同放電倍率下, 本算法的RMSE比PF算法的SOC估計RMSE均有不同程度的改善. 繼續(xù)對比三種放電情況下SOC估計的MAE可以看到, 在相同條件下本算法得到的MAE也均小于PF算法, 進(jìn)一步說明了本算法具有更優(yōu)異的SOC估計性能. 結(jié)合表中統(tǒng)計值還可以看出, 不同放電倍率情況下本算法的性能改善的程度有所不同, 大倍率放電時得到的統(tǒng)計值較小, 本算法的性能改善程度也更高. 根據(jù)表1的數(shù)值對比結(jié)果可以看出, 本算法在SOC估計的RMSE和MAE兩方面都有顯著的改善, 進(jìn)一步驗證了本算法比PF算法具有更好SOC估計性能.
針對SOC估計中PF算法引入重采樣技術(shù)后權(quán)值較大的粒子會被多次采樣, 粒子多樣性喪失的問題. 本研究在建立鋰電池狀態(tài)空間模型后, 提出一種基于改進(jìn)粒子濾波的鋰電池SOC估計算法. 本算法在PF算法的基礎(chǔ)上, 將BP神經(jīng)網(wǎng)絡(luò)引入到PF算法的權(quán)值更新過程中, 增大位于概率分布尾部的粒子權(quán)值, 使其進(jìn)入高權(quán)值區(qū)域, 減小粒子采樣方差, 提高粒子的多樣性. 結(jié)果表明, 從整個放電過程來看, 本算法的SOC估計更加接近真實(shí)值, 大部分情況下其估計誤差也明顯小于PF算法. 結(jié)合計算所得的誤差數(shù)值結(jié)果, 本算法在SOC估計的RMSE和MAE兩方面都有顯著的改善. 因此, 與PF算法相比, 本算法具有更好的SOC估計性能.
參考文獻(xiàn):
[1] PILLER S, PERRIN M, JOSSEN A. Methods for state-of-charge determination and their applications[J]. Journal of Power Sources, 2001, 96(1): 113-120.
[2] 林成濤, 王軍平, 陳全世. 電動汽車SOC估計方法原理與應(yīng)用[J]. 電池, 2004, 34(5): 376-378.
[3] WEIGERT T, TIAN Q, LIAN K. State-of-charge prediction of batteries and battery-supercapacitor hybrids using artificial neural networks[J]. Journal of Power Sources, 2011, 196(8): 4061-4066.
[4] PLETT G L. Extended kalman filtering for battery management systems of LiPB-based HEV battery packs: part 1. background[J]. Journal of Power Sources, 2004, 134(2): 252-261.
[5] CHARKHGARD M, FARROKHI M. State-of-charge estimation for lithium-ion batteries using neural networks and EKF[J]. IEEE Transactions on Industrial Electronics, 2010, 57(12): 4178-4187.
[6] 何耀, 劉興濤, 陳立, 等. 基于無跡卡爾曼粒子濾波算法的動力鋰電池SOC估計[C]// 第14屆中國系統(tǒng)仿真技術(shù)及其應(yīng)用學(xué)術(shù)年會. 安徽: 中國科學(xué)技術(shù)大學(xué)出版社, 2012: 884-888.
[7] SCHWUNK S, ARMBRUSTER N, STRAUB S,etal. Particle filter for state of charge and state of health estimation for lithium-iron phosphate batteries[J]. Journal of Power Sources, 2013, 239(10): 705-710.
[8] LIU X, CHEN Z, ZHANG C,etal. A novel temperature-compensated model for power Li-ion batteries with dual-particle-filter state of charge estimation[J]. Applied Energy, 2014, 123(3): 263-272.
[9] WANG Y, ZHANG C, CHEN Z. A method for joint estimation of state-of-charge and available energy of LiFePO4, batteries[J]. Applied Energy, 2014, 135(C): 81-87.
[10] PLETT G L. Extended kalman filtering for battery management systems of LiPB-based HEV battery packs: part 2. modeling and identification[J]. Journal of Power Sources, 2004, 134(2): 262-276.
[11] QIN W, PENG Q. An improved particle filter algorithm based on neural network for visual tracking[C]//International Conference on Communications, Circuits and Systems. [S.l.]: IEEE, 2007: 765-768.