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