宋 琴,王順利,于春梅
(1.西南科技大學信息工程學院,四川 綿陽 621010;2.綿陽市產品質量監督檢驗所國家電器安全質量監督檢驗中心,四川 綿陽 621000;3.四川華泰電氣股份有限公司,四川 遂寧 629000)
工業時代,鋰電池已成為了當前新能源汽車的主要動力來源[1]。卡爾曼濾波(Kalman filter,KF)算法以最小均方誤差為最佳估計準則,采用信號與噪聲的狀態空間模型[2],建立模型的狀態方程和觀測方程,推導出狀態變量和觀測變量之間的關系[3],并采用前一時刻的估計值和當前時刻的觀測值來更新狀態變量[4]。但是,在采樣過程中,未知噪聲干擾采樣信號[5]。自適應卡爾曼濾波(adaptive Kalman algorithm,AKF)在采用測量數據進行濾波時,會不斷地由濾波本身判斷系統的動態變化[6-7],對模型參數和噪聲統計特性進行估計和修正,以此改進濾波設計、縮小實際誤差[8-9]。在恒流放電工況下進行仿真驗證,采用1 C倍率的恒定電流對鋰電池進行完全放電試驗,并由混合動力脈沖能力特性(hybrid pulse power characteristic,HPPC)試驗得到電池工作狀態的內部參數[10]。
Thevenin等效電路模型如圖1所示。

圖1 Thevenin等效電路模型
在鋰電池的芯片系統(system on a chip,SOC)估計過程中,電池等效模型的建立起著重要的作用。Rint模型包括理想電壓源和電池內阻,沒有考慮電池的極化特性,而電池在進行過放電和循環放電的過程中,會進行大電流放電產生電池極化,由此估算的SOC值精度會比較低。鋰電池的荷電狀態受溫度、充放電狀態、自放電、老化等因素的影響,內部化學反應多變,其特性又呈高度非線性。這些特點使SOC估計變得困難。比較常用的SOC估計方法有很多。其中:安時積分法(ampere hour,AH)的誤差較大;開路電壓法主要用于離線估計;高精度的SOC估計方法有神經網絡法、模糊推理法、卡爾曼濾波法等。卡爾曼濾波法是最優化自回歸數據處理算法,通過對狀態變量進行實時最優的估計,能夠提高SOC估計的精度。而擴展卡爾曼對非線性函數的泰勒展開式進行一階線性化處理,把剩余的高階項忽略,從而把非線性問題轉化為線性問題,從而將卡爾曼線性濾波算法應用于非線性系統中。鑒于以上分析,選擇Thevenin模型。相較于新一代汽車伙伴計劃(partnership for a new generation of vehicles,PNGV)、非線性(general non-liner,GNL)等模型,Thevenin模型結構簡單,屬于非線性低階模型,涉及參數較少,且精度能達到工程應用的要求。在這基礎上,充分考慮了極化現象同時對電壓和SOC本身的影響,進而建立非線性狀態空間方程,再對SOC進行估計。
圖1中:用直流電壓源Uo來表示開路電壓,用R表示歐姆內阻,用極化內阻R1和極化電容C1并聯表示鋰電池發生的極化現象,用I表示充放電的電流。通過HPPC試驗計算此模型的參數。
歐姆內阻計算式如(1)所示:
(1)
時間常數為:
(2)
極化電阻為:
(3)
極化電容為:
(4)
自適應卡爾曼濾波法是在測量的同時,不斷地通過誤差協方差修正鋰電池SOC的當前值,起到自適應調節的作用。通過對系統噪聲協方差,以及誤差協方差進行實時更新,從而有效地修正當前的估計值。不斷地由濾波本身去判斷系統的動態是否有變化,對模型參數和噪聲統計特性進行估計和修正,以改進濾波設計,進而縮小濾波的實際誤差。該種濾波方法將系統辨識與濾波估計有機地結合為一體。AKF 算法在卡爾曼濾波的基礎上增加了一個對噪聲統計特性的估計。通過測量數據yk對噪聲的均值qk、rk和方差Qk、Rk進行實時估計,再根據實時更新的均值和方差修正當前的狀態估計值,以提高算法精度、規避發散現象。在線性卡爾曼濾波器中,過程噪聲Wk和Vk測量噪聲均值為零,定義Wk、Vk如式(5)所示。
Wk~N(qk,Qk)Vk~N(rk,Rk)
(5)
式中:k為離散時間。
試驗設計的系統噪聲估計器相關量的計算式如式(6)~式(9)所示:
(6)

APk+1AT)GT
(7)
(8)
(9)
式中:“∧”表示該統計量為估計量;xk為系統在k時刻的狀態;yk為對應狀態的觀測信號;uk為系統的輸入量;A為狀態轉移矩陣;B為系統控制矩陣;C為觀測矩陣;G=(ГГT)ГT,Г 為噪聲驅動矩陣。
式(6)~式(9)均為算術平均,(k+1)-1為每一項的加權系數。
在時變系統中,新近數據對系統的影響較大,因此采用指數加權法對估計器進行一定的改進,在式(6)~式(9)中,每個公式均乘以一個不同的指數加權系數β。β滿足的表達式如式(10)所示。
βi=βi-1b
(10)

可進一步得到如式(11)所示的表達式。
(11)
式中:b為遺忘因子,i=0,1,2,...,k。
把原估計器中每項的(k+1)-1替換成βk-1,便得到改進后的時變系統的噪聲估計要求。在線性卡爾曼濾波器基礎上設計的自適應卡爾曼濾波器的具體步驟如下。
(12)
②統計(k+1)時刻的狀態和誤差協方差矩陣,如式(13)、式(14)所示:
(13)
(14)
③根據上一步得到的當前狀態的誤差協方差,計算卡爾曼增益LK,如式(15)所示:
(15)
④據系統的觀測值yk+1,對下個時刻的狀態估計值和誤差協方差矩陣進行更新,如式(16)和式(17)所示:
(16)
Pk+1 | k=(E-LkC)Pk+1 |
(17)
式中:E為單位矩陣。
對rk、qk、Qk和Rk進行相應更新,再返回到步驟①,繼續進行迭代計算,直到滿足要求。
自適應卡爾曼濾波法的工作原理是:確定初始狀態的誤差協方差矩陣,對下一個時刻的誤差協方差矩陣進行更新;再根據當前的誤差協方差計算當前的卡爾曼增益,采用計算的增益再對下一個時刻的狀態估計值和誤差協方差進行估計。
AKF算法流程如圖2所示。

圖2 AKF算法流程圖
采用試驗分析中的HPPC試驗步驟,將試驗獲得的電壓、電流數據導入MATLAB工作平臺,對估算模型進行分析,得到動態測試應力(dynamic stress test,DTS)工況下的估算SOC。將試驗過程中的電池參數電壓、容量和電流經過數學分析,計算得到算法的誤差值。
自適應卡爾曼的Simulink 模型如圖3所示。

圖3 自適應卡爾曼的Simulink 模型
①以1 C的放電倍率進行間歇性放電,根據設定的放電倍率和所需關系坐標點的數量,設定每次循環放電的時間,得到10個關系坐標點。所以每次放電時間為6 min。每次放電結束后擱置1 h,使電池內部的化學狀態穩定得到開路電壓,得到SOC-OCV的曲線關系。
②HPPC方法表現出電池電壓隨電池充電和放電條件的變化,反映了電池在實際操作期間的動態特性。可以根據HPPC測試中輕松確定Thevenin等效電路模型的各項所需的關鍵參數。HPPC測試主要通過充電、放電開始和結束時的瞬間電池端電壓的動態改變,檢測電池內部歐姆電阻值,并在充電和放電之后通過電池端電壓緩慢的變化,檢測并求取內部極化電阻和極化容量值。具體的試驗步驟如下。
首先,對電池進行充電操作,以1/3 C恒定電流,對鋰電電池充電,充電的截止電壓為3.65 V。當電壓充到3.65 V時,繼續以3.65 V的恒定電壓充電。當電池的電流減小到0.05 C的時候停止。此時,電池已經充滿,為使電壓穩定應該擱置電池1 h。然后,以1 C放電10 s,靜置40 s,再以0.75 C充電10 s,在循環測試中,讓鋰離子電池在等間隔SOC點進行動力脈沖測試。測試選取的SOC值是0~1的等間隔的點,相鄰脈沖測試之間電池需要擱置1 h,使電池恢復到電化學平衡和熱平衡狀態。
根據上述試驗步驟,對鋰離子電池進行HPPC測試。不同SOC階段的歐姆內阻R、極化內阻R1、極化電容C1開路電壓E計算如表1所示。

表1 不同SOC狀態下的模型參數
通過Thevenin模型建立的非線性空間方程和根據混合脈沖的充放電試驗,得到0~1的SOC采樣點和對應的實際的電池內阻、極化電容和極化電阻的真實值。
根據前文構建的、基于AKF的鋰電池SOC估計模型,在MATLAB/SIUMLINK建立仿真模型。擬在多種工況試驗條件下,對模型的估算精度、估算過程中的收斂性以及對于真實數據的跟蹤性進行研究,驗證AKF算法在SOC初始值不為1.0時的收斂效果。
將鋰離子電池以1 C倍率恒流放電,每次放電結束擱置40 min后電池的化學反應與熱效應達到平衡。此時,電池電壓就是與當前SOC所對應的OCV值。
從試驗數據中提取這些離散的點,得到OCV-SOC關系曲線如圖4所示。

圖4 OCV-SOC關系變化曲線
根據上述混合脈沖功率特性試驗分析,不同SOC的采樣點電壓變化曲線如圖5所示。

圖5 不同SOC的采樣點電壓變化曲線
鋰電池SOC每降低0.1,便進行一次HPPC充放電試驗。如此可獲得不同SOC狀態下電池的動態響應特性。根據動力鋰電池在工作過程中不同的SOC值,可以得到電池內部的各個參數變化。
從原始數據中抽出所有的電壓數據,描繪出HPPC測試試驗整個過程中的鋰離子電池端電壓變化情況。
從每次恒流放電結束擱置1 h的電壓曲線可以看出,電池電壓在放電結束后經過長時間的擱置會逐漸趨于平穩,表示電池的內部化學反應和熱效應基本達到平衡,所以可以得到開路電壓和SOC的關系曲線。
分別運用AH、擴展卡爾曼濾波(extended Kalman filter,EKF)和無跡卡爾曼濾波(unscented Kalman filter,UKF)方法對鋰電池的SOC進行估計。根據以有的試驗數據和結論表明:在這三種方法中,估算初期AH積分法無法快速收斂跟蹤真實有效的SOC值。其估算誤差遠遠大于EKF以及UKF,且隨著估算時間的加長,誤差越來越大。這是誤差在長時間累積的結果。EKF以及UKF算法都能夠跟蹤到真實SOC值,并且在估算后期誤差穩定。同時,相比較EKF,UKF能夠更快速地收斂跟蹤到真實值,并且后期估算誤差小于EKF。估算誤差維持在2%以內。不同算法比較如圖6所示。

圖6 不同算法比較圖
驗證初始值不為1時,自適應卡爾曼的收斂效果更好。恒流放電下SOC估算及估算誤差如圖7所示。
從圖7中可以看出,自適應卡爾曼濾波能夠跟蹤真實、有效的SOC值,并且效果很好。通過MATLAB繪出AKF的誤差曲線,計算得到AKF的誤差值。

圖7 恒流放電下SOC估算及估算誤差
由試驗數據可分析出各個算法對工作狀態中動力鋰電池的SOC估算的精確值。DST測試下,AH、EKF以及UKF對SOC的估算誤差如表2所示。

表2 DST測試下AH、EKF以及UKF對SOC的估算誤差
通過對比實際的值和由自適應卡爾曼濾波法估算的SOC值,明顯地觀察到預測值可以完美跟隨真實值,并把誤差范圍收斂到0.03%。對比其他幾種SOC的估算方法,AKF能更有效地跟蹤復雜工況下鋰電池的荷電狀態。
電池內阻是參數識別的一個非常重要的方面。混合脈沖特性試驗有方便的測量方法,充放電電池電壓瞬間的變化可以采用歐姆定律,也可以通過時域關系檢測出電池的內部參數。二階RC的Thevenin模型考慮了電池的穩態和瞬態特性。它是一種非線性低階模型,涉及的參數更少,精度更高。對比分析實際的SOC值和預測的SOC值,發現在自適應卡爾曼的誤差范圍小于擴展卡爾曼的誤差范圍。在電池管理系統的采樣過程中,即使是采樣信號受到外界的干擾,當這些干擾在在硬件濾波基礎上加以自適應卡爾曼濾波,能夠降低成本和更易于實現。通過測量數據實時估計荷電狀態的動態變化,可修正噪聲的統計特性。通過試驗數據分析表明,自適應卡爾曼濾波可以將誤差范圍控制在0.03%以內。