?

耦合深度神經網絡的動力電池聯合狀態估計

2023-12-21 12:38王軍潔
關鍵詞:動力電池容量卷積

王軍潔

(淮安生物工程高等職業學校 計算機系,江蘇 淮安 223200)

在節能減排、綠色環保的大背景下,發展新能源汽車對解決能源和環境問題以及提高國家的綜合實力都具有非常重要的意義[1-3]。 目前,新能源汽車已經成為全球汽車產業的重要戰略方向。 2020 年國務院印發《新能源汽車產業發展規劃(2021—2035 年) 》[4],要求深入實施發展新能源汽車國家戰略,推動中國新能源汽車產業高質量可持續發展,加快建設汽車強國。 在政策的激勵下,中國新能源汽車產業迅速發展,保有量占全球份額超過50%[5]。 隨著我國新能源汽車產銷量的不斷攀升,作為新能源汽車核心部件的動力電池獲得廣泛關注[6-7]。 動力電池對新能源汽車的性能具有決定性作用,實現對動力電池精確的狀態估計,包括荷電狀態(state-of-charge,SoC) 估計和健康狀態(state-of-health,SoH) 估計,是確保電池管理系統(battery management system,BMS) 對電池包實現安全管理的關鍵所在,因此電池狀態估計研究已成為近年來交通電氣化研究的熱點[8-10]。

1 研究概述

大多數現有研究可實現SoC 或SoH 的獨立估計。 例如,劉素貞等[11]融合高相關性超聲特征和低復雜性回歸模型提出了一種磷酸鐵鋰電池平臺期SoC 估計方法,實現了不同動態工況下SoC 估計的均方根誤差和平均絕對誤差分別低于1.9%和1.6%。 黃玉莎等[12]基于二階RC 等效電路建立了一種受控自回歸滑動平均模型,在此基礎上實現了開路電壓(open circuit voltage,OCV) 參數的高精度在線辨識,并通過預先建立的分段OCV-SoC 曲線逆向查表,實現了SoC 的實時估計。 Zhou 等[13]提出了一種基于信息能量理論和奇異值分解(singular value decomposition,SVD) 的電池SoH 估計方法,首先計算電壓和電流的譜熵,并按照時間順序排列譜熵,構建信息能量矩陣,然后對信息能量矩陣進行奇異值分解以獲得與SoH 具有高度相關性的特征值,最后通過構建的SoH 與特征值間的線性回歸關系實現SoH 的準確估計,結果表明SoH 的平均絕對誤差估計可以控制在2%以內。 上述方法雖然可以實現較為精確的SoC 或SoH 估計,但是卻無法實現SoC 和SoH 的聯合估計,不能為BMS 控制決策提供充分的狀態信息。 若簡單采用兩套不同算法分別實現SoC 和SoH 的估計,一方面兩套算法相較于一套算法而言,將加重BMS 計算的負擔;另一方面,兩套算法的獨立運行也忽視了SoC 和SoH 之間的耦合關系。 因此,將SoC 和SoH 算法進行簡單疊加無法滿足新能源汽車BMS的實際需要。

為解決上述問題,本研究結合深度神經網絡理論,提出了一種可實現SoC 和SoH 聯合估計的計算框架,通過卷積神經網絡(convolutional neural network,CNN) 和長短期記憶網絡(long short term memory,LSTM) 挖掘輸入特征量電壓到SoC 和SoH 的耦合映射關系,該方法具有運算量小、精度高等優點。

2 狀態聯合估計方法

2.1 問題描述

本研究需要解決的問題是在給定固定長度的動力電池充電測試數據片段后,根據數據片段信息實現對動力電池SoC 和SoH 的同步估計。 其中,SoC 指的是數據片段末端動力電池的荷電狀態,SoH 定義為動力電池當前狀態下的可用容量。 充電測試的數據片段在本研究中特指電池的端電壓數據,因為目前動力電池組大多采用恒流充電模式,且由于現代BMS 溫控性能較好,充電過程中溫度不會發生明顯變化,對于可測數據電壓、電流、溫度而言,僅電壓數據會在充電過程中發生明顯變化,故輸入數據片段僅采用電壓數據即可。需要說明的是,模型實際使用時的充電倍率和環境溫度必須與訓練時的條件相近,即如果訓練時動力電池的充電倍率為1C,恒溫控制為23 ℃,那么實際應用時也應和上述條件相近。

2.2 估計方法

聯合狀態估計的深度神經網絡架構(圖1) 主要包括1 個輸入層、10 個卷積層、1 個全局平均池化(global averaging pooling,GAP) 、1 個LSTM 層、1 個全連接層(FC) 等,其中卷積層進一步由卷積操作、最大池化以及截斷線性(rectified linear unit,ReLU) 激活函數組成。

圖1 聯合狀態估計的深度神經網絡架構Fig.1 Deep neural network architecture for state co-estimation

圖1 中,輸入層即數據片段的輸入接口,輸入層長度需要與數據片段長度保持一致。 在本研究中數據片段長度為500,因此輸入層長度也為500。

卷積操作可以有效提取局部數據中的特征信息[14],非常適用于提取電壓數據中隱含的與SoC 和SoH 高度相關的特征細節。 假設Wm表示第m個卷積核(卷積核的長度和高度分別為h和w) 的權重,bm表示對應的偏置項,那么對于數據片段輸入D,卷積操作的輸出ym可以表示為

上述卷積操作通過一定的步長在輸入數據片段上逐一掃過,從而構成完整的卷積輸出。

最大池化層可以縮減模型的大小,提高計算速度,同時提高所提取特征的魯棒性。 前向傳播時,最大池化層輸出特征圖Y中某一位置的值的輸入特征圖X對應池化窗口的最大值,即

式中:n是特征圖號;c是通道號;h是行號;w是列號;kh,kw∈[1,K],K是池化窗口的邊長。

ReLU 是人工神經網絡中常用的激活函數,其數學定義如下:

即:當輸入大于0 時,ReLU 被激活,可以直接輸出;當輸入小于0 時,ReLU 將被抑制,輸出為0。 ReLU 函數相比于tanh、sigmoid 等其他激活函數,具有梯度下降及反向傳播效率更高、梯度爆炸和梯度消失問題不易出現、整體計算成本較低等顯著優勢。

GAP 本質上也是一種平均池化操作,旨在取代經典卷積層中的部分全連接層。 GAP 意味著每個輸入特征圖的區域被當作相應特征圖的輸出[15]。 假設輸入特征圖為n,每個特征圖的大小為m×m,如果使用全連接層,則應將原始圖展平為n×m2的向量。 然而,如果使用GAP 代替全連接層,輸出長度可以減少到n。 從以上分析可以看出,當特征圖較大時,GAP 可以大大減輕計算負擔。 此外,與全連接層相比,GAP 層沒有額外的參數和復雜的乘法,進一步降低了計算成本。 同時,GAP 層直接規范了網絡結構,從而緩解了過度擬合問題。

LSTM 是最常用的循環神經網絡結構之一,其關鍵是內部狀態sc。 內部狀態可被視為信息已被添加或已被刪除的載體,這種信息流通過“門”結構進行調節。 “門”結構是LSTM 的一個獨特特征,能夠選擇性地對信息進行傳遞。 LSTM 主要包括遺忘門、輸入門和輸出門[16],其結構如圖2 所示。

圖2 長短期記憶神經網絡架構Fig.2 Network architecture of the LSTM

遺忘門:LSTM 的第一步是決定丟棄哪些信息,這個決定由遺忘門的sigmoid 層決定,它接受t時刻的輸入x(t)和t-1 時刻的隱藏狀態h(t-1),并為sc中的每個狀態輸出一個0 ~1 的數字。 1 表示完全保留狀態值,而0 表示完全丟棄值。 例如,對于電池SoC 和SoH 狀態的估計,丟棄的信息可以是相鄰循環之間劣化數據的異常值、噪聲和冗余信息等。 遺忘門的計算如下:

式中:WfX和Wfh分別表示遺忘門中的輸入權重和狀態權重;bf表示遺忘門偏置,為sigmoid 函數。

輸入門:LSTM 的第二步是決定在內部狀態中存儲哪些新信息,該步驟的核心是sigmoid 函數和tanh 函數,其中sigmoid 函數決定要更新哪些值,tanh 函數將創建一個可增加到隱藏狀態的新候選狀態向量。 輸入門的計算如下:

式中:WiX和Wih分別表示輸入門中的輸入權重和狀態權重;bi表示輸入門偏置;WgX和gih分別表示tanh 層中的輸入權重和狀態權重;bg表示tanh 層偏置。

根據式(4) 至式(6) 更新內部狀態值:

輸出門:LSTM 的最后一步是決定輸出哪些信息。 在內部狀態sc通過tanh 層后,將其乘以sigmoid 函數的輸出以獲得剩余狀態值,即

式中:WoX和Woh分別表示輸出門中的輸入權重和狀態權重;bo表示輸出門偏置。

全連接層是神經網絡中最常見的層,其作用是將輸入空間線性加權后,經過ReLU 函數去線性化,映射到輸出空間。 由于神經網絡需要實現SoC 和SoH 的聯合估計,因而全連接層(即輸出層) 的神經元數量為2,分別代表SoC 和SoH 的估計值。

3 電池數據集

本研究使用的電池數據集由牛津大學于2017 年發布[17]。 數據集包含Kokam 公司生產的8 個小型鋰離子電池,型號為SLPB533459H4,編號為1#至8#,電池外形及性能參數分別如圖3 和表1 所示。 電池的負極材料是石墨,正極材料是鋰鈷氧化物和鋰鎳鈷氧化物的混合物。

表1 電池性能參數Tab.1 Configuration parameters of the battery

圖3 電池外形參數(單位:mm) Fig.3 Size of the battery(unit: mm)

電池均在40 ℃恒溫箱中進行測試。 所有電池首先進行恒流-恒壓(constant current-constant voltage,CCCV) 充電,然后進行城市工況Artemis 曲線的循環放電,每100 個循環進行一次特性測試,包括1C(電流為740 mA) 和pseudo-OCV(電流為40 mA) 循環測試。 測試過程中以1 Hz 的頻率記錄數據,包括電壓、溫度和電量。 圖4 給出了第100 次循環時1#電池的記錄數據[18]。

圖4 第100 次循環時1#電池的記錄數據Fig.4 Data record of battery 1#at 100th cycle

pseudo-OCV 測試最重要的作用是提供校準容量。 pseudo-OCV 測試時的激勵電流非常小,在這種情況下僅約為1/18C,充電和放電測試時的平均累積電量可以定義為實際容量。 因此,根據圖4 所示的結果,第100 次循環時1#電池的實際容量可以校準為(739.2+734.8) mA·h/2=737 mA·h。

圖5 顯示了基于pseudo-OCV 測試計算的8 個鋰離子電池的容量衰減情況。 從圖5(a) 可以看出:前1 500 次循環,8 節電池的容量衰退基本一致,說明電池在使用早期時一致性相對較好。 然而,隨著電池的老化,容量差異逐漸擴大,如圖5(b) 所示。 特別地,由于未知原因,5#電池在末期出現異常退化,容量突然下降表明5#電池內部可能出現某些故障。 為避免此處可能引入的誤導性結果,后續訓練或測試數據集中不包括5#電池末期的數據。

圖5 實驗中8 個鋰離子電池的容量衰減情況Fig.5 Degradation of the eight Li-ion batteries

對于SoC,可以用圖4 中的電量來表示,如圖4(b) 所示。 由于實驗中采用恒流充電,電量線性增加,也反映出SoC 在線性增加。

4 算法驗證

表2 給出了網絡各層的詳細結構參數。 對于最大平均池化層、ReLU 層和GAP 層,沒有特殊的超參數;對于LSTM 層,設置了4 個隱藏層單元數;對于全連接輸出層,如前所述采用ReLU 激活函數且輸出維度為2。

表2 卷積神經網絡各層的詳細參數Tab.2 Detailed information about convolutional layers in the proposed mothod

模型驗證流程如圖6 所示,訓練數據集為1#至6#電池,測試數據集為與訓練集不同的7#和8#電池,以驗證模型的泛化能力。 首先用1#至6#電池訓練深度神經網絡,獲得網絡參數,然后將7#和8#電池的電壓數據輸入神經網絡,獲得估計的電池容量,再與數據集中電池的標定容量進行對比,以獲得模型的估計誤差。

圖6 模型驗證流程Fig.6 Flowchart of model verification procedure

采用Adam 算法來訓練網絡,學習率最初設置為0.2,并且以指數形式隨著訓練的進行而逐漸減少,每訓練10 輪,將學習率乘以0.99,以獲得更好的網絡收斂性能[19]。 訓練時最大訓練輪數為5 000,每次訓練的樣本個數設置為2 048。 訓練用的電腦CPU 為Intel 酷睿i7-12700F@ 4. 9 GHz,GPU 為NVIDIA GeForce RTX3060,訓練時間持續約148 h。 需要說明的是,盡管訓練持續時間很長,但在網絡訓練完成時,用于預測的時間非常短。 給定長度為500 的輸入數據段,執行一次聯合估計只需要約0.69 ms。 因此,該方法有望應用于計算能力有限的車載BMS。

為進一步說明本方法在精度方面的優勢,將本方法與5 種先進的機器學習算法進行比較,包括將本方法中LSTM 層刪除的純CNN、支持向量回歸(support vector regression,SVR)[20]、集成學習(ensembling learning,EL)[18]、多層感知器(multilayer perceptron,MLP)[21]和決策回歸樹(regression tree,RT)[22]。 5 種方法效果評估流程均類似圖6,對比時采用和本方法相同的訓練集和測試集。 另外,由于SVR 和RT 方法無法同時給出2 個輸出,即無法實現SoC 和SoH 的聯合估計,所以SoC 和SoH 的估計是采用兩套模型完成的。 6 種方法在測試集上的平均誤差如表3 所示。 實驗結果表明,本方法可以實現較為精確的SoC 和SoH 聯合估計,SoC 和SoH 的估計均方根誤差分別是12.09 mA·h 和10.89 mA·h,僅為標稱容量的1.63%和1.47%。

表3 不同方法在測試集上的SoC 和SoH 聯合估計誤差Tab.3 Joint SoC and SoH estimation error of different approaches on testing dataset

從表3 可以看出:無論是SoC 還是SoH,本方法均表現出6 種方法中最高的估計精度。 對比CNN 方法可以看出,引入LSTM 層有效地捕捉了電池動態特性數據中的時域關聯,因而精度有一定程度的提升,其他方法無論是估計誤差的平均值還是方差,均不如本方法,說明本方法在估計精度方面具有顯著優勢。

5 結語

本研究針對車用動力電池SoC 和SoH 的聯合狀態估計需求,提出了一種融合CNN 和LSTM 的聯合狀態估計方法,克服了傳統方法無法解析SoC 和SoH 耦合關系的不足。 利用深度神經網絡特征自提取功能,構建了從可觀測電壓數據片段輸入到SoC 和SoH 的映射模型,實現了SoC 和SoH 的快速、高精度聯合估計。 對所提方法在電池測試數據集的1C充電數據上進行了驗證,結果表明SoC 和SoH 的估計均方根誤差分別是12.09 mA·h 和10.89 mA·h,分別僅為標稱容量的1.63%和1.47%,優于CNN、SVR、EL、MLP、RT 等機器學習算法。

猜你喜歡
動力電池容量卷積
基于3D-Winograd的快速卷積算法設計及FPGA實現
從濾波器理解卷積
基于傅里葉域卷積表示的目標跟蹤算法
動力電池礦戰
動力電池回收——崛起的新興市場
《動力電池技術與應用》
《動力電池材料》
2015年上半年我國風電新增并網容量916萬千瓦
2015年一季度我國風電新增并網容量470萬千瓦
改進等效容量法在含風電配網線損計算中的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合