臧幃宏,李中華,王發成,周 偉
(1.中國北方車輛研究所, 北京 100072; 2.陸軍北京軍代局, 北京 100050)
隨著石油能源逐漸枯竭和環境污染日益嚴重,以純電動汽車為代表新能源車輛成為當下車輛的行業的焦點。鋰離子動力電池系統作為新能源車輛的核心部件,有效的電池管理系統可以提高整車性能并增加使用安全性[1]。其中,鋰電池的剩余容量預測是熱點研究課題。
目前,能夠表征電池性能退化最直接的參數為電池的剩余容量[2]。然而在實際工作狀態下,剩余容量難以通過直接測試途徑獲得。需采用易于測量的電池特征參數對鋰電池剩余容量進行預測[3-4]。Liu等[5]根據電池放電過程中的電壓電流曲線,提取等壓降放電時間序列作為特征輸入,采用相關向量機來對鋰電池進行剩余容量預測。電池在車輛實際運行的條件下,電池可放出的最大容量隨著運行時間逐漸衰減[6]。可對電池無負載時的開路電壓進行特征提取[7-8]。
電池剩余容量預測主要分為集總參數法、數據驅動法和融合法。集總參數模型包括電化學模型、等效電路模型等,前者需要通過復雜儀器對鋰電池容量衰減過程中的電化學特征進行采集和分析,可建立高精度單體模型,模型也可體現實際物理、化學意義,但這種方法多用于對電池單體微觀特性的分析與研究領域,建模工作量大,且動態性能較差;后者通過對等效電路模型中的歐姆內阻、極化內阻和極化電容進行離線或者在線的參數辨識,作為表征電池老化程度的健康因子,但其參數辨識結果受模型精度、辨識方法和運行工況等諸多因素的影響。
基于數據驅動的預測方法主要通過對電池運行過程中收集到的狀態信息進行統計分析,找到與電池容量衰退緊密相關的特征值作為健康因子(health index,HI),預測方法包括自回歸(autoregressive,AR)模型[9]、人工神經網絡(artificial neural network,ANN)[10-11]、高斯過程回歸(gaussian process regression,GPR)[12]、支持向量機(support vector machine,SVM)[13]、相關向量機(relevance vector machine,RVM)[14]等。洪元濤[15]采用極限學習機算法對循環壽命測試方法進行優化。趙沁峰等[16]使用灰狼算法優化的極限學習機算法對電池剩余壽命實現間接預測。陳則王等[17]采用遺傳優化算法對鋰電池在極限學習機上的應用進行初始參數優化,均得到了較高的預測精度。李練兵等[18]提出了容量增量分析法提取IC曲線拐點值,并利用神經網絡中的Elman算法構建剩余容量預測模型,選用的數據為NASA提供的公開數據集。但其依據的模型公式建立在放電電流充分小可忽視電池內阻壓降的前提條件下[19],公開數據集中的充放電的電流大小明顯并不符合差分電壓公式成立條件。
綜上,眾多學者在動態充放電曲線中提取特征值,但是易受電池運行工況影響。為了避免負載影響,本文提出以放電結束后電池電壓壓升參數作為表征鋰電池內阻變化、容量衰退的健康因子,并利用選用誤差向后傳播(back propagation,BP)算法及SVM兩種算法對電池進行剩余容量預測。
BP是一種基于誤差反向傳播方法訓練的前反饋型算法,輸入的變量進行前向傳播,經過隱含層迭代計算,通過輸出層輸出結果。在算法模型訓練過程中,根據設置的訓練步長、迭代次數限制和誤差閾值,輸出誤差從輸出層反向傳播給中間隱含層及輸入層,從而使得各層連接權值自動修正,其拓撲結構如圖1所示。

圖1 BP拓撲結構示意圖


第2層神經元的狀態和激活值可由式(1) (2)得出
(1)
(2)

第3層神經元的狀態和激活值可由式(3)(4)得出
(3)

(4)

故第l層神經元的狀態及激活值為
z(l)=W(l)a(l-1)+b(l)
(5)
(6)


(7)


(8)
通過調整權重和偏置使式(8)最小,并確定出此時的W(l)和b(l),代回式(5)(6)得到輸出值。
Vapnilk等在SVM分類的基礎上引入了不敏感損失函數ε,從而得到了回歸型支持向量機(support vector machine for regression,SVR),對小樣本數據具有較好的學習泛化性能。在應用于回歸擬合分析時,基本思想不再是尋找一個最優分類面使得兩類樣本分開,而是尋找一個最優分類面使得所有訓練樣本離該最優分類面的誤差最小,對于一般線性回歸的SVM數學原理如圖2所示。原理為其在線性函數兩側制造了一個“間隔帶”,間距為ε,對所有落入到間隔帶內的樣本不計算損失,也就是只有支持向量才會對其函數模型產生影響,最后通過最小化總損失和最大化間隔來得出優化后的模型。

圖2 SVM數學原理示意圖
假設訓練集數據為(xi,yi;i=1,…,n),xi∈Rn,y∈{-1,1},其目標是找到一個最優函數即式(9)使得f(x)與任意訓練數據的最大偏差小于用戶定義的不敏感損失系數ε,同時保持最高的平整度。
f(x)=〈ω,x〉+b
(9)
其中,ω表示參數向量,〈·,·〉表示點積。超平面必須滿足式(10)的約束
yi-〈ω,x〉-b≤ε+ξi
(10)
式中:ε表示不敏感損失系數,在實際應用中,由于很難直接確定合適的ε來保證大部分數據都在間隔區間里,所以加入松弛變量ξi,從而降低函數的間隔要求,可以允許一些數據點不在間隔區間里。最優回歸超平面的定義如下:

(11)
在式(10)的約束下。選取一個合適的C值。使用拉格朗日乘子法求解優化問題,其中最優值是拉格朗日乘子的鞍點值,α和β是拉格朗日乘數。
(12)
生成的優化目標函數具有以下形式,其中xi是支持向量:
(13)
而實際應用中,回歸問題往往為非線性問題,但不需要顯式地指定非線性變換,采用核函數來替換線性問題當中的內積,選取適當的核函數K(x,g)和C值。常用核函數中徑向基函數是較優的選擇。文獻[20]對基于不同核函數的SVM算法進行了分析和仿真比較,得出SVM在回歸應用中,基于徑向基函數SVM的性能要優于基于其他核函數的SVM,表達式如式(14)所示。
(14)
式中:g為核函數參數,文章采用網格交叉驗證的方法確定合適的C值和g,進而確定最優SVR函數。
選用市面上某款42 Ah三元鋰電池單體在室溫條件下進行充放電及靜態擱置的壽命循環測試數據為樣本數據。電池單體測試設備為用于動力電池充放電的Arbin BT2000測試儀、用于溫度控制的溫箱、用于人機交互和數據存儲的上位機。Arbin BT2000測試儀每個工作通道允許的工作電壓范圍為0~5 V,能夠以±100 A的電流對電池進行充放電。單體測試儀、溫箱和上位機均可同時記錄動力電池的電流、電壓、溫度、充放電容量等數據。電池單體信息見表1。試驗依據按照GB/T 31484—2015《電動汽車用動力蓄電池循環壽命要求及試驗方法》。

表1 電池單體信息
試驗步驟如下:
1) 恒流充電:1 C(42 A)充電,直至單體達到上限4.2 V;
2) 恒壓充電:保持電壓在4.2 V,直到充電電流降至0.05 C(2.1 A),結束充電;
3) 充電擱置30 min;
4) 恒流放電:1 C(42 A)放電,設定單體電池的放電終止條件為2.8 V;
5) 放電擱置30 min。
按照步驟(1)至(5)連續循環511次,記錄每次循環的電壓、電流及放出的容量數據。其剩余容量隨循環次數的變化曲線如圖3,該三元電池在循環測試過程中,容量衰減基本呈現線性規律,存在較少容量增生情況。511次循環之后,可放出的最大容量為39.673 Ah,與初始測得的放出容量44.077 Ah相比,衰減了9%,電池循環壽命性能較好。

圖3 電池剩余容量隨循環次數衰減曲線
如圖4不同循環次數充電過程中電壓隨時間變化曲線,電壓首先迅速升高至3.8 V左右,然后斜率減緩,在電壓將要達到上限前斜率稍有變大,最終電壓穩定保持在4.2 V下繼續小電流充電。在電池充電截止電壓恒定的情況下,隨著循環次數增加,電解液和電極材料發生化學反應消耗鋰離子,導致鋰離子電池內阻增加、容量衰減,電池越快達到截止充電電壓,恒流充電時間逐漸減少,整體充電時間逐漸縮短。

圖4 不同循環次數充電過程電壓隨時間變化曲線
由圖4可以看出,隨著循環次數的增加,充電起始電壓在不斷升高,考慮到放電過程均為統一放至2.8 V,且均在放電后擱置30 min,因此可知測試的目標電池在放電結束后擱置相同的時間后,電壓回升的程度隨循環次數的增加而提高。
圖5所示為目前廣泛應用的電池等效電路一階模型,由圖5可知,電池內阻不僅包括歐姆內阻R0,還存在極化內阻R1和極化電容C1,圖中RL為負載。隨著動力電池在循環過程中逐漸老化,內阻增大,放電時由內阻造成的壓降也就越大,因此從1C放電狀態進入擱置狀態,電流從1C突變成為零,歐姆內阻導致的壓降迅速回升,極化內阻造成的壓降逐漸回升。另外,在充放電過程中,電池電極附近的離子濃度變化會導致內阻增加,擱置期間,離子濃度逐漸趨于平衡,進一步導致電壓發生變化。因此,擱置期間電壓回升情況一定程度上可以表征電池內部參數變化的過程,也就可以考慮用來表征電池容量衰退老化的情況。

圖5 電池等效電路一階模型示意圖
圖6為放電擱置期間電壓隨時間變化曲線。由圖可以看出,隨著循環次數增加,放電擱置期間電壓升高拐點值越偏后,壓升程度也越大,表明該電池老化程度越高。圖7為放電擱置后電壓隨循環次數變化曲線。由圖7可以看出,多次放電擱置后的電壓序列與老化程度之間存在近似的線性關系,所以選取放電擱置階段壓升序列為健康因子,利用BP和SVM原理對電池剩余容量進行預測。

圖6 放電擱置期間電壓隨時間變化曲線

圖7 放電擱置后電壓隨循環次數變化曲線
采用壓升序列前400個數據作為訓練樣本,后111個數據作為測試樣本,構建的BP神經網絡為單隱層結構,考慮到容量衰減曲線具有良好的線性特征,故設定隱層節點數為2,訓練步長為0.01。網絡訓練函數選用BP算法中計算速度最快的Levenberg-Marquardt法來優化更新權重和偏差值。
在SVM模型中對訓練集和測試集采取交叉驗證的方法比較精度,并采用式(15)對預測結果進行評價。
均方誤差MSE(Mean Squared Error)是各數據偏離真實值差值的平方和的平均數
(15)

分別采用BP和SVM模型,選取擱置階段壓升序列作為健康因子,經過前400次循環數據樣本訓練,對后續111次循環數據進行電池剩余容量預測。圖8所示為BP和SVM模型預測結果。

圖8 BP和SVM模型預測結果曲線
由圖8可以看出2種模型預測數據與試驗數據的趨勢變化一致;圖9為BP和SVM模型預測誤差散點圖,由圖9可以看出,BP模型預測最大誤差為1.40%,而SVM最大預測誤差為0.65%。兩種模型均能夠較好預測,相比BP模型,SVM的可以有更高的精度。
考慮到電池容量的衰減雖然是每時每刻都在發生的,但由歷史離線測試數據可知,每次充放電循環后所導致的容量微小的衰退要經過一段時間累積后才會導致電池開路電壓的變化,因此不必每時每刻都對電池單體進行剩余容量預測,否則一方面加重BMS算力負擔,一方面也會使剩余容量預測時易受到采集精度誤差較大的數值的影響,從而導致結果發散。同時,SVM作為一種基于數理統計的機器學習模型被多次驗證,針對小樣本數據具有良好的魯棒性,因此本文在與BP神經網絡預測的效果進行比較時,推薦使用SVM算法,而非人工神經網絡算法。

圖9 BP和SVM模型預測誤差散點圖
1) 三元鋰電池多次循環放電擱置階段的壓升序列與剩余電池容量存在明顯相關關系,把放電階段的電壓升作為健康因子可以對鋰電池進行壽命預測。可為同類型三元鋰電池實車應用時進行剩余容量分析時的理論參考。
2) BP和SVM模型均可對三元鋰電池的剩余容量進行高精度預測,相比BP,SVM有更出色的表現,更適合小樣本預測,運行速度更快,在實際應用中,可減小數據采集數量,節省硬件存儲空間,更容易實現電池剩余容量在線預測。