(57)【要約】  本発明では、稼働中のシステムへの影響を抑えつつ、柔軟に代替システムに切換えることを目的とする。  上記課題を解決するため、本発明ではネートワークを介して接続するフィールド装置から制御情報を取得する通信制御部と、取得した前記制御情報に基づいて前記フィールド装置の監視または制御を行う主系プログラムを実行する演算処理部と、前記主系プログラムの動作状態、および、前記フィールド装置の監視または制御に必要な設定情報を記憶するメモリと、を備え、前記演算処理部は、前記主系プログラムの動作を監視して、前記メモリに記憶する前記動作状態を逐次更新しており、所定のタイミングで前記メモリ内の前記動作状態、および、前記設定情報から前記主系プログラムと切替え可能に代替プログラムを構築し、前記主系プログラムから前記代替プログラムへ切換えることを特徴とする。
2015037116.tif 000002
【特許請求の範囲】
【請求項１】
ネートワークを介して接続するフィールド装置から制御情報を取得する通信制御部と、
取得した前記制御情報に基づいて前記フィールド装置の監視または制御を行う主系プログラムを実行する演算処理部と、
前記主系プログラムの動作状態、および、前記フィールド装置の監視または制御に必要な設定情報を記憶するメモリと、を備え、
前記演算処理部は、前記主系プログラムの動作を監視して、前記メモリに記憶する前記動作状態を逐次更新しており、所定のタイミングで前記メモリ内の前記動作状態、および、前記設定情報から前記主系プログラムと切替え可能に代替プログラムを構築し、前記主系プログラムから前記代替プログラムへ切換えることを特徴とする制御システム。
【請求項２】
請求項１において、
前記メモリは、前記代替プログラムが前記フィールド装置との通信に必要な通信プロトコルを記憶し、
前記演算処理部は、前記メモリに記憶する前記通信プロトコルに基づいて前記代替プログラムが前記フィールド装置へアクセスするために必要な通信プロトコルの変換方式を設定し、前記主系プログラムから前記代替プログラムへ切換えることを特徴とする制御システム。
【請求項３】
請求項２において、
前記通信制御部と前記フィールド装置との通信を中継する通信経路切換え装置を備え、
前記通信経路切換え装置は、一方のネットワークから受信した通信データの通信プロトコルを異なる通信プロトコルへ変換して他方のネットワークへ送信するものであって、
前記演算処理部は、前記代替プログラムが通信に用いる通信プロトコルと、前記フィールド装置が通信に用いる通信プロトコルと、から前記代替プログラムと前記フィールド装置との間の通信に必要な通信プロトコルの変換経路を前記通信経路切換え装置へ設定し、前記主系プログラムから前記代替プログラムへ切換えることを特徴とする制御システム。
【請求項４】
請求項１において、
前記主系プログラムを実行する演算処理部と、前記代替プログラムを実行する演算処理部と、はそれぞれ別の制御装置に備えられ、前記代替プログラムを実行する制御装置は、前記メモリに記憶する前記動作状態、および、前記設定情報から前記主系プログラムを実行する制御装置と切替え可能に当該代替プログラムを構築して、前記主系プログラムから前記代替プログラムへ切換えることを特徴とする制御システム。
【請求項５】
請求項１において、
前記演算処理部は、実行中の前記主系プログラムの更新要否をチェックし、プログラムの更新が必要だと判断すると、構築された前記代替プログラムに対してプログラムの更新を実行し、更新後の前記代替プログラムが正常に動作するか確認し、前記主系プログラムから前記代替プログラムへ切換えることを特徴とする制御システム。
【請求項６】
請求項１に記載の制御システムは、複数の前記主系プログラムを稼動して、複数のフィールド装置を監視制御するものであって、
前記演算処理部は、稼動中の複数の前記主系プログラムの更新要否をチェックし、いずれかの前記主系プログラムに更新が必要だと判断すると、更新が必要と判断された前記主系プログラムに関する前記動作状態および前記設定情報から当該主系プログラムと切替え可能に前記代替プログラムを構築し、構築された前記代替プログラムに対してプログラムの更新を実行し、更新が必要と判断された前記主系プログラムから前記代替プログラムへ切換えることを特徴とする制御システム。
【請求項７】
請求項６において、
前記主系プログラムおよび前記代替プログラムは、ソフトウェアによって構成されたプログラマブルロジックコントローラであることを特徴とする制御システム。
【請求項８】
請求項１において、
請求項１に記載の制御システムは、複数の前記主系プログラムを稼動して、複数のフィールド装置を監視制御するものであって、
前記演算処理部は、稼動中の複数の前記主系プログラムをチェックし、いずれかの前記主系プログラムに更新が必要だと判断すると、更新が必要と判断された主系プログラムに関する前記動作状態および前記設定情報から当該主系プログラムと切替え可能に前記代替プログラムを構築し、更新が必要と判断された主系プログラムから前記代替プログラムへ前記フィールド装置の監視制御主体を切換え、当該主系プログラムに対してプログラムの更新を実行し、さらに前記代替プログラムから更新された前記主系プログラムへ切換えることを特徴とする制御システム。
【請求項９】
ネートワークを介して接続するフィールド装置から制御情報を取得するステップと、
取得した前記制御情報に基づいて前記フィールド装置の監視制御を行う主系プログラムを実行するステップと、
前記主系プログラムの動作を監視して前記主系プログラムの動作状態をメモリへ格納するステップと、
所定のタイミングで予めメモリに記憶する前記フィールド装置の監視または制御に必要な設定情報、および、前記メモリに格納された前記動作状態から前記主系プログラムと切替え可能に代替プログラムを構築するステップと、
前記主系プログラムから前記代替系プログラムへ運用を切換えるステップと、
を含む制御プログラムの切換え方法。
【請求項１０】
請求項９においてさらに、
実行中の前記主系プログラムの更新要否をチェックするステップと、
プログラムの更新が必要だと判断すると、構築された前記代替プログラムに対してプログラムの更新を実行するステップと、
更新後の前記代替プログラムが正常に動作するか確認するステップと、
前記主系プログラムから前記代替プログラムへ運用を切換えるステップと、
を含む制御プログラムの切換え方法。
【請求項１１】
請求項９において、さらに
複数の前記主系プログラムを稼動して、複数のフィールド装置を監視制御するステップと、
稼動中の複数の前記主系プログラムをチェックするステップと、
いずれかの前記主系プログラムに更新が必要だと判断すると、更新が必要と判断された前記主系プログラムに関する前記動作状態および前記設定情報から当該主系プログラムと切替え可能に前記代替プログラムを構築するステップと、
構築された前記代替プログラムに対してプログラムの更新を実行するステップと、
更新が必要と判断された前記主系プログラムから前記代替プログラムへ運用を切換えるステップと、
を含む制御プログラムの切換え方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御システムおよび制御プログラムの切換え方法に関するものである。
【背景技術】
【０００２】
フィールドデバイスの監視制御には、システムの信頼性向上を図る方法として、その制御を司る処理装置（プロセッサ）を二重化し、運転中のプロセッサを稼動側、故障の際切換えるプロセッサを待機側として冗長化して運用する方式がある。【０００３】
このような、冗長化システムにおけるプロセッサのソフトウェア更新において、サービスの一時中断を防ぐ方法として、例えば特許文献１の技術がある。【０００４】
特許文献１では、待機系のプロセッサに対しソフトウェア更新部を駆動して新版ソフトウェアを設定し，稼働系の制御状態データを待機系にも徐々に反映させ，所定時間が経過して可変の制御状態データが全て待機系に反映された状態になると待機系のプロセッサを稼働系に切換えるよう構成することが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２-４９５０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、特許文献１に記載のような切り替え方式では、稼働系と切換えられるように、稼動系と同様のハードウェア構成で待機系を構築して運用させて待機する必要があり、システムの可用性に劣るという課題があった。【０００７】
本発明では、稼働中のシステムへの影響を抑えつつ、柔軟に代替システムに切換えることができる制御システムおよび制御プログラムの切換え方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、ネートワークを介して接続するフィールド装置から制御情報を取得する通信制御部と、取得した前記制御情報に基づいて前記フィールド装置の監視制御を行う主系プログラムを実行する演算処理部と、前記主系プログラムの動作状態、および、前記フィールド装置の監視または制御に必要な設定情報を記憶するメモリと、を備え、前記演算処理部は、前記主系プログラムの動作を監視して、前記メモリに記憶する前記動作状態を逐次更新しており、所定のタイミングで前記メモリ内の前記動作状態、および、前記設定情報から前記主系プログラムと切替え可能に代替プログラムを構築し、前記主系プログラムから前記代替系プログラムへ前記フィールド装置の監視制御主体を切換えることを特徴とする。
【発明の効果】
【０００９】
本発明では、稼働中のシステムへの影響を抑えつつ、柔軟に代替システムに切換えることができる。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態における制御システムの構成の一例を示した図である。
【図２】第１実施形態における制御システムの構成の一例を示した図である。
【図３】第１実施形態における通信経路切換え部の詳細構成の一例を示した図である。
【図４】第１実施形態における制御装置の動作切換え処理フローの一例を示した図である。
【図５】第１実施形態における制御装置のエラー処理の一例を示した図である。
【図６】第２実施形態における制御システムの構成の一例を示した図である。
【図７】第２実施形態における制御システムの構成の一例を示した図である。
【図８】第２実施形態における制御装置の動作検証・切換え処理フローの一例を示した図である。
【図９】第３実施形態における制御システムの構成の一例を示した図である。
【図１０】第３実施形態における制御システムの構成の一例を示した図である。
【図１１】第３実施形態における制御装置の動作検証・切換え処理フローの一例を示した図である。
【発明を実施するための形態】
【００１１】
ICT（Information and Communication Technology）の分野ではクラウドシステムやSDN（Software Defined Networking）に代表される仮想化技術の活用が広がっている。制御システムの分野においても，従来のコントローラによるハードウェア処理をソフトウェアPLC（Programmable Logic Controller）などの仮想環境上で実行する技術が普及してきている。今後は両分野の融合が一段と進み，仮想環境からフィールドデバイスの監視制御を実行する技術が普及していくと予測される。
【００１２】
以下の実施形態では、ソフトウェアによってPLC（Programmable Logic controller）やSCADA（Supervisory Control And Data Acquisition）など監視制御プログラムを構築し、これらによってフィールドデバイスを監視制御する例として説明する。
【００１３】
以下、本発明を実施するための形態（以降、「本実施形態」と称す）について、適宜図面を参照しながら詳細に説明する。
【００１４】
尚、以下説明する実施形態に記載の内容は、ファクトリーオートメーション（FA），プロセスオートメーション（PA）に使用されるDCS（distributed control system）やPLC（Programmable Logic controller）などの制御装置，および，SCADA（Supervisory Control And Data Acquisition）などの制御システムに適用可能である。
（第１実施形態）
図１は、第１実施形態における制御システムの構成の一例を示した図である。本実施形態による制御システムは、フィールド装置４と、フィールド装置を監視制御する制御装置１と、制御装置１とフィールド装置４を接続するネットワーク２と、制御装置１とフィールド装置４との通信データを中継する通信経路切換え部３とから構成される。
【００１５】
制御装置１は、フィールド装置から取得した制御情報を用いて監視や制御演算を行う演算処理部１００と、種々のDB（データベース）が記憶される記憶部１１０と、ネットワーク２との通信機能を有し、フィールド装置とのデータの送受信を行う通信制御部１２０と、を有する。また、演算処理部１００は、記憶部１１０からプログラムを図示しない主記憶装置へ転送し、このプログラムを実行する。実行するプログラムとしては、オペレーティングシステム（以
下「ＯＳ」と称す）や、ＯＳ上で動作するアプリケーションプログラムがある。
【００１６】
また、演算処理部１００、記憶部１１０、通信制御部１２０はそれぞれ図示しないバスを介して接続され、バスとしては、例えば、ＰＣＩバス、ＩＳＡバス、ＰＣＩ  Ｅｘｐｒｅｓｓバス、システムバス、及びメモリバスを採用できる。
【００１７】
記憶部１１０には、通信経路設定ＤＢ９と、情報更新ＤＢ７が記憶され、演算処理部１００は、稼働プログラム５-１と代替プログラム５-２と状態監視部６と情報更新ＤＢ７と動作切換え部８を実行する。
【００１８】
稼働プログラム５-１は，フィールド装置４の監視や制御を実行するためのプログラムであり，例えばソフトウェアPLCやSCADAアプリケーションなどである。代替プログラム５-２は稼働プログラム５-１に代わってフィールド装置４の監視や制御を実行するための機能を有するプログラムであり，稼働プログラム５-１と同様に，例えばソフトウェアPLCやSCADAアプリケーションなどである。
【００１９】
状態監視部６は，稼働プログラム５-１の動作状態と設定情報と制御情報を取得し，情報更新ＤＢ７に取得した動作状態を送信する機能を有する。ここで，動作状態とは例えば，稼働プログラム５-１の起動中，処理中，待機中，停止，異常発生などを示すステータス情報や診断情報である。設定情報とは，例えばフィールド装置４の監視や制御に必要なコンフィグレーションデータや稼働プログラム５-１の種類やバージョン情報などである。コンフィグレーションデータとは，例えばフィールド装置４のアドレス情報，監視・制御のための初期設定値，キャリブレーション情報などである。また，制御情報とは，稼働プログラム５-１がフィールド装置４の監視や制御を実行するために取得したセンサ情報，接点情報，トレンドデータなどである。また，状態監視部６は，稼働プログラム５-１の処理タイミングと代替プログラム５-２の処理タイミングを同期させるための機能を有する。
【００２０】
情報更新ＤＢ７は状態監視部６が取得した設定情報と制御情報とを保存し，新たな情報を取得した場合にはその情報に更新される。情報の保存には例えばメモリやハードディスクなどの記憶装置を利用する。また，制御情報にはタイムスタンプを加えて時系列的に保存し，所定の保存期間が経過した制御情報は廃棄するなど，順次最新の情報に更新しても良い。
【００２１】
通信経路設定ＤＢ９は，稼働プログラム５-１が監視・制御対象としているフィールド装置４のアドレス情報などを特定する情報と，特定したアドレス情報から代替プログラム５-２が前述のフィールド装置４にアクセスするための通信経路および通信方式（通信プロトコル）が記憶される。稼働プログラム５-１が監視・制御対象としているフィールド装置４の情報を取得する手段として，例えば状態監視部６や情報更新ＤＢ７を介して稼働プログラム５-１のコンフィグレーションデータを参照するなどの方法がある。
【００２２】
動作切換え部８は、情報更新ＤＢ７から稼動プログラム５−１の動作状態、設定情報、制御情報を取得し、通信経路設定ＤＢ９からフィールド装置４にアクセスするための通信経路や通信方式を取得する。これら取得した情報を元に，代替プログラム５-２の動作方法を設定し，フィールド装置４を監視・制御するためのプログラムを稼働プログラム５-１から代替プログラム５-２に切換えると同時に，通信経路切換え部３の通信経路を設定し，代替プログラム５-２が対象のフィールド装置４にアクセスできる状態に設定する機能を有する。
【００２３】
通信経路切換え部３は，動作切換え部８の指示に従って，制御装置１とフィールド装置４を接続する通信経路や通信方式を切換える機能を有する。通信経路切換え部３は例えば，各種ゲートウェイやスイッチの組合せ，Open Flow技術などによって実現できる。通信経路切換え部３の実現例については後述する。
【００２４】
フィールド装置４は制御装置１からの指示に従ってコントロールされるセンサやアクチュエータなどであり，ネットワーク２を介して制御装置１と接続される。ここで，実際に制御システムの扱うフィールド装置４の数や種類は本例に限定されるものではない。
【００２５】
また，制御装置１は，PCやサーバ，コントローラなどのハードウェアで構成されていても良いし，クラウドシステムなどの仮想環境上に構成されていても良い。
【００２６】
図２は、稼働プログラム５-１および代替プログラム５-２がOS上で実行されるアプリケーションとして，それぞれ別個のハードウェア上に実装される例である。
【００２７】
本例では制御装置１Aは，稼働プログラム５-１と状態監視部６を備え，制御装置１Bは代替プログラム５-２と動作切換え部８と動作切換え部８と情報更新ＤＢ７とを備える。制御装置１Aと制御装置１Bはネットワーク２０を介して接続され，状態監視部６からの情報はネットワーク２０を介して制御装置１Bへ送信される。ここで，ネットワーク２０は制御装置とフィールド装置とを接続するためのネットワーク２とは別種類のネットワークでも良いし，同種類のネットワークでも良い。
【００２８】
制御装置１がクラウドシステムなどの仮想環境上に構築される場合には，稼働プログラム５-１，代替プログラム５-２，状態監視部６，動作切換え部８，はそれぞれ仮想システム上における一つの実行プロセスとして動作する。これらの実行プロセスは同一のハードウェア（サーバ）上に実装し，内部のプロセス間通信によって相互接続しても良いし，異なるハードウェア上に実装し，Ethernetなどのネットワーク接続によって相互接続されていても良い。以降は，制御装置１がクラウドシステムなどの仮想環境上に構築されている場合を例に説明するが，実ハードウェア上に実装されている場合でも同様に実施可能である。  図３は、通信経路切換え部３の動作を説明する図である。図３では、図１に示す制御システムから説明簡略のため一部の構成要素を省略している。図３に示す制御装置１は、通信制御１２０として通信方式A（通信プロトコルA）によってネットワーク２Aに接続するための通信インタフェース１０A（通信IF１０-A）と，通信方式B（通信プロトコルB）によってネットワーク２Bに接続するための通信インタフェース１０B（通信IF１０-B）を有するものとする。
【００２９】
また，フィールド装置４Aは通信方式Aによりネットワーク２Aと接続し，同様にフィールド装置４Bおよびフィールド装置４Cは，それぞれ通信方式B，通信方式Cにより，ネットワーク２B，ネットワーク２Cに接続するものとする。
【００３０】
さらに，ネットワーク２Aとネットワーク２B間の通信は，通信方式Aと通信方式B間のプロトコル変換が可能なゲートウェイ１１（通信方式A⇔B）を介して行う。同様に，ネットワーク２Aとネットワーク２C間の通信は，通信方式Aと通信方式C間のプロトコル変換が可能なゲートウェイ１１（通信方式A⇔C）を介して行う。また，ネットワーク２Bとネットワーク２C間の通信は，ゲートウェイ１１（通信方式A⇔B）およびゲートウェイ１１（通信方式A⇔C）を介して行うようにネットワーク２が構成されているものとする。
【００３１】
動作切換え部８は，通信経路設定ＤＢ９から取得した情報に従い，制御装置１が，監視制御対象とするフィールド装置４Aに応じて，ゲートウェイ１１（通信方式A⇔B）およびゲートウェイ１１（通信方式A⇔C）の動作を設定する。ここで，動作を設定するための情報伝達は，コントロール専用に別の通信経路を使用しても良いし，ネットワーク２Aまたはネットワーク２Bを介して行っても良い。制御装置１が通信IF１０-Aによってフィールド装置４Aにアクセスする場合や通信IF１０−Bによってフィールド装置４Bにアクセスする場合には，通信経路切換え部３をどのゲートウェイ１１も経由しない経路に設定する。
【００３２】
一方，通信IF１０−Aによって，フィールド装置４Bもしくはフィールド装置４Cにアクセスする場合には，通信経路切換え部３をゲートウェイ１１（通信方式A⇔B）もしくはゲートウェイ１１（通信方式A⇔C）を経由する経路に設定する。また，通信IF１０-Bによってフィールド装置４Cにアクセスする場合には，通信経路切換え部３を，ゲートウェイ１１（通信方式A⇔B）を経由した後，ゲートウェイ１１（通信方式A⇔C）を経由するように設定する。ここで，通信経路切換え部３が扱う制御装置１，ネットワーク２，通信方式の種類や数は本例で示した設定に限定されるものではない。
【００３３】
図４は、本実施形態の制御システムにおいて動作切換え部８が，フィールド装置４を監視・制御するためのプログラムを，稼働プログラム５-１から代替プログラム５-２に切換えるための処理フローを示す図である。
【００３４】
まず，動作切換え部８は情報更新ＤＢ７からの情報を元に稼動プログラム５−１の切換えが必要か否かを判定する（ステップS４０１）。判定方法の例として，状態監視部６によって取得した稼働プログラム５-１の動作状態を利用する方法や，外部からのユーザ指示に従う方法などがある。
【００３５】
ステップS４０１においてプログラムの切換えが必要と判定された場合には，稼働プログラム５-１が対象としているフィールド装置４と代替プログラム５-２との間に接続可能なネットワーク２が準備できるかを判定する（ステップS４０２）。ここで，接続可能なネットワーク２が準備できない場合には，準備が完了するまで待機しても良いし，所定時間経過しても準備が完了できない場合には，ステップS４０７のエラー処理を実行しても良い。通信経路切換えの準備とは，例えばネットワーク２のプロトコル設定やルーティングテーブルの作成などである。
【００３６】
次に，代替プログラム５-２が実際に稼働できる状態に準備されているかを判定する（ステップS４０３）。ここで，代替プログラム５-２の準備が完了できない場合には，準備が完了するまで待機しても良いし，所定時間経過しても準備が完了できない場合には，ステップS４０７エラー処理を実行しても良い。代替プログラム５-２の準備とは具体的には，状態監視部６から情報更新ＤＢ７を介して取得した設定情報を元に，代替プログラム５-２の設定を稼働プラグラムと同等の設定を行い、稼動プログラム５−１と切替え可能に代替プログラム５-２を構築することである。
【００３７】
次に，稼働プログラム５-１が実行中のフィールド装置４に対する監視・制御を阻害しないタイミングで，稼働プログラム５-１から代替プログラム５-２に切換えることができるかを判定する。具体的には，前述の制御情報の更新周期に応じて，稼働プログラム５-１から制御情報を引継ぐタイミングを決定する。例えば，フィールド装置４の監視などリアルタイム性の低い処理を実行している場合には，即時プログラムの切換えを行い，高精度なリアルタイム処理中などは，一連のリアルタイム処理が完了するまで切換えのタイミングを延期する。また，フィードバック制御などを実行している場合には，稼働プログラム５-１からの制御情報を元に，稼働プログラム５-１と全く同じ処理を並列実行させておき，制御に影響を与えないタイミングでプログラムの実行を切換えるという方法でも良い。
【００３８】
ステップS４０５においてプログラムを同期させることが可能と判定された場合には，直ちに稼働プログラム５-１から代替プログラム５-２へ処理を切換えると同時に，通信経路切換え部３においても，制御装置１から対象のフィールド装置４への通信経路を切換える（ステップS４０５）。通信経路の切換え方法については前述の図３に示した方法などがある。
【００３９】
次に，ステップS４０４において，プログラムと通信経路の切換えが正常に実行されたか否かを判定する（ステップS４０６）。正常に切換えが完了しなかった場合にはエラー処理を実行する（ステップS４０７）。
【００４０】
図５は、ステップS４０６およびステップS４０７の処理の例について説明する図である。例えば，プログラムの動作にエラーが発生した場合，制御装置１とフィールド装置４間との通信にエラーが発生した場合，ステップS４０５におけるプログラムと通信経路の切換えが同時に実行されなかった場合は，正常にプログラムの切換えができなかったと判定する。この場合，それぞれのエラー原因の詳細を検証し，エラー原因に応じたエラー処理を実行する。
【００４１】
例えば，図５の表１段目に示すように，プログラムの設定情報にエラーが生じた場合には，設定情報を再度取得・更新したうえで処理を継続する。エラー処理（１）１４を実行したにも拘らず，エラーが修正できなかった場合には，エラー処理（２）１５に記載するように，プログラムの切換えを中止し，元の稼働プログラム５-１に戻す。
【００４２】
図５の表２段目に示すように，プログラムの制御情報にエラーが生じた場合には，制御情報を再取得・更新したうえで処理を継続する。エラー処理（１）１４を実行したにも拘らず，エラーが修正できなかった場合には，エラー処理（２）１５に記載するように，プログラムの切換えを中止し，元の稼働プログラム５-１に戻す。
【００４３】
図５の表３段目に示すように，プロトコル設定による通信エラーが生じた場合には，プロトコル設定を再取得・更新したうえで処理を継続する。エラー処理（１）１４を実行したにも拘らず，エラーが修正できなかった場合には，エラー処理（２）１５に記載するように，プログラムの切換えを中止し，元の稼働プログラム５-１に戻す。
【００４４】
図５の表４段目に示すように，経路切断による通信エラーが生じた場合には，経路の再探索，切換えをしたうえで処理を継続する。エラー処理（１）１４を実行したにも拘らず，エラーが修正できなかった場合には，エラー処理（２）１５に記載するように，プログラムの切換えを中止し，元の稼働プログラム５-１に戻す。
【００４５】
図５の表５段目に示すように，プログラムの切換えが遅延したことによって切換えタイミング不一致になった場合には，制御情報を再取得し，次周期から処理継続する。エラー処理（１）１４を実行したにも拘らず，エラーが修正できなかった場合には，エラー処理（２）１５に記載するように，エラー処理1をリトライする。
【００４６】
図５の表６段目に示すように，経路の切換えが遅延したことによって切換えタイミング不一致になった場合には，次周期から処理継続する。エラー処理（１）１４を実行したにも拘らず，エラーが修正できなかった場合には，エラー処理（２）１５に記載するように，エラー処理1をリトライする。
【００４７】
このように正常にプログラムの切換えができなかったと判定した場合，それぞれのエラー原因の詳細を検証し，エラー原因に応じたエラー処理を実行する。尚、図５に示す，エラー原因１２，詳細エラー原因１３，エラー処理（１）１４エラー処理（２）１５の項目や組合せは一例であり，対象とするフィールド装置４と監視・制御方法に応じて処理内容や組合せを変えても良い。
【００４８】
以上のように，本実施形態によれば制御システムにおいて，実行中の制御装置１に対する監視・制御に影響を与えることなく，稼働中のプログラムから待機中のプログラムへと切換えることが可能である。
【００４９】
また、本実施形態に記載のような、特にフィールドデバイスを様々な種類のネットワークを介して監視制御するような制御システムの場合、監視制御プログラムを切換えと、フィールドデバイスへの通信経路の切換えも考慮しなければいけない。本実施形態では、稼動プログラムがフィールドデバイスへのアクセスに使用する通信方式（通信プロトコル等）及び通信経路と、代替プログラムが使用可能な通信方式及び通信経路と、から代替プログラムがフィールドデバイスへのアクセスに必要な通信方式の変換路を設定するため、通信経路を適切に制御した監視制御プログラムの切換えが可能となる。
【００５０】
また、本実施形態では、ソフトウェアによってPLCやSCADAなど稼動プログラムを構築し、必要な場合に代替プログラムを切換え可能に構築するため、予め稼動系と同様のハードウェア構成で待機系を構築して運用させておく必要がなく、柔軟にプログラムの切換えが可能となる。
【００５１】
（第２実施形態）
図６は、第２実施形態における制御システムの構成の一例を示した図である。第２実施形態における制御システムは，制御装置２１とネットワーク２および通信経路切換え部３とで接続されたフィールド装置４から構成される。また、制御装置２１は、第１実施形態と同様に演算処理部１００と、記憶部１１０と、通信制御部１２０と、を有する。
【００５２】
本実施形態の演算処理部１００は、複数の制御プログラム２５と動作検証・切換え部２２とアップデート部２４を実行する。また、記憶部１１０には、情報更新ＤＢ２３と通信経路設定ＤＢ９が記憶される。
【００５３】
制御プログラム２５は，第１実施形態の制御装置２１における稼働プログラム５-１や代替プログラム５-２と同様に，フィールド装置４の監視や制御を実行するためのプログラムであり，例えばソフトウェアPLCやSCADAアプリケーションなどである。
【００５４】
動作検証・切換え部２２は，第１実施形態における状態監視部６と同様の機能を有する。すなわち，制御プログラム２５の動作状態と設定情報と制御情報を取得し，情報更新ＤＢ７に取得した動作状態を送信する機能を有する。加えて，動作検証・切換え部２２は，第１実施形態における動作切換え部８と同様の機能を有する。すなわち，情報更新ＤＢ７と通信経路設定ＤＢ９から情報を取得し，制御プログラム２５の動作方法を設定し，フィールド装置４を監視・制御するためのプログラムを切換えると同時に，通信経路切換え部３の通信経路を設定し，フィールド装置４にアクセスための通信経路を切換える機能を有する。加えて，動作検証・切換え部２２は，アップデート部２４，および，情報更新ＤＢ２３からの情報に従って，制御プログラム２５の動作方法を変更し，制御プログラム２５の処理が正常に実行されるか否かを検証する機能を有する。ここで，動作検証・切換え部２２の機能については，前述の第１実施形態における状態監視部６に相当する機能，動作切換え部８に相当する機能，および動作検証を行う機能にそれぞれ分割して実装しても良い。動作検証・切換え部２２の詳細な処理フローについては後述する。
【００５５】
情報更新ＤＢ２３は第１実施形態における情報更新ＤＢ３と同様の機能を有する。すなわち，動作検証・切換え部２２が取得した設定情報と制御情報とを保存し，新たな情報を取得した場合にはその情報へ更新される。
【００５６】
通信経路設定ＤＢ９は第１実施形態における通信経路設定ＤＢ９と同様の機能を有する。すなわち，所定の制御プログラム２５が監視・制御対象としているフィールド装置４のアドレス情報などを記憶する。そして、動作検証・切換え部２２は、通信経路設定ＤＢ９に記憶されるアドレス情報から他の制御プログラム２５が前述のフィールド装置４にアクセスするための通信経路および通信方式（通信プロトコル）を設定し，設定した通信経路や通信方式を用いて通信を切り換える。
【００５７】
アップデート部２４は，制御装置２１に搭載されたプログラムのバージョンチェックを実施し，追加プログラムを制御装置２１にインストールする機能を有する。ここで，プログラムとは制御プログラム２５の他，制御装置２１のファームウェア，デバイスドライバ，OS（オペレーティングシステム）や，ユーザインタフェースなどのアプリケーションを対象としても良い。また，追加プログラムとはバグフィックス用の修正プログラム，バージョンアップ用のアップデートプログラム，セキュリティパッチ，新機能追加のためのプログラム，ウィイルススキャンプログラムなどである。
【００５８】
通信経路切換え部３は，第１実施形態における通信経路切換え部３と同様の機能を有する。すなわち，動作検証・切換え部２２の指示に従って，制御装置２１とフィールド装置４を接続する通信経路や通信方式を切換える機能を有する。
【００５９】
フィールド装置４は，第１実施形態と同様に，制御装置２１からの指示に従ってコントロールされるセンサやアクチュエータなどであり，ネットワーク２を介して制御装置２１と接続される。ここで，実際に制御システムの扱うフィールド装置４の数や種類は本例に限定されるものではない。
【００６０】
制御装置２１は，第１実施形態と同様にPCやサーバ，コントローラなどのハードウェアで構成されていても良いし，クラウドシステムなどの仮想環境上に構成されていても良い。前者の場合，制御プログラム２５は，例えば図７に示すように，OS上で実行されるアプリケーションとして，それぞれ別個のハードウェア上に実装されていても良い。また，通信経路設定ＤＢ９，情報更新ＤＢ２３，動作検証・切換え部２２，アップデート部２４についても，各制御装置２１内に実装されていても良いし，図７の様に，それぞれ別個のハードウェア上に実装されネットワーク２０を介して接続されていても良い。ここで，ネットワーク２０は制御装置とフィールド装置とを接続するためのネットワーク２とは別種類のネットワークでも良いし，同種類のネットワークでも良い。
【００６１】
制御装置２１がクラウドシステムなどの仮想環境上に構築される場合には，制御プログラム２５，動作検証・切換え部２２，はそれぞれ仮想システム上における一つの実行プロセスとして動作する。これらの実行プロセスは同一のハードウェア（サーバ）上に実装し，内部のプロセス間通信によって相互接続しても良いし，異なるハードウェア上に実装し，Ethernetなどのネットワーク接続によって相互接続されていても良い。
【００６２】
図７は、制御装置２１が異なる実ハードウェア上に実装されている場合の例を示す図である。複数の制御プログラム２５は、それぞれ個別の制御装置２１Ａ〜Ｃ上に実装される。制御装置２１Ａ〜Ｃは、ネットワーク２、および、ネットワーク２０を介して接続される。また、動作検証・切換え部２２、および、アップデート部２４、それぞれ別のハードウェア上の演算処理装置によって実行され、情報更新ＤＢ２３、および、通信経路設定ＤＢ９もそれぞれ別のハードウェア上の記憶部に記憶される。そしてこれらは、ネットワーク２０を介して接続される。本図に示すように実ハードウェア上に実装されている場合でも同様に実施可能である。尚、以降は図７に示すような例ではなく、制御装置２１がクラウドシステムなどの仮想環境上に構築されている場合を例に説明する。
【００６３】
図８は、本実施形態の制御システムにおいて動作検証・切換え部２２が，フィールド装置４を監視・制御するためのプログラムの動作検証および切換えを実行するための処理フローを示す図である。
【００６４】
まず，動作検証・切換え部２２はアップデート部２４からの情報を元に，フィールド装置４を監視・制御しているプログラムの更新が必要か否かを判定する（ステップS８０１）。例えば，アップデート部２４は，対象とするプログラムのバージョン更新用プログラムやセキュリティパッチなどが存在するか否かを判定する。ここで，アップデート部２４は，例えばインターネットなどの外部ネットワークと接続し，アップデート情報があるか否かを自身で判断しても良いし，外部からの命令入力や情報伝達に従っても良い。また，プログラムのアップデートではなくウィルスやマルウェアなどセキュリティ上の脅威をチェック（セキュリティチェック）する必要があるか否かを判定しても良い。
【００６５】
次に，ステップS８０１において，プログラムのアップデート，またはセキュリティチェックが必要と判定された場合には，動作検証・切換え部２２は，アップデート対象の制御プログラム２５Aと同じ実行環境の制御プログラム２５Bを代替プログラムとして準備する（ステップS８０２）。代替プログラムの準備方法として，例えば，第一実施形態における代替プログラム５-２の準備と同様の手順（ステップS４０３）がある。すなわち，情報更新ＤＢ２３に記憶する情報をもとに，稼働中の制御プログラム２５Aの設定情報と制御情報から，代替用の制御プログラム２５Bを準備する。ただし，制御情報については必須ではなく，制御プログラム２５Aと制御プログラム２５Bの動作実行環境が同一になる状態に設定できれば良い。
【００６６】
次に，代替プログラムである制御プログラム２５Bのアップデートを実行する（ステップS８０３）。例えば，アップデート部２４からバージョン更新用プログラムやセキュリティパッチなどを取得しインストールを実行する。ここで，制御プログラム２５のアップデートが目的ではなく，セキュリティチェックを目的とする場合には，必ずしも更新用プログラムなどを実行する必要はなく，代わりにウィルススキャン用のプログラムなどを実行する。
【００６７】
次に，ステップS８０３においてアップデートした制御プログラム２５Bが正常に動作可能であるか否か，もしくは，セキュリティチェックにおいて問題が検出されたか否かを検証する（ステップS８０４）。例えば，制御プログラム２５Aがフィールド装置４を監視・制御するプログラムである場合には，アップデート後の制御プログラム２５Bが，アップデート前の制御プログラム２５Aと同様に正常に動作可能か否かを検証する。検証の方法としては，例えばフィールド装置４を監視制御するためのシミュレータや，実際に検証用のフィールド装置４を利用しても良い。セキュリティチェックが目的の場合には，制御プログラム２５Aの動作環境を複製した制御プログラム２５B上でセキュリティスキャンを実行し，プログラムの正常動作を妨げるウィルスやマルウェアの有無を検証しても良い。
【００６８】
ステップS８０４において，アップデートしたプログラムの動作に異常がないと判定された場合には，フィールド装置４の監視制御のためのプログラムを，制御プログラム２５Aから制御プログラム２５Bに切換える準備を行う（ステップS８０５）。例えば，第１実施形態におけるステップS４０２，ステップS４０３，ステップS４０４と同様の処理を実行する。ただし，ステップS４０２と同様に，制御装置２１の通信経路切換え準備を行った後は，稼働中の制御プログラム２５Aの制御情報を代替用の制御プログラム２５Bに引き継ぎ，ステップ４０４の処理と同様に，制御周期のタイミングを合わせ，制御装置２１の監視制御に影響を与えることなくプログラムを切換えられるタイミングを合わせる。
【００６９】
ここで，ステップS８０４において，アップデートしたプログラムの動作が異常と判定された場合には，ステップS８０８のエラー処理を実行する。ただし，ステップS８０８のエラー処理ではなく，ステップS８０２における代替プログラムの準備からやり直しても良い。また，セキュリティチェックが目的の場合には，ステップS８０４において，異常が検出されなければ，セキュリティチェックは完了とし処理を終了させる。
【００７０】
ステップS８０５において，制御プログラム２５Aと制御プログラム２５Bを同期して切換えることが可能と判定した場合には，動作検証・切換え部は，直ちに稼働するプログラムの切換えを実行すると同時に，通信経路切換え部３に指示し，制御装置２１から対象のフィールド装置４への通信経路と通信方式を切換える（ステップS８０６）。
【００７１】
次に，ステップ８０６において，プログラムと通信経路の切換えが正常に実行されたか否かを判定する（ステップS８０７）。正常に切換えが完了しなかった場合にはエラー処理を実行する（ステップS８０８）。エラー処理の例としては，第１実施形態における図５に示したエラー処理などがある。その他，アップデート用プログラムの再取得や再更新，ウィイルス駆除などの処理を実行しても良い。
【００７２】
以上のように，本実施形態によれば制御システムにおいて，制御装置２１が実行中のフィールド装置４に対する監視制御に影響を与えることなく，稼働中のプログラムをアップデートすることや，セキュリティパッチを適用することが可能である。また，稼働中のプログラムと同じ実行環境を代替プログラムとして複製し，制御システムの動作に影響を与えることなくウィルススキャンなどの負荷処理を実行することが可能である。
【００７３】
また、本実施形態では、事前に稼働中のシステムとは別個に構築した代替システム上でシステムアップデートなどの動作確認を行ったうえで、切替えるため、制御システムの運用への影響を与えることなく代替システムに切換えることが可能となる。
【００７４】
（第３実施形態）
図９は、第３実施形態における制御システムを説明する図である。第３実施形態における制御システムは，制御装置３１とネットワーク２および通信経路切換え部３とで接続されたフィールド装置４から構成される。
【００７５】
また、制御装置３１は、第１，２実施形態と同様に演算処理部１００と、記憶部１１０と、通信制御部１２０と、を有する。本実施形態の演算処理部１００は、一つ以上のオペレーティングシステム３０（以降，OS３０と略す）と複数の制御プログラム３５と動作検証・切換え部３２と状態監視部３６とアップデート部３４を実行する。また、記憶部１１０には、情報更新ＤＢ３３と通信経路設定ＤＢ９とが記憶される。
【００７６】
OS３０は制御プログラム３５を動作させるための実行環境であり，制御プログラム３５に応じて異なる種類で複数実装されていても良いし，一つのOS３０が全ての制御プログラム３５を実行しても良い。本実施形態では複数のOS３０から構成されるものとして説明する。OS３０は実際にフィールド装置４の監視制御の実行に関わっている稼働OS３０-１と，待機状態にある代替OS３０-２とから構成される。
【００７７】
制御プログラム３５は，第１実施形態の制御装置２１や第２実施形態の制御装置３１と同様に，フィールド装置４の監視や制御を実行するためのプログラムであり，例えばソフトウェアPLCやSCADAアプリケーションなどである。制御プログラム３５は実際にフィールド装置４の監視制御を実行している稼働中の制御プログラム３５（稼働プログラム３５-１）と，待機状態にある制御プログラム（代替プログラム３５-２）とに区別される。
【００７８】
動作検証・切換え部３２は第１実施形態における動作切換え部８と同様の機能を有する。すなわち，情報更新ＤＢ３３と通信経路設定ＤＢ９に記憶する情報を元に，制御プログラム３５の動作方法を設定し，フィールド装置４を監視制御するためのプログラムを切換えると同時に，通信経路切換え部３の通信経路を設定し，フィールド装置４にアクセスための通信経路と通信方式を切換える機能を有する。さらに，動作検証・切換え部３２は，情報更新ＤＢ３３に記憶する情報に従って，制御プログラム３５の動作方法を変更し，制御プログラム３５の処理が正常に実行されるか否かを検証する機能を有する。ここで，前述の動作切換え部８に相当する機能や動作検証を行う機能はそれぞれ別個に実装しても良い。
【００７９】
状態監視部３６は，第１実施形態における状態監視部６と同様の機能を有する。すなわち，複数の稼働プログラム３５-１の動作状態と設定情報と制御情報を取得し，情報更新ＤＢ３３に取得した情報を送信する機能を有する。なお，状態監視部３６の機能は動作検証・切換え部３２が有していても良い。
【００８０】
情報更新ＤＢ３３は第１実施形態における情報更新ＤＢ７や第２実施形態における情報更新ＤＢ２３と同様の機能を有し，アップデート部３４よりOS３０もしくは制御プログラム３５の更新に関する情報を取得する機能を有する。通信経路設定ＤＢ９は第１実施形態における通信経路設定ＤＢ９と同様の機能を有する。
【００８１】
アップデート部３４は，第２実施形態におけるアップデート部２４と同様の機能を有する。すなわち，制御装置３１に搭載された各種OS３０や各種プログラムのバージョンチェックを実施し，追加プログラムを制御装置３１にインストールする機能を有する。ここで，アップデート部３４はプログラムの更新処理を情報更新ＤＢ３３を介して実行しても良いし，直接実行しても良い。
【００８２】
通信経路切換え部３は第１実施形態もしくは第２実施形態における通信経路切換え部３と同様の機能を有する。すなわち，動作検証・切換え部３２の指示に従って，制御装置３１とフィールド装置４を接続する通信経路や通信方式を切換える機能を有する。
【００８３】
フィールド装置４は，第１実施形態および第２実施形態と同様に，制御装置３１からの指示に従ってコントロールされるセンサやアクチュエータなどであり，ネットワーク２を介して制御装置３１と接続される。ここで，実際に制御システムの扱うフィールド装置４の数や種類は本例に限定されるものではない。
【００８４】
制御装置３１は，第１実施形態および第２実施形態と同様に，PCやサーバ，コントローラなどのハードウェアで構成されていても良いし，クラウドシステムなどの仮想環境上に構成されていても良い。前者の場合，制御プログラム３５は，例えば図１０に示すように，OS３０上で実行されるアプリケーションとして，それぞれ別個のハードウェア上に実装されていても良い。また，通信経路設定ＤＢ９，情報更新ＤＢ３３，動作検証・切換え部３２，アップデート部３４，状態監視部３６についても，各制御装置３１内に実装されていても良いし，それぞれ別個のハードウェア上に実装されネットワーク２０を介して接続されていても良いし，図１０に示すように制御装置管理部３７として同一のハードウェアもしくはソフトウェア環境上に構築されていても良い。ここで，ネットワーク２０は制御装置とフィールド装置とを接続するためのネットワーク２とは別種類のネットワークでも良いし，同種類のネットワークでも良い。
【００８５】
ここで，各制御装置３１に搭載されるOS３０やプログラムは同じ種類や数で構成されていても良いし，図１０に示すように，異なる構成であっても良い。
【００８６】
図１０は、各プログラムが異なる実ハードウェア上に実装されている場合の例を示す図である。制御装置３１Aには代替OS３０-２と代替プログラム３５-２および稼働OS３０-１と稼働プログラム３５-１が搭載され，制御装置３１Bには一つの稼働OS３０-１上に二つの稼働プログラム３５-１が搭載され，制御装置３１Cには稼働OS３０-１と稼働プログラム３５-１が２組搭載されており、これらはネットワーク２０を介して接続される。また、制御装置３１Ａ〜Ｃを、ネットワーク２０経由で管理する制御装置管理部３７は、通信経路設定ＤＢ９と情報更新ＤＢ３３を記憶し、アップデート部３４と、状態監視部３６と、動作検証・切換え部３２を実行する。本図の例のように構成することで、異なるハードウェア上に実装される制御プログラムに対しても柔軟にプログラム切換えを行うことができる。なお，本例で示す以外の構成であっても本発明は有効である。
【００８７】
図１１は、本実施形態の制御システムにおいて動作検証・切換え部３２が，フィールド装置４を監視制御するためのプログラムの動作検証および切換えを実行するための処理フローである。なお，本実施形態の動作検証・切換え部３２は，図４に示した第１実施形態における動作切換え部８の処理フローや，図８に示した第２実施形態における動作検証・切換え部２２の処理フローと同様の処理フローを実行することもできる。
【００８８】
まず，動作検証・切換え部３２は，状態監視部３６からの情報などを利用し，稼働中のプログラムに異常が発生していないかを判定する（ステップS１１０１）。ステップS１１０１において異常を検出した場合には，異常が発生した稼働プログラム３５-１の代わりに稼働させる代替プログラム３５-２の準備，および，プログラムと通信経路を切換えるための準備を実行する（ステップS１１０２）。例えば，図４に示したステップS４０３およびステップS４０４の処理や，図８に示したステップS８０２〜ステップS８０５における処理と同様の処理方法がある。
【００８９】
次に，ステップS１１０２において代替プログラム５-２への切換え準備が完了した場合には，異常の発生した稼働プログラム３５-１から代替プログラム３５-２への切換えを実行する（ステップS１１０３）。ここで，稼働プログラム３５-１の制御情報の引き継ぎと制御タイミングを同期させるための処理を実行しても良いし，異常の発生により信頼性が低下した稼働プログラム３５-１の制御情報は使用せず，直ちに新規に代替プログラム３５-２の制御処理を立ち上げても良い。その他，例えば，タイムスタンプを加えて時系列に保存してある制御情報から，異常が発生する前の時点の情報を取得し，代替プログラム３５-１へ反映させても良い。また，図４におけるステップS４０５，もしくは，図８におけるステップS８０６と同様の処理を実行しても良い。
【００９０】
次に，ステップS１１０３においてプログラムと通信経路の切換えが正常に完了したか否かを判定する（ステップS１１０４）。正常に完了した場合には，異常が発生した元の稼働プログラム３５-１を修正し，再度プログラムと通信経路の切換えを実行して復帰させる必要があるか否かを判定する（ステップS１１０５）。一方，ステップS１１０３の処理が正常に完了しなかった場合には，エラー処理を実行する（ステップS１１０７）。エラー処理としては例えば，図４に示したステップS４０７，もしくは，図８に示したステップS８０８と同様の処理を実行する。
【００９１】
ステップS１１０５においてプログラムの復帰が必要と判定された場合には，異常が発生した元の稼働プログラム３５-１の修正やアップデートを実行する（ステップS１１０６）。例えば，アップデート部３４から更新プログラムやセキュリティパッチを取得し，異常の発生したプログラムに適用したうえで動作検証を実行する。
【００９２】
正常にプログラム修正やアップデートが完了した場合には，元の稼働プログラム３５-１に動作を戻すための準備を実行する。本処理は，切換え元および切換え先のプログラムが入れ替わっているものの，処理方法についてはステップS１１０２と全く同様である。以降は，同様にステップS１１０３の処理を実行する。一方，ステップS１１０６において正常にプログラム修正やアップデートが完了しなかった場合には，ステップS１１０７のエラー処理を実行する。
【００９３】
以上のように，本実施形態によれば制御システムにおいて，フィールド装置を監視制御するための複数のOSやプログラムに対して，異常発生時のバックアップを１対１ではなく，N対１で準備することができるため，制御システム全体の処理リソースを節約することが可能となる。また，一部のOSやプログラムに異常が発生した場合には，制御システムの可用性に影響を与えることなく，一時的に代替OSや代替プログラムに切換えることで，異常を修正し元のシステム状態に復旧させることが可能となる。
【００９４】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【００９５】
また、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【００９６】
１，２１，３１  制御装置
２，２０ ネットワーク  
３  通信経路切換え部
４  フィールド装置
１００  演算処理部
１１０  記憶部
１２０  通信制御部
５，２５，３５  制御プログラム
５‐１，３５-１  稼働プログラム
５-２，３５-２  代替プログラム
６，３６    状態監視部
７，２３，３３    情報更新ＤＢ
８    動作切換え部
９    通信経路設定ＤＢ
１０  通信インタフェース（通信IF）
１１  ゲートウェイ
１２  エラー原因
１３  詳細エラー原因
１４  エラー処理（１）
１５  エラー処理（２）
２２，３２  動作検証・切換え部
２４，３４  アップデート部
３７  制御装置管理部
【図１】
2015037116.tif 000003
【図２】
2015037116.tif 000004
【図３】
2015037116.tif 000005
【図４】
2015037116.tif 000006
【図５】
2015037116.tif 000007
【図６】
2015037116.tif 000008
【図７】
2015037116.tif 000009
【図８】
2015037116.tif 000010
【図９】
2015037116.tif 000011
【図１０】
2015037116.tif 000012
【図１１】
2015037116.tif 000013
【国際調査報告】
2015037116.tif 000014
2015037116.tif 000015