(57)【要約】【課題】制御装置が二重化された制御システムにおいて、稼働系／待機系の切り替えに要する時間を短縮する。【解決手段】稼働系および待機系の各制御装置と、稼働系の制御装置とＩＯネットワークとの通信を仲介するＩＯマスタの各々が、所定の異常に基づく異常検知および異常検知に基づく稼働／待機切り替えのために周期的に実行する各処理の最初の実行タイミングに時間差を設ける。【選択図】図３
2016099634.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された機器から監視データを収集し、該監視データに基づいて制御を行う制御システムにおいて、
一方は稼働系、他方は待機系となる第１および第２の制御装置と、
前記ネットワークに接続されているとともに、前記第１の制御装置に接続されている第１の中継装置と、
前記ネットワークに接続されているとともに、前記第２の制御装置に接続されている第２の中継装置と、
前記第１の制御装置と前記第２の制御装置の通信を仲介する通信手段と、を有し、
前記第１および第２の中継装置の各々は、
所定の異常の発生を通知する異常通知データを自装置の接続先の制御装置へ送信する異常通知処理を、当該制御装置が稼働系である場合に周期的に実行する第１の処理手段、を有し、
前記第１および第２の制御装置の各々は、
前記第１の処理手段が送信した前記異常通知データを受信し、稼働／待機の切り替えを指示する切り替え通知データを前記通信手段を介して他方の制御装置へ送信するとともに、自装置を待機系に切り替える切り替え通知処理を、自装置が稼働系である場合に周期的に実行する第２の処理手段と、
前記第２の処理手段が送信した前記切り替え通知データを受信し、自装置を稼働系に切り替える切り替え検知処理を、自装置が待機系である場合に周期的に実行する第３の処理手段と、を有し、
前記異常通知処理、前記切り替え通知処理および前記切り替え検知処理のうちの少なくとも１つは、最初の実行タイミングがその他の処理の最初の実行タイミングと異なる
ことを特徴とする制御システム。
【請求項２】
前記第１および第２の中継装置のうち稼働系の制御装置に接続されている方は、前記異常通知処理の実行周期を自装置の処理負荷に応じて調整する
ことを特徴とする請求項１に記載の制御システム。
【請求項３】
前記第１および第２の制御装置のうち稼働系となっている方は、前記切り替え通知処理の実行周期を自装置の処理負荷に応じて調整する
ことを特徴とする請求項１または請求項２に記載の制御システム。
【請求項４】
前記第１および第２の制御装置のうち稼働系となっている方は、接続先の中継装置における前記異常通知処理の最初の実行タイミングと自装置における前記切り替え通知処理の最初の実行タイミングとの時間差を、当該中継装置との間の通信の遅延に応じて決定する
ことを特徴とする請求項１〜３の何れか１項に記載の制御システム。
【請求項５】
前記第１および第２の制御装置のうち待機系となっている方は、稼働系の制御装置における前記切り替え通知処理の最初の実行タイミングと自装置における前記切り替え検知処理の最初の実行タイミングとの時間差を、前記通信手段を介した通信の遅延に応じて決定する
ことを特徴とする請求項１〜４の何れか１項に記載の制御システム。
【請求項６】
一方が稼働系となり他方が待機系となる第１および第２の制御装置の一方に接続されるとともに、監視データを送信する機器が接続されたネットワークに接続される中継装置において、
所定の異常の発生を監視する異常監視処理を、接続先の制御装置が稼働系である場合に周期的に実行する異常監視手段と、
直近に実行された前記異常監視処理において所定の異常の発生を検知し、異常の発生を通知する異常通知データを自装置の接続先の制御装置に送信する異常通知処理を、当該制御装置が稼働系である場合に周期的に実行する異常通知手段と、を有し、
前記異常監視処理の最初の実行タイミングと前記異常通知処理の最初の実行タイミングに時間差が設けられている
ことを特徴とする中継装置。
【請求項７】
一方が稼働系となって制御を行い、他方が待機系となる２つの制御装置を含む制御システムにおける制御装置において、
自装置とネットワークとのデータ通信を仲介する中継装置から所定の異常の発生を通知する異常通知データを受信し、稼働／待機の切り替えを指示する切り替え通知データを他方の制御装置へ送信するとともに、自装置を待機系に切り替える切り替え通知処理を、自装置が稼働系となっている場合に周期的に実行する切り替え通知手段と、
前記切り替え通知手段が送信した前記切り替え通知データを受信し、自装置を稼働系に切り替える切り替え検知処理を、自装置が待機系となっている場合に周期的に実行する切り替え検知手段と、を有し、
稼働系における前記切り替え通知処理の最初の実行タイミングと待機系における前記切り替え検知処理の最初の実行タイミングに時間差が設けられている
ことを特徴とする制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御対象機器の作動制御を行う制御装置を含む制御システムに関し、特に、二重化された制御装置を含む制御システムに関する。
【背景技術】
【０００２】
工場や各種プラント等の産業施設においては、各種操業を制御するために制御システムと呼ばれる通信システムが構築されることが多い。制御システムには、産業施設内に設置されたセンサからの監視データの収集やその収集結果に応じて電動機等の駆動制御を行う制御装置が含まれている。このような制御装置としては、ＤＣＳ（Distributed
Control System：分散型制御システム或いは分散型制御装置）やプログラマブルロジックコントローラ（以下、ＰＬＣ）が用いられる。一般的なＦＡ（Factory Automation）システムでは制御装置としてＰＬＣが用いられることが多く、高信頼性を要求されるプラント設備では制御装置としてＤＣＳが用いられることが多い。ＤＣＳはＰＬＣに比較して信頼性が高いからである。上記センサのように制御装置による監視データの収集対象となる装置や電動機などの制御対象装置（以下、両者をまとめて「ＩＯスレーブ装置」と呼ぶ）は、ＩＯネットワークと呼ばれるネットワーク（或いはシリアルバス）に接続される。
【０００３】
この種の制御システムでは、制御装置等の故障に起因する操業停止を回避するために、制御装置の二重化および監視データのデータ伝送経路の二重化が行われることが一般的である。制御装置の二重化とは、２台の制御装置を設け、その一方を稼働系、他方を待機系として動作させることを言う。これら２台の制御装置の各々は、監視データを収集し、収集した監視データ（或いは収集した監視データと過去の演算結果）を用いて機器制御のための所定の演算を行う。稼働系の制御装置は当該演算結果に基づく制御を行い、待機系の制御装置は、稼働系の制御装置の停止に備える。そして、待機系の制御装置は、稼働系が停止するとき（或いは停止したとき）には、稼働系として動作し、機器制御を継続する。ここで、稼働系の制御装置の停止の具体例としては、何らかの故障や不具合の発生に起因する予期せぬ停止や、保守メンテナンス等による予め計画された停止などが考えられる。待機系の制御装置はこれら２種類の停止の両方に備える。データ伝送経路の二重化とは、例えばＩＯスレーブ装置から二重化された制御装置の一方へ至るデータ伝送経路と、他方へ至るデータ伝送経路とを各々別個に設けることを言う。
【０００４】
図８は、従来の制御システム２の構成例を示す図である。制御システム２は、制御装置１１０Ａおよび制御装置１１０Ｂの２台の制御装置と、ＩＯマスタ局２１＿１およびＩＯマスタ局２１＿２の２つのＩＯマスタ局とを有している。ＩＯマスタ局２１＿１およびＩＯマスタ局２１＿２は、システムバス６０Ａを介して制御装置１１０Ａに接続されている。また、ＩＯマスタ局２１＿１およびＩＯマスタ局２１＿２は、システムバス６０Ｂを介して制御装置１１０Ｂに接続されている。ＩＯマスタ局２１＿１には、ＩＯネットワーク４０＿１に接続されている一群の装置（すなわち、ＩＯマスタ２１０＿１ＡおよびＩＯマスタ２１０＿１ＢとＩＯスレーブ装置５０＿１およびＩＯスレーブ装置５０＿２）が含まれている。ＩＯマスタ局２１＿２には、ＩＯネットワーク４０＿２に接続されている一群の装置（すなわち、ＩＯマスタ２１０＿２ＡおよびＩＯマスタ２１０＿２ＢとＩＯスレーブ装置５０＿３およびＩＯスレーブ装置５０＿４）が含まれている。ＩＯマスタ２１０＿１ＡおよびＩＯマスタ２１０＿２Ａはシステムバス６０Ａを介して制御装置１１０Ａに接続されている。ＩＯマスタ２１０＿１ＢおよびＩＯマスタ２１０＿２Ｂはシステムバス６０Ｂを介して制御装置１１０Ｂに接続されている。図８に示す制御システム２では、制御装置１１０Ａと制御装置１１０Ｂのうちの一方が稼働系となり、他方は待機系となって稼働系の停止に備える。ＩＯマスタ２１０＿１ＡおよびＩＯマスタ２１０＿２Ａと、ＩＯマスタ２１０＿１ＢおよびＩＯマスタ２１０＿２Ｂについても、一方が稼働系となり、他方は待機系となる。以下、制御装置１１０Ａ、ＩＯマスタ２１０＿１ＡおよびＩＯマスタ２１０＿２Ａが稼働系となっている場合を例にとって制御システム２の動作を説明する。
【０００５】
ＩＯマスタ２１０＿１ＡおよびＩＯマスタ２１０＿２Ａの各々は、故障監視処理および故障通知処理を予め定められた周期で実行する。制御装置１１０Ａは、故障検知処理および切り替え通知処理を予め定められた周期で実行し、制御装置１１０Ｂは、切り替え検知処理を予め定められた周期で実行する。制御システム２においては、上記各処理の最初の実行タイミングは全て揃っている。上記各処理の内容は次の通りである。
【０００６】
まず、ＩＯマスタ２１０＿１ＡおよびＩＯマスタ２１０＿２Ａが実行する故障監視処理および故障通知処理について説明する。故障監視処理は、周期１０ｍｓで実行される処理である。この故障監視処理では、ＩＯマスタ２１０＿１ＡはＩＯネットワーク４０＿１との通信の状態（途絶の有無）を監視し、ＩＯマスタ２１０＿２ＡはＩＯネットワーク４０＿２との通信の状態を監視する。ＩＯマスタ２１０＿１Ａは、故障監視処理により通信の途絶を３回連続して検知すると、故障発生と判定する。ＩＯマスタ２１０＿２Ａも同様に、故障監視処理によりＩＯネットワーク４０＿２との通信の途絶を３回連続して検知すると、故障発生と判定する。なお、通信の途絶を３回連続で検知して初めて故障発生と判定するのは、たまたま発生した途絶により故障発生と誤判定されるのを回避するためである。故障通知処理は周期３０ｍｓで実行される処理である。この故障通知処理では、ＩＯマスタ２１０＿１ＡおよびＩＯマスタ２１０＿２Ａの各々は、当該処理に先立って実行された故障監視処理において故障発生と判定されていると、故障発生を通知する故障通知データを生成し、システムバス６０Ａを介して制御装置１１０Ａに送信する。
【０００７】
次に、制御装置１１０Ａが実行する故障検知処理および切り替え通知処理と、制御装置１１０Ｂが実行する切り替え検知処理について説明する。故障検知処理は、周期１０ｍｓで実行される処理である。この故障検知処理では、制御装置１１０Ａは、故障通知データの受信により故障発生を検知する。切り替え通知処理は周期３０ｍｓで実行される処理である。この切り替え通知処理では、制御装置１１０Ａは、当該処理に先立って実行された故障検知処理において故障発生が検知された場合に、稼働系／待機系の切り替えを指示する切り替え通知データを生成し、ステータス交換バス３０を介して他方の制御装置に送信し、自装置を稼働系から待機系に切り替える。切り替え検知処理は、周期３０ｍｓで実行される処理である。この切り替え検知処理では、制御装置１１０Ｂは、切り替え通知データの受信を検知し、自装置を待機系から稼働系に切り替える。
【０００８】
図９は、ＩＯマスタ２１０＿１ＡとＩＯネットワーク４０＿１との通信の途絶により、稼働系／待機系の切り替えが発生する場合の動作の流れを示したタイムチャートである。図９に示す例では、時刻Ｔ０´において、ＩＯマスタ２１０＿１ＡとＩＯネットワーク４０＿１との通信が途絶し、以降、その途絶状態が継続する。ＩＯマスタ２１０＿１Ａは、時刻Ｔ１´（途絶の発生から３回目の故障監視処理の実行タイミング）において故障の発生を検出する。ＩＯマスタ２１０＿１Ａは、時刻Ｔ１´から３０ｍｓ経過のタイミングＴ２´において故障通知データを生成し制御装置１１０Ａに送信する。時刻Ｔ１´においても故障通知処理は実行されるが、この時点では故障検出されないからである。制御装置１１０Ａは、時刻Ｔ２´から１０ｍｓ経過した時刻Ｔ３´において故障通知データの受信を検知し、故障発生を検知する。制御装置１１０Ａは、時刻Ｔ３´から３０ｍｓ経過後の時刻Ｔ４´において切り替え通知データを生成して制御装置１１０Ｂに送信するとともに、自装置を稼働系から待機系に切り替える。制御装置１１０Ｂは、時刻Ｔ４´から３０ｍｓ経過した時刻Ｔ５´において切り替え通知データの受信を検知し、自装置を待機系から稼働系に切り替える。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１２−２５６１６４号公報
【特許文献２】特開２０１０−１９８２７４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
近年では、生産性を向上させるために、故障の発生の検出から稼働系／待機系の切り替えまでに要する時間を短縮したいといったニーズが高まっている。しかし、図９に示す例では、ＩＯマスタ２１０＿１Ａが故障発生と判定（時刻Ｔ１´）してから、待機系／稼働系の切り換えが発生（時刻Ｔ５´）するまでに１００ｍｓの時間を要しており、このようなニーズに応えることはできない。
【００１１】
本発明は以上に説明した課題に鑑みて為されたものであり、制御装置が二重化された制御システムにおいて、稼働系／待機系の切り替えに要する時間を短縮することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するために本発明は、ネットワークに接続された機器から監視データを収集し、該監視データに基づいて制御を行う制御システムとして、一方は稼働系、他方は待機系となる第１および第の制御装置と、第１の制御装置と上記ネットワークとに接続された第１の中継装置と、第２の制御装置と上記ネットワークとに接続された第２の中継装置と、第１および第２の制御装置間の通信を仲介する通信手段とを有する制御システムを提供する。第１および第２の中継装置の各々は、所定の異常の発生を検知した場合に異常発生を通知する異常通知データを自装置の接続先の制御装置に送信する異常通知処理を、自装置の接続先の制御装置が稼働系である場合に周期的に実行する第１の処理手段、を有する。第１および第２の制御装置の各々は、以下の第２および第３の処理手段を有する。第２の処理手段は、第１の処理手段が送信した異常通知データを受信し、稼働／待機の切り替えを指示する切り替え通知データを通信手段を介して他方の制御装置へ送信するとともに、自装置を待機系に切り替える切り替え通知処理を、自装置が稼働系である場合に周期的に実行する。第３の処理手段は、第２の処理手段が送信した切り替え通知データを受信し、自装置を稼働系に切り替える切り替え検知処理を、自装置が待機系である場合に周期的に実行する。そして、異常通知処理、切り替え通知処理および切り替え検知処理のうちの少なくとも１つは、最初の実行タイミングがその他の処理の最初の実行タイミングと異なり、この点に本制御システムの特徴がある。
【００１３】
例えば、異常通知処理、切り替え通知処理および切り替え検知処理の各々の最初に実行タイミングに時間差があれば、切り替え通知処理ではその直近に先立って実行された異常通知処理により送信された異常通知データの受信が検知され、切り替え検知処理では、その直近に先立って実行された切り替え通知処理により送信された切り替え通知データが検知され、稼働系／待機系の切り替えに要する時間を短縮することができる。本発明によれば、特許文献１に開示された技術（恒常的に稼働系の制御装置から待機系の制御装置に情報を送信し、当該情報の送信が途絶すると稼働系／待機系の切り替えを始めるという技術）よりも、切り替えに要する時間を短縮することができる。さらに、本発明によれば、特許文献２に開示された技術（切り替えリクエストを稼働系の制御装置と待機系の制御装置の両者に送信するという技術）よりも、切り替えに要する時間を短縮することができる。よって、本発明は、特許文献１に開示の技術とは異なり、特許文献２に開示の技術とも異なる。
【００１４】
より好ましい態様においては、前記第１および第２の中継装置のうち稼働系の制御装置に接続されている方は、前記異常通知処理の実行周期を自装置の処理負荷に応じて調整する。この態様によれば、稼働系の制御装置に接続されている中継装置は、自装置の処理負荷に応じて異常通知処理の実行周期を調整する（例えば、処理負荷が高いほど異常通知処理の実行周期を長くする等）ため、異常通知処理の周期実行による処理負荷により、当該中継装置本来の処理であるデータ中継処理に支障が生じることを回避することができる。同様に、稼働系の制御装置における切り替え通知処理の実行周期を当該制御装置の処理負荷に応じて調整するようにしてもよい。
【００１５】
さらに好ましい態様においては、第１および第２の制御装置のうち稼働系となっている方は、接続先の中継装置における異常通知処理の最初の実行タイミングと自装置における切り替え通知処理の最初の実行タイミングとの時間差を、当該中継装置との間のデータ通信の遅延に応じて決定する。このような態様によれば、切り替え通知処理において、その直近に実行された異常通知処理により送信された異常通知データの受信を確実に検知し、当該異常通知データが次の切り替え通知処理の実行タイミングまで検知されないといった事態の発生を回避することができる。同様に、稼働系の制御装置における切り替え通知処理の最初の実行タイミングと待機系における切り替え検知処理の最初の実行タイミングとの時間差を、通信手段を介した通信の遅延に応じて待機系の制御装置に決定させるようにしてもよい。
【００１６】
また上記課題を解決するために本発明は、一方が稼働系となり他方が待機系となる第１および第２の制御装置の一方に接続されるとともに、監視データを送信する機器が接続されたネットワークに接続される中継装置として、以下の異常監視手段と異常通知手段とを有する中継装置を提供する。異常監視手段は、所定の異常の発生を監視する異常監視処理を、接続先の制御装置が稼働系である場合に周期的に実行する。異常通知手段は、直近に実行された前記異常監視処理において所定の異常の発生が検知された場合に異常の発生を通知する異常通知データを自装置の接続先の制御装置に送信する異常通知処理を、当該制御装置が稼働系である場合に周期的に実行する。そして、異常監視処理の最初の実行タイミングと異常通知処理の最初の実行タイミングとには時間差が設けられている。このような中継装置を用いて制御システムを構築すれば、稼働系／待機系の切り替えに要する時間を短くすることができる。
【００１７】
また上記課題を解決するために本発明は、一方が稼働系となって制御を行い、他方が待機系となる２つの制御装置を含む制御システムにおける制御装置として、以下の切り替え通知手段と、切り替え検知手段とを有する制御装置を提供する。切り替え通知手段は、自装置とネットワークとのデータ通信を仲介する中継装置から所定の異常の発生を通知する異常通知データを受信し、稼働／待機の切り替えを指示する切り替え通知データを他方の制御装置へ送信するとともに、自装置を待機系に切り替える切り替え通知処理を、自装置が稼働系となっている場合に周期的に実行する。切り替え検知手段は、切り替え通知処理が送信した切り替え通知データを受信し、自装置を稼働系に切り替える切り替え検知処理を、自装置が待機系となっている場合に周期的に実行する。そして、稼働系における切り替え通知処理の最初の実行タイミングと待機系における前記切り替え検知処理の最初の実行タイミングとには時間差が設けられている。このような中継装置を用いて制御システムを構築すれば、稼働系／待機系の切り替えに要する時間を短くすることができる。
【発明の効果】
【００１８】
本発明によれば、制御装置の二重化された制御システムにおいて、稼働系／待機系の切り替えに要する時間を短縮することが可能になる。
【図面の簡単な説明】
【００１９】
【図１】本発明の制御システム１の構成例を示す図である。
【図２】同制御システム１のＩＯマスタ２００＿１Ａの構成例を示すブロック図である。
【図３】同制御システム１に含まれる各装置が周期的に実行する処理の実行タイミングの一例を示すタイムチャートである。
【図４】同制御システム１の制御装置１００Ａの構成例を示すブロック図である。
【図５】同制御システム１の稼働系／待機系が切り替わる流れを示すパターン１のタイムチャートである。
【図６】同制御システム１の稼働系／待機系が切り替わる流れを示すパターン２のタイムチャートである。
【図７】同制御システム１の稼働系／待機系が切り替わる流れを示すパターン３のタイムチャートである。
【図８】従来の制御システム２の構成例を示す図である。
【図９】同制御システム２の稼働系／待機系が切り替わる流れを示したタイムチャートである。
【発明を実施するための形態】
【００２０】
以下、図面を参照しつつ本発明の実施形態を説明する。
（Ａ：構成）
図１は、本発明の制御システム１の構成例を示す図である。
図１では、図８におけるものと同一の構成要素には同一の符号が付されている。図１と図８を対比すれば明らかなように、制御システム１は、以下の２つの点が制御システム２と異なる。第１に、制御装置１１０Ａおよび制御装置１１０Ｂに代えて制御装置１００Ａおよび制御装置１００Ｂを設けた点である。第２に、ＩＯマスタ局２１＿１およびＩＯマスタ局２１＿２に代えてＩＯマスタ局２０＿１およびＩＯマスタ局２０＿２を設けた点である。ＩＯマスタ局２０＿１は、ＩＯマスタ２１０＿１ＡおよびＩＯマスタ２１０＿１Ｂの代わりにＩＯマスタ２００＿１ＡおよびＩＯマスタ２００＿１Ｂを有する点がＩＯマスタ局２１＿１と異なる。そして、ＩＯマスタ局２０＿２は、ＩＯマスタ２１０＿２ＡおよびＩＯマスタ２１０＿２Ｂの代わりにＩＯマスタ２００＿２ＡおよびＩＯマスタ２００＿２Ｂを有する点がＩＯマスタ局２１＿２と異なる。以下では、制御システム１の構成の特徴を顕著に表すＩＯマスタ２００＿１Ａ、ＩＯマスタ２００＿１Ｂ、ＩＯマスタ２００＿２Ａ、ＩＯマスタ２００＿２Ｂ、制御装置１００Ａおよび制御装置１００Ｂについて説明する。
【００２１】
まず、ＩＯマスタ２００＿１Ａの構成について説明する。
図２は、ＩＯマスタ２００＿１Ａの構成例を示すブロック図である。ＩＯマスタ２００＿１Ａは、図２に示すように、制御部２１００、第１通信インタフェース（以下、「Ｉ／Ｆ」と略記）部２２００、第２通信Ｉ／Ｆ部２３００、タイマ２４００、記憶部２５００、カウンタ２７００、およびこれら構成要素間のデータ授受を仲介するバス２６００を含む。
【００２２】
制御部２１００は、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。制御部２１００は記憶部２５００（より正確には不揮発性記憶部２５４０）に記憶されているプログラムを実行することにより、ＩＯマスタ２００＿１Ａの制御中枢として機能する。図２に示すように不揮発性記憶部２５４０には、中継制御プログラム２５４２とタイマ同期プログラム２５４４が予め記憶されている。制御部２１００は、ＩＯマスタ２００＿１Ａの電源オン或いはリセットを契機としてタイマ同期プログラム２５４４を実行し、その後、中継制御プログラム２５４２を実行する。制御部２１００がこれらプログラムにしたがって実行する処理の詳細については後に明らかにする。また、本実施形態では、制御システム１に含まれる各装置の電源は一斉にオン／オフされるため、各装置の電源を一斉にオンとすることを「制御システム１の電源をオンにする」と言う。
【００２３】
第１通信Ｉ／Ｆ部２２００および第２通信Ｉ／Ｆ部２３００は、例えばＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）である。第１通信Ｉ／Ｆ部２２００はシステムバス６０Ａに接続されている。第１通信Ｉ／Ｆ部２２００は、制御部２１００から引き渡されるデータ（監視データや故障通知データ）をシステムバス６０Ａへ送出する。第１通信Ｉ／Ｆ部２２００は、システムバス６０Ａへ送出する監視データや故障通知データを蓄積する通信バッファを有する（図２では図示略）。第２通信Ｉ／Ｆ部２３００はＩＯネットワーク４０＿１に接続されている。第２通信Ｉ／Ｆ部２３００は、ＩＯネットワーク４０＿１を介して送信されてくる監視データを受信し、この監視データを制御部２１００に引き渡す。第２通信Ｉ／Ｆ部２３００は、ＩＯネットワーク４０＿１を介して受信した監視データを蓄積する通信バッファを有する（図２では図示略）。
【００２４】
タイマ２４００は、例えばリアルタイムクロックである。タイマ２４００は、制御部２１００からの要求に応じてその要求のあった時刻を示す時刻データを返信する。前述したタイマ同期プログラム２５４４は、タイマ２４００が制御装置１００Ａのタイマと同じ時刻を示すように、ＩＥＥＥ１５８８やＳＮＴＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｔｉｍｅ  Ｐｒｏｔｏｃａｌ）といった既存のタイマ同期プロトコルにしたがって同期化する処理を制御部２１００に実行させるプログラムである。カウンタ２７００は制御部２１００からの指示に応じて値を１ずつ増やすアップカウンタであり、制御部２１００からの要求に応じて、その要求のあった時点のカウント値を返信する。
【００２５】
記憶部２５００は、図２に示すように揮発性記憶部２５２０と不揮発性記憶部２５４０とを有する。揮発性記憶部２５２０は、例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。揮発性記憶部２５２０は、中継制御プログラム２５４２やタイマ同期プログラム２５４４を実行するためのワークエリアとして使用される。不揮発性記憶部２５４０は例えばフラッシュＲＯＭである。前述したように、不揮発性記憶部２５４０には中継制御プログラム２５４２とタイマ同期プログラム２５４４が予め格納されている。
【００２６】
制御部２１００は、制御システム１の電源オン或いはリセットを契機として不揮発性記憶部２５４０から揮発性記憶部２５２０へタイマ同期プログラム２５４４を読み出して実行し、前述したタイマ同期を行う。そして、タイマ同期が完了すると、制御部２１００は、中継制御プログラム２５４２を読み出し、その実行を開始する。中継制御プログラム２５４２にしたがって作動している制御部２１００は、接続先の制御装置（ＩＯマスタ２００＿１Ａであれば、制御装置１００Ａ）の動作状態を監視し、当該制御装置が稼働系であれば、当該故障監視処理２５４２ａ、中継処理２５４２ｂおよび故障通知処理２５４２ｃの各々を予め定められたタイミングで実行する。
【００２７】
中継処理２５４２ｂは、第２通信Ｉ／Ｆ部２３００を介して監視データを受信したことを契機として実行される処理（すなわち、非周期的に実行される処理）である。これに対して、故障監視処理２５４２ａと故障通知処理２５４２ｃは周期的に実行される処理である。より詳細に説明すると、中継制御プログラム２５４２にしたがって作動している制御部２１００は、タイマ２４００のタイマ値を参照しつつ故障監視処理２５４２ａを１０ｍｓ周期（図３参照）で実行するとともに、故障通知処理２５４２ｃを３０ｍｓ周期（同図３参照）で実行する。本実施形態では、図３に示すように、故障監視処理２５４２ａおよび故障通知処理２５４２ｃの各々の最初の実行タイミングには１ｍｓの時間差が設定されている。具体的には、故障監視処理２５４２ａの最初の実行タイミングから１ｍｓ経過後が故障通知処理２５４２ｃの最初の実行タイミングである。
【００２８】
故障監視処理２５４２ａの処理内容は、従来のＩＯマスタ２１０＿１Ａにおける故障監視処理と変わるところはなく、故障通知処理２５４２ｃの処理内容も、従来のＩＯマスタ２１０＿１Ａにおける故障通知処理と変わるところはない。なお、カウンタ２７００は、故障監視処理２５４２ａによる途絶の検知回数のカウントに用いられる。中継処理２５４２ｂについても、従来のＩＯマスタ２１０＿１Ａにおける中継処理と変わるところはない。すなわち、中継処理２５４２ｂは、ＩＯスレーブ装置５０＿１或いはＩＯスレーブ装置５０＿２から受信した監視データを接続先の制御装置へ転送する処理である。よって、これら各処理の処理内容の詳細については説明を省略する。本実施形態のＩＯマスタ２００＿１Ａでは、制御システム１の電源オン或いはリセット時にタイマ同期を行う点と、故障監視処理２５４２ａおよび故障通知処理２５４２ｃの各々の最初の実行タイミングに１ｍｓの時間差が設けられている点がＩＯマスタ２１０＿１Ａと異なるのである。
以上がＩＯマスタ２００＿１Ａの構成である。
【００２９】
ＩＯマスタ２００＿１Ｂの構成は、第１通信Ｉ／Ｆ部２２００の接続先がシステムバス６０Ｂであること以外はＩＯマスタ２００＿１Ａの構成と同じであるため、説明を省略する。ＩＯマスタ２００＿２Ａの構成は、第２通信Ｉ／Ｆ部２３００の接続先がＩＯネットワーク４０＿２であること以外はＩＯマスタ２００＿１Ａの構成と同じであるため、説明を省略する。ＩＯマスタ２００＿２Ｂの構成は、第１通信Ｉ／Ｆ部２２００の接続先がシステムバス６０Ｂであること、および第２通信Ｉ／Ｆ部２３００の接続先がＩＯネットワーク４０＿２であること以外はＩＯマスタ２００＿１Ａの構成と同じであるため、説明を省略する。
【００３０】
次に、制御装置１００Ａの構成について説明する。
図４は、制御装置１００Ａの構成例を示すブロック図である。制御装置１００Ａは、図４に示すように、制御部１１００、第１通信Ｉ／Ｆ部１２００、第２通信Ｉ／Ｆ部１３００、タイマ１４００、記憶部１５００、およびこれら構成要素間のデータ授受を仲介するバス１６００を含む。
【００３１】
制御部１１００は、例えばＣＰＵである。制御部１１００は記憶部１５００（より正確には不揮発性記憶部１５４０）に記憶されているプログラムを実行することにより、制御装置１００Ａの制御中枢として機能する。図４に示すように、不揮発性記憶部１５４０には、制御プログラム１５４２とタイマ同期プログラム１５４４が予め記憶されている。制御部１１００は、制御システム１の電源オン或いはリセットを契機としてタイマ同期プログラム１５４４を実行し、その後、制御プログラム１５４２を実行する。制御部１１００がこれらプログラムにしたがって実行する処理の詳細については後に明らかにする。
【００３２】
第１通信Ｉ／Ｆ部１２００および第２通信Ｉ／Ｆ部１３００は、例えばＮＩＣである。第１通信Ｉ／Ｆ部１２００はシステムバス６０Ａに接続されている。第１通信Ｉ／Ｆ部１２００は、システムバス６０Ａを介して送信されてくる監視データや故障通知データを受信し、制御部１１００に引き渡す。第１通信Ｉ／Ｆ部１２００は、システムバス６０Ａを介して受信した監視データや故障通知データを蓄積する通信バッファを有する（図４では図示略）。第２通信Ｉ／Ｆ部１３００にはステータス交換バス３０が接続されている。第２通信Ｉ／Ｆ部１３００は、ステータス交換バス３０を介して切り替え通知データの送受信を行う。
【００３３】
タイマ１４００は、タイマ２４００と同様に例えばリアルタイムクロックである。タイマ同期プログラム１５４４は、自装置のタイマ１４００とタイマ２４００との同期、および自装置のタイマ１４００と他方の制御装置（すなわち、制御装置１００Ｂ）のタイマ１４００との同期を、前述した既存のタイマ同期プロトコルにしたがって制御部１１００に実現させるプログラムである。
【００３４】
記憶部１５００は、図４に示すように揮発性記憶部１５２０と不揮発性記憶部１５４０とを有する。揮発性記憶部１５２０は、例えばＲＡＭである。揮発性記憶部１５２０は、制御プログラム１５４２やタイマ同期プログラム１５４４を実行するためのワークエリアとして使用される。また、揮発性記憶部１５２０には、当該揮発性記憶部１５２０を有する制御装置１００が稼働系として動作しているのか、それとも待機系として動作しているのかを示す稼働／待機フラグが格納される。本実施形態では、制御装置１００Ａの稼働／待機フラグには、稼働系を示す値が初期値として設定され、制御装置１００Ｂの稼働／待機フラグには、待機系を示す値が初期値として設定される。不揮発性記憶部１５４０は例えばフラッシュＲＯＭである。前述したように不揮発性記憶部１５４０には制御プログラム１５４２とタイマ同期プログラム１５４４が予め格納されている。
【００３５】
制御部１１００は、制御システム１の電源オン或いはリセットを契機として不揮発性記憶部１５４０から揮発性記憶部１５２０へタイマ同期プログラム１５４４を読み出して実行し、前述したタイマ同期を行う。そして、タイマ同期が完了すると、制御部１１００は、制御プログラム１５４２を読み出し、その実行を開始する。制御プログラム１５４２にしたがって作動している制御部１１００は、自装置の動作状態を監視しその監視結果に応じて稼働／待機フラグを更新する処理を実行する。そして、制御部１１００は、自装置が稼働系として動作している場合（すなわち、自装置の稼働／待機フラグが稼働系を示す値である場合）には、故障検知処理１５４２ａ、制御処理１５４２ｂおよび切り替え通知処理１５４２ｃの各々を予め定められたタイミングで実行し、待機系として動作している場合には、切り替え検知処理１５４２ｄを予め定められたタイミングで実行する。
【００３６】
制御処理１５４２ｂは、監視データの受信を契機として実行される処理（すなわち、非周期的に実行される処理）である。これに対して故障検知処理１５４２ａ、切り替え通知処理１５４２ｃおよび切り替え検知処理１５４２ｄは周期的に実行される処理である。より詳細に説明すると、稼働系の制御装置においては、制御部１１００は、タイマ１４００のタイマ値を参照しつつ故障検知処理１５４２ａを１０ｍｓ周期（図３参照）で実行するとともに、切り替え通知処理１５４２ｃを３０ｍｓ周期（同図３参照）で実行する。これに対して待機系の制御装置においては、制御部１１００は、タイマ１４００のタイマ値を参照しつつ切り替え検知処理１５４２ｄを３０ｍｓ周期（図３参照）で実行する。
【００３７】
加えて、本実施形態では、図３に示すように、切り替え通知処理１５４２ｃおよび切り替え検知処理１５４２ｄの各々の最初の実行タイミングには１ｍｓの時間差が設定されている。具体的には、故障検知処理１５４２ａの最初の実行タイミングから１ｍｓ経過後が切り替え通知処理１５４２ｃの最初の実行タイミングであり、それからさらに１ｍｓ経過後が待機系の制御装置における切り替え検知処理１５４２ｄの最初の実行タイミングである。また、図３を参照すれば明らかように、稼働系の制御装置に接続されているＩＯマスタにおける故障通知処理２５４２ｃの最初の実行タイミングと稼働系の制御装置における故障検知処理１５４２ａの最初の実行タイミングにも１ｍｓの時間差が設定されている。本実施形態では、制御装置およびＩＯマスタの各々において周期的に実行される各処理の最初の実行タイミングの時間差が設定値である１ｍｓとなるように、制御システム１の電源オン或いはリセット直後に前述したタイマ同期が行われるのである。
【００３８】
故障検知処理１５４２ａの処理内容は、従来の制御装置における故障検知処理と変わるところはなく、切り替え通知処理１５４２ｃおよび切り替え検知処理１５４２ｄの処理内容も、従来の制御装置におけるものと変わるところはない。また、制御処理１５４２ｂについても、従来の制御装置におけるもとのと変わるところはない。よって、これら各処理の処理内容の詳細については説明を省略する。本実施形態の制御装置１００Ａでは、制御システム１の電源オン或いはリセット時にタイマ同期を行う点と、故障検知処理１５４２ａ、切り替え通知処理１５４２ｃおよび切り替え検知処理１５４２ｄの各々の最初の実行タイミングに１ｍｓの時間差が設けられている点が制御装置１１０Ａと異なるのである。
以上が制御装置１００Ａの構成である。
【００３９】
制御装置１００Ｂの構成は、第１通信Ｉ／Ｆ部１２００の接続先がシステムバス６０Ｂであること以外、制御装置１００Ａの構成と同じであるため、詳細な説明を省略する。
以上が制御システム１の構成である。
【００４０】
（Ｂ：動作）
次いで、本実施形態の動作を説明する。以下に説明する動作例では、制御装置１００Ａが稼働系となっている状況下でＩＯマスタ２００＿１ＡとＩＯネットワーク４０＿１との間の通信が途絶した場合について説明する。
【００４１】
各装置が実行する各処理の周期は１０ｍｓ或いは３０ｍｓであるので、ＩＯマスタ２００＿１ＡとＩＯネットワーク４０＿１との接続が途絶したタイミングに応じて、本実施形態の動作は次の３つのパターンに分かれる。第１に、故障通知処理２５４２ｃの実行前１ｍｓから実行後９ｍｓまでの期間ＴＴ１（図３参照）において途絶が発生するパターン（以下、パターン１）である。第２に、故障通知処理２５４２ｃの実行後９ｍｓから１９ｍｓまでの期間ＴＴ２（図３参照）において途絶が発生するパターン（以下、パターン２）である。そして、第３に、故障通知処理２５４２ｃの実行後１９ｍｓから２９ｍｓまでの期間ＴＴ３において途絶が発生するパターン（以下、パターン３）である。以下では、各パターンの動作について説明する。
【００４２】
（Ｂ−１：パターン１の動作）
図５は、パターン１における各装置の動作の流れを示すタイムチャートである。期間ＴＴ１内の時刻Ｔ０においてＩＯマスタ２００＿１ＡとＩＯネットワーク４０＿１との通信が途絶すると、図５に示すように、ＩＯマスタ２００＿１Ａでは、その後３回目に実行される故障監視処理２５４２ａにおいて初めて故障発生と判定される。この３回目の故障監視処理２５４２ａの実行タイミングを時刻Ｔ１とすると、ＩＯマスタ２００＿１Ａでは、時刻Ｔ１から１ｍｓ経過した時刻Ｔ２において故障通知処理２５４２ｃが実行され、ＩＯマスタ２００＿１Ａから制御装置１００Ａに故障通知データが送信される。
【００４３】
このようにして、ＩＯマスタ２００＿１Ａから制御装置１００Ａに送信された故障通知データは、時刻Ｔ２から１ｍｓ経過した時刻Ｔ３において制御装置１００Ａが実行する故障検知処理１５４２ａで検知される。そして、当該時刻Ｔ３から１ｍｓ経過した時刻Ｔ４において実行される切り替え通知処理１５４２ｃにより、制御装置１００Ａから制御装置１００Ｂへ切り替え通知データが送信されるとともに、制御装置１００Ａは待機系に切り換えられる。制御装置１００Ｂは、時刻Ｔ４から１ｍｓ経過した時刻Ｔ５において実行する切り替え検知処理１５４２ｄにより当該切り替え通知データを検知し、自装置の動作モードを稼働系に切り換える。したがって、パターン１では、ＩＯマスタ２００＿１Ａが故障を検出してから稼働系／待機系の切り替えが発生するまでに要する時間はＴ５−Ｔ１＝４ｍｓである。
【００４４】
（Ｂ−２：パターン２の動作）
図６は、パターン２における各装置の動作の流れを示すタイムチャートである。故障通知処理２５４２ｃの実行後９ｍｓから１９ｍｓまでの期間ＴＴ２内の時刻Ｔ０においてＩＯマスタ２００＿１ＡとＩＯネットワーク４０＿１との通信の途絶が発生すると、前述したパターン１と同様に、時刻Ｔ０以降で３回目に実行される故障監視処理２５４２ａにおいて初めて故障発生と判定される。この３回目の故障監視処理２５４２ａの実行タイミングを時刻Ｔ１とすると、ＩＯマスタ２００＿１Ａでは、図６に示すように、時刻Ｔ１から２１ｍｓ経過した時刻Ｔ２において実行される故障通知処理２５４２ｃで故障通知データがＩＯマスタ２００＿１Ａから制御装置１００Ａに送信される。以降の各装置の動作はパターン１における場合と同一である。つまり、パターン２とパターン１とでは、時刻Ｔ１と時刻Ｔ２の時間間隔のみが異なる。図６に示すように、パターン２では、ＩＯマスタ２００＿１Ａが故障を検出してから稼働系／待機系の切り替えが発生するまでに要する時間はＴ５−Ｔ１＝２４ｍｓである。
【００４５】
（Ｂ−３：パターン３の動作）
図７は、パターン３における各装置の動作の流れを示すタイムチャートである。故障通知処理２５４２ｃの実行後１９ｍｓから２９ｍｓ経過までの期間ＴＴ３内の時刻Ｔ０においてＩＯマスタ２００＿１ＡとＩＯネットワーク４０＿１との通信の途絶が発生すると、前述したパターン１と同様に、時刻Ｔ０以降で３回目に実行される故障監視処理２５４２ａにおいて初めて故障発生と判定される。この３回目の故障監視処理２５４２ａの実行タイミングを時刻Ｔ１とすると、図７に示すように、時刻Ｔ１から１１ｍｓ経過した時刻Ｔ２において実行される故障通知処理２５４２ｃで故障通知データがＩＯマスタ２００＿１Ａから制御装置１００Ａに送信される。以降の各装置の動作はパターン１における場合と同一である。つまり、パターン３とパターン１とでは、時刻Ｔ１と時刻Ｔ２の時間間隔のみが異なる。図７に示すように、パターン３では、ＩＯマスタ２００＿１Ａが故障を検出してから稼働系／待機系の切り替えが発生するまでに要する時間はＴ５−Ｔ１＝１４ｍｓである。
【００４６】
以上説明したように本実施形態によれば、パターン１〜パターン３の何れにおいても、ＩＯマスタ２００＿１ＡがＩＯネットワーク４０＿１との接続の故障を検出してから稼働系／待機系の切り替えが発生するまでに要する時間は、従来の制御システムのおける時間よりも短くなる。
【００４７】
＜変形例＞
以上本発明の実施形態について説明したが、上記実施形態に以下の変形を加えても勿論良い。
（１）上記実施形態の制御システム１に含まれるＩＯマスタや制御装置を単体で提供する（すなわち、製造・販売する）態様であっても良い。このようなＩＯマスタや制御装置を従来の制御システムにおけるＩＯマスタや制御装置と置き換えることで、従来の制御システムを上記実施形態の制御システムとして機能させることが可能になるからである。また、上記実施形態では、ＩＯスレーブ装置と制御装置とのデータ通信を仲介するＩＯマスタへの本発明の適用例を説明したが、ネットワークアダプタに本発明を適用してもよい。要は、制御装置をネットワークに接続し、両者のデータ通信を仲介する中継装置であれば本発明を適用可能である。また、このような中継装置を介して制御装置に接続されるネットワークはＩＯネットワークには限定されず、他の制御装置が接続された制御ネットワークであってもよい。
【００４８】
（２）上記実施形態では、故障監視処理２５４２ａ、故障通知処理２５４２ｃ、故障検知処理１５４２ａ、切り替え通知処理１５４２ｃ、および切り替え検知処理１５４２ｄの各々の最初の実行タイミングが１ｍｓずつずれていたが、これらのうちの少なくとも１つの最初の実行タイミングが他のものからずれている態様であっても良い。上記５つの処理の最初の実行タイミングが全て揃っている場合に、図９に示すような不具合が生じるからである。また、上記実施形態では、故障監視処理２５４２ａと故障通知処理２５４２ｃとを別個の処理としたが、前者と後者とを一体の処理として３０ｍｓ周期で実行するようにしても良い。また、故障検知処理１５４２ａと切り替え通知処理１５４２ｃについても同様に両者を一体の処理として３０ｍｓ周期で実行するようにしても良い。
【００４９】
（３）上記各実施形態では、故障監視処理２５４２ａおよび故障通知処理２５４２ｃをソフトウェアにより実現した。しかし、各処理を実行する手段の各々を電子回路で構成し、これら電子回路を組み合わせて上記各実施形態のＩＯマスタを構成してもよい。同様に、故障検知処理１５４２ａ、切り替え通知処理１５４２ｃおよび切り替え検知処理１５４２ｄの各処理を実行する手段の各々を電子回路で構成し、これら電子回路を組み合わせて上記実施形態の制御装置を構成してもよい。また、上記各実施形態では制御装置間通信手段としてステータス交換バス３０を用いたが、無線ＬＡＮインタフェースなどの無線通信手段を上記通信手段として用いても良い。
【００５０】
（４）上記実施形態では、故障監視処理２５４２ａ、故障通知処理２５４２ｃ、故障検知処理１５４２ａ、切り替え通知処理１５４２ｃ、および切り替え検知処理１５４２ｄの各々の最初の実行タイミングの時間差が１ｍｓである場合であったが、当該時間差は１ｍｓに限定されるものではなく、適宜実験を行って好適な値に設定しておけばよい。故障監視処理２５４２ａ、故障通知処理２５４２ｃ、故障検知処理１５４２ａ、切り替え通知処理１５４２ｃ、および切り替え検知処理１５４２ｄの各々の実行周期についても同様に適宜実験を行って好適な値に設定しておけばよい。
【００５１】
故障監視処理２５４２ａ、故障通知処理２５４２ｃ、故障検知処理１５４２ａ、切り替え通知処理１５４２ｃ、および切り替え検知処理１５４２ｄの各々の実行周期を可変にしても良い。具体的には、稼働系の制御装置に接続されているＩＯマスタは、故障監視処理２５４２ａ或いは故障通知処理２５４２ｃ（或いは、両方）の実行周期を自装置の処理負荷に応じて調整する、といった具合である。この態様によれば、例えば、自装置の処理負荷が高いほど故障監視処理２５４２ａ或いは故障通知処理２５４２ｃの実行周期を長くする態様であれば、これらの処理の周期実行による処理負荷により、ＩＯマスタ本来の処理であるデータ中継処理に支障が生じることを回避することができる。同様に、稼働系の制御装置においても、故障検知処理１５４２ａ或いは切り替え通知処理１５４２ｃ（或いは両方）の実行周期を当該制御装置の処理負荷に応じて調整してもよい。
【００５２】
稼働系の制御装置は、接続先のＩＯマスタにおける故障通知処理２５４２ｃの最初の実行タイミングと自装置における故障検知処理１５４２ａ（或いは故障検知処理１５４２ａを含む切り替え通知処理）の最初の実行タイミングとの時間差を、当該ＩＯマスタとの間のデータ通信の遅延（より正確には、当該遅延の理論値やカタログ値、或いは実運用を通じて得られた統計値）に応じて決定するようにしても良い。このような態様によれば、故障検知処理において、その直近に実行された故障通知処理により送信された故障通知データの受信を確実に検知し、当該故障通知データが次の故障検知処理の実行タイミングまで検知されないといった事態の発生を回避することができる。同様に、稼働系の制御装置における切り替え通知処理１５４２ｃの最初の実行タイミングと待機系における切り替え検知処理１５４２ｄの最初の実行タイミングとの時間差を、ステータス交換バス３０を介した通信の遅延に応じて待機系の制御装置に決定させるようにしてもよい。
【００５３】
（５）上記実施形態では、制御部２１００は、ＩＯネットワークとの通信の途絶を３回連続して検知した場合に、故障発生と判定した。しかし、制御システム１の稼働系／待機系の切り替えについて求められる性能に応じて、通信の途絶が連続して４回検知された場合に故障発生と判定してもよく、通信の途絶が検知された場合には即座に故障発生と判定してもよい。
【００５４】
（６）上記実施形態では、制御部２１００がＩＯネットワークとの通信の途絶を検知して制御システム１の稼働系／待機系の切り替えを行っていたが、制御部２１００がＩＯネットワークとの通信の途絶以外の異常を検知して制御システム１の稼働系／待機系の切り替えを行う態様でもよい。例えば、制御部２１００が自装置の故障を検知して制御システム１の稼働系／待機系の切り替えを行ってもよい。この態様は、不揮発性記憶部２５００の中継制御プログラム２５４２を書き換えることで実現できる。
【符号の説明】
【００５５】
１，２……制御システム、１００Ａ，１００Ｂ，１１０Ａ，１１０Ｂ…制御装置、２０＿１，２０＿２，２１＿１，２１＿２…ＩＯマスタ局、３０……ステータス交換バス、４０＿１，４０＿２……ＩＯネットワーク、５０＿１〜５０＿４……ＩＯスレーブ装置、６０Ａ，６０Ｂ……システムバス、１１００，２１００……制御部、１２００，２２００……第１通信Ｉ／Ｆ部、１３００，２３００……第２通信Ｉ／Ｆ部、１４００，２４００……タイマ、２００＿１Ａ，２００＿１Ｂ，２００＿２Ａ，２００＿２Ｂ，２１０＿１Ａ，２１０＿１Ｂ，２１０＿２Ａ，２１０＿２Ｂ……ＩＯマスタ、１５００，２５００……記憶部、１５２０，２５２０……揮発性記憶部、２７００……カウンタ、１５４０，２５４０……不揮発性記憶部、１５４２……制御プログラム、２５４２……中継制御プログラム、１５４２ａ……故障検知処理、２５４２ａ……故障監視処理、１５４２ｂ……制御処理、２５４２ｂ……中継処理、１５４２ｃ……切り替え通知処理、２５４２ｃ……故障通知処理、１５４２ｄ……切り替え検知処理、１５４４，２５４４……タイマ同期プログラム。
【図１】
2016099634.tif 000003
【図２】
2016099634.tif 000004
【図３】
2016099634.tif 000005
【図４】
2016099634.tif 000006
【図５】
2016099634.tif 000007
【図６】
2016099634.tif 000008
【図７】
2016099634.tif 000009
【図８】
2016099634.tif 000010
【図９】
2016099634.tif 000011