?

一種智能指紋密碼鎖系統的設計與實現

2020-12-07 06:03譚虹
軟件工程 2020年11期
關鍵詞:指紋識別

譚虹

摘? 要:傳統門禁系統已經不能滿足人民對門鎖的要求,針對這一變化設計了一款基于STM32F103RCT6(32位微控制器)的具有語音播報和一鍵關鎖等人性化功能的智能指紋密碼鎖,采用密碼解鎖和指紋解鎖。硬件采用基于STM32F205(32位高性能微控制器)的指紋模塊進行錄入指紋、處理圖像、保存指紋、識別指紋等,使用全視角的OLED12864(有機發光二極管)液晶屏進行顯示,使用可以把文字轉化成聲音進行輸出的語音模塊進行語音播報。軟件包含各模塊初始化配置和各模塊功能的實現。系統的整體功能測試結果表明設計的智能指紋密碼鎖各項功能正常,系統更加人性化,可以用于柜子鎖和門鎖等多種場所。

關鍵詞:指紋識別;智能密碼鎖;STM32;OLED;語音播報

中圖分類號:TP368.1? ? ?文獻標識碼:A

Abstract: Traditional door-access control system may face many new challenges? from people's requirements. An intelligent fingerprint password lock with voice broadcast and one keypress lock is designed based on STM32F103RCT6 (32 bit microcontroller), which adopts both password unlocking and fingerprint unlocking. Fingerprint module based on STM32F205 (32-bit high performance microcontroller) is used to input fingerprint, process image, save fingerprint and identify fingerprint. The full view OLED 12864 (Organic Light-Emitting Diode) liquid crystal screen is used for display and the speech module that can convert text into voice is used to broadcast voice. Software includes the initialization configuration of each module and the realization of each module function. Test results of overall system functions show that the intelligent fingerprint password lock runs normally, and the humanized lock system can be used to lock cabinets and doors.

Keywords: fingerprint identification; intelligent password lock; STM32; OLED; voice announcements

1? ?引言(Introduction)

信息技術的高速發展深入推進了數字化、網絡化、智能化的融合發展,改善了人民的生活水平。人民對于門禁系統的安全性、便捷性和高效性的要求也在不斷地提高[1]。與傳統的機械鎖相比,電子密碼鎖具有免鑰匙、功能多等優勢[2],人民也逐漸接受了電子密碼鎖,傳統的機械鎖將被電子密碼鎖逐漸取代。市面上有各種款式的電子密碼鎖:智能IC卡式、固定鍵盤式、指紋式、語音式、無線遙控式等[3]?!爸悄茈娮用艽a鎖是智能家居的一個重要組成部分”[4],本文設計了一種基于STM32F103RCT6的智能指紋密碼鎖,采用密碼解鎖和指紋解鎖兩種解鎖方式。添加了語音播報和一鍵關鎖等功能,使智能指紋密碼鎖更加人性化,管理員模式提升了門禁系統的安全性。

2? 智能指紋密碼鎖系統整體設計(Design of intelligent fingerprint password lock system)

2.1? ?系統架構設計

智能指紋密碼鎖系統包括硬件和軟件兩個方面,由STM32小型系統板、指紋識別模塊、矩陣鍵盤模塊、OLED液晶顯示模塊、語音模塊、電控鎖模塊和電源模塊組成,如圖1所示。STM32小型系統板中的MCU與指紋模塊進行信息交互,實現指紋的讀取、錄入和清除[1];通過顯示模塊實時顯示鍵盤錄入狀態、錄入提示信息、指紋錄入狀態等;矩陣鍵盤模塊用于輸入和執行相應的功能;可以通過MCU的控制來打開與關閉電控鎖;語音模塊在不同的狀態和結果下進行語音播報。

2.2? ?系統功能

本系統可以進行密碼解鎖和指紋解鎖,操作時可以觀看屏幕的提示信息進行正確的操作,語音播報提示信息和指紋鎖當前的狀態,掉電后記憶密碼,如果密碼輸入錯誤三次,則鎖死鍵盤10秒。管理員模式可以進行密碼的修改、所有指紋的消除、指紋的錄入等,管理員模式可以提高指紋鎖的安全性,在忘記密碼時也可以輸入管理員密碼啟用管理員模式。有市電供電和充電寶供電兩種供電方式。

3? ?智能指紋密碼鎖系統硬件設計(Hardware design of intelligent fingerprint password lock system)

3.1? ?STM32小型系統板

STM32小型系統板的主控芯片是STM32F103RCT6。STM32F103RCT6采用32位的ARM Cortex-M3,有64個引腳。該處理器內置256kB的Flash閃存和48kB的SRAM,讀寫速度較快[5]。對比51單片機,STM32性能更強,性價比更高。

STM32小型系統板還包含有一個SPI FLASH芯片W25X16、一個OLED屏模塊接口、一個標準JTAG/SWD下載口,能夠滿足該系統的需求。

3.2? ?指紋識別模塊

指紋識別模塊采用基于STM32F205(高性能ARM Cortex-M3 MCU)的UART Fingerprint Reader智能型模塊。該模塊內置高精度光學傳感器,采用較成熟的商用指紋算法,可以進行錄入指紋、處理圖像、提取特征值、生成模板、保存模板、比對指紋和搜索指紋等[4]。存儲器采用片內存儲(可擴展存儲器),可保存1000枚指紋,認假率<0.001%(安全等級為5時),拒真率<0.1%(安全等級為5時)。供電電壓3.3—7.5V,供電電流<50mA,匹配方式有比對方式(1:1)和搜索方式(1:N)。具有指紋識別速度快、感應效果好、穩定等特點。該模塊通過串行通信接口與STM32F103RCT6進行通信,指紋識別模塊的TXD(數據發送端)與STM32F103RCT6的PA3(RXD數據接收端)連接,指紋識別模塊的RXD(數據接收端)與STM32F103RCT6的PA2(TXD數據發送端)連接。

3.3? ?矩陣鍵盤模塊

采用4X4按鍵模塊,是一款薄膜鍵盤。有10個數字鍵0-9、四個字母鍵A-D、一個*號鍵、一個#號鍵。該模塊可配合各種開發板使用,只占用八個標準IO口,可實現16按鍵掃描,獨立輸入。具有安裝方便、操作簡單、材質好、耐用等特點。選用STM32F103RCT6的PC0、PC1、PC2、PC3、PC4、PC5、PC6、PC7作為鍵盤接口。

3.4? ?OLED液晶顯示模塊

顯示模塊采用OLED(有機發光二極管,又稱為有機發光半導體、有機電激光顯示)顯示屏。相較于LED或LCD的晶體層,OLED的有機塑料層更輕薄、更富于柔韌性,OLED還具有省電、響應速度快、較寬的視角、能實現高分辨率顯示、寬溫度等特征。OLED是自發光的,沒有背光,通電源時顯示屏沒有任何反應,必須在程序正確操作時才有顯示,這點與LCD有很大不同。

系統選用的是OLED 12864液晶屏,有八個管腳,工作電壓3.3V,接口類型為SPI接口,具有全視角、帶中英文字庫等特點。SPI時鐘線(CLK)接STM32F103RCT6的PA5、SPI數據線(MOSI)接STM32F103RCT6的PA7,數據和命令選擇腳(DC)接STM32F103RCT6的PB0,OLED顯示屏片選信號(CS1)接STM32F103RCT6的PB1,字庫數據輸出管腳(FSO)接STM32F103RCT6的PA4。

3.5? ?語音模塊

采用WEGASUN-M6語音識別模塊,能識別詞條達2000句,具備優勝的語音識別功能,可以把文字轉化成聲音進行輸出。操作簡易,能夠獨立運行,不需要運行在Windows或者Android等平臺上,提供了廉價而簡易的DIY方式,通過TTL串口(UATR)接收指令和返回結果,能直接跟各種MCU通訊,快速做出自己的個性化產品。選用STM32F103RCT6的PA9、PA10作為語音模塊接口。

3.6? ?電控鎖模塊

采用電控鎖模塊,工作電壓5V,內含小電機,正向電流電機正轉則開鎖,反向電流電機反轉則關鎖。具備10萬次的機械壽命和20萬次的電機壽命。

4? 智能密碼鎖系統軟件設計(Software design of intelligent password lock system)

在主程序中進行指紋串口初始化配置、鍵盤初始化、屏幕初始化、電控鎖初始化等,并調用模塊的功能子函數。

4.1? ?指紋模塊軟件設計和矩陣鍵盤模塊軟件設計

指紋識別主要包括采集與處理指紋圖像、提取與保存特征數據、比對與匹配特征值等過程[6],指紋模塊程序包含保存用戶指紋、刪除所有指紋等子函數。矩陣鍵盤中的10個數字鍵0—9用于輸入密碼,*號鍵用于進入輸入密碼狀態和退出,#號鍵是確認鍵。在用戶模式下,先按*號鍵,輸入密碼后按#號鍵確認進行開鎖,按C鍵進行指紋開鎖。按A鍵進行一鍵關鎖。按*號鍵,再按#號鍵后輸入管理員密碼進入管理員模式,在管理員模式中進行修改密碼并保存密碼。進入管理員模式后,用D鍵清除所有指紋,按A鍵添加錄入的指紋,C鍵可以在管理員模式下進行測試指紋是否錄入成功。

4.2? ?OLED液晶顯示模塊軟件設計和語音模塊軟件設計

語音內容和屏幕顯示的文字內容是一致的。對于OLED液晶顯示模塊,先進行初始化和全屏清屏,然后調用函數display_GB2312_string( , , )在固定的位置顯示中文提示信息和狀態信息等。對語音模塊,先對語音模塊的芯片寫入詞條(需要轉化成聲音的文字),然后通過函數printf()和WEGASUN-M6語音識別模塊的實時控制指令“@PlayFlashText#$”(#和$之間加詞條的返回值,取值范圍001-255)指令把設置好的詞條通過喇叭播放出來,實現語音播報功能。如以下代碼:

5? 智能指紋密碼鎖系統調試與整體功能測試(Debugging and overall function testing of intelligent fingerprint password lock system)

系統調試使用軟件Keil uVision5編程和進行程序的調試,程序調試成功后下載到智能指紋密碼鎖系統實物進行系統整體功能測試,測試結果各項功能正常,達到了預期的目標。系統工作穩定,屏幕正常顯示提示信息和狀態信息,語音播報功能正常,按鍵功能正常,密碼正確輸入和錯誤輸入的判斷準確,密碼正確正常開鎖,密碼錯誤三次后操作鍵盤確實無效,屏幕顯示倒計時10秒后可以再次操作鍵盤。能正常進入管理員模式進行修改密碼,能正常進入管理員模式進行錄入指紋、刪除指紋。指紋識別功能正常,指紋識別成功后開鎖。一鍵關鎖功能正常。市電供電和充電寶供電兩種供電方式工作正常。

6? ?結論(Conclusion)

本文設計的智能指紋密碼鎖系統,以STM32F103RCT6為主控制器,使用全視角的OLED 12864液晶屏和具有文字轉聲音輸出功能的語音模塊,經過多次實驗和測試,最終實現密碼解鎖、指紋解鎖、屏幕顯示提示信息和狀態信息、語音播報、管理員模式修改密碼、錄入指紋、刪除指紋、一鍵

關鎖等功能,屏幕提示信息、語音播報和一鍵關鎖功能使密碼鎖更加人性化。系統易于安裝、穩定性好,安全可靠,可應用于柜子鎖和門鎖等多種場所。但是系統存在一些不足之處,缺少電池模式,語音模塊擁有優越的語音識別和語音合成功能,沒有充分發揮語音模塊的作用。今后,將增加電池模式,使系統擁有市電供電、充電寶供電、電池供電等三種供電方式,滿足用戶對供電方式的要求,解決現有的智能門鎖在供電方面存在的使用不便的問題。增加語音密碼識別功能,但是語音密碼開門的同時泄露了密碼,安全性差[3],因此還需要設置語音密碼識別的開和關。為了提高密碼鎖的安全性,可以增加GSM模塊,若三次密碼輸入錯誤,鍵盤鎖死三分鐘,同時通過GSM模塊向用戶手機號發送提醒短信。還可以增加遠程訪問功能,使用藍牙技術建立智能手機和密碼鎖之間的通信[7]。

參考文獻(References)

[1] 楊朋飛,聶亮,陳靖,等.基于STC89C52單片機的指紋密碼鎖系統設計與實現[J].傳感器與微系統,2020,39(05):81-83;86.

[2] 徐慶偉,郭振鐸,劉洲峰.基于STM32的電子密碼鎖設計[J].中原工學院學報,2018,29(06):61-65.

[3] 欒祿祥.基于GPRS和激光虛擬鍵盤的智能電子門鎖系統[J].計算機應用,2016,36(S2):319-321.

[4] 劉永雷,趙曰峰.基于STM32的智能電子密碼鎖系統設計[J].山東師范大學學報(自然科學版),2018,33(03):322-327.

[5] 范冠鵬,李永軍,王亞杰,等.基于超聲波傳感器和STM32的局部放電監控系統設計[J].儀表技術與傳感器,2020(06):55-58.

[6] 張萍,馬樹軍,史可福.基于51單片機的指紋電子密碼鎖的設計與實現[J].實驗室研究與探索,2018,37(08):134-138;161.

[7] Chi-Huang Hung, Yong-Yi Fanjiang, Kun-Chih Chung, et al. A Door Lock System with Augmented Reality Technology[C]. 2017 IEEE 6th Global Conference on Consumer Electronics(GCCE 2017), Nagoya, Japan, 2017.

作者簡介:

譚? ?虹(1971-),女,本科,信息系統項目管理師.研究領域:嵌入式技術.

猜你喜歡
指紋識別
基于單片機指紋識別電子寄存柜設計
指紋識別
指紋識別技術綜述
指紋掛鎖
基于大容量指紋識別的實時身份認證系統
基于線陣CCD的指紋識別實驗
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合