一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

时序调整方法、存储介质、读写器、电子标签及系统与流程

2022-12-25 15:17:53 来源:中国专利 TAG:


1.本技术涉及通信技术领域,尤其涉及一种时序调整方法、存储介质、读写器、电子标签及系统。


背景技术:

2.射频识别(radiofrequencyidentification,rfid)技术是一种通过射频信号的空间耦合实现非接触式自动识别的技术。射频识别系统的核心部件包括读写器和电子标签,其中读写器接收来自于电子标签的信息,并且可以通过与计算机连接,实现整个应用系统的上层管理,电子标签向读写器远程无线传输自身存储的信息,以识别电子标签代表的物品、人或器具的身份。
3.目前,射频识别系统工作时,可能会有多个电子标签同时处于读写器的作用范围内,多个电子标签同时向读写器发送数据时,出现通信冲突、数据相互干扰碰撞的现象,导致读写器的数据传输效率低。


技术实现要素:

4.本技术实施例提供一种时序调整方法、存储介质、读写器、电子标签及系统,能够提高数据传输效率。
5.第一方面,本技术实施例提供一种时序调整方法,包括:
6.在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻;
7.在不满足迭代终止条件时,根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据;
8.确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令;
9.根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件。
10.第二方面,本技术实施例还提供一种存储介质,其上存储有计算机程序,当计算机程序在计算机上运行时,使得计算机执行本技术实施例提供的时序调整方法中的流程。
11.第三方面,本技术实施例还提供一种读写器,包括存储器和处理器,存储器中存储有计算机程序,处理器通过调用存储器中存储的计算机程序,用于执行本技术实施例提供的时序调整方法中的流程。
12.第四方面,本技术实施例还提供一种电子标签,用于向读写器发射标签数据,读写器为本技术实施例提供的读写器,若电子标签为目标电子标签,则在不满足迭代终止条件时,根据时序调整指令调整下一个标签数据的发射时刻。
13.第五方面,本技术实施例还提供一种时序调整系统,包括读写器和电子标签,其中读写器用于在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻,在不满足迭代终止条件时,根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据,确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令,根据
时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件,电子标签用于向读写器发射标签数据,若电子标签为目标电子标签,则在不满足迭代终止条件时,根据时序调整指令调整下一个标签数据的发射时刻。
14.本技术实施例中,首先在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻;在不满足迭代终止条件时,根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据;然后确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令;进而根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件。本技术实施例可以在满足迭代终止条件前持续迭代,在迭代周期内根据各标签数据的接收时刻的分布情况,确定其中哪些标签数据的接收时刻分布密集,需要调整,从而生成时序调整指令调整对应的电子标签下一次发射标签数据的时序,使得接收到的标签数据在时间上错开,避免数据相互干扰碰撞,提高数据传输效率。
附图说明
15.下面结合附图,通过对本技术的具体实施方式详细描述,将使本技术的技术方案及其有益效果显而易见。
16.图1为本技术实施例提供的时序调整方法的场景示意图。
17.图2为本技术实施例提供的时序调整方法的第一种流程示意图。
18.图3为本技术实施例提供的迭代周期内接收的标签数据的分布示意图。
19.图4为本技术实施例提供的密集集合和空闲集合的示意图。
20.图5为本技术实施例提供的时隙配对示意图。
21.图6是本技术实施例提供的时序调整方法的第二种流程示意图。
22.图7是本技术实施例提供的时序调整方法的第三种流程示意图。
23.图8是本技术实施例提供的时序调整方法的第四种流程示意图。
24.图9是本技术实施例提供的时序调整方法的第五种流程示意图。
25.图10为本技术实施例提供的读写器的结构示意图。
26.图11为本技术实施例提供的时序调整系统的结构示意图。
具体实施方式
27.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有付出创造性劳动前提下所获得的所有实施例,都属于本发明保护的范围。
28.本发明的说明书和权利要求书以及上述附图中的术语“第一”、“第二”、“第三”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应当理解,这样描述的对象在适当情况下可以互换。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤的过程、方法或包含了一系列模块或单元的装置、终端、系统不必限于清楚地列出的那些步骤或模块和单元,还可以包括没有清楚地列出的步骤或模块或单元,也可以包括对于这些过程、方法、装置、终端或系统固有的其
它步骤或模块或单元。
29.请参阅图1,图1为本技术实施例提供的时序调整方法的场景示意图。该场景可以包括牲畜群100、电子标签200、读写器600和用户400。
30.在畜牧养殖业,为了及时了解牲畜群的健康状况,常常需要用户亲自去观测牲畜群的健康状态。畜牧人员需要进入围栏给牲畜进行健康检查,如测量牲畜的提问。不仅环境脏乱,而且对于拥有大量牲畜的规模化养殖场而言,一个个检查牲畜的健康状况效率十分低。
31.本技术中,牲畜群100中的每一个牲畜都佩戴有电子标签200,该电子标签200可以采集牲畜的相关数据,例如,该电子标签200可以佩戴在牲畜的耳部,用于采集牲畜的温度数据和/或运动数据等。
32.电子标签200和读写器600是射频识别系统的两个重要组成部分。电子标签200与读写器600之间预先建立有通信连接,读写器600可接收电子标签200采集到的标签数据,将这些标签数据进行反馈,这些标签数据后续可进行进一步处理,例如,可以根据这些标签数据判断牲畜的健康状况等。其中,电子标签200可以包括rfid电子标签,读写器600可以包括rfid读写器。
33.读写器600还可与其他互联网设备,如养殖人员或其他相关人员的手机、电脑等设备建立通信连接,从而可将从电子标签200处接收到的标签数据发送至养殖人员或其他相关人员的手机、电脑等设备,实时地汇报各牲畜的各项数据,养殖户可以根据牲畜的这些数据来判断牲畜的健康状况,进而决定是否对牲畜采取检查、治疗等相关措施。
34.电子标签200可以向读写器600发射标签数据,读写器600中可以采用本技术实施例提供的时序调整方法,在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻;在不满足迭代终止条件时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据;确定所述目标标签数据对应的目标电子标签,并生成所述目标电子标签的时序调整指令;根据所述时序调整指令调整所述目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件。
35.当电子标签200为目标电子标签时,电子标签200在不满足迭代终止条件时,根据所述时序调整指令调整下一个标签数据的发射时刻。
36.本技术实施例提供一种时序调整方法,该时序调整方法可应用于本技术实施例提供的读写器。请参阅图2,图2是本技术实施例提供的时序调整方法的第一种流程示意图,该时序调整方法可以包括:
37.101、在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻。
38.电子标签周期性地向读写器发射标签数据,读写器接收电子标签发射的多个标签数据,其中,多个标签数据可以来自于多个电子标签。在接收标签数据的同时,记录下读写器接收各标签数据时的接收时刻。
39.当多个标签数据同时到达读写器端时,由于标签数据间的相互干扰,出现通信冲突,使得读写器无法正确地识别这些标签数据,这种现象成为“碰撞”。碰撞的出现,会导致读写器无法读取到部分标签数据,导致电子标签与读写器之间的数据传输效率低。
40.在一实施例中,电子标签在周期性发射标签数据时,发射周期并非一成不变,而是有微小的波动。电子标签发射标签数据的发射周期可以用t r表示,其中,t为发射周期中的
固定周期,r为随机因子。r可以大于0,也可以小于0,也可以等于0。其中,当电子标签某次发射标签数据时,发射周期的随机因子r大于0时,代表电子标签的发射周期比固定周期大,当r小于0时,代表电子标签的发射周期比固定周期小,当r=0时,代表电子标签的发射周期等于固定周期。从而,电子标签的发射周期以固定周期为基准,发生随机的波动。
41.由于随机因子的存在,即使两个电子标签在某一次发生了碰撞,但在下一次发射标签信号时,这两个电子标签的发射周期由于随机因子的存在,可能发生随机的波动,从而导致它们发射标签数据的时间错开,到达读写器的时间也错开。从而,对于标签数据有可能发生碰撞的两个电子标签,这两个电子标签的标签数据虽然有时会因为发生碰撞而无法被读写器全部接收到,但它们不会由于一直发生碰撞而一直无法被读写器接收到,由于随机因子的存在,在一些情况下,这两个电子标签发射的标签数据都能被读写器接收到。
42.102、在不满足迭代终止条件时,根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据。
43.本技术实施例通过迭代算法对标签数据的时序进行调整。在不满足迭代终止条件时(即迭代过程中),根据每个迭代周期内各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据。
44.在一实施例中,迭代周期包括多个平均划分的时隙。例如,获取读写器的最小识别间隔dt,将所述最小识别间隔dt确定为迭代周期的划分尺度,设迭代周期的时长为t,划分尺度为dt,则迭代周期被平均划分为n份,n=t/dt,每一个划分出的时间间隔作为一个时隙,得到时隙t1、t2、t3、t4、t5
……

45.在一实施例中,dt/2<r<dt<t。其中,dt为读写器的最小识别间隔,t为电子标签的固定周期,r为电子标签的随机因子。
46.在迭代周期的时隙中,可能包括密集时隙和空闲时隙。其中密集时隙和空闲时隙的标准可以自行定义,例如,将包含的标签数据的数量大于或等于第一预设阈值的时隙作为密集时隙,将包含的标签数据的数量小于第二预设阈值的时隙作为空闲时隙。
47.根据迭代周期中各标签数据的接收时刻的分布情况,可以从迭代周期的所有时隙中确定出密集时隙和空闲时隙。即,在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻的步骤之后,还可以包括:
48.根据各标签数据的接收时刻,确定各时隙中标签数据的分布情况;
49.根据各时隙中标签数据的分布情况,从所有时隙中确定出密集时隙和空闲时隙。
50.其中,在从所有时隙中确定出密集时隙和空闲时隙的步骤可以包括:
51.(1)以预设数量的连续时隙作为统计单元,确定出所述迭代周期对应的所有统计单元;
52.(2)根据各时隙中标签数据的分布情况,确定每个统计单元中标签数据的数量;
53.(3)当所述统计单元中标签数据的数量大于或等于第一预设阈值时,确定所述统计单元对应的时隙索引,将与所述时隙索引匹配的时隙确定为密集时隙;
54.(4)当所述统计单元中标签数据的数量小于所述第一预设阈值时,确定所述统计单元对应的时隙索引,将与所述时隙索引匹配的时隙确定为空闲时隙。
55.请参阅图3,图3为本技术实施例提供的迭代周期内接收的标签数据的分布示意图。其中迭代周期t被划分为7个时隙t1~t7。时隙中有圆形表示在该迭代周期内,在该时隙
接收到电子标签发射的标签数据,时隙中没有圆形时,代表在该迭代周期内,未在该时隙接收到电子标签发射的标签数据。不同的颜色代表来自不同电子标签的标签数据,例如,在图3中,时隙t1和时隙t3中的标签数据来自于同一电子标签,时隙t2和时隙t5中的标签数据来自于同一电子标签。本技术实施例在迭代周期t接收到的多个标签数据中,可以包括同一电子标签发射的多个标签数据。
56.如图3所示,在迭代周期t的所有时隙中,时隙t1~t5中有标签数据分布,时隙t6和t7中无标签数据分布。
57.在一实施例中,当时隙中有标签数据分布时,可以该时隙的值记为1,当时隙中没有标签数据分布时,可以将该时隙的值记为0。
58.为确定出迭代周期中的密集时隙和空闲时隙,在一实施例中,可以以2个连续时隙作为统计单元,确定出迭代周期对应的所有统计单元,并根据各时隙中标签数据的分布情况,确定每个统计单元中标签数据的数量。
59.例如,如图3所示的迭代周期,依照时间顺序,迭代周期对应的所有统计单元中,标签数据的数量依次为:2,2,2,2,1,0。
60.当所述统计单元中标签数据的数量大于或等于第一预设阈值时,确定所述统计单元对应的时隙索引,将与所述时隙索引匹配的时隙确定为密集时隙;当所述统计单元中标签数据的数量小于所述第一预设阈值时,确定所述统计单元对应的时隙索引,将与所述时隙索引匹配的时隙确定为空闲时隙。
61.其中,第一预设阈值可以为统计单元中包含的时隙数量-1,第二预设阈值可以设置为1。例如,当一个统计单元中包含3个时隙时,第一预设阈值可以设置为2,第二预设阈值可以设置为1,当一个统计单元中包含2个时隙时,第一预设阈值可以设置为1,第二预设阈值可以设置为1。
62.可以理解的是,第一预设阈值和第二预设阈值也可以有其他的设置方式,本技术对第一预设阈值和第二预设阈值的设置方式不做限制。
63.如图3所示,其中,第1、2、3、4个统计单元中标签数据的数量大于或等于1,因而,确定第1、2、3、4个统计单元对应的时隙索引,将与第1、2、3、4个统计单元对应的时隙索引匹配的时隙确定为密集时隙,第6个统计单元中标签数据的数量小于1,因而,确定第6个统计单元对应的时隙索引,将与第6个统计单元对应的时隙索引匹配的时隙确定为空闲时隙。
64.请参阅图4,图4为本技术实施例提供的密集集合和空闲集合的示意图。在一实施例中,统计单元与时隙索引的对应关系可以根据需求设置。例如,可以根据以下取值函数确定统计单元对应的时隙索引:
65.index=cell[0] math.ceil(cell/2)
[0066]
其中,cell[0]为该统计单元包含的时隙中时间最早的时隙对应的时隙索引,math.ceil为取整计算符,math.ceil(cell/2)表示对(cell/2)的计算结果取整数。
[0067]
例如,当cell=4时,第1个统计单元对应的时隙索引为index=1 math.ceil(4/2)=3;当cell=3时,第1个统计单元对应的时隙索引为index=1 math.ceil(3/2)=2。
[0068]
当cell=2时,第1个统计单元对应的时隙索引为index=1 math.ceil(2/2)=2,第2个统计单元对应的时隙索引为index=2 math.ceil(2/2)=3,第3个统计单元对应的时隙索引为index=3 math.ceil(2/2)=4,第4个统计单元对应的时隙索引为index=4
math.ceil(2/2)=5,可将与时隙索引2、3、4、5匹配的时隙t2、t3、t4、t5确定为密集时隙;第6个统计单元对应的时隙索引为index=6 math.ceil(2/2)=7,可将与时隙索引7匹配的时隙t7确定为密集时隙。
[0069]
从而,根据图3所示的迭代周期的标签数据分布情况,可以确定出该迭代周期内密集时隙为t2、t3、t4、t5,空闲时隙为t7。在确定出密集时隙和空闲时隙后,可以将密集时隙的时隙索引存入密集集合concentrated_li[],将空闲时隙的时隙索引存入空闲集合free_li[]。
[0070]
确定出密集时隙后,可以将密集时隙中的标签数据确定为待调整的目标标签数据。
[0071]
103、确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令。
[0072]
电子标签包含用户相互区分的标识符,每个电子标签的标识符都是唯一的。在电子标签向读写器发射标签数据时,会携带自身的标识符。读写器通过确定目标标签数据对应的标识符,可以将与该对应的标识符匹配的电子标签确定为所述目标电子标签。
[0073]
在一实施例中,生成所述目标电子标签的时序调整指令的步骤,可以包括:
[0074]
(1)确定目标电子标签的目标时间差值。
[0075]
其中,目标时间差值的意义在于:在时序上向前或向后调整目标电子标签下一次发射标签数据的发射时间。调整的数值等于目标时间差值的绝对值,向前调整还是向后调整,取决于目标时间差值大于0还是小于0。若目标时间差值大于0,则将目标电子标签下一次发射标签数据的发射时间向后调整;若目标时间差值小于0,则将目标电子标签下一次发射标签数据的发射时间向前调整;若目标时间差值等于0,则不调整电子标签下一次发射标签数据的发射时间。
[0076]
在一实施例中,确定目标电子标签的目标时间差值的步骤,可以包括:
[0077]
(1.1)确定目标电子标签对应的目标密集时隙与目标空闲时隙。
[0078]
在步骤(1.1)中,确定目标电子标签对应的目标密集时隙与目标空闲时隙的步骤可以包括:
[0079]
(1.1.1)确定目标电子标签对应的目标密集时隙;
[0080]
(1.1.2)从迭代周期中的最后一个密集时隙与最后一个空闲时隙开始,从后往前对迭代周期中的密集时隙与空闲时隙进行两两配对;
[0081]
(1.1.3)根据配对结果,确定与目标密集时隙对应的目标空闲时隙。
[0082]
请参阅图5,图5为本技术实施例提供的时隙配对示意图。如图5所示,在一实施例中,在已知迭代周期中所有密集时隙与所有空闲时隙的情况下,从迭代周期中的最后一个密集时隙与最后一个空闲时隙开始,从后往前对迭代周期中的密集时隙与空闲时隙进行两两配对。例如,每次顺序地从密集集合和空闲集合的最后取出一个密集时隙和一个空闲时隙进行两两配对。两两配对完成后,则可以根据配对结果,确定与目标密集时隙匹配的目标空闲时隙。
[0083]
(1.2)获取目标密集时隙的时隙索引以及目标空闲时隙的时隙索引。
[0084]
获取目标密集时隙的时隙索引concentrated_li[index]以及目标空闲时隙的时隙索引free_li[index]。
[0085]
(1.3)获取时隙的时长。
[0086]
获取迭代周期中时隙的时长dt。
[0087]
(1.4)根据目标密集时隙的时隙索引、目标空闲时隙的时隙索引以及时隙的时长确定目标电子标签的目标时间差值。
[0088]
在一实施例中,在根据目标密集时隙的时隙索引、目标空闲时隙的时隙索引以及时隙的时长确定目标电子标签的目标时间差值时,可以采用以下公式:
[0089]
δt=(free_li[index]-concentrated_li[index])*dt
[0090]
其中,free_li[index]为目标空闲时隙的时隙索引,concentrated_li[index]为目标密集时隙的时隙索引,dt为时隙的时长。
[0091]
(2)根据标识符以及目标时间差值生成时序调整指令。
[0092]
标识符能够指示目标电子标签,目标时间差值能够指示目标电子标签发射下一个标签数据的发射时刻。根据标识符以及目标时间间隔生成时序调整指令。
[0093]
104、根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件。
[0094]
在一实施例中,在满足迭代终止条件前,读写器可以将时序调整指令发送给目标电子标签,目标电子标签接收时序调整指令,并根据时序调整指令中指示的标识符和目标时间差值调整目标电子标签发射下一个标签数据的发射时刻。
[0095]
若迭代条件始终不满足,则一直重复上述步骤101至104,在每个迭代周期发射一批时序调整指令给各电子标签,以调整各电子标签发射下一个标签数据的发射时刻。
[0096]
随着迭代的进行,迭代周期中的密集时隙和空闲时隙越来越少,标签数据在各时隙中的分布越来越均匀,直到满足迭代终止条件,停止迭代。
[0097]
其中,迭代终止条件可以包括:
[0098]
(1)在迭代周期内接收到的电子标签的数量等于预设数量。
[0099]
其中,预设数量是指读写器期望读取到的电子标签的数量。
[0100]
(2)迭代周期中密集时隙的数量为0。
[0101]
当迭代周期中密集时隙的数量为0时,表示各标签数据稀疏分布,不需要再进行调整。
[0102]
(3)迭代周期中空闲时隙的数量为0。
[0103]
当迭代周期中空闲时隙的数量为0时,表示已经没有可调整的空间。
[0104]
(4)迭代周期的空置率小于或等于空置率阈值。
[0105]
在一实施例中,统计在迭代周期内接收到的标签数据的数量,确定在迭代周期内可接收到的标签数据的理论最大值,根据接收到的标签数据的数量以及理论最大值确定迭代周期的空置率。
[0106]
上述例举的4个可选的迭代终止条件可以以取其一的方式作为本技术实施例提供的时序调增方法的迭代终止条件,也可以以组合的方式作为本技术实施例提供的时序调增方法的迭代终止条件。需要说明的是,除上述例举的4个迭代终止条件外,也可以根据实际需要,设置其他的迭代终止条件,本技术实施例对此不做限制。
[0107]
在一实施例中,对于迭代终止条件中涉及到的参数,可以在迭代前先创建这些参数并对这些参数进行初始化,在迭代过程中,随着接收到新的标签数据,对这些参数的值进
行更新。
[0108]
例如,可以创建以下参数:
[0109]
迭代周期:t(s),迭代周期t为读写器的预设参数,可以由用户通过指令的方式写入读写器;
[0110]
迭代周期t内接收到的标签数据的数量:rn(个);
[0111]
迭代周期t内接收到的电子标签的数量:n(个);
[0112]
迭代周期t内期望接收的电子标签的数量:en;
[0113]
电子标签的固定发射周期:t(s);
[0114]
电子标签可调整的最小时间精度:t_precision(s);
[0115]
迭代周期t内可以接收到的电子标签的理论最大值:rrad_max=t/dt;
[0116]
迭代周期t的空置率vacantrate=(read_max-rn)*100%/read_max;
[0117]
统计单位的长度cell(cell>1);
[0118]
密集度判定的阈值c(c≤length(cell))。
[0119]
例如,在进入迭代前,对参数进行初始化可以包括:
[0120]
初始化所有迭代周期中接收到的电子标签的标识符的集合total[];
[0121]
初始化迭代周期t中接收到的电子标签集合t_read_total[];
[0122]
初始化迭代周期t内读写器可以接收到的电子标签集合t_sequence[read_max],集合t_sequence[read_max]中的每一个元素储存一个时隙中的标签数据。
[0123]
在一实施例中,在每一个迭代周期开始时,记录迭代周期的起始时间t_start;每接收到一个新的标签数据,遍历集合total[],将新接收到的标签数据对应的电子标签的标识符与集合total[]中的元素进行对比,判断新接收到的标签数据对应的电子标签的标识符是否存在于集合total[]中。若否,则将新接收到的标签数据对应的电子标签的标识符添加至集合total[]的最后;若是,则不执行添加操作。
[0124]
在一实施例中,在每一个迭代周期开始时,清空集合t_read_total[]中的元素;每接收到一个新的标签数据,遍历集合t_read_total[],将新接收到的标签数据对应的电子标签的标识符与集合t_read_total[]中的元素进行对比,判断新接收到的标签数据对应的电子标签的标识符是否存在于集合t_read_total[]中。若否,则将新接收到的标签数据对应的电子标签的标识符添加至集合t_read_total[]的最后;若是在,则不执行添加操作。
[0125]
在一实施例中,使用计时器记录迭代周期内接收到的标签数据的数量rn。在每一个迭代周期开始时,将rn置为0,在迭代周期中,每接收到一个标签数据,rn的值加一,从而,在一个迭代周期结束时,得到该迭代周期t内读写器接收到的标签数据的数量rn。
[0126]
在一实施例中,在一个迭代周期结束时,该迭代周期t内接收到的电子标签的数量n等于集合t_read_total[]的长度,即n=length(t_read_total)。
[0127]
请参阅图6,图6是本技术实施例提供的时序调整方法的第二种流程示意图,在该实施例中,迭代终止条件包括在迭代周期内接收到的电子标签的数量等于预设数量,该时序调整方法可以包括:
[0128]
201、在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻。
[0129]
进入迭代前,创建以下参数:
[0130]
迭代周期t内接收到的电子标签的数量:n(个);
[0131]
迭代周期t内期望接收的电子标签的数量:en;
[0132]
在进入迭代前,对参数进行初始化包括:
[0133]
初始化所有迭代周期中接收到的电子标签的标识符的集合total[];
[0134]
初始化迭代周期t中接收到的电子标签集合t_read_total[];
[0135]
初始化迭代周期t内读写器可以接收到的电子标签集合t_sequence[read_max],集合t_sequence[read_max]中的每一个元素储存一个时隙中的标签数据。
[0136]
在迭代周期t开始时,清空集合t_read_total[]中的元素。在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻。
[0137]
每接收到一个新的标签数据,遍历集合total[],将新接收到的标签数据对应的电子标签的标识符与集合total[]中的元素进行对比,判断新接收到的标签数据对应的电子标签的标识符是否存在于集合total[]中。若否,则将新接收到的标签数据对应的电子标签的标识符添加至集合total[]的最后;若是,则不执行添加操作。
[0138]
每接收到一个新的标签数据,遍历集合t_read_total[],将新接收到的标签数据对应的电子标签的标识符与集合t_read_total[]中的元素进行对比,判断新接收到的标签数据对应的电子标签的标识符是否存在于集合t_read_total[]中。若否,则将新接收到的标签数据对应的电子标签的标识符添加至集合t_read_total[]的最后;若是在,则不执行添加操作。
[0139]
202、统计在迭代周期内接收到的标签数据对应的电子标签的数量。
[0140]
迭代结束时,统计在该迭代周期t内接收到的标签数据对应的电子标签的数量n等于集合t_read_total[]的长度,即n=length(t_read_total)。
[0141]
203、判断电子标签的数量是否等于预设数量,若是则进入步骤207,若否则进入步骤204。
[0142]
其中,预设数量可以为迭代周期t内期望接收的电子标签的数量en。en可以通过以下方式确定:en=length(total)。即,将读写器所有迭代周期内接收到的电子标签的总量作为迭代周期t内期望接收的电子标签的数量en。
[0143]
若电子标签的数量等于预设数量,则进入步骤207,结束迭代;若电子标签的数量不等于预设数量,则进入后续步骤,调整目标设备的发射时刻并在下一迭代周期内重新进行统计。
[0144]
204、根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据。
[0145]
205、确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令。
[0146]
206、根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并返回步骤201。
[0147]
207、结束迭代。
[0148]
请参阅图7,图7是本技术实施例提供的时序调整方法的第三种流程示意图,该时序调整方法可以包括:
[0149]
301、在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻。
[0150]
进入迭代前,创建以下参数:
[0151]
统计单位的长度cell(cell>1);
[0152]
密集度判定的阈值c(c≤length(cell));
[0153]
在进入迭代前,创建密集时隙集合concentrated_li[],并在每一次迭代开始时初始化密集时隙集合concentrated_li[]。
[0154]
在迭代周期内,可以根据统计单位的长度cell和密集度判定的阈值c,使用前述实施例中的方法确定出密集时隙,具体过程不再赘述。
[0155]
在迭代周期内,每确定出一个密集时隙,可以将密集时隙添加至密集时隙集合concentrated_li[]中。
[0156]
302、统计迭代周期中密集时隙的数量。
[0157]
统计迭代周期中密集时隙的数量,即密集时隙集合的长度length(concentrated_li)。
[0158]
303、判断迭代周期中密集时隙的数量是否大于0。若是则进入步骤304,若否则进入步骤307。
[0159]
若迭代周期中密集时隙的数量等于0,则进入步骤307,结束迭代;若迭代周期中密集时隙的数量大于0,则进入后续步骤,调整目标设备的发射时刻并在下一迭代周期内重新进行统计。
[0160]
304、根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据。
[0161]
305、确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令。
[0162]
306、根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并返回步骤301。
[0163]
307、结束迭代。
[0164]
请参阅图8,图8是本技术实施例提供的时序调整方法的第四种流程示意图,该时序调整方法可以包括:
[0165]
401、在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻。
[0166]
进入迭代前,创建以下参数:
[0167]
统计单位的长度cell(cell>1)和第二预设阈值。
[0168]
在进入迭代前,创建空闲时隙集合free_li[],并在每一次迭代开始时初始化密集时隙集合free_li[]。
[0169]
在迭代周期内,可以根据统计单位的长度cell和第二预设阈值,使用前述实施例中的方法确定出空闲时隙,具体过程不再赘述。
[0170]
在迭代周期内,每确定出一个空闲时隙,可以将空闲时隙添加至空闲时隙集合free_li[]中。
[0171]
402、统计迭代周期中空闲时隙的数量。
[0172]
统计迭代周期中空闲时隙的数量,即空闲时隙集合的长度length(free_li)。
[0173]
403、判断迭代周期中空闲时隙的数量是否大于0。若是则进入步骤404,若否则进入步骤407。
[0174]
若迭代周期中密集时隙的数量等于0,则进入步骤407,结束迭代;若迭代周期中密集时隙的数量大于0,则进入后续步骤,调整目标设备的发射时刻并在下一迭代周期内重新进行统计。
[0175]
404、根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据。
[0176]
405、确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令。
[0177]
406、根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并返回步骤401。
[0178]
407、结束迭代。
[0179]
请参阅图9,图9是本技术实施例提供的时序调整方法的第五种流程示意图,该时序调整方法可以包括:
[0180]
501、在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻。
[0181]
进入迭代前,创建以下参数:
[0182]
迭代周期t内接收到的标签数据的数量:rn(个);
[0183]
迭代周期t内可以接收到的电子标签的理论最大值:rrad_max=t/dt;
[0184]
迭代周期t的空置率vacantrate=(read_max-rn)*100%/read_max;
[0185]
在进入迭代前,对参数进行初始化包括:
[0186]
初始化迭代周期t内读写器可以接收到的电子标签集合t_sequence[read_max],集合t_sequence[read_max]中的每一个元素储存一个时隙中的标签数据。
[0187]
在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻。
[0188]
502、统计在迭代周期内接收到的标签数据的数量。
[0189]
使用计时器记录迭代周期内接收到的标签数据的数量rn。在每一个迭代周期开始时,将rn置为0,在迭代周期中,每接收到一个标签数据,rn的值加一,从而,在一个迭代周期结束时,得到该迭代周期t内读写器接收到的标签数据的数量rn。
[0190]
503、确定在迭代周期内可接收到的标签数据的理论最大值。
[0191]
获取读写器的预设迭代周期的时长t;
[0192]
获取电子标签的最小识别间隔dt;
[0193]
根据读写器的预设迭代周期的时长t以及电子标签的最小识别间隔dt计算在迭代周期t内可接收到的标签数据的理论最大值rrad_max=t/dt。
[0194]
504、根据接收到的标签数据的数量以及理论最大值确定迭代周期的空置率。
[0195]
根据接收到的标签数据的数量以及理论最大值确定迭代周期的空置率vacantrate=(read_max-rn)*100%/read_max。
[0196]
505、判断迭代周期的空置率是否大于空置率阈值。若是则进入步骤506,若否则进入步骤509。
[0197]
若迭代周期的空置率小于或等于空置率阈值,则进入步骤509,结束迭代;若迭代周期的空置率大于空置率阈值,则进入后续步骤,调整目标设备的发射时刻并在下一迭代周期内重新进行统计。
[0198]
506、根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数
据。
[0199]
507、确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令。
[0200]
508、根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并返回步骤501。
[0201]
509、结束迭代。
[0202]
由上可知,本技术实施例所提供的时序调整方法,首先在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻;在不满足迭代终止条件时,根据各标签数据的接收时刻,从多个标签数据中确定出待调整的目标标签数据;然后确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令;进而根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件。本技术实施例可以在满足迭代终止条件前持续迭代,在迭代周期内根据各标签数据的接收时刻的分布情况,确定其中哪些标签数据的接收时刻分布密集,需要调整,从而生成时序调整指令调整对应的电子标签下一次发射标签数据的时序,使得接收到的标签数据在时间上错开,避免数据相互干扰碰撞,提高数据传输效率。
[0203]
本技术实施例提供一种计算机可读的存储介质,其上存储有计算机程序,当计算机程序在计算机上执行时,使得计算机执行如本实施例提供的时序调整方法中的流程。
[0204]
本技术实施例还提供一种读写器,包括存储器,处理器,处理器通过调用存储器中存储的计算机程序,用于执行本实施例提供的时序调整方法中的流程。
[0205]
请参阅图10,图10为本技术实施例提供的读写器的结构示意图。
[0206]
该读写器600可以包括存储器601和处理器602等部件。本领域技术人员可以理解,图7中示出的读写器结构并不构成对读写器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0207]
存储器601可用于存储应用程序和数据。存储器601存储的应用程序中包含有可执行代码。应用程序可以组成各种功能模块。处理器602通过运行存储在存储器601的应用程序,从而执行各种功能应用以及数据处理。
[0208]
处理器602是读写器的控制中心,利用各种接口和线路连接整个读写器的各个部分,通过运行或执行存储在存储器601内的应用程序,以及调用存储在存储器601内的数据,执行读写器的各种功能和处理数据,从而对读写器进行整体监控。
[0209]
在本实施例中,读写器中的处理器602会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行代码加载到存储器601中,并由处理器602来运行存储在存储器601中的应用程序,从而实现流程:
[0210]
在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻;
[0211]
在不满足迭代终止条件时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据;
[0212]
确定所述目标标签数据对应的目标电子标签,并生成所述目标电子标签的时序调整指令;
[0213]
根据所述时序调整指令调整所述目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件。
[0214]
在一实施例中,所述迭代终止条件包括在迭代周期内接收到的电子标签的数量等于预设数量,在接收多个标签数据并记录各标签数据的接收时刻之后,处理器602还执行:
[0215]
统计在所述迭代周期内接收到的标签数据对应的电子标签的数量;
[0216]
所述在不满足迭代终止条件时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据包括:
[0217]
当所述电子标签的数量不等于预设数量时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据。
[0218]
在一实施例中,所述迭代周期包括多个平均划分的时隙,所述时隙包括密集时隙和空闲时隙,在在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻之后,处理器602还执行:
[0219]
根据各标签数据的接收时刻,确定各时隙中标签数据的分布情况;
[0220]
根据各时隙中标签数据的分布情况,从所有时隙中确定出密集时隙和空闲时隙。
[0221]
在一实施例中,在从所有时隙中确定出密集时隙和空闲时隙时,处理器602执行:
[0222]
以预设数量的连续时隙作为统计单元,确定出所述迭代周期对应的所有统计单元;
[0223]
根据各时隙中标签数据的分布情况,确定每个统计单元中标签数据的数量;
[0224]
当所述统计单元中标签数据的数量大于或等于第一预设阈值时,确定所述统计单元对应的时隙索引,将与所述时隙索引匹配的时隙确定为密集时隙;
[0225]
当所述统计单元中标签数据的数量小于所述第一预设阈值时,确定所述统计单元对应的时隙索引,将与所述时隙索引匹配的时隙确定为空闲时隙。
[0226]
在一实施例中,所述迭代终止条件包括所述迭代周期中密集时隙的数量为0,在根据各时隙中标签数据的分布情况,从所有时隙中确定出密集时隙和空闲时隙之后,处理器602还执行:
[0227]
统计所述迭代周期中密集时隙的数量;
[0228]
所述在不满足迭代终止条件时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据包括:
[0229]
当所述迭代周期中密集时隙的数量大于0时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据。
[0230]
在一实施例中,所述迭代终止条件包括所述迭代周期中空闲时隙的数量为0,在根据各时隙中标签数据的分布情况,从所有时隙中确定出密集时隙和空闲时隙之后,处理器602还执行:
[0231]
统计所述迭代周期中空闲时隙的数量;
[0232]
所述在不满足迭代终止条件时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据包括:
[0233]
当所述迭代周期中空闲时隙的数量大于0时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据。
[0234]
在一实施例中,所述迭代终止条件包括所述迭代周期的空置率小于或等于空置率阈值,在接收多个标签数据并记录各标签数据的接收时刻之后,处理器602还执行:
[0235]
统计在所述迭代周期内接收到的标签数据的数量;
[0236]
确定在所述迭代周期内可接收到的标签数据的理论最大值;
[0237]
根据所述接收到的标签数据的数量以及所述理论最大值确定所述迭代周期的空置率;
[0238]
在不满足迭代终止条件时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据时,处理器602执行:
[0239]
当所述迭代周期的空置率大于所述空置率阈值时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据。
[0240]
在一实施例中,电子标签包括相互区别的标识符,在根确定所述目标标签数据对应的目标电子标签时,处理器602执行:
[0241]
确定所述目标标签数据对应的标识符;
[0242]
将所述标识符对应的电子标签确定为所述目标电子标签。
[0243]
在一实施例中,所述目标电子标签的时序调整指令中包括所述目标电子标签的标识符以及所述目标电子标签发射下一个标签数据时调整的目标时间差值,在生成所述目标电子标签的时序调整指令时,处理器602执行:
[0244]
确定所述目标电子标签的目标时间差值;
[0245]
根据所述标识符以及所述目标时间差值生成所述时序调整指令。
[0246]
在一实施例中,在确定所述目标电子标签的目标时间差值时,处理器602执行:
[0247]
确定所述目标电子标签对应的目标密集时隙与目标空闲时隙;
[0248]
获取所述目标密集时隙的时隙索引以及所述目标空闲时隙的时隙索引;
[0249]
获取所述时隙的时长;
[0250]
根据所述目标密集时隙的时隙索引、所述目标空闲时隙的时隙索引以及所述时隙的时长确定所述目标电子标签的目标时间差值。
[0251]
在一实施例中,在确定所述目标电子标签对应的目标密集时隙与目标空闲时隙时,处理器602执行:
[0252]
确定所述目标电子标签对应的目标密集时隙;
[0253]
从所述迭代周期中的最后一个密集时隙与最后一个空闲时隙开始,从后往前对所述迭代周期中的密集时隙与空闲时隙进行两两配对;
[0254]
根据配对结果,确定与所述目标密集时隙对应的目标空闲时隙。
[0255]
在一实施例中,在根据所述目标密集时隙的时隙索引、所述目标空闲时隙的时隙索引以及所述时隙的时长确定所述目标电子标签的目标时间差值时,处理器602执行:
[0256]
采用以下公式确定所述目标电子标签的目标时间差值:
[0257]
δt=(free_li[index]-concentrated_li[index])*dt
[0258]
其中,free_li[index]为所述目标空闲时隙的时隙索引,concentrated_li[index]为所述目标密集时隙的时隙索引,为所述时隙的时长。
[0259]
在一实施例中,在根据所述时序调整指令调整所述目标电子标签发射下一个标签数据的发射时刻时,处理器602执行:
[0260]
根据所述目标时间差值调整所述目标电子标签发射下一个标签数据的发射时刻。
[0261]
由上可知,本技术实施例所提供的读写器,首先在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻;在不满足迭代终止条件时,根据各标签数据的接收时刻,从
多个标签数据中确定出待调整的目标标签数据;然后确定目标标签数据对应的目标电子标签,并生成目标电子标签的时序调整指令;进而根据时序调整指令调整目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件。本技术实施例可以在满足迭代终止条件前持续迭代,在迭代周期内根据各标签数据的接收时刻的分布情况,确定其中哪些标签数据的接收时刻分布密集,需要调整,从而生成时序调整指令调整对应的电子标签下一次发射标签数据的时序,使得接收到的标签数据在时间上错开,避免数据相互干扰碰撞,提高数据传输效率。
[0262]
本技术实施例还提供一种电子标签,该电子标签用于向本技术实施例提供的读写器发射标签数据。若所述电子标签为目标电子标签,则在不满足迭代终止条件时,根据所述时序调整指令调整下一个标签数据的发射时刻。
[0263]
本技术实施例还提供一种时序调整系统。请参阅图11,图11为本技术实施例提供的时序调整系统的结构示意图。该时序调整系统包括读写器600和电子标签200:
[0264]
读写器600,用于在迭代周期内,接收多个标签数据并记录各标签数据的接收时刻,在不满足迭代终止条件时,根据各标签数据的接收时刻,从所述多个标签数据中确定出待调整的目标标签数据,确定所述目标标签数据对应的目标电子标签,并生成所述目标电子标签的时序调整指令,根据所述时序调整指令调整所述目标电子标签发射下一个标签数据的发射时刻,并重复以上步骤,直至满足迭代终止条件;
[0265]
电子标签200,用于向读写器发射标签数据,若所述电子标签为目标电子标签,则在不满足迭代终止条件时,根据所述时序调整指令调整下一个标签数据的发射时刻。
[0266]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对时序调整方法的详细描述,此处不再赘述。
[0267]
需要说明的是,对本技术实施例时序调整方法而言,本领域普通技术人员可以理解实现本技术实施例时序调整方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,计算机程序可存储于一计算机可读取的存储介质中,如存储在存储器中,并被至少一个处理器执行,在执行过程中可包括如时序调整方法的实施例的流程。其中,计算机可读的存储介质可为磁碟、光盘、只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)等。
[0268]
对本技术实施例的时序调整装置而言,其各功能模块可以集成在一个处理芯片中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中,存储介质譬如为只读存储器,磁盘或光盘等。
[0269]
以上对本技术实施例所提供的一种时序调整方法、存储介质、读写器、电子标签及系统进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本技术的限制。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献