(57)【要約】【課題】無線ネットワークにおいて、無線通信端末にプログラムを迅速に配信することを目的とする。【解決手段】複数の集約装置と複数の通信装置とを有し、無線通信により接続される無線ネットワークシステムの前記集約装置は、前記複数の通信装置が用いる複数ブロックに分割されたプログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて所定周期で送信し、自集約装置と他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信手段が送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する。【選択図】図５
2015111792.tif 000002
【特許請求の範囲】
【請求項１】
複数の集約装置と複数の通信装置とを有すると共に、各集約装置が各通信装置にプログラムを送信する機能を有し、無線通信により接続される無線ネットワークシステムの前記集約装置であって、
前記複数の通信装置が用いる複数ブロックに分割されたプログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて所定周期で送信するブロック送信手段と、
当該集約装置と前記他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信手段が送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する制御手段と
を備えることを特徴とする集約装置。
【請求項２】
前記集約装置の電波到達範囲の一部分は、前記他の集約装置の電波到達範囲と重なる
ことを特徴とする請求項１に記載の集約装置。
【請求項３】
前記制御手段は、前記ブロック送信手段がブロックを送信するタイミングを、前記他の集約装置がブロックを送信するタイミングと異なるように制御する
ことを特徴とする請求項１又は２に記載の集約装置。
【請求項４】
前記通信装置は、前記ブロックを受信し、受信した前記ブロックのうち、自装置の種類に応じたプログラムのブロックをメモリに記憶し、受信したブロックを、電波到達範囲内の前記通信装置に向けて送信するものである
ことを特徴とする請求項１〜３のいずれかに記載の集約装置。
【請求項５】
前記プログラムは、前記通信装置のファームウェアである
ことを特徴とする請求項１〜４のいずれかに記載の集約装置。
【請求項６】
サーバ装置と、複数の集約装置と、複数の通信装置とを有するネットワークシステムであって、
前記サーバ装置は、
前記複数の集約装置それぞれに、各集約装置と通信可能な前記通信装置の種類に応じたプログラムを送信するプログラム送信手段を備え、
前記集約装置は、
前記サーバ装置からプログラムを受信するプログラム受信手段と、
複数ブロックに分割された前記プログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて所定周期で送信するブロック送信手段と、
当該集約装置と前記他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信手段が送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する制御手段とを備え、
前記通信装置は、
前記ブロックを受信し、電波到達範囲内の他の通信装置に向けて送信するブロック転送手段を備える
ことを特徴とするネットワークシステム。
【請求項７】
複数の集約装置と複数の通信装置とを有すると共に、各集約装置が各通信装置にプログラムを送信する機能を有し、無線通信により接続される無線ネットワークシステムの前記集約装置で用いられる配信方法であって、
前記複数の通信装置が用いる複数ブロックに分割されたプログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて送信するブロック送信ステップと、
当該集約装置と前記他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信ステップが送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する制御ステップと
を備えることを特徴とする配信方法。
【請求項８】
複数の集約装置と複数の通信装置とを有すると共に、各集約装置が各通信装置にプログラムを送信する機能を有し、無線通信により接続される無線ネットワークシステムの前記集約装置で用いられる配信プログラムであって、
前記複数の通信装置が用いる複数ブロックに分割されたプログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて送信するブロック送信手段と、
当該集約装置と前記他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信手段が送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する制御手段として、前記集約装置のコンピュータを機能させる
ことを特徴とする配信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の通信装置が無線ネットワークで接続されて成る通信システムに関するものである。
【背景技術】
【０００２】
近年、各電力需要家に無線通信端末を設置し、これらを電力事業者が保有する収集サーバと通信可能に接続し、各電力需要家における電力量計の検針データを定期的に収集する自動検針システムが実現されつつある。かかる自動検針システムの構築に際し、無線通信端末（ノード）を通して順次データを転送してゆく、いわゆるマルチホップ方式の無線ネットワークシステムの適用が検討されている。
【０００３】
例えば、無線通信端末をノードとしてツリー型のネットワークを構成し、検針データを上位側の無線通信装置に吸い上げて統合し、さらに上位側へと転送してゆく無線データ収集システムが提案されている（特許文献１参照）。
【０００４】
このような無線データ収集システムにおいては、通信方式や業務要件の変更等によって無線通信端末のファームウェアの書替えが必要になると、作業員が現地へ出向き、無線通信端末のファームウェアを１台ずつインストールするか、或いは基板または装置自体を交換することで対応している。このような作業は、無線通信端末（電気のメータ）が、高所に設置されていたり、隣家との隙間に設置されたりして、作業自体が困難であるとともに、台数が多く、所定期間内に作業を終えるには多くの労力を必要とする。また、電気のメータは、複数の納入業者（メーカ）があり、納入時期によって型番（機能）も異なっており、どの家のメータにどのファームウェアをインストールすればよいのかというデータの管理も煩雑である。
【０００５】
そこで、多数の無線通信端末が設置される状況でも、その設置箇所までわざわざ出向くことなく、ファームウェアを無線通信端末１台１台に、トラヒックを抑えつつ、また、通信状況の良し悪しに関わらず確実にインストールすることができる通信システムが提案されている（特許文献２参照）。この通信システムは、図１２に示すように、サーバ装置１においてファームウェアプログラム１０を、回線占有時間や回線レートに基づく適切なデータ量のブロック（ファームウェアプログラム１０内の矩形）に分割し、各ブロックに通し番号「１」〜「２４」を割り当てる。そして、サーバ装置１は、ネットワーク２で接続されたゲートウェイ（「ＧＷ−１」、「ＧＷ−２」が記載された楕円で表す。）を介して、各無線通信端末（「端局」が記載された矩形で表す。）に向けて、所定の時間帯に、１ブロックずつ順次送信する。ブロックを受信した無線通信端末は、受信したブロックをメモリに記憶するとともに、他の無線通信端末に送信することで、ブロックは無線提供エリア内の全無線通信端末に送信される。無線通信端末は、受信したブロックを結合してファームウェアプログラム１１を生成し、自装置のファームウェアを更新する。この際、無線通信端末は、受信したブロックのうち、ブロック番号に欠番（破線の矩形で表す。）がある場合には、サーバ装置１に再送要求を行って全ブロックを受信することで、確実にファームウェアを更新することが可能となっている。また、サーバ装置１は、順次、異なるメーカのファームウェアを送信し、無線通信端末は、受信したブロックのうち、自装置用のファームウェアのみをメモリに記憶することで、複数のメーカの無線通信端末が混在したとしても、それぞれの装置用のファームウェアを更新することが可能となっている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−１８７７９３号公報
【特許文献２】特開２００９−１８８９３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、ファームウェアプログラム自体のサイズは小さいものではなく、複数のメーカのファームウェアの更新が完了するまでには、それなりの時間を要する。また、新たなメーカの機種の採用等により送信すべきファームウェアの種類が多くなったり、機能追加等によりファームウェア自体のサイズが大きくなることにより、全無線通信端末のファームウェアの更新が完了するまでの時間は長くなる傾向にある。
【０００８】
ファームウェアの更新には、ファームウェアの不具合を修正する場合等も含まれることから、ファームウェアを更新するための時間は、不具合が長期化しないためにも、なるべく短いことが望まれる。
【０００９】
そこで、本発明は、無線ネットワークにおいて、無線通信端末にプログラムを迅速に配信することを目的とする。
【課題を解決するための手段】
【００１０】
本発明にかかる一態様に係る集約装置は、複数の集約装置と複数の通信装置とを有すると共に、各集約装置が各通信装置にプログラムを送信する機能を有し、無線通信により接続される無線ネットワークシステムの前記集約装置であって、前記複数の通信装置が用いる複数ブロックに分割されたプログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて所定周期で送信するブロック送信手段と、当該集約装置と前記他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信手段が送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する制御手段とを備えることを特徴とする。
【００１１】
そして、本発明の他の一態様に係る配信方法は、複数の集約装置と複数の通信装置とを有すると共に、各集約装置が各通信装置にプログラムを送信する機能を有し、無線通信により接続される無線ネットワークシステムの前記集約装置で用いられる配信方法であって、前記複数の通信装置が用いる複数ブロックに分割されたプログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて送信するブロック送信ステップと、当該集約装置と前記他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信ステップが送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する制御ステップとを備えることを特徴とする。
【００１２】
そして、本発明の他の一態様に係る配信プログラムは、複数の集約装置と複数の通信装置とを有すると共に、各集約装置が各通信装置にプログラムを送信する機能を有し、無線通信により接続される無線ネットワークシステムの前記集約装置で用いられる配信プログラムであって、前記複数の通信装置が用いる複数ブロックに分割されたプログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて送信するブロック送信手段と、当該集約装置と前記他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信手段が送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する制御手段として、前記集約装置のコンピュータを機能させることを特徴とする。
【００１３】
このような構成の集約装置、配信方法、及び、配信プログラムによれば、通信装置が用いるプログラムのブロックを、複数の集約装置それぞれが、それぞれ異なるブロックを所定周期で送信するので、通信装置は、同一の所定周期において複数のブロックを受信することが可能となる。つまり、全ての集約装置が同一の順番のブロックを順次送信する場合に比べて、通信装置は、より短時間で、プログラムの全てのブロックを受信することができる可能性が高くなる。
【００１４】
また、上述の集約装置において、前記集約装置の電波到達範囲の一部分は、前記他の集約装置の電波到達範囲と重なることが好ましい。
【００１５】
この構成によれば、集約装置の電波到達範囲が重なる領域に在る通信装置は、同一の所定周期において、重なっている電波到達範囲の集約装置が送信するブロックを受信することができるので、重なりが大きい程、より多くの通信装置が、より短時間で全ブロックを受信することができる可能性が高くなる。
【００１６】
また、上述の集約装置において、前記制御手段は、前記ブロック送信手段がブロックを送信するタイミングを、前記他の集約装置がブロックを送信するタイミングと異なるように制御することが好ましい。
【００１７】
この構成によれば、集約装置が送信するブロックの送信タイミングが、他の集約装置が送信するタイミングとずれるので、送信データ（フレーム）の衝突を回避できる可能性が高くなる。つまり、通信装置は、より確実にブロックを受信できることになる。
【００１８】
また、上述の集約装置において、前記通信装置は、前記ブロックを受信し、受信した前記ブロックのうち、自装置の種類に応じたプログラムのブロックをメモリに記憶し、受信したブロックを、電波到達範囲内の前記通信装置に向けて送信するものであることが好ましい。
【００１９】
この構成によれば、通信装置は、集約装置から受信したブロックを、更に、他の通信装置に向けて送信するので、集約装置の電波到達範囲内に無い通信装置も、ブロックを受信することが可能となる。つまり、集約装置の電波到達範囲を越えて、より広範囲に在る通信装置に、ブロックを送信することが可能となる。
【００２０】
また、上述の集約装置において、前記プログラムは、前記通信装置のファームウェアであることが好ましい。
【００２１】
この構成によれば、通信装置は、より短時間でファームウェアを受信することができるので、通信装置は、迅速にファームウェアの更新を行うことが可能となる。
【００２２】
本発明にかかる他の一態様に係るネットワークシステムは、サーバ装置と、複数の集約装置と、複数の通信装置とを有するネットワークシステムであって、前記サーバ装置は、前記複数の集約装置それぞれに、各集約装置と通信可能な前記通信装置の種類に応じたプログラムを送信するプログラム送信手段を備え、前記集約装置は、前記サーバ装置からプログラムを受信するプログラム受信手段と、複数ブロックに分割された前記プログラムを、１ブロックずつ順次、電波到達範囲内の前記通信装置に向けて所定周期で送信するブロック送信手段と、当該集約装置と前記他の集約装置が送信するプログラムが同一である場合に、前記ブロック送信手段が送信するブロックが、前記他の集約装置が送信するブロックと異なるブロックとなるように制御する制御手段とを備え、前記通信装置は、前記ブロックを受信し、電波到達範囲内の他の通信装置に向けて送信するブロック転送手段を備えることを特徴とする。
【００２３】
このような構成のネットワークシステムによれば、それぞれの集約装置は、自装置の電波到達範囲に在る通信装置、及び、この通信装置が送信するブロックを受信する通信装置が用いるプログラムを、サーバ装置から受信してそのプログラムのブロックを送信する。従って、通信装置は、自装置が用いることのないプログラムのブロックを受信することが少なくなるので、迅速に、自装置用のプログラムの全ブロックを受信することが可能となる。
【発明の効果】
【００２４】
本発明にかかる無線ネットワークシステムの集約装置は、無線通信端末（通信装置）にプログラムを迅速に配信することができる。
【図面の簡単な説明】
【００２５】
【図１】電力需要家の端局から検針データ収集するための無線ネットワークシステムの使用例を示す図である。
【図２】端局Ｔの正面図の例である。
【図３】無線ネットワークシステムの概略を示す図である。
【図４】メーカ限定ネットワークでのファームウェアの配信を説明するための図である。
【図５】ゲートウェイＧＷが近接するネットワークでのファームウェアの配信を説明するための図である。
【図６】端局の機能ブロックの構成例を示す図である。
【図７】ゲートウェイＧＷの機能ブロックの構成例を示す図である。
【図８】自装置情報テーブルの構成及び内容の例を示す図である。
【図９】ゲートウェイが行うファームウェア配信処理のフローチャートである。
【図１０】端局が行うファームウェア更新処理のフローチャートである。
【図１１】無線ネットワークにおいて送受信されるデータを説明するための図である。
【図１２】従来例のファームウェアの配信を説明するための図である。
【発明を実施するための形態】
【００２６】
＜実施形態＞
実施形態の無線ネットワークシステムは、マルチホップ無線ネットワークであり、各電力需要家から、検針データを収集するためのシステムである。
【００２７】
図１は、実施形態の無線ネットワークシステムの使用例を示す図である。この無線ネットワークシステムは、電力需要家Ｈ１、Ｈ２、・・・、Ｈ１２（総称するときは、電力需要家Ｈという。）、各電力需要家Ｈに設置されている電力計量器である端局Ｔ１、Ｔ２、・・・、Ｔ１２（総称するときは、端局Ｔという。）、ゲートウェイＧＷａ、ＧＷｂ、ＧＷｃ（総称するときは、ゲートウェイＧＷという。）、ネットワーク２、サーバ装置１を備える。尚、電力需要家Ｈ、端局Ｔ、ゲートウェイＧＷ、及び、サーバ装置１の個数は、これらの数に限られない。
【００２８】
ネットワーク２は、電力会社等のネットワーク運営会社によって管理されているネットワークであり、有線、無線を問わない。また、ゲートウェイＧＷは、例えば、主な電柱に設けられ、ネットワーク２を介して、電力会社等によって管理されているサーバ装置１と接続される。
【００２９】
端局Ｔは、マルチホップを用いたネットワークのノードを構成し、何れかのゲートウェイＧＷに属している。端局Ｔは、積算電力量計としての機能を有し、それぞれの検針データは、順次、隣の端局Ｔに転送され、自装置が属するゲートウェイＧＷに集められる。各ゲートウェイＧＷに集められた検針データは、ネットワーク２を介して、サーバ装置１に送信される。端局Ｔは、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）規格での通信を行い、信号Ａ１〜４等で示すように、アドホックモードによって１対１の通信を行う。また、ゲートウェイＧＷはそれぞれ、数百程度の端局Ｔの検針データを収集する。
【００３０】
図２は、端局Ｔの正面図の例である。この端局Ｔは、電力需要家の宅内の各配電線が接続される端子台６、負荷開閉器３０００、電力量計２０００、及び、通信装置１０００が配列されて構成される。電力量計２０００は、積算電力量を、予め定める周期、例えば、５分毎に検針する。その検針データは３０分毎に、通信装置１０００によって、自装置の属するゲートウェイＧＷに向けて送信される。負荷開閉器３０００は、サーバ装置１から送信されてくる制御データに応じて、開閉動作を行う。
【００３１】
ここで、図３に、実施形態のマルチホップを用いたネットワークの概略を示す。２重円がゲートウェイＧＷを示し、円内部にはゲートウェイＧＷの識別子「ＧＷａ」等が記載されている。１重円が端局Ｔを示し、円内部には端局Ｔの識別子「Ｔ１」等が記載されている。円を結ぶ破線は、その両端の円で示すゲートウェイＧＷ又は端局Ｔ同士が、互いの存在を検出（学習）していることを示す。
【００３２】
サーバ装置１とゲートウェイＧＷとはネットワーク（通信回線）２によって接続され、ゲートウェイＧＷと各端局とは、マルチホップにより接続される。実施形態のネットワークでは、ホップ数は、最大で数十、好ましくは十ホップ以下である。
【００３３】
実施形態のネットワークは、例えば、マルチホップ無線ネットワークにおけるいわゆるプロアクティブ型のルーティングのプロトコルの１つであるＯＬＳＲ（Ｏｐｔｉｍｉｚｅｄ  Ｌｉｎｋ  Ｓｔａｔｅ  Ｒｏｕｔｉｎｇ）によって生成される。ゲートウェイＧＷと各端局Ｔとの間の経路は、各装置（ゲートウェイＧＷ、端局Ｔ）が、周期的に、自装置の存在を伝えるとともに、経路情報を交換するためのメッセージを送受信することで、各装置が自律的に構築する。各ゲートウェイＧＷ、及び、各端局Ｔは、ネットワーク全体のトポロジー情報である経路表（ルートテーブル）、例えば、学習したネットワーク内の端局Ｔと、その端局Ｔへデータを送信するための隣接送信先である端局Ｔとを対応付けて記憶する。
【００３４】
各装置が自律的に、周囲の電波状況等の変化に応じて、最適な経路を構築するため、端局ＴからゲートウェイＧＷへの上りルートと、ゲートウェイＧＷから端局Ｔへの下りルートとでは、経路が異なる場合がある。
【００３５】
検針データは、その端局Ｔが属するゲートウェイＧＷに向けて上りルートで送信される。例えば、図３において、ハッチングがかかった識別子「Ｔ８」の端局Ｔ（以下、「端局Ｔ８」という。）の、識別子「ＧＷａ」のゲートウェイＧＷ（以下、「ゲートウェイＧＷａ」という。）への上りルートを、ゲートウェイＧＷ向きの実線矢印で示す。具体的には、端局Ｔ８が送信した検針データは、端局Ｔ６を経由してゲートウェイＧＷａに到達する。端局Ｔ８が、検針データをゲートウェイＧＷａに向けて送信する為に、上位の隣接送信先である端局Ｔ６に送信するパケットの例を図１１（ａ）に示す。このパケットには、隣接宛先として端局Ｔ６の宛先「Ｔ６−Ａｄｄｒ」、最終宛先としてゲートウェイＧＷａの宛先「ＧＷａ−Ａｄｄｒ」、データ種別として「検針データ」、自装置の検針データが含まれる。端局Ｔ８から検針データのパケットを受信した端局Ｔ６は、最終宛先「ＧＷａ−Ａｄｄｒ」への経路上の宛先に、受信したパケットを転送する。図３の場合は、端局Ｔ６は、受信したパケットを「ＧＷａ−Ａｄｄｒ」に転送することとなるが、他の端局Ｔを経由する場合は、その端局Ｔ宛にパケットを転送する。
【００３６】
尚、実施形態では、端局Ｔの宛先は、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスとし、ゲートウェイＧＷの宛先は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスとする。また、図１１に示すパケットの例では、説明に必要な項目データのみを記載するものとする。
【００３７】
また、サーバ装置１は、端局Ｔ８に制御データを送信する際には、その端局Ｔが属するゲートウェイＧＷａに制御データ（命令）を渡して、端局Ｔ８への送信を依頼する。制御データは、図３の端局Ｔ８に向かう実線矢印のルートで示す下りルートで、送信されることになる。具体的には、ゲートウェイＧＷａが送信した制御データは、端局Ｔ１、端局Ｔ３、端局Ｔ５を経由して端局Ｔ８に到達する。
【００３８】
ゲートウェイＧＷａは、端局Ｔ８に送信する為に、制御データのパケットを、隣接送信先である端局Ｔ１宛に送信する。ゲートウェイＧＷａが、端局Ｔ１に送信するパケットの例を図１１（ｂ）に示す。このパケットには、隣接宛先として端局Ｔ１の宛先「Ｔ１−Ａｄｄｒ」、データ種別として「制御データ」、最終宛先として端局Ｔ８の宛先「Ｔ８−Ａｄｄｒ」、制御データが含まれる。ゲートウェイＧＷａから制御データのパケットを受信した端局Ｔ１は、最終宛先「Ｔ８−Ａｄｄｒ」への隣接送信先である端局Ｔ３宛に、パケットを転送する。
【００３９】
端局Ｔは、図１に示すように、各電力需要家Ｈに設置されていることから、無線通信ネットワーク全体では膨大な数となり、電力需要家Ｈは広範囲に存在し、点在する場合もあれば、集合住宅のように集中している場合もある。そして、このような無線通信ネットワークでは、複数のメーカにより製造され、また、同一メーカにより製造されたものでも型番が異なる等、複数種類の端局Ｔが同時に設置されていることが多い。
【００４０】
このような電力需要家Ｈそれぞれに設置された端局Ｔから検針データを収集するような無線通信ネットワークには、例えば、次の２つの特徴がある。
【００４１】
１つ目の特徴は、或る地域には、メーカＡが製造した端局Ｔが設置され、他の地域には、メーカＢが製造した端局Ｔが設置される等となることが多い。メーカが異なれば、基本的にファームウェアも異なる。
【００４２】
２つ目の特徴は、ゲートウェイＧＷが接近して設置されているエリアがある。つまり、住宅密集地や集合住宅が多く在る地域には、小さいエリアに多くの端局Ｔが存在することから、検針データのトラフィックを軽減するためや、障害物が多い等の理由で、ゲートウェイＧＷが近接して設置され、その電波到達範囲が一部重なっている場合があることである。
【００４３】
実施形態の無線ネットワークシステムでは、このような特徴を利用してファームウェアの配信を、短時間で行う。
【００４４】
＜限定ネットワークの配信方法＞
図４に、１つ目の特徴を利用したファームウェアの配信方法の例を示す。「メーカＡ限定ネットワーク」は、無線ネットワーク内のメーカＡの端局Ｔが設置されたエリアのネットワークを示し、「メーカＢ限定ネットワーク」は、メーカＢの端局Ｔが設置されたエリアのネットワークを示す。矩形で示す端局Ｔのうち、「端局Ａ」と記載された矩形は、メーカＡの端局Ｔを示し、「端局Ｂ」と記載された矩形は、メーカＢの端局Ｔを示す。楕円で示すゲートウェイＧＷ−Ａは、「メーカＡ限定ネットワーク」内のゲートウェイＧＷであり、楕円で示すゲートウェイＧＷ−Ｂは、「メーカＢ限定ネットワーク」内のゲートウェイＧＷである。図４では、「メーカＡ限定ネットワーク」と「メーカＢ限定ネットワーク」とにゲートウェイＧＷを１台ずつ記載しているが、複数であってもよい。尚、「メーカＡ限定ネットワーク」と「メーカＢ限定ネットワーク」とが重複する部分が発生し得るが、端局Ｔは、ゲートウェイＧＷからのホップ数が所定数を超える場合にはデータ転送を行わないことから、限定ネットワークの外縁が確定できる。
【００４５】
サーバ装置１は、メーカＡ用のファームウェア２１をゲートウェイＧＷ−Ａに送信し、メーカＢ用のファームウェア２２をゲートウェイＧＷ−Ｂに送信する。各ゲートウェイＧＷで、ファームウェアを複数のブロックに分割する。ブロックの分割は、回線占有時間や回線レートに基づく適切なデータ量で分割する。図４では、ファームウェア２１とファームウェア２２とをそれぞれ１２個のブロックに分割しているが、それぞれのファームウェアのサイズや構成に応じて、適切な個数に分割する。尚、ファームウェアの分割は、サーバ装置１で行い、まとめてゲートウェイＧＷに送信してもよい。
【００４６】
ゲートウェイＧＷ−Ａは、メーカＡ用のファームウェア２１の、ブロックＡ１からブロックＡ１２までを１ブロックずつ、端局Ｔに向けて送信（ブロードキャスト）する（矢印２３）。ブロックを受信した端局Ｔは、受信したブロックが自装置用のファームウェアのブロックである場合にはメモリに記憶し、受信したブロックを他の端局Ｔに向けて送信する。このように、「メーカＡ限定ネットワーク」内の全端局Ｔに、ブロックが転送されていく。端局Ｔは、ブロックＡ１〜ブロックＡ１２までを記憶した場合には、ブロックを結合してファームウェア２１を生成し、自装置のファームウェアを更新する。尚、ブロックに欠損があった場合には、端局Ｔは、欠損しているブロックをゲートウェイＧＷ―Ａに要求する。
【００４７】
ゲートウェイＧＷ−Ｂは、メーカＢ用のファームウェア２２の、ブロックＢ１からブロックＢ１２までを1ブロックずつ、端局Ｔに向けて送信（ブロードキャスト）する（矢印２４）。端局Ｔの動作は、「メーカＡ限定ネットワーク」の端局Ｔと同様である。
【００４８】
このように、ゲートウェイＧＷごとに、そのゲートウェイＧＷが設置された周辺の端局Ｔの種類に応じたファームウェアを配信することで、端局Ｔは、自装置用のファームウェアを受信するまでの待ち時間を短縮でき、無線通信ネットワーク全体での更新に要する時間を短縮することが可能となる。例えば、図１２に示す従来例のように、各ゲートウェイＧＷが同じファームウェアのブロックを送信する場合には、メーカＡ用のファームウェア２１を送信した後に、メーカＢ用のファームウェア２２を送信することになる。この場合には、「メーカＢ限定ネットワーク」の端局Ｔは、メーカＡ用のファームウェア２１が送信されている間が待ち時間となる。
【００４９】
尚、図４では、ゲートウェイＧＷは、１種類のファームウェア（例えば、メーカＡ用のファームウェア２１）を配信することとしているが、複数のファームウェアを配信することとしてもよい。例えば、メーカＣの端局Ｔが、「メーカＡ限定ネットワーク」に混在している場合には、メーカＣ用のファームウェアも配信する。この場合でも、メーカＡ用のファームウェア、メーカＢ用のファームウェア、メーカＣ用のファームウェアと順に送信する場合に比べて、全体の更新時間は短縮することができる。
【００５０】
＜複数ＧＷによる配信方法＞
図５に、２つ目の特徴を利用したファームウェアの配信方法の例を示す。図５は、図４の「メーカＢ限定ネットワーク」にファームウェアを配信する場合を示し、ゲートウェイＧＷ−１及びゲートウェイＧＷ−２は、「メーカＢ限定ネットワーク」内のゲートウェイＧＷである。ここでは、ゲートウェイＧＷ−１とゲートウェイＧＷ−２が、それぞれの電波到達範囲が一部重複する程度に近接して設置されている。一点鎖線の円が、ゲートウェイＧＷ−１の電波到達範囲を示し、破線の円が、ゲートウェイＧＷ−２の電波到達範囲を示す。
【００５１】
サーバ装置１は、メーカＢ用のファームウェア２２を、ゲートウェイＧＷ−１及びゲートウェイＧＷ−２に送信する。各ゲートウェイＧＷが、ファームウェアを複数のブロックに分割する（図４のファームウェア２２参照）。
【００５２】
そして、ゲートウェイＧＷ−１は、ブロックＢ１から順番に、端局Ｔに向けて送信し（矢印３１）、ゲートウェイＧＷ−２は、ブロックＢ４から順番に、端局Ｔに向けて送信する（矢印３２）。つまり、各ゲートウェイＧＷは、互いに異なるブロックを送信する。言い換えれば、ゲートウェイＧＷが送信するブロックのブロック番号を分散させる。但し、正確には、ゲートウェイＧＷの個数及びブロックの個数等によって、一部のゲートウェイＧＷが同じ番号のブロックを送信する場合もある。
【００５３】
複数のゲートウェイＧＷが送信するブロックのブロック番号を分散させることで、全端局Ｔにファームウェアの配信が完了するまでの時間を短縮させることが可能となる。
【００５４】
例えば、５ＭＢ（メガバイト）のファームウェアを配信する場合を考える。１４００ｂｙｔｅを１ブロックとして分割した場合、ブロック数は３５７２個となる。１ブロックを３０秒ごとに送信するものとし、配信可能期間は、１時間あたり４０分、具体的には、各時刻の２０分〜６０分とする。尚、１時間のうちの配信可能期間以外の２０分は、検針データの送信等の処理を行う時間である。
【００５５】
全ゲートウェイＧＷが、同じ番号のブロックを送信した場合、全ブロックの送信が完了するのは、以下の時間となる。
送信時間（時間）＝３５７２（ブロック）×３０（秒）÷４０（分）＝４４．６５
【００５６】
２台のゲートウェイＧＷが、それぞれ異なる番号のブロックを送信、つまり、1台のゲートウェイＧＷがブロック番号１〜１７８６のブロックを送信し、他のゲートウェイＧＷがブロック番号１７８７〜３５７２のブロックを送信した場合、全ブロックの送信が完了するのは、以下の時間となる。
送信時間（時間）＝３５７２（ブロック）÷２（台）×３０（秒）÷４０（分）＝２２．３２５
【００５７】
つまり、より短時間で、ゲートウェイＧＷから全ブロックが送信される。ゲートウェイＧＷから配信されたブロックは、端局Ｔをホップしながら全端局Ｔに伝播してくので、全端局Ｔにブロックをできるだけ早く届けるためには、できるだけ早くネットワーク上にブロックを流すことが効果的である。
【００５８】
＜ブロック番号分散方法＞
ここで、ゲートウェイＧＷが送信するブロック番号を分散させる方法を説明する。
【００５９】
実施形態では、以下の式（１）を用いて、送信を開始するブロック番号を求め、昇順に送信を行う。最後の番号のブロックまで送信したら、ブロック番号が「１」のブロックから送信し、全部のブロックを送信するものとする。
開始ブロック番号＝（装置ＩＤ）Ｍｏｄ（開始分散値）×（全ブロック数÷開始分散値）＋１      ・・・（１）
ここで、装置ＩＤはゲートウェイＧＷに固有の識別番号である。Ｍｏｄは割り算の余りを求める関数であり、（ｘ）Ｍｏｄ（ｙ）は、ｘをｙで割った余りを出力する。開始分散値は、「４」とする。開始分散値は、ゲートウェイＧＷの数、ブロック数等を考慮して、適切な値とする。
【００６０】
例えば、「装置ＩＤ」が「１２００００」であるとし、ブロック数が１２であるとする。式（１）を用いて開始ブロック番号を求めると、（１２００００）Ｍｏｄ（４）×（１２÷４）＋１＝０×３＋１＝１となる。また、「装置ＩＤ」が「１２０００１」の場合、（１２０００１）Ｍｏｄ（４）×（１２÷４）＋１＝１×３＋１＝４となる。
【００６１】
ここで、送信するブロック順をまとめた表１を以下に示す。
【００６２】
【表１】
2015111792.tif 000003
表１は、「配信回」フィールド、「余り＝０」フィールド、「余り＝１」フィールド、「余り＝２」フィールド、及び、「余り＝３」フィールドを備える。「配信回」フィールドは、何回目のブロック送信かを示す値が設定されている。ここでは、１２ブロックから成るファームウェアを送信することから、「１」〜「１２」が設定されている。「余り＝０」フィールドには、（装置ＩＤ）Ｍｏｄ（開始分散値）の値が「０」であるゲートウェイＧＷが送信するブロック番号が設定されている。例えば、「配信回」フィールドに「１」が設定されている行の「余り＝０」フィールドには、「１」が設定されていることから、「（装置ＩＤ）Ｍｏｄ（開始分散値）」の値が「０」であるゲートウェイＧＷが最初に送信するのは、ブロック番号「１」のブロックであることになる。また、「余り＝１」フィールドには、「（装置ＩＤ）Ｍｏｄ（開始分散値）」の値が「１」であるゲートウェイＧＷが送信するブロック番号が設定されており、例えば、「配信回」フィールドに「４」が設定されている行の「余り＝１」フィールドには、「７」が設定されていることから、「（装置ＩＤ）Ｍｏｄ（開始分散値）」の値が「１」であるゲートウェイＧＷが、４回目に送信するのは、ブロック番号「７」のブロックであることになる。尚、「余り＝２」フィールドには、「（装置ＩＤ）Ｍｏｄ（開始分散値）」の値が「２」であるゲートウェイＧＷが送信するブロック番号が設定されており、「余り＝３」フィールドには、（装置ＩＤ）Ｍｏｄ（開始分散値）の値が「３」であるゲートウェイＧＷが送信するブロック番号が設定されている。
【００６３】
尚、表１では、開始分散値を「４」としたことから、余りが０〜３の４つの場合が示されている。
【００６４】
例えば、４台のゲートウェイＧＷを用い、それぞれのゲートウェイＧＷで算出した余りが「０」、「１」、「２」、「３」である場合には、表１に示すように、「配信回」フィールドの「１」、「２」、「３」が示す３回の送信を行えば、ブロック番号「１」〜「１２」のブロックが送信されることがわかる。尚、装置ＩＤによっては、複数のゲートウェイＧＷが同じ余りとなる場合もあるが、その場合でも、１２回の配信を行うことなく、全ブロックが送信されることになる。
【００６５】
このように、複数のゲートウェイＧＷを用いてファームウェアを配信する場合、各ゲートウェイＧＷが送信するブロックのブロック番号を分散することで、短時間でブロックをネットワーク上に流すことが可能となる。
【００６６】
ネットワーク上に流されたブロックは、各端局Ｔによって、転送されていくことになる。端局Ｔは、常にキャリアセンスを行い、キャリアが空いたことを確認し、決められた期間アイドル状態が続くと、フレームの送信権を獲得したと判断する。そして、送信権を獲得した端局Ｔは、ブロックを他の端局Ｔに向けてブロードキャストする。
【００６７】
従って、自端局Ｔが送信したブロック（フレーム）と、自端局Ｔがキャリアセンスできる範囲に在る端局Ｔが送信するブロック（フレーム）との間では、フレーム衝突は発生しない。しかし、キャリアセンスできる範囲に無い端局Ｔが送信するブロック（フレーム）とは、フレーム衝突が発生する可能性がある。フレーム衝突が発生すると、端局Ｔが受信するブロックのブロック番号に欠番が発生することになる。この場合、ゲートウェイＧＷが全ブロックを送信した後に、端局ＴがゲートウェイＧＷに再送要求を出して欠番のブロックを受信することになり、全端局Ｔのファームウェアの更新完了までの時間が長期化する可能性がある。
【００６８】
従って、実施形態では、ゲートウェイＧＷ間で、ブロック送信のタイミングをずらすこと、つまり、送信タイミングを分散させて、フレーム衝突をできるだけ回避する。
【００６９】
＜送信タイミング分散方法＞
以下、ゲートウェイＧＷがブロックを送信するタイミングを分散させる方法を説明する。
【００７０】
実施形態では、以下の式（２）を用いて、送信を開始するタイミングを求める。具体的には、配信可能期間の開始時刻から遅らせる時間（以下、「分散時間」という。）を算出する。
【００７１】
ゲートウェイＧＷは、配信可能期間の開始時刻となったら、算出した分散時間だけ遅延させて、所定周期（３０秒）でブロックを送信する。
分散時間＝（装置ＩＤ）Ｍｏｄ（開始分散値）      ・・・（２）
ここで、開始分散値は、「１０」とする。この開始分散値の値は、ゲートウェイＧＷの数、ブロックの数等を考慮して、適切な値とする。
【００７２】
例えば、算出された分散時間が９秒であれば、配信可能期間の開始時刻から９秒後に、最初のブロックを送信し、３０秒後に、つまり、送信開始時刻から３９秒後に、２番目のブロックを送信する。
【００７３】
このように、ゲートウェイＧＷ間で、ブロック送信のタイミングを分散させることにより、フレーム衝突をできるだけ回避させ、複数のゲートウェイＧＷから送信されたブロックの端局Ｔによる受信成功率の向上を図っている。
【００７４】
＜構成＞
図６は、端局Ｔの機能ブロックの構成例を示す図である。端局Ｔは、通信装置１０００、電力量計２０００、及び、負荷開閉器３０００を備える。破線の矢印は、一部の端局ＴがゲートウェイＧＷ（集約装置）と通信を行うことを示す。
【００７５】
通信装置１０００は、無線通信制御部１１００、無線通信部１２００、タイマー１３００、機内通信制御部１４００、インタフェース１４１０、インタフェース１４２０、外部インタフェース１５００、入力部１５１０、リンク情報記憶部１８００、ブロック記憶手段１８１０、及び、電力量情報記憶部１９００を備える。
【００７６】
無線通信制御部１１００は、ファームウェア更新部１１１０、ブロック保存部１１２０、及び、ブロック転送部１１３０を有し、各機能部を制御して、無線通信の制御を行う機能を有する。例えば、所定期間ごとに、例えば、３０分ごとに、電力量情報記憶部１９００に記憶されている電力量を読み出して、端局Ｔが属するゲートウェイＧＷ宛のパケットを無線通信部１２００に送信させるなどである。所定期間が経過したことの検出は、タイマー１３００からの割り込みによって検知する。
【００７７】
ファームウェア更新部１１１０は、主に４つの機能を有する。１つ目の機能は、ゲートウェイＧＷからファームウェア配信の開始通知を受信すると、無線通信制御部１１００を介して受信したファームウェアのブロックを、ブロック保存部１１２０に指示してブロック記憶手段１８１０に記憶させる機能である。この際、ファームウェア更新部１１１０は、受信したブロックが、自装置用のファームウェアのブロックであるか否かを判断し、自装置用のファームウェアのブロックである場合に、ブロック保存部１１２０に記憶させる。尚、ゲートウェイＧＷからファームウェア配信の開始通知は、図１１（ｂ）の制御データとして、ファームウェア更新処理を行う端局Ｔに送信される。
【００７８】
ここで、図１１（ｃ）に、端局Ｔが受信する、つまり、ゲートウェイＧＷが送信するブロックデータの例を示す。このブロックデータには、宛先として全宛先（ブロードキャストアドレス）、データ種別として「ファームウェア」、ファームウェア種類として「メーカＡ」、全ブロック数としてファームウェアのブロック分割数、ブロック番号としてブロックの番号、ブロックとしてブロック化されたプログラム等が含まれる。ファームウェア種類は、メーカ名に限らず、ファームウェアを識別できるものであればよい。ファームウェア更新部１１１０は、ブロックデータ内のファームウェア種類に設定されている情報を参照して、自装置用のファームウェアか否かを判断する。
【００７９】
２つ目の機能は、ブロック保存部１１２０から全ブロックを記憶した旨の通知を受けると、ブロック記憶手段１８１０に記憶されているブロックを結合し、結合したファームウェアプログラムを用いて、自装置のファームウェアを更新する機能である。自装置のファームウェアを更新すると、ファームウェア更新部１１１０は、自装置が属しているゲートウェイＧＷに向けて、ファームウェアの更新完了を通知するデータを送信する。
【００８０】
３つ目の機能は、受信できなかった（欠番の）ブロック番号のブロックをゲートウェイＧＷから取得する機能である。詳細には、ファームウェア配信の開始通知を受信してから予め定められた配信処理時間が経過しても、全ブロックを受け取らなかった場合、つまり、ブロック保存部１１２０からの全ブロックを記憶した旨の通知を、受け取らなかった場合には、ファームウェア更新部１１１０は、ブロック保存部１１２０に欠番のブロック番号を問い合わせ、自装置が属するゲートウェイＧＷに再送要求を送信する。この配信処理時間は、ファームウェアプログラムの全ブロックが全端局Ｔに配信されると推定される時間であり、端局Ｔの数、ブロックの数等を考慮して、予め定められる。ファームウェア更新部１１１０は、配信処理時間が経過したことを、タイマー１３００からの割り込みによって検知する。
【００８１】
４つ目の機能は、ゲートウェイＧＷからファームウェア配信の開始通知を受信してから、配信処理時間が経過するまでの間、受信したブロックデータをブロック転送部１１３０に転送させる機能である。
【００８２】
ブロック保存部１１２０は、ファームウェア更新部１１１０から渡されたブロックを、ブロック記憶手段１８１０に記憶し、管理する機能を有する。ブロック保存部１１２０は、ブロック番号を管理し、既に記憶されているブロックはブロック記憶手段１８１０に記憶しない。ブロック保存部１１２０は、全ブロックを記憶すると、その旨をファームウェア更新部１１１０に通知する。また、ブロック保存部１１２０は、ファームウェア更新部１１１０からの問い合わせに応じて、ブロック番号に欠番が発生している場合には、その欠番の番号を通知する。
【００８３】
ブロック転送部１１３０は、ファームウェア更新部１１１０から渡されたブロックデータ（図１１（ｃ）参照）に、ホップ数を更新する等の必要な処理を行い、無線通信制御部１１００、及び、無線通信部１２００を介して送信する機能を有する。
【００８４】
無線通信部１２００は、他の端局Ｔ（図６の「端局Ｔ’」）、又は、ゲートウェイＧＷと、無線ＬＡＮ規格によりアドホックモードでの通信を行う機能を有する。
【００８５】
タイマー１３００は、無線通信制御部１１００、及び、機内通信制御部１４００に時刻を通知し、また、予め定められた所定周期での割り込みを掛ける機能を有する。例えば、無線通信制御部１１００及びに３０分毎に割り込みを掛ける。機内通信制御部１４００に５分毎に割り込みを掛ける等である。無線通信制御部１１００は、割り込みのタイミングで電力量情報記憶部１９００から３０分間の検針データを読み出して送信し、機内通信制御部１４００は、割り込みのタイミングで電力量計２０００から５分間の受電電力量を取得して電力量情報記憶部１９００に記憶させる。
【００８６】
インタフェース１４１０は、電力量計２０００から検針データを受信するインタフェースであり、インタフェース１４２０は、負荷開閉器３０００に制御データを送信するインタフェースである。
【００８７】
機内通信制御部１４００は、インタフェース１４１０、及び、インタフェース１４２０を介して、電力量計２０００、及び、負荷開閉器３０００との通信を制御する機能を有する。また、機内通信制御部１４００は、電力量計２０００から受電電力量を定期的に取得して電力量情報記憶部１９００に記憶させておく機能を有する。
【００８８】
外部インタフェース１５００は、外部の設定ツール等と接続するインタフェースであり、端局Ｔの初期設定時等に初期値等を設定するために用いる。
【００８９】
入力部１５１０は、ユーザの操作を受け付け、ユーザ操作に応じて、リンク情報記憶部１８００、及び、電力量情報記憶部１９００にデータを記憶させたり、記憶されているデータを書き換えたりする機能を有する。
【００９０】
リンク情報記憶部１８００は、図３で示すようなネットワーク全体のトポロジー情報など、データの送受信に必要な情報を、適時更新しながら記憶しておく機能を有する。
【００９１】
ブロック記憶手段１８１０は、ファームウェアのブロックを記憶しておく機能を有する。
【００９２】
電力量情報記憶部１９００は、機内通信制御部１４００が電力量計２０００から取得した電力量を記憶しておく機能を有する。
【００９３】
図７は、ゲートウェイＧＷの機能ブロックの構成例を示す図である。ゲートウェイＧＷは、無線通信制御部４１００、無線通信部１２００、タイマー１３００、外部インタフェース１５００、入力部１５１０、外部通信制御部４０００、リンク情報記憶部１８００、検針データ記憶部１８５０、及び、ファームウェア記憶部４２００を備える。
【００９４】
無線通信制御部４１００は、ファームウェア配信部４１１０（ブロック送信手段）、ファームウェア管理部４１２０（制御手段）、及び、ファームウェア分割部４１３０を有し、各機能部を制御して、無線通信の制御を行う機能を有する。また、無線通信制御部４１００は、端局Ｔから受信した検針データを検針データ記憶部１８５０に記憶させる。無線通信制御部４１００は、所定のタイミングで、検針データ記憶部１８５０に記憶されている検針データを読み出して、外部通信制御部４０００を介してサーバ装置１に送信し、また、外部通信制御部４０００を介して受信されたサーバ装置１からのパケットを、無線通信部１２００を介して端局Ｔに送信する。
【００９５】
ファームウェア配信部４１１０は、主に３つの機能を有する。１つ目の機能は、サーバ装置１から外部通信制御部４０００を介してファームウェアプログラムを受信すると、ファームウェア管理部４１２０に渡してファームウェア記憶部４２００に記憶させる機能である。
【００９６】
２つ目の機能は、ファームウェア管理部４１２０から１ブロックを取得し、端局Ｔに向けて送信する機能である。詳細には、ファームウェア配信部４１１０は、ファームウェア配信の開始通知を自ＧＷに属する端局Ｔに向けて送信し、その後、ファームウェア管理部４１２０から１ブロックを取得してブロックデータ（図１１（ｃ））を作成し、無線通信部１２００を介して全方位に送信する。ファームウェア配信部４１１０は、予め定められた配信可能期間に、所定周期で１ブロックずつ送信する。この際、配信可能期間の開始時刻から分散時間経過後に、ブロックの送信を開始する。分散時間は、ファームウェア管理部４１２０から通知される。実施形態では、上述のように、配信可能期間は、各時間の２０分〜６０分であり、所定周期は３０秒とする。尚、配信可能期間の開始時刻及び終了時刻は、タイマー１３００からの割り込みで検知するものとする。
【００９７】
３つ目の機能は、全ブロックの送信を終了後、自ＧＷに属する端局Ｔからブロックの再送要求を受けると、そのブロック番号のブロックをファームウェア管理部４１２０から取得して、その端局Ｔに向けて送信する機能である。
【００９８】
ファームウェア管理部４１２０は、主に４つの機能を有する。１つ目は、ファームウェア配信部４１１０から渡されたファームウェアプログラムを、ファームウェア分割部４１３０に渡してブロック分割させ、各ブロックをファームウェア記憶部４２００に記憶させる機能である。分割数等の分割に必要な情報は、ファームウェアプログラムに含まれているものとする。
【００９９】
２つ目の機能は、分割したファームウェアのブロックのうち、どのブロックを配信するかを判断し、１ブロックずつファームウェア記憶部４２００から読み出してファームウェア配信部４１１０に渡す機能である。上述の式（１）を用いて、最初に送信するブロック番号を算出する。
【０１００】
３つ目の機能は、上述の式（２）を用いて分散時間を算出し、ファームウェア配信部４１１０に通知する機能である。
【０１０１】
４つ目の機能は、ファームウェア配信部４１１０からブロック番号を指定されてブロックを要求されると、ファームウェア記憶部４２００から該当のブロックを読み出して、ファームウェア配信部４１１０に渡す機能である。
【０１０２】
無線通信部１２００、タイマー１３００、外部インタフェース１５００、入力部１５１０、リンク情報記憶部１８００は、通信装置１０００の無線通信制御部１１００、無線通信部１２００、タイマー１３００、外部インタフェース１５００、入力部１５１０、リンク情報記憶部１８００と同様の機能を有する。
【０１０３】
外部通信制御部４０００は、サーバ装置１と通信する機能を有する。
【０１０４】
検針データ記憶部１８５０は、自装置であるゲートウェイＧＷに属する端局Ｔから送信されてきた検針データを記憶しておく機能を有する。
【０１０５】
実施形態の通信装置１０００、及び、ゲートウェイＧＷはそれぞれ、例えば、コンピュータを用いて構成可能であり、ハードディスク等の記憶部（不図示）に格納されているゲートウェイＧＷ決定方法等をプログラムしたソフトウェアを、ＣＰＵにより実行することによって上述の無線通信制御部１１００等がコンピュータに機能的に構成される。
【０１０６】
＜データ＞
以下、通信装置１０００で用いる主なデータについて、図８を用いて説明する。
【０１０７】
図８は、自装置情報テーブル１８１０の構成及び内容の例を示す図である。自装置情報テーブル１８１０は、リンク情報記憶部１８００に記憶されている。
【０１０８】
自装置情報テーブル１８１０は、項目１８１１、及び、内容１８１２を有する。
【０１０９】
項目１８１１は、自装置に関する情報の項目を示す。「自装置アドレス」は、自装置の宛先アドレスを示す。「ファームウェア種類」は、自装置が用いているファームウェアを特定する識別子を示す。
【０１１０】
内容１８１２は、項目１８１１が示す項目の内容を示す。例えば、項目１８１１が「自装置アドレス」の内容１８１２として「Ｔ８−Ａｄｄｒ」が設定されているので、この自装置情報テーブル１８１０を記憶している端局Ｔの宛先は「Ｔ８−Ａｄｄｒ」であることになる。従って、宛先として「Ｔ８−Ａｄｄｒ」が設定されたパケットは、自装置宛のパケットであると判断する。また、項目１８１１が「ファームウェア種類」の内容１８１２として「メーカＢ」が設定されているので、この自装置情報テーブル１８１０を記憶している端局Ｔが使用しているファームウェアの識別子は「メーカＢ」であることになる。
【０１１１】
＜動作＞
以下、ゲートウェイＧＷ、及び、端局Ｔの通信装置１０００の動作について、図９、及び、図１０を用いて説明する。
【０１１２】
図９は、ゲートウェイＧＷが行うファームウェア配信処理のフローチャートである。また、図１０は、端局Ｔの通信装置１０００が行うファームウェア更新処理のフローチャートである。
【０１１３】
まず、図９を用いて、ゲートウェイＧＷが行うファームウェア配信処理を説明する。
【０１１４】
ゲートウェイＧＷの無線通信制御部４１００は、外部通信制御部４０００を介してサーバ装置１からファームウェアプログラムを受信すると、ファームウェア配信部４１１０に渡して、ファームウェアの配信処理を依頼する（ステップＳ３０）。
【０１１５】
依頼を受けたファームウェア配信部４１１０は、ファームウェア配信の開始通知を、自ＧＷに属する端局Ｔに向けて送信する（ステップＳ３１）。ファームウェア配信部４１１０は、必要に応じて、各端局Ｔからの応答を確認する。
【０１１６】
ファームウェア配信部４１１０は、無線通信制御部４１００から渡されたファームウェアプログラムをファームウェア管理部４１２０に渡し、保存を依頼する。
【０１１７】
依頼を受けたファームウェア管理部４１２０は、渡されたファームウェアプログラムをファームウェア分割部４１３０に渡して、分割を依頼する。分割を依頼されたファームウェア分割部４１３０は、ファームウェアプログラムに含まれている分割に必要な情報に基づいてファームウェアプログラムをブロック化し、ファームウェア記憶部４２００に記憶する（ステップＳ３２）。
【０１１８】
次に、ファームウェア管理部４１２０は、式（１）を用いて、配信開始のブロック番号を算出し、作業領域に記憶しておく（ステップＳ３３）。また、ファームウェア管理部４１２０は、式（２）を用いて、分散時間を算出し、ファームウェア管理部４１２０に通知する（ステップＳ３４）。
【０１１９】
そして、ファームウェア配信部４１１０は、配信可能期間の開始時刻をタイマー１３００からの割り込みで検知すると（ステップＳ３５：Ｙｅｓ）、分散時間の経過を待って（ステップＳ３６）、ファームウェア管理部４１２０から最初に送信するブロック番号のブロックを取得し、ブロックデータを作成して無線通信部１２００を介して全方位に送信する（ステップＳ３７）。
【０１２０】
次に、ファームウェア配信部４１１０は、次に送信するブロックをファームウェア管理部４１２０に要求し、次に送信するブロックを取得すると（ステップＳ３８：Ｎｏ）、所定周期（３０秒）の経過を待つ（ステップＳ３９）。所定周期の経過を待つ間に、配信可能期間の終了時刻の割り込みが無い場合は（ステップＳ４０：Ｎｏ）、ブロックデータ（図１１（ｃ））を作成して無線通信部１２００を介して全方位に送信する（ステップＳ３７）。
【０１２１】
ファームウェア配信部４１１０は、所定周期（３０秒）の経過を待つ間に、配信可能期間の終了時刻の割り込みがあった場合は（ステップＳ４０：Ｎｏ）、ステップＳ３５に戻り、配信可能期間の開始時刻を示すタイマー１３００からの割り込みを待つ。
【０１２２】
また、ステップＳ３８において、次に送信するブロックをファームウェア管理部４１２０に要求し、全ブロック配信済みの旨の通知を受けると（ステップＳ３８：Ｙｅｓ）、ファームウェア配信部４１１０は、自ＧＷに属する端局Ｔからのブロック再送要求を待つ。要求を受けると、要求されたブロック番号のブロックをファームウェア管理部４１２０から取得して、再送を要求している端局Ｔに向けて送信する（ステップＳ４１）。ステップＳ３１においてファームウェア配信の開始通知を送信してから、予め定められた配信期間が経過したら、ファームウェアの再送処理を終了する。
【０１２３】
次に、図１０を用いて、端局Ｔの通信装置１０００が行うファームウェア更新処理を説明する。
【０１２４】
端局Ｔの無線通信制御部１１００は、無線通信制御部１１００を介して、自装置が属するゲートウェイＧＷからファームウェア配信の開始通知を受信すると、ファームウェア更新部１１１０にファームウェアの更新を依頼する（ステップＳ１０）。
【０１２５】
依頼を受けたファームウェア更新部１１１０は、配信処理時間が経過したことを示す割り込み前に（ステップＳ１１：Ｎｏ）、ブロックデータを受信した場合（ステップＳ１２：Ｙｅｓ）、受信したブロックデータをブロック転送部１１３０に渡して、転送を依頼する。依頼を受けたブロック転送部１１３０は、渡されたブロックデータに必要な処理を行い、無線通信部１２００を介して全方位に送信する（ステップＳ１３）。
【０１２６】
次に、ファームウェア更新部１１１０は、受信したブロックデータに含まれているファームウェアのブロックが、自装置用のファームウェアのブロックであるか否かを判断し（ステップＳ１４）、自装置用のブロックでないと判断した場合は（ステップＳ１４：Ｎｏ）、ステップＳ１１からの処理を行う。一方、自装置用のブロックであると判断した場合は（ステップＳ１４：Ｙｅｓ）、ブロック保存部１１２０にブロックの保存を依頼する。
【０１２７】
依頼を受けたブロック保存部１１２０は、受信したブロックのブロック番号のブロックが、既にブロック記憶手段１８１０に保存してある場合は（ステップＳ１５：Ｙｅｓ）、ステップＳ１１からの処理を行う。一方、受信したブロックのブロック番号のブロックが、未だブロック記憶手段１８１０に保存してない場合は（ステップＳ１５：Ｎｏ）、受信したブロックデータ内のブロックをブロック記憶手段１８１０に記憶する（ステップＳ１６）。そして、ブロック保存部１１２０は、全ブロックが保存された場合には（ステップＳ１７：Ｙｅｓ）、その旨をファームウェア更新部１１１０に通知し、未だ全ブロックが保存されていない場合には（ステップＳ１７：Ｎｏ）、ステップＳ１１からの処理を行う。
【０１２８】
ステップＳ１７において、全ブロックが保存された旨の通知をブロック保存部１１２０から受けたファームウェア更新部１１１０は、ブロック記憶手段１８１０に記憶されている全ブロックを結合し（ステップＳ１９）、自装置のファームウェアを更新し（ステップＳ２０）、ファームウェアの更新完了通知を、自装置が属するゲートウェイＧＷに対して送信する（ステップＳ２１）。
【０１２９】
ステップＳ１１において、配信処理時間（一定時間）が経過したことを示す割り込みを受けた場合（ステップＳ１１：Ｙｅｓ）、ファームウェア更新部１１１０は、ブロック保存部１１２０から欠番のブロック番号を取得し、欠番のブロック番号のブロックの再送要求を、自装置が属するゲートウェイＧＷに送信する。欠番のブロック番号のブロックを受信したら（ステップＳ１８）、ファームウェア更新部１１１０は、ステップ１９からの処理を行う。
【０１３０】
尚、実施形態では、ファームウェアを配信することとしているが、ファームウェアに限らず、他のプログラムやデータであってもよい。
【０１３１】
また、実施形態では、通信装置１０００はマルチホップ形式でゲートウェイＧＷや他の通信装置１０００と無線通信することとしているが、マルチホップ形式に限らない。
【０１３２】
また、実施形態では、送信を開始するブロック番号を、式（１）を用いて求めているが、他の方法でブロック番号を分散させてもよい。例えば、「（装置ＩＤ）Ｍｏｄ（開始分散値）」で求めた値毎に、送信するブロック番号の順番を予め決めて、記憶しておく等である。
【０１３３】
また、実施形態では、各端局Ｔは、ファームウェア配信の開始通知を受信してから予め定められた配信処理時間が経過したときに、ブロックの欠損を判断し、欠損しているブロックをゲートウェイＧＷに要求することとしているが、ブロックを一定時間受信しなかった場合に、ブロックの欠損を判断することとしてもよい。また、例えば、ゲートウェイＧＷが全ブロックを送信した後に、自装置に属する端局Ｔに対して、ブロックの欠損がある場合は、要求を行うよう依頼することとしてもよい。この場合、端局Ｔは、ゲートウェイＧＷから依頼を受けたら、ブロックの欠損を判断し、欠損しているブロックをゲートウェイＧＷに要求する。
【０１３４】
本発明を表現するために、上述において図面を参照しながら実施形態を通して本発明を適切且つ十分に説明したが、当業者であれば上述の実施形態を変更および／または改良することは容易に為し得ることであると認識すべきである。したがって、当業者が実施する変更形態または改良形態が、請求の範囲に記載された請求項の権利範囲を離脱するレベルのものでない限り、当該変更形態または当該改良形態は、当該請求項の権利範囲に包括されると解釈される。
【符号の説明】
【０１３５】
ＧＷ  ゲートウェイ（集約装置）
Ｔ  端局
Ｈ  電力需要家
１  サーバ装置
２  ネットワーク
１０００  通信装置
１１００  ４１００  無線通信制御部
１１１０  ファームウェア更新部
１１２０  ブロック保存部
１１３０  ブロック転送部
１２００  無線通信部
１３００  タイマー
１４００  機内通信制御部
１５００  外部インタフェース
１８００  リンク情報記憶部
１８１０  ブロック記憶手段
１９００  電力量情報記憶部
２０００  電力量計
３０００  負荷開閉器
４０００  外部通信制御部
４１１０  ファームウェア配信部
４１２０  ファームウェア管理部
４１３０  ファームウェア分割部
４２００  ファームウェア記憶部
【図１】
2015111792.tif 000004
【図２】
2015111792.tif 000005
【図３】
2015111792.tif 000006
【図４】
2015111792.tif 000007
【図５】
2015111792.tif 000008
【図６】
2015111792.tif 000009
【図７】
2015111792.tif 000010
【図８】
2015111792.tif 000011
【図９】
2015111792.tif 000012
【図１０】
2015111792.tif 000013
【図１１】
2015111792.tif 000014
【図１２】
2015111792.tif 000015