ZHCABV9A January 2008 – November 2022 BQ27421-G1 , BQ27425-G2A , BQ27425-G2B , BQ27441-G1 , BQ27505-J2 , BQ27505-J3 , BQ27505-J4 , BQ27505-J5 , BQ27520-G4 , BQ27530-G1 , BQ27531-G1 , BQ27545-G1 , BQ27546-G1 , BQ27741-G1 , BQ40Z50 , BQ40Z50-R1 , BQ40Z50-R2
放電過程中會更新電阻,這在圖 2-3 中進行了總結。第一次電阻更新發生在一定的等待時間之后,以防止負載開始后的瞬態失真。默認情況下,等待時間為 500 秒,但如果最大放電持續時間 (DF.Max Dsg Duration) 少于 500 秒,則之后的更新等待時間會減少。等待時間定義為 DF.Max Dsg Duration –200。等待時間可縮短至 100 秒。
通過將測量電壓與同一 DOD 下的 OCV 值進行比較來進行計算,OCV 值取自 OCV(DOD,T) 表:
dV = V – OCV(DOD,T)
R(DOD) = dV/I
連續進行電阻測量并存儲在 RAM 中。
每次超過 DOD 電荷(DOD 電荷為 PassedCharge/Qmax)的 11.1% 后,數據閃存中的電阻都會更新(在 DF.Ra Table 中)。當 DOD 達到 77.7% 時,電阻會在每次超過 3.3% 后更新。在放電終止后進行最終電阻更新。。
第一次更新網格點電阻時,常數 DF.Update Status 增加 1(例如,如果之前沒有更新 Qmax,則從 0 增加到 1;如果之前更新了 Qmax,則從 1 增加到 2)。
在存儲到數據閃存之前,電阻值歸一化為 0°C,即 Ra[dod] = R[dod]/exp(Rb[dod]*T),其中 R 是給定 DOD 處的測量電阻值。Rb[DOD] 是存儲為保留數據閃存表的給定 DOD 處阻抗變化的溫度系數值,T 是以 °C 為單位的溫度。請注意,歸一化為 0°C 的電阻值略大于室溫下的值,因此不能直接與 R=dV/I 值進行比較。
圖 2-3 阻抗更新DOD 高于當前更新的網格點的電阻值按與當前網格點變化相同的因子縮放,例如按因子 Ra_new/Ra_old 縮放。這樣,實現了電阻分布的更快收斂。
DF.Ra Table 中的值以毫歐為單位存儲,格式為 DF.PackX Ra N,其中 X 是從 0 到 1 的電池組編號,N 是從 0 到 14 的網格點編號,對應于 11.1% 的 DOD 增量,直到 77.7%,然后是 3.3% 的 DOD 增量。在 bq27500 中,兩個支持的電池包中的每個電池包都有兩個 Ra 表(Ra 和 Rax)。為了節省數據閃存空間,對表進行了壓縮。壓縮中使用了兩個附加參數(Base R 和 Gain)。I=1..14 的 decompression 公式為
R[i] = Base R + sum(R_compressed[k], k = 1 ..I)×2Gain,并且 R[0]=Base R。
DF.PackX Ra flag 和 DF.PackX Rax flag 用于交換數據閃存列的使用,以減少 DF 寫入次數。標志值 55 表示當前使用的數據列,而 FF 表示當前未使用的數據列。
在 DF.Update Status 設置為 2 之前,如果在電阻更新期間 DOD 超過 100%,或電阻出現負值,這兩種情況都表明 DF.Qmax Cellx 初始猜測過小,DF.Qmax Cell x 將增加 11.1%,并且將重新計算所有電阻。這是第一個 learning 周期內的正常行為。然而,如果 DF.Qmax Cell x 的初始猜測與正確值相差太遠,則可能需要第二個周期才能實現完全電阻準確性。為了避免這種情況,請將 DF.Qmax Cell x 設置為電池制造商指定的值,再乘以并聯電池的數量。
將 DF.Update Status 設置為 2 后,電阻變化限制在其原始值的 5 倍以下和 0.2 倍以上,并限制為正值。