説明

プロセスモデルベース自動テストシステム

【課題】
プロセス制御システムの分野で、システムを構築するに当たってテストを効率化する仕掛けを提供する。
【解決手段】
プロセス制御システムを構成するプロセス機器をソフト的にモデル化し、このソフト的にモデル化した機器モデルを登録する機器モデル登録部250と、そのプロセス制御手順を登録するプロセス制御手順登録部240とを備え、テスト時には、このプロセス制御手順と関連付けて対応する前記機器モデルを仮想的に作動し、この機器モデルからの動作信号をテスト結果DB300に逐次蓄積するとともに、この蓄積データを前記プロセス制御手順と関連付けて登録・テスト用端末60に画面表示することで、プロセスモデルベースでのテストを実現した。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プロセス制御システムに係り、特にシステム開発或いは調整時等に実システムに拠らずにテストする場合に好適なプロセスモデルベースの自動テストシステム関する。
【背景技術】
【0002】
従来、計装エンジニアの分野では、プロセス制御システムを構築するに際し、業務の大きな流れとして、処理装置・画面・キーボード・ソフトウェアよりなるプロセス制御システム構築ツールを用いて、まずプロセス制御手順を登録し、続いて登録したプロセス制御手順の動作を検証するために、別途、テスト方案を検討して文書化し、また、一部はシミュレーションも駆使して、テストを実施してきた(特許文献1)。
【0003】
ところで、プロセス制御システムの構築に加え、テストを手作りで実施するということは、システム構築という膨大なエンジニアリング作業の他に、制御手順とプロセス機器の動作との対応を詳細に検討し、入力と出力の関係を整理する等の膨大な作業が必要となり、非常に複雑かつ効率の悪い業務となっていた。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−302078号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の目的は、プロセス制御システムを構築又は調整する際に、効率的にテストを行うことの出来る仕掛けを提供することにある。
【課題を解決するための手段】
【0006】
前記目的を達成するための本発明の特徴は、プロセス制御システムを構成する個々のプロセス機器をソフト的にモデル化し、このソフト的にモデル化した機器モデルを登録する機器モデル登録手段と、前記プロセス制御システムのプロセス制御手順を登録するプロセス制御手順登録手段と、前記プロセス制御手順のテスト時に、当該プロセス制御手順と関連付けて対応する前記機器モデルを仮想的に作動し、当該機器モデルの動作信号を取り出す論理演算手段と、前記機器モデルからの動作信号を蓄積するテストデータ蓄積手段と、当該蓄積データを前記プロセス制御手順と関連付けて画面表示する画面表示手段とを備えることで、プロセスモデルベースでの自動テストシステムを実現したことにある。
【0007】
本発明のその他の特徴及び効果については、後述する本発明の実施の態様の中で具体例を挙げて詳述する。
【発明の効果】
【0008】
本発明によれば、プロセス制御システムのシステム構築時或は調整時等に、使用するプロセス機器を機器モデルとして登録し、テストすることが出来るので、効率的にテストを行うことが出来、システム構築等の時間短縮及びコスト削減を図ることができる。
【図面の簡単な説明】
【0009】
【図1】本発明を適用するプロセス制御システムの構成例
【図2】本発明によるプロセスモデルベース自動テストシステムの運用例
【図3】本発明によるプロセスモデルベース自動テストシステムの機構例
【図4】本発明による機器モデル構築の画面例
【図5】本発明によるテスト結果出力の画面例
【図6】本発明による画面・キー入出力処理部の処理フロー例
【図7】本発明による構築管理部の処理フロー例
【図8】本発明によるプロセス制御手順登録部の処理フロー例
【図9】本発明による機器モデル登録部の処理フロー例
【図10】本発明によるモデルマスター編集部の処理フロー例
【図11】本発明によるテスト管理部の処理フロー例
【図12】本発明によるプロセス制御手順読出し・実行部の処理フロー例
【図13】本発明によるエンジニアリング作業の比較例
【発明を実施するための形態】
【0010】
以下、本発明の一実施例を図1乃至図13を参照して説明する。尚、本発明を適用するプロセス制御システムとは、多数のプロセス機器を組合せ、プロセス制御手順に従って制御されるシステムであって、例えば各種の製造プラントがその代表的な例である。
【0011】
また、プロセス機器としては、その制御対象機器としてタンク、反応器(リアクター)、熱交換器、粉体機器(乾燥機)、薄膜蒸発器等、プラントに合わせて多様な機器が用いられるが、以下の一実施例ではタンクの例を挙げて説明する。
【0012】
更にその駆動系にはポンプ、モータ、電磁弁等の機器、センサー系には圧力、温度、流量、液面等の測定器、環境系にはヒーター、クーラー、加湿等の機器が用いられることが多いが、本発明における機器モデルは、これらの機器に限定されるものではなく、個々の機器の特性・動作をソフト的にモデル化し、起動又は入力信号に応じて仮想の応答又は出力信号を設定出来るものであれば、広く適用できる。
【0013】
図1において、プロセス制御装置10は、タンク20に流れ込む2系統の流体,例えば、油と中和剤の流量をセンサーである流量計22,24の検出信号を取り込んで認識する。流量計22によって検出された、タンク20に流れ込んだ油の総量が所定量になると、プロセスバルブ26に制御信号を出力して、プロセスバルブ26を開いて、タンク20からタンク30に油を流出させる。
【0014】
プロセス制御装置10は、さらに、プロセスバルブ26を開いた後、所定時間後には、プロセスバルブ26を閉じるように制御する。又、プロセスバルブ26の後段にも、流量計28が設けられており、タンク20からタンク30に流れる油の流量が計測され、プロセス制御装置10に取り込まれる。プロセス制御装置12は、タンク30の流出側配管に備えられたプロセスバルブ32、34の開閉を制御する。更に詳しくは、初期状態として、プロセスバルブ26、32、34はいずれも閉じている。
【0015】
流量計22で検出された流量の総量が10tになると、プロセスバルブ26が開かれ、タンク20からタンク30に油が移動する。移動開始して10分経過すると、プロセスバルブ26を閉じる。その後、プロセスバルブ32を開くことにより、タンク30の上部に溜まった上澄み分の清浄な油を取り出す。又、その油を取り出した後、プロセスバルブ34を開くことにより、沈澱している汚濁された油をドレインとして排出する。
【0016】
プロセス制御装置10、12は、通信回線40を介して、運転操作卓50、52に接続されている。従って、流量計22、24、28によって検出されたタンク20に流れ込む流量やタンク20から流れ出る流量は、プロセス制御装置10を介して運転操作卓52に取り込まれ、そのディスプレイ上にそれらの流量値が表示される。又、プロセス制御装置10によるプロセスバルブ26の開閉状態も通信回線40を介して運転操作卓50、52のディスプレイ上に表示される。又、プロセスバルブ32、34の開閉状態も通信回線40を介して運転操作卓50、52のディスプレイ上に表示される。
【0017】
故に、オペレータは、運転操作卓50、52のディスプレイ画面をモニターすることにより、タンク20、30の油の流入・流出状況を把握することができる。又、マニュアルでプロセスバルブ32、34の開閉制御をしようとする場合には、この運転操作卓50、52からその開閉制御を行える。プロセス制御装置12は、タンク30の後段に接続されるプラントの状況を把握し、マニュアル制御を行うものである。
【0018】
ここで、プラントの一例として、タンク20、30及びその周辺に配置された流量計やプロセスバルブを示しているが、実際のプラントは、さらに大規模であり、ジャケット付きのリアクターやポンプや開度制御の可能なコントロールバルブなどから構成されるが、ここでは、その図示は省略してある。登録・テスト用端末60は、通信回線40に接続されている。この登録・テスト用端末60を用いて、機器モデル及びプロセス制御手順の登録を行い、仮想的にプロセス制御装置と機器モデル間の出力→応答の動作を連続実行させることにより、プロセス制御装置10、12の制御動作を仮想的にテストして結果を得ることができる。
【0019】
図2に、プロセスモデルベース自動テストシステムの運用例を示す。登録・テスト用端末60には、プロセス制御手順と機器モデルを対で表示する全体表示100、個別に表示するプロセス制御手順表示110、機器モデル表示120、及びテスト結果表示150が備わっている。
【0020】
また、全体表示100の詳細を全体表示の詳細130に示す。プロセス制御手順表示110と機器モデル表示120とは、全体表示100の一方をより詳細に表示し、細かい設定等を行うためのものであり、通常は全体表示100を見てプロセス制御の動作とテストの全貌を把握し、テスト開始を指示してテスト結果表示150にてテスト結果を得る。
【0021】
全体表示の詳細130において、左半分のプロセス制御手順110と右半分の機器モデル120は、両者のブロック間が矢印で適宜結線され、入出力の関係がわかるように構成されている。左半分のプロセス制御手順110においては、スタート部131における機器、環境の状態として、機器モデル120のブロック146で、タンク30内の蒸気温度TI110を120.5℃、また油の供給元を、タンクA、タンクB、タンクCのいずれか1基を選ぶべく、例えば登録・テスト用端末60の内部機構121で乱数処理を行い、タンクBから供給するという想定の機器モデルを設定している。
【0022】
次に、プロセス制御手順110のブロック132(ステップ01と命名)で、バルブV001の開信号を出力し、対応する機器モデルのブロック134で、プロセスの変化の期待値として、その10秒後に、V001開のアンサ信号が来るという想定の機器モデルを設定している。引続き、プロセス制御手順のブロック136(ステップ02と命名)で、タンク20内の油の液面LI303が20m以上あるかを判定する。その際、対応する機器モデルのブロック138でLI303が25.5mであるという想定の機器モデルを設定しており、ブロック136では、判定がYesとなって真下へ分岐する。
【0023】
続くブロック140(ステップ03と命名)では、油をタンク20に流す流量制御を行うため、流量制御FIC002を開始する。対応する機器モデルのブロック142に、FIC002流量の変化の想定値として、時間軸上の変化パターンが設定されている。上記のプロセス制御手順と機器モデルの組を用いて、登録・テスト用端末60にて実際にプロセス制御動作のテストを実行すると、画面にテスト結果表示150が表示される。本画面では、最上段の横軸に機器が一列に表示され、縦軸に、それらが動作中であることを示す棒線が各機器に対応し、動作時間に応じて表示され、さらに、それらの移行要因が対応するタイミングに応じて横軸に表示される。
登録・テスト用端末60におけるプロセス制御テストの実現方式を示したものが図3である。図で、運転操作卓52、登録・テスト用端末60及びプロセス制御装置10が通信回線40により接続されている。登録・テスト用端末60における、プロセス制御手順と機器モデルの登録、及びテスト実行に関する内部機構を示したものが、内部機構200である。プロセス制御手順を登録する場合、まず、登録・テスト用端末60のキーボード212、及びモニタ210を通じて、画面/キー入出力処理部230を経由し、構築管理部230の管轄の元、プロセス制御手順登録部240にてプロセス制御手順の登録を行い、その内容をプロセス制御手順DB320の、手順レコード322に格納する。
【0024】
続いて、プロセス制御の機器モデルを同じように、機器モデル登録部250にて機器モデルの登録を行い、その内容を機器モデルDB330の手順レコード332に 格納する。この登録では、機器別の動特性の登録も受付け、登録内容を機器別動特性DB310の特性レコード312に格納する。また、プロセス制御のテストを実行する場合、やはり登録・テスト用端末60のキーボード212、及びモニター210を通じて、画面/キー入出力処理部220を経由し、テスト管理部260の管轄の元、プロセス制御手順読出し・実行部270にてプロセス制御手順DB320から制御手順レコード322の読出しを行い、その内容に従ってプロセス制御のテストを実行する。
【0025】
その際、プロセス制御手順の1ステップ毎に、機器モデル読出し・実行部280を起動し、制御動作を遷移させる状態の設定、及び期待動作を機器モデルDB330から機器レコード332として読み込んで、期待値とテスト値の比較を行い、一致/不一致の情報を結果レコード302としてテスト結果DB300に格納する。テストの運用面では、テスト管理部260が、テストの全体表示100、プロセス制御手順表示110、機器モデル表示120、及びテスト結果表示150の画面表示を司る。
【0026】
登録・テスト用端末60における機器モデル構築の画面を示したものが図4であり、図4(A)に機器のシンボル400をイメージした図を示し、図4(B)にプロパティ画面410を示す。このプロパティ画面410上に、シンボル420、入出力信号やパラメータを規定する情報群430が配置し、画面からそれらを定義・修正することができる。
【0027】
また、登録・テスト用端末60における、テスト結果の出力画面を図5に示す。本画面では、機器が500、510、520、及び530のように表示され、それらが動作中であることを示す棒線が540、550、560、及び570のように表示され、さらに、それらの移行要因が、545、555、565、及び568のように表示される。
【0028】
画面キー入出力処理部220の処理フローを示したものが、図6の画面キー入出力処理部処理フローで、処理ブロック600にて、通常は処理要求を待ち受け、要求が来たら処理ブロック604でキー入力か画面表示かを判定し、キー入力なら、処理ブロック608に分岐し、画面表示なら処理ブロック620に分岐する。
【0029】
処理ブロック608では、一連キーの送り先の判定を行い、プロセス制御手順・機器モデル構築であれば処理ブロック612に分岐し、テスト実行であれば、処理ブロック616に分岐する。一連キーの送り先とは、操作者がキー入力操作を開始するとき、プロセス制御手順・機器モデル構築、又はテスト実行のいずれを選択するかで決まり、引き続く一連のキー操作を同じ送り先に結びつけるために保持される情報である。
【0030】
処理ブロック612では、入力キー内容を構築管理部230に送り、また、処理ブロック616では、入力キー内容をテスト管理部260に送る。また、処理ブロック620では、表示要求内容を画面に出力する。
【0031】
続いて、図3の構築管理部230の処理フローを示したものが、図7の構築管理部処理フローで、処理ブロック630にて、通常は処理要求を待ち受け、要求が来たら処理ブロック634でキー入力か画面表示かを判定し、キー入力なら、処理ブロック638に分岐し、画面表示なら処理ブロック650に分岐する。
【0032】
処理ブロック638では、要求処理の判定を行い、プロセス制御手順構築であれば処理ブロック642に分岐し、機器モデル構築であれば、処理ブロック646に分岐する。処理ブロック642では、キー入力内容をプロセス制御手順登録部240に送信し、処理ブロック646では、キー入力内容を機器モデル登録部250に送信する。
【0033】
また、処理ブロック650では、表示の要求範囲を判定し、制御手順の表示要求であれば処理ブロック654に、機器モデルの表示要求であれば処理ブロック658に、そして全体の表示要求であれば処理ブロック662にそれぞれ分岐する。処理ブロック654では、制御手順の画面出力要求を行い、処理ブロック658では、機器モデルの画面出力要求を行い、そして処理ブロック662では、制御手順と機器モデルの組合わせの画面出力要求を行う。
【0034】
次に図3のプロセス制御手順登録部240の処理フローを示したものが、図8のプロセス制御手順登録部処理フローである。まず、処理ブロック670で通常はキー入力を待ち受けし、入力が来たら処理ブロック674にてプロセス制御手順を編集し、処理ブロック678で画面出力を要求し、処理ブロック682で一連の編集が終了したかを判定し、未終了なら処理ブロック670に戻り、終了なら処理ブロック686でプロセス制御DB320の手順レコード322を更新する。
【0035】
続いて、図3の機器モデル登録部250の処理フローを示したものが、図9の機器モデル登録部処理フローである。まず、処理ブロック700で通常はキー入力を待ち受けし、入力が来たら処理ブロック704にて、機器モデルの登録か個別機器の動特性の登録かを判定し、機器モデルなら処理ブロック708に分岐し、機器モデルマスターなら処理ブロック724に分岐する。処理ブロック708では、機器モデルの編集を行い、処理ブロック712で画面出力を要求し、処理ブロック716で一連の編集処理が終了したかどうかを判定する。終了なら処理ブロック720に移行し、未終了なら処理ブロック700に戻る。処理ブロック720では、機器モデルの編集結果を機器モデルDB330の方案レコード332に格納する。
【0036】
また、処理ブロック724では、機器モデルマスターを編集し、処理ブロック728で画面出力を要求し、処理ブロック732で一連の編集処理が終了したかどうかを判定する。終了なら処理ブロック736に移行し、未終了なら処理ブロック700に戻る。処理ブロック736では、機器モデルマスターの編集結果をモデルマスターDB310のモデルマスター312に格納する。
【0037】
次に、処理ブロック724の機器モデルマスター編集の詳細について、図10にて説明する。図10において、まず処理ブロック740で、機器モデルの名称を取り込む。次に処理ブロック744で、機器モデルのアイコンを取り込む。続いて処理ブロック748にて、当該機器モデルにおけるパラメータ項目を決定し、項目別の設定仕様の取込みを行う。
【0038】
続く処理ブロック752において、当該機器モデルに複数の応答があるかを判定し、ある場合、処理ブロック760にて偶然性に基づく応答が要求されているか否かを判定し、要求ありの場合、処理ブロック764において当該項目に“乱数処理へのリンクあり”のフラグを立て、当該項目において取り得る状態を取込む。例えば、温度範囲が0〜50℃の外気温状態に対し、3点を取りうるというような、状態の設定数と、3点として例えば10℃、20℃、30℃を設定する。
【0039】
続いて、処理ブロック772に移行して次の項目の判定を行う。これは、機器モデルとして、状態を操作者の任意で設定するか、乱数を用いて無作為に設定するかを判断するもので、どちらにするかは状態項目毎にプロセス制御手順の登録時に設定されている。任意なら処理ブロック752または760から処理ブロック772に分岐し、次の項目の判定を行う。
【0040】
次に、図3のテスト管理部260の処理フローを示したものが、図11のテスト管理部処理フローである。まず、処理ブロック800で通常はキー入力を待ち受けし、入力が来たら処理ブロック804にてプロセス制御手順DB320の手順レコード322を呼出し、ステップの初期化、即ち先頭のステップを探し当てて処理を開始する。即ち、処理ブロック808にて機器モデル読出し・実行部を起動し、続いて処理ブロック812にてプロセス制御手順読出し・実行部を起動する。
【0041】
そして、処理ブロック816にて出力方式の要求を判定し、逐次出力なら処理ブロック832に、一括出力なら処理ブロック820に分岐する。処理ブロック820では、一連のステップに対し、テストが終了したかどうかを判定し、終了ならば処理ブロック828に移行して、テスト結果DB300の、一連の結果レコード302を取出してテスト結果の画面出力を要求して処理ブロック800に戻り、未終了なら処理ブロック824でステップを更新して処理ブロック808に戻る。
【0042】
また、処理ブロック832では、テスト結果DB300の、一つの結果レコード302を取出してテスト結果を画面出力要求し、続いて処理ブロック836で、一連のステップに対してテストが 終了したかどうかを判定し、終了ならば処理ブロック800に移行し、未終了なら処理ブロック 840でステップを更新して処理ブロック808に戻る。
【0043】
引続き、図3のプロセス制御手順読出し・実行部270の処理フローを示したものが、図12のプロセス制御手順読出し・実行部処理フローである。まず、処理ブロック860で、機器モデルDB330の機器モデルレコード332を読出し、当該ステップにおける制御対象機器の状態の情報を取出して、テストを実行するに当たっての始めの状態として設定する。
【0044】
次に、処理ブロック864にて、機器動作の設定に際し、乱数を使用する要求があるかどうかを判定し、要求があるなら処理ブロック868にて、乱数DB340の乱数レコード342に従い、当該項目の状態を乱数によって設定する。次に処理ブロック872でプロセス制御手順DB320の手順レコード322より、当該ステップのプロセス制御手順の取出しを行う。そして、処理ブロック876でプロセス制御手順を実行し、最後に880にてテスト結果DB300も結果レコード302に制御出力値を格納する。
【0045】
図13は、本発明の適用前後のエンジニアリング作業を比較したものであり、図13(A)が本発明の適用前、図13(B)が本発明の適用後を示す。処理ボックスの数で単純比較すると、適用前が7個に対し、適用後は4個と作業が削減される。更に、テストに絞れば、5個 → 1個と大幅に低減される。
【0046】
以上述べたように、本実施例によれば、プロセス制御システムの分野で、計装エンジニアがシステム構築と同時に機器モデルを登録しさえすれば、テストを自動で実行できるため、プロセス制御システム構築のコスト削減の効果がある。
【符号の説明】
【0047】
10,12・・・プロセス制御装置
20,30・・・タンク
35,37,39・・・油供給元タンク
40・・・通信回線
50,52・・・運転操作卓
60・・・登録・テスト用端末
100・・・全体表示
110・・・プロセス制御手順
120・・・機器モデル
121・・・テスト用端末60の内部機構
130・・・全体表示の詳細登録
150・・・テスト結果表示
200・・・内部機構

【特許請求の範囲】
【請求項1】
プロセス制御システムを構成する個々のプロセス機器をソフト的にモデル化し、このソフト的にモデル化した機器モデルを登録する機器モデル登録手段と、前記プロセス制御システムのプロセス制御手順を登録するプロセス制御手順登録手段と、前記プロセス制御手順のテスト時に、当該プロセス制御手順と関連付けて対応する前記機器モデルを仮想的に作動し、当該機器モデルの動作信号を取り出す論理演算手段と、前記機器モデルからの動作信号を蓄積するテストデータ蓄積手段と、当該蓄積データを前記プロセス制御手順と関連付けて画面表示する画面表示手段とを備えたことを特徴とするプロセスモデルベース自動テストシステム。
【請求項2】
請求項1において、前記プロセス制御手順のテスト時、当該プロセス制御手順の時間軸に対応して前記機器モデルからの動作信号を動作履歴情報として蓄積し、前記画面表示手段は前記時間軸を基準に前記動作履歴情報を画面表示することを特徴とするプロセスモデルベース自動テストシステム。
【請求項3】
請求項2において、前記画面表示手段は、個々の前記機器モデルを識別する名称および図象と時間軸上の動作、および他の機器モデルとの時間軸上の因果関係を図面で表示することを特徴とするプロセスモデルベース自動テストシステム。
【請求項4】
請求項1において、前記機器モデル登録手段は、プロセス機器の種類毎に原型となるモデルマスターを予め記憶し、複数のモデルマスター群の中から希望するモデルマスターを抽出し、テスト時の機器モデル固有のパラメータ値を入力して登録する機構を備えたことを特徴とするプロセスモデルベース自動テストシステム。
【請求項5】
請求項4において、前記機器モデル登録手段は、前記モデルマスターの新規作成時に、その振舞いを表わすパラメータ項目群を個々にプロパティ(属性)として定義すると共に、既存のモデルマスターの振舞いを表わすパラメータ項目群に対して改造を施すことのできる機構を備えたことを特徴とするプロセスモデルベース自動テストシステム。
【請求項6】
請求項5において、前記モデルマスターの振舞いに関して予め複数の動作候補を用意し、前記テストの実行時に、前記動作候補群の内からから一つの動作を乱数により決定する機構を備えたことを特徴とするプロセスモデルベース自動テストシステム。
【請求項7】
請求項1において、前記画面表示手段は、前記プロセス制御手順と前記機器モデルとを同一画面上で結合関係を明示して表示することを特徴とするプロセスモデルベース自動テストシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate