(57)【要約】【課題】本発明はスレーブノードの時刻補正にかかる処理を低減しつつ、基準となるマスターノードの時刻に補正可能な技術を提供することを目的とする。【解決手段】基準タイマーを有するマスターノードと、前記マスターノードと無線通信を行うスレーブノードからなる無線通信システムであって、前記スレーブノードは、前記マスターノードとの通信に用いる通信パケットの受信時刻又は送信時刻を自ノードの前記タイマーから取得し、取得した受信時刻又は送信時刻を前記マスターノードへ送信し、前記マスターノードは、基準タイマーから取得した前記通信パケットの送信時刻又は受信時刻と、前記スレーブノードから送信された前記通信パケットの受信時刻又は送信時刻と、から前記スレーブノードのタイマーと前記基準タイマーの時刻差を求めることを特徴とする。【選択図】図５
2014115794.tif 000002
【特許請求の範囲】
【請求項１】
基準タイマーを有するマスターノードと、前記マスターノードと無線通信により通信パケットを送受信するスレーブノードと、から構成される無線通信システムにおいて、
前記スレーブノードは、
前記マスターノードとの通信に用いる第一の通信パケットの受信時刻又は送信時刻を自ノードのタイマーから取得し、取得した受信時刻又は送信時刻を表す情報を前記マスターノードへ送信し、
前記マスターノードは、
前記基準タイマーから取得した前記第一の通信パケットの送信時刻又は受信時刻と、前記スレーブノードから送信された前記第一の通信パケットの受信時刻又は送信時刻と、から前記スレーブノードのタイマーと前記基準タイマーの時刻差を求めて、前記スレーブノードから送信されるにデータに付された時刻を補正することを特徴とする無線通信システム。
【請求項２】
請求項１において、前記マスターノードは、複数の前記スレーブノードと無線通信によて通信パケットを送受信するものであって、
複数の前記スレーブノードは、それぞれ自ノードが有するタイマーに従って測定対象から測定データを取得し、前記測定データにデータの取得時刻を付して前記マスターノードへ送信し、
前記マスターノードは、複数の前記スレーブノードが有するタイマーと前記基準タイマーとの時刻差を前記スレーブノードごとに求めて、各スレーブノードから送信された前記測定データの取得時刻を補正することを特徴とする無線通信システム。
【請求項３】
請求項２において、
前記マスターノードは、
複数の前記スレーブノードが有するタイマーと、前記基準タイマーと、の時刻差を前記スレーブノードごと対応付けて記憶する記憶部を備えることを特徴とする無線通信システム。
【請求項４】
請求項３において、
前記マスターノードは、
前記スレーブノードごとに対応づけられた前記基準タイマーとの時刻差から、各スレーブノードの通信パケットの送信タイミング又は測定対象から測定データを取得するタイミングを定めたタイムスケジュールを作成して複数の前記スレーブノードへ送信し、
複数の前記スレーブノードそれぞれは、前記マスターノードから送信された前記タイムスケジュールに従って通信パケットの送信又は測定対象から測定データの取得を行うことを特徴とする無線通信システム。
【請求項５】
請求項３において、
前記マスターノードは、前記基準タイマーと前記スレーブノードが有するタイマーとの時刻差の履歴から、前記スレーブノードのタイマーに誤差が発生するタイミングを予測し、予測したタイミングで、前記スレーブノードごとに記憶された前記基準タイマーとの時刻差を修正することを特徴とする無線通信システム。
【請求項６】
請求項１において、
前記スレーブノードは、
前記マスターノードへ送信する前記第一の通信パケットの送信時刻Ｔ１´、及び、前記マスターノードから送信される第二の通信パケットの受信時刻Ｔ２´を自ノードのタイマーから取得し、取得した時刻Ｔ１及び時刻Ｔ２´を表す情報を第三の通信パケットによって前記マスターノードへ送信し、
前記マスターノードは、前記第一の通信パケットの受信時刻Ｔ１と、前記第二の通信パケットの送信時刻Ｔ２を前記基準タイマーから取得し、取得した時刻Ｔ１及び時刻Ｔ２と、前記第三の通信パケットによって通知された時刻Ｔ１´及び時刻Ｔ２´とから前記スレーブノードのタイマーと前記基準タイマーの時刻差を求めることを特徴とする無線通信システム。
【請求項７】
請求項１において、
前記スレーブノードは、前記第一の通信パケットの送信時刻Ｔ１´を自ノードのタイマーから取得するとともに、当該第一の通信パケットに送信時刻Ｔ１´を表す情報付して前記マスターノードへ送信し、
前記マスターノードは、前記第一の通信パケットの受信時刻Ｔ１を前記基準タイマーから取得し、取得した時刻Ｔ１´と前記第一の通信パケットによって通知された時刻Ｔ１とを比較して前記スレーブノードのタイマーと前記基準タイマーの時刻差を求めることを特徴とする無線通信システム。
【請求項８】
請求項１において、
前記スレーブノードは、前記第一の通信パケットの受信時刻Ｔ１´を自ノードのタイマーから取得し、取得した時刻Ｔ１´を表す情報を第二の通信パケットによって前記マスターノードへ送信し、
前記マスターノードは、前記第一の通信パケットの送信時刻Ｔ１を前記基準タイマーから取得し、取得した時刻Ｔ１と記第二の通信パケットによって通知された時刻Ｔ１´を比較して前記スレーブノードのタイマーと前記基準タイマーの時刻差を求めることを特徴とする無線通信システム。
【請求項９】
請求項１において、さらに第二の基準タイマーを有する第二のマスターノードを備え、  前記マスターノードは、前記スレーブノードから受信したデータを前記第二のマスターノードへ中継して無線通信するものであって、
前記マスターノードは、前記第二のマスターノードとの通信に用いる第二の通信パケットの受信時刻又は送信時刻を自ノードの前記基準タイマーから取得し、取得した受信時刻又は送信時刻を前記第二のマスターノードへ送信し、
前記第二のマスターノードは、前記第二の基準タイマーから取得した前記第二の通信パケットの送信時刻又は受信時刻と、前記マスターノードから送信された前記第二の通信パケットの受信時刻又は送信時刻と、から前記基準タイマーと前記第二の基準タイマーの時刻差を求めて記憶することを特徴とする無線通信システム。
【請求項１０】
基準タイマーを有する無線通信装置であって、スレーブノードが測定対象から取得した測定データを含む通信パケットを無線通信によって受信する無線通信装置において、
前記スレーブノードが有するタイマーによって取得された、第一の通信パケットの受信時刻又は送信時刻を表す情報を、前記スレーブノードから受信し、
前記基準タイマーから取得した前記第一の通信パケットの送信時刻又は受信時刻と、前記スレーブノードから送信された前記第一の通信パケットの受信時刻又は送信時刻と、から前記スレーブノードのタイマーと前記基準タイマーの時刻差を求めて前記測定データに付された時刻を補正することを特徴とする無線通信装置。
【請求項１１】
基準タイマーを有するマスターノードと通信を行う無線通信装置であって、自装置が有するタイマーに従って測定対象から測定データを取得し、前記測定データにデータの取得時刻を付して前記マスターノードへ送信する無線通信装置において、
前記マスターノードとの通信に用いる第一の通信パケットの受信時刻又は送信時刻を自ノードの前記タイマーから取得し、取得した受信時刻又は送信時刻を前記マスターノードへ送信することを特徴とする無線通信装置。
【請求項１２】
マスターノードが有する基準タイマーと、前記マスターノードと無線通信を行うスレーブノードが有するタイマーの時刻差を補正する時刻補正方法であって、
前記スレーブノードは、前記マスターノードとの通信に用いる通信パケットの受信時刻又は送信時刻を自ノードの前記タイマーから取得し、取得した受信時刻又は送信時刻を前記マスターノードへ送信し、
前記マスターノードは、前記基準タイマーから取得した前記通信パケットの送信時刻又は受信時刻と、前記スレーブノードから送信された前記通信パケットの受信時刻又は送信時刻と、から前記スレーブノードのタイマーと前記基準タイマーの時刻差を求めて、前記スレーブノードから送信されるデータに付された時刻を補正することを特徴とする時刻補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信システム、無線通信装置及び時刻補正方法に関する。
【背景技術】
【０００２】
監視や制御用途の無線通信システムにおいて、測定データとデータ取得時刻の関連付け、異常発生位置の推定及び測定の同時性の確保するために無線機間の時刻同期，もしくは時刻補正が必要となる。
【０００３】
一般的な時刻同期方法として、例えば非特許文献１のIEEE1588 Precision Time Protocol (PTP) がある。非特許文献１では、基準時刻を持つマスターノードと、マスターノードの時刻に時刻同期するスレーブノードが定義され、マスターノードとスレーブノード間で定期的に時刻同期用パケットを交換することでスレーブノードの時刻を補正する。具体的には、マスターノードからスレーブノードに送信されるパケットのマスターノード送信時刻とスレーブノード受信時刻、並びにスレーブノードからマスターノードに送信されるパケットのスレーブノード送信時刻とマスターノード受信時刻を用いて、スレーブノードにおいて時刻オフセットを推定して補正する。
【０００４】
また、特許文献１では、複数の測定点で測定した時系列データを相互比較し、時刻誤差を推定する環境監視システムが開示されている。
【０００５】
また、特許文献２では、基地局が複数のセンサノードに所定の間隔でビーコン信号を送信し、複数のセンサノードは、内部クロックに基づいてビーコン信号を受信した時刻を取得して基地局に送信し、基地局は、複数のセンサノードから送信されたビーコン受信時刻の相対的な関係から各センサノードのセンシングデータの取得時刻を補正するセンサーネットワークシステムが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１２−９８９０１号公報
【特許文献２】特開２０１０−１０２５４９号公報
【非特許文献】
【０００７】
【非特許文献１】“IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems，” IEEE Standard 1588-2008.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上記IEEE1588のような時刻同期技術では、同期処理の度にスレーブノードがマスターノードの同期信号に合わせて自身のクロックを同期させる必要があるため、スレーブノードの処理負荷が増大してしまうという課題がある。すなわち無線監視システムにおいてデータを取得する無線機（スレーブノード）は、配線を不要とするためにバッテリ駆動であることが多く低消費電力化が求められるところ、このようにスレーブノードの処理が増大すると低消費電力化に寄与できない。
【０００９】
一方、特許文献１と特許文献２は、マスターノード側で時刻補正を行っているが、これらの技術では、複数のスレーブノードから送信されるデータを比較して相対的に各スレーブノードの時刻を補正しているため、基準となる時刻に補正することが出来ない。
そのため、例えば中継用の無線機を介するマルチホップ通信に適用が困難な点や、他のシステムとの連携が困難になることが考えられる。
【００１０】
本発明はこのような状況に鑑みてなされたものであり、スレーブノードの時刻補正にかかる処理を低減しつつ、基準となるマスターノードの時刻に補正可能な技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、マスターノードが有する基準タイマーと、前記マスターノードと無線通信を行うスレーブノードが有するタイマーの時刻差を補正する無線通信システムであって、前記スレーブノードは、前記マスターノードとの通信に用いる通信パケットの受信時刻又は送信時刻を自ノードの前記タイマーから取得し、取得した受信時刻又は送信時刻を前記マスターノードへ送信し、前記マスターノードは、前記基準タイマーから取得した前記通信パケットの送信時刻又は受信時刻と、前記スレーブノードから送信された前記通信パケットの受信時刻又は送信時刻と、から前記スレーブノードのタイマーと前記基準タイマーの時刻差を求めて、前記スレーブノードから送信されるデータに付された時刻を補正することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、スレーブノードの時刻補正にかかる処理を低減しつつ、基準となるマスターノードの時刻に補正可能が可能となる。これによって、スレーブノードは同期処理の負担が低減されるため、低消費電力化できる。
【００１３】
本発明に関連する更なる特徴・作用・効果は、本明細書の記述、添付図面から明らかになるものである。また、本発明の態様は、要素及び多様な要素の組み合わせ及び以降の詳細な記述と添付される特許請求の範囲の様態により達成され実現される。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係る無線通信システムの概略構成を示す図である。
【図２】本発明の実施形態に係る無線計装制御システムの概略構成を示す図である。
【図３】本発明の実施形態に係るスマートグリッドシステムの概略構成を示す図である。
【図４】本発明の第１の実施形態に係る時刻補正処理のシーケンス図である。
【図５】本発明の第１の実施形態に係るマスターノードの概略構成を示すブロック図である。
【図６】本発明の第１の実施形態に係るスレーブノードの概略構成を示すブロック図である。
【図７】本発明の第１の実施形態に係るマスターノードの処理フロー図である。
【図８】本発明の第１の実施形態に係るスレーブノードの処理フロー図である。
【図９】本発明の第２の実施形態に係る時刻補正処理のシーケンス図である。
【図１０】本発明の第２の実施形態に係るマスターノードの処理フロー図である。
【図１１】本発明の第２の実施形態に係るスレーブノードの処理フロー図である。
【図１２】本発明の第３の実施形態に係る時刻補正処理のシーケンス図である。
【図１３】本発明の第３の実施形態に係るマスターノードの処理フロー図である。
【図１４】本発明の第３の実施形態に係るスレーブノードの処理フロー図である。
【図１５】本発明の第４の実施形態に係るマスターノードの概略構成を示すブロック図である。
【図１６】本発明の第４の実施形態に係るスレーブノードの概略構成を示すブロック図である。
【図１７】本発明の第５の実施形態に係るマスターノードの概略構成を示すブロック図である。
【図１８】本発明の実施形態に係る補正情報処理記憶の記憶内容を示す図である。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して本発明の実施形態について説明する。添付図面では、機能的に同じ要素は同じ番号で表示される場合もある。なお、添付図面は本発明の原理に則った具体的な実施形態と実装例を示しているが、これらは本発明の理解のためのものであり、決して本発明を限定的に解釈するために用いられるものではない。
【００１６】
本実施形態では、当業者が本発明を実施するのに十分詳細にその説明がなされているが、他の実装・形態も可能で、本発明の技術的思想の範囲と精神を逸脱することなく構成・構造の変更や多様な要素の置き換えが可能であることを理解する必要がある。従って、以降の記述をこれに限定して解釈してはならない。
【００１７】
＜無線通信システムの構成＞
図１、図２及び図３は、本発明の実施形態に係る無線通信システムの概略構成を示す図である。
【００１８】
図１は、本発明の実施形態に係る無線通信システムの概略構成を示す図である。本通信システムは、マスターノード１０１を１台と、スレーブノード１０２a〜cを１台以上有する。
【００１９】
スレーブノード１０２a〜cは、スレーブノード１０２a〜cのタイマーから無線通信パケットのスレーブノード１０２a〜cにおける送受信時刻を取得し、取得したスレーブノード１０２a〜cにおける無線通信パケットの送受信時刻をマスターノード１０１へ送信する。
マスターノード１０１は、マスターノード１０１の基準時刻から無線通信パケットのマスターノード１０１における送受信時刻を取得し、スレーブノード１０２a〜cにおける通信パケットの送受信時刻と、マスターノード１０１における通信パケットの送受信時刻から、マスターノード１０１においてスレーブノード１０２a〜cの時刻情報を補正する。詳細な時刻補正方法に関しては後述する。
【００２０】
図２は、本発明の実施形態に係る無線計装制御システムの概略構成を示す図である。図２の無線計装制御システムは、マスターノード３０１を１台と、スレーブノード３０２a〜fを１台以上有し、必要に応じて、中継ノード３０３a〜bで中継を行い、センサ／アクチュエータ３０４a〜i、集約装置３０５、通信ネットワーク３０６、監視装置３０７及び制御装置３０８を有する。本無線計装制御システムでは、センサ／アクチュエータ３０４a〜iで取得した監視データをスレーブノード３０２a〜f、中継ノード３０３a〜b、マスターノード３０１、通信ネットワーク３０６を介して、監視装置３０７や制御装置３０８に伝送し、制御装置３０８で作成した制御データを通信ネットワーク３０６、マスターノード３０１、中継ノード３０３a〜b、スレーブノード３０２a〜fを介してセンサ／アクチュエータ３０４a〜iへ伝送する。このとき、複数個のセンサ／アクチュエータ３０４f〜hからの監視データを集約装置３０５で集約してから伝送しても良いし、複数個のセンサ／アクチュエータ３０４f〜h宛の制御データを集約装置３０５で分配しても良い。なお、センサ／アクチュエータ３０４a〜i、集約装置３０５、通信ネットワーク３０６、監視装置３０７及び制御装置３０８は、それぞれ１つ以上用いても良いし、必要に応じて用いなくても良い。
【００２１】
センサ／アクチュエータ３０４a〜iは、温度、湿度、圧力及び流量などを計測し、監視データを生成するセンサ、もしくは制御データにより駆動するアクチュエータのどちらか、もしくは両方の機能を備える。集約装置３０５は、複数個のセンサ／アクチュエータ３０４f〜hからの監視データを集約してから伝送し、複数個のセンサ／アクチュエータ３０４f〜h宛の制御データを分配する。通信ネットワーク３０６は、マスターノード３０１、スレーブノード３０２a〜f及び中継ノード３０３a〜b以外の通信ネットワークを指し、制御ネットワークなどが該当するが、携帯電話網やインターネットなどでもよい。監視装置３０７は、監視データを集約し、記憶しておく。また、監視装置３０７は、監視データや監視データを加工したデータを表示しても良い。制御装置３０８は、監視データなどの情報を基に制御データを生成し、センサ／アクチュエータ３０４a〜i宛に伝送する。
【００２２】
図３は、本発明の実施形態に係るスマートグリッドシステムの概略構成を示す図である。本システムは、マスターノード４０１a〜bを１台以上と、スレーブノードを内蔵したスマートメータ４０２a〜dを１台以上有し、必要に応じて、中継ノード４０３で中継を行う。また、状況に応じてスマートメータ４０２a〜dは、内蔵したスレーブノードの代わりに中継ノード４０３を内蔵する場合もある。マスターノード４０１a〜bは、一般的に高い建物４０４の屋上付近や、電柱４０５a〜bの柱上など、見通しの良い高い位置に設置する。
スマートメータ４０２a〜dは、工場４０６、集合住宅４０７及び一般住宅４０８a〜bなどに設置され、電力量計の値、ガスや水の使用量などのデータをデータセンター４１０や、電力会社や、ガス会社などの営業所４１１に通信網４０９を介して伝送する。通信網４０９は、マスターノード、スレーブノード及び中継ノード以外の通信システムを指し、光通信などが該当する。
【００２３】
＜第１の実施形態＞
以下、本発明の第１の実施形態に関して、図面を参照しながら説明する。
【００２４】
図４を用いて、本発明の第１の実施形態に係る時刻補正処理の手順を説明する。図４は、本発明の第１の実施形態に係る時刻補正処理のシーケンス図である。図４では、マスターノード５０１とスレーブノード５０２を１台ずつのみ記載しているが、１台のマスターノード５０１に従属するスレーブノード５０２は１台には限らず、２台以上の場合もある。また、マスターノード５０１は、図１〜図３のマスターノードに該当する。また、スレーブノード５０２は、図１〜図３のスレーブノード及びスマートメータに内蔵されたスレーブノードに該当する。図４において、下方向の矢印は時刻軸を表し、マスターノード５０１の時間軸とスレーブノード５０２の時間軸間の矢印は、マスターノード５０１とスレーブノード５０２間の無線通信パケットの通信方向を表す。
【００２５】
スレーブノード５０２は、マスターノード５０１へデータパケット５０３を送信する。
このとき、スレーブノード５０２はデータパケットの送信開始時刻Ｔ５０１を記憶する。
【００２６】
マスターノード５０１は、スレーブノード５０２からデータパケット５０３を受信した場合、受信を通知する応答パケット５０４を送信する。このとき、マスターノード５０１は、データパケット５０３の受信開始時刻Ｔ５０２を記憶し、応答パケット送信開始時刻Ｔ５０３を記憶する。
【００２７】
スレーブノード５０２は、マスターノード５０１から応答パケット５０４を受信したとき、データパケット５０３が受信されたことを認識する。スレーブノード５０２は、データパケット５０３に対する応答パケット５０４を一定時間経過しても受信出来なかった場合や、受信出来なかったことを通知された場合に受信されなかったことを認識し、必要に応じて再送を実施する。また、スレーブノード５０２は、応答パケット５０４の受信開始時刻Ｔ５０４を記憶する。
【００２８】
次にスレーブノード５０２は、マスターノード５０１へデータを送信するときにデータに時刻情報を付加したデータパケット５０５を送信する。ここで、時刻情報とは、データパケット送信開始時刻Ｔ５０1、応答パケット受信開始時刻Ｔ５０４、データの取得時刻が含まれる。
【００２９】
マスターノード５０１は、データパケット５０５を受信した場合、受信を通知する応答パケット５０５を送信する。ここで、マスターノード５０１は、データパケット５０３を受信したときにデータパケット受信開始時刻Ｔ５０２を把握し、応答パケット５０４を送信したときに応答パケット送信開始時刻Ｔ５０３を把握し、データパケット５０５を受信したときにスレーブノード５０２におけるデータパケット送信開始時刻Ｔ５０１と応答パケット受信開始時刻Ｔ５０４を把握する。これら、Ｔ５０１〜Ｔ５０４を用いて、式１により電波の伝搬遅延時間Ｔ５０５を求め、式２により基準時刻補正時間Ｔ５０６を求める。
【００３０】
伝搬遅延時間Ｔ５０５＝｛（Ｔ５０４−Ｔ５０１）―（Ｔ５０３−Ｔ５０２）｝／２
式１
基準時刻補正時間Ｔ５０６＝（Ｔ５０２−Ｔ５０１）−Ｔ５０５            式２
式１の（Ｔ５０３―Ｔ５０２）の項は、マスターノード５０１における応答時間を表し、応答時間が既知の場合、既知の値を代入しても良い。既知の値を代入する場合は、Ｔ５０３を記憶しなくても良い。式１の（Ｔ５０４−Ｔ５０１）の項は、データパケットの送信開始から応答パケットの受信開始までの時間を表し、スレーブノード５０２からマスターノード５０１までの伝搬遅延時間及びマスターノード５０１からスレーブノード５０２までの伝搬遅延時間の伝搬遅延時間２回分と、マスターノード５０１における応答時間を合わせた時間を表す。このことから、｛（Ｔ５０４−Ｔ５０１）―（Ｔ５０３−Ｔ５０２）｝は、２回分の伝搬遅延時間を表し、２で割ることで伝搬遅延時間Ｔ５０５を求めることが出来る。すなわち、式１によってマスターノード５０１とスレーブノード５０２の時刻差の有無に関わらず同じ値（伝播の遅延時間）を得ることができる。一方、式２の（Ｔ５０２−Ｔ５０１）の項は、マスターノード５０１とスレーブノード５０２の時刻差に伝搬遅延時間Ｔ５０５が加算された時間である。そのため、（Ｔ５０２−Ｔ５０１）の項から伝搬遅延時間Ｔ５０５を減算することで、マスターノード５０１の基準時刻とスレーブノード５０２のタイマーの時刻差である基準時刻補正時間Ｔ５０６を求めることが出来る。
【００３１】
マスターノード５０１において、基準時刻補正時間Ｔ５０６を用いてデータの取得時間を補正する。
【００３２】
また、スレーブノード５０２で測定対象からデータを取得するタイミングを、マスターノード５０１へのデータパケット送信開始と同時にするなど、データパケット５０３の送信タイミングとデータの取得タイミングを関連付けることで、データパケット送信開始時刻Ｔ５０１とデータの取得時刻を合わせても良い。データパケット送信開始時刻Ｔ５０１は、前回データを送信してからの経過時間とするなど、情報量を少なくしても良い。応答パケット受信開始時刻Ｔ５０４は、データパケット５０３を送信してからの経過時間とするなど、情報量を少なくしても良い。データパケット送信開始時刻Ｔ５０１、受信開始時刻Ｔ５０２、応答パケット送信開始時刻Ｔ５０３、受信開始時刻Ｔ５０４は、全て開始時刻で説明しているが、完了時刻としても良いし、事前測定などによりマスターノード５０１でずれ量が把握されていれば、途中の時刻としても良い。また、データパケット５０４は、データと時刻情報で別パケットにしても良い。
【００３３】
また、図４には示していないが、データパケット５０３には、１つ前のタイミングで送られたデータパケットの送信時刻及び応答パケットの受信時刻の時刻情報が付されており、
応答パケット５０６の後に、スレーブノード５０２から送られるデータパケットには、データパケット５０５の送信時刻と応答パケット５０６の受信時刻が付されている。これによって、パケットの送受信ごとに逐次マスターノードとスレーブノードの時刻差を求めることができる。
【００３４】
図５を用いて、本発明の第１の実施形態に係るマスターノードの内部構成を説明する。
図５は、本発明の第１の実施形態に係るマスターノードの概略構成を示すブロック図である。図５のマスターノード６０１は、図４のマスターノード５０１に相当する。マスターノード６０１は、スレーブノードから受信したデータパケット６０２に含まれる時刻情報をマスターノード６０１に内蔵された基準タイマー６０６に対応した時刻に補正した補正後時刻としてデータに付加したデータパケット６０３を出力する。マスターノード６０１は、無線通信処理部６０４と、送受信時刻取得部６０５と、基準タイマー６０６と、スレーブノード別基準時刻補正処理部６０７と、外部インターフェース６０８とを有する。
【００３５】
無線通信処理部６０４は、アンテナで受信した無線通信電波をデータパケット６０２に復調し、時刻情報と、送信元スレーブノードの識別子と、シーケンス番号とをスレーブノード別基準時刻補正処理部６０７に出力し、その後にスレーブノード別基準時刻補正処理部６０７から入力された補正後時刻とデータを合わせてデータパケット６０３を生成して、外部インターフェース６０８に出力する。データパケット６０２を受信した無線通信処理部６０４は、データパケット６０２を送信したスレーブノード宛に、データパケット６０２を受信したことを通知する応答パケットを生成し、無線信号に変調し、アンテナから無線通信電波を送信する。さらに、無線通信処理部６０４は、データパケット６０２を受信した場合に送受信時刻取得部６０５へ受信タイミングと、送信元のスレーブノードの識別子と、シーケンス番号を出力し、応答パケットを送信したときに送信タイミングを出力する。また、無線通信処理部６０４は、外部インターフェース６０８からデータパケットを入力された場合、データパケットを無線信号に変調し、アンテナから無線通信電波を送信する。
【００３６】
送受信時刻取得部６０５は、無線通信処理部６０４からデータパケット６０２の受信タイミングを入力されたとき、基準タイマー６０６より受信タイミングの基準時刻をデータパケット受信時刻として取得し、応答パケットの送信タイミングを入力されたとき、基準タイマー６０６より送信タイミングの基準時刻を応答パケットの送信タイミングとして取得し、スレーブノード別基準時刻補正処理部６０７へスレーブノードの識別子と、シーケンス番号と、データパケット受信時刻と、応答パケット送信時刻とを出力する。
【００３７】
基準タイマー６０６は、基準時刻を送受信時刻取得部６０５に出力する。基準時刻は、原子時計などを用いて生成しても良いし、ＧＰＳや他の時刻同期手段を用いて取得しても良い。
【００３８】
スレーブノード別基準時刻補正処理部６０７は、演算処理部６１０と、記憶部６２０とによって構成される。また、演算処理部６１０が実行するプログラムとしてスレーブノード取得時刻補正処理６１１と、基準時刻補正時間演算処理６１２を有し、記憶部６２０には、補正処理情報記憶６２１が記憶される。スレーブノード別基準時刻補正処理部６０７と、送受信時刻取得部６０５と、無線通信処理部６０４は、それぞれ相互に接続している。
【００３９】
送受信時刻取得部６０５から入力されたデータパケット受信時刻や、応答パケット送信時刻をスレーブノードの識別子毎にシーケンス番号別に補正処理情報記憶６２１として記憶する。また、スレーブノード別基準時刻補正処理部６０７内の基準時刻補正時間演算処理６１２は、無線通信処理部６０４から入力された時刻情報に含まれるスレーブノードにおけるデータパケット送信時刻と、応答パケット受信時刻と、スレーブノードの識別子とシーケンス番号に対応する補正処理情報に記憶したデータパケット受信時刻と応答パケット送信時刻から、上述の式１、式２を用いて基準時刻補正時間を演算する。
【００４０】
また、スレーブノード別基準時刻補正処理部６０７内のスレーブノード取得時刻補正処理６１１は、無線通信処理部６０４から入力された時刻情報に含まれるデータ取得時刻を演算した基準時刻補正時間で補正し、補正後時刻として無線通信処理部６０４に出力する。スレーブノード別基準時刻補正処理部６０７は、演算した基準時刻補正時間を補正処理情報記憶６２１として記憶し、外部インターフェース６０８を介して、マスターノード６０１の外部装置へ基準時刻差として、基準時刻補正時間を出力しても良い。
【００４１】
外部インターフェース６０８は、無線通信処理部６０４から入力されたデータパケット６０３をマスターノード６０１の外部装置に適した通信方式で出力する。また、外部インターフェース部６０８は、マスターノード６０１の外部装置からデータパケットを入力された場合、データパケットを無線通信処理部６０４に出力する。
【００４２】
次に、マスターノード６０１が図２に示す中継ノード３０３a〜bとして動作する場合について説明する。基準時刻補正時間演算処理６１２が、上述の式１、式２を用いて基準時刻補正時間を演算し、スレーブノード取得時刻補正処理６１１が、無線通信処理部６０４から入力された時刻情報に含まれるデータ取得時刻を基準時刻補正時間で補正し、補正後時刻として無線通信処理部６０４に出力するまでは、上述の処理と同様である。マスターノードが中継ノードとして動作する場合には、無線通信処理部６０４は、外部インターフェース部６０８ではなく、アンテナを介して図２で示す上位のマスターノード３０１へ補正後の時刻をデータに付して送信する点が異なる。この時も同様に補正後の時刻ではなく基準時刻差として、基準時刻補正時間を出力しても良い。また、中継ノードとして動作するマスターノード６０１では、基準時刻補正時間を演算せず、スレーブノードとのデータパケット送受信時刻と、応答パケット送受信時刻と、スレーブノードの識別子とを上位のマスターノードへ送信して、上位のマスターノードで基準時刻補正時間を演算することもできる。
【００４３】
次に、マスターノード６０１が図２に示すマスターノード３０１のように、スレーブノード３０２ｂ〜ｄ、３０２ｅ、ｆと無線通信を行う中継のノード３０３a〜bの上位のマスターノードとして動作する場合について説明する。上述のマスターノードの動作と同様に、基準時刻補正時間演算処理６１２が、下位にある中継ノード３０３a〜bと、データパケット、応答パケットを送受信して上述の式１、式２を用いて基準時刻補正時間を演算し、各中継ノード３０３a〜bとの基準時刻補正時間を補正処理情報記憶６２１として記憶する。
【００４４】
次に、スレーブノード取得時刻補正処理６１１は、中継ノード３０３a〜bから受信したデータに付された補正後時刻をさらに各中継ノード３０３a〜bとの基準時刻補正時間で補正して新たな補正後時刻を作成し、無線通信処理部６０４に出力する。
【００４５】
また、中継ノード３０３a〜bから、補正後時刻ではなくスレーブノード３０２ｂ〜ｄ、３０２ｅ、ｆとの基準時刻補正時間が送信される場合には、スレーブノード取得時刻補正処理６１１は、データに付された基準時刻補正時間にさらに各中継ノード３０３a〜bとの基準時刻補正時間を加えて補正して新たな補正後時刻を作成し、無線通信処理部６０４に出力する。外部インターフェース６０８は、無線通信処理部６０４から入力されたデータパケット６０３をマスターノード６０１の外部装置に適した通信方式で出力する。
【００４６】
また、下位にある中継ノード２０３a〜bから、中継ノード３０３a〜bとスレーブノード３０２ｂ〜ｄ、又は、３０２ｅ、ｆとのデータパケット及び応答パケットの送受信時刻が送信される場合には、基準時刻補正時間演算処理６１２は、中継ノード３０３a〜bとの基準時刻補正時間を演算するだけでなく、中継ノード３０３a〜bそれぞれを基準としたスレーブノード３０２ｂ〜ｄ、又は、３０２ｅ、ｆとの基準時刻補正時間も演算して補正処理情報記憶６２１として記憶する。そして、スレーブノード取得時刻補正処理６１１は、中継ノード３０３a〜bとの基準時刻補正時間、及び、各中継ノード３０３a〜bとスレーブノード３０２ｂ〜ｄ、又は、３０２ｅ、ｆとの基準時刻補正時間を用いて補正後時刻を作成し、無線通信処理部６０４に出力する。
【００４７】
このように、マスターノード６０１は、スレーブノードから送られたデータパケット６０２に付された時刻情報を基準タイマー６０６の時刻に合わせて補正して、補正後の時刻をデータに付してデータパケット６０３として外部へ送信することで、マスターノード６０１と、スレーブノードの時刻差を補正することができる。
【００４８】
図１８は、補正処理情報記憶６２１に記憶されるデータの例である。補正処理情報記憶６２１には、スレーブノードの識別番号であるスレーブノード識別子（ＩＤ）１７０１、スレーブノードから送られるデータパケット５０３や５０５ごとに付けられるシーケンス番号１７０２と、マスターノード６０１又はスレーブノードが取得したパケットの送受信時刻である、データパケット送信時刻（Ｔ５０１）１７０３と、データパケット受信時刻（Ｔ５０２）１７０４と、応答パケット送信時刻（Ｔ５０３）１７０５と、応答パケット受信時刻（Ｔ５０４）１７０６が記憶される。また、Ｔ５０１〜Ｔ５０４から算出されたマスターノード６０１とスレーブノードとの時刻差が、スレーブノードごとに基準時刻補正時間１７０７として記憶される。
【００４９】
このテーブルの一行目では、ＩＤ「００１」のスレーブノードによるシーケンス番号「１０」のパケット送信、応答時では、「０:００:０１」だけスレーブノードの時刻が遅れていることを示し、テーブルの一行目では、ＩＤ「００２」のスレーブノードによるシーケンス番号「１０」のパケット送信、応答時では、「０:００:０１」だけスレーブノードの時刻が進んでいることを示している。本例では、説明を簡潔にするため２台のスレーブノードと接続される例を記載したが、３台以上になっても同様である。
【００５０】
図６を用いて、本発明の第１の実施形態に係るスレーブノードの内部構成を説明する。
図６は、本発明の第１の実施形態に係るスレーブノードの概略構成を示すブロック図である。図６のスレーブノード７０１は、図４のスレーブノード５０２に相当する。スレーブノード７０１は、外部装置から入力されたデータパケット７０２に含まれるデータ取得時刻送受信時刻を加えて時刻情報としてデータに付加したデータパケット７０３を出力する。スレーブノード７０１は、外部インターフェース７０４と、無線通信処理部７０５と、送受信時刻取得部７０６と、タイマー７０７とを有する。
【００５１】
外部インターフェース７０４は、スレーブノード７０１の外部装置から入力されたデータパケット７０２を無線通信処理部７０５へ出力する。また、外部インターフェース部７０４は、無線通信処理部７０５からデータパケットを入力された場合、スレーブノード７０１の外部装置に適した通信方式で出力する。
【００５２】
無線通信処理部７０５は、外部インターフェース７０４から入力されたデータパケット７０２にシーケンス番号を付加し、送受信時刻取得部７０６から入力されたデータパケット送信時刻と、応答パケット受信時刻とを付加して、データパケット７０３を生成し、無線信号に変調し、アンテナから無線通信電波を送信する。データパケット７０３を送信したスレーブノード７０１は、マスターノードからの応答パケットが受信されるか、一定時間経過するまで待機する。応答パケットを受信した場合、スレーブノード７０１は、データパケット７０３がマスターノードで受信されたことを認識し、データパケット７０５の通信を完了する。一定時間経過しても応答パケットを受信出来なかった場合、スレーブノード７０１は、データパケット７０３がマスターノードで受信されなかったと認識し、データパケット７０５を再送する。さらに、無線通信処理部７０５は、データパケット７０３を送信した場合に送受信時刻取得部７０６へ送信タイミングを出力し、応答パケットを受信した場合に送受信時刻取得部７０６へ受信タイミングを出力する。また、無線通信処理部７０５は、マスターノードからのデータパケットを受信した場合、データパケットを外部インターフェース７０４に出力する。
【００５３】
送受信時刻取得部７０６は、無線通信処理部７０６からデータパケット７０３の送信タイミングを入力された場合、タイマー７０７より送信タイミングの時刻をデータパケット送信時刻として取得し、応答パケットの受信タイミングを入力された場合、タイマー７０７より受信タイミングの時刻を応答パケット受信時刻として取得し、取得したデータパケット送信時刻と、応答パケット受信時刻とを無線通信処理部７０５へ出力する。
【００５４】
タイマー７０７は、スレーブノード７０１で認識している時刻を送受信時刻取得部７０６へ出力する。また、タイマー７０７は、スレーブノード７０１の外部装置へ時刻情報を出力しても良い。  次に、図７を用いて、マスターノード６０１の処理フローを簡潔に説明する。マスターノード６０１は、スレーブノード７０１からデータパケットを受信するまで待つ（Ｓ１０１）。スレーブノード７０１からデータパケットを受信すると、データパケットの受信時刻を基準タイマー６０６から取得して記録し（Ｓ１０２）、応答パケットをスレーブノード７０１へ送信する（Ｓ１０３）。その時、応答パケットの送信時刻を基準タイマー６０６から取得して記録し（Ｓ１０４）、再度スレーブノード７０１からデータパケットを受信するまで待機する（Ｓ１０１）。
【００５５】
一方、各データパケットには、前のシーケンスで送受信したデータパケット送信時刻と、応答パケット受信時刻が含まれており、基準時刻補正演算のためこれらのスレーブノード７０１側で測定したデータパケット送信時刻と、応答パケット受信時刻を取得する（Ｓ１０５）。次に、データパケットから取得したデータパケット送信時刻と、応答パケット受信時刻と、マスターノード６０１側の基準タイマー６０６から取得したデータパケットの受信時刻と、応答パケットの送信時刻を用いて基準時刻補正時間を演算し、スレーブノード識別子とシーケンス番号に対応させて記録する（Ｓ１０６）。そして、データパケット内の時刻情報を基準時刻補正時間で補正し（Ｓ１０７）、補正後時刻を付したパケットを作成し、外部へ出力する（Ｓ１０８）。
【００５６】
次に、図８を用いて、スレーブノード７０１の処理フローを簡潔に説明する。スレーブノード７０１はマスターノード６０１へデータパケットを送信する（Ｓ２０１）。この時データパケットには、前のシーケンスで送受信したデータパケット送信時刻と、応答パケット受信時刻が含まれている。次に、データパケットの送信時刻をタイマー７０７から取得して記録する（Ｓ２０２）。その後、マスターノード６０１からタイムアウト時間内に応答パケットを受信したか判断し（Ｓ２０３）、受信しなかった場合には、Ｓ２０１へ戻り再送処理をする。応答パケットを受信した場合には、タイマー７０７から応答パケットの受信時刻を取得して記録する（Ｓ２０４）。次に、取得したデータパケットの送信時刻と、応答パケットの受信時刻を付して新たなデータパケットを作成し（Ｓ２０５）、Ｓ２０１へ戻る。
【００５７】
以上説明した本実施形態によれば、スレーブノードは、スレーブノードのタイマーから取得したデータパケット送信時刻と、応答パケット受信時刻とをマスターノードへ送信し、マスターノードは、マスターノードの基準時刻から取得したデータパケット受信時刻と、応答パケット送信時刻と、スレーブノードから受信したデータパケット送信時刻と、応答パケット受信時刻とを用いて基準時刻補正時間を演算し、補正した時刻を出力することで、スレーブノードにおける時刻補正用の演算処理や補正処理を無くし、スレーブノードの低消費電力化を図るとともに、マスターノードに従属する１つ以上のスレーブノードの時刻を基準となるマスターノードの時刻に高精度に時刻補正可能である。また、スレーブノードが送信するデータパケットに時刻情報を付加することで、時刻補正専用のパケットを無くすことで、スレーブノードのさらなる低消費電力化が可能である。また、マスターノードにおいてスレーブノード別に補正処理情報を記憶することで、マスターノードに２台以上のスレーブノードが従属する場合にも、間違うことなく時刻補正が可能である。また、シーケンス番号別に補正処理情報を記憶することで、データパケットがロスした場合にも、間違うことなく時刻補正可能である。また、スレーブノードから送信する送受信時刻の代わりに経過時間を用いることにより、マスターノードへ送信するデータ量を減らすことが出来、スレーブノードのさらなる低消費電力化が可能である。
【００５８】
＜第２の実施形態＞
以下、本発明の第２の実施形態に関して、図面を参照しながら説明する。
【００５９】
図９を用いて、本発明の第２の実施形態に係る時刻補正処理の手順を説明する。図９は、本発明の第２の実施形態に係る時刻補正処理のシーケンス図である。図９では、マスターノード８０１とスレーブノード８０２を１台ずつのみ記載しているが、１台のマスターノード８０１に従属するスレーブノード８０２は１台には限らず、２台以上の場合もある。また、マスターノード８０１は、図１〜図４のマスターノードに該当する。また、スレーブノード８０２は、図１〜図３のスレーブノード及びスマートメータに内蔵されたスレーブノードに該当する。図９において、下方向の矢印は時刻軸を表し、マスターノード８０１の時間軸とスレーブノード８０２の時間軸間の矢印は、マスターノード８０１とスレーブノード８０２間の無線通信パケットの通信方向を表す。
【００６０】
スレーブノード８０２は、マスターノード８０１へデータパケット８０３を送信する。
このとき、スレーブノード８０２はデータパケットの送信開始時刻Ｔ８０１をデータパケット８０３に付加する。
【００６１】
マスターノード８０１は、スレーブノード８０２からデータパケット８０３を受信した場合、受信を通知する応答パケットを送信する。このとき、マスターノード８０１は、データパケット８０３の受信開始時刻Ｔ８０２を記憶する。
【００６２】
マスターノード８０１は、データパケットパケット８０３を受信したときにデータパケット送信開始時刻Ｔ８０1と、受信開始時刻Ｔ８０２を把握する。これら、Ｔ８０１〜Ｔ８０２を用いて、式３により基準時刻補正時間Ｔ８０３を求める。
【００６３】
基準時刻補正時間Ｔ８０３＝Ｔ８０２−Ｔ８０１    式３
式３は、マスターノード８０１とスレーブノード８０２の時刻差に伝搬遅延時間が加算された時間であり、伝搬遅延時間が必要となる時刻補正精度と比較して十分に小さい場合に基準時刻補正時間Ｔ８０３とすることが出来る。
【００６４】
マスターノード８０１において、基準時刻補正時間Ｔ８０３を用いてデータの取得時間を補正する。
【００６５】
データの取得をデータパケット送信開始と同時にするなど、データパケット８０３の送信タイミングとデータの取得タイミングを関連付けることで、データパケットの送信開始時刻Ｔ８０１とデータの取得時刻を合わせても良い。データパケット送信開始時刻Ｔ８０１は、前回データを送信してからの経過時間とするなど、情報量を少なくしても良い。データパケット送信開始時刻Ｔ８０１、受信開始時刻Ｔ８０２は、全て開始時刻で説明しているが、完了時刻としても良いし、事前測定などによりマスターノード８０１でずれ量が把握されていれば、途中の時刻としても良い。また、データパケット８０３は、データと時刻情報で別パケットにしても良い。
【００６６】
第２の実施形態における、マスターノード８０１およびスレーブノード８０２の構成はそれぞれ図５、６に示すものと同様であるが、動作が異なる。
【００６７】
図１０を用いて、マスターノード８０１の処理フローを簡潔に説明する。マスターノード８０１は、スレーブノード８０２からデータパケットを受信するまで待つ（Ｓ３０１）。スレーブノード８０２からデータパケットを受信すると、データパケットの受信時刻を基準タイマー６０６から取得して記録し（Ｓ３０２）、応答パケットをスレーブノード８０２へ送信する（Ｓ３０３）。
【００６８】
一方、各データパケットには、データパケット送信時刻が含まれており、基準時刻補正演算のためスレーブノード８０２側で測定したデータパケット送信時刻を取得する（Ｓ３０４）。次に、データパケットから取得したデータパケット送信時刻と、マスターノード８０１側の基準タイマー６０６から取得したデータパケットの受信時刻とを用いて基準時刻補正時間を演算し、スレーブノード識別子とシーケンス番号に対応させて記録する（Ｓ３０５）。そして、データパケット内の時刻情報を基準時刻補正時間で補正し（Ｓ３０６）、補正後時刻を付したパケットを作成し、外部へ出力する（Ｓ３０７）。
【００６９】
次に、図１１を用いて、スレーブノード８０２の処理フローを簡潔に説明する。スレーブノード８０２はマスターノード８０１へデータパケットを送信する（Ｓ４０１）。この時データパケットには、タイマー７０７から取得した当該データパケット送信時刻が含まれている。その後、マスターノード８０１からタイムアウト時間内に応答パケットを受信したか判断し（Ｓ４０３）、受信しなかった場合には、Ｓ４０１へ戻り再送処理をする。
応答パケットを受信した場合には、次のデータパケットを作成しＳ４０１へ戻る。
【００７０】
以上説明した本実施形態によれば、スレーブノードは、スレーブノードのタイマーから取得したデータパケット送信時刻をマスターノードへ送信し、マスターノードは、マスターノードの基準時刻から取得したデータパケット受信時刻と、スレーブノードから受信したデータパケット送信時刻とを用いて基準時刻補正時間を演算し、補正した時刻を出力することで、スレーブノードにおける時刻補正用の演算処理や補正処理を無くし、スレーブノードの低消費電力化を図るとともに、マスターノードに従属する１つ以上のスレーブノードの時刻を基準となるマスターノードの時刻に高精度に時刻補正可能である。送信時刻を取得したデータパケットに該送信時刻情報を入れることで、マスターノードにおいて、データパケットを受信したときの情報のみで時刻補正処理が実施可能であるため、補正に用いる情報の取得した時間と、時刻補正を処理した時間が異なることにより生じるクロック誤差を小さくすることが出来る。また、演算に用いる補正処理情報が少ないため、処理量やメモリ量を少なくすることが出来る。
【００７１】
＜第３の実施形態＞
以下、本発明の第３の実施形態に関して、図面を参照しながら説明する。
【００７２】
図１２を用いて、本発明の第３の実施形態に係る時刻補正処理の手順を説明する。図１２は、本発明の第３の実施形態に係る時刻補正処理のシーケンス図である。図１２では、マスターノード１１０１とスレーブノード１１０２を１台ずつのみ記載しているが、１台のマスターノード１１０１に従属するスレーブノード１１０２は１台には限らず、２台以上の場合もある。また、マスターノード１１０１は、図１〜図４のマスターノードに該当する。また、スレーブノード１１０２は、図１〜図３のスレーブノード及びスマートメータに内蔵されたスレーブノードに該当する。図１２において、下方向の矢印は時刻軸を表し、マスターノード１１０１の時間軸とスレーブノード１１０２の時間軸間の矢印は、マスターノード１１０１とスレーブノード１１０２間の無線通信パケットの通信方向を表す。
【００７３】
マスターノード１１０３は、スレーブノード１１０２へ時刻補正処理に用いる時刻を取得するトリガーとなるパケットとしてトリガーパケット１１０３を送信する。このとき、マスターノード１１０１は、トリガーパケット１１０３の送信開始時刻Ｔ１１０１を記憶する。
【００７４】
スレーブノード１１０２は、トリガーパケット１１０３を受信したとき、トリガーパケット１１０３の受信開始時刻Ｔ１１０２を記憶する。次にスレーブノード１１０２は、マスターノード１１０１へデータを送信するときにデータに時刻情報を付加したデータパケット１１０４を送信する。ここで、時刻情報とは、トリガーパケット受信開始時刻Ｔ１１０２、データの取得時刻が含まれる。
【００７５】
マスターノード１１０１は、トリガーパケット１１０３を送信したときにトリガーパケット送信開始時刻Ｔ１１０１を把握し、データパケット１１０４を受信したときにスレーブノード１１０２におけるトリガーパケット受信開始時刻Ｔ１１０２を把握する。これら、Ｔ１１０１〜Ｔ１１０２を用いて、式４により基準時刻補正時間Ｔ１１０３を求める。
【００７６】
基準時刻補正時間Ｔ１１０３＝Ｔ１１０２−Ｔ１１０１  式４
式４は、マスターノード１１０１とスレーブノード１１０２の時刻差に伝搬遅延時間が加算された時間であり、伝搬遅延時間が必要となる時刻補正精度と比較して十分に小さい場合に基準時刻補正時間Ｔ１１０３とすることが出来る。
【００７７】
マスターノード１１０１において、基準時刻補正時間Ｔ１１０３を用いてデータの取得時間を補正する。
【００７８】
データの取得をトリガーパケット受信開始と同時にするなど、トリガーパケット１１０３の送信タイミングとデータの取得タイミングを関連付けることでトリガーパケット受信開始時刻Ｔ１１０２とデータの取得時刻を合わせても良い。トリガーパケット受信開始時刻Ｔ１１０２は、前回データを送信してからの経過時間とするなど、情報量を少なくしても良い。トリガーパケット受信開始時刻Ｔ１１０２は、開始時刻で説明しているが、完了時刻としても良いし、事前測定などによりマスターノード１１０１でずれ量が把握されていれば、途中の時刻としても良い。また、データパケット１１０４は、データと時刻情報で別パケットにしても良い。
【００７９】
第３の実施形態における、マスターノード１１０１およびスレーブノード１１０２の構成はそれぞれ図５、６に示すものと同様であるが、動作が異なる。
【００８０】
図１３を用いて、マスターノード１１０１の処理フローを簡潔に説明する。マスターノード１１０１は、スレーブノード１１０２へトリガーパケットを送信し（Ｓ６０１）、トリガーパケットの送信時刻を基準タイマー６０６から取得して記録する（Ｓ６０２）。次に、スレーブノードからデータパケットを受信するまで待機し（Ｓ６０３）、所定の時間内に受信しなかったら再度Ｓ６０１へ戻りスレーブノード１１０２へトリガーパケットを送信する。データパケットを受信した場合には、応答パケットをスレーブノードへ送信し（Ｓ６０４）、Ｓ６０１へ戻る。
【００８１】
一方、トリガーパケット送信後に受信したデータパケットには、スレーブノード１１０２側で測定したトリガーパケットの受信時刻が含まれており、基準時刻補正演算のためスレーブノード１１０２側で測定したトリガーパケット受信時刻を取得する（Ｓ６０５）。
次に、データパケットから取得したトリガーパケット受信時刻と、マスターノード１１０１側の基準タイマー６０６から取得したトリガーパケットの送信時刻とを用いて基準時刻補正時間を演算し、スレーブノード識別子とシーケンス番号に対応させて記録する（Ｓ６０６）。そして、データパケット内の時刻情報を基準時刻補正時間で補正し（Ｓ６０７）、補正後時刻を付したパケットを作成し、外部へ出力する（Ｓ６０８）。
【００８２】
次に、図１４を用いて、スレーブノード１１０２の処理フローを簡潔に説明する。スレーブノード１１０２は、マスターノードからトリガーパケットを受信したか判断し（Ｓ７０１）、受信した場合にはトリガーパケットの受信時刻をタイマー７０７から取得して記録する（Ｓ７０２）。次に、トリガーパケットの受信時刻を付してデータパケットを作成し（Ｓ７０３）、マスターノードへデータパケットを送信する（Ｓ７０４）。一方Ｓ７０１で、トリガーパケットを受信しなかった場合には、通常のデータパケットを作成し（Ｓ７０５）、マスターノードへデータパケットを送信する（Ｓ７０４）。その後、マスターノード１１０１からタイムアウト時間内に応答パケットを受信したか判断し（Ｓ７０６）、受信しなかった場合には、Ｓ７０４へ戻り再送処理をする。応答パケットを受信した場合には、Ｓ７０１へ戻る。
【００８３】
以上説明した本実施形態によれば、マスターノードは、トリガーパケットを送信し、送信時にマスターノードの基準時刻からトリガーパケットの送信時刻を取得し、スレーブノードは、トリガーパケット受信時にスレーブノードのタイマーから取得したトリガーパケット受信時刻をマスターノードへ送信し、さらにマスターノードは、取得したトリガーパケットの送信時刻と、受信したトリガーパケットの受信時刻とを用いて基準時刻補正時間を演算し、補正した時刻を出力することで、スレーブノードにおける時刻補正用の演算処理や補正処理を無くし、スレーブノードの低消費電力化を図るとともに、マスターノードに従属する１つ以上のスレーブノードの時刻を基準となるマスターノードの時刻に高精度に時刻補正可能である。トリガーパケットの送信時刻は、マスターノードに従属する全てのスレーブノードに対して共通であるため、マスターノードにおけるメモリ量を少なくすることが出来る。
【００８４】
＜第４の実施形態＞
以下、本発明の第４の実施形態に関して、図面を参照しながら説明する。
【００８５】
図１５を用いて、本発明の第４の実施形態に係るマスターノードの内部構成を説明する。図１５は、本発明の第４の実施形態に係るマスターノードの概略構成を示すブロック図である。図１５のマスターノード１４０１は、図５のマスターノード６０１と比較して、通信タイムスケジューリング部１４０２を追加した構成であり、通信タイムスケジューリング部１４０２の追加により無線通信処理部１４０３とスレーブノード別基準時刻補正処理部１４０４の処理内容が代わっている。他の構成要素は、図５と同様であるため、説明を省略する。
【００８６】
通信タイムスケジューリング部１４０２は、マスターノードとマスターノードに従属するスレーブノードの通信手順と時間をスケジューリングする。ここで、通信タイムスケジューリング部１４０２は、スレーブノード別基準時刻補正処理部１４０４からスレーブノード別の基準時刻補正時間を取得し、スレーブノード別の基準時刻補正時間を考慮した通信タイムスケジュールを生成し、通信タイムスケジューリングパケットに加工して無線通信処理部１４０３に出力する。
【００８７】
無線通信処理部１４０３は、図５の無線通信処理部６０７の処理内容に加えて、通信タイムスケジューリング部１４０２から通信タイムスケジューリングパケットを入力された場合、通信タイムスケジューリングパケットを無線信号に変調し、アンテナから無線通信電波を送信する。
【００８８】
スレーブノード別基準時刻補正処理部１４０４は、図５のスレーブノード別基準時刻補正処理部６０７の処理内容に加えて、基準時刻補正時間を通信タイムスケジューリング部１４０２に出力する。
【００８９】
図１６を用いて、本発明の第４の実施形態に係るスレーブノードの内部構成を説明する。図１６は、本発明の第４の実施形態に係るスレーブノードの概略構成を示すブロック図である。図１６のスレーブノード１５０１は、図６のスレーブノード７０１と比較して、送信タイミング制御部１５０２を追加した構成であり、送信タイミング制御部１５０２の追加により無線通信処理部１５０３とタイマーの処理内容が代わっている。他の構成要素は、図６と同様であるため、説明を省略する。
【００９０】
送信タイミング制御部１５０２は、無線通信処理部１５０３から通信タイムスケジューリングパケットを入力された場合、通信タイムスケジューリングパケットから通信する手順と時間を把握し、タイマー１５０４から入力された時刻が該スレーブノード１５０１がデータパケット７０３を送信する時刻になったときに送信トリガーを無線通信処理部１５０３に出力する。
【００９１】
無線通信処理部１５０３は、図６の無線通信処理部７０５の処理内容に加えて、通信タイムスケジューリングパケットを受信した場合、通信タイムスケジューリングパケットを送信タイミング制御部１５０２に出力し、送信タイミング制御部１５０２から送信トリガーを入力されたタイミングでデータパケット７０３を送信する。
【００９２】
タイマー１５０４は、図６のタイマー７０７の処理内容に加えて、スレーブノード１５０１で認識している時刻を送信タイミング制御部１５０２へ出力する。
【００９３】
以上説明した本実施形態によれば、マスターノードとスレーブノードの時刻差を考慮した通信タイムスケジュールで通信を実施することで、マスターノードとスレーブノード間で時刻同期されていない場合でも時刻分割多重通信が可能であり、時刻分割多重通信により、電波干渉の抑制による通信品質向上や、スリープモードの活用によるスレーブノードの低消費電力化、測定の同時性確保などの効果がある。
【００９４】
また、複数のスレーブノードが計測対象からデータを取得するタイミングを合わせるように通信タイムスケジュールを作成して、スレーブノードに実行させることもできる。これによって、複数のスレーブノード間で時刻同期がされていない場合でも、計測データの取得タイミングを一致させることができる。
【００９５】
＜第５の実施形態＞
以下、本発明の第５の実施形態に関して、図面を参照しながら説明する。
【００９６】
図１７を用いて、本発明の第５の実施形態に係るマスターノードの内部構成を説明する。図１７は、本発明の第５の実施形態に係るマスターノードの概略構成を示すブロック図である。図１７のマスターノード１６０１は、図５のマスターノード６０１と比較して、クロック誤差補正部１６０２を追加した構成であり、クロック誤差補正部１６０２の追加によりスレーブノード別基準時刻補正処理部１６０３の処理内容が代わっている。他の構成要素は、図５と同様であるため、説明を省略する。
【００９７】
クロック誤差補正部１６０２は、スレーブノード別基準時刻補正処理部１６０３からスレーブノード別の基準時刻補正時間のログを取得し、取得したログからクロック誤差が発生するタイミングを推定し、クロック誤差が発生するタイミングで基準時刻補正時間のクロック誤差を補正したクロック誤差補正後の基準時刻補正時間をスレーブノード別基準時刻補正処理部１６０３に出力する。
【００９８】
スレーブノード別基準時刻補正処理部１６０３は、スレーブノード別の基準時刻補正時間のログをクロック誤差補正部１６０２へ出力し、クロック誤差補正部１６０２から入力されたクロック誤差補正後の基準時刻補正時間を基準時刻補正時間に上書きする。
【００９９】
以上説明した本実施形態によれば、時刻の補正履歴からクロック誤差を推定し、クロック誤差が発生するタイミングでクロック誤差を補正することで、高精度に時刻補正可能である。
【０１００】
＜実施形態＞
本発明は、実施形態の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０１０１】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【０１０２】
さらに、実施の形態の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することにより、それをシステム又は装置のハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、使用時にそのシステム又は装置のコンピュータ（又はＣＰＵやＭＰＵ）が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしても良い。
【０１０３】
最後に、ここで述べたプロセス及び技術は本質的に如何なる特定の装置に関連することはなく、コンポーネントの如何なる相応しい組み合わせによってでも実装できることを理解する必要がある。つまり、本発明は、前記実施形態そのままに限定されるものではなく、実施段階では、その要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、前記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【０１０４】
更に、汎用目的の多様なタイプのデバイスがここで記述した教授に従って使用可能である。ここで述べた方法のステップを実行するのに、専用の装置を構築するのが有益であることが判るかもしれない。また、実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。本発明は、具体例に関連して記述したが、これらは、すべての観点に於いて限定の為ではなく説明の為である。本分野にスキルのある者には、本発明を実施するのに相応しいハードウェア、ソフトウェア、及びファームウエアの多数の組み合わせがあることが解るであろう。
【０１０５】
また、上述の実施形態において、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていても良い。
【０１０６】
加えて、本技術分野の通常の知識を有する者には、本発明のその他の実装がここに開示された本発明の明細書及び実施形態の考察から明らかになる。記述された実施形態の多様な態様及び／又はコンポーネントは、データを管理する機能を有するコンピュータ化ストレージシステムに於いて、単独又は如何なる組み合わせでも使用することが出来る。明細書と具体例は典型的なものに過ぎず、本発明の範囲と精神は後続する請求範囲で示される。
【符号の説明】
【０１０７】
１０１、３０１、４０１、６０１、１４０１、１６０１  マスターノード
１０２、３０２、７０１、１５０１  スレーブノード
３０３、４０３  中継ノード
３０５  集約装置
４０９  通信網
３０４  センサ／アクチュエータ
３０６  通信ネットワーク
３０７  監視装置
３０８  制御装置
４０２  スマートメータ
４１０  データセンター
４１１  営業所
６０４、７０５、１３０３、１４０３、１５０３  無線通信処理部
６０５、７０６  送受信時刻取得部
６０６  基準タイマー
６０７、１４０４、１６０３  スレーブノード別基準時刻補正処理部
６０８、７０４  外部インターフェース
７０７、１５０４  タイマー
１４０２  通信タイムスケジューリング部
１５０２  送信タイミング制御部
１６０２  クロック誤差補正部
【図１】
2014115794.tif 000003
【図２】
2014115794.tif 000004
【図３】
2014115794.tif 000005
【図４】
2014115794.tif 000006
【図５】
2014115794.tif 000007
【図６】
2014115794.tif 000008
【図７】
2014115794.tif 000009
【図８】
2014115794.tif 000010
【図９】
2014115794.tif 000011
【図１０】
2014115794.tif 000012
【図１１】
2014115794.tif 000013
【図１２】
2014115794.tif 000014
【図１３】
2014115794.tif 000015
【図１４】
2014115794.tif 000016
【図１５】
2014115794.tif 000017
【図１６】
2014115794.tif 000018
【図１７】
2014115794.tif 000019
【図１８】
2014115794.tif 000020