説明

プラント情報制御システムおよび紐付けプログラム

【課題】既存の産業向けのシステムに新規のアプリケーションを導入するシステム構築をエンドユーザ側で行うことを容易にする。
【解決手段】
プラント制御に要するIOをアプリケーション130、140と紐付けるプロセスデータサーバ120を用意し、この中でIOのタグを、装置や物理量、工程など、アプリケーション130、140で使用されることが予め想定される上位概念を表す情報ならびに、場所などの適用先固有の情報とに予め紐付けておく。後付けで導入するアプリケーション130、140の構築では、これらの情報を検索して、アプリケーション130、140の内部変数とIOの紐付けを行なう。これにより、センサやアクチュエータなどの装置のタグ情報など、アプリケーション130、140と直接関係しない情報を使うこと無しに、アプリケーション130、140を構築できるようにする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は産業分野向けのプラント情報制御の技術に関する。
【背景技術】
【0002】
産業分野向けのプラント情報制御システム(以下、単に「システム」と称する場合がある)には、従来のプロセス監視やループ制御、シーケンス制御のようにシステム構築時に組み込むアプリケーション(以下、「アプリ」と略記したり、「アプリケーションプログラム」と称したりする場合がある)をユーザサイドで容易に構築できることが求められている。しかし、これだけでなく、ERP(Enterprise Resource Planning:企業資源計画)など後から導入したシステムとの接続を行うことや、保全や省エネなどの後から出てきたニーズに対応した新たなアプリをユーザサイドで容易に構築できることが求められるようになって来ている。
【0003】
このようなニーズに対する課題として特許文献1では、異なるアプリケーション間の通信ドライバに、収集データとその変換処理のユーザ毎のカスタマイズが困難であるという問題が挙げられており、これらを解決するWebベースの通信方式が示されている。
【0004】
産業分野向けのプラント情報制御システムに載せるアプリケーションの構築は、大きく、収集データの決定・設定と、内部処理の構築と、表示処理の構築とに分割できる。例えばSCADA(Supervisory Control And Data Acquisition)ソフトのような場合、基本的にはデータを中心にそれをどう処理(例えばフィルタリング処理など)し、どう表示するか(ミミック表示や計器表示)を決定するアプローチか、又は表示中心にどの部分にどのデータをどう加工して見せるかを決定するようなアプローチが行われる。
【0005】
例えば特許文献2では、様々な制御システム、制御対象設備に亘って統合的に管理する設備管理アプリケーションを対象としたシステムが示されている。このシステムではコンフィグレーションモジュールにより監視項目を設定するのであるが、エンタプライズツリーや装置ツリーと呼ばれる設備の階層構造をユーザが定義し、これにデータ取得用コンピュータから取得したIO(Input Output)の情報を紐付け、さらに監視用のビューと紐付けを行うことでシステム構築を行っている。
【0006】
一般的にMVC(Model−View−Control)モデルと呼ばれるソフトウェアの基本的な構成モデルが知られている(非特許文献1など参照)。前述のSCADAソフトによるシステムの構築は、MVCにおけるModel(データ)を中心としたシステム構築、またはViewを中心にしたシステム構築と言うことができる。特許文献2もモデル(Model)中心のシステム構築ということができる。
【0007】
しかし、特許文献3の装置監視ツールセットのようなアプリケーションを、複数のプラント情報制御システムへ横展開する場合は、始めに処理とその結果のデータに紐付く画面表示処理があり、そのアプリケーションの内部変数にどのIOを割り当てるかを慎重に選択しながら個々のIOを紐付ける形でシステムを構築することとなる。これはいわばControl中心のシステム構築ということができる。
【0008】
特にプロセスの予測シミュレーションや工程進捗管理のように、複数の入力を持ち、内部でこれらの入力やその過去データを用いてデータ加工(条件判定と言った比較的簡単な論理処理も含む)を行うようなツール(アプリケーション)を想定した場合、予め出来上がったツールの複数の内部変数と、設備のIOのどれを紐付けるかという事の決定と設定がシステム構築において主に実施するべき項目となる。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2008-305412号公報
【特許文献2】特表2003-525489号公報
【特許文献3】特表2004-532476号公報
【非特許文献】
【0010】
【非特許文献1】オブジェクト指向における再利用のためのデザインパターン 改訂版 1999/11/1 ソフトバンクパブリッシング
【発明の概要】
【発明が解決しようとする課題】
【0011】
このような既存のControlをシステムに適用するアプローチのシステム構築では、アプリケーションに対する知識(アプリが使用する内部変数とそれに紐付けるべき、プロセス値(プロセスデータ)の関係)と、IOに関する知識(タグ番号と実際の設備のIOの関係:タグ構造)とが求められ、必ずしもアプリケーションの専門家がシステム構築を容易に行うことができるわけではない。
【0012】
プロセス制御、生産管理といったプラント制御を行う産業向けのプラント情報制御システムにおいてもエンドユーザコンピューティングのニーズが高まっているが、DCS(Distributed Control System)やシーケンサ、MES(Manufacturing Execution System)などがシステムに取り込むデータの識別子は、必ずしもアプリケーションの専門家にとって既知のものではないため、IOの紐付けにマンパワーを要する。
【0013】
前記事情を鑑みて、本発明の目的は、既存の産業向けのシステムに新規のアプリケーションを導入するシステム構築をエンドユーザ側で行うことを容易にすることである。
【課題を解決するための手段】
【0014】
本発明のプラント情報制御システムは、検索のための複数のキー(キーを識別するための情報(キーの識別子)とキーの値)を持った複数のデータ(後記するプロセスデータに相当)を持つレジストリを持ち、複数のレジストリ上の複数のキーに紐付けたIOを管理し、レジストリ上のキーを持ったデータを、キーの種類(識別子)やキーの値に基づいて検索する手段と、検索されたデータをアプリケーションプログラムの内部変数と紐付ける手段とを備えて構成される。
レジストリ上のキーで紐付けられたIOのInputの値を、アプリケーションを実行するときに入力されるアプリケーションデータに設定したり、そのアプリケーションデータに基づいて処理を実行し、アプリケーションの内部変数に設定された値をレジストリのキーに紐付けられたIOのOutputの値に設定したりすることが可能となる。
【0015】
アプリケーションの内部変数を予めレジストリのキー(キーの識別子、キーの値)と対応させることで、自動的に検索を行い選択肢となる、キーを持つデータを絞り込む手段を用いても良い。またこの自動検索の手段は、自動選択で対応するキーを持つデータが一意に決まる場合、自動で紐付けを行っても良い。
キーの識別子を階層的な構造で管理しても良い。
【0016】
このようにすれば、アプリケーションをシステムに適用するためにIOを検索する代わりに、レジストリのキーを検索し、アプリケーションの内部変数と紐付けることができる。
【0017】
キーはIOのタグ番号と異なり、アプリケーションの内部変数に対応付け易い上位概念、例えば塔頂部圧力であるとか、気圧、主原料投入完了フラグ、昇圧完了フラグであるといったものを設定できる。
またキーを複数設定したり、キーに階層構造を持たせたりすることもできるので、アプリケーションの内部変数と対応付けるべきIOの選択をし、一意あるいはごく少数にすることができる。その結果、IOのタグ構造を知らなくても、システムを容易に構築することが可能となる。
詳細は、後記する。
【発明の効果】
【0018】
本発明によれば、既存の産業向けのシステムに新規のアプリケーションを導入するシステム構築をエンドユーザ側で行うことを容易にすることができる。
【図面の簡単な説明】
【0019】
【図1A】本発明の第一の実施形態のシステムの基本構成を示す図である。
【図1B】本発明の第一の実施形態のシステムの基本構成を示す図である。
【図2】本発明におけるアプリケーションプログラムの設定方法の一例を示す図である。
【図3】本発明の変数紐付け処理に用いる画面の一例を示す図である。
【図4】本発明におけるデータ更新手順の一例を示す図である。
【図5】本発明の変数紐付け処理手順の一例を示す図である。
【図6】本発明の第二の実施形態のシステムの基本構成を示す図である。
【図7】本発明の変数紐付け処理でフィルタ設定も実施する画面の一例を示す図である。
【発明を実施するための形態】
【0020】
図1(図1Aおよび図1Bの総称)に、本発明の第一の実施形態の基本的なシステム構成を示す。このシステムは、例えば原料から製品を作るプロセスプラントであるプラント101と、その状態を計測したり、操作したりすることで、プラント101のIOを設定する機器(IO機器)(102、103、104)と、機器(102、103、104)と通信可能に接続し、プラント制御を実行する制御システム110、ならびにそのような制御システム110を通して得られる情報を収集し、それらの情報を活用するアプリケーション(131,141)を実行する計算機(130、140)に情報を配信(送信)するプロセスデータサーバ(管理サーバ)120とから構成される。
【0021】
プロセスデータサーバ120は、制御システム110から得られる、プロセスデータサーバ120上のデータ124が記憶される記憶領域と、それらのデータ124を管理するレジストリ(121、122、123)およびその管理形式等を定めたレジストリ情報ならびに、データ124を更新したときの更新データを計算機(130、140)へ転送(送信)するデータ転送プログラム125とで構成される。
なお、プロセスデータサーバ120は、入力部、レジストリ情報などの情報やデータ転送プログラム125などのプログラムを記憶する記憶部、前記プログラムを読み出して実行することで前記レジストリ情報を管理する制御部、表示部といったハードウェア資源を備えたコンピュータである。前記記憶部が記憶するプログラムには、本発明によるアプリケーションの内部変数を、プラント101のIOのタグ情報(後記)と紐付ける紐付けプログラムが存在する。データ転送プログラム125は、この紐付けプログラムの一部として構成しても良い。
また、計算機(130、140)は、入力部、記憶部、制御部、表示部といったハードウェア資源を備えたコンピュータである。
【0022】
また制御システム110は、機器(102、103、104)の具体例であるセンサなどの入力装置から入力された入力情報(プラント101のIOのInputの値)、ならびに機器(102、103、104)の具体例であるアクチュエータやコントローラを操作するための出力情報(プラント101のIOのOutputの値)など、制御システム110内のデータ116をプロセスデータサーバ120へ転送するデータ転送プログラム115を有する。
このような制御システム110は、機器(102、103、104)と通信可能に接続される制御部111、112と、入力インタフェースおよび出力インタフェースを備えており、プロセスデータサーバ120と通信可能に接続される入出力部113といったハードウェア資源を備えたコンピュータである。
【0023】
図2には本発明におけるアプリケーションプログラムの設定方法のフローチャートを示す。このフローチャートの処理は、ユーザ(エンドユーザ)からの操作やプロセスデータサーバ120からの要求に従い、計算機(130、140)の制御部が実行する。
【0024】
ユーザは始めにアプリケーションプログラム(131や141)を計算機(130、140)にインストールし(ステップ201)、アプリケーションプログラムのプロセス側の入出力変数(内部変数)をプロセスデータサーバ120上のプロセスデータ(データ124に相当)と紐付ける(ステップ202)。なお、プロセスデータとは、機器(102、103、104)を介してプラント101に対するプラント制御(監視)を実行するときに設定される値(例:調節弁の開度)およびその値が設定されるプラント制御の対象(IO)の識別子(タグ情報)を含むデータをいう。
【0025】
ステップ202の処理の中では、前記入出力変数に対するループ処理(ステップ210)の中で、各入出力変数に対して、プロセスデータサーバ120上のレジストリの検索キーの設定を行い(ステップ211)、その検索キーでのプロセスデータの検索を行わせる(ステップ212)。続いて前記検索によるプロセスデータサーバ120上の検索結果(プロセスデータ)から紐付けるべきデータを選択して紐付けを行う(ステップ213)。なお、前記検索キーの設定や紐付けるべきデータの選択は、計算機(130、140)の入力部(例:マウス、キーボード)からの入力を受け付けて行われる。
【0026】
全ての入出力に対する設定が終わった段階でアプリケーションプログラム(131や141)を起動し(ステップ203)、そのデータの収集・転送をプロセスデータサーバ120に指示して開始する(ステップ204)。以上が、アプリケーションプログラムの設定方法の一連の流れとなる。
【0027】
図3には、アプリケーションプログラムのプロセス側の入出力変数をプロセスデータサーバ120上のプロセスデータと紐付けるための画面の一例を示す。この紐付け設定画面301は、検索条件表示部302、検索結果表示部303、検索条件設定部304、紐付け実行ボタン305、アプリ変数表示部306、および検索実行指示ボタン307から構成される。なお、この紐付け設定画面301は、計算機(130、140)の表示部(例:ディスプレイ)で表示される。
【0028】
検索条件設定部304は、図3ではツリー構造で示しているが、展開・圧縮表示機能を実装しても良い。また階層性の無い単純なリストでも良い。
検索条件表示部302は、ここ(304)で選択されたキー(310)を示す階層を表示する。図3の例ではルートパスからの全階層を表示している(階層の区切りは“/”で表示している)。検索実行指示ボタン307が押下された場合、選択されたレジストリのキー310に紐付けられたプロセスデータを検索し、抽出されたプロセスデータを検索結果表示部303に表示する。図3の例では、検索結果表示部303の左側(符号312)に検索条件への適合状況を示し、右側(符号313)にはプロセスデータの名称(識別名)を示している。また検索結果の内、選択されたものは例えば背景色を変える(符号311)などの方法で、強調表示しても良い。選択された検索結果が有る状態で、紐付け実行ボタン305を押下することで紐付けを確定する。図3では、「FVA_001.pv」というアプリの内部変数(プロセス側の入出力変数)と「F101」という名称のプロセスデータとが紐付けられたことになる。
【0029】
なお、図3では、レジストリ1のキー310の選択により、少なくともキー310で示す検索条件を満たす「F101」「L001」「L012」という名称のプロセスデータが検索されており(符号311)、プロセスデータ「F101」は、レジストリ1〜3で示す検索条件にすべて合致している(「○」で表記)していることが示されている(符号312)。プロセスデータ「L001」は、レジストリ1のキー310で示される検索条件は満たすが、レジストリ3で示す検索条件は満たしていない(「−」で表記)。
【0030】
このような図3は図2のステップ211からステップ213の処理の実行時に使用する画面の一例である。なお、図1Bではレジストリを3つ(121、122、123)示しており、図3でも検索条件設定部304をタブウインドウとし、レジストリ1、レジストリ2、レジストリ3のタブを示している。しかし、本来レジストリはツリー構造のため、この例であれば、3つのレジストリを合わせた一つのツリーとして表示することもできる。従って、図1Bおよび図3においてレジストリを1つに限定する実施例も本発明に含まれ得る。その場合、レジストリ上では複数の項目を選択可能とすれば、図1Bおよび図3に示した例と同じ条件で検索を行うことができる。
【0031】
また検索結果表示部303を2つの領域に分割し、左側(符号312)に検索結果の条件への適合状況、右側(符号313)に検索したプロセスデータの識別名を表示する例を示したが、適合状況の表示は適合率のような数値で表示しても良い。また、検索条件が全て成立したものだけを検索結果に表示するようにし、検索結果表示部303の左側(符号312)部分を削除しても良い。
【0032】
なお、図3に示すように、レジストリのキーは、一般的には、プラント101のIOの属性を表現する文字列であり、たとえば、レジストリ1は設備・装置(属性の一つ)を示すツリー構造とする。その場合、例えば最上位(第一層)には、電気所、蒸留塔や反応槽などユニット設備、或いは配管などの輸送設備を、第二層には、線路端、トランス、塔頂部、リボイラ、ポンプやバルブといった構成要素を設定する。またレジストリ2には、プラントの場所(属性の一つ)に関する情報を設定する。またレジストリ3は、データの物理的な型(物理量:属性の一つ)を示すツリー構造などとする。その場合、例えば最上位に流量、圧力、温度などを設定し、第二層に単位などを設定する。
【0033】
このように物理量や設備、場所といった、アプリケーションや制御システム110への依存性が少ない情報をキーとしたレジストリを構築し、キーとIOの紐付けを実施しておけば、一般的な装置(の種別または構造)や物理量、工場の場所といったユーザになじみのある情報だけを用いてアプリケーションに必要な情報を検索することが可能になる。このとき、計算機130、140は、プロセスデータサーバ120から最新のデータを論理的なデータリンク151(図1B参照)を通して取得する。
【0034】
制御システム110上のデータ116とプロセスデータサーバ120上のデータ124とを用いた、キーとIOの紐付けは従来通りの手法で実施する。たとえば、制御システム110にOPC(OLE(Object Linking and Embedding) for Process Control)サーバを実装しておけば、プロセスデータサーバ120は最新のデータを論理的なデータリンク152(図1B参照)を通して取得し、対応する記憶領域へ格納することができる。
【0035】
プロセスデータサーバ120とアプリケーション131、141との通信には、例えばOPC、DCOM(Distributed Component Object Model)、CORBA(Common Object Request Broker Architecture)、SOAP(Simple Object Access Protocol)など、プロセスデータサーバ120のデータ転送プログラム125とアプリケーションプログラム131、141との間で予め取り決めた方法で通信を行えばよい。
【0036】
図4には、制御システムのデータ転送プログラム115、プロセスデータサーバのデータ転送プログラム125、およびアプリケーションプログラム131(あるいは141)との間の通信シーケンスの一例を示す。図4を用いて、本システムにおけるデータ更新手順について説明する。
【0037】
プロセスデータサーバ120のデータ転送プログラム125は、制御システム110からデータを受信するスレッド(受信処理スレッド)401、更新データを管理する、2面からなるキュー(更新データキュー1)402、(更新データキュー2)403、アプリケーションへ更新データを送信するタイミングを決定するタイマ(プロセスデータサーバ120に内蔵)を実行するスレッド(タイマスレッド)404、およびタイマにより駆動されアプリケーションに送信するべきデータを作成して送信するスレッド(送信処理スレッド)405からなる。
なお、説明の便宜上、プログラム間(またはスレッド間、キュー間)でデータを送信または受信するとは、そのプログラム(またはスレッド、キュー)を実行するコンピュータ(計算機(130、140)、プロセスデータサーバ120、制御システム110)間でデータを送信または受信することを意味するものとして説明を続ける。
【0038】
制御システム110の送信処理スレッド(データ転送プログラム115によるもの)から送信されるデータ116は定周期、更新の有無など何らかのタイミングで送信される。
受信処理スレッド401はこのデータ受信イベントを契機にデータ124の更新処理(410〜415)を行う。この中で更新のあったデータ116を参照するのに必要な情報(例:データリンク152を参照して更新前後のデータ116の差分を評価するアルゴリズム)を更新データキュー1(402)または更新データキュー2(403)へ格納する。
【0039】
更新データキュー1、2(402、403)はタイマの作動タイミングで交互に切り替えて使用する。
タイマスレッド404は、タイマが作動すると、送信処理スレッド405にアプリケーション131(あるいは141)へのデータ送信を要求する(データ送信要求421、422)。
データ送信要求421、422を受けた送信処理スレッド405では、更新データキューを切り替えた上で、使用中の更新データキューから最新情報を取得し(431、432)、結果(最新情報)の取得が完了した(441、442)段階でアプリケーション131(あるいは141)への送信データを作成し、データ送信450、451をする。
【0040】
その後、アプリケーション131(あるいは141)側の受信処理スレッドにデータを送信し、アプリケーション内のデータを更新させる。更新データは、少なくとも、アプリケーションの内部変数の識別に必要となる識別情報(アプリ変数識別ID(Identifier))とデータ(値)とのペアとして作成すれば良い。また更にデータの更新時刻などの付帯的な情報を付加しても良い。
【0041】
逆に、アプリケーション131、(あるいは141)の情報を、プロセスデータサーバ120を通して制御システム110に反映する場合には、少なくともアプリケーションの内部変数の識別情報と値とのペアをプロセスデータサーバ120に送信すれば良い。これにより、内部変数の識別情報とIOタグ(タグ情報)の紐付けを検索することで、制御システム110内のIOを更新することもできる。
【0042】
なお、本実施形態ではタイマスレッド404の処理で一定周期毎に更新データを纏めてアプリケーションへ送信する例を示したが、制御システム110からのデータ更新を契機に送信処理スレッド405のデータ送信450、451を実施しても良い。またこのようにIOからのデータ受信タイミングに合わせてアプリケーションへデータを送信する場合には、プロセスデータサーバ120に、データ124を格納する記憶領域を設けない実施形態とすることもできる。
【0043】
次に図5を用いて、アプリケーションとプロセスデータベースの紐付け時における処理シーケンスの一例を示す。アプリケーションの構成処理は、計算機(130(または140))のアプリケーションの一機能とするか、又はその設定ファイルを読み込んでプロセスと紐付けるべきデータを認識できるように構成するものとする。
なお、プロセスデータベースとは、プロセスデータサーバ120がプロセスデータを管理するために用いるデータベースである。
【0044】
始めに図3の画面の表示処理501を行う。
次に、計算機(130(または140))がプロセスデータサーバ120のプロセスデータベースに接続し、レジストリ情報の要求502を行う。プロセスデータベースでは要求502を受けてレジストリの一覧情報の送信データの作成503を行い、その結果(レジストリ情報の一覧)の返信(送信)を行う(504)。
【0045】
アプリの構成処理ではレジストリ情報を受けて図3の検索条件設定部304の表示更新処理505を行い、i(1、2、・・・)番目のアプリケーション内部変数(第i変数)の識別情報をアプリ変数表示部306へ表示(506)する。なお、処理506以降の処理は、アプリの内部変数分繰り返される。この繰り返しのインデックスをiとする。
【0046】
次に、計算機(130(または140))のオペレータによる検索条件の選択507を待つ。入力部からの入力により、検索条件としてキー310が選択された場合は図3の検索条件表示部302の更新を行う(508)。つまり、検索条件表示部302にて、選択したキーのレジストリを階層で表示する。
【0047】
次に、オペレータによる検索実行指示ボタン307の押下を受け、検索条件を元に検索要求を受信すると、アプリの構成処理では、プロセスデータの検索要求510が発行そして送信される(509)。プロセスデータベースでは、この検索要求510を受け、該当するプロセスデータの検索処理511を行い、検索結果をアプリの構成処理へ送信する(512)。アプリの構成処理では受信した検索結果を図3の検索結果表示部303を更新して表示する(513)。
【0048】
次に、オペレータによる紐付け実行ボタン305の押下が行われると、アプリの構成処理はアプリデータ識別子(内部変数)と、表示した検索結果のうち入力部により選択されたものの持つプロセスデータ識別子(符号313参照)をペアにして紐付けデータを作成し(514)、紐付けデータをプロセスデータベースへ送信する(515)。
プロセスデータベースでは、少なくともプロセスデータ識別子をキーにアプリデータ識別子を検索できるような形で、送信された紐付けデータを登録して管理する(516)。
【0049】
図6は本発明の第二の実施形態として、アプリケーションプログラム126、127(アプリケーションプログラム131、141と同等)をプロセスデータサーバ120上に実装する場合の構成(特に、図1Bに示した構成に対応)を示している。本構成においては、アプリの内部変数とプロセスデータとの紐付けの段階でアプリデータの参照先をプロセスデータの紐付けた相手のデータ(IO)となるようにアドレスを設定することで、プロセスデータサーバ120によるデータ作成(図4の符号405参照)とデータ送信450、451(図4参照)を省いた処理構成とすることもできる。
なお、この場合、計算機130、140(図1参照)は不要であり、データリンク151(図1B参照)と同等のデータリンク128が構成される。
【0050】
本発明の別の実施例として、アプリケーションプログラムの、プロセスデータと紐付けるべき内部変数に対して、予めレジストリに対応するキー情報を割り当てておき、アプリケーションをインストール後、自動的にその割り当てに基づいて、プロセスデータベースのレジストリを検索し、紐付けデータを自動的に登録するようにしても良い。前述のような物理量、設備、場所に対するキーのうち、アプリケーションに対しては予め物理量と設備に関するキー情報を設定しておき、インストール時に場所のキー情報のみを与えた上で、自動設定させるような方式としても良い。
【0051】
アプリケーションプログラムが前提とする物理量や状態、条件をレジストリとして構築しておき、これにプロセスのIOを紐付けておく。これにより、アプリケーションプログラムがプロセス側からの入力あるいはプロセス側への出力を必要する内部変数に対して予め設定したキーに基づいて、IOを検索し紐付けることが可能となる。
【0052】
例えば、熱交換機の性能劣化診断などのアプリケーションを想定した場合、その内部には伝熱のモデルがあり、伝熱係数の変化をIOの実績(履歴も含む)から推測して、汚れなどによる劣化を診断する。このとき、こうしたアプリケーションにも冷却水流量、入り口温度、出口温度など、特定の意図を持ってIOから取得するべきデータがある。こうしたデータの存在自体は熱交換機というプラントの設備(種別)が決まれば、有る事を前提として仮定できる。従って、そうした情報をアプリケーションの内部変数に、紐付け情報として、予め持たせておくことは可能である。また、内部計算の都合上、単位や更新周期などといった情報に関しても紐付け情報として利用できる。
一方、IO機器を実際の設備に組み付け、制御システム110で監視制御する場合、取り付けた設備が何であるかは分かるわけであるから、例えば「流量の計測値である」とか、「熱交換機の冷却水である」とか、「工場内のどの建屋にある装置である」とかいった情報を、IOタグに対してもキー情報として付与することが可能である。
【0053】
従って、アプリケーションをシステムに組み込む際には、アプリケーションを適用したい設備の設置場所などの情報さえ与えれば、必要なIOを紐付けて、アプリケーションを自動構成することが可能となる。
【0054】
また、例えばバッチ管理のようなアプリケーションの例であれば、製造する品目(属性の一つ)または製造に要する品目(属性の一つ)に関する情報を格納するレジストリ、攪拌・溶解・抽出・充填などといったプロセス(属性の一つ)とそれを構成するサブプロセス(属性の一つ)に関するレジストリ、設備種別(属性の一つ)に関するレジストリ、場所(属性の一つ)に関するレジストリにIOおよびアプリケーションの内部変数を紐付けおく。
【0055】
処方が同一のある製品群を想定した場合、それを管理するアプリケーションは、全体的な製造プロセスの順序の管理、工程の進捗の管理、原料投入状況の管理、自動制御設備のスーパーバイザリコントロール、製造実績の管理など、何らかの定められた機能を実装しているはずである。そのため、そうした管理や制御に必要な条件判定に使う変数や記録すべき実績値の入力として使う変数、制御システム110への出力を設定するべき変数などを実際のIOと紐付けなくてはならない。こうした変数には例えば、攪拌工程の終了を示すフラグなどのように、予めプログラムされた意図がある。したがって、こうした意図に関する情報をプロセス、工程、物理量などの異なる概念分類に対して、予め付与しておく。これにより、実際のプロセスデータベースが決まった場合に、アプリケーションの内部変数とプロセスデータベースのデータとを、こうした情報を用いて紐付けることができる。少なくとも、紐付けるべき選択肢を絞り込むことが可能となる。
【0056】
このような紐付け方式に基づいて一意にプロセスデータとアプリケーションの内部変数の紐付けができる場合は、自動で紐付けを実施し、複数の候補が残る場合は、ダイアログ画面(図3参照)でオペレータに設定させるような処理方式としても良い。
【0057】
また、図4に示したアプリへのデータ送信処理(符号450など参照)で、データの単位換算や論理判定などデータのフィルタ処理を行うように構成しても良い。図7には、アプリケーション構築時にこのようなフィルタ設定も実施するための操作画面の一例を示す。
【0058】
基本的には図3に示した画面と同様であるが、フィルタ選択用にツールチップの選択部710が追加されており、ツールチップ711〜715を選択して、パラメータやフィルタ関数を設定する(例:単位換算、二値化、Mapping、離散化、関数変数)。その上で紐付け実行ボタン305を押下してプロセスデータを設定されたアプリに送信する際、ここで設定されたフィルタ関数で処理したデータを送信するようにしても良い。これにより、紐付けるべき選択肢をさらに絞り込むことが可能となる。
【0059】
以上の説明から、本実施形態によれば、アプリケーションをシステムに適用するためにIOを検索する代わりに、レジストリのキーを検索し、アプリケーションの内部変数と紐付けることができる。つまり、プラント制御に要するIOのタグ構造に関する知識のないアプリの専門家(例:ベンダ)は、アプリケーションを後付けで導入するにあたり、アプリケーションの内部変数を従来のようにIOタグに紐付ける必要はなく、彼らでもわかりやすい上位概念で示されたレジストリのキーに紐付けすることができる。
なお、既に説明したとおり、IOとレジストリのキーとは、IOのタグ構造を熟知しているプラント設計の専門家等が紐付けており、後付けで導入されるあらゆるアプリケーションを適用することができる仕様になっている。なお、この紐付けは、プロセスデータサーバ120の、例えばプロセスデータベースによって管理されている。
よって、既存の産業向けのシステムに新規のアプリケーションを導入するシステム構築をエンドユーザ側で行うことを容易にすることができる。
なお、プラントのIOと、アプリケーションの内部変数が対応しているので、IOの変化をアプリケーションの内部変数の変化としてオペレータに通知することが可能となる。
【0060】
前記した各実施形態は、本発明を実施するために好適のものであるが、その実施形式はこれらに限定されるものでなく、本発明の要旨を変更しない範囲内において種々変形することが可能である。
【0061】
例えば、ハードウェア、ソフトウェア、各フローチャート等の具体的な構成について、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【0062】
101 プラント
102,103,104 機器
110 制御システム
116 データ
120 プロセスデータサーバ(管理サーバ)
130,140 計算機
115 データ転送プログラム
121,122,123 レジストリ
124 データ(タグ情報を含む)
125 データ転送プログラム
131,141 アプリケーションプログラム(アプリケーション、アプリ)
151 データリンク
152 データリンク


【特許請求の範囲】
【請求項1】
プラントのIOを設定することでプラント制御を実行する制御システムと、前記プラントのIOを識別するタグ情報を管理する管理サーバと、前記プラント制御に関係する処理を実行させるアプリケーションが導入される計算機とが通信可能に接続されるプラント情報制御システムにおいて、
前記管理サーバの記憶部は、
前記プラントのIOの属性を表現する文字列を用いて示される検索キーを前記タグ情報と紐付けて記憶しており、
前記管理サーバの制御部は、
前記計算機の表示部に、前記検索キーを用いて前記タグ情報と前記アプリケーションの内部変数とを紐付けるための画面を表示させる制御と、
前記計算機の入力部を介して前記検索キーの入力があると、前記入力された検索キーと紐付けられたタグ情報を前記管理サーバの記憶部から抽出して、前記計算機の表示部の画面に、前記抽出したタグ情報を表示させる制御と、
前記計算機の入力部を介して前記抽出したタグ情報を選択し、前記選択したタグ情報と前記アプリケーションの内部変数とを紐付ける要求があると、前記管理サーバの記憶部に、前記選択したタグ情報と前記アプリケーションの内部変数とを紐付けて登録する制御と、を実行する
ことを特徴とするプラント情報制御システム。
【請求項2】
前記管理サーバの制御部は、
前記抽出したタグ情報が1つであったとき、前記抽出したタグ情報と前記アプリケーションの内部変数とを自動的に紐付けて登録する制御を実行する
ことを特徴とする請求項1に記載のプラント情報制御システム。
【請求項3】
前記管理サーバの記憶部は、
前記検索キーを、1以上の前記文字列からなる1以上の階層構造を形成するように記憶している
ことを特徴とする請求項1に記載のプラント情報制御システム。
【請求項4】
前記管理サーバの制御部は、
前記抽出したタグ情報が2以上あり、前記階層構造が2以上形成されているとき、前記計算機の表示部の画面に、前記階層構造ごとに当該タグ情報が抽出されたか否かを示す適合状況を表示する制御を実行する
ことを特徴とする請求項3に記載のプラント情報制御システム。
【請求項5】
前記プラントのIOの属性は、前記プラントの設備の種別、構造、設置場所、前記プラント制御として行われる工程、前記プラントで製造する品目または製造に要する品目のいずれかを含む
ことを特徴とする請求項1に記載のプラント情報制御システム。
【請求項6】
プラントのIOを設定することでプラント制御を実行する制御システムと、前記プラントのIOを識別するタグ情報を管理する管理サーバと、前記プラント制御に関係する処理を実行させるアプリケーションが導入される計算機とが通信可能に接続されるプラント情報制御システムに用いる前記管理サーバ用の紐付けプログラムにおいて、
前記管理サーバの記憶部は、
前記プラントのIOの属性を表現する文字列を用いて示される検索キーを前記タグ情報と紐付けて記憶しており、
前記管理サーバの制御部に、
前記計算機の表示部に、前記検索キーを用いて前記タグ情報と前記アプリケーションの内部変数とを紐付けるための画面を表示させる処理と、
前記計算機の入力部を介して前記検索キーの入力があると、前記入力された検索キーと紐付けられたタグ情報を前記管理サーバの記憶部から抽出して、前記計算機の表示部の画面に、前記抽出したタグ情報を表示させる処理と、
前記計算機の入力部を介して前記抽出したタグ情報を選択し、前記選択したタグ情報と前記アプリケーションの内部変数とを紐付ける要求があると、前記管理サーバの記憶部に、前記選択したタグ情報と前記アプリケーションの内部変数とを紐付けて登録する処理と、を実行させる
ことを特徴とする紐付けプログラム。


【図1A】
image rotate

【図1B】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate