1. 引言
智能門禁管理系統(tǒng)是智能大廈的集成化安全保護系統(tǒng)的重要組成部分,它是智能大廈內(nèi)工作、生活的人們創(chuàng)造安全空間的必要前提。它的基本功能是通過對門磁開關(guān)、防盜報警探測器及指紋掌形識別器等傳來的信息進行分析、識別,從而有效地監(jiān)視并管理門的開啟與關(guān)閉,保證授權(quán)出入門人員的自由出入,限制未授權(quán)人員的進入,對強行入侵的行為及其它異常情況予以報警;同時對出入人員代碼、出入時間、出入門位置號碼等信息進行存儲與管理,以實現(xiàn)對出入事件或人員的有效檢索管理。智能門禁管理系統(tǒng)的最終日的是保證防護區(qū)域內(nèi)的安全,實現(xiàn)門與進出人員的智能化管理。
2. 系統(tǒng)功能設(shè)計
根據(jù)當前的要求,本文設(shè)計的智能門禁管理系統(tǒng)需要實現(xiàn)以下基本門禁功能:
(1)系統(tǒng)管理:包括管理員登錄、更改登錄者口令、設(shè)置ODBC數(shù)據(jù)源。
(2)Site管理:包括添加新Site、激活、刪除、清空Site、設(shè)置Site屬性。
(3)用戶機構(gòu)管理:包括機構(gòu)管理、用戶管理。
(4)掌形儀管理:包括添加新掌形儀、清空、注冊用戶、注冊時間段、注冊節(jié)假日、刪除、關(guān)聯(lián)門、設(shè)置屬性。
(5)高級管理:包括設(shè)置節(jié)假日、設(shè)置時間段、組合驗證、管理員、數(shù)據(jù)備份、手動開關(guān)門、設(shè)置實時監(jiān)控。
(6)查詢報表:包括查詢用戶信息、節(jié)假日、時間段、系統(tǒng)日志等。
(7)門禁功能,主要有以下這些功能:靈活選擇和配置監(jiān)控門的數(shù)量,為監(jiān)控門進行命名;靈活設(shè)定門的自動開關(guān)時間;只有先驗證身份,經(jīng)系統(tǒng)認可方后才能開門;可以啟動或禁用一臺掌形儀或一個站點,靈活地設(shè)定某臺掌形儀在什么時間段可以打開哪些門;通過系統(tǒng)設(shè)置,將某些門設(shè)置為常開或常閉狀態(tài),對于設(shè)置為常閉狀態(tài)的門,任何驗證都不能打開;實時顯示當前所有門的開關(guān)情況;對某些出現(xiàn)異常的門進行報警;記錄所有門和掌形儀的情況,這些將作為歷史記錄供以后查詢;對指定門或掌形儀在指定時間段內(nèi)的動作情況進行查詢統(tǒng)計;通過軟件系統(tǒng)控制某扇門或所有門的開啟,主要用于緊急疏散等特殊情況。
本系統(tǒng)通過計算機網(wǎng)絡(luò)化管理,可以實現(xiàn)信息資源共享、遠程監(jiān)控以及各安全子系統(tǒng)聯(lián)動等功能,不僅著眼于整體安全性、可靠性的提高,而且使系統(tǒng)的維護更簡便,保證了維護的即時性和有效性,降低了系統(tǒng)運行成本。
3.系統(tǒng)技術(shù)設(shè)計
考慮智能門禁管理系統(tǒng)的數(shù)據(jù)是分布的,因而需要對系統(tǒng)使用合適的技術(shù)來訪問和共享這些遠程的數(shù)據(jù)。為實現(xiàn)系統(tǒng)的數(shù)據(jù)共享,以便數(shù)據(jù)在公司的各個部門之間合理地流動,我們可以在數(shù)據(jù)庫層次上共享數(shù)據(jù)或在應(yīng)用的業(yè)務(wù)邏輯層上共享輸送數(shù)據(jù),雖然用于實現(xiàn)該類應(yīng)用的技術(shù)和解決方案有很多,但在這里針對本系統(tǒng)的特點來介紹技術(shù)需求。
3.1 分布式技術(shù)
與一般的信息管理系統(tǒng)不同,智能門禁管理系統(tǒng)的主要特點在于數(shù)據(jù)的分布性以及由此決定的系統(tǒng)的結(jié)構(gòu)也將是分布的,而通常的信息管理系統(tǒng)只是管理本地的數(shù)據(jù),數(shù)據(jù)較為集中和便于管理。但本系統(tǒng)仍然具有信息管理系統(tǒng)的一些新的特點,我們在使用數(shù)據(jù)庫訪問技術(shù)時使用可遠程訪問數(shù)據(jù)的訪問引擎,使該系統(tǒng)實現(xiàn)類似于通常的信息管理結(jié)構(gòu)。
本系統(tǒng)采用J2EE 的Struts+Spring+Hibernate架構(gòu)。J2EE架構(gòu)體系分為三個層次,分別是表示層(客戶層組件)、業(yè)務(wù)邏輯層(包括Web層組件和業(yè)務(wù)邏輯層組件)和企業(yè)信息系統(tǒng)。該架構(gòu)具有跨平臺的特性,結(jié)構(gòu)中的三個層次可以處于不同的平臺下進行協(xié)作應(yīng)用。兇為表示層可以使用不同的客戶端程序,因此具有很好的分布性,可以適應(yīng)分布式管理的要求;在后臺的應(yīng)用系統(tǒng)集成中,可以把企業(yè)不同的應(yīng)用系統(tǒng)集成到該結(jié)構(gòu)中,因此可以有效地保護現(xiàn)有的資源不被破壞。
3.2 Struts+Spring+Hibernate技術(shù)
本系統(tǒng)采用標準的三層結(jié)構(gòu)模式設(shè)計,具體選用了Struts+Spring+Hibernate,這種組合方式基于J2EE平臺的開源框架。其中MVC 采用Struts,業(yè)務(wù)邏輯層采用Spring,持久化層采用Hibernate。
Struts+Spring+Hibernate(簡稱SSH)是目前國外眾多知名軟件企業(yè)基于J2EE架構(gòu)的主流應(yīng)用技術(shù)。通過使用SSH框架,使整個框架在每個架構(gòu)層上以一種松散耦合的方式彼此作用,而不用管底層的技術(shù)細節(jié)。智能門禁管理系統(tǒng)采用SSH框架,不僅能夠進行快速開發(fā),而且也非常方便系統(tǒng)的擴展以及同其它現(xiàn)有系統(tǒng)進行整合。下圖2是整個框架的組合示意圖:
圖 1 Struts+Spring+Hibernate框架
Struts作為前臺控制框架簡化了程序的開發(fā),使頁面設(shè)計人員和JAvA程序員達到有效的分離,使項目可擴展性大大增強,提升了開發(fā)效率,降低了維護成本。
Spring作為一個應(yīng)用于所有層面的綜合框架,具有強大的應(yīng)用功能及靈活性,非常適合作為一些大規(guī)模軟件項目的底層平臺。
Hibernate作為后臺 ORM(Object Relation Mapping) 個持久層框架的輕量級組件,對持久層進行了輕量級封裝,降低了程序的復(fù)雜度,易于調(diào)試,減輕了程序員的負擔(dān),具有很強的擴展性。并且API開放,可白行對Hibernate源碼進行修改,擴展所需的功能。
3.3 掌形識別技術(shù)
掌形識別技術(shù)利用每個人的手掌形狀具有唯一性的特征來識別人的身份,掌形儀具有識別唯一性、安全性、可靠性的。其基本原理是:通過辨認使用者獨一無二的手掌特征來確認其身份,主要特征是手的大小和形狀。它包括長度、寬度、厚度以及手掌和除大拇指之外的其余4個手指的表面特征。首先是獲取手掌的三維圖像,紅外線照在手掌上,通過CCD圖像排列系統(tǒng)獲取手掌圖像,然后分析確定每個手指的長度、手指不同部位的寬度以及靠近指節(jié)的表面和手指的厚度,最終分析得到9O多個掌形測量數(shù)據(jù)。接著,這些數(shù)據(jù)被進一步分析得出手掌獨一無二的特征,從而轉(zhuǎn)換成9 byte的模板進行比較。當系統(tǒng)新設(shè)置一個人的信息時,將建立一個模板連同其身份號碼一起存入內(nèi)存,這些模板是作為將來確認某人身份的參考模板之用的。當人們使用該系統(tǒng)時,要輸入其身份號碼,模板連同身份號碼一起傳輸?shù)奖容^內(nèi)存。使用者將手放在上面系統(tǒng)就產(chǎn)生模板,這個模板再與參考模板進行比較確定兩者的相似度,比較結(jié)果被稱為一得分”,二者之間的差別越大,“得分”越高,反之差別越小,“得分”越低,如果最終得分”比設(shè)定的拒絕分數(shù)極限低,那么使用者身份被確認,反之,使用者被拒絕進入。
4.系統(tǒng)邏輯實現(xiàn)
為了解決傳統(tǒng)CIS的缺點,本系統(tǒng)在客戶端和服務(wù)器之間加入了一層應(yīng)用服務(wù)程序,這種程序稱為“應(yīng)用服務(wù)器”。將應(yīng)用的業(yè)務(wù)邏輯放在中間層應(yīng)用服務(wù)器上,與用戶界面分開。在保證客戶端功能的前提下,為用戶提供一個簡潔的界面。這意味著如果需要修改應(yīng)用程序代碼,只需要對中間層應(yīng)用服務(wù)器進行修改,而不用修改成千上萬的客戶端應(yīng)用程序。從而使我們可以專注于應(yīng)用系統(tǒng)核心業(yè)務(wù)邏輯的分析、設(shè)計和開發(fā),簡化了應(yīng)用系統(tǒng)的開發(fā)、更新和升級工作。本系統(tǒng)C/S部分的邏輯實現(xiàn)模型采用3層架構(gòu):表示層、業(yè)務(wù)邏輯層和數(shù)據(jù)層,如圖2所示。圖中的客戶端、應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器表示的是邏輯設(shè)備,并不表示物理機器,實際物理部署時,可以把它們部署在一臺物理機器上。總體來說,客戶端應(yīng)用適用于局域網(wǎng)環(huán)境,客戶機相對固定,應(yīng)用安全性高,響應(yīng)速度快,性能好。
圖 2 智能門禁管理系統(tǒng)的體系結(jié)構(gòu)
表示層(Presentation Tier):處理與用戶的交互、交流。它要求盡可能的簡單,使最終用戶不需要進行任何培訓(xùn)就能方便地訪問信息。
業(yè)務(wù)邏輯層(Business Logic Tier):處理用戶所需要的信息。可以獲得表示層提供的數(shù)據(jù),并根據(jù)數(shù)據(jù)庫層的需要對其進行處理;也可以從數(shù)據(jù)庫層獲取數(shù)據(jù),并根據(jù)表示層的需要來對數(shù)據(jù)進行處理。
數(shù)據(jù)庫層(Database Tier1:存儲系統(tǒng)所處理的所有數(shù)據(jù)。
5.系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計
智能門禁管理系統(tǒng)的最小工作單位為掌形儀,由若干個掌形儀構(gòu)成一個子系統(tǒng),再由子系統(tǒng)構(gòu)成一個大的系統(tǒng),層層遞進,最終構(gòu)成一個整體的分布式集門禁和考勤為一體的系統(tǒng)。
5.1 掌形儀連接方式
智能門禁管理系統(tǒng)的最小丁作單位為掌形儀,一個掌形儀就是一個自治系統(tǒng)。它可獨立完成門禁數(shù)據(jù)的采集、存儲、分析以及在本自治系統(tǒng)內(nèi)對人員的出入管理等事務(wù)。這些門禁數(shù)據(jù)匯集到總部服務(wù)器,總部服務(wù)器進行分析、匯總處理后得到準確的統(tǒng)計結(jié)果。連接方式一般有422/485總線相連、以太網(wǎng)相連、Modem 相連三種。
5.2 網(wǎng)絡(luò)結(jié)構(gòu)
由于系統(tǒng)中掌形儀處于不同地理位置,在安裝部署時為了就近對數(shù)據(jù)進行存儲和處理,系統(tǒng)將會按其地理位置進行劃分,這樣整個系統(tǒng)將被分為多個相互之間較為獨立的予系統(tǒng)。與完全獨立的多個系統(tǒng)不同,從屬于同一系統(tǒng)的多個子系統(tǒng)之問具有一定的聯(lián)系,它們可以使系統(tǒng)工作在更大范周內(nèi)。圖3所示的是系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)圖。
圖 3 智能門禁管理系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖
監(jiān)控計算
基于以上的網(wǎng)絡(luò)結(jié)構(gòu),系統(tǒng)采用分布式數(shù)據(jù)庫實現(xiàn),公司總部設(shè)囂主數(shù)據(jù)庫服務(wù)器,存儲整個公司所有數(shù)據(jù),而在各個監(jiān)控計算機采用分數(shù)據(jù)庫,主要存儲和門禁業(yè)務(wù)相關(guān)的數(shù)據(jù),平時各個分數(shù)據(jù)庫獨立運行,在數(shù)據(jù)同步時完成和主數(shù)據(jù)庫交換數(shù)據(jù)。并且通過在系統(tǒng)L}J的主數(shù)據(jù)庫服務(wù)器和應(yīng)用服務(wù)器之間引入中間件來降低建設(shè)和維護成本,并簡化管理,適應(yīng)了大規(guī)模和復(fù)雜的應(yīng)用需求以及新的業(yè)務(wù)需求。訪問異構(gòu)數(shù)據(jù)庫,有效提高了系統(tǒng)并發(fā)處理能力和系統(tǒng)安全性。
6. 結(jié)束語
根據(jù)當前對門禁系統(tǒng)的需求,本系統(tǒng)集計算機技術(shù)、通信技術(shù)、掌形識別技術(shù)和數(shù)據(jù)庫技術(shù)于一體,設(shè)計了一個基于SSH和掌形識別技術(shù)的智能門禁管理系統(tǒng),可應(yīng)用于各種企事業(yè)單位的門禁監(jiān)控和考勤管理等。用戶通過掌形驗證后由掌形儀決定是否開門,并且將結(jié)果反饋給監(jiān)控計算機。此外,可依據(jù)事先設(shè)定的排班規(guī)則對授權(quán)的人員進行考勤管理。系統(tǒng)具有實時、安全、可靠、易維護、易擴展等優(yōu)點。