BQ2013H在鉛酸蓄電池電量監(jiān)測(cè)中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:基于TI公司的電源管理芯片BQ2013H與STC89C52單片機(jī),實(shí)現(xiàn)對(duì)鉛酸蓄電池電量的實(shí)時(shí)監(jiān)測(cè)。根據(jù)實(shí)際使用蓄電池的標(biāo)定容量,通過BQ2013H芯片可編程引腳設(shè)置初始容量,在蓄電池充電或放電過程中,通過監(jiān)測(cè)蓄電池負(fù)極與地之間的檢測(cè)電阻的電壓,來確定蓄電池的充放電狀態(tài)。由5個(gè)LED指示可用容量,也可以由單片機(jī)通過HDQ協(xié)議與BQ2013H芯片通信,讀出相關(guān)寄存器值,計(jì)算得到蓄電池的剩余容量。
關(guān)鍵詞:BQ2013H;STC89C52;HDQ協(xié)議;鉛酸蓄電池;電量監(jiān)測(cè)
引言
蓄電池作為較長(zhǎng)時(shí)間供電電源,廣泛應(yīng)用于交通、通信、控制系統(tǒng)等領(lǐng)域。為保證用電系統(tǒng)的穩(wěn)定性,對(duì)蓄電池剩余電量的監(jiān)測(cè)是一項(xiàng)很重要的工作,常用的檢測(cè)方法有:密度法、開路電壓法、放電法和內(nèi)阻法。這4種方法的缺點(diǎn)是測(cè)量精度低,不適合在線測(cè)量,電路設(shè)計(jì)復(fù)雜或算法繁瑣。本文介紹一款TI公司的電源管理芯片BQ2013H,它可以高精度、實(shí)時(shí)地在線監(jiān)測(cè)蓄電池剩余電量、當(dāng)前電壓、電池溫度等信息,而且外圍電路設(shè)計(jì)簡(jiǎn)單,采用HDQ一線通信協(xié)議。
1 芯片簡(jiǎn)介
1.1 特 征
BQ2013H可以對(duì)可充電電池的剩余電量進(jìn)行精確測(cè)量,可以監(jiān)測(cè)的電池包括鎳鎘、鎳氫和鉛酸蓄電池。芯片直接驅(qū)動(dòng)用于容量顯示的LED燈,能夠應(yīng)用內(nèi)部溫度傳感器自動(dòng)進(jìn)行充電和放電補(bǔ)償,提供簡(jiǎn)單的單總線串行通信接口。芯片引腳圖見圖1,各引腳功能描述如表1所列。
1.2 功能描述
BQ2013H芯片專為電池組設(shè)計(jì),可以對(duì)電池的可用電量保持精確記錄。在電池的負(fù)極與線路板的地之間串接一個(gè)檢測(cè)電阻,芯片通過監(jiān)測(cè)檢測(cè)電阻的電壓降來判斷電池是處于充電還是放電狀態(tài)。BQ2013H通常用于高放電率系統(tǒng)中高容量電池電量的監(jiān)測(cè)。
電池的自放電通過內(nèi)部的定時(shí)器和溫度傳感器來估算,對(duì)電池溫度、充電率和自放電率的補(bǔ)償應(yīng)用于電荷計(jì)數(shù)器,該計(jì)數(shù)器在一個(gè)寬的操作條件下可以提供可用容量信息。最初的電池容量、自放電率、顯示模式和電荷補(bǔ)償可以用芯片的引腳PROG1~6來設(shè)置。電池從滿到空的一個(gè)放電周期中,實(shí)際的電池容量可以由芯片自動(dòng)地“學(xué)習(xí)”。由5個(gè)LED燈指示可用電量。
BQ2013H支持一個(gè)簡(jiǎn)單的單線雙向串口連接到外部微處理器(共地),芯片響應(yīng)串口的外部命令,輸出相應(yīng)的電池信息。為了支持電池組的測(cè)試,輸出可以由命令來控制,微處理器可以修改芯片的一些數(shù)據(jù)寄存器。
BQ2013H可以直接監(jiān)測(cè)4個(gè)鎳電池單元和3個(gè)鉛酸電池單元,在BQ2013H芯片的REF輸出引腳接一個(gè)晶體管,可以構(gòu)成一個(gè)簡(jiǎn)單、廉價(jià)的電壓調(diào)節(jié)器。在多個(gè)電池的單元系統(tǒng)中,可以給芯片的VCC引腳提供電源。內(nèi)部寄存器包括可用電量、溫度、容量、電池ID、電池狀態(tài)寄存器。[!--empirenews.page--]
BQ2013H監(jiān)測(cè)輸入或輸出可充電電池電荷的數(shù)額,來判定電池容量。BQ2013H測(cè)量放電和充電電流,估計(jì)自放電電荷,監(jiān)測(cè)低電壓閾值的電池,做溫度和充電率的補(bǔ)償。在電池負(fù)極和線路板地之間串接一個(gè)小值檢測(cè)電阻,通過監(jiān)測(cè)該電阻的電壓來進(jìn)行電荷測(cè)量??捎秒娏康臏y(cè)量是通過監(jiān)測(cè)隨時(shí)間變化的電壓,并且校正由于環(huán)境和運(yùn)行條件影響導(dǎo)致的誤差來完成的。
1.3 芯片內(nèi)部運(yùn)行概述
圖2的內(nèi)部運(yùn)行方框圖解釋了BQ2013H的運(yùn)作過程。BQ2013H累計(jì)測(cè)量充電和放電電流,同時(shí)對(duì)自放電進(jìn)行估計(jì),根據(jù)充電率和溫度補(bǔ)償充電電流。放電電流的補(bǔ)償值基于存儲(chǔ)在寄存器LCOMP中的數(shù)值。LCOMP寄存器允許芯片以連續(xù)的小放電電流進(jìn)行自動(dòng)調(diào)整。BQ2013H根據(jù)LC-OMP寄存器和溫度的值補(bǔ)償自放電率。
NAC(可用容量寄存器)是最重要的寄存器,它描述了任意時(shí)間可用的電池容量。電池充電時(shí)增加NAC寄存器的值,電池放電或自放電會(huì)減少NAC寄存器的值,而增加DCR(放電計(jì)數(shù)寄存器)的值。NAC寄存器也會(huì)根據(jù)OFFSET(偏移量寄存器)的值自動(dòng)校正偏移誤差。
在沒有給電池充電的情況下,如果電池從滿到空完全放電,這個(gè)時(shí)候DCR寄存器的值用于更新LMD(最近測(cè)量的放電量寄存器)的值,因此,BQ2013H可以根據(jù)實(shí)際的放電情況改寫容量測(cè)定值。
電池的初始容量等于PFC(可編程滿量程計(jì)數(shù)器)的值,在LMD寄存器更新之前,充電過程中NAC增加計(jì)數(shù)但不會(huì)超過初始閾值。這種方式允許被監(jiān)測(cè)的電池獨(dú)立充電,并且兼容任何類型的充電器。
2 系統(tǒng)硬件設(shè)計(jì)
如圖3所示,整個(gè)系統(tǒng)包括蓄電池、負(fù)載電路、電量監(jiān)測(cè)、單片機(jī)、LED顯示等模塊,系統(tǒng)采用12 V/2.5 Ah的蓄電池供電,負(fù)載除系統(tǒng)自身外還包括步進(jìn)電機(jī)電路。BQ2013H監(jiān)測(cè)蓄電池的電量,并驅(qū)動(dòng)LED以20%的增量顯示剩余電量。芯片采用HDQ協(xié)議通信,將相關(guān)寄存器的值傳送給單片機(jī)STC89C52,然后單片機(jī)將采集到的數(shù)據(jù)作相應(yīng)處理。
[!--empirenews.page--]
本系統(tǒng)采用TI公司的電源管理芯片BQ2013H作為系統(tǒng)的核心,蓄電池12 V電壓通過場(chǎng)效應(yīng)管BSS138進(jìn)行電壓調(diào)節(jié),為BQ2013H芯片提供5.2 V左右的電源電壓。蓄電池電壓經(jīng)過電阻R6、R7分壓,作為芯片的放電閾值電壓。檢測(cè)電阻R11采用0.01 Ω/3 W的電阻,采集到的電壓信號(hào)經(jīng)過RC濾波后輸入到芯片的SR引腳,根據(jù)電池類型、容量、檢測(cè)電阻阻值,要對(duì)J3~J8的跳線設(shè)置,使得符合當(dāng)前電池使用的狀況。圖4中BAT+、BAT-分別接蓄電池的正負(fù)極。DONE為電池充電完成狀態(tài)輸入端,可以由單片機(jī)給出充電完成信號(hào)。HDQ通過上拉電阻接單片機(jī)的I/O口。RB為寄存器提供掉電保護(hù)電壓。PACK-、GND接一起為負(fù)載或充電器的負(fù)極端。ACC為L(zhǎng)ED顯示的激活端,可由單片機(jī)來控制是否需要LED顯示。
參照BQ2013H芯片手冊(cè),可以作以下設(shè)置:初始容量PFC值2500 mAh×0.01 Ω=25 mVh。
可編程引腳設(shè)置如表2所列,其中H為高電平,Z為高阻,L為低電平。
3 軟件設(shè)計(jì)
3.1 HDQ通信協(xié)議
BQ2013H與單片機(jī)STC89C52之間通過HDQ串行總線通信。HDQ通信采用單總線、開漏輸出接口,該接口需要接一個(gè)上拉電阻,使用一種基于命令的通信協(xié)議。主機(jī)發(fā)送一個(gè)命令字節(jié)到BQ2013H芯片,這條命令指示芯片存儲(chǔ)接下來的8位數(shù)據(jù)到指定寄存器,或從指定寄存器輸出8位數(shù)據(jù)。數(shù)據(jù)傳送的作大速率為5 Kb/s,命令或數(shù)據(jù)字節(jié)的最低有效位先傳送。命令字節(jié)的前7位是寄存器地址,最后1位是讀/寫位,一個(gè)典型的讀周期數(shù)據(jù)格式如圖5所示。在一個(gè)寫周期,地址位或數(shù)據(jù)位之間的時(shí)段里,HDQ總線可以保持高電平。在一個(gè)讀周期,當(dāng)指定所讀寄存器地址的最后1位傳送完后,還需要等待指定的響應(yīng)時(shí)間tRSPS,芯片才輸出數(shù)據(jù)到總線。響應(yīng)時(shí)間tRSPS是指從讀寫位的下降沿到芯片返回?cái)?shù)據(jù)的第1個(gè)數(shù)據(jù)位的下降沿這個(gè)時(shí)間段,因此包括整個(gè)讀/寫位時(shí)間,因?yàn)樽钚〉捻憫?yīng)時(shí)間等于最小的位周期時(shí)間,這就意味著第1個(gè)數(shù)據(jù)位可以在命令R/W位一結(jié)束就開始傳送。有時(shí)該通信協(xié)議被認(rèn)為是HDQ8協(xié)議,用以區(qū)分像bq2060和bq2063器件所用的HDQ16協(xié)議。HDQ16與HDQ8協(xié)議的位時(shí)序是相同的,只是讀寫的是16位數(shù)據(jù)而不是8位。HDQ16協(xié)議的命令字仍然是一個(gè)7位的地址加一個(gè)讀寫位。
[!--empirenews.page--]
3.2 HDQ復(fù)位
如果HDQ引腳保持低電平時(shí)間超過最小間斷時(shí)間190μs,通信將會(huì)自動(dòng)復(fù)位。如果單片機(jī)沒有從BQ2013H取得期望的響應(yīng)或單片機(jī)需要重新開始通信,單片機(jī)將會(huì)使HDQ引腳保持低電平,并且產(chǎn)生一個(gè)間斷來復(fù)位通信,下次通信將在最小的間斷恢復(fù)時(shí)間40μs后開始。間斷和間斷恢復(fù)時(shí)序如圖6所示。HDQ可靠通信的設(shè)計(jì)方法是在每次通信前先有一個(gè)間斷,確保在每次通信前系統(tǒng)復(fù)位,以此來降低錯(cuò)誤數(shù)據(jù)的讀寫幾率。
3.3 HDQ讀寫時(shí)序
BQ2013H在經(jīng)過一個(gè)tB間斷時(shí)間和tBR間斷恢復(fù)時(shí)間后,單片機(jī)開始往HDQ總線上發(fā)送命令字節(jié)與數(shù)據(jù)字節(jié)。每位的傳輸分3步完成:第1步開始傳輸位,由單片機(jī)或BQ2013H將HDQ引腳置成低電平tSTRHB時(shí)間;第2步是傳輸數(shù)據(jù)位,數(shù)據(jù)位在tDSUB時(shí)間內(nèi)有效,數(shù)據(jù)位應(yīng)該保持tDHV時(shí)間,讓單片機(jī)或BQ2013H讀寫;第3步傳輸停止,通過將HDQ引腳置成高電平來實(shí)現(xiàn),停止時(shí)間由tSSUB與tCYCHB共同決定,時(shí)序時(shí)間均以開始傳輸?shù)呢?fù)電平邊緣算起。HDQ讀/寫時(shí)序如圖7所示。
3.4 HDQ讀/寫程序
單片機(jī)STC89C52可以控制BQ2013H芯片,向BQ2013H寫控制字或從BQ2013H讀取相關(guān)數(shù)據(jù)。下面是單片機(jī)(晶振11.0592 MHz)向BQ2013H寫控制字的子程序:
結(jié)語(yǔ)
本文討論的采用BQ2013H監(jiān)測(cè)蓄電池電量的方法,可以實(shí)時(shí)有效地監(jiān)測(cè)蓄電池的電量,外圍電路簡(jiǎn)單,程序簡(jiǎn)短。由單片機(jī)通過HDQ協(xié)議控制BQ2013H進(jìn)行數(shù)據(jù)的讀/寫,采集到的數(shù)據(jù)經(jīng)過處理,實(shí)現(xiàn)蓄電池電量的在線監(jiān)測(cè)。