(57)【要約】自動識別向けのシステムにおいて、ネットワークに結合された１つのアプライアンスによって実行される方法は、アプライアンス間の負荷をバランスする。このネットワークは、複数のタグと、これら複数のタグを読み取る複数のリーダと、複数のアプライアンスとを含む。この複数のアプライアンスは、サーバに対する情報を提供するリーダをサービスする。サーバは、この情報に従って、アプリケーションプログラムを実行する。本方法は、（ａ）１つのアプライアンスによってサービスするための割り当てられていない容量の決定と、（ｂ）複数のリーダのうちの１つのリーダをサービスするための負荷の決定と、（ｃ）負荷がその割り当てられていない容量内にフィットする場合、複数のアプライアンスの他の１つのアプライアンスに対して、その１つのアプライアンスがその１つのリーダをサービスできる１つのリーダを指示する信号をネットワークに提供することとを含む。
2008506163.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに結合されたサーバによって実行される方法であって、
該ネットワークは、複数のタグと、該複数のタグを読み取る複数のリーダと、情報を提供するために該複数のリーダをサービスする複数のアプライアンスと、該複数のアプライアンスに応答する複数のアクチュエータとを備え、
該サーバは、該情報に従って、アプリケーションプログラムを実行するためのものであって、該方法は、
該ネットワークを介して、該複数のアプライアンスのうちの１つのアプライアンスによって使用されるルールを送信することであって、該ルールは、基準を特定する主部と、該基準に合致されることに応答してアクションを特定する述部とを有する、ことと、
該ネットワークを介して、該複数のタグのうちの特定のタグの識別を受信することであって、該１つのアプライアンスは、該特定のタグに対して、該ルールを適用させる、ことと、
を包含し、該ルールを適用することは、
（１）該１つのタグに関して該複数のリーダのうちの特定のリーダからの情報に従う該基準に合致することと、物理的位置を究明することとであって、該ルールの該主部は、該特定のリーダを識別するのに不十分である、ことと、
（２）該アクションを達成するために、該位置に従う該複数のアクチュエータのうちの特定のアクチュエータをアクティブにすることであって、該ルールの該述部は、該特定のアクチュエータを識別するのに不十分である、ことと
を含む、方法。
【請求項２】
前記位置は、前記特定のタグの位置である、請求項１に記載の方法。
【請求項３】
前記位置は、前記特定のリーダの位置である、請求項１に記載の方法。
【請求項４】
前記位置は、前記特定のアクチュエータの位置である、請求項１に記載の方法。
【請求項５】
前記受信することは、前記識別と関連する前記位置を受信することをさらに包含する、請求項１に記載の方法。
【請求項６】
前記アクションを達成することは、
前記位置に従って、特定のアクチュエータのアイデンティティを究明することと、
該特定のアクチュエータの該アイデンティティに従って、前記複数のアクチュエータのうちの前記特定のアクチュエータをアクティブにすることと
をさらに含む、請求項１に記載の方法。
【請求項７】
請求項１に記載の方法を実行するための命令のインディシアを備える、メモリデバイス。
【請求項８】
ネットワークに結合された１つのアプライアンスによって実行される方法であって、
該ネットワークは、複数のタグと、該複数のタグを読み取る複数のリーダと、該１つのアプライアンスを含む複数のアプライアンスとを備え、
該複数のアプライアンスは、サーバに情報を提供するための該複数のリーダをサービスするためのもので、該ネットワークに結合され、該サーバは、該情報に従ってアプリケーションプログラムを実行するためのものであって、該方法は、
該１つのアプライアンスによってサービスするために割り当てられていない容量を決定することと、
該複数のリーダのうちの１つのリーダをサービスするために、負荷を決定することと、
該負荷が、該割り当てられていない容量内にフィットする場合、該複数のアプライアンスのうちの他のアプライアンスのために、該１つのアプライアンスが該１つのリーダにサービスできる指示を含む信号を該ネットワークに提供することと
を包含する、方法。
【請求項９】
前記信号は、前記決定された負荷の指示をさらに含む、請求項８に記載の方法。
【請求項１０】
前記１つのリーダは、現在十分なサービスを受信していないことを発見することをさらに包含する、請求項８に記載の方法。
【請求項１１】
前記複数のアプライアンスの各他のアプライアンスをサービスするために、それぞれの割り当てられていない容量を受信することと、
前記複数のリーダの各リーダのそれぞれの負荷を受信することと、
前記１つのリーダを選択し、該複数のアプライアンスのうちの該複数のアプライアンスのそれぞれ内の割り当てられていない容量をより均一な分布にインプリメントすることと
をさらに包含する、請求項８に記載の方法。
【請求項１２】
前記１つのリーダは、サービスするための複数のアイテムを出力し、
前記負荷を決定することは、インターバルの間に、該１つのリーダによって出力されたアイテムの量を決定することを包含する、請求項８に記載の方法。
【請求項１３】
前記複数のアプライアンスのうちの別の１つのアプライアンスから、前記１つのリーダをサービスするためのルールを得ることをさらに包含する、請求項８に記載の方法。
【請求項１４】
請求項８に記載の方法を実行するための命令のインディシアを備える、メモリデバイス。
【請求項１５】
ネットワークに結合された１つのアプライアンスによって実行される方法であって、
該ネットワークは、複数のタグと、該タグを読み取る複数のリーダと、該１つのアプライアンスを含む複数のアプライアンスとを備え、
該複数のアプライアンスは、サーバに情報を提供するための該複数のリーダをサービスするために、該ネットワークに結合され、該サーバは、該情報に従って、アプリケーションプログラムを実行するためのものであって、該方法は、
該複数のタグのうちの複数のタグと、該複数のリーダのうちの複数のリーダとの通信の性能指数を決定することと、
該情報に従って、該複数のタグとの通信を調整するために、該複数のリーダのうちの１つのリーダに対して情報を送信することと
を包含する、方法。
【請求項１６】
前記性能指数を決定することは、前記複数のリーダの各リーダから第二の性能指数を受信することを包含する、請求項１５に記載の方法。
【請求項１７】
前記第二の性能指数は、不適切に受信したメッセージ量に従って決定される、請求項１６に記載の方法。
【請求項１８】
前記第二の性能指数は、メッセージ量の信号強度に従って決定される、請求項１６に記載の方法。
【請求項１９】
前記第二の性能指数は、不適切に受信されたメッセージを受信するのに要した時間に従って決定される、請求項１６に記載の方法。
【請求項２０】
前記第二の性能指数は、メッセージが全く受信されなかったときのノイズ振幅に従って決定される、請求項１６に記載の方法。
【請求項２１】
前記ネットワークは、前記１つのアプライアンスに応答する１つのアクチュエータをさらに備え、
前記方法は、前記複数のリーダのうちの１つのリーダと、前記複数のタグとの間の通信を調整するように、該１つのアクチュエータを動作することをさらに包含する、請求項１５に記載の方法。
【請求項２２】
前記ネットワークは、１つのセンサをさらに備え、前記性能指数の決定は、該１つのセンサの読み取りに従う、請求項１５に記載の方法。
【請求項２３】
前記１つのセンサは、１つのスペクトル分析器を備える、請求項２２に記載の方法。
【請求項２４】
請求項１５に記載の方法を実行するための命令のインディシアを備える、メモリデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、自動識別およびデータ収集に関する。
【背景技術】
【０００２】
従来の自動識別システムは、データ収集機能を追加で実行し得る。このようなシステムは、典型的には、タグ、リーダ、ならびに、一般にタグを付けられたアイテム、人間および動物の位置および動きをモニタリングするためのアプリケーションプログラムを実行するコンピュータシステムを含む。これらシステムは、個人的、商業的、政府、教育および科学分野での幅広い用途を有する。例えば、いくつか例を挙げると、在庫管理（例えば、車の部品、郵便物、荷物）、販売地点での取引把握(例えば、食料品店、需要計器）、製品のライフサイクル情報（例えば、トラックのタイヤ）の把握、当局者による設備や施設へのアクセス管理、ならびに、車両、家畜、囚人、兵隊、子供および従業員のモニタリングなどを含む。自動識別システムからの情報および統計は、ビジネスでの意思決定（例えば、処理能力計画、未収保険金、ビジネス評価および、サプライチェーン改善）を支援し得る。
【０００３】
リーダと、アプリケーションプログラムを実行するためにリーダに結合されたコンピュータシステムとは、投資コストで設置された機能性を代表する。その投資コストは、システムによって提供される自動識別およびデータの価値によって、一般に、時間経過とともに償却される。自動識別および／またはデータ収集に対する新たなアプリケーションが見つかったときに、この設置された投資を再利用することは、望ましい。一つのアプローチは、リーダとコンピュータシステムをグレードアップして、追加タイプのタグを読み取り、追加タイプの情報を処理することである。典型的には、ソフトウェアをグレードアップすることは、ハードウェアをグレードアップするよりも費用は掛からない。
【０００４】
残念ながら、自動識別システムにおけるソフトウェアは、設計、展開、部分的グレードアップは難しい。なぜなら、システム機能に基本的な決定は、一般的にアプリケーションプログラムの中でなされるからである。例えば、アプリケーションプログラムに生データを報告するリーダには、アプリケーションプログラム上での生データ解析の負担が掛かり、施設内でのリーダの数が増えるにつれて、生データの量が増えて、おそらく質が低下する。生データ通信は、リーダとアプリケーションプログラムを実行するコンピュータシステムとの間の有線および無線ネットワークを含む通信媒体の容量を消費し得る点で不利である。タグの位置の基本概念は、典型的には、タグのアイデンティティ、そのタグを報告するリーダのアイデンティティ、および、そのリーダの挿入された位置に基づくアプリケーションプログラム内で決定される。別の基本概念は、タグの近傍の設備を制御するために、アプリケーションプログラムによって従来的に実行される。その結果、そのシステムの上部層で動作するアプリケーションプログラムに、これらアプリケーションにユニークなこれら機能（例えば、在庫補充閾値）を保存する必要性と、幾つかのアプリケーション（例えば、タグ付きアイテムの位置の報告）のうちの１つ以上のアプリケーションで有用であり得るシステム機能の下部層で実行する必要性とが相変わらず残っている。
【０００５】
自動識別システムは、さらに多くのアイテムをカバーするように拡がっているので、既存の設備およびソフトウェアの再構成を最低限に抑えて、設備およびソフトウェアを追加できるようにすることが望ましい。また、同じロケーション内で新たなアプリケーションが一体となるようにして、既存の投資機材の再構成を最低限に抑えて、多様なリーダおよび多様なアプリケーションプログラムを追加することは望ましい。例えば、雇用主のシステムは、当初は、従業員による施設へのアクセスを管理するものであり得る。後に、雇用主は、オペレーションリサーチおよび／または資本設備利用調査を実行したいと、要望し得る。このような追加アプリケーションは、多様なタグ、多様なリーダ、および、追加アプリケーションプログラムリソースを必要とし得る。追加投資を最小限に抑えて、これらの追加アプリケーションプログラムを動作可能にすることは、望ましい。
【０００６】
本発明の様々な局面に従うシステムおよび方法がなければ、信頼性と拡張性とを兼ね備えた自動識別およびデータ収集システムの普及と集成とは、なされないであろう。従って、このようなシステムのコストでは、より大きなスケールメリットを反映しないであろう。大衆へのメリットも、商品の低コスト化による物質的メリット、（例えば、シュリンクのすくないことによる）、サービスの低コスト化（例えば、輸送物の配達）、および、他のメリット（例えば、非効率なセキュリティによる損害リスクの低下）を含んで、実現されない。
【発明の開示】
【課題を解決するための手段】
【０００７】
（発明の概要）
本発明の様々な局面に従うインプリメンテーションにおいて、方法は、ネットワークに結合されたサーバによって実行され得る。ネットワークは、複数のタグと、該複数のタグを読み取る複数のリーダと、情報を提供するために該複数のリーダをサービスする複数のアプライアンスと、該複数のアプライアンスに応答する複数のアクチュエータとを備える。該サーバは、該情報に従って、アプリケーションプログラムを実行する。該方法は、（ａ）該ネットワークを介して、該複数のアプライアンスのうちの１つのアプライアンスによって使用されるルールを送信することであって、該ルールは、基準を特定する主部と、該基準に合致されることに応答してアクションを特定する述部とを有する、ことと、（ｂ）該ネットワークを介して、該複数のタグのうちの特定のタグの識別を受信することであって、該１つのアプライアンスは、該特定のタグに対して、該ルールを適用させる、こととを任意の順序で含む。該ルールを適用することは、（１）該１つのタグに関して該複数のリーダのうちの特定のリーダからの情報に従う該基準に合致することと、物理的位置を究明することとであって、該ルールの該主部は、該特定のリーダを識別するのに不十分である、ことと、（２）該アクションを達成するために、該位置に従う該複数のアクチュエータのうちの特定のアクチュエータをアクティブにすることであって、該ルールの該述部は、該特定のアクチュエータを識別するのに不十分である、こととを任意の順序で含む。
【０００８】
本発明の様々な局面の別のインプリメンテーションにおいて、方法は、ネットワークに結合された１つのアプライアンスによって実行され得る。該ネットワークは、複数のタグと、該複数のタグを読み取る複数のリーダと、複数のアプライアンスとを含む。該複数のアプライアンスは、該ネットワークに結合されたサーバに情報を提供するために該複数のリーダをサービスする。該サーバは、該情報に従ってアプリケーションプログラムを実行する。該方法は、（ａ）該１つのアプライアンスによってサービスするために割り当てられていない容量を決定することと、（ｂ）該複数のリーダのうちの１つのリーダをサービスするために、負荷を決定することと、（ｃ）該負荷が、該割り当てられていない容量内にフィットする場合、該複数のアプライアンスのうちの他のアプライアンスのために、該１つのアプライアンスが該１つのリーダにサービスできる指示を含む信号を該ネットワークに提供することとを任意の順序で含む。
【０００９】
本発明の様々な局面のまた別のインプリメンテーションにおいて、方法は、ネットワークに結合された１つのアプライアンスによって実行され得る。該ネットワークは、複数のタグと、該複数のタグを読み取る複数のリーダと、複数のアプライアンスとを含む。該複数のアプライアンスは、サーバに情報を提供するための該複数のリーダをサービスする。該サーバは、該情報に従って、アプリケーションプログラムを実行する。該方法は、（ａ）該複数のタグと該複数のリーダとの通信の性能指数を決定することとと、（ｂ）該情報に従って、該複数のタグとの通信を調整するために、１つのリーダに対して情報を送信することとを任意の順序で含む。
【００１０】
本発明の実施形態は、図面を参照しながら、以下により詳細に記載される。ここで、同様の符号は、同様の要素を示す。
【発明を実施するための最良の形態】
【００１１】
（好ましい実施形態の詳細な説明）
本発明の様々な局面に従う例示的インプリメンテーションでのシステムは、上記で議論した問題解決するためのモニタリング、トラッキング、および／または、管理の改善を提供する。モニタリング、トラッキングおよび管理は、任意の従来の自動識別技術、任意の従来の開ループまたは閉ループ制御技術を使用し得るし、また、さらに、任意の従来のデータ収集、解析、ストレージ、および、報告技術を含み得る。このようなシステムの機能は、各層には１つ以上のエンジンが含む２つ以上の層に分かれ得る。
【００１２】
エンジンは、任意の従来の集積回路、回路モジュール、プロセッサ、メモリデバイス（例えば、半導体、磁気、および、光学データストレージサブシステム）、ファームウェア、および／またはソフトウェアを組み合わせてインプリメントされ得る。層間のデータ通信には、任意の従来の通信技術を含み、その通信技術には、プロセッサおよびプロセスと協働するためのポイントツーポイント、バス、および、ネットワークエンジンの技術を含み得る。バスおよびネットワークの技術は、一般に、一対一、一対多、多対一、および、多対多の関係の任意の混合に対するリンクを介して、通信を提供する。リンクは、物理的および／または論理的であり得るし、また、一時的（例えば、必要に応じて、または、シェアされて）または永久的（例えば、専用で）でもあり得る。
【００１３】
論理リンクは、少なくとも２つのソフトウェアコンポーネントの間でインプリメントされ得る。本明細書において、コンポーネントとは、プロセスおよびデータのモジュラーパッケージ（例えば、オブジェクト指向パラダイムにおけるクラスとオブジェクト）を意味する。コンポーネントは、一般に、そのコンポーネントが他のコンポーネントによって使用されるためのインターフェースを形成するプロセス（例えば、露出プロセス（ｅｘｐｏｓｅｄ  ｐｒｏｃｅｓｓ）を含む。コンポーネントのデータは、１つ以上の露出プロセスを介して、（少なくとも当初は）アクセスされる。このようにして、データおよび非露出プロセスは、コンポーネント内にカプセル化されるべきであると考えられている。
【００１４】
カプセル化は、一般に、コンポーネントとエンジンとの間の機能的独立を提供する。エンジンを独立して使用することによって、拡張性および信頼性が改善する。例えば、第一のエンジンが、論理リンクを介して、第二のエンジンと通信するとき、双方のエンジンは、実際には、任意の数のパラレルエンジン（例えば、高スループット）および冗長エンジン（例えば、投票による故障検アイデンティティ動フェールオーバ）とともに、インプリメントされ得る。例えば、第一のエンジンの能力増強または信頼性改善は、第二のエンジンを何ら変化させることなく、追加エンジン（例えば、パラレルまたは冗長）をインストールすることを含み得る。
【００１５】
本発明の様々な局面に従うシステムは、システムのアプリケーション層より下の層で、位置情報をカプセル化する。
【００１６】
例えば、図１〜図４のシステム１００は、アプリケーション層、アプライアンス層、制御層、および、識別層を含む。アプリケーション層は、アプリケーション（例えば、在庫管理）にユニークな機能を実行する１つ以上のエンジンを含む。例えば、システム１００のアプリケーション層は、一式のサーバ１０１上でインプリメントされる１つのエンジンを含み、各サーバは、データストアのコピーにアクセスしてアプリケーションプログラムのコピーを実行する。アプリケーション層１０１は、データストア１１１にアクセスして、アプリケーションプログラム１１２を実行するサーバ１０５と、データストア１１６にアクセスして、アプリケーションプログラム１１７を実行するサーバ１０６とを含む。サーバ１０５および１０６は、上記で議論したようなパラレルおよび／または冗長な方法で、アプリケーション機能を実行するために協働する任意の数のサーバを代表する。各サーバは、下部層エンジンを含むネットワーク１０２を介するアクセスを有する。
【００１７】
ネットワーク１０２は、アプリケーションエンジンと下部層エンジンとの間の論理リンクするための媒体１２０を含む。媒体１２０のリンクは、例えば、サーバとアプライアンスとの間の多対多の関係に対し、従来の発見、ネーミング、および、セッション技術でインプリメントされ得る。一つのインプリメンテーションおよび／または動作モードにおいて、サーバは、サーバ／クライアントモダリティ内のアプライアンスと関係する。他のインプリメンテーションおよび／または動作モードにおいて、サーバとアプライアンスとは、ピアとして関係する。
【００１８】
アプライアンス層は、１つ以上のエンジンを含む。このエンジンは、拡張性を改善するために、アプリケーション層から切り離されたサービスと、多種多様なリーダ、アクチュエータおよびセンサとの互換性をインプリメントするためにモニタリング・制御層から切り離されたサービスとを実行するためである。例えば、システム１００のアプライアンス層は、一式のアプライアンス１２１上でインプリメントされる１つのエンジンを含み、各アプライアンスは、データストアのコピーにアクセスしてサービスプロセスのコピーを実行する。アプライアンス層１２１は、データストア１３１にアクセスしてサービスプロセス１３２を実行するアプライアンス１２５と、データストア１３６にアクセスしてサービスプロセス１３７を実行するアプライアンス１２６とを含む。アプライアンス１２５および１２６は、上記で議論したようなパラレルおよび／または冗長な方法で、アプライアンス機能を実行するために協働する任意の数のアプライアンスを代表する。各アプライアンスは、下部層エンジンを含むネットワーク１２２を介するアクセスを有する。
【００１９】
ネットワーク１２２は、アプライアンスエンジンと下部層エンジンとの間を論理リンクする媒体１４０を含む。媒体１４０のリンクは、例えば、アプライアンスとリーダ、アクチュエータ、および／またはセンサとの間での多対多の関係に対し、従来の発見、ネーミング、および、セッション技術でインプリメントされ得る。一つのインプリメンテーションおよび／または動作モードにおいて、アプライアンスは、サーバ／クライアントモダリティ内のリーダ、アクチュエータおよび／またはセンサと関係する。他のインプリメンテーションおよび／または動作モードにおいて、アプライアンス、リーダ、アクチュエータおよびセンサは、ピアとして関係する。
【００２０】
本発明の様々な局面に従うと、１つのアプリケーションエンジンは、１つのアプライアンスエンジンに、１つ以上のルールを送信する。ルールは、データを特定し、例えば、従来の認可（ｓｕｂｓｃｒｉｐｔｉｏｎ）によって、アプリケーションエンジンを利用可能にする。ルールは、主部と述部の点からなる条件認可を特定し得る。主部は、基準（例えば、１つ以上の従来イベントの論理組み合わせ）を特定し得る。述部は、実行されるべき（あるいは、優先度に従う実行でスケジュールされるべき）アクション（例えば、１つ以上の従来のアラート）を特定し得る。ルールは、ルールおよび／または基準（例えば、データが利用可能になる基準と関連するとき）と関連する優先度に従って評価され得る。幾つかのアプライアンスのうちのどれが特定のルールで格納および／または作動するべきかの指定は、典型的には、アプリケーションエンジンの制御の範囲外である。一つのインプリメンテーションにおいて、（プロセス１３２に対する）ルールストア１３３および（プロセス１３７に対する）ルールストア１３８は、同一のコピーとして維持される。
【００２１】
アプライアンスエンジンは、タグ、リーダ、アクチュエータおよびセンサの位置を記述する正確な位置情報を決定し、モニタリングし、（例えば、データストア１３１および１３６内に）維持する。位置または位置の変化の決定は、イベントを引き起こし得る。位置情報は、絶対的なこと（例えば、ビルの１つの階の領域内）も、他のタグ、リーダ、アクチュエータおよび／またはセンサと相対的なこと（例えば、所定の範囲内で、例えば、２メートル）もあり得る。アプライアンスエンジンは、位置情報をカプセル化するので、位置情報は、アプリケーションエンジンを変化させることなく、様々な方法で決定され得る。例えば、固定位置のテーブルは、アプリケーションエンジンによってアクセスされ、リーダの位置を決定し得る。あるいは、リーダは、その位置（例えば、固定設備に構成された位置、あるいは、リーダと位置をともにするグローバルポジショニングシステムへのアクセスを用いて決定されるような位置）を報告し得る。
【００２２】
その結果、ルールは、絶対位置または相対位置を参照して、タグ、リーダ、アクチュエータおよび／またはセンサを参照し得る。例えば、ルールは、絶対参照を本社ビルの２階にあるリーダとし得るし、あるいは、相対参照を用いて、そのようなリーダの範囲（例えば、２メートル）内にあるアクチュエータ、または、そのようなリーダへのユニークな距離（例えば、最も近い）にあるアクチュエータを参照し得る。タグ、リーダ、アクチュエータまたはセンサを位置とともに参照して、その実際のタグ、リーダ、アクチュエータまたはセンサは、パラレルおよび／または冗長な物理的タグ、リーダ、アクチュエータまたはセンサとともにインプリメントされ、上記で議論した拡張性および信頼性の恩恵を受け得る。アプライアンスエンジン１２１は、何らアプリケーションエンジン１０１を変化させることなく、多様性（例えば、能力増強または既存システムの統合）の導入を可能として、多様なリーダ、アクチュエータおよびセンサを表し得る。
【００２３】
モニタリング・制御層は、物理的に分布されたエンジンを含む。これは、タグ付きアイテム（例えば、物体、人間、車両、動物）の存在および動きに対して、物理的領域のモニタリングと、領域内の物理的管理の実行（例えば、ドアの鍵開け、監視カメラの方向向け、材料取り扱いの実行、販売、ヒューマンインターフェースへの信号提供）と、領域からの物理的測定（例えば、温度、交通量、音声監視、映像監視）の収集とを行うためである。アクチュエータおよびセンサは、任意の従来のオペレータインターフェース（例えば、キャッシュレジスタ、グラフィカルユーザインターフェース、音声認識、電話応答、テレビ会議）をインプリメントするために、組み合わせられ得る。例えば、システム１００のモニタリング・制御層は、１つ以上のリーダ１４１、１つ以上のアクチュエータ１４２、および、１つ以上のセンサ１４３を含む。リーダ１４１は、タグＩ／Ｏプロセス１５１を実行するリーダ１４４、および、タグＩ／Ｏプロセス１５２を実行するリーダ１４５を含む。リーダ１４１は、機能的に多様または同一であり得、一体的配置され得るか、あるいは、１つ以上の領域全体に物理的に分布され得る。アクチュエータ１４２は、アクチュエータ１７６およびアクチュエータ１７７を含み、これらは、機能的に多様または同一であり得、一体的配置され得るか、あるいは、１つ以上の領域全体に物理的に分布され得る。センサ１４３は、センサ１８２およびセンサ１８３を含み、これらは、機能的に多様または同一であり得、一体的配置され得るか、あるいは、１つ以上の領域全体に物理的に分布され得る。１つ以上のリーダ、アクチュエータおよびセンサは、アプリケーション用インターフェースをインプリメントするために、一体的配置され得る。例えば、施設へのアクセスに対し、バッジリーダ、ドアロックアクチュエータ、ビデオ監視センサ、および、音声インターフェース（マイクおよびスピーカ）は、すぐ近接して、インプリメントされ得る。上記で議論したように、リーダ１４１、アクチュエータ１４２、および、センサ１４３は、モニタリングおよび管理機能を実行するために、パラレルおよび／または冗長的に協働する任意の数のユニットを代表する。各リーダは、下部層エンジンを含むネットワーク１６２へのアクセスを有する。
【００２４】
ネットワーク１６２は、リーダ１４１とシステム１００の識別層との間の論理リンクするための媒体１７０を含む。媒体１７０のリンクは、タグ１７１と互換性ある任意の方法でインプリメントされ得る。リンクは、例えば、リーダとタグとの間の多対多の関係において、発見、ネーミング、セッション技術を含み得る。リーダとタグとは、任意の従来の方法で通信し得る。リーダは、通信を開始し、および／または、タグに位置情報を提供するために、タグを刺激する送信機を含み得る。これらリーダは、典型的には、受信機を有する他のリーダとともに使用され、自動識別およびタグからのデータ収集を完結する。リーダは、タグからの信号を１回以上で検出するための１つ以上のチャネルをスキャンする受信機と、タグに質問する送信機とを含み得る。
【００２５】
識別層は、タグと、原始的な自動識別およびデータ収集機能を実行するデバイスとを含む。タグ１７１は、機能的に多様または同一であり得るタグ１７２およびタグ１７３を含む。タグ１７２およびタグ１７３は、一体的配置し、あるいは、物理的に分布された任意の数のタグを代表する。タグは、静止するか、および／または、移動するかであり得る。タグは、参照信号、識別信号を提供し得、および／または、タグに格納された情報を送信および受信し得る。タグは、センサおよび／またはアクチュエータを含み得る。様々な実施形態において、媒体１７０を介する通信は、従来の無線周波数識別（ＲＦＩＤ）、従来のスマートカードインターフェース（例えば、接触）、および、スキャナインターフェース（例えば、磁気帯およびバーコード）を含む。タグは、信号発信（例えば、赤外線）、反射（例えば、後方散乱）または信号吸収を行い、情報を伝え得る。
【００２６】
識別、モニタ、追跡および／または管理されるべき物体、人間および動物は、タグと物理的に関連し得る（例えば、物体、人間または動物に付着されて）。別のインプリメンテーションにおいて、物体、人間および動物は、リーダと関連し得る（例えば、物体、人間または動物の上または中に付着または携帯されて）。この後者のインプリメンテーションにおいて、情報層は、上記で議論されたような機能を有するリーダ（図示せず）を含む。
【００２７】
このアプライアンスの動作は、リーダ、アクチュエータ、センサおよびタグの全ての局面をカプセル化する。その結果、このアプライアンスによって実行されるサービスは、アプリケーションプログラムをほとんどまたは全く変化させることなく、システムにアプライアンスを主として追加することで、拡張でき、より信頼性を高くできる。多様なタグおよび多様なリーダは、アプリケーションプログラムをほとんどまたは全く変化させることなく、機能性を追加することによって、サポートされ得る。アプリケーションプログラム機能も、また、拡張可能であり、新たなアプリケーションプログラムは、ネットワーク、アプライアンス、リーダ、アクチュエータ、センサおよびタグをほとんどまたは全く変化させることなく、追加され得る。
【００２８】
位置情報は、上記で議論したようなアプリケーション層の下にカプセル化される。識別層からの任意の他の情報は、例えば、タグ識別、タグ通信プロトコルと状態および信号強度、ならびに、（もし、あれば）タグメモリコンテンツを含む。その結果、物体に対する情報層の機能は、その物体と関連するパラレルおよび／または冗長タグ（例えば、多様なタグ）を用いて、拡張性と信頼性を兼ね備える方法で、インプリメントされ得る。他のインプリメンテーションにおいて、物体に対する情報層機能は、パラレルおよび／または冗長リーダのみに、あるいは、タグとともに含まれ得る。
【００２９】
本発明の様々な局面に従うと、システム１００は、アプリケーション層１０１に気付かれない方法で、アプライアンス１２１の間で負荷バランスを実行する。一つのインプリメンテーションにおいて、各アプライアンスは、任意のリーダ、アクチュエータまたはセンサをサービスする責任能力が変化すると、アプライアンス（例えば、任意のサブセットまたは全てのアプライアンス）間のサービス機能をより均一な分布になり得るかどうかを判断し、このような変化を達成するために、アプライアンス間の通信を開始して、他の変化を開始し得る他のアプライアンスと協働する。
【００３０】
例えば、アプライアンス１２５において、サービスプロセス１３２は、データストア１３１と協働し、負荷バランスに対する解析および委任を達成することで、媒体１４０（または１２０）を介して他のアプライアンスと協働する。サービスプロセス１３２（および１３７）は、図２の負荷バランスプロセス２００を含み得る。データストア１３１（および１３６）は、図３のデータ構造３００を含み得る。プロセス２００は、自身のリーダの負荷を評価するプロセス２０２、自身の容量を計算するプロセス２０６、他の容量を要求するプロセス２１０、他の要求に返答するプロセス２１２、委任を計画するプロセス２１４、および、委任するプロセス２１６を含む。各プロセスは、十分なデータが利用可能（例えば、マルチタスク環境）であるときは、いつも実行され得る。
【００３１】
自身のリーダの負荷を評価するプロセス２０２は、リーダをアプライアンス１２５からサービスする容量を記述する容量値と比較して、適切な測定単位で、負荷値を推定する。負荷値は、所定の将来の時間インターバル（例えば、次の１０分の間）に生じると期待される負荷の予測を代表する。測定の適切な単位は、一般に等しい複雑さ（または長さ）のメッセージに対して、１秒当たりのメッセージ（またはパッケージ）であり得る。平均値（例えば、二乗平均平方根の平均）が、使用され得る。また、移動平均のような履歴データも使用され得る。負荷値は、過去の適切なインターバル（例えば、比較可能なインターバルで、１時間前、１日前または１週間前）にわたって体験された負荷に基づき得る。一つのインプリメンテーションにおいて、ＲＭＳおよびピーク値は双方とも、履歴データから計算される。履歴データは、各メッセージが受信時間（または待ち時間）と関連づけられるメッセージ待ち行列（ｍｅｓｓａｇｅ  ｑｕｅｕｅ）の検討から得られ得る。負荷値は、アプライアンス１２５によってサービスされる各リーダと関連して、（例えば、リーダストア２０４）に格納され得る。別のインプリメンテーションにおいて、アクチュエータおよびセンサに対する負荷値は、同様な方法で、推定され、格納される。
【００３２】
自身の容量を計算するプロセス２０６は、上記で議論した負荷値を比較するのに適した測定単位で容量値を推定する。容量値は、所定の将来の時間インターバル（例えば、次の１０分）内のリーダからのメッセージを処理するのに利用可能であるべきと期待される容量の予測を代表する。適切な測定単位は、一般的に等しい複雑さ（または長さ）のメッセージに対する１秒当たりのメッセージ（またはパケット）であり得る。平均値（例えば、二乗平均平方根の平均）が、使用され得る。移動平均のような履歴データも使用され得る。容量値は、過去の適切なインターバル（例えば、比較可能なインターバルで、１時間前、１日前または１週間前）にわたって消費された容量に基づき得る。一つのインプリメンテーションにおいて、ＲＭＳおよびピーク値は双方とも、履歴データから計算される。履歴データは、各ログされた待ち行列脱出（ｌｏｇｇｅｄ  ｄｅｑｕｅｕｅｉｎｇ）動作が完了時間と関連づけられるメッセージの待ち行列脱出ログ（ｍｅｓｓａｇｅ  ｄｅｑｕｅｕｅｉｎｇ  ｌｏｇ）の検討から得られ得る。容量値は、幾つかのアプライアンスそれぞれの割り当てられない容量の解析のために各アプライアンスと関連して、各アプライアンスで格納され得る。割り当てられていない容量は、アプライアンス１２５によってサービスされる各リーダから推定された負荷を担うので、減少された推定容量から決定され得る。推定負荷は、リーダストア２０４から読み出され得る。他のインプリメンテーションにおいて、アクチュエータおよびセンサにサービスに対する容量値は、同様な方法で、推定され、格納される。
【００３３】
他の容量を要求するプロセス２１０は、他のアプライアンス（例えば、１２６）と通信し、上記に議論したように、要求に応答して、各推定容量をアプライアンス２０８に記録する。プロセス２１０は、要求されたが、（例えば、他のアプライアンスがあまりにも応答するのにビジーであったために）時宜悪く提供された割り当てのない容量に対して、アプライアンスストア２０８にデフォルトまたはゼロエントリをし得る。プロセス２１０は、また、他のアプライアンスにアサインされたリーダ（アクチュエータおよびセンサ）に対する他の推定負荷も要求し得る。結果は、リーダストア２０４（アクチュエータおよびセンサ）に格納され得る。
【００３４】
他の要求に返答するプロセス２１２は、他のアプライアンスに容量値を報告する。プロセス２１２は、アプリケーションストア２０８を読み取り、要求に応答して、（向けられた、または、放送された）適切なメッセージを準備し得る。別のインプリメンテーションにおいて、プロセス２１２は、ストア２０８からの推定容量値を定期的に放送する。放送と放送の間の期間における様々な値は、期待されるビジーな時関より前に、より多い頻度で放送することによって使用され得る。
【００３５】
委任を計画するプロセス２１４は、各アプライアンスの割り当てられない容量と、（例えば、アプライアンス１２５にローカルな）リーダによって示された負荷とに基づいて負荷バランス計画を決定する。従来の負荷バランス戦略も使用され得る。全てのアプライアンスは、負荷バランス戦略の同じまたは互換性ある部分から動作していることを確保するため、アプライアンス１２５は、プロセス２１４が決定した計画を識別および／または記述する情報を放送し得る。アプライアンス１２５によるアプライアンス１２５のためのバランス合わせは、このアプライアンス（１２５）に必要と期待される推定総ピーク負荷および／または推定総ＲＭＳ負荷に応じて、各アプライアンス内に割り当てられない容量を残すという目的で計画され得る。一連の計画された委任のうちの一部の委任は、負荷をさらにアンバランスにするように思われ得る。
【００３６】
委任するプロセス２１６は、第一のアプライアンスから第二のアプライアンスへ、一切メッセージを失うことなく、完全なリーダの移行を確実にする。一つのインプリメンテーションにおいて、リーダは、受信タグ情報のログを保持し、アプライアンスによって、そのログの一部を処分するようにという命令を受けると、そのログの一部を処分する。この方法で、タグ情報は、今や不良アプライアンスに元々送信された情報は、動作するアプライアンスに再送信され得る。委任を達成するアプライアンス間での協働には、リーダから第一のアプライアンスに送信されたデータの認可を停止して、リーダから第二のアプライアンスへのデータを認可開始することを含む。
【００３７】
別のインプリメンテーションにおいて、不良アプライアンスは、検出され得る。不良アプライアンスの発見に応答して、適切な容量を有するアプライアンスは、リーダ（アクチュエータまたはセンサ）を、その不良デバイスからその動作するアプライアンス自身に再びアサインする。
【００３８】
本発明の様々な局面に従うデータ構造は、上記で議論したように、負荷バランスのための解析および委任を含む任意のプロセスによって言及され得る。データベースは、同じ構造を有する記録のリスト（例えば、フィールドネームによって指示される同じ目的のための値）を含み得る。データ構造（例えば、記録）の任意の２つ以上の値は、その値同士の関連（例えば、関係）をインプリメントして、タプル（ｔｕｐｌｅ）を備える。例えば、任意のアプライアンス（１２５）によって使用する図３Ａ〜図３Ｆのデータベース３００は、リーダストア２０４およびアプライアンスストア２０８をインプリメントして、また、データストア１３１内に格納し、任意の他のデータストア（例えば、１３７）に映し出され得る。データベース３００は、アプライアンス３０２に対する記録のリスト、リーダ３１２、アクチュエータ３１４、センサ３１６、および、位置３１８を含む。記録（３０３〜３０８）のリスト間の各関係は、各リストからの鍵を関連付ける相互参照リストとして、インプリメントされ得る。このような相互参照リストそれぞれは、必要に応じて、多対多の関係でサポートされる。
【００３９】
それぞれのリストに索引付きアクセスする鍵として機能し得る各記録にユニークな値は、ＩＤ（識別子（ｉｄｅｎｔｉｆｉｅｒ）の略）と呼ばれ、例えば、アプライアンスＩＤ、リーダＩＤ、アクチュエータＩＤ、センサＩＤ、および、位置ＩＤが挙げられる。記述フィールドは、特定の記述的情報に対し、任意の数のフィールドを含み得る。例えば、記述は、リスト化された情報を分類するために、「タイプ」値を含み得る。ネットワークＩＤは、媒体１４０を介するネットワーク通信内で使用されるユニークな識別子である。アプライアンスと他のアプライアンス、リーダ、アクチュエータおよびセンサとの互いの通信は、ユニークなネットワークアドレスによって、容易になされる。リスト化された位置値は、リーダ、アクチュエータ、または、センサと関連する従来のグローバルポジショニングシステム信号に対する受信機から決定され得る。
【００４０】
システム１００は、情報層１６２とリーダ１４１との間で、動的に通信を制御し得ることで、従来の自動識別システムによって提供された信頼性より高い信頼性を提供し得る。例えば、１つ以上のアプライアンス１２１によって実行されたサービスプロセス（例えば、１３２）は、通信に対する調整を計画し、インプリメントする図４のプロセス４００を含み得る。リーダ１４１および／またはセンサ１４３は、情報を提供して（４０２、４０４）、通信の性能指数または量を決定し得る（４０６）。調整は、計画され得る（４０８）。計画は、媒体１７０を介して調整するように、リーダへ命令すること（４１０）、および／または、媒体１７０を介する通信に変化を及ぼすアクチュエータ１４２を動作すること（４１２）によって、インプリメントされ得る。
【００４１】
一つのインプリメンテーションにおいて、１つ以上のリーダ１４１は、媒体１７０を介して通信を解析し、１つ以上のアプライアンスに統計を報告する。アプライアンスは、１つ以上のリーダからのこのような報告を受信することを認可し得る。統計は、所定の期間（例えば、過去５分）の割合として、ネットワーク利用の指標を含み得る。百分率には、信号強度の範囲内に信号がないために受信をしなかった時間の割合、信号強度および精度の適切な範囲内で受信した時間の割合、適切な信号強度で受信したが、適切な精度で受信しなかった時間の割合を含み得る。メッセージは、カウントされ、比率は、計算され、報告され得る。所定の期間（例えば、５分）に対し、適切な精度で受信されたメッセージの量は、受信されるべく試みられたメッセージ全ての量（例えば、不完全なメッセージおよび不正確なメッセージを含む）によって、除算される。ノイズフロア（ｎｏｉｓｅ  ｆｌｏｏｒ）測定は、媒体にメッセージがおそらく全くないと、リーダが判断したときに行われ、報告され得る。ノイズフロア測定は、媒体（あるいは、所定のチャネル）にメッセージがおそらく全くないことを、アプライアンスがセンサ（例えば、スペクトル分析器）から判断したときに行われ、報告され得る。適切な精度で受信された信号の信号強度の範囲は、決定され、報告され得る。
【００４２】
媒体１７０を介して通信改善に影響を及ぼし得るリーダへのコマンドには、送信機変調、メッセージ長、メッセージのタイミング、送信チャネル、および／または、送信信号強度を変化するコマンドを含み得る。これは、特定のビジーまたはノイズの多い周波数範囲または期間を避けるためである。また、命令は、送信構成要素（リーダおよび／またはタグ）間における協働をより適切にするように影響を及ぼし得る。これは、媒体１７０の使用を競合する送信構成要素の総数をより適切にし得るように見直されたタイミングパラメータを使ってである。（タグまたはリーダ内にある）送信機および受信機が不良であれば、リセットまたは一時的機能停止されるように、命令され得る。
【００４３】
媒体１７０を介して通信改善に影響を及ぼし得るアクチュエータは、直接および／または間接のアクションを含み得る。１つ以上のリーダに電力を供給する電源は、送信機および受信機をリセットまたは一時的に機能停止にするために、サイクルされ得る。タグは、送信を介して電力を受信するとき、同様にして、アクチュエータは、タグに電力をサイクルし得るし、あるいは、一時的にタグを機能停止にし得る。リーダに対するアンテナスイッチおよびアンテナ位置決めサブシステムは、アクチュエータによって動作され得る。他の適切な状況において、移動する物体、人間または動物は、通信と妨害し得ることは、試行錯誤によって、あるいは、解析および／またはテストによって決定され得る。アクチュエータは、その物体、人間または動物が動くように、あるいは、それを動かすように動作（例えば、適切な位置で音声メッセージによる放送）され得る。
【００４４】
以上の記載は、本発明の好ましい実施形態を議論するが、これら実施形態は、請求項で定義される本発明の範囲から逸脱することなく、変更または改変され得る。説明を明確にするために、幾つかの特定の実施形態が記載されてきたが、本発明の範囲は、以下に述べる請求項によって、規定されることを意図される。
【図面の簡単な説明】
【００４５】
【図１】図１は、本発明の様々な局面に従う自動識別およびデータ収集システムの機能ブロック図である。
【図２】図２は、図１のシステムで、負荷バランスをとる方法のデータフロー図である。
【図３Ａ】図３Ａは、図１のシステム内に格納されたデータの一部に対する構成要素の関係図である。
【図３Ｂ】図３Ｂは、図１のシステム内に格納されたデータの一部に対する構成要素の関係図である。
【図３Ｃ】図３Ｃは、図１のシステム内に格納されたデータの一部に対する構成要素の関係図である。
【図３Ｄ】図３Ｄは、図１のシステム内に格納されたデータの一部に対する構成要素の関係図である。
【図３Ｅ】図３Ｅは、図１のシステム内に格納されたデータの一部に対する構成要素の関係図である。
【図３Ｆ】図３Ｆは、図１のシステム内に格納されたデータの一部に対する構成要素の関係図である。
【図４】図４は、図１のシステムの信頼性を改善する方法のデータフロー図である。
【図１】
2008506163.tif 000003
【図２】
2008506163.tif 000004
【図３Ａ】
2008506163.tif 000005
【図３Ｂ】
2008506163.tif 000006
【図３Ｃ】
2008506163.tif 000007
【図３Ｄ】
2008506163.tif 000008
【図３Ｅ】
2008506163.tif 000009
【図３Ｆ】
2008506163.tif 000010
【図４】
2008506163.tif 000011