龍振弘
(三明教育學(xué)院信息技術(shù)處,福建 三明,365000)
準(zhǔn)確的電池荷電狀態(tài)(State of Charge,SOC)[1]估計可以推測出電動汽車的續(xù)航里程,消除駕駛員的“里程焦慮”,同時為電動汽車的能量管理、壽命監(jiān)測、電池均衡等提供準(zhǔn)確的判斷依據(jù),因此成為電動汽車發(fā)展的熱點問題。SOC 估計精度是當(dāng)前電池管理系統(tǒng)的研究重點,且存在有待進一步改進和提高的方面[2]。目前SOC 估計常見方法有安時積分法、阻抗分析法、開路電壓法等。近年來出現(xiàn)了基于卡爾曼濾波類方法、機器學(xué)習(xí)類方法、非線性觀測器類方法等[3],以及基于上述幾類方法的改進或融合,用以提高SOC 估計精度[4-8]。當(dāng)前國內(nèi)外研究的SOC 估計方法均能夠有效估計SOC 并達(dá)到一定精度,但是存在算法復(fù)雜度和精度之間的矛盾、時間或電流累計誤差、依賴模型準(zhǔn)確度以及實際應(yīng)用下的工程實現(xiàn)等問題。為提高SOC 的估計精度,從工程實際出發(fā),提出一種采用安時積分法和擴展卡爾曼濾波法相結(jié)合的方法,以較少的計算資源達(dá)到較高的估計精度。
電池使用過程中的外特性與RC 網(wǎng)絡(luò)特性具有相似性,RC 網(wǎng)絡(luò)能夠較好地模擬電池的極化效應(yīng)。戴維南(Thevenin)等效模型使用若干RC 并聯(lián)網(wǎng)絡(luò)結(jié)合線性模型來近似電池特性,RC 網(wǎng)絡(luò)階數(shù)越高,對極化特性的反映越精確。戴維南等效模型可以根據(jù)系統(tǒng)要求和資源靈活選用階數(shù),能夠適應(yīng)不同精度和復(fù)雜度的要求。為能較好地兼顧精度和復(fù)雜度,此處采用一階戴維南等效模型,其結(jié)構(gòu)如圖1 所示。
圖1 一階戴維南等效電路模型
通過復(fù)合脈沖電池放電試驗(Hybrid Pulse Power Characterization,HPPC),以串聯(lián)電池組的充放電電流為輸入,端電壓為電池系統(tǒng)的輸出,對電池的周期性充放電響應(yīng)特性進行分析,由此計算出電池模型中各元件的參數(shù)。
脈沖放電過程為:以1/3 C 放電10 s,然后靜置30s,最小采樣間隔為0.1s,采集此SOC 下電壓變化曲線。HPPC 過程電池端電壓隨電流的變化曲線如圖2 所示。單次脈沖放電曲線如圖3 所示。
圖2 HPPC 過程電壓變化曲線
圖3 單次脈沖放電曲線示意圖
在t1時刻開始放電,工作電壓會有明顯的陡然下降。根據(jù)一階戴維南等效電路模型可知電壓陡降數(shù)值與電流比值為等效內(nèi)阻R0,即:
在t2時刻,電池停止放電,電池等效內(nèi)阻不再分壓。之后到U4到U5階段,是容阻回路的零輸入響應(yīng)階段。由于RC 回路的存在,充滿電的等效極化電容CP開始對等效極化內(nèi)阻RP放電,在外特性中呈現(xiàn)為電池端電壓緩慢上升;當(dāng)?shù)刃O化電容兩極板上電荷全部釋放后時,電池的端電壓不再發(fā)生變化,此時測得的電池端電壓即為電池開路電壓。
由基爾霍夫電流定律,可得:
式中,UP是電容電壓;UR是電阻兩端電壓。對式(2)求解,可得:
式(3)為容阻回路零輸入響應(yīng),表示U4到U5時刻電壓的變化趨勢。其中,τt 為時間常數(shù);A 為電容初始電壓;Δt 為采樣時間,其中τt=RPCP。
t1到t2時刻為放電過程,由基爾霍夫電流定律,可得:
式(4)為一階常系數(shù)線性非齊次微分方程,其通解為:
式中,可用最小二乘法求解出RP的值,然后根據(jù)τt=RPCP可求出CP的值。
圖1 的RC 環(huán)路的零輸入和零狀態(tài)響應(yīng)為:
根據(jù)基爾霍夫電壓定律可得到電池端電壓UL、等效電容電壓UP的參數(shù)關(guān)系式:
模型參數(shù)辨識結(jié)果如表1 所示。
表1 模型參數(shù)辨識結(jié)果
通過HPPC 試驗所辨識出的SOC-OCV 曲線以及不同SOC 時刻的內(nèi)阻R0、極化電容CP和極化電阻RP的值,擬合后可得到SOC 和R0、RP、CP的函數(shù)關(guān)系。至此,利用安時積分法和EFK 的進行SOC 估算所需的參數(shù)已全部得出。
安時積分法是通過對放電電流或充電電流進行實時監(jiān)測,并在時間上進行積分以獲得電池充放電電量,最終結(jié)合初始電量及電池總電量計算出SOC。計算公式如下式:
其中,SOC(t0)表示估計方法開始時SOC 的初始值,SOC(t)表示t 時刻SOC 的估計值;QI為電池額定電量;I 為充放電電流。其增量表達(dá)式為:
式中,ki為經(jīng)驗修正系數(shù),通過不同恒流值放電試驗獲取。
安時積分法需要獲取電池的初始SOC、實時電流及采樣時間間隔。在工程實際中,電池初始值一般由開路電壓法、外部存儲初值或滿電狀態(tài)進行初始化。安時積分法容易產(chǎn)生累計誤差[9],需要適時糾正。實時電流的準(zhǔn)確性是安時積分法結(jié)果精確性的關(guān)鍵,采樣時間間隔有兩方面的要求,一方面時間間隔要盡量小,避免遺漏電池組電流的瞬時變化的獲??;另一方面采樣間隔要參與積分運算,因此其數(shù)值要非常精確。
卡爾曼濾波方法是最優(yōu)估計理論中最為廣泛應(yīng)用和研究的方法之一。傳統(tǒng)的卡爾曼濾波方法是建立系統(tǒng)的狀態(tài)方程及觀測方程,通過對狀態(tài)變量和先驗均方誤差進行預(yù)測,再根據(jù)測量值對預(yù)測值進行修正,最終估計出更加精確的系統(tǒng)狀態(tài)變量值,不適用于非線性系統(tǒng)。電動汽車動力電池組的系統(tǒng)模型是一個非線性系統(tǒng),電池SOC 值和實時電流、端電壓、溫度、電池健康程度等多個參數(shù)間呈現(xiàn)復(fù)雜的非線性關(guān)系??柭鼮V波算法的性能嚴(yán)重依賴于電池系統(tǒng)模型建立的準(zhǔn)確性,當(dāng)電池系統(tǒng)模型發(fā)生變化時,算法會發(fā)生不穩(wěn)定甚至失效現(xiàn)象[10]。擴展卡爾曼濾波算法(Extended Kalman Filter,EKF)與傳統(tǒng)卡爾曼濾波算法的區(qū)別在于前者的模型建立可以是非線性的,即其系統(tǒng)狀態(tài)方程和觀測方程為非線性表達(dá)式,通過對非線性系統(tǒng)數(shù)學(xué)模型進行泰勒級數(shù)展開,按照精度要求取前若干項構(gòu)成一個近似于原系統(tǒng)的線性系統(tǒng),再使用傳統(tǒng)卡爾曼濾波算法進行最優(yōu)估計。然而擴展卡爾曼濾波算法復(fù)雜度較高,計算量較大,對硬件資源要求較高。因此在工程實現(xiàn)過程中,需要兼顧建立精確的系統(tǒng)模型及降低運算時間,以保證估計算法的精確性和實時性。
擴展卡爾曼濾波的狀態(tài)方程和觀測方程如下:
和傳統(tǒng)卡爾曼濾波算法相比,僅考慮At、Bt和Ct的區(qū)別。由此可得到擴展卡爾曼濾波算法流程圖,如圖4 所示。
圖4 擴展卡爾曼濾波算法流程圖
以SOC 和UP為狀態(tài)變量,以端電壓UL為可觀察輸出變量,按照EKF 算法建立電池組等效模型的狀態(tài)方程和觀測方程:
則卡爾曼濾波計算所需矩陣Xt、At、Bt和Ct為:
根據(jù)SOC 和R0、RP、CP的擬合關(guān)系,每次迭代時求出At-1、Bt-1的值;根據(jù)OCV-SOC 曲線擬合關(guān)系得到每次迭代時Ct的值。通過圖4 流程圖即可實現(xiàn)基于一階戴維南等效模型的EFK 的SOC 估計算法。
因EKF 算法每次迭代會產(chǎn)生大量的臨時矩陣,但單片機系統(tǒng)存儲空間有限,且缺少內(nèi)存管理,故采用二級指針數(shù)組實現(xiàn)矩陣存儲,可在一定程度避免內(nèi)存錯誤。二級指針數(shù)組的存儲原理如圖5 所示。
圖5 二級指針存儲原理圖
第一級指針為double** 類型,指向的地址為double*數(shù)組的首地址,此數(shù)組代表矩陣每行的首地址;每個double*類型的指針又指向一個double 類型數(shù)組的首地址,此數(shù)組存儲矩陣中的一行數(shù)據(jù),數(shù)組長度為矩陣列數(shù)。
計算資源利用,需要對內(nèi)存進行動態(tài)分配和回收及調(diào)節(jié)堆棧大小,為單次算法迭代提供充足內(nèi)存空間。將EKF 每次迭代分為五個程序部分以實現(xiàn)平穩(wěn)運行:①狀態(tài)變量先驗估計;②先驗均方差計算;③卡爾曼增益計算;④狀態(tài)變量后驗估計;⑤均方誤差計算。每部分進行完畢后,保留下一部分所需矩陣數(shù)據(jù),并回收此部分中間計算產(chǎn)生的其他矩陣,以實現(xiàn)在BMS 系統(tǒng)內(nèi)每0.5s 內(nèi)運行一次算法迭代。
EFK 算法需要占用較多的計算資源和內(nèi)存空間,且其收斂到精確值需要若干次迭代計算。因此,在系統(tǒng)空閑時段,啟動EFK 算法對SOC 值進行估計;在系統(tǒng)繁忙時段,例如電池均衡、通信功能或熱處理功能啟動時,停用EFK 算法,并以停用時的SOC 估計值作為初值啟用安時積分法。在BMS 系統(tǒng)工作時,系統(tǒng)空閑時段和繁忙時段通常交替進行,安時積分法產(chǎn)生積累誤差會在空閑時段進行EFK 估計時得以消除;同時,此切換設(shè)計也會給予卡爾曼濾波法充足的計算資源,使其正常運行。此外,當(dāng)充電電流過小或單體電池平均開路電壓達(dá)到4.2V 時判定電池充滿。SOC 估計程序流程如圖6 所示。
圖6 SOC 估計程序流程
實驗設(shè)備為:新威CT4008 電池分析儀;嵌入式電池管理系統(tǒng)(Battery Manage System,BMS);四節(jié)18650 鋰電池串聯(lián)(單體電池容量2400mAh)。
使用電池分析儀對電池組2A 恒流放電,以電池分析儀顯示SOC 為實測值。每3 分鐘記錄一次SOC 實測值,放電過程中通過電池管理平臺對電池組進行SOC 估計。SOC 估計程序設(shè)置為安時積分法加以間隔進行的EKF 估計算法。如圖7 所示是SOC放電時的SOC 實驗結(jié)果。
圖7 SOC 放電時的SOC 實驗結(jié)果
實驗以放電過程中電池分析儀檢測的SOC 實測值為真實值,以嵌入式電池管理系統(tǒng)運行所提的估計算法得到結(jié)果為估計值進行對比。如圖7(a)所示,當(dāng)鋰電池的剩余電量接近10%時,由于鋰電池開路電壓變化劇烈,因此估計誤差最大,約為1.25%。如圖7(b)所示:安時積分法運行時的SOC 估計誤差逐漸擴大,切換到EKF 估算后,SOC 估計誤差收斂到真值附近。在整個放電過程中,SOC 估計的平均誤差約0.4%,可以滿足電動汽車SOC 估計的精度要求。
用安時積分法和EKF 相結(jié)合,進行SOC 估計,針對的是在使用安時積分法時由于運算周期誤差和電流采樣誤差容易產(chǎn)生累計誤差,導(dǎo)致SOC 估計誤差有逐漸擴大的趨勢。采取EKF 估計算法后,將累計誤差修正,SOC 估計精度得到提高。研究結(jié)果表明所提出的SOC 估計算法,既有較高的估計精度,又可以減少計算資源,因此具有良好的工程應(yīng)用價值。在未來的后續(xù)研究中,還有一些提高估計精度的思路有待實現(xiàn):將溫度加入模型參量,辨識出各個溫度下的等效電池模型并擬合,在算法迭代計算時適時考慮模型參數(shù)的變化;建立高階、更復(fù)雜的電路等效模型,以某參量為坐標(biāo)在電池整個生命周期的不同坐標(biāo)對電路模型進行建模等。上述方法均使用變化的模型而不是固定模型以提高精度,但是需要更強大的硬件計算能力。