彭香園, 唐傳雨, 孫金磊, 劉 釗
(南京理工大學(xué) 自動化學(xué)院, 江蘇 南京 210000)
為了實現(xiàn)全球可持續(xù)發(fā)展的目標,加快電動汽車發(fā)展進程成為了世界各國關(guān)注的焦點[1]。鋰離子電池以其質(zhì)量輕、自放電率低、循環(huán)壽命長、能量密度高等優(yōu)勢成為電動汽車儲能系統(tǒng)的首選[2]。為了便于駕駛員實時獲取當前可用電量,從而估計續(xù)駛里程,有必要對電池荷電狀態(tài)(State of Charge,SOC)實時精準估計。但鋰離子電池儲能的原理是內(nèi)部復(fù)雜的電化學(xué)反應(yīng),其具有高度的時變性和非線性特點,電池SOC無法與電壓、電流一樣通過簡單的儀器測量直接獲得,只能通過建立模型來間接估計。此外,電池SOC還與環(huán)境溫度、充放電倍率以及老化程度等有關(guān),因此科學(xué)有效地獲取電池當前SOC對于估計電動汽車續(xù)駛里程,保障電池系統(tǒng)使用安全具有重要意義[3]。
目前國內(nèi)外針對SOC估計已經(jīng)做了大量深入研究[4-5],主要方法有開路電壓法[6]、安時積分法[7]、神經(jīng)網(wǎng)絡(luò)法[8]、卡爾曼濾波法[9]等。開路電壓法需將電池長時間靜置,多用于實驗室,不適合在線估計;安時積分法由電流測量誤差及電池容量造成的累計誤差較大,無法滿足SOC估計的精度要求;神經(jīng)網(wǎng)絡(luò)法避免了考慮復(fù)雜的電化學(xué)過程,計算效率高,但精度緊緊依賴于訓(xùn)練數(shù)據(jù)的完整性,而汽車工況的復(fù)雜性和不確定性都較高,訓(xùn)練數(shù)據(jù)很難全覆蓋;卡爾曼濾波法是一種遞推濾波算法,具有自校正性。URBAIN M等[10]在Rint模型中使用了卡爾曼濾波算法,驗證了可將誤差減小至5%以下。該算法優(yōu)點是具有自校正性,受高斯噪聲干擾小,因而精度高,被廣泛運用于SOC估計領(lǐng)域,缺點是只能用于線性系統(tǒng)。
針對電池的非線性特性,本文采用擴展卡爾曼濾波(Extended Kalman Filter,EKF)算法[11]提高SOC估計精度。建立戴維南模型,利用混合脈沖功率性能(Hybrid Pulse Power Characteristic,HPPC)測試辨識參數(shù),通過分段線性化擬合開路電壓(Open Circuit Voltage,OCV)-SOC曲線,設(shè)計基于EKF的SOC估計方法,同時考慮電池老化因素,加入容量校準點,并進行仿真與實驗驗證。
為滿足具體應(yīng)用要求,電動汽車的電池系統(tǒng)一般需對單體電池進行串并聯(lián),構(gòu)成大型電池組。這里假設(shè)電池組中的單體電池各性能和參數(shù)完全一致,即認為電池組是單體的疊加以簡化模型。綜合考慮計算量和精度等因素,采用戴維南模型,在Rint模型基礎(chǔ)上增加并聯(lián)RC電路部分,能夠反應(yīng)電池內(nèi)部極化現(xiàn)象、動態(tài)和靜態(tài)特征。戴維南模型等效電路如圖1所示。
該電路模型由電池電動勢Uocv、電池歐姆電阻R、極化電阻Rp和極化電容Cp組成的一階并聯(lián)RpCp回路以及電池端電壓構(gòu)成。電池電動勢可近似看作開路電壓,其與SOC的關(guān)系呈非線性。
以放電電流I方向為正,根據(jù)基爾霍夫電壓電流定律,可得等效電路方程組:
(1)
式中:Up——極化電壓;
Ut——端電壓。
SOC的估算精度和等效電路模型精度緊密相關(guān),而模型應(yīng)用的前提是模型參數(shù)辨識,采用文獻[12]中測試電池參數(shù)的實驗HPPC測試。
實驗對象是ISR18650-2.2 Ah鋰電池,HPPC充放電實驗的具體步驟如下:
(1) 室溫下,以標準充電方式將電池充滿,SOC=100%,靜置2 h。
(2) 對電池以0.5C恒流放電12 min,靜置2 h,即放出10%電量。
(3) 對電池施以單個HPPC測試脈沖,即1 C恒流放電10 s,靜置40 s,0.75 C恒流充電10 s,靜置5 min。
(4) 重復(fù)步驟(2)、步驟(3),直至放電結(jié)束。
單個HPPC測試脈沖如圖2所示。
截取單次HPPC試驗的部分電壓、電流變化如圖3所示。
圖3中,A-B表示長時間靜置時電壓變化,B-C-D表示給電池施加負的電流脈沖時電壓變化,D以后電池靜置。各參數(shù)的辨識方法:
(1) 歐姆內(nèi)阻。鋰電池開始放電、結(jié)束放電存在電壓突變過程,是由電池內(nèi)阻特性引起的。電池歐姆內(nèi)阻為
(2)
(2) 極化電阻和極化電容。電池結(jié)束放電和結(jié)束充電時產(chǎn)生電壓突變,隨后電壓緩慢變化,R、Uocv在短時間內(nèi)的變化很小,可忽略不計,看作電池極化特性引起的,可用極化電阻與極化電容Rp、Cp構(gòu)成的回路模擬。以放電電壓變化為例,B-D可看作Rp、Cp回路的零狀態(tài)響應(yīng):
(3)
可得D點電壓為
(4)
由于Rp一般較小為mΩ級,在D點可近似的看作:
(5)
即
UD=Uocv-IR-RpI
(6)
由于A-B經(jīng)過長時間靜置,B點和C點的電壓值均為
UB=UC=Uocv-IR
(7)
可以得出RP值為
(8)
根據(jù)式(3),在零狀態(tài)響應(yīng)下,極化電壓在3τ時達到最大值的95%左右,τ=RPCP。其中,圖3的C-C2點之間的電壓差為C-D之間電壓差的95%,tC與t1時刻差即為3τ,由此得出
(9)
經(jīng)此方法辨識,不同SOC下參數(shù)如表1所示。
(3) OCV-SOC關(guān)系辨識。開路電壓是指開路狀態(tài)下的電池正負級的電勢差,因此OCV-SOC的關(guān)系辨識也就是電動勢與SOC的關(guān)系辨識。但由于鋰電池內(nèi)部的極化特性,一般將經(jīng)長時間靜置的電池端電壓才可以近似看作鋰電池的電動勢。為了得到OCV-SOC關(guān)系曲線,先將鋰電池按標準充電方式充滿電后,靜置1 h后測量開路電壓值,然后對電池恒流放電,SOC每變化0.1靜置電池1 h,測量其開路電壓后繼續(xù)放電,直至SOC=0。
表1 不同SOC下的電阻電容值
OCV與SOC的關(guān)系如圖4所示。
按式(10)將兩者之間的關(guān)系分段線性化以提高精度。
Uocv=F(SOC)=kSOC+γ
(10)
式中:k——線性函數(shù)斜率;
γ——線性函數(shù)在y軸上的截距。
為了對已經(jīng)建立的電池模型及HPPC實驗辨識出的模型參數(shù)進行精度驗證,將式(1)改為
(11)
Simulink電池仿真模型如圖5所示。
仿真模型主要由3個模塊組成:采用安時積分法的SOC計算模塊;利用輸入的SOC查找計算對應(yīng)電阻電容和開路電壓的計算模塊;利用式(1)和式(11)的端電壓計算模塊。
實際情況下電動汽車的工況一般比較復(fù)雜,采用能夠模擬實際行駛狀態(tài)的美國聯(lián)邦城市運行工況(Federal Urban Driving Schedule,FUDS)[13]驗證電池模型及參數(shù)的精度。將模型仿真電壓輸出值與實測電壓進行比較。FUDS工況驗證精度如圖6所示。
由圖6可見,電壓誤差的最大值約為0.08 V,平均誤差為0.02 V,建立的電池模型和辨識出的參數(shù)是準確的。
非線性離散時間系統(tǒng)的狀態(tài)方程和量測方程如下:
(12)
式中:f、h——非線性狀態(tài)方程和量測方程;
xk——狀態(tài)變量;
uk——輸入變量;
zk——觀測變量;
wk、vk——相互獨立的白噪聲。
對非線性狀態(tài)和測量方程進行線性化處理,即在最優(yōu)估計值下使用泰勒展開后只保留一階項,定義雅可比矩陣,代入式(12)后得到:
(13)
EKF算法的具體步驟如下:
(1) 系統(tǒng)初始化過程:
(14)
(2) 預(yù)測過程,包括狀態(tài)預(yù)測和誤差協(xié)方差預(yù)測:
(15)
(3) 計算卡爾曼增益矩陣:
(16)
(17)
將電池模型、EKF算法以及安時積分法相結(jié)合實現(xiàn)SOC估計。選取系統(tǒng)狀態(tài)變量為電池SOC和模型中Rp、Cp端電壓:xk=[SOCk,Up,k]T,輸入變量為電流輸入:uk=Ik,輸出變量為端電壓:zk=Ut,k。
將式(1)及安時積分公式離散化,可得EKF形式的狀態(tài)和量測方程:
(18)
Ut,k=F(SOCk)-IkR-Up,k+vk
各矩陣參數(shù)為式(19),隨后可采用EKF的迭代方法估計SOC。
(19)
由于電池制造工藝存在差異性,單體電池充滿電時總?cè)萘颗c規(guī)格書標稱容量并不完全相等,且隨著外部環(huán)境的改變以及使用次數(shù)的增多,電池會逐漸老化,總?cè)萘恳矔S之變化,若校準不及時,會使SOC估計值不精確。為了減小誤差,采用SOC估計值與安時積分結(jié)合的方法對總?cè)萘窟M行校準:
(20)
式中:Qn——校準后的容量;
Qα、Qβ——tα、tβ時刻的容量,兩者之差可以用電流在這段時間的積分表示;
SOCα、SOCβ——tα、tβ時刻的SOC估計值。
將單體電池模型擴展到電池組,并將EKF算法寫為M文件以驗證SOC估計方案的合理性。這里電池最大充電電流為1 C(1 C代表1倍率,這里1 C=2.2 A),最大放電電流為5 C,充電電壓為4.2 V且電流小于0.02 C為滿電狀態(tài)即SOC為1,放電終止電壓為2.75 V即SOC為0。在該條件下利用FUDS工況在MATLAB離線進行SOC估計,并與實驗所得真實SOC值比較??紤]電池老化因素,加入容量校準點。電池的老化現(xiàn)象雖然存在,但過程比較緩慢,且電池電量較低時,SOC估計誤差較大,不適合用來校準容量,因此在5 000 s,10 000 s,150 000 s時利用3 000個采樣點按照式(20)分別校準一次總?cè)萘俊?/p>
起始狀態(tài)為滿電,即x0=[SOC0,Up,0]=[1,0]T。初始x0=[1,0]T時仿真結(jié)果如圖7所示。為驗證EKF的自校正特性,設(shè)置初值x0=[0.5,1]T,仿真結(jié)果如圖8所示。不同情況容量校準值如表2所示。
實驗電池為全新電池,因此不存在老化情況。表2中,不同情況下校準值與電池規(guī)格書的標稱容量為2.2 Ah相差均在2.8%以內(nèi),該方案能夠正確地顯示電池實際總?cè)萘恐?經(jīng)推斷用于老化電池的總?cè)萘啃?能在一定程度上改善容量對SOC估計的影響。根據(jù)圖7分析可得,EKF算法獲得的SOC估計值均方根誤差為0.89%,最大誤差為2.08%。由圖8可見,該方案可容忍較大的初始誤差,SOC能夠在初值不準確的情況下快速收斂至真實值,驗證了其自校正特性,適用于電動汽車運行時初始SOC難以準確獲取的情況。
表2 不同情況容量校準值
初值容量/Ah校準點1校準點2校準點3x0=[1,0]T2.25 2.26 2.21 x0=[0.5,1]T2.26 2.26 2.21
較大誤差出現(xiàn)在SOC較小的時刻。這是因為在SOC 較小的情況下,電池極化效應(yīng)顯著增強,造成參數(shù)辨識不完全準確,且EKF在線性化的過程中忽略二階及其以上的高階項,造成SOC較小時處理電池動態(tài)特性能力下降,因而誤差變大,但SOC估計值仍可以跟隨真實值。
為了對鋰離子電池組SOC進行準確估計,選用戴維南等效電路模型對單體建模,并將其擴展到電池組,采用HPPC辨識出不同SOC下的模型參數(shù)。通過分段線性化的方式擬合得到OCV-SOC曲線,并在FUDS工況下驗證了模型與參數(shù)的準確性。通過建立電池非線性狀態(tài)空間方程,提出一種基于EKF及容量校準的老化電池SOC估計方法,將SOC估計值與安時積分結(jié)合進行容量校準。最后在MATLAB中進行仿真驗證,與實際SOC曲線進行對比,驗證SOC估計精度。
(1) 利用等效電路模型和EKF實現(xiàn)電池SOC在線估計,分段線性化的OCV-SOC曲線在一定程度降低了計算難度。
(2) 帶有容量校準功能的在線SOC估計方法可以有效對老化狀態(tài)進行在線評估,從而提高SOC估計精度。
(3) 仿真與實驗結(jié)果表明,所提出的方法總體SOC估計誤差均在2.1%以內(nèi),驗證了該方案估計SOC的可行性,具有較好的應(yīng)用前景。