許本渝,余粟
(上海工程技術(shù)大學(xué) 機(jī)械與汽車工程學(xué)院,上海,201620)
在生活中常見的解鎖領(lǐng)域,身份證、銀行卡、IC 卡等間接開鎖方式最為常見,這些方式存在單一性和易遺失性等缺陷,從而使解鎖的精確度和安全性降低?,F(xiàn)在,解鎖領(lǐng)域的新技術(shù)指紋識(shí)別技術(shù)迅速發(fā)展,它是基于生物特征的一種高級(jí)手段[1]。由于指紋是人體先天的特征,并且每個(gè)人的指紋都是不相同的[2],可以利用這一特性創(chuàng)造出一種新的解鎖方式[3]。
早在唐朝時(shí)期,指紋[4][5]技術(shù)就傳入了日本、印度、阿拉伯等國家,再幾經(jīng)流傳,西方國家也引進(jìn)了指紋技術(shù),這奠定近代指紋學(xué)誕生的基礎(chǔ)[6]。國外有很多專門從事指紋識(shí)別技術(shù)的研究機(jī)構(gòu)與公司,美國的技術(shù)水平處于領(lǐng)先地位,如Identix Design Co、East Shore、Digital Persona、Veridicom 公司等,大半導(dǎo)體公司正朝著研發(fā)指紋識(shí)別芯片的目的進(jìn)行研究,Amtd 公司由客戶方提供識(shí)別算法,開發(fā)出包含算法的指紋芯片,很方便地嵌入式應(yīng)用在指紋識(shí)別系統(tǒng)中。隨著市場(chǎng)的推動(dòng)和技術(shù)的提高,電子信息技術(shù)飛速發(fā)展,與之相關(guān)的方方面面都受之影響,指紋識(shí)別技術(shù)也在其進(jìn)步的行列之中[7]。
為了順應(yīng)時(shí)代發(fā)展的潮流,研究并開發(fā)出一款基于指紋識(shí)別的電子鎖十分必要[8]。設(shè)計(jì)利用STM32f103C8T6、AS608 指紋模塊、LCD12864 液晶顯示屏、電磁鎖、制作一個(gè)簡(jiǎn)易的指紋鎖。
本系統(tǒng)采用 ST 公司的 STM32F1 系列的微處理器作為主控制器,完成以下設(shè)計(jì)功能:
(1)增加指紋、按鍵輸入密碼開鎖、刪除指紋;
(2)能夠?qū)崟r(shí)顯示用戶指紋解鎖的信息;
(3)通過指紋的比對(duì),正確的指紋信息可以將電磁鎖打開。
在主控芯片的選擇上提出了三種方案,第一種采用51系列單片機(jī)STC98C51RC,第二種采用FPGA 的Cyclone IV EP4CE6F17C8N 芯片,第三種采用 STM32F1 系列單片機(jī)STM32F103C8T6。各類芯片參數(shù)如表1 所示。
表1 各芯片參數(shù)對(duì)比表
通過對(duì)各種芯片的功耗、存儲(chǔ)容量等要求的綜合分析,其他單片機(jī)相比,STM32F 單片機(jī)的數(shù)據(jù)總線更寬,存儲(chǔ)容量更大,串口數(shù)更多,綜合比較穩(wěn)定性更強(qiáng)。因此,本設(shè)計(jì)的開發(fā)采用STM32F103C8T6 作為主控芯片。
在指紋模塊的選擇上提出了三種方案:第一種方案為光學(xué)式,第二種方案為電容式,第三種方案為超聲波式。各類指紋模塊的參數(shù)如表2 所示。
表2 指紋模塊的性能比較
通過對(duì)各類指紋模塊的性價(jià)比、功耗、耐磨損等需求程度進(jìn)行綜合分析發(fā)現(xiàn),AS608 光學(xué)式指紋模塊相對(duì)于其他兩種指紋模塊,有較快的指紋識(shí)別速度以及良好的使用壽命,即耐磨性較高。兼顧成本與性能,因此本設(shè)計(jì)的開發(fā)采用AS608 光學(xué)式指紋模塊。
在對(duì)市場(chǎng)上的顯示模塊進(jìn)行了解后,提出了四種方案,分別為普通數(shù)碼管顯示、點(diǎn)陣式、LCD1602 液晶、LCD12864 液晶。各類顯示模塊的優(yōu)缺點(diǎn)比較如表3 所示。
表3 顯示模塊的優(yōu)缺點(diǎn)比較
通過對(duì)顯示模塊的優(yōu)缺點(diǎn)分析,LCD12864 液晶顯示屏在規(guī)格上有體積小、功耗低等特點(diǎn),在顯示水平上有顯示信息量大且可漢字和圖形的優(yōu)勢(shì),適合本設(shè)計(jì)使用。因此本設(shè)計(jì)的開發(fā)采用LCD12864 液晶顯示屏。
本設(shè)計(jì)以STM32 單片機(jī)為核心,搭載四大主要部分:指紋模塊、矩陣按鍵模塊、繼電器、顯示模塊。系統(tǒng)設(shè)計(jì)框圖如圖1 所示。
圖1 系統(tǒng)框圖
本設(shè)計(jì)選擇的是AS608 光學(xué)式指紋模塊,圖2 是其接口圖。
圖2 接口圖
指紋模塊主要由控制器組成,控制器外接CMOS 芯片,接收指紋圖像信息,生成對(duì)應(yīng)模板,如圖3 所示。如果手指兩次輸入指紋,系統(tǒng)會(huì)自動(dòng)生成用戶的指紋,然后傳輸?shù)较到y(tǒng)數(shù)據(jù)庫。當(dāng)輸入新的指紋信息,系統(tǒng)自動(dòng)進(jìn)行處理,與數(shù)據(jù)庫中的指紋特征進(jìn)行比對(duì),給出匹配結(jié)果。指紋模塊的具體過程:首先掃描指紋,生成指紋特征,然后合成模板存入系統(tǒng)數(shù)據(jù)庫中。
圖3 指紋模板
液晶顯示主要是利用電流刺激的原理,讓液晶顯示屏形成了點(diǎn),線,面的圖像。LCD12864 體積小,能耗低,操作簡(jiǎn)單。液晶顯示屏主要是幫助系統(tǒng)的數(shù)據(jù)顯示,運(yùn)行過程前要對(duì)系統(tǒng)進(jìn)行初始化,否則系統(tǒng)是無法正常使用的。顯示模塊在進(jìn)行數(shù)據(jù)指令之前,一定確保單片機(jī)沒有其他功能模塊的運(yùn)行,然后再依照具體的傳輸指令顯示到液晶屏幕上[7]。圖4 為顯示屏與單片機(jī)的接口連接圖。
圖4 顯示屏引腳連接圖
本次設(shè)計(jì)所采用的按鍵是4×4 矩陣鍵盤。通過數(shù)字按鍵輸入密碼,使其進(jìn)入設(shè)置頁面。設(shè)置頁面可以選擇的操作:指紋信息的添加、指紋信息的刪除、選擇手動(dòng)開鎖、選擇更改密碼。
本設(shè)計(jì)的電源選擇用到USВ 接口給STM32 和電磁鎖供電。給STM32 供電方案有兩種其工作電壓為5V,一是通過電源插口直接連接到芯片,二是通過按鍵開關(guān)來選擇是否給芯片通電。給電磁鎖通電的工作電壓為12V,區(qū)別于芯片工作電壓。
程序檢查過程:初始化各個(gè)模塊,對(duì)按鍵的狀態(tài)進(jìn)行檢測(cè),判斷是否被按下,同時(shí)對(duì)其進(jìn)行相關(guān)子程序的調(diào)用。
主程序設(shè)計(jì)流程如圖5 所示。
圖5 主程序流程
電路上電,隨即來到主屏幕歡迎界面。按下任意按鍵,發(fā)送一個(gè)低電平信號(hào)給單片機(jī),作為按鍵電路的檢測(cè)信號(hào)。當(dāng)檢測(cè)到按鍵信號(hào)時(shí),輸入管理員密碼后,則進(jìn)入管理員模式,選擇相應(yīng)的指令操作,即增加指紋、手動(dòng)開始、刪除密碼、更改密碼。在本次設(shè)計(jì),將*定義為刪除,當(dāng)輸入密碼錯(cuò)誤時(shí)可以一位刪除密碼;將#定義為確定,當(dāng)輸入密碼后點(diǎn)擊確定打開密碼鎖。C、D 兩個(gè)按鍵定義為返回,可以返回上層頁面。A 按鍵定義為進(jìn)入設(shè)置界面,В 按鍵未定義。
指紋模塊通過芯片的串口發(fā)送與接收命令完成,通過串口發(fā)送命令,等待模塊傳回?cái)?shù)據(jù),由單片機(jī)進(jìn)行數(shù)據(jù)的處理。掃描指紋后隨即進(jìn)行錄入,模塊將生成指紋圖像特征、合成指紋模板,并將合成的指紋圖像模板存儲(chǔ)在AS608 的數(shù)據(jù)庫中。在將要進(jìn)行開鎖時(shí),即進(jìn)行指紋識(shí)別功能,將用戶的指紋圖像進(jìn)行特征值生成,并在數(shù)據(jù)庫中進(jìn)行搜索比對(duì),成功匹配到對(duì)應(yīng)的特征值圖像后,即完成了識(shí)別功能,驅(qū)動(dòng)電磁鎖的彈片打開。
設(shè)計(jì)所采用串口通信方式,其數(shù)據(jù)發(fā)送和接收的流程圖如圖6 所示。
圖6 數(shù)據(jù)收發(fā)流程圖
顯示模塊主要是為了完成系統(tǒng)的數(shù)據(jù)顯示,電路上電后,LCD12864 立即進(jìn)行初始化,并顯示初始界面即歡迎界面。在系統(tǒng)接收到相關(guān)指令后就可以將接收到的信息顯示在液晶屏幕上。
本設(shè)計(jì)的主要實(shí)現(xiàn)的功能可以完成對(duì)指紋的錄入,可存儲(chǔ)大約300 個(gè)指紋數(shù)據(jù),針對(duì)指紋鎖來說,可以方便用戶錄入多個(gè)手指的指紋以防個(gè)別指紋識(shí)別的失敗。通過按鍵實(shí)現(xiàn)增加指紋、鍵盤開鎖、刪除指紋、更改密碼的功能。LCD會(huì)顯示相應(yīng)的結(jié)果,如圖7 所示。
圖7 實(shí)物圖
針對(duì)指紋鎖的識(shí)別精度測(cè)試,選擇了三個(gè)不同用戶及其不同手指指紋進(jìn)行對(duì)識(shí)別精度以及開鎖成功率的性能測(cè)試。分別測(cè)試了用戶一、用戶二、用戶三的拇指、食指、中指指紋共9 個(gè)不同指紋,每個(gè)指紋30 進(jìn)行次解鎖,共270 次的數(shù)據(jù)測(cè)試。具體測(cè)試數(shù)據(jù)如表4 所示。
表4 識(shí)別成功率(識(shí)別精度)數(shù)據(jù)測(cè)試表
在進(jìn)行數(shù)據(jù)分析時(shí),將成功未開鎖的情況也視為識(shí)別失敗,其原因是臨時(shí)斷電的原因?qū)е聼o法解鎖,該部分的結(jié)果可以用于調(diào)試在電源部分的需要。
指紋鎖識(shí)別成功率(識(shí)別精度)的計(jì)算是比對(duì)成功次數(shù)比上總識(shí)別次數(shù)。由數(shù)據(jù)測(cè)試結(jié)果可知,指紋鎖的識(shí)別精度能達(dá)到97%左右。在使用時(shí)間較短的時(shí)間內(nèi),解鎖的成功率是非常高的。但由于指紋模塊存在耐磨性和環(huán)境因素的指標(biāo)考量,隨著使用壽命的增加,指紋鎖的識(shí)別精度也會(huì)隨之降低。綜上所述,本設(shè)計(jì)的指紋鎖在使用壽命內(nèi)的日常使用和研究,還是很可觀的。
本文主要針對(duì)防盜系統(tǒng)的安全性和便利性設(shè)計(jì)了一款基于指紋圖像識(shí)別的電子鎖,由于現(xiàn)代人愈來愈注重安全系統(tǒng)的保障,加上技術(shù)的齒輪不斷向前轉(zhuǎn)動(dòng),設(shè)計(jì)這款電子鎖為現(xiàn)實(shí)所需。經(jīng)過測(cè)試該設(shè)計(jì)能夠正常地采集開鎖指紋和完成指紋比對(duì),可以準(zhǔn)確地識(shí)別指紋開鎖,并完成刪除指紋、更改密碼等功能。指紋鎖的體積小、使用方便、安全可靠,適合各種情況的使用。通過對(duì)指紋鎖設(shè)計(jì),對(duì)指紋識(shí)別這個(gè)技術(shù)有了更新的認(rèn)識(shí),相信以后指紋鎖越來越被人們所接受,在生活中也將會(huì)越來越普及,能夠更加地保障人民的財(cái)產(chǎn)安全。雖然本設(shè)計(jì)的功能基本到達(dá),但關(guān)于指紋模塊的開發(fā)尚未結(jié)束,很多東西尚待開發(fā),在未來的設(shè)計(jì)中會(huì)進(jìn)一步得到創(chuàng)新和完善。