(57)【要約】【課題】プログラム設計者でなくても、入力点情報及び出力点情報のそれぞれに関連するプログラムソースコード部分を確認、変更できるプラント監視制御システムの保守計算機及び保守プログラムを提供する。【解決手段】統合計算機３１から制御装置２１に入力される入力点情報及び制御装置２１から統合計算機３１に出力される出力点情報のそれぞれに関連する統合計算機のプログラムのソースコード部分を抽出するコード抽出処理を実行するプラント監視制御システム１０の保守計算機１。【選択図】図１
2018197951.tif 000002
【特許請求の範囲】
【請求項１】
監視制御機器を用いてプラントの各部の監視及び制御を行う制御装置と、プログラムの実行により前記制御装置及び前記プラントの監視及び制御のための演算処理を行う統合計算機と、を備えたプラント監視制御システムを保守するためのプラント監視制御システムの保守計算機であって、
前記統合計算機から前記制御装置に入力される入力点情報及び前記制御装置から前記統合計算機に出力される出力点情報のそれぞれに関連する前記統合計算機のプログラムのソースコード部分を抽出するコード抽出処理を実行するプラント監視制御システムの保守計算機。
【請求項２】
前記コード抽出処理により抽出した前記ソースコード部分と、前記入力点情報及び前記出力点情報の内容との整合性を判定して、整合性がないと判定した箇所の情報をユーザに知らせる整合性判定処理を実行する請求項１に記載のプラント監視制御システムの保守計算機。
【請求項３】
前記入力点情報及び前記出力点情報に変更があった場合に、変更があった前記入力点情報及び前記出力点情報のそれぞれに関連する前記統合計算機のプログラムのソースコード部分を抽出する変更コード抽出処理を実行する請求項１又は２に記載のプラント監視制御システムの保守計算機。
【請求項４】
前記変更コード抽出処理により抽出した前記ソースコード部分を、前記入力点情報及び前記出力点情報の変更内容に合わせて変更するコード変更処理を実行する請求項３に記載のプラント監視制御システムの保守計算機。
【請求項５】
前記コード変更処理後の前記ソースコード部分と、前記入力点情報及び前記出力点情報の内容との整合性を判定して、整合性がないと判定した箇所の情報をユーザに知らせる整合性判定処理を実行する請求項４に記載のプラント監視制御システムの保守計算機。
【請求項６】
前記ソースコード部分の情報として、前記ソースコード部分の内容及びソースコード中の位置の情報を抽出する請求項１から５のいずれか一項に記載のプラント監視制御システムの保守計算機。
【請求項７】
保守用のネットワークを介して、前記統合計算機の記憶装置に変更用のプログラムを転送し、転送が完了した後に、前記統合計算機に、現在実行しているプログラムの実行を中止させ、前記変更用のプログラムの実行を開始させるプログラム書換え処理を実行する請求項１から６のいずれか一項に記載のプラント監視制御システムの保守計算機。
【請求項８】
監視制御機器を用いてプラントの各部の監視及び制御を行う制御装置と、プログラムの実行により前記制御装置の監視及び制御のための演算処理を行う統合計算機と、を備えたプラント監視制御システムを保守するための保守処理を、コンピュータに実行させるためのプラント監視制御システムの保守プログラムであって、
前記統合計算機から前記制御装置に入力される入力点情報及び前記制御装置から前記統合計算機に出力される出力点情報のそれぞれに関連する前記統合計算機のプログラムのソースコード部分を抽出するコード抽出ステップを、コンピュータに実行させるプラント監視制御システムの保守プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プラントの各部の監視及び制御を行う監視制御機器を制御する制御装置と、プログラムの実行により前記制御装置の監視及び制御のための演算処理を行う統合計算機と、を備えたプラント監視制御システムを保守するためのプラント監視制御システムの保守計算機及び保守プログラムに関するものである。
【背景技術】
【０００２】
下記の特許文献１には、発電プラントの監視制御システムを外部から監視し、保全する監視保全システムが開示されている。特許文献１の監視保全システムは、プラント内の機器の異常、劣化をプラントの外部から診断し、機器の交換等を行う保全計画を策定するように構成されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１１４２９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の技術には、プラント監視制御システムのプログラムを変更する保守について開示されていない。プラント監視制御システムのプログラムを変更するためには、プログラミング技術が必要とされるのはもちろんのこと、既存のプログラムの構成、プラントの構成を理解したプログラム設計者でないと、容易に行えないという問題があった。
【０００５】
また、最低限のプログラミング技術はあるものの、既存のプログラムの構成を理解していないために、変更が必要なソースコード部分を探し出すことが困難であるという問題があった。特に、取り替えるアクチュエータ又はセンサの仕様の変更等により、統合計算機から制御装置に入力される入力点情報及び制御装置から統合計算機に出力される出力点情報の内容に変更があった場合は、変更があった入力点情報及び出力点情報に関連するプログラムのソースコード部分を探し出し、変更する必要がある。アクチュエータ又はセンサを異なる仕様のものに取り換えるたびに、プログラム設計者がプログラムの確認を行い、必要に応じて変更を行っていたのでは、プログラム設計者の負荷が高くなったり、プログラム設計者の予定調整のために、プログラム変更が遅れたりする問題がある。
【０００６】
そこで、プログラム設計者でなくても、入力点情報及び出力点情報のそれぞれに関連するプログラムソースコード部分を確認、変更できるプラント監視制御システムの保守計算機及び保守プログラムが望まれる。
【課題を解決するための手段】
【０００７】
本発明に係るプラント監視制御システムの保守計算機は、監視制御機器を用いてプラントの各部の監視及び制御を行う制御装置と、プログラムの実行により前記制御装置及び前記プラントの監視及び制御のための演算処理を行う統合計算機と、を備えたプラント監視制御システムを保守するためのプラント監視制御システムの保守計算機であって、
前記統合計算機から前記制御装置に入力される入力点情報及び前記制御装置から前記統合計算機に出力される出力点情報のそれぞれに関連する前記統合計算機のプログラムのソースコード部分を抽出するコード抽出処理を実行するものである。
【０００８】
また、本発明に係るプラント監視制御システムの保守プログラムは、監視制御機器を用いてプラントの各部の監視及び制御を行う制御装置と、プログラムの実行により前記制御装置の監視及び制御のための演算処理を行う統合計算機と、を備えたプラント監視制御システムを保守するための保守処理を、コンピュータに実行させるためのプラント監視制御システムの保守プログラムであって、
前記統合計算機から前記制御装置に入力される入力点情報及び前記制御装置から前記統合計算機に出力される出力点情報のそれぞれに関連する前記統合計算機のプログラムのソースコード部分を抽出するコード抽出ステップを、コンピュータに実行させるものである。
【発明の効果】
【０００９】
本発明に係るプラント監視制御システムの保守計算機及び保守プログラムによれば、入力点情報及び出力点情報のそれぞれに関連するソースコード部分が自動で抽出されるので、プログラム設計者以外の技術者であっても、抽出されたソースコード部分の確認を行ったり、抽出されたソースコード部分を変更することにより特定の入力点情報及び出力点情報に関連するソースコード部分の変更を行ったりできる。プログラム設計者がプログラムの確認、変更を行う場合でも、作業負荷を軽減することができる。また、保守計算機及び保守プログラムは、抽出したソースコード部分を用いて、その後の処理を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態１に係るプラント監視制御システムの概略全体構成を示す図である。
【図２】本発明の実施の形態１に係る統合計算機のハードウェア構成図である。
【図３】本発明の実施の形態１に係る保守計算機のハードウェア構成図である。
【図４】本発明の実施の形態１に係る保守計算機のブロック図である。
【図５】本発明の実施の形態１に係るコード抽出結果の表示画面の一例を示す図である。
【図６】本発明の実施の形態１に係る保守計算機の処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
実施の形態１．
実施の形態１に係るプラント監視制御システム１０の保守計算機１（以下、単に保守計算機１と称す）について図面を参照して説明する。図１は、プラント監視制御システム１０の概略全体構成を示す図である。
【００１２】
プラント監視制御システム１０の監視制御対象となるプラントには、原子力又は火力発電所、工場等の生産設備や、上下水道、電力、鉄道、道路、河川、ダム、ビル等の社会インフラ設備等の各種のプラントが含まれる。本実施の形態では、プラントが原子力発電所とされている場合について説明する。
【００１３】
＜制御装置２１＞
プラント監視制御システム１０は、監視制御機器２２を用いてプラントの各部の監視及び制御を行う制御装置２１を備えている。監視制御機器２２は、プラントの各部を制御する弁、ポンプ等の各種のアクチュエータ、及びプラントの各部を監視する温度センサ、圧力センサ、弁の開度検出センサ等の各種のセンサ等からなる。制御装置２１から各アクチュエータに対する指令信号は、Ｄ／Ａ変換器によりアナログ信号に変換されて、各アクチュエータに伝達される。また、各センサの出力信号は、Ａ／Ｄ変換器によりデジタル信号に変換されて制御装置２１で処理される。Ａ／Ｄ変換器及びＤ／Ａ変換器におけるアナログ信号とデジタル信号との対応関係（変換レンジ、変換分解能）は予め設定されている。例えば、０Ｖから５Ｖのアナログ信号を１０ｂｉｔのデジタル信号にＡ／Ｄ変換する、又は１０ｂｉｔのデジタル信号を０Ｖから５Ｖのアナログ信号にＤ／Ａ変換するように予め設定されている。
【００１４】
本実施の形態では、監視制御機器２２は、制御盤２３を介して制御装置２１に接続されている。制御盤２３は、プラント側の現場に配置されており、各監視制御機器２２と個別の接続線により接続されている。制御盤２３は、通信線を介して制御装置２１に接続されている。Ａ／Ｄ変換器及びＤ／Ａ変換器は、制御盤２３に設けられている。
【００１５】
本実施の形態では、制御装置２１は、プラントの系統別に複数設けられている。図１に示す例では、安全系の制御装置２１、１次系の制御装置２１、及び２次系・電気系の制御装置２１の３つの制御装置が設けられている。制御装置２１は、各種のセンサの出力情報、スイッチの操作情報、及び統合計算機３１から伝達された指令信号等に基づいて、各種のアクチュエータを制御する制御ロジックを実行する。制御ロジックは、論理和、論理積、比較処理、加算処理等の各種の論理演算の組み合わせにより構成される。制御装置２１は、デジタル回路により論理演算を行うように構成されている。制御装置２１は、論理演算の一部又は全部を、演算処理装置（コンピュータ）が記憶装置に記憶されたプログラムを実行することにより行ってもよい。
【００１６】
制御装置２１は、予め選択されたセンサの出力情報、アクチュエータの駆動情報、及びスイッチの操作情報等の監視制御情報を、統合計算機３１等の外部に伝達する。制御装置２１と統合計算機３１とは、プラント内のネットワークにより相互にデータ通信可能に接続されている。本例では、ネットワークは、プラント内の各機器の間で監視制御情報等を信頼性高く通信するために設計された産業用ネットワークとされている。
【００１７】
統合計算機３１から制御装置２１に入力される入力点情報、及び制御装置２１から統合計算機３１に出力される出力点情報の内容は、予め設定されている。出力点情報は、予め選択されたセンサの出力情報、アクチュエータの駆動情報、及びスイッチの操作情報等の監視制御情報とされている。すなわち、予め選択された監視制御情報が、統合計算機３１側に出力されるように、制御装置２１内の回路が構成されている。入力点情報は、予め選択されたプラント状態の指令情報、及びアクチュエータの駆動指令情報等の指令情報とされている。すなわち、予め選択された指令情報が、制御装置２１に入力され、処理されるように、制御装置２１内の回路が構成されている。入力点情報及び出力点情報のそれぞれの変数値等のデータの情報は、変数名等の識別子の情報と共に、産業用ネットワークを伝達する。
【００１８】
＜統合計算機３１＞
プラント監視制御システム１０は、プログラムの実行により制御装置２１及びプラントの監視及び制御のための演算処理を行う統合計算機３１を備えている。統合計算機３１は、制御装置２１から伝達された監視制御情報に基づいて、制御装置２１の制御状態、及びプラントの運転状態を監視するための演算処理を行う。また、統合計算機３１は、制御装置２１の制御状態、及びプラントの運転状態を制御するための演算処理を行って、制御装置２１に指令情報を伝達する。
【００１９】
統合計算機３１は、図２に示すように、ＣＰＵ（Central Processing Unit）等の演算処理装置８０（コンピュータ）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ハードディスク（ＨＤＤ）等の記憶装置８１、制御装置２１及び保守計算機１等の外部とデータ通信を行う通信装置８２、表示装置に画像信号を出力する画像出力装置８３、ユーザの入力を受け付ける入力装置８４等を備えている。また、ハードディスク（ＨＤＤ）等の大容量の記憶装置８１には、オペレーティングシステムのプログラム１４、通信等の基本処理を行うミドルウェアのプログラム１３、監視及び制御のための演算処理を行う各種のアプリケーションプログラム１２、及び入力点情報及び出力点情報を記憶している入出力点情報データベース１１が記憶されている。統合計算機３１の各演算処理は、演算処理装置８０が、記憶装置８１に記憶されたプログラム（ソフトウェア）を実行し、記憶装置８１、通信装置８２、画像出力装置８３、及び入力装置８４等の他のハードウェアと協働することにより実現される。
【００２０】
本実施の形態では、統合計算機３１は、目的別に複数設けられている。図１に示す例では、制御装置２１及びプラントの監視及び制御のための応用計算処理を行う応用計算用の統合計算機３１、制御装置２１及びプラントの監視及び制御の状態を画面表示するための処理を行う画面表示用の統合計算機３１、及び制御装置２１及びプラントの監視及び制御の状態を記憶装置に記録する処理を行う記録用の統合計算機３１の３つの統合計算機が設けられている。３つの統合計算機３１の間でも、産業用ネットワークを介して相互に演算処理値を伝達する。
【００２１】
制御装置２１との間で伝達する入力点情報及び出力点情報のそれぞれは、統合計算機３１のアプリケーションプログラム１２のソースコード中において、変数名等の識別子により表されており、識別子を用いて四則演算及び条件判定等の演算処理が記述されている。なお、統合計算機３１で実行されるアプリケーションプログラム１２は、ソースコードが機械語に変換されたものでもよく、或いは、ソースコードを逐次解釈しながら実行するインタプリタであってもよい。
【００２２】
入出力点情報データベース１１には、制御装置２１との間で伝達する入力点情報及び出力点情報のそれぞれの内容が記憶されている。例えば、入出力点情報データベース１１には、入力点情報及び出力点情報のそれぞれの変数名等の識別子の情報、並びにデジタル値と工学値（物理量）とを相互に変換するための工学レンジ及び工学単位等の工学値変換情報が記憶されている。アプリケーションプログラム１２は、入出力点情報データベース１１を参照して、入力点情報及び出力点情報のそれぞれのデジタル値と工学値とを相互に変換して、監視及び制御のための応用計算処理、画面表示のための処理、監視及び制御の状態の記録処理を行うようにプログラミングされている。
【００２３】
＜保守計算機１＞
保守計算機１は、図１に示すように、制御装置２１及び統合計算機３１を備えたプラント監視制御システム１０を保守する計算機である。保守計算機１は、プラント監視制御システム１０の一部を構成している。図４に示すように、保守計算機１は、アプリケーション変更部２、ミドルウェア変更部３、オペレーティングシステム変更部４、データベース変更部５、及び保守用データベース６等の機能部を備えている。保守計算機１の各機能部２〜６等は、保守計算機１が備えた処理回路及び記憶装置により実現される。
【００２４】
保守計算機１は、図３に示すように、ＣＰＵ（Central Processing Unit）等の演算処理装置９０（コンピュータ）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ハードディスク（ＨＤＤ）等の記憶装置９１、統合計算機３１及び制御装置２１等の外部とデータ通信を行う通信装置９２、表示装置に画像信号を出力する画像出力装置９３、ユーザの入力を受け付ける入力装置９４等を備えている。
【００２５】
保守計算機１のハードディスク等の記憶装置９１には、各機能部２〜５のための保守プログラム７、保守用データベース６が記憶されている。保守計算機１の各演算処理は、演算処理装置９０が、記憶装置９１に記憶されたプログラム（ソフトウェア）を実行し、記憶装置９１、通信装置９２、画像出力装置９３、及び入力装置９４等の他のハードウェアと協働することにより実現される。なお、保守プログラム７を記録した非一時的な記録媒体８が配布され、保守計算機１（記憶装置９１）にインストールされてもよい。
【００２６】
保守計算機１は、統合計算機３１のプログラムを変更する処理を行う。本実施の形態では、図４に示すように、オペレーティングシステム変更部４は、統合計算機３１のオペレーティングシステムのプログラム１４を変更する。ミドルウェア変更部３は、統合計算機３１のミドルウェアのプログラム１３を変更する。アプリケーション変更部２は、統合計算機３１の各種のアプリケーションプログラム１２を変更する。データベース変更部５は、統合計算機３１の入出力点情報データベース１１を変更する。
【００２７】
図３に示すように、保守計算機１の保守用データベース６には、アプリケーションプログラム１２のソースコードを記憶した保守用コードデータベース６ａ、各制御装置２１の入力点情報及び出力点情報の内容を記憶した保守用入出力点情報データベース６ｂ、抽出したソースコード部分を記憶した抽出コードデータベース６ｃ、整合性判定結果データベース６ｄが含まれる。例えば、保守用入出力点情報データベース６ｂには、入力点情報及び出力点情報のそれぞれについて、変数名等の識別子の情報、デジタル値と工学値（物理量）とを相互に変換するための工学レンジ及び工学単位等の工学値変換情報、名称、及び説明等が記憶されている。
【００２８】
＜プログラム変更の課題＞
しかし、統合計算機３１のプログラムを変更するためには、プログラミング技術が必要とされるのはもちろんのこと、既存のプログラムの構成、プラントの構成を理解したプログラム設計者でないと、容易に行えないという問題があった。例えば、応用計算用の統合計算機３１が処理した結果を、画面表示用の統合計算機３１で表示する等のように、統合計算機の間で相互に連携する場合が多く、プログラムの変更には、統合計算機全般のシステム設計能力とデジタル制御装置の設計能力、及びそのプログラムを修正する技術力が必要である。
【００２９】
また、最低限のプログラミング技術はあるものの、既存のプログラムの構成を理解していないために、変更が必要なソースコード部分を探し出すことが困難であるという問題があった。特に、プラントの機能更新の際に、取り替えるアクチュエータ又はセンサの仕様に変更があり、入力点情報及び出力点情報の内容に変更があった場合は、変更があった入力点情報及び出力点情報に関連するアプリケーションプログラム１２のソースコード部分を探し出し、変更する必要がある。アクチュエータ又はセンサを異なる仕様のものに取り換えるたびに、プログラム設計者がプログラム変更を行っていたのでは、プログラム設計者の負荷が高くなったり、プログラム設計者の予定調整のために、プログラム変更が遅れたりする問題がある。そのため、アクチュエータ又はセンサの取り換え等に伴って必要となる、部分的なプログラム変更については、プログラム設計者以外の技術者又は自動でプログラム変更を行えることが望ましく、また、プログラム設計者がプログラム変更を行う場合でも、作業負荷を軽減できることが望ましい。
【００３０】
＜コード抽出処理＞
そこで、アプリケーション変更部２は、統合計算機３１から制御装置２１に入力される入力点情報、及び制御装置２１から統合計算機３１に出力される出力点情報のそれぞれに関連する統合計算機３１のアプリケーションプログラム１２のソースコード部分を抽出するコード抽出処理を実行するように構成されている。
【００３１】
この構成によれば、入力点情報及び出力点情報のそれぞれに関連するソースコード部分が自動で抽出されるので、プログラム設計者以外の技術者であっても、抽出されたソースコード部分の確認を行ったり、抽出されたソースコード部分を変更することにより特定の入力点情報及び出力点情報に関連するソースコード部分の変更を行ったりできる。プログラム設計者がプログラム変更を行う場合でも、作業負荷を軽減することができる。また、アプリケーション変更部２は、抽出したソースコード部分を用いて、その後の処理を行うことができる。
【００３２】
アプリケーション変更部２は、記憶装置９１の保守用コードデータベース６ａに記憶されたソースコードから入力点情報及び出力点情報に関連するソースコード部分を抽出する。アプリケーション変更部２は、入力点情報及び出力点情報のそれぞれの変数名等の識別子を用いてソースコードを検索し、各識別子が用いられているソースコード部分を抽出する。また、アプリケーション変更部２は、抽出したソースコード部分の演算結果が出力される出力変数を、更に用いているソースコード部分を連鎖的に抽出するように構成されてもよい。
【００３３】
１つの入力点情報及び出力点情報に関連するソースコード部分が複数ある場合は、複数のソースコード部分が抽出される。アプリケーション変更部２は、抽出したソースコード部分の情報を、対応する入力点情報及び出力点情報と関連付けて、記憶装置９１内の抽出コードデータベース６ｃに記憶する。
【００３４】
抽出されたソースコード部分の情報には、ソースコード部分の内容（例えば、識別子を用いている行番号のテキストデータ）に加えて、抽出されたソースコード部分のソースコード中の位置の情報（例えば、ソースコードのファイル名、行番号）、対応する入力点情報及び出力点情報（例えば、変数名等の識別子、工学値変換情報、名称、説明）が含まれる。入力点情報及び出力点情報のそれぞれについて抽出された複数のソースコード部分は、入力点情報及び出力点情報毎にまとめられる。
【００３５】
アプリケーション変更部２は、入力装置９４を介してユーザにより特定の入力点情報及び出力点情報が指定された場合は、指定された入力点情報及び出力点情報のソースコード部分の情報を表示装置に表示する。
【００３６】
例えば、図５に示すように、アプリケーション変更部２は、アプリケーションプログラム１２の各パッケージと、入力点情報及び出力点情報の各識別子（図５の例では、入出力点１、入出力点２、入出力点３・・・）と、各パッケージ及び各識別子におけるソースコード部分の抽出の有無と、を表すマトリックス表を表示装置に表示する。そして、アプリケーション変更部２は、入力装置９４を介してユーザによりコード抽出有りとされた１つのパッケージ及び識別子が選択された場合に、対応するソースコード部分の情報を表示装置に表示する。アプリケーション変更部２は、元のソースコードファイルを開いて、識別子を用いているソースコード部分及びその前後のテキストデータを表示装置に表示してもよい。
【００３７】
アプリケーション変更部２は、表示装置に表示したソースコード部分のテキストデータが、入力装置９４を介してユーザにより変更された場合は、変更されたソースコード部分のテキストデータを、元のソースコードに反映させ、元のソースコードを変更するように構成されてもよい。
【００３８】
アプリケーション変更部２は、入力装置９４を介してユーザにより指定された入力点情報及び出力点情報について、コード抽出処理を実行するように構成されてもよい。
【００３９】
＜変更コード抽出処理＞
本実施の形態では、アプリケーション変更部２は、入力点情報及び出力点情報に変更があった場合に、変更があった入力点情報及び出力点情報のそれぞれに関連する統合計算機３１のプログラムのソースコード部分を抽出する変更コード抽出処理を実行するように構成されている。
【００４０】
この構成によれば、アクチュエータ及びセンサの取り換え、制御装置２１の構成変更等によって、入力点情報及び出力点情報に変更があった場合に、自動的に関連するソースコード部分が抽出される。そして、プログラム設計者以外の技術者であっても、ソースコード部分の確認を行ったり、抽出されたソースコード部分を変更することにより変更があった入力点情報及び出力点情報に関連するソースコード部分の変更を行ったりできる。プログラム設計者がプログラム変更を行う場合でも、作業負荷を軽減することができる。また、アプリケーション変更部２は、抽出したソースコード部分を用いて、その後の処理を行うことができる。
【００４１】
保守計算機１は、上記のように、各制御装置２１の入力点情報及び出力点情報の内容を記憶した保守用入出力点情報データベース６ｂを有している。データベース変更部５は、入力装置９４を介してユーザから入力点情報及び出力点情報の内容を変更する入力があった場合に、記憶装置９１内の保守用入出力点情報データベース６ｂを変更する。アプリケーション変更部２は、保守用入出力点情報データベース６ｂに記憶された入力点情報及び前記出力点情報の内容を変更する場合に、変更コード抽出処理を実行する。
【００４２】
例えば、アクチュエータ及びセンサの仕様（例えば、指令値又は出力値のレンジ、工学単位等）、制御装置２１（制御盤２３）のＡ／Ｄ変換器及びＤ／Ａ変換器の仕様（変換レンジ、変換分解能等）、又は監視制御機器２２の内部の処理に変更があった場合は、対応する入力点情報及び出力点情報の内容における、デジタル値と工学値（物理量）とを相互に変換するための工学レンジ及び工学単位等の工学値変換情報が変更される。また、入力点情報及び出力点情報の削除があった場合は、対応する入力点情報及び出力点情報の内容（識別子の情報、工学値変換情報等）が削除される。入力点情報及び出力点情報の追加があった場合は、対応する入力点情報及び出力点情報の内容（識別子の情報、工学値変換情報等）が追加される。
【００４３】
アプリケーション変更部２は、上述したコード抽出処理と同様に、保守用入出力点情報データベース６ｂに変更があった入力点情報及び出力点情報のそれぞれの変数名等の識別子を用いてソースコードを検索し、各識別子が用いられているソースコード部分を抽出する。アプリケーション変更部２は、抽出したソースコード部分の演算結果が出力される変数を、更に用いているソースコード部分を連鎖的に抽出するように構成されてもよい。アプリケーション変更部２は、抽出したソースコード部分を、対応する入力点情報及び出力点情報と関連付けて、記憶装置９１内の抽出コードデータベース６ｃに記憶する。
【００４４】
アプリケーション変更部２は、入力点情報及び出力点情報が追加された場合は、追加された入力点情報及び出力点情報に類似する入力点情報及び出力点情報に関連する統合計算機３１のプログラムのソースコード部分を抽出するように構成されてもよい。
【００４５】
＜コード変更処理＞
アプリケーション変更部２は、変更コード抽出処理により抽出したソースコード部分を、入力点情報及び出力点情報の変更内容に合わせて変更するコード変更処理を行う。
【００４６】
この構成によれば、プログラム設計者でなくても、入力点情報及び出力点情報の変更があった場合に、自動的にプログラムを変更することができ、プラントの保守コストを低減することができる。
【００４７】
アプリケーション変更部２は、入力点情報及び出力点情報の変更内容に対して、ソースコード部分の演算式が、予め設定された自動変更可能な演算式である場合は、予め設定された変更ルールに従って、演算式を変更し、自動変更可能な演算式でない場合は、ソースコード部分を変更せずに、変更できなかったことを記憶すると共にユーザに知らせる。ユーザは、自動で変更されなかったソースコード部分をマニュアルで変更することができる。
【００４８】
例えば、アプリケーション変更部２は、アクチュエータ及びセンサの仕様変更等により、入力点情報及び出力点情報の工学レンジ及び工学単位等の工学値変換情報が変更された場合は、対応するソースコード部分の演算結果が出力される出力変数の工学レンジ及び工学単位、並びにソースコード部分の演算式の工学レンジ及び工学単位を変更する。アプリケーション変更部２は、工学レンジ及び工学単位を変更した変数を、更に用いているソースコード部分の出力変数及び演算式の工学レンジ及び工学単位を連鎖的に変更するように構成されてもよい。例えば、アプリケーション変更部２は、入力点情報及び出力点情報における変更前後の工学レンジ及び工学単位の変化比率及びオフセット値の変化幅等と、ソースコード部分の出力変数及び演算式における変更前後の工学レンジ及び工学単位の変化比率及びオフセット値の変化幅等とが対応するように、ソースコード部分の出力変数及び演算式の工学レンジ及び工学単位を変化させる。
【００４９】
また、例えば、アプリケーション変更部２は、入力点情報及び出力点情報が削除された場合は、対応するソースコード部分の演算式から対応する識別子を削除する変更を行う。例えば、３つの変数の大きいもの取りを行う演算式の場合は、対応する識別子が削除され、残りの２つの変数の大きいもの取りを行う演算式に変更される。また、３つの変数を加算する演算式の場合は、対応する識別子が削除され、残りの２つの変数を加算する演算式に変更される。一方、アプリケーション変更部２は、対応するソースコード部分の演算式が、かけ算、割り算等、自動変更可能な演算式でない場合は、演算式の変更を行わない。
【００５０】
また、例えば、アプリケーション変更部２は、入力点情報及び出力点情報が追加された場合は、追加された入力点情報及び出力点情報をアプリケーションプログラム１２で利用できるように、追加された入力点情報及び出力点情報の識別子等を、インターフェイス処理を行うソースコード部分に追加する変更を行う。
【００５１】
＜整合性判定処理＞
アプリケーション変更部２は、コード変更処理後のソースコード部分と、入力点情報及び出力点情報の内容との整合性を判定して、整合性がないと判定した箇所の情報をユーザに知らせる整合性判定処理を実行する。
【００５２】
例えば、アプリケーション変更部２は、変更された入力点情報及び出力点情報の工学レンジ及び工学単位と、変更したソースコード部分の出力変数及び演算式の工学レンジ及び工学単位とが、変化比率及びオフセット値の変化幅等の評価指標の観点から、整合性があるか否かを判定する。また、アプリケーション変更部２は、変更コード抽出処理により抽出したソースコード部分から、削除された入力点情報及び出力点情報の識別子の情報が削除されているか否かを判定する。アプリケーション変更部２は、追加された入力点情報及び出力点情報の識別子の情報がインターフェイス処理を行うソースコード部分に追加されているか否かを判定する。
【００５３】
また、アプリケーション変更部２は、追加、変更された入力点情報及び出力点情報に、制御装置２１が対応していないと判定した場合は、制御装置２１の変更が必要であることをユーザに知らせる。この際、アプリケーション変更部２は、制御装置２１に入力されているセンサ信号、制御装置２１内の内部処理信号等を、出力点情報として取り出す変更が必要である等、変更内容を通知してもよい。
【００５４】
アプリケーション変更部２は、整合性がないと判定した、ソースコード部分及び入力点情報及び出力点情報の内容を整合性判定結果データベース６ｄに記憶すると共に、表示装置に表示する。
【００５５】
技術者又はプログラム設計者は、表示装置に表示された整合性がない箇所を確認し、整合性がないと判定されたソースコード部分及び入力点情報及び出力点情報の内容をマニュアルで変更し、ソースコードの変更を完了させる。
【００５６】
＜プログラム及びデータベースの書き換え＞
アプリケーション変更部２は、入力装置９４を介してユーザから統合計算機３１のプログラムを書き換える指令が入力された場合は、変更があったアプリケーションプログラム１２のパッケージを、統合計算機３１の記憶装置８１に転送して書き換える。また、データベース変更部５は、変更があった保守用入出力点情報データベース６ｂを、統合計算機３１の記憶装置８１内の入出力点情報データベース１１に転送して書き換える。
【００５７】
アプリケーション変更部２は、変更があったソースコードを機械語に変換した後、転送する。或いは、アプリケーション変更部２は、プログラムがインタプリタである場合は、変更があったソースコードをそのまま転送する。
【００５８】
本実施の形態では、アプリケーション変更部２は、保守用ネットワークを介して、統合計算機３１の記憶装置８１に変更用のアプリケーションプログラム１２のパッケージを転送し、転送が完了した後に、統合計算機３１に、現在実行しているアプリケーションプログラム１２のパッケージの実行を中止させ、変更用のアプリケーションプログラム１２のパッケージの実行を開始させる。また、データベース変更部５は、保守用のネットワークを介して、統合計算機３１の記憶装置８１に変更用の入出力点情報データベースを転送し、変更用のアプリケーションプログラム１２の実行開始に同期して、統合計算機３１に、現在使用されている入出力点情報データベースの使用を中止させ、変更用の入出力点情報データベースの使用を開始させる。
【００５９】
この構成によれば、統合計算機３１のプログラム及びデータベースの変更のために、統合計算機３１の処理が中断されることを抑制できる。
【００６０】
＜フローチャート＞
本実施の形態に係る保守計算機１の処理の手順（保守プログラム及び保守方法）について、図６に示すフローチャートに基づいて説明する。図６のフローチャートの処理は、保守計算機１の演算処理装置９０（コンピュータ）が、記憶装置９１に記憶された保守プログラム７（ソフトウェア）を実行することにより、実行される。非一時的な記録媒体８に記録された保守プログラム７が、保守計算機１（記憶装置９１）にインストールされてもよい。
【００６１】
ステップＳ０１で、保守計算機１のアプリケーション変更部２は、上記のように、統合計算機３１から制御装置２１に入力される入力点情報、及び制御装置２１から統合計算機３１に出力される出力点情報のそれぞれに関連する統合計算機３１のアプリケーションプログラム１２のソースコード部分を抽出するコード抽出処理（コード抽出ステップ）を実行する。
【００６２】
本実施の形態では、アプリケーション変更部２は、コード抽出処理において、上記のように、入力点情報及び出力点情報に変更があった場合にも、変更があった入力点情報及び出力点情報のそれぞれに関連する統合計算機３１のプログラムのソースコード部分を抽出する変更コード抽出処理を実行するように構成されている。
【００６３】
そして、ステップＳ０２で、アプリケーション変更部２は、上記のように、変更コード抽出処理により抽出したソースコード部分を、入力点情報及び出力点情報の変更内容に合わせて変更するコード変更処理（コード変更ステップ）を実行する。
【００６４】
ステップＳ０３で、アプリケーション変更部２は、コード変更処理後のソースコード部分と、入力点情報及び前記出力点情報の内容との整合性を判定して、整合性がないと判定した箇所の情報をユーザに知らせる整合性判定処理（整合性判定ステップ）を実行する。
【００６５】
ステップＳ０４で、アプリケーション変更部２は、上記のように、ソースコードの変更が完了した後、保守用ネットワークを介して、統合計算機３１の記憶装置８１に変更用のアプリケーションプログラム１２を転送し、転送が完了した後に、統合計算機３１に、現在実行しているアプリケーションプログラム１２の実行を中止させ、変更用のアプリケーションプログラム１２の実行を開始させるプログラム書換え処理（プログラム書換えステップ）を実行する。また、データベース変更部５は、上記のように、保守用のネットワークを介して、変更があった保守用入出力点情報データベース６ｂを、統合計算機３１の記憶装置８１内の入出力点情報データベース１１に転送して書き換えるデータベース書換え処理（データベース書換えステップ）を実行する。
【００６６】
〔その他の実施の形態〕
最後に、本発明のその他の実施の形態について説明する。なお、以下に説明する各実施の形態の構成は、それぞれ単独で適用されるものに限られず、矛盾が生じない限り、他の実施の形態の構成と組み合わせて適用することも可能である。
【００６７】
（１）上記の実施の形態１においては、保守計算機１は、入力点情報及び出力点情報に変更があった場合に、変更があった入力点情報及び出力点情報のそれぞれに関連する統合計算機３１のアプリケーションプログラム１２のソースコード部分を抽出する変更コード抽出処理を実行するように構成されている場合を例として説明した。しかし、本発明の実施の形態はこれに限定されない。すなわち、保守計算機１は、上記の実施の形態１において説明したように、入力点情報及び出力点情報の変更の有無に関わらず、入力点情報及び出力点情報のそれぞれに関連するアプリケーションプログラム１２のソースコード部分を抽出するコード抽出処理を実行するように構成されてもよい。例えば、アプリケーション変更部２は、全ての入力点情報及び出力点情報について、コード抽出処理を実行してもよく、或いはユーザにより選択された入力点情報及び出力点情報について、コード抽出処理を実行してもよい。
【００６８】
（２）上記の実施の形態１においては、保守計算機１は、コード変更処理後のソースコード部分と、入力点情報及び出力点情報の内容との整合性を判定するように構成されている場合を例として説明した。しかし、本発明の実施の形態はこれに限定されない。すなわち、保守計算機１は、コード変更処理の有無に関わらず、コード抽出処理により抽出したソースコード部分と、入力点情報及び出力点情報の内容との整合性を判定して、整合性がないと判定した箇所の情報をユーザに知らせる整合性判定処理を実行するように構成されてもよい。
【００６９】
（３）上記の実施の形態１においては、保守計算機１は、保守用ネットワークを介して、統合計算機３１に変更用のアプリケーションプログラム及び入出力点情報データベースを転送するように構成されている場合を例として説明した。しかし、保守計算機１は、産業用ネットワーク等の他のネットワークを介して、統合計算機３１に変更用のアプリケーションプログラム及び入出力点情報データベースを転送するように構成されてもよい。
【００７０】
なお、本発明は、その発明の範囲内において、各実施の形態を自由に組み合わせたり、各実施の形態を適宜、変形、省略したりすることが可能である。
【符号の説明】
【００７１】
１  保守計算機、１０  プラント監視制御システム、２１  制御装置、２２  監視制御機器、３１  統合計算機
【図１】
2018197951.tif 000003
【図２】
2018197951.tif 000004
【図３】
2018197951.tif 000005
【図４】
2018197951.tif 000006
【図５】
2018197951.tif 000007
【図６】
2018197951.tif 000008