本發(fā)明屬于移動(dòng)電源的技術(shù)領(lǐng)域,特別涉及移動(dòng)電源的小電流檢測(cè)。
背景技術(shù):
隨著移動(dòng)互聯(lián)網(wǎng)和智能終端技術(shù)的高速發(fā)展,人們可以越來(lái)越方便地利用智能手機(jī)等終端隨時(shí)隨地獲取資訊、娛樂。然而,智能手機(jī)的大屏幕觸控、移動(dòng)互聯(lián)網(wǎng)接入、應(yīng)用程序運(yùn)行等各種操作,不可避免地比傳統(tǒng)的通信終端需要更多的電量,從而導(dǎo)致其電量消耗速度非???。
移動(dòng)電源的出現(xiàn)很好地解決了智能手機(jī)電量消耗過快,且在外出行時(shí)不易找到固定充電接口的問題。移動(dòng)電源以其容量大、充電速度快、方便攜帶等多種優(yōu)點(diǎn),已經(jīng)隨著智能手機(jī)一起,成為人們出行必備物品。
由于現(xiàn)在市場(chǎng)智能終端品種越來(lái)越多,而開發(fā)者為了盡可能滿足把所有智能終端產(chǎn)品都能充到滿,目前移動(dòng)電源的放電小電流越做越小,但是MCU內(nèi)部的ADC模塊本身也存在OFFSET,且移動(dòng)電源放電時(shí),都是基于PWM的調(diào)整,系統(tǒng)板上本身也會(huì)產(chǎn)生比較大的噪聲,會(huì)影響小電流的檢測(cè),所以小電流檢測(cè)算法尤為重要。
例如,專利申請(qǐng)201410589811.X公開了一種移動(dòng)電源剩余電量的檢測(cè)方法和裝置,實(shí)現(xiàn)移動(dòng)電源實(shí)時(shí)電量的精確測(cè)量。所述方法包括:定義執(zhí)行目標(biāo)次數(shù)的信號(hào)采樣流程為一組循環(huán),在一組循環(huán)中,執(zhí)行當(dāng)前信號(hào)采樣流程;其中,所述信號(hào)采樣流程包括:按照預(yù)設(shè)采樣周期對(duì)電源的充電電流進(jìn)行多次采樣得到多個(gè)采樣值;取所述多個(gè)采樣值的均值;對(duì)所述均值進(jìn)行平衡濾波;每執(zhí)行完一組循環(huán),輸出一次實(shí)時(shí)電源電量。
然而上述的方法僅僅能實(shí)現(xiàn)電量的計(jì)算,并不能解決不同PCBA板上噪聲帶來(lái)小電流不關(guān)機(jī)的問題。
技術(shù)實(shí)現(xiàn)要素:
為解決上述問題,本發(fā)明的目的在于提供一種移動(dòng)電源的小電流檢測(cè)電路及方法,該電路及方法可以保證移動(dòng)電源把終端設(shè)備充滿并且可節(jié)省移動(dòng)電源本身的電量,同時(shí)可以解決不同PCBA板上噪聲帶來(lái)小電流不關(guān)機(jī)的問題。
為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下。
一種移動(dòng)電源的小電流檢測(cè)電路,其特征在于檢測(cè)電路包括電池保護(hù)電路、開關(guān)電路、濾波電路、升壓輸出檢測(cè)電路、以及MCU,其中,開關(guān)電路又是由PMOS開關(guān)控制電路和NMOS開關(guān)控制電路構(gòu)成,升壓輸出檢測(cè)電路則包括有升壓輸出自動(dòng)負(fù)載檢測(cè)電路和小電流檢測(cè)電路;
所述電池保護(hù)電路接有開關(guān)電路,PMOS開關(guān)控制電路與濾波電路連接,MCU則分別連接PMOS開關(guān)控制電路和NMOS開關(guān)控制電路,濾波電路又連接于升壓輸出自動(dòng)負(fù)載檢測(cè)電路,升壓輸出自動(dòng)負(fù)載檢測(cè)電路和小電流檢測(cè)電路則分別連接到MCU,通過MCU來(lái)檢測(cè)有無(wú)負(fù)載或測(cè)量電流的大小。
所述電池保護(hù)電路,由DW01芯片、QS1、QS4、R1、R2、C6、C1和電池組成,其中,R1通過DW01芯片的第2引腳接地,C1接于DW01芯片的第6引腳和第5引腳之間,R2接于DW01芯片的第5引腳,電磁接于R2,C6與電磁并聯(lián),QS1、QS4并聯(lián)于電池上。
開關(guān)電路是由PWM2/PWM3口兩路PWM來(lái)控制開關(guān)電路來(lái)實(shí)現(xiàn),其中,PWM2是PMOS開關(guān)控制電路,PWM3是NMOS開關(guān)控制電路;PMOS開關(guān)控制電路由PMOS管構(gòu)成,NMOS開關(guān)控制電路則由NMOS管構(gòu)成。
濾波電路,由C7、C8、C9構(gòu)成,其中,C7、C8、C9并聯(lián)于USB-OUT(USB輸出端口)的負(fù)載端,C9接USB輸出端口。
升壓輸出檢測(cè)電路由QS3、RS2、R12、R構(gòu)成,其中,QS3接的接USB輸出端口的LOAD IN端口;RS2一端連接MCU的13引腳,另一端則接于QS3上;R12則位于QS3的接地端,QS3、R12和R構(gòu)成小電流檢測(cè)電路;MCU的PT1.3口的內(nèi)部下拉電阻則構(gòu)成升壓輸出自動(dòng)負(fù)載檢測(cè)電路(自動(dòng)負(fù)載檢測(cè)電路主要通過MCU的LOAD_IN【芯片PT1.3口內(nèi)部開下拉電阻】引腳來(lái)識(shí)別USB_OUT上是否有負(fù)載接入)。
一種移動(dòng)電源小電流檢測(cè)算法,其特征在于,所述方法包括如下:
步驟1、完成AD檢測(cè)模塊的配置,所述完成配置,包括配置好放電電流檢測(cè)AD通道時(shí),配置好ADC模塊的時(shí)鐘源和ADC轉(zhuǎn)換時(shí)間。
步驟2、小電流采樣;連續(xù)采集電流值,獲得臨時(shí)電流值,在第一次按鍵升壓或第一次負(fù)載自動(dòng)檢測(cè)升壓時(shí),所述臨時(shí)電流值是在第一次升壓,在不打開PSW的情況下,通過多次循環(huán)主程序求平均獲得,獲得無(wú)輸入信號(hào)的初始AD原碼。
所述的步驟中,連續(xù)采16筆電流值,求平均得出一個(gè)臨時(shí)電流值;具體地說(shuō),通過連續(xù)采集16次ADC求平均,得到一個(gè)臨時(shí)的AD結(jié)果。
在上電之后第一次按鍵開啟升壓或者通過負(fù)載自動(dòng)檢測(cè)開啟升壓時(shí),先不打USB OUT輸出端的開關(guān)控制腳,通過累加16個(gè)臨時(shí)AD結(jié)果后求平均得到小電流檢測(cè)口上的AD值(小電流的初始值),把它保存起來(lái)作為電流檢測(cè)口無(wú)輸入信號(hào)的AD原碼。
步驟3、對(duì)比及計(jì)數(shù);第1次對(duì)外放電,得到小電流初始值后,接通負(fù)載,正常檢測(cè)電流,把采到的電流值與小電流初始值作比較,如果采到電流值大于小電流初始值,相減后的值即為當(dāng)前電流值,當(dāng)前電流值小于小電流預(yù)設(shè)值時(shí),真正的小電流計(jì)數(shù)器COUNT1計(jì)數(shù)累加1次;若采到的電流值比小電流初始值還小,則當(dāng)前電流值直接置0,同樣把小電流計(jì)數(shù)器COUNT1計(jì)數(shù)累加1次。
具體地說(shuō),得到電流檢測(cè)口原碼后,再進(jìn)行采集AD值,正常工作時(shí)小電流采集方法和采集原碼作法一致,如果采到的AD值和原碼相減為負(fù),則把AD結(jié)果置0,如果為正則減去原碼,得到實(shí)際的AD值。
每得到一個(gè)實(shí)際AD值后,用COUNT2計(jì)數(shù)寄存器作一次累加計(jì)數(shù),當(dāng)COUNT2還未到250次時(shí),要把實(shí)際的AD值與放電最小關(guān)機(jī)電流的AD預(yù)設(shè)值(通常流程中AD預(yù)設(shè)值為5)作比較,如果得到實(shí)際AD值小于AD預(yù)設(shè)值時(shí),小電流計(jì)數(shù)器COUNT1累加1次。當(dāng)COUNT2達(dá)到250次后,再來(lái)查看COUNT1的值,如果COUNT1的值超過200,則認(rèn)為是小電流,如果在關(guān)機(jī)電流時(shí)間內(nèi)都是這個(gè)概率即可關(guān)掉升壓。
上述步驟中,關(guān)機(jī)電流的AD預(yù)設(shè)值/COUNT1/COUNT2這幾個(gè)值客戶可自行根據(jù)情況進(jìn)行調(diào)整。
進(jìn)一步,具體的步驟包括:
101、芯片上電后,配置好ADC模塊的時(shí)鐘源和ADC轉(zhuǎn)換時(shí)間,設(shè)置上電標(biāo)志位【FLAG.B1=1】;
102、程序檢測(cè)到升壓按鍵或檢測(cè)到負(fù)載自動(dòng)升壓時(shí),如果FLAG.B1仍為1,表明為上電后第一次進(jìn)行升壓,此時(shí)把FLAG.B0=1;
103、控制兩路PWM升壓時(shí),如果識(shí)別到FLAG.B0=1,則不打開USB_OUT端的PSW開關(guān)。
104、當(dāng)采集完256筆電流值后,如果FLAG.B0=1,則保留升壓時(shí)的初始電流值,并把FLAG的最低兩位清0,一旦識(shí)別到FLAG.B0為0則打開USB_OUT端的PSW開關(guān);
105、當(dāng)再次采集到256筆電流值后,計(jì)數(shù)器2加1,需要的把當(dāng)前的電流值與初始電流值作比較,如果當(dāng)前電流值小于初始電流值則把當(dāng)前值置0,如果當(dāng)前電流值大于初始電流值則把相減的結(jié)果與預(yù)設(shè)的小電流值作比較,相減的結(jié)果如果小于預(yù)設(shè)的小電流值則小電流計(jì)數(shù)器1加1;
106、當(dāng)計(jì)數(shù)器2累加到250,再來(lái)判斷計(jì)數(shù)器1是否大于200,如果大于200則認(rèn)為檢測(cè)到小電流,否則判斷為正常狀態(tài)。
長(zhǎng)時(shí)間采集的情況下,采到的最終電流值的每250次,都有200次結(jié)果在預(yù)設(shè)值5以下,則可以關(guān)閉升壓的兩路PWM和PSW。
本發(fā)明的有益效果是:可以保證移動(dòng)電源在把終端設(shè)備充滿電量的同時(shí)可節(jié)省移動(dòng)電源本身的電量,還可以解決不同PCBA板上噪聲帶來(lái)小電流不關(guān)機(jī)的問題。
附圖說(shuō)明
圖1是本發(fā)明所實(shí)施的電路原理圖。
圖2是本發(fā)明所實(shí)施的電路圖。
圖3是本發(fā)明所實(shí)施的軟件控制流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
如圖1所示,本發(fā)明的實(shí)施主要通過小電流檢測(cè)電路中的IDET口來(lái)檢測(cè)流過移動(dòng)電源負(fù)載上的電流,其檢測(cè)電路包括電池保護(hù)電路10、開關(guān)電路11、濾波電路12、升壓輸出檢測(cè)電路13、以及MCU周邊電路14。其中,開關(guān)電路11又是由PMOS開關(guān)控制電路111和NMOS開關(guān)控制電路112構(gòu)成,升壓輸出檢測(cè)電路13則包括有升壓輸出自動(dòng)負(fù)載檢測(cè)電路131和小電流檢測(cè)電路132。
結(jié)合圖2所示,電池保護(hù)電路10主要由DW01芯片、QS1、QS4、R1、R2、C6、C1和電池組成,其中,R1通過DW01芯片的第2引腳接地,C1接于DW01芯片的第6引腳和第5引腳之間,R2接于DW01芯片的第5引腳,電磁接于R2,C6與電磁并聯(lián),QS1、QS4并聯(lián)于電池上;電池保護(hù)電路上的電池通過外接負(fù)載進(jìn)行放電時(shí),電池的電壓將慢慢降低,當(dāng)電池電壓降到2.3V時(shí),DW01(電池保護(hù)電路10的控制芯片)將認(rèn)為電池電壓處于過放電壓狀態(tài),便立即斷開第1腳的輸出電壓,使第1腳電壓變?yōu)?V,QS1的G2和QS4的G1口的開關(guān)管因OD上無(wú)電壓而關(guān)閉。當(dāng)電池通過充電器正常充電時(shí),隨著充電時(shí)間的增加,電池電壓將越來(lái)越高,當(dāng)電池電壓升高到4.4V時(shí),DW01將認(rèn)為電池已處于過充電壓狀態(tài),便立即斷開第3腳的輸出電壓,使第3腳電壓變?yōu)?V,QS1的G1和QS4的G2口的開關(guān)管因OC腳無(wú)電壓而關(guān)閉,電池充電回路被切斷,在電池對(duì)外放電過程中,QS1和QS4的兩個(gè)電子開關(guān)等效于兩個(gè)電阻很小的電阻,加在G極電壓大于1V時(shí),開關(guān)管的導(dǎo)通內(nèi)阻很小,只有幾十毫歐,相當(dāng)于開關(guān)閉合,當(dāng)G極的電壓小于0.7V以下時(shí),開關(guān)管的導(dǎo)通內(nèi)阻很大,為幾M歐,相當(dāng)于開關(guān)斷開。當(dāng)負(fù)載電流增大時(shí),必定在QS1和QS4上電壓也會(huì)增大,當(dāng)內(nèi)阻電壓上升到0.2V時(shí),便認(rèn)為負(fù)載電流到達(dá)了極限值,于是停止第1腳的輸出電壓,使第1腳電壓變?yōu)?V,QS1的G2和QS4的G1內(nèi)的放電控制管關(guān)閉,切斷電池的放電回路,實(shí)現(xiàn)了過流保護(hù)。
開關(guān)電路11是由PWM2/PWM3口兩路PWM來(lái)控制開關(guān)電路來(lái)實(shí)現(xiàn),PWM2是PMOS開關(guān)控制電路111,PWM3是NMOS開關(guān)控制電路112。PMOS開關(guān)控制電路111由PMOS管構(gòu)成,NMOS開關(guān)控制電路112則由NMOS管構(gòu)成。MCU通過PWM2/PWM3口兩路互補(bǔ)PWM來(lái)控制開關(guān)電路實(shí)現(xiàn)對(duì)電池的升壓,當(dāng)PWM2和PWM3同時(shí)為高電平時(shí),PMOS管截止,電流從電池流經(jīng)電感和NMOS管到地,對(duì)電感進(jìn)行儲(chǔ)能,當(dāng)PWM2為高電平且PWM3為低電平時(shí),PMOS管和NMOS管均不導(dǎo)通,即為死區(qū)時(shí)間,當(dāng)PWM2和PWM3同時(shí)為低電平時(shí),PMOS管導(dǎo)通,NMOS管截止,電流從電池,流經(jīng)電感和PMOS管,到達(dá)USB_OUT端,此時(shí)電感將儲(chǔ)存的磁場(chǎng)能轉(zhuǎn)換為電場(chǎng)能,且這個(gè)能量是電池電壓和電感的磁場(chǎng)能轉(zhuǎn)換為電能的疊加后形成的,所以輸出電壓高于電池電壓,即實(shí)現(xiàn)升壓,如PWM控制波形圖所示,兩路PWM交替工作,對(duì)電池進(jìn)行升壓,PWM頻率的調(diào)整是通過MCU內(nèi)部檢測(cè)基準(zhǔn)反測(cè)VDD實(shí)現(xiàn)的。
濾波電路后接有USB輸出端口(USB-OUT)。濾波電路由C7、C8、C9構(gòu)成,其中,C7、C8、C9并聯(lián)于USB-OUT的負(fù)載端,C9接USB輸出端口;濾波電路是對(duì)電池升壓后的電壓進(jìn)行濾波,同時(shí)開關(guān)電路不斷的循環(huán)工作,可以在電容兩端得到高于輸入電壓的電壓。
升壓輸出檢測(cè)電路由QS3、RS2、R12[電流檢測(cè)電阻]、R構(gòu)成,其中,QS3接的接USB輸出端口的LOAD IN端口;RS2一端連接MCU的13引腳,另一端則接于QS3上;R12則位于QS3的接地端;負(fù)載自動(dòng)檢測(cè)電路中的檢測(cè)電阻用的是MCU里PT1.3口的內(nèi)置下拉電阻,所以在電路外省略,自動(dòng)負(fù)載檢測(cè)電路主要通過MCU的LOAD_IN【芯片PT1.3口內(nèi)部開下拉電阻】引腳來(lái)識(shí)別USB_OUT上是否有負(fù)載接入,如果有負(fù)載時(shí),接通HM8205S NMOS管的控制引腳,讓電流從負(fù)載上流過,然后用MCU的A/D模塊來(lái)檢測(cè)流過負(fù)載的電流,其電路的作用主要有兩個(gè):
1、防止過流,當(dāng)負(fù)載端因?yàn)槎搪?,流過檢測(cè)電路上的電流增大時(shí),需要關(guān)掉兩路PWM以及HM8205S的控制腳PSW,斷開負(fù)載。
2、負(fù)載充滿關(guān)斷升壓,當(dāng)負(fù)載端電流變到足夠小時(shí),表明負(fù)載已經(jīng)充滿,同樣要關(guān)掉兩路PWM以及HM8205S的控制腳PSW。
再如圖3所示,本發(fā)明具體實(shí)現(xiàn)時(shí),小電流的檢測(cè)方法為:配置好放電電流檢測(cè)AD通道時(shí),同時(shí)配置好ADC模塊的時(shí)鐘源和ADC轉(zhuǎn)換時(shí)間。通過連續(xù)采集16次ADC求平均,得到一個(gè)臨時(shí)的AD結(jié)果,另外在上電之后第一次按鍵開啟升壓或者通過負(fù)載自動(dòng)檢測(cè)開啟升壓時(shí),先不打開PSW【USB OUT輸出端的開關(guān)控制腳】,先采集小電流檢測(cè)口上的AD值【跑16次MAIN循環(huán)得到最原始的AD碼值】,把它保存起來(lái)作為電流檢測(cè)口無(wú)輸入信號(hào)的AD原碼。得到電流檢測(cè)口原碼后,以后再采到的AD值【正常工作時(shí)小電流采集方法和采集原碼作法一致】如果AD值和原碼相減為負(fù),則把AD結(jié)果置0,如果為正則減去原碼,得到實(shí)際的AD值。每得到一個(gè)實(shí)際AD值后,用COUNT2計(jì)數(shù)寄存器作一次累加計(jì)數(shù),當(dāng)COUNT2還未到250次時(shí),要把實(shí)際的AD值與放電最小關(guān)機(jī)電流的AD預(yù)設(shè)值【流程中預(yù)設(shè)值為5】作比較,如果得到實(shí)際AD值小于預(yù)設(shè)AD值時(shí),小電流計(jì)數(shù)器COUNT1累加1次。當(dāng)COUNT2達(dá)到250次后,再來(lái)查看COUNT1的值,如果COUNT1的值超過200,則認(rèn)為是小電流,如果在關(guān)機(jī)電流時(shí)間內(nèi)都是這個(gè)概率即可關(guān)掉升壓。
關(guān)機(jī)電流的AD預(yù)設(shè)值/COUNT1/COUNT2這幾個(gè)值客戶可自行調(diào)整。
本發(fā)明在移動(dòng)電源在把終端設(shè)備充滿電量的同時(shí)還可節(jié)省移動(dòng)電源本身的電量,同時(shí)可以解決不同PCBA板上噪聲帶來(lái)小電流不關(guān)機(jī)的問題。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。