(57)【特許請求の範囲】
【請求項１】
所定の周辺装置が作動的に接続されているプロセス制御システムであるコンピュータ装置が実行する方法であって、該コンピュータ装置は、前記所定の周辺装置と通信するためのインターフェイス論理と、オペレーティングシステムと、このオペレーティングシステムの制御の下に実行するとともに複数のソース及び、これらのソースからのデータを受け、かつそのデータを処理してその結果を宛先に出力する内部アプリケーションパッケージと、前記コンピュータのオペレーティングシステムと同じ種類のオペレーティングシステムの制御の下で動作する外部アプリケーションパッケージを前記コンピュータ装置へ統合することを許す制御論理を実現するパッケージ（ＧＤＸ）とを含み；
前記制御論理を実現するパッケージ（ＧＤＸ）は、前記コンピュータ装置の所定の周辺装置から前記外部アプリケーションパッケージが必要とする必要データを利用可能にするものであり；
前記制御論理を実現するパッケージ（ＧＤＸ）には、
前記外部アプリケーションパッケージが必要なデータを得るために、データファイル（ＣＩＯ）のソース情報を利用して前記外部アプリケーションパッケージが必要なデータを得るためのＧＥＴＬＩＳＴプログラムと、
前記外部アプリケーションパッケージが結果を出力するために、データファイル（ＣＩＯ）の宛先情報を利用して当該結果を出力するためのＰＵＴＬＩＳＴプログラムとが含まれており；
前記方法が、
ａ）前記制御論理を実現するパッケージ（ＧＤＸ）が前記コンピュータ装置に入力されたプロセス制御装置内のソースと宛先を識別する情報から、前記外部アプリケーションパッケージが前記コンピュータ装置の所定の周辺装置からの必要データを利用して結果を出力できるようにするため、ソース情報と宛先情報を含むデータファイル（ＣＩＯ）を発生する過程と、
ｂ）i） 前記外部アプリケーションパッケージが必要データを得ることを希望した時に前記制御論理を実現するパッケージ（ＧＤＸ）をアクセスし、前記ＧＥＴＬＩＳＴプログラムにより、前記データファイル（ＣＩＯ）からソース情報を得て、前記インターフェース論理を呼び出して前記必要なデータを得る過程と、
ii）前記外部アプリケーションパッケージが所定のアプリケーション機能の実行結果を出力することを希望した時に前記制御論理を実現するパッケージ（ＧＤＸ）をアクセスし、前記ＰＵＴＬＩＳＴプログラムにより前記データファイル（ＣＩＯ）から宛先情報を得て、前記インターフェース論理を呼び出して前記実行結果の出力をする過程と、
を含み、それにより外部アプリケーションプログラムを前記コンピュータ装置へ統合できるようにする方法。
【請求項２】
所定の周辺装置が作動的に接続されているプロセス制御システムであるコンピュータ装置であって、該コンピュータ装置は、前記所定の周辺装置と通信するためのインターフェイス論理と、オペレーティングシステムと、このオペレーティングシステムの制御の下に実行するとともに複数のソース及び、これらのソースからのデータを受け、かつそのデータを処理してその結果を宛先に出力する内部アプリケーションパッケージと、前記コンピュータのオペレーティングシステムと同じ種類のオペレーティングシステムの制御の下で動作する外部アプリケーションパッケージを前記コンピュータ装置へ統合することを許す制御論理を実現するパッケージ（ＧＤＸ）とを含み；
前記制御論理を実現するパッケージ（ＧＤＸ）は、前記コンピュータ装置の所定の周辺装置から前記外部アプリケーションパッケージが必要とする必要データを利用可能にするものであり；
前記制御論理を実現するパッケージ（ＧＤＸ）には、
前記外部アプリケーションパッケージが必要なデータを得るために、データファイル（ＣＩＯ）のソース情報を利用して前記外部アプリケーションパッケージが必要なデータを得るためのＧＥＴＬＩＳＴプログラムと、
前記外部アプリケーションパッケージが結果を出力するために、データファイル（ＣＩＯ）の宛先情報を利用して当該結果を出力するためのＰＵＴＬＩＳＴプログラムとが含まれており；
該コンピュータ装置には、
該コンピュータ装置に入力されたプロセス制御装置内のソースと宛先を識別する情報から、前記外部アプリケーションパッケージが前記コンピュータ装置の所定の周辺装置からの必要データを利用して結果を出力できるようにするため、ソース情報と宛先情報を含むデータファイル（ＣＩＯ）を発生する手段と、
前記外部アプリケーションパッケージが必要データを得ることを希望した時に前記制御論理を実現するパッケージ（ＧＤＸ）をアクセスし、前記ＧＥＴＬＩＳＴプログラムにより、前記データファイル（ＣＩＯ）からソース情報を得て前記インターフェース論理を呼び出して前記必要なデータを得る手段と、
また、前記外部アプリケーションパッケージが所定のアプリケーション機能の実行結果を出力することを希望した時に前記制御論理を実現するパッケージ（ＧＤＸ）をアクセスし、前記ＰＵＴＬＩＳＴプログラムにより、前記データファイル（ＣＩＯ）から宛先情報を得て前記インターフェース論理を呼び出して前記実行結果の出力をする手段とを含み、
外部アプリケーションプログラムを該コンピュータ装置へ統合できるようにすることを特徴とするコンピュータ装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明はデータ転送方法に関するものであり、更に詳しくいえば、種々のデータソースの間で共通のインターフェイスを提供する方法に関するものである。
【０００２】
【従来の技術】
２つのシステムの間でデータを交換するために現在用いられている方法は非常にプロジェクトに特有のものであるか、データソース／宛先に特有のものである。現在用いられている別の方法は、ユーザーが冗長データベースを構築し、維持することを必要とする。
本発明のデータ転送法は、端末ユーザーによるどのような変更も必要とすることなしに、データソース／宛先をデータ転送装置に組込むことを可能にするものである。本発明の方法は、データバンクの各データ場所に関連する既存のデータ転送プロトコルに従うことにより、データバンクの多くの異なった場所に働きかけることを可能にする。更に、本発明のデータ転送法は、実時間システムの速度の要求に合致するようにして実施される。
【０００３】
【発明が解決しようとする課題】
したがって、本発明の目的は、独立に開発されたサブシステムの間でデータを共用することができるようにする方法を得ることである。
本発明の別の目的は、独立に開発されるか、特殊化されるかの少なくとも一方であるソフトウェアアプリケーションを含むコンピュータ装置のアプリケーションの間でデータの共用を許す方法を得ることである。
本発明の更に別の目的は、独立に開発されるか、特殊化されるかの少なくとも一方であるソフトウェアアプリケーションを含むコンピュータ装置のアプリケーションの間でデータの共用を許す、データ転送が実時間環境またはほぼ実時間の環境で行われるような、方法を得ることである。
【０００４】
【課題を解決するための手段】
データ転送方法が本発明により得られる。本発明のコンピュータ装置へは所定の周辺装置が作動的に接続される。コンピュータ装置は所定の周辺装置と通信するためのインターフェイス論理を含む。更に、このコンピュータ装置はオペレーティングシステムと、このオペレーティングシステムの制御の下に実行するアプリケーションパッケージとを含む。コンピュータ装置は、外部のアプリケーションパッケージ（第三者により発生された）をコンピュータ装置へ統合することを許すデータ交換論理を含む。（外部のアプリケーションパッケージは、所定のアプリケーション機能を汎用コンピュータ装置で実行するために作成された。汎用コンピュータ装置の環境はコンピュータと、コンピュータ装置のそれと同じ種類のオペレーティングシステムとを含む）。汎用コンピュータ装置環境のために定められた外部アプリケーションパッケージの必要な任意のデータのソースは、コンピュータ装置において必要なデータのソースとは異なる。データ交換論理は、外部のアプリケーションプログラムがコンピュータ装置において実行されている時に、必要なデータをコンピュータ装置の所定の周辺装置から外部のアプリケーションパッケージへ利用できるようにする。コンピュータ装置の外部アプリケーションパッケージが必要なデータを利用できるようにするための情報を含むデータファイルがオフラインで発生される。外部のアプリケーションパッケージがコンピュータ装置において実行されており、必要なデータを得ることを望んでいる時は、第１のパッケージがアクセスされる。第１のパッケージは、データファイルに含まれている情報を利用して、必要なデータを得るための指令を発生する。データファイルの情報は、コンピュータ装置の内部または外部の必要なデータのソース情報を含む。しかし、所定のアプリケーション機能の結果を出力することを希望したとすると、第２のパッケージがアクセスされる。第２のパッケージは、結果を出力させる指令を発生するために、データファイルに含まれている情報を利用する。データファイルの情報は、コンピュータ装置の外部または内部へ出力させる結果の宛先情報を含む。したがって、データファイルの発生と、第１のパッケージおよび第２のパッケージによるデータファイルの利用により、作成時にアプリケーションパッケージがコンピュータ装置の外部の環境について限られた知識を有するとしても、アプリケーションパッケージを環境へ統合できる。
【０００５】
【実施例】
本発明の方法を説明する前に、本発明を利用できるシステム環境を理解すると助けになるであろう。本発明の方法を見出すことができるプロセス制御装置１０のブロック図が示されている図１を参照する。プロセス制御装置１０はプラント制御ネットワーク１１を含む。このプラント制御ネットワークにおいては、プロセス制御器２０がユニバーサル制御ネットワーク（ＵＣＮ）１４を介して、プラント制御ネットワーク１１のネットワークインターフェイスモジュール（ＮＩＭ）６０２へ作動的に接続される。プロセス制御装置１０の好適な実施例においては、付加プロセス制御器２０を対応するＵＣＮ１４と対応するＮＩＭ６０２を介して、プラント制御ネットワーク１１へ作動的に接続できる。プロセス制御器２０は、アナログ入力信号と、アナログ出力信号と、デジタル入力信号と、デジタル出力信号と（それぞれＡ／Ｉ、Ａ／Ｏ、Ｄ／Ｉ、Ｄ／Ｏ）を、弁、圧力スイッチ、圧力計、熱電対・・・を含む種々の現場装置（図示せず）からプロセス制御装置１０へインターフェイスする。
【０００６】
プラント制御ネットワーク１１は、プラントオペレータとともに、被制御プロセスの全体を監視し、監視機能を実行するために必要な全ての情報を得て、オペレータとのインターフェイスを含む。プラント制御ネットワーク１１は複数の物理的モジュールを含む。この物理的モジュールにはユニバーサルオペレータステーションモジュール（ＵＳ）１２２と、アプリケーションモジュール（ＡＭ）１２４と、履歴モジュール（ＨＭ）１２６と、コンピュータモジュール（ＣＭ）１２８と、被制御プロセスの求められる制御／監視機能を実行するために必要な、それらのモジュールと同一のモジュールとを含む。それらのモジュールは、各モジュールが必要に応じて相互に通信できるようにするローカル制御ネットワーク（ＬＣＮ）１２０へ作動的に接続される。ＮＩＭ６０２はＬＣＮ１２０とＵＣＮ１４の間のインターフェイスを行う。
【０００７】
プラント制御ネットワーク１１のユニバーサルオペレータステーションモジュール１２２は１名またはそれ以上のオペレータ用のワークステーションである。そのモジュールは、オペレータと、そのオペレータが担当するプラントのプロセスとの間のインターフェイスを行うオペレータコンソールを含む。各ユニバーサルオペレータステーションモジュール１２２と、たとえば任意のバックアップモジュール（図示せず）はＬＣＮ１２０へ接続され、任意のバックアップモジュール（図示せず）を含む。プラントネットワーク１１のユニバーサルオペレータステーションモジュール１２２と、他の任意のモジュール１２４，１２６，６０２・・・との間の全ての通信はＬＣＮ１２０により行われる。ユニバーサルオペレータステーションモジュール１２２は、ＬＣＮ１２０にあるデータをアクセスし、プラント制御ネットワーク１１の他の任意のモジュールを介して、またはそれから、利用できる資源およびデータをアクセスする。各ユニバーサルオペレータステーションモジュール１２２は陰極線管表示装置ＣＲＴを含む。このＣＲＴはビデオ表示発生器と、オペレータキーボードと、フロッピーディスクデータ記憶装置と、トレンドペンレコーダと、状態表示器等（図示せず）を含む。
【０００８】
プラント制御ネットワーク１１に含まれる別の種類の物理的モジュールは、大量のデータを記憶できる履歴モジュール１２６である。各履歴モジュール１２６は、ウィンチェスターディスクのような従来のディスク大容量記憶装置を少なくとも１つ含む。そのディスク記憶装置は２進データのための大容量、不揮発性、除去不能な記憶性能を提供する。そのような大容量記憶装置により記憶されるデータの種類は典型的には傾向の履歴、または、それからその履歴を決定できるようなデータ、ＣＲＴ型表示を構成するデータ、モジュール１２２，１２４・・・のためのプロセス制御器２０のユニット、またはプラント制御ネットワーク１１のモジュールのユニットのためのプログラムのコピーである。
【０００９】
プラント制御ネットワーク１１に組み込まれる別の種類のモジュールはアプリケーションモジュール１２４である。このアプリケーションモジュール１２４は、データ獲得、警報発生、バッチ履歴収集、必要時に連続制御計算機能を提供すること、というような、プロセス制御器２０により実行されるプロセス制御機能を支持して、付加データ処理能力を与える。アプリケーションモジュール１２４のデータ処理能力はそのモジュールプロセッサおよびモジュールメモリ（図示せず）により与えられる。
【００１０】
コンピュータモジュール１２８は、媒体と、大型の汎用データ処理装置が、プラント制御ネットワーク１１の他のモジュール１２２，１２４・・・およびそれらのモジュールのユニットと、ＬＣＮ１２０を介して、およびプロセス制御器２０とＮＩＭ６０２を介して通信するために、全ての物理的モジュールの標準ユニットまたは共通ユニットを用いる。コンピュータモジュール１２８のデータ処理装置は監視、最適化、汎用化されたユーザープログラムの作成、およびそのプログラムのより上位のレベルのプログラム言語における実行を行うために用いられる。典型的には、コンピュータモジュール１２８のデータ処理装置は、周知のように、通信プロセッサおよび通信線を介して、他のそのような装置と通信できる性能を有する。
【００１１】
好適な実施例のＬＣＮ１２０は、プラント制御ネットワーク１１の全てのモジュール１２２，１２４・・・を相互に接続する高速の、ビット直列二重冗長通信バスである。バスは、ＮＩＭ６０２、アプリケーションモジュール１２４、履歴モジュール１２６などのようなデータの主なソースと、ユニバーサルオペレータステーションモジュール１２２、コンピュータモジュール１２８、アプリケーションモジュール１２４のようなそのようなデータの主なユーザーとの間の唯一のデータ転送路である。このバスは、メモリ画像のようなデータの大きいブロックを、履歴モジュールのような１つのモジュールからユニバーサルステーションモジュール１２２へ移動できるようにする通信媒体も構成する。
【００１２】
好適な実施例の装置のプラント制御ネットワーク１１の各物理的モジュール１２２・・・はある、または求められている標準ユニットを含む。プラント制御ネットワーク１１および物理的モジュールの詳細については米国特許第４，６０７，２５６号を参照されたい。
【００１３】
次に、本発明の方法について説明する。コンピュータモジュール（ＣＭ）１２８は何種類かのコンピュータのうちの１つを含むことができる。ハネウエル（Ｈｏｎｅｙｗｅｌｌ）ＤＰＳ−６コンピュータがＣＭ１２８に用いられている。現在は、本発明の方法を利用するプラント制御ネットワーク１１のコンピュータモジュール１２８がデジタル・イクイップメント社（Ｄｉｇｉｔａｌ  Ｅｑｕｉｐｍｅｎｔ  Ｃｏｒｐ）のＶＡＸシステムを含む。
【００１４】
ある所定の機能（たとえば、最適化、モデル化、統計的解析等）を行う既存のアプリケーションソフトウェアは、購入、リース、使用許諾、その他の手段（すなわち、独立の第三者により提供される）で入手され、上記装置１０で利用することを望まれる。それらのアプリケーションは一般にデータを基にして動作し、それから発生された結果を出力する。そのデータは、ある所定のファイル、呼出しサブルーチン等を介してアプリケーションプログラムの手順が一般に利用できる。本発明の方法は、多数のデータのソースおよび宛先をほぼ形成（または再形成）することにより、アプリケーションを装置１０へ統合することにより、必要な入力データを手順（アプリケーションプログラムの部分）が利用できるようにし、アプリケーションプログラムのデータを装置１０へ出力する道を提供する。
【００１５】
次に、プロセス制御装置１０のコンピュータモジュール（ＣＭ）１２８の機能的ブロック図が示されている図２を参照する。ＣＭ１２８は本発明の好適な実施例の方法を定める制御論理を含む。ＣＭ１２８は「コンピュータ」１３０を含む。このコンピュータは、アプリケーションプログラム１４０，１４０′・・・とサポートプログラムを含めた各種のプログラムまたは（ソフトウェア）パッケージを含む。（コンピュータ１３０は実際にはメモリが組合わされたプロセッサであることが当業者にはわかるであろう）。本発明の好適な実施例においては、ＣＭ１２８のコンピュータ１３０はデジタル・イクウイップメント・コーポレーション（Ｄｉｇｉｔａｌ  Ｅｑｕｉｐｍｅｎｔ  Ｃｏｒｐｏｒａｔｉｏｎ）のＶＡＸ装置であって、それに対応するオペレーティングシステムＶＭＳを含む。インターフェイスプログラム（ＣＭ５０）１３０はパッケージおよびオペレーティングシステム（ＯＳ）または監視論理を、所定のプロトコルに従って、インターフェイスハードウェア（すなわち、コンピュータゲートウエー）１３０を介して、ＬＣＮ１２０へインターフェイスさせる。本発明の好適な実施例のＣＭ１２８には端末キーボード１３２と記憶装置（ディスク）１３３も含まれる。たとえば表示装置のような追加の装置も含むことができることが当業者にはわかるであろう。
【００１６】
さらに図２を参照する。プロセス制御装置における通信、更に具体化にはＬＣＮとの通信について何らの知識もなしに、または何ら考えることなしに、ＶＡＸ／ＶＭＳ環境のために書かれた、すなわち作成されたアプリケーションプログラム（ＡＰＰ  ＰＲＯＧ）１４１をコンピュータ１３０へ付加する。また、本発明の制御論理を実現するパッケージ（ＧＤＸ１５０）もコンピュータ１３０に含まれる。ＧＤＸパッケージ１５０はアプリケーションプログラム１４１と、オペレーティングシステム１３５と、インターフェイスプログラム１３４とに対してインターフェイスする。ＧＤＸパッケージ１５０はプログラムとファイル、すなわち、ＧＥＴＬＩＳＴプログラム１５２と、ＰＵＴＬＩＳＴプログラム１５３と、ポイントリスト定義（ＰＬＤ）ファイル１５１と、制御入力／出力（ＣＩＯ）ファイル１５１とを含む。また、後述するＭＡＫＥＬＩＳＴプログラム（図示せず）も含まれる。コンピュータ１３０に含まれ、「第三者」により発生された（すなわち、ＬＣＮを介する通信のためには発生されない）各アプリケーションプログラムに対して、個々のＣＩＯファイル１５４とＰＬＤファイル１５１が存在する。アプリケーションプログラム１４１の手続部分はそのままである。
【００１７】
たとえば端末キーボード１３２を利用するオペレータは、アプリケーションプログラムの以前に識別されたアプリケーションプログラム変数へプロセス制御装置内のソースと宛先を識別する情報を入力する。更に、得たデータで何を行うか、およびデータのフォーマットを指定する（すなわち、データをアプリケーションプログラムにより求められているフォーマットへ翻訳する必要があるか）が入力される。この情報はＰＬＤファイル１５１を構成する。ＭＡＫＥＬＩＳＴプログラム（図示せず）は「オフライン」モード（すなわち、アプリケーションプログラム１４１は実行されていない）で利用される。ＰＬＤファイルに含まれている情報から、ＭＡＫＥＬＩＳＴは、アプリケーションの実行中に用いられる特定の情報を得る。これについては後で説明する。この情報からＣＩＯファイル１５４は発生される。このようにして、データを得ること、およびアプリケーションプログラムが実行中にそのデータを見ることを予測する主メモリ場所すなわちファイルにそのデータを置くことができる。それらのファイルまたは主メモリ場所は、多数の異なるコンピュータ機器を用いる種々の方法により発生できる。
【００１８】
次に、入力データシーケンスの流れ図の概観が示されている図３を参照する。対応するＰＩＤファイル１５１とＣＩＯファイル１５４が発生され、コンピュータ１３０のＶＡＸ／ＶＭＳおよびＧＤＸ環境内に存在すると、アプリケーションプログラムは、それの設計されたアプリケーション機能すなわちジョブをプロセス制御装置で行うために実行される（ブロック３００）。アプリケーションプログラム１４１がアプリケーションデータをアクセス（またはフェッチ）することを希望すると（ブロック３０５）、データの呼出しがＧＥＴＬＩＳＴプログラム１５２を呼出す。ＧＥＴＬＩＳＴプログラム１５２は、データおよびデータソースを識別する対応するＣＩＯファイル１５４を得て、インターフェイスプログラム１３４を呼出し（ブロック３１５）、インターフェイスプログラム１３４は、求められているデータを得るために、求められているＩ／Ｏ指令を用意する。これは、利用されているソフトウェアの機能として、当業者に周知のやり方で、プログラムにおいて行われる。翻訳を求められたとすると、ＣＩＯファイル１５４内の指定されたフォーマットへ当業者に周知のやり方でデータは翻訳される（ブロック３２５）。データが求められているフォーマットになっておれば、データはファイル（すなわち、コンピュータ１３０のメモリの区域であって、アプリケーションプログラム１４１がそのデータを見つけることを予測する区域）に、ＣＩＯファイル１５４からの情報に従って置かれる（ブロック３３０）。それから、アプリケーションプログラムはそれのアプリケーションジョブの実行へ進む（ブロック３３５）。
【００１９】
ジョブが終わると、アプリケーションプログラム１４１の結果を出力せねばならない。次に、アプリケーションプログラム１４１のための出力シーケンスの概観が示されている図４を参照する。アプリケーションプログラム１４１（ジョブ）がそれの機能を終わり（ブロック４００）、それの実行の結果を出力することを望んだ（ブロック４０５）後で、出力呼出しが行われ、それに応じてＰＵＴＬＩＳＴプログラム１５３が呼出される。出力すべきデータのコンピュータ１３０のメモリ内の場所と、それのフォーマットと、翻訳が必要であるか、および必要であればどのようなフォーマットへ翻訳するのかという情報を含めた、そのデータについての必要な情報を確かめるため、およびプロセス制御装置内のデータの宛先を確かめるために、対応するＣＩＯファイル１５４がアクセスされる（ブロック４１０）。翻訳を求められるとすると（ブロック４１５）、データは翻訳される（ブロック４２０）。データを出力できるようになると、ＰＵＴＬＩＳＴプログラム１５３はインターフェイスプログラム１３４を呼出す（ブロック４２５）。このインターフェイスプログラムは、制定されているプロトコルに従って制御シーケンスを開始し、データを指定の宛先へ出力させる。データが出力された後で、アプリケーションプログラムはそれの機能をそれの正常な順序で実行し続ける（ブロック４３０）。
【００２０】
制御シーケンスの開始と、データの翻訳と、種々の制御プログラムの呼出しとは、コンピュータ１３０のオペレーティングシステムおよびハードウェアと、関連するインターフェイスと、周辺装置との機能であって、当業者に周知のやり方で行われる。したがって、装置で用いられている周辺装置（すなわち、データが往来する所）に考慮を払うことなしに、アプリケーションプログラムは装置に統合されることがわかる。
【図面の簡単な説明】
【図１】本発明を利用できるプロセス制御装置のブロック図を示す。
【図２】本発明の好適な実施例の制御方法を含むプロセス制御装置のコンピュータモジュールの機能的なブロック図を示す。
【図３】入力データシーケンスの流れ図の概観を示す。
【図４】本発明の好適な実施例の出力シーケンスの流れ図の概観を示す。
【符号の説明】
１０  プロセス制御装置
１１  プラント制御ネットワーク
１４  ユニバーサル制御ネットワーク
２０  プロセス制御器
１２２  ユニバーサルオペレータステーションモジュール
１２４  アプリケーションモジュール
１２６  履歴モジュール
１２８  コンピュータモジュール
１３３  記憶装置
６０２  ネットワークインターフェイスモジュール
【図１】
0003884487.tif 000002
【図２】
0003884487.tif 000003
【図３】
0003884487.tif 000004
【図４】
0003884487.tif 000005