引言
隨著生活水平的提高,人們對物質(zhì)生活的要求越來越高,尤為注重住宅安全問題。隨著生物特征識別技術(shù)的發(fā)展,指紋識別技術(shù)逐漸進入人們的生活領(lǐng)域,指紋鎖進入了人們的家庭。常見的指紋鎖,需要管理員指紋或者管理員密碼,才能進行指紋和密碼的添加和刪除操作。本文設(shè)計的電子機械鎖,具有上述功能,還可以用正確鑰匙管理指紋和密碼。
常見的指紋鎖配備的機械鎖,可使用普通的正確鑰匙打開,安全級別較低,很容易被專業(yè)人員破解。本文設(shè)計的基于PIC16F72的機械鎖,配套的鑰匙內(nèi)置編碼芯片,能夠設(shè)置正確鑰匙以及發(fā)送鑰匙編碼信息,只有用正確鑰匙才能打開,不能被鐵絲或其他非法鑰匙打開,安全性大大提高。在非法開門的情況下,機械鎖發(fā)送報警信息。
1 、系統(tǒng)設(shè)計方案
電子機械鎖,分為電子鎖和機械鎖這兩個部分。電子鎖以單片機ATmega162為核心,通過指紋識別模塊,完成了對指紋管理的操作;通過鍵盤,完成密碼管理的操作;通過超外差接收模塊,能夠接收來自機械鎖的鑰匙編碼信息,完成與機械鎖的通信。
機械鎖以PIC單片機PIC16F72為核心,獲取鑰匙編碼信息,經(jīng)超外差發(fā)送模塊發(fā)送。超外差發(fā)送和接收模塊的工作頻率在433 MHz,PCB布線時注意超外差模塊,遠離其他器件,不然會影響系統(tǒng)的工作狀態(tài)。另外,該系統(tǒng)要求體積小,供電方便,整個系統(tǒng)的功耗要盡量低。
1.1 電子鎖框圖
電子鎖主體為AVR單片機ATmega162、指紋識別模塊、超外差接收模塊、12 V電子鎖驅(qū)動、門鎖、鍵盤、按鍵和指示燈等,如圖1所示。指紋識別模塊型號為:TFS-M12,采用TI的DSP芯片TMS320VC5501,指紋算法采用TFS-9。穩(wěn)定快速的芯片以及優(yōu)良的指紋算法,不僅提高了整個系統(tǒng)的識別率以及縮短了識別時間,而且大大縮短了整個系統(tǒng)的研發(fā)時間。
電子鎖在不使用的時候,處于睡眠狀態(tài)。用戶打開指紋識別模塊上的金屬防塵罩時,產(chǎn)生喚醒信號,電子鎖進入正常工作狀態(tài)。
正常工作狀態(tài)下,電子鎖支持兩種開門方式:指紋開門和輸入密碼開門。指紋采集頭上輸入指紋,指紋識別模塊將當前指紋與已存指紋進行比較,單片機ATmega162接收到比較結(jié)果,若正確產(chǎn)生開門信號,經(jīng)12 V電子鎖驅(qū)動,打開門鎖。鍵盤輸入密碼,單片機ATmega162將當前輸入密碼和用戶設(shè)置的正確密碼進行比較,若正確產(chǎn)生開門信號,經(jīng)12 V電子鎖驅(qū)動,打開門鎖。輸入指紋和密碼的機會共3次,若3次都錯誤,系統(tǒng)進入睡眠狀態(tài)。
1.2 機械鎖框圖
機械鎖主體為PIC單片機PIC16F72、超外差發(fā)送模塊、設(shè)置鍵、指示燈等,如圖2所示。設(shè)置正確鑰匙步驟:按下設(shè)置鍵,指示燈常亮,插入需要設(shè)置的鑰匙,等待指示燈有規(guī)律的閃爍3下,設(shè)置成功;設(shè)置完成后用正確鑰匙開門1次,恢復正常使用狀態(tài)。當插入錯誤鑰匙或者是鐵絲等非法鑰匙時,指示燈會快速閃爍,并通過超外差發(fā)送模塊發(fā)送報警信息。
為了降低整個系統(tǒng)的功耗,機械鎖在不使用時,處于不工作狀態(tài)。在安裝機械鎖的時候,會在機械鎖的鎖芯安裝一個金屬轉(zhuǎn)接口,該金屬轉(zhuǎn)接口連接了電子鎖的防塵罩,轉(zhuǎn)動金屬轉(zhuǎn)接口,不僅給機械鎖供電使之進入正常工作狀態(tài),還喚醒電子鎖,讓電子鎖進入正常工作狀態(tài)。轉(zhuǎn)動金屬轉(zhuǎn)接口,還使得電子鎖中的單片機ATmega162第4口的第5位(即P4.5)變成高電平,電子鎖只處理來自機械鎖發(fā)出的信息。
機械鎖正常工作狀態(tài)時,插入鑰匙,單片機PIC16F72會識別鑰匙的編碼,若正確,則打開鎖芯上的閥,可以轉(zhuǎn)動鑰匙開門,若錯誤則發(fā)送錯誤鑰匙信息,鎖芯的閥依舊關(guān)閉,不能開門,從而保證了,用戶的安全。
1.3 電子鎖和機械鎖的通信
電子鎖和機械鎖之間的通信是通過超外差發(fā)送和接收模塊完成。機械鎖發(fā)送如圖3所示的信息,每位數(shù)據(jù)寬度為1 ms。由于噪聲的影響,單片機ATmega162只能通過查詢方式接收。
前導碼是由23位數(shù)據(jù)組成。數(shù)據(jù)碼由FAH碼、地址碼以及KEY碼組成,每個數(shù)據(jù)碼有10位,分別由8位數(shù)據(jù)、起始位(1)和結(jié)束位(0)組成。
地址碼就是機械鎖的識別碼,識別碼是惟一的,每次讀取KEY碼,都會將當前地址碼和存儲的地址碼進行比較,若相同才能讀取KEY碼,因此不會接收來自其他用戶的鎖發(fā)出的信息。
KEY碼就是鑰匙的編碼,每個鑰匙的編碼是惟一的,因此可以記錄用戶家庭成員的開門信息,方便用戶查詢。電子機械鎖應(yīng)用在辦公場合時,若發(fā)生偷竊情況,可以查詢最近的開門信息,來確定懷疑對象;也可以查詢特殊鑰匙開門情況,比如保姆工作的具體時間。若發(fā)生非法開門時,KEY碼為0x00,接收到該KEY碼時,產(chǎn)生報警信號。
2、 指紋識別算法原理
2.1 指紋識別算法
指紋識別分為以下4個步驟如圖4所示。
指紋圖像預處理是最重要的一步,關(guān)系到后面提取的特征點的正確與否。
由于指紋采集設(shè)備的不完善性,對于干、濕、臟、老化、磨損的指紋,往往難以采集到清晰的圖像,因此需要圖像增強,是指紋圖像預處理中重要的一步,采用Gabor濾波完成。根據(jù)指紋圖像局部區(qū)域的紋線分布具有較穩(wěn)定的方向和頻率,設(shè)計相應(yīng)的Gabor帶通濾波器,能有效地在局部區(qū)域?qū)χ讣y進行修正和濾噪。Gabor函數(shù)是惟一能達到時頻測不準關(guān)系下界的函數(shù),二維表達式為:
Gabor函數(shù)是二維高斯函數(shù)在空間頻率域的平移函數(shù),σx,σy為對應(yīng)于x方向和y方向的角頻率平移參數(shù)。二維Gabor函數(shù)的實部和虛部可各自表示為一個函數(shù),分別稱為偶Gahor和奇Gabor函數(shù)。偶Gahor函數(shù)適于增強目標物體,而奇Gabor函數(shù)適于增強物體邊緣。
Gabor濾波器系數(shù)分量為:
式中:x=mcosφ+nsinφ;y=-msinφ+ncosφ;(i,j)為當前點的坐標,φ為當前點(塊)的方向,f為當前塊(整體)的正弦平面波的頻率;(m,n)取值范圍與指紋圖像的坐標(i,j)取值范圍相同。σx,σy增大,對噪聲的適應(yīng)能力增強,但有可能會產(chǎn)生偽紋線;減小,消除噪聲的作用減弱。
對于每一點,根據(jù)其方向、頻率,求出Gabor濾波器系數(shù),然后根據(jù)式(3)計算當前點濾波后的值:
從圖5可很明顯地看出,經(jīng)過Gabor濾波處理后,圖像對比增強,紋理清晰,特征明顯,提高了后續(xù)提取指紋特征點的正確率。
2.2 指紋識別模塊的通信協(xié)議
指紋識別模塊作為從設(shè)備,通過串口,由主芯片ATmega162發(fā)送相關(guān)命令對其進行控制。
命令接口:19200b/s 1起始位1停止位(無校驗位)。
主芯片發(fā)送的命令及指紋模塊的應(yīng)答數(shù)據(jù)長度為8 B,數(shù)據(jù)格式如下:
CMD:命令/應(yīng)答類型;P1.P2,P3:命令參數(shù);Q1,Q2,Q3:應(yīng)答參數(shù);CHK:校驗和,為第2字節(jié)到第6字節(jié)的異或值;Q3用于返回操作的有效性信息,表示操作是否成功,數(shù)據(jù)是否存在,采集指紋超時等。
3 、程序設(shè)計
系統(tǒng)從睡眠狀態(tài)啟動時,首先進行系統(tǒng)初始化,然后進入正常工作狀態(tài),如圖6所示。
轉(zhuǎn)動機械鎖上的金屬轉(zhuǎn)接口會改變單片機ATmega162的P4.5的狀態(tài)。開啟金屬轉(zhuǎn)接口,單片機ATmega162處理來自機械鎖發(fā)送的信息;關(guān)閉金屬轉(zhuǎn)接口,單片機ATmega162處理來自電子鎖上指紋識別模塊或鍵盤的信息。
系統(tǒng)還開啟了兩個中斷:設(shè)置中斷和匹配中斷。匹配中斷就是電子鎖和指定的機械鎖進行匹配,只接收來自指定的機械鎖發(fā)出的信息;設(shè)置中斷就是指紋和密碼的管理。
3.1 匹配中斷
匹配中斷是鏈接多特征電子機械鎖兩個部分的前提,初次安裝電子機械鎖必須進行匹配中斷。在開啟該中斷前,必須沒置好正確鑰匙。匹配中斷為外部中斷,通過按下控制系統(tǒng)模塊上的匹配鍵,進入匹配中斷如圖7所示。
3.2 設(shè)置中斷
設(shè)置中斷分為兩種模式:普通模式和特殊模式。特殊模式就是利用正確鑰匙管理指紋和密碼,如圖8所示。
多特征電子機械鎖添加了鑰匙管理指紋和密碼的功能,目前的指紋鎖并不具備該功能。當沒有管理員指紋,而密碼忘記的情況下,該鎖可以用正確鑰匙進行指紋和密碼的添加和刪除,給用戶帶來了方便。
4、 實驗結(jié)果與分析
超外差發(fā)送和接收模塊之間的通信,由于外界噪聲和系統(tǒng)本身的影響,不是每次都能接收到如圖3的信息,可能會出現(xiàn)通信錯誤的情況,為此進行可靠性測試實驗。
用示波器精確測量超外差接收模塊上的波形的時序,調(diào)整代碼,使偵測點落在高電平的中間;仔細計算延時函數(shù),確保時間的準確性。在實際調(diào)試過程中,進行了5組的實驗,每組的測試條件都不同,如溫度、環(huán)境噪聲等,每組測試100次,共計500次的測試,只出現(xiàn)了2次沒有正確識別鑰匙的情況,可靠性達到99.6%,具有實際應(yīng)用價值。
5 、結(jié)語
本文設(shè)計的電子機械鎖,巧妙利用超外差發(fā)送和接收模塊,把兩個相對獨立的部分鏈接起來。整個系統(tǒng)以單片機ATmega162為核心,直接控制指紋識別模塊和鍵盤,并通過超外差發(fā)送和接收模塊,間接控制機械鎖部分。多特征電子機械鎖不僅可以用管理員指紋和密碼管理用戶信息,還可以使用正確鑰匙管理用戶信息,目前市場上還沒有具備該功能的鎖出現(xiàn)。該鎖功能強大,給用戶帶來了方便和快捷的同時,安全性也得到大大提高。
責任編輯:gt
評論