田茂飛,安治國,陳 星,趙 琳,李亞坤,司 鑫
(重慶交通大學機電與車輛工程學院,重慶400074)
由于環(huán)境污染帶來的嚴峻挑戰(zhàn)和不可再生化石燃料的逐漸枯竭,電動汽車已經(jīng)成為全球汽車行業(yè)最重要的發(fā)展方向之一。與傳統(tǒng)燃料汽車相比,節(jié)能環(huán)保是電動汽車最突出的優(yōu)勢,然而,電池技術(shù)仍然是制約電動汽車發(fā)展的主要因素之一[1]。
鋰電池因具有高功率、高能量密度等特點而得到了廣泛的應用[2]。由于電池SOC是不可直接測量的,其實時值的精確估計成為防止由于電池過充或過放引起的潛在問題和爆炸風險的關(guān)鍵問題之一[3]。電池技術(shù)水平的提高,是保證電動汽車電池安全、可靠、能量得到高效利用的關(guān)鍵。
在國內(nèi)外研究中,安時積分法(AH)[4]和開路電壓法(OCV)[5]是最基本的估計方法,安時法對測量精度要求較高,誤差無法消除且隨時間推移會越來越大;開路電壓法需要長時間靜置,不適用于汽車的實時在線估計;神經(jīng)網(wǎng)絡等[6-7]智能算法能有效地提高估計精度,但需要以大量的實驗數(shù)據(jù)作為基礎,對訓練數(shù)量和質(zhì)量都有較高的要求,要應用到實際中還有一定困難;擴展卡爾曼濾波算法(EKF)[8]是目前比較成熟且有效的方法,但該方法只適用于線性系統(tǒng),故而需要進行離散化處理或改進。
本文在EKF的基礎上進行改進,通過數(shù)學方法令噪聲方差隨系統(tǒng)自適應地調(diào)整(即自適應擴展卡爾曼濾波,AEKF),以避免擴展卡爾曼濾波中固定的噪聲方差取值對估計結(jié)果產(chǎn)生影響這一缺陷,從而實現(xiàn)濾波精度與算法收斂性的雙重提高。
SOC的定義為電池的剩余容量額定容量之比[9]。常用安時積分方程表達,如式(1)所示
式中,SOC0為電池初始狀態(tài)的SOC值;C為電池的額定容量;i(t)表示放電電流大小;η表示庫侖效率,常取η≈1;Δt為采樣周期。
等效電路模型(ECM)也叫經(jīng)驗模型,描述的是電池外部的伏安特性,在有電流輸入的情況下,使模型的端電壓盡可能地跟實際輸出的端電壓保持一致。常用的等效模型有Rint模型[10]、Thevenin 模型[11]、PNGV 模型[12]等。在綜合考慮模型精確性和計算復雜度的情況下,本文選擇二階RC模型進行研究,如圖1所示。二階RC模型較好地模擬了電池的動態(tài)特性,描述了電化學極化作用和濃差極化作用對SOC的影響。
根據(jù)圖1所示的電池等效模型,結(jié)合基爾霍夫定律和基本電路原理可得到電池各狀態(tài)參數(shù)之間的關(guān)系
圖1 二階RC模型Fig.1 Second-order RC model
式中,Uocv為開路電壓,在平衡狀態(tài)下與SOC一一對應,此處不考慮OCV滯回現(xiàn)象對SOC的影響;It是電池的電流;R0為電池的歐姆電阻;R1與R2分別為電池的電化學極化內(nèi)阻和濃差極化電阻,C1與C2分別為電化學極化電容和濃差極化電容;Ut為電池的終端電壓。
聯(lián)合式(1)和(2)進行離散化處理,得到電池等效模型的狀態(tài)方程
其中,τ1和τ2為時間常數(shù),τ1=R1C1,τ2=R2C2。
對電池進行充放電實驗測試,完成模型的參數(shù)辨識,脈沖式充放電測試實驗步驟為:①首先將電池完全放電至下截止電壓,并長時間靜置;②以0.33C充電倍率對電池進行充電,SOC每上升10%,電池靜置1 h,重復此過程,直至電池充滿(SOC=1), 達到上截止電壓4.20 V,再將電池長時間靜置;③以0.33C放電倍率放電,當電量每下降10%,電池靜置1 h,重復此步驟,直至電池SOC=0; ④記錄下整個充放電過程的電壓及SOC數(shù)據(jù)。
通過測得的數(shù)據(jù)得到電壓和電流隨時間變化的曲線,根據(jù)電壓電流曲線進行參數(shù)辨識,得到電池的阻容參數(shù)。將開路電壓與對應的SOC值進行多項式擬合, OCV-SOC曲線如圖2所示。
圖2 OCV-SOC關(guān)系曲線Fig.2 OCV-SOC curve
圖3 端電壓對比圖Fig.3 Comparison of terminal voltages
為了驗證所建模型的精確性,在MATLAB中搭建模型,把辨識得到的參數(shù)導入模型進行仿真分析,將仿真得到的電壓曲線與實際測量得到電壓曲線進行比較,如圖3所示,模型輸出電壓與實際測量電壓之間的誤差較小,電池等效模型有較高的精確度。
電池在使用過程中具有時變特性,在不同的SOC、電流、溫度和老化情況下,電池的模型參數(shù)是不斷變化的,應用電池模型進行在線估計時,如果模型參數(shù)能夠根據(jù)電池狀態(tài)自適應地調(diào)整修正,那么估計精度將能有所提高,因此可以利用帶遺忘因子的最小二乘法對電池模型參數(shù)進行辨識。
根據(jù)最小二乘法理論,首先需要將模型表達式離散化,根據(jù)公式(4),進行Laplace變換可得
則其傳遞函數(shù)為:
通過用雙線性變換公式
式中,T為采樣周期,則可將式(6)離散為式(8)
式中,α1、α2、α3、α4、α5為對應的常系數(shù),然后得到式(6)的離散化方程
式中,I(k)和y(k)分別為系統(tǒng)的輸入和輸出,令
則式(9)可表達為
在遞推最小二乘的辨識方法中,將θ(k)作為待辨識參數(shù),然后再由θ(k)根據(jù)式(6)~ (8)反推電池模型的各個參數(shù)。
遞歸最小二乘方法具有無限記憶的態(tài)度,即隨著遞推次數(shù)k的增加,舊數(shù)據(jù)不斷累積,使得新數(shù)據(jù)很難發(fā)揮修正作用,這將影響參數(shù)估計的效果,特別是在時變系統(tǒng)中。由于新舊數(shù)據(jù)的不平衡,新估算的參數(shù)不能準確反映當前系統(tǒng)的特點,為了避免上述的情況,引入遺忘因子λ[13],此處取λ=0.99,當系統(tǒng)輸入發(fā)生變化時,辨識算法能夠快速響應并收斂至實際值附近。
帶遺忘因子的最小二乘算法步驟如下所示:
(1)初始化θ(k)和協(xié)方差矩陣P(k)等參數(shù);
(2)計算下一時刻的 (k+1);
(3)計算后驗誤差;
(4)計算增益矩陣;
(5)計算協(xié)方差矩陣;
(6)循環(huán)步驟(2)、(3)、(4)、(5)。
圖4 參數(shù)在線辨識結(jié)果Fig.4 Parameters online identification results
二階RC等效電路模型在DST工況下的參數(shù)在線辨識結(jié)果如圖4所示,在剛開始階段,模型參數(shù)值變化較為劇烈,這可能是參數(shù)初始化存在較大偏差造成的,但隨著時間的推移,各參數(shù)值漸漸趨于收斂,穩(wěn)定在某一固定值左右。其中兩個RC環(huán)節(jié)的時間常數(shù)τ,在數(shù)量級上有較大的差異,時間常數(shù)越小響應速度越快,符合電池在放電過程中發(fā)生的物理和化學反應的特性,第一個RC環(huán)節(jié)用于描述離子的擴散過程,速度相對較慢,第二個RC環(huán)節(jié)反映的是電池的電荷轉(zhuǎn)移過程和雙電層電容效應,速度比較快。
卡爾曼濾波(KF)是一種最優(yōu)的遞歸數(shù)據(jù)處理算法,但只適用于線性系統(tǒng)[14]。對于鋰離子電池等非線性系統(tǒng),EKF算法利用泰勒公式對系統(tǒng)的狀態(tài)空間方程進行線性化。非線性離散系統(tǒng)的狀態(tài)空間方程一般為
式中,xk和yk分別表示系統(tǒng)k時刻的狀態(tài)變量和測量變量;uk表示系統(tǒng)的輸入變量;wk和vk分別表示過程噪聲和測量噪聲,都為不相關(guān)的零均值高斯白噪聲。
根據(jù)式(3)定義系統(tǒng)的狀態(tài)向量為
由式(3)、(4)和(16)可得:
為了對上式進行簡化,令
EKF算法的流程具體的操作步驟如下所示。
(1)初始化:
(2)更新狀態(tài)變量預測估計:
(3)更新均方估計誤差預測估計:
(4)計算卡爾曼增益:
(5)狀態(tài)變量最優(yōu)估計:
(6)均方估計誤差最優(yōu)估計:
(7)判斷k是否達到停止條件,如果沒有,則對k累加1,并返回第二步進行循環(huán),直至達到停止條件。
在實際估計過程中,噪聲統(tǒng)計數(shù)據(jù)往往是未知的。為了減小未知噪聲對狀態(tài)估計的影響,在EKF上增加了Sage-Husa自適應濾波方法,在估計狀態(tài)時,根據(jù)每一步測量數(shù)據(jù)的變化,同時估計和修正系統(tǒng)的過程噪聲和測量噪聲的統(tǒng)計特性[15]。
假設過程噪聲wk和測量噪聲vk是相互獨立的,qk和Qk分別為wk的估計平均值和協(xié)方差,rk和Rk分別為vk的估計平均值和協(xié)方差。由于噪聲均值不為零,EKF中的狀態(tài)變量預計變更為
誤差更新變?yōu)?/p>
在線估計平均值qk,rk和協(xié)方差的過程見式(28)~(31)
式中dk=(1-b)/(1-bk+1),b是遺忘因子,取值范圍為0<b<1。
在估計過程中,將根據(jù)每一步噪聲均值和方差的估計結(jié)果,對當前狀態(tài)估計值進行連續(xù)修改,建立了基于EKF和噪聲統(tǒng)計估計量的AEKF遞歸過程,從而可由AEKF進行SOC估計。
上述第2、3節(jié)分別論述了帶遺忘因子的最小二乘遞推算法(FFRLS)和AEKF的具體步驟,據(jù)此可得到采用兩種算法進行SOC聯(lián)合估計的實現(xiàn)流程,如圖5所示,首先進行算法初始化,采用FFRLS算法根據(jù)運行工況的電流和電壓對模型參數(shù)進行在線辨識,使得模型參數(shù)能夠根據(jù)實際情況進行自適應修正,同時利用AEKF算法讀取FFRLS在線辨識的參數(shù)結(jié)果進行SOC估計,從而得到較為準確的SOC估計值。
圖5 聯(lián)合估計算法流程圖Fig.5 Flow chart of joint estimation algorithm
為了驗證利用AEKF算法估計電池SOC的估算精度,在DST動態(tài)工況下分別采用EKF和AEKF結(jié)合帶遺忘因子的最小二乘法在線參數(shù)辨識進行SOC估計,對兩種算法的估計結(jié)果進行比較。
DST工況下電池充放電交替進行,一次循環(huán)30 min,共循環(huán)6次,仿真時間為3 h。圖6為等效模型在DST工況下的實測電壓與估計電壓的比較,EKF與AEKF對實際電壓都有較好的追蹤能力,圖7為兩種估計方法的誤差特征曲線,二者誤差均比較小,模擬結(jié)果與實測結(jié)果吻合較好,但AEKF的估計精度更高,模擬效果更好。
圖8顯示了DST工況下兩種算法的估計結(jié)果與理論值的對比情況,圖9比較了在SOC從1到0的過程中兩種算法的誤差。由圖可知,擴展卡爾曼濾波算法(EKF)的誤差為-3.68%~2.63%;AEKF估計精度優(yōu)于EKF,誤差在-1.85%~2.35%范圍內(nèi),兩種算法都能夠遵循SOC的理論值。圖7中EKF方法在噪聲干擾下存在嚴重的波動, 但在最后階段,EKF的誤差基本保持不變,具有較好的穩(wěn)定性;AEKF方法在整個過程中波動略小,說明該方法對噪聲有較好的抑制作用,這是因為AEKF方法能夠充分利用每一步測量數(shù)據(jù)的變化,根據(jù)新測量的信息及時修正濾波增益矩陣,增強了其對噪聲濾波的效果。
圖6 DST工況下端電壓對比圖Fig.6 Comparison of terminal voltage under DST
圖7 端電壓誤差對比圖Fig.7 Comparison of terminal voltage errors
圖8 SOC估算結(jié)果Fig.8 SOC estimation results
圖9 SOC估計誤差曲線Fig.9 SOC estimation error curve
利用最小二乘法進行參數(shù)辨識可提高參數(shù)的精確度,但系統(tǒng)噪聲還是會對參數(shù)辨識產(chǎn)生一定影響,導致利用EKF估計SOC精度稍差一些。AEKF具有較強的噪聲抑制能力,可有效提高SOC估計準確性。
精確的SOC估計對于電池管理系統(tǒng)至關(guān)重要,模型參數(shù)和系統(tǒng)噪聲特性的準確性等因素都會影響SOC的估算精度。本文采用基于RLS的在線參數(shù)辨識技術(shù),實時獲取電池模型的電阻和電容參數(shù),避免了參數(shù)不精確引起的誤差。然后分別采用EKF與AEKF進行SOC估計并對其結(jié)果進行了比較,結(jié)果表明,AEKF方法可對系統(tǒng)噪聲進行實時修正,具有明顯的優(yōu)越性,SOC估計誤差在-1.85%~2.35%以內(nèi),有效提高了估計精度,具有較好的自適應性。