徐潔玉, 王冬青
(青島大學電氣工程學院, 山東 青島 266071)
準確估計電池的荷電狀態是電動汽車合理實施電池管理的前提和重要依據,能夠保證電池的良好使用性能和提高電池使用壽命[1,2]。然而,電池在實際工作過程中存在著非線性、多工況運行、多時間尺度動態等復雜特性,對鋰電池的建模和估算帶來了困難和挑戰[3-5]。
目前主流的荷電狀態(State Of Charge, SOC)識別方法有開路電壓法、安時積分法、數據驅動法和基于模型估計法[6]。通常,開路電壓法為其他鋰電池估計方法提供初始SOC。安時積分法的優點是測量簡單,但積分過程中累積的誤差無法消除。數據驅動法不需要建立等效電路來描述電池行為,但是依賴數據量構建數據驅動模型[7,8]。與上述SOC估計方法相比,基于模型的估計方法可以結合多種方法進行SOC估計,具有呈現鋰電池物理意義的優勢。因此,基于模型方法在SOC估計領域得到普遍關注[9]。
通常,鋰電池模型可分為等效電路模型、電化學模型和機器學習模型三類[10,11]?;诘刃щ娐纺P偷目柭鼮V波方法具有簡單和能夠在線辨識的優勢,被廣泛應用于鋰電池SOC估計中[12,13]。擴展卡爾曼濾波(Extended Kalman Filter, EKF)是解決非線性系統問題的有效方法[14]?;谔├照归_原理,EKF忽略了二階和高階項,使算法結構變得簡單。然而,這種線性化方法直接忽略了高階項,通常會引入較大的誤差[15,16]。無跡卡爾曼濾波器(Unsented Kalman Filter, UKF)將系統視為黑匣子,它使用sigma點的集合來近似概率分布,并避免求解雅可比矩陣[17],但是當使用UKF算法時,誤差協方差矩陣必須是正定矩陣,非正定誤差協方差矩陣將在中途終止算法[18]。在傳統的EKF算法中,一般假設系統噪聲是恒定的高斯白噪聲,然而電池系統中噪聲會受環境條件等因素的影響而發生變化。因此采用自適應擴展卡爾曼濾波算法(Adaptive Extended Kalman Filter, AEKF)對噪聲在線估計,實時更新系統和過程噪聲的均值和誤差協方差,以提高算法估算精度[19,20]。
本文在考慮鋰電池成組的基礎上,針對鋰電池SOC估計存在的問題,以二階等效電路模型為研究對象:①對應不同狀態變量子方程,選擇不同采樣周期,解決不同狀態變量的不同時間尺度問題;②考慮噪聲變化影響,對鋰離子電池SOC值自適應調節和校正,引入矩陣Cholesky分解方法,解決誤差協方差矩陣非負定性問題;③為了證明本文算法的有效性和普適性,利用NEWARE鋰電池測試平臺獲取不同型號鋰電池在不同工況下的實驗數據,并通過Matlab仿真進行了實驗驗證。
二階RC等效電路模型如圖1所示,其中Uoc為開路電壓,R0為歐姆內阻,R1和R2為極化電阻,C1和C2為極化電容,UT為端電壓,I為端電流,規定其放電方向為正,充電方向為負。
圖1 鋰離子電池二階RC等效電路模型Fig.1 Second order equivalent circuit model of lithium battery
由基爾霍夫定律可知:
UT,k=Uoc,k(SOCk)-IkR0-U1,k-U2,k+vk
(1)
式中,k為采樣點;vk為均值為rk、協方差為Rk的觀測噪聲。
R1C1和R2C2回路離散形式的全響應分別為:
(2)
SOC采用安培小時積分法計算如下:
(3)
式中,η為充放電效率;Cn為電池的標稱容量。
假設k時刻,鋰電池狀態變量為:
xk=[SOCkU1,kU2,k]T
(4)
由式(2)~式(4)可得鋰電池狀態方程為:
(5)
式中,wk-1為均值為qk-1、協方差為Qk-1的輸入過程白噪聲。
對于鋰電池,在充電和放電過程中,電池內部會發生不同的過程,導致不同時間尺度上的復雜動態變化,這反映在已建立的等效電路模型中不同RC環節的不同時間常數中。因此對于不同RC環節相關的不同電壓狀態方程采用不同的采樣率。Δt1、Δt2為不同環節采樣周期,利用不同環節的采樣周期建立多時間尺度狀態空間方程如下:
(6)
首先列出系統的多時間尺度狀態和觀測方程為:
xk=Akxk-1+BkIk-1+Lkwk-1
(7)
zk=UT,k=Hkxk+vk
(8)
(9)
(10)
(11)
式中,Ak為傳遞矩陣;Bk為系統控制矩陣;Hk為觀測矩陣;?為求導;Lk為噪聲驅動單位矩陣。
自適應卡爾曼濾波算法流程如下:
(1)初始化。
(12)
(13)
(2)更新狀態估計矩陣及誤差協方差矩陣。
(14)
Pk,k-1=AkPk-1AkT+LkQk-1LkT
(15)
(3)更新卡爾曼增益Kk。
(16)
(4)計算殘差。
(17)
(5)更新當前時刻狀態估計和均方誤差方程。
(18)
Pk=(F-KkHk)Pk,k-1
(19)
式中,F為單位矩陣。
(6)計算加權系數。
(20)
式中,b為遺忘因子,通常取0.95~1。
(21)
(22)
(23)
(24)
(8)返回第2步繼續迭代計算,直到滿足要求。
在濾波過程中,Pk應保持非負定性,但是在計算過程中,由于計算機字長有限,存在舍入誤差,Pk將失去非負定性,濾波增益出現失真,導致濾波發散。引入矩陣Cholesky分解方法可以使Pk保持非負定性,協方差分解矩陣Gk將代替誤差協方差矩陣Pk進行迭代更新。
根據Pk,k-1的定義,Pk,k-1應保持正定性,即:
(25)
式中,Lk-1為下三角矩陣;Dk-1為對角矩陣,且對角元素全為正。此時若:
(26)
則
(27)
式中,Gk-1為下三角陣,是協方差分解矩陣,這種分解叫做Cholesky分解。根據卡爾曼濾波方程,一步預測方程可以進行如下變形:
(28)
其中
Gk,k-1=Ak-1Gk-1
(29)
此時可以得到k時刻誤差協方差矩陣:
(30)
其中
(31)
設
(32)
則
(33)
其中
(34)
則
(35)
因此不難解得:
(36)
(37)
利用Gk可以得到Kk的表示方程:
Kk=mkGk,k-1Sk
(38)
基于Cholesky分解的多時間尺度AEKF (Cholesky-based decomposition Multi-scale AEKF,CMAEKF)算法的自適應更新方程為:
(39)
(40)
Kk=mkGk,k-1Sk
(41)
(42)
(43)
(44)
為了驗證本文提出算法的普適性和有效性,以鋰電池NCR-18650和BTCAP-21700為實驗對象,表1為不同型號鋰電池具體參數,考慮電池老化等因素的影響通過降低電池容量來模擬電池老化的現象。在混合功率脈沖特性工況(Hybrid Pulse Power Characteristic, HPPC)、城市道路循環工況(Urban Dynamometer Driving Schedule, UDDS)和動態應力測試工況(Dynamic Stress Test, DST)等不同的復雜工況進行實驗并與其他算法進行對比驗證。
表1 電池參數Tab.1 Battery parameters
本文采用電池測試平臺為新威電池測試儀NEWARE CT-4008-5V12A-TB,如圖2所示。
圖2 電池測試平臺Fig.2 Battery test platform
3.2.1 開路電壓與荷電狀態關系標定實驗
本節選用HPPC工況,采集放電數據,端電壓如圖3所示。
圖3 HPPC端電壓Fig.3 Terminal voltage under HPPC condition
結合基于最小二乘法的8次多項式擬合,得到良好的開路電壓(Open Circuit Voltage, OCV)和荷電狀態SOC函數關系動態擬合效果:
(45)
3.2.2 基于最小二乘算法在線參數辨識
基于最小二乘法的鋰離子電池模型參數辨識算法得到了廣泛的應用。本文使用該算法實現了模型參數在線識別,參數辨識結果見表2。
表2 參數辨識結果Tab.2 Identification result of the parameters
本文選擇 UDDS和DST工況下的實驗數據來對四種算法進行對比仿真驗證,實際SOC值是通過安培小時積分法獲得的。b設置為0.96 ,小采樣周期Δt1設置為1 s,大采樣周期Δt2設置為20 s。
SOC1、SOC2、SOC3、SOC4分別對應安時積分法、單時間EKF算法(Single time EKF, SEKF)、單時間AEKF算法(Sigle time AEKF,SAEKF)、CMAEKF算法的SOC估計。估算誤差Err1~Err3分別與SOC2~SOC4相對應。
圖4為NCR-18650鋰電池在UDDS和DST條件下的電壓和電流變化,SOC估計結果對比和估算誤差對比分別如圖5和圖6所示。圖7為BTCAP-21700鋰電池在UDDS工況下的電壓和電流變化,SOC估計結果對比和估算誤差對比分別如圖8所示。表3和表4為所有模擬結果的平均絕對誤差(Mean Absolute Error, MAE)、均方根誤差(Root Mean Square Error, RMSE)和計算效率的比較。
表3 NCR-18650鋰電池在不同工況下不同算法結果評價Tab.3 Evaluation of different algorithm results of NCR-18650 lithium battery under different working conditions
表4 BTCAP-21700在UDDS工況下不同算法結果評價Tab.4 Evaluation of different algorithm results of BTCAP-21700 under UDDS condition
圖4 不同工況下NCR-18650鋰電池的電壓和電流變化Fig.4 Voltage and current of NCR-18650 lithium battery
圖5 NCR-18650在不同工況下SOC估計效果Fig.5 Results of NCR-18650 SOC estimation
圖6 NCR-18650不同工況下SOC誤差曲線Fig.6 Results of NCR-18650 SOC estimation error
圖7 UDDS工況下BTCAP-21700鋰電池的電壓和電流變化Fig.7 Voltage and current variation of the BTCAP-21700 lithium battery under UDDS condition
圖8 UDDS工況下BTCAP-21700鋰電池的SOC結果Fig.8 Results of BTCAP-21700 SOC estimation under UDDS condition
由圖5、圖6和圖8可以看出,在放電后期,SEKF算法誤差積累明顯,SAEKF算法通過噪聲自適應噪聲矯正,可以有效地減少誤差積累,基于Cholesky分解的多時間尺度AEKF算法在不同工作條件下,都具有一定的精度和穩定性,比較SAEKF算法,能更好地克服濾波發散和計算發散問題,跟蹤SOC真實值變化。在表3和表4中可以看出在不同工況下,即使電池老化,CMAEKF算法的均方根誤差仍然可以控制在0.6% 以下,計算效率可以比普通的AEKF算法提高至少25%。
本文提出了一種基于Cholesky分解原理優化的多時間尺度AEKF的SOC估計方法,通過自適應卡爾曼濾波方法考慮了噪聲的變化,實現了噪聲的自適應矯正。結合Cholesky矩陣分解方法保證了誤差協方差矩陣的非負定性,進而抑制了卡爾曼濾波器的濾波發散和計算發散。在不同工況下不同型號鋰離子SOC估計上誤差都在1%以下,相比傳統的AEKF算法,計算效率可以提高至少25%。該算法在精度、穩定性和計算復雜度上都有明顯優勢。