陰亞芳, 花 蕊
(西安郵電大學(xué) 電子工程學(xué)院, 陜西 西安 710121)
便攜設(shè)備電源管理系統(tǒng)的設(shè)計(jì)
陰亞芳, 花 蕊
(西安郵電大學(xué) 電子工程學(xué)院, 陜西 西安 710121)
基于電源管理芯片PM8028,設(shè)計(jì)一種便攜設(shè)備電源管理系統(tǒng)。對(duì)整個(gè)系統(tǒng)的充電及供電電路進(jìn)行設(shè)計(jì),將系統(tǒng)工作狀態(tài)及電源管理系統(tǒng)軟件進(jìn)行劃分,通過軟件編程使系統(tǒng)在各工作狀態(tài)之間自動(dòng)切換,從而動(dòng)態(tài)的調(diào)整了系統(tǒng)供電策略。測試表明,該系統(tǒng)待機(jī)電流較小,延長了設(shè)備待機(jī)時(shí)間。
便攜設(shè)備;PM8028;電源管理
隨著人類社會(huì)向智能化的方向發(fā)展,嵌入式的應(yīng)用也逐漸迎來了新的發(fā)展前景[1]。各種各樣的電子娛樂設(shè)備不斷進(jìn)入人們的生活中,其中以便攜式設(shè)備的使用最為廣泛,如手機(jī),筆記本電腦,數(shù)碼相機(jī)等[2-3]。而嵌入式便攜設(shè)備大多都有功耗約束,降低功耗,延長待機(jī)時(shí)間是其追求的目標(biāo)[4-5]。目前很多智能手機(jī)在密集使用下只能維持半天,多數(shù)攝像機(jī)和數(shù)碼相機(jī)在一次充電后都只有一個(gè)小時(shí)左右的累積工作時(shí)間[6]。這些便攜設(shè)備的待機(jī)時(shí)間相對(duì)較短,不能很好的滿足用戶的使用需求。本文設(shè)計(jì)一種基于電源管理芯片PM8028的便攜設(shè)備電源管理系統(tǒng),從硬件和軟件兩個(gè)方面,完成了整個(gè)設(shè)備的電源管理任務(wù)。
系統(tǒng)總體由微處理器(Microprocessor Unit, MPU)控制模塊、充放電控制模塊、電源管理模塊、WiFi模塊、射頻模塊和人機(jī)交互模塊構(gòu)成,如圖1所示。
MPU模塊由MDM9600芯片構(gòu)成,該模塊完成整個(gè)系統(tǒng)內(nèi)數(shù)據(jù)的運(yùn)算及處理。充電模塊由芯片MAX8903及其外圍電路構(gòu)成,該模塊配合軟件完成電池充放電模式的設(shè)定、控制及充電過程中電流的監(jiān)測任務(wù)。此外通過對(duì)電池溫度的實(shí)時(shí)檢測來防止充放電過程中溫度過高對(duì)電池造成的損壞。電源管理模塊由電源管理芯片PM8028及其外圍電路構(gòu)成,為系統(tǒng)其他模塊提供穩(wěn)定的電壓。WiFi模塊由芯片WCN1314及其外圍電路構(gòu)成,用來實(shí)現(xiàn)用戶串口到無線網(wǎng)絡(luò)之間的轉(zhuǎn)換,同時(shí)正確無誤的傳輸數(shù)據(jù)。射頻模塊由芯片RTR8600及其外圍電路構(gòu)成,用來連接3G或4G網(wǎng)絡(luò),接收網(wǎng)絡(luò)信號(hào)。人機(jī)交互模塊主要由鍵盤、液晶顯示電路組成,使設(shè)備更加人性化,便于操作。系統(tǒng)報(bào)警功能主要由蜂鳴器完成,當(dāng)設(shè)備處于低電量或出現(xiàn)電池溫度異常等情況時(shí),蜂鳴器報(bào)警提示。

圖1 系統(tǒng)總體框圖
電源管理系統(tǒng)的硬件設(shè)計(jì)包括充電模塊的設(shè)計(jì)和供電模塊的設(shè)計(jì)。
2.1 充電模塊硬件設(shè)計(jì)
充電模塊由充電電路、電池溫度檢測電路組成。
2.1.1 充電電路
充電電路主要由MAX8903C充電管理芯片構(gòu)成,該芯片的電路連接如圖2所示。
主要引腳說明:
(1)DC外接5V的直流電源。
(2)/CEN引腳由CHARGE_EN控制,CHARGE_EN拉低充電管理芯片使能充電,反之則禁止充電。
(3)CT引腳為充電定時(shí)器設(shè)置輸入。CT和GND之間的電容(CCT)用于設(shè)置充電時(shí)間,本系統(tǒng)中設(shè)計(jì)充電時(shí)間控制在2小時(shí)以內(nèi),因此由公式[7]
TPRE=33 min ×CCT/0.15 μF,
TPRE=660 min ×CCT/0.15 μF,
可以計(jì)算得出CCT大小為0.02μF。
(4)THM引腳為熱敏電阻輸入。設(shè)計(jì)采用的鋰電池含有熱敏電阻,因此該引腳接地,禁用芯片熱敏電阻保護(hù)功能。
(5)ISET引腳用于設(shè)置充電電流輸入,充電電流大小由ISET和GND之間的電阻RISET設(shè)置。該引腳由CURRENT_DET對(duì)其進(jìn)行控制,CURRENT_DET將其拉高,充電電流設(shè)置為1 500 mA,由公式[7]
ICHARGE=1200/RISET,
可得出電阻RISET的阻值為0.8 kΩ。若CURRENT_DET將ISET拉低,則充電電流設(shè)置為600 mA。
(6)引腳/FLT和引腳/CHG通過上拉電阻接到2.8 V的電壓,分別用于充電超時(shí)故障提示和充電指示。
(7)引腳/DOK用于檢測電池充電器狀態(tài)。該引腳為低電平,說明連接充電器,反之,未連接充電器。
(8)IDC引腳為直流電源限流設(shè)置輸入。通過連接4.02 kΩ電阻接地,適配器輸入限制電流可以通過RES_HOPPING控制。

圖2 MAX8903C電路連接圖
2.1.2 電池溫度檢測電路
溫度檢測電路用于檢測充放電過程中電池的溫度,防止溫度過高對(duì)電池造成損壞。電池溫度檢測電路如圖3所示。

圖3 鋰電池溫度檢測圖
用一個(gè)10 kΩ固定阻值的電阻和負(fù)溫度系數(shù)(Negative Temperature Coefficient, NTC)熱敏電阻共同分割固定電壓PM_VREG_RF_SW_2P7,該電壓由PM8028電源管理芯片中的L8提供,大小為2.7V,用PM8028中的MPP07引腳來測量電池BAT_ID兩端的電壓。在電池充電的過程中,PM8028通過定時(shí)設(shè)置模擬數(shù)字轉(zhuǎn)換器(Analog to Digital Converter ,ADC)模塊寄存器的相關(guān)狀態(tài)位來控制MPP07引腳進(jìn)行采樣,然后將采樣值存放至ADC數(shù)據(jù)寄存器當(dāng)中,同時(shí)向充電管理程序發(fā)送觸發(fā)信號(hào),充電管理程序接收到信號(hào)后讀取ADC數(shù)據(jù)寄存器中的采樣值,經(jīng)過計(jì)算得到BAD_ID端的實(shí)際電壓,即NTC熱敏電阻兩端的電壓,從而計(jì)算出負(fù)熱敏電阻的阻值。由負(fù)熱敏電阻的阻值和溫度對(duì)應(yīng)關(guān)系即可得到負(fù)熱敏電阻的溫度,也就是此時(shí)電池的溫度。
2.2 供電模塊硬件設(shè)計(jì)
系統(tǒng)中各模塊的供電需求各不相同,因此整個(gè)系統(tǒng)需要多路電源為其供電,同時(shí)各模塊中大多數(shù)電壓都不能直接由電池供電,必須進(jìn)行適當(dāng)?shù)碾妷鹤儞Q來為系統(tǒng)提供穩(wěn)定可靠的工作電壓。除去液晶顯示屏(liquid crystal display , LCD)屏背光電壓以外,PM8028芯片中各路輸出電壓能夠很好的滿足系統(tǒng)各模塊對(duì)電壓的不同需求。對(duì)LCD屏需要外接一個(gè)升壓芯片來為其提供所需背光電壓。系統(tǒng)電壓分配情況如圖4所示。

圖4 系統(tǒng)各模塊電壓分配圖
3.1 系統(tǒng)狀態(tài)及軟件任務(wù)劃分
根據(jù)系統(tǒng)的軟硬件功能及有限狀態(tài)機(jī)的概念[8-9],將系統(tǒng)的工作狀態(tài)分為六種——正常工作、待機(jī)、溫度異常、電池欠壓、關(guān)機(jī)充電、關(guān)機(jī)。系統(tǒng)的工作狀態(tài)會(huì)根據(jù)各外設(shè)產(chǎn)生的中斷信號(hào)進(jìn)行躍遷,系統(tǒng)狀態(tài)躍遷圖如圖5所示。
由于電源管理系統(tǒng)根據(jù)電池電壓、電池溫度、充電器的插拔狀態(tài)、按鍵事件等外設(shè)的中斷信號(hào)來決策系統(tǒng)狀態(tài)的切換控制,使系統(tǒng)躍遷到不同的工作狀態(tài),因此將電池、充電器按鍵等設(shè)備的管理統(tǒng)一到一個(gè)大的任務(wù)中去,即設(shè)備管理任務(wù)(Device Management, DM),由該任務(wù)來集中管理各外設(shè)的狀態(tài)及中斷事件的檢測。而將系統(tǒng)各工作狀態(tài)的遷移定義到另一個(gè)任務(wù)中,即狀態(tài)管理任務(wù)(State Management, SM),由該任務(wù)來完成系統(tǒng)各個(gè)工作狀態(tài)的切換。
設(shè)備管理任務(wù)與狀態(tài)管理任務(wù)之間通過消息隊(duì)列的方式進(jìn)行通信,共同實(shí)現(xiàn)整個(gè)電源管理系統(tǒng)的管理。

圖5 系統(tǒng)狀態(tài)遷移圖
3.2 SM任務(wù)軟件實(shí)現(xiàn)
依照結(jié)構(gòu)化程序的設(shè)計(jì)思想[10],需要編寫不同的函數(shù)來實(shí)現(xiàn)系統(tǒng)的SM任務(wù)。首先需要完成各初始化工作。系統(tǒng)狀態(tài)管理任務(wù)與其他各任務(wù)之間是通過消息隊(duì)列的方式來實(shí)現(xiàn)信息的交互,因此由sm_task_init()函數(shù)來實(shí)現(xiàn)消息隊(duì)列sm_cmd_q和sm_cmd_free_q的初始化工作,除此之外該函數(shù)需要完成對(duì)定時(shí)器sm_sleep_timer的初始化。通過pm_device_info_init()函數(shù)對(duì)結(jié)構(gòu)體device_info進(jìn)行初始化,該結(jié)構(gòu)體內(nèi)定義了電池電壓狀態(tài)、充電器插拔狀態(tài)、系統(tǒng)工作狀態(tài)等成員變量。初始化工作完成后將進(jìn)入整個(gè)程序的主體部分,主體部分由for循環(huán)實(shí)現(xiàn)。進(jìn)入for循環(huán)時(shí),首先判斷是否有信號(hào)到來,這里定義了三種信號(hào),分別是SM_RPT_TIMER_SIG、SM_CMD_Q_SIG 和SM_SLEEP_TIMER_SIG,根據(jù)接收到信號(hào)的不同,分別調(diào)用不同的接口進(jìn)行處理。當(dāng)接收到SM_CMD_Q_SIG消息時(shí),表示SM任務(wù)接收到各外設(shè)產(chǎn)生的中斷事件,這時(shí)調(diào)用sm_dispatch_commands()函數(shù)來對(duì)系統(tǒng)當(dāng)前所處的工作狀態(tài)進(jìn)行判斷,不同的工作狀態(tài)進(jìn)入不同的分支,根據(jù)接收到的中斷事件進(jìn)行狀態(tài)切換。系統(tǒng)狀態(tài)管理及系統(tǒng)設(shè)備管理流程圖如圖6所示。

圖6 SM任務(wù)流程圖
3.3 DM任務(wù)軟件實(shí)現(xiàn)
實(shí)現(xiàn)系統(tǒng)設(shè)備管理任務(wù)首先要進(jìn)行初始化工作,對(duì)消息隊(duì)列以及各種定時(shí)器等進(jìn)行初始化。初始化工作完成后等待接收信號(hào),這里定義了六種與DM任務(wù)相關(guān)的信號(hào),根據(jù)接收到的不同信號(hào),做相應(yīng)的處理。
信號(hào)定義如下。
/*看門狗定時(shí)器信號(hào)*/
DM_RPT_TIMER_SIG
/*電池電壓檢測信號(hào)*/
DM_BAT_V_TIMER_SIG
/*電池溫度檢測信號(hào)*/
DM_BAT_T_TIMER_SIG
/*充電器檢測信號(hào)*/
DM_CHARGER_DETECT_TIMER_SIG
/*長按Power鍵信號(hào)*/
DM_PWR_KEY_LONG_SIG
/*短按Power鍵信號(hào)*/
DM_PWR_KEY_SHORT_SIG
DM任務(wù)的處理流程圖如圖7所示。

圖7 DM任務(wù)流程圖
系統(tǒng)測試所需的測試工具包括電腦、萬用表、綜測儀。其中電腦用來為產(chǎn)品燒制相關(guān)軟件版本,萬用表用來測量產(chǎn)品的電流值,綜測儀用來和設(shè)備建立連接,模擬不同制式下的網(wǎng)絡(luò)信號(hào),從而使設(shè)備模擬正常使用的狀態(tài)。表1是系統(tǒng)在不同工作狀態(tài)下的電流值。設(shè)備待機(jī)電流在一定程度上決定了設(shè)備的續(xù)航時(shí)間,從而反映出系統(tǒng)電源管理性能的好壞。

表1 系統(tǒng)工作電流及待機(jī)電流值
設(shè)備的待機(jī)時(shí)間取決于電池的容量及消耗電流的大小。待機(jī)時(shí)間的算法為:待機(jī)時(shí)間=手機(jī)電池容量/待機(jī)電流。從表1可以看出設(shè)備的工作電流在900mA左右,而待機(jī)電流在4mA左右,因此設(shè)備的待機(jī)時(shí)間較長。
從硬件及軟件兩個(gè)方面設(shè)計(jì)了便攜設(shè)備的電源管理系統(tǒng),系統(tǒng)軟件及硬件共同配合,完成了整個(gè)設(shè)備的電源管理任務(wù),通過測試表明該設(shè)計(jì)降低了系統(tǒng)功耗,延長了設(shè)備待機(jī)時(shí)間。
[1] 張種健,謝淑翠.嵌入式Internet系統(tǒng)的可靠性評(píng)估方案[J].西安郵電學(xué)院學(xué)報(bào),2012,17(5):57-60.
[2] Qing Li.嵌入式系統(tǒng)的實(shí)時(shí)概念[M]. 王安生,譯.北京:北京航空航天大學(xué)出版社,2004:2-4.
[3] 林春成.便攜電子設(shè)備的電源分布及電源管理設(shè)計(jì)[J].機(jī)電工程技術(shù),2009, 37(12): 74-76.
[4] 王燕,徐晶.基于Qt/Embedded的電源管理技術(shù)的實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2006,42(24):187-188.
[5] 陽富民,梁晶,張杰,等.嵌入式Linux電源管理技術(shù)的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與科學(xué),2005, 26(12):91-93
[6] 吳快快,都思丹.基于Linux的便攜嵌入式設(shè)備電源管理解決方案[J].微處理機(jī),2006,26(5):66-68.
[7] Maxim.2A 1-Cell li+DC-DC Chargers for USB and Adapter Power[EB/OL]. (2012-05-03)[2013-12-03].http://www.docin.com/p-394458127.html
[8] 張國慶,霍國義.有限狀態(tài)機(jī)設(shè)計(jì)與實(shí)現(xiàn)方法[J].電腦編程技巧與維護(hù),2001(12): 42-44.
[9] 劉鐵,劉濤,張新軍,等.基于有限狀態(tài)機(jī)的呼叫中心軟件設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(jī),2006,23(2):83-85.
[10] 澤雷爾,艾克武,張建波,等.嵌入式系統(tǒng)的C程序設(shè)計(jì)[M].北京:機(jī)械工業(yè)出版社,2002:51-55.
[責(zé)任編輯:祝劍]
Design of portable power management system
YIN Yafang, HUA Rui
(School of Electronic Engineering, Xi’an University of Posts and Telecommunications, Xi’an 710121, China)
Based on power management IC PM8028, a portable power management system is proposed. The charging and power supply circuit is designed. System state of portable device and software of power management system are divided. System states can switch automatically between each other and the modulation of the power strategy can be achieved through software programming. The system power consumption is reduced. Test results show that the system standby current is small and therefore the standby time of portable device can be extended.
portable device, PM8028, power management
10.13682/j.issn.2095-6533.2014.03.017
2013-12-14
陰亞芳(1966-),女,教授,從事數(shù)字信號(hào)處理及光通信技術(shù)研究。E-mail: yinyf@xupt.edu.cn 花蕊(1988-),女,碩士研究生,研究方向?yàn)橥ㄐ烹娐放c系統(tǒng)。E-mail:hua88329@gmail.com
TP315
A
2095-6533(2014)03-0084-07