发明名称 适用于动态环境的时隙ALOHA防碰撞算法
摘要 本发明属于射频识别技术领域,具体为一种适用于动态环境的时隙ALOHA防碰撞算法。该算法包括,首先进行初始化,并检测是否收到上位机发出的中止指令;如果收到终止指令,算法结束;否则开始接收数据,并分别统计空时隙,碰撞时隙和成功时隙的数量;再判断时隙计数器counter与2q取模是否等于0,如果等于0,则估算标签数量n,计算Q′,判断Q′是否等于Q,如果等于则开启新的一帧;如果不等于,则计算新的Q值,返回进行下一轮识别过程。本发明考虑了动态环境下标签个数变化的因素,通过在当前帧的识别过程中计算场区内标签的个数并判别当前帧长是否合适,使得读写器可以尽早中止不合适的帧,并为下一帧选择更加合理的帧长,减少标签碰撞发生的几率,提高读写器在动态环境下的识别速度。
申请公布号 CN101286192B 申请公布日期 2011.05.04
申请号 CN200810038571.9 申请日期 2008.06.05
申请人 复旦大学 发明人 王俊宇;王中祥;谭杰;刘丹;魏鹏;闵昊
分类号 G06K7/00(2006.01)I 主分类号 G06K7/00(2006.01)I
代理机构 上海正旦专利代理有限公司 31200 代理人 陆飞;盛志范
主权项 1.一种适用于动态环境的时隙ALOHA防碰撞算法,其特征在于,包括:步骤一,初始化,设置帧长因子Q的初始值;步骤二,判断是否收到结束指令,如果收到结束指令,程序结束;如果未收到结束指令,则读写器发送Query指令,初始空时隙数量c<sub>0</sub>、成功时隙数量c<sub>1</sub>和碰撞时隙数量c<sub>k</sub>为0,时隙计数器counter=1,子帧长计数器k=0;步骤三,然后等待T1时间,看是否收到16位随机数RN16,如果没有收到RN16,进入空流程,将空时隙数量c<sub>0</sub>加1;如果收到RN16,再判断是否发生碰撞,发生碰撞,则进入碰撞流程,并将碰撞时隙数量c<sub>k</sub>加1;没有碰撞,则进入成功识别流程,并将成功时隙数量c<sub>1</sub>加1;步骤四,再判断时隙计数器counter与子帧长m取模是否等于0,如果不等于0,则发送QueryRep,开启新的一帧,时隙计数器counter加1;如果等于0,再判断碰撞时隙数量c<sub>k</sub>是否等于0,如果c<sub>k</sub>不等于零,则先根据Q、c<sub>0</sub>、c<sub>1</sub>、c<sub>k</sub>的值估算k×m个时隙中的反馈信息的标签数量n<sub>km</sub>,再根据下式估算整个帧长内的标签数量n,<img file="FSB00000255398700011.GIF" wi="245" he="116" />其中,n<sub>km</sub>=c<sub>1</sub>+n′<sub>km</sub>,c<sub>1</sub>是k×m个时隙中成功识别标签的个数,n′<sub>km</sub>是k×m个时隙后估算的剩余标签个数;子帧长m=2<sup>q</sup>,q为大于等于0小于Q的整数;子帧长计数器k加1;如果c<sub>k</sub>等于零,则设Q=3,返回步骤二进行下一轮识别;步骤五,按Q′=四舍五入(log<sub>2</sub> n)计算参考帧长因子Q′,判断Q′是否等于Q,如果等于Q则发送QueryRep,时隙计数器counter加1;如果Q′不等于Q,则n=n-c<sub>1</sub>,计算新的Q值:Q=四舍五入(log<sub>2</sub>(n-c<sub>1</sub>),返回步骤二进行下一轮识别过程。
地址 200433 上海市邯郸路220号