(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-06
(45)【発行日】2024-12-16
(54)【発明の名称】プラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法
(51)【国際特許分類】
G05B 9/02 20060101AFI20241209BHJP
【FI】
G05B9/02 Z
(21)【出願番号】P 2021029627
(22)【出願日】2021-02-26
【審査請求日】2023-10-25
【前置審査】
(73)【特許権者】
【識別番号】000006013
【氏名又は名称】三菱電機株式会社
(74)【代理人】
【識別番号】110002941
【氏名又は名称】弁理士法人ぱるも特許事務所
(72)【発明者】
【氏名】深水 大樹
【審査官】田中 友章
(56)【参考文献】
【文献】特開平7-21030(JP,A)
【文献】特開2002-342102(JP,A)
【文献】特開平10-260845(JP,A)
【文献】特開2001-202101(JP,A)
【文献】特開2016-197319(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 9/02
G06F 11/00
(57)【特許請求の範囲】
【請求項1】
被制御装置を制御する制御系の制御装置と、前記制御系の制御装置と同じ構成のバックアップ装置としての待機系の制御装置とが二重化された二重化制御装置と、
前記二重化制御装置への入出力を行う入出力装置と、
前記二重化制御装置の2つの前記制御装置のプログラムの編集および
2つの前記制御装置が使用するデータのエンジニアリングを行うエンジニアリングツールと、
前記二重化制御装置と前記入出力装置と前記エンジニアリングツールと前記被制御装置の間を接続して通信を行う保守ネットワークとを備え、
それぞれの前記制御装置は、前記制御装置のプログラムを格納する第一プログラムメモリ領域および前記制御装置の前記プログラムを格納する第二プログラムメモリ領域と、
前記第一プログラムメモリ領域と前記第二プログラムメモリ領域とを同値化する同値化処理部と、
前記入出力装置からの入力データを読み込んで前記第一プログラムメモリ領域上及び前記第二プログラムメモリ領域上の前記プログラムを実行する演算処理部とを備え、
前記第一プログラムメモリ領域と前記第二プログラムメモリ領域は、
一方が前記被制御装置の制御を行う実行領域であるとき、他方は、前記被制御装置の制御を行わない非実行領域であり、前記実行領域と前記非実行領域は入れ替え可能であり、
前記制御系の制御装置の前記実行領
域上の更新前のプログラムと、前記待機系の制御装置の前記非実行領
域に書き込まれた更新プログラムとのモニタリング結果を表示するモニタ部を備え
、
前記制御系の制御装置の前記実行領域および前記待機系の制御装置の前記実行領域においてそれぞれ、前記被制御装置を制御する前記プログラムが動作している際に、
前記待機系の制御装置の前記非実行領域の前記プログラムを更新版プログラムに書換え、
前記待機系の制御装置の前記実行領域と前記非実行領域とを入れ替え、
前記待機系の制御装置の前記実行領域の内容を前記待機系の制御装置の前記非実行領域の内容で同値化させ、
前記制御系の制御装置を待機系の制御装置とし、前記待機系の制御装置を制御系の制御装置とし、
現在の待機系の前記制御装置の前記非実行領域の前記プログラムを前記更新版プログラムに書換え、
現在の待機系の前記制御装置の前記実行領域の内容を前記現在の待機系の前記制御装置の前記非実行領域の内容で同値化させるプラント計装制御システム。
【請求項2】
前記エンジニアリングツールは、
前記待機系の制御装置の前記
非実行領域の前記プログラムによる前記演算処理部の出力値の正常範囲を設定する正常範囲設定ファイルと、
前記待機系の制御装置の前記演算処理部の出力値と前記正常範囲設定ファイルに記載の出力値とを比較し、前記待機系の制御装置の前記
非実行領域の前記プログラムの書換え作業を続行するか否かを判定する自動判定処理部とを備える請求項1に記載のプラント計装制御システム。
【請求項3】
前記待機系の制御装置の前記
非実行領域の前記プログラムを更新版プログラムに書換える第一書換工程と、
前記待機系の制御装置の前記
実行領域
の内容を前記待機系の制御装置の前記
非実行領域
の内容で同値化させる第一同値化工程と、
前記制御系の制御装置を待機系の制御装置とし、前記待機系の制御装置を制御系の制御装置とする制待入替工程と、
現在の待機系の制御装置の前記
非実行領域の前記プログラムを
前記更新版プログラムに書換える第二書換工程と、
現在の待機系の制御装置の前記
実行領域
の内容を前記
現在の待機系の制御装置の前記
非実行領域
の内容で同値化させる第二同値化工程とを備える請求項1又は請求項2に記載のプラント計装制御システムのプログラムの書換え方法。
【請求項4】
前記第一書換工程の後に、現在の制御系の前記制御装置の実行領域のプログラムの出力結果と、現在の待機系の前記制御装置の前記
非実行領域の更新版プログラムの出力結果を比較する第一比較工程と、
前記第二書換工程の後に、現在の制御系の前記制御装置の実行領域のプログラムの出力結果と、現在の待機系の前記制御装置の前記
非実行領域の
前記更新版プログラムの出力結果を比較する第二比較工程とを備える請求項3に記載のプラント計装制御システムのプログラムの書換え方法。
【請求項5】
前記第一書換工程と前記第二書換工程の後に
それぞれ、
現在の待機系の前記制御装置の前記実行領域と前記非実行領域を入れ替える実行領域入替工程を備える請求項4に記載のプラント計装制御システムのプログラムの書換え方法。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、プラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法に関するものである。
【背景技術】
【0002】
従来、計装制御システムにおいては、二重化制御装置のプログラムの更新時に、更新版プログラムを実稼働させる前には、まず、待機系制御装置に更新版プログラムを導入し、依然として更新前プログラムが動作する制御系制御装置の入力データを待機系制御装置の入力として更新版プログラムを動作させ、更新前後の両プログラムの動作結果を比較している(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来のプラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法においては、待機系制御装置へ更新版プログラムを書込みし、更新前後の両プログラムの動作結果を比較検証した結果、プログラムに誤りがあることが判明し、更新前の状態に戻す必要がある場合は、再度、オペレータがエンジニアリングツールから待機系制御装置に更新前プログラムを書込み直す必要があり手間がかかるという課題があった。
【0005】
また、待機系制御装置へ更新版プログラムを書込みし、更新版プログラムの動作検証が未完了の段階で、外乱などの要因で異常が発生し、制御装置間で制御系、待機系の切替えが行われた場合に、未検証の更新版プログラムが実稼働してしまうなどの課題があった。
【0006】
本願は、上記のような課題を解決するための技術を開示するものであり、待機系制御装置へ更新版プログラムを書込みし、更新前後の両プログラムの動作結果を比較検証した結果、プログラムに誤りがあることが判明し、更新前の状態に戻す必要がある場合に、容易に復元でき、また、待機系制御装置へ更新版プログラムを書込みし、更新版プログラムの動作検証が未完了の段階で、外乱などの要因で異常が発生し、制御装置間で制御系、待機系の切替えが行われた場合に、未検証の更新版プログラムで実稼働してしまうことを防止できるプラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本願に開示されるプラント計装制御システムは、
被制御装置を制御する制御系の制御装置と、前記制御系の制御装置と同じ構成のバックアップ装置としての待機系の制御装置とが二重化された二重化制御装置と、
前記二重化制御装置への入出力を行う入出力装置と、
前記二重化制御装置の2つの前記制御装置のプログラムの編集および2つの前記制御装置が使用するデータのエンジニアリングを行うエンジニアリングツールと、
前記二重化制御装置と前記入出力装置と前記エンジニアリングツールと前記被制御装置の間を接続して通信を行う保守ネットワークとを備え、
それぞれの前記制御装置は、前記制御装置のプログラムを格納する第一プログラムメモリ領域および前記制御装置の前記プログラムを格納する第二プログラムメモリ領域と、
前記第一プログラムメモリ領域と前記第二プログラムメモリ領域とを同値化する同値化処理部と、
前記入出力装置からの入力データを読み込んで前記第一プログラムメモリ領域上及び前記第二プログラムメモリ領域上の前記プログラムを実行する演算処理部とを備え、
前記第一プログラムメモリ領域と前記第二プログラムメモリ領域は、
一方が前記被制御装置の制御を行う実行領域であるとき、他方は、前記被制御装置の制御を行わない非実行領域であり、前記実行領域と前記非実行領域は入れ替え可能であり、
前記制御系の制御装置の前記実行領域上の更新前のプログラムと、前記待機系の制御装置の前記非実行領域に書き込まれた更新プログラムとのモニタリング結果を表示するモニタ部を備え、
前記制御系の制御装置の前記実行領域および前記待機系の制御装置の前記実行領域においてそれぞれ、前記被制御装置を制御する前記プログラムが動作している際に、
前記待機系の制御装置の前記非実行領域の前記プログラムを更新版プログラムに書換え、
前記待機系の制御装置の前記実行領域と前記非実行領域とを入れ替え、
前記待機系の制御装置の前記実行領域の内容を前記待機系の制御装置の前記非実行領域の内容で同値化させ、
前記制御系の制御装置を待機系の制御装置とし、前記待機系の制御装置を制御系の制御装置とし、
現在の待機系の前記制御装置の前記非実行領域の前記プログラムを前記更新版プログラムに書換え、
現在の待機系の前記制御装置の前記実行領域の内容を前記現在の待機系の前記制御装置の前記非実行領域の内容で同値化させるものである。
本願に開示されるプラント計装制御システムのプログラム書換え方法は、
前記待機系の制御装置の前記非実行領域の前記プログラムを更新版プログラムに書換える第一書換工程と、
前記待機系の制御装置の前記実行領域の内容を前記待機系の制御装置の前記非実行領域の内容で同値化させる第一同値化工程と、
前記制御系の制御装置を待機系の制御装置とし、前記待機系の制御装置を制御系の制御装置とする制待入替工程と、
現在の待機系の制御装置の前記非実行領域の前記プログラムを前記更新版プログラムに書換える第二書換工程と、
現在の待機系の制御装置の前記実行領域の内容を前記現在の待機系の制御装置の前記非実行領域の内容で同値化させる第二同値化工程とを備えるものである。
【発明の効果】
【0008】
本願に開示されるプラント計装制御システムのプログラムの書換え方法によれば、
待機系制御装置へ更新版プログラムを書込みし、更新前後の両プログラムの動作結果を比較検証した結果、プログラムに誤りがあることが判明し、更新前の状態に戻す必要がある場合容易に元に戻せる。
【0009】
また、待機系制御装置へ更新版プログラムを書込みし、更新版プログラムの動作検証が未完了の段階で、外乱などの要因で異常が発生し、制御装置間で制御系、待機系の切替えが行われた場合であっても、未検証の更新版プログラムが実稼働することはない。
【図面の簡単な説明】
【0010】
【
図1】実施の形態1によるプラント計装制御システムの構成を示す図である。
【
図4】実施の形態1による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図5】実施の形態1による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図6】実施の形態1による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図7】実施の形態1による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図8】実施の形態2による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図9】実施の形態2による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図10】実施の形態3による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図11】実施の形態3による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図12】実施の形態3による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図13】実施の形態4による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図15】実施の形態4による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図16】実施の形態4による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【
図17】実施の形態4による二重化制御装置のプログラムの書換え方法を時系列に沿って説明する図である。
【発明を実施するための形態】
【0011】
実施の形態1.
以下、実施の形態1によるプラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法を、図を用いて説明する。
図1は、プラント計装制御システム100の構成を示す図である。
図2、
図3は、
図1の要部拡大図である。
プラント計装制御システム100は、二重化され、図示しないプラントの被制御装置を制御する二重化制御装置10と、二重化制御装置10との間でデータの入出力を行う入出力装置20と、二重化制御装置10を構成する2つの制御装置10A、10Bの制御プログラム(以下、単にプログラムという)の編集および制御装置10A、10Bが使用する各種データのエンジニアリングを行うエンジニアリングツール30と、二重化制御装置10、入出力装置20、エンジニアリングツール30、および、上述の被制御装置間を接続して通信を行う保守ネットワーク50とを備える。
【0012】
二重化制御装置10は、制御装置10Aと、制御装置10Bとを備える。制御装置10Aと制御装置10Bとは、いわゆる冗長化された制御装置であり、いずれか一方が、プラント制御のための制御系の制御装置となっており、そのとき他方は、バックアップ装置としての待機系の制御装置となっている。待機系制御装置は、二重化制御装置10のそれぞれの制御装置10A、10Bのプログラムを更新する場合、あるいは、制御系制御装置に突発的な不具合が発生した場合などに、制御系の制御装置としてバックアップするために備えられている。
【0013】
次に、制御装置10Aの構成を説明する。
制御装置10Aは、同値化処理部11Aと、記憶装置12Aと、演算処理部13Aとを備える。
【0014】
記憶装置12Aは、制御装置10A用のプログラムを格納するプログラムメモリ領域12AP1(第一プログラムメモリ領域)とプログラムメモリ領域12AP2(第二プログラムメモリ領域)の二重化されたメモリ領域を備える。
同値化処理部11Aは、プログラムメモリ領域12AP1と、プログラムメモリ領域12AP2の同値化を行う。演算処理部13Aは、入出力装置20からの入力データを読み込んでプログラムメモリ領域12AP1、12AP2上のプログラムを実行し出力データを入出力装置20へ出力する。
【0015】
また、プログラムメモリ領域12AP1とプログラムメモリ領域12AP2とは、いずれか一方が、プラント制御(被制御装置の制御)を行う実行領域となり、そのとき、他方がプラント制御を行わない非実行領域となる。ただし、待機系の制御装置の実行領域は、二重化制御装置10の制御系と待機系が切り替わる、制待切替えが発生した場合にプラント制御を行うことが予定されているプログラムメモリ領域である。非実行領域となるプログラムメモリ領域は、詳細を後述する制御装置10Aのプログラムを更新する際に使用する。
【0016】
次に、制御装置10Bの構成を説明する。
制御装置10Bは、同値化処理部11Bと、記憶装置12Bと、演算処理部13Bとを備える。
【0017】
記憶装置12Bは、制御装置10B用のプログラムを格納するプログラムメモリ領域12BP1(第一プログラムメモリ領域)とプログラムメモリ領域12BP2(第二プログラムメモリ領域)の二重化されたメモリ領域を備える。
同値化処理部11Bは、プログラムメモリ領域12BP1と、プログラムメモリ領域12BP2の同値化を行う。演算処理部13Bは、入出力装置20からの入力データを読み込んでプログラムメモリ領域12BP1、12BP2上のプログラムを実行し出力データを入出力装置20へ出力する。
【0018】
また、プログラムメモリ領域12BP1とプログラムメモリ領域12BP2とは、いずれか一方が、プラント制御を行う実行領域となり、そのとき、他方がプラント制御を行わない非実行領域となる。非実行領域となるプログラムメモリ領域は、詳細を後述する制御装置10Bのプログラムを更新する際に使用する。
【0019】
エンジニアリングツール30は、制御装置10A、10B上で動作するプログラム用のエディタ機能およびモニタ機能を提供するプログラムエディタ・モニタ部31と、制御装置10A、10Bの演算処理部13A、13Bで演算した出力結果を一覧表示し、両系の出力結果の差異を確認する機能を提供する出力一覧表示部32とを備える。
【0020】
次に、二重化制御装置10のプログラムのオンライン書換え方法について
図2~
図4を用いて説明する。
図4~
図7は、二重化制御装置10のプログラムの書換え方法を時系列に沿って説明する図である。
図4おいて、二重化制御装置10は、制御装置10Aが、制御系制御装置として動作し、制御装置10Bが待機系制御装置として動作している。
【0021】
制御装置10Aの記憶装置12Aのプログラムメモリ領域12AP1とプログラムメモリ領域12AP2、及び制御装置10Bの記憶装置12Bのプログラムメモリ領域12BP1とプログラムメモリ領域12BP2には、全て同じプログラムが書き込まれている。すなわち、制御装置10A、10Bでは、同じプログラムが動作し、さらに、それぞれの制御装置10A、10Bのプログラムメモリ領域は、二重化されている。
【0022】
実際には、4つのプログラムメモリ領域12AP1、12AP2、12BP1、12BP2上のそれぞれのプログラムは、入出力装置20からの入力情報を用いて動作しているが、制御系として動作している制御装置10Aのプログラムメモリ領域12AP1上のプログラムのみが入出力装置20に演算結果を出力し、プラントを制御している。
【0023】
上述のように、
図4は、制御装置10Aのプログラムメモリ領域12AP1上のプログラムが、プラントの制御を行っている状態を示している。
そして、万一、制御装置10Aに不具合が発生した場合に備えて、制御装置10Bが待機(プログラムは、動作しているが、出力は行わない状態)している。制御装置10Bが制御系の制御装置に切り替わった場合は、記憶装置12Bのプログラムメモリ領域12BP1上のプログラムが、制御系として動作する。
【0024】
二重化制御装置10のプログラムを更新する場合は、次の手順で更新する。
まず、オペレータは、エンジニアリングツール30のプログラムエディタ・モニタ部31を用いて二重化制御装置10の更新版プログラムNPを作成する。更新版プログラムNPの作成を完了後、最初に、現在の待機系制御装置である制御装置10Bの非実行領域のプログラムメモリ領域12BP2へ書込みを行う(
図4中のP1:第一書換工程)。
【0025】
その後、エンジニアリングツール30のプログラムエディタ・モニタ部31にて、現在制御系制御装置として動作している、制御装置10Aのプログラムメモリ領域12AP1上の更新前のプログラムと、待機系制御装置として動作している制御装置10Bのプログラムメモリ領域12BP2上の更新版プログラムNPのモニタリング結果を表示(
図4中のP2)する。また、出力一覧表示部にて、プログラムメモリ領域12AP1上の更新前のプログラムとプログラムメモリ領域12BP2上の更新版プログラムNPの演算の出力結果一覧を表示する(
図4中のP3)。そして、オペレータは、出力結果一覧を用いて更新版プログラムNPの健全性を確認する(第一比較工程)。
【0026】
オペレータが確認した結果、更新版プログラムNPに問題が無い場合は、オペレータがエンジニアリングツール30から更新版プログラムNPの書換えを続行することで、エンジニアリングツール30から待機系の制御装置10Bに対してプログラムメモリ領域12BP1、12BP2の実行領域、非実行領域の切替え処理命令を発行する(第一実行領域入替工程)。
【0027】
命令を受けた待機系の制御装置10Bは、プログラムメモリの実行領域、非実行領域の切替えを行い、実行領域がプログラムメモリ領域12BP1からプログラムメモリ領域12BP2に切り替わる。実行領域の切替え完了後に、同値化処理部11Bにてプログラムメモリ領域12BP2とプログラムメモリ領域12BP1の同値化が行われ、プログラムメモリ領域12BP1にも更新版プログラムNPが反映される(
図5中のP4:第一同値化工程)。
【0028】
このようにして待機系の制御装置10Bへの更新版プログラムNPの書込み操作を完了後、二重化制御装置10の制御系と待機系の切替えを行い、制御装置10Aが待機系制御装置、制御装置10Bが制御系制御装置の状態とする(
図6中のP5:制待切替工程)。
【0029】
次に、現在の待機系制御装置である制御装置10Aの非実行領域のプログラムメモリ領域12AP2へ更新版のプログラムの書込みを行う。
まず、制御装置10Aの非実行領域のプログラムメモリ領域12AP2に更新版プログラムNPの書込みを行う(
図6中のP6:第二書換工程)。その後、エンジニアリングツール30のプログラムエディタ・モニタ部31にて、現在の制御系の実行領域である制御装置10Bのプログラムメモリ領域12BP2の更新版プログラムNPと、待機系の非実行領域のプログラムメモリ領域12AP2の更新版プログラムNPのモニタリング結果を表示し(
図6中のP7)、また、出力一覧表示部32にて、制御系のプログラムメモリ領域12BP2の更新版プログラムNPと、待機系のプログラムメモリ領域12AP2の更新版プログラムNPの演算の出力結果一覧を表示(
図6中のP8)して、オペレータが、待機系のプログラムメモリ領域12AP2に書き込んだ更新版プログラムNPの健全性を確認する(第二比較工程)。
【0030】
オペレータが確認した結果、プログラムメモリ領域12AP2の更新版プログラムNPに問題が無い場合は、オペレータがエンジニアリングツール30から書換えを続行することで、エンジニアリングツール30より制御装置10Aに実行領域の切替え処理命令を発行する(第二実行領域入替工程)。
【0031】
待機系である制御装置10Aは、プログラムメモリの実行領域と非実行領域の切替えを行い、実行領域がプログラムメモリ領域12AP1からプログラムメモリ領域12AP2に切り替わる。実行領域切替え完了後に同値化処理部11Aにてプログラムメモリ領域12AP2とプログラムメモリ領域12AP1との同値化が行われ、プログラムメモリ領域12AP1にも更新版プログラムNPが反映される(
図7中のP9:第二同値化工程)。
【0032】
実施の形態1によるプラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法によれば、制御装置10A、10Bのプログラムメモリ領域を二重化し、エンジニアリングツール30での確認手段を備えることで、オペレータが健全性を確認し、稼働中の二重化制御装置10の更に二重化されたプログラムメモリ領域のプログラムの安全な書換えが可能となる。
【0033】
実施の形態2.
以下、実施の形態2によるプラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法を、実施の形態1と異なる部分を中心に説明する。
実施の形態1では、更新版プログラムNPの健全性を確認した結果、更新版プログラムNPに問題が無い場合について述べたが、本実施の形態2では、二重化制御装置10への書込みキャンセル機能を備えることで、自動で書込み前の状態の戻すことができる。
【0034】
図8、
図9は、二重化制御装置10のプログラムの書換え方法を時系列に沿って説明する図である。
図8に示すように、更新版プログラムNPを書込みし(
図8のP1)、健全性を確認した結果(
図8のP2、P3)、更新版プログラムNPに問題があった場合、オペレータが書込みキャンセル(
図9のP24)することで、二重化制御装置10の図示しないキャンセル機能が動作する。
【0035】
制御装置のキャンセル機能では、待機系である制御装置10Bの更新前プログラムを保持しているプログラムメモリ領域12BP1のデータを正とし、プログラムメモリ領域BP1、BP2の同値化が行われ、プログラムメモリ領域BP2にプログラムメモリ領域BP1の更新前プログラムが反映され(
図9のP25)、制御装置10Bを、更新版のプログラムの書込み前の状態に戻すことができる。
【0036】
従来、プログラム書込み前の状態に戻す場合は、オペレータが更新前プログラムを用意し、更新前プログラムを書込みする必要があったが、本実施の形態2では復元自体は自動で行われる。
【0037】
実施の形態2によるプラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法によれば、万一、更新版プログラムNPが正常に動作しない場合であっても、容易に二重化制御装置10を元の状態に復元できる。
【0038】
実施の形態3.
以下、実施の形態3によるプラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法を、実施の形態1、2と異なる部分を中心に説明する。
実施の形態2では、更新版プログラムNPの健全性を確認し、健全でない場合にオペレータにて書込みキャンセルを実行する場合について述べた。
本実施の形態では、更新版プログラムNPの問題ではなく、外乱等の他の事象によって、更新版プログラムNPの書換えを中止する必要がある場合について説明する。
【0039】
図10~
図12は、二重化制御装置10のプログラムの書換え方法を時系列に沿って説明する図である。
図10に示すように、待機系の制御装置10Bのプログラムメモリ領域12BP2に更新版プログラムNPの書込み完了後(
図10のP1)、オペレータによる更新版プログラムNPの動作検証が未確認の段階で、外乱などの要因によって制御系の制御装置10Aに異常が発生し、二重化制御装置10の制待切替えが行われた場合(
図11のP2)、制御装置10Aが待機系の制御装置となり、制御装置10Bが、制御系の制御装置となるが、制御系の制御装置10Bは、プログラムメモリ領域12BP1の更新前のプログラムで演算することになる(
図12のP3)。
【0040】
従来、待機系の制御装置への更新版プログラムNPの書込み完了後、二重化制御装置の制待切替えが行われた場合、新たに制御系となった制御装置では、更新版プログラムNPで演算が行われるため、更新版プログラムNPに問題があった場合は、二重化制御装置が誤動作する恐れがあったが、実施の形態3による計装制御システムによれば、制御系の制御装置と、待機系の制御装置のいずれについてもプログラムメモリ領域を二重化することによって、二重化制御装置10の誤動作を防止できる。
【0041】
実施の形態4.
以下、実施の形態4によるプラント計装制御システムおよびプラント計装制御システムのプログラムの書換え方法を、実施の形態1~3と異なる部分を中心に説明する。
実施の形態1~3では、待機系の制御装置10Bのプログラムメモリ領域12BP2に更新版プログラムNPを書込み後、オペレータが演算結果の出力などを目視で確認して、エンジニアリングツール30を都度操作し、更新版プログラムNPの書換え作業を実施する場合について述べた。
【0042】
本実施の形態4では、オペレータがエンジニアリングツール30を都度操作する必要が無く、自動的に更新版プログラムNPの書換え作業を行うことができるようにする。
【0043】
図13、
図15~
図17は、二重化制御装置10のプログラムの書換え方法を時系列に沿って説明する図である。
図14は、
図13の要部拡大図である。
エンジニアリングツール30は、自動判定処理部33と正常範囲設定ファイル34とを備える。
【0044】
正常範囲設定ファイル34は、更新版プログラムNPの各種出力値の正常範囲(下限値・上限値)を予め設定したファイルである。自動判定処理部33は、正常範囲設定ファイル34を予め読み込んでおり(
図13のP40)、プログラムメモリ領域12BP2に更新版プログラムNPの書込み後(
図13のP1)、自動判定処理部33が、演算処理部13Bの演算の出力結果が、正常範囲設定ファイル34の正常範囲内に収まっているか否かを判定し、更新版プログラムNPの書換え作業を続行するか否かを自動判定する(
図13のP43)。書き換えを続行する場合は、待機系の制御装置10Bの実行領域と非実行領域を入れ替えて、プログラムメモリ領域12BP1をプログラムメモリ領域12BP2と同値化する(
図15のP45)。
【0045】
次に、二重化制御装置10の制御装置10Aと制御装置10Bとの制待切替えを自動実行する(
図16のP46)。次に、制御装置10Aのプログラムメモリ領域12AP2に更新版プログラムを自動書込み後(
図16のP47)、自動判定処理部33が、演算処理部13Aの演算の出力結果が、正常範囲設定ファイル34の正常範囲内に収まっているか否かを判定し、更新版プログラムNPの書換え作業を続行するか否かを自動判定する(
図16のP48)。書き換えを続行する場合は、待機系の制御装置10Aの実行領域と非実行領域を入れ替えて、プログラムメモリ領域12AP1をプログラムメモリ領域12AP2と同値化する(
図17のP50)。
【0046】
これにより、更新版プログラムNPの変更内容が大量にあった場合であっても、オペレータの目視確認の誤り等によって更新版プログラムNPがそのまま書き込まれ、二重化制御装置10が誤動作することを防止できる。また、オペレータが、その都度操作する必要が無いため、更新版プログラムNPの書換え作業の効率化を図ることができる。
【0047】
本願は、様々な例示的な実施の形態及び実施例が記載されているが、1つ、または複数の実施の形態に記載された様々な特徴、態様、及び機能は特定の実施の形態の適用に限られるのではなく、単独で、または様々な組み合わせで実施の形態に適用可能である。
従って、例示されていない無数の変形例が、本願に開示される技術の範囲内において想定される。例えば、少なくとも1つの構成要素を変形する場合、追加する場合または省略する場合、さらには、少なくとも1つの構成要素を抽出し、他の実施の形態の構成要素と組み合わせる場合が含まれるものとする。
【符号の説明】
【0048】
100 プラント計装制御システム、10 二重化制御装置、
10A,10B 制御装置、11A,11B 同値化処理部、
12A,12B 記憶装置、
12AP1,12AP2,12BP1,12BP2 プログラムメモリ領域、
13A,13B 演算処理部、20 入出力装置、30 エンジニアリングツール、
31 プログラムエディタ・モニタ部、32 出力一覧表示部、33 自動判定処理部、
34 正常範囲設定ファイル、50 保守ネットワーク。