(57)【特許請求の範囲】
【請求項１】
通信装置であって、
受信データが前記通信装置宛てのデータであるか否かを判定する判定部と、
前記通信装置と、データの送信元である送信元装置との間の通信品質を測定する測定部と、
前記通信装置宛てのデータではないと判定された受信データから、前記通信装置との通信品質がより低い送信元装置から受信された受信データを中継データとするための判定基準を満たすデータを抽出する抽出部と、
前記通信装置宛てのデータであると判定された受信データと、前記抽出部で抽出されたデータとを中継データとして決定する決定部と
を有する通信装置。
【請求項２】
センサによる計測を制御するセンサ制御部と、
前記受信データの受信を制御する受信制御部と、
前記中継データの送信を制御する送信制御部と、をさらに有し、
前記中継データには、前記センサによって計測された計測データがさらに含まれる請求項１に記載の通信装置。
【請求項３】
前記測定部は、電波受信強度、電波受信強度を示す指標、受信成功率、及び、自装置が宛先として選定された回数を表す宛先選定回数を受信データを受信した回数を表す受信回数で除算した結果のうち、少なくとも一つを前記通信品質とする請求項１に記載の通信装置。
【請求項４】
前記抽出部は、前記通信装置宛てのデータではないと判定された受信データから、前記通信装置宛てのデータであると判定された受信データとの類似度がより低いデータを中継データとするための判定基準を満たすデータを抽出する請求項１〜３の何れか一つに記載の通信装置。
【請求項５】
前記抽出部は、データの送信先である送信先装置が前回送信した中継データに、前記通信装置の中継データが含まれているか否かを表す中継情報を用いて、前記通信装置宛てのデータではないと判定された受信データから、前記通信装置の中継データが含まれていないことを表す中継情報を有するデータを中継データとするための判定基準を満たすデータを抽出する請求項１〜４の何れか一つに記載の通信装置。
【請求項６】
前記中継情報は、前記送信先装置からの受信待機時に該送信先装置から受信された、前記通信装置の中継データが含まれているか否かを表す情報をもとに更新される請求項５に記載の通信装置。
【請求項７】
前記中継情報は、データの送信元である送信元装置からのデータの受信を待機している時よりも前の時間であって、データの中継が失敗したことを前記送信先装置が通知するための中継失敗通知用の受信を待機するために設定された時間に、前記送信先装置からデータが受信された場合に、前記通信装置の中継データが含まれていないことを表す情報として更新される請求項５に記載の通信装置。
【請求項８】
受信データが通信装置宛てのデータであるか否かを判定する判定ステップと、
前記通信装置と、データの送信元である送信元装置との間の通信品質を測定する測定ステップと、
前記通信装置宛てのデータではないと判定された受信データから、前記通信装置との通信品質がより低い送信元装置から受信された受信データを中継データとするための判定基準を満たすデータを抽出する抽出ステップと、
前記通信装置宛てのデータであると判定された受信データと、前記抽出ステップで抽出されたデータとを中継データとして決定する決定ステップと
を含む中継判定方法。
【請求項９】
通信装置に、
受信データが前記通信装置宛てのデータであるか否かを判定する判定ステップと、
前記通信装置と、データの送信元である送信元装置との間の通信品質を測定する測定ステップと、
前記通信装置宛てのデータではないと判定された受信データから、前記通信装置との通信品質がより低い送信元装置から受信された受信データを中継データとするための判定基準を満たすデータを抽出する抽出ステップと、
前記通信装置宛てのデータであると判定された受信データと、前記抽出ステップで抽出されたデータとを中継データとして決定する決定ステップと
を実行させるための中継判定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、通信装置、中継判定方法及び中継判定プログラムに関する。
【背景技術】
【０００２】
従来、無線メッシュネットワークにおいて、データを中継する通信装置間の干渉等によりデータが受信できずに、データを集約する集約装置までデータが届かないことを防ぐために、通信装置間で複数の経路を使用してデータを中継する技術が知られている。例えば、送信されたデータを受信できた通信装置の全てに、データを中継させるフラッディングと呼ばれる技術が存在する。フラッディングでは、複数の冗長経路によりデータを中継することで、集約装置へのデータの到達率を向上させることができる。また、例えば、データを受信できなかった通信装置が存在する場合に、周辺の通信装置がこれを検知し、データを再送信する技術が存在する。これにより、データを受信できなかったことを検知した通信装置が、宛先に対してデータを一斉に再送信するため、集約装置へのデータの到達率を向上させることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−２３６２２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述した従来技術は、通信の高信頼化のために、複数の冗長経路によりデータを中継しているため、ネットワーク負荷が増大し、無線帯域が逼迫してしまう可能性がある。また、近年、無線メッシュネットワークに対し、低消費電力化を実現したいという要求がある。例えば、低消費電力化を実現する無線メッシュネットワークでは、各通信装置の通信機会や、ＡＣＫやＮＡＣＫ等の受信確認応答の送信を制限する場合がある。かかる場合に、上述した従来技術は、通信機会や受信確認応答の制限により、複数の冗長経路によりデータを中継することができないため、無線メッシュネットワークの低消費電力化や通信の高信頼化を実現することが困難になる。
【０００５】
本発明が解決しようとする課題は、ネットワーク負荷の増大や無線帯域の逼迫を抑制し、通信の高信頼化を実現することができる通信装置、中継判定方法及び中継判定プログラムを提供することである。
【課題を解決するための手段】
【０００６】
実施形態の通信装置は、判定部と、抽出部と、決定部とを有する。判定部は、受信データが通信装置宛てのデータであるか否かを判定する。抽出部は、通信装置宛てのデータではないと判定された受信データから、中継データとするための判定基準を満たすデータを抽出する。決定部は、通信装置宛てのデータであると判定された受信データと、抽出されたデータとを中継データとして決定する。
【図面の簡単な説明】
【０００７】
【図１】実施形態１に係る中継判定システムのシステム構成を示す図。
【図２】実施形態１に係る通信装置のハードウェア構成を示す図。
【図３】実施形態１に係る通信装置の機能構成を示すブロック図。
【図４】実施形態１に係る通信装置の無線通信方法を示す図。
【図５】実施形態１に係る中継判定システムで使用される通信フレームを示す図。
【図６】実施形態１に係る判定基準を用いた処理を説明する図。
【図７】実施形態１に係る子グループ用の受信待機時の処理の流れを示すフローチャート。
【図８】実施形態１に係る自グループ用の送信時の処理の流れを示すフローチャート。
【図９】実施形態１に係る自グループ用の送信時の処理の流れを示すフローチャート。
【図１０】実施形態２に係る通信装置の機能構成を示すブロック図。
【図１１】実施形態２に係る判定基準を用いた処理を説明する図。
【図１２】実施形態２に係る自グループ用の送信時の処理の流れを示すフローチャート。
【図１３】実施形態３に係る通信装置の機能構成を示すブロック図。
【図１４】実施形態３に係る中継判定システムで使用される通信フレームを示す図。
【図１５】実施形態３に係る中継フラグの更新処理の流れを示すフローチャート。
【図１６Ａ】実施形態３に係る通信装置の無線通信方法を示す図。
【図１６Ｂ】実施形態３に係る通信装置の無線通信方法を示す図。
【図１７】実施形態３に係る中継フラグの更新処理の流れを示すフローチャート。
【発明を実施するための形態】
【０００８】
（実施形態１）
図１は、実施形態１に係る中継判定システム１のシステム構成例を示す図である。図１に示すように、中継判定システム１には、無線通信によりマルチホップでデータを中継伝送する複数の通信装置１００と、通信装置１００からのデータを集約する集約装置２００とが含まれる。なお、本実施形態は、集約装置２００が明示的に存在せず、複数の通信装置１００で構成されるマルチホップネットワークやメッシュネットワークにおいても適用することができる。
【０００９】
上述した構成において、通信装置１００は、受信データを中継候補データとして、中継候補データが自ノード宛てのデータであるか否かを判定する。具体的には、通信装置１００は、自ノード宛てのデータ、自ノード宛てではないデータを含む受信データ全てを中継候補データとして、中継候補データが自ノード宛てのデータであるか否かを判定する。
【００１０】
このとき、通信装置１００は、自ノード宛てのデータであると判定された中継候補データを第１のデータとして分類し、自ノード宛てのデータではないと判定された中継候補データを第２のデータとして分類する。具体的には、通信装置１００は、自ノード宛てのデータであると判定された中継候補データを、中継データの一つである第１のデータとして分類する。すなわち、自ノード宛てのデータは、中継すべきデータであることから、中継データの一つである第１のデータとして分類される。また、通信装置１００は、自ノード宛てのデータではないと判定された中継候補データを、後述する判定処理の対象として第２のデータに分類する。
【００１１】
そして、通信装置１００は、第２のデータから、中継データとするための判定基準を満たす第３のデータを抽出する。具体的には、通信装置１００は、中継候補データとして残っている第２のデータのうち、中継データとして適用する判定基準を満たすものを、中継データの一つである第３のデータとして抽出する。なお、判定基準の詳細については後述する。その後、通信装置１００は、第１のデータと、第３のデータとを中継データとして決定する。具体的には、通信装置１００は、自ノード宛てのデータである第１のデータと、中継データとして適用する判定基準を満たした中継候補データである第３のデータとを中継データとして決定する。
【００１２】
つまり、通信装置１００は、自ノード宛てのデータに加え、自ノード宛てのデータではない中継候補データのうち、中継データとして適用する判定基準を満たす中継候補データを中継データとして決定する。換言すると、通信装置１００は、受信データ全てを中継データとして中継するのではなく、中継データとして適用する判定基準を満たすデータを中継データとして中継する。この結果、通信装置１００は、ネットワーク負荷の増大や無線帯域の逼迫を抑制し、通信の高信頼化を実現することができる。
【００１３】
図２は、実施形態１に係る通信装置１００のハードウェア構成例を示す図である。図２に示すように、通信装置１００は、ＣＰＵ（Central  Processing  Unit）１２と、ＲＡＭ（Random  Access  Memory）１３と、ＲＯＭ（Read  Only  Memory）１４と、通信Ｉ／Ｆ１５と、Ｉ／Ｏ１６と、センサデバイス１７とを有する。各ハードウェアは、システムバス１１により互いに接続される。
【００１４】
ＣＰＵ１２は、通信装置１００全体の動作を制御する。ＣＰＵ１２は、ＲＡＭ１３等を作業領域として、ＲＯＭ１４等に記憶されたプログラムを実行することで、データの送受信や中継伝送する中継データの判定、センサによる計測、スリープ制御等、通信装置１００全体の動作を制御する。ＲＡＭ１３は、計測データや各種処理に関する情報等を一時的に記憶するとともに、ＲＯＭ１４等に格納されたプログラムの実行時の作業領域である。ＲＯＭ１４は、通信装置１００による処理を実現するためのプログラムを記憶する。通信Ｉ／Ｆ１５は、無線による通信を制御するインタフェースである。例えば、通信Ｉ／Ｆ１５は、ＩＥＥＥ８０２．１１．ａ／ｂ／ｇ／ｎ／ａｃ等の無線ＬＡＮ（Local  Area  Network）や、Ｂｌｕｅｔｏｏｔｈ（登録商標）、Ｚｉｇｂｅｅ（登録商標）、９２０ＭＨｚ無線等のＬＡＮやＰＡＮ（Personal  Area  Network）に適用可能な様々な無線規格に適合したものを用いることができる。Ｉ／Ｏ１６は、計測データや、センサデバイス１７に対する制御信号等の各種情報の入出力を制御する。センサデバイス１７は、光や熱、音等をセンシングする各種センサであり、計測データを入力する。計測データは、中継データの一つとして採用され得る。
【００１５】
図３は、実施形態１に係る通信装置１００の機能構成例を示すブロック図である。図３に示すように、通信装置１００は、受信制御部１０１と、判定部１０２と、分類部１０３と、抽出部１０４と、測定部１０５と、決定部１０６と、センサ制御部１０７と、送信制御部１０８と、スリープ制御部１０９とを有する。上記各部は、これらの一部又は全てがソフトウェア（プログラム）で実現されても良いし、ハードウェアで実現されても良い。
【００１６】
受信制御部１０１は、通信Ｉ／Ｆ１５による無線信号である受信データの受信処理を制御する。判定部１０２は、受信データを中継候補データとして、中継候補データが自ノード宛てのデータであるか否かを判定する。より具体的には、判定部１０２は、受信制御部１０１から受け付けた受信データを中継候補データとして、中継候補データに関する情報を中継候補リストに追加する。そして、判定部１０２は、中継候補リストをもとに、各中継候補データに対し自ノード宛てのデータであるか否かを判定する。例えば、自ノード宛てのデータであるか否かについては、受信データに含まれる宛先固有識別子をもとに判定される。宛先固有識別子とは、送信元の通信装置１００が宛先として設定したノードのアドレスである。すなわち、受信データに含まれる宛先固有識別子が自身のアドレスと一致するのであれば、該受信データは、自ノード宛てのデータであると判定される。
【００１７】
分類部１０３は、自ノード宛てのデータであると判定された中継候補データを第１のデータとして分類し、自ノード宛てのデータではないと判定された中継候補データを第２のデータとして分類する。より具体的には、分類部１０３は、判定部１０２による判定結果をもとに、自ノード宛てのデータであると判定された中継候補データを、中継データの一つである第１のデータとして分類する。また、分類部１０３は、判定部１０２による判定結果をもとに、自ノード宛てのデータではないと判定された中継候補データを、中継データとして適用するか否かの判定処理の対象である第２のデータとして分類する。なお、分類部１０３は、中継データの一つである第１のデータとして分類した中継候補データについて、中継候補リストから削除する。
【００１８】
抽出部１０４は、第２のデータから、中継データとするための判定基準を満たす第３のデータを抽出する。より具体的には、抽出部１０４は、分類部１０３によって分類された第２のデータを、中継データとして適用するための判定基準を用いた判定処理の対象として、第２のデータのうち判定基準を満たした第３のデータを抽出する。第３のデータは、中継データの一つとして採用される。抽出部１０４は、中継データの一つである第３のデータとして抽出した中継候補データについて、中継候補リストから削除する。実施形態１では、中継候補リストに含まれる中継候補データのうち、自ノードとの通信品質がより低い送信元のノードから受信された中継候補データが第３のデータとして抽出される。通信品質は、測定部１０５によって測定される。
【００１９】
測定部１０５は、自ノードと送信元ノードとの間の通信品質を示すパラメータを測定する。例えば、通信品質は、無線信号の受信電波強度やＲＳＳＩ（Received  Signal  Strength  Indicator）等の受信電波強度を示すインジケータ、パケットエラーレート、ＳＮＲ（Signal  to  Noise  Ratio）等を適用することができる。測定部１０５は、測定した通信品質を中継候補リストに追加する。これにより、抽出部１０４は、測定部１０５によって測定された通信品質をもとに、中継候補リストを通信品質が低い順にソートし、通信品質が低いＴ個（Ｔ≧０）のデータを第３のデータとして抽出する。ここで、「Ｔ」には、中継判定システム１に含まれる通信装置１００の数やネットワーク構成等により、任意の数が設定される。通信品質がより低い中継候補リストの中継候補データを中継データとすることは、自ノードとの空間的な距離がより遠い送信元ノードから受信された受信データを中継データとして適用していくことを意味する。
【００２０】
また、通信品質に関する判定基準を使用する場合は、例えばフェージング等の瞬間的な無線通信品質の劣化によって、第３のデータを好適に抽出できない可能性がある。このため、通信品質は、データ受信時の通信品質だけではなく、過去の通信品質についても考慮するようにしても良い。例えば、通信装置１００は、中継候補リストに通信品質を追加し、中継候補リスト自体を削除せずに、次回以降のデータの受信時に、中継候補リストに保持されている送信元ノードのアドレスを表す送信元固有識別子をもとに、過去の通信品質のパラメータも加味して、通信品質の平均値を算出すれば良い。例を挙げると、通信品質の平均値をとる際は、「通信品質の平均値＝過去の通信品質の平均値×α＋瞬時的な通信品質×（１−α）」のような移動平均を適用することができる。但し、「０＜α＜１」である。通信品質の平均値をとることにより、瞬時的な無線通信品質の劣化の影響を抑制することができる。
【００２１】
また、親ノードの選定アルゴリズムが無線通信品質の良いノードを優先的に選定するアルゴリズムである場合に、以下のように通信品質を設定することができる。例えば、通信装置１００は、自ノードが子ノードによって宛先として選定された回数を表す宛先選定回数と、該子ノードからの受信データを受信した回数を表す受信回数とを、中継候補リストに追加する。そして、通信装置１００は、宛先選定回数を受信回数で除算した結果を、通信品質として適用する。かかる通信品質は、上述した通信品質の平均値と等価である。すなわち、無線通信品質の良いノードを優先的に選定するアルゴリズムである場合は、受信回数に対する宛先選定回数の比率が高くなるため、「宛先選定回数／受信回数」を通信品質の平均値と同等とみなして適用することができる。なお、宛先選定回数や受信回数は複数のデータ受信に応じてカウントされるものであるため、中継候補リストは、削除されずに更新（インクリメント）されることになる。
【００２２】
決定部１０６は、第１のデータと、第３のデータとを中継データとして決定する。より具体的には、決定部１０６は、分類部１０３によって分類された第１のデータと、抽出部１０４によって抽出された第３のデータとを中継データとして決定する。また、中継データには、これらの他にも、センサデバイス１７によって計測された計測データも含まれても良い。センサ制御部１０７は、センサデバイス１７による計測を制御し、決定部１０６による中継データの決定の際に、計測データを入力する。これにより、決定部１０６は、第１のデータ及び第３のデータに加え、センサ制御部１０７によって入力された計測データも中継データとして決定する。
【００２３】
送信制御部１０８は、通信Ｉ／Ｆ１５による無線信号である送信データの送信処理を制御する。送信データは、決定部１０６によって決定された中継データに対応する。スリープ制御部１０９は、上述してきた各部のスリープ及びウェイクアップを制御する。スリープ制御部１０９による処理のタイミングについては後述する。本実施形態は、送受信の機会が限定された省電力動作が可能な無線メッシュネットワークや無線メッシュプロトコルにおける通信高信頼化技術であるが、これに限られることなく、他の無線メッシュネットワークや無線メッシュプロトコルにも適用することができる。
【００２４】
図４は、実施形態１に係る通信装置１００の無線通信方法の例を示す図である。図４に示すように、本実施形態では、自ノードが宛先とするノードであって、集約装置２００により近い上位のノードを親ノードと定義する。同様に、自ノードを宛先としているノードであって、集約装置２００からより遠い下位のノードを子ノードと定義する。また、複数存在する親ノード、子ノードをそれぞれグループ化し、親ノードのグループを親グループと定義し、子ノードのグループを子グループと定義する。同様に、自ノードを含むグループは、自グループと定義する。なお、図４では、親グループを中継階層１とし、自グループを中継階層２とし、子グループを中継階層３として、中継階層Ｎまで存在する中継判定システム１を例に挙げる。
【００２５】
本実施形態に係る無線通信方法では、時間をスロットと呼ばれる単位に分割した時分割通信を採用し、スロットを束ねたフレームの周期で、各ノードから集約装置２００への上り方向の通信が実施される。各ノードには、１フレーム内で１のスロットが送信の機会として割り当てられる。また、集約装置２００に対する中継の階層に応じてグループ化され、中継階層が大きい順にスロットが割り当てられる。図４に示す例では、各グループに１０スロットが割り当てられ、中継階層Ｎから順に１０スロットずつ割り当てられている。
【００２６】
自グループの各ノード（自ノード）は、子ノードからのデータを中継するために、子グループ用の１０スロットで受信待機の状態となる。また、自グループの各ノード（自ノード）は、親ノードと時刻同期をとるためや、各ノード（自ノード）が送信したデータが中継されているか否かを確認するために、親グループ用の１０スロットで受信待機の状態となる。自グループの各ノード（自ノード）は、自グループ内においては、自グループに割り当てられた送信スロットで送信待機・送信を実施する。自グループの各ノード（自ノード）は、子グループ、自グループ及び親グループ以外のスロットにおいてスリープすることで省電力化を実現している。すなわち、通信装置１００は、子グループ用の受信待機のスロット、自グループ用の送信待機・送信のスロット、親グループ用の受信待機のスロット以外のスロットにおいてスリープし、子グループ用の受信待機のスロットでウェイクアップする。なお、図４では、宛先が予め設定されている経路を中継経路（実線の矢印）とし、経路冗長化による経路を冗長経路（破線の矢印）として表している。
【００２７】
本実施形態に係る通信装置１００は、電源が投入されると、無線メッシュネットワークに参加するためのネットワーク参加状態に遷移する。ここでは、ネットワークに参加するために使用されるパラメータの収集や親ノードの決定が行われる。具体的には、通信装置１００は、受信待機の状態になり、周囲のノードから送信される無線信号を受信し、中継階層や宛先、送信スロット等の情報を収集する。このとき、通信装置１００は、上述した通信品質についても測定を実施する。親ノードを選定する際には、中継階層や受信強度が用いられる。例えば、中継階層が小さく、通信品質が良いノードを、親ノードに選定しても良い。親ノードの選定が完了すると、スリープ状態や送受信可能な送受信の状態に遷移する。スリープ状態では、送受信スロットやセンサデバイス１７からの計測データの取得等、その他の処理すべきタスクが存在しない場合に、ＣＰＵやマイコン等のプロセッサや、通信Ｉ／Ｆ１５等をスリープ状態にして低消費電力化をはかる。
【００２８】
また、送受信の状態では、上述した子グループ用の受信待機、自グループ用の送信待ち・送信、親グループ用の受信待機の３つの状態が存在する。これらの３つの状態では、子ノードからのデータの受信、親ノードへのデータの送信、親ノードからのデータの受信が実施される。なお、送受信の状態であっても、処理すべきタスクが存在しないのであれば、都度、スリープ状態に遷移して省電力化を実現するようにしても良い。通信装置１００は、送受信の状態において、時刻同期のずれやノイズ等により親ノードからのデータを一定回数受信できなくなった場合に、ネットワーク参加状態に再度遷移して、周囲のノードの再探索を実施する。
【００２９】
図５は、実施形態１に係る中継判定システム１で使用される通信フレームの例を示す図である。図５に示すように、通信フレームには、送信元固有識別子と、宛先固有識別子と、フレーム長と、使用スロット番号と、送信データと、０又は１以上の中継データとが含まれる。通信装置１００は、データを送信する際に、送信元固有識別子に自身のアドレスを格納し、宛先固有識別子に宛先のアドレスを格納する。上述したように、通信装置１００は、データの受信時に、受信データに含まれる宛先固有識別子と自身のアドレスとを比較して、一致する場合は自ノード宛ての受信データであると判定し、一致しない場合は自ノード宛ての受信データではないと判定する。
【００３０】
フレーム長とは、図４に示したフレームの長さを表す情報である。使用スロット番号とは、送信元のノードによるデータの送信時に割り当てられたスロット番号を表す情報である。使用スロット番号と、フレーム長と、予め決められたスロット長とから、フレーム全体と、全体のスロット数とを算出することができる。なお、フレーム長を予め決定しているシステムである場合は、通信フレームから除外することもできる。また、スロット長を通信フレーム内に含めるようにしても良い。
【００３１】
図６は、実施形態１に係る判定基準を用いた処理の例を説明する図である。実施形態１に係る判定基準とは、自ノードとの通信品質がより低いノードから受信された中継候補データを中継データの一つとすることである。図６では、通信装置１００としてのノードＡ、ノードＢ、ノードＣ、ノードＤ、ノードＥ、ノードＦ、ノードＧ及びノードＨを例に挙げる。また、ノードＡ及びノードＢは中継階層４に含まれ、ノードＣ、ノードＤ及びノードＥは中継階層３に含まれ、ノードＧ、ノードＦ及びノードＨは中継階層２に含まれるものとする。なお、図６では、説明の便宜上、一部の冗長経路（破線の矢印）を省略している。また、実線の矢印は、中継経路を表している。
【００３２】
図６に示すように、中継階層４のノードＡは、中継階層３のノードＣに対して、データａを中継経路により送信する。中継階層３のノードＣは、中継階層２のノードＧに対して、ノードＡから受信したデータａと、自身で送信するデータｃとを中継経路により送信する。中継階層３のノードＤは、中継階層２のノードＦに対して、データｄを中継経路により送信する。また、中継階層３のノードＤは、中継階層２のノードＧに対して、データｄを冗長経路により送信する。中継階層４のノードＢは、中継階層３のノードＥに対して、データｂを中継経路により送信する。中継階層３のノードＥは、中継階層２のノードＨに対して、ノードＢから受信したデータｂと、自身で送信するデータｅとを中継経路により送信する。また、中継階層３のノードＥは、中継階層２のノードＧに対して、ノードＢから受信したデータｂと、自身で送信するデータｅとを冗長経路により送信する。
【００３３】
ここで、中継階層２のノードＧが送信する中継データについて説明する。中継階層２のノードＧは、ノードＣ、ノードＤ及びノードＥからのデータを受信できている。このため、ノードＧにおける中継候補リストには、ノードＣ、ノードＤ及びノードＥから受信したデータに関する情報が保持されていることになる。このとき、ノードＧは、ノードＣから受信したデータについて、宛先固有識別子が自ノードのアドレスである、すなわち自ノード宛てのデータであるため、ノードＣから受信したデータａ及びデータｃを、中継データの一つである第１のデータとする。
【００３４】
そして、ノードＧは、ノードＤ及びノードＥから受信したデータについて、通信品質に関する判定基準を用いて、中継データとして選定するか否かを判定する。通信品質の測定の結果、ノードＧは、ノードＥの方がノードＤよりも自ノードとの空間的な距離が遠いことから通信品質がより低くなる場合に、Ｎ＝１の条件において、ノードＥから受信したデータｂ及びデータｅを中継データの一つである第３のデータとして抽出する。これらの結果、ノードＧは、データａ、データｃ、データｂ、データｅ、及び、センサデバイス１７等により計測された計測データを含む自身で送信するデータｇを、中継データとして上位ノードに対して送信する。すなわち、通信装置１００は、空間的な距離がより遠い子ノードから受信したデータを中継データとして送信するため、冗長経路を空間的により拡散することができる。
【００３５】
なお、実施形態１に係る判定基準を用いた処理を実施する前に、通信品質に関する所定閾値と比較して、所定閾値よりも通信品質が高い子ノードから受信されたデータに対し、中継候補リストから削除するようにしても良い。例えば、中継候補となる子ノード全てが自ノードに空間的に近くに存在する場合を想定する。中継候補となる子ノード全てが自ノードに空間的に近くに存在する場合は、冗長経路が空間的に近い経路となるため、経路冗長化の効果が低くなってしまう可能性がある。このため、通信品質に関する所定閾値との比較により、経路冗長化の効果の低下を抑制することができる。
【００３６】
図７は、実施形態１に係る子グループ用の受信待機時の処理の流れの例を示すフローチャートである。図７に示すように、通信装置１００は、子グループ用の受信待機が開始された場合に（ステップＳ１０１：Ｙｅｓ）、子ノードからのデータを受信したか否かを判定する（ステップＳ１０２）。通信装置１００は、子グループ用の受信待機が開始されていない場合に（ステップＳ１０１：Ｎｏ）、該受信待機の開始待ちの状態となる。このとき、通信装置１００は、処理すべきタスクがなければスリープ状態に遷移する可能性がある。
【００３７】
通信装置１００は、子ノードからのデータを受信した場合に（ステップＳ１０２：Ｙｅｓ）、受信データを中継候補データとして、中継候補リストに保存する（ステップＳ１０３）。中継候補リストには、受信データに含まれる送信元固有識別子、宛先固有識別子、子ノードの送信データ及び中継データを含む情報が追加される。一方、通信装置１００は、子ノードからのデータを受信していない場合に（ステップＳ１０２：Ｎｏ）、ステップＳ１０４の処理を実行する。通信装置１００は、子グループ用の受信待機が終了したか否かを判定する（ステップＳ１０４）。このとき、通信装置１００は、子グループ用の受信待機が終了していない場合に（ステップＳ１０４：Ｎｏ）、ステップＳ１０２の処理を実行する。一方、通信装置１００は、子グループ用の受信待機が終了した場合に（ステップＳ１０４：Ｙｅｓ）、処理を終了する。すなわち、通信装置１００は、子グループ用の受信待機の状態において、子ノードからのデータを受信した場合には、受信データを中継候補データとして、中継候補リストに追加していく処理を継続して実施する。
【００３８】
図８は、実施形態１に係る自グループ用の送信時の処理の流れの例を示すフローチャートである。図８に示すように、通信装置１００は、子グループ用の受信待機時に生成された中継候補リストを確認し、宛先固有識別子をもとに自ノード宛てのデータが存在するか否かを判定する（ステップＳ２０１）。このとき、通信装置１００は、自ノード宛てのデータが存在する場合に（ステップＳ２０１：Ｙｅｓ）、自ノード宛てのデータを中継データの一つである第１のデータとして分類する（ステップＳ２０２）。一方、通信装置１００は、自ノード宛てのデータが存在しない場合に（ステップＳ２０１：Ｎｏ）、ステップＳ２０４の処理を実行する。そして、通信装置１００は、第１のデータとして分類した中継候補データについて、中継候補リストから削除する（ステップＳ２０３）。
【００３９】
続いて、通信装置１００は、自ノード宛てではないデータを第２のデータとして分類し（ステップＳ２０４）、判定基準を満たす第２のデータが存在するか否かを判定する（ステップＳ２０５）。判定基準を満たす第２のデータが存在するか否かを判定する処理では、自ノードと子ノードとの瞬時的な通信品質が測定される。また、判定基準は、上述したように、自ノードとの通信品質がより低い子ノードから受信したデータを中継データとすることである。このとき、通信装置１００は、判定基準を満たす第２のデータが存在する場合に（ステップＳ２０５：Ｙｅｓ）、中継データの一つとして適用する第３のデータを抽出する（ステップＳ２０６）。一方、通信装置１００は、判定基準を満たす第２のデータが存在しない場合に（ステップＳ２０５：Ｎｏ）、ステップＳ２０７の処理を実行する。
【００４０】
その後、通信装置１００は、中継候補リストを削除し（ステップＳ２０７）、第１のデータや第３のデータ、センサデバイス１７によって計測された計測データ等を、中継データとして決定する（ステップＳ２０８）。そして、通信装置１００は、自ノードに割り当てられた送信スロットで、中継データを親ノードに対して送信する（ステップＳ２０９）。また、通信装置１００は、送信が完了した中継データを破棄する（ステップＳ２１０）。これらの後、自グループ用の送信の状態が終了する。
【００４１】
また、上述したように、通信品質は、過去の通信品質のパラメータを加味しても良い。過去の通信品質のパラメータを加味する場合は、中継候補リストの削除は行なわない。過去の通信品質のパラメータを使用する処理の流れを以下で説明する。なお、子グループ用の受信待機時の処理については、図７に示した処理の流れのうち、ステップＳ１０３の処理が異なる。具体的には、過去の通信品質のパラメータを加味するため、受信データに対応する中継候補リストが存在すれば更新し、存在しなければ図７と同様に受信データを中継候補データとして中継候補リストに保存する、といった処理になる。また、通信品質の平均値については、この時点で求めるようにしても良いし、以下で説明する中継データの送信時に求めるようにしても良い。  
【００４２】
図９は、実施形態１に係る自グループ用の送信時の処理の流れの例を示すフローチャートである。図９に示すように、通信装置１００は、子グループ用の受信待機時に更新された中継候補リストを確認し、宛先固有識別子をもとに自ノード宛てのデータが存在するか否かを判定する（ステップＳ３０１）。このとき、通信装置１００は、自ノード宛てのデータが存在する場合に（ステップＳ３０１：Ｙｅｓ）、自ノード宛てのデータを中継データの一つである第１のデータとして分類する（ステップＳ３０２）。一方、通信装置１００は、自ノード宛てのデータが存在しない場合に（ステップＳ３０１：Ｎｏ）、ステップＳ３０３の処理を実行する。ここでは、次回以降においても通信品質に関する情報を使用するため、中継候補リストの削除は行なわない。
【００４３】
そして、通信装置１００は、自ノード宛てではないデータを第２のデータとして分類し（ステップＳ３０３）、判定基準を満たす第２のデータが存在するか否かを判定する（ステップＳ３０４）。判定基準を満たす第２のデータが存在するか否かを判定する処理では、過去の通信品質の平均値や、自ノードと子ノードとの瞬時的な通信品質が使用される。また、判定基準は、自ノードとの通信品質がより低い子ノードから受信したデータを中継データとすることである。このとき、通信装置１００は、判定基準を満たす第２のデータが存在する場合に（ステップＳ３０４：Ｙｅｓ）、中継データの一つとして適用する第３のデータを抽出する（ステップＳ３０５）。一方、通信装置１００は、判定基準を満たす第２のデータが存在しない場合に（ステップＳ３０４：Ｎｏ）、ステップＳ３０６の処理を実行する。また、ここでは、次回以降においても通信品質に関する情報を使用するため、中継候補リストの削除は行なわない。
【００４４】
続いて、通信装置１００は、第１のデータや第３のデータ、センサデバイス１７によって計測された計測データ等を、中継データとして決定する（ステップＳ３０６）。そして、通信装置１００は、自ノードに割り当てられた送信スロットで、中継データを親ノードに対して送信する（ステップＳ３０７）。また、通信装置１００は、送信が完了した中継データを破棄する（ステップＳ３０８）。これらの後、自グループ用の送信の状態が終了する。なお、宛先選定回数と受信回数とを使用した通信品質を適用する場合は、中継候補リストを削除しないため、図９に示したフローチャートにて実現することができる。
【００４５】
実施形態によれば、通信装置１００は、子グループに含まれる複数の子ノードから受信された受信データから、判定基準に従って中継データを抽出して送信するので、ネットワークの負荷の増大や無線帯域の逼迫を抑制し、通信の高信頼化を実現することができる。また、通信装置１００は、子ノードからのデータの受信に伴い、中継データを選定して経路を冗長化するので、子ノード側で送信データに何らかの追加をすることなく、自律的に経路を冗長化することができる。
【００４６】
また、通信装置１００は、瞬時的な通信品質や過去の通信品質の平均値、また、親ノードの選定アルゴリズムが無線通信品質の良いノードを優先的に選定する場合に使用される受信回数に対する宛先選定回数の比率等を、通信品質のパラメータとして使用するので、種々の状況に応じて、好適な通信品質を適用した中継データの選定を実現することができる。
【００４７】
（実施形態２）
図１０は、実施形態２に係る通信装置１００ａの機能構成例を示すブロック図である。実施形態２では、実施形態１に係る通信装置１００の機能構成と同様の構成については同一の符号を付し、その詳細な説明を省略する場合がある。具体的には、以下に説明する抽出部１０４ａ以外の各部の機能は、実施形態１に係る各部の機能と同様である。
【００４８】
図１０に示すように、通信装置１００ａは、受信制御部１０１と、判定部１０２と、分類部１０３と、抽出部１０４ａと、測定部１０５と、決定部１０６と、センサ制御部１０７と、送信制御部１０８と、スリープ制御部１０９とを有する。上記各部は、これらの一部又は全てがソフトウェア（プログラム）で実現されても良いし、ハードウェアで実現されても良い。
【００４９】
抽出部１０４ａは、第１のデータとの類似度がより低い第２のデータを中継データとする判定基準を満たす第３のデータを抽出する。より具体的には、抽出部１０４ａは、中継候補リストに含まれる中継候補データのうち、既に中継データの一つとされている第１のデータとの類似度がより低い第２のデータを第３のデータとして抽出する。類似度は、同一のデータがどれだけ含まれているかを表す情報である。例えば、データＸ「ａ，ｂ，ｃ」と、データＹ「ａ，ｃ，ｄ」との類似度については、「ａ，ｃ」が同一であるため類似度は「２」となる。同様に、データＸ「ａ，ｂ，ｃ」と、データＺ「ｂ，ｅ，ｆ」との類似度については、「ｂ」が同一であるため類似度は「１」となる。この例では、データＸとの類似度がより低いのはデータＺという結果になる。
【００５０】
図１１は、実施形態２に係る判定基準を用いた処理の例を説明する図である。実施形態２に係る判定基準とは、既に中継データとされている第１のデータとの類似度がより低い中継候補データを中継データの一つとすることである。図１１では、通信装置１００ａとしてのノードＡ、ノードＢ、ノードＣ、ノードＤ、ノードＥ、ノードＦ、ノードＧ及びノードＨを例に挙げる。また、ノードＡ及びノードＢは中継階層４に含まれ、ノードＣ、ノードＤ及びノードＥは中継階層３に含まれ、ノードＧ、ノードＦ及びノードＨは中継階層２に含まれるものとする。なお、図１２では、説明の便宜上、一部の冗長経路（破線の矢印）を省略している。また、実線の矢印は、中継経路を表している。
【００５１】
図１１に示すように、中継階層４のノードＡは、中継階層３のノードＣに対して、データａを中継経路により送信する。また、中継階層４のノードＡは、中継階層３のノードＤに対して、データａを冗長経路により送信する。中継階層３のノードＣは、中継階層２のノードＧに対して、ノードＡから受信したデータａと、自身で送信するデータｃとを中継経路により送信する。中継階層３のノードＤは、中継階層２のノードＦに対して、ノードＡから受信したデータａと、自身で送信するデータｄとを中継経路により送信する。また、中継階層３のノードＤは、中継階層２のノードＧに対して、ノードＡから受信したデータａと、自身で送信するデータｄとを冗長経路により送信する。中継階層４のノードＢは、中継階層３のノードＥに対して、データｂを中継経路により送信する。中継階層３のノードＥは、中継階層２のノードＨに対して、ノードＢから受信したデータｂと、自身で送信するデータｅとを中継経路により送信する。また、中継階層３のノードＥは、中継階層２のノードＧに対して、ノードＢから受信したデータｂと、自身で送信するデータｅとを冗長経路により送信する。
【００５２】
ここで、中継階層２のノードＧが送信する中継データについて説明する。中継階層２のノードＧは、ノードＣ、ノードＤ及びノードＥからのデータを受信できている。このため、ノードＧにおける中継候補リストには、ノードＣ、ノードＤ及びノードＥから受信したデータに関する情報が保持されていることになる。このとき、ノードＧは、ノードＣから受信したデータについて、宛先固有識別子が自ノードのアドレスである、すなわち自ノード宛てのデータであるため、ノードＣから受信したデータａ及びデータｃを、中継データの一つである第１のデータとする。
【００５３】
そして、ノードＧは、ノードＤ及びノードＥから受信したデータについて、第１のデータとの類似度に関する判定基準を用いて、中継データとして選定するか否かを判定する。図１１に示した例では、第１のデータであるノードＣから受信したデータ「ａ，ｃ」と、第２のデータであるノードＤから受信したデータ「ａ，ｄ」との類似度、第１のデータであるノードＣから受信したデータ「ａ，ｃ」と、第２のデータであるノードＥから受信したデータ「ｂ，ｅ」との類似度それぞれが求められる。第１のデータであるノードＣから受信したデータ「ａ，ｃ」と、第２のデータであるノードＤから受信したデータ「ａ，ｄ」との類似度は、「１」となる。第１のデータであるノードＣから受信したデータ「ａ，ｃ」と、第２のデータであるノードＥから受信したデータ「ｂ，ｅ」との類似度は、「０」となる。
【００５４】
類似度を求めた結果、ノードＧは、ノードＥから受信したデータの方がノードＤから受信したデータよりも、ノードＣから受信した（既に中継データとされた）データとの類似度がより低くなる場合に、Ｎ＝１の条件において、ノードＥから受信したデータｂ及びデータｅを中継データの一つである第３のデータとして抽出する。これらの結果、ノードＧは、データａ、データｃ、データｂ、データｅ、及び、センサデバイス１７等により計測された計測データを含む自身で送信するデータｇを、中継データとして上位ノードに対して送信する。すなわち、通信装置１００ａは、自身が中継するデータに対し、より異なるデータを中継データとすることで、経路の冗長性をより高くすることができる。
【００５５】
図１２は、実施形態２に係る自グループ用の送信時の処理の流れの例を示すフローチャートである。図１２に示すように、通信装置１００ａは、子グループ用の受信待機時に生成された中継候補リストを確認し、宛先固有識別子をもとに自ノード宛てのデータが存在するか否かを判定する（ステップＳ４０１）。このとき、通信装置１００ａは、自ノード宛てのデータが存在する場合に（ステップＳ４０１：Ｙｅｓ）、自ノード宛てのデータを中継データの一つである第１のデータとして分類する（ステップＳ４０２）。一方、通信装置１００ａは、自ノード宛てのデータが存在しない場合に（ステップＳ４０１：Ｎｏ）、ステップＳ４０４の処理を実行する。そして、通信装置１００ａは、第１のデータとして分類した中継候補データについて、中継候補リストから削除する（ステップＳ４０３）。
【００５６】
続いて、通信装置１００ａは、自ノード宛てではないデータを第２のデータとして分類し（ステップＳ４０４）、判定基準を満たす第２のデータが存在するか否かを判定する（ステップＳ４０５）。判定基準を満たす第２のデータが存在するか否かを判定する処理では、既に中継データの一つとして分類した第１のデータと、自ノード宛てではない第２のデータとの類似度が求められる。また、判定基準は、上述したように、第１のデータとの類似度がより低い第２のデータを中継データとすることである。このとき、通信装置１００ａは、判定基準を満たす第２のデータが存在する場合に（ステップＳ４０５：Ｙｅｓ）、中継データの一つとして適用する第３のデータを抽出する（ステップＳ４０６）。一方、通信装置１００ａは、判定基準を満たす第２のデータが存在しない場合に（ステップＳ４０５：Ｎｏ）、ステップＳ４０７の処理を実行する。なお、第１のデータと第２のデータとの類似度を求める際に、第１のデータが存在しない場合には、実施形態１で説明した通信品質を用いた処理を行っても良い。
【００５７】
その後、通信装置１００ａは、中継候補リストを削除し（ステップＳ４０７）、第１のデータや第３のデータ、センサデバイス１７によって計測された計測データ等を、中継データとして決定する（ステップＳ４０８）。そして、通信装置１００ａは、自ノードに割り当てられた送信スロットで、中継データを親ノードに対して送信する（ステップＳ４０９）。また、通信装置１００ａは、送信が完了した中継データを破棄する（ステップＳ４１０）。これらの後、自グループ用の送信の状態が終了する。
【００５８】
実施形態によれば、通信装置１００ａは、子グループに含まれる複数の子ノードから受信された受信データに対し、自ノードの送信データとの類似度を求め、類似度がより低い受信データを中継データとして適用する判定基準に従って、中継データを抽出して送信するので、ネットワーク負荷の増大や無線帯域の逼迫を抑制し、通信の高信頼化を実現することができる。
【００５９】
（実施形態３）
図１３は、実施形態３に係る通信装置１００ｂの機能構成例を示すブロック図である。実施形態３では、実施形態１に係る通信装置１００の機能構成と同様の構成については同一の符号を付し、その詳細な説明を省略する場合がある。具体的には、以下に説明する抽出部１０４ｂ以外の各部の機能は、実施形態１に係る各部の機能と同様である。
【００６０】
図１３に示すように、通信装置１００ｂは、受信制御部１０１と、判定部１０２と、分類部１０３と、抽出部１０４ｂと、測定部１０５と、決定部１０６と、センサ制御部１０７と、送信制御部１０８と、スリープ制御部１０９とを有する。上記各部は、これらの一部又は全てがソフトウェア（プログラム）で実現されても良いし、ハードウェアで実現されても良い。
【００６１】
抽出部１０４ｂは、親ノードが前回送信した中継データに、自ノードの中継データが含まれているか否かを表す中継情報を用いて、自ノードの中継データが含まれていないことを表す中継情報を有する第２のデータを中継データとするための判定基準を満たす第３のデータを抽出する。実施形態３では、各通信装置１００ｂの送信データに中継フラグが追加される。中継フラグとは、親ノードが前回送信した中継データに、自ノードの中継データが含まれているか否かを表すフラグである。すなわち、親ノードが前回送信した中継データに、自ノードの中継データが含まれていない場合に、次回のデータ送信時に親ノードに中継してもらうことで、経路を冗長化することができる。
【００６２】
かかる中継フラグは、親グループ用の受信待機の状態において更新される。例えば、通信装置１００ｂは、親グループ用の受信待機の状態が開始されると、中継フラグをＦａｌｓｅに初期化する。中継フラグがＦａｌｓｅの場合は、親ノードが前回送信した中継データに、自ノードの中継データが含まれていないことを指す。そして、通信装置１００ｂは、親ノードからデータを受信した際に、親ノードが前回送信した中継データに、自ノードの中継データが含まれているか否かを確認し、含まれている場合には中継フラグをＴｒｕｅに更新する。なお、中継フラグを次回のデータ送信の際に追加することで、親ノードに対し、前回のデータ送信時に自ノードの送信データが中継されなかったことを通知することができる。
【００６３】
図１４は、実施形態３に係る中継判定システム１で使用される通信フレームの例を示す図である。実施形態３では、子グループ用の受信待機の状態において、中継候補リストに中継フラグを含む以下の情報を保持する。図１５に示すように、通信フレームには、送信元固有識別子と、宛先固有識別子と、フレーム長と、使用スロット番号と、中継フラグと、送信データと、０又は１以上の中継データとが含まれる。
【００６４】
抽出部１０４ｂによって用いられる判定基準は、中継フラグを含む中継候補リストにおいて、中継フラグがＦａｌｓｅのデータを中継データとすることである。これにより、中継フラグがＦａｌｓｅであるデータを受信した親ノードは、中継データとして選定し、経路を冗長化することで、受信が失敗してしまう可能性が高いノードからのデータを冗長経路によって中継することができる。
【００６５】
図１５は、実施形態３に係る中継フラグの更新処理の流れの例を示すフローチャートである。図１５に示すように、通信装置１００ｂは、親グループ用の受信待機の状態が開始されると、中継フラグをＦａｌｓｅに初期化する（ステップＳ５０１）。そして、通信装置１００ｂは、親ノードからのデータを受信したか否かを判定する（ステップＳ５０２）。このとき、通信装置１００ｂは、親ノードからのデータを受信した場合に（ステップＳ５０２：Ｙｅｓ）、親ノードが前回送信した中継データに、自ノードの送信データが含まれているか否かを判定する（ステップＳ５０３）。一方、通信装置１００ｂは、親ノードからのデータを受信していない場合に（ステップＳ５０２：Ｎｏ）、ステップＳ５０５の処理を実行する。
【００６６】
そして、通信装置１００ｂは、親ノードが前回送信した中継データに、自ノードの送信データが含まれている場合に（ステップＳ５０３：Ｙｅｓ）、中継候補リストに含まれる中継フラグをＴｒｕｅに更新する（ステップＳ５０４）。一方、通信装置１００ｂは、親ノードが前回送信した中継データに、自ノードの送信データが含まれていない場合に（ステップＳ５０３：Ｎｏ）、ステップＳ５０５の処理を実行する。
【００６７】
通信装置１００ｂは、親グループ用の受信待機の状態が終了した場合に（ステップＳ５０５：Ｙｅｓ）、処理を終了する。また、通信装置１００ｂは、親グループ用の受信待機の状態が終了していない場合に（ステップＳ５０５：Ｎｏ）、ステップＳ５０２の処理を実行する。すなわち、通信装置１００ｂは、親グループ用の受信待機の状態において、中継フラグをＦａｌｓｅに初期化し、親ノードからのデータを受信すると、親ノードが前回送信した中継データに自ノードの送信データが含まれていなければ、中継フラグを更新せずにＦａｌｓｅのままとする。
【００６８】
また、中継フラグは、親グループ用の受信待機の状態とは異なるタイミングで更新されても良い。具体的には、通信装置１００ｂは、親グループ用及び子グループ用のスロットの他に、親ノードが前回のフレームにおいて自ノードのデータを中継できなかったことを判定した場合に、中継できなかったことを通知するための受信スロットを、親ノード側で確保する。かかる受信スロットを中継失敗通知用受信スロットと呼ぶ。通信装置１００ｂは、中継失敗通知用受信スロットにおいて受信された子ノードのデータを、同一のフレームにおける送信スロットで中継伝送する。つまり、中継失敗通知用受信スロットにおける受信の有無を、中継フラグのＦａｌｓｅ／Ｔｒｕｅとして設定する。
【００６９】
図１６Ａ及び図１６Ｂは、実施形態３に係る通信装置１００ｂの無線通信方法の例を示す図である。図１６Ａ及び図１６Ｂに示すように、中継失敗通知用受信スロットは、中継階層２を自グループとすると、中継階層３の子グループに割り当てられた受信スロットよりも前の時間に割り当てられる。すなわち、中継失敗通知用受信スロットは、フレーム内で中継できなかったデータを送信することを目的として割り当てられている。図１６Ａでは、中継階層２の自グループのノード全てに、１の受信スロットを割り当てている。図１６Ｂでは、中継階層２の自グループのノードに、中継階層４のグループに割り当てられた受信スロット群を割り当てている。
【００７０】
図１６Ａに示した例について、中継階層４のグループに割り当てられた受信スロットの何れかを、中継失敗通知用受信スロットとして割り当てている。すなわち、中継階層がＬであるノードにとっては、中継階層Ｌ＋２以上のグループに割り当てられたスロットの何れかが割り当てられれば良い。図１６Ａでは、中継階層２であるノードＣ、ノードＤ及びノードＥは、中継階層４のグループに割り当てられた受信スロットの先頭スロットを中継失敗通知用受信スロットとして、受信待機を実施する。中継失敗通知用受信スロットで受信されたデータは、中継フラグをＦａｌｓｅとして、自ノード宛てのデータであるか否かに関わらず、中継データとして中継伝送される。ノードＣ、ノードＤ及びノードＥに対して子ノードであるノードＦ及びノードＧは、前回のフレームで親ノードが自データを中継していなかった場合に、次のフレームの親ノード及び親グループの中継失敗通知用受信スロットでウェイクアップしてデータを伝送する。図１６Ａに示した例の場合、子ノードは、ブロードキャストによりデータを伝送することで、親グループが受信可能な距離に存在するノード全てに対して経路の冗長化を依頼することができる。このとき、前回のフレームで中継されなかったデータを再送しても良い。
【００７１】
図１６Ｂに示した例について、中継階層４のグループに割り当てられた受信スロット群を、中継失敗通知用受信スロットとして割り当てている。図１６Ｂでは、中継階層２であるノードＣ、ノードＤ及びノードＥは、中継階層４のグループに割り当てられた受信スロット群を中継失敗通知用受信スロットとして、受信待機を実施する。また、ノードＣ、ノードＤ及びノードＥに対して子ノードであるノードＦ及びノードＧは、中継階層４のグループの何れかのスロットを中継失敗時に使用することができる。
【００７２】
図１６Ａに示すように、１のスロットを割り当てる場合は、複数の子ノードが１の中継失敗通知用受信スロットを使用するため、親ノードにとっては受信待機の時間を抑制することができ、消費電力を抑制することができる。図１６Ｂに示すように、スロット群を割り当てる場合は、複数の子ノードが中継失敗した場合であっても、それぞれ別のスロットを使用して送信することで、衝突することなく親グループのノードへデータを送信することができる。中継失敗通知用受信スロットの割り当てについては、搭載されるアプリケーションやシステムにおいて切り替えることができる。なお、中継失敗通知用受信スロットを使用することによる、通常のデータ通信への干渉の発生を抑制するために、例えば、通常のデータ通信とは異なる周波数、チャネルを用いることが好ましい。
【００７３】
図１７は、実施形態３に係る中継フラグの更新処理の流れの例を示すフローチャートである。図１７に示すように、通信装置１００ｂは、中継失敗通知用受信スロットが開始されると、中継フラグをＦａｌｓｅに初期化する（ステップＳ６０１）。そして、通信装置１００ｂは、親ノードからのデータを受信した場合に（ステップＳ６０２：Ｙｅｓ）、親ノードが前回送信した中継データに、自ノードの送信データが含まれているか否かを判定する（ステップＳ６０３）。一方、通信装置１００ｂは、親ノードからのデータを受信していない場合に（ステップＳ６０２：Ｎｏ）、ステップＳ６０５の処理を実行する。
【００７４】
そして、通信装置１００ｂは、親ノードが前回送信した中継データに、自ノードの送信データが含まれている場合に（ステップＳ６０３：Ｙｅｓ）、中継候補リストに含まれる中継フラグをＴｒｕｅに更新する（ステップＳ６０４）。一方、通信装置１００ｂは、親ノードが前回送信した中継データに、自ノードの送信データが含まれていない場合に（ステップＳ６０３：Ｎｏ）、ステップＳ６０５の処理を実行する。
【００７５】
通信装置１００ｂは、中継失敗通知用受信スロットが終了した場合に（ステップＳ６０５：Ｙｅｓ）、処理を終了する。また、通信装置１００ｂは、中継失敗通知用受信スロットが終了していない場合に（ステップＳ６０５：Ｎｏ）、ステップＳ６０２の処理を実行する。
【００７６】
実施形態によれば、通信装置１００ｂは、親ノードが前回送信した中継データに、自ノードの中継データが含まれているか否かにより更新される中継フラグをもとに、自ノードの中継データが含まれていないことを表す中継フラグである場合に、対応するデータを中継データとして選定させるので、データの受信失敗の可能性がより高いノードからのデータを冗長経路によって中継することができる。
【００７７】
上記文書中や図面中等で示した処理手順、制御手順、具体的名称、各種のデータやパラメータ等を含む情報は、特記する場合を除いて任意に変更することができる。また、図示した装置の各構成要素は、機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、装置の分散又は統合の具体的形態は、図示のものに限られず、その全部又は一部を各種の負担や使用状況等に応じて、任意の単位で機能的又は物理的に、分散又は統合することができる。
【００７８】
例えば、上述してきた実施形態を組み合わせた処理により中継データの判定を実現することができる。以下に、中継データの判定の順序の例を説明する。
【００７９】
（１）中継候補リストにおいて中継フラグがＦａｌｓｅであるデータを中継データとする
（２）（１）を満たす中継データの数がＮよりも小さい場合、すなわち送信可能な中継データの数に余裕がある場合に、第１のデータと、残りの中継候補リストのデータとの類似度を求め、類似度がより低いデータを中継データとする
（３）（２）を満たす中継データの数がＮよりも小さい場合に、残りの中継候補リストのデータに対応する子ノードとの間の通信品質がより低いデータを中継データとする
【００８０】
これらの結果、前回のフレームで中継されなかったデータを優先的に中継させつつ、類似度のより低いデータを中継することで、経路の冗長性をより高くすることができる。
【００８１】
また、上記実施形態に係る通信装置１００は、例えば、汎用のコンピュータ装置を基本ハードウェアとして用いることで実現することが可能である。実行されるプログラムは、上述してきた各機能を含むモジュール構成となっている。また、実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録されて提供しても、ＲＯＭ等に予め組み込んで提供しても良い。
【００８２】
また、上述した実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。また、各実施形態は、内容を矛盾させない範囲で適宜組み合わせることが可能である。また、各実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８３】
１  中継判定システム
１００  通信装置
１０１  受信制御部
１０２  判定部
１０３  分類部
１０４  抽出部
１０５  測定部
１０６  決定部
１０７  センサ制御部
１０８  送信制御部
１０９  スリープ制御部
【図１】
0006523112.tif 000002
【図２】
0006523112.tif 000003
【図３】
0006523112.tif 000004
【図４】
0006523112.tif 000005
【図５】
0006523112.tif 000006
【図６】
0006523112.tif 000007
【図７】
0006523112.tif 000008
【図８】
0006523112.tif 000009
【図９】
0006523112.tif 000010
【図１０】
0006523112.tif 000011
【図１１】
0006523112.tif 000012
【図１２】
0006523112.tif 000013
【図１３】
0006523112.tif 000014
【図１４】
0006523112.tif 000015
【図１５】
0006523112.tif 000016
【図１６Ａ】
0006523112.tif 000017
【図１６Ｂ】
0006523112.tif 000018
【図１７】
0006523112.tif 000019