基于ARM的RFID智能安全管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
高級(jí)會(huì)議的成功舉辦除了對(duì)參會(huì)人員的簽到、住宿、座位安排等管理外,其身份安全管理也是很重要的一方面,本文介紹了一種基于32位ARM7TDMI設(shè)計(jì)實(shí)現(xiàn)的射頻識(shí)別[1](radiofrequencyidentification,RFID)會(huì)議智能安全管理系統(tǒng),系統(tǒng)充分利用了ARM具有全面的、豐富的片上資源功能,用一個(gè)ARM核心板同時(shí)實(shí)現(xiàn)讀卡、顯示、聲音報(bào)警、攝像和指紋等幾種功能,集成了射頻識(shí)別技術(shù)與生物識(shí)別技術(shù),完成三重身份的認(rèn)證,具體可選擇射頻+指紋模式、射頻+攝像模式或射頻+指紋+攝像模式。這不但大大提高了會(huì)場智能管理的安全性,而且還因ARM的集成度高而大大減少了系統(tǒng)電路中的器件配置,使得電路設(shè)計(jì)變得較為簡單,從而使整個(gè)系統(tǒng)的成本大為降低,同時(shí),系統(tǒng)也更安全可靠、操作更簡捷。
1RFID技術(shù)概述及智能安全管理系統(tǒng)整體結(jié)構(gòu)
RFID是一種利用射頻通信實(shí)現(xiàn)的非接觸式自動(dòng)識(shí)別技術(shù),可識(shí)別高速運(yùn)動(dòng)物體并可同時(shí)識(shí)別多個(gè)標(biāo)簽,識(shí)別的距離為幾十厘米至幾十米,可工作于惡劣環(huán)境,識(shí)別工作無須人工干預(yù)[2],且根據(jù)讀寫的方式,可以輸入數(shù)千字節(jié)的信息,操作快捷方便,同時(shí),還具有極高的保密性。RFID系統(tǒng)由讀卡器、RFID卡和上層應(yīng)用軟件3部分組成,其中讀卡器用來實(shí)現(xiàn)對(duì)RFID卡的數(shù)據(jù)讀寫和存儲(chǔ)功能,由控制單元、高頻通信模塊和天線組成;RFID卡是一種無源的應(yīng)答器,主要由一塊集成電路(IC)芯片及其外接天線組成。其基本工作原理是在RFID卡進(jìn)入到讀卡器的射頻場范圍后,讀卡器通過射頻信號(hào)與RFID卡進(jìn)行信息交互,將卡內(nèi)標(biāo)簽中所存儲(chǔ)的有關(guān)數(shù)據(jù)讀取后提交給RFID上層軟件。目前在國內(nèi)外,RFID已被廣泛應(yīng)用于生產(chǎn)、物流、交通、運(yùn)輸、醫(yī)療、防偽、跟蹤、設(shè)備和資產(chǎn)管理、工商業(yè)自動(dòng)化、交通運(yùn)輸控制管理等眾多領(lǐng)域,并不斷向新的領(lǐng)域滲透,具有非常廣闊的應(yīng)用前景。
本RFID智能安全管理系統(tǒng)為高級(jí)會(huì)議會(huì)場設(shè)計(jì),主要由32位ARM開發(fā)板、射頻識(shí)別芯片、RFID卡、天線以及PC機(jī)應(yīng)用系統(tǒng)組成[3],其整體結(jié)構(gòu)示意圖如圖1所示,其中的讀卡器設(shè)計(jì)是整個(gè)系統(tǒng)中的核心部分。
圖1系統(tǒng)整體結(jié)構(gòu)
通過運(yùn)行后臺(tái)PC機(jī)上的應(yīng)用程序,可以實(shí)現(xiàn)對(duì)進(jìn)場人員的身份識(shí)別與驗(yàn)證,進(jìn)場人數(shù)、進(jìn)出入時(shí)間等的統(tǒng)計(jì)并形成報(bào)表,對(duì)缺席人員還可以通過短信的形式發(fā)與本人或?qū)⒐残畔⑷喊l(fā)與有關(guān)的人。
2系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)硬件設(shè)計(jì)主要是讀卡器的設(shè)計(jì),根據(jù)需求本讀卡器應(yīng)是一個(gè)具有擴(kuò)展功能豐富、可以獨(dú)立工作,也可以聯(lián)網(wǎng)交換信息,或者通過USB傳輸信息,且具有友好人機(jī)界面的嵌入式智能終端,具體設(shè)計(jì)示意圖如圖2所示,功能上主要包括:主控模塊、射頻模塊、指紋模塊、攝像模塊、顯示模塊、聲音報(bào)警模塊和通信模塊,這幾大部分協(xié)同工作,完成會(huì)場信息的采集、傳輸與顯示等操作。
圖2讀卡器結(jié)構(gòu)
讀卡器中的主控模塊采用ARM7核心板加外圍電路板的模式,ARM7核心板采用三星公司的S3C44B0X芯片,該芯片提供的硬件資源有:2.5V的ARM7TDMI內(nèi)核帶有8Kcache;可選的內(nèi)部SRAM;LCD控制器;2通道UART;1通道SIO;2通道通用DMA;2個(gè)提供外部請求引腳的總線DMA;8個(gè)外部中斷源;有時(shí)鐘功能的RTC等。具有系統(tǒng)管理、Cache和內(nèi)部存儲(chǔ)器、中斷控制器、定時(shí)器、UART等多種功能。在該芯片上內(nèi)擴(kuò)了顯示模塊、聲音報(bào)警模塊和通信模塊,外擴(kuò)射頻模塊、指紋模塊和攝像模塊,如圖2所示,另外,本ARM7核心板還擴(kuò)展了8MSDRAM、2MNORFLASH、16MNANDFLASH。
射頻模塊由射頻芯片、電源濾波部分、模擬信號(hào)濾波部分以及相應(yīng)的外圍電路組成,這里的射頻芯片采用NXP公司(原Philips公司)的MFRC531芯片,該芯片整合了所有的13.56MHz主動(dòng)非接觸通信方式和協(xié)議,與MFRC500、MFRC530和SLRC400引腳兼容,支持ISO14443TypeA和TypeB的所有層的通信方案,支持使用MIFARE更高的通信波特率。內(nèi)部收發(fā)器部分能夠驅(qū)動(dòng)近藕合設(shè)計(jì)的天線,而不需要另外活動(dòng)的電路;接收部分具有高效的解調(diào)與解碼電路執(zhí)行機(jī)構(gòu);數(shù)字部分能處理完整的ISO14443幀數(shù)據(jù)還有錯(cuò)誤檢測功能,并且支持快速的MIFARE安全算法;具有合適的并行接口,可以直接與8位的微處理器相連,并且支持SPI兼容接口??傊?,目前由于MFRC531能夠滿足設(shè)計(jì)需求,應(yīng)用范圍比其他的芯片更廣,資料齊備,因此這里選擇MFRC531射頻接口芯片。
2.2硬件接口電路設(shè)計(jì)
2.2.1ARM與射頻芯片的接口電路設(shè)計(jì)
為了能正確讀取RFID卡上的數(shù)據(jù),首先要對(duì)S3C44B0X和MFRC531的接口電路進(jìn)行設(shè)計(jì),由于S3C44B0X微處理器有足夠的地址和數(shù)據(jù)總線,因此這里的接口采用獨(dú)立的地址/數(shù)據(jù)總線,采用并口方式,將MFRC531的ALE引腳接高電平,將A0、A1、A2分別對(duì)應(yīng)接S3C44B0X的A0、A1、A2,片選NCS信號(hào)接S3C44B0X的nGCS3,復(fù)位輸入RSTPD接GPF0,通過對(duì)S3C44B0X的GPF0引腳控制操作決定射頻部分的工作狀態(tài)[5],如圖3所示。該接口主要負(fù)責(zé)射頻識(shí)別卡和管理主機(jī)PC之間的信息交換和傳輸,主要完成射頻卡的進(jìn)出控制,射頻卡與應(yīng)用終端之間信息聯(lián)絡(luò)與管理層主機(jī)通訊等功能。
另外,MFRC531與天線的接口由TX1、TX2、RX及VMID連接,TX1、TX2負(fù)責(zé)調(diào)制后的射頻信號(hào)輸出到天線,激勵(lì)天線產(chǎn)生電磁波將信號(hào)輸出到電子標(biāo)簽,而RX引腳則接收電子標(biāo)簽調(diào)制后由天線接收到的副載波信號(hào),信號(hào)經(jīng)過內(nèi)部狀態(tài)機(jī)的解調(diào)解碼后成為接收到的數(shù)據(jù)。為了實(shí)現(xiàn)遠(yuǎn)距離的讀寫,最好采用環(huán)形或矩形天線,這里采用環(huán)形天線。
2.2.2ARM與其他芯片接口電路設(shè)計(jì)
在ARM核心板上通過內(nèi)擴(kuò)展LCD接口完成人機(jī)界面顯示功能,S3C44B0X內(nèi)置了LCD控制器,具有將顯示緩存中的圖像數(shù)據(jù)傳輸?shù)酵獠縇CD驅(qū)動(dòng)電路的功能。本系統(tǒng)設(shè)計(jì)采用了一片74LVC164245A作為總線驅(qū)動(dòng)芯片,將164245的方向控制接為高電平,S3C44B0X的信號(hào)通過164245后,再接到LCD接口上。
S3C44B0X具有IIS總線,IIS總線是一種面向多媒體計(jì)算機(jī)的音頻總線,該總線專門負(fù)責(zé)音頻設(shè)備之間的數(shù)據(jù)傳輸,廣泛應(yīng)用于各種多媒體系統(tǒng)中。本系統(tǒng)設(shè)計(jì)中用IIS總線輸出數(shù)字音頻信號(hào)到音頻接口芯片,完成聲音報(bào)警信息提示,這比一般采用的蜂鳴器更友好。
圖3微處理器與MFRC531接口
在ARMS3C44B0X板上外擴(kuò)展指紋傳感器芯片F(xiàn)PS200[6],通過有效讀取指紋圖像實(shí)現(xiàn)與射頻識(shí)別一起雙重認(rèn)定身份的功能。FPS200芯片是美國Veridicom公司最新開發(fā)的接觸式指紋傳感器,其與處理器間的接口有USB、微處理器總線(MCU)和串行外接口(SPI)共3種方式,本系統(tǒng)采用了總線方式。具體電路設(shè)計(jì)為:CS1接高電平,CS0接ARM的nGCS1;地址線、數(shù)據(jù)線、讀寫信號(hào)線直接與ARM連接,其他引腳按照FPS200的數(shù)據(jù)手冊連接即可。攝像模塊的主要功能是在刷卡的同時(shí)進(jìn)行電子攝像,攝像頭通過USB接口直接與S3C44B0X核心板相連接,這也是本系統(tǒng)中進(jìn)行身份識(shí)別的第3種方法,所采集到的圖像與卡號(hào)信息一并存放在后臺(tái)數(shù)據(jù)庫中,也可當(dāng)時(shí)就顯示在后臺(tái)管理頁面上,這可通過軟件程序根據(jù)需要具體設(shè)置,這樣可更增強(qiáng)了對(duì)與會(huì)人員身份驗(yàn)證的安全性。
3系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)軟件設(shè)計(jì)分為兩大部分,分別為讀卡器程序設(shè)計(jì)和PC管理軟件程序設(shè)計(jì)。其中讀卡器程序設(shè)計(jì)采用開源免費(fèi)的μC/OSⅡ操作系統(tǒng)加上系統(tǒng)應(yīng)用軟件的結(jié)構(gòu),主要完成操作系統(tǒng)μC/OSⅡ的移植、讀卡器的讀寫任務(wù)程序、中斷服務(wù)程序、LCD處理程序、指紋讀取識(shí)別程序、USB與網(wǎng)絡(luò)接口程序、串口程序、數(shù)字音頻程序、攝像處理程序的設(shè)計(jì)。在μC/OSⅡ的程序源代碼中,只有OS_CPU_C.C、OS_CPU.H、OS_CPU_A.S這3個(gè)文件與處理器硬件相關(guān),所以,移植μC/OSⅡ也就是修改這3個(gè)文件,其中OS_CPU_C.C中包含了6個(gè)需要修改的與處理器相關(guān)的函數(shù),分別為OSTaskStkInit()、OSTaskCreateHook()、OSTaskDelHook()、OSTaskSwHook()、OSTaskStatHook()和OSTimeTickHook(),這6個(gè)函數(shù)中的OSTaskStkInit()用來初始化任務(wù)堆棧,由函數(shù)OSTaskCreate()或OSTaskCreateExt()調(diào)用,其余5個(gè)函數(shù)都為用戶自定義函數(shù);OS_CPU.H文件中給出的是定義處理器結(jié)構(gòu)設(shè)置變量的內(nèi)容,用于定義數(shù)據(jù)類型的長度,一些與處理器相關(guān)的常數(shù)和宏定義等,如進(jìn)入和退出臨界狀態(tài)的函數(shù)OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL
();OS_CPU_A.S中是用匯編寫的程序,如OSStartHighRdy()、OSCtxSw()、OSIntCtxSw()、OSTickISR()是幾個(gè)必須由匯編程序來完成的函數(shù)。
對(duì)射頻卡操作的過程則是一個(gè)很復(fù)雜的程序執(zhí)行過程,需要對(duì)MFRC531內(nèi)部一系列的寄存器進(jìn)行配置,而且這些操作對(duì)時(shí)序要求非常嚴(yán)格。對(duì)射頻卡的典型操作為:尋卡(得到卡類型代碼)、防沖突(得到卡號(hào))、選卡、驗(yàn)證密碼、讀寫操作、掛起,并且這些操作必須按固定的順序執(zhí)行,在對(duì)卡類型判斷后將卡號(hào)送到服務(wù)器數(shù)據(jù)庫,系統(tǒng)對(duì)讀入的卡號(hào)信息與數(shù)據(jù)庫中已有的卡號(hào)信息進(jìn)行比較后,判斷出該卡號(hào)是否為有效卡或者是否在有效權(quán)限內(nèi)從而進(jìn)行不同的處理,如對(duì)于無效卡則指示其紅燈亮、并有報(bào)警或發(fā)出語音提示等。
LCD用于實(shí)時(shí)顯示當(dāng)前信息,當(dāng)沒有卡進(jìn)入射頻天線有效范圍時(shí),LCD上顯示當(dāng)前時(shí)間及日期;當(dāng)有卡進(jìn)入到射頻天線的有效范圍時(shí),LCD上顯示卡號(hào)和身份驗(yàn)證成功信息。同時(shí),系統(tǒng)把有效卡的刷卡信息記錄到“進(jìn)出人員信息表”中,并在界面上顯示;對(duì)于無效卡只統(tǒng)計(jì)次數(shù)但不記錄信息。指紋圖像的讀取通過對(duì)傳感器FPS200初始化實(shí)現(xiàn),初始化主要是對(duì)放電時(shí)間寄存器DTR、放電電流寄存器DCR和增益控制寄存器PGC寄存器的設(shè)置,以便在獲得整幅圖像之前啟動(dòng)傳感器并對(duì)圖像參數(shù)進(jìn)行調(diào)整,流程如圖4所示。在設(shè)置完這3個(gè)寄存器后,再設(shè)置寄存器CTRLA值為0x02,然后從第0行開始對(duì)該行中每一個(gè)像素進(jìn)行A/D轉(zhuǎn)換,循環(huán)讀取CTRLA直到完成第299行的最后一個(gè)像素即可獲取整幅指紋圖像像素值。
圖4FPS200指紋采集流程
將OV511攝像頭與嵌入式硬件平臺(tái)相連,PC機(jī)通過硬件平臺(tái)控制OV511,完成攝像頭控制、采集和傳輸圖像功能。后臺(tái)PC管理軟件主要實(shí)現(xiàn)系統(tǒng)登錄,信息管理(包括用戶信息管理、管理員信息管理、受限時(shí)段信息管理),信息瀏覽、查詢、統(tǒng)計(jì)和打印管理,非法進(jìn)出人員報(bào)警監(jiān)控和幫助系統(tǒng)等功能。該管理軟件以Windows系統(tǒng)為平臺(tái),以功能強(qiáng)大的C#.NET作為前臺(tái)開發(fā)工具,后臺(tái)數(shù)據(jù)庫采用SQLServer2000,服務(wù)器使用Windows2000操作系統(tǒng),安裝IIS6.0,同時(shí)各個(gè)客戶端都需要安裝Win2000以上版本,系統(tǒng)以C/S模式進(jìn)行會(huì)議數(shù)據(jù)采集,用B/S模式進(jìn)行實(shí)時(shí)數(shù)據(jù)采集,以便于實(shí)現(xiàn)網(wǎng)上數(shù)據(jù)共享。
本系統(tǒng)中設(shè)置的主要數(shù)據(jù)表有:用戶資料表、操作員信息表、時(shí)段限制信息表、進(jìn)出人員信息表和卡片信息表。
4系統(tǒng)測試及分析
本會(huì)議智能安全管理系統(tǒng)設(shè)計(jì)完成后進(jìn)行了一系列的測試,自行測試的主要內(nèi)容如下:
(1)讀卡器與PC間的通信。讀卡器與PC機(jī)通過網(wǎng)絡(luò)能連接成功,也能將讀到的標(biāo)簽數(shù)據(jù)成功傳輸?shù)胶笈_(tái)數(shù)據(jù)庫中,如圖5所示。對(duì)有效卡(在有效時(shí)段或非有效時(shí)段)和無效卡的讀取,其LCD顯示、語音提示和相應(yīng)燈亮都運(yùn)行正常。
(2)指紋識(shí)別。指紋識(shí)別需要對(duì)FPS200芯片的3個(gè)放電參數(shù)DTR、DCR和PGC進(jìn)行很好設(shè)置,這3個(gè)參數(shù)值對(duì)采集指紋圖像的質(zhì)量有一定影響,增加DTR參數(shù)值延長放電時(shí)間可以減少指紋圖像背景噪音;增加DCR參數(shù)值同樣起到減少指紋圖像背景噪音的作用,但升高DCR同時(shí)減少DTR以維持圖像清晰度;PGC參數(shù)控制了指紋圖像與背景的對(duì)比度。所以在實(shí)際工作中根據(jù)不同的工作條件需對(duì)參數(shù)進(jìn)行很好調(diào)整。
(3)攝像。攝像功能基本完善,能將圖片傳至后臺(tái)數(shù)據(jù)庫中,如圖6所示。
圖5讀卡器與PC機(jī)連接讀卡
}
圖6圖像監(jiān)控
5結(jié)束語
本文介紹的基于ARM的RFID會(huì)議智能安全管理系統(tǒng),充分利用了ARM具有全面的、豐富的片上資源特點(diǎn),從而實(shí)現(xiàn)了S3C44B0X和MFRC531芯片的直接接口,并且還擴(kuò)展了網(wǎng)絡(luò)接口、指紋接口、音頻接口和攝像接口,使得系統(tǒng)除了利用射頻識(shí)別完成具有會(huì)議考勤、語音報(bào)警功能外,還能完成攝像識(shí)別以及通過生物識(shí)別技術(shù)的指紋識(shí)別來實(shí)現(xiàn)多重認(rèn)證識(shí)別身份的功能,使得高級(jí)會(huì)場更加安全,這是RFID在高級(jí)會(huì)議的智能安全管理或門禁等中的很好應(yīng)用,對(duì)RFID在其他領(lǐng)域如煤礦井下、電力企業(yè)等領(lǐng)域的應(yīng)用也有很好的借鑒作用。
評(píng)論