基于鋰離子 (Li-ion) 電池單元的電池組廣泛用于各種應(yīng)用,例如:混合動力汽車 (HEV)、電動汽車 (EV)、可供日后使用的再生能源儲存以及用于各種目的(電網(wǎng)穩(wěn)定性、調(diào)峰和再生能源時移等)的電網(wǎng)能源儲存。在這些應(yīng)用中,測量電池單元的充電狀態(tài) (SOC)非常重要。SOC定義為可用容量(單位為Ah),以額定容量的百分比表示。SOC參數(shù)可看作一個熱力學(xué)量,利用它可評估電池的潛在電能。估計電池的運行狀態(tài) (SOH) 也很重要;SOH以新電池為比較標(biāo)準,衡量電池儲存和輸送電能的能力。ADI公司的功率控制處理器ADSP-CM419是處理本文所討論的電池充電技術(shù)的處理器 典范。
本文考察基于庫侖計數(shù)的SOC和SOH估計所用的算法。本文界定了庫侖計數(shù)的技術(shù)環(huán)境要求,并且概要闡述了SOC和SOH參數(shù)的估計方法,具體說來有庫侖計數(shù)法、電壓法和卡爾曼濾波器法。同時介紹了多種用于SOC和SOH估計的商業(yè)解決方案。此外,本文詳細說明了同類最佳的SOC和SOH估計算法,尤其是增強型庫侖計數(shù)算法、通用SOC算法和擴展卡爾曼濾波器算法。最后說明了評估程序及所選SOC和SOH算法的仿真結(jié)果。
電池SOC測量原理
確定電池SOC是一個很復(fù)雜的任務(wù),與電池類型及其應(yīng)用有關(guān),所以近年來開展了許多旨在提高SOC估計精度的開發(fā)和研究工作。精確估計SOC是電池管理系統(tǒng)的主要任務(wù)之一,其有助于改善系統(tǒng)性能和可靠性,并且還能延長電池壽命。事實上,精密估計電池SOC可以避免意料之外的系統(tǒng)中斷,防止電池過度充電和放電(這可能導(dǎo)致電池永久損壞,具體取決于電池的內(nèi)部結(jié)構(gòu))。然而,電池充電和放電涉及到復(fù)雜的化學(xué)和物理過程,在不同工作條件下精確估計SOC并不是輕而易舉的事。
測量SOC的一般方法是非常精確地測量所有工作條件下流入和流出電池組的電量(庫侖)和電流,以及電池組中各電池單元的電壓。然后利用此數(shù)據(jù)和先前加載的與被監(jiān)測電池完全相同的電池組數(shù)據(jù),得出SOC的精確估計。這種計算需要的其他數(shù)據(jù)包括:電池溫度、電池模式(測量時電池是充電還是放電)、電池年齡,以及從電池制造商那里獲得的其他相關(guān)電池數(shù)據(jù)。有時候可以從制造商那里獲得關(guān)于鋰離子電池在不同工作條件下的性能的特性數(shù)據(jù)。確定SOC之后,便由系統(tǒng)負責(zé)在后續(xù)運行中更新SOC,基本上就是計數(shù)流入和流出電池的電量(庫侖)。如果初始SOC的精度不夠高,或者受其他因素影響,比如電池自放電和漏電效應(yīng),那么這種方法的精度可能無法令人滿意。
技術(shù)要求
為了測量典型儲能模塊的SOC和SOH,本文涉及一個庫侖計數(shù)評估平臺的設(shè)計和開發(fā)。本文中的儲能模塊是24 V模塊,通常由7只或8只鋰離子電池組成。評估平臺由以下部分構(gòu)成:硬件系統(tǒng),包括MCU及所需的接口和外設(shè);嵌入式軟件,用于SOC和SOH算法實現(xiàn);以及基于PC的應(yīng)用軟件,用作用戶界面以進行系統(tǒng)配置、數(shù)據(jù)顯示和分析。
評估平臺通過適當(dāng)?shù)?a href="http://ttokpm.com/tags/adc/" target="_blank">ADC和傳感器周期性測量各電池單元的電壓值以及電池組的電流和電壓,并且實時運行SOC估計算法。此算法會使用測得的電壓和電流值、溫度傳感器收集到的和/或PC軟件程序提供的一些其他數(shù)據(jù)(例如來自數(shù)據(jù)庫的建造商規(guī)格)。SOC估計算法的輸出會被送到PC圖形用戶界面以供動態(tài)顯示和數(shù)據(jù)庫更新。
SOC和SOH估計方法概述
SOC和SOH估計主要使用三種方法:庫侖計數(shù)法、電壓法和卡爾曼濾波器法。這些方法適用于所有電池系統(tǒng),尤其是HEV、EV和PV,下面幾節(jié)將分別討論這些方法。
庫侖計數(shù)法
庫侖計數(shù)法也稱為安培時計數(shù)和電流積分法,是計算SOC最常用的技術(shù)。這種方法通過電池電流讀數(shù)對使用時間的積分來計算SOC值。
然后,庫侖計數(shù)法通過累計傳入或傳出電池的電荷來計算剩余容量。這種方法的精度主要取決于對電池電流的精密測量和對初始SOC的精確估計。利用一個預(yù)知容量(可以是存儲器記憶的或通過工作條件初始估計的),電池的SOC可以通過充電和放電電流對運行時間的積分來計算。然而,可釋放的電荷總是少于充放電周期中儲存的電荷。換言之,充電和放電期間會有損耗。這些損耗加上自放電,會引起累計誤差。若要更精確地估計SOC,就必須考慮這些因素。此外,應(yīng)當(dāng)定期重新校準SOC,并應(yīng)考慮可釋放容量的衰減以使估計更準確。
電壓法
電池的SOC(即其剩余容量)可利用受控條件下的放電測試來確定。電壓法利用電池的已知放電曲線(電壓與SOC的關(guān)系)將電池電壓讀數(shù)轉(zhuǎn)換為等效SOC值。然而,由于電池的電化學(xué)動力學(xué)和溫度,電池電流對電壓的影響更嚴重。利用一個與電池電流成比例的校正項來補償電壓讀數(shù),并使用電池開路電壓 (OCV) 與溫度的查找表,可以使這種方法更準確。由于電池需要一個穩(wěn)定的電壓范圍,所以電壓法實現(xiàn)起來很困難。此外,放電測試通常包括一次連續(xù)充電,這太費時,故大多數(shù)應(yīng)用不會考慮。還有一個缺點是測試期間需中斷系統(tǒng)功能(離線方法),這在庫侖計數(shù)法(在線模式)中可以避免。
卡爾曼濾波器法
卡爾曼濾波器是一種可估計任何動態(tài)系統(tǒng)內(nèi)部狀態(tài)的算法,也可用來估計電池SOC。卡爾曼濾波器于1960年問世,用以提供最優(yōu)線性濾波的遞歸解,適合處理狀態(tài)觀測和預(yù)測問題。與其他估計方法相比,卡爾曼濾波器可自動提供關(guān)于自身狀態(tài)估計的動態(tài)誤差界。通過電池系統(tǒng)建模以將所需的未知量(如SOC)包含在其狀態(tài)描述中,卡爾曼濾波器估計其值并給出估計的誤差界。然后,它便成為一個基于模型的狀態(tài)估計技術(shù),利用誤差校正機制來提供對SOC的實時預(yù)測。它可以進行擴展,利用擴展卡爾曼濾波器可以提高其實時估計SOH的能力。特別是電池系統(tǒng)為非線性而需要線性化步驟時,應(yīng)運用擴展卡爾曼濾波器。雖然卡爾曼濾波器是一種在線式動態(tài)方法,但它需要適當(dāng)?shù)碾姵啬P秃途_測定的參數(shù);還需要大規(guī)模計算能力和精確的初始化。
有些文獻中還介紹了其他用于估計SOC的方法,例如阻抗譜法,這種方法基于電池單元阻抗測量,利用阻抗分析儀實時分析充電和放電情況。雖然這種技術(shù)可以用于鋰離子電池的SOC和SOH估計,但它基于儀器外部測量,故本文不予考慮?;陔娊赓|(zhì)物理特性和人工神經(jīng)網(wǎng)絡(luò)的方法不適用于鋰離子電池。
如何選擇SOC和SOH估計方法
選擇合適的SOC估計方法時,應(yīng)考慮多項標(biāo)準。首先,SOC和SOH估計技術(shù)應(yīng)可用于HEV和EV應(yīng)用、可供日后使用的再生能源儲存、電網(wǎng)能源儲存所用的鋰離子電池。此外關(guān)鍵的一點是,所選方法應(yīng)當(dāng)是計算復(fù)雜度低、精度高(估計誤差低)的在線式實時技術(shù)。另外還要求估計方法使用電壓、電流測量值,以及溫度傳感器收集到的和/或PC軟件程序提供的其他數(shù)據(jù)。
增強型庫侖計數(shù)算法
為了克服庫侖計數(shù)法的缺點并提高其估計精度,有人已提出一種增強型庫侖計數(shù)算法來估計鋰離子電池的SOC和SOH參數(shù)。初始SOC從加載的電壓(充電和放電)或開路電壓獲得。損耗通過考慮充電和放電效率來補償。通過對工作電池的最大可釋放容量進行動態(tài)再校準,電池的SOH也可以同時估算出來。這又會進一步提高SOC估計的精度。
技術(shù)原理
工作電池的可釋放容量 (Creleasable) 是指其完全放電時釋放的容量。相應(yīng)地,SOC定義為可釋放容量相對于制造商提供的電池額定容量 (Crated) 的百分比。
圖1為增強型庫侖計數(shù)算法的流程圖。開始時,從相關(guān)存儲器中檢索已用電池的歷史數(shù)據(jù)。而新使用電池則無任何歷史信息可用,假設(shè)其SOH良好,值為100%,SOC通過測試開路電壓或加載電壓(取決于起始條件)來初步估計。
圖1. 增強型庫侖計數(shù)算法流程圖
估計過程基于對電池電壓 (Vb) 和Ib的監(jiān)測。電池工作模式可通過工作電流的大小和方向得知。在放電模式下,DOD累加消耗的電荷;在充電模式下,DOD隨著積聚的電荷進入電池而遞減。用充電和放電效率校正之后,便可實現(xiàn)更精確的估計。然后從SOH中減去DOD量,便可估算出SOC。當(dāng)電池開路,電流為0時,SOC直接從OCV與SOC的關(guān)系得出。
應(yīng)注意,當(dāng)電池完全耗盡或充滿時,可以重新評估SOH;電池的工作電流和電壓由制造商規(guī)定。放電期間,當(dāng)加載電壓 (Vb) 小于下限 (Vmin) 時,說明電池耗盡。這種情況下,電池不能再使用,應(yīng)當(dāng)再次充電。同時,SOH值可以通過耗盡狀態(tài)時的累計DOD重新估算,從而重新校準SOH。另一方面,在充電期間,若 (Vb) 達到上限 (Vmax)且 (Ib) 降至下限 (Imin),則說明所用電池已完全充滿。通過累加充入電池的總電荷獲得新的SOH值,即可算出新的SOC值。實踐中,完全充滿和耗盡的狀態(tài)偶爾會出現(xiàn)。當(dāng)電池經(jīng)常充滿和徹底放電時,SOH評估的精度會提高。
由于計算簡單且硬件要求也不復(fù)雜,故除了電動汽車之外,所有便攜式設(shè)備都能輕松實現(xiàn)增強型庫侖計數(shù)算法。此外,在緊隨SOH重新評估之后的工作周期中,估計誤差可降低到1%。
確定初始SOC
電池有三種工作模式:充電、放電和開路。在充電階段,當(dāng)電池以恒流恒壓 (CC-CV) 模式充電時,制造商通常會說明電池電壓和電流的變化。充電電流恒定時,電池電壓逐漸提高,直至達到閾值。一旦電池以恒壓模式充電,充電電流起先會迅速降低,然后緩慢減小。最后,當(dāng)電池完全充滿時,充電電流趨于0。這一充電曲線在恒流階段可轉(zhuǎn)換為SOC與充電電壓的關(guān)系,在恒壓階段可轉(zhuǎn)換為SOC與充電電流的關(guān)系。充電期間的初始SOC可從這些關(guān)系推出。
在放電階段,電池以不同電流放電時的典型電壓曲線由制造商給出。隨著工作時間的流逝,終端電壓會降低。電流越大,終端電壓下降得越快,故而工作時間越短。這樣便可獲得不同電流下SOC與放電電壓的關(guān)系,進而推知放電階段的初始SOC。
開路階段需要OCV與SOC之間的關(guān)系。在斷開負載之前,電池以不同電流放電。如果休息時間很長,可以利用OCV來估計SOC。
充電和放電效率
電池的工作效率可通過庫侖效率來評估,庫侖效率定義為放電期間可從電池獲取的電荷數(shù)與充電期間進入電池的電荷數(shù)之比。注意,充電和放電效率的系數(shù)來自測試多個電池的平均值。
所有測試電池都以恒定最大速率充電到指定容量(其等于充電速率和充電時間的乘積),然后以恒定最小速率放電到截止電壓。充電效率定義為:
放電效率定義為兩個階段釋放的容量與一個放電周期的Cmax之比。所有測試電池都完全充滿,然后以兩階段電流曲線放電:先以指定電流放電到指定DOD,再以最小速率放電到截止電壓。放電效率的計算公式如下:
其中,I1、I2、T1和T2分別是第一和第二階段中的放電電流和持續(xù)時間。
通用SOC算法
本文提出的通用SOC算法適用于所有類型的電池,尤其是鋰離子電池。采用頻域中的線性系統(tǒng)分析(無電路模型),OCV基于采樣得到的終端電壓和電池放電電流來計算。由于OCV與SOC之間的映射關(guān)系是已知的,且SOC在一定寬度的時間窗口內(nèi)是恒定的,同時電池是一個線性或弱非線性系統(tǒng),所以知道OCV便可推出SOC。
數(shù)學(xué)表述
在每個時間窗口中,電池終端電壓v(t) 可分解為:
其中,vzi(t)為零輸入響應(yīng),對應(yīng)于無放電電流的終端電壓;vzs(t) 為零狀態(tài)響應(yīng),對應(yīng)于有放電電流的終端電壓;i(t) 為電壓源短路時的輸入;h(t) 為模擬電池的線性系統(tǒng)的脈沖響應(yīng)。注意,等式12中卷積的有效性基于線性假設(shè)。
SOC在時間窗口0 ≤ t ≤ tw中推出;當(dāng)t < 0時,放電電流始終為0。這里假設(shè)在t = 0之前,電池斷開負載連接。隨后當(dāng)窗口移動時,不再應(yīng)用該假設(shè)。利用此假設(shè)并忽略自放電效應(yīng),零輸入響應(yīng)便是OCV,即:
注意,f(t) 僅需在該窗口(等式15)中成立。
求解f(t) 的時間離散算法如算法1所示,其中n為窗口中的采樣點總數(shù),t1、t2、…、tn為采樣時間點。核心概念是對樣本進行逆卷積運算。過程與利用初等變換求矩陣的逆矩陣相似。
有了f(t),vf(t) = f(t) × v(t) 便可計算如下:
其中uf(t) = f(t) × u(t)。
算法1. 計算f(t) 的算法
電池的頻域響應(yīng)可視為有限的,根據(jù)終值定理,
這意味著當(dāng)使用一個大t時,h(t) 趨于0,vf(t)/uf(t) 是當(dāng)前時間窗口中OCV的良好近似值。
推出OCV之后,便可獲得系統(tǒng)在當(dāng)前時間窗口中的脈沖響應(yīng):
完成當(dāng)前窗口中的OCV推導(dǎo)之后,在下一窗口中可重復(fù)相同的過程以推出OCV。
算法實現(xiàn)
在算法1中,運行時的瓶頸主要是求解f(t) × i(t) = δ(t) 以得出f(t) 的步驟以及接下來計算vf(t) = f(t) × v(t) 和uf(t) = f(t) × u(t) 的步驟。實際上,這兩步可合并為一步,因為并不需要明確算出f(t)。整個算法如算法2所示,其中n為一個窗口中的總采樣點數(shù)。
算法2. 合并解卷積和卷積步驟的算法
一旦得出OCV,SOC便可利用SOC與OCV的變化關(guān)系而推知。
該算法的時間復(fù)雜度為O(n2),其中n為樣本數(shù)。對不同電池類型和放電電流的實驗證明,SOC可以在線得出,誤差小于4%。
擴展卡爾曼濾波器算法
擴展卡爾曼濾波器可用來直接估計鋰電池組的SOC。假設(shè)電池OCV和SOC之間的關(guān)系是近似線性的,并且隨環(huán)境溫度而變化。這一假設(shè)與電池實際行為一致。電池建模為非線性系統(tǒng),SOC定義為系統(tǒng)狀態(tài),這樣便可運用擴展卡爾曼濾波器。
鋰離子電池模型
圖2所示為鋰電池組的等效電路模型。體電容 (Ccb) 代表電池組儲存容量,表面電容 (Ccs) 代表電池擴散效應(yīng)。電阻 (Ri) 和 (Rt) 分別代表內(nèi)部電阻和極化電阻。體電容和表面電容上的電壓分別用 (Vcb)和 (Vcs) 表示。電池組終端電壓和終端電流分別用 (V0) 和I表示。
圖2. 鋰離子電池組的等效電路模型
該電池模型需要的參數(shù)可由實驗數(shù)據(jù)確定,即在電池連續(xù)放電時通過注入電流脈沖來執(zhí)行OCV測試。
圖2所示模型的特性受以下方程支配:
由以上方程建模的電池系統(tǒng)是非線性的,需應(yīng)用擴展卡爾曼濾波器技術(shù)。
擴展卡爾曼濾波器應(yīng)用
擴展卡爾曼濾波器是卡爾曼濾波器針對非線性系統(tǒng)的擴展。利用擴展卡爾曼濾波器技術(shù),在每個時間步進執(zhí)行線性化過程,用線性時間變化系統(tǒng)近似模擬非線性系統(tǒng)。然后將該線性時間變化系統(tǒng)用在卡爾曼濾波器中,產(chǎn)生一個適用于真正非線性系統(tǒng)的擴展卡爾曼濾波器。像卡爾曼濾波器一樣,擴展卡爾曼濾波器也利用實測輸入和輸出來求出真實狀態(tài)的最小均方誤差估計值,其中假定過程噪聲和傳感器噪聲是獨立的零均值高斯噪聲。
在電池組系統(tǒng)方程28和29中,系統(tǒng)狀態(tài)定義為x1(t) = SOC且x2(t) = Vcs
輸入定義為u(t) = I,輸出為y(t) = V0。電池組系統(tǒng)方程28和29可改寫如下:
其中,x = [x1, x2]T
w和v不僅代表隨機擾動,而且代表參數(shù)d和k變化所引起的誤差。假定w和v均為獨立的零均值高斯噪聲過程,協(xié)方差矩陣分別為R和Q。
函數(shù)ff(x,u) 和g(x,u) 為:
如果函數(shù)f(x,u) 和g(x,u) 在每個樣本步進通過在當(dāng)前工作點進行一階泰勒級數(shù)展開而線性化,則線性化模型為:
其中,Ad ≈ E + TcAk,Bd ≈ TcBk,E為單位矩陣,Tc為采樣周期,Cd ≈ Ck,Dd ≈ Dk。
卡爾曼濾波器是一種最優(yōu)觀測器,其原理如圖3所示,即利用反饋調(diào)整所用模型的不確定變量,使估計輸出與實測輸出之間的實時誤差最小。通過這樣一種模型擬合,可以觀察到無法測量的模型參數(shù)。校正通過一個增益矢量K來加權(quán),K可以校正濾波器的動態(tài)特性和性能。增益根據(jù)每次迭代時狀態(tài)和測量的誤差預(yù)測和不確定性(噪聲)來計算。濾波器動態(tài)控制則是基于狀態(tài)Q和測量R的噪聲矩陣的線性化,以及誤差協(xié)方差矩陣P的線性化。
圖3. 卡爾曼濾波器原理
卡爾曼濾波器算法如圖4所示,分為兩個階段:第一階段涉及矩陣P、Q和R的線性化,第二階段涉及觀測。在每個采樣間隔,觀測包括兩步。第一步,算法預(yù)測當(dāng)前狀態(tài)、輸出和誤差協(xié)方差的值。第二步,利用物理系統(tǒng)輸出測量結(jié)果校正狀態(tài)估計和誤差協(xié)方差。
圖4. 卡爾曼濾波器算法
因此,應(yīng)用擴展卡爾曼濾波器來獲得鋰電池組的SOC估計。此算法的計算復(fù)雜度為O(n3,其中n為測量次數(shù)。實驗結(jié)果顯示,本文提出的基于擴展卡爾曼濾波器的SOC估計方法很有效,可以精確估計電池SOC。它還可用來估計鋰離子電池組的SOH值。
SOC算法選擇
考慮到計算能力、所需精度、實時約束條件和系統(tǒng)環(huán)境等方面的應(yīng)用要求,相比其他算法,增強型庫侖計數(shù)看起來更有優(yōu)勢。事實上,它基于簡單的實時計算,不存在復(fù)雜的硬件約束條件。其復(fù)雜度明顯低于其他算法。此外,增強型庫侖計數(shù)算法的估計誤差很小,因此能夠提供合理的精度。再者,除了制造商提供的數(shù)據(jù)之外,此算法不需要其他額外信息。
增強型庫侖計數(shù)評估
本節(jié)將評估增強型庫侖計數(shù)算法以驗證其精度和性能。事實上,擴展卡爾曼濾波器顯然存在很高的計算復(fù)雜度和復(fù)雜的硬件要求,故而不適合應(yīng)用。為了評估通用SOC算法,我們需要SOC與OCV的關(guān)系曲線,電池數(shù)據(jù)手冊并未提供此曲線。因此,必須獲得此曲線才能評估通用SOC算法。
上文已說明增強型庫侖計數(shù)的第一個評估步驟,接下來在處理電壓和電流的實際實驗測量值時將遇到其他高級步驟。
評估程序
通過增強型庫侖計數(shù)算法仿真獲得的SOC值,與依據(jù)電池數(shù)據(jù)手冊提供的充電和放電曲線推導(dǎo)出的實驗SOC值進行比較。充電和放電曲線也可以利用MATLAB的Simulink模型(MathWorks模型)重新產(chǎn)生;該模型是一個通用動態(tài)參數(shù)化模型,可代表大部分常用類型的可充電電池,尤其是鋰離子電池。
仿真結(jié)果
我們已利用MATLAB仿真工具在充電模式、放電模式以及充放電組合模式下測試了增強型庫侖計數(shù)算法。圖5中的藍色曲線代表實驗SOC,紅色曲線代表增強型庫侖計數(shù)算法所獲得的估計SOC。
圖5. 完整充電階段的實驗和估計SOC
充電模式
圖5顯示了一個完整充電階段的實驗SOC和利用增強型庫侖計數(shù)算法得到的估計SOC。在充電階段結(jié)束時,實驗值與估計值之間的最大誤差約為3.5%。重新評估SOH之后,該誤差會明顯降低。
圖6和圖7分別顯示了充電模式的CC和CV階段實驗和仿真SOC隨時間的變化。重新評估SOH值之前,在算法執(zhí)行結(jié)束時,CC階段可獲得的最大估計誤差小于2%,CV階段小于1%。注意,在SOH重新評估(此時電池完全充滿)之前,估計誤差隨著算法運行時間的延長而提高。還有一點值得注意,那就是精確確定初始SOC對降低估計誤差非常重要。精確評估充電效率也能降低實驗SOC值和仿真SOC值之間的誤差。
圖6. CC充電階段的實驗和估計SOC
圖7. CV充電階段的實驗和估計SOC
放電模式
圖8和圖9分別顯示了完整放電階段和部分放電階段實驗和仿真SOC與電池終端電壓的關(guān)系。對于較長的完整階段,最大估計誤差不超過2%;對于較短的部分放電階段,最大估計誤差幾乎等于0。重新評估SOH值之前,在完整放電階段結(jié)束時,估計誤差達到最大值,并且其隨著算法運行時間的延長而提高。
圖8. 完整放電階段的實驗和估計SOC
圖9. 部分放電階段的實驗和估計SOC
另外還在充放電組合階段評估了增強型庫侖計數(shù)算法,這樣可以重現(xiàn)電池組的真實行為。經(jīng)驗證,估計誤差通常很小 (<4%),足以確保SOC的實時精確估計,且不會干擾電池組運行。
審核編輯:郭婷
-
adi
+關(guān)注
關(guān)注
144文章
45812瀏覽量
248329 -
adc
+關(guān)注
關(guān)注
98文章
6406瀏覽量
543855 -
鋰離子
+關(guān)注
關(guān)注
5文章
533瀏覽量
37568 -
soc
-
動力汽車
+關(guān)注
關(guān)注
0文章
74瀏覽量
13849
發(fā)布評論請先 登錄
相關(guān)推薦
評論