蒙永龍 艾學忠 鄭巍 王明達 汪冬冬



基金項目:吉林省科技發展計劃(批準號:20190302063GX)資助的課題。
作者簡介:蒙永龍(1996-),碩士研究生,從事檢測技術與自動化裝置的研究。
通訊作者:艾學忠(1970-),教授,從事檢測技術與自動化裝置的研究,1135916263@qq.com。
引用本文:蒙永龍,艾學忠,鄭巍,等.基于自適應無跡卡爾曼濾波算法的鋰電池荷電狀態預測[J].化工自動化及儀表,2024,51(2):294-300.
DOI:10.20030/j.cnki.1000-3932.202402019
摘 要 針對無跡卡爾曼濾波在噪聲不穩定和工況復雜的情況下鋰電池荷電狀態預測準確度低的問題,提出基于二階等效RC電路模型,采用遺忘因子遞推最小二乘法對模型參數進行辨識,使用自適應無跡卡爾曼濾波算法(AUKF)對鋰電池荷電狀態進行預測,最后在DST數據工況下,驗證預測模型的準確性。對無跡卡爾曼濾波(UKF)算法和提出的AUKF算法進行仿真對比,結果表明:所提算法的最大誤差在±0.02之內,預測精度更高、適用性更強。
關鍵詞 鋰電池 荷電狀態 自適應無跡卡爾曼濾波 遺忘因子遞推最小二乘
中圖分類號 TM912? 文獻標志碼 A? ?文章編號 1000-3932(2024)02-0294-07
鋰電池的荷電狀態(State of Charge,SOC)是電動汽車電池管理系統的重要數據之一,它可以提供有關車輛電池管理策略的信息。目前,鋰電池的荷電狀態只能間接測量,通過路端電壓、放電電流及內阻等參數去預測是現在常用的方法。鋰電池荷電狀態預測的精準度直接影響著電池的壽命和安全性能[1]。
鋰電池荷電狀態的預測方法主要有以下兩種:
a. 依照鋰電池各項數據計算得出,如電流積分法和開路電壓法[2];
b. 對電池建模然后引入算法預測,如粒子濾波算法、BP算法及卡爾曼濾波(KF)算法等。
當初始容量已知時,電流積分方法計算電流隨時間的積分,以獲得流入或流出電池的電量,從而獲得剩余電量[3]。該方法操作簡單、穩定,在短時間內具有較高的精度。然而,當長時間測量電流時,可能會出現累積誤差,導致估計精度下降。開路電壓法需要知道電池的開路電壓和荷電狀態之間的特性關系,由于電池電動勢和開路電壓之間的誤差很小,可以通過測量電池靜置電動勢來找到相應的荷電狀態,但實驗過程需要很長時間,不利于研究[4]。神經網絡方法在樣本學習過程中不斷更新模型的權重和誤差,以提高模型的準確性。該算法可以在一定條件下準確快速地估計電池的荷電狀態,但仍面臨許多問題,如樣本算法的計算和存儲需要大量訓練,難以建立準確的模型[5];粒子濾波算法運算繁雜[6];KF算法比較依賴模型的精度。在模型精確的基礎上,KF濾波算法的荷電狀態預測精度較好[7]。
傳統的KF算法用于非線性系統時精度低、效果差,所以很多學者提出擴展卡爾曼濾波(Extended Kalman Filter,EKF)算法與無跡卡爾曼濾波(Unscented Kalman Filter,UKF)算法[8]。EKF用在非線性系統效果差且雅可比矩陣運算繁雜;UKF通過U變化得到Sigma點集,經過非線性處理后得到結果,然后用此結果更新均值和協方差[8]。UKF在預測鋰電池的荷電狀態時,系統噪聲繁雜,預測精度低。
筆者針對UKF估計荷電狀態時預測精度與實用性不理想等問題,提出自適應的無跡卡爾曼濾波算法(AUKF),在系統預測時一直更新狀態噪聲協方差與測量噪聲協方差,從而提升算法的精度和魯棒性。
1 鋰電池模型的建立及參數辨識
1.1 建立等效鋰電池模型
因為電池內部是非線性的,所以建立優良的鋰電池模型是荷電狀態估算的基礎。傳統的一階RC模型預測精度較低,理論上來說模型的階數越多越貼近真實狀態,但是模型參數計算會越復雜,綜合考慮之后,決定采用二階RC模型來對鋰電池建模,電路如圖1所示[9]。
圖1 等效電路模型
該二階RC鋰電池模型由歐姆內阻R、極化電容C、極化電阻R、極化電容C、極化電阻R、開路電壓U和端電壓U組成。由基爾霍夫定律知[10]:
U=U(SOC)-U-U-I(t)R? ?(1)
=-+? ? ?(2)
=-+? ? ? (3)
其中,I為鋰電池內部發的環路電流;U、U分別為R、C兩端的電壓與R、C兩端的電壓。
由式(1)~(3)建立電池連續系統方程:
U=U(SOC)-I(t)R-I(t)R(1-e)-
I(t)R(1-e)? ? ? (4)
其中,Δt為采樣周期;τ=RC,τ=RC,表示圖1中兩個RC電路的時間響應常量。
1.2 等效鋰電池模型參數辨識
使用INR18650-20R電池,容量2 000 mAH,標稱電壓為3.7 V,充電電壓為4.2 V,放電截止電壓為2.75 V。在動態應力測試(Dynamic Stress Test,DST)工況下測試電壓電流數據。然后采用遺忘因子遞推最小二乘算法辨識模型參數,該算法首先要將等效電路轉化為最小二乘的形式。將式(1)進行拉氏變換[11]:
U(s)-U(s)=I(s)R++ (5)
其中,s為Laplace算子,線性變換公式為:
s= ? ?(6)
其中,z為離散z域上的對應算子;T為采樣周期。通過線性處理實現連續系統與離散系統的轉變,系統z域上的傳遞函數由s域映射到z域得到,化簡后的公式為:
G(z)==? (7)
其中,θ、θ、θ、θ、θ分別是k時刻的簡化代表系數,表達式為:
θ=θ=-1θ=? ? ? θ=θ=(8)
其中,a=R;b=ττ;c=τ+τ;d=R+R+R;e=R(τ+τ)+Rτ+Rτ;τ=RC;τ=RC。
將式(7)離散化得:
y(k)=θy(k-1)+θy(k-2)+θI(k)+
θI(k-1)+θI(k-2)(9)
最小二乘法的觀測向量為:
φ(k)=((y(k-1),y(k-2),I(k),I(k-1),I(k-2))
待估計參數向量為:
θ(k)=θ,θ,θ,θ,θ
由式(8)可得:
a=b=c=d=e=? ? ?(10)
結合以上公式可得:
R=aR=[τ(d-a)+ac-e]/(τ-τ)R=R-d+aC=τ/RC=τ/R (11)
τ=
τ=(12)
系統的待估計參數向量是θ(k),增益系數是K(k),協方差矩陣是P(k),遺忘因子最小二乘遞推方程為:
K(k)=P(k)=[I(k)-K(k)φ(k)]P(k-1)θ(k)=θ(k-1)+K(k)[U(k)-U(k)-θ(k-1)φ(k)](13)
其中,λ為遺忘因子,取值范圍為0.95≤λ≤1,本研究中取0.997。用增益系數K(k)不斷地修正更新系統觀測向量φ(k)和實際觀測值y(k)的差值。
根據所辨識結果,在MATLAB/Simulink里搭建模型(圖2),在DST數據工況下,對所辨識的參數進行驗證。
仿真電壓與實際輸入電壓的對比如圖3所示,圖中紅色曲線是根據模型辨識參數預測端電壓值,藍色曲線為實際值,可以看出跟隨效果良好,且電池端電壓誤差小,整體誤差在±0.21 V之內,具體如圖4所示,證明帶有遺忘因子的遞推最小二乘(Forgetting Factor Recursive Least Square,FFRLS)算法對二階RC鋰電池參數辨識有很好的效果。
圖3 仿真電壓與實際輸入電壓對比
圖4 模型誤差
2 基于AUKF算法的鋰電池荷電狀態預測
根據圖1所示二階RC電路,分別用兩個RC電路兩端的電壓U和U鋰電池荷電狀態結合為狀態變量X=[U,U,SOC],所以鋰電池荷電狀態的狀態方程為:
X=AX+BU(k)+w(k)? ? (14)
測量方程為:
Z(k)=U[SOC(k)]-U(k)-U(k)-I(k)R+v(k)(15)
X=U(k+1)U(k+1)SOC(k+1)
A=1-? ?0? 0? 0? 1- 0? 0? ? ? ?0? 1
B=-
其中,v(k)代表系統的測量噪聲;w(k)代表系統的過程噪聲;Q代表鋰電池的電池容量[12]。
UKF算法的主要思想是U變換,用U變換處理均值與協方差的非線性傳遞,用一系列確定樣本來貼近狀態的概率分布,并不是對非線性函數近似,避免了計算繁雜的雅可比矩陣。AUKF預測鋰電池荷電狀態的過程如下。
a. Sigma點和相應權值的構造。
給出輸入變量x的Sigma點采樣方法,求出Sigma點集{x}(i=0,1,2,…,2n,n是狀態變量維度),利用輸出的統計信息得到期望權重w和方差權重w,再對{x}非線性變換求出{y},最后求出y的平均值和協方差P[13]。
b. 給協方差P0和誤差0設置初值。
=E(x)P=E[(x-)(x-)]? (16)
c. 計算Sigma點、狀態變量預測以及協方差更新。
x=? ? ? ? ,i=0+() ,1≤i≤n-(),(n+1)≤i≤2n(17)
x=f(x,u)? ? (18)
=wx ?(19)
P=w=(x-)(x-)+Q(20)
其中,λ為調節變量,λ=α(n+β)-n(α、β是比例因子);x為k-1時刻的第i個采樣點,用來控制平均值到點的間距;u為k-1時刻的輸入;Q為系統噪聲協方差矩陣。
d. 更新觀測變量。
y=h(x,u)? ? ? ?(21)
=wy? ? ?(22)
e. 更新誤差協方差以及卡爾曼增益。
P=w(y-)(y-)+R? (23)
P=w(y-)(y-) (24)
Kk=? ? ? ?(25)
=+K(y-)? ? (26)
P=P-KPK(27)
其中,K為卡爾曼增益矩陣;k|k-1為基于k-1時刻對k時刻的估計值;k|k表示在k時刻時,已經經過了預測和更新步驟,綜合考慮了系統動態和觀測數據,得到的最終狀態估計值,用于表示系統在時刻k時的最優估計狀態;R為觀測噪聲協方差矩陣。
分別把狀態方程與測量方程(14)、(15)代進上述AUKF算法,經過不斷地更新計算,使荷電狀態不斷貼近真實值。當UKF用于評估狀態變量時,測量誤差和噪聲系統通常為固定值。然而,鋰電池系統是一個非線性系統,隨著算法重復次數的增加,會導致誤差累積,甚至產生不同的結果。因此,為了提高荷電狀態準確性,有效減少噪聲對過濾結果的影響,需要加入自適應協方差匹配方法。
系統在k時刻的誤差為e,自適應算法為:
H=ee ? (28)
R=H-CCQ=KHK? (29)
其中,H為估算協方差函數;M為累計新息數量,在這里取3.2。將Q、R代入式(20)、(23)中進行自適應更新。
3 仿真驗真與分析
鋰電池在實際使用的時候,工況復雜,因此使用DST工況對算法進行驗證。筆者使用INR 18650-20R電池,容量為2 000 mAH,標稱電壓為3.7 V,充電電壓為4.2 V。由于過度放電會使鋰電池壽命縮短,因此在DST工況循環15次后停止放電。在MATLAB中編寫AUKF算法并進行鋰電池荷電狀態的預測,結合所得數據進行仿真驗證。圖5為算法仿真模型。
以電流積分法計算出的荷電狀態為參考值,模型輸入電流、電壓如圖6、7所示。圖8為荷電狀態預測結果,AUKF能實時更新系統噪聲且通過噪聲協方差更新荷電狀態預測值,從仿真圖中可以看出AUKF算法對荷電狀態的預測效果比UKF要好,能夠快速貼近參考值且波動情況小于UKF。圖9為兩種算法的誤差對比,可以看到,無跡卡爾曼濾波算法預測偏差較大,最大誤差為0.03,相比而言,加入自適應因子的無跡卡爾曼濾波算法預測效果較好,預測誤差保持在了±0.02以內,驗證了AUKF算法對濾波發散的控制作用。
圖6 DST工況電流數據
圖7 DST工況電壓數據
圖8 UKF和AUKF算法估計荷電狀態的曲線
圖9 UKF和AUKF算法估計荷電狀態誤差曲線
4 結束語
基于二階RC等效電路模型完成鋰電池建模,然后通過帶有遺忘因子非線性最小二乘算法實現模型參數辨識,通過仿真模型驗證了鋰電池模型參數的優良性能。在未知噪聲的影響下,傳統UKF算法的預測準確度不高。因此,引入帶有自適應因子的UKF算法來預測鋰電池的荷電狀態。仿真結果表明,通過自適應調整后的UKF算法,將最大誤差控制在了±0.02之內,具有良好的穩定性和準確性。
參 考 文 獻
[1] 劉鵬,李云伍,梁新成.基于遺忘遞推最小二乘與自適應無跡卡爾曼濾波的鋰電池SOC估計[J].汽車技術,2022,7(2):21-27.
[2] YANG F,SHI D,MAO Q,et al.Scientometric research and critical analysis of battery state-of-charge estimation[J].Journal of Energy Storage,2023,58:106283.
[3] 陸張浩,潘正軍,許祥進.車用鋰離子電池的SOC估算方法研究現狀[J].時代汽車,2021(6):161-162.
[4] SHE C,WANG Z,SUN F,et al.Battery aging assessment for real-world electric buses based on incremental capacity analysis and radial basis function neural network[J].IEEE Transactions on Industrial Informatics,2019,16(5):3345-3354.
[5] 董策勇,李紅月.基于改進UKF算法的鋰電池SOC估計[J].綠色科技,2022,24(14):247-250.
[6] 王向標,張庭芳,曹銘,等.具有溫度自適應性的二階RC參數辨識模型[J].電源技術,2022,46(6):661-664.
[7] 湯惠淞,吳長水,吳習文.基于UKF算法的電池荷電狀態SOC估算研究[J].軟件導刊,2020,19(11):90-95.
[8] BARCELLONA S,CICCARELLI F,IANNUZZI D,et al.Modeling and parameter identification of lithium-ion capacitor modules[J].IEEE Transactions on Sustainable Energy,2014,5(3):785-794.
[9] 王浩,鄭燕萍,虞楊.基于動態優選遺忘因子最小二乘在線辨識的磷酸鐵鋰電池SOC估算[J].汽車技術,2021(10):23-29.
[10] 張武,孫士山,張家福.基于自適應無跡卡爾曼濾波的動力電池SOC估計[J].電源技術,2021,45(1):14-17.
[11] EL D M S,HUSSEIN A A,ABDEL-HAFEZ M F.Imp- roved battery SOC estimation accuracy using a modified UKF with an adaptive cell model under real EV operating conditions[J].IEEE Transactions on Transportation Electrification,2018,4(2):408-417.
[12] 田茂飛,安治國,陳星,等.基于在線參數辨識和AEKF 的鋰電池SOC估計[J].儲能科學與技術,2019,8(4):745-750.
[13] 曹銘,張越,黃菊花.基于RLS法的鋰離子電池離線參數辨識[J].電池,2020,50(3):228-231.
(收稿日期:2023-04-05,修回日期:2024-01-22)
Prediction of Li-ion Battery Charge State Based on Adaptive Untraced Kalman Filtering Algorithm
MENG Yong-long, AI Xue-zhong, ZHENG Wei, WANG Ming-da, WANG Dong-dong
(College of Information and Control Engineering , Jilin Institute of Chemical Technology)
Abstract? Considering the fact that unscented Kalman filter(UKF) has low accuracy in predicting Li-ion battery charge state in the case of unstable noise and complex working conditions, a model based on second-order equivalent RC circuit was proposed, including having the forgetting factor recursive least square(FFRLS) method employed to identify model parameters, and the UKF algorithm adopted to predict Li-ion charge battery state, as well as verify the accuracy of the prediction model in DST data condition. The simulation results show that, the maximum error of the proposed UKF algorithm stays within ±0.02, and its accuracy is higher and the applicability is stronger.
Key words? ?Li-ion battery,charge state, UKF, FFRLS