(57)【特許請求の範囲】
【請求項１】
制御対象に対して二組の制御装置を配置し、一方の制御装置を常用系制御装置、他方の制御装置を待機系制御装置として、通常は常用系制御装置で前記制御対象の制御を行ない、この常用系制御装置が故障した場合には待機系制御装置に切替えて、前記制御対象の制御を行う待機冗長型の二重化制御システムであって、
保守ツールと、
二組の制御装置と、
プロセス入出力装置とからなり、
前記保守ツールは、この制御システムの運転モードを二組の前記制御装置に設定する運転モード設定手段と、前記制御装置に記憶される制御プログラムの保守を行う制御プログラム保守手段と、前記常用系制御装置と前記待機系制御装置の制御信号の比較から前記制御プログラムの良否を比較判定する制御プログラム比較判定手段とを有し、
前記制御装置は、前記運転モード設定手段からの運転モード指令信号と、前記制御装置の自系の故障状態及び相手系の故障状態とから前記制御装置の運転モードを設定する運転モード設定処理手段と、
予め設定される前記制御装置の制御周期に同期して、自系及び相手系の制御データ及び前記故障状態を記憶するトラッキングメモリと、前記トラッキングメモリに記憶された前記制御データ及び前記故障状態を前記制御周期に同期して相互に通信する通信手段とを備える同期信号検出手段と、
前記制御プログラムを記憶する制御プログラムメモリと、前記制御データを記憶する制御データメモリと、前記制御対象と制御信号を授受し前記制御プログラムに基づいて制御演算を行い、その演算結果と前記運転モード設定処理手段に記憶された前記運転モードによって前記プロセス入出力装置へ前記演算出力の選択信号とを出力するＣＰＵとを有する演算処理手段と、
前記プロセス入出力装置は、前記制御対象からの出力信号を二組の前記制御装置に並列に入力する入力回路と、前記選択信号によって選択された二組のいずれかの前記制御装置の演算出力を前記制御対象に送信する出力回路とを有し、
一方の前記制御装置が一重で常用運転中、他方の前記制御装置が運転停止中の状態で、前記保守ツールから二組の前記制御装置に対して「内部二重設定指令」が送信されたとき、他方の前記制御装置は自系を初期化処理して、一方の前記常用運転中の系に対して自系の前記トラッキングメモリに、運転中の前記制御装置の制御データと運転状態とを書き込みする初期トラッキング処理を要求して、この初期化トラッキング処理が正常に完了すると自系を内部二重待機系とし、
前記常用運転中の系を内部二重常用系とする内部二重制御システムとして運転し、
前記内部二重制御システムとして常用運転中の前記制御装置が、自系が故障を検出した場合、待機系は、前記同期信号検出手段で常用系の故障を検出し、自系を初期化処理して前記初期トラッキング処理を要求し、常用系の故障が回復して前記初期トラッキング処理が正常に完了した場合には内部二重の待機系として運転を起動し、前記初期トラッキング処理が完了しない場合には、前記初期化処理及び前記初期トラッキング処理を規定の回数繰り返し、故障が回復しなければ運転を停止し、
常用系は、自系の初期化処理を繰り返し、故障が回復すれば、一重常用系の状態で運転を開始し、待機系から前記初期トラッキング処理の要求があると前記初期トラッキング処理を実施し、正常完了すると内部二重常用制御システムとして運転を開始し、
前記内部二重制御システムでの運転中に、前記保守ツールから「内部二重解除指令」が送信されると、前記二重化制御システムに復帰させ、
前記内部二重制御システムでの運転中に、前記保守ツールから二組の前記制御装置に対して「内部二重系切替え設定指令」が送信されると、内部二重常用系は内部二重待機系に、内部二重待機系は内部二重常用系に、夫々の運転状態の常用系と待機系とを切り替えるようにしたことを特徴とする二重化制御システム。
【請求項２】
前記保守ツールは、前記運転モード設定処理手段で処理された前記制御装置の運転モードの状態を表示する表示手段を備えたことを特徴とする請求項１に記載の二重化制御システム。
【請求項３】
前記内部二重状態で運転中に、前記保守ツールから二組の前記制御装置に「内部二重系切り替え指令」が送信された場合、前記制御装置は、夫々の運転状態の常用系と待機系とを切り替えるとともに、常用系の前記制御装置から前記プロセス入出力装置へ自系の演算出力を選択する前記選択信号を送信するようにしたこと特徴とする請求項１乃至請求項２のいずれか１項に記載の二重化制御システム。
【請求項４】
制御対象に対して二組の制御装置を配置し、一方の制御装置を常用系制御装置、他方の制御装置を待機系制御装置として、通常は常用系制御装置で前記制御対象の制御を行ない、この常用系制御装置が故障した場合には待機系制御装置に切替えて、前記制御対象の制御を行う待機冗長型の二重化制御システの制御装置の制御プログラムの変更方法であって、
保守ツールと、
二組の制御装置と、
プロセス入出力装置とからなり、
前記保守ツールは、この制御システムの運転モードを二組の前記制御装置に設定する運転モード設定手段と、前記制御装置に記憶される制御プログラムの保守を行う制御プログラム保守手段と、前記常用系制御装置と前記待機系制御装置の制御信号の比較から前記制御プログラムの良否を比較判定する制御プログラム比較判定手段とを有し、
前記制御装置は、前記運転モード設定手段からの運転モード指令信号と、前記制御装置の自系の故障状態及び相手系の故障状態とから前記制御装置の運転モードを設定する運転モード設定処理手段と、
予め設定される前記制御装置の制御周期に同期して、自系及び相手系の制御データ及び前記故障状態を記憶するトラッキングメモリと、前記トラッキングメモリに記憶された前記制御データ及び前記故障状態を前記制御周期に同期して相互に通信する通信手段とを備える同期信号検出手段と、
前記制御プログラムを記憶する制御プログラムメモリと、前記制御データを記憶する制御データメモリと、前記制御対象と制御信号を授受し前記制御プログラムに基づいて制御演算を行い、その演算結果と前記運転モード設定処理手段に記憶された前記運転モードによって前記プロセス入出力装置へ前記演算出力の選択信号とを出力するＣＰＵとを有する演算処理手段と、
前記プロセス入出力装置は、前記制御対象からの出力信号を二組の前記制御装置に並列に入力する入力回路と、前記選択信号によって選択された二組のいずれかの前記制御装置の演算出力を前記制御対象に送信する出力回路とを有し、
一方の前記制御装置が一重で常用運転中、他方の前記制御装置が運転停止中の状態で、前記保守ツールから二組の前記制御装置に対して「内部二重設定指令」が送信されたとき、他方の前記制御装置は自系を初期化処理して、一方の前記常用運転中の系に対して自系の前記トラッキングメモリに、運転中の前記制御装置の制御データと運転状態とを書き込みする初期トラッキング処理を要求して、この初期化トラッキング処理が正常に完了すると自系を内部二重待機系とし、前記常用運転中の系を内部二重常用系とする内部二重制御システムとして運転し、前記内部二重制御システムとして常用運転中の前記制御装置が、自系が故障を検出した場合、待機系は、前記同期信号検出手段で常用系の故障を検出し、自系を初期化処理して前記初期トラッキング処理を要求し、常用系の故障が回復して前記初期トラッキング処理が正常に完了した場合には内部二重の待機系として運転を起動し、前記初期トラッキング処理が完了しない場合には、前記初期化処理及び前記初期トラッキング処理を規定の回数繰り返し、故障が回復しなければ運転を停止し、常用系は、自系の初期化処理を繰り返し、故障が回復すれば、一重常用系の状態で運転を開始し、待機系から前記初期トラッキング処理の要求があると前記初期トラッキング処理を実施し、正常完了すると内部二重常用制御システムとして運転を開始するステップと、
前記保守ツールは、待機系に新制御プログラムをダウンロードするステップと、
前記保守ツールは、前記待機系及び前記常用系の制御データをアップロードして、前記制御プログラムと前記新制御プログラムの夫々の前記制御データを比較判定するステップと、
比較判定の結果、更新可能であると判定された場合は、前記保守ツールから「内部二重切り替え指令」を常用系及び待機系に設定するステップと
からなることを特徴とする二重化制御システムの制御装置の制御プログラムの変更方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、発電プラントのようなプラントの運転を２系統の同一制御プログラムで制御する二重化制御システム、及びその制御制御装置の制御プログラムの更新方法に係り、特に、プラント運転中において、制御プログラムの更新を可能とする二重化制御システム、及びその制御装置の制御プログラムの更新方法に関する。
【背景技術】
【０００２】
工場や公共施設等の各種プラントの動作を制御する制御装置には、この制御装置に何等かの異常が発生して、制御対象のプラントが停止すると重大な事故に至ることが予測される場合がある。
【０００３】
一般に、このような制御対象に対しては、同一構成の二組の制御装置を接続して、いずれか一方を常用系、他方を待機系として、通常は常用系のみで制御対象を制御し、常用系に異常が生じたときに、待機系を常用系用に切り替え、制御を続行するように構成される待機冗長型の二重化制御装置がある。
【０００４】
このような二重化制御装置においては、両系の制御プログラムを同一としておき、二重化制御システムとして運転中にこの制御プログラムを保守する場合には、先ず、待機系制御装置の制御プログラムを新制御プログラムに更新し、常用系の制御結果と待機系制御装置の新制御プログラムによる制御結果とを比較して、その結果が妥当であることを確認し、その後、常用系制御装置を新プログラムに更新するようにしている（例えば、特許文献1参照。）。
【０００５】
図９に示された特許文献1の二重化制御システムは、二重化制御装置２０と、二重化制御装置２０に接続された模擬試験装置２４と、二重化制御装置２０と模擬試験装置２４とに接続された専用保守装置２６とを有し、二重化制御装置２０は、プラント制御のプログラムを実行し、いずれか一方がプラント制御のための常用系となり他方が待機系となる２系統のＣＰＵ系２１と、２系統のＣＰＵ系２１と接続されプラント１９との間でプラント制御のためのデータをやり取りするプロセス入出力装置２３とからなる。
【０００６】
そして、模擬試験装置２４は、２系統のＣＰＵ系２１の待機側と接続されプラント制御のためのデータのうちプラントからの出力データをオンラインで取得する手段と、取得された出力データによりプラント制御の別プログラム１１５を実行する手段とを有し、専用保守装置２６は、常用系で実行されたプログラム１１１の結果と待機側のＣＰＵ系２２により実行された別プログラム１１５の結果とを比較する手段と、比較された結果が所望の結果である場合に別プログラム１１５の待機側のＣＰＵ系２２へのダウンロードを指示する手段と、２系統のＣＰＵ系２１の常用権を切り替えることを指示する手段と、ダウンロードされた別プログラム１１５を他方のＣＰＵ系に書き込むことを指示する手段とをからなることを特徴としている。
【特許文献１】特開２００１−２０２１０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献1に開示された二重化制御システムにおいては、二重化制御システムに支障を与えずに制御プログラムが変更と動作の検証が行えるだけでなく、待機系に新制御プログラムの書き込みが短時間で行えるので、常用系がダウンした場合に生じるプラント制御の一時停止の可能性をより低く抑えることができることを特徴としている。
【０００８】
しかしながら、二重化制御装置と独立して構成される模擬試験装置２４を使用して新プログラムの検証を行うことから、構成が増えシステムが複雑になる問題があるだけでなく、模擬試験装置２４と二重化制御システムの個々の制御装置とを、長期間にわたり同じ状態に保守することが困難で、模擬試験装置１４と運転中の制御装置とのハードウェア及びソフトウェアの状態に相違が生じる可能性がある。
【０００９】
そのため、新制御プログラムについて模擬試験装置２４で検証した制御性の結果と運転中の制御装置での制御性の結果に相違が生じ、新プログラムの評価を誤る恐れがあるため、二重化制御システムの保守信頼性が低下する問題がある。
【００１０】
ところで、このような二重化制御システムの保守信頼性を向上する方法として、待機冗長型の二重化制御システムとして稼動している常用系制御装置と待機系制御装置の状態とを変更することなく、待機系制御装置を使用して新制御プログラムの性能を検証して、その後、待機冗長型に戻す方法が考えられるが、交換作業中のシステムの故障対策、二重化制御システムから保守作業時のシステムへの移行、及び保守作業後の二重化制御システムへの回復など待機系が使用できなくなる場合の待機冗長型の二重化制御システムの保守信頼性に問題があった。
【００１１】
また、制御装置の故障には、制御プログラムの初期化で復旧することが可能な一過性の軽度の故障と回復が不可能な重度の故障とがあるので、全ての故障に対して、常用系と待機系の切り替えをやってしまうと、プラントの運転効率が低下する問題もあった。
【００１２】
本発明は、上記問題点を解決するためになされたもので、制御プログラムの更新行う場合に、模擬試験装置等の新たな設備を設けることなく、待機冗長型で運転中の二重化制御システムの制御プログラムの更新作業中に故障があっても回復処理が可能で、その制御プログラムの保守作業時の運転効率と保守作業の信頼性を高めた二重化制御システム及びその制御装置の制御プログラムの変更方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成するために、本発明に係る請求項１の二重化制御システムは、制御対象に対して二組の制御装置を配置し、一方の制御装置を常用系制御装置、他方の制御装置を待機系制御装置として、通常は常用系制御装置で前記制御対象の制御を行ない、この常用系制御装置が故障した場合には待機系制御装置に切替えて、前記制御対象の制御を行う待機冗長型の二重化制御システムであって、保守ツールと、二組の制御装置と、プロセス入出力装置とからなり、前記保守ツールは、この制御システムの運転モードを二組の前記制御装置に設定する運転モード設定手段と、前記制御装置に記憶される制御プログラムの保守を行う制御プログラム保守手段と、前記常用系制御装置と前記待機系制御装置の制御信号の比較から前記制御プログラムの良否を比較判定する制御プログラム比較判定手段とを有し、前記制御装置は、前記運転モード設定手段からの運転モード指令信号と、前記制御装置の自系の故障状態及び相手系の故障状態とから前記制御装置の運転モードを設定する運転モード設定処理手段と、予め設定される前記制御装置の制御周期に同期して、自系及び相手系の制御データ及び前記故障状態を記憶するトラッキングメモリと、前記トラッキングメモリに記憶された前記制御データ及び前記故障状態を前記制御周期に同期して相互に通信する通信手段とを備える同期信号検出手段と、前記制御プログラムを記憶する制御プログラムメモリと、前記制御データを記憶する制御データメモリと、前記制御対象と制御信号を授受し前記制御プログラムに基づいて制御演算を行い、その演算結果と前記運転モード設定処理手段に記憶された前記運転モードによって前記プロセス入出力装置へ前記演算出力の選択信号とを出力するＣＰＵとを有する演算処理手段と、前記プロセス入出力装置は、前記制御対象からの出力信号を二組の前記制御装置に並列に入力する入力回路と、前記選択信号によって選択された二組のいずれかの前記制御装置の演算出力を前記制御対象に送信する出力回路とを有し、一方の前記制御装置が一重で常用運転中、他方の前記制御装置が運転停止中の状態で、前記保守ツールから二組の前記制御装置に対して「内部二重設定指令」が送信されたとき、他方の前記制御装置は自系を初期化処理して、一方の前記常用運転中の系に対して自系の前記トラッキングメモリに、運転中の前記制御装置の制御データと運転状態とを書き込みする初期トラッキング処理を要求して、この初期化トラッキング処理が正常に完了すると自系を内部二重待機系とし、前記常用運転中の系を内部二重常用系とする内部二重制御システムとして運転し、前記内部二重制御システムとして常用運転中の前記制御装置が、自系が故障を検出した場合、待機系は、前記同期信号検出手段で常用系の故障を検出し、自系を初期化処理して前記初期トラッキング処理を要求し、常用系の故障が回復して前記初期トラッキング処理が正常に完了した場合には内部二重の待機系として運転を起動し、前記初期トラッキング処理が完了しない場合には、前記初期化処理及び前記初期トラッキング処理を規定の回数繰り返し、故障が回復しなければ運転を停止し、常用系は、自系の初期化処理を繰り返し、故障が回復すれば、一重常用系の状態で運転を開始し、待機系から前記初期トラッキング処理の要求があると前記初期トラッキング処理を実施し、正常完了すると内部二重常用制御システムとして運転を開始し、前記内部二重制御システムでの運転中に、前記保守ツールから二組の前記制御装置に対して「内部二重解除指令」が送信されると、前記二重化制御システムに復帰させ、前記内部二重制御システムでの運転中に、前記保守ツールから「内部二重系切替え設定指令」が送信されると、内部二重常用系は内部二重待機系に、内部二重待機系は内部二重常用系に、夫々の運転状態の常用系と待機系とを切り替えるようにしたことを特徴とする。
【００１４】
上記目的を達成するために、本発明に係る請求項２の二重化制御システムは、前記保守ツールは、前記運転モード設定処理手段で処理された前記制御装置の運転モードの状態を表示する表示手段を備えたことを特徴とする。
【００１８】
上記目的を達成するために、本発明に係る請求項３の二重化制御システムは、前記内部二重状態で運転中に、前記保守ツールから二組の前記制御装置に「内部二重系切り替え指令」が送信された場合、前記制御装置は、夫々の運転状態の常用系と待機系とを切り替えるとともに、常用系の前記制御装置から前記プロセス入出力装置へ自系の演算出力を選択する前記選択信号を送信するようにしたこと特徴とする。
【００２０】
上記目的を達成するために、本発明に係る二重化制御システムの制御プログラムの変更方法は、制御対象に対して二組の制御装置を配置し、一方の制御装置を常用系制御装置、他方の制御装置を待機系制御装置として、通常は常用系制御装置で前記制御対象の制御を行ない、この常用系制御装置が故障した場合には待機系制御装置に切替えて、前記制御対象の制御を行う待機冗長型の二重化制御システの制御装置の制御プログラムの変更方法であって、保守ツールと、二組の制御装置と、プロセス入出力装置とからなり、前記保守ツールは、この制御システムの運転モードを二組の前記制御装置に設定する運転モード設定手段と、前記制御装置に記憶される制御プログラムの保守を行う制御プログラム保守手段と、前記常用系制御装置と前記待機系制御装置の制御信号の比較から前記制御プログラムの良否を比較判定する制御プログラム比較判定手段とを有し、前記制御装置は、前記運転モード設定手段からの運転モード指令信号と、前記制御装置の自系の故障状態及び相手系の故障状態とから前記制御装置の運転モードを設定する運転モード設定処理手段と、予め設定される前記制御装置の制御周期に同期して、自系及び相手系の制御データ及び前記故障状態を記憶するトラッキングメモリと、前記トラッキングメモリに記憶された前記制御データ及び前記故障状態を前記制御周期に同期して相互に通信する通信手段とを備える同期信号検出手段と、前記制御プログラムを記憶する制御プログラムメモリと、前記制御データを記憶する制御データメモリと、前記制御対象と制御信号を授受し前記制御プログラムに基づいて制御演算を行い、その演算結果と前記運転モード設定処理手段に記憶された前記運転モードによって前記プロセス入出力装置へ前記演算出力の選択信号とを出力するＣＰＵとを有する演算処理手段と、前記プロセス入出力装置は、前記制御対象からの出力信号を二組の前記制御装置に並列に入力する入力回路と、前記選択信号によって選択された二組のいずれかの前記制御装置の演算出力を前記制御対象に送信する出力回路とを有し、一方の前記制御装置が一重で常用運転中、他方の前記制御装置が運転停止中の状態で、前記保守ツールから二組の前記制御装置に対して「内部二重設定指令」が送信されたとき、他方の前記制御装置は自系を初期化処理して、一方の前記常用運転中の系に対して自系の前記トラッキングメモリに、運転中の前記制御装置の制御データと運転状態とを書き込みする初期トラッキング処理を要求して、この初期化トラッキング処理が正常に完了すると自系を内部二重待機系とし、前記常用運転中の系を内部二重常用系とする内部二重制御システムとして運転し、前記内部二重制御システムとして常用運転中の前記制御装置が、自系が故障を検出した場合、待機系は、前記同期信号検出手段で常用系の故障を検出し、自系を初期化処理して前記初期トラッキング処理を要求し、常用系の故障が回復して前記初期トラッキング処理が正常に完了した場合には内部二重の待機系として運転を起動し、前記初期トラッキング処理が完了しない場合には、前記初期化処理及び前記初期トラッキング処理を規定の回数繰り返し、故障が回復しなければ運転を停止し、常用系は、自系の初期化処理を繰り返し、故障が回復すれば、一重常用系の状態で運転を開始し、待機系から前記初期トラッキング処理の要求があると前記初期トラッキング処理を実施し、正常完了すると内部二重常用制御システムとして運転を開始するステップと、前記保守ツールは、待機系に新制御プログラムをダウンロードするステップと、前記保守ツールは、前記待機系及び前記常用系の制御データをアップロードして、前記制御プログラムと前記新制御プログラムの夫々の前記制御データを比較判定するステップと、比較判定の結果、更新可能であると判定された場合は、前記保守ツールから「内部二重切り替え指令」を常用系及び待機系に設定するステップとからなることを特徴とする。
【発明の効果】
【００２１】
二重化制御システムの制御プログラムの更新や保守作業を行う場合、一重常用系から待機系の初期トラッキングを完了した状態（非待機冗長型の特殊二重状態で、ここでは内部二重と称す）でシステムを運転する「内部二重設定指令」と内部二重状態から待機冗長型の二重化システムに復帰させる「内部二重解除指令」とを設定する運転モード設定手段と、二組の制御装置の運転状態とから自系の運転モードを設定する運転モード設定処理手段とを備えた。
【００２２】
そして、内部二重状態の待機系の故障が発生した場合には、待機系は、待機系自身の初期化処理と常用系に初期トラッキングとを要求して、故障が回復した場合には内部二重の常用系と待機系として運転を継続させ、常用系に故障が発生した場合には、待機系の運転を中止して常用系自身の初期化処理を行って一重常用系として運転が回復できるようにした。
【００２３】
さらに、常用系に故障が発生した場合に、待機系は、待機系の運転を停止せず初期化処理を規定回数継続させ、常用系に初期トラッキングを要求して、初期トラッキングが正常に完了したことで内部二重制御システムとして運転を継続させるようにした。
【００２４】
したがって、内部二重制御システムの状態から待機冗長型の二重化制御システムには自動的に遷移することが無く、待機系を待機冗長型に復帰させる場合には、制御プログラムの性能を含む待機系の状態が正常であることを確認して運転状態を遷移させることが可能となる。
【００２５】
また、運転モード指令として、内部二重状態で常用系と待機系を切り替える「内部二重切り替え指令」を設けたので、両系を異なる制御プログラムで運転することが可能となり、異なる制御プログラムの比較判定を行うことができるので、制御装置の性能を確実に検証して制御プログラムの更新、保守を行うことができる。
【００２６】
したがって、二重化制御システムの制御プログラムの更新が必要になった場合に、模擬試験装置等の新たな設備を設けることなく、待機冗長型で運転中の二重化制御システムの制御プログラムの更新作業中に、故障があっても回復処理が可能で、その制御プログラムの保守作業時の運転効率と保守作業の信頼性を高めた二重化制御システム及びその制御装置の制御プログラムの変更方法を提供することができる。
【発明を実施するための最良の形態】
【００２７】
以下、図面を参照して、本発明の実施例を説明する。
【実施例１】
【００２８】
本発明による実施例１に係る二重化制御システムについて、図１乃至図７を参照して説明する。図１は、二重化制御システムの構成を示すシステム機能ブロック図である。
【００２９】
二重化制御システムは、制御対象９を制御する二組の制御装置１と、これらのいずれかの制御装置１の出力を制御対象９に出力するプロセス入出力装置３と、二組の制御装置１の運転モードを設定するとともに、これらの制御装置１の制御プログラムを更新するための機能を備えた保守ツール４とからなる。
【００３０】
制御装置１（一方をＡ系制御装置、他方をＢ系制御装置と呼ぶ。）は、夫々、運転モード設定処理手段１ａ、同期信号検出手段１ｂ、及び演算処理手段１ｃを備える。
【００３１】
二組の制御装置１は、通常、一方が制御対象９を常時制御している常用系、他方が待機状態にある待機冗長型の二重化制御制御システムの状態に設定され、常用系が故障した場合には待機系に切り替えられるが、制御プログラムの保守のため作業中は、他方が非待機状態となる内部二重制御システムに設定される。
【００３２】
また、保守ツール４は、この二重化制御システムの運転の開始及び停止指令と制御系の冗長構成とを設定する運転モード設定手段４ａ、二組の制御装置１に制御プログラムを作成し、予めローディングするプログラム保守手段４ｂ、及びＡ系制御装置１とＢ系制御装置１と二組の制御出力を比較して夫々にローディングされた制御プログラムの良否を比較判定する制御プログラム比較判定手段４ｃとから成る。
【００３３】
次に、各部の詳細構成を説明する。制御装置１の詳細構成を、図１及び図２を参照して説明する。運転モード設定処理手段１ａ，同期信号検出手段１ｂ及び演算処理手段を備える制御装置１は、例えば、図２に示すようなハードウェアで構成される。
【００３４】
制御装置１は、制御装置１を構成するハードウェアの各部と内部バス１９ａで接続され、運転モードの設定処理及び制御演算を実行するＣＰＵ１１ａ、保守ツール４から設定される運転モード指令出力を、ツールインタフェース１４ａを介して受信し、同期信号検出回路１８ａで検出される相手系の制御装置１の故障状態の有無及び自制御装置１の故障検出回路１３ａで検出される故障状態の有無とか設定される自系の運転モードの状態を記憶する運転状態メモリ１２ａ、自制御装置１の故障を検出し、制御が可能な軽度の故障か不可能な重度の故障かを検出する故障検出回路１３ａを備える。
【００３５】
さらに、制御対象９を制御する制御プログラムを記憶する制御プログラムメモリ１５ａ、予め設定される所定の制御周期単位での制御対象９と授受する制御信号を記憶する制御データメモリ１６ａ、プロセス入出力装置３との制御信号をインタフェースするＰＩＯインタフェース１７ａ、相手系の応答の有無で相手系の故障を検出する同期信号検出回路１８ａ、及びこれらの各部を接続する内部バス１９ａとから成る。
【００３６】
運転モード設定処理手段１ａは、ＣＰＵ１１ａ、運転状態メモリ１２ａ、故障検出回路１３ａから構成され、ツールインタフェース１４ａを介して保守ツール４から送信される運転モード設定信号と、故障検出回路１３ａで検出される故障信号と、同期信号検出回路１ｂから検出される相手系の故障検出信号とから、自系の運転モードを設定して運転状態メモリ１２ａに記憶させるとともに、この運転モードの状態を外部に出力し表示させる。
【００３７】
演算処理手段１ｃは、ＣＰＵ１１ａ、制御プログラムメモリ１５ａ、制御データメモリ１６ａ、及びＰＩＯインタフェース１７ａとから構成され、プロセス入出力装置３から送信される制御対象の検出信号を受信して、制御プログラムメモリ１５ａに記憶される制御プログラムにしたがって制御演算を行い、制御信号をプロセス入出力装置３に送信する。
【００３８】
故障検出回路１３ａは、運転には支障がない程度の軽故障と、運転に支障が有る重故障とを検出する。これらの故障は、運転状態メモリ１２に記憶され重故障が検出されたときには、初期化処理を実行して故障が回復されるか故障か、回復不可能な故障かを運転モード設定処理手段１ａで判定する。
【００３９】
同期信号検出回路１８ａは、送信部１８ａ１、トラッキングメモリ１８ａ２及び受信部１８ａ３とからなり、予め設定される制御周期に同期して、自系及び相手系の制御データ及びトラッキングメモリ１８ａ２に記憶し、トラッキングメモリ１８ａ２に記憶された制御データ及び自系の故障状態を制御周期に同期して相互に通信する送信手段１８ａ１と受信手段１８ａ３とを有し、相手系からの応答の有無によって相手系の故障を検出し、相手系の故障の有無を自系のトラッキングメモリ１８ａ２及び運転状態メモリ１２ａに記憶する。
【００４０】
例えば、Ａ系制御装置１は、前記保守ツール３から常用系として設定された場合には、自系のトラッキングメモリ１８ａ２に記憶された制御データと故障の有無とを他方のＢ系制御装置１のトラッキングメモリ１８ａ２に書き込む初期トラッキング処理を実行し、Ａ系制御装置１が待機系として設定された場合には、自系のトラッキングメモリ１８ａ２に書き込まれた相手系の制御データと故障の有無とを自系の制御データメモリ１６ａ２及び運転状態メモリ１２ａに夫々書き込む。
【００４１】
そして、制御周期毎に相手系との応答通信を行い、一定時間待っても相手系からの応答がない場合には、ＣＰＵ１１ａは、相手系が故障であると判断し、運転モードを一重常用に遷移させ運転状態メモリ１２ａに自系の運転モードを「一重常用あり」と書き込む。
【００４２】
次に、プロセス入出力装置３について説明する。プロセス入出力装置３は、制御対象９からの信号を並列に二組の制御装置１に送る図示しない入力回路と、二組の制御装置１からいずれか一方の制御装置１からの選択信号で送信し、選択された制御装置１からの制御信号を制御対象１に出力する図示しない出力回路とからなる。
【００４３】
次に、保守ツール４について１乃至図３を参照して説明する。保守ツール４の運転モード設定手段４ａは、二組の制御装置１に対して、「制御運転開始」、「制御運転停止」、「内部二重設定指令」、「内部二重解除指令」、及び「内部二重系切り替え指令」信号を送信する。
【００４４】
さらに、プログラム保守手段４ｂでは、内部二重制御状態において、制御装置１で使用する制御プログラムの保守を実行するため、制御装置１の制御プログラムメモリ１５ａに作成した制御プログラムを図示しないプログラム保守手段４ｂのメモリからダウンロード、制御プログラムメモリ１５ａからプログラム保守手段４ｂのメモリにアップロードし制御プログラムの保守を実行する。
【００４５】
また、制御プログラム比較判定手段４ｃは、夫々の制御装置１で実行された制御データを制御データメモリ１６ａから制御プログラム比較判定手段４ｃの図示しないメモリにアップロードして、二組の制御データを比較してその差から制御状態の良否を判定する。
【００４６】
次に、このように構成された二重化制御システムの運転モード設定処理手段１ａで処理された運転モードの遷移状態について、図３を参照して説明する。
【００４７】
図３は、保守ツール４から設定される運転モード指令と、自系の故障の有無と同期信号検出回路１８ａによって検出される相手系の制御装置１の故障の有無とから運転モード設定処理手段１ａで設定される、夫々の運転モードの遷移状態を図示したものである。
【００４８】
実線で囲まれた中に記載されたＡ系、Ｂ系は夫々の制御装置１を示し、下部に付記された記事は、その夫々の運転モード設定処理手段１ａで処理された制御装置の運転モードの状態を付記して示す。
【００４９】
また、破線で囲まれた内容は、保守ツール４の運転モード設定手段４ａからの指令信号を示し、矢印はその指令信号で制御装置１の運転モードが遷移する方向を示し、太線の矢印は、内部二重状態への遷移、内部二重状態からの遷移を示す。
【００５０】
制御装置１が常用系であるか待機系であるかは、予め起動される順序で設定され、通常、先に起動された方が常用系、後から起動された方が待機系として起動させ、夫々の制御装置１は、互いの故障の有無を同期信号検出回路１８ａで検出し、相手系の故障の有無と自系の故障の有無とから自系の運転モードを設定して、運転状態を自動的に遷移させる。
【００５１】
例えば、初期状態は、Ａ系制御装置（以後Ａ系と称す）、Ｂ系制御装置（以後Ｂ系と称す）のいずれもが運転停止状態にある。ここでＡ系の運転モード設定処理手段１ａが運転モード設定手段４ａから送信された「制御運転開始指令」信号を受信すると、Ａ系は「一重常用状態」に遷移し、運転状態メモリ１２ａにその状態を「一重常用あり」と記憶する（ｓ１）。
【００５２】
Ａ系が「一重常用状態」で、「制御運転停止指令」を受信、または故障検出回路１３ａで自系の故障を検出すると、Ａ系は制御運転停止する（ｓ２）。
【００５３】
先に、Ｂ系の運転モード設定処理手段１ａが運転モード設定手段４ａから送信された「制御運転開始指令」信号を受信すると、Ｂ系は「一重常用状態」に遷移させ、運転状態メモリ１２ａにその状態を「一重常用あり」と記憶する（ｓ３）。
【００５４】
Ｂ系が「一重常用状態」で、「制御運転停止指令」を受信、または故障検出回路１３ａで自系の故障を検出すると、Ｂ系は制御運転停止する（ｓ４）。
【００５５】
Ａ系が「一重常用あり」状態で、Ｂ系が「制御運転開始指令」を受信すると、Ａ系は「二重常用あり」状態に、Ｂ系は「二重待機あり」状態に遷移させる（ｓ５）。
【００５６】
ここで、Ｂ系が「制御運転停止指令」を受信し、または、Ｂ系で故障が検出されるとＢ系は運転を停止し、Ａ系は、自系を「一重常用あり」状態に遷移させる（ｓ６）。
【００５７】
以後、Ａ系とＢ系の状態が入れ替わった、例えば、（ｓ５）は（ｓ７）と、（ｓ６）は（ｓ８）と対応する動作については、同様の遷移動作となるのでその説明を省略し、図３左部分に示す、Ａ系、Ｂ系が（ｓ１）から遷移する状態の場合について説明する。
【００５８】
Ａ系が二重常用、Ｂ系が二重待機状態にある二重化制御システム状態にある場合、「内部二重設定指令」を受信するとＡ系は、「内部二重常用」、Ｂ系は「内部二重待機」状態に遷移し、Ａ系運転状態メモリ１２ａにこの状態、即ち内部二重制御システムでの運転状態を「二重常用あり」または「二重待機あり」として記憶する（ｓ９）。
【００５９】
内部二重制御システムへの遷移は、Ａ系が一重常用で、Ｂ系が運転停止状態にある状態で、「内部二重設定指令」を受信した場合にも、Ａ系は二重常用に、Ｂ系は二重待機用の状態に遷移し、内部二重制御システムに移行するように構成される（ｓ９’）。
【００６０】
この内部二重状態は、Ａ系が一重常用で運転中にＢ系が初期化処理を実行すると、Ｂ系はＡ系に対し初期トラッキング処理の要求を送信し、自トラッキングメモリにＡ系のトラッキングメモリに記憶されている制御データ及び故障の有無を書き込みした状態を言う。
【００６１】
内部二重制御システムの状態で、「内部二重解除指令」を受信すると、内部二重制御システムの状態に復帰する（ｓ１０）。
【００６２】
また、内部二重制御システムの状態で、Ｂ系に重故障が検出された場合、Ａ系は内部二重常用に、Ｂ系は運転を停止する（ｓ１３）。ここで、Ｂ系が初期化処理を実行して故障が正常状態に回復した場合、Ｂ系は再び内部二重待機状態に復帰する（ｓ１３’）。
【００６３】
この状態で「制御運転停止指令」を受信、または、内部二重常用状態のＡ系で重故障が検出された場合には、Ａ系は運転を停止する（ｓ１７）。また「内部二重解除指令」を受信すると、Ａ系は一重常用状態に遷移する（ｓ２１）。
【００６４】
また、両系が停止した状態で、「内部二重設定指令」を受信すると、Ａ系は「内部二重常用」状態（ｓ１９）に、さらにＢ系が初期化処理を実行すれば、内部二重制御システムに遷移する。
【００６５】
また、二重化制御システムの状態で、常用系に故障が発生した場合には、このシステムの冗長系の待機系が常用系に遷移する（ｓ１５）。
【００６６】
さらに、内部二重制御システムの状態で、「内部二重切り替え指令」を受信すると、夫々の系は、内部二重常用系は内部二重待機系に、内部二重待機系は内部二重常用系に、夫々の状態を遷移させる（ｓ１６）。
【００６７】
次に、このように構成された内部二重制御システムの運転モード設定処理動作の詳細について図４乃至図７のフロー図を参照して説明する。
【００６８】
図４は、内部二重常用システムとして運転し、さらに、二重化制御システムに遷移させる場合の処理フロー図である。
【００６９】
一方を常用系（Ａ系とする）、他方を待機参入系（Ｂ系）として運転する場合、保守ツール４から常用系に「制御運転開始指令」を送信する。受信したＡ系は、一重常用として運転を開始する（ｓ３１０）。
【００７０】
そして、Ｂ系に電源が投入されると（ｓ３２１）、Ｂ系は自系の初期化処理を実行して（ｓ３２１）、Ａ系に初期トラッキングを要求する（ｓ３１１）。
【００７１】
ここで、制御周期に同期してＡ系の制御データをＢ系に書き込み、両系の制御データが一致する（等値化と言う）され（ｓ３１２）、（ｓ３２２）、正常にその応答が完了するとＡ系は内部二重常用系、Ｂ系は内部二重待機系として動作する内部二重制御システムでの運転を開始する（ｓ３１４）、（ｓ３２４）。
【００７２】
この状態で「内部二重解除指令」を受信すると（ｓ３１５）、（ｓ３２５）、夫々の系は待機冗長型の二重化制御システムの常用系、待機系として、制御周期に同期して互いの状態を監視しながら制御運転を開始する（ｓ３１６）、（ｓ３２６）。
【００７３】
このとき、「内部二重状態あり」状態を保守ツールに表示するようにして置けば、その表示状態を確認して、運転モード設定手段４ａで「内部二重解除指令」を設定することができる。
【００７４】
図５及び図６は、内部二重制御システとして運転中に、待機系及び常用系に故障が発生した場合の処理動作のフロー図である。図５は、一方（Ａ系）が内部二重常用系で、他方（Ｂ系）が内部二重待機系として運転している状態（ｓ４１０）、（ｓ４２０）で、Ｂ系の故障をＡ系が検出した（ｓ４１１）場合、Ａ系は、一重常用系に遷移する（ｓ４１２）。
【００７５】
そして、故障したＢ系（ｓ４２１）は、自系の初期化処理（ｓ４２２）を実行し、Ａ系に初期トラッキングを要求する（ｓ４１３）。初期トラッキング（ｓ４１４、（ｓ４２３）が完了し、その応答動作が正常に完了すると（ｓ４１５）、（ｓ４２４）、夫々の系は、内部二重常用系、内部二重待機系として、制御周期に同期した制御運転を開始する（ｓ４１６）、（ｓ４２５）。
【００７６】
図６に示すように、一方（Ａ系）が内部二重常用系で、他方（Ｂ系）が内部二重待機系として運転している状態（ｓ５１０）、（ｓ５２０）で、Ａ系が故障した場合には（ｓ５１１）、初期化処理を実行し（ｓ５１２）、正常状態に回復すると（ｓ５１３）、Ａ系は、一重常用系に遷移する（ｓ５１４）。
【００７７】
そして、一方、Ｂ系は、Ａ系の故障を検出すると（ｓ５２１）、自系の運転を停止する。（ｓ５２２）。
【００７８】
したがって、内部二重制御システムにおいては、常用系が故障した場合でも、待機系が常用系に移行することが無く、且つ、常用系が故障しない限り、内部二重状態で運転することが可能で、この間において待機系の保守や、制御動作が可能となる。
【００７９】
図７は、内部二重制御システムとして運転中の常用系が故障した場合の自動復帰処理動作のフロー図である。内部二重常用動作しているＡ系（ｓ６１０）と内部二重待機動作している（ｓ６２０）状態で、Ａ系に故障が発生した場合には、図６同様に、Ａ系は自系の初期化処理を実行して（ｓ６１２）正常回復すると（ｓ６１３）、一重常用系に遷移する。
【００８０】
ここで、Ｂ系はＡ系の故障を検知すると（ｓ６２１）、自系は運転を停止せず、自系の初期化処理（ｓ６２２）を実行し、初期トラッキング（ｓ６２３）を規定回数実行して（ｓ６２６）、初期トラッキングが正常に終了することを確認すると（ｓ６２４）、再び内部二重待機系として運転を開始し、Ａ系は初期トラッキング（ｓ６１５）の要求を受けて、初期トラッキング（ｓ６１６）が正常に終了すると（ｓ６１７）、内部二重常用系として再び運転を開始する。
【００８１】
Ｂ系は、初期トラッキングを規定回数実施しても回復しなければ、運転を停止する（ｓ６２７）。
【００８２】
したがって、内部二重で運転中の常用系が１時的に故障すると、常用系は内部二重状態の常用系として復旧し、待機系は内部二重の待機系として復旧することができるため、待機系が常用系に切り替わることなく、故障時の復旧動作が自動的に実行され運転停止時間を最小減に押えて運転を再開することができる。
【００８３】
また、内部二重で運転中の常用系が継続的に故障すると。常用系は初期化処理を繰り返し、待機系は初期化処理と初期トラッキング処理を規定回数繰り返し、故障が回復すれば内部二重系制御システムとして運転を再開し、故障が回復しなければ運転を停止するため、待機系が常用系に遷移することなく待機系での保守作業が可能となり、故障があっても効率の良い制御運転が可能となる。
【００８４】
ゆえに、常用系で継続的な故障が発生しない限り、内部二重の運転状態が可能で、待機系の保守作業が確実に実行できる保守信頼性の高い二重化制御システムとすることができる。
【実施例２】
【００８５】
以下に、本発明の実施例２に係る二重化制御システムの制御装置の制御プログラムの変更方法について、図８及び図１を参照して説明する。
【００８６】
実施例２の各部について、実施例１の二重化制御システムと同一部分は同一符号で示し、その説明を省略する。
【００８７】
本実施例２は、制御プログラムを更新する場合の方法の説明で、保守ツール４から夫々の系の制御データを収集して比較判定し、性能が確認された制御プログラムを使用するようにする点が、実施例１と異なる。
【００８８】
制御プログラム部分的な変更、全体の更新が必要になった場合、二重化制御システムの保守ツール４から、内部二重設定指令送信する（ｓ７０１）。
【００８９】
その状態で、待機系から保守ツール４のプログラム保守手段４ｂに新制御プログラムのダウンロードを要求する（ｓ７０２）。
【００９０】
そして、制御プログラム比較判定手段４ｃから、常用系の稼動中の制御プログラムでの制御データと、待機系にローディングした新制御プログラムでの制御データとをアップロードする（ｓ７０３）。
【００９１】
そして、この両系の制御データの応答の相違（時系列な差）を比較して（ｓ７０４）その相違が予め設定された範囲内で、且つ、いずれの性能が良いかを判定し（ｓ７０５）、新制御プログラムの性能が良いと判断された場合には、「内部二重化切り替え指令」を送信して、新制御プログラムでの制御運転を開始させる。
【００９２】
したがって、内部二重の状態では待機系が常用系に自動的に切り替わることが無く、常用系と待機系とに異なる制御プログラムをローディングして夫々の制御データをアップロードして、制御性能を比較判定し、新制御プログラムの制御性能を確認して常用系と待機系を切り替えるようにしたので、制御プログラムの交換作業を安全、且つ確実に行うことが可能となる。
【００９３】
本発明は、上述した実施例に何ら限定されるものではなく、常用系が故障した場合に、待機系が常用系に自動的に切り替わらず、且つ、故障した系を効率よく回復させるものであれば良く、また、故障状態からの回復処理は本発明の主旨を逸脱しない範囲で種々変形して実施することが可能である。
【図面の簡単な説明】
【００９４】
【図１】本発明の二重化制御システムの構成図。
【図２】本発明の二重化制御システムの機能ブロック図。
【図３】本発明の二重化制御システムの運転状態の遷移の説明図。
【図４】本発明の実施例１に係る二重化制御システムの運転フロー図。入出力装置が全て存在しない場合の模擬の構成。
【図５】本発明の実施例１に係る二重化制御システムの運転フロー図。
【図６】本発明の実施例１に係る二重化制御システムの運転フロー図。
【図７】本発明の実施例１に係る二重化制御システムの運転フロー図。
【図８】本発明の実施例２に係る二重化制御システムの制御プログラムの更新方法を説明するフロー図。
【図９】従来の二重化制御システムのプログラムのメインテナンス方法を説明する構成図。
【符号の説明】
【００９５】
１  Ａ系制御装置
１ａ  運転モード設定処理手段
１ｂ  同期信号検出手段
１ｃ  演算処理手段
２  Ｂ系制御装置
３  プロセス入出力装置
４  保守ツール
４ａ  運転モード設定手段
４ｂ  プログラム保守手段
４ｃ  制御プログラム比較判定手段
９  制御対象
１１ａ  ＣＰＵ
１２ａ  運転状態メモリ
１３ａ  故障検出回路
１４ａ  ツールインタフェース
１５ａ  制御プログラムメモリ
１６ａ  制御データメモリ
１７ａ  ＰＩＯインタフェース
１８ａ  同期信号検出回路
１８ａ１  送信部
１８ａ２  トラッキングメモリ
１８ａ３  受信部
１９  プラント
２０  制御装置
２１  ＣＰＵ  Ａ系
２２  ＣＰＵ  Ｂ系
２３  ＰＩＯ
２４  模擬試験装置
２６  専用保守装置
１１１  プログラム
１１５  別プログラム
【図１】
0004799166.tif 000002
【図２】
0004799166.tif 000003
【図３】
0004799166.tif 000004
【図４】
0004799166.tif 000005
【図５】
0004799166.tif 000006
【図６】
0004799166.tif 000007
【図７】
0004799166.tif 000008
【図８】
0004799166.tif 000009
【図９】
0004799166.tif 000010