一種電池管理系統的電流採集方法與流程
2024-02-07 10:17:15
本發明涉及蓄電池管理技術,特別涉及一種電池管理系統的電流採集方法。
背景技術:
日益嚴峻的環境汙染和能源危機,加速了電池組及其管理系統(bms)的技術發展步伐。
bms的主要功能是對電池組的工作狀態進行實時監控。電池充放電電流的採集是其中一項關鍵內容。採集值準確與否不僅與電池的過充過放監控判定密切相關,更直接關係到電池組剩餘容量(soc)的估算精度。所以,提高電流採集精度對bms的整體性能而言意義重大。
在bms系統中,不論是採用分流電阻、電流互感器,還是目前最常用到的開環霍爾傳感器進行電流檢測,都是先將待測電流信號轉換成電壓信號uh,再經系統內微處理器的模數轉換(adc)模塊和軟體處理,得出該電壓對應的電流值。
電流測量的精度,除了和傳感器件的性能及adc解析度有關外,還和軟體處理算法相關。在器件和adc模塊解析度不變的情況下,軟體處理算法的優劣直接影響到電流的採集精度。
目前常用的電流採集處理方法是:以霍爾傳感器的固定比例係數,對電壓uh進行固定斜率比值換算,得出其對應的電流值。該方法簡單易行,但精度有限。
事實上,霍爾傳感器件的輸出會受其鐵芯非線性的影響,使得副邊輸出的uh和原邊對應的輸入電流並非完全呈現固定斜率的線性關係。實際使用中,霍爾器件還會因外界溫度影響而產生溫漂。若未充分考慮器件的溫漂及非線性誤差,則勢必影響電流的採集精度。
技術實現要素:
本發明所要解決的技術問題是:提出一種電池管理系統的電流採集方法,在硬體成本不增加的情況下,通過軟體方式提高充放電電流採集精度。
本發明解決上述技術問題所採用的方案是:
一種電池管理系統的電流採集方法,包括以下步驟:
a.對霍爾電壓uh-映射電流io特性曲線進行分段;
b.根據分段區間,求取各段增益係數;
c.根據當前電壓輸出值求取對應電流值;
d.判斷是否需要進行溫度校正,若需要進行溫度校正,則在考慮電流測量器件的溫度漂移係數的情況下進行溫度校正,若不需要進行溫度校正,則將步驟c求取的對應電流值作為輸出值。
作為進一步優化,步驟a中,所述霍爾電壓uh-映射電流io特性曲線由廠家提供,或者由用戶自測,若用戶自測,則通過霍爾傳感器件測量uh-io數據,並繪製特性曲線。
作為進一步優化,步驟a中,在對特徵曲線進行分段之前,還包括:
初始化分段區間及溫度校正臨界參數。
作為進一步優化,步驟a中,根據特性曲線,按線性度變化結合精度要求,分為n段,每段區間為[(u0,i0),(u1,i1)]、[(u1,i1),(u2,i2)]、[(u2,i2),(u3,i3)]、……[(un-1,in-1),(un,in)],測試精度要求越高,則分段數n越大。
作為進一步優化,步驟b中,根據分段區間採用下列公式求取各段增益係數:
其中,un、in分別為第n段區間的終點電壓、電流值,un-1為第n段區間的起點電壓值。
作為進一步優化,步驟c中,採用adc模塊經多次採集及均值濾波後獲得當前電壓輸出值ux,然後採用段內線性插值算法公式,求出對應的電流ix:
其中,un、in分別為(ux,ix)所在分段區間的終點電壓、電流值;un-1、in-1分別為(ux,ix)所在區間的起點電壓、電流值。
或者,採用段內增益係數法,由下列公式求出ux對應的電流ix:
作為進一步優化,步驟d具體包括:
根據當前電池箱內溫度tc進行判斷,若tc低於所設的低溫閾值tlow,則用下式進行低溫校正:
ix=ix-(tlow-tc)*tdr
若tc高於所設的高溫閾值thigh,則用下式進行高溫校正:
ix=ix+(tc-thigh)*tdr
其中,tdr為所用電流測量器件的溫漂係數;
若當前溫度處於tlow和thigh間,則不需要進行溫度校正。
本發明的有益效果是:
充分考慮到電流採集器件的溫漂及線性度變化的特點,利用分段線性插值法,配合溫度校正,可在硬體成本不增加、軟體算法易實現的情況下,有效提高bms對電池充放電電流的採集精度。
附圖說明
圖1為本發明實施例中的電池管理系統的電流採集方法流程圖。
具體實施方式
本發明旨在提出一種電池管理系統的電流採集方法,在硬體成本不增加的情況下,通過軟體方式提高充放電電流採集精度。本發明中所述的電流採集方法是一種結合溫度補償的分段線性插值和分段增益係數算法,既不會過量加大軟體複雜度,又能有效提高充放電電流的採集精度,進而實現bms對電池過充過放狀態的準確判定和電池容量的精確估算,從而提高系統的整體性能。
如圖1所示,本實施例中的電池管理系統的電流採集方法包括以下步驟:
1、初始化分段區間及溫度校正臨界參數,對霍爾電壓uh-映射電流io特性曲線進行分段:
在本步驟中,由於需要對曲線進行分段,因而需要設置分段曲線,此外,在本發明中考慮了電流採集器件的溫度漂移係數,從而根據溫度值進行校正,因而也需要設置溫度校正臨界參數。
所述霍爾電壓uh-映射電流io特性曲線由廠家提供,或者由用戶自測,若用戶自測,則通過霍爾傳感器件測量uh-io數據,並繪製特性曲線。
然後,根據特性曲線,按線性度變化結合精度要求,分為n段,每段區間為[(u0,i0),(u1,i1)]、[(u1,i1),(u2,i2)]、[(u2,i2),(u3,i3)]、……[(un-1,in-1),(un,in)],測試精度要求越高,則分段數n越大。
2、計算各段增益係數:
在本步驟中,根據分段區間採用下列公式求取各段增益係數:
其中,un、in分別為第n段區間的終點電壓、電流值,un-1為第n段區間的起點電壓值。
3、獲得當前霍爾輸出電壓ux、當前箱體溫度tc:
在本步驟中,採用adc模塊經多次採集及均值濾波後獲得當前電壓輸出值ux,並採用溫度傳感器檢測獲得當前箱體溫度tc。
4、根據當前電壓輸出值求取對應電流值:
在本步驟中,可以採用段內線性插值算法公式,求出對應的電流ix:
其中,un、in分別為(ux,ix)所在分段區間的終點電壓、電流值;un-1、in-1分別為(ux,ix)所在區間的起點電壓、電流值。
或者,採用段內增益係數法,由下列公式求出ux對應的電流ix:
5、判斷是否需要進行溫度校正,若需要進行溫度校正,則在考慮電流測量器件的溫度漂移係數的情況下進行溫度校正,若不需要進行溫度校正,則將步驟c求取的對應電流值作為輸出值:
在本步驟中,根據當前電池箱內溫度tc進行判斷,若tc低於所設的低溫閾值tlow,則用下式進行低溫校正:
ix=ix-(tlow-tc)*tdr
若tc高於所設的高溫閾值thigh,則用下式進行高溫校正:
ix=ix+(tc-thigh)*tdr
其中,tdr為所用電流測量器件的溫漂係數。
若當前溫度處於tlow和thigh間,則不需要進行溫度校正。
以下針對某品牌電動汽車所用bms為例進行具體闡釋:
該系統所用開環霍爾電流傳感器的原邊額定輸入電流為600a,tdr為0.06a/℃,副邊輸出電壓範圍為1506~3500mv,工作溫度區間為-25~+85℃,tlow設為0℃,thigh設為55℃:
1、根據實測的uh-io數據繪製出特性曲線,在兩個較明顯的拐點處將曲線分為三段線性區間:[(1506,-600),(2086,-250)]、[(2086,-250),(2919,250)]、[(2919,250),(3500,600)]。
2、計算各段增益係數:
g1=1.6571
g2=1.666
g3=1.66
3、通過系統mcu內部的12bitadc轉換模塊,由18次連續採集並經均值濾波後,獲得當前霍爾器件的輸出電壓為2751mv,處於第二段線性區間,則利用段內線性插值法求得對應的電流為:
ix=149.1597a
或者,利用段內增益係數法求得的電流為:
ix=149.1597a
4、進行溫度校正判斷:由系統溫度採集模塊得到當前電池箱內溫度為12℃,經過判斷,其不在溫度校正區間,因此不必進行溫度校正,可直接得到電流值為149.1597a。