新聞中心

EEPW首頁 > 電源與新能源 > 設計應用 > 基于Linux系統(tǒng)的指紋識別門禁系統(tǒng)

基于Linux系統(tǒng)的指紋識別門禁系統(tǒng)

作者: 時間:2016-12-06 來源:網(wǎng)絡 收藏

  指紋作為人體的身體特征,具有唯一性、穩(wěn)定性和不易盜用等特點。隨著指紋識別理論逐漸成熟、指紋采集工具這一難題得到解決,指紋識別已經(jīng)成為目前最廣泛應用的生物識別之一,逐漸取代了傳統(tǒng)的認證識別方式,廣泛應用于金融、公安、證券、門禁系統(tǒng)等領域。指紋識別技術的研究已經(jīng)成為當前建筑智能化研究的熱點。但是對于在Linux 系統(tǒng)下的由FPI 指紋識別模塊、Raspberry Pi 主控模塊、AVR 模塊組成的,采用無線通訊方式定時向用戶發(fā)送郵件來監(jiān)控門鎖狀態(tài)的指紋識別系統(tǒng)的研究至今未見諸報端。本文在不改變現(xiàn)有門鎖結構的前提下,通過設計編程,開發(fā)了一套基于指紋識別的門禁系統(tǒng),定時檢測門鎖狀態(tài)并向用戶發(fā)送報警郵件,大大增強了門鎖的安全性。

本文引用地址:http://m.butianyuan.cn/article/201612/326947.htm

  1 指紋識別的技術原理

  指紋識別的技術原理是從指紋數(shù)據(jù)庫中查找與采集指紋是否匹配的指紋數(shù)據(jù),達到通過辨別身份實現(xiàn)開關門鎖的目的。其基本原理如圖1 所示,指紋識別系統(tǒng)由指紋圖像采集、指紋圖像預處理、指紋特征提取、指紋特征匹配、特征數(shù)據(jù)庫等幾部分組成。指紋圖像預處理采用了Gabor 濾波的方法進行灰度圖濾波去噪,通過將圖像濾波后,對其進行二值化處理使各種噪聲得到濾除或者修正。指紋特征提取是建立在對該點8 鄰點統(tǒng)計分析基礎之上,特征點通過計算CN(Croosing Number)得到。指紋特征匹配的過程是計算兩幅指紋相似程度的過程,在做指紋匹配前必須把不同的指紋圖像校準,找到輸入特征點集和模板特征點集之間的最佳變換。

  指紋識別系統(tǒng)大體上可分為兩個內容:指紋注冊和指紋比對。指紋注冊主要包括指紋采集、指紋圖像預處理、特征點提取和特征值存儲。指紋比對的前3 步操作與指紋注冊完全相同,在特征點提取后,生成的指紋特征值將與存儲在指紋特征數(shù)據(jù)庫的特征值作特征匹配,最后輸出匹配結果。

  

  圖1 指紋識別技術的基本原理

  2 指紋識別系統(tǒng)硬件開發(fā)

  指紋識別系統(tǒng)主要由FPI 指紋識別模塊、Raspberry Pi 主控模塊、AVR 模塊3 部分組成,該硬件結構如圖2 所示。三方通訊實現(xiàn)用戶的指紋錄入和匹配,以及門鎖的開關,并且以發(fā)送郵件的方式來監(jiān)控門鎖的狀態(tài)。FPI 指紋識別模塊強大的圖像處理功能對指紋識別非常靈敏,及時處理接收到的指紋信息,并與Raspberry Pi 通訊;Raspberry Pi 模塊,一方面控制AVR 去檢測門的開關狀態(tài)以及開關門鎖,另一方面控制FPI 指紋錄入和匹配,并在Raspberry Pi 上建立數(shù)據(jù)庫記錄用戶信息;控制器AVR 反饋給Raspberry Pi 門的開關狀態(tài),并且控制電機來開關門鎖,加強了在硬件方面的拓展,可通過硬件在更多方面對門進行監(jiān)測。此外,使用了無線通訊模塊,避免了過多布線可能對原本門鎖結構的破壞,使該系統(tǒng)的硬件組成方便快速。

  

  圖2 系統(tǒng)的硬件結構

  2.1 指紋識別模塊

  指紋模塊基于TI 公司的TMS320VC5509 高級數(shù)字DSP處理器為主核,芯片結構框圖如圖3 所示。高精光學采集頭(TFS-D0307),高速、穩(wěn)定; 標準UART 接口通訊,標準8 字節(jié)通訊協(xié)議, FPI 完成處理接收到的指紋信息, 并與Raspberry Pi主控模塊通訊的工作。

  

  圖3 指紋識別芯片F(xiàn)PI

  2.1.1 圖像采集芯片

  FPI 芯片上集成了圖像采集芯片F(xiàn)PC1011F,FPC1011F指紋傳感器是電容式半導體傳感器件,該電容式指紋傳感器利用了反射式探測技術,屬于平面式采集指紋傳感。相比傳統(tǒng)的電容式傳感器,它采集的是指頭的真皮層,且對干濕手指有良好的適用性。FPC1011F 的指紋采集原理:FPC1011F指紋傳感器是由152×200 個傳感器陣列組成的,每一個陣列是一個金屬電極,充當電容器的一極,安在傳感面上的手指頭的對應點則作為另外一極,其工作原理是基于變極板間距的電容式傳感器,其電容量由式(1)確定:

  

  (式中:C 為電容量;d 為極板間距;ε0為真空介電常數(shù);εr為極板間介質的相對介電常數(shù);s 為極板的有效面積)

  當手指接觸傳感器導電框以后,由式(1) 可知, 谷和脊因為離傳感器陣列的距離不同, 產生了不同的電容值C,經(jīng)過運算放大電路, 形成不同的電壓值, 通過內部的A/D 轉換,獲得高質量的數(shù)字指紋圖像。

  2.1.2 處理器

  該系統(tǒng)采用的主處理器是TMS320VC5509 的32 位定點高速數(shù)字DSP 處理器,開發(fā)板的硬件包括:USB2.0 FullSpeed接口用以傳輸圖像、視頻等高速數(shù)據(jù); 片外外擴1M BytesFLASH; RTL8019AS 網(wǎng)絡接口芯片,實現(xiàn)以太網(wǎng)通訊太網(wǎng)電路;開發(fā)接口:UART(RS232)與上位機實現(xiàn)通訊;2 路10 位A/D 輸入接口。

  2.2 主控模塊

  該系統(tǒng)采用的主控模塊Raspberry Pi,代替了體積龐大的電腦實現(xiàn)控制功能。Raspberry Pi 是一款基于ARM,操作系統(tǒng)采用開源的Linux 系統(tǒng)的個人電腦,配備一枚700MHz 的處理器,支持SD 卡和Ethernet, 擁有兩個USB 接口,以及HDMI 和RCA 輸出支持。Raspberry Pi 一方面控制AVR 去檢測門的開關狀態(tài)以及開關門鎖,另一方面控制FPI 的指紋錄入以及匹配并在Raspberry Pi 上建立數(shù)據(jù)庫記錄用戶信息。

  利用這些硬件便可以進行嵌入式開發(fā),快速的建立起指紋識別系統(tǒng)的硬件系統(tǒng)。

  3 指紋識別系統(tǒng)軟件開發(fā)

  該系統(tǒng)基于Linux 操作系統(tǒng),將自動指紋識別系統(tǒng)移植到嵌入式Linux,在Linux 上進行指紋識別系統(tǒng)的軟件設計,指紋識別系統(tǒng)的軟件設計包括四個方面:上位機與AVR 串口通訊、上位機與指紋模塊串口通訊、維護MYSQL 以及腳本發(fā)送報警。

  3.1 指紋識別的處理過程

  如圖4 所示:首先對串口進行初始化,打開串口設備0、1,設置串口參數(shù),恢復串口未阻塞狀態(tài),串口初始化成功后執(zhí)行用戶選擇功能:注冊開門賬號或注冊關門賬號或運行門禁服務[N/C/R]。選擇系統(tǒng)功能N 后注冊新開門用戶,對同一指紋共獲取3 次圖像,與傳統(tǒng)采集一次圖像相比,杜絕了隨意采集造成的注冊指紋不精和驗證時不易識別的問題。采集指紋成功后輸入用戶個人信息,注冊來自上位機數(shù)據(jù)庫的新ID號并把該用戶指紋信息存入數(shù)據(jù)庫,然后選擇是否繼續(xù)添加用戶。同理用戶選擇系統(tǒng)功能C后完成注冊關門用戶的操作。

  用戶選擇系統(tǒng)功能R 后運行門禁服務,一方面AVR 查詢當前門鎖狀態(tài), 例如把開門的命令賦給門的匹配狀態(tài),如果指紋匹配操作FPI 和門的匹配狀態(tài)相同,則由繼電器接收來自AVR 的開門命令,帶動電機執(zhí)行開門動作,并且記錄當時時間,向本地數(shù)據(jù)庫添加一條新的用戶使用記錄并寫進日志里。同理執(zhí)行關門命令。另一方面AVR 查詢當前電機電流等級,將門鎖的實時開關狀態(tài),由誰執(zhí)行開關門動作和當前門鎖電機電流狀態(tài)通過郵件的方式發(fā)送給用戶,實現(xiàn)對門的實時監(jiān)控,大大增強了門禁系統(tǒng)的安全性。

  3.2 郵件的發(fā)送

  

  圖4 系統(tǒng)工作方式流程圖

  Raspberry Pi 上的ARM 通過RS 232 串口接收來自AVR定時地對門禁狀態(tài)和電流狀態(tài)的查詢信息,并編寫Shell 腳本程序,利用wifi 通過串口傳送給郵件發(fā)送模塊,將報警內容發(fā)送到指定的用戶郵箱中來定時監(jiān)控門鎖的狀態(tài)。程序如下:

  

  這一部分完成信息的打包并將報警內容發(fā)到指定郵箱中的功能。AVR 定時檢測門的狀態(tài)和當前電流的狀態(tài),當沒有人執(zhí)行開關門操作時,door.log 的內容為“0”,當有人執(zhí)行開關門操作或者電流超過一定數(shù)值時,door.log 內容為“1”,其中開關門鎖包含兩種情況:一是已注冊的用戶通過指紋識別成功實現(xiàn)開關門鎖;二是沒有注冊過的用戶指紋識別失敗但是打開了門鎖。文件夾從數(shù)據(jù)庫調用這一數(shù)據(jù)并將數(shù)據(jù)發(fā)送到指定用戶的郵箱里,然后door.log 重新變?yōu)椤?”,如此循環(huán)檢測門的狀態(tài)。

  Raspberry Pi 上的ARM 通過RS232 串口接收來自AVR定時地對門禁狀態(tài)和電流狀態(tài)的查詢信息,并編寫Shell 腳本程序,利用wifi 通過串口傳送給郵件發(fā)送模塊,將報警內容發(fā)送到指定的用戶郵箱中來定時監(jiān)控門鎖的狀態(tài)。

  4 系統(tǒng)測試

  為檢驗該指紋識別門禁系統(tǒng)的性能,打開Linux 程序,注冊登記4 個不同的指紋, 然后用不同的手指作指紋識別測試。分別觀察指紋識別成功和失敗時執(zhí)行機構的動作,一共測試50 次,部分系統(tǒng)測試結果的郵件正文內容如表1 所示。

  表1 系統(tǒng)測試結果表

  

  由表1 可以看出,郵件的內容包括ID、Name、Action、Date四項。其中前七行是已注冊過的用戶通過指紋識別成功實現(xiàn)開關門鎖,所以郵件中會有他們的ID 號和姓名信息,而最后一行的用戶指紋識別失敗但是打開了門鎖,所以郵件中將他們的ID 和姓名設置為NULL,提醒管理員特別注意當時門鎖狀態(tài)以實現(xiàn)管理員對門狀態(tài)的定時監(jiān)控。

  5 結論

文中基于指紋識別技術采用FPI 指紋識別模塊,結合Linux 設計了指紋識別門禁系統(tǒng),設計的一個特點是基于Linux 操作系統(tǒng),建立并發(fā)執(zhí)行環(huán)境,提高CPU 的利用率,并且用Raspberry Pi 主控模塊和無線通訊模塊使得整個結構更加簡單,對系統(tǒng)性能有一個明顯的提高。另外一個特點是定時檢測門鎖狀態(tài)并采用無線通訊方式向用戶發(fā)送報警郵件,大大增強了門鎖的安全性。實用測試結果表明,系統(tǒng)運行良好,能夠進行可靠安全的指紋識別,準確、快速地完成個人身


上一頁 1 2 下一頁

評論


技術專區(qū)

關閉