郭邦軍 ,李家琦 ,馬小樂 ,王 芳
[1.上海交通大學(xué)機(jī)械與動(dòng)力工程學(xué)院,上海 200240;2.中汽研新能源汽車檢驗(yàn)中心(天津)有限公司,天津 300300;3.中國汽車技術(shù)研究中心有限公司,天津 300300]
容量可反映電池的健康狀態(tài)(SOH),準(zhǔn)確估計(jì)容量對(duì)電池的安全使用和車輛的可靠運(yùn)行十分重要。電池可用容量估計(jì)不準(zhǔn)確,會(huì)直接導(dǎo)致荷電狀態(tài)(SOC)估計(jì)不準(zhǔn)確,增加用戶的里程焦慮。充分利用聯(lián)網(wǎng)數(shù)據(jù)獲得電池的容量等信息,是當(dāng)前研究的熱點(diǎn)。現(xiàn)有的基于機(jī)器學(xué)習(xí)或深度學(xué)習(xí)的方法,大多從電池的恒流(CC)-恒壓(CV)充電數(shù)據(jù)來估計(jì)容量。D.Yang 等[1]從CC-CV 曲線上提取曲線垂線和切線斜率,以及恒流段和恒壓段持續(xù)時(shí)間等特征,用高斯過程回歸學(xué)習(xí)各特征與電池容量的關(guān)系,所得容量估計(jì)誤差低于4%。C.Lu 等[2]從充、放電曲線上提取4 種幾何特征,用流形學(xué)習(xí)的方式估計(jì)電池容量,最大誤差為3.84%。S.Shen 等[3]使用深度卷積網(wǎng)絡(luò),讓模型自動(dòng)從電池CC-CV 充電曲線上提取特征,與人工提取特征相比,容量估計(jì)精度可達(dá)3.26%。
現(xiàn)有的基于高斯回歸模型方法和最小二乘法,可在CCCV 方式充電、1C倍率充電和25 ℃恒溫條件下,由等效電路參數(shù)等特征精確估計(jì)電池的容量[4-5]。這些方法在實(shí)際應(yīng)用時(shí),可能會(huì)遇到一些問題,如充電方式不一定是CC-CV,溫度不一定是25 ℃等。現(xiàn)有的新能源汽車動(dòng)力電池系統(tǒng)一般配備恒溫系統(tǒng),放電時(shí)電池溫度相對(duì)穩(wěn)定,為此,本文作者提出使用電池放電數(shù)據(jù)估計(jì)容量。考慮到放電時(shí)負(fù)載電流不是恒定的,放電電流隨機(jī)性較強(qiáng),使用循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)學(xué)習(xí)預(yù)測電池的放電電壓序列。在變電流放電數(shù)據(jù)上完成RNN 訓(xùn)練后,將恒流放電的電流、溫度和放電量等數(shù)值序列輸入網(wǎng)絡(luò),得到預(yù)測的恒流放電電壓序列。之后,根據(jù)電池的恒流放電循環(huán)老化實(shí)驗(yàn)數(shù)據(jù),定義從恒流放電電壓曲線上提取的相應(yīng)特征,使用支持向量回歸(SVR)模型學(xué)習(xí)所提取特征與電池容量的函數(shù)映射關(guān)系。
RNN 是一種適合處理時(shí)間序列數(shù)據(jù)的深度學(xué)習(xí)模型,可用來學(xué)習(xí)輸入序列到輸出序列的函數(shù)關(guān)系[6]。RNN 的基本思想是權(quán)值共享,即任意時(shí)刻的輸入都經(jīng)過同一個(gè)網(wǎng)絡(luò),并且網(wǎng)絡(luò)會(huì)將前一時(shí)刻的狀態(tài)向量作為當(dāng)前時(shí)刻輸入的一部分,如式(1)所示。

式(1)中:ht為新的網(wǎng)絡(luò)狀態(tài)向量;xt為當(dāng)前時(shí)刻網(wǎng)絡(luò)的輸入向量;ht-1為上一時(shí)刻網(wǎng)絡(luò)的狀態(tài)向量;Wx和Wh分別為網(wǎng)絡(luò)對(duì)xt和ht-1的權(quán)重矩陣;b為偏置向量;t為時(shí)刻;f為激活函數(shù),一般為雙曲正切函數(shù)。ht經(jīng)過一個(gè)前饋神經(jīng)網(wǎng)絡(luò)層,得到網(wǎng)絡(luò)在t時(shí)刻的輸出yt,如式(2)所示。

式(2)中:g為前饋神經(jīng)網(wǎng)絡(luò)的非線性變換;WFC和bFC分別為前饋神經(jīng)網(wǎng)絡(luò)的權(quán)重矩陣和偏置項(xiàng)。
普通的RNN 在學(xué)習(xí)較長序列之間的函數(shù)映射關(guān)系時(shí),容易發(fā)生梯度消失或梯度爆炸,導(dǎo)致網(wǎng)絡(luò)訓(xùn)練不收斂。為此,K.Cho 等[7]提出了門控循環(huán)單元(GRU)網(wǎng)絡(luò)。網(wǎng)絡(luò)中引入了兩個(gè)門控單元,分別為復(fù)位門和更新門,如圖1 所示。

圖1 GRU 網(wǎng)絡(luò)示意圖Fig.1 Diagram of gate recurrent unit(GRU) network
圖1 中:rt為復(fù)位門的輸出向量;zt為更新門的輸出向量;為狀態(tài)向量更新量;σ為Sigmoid 激活函數(shù);tanh 為雙曲正切函數(shù)。
復(fù)位門控制了ht-1所包含的信息在當(dāng)前時(shí)刻網(wǎng)絡(luò)輸入中所占的比重。復(fù)位門輸出rt的計(jì)算公式為:

式(3)中:Wr,x和Wr,h分別為復(fù)位門對(duì)xt和ht-1的權(quán)重矩陣;br為復(fù)位門的偏置向量。
σ激活函數(shù)的表達(dá)式為:

式(4)中:x為自變量;e 為自然底數(shù)。

更新門的輸出zt的計(jì)算公式為:

式(6)中:Wz,x和Wz,h分別為更新門關(guān)于xt和ht-1的權(quán)重矩陣。
網(wǎng)絡(luò)t時(shí)刻的狀態(tài)向量ht的更新公式為:

最后,將ht向量經(jīng)過一個(gè)全連接層后,得到網(wǎng)絡(luò)的輸出向量yt,計(jì)算公式為:

式(8)中:WBP和bBP分別為全連接層的權(quán)重矩陣和偏置向量。
電池的一階等效電路模型如圖2 所示。

圖2 一階等效電路模型Fig.2 First order equivalent circuit model
圖2 中:Uocv為電池開路電壓,是電池SOC 的函數(shù);R0為電池內(nèi)阻;Rp為極化電阻;Cp為極化電容;Up為極化電壓;I為負(fù)載電流。電池端電壓U由UOCV、Up和內(nèi)阻分壓I×R0組成。模型參數(shù)R0、Rp和Cp與電池的溫度有關(guān),為保證模型的對(duì)應(yīng)準(zhǔn)確性和邏輯自洽性,此處RNN 的輸入應(yīng)選擇為電池電流、溫度和SOC 等3 個(gè)關(guān)鍵參數(shù)。
SOC 不是通過測量直接得到的。SOC 與電流之間為積分關(guān)系,如式(9)所示:

式(9)中:CSOC(t)為t時(shí)刻電池SOC 的累積量;CSOC0為t0時(shí)刻電池的SOC;c為電池容量。
由于電池容量未知,不能直接由式(9)直接計(jì)算得到,實(shí)驗(yàn)使用放電量Qt[見式(10)]來代替SOC 作為RNN 的輸入,并規(guī)定t0時(shí)刻電池的電量為100%,即CSOC0=1。

最終得到RNN 的輸入輸出關(guān)系如圖3 所示。

圖3 RNN 的輸入和輸出Fig.3 Input and output of recurrent neural network(RNN)
圖3 中:h0、h1分別為0 時(shí)刻和1 時(shí)刻的網(wǎng)絡(luò)狀態(tài)向量;Tt為t時(shí)刻的溫度值。圖3 中,GRU1和GRU2分別表示RNN 在1 時(shí)刻和t時(shí)刻所對(duì)應(yīng)的不同網(wǎng)絡(luò)狀態(tài)。
電池容量估計(jì)方法的流程如圖4 所示。

圖4 容量估計(jì)方法的流程Fig.4 Flow of the method of capacity estimation
首先,使用電池的變電流放電和恒流放電數(shù)據(jù)分別訓(xùn)練RNN 電壓序列預(yù)測模型和SVR 容量估計(jì)模型。訓(xùn)練完成后,用RNN 預(yù)測電池的1.00C恒流放電壓序列,并根據(jù)所定義的特征提取方法,從RNN 預(yù)測的恒流放電電壓曲線上提取特征。將這些特征輸入SVR 模型,獲得容量的估計(jì)值。
SVR 從線性回歸出發(fā),加入對(duì)誤差的容忍,并使用核函數(shù)將特征從低維空間映射到高維空間,在高維空間中對(duì)數(shù)據(jù)進(jìn)行線性回歸。SVR 的優(yōu)化目標(biāo)為:

式(11)中:H為優(yōu)化目標(biāo)函數(shù);ω和b為SVR 的權(quán)重和偏置;f(xi)為第i個(gè)樣本的預(yù)測值;xi為第i個(gè)樣本的目標(biāo)值;yi為樣本標(biāo)簽值;n為樣本總數(shù);C為懲罰因子;L為鉸鏈損失函數(shù),如式(12)所示。

式(12)中:ε為松弛變量。
引入松弛因子ξi和,目標(biāo)函數(shù)改寫為:

引入拉格朗日乘子法去掉約束條件,令目標(biāo)函數(shù)對(duì)優(yōu)化參數(shù)的偏導(dǎo)數(shù)等于零。結(jié)合優(yōu)化目標(biāo)的對(duì)偶問題和庫恩-塔克(KKT)條件,得到模型最優(yōu)解為:

式(14)中b的最優(yōu)值為:

為了讓模型能夠?qū)W習(xí)非線性函數(shù)關(guān)系,引入核函數(shù),將式(14)和(15)中的項(xiàng)替換為,其中κ為核函數(shù),作用是將低維空間的和xi映射到高維空間。
電壓曲線隨電池容量衰減會(huì)發(fā)生有規(guī)律的偏轉(zhuǎn),從中提取一些特征就能夠反映電池容量的變化。實(shí)驗(yàn)從恒流放電電壓序列上提取特征的方法如圖5 所示。

圖5 恒流放電電壓序列特征提取Fig.5 Feature extraction of galvanostatic discharge voltage sequence
首先,繪制出放電量-電壓關(guān)系圖,橫坐標(biāo)為放電量,縱坐標(biāo)為電壓。在放電至終止電壓2.5 V 的范圍內(nèi),從橫坐標(biāo)上等距取m個(gè)點(diǎn),記為Q1,Q2,…,Qm。在曲線上找出這點(diǎn)處對(duì)應(yīng)的電壓,記為U1,U2,…,Um。將U1,U2,…,Um作為SVR 模型的輸入,電池容量作為模型的輸出。
充放電設(shè)備為MTC16-100-05B 饋能型動(dòng)力電池測試系統(tǒng)(山東產(chǎn))。實(shí)驗(yàn)對(duì)象為18650 型鋰離子電池(LG 化學(xué)),標(biāo)稱容量為3.200 Ah,正極活性材料為LiNi0.8Co0.1Mn0.1O2。對(duì)3 只老化程度相近的電池(記為電池a、電池b 和電池c)進(jìn)行實(shí)驗(yàn)。3 只電池在標(biāo)準(zhǔn)容量測試條件下獲得的實(shí)際容量真值分別為3.088 Ah、3.082 Ah 和3.079 Ah。
首先,對(duì)3 只電池進(jìn)行放電實(shí)驗(yàn)。將電池置于恒溫箱中,溫度分別設(shè)定為0 ℃、25 ℃和45 ℃。按城市道路循環(huán)工況(UDDS)負(fù)載電流[8],時(shí)間為1 410 s。在兩次UDDS 工況之間,靜置12 min 以模擬用戶停車。初始電壓3.6~3.8 V,為防止過放電,限定電池動(dòng)態(tài)放電至2.5 V,停止放電。
之后,對(duì)3 只電池進(jìn)行25 ℃恒溫標(biāo)準(zhǔn)容量測試。首先,將電池以1.00C恒流充電至4.2 V,轉(zhuǎn)恒壓充電至0.05C。靜置1 h 后,以1.00C恒流放電至終止電壓2.5 V,積分獲得電池容量。
最后,對(duì)與電池a、b、c 同批次生產(chǎn)的電池進(jìn)行循環(huán)實(shí)驗(yàn),充放電倍率為1.00C,溫度分別為0 ℃、25 ℃和45 ℃。
使用GRU 網(wǎng)絡(luò)估計(jì)電池a、b 和c 的電壓序列。GRU 網(wǎng)絡(luò)層數(shù)為1 層,節(jié)點(diǎn)數(shù)為10。使用滑動(dòng)窗口對(duì)電池變電流放電序列進(jìn)行切分,切分窗口長度為1 000,窗口移動(dòng)步長為1 000,網(wǎng)絡(luò)每次在長度為1 000 的片段上進(jìn)行訓(xùn)練。分別對(duì)每只電池搭建并訓(xùn)練一個(gè)GRU 電壓預(yù)測網(wǎng)絡(luò)。
GRU 網(wǎng)絡(luò)估計(jì)的各電池放電電壓曲線結(jié)果見圖6。

圖6 GRU 網(wǎng)絡(luò)預(yù)測不同溫度下電池變電流放電電壓序列Fig.6 Variable current discharge voltage sequence of battery at different temperatures predicted by GRU network
從圖6 可知,GRU 網(wǎng)絡(luò)能夠準(zhǔn)確地預(yù)測電池的變電流放電電壓序列,平均誤差小于15 mV。
3 只電池經(jīng)GRU 網(wǎng)絡(luò)訓(xùn)練完成后,將1.00C恒流放電至終止電壓2.5 V 的工況輸入3 個(gè)GRU 網(wǎng)絡(luò),溫度分別設(shè)為0 ℃、25 ℃和45 ℃,放電量由對(duì)電流序列安時(shí)積分得到。將網(wǎng)絡(luò)預(yù)測結(jié)果與真值進(jìn)行對(duì)比,如圖7 所示。為防止電池過放電,網(wǎng)絡(luò)訓(xùn)練集中沒有電池低電量時(shí)的電壓數(shù)據(jù)。
從圖7 可知,GRU 網(wǎng)絡(luò)能夠準(zhǔn)確預(yù)測電池1.00C恒流放電曲線,預(yù)測平均誤差小于24 mV。

圖7 GRU 網(wǎng)絡(luò)預(yù)測不同溫度下電池恒流放電電壓序列Fig.7 Galvanostatic discharge voltage sequence of battery at different temperatures predicted by GRU network
為驗(yàn)證GRU 網(wǎng)絡(luò)在不同老化情況下的適用性,對(duì)3 只老化程度不同的電池(記為電池1、電池2 和電池3)進(jìn)行室溫25 ℃容量真值測量實(shí)驗(yàn),得到容量真值分別為3.088 Ah、3.021 Ah 和2.692 Ah。模型在訓(xùn)練數(shù)據(jù)上的表現(xiàn)見圖8。

圖8 GRU 網(wǎng)絡(luò)預(yù)測不同老化程度電池恒流放電電壓序列Fig.8 Galvanostatic discharge voltage sequence of battery with different aging degrees predicted by GRU network
從圖8 可知,3 只電池的1.00C恒流放電電壓預(yù)測結(jié)果,在末尾段的低SOC 區(qū)均顯示出了較低的預(yù)估精度,表明數(shù)據(jù)不均衡而產(chǎn)生的尾部預(yù)測失效。除了預(yù)測結(jié)果只在電池放電末端的掃尾效應(yīng)部分偏離外,在整體的1.00C放電中的預(yù)估精度較高,且針對(duì)不同老化程度的電池同樣有效。
對(duì)電池電壓計(jì)算得到的GRU 網(wǎng)絡(luò)預(yù)測結(jié)果見表1。

表1 電池1、2 和3 的電壓預(yù)測結(jié)果Table 1 Voltage estimation results of battery 1,2 and 3
從表1 可知,對(duì)于不同老化程度的電池,該模型能夠準(zhǔn)確預(yù)測電池容量,相對(duì)誤差分別為0.414%、0.369%和0.449%,對(duì)不同老化程度電池的預(yù)測輸出結(jié)果可靠性高。
對(duì)SVR 模型[式(13)]的有約束優(yōu)化問題求解,得到特征與電池容量之間的函數(shù)關(guān)系[式(14)]。SVR 模型使用徑向基核函數(shù),懲罰因子C取1 000,松弛變量ε 取0.001。對(duì)與電池1、2、3 同批次生產(chǎn)的其他電池進(jìn)行恒流充放電老化循環(huán)測試,依據(jù)測試數(shù)據(jù)對(duì)模型進(jìn)行訓(xùn)練,提取放電量為0.8~2.0 Ah 的等距特征曲線,步長取為0.1 Ah。模型在測試集上訓(xùn)練得到的結(jié)果如圖9 所示。

圖9 SVR 模型在測試集上的性能Fig.9 Performance of support vector regression(SVR) model on train dataset
從圖9 可知,SVR 能夠準(zhǔn)確預(yù)測電池的容量,整體誤差相對(duì)穩(wěn)定,最大相對(duì)誤差為1.597%。這表明,SVR 在電池前200 次循環(huán)中可保證容量預(yù)測值的精度。之后,將GRU 網(wǎng)絡(luò)預(yù)測的1.00C恒流放電序列輸入訓(xùn)練好的SVR 模型,SVR模型會(huì)基于在訓(xùn)練集和測試集上的結(jié)果,對(duì)電池容量進(jìn)行預(yù)測計(jì)算,得到模型的預(yù)測結(jié)果,如表2 所示。

表2 電池1、2 和3 的容量預(yù)測結(jié)果Table 2 Capacity estimation results of battery 1,2 and 3
從表2 可知,對(duì)于不同老化程度的電池,該模型能夠準(zhǔn)確預(yù)測電池容量,最大誤差為2.253%,模型適用性強(qiáng)。
基于現(xiàn)有CC-CV 充電曲線應(yīng)用到實(shí)際數(shù)據(jù)所存在的問題,本文作者提出使用RNN 預(yù)測電池變電流放電時(shí)的電壓序列,使用網(wǎng)絡(luò)預(yù)測電池的1.00C放電電壓序列。之后,從1.00C放電電壓序列上提取特征,使用SVR 模型學(xué)習(xí)所提取特征到電池容量之間的函數(shù)映射關(guān)系。
實(shí)驗(yàn)結(jié)果表明,使用RNN 能夠準(zhǔn)確估計(jì)電池的變電流和1.00C恒流放電電壓序列,估計(jì)誤差小于15 mV。使用所提出的特征提取方法提取出的特征,SVR 模型能夠準(zhǔn)確估計(jì)電池容量,容量估計(jì)的相對(duì)誤差不超過2.253%。
本文作者從實(shí)際車輛使用過程中的數(shù)據(jù)特點(diǎn)出發(fā),充分利用高隨機(jī)性的動(dòng)態(tài)放電數(shù)據(jù),并結(jié)合深度學(xué)習(xí)算法建立電池的等效模型,為實(shí)際使用過程的容量估計(jì)提供了思路。