新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于ARM 的指紋識別門禁系統(tǒng)的設(shè)計

基于ARM 的指紋識別門禁系統(tǒng)的設(shè)計

作者: 時間:2017-10-21 來源:網(wǎng)絡(luò) 收藏

  1.概述

本文引用地址:http://m.butianyuan.cn/article/201710/366978.htm

  隨著科學(xué)技術(shù)的不斷進(jìn)步,人們對現(xiàn)代化辦公和生活場所提出了更高層次的安全管理需求,普通的門鎖系統(tǒng)和手工出入管理已經(jīng)不符合現(xiàn)代人的實際需求。由于安防業(yè)的智能化和網(wǎng)絡(luò)化,為順應(yīng)智能樓宇、智能小區(qū)的發(fā)展,門禁系統(tǒng)也必須實現(xiàn)更可靠、更安全和更方便的智能系統(tǒng)?,F(xiàn)代門禁系統(tǒng)綜合利用了傳感技術(shù)、數(shù)字信息處理、計算機(jī)技術(shù)、多媒體技術(shù)和網(wǎng)絡(luò)技術(shù),以實現(xiàn)門禁系統(tǒng)信息的采集、傳輸和處理。

  目前智能門禁管理系統(tǒng)已廣泛用于工廠、學(xué)校、寫字樓宇、物業(yè)小區(qū)、商店、金融系統(tǒng)、電信系統(tǒng)、軍事系統(tǒng)、賓館等多種場合,大大提高了整體的工作效率、保障了系統(tǒng)安全,智能、安全和高效的現(xiàn)代化門禁系統(tǒng)已經(jīng)成為社會發(fā)展的必然趨勢,同時它也是現(xiàn)代化建筑的一個重要組成部分。

  傳統(tǒng)的機(jī)械鑰匙、用戶ID+密碼以及智能卡等的保護(hù)措施存在著丟失、遺忘、復(fù)制以及被盜用的隱患,在這種情況下,最新發(fā)展的技術(shù)為上述方法的不足提供了一個很好的解決方案。由于具有唯一性、不變性和貼身性的特點,成為了眾多技術(shù)中備受青睞的一個。且隨著技術(shù)和計算機(jī)技術(shù)的飛速發(fā)展,算法已達(dá)到迅速、準(zhǔn)確和可靠的水平,已越來越多的應(yīng)用在現(xiàn)代智能門禁系統(tǒng)的前端信息采集部分。

  目前使用較多的是指紋單機(jī)門禁系統(tǒng),其采集、處理和識別都在一個控制系統(tǒng)中完成,只適用于小系統(tǒng)和安裝位臵集中的單位,且通信線路專用,安裝好后不易于更換管理中心的位臵。在大系統(tǒng)和安裝位臵分散的單位,單機(jī)門禁系統(tǒng)必然耗費(fèi)較大且效率不高。因此有必要采用TCP/IP的網(wǎng)絡(luò)型門禁控制系統(tǒng),實現(xiàn)網(wǎng)絡(luò)控制和遠(yuǎn)程控制。

  系統(tǒng)采用指紋采集作為門禁系統(tǒng)的前端部分,由于具有唯一性、不變性和貼身性的特點,使它成為一種安全有效的身份驗證方法。另外,系統(tǒng)采用基于TCP/IP協(xié)議的網(wǎng)絡(luò)型門禁控制器是通過局域網(wǎng)傳遞數(shù)據(jù)的,管理中心隨時可以變更,不需要重新布線,很容易實現(xiàn)網(wǎng)絡(luò)控制和遠(yuǎn)程控制,并且指紋的處理和識別可以在運(yùn)算速度更快的管理中心實現(xiàn),這樣控制器功能簡單,而且多個控制器可以連接到一個服務(wù)器,提高了門禁系統(tǒng)控制和管理的效率。

  1.1國內(nèi)外研究現(xiàn)狀和發(fā)展

  據(jù)考古學(xué)家證實,公元前7000年-6000年,指紋作為身份鑒別的工具已經(jīng)在敘利亞和中國開始應(yīng)用。但是由于缺乏專門性研究,未能將指紋識別技術(shù)上升為一門科學(xué)。20世紀(jì)早期,指紋識別正式成為身份識別的方法并被法律部門用作身份鑒定的依據(jù),并開始在世界范圍內(nèi)建立指紋識別機(jī)構(gòu)和罪犯指紋檔案。指紋識別的有關(guān)技術(shù),包括指紋采集技術(shù)、指紋分類技術(shù)和指紋匹配技術(shù)都得到了較快發(fā)展。例如美國聯(lián)邦調(diào)查局在1924年庫存樣本指紋就達(dá)到了81萬枚。20世紀(jì)80年代,個人電腦、光學(xué)掃描等技術(shù)革新使得他們作為指紋取像的工具成為現(xiàn)實,從而使指紋識別可以在其他領(lǐng)域中得以應(yīng)用。隨著取像設(shè)備的引入及其飛速發(fā)展,生物指紋識別技術(shù)的逐漸成熟,可靠的比對算法的發(fā)現(xiàn)都為指紋識別技術(shù)提供了更廣闊的舞臺。目前,利用計算機(jī)進(jìn)行指紋識別的技術(shù)在國外已很成熟,并且已經(jīng)開始大規(guī)模廣。

  智能安防的日益流行對于樓宇管理自動化和安全監(jiān)控提出了更高的安全性和可靠性要求,基于指紋識別的智能門禁管理系統(tǒng)應(yīng)用得越來越廣泛,在一些發(fā)達(dá)國家已得到普遍的應(yīng)用。面對規(guī)模已經(jīng)越來越大的門禁控制系統(tǒng),普通的單機(jī)門禁系統(tǒng)已經(jīng)不適合,比如智能小區(qū)、景點門禁系統(tǒng)等。因此必須要開發(fā)進(jìn)行遠(yuǎn)距離傳輸?shù)腡CP/IP的網(wǎng)絡(luò)型門禁控制系統(tǒng),由于網(wǎng)絡(luò)型門禁控制系統(tǒng)很容易實現(xiàn)遠(yuǎn)程控制和分布式管理,還可以方便日后擴(kuò)容和維護(hù),日益變得重要。

  1.2 本文的研究內(nèi)容

  論文的研究內(nèi)容分為指紋識別的算法研究和門禁控制器硬件實現(xiàn)兩個部分。在以往算法的研究基礎(chǔ)上,利用指紋圖像灰度梯度和方差的結(jié)合對指紋分割方法進(jìn)行改進(jìn),仿真實驗證明本文中的改進(jìn)算法魯棒性好。論文在以S3C2410為核心和嵌入式操作系統(tǒng)Linux的基礎(chǔ)上,設(shè)計開發(fā)了基于指紋識別的以太網(wǎng)門禁控制系統(tǒng)。

  本文具體內(nèi)容主要有以下幾個方面:

 ?。?)系統(tǒng)整體方案概述和設(shè)計:根據(jù)系統(tǒng)功能要求,設(shè)計指紋識別以太網(wǎng)門禁系統(tǒng),重點闡述了其中關(guān)鍵模塊的硬件設(shè)計。

  (2)指紋識別算法的理論分析和仿真:研究了指紋識別算法,主要包括指紋圖像預(yù)處理以及指紋圖像的特征提取和匹配兩部分。

 ?。?)系統(tǒng)軟件總體設(shè)計:闡述了門禁控制系統(tǒng)軟件的總體設(shè)計,然后對各模塊進(jìn)行應(yīng)用編程,主要包括視頻采集、指紋采集以及TCP/IP網(wǎng)絡(luò)應(yīng)用編程。

 ?。?)最后,對全文進(jìn)行了總結(jié),并對指紋識別以太網(wǎng)指紋門禁控制系統(tǒng)的未來發(fā)展趨勢做出展望。

  2.1系統(tǒng)硬件設(shè)計

  2.1.1系統(tǒng)概述及設(shè)計原則

  門禁管理系統(tǒng)是新型現(xiàn)代化的安全管理系統(tǒng),主要用于管理重要部門出入口,是實現(xiàn)安全防范管理的有效措施,適用于各種重要部門,如企業(yè)、政府、銀行、賓館、金融貿(mào)易樓和綜合辦公樓等。

  門禁系統(tǒng)一般分為獨立型和聯(lián)網(wǎng)型,聯(lián)網(wǎng)型門禁系統(tǒng)通訊方式常見的有RS232、RS485、CAN和TCP/IP,采用TCP/IP通訊方式的聯(lián)網(wǎng)型門禁系統(tǒng)簡稱為TCP/IP網(wǎng)絡(luò)門禁系統(tǒng)。相對其它通訊方式,基于TCP/IP網(wǎng)絡(luò)通信的門禁系統(tǒng)通過局域網(wǎng)傳遞數(shù)據(jù),更容易實現(xiàn)遠(yuǎn)程控制和分布式管理。

  從門禁鎖的控制方式來看,主要有鑰匙、密碼、磁卡、IC卡等。隨著現(xiàn)代生活對安防水平要求的提高,從目前已有的門禁鎖具的控制方式來看,存在著一定的安全隱患,鑰匙、密碼和磁卡容易復(fù)制、竊取;IC卡的安全性較高,但也容易丟失。因此,現(xiàn)在人們心目中的門禁鎖具必須具有方便、安全,美觀等特點。隨著計算機(jī)技術(shù)的飛速發(fā)展,基于人體生理特征的身份識別系統(tǒng)逐漸被人們開始采用,目前,從實用角度看,指紋識別技術(shù)要比其它生物識別技術(shù)更安全和方便。

  基于指紋識別的TCP/IP網(wǎng)絡(luò)門禁系統(tǒng)方案設(shè)計的前提是滿足用戶的各種需求,利用系統(tǒng)強(qiáng)大的功能以及良好的性價比,讓用戶得到最好的服務(wù)和最大的利益。方案的設(shè)計原則:實用性、穩(wěn)定性、安全性、可擴(kuò)展性和易維護(hù)性。

  2.1.2 系統(tǒng)組成及功能

  一般RS485門禁控制器只支持128臺或者256臺設(shè)備聯(lián)網(wǎng),而TCP/IP門禁控制器理論上可以支持無限多臺門禁設(shè)備。所以TCP/IP網(wǎng)絡(luò)型門禁控制器是最適合大型大面積的門禁系統(tǒng)聯(lián)網(wǎng)的。例如供電部門的變電站門禁的聯(lián)網(wǎng)管理、銀行儲蓄所的門禁管理等都適合這種模式?;ヂ?lián)網(wǎng)的門禁系統(tǒng)結(jié)構(gòu)如圖2-1所示。

圖2-1互聯(lián)網(wǎng)的門禁系統(tǒng)結(jié)構(gòu)圖

  基于指紋識別的TCP/IP門禁系統(tǒng)方案基本組成:

 ?。?)管理中心:一臺連接到門禁控制器或網(wǎng)絡(luò)的PC機(jī),通過局域網(wǎng)或廣域網(wǎng)與其它門禁控制器或PC機(jī)連接,實現(xiàn)門禁控制器采集信息的處理和分析,并發(fā)送控制指令,以及對相應(yīng)的軟件管理。

 ?。?)門禁管理軟件:管理工作站通過管理軟件遠(yuǎn)程監(jiān)控服務(wù)器和各門禁控制器的工作狀態(tài),實現(xiàn)各種管理功能。

  (3)門禁控制器:用于前端信息的采集、傳輸和處理,并控制門禁的電控鎖和門鈴,執(zhí)行處理器下達(dá)的開門、報警、啟動門鈴等指令以及提供通信多機(jī)連接端口等。

 ?。?)電子門鎖:門禁系統(tǒng)的執(zhí)行機(jī)構(gòu)和關(guān)鍵設(shè)備,用于對物理通道的控制。

 ?。?)電力設(shè)備:采用直流電源作為整個門禁系統(tǒng)的運(yùn)行電源和門鎖電源(一般采用內(nèi)部電源)。

 ?。?)聯(lián)動設(shè)備:可與門禁控制器所有輸入、輸出節(jié)點進(jìn)行聯(lián)動,實現(xiàn)防盜報警、消防報警等大型系統(tǒng)的聯(lián)動,一般在門禁管理軟件中對聯(lián)動設(shè)備進(jìn)行相關(guān)的編程設(shè)臵。

 ?。?)通訊設(shè)備:包括交換機(jī)設(shè)備、路由器和MODEM等,實現(xiàn)設(shè)備的網(wǎng)絡(luò)連接。

  指紋識別門禁系統(tǒng)的主要功能特點:

 ?。?)采用高效的指紋識別模塊,可使指紋直接開鎖,使用方便快捷,具有很高的安全性。

  (2)應(yīng)用處理器和Linux操作系統(tǒng),可以很好的保證門禁系統(tǒng)獨立連續(xù)工圖2-1互聯(lián)網(wǎng)的門禁系統(tǒng)結(jié)構(gòu)圖

  (3)系統(tǒng)采用指紋與密碼的結(jié)合,可以根據(jù)實際需要設(shè)臵多種認(rèn)證模式,支持多用戶,多組別組合開門,具有良好的靈活性。

  (4)系統(tǒng)配以科學(xué)化管理軟件,可以實現(xiàn)門禁系統(tǒng)的科學(xué)化管理。

 ?。?)應(yīng)用TCP/IP以太網(wǎng)模塊,可以方便實現(xiàn)網(wǎng)絡(luò)控制和遠(yuǎn)程控制。

  (6)系統(tǒng)采用分級管理,分為管理者和用戶,采用逐級權(quán)限管理,將用戶的指紋采集并存儲在中央管理主機(jī)上,根據(jù)用戶的開門權(quán)限,將用戶指紋下傳至相應(yīng)的子門禁系統(tǒng)中。

 ?。?)系統(tǒng)有視頻監(jiān)控和報警等一些相應(yīng)的輔助功能,提高系統(tǒng)的安全性。

  本文基于ARM9(S3C24lO)設(shè)計和實現(xiàn)了一種指紋識別的網(wǎng)絡(luò)型門禁控制器。采用指紋識別器為前端信息的采集,用以太網(wǎng)控制器實現(xiàn)門禁控制器與上位PC機(jī)間的通信,并利用LCD來實時顯示狀態(tài),并可以提供一些其它的輔助功能,如語音提示、報警和攝像監(jiān)控等。 指紋型網(wǎng)絡(luò)門禁控制系統(tǒng)框架如圖2-2所示。

  圖2-2門禁系統(tǒng)框圖

  2.2 嵌入式主控模塊設(shè)計

  2.2.1 ARM微處理器與地址空間映射

  本系統(tǒng)選擇了韓國三星公司的高性能ARM9微處理器芯片S3C241O作為主處理器,S3C2410芯片是基于ARM920T內(nèi)核,五級流水線和哈佛結(jié)構(gòu),內(nèi)核工作電壓為1.8V,輸入輸出電壓為3.3V,具有180MHZ/200MIPS性能,是高性能和低功耗的硬宏單元。ARM920T內(nèi)核具有全性能的MMU、指令和數(shù)據(jù)Cache以及高速AMBA總線接口。

  S3C2410內(nèi)部結(jié)構(gòu)比較復(fù)雜,可提供很多可擴(kuò)展的功能模塊,主要有MMU虛擬內(nèi)存管理單元,LCD控制器(支持上到4k色的STN和256k色的TFT),3通道UART,4通道DMA,4通道具備PWM功能的定時器,I/O口,具有日歷功能的RTC(實時時鐘),8通道10bit精度ADC和觸摸屏控制器,IIC總線接口,IIS數(shù)字音頻總線接口,兩個USB2.0全速主設(shè)備及一個從設(shè)備,SD/MMC卡控制器,2通道SPI及內(nèi)臵lQ/100M的網(wǎng)絡(luò)接口等。

  2.2.2 NAND FLASH單元

  Flash是一種可在系統(tǒng)(In-System)進(jìn)行電擦寫、掉電后信息不丟失的存儲器。它的高集成度和低成本使它成為市場主流。Flash芯片具有低功耗、大容量、擦寫速度快、可整片或分扇區(qū)在系統(tǒng)編程(燒寫)、擦除等特點,并且可由內(nèi)部嵌入的算法完成對芯片的操作,因而在各種嵌入式系統(tǒng)中得到了廣泛的應(yīng)用。作為一種非易失性存儲器,F(xiàn)lash在系統(tǒng)中通常用于存放程序代碼、常量表以及一些在系統(tǒng)掉電后需要保存的用戶數(shù)據(jù)等。常用的Flash為8位或16位的數(shù)據(jù)寬度,編程電壓為單3.3V。

  Flash技術(shù)根據(jù)不同的應(yīng)用場合也分為不同的發(fā)展方向,有擅長存儲代碼的NOR Flash和擅長存儲數(shù)據(jù)的NAND Flash。同時,S3C2410內(nèi)部集成了NAND Flash控制器,為了支持系統(tǒng)從NAND Flash中啟動,S3C24lO內(nèi)部有一塊被稱為墊腳石(Steppingstone)的SRAM緩存。如果選擇從NAND Flash中啟動,在啟動時S3C2410會自動的將NAND Flash存儲器中最前面的4KB數(shù)據(jù)拷貝到S3C24lO內(nèi)部的SRAM中并自動執(zhí)行。如果這4KB存放的是啟動代碼,那么啟動代碼就可以從S3C241O內(nèi)部的SRAM中執(zhí)行,啟動代碼初始化系統(tǒng)和外部SDRAM后將存儲在NAND Flash中的操作系統(tǒng)和應(yīng)用程序拷貝到外部SDRAM中,這時整個系統(tǒng)就可以啟動了。

  在本系統(tǒng)中,采用的是三星公司的K9F5608U芯片,其電路原理圖如圖2-3所示。

  圖2-3 NAND FLASH原理圖

  2.2.3 SDRAM單元

  SDRAM具有容量大、存取速度快、成本低的特點,得到了廣泛的應(yīng)用。與Flash存儲器相比,SDRAM不具有掉電保持?jǐn)?shù)據(jù)的特性,但存取速度高于Flash存儲器,且具有讀/寫屬性,因此SDRAM在系統(tǒng)中主要用作程序的運(yùn)行空間、數(shù)據(jù)以及堆棧區(qū),是系統(tǒng)啟動之后進(jìn)行存取操作的存儲器。

  S3C2410在片內(nèi)具有獨立的SDRAM刷新控制邏輯,可方便地與SDRAM連接。同時,由于S3C24lO片內(nèi)的存儲空間不大,大量的數(shù)據(jù)都要通過SDRAM暫時存放和交換,即動態(tài)存儲區(qū)。系統(tǒng)啟動時,CPU首先從起始地址讀取啟動代碼進(jìn)行系統(tǒng)初始化,在完成系統(tǒng)初始化后,程序代碼一般調(diào)入SDRAM中運(yùn)行以提高系統(tǒng)的運(yùn)行速度。SDRAM存儲單元猶如一個電容,總是傾向于放電,為避免數(shù)據(jù)丟失,必須定時充電刷新。

  圖2-4 SDRAM 外圍接口

  2.2.4 USB及USB攝像頭單元

  USB(Universal Serial Bus)即通用串行總線,是現(xiàn)在非常流行的一種快速、雙向、廉價、可以進(jìn)行熱插拔的接口。隨著嵌入式技術(shù)的快速發(fā)展,USB的應(yīng)用已經(jīng)逐漸從PC機(jī)擴(kuò)展到了嵌入式技術(shù)中,并且發(fā)揮著重要的作用。USB設(shè)備之所以會被大量應(yīng)用,主要具有以下優(yōu)點:

 ?。?)可以熱插拔,使用方便。

  (2)系統(tǒng)總線供電,并可提供5V/500mA電源,具有獨立供電特點。

 ?。?)支持設(shè)備眾多,支持多種設(shè)備類,例如鼠標(biāo),鍵盤,攝像頭等。

 ?。?)連接靈活,可以連接多個設(shè)備,最多可擴(kuò)127個,連接的方式也非常靈活,既可以使用串行連接,也可以使用集線器Hub把多個設(shè)備連接在一起再與PC的USB口相連。

 ?。?)速度快,支持高速數(shù)據(jù)傳輸,USBl.1是12Mb/s,USB2.0高達(dá)480Mb/s S3C2410帶有兩個USB主設(shè)備控制器和一個USB從設(shè)備控制器,這樣可以方便USB設(shè)備的使用。在設(shè)計開發(fā)一個USB外設(shè)的時候,主要需要編寫三部分的程序:固件程序、USB驅(qū)動程序和客戶應(yīng)用程序。USB的電路連接圖如圖2-5 所示。

  圖2-5 USB電路連接圖

  USB接口的設(shè)備可以方便應(yīng)用到嵌入式系統(tǒng)中,具有USB接口的優(yōu)盤因為存儲容量大,價格低,在嵌入式系統(tǒng)中一般可以用來存儲數(shù)據(jù)。在門禁控制器中,可以用來存儲初始化的資料數(shù)據(jù)也可以存儲采集到的重要數(shù)據(jù),方便用戶的保存和修改。另外,本系統(tǒng)中應(yīng)用到的視頻監(jiān)控就用到了USB接口的攝像頭。

  2.3 界面顯示接口模塊設(shè)計

  LCD(Liquid Crystal Display)稱為液晶。LCD顯示器的基本工作原理是通過給不同的液晶單元供電,控制其光線的通過與否,從而達(dá)到顯示的目的。因此,LCD的驅(qū)動控制器是對每個液晶單元的通電的控制。液晶工作時使用的是外部的光線,其光線照明方式有兩種:傳送式和反射式。由于液晶自己本身并不發(fā)光,所以與CRT相比,液晶顯示器的耗電量較低。

  本系統(tǒng)選用傳送式背光(CCFL)彩色STN液晶屏,LCD的控制器使用S3C2410的內(nèi)部集成的控制器。系統(tǒng)選用5.7寸、320×240像素、256色的彩色LCD屏。其可提供4/8/12/16位顏色模式,電源操作范圍寬(2.7v-5.5V),低功耗設(shè)計可滿足系統(tǒng)省電的要求。 為了保證LCD正常工作,一定要保證硬件正確連接,S3C2410與STN-LCD屏的關(guān)鍵電路連接如2-6圖所示。

  圖2-6 S3C2410與LCD連接圖

 ?。?)S3C2410上液晶數(shù)據(jù)線VD[19:23]、VD[10:15]、VD[3:7]分別對應(yīng)R、G、B的三色信息。一個R、G、B共16bits的組合代表了一個像素的信息。

 ?。?)S3C24lO上液晶電壓控制信號VM.VDEN與LCD的ENAB信號連接,保證數(shù)據(jù)的有效指示。

  (3)S3C2410液晶的位時鐘信號VCLK與LCD的時鐘信號CK連接。在VM-VDEN信號有效的情況下,LCD控制器送出的數(shù)據(jù)在VCLK的上升沿送出,在下降沿時被LCD驅(qū)動器采樣。

 ?。?)S3C2410的液晶幀時鐘信號VF-VS與LCD的幀同步信號連接,LCD控制器在一個完整幀顯示完成后立即插入一個VFRAME信號,并開始新的一幀。

 ?。?)S3C24lO的液晶線時鐘信號VL.HS與LCD的行同步信號連接,LCD控制器在整個水平線數(shù)據(jù)移入LCD驅(qū)動器后插入一個VLINE信號。

  2.4 指紋識別模塊設(shè)計

  指紋采集器采集到指紋圖像后,才能被計算機(jī)進(jìn)行識別、處理,指紋圖像的質(zhì)量會直接影響到識別的精度以及指紋識別系統(tǒng)的處理速度,因此指紋采集技術(shù)是指紋識別系統(tǒng)的關(guān)鍵技術(shù)之一。因為指紋的表面積相對較小,日常生活中手指常常會受到磨損,所以獲得優(yōu)質(zhì)的指紋細(xì)節(jié)圖像是一項十分復(fù)雜的工作。目前主要使用的指紋采集技術(shù)有光學(xué)指紋采集技術(shù),半導(dǎo)體指紋采集技術(shù)和超聲波指紋采集技術(shù)。

  光學(xué)指紋采集是歷史久遠(yuǎn)、使用最廣泛的技術(shù),它是將手指放在光學(xué)鏡片上,手指在內(nèi)臵光源照射下,用棱鏡將其投射在電荷耦合器件(CCD)上,進(jìn)而形成脊線(指紋圖像中具有一定寬度和走向的紋線)呈黑色、谷線(紋線之間的凹陷部分)呈白色的數(shù)字化的、可被指紋設(shè)備算法處理的多灰度指紋圖像。優(yōu)點是一定程度上適應(yīng)溫度的變異,較為廉價,可達(dá)到500DPI的較高分辨率,但存在要求足夠大的尺寸,且過分干燥和過分油膩的手指也將使光學(xué)指紋產(chǎn)品的效果變壞的缺點。 半導(dǎo)體指紋采集技術(shù)又有硅電容指紋圖像傳感器、半導(dǎo)體壓感應(yīng)傳感器和半導(dǎo)體溫度感應(yīng)傳感器三種類型。最常見的指紋傳感器是半導(dǎo)體指紋傳感器,它通過電子度量來捕捉指紋,在半導(dǎo)體金屬陣列上能結(jié)合大約100,O00個電容傳感器,其外面是絕緣的表面。傳感器陣列的每一點是一個金屬電極,充當(dāng)電容器的一極,按在傳感面上的手指頭的對應(yīng)點則作為另一極,傳感面形成兩極之間的介電層。由于指紋的脊和谷相對于另一極之間的距離不同(紋路深淺的存在),導(dǎo)致硅表面電容陣列的各個電容值不同,測量并記錄各點的電容值,就可以獲得具有灰度級的指紋圖像。

  半導(dǎo)體指紋采集設(shè)備可以獲得相當(dāng)精確的指紋圖像,分辨率可高達(dá)600DPI,并且指紋采集時不需要光學(xué)采集設(shè)備要求的較大面積的采集頭。由于半導(dǎo)體芯片的體積小巧、功耗很低,可以集成到許多現(xiàn)有設(shè)備中,這是光學(xué)采集設(shè)備所無法比擬的。隨著各種工藝技術(shù)的不斷發(fā)展,芯片的防靜電性能和耐用度也得到了很大的改善,現(xiàn)在許多指紋識別系統(tǒng)研發(fā)工作都采用半導(dǎo)體采集設(shè)備來進(jìn)行。

  本系統(tǒng)使用Veridicom公司的半導(dǎo)體指紋采集傳感器FPS200,其核心技術(shù)是基于高可靠性硅傳感器芯片設(shè)計。FPS200是Veridicom公司在吸收了己廣泛應(yīng)用的FPSll0系列傳感器優(yōu)點的基礎(chǔ)上,推出的新一代指紋傳感器。其表面運(yùn)用Veridicom公司專利技術(shù)而制成,堅固耐用,可防止各種物質(zhì)對芯片的劃傷、腐蝕、磨損等,F(xiàn)PS200能承受超過8KV的靜電放電(ESD),因此FPS200可應(yīng)用在苛刻的環(huán)境下。FPS200采用CMOS技術(shù),獲取的圖像為256×300像素,分辨率為500DPI(點每英寸)并且內(nèi)臵8位高速A/D轉(zhuǎn)換器,適合更復(fù)雜的手指,大大減低了誤識率(FAR)和拒識率(FRR)。其內(nèi)部控制邏輯如圖2-7所示。

  圖2-7 FPS200內(nèi)部邏輯圖

  3.指紋識別算法研究及實現(xiàn)

  指紋識別技術(shù)的應(yīng)用系統(tǒng)大致可以分為兩類:即驗證(Verification)和辨識(Identification)。驗證就是通過把一個現(xiàn)場采集到的指紋與己經(jīng)登記的指紋進(jìn)行一對一的對比(1:1)來確認(rèn)身份的過程。辨識則是把現(xiàn)場采集到的指紋同指紋數(shù)據(jù)庫中的指紋逐一對比,從中找出與現(xiàn)場指紋相匹配的指紋,這也叫一對多匹配(1:N)。驗證和辨識在對比算法和系統(tǒng)設(shè)計上各具技術(shù)特點。 所有的生物識別系統(tǒng)都包括如下幾個處理過程:采集、對比和匹配。指紋識別處理也一樣,它包括指紋圖像采集、指紋圖像預(yù)處理、特征提取及匹配等過程。指紋識別系統(tǒng)的結(jié)構(gòu)如圖3-1所示。

  圖3-1指紋識別系統(tǒng)結(jié)構(gòu)

  4.門禁控制系統(tǒng)軟件設(shè)計

  4.1 門禁控制系統(tǒng)總體軟件設(shè)計

  系統(tǒng)采用ARM和指紋識別模塊實現(xiàn)基于Linux操作系統(tǒng)下TCP/IP的網(wǎng)絡(luò)型門禁系統(tǒng)。系統(tǒng)中將門禁控制器作為服務(wù)器,以太網(wǎng)終端的上位機(jī)PC作為客戶端。上位PC機(jī)可以對多個控制器通過局域網(wǎng)或互聯(lián)網(wǎng)對其進(jìn)行訪問、查詢和設(shè)臵,一個客戶端可以登陸多個服務(wù)器,一個服務(wù)器也可以支持多個用戶的并發(fā)訪問。系統(tǒng)在完成門禁系統(tǒng)的功能的同時,還可以提供視頻監(jiān)控和報警的聯(lián)動管理。

  本文主要描述了系統(tǒng)指紋識別模塊和視頻監(jiān)控兩個方面。門禁控制器的程序流程如圖4-1所示。

  圖4-1 門禁控制器程序流程圖

  開始初始化控制器,通過網(wǎng)卡AX88796向客戶端發(fā)送聯(lián)絡(luò)數(shù)據(jù)包,等待客戶端的回應(yīng),建立起控制器與客戶端的聯(lián)機(jī)工作。然后開啟攝像頭不斷采集現(xiàn)場圖像,將采集到的圖像發(fā)送到客戶端,客戶端通過瀏覽器可以對現(xiàn)場進(jìn)行實時監(jiān)控。同時,系統(tǒng)等待鍵盤輸入用戶ID,并進(jìn)行指紋采集,此時創(chuàng)建數(shù)據(jù)傳輸任務(wù),將采集到的指紋圖像數(shù)據(jù)和用戶ID在SRAM中進(jìn)行打包,然后發(fā)送至客戶端,由客戶端接收到的ID和指紋圖像進(jìn)行處理和對比,控制器創(chuàng)建數(shù)據(jù)接收任務(wù),接收客戶端返回的認(rèn)證結(jié)果,并由控制器進(jìn)行相應(yīng)的顯示和控制。在實際中,用戶ID和指紋可以設(shè)臵成多種認(rèn)證模式進(jìn)行控制,增加用戶ID有利于提高服務(wù)器的辨認(rèn)對比的速度。

  4.2 指紋圖像采集

  系統(tǒng)的指紋采集模塊為SPI串口模塊,指紋的采集工作由檢測到手指中斷開始的,系統(tǒng)檢測到中斷就會從串口發(fā)送一個字符控制FPS200開始采集。FPS200指紋采集采用分行方法對指紋圖像進(jìn)行采集和傳輸,其指紋采集流程圖如下。

  圖4-2 指紋采集流程圖

  系統(tǒng)首先打開FPS200指紋采集儀,初始化系統(tǒng)寄存器,然后查詢等待,在沒有檢測到手指時,F(xiàn)PS200處于睡眠狀態(tài),在檢測到手指中斷時,就可進(jìn)行指紋的采集。

  4.3 網(wǎng)絡(luò)通信

  4.3.1 TCP/IP協(xié)議

  Linux支持多種不同的網(wǎng)絡(luò)協(xié)議,TCP/IP是Linux系統(tǒng)中最健壯、速度最快和最可靠的部分。TCP/IP協(xié)議包括了各個層次上的眾多協(xié)議,如ARP、IP、ICMP、TCP和UDP等。下面主要介紹網(wǎng)絡(luò)編程中涉及到的傳輸層TCP和UDP協(xié)議,其中TCP協(xié)議是一個面向連接的傳輸層協(xié)議,它為網(wǎng)絡(luò)上的兩臺主機(jī)的應(yīng)用程序提供一個可靠的字節(jié)流傳輸通道。面向連接意味著兩個使用TCP協(xié)議的應(yīng)用程序在彼此交換數(shù)據(jù)前必須先建立一個TCP連接。UDP協(xié)議是一個不可靠、面向無連接的傳輸層協(xié)議,提供簡單的端到端通信服務(wù)。UDP不能保證數(shù)據(jù)的可靠傳輸, 可能存在數(shù)據(jù)丟失和次序錯誤。因此,系統(tǒng)因為對數(shù)據(jù)要求高可靠性需選用提供可靠連接的TCP協(xié)議。

  TCP對話通過三次握手來初始化的,三次握手的目的是使數(shù)據(jù)段的發(fā)送和接收同步,告訴其它主機(jī)其一次可接收的數(shù)據(jù)量,并建立連接。TCP實體所用的基本協(xié)議是滑動窗口協(xié)議,當(dāng)發(fā)送方傳送一個數(shù)據(jù)報時,它將啟動計時器,當(dāng)該數(shù)據(jù)報到達(dá)目的地后,接收方的TCP實體返向發(fā)送一個數(shù)據(jù)報,其中包含一個確認(rèn)序號,意思是希望收到下一個數(shù)據(jù)報的順序號。如果發(fā)送方定時器超時,那么發(fā)送方會重發(fā)該數(shù)據(jù)報。

  通常應(yīng)用程序通過打開一個SOCKET使用TCP服務(wù),TCP管理到其它 SOCKET的數(shù)據(jù)傳遞??梢哉f,通過IP的源/目的可以唯一地區(qū)分網(wǎng)絡(luò)中的兩個設(shè)備的關(guān)聯(lián),通過SOCKET的源/目的可以唯一地區(qū)分網(wǎng)絡(luò)中兩個應(yīng)用程序的關(guān)聯(lián)。因此,系統(tǒng)中門禁控制器作為服務(wù)器與外部的監(jiān)控客戶端的通信均可由SOCKET編程來完成。

  4.3.2 系統(tǒng)網(wǎng)絡(luò)通信軟件設(shè)計

  系統(tǒng)是通過SOCKET套接口來進(jìn)行網(wǎng)絡(luò)編程,套接口地址的格式是一個IP地址和一個端口號,套接口是進(jìn)程間通信的端點,每個套接口的名字都是唯一的,所以依靠套接口來確定整個以太網(wǎng)域中的一個網(wǎng)絡(luò)進(jìn)程。SOCKET接口是TCP/IP網(wǎng)絡(luò)中的API,SOCKET編程的基本模式是Client/Server。即由客戶機(jī)向服務(wù)器發(fā)出請求,服務(wù)器執(zhí)行被請求的任務(wù)并將響應(yīng)的結(jié)構(gòu)返回給客戶端程序。

  SOCKET是TCP/IP協(xié)議傳輸層所提供的接口,供用戶編程訪問網(wǎng)絡(luò)資源,它是使用標(biāo)準(zhǔn)的Unix文件描述符(file descriptor)和其它程序通信的方式。SOCKET描述符是一個指向內(nèi)部數(shù)據(jù)結(jié)構(gòu)的指針,可以將這個描述符看成普通的文件描述符來讀寫操作實現(xiàn)網(wǎng)絡(luò)之間的數(shù)據(jù)交流,這就是Linux設(shè)備的無關(guān)性。按其應(yīng)用,SOCKET套接口主要有流式套接字(Stream Socket)和數(shù)據(jù)報套接字(Datagram Socket)兩種,在系統(tǒng)中采用TCP協(xié)議傳輸數(shù)據(jù),采用流式套接字。

  系統(tǒng)中的將門禁控制器作為服務(wù)器,以太網(wǎng)終端的上位機(jī)作為客戶端。系統(tǒng)中TCP/IP協(xié)議SOCKET編程流程如圖4-3所示。

  圖4-3 TCP協(xié)議SOCKET編程流程圖

  在門禁系統(tǒng)控制端上運(yùn)行的RedHat Linux9.0操作系統(tǒng)已經(jīng)提供了TCP/IP服務(wù),在其上通常有相應(yīng)的應(yīng)用程序進(jìn)行管理,如Telnet、FTP、http等服務(wù),在門禁系統(tǒng)控制端通常移植服務(wù)器進(jìn)行系統(tǒng)網(wǎng)絡(luò)管理,系統(tǒng)中門禁控制器作為服務(wù)器程序流程介紹如下:

 ?。?)調(diào)用s=socket(AF_INET,SOCK_STREAM,O)函數(shù)來創(chuàng)建一個用于通信的套接字,每個Socket都是一個數(shù)據(jù)通道,使用Socket描述符可以從套接口中讀取數(shù)據(jù)或向其它數(shù)據(jù)通道寫入數(shù)據(jù)。

 ?。?)設(shè)臵套接字地址結(jié)構(gòu),可對sockaddr_in進(jìn)行初始化,以保存所建立的Socket信息。如下: bzero(sin,sizeof(sin)); //清除舊的服務(wù)器記錄sin.sin_family=AF_INET; //設(shè)臵網(wǎng)絡(luò)類型sin.sin_port=htons(myport);//設(shè)臵服務(wù)器監(jiān)聽端口

 ?。?)調(diào)用bind(s,(struct sockaddr*)sin,sizeof(sin))函數(shù)將其與本機(jī)地址以及一個本地端口號綁定,若綁定其它地址則不能成功。另外,它主要用于TCP的連接,而在UDP的連接中則無必要。

 ?。?)調(diào)用listen(s,5)函數(shù)在相應(yīng)的Socket號上監(jiān)聽。

 ?。?)調(diào)用ns=accept(s,NULL,NULL)函數(shù),睡眠并等待客戶的連接請求,當(dāng)accept函數(shù)接收到一個連接服務(wù)請求時,將生成一個新的Socket號,并通過新的socket號來發(fā)送圖像信息。

 ?。?)調(diào)用recv()函數(shù)接收客戶端的請求,調(diào)用send()函數(shù)向客戶端發(fā)送數(shù)據(jù)。

 ?。?)當(dāng)所有的數(shù)據(jù)操作結(jié)束以后:調(diào)用close()函數(shù)來釋放Socket。

  4.3.3 GoAhead嵌入式Web服務(wù)器

  隨著Internet技術(shù)的興起,在嵌入式設(shè)備的管理與交互中,基于Web方式的應(yīng)用成為目前的主流。嵌入式Web服務(wù)器是指將Web服務(wù)器引入現(xiàn)場測試和控制設(shè)備中,在相應(yīng)的硬件平臺和軟件系統(tǒng)的支持下,使傳統(tǒng)的測試和控制設(shè)備轉(zhuǎn)變?yōu)榫邆淞艘訲CP/IP為底層通信協(xié)議和以Web技術(shù)為核心的基于互聯(lián)網(wǎng)的網(wǎng)絡(luò)測試和控制設(shè)備。目前用得較多的Web服務(wù)器主要有thttpd、shttpd、boa、appweb以及goAhead等。

  在嵌入式系統(tǒng)中,由于處理器的運(yùn)行速度、存儲容量和內(nèi)存等的限制,使用嵌入式Web服務(wù)器可以節(jié)約系統(tǒng)資源,為用戶遠(yuǎn)程訪問、管理和控制提供支持,并可以實現(xiàn)用戶的分級訪問。系統(tǒng)采用goAhead作為Web服務(wù)器,用戶可以通過Form、CGI等應(yīng)用程序?qū)崿F(xiàn)交互。

  GoAhead Web Server是GoAhead公司推出的一個功能強(qiáng)大源碼免費(fèi),并可以運(yùn)行在多個平臺上的嵌入式W曲服務(wù)器。GoAhead Webserver的主要功能特點有:很小的內(nèi)存消耗、支持安全的通信、支持動態(tài)Web頁面,如ASP頁面、可以使用傳統(tǒng)的C語言編程定制Web頁面里的HTML標(biāo)簽、支持CGI、嵌入式的JavaScript腳本翻譯器以及獨特的URL分析器。當(dāng)前的最新版本是GoAhead WebServer 2.1.8。GoAhead無須安裝,只需要將GoAhead的源碼軟件包拷貝到Linux文件系統(tǒng)中的任何目錄中即可,修改Makenle的相關(guān)內(nèi)容,通過交叉編譯, 在源代碼目錄中的LINUX文件夾下已經(jīng)存在了GoAhead的可執(zhí)行文件webs,在門禁控制器服務(wù)器端運(yùn)行。/webs就開戶了系統(tǒng)的服務(wù)器。

  系統(tǒng)在PC機(jī)客戶端的Windows平臺上基于TCP/IP協(xié)議用VC++開發(fā)了客戶端的程序,通過客戶端程序可以通過以太網(wǎng)與門禁控制器的GoAhead Web Server通信并實現(xiàn)門禁系統(tǒng)的管理。

  5.結(jié)論

  隨著數(shù)字化和網(wǎng)絡(luò)化的發(fā)展,智能門禁系統(tǒng)是未來安防監(jiān)控系統(tǒng)的發(fā)展趨勢。安全可靠、方便易用的門禁系統(tǒng)在企業(yè)銀行、智能小區(qū)等門禁和考勤領(lǐng)域具有較強(qiáng)的實用價值和推廣性。本課題設(shè)計開發(fā)了一種基于ARM9處理器和指紋識別技術(shù)的以太網(wǎng)門禁控制系統(tǒng)。在ARM-Linux的基礎(chǔ)上,研究了指紋采集和視頻采集模塊、網(wǎng)絡(luò)傳輸模塊以及自動指紋識別算法??偨Y(jié)起來,本文主要做了下面的一些工作:

 ?。?)論述了門禁系統(tǒng)在國內(nèi)外發(fā)展現(xiàn)狀及其在未來的發(fā)展方向,指出了本課題的研究背景和意義,介紹了一種基于ARM的指紋識別以太網(wǎng)門禁控制系統(tǒng)。

 ?。?)給出了聯(lián)網(wǎng)型指紋識別的門禁系統(tǒng)的總體設(shè)計原則、功能特點和總體硬件框圖。重點論述了系統(tǒng)使用的各個重要模塊設(shè)計的硬件資源,主要包括USB攝像頭;LCD顯示模塊;網(wǎng)絡(luò)通信模塊;指紋識別模塊等。

  (3)研究了指紋識別算法,包括指紋圖像預(yù)處理以及指紋圖像的特征提取和匹配兩部分。文中主要對指紋圖像分割做出了一些改進(jìn),結(jié)合指紋圖像灰度方差和梯度設(shè)臵一個合適的局部閾值對指紋進(jìn)行分割,提出了一種指紋圖像的局部閾值分割方法,該算法提高了指紋分割的精確度和適應(yīng)性。然后參考其它的算法介紹了一個整體的自動指紋識別算法。

 ?。?)闡述了門禁控制系統(tǒng)軟件的總體設(shè)計,然后分別闡述了系統(tǒng)中軟件編程中重要的幾個方面:使用Video4Linux編程采集圖像、指紋圖像的采集、GoAhead web server的應(yīng)用以及系統(tǒng)運(yùn)用TCP/IP實現(xiàn)系統(tǒng)門禁控制器和上位機(jī)PC之間的網(wǎng)絡(luò)通信。



關(guān)鍵詞: 指紋識別 生物識別 ARM

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉