当前位置:首页 > 新闻资讯 >公司新闻 > LLRP底层读写器协议浅析 基础入门

LLRP底层读写器协议浅析 基础入门

时间:2021-03-22  浏览量:803

摘要:RFID标准化组织EPCglobal在2007年推出了底层读写器协议LLRP(Low Level Reader Protocol),它为读写器和其控制器提供了标准的网络接口,极大地减少了RFID应用平台的构筑效率。借助于开源的RFID中间件平台FosstrakLLRP协议以及推动进行探讨对比,会使开发者对LLRP协议有很深入的理解,为推动EPCglobal系统打下了稳固的基础。

射频识别(Radio Frequency Identification,RFID)是一种非接触式的手动识别科技,它运用无线射频方式进行双向通信并交换数据,以超过识别目标的目的。由于其具备标签容量大、数据保密性好、传输可靠性高,以及非可视识别、移动识别、多目标识别、定位及大量跟踪管理等特征,RFID技术在2005年入选“建议企业采用的十大策略科技",并被公认为本世纪十大重要技术之一[1]。

目前,RFID技术被广泛应用于生产、防伪、产品跟踪、交通、物流、资产管控等诸多领域,射频识别科技已经作为企业提升供应链管理水准,降低生产成本,实现企业信息化管理,增强企业竞争能力的有力技术方法跟工具。

但是,在特色的RFID应用与研发中,RFID读写器与其控制器的客户端之间的通讯协议并没有统一,它们之间的联接需要适配读写器厂商私有的接口。因此,当RFID读写器在硬件或工具上稍有变动,则客户端的硬件就需要逐渐一起改动。当客户选用不同供应商提供的产品时,其维护费用也逐渐增加,这就导致了研发工作的重复性以及平台之间的不兼容性和维护的复杂性,同时也妨碍了RFID技术的发展跟普及。

为了解决RFID技术在相关领域缺少统一标准的弊端,全球电子产品编码协会(Electronic Product Code global,EPCglobal)于2007年发布了底层读写器协议(LLRP)[2]。该协议定义了RFID读写器与其控制器客户端的接口完善,使得硬件开发者能够非常致力于用户的意愿,极大地减少了RFID应用平台的建立效率。本文将借助Fosstrak平台对LLRP进行探讨,以深入理解LLRP的数据结构、工作步骤及推动模式等,更好地掌握LLRP的使用方式。

迈思肯读码器读dpm_RFID读写器_基于89c2051 ic卡读/写器的设计

LLRP标准的分析

LLRP应用于RFID读写器与控制器之间,它负责读写器与控制器之间的联接RFID读写器,且能与读写器与标签通信的空中接口协议进行互动[3-4],如图2所示。它将低层读写器的射频协议屏蔽掉,而暴露给客户端的是统一的协议接口,使得客户端可以无差别地对低层的读写器进行控制跟管理。

底层读写器协议浅析

LLRP协议为客户端与读写器之间提供了通信的格式跟过程。这些交互过程以LLRP消息为基本的数据单元进行通信,主要包含客户端-读写器消息和读写器-客户端消息。

2.1LLRP的基本数据类型

基于89c2051 ic卡读/写器的设计_RFID读写器_迈思肯读码器读dpm

LLRP的基本数据类别包含消息(Messages)、参数(Parameters)和域(Fields)[2]。其中消息可以包括一个或多个参数或域,而一个参数也可以包括一个或多个参数(子参数)或域。

从客户端到读写器的消息包含:获取和修改读写器的配置信息;读写器的能力看到(包括读写器的天线数、通用输入/输出端口数等);管理读写器的清点和访问操作。从读写器到客户端的信息包含:读写器的状况报告、射频监测的信息、清点和访问操作的结果报告。

LLRP消息中定义了两个基本的操作规格即读写器操作规格(Reader Operations Specification,ROSpec)和访问规格(Access Specification)。

ROSpec负责处理读写器的操作(Reader Operation,RO)。在一个RO中大约包括了一个规格AISpec或者RFSurveySpec。其中AISpec负责标签的盘点作业,RFSurveySpec负责获取读写器操作天线的射频电流的信息。除此之外,在ROSpec中还可以按照实际状况加入其它的规格,比如ROReportSpec(它表述了一个报告的发送时机及其报告中包括的内容等信息),或者一些自定义的规格(LLRP灵活的能扩展性允许供应商按照一定的规则对其进行扩充,有利于产品的变革与竞争)。

Access Specification描述了对标签存储中非EPC信息的操作。

基于89c2051 ic卡读/写器的设计_迈思肯读码器读dpm_RFID读写器

底层读写器协议浅析

从图3可以看出,LLRP的工作步骤主要包含下列几个阶段[5]:

(1)客户端将向读写器发送配置命令。这些配置可以包含读写器的能力看到、配置跟查询读写器的设定。读写器能力看到包含读写器的天线数、天线接收灵敏度、天线支持的空中协议、通用输入输出端口(GPIO)数等。在配置读写器设置时,除了可以设定天线的方式、GPIO的状况等,还可以设置ROReportSpec、AccessReportSpec等成为默认的报告规格。在客户端发送配置消息后,读写器在完成了相关的修改以后会向客户端发送相应的响应消息。

(2)读写器配置阶段执行完毕后,客户端向读写器发送LLRP所定义的ROSpec和AccessSpec等操作命令集,对读写器标签的转储操作进行修改与升级。在该阶段,如果在ROSpec规格中没有设置相关的报告规格(如ROReportSpec),则会使用在读写器配置阶段所设定的默认报告规格;如果在ROSpec中设定了相关的报告规格,则将覆盖默认的报告规格。

(3)在相关配置工作完成以后,对出现的依照条件的事件,将起初执行读写器操作并向客户端返回相应的信息报告。读写器操作比如标签的盘点、存取和对读写器的射频监测等。

基于89c2051 ic卡读/写器的设计_RFID读写器_迈思肯读码器读dpm

3LLRP消息的实现

LLRP的两个端点(客户端与读写器端)之间是借助TCP/IP进行通信的[2],同时LLRP消息以二进制编码的格式在他们之间进行存储。这种方法是高效、快速的。LLRP规范中定义了LLRP消息的二进制编码格式,如图4所示。如果开发者直接以二进制的方式推动LLRP消息的话,将是困难的、低效的。因此,根据以上对LLRP的剖析,以及LLRPCommander中的谋求方式,并考虑到编程语言的精度,一般采取“面向文档”

和“面向对象两种形式对LLRP消息进行推动。

底层读写器协议浅析

面向文档的谋求方式是基于XML的方法[6]。由于LLRP消息是嵌套的,即消息可以包括一个或多个参数或域,而一个参数也可以包括一个或多个参数或域,因此XML标签的可嵌套性和能扩展性的特性十分适合于LLRP消息的谋求。利用官方提供的lrp.xsd文档,开发人员可以便捷地构造出一个面向文档的LLRP消息。在LLRP Commander中提供了一些LLRP消息的事例,其中ADD_ROSPEC消息的XML描述见图1。

迈思肯读码器读dpm_RFID读写器_基于89c2051 ic卡读/写器的设计

在图1中,根节点ADD_ROSPEC是LLRP中的消息,子节点ROSpec、ROBoundaryspec、OSpecstartTrigger、ROSpecStopTrigger、AISpec、AISpecStopTrigger、InventoryParameterSpec是LLRP中的参数,而ROSpecID、Priority、CurrentState、ROSpecStart Trigger Type等其它的子节点则为LLRP中的域。

面向对象的谋求方式就是将特定的消息跟面向对象中定义的对象一一对应[7]。在以面向对象的形式推动LLRP消息时,LLRP规范中每一个特定的消息都对应一个类,每一个特定的参数也都对应一个类,而域则是成为消息类与参数类的成员变量。如果在LLRP的定义中某个消息包括某个参数,则此参数也将成为该消息的一个成员变量。该消息类与其所包括的参数类之间组成了一种组合关系。这里,同样以ADD_ROSPEC消息的面向对象实现方法的UML类图为例来进行说明,如图5所示。

底层读写器协议浅析

在图5中,ADD_ROSPEC就是一个消息类,它对应于LLRP中的一个消息RFID读写器,而该消息类的一个成员函数ROSpec则是ROSPEC参数类的对象,它对应于LLRP中的一个参数。同时,在参数类ROSPEC中也包括参数类ROBoundarySpec等。

4结论

LLRP作为读写器与客户端之间的一个接口标准,它不需要去适配各个读写器厂商私有的接口,而是提供了标准的接口来接入不同厂商的读写器,极大地减少了RFID应用平台的建立效率。通过对LLRP数据结构、工作步骤的剖析,以及对其推动模式的非常,使开发者能够对其有很深入的感知,提高应用效率,为推动相关应用平台奠定了稳固的基础。

上一篇: 制作NFC服装吊牌标签
copyright 2010 广州强盛智能科技有限公司 版权所有 备案:粤ICP备18068841号
电话:15992422229 销售一、13640293427 销售二、13660366684 销售三
邮箱:congseng@hotmail.com
地址:中国广东省广州市番禺区番禺大道北555号天安科技园总部中心14号楼二楼
技术支持:搜浪网络
声明:如果本站有使用不当的极限词汇,并非本站之意愿,本站郑重声明所有极限词汇全部作废