以下、例示的な実施形態を図面に基づいて詳細に説明する。
図1は、無線通信システム100の概略図である。無線通信システム100は、データステーション10と、複数の中継機20と、複数のセンサ30とを有している。データステーション10、中継機20、センサ30は、通信端末であり、互いに無線通信を行い、自律的にネットワークを構築する。無線通信システム100においては、マルチホップ無線ネットワークが形成される。データステーション10は、親機として機能し、中継機20は、子機として機能する。基本的には、データステーション10は、中継機20と通信を行い、センサ30は、中継機20と通信を行う。センサ30の個数は、中継機20に比べて多い。データステーション10及び中継機20は、データステーション10を頂点(最上位)とするツリー型のネットワークトポロジを構成している。本明細書では、ネットワークにおいてデータステーション10側を上流側又は上位とし、ツリーの末端側を下流側又は下位とする。また、データステーション10、中継機20、センサ30を区別しない場合には、単に通信端末と称する場合がある。また、各中継機20を区別する場合には、符号「20」の後にアルファベットを付して区別する。同様に、各センサ30を区別する場合には、符号「30」の後にアルファベットを付して区別する。
無線通信システム100においては、センサ30が対象物の所定の物理量を検出し、その検出値、即ち、検出データが中継機20を介してデータステーション10に収集される。本開示における例では、無線通信システム100は、蒸気システムを有する工場内に設置されている。蒸気システムは、複数のスチームトラップT(図1では1つだけ図示)を有している。対象物は、スチームトラップTである。センサ30は、スチームトラップTの振動数及び温度を検出する。
〈データステーションの構成〉
図2は、データステーション10のブロック図である。データステーション10は、無線通信システム100の通信経路の確立やセンサ30の検出値の収集及び管理を行う。また、データステーション10は、外部ネットワーク等を介して上位のサーバ90(図1)等に接続される。データステーション10は、必要に応じて、センサ30の検出値をサーバ90に転送する。
データステーション10は、CPU11と、メモリ12と、記憶部13と、無線通信回路14と、計時回路15と、上位インターフェース部16と、電源回路17とを有している。
記憶部13には、各種プログラム及び各種情報が記憶されている。CPU11は、記憶部13から各種プログラムを読み込み、実行することにより、様々な処理を行う。例えば、記憶部13には、ネットワークの通信経路を形成するためのプログラム、センサ30の検出値を収集するためのプログラム、ネットワークのツリー構造を規定するツリーテーブル、各センサ30がどの中継機20に接続されているかを規定したセンサテーブル、最終送信先へのルートを規定するルーティングテーブル、ツリーテーブルからルーティングテーブルを作成するためのプログラム、中継機20と通信を行うスケジュールを規定したスケジュール情報、及び、収集した検出値等が記憶されている。
無線通信回路14は、中継機20等の他の通信端末と無線通信を行う。無線通信回路14は、CPU11の制御によって動作し、各種信号を符号化・変調等の処理により無線信号に変換し、アンテナを介して送信する。また、無線通信回路14は、アンテナを介して受信した信号を復調・複合化等の処理により適切な信号に変換する。
計時回路15は、所定のクロックを発生し、データステーション10の基準となる時刻を計時する。上位インターフェース部16は、サーバ90との間のインターフェース処理を行う。電源回路17は、外部電源(図示省略)が接続されており、データステーション10の各要素に電力を供給する。
〈中継機の構成〉
図3は、中継機20のブロック図である。中継機20は、データステーション10の指令に応じて、センサ30の検出値をデータステーション10へ送信する。
中継機20は、CPU21と、メモリ22と、記憶部23と、無線通信回路24と、計時回路25と、電源回路26と、電池27とを有している。
記憶部23には、各種プログラム及び各種情報が記憶されている。CPU21は、記憶部23から各種プログラムを読み込み、実行することにより、様々な処理を行う。例えば、記憶部23には、ネットワークの通信経路を形成するためのプログラム、センサ30の検出値を中継するためのプログラム、ツリーテーブル、ルーティングテーブル、ツリーテーブルからルーティングテーブルを作成するためのプログラム、接続されているセンサ30を特定するセンサ接続情報及び、センサ30から取得した検出値等が記憶されている。
無線通信回路24は、他の通信端末と無線通信を行う。無線通信回路24は、CPU21の制御によって動作し、各種信号を符号化・変調等の処理により無線信号に変換し、アンテナを介して送信する。また、無線通信回路24は、アンテナを介して受信した信号を復調・複合化等の処理により適切な信号に変換する。
計時回路25は、所定のクロックを発生し、中継機20の基準となる時刻を計時する。電源回路26には、電池27が接続されている。電源回路26は、中継機20の各要素に電力を供給する。
中継機20は、他の通信端末との信号の送受信等の様々な処理を実行できるアクティブ状態と、信号の送受信等の処理が実行できないが、アクティブ状態に比べて消費電力が抑制されたスリープ状態とを切り替え可能に構成されている。中継機20がアクティブ状態からスリープ状態となる際には、CPU21は、アクティブ状態になるべき時刻を計時回路25に設定し、非アクティブ状態となる。スリープ状態においては、計時回路25は、計時を継続する。設定された時刻になると、計時回路25は、CPU21に時刻の到来を通知し、この通知を受けたCPU21は、非アクティブ状態からアクティブ状態となる。また、アクティブ状態のCPU21は、メモリ22、記憶部23及び無線通信回路24への電源回路26からの電力供給を許可する。こうして、中継機20は、スリープ状態からアクティブ状態となる。
〈センサの構成〉
図4は、センサ30のブロック図である。センサ30は、スチームトラップTの振動数及び温度を検出し、その検出値を対応する中継機20に送信する。センサ30は、対象物の所定の物理量を検出するセンサ部40と、センサ部40の検出値を他の通信端末に送信する処理部50とを有している。
センサ部40は、振動センサ及び温度センサを含んでおり、スチームトラップTの振動及び温度を検出する。センサ部40は、スチームトラップTのケーシング(例えば、蒸気及びドレンが流入する流入部)に接触するように設置され、接触した部分の振動数及び温度を検出する。センサ部40は、検出した振動数及び温度に対応する電気信号を処理部50に出力する。
処理部50は、CPU51と、メモリ52と、記憶部53と、無線通信回路54と、計時回路55と、センサインターフェース部56と、電源回路57と、電池58とを有している。
記憶部53には、各種プログラム及び各種情報が記憶されている。CPU51は、記憶部53から各種プログラムを読み込み、実行することにより、様々な処理を行う。例えば、記憶部53には、ネットワークの通信経路を形成するためのプログラム、センサ部40から振動数及び温度を取得し、検出値として中継機20に送信するためのプログラム、接続されている中継機20を特定する中継機接続情報、及び、検出値等が記憶されている。
無線通信回路54は、他の通信端末と無線通信を行う。無線通信回路54は、CPU51の制御によって動作し、各種信号を符号化・変調等の処理により無線信号に変換し、アンテナを介して送信する。また、無線通信回路54は、アンテナを介して受信した信号を復調・複合化等の処理により適切な信号に変換する。
計時回路55は、所定のクロックを発生し、センサ30の基準となる時刻を計時する。センサインターフェース部56は、センサ部40との間のインターフェース処理を行う。電源回路57には、電池58が接続されている。電源回路57は、センサ30の各要素に電力を供給する。
センサ30は、中継機20と同様に、他の通信端末との信号の送受信等の様々な処理を実行できるアクティブ状態と、信号の送受信等の処理が実行できないが、アクティブ状態に比べて消費電力が抑制されたスリープ状態とを切り替え可能に構成されている。
〈通信端末の接続関係〉
無線通信システム100では、各通信端末の接続先が定められており、その接続関係に基づいて信号の伝搬が行われる。無線通信システム100は、データステーション10、中継機20及びセンサ30の接続関係として、ツリーテーブル、ルーティングテーブル、センサテーブル、センサ接続情報及び中継機接続情報を保持している。
ツリーテーブルは、無線通信システム100のツリー構造を規定するテーブルであり、各中継機20の1ホップだけ上位の通信端末を規定している。ツリー構造は、いわば、データステーション10と各中継機20との通信経路を表している。換言すると、ツリーテーブルは、データステーション10と各中継機20との通信経路を規定している。無線通信システム100は、2種類のツリーテーブルを有している。詳しくは、無線通信システム100は、自律的に設定される第1ツリーテーブルとユーザによって手動で設定される第2ツリーテーブルとを有している。
第1ツリーテーブルは、データステーション10及び全ての中継機20のツリー構造を規定している。第1ツリーテーブルによって規定される、データステーション10と各中継機20との通信経路を「第1通信経路」と称する。つまり、全ての中継機20は、第1ツリーテーブルによって第1通信経路が設定されている。例えば、図1に示すツリー構造で示す通信経路が第1通信経路である。図5は、第1ツリーテーブルであって、図1のツリー構造に対応している。ツリーテーブルの上欄には、対象となる中継機20が記載され、下欄には、各中継機20が接続される上位側の通信端末(データステーション10又は中継機20)が規定されている。データステーション10及び全ての中継機20は、共通の第1ツリーテーブルを保持している。
第2ツリーテーブルは、データステーション10及び少なくとも一部の中継機20のツリー構造であって、第1ツリーテーブルによって規定されるツリー構造とは異なるツリー構造を規定している。第2ツリーテーブルによって規定される、データステーション10と各中継機20との通信経路を「第2通信経路」と称する。全ての中継機20に第1通信経路が設定されているので、第2通信経路が設定された中継機20は、第1通信経路及び第2通信経路の2つの通信経路が設定されていることになる。
第2ツリーテーブルは、例えば通信の安定性を最優先に設定される。無線通信システム100が設置される工場等においては例えばトラック等が定期的又は不定期に通過したり停車したりして、通信を一時的に妨害する場合がある。第2ツリーテーブルの設定においては、このような一時的な障害物が発生し得る通信経路を回避するように第2通信経路が設定される。つまり、第2通信経路は、一時的な障害物による通信異常の可能性が低いことが最優先に設定される。
例えば、図1のツリー構造において、中継機20dと中継機20gとの間、及び、中継機20jと中継機20kとの間に一時的な通信異常が生じるとする。そのような場合、中継機20g,20h,20i、及び、中継機20kに第2通信経路が設定される。ここでは、図6のツリー構造で示すような第2通信経路が設定されたとする。具体的には、中継機20gは中継機20fに接続され、中継機20kは中継機20dに接続される。このツリー構造に対応する第2ツリーテーブルを図7に示す。尚、第2ツリーテーブルには、中継機20a,20c,20d,20fも存在する。中継機20a,20c,20d,20fは、中継処理を行うことによって中継機20g,20h,20i,20kの第2通信経路を形成する中継機である。中継機20a,20c,20d,20fのそれぞれの通信経路は、第1通信経路のままで、第2通信経路は設定されていない。データステーション10及び第2通信経路を形成する中継機20(この例では、中継機20a,20c,20d,20f,20g,20h,20i,20k)は、共通の第2ツリーテーブルを保持している。
ルーティングテーブルは、或る通信端末から全ての到達可能な最終送信先の通信端末と或る通信端末から該最終送信先までの通信経路における次の(1ホップ先の)通信端末との対応関係、即ち、最終送信先までの通信経路における或る通信端末から1ホップだけ下位の通信端末を規定している。データステーション10及び各中継機20がそれぞれに固有のルーティングテーブルを保持している。ルーティングテーブルは、ツリーテーブルに基づいて作成される。無線通信システム100は、第1ツリーテーブル及び第2ツリーテーブルを有しているので、それぞれに応じたルーティングテーブルが作成される。以下、第1ツリーテーブルに基づいて作成されたルーティングテーブルを「第1ルーティングテーブル」と称し、第2ツリーテーブルに基づいて作成されたルーティングテーブルを「第2ルーティングテーブル」と称する。
図8は、中継機20aの第1ルーティングテーブルである。ルーティングテーブルの上欄には、対象となる最終送信先が記載され、下欄には、中継機20aを起点とする場合の1ホップ先の中継機20が規定されている。第1ルーティングテーブルは、対応する通信端末から第1ツリーテーブルに基づいて到達可能な全ての最終送信先の通信端末までの各通信経路における次の(1ホップ先の)通信端末を規定している。例えば、中継機20aからは、第1ツリーテーブルに基づいて中継機20b,20c,20d,20e,20f,20g,20h,20iに到達可能であるので、それらの中継機20までの通信経路上の中継機20aから1ホップだけ下位の中継機20がそれぞれ規定されている。中継機20j,20kは、中継機20aからは到達できないので、中継機20aのルーティングテーブルにおいては、最終送信先を中継機20j,20kとした場合の1ホップ先の中継機20は規定されていない。
図9は、中継機20aの第2ルーティングテーブルである。第2ルーティングテーブルは、対応する通信端末から第2ツリーテーブルに基づいて到達可能な全ての最終送信先の通信端末までの各通信経路における次の(1ホップ先の)通信端末を規定している。第2ルーティングテーブルは、第2通信経路が設定された中継機20と通信を行う際に使用されるものであるので、第2ルーティングテーブルにおける最終送信先は、第2通信経路が設定されている中継機20(この例では、中継機20g,20h,20i,20k)だけである。例えば、中継機20aからは、第2ツリーテーブルに基づいて中継機20g,20h,20i,20kに到達可能であるので、それらの中継機20までの通信経路上の中継機20aから1ホップだけ下位の中継機20がそれぞれ規定されている。
センサテーブルは、センサ30と中継機20との接続関係(即ち、各センサ30がどの中継機20に接続されているか)を規定している。センサテーブルは、無線通信システム100で1つ作成され、データステーション10が保持している。図10は、図1の無線通信システム100に対応するセンサテーブルである。センサテーブルの上欄には、対象となるセンサ30が記載され、下欄には、各センサ30が接続される中継機20が規定されている。
センサ接続情報は、中継機20がそれぞれ保持する情報であって、各中継機20に接続されたセンサ30を特定する情報(例えば、センサ30の通信アドレス)である。
中継機接続情報は、センサ30のそれぞれが保持する情報であって、各センサ30が接続される中継機20を特定する情報(例えば、中継機20の通信アドレス)である。
無線通信システム100では、これらの接続関係を用いて信号の伝搬が行われる。
まず、信号がデータステーション10からダウンリンク方向に送信される場合について説明する。例えば、データステーション10が第1通信経路を介してセンサ30gの検出値を要求する場合、データステーション10は、センサテーブルに基づいて、センサ30gが接続されている中継機20hを割り出す。そして、データステーション10は、自身の第1ルーティングテーブルに基づいて、最終送信先が中継機20hである場合の1ホップ先の中継機20が中継機20aであることを割り出す。データステーション10は、最終送信先に中継機20hを設定し、1ホップ先の送信先に中継機20aを設定した信号を送信する。以下、この信号を受信した各中継機20は、自身の第1ルーティングテーブルに基づいて、1ホップ先の中継機20を変更し、該信号を中継機20hまで伝搬する。具体的には、中継機20aは、中継機20dを1ホップ先の送信先に設定して、該信号を転送する。該信号を受信した中継機20dは、中継機20gを1ホップ先の送信先に設定して、該信号を転送する。該信号を受信した中継機20gは、中継機20hを1ホップ先の送信先に設定して、該信号を転送する。最終送信先である中継機20hは、該信号を受信すると、自身のセンサ接続情報に基づいて、センサ30gから検出値を取得する。そして、中継機20hは、取得した検出値をデータステーション10へ返信する。
次に、信号がデータステーション10へアップリンク方向に送信される場合について説明する。例えば、中継機20hが第1通信経路を介してデータステーション10へ検出値を返信する場合、中継機20hは、第1ツリーテーブルに基づいて、1ホップだけ上位の中継機20が中継機20gであることを割り出す。中継機20hは、最終送信先にデータステーション10を設定し、1ホップ先の送信先に中継機20gを設定した、検出値を含む信号を送信する。以下、この信号を受信した各中継機20は、第1ツリーテーブルに基づいて、1ホップ先の中継機20を変更し、該信号をデータステーション10まで伝搬する。具体的には、中継機20gは、1ホップ先の送信先に中継機20dを設定して、該信号を転送する。中継機20dは、1ホップ先の送信先に中継機20aを設定して、該信号を転送する。中継機20aは、1ホップ先の送信先にデータステーション10を設定して、該信号を転送する。こうして、該信号は、最終的にデータステーション10によって受信される。
このようにデータステーション10、中継機20及びセンサ30は、通信端末の接続関係(第1ツリーテーブル、第2ツリーテーブル、第1ルーティングテーブル、第2ルーティングテーブル、センサテーブル、センサ接続情報及び中継機接続情報)に基づいて信号を送信する。
〈通信スケジュール〉
このように構成された無線通信システム100は、図11に示す通信スケジュールに従って各中継機20と通信を行う。例えば、無線通信システム100は、運転動作の1つとして、各中継機20に対応する、即ち、接続されているセンサ30の検出値をデータステーション10に収集する収集処理を行う。
図11の通信スケジュールは、処理の1サイクルを示しており、図11の通信スケジュールが繰り返し実行される。通信スケジュールは、複数のタイムスロットに分割されている。各中継機20には、特定のタイムスロット(以下、「特定スロット」とも称する)が割り当てられている。より詳しくは、各中継機20には、データステーション10と第1通信経路を介して通信を行う特定スロット(以下、「第1特定スロット」とも称する)が割り当てられている。さらに、一部の中継機20には、第1特定スロットに加えて、データステーション10と第2通信経路を介して通信を行う特定スロット(以下、「第2特定スロット」とも称する)が設定されている。つまり、第1特定スロットは、全ての中継機20にそれぞれ割り当てられており、第2特定スロットは、第2通信経路が設定されている中継機20だけにそれぞれ割り当てられている。各中継機20は、特定スロットにおいてアクティブ状態となり、基本的には、それら以外のときはスリープ状態となる。
ただし、下位の中継機20とデータステーション10との通信経路上に存在する中継機20は、下位の中継機20がデータステーション10と通信する場合に中継処理を行う必要があるため、下位の中継機20にとっての特定スロット(以下、「中継スロット」とも称する)においてもアクティブ状態となって中継処理を実行する。
また、センサ30は、接続されている中継機20の第1特定スロットにおいて該中継機20と通信を行うので、該中継機20の第1特定スロットにおいてアクティブ状態となっている。そのため、実質的には、各センサ30にも特定のタイムスロットが割り当てられていることになる。ただし、中継機20には複数のセンサ30が接続され得るので、そのような場合には、該中継機20の第1特定スロットには、複数のセンサ30が割り当てられていることになる。センサ30は、中継機20と通信する必要がないときには、基本的にはスリープ状態となっている。
図11の通信スケジュールでは、タイムスロットがマトリックス状に規定されている。例えば、マトリックスの列とツリー構造の階層とが対応している。例えば、データステーション10には、列L0のタイムスロットが割り当てられ、第1階層(即ち、ホップ数が1)の中継機20には、列L1のタイムスロットが第1特定スロットとして割り当てられ、第2階層(即ち、ホップ数が2)の中継機20には、列L2のタイムスロットが第1特定スロットとして割り当てられる。第3階層以降についても同様である。データステーション10は、中継機20に比べて処理内容が多いので、1つのタイムスロットではなく、複数のタイムスロット(図8では、列L0の全てのタイムスロット)がデータステーション10に割り当てられる。タイムスロットの総数は、データステーション10及び中継機20の総数よりも多い。そのため、中継機20が割り当てられていないタイムスロットも存在する。第2通信経路が設定された中継機20には、空いている(第1特定スロットとして割り当てられていない)タイムスロットが第2特定スロットとして割り当てられる。図11では、「’」付きの符号が入力されたタイムスロットが第2特定スロットである。例えば、中継機20gには、列L3行N5のタイムスロットが第2特定スロットとして割り当てられている。ただし、第2特定スロットは、対応する中継機20の第1特定スロットよりも後のタイムスロットに割り当てられる。
通信スケジュールでは、タイムスロットの処理は、列方向に進んでいく。例えば、或る列(例えば、列L1)において、行番号に関して昇順(即ち、行N1からNmの順)にタイムスロットの処理が進んでいき、当該行の最後の行番号(行Nm)のタイムスロットの処理が終了すると、次の列(例えば、列L2)の最初の行番号(行N1)のタイムスロットから同様の順序で処理が進められていく。
〈接続関係の確定及びタイムスロットの割り当て〉
無線通信システム100においては、通信端末の接続関係、即ち、通信経路が自律的に確立される。この自律的に確立される通信経路が第1通信経路である。例えば、まずデータステーション10が、自身の特定スロットにおいて同期信号をブロードキャストする。
同期信号を受信した中継機20は、同期を行うと共にデータステーション10に対して参加申請を行う。データステーション10は、参加申請を受け取ると、ネットワークへの参加を許可し、該中継機20をツリー構造に組み込む。データステーション10は、該中継機20をデータステーション10の直下に接続されるものとして第1ツリーテーブルに設定すると共に、該中継機20にタイムスロットを割り当てる。
こうしてネットワークに参加した中継機20は、データステーション10と同様に、自身の特定スロットにおいて同期信号をブロードキャストする。この同期信号を受信した、まだネットワークに参加していない中継機20は、前述の如く、同期を行うと共にデータステーション10に対して参加申請を行う。データステーション10は、参加申請を受け取ると、ネットワークへの参加を許可し、該中継機20をツリー構造に組み込む。データステーション10は、参加申請を受け取ったときのタイムスロットから同期信号の送信元の中継機20を割り出し、参加申請をした中継機20を送信元の中継機20の直下に接続されるものとして第1ツリーテーブルに設定する。それと共に、データステーション10は、参加申請をした中継機20にタイムスロットを割り当てる。
これを繰り返すことによって、データステーション10及び中継機20の第1通信経路が自律的に確立され、第1ツリーテーブル及び通信スケジュールが作成される。
センサ30と中継機20との接続は、受信信号強度に基づいて自律的に確立される。詳しくは、センサ30は、データステーション10及び中継機20からの同期信号の受信信号強度を調査する。そして、データステーション10は、センサ30の調査結果に基づいて、データステーション10又は中継機20の中から受信信号強度が最大の通信端末を該センサ30の接続先に決定し、センサテーブルに設定する。こうして、センサテーブルが作成される。
尚、データステーション10及び中継機20の第1通信経路の確立は、同期信号の受信の可否だけでなく、受信信号強度、ホップ数、接続先となる中継機20の下位に含まれる中継機20の総数等を考慮して行われてもよい。
一方、第2通信経路は、ユーザにより手動で設定される。ユーザは、全ての中継機20の中から、第1通信経路と異なる通信経路でデータステーション10と接続させる中継機20を選択し、選択された中継機20に第2通信経路を手動で設定する。例えば、ユーザは、図6に示すような第2通信経路に対応するツリー構造をデータステーション10に入力する。データステーション10は、入力されたツリー構造に基づいて第2ツリーテーブルを作成する。さらに、データステーション10は、第2通信経路が設定された中継機20にタイムスロットを割り当てる。
続いて、データステーション10は、第1ツリーテーブルに基づいて第1ルーティングテーブルを作成し、第2ツリーテーブルに基づいて第2ルーティングテーブルを作成する。データステーション10は、第1ツリーテーブル、第2ツリーテーブル、センサテーブル、第1ルーティングテーブル、第2ルーティングテーブル及び通信スケジュール(即ち、中継機20へのタイムスロットの割り当て)を記憶部13に保存する。
データステーション10は、第1ツリーテーブルを全ての中継機20に通知する一方、第2ツリーテーブルを第2ツリーテーブル内に規定された中継機20(即ち、第2通信経路に関係する全ての中継機20)に通知する。また、データステーション10は、全ての中継機20に対応する第1特定スロットのスロット番号を通知すると共に、第2通信経路が設定された中継機20に対応する第2特定スロットのスロット番号を通知する。このとき、下位の中継機20の中継処理を行う必要がある中継機20には、それ自身の特定スロットのスロット番号に加えて、下位の中継機20の特定スロット、即ち、中継スロットのスロット番号も通知される。また、データステーション10は、センサテーブルに基づいて、各中継機20にセンサ接続情報を、各センサ30に中継機接続情報を通知する。
各中継機20は、第1ツリーテーブルに基づいて第1ルーティングテーブルを作成する。第2ツリーテーブルを受け取った中継機20は、第2ツリーテーブルに基づいて第2ルーティングテーブルを作成する。また、中継機20は、接続されているセンサ30に該中継機20の第1特定スロットのスロット番号を通知する。中継機20は、特定スロット及び中継スロットのスロット番号、第1ツリーテーブル、第2ツリーテーブル(有する場合)、第1ルーティングテーブル、第2ルーティングテーブル(有する場合)及びセンサ接続情報を記憶部23に保存する。
センサ30は、接続されている中継機20の第1特定スロットのスロット番号及び中継機接続情報を記憶部53に保存する。
〈システムの動作〉
続いて、無線通信システム100の収集処理について説明する。収集処理においては、各中継機20は、対応する特定スロットにおいてデータステーション10と通信を行い、該中継機20に接続されたセンサ30からの検出値をデータステーション10に送信する(以下、この処理を「返信処理」ともいう)。
まず、データステーション10の処理について説明する。図12は、収集処理におけるデータステーション10の処理を示すフローチャートである。
データステーション10は、収集処理を開始すると、ステップSA1において新たなタイムスロットの処理を開始する。収集処理の開始時においては、新たなタイムスロットは、列L0、行N1のタイムスロットである。
ステップSA2において、データステーション10は、現在のタイムスロット(即ち、新たなタイムスロット)が含まれる列Laが列L0か否かを判定する。前述の如く、列L0の全てのタイムスロットには、データステーション10が割り当てられている。つまり、ステップSA2においては、データステーション10は、現在のタイムスロットにデータステーション10が割り当てられているか否かを判定する。
現在のタイムスロットが列L0のタイムスロットの場合には、データステーション10は、ステップSA3において、タイムスロットに対応する、データステーション10に必要な処理を行う。その後、データステーション10は、ステップSA1へ戻り、次のタイムスロットの開始時間が到来すると、次のタイムスロットの処理を開始する。前述の如く、データステーション10は、列方向へ行番号が昇順になるようにタイムスロットの処理を進めていく。つまり、列L0のタイムスロットが続く間は、データステーション10は、ステップSA1〜SA3を繰り返し、データステーション10に必要な処理を行う。
タイムスロットが列L0から列L1へ移ると、データステーション10は、ステップSA4において、現在のタイムスロットに割り当てられた中継機20(即ち、現在のタイムスロットが特定スロットとなっている中継機20であり、以下、「対象中継機20」と称する。)にリクエスト信号を送信する。リクエスト信号は、対象中継機20に信号の返信を要求する信号である。データステーション10は、第1特定スロットにおいては対象中継機20と第1通信経路を介して通信を行い、第2特定スロットにおいては対象中継機20と第2通信経路を介して通信を行う。
その後、データステーション10は、対象中継機20に接続されたセンサ30の検出値が返信されてくるのを待機する(ステップSA5)。
データステーション10は、センサ30の検出値を受信しない場合には、ステップSA6において、対象中継機20からの送信完了信号を受信したか否かを判定する。送信完了信号は、第2特定スロットにおいて対象中継機20が検出値の代わりに送信する信号であり、詳しくは後述する。尚、第1特定スロットにおいては、対象中継機20が送信完了信号を送信することがないので、ステップSA6の判定はNoとなる。
データステーション10は、送信完了信号を受信しない場合には、所定の第1タイムアウト条件が成立したか否かを判定し(ステップSA8)、第1タイムアウト条件が成立していなければ、ステップSA4に戻ってリクエスト信号を再送する。つまり、データステーション10は、検出値及び送信完了信号の両方を受信しない場合には、第1タイムアウト条件が成立するまで、リクエスト信号の送信を繰り返す。第1タイムアウト条件が成立した場合には、データステーション10は、現在のタイムスロットにおける検出値の収集を終了する。
第1タイムアウト条件は、リクエスト信号の待機中に現在のタイムスロットにおける検出値の収集を終了する条件であり、例えば、タイムスロットの開始時間から又はリクエスト信号を最初に送信してから所定時間経過したか否かである。あるいは、第1タイムアウト条件は、リクエスト信号の送信回数が所定回数に達したか否かであってもよい。
一方、データステーション10は、検出値又は送信完了信号を受信した場合には、ステップSA7において、対象中継機20に対して終了信号を送信する。終了信号は、現在のタイムスロットにおける処理が終了したことを知らせる信号である。その後、データステーション10は、現在のタイムスロットにおける検出値の収集を終了する。
データステーション10は、現在のタイムスロットにおける検出値の収集を終了した後は、ステップSA1からの処理を繰り返す。つまり、データステーション10は、次のタイムスロットの開始時間が到来すると、次のタイムスロットの処理を開始する。
データステーション10は、以上の処理を実行することによって、タイムスロットに対応する対象中継機20に接続されたセンサ30の検出値を順次収集していく。
次に、中継機20の処理について説明する。図13は、収集処理における中継機20の処理を示すフローチャートである。
中継機20は、特定スロット及び中継スロット以外においてはスリープ状態となっている。中継機20は、特定スロット又は中継スロットの開始時刻の到来を計時回路25から通知されることによってアクティブ状態となる(ステップSB1)。
中継機20は、アクティブ状態となると、ステップSB2において、現在のタイムスロットが特定スロットか否かを判定する。
現在のタイムスロットが特定スロットの場合には、中継機20は、ステップSB3において、現在のタイムスロットが第1特定スロットか否かを判定する。
現在のタイムスロットが第1特定スロットの場合には、中継機20は、ステップSB4において第1返信処理を実行する一方、現在のタイムスロットが第2特定スロットの場合には、中継機20は、ステップSB5において第2返信処理を実行する。
一方、現在のタイムスロットが中継スロットの場合には、中継機20は、ステップSB6において中継処理を実行する。
図14は、第1返信処理のサブルーチンの処理を示すフローチャートである。
第1返信処理を行う中継機20は、ステップSb101において、データステーション10からのリクエスト信号が送信されてくるのを待機する。
中継機20は、リクエスト信号を受信できない場合には、所定の第2タイムアウト条件が成立したか否かを判定する(ステップSb102)。第2タイムアウト条件が成立していなければ、中継機20は、ステップSb101に戻ってリクエスト信号の待機を継続する。一方、第2タイムアウト条件が成立した場合には、中継機20は、第1返信処理を終了し、図13のフローチャート(詳しくは、ステップSB7)へ戻る。つまり、中継機20は、第2タイムアウト条件が成立するまで、リクエスト信号を待機する。
第2タイムアウト条件は、リクエスト信号の待機中に返信処理を終了する条件であり、例えば、タイムスロットの開始時間から所定時間経過したか否かである。
中継機20は、リクエスト信号を受信すると、ステップSb103において、センサ30から検出値を取得する。中継機20は、ステップSb104において、取得された検出値をデータステーション10へ向けて送信する。このとき、中継機20は、第1通信経路を介して検出値をデータステーション10へ送信する。具体的には、中継機20は、データステーション10を最終送信先に設定し、第1ツリーテーブルに規定された1ホップ上位の接続先の中継機20を1ホップ先の送信先を設定し、検出値を送信する。
その後、中継機20は、データステーション10から終了信号が送信されてくるのを待機する(ステップSb105)。中継機20は、終了信号を受信した場合には、第1返信処理を終了して、図13のフローチャート(詳しくは、ステップSB7)へ戻る。
中継機20は、終了信号を受信できない場合には、ステップSb106において、所定の第3タイムアウト条件が成立したか否かを判定する。第3タイムアウト条件が成立していなければ、中継機20は、ステップSb104に戻って検出値を再送する。中継機20は、終了信号を受信しない場合には、第3タイムアウト条件が成立するまで、検出値の送信を繰り返す。
第3タイムアウト条件は、終了信号の待機中に返信処理を終了する条件であり、例えば、タイムスロットの開始時間から、又は検出値を最初に送信してから所定時間経過したか否かである。
一方、第3タイムアウト条件が成立した場合には、中継機20は、ステップSb107において、検出値が所定の送信条件を満たすか否かを判定する。例えば、送信条件は、検出値が所定の範囲内に含まれていないことである。詳しくは、中継機20は、温度が所定の下限温度以上且つ所定の上限温度以下の範囲を外れているか否かを判定すると共に、振動数が所定の下限振動数以上且つ所定の上限振動数以下の範囲を外れているか否かを判定する。
温度及び振動数の少なくとも一方が所定の範囲外の場合には、中継機20は、ステップSb108において、再送信フラグを「1」に設定する。再送信フラグは、第2特定スロットでの検出値の再送信の要否を示すフラグである。再送信フラグの初期値は、再送信不要を示す「0」である。「1」は、再送信が必要であることを示す。その後、中継機20は、第1返信処理を終了し、図13のフローチャート(詳しくは、ステップSB7)へ戻る。
一方、温度及び振動数の両方が所定の範囲内の場合には、中継機20は、第1返信処理を終了し、図13のフローチャート(詳しくは、ステップSB7)へ戻る。このとき、再送信フラグは、初期値の「0」のままである。
このように、第1返信処理を行う中継機20は、データステーション10からのリクエスト信号を受信すると、第1通信経路を介してセンサ30の検出値をデータステーション10へ送信する。その後、中継機20は、データステーション10からの終了信号を受信すると、第1返信処理を終了する。一方、中継機20は、検出値をデータステーション10へ送信するものの終了信号を受信できない場合には、検出値が所定の範囲外か否かを判定し、検出値が所定の範囲外の場合には再送信フラグを「1」に設定し、第1返信処理を終了する。検出値が所定の範囲内の場合には、中継機20は、再送信フラグを「0」のままにして、第1返信処理を終了する。尚、中継機20は、データステーション10からのリクエスト信号を受信できない場合には、今回の第1特定スロットでの検出値の取得及び送信を行うことなく、第1返信処理を終了する。
次に、第2返信処理について説明する。図15は、第2返信処理のサブルーチンの処理を示すフローチャートである。
第2返信処理を行う中継機20は、ステップSb201において、データステーション10からのリクエスト信号が送信されてくるのを待機する。そして、中継機20は、リクエスト信号を受信できない場合には、前記第2タイムアウト条件が成立したか否かを判定する(ステップSb202)。これらステップSb201,Sb202の処理は、第1返信処理のステップSb101,Sb102の処理と同じである。
中継機20は、リクエスト信号を受信すると、ステップSb203において、再送信フラグが「1」か否かを判定する。
再送信フラグが「1」の場合には、中継機20は、ステップSb204において、検出値を再送信する。具体的には、中継機20は、第2通信経路を介して検出値をデータステーション10へ向けて送信する。具体的には、中継機20は、データステーション10を最終送信先に設定し、第2ツリーテーブルに規定された1ホップ上位の接続先の中継機20を1ホップ先の送信先を設定し、検出値を送信する。このときの検出値は、第1特定スロットにおいて取得した検出値である。つまり、第2特定スロットにおいては、中継機20は、検出値をセンサ30から取得しない。そのため、センサ30は、第2特定スロットにおいてはアクティブ状態とならず、スリープ状態のままである。
その後、中継機20は、データステーション10から終了信号が送信されてくるのを待機する(ステップSb205)。
中継機20は、終了信号を受信できない場合には、ステップSb206において、前記第3タイムアウト条件が成立したか否かを判定する。これらステップSb205,sb206の処理は、第1返信処理のステップSb105,sb106と同じである。つまり、中継機20は、終了信号を受信しない場合には、第3タイムアウト条件が成立するまで、検出値の送信を繰り返す。
中継機20が終了信号を受信した場合、又は、第3タイムアウト条件が成立した場合には、中継機20は、ステップSb207において、再送信フラグを「0」に設定して、第2返信処理を終了し、図13のフローチャート(詳しくは、ステップSB7)に戻る。
一方、再送信フラグが「0」の場合には、中継機20は、検出値を再送信することなく第2返信処理を終了する。具体的には、中継機20は、ステップSb208において、送信完了信号をデータステーション10へ向けて送信する。送信完了信号は、第1特定スロットにおいて検出値をデータステーション10まで正常に送信できたことを示す信号である。この送信完了信号の送信も、第2通信経路を介して行われる。
その後、中継機20は、ステップSb209においてデータステーション10から終了信号が送信されてくるのを待機する。中継機20は、終了信号を受信できない場合には、ステップSb210において、前記第3タイムアウト条件が成立したか否かを判定する。これらステップSb209,sb210の処理は、第1返信処理のステップSb105,sb106と同じである。つまり、中継機20は、終了信号を受信しない場合には、第3タイムアウト条件が成立するまで、送信完了信号の送信を繰り返す。
中継機20が終了信号を受信した場合、又は、第3タイムアウト条件が成立した場合には、前述の如く、中継機20は、ステップSb207において、再送信フラグを「0」に設定して、第2返信処理を終了し、図13のフローチャート(詳しくは、ステップSB7)に戻る。
このように、第2返信処理を行う中継機20は、データステーション10からのリクエスト信号を受信すると、再送信フラグが「1」の場合には第2通信経路を介してセンサ30の検出値をデータステーション10へ送信する。一方、再送信フラグが「0」の場合には、中継機20は、検出値を送信することなく、送信完了信号をデータステーション10へ送信する。
次に、中継処理について説明する。図16は、中継処理のサブルーチンの処理を示すフローチャートである。
中継処理を行う中継機20は、ステップSb301において、データステーション10又は他の中継機20から信号が送信されてくるのを待機する。そして、中継機20は、信号を受信できない場合には、前記第2タイムアウト条件が成立したか否かを判定する(ステップSb302)。このステップSb302の処理は、第1返信処理のステップSb102の処理と同じである。
中継機20は、信号を受信すると、ステップSb303において、その信号が終了信号か否かを判定する。信号が終了信号の場合には、中継機20は、中継処理を終了し、図13のフローチャート(詳しくは、ステップSB7)に戻る。
信号が終了信号でない場合には、中継機20は、ステップSb304において、現在のタイムスロットが他の中継機20にとっての第1特定スロットか否かを判定する。すなわち、中継スロットは、他の何れかの中継機20にとっての特定スロットである。中継機20は、その特定スロットが第1特定スロットか第2特定スロットかを判定する。
現在のタイムスロットが第1特定スロットの場合には、中継機20は、ステップSb305において、受信した信号を第1通信経路を介して中継する。具体的には、受信した信号がダウンリンク方向の信号の場合には、中継機20は、第1ルーティングテーブルを参照して、最終送信先に対応する1ホップ下位の中継機20へ信号を転送する。一方、受信した信号がアップリンク方向の信号の場合には、中継機20は、第1ツリーテーブルを参照して、1ホップ上位の接続先の中継機20へ信号を転送する。その後、中継機20は、ステップSb301へ戻り、ステップSb301からの処理を繰り返す。
現在のタイムスロットが第1特定スロットでない場合、即ち、第2特定スロットの場合には、中継機20は、ステップSb306において、受信した信号を第2通信経路を介して中継する。具体的には、受信した信号がダウンリンク方向の信号の場合には、中継機20は、第2ルーティングテーブルを参照して、最終送信先に対応する1ホップ下位の中継機20へ信号を転送する。一方、受信した信号がアップリンク方向の信号の場合には、中継機20は、第2ツリーテーブルを参照して、1ホップ上位の接続先の中継機20へ信号を転送する。その後、中継機20は、ステップSb301へ戻り、ステップSb301からの処理を繰り返す。
やがて、中継機20は、終了信号を受信すると、中継処理を終了し、図13のフローチャート(詳しくは、ステップSB7)に戻る。
図13のフローチャートに示すように、中継機20は、第1返信処理、第2返信処理又は中継処理を終了すると、ステップSB7において、アクティブ状態になるべき次のタイムスロットの開始時刻を計時回路25に設定する。具体的には、中継機20は、割り当てられた第1特定スロット、第2特定スロット及び中継スロットのうち次に到来するタイムスロットの開始時刻を計時回路25に設定する。
その後、中継機20は、ステップSB8において、アクティブ状態からスリープ状態となる。こうして、中継機20は、1つのタイムスロットにおける処理を終了する。その後、次のアクティブ状態になるべきタイムスロットの開始時刻が到来すると、中継機20は、ステップSB1からの処理を繰り返す。
次に、データステーション10及び中継機20における収集処理時の信号の流れを図17,18を用いて説明する。図17,18は、中継機20kの特定スロットにおける処理の流れを示すシーケンス図である。図17は、第1特定スロットにおいて検出値を正常に送信できた場合のシーケンス図である。図18は、第1特定スロットにおいて検出値を正常に送信できなかった場合のシーケンス図である。中継機20kの第1特定スロットは、図11の通信スケジュールにおけるタイムスロットL2N4である。中継機20kの第2特定スロットは、図11の通信スケジュールにおけるタイムスロットL2N6である。
第1特定スロットL2N4においては、データステーション10と中継機20kとの間の通信は、第1通信経路を介して行われる。中継機20kの第1通信経路は、図1に示すように、中継機20jを経由する経路である。第2特定スロットL2N6においては、データステーション10と中継機20kとの間の通信は、第2通信経路を介して行われる。中継機20kの第2通信経路は、図6に示すように、中継機20a,20dを経由する経路である。
図17に示すように、第1特定スロットL2N4において、データステーション10は、中継機20kへのリクエスト信号を中継機20jへ送信する(E11)。中継機20jは、該リクエスト信号を中継機20kへ送信する(E12)。中継機20kは、該リクエスト信号を受信すると、センサ30bの検出値を中継機20jへ送信する(E21)。中継機20jは、該検出値を受信すると、該検出値をデータステーション10へ送信する(E22)。
データステーション10は、該検出値を受信すると、中継機20kへの終了信号を中継機20jへ送信する(E31)。中継機20jは、該終了信号を中継機20kへ送信する(E32)。中継機20j,20kはそれぞれ、終了信号を受信するとスリープ状態となる。ここで、中継機20kは、検出値をデータステーション10まで正常に送信できたので、再送信フラグは「0」のままである。
その後、第2特定スロットL2N6において、データステーション10は、中継機20kへのリクエスト信号を中継機20aへ送信する(E41)。中継機20aは、該リクエスト信号を中継機20dへ送信する(E42)。中継機20dは、該リクエスト信号を中継機20kへ送信する(E43)。中継機20kは、再送信フラグが「0」なので、該リクエスト信号への応答として、送信完了信号を中継機20dへ送信する(E51)。中継機20dは、該送信完了信号を受信すると、該送信完了信号を中継機20aへ送信する(E52)。中継機20aは、該送信完了信号を受信すると、該送信完了信号をデータステーション10へ送信する(E53)。
データステーション10は、該送信完了信号を受信すると、中継機20kへの終了信号を中継機20aへ送信する(E61)。中継機20aは、該終了信号を中継機20dへ送信する(E62)。中継機20dは、該終了信号を中継機20kへ送信する(E63)。中継機20a,20d,20kはそれぞれ、終了信号を受信するとスリープ状態となる。
このように、第1特定スロットにおいてデータステーション10が検出値を正常に取得できた場合には、第2特定スロットにおいては中継機20kは、検出値の送信を行わない。
しかし、図18に示すように、第1特定スロットにおいてデータステーション10が検出値を正常に取得できない場合もある。
詳しくは、第1特定スロットL2N4において、データステーション10は、中継機20kへのリクエスト信号を中継機20jへ送信する(E11)。中継機20jは、該リクエスト信号を中継機20kへ送信する(E12)。中継機20kは、該リクエスト信号を受信すると、センサ30bの検出値を中継機20jへ送信する(E21)。しかし、中継機20kと中継機20jとの間に通信異常が発生し、検出値が中継機20jまで届かない。当然ながら、データステーション10は、検出値を取得できないので、終了信号を送信しない。中継機20kは、終了信号を受信できないので、検出値をデータステーション10まで正常に送信できなかったと判断する。そこで、中継機20は、検出値が所定の範囲外か否かを判定する。ここでは、検出値が所定の範囲外であったとする。その場合、中継機20は、再送信フラグを「1」に設定する。
その後、第2特定スロットL2N6において、データステーション10は、中継機20kへのリクエスト信号を中継機20aへ送信する(E41)。中継機20aは、該リクエスト信号を中継機20dへ送信する(E42)。中継機20dは、該リクエスト信号を中継機20kへ送信する(E43)。中継機20kは、再送信フラグが「1」なので、該リクエスト信号への応答として、検出値を中継機20dへ送信する(E71)。中継機20dは、該検出値を受信すると、該検出値を中継機20aへ送信する(E72)。中継機20aは、該検出値を受信すると、該検出値をデータステーション10へ送信する(E73)。
データステーション10は、該検出値を受信すると、中継機20kへの終了信号を中継機20aへ送信する(E61)。中継機20aは、該終了信号を中継機20dへ送信する(E62)。中継機20dは、該終了信号を中継機20kへ送信する(E63)。中継機20a,20d,20kはそれぞれ、終了信号を受信するとスリープ状態となる。
尚、検出値が所定の範囲内である場合には、第1特定スロットにおいて、再送信フラグは「0」のまま維持される。その場合には、第2特定スロットにおいて、中継機20kは、リクエスト信号への応答として、送信完了信号を中継機20dへ送信する。つまり、第2特定スロットにおいて検出値はデータステーション10へ送信されない。
このように、第1特定スロットにおいてデータステーション10が検出値を正常に取得できなかった場合には、検出値が所定の範囲内に含まれないことを条件に、第2特定スロットにおいて中継機20kは、検出値を送信する。
以上のように、無線通信システム100は、無線通信により互いに接続される複数の通信端末を備え、複数の通信端末は、データステーション10(親機)と、センサ30の検出値をデータステーション10へ送信する複数の中継機20(子機)とを含み、データステーション10と中継機20との間には、第1通信経路と、第1通信経路とは異なる第2通信経路とが設定されており、中継機20は、第1通信経路を介して検出値をデータステーション10へ送信する一方、第1通信経路を介したデータステーション10との通信が不調で且つ検出値が所定の送信条件を満たす場合に第2通信経路を介して検出値をデータステーション10へ送信する。
この構成によれば、データステーション10と中継機20との間には、第1通信経路に加えて第2通信経路が設定されている。中継機20は、第1通信経路を介してセンサ30の検出値をデータステーション10へ送信する。このとき、第1通信経路を介した通信が不調の場合には、中継機20は、第2通信経路を介して検出値をデータステーション10へ送信することができる。ただし、中継機20は、第1通信経路を介した通信が不調の場合に常に第2通信経路を介して検出値をデータステーション10へ送信する訳ではない。第1通信経路を介したデータステーション10との通信が不調で且つ検出値が送信条件を満たす場合に、中継機20は、第2通信経路を介して検出値をデータステーション10へ送信する。つまり、検出値が送信条件を満たさない場合には、第1通信経路を介した通信が不調であっても、中継機20は、第2通信経路を介した検出値の送信を行わない。これにより、中継機20の通信量が低減されると共に、中継機20の消費電力を低減される。一方で、検出値が送信条件を満たす場合には、第1通信経路を介した通信が不調の場合に第2通信経路を介した検出値の送信が行われるので、データステーション10への検出値の到達率を向上させることができる。
このように、第2通信経路を介した検出値の送信を行うか否かを検出値に応じて決定することによって、通信経路を効率よく使うことができる。
また、所定の送信条件は、検出値が所定の範囲内に含まれないことである。
この構成によれば、第1通信経路を介した通信が不調であって且つ検出値が所定の範囲から外れる場合に、第2通信経路を介した検出値の送信が行われる。例えば、所定の範囲を正常と想定される範囲に設定する。その場合、第1通信経路を介した通信が不調であっても、検出値が正常な範囲内であれば、第2通信経路を介した検出値の送信は行われない。つまり、検出値を送信する緊急度が低いので、中継機20の通信量を低減し、中継機20の消費電力を節約する。一方、第1通信経路を介した通信が不調であって且つ検出値が正常な範囲を外れていれば、第2通信経路を介した検出値の送信が行われる。つまり、検出値を送信する緊急度が高いので、検出値の送信回数を増やすことによって、データステーション10への検出値の到達率を向上させる。
さらに、データステーション10は、複数のタイムスロットを含む通信スケジュールに従って、複数のタイムスロットのそれぞれに割り当てられた中継機20と通信を行い、複数の中継機20のうち少なくとも一部の中継機20は、第1通信経路を介してデータステーション10と通信を行うタイムスロットである第1特定スロットと、第2通信経路を介してデータステーション10と通信を行うタイムスロットである第2特定スロットとが割り当てられている。
この構成によれば、データステーション10は、通信スケジュールに従って、タイムスロットに割り当てられた中継機20と順次通信を行う。そして、少なくとも一部の中継機20は、第1特定スロットにおいて第1通信経路を介した検出値の送信を行い、その通信が不調の場合は、検出値が所定の送信条件を満たすことを条件に第2特定スロットにおいて第2通信経路を介した検出値の送信を行う。
また、第1特定スロットにおいては、中継機20は、センサ30から検出値を取得し、取得した検出値をデータステーション10へ送信し、第2特定スロットにおいては、中継機20は、センサ30から検出値を取得せず、第1特定スロットにおいて取得した検出値をデータステーション10へ送信する。
この構成によれば、第2特定スロットにおける中継機20の処理を低減することができる。その結果、中継機20の消費電力をさらに低減することができる。
さらに、第1通信経路は、データステーション10及び中継機20によって自律的に設定され、第2通信経路は、ユーザによって手動で設定される。
この構成によれば、第1通信経路は自律的に設定されるので、ユーザの手間を省くことができる。一方、第2通信経路はユーザによって手動で設定されるので、通信の確実性等、ユーザの意思を反映した経路設定が可能となる。
《その他の実施形態》
以上のように、本出願において開示する技術の例示として、前記実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。また、前記実施形態で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。また、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、前記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
前記実施形態について、以下のような構成としてもよい。
例えば、無線通信システム100は、蒸気システム以外に適用してもよい。また、センサ30は、スチームトラップTの振動数及び温度を検出しているが、これ以外の物理量(例えば、電力等)を検出してもよい。
データステーション10は、通信スケジュールに従って中継機20と通信を行っているが、これに限られるものではない。
また、通信スケジュールは、タイムスロットがマトリックス状に規定されていなくてもよい。中継機20へのタイムスロットの割り当ては、ネットワークの階層ごとでなくてもよい。
また、第2特定スロットは、一部の中継機20に割り当てられているが、全ての中継機20に割り当てられてもよい。
第1通信経路は、データステーション10及び中継機20によって自律的に設定されているが、ユーザによって手動で設定されてもよい。また、第2通信経路は、ユーザによって手動で設定されているが、データステーション10及び中継機20によって自律的に設定されてもよい。その場合、第2通信経路は、第1通信経路よりも通信安定性が向上する観点で設定されることが好ましい。例えば、第2通信経路は、パケットエラーレート(PER:Packet Error Rate)又は受信信号強度を優先的に考慮して設定されてもよい。
第2特定スロットにおいては、中継機20は、第1特定スロットにおいて取得したセンサ30の検出値をデータステーション10へ送信しているが、これに限られるものではない。中継機20は、第2特定スロットにおいてセンサ30から検出値を取得し、該検出値をデータステーション10へ送信してもよい。その際には、中継機20は、第2特定スロットにおいて取得した検出値が送信条件を満たすか否かを判定してもよい。
検出値の送信条件は、検出値が所定の範囲内に含まれていないことでなくてもよい。任意の条件を送信条件として設定することができる。
中継機20及びセンサ30の接続先を、ツリーテーブル、ルーティングテーブル、センサテーブル、センサ接続情報及び中継機接続情報として規定されている。しかし、接続先は、これらとは異なる形で規定されていてもよい。例えば、無線通信システム100は、ダウンリンク方向のルートを規定したルーティングテーブルを保持しているが、アップリンク方向のルートを規定したルーティングテーブルを中継機20及びセンサ30の接続先として保持していてもよい。また、前述のツリーテーブル、ルーティングテーブル、センサテーブルの形式も一例に過ぎず、異なる形式であってもよい。
前述のフローチャートは、一例に過ぎず、前述のステップを省略したり、別のステップを追加したりしてもよい。