(57)【要約】【課題】サーバとの通信環境が整備されていない環境においても、ファームウェアを容易に更新することができるシステムを提供する。【解決手段】電気機器本体と、電気機器本体の外部に設けられ、電気機器本体と通信するリモコンとを含むシステムであって、電気機器本体が保持している電気機器本体の第１ファームウェアをアップデートする更新部をさらに含み、リモコンは、電気機器本体用の第２ファームウェアを記憶する記憶部を有し、更新部は、所定のタイミングで、第１ファームウェアと、第２ファームウェアとを比較し、当該比較結果に基づいて第１ファームウェアを第２ファームウェアでアップデートする。【選択図】図１
2020016981.tif 000002
【特許請求の範囲】
【請求項１】
電気機器本体と、前記電気機器本体の外部に設けられ、前記電気機器本体と通信するリモコンとを含むシステムであって、
前記電気機器本体が保持している前記電気機器本体の第１ファームウェアをアップデートする更新部をさらに含み、
前記リモコンは、前記電気機器本体用の第２ファームウェアを記憶する記憶部を有し、
前記更新部は、所定のタイミングで、前記第１ファームウェアと、前記第２ファームウェアとを比較し、当該比較結果に基づいて前記第１ファームウェアを前記第２ファームウェアでアップデートするシステム。
【請求項２】
前記電気機器本体は、蓄電池を含む、請求項１に記載のシステム。
【請求項３】
前記蓄電池を充電する充電部と、
前記蓄電池の充電状態を判定する判定部とをさらに含み、
前記判定部により、前記蓄電池の蓄電量が第１しきい値以下であると判定されたことを受けて、前記充電部により、前記蓄電池の蓄電量が、前記第１しきい値よりも大きい第２しきい値になるまで前記蓄電池を充電した後に、前記更新部は前記アップデートを実行する、請求項２に記載のシステム。
【請求項４】
前記更新部は、前記リモコンに含まれる、請求項１〜３のいずれか１項に記載のシステム。
【請求項５】
前記更新部は、前記システムの起動時に、前記アップデートを行なう、請求項１〜４のいずれか１項に記載のシステム。
【請求項６】
前記リモコンは、外部機器と通信する通信部を含み、
前記リモコンは、前記第２ファームウェアを、前記通信部を介して前記外部機器から取得する、請求項１〜５のいずれか１項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムに関する。
【背景技術】
【０００２】
電力系統に接続され、一旦蓄電池に蓄えた電力を、停電時等に電力変換装置を介して負荷に供給することができる蓄電システムが知られている。そのような蓄電システムが設置されて運用された後に、蓄電システムの制御部に組み込まれたプログラム（以下、ファームウェア又はＦＷ（ｆｉｒｍｗａｒｅ）ともいう）を、新しいプログラムにアップデート（更新）する必要が生じることがある。ファームウェアの更新は、そのファームウェアが機器に組み込まれている形態（書換可能か否か）、その機器が有する機能（通信機能の有無）等に応じて、適切な更新方法が採用される。
【０００３】
後掲の特許文献１には、遠隔監視システムにおいてファームウェアを更新する技術が開示されている。このシステムは、ユーザが操作する携帯端末と、携帯端末と通信を行なうサーバコンピュータ（以下、サーバともいう）と、サーバと通信を行なうＨＥＭＳ（Ｈｏｍｅ  Ｅｎｅｒｇｙ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ）コントローラとを備えており、ファームウェアの更新中であることをユーザが認識可能にする。即ち、携帯端末はサーバを介してＨＥＭＳコントローラと通信を行ない、サーバはＨＥＭＳコントローラと通信を行なうことによりＨＥＭＳコントローラのファームウェアの更新の開始と終了とを把握する。ＨＥＭＳコントローラのファームウェアの更新中に携帯端末からＨＥＭＳコントローラに対する操作指示がある場合、携帯端末に対してＨＥＭＳコントローラのファームウェアが更新中である旨を通知する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−８５６５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来の技術では、更新すべきファームウェアを予めサーバに保管しておき、ネットワークを介してサーバと通信してそのファームウェアを取得してから機器のファームウェアの更新を行なうことが必要であり、サーバとのネットワーク通信環境が構築されていることが不可欠である。しかし、蓄電システムが設置される環境は様々であり、ネットワーク通信環境が十分に整備されていない場合もある。そのような場合には、ファームウェアの更新は容易ではない。また、ファームウェアを記憶しているサーバとの通信自体ができない場合には、ファームウェアの更新ができない問題がある。
【０００６】
したがって、本発明は、サーバとの通信環境が整備されていない環境においても、ファームウェアを容易に更新することができるシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明のある局面に係るシステムは、電気機器本体と、電気機器本体の外部に設けられ、電気機器本体と通信するリモートコントローラ（以下「リモコン」という）とを含むシステムであって、電気機器本体が保持している電気機器本体の第１ファームウェアをアップデートする更新部をさらに含み、リモコンは、電気機器本体用の第２ファームウェアを記憶する記憶部を有し、更新部は、所定のタイミングで、第１ファームウェアと、第２ファームウェアとを比較し、当該比較結果に基づいて第１ファームウェアを第２ファームウェアでアップデートする。
【発明の効果】
【０００８】
本発明によれば、サーバとの通信環境が整備されていない環境においても、電気機器本体のファームウェアを容易に更新することが可能になる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明の実施形態に係る蓄電システムの構成を示すブロック図である。
【図２】図２は、図１の蓄電システムのリモコンに蓄電ユニットのファームウェアを記憶するときの構成を示すブロック図である。
【図３】図３は、図１の蓄電システムにおいてリモコンを交換した状態を示すブロック図である。
【図４】図４は、図３のリモコンの動作を示すフローチャートである。
【図５】図５は、図４の充電処理を示すフローチャートである。
【図６】図６は、図３の蓄電ユニットの動作を示すフローチャートである。
【図７】図７は、変形例における蓄電ユニットの動作を示すフローチャートである。
【図８】図８は、図７の充電処理を示すフローチャートである。
【図９】図９は、変形例におけるリモコンの動作を示すフローチャートである。
【図１０】図１０は、リモコンがサーバから蓄電ユニットのファームウェアをダウンロードするときの構成を示すブロック図である。
【発明を実施するための形態】
【００１０】
［本発明の実施形態の説明］
最初に、本発明の実施の形態の内容を列記して説明する。以下に記載する実施形態の少なくとも一部を任意に組み合わせてもよい。
【００１１】
（１）本発明のある局面に係るシステムは、電気機器本体と、電気機器本体の外部に設けられ、電気機器本体と通信するリモコンとを含むシステムであって、電気機器本体が保持している電気機器本体の第１ファームウェアをアップデートする更新部をさらに含み、リモコンは、電気機器本体用の第２ファームウェアを記憶する記憶部を有し、更新部は、所定のタイミングで、第１ファームウェアと、第２ファームウェアとを比較し、当該比較結果に基づいて第１ファームウェアを第２ファームウェアでアップデートする。これにより、一般的なネットワークによる通信環境が整備されていない環境においても、電気機器本体のファームウェアを容易に更新することが可能になる。
【００１２】
（２）好ましくは、電気機器本体は、蓄電池を含む。これにより、蓄電システムにおいて、電気機器本体のファームウェアを容易に更新することができる。
【００１３】
（３）より好ましくは、システムは、蓄電池を充電する充電部と、蓄電池の充電状態を判定する判定部とをさらに含み、判定部により、蓄電池の蓄電量が第１しきい値以下であると判定されたことを受けて、充電部により、蓄電池の蓄電量が、第１しきい値よりも大きい第２しきい値になるまで蓄電池を充電した後に、更新部はアップデートを実行する。これにより、蓄電池の残量（蓄電量）が少ない状態でファームウェアのアップデートが開始し、アップデートを完了できない事態が生じることを防止することができる。
【００１４】
（４）さらに好ましくは、更新部は、リモコンに含まれる。これにより、予め電気機器本体のファームウェアを記憶したリモコンを電気機器本体に接続するだけで、容易に電気機器のファームウェアを更新することができる。
【００１５】
（５）好ましくは、更新部は、システムの起動時にアップデートを行なう。これにより、電気機器のファームウェアを更新するために別途の作業を行なう必要がない。
【００１６】
（６）より好ましくは、リモコンは、外部機器と通信する通信部を含み、リモコンは、第２ファームウェアを、通信部を介して外部機器から取得する。これにより、電気機器用のファームウェアをリモコンに容易に記憶することができる。
【００１７】
［本発明の実施形態の詳細］
以下の実施の形態では、同一の部品には同一の参照番号を付してある。それらの名称及び機能も同一である。したがって、それらについての詳細な説明は繰返さない。
【００１８】
（実施の形態）
［全体構成］
図１を参照して、本発明の実施の形態に係る蓄電システム１００は、電力系統１０６に接続された蓄電ユニット１０２と、蓄電ユニット１０２と有線にて通信するリモコン１０４とを備える。電力系統１０６には、当該電力系統１０６から電力が供給される一般負荷１０８が接続されており、蓄電ユニット１０２には、当該蓄電ユニット１０２から電力が供給される特定負荷１１０が接続されている。蓄電ユニット１０２は、電力系統１０６から供給される電力を、パワーコンディショナ（以下、ＰＣＳ（Ｐｏｗｅｒ  Ｃｏｎｄｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）という）を介して交流から直流に変換して内部の蓄電池に蓄える。蓄電ユニット１０２は例えば屋外に設置され、リモコン１０４は例えば屋内（室内）に設置される。
【００１９】
蓄電ユニット１０２は、ＰＣＳ１２０及び蓄電池１２２を備える。ＰＣＳ１２０は、制御部１２４及び通信部１２８を備える。制御部１２４は、例えばマイコンであり、ＣＰＵ（図示せず）及び内部メモリ１２６を含む。内部メモリ１２６は、例えば書換可能な不揮発性メモリである。通信部１２８は、リモコン１０４と通信する機能を有し、例えば、公知のシリアル通信（例えばＲＳ−４８５）用ＩＣを備えている。
【００２０】
制御部１２４は、通信部１２８を介してリモコン１０４と通信を行ない、リモコン１０４から、蓄電ユニット１０２の運転／停止等の指示及び種々の設定値を受信する。制御部１２４は、受信した設定値を適宜内部メモリ１２６に記憶し、それを用いてリモコン１０４からの指示に応じて蓄電池１２２による充放電動作を実行する。ＰＣＳ１２０は、電力系統１０６から供給される交流電力を直流に変換して蓄電池１２２を充電する。蓄電ユニット１０２は、電力系統１０６から電力が供給されている間は、入力される電力系統１０６から電力を特定負荷１１０に供給する。停電の発生等により電力系統１０６からの電力が供給されない場合、又は、外部からの操作を受けて、ＰＣＳ１２０は、蓄電池１２２からの直流電力を交流に変換して特定負荷１１０に供給する。特定負荷１１０は、例えば停電時にも電力を供給する必要がある機器である。
【００２１】
リモコン１０４は、制御部１３０、通信部１３４、表示部１３６及び外部メモリ１３８を備える。制御部１３０は、例えばマイコンであり、ＣＰＵ（図示せず）及び内部メモリ１３２を含む。内部メモリ１３２及び外部メモリ１３８は、例えば書換可能な不揮発性メモリである。通信部１３４は、蓄電ユニット１０２と通信する機能を有し、例えば、公知のシリアル通信（例えばＲＳ−４８５）用ＩＣを備えている。リモコン１０４は、蓄電ユニット１０２と通信し、蓄電ユニット１０２から受信した情報を適宜内部メモリ１３２又は外部メモリ１３８に記憶する。リモコン１０４は、操作部（図示せず）を備え、ユーザの操作を受けて、蓄電ユニット１０２の動作に関する設定を受付ける。受付けた設定は、通信部１３４を介して蓄電ユニット１０２に送信され、内部メモリ１２６に記憶され、上記したように充放電動作等に使用される。表示部１３６は、液晶パネル等の表示パネルを含む表示装置である。なお、リモコン１０４の操作部として、例えば、表示部１３６の上に配置されたタッチパネルが使用される。
【００２２】
制御部１２４が、蓄電ユニット１０２の機能を実現するために実行すべきプログラムであるファームウェア（以下、ＦＷともいう）は、内部メモリ１２６に記憶されている。内部メモリ１２６のデータ記憶領域は、システム領域とワーク領域とに区分して使用され、ファームウェアはシステム領域に記憶されている。蓄電ユニット１０２の電源がＯＮされると、制御部１２４は、内部メモリ１２６のシステム領域の所定アドレスからファームウェアを読出し、内部メモリ１２６のワーク領域を使用して実行し、蓄電ユニット１０２の各機能を実現する。
【００２３】
制御部１３０が、リモコン１０４の機能を実現するために実行すべきプログラムであるＦＷは、内部メモリ１３２に記憶されている。内部メモリ１３２のデータ記憶領域は、システム領域とワーク領域とに区分して使用され、ＦＷはシステム領域に記憶されている。蓄電ユニット１０２の電源がＯＮされると、リモコン１０４に蓄電ユニット１０２から電力が供給され、制御部１３０は、内部メモリ１３２のシステム領域の所定アドレスからＦＷを読出し、内部メモリ１３２のワーク領域を使用して実行し、リモコン１０４の各機能を実現する。
【００２４】
外部メモリ１３８は、蓄電ユニット１０２用のＦＷを記憶することができる。ＦＷは、ＦＷ自体のバージョンを表す情報（以下、バージョン情報という）を含む。
【００２５】
［ファームウェアの更新］
蓄電ユニット１０２のＦＷの更新に関して説明する。ここでは、図１の蓄電システム１００は既設のシステムであり、内部メモリ１２６には所定バージョンのＦＷが記憶されており、制御部１２４がそのＦＷを実行することにより蓄電ユニット１０２の機能が実現されているとする。この状況で、蓄電システム１００が設置されている、インターネット等の通信環境が整備されていない現場において、蓄電ユニット１０２のＦＷを新しいＦＷに変更するとする。
【００２６】
蓄電ユニット１０２のＦＷの更新は、リモコンを介して実行される。したがって、予めリモコンに、蓄電ユニット１０２用の新しいＦＷを記憶することが必要となる。そのために、リモコン１０４と同じ種類のリモコンを別途用意し、それに蓄電ユニット１０２用の新しいバージョンのＦＷを記憶する。図２を参照して、新しいリモコン１０４ａの通信部１３４ａをコンピュータ２００の通信部と接続し、コンピュータ２００の記憶部（例えばＨＤＤ）に記憶されている蓄電ユニット１０２用の新しいＦＷを、通信部１３４ａを介して外部メモリ１３８ａに記憶する。リモコン１０４ａとコンピュータ２００との通信は、例えばＲＳ−４８５により実行される。これにより、現在蓄電ユニット１０２の内部メモリ１２６に記憶されているＦＷよりも新しいバージョンのＦＷを、リモコン１０４ａの外部メモリ１３８ａに、容易に記憶することができる。
【００２７】
蓄電システム１００が設置された現場において、蓄電ユニット１０２の電源をＯＦＦし、例えば、管理者（サービスマン、システムの管理者等）がリモコン１０４をリモコン１０４ａと交換する。図３は、図１の蓄電システム１００において、リモコン１０４がリモコン１０４ａに交換された状態を示す。その構成は、図１と同じであるので、重複説明を繰返さない。その後、蓄電ユニット１０２の電源をＯＮすると、図４〜６に示すように、自動的に蓄電ユニット１０２のＦＷが更新される。
［リモコンの動作］
【００２８】
図４のフローチャートはリモコン１０４ａにより実行される。具体的には、蓄電ユニット１０２からリモコン１０４ａに電力が供給され、制御部１３０ａが、内部メモリ１３２ａから所定のプログラムを読出して実行する。
【００２９】
図４を参照して、ステップ４００において、制御部１３０ａは、通信部１３４ａ及び通信部１２８を介して、蓄電ユニット１０２の制御部１２４と通信し、蓄電ユニット１０２から現在のＦＷのバージョン情報を取得する。その後、制御はステップ４０２に移行する。例えば、制御部１３０ａから制御部１２４に所定の要求コード（以下、バージョン要求コードという）を送信する。バージョン要求コードを受信した制御部１２４は、後述するように、内部メモリ１２６のＦＷに含まれるそのバージョン情報を読出し、制御部１３０ａに送信する。これにより、制御部１３０ａは、蓄電ユニット１０２の現在のＦＷのバージョン情報を取得することができる。
【００３０】
ステップ４０２において、制御部１３０ａは、蓄電ユニット１０２のＦＷを更新するか否かを判定する。具体的には、制御部１３０ａは外部メモリ１３８ａから蓄電ユニット１０２用のＦＷのバージョン情報を読出し、ステップ４００で取得したバージョン情報と比較して、外部メモリ１３８ａから読出したバージョン情報がより新しいバージョンを表す情報であるか否かを判定する。より新しいバージョンを表す情報であると判定された場合、更新すると判定され、制御はステップ４０４に移行する。そうでなければ、本プログラムは終了する。
【００３１】
ステップ４０４において、制御部１３０ａは、ＰＣＳ１２０から蓄電ユニット１０２内部の蓄電池の蓄電量（以下、ＳＯＣ（Ｓｔａｔｅ  Ｏｆ  Ｃｈａｒｇｅ）という）を取得する。その後、制御はステップ４０６に移行する。具体的には、制御部１３０ａは、制御部１２４に、ＳＯＣの送信を要求する所定の要求コード（以下、ＳＯＣ要求コードという）を送信する。後述するように、制御部１２４はＳＯＣ要求コードを受信すると、現在の蓄電池１２２のＳＯＣを送信する。これにより、制御部１３０ａは、蓄電ユニット１０２の現在のＳＯＣを取得することができる。
【００３２】
ステップ４０６において、制御部１３０ａは、ステップ４０４で取得したＳＯＣが５％より大きいか否かを判定する。大きいと判定された場合、制御はステップ４０８に移行する。そうでなければ、制御はステップ４１０に移行する。
【００３３】
ステップ４０８において、制御部１３０ａは、外部メモリ１３８ａから蓄電ユニット１０２用のＦＷを読出し、蓄電ユニット１０２に送信する。その後、本プログラムは終了する。これにより、蓄電ユニット１０２用の新たなバージョンのＦＷが、蓄電ユニット１０２に送信される。
【００３４】
一方、ステップ４０６での判定結果がＮＯ（ＳＯＣ≦５％）であれば、ステップ４１０において、制御部１３０ａは充電処理を実行する。具体的には、制御部１３０ａは、図５のフローチャートの処理を実行する。
【００３５】
図５を参照して、ステップ４２０において、制御部１３０ａは、蓄電ユニット１０２が自立運転中であるか否かを判定する。自立運転中であると判定された場合、制御はステップ４２２に移行する。そうでなければ、制御はステップ４２４に移行する。自立運転は、電力系統１０６の停電の発生、又はリモコンの操作部が操作されることにより実行される。自立運転中には、蓄電ユニット１０２の蓄電池１２２が放電して特定負荷１１０に電力を供給する。例えば、電力系統１０６の停電時には、自立運転開始は、制御部１２４からリモコンに通知される。リモコンがユーザ等により操作されて、自立運転が開始する場合には、制御部１２４からリモコンに通知される必要はない。
【００３６】
ステップ４２２において、制御部１３０ａは、表示部１３６ａに、系統ブレーカをＯＮすることを促すメッセージを表示する。メッセージは、予め外部メモリ１３８ａに記憶しておけばよい。これにより、メッセージを見た管理者等により系統ブレーカがＯＮされると、蓄電ユニット１０２は充電動作を行なうことが可能になる。なお、ステップ４２２は繰返され得るので、制御部１３０ａは、繰返し外部メモリ１３８ａからメッセージの表示を行なってもよいが、既にメッセージを表示している場合には、メッセージの表示を維持するだけでもよい。
【００３７】
一方、ステップ４２０での判定がＮＯであれば、ステップ４２４において、制御部１３０ａは、ＰＣＳ１２０に充電を指示する。その後、制御はステップ４２６に移行する。なお、このとき、既にステップ４２２が実行されメッセージが表示されていれば、制御部１３０ａは、そのメッセージを消去した後に、ステップ４２４を実行する。例えば、制御部１３０ａは、制御部１２４に充電を指示する所定のコード（以下、充電指示コードという）を送信する。後述するように、充電指示コードを受信した制御部１２４は、蓄電池１２２の充電を開始する。
【００３８】
ステップ４２６において、制御部１３０ａは、ステップ４０４と同様に、ＳＯＣ要求コードを送信して、ＰＣＳ１２０から蓄電池１２２のＳＯＣを取得する。その後、制御はステップ４２８に移行する。
【００３９】
ステップ４２８において、制御部１３０ａは、ステップ４２６で取得したＳＯＣが１０％以上であるか否かを判定する。１０％以上であると判定された場合、制御は図４のフローチャートに戻り、ステップ４０８に移行する。そうでなければ、制御はステップ４２６に戻る。
【００４０】
これにより、蓄電池１２２のＳＯＣが５％以下であれば、ＳＯＣが１０％以上になるまで、蓄電ユニット１０２に蓄電池１２２を充電させることができる。したがって、制御部１３０ａから制御部１２４にＦＷが送信され、内部メモリ１２６に書き込まれる処理が、蓄電池１２２の蓄電量がなくなってしまうことにより、途中で中断されることを防止することができ、正常に蓄電ユニット１０２用のＦＷを更新することができる。
【００４１】
［蓄電ユニットの動作］
図６のフローチャートは蓄電ユニット１０２により実行される。具体的には、蓄電ユニット１０２の電源がオンされると、制御部１２４は、内部メモリ１２６から所定のプログラムを読出して実行する。蓄電ユニット１０２が起動するとき、ＦＷが更新されている可能性があるので、ＦＷが更新されているか否かを所定のフラグ（以下、ＦＷ更新フラグという）により表わすとする。ＦＷ更新フラグには、例えば内部メモリ１２６の所定の領域が使用される。また、ここで説明する蓄電ユニット１０２の動作は、ＦＷのバージョンに依らず、常に実行される機能（例えば、ＦＷに常に含まれているプログラム）である。なお、ここでは、図３に示したように、蓄電ユニット１０２にはリモコン１０４ａが接続されているとする。
【００４２】
図６を参照して、ステップ５００において、制御部１２４は、リモコン１０４ａからデータを受信したか否かを判定する。受信したと判定された場合、制御はステップ５０２に移行する。そうでなければ、ステップ５００が繰返される。
【００４３】
ステップ５０２において、制御部１２４は、ステップ５００で受信したデータが、データ送信の要求であるか否かを判定する。データ送信の要求であると判定された場合、制御はステップ５０４に移行する。そうでなければ、制御はステップ５０６に移行する。
【００４４】
ステップ５０４において、制御部１２４は、ステップ５００で受信したデータにより特定されるデータをリモコン１０４に送信する。その後、制御はステップ５１６に移行する。例えば、ステップ５００で受信したデータが、バージョン要求コード（図４のステップ４００参照）であれば、制御部１２４は、内部メモリ１２６からＦＷのバージョン情報を読出し、リモコン１０４ａに送信する。ステップ５００で受信したデータが、ＳＯＣ要求コード（図４のステップ４０４参照）であれば、制御部１２４は、蓄電池１２２のＳＯＣを送信する。
【００４５】
ステップ５０６において、制御部１２４は、ステップ５００で受信したデータが、充電指示であるか否かを判定する。具体的には、制御部１２４は、充電指示コード（図５のステップ４２４参照）を受信したか否かを判定する。充電指示コードであると判定された場合、制御はステップ５０８に移行する。そうでなければ、制御はステップ５１０に移行する。
【００４６】
ステップ５０８において、制御部１２４は、蓄電池１２２の充電を開始する。その後、制御はステップ５１６に移行する。
【００４７】
ステップ５１０において、制御部１２４は、ステップ５００で受信したデータがＦＷであるか否かを判定する。ＦＷであると判定された場合、制御はステップ５１２に移行する。そうでなければ、制御はステップ５１６に移行する。
【００４８】
ステップ５１２において、制御部１２４は、ステップ５００で受信したＦＷを内部メモリ１２６に記憶し、ＦＷ更新フラグをＯＮにする。その後、制御はステップ５１４に移行する。これにより、次回、蓄電ユニット１０２が起動するときには、制御部１２４は更新後のＦＷを読出す。更新後のＦＷを読出す方法は任意である。例えば、内部メモリ１２６において、新しいＦＷを記録するエリアの先頭アドレスと、現状のＦＷを記憶するエリアの先頭アドレスとを予め定めておけばよい。ＦＷ更新フラグがＯＮのときには、制御部１２４が新しいＦＷを記録する先頭アドレスからＦＷを読出した後、そのＦＷを現状のＦＷが記憶されているエリアに記憶（上書き）した後、ＦＷ更新フラグをＯＦＦにする。ＦＷ更新フラグがＯＦＦであれば、制御部１２４は、現状のＦＷを記憶するエリアからＦＷを読出す。さらに新しいＦＷを内部メモリ１２６に記憶する場合には、新しいＦＷを記録するエリアに上書きすればよい。
【００４９】
ステップ５１４において、制御部１２４は、再起動をセットする。例えば、制御部１２４は、所定のフラグ（以下、再起動フラグという）をＯＮにする。再起動フラグには、例えば内部メモリ１２６の所定の領域が使用される。その後、制御はステップ５１６に移行する。
【００５０】
ステップ５１６において、制御部１２４は、本プログラムを終了する指示を受けたか否かを判定する。終了の指示は、ユーザによりリモコン１０４ａが操作されて、所定コードを受信した場合、又は、再起動フラグがＯＮにされることによりなされる。終了が指示されていれば、本プログラムは終了する（再起動フラグがＯＮになっていれば、再起動する）。そうでなければ、制御はステップ５００に戻る。
【００５１】
これにより、蓄電ユニット１０２は、リモコン１０４ａからの要求（指示）に応じて、要求されたデータ（ＦＷのバージョン情報又はＳＯＣ）を送信し、蓄電池１２２の充電を開始することができる。したがって、リモコン１０４ａは、上記した機能、即ち、蓄電ユニット１０２が現在使用しているＦＷのバージョンと比較して、新しいバージョンを記憶していれば、それを蓄電ユニット１０２に送信する機能を実現することができる。また、蓄電ユニット１０２の蓄電池１２２の蓄電量が十分でなければ（ＳＯＣ≦５％）、強制的に蓄電ユニット１０２に充電を実行させるので、制御部１３０ａから制御部１２４にＦＷを送信して内部メモリ１２６に書き込む処理（蓄電ユニット１０２用のＦＷの更新）を正常に完了することができる。
【００５２】
以上のように、リモコン及び蓄電ユニット１０２が図４〜図６に示した処理を実行することより、蓄電システム１００においてリモコンを交換することにより、蓄電ユニット１０２に接続されたリモコンに記憶されているＦＷのバージョンが新しければ、その新しいＦＷを蓄電ユニット１０２に送信して、蓄電ユニット１０２を新しいバージョンのファームウェアで動作させることができる。したがって、蓄電システム１００が、ネットワーク等を介して外部と通信することができない環境に設置されていても、設置業者等により、蓄電ユニット１０２のＦＷを容易に更新することができる。さらに、リモコンを介して蓄電ユニット１０２のＦＷを更新する構成とすることにより、屋内（室内）にて蓄電ユニット１０２のＦＷの更新作業を行なうことができる。蓄電ユニット１０２が屋外の作業しにくい場所に設置されている場合でも、屋内（室内）にて作業を行なうことができるため、ＦＷを更新する際の作業効率を大幅に向上できる。
【００５３】
上記のように、リモコンに蓄電ユニットの新しいＦＷを記憶しておくことにより、リモコンを蓄電ユニットに接続するだけで、容易にファームウェアを更新することができる。
【００５４】
上記のように、蓄電システムの起動時に、自動的にＦＷの更新を行なうことにより、ＦＷを更新するために別途の作業を行なう必要がない。
【００５５】
（変形例）
上記では、リモコンが主体となって、蓄電ユニット１０２のＦＷを更新する場合を説明したが、これに限定されない。例えば、蓄電ユニット１０２が主体となって、蓄電ユニット１０２のＦＷを更新してもよい。その場合には、例えば、蓄電ユニット１０２が図７及び図８に示す処理を実行し、リモコンが図９に示す処理を実行すればよい。ここでは、上記と同様に、図３に示したようにリモコン１０４ａが蓄電ユニット１０２に接続されているとする。また、上記と同様に、蓄電ユニット１０２が起動するとき、ＦＷが更新されている可能性があるので、ＦＷが更新されているか否かをＦＷ更新フラグにより表わす。
【００５６】
［蓄電ユニットの動作］
図７のフローチャートは蓄電ユニット１０２により実行される。具体的には、蓄電ユニット１０２の電源がＯＮされると、制御部１２４が、内部メモリ１２６から所定のプログラムを読出して実行する。
【００５７】
図７を参照して、ステップ６００において、制御部１２４は、通信部１２８及び通信部１３４ａを介して、リモコン１０４ａの制御部１３０ａと通信し、リモコン１０４ａから外部メモリ１３８ａに記憶されているＦＷのバージョン情報を取得する。その後、制御はステップ６０２に移行する。例えば、制御部１２４から制御部１３０ａにバージョン要求コードを送信する。バージョン要求コードを受信した制御部１３０ａは、後述するように、外部メモリ１３８ａに記憶されているＦＷに含まれるそのバージョン情報を読出し、制御部１２４に送信する。これにより、制御部１２４は、リモコン１０４ａに記憶されているＦＷのバージョン情報を取得することができる。
【００５８】
ステップ６０２において、制御部１２４は、蓄電ユニット１０２のＦＷを更新するか否かを判定する。具体的には、制御部１２４は内部メモリ１２６からＦＷのバージョン情報を読出し、ステップ６００で取得したバージョン情報と比較して、制御部１３０ａから取得したバージョン情報がより新しいバージョンを表す情報であるか否かを判定する。より新しいバージョンを表す情報であると判定された場合、更新すると判定され、制御はステップ６０４に移行する。そうでなければ、本プログラムは終了し、蓄電ユニット１０２は現状のＦＷを使用する。
【００５９】
ステップ６０４において、制御部１２４は、蓄電池１２２のＳＯＣが５％より大きいか否かを判定する。大きいと判定された場合、制御はステップ６０６に移行する。そうでなければ、制御はステップ６０８に移行する。
【００６０】
ステップ６０６において、制御部１２４は、リモコン１０４ａにＦＷの送信を要求してＦＷを取得し、内部メモリ１２６に記憶し、再起動フラグをＯＮにする。具体的には、制御部１２４は、リモコン１０４ａに所定の要求コード（以下、ＦＷ要求コードという）を送信する。これにより、後述するように、リモコン１０４ａから蓄電ユニット１０２用のＦＷが送信され、制御部１２４はこれを受信することができる。その後、本プログラムは終了する（再起動フラグがＯＮになっていれば、再起動する）。
【００６１】
一方、ステップ６０４での判定結果がＮＯ（ＳＯＣ≦５％）であれば、ステップ６０８において、制御部１２４は充電処理を実行する。具体的には、制御部１２４は、図８のフローチャートの処理を実行する。
【００６２】
図８を参照して、ステップ６２０において、制御部１２４は、蓄電ユニット１０２が自立運転中であるか否かを判定する。自立運転中であると判定された場合、制御はステップ６２２に移行する。そうでなければ、制御はステップ６２４に移行する。
【００６３】
ステップ６２２において、制御部１２４は、リモコン１０４ａに、系統ブレーカをＯＮすることを促すメッセージを表示することを指示する。メッセージは、予め外部メモリ１３８ａに記憶しておけばよい。具体的には、制御部１２４は、リモコン１０４ａに所定の指示コード（以下、表示指示コードという）を送信する。後述するように、制御部１３０ａは、表示指示コードを受信すると、外部メモリ１３８ａからメッセージを読出し、表示部１３６ａに表示する。メッセージを見た管理者等により系統ブレーカがＯＮされると、蓄電ユニット１０２は充電動作を行なうことが可能になる。
【００６４】
一方、ステップ６２０での判定結果がＮＯであれば、ステップ６２４において、制御部１２４は、蓄電池１２２の充電を開始する。その後、制御はステップ６２６に移行する。
【００６５】
ステップ６２６において、制御部１２４は、ステップ６２２が実行されてリモコンに表示指示コードを送信済か否かを判定する。送信済と判定された場合、制御はステップ６２８に移行する。そうでなければ、制御はステップ６３０に移行する。
【００６６】
ステップ６２８において、制御部１２４は、ステップ６２２でリモコン１０４ａに表示させたメッセージを消去する指示をリモコン１０４ａに送信する。その後、制御はステップ６３０に移行する。具体的には、制御部１２４は、リモコン１０４ａに所定の指示コード（以下、消去指示コードという）を送信する。後述するように、制御部１３０ａは、消去指示コードを受信すると、表示部１３６ａに表示しているメッセージを消去する。
【００６７】
ステップ６３０において、制御部１２４は、蓄電池１２２のＳＯＣが１０％以上であるか否かを判定する。１０％以上であると判定された場合、制御は図７のフローチャートに戻り、ステップ６０６に移行する。そうでなければ、ステップ６３０が繰返される。
【００６８】
これにより、蓄電池１２２のＳＯＣが５％以下であれば、ＳＯＣが１０％以上になるまで、蓄電ユニット１０２は蓄電池１２２を充電する。したがって、制御部１３０ａから制御部１２４にＦＷを送信し、内部メモリ１２６に書き込む処理が、蓄電池１２２の蓄電量がなくなってしまうことにより、途中で中断されることを防止することができ、正常に蓄電ユニット１０２用のＦＷを更新することができる。そして、蓄電ユニット１０２は、ＦＷを更新後、再起動する。
【００６９】
［リモコンの動作］
図９のフローチャートは制御部１３０ａにより実行される。具体的には、蓄電ユニット１０２の電源がオンされ、蓄電ユニット１０２からリモコン１０４ａに電力が供給されると、制御部１３０ａは内部メモリ１３２ａから所定のプログラムを読出して実行する。
【００７０】
図９を参照して、ステップ７００において、制御部１３０ａは、蓄電ユニット１０２からデータを受信したか否かを判定する。受信したと判定された場合、制御はステップ７０２に移行する。そうでなければ、ステップ７００が繰返される。
【００７１】
ステップ７０２において、制御部１３０ａは、ステップ７００で受信したデータが、データ送信の要求であるか否かを判定する。データ送信の要求であると判定された場合、制御はステップ７０４に移行する。そうでなければ、制御はステップ７１２に移行する。
【００７２】
ステップ７０４において、制御部１３０ａは、ステップ７００で受信したデータが、ＦＷのバージョン情報の送信要求であるか否かを判定する。具体的には、制御部１３０ａは、バージョン要求コード（図７のステップ６００参照）であるか否かを判定する。バージョン要求コードであると判定された場合、制御はステップ７０６に移行する。そうでなければ、制御はステップ７０８に移行する。
【００７３】
ステップ７０６において、制御部１３０ａは、外部メモリ１３８ａに記憶されているＦＷのバージョン情報を読出し、蓄電ユニット１０２に送信する。その後、制御はステップ７２０に移行する。
【００７４】
ステップ７０８において、制御部１３０ａは、ステップ７００で受信したデータが、ＦＷの送信要求であるか否かを判定する。具体的には、制御部１３０ａは、ＦＷ要求コード（図７のステップ６０６参照）であるか否かを判定する。ＦＷ要求コードであると判定された場合、制御はステップ７１０に移行する。そうでなければ、制御はステップ７１２に移行する。
【００７５】
ステップ７１０において、制御部１３０ａは、外部メモリ１３８ａに記憶されているＦＷを読出し、蓄電ユニット１０２に送信する。その後、制御はステップ７２０に移行する。
【００７６】
ステップ７１２において、制御部１３０ａは、ステップ７００で受信したデータが、メッセージの表示指示であるか否かを判定する。具体的には、制御部１３０ａは、表示指示コード（図８のステップ６２２参照）を受信したか否かを判定する。表示指示コードであると判定された場合、制御はステップ７１４に移行する。そうでなければ、制御はステップ７１６に移行する。
【００７７】
ステップ７１４において、制御部１３０ａは、系統ブレーカをＯＮすることを促すメッセージを外部メモリ１３８ａから読出し、表示部１３６ａに表示する。その後、制御はステップ７２０に移行する。
【００７８】
ステップ７１６において、制御部１３０ａは、ステップ７００で受信したデータが、メッセージの消去指示であるか否かを判定する。具体的には、制御部１３０ａは、消去指示コード（図８のステップ６２８参照）を受信したか否かを判定する。消去指示コードであると判定された場合、制御はステップ７１８に移行する。そうでなければ、制御はステップ７２０に移行する。
【００７９】
ステップ７１８において、制御部１３０ａは、ステップ７１４で表示部１３６ａに表示したメッセージを消去する。その後、制御はステップ７２０に移行する。
【００８０】
ステップ７２０において、制御部１３０ａは、本プログラムを終了する指示を受けたか否かを判定する。終了の指示は、ユーザによりリモコン１０４ａが操作されることによりなされる。終了が指示されていれば、本プログラムは終了する。そうでなければ、制御はステップ７００に戻る。
【００８１】
これにより、リモコン１０４ａは、蓄電ユニット１０２からの要求（指示）に応じて、要求されたデータ（ＦＷのバージョン情報又はＦＷ）を送信する。したがって、蓄電ユニット１０２は、上記した機能、即ち、蓄電ユニット１０２が現在使用しているＦＷのバージョンと比較して、制御部１３０ａにより新しいバージョンが記憶されていれば、それを蓄電ユニット１０２に送信することを制御部１３０ａに要求して、ＦＷを更新することができる。また、蓄電ユニット１０２の蓄電池１２２の蓄電量が十分でなければ（ＳＯＣ≦５％）、蓄電池１２２を充電するので、制御部１３０ａから蓄電ユニット１０２に送信されたＦＷを受信して内部メモリ１２６に書き込む処理（蓄電ユニット１０２用のＦＷの更新）を正常に完了することができる。
【００８２】
以上のように、蓄電ユニット１０２及びリモコンが図７〜図９に示した処理を実行することより、蓄電システム１００においてリモコンを交換することにより、蓄電ユニット１０２に接続されたリモコンに記憶されているＦＷのバージョンが新しければ、その新しいＦＷを蓄電ユニット１０２に送信して、蓄電ユニット１０２を新しいバージョンのファームウェアで動作させることができる。したがって、蓄電システム１００が、ネットワーク等を介して外部と通信することができない環境に設置されていても、設置業者等により、蓄電ユニット１０２のＦＷを容易に更新することができる。
【００８３】
上記では、ＳＯＣの判定のしきい値として５％及び１０％を使用する場合を説明したが、ＳＯＣの判定のしきい値は、これらの値に限定されず、任意の値を使用することができる。
【００８４】
上記では、現在の蓄電池１２２の蓄電量（ＳＯＣ）に応じて、蓄電量が十分でなければ、蓄電池１２２を充電する場合を説明したが、これに限定されない。蓄電池１２２の蓄電量が十分でなければ、蓄電ユニットのＦＷの更新を行なわないようにしてもよい。また、現在の蓄電池１２２の蓄電量の判定を行なわなくてもよい。蓄電池１２２の蓄電量が十分でなく、ＦＷの更新を実行しない場合、又は、ＦＷの更新に失敗した場合には、蓄電池１２２の蓄電量が十分になったときに、ＦＷの更新を実行すればよい。
【００８５】
上記では、図２を参照して、リモコン１０４ａがコンピュータ２００とシリアル通信により、ＦＷを取得する場合を説明したが、これに限定されない。リモコン１０４ａの通信部１３４ａが、インターネット等のネットワークへの通信機能を有していれば、図１０に示すように、リモコン１０４ａは、蓄電ユニット１０２用のＦＷを記憶しているサーバコンピュータ２０２にネットワークを介してアクセスして、蓄電ユニット１０２のＦＷを取得（ダウンロード）してもよい。
【００８６】
上記では、リモコンを交換すること（図１の構成から図３の構成への変更参照）により、蓄電ユニットのＦＷをアップデートする場合を説明したが、これに限定されない。図２と同様に、図１に示したリモコン１０４の通信部１３４をコンピュータ２００の通信部と、有線又は無線通信により接続し、コンピュータ２００の記憶部に記憶されている蓄電ユニット１０２用の新しいＦＷを、通信部１３４を介して外部メモリ１３８に記憶することができる。その後、リモコン１０４は、上記のリモコン１０４ａと同様の動作を行なって、外部メモリ１３８に記憶したＦＷを蓄電ユニット１０２に送信し、蓄電ユニット１０２のＦＷをアップデートすることができる。さらに、図１に示したリモコン１０４の通信部１３４が、インターネット等のネットワークへの通信機能を有していれば、図１０に示したように、リモコン１０４は、蓄電ユニット１０２用のＦＷを記憶しているサーバコンピュータ２０２にネットワークを介してアクセスして、蓄電ユニット１０２のＦＷを取得（ダウンロード）してもよい。なお、リモコン１０４の通信部１３４が、ＷｉＦｉ等の無線通信機能を有していれば、リモコン１０４と蓄電ユニット１０２との間の有線通信ラインを接続したまま、リモコン１０４は、コンピュータ２００又はサーバコンピュータ２０２から蓄電ユニット１０２用のＦＷを取得することができる。
【００８７】
上記では、蓄電ユニットとリモコンとの通信がシリアル通信である場合を説明したが、これに限定されない。所定ビット幅のパラレス通信であってもよい。また、ＬＡＮにより蓄電ユニットとリモコンとが接続されていてもよい。また、蓄電ユニットとリモコンとの通信は、有線通信に限定されず、無線通信であってもよい。
【００８８】
なお、ＦＷの更新処理を実行中、ノイズにより正常に通信できない等、種々の原因でＦＷの更新に失敗することが考えられる。その場合には、所定の回数更新処理を繰返した後、エラーを表示してＦＷの更新を停止してもよい。例えば、ＳＯＣが５％以下である場合、エラーが発生すれば、エラー解除処理を１０回実行し、エラー解除できない場合には、ＦＷの更新処理をエラー終了させる。
【００８９】
また、蓄電ユニットが低温環境にある場合には、蓄電池の充電速度が低いので、充電の指令値を、例えば１００Ｗｈから段階的に引き上げるように充電制御することが好ましい。また、指令値と瞬時値が１００Ｗｈ以上離れた場合には、それ以上指令値を大きくしないように制御することも好ましい。
【００９０】
上記では、蓄電ユニット１０２が、メモリとして、制御部１２４の内部メモリ１２６のみを有する場合を説明したが、これに限定されない。蓄電ユニット１０２は、制御部１２４の内部メモリ１２６に代えて、又は、内部メモリ１２６に加えて、外部メモリを有していてもよい。制御部１２４が、ＦＷを記憶できるだけの容量の内部メモリ１２６を有していなければ、上記した処理において、内部メモリ１２６の代わりに外部メモリを使用すればよい。リモコンに関しても、同様である。
【００９１】
以上、実施の形態を説明することにより本発明を説明したが、上記した実施の形態は例示であって、本発明は上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
【符号の説明】
【００９２】
１００    蓄電システム
１０２    蓄電ユニット
１０４、１０４ａ    リモコン
１０６    電力系統
１０８    一般負荷
１１０    特定負荷
１２０    ＰＣＳ
１２２    蓄電池
１２４    制御部
１２８    通信部
１３０、１３０ａ    制御部
１２６、１３２、１３２ａ    内部メモリ
１３４、１３４ａ    通信部
１３６、１３６ａ    表示部
１３８、１３８ａ    外部メモリ
２００    コンピュータ
２０２    サーバコンピュータ
【図１】
2020016981.tif 000003
【図２】
2020016981.tif 000004
【図３】
2020016981.tif 000005
【図４】
2020016981.tif 000006
【図５】
2020016981.tif 000007
【図６】
2020016981.tif 000008
【図７】
2020016981.tif 000009
【図８】
2020016981.tif 000010
【図９】
2020016981.tif 000011
【図１０】
2020016981.tif 000012