(57)【特許請求の範囲】
【請求項１】
ポーリング装置の電磁場内に位置する一組のタグの各々を識別するためのバイナリＩＤコードを読み取る方法であって、
前記一組のタグの各々が前記ポーリング装置に前記バイナリＩＤコードの各ビットの値を表す情報を送信するサイクル（Ｔ１，Ｔ２）と、前記ポーリング装置が前記一組のタグの全てに前記一組のタグの各々から受信した情報を送信するサイクル（Ｔ３，Ｔ４）とを交互に繰り返す段階を含み、
前記一組のタグの各々は、前記ポーリング装置から前記サイクル（Ｔ３，Ｔ４）内に受信した情報のうち、「０」および「１」の両方の値を表す情報（Ｃ１１）の受信回数を、前記サイクル（Ｔ１，Ｔ２）内における前記ポーリング装置に対する送信の有無または送信内容に応じてカウントし、前記ポーリング装置に送信した情報に対応するビットの次のビットの読み取りの際に、前記カウントにより得られたカウント値をデクリメントすることにより、前記次のビットの値を前記ポーリング装置に送信すべき順番を認識し、
前記ポーリング装置は、前記一組のタグの各々から受信された情報により特定される前記バイナリＩＤコードの各ビットの値を表すツリーに従って、前記一組のタグの個々のバイナリＩＤコードを決定する、方法。
【請求項２】
ポーリング装置の電磁場内に位置する一組のタグの各々を識別するためのバイナリＩＤコードを読み取る方法であって、
前記一組のタグの各々が前記ポーリング装置に前記バイナリＩＤコードの各ビットの値を表す情報を送信するサイクル（Ｔ１，Ｔ２）と、前記ポーリング装置が前記一組のタグの全てに前記一組のタグの各々から受信した情報を送信するサイクル（Ｔ３，Ｔ４）とを交互に繰り返す段階を含み、
前記一組のタグの各々は、前記ポーリング装置から前記サイクル（Ｔ３，Ｔ４）内に受信した情報のうち、「０」および「１」の両方の値を表す情報（Ｃ１１）の受信回数を、前記サイクル（Ｔ１，Ｔ２）内における前記ポーリング装置に対する送信の有無または送信内容に応じてカウントし、何れかのタグのバイナリＩＤコードの読み取りが終了したことを表す情報（ＯＫ）を前記ポーリング装置から受信する都度、前記カウントにより得られたカウント値をデクリメントすることにより、前記バイナリＩＤコードの各ビットの値を前記ポーリング装置に送信すべき順番を認識し、
前記ポーリング装置は、前記一組のタグの各々から受信された情報により特定される前記バイナリＩＤコードの各ビットの値を表すツリーに従って、前記一組のタグの個々のバイナリＩＤコードを決定する、方法。
【請求項３】
ポーリング装置によって一組の動的なタグを読み取るためのシステムであって、
前記タグおよび前記ポーリング装置が、それぞれ、信号送信／受信手段（１，２，１４，１５，１６，１７）、並びに、電子式順序制御手段（５，１８）および記憶手段（１３，２２）を具備し、
前記ポーリング装置が、
−  ポーリング装置の電磁場内に存在するタグの数を計数するためのタグカウンタ（１９）と、
−  前記タグに関して現在読み取られているビットの重みを前記タグ上に示すと共に、ビット位置の読取りサイクルの各開始部分でインクリメントするビット位置カウンタ（２１）と、
−  読み取られまたは現在読み取っているコードのリストのための記憶レジスタ（２２）と、
−  このコードのリストをポインティングするためのポインタ（２３）とを具備し、
前記各タグが、
−  シーケンサ（５）に接続され、少なくとも一つのタグの応答がバイナリーツリーノードの二つの接続枝の各々での存在を示すたびにインクリメントするように構成されたシーケンス番号カウンタ（１０）と、
−  前記シーケンサ（５）に接続され、識別されているタグが存在すれば、前記ビット位置のシーケンスの検索中にデクリメントするように構成され、その値は、新たなビット位置の走査サイクル（または読取りサイクル）の各開始部分で、前記シーケンス番号カウンタの値に設定されるシーケンス番号デカウンタ（１２）と、
−  前記シーケンサ（５）に接続され、前記読取りシーケンス中に計算されるように前記タグのシーケンス番号をメモリに保存するように構成され、前記シーケンス番号は、前記タグと前記ポーリング装置との間のトランザクションを速めるものであるシーケンス番号レジスタ（１１）と、
−  前記ポーリング装置の前記電磁場内に存在するタグの数を計数するためのタグカウンタ（６）と、
−  前記タグに関して現在読み取られているビットの位置または重みを前記タグ上で示すように構成され、ビット位置読取りサイクルの各開始部分でインクリメントするビット位置カウンタ（８）と、
−  前記タグのバイナリＩＤコードが完全に決定された場合に前記タグをロックするように構成された第１の読取りラッチ（９）であって、当該第１の読取りラッチ（９）が０に初期化され、そして、当該第１の読取りラッチ（９）が属するタグの第１の正しいＩＤコードの読取りの最後で１に設定される第１の読取りラッチ（９）とを具備することを特徴とするシステム。
【請求項４】
前記ポーリング装置および前記タグが、現在読み取られているコードを決定するためにタグデカウンタ（７，２０）をそれぞれ具備し、前記タグデカウンタ（７，２０）は、ビット位置に関するシーケンスの開始部分でタグカウンタ（６）の値に初期化され、前記タグデカウンタ（７，２０）は、デクリメントする場合に、どのコードをシーケンスが読み取っているかを見つけることを可能とし、そして、前記タグデカウンタ（７，２０）は、値０に到達した場合に、ビット位置が完全に走査されたことを示すことを特徴とする請求項３記載のシステム。
【請求項５】
前記各タグカウンタ（１９）が、前記ポーリング装置の電磁場内に存在する全てのタグを計数するように構成されたことを特徴とする請求項３記載のシステム。
【請求項６】
少なくとも１つのタグが、
ポーリング装置の送信を通して他のタグのバイナリＩＤコードを、このタグが識別することを可能とするために、
−  前記タグに関して現在読み取られているビットの位置または重みを前記タグ上に示すと共に、ビット位置読取りサイクルの各開始部分でインクリメントするビット位置カウンタと、
−  読み取られまたは現在読み取っているコードのリストを格納するための記憶レジスタと、
−  このコードリストをポインティングするためのポインタとをさらに具備することを特徴とする請求項３記載のシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、各々がＩＤコードを有しかつポーリング装置によって送信された電磁場に配置された一組の静的または動的なタグに対する多重リード（読取り）方法に関する。
一般に、この発明は、その数が予め知られていないポーリングシステムと応答システム（タグ）との間の全ての処理に適用する。特に、この発明は、バッジを付けた人を認識する分野またはタグを付けた物体、例えば、空港における手荷物、店舗における商品または生産ラインにおける他の生産物の計数および制御の分野に適用される。
【０００２】
【従来の技術】
現在、専門家であれば、タグを付した物体のための数多くのシステムおよび方法を知っている。それらの多くは、多数のタグを読むこと、いわゆる「多重リード」に適用する。
【０００３】
現在知られている多重タグリード方法は、３つの主な分類カテゴリー、すなわち、空間関連分類、周波数依存分類および時間依存分類に従ってグループ化され得る。
【０００４】
空間関連分類に基づく方法は、ポーリング装置によって処理された容積を変更することによりタグを分離するためのものである。これは、ポーリング装置によって発せられた電磁場を、異なる送信パワーレベルおよび／または複数の送信器を用いて変更することにより行われる。
【０００５】
第２の分類カテゴリーは、周波数に依存してタグを分類するものである。この場合において、各タグは、そのコードまたは他によって占有されないその帯域のいずれかに依存した、または、任意の予め定められた基準に依存した所定の周波数で送信する。
【０００６】
第３の分類カテゴリー、すなわち、時間依存分類は、公知の方法において最も頻繁に使用されるものである。それは、ポーリング装置とタグとの間の交換を時間的に分散させることにあり、したがって、特定のプロトコルを必要とする。これは、装備されるべきハードウェア手段が最も少なくて済む形式の方法である。この形式のリード方法のために、２つの主なアプローチが識別され得る：
−  質問機がマスタである「同期式」と呼ばれる方法、および
−  タグがポーリング装置の電磁場内に入るとすぐに送信を開始する非同期式の方法である。
【０００７】
公知の方法のいくつかは、タグによって同時に送信されたメッセージの衝突が検出されたときに、各タグに固有の無作為の遅れの後に、タグコードの再送信を提供する。
【０００８】
また、タグの応答のための特定のタイムスライスを残すことからなる方法もある。各タイムスライスは、各タグのＩＤコードによって、ただ一つに決定される。しかしながら、これらの方法は、ポーリング装置と一組のタグとの間の処理時間を最適化するものではない。さらに、全てのタグを読みとるための方法により必要とされる時間は、存在するタグの数が偶然であることに加えて、無作為な数の振り出しに基づいており、決定論的ではないことを意味している。
【０００９】
時間依存分類の方法の中には、仏国特許出願公開第２６７７１３５号公報に開示された方法がある。この特許出願は、同期式のバイナリツリー時間アプローチを開示している。
【００１０】
さらに詳細には、この特許出願は、ポーリング装置のポーリング場の中に存在するタグに、いかにして連続的にそれらのＩＤコードの各ビットを、このコードが完全に識別されるまで供給させるかについて開示している。この目的のために、タグは、ポーリング装置からの制御信号に応答する。現在識別されているコードがそれ自身のものと異なることをタグが検出するときには、タグは一時的に固定、すなわち、サイレントにされ、それによって、ただ１つの固定されていないタグのみが残されるまで他のタグに対して識別サイクルが続けられる。このタグのコードは、その後、識別される。識別サイクルの終了時に、質問機からの単一の指令の際に、識別されたタグが永久的に固定されかつ他のタグが一時的な固定状態を終了される。したがって、識別方法は、他のタグを識別するために再初期化される。これらの動作は、必要により、全てのタグが逐一識別されるまで、複数回繰り返される。
【００１１】
各コードを連続して識別するこの方法は、その各枝がＩＤコードビットの２つの採り得る値の１つを表しているバイナリ検索ツリーを用いた走査と同様である。
【００１２】
【発明が解決しようとする課題】
この方法によれば、検索ツリーは、各コードを識別するために、ルートから完全に走査される。したがって、バイナリ検索ツリーの同じ枝が複数回走査されることがある。この方法によれば、タグのポーリング時間は、結果的に、タグの各々についてツリーのルートからバイナリツリーの検索が行われた場合よりもむしろ長い。このことはＮ×ｎの読取時間を与える。ここで、Ｎは、ＩＤコード長、ｎは存在するタグの数である。したがって、この方法は、タグの数が多ければ多いほどより長くなるものである。
【００１３】
さらに、この特許出願に開示されている方法は、一度だけ読み取られ得る一組の静的なタグに適用されるのみである。
【００１４】
【課題を解決するための手段】
この発明の目的は、上述した方法の欠点を改善することにある。
この目的のために、この発明は、一組の静的または動的なタグのための多重リード方法であって、ポーリング手続中に、各ＩＤコードのためのバイナリ検索ツリーのルートまで戻ることを必要とせず、これらのタグを識別するために必要な時間をかなり削減することができる方法を提供している。また、この発明は、この方法を実行するためのシステムをも提供している。
【００１５】
さらに詳細には、この発明は、各々が別々のバイナリＩＤコードを有しかつポーリング装置の電磁場内に配置される一組のタグを読み取るための方法に関し、ポーリング装置とタグとの間で信号を送受信することによってバイナリタグコードを識別することからなっている。この方法は、全てが同じサイズＮを有するコードによって特徴づけられ、これらのコードの識別が、
【数２】
0004754666.tif 000002
個の、各々がＮビットの０または１の値を表しかつノードを介して相補的な値１または０の枝に接続された枝を有するバイナリ検索ツリーを走査することにより、連続的にビットごとに行われる。検索ツリーの各枝は、タグセット読取りシーケンス中において一回だけ読み取られる。
【００１６】
したがって、この発明による方法は、時間Ｔ（Ｎ，ｎ）＜Ｎ×ｎ（ｎは２Nより大きいがｎは小さい。）の期間内に行われ得るという利点を有している。とり得る全てのタグが存在する場合には、２N−１個の異なる最大数のコード、したがって、最初の要求に対してα×２（２N−１）回の基本的な処理が存在する。ここで、αは基本処理時間の比率を表す定数であり、この発明によれば（かつ仏国特許出願公開第２６７２１３５号公報によれば）２より小さい。
【００１７】
ポーリング装置は、検索ツリーの各ノードを記憶し、各タグは、そのコード識別シーケンス中に走査された最新のノードを記憶する。
【００１８】
この発明の一態様によれば、この方法は、バイナリ検索ツリーを、最初に横方向(widthwise)に走査することにある。
この発明の他の態様によれば、この方法は、バイナリ検索ツリーを、最初に縦方向(depthwise)に走査することにある。
【００１９】
また、この発明は、ポーリング装置を用いて、一組の動的なタグを読み取るためのシステムにも関連しており、タグおよびポーリング装置は、それぞれ、信号送信／受信手段のみならず、記憶手段を具備し、前記ポーリング装置が、
−  該ポーリング装置の電磁場内に存在するタグの数を計数するタグカウンタと、
−  ビット位置カウンタと、
−  読み取られまたは現在読み取られているコードのリストのための記憶レジスタと、
−  このコードリストをポインティング(pointing)するためのポインタとを具備し、
かつ、各タグが、
−  シーケンス番号カウンタと、
−  シーケンス番号デカウンタと、
−  タグカウンタと、
−  ビット位置カウンタと、
−  第１の読取ラッチとを具備することを特徴としている。
より有利には、このポーリング装置およびタグは、各々、タグデカウンタを具備している。
【００２０】
【発明の実施の形態】
図１は、４つのタグＥ１，Ｅ２，Ｅ３，Ｅ４に対するバイナリ検索ツリーの一例を表している。
図２は、タグの構造を概略的に表している。
図３は、ポーリング装置の構造を概略的に表している。
図４は、タグポーリングの一般的なブロック図を表している。
図５は、識別セグメントから抽出されたノードを読み取るための基本的なタイムチャートを表している。
図６および図７は、この発明の第１の実施形態において、タグに対するコード読取り段階およびコード認証段階の各ブロック図を表している。
図８および図９は、この発明の第１の実施形態において、ポーリング装置のためのコード読取り段階およびコード認証段階の各ブロック図を表している。
図１０は、この発明の第１の実施形態において、４つのタグのコードを読み取るためのタイムチャートの一例を表している。
図１１は、この発明の第２の実施形態において、タグのためのコード読取り段階のブロック図を表している。
図１２は、この発明の第２の実施形態において、４つのタグのコードを読み取るためのタイムチャートの一例を表している。
図１３は、第２の実施形態において、ポーリング装置のためのコード読取りおよび認証を含むブロック図の一例を表している。
【００２１】
この発明は、ポーリング装置の電磁場内に存在する全てのタグのコードを、全てのコードに対する読取り時間を最小化することにより識別するための方法に関する。
【００２２】
この方法は、バイナリ検索ツリーを、各々がＩＤコードビットのとり得る値（０または１）を表す枝ごとに走査することにある。言い換えれば、バイナリ検索ツリーは、コードを構成するＮ個のビットに対する全てのとり得るコードの包括的な記述から構築されている。
【００２３】
ツリーの走査は、該ツリーの各枝がただ１回だけ走査され、かつ、新たなコードが発見された最後のノードから始まるツリーを走査することにより読み取られるように行われる。したがって、ポーリング装置は、既に識別された枝を再走査しない。
【００２４】
この発明の方法は、全て同じサイズ、すなわち、同じ数のビットを含むＩＤコードを有する一組のタグに適用される。
この方法によれば、ＩＤコードは、バイナリツリーの枝が走査されるときに、ビットごとに連続して読み取られる。
【００２５】
この方法は、コードが決定されたときに、他のコードの決定のための走査は、２つの枝が走査されなければならず、かつ、タグおよびポーリング装置内に記憶された第２のノードから再開されること、すなわち、従来技術における場合にそうであったようにルートからではなく、枝のノードから始まることに基づいている。
【００２６】
この目的のために、この発明の方法は、主として、既に走査された全てのノードの記憶であって、そのために、現在の読取りシーケンス中に両方の枝が走査されなければならないことをタグの応答が示したノードの記憶を含んでいる。この記憶は、ツリーノードに対してポーリング装置及び関連するノード、すなわち、そのコード読取りシーケンス中に走査された最後のノードに対してタグによって同時に行われる。
【００２７】
さらに、この発明によれば、ポーリング装置は、各識別ステップにおいてタグにより送信された情報であって、一方では、タグがそれらの送信に同期することを可能にし、他方ではバイナリツリー走査並びにそれらのコードに応じたそれらの送信を管理することを可能にする情報を再送信する。有利なことに、このことは、電磁場内に存在する他のタグのコードについて発見することをも許容し、この電磁場内に存在するタグの数について発見することをも許容する。
【００２８】
したがって、この発明の方法は、一組の静的なタグに対して電磁場内に存在する一組のタグを読み取ることを許容するのみならず、一組の動的なタグの場合に、入退場する全てのタグを識別することをも許容する。言い換えると、この方法は、識別シーケンスが開始されたときに、電磁場内に入場するタグを検出しかつ識別することを許容する。この目的のために、多重読取りサイクル中にポーリング装置の電磁場内に入場するタグは、次のサイクルまでサイレントに維持される。同時に、この方法は、多重読取りサイクル中にポーリング装置の電磁場から退場するタグが計数されないようにすることを許容する。この場合に、ポーリング装置は「エラー」を検出する。
【００２９】
図１は、４つのタグのＩＤコードを決定することが試みられる例としてのバイナリー検索ツリーを示している。この例に対して、タグコードはそれぞれ４ビット（Ｎ＝４）を有しかつ以下の通りである。
−  タグ１（Ｅ１）はコード００１０を有する。
−  タグ２（Ｅ２）はコード０１１０を有する。
−  タグ３（Ｅ３）はコード１０１０を有する。
−  タグ４（Ｅ４）はコード０１０１を有する。
【００３０】
この図１において、最上位ビットはＢ３と呼ばれ、それに続くビットはＢ２，Ｂ１であり、最下位ビットはＢ０と呼ばれる。
この図１において明らかなように、検索ツリーは最上位ビット、すなわち、Ｂ３から始まって、その後、最下位ビット、すなわち、Ｂ０までコードを分解することにより構築される。
【００３１】
この図１において、検索ツリーの全てのとり得る枝は、破線で表され、ＩＤコード検索中に現実に走査された枝は実線で表されている。各枝に割り当てられた値０，１は、該枝により表されるビットの値を示している。
【００３２】
したがって、図において最も左に位置する実線における走査は、タグＥ１のコードを回収することを許容し、すぐ右に位置するものは、タグＥ４のコード、次はタグＥ２のコード、最後はタグＥ３のコードを回収することを許容している。
【００３３】
簡単にいえば、これらの４つのタグのコードを決定するために行われる走査は、以下の通りである。まず第１に、タグの内の少なくとも１つが値０に設定された最上位ビットＢ３を有するかどうかがチェックされ、３つのタグ（タグＥ１，Ｅ４，Ｅ２）がそれらのビットＢ３が０であるということを応答する。したがって、これら３つのタグのコードは０から始まる。
【００３４】
したがって、この方法は、枝から枝に続き、かつ他のコードの読取りシーケンスが行われるごとに最後の枝のノードに戻る。
上述したこの発明の方法は、タグ／リーダ（またはポーリング装置）システムによって実行される。
【００３５】
図２には、タグの構造が概略的に表されている。各タグは、電子式送信手段（１４）並びに、バイナリ情報をポーリング手段に通信すること、または、このポーリング手段からバイナリ情報を受信することを可能にする電子式変調手段（１）および復調手段（２）を有している。さらに、各タグは、電子式省力手段（４）並びに電子式クロック抽出手段（３）を具備していてもよい。
【００３６】
これらの手段１，２，３，４，１４は既知であって、仏国特許出願公開第２６７７１３５号公報に開示されており、この出願においてこれ以上詳細に説明するまでもないことである。
【００３７】
さらに、各タグは、ポーリング装置から受信されたメッセージに依存してとられるべき一連の動作を順番に並べることを可能にする電子手段（５）並びに一時的または永久的な情報の記憶手段を具備している。この情報記憶手段（１３）は、２つの領域、すなわち、ＩＤコードを記憶するためにホワイトプロテクトされかつ反転された一記憶領域（１３ａ）と可変情報のための一バックアップ領域（１３ｂ）とに配列されている。
【００３８】
種々のモジュールが、「シーケンサ」と呼ばれる順序制御手段に接続されている。これらのモジュールの内の１つは、符号６により示され、読取りシーケンス中に存在するタグの総数を計数することを許容する機能を有するタグカウンタＣＥである。現在の検索シーケンス（または識別シーケンス）中に、それは、存在するタグと同じ回数だけビット位置に滞在することが許容される。その値は、各タグのみならずポーリング装置に対しても同じように変化する。
【００３９】
シーケンサ５に接続された他のモジュールは、符号８で示されるビット位置カウンタＣＲＢである。このカウンタは、そのタグについて現在読み取られているビットの重みまたは位置がどれであるかを、タグに対して示す。このカウンタは、ビット位置読取りサイクルの始まりごとにインクリメントする。
【００４０】
また、このシーケンサには、タグのコードが完全に決定されたときに該タグをロックするための、符号９で示される第１の読取りラッチＢＰＬが接続されている。このラッチＢＰＬは、０に初期化され、その後、それが属するタグの正確なＩＤコードの読取りの終了時に１に設定される。これにより、なおも質問機の電磁場内に存在するが、既に読み取られたタグが、多重のリード要求にそれ以上応答せず、本願の出願人によりこの出願と同日に出願された、「別々のＩＤコードを有する一組の動的なタグの読取り方法およびシステム」と題された特許出願に記載された方法によるそのシーケンス番号を用いて存在認証要求に応答することを可能としている。
【００４１】
符号１０で示されるシーケンス番号カウンタＣＮＯも、シーケンサ５に接続されている。このカウンタＣＮＯは、新たな高次コードが出現するたびに、すなわち、少なくとも１つのタグの応答がバイナリツリーのノードの２つの接続枝の各々に供給される（コード１１の受信、以下に説明）たびに、インクリメントする。これは、タグがまだビット数に対して丸められてポーリングされておらず、またはビットセットを０に示すことにより応答したばかりであるとの条件の場合である。このシーケンス番号カウンタＣＮＯは、シーケンスの開始において０に初期化される。
【００４２】
上述したように、番号づけ方法は、シーケンス番号を増加させることによって減少する重みのＩＤコードを分類することを許容する。
符号１１により参照されるシーケンス番号レジスタＲＮＯも、シーケンサ５に接続されている。このシーケンス番号レジスタＲＮＯは、読取りシーケンス中に計算されたようなタグのシーケンス番号をメモリ内に保存することを許容する。このシーケンス番号は、この方法の残りの間、特に認証シーケンス中に、タグとポーリング装置との間のより迅速な処理を可能にしている。このカウンタＣＮＯは、タグが初期化されたとき、またはポーリング装置からのコードリードエラーの場合に０に設定される。
【００４３】
シーケンス番号デカウンタＤＮＯまたは、符号１２として参照される幅シーケンスデカウンタも、このシーケンサ５に接続されている。デカウンタ１２は、ビット位置検索シーケンス中に、識別されるタグの数と同じ回数だけデクリメントされる。デカウンタ１２は、シーケンス番号カウンタの値で、新たなビット位置の走査シーケンス（またはリードサイクル）の開始ごとに決定される。その値が１に到達するときに、タグは、そのＩＤコードの現在のビット位置の重みを送信する順番であるということを理解する。デカウンタＤＮＯは、ビット位置走査サイクルの終了まで０に維持される。
【００４４】
また、シーケンサには、ＩＤコード用に予約された、ライトプロテクトされた記憶領域１３ａと可変情報バックアップ領域１３ａ内に準備された記憶手段も接続されている。
【００４５】
この発明の第１の実施形態において、以下に説明されるように、タグも、符号７で示されるタグデカウンタＤＣＥを具備している。デクリメントすることによって、このデカウンタＤＣＥは、このシーケンスがどのコードを読んでいるのかを見つけだすことを許容する。デカウンタが０値に到達するときには、このことは、ビット位置が完全に走査されたことを意味している。したがって、ビット位置カウンタ８をインクリメントすることによって次のビット位置に進むことができる。このタグデカウンタ７は、ビット位置に関するシーケンスの開始時に、タグカウンタ６の値で初期化される。
【００４６】
デカウンタＤＮＯと全く同様のこのデカウンタＤＣＥは、シーケンサ５からデクリメント指示ＤＥＣと記憶指示ＳＴＲとを受け取る。反対に、カウンタＣＥ，ＣＲＢ，ＣＮＯは、０リセット指示ＲＡＺとインクリメント指示ＩＮＣとを受け取る。レジスタＲＮＯに関しては、記憶指示ＳＴＲと０リセット指示ＲＡＺとを受け取り、ラッチＢＰＬは、０リセット指示Ｒと１リセット指示Ｓとを受け取る。各モジュール６，１２はその現在の値をシーケンサ５に戻す。
【００４７】
図３には、この発明によって使用されるポーリング装置の構造が概略的に示されている。このポーリング装置は、符号１５により表される電磁発信手段並びに、一組のタグとバイナリ情報を通信しまたはタグからのバイナリ情報を受信することを可能にする電子変調手段１６および電子復調手段１７を具備している。
【００４８】
さらに、このポーリング装置は、タグから受け取ったメッセージに依存してとられる一連の動作の順序制御を行うことを可能にする電子手段１８（シーケンサと呼ばれる）を具備している。さらに、ポーリング装置は、一時的または永久的な情報記憶手段２２をも具備している。
【００４９】
図３において明らかなように、シーケンサ１８は、複数のモジュールと情報を交換する。これらのモジュールの中には、類似するタグモジュール（図２）のものと同様の機能を有するタグカウンタＣＥ１９およびビット位置カウンタＣＲＢ２１が存在する。したがって、この図３を参照して、これ以上詳細に説明しないことにする。
【００５０】
タグと同様に、ポーリング装置も、以下に説明されることになるこの発明の第１の実施形態においてのみ使用されるタグデカウンタＤＣＥ２０を具備している。
【００５１】
情報記憶手段２２は、主として、現在読み取られておりまたは既に読み取られたコードを有するリストＬＣＯＤを具備している。さらに詳細には、この現在読み取られておりまたは既に読み取られたコードのリストは、ポーリング装置が、現在読み取られておりまたは既に読み取られたコードを分類し配列する記憶領域である。この配列は動的であり、その限りにおいて、タグは任意の時刻において質問機の電磁場に出入りしてもよい。したがって、このリストから要素（すなわちコード）を挿入または削除することが可能である。符号２３で示されるリストポインタＰＣＯＤは、このリストにおいて最新に処理された要素を指し示すことができる。
【００５２】
上述したタグ／リーダシステムは、最小限のバイナリツリー走査時間で多数のタグを読み取るための方法を実行する。
図４は、この方法の主なステップを示している。
【００５３】
大まかに言えば、この方法は、符号Ａにより参照される第１の初期化ステップと、それに続く、シーケンス番号の割り当てを行う識別ステップＢとを具備しており、テストＰの結果が否定的であれば、このシステムは、少なくとも１つのタグが到着するまでステップＰに戻る。この方法は、その後、リストの最新の番号を照合し、起こりうるタグの出発を考慮に入れてシーケンス番号を管理するためのステップＣ、その後、装置の電磁場内の少なくとも１つの新たなタグの存在をチェックすることからなるテストＤに進行する。
【００５４】
この存在テストＤが真であれば、その後、方法は、シーケンス番号の割り当てを行う識別段階Ｅ、その後、リストが空であるかどうかをチェックするテストＦに進行する。
【００５５】
リストが空の場合には、この方法は、ステップＢの開始位置に続き、そこで、新たなタグを待つスタンバイ状態に入る。反対に空でない場合には、タグ内の情報を更新するステップＧが実行される。
【００５６】
ビットの観点からのこの方法の基本的なプロトコルは、検索ツリーノードレベルにある。ビットレベルにおける情報の交換は、図４に示されたシーケンスから始まって説明される。このシーケンスは、４つのクロックサイクルＴ１，Ｔ２，Ｔ３，Ｔ４において実行され得る。
−  Ｔ１は、現在走査されているビットが１であるタグにより信号が発信されるサイクルであり、
−  Ｔ２は、現在走査されているビットが０であるタグにより信号が発信されるサイクルであり、
−  Ｔ３，Ｔ４は、サイクルＴ１，Ｔ２中に受信されたバイナリダブレットを示すコード、すなわち、コード００，コード０１、コード１０，コード１１を、ポーリング装置が再送信するサイクルである。
【００５７】
作動中のタグは、開始コードが、最新に走査されたノードに対応しているタグであることを特筆しておく。一方では、このことは各作動中のタグのＩＤコードビットを読み取ることを許容し、他方では、読取りを計時することを許容し、かつ、現在走査されているノードの両方の枝のとり得る存在に関する同じ情報を全てのタグに送信することをも許容する。したがって、ポーリング装置および全てのタグは、同じ情報を有し、したがって、潜在的に同じ計算を実行することができる。
【００５８】
したがって、図５は、基本周期を表すサイクルＴ１，Ｔ２，Ｔ３，Ｔ４でノードを読み取るための基本的なタイムチャートを示しており、このタイムチャートの各線は、異なる信号を表しており、第１の線は、ポーリングコード信号を表し、第２の線は、１に設定されたビットを有する１つまたは複数のタグからの信号を表し、第３の線は、０に設定されたビットを有する１つまたは複数のタグからの信号を表している。
【００５９】
この図に示された例において「コードｘ，ｙ」と呼ばれるポーリングコードは、スロットＴ１，Ｔ２中に受信された情報に対応する少なくとも２つのビットを含んでいる。言い換えれば、
・  コードｘｙ＝  Ｔ１中のｘおよび
・                Ｔ２中のｙ
・  Ｔ１中に、１に設定されたビットが存在する場合にはｘ＝１、さもなければ０、
・  Ｔ２中に、０に設定されたビットが存在する場合にはｙ＝１、さもなければ０である。
これにより、４つのとり得るコード、コード００，コード１０，コード０１，コード１１が生成される。
【００６０】
この発明によれば、バイナリツリーの走査が２つの異なるモード、すなわち、最初に横方向に走査するモード、または最初に縦方向に走査するモードによって行われ得る。
【００６１】
第１の実施形態によれば、全てのとり得るコードの包括的な記載からなるバイナリ検索ツリーは、最初に横方向に走査される。したがって、コードは、同時に、コードごとに、１つの所定のビット位置に対して下降する順序で読み取られる。また、それらは、最下位ビットが発見されるまでビットごとに読み取られる。
【００６２】
この実施形態にしたがってこの発明を説明するステップは、検索シーケンス内に２つの枝分かれしたループを具備している。第１のループは、ビット位置に基づいて索引づけられ、第２のループは、所定の時刻において列挙されたタグの数に基づいて索引づけされている。もちろん、この数は、リードシーケンスの開始時には既知ではなく、ツリー検索走査が進行するにしたがって、少なくとも２つのタグが１つのバイナリ接続部、すなわちノードに存在するたびに変化する。
【００６３】
この実施形態は、図２，３に示されたシステムによって実行され、該実施形態においては、リーダおよびタグがそれぞれタグカウンタＤＣＥを具備している。
この実施形態の基本原理は、計時しかつ前のコードが読み取られたときに受け取ったメッセージを全てのタグに再送信するポーリング装置にある。したがって、存在するタグのグループの送信を知らされた各タグは、現在の情況を分析する手段を有し、送信が想定されるときを見つけることができ、他のタグを計数することもできる。
【００６４】
したがって、各タグは、特定のアプリケーションに対して必要であると判明した場合には、存在する全てのコードを読み取るための全ての情報を有している。この場合には、タグは、ポーリング装置と同じアルゴリズムを適用する。
【００６５】
検索シーケンスは、ポーリング装置によって送られたシーケンスメッセージの開始によって開始され、シーケンスメッセージの終わりによって終了する。本質的に２つの段階を有している。存在するコードを走査する（または読み取る）ための第１の段階および、その後の、受信されたコードを認証するための第２の段階である。
【００６６】
この方法によれば、コード識別段階は、既に識別されたコード部分（最上位ビット）にしたがって、ノードからノードへバイナリ検索ツリーを走査することによって実行される。現在識別されているコードの既に識別された部分に続く第１のビットは、次のノードにおいて読み取られる。バイナリノードに対応する各ステップにおいて、そのコードがルートからこのノードに続く樹枝状のもので始まるタグが応答できるように、２つのタイムスロットが予約されている。このタグは、それに続くビットが１に設定されている場合には第１のスロット中に、または、それに続くビットが０に設定されている場合には第２のスロット中に応答する。
【００６７】
ポーリング装置は、読み取られたビットを示す、２ビットコード、すなわち、１に設定されたビットがないが、１ビットが０に設定されていることに対して、コード０１を戻すことにより、シーケンスを計数する。
【００６８】
したがって、このビット位置に異なるコードを有する２つのタグは、２つのスロットの内の１つの範囲で各々応答することができる。その後、少なくとも１つの新たなタグの存在が検出される。
【００６９】
現在読み取られているコードの既に読み取られた部分は、複数のコードの開始部分に対応していることを特筆しておく。ＩＤコードビットの数に対応する固定されたインデックスに戻ること、並びに、そのときまでに検出されたタグの数の増加するインデックスに戻ることにより、存在する全てのタグが読み取られ得る。
【００７０】
読取り段階の終了時において、ポーリング装置は、一組のタグのそれぞれのＩＤコードの正確な読みを確認しまたは無効にすることによってそれらのタグを走査する。これは、コード認証段階であり、各タグに割り当てられたシーケンス番号を使用することに基づいており、これらのシーケンス番号並びにこれらの番号の割り当て方法の役割は、既に言及した「別々のＩＤコードを有する一組の動的なタグを読み取るための方法およびシステム」と題された特許出願に開示されている。
【００７１】
初めて正確に読み取られかつそのシーケンス番号が正確であるということを考慮して、タグは、返事を戻す。その最初の読み取られたビットは、その後、確認される。反対に、不正確なコードが読み取られた場合には、ポーリング装置は、エラーメッセージを送り、タグは他の最初の読取りの待機に戻る。
【００７２】
タグが、読取りシーケンス中にポーリング装置の電磁場内に入った場合には、それが応答可能となる前に、次のシーケンスメッセージの開始を待たなければならない。それは、ポーリング装置と他のタグとの間の現在のダイアログを妨害することも、それによって妨害されることもない。
【００７３】
識別シーケンス中に、タグが質問機の電磁場内から出る場合には、次のビットの読取りは、存在する他のタグが同じ開始コードを有している場合を除いて、１または０に設定された次のビットの応答を何ら戻さない。第１の場合には、質問機は、現在のビット位置における対応する走査シーケンスの間に未だ読み取られていない各タグのシーケンス番号カウンタのデクリメントを開始する、コード００のようなメッセージを送る。各タグのタグカウンタも、ポーリング装置のタグカウンタと同様にデクリメントされ、ポーリング装置はその後、そのリストからそのコードを消去する。
【００７４】
この検索シーケンスは、図６，７，８，９を参照して、以下により詳細に説明される。特に、図６，８は、存在するコードを識別するための段階のブロック図を示しており、図７，９は、受信したコードを確認するための段階のブロック図を示している。
【００７５】
識別段階中に、ポーリング装置は、８個の異なるコードを使用しかつ送信する。それらは以下の通りである。
−  シーケンス開始コード：このコードは全てのタグを初期化することを許容する。
−  コード００，コード１０，コード０１，コード１１：これらのコードはタグに検索ツリー走査の進展を知らせることを許容する。
−  コードＯＫ：このコードは、そのコード読取りがちょうど終了したタグに、該コードが有効であることを教示する。
−  コードＫＯ：このコードは、エラーの場合に、コードの読取りを無効にし、かつ、タグをその後の読取りサイクルのためにスタンバイ状態に戻すために供給される。
−  シーケンス終了コード：このコードは、次のサイクルまで、種々のカウンタ、デカウンタおよびラッチのステータスを固定する。
【００７６】
タグにより見られるように、第１の実施形態によるこの読取り段階のブロック図が図６に示されている。
【００７７】
この方法は、第１の初期化ステップ３０と、その次の、第１の読取りラッチＢＰＬ、シーケンス番号カウンタＣＮＯ、タグカウンタＣＥ、シーケンス番号デカウンタＤＮＯ、タグデカウンタＤＣＥ、シーケンス番号レジスタＲＮＯおよびビット位置カウンタＣＲＢを０に設定するためのステップ３１とを具備している。これらの初期化が行われたときには、この方法は、これがシーケンスの開始かどうかをチェックすることからなるテスト３２に進行し、これがシーケンス開始である場合には、シーケンス番号カウンタＣＮＯが１に設定され、シーケンス番号デカウンタＤＮＯが１に設定され、タグカウンタＣＥが１に設定され、ビット位置カウンタＣＲＢが１に設定される（ブロック４９）。
【００７８】
次に、この方法は、シーケンス番号デカウンタＤＮＯが１かどうかをチェックすることからなるテスト４５に進行する。もし、１である場合には、テスト４６が、コードビットが１かどうかをチェックする。１である場合には、ステップ４７においてタグは「１」を送信し、テスト３２の始まりに戻り、１ではない場合には、タグは「０」を送信して、方法はテスト３２の始まりに進行する。
【００７９】
また、テスト４５において、ＤＮＯが１に等しくないとの結果がでた場合には、方法はテスト３２の始まりに進行する。
【００８０】
シーケンスの開始ではない場合には（テスト３２）、質問機によって送られたコードがコード００であるかどうかをチェックすることからなるテスト３３に進行する。コード００である場合には、テスト３４において、ビット位置カウンタＣＲＢが、現在ビット（ＮＢＢＩＴ）の数に等しいかどうかがチェックされ、等しい場合には、ブロック３５において、第１の読取りラッチＢＰＬが１に設定され、シーケンス番号レジスタＲＮＯがシーケンス番号カウンタＣＮＯの値に設定され、関連するタグが、その後シーケンスの終了までロックされる（ブロック３６）。等しくない場合には、その後、方法は、シーケンス番号デカウンタＤＮＯが１より大きいかどうかをチェックすることからなるテスト３７に進行し、大きい場合には、シーケンス番号カウンタＣＮＯが１だけデクリメントされ、その後、テスト３２の始まりに戻り、大きくない場合には、方法は、テスト３２の始まりに直接戻る。
【００８１】
テスト３３において、コード００ではないことが判明した場合には、その後、テスト３９がコード１０またはコード０１であるかどうかをチェックするために実行される。コード１０またはコード０１である場合には、シーケンス番号デカウンタＤＮＯが０より大きいかどうかがチェックされ（ステップ４０）、大きい場合にはデカウンタＤＮＯが１だけデクリメントされ（ブロック４１）、次に方法はブロック４２に進行し、ＤＮＯが０より大きくない場合には、方法は、タグデカウンタＤＣＥが１だけデクリメントされるステップ４２に直接進行する。
【００８２】
テスト４３は、このタグデカウンタＤＣＥが０に等しいかどうかをチェックすることにあり、等しい場合には、タグデカウンタＤＣＥがタグカウンタＣＥの値に設定され、ビット位置カウンタＣＲＢが１だけインクリメントされ、かつ、シーケンス番号デカウンタがシーケンス番号カウンタＣＮＯの値に設定される（ブロック４４）。
【００８３】
ステップ４４の後、および、テスト４３に対する答えが否定的である場合には、方法は前述したテスト４５に進行する。
【００８４】
テスト３９において、コード０１もコード１０も発見されない場合には、コード１１であるかどうかがチェックされる（テスト５０）。コード１１ではない場合には、方法はテスト３２の始まり位置に戻る。コード１１である場合には、方法は、タグが「０」を送信したかどうかをチェックすることからなるテスト５１に進行する。送信した場合には、ステップ５２において、シーケンス番号カウンタが１だけインクリメントされる。ステップ５２の後、および、「０」がテスト５１中に全く送信されなかった場合には、方法は、ビット位置カウンタＣＲＢが１に等しいかどうかをチェックすることからなるテスト５３に進行する。等しい場合には、タグカウンタＣＥ、タグデカウンタＤＣＥおよびシーケンス番号カウンタＣＲＢが２に設定され、シーケンス番号デカウンタＤＮＯがシーケンス番号カウンタＣＮＯと同じ値に設定される（ブロック５４）。方法は、その後、既に説明されたテスト４５に進行する。
【００８５】
テスト５３において、ＣＲＢが１ではないことが判明した場合には、タグカウンタＣＥが１だけインクリメントされ、タグデカウンタＤＣＥが１だけデクリメントされ（ブロック５５）、方法はその後、既に説明したテスト４３に進行する。
【００８６】
図７には、タグにより示されるように、第１の実施形態に係るコード認証段階のブロック図が概略的に示されている。このコード認証段階のために、方法は、図６に説明されたコード読取りブロック３６の終了において開始する。
【００８７】
コード読取りの終了が検出されると、すなわち、タグがロックされたときには、シーケンス番号デカウンタＤＮＯがシーケンス番号レジスタＲＮＯの値に設定される（ブロック６０）。
【００８８】
その後、質問機がコードＯＫを送信したかどうかをチェックすることからなるテスト６１が行われる。送信された場合には、テスト６２において、シーケンス番号デカウンタＤＮＯが０かどうかがチェックされ、０の場合には、方法はテスト６１の始まりに進行し、０でない場合には、シーケンス番号デカウンタＤＮＯが、ブロック６３において１だけデクリメントされ、その後、テスト６４において、シーケンス番号デカウンタＤＮＯの新たな値が０であるかどうかがチェックされる。０である場合には、タグは、ブロック６５において「１」を送信し、第１の読取りラッチＢＰＬが１に設定され、０でない場合には、方法はテスト６１の始まりに進行する。
【００８９】
テスト６１の答えが否定的である場合には、質問器がコードＫＯを送信したかどうかをチェックすることからなるテスト６６が行われる。コードＫＯである場合には、その後、シーケンス番号デカウンタＤＮＯが０であるかどうかがチェックされ（テスト６７）、０である場合には、方法はテスト６２の始まりに続き、０でない場合には、シーケンス番号デカウンタＤＮＯが１だけデクリメントされ（ブロック６８）、その後、テスト６９が、シーケンス番号デカウンタの新たな値が０かどうかをチェックする。０である場合には、タグが「０」を送信し、第１の読取りラッチＢＰＬが０に設定され（ブロック７０）、方法はテスト６１の始まりに続く。０でない場合には、方法は、直接テスト６１に続く。
【００９０】
コードＯＫまたはコードＫＯが全く読み取られない場合には、シーケンスの終了であるかどうかをチェックすることからなるテスト７１が行われ、終了である場合には、コード認証段階が終了したと判断され（ブロック７２）、終了でない場合には、方法はテスト６１の始まりへ続く。
【００９１】
図８は、コード読取り段階のためにポーリング装置によって実行されるこの発明の方法のブロック図を示している。
この方法は、ポーリング装置初期化ステップ８０によって開始する。方法は、タグカウンタＣＥを０に設定し、ビット位置カウンタＣＲＢを１に設定し、シーケンスメッセージの開始を送るためのステップ８１に進行する。
【００９２】
ＬＣＯＤはＮＢＢＩＴにおけるコードリストであり、ＬＣＯＤ（ＮＣＥ，ＣＲＢ）は、タグ＃ＮＣＥのコードのビット＃ＣＲＢに対応し、ステップ８４においてＮＣＥ＝１、ＣＲＢ＝１であり、ＬＣＯＤ（ＮＣＥ）はタグ＃ＮＣＥのコードに対応している。
【００９３】
テスト８２は、コード００が受信されたかどうかをチェックする。受信された場合には、方法は、ステップ８１の始まりに続く。受信されない場合には、方法は、コード１０かどうかをチェックするテスト８３に進行し、コード１０である場合には、タグカウンタＣＥが１に設定され、第１コードの１ビットが１に設定される（ブロック８４）。［（ＬＣＯＤ（Ｃ１，ＣＲＢ），ＣＲＢ＝１、ＣＲＢはタグ＃ＮＣＥ（タグの最新の番号）のコードのビット番号である）］。方法は、その後、コード１０送信ステップ８５に進行し、その後以下に説明されるステップ９１に進行する。
【００９４】
テスト８３において、コード１０ではない場合には、ポーリング装置は、テスト８６において、コード０１かどうかをチェックする。コード０１である場合には、タグカウンタＣＥが１に設定され、第１コードのビット１が、ステップ８７において、０に設定され、その後、コード０１がステップ８８において送信され、方法は、その後、ステップ９１に進行する。テスト８６において、受信されたコードがコード０１ではない場合には、０に設定されたビットを有する少なくとも１つのタグと１に設定されたビットを有する少なくとも１つのタグ（コード１１）が存在することを意味している。したがって、リストは第１ビットに対して１に設定されたタグおよび第１ビットに対して０に設定されたタグで初期化されかつタグカウンタＣＥが２に設定される。コード１１はその後、ステップ９０において送信される。
【００９５】
コードｘｙは、テスト８２，８３，８６の場合には、メッセージ送信８５，８８，９０中と同じ物理的意味を有していないが、同じ機能的な意味を有している。実際には、テスト８２，８３，８６のコードｘｙは、図５において説明された基本読取りサイクルの期間Ｔ１，Ｔ２中にタグにより送信された情報の合成であり、以下のステータスに対応している。
ｘ＝０が１に設定されたビットを有するタグの不在を示し、ｘ＝１が１に設定されたビットを有するタグの存在を示し、
ｙ＝０が０に設定されたビットを有するタグの不在を示し、ｙ＝１が０に設定されたビットの存在を示している。
【００９６】
他方では、送信８５，８８，９０のコードｘｙは、現在走査されているタグのビット値にしたがって質問機により送られたメッセージに対応している。
その後、ビット位置カウンタＣＲＢをインクリメントし、現在のタグ番号を１に設定するステップ９１へ進行する。それぞれテスト８２，８３，８６と同じテスト９２，９５，９８は、コード００，コード１０，コード０１であるかどうかをチェックすることからなる。テスト９２が真である場合には、ステップ９３は、リストＬＣＯＤから最新のタグ＃ＮＣＥのコードを消去し、タグカウンタＣＥをデクリメントすることからなる。コード００の送信は、ステップ９４において実行される。
【００９７】
テスト９２が真ではない場合には、テスト９５が実行される。このテストに対する答えが肯定的、すなわち、「１」に設定された最新ビットを有する少なくとも１つのタグが存在する場合には、「０」に設定されたビットを有するものはなく、タグ＃ＮＣＥの最新ビット（ＣＲＢ）はリストＬＣＯＤにおいて１に設定され（ブロック９６）、その後、コード１０メッセージがブロック９７において送信される。
【００９８】
テストに対する答えが否定的である場合には、方法はコード０１であるかどうか、すなわち「０」に設定された最新ビットを有する少なくとも１つのタグが存在しかつ「１」に設定されたこのビットを有するタグが存在しないかどうかをチェックすることからなるテスト９８に進行し、該当する場合には、タグ＃ＮＣＥの最新ビット（ＣＲＢ）は、ステップ９９において、コードリストＬＣＯＤにおいて「０」に設定され、その後コード０１の送信がステップ１００において実行される。
【００９９】
テスト９８に対する答えが否定的である場合、すなわち、「１」に設定されたビットＣＲＢを有する少なくとも１つのタグと「０」に設定されたこのビットを有する少なくとも１つのタグが同時に存在する場合には、タグカウンタＣＥがインクリメントされ、タグＮＣＥの最新ビットが、リストＬＣＯＤにおいて１に設定され、ＮＣＥがインクリメントされ、かつ、コードの始まりが先行するタグコード（ＮＣＥ−１）で繰り返されていたときには、タグＮＣＥの最新ビットＣＲＢがリストＬＣＯＤにおいて０に設定される。次に、コード１１がステップ１０２において送信される。
【０１００】
ステップ９４，９７，１００，１０２の各々の出口において、この方法は、ＮＣＥ認証テスト１０３に進行する。ＮＣＥがＣＥに等しくない場合には、ＮＣＥは、ステップ１０５において１だけインクリメントされ、その後、方法は、テスト９２に続く。このＮＣＥがタグカウンタＣＥに等しい場合には、新たなテスト１０４がビット位置カウンタＣＲＢがＩＤコードビットＮＢＢＩＴの数に等しいかどうかをチェックするために実行され、等しい場合には、読取りシーケンスが終了され（ブロック１０６）、等しくない場合には、方法はステップ９１に続く。
【０１０１】
図９には、コード認証段階のブロック図が、ポーリング装置に対して表されている。
このコード認証方法は、「送信開始」というコード認証の開始を知らせるステップ１１０から開始する。
【０１０２】
続いて、コード００かどうかをチェックすることからなるテスト１１１が行われ、コード００ではない場合には、エラーによるシーケンスメッセージの終了がステップ１１２において送信される。実際にコード００である場合には、ステップ１１３において、ＮＣＥが１に設定される。
【０１０３】
その後、テスト１１４は、ちょうど読み取られたコードが正しいかどうかをチェックすることからなる。正しい場合には、、コード「ＯＫ」が送信される（ステップ１１５）。テスト１１６は、その後、コード１０かどうかをチェックするために実行される。いずれの場合であっても、方法は、以下に説明されることになるステップ１１９に進行する。
【０１０４】
テスト１１４に対する答えが否定的である場合には、メッセージ「コードＫＯ」がステップ１１７において送信され、コードＬＣＯＤ（ＮＣＥ）が、リストから削除され、タグカウンタＣＥがデクリメントされる。その後、テスト１１８がコード０１かどうかをチェックし、このテストの出力がいずれの場合でも、方法はテスト１１９に進行する。テスト１１９は、ＮＣＥがタグカウンタＣＥに等しいかどうかをチェックすることからなる。等しい場合には、シーケンスメッセージの終了が送信され（ステップ１２０）、シーケンスは、ステップ１２１において終了したものと考えられる。テスト１１９が否定的な答えを生じた場合には、ＮＣＥは、ステップ１１２において１だけインクリメントされ、この方法はテスト１１４の始まりに続く。
【０１０５】
図１０には、図１に与えられた例に対応する４つのタグＥ１，Ｅ２，Ｅ３，Ｅ４のコードを検索するためのタイムチャートが示されている。このタイムチャートは、多重読取りシーケンス中に交換された情報を説明し、かつ、このシーケンス中の別々のレジスタおよびカウンタの値を示している。
【０１０６】
図１０の部分Ａには、方法の第１の実施形態にしたがって、すなわち、ツリーが最初に横方向に走査されたときに、各タグの最上位ビットが最初に検出され、その後、第２の上位ビット等が検出され、それによって、タグコードが読取りシーケンスの終わりに全て決定されることが明らかである。
【０１０７】
図１０の部分Ｂには、これら４個のタグＥ１，Ｅ２，Ｅ３，Ｅ４の各々に対するシーケンス番号カウンタＣＮＯの値、シーケンス番号デカウンタＤＮＯの値、第１の読取りラッチＢＰＬの値、およびシーケンス番号レジスタＲＮＯの値、並びに、タグカウンタＣＥの値、タグデカウンタＤＣＥの値およびビット位置カウンタＣＲＢの値が示されている。
【０１０８】
この発明の方法の第２の実施形態は、最初にバイナリツリーの読取りを縦方向に行うことにある。この実施形態において、全てのとり得るコードの包括的な記載により構成されるバイナリ検索ツリーは、縦方向に走査される。コードは、最下位ビットが発見されるまで、ビットごとに読み取られる。次に、それらは連続して、コードごとに、例えば降べきの順に読み取られる。
【０１０９】
この方法は、主として検索シーケンスにおいて枝分かれした以下の２つのループから構成されている。所定の時刻において列挙されたタグの数に基づいて索引付けされたループと、ビット位置に基づいて索引付けされた第２のループである。
【０１１０】
もちろん、存在するタグの数は、読取りシーケンスの開始時点では未知であり、検索ツリーが走査されるに従って、樹枝状のノードの各枝において少なくとも１つのタグが検出されるごとに変更される。
【０１１１】
この実施形態において、タグの構造は、上記実施形態において説明されたように、タグがタグデカウンタを具備していない点を除いて、全体的に同一である。
また、この第２の実施形態におけるポーリング装置の構造に関しては、前記装置がタグデカウンタＤＣＥを有していない点を除いて既に説明されたポーリング装置と同様である。
【０１１２】
この発明の方法の２つの実施形態の間のタグおよびポーリング装置に関する相違が無視しうるものであると仮定して、それらの構造を再度説明することはしない。
【０１１３】
この明細書中で以下に提供されることになる図および例は、コードが降べきの順に読み取られることを意味する、走査されるべき第１の枝の選択が１に設定されたビットに対応するもののものであるということを前もって推定していることを特筆しておく。しかしながら、昇べきの順にコードを読み取ることによる異なるアプローチが想定されてもよく、両アプローチは実質的には同一の読取り時間につながる。
【０１１４】
図１１において、タグがコードを読み取る段階のブロック図が、この発明の第２の実施形態として示されている。
この発明の第１の実施形態とちょうど同じように、検索シーケンスは、質問機によって送られる「シーケンスの開始」メッセージによって開始され、「シーケンスの終了」メッセージによって終了する。
【０１１５】
第１の実施形態に係る方法と類似するように、この検索シーケンスは、２つの側面、すなわち、存在するコードの走査（または読取り）、および受信したコードの認証の側面を具備している。
図１３は、この発明の第２の実施形態に従う、すなわち、最初に横方向に読み取る場合におけるポーリング装置のためのコード識別および認証段階のブロック図を示している。
【０１１６】
この方法は、ポーリング装置初期化段階１６０において開始する。方法は、タグカウンタＣＥを０に設定し、ビット位置カウンタＣＲＢを１に設定し、シーケンス開始メッセージを送るステップ１６１に進行する。
【０１１７】
続いて、テスト１６２は、コード００が受信されたかどうかをチェックする。受信された場合には、方法は、ステップ１６１の開始位置に続く。受信されない場合には、方法は、コード１０であるかどうかをチェックするテスト１６３に進行し、コード１０である場合には、タグカウンタＣＥが１に設定され（ブロック１６４）、第１のタグコードのビット１が１に設定、すなわち、ＬＣＯＤ（１，１）＝１とされる。この方法は、その後、「コード１０」を送信するステップ１６５に進行し、その後、最新タグ番号ＮＣＥを１に設定するステップ１７１に進行する。
【０１１８】
テスト１６３において、コード１０が含まれていない場合には、ポーリング装置は、テスト１６６の間に、コード０１かどうかをチェックする。コード０１の場合には、タグカウンタＣＥが１に設定され、第１コードのビット１が０に設定され（ステップ１６７）、その後、コード０１がステップ１６８において送信され、この方法は、既に前で述べたステップ１７１に進行する。
【０１１９】
テスト１６６において、受信されたコードが「コード０１」でない場合には、このことは、０に設定されたビットを有する少なくとも１つのタグおよび１に設定されたビットを有する少なくとも１つのタグが存在すること（コード１１）を意味し、リストは、その後、第１ビットに対して１に設定されたタグで初期化され、第１ビットに対して０に設定されたタグで初期化される。方法は、「コード１１」を送信することにより進行し（ステップ１７０）、その後、ステップ１７１によって、最新タグ番号ＮＣＥをインクリメントする。
【０１２０】
その後のステップ１７２は、タグ＃ＮＣＥのビット位置カウンタＣＲＢ（ＮＣＥ）を１だけインクリメントすることからなる。
テスト１６２，１６３，１６６とそれぞれ同じテスト１７３，１７６，１７９は、コード００，コード１０またはコード０１であるかどうかをチェックすることからなる。テスト１７３が真である場合には、最新タグ＃ＮＣＥのコードをリストＬＣＯＤから削除し、タグカウンタＣＥを１だけデクリメントすることからなるステップ１７４に進行する。コード００が、次に送信される（ステップ１７５）。
【０１２１】
テスト１７３が真ではない場合には、テスト１７６が実行される。テスト１７６の答えが肯定的である場合、すなわち、１に設定された最新ビットを有する少なくとも１つのタグが存在しかつ「０」に設定されたこのビットが全く存在しない場合には、タグＮＣＥの最新ビットＣＲＢが、リストＬＣＯＤにおいて１に設定され（ブロック１７７）、メッセージ「コード１０」が送信される（ブロック１７８）。
【０１２２】
テスト１７６に対するの答えが否定的である場合には、方法は、「０」に設定された最新ビットを有する少なくとも１つのタグが存在しかつ「１」に設定されたこのビットが全く存在しないかどうかをチェックすることからなるテスト１７９に進行し、該当する場合には、ＮＣＥの最新ビットＣＲＢが、ステップ１８０において、コードリストＬＣＯＤ内で「０」に設定され、その後「コード０１」がステップ１８１において送信される。
【０１２３】
テスト１７９に対する答えが否定的である場合、すなわち、「１」に設定された最新ビットＣＲＢを有する少なくとも１つのビットと、「０」に設定されたこの最新ビットを有する少なくとも１つのビットとが同時に存在する場合には、タグカウンタＣＥは、インクリメントされ（ブロック１８２）、タグＮＣＥの最新ビットＣＲＢが、リストＬＣＯＤにおいて１に設定され、コードの開始が前のタグのコードと重複しているときには、タグＮＣＥ＋１の最新ビットＣＲＢが、リストＬＣＯＤにおいて「０」に設定される。その後、「コード１１」がステップ１８３において送信される。
【０１２４】
各ステップ１７５，１７８，１８１，１８３の後に、この方法は、タグＮＣＥのビット位置カウンタＣＲＢを１だけインクリメントするステップ１８４に進行し、その後、タグＮＣＥのビット位置カウンタＣＲＢがＩＤコードＮＢＢＩＴのビット数より少ないかどうかをチェックすることからなるテスト１８５に進行する。少ない場合には、方法は、ステップ１７３の開始位置に続く。大きい場合には、タグ番号ＮＣＥがタグカウンタＣＥに等しいかどうかをチェックするテスト１８６に進行する。
【０１２５】
このテストが真である場合には、シーケンス終了コードを送信することにより終了される。
このテストが真でない場合には、受信したコードが「ＯＫ」であるかどうかをチェックするテスト１８７が行われる（コードは、例えば、そのチェックサムが正しくかつそのパリティビットが正しい場合にはＯＫである。）。ＯＫである場合には、「コードＯＫ」が送信される（ブロック１８９）。ＯＫでない場合には、「コードＫＯ」が送信され（ブロック１８８）、タグＮＣＥがリストＬＣＯＤから引き出され、タグカウンタＣＥが、タグ番号ＮＣＥと同様に１だけデクリメントされる。
【０１２６】
方法は、その後、ＮＣＥをインクリメントすることにより進行する。方法は、その後、ステップ１７２に続く。
【０１２７】
図１１において、この発明の第２の実施形態に従う（すなわち、最初に縦方向に検索する）識別段階のブロック図がタグレベルで表されている。
この第２の実施形態に従うＩＤコード読取り段階は、タグ初期化ステップ１３０で開始し、その後、第１の読取りラッチＢＰＬ、シーケンス番号カウンタＣＮＯ、シーケンス番号レジスタＲＮＯ、シーケンス番号デカウンタＤＮＯおよびビット位置カウンタＣＲＢを０に設定する（ステップ１３１）。
【０１２８】
方法は、これがシーケンスの開始であるかどうかをチェックすることからなるテスト１３２に進行し、開始である場合には、シーケンス番号カウンタＣＮＯ、およびシーケンス番号デカウンタＤＮＯを１に設定する（ステップ１３３）。方法は、以下に説明されるステップ１４７に進行する。
【０１２９】
テスト１３２に対する答えが否定的である場合には、受信されたコードがコード００であるかどうかをチェックするために、テスト１３４が実行される。コード００である場合には、シーケンス番号カウンタＣＮＯおよびシーケンス番号デカウンタＤＮＯは、ステップ１３５において各々１だけデクリメントされ、その後、方法はステップ１４７に進行する。コード００でない場合には、受信したコードがコード１０またはコード０１であるかどうかをチェックするためにテスト１３６が実行される。テスト１０である場合には、テスト１３７がシーケンス番号デカウンタＤＮＯが１であるかどうかをチェックし、１である場合には、ビット位置カウンタＣＲＢがＮＢＢＩＴより小さいかどうかをチェックするために、新たなテスト１３８が実行される。テスト１３７またはテスト１３８に対する答えが否定的な場合には、方法は、テスト１３２の開始位置に続く。テスト１３８に対する答えが肯定的である場合には、方法は、ステップ１４７に進行する。
【０１３０】
テスト１３６に対する答えが否定的である場合には、テスト１３９は、受け取ったコードがコード１１であるか同化をチェックする。コード１１である場合には、テスト１４０は「１」が前に送信されたかどうか、または、シーケンス番号デカウンタＤＮＯが１より大きいかどうかをチェックする。該当する場合には、シーケンス番号カウンタＣＮＯおよびシーケンス番号デカウンタＤＮＯが１だけインクリメントされ、方法は、テスト１３７の開始位置に続く。テスト１４０に対する答えが否定的である場合には、方法は、直接、テスト１３７に続く。
【０１３１】
テスト１３９の結果が否定的である場合には、テスト１４２は、メッセージコードＯＫが受信されたかどうかをチェックする。受信されていない場合には、方法はテスト１３２に続く。さもなければ、シーケンス番号デカウンタＤＮＯが１より大きいかどうかをチェックするためにテスト１４３が実行され、大きい場合にはＤＮＯが１だけデクリメントされ（ステップ１４４）、方法はステップ１４７に進行し、小さい場合には、第１の読取りラッチＢＰＬが１に設定され、シーケンス番号レジスタＲＮＯがシーケンス番号カウンタの値に設定され（ステップ１４５）、その後タグがロックされる（ステップ１４６）。
【０１３２】
ＤＮＯデクリメントステップ１４４の後に、テスト１３８、ステップ１３５，ステップ１３３の終了時と全く同様に、方法は、シーケンス番号デカウンタＤＮＯが１かどうかをチェックすることからなるテスト１４７に進行する。１である場合には、ビット位置カウンタＣＲＢが１だけインクリメントされ（ステップ１４８）、テスト１４９は、（最新ビット位置カウンタに対する）コードが１かどうかをチェックする。１である場合には、ステップ１５１において「１」が送信され、その後、テスト１３２に戻る。１でない場合には、０が送信され、その後、テスト１３２の開始位置に戻る。
【０１３３】
図１２は、第２の実施形態に従う、すなわち、最初に横方向に読み取る、図１に表された例対する検索シーケンスのタイムチャートを示している。
部分Ａにおいて、タグ１，２，３，４の各々の応答は、読取り段階が進行するに従って明らかになる。この読取り方法は、バイナリツリーの縦方向を最初に読み取ることにあるので、各タグの最上位ビットが、まず第１に決定され、その後各コードが次々と決定される。したがって、この実施形態においては、最初に決定されることになるのはタグ３のコードであり、その後タグ２のコード、その後タグ４のコード、そして最後にタグ１のコードが決定される。
【０１３４】
部分Ｂには、各タグＥ１，Ｅ２，Ｅ３，Ｅ４のシーケンス番号カウンタＣＮＯおよびシーケンス番号デカウンタＤＮＯの値、ビット位置カウンタＣＲＢの値、並びに、第１の読取りラッチＢＰＬの値が示されている。また、ポーリング装置に対するタグカウンタＣＥの値、並びに、ビット位置カウンタＣＲＢの値も示されている。
【図面の簡単な説明】
【図１】   ４つのタグＥ１，Ｅ２，Ｅ３，Ｅ４に対するバイナリ検索ツリーの一例を示す図である。
【図２】   タグの構造を概略的に表す図である。
【図３】   ポーリング装置の構造を概略的に表す図である。
【図４】   タグポーリングの一般的なブロック図を表す図である。
【図５】   識別セグメントから抽出されたノードを読み取るための基本的なタイムチャートを示す図である。
【図６】   この発明の第１の実施形態において、タグに対するコード読取り段階のフローチャートを示す図である。
【図７】   図６の実施形態における、タグに対するコード認証段階のフローチャートを示す図である。
【図８】   この発明の第１の実施形態において、ポーリング装置に対するコード読取り段階のフローチャートを示す図である。
【図９】   図８の実施形態における、ポーリング装置に対するコード認証段階のフローチャートを示す図である。
【図１０】   この発明の第１の実施形態において、４つのタグのコードを読み取るためのタイムチャートの一例を表す図である。
【図１１】   この発明の第２の実施形態において、タグのためのコード読取り段階のフローチャートを示す図である。
【図１２】   この発明の第２の実施形態において、４つのタグのコードを読み取るためのタイムチャートの一例を示す図である。
【図１３】   第２の実施形態において、ポーリング装置のためのコード読取りおよび認証を含むフローチャートを示す図である。
【符号の説明】
１  電子変調手段（信号送信／受信手段）
２  電子復調手段（信号送信／受信手段）
５，１８  シーケンサ（電子式順序制御手段）
６  タグカウンタ
７，２０  タグデカウンタ
８  ビット位置カウンタ
９  第１の読取りラッチ
１０  シーケンス番号カウンタ
１１  シーケンス番号レジスタ
１２  シーケンス番号デカウンタ
１３  記憶手段
１４  電子送信手段（信号送信／受信手段）
１５  電磁送信手段（信号送信／受信手段）
１６  電子変調手段（信号送信／受信手段）
１７  電子復調手段（信号送信／受信手段）
１９  タグカウンタ
２１  ビット位置カウンタ
２２  情報記憶手段（記憶手段、記憶レジスタ）
２３  ポインタ
【図１】
0004754666.tif 000003
【図２】
0004754666.tif 000004
【図３】
0004754666.tif 000005
【図４】
0004754666.tif 000006
【図５】
0004754666.tif 000007
【図６】
0004754666.tif 000008
【図７】
0004754666.tif 000009
【図８】
0004754666.tif 000010
【図９】
0004754666.tif 000011
【図１０】
0004754666.tif 000012
【図１１】
0004754666.tif 000013
【図１２】
0004754666.tif 000014
【図１３】
0004754666.tif 000015