張 菁 吳尚青
(1池州職業(yè)技術學院 安徽池州 247100;2 江西省機場集團公司九江機場分公司 江西九江 332000)
鋰離子電池的優(yōu)勢有自放電率低、一定空間下存儲能量高、使用時間長、循環(huán)次數多,是電子產品、電動汽車乃至航天產品中必不可少的一部分。然而,電池的性能會依據電池充電和放電數量的遞增而逐漸惡化[1-2]。電池性能的降低會嚴重影響各類產品的使用壽命、有時會造成一定的經濟損失、嚴重時甚至會發(fā)生災難。而荷電狀況是評價電池性能的關鍵指標,所以,特別須要對電池荷電狀況進行監(jiān)控,并對其可靠性進行評估,以獲得準確的電池容量估算[3-4]。為了跟蹤電池的劣化情況,選擇逐漸減小的容量作為劣化性能的指標。
常用的電池荷電狀況監(jiān)控與預測方法主要分為數學模型算法和數據驅動算法[5]?;跀祵W模型的算法主要是依據基礎的數學模型去捕捉電池衰減信息,如Liu等人通過引入粒子濾波(particle filter,PF)算法去估算電池健康狀況[6]。Sun等人使用無損卡爾曼濾波(unscented kalman filter,UKF)預測電池荷電狀況[7]。Hu等人應用粒子濾波與核平滑來分析可能的電池剩余使用的時長[8]。Su等人提出的一種基于交互多模型的粒子濾波(interacting multiple model particle filter,IMMPF)方法能夠融合各種容量的鋰離子電池[9]。Hussein 等人將人工神經網絡方法應用于電動汽車的荷電狀況評估之中[10]。數學模型方法能較好的對電池容量衰減狀況進行預測,但這類方法較為復雜,且對電池的類型依賴度較高。
有時數學模型方法由于缺乏對電池衰減狀況的理解,可能無法為復雜系統(tǒng)建立數學模型。相比之下,當有足夠的歷史數據時,可以使用數據驅動方法來解決此類問題。數據驅動方法是從性能數據中提取特征,例如依據電流、電壓、容量和阻抗特征來預測電池的健康狀況[11-14]。此類方法不僅高度依賴于原本數據的數量,而且還依賴于原本數據的質量。近幾年隨著機器學習技術的發(fā)展,越來越多學者開始將神經網絡方法(convolutional neural network,CNN)應用在電池荷電狀況評估中。由于循環(huán)神經網絡可以表示電池老化的內部信息,Liu等人提出一種自適應的循環(huán)神經網絡用于預測鋰離子電池的剩余使用壽命[15]。但循環(huán)神經網絡經過多層傳播后梯度會存在消失的問題,為此Yoon等人提出基于長短記憶的循環(huán)神經網絡,該方法能夠長時間有效的存儲和更新關鍵信息。文章則在LSTM算法的基礎上引入注意力(Attention)方法,能夠專注于電池數據中的關鍵信息。實驗表面,文章方法對鋰電池荷電狀況預測結果比無損卡爾曼濾波和LSTM預測效果更佳。
電池的荷電狀況直接反映了電池的好壞程度和可持續(xù)供電能力。對荷電狀況進行監(jiān)控,能有效的提高電動產品的使用體驗。高精度的荷電狀況估算不僅提供了電池剩余有效能量的信息,還能對電池的可靠性進行估計。設計鋰電池荷電狀況時,需要考慮電池完全充電狀況下的初始容量Q0和電池使用之后或者長時間未使用后的剩下的容量QT,其中SOC為電池的荷電狀況,如式(1)所示。
(1)
在實際應用中SOC預測算法種類多樣且有著較大的區(qū)別,但整體預測系統(tǒng)都離不開圖1的結構。電池單元通常是串聯(lián)或并聯(lián),并且包含至少兩個輸入端。系統(tǒng)首先通過模數轉換器(analog to digital converter,ADC)把感測電阻中的電壓、溫度和電流數據變成數字信息,然后通過微控制器或者微處理器來評估整體的荷電狀況。荷電狀況預測系統(tǒng)里還需要兩個存儲單元,一個是只讀的存儲器(read only memory,ROM),另一個是隨機存取的存儲器(random access memory,RAM)?;緮祿鎯υ赗OM中,如放電量與充放電效率等。歷史數據存儲在RAM中,例如充電或者放電循環(huán)次數,各個參數對荷電狀況的預測準確性都有影響。如果荷電狀況預測是基于電流積分法的,則還需要對荷電狀況進行校準,因為電流測量的不確定性會導致誤差隨時間逐漸累積[16]。
圖1 SOC預測系統(tǒng)
CNN就是學者們受貓視覺神經元啟發(fā)下提出的特定連接方法,主要負責識別物體的拓撲結構。CNN中的卷積層能有效的捕捉目標對象的特征信息,在卷積層后加入池化層還可以減少整體計算量。與傳統(tǒng)的全連接多層感知器網絡相比,CNN神經元的連接稀疏且權值固定,能夠以很高的計算效率處理較大的輸入。
常用的一維CNN如圖2所示,它是由一維卷積層和一維最大池化層組成,然后使用一維上采樣層和兩層一維卷積層。通過卷積層提取數據集主要特征,為防止過擬合加入池化層,降低特征維度同時又可以保留特征信息。池化層減少了數據維度,使用上采樣層放大特征維度。
圖2 一維卷積網絡
(2)
ft=σ(Wf·X+bf)
(3)
it=σ(Wi·X+bi)
(4)
ot=σ(Wo·X+bo)
(5)
ct=ft⊙ct-1+it⊙tanh(Wc·X+bc)
(6)
ht=ot⊙tanh(ct)
(7)
其中it,ft,ot分別為輸入門、遺忘門和輸出門。Wi,Wf,Wo∈Rd×2d為權重矩陣;bi,bf,bo∈Rd是訓練過程中需要學習的偏置,依次為輸入門、忘記門和輸出門的變換參數。σ為Softmax函數,tanh為雙曲正切函數,⊙表示元素相乘。xt為LSTM單元輸入,隱藏層的向量為ht。LSTM能夠將遺忘的歷史信息與當前信息關聯(lián)起來,充分利用數據之間的關聯(lián)性[17]。
影響鋰電池荷電狀況的因素主要有電壓I、溫度T和電流V,文章將這三類因素作為模型的輸入數據。使用CNN網絡能夠有效的提取數據的特征信息,但是卻無法解決數據之間的關聯(lián)性問題。因此,文章使用CNN提取特征信息然后引入LSTM算法來保留歷史數據信息。但使用LSTM來保留訓練過程中的歷史信息時也會增加模型的復雜度,此時可以使用Attention機制對數據進行加權平均,該機制可以動態(tài)生成不同連接權重,能夠有效的處理變長信息序列。最后使用Softmax函數輸出預測的荷電狀況,整體框架如圖3所示。
圖3 文章算法
圖3中的H∈Rd×N是由LSTM算法內的隱藏層向量[h1,…,hN]組成的矩陣,其中d是隱藏層的大小,N是給定數據的長度。注意力的權重向量 α 與隱藏層的加權值為r,整個Attention方法可以用公式(8)來表示。
(8)
α=softmax(wTM)α∈RN
(9)
r=HαTr∈Rd
(10)
式(8)中的M為中間注意力表示,Wh∈Rd×d,Wk∈Rd×d為對應的映射參數;ka表示嵌入參數,eN為一維向量;?為外積操作。式(9)中α為權重向量,式(10)中r為隱藏層與Attention權重的加權表示。將上述公式進行整合得到式(11)結果。
h*=tanh(Wpr+WxhN)
(11)
其中Wp,Wx均為模型訓練過程中的投影參數,h*就是輸入數據的特征表示。使用Attention機制能夠從很多的數據中捕獲最關鍵的特征數據。
文章使用由美國宇航局(NASA)提供的電池充放電數據集[18]。在室溫下,通過充電、放電或阻抗這3種不同的運行模式對四種類型鋰離子電池進行實驗,電池編號分別為5、6、7和18。這些電池主要在三種溫度下進行實驗分別是24℃、4℃和43℃,主要考慮到低于常溫24度和高于常溫對電池荷電狀態(tài)的影響。首先將同種類型電池在1.5A的恒流模式下進行充電,直到電池電壓達到4.2V,然后繼續(xù)在恒定電壓模式下充電,直到充電電流降至20mA。還可以在恒電流為2A的水平下進行放電,直到編號為5、6、7和18的電池電壓分別降至2.7V、2.5V、2.2V和2.5V。阻抗測量則是通過電化學阻抗譜頻率從0.1Hz到5kHz開始掃描。重復的充放電循環(huán)導致電池加速老化,而阻抗測量則提供對電池內部參數的洞察,這些參數隨電池老化而發(fā)生變化。當電池達到極限時,實驗停止即額定容量下降30%。由于對電池荷電狀態(tài)影響較大的主要有電壓、溫度和電流,文章將不考慮阻抗模式下的實驗室數據。對數據進行整理后總共有815組數據,其中部分數據如表1所示。
表1 NASA數據集樣例
獲取的數據首先進行歸一化處理,主要將數據控制在同一范圍內避免部分較大的數據對結果的影響,歸一化公式如12所示。
(12)
X為原始數據,min是某一維度數據的最小值,max是數據中的最大值,y是處理后的數據。
為驗證文章算法預測結果好壞,選取具有代表性的UKF算法以及LSTM算法同文章算法進行對比。不同算法均在同一實驗環(huán)境下,CPU為Intel Core i7-6700,頻率3.4 GHz,編程環(huán)境python 3.7.0,操作系統(tǒng)Windows7 64位,8GB內存。文章算法將815組數據分為570組的訓練集和245的測試集,使用訓練樣本訓練模型,將模型輸出的預測結果與真實的荷電狀況作對比。為了更直觀的對比三種算法預測結果,將電池不同放電周期T下的荷電狀況進行對比,如圖4-6所示。
圖4 UKF算法下不同放電周期SOC值變化
從圖4可以看出,在放電周期為0~20時,UKF算法預測結果與實際的SOC數據偏差較大,慢慢的預測結果開始接近真實的SOC數據,但是仍然會有部分數據與真實結果偏差較大的情況。從圖5可以看出,LSTM也是開始的時候與真實數據偏離極大,但后期慢慢穩(wěn)定并逐漸接近真實數據。從圖6可以看出,文章算法整體上和原始數據都較為靠近,預測效果更佳。
圖5 LSTM算法下不同放電周期SOC值變化
圖6 文章算法下不同放電周期SOC值變化
鋰電池的荷電狀況可以反映電池的供電能力,對荷電狀況準確的預測能夠有效預防突發(fā)狀況。文章在LSTM算法的基礎上進行改進,依據荷電狀況基本原理,將美國航天局電池數據集中的電流、電壓和溫度作為算法的輸入。添加一維卷積神經網絡算法能有效提取數據集的特征,同時為了降低LSTM算法計算復雜度,使用注意力機制提取數據的關鍵信息。通過與UKF算法、LSTM算法對比,文章算法在預測電池荷電狀況性能上表現更佳且更加穩(wěn)定。但文章并未研究其他電池數據集對算法的影響,選擇不同類型的數據集繼續(xù)研究將是下一步的工作。