黃 楚,張艷杰
(天津理工大學中環(huán)信息學院,天津 300380)
鎖具是指能起封閉作用的器具,主要包括鎖、鑰匙及其附件。以往的傳統(tǒng)鎖具通常為機械鎖,需要由專門對應的機械鑰匙開啟,若鑰匙遺失或忘記攜帶將為開鎖帶來極大不便。隨著電子技術(shù)的飛速發(fā)展,人們逐漸開始青睞指紋鎖,其可采用指紋、密碼等方式開啟,無需隨身攜帶機械鑰匙,開鎖方式相對便捷。
由于每個人的指紋在其胎兒時期就已經(jīng)成形,且在個體的成長中不會因為外界因素而發(fā)生變化,再加上指紋具有唯一性,因此這些特性使指紋成為識別身份的最重要證據(jù)。單片機技術(shù)的進步與光學掃描技術(shù)的革新使生物識別成為可能,而相對于其他識別方式,指紋識別這種生物識別方式較為成熟且成本較低,更加適合于大范圍的使用,并且現(xiàn)有的成熟的算法可為指紋識別提供支撐。
常規(guī)的指紋鎖一般是由堿性電池供電,隨著光伏技術(shù)的不斷發(fā)展,光伏組件的光電轉(zhuǎn)換效率不斷提高,作為一種清潔能源的利用方式,采用光伏發(fā)電對設備進行供電既環(huán)保又便捷,只要有光照的地方就可以進行供電。基于此,本文設計了一款基于光伏發(fā)電供電且具有指紋識別功能的指紋鎖,并對其可行性與穩(wěn)定性進行了論證。
本文設計的指紋鎖主要以光伏發(fā)電作為供電方式,將光伏組件在光照下通過光電轉(zhuǎn)換得到的電能存儲在鋰電池中,可以長時間為指紋鎖供電。該指紋鎖以單片機 STC89C52 作為控制端芯片,單片機的程序由Keil 軟件進行編程,并通過STC_ISP 軟件燒錄到STC89C52 中,從而實現(xiàn)整個指紋鎖的功能。采用串口通信的方式使單片機與指紋識別模塊進行實時的數(shù)據(jù)交換,使用比獨立鍵盤更實用的矩陣鍵盤作為密碼輸入的載體;輔助硬件中有按鍵可以實現(xiàn)準確發(fā)送指紋錄入信號及識別信號;使用繼電器及小燈泡來提示指令是否已經(jīng)完成;采用LCD12864液晶顯示屏作為交互界面。本設計可以完成指紋的錄入,并且可以在已錄入的基礎上準確識別出相應的指紋ID。本文設計的指紋鎖適用于可移動的應用場景,比如旅行箱、自行車鎖等。
該指紋鎖包含一般模式與高級模式2 種不同操作權(quán)限的模式。一般模式的操作權(quán)限為:用戶只能夠使用指紋進行解鎖,指紋是否識別成功將在液晶顯示屏上進行反饋;識別成功后將通過繼電器進行解鎖,識別失敗則不進行解鎖。高級模式的操作權(quán)限為:按下矩陣鍵盤中高級模式選擇鍵(按鍵A),進入高級模式后輸入高級權(quán)限的6 位數(shù)密碼,確認使用者權(quán)限在高級模式下后,用戶可以使用指紋錄入、指紋刪除、應急開鎖和修改密碼這些功能。
本文設計的指紋鎖由指紋識別模塊、液晶顯示屏模塊、矩陣鍵盤模塊、帶電可擦可編程只讀存儲器(EEPROM),以及供電模塊組成。
該指紋鎖的指紋識別模塊的型號為ZFM60,指紋識別模塊的電路圖如圖1 所示。
圖1 指紋識別模塊的電路圖Fig.1 Circuit diagram of fingerprint recognition module
指紋識別模塊外部使用CMOS 芯片對指紋進行采樣;內(nèi)部采用型號為AS606 的DSP 芯片對采集到的指紋圖像進行處理,并對庫內(nèi)指紋進行比對。當錄入指紋時,DSP 芯片將采樣得到的指紋圖像處理后保存到FLASH 芯片中。識別指紋時,DSP 芯片在采集到指紋信息后將其與庫內(nèi)已保存的指紋信息進行比對,若找到相應指紋則進入指紋編號程序;若未找到指紋則“返回-1”。
本文設計的指紋鎖的液晶顯示屏型號為LCD12864,液晶顯示屏模塊的電路圖如圖2 所示。
該液晶顯示屏能顯示點陣漢字與圖形,相比于其他同類型的液晶顯示屏模塊,本文設計的指紋鎖的液晶顯示屏模塊的顯示屏方案具有硬件電路結(jié)構(gòu)簡單、顯示程序編寫容易等優(yōu)勢。該液晶顯示屏模塊的任務是完成指紋鎖與用戶的信息交互工作。
圖2 液晶顯示屏模塊的電路圖Fig.2 Circuit diagram of liquid crystal display module
鍵盤交互設計一般采用獨立鍵盤或矩陣鍵盤。雖然在使用上獨立鍵盤比矩陣鍵盤更加靈活,程序設計也更加簡單,但是考慮到本指紋鎖所使用的按鍵數(shù)量,同時考慮到鍵盤模塊的可靠性,最終決定采用矩陣鍵盤。矩陣鍵盤模塊的電路圖如圖3 所示。
本矩陣鍵盤模塊采用逐行掃描法實現(xiàn)按鍵的檢測功能。
圖3 矩陣鍵盤模塊的電路圖Fig.3 Circuit diagram of matrix keyboard module
由于指紋識別模塊無法保存過多的指紋模板且在斷電后會清除已經(jīng)保存的指紋模板,所以需要外接一枚只讀存儲器(ROM),以實現(xiàn)存儲更多指紋模板及斷電后的保存功能。綜合容量需求與價格等因素,本文設計的指紋鎖使用雙列直插(DIP)封裝的型號為CAT24WC32 的EEPROM。使用IIC 總線與單片機連接,進行數(shù)據(jù)讀寫。
隨著光伏組件技術(shù)的不斷提高,以及光伏組件原材料成本的不斷降低,綜合光伏組件成本及其光電轉(zhuǎn)換效率后,本指紋鎖選用單晶硅光伏組件作為提供電能的發(fā)電裝置,其平均充電功率為0.621 W。供電模塊中的儲能電池選擇5000 mAh 的鋰聚合物電芯。光伏組件與鋰電池的降壓穩(wěn)壓電路圖如圖4 所示。
圖4 降壓穩(wěn)壓電路圖Fig.4 Circuit diagram of step-down voltage stabilizing
在光線照射下,光伏組件中的太陽電池由于電子遷躍使自由電子在p-n 結(jié)兩端聚集,從而形成電勢差,經(jīng)由DC-DC 降壓穩(wěn)壓電路與光伏組件正、負極連接,從而輸出電能到鋰電池,實現(xiàn)光伏電力的存儲;然后經(jīng)過電芯自帶的輸出控制電路為指紋鎖供電。經(jīng)過對指紋鎖各模塊的多次改進,指紋鎖的功耗在350~500 mW 之間。
本文設計的指紋鎖的主程序流程圖如圖5所示。
矩陣鍵盤模塊的工作流程圖如圖6 所示。
指紋鎖與使用者之間交互時將進入圖6 所示的流程,單片機在讀取到按鍵按下的信息后,通過調(diào)用鍵盤識別子函數(shù),對所讀取信息進行編碼。
圖5 本文設計的指紋鎖的主程序流程圖Fig.5 Main program flow diagram of fingerprint lock designed by this article
圖6 矩陣鍵盤模塊的工作流程圖Fig.6 Workflow diagram of matrix keyboard module
液晶顯示屏模塊的工作流程圖如圖7 所示。
圖7 液晶顯示屏模塊的工作流程圖Fig.7 Workflow diagram of liquid crystal display module
液晶顯示屏模塊需要寫指令與寫數(shù)據(jù),這部分代碼在該項目中封裝為2 個子函數(shù),在主函數(shù)需要操作液晶顯示屏時調(diào)用2 個子函數(shù),該設計能大幅減少代碼數(shù)量,也能減少錯誤的出現(xiàn)。
指紋識別模塊與單片機間的串口數(shù)據(jù)的接收與發(fā)送均通過串口通信進行。圖8、圖9 分別為串口數(shù)據(jù)的發(fā)送、接收流程圖。其中,TI、RI 分別為發(fā)送、接收中斷標志位;SUBF 為數(shù)據(jù)緩沖寄存器。
圖8 串口數(shù)據(jù)的發(fā)送流程圖Fig.8 Flow chart of serial data sending
圖9 串口數(shù)據(jù)的接收流程圖Fig.9 Flow chart of serial data receiving
單片機與指紋識別模塊間的串口通信是本指紋鎖最為重要的部分之一,綜合考慮使用環(huán)境、通信距離及傳輸數(shù)據(jù)量,本指紋鎖采用通用異步收發(fā)傳輸器(UART)作為通信接口,采用半雙工異步通信時的默認波特率57600 bps。
在使用指紋識別功能時涉及到的注冊與搜索選項分別采用自動注冊與自動搜索的方式。
基于光伏發(fā)電供電的指紋鎖已制作出樣品,并成功應用于旅行箱上,樣品如圖10 所示。對整個樣品進行了功能測試,測試的結(jié)果與預期設計相符合。整個樣品能夠穩(wěn)定運行,指紋錄入、指紋刪除等功能均可正常發(fā)揮作用,且該指紋鎖可根據(jù)操作進行信息提示,即使斷電后密碼也能正常保存,2 種模式均能正常開鎖。當打開液晶顯示屏界面后,若長時間未進行操作,則指紋識別模塊會進入休眠模式。
圖10 應用于旅行箱的指紋鎖樣品Fig.10 Sample of fingerprint lock applied to suitcase
對本文設計的指紋鎖樣品進行20 次的功耗測試。功耗測試中,將光伏電力儲存在容量為5V/5000mAh 的鋰電池中,并以此進行供電。指紋鎖中指紋識別模塊、單片機、液晶顯示屏模塊、光伏組件的功耗情況如表1 所示。測試結(jié)果表明,該指紋鎖主要模塊的功耗較低,能夠使指紋鎖長時間工作。
表1 指紋鎖各模塊的功耗情況Table 1 Power consumption of each module of fingerprint lock
在室內(nèi)環(huán)境下,各模塊均正常工作時,該指紋鎖可持續(xù)工作63 h;休眠模式(僅單片機工作,指紋識別模塊及液晶顯示屏模塊不工作)下,指紋鎖預計可持續(xù)工作30 天(測量休眠模式時的功耗后得出)。
本文介紹了一種基于光伏發(fā)電供電的指紋鎖。將光伏組件所發(fā)電能儲存在鋰電池中作為供電電源,可以長時間對指紋鎖進行供電;使用的單片機型號為STC89C52;依靠指紋識別模塊具有的功能實現(xiàn)了指紋數(shù)字化與所儲存的指紋進行匹配;顯示部分使用LCD12864 液晶顯示屏搭配中文字庫來完成;輔助硬件中有按鍵可實現(xiàn)準確發(fā)送指紋錄入信號及識別信號;繼電器及指示燈用來提示是否已完成指令。通過制作該指紋鎖樣品并利用仿真使用環(huán)境對其可行性與穩(wěn)定性進行了論證,結(jié)果表明,該指紋鎖的穩(wěn)定性良好,能夠減少對供電設備的需求。