(57)【特許請求の範囲】
【請求項１】
中央ノードおよび複数の個々のノードを含む無線パケットホッピング網を初期化するための方法であって、この方法が：
個々の各ノードに向けて初期化リクエストを発行するステップ；並びに
個々の各ノードが、前記の初期化リクエストに応答して、
自身の完全な接続性を、自身からの所定のレンジ内の他の全てのノードへの自身のノードの接続性を決定することによって、決定するステップ；
対応するノード接続性情報を編集するステップ；および
前記のノード接続性情報を中央ノードに送信するステップを含む、
自己初期化ルーチンを遂行することを特徴とする方法。
【請求項２】
前記の個々のノードが、自身の自己初期化ルーチンの際に、自身の接続性を決定するステップが：
一連のビーコン初期化パケットを送信することにより、一つあるいは複数のビーコン初期化パケットを受信する全てのノードからの応答を要求するステップ、各受信ノードが自身のアドレスを含むビーコン初期化応答パケットを返信するステップ；
他のノードから受信されるビーコン初期化応答パケットのおのおのから受信ノードのアドレスを抽出するステップ、および、これら受信ノードのアドレスのレコードを維持するステップ、
を遂行することを特徴とする請求の範囲１に記載の方法。
【請求項３】
前記の個々のノードが、自身の自己初期化ルーチンの際に、自身の接続性を決定するステップが、さらに、前記の個々のノードが、前記の各受信ノードから受信されるビーコン初期化応答パケットの数をカウントするステップを含むことを特徴とする請求の範囲２に記載の方法。
【請求項４】
前記の各ノードに対する自己初期化ルーチンが、所定の数のビーコン初期化パケットが送信された後に、完了することを特徴とする請求の範囲２に記載の方法。
【請求項５】
前記の個々の各ノードに対する自己初期化ルーチンが、所定の数のビーコン初期化パケットが、以前に応答したことがない任意のノードから応答を受信することなく、送信された後に、完了することを特徴とする請求の範囲４に記載の方法。
【請求項６】
さらに、前記の各ノードによって編集された前記のノード接続性情報の全てが中央ノードによって受信されることを保障するために、ハンドシェーキングルーチンを遂行するステップが含まれることを特徴とする請求の範囲１に記載の方法。
【請求項７】
各ノードが、網内の他のノードからビーコン初期化パケットを受信した場合、各ノードが、前記のビーコン初期化パケットに応答して、ランダムの遅延期間だけ待ち、キャリア感知マルチプルアクセスプロトコルに従って、各ノードと前記の他のノードとの間の通信チャネルの状態を感知した後に、前記のビーコン初期化応答パケットを送ることを試みることを特徴とする請求の範囲２に記載の方法。
【請求項８】
さらに、前記のノード接続性情報に基づいてルーティングテーブルを作成するステップが含まれ、データのパケットが、前記のルーティングテーブルに基づいて決定される経路に沿って、これらパケットを、発信ノードから宛先ノードに向けて、ノードからノードへと、ホッピングすることによって、送信されることを特徴とする請求の範囲１に記載の方法。
【請求項９】
まだ初期化されてないノードへの経路が以前に初期化されたノードから受信された前記のノード接続性情報に基づいて選択されることを特徴とする請求の範囲８に記載の方法。
【請求項１０】
前記のルーティングテーブルが網初期化プロセスと同時に作成およびテストされ、網初期化プロセスが完了した時点で、テスト済みの機能する網が得られることを特徴とする請求の範囲８に記載の方法。
【請求項１１】
無線トランシーバ、および網初期化ルーチンを実行するようにプログラムされたデジタル信号処理回路を含む中央ノード、および
おのおのが、無線トランシーバ、および自己初期化ルーチンを実行するようにプログラムされたデジタル信号処理回路を含む、複数のノードを含む、無線パケットホッピング網であって：
前記の中央ノードが、前記の網初期化ルーチンを、前記の各ノードに向けて、初期化リクエストを発行することによって開始し；
前記の個々の各ノードが、自身からの所定のレンジ内の他の全てのノードへの自身のノードの接続性を決定し、対応するノード接続性情報を編集し、ノード接続性情報を編集した後に、このノード接続性情報を中央ノードに送信することによって、自身の自己初期化ルーチンを、実行することを特徴とする無線網。
【請求項１２】
前記の個々のノードが、自身の自己初期化ルーチンの際に、自身の接続性を：
一連のビーコン初期化パケットを、一つあるいは複数のビーコン初期化パケットを受信する全てのノードからの応答を要求して送信し、各受信ノードが、自身のアドレスを含むビーコン初期化応答パケットを返信し；
他のノードから受信されるビーコン初期化応答パケットのおのおのから受信ノードのアドレスを抽出し、これら受信ノードのアドレスのレコードを維持し；
前記の各受信ノードから受信されるビーコン初期化応答パケットの数をカウントすることによって、決定することを特徴とする請求の範囲１１に記載の無線網。
【請求項１３】
前記の中央ノードがビルディング内のコンピュータから構成され、無線網がビルディングシステム制御網から構成されることを特徴とする請求の範囲１１に記載の無線網。
【請求項１４】
中央ノードおよび複数の個々のノードを含む無線ホッピング網内において使用されるためのノードであって、このノードが：
網内の他のノードに向けてデータを送信あるいはこれからデータを受信するための無線トランシーバ；および
前記のトランシーバによって受信される初期化リクエストに応答して、ノード初期化ルーチンを実行するためのデジタル信号処理回路が含まれ、このノード初期化ルーチンの実行において、ノードからの所定のレンジ内の他の全ての個々のノードへの接続性を定義するノード接続性情報が得られ、これが、トランシーバによって中央ノードに送信され；
前記の所定のレンジが、前記のトランシーバの送信レンジ内の、前記のトランシーバから退廃のないデータを受信することができ、かつ、それから前記のトランシーバが退廃のないデータを受信することが可能な、全ての他のノードを包含することを特徴とするノード。
【請求項１５】
前記のデジタル信号処理回路が、前記の初期化ルーチンを、一連のビーコン初期化パケットを形成し、これを、前記のトランシーバによって、一つあるいは複数の前記のビーコン初期化パケットを受信する全てのノードからビーコン初期化応答パケットをリクエストするために送信し、前記のトランシーバによって受信された各ビーコン初期化応答パケットから受信ノードのアドレスを抽出し、受信ノードアドレスのレコードを編成することによって、遂行することを特徴とする請求の範囲１４に記載のノード。
【発明の詳細な説明】
発明の背景
本発明は、無線パケットホッピング網、このような網内で使用されるためのノード、および、このような網を初期化するための方法に関する。
互いに、および中央ノードと無線リンクを介して通信するノードの網は、一般に、無線網と呼ばれる。このような無線網においては、各ノードは、デジタル信号処理デバイス、および、所定の送信レンジを持つトランシーバ、例えば、ＲＦトランシーバを含む。データは、典型的には、個々のノードと中央ノードの間で、“パケットホッピング”として知られる技術によって通信（伝送）されるが、この技術においては、データの個々のパケットは、中央ノードから宛先ノードに向けて、および、発信ノードから中央ノードに向けて、その網に対する所定の通信プロトコルに従って決定されたルートに沿ってノードからノードへとホップすることによって伝送される。
“パケット”は、典型的には、サイズにおいて、約５〜１０００バイトのレンジを持つデータの論理単位である。一般的に、このようなパケットホッピングデータ通信は、中央ノードの制御下に置かれるが、この中央ノードは、通常は、コンピュータであり、このコンピュータ上にデータ通信制御ソフトウエアが常駐する。パケットホッピングデータ伝送は、ＲＦトランシーバのコストの削減を可能にし、また、政府規制、例えば、合衆国におけるＦＣＣ Part １５要件を満たす。データの各パケットは、パケットがそれから発信される、あるいはそれに向けられるノードのアドレスを含み、各ノードのアドレスは、網が最初に導入されるときに設定される。
このような無線パケットホッピング網は、特に、ビルディングの一つあるいは複数の機能あるいはシステム、例えば、ビルディングの、照明システム、ＨＶＡＣシステム、および／あるいは保安システム、を制御するのに適するが、これは、このような網は、現存の構造に網情報を運ぶための新たな回線を追加することを要求しない低コストの室内トポロジを提供するためである。さらに、このような網は、ビルディング内に据付けられた追加のシステム、例えば、ページングおよびパーソナル通信システム、をサポートすることも可能である。
このようなビルディングの制御網の、中央ノードは、典型的には、プログラマブル中央コントローラ、あるいはビルディング内のコンピュータから構成され、このコンピュータ上には、システム制御ソフトウエアが常駐する。個々のノードは、典型的には、ビルディングを通じて至る所に分布され、制御されるべきビルディングシステムの所定のパラメータの状態／値を監視し、あるいは、ビルディング内のコンピュータによって発行されるコマンドに応答して、必要に応じて、これらパラメータを調節するための制御信号を生成する。ビルディング内のコンピュータは、これら所定のパラメータの状態／値を正しく監視するために、網内の各ノードに向けてデータを送信、あるいは、各ノードからデータを受信し、あるいは、必要に応じて、システムの制御ソフトウエアに従ってこれらパラメータを調節するために、コマンドを発行できることが要求される。
一例としてのビルディングの制御網に、自動あるいは知能、照明制御システムがある。このシステムは、網内のビルディングの各部屋および／あるいはエリアの照明のレベル、占拠（使用）状態、時間の関数としてのエネルギ消費、および／あるいは他の照明パラメータを監視するが、これらビルディングの各部屋および／あるいはエリアに据付けられた照明モジュールは、ＲＦトランシーバにリンクされ、これらトランシーバから網内のノードが構成され、これらが、ビルディング内のコンピュータの制御／管理下に置かれる。
このような知能照明制御システムにおいては、網内の各ノードは、一つあるいは複数のセンサ（例えば、占拠（使用）状態センサ、デーライト（周囲照明）センサ、および、ディミング／ライティング（弱／強）レベルセンサ）を含み、これによって、センサからのフィードバック信号がビルディング内のコンピュータに提供され、コンピュータは、これらセンサからのフィードバック信号を、照明システム制御ソフトウエアに従って分析し、必要に応じて、制御信号（コマンド）を個々のノードに送信し、これによって、ビルディングの監視されている部屋／エリアの照明のレベルが、照明システム制御ソフトウエアに従って、例えば、照明システムのエネルギー効率を最適化することも目指して、調節される。これら分散されたモジュールは、互いに独立して動作するのではなく、機能的に、単一のビルディング規模の網に統合され、ビルディング内のコンピュータの制御下に置かれる。
無線パケットホッピング網の据付けは、網内に各ノードを物理的に配置し、電力を供給することを要求される。網内の各ノードのアドレスは、据付け時にノード内にプログラムされるか、あるいは、あらかじめプログラムされている場合は、中央ノード（ビルディング内のコンピュータ）のメモリ内に、網内の各ノードの物理位置と共に、記録される。網の据付けを終えたら、これは、初期化することにより、ビルディング内のコンピュータに、網の通信プロトコルによってデータのパケットを網を通じて上に述べられたパケットホッピング技術を使用して発送するために使用される、ノード接続性情報を提供することが要求される。このノード接続性情報は、網内のどのノードが互いに通信することができるかについての情報を含む。ビルディング内のコンピュータは、網初期化プロセスの際に集められるこのノード接続性情報に基づいて、ルーティングテーブルを作成する。ビルディング内のコンピュータは、次に、これらルーティングテーブルを使用して、データのパケットを、ビルディング内のコンピュータから宛先ノードに、あるいは発信ノードからビルディング内のコンピュータに向けて、パケットを送信する。つまり、パケットを、ルーティングテーブルからその時点において利用可能な最も効率の良いルートであると決定されたルートに沿って、ノードからノードへとホッピングする。
後に詳細に説明されるように、従来の技術において利用される網初期化スキームは、複数の問題を持つ。特に重要な問題として、ビルディング内のコンピュータに向けて送り戻される接続性情報のパケットの解決不能な衝突の問題と、これら衝突あるいは貧弱な接続性のために、データパケットの損失に気付くことができない問題がある。そして、これら問題は、従来の網初期化スキームが、ＲＦ通信システムに生来的な、干渉および散発的な接続（性）などの要因を十分に考慮に入れないという事実によって、さらに、悪化される。
加えて、従来の技術において利用されている初期化スキームは、接続されていると見なされているノード間に双方向リンクが存在することを確認することはなく、接続されていると見なされているノード間のリンクの品質に関する統計的な情報を得ることもなく、また、各ノードにルーティング情報を送ることもなく、単に、ノードの接続性を決定するにすぎない。
これら欠点および短所のために、網初期化プロセスの際に得られるノード接続性情報は、不完全となり、この結果、ビルディング内のコンピュータによって作成されるルーティングテーブルは、不完全で、信頼性に欠けるものとなり、この結果、データパケットのルーティングは非効率となり、パケットデータの損失に気付くとこもできず、他のデータ通信上の障害を引き起こすこともある。さらに、従来の技術において利用可能な網初期化スキームは、複雑で、実現するのにコストがかかる。つまり、通常は、網のプロバイダによって初期化手続きを遂行することが要求され、最低でも、網の管理者に、コストのかかる専門家の支援を与えることが要求される。
無線パケットホッピングビルディング制御網において従来から最も多く利用されている網初期化方法は、ランダム初期化方法である。この方法は、メイン／中央ノード（ビルディング内のコンピュータ）からランダム初期化パケットを発信することによって開始される。いったん送信されると、このパケットは、網を通じて、ランダムに中継される。この初期化パケットは、これを受信する個々のノードによって、全てのノードがこれを受信するまで再送することを要求される、初期化情報を含む。この初期化パケットは、また、各受信ノードに対して、ビルディング内のコンピュータに向けて、初期化応答パケットを送り返すことを催促する。初期化応答パケットは、関連する接続性データを含む。ランダム初期化パケットを初めて受信したノードは、送信ノードのアドレスを読み出し、このノードを“親ノード”であるとみなし、最初に、初期化応答パケットを、その親ノードに送り返す。このノードは、自身の親ノードに、これを送り返し、これが、初期化応答パケットが、最終的に、ビルディング内のコンピュータに送り返されるまで、行なわれる。この“リターンパケット”は、接続性情報を含むが、これは、このリターンパケットを発信したノードからの、その親ノードまでの接続ができたことを示す。このリターンパケットを受信した親ノードは、まず初めに、送信ノードのアドレスを自身のアドレスと取り替えた後に、ランダム初期化パケットを送信する。こうして、ビルディング内のコンピュータにパケットを送り返すためのルートが設定されるが、これは、単に、どのノードが、最初に、初期化パケットを送信したかに基づいて、接続の品質とは無関係に、決定される。そして、その後、追加の初期化パケットが、このノードの所に受信された場合、このノードは、生成された接続性情報を、自身の前に決定された親ノードを介して、初期化パケットを送信してきたノードとの双方向通信を検証することなく、ビルディング内のコンピュータに向けて送る。
このスキームを使用する場合、初期化プロセスの際に、ビルディング内のコンピュータの近傍に、個々の全ての接続が単一のパケットによって表され、これがビルディング内のコンピュータによって受信されることを要求されるという事実の結果として、トラックの極端に高い集中が発生する。例えば、ある網内の、１０個のノードが、ほぼ同時に、初期化パケットを送信し、これら１０個の初期化パケットのおのおのが、６〜１０の他のノードによって受信されるものとすると、全部で６０〜１００の初期化応答パケットが、ビルディング内のコンピュータに、ほぼ同時に送られてくることとなる。そして、もし、ビルディング内のコンピュータが、６〜１０個の他のノードと通信することが可能である場合は、ビルディング内のコンピュータ近傍のこれらノードのおのおのは、ビルディング内のコンピュータに送り返すための６〜１０の初期化応答パケットを扱うことが要求される。ところが、ある与えられた時間において、たった一つのノードのみが、ビルディング内のコンピュータと通信できるために、残りの５〜９個のノードは、自身のパケットを（パケットバッファ内に）保持することを要求され、その後、初期化応答パケットを送り返すことに失敗する可能性を持つ。この失敗は、２つの理由によって、起こり得る。第一に、ノード内の、ビルディング内のコンピュータへの再送のためにパケットを保持するための、パケットバッファが、パケットがさらに受信されてきたときに、オーバーフローする可能性がある。第二に、接続されておらず、従って、互いに通信する（あるいは“聞く”）ことができないノードが、同時に送信を行い、これによって、パケットが失われる可能性がある。
この第二の状況は、通常、パケットの“解決不能な衝突”と呼ばれる。予想できるように、このような解決不能な衝突が起こる確率は、トラックの量の増加と共に、急激に増加する。次に、図１との関連で、このような解決不能な衝突の一例について説明する。解決される例において、ノード１がノード３から受信されたパケットをビルディング内のコンピュータ（ＢＣ）に送信しているために、ノード２がノード６から受信されたパケットを保持しているときに、さらにノード５からノード２に送られたパケットは、失われる可能性がある。この解決不能な衝突の理由は、ノード５が、ノード１のＲＦ送信機のレンジの外側にあり、従って、ノード１からビルディング内のコンピュータへの送信に気付くことがなく（つまり、“聞く”ことができず）、パケットを、ノード２に送信するが、ノード２は、前述のように、ノード１によるビルディング内のコンピュータへの送信が完了するのを待っている状態であり、このために、損失が発生する。ただし、ノード２からのビルディング内のコンピュータへの未決の伝送が存在しない場合（送信が待たされていない場合）でも、このような衝突は起こり得る。つまり、単一バッファシステムにおいては、ノード５が、かりに、ノード２に送信できた場合でも、バッファのオーバーフローのためにパケットが失われることがあり得る。
上で述べたように、ランダム初期化方法は、接続されていると見なされるノードの各ペアに対する双方向リンク検証を行なうことがない。より詳細には、自身の親ノード以外のノードから初期化パケットを受信したどのノードも、接続性情報を、自身の親ノードを介して発送する。これは、解決不能な衝突ほどは、重要な問題ではないが、それでも、網に困難を与える。例えば、図１に戻り、ノード４が、ノード１からその最初の初期化パケットを受信したものとすると、ノード４は、ノード２から受信した初期化応答パケットを、ノード１がこの親ノードであるために、ノード１へと送信することとなり、こうして、ノード２→４への接続性は、単に、ノード２からノード４に送られたパケットによってのみ定義されることとなる。
接続性の確率を考慮に入れたならば、もう一つの潜在的な問題を認識することができる。例えば、ノードリンク４→１が７０％の成功率を持ち、ノードリンク４→２が９５％の成功率を持つ場合は、ノード４によって、これがノード２から受信された初期化パケットに応答して、送信される初期化応答パケットは、実際には、ノード４からノード１への初期化応答パケットの送信の際に、失われる可能性が高い。しかし、従来のランダム初期化方法では、ノードリンク４→２は、ノードリンク４→１より優位であるにもかかわらず、ビルディング内のコンピュータは、ルーティングテーブル内に、ノードリング４→１を格納する。このことから、従来のランダム初期化方法では、ビルディング内のコンピュータは、不完全なノード接続性情報に基づいて決定を行なうために、ノードリンク４→１をルーティングテーブル内に格納するという必ずしも適当でない決定を行なうことが理解できる。
本発明の一つの目的は、従来の技術において利用可能な方法の、上に説明された欠点および短所の少なくとも一部分を克服する、説明されたタイプの網、ノード、および、初期化方法を提供することにある。
発明の要約
本発明は、無線パケットホッピング網、例えば、照明システム、保安システム、および／あるいはＨＶＡＣシステムなどのビルディングシステムの運転を制御するために使用されるビルディングシステム制御網に関する。本発明の初期化方法によると、網内の各ノードは、最初に、自身の完全な接続性、つまり、網内の、そのノードの所定のレンジ内あるいは近傍の、他の全てのノードへの自身の接続性を決定し、次に、この接続性情報を中央ノード、例えば、ビルディング内のコンピュータに発送する。ある与えられたノードからの“所定のレンジあるいは近傍”とは、その与えられたノードの送信レンジ内の他の全てのノード、つまり、好ましくは、それらが、与えられたノードから、退廃のない情報を受信することが可能で、かつ、好ましくは、それから、与えられたノードが、退廃のない情報を受信することが可能な、他の全てのノードである。
長所として、この接続性情報は、一つのパケットあるいはセットのパケットの形式にてビルディング内のコンピュータに発送され、こうして、ビルディング内のコンピュータおよびこの近傍のノードが吸うべきトラックの量が最小にされ、こうして、接続性情報のパケットが衝突する確率が著しく低減される。
この接続性情報は、好ましくは、全ての接続性情報がビルディング内のコンピュータによって受信されることを保障するために、“ソフトウエアハンドシェーキング”技術を使用して送信される。一つの好ましいソフトウエアハンドシェーキングスキームによると、パケットは、特別な値を持つバイトを含み、このバイトの値は、中央ノードに、そのノードについての全ての接続性情報が中央ノードに送信されるまでに、その特定なノードについてあと幾つの接続性情報のパケットが中央ノードによって受信されるために残されているかを逐次知らされる。
このソフトウエアハンドシェーキングスキームは、二つの目的を果たす。第一に、これは、ビルディング内のコンピュータによって、全ての接続性情報が、全てのノードから受信されるのを保障し、第二に、これは、ビルディング内のコンピュータの近傍のリンキングノードの以前の初期化によって定義され、現在、ノード接続性情報のリターンパケットを他の初期化ノードとビルディング内のコンピュータとの間でルートするために使用されているルートをテストする。さらに、これは、ビルディング内のコンピュータが、完全なノード接続性情報をそれから受信しない各ノードに対して、この情報を受信することなく所定の期間が経過した後に、ポーリングすることを可能にする。この方法は、また、網の、部分的なあるいは増分的な（例えば、一度に、１、２、あるいは、それ以上のノードの）初期化を可能にし、また、網全体を巻き込むことなく、任意の与えられたノードを再初期化することを可能にする。
一つの好ましい実施例においては、各ノードは、自身の接続性を、一連のビーコン初期化パケットを送信し、これによって、一つあるいは複数のビーコン初期化パケットを受信する全てのノードからの応答をリクエストすることによって、決定する。各受信ノードは、自身のアドレスを含むビーコン初期化応答パケットを送り返す。すると、初期化ノードは、他のノードから受信されたビーコン初期化応答パケットから受信ノードのアドレスを抽出し、これら受信ノードのアドレスのレコードを保つ。好ましくは、初期化ノードは、各受信ノードから受信されたビーコン初期化応答パケットの数をカウントするが、この統計情報は、効果的なルーティングテーブルを作成するのに有益である。
ビルディング内のコンピュータによって発行される初期化コマンドは、ある特定のノードによって、そのノードが自身の初期化ルーチンを実行するために、受信されることが要求されるために、ビルディング内のコンピュータは、網の初期化プロセスの際に、ルーティングテーブルを、作成、利用、および、テストする。この結果として、網の初期化プロセスが完了したあかつきには、テスト済みの、機能する網が得られる。好ましくは、ノードは、ノード間の双方向リンクが確認されたときにのみ接続されているものとして登録される。例えば、ペアのノードの一つがペアのノードの他方のノードの送信レンジの外側にある場合は、これらノードは、接続されているものとして登録されることはない。
さらに、本発明の初期化方法は、互いに排他的なものではなく、上に説明された従来のランダムパケット初期化方法に加えて、あるいは、代替として、使用することができる。例えば、ランダムパケットアドレシング方法を、リターン情報がそれほど重要でないグローバルアドレシングスキームに対して使用し、リターン情報（あるいはこの一部分）が失われた場合は、後に、この情報を、応答のないノードに個別に照会することによって得ることもできる。
【図面の簡単な説明】
本発明のこれらおよび他の特徴および長所が、以下の詳細な説明を、付録の図面との関連で参照することによって、容易に理解できるものであるが、ここで：
図１は、従来の技術において利用可能なランダム初期化スキームを利用する無線パケットホッピング網の図であり、この場合に発生するノード接続性情報パケットの解決不能な衝突の問題を図解し；
図２は、本発明の網初期化方法が利用される無線パケットホッピング知能照明制御システムのブロック図である。
発明の詳細な説明
概観から述べると、本発明の初期化方法によると、網内の各ノードは、最初に、自身の完全な接続性について、つまり、網内の他の全てのノードへの自身の接続性について決定し、次に、この接続性情報をビルディング内のコンピュータにルートする。この接続性情報は、一つのパケットあるいはセットの複数のパケットとして、ビルディング内のコンピュータに送られ、ビルディング内のコンピュータおよびこの近傍のノードが扱うべきトラック量が最小にされ、接続性情報のパケットが互いに衝突する確率が著しく低減される。
さらに、本発明の初期化方法によると、初期化は、網内の任意のノードから、網運転の際の任意の時間において、単一のコマンドによって、リクエストすることが可能であり、従来の技術において利用が可能なランダム初期化スキームの場合のように、網全体を通じてランダムパケットを完全（フル）伝播することは必要とされない。
さらに、この接続性情報は、全ての接続性情報がビルディング内のコンピュータによって受信されることが保障するために“ソフトウエアハンドシェーキング”技術を使用して伝送される。このソフトウエアハンドシェーキングスキームによると、特別なコマンド値を持つバイトを含むパケットが送信され、この値は、ビルディング内のコンピュータに、その特定のノードについて全ての接続性情報の送信が完了するまでに、その特定のノードについてあと幾つの接続性情報がビルディング内のコンピュータによって受信されるべきかを逐次知らせる。
個々のノードによって特定のルートについての成功の確率などの追加の情報を集め、この情報をビルディング内のコンピュータに送り返すことによって、より効果的なルーティングテーブルの作成に役立てられる。さらに、ビルディング内のコンピュータによって発行される初期化コマンドは、特定のノードによって、その特定のノードが自身の初期化ルーチンを実行するために、受信されことが要求されるために、ビルディング内のコンピュータは、網初期化プロセスの際に、ルーティングテーブルを、作成、利用、テストする。好ましくは、ノードは、ノード間の双方向リンクが確認されたときにのみ、接続されているものとして登録される。例えば、ペアのノードの一方が、そのペアのノードの他方のノードの送信レンジの外側にある場合は、これらペアのノードは、接続されているとして登録されない。
本発明による初期化方法は、互いに排他的なものではなく、上に述べられたランダムパケット初期化方法に加えて、使用することも、あるいは、この代替として、使用することも可能である。例えば、リターン情報の重要性がそれほど重大でないグローバルアドレシングスキームに対しては、ランダムパケットアドレシング方法を使用し、リターン情報（あるいはこの一部分）が失われた場合は、これを、その後、個別に応答しないノードに照会することによって得ることもできる。
本発明の初期化方法によると、４つの異なるタイプのパケットが使用されるが、これらパケットタイプは、以下のように定義される：
（１）INIT−このパケットは、ビルディング内のコンピュータによって、ノードに向けて送られ、ノードに対して初期化ルーチンを実行するようにコマンドする；
（２）RESPONSE＿INIT−この一つのパケットあるいはセットのパケットは、初期化されたノードから、ビルディング内のコンピュータに向けて送られ、そのノードについての完全な接続性情報を運ぶ；
（３）INIT＿REACON−このパケットは、初期化ノードによって時間的に等間隔に送信される一連のパケットであり、そのノードの送信レンジ内の全てのノード（つまり、この送信を“聞く”ことができる全てのノード）からの応答を要求する；そして
（４）RESPONSE＿INIT＿BEACON−このパケットは、INIT＿BEACONパケットに応答してノードによって送られ、INIT＿BEACONパケットを送信した初期化ノードに、受信したノード（応答しているノード）の識別（アドレス）を知らせる。
本発明の初期化方法について、以下に、（本発明を、簡単に、平易に説明することを目的として）図２に示される一例としての無線パケットホッピング網１０との関連で説明される。網１０は、複数のノード１２およびビルディング内のコンピュータ１４から構成される。ノード１２のおのおのは、ＲＦトランシーバ１６、壁ユニット１８、並びに、メモリ（例えば、EEPROMおよび／あるいはＲＡＭ）および一つあるいは複数のカウンタを含む、デジタル信号処理回路２０（例えば、マイクロプロセッサ）を含む。壁ユニット１８は、当業者において周知の任意の都合の良いタイプのもの、例えば、リンクされたバラスト２２の、例えば、照明のレベルを次第に弱くしたり強くしたりすることが可能な（ディマブル）蛍光灯、の照明のレベルを制御するためのバラスト制御モジュールであり得る。壁ユニット１８は、好ましくは、一つあるいは複数のセンサ（図示なし）、例えば、一つあるいは複数の、占拠（利用）状態センサ、デーライトセンサ、および／あるいはディミング／ライティング（弱強）レベルセンサ、を含み、これによって、デジタル信号処理回路２０にフィードバック情報が提供され、デジタル信号処理回路２０は、このセンサからのフィードバック情報を処理し、これを、ビルディング内のコンピュータ１４に向けて、ＲＦトランシーバ１６を使用して、データのパケットとして、後に説明される、本発明の網初期化プロセスにおいて作成されたルーティングテーブルによって決定される経路に沿って送る。ビルディング内のコンピュータ１４は、ノード１２から受信されたセンサからのフィードバック情報に基づき、この中に常駐する照明を制御するためのソフトウエアに従って制御データを生成し、このデータは、データのパケットとして、ノード１２に向けて、ルーティングテーブルによって決定される経路に沿って送られる。この制御データは、次に、ノード１２のデジタル信号処理回路２０によって処理され、壁ユニット１８に送られる。次に、壁ユニット１２は、この制御データに応答して、要望されるように関連するバラスト２２の照明のレベルを調節するための制御信号を生成する。勿論、当業者においては、本発明の初期化方法を利用することが可能な網の構成あるいはタイプは、ここに説明される本発明の実施例に限定されるものでないことを理解できるものである。
次に、図２との関連で、本発明の初期化方法を説明すると、ビルディング内のコンピュータ１４は、網１０内のノード１２の一つにINITパケットを送ることによって、そのノードに対して、初期化することをコマンドする。このINITパケットは、この網を、任意の他のパケットと全く同様に使用し、このために、このコマンドは、任意の要望されるルーティングプロトコルと共に使用することができる。さらに、このコマンドは、別の網初期化ルーチン、例えば、ランダム初期化ルーチンの補助として、接続性を保障する目的で使用することもできる。また、任意のノード１２を、任意の時間に、網全体を完全に初期化することを必要とすることなく、初期化あるいは再初期化することができる。さらに、一つあるいは複数のノード１２を、同時に、あるいは、逐次的に、初期化することも可能である。
INITパケットを受信したノードは、これに応答して、ビーコン、つまり、時間的に等間隔の一連のINIT＿BEACONパケット、を送ることによって、一つあるいは複数のこれらパケットを受信する全てのノードからの応答をリクエストする。これらINIT＿BEACONパケットは、所定のアドレス（あるいは情報セグメント）を付けて送られるが、全てのノードは、決して、反復したり、飛ばされたりすることなく、これに応答する。例えば、現時点において考えられているシステムにおいては、各INIT＿BEACONパケットは、＄００の値を持つ特別なバイトを含むが、ここで、＄は、１６進値を表す。
INIT＿BEACONパケットを受信した各ノードは、好ましくは、ＣＳＭＡ（キャリア感知マルチプルアクセス）スキームに従って、網の通信チャネルの状態を検出（感知）した後に、それが受信したINIT＿BEACONに応答する。このスキームによると、受信ノードは、INIT＿BEACONパケットに応答して、ランダムな時間期間を待った後に、通信チャネルを検出（感知）し、そのチャネルが、RESPONSE＿INIT＿BEACONパケットを送信するために利用可能（“空き”）であるか、利用不能（“ビジー”）であるかを決定する。通信チャネルがビジーであることが決定された場合は、受信ノードは、もう一つのランダム遅延期間を待った後に、再度、応答パケットを送信する目的で、チャネルの状態を検出する。このプロトコルを使用することによって、このパケットの送信が、他の付近のノードからの送信とオーバランする確率が低減される。初期化ノードも、同じように、このプロトコルに従って、通信チャネルを感知し、INIT＿BEACONパケットを送信しようとした時点において通信チャネルがビジーであることが検出された場合は、もう一つのビーコンサイクルを待った後に、再度、送信を試みる。ここで、“フル（全）ビーコンサイクル”は、一連のINIT＿BEACONパケットの送信の間の、セットの、あるいは、所定の、時間間隔である。
初期化ノードは、それが送信したINIT＿BEACONパケットに応答して受信される各RESPONSE＿INIT＿BEACONパケットから応答ノードのアドレスをはぎ取り、このアドレスを、そのメモリ内にログイン（格納）する。初期化ノードは、それが受信した各RESPONSE＿INIT＿BEACONパケットからはぎ取ったアドレスを、ここで、便宜的に“ビーコン初期化プロセス”と呼ばれる、そのノードに対する初期化プロセスの際に、メモリ内に格納された以前のアドレスと比較する。ビーコン初期化プロセスの際に既に応答が確認されてないノードに対応するアドレスのみが新にメモリ内に格納され、このために、このメモリは、ビーコン初期化プロセスの際に少なくとも一度応答したことがある（つまり、少なくとも一つのRESPONSE＿INIT＿BEACONパケットを送り返してきたことがある）全てのノードのアドレスを含む。さらに、初期化ノードは、それが、各ノードから受信する、RESPONSE＿INIT＿BEACONパケットの数をカウントし、関連する値を保存しておき、その後、ビルディング内のコンピュータ１４に、ノード接続性情報の一部分として送り返す。
ある与えられた初期化ノードに対するビーコン初期化プロセスは、所定の数のINIT＿BEACONパケットの送信を終えたとき、あるいは、所定の回数のビーコンサイクルが、任意の追加のノードから応答を受信することなく、すぎたときに完了する。換言すれば、ビーコン初期化プロセスは、初期化ノードが、任意のノードから応答を受信しない場合、つまり、任意のノードから所定の回数のビーコンサイクルをすぎても最初の応答を受信しない場合は、終端される。
このINIT＿BEACONパケットとRESPONSE＿INIT＿BEACONパケットの特性のために、ある与えられたペアのノード間のリンクは、パケットが双方向に伝わることができる場合にのみ、つまり、ノード間の双方向リンクが確認されたときにのみ、登録されることが保障される。これは、ＲＦリンクの場合は、特に、通信のために各方向において異なる送信機／受信機ペアが使用され、各ペアが大幅に異なる通信特性を持つ場合があるために、重要である。
RESPONSE＿INIT＿BEACONパケットの解決不能な衝突の問題は、上に説明されたランダム初期化プロセスの場合に発生するのと、全く同様に、未解決のままにとどまる。例えば、このポイントを解説するために、図１に示される一例としての網との関連で説明すると、ノード３とノード６は、ノード２の所で、両者が、ノード２から送られたINIT＿BEACONパケットに応答する場合に衝突する可能性を持つ。ただし、本発明の方法では、一連のINIT＿BEACONパケットの送信および（ＣＳＭＡスキーム従っての）ランダム遅延のために、実質的に、ビーコン初期化プロセスの際に、ノード３とノード６によって、ノード２に送り返される応答（つまり、RESPONSE＿INIT＿BEACONパケット）の全てが衝突することはないことが保障される。つまり、複数のINIT＿BEACONパケットに応答してノード３とノード６によって送信される応答の、全てが衝突する確率は、ほぼ０となる。一方、従来のランダム初期化スキームにおいては、ノード３とノード６によって送られる応答パケットにこのような衝突が起こると、このスキームでは、ノード２は、たった一つの初期化パケットを送信するのみであるために、不完全なノード接続性情報がビルディング内のコンピュータＢＣに中断されることとなる。
再度、図２に戻り、本発明によると、上に説明されたビーコン初期化プロセスが、網１０内の各ノード１２によって遂行される。この結果、網１０内の各ノード１２が、自身の完全な接続性、つまり、網１０内の、自身から定められたレンジ内のあるいは自身の近傍の、他の全てのノード１２（例えば、それから正当なあるいは退廃のないデータを受信することが可能な自身の送信レンジ内の他の全てのノード）への自身の接続性を決定した上で、このノード接続性情報を、ビルディング内のコンピュータ１４に送り返す。
網１０内の各ノード１２についてのこの完全なノード接続性情報は、ビルディング内のコンピュータ１４によって、効果的なルーティングテーブルを作成するために重要であるが、こうして作成されたルーティングテーブルは、次に、ビルディング内のコンピュータ１４によって、データのパケットを、ビルディング内のコンピュータ１４から宛先ノードに、あるいは、発信ノードからビルディング内のコンピュータ１４（あるいは他のノード）に送信するために使用される。つまり、データのパケットを、ノードからノードへと、可能な限り最も効率的なルートに沿って、最小の通信ミス確率にて、ホッピングするために使用される。さらに、まだ初期化されてないノードへのルートは、既に初期化されたノードから受信されるノード接続性情報から選択される。こうして、ルーティングテーブルが、網ルーティングプロトコルを使用して、網初期化プロセスと同時に、作成およびテストされる。この結果、網初期化プロセスが完了したあかつきには、テスト済みの、機能する網が得られる。
ランダム初期化スキームの有用性を制限する、より重大な問題として、上で説明されたように、ビルディング内のコンピュータ１４の近傍において、ビルディング内のコンピュータ１４に向けて多量のノード接続性情報が収束することに起因して、多量の衝突が発生する問題があるが、本発明の初期化方法を使用すると、これを解決することが可能である。これとの関連で、本発明の初期化プロセスは、ビルディング内のコンピュータ１４に向って収束するノード接続性情報の量を、大幅に（ランダム初期化と比較して一桁以上も）低減し、これによって、発生する衝突の数を制限する。この長所は、本発明の初期化プロセスにおいては、各ノード１２は、自身の完全な接続性情報を、一つのパケットあるいはセットのパケットとして、ビルディング内のコンピュータ１４に向けて送り、このために、データトラックの量が大幅に低減されるという事実によって達成される。さらに、ビルディング内のコンピュータ１４は、それに対して初期化を指令した各ノード１２から、RESPONSE＿INIT＿パケットを受信することを“期待”しており、万一衝突が発生した場合でも、ビルディング内のコンピュータ１４によって、そのノード１２を、ノード接続性情報を求めて、ポーリングしたり、あるいは、ビルディング内のコンピュータ１４によって、再初期化をコマンドしたり、することができる。
加えて、本発明による初期化プロセスは、“ソフトウエアハンドシェーキング”スキームを含むが、これによって、ビルディング内のコンピュータ１４は、網初期化プロセス全体を終了する前に、網１０内の各ノード１２から、全てのノード接続性情報を受信することを保障される。
このソフトウエアハンドシェーキングスキームの現時点において好ましいとされる実施例においては、網１０内の各ノード１２は、全てのノード接続性情報を編集した後に（つまり、ビーコン初期化プロセスを終了した後に）、このノード接続性情報を、ビルディング内のコンピュータ１４に、一つのRESPONSE＿INITパケット、あるいはセットのRESPONSE＿INITパケットとして送るが、これらパケットのおのおのは、特別なバイトを含み、このバイトは、そのパケットがビルディング内のコンピュータ１４によって受信された後に、ビルディング内のコンピュータ１４によって、その後に、受信されることが予定されるパケットの数を表すコマンド値を持つ。
例えば、ある特定のノードが、ビーコン初期化プロセスの結果として他のノードから受信されたRESPONSE＿INIT＿BEACONパケットから得られた全ての接続性情報の編集を終えた時点で、特定のノードから、さらに４つの、ノード接続情報についての、RESPONSE＿INITパケットを、ビルディング内のコンピュータ１４に送る必要性を決定した場合、これがビルディング内のコンピュータ１４に送る最初のパケットの中に、＄Ａ３なる特別なコマンド値が挿入され、ビルディング内のコンピュータ１４に対して、そのノードからあと３つのRESPONSE＿INITパケットが受信された時点で、そのノードについての接続性情報のビルディング内のコンピュータ１４への送信が終了することが示される。
この例を続けると、ビルディング内のコンピュータ１４は、このノードから最初のRESPONSE＿INITパケットを受信すると、そのノードからの第二のRESPONSE＿INITパケットを、そのINITパケットの特別なコマンドバイト内に、適当なコマンド値（例えば、＄Ａ１）を挿入することによって、リクエストする。このノードから第二のRESPONSE＿INITパケットを受信すると、ビルディング内のコンピュータ１４は、次に、このノードからの第三のRESPONSE＿INITパケットを、それに続くINITパケットの特別なコマンドバイト内に、適当なコマンド値（例えば、＄Ａ２）を挿入することによって、リクエストする。そしてノードから第三のRESPONSE＿INITパケットを受信すると、ビルディング内のコンピュータ１４は、次に、このノードからの第四のRESPONSE＿INITパケットを、それに続くINITパケットの特別なコマンドバイト内に、適当なコマンド値（例えば、＄Ａ３）を挿入することによって、リクエストする。
ビルディング内のコンピュータ１４が、特定のノードに送られた元のINITパケットに対する任意の応答を受信する前に、タイムアウトした場合（つまり、所定の時間期間が経過した場合）は、ビルディング内のコンピュータ１４は、そのノードを、例えば、続いて送られるINITパケットの特別なコマンドバイト内に、適当なコマンド値（例えば、＄Ａ０）を挿入することによって、あるいは、ブランクのままにしておくことによって、ポーリングすることができる。これは、そのノードに対して、自身のノード接続性情報を、ビルディング内のコンピュータ１４に再送するように催促する。これとの関連で、任意のノードの初期化を、網運転の際の任意の時間において、単一のコマンドによって、従来の技術において利用可能なランダム初期化スキームの場合のように、網１０を通じてランダムパケットを完全（フル）伝播することを要求することなく、リクエストすることが可能である。
ソフトウエアハンドシェーキングスキームは、二つの目的を果たす。第一に、これは、ビルディング内のコンピュータ１４によって、全てのノード１２から、全ての接続性情報が受信されることを保障し、第二、これは、ビルディング内のコンピュータ１４近傍のノードの以前の初期化によって定義され、現在、初期化中のノードとビルディング内のコンピュータ１４との間でINITパケットおよびRESPONSE＿INITをルートするために使用されているルートをテストする。
加えて、長所として、多数の解決不能な衝突によって、ノード接続性情報が失われる可能性は、小さく、また、上に説明されたポーリングおよびハンドシェーキングスキームによって、全てのノード接続性情報が受信されることが保障されるため、ビルディング内のコンピュータ１４は、複数のノードを同時に初期化することが可能である。また、網１０の密集したエリア内のノードを選択的に初期化することによって、網初期化プロセスを完了するために要求される時間をさらに短縮することが可能になる。
当業者においては、本発明の網初期化方法は、完全に自動化された形式にて実現することができ、エンドユーザ、例えば、ビルディングの管理者に対して、事実上、透明にすることができることを理解できるものである。勿論、本発明の網初期化方法を実現するためのソフトウエアは、ノード１２のおのおののマイクロプロセッサ（あるいは他のデジタル信号プロセッサデバイス）内に、および、ビルディング内のコンピュータ１４内に、あらかじめロードされ／あるいはあらかじめプログラムされる。これとの関連で、網１０がいったん据付けられると、ビルディングの管理者は、単一あるいは少数のキーストロークおよび／あるいはマウスクリックにて、網の初期化をコマンドすることができる。このコマンドが与えられると、網１０は、本発明の方法に従って自動的に自身を初期化し、ビルディングの管理者の介在、あるいは、網の販売者からのコストのかさむ専門家の支援、は必要としない。こうして、本発明による自動網初期化方法は、従来の技術において利用可能なランダム初期化方法におけるもう一つの重大な短所を克服する。
本発明の現時点において好ましいとされる実施例が上で詳細に説明されたが、当業者においては、ここに開示される根本的な発明の概念の多くのバリエーションおよび／あるいは修正が明らかであり、これらも、請求の範囲によって定義される本発明の精神および範囲内に入ることを理解できるものである。
【図１】
0003725165.tif 000002
【図２】
0003725165.tif 000003