著录项信息
专利名称 | 基于射频识别技术的防碰撞方法及系统 |
申请号 | CN201410830742.7 | 申请日期 | 2014-12-26 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-04-15 | 公开/公告号 | CN104517085A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06K7/00 | IPC分类号 | G;0;6;K;7;/;0;0;;;G;0;6;N;7;/;0;2查看分类表>
|
申请人 | 湖南强智科技发展有限公司 | 申请人地址 | 湖南省长沙市高新开发区文轩路27号麓谷企业广场C4栋505室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 湖南强智科技发展有限公司 | 当前权利人 | 湖南强智科技发展有限公司 |
发明人 | 柏智;杨玉林;谢均松 |
代理机构 | 广州华进联合专利商标代理有限公司 | 代理人 | 秦雪梅;谢伟 |
摘要
本发明公开了一种基于射频识别技术的防碰撞方法及系统,通过向标签发送询问信息,接收标签的回应信息,根据回应信息对标签通过模糊均值聚类算法进行分组,再对标签分配唯一的识别序列号,根据标签的唯一的识别序列号,对标签进行分组识别。当一个分组的标签识别完成后,再对下一个分组的标签进行识别,直到所有分组的标签识别完成,实现对标签分组识别。通过模糊均值聚类算法对标签进行有效分组,通过依次对每个分组的标签进行识别,有效减少碰撞,提高识别效率。
1.一种基于射频识别技术的防碰撞方法,其特征在于,包括如下步骤:
向标签发送询问信息;
接收所述标签的回应信息,所述回应信息包括所述标签的循环冗余校验码;
根据所述回应信息,对所述标签通过模糊均值聚类算法进行分组;
根据所述标签的循环冗余校验码对每组所述标签分配唯一的识别序列号;
根据所述标签的唯一的识别序列号,依次对每组所述标签进行分组识别;
所述根据所述回应信息,对所述标签通过模糊均值聚类算法进行分组的步骤具体为:
根据所述标签的循环冗余校验码,对所述标签通过模糊均值聚类算法进行分组;
所述根据所述标签的循环冗余校验码对每组所述标签分配唯一的识别序列号的步骤具体为:
根据所述标签的循环冗余校验码,计算所述标签到其所在分组的聚类中心的距离,根据所述标签到其所在分组的聚类中心的距离远近分配唯一的识别序列号,所述标签的唯一的识别序列号的大小与所述标签到其所在分组的聚类中心的距离远近对应;
所述根据所述回应信息,对所述标签通过模糊均值聚类算法进行分组的步骤包括如下步骤:
初始化聚类中心v、模糊权重指数m、类的个数c以及时隙数范围[Lmin,Lmax];
根据所述聚类中心v、模糊权重指数m以及类的个数c,计算模糊隶属度矩阵,计算公式为:
其中,所述c为大于等于1的正整数,所述Lmin为所述时隙数的下限,所述Lmax为所述时隙数的上限,所述uij表示所述标签xi属于第j类的模糊隶属度,所述标签xi的值为所述标签的循环冗余校验码的值,所述vj为聚类中心v矩阵中第j类的聚类中心,所述标签的数量为n,n为大于等于1的正整数,i是大于等于1且小于等于n的正整数,j是大于等于1且小于等于c的正整数,k为大于等于1小于等于c的正整数,vk表示聚类中心v矩阵中第k类的聚类中心;
更新所述聚类中心v,更新所述聚类中心v中每一类的聚类中心的公式为:
根据更新的聚类中心v,计算聚类目标值,计算聚类目标值的公式为:
判断所述聚类目标值是否满足预先设定的最小条件;
若满足,则统计每个分组的所述标签数量;
判断每个分组的所述标签数量是否都在[Lmin,Lmax]范围内;
如是,对所述标签聚类分组成功,所述根据所述回应信息,对所述标签通过模糊均值聚类算法进行分组的步骤结束。
2.根据权利要求1所述的基于射频识别技术的防碰撞方法,其特征在于,若判断有一组的所述标签数量不在[Lmin,Lmax]范围内,对所述类的个数c进行调整,调整公式为:
其中,Lj表示第j类分组中所述标签的数量;
初始化聚类中心v和模糊权重指数m;根据所述聚类中心v、模糊权重指数m以及调整后的所述类的个数c,返回并继续执行计算模糊隶属度矩阵的步骤。
3.根据权利要求1所述的基于射频识别技术的防碰撞方法,其特征在于,若判断所述聚类目标值不满足预先设定的最小条件,根据所述更新的聚类中心v、模糊权重指数m以及类的个数c,返回并继续执行计算模糊隶属度矩阵的步骤。
4.根据权利要求3所述的基于射频识别技术的防碰撞方法,其特征在于,所述根据所述标签的唯一的识别序列号,对所述标签进行分组识别的步骤如下包括:
初始化T为零;
根据每个分组的所述标签的唯一的识别序列号的大小,对每个分组的所述标签进行一轮识别;
统计一轮识别后未被识别的所述标签的个数T,将所述标签的数量n的值更新为T;
判断未被识别的所述标签的数量T是否超过所述时隙数的上限Lmax;
若不超过,判断T是否等于0,若不等于0,则返回并继续执行所述初始化T为零的步骤;
若T等于0,则所述根据所述标签的唯一的识别序列号,依次对每组所述标签进行分组识别的步骤结束。
5.根据权利要求4所述的基于射频识别技术的防碰撞方法,其特征在于,若判断未被识别的所述标签的数量T超过所述时隙数的上限Lmax,则调整所述时隙数范围;
所述根据所述回应信息,对未被识别的所述标签通过模糊均值聚类算法进行重新分组,得到新的分组;
根据所述新的分组,返回并继续执行所述初始化T为零的步骤,直到判断未被识别的所述标签的数量T不超过所述时隙数的上限Lmax,且T的值为0。
6.根据权利要求5所述的基于射频识别技术的防碰撞方法,其特征在于,所述根据每个分组的所述标签的唯一的识别序列号的大小,对每个分组的所述 标签进行一轮识别的步骤包括如下步骤:
初始化清空成功时隙计数器和非成功时隙计数器;
设定所述时隙数为当前识别分组内所述标签数量;
给所述时隙数中每个时隙进行编号,得到时隙编号,分配经过编号后的所述时隙至当前识别分组的所述标签;
发送识别请求,当前识别分组的所述标签选择分配的所述时隙编号所决定的时间内返回应答;
接收所述标签的应答,若接收到所述标签的响应,则识别成功并发送锁死请求,将成功被识别的所述标签锁死,且所述成功时隙计数器加1;
若没有接收到所述标签的响应,则识别失败,所述非成功时隙计数器加1;
判断当前识别分组的所述标签选择时隙是否完毕;
若判断当前识别分组的所述标签选择时隙完毕,将所述非成功计数器增加到未被识别的所述标签的个数T中,并判断每个分组的所述标签是否识别完成;
如是,所述根据每个分组的所述标签的唯一的识别序列号的大小,对每个分组的所述标签进行一轮识别的步骤结束;
如否,利用所述根据每个分组的所述标签的唯一的识别序列号的大小,对每个分组的所述标签进行一轮识别的步骤执行下一组所述标签的识别。
7.根据权利要求6所述的基于射频识别技术的防碰撞方法,其特征在于,若判断当前识别分组的所述标签选择时隙没有完毕,则返回并继续执行所述发送识别请求,所述分组的标签选择分配的所述时隙编号所决定的时间内返回应答的步骤。
8.一种基于射频识别技术的防碰撞系统,其特征在于,包括:
发送模块,用于向标签发送询问信息;
接收模块,用于接收所述标签的回应信息,所述回应信息包括所述标签的循环冗余校验码;
分组模块,用于根据所述回应信息,对所述标签通过模糊均值聚类算法进 行分组;
分配模块,用于根据所述标签的循环冗余校验码对每组的所述标签分配唯一的识别序列;
识别模块,用于根据所述标签的唯一的识别序列号,依次对每组所述标签进行分组识别;
所述分组模块还用于根据标签的循环冗余校验码,对标签通过模糊均值聚类算法进行分组;
所述分配模块还用于根据标签的循环冗余校验码,计算标签到其所在分组的聚类中心的距离,根据标签到其所在分组的聚类中心的距离远近分配唯一的识别序列号,标签的唯一的识别序列号的大小与标签到其所在分组的聚类中心的距离远近对应;
所述分组模块包括:
第一初始化单元,用于初始化聚类中心v、模糊权重指数m、类的个数c以及时隙数范围[Lmin,Lmax];
第一计算单元,用于根据聚类中心v、模糊权重指数m以及类的个数c,计算模糊隶属度矩阵;
计算公式为:
其中,c是大于等于1的正整数,Lmin为时隙数的下限,Lmax为时隙数的上限,uij表示标签xi属于第j类的模糊隶属度,标签xi的值为标签的循环冗余校验码的值,vj为聚类中心v矩阵中第j类的聚类中心,标签的数量为n,n为大于等于1的正整数,i是大于等于1且小于等于n的正整数,j是大于等于1且小于 等于c的正整数;k为大于等于1小于等于c的正整数,vk表示第k类的聚类中心。
更新单元,用于更新聚类中心v;
更新聚类中心v中每一类的聚类中心的公式为:
第二计算单元,用于根据更新的聚类中心v,计算聚类目标值;
计算聚类目标值的公式为:
第一判断单元,用于判断聚类目标值是否满足预先设定的最小条件;
统计单元,用于第一判断单元判断聚类目标值满足预先设定的最小条件时,统计每个分组的标签数量;
第二判断单元,用于判断每个分组的标签数量是否都在[Lmin,Lmax]范围内;
当第二判断单元判断每个分组的标签数量都在[Lmin,Lmax]范围内时,则利用所述分组模块对标签的分组完成。
基于射频识别技术的防碰撞方法及系统\n技术领域\n[0001] 本发明涉及数据处理方法,特别涉及一种基于射频识别技术的防碰撞方法及系统。\n背景技术\n[0002] 射频识别(Radio Frequency Identification,RFID)技术是一种利用射频信号的空间耦合实现非接触式自动识别的技术,射频识别系统的核心部件包括阅读器和标签,阅读器用于接收来自标签的信息,标签向阅读器远程无线传输自身存储的信息,以识别标签代表的物品、人或器具的身份。\n[0003] 随着高校招生规模的扩大,学生考勤逐渐成为高校的一个难题,传统的考勤方式是教师随堂点名。随着科技的发展,高校一卡通的普遍应用,为基于射频识别技术的考勤方法提供了便利。一卡通中含有可以区别学生身份的标签,通过识别一卡通中的标签,从而实现对学生身份的识别,达到考勤目的。射频识别系统工作时,可能会有一个以上的标签同时处于阅读器的识别范围内,这样如果两个或两个以上的标签同时向阅读器发送数据时会出现通信冲突和信息相互干扰碰撞,这样导致阅读器和标签之间的通信失败,阅读器对标签的识别失败。同样,有时也可能多个标签处在多个阅读器的识别范围内,它们之间的信息通信也会引起信息干扰。为了防止这些冲突和干扰的产生,将无线信道按时间分成若干个时间片,即若干个时隙,轮流分配给多个标签信息使用。\n[0004] 传统的基于射频识别技术的防碰撞方法主要是利用二叉树算法和ALOHA算法,然而,利用传统的射频识别技术进行标签识别,当标签数量过多时,耗时较长,识别效率低。\n发明内容\n[0005] 基于此,有必要针对传统基于射频识别技术的防碰撞方法的效率低的问题,提出一种提高识别效率的基于射频识别技术的防碰撞方法及系统。\n[0006] 一种基于射频识别技术的防碰撞方法,包括如下步骤:\n[0007] 向标签发送询问信息;\n[0008] 接收所述标签的回应信息,所述回应信息包括所述标签的循环冗余校验码;\n[0009] 根据所述回应信息,对所述标签通过模糊均值聚类算法进行分组;\n[0010] 根据所述标签的循环冗余校验码对每组所述标签分配唯一的识别序列号;\n[0011] 根据所述标签的唯一的识别序列号,依次对每组所述标签进行分组识别。\n[0012] 本发明还公开了一种基于射频识别技术的防碰撞系统,包括:\n[0013] 发送模块,用于向标签发送询问信息;\n[0014] 接收模块,用于接收所述标签的回应信息,所述回应信息包括所述标签的循环冗余校验码;\n[0015] 分组模块,用于根据所述回应信息,对所述标签通过模糊均值聚类算法进行分组;\n[0016] 分配模块,用于根据所述标签的循环冗余校验码对每组的所述标签分配唯一的识别序列;\n[0017] 识别模块,用于根据所述标签的唯一的识别序列号,依次对每组所述标签进行分组识别。\n[0018] 上述基于射频识别技术的防碰撞方法及系统,根据标签的循环冗余校验码通过模糊均值聚类算法对标签进行有效分组,并根据标签到其所在组别的聚类中心的距离为分组的标签分配识别序号,依次对每组的标签进行分组识别,对每组的标签在不同时间进行识别,有效减少碰撞,提高识别效率。\n附图说明\n[0019] 图1为一种实施方式的基于射频识别技术的防碰撞方法的流程图;\n[0020] 图2为另一种实施方式的基于射频识别技术的防碰撞方法的聚类分组方法的流程图;\n[0021] 图3为另一种实施方式的基于射频识别技术的防碰撞方法的分组识别方法的流程图;\n[0022] 图4为另一种实施方式的基于射频识别技术的防碰撞方法的每组标签识别方法的流程图;\n[0023] 图5为一种实施方式的基于射频识别技术的防碰撞系统的结构系统图。\n具体实施方式\n[0024] 为了使本发明的目的、技术方案和优点更加清楚明了,以下根据附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。\n[0025] 请参阅图1,一种基于射频识别技术的防碰撞方法,包括如下步骤:\n[0026] S1000:向标签发送询问信息。\n[0027] 当学生进入指定范围后,随身携带的一卡通自带的标签进入能被阅读器识别的区域,阅读器向该区域内的标签发送询问信息,让标签进入就绪状态。\n[0028] S2000:接收标签的回应信息,回应信息包括标签的循环冗余校验码。\n[0029] 标签接收到阅读器发送的询问信息后,发送回应信息至阅读器,回应信息包括标签的循环冗余校验码,循环冗余校验码即CRC码,其英文全称为Cyclic Redundancy Check。\n[0030] S3000:根据回应信息,对标签通过模糊均值聚类算法进行分组。\n[0031] 阅读器接收到上述回应信息后,通过模糊均值聚类算法对标签进行分组。在实际的应用中,标签数量一般较大,在同一段时间对所有的标签进行识别时,易发生碰撞,通过对标签进行分组,再依次对每个分组的标签进行识别,有利于减少碰撞,提高识别效率。\n[0032] S4000:根据标签的循环冗余校验码对每组标签分配唯一的识别序列号。\n[0033] 对标签进行分组后,对每个分组的标签分配唯一的识别序列号,用于区别不同的标签。\n[0034] S5000:根据标签的唯一的识别序列号,依次对每组标签进行分组识别。\n[0035] 当一个分组的标签识别完成后,再对下一个分组的标签进行识别,直到所有分组的标签识别完成,实现依次对每组标签的分组识别。\n[0036] 上述基于射频识别技术的防碰撞方法,通过模糊均值聚类算法对标签进行有效分组,并为分组的标签分配识别序列号,根据该识别序列号,通过一次对每个分组的标签进行识别,有效减少碰撞,提高识别效率。\n[0037] 在其中一个实施例中,根据回应信息,对标签通过模糊均值聚类算法进行分组的步骤S3000具体为:\n[0038] 根据标签的循环冗余校验码,对标签通过模糊均值聚类算法进行分组。\n[0039] 根据标签的循环冗余校验码对每组标签分配唯一的识别序列号的步骤S4000具体为:\n[0040] 根据标签的循环冗余校验码,计算标签到其所在分组的聚类中心的距离,根据标签到其所在分组的聚类中心的距离远近分配唯一的识别序列号,标签的唯一的识别序列号的大小与标签到其所在分组的聚类中心的距离远近对应。\n[0041] 具体的,计算标签到其所在分组的聚类中心的距离的公式为:\n[0042]\n[0043] 其中, 表示第j类分组中第h个标签,其值为第h个标签的循环冗余校验码,vj表示第j类分组的聚类中心, 表示第j类分组中第h个标签到该组的聚类中心的距离。j是大于等于1小于等于分类的个数的正整数,h是大于等于1小于等于组内标签的数量的正整数。\n[0044] 阅读器分配的时隙数通常是定值,时隙数范围通常为1~256,可以在该范围中选择一个合理的区间,这样可以确保聚类分组的结果是相对最优的。标签的唯一的识别序列号的确定非常重要,要保证每个标签的序号具有唯一性,这样才不会出现冲突状态。通过计算每个分组内标签的循环冗余校验码的到组内聚类中心的距离,最后根据该距离的大小确定分组内每一个标签的唯一的识别序列号,标签的循环冗余校验码到组内聚类中心的距离越小,该标签的唯一的识别序列号越小,反之越大。如果出现距离相同的情况,则先计算的标签的唯一的识别序列号靠前,这样就可以给每个分组的标签分配一个唯一的识别序列号。阅读器按照标签的唯一的识别序列号的大小,依次对每个分组的标签进行识别。\n[0045] 在其中一个实施例中,请参阅图2,根据回应信息,对标签通过模糊均值聚类算法进行分组的步骤S3000包括如下步骤:\n[0046] S3100:初始化聚类中心v、模糊权重指数m、类的个数c以及时隙数范围[Lmin,Lmax]。\n[0047] S3200:根据聚类中心v、模糊权重指数m以及类的个数c,计算模糊隶属度矩阵。\n[0048] 计算公式为:\n[0049]\n[0050] 其中,c是大于等于1的正整数,Lmin为时隙数的下限,Lmax为时隙数的上限,uij表示标签xi属于第j类的模糊隶属度,标签xi的值为标签的循环冗余校验码的值,vj为聚类中心v矩阵中第j类的聚类中心,标签的数量为n,n为大于等于1的正整数,i是大于等于1且小于等于n的正整数,j是大于等于1且小于等于c的正整数;k为大于等于1小于等于c的正整数,vk表示聚类中心v矩阵中第k类的聚类中心。\n[0051] S3300:更新聚类中心v。\n[0052] 更新聚类中心v中每一类的聚类中心的公式为:\n[0053]\n[0054] S3400:根据更新的聚类中心v,计算聚类目标值。\n[0055] 计算聚类目标值的公式为:\n[0056]\n[0057] S3500:判断聚类目标值是否满足预先设定的最小条件。\n[0058] 若满足,则执行以下步骤:\n[0059] S3600:统计每个分组的标签数量。\n[0060] S3700:判断每个分组的标签数量是否都在[Lmin,Lmax]范围内。\n[0061] 如是,则对标签聚类分组成功,根据回应信息,对标签通过模糊均值聚类算法进行分组的步骤S3000结束。将继续执行步骤S4000。\n[0062] 若判断有一组的标签数量不在[Lmin,Lmax]范围内,则执行以下步骤:\n[0063] S3800:对类的个数c进行调整。\n[0064] 调整公式为:\n[0065]\n[0066] 其中,Lj表示第j类分组中标签的数量。\n[0067] S3900:初始化聚类中心v和模糊权重指数m。\n[0068] 此时,类的个数为调整后的c,返回继续执行根据聚类中心v、模糊权重指数m以及类的个数c,计算模糊隶属度矩阵的步骤S3200。\n[0069] 若判断聚类目标值不满足预先设定的最小条件,则返回并继续执行根据聚类中心v、模糊权重指数m以及类的个数c,计算模糊隶属度矩阵的步骤S3200,此时的聚类中心为更新后的聚类中心v。\n[0070] 聚类中心v是一个矩阵,矩阵中包含了不同类的聚类中心,分别为v1,v2,…,vc,v1为第1类的聚类中心,v2为第2类的聚类中心,vc为第c类的聚类中心,总共包括c个聚类中心。\n当需要对聚类中心v进行更新时,则对聚类中心v矩阵中的每一类的聚类中心进行更新,即需要对j从1到c的聚类中心vj进行更新,当将聚类中心v矩阵中的c个聚类中心更新完毕后,对聚类中心v的更新也就完成。根据聚类中心v进行相关计算时,是利用聚类中心v矩阵中的每一类的聚类中心进行计算的。\n[0071] 标签和阅读器交互信息的时间片为时隙,一个时隙中标签和阅读器的通信是一对一的,如果出现两个以上标签同时与阅读器进行数据传输视为出现碰撞,成为碰撞时隙,则识别不成功。当一个时隙中标签和阅读器一对一通信,则识别成功。\n[0072] 在进行分组时完成时隙数的初始化,其中,Lmin和Lmax分别为时隙数的下限和上限,根据分组后每组的标签数量对类的个数c进行调整,即当分组的标签数有大于时隙数的上限Lmax时,需要增加类的个数c,以保证每个分组的标签数小于时隙数的上限,当每个分组的标签数均小于时隙数的下限Lmin时,需要减少类的个数c,以保证识别的效率,通过上述调整过程后的类的个数c进行重新分组,直到每个分组的标签数均在时隙数的范围内,c不再更新,分组完成,这样可达到最好的分组效果。\n[0073] 在其中一个实施例中,请参阅图3,根据标签的唯一的识别序列号,依次对每组标签进行分组识别的步骤S5000如下包括:\n[0074] S5100:初始化T为零。\n[0075] S5200:根据每个分组的标签的唯一的识别序列号的大小,对每个分组的标签进行一轮识别。\n[0076] S5300:统计一轮识别后未被识别的标签的个数T,将标签的数量n的值更新为T。\n[0077] S5400:判断未被识别的标签的数量T是否超过时隙数的上限Lmax。\n[0078] 若不超过,执行如下步骤:\n[0079] S5500:判断T是否等于0。\n[0080] 若T不等于0,则返回并继续执行所述初始化T为零的步骤S5100;\n[0081] 若T等于0,则根据所述标签的唯一的识别序列号,依次对每组标签进行分组识别的步骤S5000结束;\n[0082] S5600:标签识别完成。\n[0083] 在其中一个实施例中,若步骤S5400判断未被识别的所述标签的数量T超过所述时隙数的上限Lmax,则执行以下步骤:\n[0084] S5700:调整所述时隙数范围。\n[0085] S5800:通过步骤S3000对未被识别的标签进行重新分组,得到新的分组。\n[0086] 根据新的分组,继续执行初始化T为零的步骤S5100,直到判断未被识别的标签的数量T不超过时隙数的上限Lmax,且T的值为0。\n[0087] 在一轮识别结束后,统计未被识别的标签的个数,对未被识别的标签重新分组后进行下一轮的识别。由于一轮识别后,剩余的未被识别的标签数量不多,因此,在进行下一次分组前,对时隙数范围做适当调整,实现动态时隙分配,有利于加速分组,提高识别效率。\n当未被识别的标签的个数小于时隙数的上限,则无需分组,直接对未识别的标签进行下一轮的识别。\n[0088] 在其中一个实施例中,请参阅图4,根据每个分组的标签的唯一的识别序列号的大小,对每个分组的标签进行一轮识别的步骤S5200包括如下步骤:\n[0089] S5210:初始化清空成功时隙计数器和非成功时隙计数器;\n[0090] S5220:设定时隙数为当前识别分组内标签数量;\n[0091] S5230:给时隙数中每个时隙进行编号,得到时隙编号,分配经过编号后的时隙至当前识别分组的标签;\n[0092] S5240:发送识别请求,当前识别分组的标签选择分配的时隙编号所决定的时间内返回应答;\n[0093] S5250:接收标签的应答,若接收到标签的响应,则识别成功并发送锁死请求,将成功被识别的标签锁死,且成功时隙计数器加1;\n[0094] 若没有接收到标签的响应,则识别失败,非成功时隙计数器加1;\n[0095] S5260:判断当前识别分组的标签选择时隙是否完毕;\n[0096] 若判断当前识别分组的标签选择时隙完毕,则执行以下步骤:\n[0097] S5270:将非成功计数器增加到未被识别的所述标签的个数T中;\n[0098] S5280:判断每个分组的标签是否识别完成;\n[0099] 如是,则根据每个分组的标签的唯一的识别序列号的大小,对每个分组的标签进行一轮识别的步骤S5200结束;执行统计一轮识别后未被识别的标签的个数T,将标签的数量n的值更新为T的步骤S5300。\n[0100] 如否,利用根据每个分组的标签的唯一的识别序列号的大小,对每个分组的标签进行一轮识别的步骤S5200执行下一组标签的识别,即返回并继续执行步骤S5210,对下一组标签进行识别。\n[0101] 在其中一个实施例中,若通过步骤S5260判断当前识别分组的标签选择时隙没有完毕,则返回并继续执行发送识别请求,分组的标签选择分配的时隙编号所决定的时间内返回应答的步骤S5240。\n[0102] 每个标签在阅读器发送的时隙数中选择一个时隙与阅读器进行数据传输,若标签没有发生碰撞,标签发送一个响应给阅读器,则该标签被识别成功;若标签发生碰撞,标签不会发送响应给阅读器,则该标签被识别失败,将进入下一轮识别。\n[0103] 在步骤S5220中设定时隙数为当前识别分组内标签数量,在传统的识别算法中,当标签数量过多时,吞吐率会明显下降,所以选择合适的分配时隙数是非常关键的。标签的数量为n,所需的时隙数为L,由统计学定律可知,当1个时隙被r个标签选择的概率为:\n[0104]\n[0105] 在一个时隙数的识别周期后,标签被成功识别的时隙数、空时隙数、发生冲突的时隙数的期望值的计算公式分别为:\n[0106]\n[0107]\n[0108]\n[0109] 吞吐率 并对其求导,对导数赋值为0,等式如下:\n[0110]\n[0111] 通过上式解得时隙数为:\n[0112]\n[0113] 当标签的数量n足够多时,对L进行泰勒展开,可得:\n[0114]\n[0115] 所以,在选择为标签分配的时隙数时,最优选择为标签的数量n,从而在步骤S5220中设定时隙数为当前识别分组内标签数量。\n[0116] 上述基于射频识别技术的防碰撞方法,对标签利用模糊均值聚类算法进行分组预处理,在分组过程中,根据每组的标签数量对分组的个数进行不断的调整,直到每组标签的数量均在一个范围之内,这样能保证分组均匀,减少每组中标签数量的差异,确保后续识别的效率;分组完成后,为了提高识别过程中的效率,为每组分配的时隙数选择为本组内标签的数量;时隙数分配完毕后,依次对每组标签进行识别,统计未被识别的标签的数量,由于未被识别的标签的数量不多,重新调整时隙数范围,使时隙数范围变窄,再对未被识别的标签进行重新分组,重新分配时隙数,然后再进行依次识别,这样有利于加速分组和识别,提高识别速度。\n[0117] 请参阅图5,本发明还公开了一种基于射频识别技术的防碰撞系统,包括:\n[0118] 发送模块100,用于向标签发送询问信息。\n[0119] 接收模块200,用于接收标签的回应信息,所述回应信息包括标签的循环冗余校验码。\n[0120] 分组模块300,用于根据回应信息,对标签通过模糊均值聚类算法进行分组。\n[0121] 分配模块400,用于根据标签的循环冗余校验码对每组的标签分配唯一的识别序列;\n[0122] 识别模块500,用于根据标签的唯一的识别序列号,依次对每组标签进行分组识别。\n[0123] 根据标签的唯一的识别序列号的大小,依次对每组标签进行分组识别,标签数量较多时,对所有标签在一个时间段进行识别容易造成碰撞,分组对标签进行识别,可以有效避免碰撞的发生,提高识别效率。\n[0124] 上述基于射频识别技术的防碰撞系统,利用阅读器100向标签发送询问信息,标签接收到该询问信息后反馈一个回应信息给阅读器100,阅读器100根据该回应信息,利用分组系统200通过模糊均值聚类算法对标签进行有效分组,并利用分配系统300为每组的标签分配唯一的识别序列号,识别系统400根据该唯一的识别序列号,通过在不同时段依次对每组的标签进行识别,有效减少碰撞,提高识别效率。\n[0125] 在其中一个实施例中,分组模块300还用于根据标签的循环冗余校验码,对标签通过模糊均值聚类算法进行分组。\n[0126] 分配模块400还用于根据标签的循环冗余校验码,计算标签到其所在分组的聚类中心的距离,根据标签到其所在分组的聚类中心的距离远近分配唯一的识别序列号,标签的唯一的识别序列号的大小与标签到其所在分组的聚类中心的距离远近对应。\n[0127] 在其中一个实施例中,分组模块300包括:\n[0128] 第一初始化单元,用于初始化聚类中心v、模糊权重指数m、类的个数c以及时隙数范围[Lmin,Lmax]。\n[0129] 第一计算单元,用于根据聚类中心v、模糊权重指数m以及类的个数c,计算模糊隶属度矩阵。\n[0130] 计算公式为:\n[0131]\n[0132] 其中,c是大于等于1的正整数,Lmin为时隙数的下限,Lmax为时隙数的上限,uij表示标签xi属于第j类的模糊隶属度,标签xi的值为标签的循环冗余校验码的值,vj为聚类中心v矩阵中第j类的聚类中心,标签的数量为n,n为大于等于1的正整数,i是大于等于1且小于等于n的正整数,j是大于等于1且小于等于c的正整数;k为大于等于1小于等于c的正整数,vk表示第k类的聚类中心。\n[0133] 更新单元,用于更新聚类中心v。\n[0134] 更新聚类中心v中每一类的聚类中心的公式为:\n[0135]\n[0136] 第二计算单元,用于根据更新的聚类中心v,计算聚类目标值。\n[0137] 计算聚类目标值的公式为:\n[0138]\n[0139] 第一判断单元,用于判断聚类目标值是否满足预先设定的最小条件。\n[0140] 统计单元,用于第一判断单元判断聚类目标值满足预先设定的最小条件时,统计每个分组的标签数量。\n[0141] 第二判断单元,用于判断每个分组的标签数量是否都在[Lmin,Lmax]范围内。\n[0142] 当第一判断单元判断聚类目标值满足预先设定的最小条件时,通过统计单元统计每个分组的标签数量,再利用第二判断单元判断每个分组的标签数量都在[Lmin,Lmax]范围内时,则利用分组模块300对标签的分组完成。\n[0143] 在其中一个实施例中,分组模块300还包括:\n[0144] 第一调整单元,用于第二判断单元判断有一组的标签数量不在[Lmin,Lmax]范围内时,对类的个数c进行调整。\n[0145] 调整公式为:\n[0146]\n[0147] 其中,Lj表示第j类分组中标签的数量。\n[0148] 第二初始化单元,用于在第一调整单元对类的个数c进行调整后,初始化聚类中心v和模糊权重指数m。\n[0149] 第一计算单元根据第一初始化单元初始化的聚类中心v、模糊权重指数m、类的个数c以及时隙数范围[Lmin,Lmax]计算模糊隶属度矩阵,再通过第一更新模块更新聚类中心v,第二计算单元根据更新的聚类中心v,计算聚类目标值,第一判断单元再判断该聚类目标值是否满足预先设定的最小条件,当满足时,利用统计单元统计每个分组的标签数量,再利用第二判断单元判断每个分组的标签数量是否都在[Lmin,Lmax]范围内,当第二判断单元判断有一组的标签数量不在[Lmin,Lmax]范围内,通过第一调整单元对类的个数c进行调整,并通过第二初始化单元再初始化聚类中心v和模糊权重指数m,再利用第一计算模块根据调整后的c以及初始化的聚类中心v和模糊权重指数m计算模糊隶属度矩阵,进行重新分类。当第二判断单元判断每个分组的标签在范围内时,利用分组模块300对标签的分组完成。当第一判断单元在判断该聚类目标值是不满足预先设定的最小条件时,再利用第一计算模块根据更新后的聚类中心v、模糊权重指数m以及类的个数c计算模糊隶属度矩阵,进行重新分类。\n[0150] 通过分组模块300对标签进行模糊均值聚类算法进行分组,利用第一调整单元根据每个分组中的标签数量对分类个数c进行调整,当所有分组中的其中一组标签数量不在预定的时隙数范围内,对分类个数c进行调整,再通过模糊均值聚类算法进行重新分组,当所有分组中的标签数量均在预定的范围内,对标签分组成功。\n[0151] 在其中一个实施例中,识别模块500包括:\n[0152] 第三初始化单元,用于初始化T为零。\n[0153] 轮询识别单元,用于根据每个分组的标签的唯一的识别序列号的大小,对每个分组的标签进行一轮识别。\n[0154] 统计更新单元,用于统计一轮识别后未被识别的标签的个数T,将标签的数量n的值更新为T。\n[0155] 第三判断单元,用于判断未被识别的标签的数量T是否超过时隙数的上限Lmax,还用于判断标签的数量T是否等于0。\n[0156] 当第三判断单元判断T不超过上限Lmax时,判断T等于0时,利用识别模块500对所有标签的识别成功。判断T不等于0时,再返回至第三初始单元对T进行初始化,重新按照上述过程对未被识别的标签进行识别。\n[0157] 在其中一个实施例中,识别模块500还包括:\n[0158] 第二调整单元,用于当判断未被识别的标签的数量T超过时隙数的上限Lmax时,调整时隙数范围。\n[0159] 当第二调整单元对时隙数调整完毕后,再利用分组模块300对未被识别的标签进行重新分组,得到新的分组,并返回至第三初始单元对T进行初始化,再通过上述识别过程对新的分组进行识别,直到未被识别的标签的数量T的值为0,即对所有标签识别成功。\n[0160] 在其中一个实施例中,轮询识别单元包括:\n[0161] 第四初始化单元,用于初始化清空成功时隙计数器和非成功时隙计数器。\n[0162] 编号单元,用于设定时隙数为当前识别分组内标签数量。\n[0163] 发送单元,用于发送识别请求,当前识别分组的标签选择分配的时隙编号所决定的时间内返回应答。\n[0164] 接收单元,用于接收标签的应答。\n[0165] 累加单元,用于判断接收单元是否接收到标签的响应,当接收到了标签的响应,该标签被识别成功,成功时隙计数器加1,当没有接收到标签的响应,则该标签识别失败,非成功计数器加1。\n[0166] 锁死单元,用于向上述识别成功的标签发送锁死请求,将成功被识别的标签锁死。\n[0167] 第四判断单元,用于判断当前识别分组的标签选择时隙是否完毕。\n[0168] 累积单元,用于将非成功计数器增加到未被识别的标签的个数T中。\n[0169] 第五判断单元,用于第四判断单元判断前识别分组的标签选择时隙完毕时,判断每个分组的标签是否识别完毕。\n[0170] 当第四判断单元判断判断当前识别分组的标签选择时隙完毕时,通过累积单元将非成功计数器增加到未被识别的标签的个数T中,再利用第五判断单元判断每个分组的标签是否识别完成,当第五判断单元判断每个分组的标签识别完成时,利用轮询识别单元对标签的进行一轮的识别完成,识别完成只是对每个分组中的标签进行了一次识别,有的识别成功,有的识别失败,识别失败即未被识别的标签需要通过下一轮的识别。当第五判断单元判断每个分组的标签识别没有完成时,再通过轮询识别单元对下一组标签进行识别,直到每个分组的标签识别完成。\n[0171] 当第四判断单元判断当前识别分组的标签选择时隙没有完毕时,则返回利用发送单元执行发送识别请求,分组的标签选择分配的时隙编号所决定的时间内返回应答,直到当前识别分组的标签选择时隙完毕。\n[0172] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
法律信息
- 2017-08-04
- 2015-05-13
实质审查的生效
IPC(主分类): G06K 7/00
专利申请号: 201410830742.7
申请日: 2014.12.26
- 2015-04-15
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-11-27
|
2013-08-01
| | |
2
| |
2014-08-06
|
2014-05-22
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |