(57)【特許請求の範囲】
【請求項１】
無線通信により保守端末から通信ユニットに対してファームウェアを送信するファームウェアのアップデート方法であって、
前記保守端末と前記通信ユニットとの間で無線リンクを確立するリンク確立ステップと、
前記保守端末において前記ファームウェアを複数の分割ブロックに分割する分割ステップと、
前記保守端末において前記分割ステップにより分割した前記分割ブロックに識別情報を付与する付与ステップと、
前記保守端末において前記付与ステップにより識別情報が付与された前記分割ブロックを同報通信により順次に前記通信ユニットに送信する送信ステップと、
前記通信ユニットが前記分割ブロックを受信する受信ステップと、
前記通信ユニットにおいて前記分割ブロックに付与された識別情報を基に、抜けブロックの存在の有無を管理する管理ステップと、
全ての前記分割ブロックの送信が完了した後、前記保守端末が前記無線リンクを確立した全ての前記通信ユニットに対して、順次、前記抜けブロックの存在の有無を確認する確認処理を実行し、ある前記通信ユニットに対する前記確認処理に失敗した場合には次の前記通信ユニットに対して前記確認処理を実行し、前記確認処理に失敗した前記通信ユニットに対して一定時間の経過後に前記確認処理を再度実行する確認ステップと、
前記確認ステップにより前記抜けブロックの存在が確認された前記通信ユニットに対して、前記保守端末が前記抜けブロックのみを再送する再送ステップとを有することを特徴とするファームウェアのアップデート方法。
【請求項２】
前記送信ステップは、１つの前記分割ブロックにおける同報通信を複数回実行することを特徴とする請求項１に記載のファームウェアのアップデート方法。
【請求項３】
前記再送ステップは、前記抜けブロックの再送回数に所定の上限回数を設けることを特徴とする請求項１又は２の何れか１項に記載のファームウェアのアップデート方法。
【請求項４】
前記保守端末から前記無線リンクを確立した全ての前記通信ユニットに対して、所定時刻に前記ファームウェアをアップデートするように指示する指示ステップを更に備えることを特徴とする請求項１乃至３の何れか１項に記載のファームウェアのアップデート方法。
【請求項５】
前記保守端末は、前記無線リンクを確立した全ての前記通信ユニットの前記ファームウェアのバージョンを管理し、全ての前記通信ユニットのバージョンが一致する場合にのみ、各々の前記通信ユニットに対して前記ファームウェアのアップデートを指示するアップデート指示ステップを更に備えることを特徴とする請求項１乃至４の何れか１項に記載のファームウェアのアップデート方法。
【請求項６】
無線通信により通信を行う保守端末及び通信ユニットを備える分散システムであって、
前記保守端末及び前記通信ユニットは、両者の間で無線リンクを確立するリンク確立手段を備え、
前記保守端末は、
前記通信ユニットに対して送信するファームウェアを複数の分割ブロックに分割する分割手段と、
前記分割手段により分割された前記分割ブロックに識別情報を付与する付与手段と、
前記付与手段により識別情報が付与された前記分割ブロックを同報通信により順次に前記子局に送信する送信手段とを備え、
前記通信ユニットは、
前記分割ブロックを受信する受信手段と、
前記分割ブロックに付与された識別情報を基に、抜けブロックの存在の有無を管理する管理手段とを備え、
前記保守端末は、
全ての前記分割ブロックの送信が完了した後、前記無線リンクを確立した全ての前記通信ユニットに対して、順次、前記抜けブロックの存在の有無を確認する確認処理を実行し、ある前記通信ユニットに対する前記確認処理に失敗した場合には次の前記通信ユニットに対して前記確認処理を実行し、前記確認処理に失敗した前記通信ユニットに対して一定時間の経過後に前記確認処理を再度実行する確認手段と、
前記確認手段により前記抜けブロックの存在が確認された前記通信ユニットに対して前記抜けブロックのみ再送する再送手段とを更に備えることを特徴とする分散システム。
【請求項７】
請求項１に記載のファームウェアアップデート方法を実行することを特徴とする保守端末。
【請求項８】
請求項１に記載のファームウェアアップデート方法を実行することを特徴とする通信ユニット。
【請求項９】
無線通信により通信を行う保守端末及び通信ユニットに、両者の間で無線リンクを確立させるリンク確立ステップを実行させ、
前記保守端末に、
ファームウェアを複数の分割ブロックに分割する分割ステップと、
前記分割ステップにより分割された前記分割ブロックに識別情報を付与する付与ステップと、
前記付与ステップにより識別情報が付与された前記分割ブロックを同報通信により順次に前記通信ユニットに送信する送信ステップとを実行させ、
前記通信ユニットに、
前記分割ブロックを受信する受信ステップと、
前記分割ブロックに付与された識別情報を基に、抜けブロックの存在の有無を管理する管理ステップとを実行させ、
前記保守端末に、
全ての前記分割ブロックの送信が完了した後、前記無線リンクを確立した全ての前記通信ユニットに対して、順次、前記抜けブロックの存在の有無を確認する確認処理を実行し、ある前記通信ユニットに対する前記確認処理に失敗した場合には次の前記通信ユニットに対して前記確認処理を実行し、前記確認処理に失敗した前記通信ユニットに対して一定時間の経過後に前記確認処理を再度実行する確認ステップと、
前記確認ステップにより前記抜けブロックの存在が確認された前記通信ユニットに対して前記抜けブロックを再送する再送ステップとを更に実行させることを特徴とするファームウェアのアップデートプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信により保守端末から通信ユニットに対してファームウェアを送信する技術に関するものである。
【背景技術】
【０００２】
近年、戸建住宅及び集合住宅の各住戸や、オフィスビル・商業ビルにおける各テナントが需要家である場合において、電気、ガス、水道などの検針メータに無線通信を行う通信装置を接続し、広域通信網などの通信網を介して、検診メータの検針情報（つまり、消費電力量、ガス使用量、水道使用量など）を検診用のサーバ装置に送信することで、遠隔での検針を可能にした自動検針システムが知られている（例えば、特許文献１）。
【０００３】
このようなシステムにおいては、例えば通信方式の改変などに伴い、検針メータに接続された通信装置のファームウェアをアップデートさせる必要が生じる場合がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１４７８４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のシステムにおいて各検針メータに接続された通信装置のファームウェアをアップデートさせる場合には、保守員が個々の各通信装置と保守用の保守端末とを通信用のケーブルによって有線接続し、アップデート用のファームウェアをそれぞれ個別に転送することにより行われていた。そのため、例えば膨大な数の検針メータが設置されている大型の集合住宅においては、アップデート作業に膨大な手間と時間がかかるという問題があった。また、戸建住宅であっても、広範囲にわたって存在する個々の住戸を順次にまわってアップデートする必要があり、非常に手間がかかるという問題があった。
【０００６】
本発明は、上記事由に鑑みて為されたものであり、その目的とするところは、検針メータなどに接続された通信装置のファームウェアに関して、ファームウェアのアップデート作業の手間や時間を低減することが可能なファームウェアのアップデート方法、分散システム、保守端末、通信ユニット、及び、ファームウェアのアップデートプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、請求項１の発明では、無線通信により保守端末から通信ユニットに対してファームウェアを送信するファームウェアのアップデート方法であって、前記保守端末と前記通信ユニットとの間で無線リンクを確立するリンク確立ステップと、前記保守端末において前記ファームウェアを複数の分割ブロックに分割する分割ステップと、前記保守端末において前記分割ステップにより分割した前記分割ブロックに識別情報を付与する付与ステップと、前記保守端末において前記付与ステップにより識別情報が付与された前記分割ブロックを同報通信により順次に前記通信ユニットに送信する送信ステップと、前記通信ユニットが前記分割ブロックを受信する受信ステップと、前記通信ユニットにおいて前記分割ブロックに付与された識別情報を基に、抜けブロックの存在の有無を管理する管理ステップと、全ての前記分割ブロックの送信が完了した後、前記保守端末が前記無線リンクを確立した全ての前記通信ユニットに対して、順次、前記抜けブロックの存在の有無を確認する確認処理を実行し、ある前記通信ユニットに対する前記確認処理に失敗した場合には次の前記通信ユニットに対して前記確認処理を実行し、前記確認処理に失敗した前記通信ユニットに対して一定時間の経過後に前記確認処理を再度実行する確認ステップと、前記確認ステップにより前記抜けブロックの存在が確認された前記通信ユニットに対して、前記保守端末が前記抜けブロックのみを再送する再送ステップとを有することを特徴とする。
【０００８】
この発明によれば、保守端末と通信ユニットとの間でリンク確立ステップによって無線リンクを確立し、保守端末が通信ユニットに対してファームウェアを送信するので、各通信ユニットに保守端末を有線接続してファームウェアを送信するといった煩雑な作業を行わなくても通信ユニットにファームウェアを送信することができる。
【０００９】
また、ファームウェアは分割して同報通信により送信されるため、複数の通信ユニットに速やかにファームウェアを送信することができる。なお、同報通信においてフラッディング（Ｆｌｏｏｄｉｎｇ）をベースにした通信技術を用いれば、多数の通信ユニットに対してより速やかにファームウェアを送信することができる。また、ファームウェアを分割した分割ブロックには識別情報が付与されているので、保守端末と各通信ユニットとは識別情報によって分割ブロックの抜けを管理することができ、保守端末が全ての通信ユニットに抜けブロックの存在を確認することで、各通信ユニットにおける抜けブロックの存在を正確に把握することができる。さらに、保守端末が抜けブロックが存在する通信ユニットに対して、抜けブロックのみを送信することで、通信量を低く抑えつつ、該当する通信ユニットに抜けブロックを確実に送信することができる。また、ある通信ユニットにおいて抜けブロックが存在するか否かを確認する確認処理に失敗した場合には、次の通信ユニットに対して確認処理が実行されるので、通信ユニットに対する確認処理を速やかに実行することができる。また、無線通信の特徴として、通信ユニットの通信可能な時間帯が、時間に応じて発生する無線ノイズの影響により変動することがあるが、一定時間経過後に再度確認処理を行うことで通信ユニットとの通信に成功できる可能性を高めることができる。
【００１０】
請求項２の発明では、請求項１に記載の発明において、前記送信ステップは、１つの分割ブロックにおける同報通信を複数回実行することを特徴とする。
【００１１】
この発明によれば、同報通信によって１つの分割ブロックを複数回送信しているので、通信ユニットに分割ブロックが送信される確率を高めることができる。
【００１４】
請求項３の発明では、請求項１又は２の何れか１項に記載の発明において、前記再送ステップは、前記抜けブロックの再送回数に所定の上限回数を設けることを特徴とする。
【００１５】
この発明によれば、ある通信ユニットにおける抜けブロックの再送回数が上限回数に達すると、その通信ユニットへの再送処理が打ち切られるため、当該通信ユニットに対する再送処理が完了しないために、他の通信ユニットに対するファームウェアのアップデート処理が完了されなくなるような事態を回避することができる。
【００１６】
請求項４の発明では、請求項１乃至３の何れか１項に記載の発明において、前記保守端末から前記無線リンクを確立した全ての通信ユニットに対して、所定時刻に前記ファームウェアをアップデートするように指示する指示ステップを更に備えることを特徴とする。
【００１７】
この発明によれば、全ての通信ユニットが所定時刻になると一斉にファームウェアをアップデートするため、各通信ユニット間でファームウェアのバージョンが相違するといった事態を回避することができる。
【００１８】
請求項５の発明では、請求項１乃至４の何れか１項に記載の発明において、前記保守端末は、前記無線リンクを確立した全ての通信ユニットのファームウェアのバージョンを管理し、全ての通信ユニットのバージョンが一致する場合にのみ、各通信ユニットに対してファームウェアのアップデートを指示するアップデート指示ステップを更に備えることを特徴とする。
【００１９】
この発明によれば、各通信ユニット間でファームウェアのバージョンが相違するといった事態を回避することができる。
【００２０】
請求項６の発明では、無線通信により通信を行う保守端末及び通信ユニットを備える分散システムであって、前記保守端末及び前記通信ユニットは、両者の間で無線リンクを確立するリンク確立手段を備え、前記保守端末は、前記通信ユニットに対して送信するファームウェアを複数の分割ブロックに分割する分割手段と、前記分割手段により分割された前記分割ブロックに識別情報を付与する付与手段と、前記付与手段により識別情報が付与された前記分割ブロックを同報通信により順次に前記子局に送信する送信手段とを備え、前記通信ユニットは、前記分割ブロックを受信する受信手段と、前記分割ブロックに付与された識別情報を基に、抜けブロックの存在の有無を管理する管理手段とを備え、前記保守端末は、全ての前記分割ブロックの送信が完了した後、前記無線リンクを確立した全ての前記通信ユニットに対して、順次、前記抜けブロックの存在の有無を確認する確認処理を実行し、ある前記通信ユニットに対する前記確認処理に失敗した場合には次の前記通信ユニットに対して前記確認処理を実行し、前記確認処理に失敗した前記通信ユニットに対して一定時間の経過後に前記確認処理を再度実行する確認手段と、前記確認手段により前記抜けブロックの存在が確認された前記通信ユニットに対して前記抜けブロックのみ再送する再送手段とを更に備えることを特徴とする。
【００２１】
この発明によれば、請求項１に記載の発明に示すファームウェアのアップデート方法を実現する分散システムを提供することができる。
【００２２】
請求項７の発明では、保守端末において、請求項１に記載のファームウェアアップデート方法を実行することを特徴とする。
【００２３】
この発明によれば、請求項１に記載の発明に示すファームウェアのアップデート方法を実現する保守端末を提供することができる。
【００２４】
請求項８の発明では、通信ユニットにおいて、請求項１記載のファームウェアアップデート方法を実行することを特徴とする。
【００２５】
この構成によれば、（１）に示すファームウェアのアップデート方法を実現する通信ユニットを提供することができる。
【００２６】
請求項９の発明では、無線通信により通信を行う保守端末及び通信ユニットに、両者の間で無線リンクを確立させるリンク確立ステップを実行させ、前記保守端末に、ファームウェアを複数の分割ブロックに分割する分割ステップと、前記分割ステップにより分割された前記分割ブロックに識別情報を付与する付与ステップと、前記付与ステップにより識別情報が付与された前記分割ブロックを同報通信により順次に前記通信ユニットに送信する送信ステップとを実行させ、前記通信ユニットに、前記分割ブロックを受信する受信ステップと、前記分割ブロックに付与された識別情報を基に、抜けブロックの存在の有無を管理する管理ステップとを実行させ、前記保守端末に、全ての前記分割ブロックの送信が完了した後、前記無線リンクを確立した全ての前記通信ユニットに対して、順次、前記抜けブロックの存在の有無を確認する確認処理を実行し、ある前記通信ユニットに対する前記確認処理に失敗した場合には次の前記通信ユニットに対して前記確認処理を実行し、前記確認処理に失敗した前記通信ユニットに対して一定時間の経過後に前記確認処理を再度実行する確認ステップと、前記確認ステップにより前記抜けブロックの存在が確認された前記通信ユニットに対して前記抜けブロックを再送する再送ステップとを更に実行させることを特徴とする。
【００２７】
この構成によれば、（１）に示すファームウェアのアップデート方法を実現するファームウェアのアップデートプログラムを提供することができる。
【発明の効果】
【００２８】
以上説明したように、本発明では、保守端末と各通信ユニットとの間で無線リンクを確立し、保守端末が各通信ユニットにファームウェアを送信するので、各通信ユニットに保守端末を有線接続してファームウェアを送信するといった煩雑な作業を行わなくても、複数の通信装置のファームウェアを速やかに、且つ、確実にアップデートすることができ、ファームウェアのアップデートにかる手間、時間を低減することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の実施の形態にかかる分散システムの全体構成図である。
【図２】同分散システムにおける保守端末を示す概略ブロック図である。
【図３】同分散システムにおける通信ユニットを示す概略ブロック図である。
【図４】同分散システムにおけるファームウェアのアップデート方法を説明するための概略図である。
【図５】同ファームウェアのアップデート方法の動作を示すシーケンス図である。
【図６】同ファームウェアのアップデート方法の動作を示すシーケンス図である。
【図７】同ファームウェアのアップデート方法の動作を示すシーケンス図である。
【図８】同ファームウェアのアップデート方法の動作を示すシーケンス図である。
【発明を実施するための形態】
【００３０】
以下に本発明の実施の形態を図面に基づいて説明する。
【００３１】
本実施の形態にかかるファームウェアのアップデート方式を実現する分散システムは、図１に示すように、例えば保守作業員により携帯される携帯型の保守端末１０と、例えば戸建住宅や、マンションなどの集合住宅に設置された検針メータに接続される一乃至複数台の通信ユニット２０とを備え、保守端末１０と通信ユニット２０との間で無線通信により相互に通信するシステムである。
【００３２】
なお、以下の説明においては、１台の保守端末１０によって複数の通信ユニット２０（２０ａ…２０ｅ）のファームウェアをアップデートする場合について説明を行う。またファームウェアは、通信ユニット２０の制御プログラムであり、通信ユニット２０の種々の制御を司るアプリ層ファームウェアと、通信ユニット２０の通信制御を司るネットワーク（ＮＥＴ）層ファームウェアとの２種類のファームウェアが含まれている。
【００３３】
保守端末１０と通信ユニット２０との間で行われる無線通信としては、例えば無線通信周波数が４２９ＭＨｚ帯である特定小電力無線が利用される。なお、例えば戸建住宅などの広いエリアに設置された複数の通信ユニット２０において、ファームウェアをアップデートする場合には、フラッディングをベースにした通信技術によって、複数の通信ユニット２０にデータを送信することが好ましい。
【００３４】
また、保守端末１０及び通信ユニット２０には、通信用のアドレスが一意的に割り付けられており、互いに送信データの送信先及び送信元を一意に特定することができる。
【００３５】
保守端末１０は、図２に示すとおり、ＣＰＵ等を備えて保守端末１０の全体を総合的に統括制御する制御部１１０と、例えば書き込み可能な不揮発性の記憶装置からなる記憶部１２０と、例えば小電力無線通信を実行する通信モジュールからなる通信部１３０とを備えている。また、制御部１１０は、分割部１１１、付与部１１２、送信制御部１１３、確認部１１４、再送制御部１１５、指示部１１６、及び、リンク確立部１１７を備えている。
【００３６】
分割部１１１は、保守端末１０から通信ユニット２０に送信されるアプリ層ファームウェア及びＮＥＴ層ファームウェアをそれぞれ複数の分割ブロックに分割する。なお、分割ブロックの総数および各分割ブロックのデータ量は、保守端末１０及び通信ユニット２０におけるデータの送受信容量に基づいて適宜決定する。
【００３７】
付与部１１２は、分割部１１１により分割された分割ブロックごとに、一意的な識別情報を付与する。通常この識別情報には、シーケンシャルな番号とファームウェアの種類などを示す付加情報が与えられ、通信ユニット２０で受信した際に、分割ブロックの抜けを容易に発見できるようにしている。
【００３８】
リンク確立部１１７は、通信部１３０を制御し、複数の通信ユニット２０と１台ずつ個別に無線によるリンクを確立させ、各制御情報及び分割ブロックの送信及び受信を可能にする。
【００３９】
送信制御部１１３は、通信部１３０を制御し、付与部１１２によって識別情報が付与された各分割ブロックを、リンク確立部１１７で無線リンクが確立した複数の通信ユニット２０に対して、同報通信により順次に送信する。なお、本実施の形態において送信制御部１１３は、１つの分割ブロックにおける同報通信を複数回実行する。このようにすることで、通信ユニット２０が分割ブロックを受信する確率が高まり、より確実に分割ブロックを通信ユニット２０に送信することができる。
【００４０】
確認部１１４は、送信制御部１１３によって全ての通信ユニット２０に対して全ての分割ブロックの送信が完了すると、通信部１３０を制御して各通信ユニット２０に分割ブロックの抜けの有無を確認する。より具体的には、確認部１１４は、通信ユニット２０に対して分割ブロックの抜けを確認する確認処理を、無線リンクが確立した全ての通信ユニット２０に対して順次に実行しており、無線通信におけるタイムアウトなどによって、ある通信ユニット２０の確認処理に失敗した場合には、次の通信ユニット２０に対して確認処理を実行する。また、一通り通信ユニット２０への確認処理が終了した後、確認処理に失敗した通信ユニット２０に対して、再度確認処理を行うようにしても良い。
【００４１】
再送制御部１１５は、確認部１１４による確認処理に基づいて、分割ブロックの抜けが見付かった通信ユニット２０に対して、抜けた分割ブロックのみを再送する。このとき、再送制御部１１５は、抜けた分割ブロックを通信ユニット２０が正しく受信できるまで再送しつづけるが、再送回数に所定の上限回数を設けてもよい。
【００４２】
指示部１１６は、通信部１３０を制御し、無線リンクを確立した全ての通信ユニット２０に対して、送信したファームウェアを所定時刻にアップデートするように指示する。また、指示部１１６は、無線リンクを確立した全ての通信ユニット２０のファームウェアのバージョンを管理するようにしても良く、全ての通信ユニット２０のバージョンが等しい場合に限って、通信ユニット２０に対してファームウェアのアップデートを指示してもよい。
【００４３】
記憶部１２０は、ファームウェア記憶部１２１と、ファームウェア転送結果ファイル記憶部１２２とを有し、ファームウェア記憶部１２１には、送信対象となるファームウェアが予め記憶されており、ファームウェア転送結果ファイル記憶部１２２には、各通信ユニット２０においてどの分割ブロックの受信に成功したかを示すファームウェア転送結果ファイルが記憶される。
【００４４】
通信ユニット２０は、図３に示すとおり、制御部２１０、通信部２２０、及び、記憶部２３０を備えている。
【００４５】
制御部２１０はＣＰＵなどによって構成されており、通信部２２０を制御して分割ブロックを受信する受信制御部２１１と、受信した分割ブロックの識別情報に基づいて、抜けブロックの存在の有無を管理する管理部２１２とを備えている。
【００４６】
通信部２２０は、例えば小電力無線通信を実行する通信モジュールによって構成され、保守端末１０との間で無線通信を行う。また通信部２２０は、他の通信ユニット２０が備える通信部２２０との間で無線通信を行うようにし、保守端末１０と他の通信ユニット２０との通信を中継するようにしてもよい（マルチホップ）。さらに通信部２２０は、同報通信により送信された分割ブロックを、他の通信ユニット２０に対してフラッディングをベースとした通信技術によって送信することで、分割ブロックが全通信ユニット２０に送信される確率を高めることができる。
【００４７】
記憶部２３０は、例えば書き換え可能な不揮発性の記憶装置から構成され、保守端末１０から送信され、通信ユニット２０で受信したファームウェアなどが記憶される。
【００４８】
ここで、本発明によるファームウェアをアップデートする方法の概要について、図４に基づいて説明する。まず、通信ユニット２０の保守を行っているソフト管理部門５０において、通信ユニット２０の転送ファームファイルＦ０が作成され、有線通信やメモリカードなどによって、転送ファームファイルＦ０’として保守端末１０にコピーされる。ここで転送ファームファイルＦ０、Ｆ０’は、ＮＥＴ層ファームウェアであるＮＥＴ層ファームファイルＦ１とアプリ層ファームウェアであるアプリ層ファームファイルＦ２とが、所定のフォーマットにより単一の転送ファームファイルを構成していてもよく、また、ｔａｒやｚｉｐなどの形式で圧縮又は結合されたものであってもよい。保守端末１０は、転送ファームファイルＦ０’を解凍又は分解することで、ＮＥＴ層ファームファイルＦ１及びアプリ層ファームファイルＦ２を得る。
【００４９】
保守端末１０は、まず全ての通信ユニット２０との間で無線リンクを確立し、各ファームファイルＦ１、Ｆ２を所定の情報量及び数に分割して分割ブロックを生成して、フラッディングをベースにした通信技術によって順次に無線リンクを確立した通信ユニット２０に送信する。この分割ブロックを通信ユニット２０が受信して結合することで、各ファームファイルＦ１、Ｆ２のそれぞれがＮＥＴ層ファームファイルＦ１’及びアプリ層ファームファイルＦ２’として各通信ユニット２０にコピーされる。
【００５０】
その後、各通信ユニット２０が、所定の時刻にファームウェアのアップデート処理を開始することで、各通信ユニット２０のファームウェアがアップデートされる。
【００５１】
次に、図１に示す分散システムの動作の詳細について、図５〜図８のシーケンス図に基づいて説明する。
【００５２】
なお、以下の説明においては、ファームウェアのアップデートが必要な通信ユニット２０が通信ユニット２０ａ〜２０ｅの５台設置されているものとし、通信ユニット２０ｅは保守端末１０の直接的な無線通信範囲内に存在せず、マルチホップによって通信ユニット２０ｂが保守端末１０と通信ユニット２０ｅとの間の通信を中継するものとする。また、最初にＮＥＴ層ファームファイルＦ１を送信し、次にアプリ層ファームファイルＦ２を送信するものとし、各ファームファイルＦ１、Ｆ２は、予め保守端末１０にコピーされ、ファームウェア記憶部１２１に記憶されているものとして説明を行う。
【００５３】
まず、保守端末１０は、保守員が操作を行うことでアップデートモードへ移行する。このとき、分割部１１１が各ファームファイルＦ１、Ｆ２を複数の分割ブロックに分割し、付与部１１２が各分割ブロックに識別情報を付与する（ステップＳ１）。
【００５４】
次に、保守端末１０のリンク確立部１１７は、個々の通信ユニット２０ａ…２０ｅに対してユニキャストによりリンク確立要求を送信し、各通信ユニット２０からリンク確立応答があれば、無線通信によるリンクを確立する（ステップＳ２）。このとき、何れかの通信ユニット２０からリンク確立応答が無い場合には、ファームウェアのアップデートを中断するようにしても良く、また、リンク確立応答があった通信ユニット２０に限り、以降の処理を行うようにしても良い。
【００５５】
次に、保守端末１０は、無線リンクが確立した各通信ユニット２０に対して、ユニキャストによりファームウェア転送要求（初期化）を送信する（ステップＳ３）。このステップＳ２で送信されるファームウェア転送要求（初期化）は、各通信ユニット２０を初期化するためのファームウェア転送要求であり、このファームウェア転送要求（初期化）を受信した通信ユニット２０は、例えば分割ブロックの受信数をカウントするためのカウンタをリセットしたり、記憶部２３０に記憶されている過去のアップデートに使用したファームファイルを消去するといった初期化処理を実行する（ステップＳ３’）。
【００５６】
次に、送信制御部１１３は、先頭の分割ブロックである１ブロック目から、最終の分割ブロックであるｎブロック目まで、各分割ブロックの送信要求を順次に同報通信によって、通信ユニット２０ａ…２０ｅに送信する（ステップＳ４）。ここで、送信制御部１１３は、１ブロック目〜ｎブロック目までの各分割ブロックをそれぞれ複数回（例えば３回）の同報通信により送信する。
【００５７】
ｎブロック目の転送要求の送信が終了すると、保守端末１０の確認部１１４は、全ての通信ユニット２０ａ…２０ｅに対して、分割ブロックの抜けを確認する（ステップＳ５）。具体的には、確認部１１４は通信部１３０を制御し、まず、１台目の通信ユニット２０ａに転送状況確認要求を送信する。通信ユニット２０ａから転送状況確認応答を受信すると、２台目の通信ユニット２０ｂに転送状況確認要求を送信し、この処理を無線リンクを確立した全ての通信ユニット２０ａ…２０ｅに対して行う。なお、転送状況確認応答には、各通信ユニット２０が受信できなかった分割ブロックを示す情報が含まれている。
【００５８】
このとき、通信ユニット２０から転送状況確認応答が所定のタイムアウト時間経っても得られない場合には、その無線ユニット２０に対して再度転送状況確認要求を送信するのではなく、次の無線ユニット２０に対して転送状況確認要求を送信し、全ての通信ユニット２０に対する分割ブロックの抜けの確認が終わったあと、再度、転送状況確認応答が得られなかった通信ユニット２０に対して転送状況確認要求を送信し、分割ブロックの抜けを確認する。なお、各通信ユニット２０の管理部２１２には、もどの分割ブロックが抜けているかを示すデータが記憶部２３０に記憶されている。
【００５９】
また、確認部１１４は、各通信ユニット２０の転送状況確認応答に含まれる分割ブロックの抜けに関する情報に基づいて、各通信ユニット２０において、どの分割ブロックの受信に成功もしくは失敗したのかを示すファームウェア転送結果ファイルを生成して、ファームウェア転送結果ファイル記憶部１２２に記憶する（ステップＳ６）。
【００６０】
次に、ステップＳ５によって、何れかの通信ユニット２０において分割ブロックの抜けが存在することが判明した場合には、保守端末１０の再送制御部１１５は、通信ユニット２０ｂに対して該当する抜けブロックを送信する。ここで、通信ユニット２０ｂにおいて、ｘブロック目の分割ブロックの受信に失敗しているとすると、再送制御部１１５は、ｘブロック目の分割ブロックを格納したファームウェア転送要求を通信ユニット２０ｂに対してユニキャストで送信する。送信が完了すると、確認部１１４が通信ユニット２０ｂに対して転送状況確認要求をユニキャストで送信し、通信ユニット２０ｂからの転送状況確認応答に基づいて、再度分割ブロックの抜けの有無を確認する（ステップＳ７）。
【００６１】
ここで、さらに分割ブロックの抜けが存在する場合には、ステップＳ７における処理と同様の処理を再度行い、分割ブロックを送信するとともに分割ブロックの抜けを確認する。このステップＳ７と同様の処理を、分割ブロックの抜けが無くなるか、所定の回数（ここでは３回）繰り返し行い（ステップＳ８、Ｓ９）、通信ユニット２０ｂにおいて抜けが発生した分割ブロックを再送する。この再送処理（ステップＳ７〜Ｓ９）を、分割ブロックの抜けが確認された全ての通信ユニット２０に対して行い、全通信ユニット２０へのＮＥＴ層ファームファイルの送信処理が完了する。
【００６２】
続いて、保守端末１０は、アプリ層ファームファイルを各通信ユニット２０に送信する。保守端末１０には、ステップＳ１において複数の分割ブロックに分割されたアプリ層ファームファイルＦ２が保持されており、各分割ブロックには識別情報が付与されている。
【００６３】
保守端末１０及び各通信ユニット２０ａ…２０ｅは、上述したステップＳ２〜Ｓ９と同様の処理によって、無線リンクの確立を行い（ステップＳ１０）、ファームウェアの転送要求（初期化）に伴う初期化を行い（ステップＳ１１、Ｓ１１’）、ファームウェアを転送する（ステップＳ１２）。また、各通信ユニット２０における分割ブロックの抜けを確認し（ステップＳ１３）、ファームウェア転送結果ファイルに確認結果を書き込むとともに（ステップＳ１４）、分割ブロックの抜けが発生した通信ユニット２０に対して、分割ブロックの再送を行う（ステップＳ１５〜Ｓ１７）。
【００６４】
このようにして、各ファームファイルＦ１、Ｆ２の送信が完了すると、次に保守端末１０の指示部１１６は、各ファームファイルＦ１、Ｆ２の受信に成功した通信ユニット２０に対して、アップデートを指示するための指示処理を開始する（図８を参照）。
【００６５】
具体的には、指示部１１６は、ステップＳ１０によりリンクが確立している各通信ユニット２０に対して、ファームウェアアップデート開始要求をユニキャストにて送信し、ファームウェアアップデート開始要求を受信した通信ユニット２０は、ファームウェアアップデート開始応答を保守端末１０に送信する（ステップＳ１８）。なお、指示部１１６によって送信されるファームウェアアップデート開始要求には、実際に通信ユニット２０がファームウェアのアップデートを行う更新時刻が格納されており、更新時刻には、年・月・日・時・分・秒のうち少なくとも何れか１つを用いて、絶対的な時間もしくは相対的な時間を指定することができる。また、また、ファームウェアアップデート開始要求には、転送ファームファイルＦ１、Ｆ２の何れか一方、又は、両方のアップデートを指示するための指示情報を含ませても良い。また、更新時刻を指定せず、即時に各通信ユニット２０にファームウェアのアップデートを行わせる情報を含ませても良い。
【００６６】
ここで、ファームウェアアップデート開始要求に格納した更新時刻になると、各通信ユニット２０ａ…２０ｅは、受信した分割ブロックによりファームウェアのアップデートを開始する（ステップＳ１９）。なお、通信ユニット２０におけるファームウェアのアップデート手順については、既知の技術であるので説明を省略する。
【００６７】
その後、各通信ユニット２０ａ…２０ｅは、ファームウェアのアップデートが完了すると必要に応じて再起動などの処理を行った後、通常動作を開始する。
【００６８】
このように、保守端末１０は複数の通信ユニット２０との間で無線リンクを確立し、各通信ユニット２０に対して、無線通信を用いてファームウェアの送信を同時に行うことができ、各通信ユニット２０に保守端末１０を有線接続してファームウェアを送信するといった煩雑な作業を行わなくても、ファームウェアを速やかに、且つ、確実に送信することができ、通信ユニット２０のファームウェアのアップデートにかる手間、及び、時間を大幅に低減することができる。
【００６９】
なお、ステップＳ７〜Ｓ９、ステップＳ１５〜Ｓ１７に示す分割ブロックの再送処理によっても、分割ブロックの抜けが存在する場合には、保守員が当該通信ユニット２０に保守端末１０を有線接続し、各ファームファイルＦ１、Ｆ２を転送するようにしてもよい。その後、ステップ１８に示すファームウェアのアップデート指示処理を行えば、他の通信ユニット２０と同時刻にファームウェアのアップデートを行うことができる。
【００７０】
また、ステップＳ１８に示すファームウェアのアップデート指示処理おいて、各通信ユニット２０のファームウェアのバージョンが一致しない場合には、保守端末１０は、ファームウェア更新開始要求を送信しないようにしても良い。その後、バージョンが一致しないファームウェアを格納している通信ユニット２０に、他の通信ユニット２０と同じバージョンのファームウェアを転送することで、意図しないファームウェアのアップデートが行われないようにすることができる。
【００７１】
また、本実施の形態においては、ステップＳ１８に示すファームウェアのアップデート指示処理の前には、無線リンクの確立を行っていないが、ステップＳ２又はステップＳ１０と同様の処理によって、再度、保守端末１０と通信ユニット２０との間で無線リンクを確立するようにしても良い。
【００７２】
なお、この分散システムにかかる通信ユニット２０は、個々の通信ユニット２０が広域通信網を介して検針用サーバに接続され、検診用サーバからの指示に基づいて検針情報を送信するような、自動検針システムに用いられる通信ユニットに適応することも可能である。この場合には、通信ユニット２０と検診用サーバ間の通信に関わるファームウェアを更新することもできる。
【符号の説明】
【００７３】
１０          保守端末
２０          通信ユニット
Ｓ１          初期化処理ステップ（分割ステップ、付与ステップ）
Ｓ２、Ｓ１０  リンク確立ステップ
Ｓ３、Ｓ１１  送信開始ステップ
Ｓ４、Ｓ１２  送信ステップ、受信ステップ
Ｓ５、Ｓ１３  抜けブロック確認ステップ（管理ステップ）
Ｓ６、Ｓ１４  確認情報保存ステップ（管理ステップ）
Ｓ７、Ｓ８、Ｓ９、Ｓ１５、Ｓ１６、Ｓ１７    再送ステップ
Ｓ１８        アップデート指示ステップ
Ｆ１          ＮＥＴ層ファームファイル（ファームウェア）
Ｆ２          アプリ層ファームファイル（ファームウェア）
【図１】
0005486252.tif 000002
【図２】
0005486252.tif 000003
【図３】
0005486252.tif 000004
【図４】
0005486252.tif 000005
【図５】
0005486252.tif 000006
【図６】
0005486252.tif 000007
【図７】
0005486252.tif 000008
【図８】
0005486252.tif 000009