説明

メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法、システム、通信デバイス及びサーバデバイス

【課題】メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する。
【解決手段】1つの所与の通信デバイスを除く全ての通信デバイスが第1の分散コンセンサスベース同期を実行する。所与の通信デバイスは、少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される第1の補正情報を取得することと、メッシュ通信ネットワークを通じて第1の補正情報を送信することとを実行する。上記所与の通信デバイスを除く全ての通信デバイスは、送信された第1の補正情報を考慮に入れることによって、第1の分散コンセンサスベース同期の結果として得られたクロックタイミングを更新することを更に実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、包括的には、メッシュベース通信ネットワークの通信デバイス間の同期及びクロックドリフト補正に関する。
【背景技術】
【0002】
無線センサーネットワーク(WSN)は、自己構成型で、かなり安価で、またエネルギー制御、環境監視、産業オートメーション等の非常に広範囲の可能な用途に有用であるために、興味と人気を博してきた。
【0003】
スマートメーターネットワーク(SMN)は、そのような無線センサネットワークの応用例である。スマートメーターは、通常、監視目的及び課金目的で所与の期間間隔で電気エネルギーの消費を記録し、その情報をサーバに通信する電気メーターである。スマートメーターは、通常、中央システムからコマンドを受信することができる。スマートメーターは、他のデータ取り込み分野においても用いられ、例えば、天然ガス又は天然水の消費を測定するデバイスを意味することもできる。
【0004】
そのような通信ネットワークにおいては、通信デバイスは同期形式で動作することが望ましい。特に、グローバルクロック同期を設定することが望ましく、すなわち、全ての通信デバイスが共通の時間基準を参照する。これは、通信デバイス間の伝播時間期間及び通信デバイスの発振器が厳密に等しくないために、或る通信デバイスから別の通信デバイスへのクロックドリフトが現れることを意味する。このクロックドリフトは、補正又は補償をする必要がある。さらに、絶対クロックタイミングも、2つの通信デバイス間で可能な限り整合しなければならない。
【0005】
グローバルクロック同期は、無線センサネットワークにおいて、したがって、スマートメーターネットワークにおいては、これらのネットワークのメッシュ構造のために複雑になる。確かに、そのような通信ネットワークは、通常、アドホック形式で形成される。したがって、全ての通信デバイスは、互いに直接通信することもできなければ、マスタ通信デバイスと直接通信することもできず、マルチホップ通信が設定されなければならない。
【0006】
このような無線メッシュ通信ネットワークのマルチホップ特性を用いることによって、グローバルクロック同期を実行することが可能である。1つのマスタ通信デバイスがグローバルクロック基準として規定され、このマスタ通信デバイスをルートとしたスパニングツリーが構築される。各ノードは、規定されたスパニングツリーにおける自身の親ノードと自身を同期させ、自身の親ノードを用いて検出されるクロックドリフトを補償する。しかしながら、この手法は重大な欠点を有する。確かに、無線メッシュ通信ネットワークが多数の通信デバイスを有する場合、又は通信デバイス間の地理的距離が数百メートル程度、更には数キロメートル程度ある場合、同期情報の伝播時間はかなり大きい。これは、TDMA(時分割多重アクセス)スケジューリングにとっては、特に損害となりやすい。その理由は、TDMAスケジューリングでは、通信デバイス間のホップ数の増加及び/又は通信デバイス間の距離の増加とともに相互通信ギャップの長さを増加させることが必要となるからである。これは、通信干渉を回避するために、全体的な無線メッシュ通信ネットワーク有用帯域幅を大幅に低減する。
【0007】
この伝播時間問題を回避するために、分散コンセンサスベース同期(distributed consensus-based synchronization)手法を用いることができる。この手法は、ネットワークトポロジーの変化に対してもよりロバストである。この手法によれば、無線メッシュ通信ネットワークの全てのデバイスが基準クロックタイミングの確定に参加する。各通信デバイスは、事前に規定された時刻に同期信号を送信することによって、自身のクロックタイミングのビュー(view)を示す。クロックタイミングのビューは、無視することができない伝播時間期間及び発振器性能の相違の結果として生じるクロックタイミングの不整合に起因して通信デバイスごとに異なるので、送信は異なる時刻に効果的に実行される。各通信デバイスは、自身のクロックタイミングと他の通信デバイスによって示されたクロックタイミングの観察値との間の相対時間差を測定し、それに従って、自身のクロックタイミングを調整する。したがって、通信デバイスは、実質的に同一のクロックタイミングに向かって収束する。しかしながら、通信デバイスが収束に向かうクロックタイミングは、クロックドリフトを受ける場合があり、その結果、伝送周波数がシフトする場合がある。それに加えて、分散コンセンサスベース同期のそのようなドリフトは、通信デバイスの各クラスタが自身の分散コンセンサスベース同期を適用すると、全てのクラスタが同一の伝送リソース、すなわちTDMAタイプのアクセスにおける時間又はFDMA(周波数分割多重アクセス)タイプのアクセスにおける周波数を共有し、クラスタ間の干渉を生み出す場合がある。
【0008】
上述した不整合問題及びクロックドリフト問題は、長距離メッシュ光ネットワーク又は長距離メッシュ有線ネットワーク等の他の種類のメッシュ通信ネットワークにおいても発生する場合がある。
【発明の概要】
【発明が解決しようとする課題】
【0009】
メッシュ通信ネットワーク、より詳細にはスマートメーターのクラスタにおいて発生する上述した問題を克服することが望ましい。
【0010】
特に、メッシュ通信ネットワークにおけるクロックドリフトを補償すると共に精細なグローバル同期を提供することを可能にする解決策を提供することが望ましい。
【0011】
同一の伝送リソースを共有するクラスタを形成するメッシュ通信ネットワークにおけるクロックドリフトを補償すると共に精細なグローバル同期を提供することを可能にする解決策を提供することが更に望ましい。
【課題を解決するための手段】
【0012】
そのため、本発明は、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法に関する。本方法では、1つの所与の通信デバイスを除く全ての通信デバイスは、第1の分散コンセンサスベース同期を実行する。本方法では、更に、上記所与の通信デバイスは、少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される第1の補正情報を取得することと、メッシュ通信ネットワークを通じて第1の補正情報を送信することとを実行する。本方法では、更に、上記所与の通信デバイスを除く全ての通信デバイスは、送信された第1の補正情報を考慮に入れることによって、第1の分散コンセンサスベース同期の結果として得られたクロックタイミングを更新する。
【0013】
したがって、いわゆる「所与の通信デバイス」である1つを除く全ての通信デバイスは、分散コンセンサスベース同期を実行する。所与の通信デバイスは、分散コンセンサスベース同期には関与しないが、分散コンセンサスベース同期の経過を観察する。精細なグローバル同期を実行し、上記所与の通信デバイスによって観察される分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックとの間のクロックドリフトを補償するために、上記所与の通信デバイスは、いわゆる「第1の補正情報」である補正情報を取得し、この補正情報をメッシュ通信ネットワーク全体にわたってブロードキャストする。分散コンセンサスベース同期の経過を観察することによって、分散コンセンサスベース同期の結果として得られるクロックタイミングを補正情報に基づいて調整することが可能になり、これによって、全ての通信デバイスのクロックタイミングを整合させることが更に可能になる。これによって、基準クロックへのクロックタイミングの整合を確実に行うことが可能になる。
【0014】
特定の特徴によれば、上記所与の通信デバイスは、第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信された同期信号から導出された少なくとも1つのクロックタイミングから、第1の補正情報を取得する。
【0015】
したがって、クロックドリフトは補償され、通信デバイスのクロックタイミングは、メッシュ通信ネットワーク内で実行される分散コンセンサスベース同期にのみ基づいて整合される。
【0016】
特定の特徴によれば、上記所与の通信デバイスは、サーバデバイスから第1の補正情報を取得し、上記所与の通信デバイスは、分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信された同期信号から導出された1つのクロックタイミングから、ローカル補正情報を取得することと、ローカル補正情報をサーバデバイスに送信することとを実行する。本方法では、サーバデバイスは、それぞれがメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる複数の群に接続され、上記サーバデバイスは、上記各群のそれぞれ1つの通信デバイスからローカル補正情報を受信することと、受信されたローカル補正情報を組み合わせて上記第1の補正情報を取得することとを実行する。
【0017】
したがって、上記サーバデバイスを使用することによって、通信デバイスは、あたかも単一のクラスタに属しているように同期され、クラスタ間の脱同期はもはや存在しない。
【0018】
特定の特徴によれば、上記所与の通信デバイスは、少なくとも1つの他のメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる少なくとも1つの群と相互接続され、上記所与の通信デバイスは、第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信された同期信号から導出された1つのクロックタイミングと、基準クロックとから、ローカル補正情報を取得することと、ローカル補正情報を別の上記各群のそれぞれ1つの通信デバイスに送信することと、別の上記各群の上記各通信デバイスから別のローカル補正情報をそれぞれ受信することと、受信されたローカル補正情報を組み合わせて第1の補正情報を取得することとを実行する。
【0019】
したがって、各メッシュ通信ネットワーク内の1つの通信デバイスの協力によって、通信デバイスは、サーバノードを用いる必要なく、あたかも単一のクラスタに属しているように同期され、クラスタ間の脱同期はもはや存在しない。
【0020】
特定の特徴によれば、上記所与の通信デバイスは、それぞれが複数の他のメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる群と相互接続され、一組の通信デバイスが、第2の分散コンセンサスベース同期を実行し、当該一組は、上記他のメッシュ通信ネットワークごとに1つの通信デバイスによって形成される。本方法では、上記所与の通信デバイスは、少なくとも第2の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、第2の補正情報を取得することと、第2の補正情報を上記一組の通信デバイスに送信することとを実行する。本方法では、更に、上記一組の通信デバイスは、送信された第2の補正情報を考慮に入れることによって、第2の分散コンセンサスベース同期の結果として得られたクロックタイミングを更新することを更に実行する。
【0021】
したがって、2段階の分散コンセンサスベースのアルゴリズムが設定される。したがって、そのような方法によって、上記所与の通信デバイスによって規定された基準クロックタイミングに向けた収束が可能になる。これによって、例えば同期された基準クロックGPS(グローバルポジショニングシステム)シグナリングに基づく同期された基準クロック等の各メッシュ通信ネットワークに利用可能な同期された基準クロックを実装することが回避される。
【0022】
特定の特徴によれば、上記所与の通信デバイスは、第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信された同期信号から導出された少なくとも1つのクロックタイミングと、別の分散コンセンサスベース同期を実行したときに上記少なくとも1つの各通信デバイスから受信された他の同期信号から導出された少なくとも1つの他のクロックタイミングとから、第1の補正情報を取得する。
【0023】
したがって、所与の通信デバイスは、別のメッシュ通信ネットワークのデバイスと基準クロックタイミングを共有していなくても、上記別の分散コンセンサスベース同期の結果として得られるクロックタイミングを観察することができるので、全ての分散コンセンサスベース同期を同一の基準クロックタイミングに向けて収束させることができる。
【0024】
特定の特徴によれば、上記所与の通信デバイスは、第1の分散コンセンサスベース同期を実行したときに上記少なくとも1つの各通信デバイスから受信された同期信号から導出された少なくとも1つのクロックタイミングと、上記別の分散コンセンサスベース同期を実行したときに上記少なくとも1つの各通信デバイスから受信された他の同期信号から導出された少なくとも1つの他のクロックタイミングとから、基準クロックタイミングを調整する。
【0025】
したがって、基準クロックタイミングは、上記別の分散コンセンサスベース同期を実行する他のデバイスによって用いられるクロックタイミングに向けて収束する。
【0026】
また、本発明は、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償するシステムにも関する。本システムでは、1つの所与の通信デバイスを除く全ての上記通信デバイスは、第1の分散コンセンサスベース同期を実行する手段を備える。本システムでは、更に、上記所与の通信デバイスは、少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、第1の補正情報を取得する手段と、メッシュ通信ネットワークを通じて第1の補正情報を送信する手段とを備える。本システムでは、更に、上記所与の通信デバイスを除く全ての上記通信デバイスは、送信された第1の補正情報を考慮に入れることによって、第1の分散コンセンサスベース同期の結果として得られたクロックタイミングを更新する手段を更に備える。
【0027】
また、本発明は、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法にも関する。本方法では、所与の通信デバイスが、少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、第1の補正情報を取得することであって、第1の分散コンセンサスベース同期は、上記所与の通信デバイスを除く全ての上記通信デバイスによって実行される、取得することと、メッシュ通信ネットワークを通じて第1の補正情報を送信することであって、送信される第1の補正情報は、上記所与の通信デバイスを除く全ての上記通信デバイスに第1の分散コンセンサスベース同期の結果として得られたクロックタイミングを更新させることを意図する、送信することとを実行する。
【0028】
また、本発明は、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する通信デバイスにも関する。検討される通信デバイスは、少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、第1の補正情報を取得する手段であって、第1の分散コンセンサスベース同期は、特許請求されている通信デバイスを除く全ての上記通信デバイスによって実行される、取得する手段と、メッシュ通信ネットワークを通じて第1の補正情報を送信する手段であって、送信される第1の補正情報は、上記所与の通信デバイスを除く全ての上記通信デバイスに、第1の分散コンセンサスベース同期の結果として得られたクロックタイミングを更新させることを意図する、送信する手段とを備える。
【0029】
また、本発明は、同期を実行してクロックドリフトを補償する方法であって、当該方法は、それぞれがメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる複数の群に接続されたサーバデバイスによって実行される、方法にも関する。本方法では、上記サーバデバイスは、上記各群のそれぞれ1つの通信デバイスからローカル補正情報を受信することであって、当該ローカル補正情報は、第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信される同期信号から導出される1つのクロックタイミングと、基準クロックとから取得される、受信することと、受信されたローカル補正情報を組み合わせて第1の補正情報を取得することと、第1の補正情報を上記各群の上記それぞれ1つの通信デバイスに送信することであって、送信される第1の補正情報は、上記各群の上記それぞれ1つの通信デバイスに、第1の分散コンセンサスベース同期の結果として得られたクロックタイミングの更新を可能にすることを意図する、送信することとを実行する。
【0030】
また、本発明は、同期を実行してクロックドリフトを補償するサーバデバイスであって、当該サーバデバイスは、それぞれがメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる複数の群に接続されることを意図する、サーバデバイスにも関する。本サーバデバイスは、上記各群のそれぞれ1つの通信デバイスからローカル補正情報を受信する手段であって、当該ローカル補正情報は、第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信される同期信号から導出される1つのクロックタイミングと、基準クロックとから取得される、受信する手段と、受信されたローカル補正情報を組み合わせて第1の補正情報を取得する、組み合わせる手段と、第1の補正情報を上記各群の上記それぞれ1つの通信デバイスに送信する手段であって、送信される第1の補正情報は、上記各群の上記それぞれ1つの通信デバイスに、第1の分散コンセンサスベース同期の結果として得られたクロックタイミングの更新を可能にすることを意図する、送信する手段とを備える。
【0031】
また、本発明は、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法にも関する。本方法では、検討される通信デバイスが、1つの所与の通信デバイスを除く全ての通信デバイスと共同して第1の分散コンセンサスベース同期を実行し、上記所与の通信デバイスから第1の補正情報を受信することであって、当該第1の補正情報は、少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、受信することと、受信された第1の補正情報を考慮に入れることによって、第1の分散コンセンサスベース同期の結果として得られたクロックタイミングを更新することとを実行する。
【0032】
また、本発明は、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する通信デバイスにも関する。検討される通信デバイスは、1つの所与の通信デバイスを除く全ての上記通信デバイスと共同して第1の分散コンセンサスベース同期を実行する手段と、上記所与の通信デバイスから第1の補正情報を受信する手段であって、当該第1の補正情報は、少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、受信する手段と、受信された第1の補正情報を考慮に入れることによって、第1の分散コンセンサスベース同期の結果として得られたクロックタイミングを更新する手段とを備える。
【0033】
また、本発明は、少なくとも1つの実施の形態において、通信ネットワークからダウンロード可能かつ/又はコンピュータ読出可能な媒体に記憶可能であり、プロセッサによって実行することができるコンピュータプログラムにも関する。このコンピュータプログラムは、当該プログラムがプロセッサによって実行されると、上述した方法を実施する命令を含む。
【0034】
また、本発明は、情報格納手段であって、格納された情報がコンピュータによって読み出されてプロセッサによって実行されると、上述した方法を実施するプロセッサが実行することができる一組の命令を含むコンピュータプログラムを格納する情報格納手段にも関する。
【0035】
デバイス、システム、及びコンピュータプログラムに関係する特徴及び利点は、対応する上述した方法に関連して既述したものと同じであるので、ここでは繰り返さない。
【0036】
本発明の特徴は、一実施形態例の以下の説明を読むことによってより明確になるであろう。当該説明は、添付図面に関連して作成されたものである。
【図面の簡単な説明】
【0037】
【図1】本発明を実施することができる通信ネットワークの第1のアーキテクチャを概略的に表す図である。
【図2】本発明を実施することができる通信ネットワークの第2のアーキテクチャを概略的に表す図である。
【図3a】図1又は図2の通信ネットワークにおけるコンセントレータデバイスのアーキテクチャを概略的に表す図である。
【図3b】図2の通信ネットワークにおけるサーバデバイスのアーキテクチャを概略的に表す図である。
【図4】図1又は図2の通信ネットワークにおけるスマートメーターのアーキテクチャを概略的に表す図である。
【図5】図1又は図2の通信ネットワークにおけるコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行するアルゴリズムを概略的に表す図である。
【図6】図1又は図2の通信ネットワークにおけるスマートメーターによって実行される、同期及びクロックドリフト補償を実行するアルゴリズムを概略的に表す図である。
【図7】図2の通信ネットワークにおけるコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行するアルゴリズムを概略的に表す図である。
【図8】図2の通信ネットワークにおけるサーバデバイスによって実行される、同期及びクロックドリフト補償を実行するアルゴリズムを概略的に表す図である。
【図9】図2の通信ネットワークにおけるコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行する別のアルゴリズムを概略的に表す図である。
【図10】図2の通信ネットワークにおけるコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行する更に別のアルゴリズムを概略的に表す図である。
【図11】図2の通信ネットワークにおけるコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行する更に別のアルゴリズムを概略的に表す図である。
【図12】図2の通信ネットワークにおけるスマートメーターによって実行される、同期及びクロックドリフト補償を実行する別のアルゴリズムを概略的に表す図である。
【図13】図2の通信ネットワークにおけるコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行する更に別のアルゴリズムを概略的に表す図である。
【発明を実施するための形態】
【0038】
以下の説明は、スマートメーターの無線メッシュ通信ネットワークのデプロイを対象として本発明を詳述するが、以下で詳述する原理は、他の種類の無線メッシュ通信ネットワークのデプロイにおいても同様に適用することができる。例えば、以下で詳述する原理は、フェムトセルのデプロイ、すなわち、屋内、特に、アクセスが通常ならば制限されるか又は利用可能でない箇所にサービスプロバイダーがサービスカバレッジを拡大することを可能にする、通常、ホームオフィス又はスモールオフィスでの使用に設計されたセルラー基地局のデプロイにおいても同様に適用することができる。その場合、セルラー基地局は、同期を実行するために互いに無線通信するように適合される。
【0039】
その上、以下の説明は、無線メッシュ通信ネットワークのデプロイを対象として本発明を詳述するが、以下で詳述する原理は、他の種類のメッシュ通信ネットワークのデプロイにおいても同様に適用することができる。例えば、以下で詳述する原理は、光メッシュ通信ネットワーク又は有線メッシュ通信ネットワークのデプロイにおいても同様に適用することができる。
【0040】
図1は、本発明を実施することができる通信ネットワーク100の第1のアーキテクチャを概略的に表している。
【0041】
通信ネットワーク100は、コンセントレータデバイス110と、1組のスマートメーターとを備えるメッシュ通信ネットワークである。なお、スマートメーターは、スマート計測デバイスとも呼ばれる。図1には、6つのスマートメーター120i(i=a,b,...,g)が示されている。種々の複数のスマートメーターが通信ネットワーク100に存在することができる。通信ネットワーク100は、クラスタとも呼ばれる。
【0042】
通信ネットワーク100のデバイスは、好ましくは半二重無線通信を用いる。しかしながら、通信ネットワーク100のデバイスは、全二重無線通信を用いることもできる。
【0043】
そのような無線メッシュ通信ネットワークは、アドホック形式でのスマートメーターのデプロイに特に適合している。
【0044】
電力消費と放射を制限するために、通信ネットワーク100内のデバイスは、通信ネットワーク100内の他のどのデバイスとも直接通信することができるわけではない。通信ネットワーク100内の各デバイスは、通常、通信ネットワーク100内の他の少数のデバイスとしか直接通信することができない。これは、これら他の数個のデバイスについては、同期信号、メッセージ、及びより一般的にはデータを交換するための送信信号強度が十分に高く、例えば所定のしきい値を上回っていると考えられることを意味する。
【0045】
したがって、メッシュ通信ネットワーク100の各デバイスは、メッシュ通信ネットワーク100の少なくとも1つの他のデバイスと直接通信することができる。
【0046】
互いに直接通信するメッシュ通信ネットワーク100の2つのデバイスは、近隣デバイスである。より一般的には、近隣デバイスは、以下で詳述するように、分散コンセンサスベース同期の範囲で同期信号を交換することができるデバイスである。
【0047】
メッシュ通信ネットワーク100の任意の2つのデバイスは、直接的又は間接的に、すなわちメッシュ通信ネットワーク100の少なくとも1つの他のデバイスを介して互いに通信することができる。より詳細には、各スマートメーター120i(i=a,b,...,g)は、直接的又は間接的に、コンセントレータデバイス110と通信することができる。
【0048】
図1において、可能な直接通信は、関係しているデバイス間のそれぞれの直線によって例示的に表されている。例えば、コンセントレータデバイス110は、スマートメーター120a、120bという2つの近隣デバイスを有し、スマートメーター120aは、スマートメーター120cとコンセントレータデバイス110という2つの近隣デバイスを有し、スマートメーター120bは、スマートメーター120c、120d、及びコンセントレータデバイス110という3つの近隣デバイスを有する。図1は、メッシュ通信ネットワーク100内の他の可能な直接通信も例示的に示しているが、それらの直接通信についてはこれ以上詳述しない。
【0049】
メッシュ通信ネットワーク100内の通信は、好ましくはTDMAを用いて実行される。メッシュ通信ネットワーク100内の通信は、FDMA又はCDMA(符号分割多重アクセス)を用いて実行することもできる。
【0050】
無線メッシュ通信ネットワーク100内の通信は、送信サイクルに従ってスケジューリングされる。無線メッシュ通信ネットワーク100の全てのデバイスは、理想的には共通の基準クロックタイミングを共有する。しかしながら、通信デバイス間の無視することができない伝播時間期間に起因して、また、通信デバイスは完全には同一でない内部発振器を有するので、各通信デバイスは、自身のクロックタイミング、すなわち送信サイクルを規定する自身のクロックタイミングのビューを有する。
【0051】
上記に加えて、分散コンセンサスベースのアルゴリズムが所与のクラスタにおいて用いられたとしても、周囲の通信デバイスとの干渉が発生する場合がある。図5及び図6に関連する後の説明は、特にこの問題に対処することを目標としている。
【0052】
図2は、本発明を実施することができる通信ネットワーク200の第2のアーキテクチャを概略的に表している。
【0053】
通信ネットワーク200は、サーバデバイス230と1組のコンセントレータデバイスを備えている。図2には、3つのコンセントレータデバイス110m(m=a,b又はc)が示されている。種々の複数のコンセントレータデバイスが、通信ネットワーク200に存在することができる。
【0054】
各コンセントレータデバイス110mは、サーバデバイス230と通信する。コンセントレータデバイス110mとサーバデバイス230との間の通信は、RFC791の仕様によって詳述されているように、好ましくはインターネットプロトコル(IP)を用いて実行され、有線又は無線のいずれかとすることができる。コンセントレータデバイス110mは、好ましくは同様にインターネットプロトコルを用いて互いに通信することができる。
【0055】
各コンセントレータデバイス110mは、図1に示すメッシュ無線通信ネットワーク100に対応するクラスタ100m(m=a,b又はc)の一部である。コンセントレータデバイス110mは、サーバデバイス230と、自身が属するクラスタ100mのスマートメーターとの間のゲートウェイとして機能する。
【0056】
図2に示すアーキテクチャでは、各スマートメーターは、唯一つのクラスタにのみ属し、単一のコンセントレータデバイス110mを介してサーバデバイス230と通信する。
【0057】
図2に示すアーキテクチャでは、メッシュタイプであるクラスタ100mは、スタートポロジーネットワークを用いて、各コンセントレータデバイス110mを介してサーバデバイス230に接続されている。
【0058】
サーバデバイス230は、コンセントレータデバイス110mを介してスマートメーターによって提供されたデータを収集し、例えば統計をとるために、及び/又は監視のために、及び/又は課金のために、収集されたデータを処理する。サーバデバイス230は、コンセントレータデバイス110mを介して任意のスマートメーターにコマンドを送信することもできる。そのようなコマンドは、例えば、スマートメーターに報告を要求するものや、スマートメーターによって監視されているシステムのシャットダウンを命令するものや、スマートメーターにソフトウェア更新を提供するもの等である。
【0059】
図2に示すアーキテクチャでは、所与のクラスタ内の少なくとも1つのスマートメーターは、別のクラスタ内の少なくとも1つの他のスマートメーターから同期信号を受信できることに留意されたい。この場合、着目しているスマートメーターは、同じクラスタに属していない場合であっても、近隣デバイスとみなされる。したがって、スマートメーターは、自身が分散コンセンサスベース同期を実施する際に、異なるクラスタに属するスマートメーターから受信された同期信号を、あたかも同じクラスタに属するスマートメーターがそれらの同期信号を受信したように、考慮に入れることができる。
【0060】
図1に関連して既に述べたように、通信デバイス間の伝播時間期間が無視することができないことと、通信デバイスが完全に同一ではない内部発振器を有することとを考慮すると、各通信デバイスは、自身のクロックタイミング、すなわち送信サイクルを規定する自身のクロックタイミングのビューを有する。
【0061】
上記に加えて、分散コンセンサスベースのアルゴリズムが所与のクラスタにおいて用いられたとしても、クラスタ間のクロックドリフトに起因して干渉が発生する場合がある。図7〜図13に関連する後の説明は、この問題に対処することを特に目標としている。
【0062】
図3aは、コンセントレータデバイス110のアーキテクチャを概略的に表している。コンセントレータデバイス110は、任意のコンセントレータデバイス110m(図2においては、m=a,b又はc)に対応することができる。
【0063】
図示したアーキテクチャによれば、コンセントレータデバイス110は、通信バス306によって相互接続された次の構成要素を備えている。すなわち、プロセッサ、マイクロプロセッサ、マイクロコントローラ、又はCPU(中央処理装置)300;RAM(ランダムアクセスメモリ)301;ROM(読出し専用メモリ)302;SD(セキュアデジィタル)カードリーダ303、又はストレージ手段に格納された情報を読み出すように適合された他の任意のデバイス;第1の通信インターフェース304及び第2の通信インターフェース305を備えている。
【0064】
第1の通信インターフェース304は、コンセントレータデバイス110がメッシュ通信ネットワーク100内の近隣スマートメーターと無線通信することを可能にする。
【0065】
第2の通信インターフェース305は、コンセントレータデバイス110がサーバ230と通信することを可能にする。
【0066】
CPU300は、ROM302から又はSDカード等の外部メモリからRAM301内にロードされた命令を実行することができる。コンセントレータデバイス110に電源が投入された後、CPU300は、RAM301から命令を読み出し、これらの命令を実行することができる。命令は、図5、図7、図9、図10、図11、及び図13に関連して後に説明するアルゴリズムのステップのうちの幾つか又は全てをCPU300に実行させる1つのコンピュータプログラムを形成する。
【0067】
図5、図7、図9、図10、図11、及び図13に関連して後に説明するアルゴリズムのありとあらゆるステップは、ソフトウェアとして、PC(パーソナルコンピュータ)、DSP(ディジタル信号プロセッサ)、又はマイクロコントローラ等のプログラマブル計算機による1組の命令又はプログラムの実行によって実施することもできるし、それ以外に、ハードウェアとして、機械によって、又はFPGA(フィールドプログラマブルゲートアレイ)又はASIC(特定用途向け集積回路)等の専用構成要素によって実施することもできる。
【0068】
図3bは、サーバデバイス230のアーキテクチャを概略的に表している。
【0069】
図示したアーキテクチャによれば、サーバデバイス230は、通信バス316によって相互接続された次の構成要素を備えている。すなわち、プロセッサ、マイクロプロセッサ、マイクロコントローラ又はCPU310;RAM311;ROM312;HDD(ハードディスクドライブ)313、又はストレージ手段に格納された情報を読み出すように適合された他の任意のデバイス;通信インターフェース314を備える。
【0070】
通信インターフェース314は、サーバデバイス230がコンセントレータデバイス110a、110b、110cと通信することを可能にする。
【0071】
CPU310は、ROM312から又はHDD313等の外部メモリからRAM311内にロードされた命令を実行することができる。サーバデバイス230に電源が投入された後、CPU310は、RAM311から命令を読み出し、これらの命令を実行することができる。命令は、図8に関連して後に説明するアルゴリズムのステップのうちの幾つか又は全てをCPU310に実行させる1つのコンピュータプログラムを形成する。
【0072】
図8に関連して後に説明するアルゴリズムのありとあらゆるステップは、ソフトウェアとして、PC、DSP、又はマイクロコントローラ等のプログラマブル計算機による1組の命令又はプログラムの実行によって実施することもできるし、それ以外に、ハードウェアとして、機械によって、又はFPGA又はASIC等の専用構成要素によって実施することもできる。
【0073】
図4は、スマートメーター120のアーキテクチャを概略的に表している。スマートメーター120は、任意のスマートメーター120i(図1においては、i=a、b,...,g)に対応する。
【0074】
図示したアーキテクチャによれば、スマートメーター120は、通信バス406によって相互接続された次の構成要素を備えている。すなわち、プロセッサ、マイクロプロセッサ、マイクロコントローラ、又はCPU400;RAM401;ROM402;SDカードリーダ403、又はストレージ手段に格納された情報を読み出すように適合された他の任意のデバイス;通信インターフェース404;及び計測インターフェース405を備えている。
【0075】
第1の通信インターフェース404は、スマートメーター120が無線メッシュ通信ネットワーク100又は通信ネットワーク200内の任意の近隣デバイスと無線通信することを可能にする。上記近隣デバイスは、別のスマートメーター又はコンセントレータデバイスのいずれかである。
【0076】
計測インターフェース405は、スマートメーター120が、電気又は水の消費データ等の監視、測定、及びデータの取り込みを行えるようにする。計測インターフェース405は、スマートメーター120が、監視されているシステムにコマンドを送信できるようにする。
【0077】
CPU400は、ROM402から又はSDカード等の外部メモリからRAM401内にロードされた命令を実行することができる。スマートメーターデバイス120に電源が投入された後、CPU400は、RAM401から命令を読み出し、これらの命令を実行することができる。命令は、図6及び図12に関連して後に説明するアルゴリズムのステップのうちの幾つか又は全てをCPU400に実行させる1つのコンピュータプログラムを形成する。
【0078】
図6及び図12に関連して後に説明するアルゴリズムのありとあらゆるステップは、ソフトウェアとして、PC、DSP、又はマイクロコントローラ等のプログラマブル計算機による1組の命令又はプログラムの実行によって実施することもできるし、それ以外に、ハードウェアとして、機械によって、又はFPGA又はASIC等の専用構成要素によって実施することもできる。
【0079】
図5は、コンセントレータデバイス110によって実行される、同期及びクロックドリフト補償を実行するアルゴリズムを概略的に表している。
【0080】
図5のアルゴリズムは、好ましくは、予め規定された時間期間に基づいて繰り返される。
【0081】
ステップS501において、コンセントレータデバイス110は、自身の近隣デバイス、すなわちスマートメーター120a及び120bから同期信号を受信する。これらの同期信号は、図6に関連して後に詳述するように、スマートメーター120i(i=a,b,...,g)によって実行される分散コンセンサスベース同期中に送信される。これらの同期信号によって、コンセントレータデバイス110は、スマートメーター120iによって実行される分散コンセンサスベース同期の結果として得られるクロックタイミングを確定することが可能になる。コンセントレータデバイス110によって行われる観察は、スマートメーター120a、120bとコンセントレータデバイス110との間の伝播遅延を受けることに注意されたい。
【0082】
換言すれば、コンセントレータデバイス110は、以下のように表されるタイミング不整合を測定することによって、スマートメーター120iによって実行される分散コンセンサスベース同期の経過を観察する。
【数1】

【0083】
ここで、コンセントレータデバイス110は、インデックス0を有し、nは、アルゴリズムの着目中の繰り返しのインデックスである。
j,n-1は、アルゴリズムのn−1回目の繰り返しにおけるj番目の通信デバイスのクロックタイミング、すなわち、スマートメーター120a、120bの中の着目中の1つのスマートメーターにおけるコンセントレータデバイス110から見たクロックタイミングである。
εjは、j番目の通信デバイスのクロックドリフトである。
τ0,jは、コンセントレータデバイス110とj番目の通信デバイスとの間の伝播遅延である。
【0084】
次のステップS502において、コンセントレータデバイス110は、スマートメーター120iによって実行された分散コンセンサスベース同期の結果として得られたクロックタイミングと基準クロックタイミングとの間の相対クロックタイミング差を求める。
【0085】
基準クロックタイミングは、好ましくはコンセントレータデバイス110の内部クロックから得られるが、外部クロックから得ることもできる。
【0086】
次のステップS503において、コンセントレータデバイス110は、分散コンセンサスベース同期の結果として生じたクロックドリフトを補償して同期を確実にするために、スマートメーターによって用いられることになる補正情報を取得する。補正情報は、少なくとも、分散コンセンサスベース同期の結果として得られたクロックタイミングと基準クロックタイミングとの間の差から導出される。より詳細には、図1の無線メッシュ通信ネットワーク100の範囲内では、コンセントレータデバイス110は、求められたクロックタイミング差から、分散コンセンサスベース同期の結果として生じたクロックドリフトを補償するために、スマートメーターによって用いられることになる補正情報を求める。さらに、図2の無線メッシュ通信ネットワーク200の範囲においては、図7〜図13に関連して後に他の実施形態において詳述するように、コンセントレータデバイスは、クラスタ100a、100b、100cのそれぞれの分散コンセンサスベース同期から得られたクロックタイミングと基準クロックタイミングとの間の差から導出された補正情報を取得する。
【0087】
クロックタイミング差を近隣スマートメーターと組み合わせたものは、以下のように表すことができる。
【数2】

ここで、
Tは、アルゴリズムの2つの繰り返しの間の基準時間期間であり、
Ωn(0)は、コンセントレータデバイス110がアルゴリズムのn回目の繰り返しにおいて同期信号を受信した近隣デバイスのインデックスの集合、すなわちスマートメーター120a及び/又はスマートメーター120bのインデックスの集合であり、
{∀j∈Ωn(0),tj,n-1+εj+τ0,j−t0,n-1}は、アルゴリズムのn回目の繰り返しにおいてコンセントレータデバイス110によって求められた相対クロックタイミング差の集合であり、
f(・)は、
【数3】

として定義することができるコンビネーション関数である。
【0088】
コンセントレータデバイス110が基準クロックタイミングを提供するので、
【数4】

であることに注意されたい。
【0089】
換言すれば、コンセントレータデバイス110は、スマートメーター120iによって実行される分散コンセンサスベース同期の観察の結果として得られるクロックタイミング
【数5】

を求めるが、自身のクロックタイミングt0,nが依然として基準クロックタイミングのままであるので、自身のクロックタイミングt0,nを更新しない。
【0090】
次に、補正情報に対応する補正値ξnが、
【数6】

によって求められる。
【0091】
換言すれば、補正情報は、補正値ξnであるか、又は補正値ξnを表す情報であるか、又はアルゴリズムの幾つかの繰り返しにわたって求められた補正値ξnのフィルタリングされた値であるか、又はそのようなフィルタリングされた値を表す情報である。以下では、無線メッシュ通信ネットワーク100において伝播される値に対応する補正値をξで示すことにする。
【0092】
次のステップS504において、コンセントレータデバイス110は、無線メッシュ通信ネットワーク100全体にわたって補正情報を送信する。換言すれば、図1に示す無線メッシュ通信ネットワーク100を考えた場合には、コンセントレータデバイス110は、自身の近隣デバイス、すなわちスマートメーター120a及び120bに補正情報を送信する。次に、スマートメーター120a及び120bは、コンセントレータデバイス110を除くそれぞれの近隣デバイス、すなわちスマートメーター120c及び120dに補正情報を中継し、以下同様に中継が行われる。補正情報の中継は、図6に関連して後に更に詳述する。
【0093】
図6は、スマートメーター120によって実行される、同期及びクロックドリフト補償を実行するアルゴリズムを概略的に表している。図6に示すアルゴリズムは、図5に示すアルゴリズムと共に実行される。また、図6に示すアルゴリズムは、図7及び図8に示すアルゴリズムと共に実行することもできるし、図9に示すアルゴリズムと共に実行することもできる。
【0094】
図6のアルゴリズムは、好ましくは、予め規定された時間期間に基づいて繰り返される。
【0095】
ステップS600において、スマートメーター120は、無線メッシュ通信ネットワーク100の他のスマートメーターと共に、分散コンセンサスベース同期を実行する。スマートメーターは、同期信号を送信することによって、自身のクロックタイミングのビューを示す。同期信号は、予め規定された時刻に送信されると予想される。クロックタイミングのビューは通信デバイスごとに異なるので、同期信号は異なる時刻に送信され、通信デバイス間の伝播時間期間に起因して、同期信号は更に異なる時刻に受信される。分散コンセンサスベース同期の目標は、スマートメーターが同一のクロックタイミングのビューに向けて収束することである。そのために、各スマートメーターは、自身のクロックタイミングのビューを、自身の近隣デバイスによって示されるクロックタイミングの観察値と組み合わせる。このようにスマートメーターの自身のクロックタイミングを他のもののクロックタイミングに従って調整することによって、より良好な同期が達成される。これによって、例えば、通信間ギャップを低減することが可能になり、したがって、ネットワークスループットを増加させることが可能になるり、又は例えば、TDMA通信における干渉の制限が可能になり、又は低レイテンシマルチホップ中継プロトコルを用いることによって無線メッシュ通信ネットワーク100におけるレイテンシ低減が可能になる。
【0096】
ステップS600は、図6においてステップS601〜S606によって概略的に表されているアルゴリズムに詳述される。
【0097】
ステップS601において、通信デバイスが半二重通信を用いている場合には、スマートメーター120は送信モード又は受信モードのいずれかを選択し、そうではなく、通信デバイスが全二重通信を用いている場合には、信号の送信及び信号の受信は並列に実行される。
【0098】
送信モードと受信モードとの間の選択は、ランダムに実行することができる。一変形形態では、送信モードと受信モードとの間の選択は、所定のシーケンスに従って行うこともできる。
【0099】
次のステップS602において、送信モードが選択されているのか又は受信モードが選択されているのかが調べられる。送信モードが選択されている場合、ステップS603が実行され、そうでない場合、ステップS604が実行される。
【0100】
ステップS603において、スマートメーター120は、無線メッシュ通信ネットワーク100内の自身の近隣デバイスに同期信号を送信する。同期信号は、自己相関特性及び相互相関特性を有する予め規定された形状及び/又は内容の信号である。
【0101】
送信された同期信号は、スマートメーター120のクロックタイミングと整合される。換言すれば、スマートメーター120は、基準クロックタイミングに従って規定される所与の時刻に同期信号を送信すると予想される。スマートメーター120は、分散コンセンサスベース同期の結果によって駆動され、自身の発振器によってはそれほど大きく駆動されないので、むしろ所与の時刻ではあるが自身のクロックタイミングに従って規定される時刻に同期信号を送信する。それに加えて、通信デバイス間の伝播時間期間は、基準クロックタイミングに従って規定される所与の時刻と、同期信号が有効に受信される時刻との間の差を増加させる。したがって、同期期間は、通信デバイスが同期信号を送信することを可能にするように規定され、この同期期間は、分散コンセンサスベース同期の結果として生じる不整合、伝播時間期間、及びスマートメーターの発振器の性能の許容誤差に起因して起こり得る、クロックドリフトを考慮に入れた所与の時刻周辺のマージンに対応する。
【0102】
ステップS603が実行されると、アルゴリズムは終了する。
【0103】
ステップS604において、スマートメーター120は、自身の近隣デバイスのうちの少なくとも1つから同期信号を受信する。これらの同期信号は、上記近隣デバイスがステップS603を実行したときに当該該近隣デバイスによって送信された信号である。
【0104】
次のステップS605において、スマートメーター120は、自身の近隣デバイスから受信された同期信号の結果として得られるクロックタイミングと、自身のクロックタイミングとの間の相対クロックタイミング差を求める。この相対クロックタイミング差は、以下のように表される。
【数7】

ここで、
kは、着目しているスマートメーターのインデックスであり、
k,n-1は、アルゴリズムのn−1回目の繰り返しにおける着目しているスマートメーターのクロックタイミングであり、
εkは、着目しているスマートメーターのクロックドリフトであり、
τk,jは、着目しているスマートメーターとj番目のスマートメーターとの間の伝播遅延である。
【0105】
次のステップS606において、スマートメーター120は、ステップS605において求められた相対クロックタイミング差に基づいて、自身のクロックタイミングを更新する。換言すれば、スマートメーター120は、自身のクロックタイミングと自身の近隣デバイスから観察されるクロックタイミングとの間のコンセンサスに対応する値と一致するように、自身のクロックタイミングを調整する。
【0106】
次のステップS607において、スマートメーター120は、ステップS504においてコンセントレータデバイス110によって送信された補正情報を受信する。
【0107】
次のステップS608において、スマートメーター120は、受信された補正情報に基づいて、自身のクロックタイミングを更新する。換言すれば、スマートメーター120は、コンセントレータデバイス110から受信された補正情報に対応する補正値を用いて、自身のクロックタイミングを調整する。
【0108】
例えば、スマートメーターの自身のクロックタイミングの更新は、次のように実行することができる。
【数8】

ここで、
kは、着目しているスマートメーターのインデックスであり、
ξは、コンセントレータデバイス110から受信される補正情報に対応する補正値である。
【0109】
次のステップS609において、スマートメーター120は、受信された補正情報を、無線メッシュ通信ネットワーク100内の自身の近隣スマートメーターに中継する。
【0110】
補正情報が中継されるメッセージ又はパケット又はフレームフィールドは、好ましくは補正情報識別子を含む。これによって、同じ補正情報が無線メッシュ通信ネットワーク内でループするのが回避される。通信デバイスは、既に受信された識別子を有する補正情報を受信した場合、その補正情報を廃棄して中継しない。
【0111】
ステップS607〜S609は、ステップS601〜S606と並列に実行することができることに留意されたい。
【0112】
補正値は、スマートメーターの自身のクロックタイミングに対して徐々に適用することができることに留意されたい。これは、サイクル長の変動を平滑化するために、補正を幾つかのクロックサイクルにわたって分散させることができることを意味する。
【0113】
図5及び図6のアルゴリズムから、コンセントレータデバイス110を除く無線メッシュ通信ネットワーク100の全ての通信デバイスが、同期信号を送信することによって分散コンセンサスベース同期に参加し、それに従ってそれらの通信デバイスの各内部クロックタイミングを更新することを理解することができる。コンセントレータデバイス110は、分散コンセンサスベース同期に参加せず、同期信号を送信せず、自身の内部クロックタイミングを更新しない。しかしながら、コンセントレータデバイス110は、分散コンセンサスベース同期の結果得られるクロックタイミングにおける基準クロックと比較したあらゆるドリフトを回避するために、スマートメーター120i(i=a,b,...,g)によって実行される分散コンセンサスベース同期の進展を観察し、補正情報をブロードキャストする。
【0114】
仮に、コンセントレータデバイス110が、自身の順番において同期信号を送信することによって分散コンセンサスベース同期に参加すると、通信デバイスは、実質的に同一のクロックタイミングに向けて収束するが、そのクロックタイミングはクロックドリフトを受けることになり、その結果、送信周波数がシフトする場合がある。コンセントレータデバイス110は、分散コンセンサスベース同期の結果として生じるクロックタイミングのあらゆるドリフトを回避するために、スマートメーター120i(i=a,b,...,g)によって実行される分散コンセンサスベース同期の進展を観察し、補正情報をブロードキャストすることによって、そのような送信周波数のシフトを回避することを可能にし、デバイスクロックタイミングの整合を確実にすることを可能にし、したがって、通信ネットワークの全体的な性能を向上させることを可能にする。
【0115】
図7は、通信ネットワーク200のコンセントレータデバイス110a、110b、110cによって実行される、同期及びクロックドリフト補償を実行するアルゴリズムを概略的に表している。このアルゴリズムがコンセントレータデバイス110aによって実行される場合を考えることにする。
【0116】
図7のアルゴリズムは、好ましくは、予め規定された時間期間に基づいて繰り返される。
【0117】
ステップS701において、クラスタ100aが図1の無線メッシュ通信ネットワーク100に対応すると考えた場合、コンセントレータデバイス110aは、自身の近隣デバイス、すなわちスマートメーター120a及び120bから同期信号を受信する。これらの同期信号は、図6に関連して既に詳述したように、スマートメーター120i(i=a,b,...,g)によって実行される分散コンセンサスベース同期の結果として得られる。これらの同期信号によって、コンセントレータデバイス110aは、スマートメーター120iによって実行される分散コンセンサスベース同期の結果として得られるクロックタイミングを求めることが可能になる。
【0118】
換言すれば、コンセントレータデバイス110aは、クラスタ100aのスマートメーターによって実行される分散コンセンサスベース同期の経過を観察する。
【0119】
次のステップS702において、コンセントレータデバイス110aは、スマートメーター120iによって実行された分散コンセンサスベース同期の結果として得られたクロックタイミングと基準クロックタイミングとの間の相対クロックタイミング差を求める。基準クロックタイミングは、GPSによって与えられる外部クロックから導出することができる。基準クロックタイミングを規定する別の手法は、図10及び図11に関連して後に詳述する。基準クロックタイミングを規定する更に別の手法は、図12及び図13に関連して後に詳述する。
【0120】
次のステップS703において、コンセントレータデバイス110aは、ローカル補正情報を取得する。ローカル補正情報は、図1の無線メッシュ通信ネットワーク100の範囲でステップS503において取得された補正情報に対応する。換言すれば、ローカル補正情報は、求められたクロックタイミング差から導出される。
【0121】
次のステップS704において、コンセントレータデバイス110aは、取得されたローカル補正情報をサーバデバイス230に送信する。
【0122】
次のステップS705において、コンセントレータデバイス110aは、サーバデバイス230からグローバル補正情報を受信する。図8に関連して後に詳述するように、グローバル補正情報は、クラスタ100a、100b、100cの各分散コンセンサスベース同期の結果として得られたクロックタイミングと基準クロックタイミングとの間の差から導出される。
【0123】
次のステップS706において、コンセントレータデバイス110aは、受信されたグローバル補正情報をクラスタ100a全体にわたって送信する。換言すれば、クラスタ100aが図1の無線メッシュ通信ネットワーク100に対応すると考えた場合には、コンセントレータデバイスは、グローバル補正情報を、自身の近隣デバイス、すなわちスマートメーター120a及び120bに送信する。次に、スマートメーター120a及び120bは、コンセントレータデバイス110aを除く自身の各近隣デバイス、すなわちスマートメーター120c及び120dに補正情報を中継し、以下同様に中継が行われる。
【0124】
図8は、通信ネットワーク200のサーバデバイス230によって実行される、同期及びクロックドリフト補償を実行するアルゴリズムを概略的に表している。図8のアルゴリズムは、図7のアルゴリズムと共に実行される。
【0125】
図8のアルゴリズムが開始されると、サーバデバイス230は、コンセントレータデバイス110a、110b、110cからローカル補正情報が受信されるのを待つ。
【0126】
ステップS801において、サーバデバイス230は、各コンセントレータデバイス110a、110b、110cからローカル補正情報を受信する。換言すれば、サーバデバイス230は、クラスタ100a用にコンセントレータデバイス110aによって求められたローカル補正情報と、クラスタ100b用にコンセントレータデバイス110bによって求められたローカル補正情報と、クラスタ100c用にコンセントレータデバイス110cによって求められたローカル補正情報とを受信する。
【0127】
次のステップS802において、サーバデバイス230は、全てのクラスタ100a、100b、及び100c内に適用されることになるグローバル補正情報を求める。グローバル補正情報は、受信されたローカル補正情報を組み合わせた結果得られる。例えば、グローバル補正情報は、受信されたローカル補正情報の値の算術平均であるか、又は、グローバル補正情報は、受信されたローカル補正情報の値の加重平均である。各ローカル補正情報に適用される重みは、対応するクラスタ100a、100b、100c内の通信デバイスの数に基づくか、又は対応するコンセントレータデバイス110a、110b、110cの近隣デバイスの数に基づいて求められる。
【0128】
次のステップS803において、サーバデバイス230は、求められたグローバル補正情報を各コンセントレータデバイス110a、110b、110cに送信する。
【0129】
したがって、コンセントレータデバイス110a、110b、110cは、それぞれのクラスタ100a、100b、100c全体にわたって同一のグローバル補正情報を送信するので、通信ネットワーク200の全てのスマートメーターは、自身のクロックタイミングに対して同一の補正情報を適用する。この手法は、クラスタ100a、100b、100cが互いに十分近く、その結果、或るクラスタの少なくとも1つのスマートメーターが別のクラスタの少なくとも1つのスマートメーターから同期信号を受信することができ、自身のクラスタの分散コンセンサスベース同期において、これらの同期信号を更に考慮に入れるときに特に適している。
【0130】
次に、サーバデバイス230は、コンセントレータデバイス110a、110b、110cから更新されたローカル補正情報が受信されるのを待つ。
【0131】
図9は、通信ネットワーク200のコンセントレータデバイス110a、110b、110cによって実行される、同期及びクロックドリフト補償を実行する別のアルゴリズムを概略的に表している。このアルゴリズムがコンセントレータデバイス110aによって実行される場合を考える。
【0132】
図9のアルゴリズムは、好ましくは、予め規定された時間期間に基づいて繰り返される。
【0133】
ステップS901において、クラスタ100aが図1の無線メッシュ通信ネットワーク100に対応すると考えた場合、コンセントレータデバイス110aは、自身の近隣デバイス、すなわちスマートメーター120a及び120bから同期信号を受信する。これらの同期信号は、図6に関連して既に詳述したように、スマートメーター120i(i=a,b,...,g)によって実行される分散コンセンサスベース同期の結果として得られる。これらの同期信号によって、コンセントレータデバイス110aは、スマートメーター120iによって実行される分散コンセンサスベース同期の結果として得られるクロックタイミングを求めることが可能になる。
【0134】
換言すれば、コンセントレータデバイス110aは、クラスタ100aのスマートメーターによって実行される分散コンセンサスベース同期の経過を観察する。
【0135】
次のステップS902において、コンセントレータデバイス110aは、スマートメーター120iによって実行された分散コンセンサスベース同期の結果として得られたクロックタイミングと、基準クロックタイミングとの間の相対クロックタイミング差を求める。基準クロックタイミングは、GPSによって提供される外部クロックから導出することができる。
【0136】
次のステップS903において、コンセントレータデバイス110aは、ローカル補正情報を取得する。ローカル補正情報は、図1の無線メッシュ通信ネットワーク100の範囲でステップS503において取得された補正情報に対応する。換言すれば、ローカル補正情報は、求められたクロックタイミング差から導出される。
【0137】
次のステップS904において、コンセントレータデバイス110aは、取得されたローカル補正情報を他のコンセントレータデバイス110b、110cに送信する。
【0138】
次のステップS905において、コンセントレータデバイス110aは、他のコンセントレータデバイス110b、110cから他のローカル補正情報を受信する。換言すれば、コンセントレータデバイス110aは、クラスタ100b用にコンセントレータデバイス110bによって求められたローカル補正情報と、クラスタ100c用にコンセントレータデバイス110cによって求められたローカル補正情報とを受信する。
【0139】
次のステップS906において、コンセントレータデバイス110aは、全てのクラスタ100a、100b、及び100c内に適用されることになるグローバル補正情報を求める。グローバル補正情報は、ステップS802においてサーバデバイス230によって実行されるたのと同様に、受信されたローカル補正情報を組み合わせた結果として得られる。
【0140】
全てのコンセントレータデバイス110a、110b、110cは、同一のプロセスを実行してグローバル補正情報を求める。したがって、同一のグローバル補正情報が、全てのクラスタ100a、100b、及び100c内で適用される。
【0141】
次のステップS907において、コンセントレータデバイス110aは、求められたグローバル補正情報をクラスタ100a全体にわたって送信する。換言すれば、クラスタ100aが図1の無線メッシュ通信ネットワーク100に対応すると考えた場合には、コンセントレータデバイス110aは、自身の近隣デバイス、すなわちスマートメーター120a及び120bにグローバル補正情報を送信する。次に、スマートメーター120a及び120bは、コンセントレータデバイス110aを除くそれぞれの近隣デバイス、すなわちスマートメーター120c及び120dに補正情報を中継し、以下同様に中継が行われる。
【0142】
したがって、コンセントレータデバイス110a、110b、110cは、それぞれのクラスタ100a、100b、100c全体にわたって同一のグローバル補正情報を送信するので、通信ネットワーク200の全てのスマートメーターは、自身のクロックタイミングに同一の補正情報を適用する。この手法は、クラスタ100a、100b、100cが互いに十分近く、その結果、或るクラスタの少なくとも1つのスマートメーターが別のクラスタの少なくとも1つのスマートメーターから同期信号を受信することができ、自身のクラスタの分散コンセンサスベース同期においてこれらの同期信号を更に考慮に入れる場合に特に適している。
【0143】
図10は、無線メッシュ通信ネットワーク200のコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行する更に別のアルゴリズムを概略的に表している。図10に示すアルゴリズムは、図11に示す後に詳述するアルゴリズムと共に実行される。
【0144】
図10及び図11のアルゴリズムの実行範囲において、コンセントレータデバイス110a、110b、及び110cは、第2のレベルのメッシュ通信ネットワークを形成する。コンセントレータデバイス110a、110b、及び110cは、好ましくは無線で相互接続されるが、光リンク又は有線によって相互接続することもできる。
【0145】
図10及び図11のアルゴリズムのグローバル原理は、コンセントレータデバイス110a、110b、110c間で分散コンセンサスベース同期を用いて基準クロックタイミングを規定することである。この場合、時間又は周波数等の種々のリソースに対して適用される分散コンセンサスベース同期の2つの段階がある。第1の段階は、各クラスタ内でスマートメーターによって実行され、第2の段階は、コンセントレータデバイス間で実行される。
【0146】
同様の方法で、分散コンセンサスベース同期のより多くの段階を、実施することができる。
【0147】
1つのコンセントレータデバイスが、基準として規定、選出、又は選択される。そのコンセントレータデバイスを「基準コンセントレータデバイス」と呼ぶことにし、基準コンセントレータデバイスはコンセントレータデバイス110aであると考えることにする。このとき、コンセントレータデバイス110b、110cは、「スレーブコンセントレータデバイス」と呼ばれる。
【0148】
図10のアルゴリズムは、各スレーブコンセントレータデバイス110b、110cによって実行され、好ましくは予め規定された時間期間に基づいて繰り返される。以下の詳細な説明について、アルゴリズムは、スレーブコンセントレータデバイス110bによって実行されるものと考えることにする。
【0149】
ステップS1000において、スレーブコンセントレータデバイス110bは、通信ネットワーク200の他のスレーブコンセントレータデバイスと共に分散コンセンサスベース同期を実行する。スレーブコンセントレータデバイスは、同期信号を送信することによって、それぞれのクロックタイミングのビューを示す。同期信号は、予め規定された時刻に送信されると予想される。クロックタイミングのビューはコンセントレータデバイスごとに異なるので、同期信号は異なる時刻に送信され、コンセントレータデバイス間の伝播時間期間に起因して、同期信号は更に異なる時刻に受信される。分散コンセンサスベース同期の目標は、スレーブコンセントレータデバイスが同一のクロックタイミングのビューに向けて収束することである。そのために、各スレーブコンセントレータデバイスは、自身のクロックタイミングのビューを、他のスレーブコンセントレータデバイスによって示されるクロックタイミングの観察値と組み合わせる。
【0150】
ステップS1000は、ステップS1001〜S1006によって図10に概略的に表されたアルゴリズムに詳述される。
【0151】
ステップS1001において、コンセントレータデバイスが半二重通信を用いる場合には、スレーブコンセントレータデバイス110bは、送信モード又は受信モードのいずれかを選択し、そうではなく、コンセントレータデバイスが全二重通信を用いる場合には、信号の送信及び信号の受信が並列に実行される。
【0152】
送信モードと受信モードとの間の選択は、ランダムに実行することができる。一変形形態では、送信モードと受信モードとの間の選択は、所定のシーケンスに従って行うことができる。
【0153】
次のステップS1002において、送信モードが選択されているのか受信モードが選択されているのかが調べられる。送信モードが選択されている場合、ステップS1003が実行され、そうでない場合、ステップS1004が実行される。
【0154】
ステップS1003において、スレーブコンセントレータデバイス110bは、通信ネットワーク200内の少なくとも1つの他のスレーブコンセントレータデバイス110cに同期信号を送信する。同期信号は、自己相関特性及び相互相関特性を有する予め規定された形状及び/又は内容の信号である。送信された同期信号は、基準コンセントレータデバイス110aによって受信することができる。
【0155】
送信された同期信号は、スレーブコンセントレータデバイス110bのクロックタイミングと整合される。換言すれば、スレーブコンセントレータデバイス110bは、基準クロックタイミングに従って規定される所与の時刻に同期信号を送信すると予想される。スレーブコンセントレータデバイス110bは、分散コンセンサスベース同期の結果によって駆動され、自身の発振器によってはそれほど大きく駆動されないので、むしろ所与の時刻ではあるが自身のクロックタイミングに従って規定される時刻に同期信号を送信する。それに加えて、コンセントレータデバイス間の伝播時間期間は、基準クロックタイミングに従って規定される所与の時刻と、同期信号が有効に受信される時刻との間の差を増加させる。したがって、同期期間は、コンセントレータデバイスが同期信号を送信することを可能にするように規定され、この同期期間は、分散コンセンサスベース同期の結果として生じる不整合と、スレーブコンセントレータの発振器の性能の許容誤差とに起因して起こり得る、クロックドリフトを考慮に入れた所与の時刻周辺のマージンに対応する。
【0156】
ステップS1003が実行されると、アルゴリズムは終了する。
【0157】
ステップS1004において、スレーブコンセントレータデバイス110bは、少なくとも1つの他のスレーブコンセントレータデバイス110cから同期信号を受信する。これらの同期信号は、上記スレーブコンセントレータデバイスがステップS1003を実行したときに上記スレーブコンセントレータデバイスによって送信された信号である。
【0158】
次のステップS1005において、スレーブコンセントレータデバイス110bは、上記他のスレーブコンセントレータデバイス110cから受信された同期信号の結果として得られるクロックタイミングと、自身のクロックタイミングとの間の相対クロックタイミング差を求める。
【0159】
次のステップS1006において、スレーブコンセントレータデバイス110bは、ステップS1005において求められた相対クロックタイミング差に基づいて、自身のクロックタイミングを更新する。換言すれば、スレーブコンセントレータデバイス110bは、自身のクロックタイミングと上記他のスレーブコンセントレータデバイスのクロックタイミングとの間のコンセンサスに対応する値と一致するように、自身のクロックタイミングを調整する。
【0160】
次のステップS1007において、スレーブコンセントレータデバイス110bは、図11に関連して後に詳述するように、ステップS1104において、基準コンセントレータデバイス110aによって送信された補正情報を受信する。
【0161】
次のステップS1008において、スレーブコンセントレータデバイス110bは、受信された補正情報に基づいて、自身のクロックタイミングを更新する。換言すれば、スレーブコンセントレータデバイス110bは、基準コンセントレータデバイス110aから受信された補正情報に対応する補正値を用いて、自身のクロックタイミングを調整する。
【0162】
例えば、スレーブコンセントレータデバイスの自身のクロックタイミングの更新は、次のように実行することができる。
【数9】

ここで、
n’は、アルゴリズムの着目している繰り返しのインデックスであり、
k’は、着目しているスレーブコンセントレータデバイス110bのインデックスであり、
j',n'-1は、アルゴリズムのn’−1回目の繰り返しにおけるj’番目の通信デバイスのクロックタイミングであり、
T’は、アルゴリズムの2つの繰り返しの間の基準時間期間であり、
ε’j'は、j’番目の通信デバイスのクロックドリフトであり、
Ω’n'(k’)は、スレーブコンセントレータデバイス110bがアルゴリズムのn’回目の繰り返しにおいて同期信号を受信したスレーブコンセントレータデバイスのインデックスの集合であり、
τ’k',j'は、スレーブコンセントレータデバイス110bとj’番目のスレーブコンセントレータデバイスとの間の伝播遅延であり、
{∀j’∈Ω’n'(k’),tj',n'-1+ε’j'+τ’k',j'−tk',n'-1}は、アルゴリズムのn’回目の繰り返しにおいてスレーブコンセントレータデバイス110bによって求められる相対クロックタイミング差の集合であり、
g(・)は、既述したコンビネーション関数f(・)と同様に規定することができるコンビネーション関数であり、
ξ’は、基準コンセントレータデバイス110aから受信される補正情報に対応する補正値である。
【0163】
次のステップS1009において、スレーブコンセントレータデバイス110bは、受信された補正情報を通信ネットワーク200内の他のスレーブコンセントレータデバイスに中継する。
【0164】
補正情報が中継されるメッセージ又はパケット又はフレームフィールドは、好ましくは補正情報識別子を含む。これによって、同一の補正情報が通信ネットワーク200内でループすることが回避される。スレーブコンセントレータデバイスは、既に受信された識別子を有する補正情報を受信した場合、その補正情報を廃棄して中継しない。
【0165】
ステップS1007〜S1009は、ステップS1001〜S1006と並列に実行することができることに留意されたい。
【0166】
補正値は、スレーブコンセントレータデバイスの自身のクロックタイミングに徐々に適用することができることに留意されたい。これは、サイクル長の変動を平滑化するために、補正を幾つかのクロックサイクルにわたって分散させることができることを意味する。
【0167】
したがって、ステップS1006及びS1008において実行されるクロックタイミング調整は、スレーブコンセントレータデバイス110bが属するクラスタ100bの基準クロックタイミングに影響を与え、その結果、図5及び図6のアルゴリズムの実行の際に伝播される補正値ξに影響を与える。
【0168】
図11は、通信ネットワーク200のコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行する更に別のアルゴリズムを概略的に表している。図11のアルゴリズムは、図10のアルゴリズムと共に実行される。図11のアルゴリズムは、基準コンセントレータデバイス110aによって実行される。
【0169】
図11のアルゴリズムは、好ましくは、予め規定された時間期間に基づいて繰り返される。
【0170】
ステップS1101において、基準コンセントレータデバイス110は、少なくとも1つのスレーブコンセントレータデバイス110b、110cから同期信号を受信する。これらの同期信号は、図10に関連して上記で詳述したように、スレーブコンセントレータデバイスによって実行される分散コンセンサスベース同期中に送信される。これらの同期信号によって、基準コンセントレータデバイス110aは、スレーブコンセントレータデバイス110b、110cによって実行される分散コンセンサスベース同期の結果として得られるクロックタイミングを求めることが可能になる。
【0171】
換言すれば、基準コンセントレータデバイス110aは、スレーブコンセントレータデバイス110b、110cによって実行される分散コンセンサスベース同期の経過を観察する。
【0172】
次のステップS1102において、基準コンセントレータデバイス110aは、スレーブコンセントレータデバイス110b、110cによって実行された分散コンセンサスベース同期の結果として得られたクロックタイミングと、通信ネットワーク200において基準として用いられる自身のクロックタイミングとの間の相対クロックタイミング差を求める。
【0173】
基準クロックタイミングは、好ましくは、基準コンセントレータデバイス110aの内部クロックから得られるが、外部クロックから得ることもできる。
【0174】
次のステップS1103において、基準コンセントレータデバイス110aは、分散コンセンサスベース同期の結果として生じるクロックドリフトを補償するために、スレーブコンセントレータデバイス110b、110cによって用いられることになる補正情報を求める。補正情報は、少なくとも、分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される。より詳細には、通信ネットワーク200の範囲内で、基準コンセントレータデバイス110aは、分散コンセンサスベース同期の結果として生じるクロックドリフトを補償して同期を確実にするために、スレーブコンセントレータデバイス110b、110cによって用いられることになる補正情報を、求められたクロックタイミング差から求める。
【0175】
クロックタイミング差をスレーブコンセントレータデバイスと組み合わせたものは、次のように表すことができる。
【数10】

ここで、基準コンセントレータデバイス110aは、インデックス0を有する。
【0176】
基準コンセントレータデバイス110aが基準クロックタイミングを提供するので、
【数11】

であることに注意されたい。
【0177】
換言すれば、基準コンセントレータデバイス110aは、コンセントレータデバイス110b、110cによって実行される分散コンセンサスベース同期の観察の結果として得られるクロックタイミング
【数12】

を求めるが、自身のクロックタイミングt0,n'が依然として基準クロックタイミングのままであるので、自身のクロックタイミングt0,n'を更新しない。
【0178】
次に、補正情報に対応する補正値ξ’が、
【数13】

によって求められる。
【0179】
換言すれば、補正情報は、補正値ξ’であるか、又は補正値ξ’を表す情報であるか、又はアルゴリズムの幾つかの繰り返しにわたって求められる補正値ξ’のフィルタリングされた値であるか、又はそのようなフィルタリングされた値を表す情報である。
【0180】
次のステップS1104において、基準コンセントレータデバイス110aは、通信ネットワーク200全体にわたって補正情報を送信する。送信される補正情報は、通信ネットワーク200のスレーブコンセントレータデバイス110b、110cにアドレス指定される。補正情報の伝播は、図10に関連して上記で既に詳述したように、スレーブコンセントレータデバイスによって実行される中継によって確保される。
【0181】
基準コンセントレータデバイス110aを除く通信ネットワーク200の全てのコンセントレータデバイスが、同期信号を送信することによって分散コンセンサスベース同期に参加し、それに従ってそれらのコンセントレータデバイスの各内部クロックタイミング(当該コンセントレータデバイスの各クラスタにおいて基準として用いられる)を更新することが、図10及び図11のアルゴリズムから理解することができる。基準コンセントレータデバイス110aは、分散コンセンサスベース同期に参加せず、同期信号を送信せず、自身の内部クロックタイミングを更新しない。しかしながら、基準コンセントレータデバイス110aは、同期を確実にして分散コンセンサスベース同期の結果として得られるクロックタイミングにおける基準クロックと比較したあらゆるドリフトを回避するために、スレーブコンセントレータデバイス110b、110cによって実行される分散コンセンサスベース同期の進展を観察し、補正情報をブロードキャストする。
【0182】
図12は、通信ネットワーク200の範囲における、スマートメーター120によって実行される、同期及びクロックドリフト補償を実行する別のアルゴリズムを概略的に表している。
【0183】
通信ネットワーク200において、スマートメーターは、異なるクラスタに属する近隣デバイスを有する場合がある。そのようなスマートメーターは、自身のクラスタにおける分散コンセンサスベース同期において、他のクラスタに属する近隣スマートメーターによって送信された同期信号を考慮に入れることができることを既に述べた。
【0184】
したがって、そのようなスマートメーターは、そのような他のクラスタ内で伝播された補正情報を受信する状態にあることができる。これによって、そのようなスマートメーターは、上記他のクラスタの分散コンセンサスベース同期に参加する状態にあることが可能になる。それに加えて、そのようなスマートメーターは、上記他のクラスタの分散コンセンサスベース同期の結果として得られる自身のクロックタイミングのビューを表す同期信号を生成することができ、そのような他のクラスタ内で伝播される補正情報を更に中継することができる。
【0185】
この手法によれば、通信ネットワーク200の全てのスマートメーターは、当該通信ネットワーク200の任意のクラスタ100a、100b、100cの分散コンセンサスベース同期に参加する状態にある。この手法は、通信ネットワーク200のコンセントレータデバイス110a、110b、110c間に直接的な通信がない場合、及び全ての上記コンセントレータデバイス110a、110b、110cのための共通の外部基準クロックタイミングがない場合に、特に役に立つ。
【0186】
図12のアルゴリズムは、ステップS600から開始され、ステップS600において、スマートメーター120は、所与のクラスタ100a、100b、又は100cについて、通信ネットワーク200の他のスマートメーターと共同で分散コンセンサスベース同期を実行する。
【0187】
次のステップS1201において、スマートメーター120は、自身のクラスタ内の近隣スマートメーター、又は別のクラスタの近隣通信デバイスのいずれかから、所与のクラスタ100a、100b、又は100cの補正情報を受信する。
【0188】
次のステップS1202において、スマートメーター120は、受信された補正情報に基づいて、所与のクラスタ100a、100b、又は100cのクロックタイミングを更新する。
【0189】
次のステップS1203において、スマートメーター120は、受信された補正情報を自身の近隣通信デバイスに中継する。
【0190】
次のステップS1204において、スマートメーター120は、全てのクラスタについて分散コンセンサスベース同期が実行されたか否かを調べる。実行された場合、ステップS1205が実行され、そうでない場合、ステップS600が別のクラスタについて繰り返される。
【0191】
ステップS1205において、スマートメーター120は、自身のクラスタを代表するクロックタイミング、すなわち、通信ネットワーク200の全てのスマートメーターによって実行される分散コンセンサスベース同期の結果として自身が属するクラスタについて得られたクロックタイミングに、自身の通信を整合させる。
【0192】
換言すれば、スマートメーター120は、通信ネットワーク200の全てのスマートメーターによって実行される分散コンセンサスベース同期の結果として自身が属するクラスタについて得られたクロックタイミングを通信に用い、また、スマートメーター120は、通信ネットワーク200の全てのスマートメーターによって実行される分散コンセンサスベース同期用の少なくとも1つの他のクラスタについての同期信号も送信する。同期信号は、所与のクラスタについて実行される分散コンセンサスベース同期の結果として得られており、別のクラスタについて実行される分散コンセンサスベース同期の結果として得られた同期信号とアプリオリに整合されていない。同期、すなわち整合は、図13に関連して後に詳述するように、コンセントレータデバイス110a、110b、110cによって実行されるプロセスによって実際に達成される。
【0193】
ステップS600及びS1201〜S1203は、クラスタ100a、100b、100cごとに独立して並列に実行することができることに留意されたい。その後、ステップS1205が、分離されたプロセスにおいて、又は上記スマートメーター120が属するクラスタについてのステップS600及びS1201〜S1203の実行と連続して実行される。
【0194】
図13は、通信ネットワーク200のコンセントレータデバイスによって実行される、同期及びクロックドリフト補償を実行する更に別のアルゴリズムを概略的に表している。図13のアルゴリズムは、図12のアルゴリズムと共に実行される。図13のアルゴリズムがコンセントレータデバイス110aによって実行されることを考える。
【0195】
図13のアルゴリズムは、好ましくは、予め規定された時間期間に基づいて繰り返される。
【0196】
ステップS1301において、コンセントレータデバイス110aは、自身の近隣デバイスから同期信号を受信する。これらの同期信号は、図12に関連して上記で詳述したように、通信ネットワーク200のスマートメーターによって実行される分散コンセンサスベース同期中に送信される。これらの同期信号によって、コンセントレータデバイス110aは、クラスタ100a、100b、100cごとに通信ネットワーク200のスマートメーターによって実行される分散コンセンサスベース同期の結果として得られるクロックタイミングを求めることが可能になる。
【0197】
換言すれば、コンセントレータデバイス110aは、以下のように表されるタイミング不整合を測定することによって、通信ネットワーク200のスマートメーターによって所与のクラスタ100a、100b、又は100cについて実行される分散コンセンサスベース同期の経過を観察する。
【数14】

ここで、コンセントレータデバイス110aはインデックス0を有し、nは、所与のクラスタ100a、100b、又は100cについてのアルゴリズムの着目中の繰り返しのインデックスである。
また、ここで、
j,n-1は、所与のクラスタ100a、100b、又は100cについてのアルゴリズムのn−1回目の繰り返しにおけるj番目の通信デバイスのクロックタイミングであり、
εjは、所与のクラスタ100a、100b、又は100cについてのクロックタイミングに対応するj番目の通信デバイスのクロックドリフトであり、
τ0,jは、コンセントレータデバイス110aとj番目の通信デバイスとの間の伝播遅延である。
【0198】
次のステップS1302において、コンセントレータデバイス110aは、スマートメーターによって実行される所与のクラスタ100a、100b、又は100cについての分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の相対クロックタイミング差を求める。
【0199】
次のステップS1303において、コンセントレータデバイス110aは、全てのクラスタについての分散コンセンサスベース同期が観察されたか否かを調べる。観察された場合、ステップS1304が実行され、そうでない場合、ステップS1301が別のクラスタについて繰り返される。
【0200】
ステップS1304において、コンセントレータデバイス110aは、各クラスタ100a、100b、100cについて、ステップS1302において求められた相対クロック差に基づいて基準クロックタイミングを調整する。換言すれば、コンセントレータデバイス110aは、基準クロックタイミングと、通信ネットワーク200のスマートメーターによって実行される全てのクラスタ100a、100b、100cについての分散コンセンサスベース同期の結果として得られたクロックタイミングとを組み合わせたものによって、基準クロックタイミングを調整する。
【0201】
次のステップS1305において、コンセントレータデバイス110aは、同期を確実にすると共に自身のクラスタ100aについて実行された分散コンセンサスベース同期の結果として生じたクロックドリフトを補償するために、スマートメーター120i(i=a,b,...,g)によって用いられることになる補正情報を取得する。補正情報は、図5に関連して上記で既述したように求められる補正値ξに対応する。補正情報は、コンセントレータデバイス110aの自身のクラスタ100aについての分散コンセンサスベース同期の結果として得られたクロックタイミングと調整された基準クロックタイミングとの間の差から導出される。
【0202】
換言すれば、コンセントレータデバイス110aは、同期を確実にすると共に、自身のクラスタ100aについて実行された分散コンセンサスベース同期と、自身のクラスタ100aについて実行された分散コンセンサスベース同期の結果として得られた同期信号と、別のクラスタ100a、100bについて実行された分散コンセンサスベース同期と、の結果として生じるクロックドリフトを補償するために、スマートメーター120i(i=a,b,...,g)によって用いられることになる補正情報を取得する。
【0203】
次のステップS1306において、コンセントレータデバイス110aは、自身のクラスタ全体にわたって補正情報を送信し、したがって、通信ネットワーク200全体にわたって補正情報を送信する。換言すれば、図2に示す通信ネットワーク200を考えると、補正情報は、クラスタ100aからクラスタ100b、100cに向けてスマートメーターによって中継される。
【0204】
図12及び図13のアルゴリズムを実行することによって、コンセントレータデバイス110a、110b、110cは、共通の外部基準クロックタイミングを共有していないにもかかわらず、同一の基準クロックタイミングに向かって収束することができる。確かに、スマートメーターは、各クラスタ100a、100b、100cの分散コンセンサスベース同期に参加するので、スマートメーターがそれぞれ属するクラスタが何であろうと、コンセントレータデバイス110a、110b、110cは、上記分散コンセンサスベース同期の経過を観察することができ、したがって、他のコンセントレータデバイスによって用いられる基準クロックタイミングに関係した情報を取得することができる。その後、コンセントレータデバイス110a、110b、110cは、これらの観察に基づいてそれぞれの基準クロックを調整することができ、同一の基準クロックタイミングに向けたコンセンサスを見つけることができ、したがって、通信ネットワーク200の全体的な性能を改善することができる。

【特許請求の範囲】
【請求項1】
メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法であって、
1つの所与の通信デバイスを除く全ての前記通信デバイスは、第1の分散コンセンサスベース同期を実行することを特徴とし、
前記所与の通信デバイスは、
− 少なくとも前記第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される第1の補正情報を取得することと、
− 前記メッシュ通信ネットワークを通じて前記第1の補正情報を送信することと
を実行することを特徴とし、
前記所与の通信デバイスを除く全ての前記通信デバイスは、
− 前記送信された第1の補正情報を考慮に入れることによって、前記第1の分散コンセンサスベース同期の結果として得られた前記クロックタイミングを更新すること
を更に実行することを特徴とする、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法。
【請求項2】
前記所与の通信デバイスは、前記第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信された同期信号から導出された少なくとも1つのクロックタイミングから、前記第1の補正情報を取得することを特徴とする、請求項1に記載の方法。
【請求項3】
前記所与の通信デバイスは、サーバデバイスから前記第1の補正情報を取得することを特徴とし、
前記所与の通信デバイスは、
− 前記分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信された同期信号から導出された1つのクロックタイミングから、ローカル補正情報を取得することと、
− 前記ローカル補正情報を前記サーバデバイスに送信することと
を実行することを特徴とし、
前記サーバデバイスは、それぞれがメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる複数の群に接続され、
前記サーバデバイスは、
− 前記各群のそれぞれ1つの通信デバイスからローカル補正情報を受信することと、
− 前記受信されたローカル補正情報を組み合わせて前記第1の補正情報を取得することと
を実行することを特徴とする、請求項1に記載の方法。
【請求項4】
前記所与の通信デバイスは、少なくとも1つの他のメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる少なくとも1つの群と相互接続され、
前記所与の通信デバイスは、
− 前記第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信された同期信号から導出された1つのクロックタイミングと、前記基準クロックとから、ローカル補正情報を取得することと、
− 前記ローカル補正情報を別の前記各群のそれぞれ1つの通信デバイスに送信することと、
− 別の前記各群の前記各通信デバイスから別のローカル補正情報をそれぞれ受信することと、
− 前記受信されたローカル補正情報を組み合わせて前記第1の補正情報を取得することと
を実行することを特徴とする、請求項1に記載の方法。
【請求項5】
前記所与の通信デバイスは、それぞれが複数の他のメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる複数の群と相互接続され、
一組の通信デバイスが、第2の分散コンセンサスベース同期を実行し、該一組は、前記他のメッシュ通信ネットワークごとに1つの通信デバイスによって形成され、
前記所与の通信デバイスは、
− 少なくとも前記第2の分散コンセンサスベース同期の結果として得られるクロックタイミングと前記基準クロックタイミングとの間の差から導出される、第2の補正情報を取得することと、
− 前記第2の補正情報を前記一組の通信デバイスに送信することと
を実行することを特徴とし、
前記一組の通信デバイスは、
− 前記送信された第2の補正情報を考慮に入れることによって、前記第2の分散コンセンサスベース同期の結果として得られた前記クロックタイミングを更新すること
を更に実行することを特徴とする、請求項1に記載の方法。
【請求項6】
前記所与の通信デバイスは、前記第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信された同期信号から導出された少なくとも1つのクロックタイミングと、別の分散コンセンサスベース同期を実行したときに前記少なくとも1つの各通信デバイスから受信された他の同期信号から導出された少なくとも1つの他のクロックタイミングとから、前記第1の補正情報を取得することを特徴とする、請求項1に記載の方法。
【請求項7】
前記所与の通信デバイスは、前記第1の分散コンセンサスベース同期を実行したときに前記少なくとも1つの各通信デバイスから受信された同期信号から導出された少なくとも1つのクロックタイミングと、前記別の分散コンセンサスベース同期を実行したときに前記少なくとも1つの各通信デバイスから受信された他の同期信号から導出された少なくとも1つの他のクロックタイミングとから、前記基準クロックタイミングを調整することを特徴とする、請求項6に記載の方法。
【請求項8】
メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償するシステムであって、
1つの所与の通信デバイスを除く全ての前記通信デバイスは、第1の分散コンセンサスベース同期を実行する手段を備えることを特徴とし、
前記所与の通信デバイスは、
− 少なくとも前記第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、第1の補正情報を取得する手段と、
− 前記メッシュ通信ネットワークを通じて前記第1の補正情報を送信する手段と
を備えることを特徴とし、
前記所与の通信デバイスを除く全ての前記通信デバイスは、
− 前記送信された第1の補正情報を考慮に入れることによって、前記第1の分散コンセンサスベース同期の結果として得られた前記クロックタイミングを更新する手段
を更に備えることを特徴とする、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償するシステム。
【請求項9】
メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法であって、
所与の通信デバイスが、
− 少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、第1の補正情報を取得することであって、前記第1の分散コンセンサスベース同期は、該所与の通信デバイスを除く全ての前記通信デバイスによって実行される、取得することと、
− 前記メッシュ通信ネットワークを通じて前記第1の補正情報を送信することであって、該送信される第1の補正情報は、該所与の通信デバイスを除く全ての前記通信デバイスに前記第1の分散コンセンサスベース同期の結果として得られた前記クロックタイミングを更新させることを意図する、送信することと
を実行することを特徴とする、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法。
【請求項10】
メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する通信デバイスであって、
− 少なくとも第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、第1の補正情報を取得する手段であって、前記第1の分散コンセンサスベース同期は、該特許請求されている通信デバイスを除く全ての前記通信デバイスによって実行される、取得する手段と、
− 前記メッシュ通信ネットワークを通じて前記第1の補正情報を送信する手段であって、該送信される第1の補正情報は、前記所与の通信デバイスを除く全ての前記通信デバイスに、前記第1の分散コンセンサスベース同期の結果として得られた前記クロックタイミングを更新させることを意図する、送信する手段と
を備えることを特徴とする、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する通信デバイス。
【請求項11】
同期を実行してクロックドリフトを補償する方法であって、
該方法は、それぞれがメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる複数の群に接続されたサーバデバイスによって実行され、
前記サーバデバイスは、
− 前記各群のそれぞれ1つの通信デバイスからローカル補正情報を受信することであって、該ローカル補正情報は、第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信される同期信号から導出される1つのクロックタイミングと、基準クロックとから取得される、受信することと、
− 前記受信されたローカル補正情報を組み合わせて第1の補正情報を取得することと、
− 前記第1の補正情報を前記各群の前記それぞれ1つの通信デバイスに送信することと
を実行することを特徴とする、同期を実行してクロックドリフトを補償する方法。
【請求項12】
同期を実行してクロックドリフトを補償するサーバデバイスであって、
該サーバデバイスは、それぞれがメッシュ通信ネットワークを形成するように相互接続された複数の通信デバイスからなる複数の群に接続されることを意図し、
前記サーバデバイスは、
前記各群のそれぞれ1つの通信デバイスからローカル補正情報を受信する手段であって、該ローカル補正情報は、第1の分散コンセンサスベース同期を実行したときに少なくとも1つの各通信デバイスから受信される同期信号から導出される1つのクロックタイミングと、基準クロックとから取得される、受信する手段と、
− 前記受信されたローカル補正情報を組み合わせて第1の補正情報を取得する、組み合わせる手段と、
− 前記第1の補正情報を前記各群の前記それぞれ1つの通信デバイスに送信する手段であって、該送信される第1の補正情報は、前記各群の前記それぞれ1つの通信デバイスに、前記第1の分散コンセンサスベース同期の結果として得られたクロックタイミングの更新を可能にすることを意図する、送信する手段と
を備えることを特徴とする、同期を実行してクロックドリフトを補償するサーバデバイス。
【請求項13】
メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法であって、
着目している通信デバイスが、1つの所与の通信デバイスを除く全ての前記通信デバイスと共同して第1の分散コンセンサスベース同期を実行し、
− 前記所与の通信デバイスから第1の補正情報を受信することであって、該第1の補正情報は、少なくとも前記第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、受信することと、
− 前記受信された第1の補正情報を考慮に入れることによって、前記第1の分散コンセンサスベース同期の結果として得られた前記クロックタイミングを更新することであって、前記送信された第1の補正情報は、前記各群の前記それぞれ1つの通信デバイスに、前記第1の分散コンセンサスベース同期の結果として得られた前記クロックタイミングの更新を可能にすることを意図する、更新することと
を実行することを特徴とする、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する方法。
【請求項14】
メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する通信デバイスであって、
該特許請求される通信デバイスは、
− 1つの所与の通信デバイスを除く全ての前記通信デバイスと共同して第1の分散コンセンサスベース同期を実行する手段と、
− 前記所与の通信デバイスから第1の補正情報を受信する手段であって、該第1の補正情報は、少なくとも前記第1の分散コンセンサスベース同期の結果として得られるクロックタイミングと基準クロックタイミングとの間の差から導出される、受信する手段と、
− 前記受信された第1の補正情報を考慮に入れることによって、前記第1の分散コンセンサスベース同期の結果として得られた前記クロックタイミングを更新する手段と
を備えることを特徴とする、メッシュ通信ネットワークを形成するように相互接続された複数の通信デバイス間で同期を実行してクロックドリフトを補償する通信デバイス。

【図1】
image rotate

【図2】
image rotate

【図3a】
image rotate

【図3b】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2013−17178(P2013−17178A)
【公開日】平成25年1月24日(2013.1.24)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−149706(P2012−149706)
【出願日】平成24年7月3日(2012.7.3)
【出願人】(503163527)ミツビシ・エレクトリック・アールアンドディー・センター・ヨーロッパ・ビーヴィ (175)
【氏名又は名称原語表記】MITSUBISHI ELECTRIC R&D CENTRE EUROPE B.V.
【住所又は居所原語表記】Capronilaan 46, 1119 NS Schiphol Rijk, The Netherlands
【Fターム(参考)】