无线射频读写器连接外部设备的方法及装置的制作方法

文档序号:6382120阅读:227来源:国知局
专利名称:无线射频读写器连接外部设备的方法及装置的制作方法
技术领域
本发明涉及射频识别领域,更具体地说,涉及一种无线射频读写器连接外部设备的方法及装置。
背景技术
射频识别(Radio Frequency Identification,RFID)技术是一种利用射频信号自动识别目标对象并获取相关信息的技术。随着RFID核心技术的不断发展和成熟,无线射频读写器应用领域日益扩大,已经越来越多的应用在包括军事、航空、物流仓储、商品零售、工业制造、资产管理、交通运输、动物识别和防伪防盗等不同领域。在这些应用中,无线射频读写器都需要通过接口与外部设备连接,以实现在相关领域的应用。目前,无线射频读写器的接口方式越来越多(常见的有串口、网口、USB 口、485接口等),对无线射频读写器的操作或数据传输的控制协议也越来越多(常见的有不同厂家自己定义的自有协议、国际通用的LLRP协议等),而且,在无线射频读写器与另外的读写器或外部设备组网时的网络连接方式还分为服务器模式和客户端模式两种。在现有技术中,这些设置都需要在读写器启动(或工作)前,先配置好该读写器所支持的协议类型、所支持的接口类型及工作模式,即事先配置好每个无线射频读写器,且按照其位置不同可能有不同的配置。而面对集群化、规模化和网络化的应用趋势,这样的设置方式显然不太适应,其配置方法或步骤较为复杂,需要耗费较多的人力资源,且容易出错。因此,无线射频读写器需具备自适应处理各种各样的连接请求的能力,以适应RFID产业发展的需要。

发明内容
本发明要解决的技术问题在于,针对现有技术的上述步骤较为复杂、成本高、易出错的缺陷,提供一种简单、成本低、不易出错的无线射频读写器连接外部设备的方法及装置。本发明解决其技术问题所采用的技术方案是构造一种无线射频读写器连接外部设备的方法,包括如下步骤
A)开始监听所述无线射频读写器的各个接口;
B)判断所述被监听的接口是否存在连接请求,如是,执行下一步骤;否则,重复本步
骤;
C)判断是否存在当前连接,如是,执行步骤E);否则,执行下一步骤;
D)接受所述连接请求,建立连接并使其为当前连接,返回步骤A);
E)判断所述存在的当前连接是否有效,如是,拒绝所述连接请求并返回步骤A);否则,清除所述存在的当前连接并返回步骤D)。更进一步地,所述步骤D)中进一步包括
Dl)接收外部设备发送的连接请求的消息帧;
D2)取得所述消息帧中表示连接协议类型的编号,查找事先存储在所述射频读写器中的相应协议;
D3)调出所述查找到的协议,利用所述协议处理该连接的数据。更进一步地,所述判断是否存在当前连接是通过判断任意一个接口上是否接收到消息的方法实现的;所述判断当前连接是否有效是通过在收到消息的接口上发送请求并判断是否接收到应答实现的。更进一步地,所述步骤A)中进一步包括轮流监听所述各个接口,如一接口上无连接请求,则继续监听下一接口 ;如一接口有连接请求,则执行步骤B)。更进一步地,在执行步骤A) -E)的同时,还执行
M)检测是否存在当前连接,如是,执行步骤P);否则,执行下一步骤;
N)取得有效的服务器列表,并逐按照所述列表的地址,逐一发起连接请求;
0)连接请求如被接受,则建立连接并注册该连接为当前连接;
P)判断所述当前连接是否有效,如有,则停止发起连接操作;否则,执行步骤Q);
Q)清除所述当前连接并跳转到步骤N)。更进一步地,所述步骤N)中进一步包括
NI)按照所述列表内容,形成连接请求;所述连接请求包括带有发送端口使用协议类型编号的消息巾贞;
N2)连续发送设定次数的连接请求,如所述连接请求未被接受,则选择所述列表的下一项内容并返回步骤NI);否则,执行步骤O)。本发明还涉及一种实现上述方法的装置,包括
监听模块用于监听所述无线射频读写器的各个接口;
连接请求判断模块用于判断所述被监听的接口是否存在连接请求;
当前连接判断模块用于在所述连接请求模块判断被监听接口存在连接请求时判断是否存在当前连接;
连接请求处理模块用于在当前连接判断模块判断不存在当前连接是或当前连接被清除后接受所述连接请求,建立连接并使其为当前连接;
当前连接处理模块用于判断所述存在的当前连接是否有效,如是,拒绝所述连接请求;否则,清除所述存在的当前连接。更进一步地,所述连接请求处理模块进一步包括
消息帧接收单元用于接收外部设备发送的连接请求的消息帧;
协议编号取得及查找单元用于取得所述消息帧中表示连接协议类型的编号,查找事先存储在所述射频读写器中的相应协议;
数据处理单元用于调出所述查找到的协议,利用所述协议处理该连接的数据。更进一步地,所述装置还包括
当前连接检测模块用于检测是否存在当前连接;
服务器列表取得模块用于取得有效的服务器列表,并逐按照所述列表的地址,逐一发起连接请求;
请求状态判断模块用于在连接请求被接受时,则建立连接并注册该连接为当前连
接;
第一当前连接判断模块用于在所述当前连接检测模块判断存在当前连接时,判断所述当前连接是否有效;并在所述连接有效时,则停止发起连接操作;
当前连接清除模块用于在所述当前连接判断模块判断当前连接无效时清除所述当前连接。更进一步地,所述服务器列表取得模块进一步包括
连接请求形成单元用于按照所述列表内容,形成连接请求;所述连接请求包括带有发送端口使用协议类型编号的消息帧;
连接请求发送单元用于连续发送设定次数的连接请求,如所述连接请求未被接受,则选择所述列表的下一项内容并通过所述连接请求单元形成连接请求。实施本发明的无线射频读写器连接外部设备的方法及装置,具有以下有益效果由于对多个可能与外部设备连接的、不同类型的接口进行监听并判断当前监听的接口上是否存在连接请求,在存在连接请求时判断当前是否存在连接,或接受连接请求并以该连接为当前连接,或拒绝连接请求并维持当前连接。也就是说,可以自动判别连接是否存在并自动建立连接。所以,其简单、成本低、不易出错。


图I是本发明无线射频读写器连接外部设备的方法及装置实施例中连接方法流程 图2是所述实施例建立连接步骤中协议判断流程 图3是所述实施例中与服务器模式同时运行的客户端模式流程 图4是所述实施例中装置的结构示意 图5是所述实施例中硬件结构示意图。
具体实施例方式下面将结合附图对本发明实施例作进一步说明。如图I所示,在本发明无线射频读写器连接外部设备的方法实施例中,该无线射频读写器与外部设备的连接方法包括如下步骤
步骤Sll开始监听各接口,并选择其中一个监听在本步骤中,开始监听无线射频读写器的各个接口。在本实施例中,作为一个较为典型的示例,无线射频读写器由微处理器和RF收发芯片组成(参见图5),微处理器提供网络接口(通常是以太网接口),串口,485接口和外部进行通讯。也就是通过这些接口中的一个与外部设备连接。在本步骤中,就是轮流监听这些接口。通常是轮流将这些接口作为当前接口,然后对当前接口进行下面步骤的操作,如果当前接口上不存在连接请求,则选择下一个接口作为当前接口 ;如果一段时间内这些接口上均没有连接请求,则不断地、轮流地将这些接口作为当前接口检测。步骤S12该接口上是否存在连接请求在本步骤中,判断当前监听的接口上是否存在连接请求,如果存在,则跳转到步骤S14 ;否则,执行步骤S13。步骤S13选择另一个接口监听在本步骤中,由于当前接口上并不存在连接请求或该接口上的连接请求被拒绝,因此,选择下一个接口作为当前接口,进行监听,并返回步骤 S12。步骤S14判断是否存在当前连接在本步骤中,由于被监听接口上存在连接请求,需要根据当前该无线射频读写器的连接情况决定是否接受这个连接请求;如果不存在当前已经建立的连接或虽然有当前已经建立的连接,但该连接无效,则可以接受该连接请求,建立新的连接;如果已经存在有效的当前连接,贝1J不能接受该连接请求。所以,在本步骤中,判断是否存在当前连接,如存在,执行下一步骤;否则,跳转到步骤S17执行。在本实施例中,上述判断是否存在当前连接是通过判断任意一个接口上是否接收到或曾经收到消息的方法实现的;如果任意一个接口收到或曾经收到消息,则判断为存在当前连接;否则,判断为不存在当前连接。步骤S15判断当前连接是否有效既然存在当前连接,在本步骤中,就需要判断该当前连接是否有效,如果有效,跳转到步骤S17执行;如果这个当前连接是无效的,就需要清除该当前连接,并执行步骤S16。在本实施例中,所述判断当前连接是否有效是通过在上述收到或曾经收到消息的接口上发送请求并判断是否接收到应答实现的。如果该请求发送后收到应答,则判断为当前连接有效;如果该请求发送后没有收到应答(当然是在设定时间内),则判断为当前连接无效。步骤S16接受连接请求,建立连接并设置为当前连接在本步骤中,接受上述连接请求,建立连接,该连接建立后,设置为当前连接。执行完本步骤后,返回步骤S13。至于建立连接的具体步骤,稍后有较为详细的描述。步骤S17拒绝上述连接请求在本步骤中,由于当前连接存在且有效,也就是说,该无线射频读写器当前是与外部设备连接在一起的,这样,就不能再建立连接,因此,拒绝上述接口上的连接请求,返回步骤S13。如图2所示,在本实施例中,上述步骤S16进一步包括如下步骤
步骤S21接收连接请求的消息帧在本步骤中,接受上述连接请求,并接收其中的消息帧,收到的消息帧包括多个字段,这些字段中的“控制协议类型编号”字段表示不同的控制协议,以此调用相应的控制协议类型的指令处理程序执行正确的指令操作。在本实施例中,上述“控制协议类型编号”字段处于消息帧中的指定位置。步骤S22取出消息帧中表示采用协议的协议编号在本步骤中,读取上述“控制协议类型编号”字段,也就是取出消息帧中表示采用协议的协议编号。步骤S23查找上述编号对应的协议按照上述取得的编号,查找其对应的协议,在本实施例中,这些协议及其对应的编号都是事先存储在无线射频读写器中的,可以通过查表或其他方式查找。步骤S24调出查找到的协议,并使用该协议处理该连接的数据在本步骤中,调出上述查找得到的协议,并使用该协议处理该连接的数据,也就是说,无线射频读写器在该连接上与外接设备的数据交互,都是通过这个协议处理的。在本实施例中,无线射频读写器上电启动后,将建立并运行服务器模式线程和客户端模式线程,两个线程是并发执行的,且只能存在一种连接被建立。在本实施例中,在执行上述步骤S11-S17的同时,还执行如图3所示的步骤,这些步骤包括
步骤S31判断是否存在当前连接在本步骤中,判断是否存在当前连接,如存在,则执行步骤S32 ;否则,跳转到步骤S33执行。步骤S32判断当前连接是否有效在本步骤中,判断存在的当前连接是否有效,如果当前连接有效,则跳转到步骤S37 ;如果当前连接无效,则执行下一步骤。同样地,在本实施例中,是通过在上述收到或曾经收到消息的接口上发送请求并判断是否接收到应答实现的。步骤S33取得有效的服务器列表,并按照服务器地址逐一发送连接请求在本步骤中,取得存储在无线射频读写器中的服务器列表,该列表是事先设置的、无线射频读写器能够与之连接的服务器地址的集合,按照该列表中的服务器地址,对这些服务器分别发出连接请求;当然,在本实施例中,同一时间智只能对一个服务器地址发出连接请求,但是,从整体上看,是轮流对上述列表中的所有地址依次逐个发出连接请求,直到连接被建立。步骤S34判断针对一个服务器地址发送的设定次数内的连接请求是否被接受在本步骤中,从上述列表地址中选择一个发送设定次数的连接请求,如果该连接请求在设定次数内被接受,则执行步骤S35 ;否则,执行步骤S36。步骤S35建立连接并注册为当前连接在本步骤中,由于连接请求被接受,就依据该连接请求,建立连接并将建立的连接注册为当前连接。执行本步骤后,跳转到步骤S37。步骤S36针对另一个服务器地址发送连接请求在本步骤中,由于针对上一个服务器地址发送的连接请求在设定次数内并没有得到接受,因此判断该服务器地址可能不存在或当前不可用,为此,选择位于上述服务器列表中的下一个服务器地址,并发送设定次数的连接请求,之后,返回步骤S34。步骤S37设定时间内不发送连接请求在本步骤中,由于已经存在有效的或新建立的当前连接,为此,在设定时间内不需要判断是否有当前连接存在,所以,在设定时间内不会发送连接请求。当然,一定时间过后,当前连接可能失效,为此,执行完本步骤之后,返回步骤S31,开始下一轮的当前连接判断。综上所述,在本实施例中,对不同物理连接的自适应处理方法,主要指一个新的连接请求可能来自网口、串口、USB 口、485接口等,无线射频读写器可能包含其中的一个或多个物理接口,无线射频读写器(在本实施例中,实际上是无线射频读写器的系统软件)会根据自身的接口和应用需求去监听各个端口的连接,任何端口出现连接请求,无线射频读写器都可以捕获到。无线射频读写器在发现一个新的连接请求后,将自动检查确认是否已经存在旧连接,并且通过消息方法验证旧连接是否仍然存活有效。如果没有找到旧连接或者旧连接已经失效,则接受此新连接请求并作为当前连接;如果发现有旧连接并且仍然存活有效,则通过消息方法拒绝新连接请求。对不同控制协议的自适应处理方法,主要方法是将不同的控制协议进行编号,并在“消息帧”中引入“控制协议类型编号”字段来区分不同的控制协议。读写器收到来自中间件的消息帧后,可以通过“控制协议类型编号”快速识别出该消息所属的控制协议类型,并迅速调用相应的控制协议类型的指令处理程序执行正确的指令操作。同样的道理,返回的“消息应答帧”中也将带有此“控制协议类型编号”字段并从接收消息所使用的硬件通道返回“消息应答帧”。消息发起者会根据消息应答帧来确认此返回来的协议类型是否正确。不同工作模式的自适应处理方法是在无线射频读写器(或其系统软件上)建立两个判断流程(通常是运行在处理器上的线程),一个工作于服务器模式,另一个工作于客户端模式。这两种模式是互相独立的,服务器模式是主动模式(服务器地址保存在当前无线射频读写器中),客户端模式是被动模式,不论哪种模式下建立起来的连接,都是读写器当前唯一可用的,只是建立连接的方式不同,无线射频读写器当前可用的连接数只有一个。
工作于服务器模式的线程,主要是监听各物理接口是否有新的连接请求,在收到一个新的连接请求后,如果经过查询确认没有旧连接或旧连接失效,则接受此新连接请求作为当前连接,如果旧连接存在并仍然有效,则通过返回消息告知中间件该连接请求被拒绝。工作于客户端模式的线程,主要是监测是否已经有连接成功建立,如果已经有连接成功建立,则停止主动发起连接的操作;如果没有任何连接被建立,则检查服务器列表中是否有可用的服务器地址,并逐一对可用的服务器地址发起连接,每个服务器地址最多连续尝试三次,如果三次都失败则放弃该服务器地址,选择下一个服务器地址继续发起连接,直到尝试完所有可用的服务器地址。所谓的自适应就是适应主动和被动的连接方式,两个判断流程(线程)的处理方式能更快的响应业务系统的需求。在本实施例中,还涉及一种实现上述方法的装置。如图4所示,该装置包括监听模块40、连接请求判断模块41、当前连接判断模块42、当前连接处理模块43、连接请求处理模块44、当前连接检测模块45、请求状态判断模块46、第一当前连接判断模块47、当前连接清除模块48和服务器列表取得模块49。其中,监听模块40、连接请求判断模块41、当前连接判断模块42、当前连接处理模块43和连接请求处理模块44用于处理服务器模式下的自动连接相关的步骤或数据;当前连接检测模块45、请求状态判断模块46、第一当前连接判断模块47、当前连接清除模块48和服务器列表取得模块49用于处理客户端模式下的步骤或数据。在本实施例中,监听模块40用于监听所述无线射频读写器的各个接口 ;连接请求判断模块41用于判断所述被监听的接口是否存在连接请求;当前连接判断模块42用于在所述连接请求模块判断被监听接口存在连接请求时判断是否存在当前连接;当前连接处理模块43用于判断所述存在的当前连接是否有效,如是,拒绝所述连接请求;否则,清除所述存在的当前连接;连接请求处理模块44用于在当前连接判断模块判断不存在当前连接是或当前连接被清除后接受所述连接请求,建立连接并使其为当前连接。其中,连接请求处理模块44进一步包括消息帧接收单元441用于接收外部设备发送的连接请求的消息帧;协议编号取得及查找单元442用于取得所述消息帧中表示连接协议类型的编号,查找事先存储在所述射频读写器中的相应协议;数据处理单元443用于调出所述查找到的协议,利用所述协议处理该连接的数据。对于客户端模式的当前连接判断功能而言,该装置还包括当前连接检测模块45用于检测是否存在当前连接;请求状态判断模块46用于在连接请求被接受时,则建立连接并注册该连接为当前连接;第一当前连接判断模块47用于在所述当前连接检测模块判断存在当前连接时,判断所述当前连接是否有效;并在所述连接有效时,则停止发起连接操作;当前连接清除模块48用于在所述当前连接判断模块判断当前连接无效时清除所述当前连接;服务器列表取得模块49用于取得有效的服务器列表,并逐按照所述列表的地址,逐一发起连接请求。期中,服务器列表取得模块49进一步包括连接请求形成单元491用于按照所述列表内容,形成连接请求;所述连接请求包括带有发送端口使用协议类型编号的消息帧;连接请求发送单元492用于连续发送设定次数的连接请求,如所述连接请求未被接受,则选择所述列表的下一项内容并通过所述连接请求单元形成连接请求。图5是本实施例中的无线射频读写器的硬件结构示意图,对于本实施例而言,上述装置所包括的模块和单元,均是利用软件实现的虚拟功能模块,所以,作为一个物理载体而言,这些装置均被设置在图5的微处理器中。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
权利要求
1.一种无线射频读写器连接外部设备的方法,其特征在于,包括如下步骤 A)开始监听所述无线射频读写器的各个接口; B)判断所述被监听的接口是否存在连接请求,如是,执行下一步骤;否则,重复本步骤; C)判断是否存在当前连接,如是,执行步骤E);否则,执行下一步骤; D)接受所述连接请求,建立连接并使其为当前连接,返回步骤A); E)判断所述存在的当前连接是否有效,如是,拒绝所述连接请求并返回步骤A);否则,清除所述存在的当前连接并返回步骤D)。
2.根据权利要求I所述的无线射频读写器连接外部设备的方法,其特征在于,所述步骤D)中进一步包括 Dl)接收外部设备发送的连接请求的消息帧; D2)取得所述消息帧中表示连接协议类型的编号,查找事先存储在所述射频读写器中的相应协议; D3)调出所述查找到的协议,利用所述协议处理该连接的数据。
3.根据权利要求2所述的无线射频读写器连接外部设备的方法,其特征在于,所述判断是否存在当前连接是通过判断任意一个接口上是否接收到消息的方法实现的;所述判断当前连接是否有效是通过在收到消息的接口上发送请求并判断是否接收到应答实现的。
4.根据权利要求3所述的无线射频读写器连接外部设备的方法,其特征在于,所述步骤A)中进一步包括轮流监听所述各个接口,如一接口上无连接请求,则继续监听下一接口 ;如一接口有连接请求,则执行步骤B)。
5.根据权利要求1-4任意一项所述的无线射频读写器连接外部设备的方法,其特征在于,在执行步骤A ) -E )的同时,还执行 M)检测是否存在当前连接,如是,执行步骤P);否则,执行下一步骤; N)取得有效的服务器列表,并逐按照所述列表的地址,逐一发起连接请求; 0)连接请求如被接受,则建立连接并注册该连接为当前连接; P)判断所述当前连接是否有效,如有,则停止发起连接操作;否则,执行步骤Q); Q)清除所述当前连接并跳转到步骤N)。
6.根据权利要求5所述的无线射频读写器连接外部设备的方法,其特征在于,所述步骤N)中进一步包括 NI)按照所述列表内容,形成连接请求;所述连接请求包括带有发送端口使用协议类型编号的消息巾贞; N2)连续发送设定次数的连接请求,如所述连接请求未被接受,则选择所述列表的下一项内容并返回步骤NI);否则,执行步骤O)。
7.一种实现如权利要求I所述无线射频读写器连接外部设备方法的装置,其特征在于,包括 监听模块用于监听所述无线射频读写器的各个接口 ; 连接请求判断模块用于判断所述被监听的接口是否存在连接请求; 当前连接判断模块用于在所述连接请求模块判断被监听接口存在连接请求时判断是否存在当前连接;连接请求处理模块用于在当前连接判断模块判断不存在当前连接是或当前连接被清除后接受所述连接请求,建立连接并使其为当前连接; 当前连接处理模块用于判断所述存在的当前连接是否有效,如是,拒绝所述连接请求;否则,清除所述存在的当前连接。
8.根据权利要求7所述的装置,其特征在于,所述连接请求处理模块进一步包括 消息帧接收单元用于接收外部设备发送的连接请求的消息帧; 协议编号取得及查找单元用于取得所述消息帧中表示连接协议类型的编号,查找事先存储在所述射频读写器中的相应协议; 数据处理单元用于调出所述查找到的协议,利用所述协议处理该连接的数据。
9.根据权利要求8所述的装置,其特征在于,还包括 当前连接检测模块用于检测是否存在当前连接; 服务器列表取得模块用于取得有效的服务器列表,并逐按照所述列表的地址,逐一发起连接请求; 请求状态判断模块用于在连接请求被接受时,则建立连接并注册该连接为当前连接; 第一当前连接判断模块用于在所述当前连接检测模块判断存在当前连接时,判断所述当前连接是否有效;并在所述连接有效时,则停止发起连接操作; 当前连接清除模块用于在所述当前连接判断模块判断当前连接无效时清除所述当前连接。
10.根据权利要求9所述的装置,其特征在于,所述服务器列表取得模块进一步包括 连接请求形成单元用于按照所述列表内容,形成连接请求;所述连接请求包括带有发送端口使用协议类型编号的消息帧; 连接请求发送单元用于连续发送设定次数的连接请求,如所述连接请求未被接受,则选择所述列表的下一项内容并通过所述连接请求单元形成连接请求。
全文摘要
本发明涉及一种无线射频读写器连接外部设备的方法,包括如下步骤监听所述无线射频读写器的各个接口;判断所述被监听的接口是否存在连接请求,如是,判断是否存在当前连接;否则,重复本步骤;如当前连接存在,则判断当前连接是否有效,如有,拒绝所述连接请求并返回监听步骤;否则,清除所述存在的当前连接并接受所述连接请求;如不存在当前连接,接受所述连接请求,建立连接并使其为当前连接并返回监听步骤。本发明还涉及一种实现上述方法的装置。实施本发明的无线射频读写器连接外部设备的方法及装置,具有以下有益效果简单、成本低、不易出错。
文档编号G06K17/00GK102982357SQ20121048133
公开日2013年3月20日 申请日期2012年11月23日 优先权日2012年11月23日
发明者易捷, 魏谢木 申请人:深圳市远望谷信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1