王 萍,弓清瑞,程 澤,張吉昂
(天津大學(xué)電氣自動(dòng)化與信息工程學(xué)院,天津 300072)
鋰電池作為一種清潔能源,以其能量密度高、體積小、壽命長(zhǎng)等優(yōu)點(diǎn),被廣泛應(yīng)用于電動(dòng)汽車和電力系 統(tǒng) 等 諸 多 領(lǐng) 域。 電 池 管 理 系 統(tǒng)(battery management system,BMS)可以實(shí)現(xiàn)對(duì)電池的科學(xué)評(píng)估和風(fēng)險(xiǎn)預(yù)警,從而保證電池的穩(wěn)定運(yùn)行。電池荷電狀態(tài)(state of charge,SOC)直接反映了電池的剩余電量,它的準(zhǔn)確估計(jì)是BMS 運(yùn)維的關(guān)鍵環(huán)節(jié)。然而SOC 并不能直接測(cè)量,只能通過電池的外部可測(cè)變量,結(jié)合數(shù)學(xué)算法來推斷。
目前SOC 的估計(jì)方法主要有直接測(cè)量法、數(shù)據(jù)驅(qū)動(dòng)法和基于自適應(yīng)濾波器的方法。
直接測(cè)量法包括安時(shí)積分法和開路電壓法。安時(shí)積分法是通過對(duì)放電過程中電流隨時(shí)間積分來獲得SOC。該方法有簡(jiǎn)單易用的優(yōu)點(diǎn),但十分依賴于SOC 初值的確定,且電流的測(cè)量誤差會(huì)隨時(shí)間累積。開路電壓法是通過測(cè)量電池的開路電壓(open circuit voltage,OCV),通過查詢OCV-SOC 曲線來獲得電池SOC。但該方法須將電池離線后進(jìn)行長(zhǎng)時(shí)間靜置,因而難以用于SOC的在線估計(jì)。
數(shù)據(jù)驅(qū)動(dòng)法是使用機(jī)器學(xué)習(xí)的算法建立電池外部可測(cè)變量如電壓、電流和溫度等參數(shù)與SOC 的映射關(guān)系。機(jī)器學(xué)習(xí)方法主要包括統(tǒng)計(jì)機(jī)器學(xué)習(xí)方法和神經(jīng)網(wǎng)絡(luò)的方法。其中,后者有更靈活的內(nèi)部結(jié)構(gòu),對(duì)非線性關(guān)系的表達(dá)能力也更強(qiáng),應(yīng)用也更廣泛。這類方法無須分析電池復(fù)雜的電化學(xué)反應(yīng),但計(jì)算量較大,且十分依賴于訓(xùn)練集的有效可靠。
基于自適應(yīng)濾波的方法須建立等效電路模型,再結(jié)合濾波算法來實(shí)現(xiàn)SOC 的閉環(huán)估計(jì)。如文獻(xiàn)[11]中使用2 階RC 模型對(duì)鋰電池進(jìn)行建模,并結(jié)合模糊自適應(yīng)卡爾曼濾波器來實(shí)現(xiàn)對(duì)SOC 的實(shí)時(shí)估計(jì)。常用的等效電路模型有PNGV 模型和RC 模型等。常用的濾波算法有觀測(cè)器、粒子濾波器、卡爾曼濾波器等,其中卡爾曼濾波器最為常用,有著許多優(yōu)秀的變型,如擴(kuò)展卡爾曼濾波器、自適應(yīng)擴(kuò)展卡爾曼濾波器和無跡卡爾曼濾波器等。這類方法可以矯正SOC初始值不確定造成的誤差和緩解過程中誤差積累,但對(duì)等效電路的參數(shù)較為敏感。
無跡卡爾曼濾波器(unscented Kalman filter,UKF)因其優(yōu)越的性能被廣泛應(yīng)用。但UKF 存在對(duì)電池模型精度和系統(tǒng)噪聲的要求較高,穩(wěn)定性不強(qiáng)的問題。針對(duì)該問題,本文中引入一般性的濾波器收斂判據(jù),從自適應(yīng)調(diào)整測(cè)量噪聲、調(diào)整過程噪聲和修正卡爾曼增益的角度改進(jìn)UKF,形成了基于自適應(yīng)無跡卡爾曼濾波器(adaptive unscented Kalman filter,AUKF)的SOC 估計(jì)方法。本文利用測(cè)試數(shù)據(jù)和馬里蘭大學(xué)電池?cái)?shù)據(jù)集進(jìn)行了實(shí)驗(yàn),結(jié)果表明所提方法具有較快的收斂速度和較高的估計(jì)精度。
RC 等效電路模型結(jié)構(gòu)簡(jiǎn)單,只需少量的參數(shù)和較低的計(jì)算成本便可完成建模,應(yīng)用廣泛。本文以2階RC 模型為例,展示電池建模和SOC 估計(jì)的過程,模型結(jié)構(gòu)如圖1所示,其狀態(tài)空間數(shù)學(xué)表達(dá)式為
圖1 2階RC模型的結(jié)構(gòu)
式中:表示電池端電流;代表電池端電壓;表示電池的歐姆內(nèi)阻;和并聯(lián)環(huán)節(jié)表示電化學(xué)極化過程,和并聯(lián)環(huán)節(jié)表示濃度差極化過程;表示電池的開路電壓。
本文通過離線實(shí)驗(yàn)對(duì)RC 模型阻容等參數(shù)進(jìn)行辨識(shí),具體包括(·)、、、、和。
本文的實(shí)驗(yàn)對(duì)象是額定容量為3 A·h、標(biāo)稱電壓為3.6 V 的18650 三元鋰離子電池。設(shè)定恒溫箱溫度為25 ℃,采用恒流脈沖(constant current pulse,CCP)測(cè)試進(jìn)行參數(shù)辨識(shí),實(shí)驗(yàn)步驟如下:
①將室溫下充滿電的電池置于恒溫箱內(nèi),靜置1 h,記錄電池的開路電壓;
②以1C恒流放電3 min;
③靜置2 h,記錄電池的靜置電壓;
④重復(fù)過程②和③直至電池放空。
CCP 實(shí)驗(yàn)的電壓和電流全周期和一個(gè)周期的變化曲線如圖2和圖3所示。
圖2 CCP測(cè)試全周期曲線圖
圖3 中A 點(diǎn)之前電池處于靜置狀態(tài);在BC 段,以1C 放電3 min,電壓快速下降,SOC 下降0.05;在DE 段,電池靜置2 h,電流為0,電壓緩慢回升,并逐漸趨于穩(wěn)定。
圖3 CCP測(cè)試一個(gè)周期曲線圖
在CCP 測(cè)試第③步中,取靜置結(jié)束時(shí)刻的E 點(diǎn)電壓值作為當(dāng)前SOC 下的OCV 值。CCP 測(cè)試過程共得到20 個(gè)SOC-OCV 散點(diǎn)。本文將電化學(xué)模型Shepherd、Unnewehr 和Nerst 進(jìn)行組合,得到一種較為理想的開路電壓模型,如式(3)所示,使用最小二乘法來對(duì)其進(jìn)行擬合,從而得到各參數(shù)的辨識(shí)值。
2.3.1的辨識(shí)
分別計(jì)算通電瞬間(AB 段)和斷電瞬間(CD 段)的后,取二者的平均值作為最終值,計(jì)算式為
式中Δ和Δ分別為通電和斷電瞬間電壓變化的絕對(duì)值,分別對(duì)應(yīng)圖3 中AB 段的電壓驟降和CD段的電壓驟升。
2.3.2、、和的辨識(shí)
DE 段可看作是RC 環(huán)節(jié)的零輸入響應(yīng)。D 為起點(diǎn),電容和兩端初始電壓分別為(0)和(0),這時(shí)端電壓表達(dá)式如式(5)所示。使用最小二乘法對(duì)式(5)進(jìn)行擬合,可以得到(0)、(0)以及時(shí)間常數(shù)、的值。
BC 段可看作RC 環(huán)節(jié)的零狀態(tài)響應(yīng)。因?yàn)殡娙蓦妷翰荒芡蛔?,由C 點(diǎn)和D 點(diǎn)的極化電壓相等的關(guān)系可得
式中=3 min。
由式(6)和式(7)可計(jì)算得到和,進(jìn)一步由=×的關(guān)系可得和。
RC 模型的阻容參數(shù)會(huì)隨SOC 的變化產(chǎn)生波動(dòng),使用線性插值法來擬合這種波動(dòng),即
式中:={0.95,0.9,...,0};X為對(duì)應(yīng)的參數(shù)取值序列;為某個(gè)實(shí)際的SOC 值。Interp2 表示2 維線性插值運(yùn)算,即在與距離最近的兩個(gè)參考點(diǎn)之間建立線性模型,將代入獲取此時(shí)的參數(shù)值。
UKF 算法主要包括系統(tǒng)初始化、狀態(tài)預(yù)測(cè)和測(cè)量校正3個(gè)部分。
(1)系統(tǒng)初始化
初始化狀態(tài)量和誤差協(xié)方差矩陣為
用對(duì)稱采樣法生成初始Sigma點(diǎn),其中為尺度參數(shù):
(2)狀態(tài)預(yù)測(cè)
第個(gè)采樣時(shí)刻,Sigma點(diǎn)構(gòu)建的矩陣為
對(duì)式(11)的Sigma點(diǎn)進(jìn)行狀態(tài)方程的處理,并對(duì)時(shí)刻系統(tǒng)狀態(tài)量和誤差方差矩陣進(jìn)行預(yù)測(cè):
式中Q為時(shí)刻的過程噪聲協(xié)方差矩陣。
(3)觀測(cè)校正
計(jì)算時(shí)刻的觀測(cè)量的估測(cè)值:
計(jì)算時(shí)刻觀測(cè)量的方差矩陣為
式中R為時(shí)刻的測(cè)量噪聲協(xié)方差矩陣。
計(jì)算時(shí)刻狀態(tài)量與觀測(cè)量的協(xié)方差為
計(jì)算卡爾曼濾波增益為
更新狀態(tài)量與誤差方差矩陣為
UKF算法能夠?qū)崿F(xiàn)對(duì)系統(tǒng)狀態(tài)的實(shí)時(shí)估計(jì)。但仍存在以下問題:
(1)由于在非線性系統(tǒng)中存在一些不確定因素,導(dǎo)致過程噪聲協(xié)方差矩陣Q和測(cè)量噪聲協(xié)方差矩陣R難以獲得準(zhǔn)確值。而使用經(jīng)驗(yàn)法將它們?cè)O(shè)置為定值則會(huì)影響UKF的估計(jì)精度。
(2)UKF對(duì)RC模型的精度十分依賴,但RC模型的阻容參數(shù)辨識(shí)存在誤差是不可避免的。當(dāng)模型誤差較大和R取值不當(dāng)時(shí),會(huì)通過測(cè)量校正環(huán)節(jié)引入較大的狀態(tài)估計(jì)誤差。
(3)實(shí)際應(yīng)用中常存在SOC 初值存在偏差和測(cè)量噪聲異常擾動(dòng)等突發(fā)情形。常規(guī)的UKF 對(duì)這些情形的自適應(yīng)能力較有限。
3.2.1 測(cè)量噪聲協(xié)方差自適應(yīng)調(diào)整
設(shè)置越大,表明對(duì)測(cè)量值的置信度越低,這會(huì)導(dǎo)致算法初始的收斂速度慢;設(shè)置越小,收斂速度越快,但會(huì)導(dǎo)致SOC 估計(jì)后期的波動(dòng)性較大??梢娺^大或過小的值都會(huì)影響SOC 的整體估計(jì)效果。因此在濾波算法的初始階段設(shè)置較小的值,用表示,使SOC的估計(jì)初值快速向真實(shí)值方向收斂,等到估計(jì)值收斂到真實(shí)值附近時(shí),再切換較大的值,用表示,以降低估計(jì)值的非線性波動(dòng)。和的取值與電壓傳感器的測(cè)量精度有關(guān),所以在SOC 估計(jì)的初始階段,的取值比電壓傳感器精確度低一個(gè)數(shù)量級(jí),過小容易引起估計(jì)值波形在起始階段過沖。則取比傳感器精度高一個(gè)數(shù)量級(jí)的數(shù),過大則會(huì)引起值減小,使測(cè)量校正失去作用。
根據(jù)文獻(xiàn)[21]中提出的濾波器收斂性判據(jù),濾波器發(fā)散時(shí),真實(shí)的估計(jì)誤差要遠(yuǎn)大于計(jì)算得到的預(yù)測(cè)誤差。因此,SOC估計(jì)的發(fā)散條件為
在后續(xù)SOC 的估計(jì)過程中,能通過影響增益,進(jìn)而影響SOC 估計(jì)的測(cè)量校正階段。當(dāng)傳感器測(cè)量誤差較大或RC 模型的誤差較大,即時(shí)刻的觀測(cè)殘差ζ較大時(shí),如果此時(shí)值非0,會(huì)在測(cè)量校正階段引入較大的估計(jì)誤差。因此為該算法設(shè)置第2個(gè)判據(jù):
若式(20)不滿足,即觀測(cè)殘差ζ超過預(yù)設(shè)閾值時(shí),則將設(shè)為無窮大,此時(shí)趨于0,相當(dāng)于只進(jìn)行狀態(tài)預(yù)測(cè)而不進(jìn)行觀測(cè)校正,只有當(dāng)測(cè)量誤差較低和RC模型精度較高時(shí),才同時(shí)進(jìn)行狀態(tài)預(yù)測(cè)和觀測(cè)校正。判據(jù)式(20)的引入,有助于降低UKF對(duì)RC模型精度和傳感器測(cè)量精度的依賴,增強(qiáng)SOC 估計(jì)的穩(wěn)定性。
3.2.2 卡爾曼增益自適應(yīng)調(diào)整
3.2.3 過程噪聲自適應(yīng)調(diào)整
過程噪聲主要反映系統(tǒng)模型的誤差。通過在SOC估計(jì)的過程中動(dòng)態(tài)調(diào)整,使其能充分反映系統(tǒng)模型本身的誤差,以避免模型誤差造成的SOC 估計(jì)精度過多的下降。方法是通過利用多個(gè)之前時(shí)刻的真實(shí)值與估計(jì)值的殘差,對(duì)下一時(shí)刻的Q進(jìn)行遞推:
式中:-<<;e表示在-1~區(qū)間內(nèi),由電壓測(cè)量值與模型估計(jì)值的殘差組成的序列;G表示由e組成的協(xié)方差陣;表示該e序列的長(zhǎng)度,該值越大,越能充分反映系統(tǒng)的模型誤差,但是計(jì)算量也越大。Q由式(24)不斷迭代遞推獲得。
通過在SOC 估計(jì)過程中對(duì)測(cè)量噪聲協(xié)方差、卡爾曼增益和過程噪聲協(xié)方差進(jìn)行自適應(yīng)調(diào)整,形成了AUKF算法,如圖4所示。
圖4 AUKF算法流程圖
利用實(shí)際測(cè)試數(shù)據(jù)和馬里蘭大學(xué)電池?cái)?shù)據(jù)集,對(duì)所提出的AUKF算法的性能進(jìn)行驗(yàn)證。
設(shè)置恒溫箱溫度為25 ℃,對(duì)額定容量為3 A·h、標(biāo)稱電壓為3.6 V 的18650 三元鋰離子電池充滿電后,采用動(dòng)態(tài)應(yīng)力測(cè)試(dynamic stress test,DST)工況進(jìn)行放電,放電過程中電池的電壓電流曲線見圖5。
圖5 DST工況下電壓電流測(cè)試曲線
圖6展示了采用AUKF 和UKF 算法進(jìn)行SOC 估計(jì)的結(jié)果和相對(duì)誤差,圖7 為采用AUKF 算法進(jìn)行SOC 估計(jì)過程中的電壓觀測(cè)值和模型輸出值、擬合誤差即殘差隨放電時(shí)間的變化情況。由圖6 可知,UKF 算法收斂后的相對(duì)誤差在3%以內(nèi),而AUKF 算法收斂后的相對(duì)誤差則更小,接近于零,且具有更快的收斂速度,更高的估計(jì)精度,估計(jì)值曲線更加平滑和穩(wěn)定。圖6 和圖7 右圖的綠色虛線表示發(fā)散與收斂的界限:在它之前的時(shí)刻,由于SOC初始誤差的存在,端電壓的擬合殘差也存在較大偏差,這時(shí)式(19)成立,濾波器處于發(fā)散狀態(tài),此時(shí)選取較小的作為測(cè)量噪聲協(xié)方差,之后的時(shí)刻AUKF 收斂,選取較大的作為測(cè)量噪聲協(xié)方差。圖7右圖的紅色和藍(lán)色虛線分別表示電壓正閾值和負(fù)閾值,閾值設(shè)為0.03 V。在濾波器收斂后的SOC 估計(jì)過程中,由于傳感器測(cè)量精度或RC 模型本身的誤差造成一些時(shí)刻的觀測(cè)殘差大于閾值,則這些時(shí)刻的設(shè)為無窮大,只進(jìn)行狀態(tài)預(yù)測(cè)而不進(jìn)行狀態(tài)校正。
圖6 SOC估計(jì)結(jié)果與誤差(SOC0=0.8)
圖7 電壓觀測(cè)值、模型輸出值和殘差的時(shí)間歷程(SOC0=0.8)
為定量刻畫算法的收斂性能,定義“跟隨系數(shù)”為SOC 真實(shí)值與估計(jì)值的誤差絕對(duì)值小于0.02 所用的時(shí)間與放電總時(shí)間的比值。表1 列出跟隨時(shí)刻之后的平均絕對(duì)誤差(mean absolute error,MAE)和均方根誤差(root mean squared error,RMSE)及跟隨系數(shù)。
表1 SOC估計(jì)誤差和跟隨系數(shù)
為進(jìn)一步驗(yàn)證不同的SOC估計(jì)初值對(duì)兩種算法的影響,取=0.5,得到圖8 和圖9。由仿真測(cè)試結(jié)果可知,取較小的SOC估計(jì)初值時(shí),兩種算法下的收斂時(shí)間均會(huì)變長(zhǎng),跟隨系數(shù)都有所增加,圖8 和圖9 的綠色虛線也更加靠右。其中UKF 的跟隨系數(shù)增加幅度更大,表明UKF 算法抵抗初值不確定性的穩(wěn)定性較差。雖然AUKF 算法的估計(jì)誤差與初值為0.8 時(shí)相比略有增加,但估計(jì)誤差MAE 與RMSE 仍保持在較低水平。
圖8 SOC估計(jì)結(jié)果與誤差(SOC0=0.5)
圖9 電壓觀測(cè)值、模型輸出值和殘差的時(shí)間歷程(SOC0=0.5)
為進(jìn)一步驗(yàn)證所提出的AUKF 算法對(duì)不同SOC初值的收斂能力,取為0.2、0.4、0.6 和0.8 進(jìn)行仿真測(cè)試,得到結(jié)果如圖10 所示。估計(jì)誤差和跟隨系數(shù)列于表2 中??芍煌琒OC 估計(jì)初值下,AUKF 均能可靠收斂,跟隨系數(shù)都保持在0.07以內(nèi)。隨著初始誤差增大,跟隨系數(shù)升高,總體MAE 和RMSE 誤差增大,但最大值都不超過1%。這表明所提出的AUKF 算法具有較高的估計(jì)精度和較好的魯棒性。
表2 不同SOC估計(jì)初值下的計(jì)算誤差和跟隨系數(shù)
圖10 不同SOC估計(jì)初值下的估計(jì)效果與誤差
馬里蘭大學(xué)電池?cái)?shù)據(jù)集使用額定容量為2 A·h、標(biāo)稱電壓為3.6 V 的18650 三元鋰離子電池進(jìn)行試驗(yàn)。該數(shù)據(jù)集中提供了電動(dòng)汽車常用的測(cè)試工況數(shù)據(jù),如US06 工況、聯(lián)邦城市行車(federal urban driving schedule,F(xiàn)UDS)工況、北京動(dòng)態(tài)應(yīng)力測(cè)試(Beijing dynamic stress test,BJDST)工況。因此,該數(shù)據(jù)集很適合驗(yàn)證本文提出的基于AUKF 的SOC 估計(jì)方法。需要注意的是,該數(shù)據(jù)集中的測(cè)試電池是從約80%額定容量時(shí)開始放電,在約為20%額定容量時(shí)放電結(jié)束,該放電區(qū)間也是電動(dòng)汽車實(shí)際應(yīng)用中最常用的放電區(qū)間。取=0.6,各動(dòng)態(tài)工況的SOC 估計(jì)結(jié)果和誤差分別如圖11~圖13 所示,其MAE 和RMSE 計(jì)算誤差與跟隨系數(shù)列于表3 中。可以看到,在3種不同測(cè)試工況下,與UKF相比,AUKF具有更小的跟隨系數(shù)和估計(jì)誤差,表現(xiàn)出更加優(yōu)越的性能。
圖11 SOC估計(jì)結(jié)果和誤差(US06工況)
圖12 SOC估計(jì)結(jié)果和誤差(FUDS工況)
圖13 SOC估計(jì)結(jié)果和誤差(BJDST工況)
表3 馬里蘭數(shù)據(jù)集上的SOC估計(jì)誤差與跟隨系數(shù)
首先介紹RC等效電路模型及其數(shù)學(xué)描述,完成了參數(shù)辨識(shí)和模型建立工作,并提出了一種阻容參數(shù)的二維插值方法,對(duì)阻容參數(shù)隨SOC 的變化進(jìn)行建模。其次針對(duì)常規(guī)UKF 存在的問題,提出了一種AUKF 算法,該方法將濾波器的一般性收斂判據(jù)引入U(xiǎn)KF 中,并通過對(duì)測(cè)量噪聲協(xié)方差、過程噪聲協(xié)方差和卡爾曼增益進(jìn)行自適應(yīng)調(diào)整,提升了濾波算法的穩(wěn)定性和收斂性,降低了對(duì)電路模型精度的依賴。最后在實(shí)際測(cè)試數(shù)據(jù)的DST 工況、馬里蘭大學(xué)電池?cái)?shù)據(jù)集的3 種循環(huán)工況中進(jìn)行實(shí)驗(yàn)驗(yàn)證。結(jié)果表明在不同的測(cè)試工況下,與常規(guī)UKF 算法相比,所提出的AUKF 算法皆具有較高的估計(jì)精度、較小的跟隨系數(shù)和較平穩(wěn)的估計(jì)曲線。