鄭俊杰,李申,肖迪創(chuàng),李未,賈?。ㄍㄓ嵶髡撸?/p>
(湖北文理學(xué)院汽車與交通工程學(xué)院,湖北襄陽,441053)
隨著我國社會信息科學(xué)技術(shù)、信息安全技術(shù)和我國社會主義市場經(jīng)濟(jì)的快速發(fā)展進(jìn)步,信息安全技術(shù)已經(jīng)逐漸廣泛滲透應(yīng)用到了現(xiàn)代人們社會日常生活的每一個領(lǐng)域,住宅小區(qū)的安全防護(hù)系統(tǒng)也逐漸走向智能化。同時,隨著現(xiàn)代社會人們的財產(chǎn)安全及其防盜意識不斷增強(qiáng),對高層住宅樓房的安全、室內(nèi)外門禁系統(tǒng)設(shè)計的人性化技術(shù)水平要求也愈發(fā)嚴(yán)格。原來的機(jī)械門鎖采用了機(jī)械閉鎖式,金屬鑰匙的耦合性很強(qiáng),一把鑰匙打開多扇門時有發(fā)生,安全性大大降低。而之后開發(fā)的IC 卡門禁系統(tǒng)也容易出現(xiàn)門禁卡丟失、損壞的問題。本文所要介紹的設(shè)計系統(tǒng)-基于單片機(jī)的二維碼門禁系統(tǒng)[2]則很好的規(guī)避了以上的諸多問題。
圖1 智能門禁系統(tǒng)硬件框圖
本設(shè)計基于單片機(jī)的二維碼門禁系統(tǒng)主要由以下幾部分組成:(1)微光互聯(lián) QT960 掃碼器;(2)主控 STM32F407單片機(jī)最小系統(tǒng);(3)屏幕顯示部分;(4)電機(jī)驅(qū)動 L298控制開關(guān)門電機(jī)及其他外設(shè)設(shè)備。智能門禁系統(tǒng)以STM32F407 單片機(jī)為控制核心,當(dāng)用戶需要打開門禁時,出示二維碼通過掃碼器進(jìn)行掃描,掃描得到的信息通過單片機(jī)進(jìn)行判斷是否為已錄入信息用戶,若是,則自動開鎖打開門禁[3]。同時系統(tǒng)還具有語音播報的功能,如當(dāng)有人靠近掃碼器時提示:“請出示您的二維碼”。若二維碼已錄入,則播報“歡迎光臨”,否則提示:“未正確掃描二維碼,請重新掃描”。最后,系統(tǒng)還配備了應(yīng)急處理部件,當(dāng)主控單片機(jī)故障或線路某部分損壞而無法實現(xiàn)自動開門時,門衛(wèi)人員通過應(yīng)急按鈕,可實現(xiàn)手動開門。
本系統(tǒng)采用硬件解碼的方式實現(xiàn)二維碼的解碼工作。使用模塊為北京微光互聯(lián)公司生產(chǎn)的二維碼掃碼器 QT960。該模塊在設(shè)計上采用了內(nèi)嵌式向下凹陷的密封設(shè)計,并配置了背景燈、蜂鳴器等期間,考慮了掃碼時的光照影響及掃碼完成后的音源提示。同時該模塊在數(shù)據(jù)輸出方式上具有多種選擇,包括串口通信常用的 232 輸出、TTL 輸出等。QT960掃碼設(shè)備有一下幾個方面的優(yōu)點:(1)支持快速掃碼;(2)體積小,厚度僅為 23.8mm;(3)識讀速度快,精度高,識讀速度最快可達(dá) 0.1 秒;(4)操作簡單,搭配人性化使用工具,使設(shè)備調(diào)試更便捷。該模塊還支持進(jìn)行二次開發(fā),對于本系統(tǒng)來說是一個很好的選擇。該模塊的掃描速度為 50ms 每次,掃描距離為 3~10cm,同時可以進(jìn)行連續(xù)掃描操作。支持屏幕或者紙張打印二維碼的掃描。對于本系統(tǒng)來說,掃描二維碼之后解碼產(chǎn)生的數(shù)據(jù)信息,通過串口與單片機(jī)進(jìn)行數(shù)據(jù)傳輸,之后單片機(jī)進(jìn)行信息處理。
本系統(tǒng)使用 STM32F407 單片機(jī)作為主控部件,實現(xiàn)對二維碼掃碼器讀取數(shù)據(jù)的分析處理,然后完成對電機(jī)等外設(shè)的控制輸出。STM32F4 是由意法半導(dǎo)體公司設(shè)計開發(fā)的高性能控制器件,首先它在配置上十分齊全,數(shù)據(jù)運算的速度跟處理能力也是優(yōu)于 51 等系列的單片機(jī)。同時它具備極高的集成度,其主頻是168MHz、具有 1024Kflash 存儲器,有 3 個 ADC 共 24 通道,擁有 IIC、TIMER 等眾多外部設(shè)備。STM32F407 單片機(jī)最小系統(tǒng)板包含電源電路、復(fù)位按鍵、串口下載等模塊,同時將單片機(jī)的所有 IO 口通過排針的方式全部引出,便于在做嵌入式開發(fā)時,其他外設(shè)設(shè)備的連接。
圖2 STM32F407 最小系統(tǒng)板電路圖
圖3 電機(jī)直流驅(qū)動模塊電路圖
在門禁系統(tǒng)的最后實施階段,最重要的就是對開關(guān)門電機(jī)的控制。系統(tǒng)通過L298N 驅(qū)動模塊實現(xiàn)對門控電機(jī)進(jìn)行控制,實現(xiàn)門禁系統(tǒng)的最后也是最關(guān)鍵一步:打開、關(guān)閉門禁。該驅(qū)動模塊供電電壓范圍為+5~35V,最大工作功率為20W,可以實現(xiàn)同時對兩路直流電機(jī)的驅(qū)動控制。使能端口 ENA 為高電平時處于有效控制狀態(tài),低電平時無控制信號輸出。
本系統(tǒng)通過 STM32 單片機(jī)輸出 PWM 波,控制該電機(jī)驅(qū)動實現(xiàn)對電機(jī)的調(diào)速控制。在進(jìn)行電機(jī)調(diào)速時根據(jù)電機(jī)工作狀態(tài)表去設(shè)置 IN1 和 IN2,確定電機(jī)的轉(zhuǎn)動方向。然后單片機(jī) I/O 口輸出 PWM 波對驅(qū)動模塊使能端進(jìn)行調(diào)速控制。根據(jù) L298N 直流驅(qū)動模塊電機(jī)工作狀態(tài)表可知,當(dāng)使能信號為高電平時,電機(jī)處于無控制停止?fàn)顟B(tài);當(dāng)使能信號為高電平,并且輸入控制端同為低電平或同為高電平時,電機(jī)處于制動狀態(tài),阻止電機(jī)轉(zhuǎn)動。
檢測提醒電路的功能是實現(xiàn)對來訪人員的位置檢測。并將位置信息傳輸給單片機(jī),控制播報相應(yīng)的語音信息。當(dāng)有人員來訪,靠近門禁至 50cm 時,提醒來訪人員“請出示二維碼”。同時也可實現(xiàn)問候語功能,如在提醒出示二維碼之前先語音播報“歡迎光臨”。本系統(tǒng)對于到訪人員的位置檢測采用 HC-SRF05 超聲波測距模塊,可以實現(xiàn)對測距精度 3mm 的測量,同時對于距離測量范圍可以達(dá)到 2cm~400cm 的無接觸式測量。模塊包括一個超聲波發(fā)射頭與一個超聲波接收頭及外圍的控制電路。同時該模塊通過單片機(jī) I/O 口施密特觸發(fā)方式,輸出高電平,實現(xiàn)發(fā)送 40kHz 方波信號。模塊可以自動檢測是否有超聲波信號返回,當(dāng)檢測到有返回超聲波信號時,單片機(jī)控制 I/O 口輸出一個高電平,高電平持續(xù)的時間就是超聲波從發(fā)射到返回的時間 t。則測試距離 d 為:
本部分實現(xiàn)的功能是對訪客進(jìn)行語音播報提醒功能,本模塊支持任意中文、英文字母、阿拉伯?dāng)?shù)字的文本合成,實現(xiàn)“歡迎光臨”、“請出示二維碼”等語音提醒功能。本系統(tǒng)通過STM32 單片機(jī)的串口進(jìn)行語音播報控制。單片機(jī)的串口 TX、RX 腳分別與模塊的 RX、TX 腳連接,通過 UART 串口向模塊發(fā)送中文GBK 碼、英文或數(shù)字是 ASCII 碼,進(jìn)行語音播報。
系統(tǒng)采用STM32 單片機(jī)作為控制核心,實現(xiàn)有訪客到訪時語音播報,然后對二維碼識別檢驗,判斷是否打開門禁系統(tǒng)。程序主函數(shù)部分采用標(biāo)志位編程的方法實現(xiàn)系統(tǒng)邏輯判斷。首先寫入 flag 標(biāo)志位置 1;此時只進(jìn)行超聲波測距功能的實現(xiàn),當(dāng)有訪客到來檢測離門禁系統(tǒng)距離小于 50cm 時,播報語音“歡迎光臨”同時標(biāo)志位置 2;此時跳出超聲波測距循環(huán),進(jìn)行二維碼掃描等待,等待時間為10s,若 10s 后無動作則標(biāo)志位置 1;重新進(jìn)入超聲波測距循環(huán),若出示二維碼且二維碼正確則標(biāo)志位置 3;實現(xiàn)打開門禁,此時標(biāo)志位置 4;進(jìn)行超聲波檢測,當(dāng)檢測距離超過 100cm 時,標(biāo)志位置 5;持續(xù) 5s 進(jìn)行超聲波測距以檢測訪客是否已全部通過門禁系統(tǒng),若 5s 內(nèi)檢測數(shù)據(jù)均大于 100cm,則標(biāo)志位置 6;實現(xiàn)關(guān)閉門禁,同時標(biāo)志位置 1;若 5s 內(nèi)檢測有到有數(shù)據(jù)小于 100 出門則標(biāo)志位置 5;若出示二維碼錯誤則標(biāo)志位置 7;語音提示“請重新出示有效二維碼”同時標(biāo)志位置 2;進(jìn)行 10s 二維碼待檢測狀態(tài)。
圖4 超聲波測距模塊電路圖
圖5 語音播報電路圖
圖6 系統(tǒng)主程序框圖
本文通過對二維碼生成[4]、數(shù)據(jù)存儲、解碼理論的相關(guān)研究結(jié)合門禁系統(tǒng),提出了基于二維碼對來訪人員身份識別的智能門禁系統(tǒng),該系統(tǒng)相較于其他的門禁系統(tǒng)成本較低。不需要實物開門物品,拿出手機(jī)出示二維碼即可當(dāng)做打開門禁的鑰匙,對用戶來說使用十分方便。同時也可以將來訪人員的到訪時間、個人姓名身份信息等可以存儲于二維碼之中,進(jìn)而實現(xiàn)對來訪用戶的信息存儲。本智能門禁系統(tǒng)的識別不易受外界環(huán)境的干擾,應(yīng)用前景廣闊,在未來的智能家居、小區(qū)安防等均可以有良好應(yīng)用。