王煉紅 陳穎
摘 要:為解決現(xiàn)今指紋鎖的高性能和低功耗之間的矛盾,提出了一種基于雙核架構(gòu)的嵌入式系統(tǒng),采用TI公司AM437x高性能處理器移植識(shí)別算法;具有超低功耗的AVR單片機(jī)MEGA8微控制器作為主控芯片,以控制非接觸啟動(dòng)、紅外燈、電機(jī)驅(qū)動(dòng)等外圍設(shè)備,保證系統(tǒng)具有較低的待機(jī)功耗.通過(guò)設(shè)置主控芯片的超低功耗睡眠模式,使得系統(tǒng)大部分時(shí)間處于低功耗狀態(tài),利用非接觸式啟動(dòng)模塊控制高耗能識(shí)別模塊僅在需要的時(shí)候上電啟動(dòng),從而大大降低系統(tǒng)的功耗.綜合測(cè)試表明,系統(tǒng)休眠時(shí)MCU靜態(tài)工作電流低至1.51 μA,喚醒時(shí)電流優(yōu)化至3.3 mA,8節(jié)干電池使用壽命為638 d.相比現(xiàn)有設(shè)計(jì)方法,兼具更低的功耗和更高的性能.
關(guān)鍵詞:超低功耗;靜態(tài)電流;電源管理;智能鎖
中圖分類號(hào):TP368.2 文獻(xiàn)標(biāo)志碼:A
Abstract:This paper presented an embedded system based on dualcore architecture to solve the contradiction between high performance and low power consumption of today fingerprint lock. TI's AM437x highperformance processor was used to transplant identification algorithm, with AVR microcontroller MEGA8 microcontroller of ultralow power as a master chip to control noncontact start, infrared light, motor drive and other peripherals to ensure that the system has a lower standby power consumption. By setting the ultralow power sleep mode of the master chip, the system is in a low power state for most of the time, and the noncontact startup module controls the high power consumption identification module to power up only when it is needed, thus greatly reducing the power consumption. Comprehensive test shows that the static operating current is as low as 1.51 μA when the system is in sleep mode, while the wakeup current is optimized to 3.3 mA. The maximum system life of six dry cells is 638 days. Compared with the existing design methods, the system has both lower power consumption and higher performance.
Key words:ultralow power consumption;static current;power management;intelligent lock
近年來(lái),隨著生物識(shí)別技術(shù)和電腦科技的迅速發(fā)展,指紋識(shí)別技術(shù)已廣泛地進(jìn)入大眾的視野.隨著指紋技術(shù)和半導(dǎo)體技術(shù)的發(fā)展,指紋鎖已被廣泛應(yīng)用到軍事、保密機(jī)構(gòu)等[1-3].
目前指紋識(shí)別系統(tǒng)主要采用具有高速數(shù)據(jù)運(yùn)算能力的DSP或者基于ARM核的處理器芯片或者高性能現(xiàn)場(chǎng)可編程門陣列FPGA來(lái)完成算法處理和識(shí)別.Wu等人[4]應(yīng)用基于ARM內(nèi)核的STM32F103ZE微處理器完成指紋處理以及外設(shè)模塊的控制,待機(jī)功耗為0.21 μA,但識(shí)別速度不高.Mondol等人[5]使用高性能FPGA芯片集成優(yōu)化后的算法,獲得了更高的識(shí)別率,但功耗比較高.楊偉鈞[6]采用TI公司的TMS320C5509A作為處理器,實(shí)現(xiàn)指紋算法的移植,系統(tǒng)能穩(wěn)定運(yùn)行一個(gè)月,但功耗相比文獻(xiàn)[4]中方法要高.以上這些設(shè)計(jì)方法都只著重于低功耗或高性能單方面的改善,高性能芯片的應(yīng)用不可避免地會(huì)限制系統(tǒng)的整體功耗,從而影響系統(tǒng)在采用電池供電的便攜式設(shè)備中的應(yīng)用.
本文基于現(xiàn)有指紋鎖的研究方法和發(fā)展趨勢(shì),為解決指紋鎖高性能和低功耗之間的矛盾,設(shè)計(jì)了一種雙控智能電子鎖嵌入式系統(tǒng)架構(gòu),將識(shí)別功能和外設(shè)控制功能獨(dú)立開(kāi),主要從系統(tǒng)架構(gòu)、MCU電源管理、非接觸式啟動(dòng)、嵌入式軟件設(shè)計(jì)以及MCU低功耗優(yōu)化等多方面進(jìn)行描述.最后測(cè)試證明,系統(tǒng)在保證高性能的同時(shí)降低了功耗,提高了整個(gè)產(chǎn)品的使用壽命.
1 系統(tǒng)架構(gòu)
本文算法處理芯片選型德州儀器TI公司推出的基于ARM CortexA9內(nèi)核的AM437x高性能處理器,其增強(qiáng)了3D圖形加速功能,可實(shí)現(xiàn)豐富的圖形用戶界面[7];外設(shè)主控芯片選用Atmel公司的AVR RISC結(jié)構(gòu)的低功耗8位CMOS微控制器ATmega8[8].內(nèi)置5種睡眠模式,輕松應(yīng)對(duì)各種系統(tǒng)低功耗要求.
系統(tǒng)結(jié)構(gòu)框架如圖1所示.系統(tǒng)組成包括算法處理模塊和外設(shè)控制模塊.微控制器模塊ATmega8是整個(gè)控制系統(tǒng)的核心,主要用于實(shí)現(xiàn)低功耗控制、數(shù)據(jù)處理與存儲(chǔ)、電源管理、串口通信等功能.算法處理模塊則以AM437x為中心,實(shí)現(xiàn)識(shí)別算法的移植,完成后續(xù)的圖片采集、預(yù)處理、特征提取、識(shí)別匹配等生物識(shí)別的全部功能,并將識(shí)別成功信號(hào)傳遞給MCU.
2 低功耗設(shè)計(jì)
2.1 電源管理設(shè)計(jì)
本系統(tǒng)采用獨(dú)立降壓方式[9],針對(duì)不同的電壓需求,設(shè)計(jì)了合理的電源拓?fù)浣Y(jié)構(gòu),結(jié)合開(kāi)關(guān)電源,有效地降低系統(tǒng)功耗.圖2主路電源經(jīng)過(guò)轉(zhuǎn)換分別得到3.3 V、5.0 V、3.15 V和1.6 V的電源以供給不同模塊.
MCU可通過(guò)其使能端無(wú)效方式來(lái)中斷EEPROM、模擬比較器、ADC、看門狗定時(shí)器等的工作,以此在最大程度上減少整個(gè)系統(tǒng)的功耗.
2.2 低功耗軟件設(shè)計(jì)
智能鎖大部分時(shí)間都處于關(guān)閉狀態(tài),睡眠期間的功耗占整體能量消耗的比例很大,因此降低待機(jī)功耗延長(zhǎng)電池壽命是關(guān)鍵問(wèn)題.為了最大限度地降低功耗,關(guān)鍵在于:心跳間隔ΔT無(wú)限延長(zhǎng),心跳時(shí)間Δt無(wú)限縮短,睡眠電流Is無(wú)限降低.
圖3為MCU和MAX44000工作電流曲線圖.圖3中,Iw1、Iw2分別為MCU和非接觸式啟動(dòng)模塊的喚醒電流;Is1、Is2為兩者的睡眠電流;ΔT為系統(tǒng)睡眠周期;Δt1為MAX44000喚醒時(shí)間.若非接觸式模塊一直處于待機(jī)狀態(tài),功耗將會(huì)很大,優(yōu)化后,非接觸式啟動(dòng)只在MCU喚醒后開(kāi)啟短暫的一段時(shí)間,既能激活電路也能大大降低系統(tǒng)的功耗.關(guān)鍵參數(shù)設(shè)置如下:
1)MAX44000喚醒時(shí)間Δt1.MAX44000接近檢測(cè)的數(shù)據(jù)讀取時(shí)間間隔可以設(shè)置為1.56~100 ms.經(jīng)測(cè)試,在有效檢測(cè)范圍內(nèi),手勢(shì)動(dòng)作在2 ms內(nèi)就可以被檢測(cè)到,因此讓MAX44000在MCU喚醒時(shí)開(kāi)啟2 ms即可,其他時(shí)間讓其處于關(guān)閉狀態(tài),即MAX44000的喚醒時(shí)間Δt1設(shè)置為2 ms.
2)MCU喚醒時(shí)間Δt.MCU喚醒時(shí)間包括:?jiǎn)?dòng)時(shí)間6個(gè)時(shí)鐘周期;啟動(dòng)后MCU暫停4個(gè)時(shí)鐘周期;無(wú)外部中斷后的2個(gè)外部時(shí)鐘周期和Δt1.因此,實(shí)際喚醒時(shí)間為63.5 μs+Δt1.
3) MCU睡眠時(shí)間ΔT.本系統(tǒng)選擇省電睡眠模式,TIMER2比較中斷的方式喚醒MCU,配置內(nèi)部時(shí)鐘為4 MHz、外部晶體振蕩器選擇32.768 kHz的有源晶振.根據(jù)計(jì)算公式(1)來(lái)設(shè)置睡眠時(shí)間,在比較中斷例程中以進(jìn)行相應(yīng)的操作.
式中:ΔT時(shí)間越長(zhǎng)越好,但是系統(tǒng)在1.6 s之內(nèi)必須進(jìn)行喂狗操作,因此本系統(tǒng)配置睡眠時(shí)間為1 s.
2.3 啟動(dòng)電路設(shè)計(jì)
本文選用MAXIM公司的MAX44000芯片[10],寬動(dòng)態(tài)范圍環(huán)境光傳感器和紅外接近檢測(cè)傳感器集為一體.處理后的數(shù)據(jù)儲(chǔ)存在輸出寄存器,可通過(guò)I2C接口讀取,可編程中斷減輕器件數(shù)據(jù)輪詢的工作負(fù)荷,節(jié)省微控制器資源并減少系統(tǒng)軟件開(kāi)銷,最終降低系統(tǒng)功耗.圖4為MAX44000電路圖.
非接觸喚醒的具體實(shí)施并非只是簡(jiǎn)單地檢測(cè)高于門限的信號(hào),關(guān)鍵應(yīng)該考慮觸發(fā)喚醒條件的信號(hào)電平,需要在系統(tǒng)響應(yīng)靈敏度與誤報(bào)概率之間進(jìn)行權(quán)衡[11].門限過(guò)低,會(huì)增大誤報(bào)的概率;反之,過(guò)高的檢測(cè)門限能夠把誤報(bào)概率降至幾乎為零,但卻只能檢測(cè)到非常接近的目標(biāo).
圖5為驅(qū)動(dòng)電流在0~110 mA時(shí)檢測(cè)距離和動(dòng)態(tài)工作電流的變化曲線,根據(jù)設(shè)置驅(qū)動(dòng)電流值來(lái)設(shè)置合適的門限以保證設(shè)備的低功耗.綜合系統(tǒng)靈敏度和誤報(bào)率,本系統(tǒng)選擇最低門限為8.5 cm,即設(shè)置驅(qū)動(dòng)電流為30 mA,此時(shí)MAX44000靜態(tài)電流為1.22 mA.
2.4 軟件設(shè)計(jì)流程圖
單片機(jī)軟件流程如圖6所示.ATmega8單片機(jī)在開(kāi)始時(shí)會(huì)進(jìn)行一系列的初始化,之后關(guān)閉非接觸式模塊進(jìn)入省電模式,節(jié)省電量.定時(shí)器在比較中斷后將會(huì)跳出省電模式,判斷是否有外部中斷,若有則開(kāi)始串口接收數(shù)據(jù),當(dāng)數(shù)據(jù)接受完之后,單片機(jī)進(jìn)行相應(yīng)的操作,完成工作后單片機(jī)會(huì)重新進(jìn)入到睡眠模式.
4 實(shí)驗(yàn)結(jié)果
功耗測(cè)試在樣機(jī)上進(jìn)行.本文測(cè)試的睡眠、喚醒時(shí)間間隔太短,精度為0.1 ms,電流表的時(shí)間精度不夠描述如此精細(xì)的間隔.于是本文提出綜合利用電流表和示波器的測(cè)試方法,利用示波器的時(shí)間精度高讀出睡眠、喚醒時(shí)間間隔,利用電流表的精準(zhǔn)測(cè)量測(cè)出準(zhǔn)確的電流值.最終得到直觀、準(zhǔn)確的測(cè)試結(jié)果.
4.1 示波器測(cè)試結(jié)果
本文使用的示波器為泰克MDO3012示波器,其提供內(nèi)置的頻譜分析儀、任意函數(shù)發(fā)生器、邏輯分析儀、協(xié)議分析儀、數(shù)字電壓表和頻率計(jì)數(shù)器[15].
圖7中FB37是MCU供電電路上串聯(lián)的一顆磁珠,將其替換成電阻,再將示波器探頭并聯(lián)至其兩側(cè),即可得到如圖8所示的完整信號(hào)輸出,以此得出精確的時(shí)間間隔.
從表1可知,睡眠時(shí)間的理論值與實(shí)際值相近,喚醒時(shí)間的理論值與實(shí)際值相差較大.由2.2節(jié)2)得知,若不加MAX44000的2 ms喚醒時(shí)間,MCU系統(tǒng)喚醒時(shí)間Δt應(yīng)為0.064 ms,但圖8示波器顯示系統(tǒng)實(shí)際喚醒時(shí)間為7.8 ms,因此其中有部分時(shí)間消耗在MAX44000啟動(dòng)上.所以MCU實(shí)際喚醒時(shí)間應(yīng)為Δt=2 ms+7.8 ms=9.8 ms.
4.2 萬(wàn)用表測(cè)試結(jié)果
電池:南孚AA1.5V無(wú)汞堿性電池;型號(hào):LR6;數(shù)量:8(4節(jié)串聯(lián)形成一組,兩組并聯(lián)).萬(wàn)用表為泰克儀器的DMM4040 數(shù)字雙顯數(shù)字多用表.采集軟件:泰克版SignalExpressTM.
將圖7中FB37磁珠去掉,再將萬(wàn)用表調(diào)至電流檔串聯(lián)進(jìn)主電路中,此時(shí)萬(wàn)用表測(cè)出的即為需要測(cè)試的MCU靜態(tài)電流.
本文根據(jù)系統(tǒng)要求進(jìn)行優(yōu)化:更省電的睡眠模式;減小濾波電容值;睡眠模式將I2C引腳設(shè)置為輸出,避免上拉電阻引起的電流泄露;將每個(gè)MCU I/O口的引腳設(shè)置為沒(méi)有拉電流也沒(méi)有灌電流泄露的狀態(tài)等等.
圖9為優(yōu)化前后的喚醒電流曲線對(duì)比圖.測(cè)量喚醒電流時(shí),睡眠時(shí)間設(shè)為8 ms,遠(yuǎn)遠(yuǎn)小于喚醒時(shí)間1 s.圖10為優(yōu)化前后的MCU睡眠電流曲線對(duì)比圖,測(cè)量睡眠電流時(shí),睡眠時(shí)間設(shè)為1 s,遠(yuǎn)遠(yuǎn)大于喚醒時(shí)間7.8 ms.
表2為MCU靜態(tài)工作電流優(yōu)化前后對(duì)比結(jié)果;表3、表4和表5分別為靜態(tài)功耗、動(dòng)態(tài)功耗和系統(tǒng)總功耗統(tǒng)計(jì)表.
在軟件設(shè)計(jì)過(guò)程中,休眠采用省電模式.1 s內(nèi)醒來(lái)的次數(shù)為1次,每次9.8 ms.每天開(kāi)鎖操作進(jìn)行6次,單次開(kāi)鎖時(shí)間6 s,因此,一天喚醒時(shí)間為36 s,電機(jī)操作時(shí)間1 s,其余時(shí)間處于睡眠狀態(tài).
本文所用電池為8節(jié)南孚電池,假設(shè)8節(jié)電池的功耗為5 000 mAH,電池電壓為3.7 V,電池效率系數(shù)為80%,則可以換算得到電池總?cè)萘繛?3 280 000 mW·s.將表5中實(shí)際能量相加即得到本文每天消耗的總功耗,如表6所示為83 549 mW·s,根據(jù)公式(5)計(jì)算得出本系統(tǒng)工作時(shí)間可達(dá)638 d.在電壓、時(shí)間等參數(shù)一致,電流參數(shù)不同的條件下,由文獻(xiàn)[9]中結(jié)果計(jì)算得出的系統(tǒng)工作時(shí)間為128 d,本文比文獻(xiàn)[9]多出了近5倍.
5 結(jié) 論
本系統(tǒng)軟件設(shè)計(jì)采用電源管理和心跳設(shè)計(jì)的方式,提出非觸摸喚醒的方式實(shí)現(xiàn)人機(jī)交互,使得用戶擁有更方便的操作,結(jié)合電流表與示波器的方式測(cè)試工作電流使得功耗檢測(cè)更加直觀、準(zhǔn)確.
從實(shí)驗(yàn)結(jié)果可以看出,雙控制核心的系統(tǒng)架構(gòu)極大降低了系統(tǒng)在待機(jī)狀態(tài)下的電流消耗,同時(shí)在識(shí)別處理中,減少了AM437x對(duì)外設(shè)的控制,而將控制功能轉(zhuǎn)移到功耗更低的ATmega8中,使得工作電流消耗進(jìn)一步降低,從而延長(zhǎng)了電池供電識(shí)別系統(tǒng)的使用時(shí)間.
本系統(tǒng)擴(kuò)展性強(qiáng),能應(yīng)用于各種實(shí)時(shí)性要求較低的環(huán)境,如智能鎖識(shí)別系統(tǒng)、便攜設(shè)備、室外智能省電設(shè)備等.在滿足系統(tǒng)實(shí)時(shí)性的同時(shí)又較之其他系統(tǒng)功耗要低很多,為普通家庭的安全防護(hù)控制提供了有效途徑,同時(shí)為智能終端產(chǎn)品超低功耗研究與設(shè)計(jì)提供了參考價(jià)值.
參考文獻(xiàn)
[1] 李列文,桂衛(wèi)華,胡小龍.一種基于FPGA的低功耗、容錯(cuò)狀態(tài)機(jī)設(shè)計(jì)方法[J].湖南大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,37(6):77-82.
LI L W,GUI W H,HU X L.A FPGAbased design method of low power faulttolerance finite state machine[J].Journal of Hunan University(Natural Sciences),2010,37(6):77-82.(In Chinese)
[2] 姜小波,葉德盛.一種新型低功耗異步比較器的設(shè)計(jì)方法[J].電子學(xué)報(bào),2012,40(8):1650-1654.
JIANG X B,YE D S.A new design methodology of low power asynchronous comparator[J].Acta Electronica Sinica,2012,40(8):1650-1654.(In Chinese)
[3] 朱廣.低功耗物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)計(jì)與實(shí)現(xiàn)[J].國(guó)外電子測(cè)量技術(shù),2016,35(6):31-36.
ZHU G.Design and implementation of lowpower iot gateway[J].Foreign Electronic Measurement Technology,2016,35(6):31-36.(In Chinese)
[4] WU X C,GAO S B,HUANG F.Design of lowpower micro fingerprint lock based on STM32F103ZE[C]//International Conference on Electric Information and Control Engineering.Yichang: IEEE,2011:1299-1301.
[5] MONDOL R K,KHAN M I,HYE A K M,et al.Hardware architecture design of face recognition system based on FPGA[C]//International Conference on Innovations in Information,Embedded and Communication Systems.Tamil Nadu,India:IEEE,2015:1-5.
[6] 楊偉鈞.一種高性能指紋鎖硬件平臺(tái)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2010,18(4):131-133.
YANG W J.Design of hardware platform for highperformance fingerprint locks[J].Electronic Design Engineering,2010, 18(4):131-133.(In Chinese)
[7] 楊志興.基于ARM與WinCE的微波變頻器嵌入式系統(tǒng)設(shè)計(jì)[J].儀器儀表學(xué)報(bào),2015,36(S1):194-198.
YANG Z X.The embedded system design of microwave converter based on ARM and WinCE[J].Chinese Journal of Scientific Instrument,2015,36(S1):194-198.(In Chinese)
[8] TAN C L,LEI H D.The design of the combustible gas detector based on NAP100AC[C]//Proceeding of the 35th Chinese Control Conference. Chengdu,China:IEEE,2016:5942-5945.
[9] 楊爭(zhēng)輝.基于AS602的智能指紋鎖系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子器件,2016,39(2):495-500.
YANG Z H.The design and implementation of a fingerprint lock based on AS602[J].Chinese Journal of Electron Devices,2016, 39(2):495-500.(In Chinese)
[10]劉志英.嵌入式設(shè)備電源管理系統(tǒng)設(shè)計(jì)[J].電子測(cè)量技術(shù),2016,39(5):105-109.
LIU Z Y.Power management system design of embedded devices[J].Electronic Measurement Technology,2016, 39(5):105-109.(In Chinese)
[11]許海洋,莊毅,顧晶晶.一種面向嵌入式軟件體系結(jié)構(gòu)的形式化建模方法[J].電子學(xué)報(bào),2014,42(8):1515-1521.
XU H Y,ZHUANG Y,GU J J.A formal modeling method for embedded software architecture[J].Acta Electronica Sinica,2014,42(8):1515-1521.(In Chinese)
[12]張金剛,林喜榮,戴曉清,等.指紋識(shí)別系統(tǒng)的一種低功耗實(shí)現(xiàn)方法與應(yīng)用[J].電視技術(shù),2011,35(17):118-121,128.
ZHANG J G,LIN X R,DAI X Q,et al.Application and realization method of power consumption reduction in fingerprint identification system[J].Video Engineering,2011,35(17):118-121,128.(In Chinese)
[13]SAMANTA N,KUNDU O,CHAUDHURI C R.A simple low power electronic readout for rapid bacteria detection with impedance biosensor[J].IEEE Sensors Journal,2013,13(12):4716-4724.
[14]YAN W,WAN Z,HAN P,et al.Towards ultra lowpower MCU implementation through physical design based on improved multibit SRPG[C]//IEEE International Conference on Cyber Technology in Automation,Control and Intelligent Systems.IEEE,2015:1740-1745.
[15]LUEDERS M,EVERSMANN B,GERBER J,et al.Architectural and circuit design techniques for power management of ultralowpower MCU systems[J].IEEE Transactions on Very Large Scale Integration Systems,2014,22(11):2287-2296.