劉 淑 杰, 郝 昆 昆, 王 永, 鄧 威 威
( 大連理工大學 機械工程學院, 遼寧 大連 116024 )
當前環境污染和能源危機問題日益突顯,氣候變暖和溫室效應對全球環境也造成了巨大的影響,促進新型能源和儲能系統的研究是應對環境和能源危機一個較好的解決方案.在眾多儲能裝置中,鋰離子電池由于其應用廣泛,而且作為新能源電動汽車中的儲能裝置,被看作具有良好發展前景的一種儲能方式.與傳統類型的鉛酸、鎳氫電池相比較,鋰離子電池具有高能量密度和功率密度,循環使用壽命長以及自放電率極低、污染小等優點[1].電動汽車推廣使用對減少溫室氣體排放有著重要意義,電池包作為電動汽車的重要供能裝置,在汽車使用過程中的可靠性和安全性應予以保證,電池管理系統(battery management system,BMS)可以實現對電池包信息監測和狀態預測功能,防止電池包過充電過放電行為發生,保證電池使用過程中性能安全可靠,使其最佳能效得到發揮并延長使用壽命[2].
電池包在工作過程中可觀測的物理量僅有電壓、電流和溫度,而電池的一些關鍵指標如荷電狀態(state of charge,SOC)、功率狀態和健康狀態等信息則無法通過直接測量獲得,需要借助可觀測量和相應算法或模型來了解電池包的真實狀態.SOC基本定義是電池工作過程中剩余容量與電池額定容量百分比,是表征電池基本狀態信息的關鍵指標,其意義等同于燃油汽車中的燃油表[3].大量文獻研究電池SOC估計方法,其大致可以分為安時法、開路電壓法、模型法、阻抗法以及基于模糊邏輯和機器學習的聯合估計方法.安時法雖然簡單易實施,但是需要準確獲取電池的初始容量和充放電電流,當充放電時間較長時,累計誤差對最終估計結果造成的影響便難以忽略,此方法需要進行定期校正,因此安時法通常與開路電壓法結合使用[4-5].基于模型類的估計方法可分為電路模型法與電化學模型法[6-7],電路模型法可以分為SOC直接估計方法與基于自適應濾波器及觀測器的改進估計方法[8-12],直接進行SOC估計是一種開環方法,而基于濾波器和觀測器類的SOC估計方法是閉環方法,閉環方法能修正狀態估計過程中存在的偏差,對模型準確性以及測量信號精度要求不是非常嚴格;另一種模型方法是電化學模型方法,該方法能從本質上反映電池內部電化學行為與電池SOC及溫度之間的關系,無須電路模型方法中要借助查表方法來獲取不同SOC和溫度間的關系,但電化學模型方法的缺點是模型中含有大量偏微分方程,使算法計算量和模型復雜度要遠大于電路模型法.另一類常用的方法為模糊邏輯和機器學習算法,如模糊邏輯算法、神經網絡算法、基于模糊邏輯的神經網絡算法和支持向量機等機器學習類算法,這類方法的估計精度與模型訓練數據量及數據的準確性有較大關系[13-16].
電動汽車中電池包SOC估計常采用等效電路模型方法[17-18],等效電路模型根據電學原理用電子元器件近似模擬電池中的電化學物理量[19-20],建立相應的電路方程,推導出電路方程與所估計狀態量間的數學關系,是一種數學模型且計算量遠小于電化學模型.借助相應的電路模型,將SOC整合到電路方程中,根據可測量的電學量估計OCV(open circuit voltage,OCV),從而建立SOC與電池開路電壓OCV間關系.利用OCV對電池SOC進行估計,可靠的SOC-OCV映射關系和準確的OCV估算是電池SOC估計時需要考慮的兩個關鍵問題.Plett[20]應用擴展卡爾曼濾波(extended Kalman filter,EKF)方法提出了一種狀態和模型參數雙估計器,優化的參數包括OCV、歐姆內阻、庫侖效率和電池的容量等;He等[21]在Plett研究基礎上將遞歸最小二乘法與EKF結合應用于估計器中,對電池狀態和模型參數進行估計;El Mejdoubi等[22]假定OCV是一個隨時間緩慢變化的信號,建立電池動態數學模型,用EKF方法和李雅普諾夫觀測器進行OCV預測,但是此方法中模型觀測器參數很難調整,而EKF方法僅適用于高斯噪聲環境;Dang等[23-24]應用雙神經網絡擴散模型基于OCV進行SOC估計,一個神經網絡用于辨識電池模型參數,另一個神經網絡用于建立電池OCV和SOC的函數映射關系,之后又基于電池電學特性在文獻[24]中采用受控自回歸滑動平均模型估計電池OCV,運用BP神經網絡對SOC與OCV間的關系進行映射,但是此類方法在模型訓練階段需要大量數據;Chen等[25]采用粒子濾波(particle filter,PF)算法對一階等效電路模型中OCV進行估計,根據實驗中建立的SOC-OCV關系估計電池的SOC,雖然PF算法可用于求解非線性和非高斯噪聲條件下系統估計問題,但在迭代求解過程中存在粒子退化現象,當粒子退化嚴重時,最終的估算結果會產生較大誤差.針對PF算法進行SOC估計時存在的問題,本文分別采用改進的擴展粒子濾波(extended particle filter,EPF)和無跡粒子濾波(unscented particle filter,UPF)算法對電池SOC進行估計,首先建立電池模型并運用帶遺忘因子的遞歸最小二乘方法對模型中參數進行實時估計,將辨識后的參數代入系統方程中,分別以EKF和UKF作為EPF和UPF中的建議密度函數,對電池進行SOC估計.
電路模型通常將一個或多個并聯的電容-電阻(RC)網絡進行串聯,模擬電壓的緩慢變化過程,串聯歐姆電阻模擬電壓的快速變化過程,Zhang等[26]對RC個數與模型計算復雜度和估計誤差進行了研究,結果表明隨RC個數增加估算的精度會提高,但同時算法的運算時間也會增加.本文綜合考慮模型精度與算法復雜度,采用一階RC電路模型作為電池模型[27],如圖1所示.
圖1電路模型中包含一個歐姆內阻和一個RC網絡,UOCV為電池開路電壓;Rin為電池歐姆內阻,用于模擬充放電過程中輸出端電壓快速變化過程;Rp、Cp代表電池內部的極化內阻和極化電容,模擬工作過程中電池兩端電壓緩慢變化過程;Ut為鋰離子電池的輸出電壓;URin為電池歐姆內阻兩端有電流通過時產生的電壓;Up為電池內部并聯Rp、Cp網絡兩端的電壓,并規定放電時電流符號為負,充電時為正.根據電路學基本原理可得到電路模型的數學表達式如下:
(1)
Ut(t)=UOCV(t)-(URin(t)+Up(t))
(2)
根據SOC定義,其表達式可寫為
(3)
式中:η為電池庫侖效率,Qn代表電池額定容量,SOC(t0)表示t0時刻電池初始SOC值,I(t)表示電池工作過程中電流.
方程(1)進行整理后可得
(4)
方程(2)、(4)進行拉氏變換得到
Ut(s)-UOCV(s)=-(UR(s)+Up(s))=
(5)
(6)
令U(s)=I(s),Y(s)=Ut(s)-UOCV(s),得系統傳遞函數表達式:
(7)

(8)
式(8)中,T為離散后系統采樣步長,本研究中采樣間隔為1 s.
根據離散后的傳遞函數表達式(8),可得到輸出電壓Ut(k)、開路電壓UOCV(k)和電路電流I(t)間的數學關系式:
E(k)=a1E(k-1)+a2I(k)+a3I(k-1)
(9)
其中
(10)
方程(9)中,E(k)表示電池輸出電壓Ut(k)與開路電壓UOCV(k)間電壓差,UOCV(k)的獲取則是通過實驗建立的SOC-OCV曲線,如圖2通過查表法獲得的;方程(10)是方程(9)中各系數的數學表達式,其余各參數含義與方程(1)、(2)中相同.
如圖1中所示的一階Thevenin電路模型,該模型需要辨識的參數為Rin、Rp、Cp.室溫環境(25±1) ℃下,采用動態應力測試(dynamic stress test,DST)方法[28]對單體電池進行實驗室條件下動態充放電測試,使用變化電流激勵電池,用于模擬電池動態工作特性,實驗中采用的電池信息見表1,采用的DST放電策略見表2,在該放電策略下測得的電池兩端電壓、電流數據如圖3所示.

表2 DST工況測試策略

表1 實驗電池詳細參數
本文中采用小電流充放電方法對電池SOC與OCV特性進行研究,此方法一定程度上可以降低極化現象對電池端電壓的影響,還可以提高實驗效率[29].根據文獻[30]中的21點數據擬合方法,選取實驗中測得的21個SOC-OCV離散數據點,采用9階多項式對SOC-OCV間關系式進行擬合:
UOCV(k)=p1SOC9(k)+…+p9SOC(k)+p10
(11)
SOC-OCV擬合曲線結果如圖2所示,擬合后方程(11)各系數如表3所示.

表3 SOC-OCV多項式擬合系數
表4為SOC-OCV曲線擬合效果優劣的評定參數,誤差平方和越接近0,表明模型的擬合效果越好;決定系數取值范圍為[0 1],越接近1說明模型對數據的擬合效果越好;校正后決定系數對模型評價的效果與決定系數相同,取值范圍也是[0 1],該值越大模型的擬合效果越好;擬合標準差評價效果與誤差平方和相同,通常也是越小越好.從以上評價指標數值可以看出,方程(11)對SOC與OCV的關系有良好的擬合效果.

表4 SOC-OCV擬合曲線評定指標
為保證模型SOC估算時初值可靠,同時避免電池模型參數估計過程中舊數據累計造成下一次參數估計無法進行有效的修正情況,本文中模型參數辨識采用帶遺忘因子的最小二乘方法.此方法能夠通過引入遺忘因子減弱歷史數據累計對下次更新時參數權重的影響,利用新觀測數據對舊估計值進行修正.在進行參數估計時,將輸入數據定義為u(k),待辨識參數定義為θ(k),y(k)定義為輸出參數,利用帶遺忘因子的最小二乘方法與方程(9)、(10)對電路模型中參數Rin、Rp和Cp進行辨識,辨識結果如圖4所示.
動態參數辨識后需要對提出模型的精度進行驗證,將圖4中辨識后模型參數代入方程(2)中,得到模型估計下的輸出電壓值如圖5(a)所示,并將得到的估計電壓與DST工況下的電壓進行對比,得到兩者的誤差如圖5(b)所示.
從圖5(a)中可以看出僅在4C放電或2C充電時,模型的估計電壓誤差最大,但此類電流在一個循環周期中作用時間非常短,其余時刻均能實現對實際電壓良好估計,電壓的平均估計誤差僅為0.001 6 V,因此可對本文SOC估計方法驗證.
卡爾曼濾波(Kalman filter,KF)是一種線性系統和高斯噪聲條件下運用最小均方誤差原則進行系統動態估計的方法,實際應用中多數系統為非線性系統,常用處理方式是利用線性化方法將非線性問題轉化為近似線性問題進行次優求解運算.EKF是一種常用的非線性處理方法,當系統維數較高時,系統的觀測噪聲協方差陣和過程噪聲協方差陣容易出現非正定,會使濾波器發散;另一種近似非線性濾波方法是UKF,由于該方法非線性函數轉化過程中未忽略高階項,得到的估計結果精度要高于EKF,但是實際應用中的多數非線性系統,其過程噪聲和觀測噪聲并不服從高斯分布,所以KF及其擴展方法在非高斯分布的系統中并不適用.PF算法在求解非線性特性與非高斯條件下系統狀態估計問題時較為常用,它通過對系統概率密度函數采樣得到的集合進行預測與更新實現狀態估計.PF算法中的重要密度函數是先驗信息概率密度函數,如果測量精度沒有嚴格要求時,可以得到滿意的結果,但PF算法由于沒有考慮當前測量值,使得以先驗密度函數采樣獲得的樣本集合和以實際后驗概率密度采樣的粒子集合兩者之間產生嚴重偏差,同時重要性采樣中的權重方差也會隨時間變大,導致樣本中粒子的權重發生退化,在幾輪迭代后粒子集中部分粒子權重可能退化至很小,不僅浪費計算資源,同時采樣后的粒子集也不能真實表示粒子集合后驗概率密度的分布情況.
粒子退化是PF算法存在的一個嚴重問題,可以采用一些方法對其進行改進,常用的方法有增加采樣粒子數目、重采樣和選用合理建議密度函數.重采樣方法能夠減少粒子集合中權重較低的粒子,關注權重較高的粒子,然而這種方法會降低粒子的多樣性;而增加粒子數目抑制權重退化又會使算法計算時間大大增加.選擇合理的建議密度分布函數,通過重要性重采樣技術得到一組樣本點集“覆蓋”真實粒子狀態,便能保證采樣的有效性和結果的可靠性.本文從建議密度函數角度改進PF算法,分別以EKF、UKF作為改進濾波算法EPF和UPF的建議密度函數,與PF算法中以先驗信息密度函數作為重要密度函數不同,EKF算法能夠根據非線性問題的一階泰勒展開形式,結合最新量測值對后驗分布進行估計,并將近似后驗密度函數作為建議密度函數實現粒子更新;UKF相比EKF,在處理非線性問題時采用無跡變換處理一步預測中的均值和方差,結合量測值采用一系列樣本近似逼近后驗概率密度函數,避開了EKF方法中非線性系統一階泰勒展開而忽略高階項引起的誤差問題,并以得到的后驗概率密度函數作為建議密度函數對粒子進行更新,對電池SOC進行估計.
本研究中采用的EPF和UPF算法執行過程如下.
EPF算法執行步驟如下:
(1)初始化,從先驗分布中抽取初始化狀態:
(12)
(2)用EKF更新粒子:
(13)
(3)更新產生粒子:
(14)
(4)計算粒子權值:
(15)
(5)歸一化粒子權值:
(16)
(6)狀態估計:
(17)
(7)重采樣:
(18)
UPF算法執行步驟如下:

(2)k=1,2,…
①重要性采樣:i=1,2,…,N,使用UKF算法更新粒子.
時間更新:
(19)
測量更新:
(20)
③輸出融合結果:
(21)
系統離散處理后,得到電池模型的狀態方程和觀測方程,如式(22)和(23):
狀態方程
xk+1=f(xk,uk)+wk
(22)
觀測方程
yk+1=h(xk+1,uk+1)+vk+1
(23)
式(22)、(23)中,xk表示系統狀態向量,uk表示輸入向量,yk表示觀測向量.f(·)是狀態方程映射函數,h(·)是觀測方程映射函數,wk和vk分別模擬系統過程噪聲與系統觀測噪聲.
當SOC(t0)已知時,SOC(t)可由方程(3)計算得到,根據方程(1)、(2),系統狀態方程和相應的觀測方程可寫為式(24)~(27):
(24)
Yk+1=(1 -1 -I(k+1))·
(25)
(26)
(27)
式中:Δt是數據采樣間隔;Qn為電池的額定容量;wSOCk、wUp,k、wRin,k為過程噪聲,vk+1為觀測噪聲,過程噪聲協方差為(10-410-510-5),觀測噪聲協方差為10-4;其余模型參數定義與前述相同.
為驗證研究中所用兩種改進后粒子濾波算法的有效性,本文采用第1章中的DST工況數據對電池的SOC進行估計,實驗中電池電流、電壓數據如圖3所示.根據電池模型狀態方程和觀測方程,將辨識后的參數代入模型中,按照EPF、UPF算法流程執行,可以得到DST工況下,基于EKF、UKF、PF、EPF和UPF共5種算法的電池SOC估計值,如圖6所示.
從圖6曲線可以看出,SOC估計所用的5種算法中,PF算法及其改進的EPF和UPF算法下SOC估計值波動程度要小于EKF和UKF算法,對參考SOC的追蹤能力好于KF類算法.圖7為5種濾波算法下的SOC與參考SOC兩者間偏差D對比圖,由圖7可知,EKF、UKF和PF濾波算法中,PF算法估計偏差曲線波動最小,EKF算法估計偏差曲線波動最大,而UKF算法估計效果介于EKF和PF算法之間.PF、EPF和UPF算法SOC估計偏差對比結果表明,改進后EPF與UPF算法估計的結果要好于PF算法下的估計結果.以UKF為建議密度函數的UPF算法SOC估計偏差明顯小于以EKF為建議密度函數的EPF算法的估計偏差,并且UPF方法的偏差波動范圍較小,穩定性好于EPF.圖8是5種濾波算法估計誤差e和估計誤差統計特征量f分析,從圖8(a)中可以看出SOC的估計誤差與圖7中偏差的分析結論相似,EPF和UPF兩種改進后的PF算法在進行估計時穩定性高于EKF、UKF和PF 3種傳統濾波算法,從兩種改進后的算法估計誤差曲線看出,UPF算法估計誤差和誤差曲線波動程度要小于EPF算法.圖8(b)是5種算法SOC估計誤差結果的統計特征量,分別是SOC估計誤差的均值、標準差和最大估計誤差,采用EKF、UKF和PF算法估計情況下,平均誤差分別為3.26%、2.19%和1.36%,標準差為2.14、1.68和1.35,表明PF算法的估計效果優于EKF和UKF;而PF、EPF和UPF 3種算法下估計誤差結果的均值、標準差分別為1.36%、1.09%、0.71%和1.35、1.25、0.79,EPF和UPF的估計精度相對于PF算法分別提高19.8%、47.8%,說明以UKF為建議密度函數進行重采樣的UPF算法SOC估計效果優于以EKF為建議密度函數進行重采樣的EPF估計效果,兩者與PF算法相比在一定程度上抑制了粒子退化現象.
本文選擇Thevenin一階等效電路模型作為電池研究模型,提出了基于EPF、UPF算法的動力電池SOC估計方法.在實驗室DST數據條件下,采用帶遺忘因子的最小二乘方法辨識電池模型中未知參數,將辨識后的參數代入模型狀態方程和觀測方程,結合改進后的EPF和UPF算法,對電池的SOC進行估計.結果表明,以UKF為建議密度函數進行重采樣后的UPF算法得到的SOC估計誤差均值為0.71%,標準差為0.79,低于以EKF為建議密度函數重采樣的EPF算法下的均值1.09%和標準差1.25;與PF算法相比,UPF算法通過選擇合理的建議密度函數抑制了PF算法中粒子權重退化的現象,提高了SOC估計的精度,比以EKF為建議密度函數的EPF方法在SOC估計中更有意義.