基于射頻識(shí)別技術(shù)的聯(lián)機(jī)型門禁系統(tǒng)設(shè)計(jì)
一.引言
在數(shù)字技術(shù)、網(wǎng)絡(luò)技術(shù)飛速發(fā)展的今天,門禁技術(shù)得到了迅猛的發(fā)展。門禁系統(tǒng)早已超越了單純的門道及鑰匙管理,它已經(jīng)逐漸發(fā)展成為一套完整的出入管理系統(tǒng)。門禁系統(tǒng)的發(fā)展在經(jīng)歷了單一密碼鍵盤門禁系統(tǒng)、IC卡門禁系統(tǒng)、非接觸式IC卡門禁系統(tǒng),到現(xiàn)在最新的生物識(shí)別門禁系統(tǒng)。非接觸式IC卡門禁系統(tǒng)由于其技術(shù)成熟、價(jià)格低廉、使用方便等優(yōu)異的性能,得到了廣泛的應(yīng)用。某音樂(lè)學(xué)院琴房14層大廈300多個(gè)琴房,過(guò)去一直采用的管理辦法是學(xué)生在琴房管理中心登記領(lǐng)用鑰匙使用琴房。這種管理辦法存在著很多弊端,例如學(xué)生會(huì)私自配備琴房的鑰匙從而不通過(guò)琴房管理中心登記私自使用琴房,或者學(xué)生在退還鑰匙離開(kāi)時(shí)不能保證琴房里已經(jīng)無(wú)人。而且琴房?jī)?nèi)設(shè)備貴重的數(shù)百萬(wàn)若有損壞難以確定損壞人,給學(xué)校的財(cái)產(chǎn)安全帶來(lái)隱患。因此給琴房的管理帶來(lái)了一定的難度。為了達(dá)到對(duì)琴房科學(xué)高效的管理,本文提出了一種聯(lián)機(jī)型的門禁控制系統(tǒng)的設(shè)計(jì)方案對(duì)整個(gè)樓的琴房進(jìn)行集中控制、集中管理。
二. 系統(tǒng)結(jié)構(gòu)
本文受國(guó)家自然科學(xué)基金(編號(hào):60472044)和北京化工大學(xué)青年教師自然科學(xué)研究基金(編號(hào):QN0518)資助。
系統(tǒng)采用分層次分布式集中控制方案,將所有門禁讀卡器組成一個(gè)分布式網(wǎng)絡(luò),其組成如圖1所示。整個(gè)系統(tǒng)包括管理中心服務(wù)器、樓層PC、門禁讀卡器三個(gè)層次結(jié)構(gòu)。
管理中心服務(wù)器是整個(gè)門禁系統(tǒng)的管理和控制中心,同時(shí)運(yùn)行有琴房管理系統(tǒng)程序和數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)采用支持網(wǎng)絡(luò)通訊的數(shù)據(jù)庫(kù)結(jié)構(gòu),方便功能的擴(kuò)展。為了達(dá)到對(duì)所有琴房進(jìn)行統(tǒng)一管理的目的,使用琴房的學(xué)生要用學(xué)生一卡通在管理中心通過(guò)琴房管理系統(tǒng)登記分配琴房,并將學(xué)生個(gè)人信息存入數(shù)據(jù)庫(kù)。使用后要在管理中心通過(guò)琴房管理系統(tǒng)退還房間,以便考勤及查詢。通過(guò)管理系統(tǒng)程序可以清晰的查詢到每個(gè)房間的使用狀態(tài)、進(jìn)出記錄等。
樓層PC上運(yùn)行門禁控制服務(wù)程序,是負(fù)責(zé)門禁讀卡器與管理中心服務(wù)器溝通的橋梁。門禁控制服務(wù)程序?qū)崿F(xiàn)數(shù)據(jù)轉(zhuǎn)發(fā)的功能,實(shí)現(xiàn)RS485和TCP/IP通訊協(xié)議的轉(zhuǎn)換,本身并不直接控制門禁讀卡器的動(dòng)作。向上通過(guò)局域網(wǎng)以TCP/IP協(xié)議與管理中心服務(wù)器進(jìn)行通訊,傳遞門禁讀卡器的刷卡請(qǐng)求和管理中心的服務(wù)器的各種控制命令。向下通過(guò)485總線通過(guò)輪尋的方式與門禁讀卡器進(jìn)行信息的交互。記錄從門禁讀卡器采集的數(shù)據(jù)的采集時(shí)間,如
圖1 系統(tǒng)結(jié)構(gòu)圖
如果長(zhǎng)時(shí)間不能和管理中心服務(wù)器通訊,一定時(shí)間后丟棄掉過(guò)時(shí)的讀卡數(shù)據(jù)。門禁控制服務(wù)僅具有進(jìn)行后臺(tái)數(shù)據(jù)交換和轉(zhuǎn)發(fā)功能,除了進(jìn)程啟動(dòng)和停止外,沒(méi)有和用戶交互的信息,設(shè)計(jì)作為Windows系統(tǒng)的服務(wù)進(jìn)程運(yùn)行,而不需要設(shè)計(jì)和用戶的交互界面,僅產(chǎn)生運(yùn)行日志文件即可。
三. 門禁讀卡器設(shè)計(jì)
系統(tǒng)以學(xué)生的非接觸式IC卡校園一卡通作為系統(tǒng)的用戶卡,非接觸式IC卡是根據(jù)電磁感應(yīng)原理產(chǎn)生的,只需將卡片放在門禁讀卡器的感應(yīng)區(qū)之內(nèi)就能實(shí)現(xiàn)數(shù)據(jù)交換,無(wú)需任何接觸,使用非常方便、快捷,且不易損壞。因此在公交、門禁、校園、企事業(yè)人事管理等方面有著廣泛的應(yīng)用。PHILIPS公司的Mifare卡是現(xiàn)在非接觸式IC卡市場(chǎng)的主流產(chǎn)品,其典型型號(hào)為Mifare 1 S50,它有1K的EEPROM用于存放數(shù)據(jù),分為16個(gè)扇區(qū),每個(gè)扇區(qū)都有自己獨(dú)立的密碼,完善的安全機(jī)制,使Mifare1 S50具有一卡多用的特性。Mifare卡是一種智能卡(smart card),嵌有中央微處理器(MCU)和ASIC等,使其安全保密性、認(rèn)證邏輯、算術(shù)運(yùn)算等微操作控制有序進(jìn)行[1]。
1. 工作原理
非接觸式IC卡門禁讀卡器以射頻識(shí)別技術(shù)為核心,主要使用了一片Mifare卡專用的讀寫處理芯片MFRC530。它是一個(gè)小型的、最大操作距離達(dá)10厘米的Mifare卡射頻基站,其功能包括調(diào)制、解調(diào)、產(chǎn)生射頻信號(hào)、安全管理和防沖撞機(jī)制。內(nèi)部結(jié)構(gòu)分為射頻區(qū)和接口區(qū):射頻區(qū)內(nèi)含調(diào)制解調(diào)器和電源供電電路,直接與天線連接。接口區(qū)有與單片機(jī)相連的端口,還具有與射頻區(qū)相連的收/發(fā)器、64B的數(shù)據(jù)緩沖器、存放3套寄存器初始化文件的EEPROM、存放16套密鑰的只寫存儲(chǔ)器以及進(jìn)行三次驗(yàn)證和數(shù)據(jù)加密的密碼機(jī)制、防沖撞處理的防沖撞模塊和控制單元。這是與射頻卡實(shí)現(xiàn)無(wú)線通信的核心模塊,也是讀寫Mifare卡的關(guān)鍵接口[2]。
門禁讀卡器工作時(shí),與Mifare卡專用的讀卡芯片MFRC530相連的天線線圈不斷地向外發(fā)出一組固定頻率的電磁波(13.56M),當(dāng)有非接觸式IC卡靠近時(shí),卡片內(nèi)有一個(gè)LC串聯(lián)諧振電路,其頻率與讀寫器的發(fā)射頻率相同。這樣在電磁波的激勵(lì)下,諧振電路產(chǎn)生共振,從而使電容充電而產(chǎn)生電荷。在電容另一端,接有一個(gè)單向?qū)щ姷碾娮颖脤㈦娙輧?nèi)的電荷送到另一個(gè)電容內(nèi)存儲(chǔ)。當(dāng)電容充電達(dá)到2V時(shí),此電容就作為電源為卡片上的其他電路提供工作電壓,將卡內(nèi)數(shù)據(jù)發(fā)射出去或接收門禁讀卡器發(fā)來(lái)的數(shù)據(jù)并保存[3]。本系統(tǒng)中當(dāng)有卡進(jìn)入射頻天線感應(yīng)區(qū)內(nèi)時(shí),門禁讀卡器讀得非接觸式IC卡的卡號(hào),并將所讀卡號(hào)及刷卡的時(shí)間發(fā)送給樓層PC同時(shí)將其存入存儲(chǔ)器FM24C256,并在LCD顯示器上顯示服務(wù)信息。沒(méi)有卡進(jìn)入門禁讀卡器天線感應(yīng)區(qū)時(shí),MCU讀實(shí)時(shí)時(shí)鐘芯片中的時(shí)間,并在顯示器上顯示當(dāng)前時(shí)間及日期。
2. 硬件組成
每個(gè)門禁讀卡器都相當(dāng)于一個(gè)智能的節(jié)點(diǎn),它能獨(dú)立完成門狀態(tài)和鎖狀態(tài)的監(jiān)控、判斷卡類型、實(shí)時(shí)監(jiān)控刷卡動(dòng)作、控制電磁門鎖和報(bào)警器、設(shè)置門禁號(hào)等一系列的操作。門禁讀卡器的硬件部分主要包括監(jiān)測(cè)和控制部分、聲光報(bào)警電路、RS485接口電路、存儲(chǔ)、時(shí)鐘顯示部分、門禁號(hào)設(shè)置部分、看門狗及復(fù)位電路、射頻基站部分。電路的硬件框圖如圖2所示[4]。
圖2 門禁讀卡器系統(tǒng)組成
采用意法半導(dǎo)體公司(STMicroelectronics)公司STC89C53RC單片機(jī)作MCU,即常用的MCS-51系列單片機(jī),它具有良好的溫度特性、穩(wěn)定性和性價(jià)比。內(nèi)置15K的Flash存儲(chǔ)器 和512字節(jié)RAM,具有3個(gè)16位計(jì)數(shù)器和一個(gè)標(biāo)準(zhǔn)的串行通信口,并具有P4口,支持ISP程序下載。
門禁號(hào)設(shè)置電路采用8位并入串出的移位寄存器芯片74HC165配合兩個(gè)4位撥碼開(kāi)關(guān)構(gòu)成8位的設(shè)置門禁號(hào)單元。系統(tǒng)上電后74HC165將并行數(shù)據(jù)以串行移位的方式發(fā)送給MCU將其作為在485網(wǎng)絡(luò)中通訊的本機(jī)ID號(hào)。
射頻基站部分采用了飛利浦公司的MFRC530芯片,MFRC530是與射頻卡實(shí)現(xiàn)無(wú)線通信的核心模塊。它根據(jù)寄存器的設(shè)定對(duì)發(fā)送緩沖區(qū)中的數(shù)據(jù)進(jìn)行調(diào)制得到發(fā)送的信號(hào),通過(guò)由TX1,TX2腳驅(qū)動(dòng)的天線以電磁波的形式發(fā)出去,非接觸式IC卡采用RF場(chǎng)的負(fù)載調(diào)制進(jìn)行響應(yīng)。天線拾取非接觸式IC卡的響應(yīng)信號(hào)經(jīng)過(guò)天線匹配電路送到RX腳,MFRC530內(nèi)部接收緩沖器對(duì)信號(hào)進(jìn)行檢測(cè)和解調(diào)并根據(jù)寄存器的設(shè)定進(jìn)行處理。處理后的數(shù)據(jù)發(fā)送到數(shù)據(jù)總線上等待MCU讀取。MCU與MFRC530采用SPI總線方式進(jìn)行通訊,可實(shí)現(xiàn)與非接觸式IC卡數(shù)據(jù)的無(wú)線傳輸。
有卡進(jìn)入感應(yīng)區(qū)刷卡時(shí)需要記錄刷卡的時(shí)間,可用外接硬件實(shí)時(shí)時(shí)鐘芯片的辦法為系統(tǒng)提供一個(gè)準(zhǔn)確可靠的時(shí)鐘,用3V備用電池保證在系統(tǒng)掉電時(shí)也能正常計(jì)時(shí)。本設(shè)計(jì)選用體積小、接口簡(jiǎn)單的實(shí)時(shí)時(shí)鐘芯片DS1302,是美國(guó)DALLAS公司推出的低功耗串行通信接口專用芯片,采用3線串行方式與單片機(jī)進(jìn)行數(shù)據(jù)通信:SCLK作為時(shí)鐘輸入,SDA作為串行數(shù)據(jù)輸入和輸出,RST作為通訊允許信號(hào)。其內(nèi)部寄存器地址中00H~06H分別對(duì)應(yīng)存放秒、分、時(shí)、日、月、星期及年信息的寄存器,07H為寫保護(hù)控制寄存器,08H為電池充電控制寄存器。時(shí)鐘數(shù)據(jù)以BCD碼格式存放在00H~06H這7個(gè)寄存器中。
系統(tǒng)存儲(chǔ)部分采用了RAMTRON INTERNATIONAL 公司生產(chǎn)的一種鐵電存貯器(FRAM) FM24C256,是一個(gè)256kbit的FRAM, 存儲(chǔ)器內(nèi)部被邏輯組織為32768 ×8 字節(jié)存儲(chǔ)方式,地址空間為0000~7FFFH。其總線頻率可高達(dá)1MHz,具有10億次以上的讀寫次數(shù)且功耗很低,與外部接口采用工業(yè)標(biāo)準(zhǔn)IIC 總線。由于MCU不具有IIC 總線接口,因此采用P2.3 和P2.4口線來(lái)模擬IIC 總線, FM24C256的SDA和SCL為開(kāi)漏輸出,故接10kΩ的上拉電阻。
監(jiān)測(cè)部分實(shí)時(shí)監(jiān)測(cè)門、鎖狀態(tài)和通訊的狀態(tài),并對(duì)長(zhǎng)時(shí)間的異常狀態(tài)作出報(bào)警;控制部分主要負(fù)責(zé)執(zhí)行上位機(jī)的各種控制信息,如執(zhí)行開(kāi)鎖、執(zhí)行報(bào)警等;LCD顯示部分選用以 ST7920為控制器的128×6帶漢字庫(kù)的液晶模塊,用以顯示時(shí)間日期及各種服務(wù)信息,作為人機(jī)交互的界面。為了防止外界對(duì)系統(tǒng)的干擾,選用MAXIM 公司的MAX813L作為系統(tǒng)的硬件看門狗。
3. 軟件設(shè)計(jì)
門禁讀卡器的程序包括:MFRC530對(duì)Mifare卡操作的程序、MCU與MFRC530通信中斷處理程序、485通信中斷處理程序、讀寫時(shí)鐘及LCD顯示程序、獲得門禁號(hào)程序、檢測(cè)門和鎖狀態(tài)程序及存儲(chǔ)器讀寫程序等。主程序流程圖如圖3所示。
對(duì)卡操作的過(guò)程是一個(gè)很復(fù)雜的程序執(zhí)行過(guò)程,要對(duì)MFRC530內(nèi)部一系列的寄存器進(jìn)行配置,而且這些操作對(duì)時(shí)序要求非常嚴(yán)格。對(duì)非接觸式IC卡的典型操作為:尋卡(得到卡類型代碼)、防沖突(得到卡號(hào))、選卡、驗(yàn)證密碼、讀寫操作、掛起并且這些操作必須按固定的順序執(zhí)行。因?yàn)殚T禁讀卡器只需要得到卡片卡號(hào),故只執(zhí)行尋卡、防沖突、掛起就可達(dá)到要求,對(duì)卡類型判斷后將卡號(hào)通過(guò)樓層PC發(fā)送到服務(wù)器,由服務(wù)器來(lái)判斷卡是否合法。在沒(méi)有卡進(jìn)入射頻天線有效范圍時(shí),在LCD顯示當(dāng)前時(shí)間及日期,當(dāng)有卡進(jìn)入到射頻天線的有效范圍時(shí),LCD上顯示卡號(hào)并顯示“請(qǐng)稍候……”等服務(wù)信息。
圖3 門禁讀卡器主程序流程
四. 結(jié)束語(yǔ)
本文將射頻識(shí)別理論應(yīng)用到門禁控制領(lǐng)域,采用多層網(wǎng)絡(luò)型系統(tǒng)結(jié)構(gòu),提出了一種以單片機(jī)為核心,配合射頻基站MFRC530及單片機(jī)外圍電路的非接觸式IC卡門禁讀卡器硬件和軟件設(shè)計(jì)。該門禁系統(tǒng)已成功應(yīng)用于某音樂(lè)學(xué)院的琴房管理系統(tǒng)。實(shí)踐表明,系統(tǒng)運(yùn)行穩(wěn)定、實(shí)時(shí)性好。
參考文獻(xiàn):
[1]吳勇祥.射頻識(shí)別技術(shù)(RFID)研究現(xiàn)狀及發(fā)展展望[J].微計(jì)算機(jī)信息, 2006,11-2:234-236
[2] Philips semiconductors.mifare MF RC530 ISO14443A IC Reader. Philips Corporation .2002
[3]李乃瑋,黃靜,郭勇.非接觸IC卡讀寫模塊MFRC530的工作原理及其應(yīng)用[J].電子器件,2003,6-2:159-162
[4]孫穎,張敬敏,張志佳.一種基于 MF RC500的mifare1卡讀寫器的設(shè)計(jì)與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2006,2-2: 6-9