黃慧靈,甘雙紅,李國治,唐詩程
(廣西民族師范學院數理與電子工程學院,廣西 崇左 532200)
關鍵字:指紋密碼鎖、單片機、指紋識別
隨著現代科技的不斷進步和信息時代的不斷發展,人們的生活水平和物質需求都有較大的提高,同時市場的五金鎖具行業也發展迅速。近年來,因為家居智能的普及,傳統的機械鎖逐漸被新型智能鎖所取代,機械鎖鎖體材料差,開啟門鎖的方式單一,安全性差,鑰匙非常容易丟失,隨身攜帶會給我們帶來諸多不便,而指紋密碼鎖主要利用單片機控制相應的傳統機械部分來實現開鎖,若輸入的指紋密碼錯誤次數超過設計要求時,系統就會自動響起警報,解決了傳統鎖具的被動防盜的缺點,增加了其使用的安全性和操作的便捷性。若要辨別一個人身份真偽性,最常用的方法就是利用指紋識別,這種技術是將對象的指紋與數據庫已有的指紋逐一比較實現的。歐美國家對這種新型鎖的使用率很高,該產品在出口市場上也一路走俏。如今,指紋識別作為熱門的人體生物特征學和身份識別應用技術之一,其擁有市場的巨大需求,并且對國際、國內安防產業產生極大影響。指紋識別技術也被應用于本設計的指紋密碼鎖中。
系統的主控制芯片是以STC89C52單片機來設計的,通過指紋和密碼兩種方式進行開鎖。初始化時,指紋識別電路和存儲電路對指紋進行采集、處理、提取、有效存儲等步驟,最后才能將指紋成功錄入。在電源上電后,輸入的指紋會經過指紋識別模塊對該指紋進行比較,若與預先保存好的指紋數據相匹配,則繼電器控制開關開鎖,若指紋不匹配,系統就會自動報警。同樣地,也能利用4×4矩陣鍵盤設置密碼來開鎖,當指紋或者密碼開鎖成功時,液晶顯示屏上會出現“開鎖成功”的提醒字樣。此外,系統也能對指紋和密碼進行修改和清除,還能錄入多個人的指紋。最后,本系統還由電源電路、報警電路、顯示電路等組成[1]。
1.1.1 單片機選擇介紹
本設計選擇STC89C52是宏晶科技生產的一種高性能、低功耗、超強抗干擾、多功能等優點的CMOS8微控制器,且具有8K擦除閃存的單片機[2]。STC89C52的機械周期可以任意選擇,還具有EEPROM功能和看門狗的功能,其指令代碼完全兼容傳統8051。在單芯片上,擁有靈巧的8位CPU和在系統可編程Flash[3]。當CPU停止工作,RAM、串口、中斷會繼續工作,并且有掉電保護功能,即使掉電,RAM內容也會被保存下來。其在系統可編程,不需要專用編程器及專用仿真器,直接通過串口就能下載用戶程序。
1.1.2 指紋識別電路設計
指紋電路模塊是指紋鎖必不可少的部件,用來完成用戶指紋的采集和識別[4]。其識別的方法是利用專門的光電信號轉換設備和圖像處理技術,搜集指紋、處理、存儲數據、對比特征值來完成。該模塊設計選用型號為ZFM608指紋芯片,ZFM608屬于光學式指紋,光學類型的指紋主要模塊是使用反射光線成像確實用戶指紋,該模塊已經包含了算法芯片,其質量穩定、性能優異。指紋識別電路與主控芯片通信是通過使用串口的方式進行數據的接收和信號的輸出。指紋識別電路工作過程是將掃描的指紋進行圖像處理,然后將CMOS采集得到的指紋進行記錄,當系統從掃描模式進入識別模式后,系統就會向CMOS芯片發出指令,讓其采集后的指紋與Flash芯片中相應的指紋數據進行對比處理,驗證是否與數據庫中存儲的指紋相匹配。其電路設計如圖1所示。

圖1 ZFM608 電路圖
1.1.3 鍵盤電路設計
該設計的按鍵電路主要是對指紋密碼進行修改和清除,除此之外還有指紋的采集、存儲,并且完成密碼開鎖等功能。按鍵設計模塊采用矩陣鍵盤進行系統建設,按鍵電路共有16個按鍵,分別有四個字母按鍵、數字按鍵及其兩個特殊符號按鍵。用戶在管理模式下輸入六位密碼,并按按鍵確定,才能將密碼存儲到數據庫中,若用戶忘記密碼,可在管理頁面進行修改,另外,也能用按鍵在管理界面修改和清除指紋。為防止按鍵系統執行過程中干擾信號,通過添加延時的方式來實現按鍵的消抖。其電路設計如圖2所示。

圖2 矩陣鍵盤電路圖
1.1.4 顯示電路設計
本設計采用LCD12864液晶顯示屏,其能顯示中文、數字、圖形[5]。利用這個模塊的靈活的接口方式和簡單、方便的操作指令,能形成全中文人機交互圖形界面,其通訊方式有兩種:串行、并口,此電路使用串口通信模式,并將PSB接低電平。模塊內部接有上電復位電路,可以將7~14引腳的數據I/O口懸空,來減少引腳的使用和減輕單片機的負擔[6]。模塊外部接有一個可調節靈敏電阻,可對液晶顯示屏對比亮度進行調整,背光源正端接5V,負端接一個電阻,為了起到保護電路的作用。其電路設計如圖3所示。

圖3 LCD12864 顯示屏電路圖
1.2.1 指紋識別程序設計
指紋模塊的程序設計是通過單片機與指紋模塊間的串口方式執行數據的發送和接受這一指令來完成該程序的啟動的。指紋識別程序主程序中只對液晶屏進行寫操作,首先串口初始化,然后經過相關程序錄入一個指紋,采集兩次,生成一個指紋模板,獲取圖像并將生成的特征文件保存起來。在指紋識別子程序中,將讀到的指紋進行比較,如果搜索到數據庫中存有的指紋序號,返回指紋序號,并成功搜索指紋序號。在驗證過程中,如果驗證成功則返回1,若不成功,再驗證一次,兩次不成功,則返回失敗。
1.2.2 指紋對比程序設計
指紋對比是將指紋圖像轉換成數字字符串,通過指紋對比程序,實現用戶指紋的對比與匹配。指紋對比的整個過程是通過硬件系統完成指紋的粗對比,然后再根據粗對比結果由程序進行細對比來判斷指紋是否匹配。當用戶輸入指紋時,硬件模塊對指紋進行掃描和讀寫,并將讀寫到的數據傳輸到單片機中,單片機中的指紋對比程序會對指紋進行采集和記錄,將此記錄的指紋和之前存儲的指紋進行數據的比對,如果系統數據庫中已有的數據與該數據匹配成功,則系統啟動開鎖,當該軟件在操作過程中發現指紋信息與數據庫中的信息不一致時,該系統自動進入警報模式。
1.2.3 開鎖程序設計
當開鎖程序設計接收到密碼和指紋的正確信息,輸入開鎖指令后,單片機通過一系列指令動作,然后驅動控制門鎖的開啟,如果輸入密碼錯誤三次后,就執行報警程序。程序流程如圖4所示。

圖4 程序流程圖
指紋密碼鎖作為智能家居的先鋒,憑借著獨特的技術優勢成為市場的新寵,其改變了傳統意義上的機械鎖單一開門的缺點,是具有多種功能、安全性更高的一種科技產品。本設計介紹了該系統利用單片機、指紋識別電路、鍵盤電路模塊、液晶顯示模塊等來實現產品功能的。在研究過程中,發現目前市場上產品技術方面存在的問題:指紋識別度有待提高,核心技術無法獨立,整和技術能力不夠等。經過此次研究,讓我們對指紋密碼鎖設計有了更多的認知,而在未來,指紋密碼鎖的技術會越來越成熟,其發展一定值得信賴,指紋密碼鎖必然會對鎖具市場產生革命性的沖擊。