凌六一,何業(yè)梁,宮 兵,邢麗坤
(1.安徽理工大學(xué)電氣與信息工程學(xué)院, 安徽 淮南 232001;2.安徽理工大學(xué)人工智能學(xué)院, 安徽 淮南 232001)
準(zhǔn)確估計(jì)SOC是優(yōu)化鋰電池充放電操作的重要環(huán)節(jié)。鋰電池SOC無(wú)法直接測(cè)量,通常需要通過(guò)電池端電壓和電流進(jìn)行間接估計(jì),如早期的庫(kù)倫計(jì)數(shù)法、交流阻抗法、開(kāi)路電壓法等,然而由于電池內(nèi)部復(fù)雜的化學(xué)特性以及噪聲影響,導(dǎo)致這些方法的估計(jì)誤差偏大,約為5%~10%,而且某些方法如開(kāi)路電壓法并不適合SOC在線估計(jì)??柭鼮V波可以有效處理噪聲問(wèn)題,自Plett[1]在2004年首次將擴(kuò)展卡爾曼濾波(extended Kalman filter, EKF)引入到電池管理系統(tǒng)中以來(lái),很多學(xué)者將EKF及其變種廣泛應(yīng)用到了電池SOC估計(jì)中。如Wang等人[2-5]使用雙EKF對(duì)電池SOC進(jìn)行準(zhǔn)確估計(jì);Mawonou等人[6-7]以分?jǐn)?shù)階模型對(duì)電池建模,采用分?jǐn)?shù)階EKF算法對(duì)SOC進(jìn)行估計(jì);Chen等人[8-12]將EKF與模糊算法、神經(jīng)網(wǎng)絡(luò)算法、粒子濾波算法、遺傳算法等相結(jié)合,來(lái)實(shí)現(xiàn)電池SOC的精確估計(jì),誤差降低至5%以下。
傳統(tǒng)EKF狀態(tài)方程中的過(guò)程噪聲以及觀測(cè)方程中的觀測(cè)噪聲,都是假設(shè)它們是均值為零的高斯白噪聲,實(shí)際應(yīng)用時(shí)通常將噪聲協(xié)方差矩陣設(shè)為常數(shù),這種處理都會(huì)導(dǎo)致電池SOC估計(jì)誤差產(chǎn)生。為此,本文從噪聲處理角度出發(fā),對(duì)傳統(tǒng)擴(kuò)展卡爾曼濾波算法進(jìn)行優(yōu)化,運(yùn)用自適應(yīng)EKF算法對(duì)系統(tǒng)噪聲統(tǒng)計(jì)特性進(jìn)行實(shí)時(shí)更新,以期提高系統(tǒng)噪聲模型的精度及對(duì)系統(tǒng)噪聲的自適應(yīng)能力。以單體鋰電池為測(cè)試對(duì)象,結(jié)合二階RC電路模型,開(kāi)展了模擬UDDS(Urban Dynamometer Driving Schedule)工況下的SOC估計(jì)實(shí)驗(yàn)。
電池等效模型主要分為電化學(xué)模型、等效電路模型和神經(jīng)網(wǎng)絡(luò)模型[13-14]。本文選擇二階RC電路作為鋰離子電池等效模型。圖1中,Uocv為電池開(kāi)路電壓;U0為電池端電壓;R0為電池歐姆內(nèi)阻;R1、R2和C1、C2構(gòu)成的兩個(gè)RC網(wǎng)絡(luò)分別用來(lái)描述電池內(nèi)部的電化學(xué)極化和濃度差極化現(xiàn)象。
1)實(shí)驗(yàn)裝置
實(shí)驗(yàn)裝置如圖2所示,主要由電子負(fù)載儀(ITECH,IT8512C)、數(shù)據(jù)采集卡(NI,USB-6210)、恒溫箱、示波器(泰克,MSO 2024B)以及計(jì)算機(jī)等組成。電子負(fù)載儀用于產(chǎn)生鋰電池恒定電流或脈沖電流;數(shù)據(jù)采集卡由計(jì)算機(jī)端數(shù)據(jù)采集軟件進(jìn)行控制,負(fù)責(zé)采樣電池端電壓(電流);恒溫箱用于控制鋰離子電池工作時(shí)的環(huán)境溫度;示波器用于觀測(cè)電池電壓和電流波形。
圖2 實(shí)驗(yàn)裝置實(shí)物照片
2)確定OCV-SOC關(guān)系曲線
以容量為3 000mAh的單體鋰離子電池NCR18650BD為實(shí)驗(yàn)對(duì)象,通過(guò)放電實(shí)驗(yàn)獲得不同SOC時(shí)的OCV。實(shí)驗(yàn)時(shí),電池放置在20℃的恒溫箱中,因此不考慮溫度對(duì)電池參數(shù)辨識(shí)的影響。放電電流倍率選擇0.5C,電池放電截止電壓為2.8V。在放電實(shí)驗(yàn)前,先將電池充滿電,靜置3h后記錄SOC=1時(shí)的電池開(kāi)路電壓,之后對(duì)電池以0.5C放電12min,靜置3h后記錄SOC=0.9時(shí)的電池開(kāi)路電壓,重復(fù)放電過(guò)程,直到記錄SOC=0.1時(shí)的開(kāi)路電壓為止。以SOC為自變量、OCV為因變量,通過(guò)8次多項(xiàng)式擬合離散數(shù)據(jù),即可得到OCV-SOC之間的關(guān)系曲線。
3)電路參數(shù)辨識(shí)
通過(guò)分析電池脈沖放電時(shí)的端電壓,并結(jié)合最小二乘法得到不同SOC值時(shí)的R0、R1、R2和C1、C2參數(shù)值。脈沖放電電流倍率選擇1C,從電池滿電(SOC=1)開(kāi)始,重復(fù)9次脈沖放電序列,每次序列放電SOC減少0.1。具體單次放電序列為:先持續(xù)放電10s,然后靜置15min,再放電350s,再靜置30min。
下面以分析SOC=0.8時(shí)的電池端電壓響應(yīng)曲線為例,給出電路參數(shù)的辨識(shí)過(guò)程。如圖3所示,在電池開(kāi)始放電瞬間,端電壓由U1突變到U2,由于電路模型中電容電壓不能突變,因此端電壓的突變是由內(nèi)阻R0上的壓降引起,突變電壓△U與內(nèi)阻R0和放電電流I(=3A)成線性關(guān)系,即
R0=ΔU/I
(1)
圖3 SOC=0.8時(shí)電池端電壓響應(yīng)曲線
由于每次脈沖放電之前都對(duì)電池進(jìn)行了長(zhǎng)時(shí)間靜置,電路模型中的電容電荷為零,因此10s放電期間的電池端電壓(U2→U3)可視為零狀態(tài)響應(yīng),放電結(jié)束時(shí)電路已處于穩(wěn)態(tài), 即電容C1和C2充電已基本結(jié)束,電容兩端電壓分別近似為R1I和R2I。放電結(jié)束后電池處于靜置狀態(tài),放電電流為零,靜置期間的電池端電壓(U4→U5)可視為零輸入響應(yīng),可表示為
(2)
對(duì)電池端電壓曲線(U4→U5)按照式(2)進(jìn)行最小二乘擬合,便可得到R1、R2、C1和C2等參數(shù)值。表1給出了實(shí)驗(yàn)獲得的不同SOC下的二階RC電路參數(shù)。
表1 不同SOC下的電池等效模型電路參數(shù)
以SOC為自變量,電路各參數(shù)分別為因變量,進(jìn)行數(shù)據(jù)點(diǎn)的多項(xiàng)式擬合,構(gòu)建出如下的八次多項(xiàng)式函數(shù)
y(soc)=a8soc8+a7soc7+…+a2soc2+
a1soc+a0
(3)
最終得到的電路各參數(shù)與SOC的擬合多項(xiàng)式系數(shù)如表2所示。
表2 電路參數(shù)與SOC擬合的多項(xiàng)式系數(shù)
在Matlab/Simulink仿真環(huán)境下建立電池仿真模型,驗(yàn)證二階RC電路模型及參數(shù)辨識(shí)的準(zhǔn)確性。模型輸入為脈沖放電電流序列,具體為:從電池滿電開(kāi)始,按0.5C倍率先放電10s,然后靜置90s,再按0.5C倍率放電710s,再靜置90s,按此序列重復(fù)9次,直至電池SOC變?yōu)?.1,模型輸出為電池端電壓。圖4給出了實(shí)際測(cè)量的電池端電壓與模型輸出兩者對(duì)比,以及模型輸出值的相對(duì)誤差。
圖4 脈沖放電時(shí)電池端電壓實(shí)測(cè)值與模型輸出值對(duì)比
從圖4可以看出, 仿真模型輸出與實(shí)測(cè)端電壓變化趨勢(shì)吻合, 絕對(duì)誤差變化范圍為-108~+17mV。從電池滿電到接近空電整個(gè)放電過(guò)程中,仿真模型輸出電池端電壓最大相對(duì)誤差不超過(guò)3.2%,說(shuō)明電池建模與參數(shù)辨識(shí)具有較高的準(zhǔn)確性,可用作SOC估計(jì)的等效電路模型。
基于二階RC等效電路模型,利用卡爾曼濾波算法對(duì)電池SOC進(jìn)行估計(jì)時(shí),通常以SOC、電容兩端電壓U1、U2為狀態(tài)變量,建立的電池模型狀態(tài)方程可表示為
(4)
式中:Δt為電壓(電流)采樣周期,U1,k、U2,k分別為極化電容C1、C2上的電壓,ik為干路電流,U0,k為電池端電壓,UOCV,k為開(kāi)路電壓。
EKF算法利用泰勒公式對(duì)鋰電池非線性系統(tǒng)的狀態(tài)空間方程進(jìn)行線性化。非線性離散系統(tǒng)的狀態(tài)空間方程一般為
(5)
式中:xk和yk分別表示k時(shí)刻的系統(tǒng)狀態(tài)變量和測(cè)量變量;uk表示k時(shí)刻系統(tǒng)的輸入變量;wk和vk分別表示過(guò)程噪聲和測(cè)量噪聲,為互不相關(guān)的零均值高斯白噪聲;Ak是狀態(tài)轉(zhuǎn)移矩陣,Bk是輸入矩陣,Ck是輸出矩陣,Dk是前饋矩陣。
對(duì)照式(4)和(5),可定義濾波算法的狀態(tài)變量xk為
xk=[SOCk,U1,k,U2,k]T
(6)
則可知
(7)
由于式(4)中的電池端電壓U0,k包含UOCV,k子項(xiàng),雖然UOCV,k可以表示成SOCk的8次多項(xiàng)式函數(shù)表達(dá)式,但它們之間卻是非線性關(guān)系,因此常規(guī)卡爾曼濾波算法無(wú)法將U0,k表示為式(5)下端公式的形式。而擴(kuò)展卡爾曼濾波算法的思想是將非線性問(wèn)題線性化,即利用泰勒公式將UOCV,k展開(kāi)成SOCk的線性表達(dá)式
(8)
(9)
基于EKF算法的SOC估計(jì)流程如下
第一步:初始化狀態(tài)變量和協(xié)方差矩陣P
(10)
第二步:更新?tīng)顟B(tài)變量預(yù)測(cè)估計(jì)
(11)
第三步:更新?tīng)顟B(tài)協(xié)方差預(yù)測(cè)估計(jì)
(12)
第四步:計(jì)算卡爾曼增益
(13)
第五步:狀態(tài)變量最優(yōu)估計(jì)
(14)
第六步:誤差協(xié)方差最優(yōu)估計(jì)
Pk=(I-KkCk)Pk/k-1
(15)
第七步:判斷k是否達(dá)到條件停止,如果沒(méi)有,則對(duì)k累加1,并返回第二步進(jìn)行循環(huán),直至達(dá)到停止條件。
AEKF算法在狀態(tài)估計(jì)時(shí),根據(jù)每一步測(cè)量數(shù)據(jù)的變化,同時(shí)估計(jì)和修正系統(tǒng)的過(guò)程噪聲和測(cè)量噪聲的統(tǒng)計(jì)特性。假設(shè)過(guò)程噪聲wk和測(cè)量噪聲vk是相互獨(dú)立,qk和Qk分別為它們的估計(jì)平均值和協(xié)方差。由于噪聲均值不為0,AEKF中的狀態(tài)變量估計(jì)變?yōu)?/p>
(16)
誤差則更新為
(17)
噪聲參數(shù)估計(jì)更新為
(18)
式中:G=( ГTГ )-1ГT,dk=(1-b)(1-bk+1),i=0,1,2...,k。Г為噪聲驅(qū)動(dòng)矩陣,dk與遺忘因子b及k有關(guān),是估計(jì)器的系數(shù),通常取0.953 實(shí)驗(yàn)結(jié)果及討論
3.1 模擬實(shí)際工況
以美國(guó)城市循環(huán)工況(UDDS)模擬實(shí)際工況,評(píng)估AEKF在復(fù)雜工況下對(duì)鋰電池的SOC估計(jì)性能。通過(guò)電動(dòng)汽車仿真軟件(ADVISOR)得到電動(dòng)汽車在UDDS下的負(fù)載電流數(shù)據(jù)??紤]到實(shí)驗(yàn)鋰電池的極限放電電流(10A)和極限充電電流(1.5A),為保證電池安全工作, 將工況負(fù)載電流數(shù)據(jù)縮小到1/14, 此時(shí)電池執(zhí)行一次工況, 電池SOC減少約0.08。為了增大SOC的估計(jì)范圍,電池連續(xù)循環(huán)執(zhí)行12次工況,采集模擬實(shí)際工況下的電池端電壓和電流數(shù)據(jù)見(jiàn)圖5。
圖5 模擬UDDS工況下鋰電池電流和電壓波形
將模擬實(shí)際工況下的電池電流和電壓數(shù)據(jù)作為AEKF和EKF算法的輸入,算法運(yùn)行后狀態(tài)變量中的SOC估計(jì)結(jié)果與安-時(shí)積分法理論計(jì)算值的數(shù)據(jù)對(duì)比見(jiàn)圖6。
圖6 AEKF和EKF的SOC估計(jì)結(jié)果及相對(duì)誤差對(duì)比
從圖6中可以看出,鋰電池SOC在0.15~1之間連續(xù)變化時(shí),應(yīng)用AEKF和EKF算法對(duì)SOC的估計(jì)結(jié)果均與理論計(jì)算值較接近,表現(xiàn)出較好的動(dòng)態(tài)性能。從SOC估計(jì)的趨勢(shì)上看,AEKF算法估計(jì)結(jié)果更加準(zhǔn)確。為定量分析兩種算法對(duì)SOC的估計(jì)精度,圖6還給出了這兩種算法對(duì)模擬實(shí)際工況下的電池SOC估計(jì)相對(duì)誤差。隨著工況循環(huán)的推進(jìn),電池SOC越來(lái)越低,AEKF和EKF算法的估計(jì)誤差也呈增長(zhǎng)趨勢(shì),當(dāng)SOC下降到最小值0.15時(shí),SOC估計(jì)相對(duì)誤差達(dá)到最大,EKF算法的估計(jì)誤差達(dá)到了12.8%,誤差偏大可能與噪聲協(xié)方差初始賦值設(shè)置不當(dāng)有關(guān),整個(gè)工況下SOC估計(jì)相對(duì)誤差均方根為4.94%。而此時(shí)AEKF算法的估計(jì)誤差只有3.9% (絕對(duì)誤差為0.006 1), 整個(gè)工況下SOC估計(jì)相對(duì)誤差均方根為1.39%。 對(duì)比相似實(shí)驗(yàn)對(duì)象和實(shí)驗(yàn)條件下的其他SOC估計(jì)方法的誤差, 如文獻(xiàn)[15]的分?jǐn)?shù)階EKF, 誤差均方根為1.45%;文獻(xiàn)[16]使用一階RC電路模型結(jié)合AEKF,誤差均方根為4.1%。這些方法的估計(jì)誤差均高于本文所提方法,說(shuō)明用二階RC電路來(lái)等效電池模型比一階電路更加準(zhǔn)確,同時(shí)AEKF算法對(duì)系統(tǒng)噪聲有更強(qiáng)的自適應(yīng)性和濾波效果,更適用于復(fù)雜工況下的電池SOC估計(jì)。
本文采用傳統(tǒng)EKF和噪聲模型實(shí)時(shí)更新的自適應(yīng)AEKF算法對(duì)電池SOC進(jìn)行了估計(jì)。實(shí)驗(yàn)結(jié)果表明,在復(fù)雜工況和系統(tǒng)噪聲模型不確定的情況下,AEKF算法具有更高的估計(jì)精度,SOC誤差均方根由4.94%下降到1.39%,表現(xiàn)出較好的自適應(yīng)性。