符合SMBus2.0協議單節智能鋰電池系統的設計
2.2 安全保護
本文引用地址:http://www.j9360.com/article/84989.htm圖3為本系統的電池保護電路,主要采用理光(RICOH)的R5421N111C和用于電源開關、低導通電阻的N溝道場效應管S-19926構成鋰電池保護電路,實現過充、過放、過電流和短路保護等功能。
在正常狀態下電路中U2的“Cout”與“Dout”腳都輸出高電壓,兩個MOSFET(Q1、Q2)都處于導通狀態,電池可以自由地進行充電和放電。由于MOSFET的導通阻抗也很小(<30mΩ),因此其導通電阻對電路的性能影響也很小。
當電池電壓超過4.28V(過充)、低于2.5V(過放)、場效應管兩端的電壓大于0.1V(過流,具體數值是根據場效應管導通電阻及相關公式計算而得)或場效應管兩端的電壓大于0.9V(短路時,該值由控制IC決定)時,芯片通過對兩個MOSFET的控制,實現對電池的保護[4]。
2.3 測量部分
為了實現對電池當前各種狀態的監測,包括當前電池的充/放電狀態、電壓、電流、溫度、剩余電量、消逝時間等參數的監測,這里采用智能電池檢測芯片DS2438來完成。
DS2438芯片是DALLAS公司推出的新一代智能電池監測芯片,具有功能強大、體積小、硬件接線簡單等優點(通過一線與單片機進行數據指令通信);內含數字溫度傳感器對電池溫度進行測量;片內模數轉換器對電池電壓進行監測,從而可判定充電和放電的結束;片內的積分電流累加器可實時記錄電池流入、流出電流的總量,便于統計電量;內含記錄相對于內部基準時間的電池充電完畢、其脫離系統的精確時刻消逝時間表;內含40字節可用于存放電池特殊參數的掉電保護的用戶訪問存儲器[5]。
2.4 計算通信部分
計算通信部分使用Silabs公司的低成本單片機C8051F305,它具有采用流水線指令結構的高速8051微控制器內核、256B RAM、2KBFlash存儲器、8個I/O口、標準SMBus串口、采用3V供電、功耗低[5]。
采用單片機系統對DS2438的數據進行讀取、運算、存儲,通過標準的SMBus接口對數據和指令與主系統傳輸,同時多余的I/O口用來控制電源的開關等其他功能。
3 軟件設計
軟件編寫主要采用模塊化的方式,編譯環境Keil 7.50 完成C51的編程。這里主要介紹對智能電池系統協議SBData的定制和對DS2438的讀寫控制。
3.1 智能電池系統通信協議的定制
SBData1.1協議規定了34個數值[6]。該系統根據需要做出修改,只占用22個數值,在實際應用中可以根據所需數據進行讀取,同時也可以將沖放電控制策略應用于系統,對智能鋰電池系統起到軟保護的作用。這些數值都是通過DS2438測量或預先定義存放在C8051的Flash存儲器中,主系統通過SMBus或用I/O口模擬I2C時序,向智能電池系統發送命令碼,獲取所需的值。智能電池數據功能表如表1所示。具體值的定義由于篇幅限制這里不做介紹。
3.2 DS2438的讀寫控制
3.2.1 供電方式的測量
首先單片機控制DS2438使其電流A/D轉換器使能,而后DS2438對流入、流出電池塊的電流自動進行測量,結果存放于電流寄存器中。電流寄存器的高字節的高6位是流入電池電流的符號位,為1表示電池正在充電;為0表示電池正在放電。單片機對電流寄存器的值的高6位進行判斷就可獲得供電方式,同時也獲得電流值。供電方式測量程序流程圖如圖4所示。
3.2.2 電池電壓、溫度、剩余電流的測量
要獲得電池的電壓和溫度,只需要由單片機對DS2438發出采集電壓、溫度的控制命令,然后等待其采集完畢并自動將電壓、溫度測量值存入相對應的寄存器后,再由單片機讀取寄存器的內容即可。在讀取寄存器值時,注意只有當數據線為高電平時,才能正確地讀取。其程序流程與圖4類似。
電池的剩余電量可用電流積分累加(ICA)寄存器的值求得。只需單片機讀出ICA寄存器的值,然后將讀出的值代入公式:剩余電量=ICA/(2048×RSENS),便可得到電池的剩余電量。
該智能電池系統引入了國際標準,具有筆記本智能電池系統的優點。在實際應用中該系統改進了便攜式電源的管理;延長了電池的工作時間;確保了安全溫度內的充放電;縮短了充電時間;可選用多種商家的電池;易于升級,為便攜式儀器提供了很好的解決方案。
參考文獻
1 Friel D. SBS簡化便攜式電源系統設計.電子工程專輯,1999;(6):26~30
2 Fukatsu S, Dunstan R. Smart battery system manager specifi-cation revision 1.0 www.SBSIF.org,1998-12-04~12
3 郭海帆,宣宗強.基于DS2438芯片的智能電池監測系統.今日電子,2003;(9):32~34
4 The datasheet of R5421NXXX series NO.EA-069-0006.www.dianyuan.com,2002-10
5 童長飛.C8051系列單片機開發與C語言編程.北京:北京航空航天大學出版社,2005
6 PS501現場可編程單電池管理. Microchip Technology Inc,2004:25~29
評論