電池荷電狀態 (SOC) 是介于 0 和 1 之間的歸一化量,表示當前時刻電池中的荷電水平。SOC 為 1 表示電池充滿電,而 SOC 為 0 表示電池完全放電。
電動汽車的 SOC 類似于傳統內燃機車輛中的燃油表,向駕駛員指示電池剩余能量;SOC 越高,意味著行駛里程越長。了解電池 SOC 使駕駛員能夠更高效地規劃行程和使用充電樁。電池 SOC 的計算方式如下:

其中
SOC(t1)是在時間t1(秒)處的電池 SOC。
SOC(t0)是在時間t0(秒)處的電池 SOC。
i(t)是電池電流,單位為 A,電池放電時帶負號。
η是無單位的庫侖效率因子。
Ctotal是電池總容量 (Ah)。它定義為從充滿電狀態 (SOC = 1) 到完全放電狀態 (SOC = 0) 從電池中流失的電荷。在電池隨時間退化的過程中,電池總容量也會隨之減少。
準確估計電池荷電狀態的重要性
電池管理系統 (BMS) 使用 SOC 估計來提示用戶下次充電前的預期使用量,保證電池處于安全運行時間范圍內,實現控制策略,并最終在包括電動汽車 (EV) 和儲能系統在內的許多應用中延長電池壽命。例如,健康狀態 (SOH) 估計需要 SOC 信息來準確估計電池 SOH。BMS 在電芯平衡算法中使用估計的 SOC。
準確估計電池荷電狀態面臨的挑戰
準確估計 SOC 對于電池電力系統的有效管理和運行至關重要。然而,這面臨著幾個相關挑戰:
非線性放電曲線:電池通常具有非線性放電特性,使得難以僅基于電壓測量估計 SOC。
電流測量誤差:準確的 SOC 估計通常依賴精確的電流測量。電流感測中的誤差可能導致 SOC 估計中的累積誤差,特別是在庫侖計數等方法中。
老化、退化和 SOH 依賴:SOC 通常依賴電池的健康狀態。隨著時間的推移,電池會退化,這會影響其容量和內阻。如果不適當考慮,這種退化可能導致 SOC 估計不準確。
自放電:即使在不使用時,電池也會隨時間失去電荷。如果不考慮這一點,可能導致 SOC 估計出現偏差。
動態負載曲線:波動的負載會使 SOC 估計復雜化,因為它們可能導致電池電壓和電流快速變化,從而難以跟蹤真實的荷電狀態。
電池模型參數化:電池模型是典型的等效電路模型。準確的 SOC 估計需要準確的模型擬合和調節協方差(如果使用卡爾曼濾波器)。模型參數化可能耗時且具有挑戰性。
如何計算電池荷電狀態
估計 SOC 的方法有多種,既有簡單的電流積分(庫侖計數)和電壓監測,也有復雜的基于模型和數據驅動的方法,如卡爾曼濾波器和神經網絡。
對于開發電池管理系統中基于模型的 SOC 估計的算法,精確的電池模型至關重要。電池管理系統中 SOC 估計的傳統方法,例如開路電壓 (OCV) 查找和電流積分(庫侖計數),在某些情況下易于實現且相對準確。然而,基于 OCV 的方法要求進行 OCV 測量,這需要在測量前經過長時間的靜置期。而庫侖計數存在初始化不良和電流測量噪聲累積的問題。事實證明,擴展卡爾曼濾波器 (EKF) 和無跡卡爾曼濾波器 (UKF) 方法能以合理的計算工作量在真實的 BMS 實現中提供準確的結果。
Simscape Battery[1]是用于設計和仿真電池和儲能系統的建模軟件,它為 BMS 開發提供了若干 SOC 估計器并支持代碼生成:
SOC 估計器(庫侖計數):具有庫侖計數的荷電狀態估計器[2]
SOC 估計器(庫侖計數,可變容量):具有庫侖計數和可變容量的荷電狀態估計器[3]
SOC 估計器(卡爾曼濾波器):具有卡爾曼濾波器的荷電狀態估計器[4]
SOC 估計器(卡爾曼濾波器,可變容量):具有卡爾曼濾波器和可變容量的荷電狀態估計器[5]
SOC 估計器(自適應卡爾曼濾波器):具有自適應卡爾曼濾波器的荷電狀態和終端電阻估計器[6]
SOC 估計器(自適應卡爾曼濾波器,可變容量):具有自適應卡爾曼濾波器和可變容量的荷電狀態和終端電阻估計器[7]
與卡爾曼濾波器 SOC 估計器相比,自適應卡爾曼濾波器 SOC 估計器將終端電阻作為一個額外狀態。自適應卡爾曼濾波器 SOC 估計器和卡爾曼濾波器 SOC 估計器都可以選擇使用 EKF 或 UKF 來開發 SOC 估計觀測器。在電池管理系統中,此類觀測器通常包括一個非線性電池系統的模型和一個遞歸算法。該模型使用 BMS 從電池測得的電流和電壓作為輸入,該算法根據一個兩步式(預測和糾正)過程來計算系統(其中包括 SOC)的內部狀態。

SOC 的實際值和使用 EKF 與內置 BMS 模塊的估計值的比較。(請參閱 Simscape Battery 示例。[8])
使用深度學習網絡估計電池荷電狀態
電池管理系統也可以使用神經網絡等數據驅動方法來估計 SOC,而不必使用卡爾曼濾波器。此方法不需要關于電池或其非線性行為的大量信息,而是使用電流、電壓和溫度數據來訓練網絡并將 SOC 作為響應。您可以使用投影壓縮神經網絡[9],這樣,在 CPU 上運行或利用無庫的 C 或 C++ 代碼生成部署到 BMS 嵌入式硬件時,可以實現更快的前向傳播。

在電池管理系統中使用神經網絡進行 SOC 估計。(請參閱 Deep Learning Toolbox 示例。[10])

在兩種不同溫度下,電池管理系統中的真實 SOC 與使用深度學習網絡估計的 SOC 的比較。(請參閱 MATLAB 代碼。[11])
文中相關示例與鏈接
[1]https://ww2.mathworks.cn/products/simscape-battery.html
[2]https://ww2.mathworks.cn/help/simscape-battery/ref/socestimatorcoulombcounting.html
[3]https://ww2.mathworks.cn/help/simscape-battery/ref/socestimatorcoulombcountingvariablecapacity.html
[4]https://ww2.mathworks.cn/help/simscape-battery/ref/socestimatorkalmanfilter.html
[5]https://ww2.mathworks.cn/help/simscape-battery/ref/socestimatorkalmanfiltervariablecapacity.html
[6]https://ww2.mathworks.cn/help/simscape-battery/ref/socestimatoradaptivekalmanfilter.html
[7]https://ww2.mathworks.cn/help/simscape-battery/ref/socestimatoradaptivekalmanfiltervariablecapacity.html
[8]https://ww2.mathworks.cn/help/simscape-battery/ug/battery-state-of-charge-estimation.html
[9]https://ww2.mathworks.cn/help/deeplearning/ug/compress-neural-network-using-projection.html
[10]https://ww2.mathworks.cn/help/deeplearning/ug/battery-state-of-charge-estimation-using-deep-learning.html
[11]https://ww2.mathworks.cn/help/deeplearning/ug/test-network-for-battery-state-of-charge-estimation.html
-
soc
+關注
關注
38文章
4525瀏覽量
227813 -
荷電狀態
+關注
關注
0文章
3瀏覽量
7345 -
電池
+關注
關注
85文章
11392瀏覽量
141582
原文標題:什么是電池荷電狀態?
文章出處:【微信號:MATLAB,微信公眾號:MATLAB】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
轉自Richtek的鋰離子電池及電池電量計介紹
創建安全和健康電池組的電量計和監視器
天天都給手機充電,那么你知道手機的電量是怎么計算的嗎
無線藍牙耳機電池電量計方案 RT9426
鋰離子電池荷電狀態估計
磷酸鐵鋰電池組均衡控制策略及荷電狀態估計算法的中文資料免費下載

如何計算電池荷電狀態
評論