郭茁蓬,簡正波,向富平,祝秋香
(湖南城市學院信息與電子工程學院,湖南益陽 413000)
隨著社會的進步與科技的發(fā)展,傳統(tǒng)的個人認證方法(如密碼、磁卡等)存在可以被偽造、被盜用等問題,不能充分適應(yīng)現(xiàn)代社會對安保預(yù)防工作的要求。因此隨著科技的發(fā)展,生物特征因為其固有的獨特性、唯一性、穩(wěn)定性、恒久性以及可采集性[1]。于是有了一種新的認證方式——生物識別技術(shù)。生物識別技術(shù)發(fā)展迅速,指紋識別逐漸代替鑰匙應(yīng)用于門鎖安防,目前我國指紋識別技術(shù)相對成熟、成本低廉[2]。射頻識別RFID 技術(shù)是一種非接觸式自動識別技術(shù),與傳統(tǒng)識別技術(shù)相比,RFID 技術(shù)具有非接觸、速度快、穿透力強等優(yōu)點[3]。對于微控制器芯片想要實現(xiàn)復(fù)雜的識別和大量的計算是很難實現(xiàn)的,但是可以通過無線Wi-Fi 將數(shù)據(jù)傳輸給計算機識別運算算法,再將算法結(jié)果通過無線網(wǎng)絡(luò)傳輸?shù)轿⒖刂破鳎詈笤僮龀鰶Q策[4]。綜上所述該設(shè)計結(jié)合目前國內(nèi)所得的研究成果,在他們的基礎(chǔ)上制作了一款指紋密碼射頻鎖Wi-Fi 控制系統(tǒng)設(shè)計。測試結(jié)果表明該設(shè)計實現(xiàn)了指紋密碼解鎖,門禁卡解鎖以及Wi-Fi 遠程控制解鎖等功能,具有較高的安全性和精確度。
以32位單片機為中心,STM32是一款在低能耗嵌入式應(yīng)用中占有舉足輕重地位的低功率單片機。STM32 處理能力強,速度快,穩(wěn)定性好;具有超低功耗,多種接口,可擴展性強等優(yōu)點。該模塊是一塊主要的控制單元,主要承擔著對系統(tǒng)整體運行的控制、對數(shù)據(jù)進行處理、分析等功能。
系統(tǒng)總體設(shè)計框圖如圖1所示。
圖1 系統(tǒng)總體框架
1)硬件電路總原理圖
如圖2便是本次畢業(yè)設(shè)計使用到的硬件的總電路圖,其中包括了所有的模塊的電路原理圖,例如:STM32核心模塊、按鍵模塊、指紋模塊、射頻模塊以及Wi-Fi遠程控制模塊。
圖2 硬件電路總原理圖
2)STM32F103C8T6單片機核心控制模塊
STM32 系列的芯片是一款以ARM 為核心控制的芯片,它是由ST集團制造,它具有實時模擬與追蹤功能。之所以使用這款控制芯片,是由于本系統(tǒng)設(shè)計并不單單為了達到本設(shè)計的最低能耗,它只是為了在完成本設(shè)計的功能的基礎(chǔ)上,可以使用更多的界面以及功能,方便設(shè)計出更多的周邊擴展電路。在完成了對STM32單片機課程的了解之后,這款單片機控制芯片的操作變得比較簡單,它在各種電子設(shè)備中有著非常好的使用價值,并且它還擁有良好的學習和實驗研究價值。
STM32 的主要優(yōu)點:使用ARM 最新的內(nèi)核;優(yōu)異的實時性能;杰出的功耗控制;出眾及創(chuàng)新的外設(shè);最大程度的集成整合;易于開發(fā)。該設(shè)計的所有的插腳和外圍設(shè)備以及軟件都具有非常強大的兼容性,為設(shè)計提供了很大的靈活性。
STM32F103C8T6 單片機最小系統(tǒng)原理圖如圖3所示。
圖3 STM32F103C8T6單片機最小系統(tǒng)原理圖
3)指紋模塊
以STM32F103C8T6為主控芯片,由AS608指紋模塊識別和存儲采集到的指紋信息,由STM32主控制程序處理指紋信息,最后將處理結(jié)果傳送到OLED 液晶屏幕顯示[5]。它是基于全反射原理的亮背景指紋采集工作原理。光學通過LED 燈射出,經(jīng)過手指按壓,光線反射通過透鏡進入傳感器,最后被傳感器識別[6]。采集原理圖如圖4所示。AS608指紋模塊的原理圖如圖5所示。
圖4 指紋采集原理圖
圖5 AS608指紋模塊原理圖
4)射頻模塊
由RC522 射頻模塊識別和存儲采集到的門禁卡信息,STM32 主控程序處理信息后將結(jié)果傳送至OLED 顯示屏上。RFID 技術(shù)是物聯(lián)網(wǎng)得以實現(xiàn)的關(guān)鍵部分,主要表現(xiàn)為無線射頻技術(shù)不再需要和物體之間建立硬性連接,就可以實現(xiàn)各個物體之間的信息交流[7]。RC522射頻模塊的原理圖如圖6所示。
圖6 射頻模塊原理圖
5)Wi-Fi模塊
本設(shè)計應(yīng)用STM32 單片機和ESP8266 Wi-Fi 模塊設(shè)計了遠程解鎖控制系統(tǒng)[8]。利用PC 端的Wi-Fi 串口通信向系統(tǒng)發(fā)送指令,STM32主控制器根據(jù)接收到的指令對系統(tǒng)進行操作[9]。ESP8266 Wi-Fi 模塊的原理圖如圖7所示。
圖7 Wi-Fi模塊原理圖
在該方案中,MCU 的開發(fā)環(huán)境是KEIL,KEIL 是51系列MCU的C語言,由美國KEIL SOFTWARE公司生產(chǎn),與匯編程序比較,C語言在功能、結(jié)構(gòu)和可讀性等方面都有很大優(yōu)勢;在可維護性方面具有十分顯著的優(yōu)點,因此C語言更加便于學和用。KEIL的用途是可以用來進行C 語言的編譯和宏匯編等其他特別厲害的用途,一套完備的發(fā)展計劃,包括圖書館的管理,一個強有力的模擬調(diào)試器,等等,并把它們整合到一個整合的開發(fā)環(huán)境中(MUVISION)。要想使用這個系統(tǒng),就必須使用Win98、NT、Win2000;像WinXP 這樣的作業(yè)系統(tǒng)。用C 語言進行程序設(shè)計時,KEIL 將是您的最佳選擇,即便您只用它來進行匯編,那么它的集成環(huán)境,功能強大的軟件模擬和調(diào)試軟件同樣將使您的工作變得更加輕松容易和簡單。在這些特征中,基爾的特征如下:
KEIL 軟件對WinXP、Win7 等多個操作系統(tǒng)都有很好的支援,并具有很強的程式設(shè)計能力。
FLYMCU 是一個非常簡單實用的STM32 燒錄程序,他可以將程序燒錄至STM32 單片機,它廣泛地用于電子專業(yè)的單片機開發(fā)人員學習。這個軟件在電路編程(ICP)與應(yīng)用編程(IAP)中經(jīng)常被拿出來使用在該設(shè)計中,具有很大的用途。它不僅支持C語言的編程與編譯,它還支持系統(tǒng)的校驗和對器件信息的讀取功能。
MCU的程序可以由一個下載機(例如:CH340)來下載。首先將單片機開發(fā)板、下載器和個人電腦都連接好了之后,然后在軟件當中選定一個串口令,再選定一個名為“HEX”的工程程序,再點開“P”鍵,便可下載此程序。
該設(shè)計的主程序流程圖如圖8所示。
圖8 主程序流程圖
當OLED顯示屏上第一行顯示字樣為FINGER時代表當前為指紋驗證模式。當指紋驗證成功時,綠色的LED 指示燈會亮起,提示已通過驗證解鎖完成,同時OLED 顯示屏右下角會顯示出OK 的字樣,表示已完成解鎖,正如圖9(a)所示。當指紋驗證失敗時,紅色的LED 指示燈會亮起,提示未通過驗證未完成解鎖,同時OLED顯示屏右下角會顯示出ERR的字樣,表示解鎖失敗,并且此時蜂鳴器會發(fā)出刺耳的警報聲,如圖9(b)所示。
圖9 指紋驗證測試圖
當OLED 顯示屏上第一行顯示字樣為KEY 時代表當前為密碼驗證模式。當密碼驗證成功時,綠色的LED 指示燈會亮起,提示已通過驗證解鎖完成,同時OLED顯示屏右下角會顯示出OK的字樣,表示已完成解鎖,正如圖10(a)示。當密碼驗證失敗時,紅色的LED 指示燈會亮起,提示未通過驗證未完成解鎖,同時OLED顯示屏右下角會顯示出ERR的字樣,表示解鎖失敗,并且此時蜂鳴器會發(fā)出刺耳的警報聲,如圖10(b)所示。
圖10 密碼驗證測試圖
當OLED 顯示屏上第一行顯示字樣為RFID 時代表當前為門禁卡驗證模式。當門禁卡驗證成功時,綠色的LED 指示燈會亮起,提示已通過驗證解鎖完成,同時OLED 顯示屏右下角會顯示出OK 的字樣,表示已完成解鎖,正如圖11(a)所示。當門禁卡驗證失敗時,紅色的LED 指示燈會亮起,提示未通過驗證未完成解鎖,同時OLED顯示屏右下角會顯示出ERR的字樣,表示解鎖失敗,并且此時蜂鳴器會發(fā)出刺耳的警報聲,如圖11(b)所示。
圖11 門禁卡驗證測試圖
通過手機特定軟件輸入該系統(tǒng)設(shè)計的唯一API和ID之后即可遠程控制該系統(tǒng)設(shè)計的解鎖功能,當系統(tǒng)未解鎖時,手機App上顯示門狀態(tài)為0,如圖12(a)所示,當系統(tǒng)解鎖時。手機App上顯示門狀態(tài)為1,如圖12(b)所示。可以在OLED 顯示屏上顯示為任意解鎖模式時都能通過此方式打開。按下打開按鍵,此時該設(shè)計的綠色LED指示燈會亮起,提示已通過驗證解鎖完成,同時OLED顯示屏右下角會顯示出OK的字樣,表示已完成解鎖,正如圖12(c)所示。
圖12 解鎖功能測試圖
綜上所述,由STM32F103C8T6 主控芯片、按鍵模塊、指紋模塊、射頻模塊和Wi-Fi 模塊及其他輔助電路組成了一款多重驗證、用戶權(quán)限分級的指紋密碼射頻鎖Wi-Fi 控制系統(tǒng)設(shè)計。該系統(tǒng)在指紋密碼解鎖方式的基礎(chǔ)上,添加了射頻解鎖以及手機遠程控制解鎖功能,提高了單一指紋解鎖的多樣性以及安全性,該系統(tǒng)還設(shè)置了一個管理員密碼,可以通過該密碼來完成對整個門鎖的設(shè)置與控制,為降低錯誤率,在該系統(tǒng)中,指紋模塊使用的是光學采集技術(shù),使用狀態(tài)機的方式,對其進行指紋匹配步驟的檢測。此外,解鎖指紋是利用兩次指紋輸入,來提高所獲取指紋的可靠性與系統(tǒng)的安全性。試驗結(jié)果顯示,相較于傳統(tǒng)門鎖,其在解鎖的安全性、多樣性和使用的舒適性上都有一定程度的提高。