RFIDd器工作时Q不停的d标签Q因而,造成同一个标{֜一分钟之内可能d到几十次Q这些数据如果直接发送给应用E序Q将带来很大的资源浪费,所以需要RFID中间件对q些原始数据QRaw DataQ进行一层收?qo(h)处理Q提供出有意义信息?
“What, when, where” (何时何地发生什么事? q是ALE向应用系l提供的最典型的信息内宏V例如:(x)“2006-3-20 19:30 门禁处读取到 epc#1”。此外,在智能货柜(Smart ShelfQ之cȝ应用中,业务程只关注物品是否增加或减少。此ӞALE可以向上层汇报“2006-3-20 19:31 epc#1 在货?1区出?消失”?b>
所以说QALE的出C要是Z减少原始数据的冗余性,从大量数据中提炼出有效的业务逻辑而设计?
ALE层介于应用业务逻辑和原始标{读取层之间Q如?所C。它接收从数据源Q一个或多个d器)(j)中发来的原始标签d信息Q而后Q按照时间间隔等条g累计QAccumulateQ数据,重复或不敢兴趣的EPCs剔除qo(h)(Filter)Q同时可以进行计数及(qing)l合QCount/GroupQ等操作Q最后,这些信息对应用pȝq行汇报?
在ALE中,应用pȝ可以定义q些内容Q在什么地方(地点可以映射一个或多个d器及(qing)天线Q读取标{。在怎样的时间间隔内Q决定时间、某个外部事件触发)(j)攉到的数据Q如何过滤数据,如何整理数据报告内容Q按照公司、商品还是标{ֈc)(j)Q标{և现或消失时是否对外报告,以及(qing)d到的标签数目?
ALE规范定义的是一l接口,它不牉|到具体实现。在EPCgloball织的规划中Q支持ALE规范是RFID中间件的最基本的一个功能;q样Q在l一的标准下Q应用层上的调用方式可l一Q应用系l也可以快速部|Ӏ?
因此QALE规范定义的是应用pȝ对RFID中间件的标准讉K方式?
在ALE模型中,有几个最基本的概念:(x)d期(Read CycleQ,事g周期QEvent CycleQ和报告QReportQ?
d期是和读写器交互的最单位。一个读周期的结果是一lEPCs集合。读周期的时间长短和具体的天UѝRF协议有关。读周期的输出就是ALE层的数据来源。如?所C?
事g周期可以是一个或多个d期。它是从用户的角度来看待d器的Q可以将一个或多个d器当作一个整体,是ALE接口和用户交互的最单位。应用业务逻辑层的客户在ALE中定义好事g周期的边界之后,可接收相应的数据报告?
报告Q则是在前面定义的事件周期的基础上,ALE向应用层析提供的数据l果?
? 事g周期
对于事g周期的定义,在ALE中由ECSpec表达Q对于报告的内容Q由ECReports负责Q如??
ECSpec描述了事件周期以?qing)报告生的格式。它包括Q一l逻辑d器(logical ReadersQ内Q这些逻辑d器的d期在该事件周期内Q一份定义事件周期边界的规范Q以?qing)在q个事g周期内生的一l报告(reportQ的格式规范。如?所C?
? ECSpec
在ALE规范中,定义出ECSpec的XSD文gQ同时有ECSpec的具体例子,如图5?
? ECSpecCZ
从该例子中,我们可以看出Q上层应用系l需要逻辑d器dock_1a和dock_1bQ在满开始及(qing)l束的触发事件文件trigger1/trigger2 定义的条件下Q重复周?0000MSQ间?000MSQ对外发?个报表report1/report2/report3Qreport1报告当前d到的标签Qreport2报告每个事g周期内增加的标签?qing)M敎ͼreport3报告每个事g周期内减的标签?qing)M敎ͼ以及(qing)标签q行l合的Ş式?
ECReports是ALE中间件向上层应用pȝ做出报告Q如?所C?
Report1汇报当前d?个标{。Report2报告当前d到的标签个数6847。Report3报告EPC?.0037000.12345cȝ物品d?个,3.0037000.55555cȝ物品d?个,d到标{数?842?
应用pȝ与ALE中间件的交互Q必d事件周期的定义文gQECSpecQ传送至中间Ӟ同时告知中间件将报告发回的地址。在以ALE交互中,有几个最基本的方法:(x)define/undefineQsubscribe/unsubscribe, poll/Immediate?define/undefine是定?撤销ECSpec的操作,subscribe/unsubscribe是订?撤销某个ECSpec的服务?
a) 直接订阅(Direct Subscription)
该模式下QECSpec由客户A定义Q得到的报告反馈lA?
首先QClient1名为ECname1的ECSpec定义lALE中间Ӟ而后Client1订阅该ECName1的报告,q将它发臛_址为notifyURI的接收处?
在时?内,d器reader1没有d标签Q所以没有反馈。在旉厄内Q读到标{,而后QALE中间件自动将ECreport发送给C(j)lient1?
当Client1不需要RFID信息Ӟ它首先退订notifyURI的ECname1的服务。当ECname1没有订阅者之后,可以撤销ECname1的时间周期?
b) 间接订阅(InDirect Subscription)
该模式与直接订阅的差异是Q得到的报告不是反馈lAQ而是反馈lB?
该图昄的ECspec边界p发器来决定。在W?步中Q我们可以看到ECreport发至client1Q而不是初始的服务定义者。这是由于在W?步中的服务反馈地址notifyURI指向client1?
c) Poll/Immediate
Poll和Immediate可以看成应用pȝ对ALE中间件的快照。在很多应用中,不需要一直监听ALEQ而只要知道当时读到的标签信息Q这2U模式就是ؓ(f)满q些需求而设计的
当ALE中间件中已经有定义好的ECSpecӞ同时Client需要这个ECSpec提供的信息,可以用PollҎ(gu)得到反馈?
当ALE中间件中不存在Client需要的事g周期Ӟq个时候,可以直接转送这个事件周期的定义ECSpec2Q而后得到l果Q这是Immediate?
EPCglobal. The Application Level Events(ALE) Specification, version 1.0, Sept 15, 2005.