楊 睿,張向文,2
(1.桂林電子科技大學(xué)電子工程與自動化學(xué)院,廣西 桂林 541004;2.廣西自動檢測技術(shù)與儀器重點實驗室,廣西 桂林 541004)
能源結(jié)構(gòu)升級和環(huán)境保護(hù)問題日益成為話題,電動汽車及其技術(shù)正在大力發(fā)展,有逐漸取代傳統(tǒng)能源汽車的趨勢。作為現(xiàn)階段給電動汽車提供能量的主要方式,鋰離子電池具有安全性高、壽命長、能量密度高等優(yōu)點[1]。為了給電動汽車提供充足的能量,電動汽車內(nèi)需要放置大量的鋰電池,電池管理系統(tǒng)(BMS)能保證電動車內(nèi)部電池組提供穩(wěn)定的電壓電流輸出和長時間安全高效運行。BMS 通過監(jiān)控和預(yù)測電池荷電狀態(tài)(SOC),不僅能夠延長鋰電池的使用壽命,還可以保證鋰電池在合理的電壓電流區(qū)間工作,避免其出現(xiàn)過充過放現(xiàn)象,從而減少潛在的安全隱患[2-4]。
SOC的定義是電池當(dāng)前剩余電量與電池充滿時電量的比值,但是由于電池的SOC不是一個實際存在的物理量,所以無法通過測量直接獲取,只能通過其他方法對SOC進(jìn)行估計?;谀P偷墓浪惴椒ìF(xiàn)在應(yīng)用較為廣泛,主要的模型有電化學(xué)模型和等效電路模型[5]。電化學(xué)模型的主要特點是精度高,其缺點為模型參數(shù)數(shù)量多、參數(shù)識別困難、運算速度低,不適合應(yīng)用在電動汽車中[6-8]?;诘刃щ娐纺P偷姆椒ú豢紤]電池內(nèi)部的化學(xué)反應(yīng),而是通過端電壓、充放電電流等外部特性將電池轉(zhuǎn)化為由電阻電容之類的電氣元件構(gòu)成的電路模型,然后再對電池的SOC進(jìn)行估計和預(yù)測。
選擇合適的模型能夠在適中的計算復(fù)雜度下準(zhǔn)確模擬電池的動態(tài)特性,也更便于對數(shù)據(jù)進(jìn)行采集和處理。Rint模型將一個電阻直接串聯(lián)在一個理想電壓源上,二者共同構(gòu)成了一個模型結(jié)構(gòu)最為簡單的等效電路模型,但是沒有考慮鋰離子電池的極化和擴(kuò)散現(xiàn)象。文獻(xiàn)[9-10]提出了一階RC 模型,該模型能夠通過使用一個RC 回路來模擬鋰離子電池的充電和放電行為,通過實驗結(jié)果驗證,可以較好地模擬電池外部特性,但缺點是無法反映電池的極化反應(yīng)。文獻(xiàn)[11-12]利用二階RC 等效電路模型來近似等效電池動態(tài)性能,該模型能夠較好地反映電池內(nèi)部的極化反應(yīng)。傳統(tǒng)的等效電路建模方法還可以繼續(xù)進(jìn)行拓展,模型的精度隨著電阻和電容數(shù)量的增多而提高,但與之對應(yīng)的是模型計算復(fù)雜度增加[13]。由于電池內(nèi)部鋰離子擴(kuò)散過程的非線性特點,相比于整數(shù)階微積分,分?jǐn)?shù)階微積分能更準(zhǔn)確地描述鋰電池特性[14]。
相較于多階RC 模型,二階RC 模型的結(jié)構(gòu)簡單,其優(yōu)點是在具有較高精度的同時又保持了比較小的計算復(fù)雜度[15]。為了進(jìn)一步提高等效電路模型的精度,根據(jù)鋰電池在不同充放電階段的特性變化不同,采用分?jǐn)?shù)階微積分理論建立了基于二階RC 模型的電池分段分?jǐn)?shù)階等效電路模型。通過對比電池的實際端電壓曲線辨識分?jǐn)?shù)階階數(shù),通過HPPC 測試辨識模型參數(shù)。針對本文所建立的模型,構(gòu)造分?jǐn)?shù)階卡爾曼濾波(FOKF)算法估計電池的SOC,根據(jù)算法估計的SOC變化調(diào)整等效電路模型參數(shù)和分?jǐn)?shù)階階數(shù)。最后通過實驗驗證了本文建立的模型和算法的有效性。
分?jǐn)?shù)階微積分是分?jǐn)?shù)階建模的基礎(chǔ),有多種不同的定義。G-L 定義可以通過最直接的方法進(jìn)行離散化近似,而RL 定義主要適用于理論方面的分析研究,Caputo 定義更適用于描述微分方程的初值拓展到分?jǐn)?shù)階領(lǐng)域的問題。所以本文選擇G-L 定義進(jìn)行計算,其數(shù)學(xué)表達(dá)式如下:
式中:Dr f(t)算子表示分?jǐn)?shù)階微積分運算;階次r的正或負(fù)則分別對應(yīng)了分?jǐn)?shù)階的微分和積分;t和a分別為微積分上限和下限;h為步長;i=0,1,2...;為二項式系數(shù)。
為了精確地估計鋰電池SOC,電池模型需要在較低的計算復(fù)雜度下更準(zhǔn)確地反映電池的動態(tài)特性,以便于實際工程的應(yīng)用。鑒于分?jǐn)?shù)階微積分在頻域中建立的系統(tǒng)模型能夠更準(zhǔn)確描述電池的非線性特性,本文提出了一種基于二階RC 模型的分段分?jǐn)?shù)階模型,如圖1 所示。圖中:Uoc為電池的開路電壓,當(dāng)電池SOC減小時,開路電壓也會隨之下降;R0為歐姆內(nèi)阻;U0為R0的分壓;第一個RC 回路由R1和C1并聯(lián)構(gòu)成,共同表征活化極化效應(yīng);第二個RC 回路由R2和C2并聯(lián)構(gòu)成,共同表征濃差極化效應(yīng);I為電池的端電流;U1和U2分別為兩個RC 回路上電壓的分壓;n1和n2分別為兩個RC 回路的分?jǐn)?shù)階階數(shù)。
圖1 分段分?jǐn)?shù)階模型
根據(jù)圖1 所示的模型和基爾霍夫定律,其數(shù)學(xué)模型可以描述為:
通過安時積分法計算電池的SOC:
式中:Q為鋰離子電池容量;SOC0為電池初始SOC;t0和t分別為開始和結(jié)束時間。
基于分?jǐn)?shù)階建立電池的狀態(tài)空間方程:
式中:x為狀態(tài)空間的變量,;I為電池電流;y為系統(tǒng)的觀測量,即模型輸出的端電壓,;n為分?jǐn)?shù)階階數(shù)矩陣,;A、B、C、D為系數(shù)矩陣。
電池模型需要辨識的參數(shù)包括R0、R1、R2、C1、C2和Uoc,本文按照《FreedomCAR 電池測試手冊》中的混合脈沖功率特性(HPPC)實驗,以松下NCR18650B 鋰電池為例進(jìn)行測試,電池的標(biāo)稱容量為3 350 mAh,標(biāo)稱電壓為3.6 V。通過BTS-5V12A 電池測試系統(tǒng),分別以4.8 A 的放電脈沖和3.6 A 的充電脈沖在室溫下對電池進(jìn)行實驗。從SOC=1 開始測試,每次測試后對電池進(jìn)行放電,使電池SOC下降0.1,循環(huán)執(zhí)行脈沖測試直到SOC=0,并記錄數(shù)據(jù)。通過HPPC 放電實驗對參數(shù)進(jìn)行辨識,下面以一次循環(huán)的脈沖電壓、電流曲線為例,說明參數(shù)辨識的原理及過程,如圖2 所示。
圖2 一次循環(huán)的脈沖電壓和電流曲線
在進(jìn)行脈沖測試前,電池已經(jīng)進(jìn)行了充分的靜置,所以開路電壓Uoc可取由放電脈沖電流產(chǎn)生壓降之前的靜置電壓。由放電脈沖電流產(chǎn)生的瞬時壓降或充電脈沖產(chǎn)生的瞬時升壓,可以辨識出電池的歐姆內(nèi)阻R0,計算公式為:
將電池的數(shù)學(xué)模型式(2)結(jié)合時間常數(shù)公式τ=RC進(jìn)行求解,可得:
兩次電流脈沖之間這一段電流輸入為0 的靜置時間,可以看作RC 環(huán)節(jié)的零輸入響應(yīng)。將式(7)代入式(3)可得:
將式(9)對電壓變化曲線進(jìn)行擬合即可辨識出U1(0)、U2(0)、τ1、τ2。由于在放電脈沖前電池已進(jìn)行充分靜置,所以放電脈沖時電壓的變化可以看做RC 環(huán)節(jié)的零狀態(tài)響應(yīng),而且在放電脈沖結(jié)束的瞬間,電池極化電壓基本不變,結(jié)合式(7)可得:
式(10)中除R1、R2外均為已知,所以可辨識出R1、R2,再結(jié)合式(8)可辨識出C1、C2。
本文中分?jǐn)?shù)階階數(shù)辨識方法采用粒子群(PSO)算法,因為PSO 算法參數(shù)較少、收斂速度快,且具有記憶效應(yīng)。將模型階數(shù)設(shè)為自變量,通過模型端電壓和電池實際端電壓的均方根誤差值來判斷模型階數(shù)的辨識結(jié)果。PSO 算法的適應(yīng)度函數(shù)為:
式中:N為采樣總數(shù);k為采樣次數(shù);Uk為模型端電壓;volk為電池實際端電壓。
在進(jìn)行模型參數(shù)辨識時,電池的內(nèi)阻在SOC較低時增大趨勢明顯,如圖3 所示??紤]到內(nèi)阻的變化趨勢,且電池在SOC較低時放電電壓下降速度也較快,所以本文選擇以SOC=0.2為分界點,分段對階數(shù)進(jìn)行優(yōu)化。在SOC>0.2 時,兩個RC回路分別為n1、n2。在SOC<0.2 時,兩個RC 回路分別為n3、n4。然后將分段仿真得到的模型端電壓Uk代入到式(11)進(jìn)行參數(shù)優(yōu)化,從而得到更加準(zhǔn)確的等效電路模型,參數(shù)優(yōu)化過程如圖4 所示。
圖3 電池參數(shù)隨SOC的變化曲線
圖4 PSO算法優(yōu)化過程
將式(4)離散化得到:
式中:xk、xk+1分別為k和k+1 時刻的狀態(tài)變量;Ik為k時刻電池電流輸入;yk為k時刻電池端電壓輸出;wk和vk分別為狀態(tài)空間的過程噪聲和測量噪聲;Ak、Bk、Ck、Dk為系數(shù)矩陣。為了更好地模擬電池內(nèi)部參數(shù)隨SOC的變化,本文將辨識的模型參數(shù)進(jìn)行二次插值擬合,狀態(tài)方程的系數(shù)矩陣隨估算的SOC而進(jìn)行變化,從而更真實地模擬電池的實際工作狀態(tài)。
基于G-L 定義,可得到分?jǐn)?shù)階描述:
式中:Ts為系統(tǒng)采樣時間。
取Ts=1 s 則可得到系統(tǒng)離散化方程:
通過k-1 的狀態(tài)和誤差協(xié)方差矩陣,對k時刻的狀態(tài)和誤差協(xié)方差矩陣進(jìn)行時間更新:
卡爾曼增益矩陣Lk為:
再通過k時刻的值對算法進(jìn)行更新,以達(dá)到使估計結(jié)果更準(zhǔn)確的效果。
為了驗證鋰離子電池分段分?jǐn)?shù)階等效電路模型和分?jǐn)?shù)階卡爾曼濾波算法的精度和有效性,通過不同倍率放電實驗對算法進(jìn)行驗證。首先對電池進(jìn)行恒流充電,電流大小設(shè)置為0.5C,直到電池達(dá)到充電截止電壓4.2 V。再以4.2 V 的電壓值對電池進(jìn)行恒壓充電,當(dāng)電流小于0.05C時停止。此時認(rèn)為電池為滿電狀態(tài),電池的SOC=1。將電池充分靜置,直到電池的電壓達(dá)到穩(wěn)態(tài)。對電池進(jìn)行不同倍率放電測試:
(1)設(shè)置電池1C放電20 min,靜置1 h;
(2)設(shè)置電池0.5C放電40 min,靜置1 h;
(3)設(shè)置電池0.25C放電,直至電池電壓降低至放電截止電壓2.5 V 時停止實驗。
將本文建立的電池模型的電流值進(jìn)行同樣設(shè)置,可以得到模型在恒流放電工況下的端電壓值。分段分?jǐn)?shù)階模型端電壓、二階RC 模型端電壓和電池端電壓的實驗參考值如圖5所示,兩者誤差如圖6 所示。
圖5 不同倍率放電工況下電池端電壓實驗參考值和模型端電壓
圖6 模型輸出電壓誤差
實驗結(jié)果表明,在電池SOC較高時,普通二階RC 模型和分段分?jǐn)?shù)階模型都能較好地模擬電池的電壓狀況。但是在電池SOC<0.2 后,二階模型電壓下降過慢,而分段分?jǐn)?shù)階模型在SOC<0.2后電壓變化更接近實際電壓,模型準(zhǔn)確性更好。
FOKF 算法估計的SOC值、EKF 算法估計的SOC值和SOC參考值對比如圖7 所示,SOC參考值通過安時積分法計算得到,兩種算法的絕對誤差如圖8 所示。實驗結(jié)果表明,本文構(gòu)建的FOKF 算法和EKF 算法都能跟蹤SOC的變化過程,F(xiàn)OKF 算法和EKF 算法的均方根誤差分別為0.95%和1.74%,因此,相較于EKF 算法,F(xiàn)OKF 算法的估算精度更高。
圖7 SOC估計值和參考值
圖8 SOC估計誤差
本文依據(jù)電池充放電特性和分?jǐn)?shù)階微積分特性建立了一種分段分?jǐn)?shù)階等效電路模型,經(jīng)過實驗驗證,在SOC<0.2時,相比較于二階RC 模型,它能夠更準(zhǔn)確地模擬電池的充放電特性,模擬電壓變化誤差更小。
基于分段分?jǐn)?shù)階等效電路模型和FOKF 算法進(jìn)行電池SOC估計,根據(jù)算法估計SOC的變化調(diào)整等效電路模型參數(shù)和分?jǐn)?shù)階階數(shù),更好地模擬了電池在充放電過程中外部特性的變化,改進(jìn)了EKF 算法中用固定參數(shù)模擬電池特性的不足。實驗結(jié)果表明,F(xiàn)OKF 算法和EKF 算法的均方根誤差分別為0.95%和1.74%,因此,本文構(gòu)建的FOKF 算法相比EKF算法在精度上有了明顯提高,具有重要的應(yīng)用價值。