本應用筆記向用戶描述了如何改進鋰離子電池組的剩余容量估計,使其超出單獨使用庫侖計數器的精度水平。本文概述了使用Maxim電池監測IC和電量計軟件的方法,了解電池單元年齡以及應用的充電放電速率對鋰離子電池組剩余容量的影響。結果是一個低成本,但高精度的電池電量計。這種電池電量計方法可應用于任何類型的鋰離子電池單元和任何包含庫侖計數器的達拉斯半導體器件,如DS2438電池監測器。
圖1.系統圖。
介紹
在現實世界條件下準確確定鋰離子電池的剩余電荷需要的不僅僅是庫侖計數。DS2438的集成式累加器(ICA)可在已知條件下精確測量電池容量,但在溫度和放電速率變化且電池容量隨老化而下降的應用中,DS2438的ICA需要調整以達到所需的精度。本文檔介紹了如何擴展DS2438的電量計概念,以確保在極端工作條件下具有更高的精度。這是通過在軟件中表征電池容量隨溫度和速率的變化并控制庫侖計數來實現的。這個過程不僅限于DS2438或特定類型的鋰離子電池。任何帶有庫侖計數器、溫度轉換器和15字節用戶EEPROM的Maxim電池管理器件都能夠對任何類型的鋰離子電池進行高精度電量測量。
鋰離子電池行為
要了解為什么僅庫侖計數不足以進行高精度燃料測量,了解其環境如何影響鋰離子電池的充電容量是有幫助的。以下示例中的電池是額定電流為 1200/4A 的 3mAH 圓柱形電池。它通過兩步法充電,首先以恒定的1C速率充電,直到電池電壓達到4.2伏,然后通過恒定電壓充電,直到充電電流降至C / 20或60mA以下。在這一點上,它被認為是充滿電的。它以1C的高電流速率或0.2C的低電流速率放電。當電池電壓降至 2.5 伏以下時,電池被認為已完全放電。
溫度和放電率
鋰離子電池的容量根據溫度和放電率而有很大差異。圖2顯示了溫度和放電速率變化時的充電容量(以毫安小時為單位)。圖表上的“完全”線是在相應溫度下使用上述充電方法認為電池完全充電的點。“高電流空”線是電池在每個溫度下以 1C 速率完全放電的點。使用0.2C的放電速率以相同的方式繪制“低電流空”線。
圖2.
電池在給定速率和溫度下的容量是與“滿”線和相應的“空”線的差值。由于空點和滿點都隨溫度和速率而變化,因此圖表上的每個點都相對于其他每個點。例如,如果電池在80°C的溫度下充滿電,然后在-20°C的低電流速率下完全放電,則能夠去除的電荷量將是80°C(1340mAH)時的滿值與-20°C(250mAH)或1090mAH時的低電流空值之間的差值。如果電池在-20°C下完全充電,則只有-20°C或860mAH時的滿值和空值之差可以返回電池。
只需要即時溫度和速率來確定相對滿點和空點。在溫度 1 和速率 1 下部分放電,然后在溫度 2 和速率 2 下完全放電的電池將在基于溫度 2 和速率 2 的點上被視為空電池。同樣,上述電池可以以高電流速率完全放電,但能夠通過對應于當前電池溫度的兩個“空”點之間的毫安小時數以低電流速率進一步放電。因此,在確定剩余容量時,只需要跟蹤當前的電池溫度和放電率。
細胞老化
隨著鋰離子電池的老化,它失去了儲存電荷的能力。圖3顯示了在室溫下反復充電和放電電池的效果。通過保持電池上電荷的持續庫侖計數,可以證明老化僅影響“滿”點。“空”點保持不變。為了說明這一點,用于計算剩余容量的公式必須能夠隨時間動態變化以保持準確。
其他條件
大多數其他條件對充電容量影響很小或沒有影響。鋰離子電池在充電時非常高效;與其他細胞化學物質不同,在循環過程中很少有能量損失為熱量。鋰離子電池的自放電極低,甚至難以測量。由于所有這些條件加在一起對庫侖計數結果的影響小于測量設備的精度,因此在電量計方程中完全忽略了它們。
圖3.
計算剩余容量
從上面的圖表中很容易看出,在現實世界的條件下,僅庫侖計數方法如何變得非常不準確。本節展示了庫侖計數如何結合預期的“空”和“滿”點的表征來保持對剩余電池容量的準確估計。
標準假設
為了使算法準確運行,同時最小化計算復雜性和參數數據存儲,需要做出某些假設。首先,假設類似的充電效率和端接限制普遍適用于應用。在本例中還假設遇到的可重復放電效率數量有限,每個放電效率都有良好的限制。必須始終認為電池在相同的電壓水平下完全放電,例如 2.5 伏。在此應用中,充電效率和電池組自放電被假定為可以忽略不計,因此被忽略。
細胞表征
電量測量公式的工作原理是將DS2438的ICA值與存儲在DS2438用戶EEPROM中的該電池類型的預期“空”和“滿”值進行比較。該數據是通過表征電池類型在應用的預期溫度范圍和電流消耗中生成的。該信息隨后存儲在包駐留存儲器中,供算法稍后提取和修改。圖4顯示了用于收集表征數據的系統。應收集多個包裝的信息,以便可以將平均值或典型值存儲在每個生產包中。為了獲得最佳準確性,數據應收集在包含生產電路的組裝包裝上,而不是單個電池上。
圖4.細胞表征系統。
為了收集數據,電池組在每個溫度下完全充電,并在每個溫度下以每個速率完全放電。圖5所示為DS2438在0°C至40°C范圍內采集完全充電時的ICA讀數和有功電流放電數據。 然后,該過程將擴展為收集相同溫度范圍內的待機電流放電數據。
圖5.
所有收集的數據點排列在下面的表1中。由于只有點之間的差異很重要,因此數據的絕對值無關緊要,它們已被歸一化為最低值(待機電流在40°C時為空)。這減少了需要存儲的數據量,因為待機空 40°C 現在始終為 0。
表 1.細胞表征數據
0°C | 10°C | 20°C | 30°C | 40°C | |
滿(毫安時) | 554 | 561 | 578 | 582 | 588 |
待機空 (毫安時) | 65 | 42 | 19 | 11 | 0 |
活動空 (毫安時) | 124 | 90 | 65 | 50 | 44 |
表征數據存儲在DS2438的EEPROM存儲器的兩頁中。由于大于 25510 的值需要存儲超過 1 個字節的內存,因此通過僅存儲第一個值,然后記錄溫度之間的增量差異來減少數據量。DS2438數據存儲的存儲器圖如下
表2
所示。
表 2.DS2438存儲器映射
第 3 頁 | 第 4 頁 | |
0 | 0°C 時滿 | Δ 待機空置至 20°C |
1 | Δ 待機空置至 30°C | |
2 | Δ 滿至 10°C | Δ 有效空至 0°C |
3 | Δ 滿至 20°C | Δ 有效空至 10°C |
4 | Δ 滿至 30°C | Δ 有效空至 20°C |
5 | Δ 滿至 40°C | Δ 有效空至 30°C |
6 | Δ 待機空置至 0°C | 40°C 時有效空 |
7 | Δ 待機空置至 10°C | 閑置 |
第 6 頁的前 3 個字節包含電池在整個范圍內不同溫度下的測量 FULL 點。字節 0-1 是電池在 0°C 時的容量;接下來的四個字節是容量從上一個溫度增加的值。例如,如果給定單元的容量在 554°C 時為 0mAH,在 561°C 時為 10mAH,則字節 0-1 將包含 55410 (0x022Ah),字節 2 將包含 710 (0x07h)。接下來的九個字節保存以與 FULL 值相同的方式存儲的“備用空”和“活動空”信息。從 40°C 開始,EMPTY 值沿相反方向遞增,因為它是最低值。不包括 40°C 時的待機空,因為它始終為 010。表3所示為DS2438中存儲的實際信息,采用上
表
1所示的特性數據。
表 3.存儲在DS2438中的電池數據的存儲器映射
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | |
第 3 頁 | 0x02小時 | 0x2Ah | 0x07小時 | 0x11小時 | 0x04小時 | 0x06小時 | 0x17小時 | 0x17小時 |
滿 | 待機空 | |||||||
第 4 頁 | 0x08小時 | 0x0Bh | 0x22小時 | 0x19小時 | 0x0Fh | 0x06小時 | 0x2通道 | X |
待機空 | 活動空 |
方程式
電池組表征完成后,計算剩余容量非常簡單。表征數據用于根據溫度和放電速率找到電池滿電量點和空電量點,并將DS2438的集成累加器與這些值進行比較,以百分比表示剩余容量。上電時,應從DS2438讀取特性數據,并將其存儲在主機RAM中。當主機決定更新剩余容量指示器時,通過讀取電池溫度和DS2438的ICA開始更新。然后通過使用電池溫度在FULL表征數據點之間進行線性插值來計算電池的當前完整值。例如,28°C 時的電池滿點計算公式為:
全值 (28°C) = (滿 20°C) + ((28-20)/10) × (滿 30°C - 滿 20°C)
空點的計算方法完全相同,只是必須根據系統的當前激活狀態確定使用活動或備用特征數據。然后,可以通過以百分比形式確定空點和滿點之間的 ICA 位置來計算容量。公式總結如下:
滿值 = 滿值[溫度]
空值 = 待機空[溫度] 或活動空 [溫度]
容量 =((ICA - 空值)/(滿值 - 空值)) × 100%
對剩余容量的估計是完美的。為防止錯誤長期累積,每次電池完全耗盡時,ICA寄存器應重置為相應的EMPTY值。同樣,每次電池充滿電時,都應更改相應的FULL值以匹配ICA。通過根據實際操作永久調整滿點,該組能夠針對與“典型”表征數據不同的細胞進行調整,并隨著電池的老化和劣化而調整。
放電結束時:ICA = 空值
充滿電結束時:充滿[溫度] = ICA
顯示信息
上述公式以計算出的空點和滿點之間的百分比形式報告剩余容量。這可能并不適合每個應用程序。例如,電池可能放電到低于活動空但高于待機空的水平。如果剩余容量百分比基于待機空點,則即使電池當時無法支持有功電流,它也會顯示一些剩余容量。這可能會讓最終用戶感到非常困惑。主機處理器呈現容量數據的方式對于每個應用都是唯一的,標準電量計公式未涵蓋。
剩余能量計算
對于某些應用,估算剩余能量非常重要。例如,如果電路具有恒定的功耗,其中有功電流增加而電池電壓下降,則剩余時間與剩余電量沒有直接關系。然而,使用DS2438的電壓讀數可以很容易地估算出剩余能量。回想一下能量方程:
能量 (J) = 伏特×電流×時間
可以用剩余能量重寫:
剩余能量 (J) = 3.6 × RAV ×剩余 mAH
其中:
剩余毫安時是通過上述公式計算的剩余毫安小時。
3.6 是從毫安小時到安培秒的轉換系數。
RAV是下面解釋的電池的剩余平均電壓。
圖6的上圖顯示了典型的電池放電曲線。通過查找當前電池電壓與空電池電壓(通常為 2.5 伏)之間的平均值,可以隨時近似平均剩余電池電壓。
RAV = (電壓 + 2.5)/2
剩余能量計算現在可以總結為:
剩余能量 (J) = 3.6 × 剩余 mAH × (電壓 + 2.5)/2
其中:
剩余毫安時是通過電量計方程計算的剩余毫安小時。
電壓是由DS2438測量的電池電壓。
3.6 是從毫安小時到安培秒的轉換系數。
圖6上的第二張圖顯示了使用此方法預測剩余能量時該單元的準確性。細胞的放電曲線越線性,這種方法就越準確。像元的線性越差,計算的準確性就越低。無論哪種情況,計算在最重要的地方都會變得更加準確:當電池電壓接近空點時。
圖6.
示例應用程序
以下示例使用DS2438演示板監視520mAH棱柱形Li+電池。有關DS2438演示板的信息,請參考DS2438K數據資料。吉時利 2304A DVM/電源模擬電池的充電器和負載,并使用 Tenney 環境室來控制電池溫度。DS2438中存儲的電池表征信息和實際數據與上文電池表征部分相同。為方便起見,它們在下面的表4和表5中重復出現。控制軟件是用Visual Basic編寫的,本文末尾介紹了直接涉及燃油測量的代碼部分。
圖7.示例應用程序系統。
表 4.細胞表征數據
0°C | 10°C | 20°C | 30°C | 40°C | |
滿(毫安時) | 554 | 561 | 578 | 582 | 588 |
待機空 (毫安時) | 65 | 42 | 19 | 11 | 0 |
活動空 (毫安時) | 124 | 90 | 65 | 50 | 44 |
表 5.存儲在DS2438中的電池數據的存儲器映射
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | |
第 3 頁 | 0x02小時 | 0x2Ah | 0x07小時 | 0x11小時 | 0x04小時 | 0x06小時 | 0x17小時 | 0x17小時 |
滿 | S. 空 | |||||||
第 4 頁 | 0x08小時 | 0x0Bh | 0x22小時 | 0x19小時 | 0x0Fh | 0x06小時 | 0x2通道 | X |
S. EMPTY | ACTIVE EMPTY |
電池在0°C至40°C的各種溫度下經受8次局部充放電循環。 該測試旨在證明燃料計量方程在比標準商業應用中通常遇到的極端條件下的準確性。
圖15
顯示了集成電流累加器與測試期間動態計算的空點和滿點的關系。電池溫度顯示在圖表底部。X 軸更新周期單位是指每次更新剩余容量的時間,大約每 1000 秒更新一次。最壞情況的錯誤發生在第一次充電期間(大約更新周期 3),大約為 5500。電量計算法根據該誤差永久調整滿點,第二次在相同溫度(大約更新周期 <>)下發生充電時,ICA 幾乎完全匹配預期的滿分水平。
圖8.
然后,軟件將剩余容量計算為空點和滿點之間差額的百分比。下面的圖 9 顯示了上面顯示的數據的實際電量計輸出。
總結
圖9.
在計算剩余電池容量時,考慮電池在溫度和放電速率范圍內的行為,可提供比單獨庫侖計數更高的精度。Maxim的電量計公式可應用于任何鋰離子電池類型和任何Maxim庫侖計數器件,同時使用最少的主機處理器周期。它們還會根據細胞間的差異和細胞老化進行調整,隨著時間的推移變得更加準確。
-
鋰離子電池
+關注
關注
85文章
3215瀏覽量
77544 -
半導體
+關注
關注
334文章
27003瀏覽量
216266 -
計數器
+關注
關注
32文章
2253瀏覽量
94351
發布評論請先 登錄
相關推薦
評論