王 橋,魏 孟,2,葉 敏*,廉高棨,麻玉川
(1.長安大學(xué)公路養(yǎng)護裝備國家工程實驗室,西安 710064,中國;2.新加坡國立大學(xué)機械工程系,117576,新加坡)
鋰離子電池作為新能源的代表,具有高能量密度、低污染和較長的使用周期等優(yōu)點,但同時存在容量退化、荷電狀態(tài)模糊等缺點。荷電狀態(tài)(state of charge,SOC)和容量作為電池管理系統(tǒng)的關(guān)鍵組成部分反映出鋰離子電池當前可放電量及其老化程度[1-3]。準確的SOC 和容量估計可以提高鋰離子電池的使用效率,并避免過充與過放等危險現(xiàn)象的發(fā)生,但由于電池內(nèi)部化學(xué)反應(yīng)的復(fù)雜性,導(dǎo)致精確的SOC 和容量很難獲得。
目前,鋰離子電池的SOC 估計方法可分為4 類:查表法、安時積分法、基于等效電路模型的方法和基于數(shù)據(jù)模型的方法[4]。查表法基于電池的開路電壓測量與其對應(yīng)的SOC 標定,但開路電壓的測量通常需要很長的時間,且在不同電池與不同工作環(huán)境下表現(xiàn)出不一致性[5]。安時積分法通過對電流進行積分來標定電池SOC,簡單且成本低,但需要準確的SOC 初值標定,且電流傳感器的測量誤差會產(chǎn)生較大的誤差累積?;诘刃щ娐纺P鸵蕾囉诰_的電池模型,通過簡單的等效電路難以獲得精確的電池模型[6-7]?;跀?shù)據(jù)模型的方法無需了解電池復(fù)雜的內(nèi)部結(jié)構(gòu),通過大量的實驗數(shù)據(jù)就可以建立精確的電池模型。前饋神經(jīng)網(wǎng)絡(luò),如反向傳播(back-propagation,BP)神經(jīng)網(wǎng)絡(luò)和徑向基神經(jīng)網(wǎng)絡(luò),因其結(jié)構(gòu)簡單,模型訓(xùn)練的快速性而被廣泛應(yīng)用于眾多領(lǐng)域[8]。但前饋神經(jīng)網(wǎng)絡(luò)的魯棒性較差,而且鋰離子電池放電過程是一個完整的動態(tài)過程,通過簡單的散點式結(jié)果不能很好地表征電池的放電過程。為了解決這個問題,人們提出了循環(huán)神經(jīng)網(wǎng)絡(luò)[9],但傳統(tǒng)循環(huán)神經(jīng)網(wǎng)絡(luò)存在梯度消失與梯度爆炸的問題。為了解決此問題,提出了長短時記憶(long short term memory,LSTM)循環(huán)神經(jīng)網(wǎng)絡(luò),基于復(fù)雜的門控結(jié)果,LSTM 可以有效地解決長期依賴缺失的問題[10]。針對LSTM 超參數(shù)難確定的問題,提出以灰狼優(yōu)化算法(gray wolf optimizer,GWO)對LSTM的超參數(shù)進行自動尋優(yōu),進而簡化LSTM 繁瑣的調(diào)參過程。同時針對電池老化對SOC 估計精度的影響,利用LSSVM 對電池容量進行估計,并利用LSTM 的記憶門控將2 種模型融合以補償電池老化對電池SOC 估計帶來的影響。
電池的最大可用容量的衰減會導(dǎo)致SOC 估計精度的下降[11]。目前電池可用容量的估計可分為2 類:基于模型的方法和基于數(shù)據(jù)驅(qū)動的方法?;谀P偷姆椒ㄖ饕ń?jīng)驗退化模型法、電化學(xué)模型法和等效電路模型法[12]。經(jīng)驗退化模型法建模方法簡單,但是此方法難以精確實現(xiàn)精確的容量估計。電化學(xué)模型法參數(shù)過多,計算復(fù)雜,不適用于電池的容量估計。針對電化學(xué)模型的不足,人們提出利用等效電路模型結(jié)合濾波算法可以實現(xiàn)閉環(huán)估算[13-14]。但此方法難以精確地對電池進行建模。數(shù)據(jù)驅(qū)動算法主要包括神經(jīng)網(wǎng)絡(luò)(neural network,NN)、支持向量機(support vector machine,SVM)與深度學(xué)習(xí)(deep learning,DL)。神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)法通常需要大量的訓(xùn)練數(shù)據(jù),才能獲得較好的結(jié)果[15-16]。但電池的老化數(shù)據(jù)量較小,同時,電池老化數(shù)據(jù)的時序性比較弱,電池容量需要經(jīng)過較長時間的充放電才會發(fā)生比較明顯的變化[17]。最小二乘支持向量機(least square support vector machine,LSSVM)可以實現(xiàn)小樣本下的機器學(xué)習(xí),且泛化能力強[18-19]。通常人們選擇電流電壓作為老化模型的輸入,但電流電壓與電池老化特性的相關(guān)性較低。近年來,人們開始二次處理實驗數(shù)據(jù)以獲取更合適的健康因子,其中,放電健康因子與電池老化特性的相關(guān)性一般較高,但由于放電過程的復(fù)雜性問題而難以實際應(yīng)用。充電健康因子一般表現(xiàn)較差,且根據(jù)人們的日常充電習(xí)慣,完整的充電曲線也難以獲得[20-22]。
因此,本文提出片段電壓充電時間作為電池容量健康因子,并通過Spearman 相關(guān)性系數(shù)(Spearman correlation coefficient)驗證了所提健康因子的有效性。同時利用LSSVM 結(jié)合健康因子對電池容量進行估算?;谟洃涢T控,將容量估計結(jié)果作為SOC 估計模型的輸入,以補償電池老化對電池SOC 的影響。最后,將所提方法與粒子群算法優(yōu)化的反向傳播神經(jīng)網(wǎng)絡(luò)(back propagation-particle swarm optimization,BP-PSO)與傳統(tǒng)LSTM 進行了對比,驗證了所提方法的優(yōu)越性。
本文采用馬里蘭大學(xué)的電池老化測試數(shù)據(jù)集對所提方法進行驗證。電池額定容量1 100 mAh,化學(xué)成分為LiCoO2。本文所用數(shù)據(jù)相同放電循環(huán)模式下的3組電池數(shù)據(jù),3 組電池(CX2-1、CX2-2、CX2-3) 均采用1 C 的電流對其進行放電循環(huán),直至其容量Q衰減至1 Ah 左右,并采用0.5 C 的電流進行恒流恒壓充電。電池的老化循環(huán)數(shù)據(jù)如圖1 所示。
圖1 測試樣本實驗數(shù)據(jù)
電池容量在實際應(yīng)用中無法直接測量獲取,而通過電流電壓估計得到的電池容量精度較低,所以利用提取健康因子來確保電池容量的估計精度。本文利用片段充電時間作為健康因子,并進行了相關(guān)性量化驗證了所提健康因子的有效性?;赟pearman 相關(guān)性系數(shù)(Spearman rank correlation coefficient)對不同片段電壓充電時間數(shù)據(jù)與電池容量數(shù)據(jù)的相關(guān)性系數(shù)進行了計算。經(jīng)計算發(fā)現(xiàn),對于電池CX2-1 而言,3.6~3.7 V、3.7~3.8 V 和3.8~3.9 V 所對應(yīng)的充電時間數(shù)據(jù)與電池老化特性的相關(guān)性系數(shù)分別為0.699 3、0.0.662 1、0.912 6,而3.9~4.0 V 與完整充電時間數(shù)據(jù)所對應(yīng)的相關(guān)性系數(shù)分別為0.963 5 和0.957 6。其余2 組電池的相關(guān)性分析結(jié)果類似,具體結(jié)果見表1。本文所提取的健康因子相比較于完整充電數(shù)據(jù),不僅具有更好的實用性,而且與電池老化特性的相關(guān)性程度更好。
表1 Spearman 相關(guān)性分析結(jié)果
本文采用最小二乘支持向量機(LSSVM)作為鋰離子電池的容量估算模型。支持向量機作為一種經(jīng)典的算法是從感知機發(fā)展而來的,其核心思想是使離分割超平面最近的樣本與分割超平面的距離最遠。對比其他算法,支持向量機(support vector machine,SVM)基于核函數(shù)理論,將樣本映射到高維空間,能較好地處理高維非線性問題。在SVM 的基礎(chǔ)上,Suykens 和Vandewalle 提出了LSSVM 以提高SVM 的計算效率。LSSVM 用等式約束代替不等式約束,通過求解等式方程組,避免了原求解過程中耗時的二次規(guī)劃問題,但同時也喪失了標準SVM 的稀疏性,LSSVM 幾乎所有的樣本均為支持向量。因此,在處理大樣本數(shù)據(jù)時,LSSVM 無法得到滿意的結(jié)果。但電池衰減數(shù)據(jù)量較小,使用LSSVM 可以獲得理想的結(jié)果。
假設(shè)LSSVM 模型為:
其中:ω表示向量權(quán)重,b表示閾值,T 為轉(zhuǎn)置符號。
將(1)中不等式約束轉(zhuǎn)換為等式約束,可有效地提高模型的計算效率:
其中:γ為誤差τn的正則化參數(shù),φ(xn)為輸入在高維空間的映射。為計算(2)式,引入Lagrange 乘子:
其中,K(xn,x)是核函數(shù),本文采用徑向基(radial basis function,RBF)函數(shù)作為核函數(shù)。
鋰離子電池的SOC 估計和容量估計相輔相成,但目前大多數(shù)方法都是基于滿容量下的電池充放電數(shù)據(jù)進行電池SOC 的建模,隨著電池循環(huán)次數(shù)的增加,電池的最大可用容量會不斷降低,進而造成SOC 估計精度的嚴重下降。為解決此問題,本文提出鋰離子電池的SOC 和容量聯(lián)合估計模型。本文所提模型基于LSTM框架,圖2 為LSTM 結(jié)構(gòu)圖。
圖2 LSTM 結(jié)構(gòu)圖
LSTM 引入了門控結(jié)構(gòu),可以向神經(jīng)元細胞添加或刪除信息,由一個激活函數(shù)與點乘組成,主要包含:1)細胞狀態(tài)通道,通道上包括2 個線性運算,第1 個用于控制上一個神經(jīng)元信息的權(quán)重,第2 個用于增加由輸入而產(chǎn)生的新信息;2)遺忘門,基于上一個隱狀態(tài)與當前狀態(tài),基于式(5)輸入0 到1 以遺忘或保留歷史信息;3)輸入門,基于上一個隱狀態(tài)和當前輸入,基于式(6)輸出2 組信息,分別代表信息量與信息強度;4)更新門,基于上一個神經(jīng)元信息、遺忘門、輸入門和新信息,基于式(8)輸出下一個神經(jīng)元的信息;5)輸出門,基于式(9)控制輸出的信息權(quán)重。其單個神經(jīng)元內(nèi)的計算過程如下:
其中:xt和yt分別是t時刻的單位輸入與輸出;ct代表神經(jīng)元的記憶;W、U和b代表模型的權(quán)重矩陣和偏執(zhí)向量;是it、ft和ot分別表示輸入門、遺忘門和輸出門的激活向量,σg、σc和σv分別為對應(yīng)的激活函數(shù),σg是一個sigmoid 函數(shù),而σc和σv為雙曲正切函數(shù)。
基于復(fù)雜的門控結(jié)構(gòu),LSTM 有效地解決了循環(huán)神經(jīng)網(wǎng)絡(luò)的長期依賴缺失問題。但隨著電池循環(huán)次數(shù)的增加,電池最大可用容量會顯著降低,從而影響實時的SOC 估計精度。為此,本文提出一種鋰離子電池的SOC 和容量聯(lián)合估計模型。所提的SOC 與容量的聯(lián)合估計框架如圖3 所示,基于記憶門控,電池容量估計模塊的結(jié)果被記錄下來并作為SOC 估計的輸入,進而補償了電池老化對鋰離子電池SOC 估計所造成的影響,且同時獲得了電池的當前剩余最大可用容量。該模型的訓(xùn)練流程如圖3 所示:基于電池老化實驗獲得離線實驗數(shù)據(jù),對充電時間數(shù)據(jù)進行二次處理,獲得健康因子,進而在電池充電時對電池的容量進行估計?;谟洃涢T控,容量估計結(jié)果被記錄下來,并與實時的電壓電流數(shù)據(jù)共同作為SOC 估計模型的輸入,最終獲得鋰離子電池的SOC 與容量估計結(jié)果。
圖3 聯(lián)合估計流程圖
本文采用馬里蘭大學(xué)的電池老化數(shù)據(jù)集對所提方法進行訓(xùn)練與驗證。選取3 組電池的老化數(shù)據(jù):CX2-1、CX2-2、CX2-3,3 組電池均采用標準的恒流恒壓充電,電流為0.5 C,當電壓達到4.2 V 時,繼續(xù)充電直至電流小于0.05 A,并以1 C 的電流對電池進行恒流放電。整個實驗在室溫下進行,約720 次充放電循環(huán)后,電池容量衰減至80 %以下。所涉及的實驗平臺如圖4 所示,由測試電池、Arbin BT2000 電池測試平臺、數(shù)據(jù)采集模塊和上位機組成。電池測試平臺用于控制電池的實時充放電,基于平臺中的數(shù)據(jù)采集模塊,上位機實時儲存電池的充放電實驗數(shù)據(jù),并以圖像與Excel 的形式輸出。
圖4 實驗測試平臺
為驗證模型的泛化性能以確保其實際應(yīng)用價值,本文采用3 組電池老化數(shù)據(jù)對所提模型進行訓(xùn)練與驗證。其中,CX2-1 作為所提模型的訓(xùn)練數(shù)據(jù)集,CX2-2和CX2-3 作為所提模型的測試數(shù)據(jù)集,并選用均方根誤差(RMSE)和最大誤差(ΔMAX)作為模型的性能評價指標,如式(10-11)所示:
其中:xe表示估計值,xa表示實際值,n表示測試樣本數(shù)量。
本文利用所提取的健康因子作為模型的輸入,容量作為模型輸出,訓(xùn)練并驗證了模型。在LSSVM 模型中,模型參數(shù)采用默認參數(shù):gam=10,sig 2=0.5;BP 神經(jīng)網(wǎng)絡(luò)模型的隱含層與輸出層間的權(quán)值w和神經(jīng)元的閾值b通過粒子群算法(particle swarm algorithm,PSO)進行了全局尋優(yōu)。容量估計結(jié)果如圖5。
圖5 CX2-3 與CX2-3 容量估計結(jié)果
從圖5 的容量估計結(jié)果與誤差曲線可以看出,在數(shù)據(jù)量較小的電池容量估計中,LSSVM 模型表現(xiàn)優(yōu)于傳統(tǒng)的前饋神經(jīng)網(wǎng)絡(luò)。當CX2-2 作為測試樣本時,LSSVM 模型的最大誤差ΔMAX=0.039 8 Ah,最大RMSE=1.25 %;而BP-PSO 模型的ΔMAX=0.066 8 Ah,最大RMSE=3.07 %。當CX2-3 作為測試樣本時,LSSVM 模型的ΔMAX=0.036,最大RMSE=1.29%;而BP-PSO 模型的ΔMAX=0.049 1,最大RMSE=2.29 %。
容量估計模塊在充電時更新的容量估計結(jié)果通過記憶門控被記錄下來,并作為SOC 估計模塊的輸入以補償電池老化對SOC 估計精度的影響。為了驗證所提模型的優(yōu)越性,分別選用了2 組測試電池循環(huán)N=1、300、700 次時的實驗數(shù)據(jù)作為測試樣本,測試了所提模型與原始LSTM 模型,2 種方法均由GWO 進行參數(shù)優(yōu)化,學(xué)習(xí)率損失因子為0.069 9,學(xué)習(xí)率損失周周期為275,最大訓(xùn)練周期為622,初始學(xué)習(xí)率為0.014。測試結(jié)果與誤差如圖6—圖7 所示。
圖6 為CX2-2 1 次循環(huán)、300 次循環(huán)和700 次循環(huán)時的測試結(jié)果。從圖中可以看出,當CX2-2 電池循環(huán)N=1 次時,2 組模型的測試結(jié)果幾乎一致,ΔMAX分別為 0.013 9 與0.013 8,最大RMSE 分別為1.29 %與1.28 %;而當CX2-2 電池循環(huán)N=300 次時,所提模型的最大誤差ΔMAX=0.02,最大RMSE=1.63 %,而LSTM 模型的ΔMAX= - 0.113 3,最大RMSE=6.23 %;當CX2-2 電池循環(huán)N=700 次時,所提模型的ΔMAX=0.0159,最大RMSE=1.37 %,而LSTM 模型的ΔMAX=0.093 9,最大RMSE=4.1 %。
圖6 CX2-2 的SOC 估計結(jié)果曲線
同樣,以此方法得到CX2-3 電池N=1、300、700 次循環(huán)時的測試結(jié)果,如圖7 所示。當CX2-3 電池循環(huán)N=1 次時,所提模型的ΔMAXE=0.010 8,最大RMSE=0.61 %,而LSTM 模型的ΔMAX=0.005 8,最大RMSE=0.32 %;當CX2-3 電池循環(huán)N=300 次時,所提模型的ΔMAX=0.016 7,最大RMSE=0.95 %,而LSTM 模型的ΔMAX= - 0.116 7,最大RMSE=6.67 %;當CX2-3 電池循環(huán)N=300 次時,所提模型的ΔMAX=0.010 8,最大RMSE=0.61 %,而LSTM 模型的ΔMAX= - 0.108 5,最大RMSE=6.28 %。測試結(jié)果驗證了所提方法在電池老化后的魯棒性和精確性。
圖7 CX2-3 的SOC 估計結(jié)果
針對鋰離子電池的容量估計與電池老化后的荷電狀態(tài)(SOC)估計精確度低的問題,提出了一種基于長短時記憶(LSTM)網(wǎng)絡(luò)與最小二乘支持向量機(LSSVM)的荷電狀態(tài)(SOC)與容量的聯(lián)合估計方法。提出了一種易于實現(xiàn)且穩(wěn)定的健康因子,并利用Spearman 系數(shù)驗證了其與電池退化的相關(guān)性;利用LSSVM 實現(xiàn)了小樣本下的電池容量估計,容量估計結(jié)果基于記憶門控而作為SOC 估計模型的輸入;最后,基于灰狼優(yōu)化的長短時間記憶網(wǎng)絡(luò)(GWO-LSTM)實現(xiàn)了老化補償?shù)腟OC估計。得到如下結(jié)論:與粒子群優(yōu)化的反向傳播神經(jīng)網(wǎng)絡(luò)(BP-PSO)模型相比,LSSVM 作為容量估計方法精度提高了43 %以上,且泛化性較好;與原始LSTM 模型進行對比,所提模型在電池循環(huán)1 次時的誤差稍大于傳統(tǒng)LSTM 模型,但在電池老化后表現(xiàn)出更好的魯棒性。