專利名稱:一種電力智能表計(jì)專用超高頻讀寫器防碰撞方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種RFID防碰撞方法,特別是一種電力智能表計(jì)專用超高頻讀寫器防碰撞方法。
背景技術(shù):
現(xiàn)有的防碰撞方法是1)讀寫器發(fā)送klect命令,將所有標(biāo)簽的S節(jié)的盤存標(biāo)志置A。2)讀寫器發(fā)送Query命令,選擇所有S節(jié)盤存標(biāo)志為A的標(biāo)簽進(jìn)行盤存,將收到的標(biāo)簽數(shù)N置0,置循環(huán)次數(shù)A為2,Q值置為Qs。3)讀寫器將碰撞數(shù)C置0,根據(jù)Q值,得到總時(shí)隙數(shù)Sl0t_C0imt (2的Q次方),并將 Slot 置為 Slot_Count。4)讀寫器循環(huán)等待標(biāo)簽響應(yīng)的RN16,若收到標(biāo)簽的響應(yīng)則向標(biāo)簽發(fā)送ACK命令, 然后讀取EPC,否則循環(huán)等待2ms的時(shí)間。5)讀寫器發(fā)送QueryR印命令,Slot減1。6)讀寫器若在第3步中得到了標(biāo)簽的響應(yīng),但是沒有解讀出EPC,則C加1,若解讀出來了則N加1。(被解讀出EPC的標(biāo)簽的盤存標(biāo)志會(huì)變?yōu)锽)7)若Slot不為0,則重新回到第4步。8)若A不為0,則A減1,若C值大于Slot_Count的1/4則Q加1,若小于1/8則 Q減1,讀寫器將會(huì)給所有的標(biāo)簽發(fā)QueryAdjust命令,選擇S節(jié)盤存標(biāo)志為A的標(biāo)簽進(jìn)行盤存,回到第3步。9)將N個(gè)標(biāo)簽的EPC發(fā)給上位機(jī)。上述方法,由于電力智能表計(jì)中含有的大量的金屬,對電子標(biāo)簽的信號(hào)產(chǎn)生很大的干擾,導(dǎo)致反射回讀寫器的信號(hào)復(fù)雜,識(shí)別率低。
發(fā)明內(nèi)容
為解決上述技術(shù)問題,本發(fā)明提供了一種電力智能表計(jì)專用超高頻讀寫器防碰撞方法。解決上述技術(shù)問題的技術(shù)方案是一種電力智能表計(jì)專用超高頻讀寫器防碰撞方法,包括0)讀寫器以跳頻方式進(jìn)行工作的步驟。1)讀寫器發(fā)klect命令,用于將所有標(biāo)簽的S節(jié)的盤存標(biāo)志置A的步驟。2)讀寫器發(fā)送Query命令,用于選擇所有S節(jié)盤存標(biāo)志為A的標(biāo)簽進(jìn)行盤存,將收到的標(biāo)簽數(shù)N置0,置循環(huán)次數(shù)A為2,將Q置為Qs,置選擇標(biāo)簽循環(huán)次數(shù)A_klect為1的步驟。3)用于將碰撞數(shù)C置0,根據(jù)Q值,得到總時(shí)隙數(shù)Slot_Count,并將Slot置為 Slot_Count 的步驟。
4)用于循環(huán)等待標(biāo)簽響應(yīng)的RN16的步驟,若讀寫器收到標(biāo)簽響應(yīng),則讀寫器發(fā) ACK命令到該標(biāo)簽,然后讀寫器讀取EPC,否則讀寫器循環(huán)等待一段。5)讀寫器發(fā)QueryR印命令,用于將Slot減1的步驟。6)若第4步中得到了標(biāo)簽的響應(yīng),但是讀寫器沒有解讀出EPC,則進(jìn)行將C加1的步驟,若讀寫器解讀出來了,則進(jìn)行將N加1的步驟;7)若Slot不為0,則回到第4步。8)若A不為0,則進(jìn)行A減1的步驟,若C值大于Sl0t_C0imt的1/4則進(jìn)行Q加 1的步驟,若C值小于Sl0t_C0imt的1/8,則進(jìn)行Q減1的步驟,讀寫器給所有的標(biāo)簽發(fā) QueryAdjust命令,用于選擇S節(jié)盤存標(biāo)志為A的標(biāo)簽進(jìn)行盤存,回到第3步的步驟;若A_ Select不為0,則進(jìn)行AJielect減1,重新計(jì)算Qs值,修改接收靈敏度的步驟,讀寫器發(fā) Select和Query命令,用于選擇未盤存的標(biāo)簽進(jìn)行盤存,回到第3步的步驟。9)用于將N個(gè)標(biāo)簽的EPC發(fā)給上位機(jī)的步驟。作為改進(jìn),總時(shí)隙數(shù)Slot_Count為2的Q次方。作為改進(jìn),上述步驟4)循環(huán)等待的時(shí)間根據(jù)LF自動(dòng)確定。作為改進(jìn),在每次盤存中,最大循環(huán)讀6輪標(biāo)簽。本發(fā)明的有益效果是采用頻繁的跳頻工作方式,能防止信號(hào)干擾;加入了靈敏度調(diào)節(jié),增加標(biāo)簽被讀到的概率;通過重復(fù)發(fā)送select及query命令,防止標(biāo)簽因未解析出這兩個(gè)命令而漏讀;每次盤存,最大循環(huán)讀6輪標(biāo)簽,而現(xiàn)有的是3輪,從而極大地減小碰撞概率,沒有讀到的標(biāo)簽基本不是因?yàn)榕鲎驳脑?;通過LF自動(dòng)確定等待時(shí)間,其時(shí)間遠(yuǎn)小于ans,提高了讀取的速度;因此,基于上述理由和上述方法,本發(fā)明的電力智能表計(jì)專用超高頻讀寫器防碰撞方法,極大地減小碰撞概率,并提高了讀取速度。
圖1為本發(fā)明電力智能表計(jì)專用超高頻讀寫器防碰撞方法的流程圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。如圖1所示,一種電力智能表計(jì)專用超高頻讀寫器防碰撞方法步驟如下0)讀寫器以跳頻方式進(jìn)行工作的步驟。1)讀寫器發(fā)klect命令,用于將所有標(biāo)簽的S節(jié)的盤存標(biāo)志置A的步驟。2)讀寫器發(fā)送Query命令,用于選擇所有S節(jié)盤存標(biāo)志為A的標(biāo)簽進(jìn)行盤存,將收到的標(biāo)簽數(shù)N置0,置循環(huán)次數(shù)A為2,將Q置為Qs,置選擇標(biāo)簽循環(huán)次數(shù)A_klect為1的步驟。3)用于將碰撞數(shù)C置0,根據(jù)Q值,得到總時(shí)隙數(shù)Sl0t_C0imt,總時(shí)隙數(shù)Slot_ Count為2的Q次方;并將Slot置為Slot_Count的步驟。4)用于循環(huán)等待標(biāo)簽響應(yīng)的RN16的步驟,若讀寫器收到標(biāo)簽響應(yīng),則讀寫器發(fā) ACK命令到該標(biāo)簽,然后讀寫器讀取EPC,否則讀寫器循環(huán)等待一段,循環(huán)等待的時(shí)間根據(jù) LF自動(dòng)確定。5)讀寫器發(fā)QueryR印命令,用于將Slot減1的步驟。
6)若第4步中得到了標(biāo)簽的響應(yīng),但是讀寫器沒有解讀出EPC,則進(jìn)行將C力卩1的步驟,若讀寫器解讀出來了,則進(jìn)行將N加1的步驟;7)若Slot不為0,則回到第4步。8)若A不為0,則進(jìn)行A減1的步驟,若C值大于Sl0t_C0imt的1/4則進(jìn)行Q加 1的步驟,若C值小于Sl0t_C0imt的1/8,則進(jìn)行Q減1的步驟,讀寫器給所有的標(biāo)簽發(fā) QueryAdjust命令,用于選擇S節(jié)盤存標(biāo)志為A的標(biāo)簽進(jìn)行盤存,回到第3步的步驟;若A_ Select不為0,則進(jìn)行AJielect減1,重新計(jì)算Qs值,修改接收靈敏度的步驟,讀寫器發(fā) Select和Query命令,用于選擇未盤存的標(biāo)簽進(jìn)行盤存,回到第3步的步驟。9)用于將N個(gè)標(biāo)簽的EPC發(fā)給上位機(jī)的步驟。在上述步驟中,在每次盤存中,最大循環(huán)讀6輪標(biāo)簽。本發(fā)明采用頻繁的跳頻工作方式,能防止信號(hào)干擾;加入了靈敏度調(diào)節(jié),增加標(biāo)簽被讀到的概率;通過重復(fù)發(fā)送select及query命令,防止標(biāo)簽因未解析出這兩個(gè)命令而漏讀;每次盤存,最大循環(huán)讀6輪標(biāo)簽,而現(xiàn)有的是3輪,從而極大地減小碰撞概率,沒有讀到的標(biāo)簽基本不是因?yàn)榕鲎驳脑?;通過LF自動(dòng)確定等待時(shí)間,其時(shí)間遠(yuǎn)小于ans,提高了讀取的速度;因此,基于上述理由和上述方法,本發(fā)明的電力智能表計(jì)專用超高頻讀寫器防碰撞方法,極大地減小碰撞概率,并提高了讀取速度。在本發(fā)明中,klect 選擇標(biāo)簽命令;Slot 時(shí)隙;Slot_Count 時(shí)隙數(shù); QueryRep 重復(fù)查詢;QueryAdjust 查詢調(diào)整;RN16 16位隨即數(shù);ACK 確認(rèn)命令;Q 盤存周期的時(shí)隙數(shù)目;A 循環(huán)次數(shù);Ajelect 選擇標(biāo)簽循環(huán)次數(shù);N 標(biāo)簽數(shù);C 碰撞數(shù);EPC 產(chǎn)品代碼。
權(quán)利要求
1.一種電力智能表計(jì)專用超高頻讀寫器防碰撞方法,其特征在于包括0)讀寫器以跳頻方式進(jìn)行工作的步驟;1)讀寫器發(fā)klect命令,用于將所有標(biāo)簽的S節(jié)的盤存標(biāo)志置A的步驟;2)讀寫器發(fā)送Query命令,用于選擇所有S節(jié)盤存標(biāo)志為A的標(biāo)簽進(jìn)行盤存,將收到的標(biāo)簽數(shù)N置0,置循環(huán)次數(shù)A為2,將Q置為Qs,置選擇標(biāo)簽循環(huán)次數(shù)A_klect為1的步驟;3)用于將碰撞數(shù)C置0,根據(jù)Q值,得到總時(shí)隙數(shù)Sl0t_C0imt,并將Slot置為Slot_ Count的步驟;4)用于循環(huán)等待標(biāo)簽響應(yīng)的RN16的步驟,若讀寫器收到標(biāo)簽響應(yīng),則讀寫器發(fā)ACK命令到該標(biāo)簽,然后讀寫器讀取EPC,否則讀寫器循環(huán)等待一段;5)讀寫器發(fā)QueryR印命令,用于將Slot減1的步驟;6)若第4步中得到了標(biāo)簽的響應(yīng),但是讀寫器沒有解讀出EPC,則進(jìn)行將C加1的步驟, 若讀寫器解讀出來了,則進(jìn)行將N加1的步驟;7)若Slot不為0,則回到第4步;8)若A不為0,則進(jìn)行A減1的步驟,若C值大于Sl0t_C0imt的1/4則進(jìn)行Q加1 的步驟,若C值小于Sl0t_C0imt的1/8,則進(jìn)行Q減1的步驟,讀寫器給所有的標(biāo)簽發(fā) QueryAdjust命令,用于選擇S節(jié)盤存標(biāo)志為A的標(biāo)簽進(jìn)行盤存,回到第3步的步驟;若A_ Select不為0,則進(jìn)行AJielect減1,重新計(jì)算Qs值,修改接收靈敏度的步驟,讀寫器發(fā) Select和Query命令,用于選擇未盤存的標(biāo)簽進(jìn)行盤存,回到第3步的步驟;9)用于將N個(gè)標(biāo)簽的EPC發(fā)給上位機(jī)的步驟。
2.根據(jù)權(quán)利要求1所述的電力智能表計(jì)專用超高頻讀寫器防碰撞方法,其特征在于 總時(shí)隙數(shù)Slot_Count為2的Q次方。
3.根據(jù)權(quán)利要求1所述的電力智能表計(jì)專用超高頻讀寫器防碰撞方法,其特征在于 上述步驟4)循環(huán)等待的時(shí)間根據(jù)LF自動(dòng)確定。
4.根據(jù)權(quán)利要求1所述的電力智能表計(jì)專用超高頻讀寫器防碰撞方法,其特征在于 在每次盤存中,最大循環(huán)讀6輪標(biāo)簽。
全文摘要
一種電力智能表計(jì)專用超高頻讀寫器防碰撞算法,其包括以下步驟0)跳頻;1)發(fā)Select命令;2)發(fā)送Query命令;3)將碰撞數(shù)C置0,得到總時(shí)隙數(shù)Slot_Count;4)循環(huán)等待標(biāo)簽響應(yīng)的RN16;5)發(fā)QueryRep命令;6)若第4步中得到了標(biāo)簽的響應(yīng),但是沒有解讀出EPC,則C加1,若解讀出來了則N加1;7)若Slot不為0,則回到第4步;8)若A不為0,回到第3步;若A_Select不為0,回到第3步;9)將N個(gè)標(biāo)簽的EPC發(fā)給上位機(jī)。本發(fā)明極大地減小碰撞概率,并提高了讀取速度。
文檔編號(hào)G06K7/00GK102542231SQ201210017849
公開日2012年7月4日 申請日期2012年1月19日 優(yōu)先權(quán)日2012年1月19日
發(fā)明者袁鋒超 申請人:深圳市科陸電子科技股份有限公司