(57)【特許請求の範囲】
【請求項１】
データを作成する複数の子ノードと、
前記複数の子ノードが作成したデータを収集する親ノードと、
前記親ノードからのデータ収集要求に応じて、前記複数の子ノードのうち自己と通信可能である通信可能子ノードから無線通信により、前記通信可能子ノードが作成したデータを取得し、前記親ノードに無線通信により、前記通信可能子ノードが作成したデータを提供する複数の中間ノードと、
を備え、
前記親ノードは、前記各中間ノードのまとめて提供するデータの取得先である子ノードの台数の上限を最大取得数として前記各中間ノードに通知し、前記各中間ノードからまとめて提供されたデータの取得先である子ノードの台数が前記最大取得数であるときに、前記通信可能子ノードのうちデータの取得されていない子ノードからデータを取得するように、前記各中間ノードに要求することを特徴とするデータ収集システム。
【請求項２】
親ノードは、複数の中間ノードに対して、複数の子ノードの作成したデータを前記複数の子ノードから前記親ノードへ中継するように、データ中継要求を発行し、
前記各中間ノードは、前記データ中継要求に従って、前記複数の子ノードのうち前記各中間ノードと通信可能である通信可能子ノードに対して、前記通信可能子ノードの作成したデータを前記通信可能子ノードから前記各中間ノードへ提供するように、データ提供要求を発行し、
前記通信可能子ノードは、前記データ提供要求に従って、前記通信可能子ノードの作成したデータを前記各中間ノードに無線通信により提供し、
前記各中間ノードは、前記通信可能子ノードから提供されたデータを、前記親ノードに無線通信により中継し、
前記親ノードは、前記各中間ノードのまとめて提供するデータの取得先である子ノードの台数の上限を最大取得数として前記各中間ノードに通知し、前記各中間ノードからまとめて提供されたデータの取得先である子ノードの台数が前記最大取得数であるときに、前記通信可能子ノードのうちデータの取得されていない子ノードからデータを取得するように、前記各中間ノードに要求することを特徴とするデータ収集方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、親ノードが複数の子ノードからデータを収集するデータ収集システム及びデータ収集方法において、無線通信ネットワークの負荷を軽減する技術に関する。
【背景技術】
【０００２】
親ノードが複数の子ノードからデータを収集する無線通信ネットワークが知られている。特許文献１では、各子ノードは、自己と通信可能な他の子ノードについて、親ノードまでの中継回数を記憶している。そして、各子ノードは、親ノードにデータを送信するときに、自己と通信可能な他の子ノードのうち、親ノードまでの中継回数が最も少ない他の子ノードにデータを中継する。よって、データの収集の効率を上げることができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−４９７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、複数の子ノードが親ノードに効率よくデータを送信する技術は開示されているが、親ノードが複数の子ノードに効率よくデータを要求する技術は開示されていない。よって、特許文献１では、データの収集の効率をより上げることができない。
【０００５】
そこで、前記課題を解決するために、本発明は、親ノードが複数の子ノードからデータを収集する無線通信ネットワークにおいて、親ノードが効率よくデータを要求することにより、データの収集の効率を上げる技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、データを作成する複数の子ノードから、複数の中間ノードを介して、データを収集する親ノードへデータが中継される。各中間ノードは、親ノードからのデータ収集要求に応じて、自己と通信可能である通信可能子ノードから無線通信により、通信可能子ノードが作成したデータを取得し、親ノードに無線通信により、通信可能子ノードが作成したデータを提供するようにした。
【０００７】
具体的には、本発明は、データを作成する複数の子ノードと、前記複数の子ノードが作成したデータを収集する親ノードと、前記親ノードからのデータ収集要求に応じて、前記複数の子ノードのうち自己と通信可能である通信可能子ノードから無線通信により、前記通信可能子ノードが作成したデータを取得し、前記親ノードに無線通信により、前記通信可能子ノードが作成したデータを提供する複数の中間ノードと、を備えることを特徴とするデータ収集システムである。
【０００８】
また、本発明は、親ノードは、複数の中間ノードに対して、複数の子ノードの作成したデータを前記複数の子ノードから前記親ノードへ中継するように、データ中継要求を発行し、前記各中間ノードは、前記データ中継要求に従って、前記複数の子ノードのうち前記各中間ノードと通信可能である通信可能子ノードに対して、前記通信可能子ノードの作成したデータを前記通信可能子ノードから前記各中間ノードへ提供するように、データ提供要求を発行し、前記通信可能子ノードは、前記データ提供要求に従って、前記通信可能子ノードの作成したデータを前記各中間ノードに無線通信により提供し、前記各中間ノードは、前記通信可能子ノードから提供されたデータを、前記親ノードに無線通信により中継することを特徴とするデータ収集方法である。
【０００９】
この構成によれば、親ノードは、複数の子ノードに対してデータ収集要求を発行するのではなく、複数の中間ノードに対してデータ収集要求を発行する。中間ノードの台数が子ノードの台数より少ない場合には、データ収集時間を短縮することができる。
【００１０】
また、本発明は、前記親ノードは、前記各中間ノードのまとめて提供するデータの取得先である子ノードの台数の上限を最大取得数として前記各中間ノードに通知し、前記各中間ノードからまとめて提供されたデータの取得先である子ノードの台数が前記最大取得数であるときに、前記通信可能子ノードのうちデータの取得されていない子ノードからデータを取得するように、前記各中間ノードに要求することを特徴とするデータ収集システムである。
【００１１】
また、本発明は、前記親ノードは、前記各中間ノードのまとめて提供するデータの取得先である子ノードの台数の上限を最大取得数として前記各中間ノードに通知し、前記各中間ノードからまとめて提供されたデータの取得先である子ノードの台数が前記最大取得数であるときに、前記通信可能子ノードのうちデータの取得されていない子ノードからデータを取得するように、前記各中間ノードに要求することを特徴とするデータ収集方法である。
【００１２】
この構成によれば、中間ノードは子ノードから取得したデータをまとめて親ノードに提供するため、無線通信ネットワークのうち親ノードに近い部分でデータ通信回数を軽減することができる。さらに、中間ノードがまとめて親ノードに提供するデータの取得先である子ノードの台数は最大取得数に制限されるため、無線ネットワークのうち親ノードに近い部分でデータが輻輳することを防止することができる。
【発明の効果】
【００１３】
本発明は、親ノードが複数の子ノードからデータを収集する無線通信ネットワークにおいて、親ノードが効率よくデータを要求することにより、データの収集の効率を上げる技術を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明のデータ収集システムの構成を示す図である。
【図２】本発明の親ノードの処理内容を示すフローチャートである。
【図３】本発明の中間ノードの処理内容を示すフローチャートである。
【図４】最大取得数が３である場合の処理内容を示す図である。
【図５】最大取得数が２である場合の処理内容を示す図である。
【発明を実施するための形態】
【００１５】
添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施の例であり、本発明は以下の実施形態に制限されるものではない。
【００１６】
（データ収集システムの構成）
図１は、本発明のデータ収集システムの構成を示す図である。データ収集システムは、親ノード１、中間ノード２−１、２−２、２−３、２−４、２−５及び子ノード３−１、３−２、３−３、３−４、３−５、３−６、３−７、３−８、３−９から構成される。
【００１７】
複数の子ノード３は、データを作成し、親ノード１は、複数の子ノード３が作成したデータを収集する。複数の中間ノード２は、親ノード１からのデータ収集要求に応じて、複数の子ノード３のうち自己と通信可能である通信可能子ノード３から無線通信により、通信可能子ノード３が作成したデータを取得し、親ノード１に無線通信により、通信可能子ノード３が作成したデータを提供する。複数の子ノード３の下流に不図示の通信装置が配置され、当該不図示の通信装置がデータを作成するときは、複数の子ノード３は当該不図示の通信装置から親ノード１へデータを中継する複数の中間ノード２としても機能する。
【００１８】
親ノード１は、各中間ノード２に対して、データ収集要求及びデータ収集処理を一連の処理として実行する。つまり、親ノード１は、ある中間ノード２に対して、データ収集要求及びデータ収集処理を一連の処理として実行した後で、他の中間ノード２に対して、データ収集要求及びデータ収集処理を一連の処理として実行する。
【００１９】
親ノード１は、各中間ノード２のまとめて提供するデータの取得先である子ノード３の台数の上限を最大取得数として各中間ノード２に通知する。親ノード１は、各中間ノード２からまとめて提供されたデータの取得先である子ノード３の台数が最大取得数であるときに、通信可能子ノード３のうちデータの取得されていない子ノード３からデータを取得するよう各中間ノード２に要求する。つまり、親ノード１は、ある中間ノード２がまとめてデータを取得した子ノード３の台数が最大取得数に等しければ、その中間ノード２は通信可能な子ノード３の一部からデータを取得していない可能性がある、と判断する。そして、親ノード１は、ある中間ノード２がまとめてデータを取得した子ノード３の台数が最大取得数に満たなければ、その中間ノード２は通信可能な子ノード３の全てからデータを取得したあるいは通信可能な子ノード３を有していない、と判断する。
【００２０】
図１の矢印は、いずれのノードどうしが通信可能であるかを示す。具体的には、親ノード１は、中間ノード２−１、２−２と通信可能である。中間ノード２−１は、親ノード１及び中間ノード２−２、２−３と通信可能である。中間ノード２−２は、親ノード１及び中間ノード２−１、２−３、２−４、２−５と通信可能である。中間ノード２−３は、中間ノード２−１、２−２、２−４及び子ノード３−１、３−２、３−３と通信可能である。中間ノード２−４は、中間ノード２−２、２−３、２−５及び子ノード３−３、３−４、３−５、３−６と通信可能である。中間ノード２−５は、中間ノード２−２、２−４及び子ノード３−６、３−７、３−８、３−９と通信可能である。
【００２１】
つまり、ある子ノード３から親ノード１への通信経路は複数存在する。ただし、当該複数の通信経路のうち中継回数が少なく通信状態が良い通信経路が選択される。そして、子ノード３−３からは中間ノード２−３、２−４がデータを取得することができ、子ノード３−６からは中間ノード２−４、２−５がデータを取得することができる。親ノード１、各中間ノード２及び各子ノード３は、データ収集処理に先立って、特許文献１に記載の先行技術などを利用して、上述のデータ収集システムの構成を知得している。
【００２２】
以下では、まず最大取得数が３である場合の処理内容を説明し、次に最大取得数が２である場合の処理内容を説明する。図２は、本発明の親ノードの処理内容を示すフローチャートであり、図３は、本発明の中間ノードの処理内容を示すフローチャートであり、図２及び図３のフローチャートは、上述の両者の場合で共通する。
【００２３】
（最大取得数が３である場合の処理内容）
図４は、最大取得数が３である場合の処理内容を示す図である。手順１では、親ノード１は、中間ノード２−１にポーリングするとき、いずれの子ノード３からもデータを収集していない旨の取得リストを中間ノード２−１に送信する（ステップＳ１）。このように、親ノード１は、中間ノード２−１に対して、子ノード３の作成したデータを子ノード３から親ノード１へ中継するように、データ中継要求を発行する。中間ノード２−１は、親ノード１から要求を受信し（ステップＳ２１）、隣接する子ノード３がないことを確認し（ステップＳ２２においてＮＯ）、親ノード１に処理の結果を送信する（ステップＳ２７）。親ノード１は、中間ノード２−１から結果を受信する（ステップＳ２）。動作した中間ノード２は中間ノード２−１である。親ノード１は、一部の中間ノード２にポーリングを終了していない（ステップＳ３においてＮＯ）。
【００２４】
手順２では、親ノード１は、中間ノード２−２にポーリングするとき、いずれの子ノード３からもデータを収集していない旨の取得リストを中間ノード２−２に送信する（ステップＳ１）。中間ノード２−２は、親ノード１から要求を受信し（ステップＳ２１）、隣接する子ノード３がないことを確認し（ステップＳ２２においてＮＯ）、親ノード１に処理の結果を送信する（ステップＳ２７）。親ノード１は、中間ノード２−２から結果を受信する（ステップＳ２）。動作した中間ノード２は中間ノード２−２である。親ノード１は、一部の中間ノード２にポーリングを終了していない（ステップＳ３においてＮＯ）。
【００２５】
手順３では、親ノード１は、中間ノード２−３にポーリングするとき、いずれの子ノード３からもデータを収集していない旨の取得リストを中間ノード２−３に送信する（ステップＳ１）。中間ノード２−３は、親ノード１から要求を受信し（ステップＳ２１）、隣接する子ノード３として子ノード３−１、３−２、３−３があることを確認する（ステップＳ２２においてＹＥＳ）。中間ノード２−３は、取得リストを参照することにより、子ノード３−１からいずれの中間ノード２によっても未だデータが取得されていないことを確認し（ステップＳ２３においてＮＯ）、子ノード３−１からデータを取得する（ステップＳ２４）。中間ノード２−３は、一部の隣接する子ノード３に対して処理を終了していないことを確認し（ステップＳ２５においてＮＯ）、最大取得数の隣接する子ノード３からデータを取得していないことを確認する（ステップＳ２６においてＮＯ）。
【００２６】
中間ノード２−３は、子ノード３−２に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＮＯと判断する。中間ノード２−３は、子ノード３−３に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＹＥＳと判断する。このように、中間ノード２−３は、データ中継要求に従って、複数の子ノード３のうち中間ノード２−３と通信可能である通信可能子ノード３−１、３−２、３−３に対して、通信可能子ノード３−１、３−２、３−３の作成したデータを通信可能子ノード３−１、３−２、３−３から中間ノード２−３へ提供するように、データ提供要求を発行する。そして、通信可能子ノード３−１、３−２、３−３は、データ提供要求に従って、通信可能子ノード３−１、３−２、３−３の作成したデータを中間ノード２−３に無線通信により提供する。
【００２７】
中間ノード２−３は、親ノード１に処理の結果を送信し、具体的には親ノード１に子ノード３−１、３−２、３−３からのデータを送信する（ステップＳ２７）。親ノード１は、中間ノード２−３から結果を受信する（ステップＳ２）。このように、中間ノード２−３は、通信可能子ノード３−１、３−２、３−３から提供されたデータを、親ノード１に無線通信により中継する。中継回数が最も少ない通信経路は、親ノード１及び中間ノード２−１、２−３を経由する通信経路であり、動作した中間ノード２は中間ノード２−１、２−３である。親ノード１は、一部の中間ノード２にポーリングを終了していない（ステップＳ３においてＮＯ）。
【００２８】
手順４では、親ノード１は、中間ノード２−４にポーリングするとき、子ノード３−１、３−２、３−３からデータを収集した旨の取得リストを中間ノード２−４に送信する（ステップＳ１）。中間ノード２−４は、親ノード１から要求を受信し（ステップＳ２１）、隣接する子ノード３として子ノード３−３、３−４、３−５、３−６があることを確認する（ステップＳ２２においてＹＥＳ）。中間ノード２−４は、取得リストを参照することにより、子ノード３−３からいずれかの中間ノード２により既にデータが取得されたことを確認し（ステップＳ２３においてＹＥＳ）、重複してデータを取得しない。中間ノード２−４は、一部の隣接する子ノード３に対して処理を終了していないことを確認し（ステップＳ２５においてＮＯ）、最大取得数の隣接する子ノード３からデータを取得していないことを確認する（ステップＳ２６においてＮＯ）。
【００２９】
中間ノード２−４は、子ノード３−４、３−５に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＮＯと判断する。中間ノード２−４は、子ノード３−６に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＹＥＳと判断する。中間ノード２−４は、親ノード１に処理の結果を送信し、具体的には親ノード１に子ノード３−４、３−５、３−６からのデータを送信する（ステップＳ２７）。親ノード１は、中間ノード２−４から結果を受信する（ステップＳ２）。中継回数が最も少ない通信経路は、親ノード１及び中間ノード２−２、２−４を経由する通信経路であり、動作した中間ノード２は中間ノード２−２、２−４である。親ノード１は、一部の中間ノード２にポーリングを終了していない（ステップＳ３においてＮＯ）。
【００３０】
手順５では、親ノード１は、中間ノード２−５にポーリングするとき、子ノード３−１、３−２、３−３、３−４、３−５、３−６からデータを収集した旨の取得リストを中間ノード２−５に送信する（ステップＳ１）。中間ノード２−５は、親ノード１から要求を受信し（ステップＳ２１）、隣接する子ノード３として子ノード３−６、３−７、３−８、３−９があることを確認する（ステップＳ２２においてＹＥＳ）。中間ノード２−５は、取得リストを参照することにより、子ノード３−６からいずれかの中間ノード２により既にデータが取得されたことを確認し（ステップＳ２３においてＹＥＳ）、重複してデータを取得しない。中間ノード２−５は、一部の隣接する子ノード３に対して処理を終了していないことを確認し（ステップＳ２５においてＮＯ）、最大取得数の隣接する子ノード３からデータを取得していないことを確認する（ステップＳ２６においてＮＯ）。
【００３１】
中間ノード２−５は、子ノード３−７、３−８に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＮＯと判断する。中間ノード２−５は、子ノード３−９に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＹＥＳと判断する。中間ノード２−５は、親ノード１に処理の結果を送信し、具体的には親ノード１に子ノード３−７、３−８、３−９からのデータを送信する（ステップＳ２７）。親ノード１は、中間ノード２−５から結果を受信する（ステップＳ２）。中継回数が最も少ない通信経路は、親ノード１及び中間ノード２−２、２−５を経由する通信経路であり、動作した中間ノード２は中間ノード２−２、２−５である。親ノード１は、全ての中間ノード２にポーリングを終了している（ステップＳ３においてＹＥＳ）。
【００３２】
親ノード１は、全ての中間ノード２にポーリングを終了しており、全ての子ノード３からデータを収集している。よって、親ノード１は、データ収集処理を終了する。ただし、親ノード１は、図２（ａ）で示した１回目のポーリングを行うのみならず、図２（ｂ）に示した２回目のポーリングを行ってもよい。２回目のポーリングは次に説明する。
【００３３】
（最大取得数が２である場合の処理内容）
図５は、最大取得数が２である場合の処理内容を示す図である。最大取得数が２である場合の手順１、２は、最大取得数が３である場合の手順１、２とそれぞれ同様である。
【００３４】
手順３では、親ノード１は、中間ノード２−３にポーリングするとき、いずれの子ノード３からもデータを収集していない旨の取得リストを中間ノード２−３に送信する（ステップＳ１）。中間ノード２−３は、親ノード１から要求を受信し（ステップＳ２１）、隣接する子ノード３として子ノード３−１、３−２、３−３があることを確認する（ステップＳ２２においてＹＥＳ）。中間ノード２−３は、子ノード３−１に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＮＯと判断する。中間ノード２−３は、子ノード３−２に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＹＥＳと判断する。
【００３５】
中間ノード２−３は、最大取得数の隣接する子ノード３−１、３−２からデータを取得している。中間ノード２−３は、親ノード１に処理の結果を送信し、具体的には親ノード１に子ノード３−１、３−２からのデータを送信する（ステップＳ２７）。親ノード１は、中間ノード２−３から結果を受信する（ステップＳ２）。動作した中間ノード２は中間ノード２−１、２−３である。親ノード１は、一部の中間ノード２にポーリングを終了していない（ステップＳ３においてＮＯ）。
【００３６】
手順４では、親ノード１は、中間ノード２−４にポーリングするとき、子ノード３−１、３−２からデータを収集した旨の取得リストを中間ノード２−４に送信する（ステップＳ１）。中間ノード２−４は、親ノード１から要求を受信し（ステップＳ２１）、隣接する子ノード３として子ノード３−３、３−４、３−５、３−６があることを確認する（ステップＳ２２においてＹＥＳ）。中間ノード２−４は、子ノード３−３に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＮＯと判断する。中間ノード２−４は、子ノード３−４に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＹＥＳと判断する。
【００３７】
中間ノード２−４は、最大取得数の隣接する子ノード３−３、３−４からデータを取得している。中間ノード２−４は、親ノード１に処理の結果を送信し、具体的には親ノード１に子ノード３−３、３−４からのデータを送信する（ステップＳ２７）。親ノード１は、中間ノード２−４から結果を受信する（ステップＳ２）。動作した中間ノード２は中間ノード２−２、２−４である。親ノード１は、一部の中間ノード２にポーリングを終了していない（ステップＳ３においてＮＯ）。
【００３８】
手順５では、親ノード１は、中間ノード２−５にポーリングするとき、子ノード３−１、３−２、３−３、３−４からデータを収集した旨の取得リストを中間ノード２−５に送信する（ステップＳ１）。中間ノード２−５は、親ノード１から要求を受信し（ステップＳ２１）、隣接する子ノード３として子ノード３−６、３−７、３−８、３−９があることを確認する（ステップＳ２２においてＹＥＳ）。中間ノード２−５は、子ノード３−６に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＮＯと判断する。中間ノード２−５は、子ノード３−７に対して、ステップＳ２３においてＮＯと判断し、ステップＳ２４を実行し、ステップＳ２５においてＮＯと判断し、ステップＳ２６においてＹＥＳと判断する。
【００３９】
中間ノード２−５は、最大取得数の隣接する子ノード３−６、３−７からデータを取得している。中間ノード２−５は、親ノード１に処理の結果を送信し、具体的には親ノード１に子ノード３−６、３−７からのデータを送信する（ステップＳ２７）。親ノード１は、中間ノード２−５から結果を受信する（ステップＳ２）。動作した中間ノード２は中間ノード２−２、２−５である。親ノード１は、全ての中間ノード２にポーリングを終了している（ステップＳ３においてＮＯ）。
【００４０】
親ノード１は、全ての中間ノード２にポーリングを終了しているが、一部の子ノード３からデータを収集していない。よって、親ノード１は、図２（ａ）で示した１回目のポーリングを行うのみならず、図２（ｂ）に示した２回目のポーリングを行う。
【００４１】
親ノード１は、中間ノード２−１、２−２からの結果を検索し（ステップＳ１１）、中間ノード２−１、２−２は隣接する子ノード３を有さないと判断し（ステップＳ１２においてＮＯ）、中間ノード２−１、２−２にポーリングしない。親ノード１は、一部の中間ノード２に対して処理を終了していない（ステップＳ１６においてＮＯ）。
【００４２】
手順６では、親ノード１は、中間ノード２−３からの結果を検索し（ステップＳ１１）、中間ノード２−３は隣接する子ノード３を有すると判断し（ステップＳ１２においてＹＥＳ）、最大取得数の隣接する子ノード３からデータを取得したと判断する（ステップＳ１３においてＹＥＳ）。親ノード１は、中間ノード２−３は通信可能な子ノード３の一部からデータを取得していない可能性があると判断する。親ノード１は、中間ノード２−３にポーリングするとき、子ノード３−１、３−２、３−３、３−４、３−６、３−７からデータを収集した旨の取得リストを中間ノード２−３に送信する（ステップＳ１４）。
【００４３】
中間ノード２−３は、隣接する子ノード３−１、３−２、３−３からデータが取得されていると判断するため（ステップＳ２３においてＹＥＳ）、これらの子ノード３からデータを取得しない。中間ノード２−３は、最大取得数の隣接する子ノード３からデータを収集しないうちに（ステップＳ２６においてＮＯ）、全ての隣接する子ノード３に対して処理を終了する（ステップＳ２５においてＹＥＳ）。中間ノード２−３は、親ノード１に処理の結果を送信し、具体的には未取得のデータがない旨の結果を送信する（ステップＳ２７）。親ノード１は、中間ノード２−３から結果を受信する（ステップＳ１５）。動作した中間ノード２は中間ノード２−１、２−３である。親ノード１は、一部の中間ノード２に対して処理を終了していない（ステップＳ１６においてＮＯ）。
【００４４】
手順７では、親ノード１は、中間ノード２−４からの結果を検索し（ステップＳ１１）、中間ノード２−４は隣接する子ノード３を有すると判断し（ステップＳ１２においてＹＥＳ）、最大取得数の隣接する子ノード３からデータを取得したと判断する（ステップＳ１３においてＹＥＳ）。親ノード１は、中間ノード２−４は通信可能な子ノード３の一部からデータを取得していない可能性があると判断する。親ノード１は、中間ノード２−４にポーリングするとき、子ノード３−１、３−２、３−３、３−４、３−６、３−７からデータを収集した旨の取得リストを中間ノード２−４に送信する（ステップＳ１４）。
【００４５】
中間ノード２−４は、隣接する子ノード３−３、３−４、３−６からデータが取得されていると判断するため（ステップＳ２３においてＹＥＳ）、これらの子ノード３からデータを取得しない。中間ノード２−４は、隣接する子ノード３−５からデータが取得されていないと判断するため（ステップＳ２３においてＮＯ）、この子ノード３からデータを取得する（ステップＳ２４）。中間ノード２−４は、最大取得数の隣接する子ノード３からデータを収集しないうちに（ステップＳ２６においてＮＯ）、全ての隣接する子ノード３に対して処理を終了する（ステップＳ２５においてＹＥＳ）。中間ノード２−４は、親ノード１に処理の結果を送信し、具体的には親ノード１に子ノード３−５からのデータを送信する（ステップＳ２７）。親ノード１は、中間ノード２−４から結果を受信する（ステップＳ１５）。動作した中間ノード２は中間ノード２−２、２−４である。親ノード１は、一部の中間ノード２に対して処理を終了していない（ステップＳ１６においてＮＯ）。
【００４６】
手順８では、親ノード１は、中間ノード２−５からの結果を検索し（ステップＳ１１）、中間ノード２−５は隣接する子ノード３を有すると判断し（ステップＳ１２においてＹＥＳ）、最大取得数の隣接する子ノード３からデータを取得したと判断する（ステップＳ１３においてＹＥＳ）。親ノード１は、中間ノード２−５は通信可能な子ノード３の一部からデータを取得していない可能性があると判断する。親ノード１は、中間ノード２−５にポーリングするとき、子ノード３−１、３−２、３−３、３−４、３−５、３−６、３−７からデータを収集した旨の取得リストを中間ノード２−５に送信する（ステップＳ１４）。
【００４７】
中間ノード２−５は、隣接する子ノード３−６、３−７からデータが取得されていると判断するため（ステップＳ２３においてＹＥＳ）、これらの子ノード３からデータを取得しない。中間ノード２−５は、隣接する子ノード３−８、３−９からデータが取得されていないと判断するため（ステップＳ２３においてＮＯ）、これらの子ノード３からデータを取得する（ステップＳ２４）。中間ノード２−５は、全ての隣接する子ノード３に対して処理を終了したときに（ステップＳ２５においてＹＥＳ）、最大取得数の隣接する子ノード３からデータを収集している。中間ノード２−５は、親ノード１に処理の結果を送信し、具体的には親ノード１に子ノード３−８、３−９からのデータを送信する（ステップＳ２７）。親ノード１は、中間ノード２−５から結果を受信する（ステップＳ１５）。動作した中間ノード２は中間ノード２−２、２−５である。親ノード１は、全ての中間ノード２に対して処理を終了している（ステップＳ１６においてＹＥＳ）。
【００４８】
親ノード１は、全ての中間ノード２に２回目のポーリングを終了しており、全ての子ノード３からデータを収集している。よって、親ノード１は、データ収集処理を終了する。ただし、親ノード１は、２回目のポーリングを行うのみならず、３回目のポーリングを行ってもよい。中間ノード２−３は、２回目のポーリングにおいて、隣接する子ノード３からデータを取得していないため（ステップＳ１３においてＮＯ）、親ノード１は、３回目のポーリングにおいて、中間ノード２−３にポーリングしない。中間ノード２−４は、２回目のポーリングにおいて、最大取得数に満たない１台の中間ノード３からデータを取得しているため（ステップＳ１３においてＮＯ）、親ノード１は、３回目のポーリングにおいて、中間ノード２−４にポーリングしない。中間ノード２−５は、２回目のポーリングにおいて、最大取得数に等しい２台の中間ノード３からデータを取得しているため（ステップＳ１３においてＹＥＳ）、親ノード１は、３回目のポーリングにおいて、中間ノード２−５にポーリングする（ステップＳ１４）。
【００４９】
（まとめ）
親ノード１は、複数の子ノード３に対してデータ収集要求を発行するのではなく、複数の中間ノード２に対してデータ収集要求を発行する。中間ノード２の台数が子ノード３の台数より少ない場合には、データ収集時間を短縮することができる。
【００５０】
親ノード１は、全中間ノード２に対して、データ収集要求及びデータ収集処理を一斉に実行するのではなく、各中間ノード２に対して、データ収集要求及びデータ収集処理を一連の処理として実行する。そのため、無線通信ネットワークのうち親ノード１に近い部分でデータが輻輳することを防止することができる。
【００５１】
親ノード１は、各中間ノード２のまとめて提供するデータの取得先である子ノード３の台数の上限を最大取得数として各中間ノード２に通知する。そのため、無線通信ネットワークのうち親ノード１に近い部分で、データ通信回数を軽減することができるとともに、データが輻輳することを防止することができる。ここで、親ノード１は、全ての子ノード３からデータを収集するまで、各中間ノード２にデータ収集要求を複数回にわたり発行することができる。このとき、親ノード１は、各中間ノード２の負荷を分散させるために、同一中間ノード２にデータ収集要求を連続して発行しないことが望ましい。ただし、親ノード１は、最大取得数に相当するデータを取得した中間ノード２が１台であれば、当該中間ノード２にデータ収集要求を連続して発行してもよい。
【００５２】
親ノード１及び中間ノード２の間の通信並びに中間ノード２及び子ノード３の間の通信は、本実施形態では無線通信であったが、変形例として有線通信であってもよい。無線通信及び有線通信において、データ収集時間の短縮、データ通信回数の軽減及びデータ輻輳の防止を図ることができる。親ノード１及び中間ノード２が無線通信を利用する携帯端末である場合には、親ノード１及び中間ノード２は商用電源を利用せず電池などの電源を利用する。そのため、データ収集時間の短縮、データ通信回数の軽減及びデータ輻輳の防止を図ることができれば、これらの携帯端末の電池容量の減少を抑えることができる。
【産業上の利用可能性】
【００５３】
本発明のデータ収集システム及びデータ収集方法は、子ノードがデータを作成し親ノードがデータを収集する、無線通信及び有線通信を問わないマルチホップネットワーク及びメッシュネットワークなどに適用することができる。
【符号の説明】
【００５４】
１：親ノード
２：中間ノード
３：子ノード
【図１】
0005654302.tif 000002
【図２】
0005654302.tif 000003
【図３】
0005654302.tif 000004
【図４】
0005654302.tif 000005
【図５】
0005654302.tif 000006