(57)【要約】【課題】不具合が見つかったＦＷバージョンが電子機器上で動作することを防ぐ。【解決手段】サーバ装置と、複数の電子機器と、を有する電子機器システムのファームウェア管理方法であって、各電子機器は、一つ以上のバージョンのファームウェアを保持し、ファームウェア管理方法は、サーバ装置がファームウェアの使用可否を示す情報を送信する手順と、各電子機器がファームウェアの使用可否を示す情報に基づいて使用可能なバージョンのファームウェアを保持しているか否かを判定する手順と、各電子機器が使用可能なバージョンのファームウェアを保持している場合、使用可能なバージョンのファームウェアを使用する手順と、各電子機器が使用可能なバージョンのファームウェアを保持していない場合、使用中のファームウェアの機能の一部を停止する手順と、を含む。【選択図】図４
2016051369.tif 000002
【特許請求の範囲】
【請求項１】
電子機器システムのファームウェア管理方法であって、
前記電子機器システムは、ネットワークに接続されるサーバ装置と、前記ネットワークを介して前記サーバ装置と通信する複数の電子機器と、を有し、
前記各電子機器は、前記サーバ装置との通信を制御する通信制御部と、前記通信制御部に接続されるプロセッサと、前記プロセッサに接続される記憶部と、を有し、
前記記憶部は、前記プロセッサによって実行される一つ以上のバージョンのファームウェアを保持し、
前記ファームウェア管理方法は、
前記サーバ装置が前記ファームウェアの使用可否を示す情報を送信する第１手順と、
前記各電子機器が前記ファームウェアの使用可否を示す情報に基づいて使用可能なバージョンのファームウェアを保持しているか否かを判定する第２手順と、
前記各電子機器が使用可能なバージョンのファームウェアを保持している場合、前記使用可能なバージョンのファームウェアを使用する第３手順と、
前記各電子機器が使用可能なバージョンのファームウェアを保持していない場合、使用中のファームウェアの機能の一部を停止する第４手順と、を含むことを特徴とするファームウェア管理方法。
【請求項２】
請求項１に記載のファームウェア管理方法であって、
前記ファームウェアの使用可否を示す情報は、使用が禁止されるファームウェアのバージョン番号を含むことを特徴とするファームウェア管理方法。
【請求項３】
請求項２に記載のファームウェア管理方法であって、
前記ファームウェアの使用可否を示す情報は、前記バージョン番号ごとに、前記ファームウェアの使用が禁止される条件を示す情報を含み、
前記第２手順は、前記各電子機器が保持する前記ファームウェアのバージョン番号が前記ファームウェアの使用可否を示す情報に含まれ、かつ、前記各電子機器が前記条件を満たす場合、前記各電子機器が保持する前記ファームウェアが使用可能でないと判定する手順を含むことを特徴とするファームウェア管理方法。
【請求項４】
請求項１に記載のファームウェア管理方法であって、
前記ファームウェアの使用可否を示す情報は、使用が許可されるファームウェアのバージョン番号を含むことを特徴とするファームウェア管理方法。
【請求項５】
請求項４に記載のファームウェア管理方法であって、
前記ファームウェアの使用可否を示す情報は、前記バージョン番号ごとに、前記ファームウェアの使用が許可される条件を示す情報を含み、
前記第２手順は、前記各電子機器が保持する前記ファームウェアのバージョン番号が前記ファームウェアの使用可否を示す情報に含まれ、かつ、前記各電子機器が前記条件を満たす場合、前記各電子機器が保持する前記ファームウェアが使用可能であると判定する手順を含むことを特徴とするファームウェア管理方法。
【請求項６】
請求項１に記載のファームウェア管理方法であって、
前記記憶部は、複数のバージョンの前記ファームウェアを保持し、
前記第２手順において、前記各電子機器が、現在使用しているバージョンの前記ファームウェアが使用可能でなく、現在使用していないバージョンの前記ファームウェアが使用可能であると判定した場合、前記第３手順は、前記各電子機器が、前記現在使用しているバージョンのファームウェアの使用を中止し、前記現在使用していないバージョンのファームウェアの使用を開始する手順を含むことを特徴とするファームウェア管理方法。
【請求項７】
請求項６に記載のファームウェア管理方法であって、
前記各電子機器が前記第３手順において使用を中止したファームウェアを前記記憶部から削除する第５手順をさらに含むことを特徴とするファームウェア管理方法。
【請求項８】
請求項１に記載のファームウェア管理方法であって、
前記サーバ装置が新しいバージョンの前記ファームウェアを送信する第６手順と、
前記各電子機器が前記ファームウェアの使用可否を示す情報に基づいて前記新しいバージョンのファームウェアの使用可否を判定する第７手順と、
前記各電子機器が前記新しいバージョンのファームウェアを使用可能でないと判定した場合、前記新しいバージョンのファームウェアを破棄する第８手順と、
前記各電子機器が前記新しいバージョンのファームウェアを使用可能と判定した場合、前記新しいバージョンのファームウェアの使用を開始する第９手順と、をさらに含むことを特徴とするファームウェア管理方法。
【請求項９】
請求項８に記載のファームウェア管理方法であって、
前記電子機器が前記第４手順を実行した後に前記使用中のファームウェアの機能の一部を停止したことを示す通知を送信する第１０手順をさらに含み、
前記第６手順は、前記サーバ装置が前記通知を送信した電子機器に前記新しいバージョンのファームウェアを優先的に送信する手順を含むことを特徴とするファームウェア管理方法。
【請求項１０】
請求項８に記載のファームウェア管理方法であって、
前記各電子機器が前記第４手順の後に前記第９手順を実行した場合、停止していた前記ファームウェアの機能の使用を再開する第１１手順をさらに含むことを特徴とするファームウェア管理方法。
【請求項１１】
ネットワークに接続されるサーバ装置と、前記ネットワークを介して前記サーバ装置と通信する複数の電子機器と、を有する電子機器システムであって、
前記各電子機器は、前記サーバ装置との通信を制御する通信制御部と、前記通信制御部に接続されるプロセッサと、前記プロセッサに接続される記憶部と、を有し、
前記記憶部は、前記プロセッサによって実行される一つ以上のバージョンのファームウェアを保持し、
前記サーバ装置は、前記ファームウェアの使用可否を示す情報を送信し、
前記各電子機器は、
前記ファームウェアの使用可否を示す情報に基づいて使用可能なバージョンのファームウェアを保持しているか否かを判定し、
使用可能なバージョンのファームウェアを保持している場合、前記使用可能なバージョンのファームウェアを使用し、
使用可能なバージョンのファームウェアを保持していない場合、使用中のファームウェアの機能の一部を停止することを特徴とする電子機器システム。
【請求項１２】
ネットワークに接続される電子機器であって、
前記電子機器は、前記ネットワークを介した通信を制御する通信制御部と、前記通信制御部に接続されるプロセッサと、前記プロセッサに接続される記憶部と、を有し、
前記記憶部は、前記プロセッサによって実行される一つ以上のバージョンのファームウェアを保持し、
前記電子機器は、
前記ネットワークを介して前記ファームウェアの使用可否を示す情報を受信すると、前記ファームウェアの使用可否を示す情報に基づいて使用可能なバージョンのファームウェアを保持しているか否かを判定し、
使用可能なバージョンのファームウェアを保持している場合、前記使用可能なバージョンのファームウェアを使用し、
使用可能なバージョンのファームウェアを保持していない場合、使用中のファームウェアの機能の一部を停止することを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器上のファームウェアの管理に関する。
【背景技術】
【０００２】
一般的に、電子機器は、筐体、電源、プロセッサ、揮発性メモリ、不揮発性メモリなどから成るハードウェア部と、プロセッサ上で動作するファームウェア（以降ＦＷ）部によって構成される。電子機器のＦＷは出荷前に工場で書き込まれ、設置場所において稼働を開始する。
【０００３】
あるバージョンのＦＷに不具合があることが判明した場合、システムの管理者は、稼働中の電子機器を調査し、不具合のあるＦＷバージョンで動作している電子機器について、不具合を対策した新ＦＷバージョンまたは不具合のないことがわかっているＦＷバージョンに入れ替えることによって問題事象の発生を回避する。
【０００４】
具体的には、不具合のあるＦＷバージョンで動作している電子機器が設置されている場所に作業員を派遣し、該当機器のＦＷを入れ替える方法がある。本方法は、ＦＷの入れ替えを確実に実施できる面で優れているが、該当機器の設置場所に作業員を派遣する必要があるため、多くの時間と費用を要してしまう。
【０００５】
別の方法として、稼働中の電子機器を有線または無線の通信ネットワーク回線に接続し、同ネットワークに稼働中の電子機器のＦＷバージョンの管理およびＦＷの配信を行うＦＷ管理サーバを接続した構成のシステムを構築し、遠隔操作によって該当機器のＦＷを入れ替える方法がある。
【０００６】
通信速度が遅い時代の携帯電話の場合には、新旧ＦＷの差分データを送ることで、データサイズを小さくし、新しいＦＷを配信していた。
【０００７】
通信機器では、新旧ＦＷを管理し、新しいＦＷに問題が発覚した場合には、ＦＷ管理サーバからの指示で、古いＦＷに戻していた。
【０００８】
本技術分野の背景技術として、特開２０１２−２２１２６８号公報（特許文献１）がある。特許文献１には、「画像形成装置のアップデート制御部は、ユーザからの指示を受けて、配信サーバから配信されＨＤＤに格納されているファームウェアを適用開始する場合に、配信サーバに適用開始通知を行い、該通知に応じて配信サーバから適用許可の応答を受けた場合には該ファームウェアを適用し、一方、適用禁止の応答を受けた場合には該ファームウェアを適用しないようにする。また、画像形成装置の監視エージェント部は、定期的に、ＨＤＤに格納されている適用前のファームウェアを削除するか監視サーバに確認し、該確認に応じて監視サーバから削除の応答を受けた場合には該適用前のファームウェアを削除する。」と記載されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１２−２２１２６８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
電子機器とＦＷ管理サーバ間の通信区間における通信速度が遅い環境の場合、または運用状態において電子機器とＦＷ管理サーバ間のデータ通信頻度が定常的に高い場合、データ通信の空き時間を利用してＦＷを配信するためにＦＷのデータサイズが大きくなくても数日から１カ月程度かかる場合がある。例えば、非常に多くの電子機器間でのＭａｃｈｉｎｅ−ｔｏ−Ｍａｃｈｉｎｅ（以下Ｍ２Ｍ）通信を前提とするシステムではＭ２Ｍ通信のホップ数が増えるため、前述の課題はより深刻となり、数カ月かかることがある。
【００１１】
また、判明した不具合を対策した修正版のＦＷを準備するまでには通常数日から数十日の時間を要するため、それまでは修正版のＦＷを準備および配信することができない。したがって、不具合が判明した場合には、修正版のＦＷがまだ配信されていなくても、システム運用を継続するか停止するかを判断し、不具合のあるＦＷが電子機器上で動作し続けることがないようにするための仕組みが必要である。
【００１２】
電子機器が複数面（たとえば新バージョンと旧バージョンの２面）のＦＷを持つ場合、市場に存在するすべての電子機器が、最新のＦＷとして同一のバージョンのＦＷを保持しているとは限らないし、保持しているもうひとつのＦＷのバージョンも統一されているとは限らない。また、ハードウェア種別毎に、使用可能なＦＷのバージョンが異なる場合（例えば、同種の電子機器であっても、不具合が生じるＦＷのバージョンが型式毎に異なる場合）もある。従って、新しいＦＷの使用を中止して古いＦＷに戻したい場合でも、電子機器毎に、バージョンの指定を含むＦＷ更新の指示を出す必要がある。電子機器毎に異なるメッセージを送ることは、サーバおよびネットワークに負荷がかかり、通常処理（すなわちＦＷ更新処理以外の、当該電子機器本来の機能を実現するための処理）に影響を与える可能性がある。
【００１３】
特開２０１２−２２１２６８（特許文献１）には、ＦＷを更新する前にサーバシステム（実施例では配信サーバ）に適用可否を確認し、ＦＷの適用可否を確認する技術が開示されている。また、サーバシステム（実施例では監視サーバ）に旧ＦＷ（配信済のＦＷ）の削除可否を問い合わせることで、配信されたまま残っている問題が見つかったＦＷを自動的に削除する技術が記載されている。ＦＷの適用継続可否をサーバシステム（配信サーバまたは監視サーバ）へ定期的に問い合わせを行う場合、問い合わせ頻度が高ければ、ネットワークに負荷がかかる。また、問い合わせ頻度を低くすると、ＦＷに不具合があった場合にＦＷの切り替えに時間がかかり、運用の継続性が損なわれる。
【課題を解決するための手段】
【００１４】
上記の課題を解決するために、本発明は、電子機器システムのファームウェア管理方法であって、前記電子機器システムは、ネットワークに接続されるサーバ装置と、前記ネットワークを介して前記サーバ装置と通信する複数の電子機器と、を有し、前記各電子機器は、前記サーバ装置との通信を制御する通信制御部と、前記通信制御部に接続されるプロセッサと、前記プロセッサに接続される記憶部と、を有し、前記記憶部は、前記プロセッサによって実行される一つ以上のバージョンのファームウェアを保持し、前記ファームウェア管理方法は、前記サーバ装置が前記ファームウェアの使用可否を示す情報を送信する第１手順と、前記各電子機器が前記ファームウェアの使用可否を示す情報に基づいて使用可能なバージョンのファームウェアを保持しているか否かを判定する第２手順と、前記各電子機器が使用可能なバージョンのファームウェアを保持している場合、前記使用可能なバージョンのファームウェアを使用する第３手順と、前記各電子機器が使用可能なバージョンのファームウェアを保持していない場合、使用中のファームウェアの機能の一部を停止する第４手順と、を含むことを特徴とする。
【発明の効果】
【００１５】
本発明の一形態によれば、特定のＦＷバージョンに不具合が見つかった場合、そのＦＷバージョンが電子機器上で動作することがないように防ぐことができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施例１の電子機器システムの構成の一例を示すブロック図である。
【図２】本発明の実施例１のＳＭのハードウェア構成の一例を示すブロック図である。
【図３】本発明の実施例１のＦＷ管理サーバのハードウェア構成の一例を示すブロック図である。
【図４】本発明の実施例１の電子機器システムにおいて各ＳＭが保持しているＦＷのバージョンの一例を示す説明図である。
【図５】本発明の実施例１において実行されるＦＷブラックリスト配信処理の一例を示すシーケンス図である。
【図６】本発明の実施例１のＳＭがＦＷブラックリストを受信したときに実行する処理の一例を示すフローチャートである。
【図７】本発明の実施例１において実行されるＦＷ配信処理の一例を示すシーケンス図である。
【図８】本発明の実施例１のＳＭがＦＷを受信したときに実行する処理の一例を示すフローチャートである。
【図９】本発明の実施例１のＦＷ管理サーバが配信するＦＷブラックリストの一例を示す説明図である。
【図１０】本発明の実施例２のＦＷ管理サーバが配信するＦＷホワイトリストの一例を示す説明図である。
【図１１】本発明の実施例１のＳＭのソフトウェア構成の一例を示すブロック図である。
【図１２】本発明の実施例１のＦＷ管理サーバのソフトウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１７】
以下、図面を用いて実施例を説明する。
【実施例１】
【００１８】
本実施例では、ファームウェア（ＦＷ）が更新される電子機器の例として、いわゆるスマートメータ（ＳＭ）を取り上げ、説明する。ＳＭは、通信機能を有し、電力使用量をデジタルで計測し、電力会社と需要者の間をつないでデータのやり取りをし、需要先の家電製品などと接続してそれを制御することができる電力量計である。
【００１９】
図１は、本発明の実施例１の電子機器システムの構成の一例を示すブロック図である。
【００２０】
本実施例の電子機器システムは、複数のＳＭ１０１、複数のコンセントレータ１２１、ＦＷ管理サーバ１４１および電力使用量管理サーバ１４２によって構成される。複数のコンセントレータ１２０は、ＳＭ運用管理ネットワーク１３０を経由してＦＷ管理サーバ１４１および電力使用量管理サーバ１４２に接続される。図１には、複数のＳＭ１０１の例としてＳＭ１０１ａ〜１０１ｆを、複数のコンセントレータ１２１の例としてコンセントレータ１２１ａ及び１２１ｂを示す。
【００２１】
図１の例では、ＳＭ１０１ａとＳＭ１０１ｂとの間、ＳＭ１０１ａとＳＭ１０１ｃとの間、およびＳＭ１０１ａとコンセントレータ１２１ａとの間は、無線マルチホップ通信による無線通信区間１１１である。ＳＭ１０１ａ、ＳＭ１０１ｂ、ＳＭ１０１ｃから電力使用量管理サーバ１４２への電力使用量データの報告、ＦＷ管理サーバ１４１からＳＭ１０１ａ、ＳＭ１０１ｂ、ＳＭ１０１ｃへのＦＷ配信およびＦＷブラックリスト配信は、ＳＭ運用管理ネットワーク１３０、コンセントレータ１２１ａおよび無線通信区間１１１を経由する通信によって実現される。
【００２２】
一方、ＳＭ１０１ｄとＳＭ１０１ｅとの間、ＳＭ１０１ｄとＳＭ１０１ｆとの間、およびＳＭ１０１ｄとコンセントレータ１２１ｂとの間は、電力線通信（Ｐｏｗｅｒ  Ｌｉｎｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ、以降ＰＬＣとも記載）による電力線通信区間１１２である。ＳＭ１０１ｄ、ＳＭ１０１ｅ、ＳＭ１０１ｆから電力使用量管理サーバ１４２への電力使用量データの報告、ＦＷ管理サーバ１４１からＳＭ１０１ｄ、ＳＭ１０１ｅ、ＳＭ１０１ｆへのＦＷ配信およびＦＷブラックリスト配信は、ＳＭ運用管理ネットワーク１３０、コンセントレータ１２１ｂおよび電力線通信区間１１２を経由する通信によって実現される。
【００２３】
各コンセントレータ１２１は、複数のＳＭ１０１を束ねて管理する集約器であり、ＳＭ運用管理ネットワーク１３０に接続されたＦＷ管理サーバ１４１および電力使用量管理サーバ１４２と、各ＳＭ１０１とをつなぐ役割を担う。
【００２４】
なお、図１に示すネットワークの形態は一例であり、各ＳＭ１０１とＦＷ管理サーバ１４１、各ＳＭ１０１と電力使用量管理サーバ１４２が通信可能となる限り、使用されるネットワークの形態（通信媒体、プロトコル、ネットワークトポロジ等）はいかなるものであってもよい。
【００２５】
図２は、本発明の実施例１のＳＭ１０１のハードウェア構成の一例を示すブロック図である。
【００２６】
ＳＭ１０１（例えば図１のＳＭ１０１ａ〜１０１ｆの各々）は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３、記憶部２０４、電源部２０５、電力計測部２０６、通信制御部（ＰＬＣ）２０７、状態表示部２０８、通信制御部（無線）２０９、アンテナ部２１０、および装置内配線２１１から構成される。ＳＭ１０１ａ〜１０１ｃは通信制御部（無線）２０９およびアンテナ部２１０を介して無線通信区間１１１と接続される。またＳＭ１０１ｄ〜１０１ｆは通信制御部（ＰＬＣ）２０７および電源部２０５を介して電力線通信区間１１２と接続される。
【００２７】
図１１は、本発明の実施例１のＳＭ１０１のソフトウェア構成の一例を示すブロック図である。
【００２８】
ＳＭ１０１は、制御機能部５０００、ネットワークインタフェース部５００１、電力計測部２０６、通信制御部（ＰＬＣ）２０７、状態表示部２０８および通信制御部（無線）２０９から構成される。制御機能部５０００は、ＦＷおよびＦＷブラックリストの情報を処理する。ネットワークインタフェース部５００１は、無線回線または電力線を介してＳＭ１０１をネットワークと接続する。電力計測部２０６は、ＳＭ１０１が電力計測モジュールである場合に電力を計測する。通信制御部（ＰＬＣ）２０７は、ＳＭ１０１が電力線を介して通信を行う場合に通信制御を行う。状態表示部２０８は、ＳＭ１０１の表示部（例えば図示しない液晶表示装置等）にＳＭ１０１の状態を表示する機能を有する。通信制御部（無線）２０９は、ＳＭ１０１が無線回線を介して通信を行う場合に通信制御を行う。
【００２９】
制御機能部５０００は、ＦＷ／ＦＷブラックリスト受信部５３００、ＦＷ／ＦＷブラックリスト解析部５４００、ＦＷ／ＦＷブラックリスト比較部５５００、比較結果に応じたＦＷ処理部５２００、ＳＭ縮退動作通知処理部５１００および情報管理部５６００から構成される。ＦＷ／ＦＷブラックリスト受信部５３００およびＦＷ／ＦＷブラックリスト解析部５４００は、それぞれ、ＦＷおよびＦＷブラックリストの受信および解析を行う。ＦＷ／ＦＷブラックリスト比較部５５００は、受信したＦＷおよびＦＷブラックリストとＳＭ１０１の情報とを比較する。比較結果に応じたＦＷ処理部５２００は、ＦＷ／ＦＷブラックリスト比較部５５００による比較結果に応じてＦＷの処理および運転状態を設定する。ＳＭ縮退動作通知処理部５１００は、ＳＭ１０１が縮退動作に切り替わる際にＦＷ管理サーバ１４１へ通知する。情報管理部５６００は、ＦＷ，ＳＭ１０１およびＦＷブラックリストの情報を保存する。
【００３０】
ＦＷ／ＦＷブラックリスト比較部５５００は、ＦＷ情報比較部５５１０およびＦＷブラックリスト条件比較部５５２０から構成される。ＦＷ情報比較部５５１０は、ＳＭ１０１が保持するＦＷバージョンと受信したＦＷバージョンとを比較する。ＦＷブラックリスト条件比較部５５２０は、ＳＭ１０１のＦＷバージョン、運転状態、パラメータＸの設定値および装置型式と、受信したブラックリストに記載された禁止条件とを比較する。
【００３１】
情報管理部５６００は、ＦＷ情報管理部５６１０、ＳＭ情報管理部５６２０およびＦＷブラックリスト管理部５６３０から構成される。ＦＷ情報管理部５６１０は、稼働中及び保持するＦＷの情報を管理する。ＳＭ情報管理部５６２０は、ＳＭ１０１の設定情報および装置情報等を管理する。ＦＷブラックリスト管理部５６３０は、受信したＦＷブラックリストの情報を管理する。
【００３２】
比較結果に応じたＦＷ処理部５２００は、ＦＷ処理部５２１０および運転状態処理部５２２０から構成される。ＦＷ処理部５２１０は、ＦＷの更新などの処理を行う。運転状態処理部５２２０は、ＳＭ１０１の運転状態を設定する。
【００３３】
ＦＷ処理部５２１０は、ＦＷ更新処理部５２１１、ＦＷロールバック処理部５２１２および使用禁止ＦＷ削除処理部５２１３から構成される。ＦＷ更新処理部５２１１は、受信したＦＷへの更新を行う。ＦＷロールバック処理部５２１２は、保持している別のＦＷへの更新を行う。使用禁止ＦＷ削除処理部５２１３は、使用禁止にされているＦＷの削除を行う。
【００３４】
運転状態処理部５２２０は、運転状態継続処理部５２２１および運転状態切替処理部５２２２から構成される。運転状態継続処理部５２２１は、ＳＭ１０１の運転状態を現在の状態で継続する。運転状態切替処理部５２２２は、運転状態を（例えば通常動作モードから縮退動作モードへ、または縮退動作モードから通常動作モードへ）切り替える。
【００３５】
ＳＭ１０１は、通信制御部（ＰＬＣ）２０７または通信制御部（無線）２０９とネットワークインタフェース部５００１とを介してＳＭ運用管理ネットワーク１３０と接続される。
【００３６】
以下に説明するＳＭ１０１の処理は、上記の各部によって実行される。上記の各部は、ＳＭ１０１が保持するＦＷに含まれるプログラムをＣＰＵ２０１が実行し、そのプログラム記述された命令に従って、必要に応じてＣＰＵ２０１がＳＭ１０１のハードウェアを制御することによって実現される。例えば、ＣＰＵ２０１は、ＳＭ１０１が電力線通信区間１１２にある場合にはプログラムに従って通信制御部（ＰＬＣ）２０７を制御することによってネットワークインタフェース部５００１の機能を実現し、ＳＭ１０１が無線通信区間１１１にある場合にはプログラムに従って通信制御部（無線）２０９を制御することによってネットワークインタフェース部５００１の機能を実現する。また、ＣＰＵ２０１は、プログラムに従って電力計測部２０６を制御することによって電力量を計測し、プログラムに従って制御機能部５０００によるＦＷの管理機能（後述）を実現する。ＣＰＵ２０１が実行するプログラムを含むＦＷは、ＲＯＭ２０２または記憶部２０４（例えばフラッシュメモリ等）に格納され、必要に応じてＲＡＭ２０３にコピーされてもよい。
【００３７】
図３は、本発明の実施例１のＦＷ管理サーバ１４１のハードウェア構成の一例を示すブロック図である。
【００３８】
ＦＷ管理サーバ１４１は、ＣＰＵ３０１、ＲＯＭ３０２、ＲＡＭ３０３、記憶部３０４、ディスプレイなどの表示部３０５、マウスおよびキーボードといった入力装置３０６、ネットワークインタフェース部３０７、外部装置インタフェース３０８、および装置内配線３１０から構成される。ＦＷ管理サーバ１４１はネットワークインタフェース部３０７を介してＳＭ運用管理ネットワーク１３０と接続され、ＳＭ１０１のＦＷバージョン管理、ＦＷ配信およびＦＷブラックリスト配信を行う。
【００３９】
図１２は、本発明の実施例１のＦＷ管理サーバ１４１のソフトウェア構成の一例を示すブロック図である。
【００４０】
ＦＷ管理サーバ１４１は、入力装置３０６、制御機能部６００、ネットワークインタフェース部３０７および表示部６０１から構成される。入力装置３０６は、管理者からの入力を受け付ける。制御機能部６００は、ＦＷおよびＦＷブラックリスト等の情報の処理を行う。ネットワークインタフェース部３０７は、無線回線または電力線を介してＦＷ管理サーバ１４１をネットワークと接続する。表示部６０１は、ＳＭ１０１からのＳＭ縮退動作通知を表示する。
【００４１】
制御機能部６００は、ＦＷ登録処理部６１０、ＦＷブラックリスト生成部６３０、情報管理部６２０および情報配信部６４０から構成される。ＦＷ登録処理部６１０は、管理者が入力した情報の登録処理を行う。ＦＷブラックリスト生成部６３０は、登録された情報からＦＷブラックリストの生成を行う。情報管理部６２０は、ＦＷ、ＳＭ１０１およびＦＷブラックリストの情報を保存する。情報配信部６４０は、ＦＷおよびＦＷブラックリストをＳＭ１０１へ配信する処理を行う。
【００４２】
情報管理部６２０は、ＦＷ情報管理部６２１、ＳＭ情報管理部６２２およびＦＷブラックリスト管理部６２３から構成される。ＦＷ情報管理部６２１は、稼働中及び保持するＦＷの情報を管理する。ＳＭ情報管理部６２２は、ＳＭ１０１の設定情報および装置情報等を管理する。ＦＷブラックリスト管理部６２３は、受信したＦＷブラックリストの情報を管理する。
【００４３】
情報配信部６４０は、ＦＷ配信部６４１およびＦＷブラックリスト配信部６４２から構成される。ＦＷ配信部６４１およびＦＷブラックリスト配信部６４２は、ＳＭ１０１にそれぞれＦＷおよびＦＷブラックリストを配信する。
【００４４】
ＦＷ管理サーバ１４１は、ネットワークインタフェース部３０７を介してＳＭ運用管理ネットワーク１３０と接続され、ＳＭ１０１のＦＷバージョン管理、ＦＷ配信およびＦＷブラックリスト配信を行う。
【００４５】
上記の制御機能部６００および表示部６０１は、ＣＰＵ３０１がＲＡＭ３０３に格納されたプログラムを実行することによって実現される。すなわち、制御機能部６００および表示部６０１が実行する処理は、実際には、ＲＡＭ３０３に格納されたプログラムに記述された命令に従って、ＣＰＵ３０１によって実行される。このとき、ＣＰＵ３０１は、必要に応じてＦＷ管理サーバ１４１の各部を制御してもよい。例えば、ＣＰＵ３０１は、プログラムに従って表示部３０５を制御することによって表示部６０１の機能を実現してもよい。ＣＰＵ３０１によって実行されるプログラムは、ＲＯＭ３０２または記憶部３０４（例えばハードディスクドライブ等）に格納され、必要に応じてＲＡＭ３０３にコピーされてもよい。
【００４６】
以下、図４、図５および図６を用いて本発明の実施例１のＦＷブラックリスト配信処理の流れを説明する。
【００４７】
図４は、本発明の実施例１の電子機器システムにおいて各ＳＭが保持しているＦＷのバージョンの一例を示す説明図である。
【００４８】
図５は、本発明の実施例１において実行されるＦＷブラックリスト配信処理の一例を示すシーケンス図である。
【００４９】
図６は、本発明の実施例１のＳＭ１０１がＦＷブラックリストを受信したときに実行する処理の一例を示すフローチャートである。
【００５０】
図４には、説明を簡単にするために、１台のコンセントレータ１２１および４台のＳＭ（すなわちＳＭ＿Ａ〜ＳＭ＿Ｄ）を表示している。ＳＭ＿Ａ〜ＳＭ＿Ｄの各々は、これまでに説明したＳＭ１０１であり、例えば図１に示したＳＭ１０１ａ〜１０１ｆのいずれかであってもよい。また、コンセントレータ１２１は、図１に示したコンセントレータ１２１ａまたは１２１ｂのいずれかであってもよいし、図４のシステムがそれらの両方を含んでもよい。また、図４では電力使用量管理サーバ１４２は省略されている。
【００５１】
図４に示す例においては、ＦＷ管理サーバ１４１はコンセントレータ１２１の配下に４台のＳＭ、すなわちＳＭ＿Ａ〜ＳＭ＿Ｄを管理している。それぞれのＳＭにおいて装置内に保持している新旧ＦＷバージョンを、それぞれＳＭ＿ＡのＦＷバージョン４１１、ＳＭ＿ＢのＦＷバージョン４１２、ＳＭ＿ＣのＦＷバージョン４１３、ＳＭ＿ＤのＦＷバージョン４１４として示した。具体的には、ＳＭ＿Ａは、現在適用している新ＦＷであるｖ１．０を（例えば記憶部２０４内に）保持し、さらに現在は適用していない旧ＦＷであるｖ０．９も保持している。すなわち、ＦＷバージョン４１１はｖ１．０およびｖ０．９を含む。同様に、ＳＭ＿Ｂは新ＦＷであるｖ０．８および旧ＦＷであるｖ０．７を保持しており、ＳＭ＿Ｃは新ＦＷであるｖ０．９および旧ＦＷであるｖ０．７を保持しており、ＳＭ＿Ｄは新ＦＷであるｖ１．０を保持し、旧ＦＷは保持していない。
【００５２】
なお、この例において、バージョン番号の大きさはバージョンの新しさを示している。例えばｖ０．８はｖ０．７より新しい（すなわち後に作成された）バージョンであり、ｖ１．０はｖ０．９より新しいバージョンである。
【００５３】
ここで、ＦＷバージョンｖ１．０およびｖ０．８に不具合があることが判明し、当該不具合のあるＦＷを使用禁止にしたい状況になった場合を例としてＦＷブラックリストの配信処理の流れを説明する。この例において、当該不具合の影響は装置型式がＡまたはＣであるＳＭ１０１においてのみ顕在化する（すなわち装置型式がＡまたはＣのいずれでもないＳＭ１０１には引き続きｖ１．０およびｖ０．８のＦＷを適用しても不具合の影響が顕在化しない）ものとする。また、この例において、ＳＭ＿Ａ、ＳＭ＿Ｂ、ＳＭ＿Ｃ、ＳＭ＿Ｄの装置型式は、それぞれＡ、Ｂ、Ｃ、Ｄである。
【００５４】
この例において、管理者がＦＷ管理サーバ１４１の入力装置３０６を介してＦＷブラックリストにｖ１．０およびｖ０．８を登録し、さらに、それらの使用禁止条件として「装置型式がＡまたはＣである」を登録すると（Ｓ１００）、ＦＷ管理サーバ１４１はＦＷブラックリスト４０１を作成し（Ｓ１１０）、コンセントレータ１２１に配信する（Ｓ１２０）。
【００５５】
コンセントレータ１２１は、４台のＳＭ＿Ａ〜ＳＭ＿Ｄに対してそれぞれ、ＦＷ管理サーバ１４１から受信したＦＷブラックリスト４０１をユニキャスト配信する（Ｓ１３０−１，Ｓ１３０−２，Ｓ１３０−３，Ｓ１３０−４）。ＳＭ＿Ａ〜ＳＭ＿Ｄは受信したＦＷブラックリスト４０１を解析し（Ｓ１４０−１，Ｓ１４０−２，Ｓ１４０−３，Ｓ１４０−４）、自装置が保持するＦＷバージョンと照らし合わせたＦＷブラックリスト解析結果に基づく判定を行い（Ｓ１５０−１，Ｓ１５０−２，Ｓ１５０−３，Ｓ１５０−４）、次に実施する処理を決定する。
【００５６】
ＦＷブラックリストを受信した４台のＳＭが決定した処理を実行した結果、それぞれが保持するＦＷのバージョンがどのように更新されるかを、それぞれＳＭ＿ＡのＦＷバージョン４２１、ＳＭ＿ＢのＦＷバージョン４２２、ＳＭ＿ＣのＦＷバージョン４２３、ＳＭ＿ＤのＦＷバージョン４２４として図４に示した。
【００５７】
具体的には、ＳＭ＿Ａは、適用していたＦＷがｖ１．０であったためその適用を解除し、替わりに旧ＦＷとして保持していたｖ０．９を適用する処理を行い（Ｓ１６０−１）、保持していたｖ１．０をＳＭ＿Ａから削除する（Ｓ１７０−１）。このように、新しいバージョンのＦＷの使用を中止し、保持していたが使用していなかった古いバージョンのＦＷの使用を開始する処理を、ＦＷロールバック処理と記載する。
【００５８】
ＳＭ＿Ｂは、適用していたＦＷがＦＷブラックリスト４０１に含まれるｖ０．８だが、その装置型式がＢであり、「使用禁止条件：装置型式がＡまたはＣである」に該当しないため、ＦＷロールバック処理を行うことなく、通常動作を継続する。これは、不具合が判明しているＦＷバージョンであっても、不具合が顕在化しない条件を満たして運用されている場合には、ＳＭ１０１の判断でＦＷを切り替えることなく通常動作を継続することができ、運用停止時間を短縮できる例である。
【００５９】
ＳＭ＿Ｃは、適用していたｖ０．９がＦＷブラックリスト４０１で指定されていないため、適用ＦＷを変更しない（Ｓ１８０）。
【００６０】
ＳＭ＿Ｄは、適用していたＦＷのｖ１．０がＦＷブラックリスト４０１で指定されているため、その適用を取りやめるが、替わりに適用可能なバージョンのＦＷを保持していないため、電力使用量管理サーバ１４２への電力使用量報告処理を停止する縮退動作モード（詳細は後述）に運転状態を遷移させる（Ｓ１９０）。
【００６１】
そのうえで、ＳＭ＿ＤはＦＷ管理サーバ１４１に対して縮退動作していることを通知するためのメッセージ生成し（Ｓ１９１）、コンセトレータ経由で当該メッセージを報告する（Ｓ１９２，Ｓ１９３）。ＦＷ管理サーバ１４１は、ＳＭ＿Ｄが縮退動作になった旨の通知を表示する（Ｓ１９４）ことによって、システム管理者へ通知する。その通知は、当該電子機器（ＳＭ１０１）で動作する上で問題の発生しないＦＷバージョンへの切り替えを促すものであり、ＦＷ管理サーバ１４１側から当該電子機器で動作可能なＦＷをダウンロードさせることができ、このことがシステム運用停止時間を短縮することに寄与する。
【００６２】
各電子機器がＦＷ更新（ＦＷロールバック処理を含む）をした場合、ＦＷバージョンの情報をＦＷ管理サーバ１４１へ送ることで、各電子機器が使用しているＦＷバージョンをＦＷ管理サーバ１４１で管理することができる。
【００６３】
ここで、図６を参照して、上記の処理においてＦＷブラックリスト４０１を受信した各ＳＭ１０１が実行する処理の詳細な手順を説明する。この処理は、例えば、ＳＭ１０１の制御機能部５０００によって実行される。
【００６４】
最初に、ＳＭ１０１は、初期設定処理を実行する（Ｓ６００１）。これは、ＳＭ１０１が本来の機能（例えば電力使用量報告等）およびＦＷの管理機能を実現するために必要な設定を行う処理であり、例えば、電力使用量管理サーバ１４２およびＦＷ管理サーバ１４１と通信するためのネットワークアドレスを取得する処理等を含んでもよい。
【００６５】
次に、ＳＭ１０１は、イベント待ち状態となる（Ｓ６００２）。その後、ＳＭ１０１がＦＷブラックリスト４０１を受信すると（Ｓ６００３）、ＦＷブラックリスト受信イベントが発生し、Ｓ６００４以降の処理が実行される。
【００６６】
まず、ＳＭ１０１は、受信したＦＷブラックリストを解析する（Ｓ６００４）。例えば、ＳＭ１０１は、受信したＦＷブラックリスト４０１に含まれる使用禁止バージョン番号、使用禁止条件等を読み取る。ＦＷブラックリスト４０１の例については後述する（図９参照）。この処理は、図５に示したＦＷブラックリスト受信および解析（Ｓ１４０）に含まれる。ＳＭ＿Ａ〜ＳＭ＿Ｄが実行するＳ１４０は、図５ではそれぞれＳ１４０−１〜Ｓ１４０−４と表示されている。
【００６７】
次に、ＳＭ１０１は、自装置のＦＷのバージョンを確認する（Ｓ６００５）。具体的には、ＳＭ１０１は、自装置で稼働中の（すなわちＣＰＵ２０１が使用中の）ＦＷのバージョンを確認し、さらに、稼働中でないバージョンを保持している場合にはそのバージョンも確認する。例えば、ＳＭ＿Ａ〜ＳＭ＿Ｄは、それぞれ、自装置のＦＷのバージョンが図４に示すＦＷバージョン４１１〜４１４であることを確認する。
【００６８】
次に、ＳＭ１０１は、自装置で稼働中のＦＷのバージョンが使用禁止であるか否かを判定する（Ｓ６００６）。具体的には、ＳＭ１０１は、稼働中のＦＷのバージョン番号が、受信したＦＷブラックリスト４０１の使用禁止ＦＷバージョンと一致し、かつ、自装置が当該バージョン番号に対応する使用禁止条件を満たす場合、自装置で稼働中のＦＷのバージョンが使用禁止であると判定する。
【００６９】
Ｓ６００６において稼働中のＦＷのバージョンが使用禁止でないと判定された場合、稼働中のＦＷのバージョンには不具合がないか、または、不具合があっても当該ＳＭ１０１ではその影響が顕在化しないため、稼働中のＦＷのバージョンをそのまま使用し続けることができる。このため、ＳＭ１０１は、稼働中のＦＷのバージョンによる通常運転モードを継続し（Ｓ１８０）、イベント待ち状態（Ｓ６００２）に戻る。
【００７０】
Ｓ６００６において稼働中のＦＷのバージョンが使用禁止であると判定された場合、稼働中のＦＷのバージョンには不具合があり、かつ、当該ＳＭ１０１において当該不具合の影響が顕在化するため、稼働中のＦＷのバージョンを使用し続けることはできない。このため、ＳＭ１０１は、自装置で保持している稼働中でないＦＷのバージョンが使用禁止であるか否かを判定する（Ｓ６００７）。具体的には、ＳＭ１０１は、保持しているＦＷのバージョン番号が、受信したＦＷブラックリスト４０１の使用禁止ＦＷバージョンと一致し、かつ、自装置が当該バージョン番号に対応する使用禁止条件を満たす場合、保持しているＦＷのバージョンが使用禁止であると判定する。
【００７１】
Ｓ６００７において保持しているＦＷのバージョンが使用禁止でないと判定された場合、当該ＳＭ１０１は、不具合のない（または不具合の影響が当該ＳＭ１０１において顕在化しない）ＦＷのバージョンを保持しているため、稼働中のＦＷのバージョンの代わりに当該保持しているＦＷのバージョンを使用することができる。このため、ＳＭ１０１は、使用禁止であると判定された稼働中のＦＷのバージョンの稼働を中止して、使用禁止でないと判定されたＦＷのバージョンの使用を開始するＦＷロールバック処理（Ｓ１６０）を実行する。さらに、ＳＭ１０１は、稼働を中止した（すなわち使用禁止であると判定された）ＦＷのバージョンを当該ＳＭ１０１から削除し（Ｓ１７０）、イベント待ち状態（Ｓ６００２）に戻る。
【００７２】
なお、図４の例では稼働中でないＦＷのバージョンを一つだけ保持しているＳＭ１０１を示しているが、ＳＭ１０１が稼働中でないＦＷのバージョンを複数保持していてもよい。その場合、ＳＭ１０１は保持している複数のバージョンの各々についてＳ６００７の判定を行い、それらの少なくとも一つが使用禁止でないと判定した場合、その使用禁止でないＦＷのバージョンについてＳ１６０およびＳ１７０を実行する。使用禁止でないと判定されたバージョンが複数存在する場合には、ＳＭ１０１はそれらのうち一つについてＳ１６０およびＳ１７０を実行する。
【００７３】
Ｓ６００７において保持しているＦＷのバージョンが使用禁止であると判定された場合、当該ＳＭ１０１は、不具合のない（または不具合の影響が当該ＳＭ１０１において顕在化しない）ＦＷのバージョンを保持していない。この場合、稼働中のＦＷのバージョンを使用し続けることができず、さらに、保持しているＦＷのバージョンへのロールバックもできないため、ＳＭ１０１は、稼働中のＦＷのバージョンによる運転状態を縮退動作モードに遷移させる（Ｓ１９０）。
【００７４】
縮退動作モードとは、ＦＷの不具合の影響が顕在化しない（または顕在化したとしてもその影響が小さくなる）ように、稼働中のＦＷに基づいて実現される機能の一部が停止された運転状態である。縮退動作モードにおいて停止される機能は、あらかじめ定めておくことができる。本実施例では、ＳＭ１０１による電力使用量管理サーバ１４２への電力使用量報告処理が停止される。具体的には、電力計測部２０６による電力量の計測そのものが停止してもよいし、計測した電力量を電力使用量管理サーバ１４２に送信する処理が停止してもよい。一方、制御機能部５０００は、新しい（不具合のない）ＦＷを受信してその使用を開始するために必要であるため、縮退動作モードにおいても原則として停止しない。同様に、本実施例がＳＭ１０１以外の電子機器に適用される場合にも、当該電子機器の機能の一部が停止される。
【００７５】
ＳＭ１０１は、Ｓ１９０において運転状態を縮退動作モードに遷移させた後、当該ＳＭ１０１の運転状態が縮退動作モードに遷移したことを通知するメッセージを作成して送信し（Ｓ１９１）、イベント待ち状態（Ｓ６００２）に戻る。
【００７６】
なお、ＳＭ１０１が稼働中でないＦＷのバージョンを一つも保持していない場合にも、Ｓ６００７ではＹｅｓと判定され、Ｓ１９０およびＳ１９１が実行される。
【００７７】
上記のＳ６００５〜Ｓ６００７は、図５に示した解析結果に基づく判定（Ｓ１５０）に含まれる。ＳＭ＿Ａ〜ＳＭ＿Ｄが実行するＳ１５０は、図５ではそれぞれＳ１５０−１〜Ｓ１５０−４と表示されている。図５の例において、ＳＭ＿Ａは、Ｓ６００６でＹｅｓ（すなわち使用禁止である）、Ｓ６００７でＮｏ（すなわち使用禁止でない）と判定し、Ｓ１６０およびＳ１７０を実行する。ＳＭ＿Ａが実行するＳ１６０およびＳ１７０は、図５ではそれぞれＳ１６０−１およびＳ１７０−１と表示されている。ＳＭ＿ＢおよびＳＭ＿Ｃは、Ｓ６００６でＮｏと判定し、Ｓ１８０を実行する。ＳＭ＿Ｄは、Ｓ６００６でＹｅｓ、Ｓ６００７でＹｅｓと判定し、Ｓ１９０およびＳ１９１を実行する。
【００７８】
次に、図７および図８を用いてＦＷ配信の流れを説明する。
【００７９】
図７は、本発明の実施例１において実行されるＦＷ配信処理の一例を示すシーケンス図である。
【００８０】
図８は、本発明の実施例１のＳＭ１０１がＦＷを受信したときに実行する処理の一例を示すフローチャートである。
【００８１】
ここでは、例として、先に説明したＦＷブラックリスト作成配信およびそれに応じたＳＭ１０１での処理が完了した後に実行されるＦＷ配信処理について説明する。すなわち、ＦＷ管理サーバ１４１はコンセントレータ１２１の配下に４台のＳＭを管理しており（図４参照）、各ＳＭ１０１はＦＷバージョン４２１〜４２４を保持している。具体的には、ＳＭ＿Ａは適用中のＦＷとしてｖ０．９を保持し、旧ＦＷは保持していない。ＳＭ＿Ｂは適用中のＦＷとしてｖ０．８を、旧ＦＷとしてｖ０．７を保持している。ＳＭ＿Ｃは適用中のＦＷとしてｖ０．９を、旧ＦＷとしてｖ０．７を保持しており、ＳＭ＿Ｄは適用中のＦＷとしてｖ１．０を保持し、動作状態が縮退動作モードであり、旧ＦＷは保持していない。
【００８２】
ここで、ＦＷバージョンｖ１．０の不具合を修正したｖ１．１の準備が完了し、各ＳＭに適用する。管理者がＦＷ管理サーバ１４１の入力装置３０６を介して新ＦＷであるｖ１．１を登録し（Ｓ２００）、ＳＭへの新ＦＷ適用操作を実行すると（Ｓ２１０）、ＦＷ管理サーバ１４１はＦＷｖ１．１をコンセントレータ１２１に配信する（Ｓ２２０）。
【００８３】
コンセントレータ１２１は、４台のＳＭ＿Ａ〜ＳＭ＿Ｄに対して、通信の混雑具合を確認しながら、ＦＷ管理サーバ１４１から受信したＦＷｖ１．１を配信する（Ｓ２３０−１，Ｓ２３０−２，Ｓ２３０−３，Ｓ２３０−４）。
【００８４】
ＦＷを受信した各ＳＭ１０１すなわちＳＭ＿Ａ〜ＳＭ＿Ｄは、受信したＦＷのチェックサム、ファイルサイズ、バージョン情報などを解析し（Ｓ２４０−１，Ｓ２４０−２，Ｓ２４０−３，Ｓ２４０−４）、それらに問題がなければ、解析結果に基づく判定を行い（Ｓ２５０−１，Ｓ２５０−２，Ｓ２５０−３，Ｓ２５０−４）、次に実行する処理を決定する。
【００８５】
ＳＭ１０１は、受信したＦＷと自装置に保持しているＦＷブラックリスト情報と照らし合わせた結果、受信したＦＷを適用できないと判断した場合には、受信したＦＷを破棄する（図８のＳ２６０）。一方、受信したＦＷを適用できると判断した場合には、ＳＭ１０１は、ＦＷ更新処理を実行する（Ｓ２７０）。これによって、受信したＦＷに不具合がある場合にはそれが使用されることを防ぐことができる。また、ＦＷ更新処理（Ｓ２７０）を実行した時点で自装置の運転状態が縮退動作モードであれば、次に、ＳＭ１０１は、通常動作モードに運転状態を遷移させる（Ｓ２８０）。これによって、電力使用量管理サーバ１４２への電力使用量報告処理を再開することができる。
【００８６】
ここで、図８を参照して、上記の処理においてＦＷを受信した各ＳＭ１０１が実行する処理の詳細な手順を説明する。
【００８７】
最初に、ＳＭ１０１は、初期設定処理を実行し（Ｓ８００１）、続いてイベント待ち状態となる（Ｓ８００２）。これらは、それぞれ図６のＳ６００１およびＳ６００２と同様である。その後、ＳＭ１０１がＦＷを受信すると（Ｓ８００３）、ＦＷ受信イベントが発生し、Ｓ８００４以降の処理が実行される。
【００８８】
まず、ＳＭ１０１は、受信したＦＷを解析する（Ｓ８００４）。例えば、ＳＭ１０１は、受信したＦＷのバージョン番号等を読み取る。この処理は、図７に示したＦＷ受信および解析（Ｓ２４０）に含まれる。ＳＭ＿Ａ〜ＳＭ＿Ｄが実行するＳ２４０は、図７ではそれぞれＳ２４０−１〜Ｓ２４０−４と表示されている。
【００８９】
次に、ＳＭ１０１は、自装置が保持しているＦＷブラックリストを確認する（Ｓ８００５）。例えばＳＭ１０１がＦＷブラックリスト４０１を保持している場合、その内容が確認される。
【００９０】
次に、ＳＭ１０１は、保持しているＦＷブラックリストに基づいて、受信したＦＷが使用禁止であるか否かを判定する（Ｓ８００６）。具体的には、ＳＭ１０１は、受信したＦＷのバージョン番号が、保持しているＦＷブラックリストの使用禁止ＦＷバージョンと一致し、かつ、自装置が当該バージョン番号に対応する使用禁止条件を満たす場合、受信したＦＷが使用禁止であると判定する。
【００９１】
Ｓ８００６において受信したＦＷが使用禁止であると判定された場合、ＳＭ１０１は、受信したＦＷを自装置に適用することができないため、受信したＦＷを破棄して（Ｓ２６０）、イベント待ち状態（Ｓ８００２）に戻る。
【００９２】
Ｓ８００６において受信したＦＷが使用禁止でないと判定された場合、ＳＭ１０１は、受信したＦＷを自装置に適用するためのＦＷ更新処理を実行する（Ｓ２７０）。例えば、ＳＭ１０１は、受信したＦＷを記憶部２０４等に保持し、当該受信したＦＷの使用を開始する。このとき、ＳＭ１０１は、それまで使用していたＦＷの使用を中止し、そのまま稼働中でないＦＷとして保持し続けてもよいし、所定の条件下で（例えば保持しているＦＷの数が所定の数を超えた場合に）古いバージョンのＦＷを削除してもよい。
【００９３】
なお、上記のＳ８００５〜Ｓ８００６は、図７に示した解析結果に基づく判定（Ｓ２５０）に含まれる。ＳＭ＿Ａ〜ＳＭ＿Ｄが実行するＳ２５０は、図７ではそれぞれＳ２５０−１〜Ｓ２５０−４と表示されている。また、ＳＭ＿Ａ〜ＳＭ＿Ｄが実行するＳ２７０は、図７ではそれぞれＳ２７０−１〜Ｓ２７０−４と表示されている。
【００９４】
次に、ＳＭ１０１は、自装置の動作状態が縮退動作モードであるか否かを判定する（Ｓ８００７）。自装置の動作状態が縮退動作モードでない場合、ＳＭ１０１は、動作状態を変更せずにイベント待ち状態（Ｓ８００２）に戻る。
【００９５】
自装置の動作状態が縮退動作モードである場合、ＳＭ１０１は、動作状態を通常動作モードに変更し（Ｓ２８０）、イベント待ち状態（Ｓ８００２）に戻る。これによって、当該ＳＭ１０１による電力使用量管理サーバ１４２への電力使用量報告処理が再開される。
【００９６】
図７の例では、ＳＭ＿Ａ〜ＳＭ＿ＤのいずれにおいてもＳ２７０が実行される。さらに、ＳＭ＿Ｄでは動作状態が縮退動作モードであるため、Ｓ２８０も実行される。
【００９７】
図７には、適用中のＦＷのバージョンに不具合が発生した後で実行される新しいＦＷの配信処理を例示した。この例において、ＦＷ管理サーバ１４１がいずれかのＳＭ１０１から運転状態が縮退動作モードに遷移したことを通知するメッセージを受信した場合には、ＦＷ管理サーバ１４１は当該メッセージを送信したＳＭ１０１に優先的に（すなわち他のＳＭ１０１に配信する前に）新しいＦＷを配信してもよい。例えば、ＳＭ＿Ｄが図５のＳ１９１、Ｓ１９２に示すようにメッセージを送信した場合には、ＦＷ管理サーバ１４１は、先にＳＭ＿Ｄに新しいＦＷを配信し、その後、ＳＭ＿Ａ〜ＳＭ＿Ｃに新しいＦＷを配信する（Ｓ２２０）。このようなＦＷの配信は、それぞれのＳＭ１０１のアドレスを指定したユニキャスト配信によって実現できる。これによって、縮退動作モードのＳＭ１０１を早期に通常動作モードに復帰させることで、当該ＳＭ１０１において機能が制限されている時間を短縮することができる。
【００９８】
ＦＷ管理サーバ１４１は、不具合が解消された新しいＦＷの作成が完了する前に、縮退動作モードで動作しているＳＭ１０１を通常動作モードに復帰させたい場合には、既に作成されている古いバージョンのＦＷのうち、不具合がないバージョンのＦＷ（例えばｖ０．９）を当該縮退動作モードで動作しているＳＭ１０１に送信してもよい。
【００９９】
稼働中のＦＷに不具合がない場合でも、新しいバージョンのＦＷが作成された場合にはそれが配信される。その場合、図７のＳ２１０以降の処理が実行される。
【０１００】
図９は、本発明の実施例１のＦＷ管理サーバ１４１が配信するＦＷブラックリスト４０１の一例を示す説明図である。
【０１０１】
ＦＷブラックリスト４０１には、当該ＦＷブラックリスト４０１のリビジョン番号情報９０１（本例ではｒｅｖｉｓｉｏｎ３）、優先順ポリシー９０２（本例では、ＳＭ１０１が複数の使用可能なＦＷバージョンを保持している場合に、より新しい（バージョン番号が大きい）ＦＷが適用される）、および使用禁止ＦＷバージョンの一覧９０３が記載されている。これに加えて、ＦＷブラックリスト４０１には、各ＦＷバージョンを使用禁止にする条件９０４が記載されていてもよい。使用禁止条件９０４が記載されている場合には、各電子機器が自装置の属性（例えば運転状態、設定されているパラメータの値および型式等）がその条件を満たすか否かを判断して、使用するＦＷバージョンを各電子機器（本実施例ではＳＭ１０１）が判断することができる。
【０１０２】
図９には、ＦＷバージョンがｖ０．３かつ運転状態がＳであれば使用禁止、ＦＷバージョンがｖ０．６かつパラメータＸの設定値が１であれば使用禁止、ＦＷバージョンがｖ０．８かつ装置型式がＡまたはＣであれば使用禁止、とする例を示す。ＦＷバージョンｖ１．０については使用禁止条件９０４が設定されていないため、ＳＭ１０１はＦＷバージョン情報のみに基づいて判定を行う。
【０１０３】
また、ＳＭ１０１が複数の適用可能（すなわち使用禁止でない）ＦＷバージョンを保持している場合には、ＦＷブラックリストの優先順ポリシー９０２に従い、適用するＦＷを決定する。たとえば、あるＳＭ１０１において適用中のＦＷがｖ１．０であり、自装置にＦＷｖ０．７およびｖ０．９を保持していた場合に、本ＦＷブラックリスト４０１を受信した場合、ｖ１．０が使用禁止となるが、ｖ０．７およびｖ０．９はいずれも使用禁止でないため、ＳＭ１０１は優先順ポリシー９０２である「より新しい（バージョン番号が大きい）ＦＷを適用」に従ってｖ０．９へのロールバックを行う。
【０１０４】
以上の本発明の実施例１によれば、ＦＷ管理サーバ１４１は、不具合が発生したＦＷを使用禁止にしたい場合、使用禁止としたいＦＷのバージョンを特定する情報（例えばＦＷバージョン名またはＦＷバージョン番号等の一覧）を記載したＦＷブラックリスト４０１を作成し、各電子機器に配信する。ＦＷバージョン名等の一覧の情報だけであれば、ネットワークの伝送速度が遅い場合であっても、すぐに全ての電子機器に通知することができる。
【０１０５】
ＦＷ管理サーバ１４１は、ＦＷブラックリスト４０１を一つ作成して、全電子機器に配信する。各電子機器は、自装置内に保持された新旧ＦＷの中で、ＦＷブラックリストに記載されていないＦＷへの切り替えを行う。これによって、不具合が発生したＦＷが電子機器上で動作し続けることを防ぐことができる。このとき、上記の通り、ＦＷ管理サーバ１４１は、ＦＷ更新バージョンの決定処理およびＦＷ更新指示送信を電子機器毎に行う必要がない。このため、ＦＷ管理サーバ１４１が各電子機器へＦＷ更新指示を送信するときと比べ、ネットワークへの負荷が軽くなる。
【０１０６】
管理者がＦＷ使用禁止を行いたいとき、その使用禁止とするＦＷバージョンを記載したＦＷブラックリストを作成し、全電子機器へ配信する。つまり、電子機器からの問い合わせに応じてＦＷブラックリスト４０１を配信する場合と比べ、即時性に優れている。
【０１０７】
稼働中のＦＷで問題が発生した場合には、使用禁止とするＦＷバージョンを記載したＦＷブラックリスト４０１を電子機器に配信することによって、各電子機器は、新旧のＦＷの中から、ＦＷブラックリスト４０１に記載されていないＦＷを選択して、稼働中のＦＷに切り替えることができる。例えば新バージョンのＦＷには不具合があるが、保持している旧バージョンのＦＷには不具合がない場合、当該旧バージョンのＦＷへのロールバック処理を行うことによって電子機器の動作を継続することができる。ロールバック処理を行った場合、使用を中止した新バージョンのＦＷを削除することによって、そのＦＷが再度使用されることを防ぐことができる。
【０１０８】
仮に、電子機器が、ＦＷブラックリスト４０１に記載されたＦＷしか持っていない場合には、電子機器の処理を停止、または新しいＦＷ受信以外の処理を停止する縮退動作モードに遷移する。さらに、電子機器は、管理者およびＦＷ管理サーバ１４１に対して問題のないことがわかっているＦＷバージョンへの切り替えを促す。これによってＦＷ管理サーバ１４１から当該電子機器で使用可能なＦＷをダウンロードすることができ、システムの運用停止時間を短縮することができる。
【０１０９】
適用されるＦＷがＦＷブラックリスト４０１に記載されているＦＷから記載されていないＦＷに切替えられた後、当該ＦＷブラックリスト４０１に記載されたＦＷは、各電子機器から削除される。
【０１１０】
ＦＷブラックリスト４０１に、各ＦＷバージョンを使用禁止にする条件が記載されている場合には、その条件を判断して、使用するＦＷバージョンを各電子機器が判断することができる。例えばＦＷ管理サーバ１４１側で保持していないような設定値に依存した不具合等があった場合であっても、使用するＦＷバージョンを各電子機器が適切に判断することができる。これによって、不具合が発生したＦＷであっても、特定の電子機器では問題なく動作することがわかっている場合に、当該特定の電子機器ではＦＷを切り替えることなく通常動作を継続することによって、不要なＦＷの切り替えおよび縮退モードへの遷移を防ぐことができる。
【０１１１】
また、ＦＷブラックリスト４０１に記載されていないバージョンのＦＷは使用可能と判定されるため、ＦＷ管理サーバ１４１が新しいバージョンのＦＷ（例えば不具合が解消されたＦＷ）を配信した場合、ＦＷブラックリスト４０１を更新しなくても、各ＳＭ１０１は当該新しいバージョンのＦＷの使用を開始することができる。
【０１１２】
実施例１では電子機器の例としてＳＭ１０１を示したが、ネットワークに接続されたいかなる種類の電子機器にも本発明を適用することができる。
【実施例２】
【０１１３】
実施例１のＦＷブラックリスト４０１を、適用可能ＦＷ一覧すなわちＦＷホワイトリストに置き換えてもよい。実施例１のＦＷブラックリスト４０１をＦＷホワイトリストに置き換えた電子機器システムを実施例２として説明する。以下に説明する相違点を除き、実施例２の電子機器システムは、図１〜図９に示された実施例１と同一であるため、それらの説明は省略する。
【０１１４】
図１０は、本発明の実施例２のＦＷ管理サーバ１４１が配信するＦＷホワイトリスト１０００の一例を示す説明図である。
【０１１５】
ＦＷホワイトリスト１０００には、当該ＦＷホワイトリスト１０００のリビジョン番号情報１００１（本例ではｒｅｖｉｓｉｏｎ３）、優先順ポリシー１００２（本例では、より新しい（バージョン番号が大きい）ＦＷを適用）、および使用可能ＦＷバージョンの一覧１００３が記載されている。これに加えて、ＦＷホワイトリスト１０００には、各ＦＷバージョンを使用可能にする条件１００４が記載されていてもよい。使用可能条件１００４が記載されている場合には、その条件を判断して、使用するＦＷバージョンを各電子機器（本実施例ではＳＭ１０１）が判断することができる。
【０１１６】
図１０の例は、図９のＦＷブラックリスト４０１の条件を、ＦＷホワイトリスト１０００で表現したものである。例えば、ＦＷブラックリスト４０１では、使用禁止ＦＷバージョン９０３としてｖ０．１、ｖ０．２、ｖ０．４、ｖ０．５、ｖ０．７、ｖ０．９およびｖ１．１は登録されていない。一方、ＦＷホワイトリスト１０００では、使用可能ＦＷバージョン１００３としてｖ０．１、ｖ０．２、ｖ０．４、ｖ０．５、ｖ０．７、ｖ０．９およびｖ１．１が登録され、それらに対応する使用可能条件１００４として全ての条件が登録されている。これらは、いずれも、バージョン番号がｖ０．１、ｖ０．２、ｖ０．４、ｖ０．５、ｖ０．７、ｖ０．９およびｖ１．１であるＦＷが全ての条件で使用可能である（すなわち使用禁止されていない）ことを示している。
【０１１７】
また、ＦＷブラックリスト４０１では、使用禁止ＦＷバージョン９０３としてｖ０．３が登録され、それに対応する使用禁止条件９０４として、「運転状態がＳである」が登録されている。一方、ＦＷホワイトリスト１０００では、使用可能ＦＷバージョン１００３としてｖ０．３が登録され、それに対応する使用可能条件１００４として「運転状態がＴである、パラメータＸが１、２または３である、装置型式がＡ、Ｂ、ＣまたはＤである」が登録されている。これらはいずれも、バージョン番号がｖ０．３であるＦＷが、運転状態がＳである場合に使用禁止であり、それ以外の場合には使用可能であることを示している。
【０１１８】
このように、ＦＷブラックリスト４０１およびＦＷホワイトリスト１０００は、いずれも、ＦＷの使用可否を示す情報であるという点で等価であり、図９および図１０に示すように、同一内容の使用可否を示す情報をブラックリストおよびホワイトリストのいずれの形式でも表現することができる。すなわち、図９に示すＦＷブラックリスト４０１およびＦＷホワイトリスト１０００のいずれか一方に登録されているバージョンに関する限り、それらのいずれに基づいても、使用可否の判定結果は同一になる。
【０１１９】
ただし、例えばＦＷブラックリスト４０１およびＦＷホワイトリスト１０００のいずれにも登録されていないバージョン（例えばｖ１．２）に関しては、ＦＷブラックリスト４０１に基づけば使用可能と判定されるが、ＦＷホワイトリスト１０００に基づけば使用禁止と判定される。
【０１２０】
実施例２のＳＭ１０１は、ＦＷ／ＦＷブラックリスト受信部５３００、ＦＷ／ＦＷブラックリスト解析部５４００、ＦＷ／ＦＷブラックリスト比較部５５００、ＦＷブラックリスト条件比較部５５２０およびＦＷブラックリスト管理部５６３０が、それぞれ、ＦＷ／ＦＷホワイトリスト受信部、ＦＷ／ＦＷホワイトリスト解析部、ＦＷ／ＦＷホワイトリスト比較部、ＦＷホワイトリスト条件比較部およびＦＷホワイトリスト管理部（いずれも図示省略）によって置き換えられる点を除いて、実施例１のＳＭ１０１と同様に構成される。
【０１２１】
実施例２のＦＷ管理サーバ１４１は、ＦＷブラックリスト生成部６３０、ＦＷブラックリスト配信部６４２およびＦＷブラックリスト管理部６２３が、それぞれ、ＦＷホワイトリスト生成部、ＦＷホワイトリスト配信部およびＦＷホワイトリスト管理部（いずれも図示省略）によって置き換えられる点を除いて、実施例１のＦＷ管理サーバ１４１と同様に構成される。
【０１２２】
実施例２のＦＷ管理サーバ１４１は、Ｓ１１０（図５）において、不具合が判明したＦＷバージョンを使用可能ＦＷバージョン１００３から除外した（または、当該ＦＷバージョンを特定の条件下で使用可能である場合にはその条件を使用可能条件１００４に追加した）ＦＷホワイトリストを作成し、Ｓ１２０においてそれを配信する。例えばｖ１．０に不具合が判明した場合、使用可能ＦＷバージョン１００３からｖ１．０を除外したＦＷホワイトリスト１０００が作成および配信される。
【０１２３】
実施例２のコンセントレータ１２１は、Ｓ１３０−１〜Ｓ１３０−４において、各ＳＭ１０１にＦＷホワイトリスト１０００を配信する。
【０１２４】
実施例２の各ＳＭ１０１は、Ｓ１４０−１〜Ｓ１４０−４において、ＦＷホワイトリスト受信および解析を実行し、Ｓ１５０−１〜Ｓ１５０−４において、その解析結果に基づく判定を実行する。
【０１２５】
具体的には、実施例２の各ＳＭ１０１は、Ｓ６００３（図６）においてＦＷホワイトリスト１０００を受信すると、Ｓ６００４において受信したＦＷホワイトリスト１０００を解析し、Ｓ６００６において、稼働中のＦＷのバージョンがＦＷホワイトリスト１０００の使用可能ＦＷバージョン１００３に含まれていないか、または、含まれているが、自装置が当該ＦＷバージョンに対応する使用可能条件１００４を満たしていない場合、稼働中のＦＷのバージョンが使用禁止であると判定する。
【０１２６】
さらに、実施例２の各ＳＭ１０１は、Ｓ６００７において、保持しているＦＷのバージョンがＦＷホワイトリスト１０００の使用可能ＦＷバージョン１００３に含まれていないか、または、含まれているが、自装置が当該ＦＷバージョンに対応する使用可能条件１００４を満たしていない場合、保持しているＦＷのバージョンが使用禁止であると判定する。
【０１２７】
また、実施例２の各ＳＭ１０１は、Ｓ８００５（図８）において自装置が保持しているＦＷホワイトリストを確認し、Ｓ８００６において、受信したＦＷのバージョンがＦＷホワイトリスト１０００の使用可能ＦＷバージョン１００３に含まれていないか、または、含まれているが、自装置が当該ＦＷバージョンに対応する使用可能条件１００４を満たしていない場合、保持しているＦＷが使用禁止であると判定する。
【０１２８】
以上の実施例２によれば、ＦＷブラックリスト４０１の代わりにＦＷホワイトリスト１０００を配信することによって、実施例１と同様の効果が期待できる。さらに、ホワイトリストを使うことの利点としては、より厳しい条件判断ができることが挙げられる。例えば、管理者以外の第三者が、不正なＦＷをネットワーク上に流した場合を考える。この時、ブラックリスト方式ではこの不正なＦＷを使用禁止ＦＷバージョン９０３に追加したＦＷブラックリスト４０１を配信する前に、各電子機器において当該不正なＦＷへの更新が行われる可能性がある。一方、ホワイトリスト方式では、このような不正なＦＷはＦＷホワイトリスト１０００に登録されていないため、許可されていないＦＷと判断され、更新は行われない。ただし、ホワイトリスト方式では、最新のＦＷへの更新を行う度に、使用可能ＦＷバージョン１００３が当該最新のＦＷを含むようにＦＷホワイトリスト１０００を更新し、それを配信する必要がある。
【０１２９】
なお、本発明は上述した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１３０】
上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスクドライブ、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
【０１３１】
また、図面には、実施例を説明するために必要と考えられる制御線及び情報線を示しており、必ずしも、本発明が適用された実際の製品に含まれる全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１３２】
１０１  スマートメータ装置
１１１  無線通信区間
１１２  電力線通信区間
１２１  コンセントレータ
１３０  スマートメータ運用管理ネットワーク
１４１  ファームウェア管理サーバ
１４２  電力使用量管理サーバ
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  記憶部
２０５  電源部
２０６  電力計測部
２０７  通信制御部（ＰＬＣ）
２０８  状態表示部
２０９  通信制御部（無線）
２１０  アンテナ部
２１１  装置内配線
３０１  ＣＰＵ
３０２  ＲＯＭ
３０３  ＲＡＭ
３０４  記憶部
３０５  表示部
３０６  入力装置
３０７  ネットワークインタフェース部
３０８  外部装置インタフェース
３１０  装置内配線
４０１  ＦＷブラックリスト
４１１  スマートメータ装置ＡのＦＷバージョン（ブラックリスト受信前）
４１２  スマートメータ装置ＢのＦＷバージョン（ブラックリスト受信前）
４１３  スマートメータ装置ＣのＦＷバージョン（ブラックリスト受信前）
４１４  スマートメータ装置ＤのＦＷバージョン（ブラックリスト受信前）
４２１  スマートメータ装置ＡのＦＷバージョン（ブラックリスト受信後）
４２２  スマートメータ装置ＢのＦＷバージョン（ブラックリスト受信後）
４２３  スマートメータ装置ＣのＦＷバージョン（ブラックリスト受信後）
４２４  スマートメータ装置ＤのＦＷバージョン（ブラックリスト受信後）
１０００  ＦＷホワイトリスト
【図３】
2016051369.tif 000003
【図５】
2016051369.tif 000004
【図６】
2016051369.tif 000005
【図７】
2016051369.tif 000006
【図８】
2016051369.tif 000007
【図９】
2016051369.tif 000008
【図１０】
2016051369.tif 000009
【図１１】
2016051369.tif 000010
【図１２】
2016051369.tif 000011
【図１】
2016051369.tif 000012
【図２】
2016051369.tif 000013
【図４】
2016051369.tif 000014