專利名稱:識別多個應答器的方法、實現該方法的分析器和應答器的制作方法
技術領域:
本發明涉及一種識別多個應答器的方法,它允許在分析器(analysisapparatus)的作用范圍內同時有多個應答器需要識別,還涉及實現該方法的分析器和一組應答器。
已知有眾多的分析器能夠識別應答器,用于例如控制一棟大樓的出入口。
多數這種分析器都只能同時識別少量幾個應答器,既然可以同時到達該分析器作用范圍內的人數即應答器數不大于大約10,控制這樣一棟大樓的出入口不是一個問題。
舉例來說,可以提及歐洲專利申請EP 0285419,其中介紹了進行n次詢問以確定一個n-比特識別碼的分析裝置。
如果每一個應答器的識別碼都用很多比特如32比特進行編碼,以及在該分析器的作用范圍里同時有許多如50個應答器,那么這樣的分析器就不合適。
不幸的是,當應答器用于容器中物體的遠距離識別和用于提供它們的來源信息時,這樣的情況就會發生。
本發明的一個特別目的是在一段相對短的時間里識別多個應答器,例如能夠確定它們有多少個,而且能夠訪問它們中的每一個以便分別進行詢問。
本發明用一種新方法來實現這一目的,該方法識別分析器作用范圍內的一組應答器,每一個應答器在存儲器里有不同的識別碼,該方法的特征在于包括以下步驟a)使該分析器發射數據用于跟它選擇的一部分識別碼進行比較;
b)使每一個尚未被識別的應答器將收到的數據和分析器選擇的它那一部分識別碼進行比較;c)使每一個尚未被識別出的應答器根據上述比較結果,在從這一組應答器共用的一組時間窗口選擇出來的至少一個時間窗口里發射信號;和d)使該分析器分析這些應答器在所述時間窗口組里發射的數據,當應答器發射的數據不能確定應答器的識別碼,至少部分地不能確定時,就使該儀器修改數據并重新發射,這樣,在有限次重復以后,應答器發射的數據使得至少一個應答器的識別碼得到確定,至少部分地被確定。
在該方法的一個優選實施方案里,每一個應答器都有一個比較寄存器,其中存有用于比較的數據。
該比較寄存器最好構成能夠儲存多個二進制字,而且識別碼同樣由二進制字組成。
在本發明的一個優選實施方案里,該分析器每次都修改比較寄存器里給定位數的一個二進制字,每次修改一個,每一個尚未被識別出的應答器都將最近修改的字跟識別碼里相應位數的二進制字進行比較。
要比較的那部分識別碼,是通過選擇要存儲在比較寄存器里的每一個新的二進制字的位置來選擇的。
本發明的方法最好還包括以下步驟只要前面收到的數據允許,使分析器決定一個或更多應答器的至少部分識別碼,并使分析器發送一條指令,使得所述應答器發射它/它們的識別碼;和分析所收到的識別碼,從而確定是否只發射了一個識別碼或者是否有同時發射的多個不同碼的干涉,如果只收到一個識別碼,就存儲所述的識別碼。
當識別方法包括以下步驟時,關于識別所有應答器所需要的時間,得到了特別滿意的結果,該步驟包括
a)用該分析器發射數據用于跟該分析器選擇的一部分識別碼進行比較;b)在每一個未被識別的應答器里,將收到的數據跟應答器識別碼的相應部分進行比較;c)使每一個未被識別出的應答器,在從這一組應答器共用的一組時間窗口選擇出來的至少一個時間窗口里,發射信號;d)利用分析器分析這些應答器在所述時間窗口組里發射的數據,當應答器發射的數據不允許識別至少一個應答器的至少部分識別碼時,就修改數據并重新開始發射,這樣,在有限次重復以后,應答器發射的數據使得至少一個應答器的至少一部分識別碼得到確定;e)當前面收到的數據允許確定一個或更多應答器的至少一部分識別碼時,使分析器發射一條指令讓每一個這樣的應答器都發射它自己的識別碼;和f)分析識別碼的接收來確定發射的是一個識別碼,還是與同時發射多個不同識別碼有關而產生了干擾,如果只收到一個識別碼,就存儲該碼。
當多個應答器同時發射多個不同的識別碼,并且它們互相干擾時,本發明的方法最好還包括,發射新數據跟所述應答器里新的一部分識別碼而不是跟分析器已經確定了的那一部分進行比較,有選擇性地修改所述新數據,直到所述新的識別碼部分被確定,此后使新的識別碼部分已經被確定的應答器發射它/它們的識別碼,并且在存在干擾的情況下重新開始這一過程,通過比較識別碼的尚未被確定的那一部分,再來確定識別碼,直到從應答器只收到一個識別碼。
在本發明的方法的一個優選實施方案里,每一個被識別了的應答器都進入等待模式,在該模式中它停止發射它自己的識別碼跟分析器發射的數據的比較結果。
最好通過用分析器發射每一個被識別了的應答器的識別碼來讓它進入所述等待模式。通過將所述識別碼裝入比較寄存器,可以更方便地發射該識別碼,當應答器的比較寄存器內容跟它的識別碼一致時,就使它自己轉入等待模式。
本發明還提供一個應答器,它包括儲存在存儲器里象序列號一樣的一個識別碼,和用于跟分析器進行遠距離通信的裝置,該應答器的特征在于包括一個比較寄存器,可以用來保存來自分析器的數據,計算裝置,用于將至少一部分識別碼跟至少一部分比較寄存器內容進行比較,以及在選自一組時間窗口的至少一個時間窗口里發射該比較結果的裝置,該時間窗口的選取取決于比較結果。
本發明還提供用于具有不同識別碼的多個應答器的分析器,該分析器的特征在于包括處理器裝置,用于確定置于該分析器的作用范圍內的多個應答器的識別碼,所述分析器適合于發射跟識別數據有關的一個寫指令,該指令使得所述識別數據被存儲在該分析器選擇的應答器里一個特定的地址里;所述識別數據發射完以后,在一組時間窗口里分析尚未被識別的應答器的響應;發射一個讀指令,讓識別碼已經被部分地確定了的應答器完整地發送它們的識別碼;在這些應答器發射的識別數據之間存在干擾的情況下,發射跟新的識別數據有關的一個新的寫指令,最后使得每次只有一個應答器發送它的識別碼,并存儲所述識別碼;和重復上述步驟,以便依次識別所有的應答器。
本發明還提供分析裝置和一組應答器用于實現上述方法。
利用本發明,可以在一段相對較短的時間里識別很多的應答器,甚至在每一個應答器的識別碼都用很的比特,如32比特來編碼的情況下做到這一點。
通過閱讀下文中本發明實施方案的非限制性說明和分析附圖,可以了解本發明的特征和優點,其中
圖1是同時置于分析器的作用范圍內的一組應答器的略圖;圖2是單獨一個應答器的略圖;圖3是應答器識別方法的第一個實施方案各個步驟的流程圖;圖4說明比較寄存器里存儲的信息是如何用8位字節組成的;圖5是各個時間窗口的時序圖,應答器可以在這些時間窗口里發射它們的比較寄存器跟它們的序列號之間的比較結果;圖6說明實現本發明的第一個實施方案時,有4個應答器的情況下,識別過程是如何進行的;和圖7說明實現本發明的第二個實施方案時,有4個應答器的情況下,識別過程是如何進行的。
圖1表示多個應答器1放置在分析器3的天線2的磁場中,該分析器包括跟天線2和處理器裝置5如微型計算機相連接的收發信機,該微型計算機用于處理收發信機4收到的信息和用于控制發射。
天線2由一個螺線管組成,螺線管中的磁場基本是恒定的。
分析器3用于識別置于天線2中的應答器1,其中的場強將足夠的能量傳遞給應答器使它們能正常工作。
例如,應答器1是一種示蹤的方式,它們都在天線2中一個共同的封閉空間里,這里的封閉空間用虛線表示。
在上述例子里,信息是用125kHz頻率的調幅信號來交換的。
圖2是一個應答器1。
該應答器有一個內部天線6跟一個調諧電容7連接,有一個整流電路8用于對天線6上感應的電流進行整流,有一個電容9用于平滑這樣整流過的電流,還有編好程序用于根據從分析器3收到的指令完成某些功能、特別是使應答器發射數據的電路10,下文中將更詳細介紹上述的各個功能。
電路10跟發射機11相連,調制并通過天線6發射數據給分析器3,還跟接收機12相連,用一種普通方式來解調并接收分析器3發射的數據。
應答器1還有一個電可擦除只讀存儲器(EEPROM)型的存儲器13,跟電路10相連。
序列號S是用一種不可擦除的方式寫到存儲器13里,該序列號用4個字節S3、S2、S1、S0編碼,總共有32位。
電路10里有一個下文中稱作比較寄存器H的緩沖存儲器,如圖4所示它有可存儲的4個相應地址H3、H2、H1和H0。
下文中假定,置于天線2的磁場內的所有應答器都有不同的序列號。
圖3說明本發明的方法的第一個實施方案。
在上述例子中,當天線2建立起磁場時,所有的應答器就開始連續發射預編程的信息。
也就是為什么本方法是從讓所有應答器1靜默的步驟20開始的。為此目的,分析器3發射一個特定的指令給應答器1,使它們全部進入“收聽”模式,在這種模式里它們不發射信號除非得到指令,也就是說它們只根據分析器3發射的特定指令來發射信號。
在隨后的步驟21里,假定所有的應答器都處于收聽模式。
在步驟22里,分析器3發射一個指令將值m寫入地址Hn,這里下標n的值通常處于0~3的范圍內,而在識別過程的開始它等于0。
值m用8比特進行編碼,其取值范圍一般是16進制的00~FF。最初賦給m的值是16進制的80。
在步驟23里,所有的應答器1都在地址Hn里存儲值m,也就是說在識別過程開始時,將值80存儲在地址H0里。
以后在步驟24里,應答器1將地址Hn里的內容跟它們的各自序列號的相應字節Sn進行比較。
在識別過程開始時,n等于0,應答器1因此將它們的比較寄存器8里最低位字節H0跟它們的序列號里最低位字節S0進行比較。
有關的比較過程包括確定存儲在地址Hn里的值m是大于、等于還是小于Sn。
如果不是對最低位字節S0進行比較,那么在這一實施方案里應答器1還檢查每一個較低位地址里的內容與它的序列號的每一個相應地址的內容是否相符。
換句話說,如果對例如序列號的字節S2進行比較,那么應答器1還要分別檢查字節S1和S0跟地址H1和H0里的內容是否相符。
根據比較結果,并如同所說的假定較低位地址的內容跟序列號的相應字節吻合,則在步驟25里,每一個應答器1都做出響應,在一個預定時間窗里發射信號,除非如下文所述分析器已經使該應答器處于等待模式。
本實施方案里應答器1在4個組G3、G2、G1和G0之一中發射信號。這4個組中每一個都有3個時間窗口。每一個組Gn都有一個不同的下標值n。
每一組Gn的三個連續時間窗口都分別下列情況之一對應Sn小于地址Hn的內容,圖5中表示為Sn<Hn;Sn等于地址Hn的內容,表示為Sn=Hn;Sn大于比較寄存器地址Hn里的內容,表示為Sn>Hn。
如圖5所示,第一組時間窗口G3位于時刻t1和t4之間,第二組G2位于時刻t4和t7之間,第三組G1位于時刻t7和t10之間,第四組G0位于時刻t10和t13之間。
所有的時間窗口都有相同持續時間。時刻t1處于分析器發射完數據后的一個預定時間段里。
在步驟26里,分析器3分析應答器1的響應。
對于有三個時間窗口的每一組Gn,會出現8種情況第一種情況對應于分析器收到一個信號111,也就是說在單個Gn組的三個時間窗口里的每一個時間窗口里都收到一個二進制值1,Gn被賦予比較寄存器里地址Hn的內容跟序列號的字節Sn的比較結果;這意味著,至少有一個應答器1它的字節Sn小于地址Hn的內容,至少有一個應答器1它的字節Sn等于地址Hn的內容,至少有一個應答器1它的字節Sn大于地址Hn的內容;第二種情況對應于分析器3收到信號100,也就是說只考慮在Gn組的第一個時間窗口里收到二進制值1;這意味著所有應答器1的字節Sn都小于它們的相應比較寄存器H里地址Hn儲存的值m;第三種情況對應于分析器收到信號110,也就是說在所述組的前兩個時間窗口里都是二進制值1;這意味著每一個應答器1里的字節Sn或者小于或者等于值m,沒有任何應答器1的字節Sn大于比較寄存器里地址Hn的內容;第四種情形對應于收到信號011,也就是說在后兩個時間窗口里都是二進制值1;這意味著每一個應答器1的字節Sn或者等于或者大于比較寄存器H里地址Hn的內容;第五種情形對應于收到信號001,也就是說只在Gn組里最后一個時間窗口里是二進制值1;這意味著所有應答器都有一個字節Sn大于它們的比較寄存器里地址Hn的內容;第六種情況對應于收到信號101,也就是說只有Gn組里第一個和最后一個時間窗口里是二進制值1;這意味著一些應答器的字節Sn小于地址Hn的內容,另一些應答器的字節Sn大于地址Hn的內容;第七種情況對應于收到信號010,也就是說只在Gn組里第二個時間窗口里是二進制值1;這意味著所有應答器的相應Sn字節都等于地址Hn里的內容;最后,
第八種情形也就是最后一種情形對應于收到信號000,即Gn組的三個時間窗口里沒有一個二進制值1;這意味著或者是所有應答器都得到了識別,或者是所考慮的那一組是Gq,這里q=1、2或3,而且任一字節Sw跟Hw都不相等,這里w是0~q-1范圍的一個整數。
在下一步驟27中,如果沒有任何應答器其序列號的字節Sn等于存儲在它的比較寄存器H里地址Hn中的值m,那么就改變m的值,該方法回到步驟22,如箭頭28所示。
為m選擇的特定新值取決于當前的情況如果所有應答器的相應字節Sn大于m值,那么就增大m的值;反過來,如果所有應答器的相應字節Sn都小于m值,那么就反過來減小m的值。
變更m的值而沒有改變n的值,這樣通過將區間減半(intervalhalving),最多只需要8次迭代就能迅速地得到一個值,使得至少一個應答器的字節Sn跟寄存器Hn的內容相等;如果同時存在字節Sn大于m值的應答器1和字節Sn小于m值的應答器1,那么一開始只注意例如那些字節Sn大于m值的那些應答器,隨后再處理其它的應答器。
當分析器3在考慮中的Gn的第二個時間窗口里收到二進制值1時,這意味著至少有一個應答器1的Sn等于m值;在這種情況下,在步驟30中發送一個讀指令來讀取所述應答器的序列號。
規定這一條讀指令的下標值為p,它等于n的當前值。
如果p=0,那么只有比較寄存器H和序列號S中有8位相同的那些應答器應答,也就是說,只有S0和地址H0里的內容相同的那些應答器才應答。
如果p=1,那么只有比較寄存器H和序列號S中有16位相同的那些應答器應答,也就是說,只有S1、S0和地址H1、H0里的內容分別相同的那些應答器才應答。
如果p=2,那么只有比較寄存器H和序列號S中有24位相同的那些應答器應答,也就是說,只有S2、S1和S0跟地址H2、H1和H0里的內容分別相同的那些應答器才應答。
在步驟31中,每一個有關的應答器都同時發射組成它的序列號S的4個字節S3、S2、S1和S0。
如果只有一個應答器1在應答,那么在步驟33里,分析器3就能夠分析并讀出序列號,以便在步驟34里將它存儲起來,然后返回到識別其余應答器的方法。
但如果多個應答器1應答,假定它們的序列號都不相同,那么分析器3就會檢測到互相干擾。
另一個術語是“沖突”,在任何情況下,有必要比較更多的比特位并確定序列號中更高位的至少一個字節的值。
當多個應答器有相同的字節S0時,就確定字節S1的值,需要的時候,即多個應答器的序列號共有16位相同時,就用同樣的方式確定字節S3的值,但這很少見。
為了確定字節Sn+1的值,在給n的值增加1后該方法回到步驟22。
被識別出來的每一個應答器都被置于收聽模式,通過在它的寄存器H中裝入它自己的序列號,停止發射它自己的序列號跟比較寄存器H之間的比較結果。
參考圖6,該圖說明識別序列號分別為12345678、12345680、65432178、55555578的4個應答器的實現方法。
這4個應答器的比較寄存器的初值是00000000,該方法一開始就通過由分析器3發射在地址H0寫入值80的指令,在最低位字節S0里裝入十六進制值80(該比較寄存器的內容在圖6右邊說明)。
響應這一寫指令,分析器在跟字節S0有關的時間窗口的G0組里接收信號110,也就是說4個應答器中至少有一個在從時刻t11到時刻t12之間的時間窗口里發射二進制值1,這意味著至少有一個應答器其序列號的最低位字節S0等于80。
然后分析器3發射一個p=0的讀指令,它使得最低位字節S0等于比較寄存器地址H0內容的這個應答器或每一個應答器讀取它自己的序列號。
既然上述實施例中四個應答器只有一個的序列號以十六進制值80結束,分析器3就能讀出該應答器發射的序列號12345680并將它存儲起來。
隨后,為了讓這一個應答器進入等待模式,分析器3接著發射指令將值56寫入比較寄存器的地址H1,將值34寫入比較寄存器的地址H2,并將值12寫入比較寄存器的最高位字節H3。
一旦該應答器進入等待模式,就還剩3個應答器需要識別,即序列號分別為12345678、65432178和55555578的應答器。
因為在時刻t12和時刻t13之間的時間窗口里收到了二進制值1,所以分析器3知道所有剩下的應答器的字節S0都小于比較寄存器里地址H0裝載的十六進制值80。
因此,它減小地址H0里的值,將40作為新值用于比較,即它取十六進制值80的一半。
分析器3然后發射指令將十六進制值40寫入地址H0,這些應答器對此的響應是在時間窗口組G0里發射信號001,也就是在時刻t12和t13之間的時間窗口里發射二進制值1,因為它們中每一個的字節S0都大于40。
分析器3然后又改變比較寄存器里地址H0的內容,每一次都變到一個數值段的中點,該數值段兩端分別大于和小于需要確定的值。
這樣分析器3接著發送指令將以下十六進制值寫入比較寄存器的地址H0里60,然后是70,最后是78。
分析器3然后在時刻t11到時刻t12之間的時間窗口里從所有三個應答器收到二進制值1。
如同實施例所示,可能出現例外情況,那就是一個應答器的比較寄存器發現在識別應答器的連續迭代過程中,本身偶然裝入了跟自己的序列號完全一樣的值。
在這種情況下,這一個應答器在四個時間窗口組G3、G2、G1和G0里的第二個窗口中都發射二進制值1,以便通知分析器3它的比較寄存器中每一個字節跟它的序列號的每一個字節相同。
于是,這個被識別了的應答器就切換到等待模式,而分析器就能夠存儲在這一例子中的序列號12345678。
分析器3發送一個讀指令,要求那一個或每一個序列號最后字節S0的值是十六進制值78的應答器發射信號。
在上述實施例中,還沒有被識別的兩個應答器都同時應答,既然它們的序列號不同,它們發射的信息之間就存在干擾。
因此分析器3無法讀出序列號,據此它推斷至少有兩個應答器的序列號以十六進制值78結尾。
為了識別這些應答器,有必要比較序列號的次最低字節S1。
分析器3因此開始一個新的識別過程,每一種情況下都修改地址H1里的內容,而維持地址H0的內容不變。
首先將十六進制值80裝入地址H1。
既然剩下的兩個應答器相應的字節S1都小于十六進制值80,這些應答器就在時間窗口組G1和G0里應答,組G1里收到的信號是100。
隨后,分析器3將比較寄存器里地址H1的內容減半,這樣在時刻t7和t8、時刻t9和t10之間的時間窗口里分別發送二進制值1,因為剩下的兩個應答器中,一個的字節S1小于十六進制值40,另一個的字節S1大于十六進制值40。
一開始,分析器3只搜索S1字節大于十六進制值40的應答器,通過將值的范圍連續減半(successive range halving)而改變這一個值,直到變成十六進制值55,從而在時刻t8和t9之間的時間窗口中發射二進制值1。
分析器3然后發送一個p=1的讀指令給該應答器,比較寄存器的內容和它的序列號有16位相同,即該應答器的序列號是55555578。
分析器3接收這一序列號并隨后將十六進制值55裝入比較寄存器的地址H2和H3,以便讓這一應答器進入等待模式。
分析器3儲存,出現了多個應答器的序列號的最低位字節是十六進制值78的事實,以及它已經通過比較下一個較高位字節S1而識別出它們中的一個,所以它發送一個新的讀指令,讓字節S0等于十六進制值78的剩下的應答器發射它或它們的序列號。
在上述實施例中,只有一個剩下的應答器,該應答器的序列號是65432178。
分析器3接著將這一序列號裝入比較寄存器,從而讓該應答器進入等待狀態。
通過閱讀上文,本領域的技術人員應當已經注意到,只進行了相對較少的迭代次數就完成了對每一個應答器的識別,這樣可以迅速地識別大量的應答器,例如識別每一個應答器平均只需要250ms。
在參考圖6說明的實施例中,比較寄存器的內容從未被重新初始化到00000000。
在沒有示出的另一個實施例里,每一個應答器只根據最近裝入比較寄存器的字節的位置序號(significance)n在時間窗口Gn里發射信號,而且每次確定了一個應答器的序列號時比較寄存器都被重新初始化到00000000。
參考圖7,它說明的是本發明的第二個實施方案。
假設將識別碼分別是12345678、12345680、65432178和10345680的四個應答器1a、1b、1c和1d放入分析器3的作用范圍里。
這些應答器1a~1d有一個比較寄存器H跟上述應答器的一樣。
將應答器1a~1d構成為在三個時間窗口之一里發射比較結果,該比較是在最近放入比較寄存器H的二進制字Hn跟序列號S中相應位置序號(weight)的字Sn之間進行的。這三個時間窗口構成一組Gc的三個時間窗口2,分別對應于比較結果小于、等于或大于三種情形。這些時間窗口分別位于時刻t1和時刻t2之間、t2和t3之間以及t3和t4之間。只有在m處于0~n-1范圍的序列號中較低位置序號的所有字節Sm分別等于比較寄存器里相應字節Hm的情況下,每一個應答器1a~1d才發射與它的序列號的一個字節Sn有關的比較結果。
當序列號等于比較寄存器的內容時,還將應答器1a~1d構成為在時刻t4和t5之間的第四個時間窗口Ge里發射信號。在這種相同的情況下,至于識別其余部分的方法,就是使剛剛在這第四個時間窗里發射了信號的應答器本身進入等待模式。
此時,分析器3適合于分析尚未被識別的應答器在上述第四個時間窗口里的響應。也就是該組Gc的三個時間窗口,它們對應于尚未被識別的應答器進行的比較的結果,該比較是在最近存儲在它們的應答器里的識別數據,和利用分析器選擇的地址確定其各自識別碼的相應部分之間進行的;和第四個時間窗口Ge,它相當于一個應答器的識別碼跟所述應答器存儲在所選不同地址里的整個識別碼相同。
在參考圖7介紹的方法里,一般而言a)給每一個尚未被識別的應答器的比較寄存器H里給定位置序號的一個字節Hn裝入m值,這由分析器3發射一個指令將所述m值寫入所述字節Hn來完成;b)在每一個尚未別識別的應答器里,把給定位置序號的所述字節Hn跟它的序列號里相應位置序號的字節Sn進行比較;c)根據比較結果,即大于、等于或小于,每一個尚未被識別的應答器都在上述的第一、第二或第三個時間窗口里分別發射響應信號,只要比實際進行比較的字節的位置序號小的序列號的字節全都等于比較寄存器的相應字節;d)在每一個尚未被識別的應答器里,都將比較寄存器跟序列號相比,如果它們相同,該應答器就在所述第四個時間窗口里進行發射,然后該應答器進入等待模式;e)分析器3分析這些響應;和f)如果一個發射機在所述第四個時間窗口里進行發射,那么它的序列號就根據該應答器的比較寄存器里存儲的數據而確定;g)如果沒有響應信號,相當于裝入比較寄存器里的最近給定位置序號的字節,跟序列號的具有相應位置序號的字節同相,那么在修改了前面裝入比較寄存器的相同地址Hn的值m后,該方法重新從步驟a)開始,以便達到一種狀態,在這種狀態里,分析器3通過范圍減半技術(a range-halvingtechnique)能夠檢測到響應信號,相當于比較寄存器里具有給定位置序號的字節Hn的值跟至少一個應答器的序列號里具有相應位置序號的字節Sn相同;h)如果有一個響應,相當于比較寄存器H里具有給定位置序號的字節Hn跟序列號中具有位置序號的字節Sn相同,那么分析器3就發送一個讀指令,使每一個上述字節相同的應答器發射它的序列號;i)如果由于干擾而無法在步驟h)里讀取由那些應答器發射的序列號,那么就將給定的值m裝入比較寄存器里位置序號更高的相鄰字節Hn+1,如果需要,用一種范圍減半技術修改所述值,以便在分析應答器發送的響應的基礎上,得到一個響應,該響應相當于最近裝入比較寄存器、具有給定位置序號的字節的值,跟至少一個應答器中的序列號的相應部分相同,此時發送一個讀指令,使每一個字節相同的上述應答器發送它的序列號;j)當因為只有一個應答器在做出響應從而能夠讀出一個序列號時,所述序列號就被保存,然后將這一序列號裝入所述應答器的比較寄存器,以便使它進入等待模式;和k)如果因為干擾而無法讀出應答器發送的序列號,該方法就從步驟i)重新開始。
更具體地說,該方法開始于將十六進制值80裝入圖7中所有四個應答器的比較寄存器的字節H0。
相應序列號字節是78的應答器1a和1c,在時刻t1和t2之間的時間窗口里進行發射,向分析器傳達它們的序列號里相應字節S0的值小于80。
應答器1b和1d在時刻t2和t3之間的時間窗口里進行發射,向分析器3傳遞它們的序列號里相應字節的值是80。
隨后分析器要求在第二個時間窗口里應答了的應答器發射它們的序列號。明確地說,應答器1b和1d同時發射,因此發生沖突,分析器3會檢測到這一沖突。
然后分析器3將十六進制值80裝入比較寄存器里相鄰更高位的字節,即字節H1。
接著應答器1b和1d在第一時間窗口進行應答。
隨后分析器3又進行發射,以便將比較寄存器里字節H1的值修改為40。
這一次,應答器1b和1d在第三個時間窗口都進行發射,因為它們的相應序列號中的相應字節S1的值都大于40。
分析器3通過一種范圍減半技術繼續下去,幾次迭代以后將十六進制值56裝入字節H1。
然后應答器1b和1d在第二個時間窗口進行應答。
分析器3又一次要求在第二時間窗口里應答了的所有應答器發射它們的相應序列號。
應答器1b和1d仍然同時應答,因此又產生了沖突,被分析器3檢測到。
接著分析器將十六進制值80裝入比較寄存器的相鄰最高位字節的字節,即H2。
應答器1b和1d在第一時間窗口里進行應答。分析器3然后將字節H2里的值減半,使它變成40。應答器1b和1d又一次在第一時間窗口里應答。
經過沒有畫出來的幾次迭代以后,字節H2的值是十六進制的34,應答器1b和1d在第二時間窗口里應答。
分析器3又一次要求已經在第二時間窗口里做出了響應的應答器發射它們的識別碼。應答器1b和1d同時響應,又一次引起了沖突,被分析器3檢測到。這一分析器然后將值80裝入比較寄存器的字節H3,經過多次迭代以后,如圖7所示,寄存器H3的值變成了10。此時只有應答器1d在第二時間窗口里發射信號,既然它的比較寄存器里的內容此時等于它的序列號,這一應答器1d也在第四時間窗口里發射信號。該分析器檢測到這一發射信號并將比較寄存器的內容保存起來。剛剛在第四時間窗口里發射了信號的應答器1d使自身進入等待模式。
應答器3然后要求在前面響應指令發射了它們的序列號的其它應答器再一次發射信號。這一要求是這樣來進行的,那就是發送一個指令給那些應答器,如果字節H3(即下一個位置序號的字節剛好比剛才被修改的比較寄存器的字節低的那一字節)的值等于它們的序列號的相應字節S2,就要求它們發射它們的序列號。
此時,只有應答器1b發射它的序列號,它的S3字節等于12。
分析器然后將值12裝入比較寄存器的字節H3,使應答器1b進入等待模式。
此后,分析器3繼續該識別方法,利用范圍減半技術,修改比較寄存器中的字節H0的值,使該值以等于78結束。
然后應答器1c在第二和第四時間窗口里應答,接著使自身進入等待模式。
分析器3隨后要求在第二時間窗口里做出了響應的所有其它應答器發射它們的識別號。
只有應答器1c做出響應,從而可以識別它。其后,分析器將該應答器的序列號裝入比較寄存器,使它也進入等待模式。
最后,當分析器試圖繼續本識別方法,并將新值,明確地說是22,裝入字節H0,沒有任何應答器響應時,這說明所有應答器都已經被識別出,并已進入等待模式。
應答器發射數據前后最好都發射同步信號。
在執行識別方法以前,分析器3開始工作時,有可能不是所有的應答器都同時進入天線2的磁場,或者它們的平滑電容并不是都有同樣的充電時間,在這種情況下,它們并不是全部同時開始工作。
這意味著這些應答器不會同步響應,因此這些應答器發射的信號會相互干擾,使得分析器不能讀取它們。
這就是在有干擾的情況下為什么要將分析器的發射中斷一段時間,然后重新進行發射,于是重新發射時所有的應答器都得到了同步。
如果這樣仍然存在干擾,那么就有異常情況出現,分析器3給出一個告警信號。
當然本發明并不局限于上述實施方案。
特別是在上述實施方案中,比較寄存器有4個字節,但在沒有說明的派生方案中,可以有許多或較少的二進制字,它們每一個都可以有許多或較少的比特數。
一旦知道了序列號,也就知道了天線2的磁場中的應答器數,就可以單獨訪問它們中的每一個。
為了單獨訪問一個應答器,完全可以將序列號裝入比較寄存器,然后發送一個特定的指令,使序列號等于該比較寄存器的內容的應答器跟分析器3進行通信,以便讀寫它自身的存儲器13里的信息。本發明是通過一開始就比較序列號的最低位字節S0,需要的話再繼續比較更高位字節S1、S2、S3來說明的。反過來從比較最高位字節S3開始,需要的話再繼續比較較低位字節S2、S1和S0,這樣的方法并沒有超出本發明的范圍。
權利要求
1.一種識別置于分析器作用范圍內的一組應答器的方法,其中每一應答器在存儲器里都有一個不同的識別碼(S),該方法的特征在于包括以下步驟a)使分析器(3)發射數據(Hn,m),用于跟分析器選擇的該識別碼(S)的一部分(Sn)進行比較;b)使每一個尚未被識別的應答器(1∶1a、1b、1c、1d)將收到的數據(Hn、m)跟分析器選擇的它的識別碼(S)的一部分進行比較;c)使每一個尚未被識別的應答器根據所述比較的結果,在從這一組應答器共用的一組時間窗口(G3,G2,G1,G0;Gc,Ge)里選擇的至少一個時間窗口里發射信號;和d)使分析器(3)分析各應答器(1;1a,1b,1c,1d)在所述時間窗口組(G3,G2,G1,G0;Gc,Ge)里發射的數據,如果應答器發射的數據不能用來至少部分地確定應答器的識別碼,就使分析器從已經被修改的數據(Hn,m)重新開始,該數據被這樣修改,使得有限次迭代以后,再使應答器發射數據,就能至少部分地確定至少一個應答器的識別碼。
2.根據權利要求1所述的方法,其特征在于每一個應答器(1;1a,1b,1c,1d)都包括一個比較寄存器(H),用于比較的數據存于其中。
3.根據權利要求2所述的方法,其特征在于所述比較寄存器(H)用于存儲多個二進制值(H3,H2,H1,H0),識別碼由二進制字(S3,S2,S1,S0)組成,以及分析器(3)一個一個地修改該比較寄存器里給定位置序號(n)的二進制字(Hn),而每一個尚未被識別的應答器(1)將被最近修改的二進制字跟它的識別碼里相應位置序號的二進制字進行比較,用作比較的該部分識別碼是通過選擇要存儲在比較寄存器里的每一新的二進制字的位置序號來選擇的。
4.根據權利要求3所述的方法,其特征在于每一個應答器(1a,1b,1c,1d)都在第一組時間窗口(Gc)里發射最近修改的二進制字與分析器所選擇的它的識別碼的該部分的比較結果,只要已經被分析器確定的它的識別碼的字節,分別等于比較寄存器的相應字節,以及在第二組時間窗口(Ge)里發射整個比較寄存器跟整個識別碼的比較結果。
5.根據權利要求4所述的方法,其特征在于所述第二組時間窗口被縮減為一個單獨的時間窗口,當它的比較寄存器里的內容跟它的識別碼相同時,每一應答器都在這一時間窗口里發射信號。
6.根據上述權利要求中任意一項所述的方法,其特征在于它還包括以下步驟只要前面收到的數據允許,就使分析器(3)確定一個或更多應答器識別碼的至少一部分,并發送一條指令使所述應答器發射它/它們的識別碼;和分析收到的所述識別碼以確定是只發射了一個識別碼還是存在與發射了的多個不同識別碼有關的干擾,如果只收到了一個識別碼,就儲存所述的識別碼。
7.根據上述權利要求6所述的方法,其特征在于,當多個應答器同時發射多個不同的識別碼,并且它們互相干擾時,該方法還包括,發送要跟所述應答器中的識別碼的一個新的部分進行比較的新的數據,而不是分析器已經確定了的那部分(S0),有選擇性地修改所述新數據直到所述識別碼新的部分(S1)得到確定,隨后使識別碼新的部分已經被確定的應答器發射它/它們的識別碼,以及存在干擾時通過跟識別碼一個尚未被識別的部分進行比較來重新確定識別碼的過程,直到從這些應答器中只收到一個識別碼。
8.根據上述權利要求中任意一項所述的方法,其特征在于每一個被識別了的應答器都進入等待模式,在這種模式下它停止發射它自己的識別碼(S)跟分析器發射的數據(Hn,m)的比較結果。
9.根據上述權利要求8所述的方法,其特征在于通過用分析器發射應答器的識別碼,使每一個被識別出的應答器進入所述等待模式。
10.根據權利要求2所述的方法,其特征在于每一個比較寄存器的內容等于它的識別碼的應答器都使它自身進入等待模式。
11.一種識別新應答器的方法,用于識別同時置于分析器(3)的作用范圍內所有應答器(1)的序列號,每一個應答器(1)都有一個比較寄存器(H)能夠儲存多個字節,最好是四個字節,本方法包括a)通過使分析器(3)發送將值(m)寫入所述字節(Hn)的一條指令,將一個所述值(m)載入所有尚未被識別的應答器里的比較寄存器(H)給定位置序號的一個字節(Hn);b)在每一個應答器(1)里,將給定位置序號(Hn)的所述字節跟它的序列號(S)中相應位置序號的字節(Sn)進行比較;c)對于該比較寄存器給定位置序號(Hn)的這一字節,依賴于比較結果是大于、等于或小于,每一尚未被識別的應答器都分別在三個時間窗口一組(Gn)里的第一、第二或第三個時間窗口里發射一個響應信號,這三個時間窗口跟已經進行比較的字節的位置序號(n)有關,所述窗口組是從分別跟比較寄存器不同位置序號(n)的字節有關的多個時間窗口組(G3,G2,G1,G0)中選擇出來的,每一尚未被識別的應答器都發射最近載入比較寄存器的給定位置序號(Hn)的字節跟它的序列號的相應字節的比較結果,只要正在比較的給定位置序號的字節不是最低位字節,或不是最高位字節時,比較寄存器的較低位字節,或相應地較高位字節,跟序列號的相應字節一致;d)讓分析器(3)分析這一響應,以及當沒有任何一個響應相當于最近載入比較寄存器里給定位置序號的字節跟序列號里相應位置序號的字節相同時,該方法就利用一種范圍減半技術修改前面載入比較寄存器里同一地址(Hn)的值(n),再開始以上步驟a),以便達到一種狀態,在這種狀態中分析器(3)檢測到響應,對應于比較寄存器里給定位置序號的字節(Hn)的值等于序列號中相應位置序號的字節(Sn);如果一個響應相當于比較寄存器(H)里給定位置序號的字節(Hn)跟序列號里相應位置序號的字節(Sn)相同,那么就使分析器(3)發送一條讀指令,使字節相同的每一個應答器發送它的序列號;如果因為相互干擾而無法讀出那些應答器(1)發射的序列號,那么就將給定值(m)載入比較寄存器下一個最高位,或相應的下一個最低位的字節(Hn+1),而且所述值用一種范圍減半技術進行修改,直到對應答器的相應的分析顯示它跟序列號的相應字節(Sn+1)相同;和因為只有一個應答器在做出響應而能夠讀出一個序列號時,就存儲所述序列號。
12.一種識別多個應答器的方法,用于識別同時置于一個分析器(3)的作用范圍之內的多個應答器(1)里的每一個應答器(1)的序列號,每一個應答器(1)有一個比較寄存器(H)能夠儲存多個字節,最好是四個字節,該方法中a)分析器(3)發射將值(m)寫入所述字節(Hn)的一條指令,給每一個尚未被識別的應答器的比較寄存器(H)里給定位置序號(Hn)的一個字節載入一個值(m);b)在每一個應答器(1)內,將給定位置序號的所述字節(Hn)跟它自身的序列號(S)相應位置序號的字節(Sn)進行比較;c)根據比較結果是大于、等于或小于,每一未被識別的應答器都分別在第一、第二或第三個時間窗口里發射一個響應,只要比實際進行比較的字節較低位,或相應地較高位,的序列號字節,全都等于比較寄存器的相應字節;d)在每一個未被識別的應答器里,將序列號跟比較寄存器的內容進行比較,如果它們相同,應答器就在第四個時間窗口里發射信號,然后該應答器進入等待模式;e)分析器(3)分析那些響應;和f)如果發射機在第四個時間窗口里發射信號,那么就根據存儲在那個應答器比較寄存器里的數據的來確定它的序列號;g)如果沒有響應,相當于最近載入比較寄存器里給定位置序號的字節跟序列號相應位置序號的字節相同,那么該方法在修改了前面載入比較寄存器的同樣地址(Hn)里的值(m)以后從步驟a)重新開始,以便通過一種范圍減半技術達到一種狀態,在這種狀態中,分析器(3)檢測到一個響應,相當于比較寄存器里給定位置序號的字節(Hn)的值跟至少一個應答器的序列號相應位置序號的字節(Sn)相同;h)如果有一個相當于說明比較寄存器(H)里給定位置序號的字節(Hn)跟序列號相應位置序號的字節(Sn)相同,那么分析器(3)就發送一個讀指令使字節相同的每一個應答器發射它的序列號;i)如果因為干擾而無法讀取應答器(1)在步驟h)里發射的序列號,那么就將給定值(m)載入下一個較高,或相應地較低的位置序號的比較寄存器的字節(Hn+1),并且需要時用一種范圍減半技術修改所述值,以便在分析應答器發送的響應的基礎上,得到一個響應,相當于最近裝入比較寄存器的給定位置序號的字節的值跟至少一個應答器里序列號的對應部分相同,在這種情況下,發射讀指令,使每一個有相同值的應答器發射它的序列號;j)因為只有一個應答器在做出響應而能夠讀出一個序列號時,就存儲所述序列號,然后在所有應答器的比較寄存器里都載入該序列號,使做出了響應的應答器進入等待模式;和k)如果因為干擾不能讀出應答器發射的序列號,那么該方法就從步驟i)重新開始。
13.一種應答器,它包括存儲在存儲器(13)里象序列號之類的一個識別碼,和跟分析器(3)進行遠距離通信的裝置,該應答器的特征在于,它包括一個比較寄存器(H),來自分析器(3)的數據可以存儲在其中;一個計算裝置(10),用于將識別碼(5)的至少一部分跟比較寄存器(H)的至少一部分進行比較;以及在選自一組時間窗口中的至少一個時間窗口里發射比較結果的裝置,該特定時間窗口的選擇取決于比較結果。
14.根據權利要求13所述的應答器,其特征在于,該比較寄存器(H)由多個不同位置序號的二進制字(H3、H2、H1、H0)組成,所述計算裝置(10)用于將最近存儲在寄存器里的二進制字(Hn,m)跟識別碼相應位置序號(Sn)的一個二進制字進行比較。
15.根據權利要求14的應答器,其特征在于該應答器用于發射最近存儲在寄存器里的二進制字跟序列號相應位置序號的二進制字的比較結果,除非是對一個字而不是對最低,或相應地最高位二進制字進行比較,而且比最近存儲在寄存器里的字具有較低,或相應地較高位置序號的二進制字,跟識別碼的相應二進制字不同。
16.根據權利要求13~15中任意一項所述的應答器,其特征在于,該比較寄存器有4個字節。
17.根據權利要求13~16中任意一項所述的應答器,其特征在于,當比較寄存器的內容跟識別碼相同時該應答器只發射一次比較結果。
18.根據權利要求14所述的應答器,其特征在于,該應答器在三個時間窗口之一里,發射最近儲存在它的比較寄存器里的二進制字,跟它的序列號里相應位置序號的字的比較結果,這三個時間窗口分別對應于比較結果小于、等于和大于這三種情形。
19.根據權利要求18所述的應答器,其特征在于,當它的序列號跟比較寄存器的內容一致時,該應答器也在第四個時間窗口發射信號。
20.一種分析器,用于具有不同識別碼的多個應答器,其特征在于該分析器包括處理器裝置(5),用于確定置于分析器的作用范圍內多個應答器的識別碼,所述分析器(3)適合于發射跟識別數據有關的一條寫指令,該指令將所述識別數據(m)儲存在該應答器里由該分析器選擇的一個特定地址(Hn)里;在所述識別數據被發射了以后,分析來自尚未被識別的應答器在一組時間窗口(G3、G2、G1、G0)里的響應;發射一條讀指令,使識別碼已被部分地確定了的應答器發送它們的完整識別碼;如果應答器發射的數據間存在干擾時,發射跟新的識別數據(Hn+1,m)有關的一條新的寫指令,以便到最后一次只使一個應答器發送它的識別碼,并存儲所述識別碼;和重復以上步驟以便依次識別所有應答器。
21.根據權利要求20所述的分析器,其特征在于該分析器適合于分析尚未被識別的應答器在四個時間窗里的響應,該時間窗口中的三個對應于尚未被識別的應答器將最近儲存在應答器里的識別數據跟由分析器選擇的地址確定的它們的相應識別碼中一部分進行比較的結果,由一個應答器在第四個時間窗口的發射相當于該應答器的識別碼跟所述應答器儲存在各選定的地址里的整個識別數據一致。
22.根據權利要求20或21所述的分析器,其特征在于它包括由一個螺線管組成的一副天線(2),應答器放置在其中。
23.一種識別多個應答器的方法,用于識別置于分析器的作用范圍里的各個各個應答器,每一個應答器都有一個不同的識別碼(S),該方法的特征在于它包括以下步驟a)用分析器(3)發射數據(Hn,m)用來跟識別碼(S)里由分析器選擇的一部分(Sn)進行比較;b)在每一個未被識別的應答器(1;1a,1b,1c,1d)里將收到的數據(Hn,m)跟應答器的識別碼(H)的相應一部分進行比較;c)使每一個未被識別的應答器,在該組應答器共用的時間窗口組(G3,G2,G1,G0;Gc,Ge)里選定的至少一個時間窗口里發射信號;d)用分析器(3)分析應答器(1;1a,1b,1c,1d)在所述時間窗口組(G3,G2,G1,G0;Gc,Ge)里發射的數據,如果應答器(1)發射的數據不足以用于識別至少一個應答器的至少部分識別碼,就利用修改過的數據(Hn,m)重新開始,這些數據被這樣修改使得有限次迭代以后,這些應答器發射數據,使得至少一個應答器的至少一部分別碼能夠得到確定;e)當前面收到的數據允許確定一個或更多應答器的至少一部分識別碼時,使分析器發射一條指令,使得每一個這樣的應答器發射它自己的識別碼;和f)分析對識別碼(S)的接收情況,以確定是只發射了一個單獨的識別碼還是發生跟同時發射的多個不同識別碼有關的干擾,當只收到一個識別碼時,就儲存所述的識別碼。
24.一種分析器和一組應答器,用于實施上述權利要求所限定的方法。
全文摘要
本發明涉及一種識別多個應答器的方法,該方法用于識別置于分析器的詢問區里的一組應答器,每一個應答器都存儲有不同的識別碼。分析器(3)發射數據。每一尚未被識別的應答器(1)都將該數據跟它自己的識別碼的一部分進行比較。分析器(3)收到應答器(1)發射的數據,當該數據不能用來確定任何識別碼時,它就發射修改了的數據,使得有限次迭代以后,它使每一個應答器都發射能使它的識別碼得到確定的數據。
文檔編號G07CGK1246946SQ98802375
公開日2000年3月8日 申請日期1998年12月10日 優先權日1997年12月10日
發明者費雷德里克·帕尼奧爾, 扎克·德爾塔迪安 申請人:費雷德里克·帕尼奧爾, 扎克·德爾塔迪安