(57)【要約】  本発明は、ネットワーク接続された制御システムの装置の自動立ち上げに関し、特に、個々に局所的に光源の制御が必要な場合における照明システムの光源の自動立ち上げに関する。本発明の基本的な概念は、格子（特に、装置のほぼ矩形の格子）を通じて立ち上げメッセージをルーティングし、各装置が光を介して格子の直接的に隣接する装置から立ち上げメッセージを受信し、これらの装置に立ち上げメッセージを送信する。本発明の実施例は、格子（20）に配置された複数の装置を有するネットワーク接続された制御システムの装置（10,12,14,16,18）の自動立ち上げのための方法に関し、各装置は、格子の直接的に隣接する装置から受信したメッセージを、光を介して格子の直接的に隣接する装置にルーティングするように構成され、立ち上げは、−第１の装置（10）により、ホップカウンタを有する立ち上げメッセージを第２の装置に送信する動作であり、第２の装置は、格子の所定の方向において第１の装置に隣接する動作（S10）と、−第２の装置により、第１の装置から立ち上げメッセージを受信する動作（S12）と、−第２の装置により、ホップカウンタを更新し、第２の装置の位置カウンタを更新する動作（S14）と、−更新されたホップカウンタを備えた立ち上げメッセージを１つ以上の第３の装置に送信する動作（S16）とを有する。
2012518888.tif 000002
【特許請求の範囲】
【請求項１】
格子に配置された複数の装置を有するネットワーク接続された制御システムの装置の自動立ち上げのための方法であり、各装置は、前記格子の直接的に隣接する装置から受信したメッセージを、光を介して前記格子の直接的に隣接する装置にルーティングするように構成される方法であって、
前記立ち上げは、
−第１の装置により、ホップカウンタを有する立ち上げメッセージを第２の装置に送信する動作であり、前記第２の装置は、前記格子の所定の方向において前記第１の装置に隣接する動作と、
−前記第２の装置により、前記第１の装置から前記立ち上げメッセージを受信する動作と、
−前記第２の装置により、前記ホップカウンタを更新し、前記第２の装置の位置カウンタを更新する動作と、
−前記更新されたホップカウンタを備えた前記立ち上げメッセージを１つ以上の第３の装置に送信する動作と、
を有する方法。
【請求項２】
−前記第２の装置により前記ホップカウンタを更新する動作は、前記ホップカウンタを１だけインクリメントすることを有し、
−前記第２の装置の前記位置カウンタを更新する動作は、前記位置カウンタを、前記更新されたホップカウンタ及び実際の位置カウンタの最大値に設定することを有する、請求項１に記載の方法。
【請求項３】
前記第２の装置により前記ホップカウンタを更新する動作は、
−前記受信した立ち上げメッセージの前記ホップカウンタと前記第２の装置の前記実際の位置カウンタとを比較し、
−前記ホップカウンタが前記第２の装置の前記実際の位置カウンタ以上であるという比較結果を生じた場合にのみ、前記ホップカウンタを１だけインクリメントすることを有する、請求項２に記載の方法。
【請求項４】
前記第２の装置により前記ホップカウンタを更新する動作は、
前記ホップカウンタが前記第２の装置の前記実際のホップカウンタより小さいという比較結果を生じた場合、前記受信した立ち上げメッセージを拒否することを更に有する、請求項３に記載の方法。
【請求項５】
前記更新されたホップカウンタを備えた前記立ち上げメッセージを１つ以上の第３の装置に送信することは、前記更新されたホップカウンタを備えた前記立ち上げメッセージを、
−前記格子の前記所定の方向において前記第２の装置に隣接する第３の装置、又は
−前記格子の前記所定の方向及び前記所定の方向とはそれぞれ異なる２つの更に異なる方向において前記第２の装置に隣接する第３の装置
に送信することを有する、請求項１ないし４のうちいずれか１項に記載の方法。
【請求項６】
前記所定の方向とは異なる方向において前記第２の装置に隣接する第３の装置は、前記格子の前記所定の方向に立ち上げメッセージを送信する、請求項５に記載の方法。
【請求項７】
前記所定の方向とは異なる方向において前記第２の装置に隣接する第３の装置は、前記格子の前記所定の方向、及び前記所定の方向とはそれぞれ異なる前記２つの更に異なる方向に立ち上げメッセージを送信する、請求項５に記載の方法。
【請求項８】
複数の立ち上げメッセージは、１つ以上の所定の方向において前記格子を通じて並列にルーティングされる、請求項１ないし７のうちいずれか１項に記載の方法。
【請求項９】
請求項１ないし８のうちいずれか１項に記載の方法をプロセッサに実行可能にするコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを格納した記録担体。
【請求項１１】
請求項１ないし８のうちいずれか１項に記載を実行するようにプログラムされたコンピュータ。
【請求項１２】
格子に配置された複数の装置を有するネットワーク接続された制御システムの装置の自動立ち上げのためのシステムであり、各装置は、前記格子の直接的に隣接する装置から受信したメッセージを、光を介して前記格子の直接的に隣接する装置にルーティングするように構成されたシステムであって、
−第１の装置により、ホップカウンタを有する立ち上げメッセージを第２の装置に送信する動作であり、前記第２の装置は、前記格子の所定の方向において前記第１の装置に隣接する動作と、
−前記第２の装置により、前記第１の装置から前記立ち上げメッセージを受信する動作と、
−前記第２の装置により、前記ホップカウンタを更新し、前記第２の装置の位置カウンタを更新する動作と、
−前記更新されたホップカウンタを備えた前記立ち上げメッセージを１つ以上の第３の装置に送信する動作と、
を実行することにより、前記装置を立ち上げるように構成されるシステム。
【請求項１３】
請求項２ないし８のうちいずれか１項に記載の方法を実行するように構成された、請求項１２に記載のシステム。
【請求項１４】
請求項１２又は１３に記載のシステムでの用途のために構成された装置であって、
特に発光体であり、指向性の光メッセージを通信するように更に構成された装置。
【請求項１５】
−前記装置は、発光体であり、前記発光体の主光源の光が指向性の光メッセージを用いた通信に使用されるという特徴と、
−前記装置は、指向性の光メッセージを通信するために使用される光源、及び／又は他の装置から指向性の光メッセージを受信するために使用される光センサに適用されるコリメータ及び／又はレンズを有するという特徴と、
−前記指向性の光メッセージは、人間の目には見えないという特徴と、
−前記装置は、４つの異なる方向に指向性の光メッセージを通信するように構成されるという特徴と、
−前記装置は、４つの異なる方向に指向性の光メッセージを通信するように構成され、前記異なる方向は、90°の角度だけ離れているという特徴と
のうち少なくとも１つを有する、請求項１４に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク接続された制御システムの装置の自動立ち上げに関し、特に、個々に局所的に光源の制御が必要な場合における照明システムの光源の自動立ち上げに関する。
【背景技術】
【０００２】
ネットワーク接続された制御システムは、商用、産業用及び公共機関の市場及び消費者市場で普及している傾向にある。ネットワーク接続された制御システムの例には、多数の光源を備えた複雑な照明システムがある。特に、専門的な環境では、個々に局所的に光を制御することにますます関心が高まっている。このような環境の例には、温室、工場の建物、スポーツ用のホール、会社のビル、及び室外の（マトリクス）照明ディスプレイがある。例えば、室外の（マトリクス）照明ディスプレイでは、個々の光を制御するメッセージは中央で生成され得るが、例えば、温室／会社では、局所的なセンサの検出結果に基づくこともある。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
光源の個々の制御は、通常では、制御される必要のある各光源（例えば、安定器（ballast））に通信ノードを取り付けることにより行われる。各ノードは、固有のネットワークアドレスを有しているため、メッセージはこれにアドレス指定可能になる。この原理は、他のホームオートメーション装置にも拡張可能である。制御コマンドは、ビル／環境内の所与の位置のノード／ノードのグループに送信され、その位置の照明を管理する。このため、どのランプがどこにあるかを認識し、どのランプが近いかを認識するために、ノードのネットワークアドレスは、これらの物理的位置にマッピングされる必要がある。通常では、これは手動で行われる。設置者は、全ての制御ポイントを歩き回り、典型的には専用ソフトウェアを使用することにより、所与の位置のノードのネットワークアドレス及び位置を記録する。この処理は、しばしば立ち上げ（commissioning）と呼ばれ、面倒で誤りがちな動作である。
【０００４】
WO2007/102114A1は、無線通信ネットワークでの無線通信ノードのグループ化に関し、無線通信ノードは、照明の配列における発光体の動作を制御するように構成される。無線通信ノードの導出された空間配置をグループ化するコンピュータアルゴリズムが提供される。通信ネットワークの各ノードの位置は、照明の配列における特定の発光体の位置に対応する。アルゴリズムは、ノードの配置を複数の空間グループに分け、それぞれがグループのメンバノードを一緒に結びつける線により規定される。各制御グループのメンバノード（従って、発光体）が単一のスイッチ又はセンサにより制御され得るように、グループは統計的属性に従ってランク付けされ、複数のグループが制御グループとして選択される。
【０００５】
ネットワーク接続された制御システムの装置の自動立ち上げのためのシステム、方法及び装置を提供することが、本発明の目的である。
【課題を解決するための手段】
【０００６】
この目的は、独立請求項の対象により解決される。更なる実施例は、従属請求項により示されている。
【０００７】
本発明の基本的な概念は、格子（特に、装置のほぼ矩形の格子）を通じて立ち上げメッセージをルーティングし、各装置が光を介して格子の直接的に隣接する装置から立ち上げメッセージを受信し、これらの装置に立ち上げメッセージを送信する。立ち上げメッセージは、格子を通じたメッセージのホップ毎に更新されてもよいホップカウンタを有し、各装置は、立ち上げメッセージのホップカウンタに従って更新されてもよい位置カウンタを有する。ホール又は温室のように、ネットワーク接続された制御システムが矩形の格子に配置された発光体を備えた照明システムである場合、発光体により生成された主な光は、立ち上げメッセージを送信及び受信するために使用されてもよい。従って、立ち上げメッセージをルーティングするために、RF（無線周波数）受信機及び送信機のような追加の手段は必要ない。その代わりに、符号化光技術（coded  light  technology）が格子を通じたメッセージのルーティングに適用されてもよい。本発明は、格子における装置の規則的な配置を利用することにより、最小の技術的オーバヘッドで可能になる。最後に、立ち上げは、人の支援を必要とせずに完全に自動的な方法で実行され得る。
【０００８】
本発明の実施例は、格子（特に、ほぼ矩形の格子）に配置された複数の装置を有するネットワーク接続された制御システムの装置の自動立ち上げのための方法を提供し、各装置は、格子の直接的に隣接する装置から受信したメッセージを、光を介して格子の直接的に隣接する装置にルーティングするように構成され、立ち上げは、
−第１の装置により、ホップカウンタを有する立ち上げメッセージを第２の装置に送信する動作であり、第２の装置は、格子の所定の方向において第１の装置に隣接する動作と、
−第２の装置により、第１の装置から立ち上げメッセージを受信する動作と、
−第２の装置により、ホップカウンタを更新し、第２の装置の位置カウンタを更新する動作と、
−更新されたホップカウンタを備えた立ち上げメッセージを１つ以上の第３の装置に送信する動作とを有する。
【０００９】
格子の各装置は、格子の境界又は角に位置する装置を除いて、少なくとも２つ（典型的には４つ）の方向の隣接を有する。格子の境界又は角に位置する装置は、それぞれ１つのみ、３つ又は２つの隣接する装置を有する。従って、装置の格子は、装置の配列、装置の２次元配置（例えば、マトリクスのような配置）、装置の３次元配置（例えば、立方体のような配置）のように、装置の配置の少なくとも１つの所定の方向を備えた装置のいずれかの配置を有する。格子において、メッセージは、装置から装置に所定の方向にのみルーティングされ得る。矩形の格子では、所定の方向は、直交する方向（好ましくは、垂直及び水平方向）である。各装置は、格子の位置を決定する座標の組（タプル）により、矩形の格子に配置されてもよい。例えば、[0,0]は、格子の左下の角の位置を決定してもよい。装置の位置カウンタは、座標の組（典型的には、格子における装置の行及び列）を有してもよい。立ち上げメッセージは、メッセージを開始した装置から格子の端の装置（典型的には、格子の境界の装置）にルーティングされる。例えば、立ち上げメッセージが格子の左下の角の装置により格子の所定の垂直又は上方向に開始された場合、メッセージは、格子の全ての行に渡って全体の列を通じてルーティングされ、通常では、格子の左上の角の装置で終了する。同様に、格子の左下の角の装置により所定の水平又は右方向に開始された立ち上げメッセージは、通常では格子の右下の角の装置で終了するまで、格子の全ての列に渡って全体の行を通じてルーティングされる。
【００１０】
第２の装置によりホップカウンタを更新する動作は、ホップカウンタを１だけインクリメントすることを有してもよく、第２の装置の位置カウンタを更新する動作は、位置カウンタを、更新されたホップカウンタ及び実際の位置カウンタの最大値に設定することを有してもよい。従って、格子の装置の位置は、格子を通じて装置から装置にルーティングされて各受信装置により更新された立ち上げメッセージで決定されてもよい。従って、各装置は、立ち上げメッセージのホップカウンタで、所定の方向のその座標を単に決定してもよい。
【００１１】
更に、第２の装置によりホップカウンタを更新する動作は、受信した立ち上げメッセージのホップカウンタと第２の装置の実際の位置カウンタとを比較し、ホップカウンタが第２の装置の実際の位置カウンタ以上であるという比較結果を生じた場合にのみ、ホップカウンタを１だけインクリメントすることを有してもよい。このことにより、欠陥のある装置の問題を回避することが可能になる。欠陥のある装置は、通常では受信した立ち上げメッセージをルーティング及び更新しない。欠陥のある装置は、立ち上げメッセージを開始及び終了させなくてもよい。立ち上げメッセージは、格子の端の装置でのみ開始及び終了するべきである。しかし、欠陥のある装置の隣接で開始した立ち上げメッセージは、不正確なホップカウンタを備えた立ち上げメッセージを生じさせる可能性がある。従って、受信した立ち上げメッセージのホップカウンタと実際の位置カウンタとの比較により、ホップカウンタ及び装置の位置カウンタの不正確な更新が回避され得る。
【００１２】
第２の装置によりホップカウンタを更新する動作は、ホップカウンタが第２の装置の実際のホップカウンタより小さいという比較結果を生じた場合、受信した立ち上げメッセージを拒否することを更に有してもよい。このことにより、格子を通じた立ち上げメッセージの不要なルーティングが回避されるため、立ち上げメッセージの数を小さく保持し、立ち上げメッセージのルーティングによるデータトラヒックを低く保持することが可能になる。
【００１３】
更新されたホップカウンタを備えた立ち上げメッセージを１つ以上の第３の装置に送信することは、更新されたホップカウンタを備えた立ち上げメッセージを、格子の所定の方向において第２の装置に隣接する第３の装置、又は格子の所定の方向及び所定の方向とはそれぞれ異なる２つの更に異なる方向において第２の装置に隣接する第３の装置に送信することを有してもよい。後者の方法により、１つの所定の方向（例えば、上方向）だけでなく、他の方向（例えば、左及び右方向）においても、格子を通じた立ち上げメッセージのルーティングが可能になる。従って、欠陥のある装置が迂回可能になり、欠陥のあるノードによる立ち上げメッセージの紛失が回避され得る。更に、欠陥のある装置に隣接する装置の位置カウンタは、正確であるか否かについて検査されてもよく、最終的に正確になるために更新されてもよい。
【００１４】
所定の方向とは異なる方向において第２の装置に隣接する第３の装置は、格子の所定の方向に立ち上げメッセージを送信してもよい。従って、立ち上げメッセージは、欠陥のある装置の周りでルーティングされるが、所定の方向から外れない。
【００１５】
所定の方向とは異なる方向において第２の装置に隣接する第３の装置はまた、格子の所定の方向、及び所定の方向とはそれぞれ異なる２つの更に異なる方向に立ち上げメッセージを送信してもよい。従って、立ち上げメッセージは、所定の方向だけでなく、他の異なる方向においてもルーティングされてもよい。このことにより、格子を通じて柔軟的に立ち上げメッセージのルーティングが可能になり、欠陥のある装置のクラスタが迂回され得るため、立ち上げを改善することが可能になる。
【００１６】
複数の立ち上げメッセージは、１つ以上の所定の方向において格子を通じて並列にルーティングされてもよい。従って、全体の立ち上げ時間は、基本的には、格子の全ての行に渡って立ち上げメッセージを渡し、これに続いて全ての列に渡って立ち上げメッセージを渡すことにより決定される。ホップカウンタ及び位置カウンタのテストが実行され、立ち上げメッセージが拒否され得る場合、立ち上げメッセージの冗長性は迅速に消滅し得る。
【００１７】
本発明の実施例は、プロセッサが前述のように本発明による方法を実行することを可能にするコンピュータプログラムを提供する。
【００１８】
本発明の更なる実施例によれば、本発明によるコンピュータプログラムを格納した記録担体（例えば、CD-ROM、DVD、メモリカード、ディスク、インターネットメモリ装置、又は光アクセス又は電子アクセスのためのコンピュータプログラムの格納に適した同様のデータ記憶媒体）が提供されてもよい。
【００１９】
本発明の更なる実施例は、PC（パーソナルコンピュータ）のように、本発明による方法を実行するようにプログラムされたコンピュータを提供する。
【００２０】
本発明の更なる実施例は、格子（特に、ほぼ矩形の格子）に配置された複数の装置を有するネットワーク接続された制御システムの装置の自動立ち上げのためのシステムを提供し、各装置は、格子の直接的に隣接する装置から受信したメッセージを、光を介して格子の直接的に隣接する装置にルーティングするように構成され、システムは、
−第１の装置により、ホップカウンタを有する立ち上げメッセージを第２の装置に送信する動作であり、第２の装置は、格子の所定の方向において第１の装置に隣接する動作と、
−第２の装置により、第１の装置から立ち上げメッセージを受信する動作と、
−第２の装置により、ホップカウンタを更新し、第２の装置の位置カウンタを更新する動作と、
−更新されたホップカウンタを備えた立ち上げメッセージを１つ以上の第３の装置に送信する動作とを実行することにより、装置を立ち上げるように構成される。
【００２１】
システムは、前述のように本発明の方法を実行するように更に構成されてもよい。
【００２２】
更に、本発明は、前述のように本発明のシステムでの用途のために構成された装置（特に、発光体）に関し、指向性の光メッセージを通信するように更に構成される。
【００２３】
装置は、以下の特徴のうち少なくとも１つを有してもよい。
−装置は、発光体であり、発光体の主光源の光が指向性の光メッセージを用いた通信に使用される。
−装置は、指向性の光メッセージを通信するために使用される光源、及び／又は他の装置から指向性の光メッセージを受信するために使用される光センサに適用されるコリメータ及び／又はレンズを有する。
−指向性の光メッセージは、人間の目には見えない。
−装置は、４つの異なる方向に指向性の光メッセージを通信するように構成される。
−装置は、４つの異なる方向に指向性の光メッセージを通信するように構成され、異なる方向は、90°の角度だけ離れている。
【図面の簡単な説明】
【００２４】
【図１】温室又はスポーツ用のホール等で矩形の格子に配置された発光体を備えた照明システムの実施例
【図２】本発明による発光体の実施例
【図３】発光体の間で光を用いてデータを送信する変調方式の例
【図４】発光体の間で光を用いてデータを送信する変調方式の異なる例
【図５】本発明による照明システムのようなネットワーク接続された制御システムの装置の自動立ち上げのための方法の実施例のフローチャート
【図６】本発明による図５のフローチャートのステップS14の実施例のフローチャート
【図７】本発明による図５のフローチャートのステップS14の他の実施例のフローチャート
【図８】本発明に従って照明システムにおいて発光体を自動立ち上げする第１のアルゴリズムを実行した後の格子の発光体のアドレスを用いて、矩形の格子の構成された発光体を備えた照明システムの実施例
【図９】隔離された欠陥のある発光体を備えた図８の照明システムと、本発明に従って発光体を自動立ち上げする第１のアルゴリズムを実行した後の発光体のアドレス
【図１０】隔離された欠陥のある発光体を備えた図８の照明システムと、本発明に従って発光体を自動立ち上げする第２のアルゴリズムを実行した後の発光体のアドレス
【図１１】行において複数の欠陥のある発光体を備えた図８の照明システムと、本発明に従って発光体を自動立ち上げする第２のアルゴリズムを実行した後の発光体のアドレス
【図１２】複数の欠陥のある発光体を備えた図８の照明システムと、本発明に従って発光体を自動立ち上げする第２のアルゴリズムに従った格子を通じた立ち上げメッセージの伝搬
【図１３】複数の欠陥のある発光体を備えた図８の照明システムと、本発明に従って発光体を自動立ち上げする第２のアルゴリズムに従った格子を通じた立ち上げメッセージの伝搬
【図１４】行において複数の欠陥のある発光体を備えた図８の照明システムと、アドレス[2,6]の発光体で開始する立ち上げメッセージのルート
【図１５】行において複数の欠陥のある発光体を備えた図８の照明システムと、本発明に従った立ち上げメッセージのマルチキャストルーティングアルゴリズムの例
【図１６】行において複数の欠陥のある発光体を備えた図８の照明システムと、本発明に従った立ち上げメッセージのブロードキャストルーティングアルゴリズムの例
【発明を実施するための形態】
【００２５】
本発明の前記及び他の態様は、以下に説明する実施例から明らかになり、以下に説明する実施例を参照して説明する。
【００２６】
本発明について、例示的な実施例を参照して以下に詳細に説明する。しかし、本発明は、これらの例示的な実施例に限定されない。
【００２７】
以下では、機能的に同様又は同一の要素は、同じ参照符号を有することがある。以下に説明する本発明の実施例が照明システムに関するとしても、本発明は、概して、立ち上げられる複数の装置を有するネットワーク接続された制御システムに適用可能である。
【００２８】
専門的な環境では、個々に局所的に光を制御することにますます関心が高まっている。このような環境の例には、温室、工場の建物、スポーツ用のホール、会社のビル、及び室外の（マトリクス）照明ディスプレイがある。全ての発光体をオン又はオフに切り替える代わりに、特定の領域に局所的に照明効果を生成するために（例えば、会社のビルの特定の領域を照らすために、又は温室の特定の場所の或る植物のみに照明を生成するために）、単一の発光体又は発光体のグループを制御することが好ましい。また、しばしば、例えば、照明システムの中央コントローラで、照明システムの発光体を個々に制御する必要がある。これは、照明システムの全ての発光体が立ち上げられている場合（すなわち、どの発光体を活性化するかをオペレータが判定できるように、照明設備におけるこれらの少なくとも相対位置により、コンピュータのデータベースに記録されている場合）にのみ可能である。複雑な照明システムは、通常では、ネットワーク接続された制御システムとして構成される。これは、発光体又は発光体のグループのようなシステムの装置がネットワークの一部であり、例えば制御メッセージにより、個々にアドレス指定されて制御され得ることを意味する。制御メッセージは、例えば室外の（マトリクス）照明ディスプレイの発光体を制御するために提供されたコンピュータのような例えば中央コントローラにより生成されてもよく、また、例えば温室又は会社の照明システムにおける局所的なセンサの検出結果に基づいてもよい。
【００２９】
典型的には、このようなネットワーク接続された照明システムの発光体の個々の制御は、制御される必要のある各発光体（例えば、安定器（ballast））に通信ノードを取り付けることにより行われる。ノードは、発光体に統合されてもよく、別の装置として取り付けられてもよい。アドレス指定可能なノードは、ネットワーク接続された制御システムの装置を形成する。ノードは、単一の発光体を制御してもよく、複数の発光体を制御してもよい。ネットワーク接続された照明システムでは、各ノードは固有のネットワークアドレスを有しているため、中央コントローラからのメッセージは、これに直接アドレス指定されてルーティング可能になる。メッセージは、アドレス指定されたノードに取り付けられた装置を制御するいずれかの制御コマンド（例えば、「アドレスxyzを備えたノードに接続された全ての発光体を暗くする」又は「アドレスxyzを備えたノードの発光体を活性化する」）を意味する。メッセージ又は制御コマンドは、ビル又は環境内の所与の位置のノード又はノードのグループに送信され、その位置の照明を管理する。位置における発光体を制御可能にするために、ノードのネットワークアドレスは、これらの物理的な位置にマッピングされる必要がある。どのランプがどこにあり、どのランプが特定の位置に近いかという知識がなければ、個々の制御又は局所的な制御は不可能である。ネットワーク接続された照明システムのノード又は装置のネットワークアドレスのマッピングは、ここでは立ち上げ（commissioning）と呼ばれる。立ち上げは面倒で誤りがちな処理であり、典型的には手動で実行されるため、立ち上げ中の誤りを回避するだけでなく、時間及びコストを節約するためにも、自動立ち上げ（automatic  commissioning又はauto-commissioning）処理が望まれる。
【００３０】
専門的な環境では、照明システムの発光体は、しばしば矩形の格子に構成される。格子上の発光体の位置（従って、ノードの位置）は、事実上ノードの物理的位置を表し、メッセージを制御するために使用されてもよい。このように、発光体の物理的位置とその制御アドレスとの間に固有のマッピングが存在する。格子点として表される位置は、格子パスを通じた線でノードを接続することにより、容易に決定可能である。格子における発光体の間の接続は、有線又は無線で（例えば、RF（無線周波数）若しくはIR（赤外線）又は可視光線を介して）行われてもよい。格子の対策において発光体が有線により接続される場合、ほとんどの発光体は、例えばほとんどの応用標準DALI又はDMXのようなバス構造の場合の１つのみの線ではなく、隣接する発光体に接続されるために４つの線を必要とする。DALI又はDMXは、しばしば室外のマトリクス照明ディスプレイに使用される。格子の対策におけるこの複雑な配線は、設置者が制御線の接続の際に誤る可能性を明らかに増加させる。従って、本発明は、各発光体の光源の光を再利用し、自動立ち上げを実行することを提案する。一実施例では、この光はまた、制御又は立ち上げメッセージを伝搬するためにも使用される。
【００３１】
図１は、矩形の格子に配置された発光体を有する照明システム20の例を示している。図１はまた、矩形の格子の発光体（矩形の箱により示される）がどのように光円錐（両方向の矢印により示される）により相互接続されるかも示している。格子の各発光体は、直接的に隣接する発光体に接続されており、例えば、発光体10は同じ列の上方向の発光体12、同じ列の下方向の発光体16、同じ行の右方向の発光体14、及び同じ行の左方向の発光体18に接続されている。接続は、発光体又はノードがメッセージ又はコマンドを他の直接的に隣接する発光体又はノードに送信し得る通信接続を意味する。第１の発光体から第２の発光体に送信されたメッセージは、所定の方向に格子の第３の発光体に転送されてもよく、メッセージが所定の方向に直接的に隣接するものがない発光体により受信されるまで同様に転送されてもよい。メッセージは、特定の状況で各受信発光体により更新されてもよい。これにより、格子における発光体の位置を決定することが可能になる。例えば、メッセージを格子の上又は右の隣接に送信することにより、発光体の物理的位置は、以下に詳細に説明するように自動的に確立されてもよい。メッセージ又はコマンドは、これらの位置を例えばメッセージ又はコマンドに含まれる宛先指示子に表すことにより、発光体又はノードに送信される。ルーティングアルゴリズムは、以下に詳細に説明するように、どのようにメッセージが格子で転送されるべきかを計算する。
【００３２】
前述のように、発光体は光（特に、各発光体の主光源により生成された光）を介して通信する。光円錐を生成するために、図２に例示するように、光コリメータが使用されてもよい。或いは、指向性の光を生成するために、レンズが適用されてもよい。発光体の間の光の相互接続は、符号化光（coded  light）（可視光線通信を介したデータ送信技術）で実現されてもよい。発光体のランプは、光源の種類に応じて数kbpsから数百kbpsに及ぶデータストリームを放射する。隣接する発光体では、光は狭い開口角度（例えば、10°）の円錐で受信される。実施例では、発光体により送信された光は、全ての隣接する発光体により受信され得るように、無指向性でもよい。自動立ち上げに必要な位置決定処理は、光通信の受信機の方向性のみに基づいてもよい。代替実施例では、放射された光は指向性でもよい。この実施例では、異なるデータが格子の４つの異なる方向に送信される必要がある。これは、主光源からの光を供給するコリメータにより実現可能である。独立したメッセージを発光体の異なる側に送信可能にするために、チューブ（tube）は、1/4の時間のみ開口するシャッターを備えてもよい。これらのシャッターは、発光体の主なランプにより送信されるデータと同期するべきである。すなわち、シャッターは、データがその側に送信されるべき場合に開口されるべきである。受信機は、指向性の受信を実現するために、同じチューブに配置されてもよい。
【００３３】
或いは、光の相互接続は、データ通信用に発光体に追加された更なる光源を用いて実現されてもよい。例えば、この追加の光源は、IR  LED（Infrared  Light  Emitting  Diode）でもよい。これは、主光源が完全にオフになっている場合でも、この対策が使用可能であるという利点を有する。更に、異なる光源は、前述の対策のようにシャッターを必要とすることなく、主光源とは独立して変調可能である。
【００３４】
本発明に適用可能な符号化光技術は、可視光源からの光の変調を適用してもよい。このことにより、データを光自体に埋め込むことが可能になる。変調は、人間の目に見えないように設計されてもよい。このような特徴は、光の外乱が容認できないため、消費者用途にとって特に重要である。しかし、立ち上げのような専門的な用途では、或る程度の可視のちらつきを生成するデータ変調も許容可能になり得る。異なる種類の光源は、異なる変調方式を使用してもよい。一例として、異なる変調方式は、SSL（solid  state  light）光源及び蛍光灯光源に適用されてもよい。蛍光灯、HID及びハロゲンのような他の光源の変調も可能である。
【００３５】
図３は、SSL光源の光変調方式の実施例を示している。SSL光源を駆動する通常の方法は、一連の矩形パルスにより構成されたパルス電流を使用することである。パルスの長さを調整することにより、従って、電流のデューティサイクルを調整することにより、光のレベルが変化し得る。パルスの長さの小さい変化を生成することにより、データ変調が可能になる。十分に短くて頻繁である場合、これらの変化は人間の目には知覚できない。
【００３６】
図４は、蛍光灯光源の光変調方式の例を示している。蛍光灯光源を駆動する通常の方法は、半ブリッジを介してランプに注入される高周波数の交流を使用することである。半ブリッジは、低域フィルタとして動作するため、電流の周波数を変化することは、ランプに届く電力に影響を与え、従って、光のレベルに影響を与える。光のレベルの小さい変化を生成することにより、データ変調が可能になる。十分に短くて頻繁である場合、これらの変化は人間の目には知覚できない。
【００３７】
前述のように、発光体の間の相互接続を可能にするために、追加の光源が追加されてもよい。例えば、IR  LEDが使用されてもよい。
【００３８】
以下では、本発明による立ち上げの対策が、簡単にDALIと比較される。DALIコマンドは、I/O制御ユニットを介して、バスシステムを介した発光体に渡される。この階層的な手法は、図１の有線の格子で示す通信の対策では必要にならない追加の制御ユニットを導入する。DALIアドレス指定方式は、設備毎に限られた量のアドレスを有するが（64個のノードの16のグループで、合計1024個）、有線の格子でのアドレス指定は、より柔軟的であり、少なくとも100行及び100列で最低でも10000を生じるものをカバーすることが想定される。更に、DALI標準は、自動立ち上げには容易に修正可能ではない。その代わりに、本発明による有線の格子は、特に格子での立ち上げ目的に作られている。特別な対策は、格子の接続をDALI制御に追加することでもよい。DALIインフラストラクチャが発光体を実際に制御するために使用さ得る一方で、格子の接続が立ち上げを行ってもよい。
【００３９】
次に、図１に示すように、発光体のような装置の矩形の格子の装置の自動立ち上げのための方法の第１の実施例について、図５を参照して説明する。図５は、この方法を実装するアルゴリズムのフローチャートを示している。第１のステップS10において、図１の照明システム20の発光体16のような第１の装置は、前述のような符号化光技術を介して、立ち上げメッセージを、図１の上方向のような所定の方向に図１の発光体10のような第２の装置に送信する。ステップS12において、第２の装置又は発光体16によりメッセージが受信され、受信したメッセージに含まれるホップカウンタを読み取るために復号化される。次にステップS14において、ホップカウンタが更新される。例えば、格子の第１から第２の装置へのメッセージの１ホップに対して１だけインクリメントされる。また、第２の装置に格納された位置カウンタも更新され、典型的には、メッセージのインクリメントされたホップカウンタに設定される。次のステップS16において、更新されたホップカウンタを備えた立ち上げメッセージは、第２の装置により、図１の発光体12のような少なくとも１つの第３の装置に送信される。この処理は、所定の方向の最後の装置に到達するまで続けられる。すなわち、図５に示すフローチャートは、典型的には、格子の全ての装置を立ち上げる複雑な方法の一部である。
【００４０】
図６は、図１のステップS14の実施例を詳細に示している。ステップS1412において、立ち上げメッセージのホップカウンタは、１だけインクリメントされる。次のステップS1416において、第２の装置の位置カウンタは、実際のホップカウンタ及び位置カウンタの最大値に設定される。例えば、図１に示す照明システムの発光体16が、第２の装置としての発光体10への所定の方向として上方向にホップカウンタの値0を備えた立ち上げメッセージを送信した場合、発光体10は、ホップカウンタを値0から1にインクリメントし、その列の位置のその初期の位置カウンタが0であるため、その列の位置のその位置カウンタを1に設定する。
【００４１】
図７は、図１のステップS14の他の実施例を示している。これは、欠陥のあるノード又は装置が装置の格子に存在する場合に生じ得るように、受信した立ち上げメッセージに含まれるホップカウンタがもっともらしくない場合、受信した立ち上げメッセージが拒否されてもよいという点で、図６の実施例とは異なる。以下に、欠陥のある装置の場合及び本発明による立ち上げ方法へのその影響について、以下に詳細に説明する。図７の実施例は、受信した立ち上げメッセージのホップカウンタが受信側の第２の装置の実際の位置カウンタ以上であるか否かを検査するステップS1410を有する。ホップカウンタが小さい場合、ステップS1414において、受信した立ち上げメッセージは拒否される。これは、メッセージが更新されず、第３の装置に渡されないことを意味する。従って、送信されるメッセージの数をかなり低減する。これは、例えば、欠陥のある装置のため立ち上げメッセージが不正確なホップカウンタを有する場合、又は格子の中央の装置又はノードにより開始された場合である。しかし、ホップカウンタが第２の装置の実際の位置カウンタ以上である場合、ステップS1412において、ホップカウンタは１だけインクリメントされる。また、次のステップS1416において、第２の装置の位置カウンタも、更新されたホップカウンタ及び実際の位置カウンタの最大値に設定することにより更新される。
【００４２】
次に、本発明による立ち上げアルゴリズムの複数の実施例について、図８に示すような矩形の格子に配置された発光体を備えた照明システムを用いて詳細に説明する。
【００４３】
前述のように、立ち上げアルゴリズムは、列及び行で表される位置を格子の各ノードに割り当てる役目をする。以下では、ノードが複数の発光体を制御し得る場合であっても、ノードは発光体である。アルゴリズムの複雑性は、欠陥のある仮説及び光の束の範囲に依存する。x隣接は、x方向の隣接するものであり、xは{上、下、左、右}である。隔離された欠陥のあるノードは、ノードに欠陥があるが、全てのその隣接するものが正確であることを意味する。最初の仮定は、アルゴリズムが実行される前に全てのノードがオンであることである。最終的には、オンの順序の結果として見られる。
【００４４】
アルゴリズム１：
第１のアルゴリズム１は、最も簡単なものであり、図５に示すフローチャートの方法に対応する。格子のノードの全てに欠陥がないことを仮定する。すなわち、各ノードは、立ち上げメッセージを隣接するノードに通信することができる。各ノードは、位置カウンタとして、[列カウンタ,行カウンタ]の対又は組を有する。これは(0,0)に初期化される。位置カウンタは、立ち上げアルゴリズムを実行した後に、格子におけるノードの相対位置を決定する。列メッセージ及び行メッセージは、立ち上げメッセージとして区別される。第１のアルゴリズム１によれば、各ノードは、0に初期化されたエントリ行ホップを備えた行メッセージmsを上方向に送信する。例えば図８では、ノード又は発光体[0,0]は、行メッセージmsを所定の上方向のノード[1,0]に送信する。エントリ行ホップは、メッセージのホップカウンタの一部である。ノードにより下方向から行メッセージmsを受信すると、ms.行ホップの値が１だけインクリメントされ、行カウンタの値は、MAX(ms.行ホップ,行カウンタ)に等しく設定される。インクリメントされた値を備えたメッセージは、列の最後のノードに到達するまで、上方向に送信される。列カウンタの値を計算するために、同じ処理が繰り返される。各ノードは、0に初期化されたエントリ列ホップを備えた列メッセージmsを右方向に送信する。同様に、エントリ列ホップは、メッセージのホップカウンタの一部である。左方向から列メッセージmsを受信すると、ms.列ホップの値が１だけインクリメントされ、列カウンタの値は、MAX(ms.列ホップ,列カウンタ)に等しく設定される。立ち上げ処理の最終結果が図８に示されている。緑の点はノードを表し、位置カウンタ（すなわち、[x,y]の対）は計算された行及び列番号を表す。ここで、各ノードの位置カウンタは、格子におけるノードの相対位置を決定する。すなわち、[0,0]が格子の左下の角であり、[4,6]が右上の角である。
【００４５】
他の状況では、立ち上げメッセージの範囲は１ホップであり、格子が隔離された欠陥のあるノード（例えば、不具合のある発光体）を含み、アルゴリズムが立ち上げメッセージの紛失なしに動作する。この場合は、格子に欠陥のあるノードが存在しない前述の状況に比べて困難である。アルゴリズム１の列及び行の部分が実行されると、立ち上げメッセージは、格子の端の点で開始及び終了するだけでなく、欠陥のあるノードでも開始及び終了する。図９では、アルゴリズム１を実行した後のラベルの結果は、欠陥のあるノードの先から、行番号及び列番号が再びゼロから始まることを示している。欠陥のあるノードは星形で表されている。従って、アルゴリズム１は、欠陥のあるノードがない格子でうまく動作するが、欠陥のあるノードが格子に存在する場合には、正確な立ち上げ結果を提供しない。
【００４６】
アルゴリズム２：
欠陥のあるノードが隔離されている（すなわち、欠陥のある１ホップ隣接するノードを有さない）という仮定で、アルゴリズムは、より多くのメッセージで動作するようにされ得る。第２のアルゴリズム２によれば、各ノードは、0に初期化されたエントリ行ホップを備えた行メッセージmsを上方向に送信する。下方向から行メッセージmsを受信すると、受信ノードは、ms.行ホップ<行カウンタであるか否かを検査する。該当する場合、受信した行メッセージは、受信ノードにより拒否される。ms.行ホップ≧行カウンタである場合、ms.行ホップの値が１だけインクリメントされ、行カウンタの値は、MAX(ms.行ホップ,行カウンタ)に等しく設定される。これは、前述のように図７に示す手順に対応する。インクリメントされた値を備えた行メッセージmsは、左、上及び右方向に送信される。これは、所定の方向のみにメッセージの送信を可能にする第１のアルゴリズム１とは異なる。左（右）方向から行メッセージmsを受信すると、ms.行ホップの値は、行カウンタの値と比較される。ms.行ホップ>行カウンタである場合、行カウンタは、ms.行ホップに等しく設定され、メッセージは、インクリメントされたms.行ホップを備えて、再び所定の方向（すなわち、上方向）に送信される。列カウンタの値を見つけるために、同じ処理が繰り返される。各ノードは、0に初期化されたエントリ列ホップを備えた列メッセージを右方向に送信する。左方向から列メッセージmsを受信すると、受信ノードは、ms.列ホップ<列カウンタであるか否かを検査する。該当する場合、列メッセージは拒否される。ms.列ホップ≧列カウンタである場合、ms.列ホップの値が１だけインクリメントされ、列カウンタの値は、MAX(ms.列ホップ,列カウンタ)に等しく設定される。インクリメントされた値を備えたメッセージmsは、上、右及び下方向に送信される。上（下）方向から列メッセージmsを受信すると、ms.列ホップの値は、列カウンタの値と比較される。ms.列ホップ>列カウンタである場合、列カウンタは、ms.列ホップに等しく設定され、メッセージは、インクリメントされたms.列ホップを備えて、右方向に送信される。
【００４７】
第２のアルゴリズム２はほとんどの場合に動作することが、図１０からわかる。例えば、ノード[2,2]は、図９に示すように、第１のアルゴリズム１により[0,2]で誤ってラベル付けされている。この改善した第２のアルゴリズム２では、下から[2,3]において到達するメッセージは、列の値2を左及び右に送信するため、[2,2]に送信する。ノード[2,2]は、0を2で上書きし、正確にラベル付けされる。ノードは、このメッセージを上に送信し、ノード[2,3]（以前に誤ってラベル付された[1,0]）は、ラベルを[1,3]に変更する。以下同様である。次の段階では、行番号も訂正される。メッセージのホップ値がノードでの計算値より低い場合、メッセージは拒否され、トラヒック及び遅延を低減する。しかし、アルゴリズム２は、クラスタの複数のノードに欠陥がある場合（例えば、行、列又は双方の複数の隣接するノードに欠陥がある場合）、正確な立ち上げ結果を提供しない。図１１は、行の複数のノードに欠陥がある場合、アルゴリズム２の望ましくない結果を示している。例えば、ノード[4,3]は、[4,0]で誤ってラベル付けされる。この理由は、列番号3を備えた行メッセージがノード[2,3]を介してノード[3,3]に到達したが、ノード[4,3]に渡されないからである。ノード[4,4]の列番号は、ノード[3,4]から更新される。同じことが、ノード[2,6]から更新されないノード[0,6]及び[1,6]について生じる。
【００４８】
アルゴリズム３：
第２のアルゴリズム２は、より多くのメッセージを行又は列方向に送信することにより、ロバストになり得る。この拡張は、第３のアルゴリズム３に導く。第３のアルゴリズムはまた、隔離されていない欠陥のあるノードでも動作する。１つの列メッセージ及び１つの行メッセージのフローが、それぞれ図１２及び１３に示されている。ラベルR=x又はC=xは、メッセージで伝送される列番号又は行番号を示している。C=1を備えた単一の列メッセージ又はR=1を備えた単一の行メッセージの送信元は、全体ネットワークのほとんどに浸透する。図７に示すように低い値を備えたメッセージを拒否するノードのテストは、ネットワークが多すぎるメッセージで溢れることを回避する。
【００４９】
アルゴリズム３は、以下のように動作する。各ノードは、0に初期化されたエントリ行ホップを備えた行メッセージmsを上方向に送信する。下方向から行メッセージmsを受信し、ms.行ホップ<行カウンタである場合、メッセージは拒否される。ms.行ホップ≧行カウンタである場合、ms.行ホップの値が１だけインクリメントされ、行カウンタの値は、MAX(ms.行ホップ,行カウンタ)に等しく設定される。第２のアルゴリズムと同様に、インクリメントされた値を備えたメッセージは、右、上及び左方向に送信される。右（左）方向から行メッセージmsを受信すると、ms.行ホップの値は、行カウンタの値と比較される。ms.行ホップ>行カウンタである場合、行カウンタは、ms.行ホップに等しく設定され、メッセージは、右及び左方向に送信され、インクリメントされたms.行ホップを備えて上方向に送信される。これは、所定の方向のみに送信を可能にする第２のアルゴリズム２とは異なる。列カウンタの値を見つけるために、同じ処理が繰り返される。各ノードは、0に初期化されたエントリ列ホップを備えた列メッセージmsを右方向に送信する。左方向から列メッセージmsを受信し、ms.列ホップ<列カウンタである場合、メッセージは拒否される。ms.列ホップ≧列カウンタである場合、ms.列ホップの値が１だけインクリメントされ、列カウンタの値は、MAX(ms.列ホップ,列カウンタ)に等しく設定される。インクリメントされた値を備えたメッセージは、上、右及び下方向に送信される。上（下）方向から列メッセージmsを受信すると、ms.列ホップの値は、列カウンタの値と比較される。ms.列ホップ>列カウンタである場合、列カウンタは、ms.列ホップに等しく設定され、メッセージは、上及び下方向に送信され、インクリメントされたms.列ホップを備えて、右方向に送信される。隣接する欠陥のあるノードが行又は列に存在する場合、アルゴリズムは完全に動作する（ネットワークの分離が存在しない場合）。アルゴリズムの並列処理のため、全体の立ち上げ時間は、全ての行に渡ってメッセージを渡し、これに続いて全て列に渡ってメッセージを渡すことにより決定される。アルゴリズムにおけるメッセージの冗長性は迅速に消滅する。この理由は、カウンタでのテストは、ほとんどの冗長メッセージの場合にメッセージの拒否を行うからである。わずかのメッセージの紛失のある場合、格子の完全な立ち上げを実行するために、アルゴリズムを２回実行することで十分になり得る。
【００５０】
隣接するノードの検出：
メッセージのルーティング中に、４つの方向のいずれかに隣接するものが存在するか否かを示すことは興味があるかもしれない。これを実行するために以下のアルゴリズムが提案される。各方向は、３つの値（接続中、不明、切断中）を備えた接続変数{上、下、右、左}を有してもよい。全ての接続変数は、元々は接続中に設定される。定期的な間隔で、ノードは、“present?”メッセージを所与の方向に送信し、値が接続中である場合には接続を不明に設定し、そうでない場合には切断中に設定する。“present?”メッセージを受信したノードは、“present!”メッセージを返信する。ノードが“present!”メッセージを受信すると、対応する接続変数を接続中に設定する。従って、方向が切断中の値を有する接続変数を有する場合、ルーティングは、その方向にメッセージを送信する必要がない。この理由は、動作中の隣接するものが存在しないからである。１ホップ離れて隣接するものが“present?”メッセージに応答し得ることを回避するために、“present!”メッセージは、応答側ノードのソースアドレスを含んでもよい。この場合、宛先ノードは、アドレスを比較し、不要なものを拒否することができる。これは、立ち上げがそのジョブを正確に行ったことを仮定する。
【００５１】
ノード切り替えの順序：
次に、ノード切り替えの順序について説明する。発光体をオンにする際の２つの段階が区別されてもよい。第１の段階では、発光体は、主電源に接続される。この時点で、ノードはオンになり、ドライバが電源供給される。第２の段階では、DALIコマンドがネットワーク上でノードに送信され、発光体の光をオンにする。ドライバはオンの時点に多くの電流を引き出すため、ノード切り替えは同時に行うことができない。従って、立ち上げが正確に終了するか否かを確認するために、ノードが本発明に従ってオンになる順序の２つの手法を以下に詳細に説明する。
【００５２】
第１の本発明の手法：切り替えの順序：
まず、全体の行のノードが同時にオンになるが、列が所定の順序でオンになることを仮定する。本発明による立ち上げアルゴリズムは、全体の行では正確に動作するが、列の部分が開始するときに実行を停止する。一般性を失うことなく、ノードが所与の順序でオンになったときの行の動作について検討され得る。まず、最も左のノードがオンになり、その右の隣接がオンになり、その右の隣接がオンになることを仮定する。ノード[0,0]では、立ち上げメッセージは、右に送信されるが、[0,1]には到達しない。立ち上げメッセージは[0,0]からそれ以降送信されない。ノード[0,1]がオンになると、[0,0]から立ち上げメッセージを受信せず、その列番号は増加しない。同じ理由が全ての右の隣接に当てはまり、全ての列番号がゼロのままになるという結論になり得る。
【００５３】
これを回避するため、本発明は、右から左にノードをオンにすることを示唆する。ノード[0,k]がオンである場合、ノード[0,k+1]〜[0,n]は全てオンである。ノード[0,k]からのメッセージは、行を通じて浸透し、列番号を増加させる。ノード[0,0]がオンになると、行アルゴリズムがその結論まで実行し、この行の全てのノードは、ノードに欠陥がない限り、正確な列番号を有する。最初に最高の番号を備えた行からオンになる行のオンの順序で、同じことが行われ得る。行がオンになっている間に、最後のオンのノードにより生成された低い列番号を備えたメッセージは、上及び下の隣接により拒否される。この理由は、メッセージの列番号は、ノードの列番号より低いからである。
【００５４】
第２の本発明の手法：接続の検査及びノードのリセット：
この第２の手法によれば、ノードは、“node-up”メッセージをその下及び左のチャネルで送信する。ノードがその右のチャネルで“node-up”メッセージを受信すると、その右のチャネルで列メッセージを送信する。ノードがその上のチャネルで“node-up”メッセージを受信すると、上のチャネルで行メッセージを送信する。左の最も下のノードがオンである場合、全ての直接的に接続されたノードの列及び行カウンタは正確な値を有することが、容易に分かる。直接的に隣接するものが応答するのではなく、１ホップ離れて隣接するものが応答する場合について、以下で検討する。全行がオフになっていることを仮定する。この場合、ネットワークは、オフになっている行が存在しないかのように動作する。次に、行のノードの一部のみがオフになっている場合を考える。これは、まさにアルゴリズム３で検討された場合である。従って、全ての接続されたノードは、受信した最も高い行及び列番号を使用する。
【００５５】
次に、本発明によるメッセージルーティングアルゴリズムの実装について以下に詳細に説明する。
【００５６】
列及び行における簡単なアドレス指定のため、欠陥のあるノードのないルーティングは非常に簡単になり得る。本発明によるルーティングアルゴリズムの実施例は、まず、ノードの列番号と宛先の列番号とを比較してもよい。ノードの列が宛先の列より小さい（大きい）場合、メッセージは右（左）にルーティングされる。列が等しく、ノードの行番号が宛先の行番号より小さい（大きい）場合、メッセージは上（下）にルーティングされる。
【００５７】
欠陥のあるノードが存在する場合、ルーティングはより複雑になる。以下に、本発明によるアルゴリズムの２つの実施例が与えられる。すなわち、(1)送信側が送信を開始したときに実行されるものと、(2)受信側がメッセージを受信したときに実行されるものである。（立ち上げ）メッセージmsは、障害物に遭遇した後に、所与の方向に移動することを示すために、４つのブール値を与えられる。
ML：左のチャネルで障害物に遭遇した
MR：右のチャネルで障害物に遭遇した
MU：上のチャネルで障害物に遭遇した
MD：下のチャネルで障害物に遭遇した
メッセージmsは、５つの属性を有する。
ms.row_src及びms.column_srcはソースアドレスを表す。
ms.row_dst及びms.column_dstは宛先アドレスを表す。
ms.htlは存在ホップ数（hops  to  live）を表す。
【００５８】
送信側では、パケットはその過程で送信される。
msにおいて、{MD,MU,MR,ML}をFALSEに設定する。
ms.htlを3*abs(行カウンタ-ms.row._dst)+3*abs(列カウンタ-ms.column_dst)に等しくなるように初期化する。
行カウンタ<ms.row_dst且つ上=接続中である場合、パケットを上に送信する。
そうでなければ、行カウンタ>ms.row_dst且つ下=接続中である場合、パケットを下に送信する。
そうでなければ、列カウンタ>ms.column_dst且つ左=接続中である場合、パケットを左に送信する。
そうでなければ、列カウンタ<ms.column_dst且つ右=接続中である場合、パケットを右に送信する。
そうでなければ、列カウンタ<>ms.column_dstである場合、{
列カウンタ<ms.column_dstである場合、ms.MR:=TRUE
そうでなければ、ms.ML:=TRUE
上=接続中である場合、パケットを上に送信する
そうでなければ、下=接続中である場合、パケットを下に送信する}
そうでなければ、ms.row_dst<>行カウンタである場合、{
行カウンタ<ms.row_dstである場合、ms.MU:=TRUE
そうでなければ、ms.MD:=TRUE
右=接続中である場合、パケットを右に送信する
そうでなければ、左=接続中である場合、パケットを左に送信する}
受信したパケットは宛先に到達しているか、ルーティングされなければならない。
【００５９】
パケットの受信時に、ms.htlは１だけデクリメントされる。ms.row_dst=行カウンタ且つms.column_dst=列カウンタである場合、宛先に到達している。条件が偽であり、ms.htl>0である場合、パケットはルーティングされる。
【００６０】
パケットのルーティング：
MD、MR、ML及びMUがFALSEである場合、送信アルゴリズムが使用される。
【００６１】
他の場合、送信は受信チャネルに依存する。
%%障害物に進んだ場合の第１のテスト
ms.MD（=TRUE）且つ下=接続中である場合、ms.MD:=FALSEとし、パケットを下に送信する。
そうでなければ、ms.MU（=TRUE）且つ上=接続中である場合、ms.MU:=FALSEとし、パケットを上に送信する。
そうでなければ、ms.MR（=TRUE）且つ右=接続中である場合、ms.MR:=FALSEとし、パケットを右に送信する。
そうでなければ、ms.ML（=TRUE）且つ左=接続中である場合、ms.ML:=FALSEとし、パケットを左に送信する。
%%障害物が依然として存在する場合
そうでなければ、受信が右である{左=接続中である場合、パケットを左に送信し、そうでなければ、パケットを右に送信する}
そうでなければ、受信が左である{右=接続中である場合、パケットを右に送信し、そうでなければ、パケットを左に送信する}
そうでなければ、受信が上である{下=接続中である場合、パケットを下に送信し、そうでなければ、パケットを上に送信する}
そうでなければ、受信が下である{上=接続中である場合、パケットを上に送信し、そうでなければ、パケットを下に送信する}
そうでなければ、メッセージを拒否する
図１４には、ノード[2,6]からノード[0,0]へのルートが示されている。初めに、行カウンタは、ms.row_dstより小さく、パケットは下にルーティングされる。ノード[0,6]において、左は接続中ではなく、ms.MLはTRUEに設定される。上のみが接続中であり、パケットは上にルーティングされる。ノード[3,6]に到達すると、左が接続中であり、ms.MLはFALSEに設定される。ノード[3,4]において、下が接続中であり、パケットはノード[0,4]になるまで下にルーティングされる。[0,4]から左にルーティングされる。
【００６２】
次に、本発明によるマルチキャストメッセージルーティングアルゴリズムの実装について詳細に説明する。
【００６３】
光は、列又は行のパターンでオン及びオフされる。同じコマンドがノードの全体の行又は列に送信されることが考えられ得る。基本的な概念は、メッセージは、メッセージができるだけ迅速に列（行）の全てのノードに到達するように、宛先の行（列）に対する方向にその方向に垂直に複製される。効率性の理由で、各ノードで既に受信したメッセージのリストを維持することが必要である。到達したメッセージが以前に受信されている場合、受信ノードにより送信されない。元の行及び列番号と、発信元から送信されたマルチキャストメッセージの番号とを含むメッセージに、固有の識別子が格納される。
【００６４】
アルゴリズムは以下のように動作する。メッセージが全体の列に送信されることを仮定する。行の扱いも同様である。発信元は、列の方向にメッセージを送信し、双方向に列と並列にメッセージを送信する。受信側は、このブロードキャストが以前に受信されたか否かを検査する。そうでない場合、同じ行の隣接するものから生じたメッセージについては、メッセージは、列に並列に双方向に送信される。宛先の列番号が受信ノードの列とは異なる場合、メッセージは行に沿って送信される。例が図１５に示されている。矢印はブロードキャストメッセージの送信を表し、矢印の隣の数字はメッセージのホップ数を表す。ノード[1,0]はマルチキャストを列3（すなわち、ノード[x,3]の全て）に送信する。第１のホップでのメッセージは、ノード[0,0]、[2,0]及び[1,1]に送信される。第２のホップの後に、[2,1]及び[0,1]に到達する。メッセージは複数回到達するが、１回のみ送信される。列0に沿って送信されたメッセージは最終的には失われる。４ホップの後に、ノード[2,3]及び[0,3]に到達する。従って、列3の全てのノードに６ホップ内に到達する。
【００６５】
図１６に示すように、ノード[3,3]に欠陥があることを仮定する。このアルゴリズムでは、ノード[4,3]がネットワークに接続されていても、ノード[4,3]には到達しない。更に悪いことに、発信元が列3の中にあり、列3の１つのノードに欠陥があることを仮定する。この場合も同様に、列の一部のみがマルチキャストを受信する。ロバストにするために、宛先の行又は列を含む全ての接続されたノードに到達するために、ブロードキャストが望まれる。ブロードキャストでは、各メッセージは、ソースアドレスとソースでのブロードキャスト番号とで固有に識別される。ブロードキャストメッセージの受信時に、識別子は既に存在する識別子と比較される。識別子がノードに存在する場合、何も行われない。そうでない場合、識別子は格納され、メッセージは、メッセージが到達したチャネル以外の全ての３つの方向に送信される。発信元は、メッセージを全ての４つの方向に送信する。メッセージの宛先アドレスがノードアドレスに対応する場合、メッセージはアプリケーションに渡される。この動作が図１６に示されている。図１６は、欠陥のあるノード[3,3]で図１５とは異なっている。図１６は、複数の欠陥のあるノードにもかかわらず、ブロードキャストメッセージがホップ8の後に接続されたノード[4,3]に到達することを示している。欠点は、より多くのメッセージが送信され、より多くのノードにブロードキャストメッセージが到達することである。
【００６６】
本発明は、複数の光源を備えた複雑な照明システム（例えば、家庭、店及び会社の用途で設置された照明システム）のような如何なるネットワーク接続された制御システムに適用されてもよい。本発明は、光源がほぼ矩形の格子に配置された専門的な環境の自動立ち上げ／構成に特に適用可能である。このような環境の例には、温室、工場の建物、スポーツ用のホール、会社のビル、及び室外の（マトリクス）照明ディスプレイがある。
【００６７】
本発明の機能の少なくともいくつかは、ハードウェア又はソフトウェアにより実行されてもよい。ソフトウェアの実装の場合、本発明を実装した単一又は複数のアルゴリズムを処理するために、単一又は複数の標準的なマイクロプロセッサ又はマイクロコントローラが使用されてもよい。
【００６８】
“有する”という用語は他の要素又はステップを除外せず、単数は複数を除外しない点に留意すべきである。更に、請求項の如何なる参照符号も本発明の範囲を限定するものとして解釈されるべきではない。
【図１】
2012518888.tif 000003
【図２】
2012518888.tif 000004
【図３】
2012518888.tif 000005
【図４】
2012518888.tif 000006
【図５】
2012518888.tif 000007
【図６】
2012518888.tif 000008
【図７】
2012518888.tif 000009
【図８】
2012518888.tif 000010
【図９】
2012518888.tif 000011
【図１０】
2012518888.tif 000012
【図１１】
2012518888.tif 000013
【図１２】
2012518888.tif 000014
【図１３】
2012518888.tif 000015
【図１４】
2012518888.tif 000016
【図１５】
2012518888.tif 000017
【図１６】
2012518888.tif 000018
【手続補正書】
【提出日】平成23年8月29日(2011.8.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
格子に配置された複数の装置を有するネットワーク接続された制御システムの装置の自動立ち上げのための方法であり、各装置は、前記格子の直接的に隣接する装置から受信したメッセージを、光を介して前記格子の直接的に隣接する装置にルーティングするように構成される方法であって、
前記立ち上げは、
−第１の装置により、ホップカウンタを有する立ち上げメッセージを第２の装置に送信する動作であり、前記第２の装置は、前記格子の所定の方向において前記第１の装置に隣接する動作と、
−前記第２の装置により、前記第１の装置から前記立ち上げメッセージを受信する動作と、
−前記第２の装置により、前記ホップカウンタを更新し、前記第２の装置の位置カウンタを更新する動作と、
−前記第２の装置により、前記更新されたホップカウンタを備えた前記立ち上げメッセージを１つ以上の第３の装置に送信する動作と、
を有する方法。
【請求項２】
−前記第２の装置により前記ホップカウンタを更新する動作は、前記ホップカウンタを１だけインクリメントすることを有し、
−前記第２の装置の前記位置カウンタを更新する動作は、前記位置カウンタを、前記更新されたホップカウンタ及び実際の位置カウンタの最大値に設定することを有する、請求項１に記載の方法。
【請求項３】
前記第２の装置により前記ホップカウンタを更新する動作は、
−前記受信した立ち上げメッセージの前記ホップカウンタと前記第２の装置の前記実際の位置カウンタとを比較し、
−前記ホップカウンタが前記第２の装置の前記実際の位置カウンタ以上であるという比較結果を生じた場合にのみ、前記ホップカウンタを１だけインクリメントすることを有する、請求項２に記載の方法。
【請求項４】
前記第２の装置により前記ホップカウンタを更新する動作は、
前記ホップカウンタが前記第２の装置の前記実際のホップカウンタより小さいという比較結果を生じた場合、前記受信した立ち上げメッセージを拒否することを更に有する、請求項３に記載の方法。
【請求項５】
前記更新されたホップカウンタを備えた前記立ち上げメッセージを１つ以上の第３の装置に送信することは、前記更新されたホップカウンタを備えた前記立ち上げメッセージを、
−前記格子の前記所定の方向において前記第２の装置に隣接する第３の装置、又は
−前記格子の前記所定の方向及び前記所定の方向とはそれぞれ異なる２つの更に異なる方向において前記第２の装置に隣接する第３の装置
に送信することを有する、請求項１ないし４のうちいずれか１項に記載の方法。
【請求項６】
前記所定の方向とは異なる方向において前記第２の装置に隣接する第３の装置は、前記格子の前記所定の方向に立ち上げメッセージを送信する、請求項５に記載の方法。
【請求項７】
前記所定の方向とは異なる方向において前記第２の装置に隣接する第３の装置は、前記格子の前記所定の方向、及び前記所定の方向とはそれぞれ異なる前記２つの更に異なる方向に立ち上げメッセージを送信する、請求項５に記載の方法。
【請求項８】
複数の立ち上げメッセージは、１つ以上の所定の方向において前記格子を通じて並列にルーティングされる、請求項１ないし７のうちいずれか１項に記載の方法。
【請求項９】
請求項１ないし８のうちいずれか１項に記載の方法をプロセッサに実行可能にするコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを格納した記録担体。
【請求項１１】
請求項１ないし８のうちいずれか１項に記載を実行するようにプログラムされたコンピュータ。
【請求項１２】
格子に配置された複数の装置を有するネットワーク接続された制御システムの装置の自動立ち上げのためのシステムであり、各装置は、前記格子の直接的に隣接する装置から受信したメッセージを、光を介して前記格子の直接的に隣接する装置にルーティングするように構成されたシステムであって、
−第１の装置により、ホップカウンタを有する立ち上げメッセージを第２の装置に送信する動作であり、前記第２の装置は、前記格子の所定の方向において前記第１の装置に隣接する動作と、
−前記第２の装置により、前記第１の装置から前記立ち上げメッセージを受信する動作と、
−前記第２の装置により、前記ホップカウンタを更新し、前記第２の装置の位置カウンタを更新する動作と、
−前記第２の装置により、前記更新されたホップカウンタを備えた前記立ち上げメッセージを１つ以上の第３の装置に送信する動作と、
を実行することにより、前記装置を立ち上げるように構成されるシステム。
【請求項１３】
請求項２ないし８のうちいずれか１項に記載の方法を実行するように構成された、請求項１２に記載のシステム。
【請求項１４】
請求項１２又は１３に記載のシステムでの用途のために構成された装置であって、
特に発光体であり、指向性の光メッセージを通信するように更に構成された装置。
【請求項１５】
−前記装置は、発光体であり、前記発光体の主光源の光が指向性の光メッセージを用いた通信に使用されるという特徴と、
−前記装置は、指向性の光メッセージを通信するために使用される光源、及び／又は他の装置から指向性の光メッセージを受信するために使用される光センサに適用されるコリメータ及び／又はレンズを有するという特徴と、
−前記指向性の光メッセージは、人間の目には見えないという特徴と、
−前記装置は、４つの異なる方向に指向性の光メッセージを通信するように構成されるという特徴と、
−前記装置は、４つの異なる方向に指向性の光メッセージを通信するように構成され、前記異なる方向は、90°の角度だけ離れているという特徴と
のうち少なくとも１つを有する、請求項１４に記載の装置。
【国際調査報告】
2012518888.tif 000019
2012518888.tif 000020