RFID中間件在RFID讀寫器和應用程序之間起橋梁作用。應用程序端使用中間件所提供一組通用的應用程序接口(API),即能連到RFID讀寫器,采集 RFID標簽數據。即使存儲RFID標簽情報的數據庫軟件或后端應用程序增加或改由其他軟件取代,或者讀寫 RFID讀寫器種類增加等情況發生時,應用端不需修改也能處理,省去多對多連接的維護復雜性問題。嵌入式RFID中間件在RFID的大規模應用中將扮演重要的角色。在具體應用部署過程中,會有大量的嵌入式設備充當邊緣中間件的硬件平臺。對于眾多有意從事中高端RFID讀寫器開發的硬件廠商而言,借助嵌入式 RFID中間件迅速實現硬件集成基礎之上的軟件集成,是幫助硬件廠商快速升級產品系列,滿足企業拓展市場和業務范圍需要的有效舉措。通透性是這種系統整個應用的關鍵,正確抓取數據、確保數據讀取的可靠性,以及有效地將數據傳送到后端系統都是必須考慮的問題。 ARM處理器是當今應用最為廣泛的處理器芯片之一,低功耗、低成本、高性能等特點使其在消費電子類產品中的競爭力日趨顯著。本文提出了一種基于ARM的支持多通信平臺的RFID中間件系統設計,可以更廣泛、更豐富地推動RFID應用。
1 硬件設計
AutO_ID中心曾提出了名為 Savant的RFID中間件概念的雛形,并制定出相應的1.0規范草案、技術手冊和原型系統,明確了RFID中間件的最原始功能。在此基礎上,本系統應有以下功能:
①管理讀寫設備,支持多種讀寫器(包括不同廠商、不同類型)。
②采集、過濾并緩存數據。
③ 提供應用開發接口。
④與EPC體系標準服務交互:ONS、PML。
⑤支持多通信平臺,如Internet、GSM、 GRPS和CDMA。
⑥外設的集成控制與協同,實現嵌入式RFID中間件的柔性設備控制。
1.1 ARM核微處理器
本系統在功能上分為有線通信模塊、無線通信模塊、人機交互模塊和核心模塊。本設計采用Samscmg公司203 MHz的 ARM920T內核的處理器S3C2410。
S3C2410微處理器是一個多用途的通用芯片,內部集成了微處理器和常用外圍組件,可用于各種領域,指令處理速度達到200MIPS。其特性包括:擴展總線最高頻率為100MHz,32位數據,27位外部地址線,存儲控制器(8個存儲體)包含RAM(SDRAM)控制器、NAND控制器;復位時引導芯片選擇(8、16位存儲或NAND可供選擇);4個帶有PWM的16位定時器,多達55個中斷源的中斷控制器;3個UART,支持IrDA 1.O;4個DMA通道(支持外設DMA);支持STN與TFTL LCD控制器;2個 USB 口;I2C-Bus接口;2個串行外圍接口電路(SPI)和SD卡接口。此外,S3C2410上可以移植標準Linux操作系統,使得程序開發更加簡單。
1.2 主板模塊
系統內存部分由1片8M×16位數據寬度的Flash,共 16 MB Flash(Intel E28F128J3C),讀寫周期150 ns;2片16M×16位數據寬度的 SDRAM(HY57V561620BT)構成,共64 MB SDRAM。
S3C2410提供8路片選 nGCSn[0~7],每個片選都指定了固定的地址,每個片選固定間隔為128 MB。系統內存由2片16M×16位數據寬度的SDRAM拼成32位模式,公用nGCS6。共64 MB RAM。起始地址為Ox30000000。nGCS0接的是一片8M×16位數據寬度的 Intel E28F128 Flash,安裝在BANK0,起始地址為0x0。其中內核燒寫的起始地址為Ox40000,根文件系統RAM~DISK燒寫的起始地址為 Oxl40000。
1.3 人機交互模塊
系統利用GPIO口提供4個按鍵,以便能夠響應按鍵中斷,并獲取鍵值。利用EINT4使用。 PS2鍵盤。S3C2410自帶LCD控制器和觸摸屏接口。本系統使用型號為LQ035Q7DB02的LCD 液晶顯示屏,采用MAX1664.作為電源驅動器。MAX1664是美國Maxim公司生產的有源矩陣液晶顯示器開關電源,具有升壓、雙路輸出鎖相等特點,還提供一個LCD底板驅動器。
1.4 有線通信模塊
該模塊包括RS-232串行接口和1個 10/100M自適應以太網接口。本系統采用一種單電源、低功耗RS-232芯片MAX3232。13、8腳接收:RS-232電平,最大值可達±25 V,從而12、9腳輸出TTL電平,低電平不大于O.4V,高電平不低于Vcc-O.6 V;11、10腳輸入TTL電平,14、7腳輸出 RS-232電平,最小幅值大于±5.0 V,典型值為±5.4 V。當向外發送數據時,TXD1有一個下降沿,指示燈LED亮,經過 MAX3232,TTL電平轉化為RS-232電平。當接收外部數據時,RXD1有一個下降沿,指示燈LED亮,外部RS-232電平經過MAX3232 轉化為TTL電平進入微處理器。
系統通過外接1片DM9000以太網MAC芯片擴展了一個10/100M自適應的以太網接口,占用資源nGCS1/EINTO。DM9000是 Davicom公司的一個全雙工高速以太網控制處理器,內部集成了10/100M PHY、MAC、 MMU和4 KB Dword SRAM。兼容3.3 V和5 V供電。它提供8位、16位和32位3種接口,4路多功能GPIO。此外DM9000還集成有接收緩沖區。S3C2410X支持2路USB HOST接口,支持高速、低速USB設備。
1.5 無線通信模塊
無線技術是目前通信發展中最具有活力和前景的技術,支持無線接人的RFID中間件可以部署于無固定網絡基礎設施的場景,降低有線網絡部署成本。RFID中間件還可以用無線通信方式向用戶傳輸信息,提高信息傳遞的實時性。通過在系統中實現 GPRS (General Packet Radio Service)模塊,使系統具備移動通信功能。GPRS是通用分組無線業務的簡稱,以分組模式在PLMN和與外部網絡互聯的內部網上傳輸。理論上,GPRS可提供高達115 kbps的傳輸速率,但實際上用戶用到的帶寬大約為40 KB
~100KB。 GPRS分組交換接人時間小于1 s,廣泛支持IP協議。GPRS的這些特點提供了一個完備的基于TCP/IP協議的通信解決方案。
GPRS 通信模塊使用Sony Ericsson公司的GR47來實現GPRS上網的功能。GR47是GSM/GPRS全套語音和數據功能的工業級的先進無線模塊,所有的功能都集中在一塊集成的芯片內,內嵌TCP/IP協議棧。
1.6 電源設計
系統的核心模塊工作電源為單一的3.3 V/0.5 A直流。由于核心模塊電源消耗功率較小,因此系統采用LT10856線性穩壓芯片,使用電路板上下面銅箔作為散熱面,用 9 V/0.8 A直流電源供電。
在其他的應用設計中根據不同的電源消耗需求,可以選擇線性穩壓源方案和開關穩壓源方案。對于前一種選擇,可以獲得低噪聲、廉價等益處,但同時也有效率低、發熱較大等缺點;對于開關電源方案,正好與線性電源的優缺點相反。
1.7 其他外設
系統提供了2個USB HOST接口,可支持U盤、USB攝像頭等多種USB設備,只需開發不同的設備驅動就可有效擴展。
使用UDA1380音頻編解碼器可有效支持MD、CD、MP3格式的音頻文件的播放。
2 軟件設計
Linux 性能強大,開源免費,有極強的平臺可伸縮性,符合POSIX標準,且有強大的網絡功能。這些特點使其近年來在嵌入式領域發展迅速,廣泛滲透到信息家電、網絡設備和手持終端等市場,因此本系統以Linux操作系統為依托,在其上開發應用程序。中間件軟件是一個多層次多模塊的軟件系統,共分為3個層次,如圖3 所示。
系統配置層:實現系統配置功能,調用下層提供的一些功能接口,不僅可以添加下層的基本處理單元,而且可以對處理單元的一些參數進行有效配置。它包括Web Server接口模塊和遠程控制信息臺模塊。
數據邏輯層:實現該軟件系統的基本功能,包括讀寫器命令處理、標簽過濾處理、對象域名服務(ONS)接口、企業級服務器接口交互(可能改為和PC中間件進行交互)。該層次完成系統的邏輯功能,包括設備管理模塊、數據過濾模塊、ONS查詢模塊(保留)、企業級別服務器接口模塊。
基礎設施層:提供系統運行所需要的基本功能,如數據庫訪問功能、內存管理功能,它們為其他模塊提供統一穩定的接口,屏蔽一些差異性。該層次包括網絡管理模塊、內存管理模塊(保留)、數據庫訪問模塊。
2.1 Linux 的移植
在嵌入式開發中,把操作系統移植到開發板是進行嵌入式應用程序開發的前提和基礎。ARM Linux是針對ARM體系結構的嵌入式Linux操作系統。在編譯Linux內核之前,首先要針對具體的硬件對內核進行配置,包括系統類型的配置。本系統選擇 ARM system type。在配置好通用內核選項、塊設備和文件系統之后,即可編譯修改后的內核文件,生成一個內核映像的自解壓壓縮文件。通過運行 make clean dep zImage對該文件進行依賴編譯,系統將在/arch/armnommu/boot目錄下生成內核映像zImage,并將zImage下載到Flash 中的64K地址處。運行時,將U-Boot復制到SDRAM中的OxOc300000地址處并啟動 zImage;zImage會自行解壓縮,將其解壓縮到 SDRAM中的OxOc080000地址處并開始運行。內核啟動后,系統會將romfs作為根文件系統。在linux-dist目錄下運行make menuconfig命令可配置Linux的文件系統。
2.2 RFID標簽數據處理
系統讀取的RFID標簽數據在中間件中主要經歷數據管理、編碼管理和過濾規則管理,之后存入本地數據庫。其中數據管理包括數據校驗、數據處理和數據存儲;編碼管理即設定編碼規范,可配置支持不同數據編碼規范;過濾規則管理能支持用戶配置數據過濾規則。系統基本流程如圖4所示。
用戶的參數配置信息通過消息隊列發送給中間件軟件,軟件分析發送過來的數據,對系統工作狀態作出一定的調整。同時,系統通過網絡處理模塊接收從網口上讀寫器發送過來的數據,把這些數據分為標簽數據和讀寫器管理數據兩類。系統每個讀寫器實例都有自己的數據處理線程,它分析自己獨特的數據格式形成統一的數據,并且調用該種讀寫器的處理方法,對解析后的數據結合該讀寫器特定的數據處理參數,對標簽數據進行過濾、轉發等工作。整個系統中有唯一一個管理命令處理線程,它輪詢每個讀寫器的管理命令處理隊列。如果有命令數據,那么調用該讀寫器特定的處理方法對這些數據進行處理。
結 語
本文提供了一種支持多通信平臺的嵌入式RFID中間件系統設計方案。支持無線接入的RFID中間件可以部署于無固定網絡基礎設施的場景,降低有線網絡部署成本。RFID中間件還可以用無線通信方式向用戶或者系統傳輸信息,提高了信息傳遞的實時性。
評論
查看更多