劉歡1,方華2
(1.廣西科技大學(xué) 電氣與信息工程學(xué)院,廣西 柳州 545006;2.廣西科技大學(xué) 工程訓(xùn)練中心,廣西 柳州 545006)
摘要:為提高實驗室管理效能,加強(qiáng)高校實驗室安全,設(shè)計了一種以STM32微處理器、STC89C52單片機(jī)為核心的可視化指紋識別門禁控制管理系統(tǒng),其中STC89C52用于FM-180指紋識別模塊及門禁的控制,STM32作為管理系統(tǒng)核心模塊,兩者通過2.4 G無線通信模塊實現(xiàn)數(shù)據(jù)同步,系統(tǒng)可完成指紋的錄入、識別、修改、刪除、進(jìn)入人數(shù)統(tǒng)計、被拒人數(shù)統(tǒng)計、人員進(jìn)入時間顯示等功能。
關(guān)鍵詞:單片機(jī);指紋識別;無線通信;門禁
中圖分類號:TP23文獻(xiàn)標(biāo)識碼:ADOI: 10.19358/j.issn.16747720.2016.23.027
引用格式:劉歡,方華. 基于指紋識別的實驗室門禁管理系統(tǒng)設(shè)計[J].微型機(jī)與應(yīng)用,2016,35(23):93-95,99.
0引言
在互聯(lián)網(wǎng)時代的今天,每個人都有大量的安全認(rèn)證密碼,如銀行密碼、支付密碼、聊天軟件密碼、開機(jī)密碼、網(wǎng)站登錄密碼等,且配備有各種鑰匙,如門鎖鑰匙、車輛鑰匙、保險柜鑰匙等,這些都是傳統(tǒng)的安全系統(tǒng)所采用的密鑰認(rèn)證方式。但是這種傳統(tǒng)安全系統(tǒng)的密鑰存在易丟失、易遺忘、易被盜用等不安全因素,因此迫切需要一種安全、可靠、方便的認(rèn)證技術(shù)來代替現(xiàn)有的安全認(rèn)證[1]。
指紋特征是人類終生不變的特征之一,其恰恰具備密鑰的3個必要性質(zhì):廣泛性、唯一性和終生不變性,因此,指紋識別作為一種可靠的生物辨識技術(shù),受到人們青睞和倚重[2]。指紋辨識技術(shù)在當(dāng)今人們的生活和工作中的應(yīng)用越來越廣泛,譬如指紋考勤、指紋銀行、指紋商場、指紋接送學(xué)生等,此技術(shù)正在日益刷新人們的生活方式。在識別技術(shù)界悄悄拉開“指紋時代”的巨幕[3]。
高校實驗室教學(xué)需要更為先進(jìn)的技術(shù)作為支撐,本文針對實驗室尤其是高校開放性實驗室的管理要求,提出一種基于指紋識別的實驗室門禁管理系統(tǒng),此系統(tǒng)可提高實驗室的自主管理程度,方便實驗室管理人員有效掌握實驗室的使用情況。
1系統(tǒng)設(shè)計方案
系統(tǒng)主控單元分為兩個部分,STC89C52單片機(jī)和STM32微處理器。其中STC89C52單片機(jī)主要用于實時控制FM180指紋識別模塊,通過編程控制單片機(jī)串口與指紋識別模塊進(jìn)行數(shù)據(jù)通信。FM180指紋識別模塊有固定的指令集和數(shù)據(jù)發(fā)送格式,系統(tǒng)程序可以根據(jù)指令集和數(shù)據(jù)發(fā)送格式進(jìn)行編寫,進(jìn)而實現(xiàn)用戶指紋錄入、識別、修改、刪除等功能,同時控制LCD1602液晶顯示器和繼電器,達(dá)到提示用戶和實時操縱電子鎖開關(guān)的功能。STM32微處理器主要用于實現(xiàn)實驗室管理,通過2.4 G無線通信模塊將同步過來的數(shù)據(jù)顯示在彩屏上,包括室內(nèi)人數(shù)、被拒人數(shù)、指紋序號、進(jìn)入時間等。系統(tǒng)可以保存每個用戶最后一次進(jìn)入的時間,并可以隨時方便地在彩屏上進(jìn)行歷史數(shù)據(jù)查詢。其硬件結(jié)構(gòu)圖如圖1所示。
2硬件設(shè)計
2.1STC89C52及其外圍電路設(shè)計
STC89C52是STC公司生產(chǎn)的一種低功耗、高性能的CMOS 8位微控制器,具有8 KB在系統(tǒng)可編程Flash存儲器,使用經(jīng)典的MCS51內(nèi)核,其主要特性是自帶8 KB程序存儲空間和512 B數(shù)據(jù)存儲空間,內(nèi)帶2 KB EEPROM存儲空間,可直接使用串口下載。
2.1.1復(fù)位電路
本設(shè)計采用手動按鈕復(fù)位,復(fù)位電路主要由復(fù)位按鈕、電阻、電容等組成。當(dāng)輸入連續(xù)兩個機(jī)器周期以上高電平給STC89C52單片機(jī)RES引腳時,單片機(jī)復(fù)位有效。
2.1.2指紋識別模塊
FM-180指紋識別模塊主要包括指紋采集頭和指紋處理電路兩部分,指紋采集頭使用光學(xué)指紋傳感器,指紋處理電路由指紋特征提取的高性能DSP處理器和指紋特征存儲的Flash等芯片構(gòu)成。自帶DSP處理器的指紋處理模塊中集成了固定的指令集和數(shù)據(jù)傳送格式,可以通過處理器的串口與模塊進(jìn)行數(shù)據(jù)交換,根據(jù)用戶的命令來完成如指紋的錄入、刪除、比對等一系列的動作,并將指紋特征值加密后存儲于處理模塊的Flash中。當(dāng)用戶進(jìn)行指紋識別時,系統(tǒng)會將采集到的用戶的指紋特征值與Flash芯片中存儲的指紋特征值進(jìn)行比較,以確定該用戶指紋是否符合要求,實現(xiàn)指紋檢測、識別的功能。
STC89C52單片機(jī)通過串口與FM-180指紋識別模塊進(jìn)行數(shù)據(jù)傳輸,根據(jù)指紋識別模塊的性能指標(biāo),可以通過軟件編程將數(shù)據(jù)通信的波特率設(shè)置為9 600 b/s,以實現(xiàn)通信的準(zhǔn)確性和可靠性。單片機(jī)的RXD(P30)與指紋識別模塊的TXD連接,單片機(jī)的TXD(P31)與指紋識別模塊的RXD連接。
2.1.3按鍵設(shè)計
指紋控制部分包括4個按鍵,分別為S1、S2、S3、S4,其中S1定義為模式識別轉(zhuǎn)換按鍵,用于控制系統(tǒng)使其在指紋識別和指紋錄入兩個模式之間進(jìn)行切換;S2定義為指紋錄入按鍵,當(dāng)系統(tǒng)處于指紋錄入模式下,按下S2可以進(jìn)行一次指紋的錄入工作;S3定義為指紋清除按鍵,用以控制對指紋識別模塊Flash庫中的指紋特征的清除;S4定義為室內(nèi)一鍵開門按鍵,當(dāng)用戶需要出門時,通過此按鍵可使電子鎖門禁打開。
時鐘調(diào)整部分包括3個按鍵,分別為S5、S6、S7,其中S5定義為調(diào)整選擇鍵,按下此鍵可以在年、月、日、時、分、秒、星期之間進(jìn)行切換調(diào)整;S6、S7分別定義為數(shù)字加1、減1鍵,通過這兩個按鍵可以將數(shù)字快捷地設(shè)置為所需時間數(shù)據(jù)。
2.1.4LCD顯示
設(shè)計采用LCD1602液晶顯示器作為指紋采集、指紋識別等系統(tǒng)當(dāng)前功能模式的顯示提醒工具。通過STC89C52單片機(jī)對LCD1602進(jìn)行控制,在使用相應(yīng)功能的同時,LCD1602會有相應(yīng)的語句提示,使系統(tǒng)有更好的可視化效果。單片機(jī)通過P0口與LCD1602之間進(jìn)行數(shù)據(jù)傳輸,在LCD1602上顯示出相應(yīng)的字符或數(shù)字。
2.1.5電子鎖門禁
電子鎖門禁電路主要包括電子鎖開關(guān)電路和用于控制其開關(guān)的繼電器驅(qū)動電路。本設(shè)計采用上電開鎖形式的12 V電子鎖,當(dāng)電子鎖線圈兩端電壓達(dá)到12 V時就會上電開鎖,具體接口電路如2所示。其中Q2為PNP型三極管,工作在開關(guān)模式下,用于控制繼電器的上電和復(fù)位。
2.2STM32及其外圍電路設(shè)計
STM32系列微處理器是專為高性能、低成本、低功耗的嵌入式應(yīng)用而設(shè)計的以ARM Cortex-M3為內(nèi)核的控制芯片。按性能可分成兩個不同的系列:STM32F103“增強(qiáng)型”和STM32F101“基本型”。增強(qiáng)型系列時鐘頻率達(dá)到72 MHz,是同類產(chǎn)品中性能最高的產(chǎn)品;基本型時鐘頻率為36 MHz,以16位產(chǎn)品的價格得到比16位產(chǎn)品大幅提升的性能,是16位產(chǎn)品用戶的最佳選擇[4]。兩個系列都內(nèi)置32 KB~128 KB的閃存,不同的是SRAM的最大容量和外設(shè)接口的組合。時鐘頻率為72 MHz時,STM32功耗為36 mA,是32位市場上功耗最低的產(chǎn)品,即0.5 mA/MHz。本設(shè)計采用增強(qiáng)型的STM32F103ZET6微處理器。
2.2.1液晶顯示
本設(shè)計采用的是3.2英寸的TFT彩色顯示屏,分辨率為320×240,16位真彩顯示。彩色顯視屏上顯示出室內(nèi)人數(shù)、被拒人數(shù)、指紋序號、進(jìn)入時間等信息。由于STM32微處理器中集成了FSMC總線機(jī)制,可以方便地對液晶顯示器進(jìn)行控制,所以通過軟件編程設(shè)置FSMC控制方式即可實現(xiàn)目的[5]。
2.2.2用戶查詢按鍵
查詢用戶按鍵與STM32連接,主要用于查詢用戶最后一次進(jìn)入時間、指紋序號、歷史數(shù)據(jù)瀏覽等相關(guān)信息。主要包括3個按鍵,分別為S1、S2、S3,其中按鍵S1用于進(jìn)入查詢用戶模式,此時按鍵S2、S3分別用于用戶信息查詢的上、下切換,能快速瀏覽到用戶信息。
2.3無線通信
NRF24L01是一款單片射頻收發(fā)器件,工作于2.4 GHz~2.5 GHz ISM頻段。內(nèi)置頻率合成器、功率放大器、晶體振蕩器、調(diào)制器等功能模塊,并融合了增強(qiáng)型Shock Burst技術(shù),其中輸出功率和通信頻道可通過程序進(jìn)行配置。NRF24L01功耗低,在以-6 dBm的功率發(fā)射時,工作電流只有9 mA;接收時,工作電流只有12.3 mA。多種低功率工作模式(掉電模式和空閑模式)使節(jié)能設(shè)計更方便。
2.4G無線通信模塊可采用SPI進(jìn)行控制,SPI口為同步串行通信接口,最大傳輸速率為10 Mb/s,傳輸時先傳送低位字節(jié),再傳送高位字節(jié),但針對單個字節(jié)而言,要先傳送高位再傳送低位。與SPI相關(guān)的指令共有8個,使用時這些控制指令由NRF24L01的MOSI輸入,相應(yīng)的狀態(tài)和數(shù)據(jù)信息是從MISO輸出給MCU。由于STC89C52單片機(jī)內(nèi)部沒有集成SPI總線,所以只能通過普通的I/O口模擬SPI通信方式。此處采用STC89C52的P3口進(jìn)行模擬,根據(jù)圖3、圖4所示的SPI讀寫時序圖,通過軟件編程可以實現(xiàn)SPI的通信協(xié)議,達(dá)到控制目的。
2.4電源
本設(shè)計中需要12 V電壓為電子鎖供電,使其正常通斷,5 V電壓為STC89C52單片機(jī)及其外圍電路供電,3.3 V提供STM32微處理器和2.4 G無線模塊的正常工作電壓。通過3個不同的穩(wěn)壓芯片可以分別得到這三種電壓,為整個系統(tǒng)提供穩(wěn)定電源。
3軟件設(shè)計
3.1軟件設(shè)計思路
根據(jù)系統(tǒng)硬件電路,系統(tǒng)的軟件設(shè)計包括以STC89C52為核心的指紋錄入和識別、液晶顯示子程序,以STM32為核心的系統(tǒng)管理查詢、顯示子程序和無線通信程序。系統(tǒng)軟件部分采用C語言編程,最終將程序分別下載到STC89C52單片機(jī)和STM32微處理器中,實現(xiàn)整個系統(tǒng)的通信和其他功能。
3.2指紋錄入及識別
?。?)指紋錄入
FM180指紋識別模塊內(nèi)部集成了專用的函數(shù)指令集和數(shù)據(jù)發(fā)送格式,單片機(jī)通過指令集訪問指紋識別模塊,通過數(shù)據(jù)交換達(dá)到控制模塊的目的。具體流程如圖5所示。
?。?)指紋識別
首先檢測是否有指紋出現(xiàn)在光學(xué)鏡頭上面,有指紋出現(xiàn)時,發(fā)送搜索用戶指令,將指紋與指紋庫中的指紋作對比。如果與指紋庫中指紋符合則返回1,否則返回0。具體流程如圖6所示。
3.32.4 G無線通信模塊子程序
在啟動數(shù)據(jù)發(fā)送之前,將其模式設(shè)定為發(fā)送模式。將需要發(fā)送的數(shù)據(jù)轉(zhuǎn)入發(fā)射寄存器,等待發(fā)送。啟動發(fā)送命令后,數(shù)據(jù)開始發(fā)送,并等待發(fā)送完成的標(biāo)志,發(fā)送完成則結(jié)束,否則等待發(fā)送完成。具體發(fā)送流程如圖7所示。
在啟動數(shù)據(jù)接收之后,首先模塊查詢數(shù)據(jù)是否有更新,如果有數(shù)據(jù)更新,則將接收到的數(shù)據(jù)存入緩沖區(qū),并進(jìn)一步存入用戶指定位置,以方便程序調(diào)用。具體接收流程如圖8所示。
4結(jié)束語
隨著社會的進(jìn)步,需要指紋識別可視化門禁系統(tǒng)這種安全管理設(shè)施的場所越來越多。本設(shè)計采用STM32微處理器和STC89C52單片機(jī)協(xié)同工作,構(gòu)造了功能較為完善的可視化指紋識別門禁管理系統(tǒng)。該系統(tǒng)具有用戶信息查詢功能,不僅可以用于高校實驗室門禁還可以用于其他多種場所,具有廣闊的市場前景和實用價值。但是,系統(tǒng)在遠(yuǎn)程監(jiān)控方面還有所欠缺,需要進(jìn)一步研究本系統(tǒng)與網(wǎng)絡(luò)的通信,以滿足不同場所的需求。
參考文獻(xiàn)
[1] 王超,魏啟明,鄧安遠(yuǎn).無線指紋識別技術(shù)在考試系統(tǒng)的應(yīng)用研究[J].計算機(jī)仿真,2010,27(1): 309-312.
[2] 田捷,陳新建,張陽陽,等.指紋識別技術(shù)的新進(jìn)展[J].自然科學(xué)進(jìn)展,2006,16(4):400-408.
?。?] 吳成楓,趙振華.基于指紋識別技術(shù)的智能門禁系統(tǒng)研究[J].微型電腦應(yīng)用,2012,28(6):45-47.
[4] 王明冬,方華,劉成鳳,等.基于STM32為平臺的食堂自助點菜結(jié)賬裝置設(shè)計[J].數(shù)字技術(shù)與應(yīng)用,2016(1):166-168.
?。?] 湯莉莉,黃偉.基于STM32的FSMC接口驅(qū)動TFT彩屏設(shè)計[J].現(xiàn)代電子技術(shù),2013,36(20): 139-141.