程江洲,李君豪,唐 陽,謝詩雨,王勁峰
(三峽大學(xué) 電氣與新能源學(xué)院,宜昌 443002)
電池的荷電狀態(tài)SOC對于鋰電池的能量管理,防止鋰電池過充電和過放電,改善電池壽命和制定控制策略有一定的影響。估計鋰電池SOC的方法主要有:放電法[1-2]、負(fù)載電壓法、安時積分法、開路電壓法、內(nèi)阻法[3]、神經(jīng)網(wǎng)絡(luò)法[4]和卡爾曼濾波法等[5-6]。其中,放電法、開路電壓法、安時積分法及內(nèi)阻法的估算結(jié)果誤差較大;開路電壓法及神經(jīng)網(wǎng)絡(luò)法實現(xiàn)的條件較為苛刻。
針對估算誤差較大這一重大缺陷,學(xué)者們提出結(jié)合安時法與EKF算法[7]估算鋰電池的SOC。EKF采用泰勒級數(shù)展開方法求解系統(tǒng)線性方程,將系統(tǒng)變?yōu)榫€性系統(tǒng)并在線性系統(tǒng)中估算當(dāng)前系統(tǒng)狀態(tài)。在對方程線性化處理時,通常只保留非線性函數(shù)的一階項,并除去其二階項及后續(xù)項。在鋰電池系統(tǒng)采用EKF算法估算SOC時,由于鋰電池系統(tǒng)為強(qiáng)非線性系統(tǒng),被忽略的二階項及后續(xù)項會影響估算結(jié)果,導(dǎo)致估算SOC值發(fā)散,使得估算SOC遠(yuǎn)偏離于真實SOC。
為提高EKF算法的穩(wěn)定性和精度,在此改進(jìn)了EKF算法,并在MatLab/Simulink上進(jìn)行模型仿真,結(jié)果證明改進(jìn)是有效的。
放電法采用恒流放電,工作電流和時間的乘積即為鋰電池荷電狀態(tài)。它是一種精度較高的SOC估算方法,但需要大量時間來獲取樣本,以及需要切斷正在工作的電池來試驗,無法一邊試驗一邊工作。
開路電壓法[8]精確測量開路電壓OCV(open circuit voltage),并根據(jù)OCV與SOC之間存在的函數(shù)聯(lián)系來估算SOC。該方法較放電實驗法更準(zhǔn)確,但只能在鋰電池停止工作時進(jìn)行測量。
內(nèi)阻法[9-10]是用于測量鋰電池內(nèi)阻并基于測量內(nèi)阻與SOC間的函數(shù)關(guān)系估算SOC的方法,由于內(nèi)部電阻隨電池狀態(tài)的變化而變化,因此無法精準(zhǔn)測出內(nèi)阻的具體值。若測量結(jié)果存在較大的誤差,則會導(dǎo)致估算不準(zhǔn)甚至錯誤。
神經(jīng)網(wǎng)絡(luò)法[11-12]是一種非線性特征的訓(xùn)練方法,它需要大量的數(shù)據(jù)來訓(xùn)練網(wǎng)絡(luò)和適當(dāng)?shù)妮斎耄斎霔l件更加嚴(yán)格。
安時積分法[13-14]是一種廣泛使用的鋰電池SOC測量方法,因未考慮鋰電池內(nèi)部產(chǎn)生的化學(xué)反應(yīng),且儀器采集電流也存在誤差,時間越久則誤差累積越多,會極大地影響SOC估計結(jié)果。
建立系統(tǒng)方程首先需建立鋰電池等效模型,目前運(yùn)用廣泛的經(jīng)典等效電路模型主要有內(nèi)阻(Rint)模型、戴維南(Thevenin)模型及PNGV模型。
在此使用二階Thevenin電路模型來模擬電池正常工作狀態(tài)。相較一階Thevenin電路,二階電路精確度更高,能更實際還原鋰電池特性;相較于三階及更高階數(shù)模型,雖精確度相差不大,但計算量遠(yuǎn)低于更高階的模型。
二階Thevenin等效電路模型如圖1所示。圖中,R0為直流內(nèi)阻;R1,R2為鋰電池電化學(xué)和濃差極化內(nèi)阻;C1,C2為鋰電池極化電容;I為放電電流;U1,U2分別為R1,R2兩端電壓;Ub為端電壓;Uoc為開路電壓。
圖1 二階戴維南等效電池模型Fig.1 Thenenin second-order equivalent circuit cell model
在二階Thevenin等效電路電池模型中,根據(jù)基本電路定律,可列出以下基本方程:
根據(jù)安時積分法,鋰電池SOC為
式中:k0為開始時間;k為截止時間;CN為額定容量;I為放電電流。
對方程(1)(2)(3)進(jìn)行離散化處理,可得
其中 τq=RqCq,q=1,2
式中:Ts為采樣時刻;τq為RqCq網(wǎng)絡(luò)時間常數(shù)。
通過以上推導(dǎo),并將電池SOC作為系統(tǒng)狀態(tài)量,得到的系統(tǒng)狀態(tài)方程和觀測方程為
式中:ωp,k為過程噪聲,p=1,2,3;φk+1為觀測噪聲。
傳統(tǒng)EKF算法的計算步驟如圖2所示,其主要有預(yù)測過程和校正過程。
圖2 EKF算法流程Fig.2 Flow chart of EKF algorithm
預(yù)測過程步驟 確定系統(tǒng)在k-1時的初始值,預(yù)測出系統(tǒng)在k時的值;根據(jù)初始協(xié)方差矩陣,預(yù)測出k時刻的協(xié)方差預(yù)測矩陣pk。
校正過程步驟 利用協(xié)方差預(yù)測矩陣得到系統(tǒng)濾波增益Kk;對系統(tǒng)進(jìn)行狀態(tài)方程更新及誤差協(xié)方差方程更新,完成校正。
因為EKF算法對線性動態(tài)系統(tǒng)的建模效果很好,而鋰電池系統(tǒng)為非線性系統(tǒng),SOC與實際容量、內(nèi)阻、溫度等很多元素都不是線性關(guān)系,從而導(dǎo)致誤差積累。因此,需對EKF算法擴(kuò)展,使其改變?yōu)楹蟹蔷€性狀態(tài)函數(shù)的狀態(tài)空間方程,使計算結(jié)果更為精確。
改進(jìn)的EKF算法,在協(xié)方差預(yù)測步驟中引入了溫度補(bǔ)償系數(shù)T0:
式中:CN(25℃,1C)為鋰電池在 25℃下,以 1C 電量放電測得的額定容量;CN(T,C)為在溫度T時電量以恒定值放電,直至達(dá)到終止電壓,整個放電過程放電容量當(dāng)作電池的相對容量。
如以鋰電池CN(25℃,1C)的容量作為參考值1,那么根據(jù)獲得的不同溫度及放電倍率下相對可用容量大小,可計算出具體條件下的容量補(bǔ)償因子結(jié)果,見表1。
表1 容量補(bǔ)償因子結(jié)果Tab.1 Results of capacity compensation factor
初始化初值x0和協(xié)方差矩陣p0;按照運(yùn)行步驟,測得輸入值完成SOC估算。改進(jìn)EKF計算步驟具體如下:
步驟1 根據(jù)系統(tǒng)在k-1時的值xk-1,計算出在k-1時預(yù)測k時的估算值xk為
根據(jù)協(xié)方差p0,求出協(xié)方差矩陣預(yù)測pk為
式中:Q為過程噪聲協(xié)方差矩陣。
步驟2 利用式(10)求得的溫度補(bǔ)償系數(shù)T0,對協(xié)方差預(yù)測矩陣進(jìn)行優(yōu)化,得到p′k,即
用優(yōu)化后的矩陣p′k,求出濾波增益Kk為
式中:Hk為觀測矩陣;R為測量協(xié)方差。
步驟3 進(jìn)行狀態(tài)更新和協(xié)方差更新,即
為驗證改進(jìn)EKF算法的有效性,采用BTS-2002型電池測量儀(如圖3所示),對容量為2800 mA·h,電壓3.7 V的18650型磷酸鐵鋰電池做采集試驗。采用改進(jìn)的EKF算法估計SOC時,需要用到OCV與鋰電池SOC之間對應(yīng)的的函數(shù)表達(dá)式,并辨別二階Thevenin電路模型模型參數(shù)。
圖3 BTS-2002型電池測量儀Fig.3 BTS-2002 battery measuring instrument
首先確定OCV與SOC之間的函數(shù)表達(dá)式,在常溫25℃下進(jìn)行放電試驗,電量為1C,測試電壓為2.75~3.70 V,獲取試驗數(shù)據(jù)。根據(jù)文獻(xiàn)[11]所提出的方法,準(zhǔn)確得到SOC與OCV一一對應(yīng)的函數(shù)關(guān)系,并利用MatLab的數(shù)據(jù)擬合功能,求出函數(shù)表達(dá)式。SOC與OCV的關(guān)系如圖4所示。
OCV與SOC的函數(shù)關(guān)系(Voc-Sc)為
試驗用最小二乘法辨別二階Thevenin等效電池的參數(shù) R0,R1和 C1,C2,并隨時間不斷變化、更新,在MatLab/Simulink中建立等效電池仿真模型。仿真的初始條件為
圖4 OCV與SOC的關(guān)系Fig.4 Relationship between OCV and SOC
以試驗獲得的電流和電壓數(shù)據(jù)為基礎(chǔ),導(dǎo)入至MatLab/Simulink鋰電池仿真模型內(nèi)。鋰電池SOC MatLab/Simulink仿真模塊如圖5所示。
圖5中,xk為狀態(tài)更新值,pk為估計誤差協(xié)方差矩陣,誤差協(xié)方差矩陣為系統(tǒng)計算的偏差程度,當(dāng)計算t時刻的系統(tǒng)預(yù)測值時,通過系統(tǒng)協(xié)方差矩陣計算卡爾曼濾波增益Kk。協(xié)方差矩陣與預(yù)測精度呈線性關(guān)系,協(xié)方差矩陣越小,精度越高;反之,則精度越低。
圖5 鋰電池SOC MatLab/Simulink仿真模塊Fig.5 Lithium battery SOC MatLab/Simulink simulation module
改進(jìn)EKF算法用于估算鋰電池SOC的仿真驗證如圖6所示。該試驗通過設(shè)置遠(yuǎn)離真實值的隨機(jī)值,測試本文改進(jìn)算法的靈敏度。設(shè)置其隨機(jī)初始值為72%Sc,經(jīng)過短時間的迭代估算,得到SOC的測量值。自0時刻至3750 s時刻,鋰電池SOC仿真真實值從1減小到0,測量值經(jīng)算法測量和迭代后逐漸與真實值靠近,并與真實值曲線重合,在真實值范圍內(nèi)以極小的誤差波動。仿真模型驗證了改進(jìn)算法靈敏度與精度都具有很高的可靠性。
圖6 改進(jìn)EKF估算的鋰電池SOCFig.6 Improved EKF estimation of lithium battery SOC
模型的誤差及誤差率曲線如圖7所示。由圖7a可見,在初始時,經(jīng)快速迭代,誤差值迅速減小,并且隨著改進(jìn)EKF的不斷計算,誤差逐漸減小。由圖7b可見,由于初始值設(shè)置的誤差較大,初始的誤差率也大;經(jīng)過短時間迭代后,SOC逐漸接近真實值,誤差率也逐漸變小,在2%誤差率范圍內(nèi)波動。通過估算系統(tǒng)可以得到很高的精準(zhǔn)度。
圖7 仿真誤差及誤差率的曲線Fig.7 Curve of simulation error value and error rate
通過建立二階Thevenin等效電路模型,通過測得鋰電池不同容量所對應(yīng)開路電壓OCV值,得到OCV與SOC對應(yīng)函數(shù),使得模型估算更精確;使用MatLab/Simulink軟件,建立二階Thevenin等效電池模型,導(dǎo)入試驗數(shù)據(jù)進(jìn)行仿真試驗,精確估計SOC。通過放電情況下實際值與測量值的對比,本文模型誤差較小,保持在2.10%誤差范圍內(nèi)。因此,本文模型具有較高精確度,可適用于實際鋰電池管理系統(tǒng)。