李 巖,韓志剛,蔣乙未,李翔晟,莊偉東
(中南林業(yè)科技大學(xué) 機(jī)電工程學(xué)院,湖南 長(zhǎng)沙 410004)
電池的荷電狀態(tài)(state of charge,SOC)是指電池剩余電量和電池容量的比值,電池SOC的估計(jì)是電池管理系統(tǒng)的核心功能之一,準(zhǔn)確的估算SOC值能夠延長(zhǎng)電池壽命,提高使用的安全性,能有效防止電池過(guò)充過(guò)放,在進(jìn)行能量均衡時(shí),提高電池組的能量利用率[1]。然而電池SOC無(wú)法直接測(cè)量,電池內(nèi)部是封閉的電化學(xué)反應(yīng),電池SOC與外界的溫度、電池內(nèi)部的極化效應(yīng)等很多因素相關(guān),呈現(xiàn)高度非線性,導(dǎo)致SOC的估算難度很大[2]。國(guó)內(nèi)外對(duì)電池SOC估計(jì)方法做了大量研究工作,目前常用的估計(jì)方法[3,4]主要包括安時(shí)積分法、開(kāi)路電壓法、內(nèi)阻法,以及近幾年用到SOC估算中的數(shù)學(xué)方法,主要是神經(jīng)網(wǎng)絡(luò)法和卡爾曼濾波法。安時(shí)積分法是開(kāi)環(huán)方法,對(duì)初始SOC值的精確性依賴(lài)性高,且誤差積累導(dǎo)致后期估算誤差越來(lái)越大[5]。開(kāi)路電壓法需要電池較長(zhǎng)時(shí)間的靜置,使開(kāi)路電壓穩(wěn)定,該方法不適合實(shí)時(shí)估計(jì)。內(nèi)阻法的內(nèi)阻精度難以精確測(cè)量。神經(jīng)網(wǎng)絡(luò)法有較好的應(yīng)用前景,但該方法計(jì)算復(fù)雜,需要大量運(yùn)算數(shù)據(jù),且估算精度與訓(xùn)練方法聯(lián)系較大。卡爾曼濾波法興起于近幾年,是一種利用線性系統(tǒng)的狀態(tài)方程,通過(guò)系統(tǒng)輸入輸出觀測(cè)數(shù)據(jù),對(duì)系統(tǒng)的狀態(tài)進(jìn)行最優(yōu)估計(jì)的算法。雖然電池的狀態(tài)空間模型是非線性的,但是卡爾曼濾波方法能將其線性化,這也是卡爾曼濾波法的一個(gè)顯著特點(diǎn),該方法適用于影響因素較多,且呈現(xiàn)高度非線性關(guān)系的估算[6]。
傳統(tǒng)的卡爾曼濾波法估計(jì)SOC會(huì)受到模型誤差和觀測(cè)噪聲影響,需要進(jìn)行改進(jìn)。目前,擴(kuò)展卡爾曼濾波(extended Kalman filtering,EKF)算法和無(wú)跡卡爾曼濾波(unscented Kalman filtering,UKF)算法應(yīng)用較為廣泛。但EKF在對(duì)系統(tǒng)線性化時(shí)會(huì)引入線性化誤差,影響精度。UKF估算對(duì)比EKF估算精度有很大提高,但估算不穩(wěn)定,不能確定狀態(tài)協(xié)方差的半正定性,導(dǎo)致估算精度會(huì)受到影響。
本文在UKF的算法上通過(guò)改用球型無(wú)跡變換對(duì)權(quán)系數(shù)以及Sigma點(diǎn)進(jìn)行選取,并將該方法與其他方法進(jìn)行仿真對(duì)比,仿真結(jié)果表明該方法的有效性。
鋰電池建模時(shí)準(zhǔn)確估算電池SOC的基礎(chǔ),目前常用的模型包括:內(nèi)阻模型、RC模型、PNGV模型、Thevenin模型等。Thevenin模型機(jī)構(gòu)簡(jiǎn)單,同時(shí)考慮了溫度、電流等影響因素,能夠很好地模擬電池充放電行為,在建模與仿真中應(yīng)用更方便[7,8]。模型如圖1所示。在圖1中Uoc為理想電壓源電壓,R0為電池歐姆內(nèi)阻,R1為電池極化阻抗,C為電池極化電容,u為電池兩端電壓。
圖1 Thevenin模型
模型確定后,要對(duì)模型各參數(shù)進(jìn)行辨識(shí),采用電壓脈沖波形[9]來(lái)得到參數(shù)值。如圖2,是以10 A的恒定電流對(duì)電池脈沖放電。
圖2 端電壓脈沖波形
根據(jù)圖2曲線可以得到V1=25 mV,V2=21 mV,可以得到R0和R1如表1,電壓緩慢上升階段是極化電容放電過(guò)程,利用最小二乘法[10,11]可以估算出電池的極化電容C,模型的參數(shù)值如表1所示。
表1 RC參數(shù)表
EKF和UKF的算法有一些區(qū)別,UKF是應(yīng)用的泰勒展開(kāi)公式,將非線性系統(tǒng)進(jìn)行線性化,但因?yàn)榫_等級(jí)太低,濾波的誤差會(huì)相對(duì)較大,不容易控制。UKF是通過(guò)無(wú)跡變換(unscented transform,UT)[12]的方法達(dá)到對(duì)狀態(tài)分布的逼近,無(wú)跡變換具有很好的期望及方差特性,因?yàn)?,此方法不需要?duì)非線性函數(shù)進(jìn)行計(jì)算求導(dǎo),可以使估算的精度更高和魯棒性更好。但是,UKF在對(duì)協(xié)方差矩陣的Cholesky分解時(shí),要求協(xié)方差矩陣必須為正定矩陣,濾波計(jì)算中隨著迭代計(jì)算積累的舍入誤差會(huì)破壞協(xié)方差矩陣的非負(fù)正定性,使得結(jié)果有波動(dòng)。本文引入了一種平方根UKF算法,利用協(xié)方差平方根代替協(xié)方差參加遞推運(yùn)算,很好地解決了協(xié)方差矩陣非正定的問(wèn)題,并且提高了估算精度[13]。平方根UKF算法對(duì)鋰電池荷電狀態(tài)估算流程如下:
(1)
(2)
式中 chol為標(biāo)準(zhǔn)MATLAB指令,表示Cholesky分解。
2)選取Sigma點(diǎn)
(3)
式中λ=α2(n+k)-n,α為尺度參數(shù);n為系統(tǒng)狀態(tài)變量個(gè)數(shù)。
3)確定加權(quán)系數(shù)
(4)
式中k為二階比例系數(shù),取k=1;β用來(lái)合并先驗(yàn)信息,取β=2。
4)時(shí)間更新
(5)
式中wi為均值權(quán)重,Qk為過(guò)程噪聲方差。
5)測(cè)量更新
(6)
(7)
6)濾波結(jié)果更新
(8)
為了在選取Sigma點(diǎn)和權(quán)系數(shù)時(shí)避免繁瑣的調(diào)節(jié)過(guò)程,本文采用球型無(wú)跡變換選取權(quán)系數(shù)和Sigma點(diǎn),該方法可以減小計(jì)算量,并且比無(wú)跡變換精度,也更穩(wěn)定[14]。
1)權(quán)系數(shù)的選擇
w0∈[0,1)
(9)
(10)
式中w0通常取值為0。
2)球型無(wú)跡變換Sigma點(diǎn)計(jì)算
(11)
(12)
(13)
在SIMULINK中建模并仿真,仿真流程圖如圖3所示。
圖3 仿真流程圖
本文以1 C脈沖電流對(duì)滿(mǎn)荷電量電池放電,溫度設(shè)定為25 ℃,如圖4(a)所示,表示的是仿真得到的電池SOC的估算曲線,電池從0~3 400 s持續(xù)放電,電池SOC從100 %減少到10 %左右,可以看到改進(jìn)UKF值能夠很好地跟隨理論值曲線。
如圖4(b)所示,表示的是誤差曲線,整個(gè)過(guò)程的誤差控制在1 %之內(nèi)。
為了對(duì)比改進(jìn)UKF,標(biāo)準(zhǔn)UKF和EKF的精度,對(duì)鋰電池設(shè)置同樣的初始值和放電實(shí)驗(yàn)。在SIMULINK中仿真得到對(duì)比曲線,如圖4(c)所示,可以看出,三種方法都可以較好地估算電池SOC值,而改進(jìn)UKF估算結(jié)果明顯好于標(biāo)準(zhǔn)UKF和EKF。UKF的誤差最小,始終在1 %之內(nèi),標(biāo)準(zhǔn)UKF最大誤差在2.5 %左右,EKF誤差最大接近4 %。所以可以得出結(jié)論,改進(jìn)UKF估算單體鋰電池SOC時(shí)精度更高。
圖4 仿真結(jié)果
本文是在標(biāo)準(zhǔn)的平方根UKF算法基礎(chǔ)上,加入了球型無(wú)跡變換對(duì)權(quán)系數(shù)及Sigma點(diǎn)的選取,通過(guò)建立電池等效電路模型,并利用最小二乘法對(duì)電池模型的參數(shù)進(jìn)行辨識(shí),最后使用SIMULINK對(duì)電池進(jìn)行建模和仿真。仿真的結(jié)果表明:改進(jìn)后的UKF算法在估算鋰電池SOC時(shí)有更高的精度,通過(guò)對(duì)比可以看出其精度明顯高于EKF算法和標(biāo)準(zhǔn)UKF算法。