中心議題:
- 充電電池容量自動(dòng)測(cè)試儀設(shè)計(jì)與實(shí)現(xiàn)
解決方案:
- 采用89S51的電池容量測(cè)試儀硬件電路設(shè)計(jì)
- 采用89S51的電池容量測(cè)試儀的工作原理
- 采用89S51的電池容量測(cè)試儀的程序設(shè)計(jì)
隨著電子產(chǎn)品小型便攜化發(fā)展趨勢(shì),充電電池應(yīng)用越來(lái)越廣泛了。市面上電池種類繁多,良莠不齊?,F(xiàn)在的電池容量虛標(biāo)是非常普遍的事情,只有很少一部分正規(guī)廠家的產(chǎn)品采用了實(shí)事求是的態(tài)度。曾經(jīng)見(jiàn)過(guò)一種標(biāo)注容量8000mAH的手機(jī)電池,實(shí)際容量?jī)H能達(dá)到標(biāo)注容量的一兩成而已,以目前的技術(shù),以手機(jī)電池的體積要達(dá)到如此容量尚無(wú)可能,只怕將來(lái)也未必能夠?qū)崿F(xiàn)。隨著小電子產(chǎn)品越來(lái)越多,每個(gè)人對(duì)于電池的需求將越來(lái)越多,手邊也會(huì)積累大量的充電電池。一塊高質(zhì)量的電池使用時(shí)效可以達(dá)到4、5年以上,劣質(zhì)電池就很差了,而且容易損壞。鑒于這個(gè)現(xiàn)狀,個(gè)人使用也有必要建立一個(gè)完整的評(píng)估體系,作為長(zhǎng)期選購(gòu)、使用的指導(dǎo)參考。
電池容量是衡量電池質(zhì)量的重要指標(biāo)。充電電池的容量測(cè)試有很多的方法??梢砸罁?jù)電池的放電曲線,進(jìn)行短時(shí)間放電,從而粗略得出電池容量。這種方法最大的優(yōu)點(diǎn)是快速,但是充電電池的放電曲線并不具有普遍性,很多劣質(zhì)電池放電初期電壓也很平穩(wěn),一旦進(jìn)入中后期,電壓下降非常迅速,所以采用這種方法得出的結(jié)論將非常不準(zhǔn)確的。最可靠最準(zhǔn)確無(wú)誤的還是以標(biāo)準(zhǔn)電流放電,全程測(cè)量實(shí)際放電時(shí)間的方式。不同的放電電流,充電電池最終能夠釋放出的電量是不同的,有一定的差距。蓄電池的容量標(biāo)注都是有統(tǒng)一標(biāo)準(zhǔn)的。目前使用最多的是10小時(shí)率放電容量與20小時(shí)率放電容量?jī)煞N。10小時(shí)率放電容量就是電池以恒定電流放電,至電量耗盡放電時(shí)間能夠維持10個(gè)小時(shí)左右,這個(gè)電流就被稱作10小時(shí)率電流(衡量電量用盡的標(biāo)準(zhǔn),不能以電池放電端電壓降低到零為準(zhǔn)。電池過(guò)度放電,會(huì)導(dǎo)致電池容量減少,無(wú)法恢復(fù),乃至提早損壞、完全失效。所以每種電池放電終止電壓都有嚴(yán)格的規(guī)定,這個(gè)可以查閱相關(guān)資料。過(guò)度放電與過(guò)度充電是造成充電電池不能達(dá)到使用年限、提前報(bào)廢的主要原因)。實(shí)時(shí)放電的測(cè)量方法最大的缺點(diǎn)就是費(fèi)時(shí)費(fèi)力,因?yàn)楹臅r(shí)久這樣測(cè)量精度也很容易受到各種外部因素的影響。測(cè)量過(guò)程中如果用10小時(shí)率電流持續(xù)放電時(shí)間至少都要在5個(gè)小時(shí)以上,作這樣長(zhǎng)時(shí)間的測(cè)試更需要足夠的耐心與精力以及充裕的時(shí)間??萍嫉陌l(fā)展是非常迅速,今天單片機(jī)已經(jīng)非常普及了。通過(guò)單片機(jī)程序控制對(duì)放電時(shí)間,深度進(jìn)行自動(dòng)化控制,就很容易精準(zhǔn)測(cè)出電池的實(shí)際容量,實(shí)現(xiàn)整個(gè)過(guò)程的自動(dòng)控制。模擬實(shí)際放電測(cè)量容量的方法雖然對(duì)能源有一點(diǎn)浪費(fèi),但是對(duì)于1A、2A以下的小容量充電電池還是完全可行的,對(duì)大容量電池進(jìn)行抽樣檢查也是很有必要。
采用89S51的電池容量測(cè)試儀硬件電路原理
下面介紹的電池容量測(cè)試儀采用89S51作為控制芯片,圖1就是硬件的電路原理圖。
圖1 硬件的電路原理圖
這個(gè)電池容量測(cè)試儀由放電電路、單片機(jī)控制計(jì)時(shí)兩個(gè)完全獨(dú)立部分組合而成。單片機(jī)部分制作費(fèi)時(shí)費(fèi)力,而且市面上單片機(jī)已很普及,沒(méi)必要親手制作,隨便找一片51單片機(jī)實(shí)驗(yàn)板就可以了。放電電路則是比較簡(jiǎn)單的,僅由四五只元件構(gòu)成。單片機(jī)部分主要負(fù)責(zé)對(duì)放電時(shí)間計(jì)時(shí),最終得到一組可靠的數(shù)據(jù),用于電池性能的考量。
[page]
采用89S51的電池容量測(cè)試儀工作原理
這種放電電路的實(shí)質(zhì)就是一模擬可控硅。當(dāng)我們將待測(cè)電池接入電路相應(yīng)位置時(shí),點(diǎn)按啟動(dòng)鍵,如果電池尚有余量,則電池兩端放電電壓將維持在設(shè)定值以上,三極管VT1就會(huì)瞬間飽和,電池通過(guò)電阻R2進(jìn)行放電。這種電路有可靠精確陡峭的開(kāi)關(guān)特性,VT1絕對(duì)工作于飽和截止兩種狀態(tài)之下。通過(guò)可調(diào)電阻對(duì)開(kāi)關(guān)電路臨界值(即充電電池放電終止電壓)進(jìn)行調(diào)節(jié)設(shè)定,便可適應(yīng)于各種不同類型充電電池的全程保護(hù)放電。由于個(gè)人的應(yīng)用不需要非常精準(zhǔn)的測(cè)試結(jié)果,所以實(shí)際測(cè)試中電池模擬放電原則上還是以快些為好,只需要得到一個(gè)大致的電池容量。為了較快完成電池測(cè)試過(guò)程,這里的電路設(shè)計(jì)采用兩小時(shí)率電流進(jìn)行放電。通過(guò)對(duì)各種電池測(cè)量結(jié)果的橫向比較,容量的差異還是顯而易見(jiàn)的,以此作為衡量電池優(yōu)劣的標(biāo)準(zhǔn),就已經(jīng)足夠了。這里以1000mAH、1.2V規(guī)格鎳氫電池測(cè)試為例,放電電流500mA就需要采用2Ω的放電電阻,電池終止放電電壓應(yīng)控制在1V以上。放電終止電壓通過(guò)可調(diào)電阻R1來(lái)調(diào)節(jié)設(shè)定。普通可調(diào)電阻精度較差,且容易產(chǎn)生漂移,會(huì)導(dǎo)致設(shè)定好的終止電壓隨時(shí)間推移以及使用環(huán)境變化產(chǎn)生較大的波動(dòng)。為了保證放電終止電壓的精準(zhǔn)且易于設(shè)定,R1可以使用3296系列精密可調(diào)電位器。3296多圈可調(diào)精密電位器的可調(diào)范圍一般在50T,所以每圈的調(diào)節(jié)范圍為2%,每轉(zhuǎn)動(dòng)一度,阻值變化大約0.005%,所以很容易調(diào)節(jié)獲得一個(gè)精確、穩(wěn)定的阻值。
終止電壓的設(shè)定必須在實(shí)際放電過(guò)程中進(jìn)行,負(fù)載電阻R2阻值變動(dòng),已經(jīng)設(shè)定的終止電壓也會(huì)隨之改變,需要重新設(shè)置。具體的調(diào)試方法就不再詳述了,參考一下相關(guān)資料。
這個(gè)放電電路不需要單獨(dú)的工作電源,而且與電池種類沒(méi)有相關(guān)性,完全可以適應(yīng)鎘鎳、鎳氫、鋰電池、鉛酸電池各種類型蓄電池的保護(hù)性放電,只是需要根據(jù)電池類型以及容量大小重新設(shè)置電路的終止電壓及放電電流。如果電池容量相對(duì)較高,那么三極管VT1、VT2的耗散功率也要相應(yīng)加大一些,同時(shí)不要忘了加大負(fù)載電阻R2的功率。
圖2是放電電路的印刷電路圖,元件數(shù)量少,很容易制作。
圖2 印刷電路圖
各種電池兩小時(shí)率電流放電能夠維持的放電時(shí)間一般都是在1.5小時(shí)以下的。這里單片機(jī)計(jì)時(shí)系統(tǒng)使用秒計(jì)時(shí),4位LED數(shù)碼管顯示。最大計(jì)時(shí)時(shí)間9999秒,大約2.7小時(shí)。
圖1單只LED數(shù)碼管內(nèi)部都是由8只發(fā)光管組合而成,分別作為8的7段字型部分,以及一位小數(shù)點(diǎn)。這里使用的是共陽(yáng)極數(shù)碼管,內(nèi)部8只發(fā)光管的陽(yáng)極是并連共同引出的,作為使能控制。
在實(shí)際電路中,L1就是第一只數(shù)碼管的共陽(yáng)極端。單片機(jī)的輸出、輸入接口數(shù)量都很有限,所以4位LED數(shù)碼管驅(qū)動(dòng)都是使用動(dòng)態(tài)顯示的方式。4只獨(dú)立數(shù)碼管LED的內(nèi)部a、b、c、d、e、f、g、dp這8段發(fā)光管相對(duì)應(yīng)的陰極都是并連的。統(tǒng)一由單片機(jī)P0口8位輸出進(jìn)行驅(qū)動(dòng)。數(shù)碼管要顯示出數(shù)碼還必須在共陽(yáng)極端同時(shí)施加正電壓才行。所以要讓4位中某一數(shù)碼管進(jìn)行顯示,只要在P0口輸出字型碼的同時(shí),給這位數(shù)碼管共陽(yáng)極端加上正電壓就行了,當(dāng)然與此同時(shí)其他三位數(shù)碼管的共陽(yáng)極端要保持低電壓,才不致顯示出現(xiàn)混亂。數(shù)碼管共陽(yáng)極端驅(qū)動(dòng)電流較大,所以采用了三極管進(jìn)行控制。以第一只數(shù)碼管為例,在P0端口輸出字型碼的同時(shí),P37輸出低電平,三極管T4導(dǎo)通,則共陽(yáng)極端L1就得到高電平了,數(shù)字就會(huì)顯示在第一只數(shù)碼管上了。
采用89S51的電池容量測(cè)試儀的程序設(shè)計(jì)
程序設(shè)計(jì)是以單片機(jī)P37口作為計(jì)時(shí)控制端子,P37口輸入低電平,計(jì)時(shí)程序啟動(dòng),4只數(shù)碼管顯示時(shí)間。放電電路中按下啟動(dòng)按鍵,放電過(guò)程觸發(fā),VT1導(dǎo)通,電池端電壓降落到放電電阻R2兩端,A端對(duì)地為高電平,通過(guò)電阻R4迫使三極管VT3導(dǎo)通,P37口電平就被拉低了,單片機(jī)計(jì)時(shí)程序啟動(dòng)。電池電壓降到終止電壓以后,放電電路自動(dòng)關(guān)閉,A端電壓消失,VT3恢復(fù)截止?fàn)顟B(tài),計(jì)時(shí)程序停止,數(shù)碼管維持顯示當(dāng)前持續(xù)時(shí)間。
如要進(jìn)入下次測(cè)試,首先按動(dòng)單片機(jī)復(fù)位鍵,當(dāng)前計(jì)時(shí)清零,等待下一次測(cè)試開(kāi)始。
程序設(shè)計(jì)比較簡(jiǎn)單。它的大致流程如下:初始化,P3端口置位,設(shè)立常量a為時(shí)間計(jì)數(shù)器,依次對(duì)a的十進(jìn)制數(shù)值各位進(jìn)行提取,順序輸送到P0端口,P2端口中的P24、P25、P26、P27各位是依次作為四位數(shù)碼管的使能控制端,通過(guò)P2端口的配合,就可以完成對(duì)各位數(shù)碼管的驅(qū)動(dòng),時(shí)間的動(dòng)態(tài)顯示。程序進(jìn)行中要不斷地檢測(cè)P3端口數(shù)值以決定計(jì)時(shí)狀態(tài):如果電池處于放電過(guò)程之中,三極管VT3導(dǎo)通,將迫使P37端口電壓降到零,P3端口值就是127,單片機(jī)程序檢測(cè)到這一結(jié)果,時(shí)間常量a將自動(dòng)加1,指示期間放電時(shí)間已經(jīng)延續(xù)1秒種了。這1秒鐘的時(shí)間精確計(jì)算是比較麻煩的。計(jì)時(shí)程序是一個(gè)循環(huán)結(jié)構(gòu),每一周期耗用時(shí)間都是一致的。所以在使用keil軟件調(diào)試過(guò)程中,通過(guò)對(duì)時(shí)間計(jì)數(shù)寄存器sec的觀察計(jì)算,可以得出一次循環(huán)大致需要的時(shí)間。以此為據(jù)再通過(guò)適當(dāng)改變延時(shí)子程序循環(huán)次數(shù)將常量a計(jì)時(shí)周期控制在1秒以下,剩余微小的時(shí)間差就可以通過(guò)插補(bǔ)空指令來(lái)校正了。計(jì)時(shí)精度只要控制在千分之一以下就可以了。在51單片機(jī)使用11.0592MHz晶體振蕩器的情況下,指令周期大約1.085微秒,所以將計(jì)時(shí)精度控制在千分之一以下問(wèn)題不大。誤差總是會(huì)有的,只能通過(guò)精確計(jì)算來(lái)控制了,也可以通過(guò)更換更高頻率的晶體振蕩器提高單片機(jī)時(shí)鐘頻率的方法來(lái)進(jìn)一步提高計(jì)時(shí)的精度。如果放電過(guò)程中,意外原因或者人為終止放電過(guò)程,P37端口變?yōu)楦唠娖?,程序循環(huán)依舊會(huì)進(jìn)行下去,只是時(shí)間常量a停止自動(dòng)加一,時(shí)間顯示維持不變。
編譯后,寫(xiě)入單片機(jī)內(nèi)部,做好放電電路部分與51單片機(jī)的連接,便可投入使用。
電池接入后,按動(dòng)輕觸按鍵“啟動(dòng)”,就會(huì)進(jìn)入一次容量測(cè)試過(guò)程,期間電池取出接入,都不會(huì)影響到單片機(jī)計(jì)時(shí)。電池放電完畢,單片機(jī)數(shù)碼管顯示鎖定,給出總放電持續(xù)時(shí)間,單位為秒??梢宰孕腥斯び?jì)算放電小時(shí)數(shù)。當(dāng)然也是可以自行對(duì)程序進(jìn)行改進(jìn),直接以小時(shí)分鐘形式進(jìn)行顯示。只要單片機(jī)不斷電,數(shù)碼管將持續(xù)顯示當(dāng)前放電時(shí)長(zhǎng)。如果要進(jìn)入下次測(cè)量過(guò)程,只需要按動(dòng)單片機(jī)復(fù)位鍵,數(shù)碼管清零,單片機(jī)程序轉(zhuǎn)入起點(diǎn),你就可以進(jìn)入新一次的容量測(cè)試過(guò)程了。
充電電池如果較長(zhǎng)時(shí)間閑置,它的實(shí)際容量將受到影響,重新啟用第一次能夠釋放的容量遠(yuǎn)遠(yuǎn)達(dá)不到標(biāo)注容量,放電電壓也很不平穩(wěn)。至少要經(jīng)過(guò)三次以上的充電放電循環(huán),電池完全激活,容量才能恢復(fù)到應(yīng)有的水平。充分考慮這種因素的影響,所以容量測(cè)試一般采取多次平均的方式,或者循環(huán)充放電三次以后放電持續(xù)時(shí)間為準(zhǔn),以此衡量電池容量才算是恰當(dāng)。