?

基于單步滑動窗口-長短期記憶網絡的鋰電池SOC估計算法

2024-03-10 03:34王志亮韓尚卿范曉東于承航
電源技術 2024年2期
關鍵詞:充放電滑動時刻

王志亮,吳 勇,韓尚卿,范曉東,王 猛,于承航

(1.北京機電工程研究所,北京 100071;2.中電科藍天科技股份有限公司,天津 300384)

鋰電產業作為形成新質生產力的支柱產業,是構建清潔低碳能源體系的關鍵部份。鋰離子電池由于具有能量密度高、循環壽命長等優點,被廣泛應用于新能源汽車、航空航天等領域[1-3]。鋰離子電池荷電狀態(SOC)的準確估計是保證電池安全運行、延長電池使用壽命的關鍵,對鋰電池的應用推廣具有重要意義,國內外研究者們對其展開了大量的研究。

常用的SOC估計方法包括直接測量法、數據驅動法和基于模型的方法。直接測量法屬于開環估計方法,通常包括開路電壓法(OCV)和安時積分法[4]?;贠CV的SOC估計方法中,一方面OCV-SOC關系受電池的工作環境溫度影響較大。另一方面,一般認為經長時間擱置后的電池端電壓即為電池的開路電壓,但電池從工作狀態到平衡狀態需要很長時間,實際工作條件下難以在線獲取OCV值[5-7]。安時積分法是目前應用最廣泛的SOC估計方法,它具有計算簡單、易于實現等優點,但該方法對SOC初值精度要求較高,隨著時間的推移,低精度的SOC初始值將導致SOC估計誤差的累積[8]。

在基于模型的SOC估計方法中,最常見的為基于卡爾曼系列的改進方法。擴展卡爾曼濾波算法(EKF)是在卡爾曼濾波算法(KF 算法)的基礎上將KF的高階項忽略,僅采用一階項,從而將非線性簡化為線性。文獻[9]構造了一種基于自適應EKF 算法(AEKF)實現電池SOC估計的方法,實驗表明,所提SOC估計方法具有較強魯棒性,且能實現SOC的高精度估計。文獻[10]通過使用有限差分法代替擴展卡爾曼濾波算法中非線性部分的微分運算,提出了一種基于有限差分擴展卡爾曼濾波算法(FDEKF)實現電池SOC的高精度估計,該方法降低了模型線性化所產生的誤差,可以更好地表現電池的動態特性,可獲得良好的SOC估計效果。通過卡爾曼濾波及其改進算法可以很大程度上解決SOC預測的問題,但該方法的SOC估計結果受模型精度的影響較大,需進一步優化。

基于數據驅動的SOC估計方法主要包括神經網絡、機器學習與支持向量機(SVM)等方法。這些方法可在不建立電池模型的情況下直接通過電池實驗數據進行訓練,獲取電流、電壓等數據與SOC的映射關系,實現動力鋰離子電池SOC的預測。該方法無需設計電池等效模型,且在非線性問題中具有較高的準確性,所以可以很大程度上解決動力鋰離子電池的非線性問題[11-12]。文獻[12]提出了一種改進的深度神經網絡(DNN)的SOC估計方法。在整個充放電周期中使用不同溫度下測量的電流和電壓數據進行訓練和測試,實現SOC的高精度預測。實驗結果表明,基于DNN 的SOC估計方法的均方根誤差值小于5%?;跀祿寗拥姆椒ㄟM行估算的準確性在很大程度上會受到訓練樣本的影響,通常需要較大的數據量和前期訓練時間,但是該方法具有較強的學習性和潛力,是未來的重要研究方向之一。

綜合考慮SOC估算精度與計算復雜度之間的均衡,結合現有SOC估算方法的不足,本文提出了一種基于數據增強的長短期神經網絡(LSTM)和單步滑動窗口技術相結合的SOC估計方法。并通過自定義的充電、放電與模擬真實飛行器充放電實驗工況對該方法進行了驗證。

1 理論分析

1.1 單步滑動窗口

在將鋰電池電流數據輸入LSTM 網絡之前,通常情況下需要對獲得的數據集進行預處理,將其轉化為LSTM 網絡模型所能夠輸入的特征?;瑒哟翱诳梢杂糜趯㈤L序列數據切割成較短的序列塊并對數據做出不斷的更新,每個序列塊包含固定長度的時間步。這樣可以將原始序列數據轉換成適用于LSTM 輸入的特征量。

單步滑動窗口在滑動窗口的基礎上,將上一時間的數據作為輸入,當前時刻的數據作為特征標簽,最終輸入LSTM 網絡訓練。使用單步滑動窗口可以更好地表征鋰離子電池的電流特性,且能防止過擬合現象的產生,從而提高模型的準確度。單步滑動窗口方法的鋰電池SOC預測流程如圖1 所示。

圖1 使用單步滑動窗口法的鋰電池SOC預測流程

算法主要分為5 步。第一,定義滑動窗口位置。第二,初始化窗口,使其滿足特定條件。第三,開始滑動窗口,遍歷整個數據。第四,處理窗口內數據,不斷更新前后時刻。第五,繼續滑動窗口,直到數據結尾。程序在一個窗口內有效地處理數據,避免重復計算。使用滑動窗口數據增強后的數據進行神經網絡的訓練,再使用測試數據對神經網絡進行檢測,完成對鋰離子電池荷電狀態的初步估計。

1.2 長短期記憶網絡

長短期記憶網絡是一種時間循環神經網絡(RNN),其設計的初衷是為了解決常規RNN 存在的長期依賴問題。所有的RNN 都具有一種重復神經網絡模塊的鏈式形式,在標準RNN 中,該重復結構模塊只包含一個較簡單的結構,例如一個tanh 層。常見的神經網絡算法會將無用的歷史數據轉移到下一時刻,導致迭代結果的輸出誤差較大。然而,LSTM 可以使用遺忘門處理無用的歷史數據來解決這個問題。這種設計可以有效地實現一些數據的保留和一些數據的遺忘,LSTM 結構如圖2 所示。

圖2 LSTM單細胞結構

如圖2 所示,在一個單獨的LSTM 細胞單元中,分別包括當前時刻的輸入Xt和前一時刻的輸入Ht-1。它們由3 個完全連接的sigmoid 層和1 個tanh層處理,sigmoid 層在圖中用σ表示,其值為0~1,當任何數與0 相乘時都得0,表示數據被遺忘;與1 相乘時都等于原數據,則表示被記住。tanh 層的值為-1~1,被使用創建新的候選單元向量并加入到上一時刻的細胞狀態Ct-1中。

假設隱藏單元的數量為h,批量大小為n,輸入數量為m。因此,輸入表示為Xt∈Rn×m,前一時刻的隱藏狀態為Ht-1∈Rn×h。同 樣,t時刻的輸入門It∈Rn×h,遺忘門Ft∈Rn×h,輸出門Ot∈Rn×h。

首先,當數據進入當前神經單元,會從上一時刻的細胞狀態Ct-1中丟棄某些信息。丟棄的信息由遺忘門決定。遺忘門會收集當前時刻的輸入Xt和前一時刻的輸入Ht-1,將其通過sigmoid 層進行非線性映射得到所需的Ft,如式(1)所示:

式中:Wxf∈Rm×h,Whf∈Rh×h都屬于權重參數;bf∈Rh,它屬于偏置參數。

神經單元通過輸入門決定什么樣的新信息加入到當前細胞狀態中。分別通過sigmoid 層和tanh 層決定,如式(2)~(3)所示:

如式(2)~(3)所示,當前時刻的輸入Xt和前一時刻的輸入Ht-1同樣經過sigmoid 層決定特定的信息被記住或者遺忘。此外,tanh 層從Xt和Ht-1中創建新的候選單元向量t,它將加入到細胞狀態中。

當輸入門和遺忘門得到所需數據時,下一步將通過所得數據更新細胞狀態,如式(4)所示:

式中:⊙表示每個元素的乘法;遺忘門數據Ft與上一時刻細胞狀態Ct-1相乘,此時細胞狀態中的某些信息已經被選擇遺忘,同時加上輸入門數據與新的候選單元相乘的數據就得到新的細胞狀態。最終通過輸出門輸出所需要的值,如式(5)~(6)所示:

同樣,基于sigmoid 層決定什么樣的數據加入到新的輸出當中。接著,根據上一時刻的細胞狀態Ct,得到我們所需要的輸出Ht。換句話說,輸出數據由輸出門數據Ot與遺忘門和輸入門數據所共同決定。當輸出門接近1 時,保留的信息可以傳遞給預測部分。當輸出門接近0 時,記憶元中只保留信息,不更新隱藏狀態。如果遺忘門為1,輸入門為0,則Ct-1保存到當前時刻,可以有效緩解梯度消失問題。

上述門和細胞單元決定了LSTM 對當前細胞單元內容進行選擇性的保留。如果檢測到的特征被認為是重要的,則遺忘門將被關閉,并將存儲內容長期保留,這相當于捕獲了一個長期特征依賴。另一方面,該單元可以決定通過打開遺忘門來重置存儲器內容。由于這兩種操作模式可以同時發生在不同的LSTM 單元上,因此具有多個門控的RNN 可以捕獲到長時間序列的相關性關系。

基于單步滑動窗口-長短期記憶神經網絡模型的鋰離子電池SOC預估流程圖如圖3 所示。

圖3 單步滑動窗口-長短期記憶神經網絡模型預估流程圖

由圖3 可知,本文所提出的基于LSTM 網絡估算電池SOC的具體過程如下:1)用于LSTM 網絡估計的電池SOC模型的構建;2)根據工況測試實驗采集的電流數據,獲得參考SOC,通過滑動窗口技術對數據預處理;3)選取訓練樣本和測試樣本,完成LSTM網絡模型的建立;4)通過將當前時刻預測值與當前時刻的實際觀測值進行比較,更新模型參數和網絡狀態,得到當前時刻狀態變量的最優值。

2 實驗結果分析

為驗證所提算法的SOC估計效果,通過大功率充放電設備、恒溫箱等設備搭建實驗平臺。以某型號鋰離子電池組中單體額定容量為2.897 Ah 的鋰離子電池為研究對象,對電池進行充電、放電與模擬真實飛行器充放電實驗測試,獲取相關實驗數據并對所提算法進行驗證。充電、放電與模擬真實飛行器充放電實驗測試結果如圖4 所示。本文所提出的單步滑動窗口-長短期記憶網絡算法的各項超參數如表1 所示。

表1 神經網絡參數設置

圖4 鋰電池電流測試曲線圖

根據超參數設置結果,LSTM 算法按照滑動窗口為1 的大小對數據進行預處理,錯位一個時間步作為LSTM 網絡的輸入。模型學習訓練過程中,會在第125 次迭代時學習率乘于0.2 從而防止模型過擬合。以均方根誤差(RMSE)為評價函數,訓練得到合適的網絡模型,最后獲得高精度SOC預估值,RMSE評價函數結果如圖5 所示。

圖5 三種工況下RMSE評價函數結果圖

如圖5 所示,三種工況下所提出的算法評價函數均能夠快速降低至0 附近,在第125 次迭代處三種工況下評價函數均有再次下降趨勢,能夠有效防止過擬合現象。

為了驗證該算法在復雜應用條件下對鋰離子電池SOC估計的運行效果,使用自定義的充電、放電與模擬真實飛行器充放電實驗數據進行驗證,其采樣步長分別為1、1 和0.005 s。所提出的單步滑動窗口-長短期記憶網絡算法SOC估計結果如圖6 所示。

從圖6 中可以看出,本文所提出的單步滑動窗口-長短期記憶網絡算法在充電、放電與模擬真實飛行器充放電工況下均能夠快速收斂。充電與放電工況收斂至2%的誤差以下均在10 s 以內。模擬真實飛行器充放電工況在0.01 s 之內收斂至2%的誤差。從圖6 中可以看出,算法快速收斂至2%誤差以后,最大SOC預測誤差均在0.004 3 以下,體現了本文所提算法的穩定型與魯棒性。此外,采用均方偏差(MSE)、均方根誤差(RMSE)和平均絕對誤差(MAE)性能指標進行評估,結果如表2 所示。

表2 充電、放電與模擬真實飛行器充放電實驗工況下算法性能指標

由表2 可知,單步滑動窗口-長短期記憶網絡算法在3 種工況下,MAE性能指標最大不超過0.005,MSE性能指標最大不超過0.6,RMSE性能指標最大不超過0.015,結果表明,預估值與實際值之間存在很小的偏差,算法可實現鋰離子電池SOC的高精度估計,進一步證明了單步滑動窗口數據方法的有效性與快速性。

3 結論

SOC實時高精度估計是電池管理系統中狀態監測的重點和難點。本文基于長短期記憶網絡表征鋰電池的狀態和輸出特性,對神經網絡的輸入數據與輸出數據進行改進,并通過單步滑動窗口方法對LSTM 算法進行優化。實驗結果表明所建立的神經網絡模型結合單步滑動窗口方法能夠較好地實現對鋰電池SOC的估算,在充電與放電工況下算法能夠在10 s 內快速收斂,在模擬真實飛行器充放電工況下算法在0.01 s 內收斂至2%的預估誤差。收斂后估算誤差控制在0.005 以內,驗證了所提方法的有效性與快速性,具有廣泛的應用價值。

猜你喜歡
充放電滑動時刻
冬“傲”時刻
V2G模式下電動汽車充放電效率的研究
捕獵時刻
基于SG3525的電池充放電管理的雙向DC-DC轉換器設計
一種新型滑動叉拉花鍵夾具
Big Little lies: No One Is Perfect
鋰離子電池充放電保護電路的研究
街拍的歡樂時刻到來了
滑動供電系統在城市軌道交通中的應用
一天的時刻
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合