基于自適應神經網絡模糊推理系統(tǒng)的蓄電池SOH預測
鉛酸蓄電池是一個復雜的電化學系統(tǒng),其健康狀況SOH(State of Health)受電解液離子導電性、電解液濃度、蓄電池內阻、自放電特性、環(huán)境溫度等多種因素影響,老化失效機理復雜,很難建立數學模型對蓄電池的SOH進行準確預測[1]。
模糊神經網絡技術是目前用于復雜系統(tǒng)測試的有效方法,它可以建立在對被測對象的不完整或不正確認識的基礎上。單一神經元網絡僅僅是一個黑盒系統(tǒng),不能給蓄電池的SOH預測提供啟發(fā)式的知識。單一的模糊預測可以簡單實現啟發(fā)式的知識學習,但不能得到精確的預測結果。兩者的結合成為自適應神經網絡模糊推理系統(tǒng)ANFIS(Adaptive Neural Fuzzy Inference System),用該系統(tǒng)預測蓄電池SOH可以同時具有兩者的優(yōu)點,實現準確預測[2]。
1 自適應神經網絡模糊推理系統(tǒng)
簡單的自適應模糊推理系統(tǒng)有2個輸入和1個輸出,對于一階Sugeno模糊模型,其通用的規(guī)則由以下兩個if-then判斷分支組成[3-4]:
規(guī)則1:如果(x是A1)和(y是B1)則(z1=p1x+q1x+r1)
規(guī)則2:如果(x是A2)和(y是B2)則(z2=p2x+q2x+r2)
其中,x和y是輸入值,Ai和Bi都是模糊集,zi為在模糊規(guī)則下論域中的輸出值。其余參數是在具體的模型中確定的設計參數。該模型系統(tǒng)結構如圖1所示。
在圖1所示的五層結構中,第一層全部為自適應節(jié)點,每個節(jié)點的輸出與輸入向量的成員隸屬度函數相關。第二層為固定節(jié)點,僅僅作為一個乘法器,將輸入節(jié)點隸屬度函數加權相乘。第三層也是固定節(jié)點,將前一層輸出進行正則化處理。第四層為自適應節(jié)點,將第三層輸出與一階多項式相乘得到輸出。第五層只有一個輸出節(jié)點,用于將前一層輸出加權平均,得到最終預測結果。在第二層和第四層需要確定相關的權值參數,一旦最優(yōu)參數被確定,反向修正階段開始,在這個階段動態(tài)最優(yōu)調整預設參數值,并在前向傳播過程中計算神經模型系統(tǒng)的輸出值。ANFIS為一種通用的逼近器,在對模糊推理數量不限制的情況下,可以逼近任意非線性函數[5]。
2 蓄電池SOH建模
2.1 模型輸入選擇
ANFIS模型存在輸入選擇和輸入空間劃分的問題,預測過程可以看做從輸入空間到輸出空間的一個映射。依靠放電特性對SOH進行預測,需要選擇可以充分反映蓄電池SOH的樣本數據作為輸入,并為每個輸入確定隸屬度函數。
對于一組特定的蓄電池,其電池規(guī)格、工作溫度、自放電特性及電解液濃度在短時間放電過程中是大致恒定的,可以不作為輸入選擇。蓄電池內阻與SOH密切相關,但蓄電池內阻不僅受劣化程度影響,還受其他因素影響,因此不宜作為輸入選擇。放電電壓間的差異可以反映SOH,但其差值不是常數且放電電壓依賴于放電電流,因此也不宜作為輸入量??偨Y比較分析,可以選擇輸出的能量和放電深度作為模型的輸入[6]。
2.2 蓄電池SOH預測模型建模
為了使模型輸出能量不受不同個體和型號的影響,首先對輸出能量進行歸一化處理。以輸出能量最高者為參考,每個電池的輸出能量與最高輸出能量比值為歸一化數據樣本。對蓄電池SOH進行預測建模,得到Sugeno模糊推理系統(tǒng)模型,如圖2所示。
確定輸入變量后,以蓄電池SOH作為輸出構造一階Sugeno模糊系統(tǒng)模型,如圖2所示。對每個輸入分別使用4個隸屬度函數進行訓練,訓練后對數據進行測試以檢驗訓練后模型。
3 蓄電池SOH模型的MATLAB仿真
3.1 數據選擇
以裝甲車輛鉛酸蓄電池為例,在實際測試過程中,由于放電深度和放電終止電壓的限制,對蓄電池SOH的計算一般采用放電深度為5%~20%的短時間部分放電數據。
裝甲車輛鉛酸蓄電池在使用過程中,隨著放電的進行,端電壓下降,密度降低,但為防止極板產生硫化而對蓄電池造成損害,密度不能長時間低于1.11 g/cm3。因此裝甲車輛鉛酸蓄電池的輸出能量需保證在一定的范圍內。本模型采用輸出能量范圍為80%~100%的短時間測量數據作為ANFIS模型的輸入。
蓄電池的實際容量可以根據容量計算公式,通過核對性放電測試方法得到。本文對一組某型號裝甲車輛鉛酸蓄電池進行測試,選擇在放電深度為5%、10%、20%情況下的100組數據對ANFIS模型進行仿真。ANFIS模型的雙輸入分別為x(放電深度)和y(輸出能量),單輸出為f(預測容量)。
3.2 模型MATLAB仿真
本實驗采用的軟件為MATLAB 7.8.0(R2009a),仿真環(huán)境為toolboxes中的anfisedit工具。蓄電池SOH的MATLAB仿真步驟如下[7]:
(1)在軟件主窗口中輸入數據[x y f]。
(2)調用anfisedit工具載入實際測試數據[x y f],以100組數據作為訓練數據,以100組數據中偶數的數據作為測試數據。
(3)生成初始FIS,結構如圖3所示,模糊系統(tǒng)有2個輸入量,1個輸出量,覆蓋每個輸入量的都是4個模糊子集,每一個規(guī)則都有4個輸出,共有16個,最終所有模糊子集都被清晰化為1個輸出量。
(4)確定輸入量的初始隸屬度函數。每個輸入有4個隸屬度函數,采用鐘形函數(gbellmf)[8]。首先設定2個初始鐘形隸屬度函數的參數分別為r1[0.025 2 0.05],r2[0.025 2 0.1],r3[0.025 2 0.15],r4[0.025 2 0.2]及er1[0.04167 2 0.75],er2[0.0417 2 0.833],er3[0.0417 2 0.917],er4[0.04167 2 1],如圖4所示。
(5)對初始FIS進行訓練。以訓練樣本數據對模型進行訓練,經過150次訓練即達到了0.032 655的均方根誤差,獲得了很好的預測效果,可知ANFIS模型具有很強的非線性映射能力。
(6)輸入量隸屬度函數經過訓練后的變型。輸入量x和y的隸屬度函數經過訓練后分別得到了改善,如圖5所示。
(7)系統(tǒng)經過數據訓練后,可以通過圖6所示的模糊規(guī)則觀測窗查看輸入輸出量并進行蓄電池SOH預測。
4 模型驗證及數據分析
利用圖6所示的模糊規(guī)則觀測窗,通過在5%、10%、20%不同放電深度(x)下測量蓄電池的放電輸出能量(y),根據仿真得到的ANFIS模糊規(guī)則模型,得到預測容量(f)。實際容量的獲取采用核對性放電方法測量。通過預測容量與實測容量的對比來對模型進行驗證。在5%、10%、20%放電深度下ANFIS模型的預測數據與實測數據分別如表1、表2、表3所示。
通過表1~表3劣化程度模型預測,發(fā)現在5%放電深度時,預測值與實測值的均方根誤差為2.95;10%放電深度時,均方根誤差為2.4;20%放電深度時,均方根誤差為1.614。由此可知,模型預測的精確度隨放電深度的增加而提高,對裝甲車輛鉛酸蓄電池SOH的預測具有較好的適用性。
針對蓄電池劣化原因復雜的情況,采用了自適應神經網絡模糊推理系統(tǒng)對蓄電池SOH進行建模預測,通過實測數據驗證表明,該系統(tǒng)對蓄電池SOH的預測具有很高的準確性,且隨著放電深度的增加,預測精度逐漸提高。
參考文獻
[1] Xue Jianjun.Prediction of Ni-MH battery capacity by the artificial neural network method[J].Power Sources,2003,27 (3):305-307.
[2] PASSINO K M,YURKOVICH S.Fuzzy Control[M].北京:清 華大學出版社,2001:238-241.
[3] 李彬彬,陳鐵軍.基于自適應神經網絡模糊推理的倒立擺控制[J].微計算機信息,2007,22(8):27-28.
[4] 陳繼光,祝令德,孫立堂.基于自適應神經網絡模糊推理的形變數據
評論