<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于應用技術實現RFID中間件的設計解決方案

電子設計 ? 來源:電子技術應用 ? 作者:李捷 ? 2021-06-22 17:03 ? 次閱讀

無線射頻識別RFID(Radio Frequency Identification)技術近年來得到了快速的發展,目前已進入商業化應用階段。

企業實施RFID方案的最終目的是將RFID產生的海量信息為業務所用。這就需要解決企業現有的業務系統如何與RFID系統接口的問題,包括連接RFID設備、處理RFID數據、將其轉換成業務信息等。為了避免因標簽種類變化、系統業務邏輯改變而需要重新編寫業務信息的情況,需要將RFID硬件模塊的連接控制、中間數據處理與上層應用軟件分開,因此引入了RFID中間件的概念。

此外,利用SOA系統具有可擴展性高、可維護性好的特點,以便為用戶提供靈活的維護服務,還引入了面向服務體系架構SOA(Service Oriented Architecutures)。

基于上述分析,本文提出了一種基于SOA的RFID中間件方案。該方案可把各個應用RFID技術的功能抽象成服務,應用基于J2EE構建方法,綜合應用JMX、JMS、Struts等技術。企業應用系統通過請求服務的方式來獲取RFID中間件提供的服務。用XML進行數據傳輸,并提供Web Service接口。

1 技術基礎

1.1 RFID中間件

RFID中間件是實現RFID硬件設備與應用系統之間數據傳輸、過濾、數據格式轉換的一種中間程序,將RFID閱讀器讀取的各種數據信息,經過中間件提取、解密、過濾、格式轉換、導入企業的管理信息系統,并通過應用系統反映在程序界面上,供操作者瀏覽、選擇、修改、查詢。中間件技術也降低了應用開發的難度,使開發者不需要直接面對底層架構,而是通過中間件進行調用。

RFID中間件是一種消息導向的軟件中間件,信息是以消息的形式從一個程序模塊傳遞到另一個或多個程序模塊。消息可以非同步的方式傳送,所以傳送者不必等待回應。RFID中間件是在企業應用原有的中間件發展的基礎上,結合自身應用特性進一步擴展并深化了中間件的應用,使得RFID應用系統的開發變得更容易,提高了軟件的可移植性,增強了系統的可維護性和可靠性,所以它的架構設計解決方案是RFID應用的一項極為重要的核心技術。

目前提供RFID中間件平臺的廠商主要有IBM、Oracle、Microsoft、SAP、Sun公司。對于這些廠商,RFID中間件只是其現有軟件的擴展,其RFID產品可以迅速方便地與各自現有的軟件產品線集成在一起。但缺點是其產品對該廠商其他軟件產品的依賴性比較大。

1.2 面向服務的體系結構SOA

面向服務的體系結構是一種技術架構風格,它代表了一種開放的、敏捷的、可擴展的、可組合的架構,定義了服務提供者和消費者之間的松散耦合關系。其業務敏捷的特點,幫助企業把業務變得更加靈活,能夠適時、快速地響應變化。SOA的核心概念就是服務,其基本結構如圖1所示。其中包含服務的3個基本角色:服務提供者、服務請求者和服務注冊。在這些角色之間使用了3種操作:服務發布、服務發現和服務綁定。作為SOA的一種實現技術,Web Services提供了基于XML的標準接口,具有完好的封裝性、松散的耦合性、協議規范的標準性以及高度的可集成性等特點,能夠良好地滿足SOA應用模式的需求。

基于應用技術實現RFID中間件的設計解決方案

1.3 JMX和JMS

Java管理擴展JMX(Java Management Extensions)是一個為應用程序、設備、系統等植入管理功能的框架。在JMX規范中,管理組件是一個能代表管理資源的Java對象,遵從一定的設計模式,實現該規范定義的特定的接口。該定義保證了所有的管理組件以一種標準的方式來表示被管理資源。管理接口就是被管理資源暴露出的一些信息,通過對這些信息的修改能夠控制被管理資源。管理接口包括:能被接觸的屬性值、能夠執行的操作、能發出的通知事件等。

JMS(Java Message Service)是訪問企業消息系統的標準API,定義了Java中訪問消息中間件的接口,但JMS只是接口,并沒有給予實現,實現JMS接口的消息中間件稱為JMS提供者(JMS Provider)。在JMS框架中運轉的方法如下:

(1)得到1個JNDI初始化上下文(Context)。

(2)根據上下文以查找1個連接工廠。

(3)從連接工廠得到1個連接(Connect)。

(4)通過連接以建立1個會話(Session)。

(5)查找目的地(Topic/Queue)。

(6)根據會話以及目的地以建立消息制造者(TopicPub

lisher/QueueSender)和消費者(TopicSubscrib-er/QueueReceiver)。

2 基于SOA的RFID中間件架構

利用SOA松耦合、面向業務的特點,結合RFID中間件實現的應用系統集成的方案可提供豐富的接口,能夠幫助實現對RFID設備的管理以及對數據的處理,簡化了對底層設備應用的支持,避免了對底層設備的低級別接口的處理。利用Web Service技術實現RFID中間件與企業系統的集成,完成兩者的松耦合集成。

基于SOA的RFID中間件架構,其基礎架構層分為設備管理層、事件處理層和服務接口層,并通過Web Service技術包裝了每1層相應的功能,且進行了具體實現。本文重點介紹該RFID中間件架構中的基礎架構的3個功能層。這3個層次有著明確的功能劃分和層間的交互接口。RFID中間件架構如圖2所示。

中間件設計包括RFID設備管理組件和事件過程管理組件。RFID設備管理組件是分布式的代理,負責第1級的事件過濾;設備管理包括設備詢問器,對每1個閱讀器和傳感器設備,代理必須互相作用。過程管理組件是通過RFID事件下一級的過濾,把事件放置到交易環境中,然后發布應用層事件ALE(Application Layer Event)。

2.1設備管理層

設備管理層位于架構的最底層,直接與閱讀器交互,實現的主要功能包括:

(1)采集射頻卡上的數據。

(2)對于來自不同類型的閱讀器的數據進行適配處理,得到統一的、格式化的數據,并進行數據校驗。

(3)將校驗無誤的數據按照用戶定義的協議進行封包,并將消息包發送到事件處理層的消息系統。

依據其實現的功能,分別針對射頻卡閱讀器模塊、閱讀器接口、數據校驗和數據打包4個方面進行研究和開發。閱讀器模塊是根據硬件供應商提供的規范進行編碼實現的;閱讀器接口主要解決將來自協議格式的數據轉化為系統所需要的EPC碼;數據校驗采用CRC校驗;數據打包先依據獲取的卡片編碼中“數據分類”內容,判斷出該標簽數據屬于哪種類型,然后按照這種數據類型將標簽數據封裝成相應的消息包。

由于每個ALE閱讀器事件流可能來自多個物理設備配置表,因此設備管理器為每個設備表創建1個詢問器,并通知詢問器哪種傳感器被綁定到指定的閱讀器上。詢問器發送傳感器事件流到設備管理器,設備管理器將1個或多個傳感器事件流構造成閱讀器事件。設備管理器把初步處理的閱讀器事件發送到ALE服務器。

詢問器代理:1個設備管理器的配置由它管理的設備和它要咨詢的詢問器組成,然后與它所對應的設備管理器交互。每個設備概要表由物理設備屬性和詢問器配置組成。物理設備屬性是被命名過的傳感器(例如天線和1個金屬傳感器)。

事件信息空間:事件信息空間類似于公共的容錯事件信息經紀人。它支持異步接收來自設備管理器的事件、ALE事件以及其他來自事件過程管理的配置需求。事件信息空間同時提供一個存儲轉發機制,確保重要的事件在中斷的網絡或其他組件失效的情況下不丟失。

在系統中,將每個閱讀器模塊的遠程方法調用封裝為1個管理組件(MBean)作為JMX服務器的實例注冊到JMX服務器中。通過JMX框架對閱讀器進行監控和管理,使RFID中間件系統能提供管理、監控閱讀器的功能。本部分描述為閱讀器管理組件添加時間服務,以達到定時控制閱讀器的目的。

2.2 事件處理層

在RFID系統中,一方面是各種應用程序以不同的方式頻繁地從RFID系統中取得數據;另一方面卻是有限的網絡帶寬,其存在的矛盾,使其有必要設計1套消息傳遞系統,使設備管理層產生的事件能夠傳遞到消息系統中,由事件管理過程進行處理,然后把數據傳遞到相關的應用系統。在這種模式下,閱讀器不必關心哪個應用系統需要什么數據。同時,應用程序也不需要維護與各個閱讀器之間的網絡通道,僅需要將需求發送到消息系統中即可。由此,設計出的消息系統應具有如下功能:(1)數據緩存功能;(2)基于內容的路由功能;(3)數據分類存儲功能。

下面將描述創建一個MBean來實現一個數據處理節點。消息組件可以按照MBean來部署。消息處理組件執行功能:從源隊列中獲取消息,對消息執行處理,然后將結果消息放置到目標隊列。消息處理UML圖如圖3所示。

JBossMQ是通過xml文件jbossmq-destinations-service.xml進行配置的。以下是獲得JBOSS JNDI初始化上下文(Context)的代碼:

Hashtable props=newHashtable();

props.put(Context.INITIAL CONTEXT FACTORY,“org.jnp.interfaces.NamingContextFactory”);

props.put (Context. PROVIDER URL, ip +“:1099”);

props.put(“java.naming.rmi.security.manager”,“yes”);

props.put(Context.URL PKG PREFIXES,“org. jboss.naming”);

Context context=new InitialContext(props);

來自消息系統的消息以臨時XML文件的形式和磁盤文件方式保存,供數據接口使用。消息系統完成消息緩存、分類整合、路由轉發、臨時存放等操作。

事件過程管理EPM(Event Process Managment)由ALE服務、配置管理、復雜事件過程以及交易規則執行組成,對EVP的訪問能通過HTTP、JMS以及網絡服務接口實現。

EPM登記/訂閱其感興趣的事件,當在信息空間中有事件發生時,即會通知EPM,一旦接收到這些事件,隨后會應用復雜事件處理(過濾器),結合交易規則對這些事件進行處理。另一種情況下是:外部的客戶端(如EPC-IS)已經注冊接收ALE,這些過濾后的事件會被發送到ALE客戶端指定的位置。

2.3 服務接口層

來自事件處理層的數據最終是分類的XML文件。同一類型的數據以XML文件的形式保存,并提供給相應的1個或多個應用程序使用。而服務接口層主要是對這些數據進行過濾、入庫操作,并提供訪問相應數據庫的服務接口。具體操作如下:

(1)將存放在磁盤上的XML文件進行批量入庫操作,當XML數據量達到一定數量時,啟動數據入庫功能模塊,將XML數據移植到各種數據庫中。

(2)在數據移植前將重復的數據過濾掉。

(3)為企業內部和企業外部訪問數據庫提供Web Services接口。

其中,數據過濾過程是在處理臨時存放的XML文件的過程中完成的。方法是:將同一個卡號的多條記錄按照讀入的時間戳進行比較,若相鄰記錄的時間戳差值小于用戶定義的閾值,則認為重復讀取發生,剔出后1條記錄。依次類推,剔出掉所有冗余數據。利用Web Services技術將對數據庫的訪問以服務的形式發布,供企業內部應用程序和企業合作伙伴調用。以數據過濾為例,其核心代碼如下:

for(int i=1;i<rowcount;i++)

{span=EndTime.Subtract(StartTime);

spantiIDe=sPan.Seconds; //相鄰記錄的時間戳之差

if(spantime<=0.002)

{subtime[ i]=i;}

//若相鄰時間戳差值小于2 ms,

//標記第2條記錄為冗余數據

else subtime[ i]=0;}

for(int j=1;j<rowcount;j++) //刪除冗余記錄

{if(subtime[j].ToString()!=“0”)

{ds.Tables[0].Rows[j].Delete();j=j-1;

rowcount=rowcount11;}

}

以下是服務接口層向應用系統發送SOAP響應,返回處理結果的部分代碼。

<report xmlns=“”>

<process procInsID=“503” givenID=“231” givenName=“

ShipOut”>

<event eventType=“report_tag_event”>

<header>Product Quantity Match Success

</header>

<status>success</status>

<tagList>

<tag ID=“00110011”detectTime=“2008-11-01 T13:13:

00.110+08:00”/>

</tagList>

3 RFID中間件的實現及測試

RIFD中間件系統開發工具采用Eclipse3.2,應用服務器軟件采用JBOSS4.0, Web容器為Tomcat5.5。此外,服務器端采用了基于Struts的MVC多層次結構框架,數據服務層則采用MySQL5.0數據庫。

實驗中,終端通過485網絡組網,應用系統使用的是倉庫管理系統。倉庫管理系統作為服務請求者,根據服務接口層公布的入庫信息核對服務WSDL,得到該服務的接口定義和服務端偵聽地址,由入庫管理模塊通過服務代理接口向Web服務發送SOAP請求消息,請求入庫信息核對服務,Web服務平臺收到該服務請求后,向RFID中間件發送消息,創建一個出庫信息核對服務的實例,設備管理層根據服務請求參數,啟動相應的RFID閱讀器讀取標簽信息。然后將讀取的標簽信息經處理后打包傳給事件處理層,根據服務請求的參數與捕獲的標簽信息進行核對處理,處理后向服務接口層返回核對數據正確或者錯誤的信息,如圖4所示。最后,服務接口層向倉庫管理系統發送SOAP響應,返回處理結果。

實驗表明,原來的應用系統僅僅支持1種固定卡型的閱讀器,采用RFID中間件以后,可以在1個系統中采用各種卡型的閱讀器,而上層程序不需要再進行修改,增加了系統的可擴展性和易維護性,節約了時間和成本。系統穩定性也有大的提高,有效解決了企業應用中所關心的問題。

本文提出了一個基于SOA,綜合應用JMX、JMS等技術的RFID中間件架構,并說明了RFID中間件各部分的含義和作用及基礎架構的實現。這種中間件結構能很好地屏蔽低端各種物理設備的信息。由于采取了模塊化的結構,可以根據需要進行裁減,在需要的時候再加入相應的模塊,例如,可根據需要是否添加認證和安全模塊。通過Web Service,可實現對RFID中間件更高層次包裝,保證了RFID基礎架構中3個功能層之間的相互獨立和協同工作。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • RFID
    +關注

    關注

    384

    文章

    5828

    瀏覽量

    235283
  • 射頻識別
    +關注

    關注

    8

    文章

    556

    瀏覽量

    38789
  • 無線
    +關注

    關注

    31

    文章

    5316

    瀏覽量

    171758
收藏 人收藏

    評論

    相關推薦

    基于SOA的數字電視中間件系統的研究與實現

    基于SOA的數字電視中間件系統的研究與實現針對數字電視制播系統應用集成時存在的異構問題.對數字電視中間件系統進行研究。提出數字電視發送端制播系統中間件的基本思想。該系統
    發表于 10-06 10:03

    手機中間件

    國內外現在有什么比較成熟的手機中間件平臺嗎? 求技術介紹。
    發表于 05-29 17:34

    淺析RFID中間件

    RFID是2005年建議企業可考慮引入的十大策略技術之一,而中間件(Middleware)可稱為是RFID運作的中樞,因為它可以加速關鍵應用的問世。
    發表于 07-10 08:03

    基于面向服務體系架構的RFID中間件集成應用方案

    耦合度高,對業務變化的適應性差。這使得企業對于實施RFID技術持謹慎的態度。RFID中間件的推出會有助于RFID設備與企業后臺系統的集成。但
    發表于 07-12 07:35

    將集群技術引入到RFID中間件的設計討論

    ,RFID 中間件也必須像必須向上層應用系統提供高質量的服務, 才能保證整個系統的高可靠性、高可用性、高擴展性、高性能。 為了解決這些問題, 我們將集群技術應用到中間件中來。
    發表于 07-25 06:22

    基于ARM的RFID中間件系統該怎么設計?

    RFID中間件RFID讀寫器和應用程序之間起橋梁作用。應用程序端使用中間件所提供一組通用的應用程序接口(API),即能連到RFID讀寫器,
    發表于 10-09 08:12

    請問怎樣去設計RFID中間件?

    無線射頻識別(RFID技術是什么?怎樣去設計RFID中間件?RFID中間件的功能及
    發表于 05-18 06:11

    怎么實現基于NFC手機的RFID中間件的設計?

    本文就一種基于 NFC手機的RFID中間件進行研究與實現,將RFID 中間件技術與移動互聯網相結
    發表于 05-21 06:02

    無線射頻識別RFID中間件技術,不看肯定后悔

    無線射頻識別RFID中間件技術,不看肯定后悔
    發表于 05-26 06:34

    如何去實現一種基于SOA的RFID中間件設計?

    本文提出了一種基于SOA的RFID中間件方案。
    發表于 06-03 07:19

    復雜事件處理技術RFID中間件中的研究

    事件處理是 RFID 中間件的核心功能之一。本文介紹了利用分層設計思想,并結合RFID 中間件的數據特征,將復雜事件處理技術引入
    發表于 01-25 14:10 ?21次下載

    基于JMS的RFID中間件設計與實現

    介紹了Radio Frequency Identification (RFID) 和物聯網的RFID 中間件技術,設計了RFID
    發表于 10-19 16:16 ?17次下載

    基于ARM的RFID中間件系統設計

    RFID中間件RFID讀寫器和應用程序之間起橋梁作用。應用程序端使用中間件所提供一組通用的應用程序接口(API),即能連到RFID讀寫器,
    發表于 09-16 10:33 ?938次閱讀

    基于嵌入式系統的RFID中間件設計

    針對嵌入式系統的特點,研究了輕量級的嵌入式RFID中間件ERM的體系結構。在ERM體系結構指導下,實現了運行于嵌入式平臺的RFID中間件。該
    發表于 09-25 14:44 ?25次下載

    RFID中間件是什么東西

    RFID 中間件是一種面向消息的中間件,信息是以消息的形式,從一個程序傳送到另一個或多個程序。
    發表于 12-02 16:12 ?3259次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>