(57)【要約】      （修正有）【課題】機器コスト、設置スペースの負担が小さく、可用性、信頼性の高い待機冗長多重化制御装置を提供する。【解決手段】プラント機器の制御情報を記録し管理するメモリ及び入出力処理部を有し、プラント機器回線の集線及び制御を行うプラントコンセントレータと複数のＣＰＵ３とを備え、フィールド機器とのデータの入出力を行うプロセス入出力装置４、プラント監視装置及びプラント情報を通信するサーバとが接続された待機冗長多重化制御装置であって、複数のＣＰＵは、第１の制御演算プログラムを実行する第１のＣＰＵと、第１のＣＰＵに代替して、第２の制御演算プログラムを読み込み実行する第２のＣＰＵとを含むことを特徴とする待機冗長多重化制御装置。【選択図】図１
2020038416.tif 000002
【特許請求の範囲】
【請求項１】
プラント機器の制御情報を記録し管理するメモリ及び入出力処理部を有し、プラント機器回線の集線及び制御を行うプラントコンセントレータと複数のＣＰＵとを備え、
フィールド機器とのデータの入出力を行うプロセス入出力装置、プラント監視装置及びプラント情報を通信するサーバとが接続された待機冗長多重化制御装置であって、
前記複数のＣＰＵは、第１の制御演算プログラムを実行する第１のＣＰＵと、
前記第１のＣＰＵに代替して、第２の制御演算プログラムを読み込み実行する第２のＣＰＵとを含むことを特徴とする待機冗長多重化制御装置。
【請求項２】
前記第２のＣＰＵが読み込む前記第２の制御演算プログラムは、
前記第１のＣＰＵが実行する前記第１の制御演算プログラムと同一であることを特徴とする請求項１に記載の待機冗長多重化制御装置。
【請求項３】
前記メモリは、前記第２の制御演算プログラムを保存していることを特徴とする請求項１又は請求項２に記載の待機冗長多重化制御装置。
【請求項４】
前記第１のＣＰＵは異常が見いだされると、前記第２のＣＰＵに代替されることを特徴とする請求項１から請求項３のいずれか１項に記載の待機冗長多重化制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、プラントコンセントレータを備えた待機冗長多重化制御装置に関するものである。
【背景技術】
【０００２】
工場等で機械及び装置に用いる制御装置では、プログラムの実行及びデータの演算処理を行うＣＰＵ、制御機器とプロセスデータの授受を行うプロセス入出力装置及び通信装置等が数多く接続されて構成されている。このような制御装置のうち、特に可用性及び信頼性が求められる発電プラント等のプラント制御装置では、制御装置の故障に対しても対応できるよう冗長性を有する多重化構造が用いられている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５９０８０６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
高い可用性及び信頼性が求められる発電プラント等の多重化制御装置では、制御系システムの異常時に備え、制御系システムと同一の構成のＣＰＵ、プロセス入出力装置等を待機系システムとして備えることが必要である。
【０００５】
制御系システムの故障は、待機系システムを構成する対応する機器により補完される。そのため制御系システムが複数の制御対象を有する場合、制御系システムが大規模となると同時に待機系システムも大規模となり、機器のコスト、設置スペースの負担が大きくなるという問題がある。
【０００６】
本願は、上記のような課題を解決するためになされたもので、発電プラント等の高い可用性、信頼性が求められる待機冗長多重化制御装置であって、機器コスト、設置スペースの負担が小さい待機冗長多重化制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００７】
本願の待機冗長多重化制御装置は、プラント機器の制御情報を記録し管理するメモリ及び入出力処理部を有し、プラント機器回線の集線及び制御を行うプラントコンセントレータと複数のＣＰＵとを備え、フィールド機器とのデータの入出力を行うプロセス入出力装置、プラント監視装置及びプラント情報を通信するサーバとが接続された待機冗長多重化制御装置であって、複数のＣＰＵは、第１の制御演算プログラムを実行する第１のＣＰＵと、第１のＣＰＵに代替して、第２の制御演算プログラムを読み込み実行する第２のＣＰＵとを含むことを特徴とするものである。
【発明の効果】
【０００８】
本願の待機冗長多重化制御装置は、発電プラント等の高い可用性及び信頼性が求められる多重化制御装置を、小さな機器コスト、設置スペースで得ることができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１におけるプラント制御装置の全体構成図である。
【図２】実施の形態１におけるプラントコンセントレータの構成図である。
【図３】実施の形態１における共有メモリ情報テーブルのデータ配列を示す図である。
【図４】実施の形態１における制御演算プログラム情報テーブルのデータ配列を示す図である。
【図５】実施の形態１における制御演算情報テーブルのデータ配列を示す図である。
【図６】実施の形態１における接続されている機器の状態遷移を示す図である。
【図７】実施の形態１におけるＣＰＵ実行時間スケジュールを示す図である。
【図８】実施の形態１における制御演算プログラムの実行監視フロー図である。
【図９】実施の形態２における制御演算プログラム変更フロー図である。
【図１０】実施の形態３におけるプラントコンセントレータの構成図である。
【発明を実施するための形態】
【００１０】
実施の形態の説明及び各図において、同一の符号を付した部分は、同一又は相当する部分を示すものである。
【００１１】
実施の形態１．
本実施の形態について図１から図８を用いて説明する。図１はプラント制御装置の全体構成図、図２はプラントコンセントレータの構成図、図３から図５はプラントコンセントレータを構成する共有メモリ情報テーブル、制御演算プログラム情報テーブル、制御演算情報テーブルのデータ配列を説明する図である。図６は接続されている機器の状態遷移を示し、図７はＣＰＵ実行時間スケジュール、図８は制御演算プログラムの実行監視フローであり、制御演算プログラムを実行しているＣＰＵで異常が発生した時の代替ＣＰＵへの切り替えフローを示している。
【００１２】
＜プラント制御装置の構成＞
図１は本実施の形態におけるプラント制御装置１の構成を示している。
プラント制御装置１は発電プラント等を構成するボイラー、タービン、発電機等の発電設備６の運転状況を確認し、状況に応じた対処方法等を各発電設備６へ指示するものであり、ＣＰＵ３及び発電設備６の状況を取得するフィールド機器であるセンサ又はアクチエータ５に接続するＰＩＯ（プロセス入出力装置）４、ＨＭＩ（プラント監視装置）７、さらにサーバ８がプラントコンセントレータ１０を中心として接続している。
【００１３】
本実施の形態においては、プラントコンセントレータ１０を中心として、スター型の接続形態を用いているが、その他の、バス型、リンク型等とすることもできる。また、接続に必要な通信プロトコルは特に限定するものではなく、ＴＣＰ、ＵＤＰ、ＩＰ及びインサーネット（登録商標）等の汎用の通信プロトコル処理を用いることができる。さらに、本実施の形態の図１においては、ＣＰＵ３、ＨＭＩ７、ＰＩＯ４、センサ又はアクチエータ５は、それぞれ複数個を接続した状態を記載しているが、制御する発電設備６の種類等によって接続する装置の数は種々変えて用いることができる。
【００１４】
図１中の破線で囲んだ、５個のＣＰＵ３とプラントコンセントレータ１０からなる部分は待機冗長多重化制御装置２であり、図２にプラントコンセントレータ１０の構成を詳細に示している。
【００１５】
プラントコンセントレータ１０は、データを受信する入力部１１と受信したデータを処理する入出力処理部１２、処理したデータを送信する出力部１３とを有している。ここで、入力部１１、出力部１３でのデータの授受は、インサーネット（登録商標）等の汎用のプロトコル処理により行うことができる。
【００１６】
また、プラントコンセントレータ１０には駆動に必要な情報、データを蓄積する共有メモリ情報テーブル１４、制御演算情報テーブル１５、共有メモリ１６、制御演算プログラム情報テーブル１７、プログラム格納ファイルシステム１８を備えている。
【００１７】
入力部１１では、共有メモリ情報テーブル１４と制御演算情報テーブル１５とを参照して、入出力処理が必要であれば、入力部１１から入出力処理部１２へデータの受け渡しを行い、入出力処理部１２で入出力処理を行った後、処理したデータは入出力処理部１２から出力部１３へデータを受け渡し、最後に出力部１３から送信する。
【００１８】
入力部１１において、共有メモリ情報テーブル１４と制御演算情報テーブル１５とに基づき入出力処理が必要でなければ、入力部１１から直接、出力部１３へ受け渡し、出力部１３から送信する。また、入力部１１は共有メモリ情報テーブル１４を参照し、共有メモリ１６への書き込みが必要であれば、書き込みを行い、逆に共有メモリからの読み出しが必要であれば読み出しを行い、その後データを送信する。
【００１９】
＜各テーブルのデータ配列＞
共有メモリ情報テーブル１４、制御演算プログラム情報テーブル１７及び制御演算情報テーブル１５のデータ配列を図３から図５を沿って説明する。
図３は、共有メモリ情報テーブル１４のデータ配列を示す図であり、プラントコンセントレータ１０に接続される機器を識別するための機器識別子１０１、各接続機器が書き込むことができる共有メモリ１６の先頭アドレス１０２とサイズ１０３で構成されている。機器識別子１０１、共有メモリの書き込みの先頭アドレス１０２、サイズ１０３はいずれも、あらかじめプラントコンセントレータ１０に設定されている。
【００２０】
図４は、制御演算プログラム情報テーブル１７のデータ配列を示している。
制御演算プログラム情報テーブル１７は、プラントコンセントレータ１０に設けられたプログラム格納ファイルシステム１８に格納されたプログラム数２０１と、そのプログラム数２０１に対応した制御演算プログラム情報２１０とから構成されている。ここで、制御演算プログラム情報２１０とは、一例として制御演算プログラムのファイル名２１１、プラントコンセントレータ１０に接続される機器が制御演算プログラムを識別するためのプログラム識別子２１２、ＣＰＵ３での制御演算の実行周期２１３で構成されている。
【００２１】
図４においては、プログラム識別子２１２、制御演算の実行周期２１３を制御演算プログラム情報２１０に含めて説明したが、これらの情報は制御演算プログラムの中に含めてデータ管理することもできる。
【００２２】
図５は、制御演算情報テーブル１５のデータ配列を示す図である。制御演算情報テーブル１５は、プログラム識別子３０１に示された制御演算プログラムを実行しているＣＰＵ３の機器識別子３１１と共有メモリの書き込みエリアの先頭アドレス３２１とサイズ３２２を示している。
プログラム識別子３０１は、制御演算プログラム情報テーブル１７で実行している制御演算プログラムのファイル名２１１と対応して設定され、機器識別子３１１、共有メモリの書き込みエリアの先頭アドレス３２１とサイズ３２２は、制御演算プログラム実行時に設定される。
【００２３】
＜待機冗長多重化制御装置の動作＞
図６は、プラントコンセントレータ１０に接続される機器の状態遷移図である。プラントコンセントレータ１０に接続される機器の状態には、待機状態４０１、動作状態４０２、異常状態４０３があり、共有メモリ情報テーブル１４に示される。
【００２４】
図７は、ＣＰＵ３の実行時間スケジュールを示しており、左から右方向へ時間の経過を示している。機器の状態が待機状態４０１であれば、実行周期（Ｔ）５０１の初期値の間に制御演算５０３を除いて、データ入力５０２とデータ出力５０４の処理のみを実行し、次の実行周期までの空き５０５の時間はそのまま保持される。
動作状態４０２の場合、ＣＰＵ３がプラントコンセントレータ１０から制御演算プログラムを読み出した際に制御演算プログラム情報テーブル１７から取得した実行周期２１３を実行周期（Ｔ）５０１の初期値と置き換え、制御演算５０３に必要なデータ入力５０２、制御演算プログラムによる制御演算５０３の実行、制御演算結果のデータ出力５０４を行い、次の実行周期（Ｔ＋１）までの空き５０５の時間はそのまま保持される。
異常状態４０３の場合は、何もせず、リセットすることにより待機状態４０１へ移行する。
【００２５】
また、ＣＰＵ３は、データ入力５０２の際に、プラントコンセントレータ１０からの状態指示５０６を読み込み、指示された状態に移行して、データ出力５０４の際には逆に状態通知５０７としてその状態を共有メモリ１６に書き込む。
【００２６】
状態指示５０６は、例えば、ＣＰＵ３の機器識別子３１１とＣＰＵ３の状態を対とした形式で、プラントコンセントレータ１０の共有メモリ１６の定められた書き込みエリアに保存されている。状態指示５０６の初期設定としては、多くの場合、待機状態４０１とすることが好ましい。
状態通知５０７は、一例としては、ＣＰＵ３に対応する共有メモリ１６の書き込みエリアに、そのＣＰＵ３の状態と実行周期ごとに自動増加させたカウンタ値とを組み合わせて書き込みを行う。
【００２７】
図８は、本実施の形態における、プラントコンセントレータ１０が実施する制御演算プログラムの実行監視フローを示している。このフローは、制御演算プログラム情報テーブル１７に示された制御演算プログラム毎に実施され、制御演算プログラムを実施しているＣＰＵ３について異常が発生した時に代替ＣＰＵ３へ切り替えを行う工程を示すものである。
【００２８】
なお、各ＣＰＵ３の異常状態を検出するための具体的な手法としては、一例としては、あらかじめ定められた時間間隔又は実行周期２１３の半分の時間間隔毎に監視し、自動増加のカウンタ値が実行周期内に変化していることを確認する方法等があるが、本願の本質ではなく、実行監視フローの詳細な説明を複雑とするため、ここでは省略する。
【００２９】
プラントコンセントレータ１０は、制御演算情報テーブル１５を参照し、監視対象である制御演算プログラムが実行されている機器識別子３１１の状態通知５０７が動作状態４０２を示していることを確認する（ステップＳ１１）。状態通知５０７が動作状態４０２であれば、次回の監視時間までそのままの状態で動作を継続する（ステップＳ１２）。
状態通知５０７が動作状態４０２でない場合、制御演算プログラムを現在実行しているＣＰＵ３から他の待機状態４０１のＣＰＵ３に切り替える必要があり、そのためにステップＳ２１からステップＳ２５までの処理を実施する。
【００３０】
監視対象である制御演算プログラムが実行されている機器識別子３１１の状態通知５０７が動作状態４０２でない場合、状態通知５０７に基づき待機状態４０１となっているＣＰＵ３の中から選択する（ステップＳ２１）。
制御演算プログラム情報テーブル１７を参照し、監視対象となっている制御演算プログラムをプログラム格納ファイルシステム１８から通信プロトコルにより通信し、前工程（ステップＳ２１）で選択したＣＰＵ３へ書き込みを行う（ステップＳ２２）。
【００３１】
制御演算情報テーブル１５を参照して、監視対象となっている制御演算プログラムの機器識別子３１１が有効か否かを確認する（ステップＳ２３）。機器識別子３１１が有効でない場合、監視対象である制御演算プログラムは実行されていないので、共有メモリ情報テーブル１４を参照し、ステップＳ２１で選択したＣＰＵ３の機器識別子１０１に該当する共有メモリ書き込み先頭アドレス１０２とサイズ１０３を制御演算情報テーブル１５の共有メモリ書き込み先頭アドレス３２１とサイズ３２２に設定する（ステップＳ３１）。
【００３２】
ステップＳ２３において、機器識別子３１１が有効と判断された場合、又は有効ではないもののステップＳ３１で共有メモリ情報の更新を行った場合、選択したＣＰＵ３の機器識別子１０１を制御演算情報テーブル１５の機器識別子３１１に設定する（ステップＳ２４）。最後に、機器識別子３１１の状態指示５０６に動作状態４０２に設定し（ステップＳ２５）、代替ＣＰＵ３への切り替え処理を完了することができる。
【００３３】
以上のように、本実施の形態においては、プラントコンセントレータ１０を複数のＣＰＵ３と合わせて用いることにより待機冗長多重化制御装置を構成し、プラントコンセントレータ１０が接続したＣＰＵ３及びＰＩＯ４等のプラント制御に必要な情報を共有メモリ１６に集約してＣＰＵ３で実行する制御演算プログラムを格納している。これにより、ＣＰＵ３で異常が発生した際に代替ＣＰＵ３への切り替え処理を行うことができ、構成するＣＰＵ３の数と格納するプログラム数２０１との関係を調整することで、種々のレベルの冗長性を図ることができる。
【００３４】
例えば、制御演算プログラムのプログラム数２０１より1つ多いＣＰＵ３を備えることで冗長化が可能であり、小さい機器コスト及び設置スペースの負担で多重化制御装置を得ることができる。また、可用性及び信頼性を高めるためには、制御演算プログラムの数の２倍以上のＣＰＵを備えることで、従来の多重化制御装置に用いていたものと同等の冗長化を図ることができ、可用化及び信頼性のレベルを柔軟に調整することもできる。
【００３５】
実施の形態２．
実施の形態１ではＣＰＵ３に異常が発生した場合について述べたが、本実施の形態においては、同様の待機冗長多重化制御装置２を用いて、用いたＣＰＵ３の異常の発生とは無関係に、制御動作を停止することなく、制御演算プログラムを変更する手順を述べる。
【００３６】
図９は本実施の形態における、制御演算プログラム変更フロー図を示している。
まず、変更する新たな制御演算プログラムをプログラム格納ファイルシステム１８に格納し（ステップＳ１０１）、状態通知５０７を参照して待機状態４０１となっているＣＰＵ３を選択する（ステップＳ１０２）。
【００３７】
ステップＳ１０１でプログラム格納ファイルシステム１８に格納した変更後の制御演算プログラムを通信プロトコルによりステップＳ１０２で選択したＣＰＵ３へ書き込み（ステップＳ１０３）、変更する制御演算プログラム情報２１０のファイル名２１１を変更後の制御演算プログラムのファイル名２１１に更新する（ステップＳ１０４）。
【００３８】
これまでに実行していたＣＰＵ３の状態指示５０６を待機状態４０１に設定し（ステップＳ１０５）、ステップＳ１０２で選択したＣＰＵ３の機器識別子１０１に更新し（ステップＳ１０６）、当該ＣＰＵ３の状態指示５０６を動作状態４０２に設定する（ステップＳ１０７）。
【００３９】
以上の手順に従うことで、制御動作を止めることなく、制御演算プログラムを変更することができる。
プラントコンセントレータ１０を用い、変更前後の制御演算プログラムを一元に管理することができ、制御系及び待機系のプログラムを個別に入れ替える必要がなく、保守性を高めることができる。
【００４０】
実施の形態３．
実施の形態１では、プラントコンセントレータ１０を単体で用いた時の構成及び動作等について述べた。本実施の形態においては、待機冗長多重化制御装置２の可用化及び信頼性をより向上させる装置構成について述べる。本実施の形態では、図１０に示すように、ハブ２００に２つのプラントコンセントレータ１０、１００とＣＰＵ３及びプラント制御に必要なＰＩＯ４等が接続されている。
【００４１】
２つのプラントコンセントレータ１０、１００は、別の経路で入力部１１、出力部１３と接続されており、両者の共有部分に異常処理部２０を備えている。このような構成を採用することで、２つのプラントコンセントレータ１０、１００を主系及び従系として用いることができる。つまり、主系のプラントコンセントレータ１０の異常処理部２０が異常を検出すると、従系のプラントコンセントレータ１００へ通知し、従系のプラントコンセントレータ１００が異常処理を引き継ぐことで、可用性及び信頼性の高い多重化制御装置２を得ることができる。
【００４２】
本実施の形態に示した待機冗長多重化制御装置２では、共有メモリ情報テーブル１４に記録する機器識別子１０１、共有メモリ書き込みエリアの先頭アドレス１０２及びサイズ１０３については、ハブ２００に接続されたＣＰＵ３、ＰＩＯ４等の各機器が、ＩＰブロードキャスト通信又はマルチキャスト通信による同時データ配信機能を有することによりデータを送信し、共有メモリ１６の内容を同一とすることができる。
【００４３】
また、本実施の形態の待機冗長多重化制御装置２では、主系で実施される実行監視及びプログラム変更の手順により変更される制御演算情報テーブル１５、制御演算プログラム情報テーブル１７、プログラム格納ファイルシステム１８の内容は、変更される際にコンセントレータ１０及び１００が直接接続されている経路を経て、主系から従系へ通知され、それに基づいて従系において自身の情報を更新することで、両者のデータの同一性を保つことが得きる。なお、従系の出力部は、ハブ２００へのデータ出力は抑止されているので、主系が出力するデータと重複することもない。
【００４４】
本願は、様々な例示的な実施の形態及び実施例が記載されているが、１つまたは複数の実施の形態に記載された様々な特徴、態様、及び機能は特定の実施の形態の適用に限られるのではなく、単独で、または様々な組み合わせで実施の形態に適用可能である。
従って、例示されていない無数の変形例が、本願明細書に開示される技術の範囲内において想定される。例えば、少なくとも１つの構成要素を変形する場合、追加する場合または省略する場合、さらには、少なくとも１つの構成要素を抽出し、他の実施の形態の構成要素と組み合わせる場合が含まれるものとする。
【符号の説明】
【００４５】
１  プラント制御装置、２  待機冗長多重化制御装置、３  ＣＰＵ、４  ＰＩＯ、５  センサ又はアクチエータ、６  発電設備、７  ＨＭＩ、８  サーバ、１０  プラントコンセントレータ、１１  入力部、１２  入出力処理部、１３  出力部、１４  共有メモリ情報テーブル、１５  制御演算情報テーブル、１６  共有メモリ、１７  制御演算プログラム情報テーブル、１８  プログラム格納ファイルシステム、２０  異常処理部、１００  プラントコンセントレータ、１０１  機器識別子、１０２  先頭アドレス、１０３  サイズ、２００  ハブ、２０１  プログラム数、２１０  制御演算プログラム情報、２１１  ファイル名、２１２  プログラム識別子、２１３  実行周期、３０１  プログラム識別子、３１１  機器識別子、３２１  先頭アドレス、３２２  サイズ、４０１  待機状態、４０２  動作状態、４０３  異常状態、５０１  実行周期、５０２  データ入力、５０３  制御演算、５０４  データ出力、５０５  空き、５０６  状態指示、５０７  状態通知。
【図１】
2020038416.tif 000003
【図２】
2020038416.tif 000004
【図３】
2020038416.tif 000005
【図４】
2020038416.tif 000006
【図５】
2020038416.tif 000007
【図６】
2020038416.tif 000008
【図７】
2020038416.tif 000009
【図８】
2020038416.tif 000010
【図９】
2020038416.tif 000011
【図１０】
2020038416.tif 000012