JP7454919B2 - 情報記憶装置、ソフトウェア更新方法、および、冗長化システム - Google Patents

情報記憶装置、ソフトウェア更新方法、および、冗長化システム Download PDF

Info

Publication number
JP7454919B2
JP7454919B2 JP2019124440A JP2019124440A JP7454919B2 JP 7454919 B2 JP7454919 B2 JP 7454919B2 JP 2019124440 A JP2019124440 A JP 2019124440A JP 2019124440 A JP2019124440 A JP 2019124440A JP 7454919 B2 JP7454919 B2 JP 7454919B2
Authority
JP
Japan
Prior art keywords
version
controller
software
information storage
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019124440A
Other languages
English (en)
Other versions
JP2021012406A (ja
Inventor
正也 野▲崎▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Azbil Corp
Original Assignee
Azbil Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Azbil Corp filed Critical Azbil Corp
Priority to JP2019124440A priority Critical patent/JP7454919B2/ja
Publication of JP2021012406A publication Critical patent/JP2021012406A/ja
Application granted granted Critical
Publication of JP7454919B2 publication Critical patent/JP7454919B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Description

この発明は、冗長化された情報記憶装置、当該情報記憶装置におけるソフトウェア更新方法、および、当該情報記憶装置を備える冗長化システムに関するものである。
従来、少なくとも2つの情報記憶装置の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムが知られている。
一方、冗長化システムにおいて、冗長化された装置間で効率的にソフトウェアの更新を行う技術としては、例えば、特許文献1に、冗長通信装置において、運用系通信装置が、自装置のソフトウェアデータが格納されるデータ記憶部のデータを待機系通信装置に送信し、待機系通信装置は、運用系通信装置から受信したソフトウェアデータを、自装置に書き込む技術が開示されている。
特開2016-143187号公報
上述したような冗長化システムでは、管理者等は、バージョンの不一致によるシステムの停止またはデータ破損等の不具合が発生しないよう、冗長化させる情報記憶装置のソフトウェアのバージョンを一致させる作業が必要である。その際、管理者等は、冗長化させる情報記憶装置において、ソフトウェアのバージョンが下がることがないよう、ソフトウェアのバージョンを一致させる必要がある。ソフトウェアのバージョンが下がると、情報記憶装置が有する機能がデグレードするおそれがあるためである。このように、管理者等は、情報記憶装置が有する機能に不具合が発生することを防ぎつつ情報記憶装置を冗長化させるために労力を要するという課題があった。
上述の特許文献1に開示されているような技術では、運用系通信装置が、自装置と待機系通信装置のソフトウェアデータの内容を一致させるようにはなっているが、ソフトウェアの更新を行う際、運用系通信装置および待機系通信装置のソフトウェアデータのバージョンは不問としている。従って、待機系通信装置のソフトウェアデータのバージョンの方が運用系通信装置のソフトウェアデータのバージョンより進んでいる場合であっても、運用系通信装置のソフトウェアデータのバージョンに従って、待機系通信装置のソフトウェアデータが更新される。
そのため、依然として、上述したような冗長化システムにおいて、管理者等が、情報記憶装置が有する機能に不具合が発生することを防ぎつつ情報記憶装置を冗長化させるために労力を要するという、上述の課題を解消しきれていない。
この発明は、上記のような課題を解決するためになされたもので、少なくとも2つの情報記憶装置、の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムに備えられた情報記憶装置であって、情報記憶装置が有する機能に不具合が発生することを防いで情報記憶装置を冗長化させることができる情報記憶装置を提供することを目的とする。
この発明に係る情報記憶装置は、ネットワークに接続された、少なくとも2つの情報記憶装置、の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムに備えられた情報記憶装置であって、自装置で適用されているソフトウェアのバージョンに関するバージョン情報、および、当該ソフトウェアのバージョンと対応付けられたソフトウェアパッケージを記憶する記憶部と、冗長化のペアとなる相手の情報記憶装置から、相手の情報記憶装置で適用されているソフトウェアのバージョンに関するバージョン情報を取得するバージョン確認部と、バージョン確認部が取得したバージョン情報および記憶部に記憶されたバージョン情報に基づき、自装置で適用されているソフトウェアのバージョンと、相手の情報記憶装置で適用されているソフトウェアのバージョンを比較するバージョン判定部と、自装置が運用系の情報記憶装置として動作し、かつ、バージョン判定部が、自装置で適用されているソフトウェアのバージョンの方が、待機系の情報記憶装置として動作している相手の情報記憶装置で適用されているソフトウェアのバージョンよりも進んでいると判定した場合、相手の情報記憶装置に対して、ソフトウェアパッケージを送信するパッケージ送信部と、バージョン判定部が、待機系の情報記憶装置として動作している相手の情報記憶装置で適用されているソフトウェアのバージョンの方が、自装置で適用されているソフトウェアのバージョンよりも進んでいると判定した場合、自装置を冗長化の機能が動作しないオフライン状態とする制御部と、制御部が自装置をオフライン状態とすると、運用系の情報記憶装置に切り替わった相手の情報記憶装置から、相手の情報記憶装置で適用されているソフトウェアのバージョンと対応付けられたソフトウェアパッケージを受信するパッケージ受信部と、パッケージ受信部がソフトウェアパッケージを受信した場合、当該ソフトウェアパッケージをインストールするバージョンアップ部と、バージョンアップ部がソフトウェアパッケージのインストールを完了すると、自装置を待機系の情報記憶装置として動作させるように切り替える切替制御部を備えたものである。
この発明によれば、少なくとも2つの情報記憶装置、の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムに備えられた情報記憶装置において、情報記憶装置が有する機能に不具合が発生することを防いで情報記憶装置を冗長化させることができる。
実施の形態1に係る施設監視システムの構成例を示す図である。 実施の形態1に係るコントローラの構成例を示すブロック図である。 実施の形態1に係る施設監視システムにおける、運用系のコントローラとしての第1コントローラの動作を説明するためのフローチャートである。 実施の形態1に係る施設監視システムにおける、待機系のコントローラとしての第2コントローラの動作を説明するためのフローチャートである。
以下、この発明の実施の形態について図面を参照しながら詳細に説明する。
実施の形態1.
以下の実施の形態1では、一例として、少なくとも2つの情報記憶装置、の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムが、施設内に設置された機器を監視または制御する施設監視システムに適用されているものとする。
図1は、実施の形態1に係る施設監視システム1000の構成例を示す図である。
実施の形態1に係る施設監視システム1000は、第1コントローラ11と、第2コントローラ12を備える。第1コントローラ11と、第2コントローラ12とは、ネットワークを介して接続される。以下の説明において、第1コントローラ11および第2コントローラ12を、まとめて、単に「コントローラ1」ともいうものとする。
なお、図1では記載を省略しているが、コントローラ1は、ネットワークを介して、下位コントローラと接続される。また、コントローラ1は、下位コントローラを介して、施設内に設置された機器と接続される。機器とは、センサ、照明、スイッチ、モータ等である。図1において、機器の図示は省略している。なお、施設監視システム1000は、下位コントローラを備えないようにすることもできる。この場合、コントローラ1は、機器と接続される。
コントローラ1は、予め設定された周期で、機器から、当該機器が取得する計測値を収集する。実施の形態1では、コントローラ1が監視または制御する機器を監視ポイントといい、当該監視ポイントが取得する計測値を、監視ポイントデータという。
コントローラ1は、下位コントローラを介して、あるいは、監視ポイントから直接、監視ポイントデータを収集する。コントローラ1は、収集した監視ポイントデータを記憶する。
コントローラ1は、記憶した監視ポイントデータを用いてアプリケーションを実行する機能を有している。管理者等は、コントローラ1が、監視ポイントデータを用いてアプリケーションを実行した結果を参照等することで、監視ポイントの監視または制御を行う。
具体的には、管理者等は、監視用端末(図示省略)を操作し、当該監視用端末から、コントローラ1に対して、監視ポイントデータを用いてアプリケーションを実行した結果を表示させる指示を送信する。コントローラ1は、監視用端末から送信された指示に基づき、上記結果に関する情報を、表示装置(図示省略)に表示させる。管理者等は、表示装置に表示された情報を参照等することで、監視ポイントの監視または制御を行う。監視用端末および表示装置は、コントローラ1と、ネットワークを介して接続されている。監視用端末は、例えば、管理者等が施設監視のために用いるPCである。表示装置は、例えば、ディスプレイである。
施設監視システム1000において、第1コントローラ11または第2コントローラ12のいずれか一方は、運用系のコントローラとして動作し、他方は、待機系のコントローラとして動作する。すなわち、第1コントローラ11および第2コントローラ12は、上述の情報記憶装置に相当する。
なお、監視ポイントからの、監視ポイントデータの収集は、運用系のコントローラとして動作するコントローラ1が行う。
また、第1コントローラ11と第2コントローラ12とは、どちらが運用系のコントローラ1となるかを切り替える。
第1コントローラ11と第2コントローラ12とは、例えば、互いに生存確認を行い、当該生存確認を行った結果に応じて、どちらが運用系のコントローラ1となるかを切り替える。
具体的には、第1コントローラ11と第2コントローラ12は、以下のようにして、互いに生存確認を行った結果に応じて、どちらが運用系のコントローラ1となるかを切り替える。
実施の形態1において、第1コントローラ11および第2コントローラ12のうち、どちらのコントローラ1が運用系のコントローラとなるかは、例えば、先に起動したかどうかによって決定される。具体的には、先に起動したほうのコントローラ1が、運用系のコントローラとなる。コントローラ1は、起動すると、相手のコントローラ1に対して、生存確認コマンドを送信する。相手のコントローラ1では、生存確認コマンドを受信すると、自身が起動している旨の応答コマンドを、生存確認コマンドを送信したコントローラ1に対して送信する。相手のコントローラ1が起動していない場合は、応答コマンドは送信されない。生存確認コマンドを送信したコントローラ1では、相手のコントローラ1から応答コマンドが送信されない場合、自装置の方が先に起動したと判断し、自装置は運用系のコントローラ1として起動する。
一方、コントローラ1は、起動時に相手のコントローラ1に対して送信した生存確認コマンドに対する応答コマンドを受信すれば、既に相手のコントローラ1が起動しており、自装置の方が後に起動したと判断し、自装置は待機系のコントローラ1として起動する。
生存確認コマンドの送信、または、応答コマンドの送信の詳細については、後述する。
なお、第1コントローラ11からみて、第2コントローラ12が相手のコントローラ1であり、第2コントローラ12からみて、第1コントローラ11が相手のコントローラ1である。施設監視システム1000において、冗長化のペアとなるコントローラ1は、予め決められている。
また、実施の形態1において、例えば、管理者等が、第1コントローラ11と第2コントローラ12のうち、どちらのコントローラ1を運用系のコントローラ1とするかを適宜決定することもできる。この場合、管理者等は、運用系のコントローラを先に起動させるようにする。
以上で説明したような実施の形態1に係る施設監視システム1000を構成する際、第1コントローラ11および第2コントローラ12は、互いのコントローラ1で適用されているソフトウェアのバージョンを一致させる。施設監視システム1000を構成する際とは、例えば、施設監視システム1000の立ち上げ時、あるいは、既に稼働していた施設監視システムにおいて、例えば、コントローラ1に何らかの障害等が発生し、管理者等が、障害等が発生したコントローラ1を代替機に交換する等して当該施設監視システム1000の再構成を行う際をいう。
第1コントローラ11および第2コントローラ12は、ソフトウェアのバージョンの低い方が、ソフトウェアのバージョンが高い方に合わせて、ソフトウェアのバージョンアップを行うことで、互いのコントローラ1で適用されているソフトウェアのバージョンを一致させる。コントローラ1が、ソフトウェアのバージョンアップを行う際は、記憶している監視ポイントデータ等のコンバートを、合わせて行う。コントローラ1における、ソフトウェアのバージョンアップ、および、監視ポイントデータ等のコンバートの詳細については、後述する。
また、第1コントローラ11および第2コントローラ12は、ソフトウェアのバージョンが高いほうに合わせてソフトウェアのバージョンを一致させる際、待機系のコントローラ1として動作しているコントローラ1の方がソフトウェアのバージョンが高い場合は、コントローラ1の切替を行う。ソフトウェアのバージョンアップの際のコントローラ1の切替の詳細については、後述する。
図2は、実施の形態1に係るコントローラ1の構成例を示すブロック図である。
コントローラ1は、ソフトウェアに基づくCPUを用いたプログラム処理によって実行される。また、コントローラ1は、他のコントローラ1または機器との通信を行う、入力インタフェース装置(図示省略)、および出力インタフェース装置(図示省略)を備える。
図2において、第1コントローラ11が運用系のコントローラであり、第2コントローラ12が待機系のコントローラであるものとしている。なお、図2においては、説明の簡単のため、第1コントローラ11および第2コントローラ12について、それぞれ、運用系のコントローラ1である場合に機能する構成部、および、待機系のコントローラ1である場合に機能する構成部のみを示すようにしているが、第1コントローラ11と第2コントローラ12とは、基本的に同じ構成を備える。すなわち、第1コントローラ11は、図2に示すような第2コントローラ12の構成部も備えており、第2コントローラ12は、図2に示すような第1コントローラ11の構成部も備えている。以下の実施の形態1では、第1コントローラ11は運用系のコントローラ、第2コントローラ12は待機系のコントローラであるものとして説明する。
図2に示すように、第1コントローラ11は、第1生存確認部111、第1バージョン確認部112、第1バージョン判定部113、第1パッケージ送信部114、第1記憶部115、第1制御部116、冗長化データ送信部117、第1パッケージ受信部118、および、第1バージョンアップ部119を備える。第1制御部116は、第1切替制御部1161を備える。
第2コントローラ12は、第2生存確認部121、第2バージョン確認部122、第2バージョン判定部123、第2記憶部125、第2制御部126、冗長化データ受信部127、第2パッケージ受信部128、および、第2バージョンアップ部129を備える。第2制御部126は、第2切替制御部1261を備える。
まず、第1コントローラ11の構成について説明する。
第1生存確認部111は、第2コントローラ12の生存確認を行う。具体的には、第1生存確認部111は、第2コントローラ12に対して、生存確認コマンドを送信し、第2コントローラ12から応答コマンドを受信する。第1生存確認部111は、応答コマンドを受信すると、第2コントローラ12が生存していると判定し、当該応答コマンドを受信した旨の情報を、第1バージョン確認部112に出力する。
また、第1生存確認部111は、第2コントローラ12から送信された生存確認コマンドを受信し、第2コントローラ12に応答コマンドを送信する。
より詳細には、第1生存確認部111は、生存確認コマンド送信部(図示省略)、応答受信部(図示省略)、生存確認コマンド受信部(図示省略)、および、応答送信部(図示省略)を備える。
生存確認コマンド送信部は、第2コントローラ12に対して、生存確認コマンドを送信する。生存確認コマンド送信部は、予め設定された周期で、生存確認コマンドを送信する。
応答受信部は、第2コントローラ12から、生存確認コマンド送信部が送信した生存確認コマンドに応答する応答コマンドを受信する。応答受信部は、応答コマンドを受信すると、当該応答コマンドを受信した旨の情報を、第1バージョン確認部112に出力する。
生存確認コマンド受信部は、第2コントローラ12から送信される生存確認コマンドを受信する。生存確認コマンド受信部は、生存確認コマンドを受信すると、当該生存確認コマンドを受信した旨の情報を応答送信部に出力する。
応答送信部は、生存確認コマンド受信部が受信した生存確認コマンドに応答する応答コマンドを、第2コントローラ12に送信する。
このように、第1生存確認部111は、生存確認コマンドの送受信、および、応答コマンドの送受信を行うことで、第2コントローラ12と、互いに生存確認を行う。
第1バージョン確認部112は、第1生存確認部111から応答コマンドを受信した旨の情報が出力されると、第2コントローラ12から、当該第2コントローラ12で適用されているソフトウェアのバージョン(以下「第2バージョン」という。)に関する情報(以下「第2バージョン情報」という。)を取得する。具体的には、第1バージョン確認部112は、第2コントローラ12に対して、第2バージョンを確認するためのバージョン確認情報を送信し、当該第2コントローラ12から、バージョン確認情報に対する応答情報を受信する。
より詳細には、第1バージョン確認部112は、バージョン確認情報送信部(図示省略)、バージョン応答受信部(図示省略)、バージョン確認情報受信部(図示省略)、バージョン応答送信部(図示省略)を備える。
バージョン確認情報送信部は、第2コントローラ12に対して、バージョン確認情報を送信する。
バージョン応答受信部は、第2コントローラ12から、バージョン確認情報送信部が送信したバージョン確認情報に対する応答情報を受信する。第2コントローラ12から送信される応答情報には、少なくとも、第2バージョン情報が含まれる。
第1バージョン確認部112は、バージョン応答受信部が、第2コントローラ12から応答情報を受信することで、第2バージョン情報を取得し、第2コントローラ12で適用されているソフトウェアのバージョンを確認する。
バージョン応答受信部は、バージョン確認情報に対する応答情報を受信すると、受信した応答情報を、第1バージョン判定部113に出力する。
第1バージョン判定部113は、第1バージョン確認部が取得した第2バージョン情報、および、第1記憶部115に記憶されている、第1コントローラ11で適用されているソフトウェアのバージョンに関する情報(以下「第1バージョン情報」という。)に基づき、自装置で適用されているソフトウェアのバージョン、言い換えれば、第1コントローラ11で適用されているソフトウェアのバージョンと、第2バージョンとを比較するバージョン判定を行う。以下、第1コントローラ11で適用されているソフトウェアのバージョンを、「第1バージョン」ともいうものとする。
そして、第1バージョン判定部113は、第1バージョンと第2バージョンの、いずれのバージョンの方が、バージョンが進んでいるかを判定する。
なお、第1バージョン判定部113は、例えば、ソフトウェアのバージョンが、更新された順に時系列で管理されているバージョン管理情報に基づき、第1バージョンまたは第2バージョンの、いずれのバージョンの方が進んでいるかを判定するようにすればよい。バージョン管理情報は、例えば、コントローラ1が参照可能な場所に記憶されている。
第1バージョン判定部113は、第1バージョンの方が第2バージョンよりも進んでいると判定した場合、第1バージョンの方が、第2バージョンよりも進んでいる旨の情報を、第1制御部116に出力する。第1バージョン判定部113は、第1バージョンの方が第2バージョンよりも進んでいる旨の情報と合わせて、第1バージョン情報、および、第2バージョン情報を、第1制御部116に出力する。
なお、第1バージョンが、第2バージョンよりも、2世代以上進んでいることもある。
この場合、第1バージョン判定部113は、第1バージョンの方が第2バージョンよりも進んでおり、かつ、第2バージョンと第1バージョンとの間には2世代以上のバージョンの差があると判定し、差分のバージョンに関する情報を、第1制御部116に出力するようにする。
具体例を挙げて説明すると、例えば、第1バージョンが「バージョン1.0.003」であり、第2バージョンが「バージョン1.0.001」であったとする。なお、コントローラ1で適用されるソフトウェアのバージョンは、「バージョン1.0.001」→「バージョン1.0.002」→「バージョン1.0.003」の順で、更新されたものとする。
そうすると、第1バージョンは、第2バージョンよりも2世代分、バージョンが進んでいる。具体的には、第1バージョンと、第2バージョンでは、「バージョン1.0.002」および「バージョン1.0.003」の2世代分の差分がある。
この場合、第1バージョン判定部113は、「バージョン1.0.002」および「バージョン1.0.003」の2世代のバージョンに関する情報を、第1制御部116に出力するようにする。
一方、第1バージョン判定部113は、第2バージョンの方が、第1バージョンよりも進んでいると判定した場合、第2バージョンの方が、第1バージョンよりも進んでいる旨の情報を、第1制御部116に送信する。
なお、第1バージョン判定部113は、バージョン判定の結果、第2バージョンが、第1バージョンと同じであると判定した場合は、第1制御部116へ、第1バージョンの方が第2バージョンよりも進んでいる旨の情報の出力も、第2バージョンの方が第1バージョンよりも進んでいる旨の情報の出力も、行わない。
第1パッケージ送信部114は、第1バージョン判定部113が、上記バージョン判定を行った結果、第1バージョンの方が、第2バージョンよりも進んでいると判定した場合、第1制御部116の制御に基づき、第2コントローラ12に対して、自装置で適用されているソフトウェアのバージョンに対応付けられたソフトウェアパッケージを送信する。
具体的には、まず、第1パッケージ送信部114は、第1記憶部115を参照し、第1バージョンに対応付けられているソフトウェアパッケージを取得する。第1パッケージ送信部114は、第1バージョンを、第1バージョン判定部113から出力された第1バージョン情報から特定すればよい。以下の実施の形態1において、第1記憶部115に記憶されている、第1コントローラ11の第1バージョンに対応付けられているソフトウェアパッケージを、「第1ソフトウェアパッケージ」ともいう。
実施の形態1において、ソフトウェアパッケージとは、コントローラ1にて実行させる1つ以上のアプリケーションを、バージョンに応じたアプリケーションとするよう、ソフトウェアの更新をするためのソフトウェア更新用ファイルが集約されたファイル群である。当該ソフトウェアパッケージは、ソフトウェアのバージョン毎に作成され、第1記憶部115に記憶されている。コントローラ1は、ソフトウェアパッケージをインストールすることで、ソフトウェアパッケージに対応するバージョンに応じた、ソフトウェアの更新を行う。ソフトウェアパッケージをインストールするとは、ソフトウェアパッケージに含まれる1つ以上のソフトウェア更新用ファイルをまとめてインストールすることであり、これにより、コントローラ1は、バージョンの同期をとって、アプリケーションのバージョンアップ等を行うことができる。
第1パッケージ送信部114は、第1記憶部115を参照して取得した第1ソフトウェアパッケージを、第2コントローラ12に送信する。
なお、第1バージョン判定部113が、上記バージョン判定を行った結果、第1バージョンの方が第2バージョンよりも進んでおり、かつ、第2バージョンと第1バージョンとの間には2世代以上のバージョンの差があると判定した場合、第1パッケージ送信部114は、当該2世代以上のバージョンそれぞれに対応付けられたソフトウェアパッケージを、第1ソフトウェアパッケージとして、第2コントローラ12に送信する。
例えば、上述した例のように、第1バージョンと、第2バージョンでは、「バージョン1.0.002」および「バージョン1.0.003」の2世代分の差分がある場合、第1パッケージ送信部114は、「バージョン1.0.002」に対応するソフトウェアパッケージと、「バージョン1.0.003」に対応するソフトウェアパッケージを、第1ソフトウェアパッケージとして、第2コントローラ12に送信することになる。
第1記憶部115は、第1バージョン情報と、当該第1バージョン情報に対応付けられているソフトウェアパッケージを記憶する。
第1コントローラ11は、バージョンアップを行なった際、第1バージョン情報、および、第1ソフトウェアパッケージを第1記憶部115に記憶させている。第1記憶部115は、第1バージョン情報、および、第1ソフトウェアパッケージを、履歴で記憶している。
また、第1記憶部115は、監視ポイントを監視または制御するための情報を記憶している。実施の形態1において、監視ポイントを監視または制御するための情報を、「冗長化データ」ともいう。冗長化データには、監視ポイントから収集した監視ポイントデータ、アプリケーションの設定データ、または、帳票データ等が含まれる。なお、第1コントローラ11の監視ポイントデータ収集部(図示省略)が、監視ポイントデータを収集し、収集した監視ポイントデータを、第1記憶部115に記憶させている。
冗長化データは、第1コントローラ11および第2コントローラ12にて、同期をとって記憶されている。冗長化データは、例えば、予め設定された周期で、または、常時、運用系のコントローラ1である第1コントローラ11から、待機系のコントローラ1である第2コントローラ12に送信される。第2コントローラ12は、第1コントローラ11から送信された冗長化データを自装置の第2記憶部125に記憶する。
第1記憶部115は、例えば、SSD(Solid State Drive)である。
第1コントローラ11は、冗長化データ等を記憶させておくため、第1記憶部115は、比較的大容量の記憶装置である。そのため、上述のように、第1記憶部115は、ソフトウェアパッケージとしたソフトウェア更新用ファイルも記憶させておくことができる。
第1制御部116は、第1バージョン判定部113が、上述のバージョン判定を行った結果、第1バージョンの方が、第2バージョンよりも進んでいると判定した場合、第1パッケージ送信部114に対して、第1ソフトウェアパッケージの送信指示を出力する。第1パッケージ送信部114は、第1制御部116から第1ソフトウェアパッケージの送信指示が出力されると、第2コントローラ12に対して、第1ソフトウェアパッケージを送信する。
一方、第1制御部116は、第1バージョン判定部113が、上述のバージョン判定を行った結果、第2バージョンの方が、第1バージョンよりも進んでいると判定した場合、冗長化データ送信部117に、冗長化データ送信指示を出力する。その後、第1制御部116は、自装置をオフライン状態とする。実施の形態1において、コントローラ1がオフライン状態である、とは、コントローラ1が機能を縮退運転している状態をいう。コントローラ1がオフライン状態であるとき、コントローラ1において、監視ポイントを制御または監視する機能は停止するが、OSまたはコントローラ1の基本部分の処理は動作している。第1制御部116は、自装置をオフライン状態とした際、第2コントローラ12に対して、オフライン状態とした旨の通知を送信するようにする。また、第1制御部116は、自装置をオフライン状態とすると、第1パッケージ受信部118に、パッケージ受信指示を出力する。第1パッケージ受信部118は、パッケージ受信指示に基づき、第2コントローラ12から送信された、第2バージョンに対応付けられたソフトウェアパッケージを受信する。第1パッケージ受信部118の詳細は後述する。
第1制御部116の第1切替制御部1161は、第1バージョンアップ部119から、バージョンアップ完了通知が出力されると、自装置を待機系のコントローラ1として動作させるよう、コントローラ1の切替を行う。なお、第1バージョンアップ部119は、第1パッケージ受信部118が受信した、第2バージョンに対応付けられたソフトウェアパッケージをインストールすることで、第1バージョンのバージョンアップを行う。第1バージョンアップ部119の詳細は、後述する。
第1切替制御部1161は、自装置を待機系のコントローラ1として動作させるようコントローラ1の切替を行う際、あわせて、運用系のコントローラ1に切り替わった後の第2コントローラ12から、冗長化データ受信部(図示省略)を介して、冗長化データを受信し、第1記憶部115に記憶させるようにしてもよい。
第1切替制御部1161がコントローラ1の切替を行うと、第1制御部116は、自装置を待機系のコントローラ1として、再度、第1コントローラ11をオンライン状態とする。
冗長化データ送信部117は、第1制御部116から冗長化データ送信指示が出力されると、第2コントローラ12に対して、第1記憶部115で記憶している、冗長化データを送信する。
第1パッケージ受信部118は、第1制御部116からパッケージ受信指示が出力されると、当該パッケージ受信指示に基づき、第2コントローラ12から送信された、第2バージョンに対応付けられたソフトウェアパッケージを受信する。
なお、第1パッケージ受信部118は、第1コントローラ11がオフライン状態で、第2バージョンに対応付けられたソフトウェアパッケージを受信するが、上述のとおり、コントローラ1は、オフライン状態であっても、OSまたはコントローラ1の基本部分の処理は動作している。そのため、コントローラ1において、第1パッケージ受信部118は、オフライン状態であっても、パッケージの送受信は可能である。以下の実施の形態1において、第2コントローラ12で適用されている第2バージョンに対応付けられているソフトウェアパッケージを、「第2ソフトウェアパッケージ」ともいう。
第1パッケージ受信部118は、第2コントローラ12から受信した第2ソフトウェアパッケージを、第1バージョンアップ部119に出力する。
第1バージョンアップ部119は、第1パッケージ受信部118から第2ソフトウェアパッケージが出力されると、当該第2ソフトウェアパッケージをインストールする。これにより、第1コントローラ11で適用されるソフトウェアのバージョンが、第2バージョンにバージョンアップされる。
第1バージョンアップ部119は、第2ソフトウェアパッケージのインストールを完了すると、第1切替制御部1161に、バージョンアップ完了通知を出力する。
また、第1バージョンアップ部119は、第2バージョンにバージョンアップした後の第1バージョンに関する第1バージョン情報、および、当該第1バージョンに対応付く第1ソフトウェアパッケージを、第1記憶部115に記憶させる。なお、当該第1バージョンに対応付く第1ソフトウェアパッケージは、第1バージョンアップ部119がインストールした第2ソフトウェアパッケージである。
次に第2コントローラ12の構成例について説明する。
第2生存確認部121は、第1コントローラ11の生存確認を行う。第2生存確認部121は、第1コントローラ11に対して、生存確認コマンドを送信し、第1コントローラ11から応答コマンドを受信する。第2生存確認部121は、応答コマンドを受信すると、第1コントローラ11が生存していると判定し、当該応答コマンドを受信した旨の情報を、第2バージョン確認部122に出力する。
また、第2生存確認部121は、第1コントローラ11から送信された生存確認コマンドを受信し、第1コントローラ11に応答コマンドを送信する。
第2生存確認部121の基本的な機能は、第1生存確認部111の基本的な機能と同じであり、生存確認を行う対象が、第1生存確認部111は第2コントローラ12であったのに対し、第2生存確認部121は第1コントローラ11である点が異なるだけである。よって、第2生存確認部121の詳細な説明は省略する。
第2生存確認部121も、第1生存確認部111同様、生存確認コマンド送信部(図示省略)、応答受信部(図示省略)、生存確認コマンド受信部(図示省略)、および、応答送信部(図示省略)を備える。
第2バージョン確認部122は、第2生存確認部121から応答コマンドを受信した旨の情報が出力されると、第1コントローラ11から、第1バージョン情報を取得する。具体的には、第2バージョン確認部122は、第1コントローラ11に対して、当該第1コントローラ11で適用されているソフトウェアのバージョンを確認するためのバージョン確認情報を送信し、当該第1コントローラ11から、バージョン確認情報に対する応答情報を受信する。第2バージョン確認部122は、第1コントローラ11から応答情報を受信することで、第1バージョン情報を取得し、第1コントローラ11で適用されているソフトウェアのバージョンを確認する。
第2バージョン確認部122の基本的な機能は、第1バージョン確認部112の基本的な機能と同じであり、第1バージョン確認部112は第2コントローラ12から第2バージョン情報を取得するのに対し、第2バージョン確認部122は第1コントローラ11から第1バージョン情報を取得する点が異なるだけである。よって、第2バージョン確認部122の詳細な説明は省略する。
第2バージョン確認部122も、第1バージョン確認部112同様、バージョン確認情報送信部(図示省略)、バージョン応答受信部(図示省略)、バージョン確認情報受信部(図示省略)、バージョン応答送信部(図示省略)を備える。
第2バージョン判定部123は、第2バージョン確認部122が取得した第1バージョン情報、および、第2記憶部125に記憶されている、第2バージョン情報に基づき、自装置で適用されているソフトウェアのバージョン、言い換えれば、第2コントローラ12で適用されているソフトウェアのバージョンと、第1バージョンとを比較するバージョン判定を行う。
第2バージョン判定部123が行うバージョン判定の基本的な機能は、第1バージョン判定部113が行うバージョン判定の基本的な機能と同じであるため、詳細な説明を省略する。第2バージョン判定部123は、第1バージョン判定部113同様、バージョン管理情報に基づき、第1バージョンまたは第2バージョンの、いずれのバージョンの方が進んでいるかを判定するようにすればよい。
第2バージョン判定部123は、第2バージョンの方が、第1バージョンよりも進んでいると判定した場合、第2バージョンの方が第1バージョンよりも進んでいる旨の情報を、第2制御部126に出力する。第2制御部126は、第2コントローラ12を運用系のコントローラ1として動作させるためのコントローラ1の切替を行う。第2制御部126の詳細は後述する。
一方、第2バージョン判定部123は、第1バージョンの方が、第2バージョンよりも進んでいると判定した場合、第1バージョンの方が第2バージョンよりも進んでいる旨の情報を、第2制御部126に出力する。第2バージョン判定部123は、第1バージョンの方が第2バージョンよりも進んでいる旨の情報とあわせて、第1バージョン情報、および、第2バージョン情報を、第2制御部126に出力する。
なお、第2バージョン判定部123は、バージョン判定の結果、第2バージョンが、第1バージョンと同じであると判定した場合は、第2制御部126への、第2バージョンの方が第1バージョンよりも進んでいる旨の情報の出力も、第1バージョンの方が第2バージョンよりも進んでいる旨の情報の出力も、行わない。
第2記憶部125は、第2バージョン情報と、当該第2バージョン情報に対応付けられているソフトウェアパッケージを記憶する。
第2コントローラ12は、バージョンアップを行なった際、第2バージョン情報、および、第2ソフトウェアパッケージを第2記憶部125に記憶させている。第2記憶部125は、第2バージョン情報、および、第2ソフトウェアパッケージを、履歴で記憶している。
また、第2記憶部125は、待機系のコントローラ1である第2コントローラ12が、例えば、予め設定された周期で、または、常時、運用系のコントローラ1である第1コントローラ11から受信した冗長化データを記憶する。
第2記憶部125は、例えば、SSD(Solid State Drive)である。
第2記憶部125は、第1記憶部115同様、比較的大容量の記憶装置である。そのため、第2記憶部125は、第1記憶部115同様、ソフトウェアパッケージとしたソフトウェア更新用ファイルを記憶させておくことができる。
第2制御部126は、第2バージョン判定部123が、上述のバージョン判定を行った結果、第2バージョンの方が、第1バージョンよりも進んでいると判定した場合、冗長化データ受信部127に、冗長化データ受信指示を出力する。その後、第2制御部126は、冗長化データ受信部127が第1コントローラ11から受信した冗長化データを取得し、冗長化データのコンバートを実施する。実施の形態1において、冗長化データのコンバートとは、バージョンアップによる機能追加に伴う、テーブルへのフィールドの追加、または、各データの初期値の変更等である。第2制御部126は、第1コントローラ11から受信した冗長化データのコンバートを実施することで、当該冗長化データを、第1バージョンよりもバージョンが高い第2バージョンに合わせるようにする。
第2制御部126において、冗長化データのコンバートが完了すると、第2制御部126は、第1コントローラ11から、自装置、言い換えれば第1コントローラ11をオフライン状態とした旨の通知を受信するまで待機する。第2制御部126が、第1コントローラ11から、当該第1コントローラ11をオフライン状態とした旨の通知を受信すると、第2制御部126の第2切替制御部1261は、自装置を運用系のコントローラ1として動作させるよう、コントローラ1の切替を行う。
第2切替制御部1261がコントローラ1の切替を行うと、第2制御部126は、自装置を運用系のコントローラ1として動作させる。このとき、運用系のコントローラ1に切り替わった第2コントローラ12の第2制御部126は、第1コントローラ11に対して、第2パッケージ送信部(図示省略)を介して、第2ソフトウェアパッケージを送信する。なお、第2パッケージ送信部は、第1パッケージ送信部114と共通の構成部である。第1コントローラ11は、オフライン状態となっており、第1コントローラ11の第1パッケージ受信部118は、第2パッケージ送信部から送信された、第2ソフトウェアパッケージを受信する。
なお、第2切替制御部1261は、第2生存確認部121が、第1コントローラが生存していないと判定した場合にも、自装置を運用系のコントローラ1とする、コントローラ1の切替を行う。しかし、この場合は、第2制御部126は、上述の、第1コントローラ11に対して第2ソフトウェアパッケージを送信する制御は行わない。
一方、第2制御部126は、第2バージョン判定部123が、上記バージョン判定を行った結果、第1バージョンの方が、第2バージョンよりも進んでいると判定した場合、自装置をオフライン状態とする。第2制御部126は、自装置をオフライン状態とすると、第2パッケージ受信部128に、パッケージ受信指示を出力する。
冗長化データ受信部127は、第2制御部126から冗長化データ受信指示が出力されると、第1コントローラ11から送信される冗長化データを受信する。
冗長化データ受信部127は、受信した冗長化データを、第2制御部126に出力する。
第2パッケージ受信部128は、第2制御部126からパッケージ受信指示が出力されると、当該パッケージ受信指示に基づき、第1コントローラ11から送信された、第1バージョンに対応付けられた第1ソフトウェアパッケージを受信する。
第2パッケージ受信部128は、第1コントローラ11から受信した第1ソフトウェアパッケージを、第2バージョンアップ部129に出力する。
第2バージョンアップ部129は、第2パッケージ受信部128から第1ソフトウェアパッケージが出力されると、当該第1ソフトウェアパッケージを取得し、当該第1ソフトウェアパッケージをインストールする。これにより、第2コントローラ12で適用されるソフトウェアのバージョンが、第1バージョンにバージョンアップされる。
第2バージョンアップ部129は、第1バージョンにバージョンアップした後の第2バージョンに関する第2バージョン情報、および、当該第2バージョンに対応付く第2ソフトウェアパッケージを、第2記憶部125に記憶させる。なお、当該第2バージョンに対応付く第2ソフトウェアパッケージは、第2バージョンアップ部129がインストールした第1ソフトウェアパッケージである。
また、第2バージョンアップ部129は、第1ソフトウェアパッケージのインストールを完了すると、第2制御部126に、バージョンアップ完了通知を出力し、第2制御部126は、運用系のコントローラ1である第1コントローラ11から、冗長化データ受信部127を介して、冗長化データを受信し、第2記憶部125に記憶させるようにしてもよい。
なお、実施の形態1において、第1生存確認部111と第2生存確認部121とを、まとめて生存確認部ともいう。また、第1バージョン確認部112と第2バージョン確認部とを、まとめてバージョン確認部ともいう。また、第1バージョン判定部113と第2バージョン判定部123とを、まとめてバージョン判定部ともいう。また、第1記憶部115と第2記憶部125とを、まとめて記憶部ともいう。また、第1制御部116と第2制御部126とを、まとめて制御部ともいう。また、第1切替制御部1161と第2切替制御部1261とを、まとめて切替制御部ともいう。また、第1パッケージ受信部118と第2パッケージ受信部128とを、まとめてパッケージ受信部ともいう。また、第1バージョンアップ部119と、第2バージョンアップ部129とを、まとめてバージョンアップ部ともいう。また、第1パッケージ送信部114と第2パッケージ送信部とを、まとめてパッケージ送信部ともいう。
実施の形態1に係る施設監視システム1000におけるコントローラ1の動作について説明する。なお、以下の説明では、第1コントローラ11および第2コントローラ12がネットワークに接続され、第1コントローラ11および第2コントローラ12で冗長化された施設監視システム1000を立ち上げる際の動作を想定している。
また、以下の動作説明においても、第1コントローラ11が運用系のコントローラ、第2コントローラ12が待機系のコントローラとして動作するものとして説明する。
まず、運用系のコントローラとしての第1コントローラ11の動作について説明する。
図3は、実施の形態1に係る施設監視システムにおける、運用系のコントローラとしての第1コントローラ11の動作を説明するためのフローチャートである。
第1コントローラ11は、起動すると、図3にて説明する動作を行う。
第1バージョン確認部112は、第1生存確認部111から応答コマンドを受信した旨の情報が出力されると、第2コントローラ12から第2バージョン情報を取得し、第2コントローラ12で適用されているソフトウェアのバージョンを確認する(ステップST301)。
第1バージョン判定部113は、ステップST301にて第1バージョン確認部112が取得した第2バージョン情報、および、第1記憶部115に記憶されている、第1バージョン情報に基づき、第1バージョンと第2バージョンとを比較するバージョン判定を行う。そして、第1バージョン判定部113は、第1バージョンと第2バージョンの、いずれのバージョンの方が、バージョンが進んでいるかを判定する(ステップST302)。
ステップST302において、第1バージョン判定部113は、第1バージョンの方が第2バージョンよりも進んでいると判定した場合(ステップST302の“YES”の場合)、第1バージョンの方が、第2バージョンよりも進んでいる旨の情報を、第1制御部116に出力する。第1バージョン判定部113は、第1バージョンの方が第2バージョンよりも進んでいる旨の情報と合わせて、第1バージョン情報、および、第2バージョン情報を、第1制御部116に出力する。
第1制御部116は、第1パッケージ送信部114に対して、第1ソフトウェアパッケージの送信指示を出力する。第1パッケージ送信部114は、第1制御部116から第1ソフトウェアパッケージの送信指示が出力されると、第2コントローラ12に対して、第1ソフトウェアパッケージを送信する(ステップST303)。
第2コントローラ12が、ステップST303にて第1パッケージ送信部114が送信した第1ソフトウェアパッケージを受信し(後述の図4のステップST407参照)、当該第1ソフトウェアパッケージをインストールすることで、第2バージョンを第1バージョンに合わせるようバージョンアップする(後述の図4のステップST408参照)と、第1コントローラ11と第2コントローラ12のソフトウェアのバージョンが、バージョンの高い方に揃う。第1コントローラ11と第2コントローラ12のソフトウェアのバージョンが揃うと、第1コントローラ11と第2コントローラ12とで冗長化された施設監視システムの運用が開始される。
一方、ステップST302において、第1バージョン判定部113は、第1バージョンの方が第2バージョンよりも進んでいないと判定した場合(ステップST302の“NO”の場合)、第1バージョン判定部113は、第2バージョンの方が、第1バージョンよりも進んでいるかを判定する(ステップST304)。
ステップST304において、第1バージョン判定部113は、第2バージョンの方が、第1バージョンよりも進んでいないと判定した場合(ステップST304の“NO”の場合)、すなわち、第1バージョン判定部113は、第1バージョンと第2バージョンが同じであると判定した場合、第1コントローラ11の動作は、ステップST301に戻る。
ステップST304において、第1バージョン判定部113は、第2バージョンの方が、第1バージョンよりも進んでいると判定した場合(ステップST304の“YES”の場合)、第2バージョンの方が、第1バージョンよりも進んでいる旨の情報を、第1制御部116に送信する。
第1制御部116は、冗長化データ送信部117に、冗長化データ送信指示を出力し、冗長化データ送信部117は、第1制御部116から冗長化データ送信指示が出力されると、第2コントローラ12に対して、第1記憶部115で記憶している、冗長化データを送信する(ステップST305)。
第1制御部116は、自装置をオフライン状態とし、第1パッケージ受信部118に、パッケージ受信指示を出力する。第1制御部116は、自装置をオフライン状態とした際、第2コントローラ12に対して、オフライン状態とした旨の通知を送信するようにする。
第1パッケージ受信部118は、第1制御部116からパッケージ受信指示が出力されると、当該パッケージ受信指示に基づき、第2コントローラ12から送信された、第2バージョンに対応付けられたソフトウェアパッケージを受信する(ステップST306)。第1パッケージ受信部118は、第2コントローラ12から受信した第2ソフトウェアパッケージを、第1バージョンアップ部119に出力する。
第1バージョンアップ部119は、ステップST306にて第1パッケージ受信部118から第2ソフトウェアパッケージが出力されると、当該第2ソフトウェアパッケージをインストールする(ステップST307)。これにより、第1コントローラ11で適用されるソフトウェアのバージョンが、第2バージョンにバージョンアップされる。
第1バージョンアップ部119は、第2ソフトウェアパッケージのインストールを完了すると、第1切替制御部1161に、バージョンアップ完了通知を出力する。
また、第1バージョンアップ部119は、第2バージョンにバージョンアップした後の第1バージョンに関する第1バージョン情報、および、当該第1バージョンに対応付く第1ソフトウェアパッケージを、第1記憶部115に記憶させる。
第1制御部116の第1切替制御部1161は、ステップST307にて第1バージョンアップ部119から、バージョンアップ完了通知が出力されると、自装置を待機系のコントローラ1として動作させるよう、コントローラ1の切替を行う(ステップST308)。
ステップST307にて第1バージョンアップ部119が第2ソフトウェアパッケージをインストールし、第1コントローラで適用されるソフトウェアのバージョンが第2バージョンにバージョンアップされることで、第1コントローラ11と第2コントローラ12のソフトウェアのバージョンが、バージョンの高い方に揃う。第1コントローラ11と第2コントローラ12のソフトウェアのバージョンが揃うと、第1コントローラ11と第2コントローラ12とで冗長化された施設監視システムの運用が開始される。
第1コントローラ11は、ステップST308にてコントローラ1の切替を行う前に、ステップST305にて、冗長化データ送信部117が、第2コントローラ12に対して、冗長化データを送信するようにしている。そして、冗長化データ送信部117が第2コントローラ12に対して冗長化データを送信すると、第2コントローラ12は、当該冗長化データをコンバートの上、記憶し、その後、コントローラ1の切替を行って、運用系のコントローラ1として動作するようになる(後述の図4のステップST403~ステップST405参照)
コントローラ1の切替が行われる前に、運用系のコントローラ1として動作している第1コントローラ11から、待機系のコントローラ1として動作している第2コントローラ12への冗長化データの引継ぎが行われるため、コントローラ1の切替が行われても、冗長化データが消失することなく、施設監視システム1000は、監視ポイントの監視または制御を継続できる。
また、ステップST306にて、第1パッケージ受信部118が、第2コントローラ12から送信された第2ソフトウェアパッケージを受信するとき、当該第2コントローラ12は、運用系のコントローラ1へと切り替わっている(後述の図4のステップST405参照)。一方、上述のとおり、第1コントローラ11において、第1切替制御部1161は、第1バージョンアップ部119からバージョンアップ完了通知が出力されてから(図3のステップST307)、ステップST308にてコントローラ1の切替を行うため、第1パッケージ受信部118が第2ソフトウェアパッケージを受信するとき、第1コントローラ11は、オフライン状態であるため、監視ポイントの監視または制御は行わない。
次に、待機系のコントローラとしての第2コントローラ12の動作について説明する。
図4は、実施の形態1に係る施設監視システムにおける、待機系のコントローラとしての第2コントローラ12の動作を説明するためのフローチャートである。
第2コントローラ12は、起動すると、図4にて説明する動作を行う。
第2バージョン確認部122は、第2生存確認部121から応答コマンドを受信した旨の情報が出力されると、第1コントローラ11から、第1バージョン情報を取得し、第1コントローラ11で適用されているソフトウェアのバージョンを確認する(ステップST401)。
第2バージョン判定部123は、ステップST401にて第2バージョン確認部122が取得した第1バージョン情報、および、第2記憶部125に記憶されている、第2バージョン情報に基づき、第2バージョンと、第1バージョンとを比較するバージョン判定を行う。そして、第2バージョン判定部123は、第1バージョンと第2バージョンの、いずれのバージョンの方が、バージョンが進んでいるかを判定する(ステップST402)。
ステップST402において、第2バージョン判定部123は、第2バージョンの方が、第1バージョンよりも進んでいると判定した場合(ステップST402の“YES”の場合)、第2バージョンの方が第1バージョンよりも進んでいる旨の情報を、第2制御部126に出力する。
第2制御部126は、冗長化データ受信部127に、冗長化データ受信指示を出力し、冗長化データ受信部127が第1コントローラ11から受信した冗長化データを取得する(ステップST403)。そして、第2制御部126は、冗長化データのコンバートを実施する(ステップST404)。
第2制御部126において、冗長化データのコンバートが完了し、第2制御部126が、第1コントローラ11から、当該第1コントローラ11をオフライン状態とした旨の通知を受信すると、第2制御部126の第2切替制御部1261は、自装置を運用系のコントローラ1として動作させるよう、コントローラ1の切替を行う(ステップST405)。
第2切替制御部1261がコントローラ1の切替を行うと、第2制御部126は、自装置を運用系のコントローラ1として動作させる。このとき、運用系のコントローラ1に切り替わった第2コントローラ12の第2制御部126は、第1コントローラ11に対して、第1パッケージ送信部を介して、第2ソフトウェアパッケージを送信する。第1コントローラ11では、運用系のコントローラ1に切り替わった第2コントローラ12の第1パッケージ送信部から送信された第2ソフトウェアパッケージを取得し(図3のステップST306参照)、当該第2ソフトウェアパッケージをインストールしてソフトウェアのバージョンアップを行った後(ステップST307参照)、待機系のコントローラ1に切り替わる(ステップST308)。これにより、第1コントローラ11と第2コントローラ12のソフトウェアのバージョンが、バージョンの高い方、ここでは、第2バージョン、に揃う。第1コントローラ11と第2コントローラ12のソフトウェアのバージョンが揃うと、第1コントローラ11と第2コントローラ12とで冗長化された施設監視システムの運用が開始される。
第2コントローラ12は、ステップST407にてコントローラ1の切替を行う前に、ステップST403にて、冗長化データ受信部127が第1コントローラ11から冗長化データを受信し、ステップST406にて第2制御部126が冗長化データのコンバートを実施するようにしている。
コントローラ1の切替が行われる前に、運用系のコントローラ1として動作している第1コントローラ11から、待機系のコントローラ1として動作している第2コントローラ12への冗長化データの引継ぎが行われるため、コントローラ1の切替が行われても、冗長化データが消失することなく、施設監視システム1000は、監視ポイントの監視または制御を継続できる。
一方、ステップST402において、第2バージョン判定部123は、第2バージョンの方が第1バージョンよりも進んでいないと判定した場合(ステップST402の“NO”の場合)、第2バージョン判定部123は、第1バージョンの方が、第2バージョンよりも進んでいるかを判定する(ステップST406)。
ステップST406において、第2バージョン判定部123は、第1バージョンの方が、第2バージョンよりも進んでいないと判定した場合(ステップST406の“NO”の場合)、すなわち、第2バージョン判定部123が、第1バージョンと第2バージョンが同じであると判定した場合、第2コントローラ12の動作は、ステップST401に戻る。
ステップST406において、第2バージョン判定部123は、第1バージョンの方が、第2バージョンよりも進んでいると判定した場合(ステップST406の“YES”の場合)、第1バージョンの方が、第2バージョンよりも進んでいる旨の情報を、第2制御部126に送信する。
第2制御部126は、自装置をオフライン状態とし、第2パッケージ受信部128に、パッケージ受信指示を出力する。そして、第2パッケージ受信部128は、第2制御部126からパッケージ受信指示が出力されると、当該パッケージ受信指示に基づき、第1コントローラ11から送信された、第1バージョンに対応付けられた第1ソフトウェアパッケージを受信する(ステップST407)。
第2パッケージ受信部128は、第1コントローラ11から受信した第1ソフトウェアパッケージを、第2バージョンアップ部129に出力する。
第2バージョンアップ部129は、ステップST407にて第2パッケージ受信部128から第1ソフトウェアパッケージが出力されると、当該第1ソフトウェアパッケージを取得し、当該第1ソフトウェアパッケージをインストールする(ステップST408)。これにより、第2コントローラ12で適用されるソフトウェアのバージョンが、第1バージョンにバージョンアップされる。
第2バージョンアップ部129は、第1バージョンにバージョンアップした後の第2バージョンに関する第2バージョン情報、および、当該第2バージョンに対応付く第2ソフトウェアパッケージを、第2記憶部125に記憶させる。なお、当該第2バージョンに対応付く第2ソフトウェアパッケージは、第2バージョンアップ部129がインストールした第1ソフトウェアパッケージである。
また、第2バージョンアップ部129は、第1ソフトウェアパッケージのインストールを完了すると、第2制御部126に、バージョンアップ完了通知を出力し、第2制御部126は、運用系のコントローラ1である第1コントローラ11から、冗長化データ受信部127を介して、冗長化データを受信し、第2記憶部125に記憶させるようにしてもよい。
ステップST408にて第2バージョンアップ部129が第1ソフトウェアパッケージをインストールし、第2コントローラで適用されるソフトウェアのバージョンが第1バージョンにバージョンアップされることで、第1コントローラ11と第2コントローラ12のソフトウェアのバージョンが、バージョンの高い方、すなわち、第1バージョン、に揃う。第1コントローラ11と第2コントローラ12のソフトウェアのバージョンが揃うと、第1コントローラ11と第2コントローラ12とで冗長化された施設監視システムの運用が開始される。
なお、以上の動作説明では、第1コントローラ11および第2コントローラ12がいずれも起動時にネットワークに接続されていることを前提としたが、例えば、第1コントローラ11および第2コントローラ12が起動時にネットワークに接続されていない状態であることもある。この場合、第1コントローラ11および第2コントローラ12がネットワークに接続された時点で、一方を運用系のコントローラ1、他方を待機系のコントローラ1として、互いで適用されているソフトウェアのバージョンを一致させた上で、冗長化された施設監視システム1000を立ち上げる。
具体的には、ペアとなる第1コントローラ11および第2コントローラ12がいずれも動作開始した後、ネットワークに第1コントローラ11および第2コントローラ12が接続されると、少なくとも一方のコントローラ1の第1バージョン判定部113または第2バージョン判定部123がバージョン判定を行い、バージョンが進んでいないと判定されたコントローラ1の第1制御部116または第2制御部126が、自装置をオフライン状態にする。その後、当該第1制御部116または第2制御部126は、自装置を待機系のコントローラ1とし、再度オンライン状態とするようにする。
運用系のコントローラ1となったコントローラ1は、図3で説明した動作を行い、待機系のコントローラ1となったコントローラ1は、図4で説明した動作を行って、冗長化された施設監視システム1000を立ち上げる。
また、以上の図3および図4を用いた動作説明では、施設監視システム1000の立ち上げ時を想定して、施設監視システム1000の立ち上げ時に、第1コントローラ11および第2コントローラ12で適用されているソフトウェアのバージョンを一致させる動作について説明した。
しかし、これに限らず、例えば、稼働中の施設監視システム1000において、コントローラ1にて障害等が発生した場合にも、同様に、運用系のコントローラ1と待機系のコントローラ1とで、適用されているソフトウェアのバージョンを一致させるよう、動作することができる。
例えば、今、運用系のコントローラ1として動作していた第1コントローラ11で障害が発生したとする。そうすると、第2コントローラ12が運用系のコントローラとして動作するよう、切替が行われる。具体的には、例えば、第1コントローラ11にて障害が発生したことにより、第1コントローラ11から第2コントローラ12に対して生存確認コマンドが送信されなくなるため、第2コントローラ12の第2生存確認部121が、一定期間、生存確認コマンドを受信せず、第1コントローラ11は生存していないと判定する。そのため、第2コントローラ12の第2切替制御部1261が自装置を運用系のコントローラ1とする切替を行う。第1コントローラ11は、復旧後、先に第2コントローラ12が起動していることにより、待機系のコントローラ1となる。
第2コントローラ12は、運用系のコントローラ1として、図3で説明した動作を行い、第1コントローラ11は復旧後、待機系のコントローラ1として、図4で説明した動作を行うことで、第1コントローラ11および第2コントローラ12で、適用されているソフトウェアのバージョンを一致させた上で、冗長化が行われる。
以上のように、実施の形態1に係る施設監視システムでは、運用系のコントローラ1が、自装置に適用されているソフトウェアのバージョンと、待機系のコントローラ1で適用されているソフトウェアのバージョンとを比較し、差異がある場合に、両バージョンを揃えた上で、冗長化された施設監視システムを立ち上げるようにした。具体的には、運用系のコントローラ1で適用されているソフトウェアのバージョンが、待機系のコントローラ1で適用されているソフトウェアのバージョンよりも進んでいる場合に、運用系のコントローラ1が待機系のコントローラ1に対して、運用系のコントローラ1で適用されているソフトウェアのバージョンに対応するソフトウェアパッケージを送信する。待機系のコントローラ1では、運用系のコントローラ1からソフトウェアパッケージが送信されると、当該待機系のコントローラ1で適用されているソフトウェアのバージョンを、運用系のコントローラ1で適用されているソフトウェアのバージョンと一致させるバージョンアップを行う。
待機系のコントローラ1で適用されているソフトウェアのバージョンが運用系のコントローラ1で適用されているソフトウェアのバージョンよりも進んでいる場合は、運用系のコントローラ1と待機系のコントローラ1の切替を行う。その後、上述のように、ソフトウェアのバージョンが進んでいる運用系のコントローラ1から、ソフトウェアのバージョンが遅れていた運用系のコントローラ1に対してソフトウェアパッケージを送信し、ソフトウェアのバージョンが遅れていた運用系のコントローラ1は、ソフトウェアのバージョンアップを行う。その後、当該ソフトウェアのバージョンが遅れていた運用系のコントローラ1は、待機系のコントローラ1に切替を行う。なお、この場合、ソフトウェアのバージョンが遅れていた方の運用系のコントローラ1は、オフライン状態であり、冗長化の機能は動作しない。すなわち、バージョンが遅れていた方の運用系のコントローラ1は、コントローラ1の切替の際は運用系のコントローラ1でも待機系のコントローラ1でもなくなり、監視ポイントの監視または制御を行わない。
コントローラ1は、ソフトウェアのバージョンを下げて当該バージョンを一致させた状態で冗長化されないようにしたため、コントローラ1が有する機能に不具合が発生することを防いでコントローラ1を冗長化させることができる。ソフトウェアのバージョンを下げて当該バージョンを一致させた状態でコントローラ1が冗長化されると、監視ポイントデータの破損のおそれがある他、コントローラ1が有する機能がデグレードするおそれがある。
また、第1コントローラ11および第2コントローラ12間で、ソフトウェアのバージョンを一致させることができるため、例えば、管理者等が、故障が発生したコントローラ1を代替機に置き換える場合、管理者等は、冗長化のペアとなるコントローラ1と、代替機との間で、適用されているソフトウェアのバージョンを一致させておく作業を必要としない。仮に、第1コントローラ11および第2コントローラ12間で、自動的にソフトウェアのバージョンを一致させることができないとした場合、管理者等は、冗長化のペアとなるコントローラ1と代替機との間で、適用されているソフトウェアのバージョンを一致させておく作業が必要となる。これは、管理者等の作業を増やすだけでなく、万が一、代替機に適用させるべきソフトウェアのバージョンの伝達ミス等があると、管理者等は、いざ、代替機を設置させようとした際に、当該伝達ミス等に気付き、設定のやり直し等の手戻りが発生することにもなり兼ねない。少なくとも二つのコントローラ1、の一つを運用系のコントローラ1、残りを待機系のコントローラ1として動作させる冗長化システムでは、データ破損等の不具合を発生させないよう、管理者等は、バージョンを一致させる際に、バージョンが下がらないよう考慮する必要もある。
これに対し、実施の形態1に係るコントローラ1は、上述のとおり、第1コントローラ11および第2コントローラ12間でソフトウェアのバージョンを自動的に一致させることができるため、管理者等は、代替機の設置の際に、当該代替機で適用されているソフトウェアのバージョンを意識しなくて済む。
また、施設監視システム1000が、大規模施設向けの施設監視システムであって、運用系のコントローラ1と待機系のコントローラ1のペアを複数備える施設監視システムである場合も、同様の仕組みを適用させることで、施設監視システムが備える全てのコントローラ1で適用されているソフトウェアのバージョンを一致させることができる。具体的には、例えば、初回の通信接続時に、各ペアにおいて、上述したように、ソフトウェアのバージョン判定を行い、バージョンが遅れているコントローラ1が、バージョンが進んでいるコントローラ1からソフトウェアパッケージを受信し、バージョンアップを行う。各ペアでソフトウェアのバージョンが一致すると、複数の運用系のコントローラ1のうちの1つがマスターコントローラ、その他の運用系のコントローラ1がスレーブコントローラとなり、マスターコントローラと各スレーブコントローラとの間で、同様に、互いのソフトウェアのバージョン判定を行い、バージョンが遅れているコントローラ1が、バージョンの進んでいるコントローラ1からソフトウェアパッケージを受信し、バージョンアップを行う。全ての運用系のコントローラ1でバージョンが一致すると、再度、各運用系のコントローラ1は、相手のコントローラ1とソフトウェアのバージョンの判定を行い、ソフトウェアのバージョンを一致させる。これにより、運用系のコントローラ1と待機系のコントローラ1のペアを複数備える施設監視システムである場合も、全てのコントローラ1において、ソフトウェアのバージョンを自動的に一致させることができる。
また、冗長化された第1コントローラ11および第2コントローラ12間で、適用されているソフトウェアのバージョンを一致させることができるため、例えば、管理者等は、第1コントローラ11および第2コントローラ12で適用されているソフトウェアのバージョンアップを行なう場合、第1コントローラ11または第2コントローラ12のいずれかのソフトウェアのバージョンアップを行なうだけでよい。これにより、管理者等の、コントローラ1への、ソフトウェアのバージョンアップに係る作業を低減することができる。
以上の実施の形態1では、コントローラ1は第1コントローラ11と第2コントローラ12の2つとしたが、これは一例に過ぎず、ネットワークには3つ以上のコントローラ1が接続されていてもよい。施設監視システム1000には、少なくとも1つの運用系のコントローラ1と、当該運用系のコントローラ1と冗長化された、少なくとも1つの待機系のコントローラ1とが備えられるようになっていればよい。
以上のように、実施の形態1によれば、情報記憶装置(コントローラ1)は、自装置で適用されているソフトウェアのバージョンに関するバージョン情報、および、当該ソフトウェアのバージョンと対応付けられたソフトウェアパッケージを記憶する記憶部(第1記憶部115,第2記憶部125)と、冗長化のペアとなる相手の情報記憶装置から、相手の情報記憶装置で適用されているソフトウェアのバージョンに関するバージョン情報を取得するバージョン確認部(第1バージョン確認部112,第2バージョン確認部122)と、記バージョン確認部が取得したバージョン情報および記憶部に記憶されたバージョン情報に基づき、自装置で適用されているソフトウェアのバージョンと、相手の情報記憶装置で適用されているソフトウェアのバージョンを比較するバージョン判定部(第1バージョン判定部113,第2バージョン判定部123)と、自装置が運用系の情報記憶装置(第1コントローラ11)として動作し、かつ、バージョン判定部(第1バージョン判定部113)が、自装置で適用されているソフトウェアのバージョンの方が、相手の情報記憶装置で適用されているソフトウェアのバージョンよりも進んでいると判定した場合、相手の情報記憶装置に対して、ソフトウェアパッケージを送信するパッケージ送信部(第1パッケージ送信部114)と、バージョン判定部が、相手の情報記憶装置で適用されているソフトウェアのバージョンの方が、自装置で適用されているソフトウェアのバージョンよりも進んでいると判定した場合、自装置をオフライン状態とする制御部(第1制御部116,第2制御部126)と、制御部が自装置をオフライン状態とすると、相手の情報記憶装置で適用されているソフトウェアのバージョンと対応付けられたソフトウェアパッケージを受信するパッケージ受信部(第1パッケージ受信部118,第2パッケージ受信部128)と、パッケージ受信部がソフトウェアパッケージを受信した場合、当該ソフトウェアパッケージをインストールするバージョンアップ部(第1バージョンアップ部119,第2バージョンアップ部129)を備えるように構成した。そのため、少なくとも2つの情報記憶装置、の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムに備えられた情報記憶装置において、情報記憶装置が有する機能に不具合が発生することを防いで情報記憶装置を冗長化させることができる。
また、情報記憶装置は、上記の構成に加え、自装置が待機系の情報記憶装置(第2コントローラ12)として動作し、かつ、バージョン判定部(第2バージョン判定部123)が、自装置で適用されているソフトウェアのバージョンの方が、相手の情報記憶装置で適用されているソフトウェアのバージョンよりも進んでいると判定した場合、自装置を運用系の情報記憶装置として動作させるよう切替を行う切替制御部(第2切替制御部1261)を備えるように構成した。そのため、少なくとも2つの情報記憶装置、の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムに備えられた情報記憶装置において、情報記憶装置が有する機能に不具合が発生することを防いで情報記憶装置を冗長化させることができる。
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
11 第1コントローラ
111 第1生存確認部
112 第1バージョン確認部
113 第1バージョン判定部
114 第1パッケージ送信部
115 第1記憶部
116 第1制御部
1161 第1切替制御部
117 冗長化データ送信部
118 第1パッケージ受信部
119 第1バージョンアップ部
12 第2コントローラ
121 第2生存確認部
122 第2バージョン確認部
123 第2バージョン判定部
125 第2記憶部
126 第2制御部
1261 第2切替制御部
127 冗長化データ受信部
128 第2パッケージ受信部
129 第2バージョンアップ部

Claims (6)

  1. ネットワークに接続された、少なくとも2つの情報記憶装置、の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムに備えられた情報記憶装置であって、
    自装置で適用されているソフトウェアのバージョンに関するバージョン情報、および、当該ソフトウェアのバージョンと対応付けられたソフトウェアパッケージを記憶する記憶部と、
    冗長化のペアとなる相手の情報記憶装置から、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンに関する前記バージョン情報を取得するバージョン確認部と、
    前記バージョン確認部が取得した前記バージョン情報および前記記憶部に記憶された前記バージョン情報に基づき、自装置で適用されている前記ソフトウェアのバージョンと、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンを比較するバージョン判定部と、
    自装置が前記運用系の情報記憶装置として動作し、かつ、前記バージョン判定部が、自装置で適用されている前記ソフトウェアのバージョンの方が、前記待機系の情報記憶装置として動作している前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンよりも進んでいると判定した場合、前記相手の情報記憶装置に対して、前記ソフトウェアパッケージを送信するパッケージ送信部と、
    前記バージョン判定部が、前記待機系の情報記憶装置として動作している前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンの方が、自装置で適用されている前記ソフトウェアのバージョンよりも進んでいると判定した場合、自装置を冗長化の機能が動作しないオフライン状態とする制御部と、
    前記制御部が自装置をオフライン状態とすると、前記運用系の情報記憶装置に切り替わった前記相手の情報記憶装置から、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンと対応付けられた前記ソフトウェアパッケージを受信するパッケージ受信部と、
    前記パッケージ受信部が前記ソフトウェアパッケージを受信した場合、当該ソフトウェアパッケージをインストールするバージョンアップ部と、
    前記バージョンアップ部が前記ソフトウェアパッケージのインストールを完了すると、自装置を前記待機系の情報記憶装置として動作させるように切り替える切替制御部
    を備えた情報記憶装置。
  2. 前記記憶部は、前記バージョン情報および前記ソフトウェアパッケージを履歴で記憶しており、
    前記バージョン判定部が、自装置で適用されている前記ソフトウェアのバージョンと、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンの比較を行った結果、自装置で適用されている前記ソフトウェアのバージョンの方が、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンよりも進んでおり、かつ、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンと自装置で適用されている前記ソフトウェアのバージョンとの間には2世代以上のバージョンの差があると判定した場合、
    前記パッケージ送信部は、
    前記2世代以上のバージョンそれぞれに対応付けられた前記ソフトウェアパッケージを送信する
    ことを特徴とする請求項1記載の情報記憶装置。
  3. 前記ソフトウェアパッケージには、前記ソフトウェアのバージョンに対応する1つ以上のソフトウェア更新用ファイルが含まれる
    ことを特徴とする請求項1または請求項2記載の情報記憶装置。
  4. 前記切替制御部は
    自装置が前記待機系の情報記憶装置として動作し、かつ、前記バージョン判定部が、自装置で適用されている前記ソフトウェアのバージョンの方が、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンよりも進んでいると判定した場合、自装置を前記運用系の情報記憶装置として動作させるよう切替を行
    ことを特徴とする請求項1から請求項3のうちのいずれか1項記載の情報記憶装置。
  5. ネットワークに接続された、少なくとも2つの情報記憶装置、の1つを運用系の情報記憶装置、残りを待機系の情報記憶装置として動作させる冗長化システムに備えられた情報記憶装置によるソフトウェア更新方法であって、
    バージョン確認部が、冗長化のペアとなる相手の情報記憶装置から、前記相手の情報記憶装置で適用されているソフトウェアのバージョンに関するバージョン情報を取得するステップと、
    バージョン判定部が、前記バージョン確認部が取得した前記バージョン情報、および、自装置で適用されている前記ソフトウェアのバージョンに関する前記バージョン情報に基づき、自装置で適用されている前記ソフトウェアのバージョンと、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンを比較するステップと、
    自装置が前記運用系の情報記憶装置として動作し、かつ、前記バージョン判定部が、自装置で適用されている前記ソフトウェアのバージョンの方が、前記待機系の情報記憶装置として動作している前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンよりも進んでいると判定した場合、パッケージ送信部が、前記相手の情報記憶装置に対して、自装置で適用されている前記ソフトウェアのバージョンと対応付けられたソフトウェアパッケージを送信するステップと、
    前記バージョン判定部が、前記待機系の情報記憶装置として動作している前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンの方が、自装置で適用されている前記ソフトウェアのバージョンよりも進んでいると判定した場合、制御部が、自装置を冗長化の機能が動作しないオフライン状態とするステップと、
    前記制御部が自装置をオフライン状態とすると、パッケージ受信部が、前記運用系の情報記憶装置に切り替わった前記相手の情報記憶装置から、前記相手の情報記憶装置で適用されている前記ソフトウェアのバージョンと対応付けられた前記ソフトウェアパッケージを受信するステップと、
    バージョンアップ部が、前記パッケージ受信部が前記ソフトウェアパッケージを受信した場合、当該ソフトウェアパッケージをインストールするステップと、
    切替制御部が、前記バージョンアップ部が前記ソフトウェアパッケージのインストールを完了すると、自装置を前記待機系の情報記憶装置として動作させるように切り替えるステップ
    を備えたソフトウェア更新方法。
  6. ネットワークに接続された、少なくとも2つの情報記憶装置、の1つを前記運用系の情報記憶装置、残りを前記待機系の情報記憶装置として動作させる冗長化システムにおいて、
    請求項1から請求項4のうちのいずれか1項記載の情報記憶装置を備えた
    ことを特徴とする冗長化システム。
JP2019124440A 2019-07-03 2019-07-03 情報記憶装置、ソフトウェア更新方法、および、冗長化システム Active JP7454919B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019124440A JP7454919B2 (ja) 2019-07-03 2019-07-03 情報記憶装置、ソフトウェア更新方法、および、冗長化システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019124440A JP7454919B2 (ja) 2019-07-03 2019-07-03 情報記憶装置、ソフトウェア更新方法、および、冗長化システム

Publications (2)

Publication Number Publication Date
JP2021012406A JP2021012406A (ja) 2021-02-04
JP7454919B2 true JP7454919B2 (ja) 2024-03-25

Family

ID=74227990

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019124440A Active JP7454919B2 (ja) 2019-07-03 2019-07-03 情報記憶装置、ソフトウェア更新方法、および、冗長化システム

Country Status (1)

Country Link
JP (1) JP7454919B2 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000284957A (ja) 1999-03-31 2000-10-13 Fuji Photo Optical Co Ltd マルチマイコンシステム
JP2007034666A (ja) 2005-07-27 2007-02-08 Nec Corp 冗長構成装置、冗長構成システム、バージョンアップ可能化方法、及びバージョンアップ可能化プログラム
JP2007317221A (ja) 2007-07-19 2007-12-06 Seiko Epson Corp ソフトウェアの管理方法
JP2008217201A (ja) 2007-03-01 2008-09-18 Nec Corp 自動アップデート方法
JP2011158928A (ja) 2010-01-29 2011-08-18 Yokogawa Electric Corp フィールド機器
JP2011204267A (ja) 2011-06-10 2011-10-13 Fujitsu Ltd データ処理装置間の基本入出力プログラムの同期化方法及びコンピュータシステム
JP2016143187A (ja) 2015-01-30 2016-08-08 沖電気工業株式会社 冗長通信装置及びその制御方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000284957A (ja) 1999-03-31 2000-10-13 Fuji Photo Optical Co Ltd マルチマイコンシステム
JP2007034666A (ja) 2005-07-27 2007-02-08 Nec Corp 冗長構成装置、冗長構成システム、バージョンアップ可能化方法、及びバージョンアップ可能化プログラム
JP2008217201A (ja) 2007-03-01 2008-09-18 Nec Corp 自動アップデート方法
JP2007317221A (ja) 2007-07-19 2007-12-06 Seiko Epson Corp ソフトウェアの管理方法
JP2011158928A (ja) 2010-01-29 2011-08-18 Yokogawa Electric Corp フィールド機器
JP2011204267A (ja) 2011-06-10 2011-10-13 Fujitsu Ltd データ処理装置間の基本入出力プログラムの同期化方法及びコンピュータシステム
JP2016143187A (ja) 2015-01-30 2016-08-08 沖電気工業株式会社 冗長通信装置及びその制御方法

Also Published As

Publication number Publication date
JP2021012406A (ja) 2021-02-04

Similar Documents

Publication Publication Date Title
US10545469B2 (en) Systems and methods for self provisioning building equipment
US9798632B2 (en) Providing boot data in a cluster network environment
JP5564956B2 (ja) 情報処理装置及び情報処理装置のファームウェア更新方法
EP2456257B1 (en) Method and system for upgrading wireless data card
US8713553B2 (en) Disk array apparatus and firmware update method therefor
US9477456B2 (en) Method for installing and simultaneously updating operating system software
US10936295B2 (en) Software update system
JP2004192602A (ja) ホームネットワークシステムおよびその運用方法
CN107066300B (zh) 一种存储设备的固件升级方法和存储设备
WO2016048845A1 (en) Over-the-air updates for ble devices
CN104104547A (zh) 一种网络设备配置文件的管理方法及网络控制器
EP4092524B1 (en) Ota differential upgrade method and system of master-slave architecture
JP6028851B2 (ja) 情報処理装置、プログラム更新方法、及びプログラム
JP2008299709A (ja) ファームウェア更新システム、ネットワーク接続機器、ファームウェア更新方法及びプログラム
JP2015158773A (ja) 仮想装置の動作検証装置,仮想装置の動作検証システム及びプログラム
JP7454919B2 (ja) 情報記憶装置、ソフトウェア更新方法、および、冗長化システム
JP7484791B2 (ja) Otaマスタ、更新制御方法、及び更新制御プログラム
CN112181461B (zh) 升级方法、网络模块、设备、服务器以及升级系统
KR101282891B1 (ko) 리셋 이력 관리 기능을 갖는 광전송로 종단장치 및 그 방법
US20150154025A1 (en) Information processing apparatus and method
KR20160112787A (ko) 테스트 시스템 및 그 제어 방법
JP6554801B2 (ja) 冗長通信装置及びその制御方法
KR20150080356A (ko) 홈오토시스템의 원거리업데이트방법
KR20200112137A (ko) Plc 시스템의 펌웨어 관리 장치 및 방법과, 그 plc 시스템
WO2012177597A1 (en) Networking elements as a patch distribution platform for distributed automation and control domains

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230410

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230418

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230605

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230605

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230919

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240312

R150 Certificate of patent or registration of utility model

Ref document number: 7454919

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150