JP4707792B2 - プロセス制御ルーチンに於ける間接参照 - Google Patents

プロセス制御ルーチンに於ける間接参照 Download PDF

Info

Publication number
JP4707792B2
JP4707792B2 JP2000069117A JP2000069117A JP4707792B2 JP 4707792 B2 JP4707792 B2 JP 4707792B2 JP 2000069117 A JP2000069117 A JP 2000069117A JP 2000069117 A JP2000069117 A JP 2000069117A JP 4707792 B2 JP4707792 B2 JP 4707792B2
Authority
JP
Japan
Prior art keywords
attribute
phase
unit
class
process control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2000069117A
Other languages
English (en)
Other versions
JP2000311004A (ja
Inventor
ウィリアム ジー. アーウィン,
ロバート ビー. ヘイブコスト,
デニス エル. スティーブンソン,
デビット エル. デイツ,
Original Assignee
フィッシャー−ローズマウント システムズ, インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by フィッシャー−ローズマウント システムズ, インコーポレイテッド filed Critical フィッシャー−ローズマウント システムズ, インコーポレイテッド
Publication of JP2000311004A publication Critical patent/JP2000311004A/ja
Application granted granted Critical
Publication of JP4707792B2 publication Critical patent/JP4707792B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/052Linking several PLC's
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the network communication
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99948Application of database or data structure, e.g. distributed, multimedia, or image

Description

【0001】
【発明の属する技術分野】
本発明は、概略的にはプロセス制御ネットワークに関し、より詳細には、改良されたプロセス制御を可能にするためのプロセス制御ルーチンに於ける間接参照に関する。
【0002】
【従来の技術】
化学、石油又は他のプロセスで使用されるプロセス制御ネットワークは、一般的に、例えばバルブポジショナ、スイッチ、(温度、圧力及び流速センサのような)センサ等の一又はそれ以上のフィールドデバイスに通信可能に結合された集中処理コントローラを含んでいる。これらのフィールドデバイスは、(バルブの開閉などの)プロセスに於ける物理的な制御機能を果たし、プロセスの運転の制御に使用するためにプロセスの測定を行い、又はプロセス内の他の所望の機能を果たし得る。プロセスコントローラは、歴史的には、例えばフィールドデバイスへ及びフィールドデバイスからの4−20mA(ミリアンペア)の信号を運ぶ一又はそれ以上のアナログ信号ライン又はバスを介してフィールドデバイスに接続されている。しかし、近年になって、プロセス制御産業は多くのスタンダードでオープンなデジタル又はデジタルとアナログとを結合した通信プロトコル、例えばFOUNDATION、FIELDBUS (以後「Fieldbus」という。)、HART、PROFIBUS、WORLDFIP、Device-Net及びCANのようなコントローラとフィールドデバイスとの間の通信を行うのに使用されるプロトコルが開発されている。一般的に言えば、プロセスコントローラは、一又はそれ以上のフィールドデバイス及び/又はフィールドデバイスに関連する他の情報によって作成される測定値を表す信号を受け取り、この情報を典型的に複雑な制御ルーチンを実行するのに使用し、及びフィールドデバイスに信号ライン又はバスを介して送られる制御信号を生成し、これによってプロセスの運転の制御を行う。
【0003】
バッチプロセスで使用されるような特定のタイプのプロセス制御ネットワークは、プロセス内で本質的に同じ機能を行う同一又は類似の装置を有するように設計され複製された装置の複数のセットを典型的に含んでいる。従って、例えば、クッキーの製造プラントは、混合装置の複数のセット、ベーキング装置の複数のセット及び包装装置の複数のセットを有し、個々のミキサーの全ては並行して動作することができ、ベーキング装置のいずれかと、及び包装装置のいずれかと、直列に動作するように接続することができる。このようなシステムでは、複製された特定のセットのいずれの動作をも制御し、これによってコントローラ内で生成され格納されるべき多くの制御ルーチンを低減させるように、同じ制御アルゴリズム及びルーチンを使用し得ることが好ましい。しかしながら、これらの制御アルゴリズムは、実行されたときにそのときに使用されている特定のユニットの装置を特定するように書かれていなければならない。
【0004】
幾つかの従来技術のシステムでは、エイリアスの名称(即ち、特定されない変数)を使用して複製ユニットから複製ユニットへ変化する特定の装置を指定するための制御ルーチンは、ワークステーションに生成される。システムコントローラが特定のユニット上で生成された制御ルーチンを実行することを可能にするために、一般化されたプログラムは、特定の装置のために生成されたエイリアス決定テーブルを使用してインスタンス化される。このようなエイリアス決定テーブルは、一般化された制御ルーチンで使用される各エイリアス名のための定義を含み、制御ルーチンに於けるエイリアス名のための特定のユニットのエイリアス決定テーブルに於ける値を置換することにより、一般化された制御ルーチンの実行可能なインスタンスを生成するのに使用される。このインスタンス化された制御ルーチンは、次に、コントローラにダウンロードされ格納され、その後、特定の装置上で制御動作(又はフェーズ)を実行する実行時間の間に使用される。しかしながら、このシステムを使用すると、コントローラは、複製されたユニットの一つの異なるそれぞれに対するインスタンス化された(決定された)制御ルーチン分離しなければならなず、これにより、特にもし、コントローラが非常に多くの同様なユニットを制御するのに使用されるなら、そして各ユニット上で多くの異なる動作とフェーズを実行するために使用されているなら(別々のインスタンス化された制御ルーチンが各ユニットの各フェーズに必要とされるため)、コントローラ内に多くのメモリ空間が必要となる。
【0005】
【発明が解決しようとする課題】
他の従来技術のシステムでは、生成された制御ルーチンは、コントローラ内に格納され、それが適用されるべき複製されたユニットの何れかの上に於いてプログラムされた動作又はフェーズを実行するための実行時間の間に使用される。この場合には、エイリアス名は、制御されている特定のユニットのためのエイリアス決定テーブルを使用して、実行時間中に大急ぎで決定される。しかしながら、この構成では、もし現在コントローラによって実行されている一般化された制御ルーチンに変更が加えられると、そのルーチンの実行は中止してそのコントローラにダウンロードされるべき新たに生成された制御ルーチンを実行可能としなければならない。その結果として、そのプロセスの中止された実行に関連する材料、時間などのロスが生ずる。
【0006】
更に、これらの公知のシステムの何れもが、複数の又は異なるクラスのユニット又は装置を超えて適用されるべきエイリアス名を有する単一の一般的なプロセス制御ルーチンを可能とはしていない。事実、これらの従来技術のシステムでは、フェーズのための制御ルーチンは、一つのユニットクラス、即ち、反応器、ミキサー等の一つの特定のタイプのハードウエアユニットについての使用に限定されている。結果として、例えば、反応容器を満たすために第1の一般的なプロセス制御ルーチンが生成され格納されなければならず、一方、ミキシングタンクを満たすために第2の一般的なプロセス制御ルーチンが生成され格納されなければならず、フィーダータンクを満たすために第3のそれが生成され格納されなければならず、結果的に異なるタイプのハードウエア上の本質的に同じ機能を果たすための多くの異なる一般的な制御ルーチンを生成することになる。
【0007】
同様に、これらの従来技術のシステムのいずれも、特定のタイプのハードウエアユニットの異なるモジュールに関連する装置間の相違を捕らえた一般的な制御ルーチンを可能としたものではない。例えば、もし第1の反応器ユニットがこれに関連する電気的な加熱エレメントを有し、第2の反応器ユニットがこれに関連するスチーム加熱エレメントを有しているなら、たとえ、加熱のみが必要なプロセスが不適切な加熱のタイプで実行されていても、電気的ヒーターとスチームヒーターとの制御に於ける相違を捕らえたこれらの反応器ユニットのそれぞれを加熱するために、異なる一般的な制御ルーチンが生成されなければならない。この問題は、付加的なユニット又はコスト的な理由により(反応モジュールのような)モジュールが様々な時点でプロセス制御システムに追加されたとき、ハードウエアが改良されたときなどに生じ、新たに追加されたモジュールは、現存するモジュールと本質的に同じ機能を果たすように設計されているけれども、これに関連するわずかに異なる装置を有している。
【0008】
更にまた、これらの従来技術のシステムは、プロセスのいずれのフェーズについてもプロセス制御ルーチンの実行時間中に確認されるべきパラメータを特定する容易な方法を有していない。事実、間接参照を有する従来技術のシステムの殆どに於いては、実行時間の前であるプロセス制御ルーチンが構成されるとき又は機械可読コードに変換されるときに、エイリアス決定テーブルがエイリアス名を決定するのに使用されている。変数を実行時間の間に変更又は特定可能とするために、制御プログラムが配列中のアドレスの一つを参照する命令に到達したときにプログラムが特定されたアドレスの内容によって参照されるデバイス又はポジションに到達し得るように、実行時間の間に参照又はポインタがそこに置かれ得るようなアドレス配列等のアドレススキームを、ある従来技術のシステムでは提供している。しかしながら、参照アドレスの内容が実行時間の間制御ルーチン内の正確なデバイス又は適切な場所を指しているかどうかを教示する方法はない。もしポインタが正確でなければ、プログラムは停止し継続することはできず、生産は停止することになる。更に、このスキームは複雑で正確に使用することが困難である。なぜなら、ポインタを保持しているアドレス配列の詳細な知識と、その時点で制御ルーチンによってどの配列のアドレスが使用されているかについての知識とが必要となるからである。従って、設計者は多くの労力を必要とし、ユーザは、実行時間の間に停止することがないように、正確な時間に正確なアドレスに正しいポインタが確実に格納されるようにすることが必要となる。
【0009】
【課題を解決するための手段】
プロセス制御システムは、エイリアス名及び/又は動的参照パラメータを使用する間接参照を可能とする一又はそれ以上のプロセス制御ルーチンを含んでいる。一般的なプロセス制御ルーチンは、エイリアス名を含むように書かれ、この一般的なプロセス制御ルーチンは、例えば、その中に複製された装置(複製されたユニット)を有するプロセスを制御するコントローラ内に格納される。特定のユニット上でプロセス制御機能を実行する前に、その機能を制御する一般的な制御ルーチンのインスタンスが生成され、そこではその一般的なルーチンに於けるエイリアス名が、特定のユニットのためのエイリアス名決定テーブルに定義されているパラメータによって置き換えられる。コントローラは、次に、そのユニットの運転の制御を行うために一般的なルーチンのインスタンス化されたバージョンを実行する。このことは、コントローラのメモリの必要量を低減させる。なぜなら、それは、コントローラが、常に全てのユニットに対する一般的ルーチンのインスタンス化されたバージョンを格納することに代えて、一般的なルーチンと現在実行されているルーチンのインスタンス化されたバージョンのみを格納することを可能とするからである。更に、このことは、そのインスタンスの間に変更されるべき一般的な制御ルーチンが停止するルーチンを実行することを引き起こすことなく実行されることを可能とする。
【0010】
所望なら、一般的なプログラムはそれに関連する多重アルゴリズムを有することができ、そこでは、異なるアルゴリズムのそれぞれは、たとえプロセス制御システム内の本質的に同じ機能を異なるユニットが実行する場合であっても、幾分異なるハードウエアを有する異なるユニットを制御するように設計されている。一般的なプログラムのインスタンス化されたバージョンが生成されたとき、コントローラは、インスタンス化された制御ルーチンが生成されている特定のユニットのハードウエア構成を特定する格納された指標に基づいて、一般的ルーチンの複数のアルゴリズムのどれを使用すべきかを決定する。また、このシステムは、制御ルーチンが、多重クラス又はプロセス制御システム内の異なる機能のために使用されるハードウエアの異なるタイプのために生成され及び適用されることを可能とする。この場合には、一般的な制御ルーチンが適用されるべきユニットの異なるクラスに関連するエイリアス決定テーブルに各エイリアス名のためにエイリアス定義が存在することを保証し得る。このことは、プロセス制御システム内の異なる目的のために使用される異なるタイプの装置上で特定の機能を実行するのに、一つの一般的なプロセス制御ルーチンが書かれ及び使用されるので、書かれてコントローラに格納されるべき一般的なプロセス制御ルーチンをより少なくすることができる。
【0011】
更に、プロセス制御ルーチンは、インスタンス化された実行可能なプロセスが生成された後にフィールド、デバイス、パラメータなどが特定されるのを可能とする、即ち、実行時又は実行期間の間に動的に参照されるべきフィールドを可能とする、一又はそれ以上の動的参照パラメータを使用し得る。動的参照パラメータは、多重属性を有し、これには、例えば、ポインタ、参照されたデバイス、フィールド、パラメータなどへのパス又はタグ、参照属性によって特定されるフィールドへの実際の接続が行われ得るかどうか、即ち、参照属性がプロセス制御システム構成内の正しいフィールドを定義しているかを示す接続属性が含まれる。また、動的参照パラメータは、文字列又は数値としての参照属性によって特定されるフィールドからの読み取り/及び/又はこれへの書き込みを可能とする属性を含んでいる。更にまた、動的参照パラメータは、例えば、そのフィールドの状態とそのフィールドに最後に書かれた状態とに関連する一又はそれ以上の状態値の読み取りを可能とする一又はそれ以上の属性を含んでいる。
【0012】
【発明の実施の形態】
図1を参照すれば、プロセス制御ネットワーク10は、イーサネット接続15を介して多くのワークステーション14に接続されたプロセスコントローラ12を有している。また、コントローラ12は、(参照符号16で概略的に示されている)プロセス内のデバイス又は装置に、通信ラインのセット又はバス18を介して接続されている。ここで、例示として、コントローラ12は、フィッシャーローズマウント社によって販売されているDeltaV(登録商標)コントローラであり、これは、一又はそれ以上のプロセス制御ルーチンを実行しそれによってプロセス16の所望の制御を実行するために、フィールドデバイスのような制御エレメント及びプロセス16全体に分散したフィールドデバイス内の機能ブロックと通信可能になっている。ワークステーション14(これは、例えば、パーソナルコンピュータである)は、プロセス制御ルーチンなどをダウンロードするようにコントローラ12と通信しそしてプロセス16の運転の間にプロセス16に関する情報を受け取り及び表示するために、コントローラ12によって実行されるべきプロセス制御ルーチンを設計するように、一又はそれ以上のエンジニア又はユーザによって使用され得る。ワークステーション14のそれぞれは、構成設計アプリケーション等のアプリケーションを格納するため、及びプロセス16の構成に関する構成データのようなデータを格納するためのメモリ20を有している。ワークステーション14のそれぞれはまた、ユーザがプロセス制御ルーチンを設計しこれらのプロセス制御ルーチンをコントローラ12にダウンロードするのを可能とするアプリケーションを実行するためのプロセッサ21を有している。同様に、コントローラ12は、プロセス16の制御に使用されるべき構成データ及びプロセス制御ルーチンを格納するためのメモリ22と、プロセス制御戦略を実行するためにプロセス制御ルーチンを実行するためのプロセッサ24とを有している。もしコントローラ12がDeltaVコントローラであるなら、コントローラ12内のプロセス制御ルーチンのグラフィカルな描写を、プロセス制御ルーチン内の制御エレメントを例証するワークステーション14の一つを介して、これらの制御エレメントがプロセス16の制御を提供するように構成されている方法で、ユーザに提供する。
【0013】
図1に示されているプロセス制御ネットワーク10に於いては、コントローラ12は、反応器_01、反応器_02及び反応器_03としてここに参照される同様に構成された反応器の3つのセットにバス18を介して通信可能に接続されている。反応器_01は、反応容器100と、反応容器100に流体を提供する入力流体ラインを制御するように接続された入力バルブ101及び102と、出力流体ラインを介して反応容器100から出る流体の流れを制御するように接続された出力バルブ103とを含んでいる。温度センサ、圧力センサ、流体レベルメーター等のセンサであり得るデバイス105は、反応容器100に又はその近傍に配されている。同様に、反応器_02は、反応容器200と、入力バルブ201及び202と、出力バルブ203と、デバイス205とを含み、反応器_03は、反応容器300と、入力バルブ301及び302と、出力バルブ303と、デバイス305とを含んでいる。図1に示すように、コントローラ12は、反応器ユニットに関連する一又はそれ以上の動作を遂行するために、これらの要素の動作を制御するように、バス18を介してバルブ101から103、バルブ201から203及びバルブ301から303、並びにデバイス105,205及び305に接続されている。このような動作には、例えば、反応容器の充満、反応容器内の材料の加熱、反応容器の排出、反応容器の洗浄などが含まれる。
【0014】
図1に示されているバルブ、センサ及び他の装置は、例えばフィールドバスデバイス、規格4−20maのデバイス、HARTデバイス等の所望の種類及びタイプの装置であり得、フィールドバスプロトコル、HARTプロトコル、規格4−20maのアナログプロトコル等の所望のプロトコル使用して、コントローラ12と通信可能である。更に、本発明の原理に従って、他のタイプのデバイスが、コントローラ12に接続され、これによって制御され得る。また、他のコントローラがコントローラ12とワークステーション14とにイーサネット通信ライン15を介して、プロセス16に関連する他のデバイス又はエリアを制御するために接続され得、このような付加的なコントローラは、図1に示されているコントローラ12の動作に所望の方法で統制され得る。
【0015】
一般的に言えば、図1のプロセス制御システムは、例えばワークステーション14又はコントローラ12の一つがバッチ実行ルーチンを実行するバッチプロセスを実行するのに使用され、このバッチ実行ルーチンは、食品、薬等の製品を製造するために必要な一連の異なるステップ(一般的にフェーズと称される)を実行するための、(他の装置と同様に)一又はそれ以上の反応器ユニットの動作に向けられている高度なレベルの制御である。異なるフェーズを実行するために、バッチ実行ルーチンは、実行されるべきステップと、そのステップに関連する量と時間と、ステップの順序とを特定するレシピとして一般的に言及されるものを使用する。一つのレシピのステップは、例えば、反応容器を適当な材料又は成分で満たし、その材料を反応容器内で混合し、所定の時間内に所定の温度まで反応容器内の材料を加熱し、反応容器を空にし、次に、次のバッチ実行のために洗浄することを含んでいる。各ステップはバッチ実行のフェーズを定義し、コントローラ12内のバッチ実行ルーチンがこれらのフェーズのそれぞれの一つのための異なる制御アルゴリズムを実行するであろう。もちろん、特定の材料、材料の量、加熱温度及び時間等は、異なるレシピごとに異なり、従って、これらのパラメータは、製造され又は生産されている製品と使用されているれしぴとに依存して、バッチ実行ごとに異なっている。当業者は、制御ルーチン及び構成が図1に示されている反応器で実行されるバッチの実行のためにここに記載され、制御ルーチンは、所望なら連続プロセスの実行を行うために他の所望のバッチプロセスの実行を行うための他の所望のデバイス制御するのに使用されることを理解するであろう。
【0016】
当業者が理解するように、バッチプロセスの同様のフェーズ又はステップが、同時に又は異なるときに図1の異なる反応器ユニットのそれぞれに於いて実行され得る。更に、図1の反応器ユニットは一般的に同じ数及びタイプの装置(即ち、それらは同じユニットクラスに属する)を含んでいるので、特定のフェーズのための同じ一般的フェーズ制御ルーチンは、この一般的フェーズ制御ルーチンが異なる反応器ユニットに関連する異なるハードウエア又は装置を制御するように改変されなければならないことを除いて、異なる反応器ユニットのそれぞれを制御するのに使用され得る。例えば、反応器_01(この反応器はここで満たされる)のための充満フェーズを実行するために、例えば、充満制御ルーチンが、流体レベルメーター105が反応容器100が満たされたことを検知するまで一又はそれ以上の入力バルブ101又は102を所定の時間開く。しかしながら、この同じ制御ルーチンは、入力バルブの指定をバルブ102又は102に代えてバルブ201又は202に単に変更することにより、そして流体レベルメーターを流体レベルメーター105に代えて流体レベルメーター205に変更することにより、反応器_02の充満フェーズを実行するように使用され得る。
【0017】
以前に知られているシステムでは、一般化された制御ルーチンが、反応器(反応器_01、反応器_02又は反応器_03)の何れかに於ける特定のフェーズを実行するために、エイリアス名(即ち、一般的な変数)を使用して、特定の反応器ユニット又はその反応器ユニットのための特定のバルブ若しくはセンサのような未だに特定されないパラメータを示すために生成されたであろう。このように、(充満ルーチンのような)一般化された制御ルーチンが、制御ルーチンの生成に際して特定の反応容器を満たすために開けられる特定のバルブを特定することに代えて、図1の反応器ユニットの何れかの充満フェーズの間に使用されるように生成され、一般化された制御ルーチンは、使用される実際のバルブのためのエイリアスとして「入力_バルブ」を単に特定する。これらのシステムのために、エイリアス決定テーブルが一般化された制御ルーチンが適用されるべきユニットのそれぞれのために生成される。例えば、反応器_01のためのエイリアス決定テーブルは、エイリアス「入力_バルブ」がバルブ101であることを特定し、反応器_02のためのエイリアス決定テーブルは、エイリアス「入力_バルブ」がバルブ201であることを特定する等である。
【0018】
上記に示したように、ある従来技術システムでは、これらのエイリアス名を使用する一般化されたプログラムはワークステーションに生成され、このプログラムのインスタンス化されたバージョンが、特定の反応器ユニット(又は他のモジュール)のためのエイリアス決定テーブルを使用して、各反応器ユニット(又は他のモジュール)のために生成される。これらの実例制御ルーチンは、次に、コントローラにダウンロードされその中に格納され、その後、実行時間の間に特定のユニットに於けるフェーズを実行するために使用され、これは多くのメモリを必要とする。他の従来技術のシステムでは、一般化された制御ルーチンはコントローラ内に格納され、それが適用されるべきユニットの何れかのフェーズのプログラムされた動作を実行するために、実行時間の間に使用される。この場合には、実行時間の間の実行中に、制御されている特定のユニットのためのエイリアス決定テーブルを使用して、エイリアス名が決定される。この構成では、もし、コントローラによって現在実行されている一般化された制御ルーチンに変更が加えられたら、そのルーチンの実行は、そのコントローラにダウンロードされるべき新たな一般化された制御ルーチンを可能とするために停止されなければならない。
【0019】
更に、これらの公知のシステムの何れも、多重の若しくは異なるタイプのユニット又はハードウエアシステムを通じて適用されるエイリアス名を有する単一の一般的なプロセス制御ルーチンを可能とするものではない。事実、これらの従来技術のシステムでは、フェーズのための制御ルーチンは、一つのユニットクラス、即ち一つの特定のタイプのハードウエアユニットで、プロセス制御ネットワーク内の一つのタイプの機能に使用することに限定されている。結果として、最初の一般的なプロセス制御ルーチンは反応ユニットの充満のために生成され及び格納され、異なる一般的なプロセス制御ルーチンが混合タンクの充満のために生成され及び格納され、更に異なる一般的なプロセス制御ルーチンがフィードタンクの充満のために生成され及び格納され、結果的にハードウエアユニットの異なるタイプの本質的に同じ機能を実行するために、多くの異なる一般的制御ルーチンが生成されている。
【0020】
上述のように、これらの従来技術の何れも、特定のユニット又はユニットクラスの異なるモジュールに関連する装置間のわずかに異なる一般的制御ルーチンを賄うことを可能とするものではない。これに対して、もし、これらの異なるユニットが、例えばある場合には電気ヒーターであり他の場合にはスチームヒーターであるようなわずかに異なるハードウエアを有しているなら、異なるフェーズルーチンが書かれなければならず、同じユニットクラスの異なるモジュールで使用されなければならない。このことは、たとえこれらの異なるユニットがそのプロセス内で本質的に同じ機能を果たすとしても、プログラマーに、同じユニットクラスの異なるユニットのために異なるプロセス制御アルゴリズム又はフェーズクラスを使用することを要求することになる。更に、これらの従来技術システムには、プロセス制御ルーチンの実行時間の間に確認されるべきパラメータを特定するための簡便な方法がなく、そして、もしこのような動的参照が許容されるとしても、その動的参照が正しい値であるかどうかをその参照に基づいて命令を実行する前に知らせる方法が存在しない。
【0021】
ここに記載のプロセス制御プログラム又はルーチンに於ける間接参照を使用する手法又はシステムが、上記従来技術システムの問題のいくつかを解決する。ここに記述するシステムは、エイリアス名を使用して書かれ、最小限の格納スペースを使用してコントローラ内に未だ格納され、現在実行中のルーチンの何れかが停止されることなく変更される一般的なフェーズ制御ルーチンを可能とするような方法で実行されるべき一般的なプロセス制御ルーチン又はフェーズ制御ルーチンを可能とする。また、ここに記述のシステムは、異なる複数のユニットクラス又は異なるハードウエアのタイプに適応されるように生成されるべきフェーズ制御ルーチンを可能とし、動的参照、即ちフェーズ制御ルーチンの実行時間の間束縛される動的参照を検証し容易に使用することを含むフェーズ制御ルーチンを使用する。
【0022】
一般的に言えば、プロセス16の動作がコントローラ12内で管理され又は組織化される方法は、多くのオブジェクトの相互作用に基づいており、それぞれのオブジェクトは、属性を有し、それに関連する一又はそれ以上の方法を有し得る。オブジェクトのそれぞれは、それに関連する多くのサブオブジェクト(又はクラス)を有し、それぞれのサブオブジェクトは更にサブオブジェクトを有することができる。一般的な意味では、プロセス16の全体に亘る制御計画は、その技術分野で知られ、そしてここでは更に詳細には記述しないが、オブジェクト指向プログラミングパラダイムを使用して構成される。図2は、図1のプロセス制御ネットワーク10に関連する多くのオブジェクト間の相関関係を示すオブジェクト階層構造の例を表している。この階層構造は、例えば、プロセス制御ルーチンがワークステーション14上に生成され、次に、ダウンロードされコントローラ12内で実行されこのプロセス制御ルーチンが動作する状況を確認する方法を説明するのに使用される。
【0023】
図2のオブジェクトツリーは、特定のオブジェクトをボックスで囲み、一般的なオブジェクト(又はオブジェクトタイプ)のカテゴリーはボックスなしでツリー内のオブジェクトの上に示されている。図2に示すように、プロセス制御ネットワーク10は、例えば、プラント内のビルディング又は他の地理的領域の表示である一又はそれ以上のエリアを含んでいる。図2のオブジェクトツリーでは、プロセス16はビルディング_01、ビルディング_02及びビルディング_03と名付けられた3つのエリアオブジェクトを有している。各エリアオブジェクトはプロセスセルに分割され、それぞれのセルは、そのエリアで実行されているプロセスの異なる側面を示している。図2のビルディング_01エリアオブジェクトは、セル_01及びセル_02で表される2つのプロセスセルオブジェクトを含んでいるように示されている。例えばセル_01はセル_02で使用される生成物の成分を作ることに関連している。各セルオブジェクトは、ゼロ又はそれ以上のユニットクラスを含み得、これはプロセスセルで使用されているハードウエアの異なるカテゴリ又はグルーピングを確認する。一般的に言えば、ユニットクラスは、複製された装置のセットの共通の構成を保持し、そして、より詳細には、もし同じでなければ非常に似たプロセス機器を有しそれぞれがもし同じでなければ非常に似た機能をプロセス内で実行するユニットの集合である命名されたオブジェクトである。ユニットクラスオブジェクトは、典型的にはそれが属するプロセス制御システム内のユニットのタイプを記述するように命名されている。図2は、混合_タンクユニットクラス、反応器ユニットクラス及びフィード_タンクユニットクラスを含んでいる。もちろん、殆どのプロセス制御ネットワークでは、ユニットクラスの多くの他のタイプ、例えばドライヤーユニット、フィードヘッダーユニット、及び他の個々の又はハードウエアの論理的グルーピングが提供され又は定義されるであろう。
【0024】
図2の反応器ユニットクラスについて示されているように、各ユニットクラスオブジェクトは、それに関連するユニットモジュールオブジェクト及びフェーズクラスを有し得る。ユニットモジュールオブジェクトは、一般的には命名されたユニットクラス内の複製されたハードウエアの或るインスタンスを特定し、フェーズクラスは、一般的にそのユニットクラスに関連するユニットモジュールに適用され得るフェーズを特定する。より詳細には、ユニットモジュールオブジェクトは、単一のプロセスユニットのための全ての変数と(後に定義される)ユニットフェーズとを保持する命名されたオブジェクトであり、典型的には、特定のプロセス装置と同一に命名される。例えば、図2の反応器ユニットは、図1の反応器_01、反応器_02及び反応器_03にそれぞれ対応する反応器_01、反応器_02及び反応器_03のユニットモジュールを有している。混合_タンクユニットクラス及びフィード_タンクユニットクラスは、プロセス16内の特定のハードウエア又は装置に相当する特定のユニットモジュールを同様に有するであろう。しかしながら、簡単のために、混合_タンクユニットクラス又はフィード_タンクユニットクラスに関連する装置は、何れも図1には示されてはいない。
【0025】
フェーズクラスは、同一のユニットクラスに、そして本発明に従えば複数の異なるユニットクラスに属する複数のユニット上で実行され得るフェーズのための共通の構成を保持している。本質的には、各フェーズクラスは、同一又は異なるユニットクラス内のユニットモジュールを制御するためにコントローラ12によって生成され使用される異なる制御ルーチン(又はフェーズ)である。典型的には、各フェーズクラスは、ユニットモジュール上で実行される動作を記述する動詞に従って命名される。例えば、図2に示すように、反応器ユニットは、図1の反応容器100,200又は300の何れか一つを満たすように使用される充満フェーズクラス、図1の反応容器100,200又は300の何れか一つを加熱するように使用される加熱フェーズクラス、図1の反応容器100,200又は300の何れか一つを排出するように使用される排出フェーズクラス、及び図1の反応容器100,200又は300の何れか一つを洗浄するように使用される洗浄フェーズクラスを有している。充満クラスは反応器ユニットクラスとフィード_タンクユニットの両方に関連し、本発明に従えば、フィード_タンクユニットモジュールのみならず、反応器ユニットモジュール上の充満機能をも果たすのに使用され得ことに注意すべきである。
【0026】
フェーズクラスは、一般的には、バッチプロセスのためのレシピによって定義されるような、全体に亘るバッチプロセスで必要とされる幾つかの機能を実行するバッチ実行ルーチンによって呼び出されるサブルーチンと考えられている。フェーズクラスは、基本的にはバッチ実行ルーチン又は他のフェーズクラスからのフェーズクラスサブルーチンに提供される入力であるゼロ又はそれ以上の入力パラメータと、基本的にはバッチ実行ルーチン又は他のフェーズクラスに戻るフェーズクラスサブルーチンの出力であるゼロ又はそれ以上の出力パラメータと、そのフェーズクラスの動作とこのフェーズクラスが或る程度関連する他のフェーズクラスに関する情報とに関してユーザに表示されるゼロ又はそれ以上のフェーズメッセージと、フェーズ論理モジュール(PLM)又はこのフェーズクラスに基づくユニットフェーズで生成されるべきパラメータを生じさせるゼロ又はそれ以上のアルゴリズムパラメータとを有している。これらのアルゴリズムパラメータは、そのフェーズの実行中、一時格納位置又は変数として使用され、ユーザ又はバッチ実行ルーチンには必ずしも見えるものではない。重要なことは、フェーズクラスは一又はそれ以上のフェーズアルゴリズム定義(PAD)を含み、これは、一般的に言えば、そのフェーズを実行するのに使用される制御ルーチンである。また、フェーズクラスは、ゼロ、1,2又はそれ以上のユニットクラスへの関連のリストを有し、このリストは、このクラスと、従ってフェーズクラスのPADとが適用され得るユニットクラスを定義する。充満フェーズクラスリストの関連のリストは、反応器ユニット及びフィード_タンクユニットクラスの両方を含んでいる。
【0027】
PADは、フェーズクラスのための要約又は一般的なフェーズ論理(アルゴリズム)を保持する命名されていないオブジェクトであり、絶対的なフェーズ論理状態マシンの何れか、連続するフローチャート(SFC)複合体、関数ブロック複合体、又はプロセス16の動作を制御するためにコントローラ12によって使用されるどのような他の所望のプロセスプログラミングなど、どのような所望のタイプのプログラミング構造をも使用するように構成され得る。一実施例では、PDAはSFCプログラミング技術を使用して定義され、そこでは多くのステップが互いに結合され、一つのステップ内でのアクションは遷移状態が真となるまで実行され、その時点で次の遷移状態が真になるまで実行される次のステップに制御が移行し、このような動作が続けられる。SFCプログラミングプロトコルは、プログラミング言語の規格IEC 848及びIEC 1131-3に基づいており、この技術分野でよく知られている。しかしながら、PDAはフェーズの動作を定義する他のどのような所望のタイプのプログラミング構造をも使用することができる。一般的に言えば、PADは、バッチプロセスの動作の間コントローラ12によって実行されるべきベース又は一般的制御ルーチンを提供する。
【0028】
一般的なPADがユニットクラス内の異なるユニットモジュールのどのような数にも適用することを可能とするために、PADは、他のどのような所望の変数又はパラメータと同様に、エイリアス名即ち一般的に又はどのような特定のハードウエア又はハードウエア要素にも結合されていない未だ特定されていない名称を使用して、ユニットモジュールからユニットモジュールへ変化するどのような外部モジュール又はI/Oをも参照するように、(ユーザがワークステーション14内の構成アプリケーションを使用して)構成される。結果として、PADは複数のユニットモジュールに於いてそして複数のユニットクラスに於いてさえ適用しそれに於いて使用されるという意味に於いて一般的である。
【0029】
図2の各フェーズクラスは一つのPADオブジェクトを有し、例外的に加熱フェーズは2つのPADを有し、適用されるべき同じフェーズクラスを可能とし、以下の詳細に述べるように、これに関連する僅かに異なるタイプのハードウエア又は装置を有する制御ユニット(例えば反応器ユニット)を制御するのに使用される。
【0030】
図2のユニットモジュールを再び参照すれば、各ユニットモジュールオブジェクトはゼロ又はそれ以上のユニットタグ(UT)又は初期値を有するパラメータを含んでいる。これらのパラメータは、そのユニットモジュールに関連する装置の設定と構成パラメータに相当する。更に、各ユニットモジュールオブジェクトは、それに関連するアラーム、資源識別子、(人−マシンインターフェイス画像のような)制御ディスプレイ、このユニットモジュールが必要とする資源のリスト、プロセスセル情報等を有している。重要なのは、各モジュールユニットオブジェクトは、それに関連するエイリアス決定テーブル(ART)、ゼロ又はそれ以上のユニットフェーズオブジェクト(UP)及びユニットフェーズテーブルを有していることである。エイリアス決定テーブルは、それが帰属するユニットモジュールのためのエイリアス名/インスタンス定義のペアのリストである。このテーブルのエイリアス名のリストは、ユニットクラスに対して定義された正しいエイリアス名に基づいており、従って、このユニットモジュールのユニットクラスに関連する全てのフェーズクラスで使用されるエイリアス名の全てを含んでいる。換言すれば、ユニットモジュールのエイリアス決定テーブルは、このユニットモジュール上で実行され得る各フェーズクラスで使用される各エイリアスのためのエイリアス定義を含んでいる。ユーザは、そのユニットクラスに関連するフェーズクで使用されるエイリアス名に基づいて、構成のときに各ユニット上で定義されるべきエイリアス名のためのインスタンス定義を構成する。
【0031】
幾つかのインスタンスでは、特定のエイリアス名を無視することを意味するエイリアスインスタンス定義のための特別の値を提供することが好ましい。この定義の効果は、少なくとも、このユニットモジュール上では、たとえこのユニットモジュールがそのエイリアス名を必要とせず又はサポートしない場合でも、このエイリアス名を使用するフェーズ論理はコントローラ12にダウロードされるのを許容すべきであるということである。実行時間の実行は、エイリアスパラメータパスストリングを用いて特定され、抑制されるべき「無視」のエイリアスインスタンス定義を有するフェーズ論理のエイリアスパラメータに書き込みを試みることを引き起こし、抑制され又は値のない又はゼロ値又は他の幾つかの存在する値に戻すために「無視」として定義されるエイリアスパラメータの読込を試みることを引き起こし、あり得るなら問題が存在することをユーザに警告を発するようにアラームを引き起こす。所望なら、「無視」の定義がエイリアス定義の属性として格納され得、実行時間の間に、例えば、IF...THENの論理を使用してテストされ得る。
【0032】
各ユニットフェーズオブジェクトは、特定のユニットモジュールに関連し又はそのために生成されたフェーズクラスのインスタンスを表わす命名されたオブジェクトである。その構成システムに於いては(即ち、ワークステーション14の一つに於いては)、ユニットフェーズオブジェクトは、独立に変更されダウンロードされ得るユニットモジュールの成分を表している。実行時間システムでは(即ち、コントローラ12では)、ユニットフェーズオブジェクトは、ユニットモジュール上でコントローラ12によって独立して操作(開始、停止、保持、中断等)され得るフェーズ論理を表し、異なるユニットモジュール上で同時にアクティブな他のユニットフェーズに潜在的に並行している。本質的には、ユニットフェーズオブジェクトは、そのユニットフェーズオブジェクトが属するユニットモジュールのためのエイリアス決定テーブルを使用して決定されたフェーズクラスの一つのインスタンス化バージョンである。例えば、図1の一つの反応器_02のユニットフェーズオブジェクトは、反応器_02のモジュールユニットのためのエイリアス決定テーブルを使用してその中にエイリアス名を有する充満フェーズクラスのための一般的なPADを使用して生成されるであろう。従って、充満フェーズクラスのPADに於けるエイリアス入力_バルブは、反応器_02のモジュールユニットのための充満ユニットフェーズオブジェクトに於ける図1のバルブ201又は202として定義され得る。コントローラ12は、実際にユニットフェーズオブジェクト(即ち、実行時間の間のフェーズクラスのインスタンス化バージョン)を実行し、メモリ22内にフェーズクラスの一般的バージョンを残す。
【0033】
ユニットモジュールのためのフェーズテーブルは、ユニットモジュール上で利用可能にされる全てのユニットフェーズについてのキー特性を保持する命名されていないオブジェクトである。フェーズテーブルは、ユニットモジュールのユニットクラスに帰属する全てのフェーズクラスのフェーズクラス名のリストを含んでいる。各フェーズクラスについて、ユーザは、ユニットフェーズ名(文字列)と、フェーズクラスで使用されている各エイリアス名のためのユニットモジュールのエイリアス名決定テーブルに於ける正しいエイリアスインスタンス定義が存在するか及び他の何れの必須フェーズクラスの検査チェックを通過したかの検査の識別子と、設計者又はユーザがフェーズクラスのためのユニットフェーズ論理をダウンロードするのを抑止することを可能とするダウンロードの識別子とを含むキー特性を見て/構成する。例えば、もし検査識別子が検査が行われていないことを特定し、又はもしダウンロード識別子がユーザによってNOにセットされているなら、ユニットフェーズはダウンロードされないであろう。また、フェーズテーブルはコントローラ12にこのユニットフェーズが実行時間システムに於いて「永続」として扱われるべきであることを知らせる永続((Yes/No)識別子を含んでいる。もしそうなら、ユニットフェーズは常に実例化されてコントローラメモリ資源の責務によって決して実行に失敗することはない。バッチ実行ルーチンによって要求される特性、資源識別子、必要な資源、コントローラ12のための除算/乗算実行期間及びフェーズの実行時間の動作を制御する他の特性などの情報が、ユニットフェーズテーブルに提供される。
【0034】
図3は、図2に示されたオブジェクトの幾つかをより詳細に示したものであり、これらの間の相関関係をより良く示している。本発明の原理を示すために、2つのユニットクラス、即ち、反応器ユニットクラス50及びフィード_タンクユニットクラス52が図3に示されている。反応器ユニットクラス50はそのために示された一つのユニットモジュール54、即ち反応器_01を有している。他のものも存在し得るが、それらは図3に単に示されていないだけである。ユニットモジュール54は、反応器ユニットクラスに関連する反応器パラメータの幾つか、即ち、反応器_01の容量は300で反応器_01は攪拌機を有していないことを定義している。同様に、2つのフェーズクラスは、充満フェーズクラス56及び排出フェーズクラス58を含む反応器ユニットクラスに関連している。充満フェーズクラス56は、2つのエイリアス名即ち#INLET#VALVE# 及び #LEVEL#を使用して設計されたPAD(右側に図式的な形でSFCとして表されている)を含んでいる。これらのエイリアス名は、充満フェーズクラス56のPADに示されているボックス内で実際に使用され、さもなければPADの論理内のどこかで使用される。充満フェーズクラス56はまた、目標_レベルとして定義される入力と、最終_レベルとして定義される出力とを含んでいる。エイリアス名は、数字の記号(#)で区切られて示されており、他の識別子は、フェーズのインスタンス化に際して置き換えられなければならないエイリアス名を定義するのに使用され得る。同様に、排出フェーズクラス58はPADを有し、これは右側に図式的な形で表されており、#OUTLET#VALVE# 及び #LEVEL#のエイリアス名を有し、速度として定義される入力と、最終_レベルとして定義される出力と、実_速度として定義されるアルゴリズムパラメータ(PADによって使用される)とを有し、これらはPADの実行中に一時格納位置として使用される。
【0035】
充満フェーズクラス56及び排出フェーズクラス58は反応器ユニットクラス50に関連しているので、反応器_01ユニットモジュール54(これはまた反応器ユニットクラス50にも関連している)はフェーズクラス56及び58の両方に使用されるエイリアス名を支持するように設計されるべきである。なぜなら、コントローラ12は実行時間の間反応器_01ユニットモジュール54のためにフェーズクラス56及び58のインスタンス化バージョンを生成しようとするからである。結果として、反応器_01ユニットモジュール54のためのエイリアス決定テーブル60は、各エイリアス名#INLET#VALVE#(充満フェーズクラス56で使用される)と#LEVEL#(充満フェーズクラス56と排出フェーズクラス58との両方で使用される)と、#OUTLET#VALVE#(排出フェーズクラス58で使用される)とを定義するように生成される。エイリアス決定テーブル60は、#INLET#VALVE#と#LEVEL#エイリアスの正しい定義を含んでいるが、#OUTLET#VALVE#エイリアスの正しい定義を含んではいない。結果として、ワークステーション14によって事項される構成ルーチンがそれぞれのフェーズクラスが制御スキームの中で正しく定義されたか否かを決定するとき、それは充満ユニットフェーズオブジェクトが反応器_01ユニットモジュール54のために生成され得ることを決定する。なぜなら、充満フェーズクラスエイリアス名のそれぞれは、反応器_01ユニットモジュール54のためのエイリアス決定テーブル60で正しく決定されるからである。しかしながら、この構成ルーチンは、排出ユニットフェーズオブジェクトが反応器_01ユニットモジュール54のために生成されないことを決定する。なぜなら、排出フェーズクラス58によって使用されるエイリアス名の全てについて正しい定義を有していないからである。結果として、反応器_01ユニットモジュール54のためのフェーズテーブル62(これはワークステーション14内の構成アプリケーションによって生成される)は、反応器_01ユニットモジュール54のための充満フェーズが決定されコントローラ12にダウンロードされるが、反応器_01ユニットモジュール54のための排出フェーズは決定されず、従ってエイリアス決定テーブル60の#OUTLET VALVE#エイリアスの正しくない定義に従って、これ12にダウンロードされることはできない。
【0036】
図3に示されている充満フェーズクラス56は、一般的には付加的な他のユニットクラス、即ちこれに関連するフィード_タンク_06ユニットモジュール64を有するように図3に示されているフィード_タンク_06ユニットクラス52に適用されるのに十分に定義されている。結果として、コントローラ12にダウンロードされるように定義され又は適切にサポートされた充満フェーズクラスについては、(フィード_タンクユニットクラス52の他のユニットモジュールの全てと同様に)フィード_タンク_06ユニットモジュールは、充満フェーズクラス56、即ち#INLET#VALVE#及び#LEVEL#によって使用されるエイリアスに対する定義を提供するエイリアス決定テーブルを有していなければならない。このことが達成されるとき、充満フェーズクラス56は反応器ユニットクラス50又はフィード_タンクユニットクラス52の何れに於いても、どのようなユニットモジュール対してもユニットフェーズを生成するのに使用され得ることになる。
【0037】
構成の間、エンジニアなどのシステム設計者は、プロセス制御ネットワーク10内のユニットモジュールのそれぞれに対してフェーズクラスとエイリアス決定テーブルとを構成するために、ワークステーション14の一つで実行される構成プログラムを使用する。一般的に言えば、エンジニアは、何れか所望のプログラミング言語及び環境を使用して、そしてデバイス、モジュールパラメータ、関数ブロックなどの或る変数又はモジュールのためのエイリアス名を使用して、(図2の充満、排出、加熱及び洗浄のフェーズクラスのような)フェーズクラスのそれぞれに対するPADを定義する。これにより、PADはそのフェーズクラスが帰属する何れかのユニットクラスに関連するユニットモジュールの何れをも制御するのに使用し又は適用され得ることになる。構成アプリケーションは、エンジニアが、これらのPADに何れか所望の方法で導入するのを可能とし、そして、例えばそれぞれのフェーズクラスに対するPADで使用されるエイリアス名のリストを含む必要な情報を特定するようにエンジニアに促し得る。
【0038】
本発明に従えば、エンジニアは、同一(又は異なる)ユニットクラスの異なるユニットモジュールに関連するハードウエア又は装置に於ける相違に起因して、どのような特定のフェーズクラスに対しても複数のPADを定義し得る。このように、例えば、反応器ユニットクラスに対する加熱フェーズクラスを生成するとき、エンジニアは、電気的加熱装置を使用して反応容器を加熱する第1のPADと、スティーム加熱装置を使用して反応容器を加熱する第2のPADとを提供し得る。これらのPADの異なる一つが、異なるユニットモジュールに対するユニットフェーズオブジェクトを生成するのに使用されるであろう。例えば、もし反応器_01ユニットモジュールがこれに関連する電気的加熱装置(例えば、図1のデバイス105は電気的加熱要素である)を有し、反応器_02がこれに関連する(例えば、図1のデバイス205はスティーム加熱要素である)を有しているなら、加熱フェーズクラスの第1のPADは反応器_01ユニットモジュールのための加熱フェーズクラスを生成するのに使用され、加熱フェーズクラスの第2のPADは反応器_02ユニットモジュールのための加熱フェーズクラスを生成するのに使用される。複数のPADを有するフェーズクラスのために特定のユニットフェーズを生成するときにワークステーション14及びコントローラ12がフェーズクラスのどのPADを使用するのかを決定することを可能とするために、複数のPADでフェーズクラスをサポートする各ユニットモジュールは、そのユニットモジュールが有している異なるPAD間の差異に関連する装置のタイプを確認する指標を含んでいるであろう。この識別子は、コントローラ12が実行のたのにユニットフェーズを生成しているときにそれが適用可能である限り、何れの所望の方法によっても格納され得る。例えば、反応器_01ユニットモジュールは、この反応器が電気的加熱であることを特定する値にセットされている識別子パラメータを有し、一方、反応器_02ユニットモジュールは、この反応器がスティーム加熱であることを特定する値にセットされている識別子パラメータを有しているであろう。コントローラ12は、ユニットモジュールのためのユニットフェーズを生成しているとき、識別子パラメータにアクセスし、ユニットフェーズを生成したとき、その識別子パラメータの値に基づいて、第1のPAD(電気的加熱)又は第2のPAD(スティーム加熱)を生成する。
【0039】
次に、エンジニアは、各ユニットモジュールに対してエイリアス決定テーブル(図3のエイリアス決定テーブル60のような)を生成し、そのユニットモジュールが帰属するユニットクラスに関連するフェーズクラスのそれぞれの一つに使用されるエイリアス名のそれぞれのエイリアス決定テーブルの定義を提供する。例えば、図2のオブジェクト階層に於いては、エンジニアは、充満、加熱、排出及び洗浄のフェーズクラスで使用されるエイリアス名のそれぞれの定義を含むように、ユニットモジュール反応器_01、反応器_02及び反応器_03のそれぞれに対してエイリアス決定テーブルを提供するであろう。図3に非常に良く示されているように、充満フェーズクラス56はフィード_タンクユニットクラス52にも関連しているので、フィード_タンクユニットクラス52に関連する何れかの他のフェーズクラスと同様に、(図3のフィード_タンク_06ユニットモジュール64のような)フィード_タンクユニットクラスに関連するユニットモジュールのそれぞれに対するエイリアス決定テーブルが、充満フェーズクラス56で使用されるエイリアス名のそれぞれに対する定義を含むことを確実にすることが、エンジニアに要求される。もちろん、上述のように、ユニットモジュールエイリアス決定テーブルの幾つかに於いては、エイリアス名の幾つかは「無視」によって定義され得る。なぜなら、それらは特定のユニットモジュールの動作に無関係だからである。
【0040】
好ましくは、ワークステーション14内の構成アプリケーションは、各フェーズクラスに対する全てのエイリアス名がそのフェーズクラスが帰属するユニットクラスに帰属するユニットモジュールのそれぞれに対するエイリアス決定テーブルによってサポートされているかどうかを決定するために自動的にチェックを行うエイリアス定義チェックルーチンを含んでいる。一実施形態では、各ユニットクラスは、ユニットクラスに関連する全てのフェーズクラスで使用される全てのエイリアス名を含むエイリアス名のリストを提供するであろう。次に、チェックルーチンは、そのユニットクラスに関連する全てのエイリアス決定テーブルに於けるこれらのエイリアス名のそれぞれについて、正しいエイリアス定義が存在するかどうかが決定される。複数のユニットクラスが一つのフェーズクラスを共有しているので(図2及び図3の充満フェーズクラスに示されているように)、システム内で全体的に唯一に命名される必要がある異なるユニットクラスで、同じエイリアス名が使用され得る。他の実施形態では、チェックルーチンは特定のフェーズクラスに対するエイリアス名を決定し、そして、フェーズクラスのエイリアス名のそれぞれに対する正しい定義をエイリアス決定テーブルが含んでいるかどうかを決定するために、検査されたユニットクラスに関連する各ユニットモジュールに対するエイリアス決定テーブルをチェックする。このルーチンは、続けて次のフェーズクラスに進み、そしてこの操作を全てのフェーズクラスがチェックされるまで繰り返す。この操作の間、チェッキングルーチンは、そのユニットモジュールのためのエイリアス決定テーブルに基づいて各フェーズが決定されたかどうか、及びこのフェーズ即ちフェーズクラスが実行時間の動作に使用するためにコントローラ12にダウンロードされたかどうかを、フェーズテーブルに示して各ユニットモジュールのフェーズテーブルに書き込む。また、チェックルーチンは、各エイリアス名のそれぞれに対する定義が特定のエイリアス決定テーブルの何れかに存在するかどうか、そして、特定された定義が正しいか、即ちプロセス制御システム内の正しい位置又はデバイスを指しているかを決定し得る。このチェックは、システムハードウエア構成と実行時間の間にコントローラ12によって使用されたデータベースをミラーリングするようにセットアップされたワークステーション14内の構成データベースを使用して為される。このチェッキングルーチンの使用は、複数のユニットクラスによってサポートされるべきフェーズクラスを可能とするのに役に立つ。
【0041】
フェーズテーブルは、実行時間の間に、フェーズクラスが適用され得るそれぞれの及び全てのユニットモジュールによってどのフェーズクラスがサポートされていないかを決定するためにエンジニアによって使用される。(そのユニットモジュールのエイリアス決定テーブルの不正な又は存在しないエイリアス定義により)一つのユニットモジュールによってさえフェーズクラスがサポートされていないとき、構成ルーチンは、決定されていないエイリアス定義によって停止又は中断するフェーズクラスに基づいて、コントローラ12が実行可能なルーチンを生成しようとするのを妨げるために、フェーズクラスがコントローラ12にダウンロードされるのを妨げるのが好ましい。更に、構成ルーチンは、フェーズテーブル内のダウンロードされたパラメータの設定に基づいたフェーズクラスのダウンロードを妨げ得る。
【0042】
フェーズクラス及びエイリアス決定テーブルが全て適切に構成されたとき、それらはこれらのオブジェクトに基づいて実行時間の動作を行うことを可能とするためにコントローラ12にダウンロードされる。一般的に言えば、コントローラ12はエイリアス決定テーブルとその中にエイリアス名を有するフェーズクラスとをメモリ22内に格納する。しかしながら、フェーズクラス及びエイリアス決定テーブルは、所望なら、ワークステーション14の一つのメモリ20又は他のどのようなメモリにも格納され得る。いずれにしても、このようなルーチンが(ワークステーション14又はコントローラ12上に格納され実行され得る)バッチ実行ルーチンによって実際に必要とされ又は呼び出されるまで、コントローラ12は実行可能なユニットフェーズルーチンを生成することはない。バッチ実行ルーチンがバッチ実行を遂行するとき、それは、バッチプロセスが実行されるべき特定のユニットモジュールのそれぞれに対する各フェーズクラスのインスタンス化したものを最初に生成する。コントローラ12(又はその中のプログラム)は、使用されるべきフェーズクラスにアクセスし、そのフェーズが実行されるべきフェーズクラスに関連するユニットモジュールについてのエイリアス決定テーブルをアクセスする。エイリアス決定テーブル及びフェーズクラスのためのPADを使用して、コントローラ12は実行可能なユニットクラスを生成し、そこではPAD内のエイリアス名が決定され、又はエイリアス決定テーブル内のこれらの名称のための定義によって置き換えられる。もしフェーズクラスが一つ以上のPADを有しているなら、コントローラ12は、ユニットフェーズを生成するのにどのPADが使用されるのかを決定するために、ユニットモジュールのPAD識別パラメータを使用する。その後、バッチ実行ルーチンによって指示されたように、ユニットフェーズ(即ち、フェーズクラスのインスタンス化されたバージョン)を実行する。
【0043】
コントローラ12はそのメモリ22内に(その中にエイリアス名を有する)フェーズクラスを格納しているので、いつでも各ユニットモジュール(即ち、全てのユニットフェーズの)に対する各フェーズクラスのインスタンス化された実行可能なバージョンをコントローラ12が有していることは必要とはされず、このことは、コントローラ12のメモリの要求を減少させる。事実、本発明に従えば、現在実行されているインスタンス化されたユニットフェーズのそれぞれとフェーズクラスのそれぞれを格納するのに十分なメモリのみを使用する。ユニットフェーズの実行後、コントローラ12は格納されたフェーズクラスとそのユニットモジュールのための格納されたエイリアス決定テーブルからユニットモジュールの新たなユニットフェーズを生成することができるので、コントローラ12はそのユニットフェーズを廃棄し得る。もちろん、もし、ユーザによってフェーズテーブルで定義されたとき、ユニットフェーズがコントローラ12の動作に永続的にインスタンス化されるべきであるなら、そのユニットフェーズは廃棄されることなく、このユニットフェーズのために常に利用可能なメモリが存在することを確実にするためにコントローラのメモリ22に保持される。いずれにしても、一般的なエイリアス化された制御ルーチン(フェーズクラス)をそれらが実際に必要とされるまで及び次にエイリアス決定テーブルを使用して実行可能な制御ルーチンを生成するまで格納することは、いつでもそれぞれのユニットモジュールに対する各フェーズクラスのための別々の実行可能なプログラムを格納するのにコントローラを必要とする従来技術のシステムに対して、必要とされるメモリの量を減少させる。しかしながら、実行時間の前に別々の実行可能な制御ルーチン(ユニットフェーズ)が生成されるので、コントローラ12は、バッチ実行の前に解決している問題が一般的な制御ルーチンとエイリアス決定テーブルとの間に存在することを認識し、このことはバッチ実行を開始し、次に、決定できないエイリアス名によりその動作の間に停止されることを妨げ、このことは、実行時間の間の実行中にエイリアス名が決定される一般的な制御ルーチンが格納され実行される従来技術システムの抱える問題点である。
【0044】
実行可能なユニットフェーズは実行時間の前に生成されるので、そして、実行時間の間にコントローラ12によって使用されるのはこのユニットフェーズであるので、一般的なフェーズクラスは常に利用可能であり、従って、このフェーズクラスは、それから生成された一つのフェーズユニットが実行されている間、他のユニットフェーズを生成するのに使用される。同様に、一般的なフェーズクラスは、そのフェーズクラスから発展したユニットフェーズが実行されている間にアップグレードされ又は変更され得、このことは、先のフェーズクラスから発展した現在実行中のルーチンを中断することなく、新たなフェーズクラスをユーザがダウンロードすることができることを意味している。このことは、現在実行しているプロセスを中断させることなく、コントローラ12のアップグレードを可能とするので、有利である。
【0045】
更に、フェーズクラスは一以上のユニットクラスに関連づけられることができるので、単一のフェーズクラスが異なるタイプのユニット又はハードウエアに対して格納され使用され、このことは、、制御システム内の必要とされるオブジェクトの数を更に減少させ、コントローラ12のメモリの要求を減少させる。また、フェーズクラスは、同じ(又は異なる)ユニットクラス内の異なる装置で使用され得る複数のPADを有し得るので、ユーザは、ハードウエアの些細な差異を賄うためにバッチ実行ルーチンをプログラムする必要はない。その代わり、フェーズクラスがこの差異を賄い、従って、たとえ異なるユニットモジュールがそれに関連するわずかに異なるハードウエアを有していても、バッチ実行ルーチンは、異なるユニットモジュール上の同じ機能を達成するために、同じフェーズクラスを呼び出し又は使用することができる。
【0046】
エンジニアによって発展させられてきたプロセス制御ルーチンは、或るパラメータ又は変数をも含み得、その値はインスタンス化されたプロセス制御ルーチン(即ち、ユニットフェーズ)がコントローラ12内で生成された後に特定され得る。これらの動的に結合され又は動的に決定されるパラメータは、例えば、特定のユニットモジュール上で実行されるバッチのフェーズ内でユーザ又はバッチ実行ルーチンにとって異なる選択が可能であるときに、有用である。例えば、バッチ実行ルーチンには、使用されているレシピに基づいて図1の反応器_02のバルブ201又はバルブ202を開くかどうかを決定することが要求される。例えば、もし、バッチ実行がビール等の炭酸飲料を作ることであるなら、そのバッチプロセスの充満フェーズの間反応器_02のバルブ201が開かれている必要がある場合である通常のビールを作るためにレシピが作成され、そのバッチプロセスの充満フェーズの間反応器_02のバルブ201が開かれている必要があるライトビールを作るためにレシピが形成される。これらの異なる充満動作のために(レシピに基づいて)2つの別々のフェーズクラスを有する代わりに、反応器_02ユニットモジュールに対するユニットフェーズがコントローラ12内に生成された後、バッチが入力バルブパラメータを動的に特定するように実行可能とするのに有用である。
【0047】
上記のように、動的な結合を可能とする従来技術のシステムは、典型的にはアドレス配列を使用し、そこでは異なるポインタが制御ルーチン内で使用されている異なるアドレスに格納されることができ、そこでは各アドレスに関連する一つのポインタが存在する。しかしながら、これらのアドレス及びそこでのポインタの追跡を続けることは困難であり、動的結合を形成しようとする前に、そのアドレスでのポインタが正しいかどうかを動的に決定する方法は存在しない。もし、ポインタが正しくなければ、制御ルーチンは典型的には停止し、この停止は一般的には生産時間と材料のロスを招くので特にバッチ実行の途中に於いては非常に好ましくなく、追跡中にバッチ実行を戻すには非常に困難なオペレータ介入を必要とする。
【0048】
本発明によれば、何れのフェーズクラスについてのプロセス制御ルーチンに於いても使用されるように、(動的に特定された)変数又はパラメータ(動的参照パラメータ)を動的に結合することを可能とするのが好ましい。換言すれば、幾つかのケースの場合には、フェーズクラスのPADに於ける動的参照パラメータを、実行可能なユニットフェーズがフェーズクラスから生成されたときにユニットフェーズに変換され又は持ち越された動的参照パラメータで置き換えることが好ましく、そこでは、この動的参照パラメータの値は、ユニットフェーズが生成された後、そしてユニットフェーズが実行を開始されたとき(即ち、実行時間の間)に於いてさえ、特定されることができる。上述のように、このパラメータは、例えば、パラメータの値についての選択の決定が、構成時間に於いて利用可能ではない情報に基づいているとき、例えばオペレータの入力に基づく選択、バッチ実行ルーチンから通過してきたレシピパラメータに基づく選択、制御変数の実行時間値に基づく選択等のときに、有用である。
【0049】
プロセス制御ルーチンに於いて使用するための動的参照パラメータは、動的参照パラメータはコントローラ12のメモリ22(又は所望なら幾つかの他のメモリ)に格納されることを除いて、プロセス制御システム内で他のハードウエア又はソフトウエアのパラメータを定義するのに使用される約束事を使用して定義される。
【0050】
動的参照パラメータは、その動的参照パラメータを使用して実行される異なる動作を可能とするために、複数の属性又はフィールドを有していることが好ましい。特に、動的参照パラメータは、以下の表1に定義するフィールド又は属性を含み得る。
【0051】
【表1】
Figure 0004707792
【0052】
DREF(動的参照)属性の値はポインタであり、その動的参照が現在関連しているパラメータ又はフィールドへのタグ又はパスである。DeltaVシステムでは、このポインタは、デバイス又はモジュールパラメータのようなモジュールを指す(パスなどの)文字列値である。例えば、「出力_POS」の動的参照パラメータは、例えば、命令
'OUTLET#POS.DREF':= "VLV1004/AO/OUT.CV" 又は
'OUTLET#POS.DREF':= "";//空の文字列.
を使用するパラメータ/フィールドへの参照である文字列定数に割り当てられることができる。もちろん、他のシステムでは、DREFのフィールドの値は、そのシステムが装置、モジュール等を特定する方法に依存する数字又は文字列であり得る。一般的に言えば、DREF割当の使用は、動的参照は動的参照パラメータのDREFフィールドへのフルパラメータ参照文字列パスを割り当てることにより確立されるので、コントローラ12に新たな動的参照パラメータを生成する。制御動作の動的目標が必要とされるとき、ユーザは、実行時間までに決定され得ない各パラメータの動的参照パラメータを生成することが必要となる。例えば、ユニットタグクラス、ユニットクラスの一部分、フェーズクラスにおけるフェーズアルゴリズムパラメータ、及びフェーズ論理モジュールに於けるモジュールレベルパラメータとしての場合を含めて、そのシステムに生成される他の何れの外部参照パラメータの状況に於いても、動的参照パラメータが生成され得る。もちろん、動的参照パラメータは、他の状況に於いても使用され得る。他のユーザが生成したパラメータについても、ユーザは、パラメータ命名構成ルールが許容する方法で、ローカル名称の範囲(即ち、同じレベルで定義された他のパラメータ、ブロック、又はフェーズクラス名称と同じ名称を有することはできない)で唯一の方法で、動的参照パラメータの名称を構成する。DREF属性への文字列の書き込みは高価な操作であり(先の外部参照オブジェクトを破壊し、新たな外部パラメータを構築する)、従って一般的には繰り返しでない(パルスの)表現に於いて行われるべきである。DREF属性への新たな文字列の書き込みは、即座にCONN属性(及び動的参照パラメータの他の属性)からの読み出し値の「不良」への変更を生じさせ(もし結合が即座に確立されなければ)、引き続くこれらのフィールドのテストの表現が正確に機能する。
【0053】
DREF属性への割当は、例えば連鎖オペレーション(2又はそれ以上の文字列の連鎖)、文字列選択オペレーション(多くの可能性のある文字列の一つがオペランドの値に基づいて選択される)、又は他の何れの文字列オペレーションをも含めて、所望の文字列オペレーションを使用して達成される。
【0054】
CONN(結合)属性は、DREF属性によって特定された値が正しいか又は制御システムの状況下の決定可能なフィールドかについての指標を提供する。DREF属性が変更され又は設定されたとき、コントローラ12は、それようのタグ又はパスが存在するか及び制御システム10の現在の構成に位置し又は決定されているかを見るために、即座に及び自動的にその値をテストする。もし、DREF属性の値が正しく決定可能であるなら、CONN属性は0に設定される。しかしながら、もしDREF属性の値が決定不可能であり、例えば制御システムの状況下で不適切であり若しくはちょうど存在していないことにより決して決定され得ないなら、CONN属性は−1に設定される。もし、コントローラ12がDREF属性を決定しようと積極的に試みても、接続動作などによる待ち時間のためにそのようにすることができないなら、CONN属性の値は0より大きい値に設定され、この値は未だ決定されておらず後に決定されることを示している。もしDREF属性が未だ決定されていないなら、時間切れの期間の後、CONN属性の値は−1に設定されることが好ましい。CONN属性は、実行時間の間に動的参照のテストを可能とするので、非常に有用である。例えば、DREF値が正しく定義されている場合にのみ、単に「IF < dynamic parameter name > .CONN = O, THEN < action to be taken > 」という命令はアクションを起こすのに使用されることができる。この可能性は、制御ルーチンが動的参照を使用し得るように、しかしもし動的参照が実行時間に不正であるなら中断しないように書かれることを可能とする。もちろん、分岐命令、停止又は中断命令等の、CONN属性を使用する他のどのようなテスト又は命令も使用され得る。更に、CONN属性は、接続の成功又は失敗を示すために、(0,1及び0より大きい)所望の他の値を採り得る。
【0055】
動的参照パラメータのDRFV(動的参照浮動値)読み取り/書き込み属性は、浮動小数点又は整数の値として、DREF属性によって特定されるフィールドへの読み出し及び書き込みを可能とするのに使用される。一実施形態では、DRFV属性は、もしCONN属性が0でなければ、最大値又は他の特定された値に設定される。また、この実施形態では、DREF属性は、もしCONN属性が0でなければ、動的に参照されるフィールドへの書き込みを妨げるであろう。同様に、動的参照パラメータのDRSV(動的参照文字列値)読み取り/書き込み属性は、DREF属性によって文字列値として特定されるフィールドへの読み出しと書き込みを可能とするのに使用される。一実施形態では、DRSV属性は、もしCONN属性が0でなければ、空の文字列に設定され、もしCONN属性が0でなければ、書き込みを妨げる。これらは、動的参照フィールド実際に存在するか又は正しいかを示す文字列又は数値のフィールドの両方として動的参照フィールドから書き込まれ及び読み出されることが可能であるので、これらは有用な属性である。もちろん、DREF若しくはDRSV属性又は他の特別に生成された属性も、DREF属性によって特定されたフィールドへのブールの値又は(配列で格納された値のグループのような)配列値を読み出し及び/又は書き込むのに使用されることができる。
【0056】
DRST(動的参照状態)属性は、DREF属性によって特定されたフィールドに関連する状態属性の読み出しを可能とする。DeltaV及びフィールドバスプロトコル等の或るコントローラ又は通信プロトコルでは、幾つかのパラメータ又はフィールドは、その値が良好か不良か不確定かどうかなどを等の値の状態を示す値又は状態を含んでいる。DRST属性は、動的に参照されるパラメータのこの状態値にアクセスすることを可能とする。WRST(書き込み状態)属性は、DREF属性によって指定されたフィールドの書き込み状態値を読み取る。この状態は、REF属性によって指定されたフィールドへの最後の書き込みオペレーションの成功を示し、動的参照フィールドの書き込み状態へのアクセスを提供する。
【0057】
もちろん、所望なら、他の属性は、そのモード、動的参照フィールドに関連する制限又は他の状態への読み出し又は書き込みを提供すること、又は動的参照フィールドのどのような属性への他の読み出し又は書き込みを実行する等の他のオペレーションへの動的参照パラメータが備えられ得る。同様に、ここに確認した属性は、接続の、又は読み出し若しくは書き込みオペレーションの成功、失敗等を示す他の名称又は値を採り得る。
【0058】
動的参照パラメータがユニットモジュールの状況で使用されるとき、即ち、その中に動的参照参照を有するユニットフェーズの生成に際して、DREF属性に書き込まれる文字列はエイリアス名について検査され、そして何れかのエイリアス名がそのユニットモジュールの現在のエイリアス決定テーブルに基づいて置換される。結果として、動的参照はエイリアス名を使用してフィールドを特定するように生成され得、そして、ユニットフェーズがフェーズクラスから生成されたとき、これらのエイリアス名がなお決定される。このことは、たとえ動的参照が実行時間までに決定されなくても、又は動的参照パラメータのDREF属性への書き込みに基づいて実行時間の間に決定されても、プロセス制御ルーチンに動的参照パラメータがより広く使用されることを可能とする。
【0059】
SFCアルゴリズムを使用するとき、動的参照パラメータを介する書き込みは、SFCの設計に依存して幾つかの方法で為され得る。例えば、(所望なら、書き込みオペレーションの確認がSFCの後の部分で論理によって扱われると仮定して)そのルーチンは所望の値をステップ表現のステートメントとして丁度割り当て、そのルーチンは一度書き込み及びWRST属性が「実行中」の値以外の値になるまで休止するのにパルス/割当タイプのアクションを自信を持って使用し、又はそのルーチンはその値が達成され又はステップ時間が長すぎることを遷移表現が検出するまで繰り返し値の書き込みを行うように非格納/割当タイプのアクションを使用する。このように、SFCアルゴリズムを使用するとき、パルス/割当タイプのアクションの使用を介して動的参照を確認しながら確立し検証し、これにより、アクセス表現がフル動的参照パスを決定し及び適当な動的参照パラメータのDREFフィールドに(モジュールレベル又はフェーズレベルで)それを割り当て、そして0(接続され又は決して接続されない)又はそれより小さいCONN属性の値について確認表現をテストする。それに代えて、読み出しを意図する動的参照パラメータについては、DRFV属性の値は、妥当性のある値(最大_値に対するものとして)について読まれてチェックされ、確認時間切れ値が最小の秒数(例えば5秒)に設定され得る。
【0060】
更に、もし幾つかの動的参照パラメータがアルゴリズムの同じポイントに確立されたら、同じSFCステップに於けるそれぞれについてアクションを生成するのが好ましい。次に、SFC遷移の次の表現に於ける"'RESOLVE STEP/PENDING CONFIRMS.CV' = 0"のような単一の項目は、アルゴリズムが全ての動的参照パラメータがそれらの最終状態に於いて「確立された」を有するまで先へ進むのを妨げることができる。もし、アルゴリズムがエイリアス接続が存在しない又は無視を取り扱わなければならないなら、アルゴリズムの実行をガイドするために、これに続く表現は個々の動的参照パラメータのCONN属性をテストすることができる。
【0061】
一度動的参照が確立され(即ちDREF属性が書かれると)動的参照が検証されると(CONN属性が0であると)、DRFV属性、DSRV及びDRSTフィールドには、参照パラメータに於ける値が設定されるように書き込まれる。(FAIL#MONITOR複合ブロック等の連続して実行される)連続するアルゴリズムに於いては、(既に確立されている)動的参照パラメータを介する読込への推奨されるアプローチは、
IF ('OUTLET#POS.DRFV' != <desired value>) AND
('OUTLET#POS.WRST' != <in progress value>) THEN
'OUTLET#POS.DRFV' = <desired value>;
のような形式が採られ、これは、最後の試みが未だ実行中である時に書き込みを避けるような方法で達成されるまで、所望の値に参照パラメータを押し進めようと連続的に試みる。
【0062】
本発明は特定の実施形態に関連して記述されているが、これは例示のみを意図し、本発明を限定するものではなく、本発明の精神及び範囲を逸脱することなく、記載されている実施形態に改変、付加又は削除が行なわれ得ることは当業者に明らかであろう。
【0063】
【発明の効果】
実行時間の前に決定されたエイリアス名を使用するプロセス制御ルーチンと、実行時間の間に決定される動的参照パラメータのような間接参照は、所望のプロセス制御プログラミング環境内で使用され実行され、どのような所望のタイプのプロセス制御通信プロトコルを使用するどのようなプロセス制御システムに於いても使用され、更に、どのようなデバイス又はデバイスのサブユニットに関連するどのようなタイプの機能を実行するのにも使用され得る。ここに記載したような間接参照を使用するプロセス制御ルーチンは、例えばコントローラ又は他のプロセス制御デバイスに格納されたソフトウエアで実行されるのが好ましい。しかしながら、これらのルーチンは、これに代えて又はこれに加えて、所望のハードウエア、ファームウエアなどで実行され得る。もしソフトウエアで実行されるなら、個々で議論したプロセス制御ルーチンは、磁気ディスク、レーザディスク若しくは他の格納メディア、又はコンピュータのRAM若しくはROM等に格納され得る。同様に、このソフトウエアは、例えば電話回線、インターネット等の通信チャンネル上を含む公知の又は所望の配送手段を介してユーザ又はデバイスに配送され得る。
【図面の簡単な説明】
【図1】プロセス装置の制御を実行するためのエイリアス名及び/又は動的参照パラメータを有する押出し成型装置の制御ルーチンを使用するプロセス制御ネットワークの部分的ブロックダイヤグラムである。
【図2】図1のプロセス制御ネットワークの概念的構成を示すオブジェクト構造を示すブロックダイヤグラムである。
【図3】図2のオブジェクト構造の一部を拡大したブロックダイヤグラムである。
【符号の説明】
10 プロセス制御ネットワーク
12 プロセスコントローラ
14 ワークステーション
15 イーサネット接続
15 イーサネット通信ライン
16 プロセス
18 バス
20,22 メモリ
21,24 プロセッサ
50 反応器ユニットクラス
52 タンクユニットクラス
52 ユニットクラス
54,54,64 ユニットモジュール
56,58 フェーズクラス
56 充満フェーズクラス
58 排出フェーズクラス
60 エイリアス決定テーブル
62 フェーズテーブル
100,200,300 反応容器
101,102 入力バルブ
201,202 入力バルブ
301,302 入力バルブ
103,203,303 出力バルブ
105,205,305 デバイス
105,205 流体レベルメーター

Claims (22)

  1. プロセスの制御に於いて使用するためのプロセス制御システムであって、
    コントローラと、
    メモリと、
    前記プロセスの少なくとも一部分を制御するのに使用される制御ルーチンと
    を有し、前記制御ルーチンはメモリに格納され、前記コントローラは前記制御ルーチンの実行可能なバージョンを生成し、前記制御ルーチンの前記実行可能なバージョンを実行することにより、前記プロセスの前記一部分の制御を行い、
    前記制御ルーチンは、動的参照パラメータが指しているパスを特定するフィールド値を保持し、かつ、前記制御ルーチンの実行可能なバージョンの生成後に割り当てられ得る参照属性を含む複数の属性を有する動的参照パラメータを含む、プロセス制御システム。
  2. 請求項1記載のプロセス制御システムであって、前記複数の属性の他のものは、前記参照属性の前記フィールド値が正しい参照であるかどうかの指標を提供する接続属性である、プロセス制御システム。
  3. 請求項1記載のプロセス制御システムであって、前記属性の他のものは、前記参照属性によって特定されるフィールドの読み取り又は書き込みを行う読み取り/書き込み属性である、プロセス制御システム。
  4. 請求項3記載のプロセス制御システムであって、前記読み取り/書き込み属性は、文字列値として読み取り又は書き込みを行うプロセス制御システム。
  5. 請求項3記載のプロセス制御システムであって、前記読み取り/書き込み属性は、数値として読み取り又は書き込みを行うプロセス制御システム。
  6. 請求項3記載のプロセス制御システムであって、前記読み取り/書き込み属性は、とブール値して読み取り又は書き込みを行うプロセス制御システム。
  7. 請求項3記載のプロセス制御システムであって、前記読み取り/書き込み属性は、配列値として読み取り又は書き込みを行うプロセス制御システム。
  8. 請求項1記載のプロセス制御システムであって、前記属性の他のものは、前記参照属性によって特定されるフィールドに関連する状態を読み取る状態属性である、プロセス制御システム。
  9. 請求項8記載のプロセス制御システムであって、前記属性の他のものは、前記参照属性によって特定されるフィールドへの先の書き込みの成功又は失敗を示す書き込み状態を読み取る、プロセス制御システム。
  10. 請求項1記載のプロセス制御システムであって、前記複数の属性の第2のそれは、前記参照属性の前記フィールド値が正しいフィールドであるかどうかの指標を提供する接続属性であり、前記複数の属性の第3のそれは、前記参照属性によって特定されているフィールドの読み取り又は書き込みを行う読み取り/書き込み属性である、プロセス制御システム。
  11. 請求項10記載のプロセス制御システムであって、前記複数の属性の第4のそれは、前記参照属性によって特定されるフィールドに関連する状態を読み取る状態属性である、プロセス制御システム。
  12. プロセスを制御するコントローラを備えたプロセス制御システムに於いて使用されるソフトウエア制御コンポーネントであって、該ソフトウエア制御コンポーネントが、
    コンピュータ読み取り可能なメモリと、
    前記コンピュータ読み取り可能なメモリに格納され、前記プロセスの少なくとも一部分を制御するために前記コントローラよって使用されるように適合した制御ルーチンと
    を有し、前記制御ルーチンは、動的参照パラメータが指すパスを特定するフィールド値を保持し、かつ、前記制御ルーチンの実行可能なバージョンの生成後に割り当てられ得る参照属性を含む複数の属性を有する動的参照パラメータを含む、ソフトウエア制御コンポーネント。
  13. 請求項12記載のソフトウエア制御コンポーネントであって、前記複数の属性の他のものは、前記参照属性の前記フィールド値が正しいフィールドであるかどうかの指標を提供する接続属性である、ソフトウエア制御コンポーネント。
  14. 請求項12記載のソフトウエア制御コンポーネントであって、前記属性の他のものは、前記参照属性によって特定されるフィールドの読み取り又は書き込みを行う読み取り/書き込み属性である、ソフトウエア制御コンポーネント。
  15. 請求項14記載のソフトウエア制御コンポーネントであって、前記読み取り/書き込み属性は、文字列値として読み取り又は書き込みを行うソフトウエア制御コンポーネント。
  16. 請求項14記載のソフトウエア制御コンポーネントであって、前記読み取り/書き込み属性は、数値として読み取り又は書き込みを行うソフトウエア制御コンポーネント。
  17. 請求項14記載のソフトウエア制御コンポーネントであって、前記読み取り/書き込み属性は、ブール値として読み取り又は書き込みを行うソフトウエア制御コンポーネント。
  18. 請求項14記載のソフトウエア制御コンポーネントであって、前記読み取り/書き込み属性は、配列値として読み取り又は書き込みを行うソフトウエア制御コンポーネント。
  19. 請求項12記載のソフトウエア制御コンポーネントであって、前記複数の属性の他のものは、前記参照属性によって特定されるフィールドに関連する状態を読み取る状態属性である、ソフトウエア制御コンポーネント。
  20. 請求項19記載のソフトウエア制御コンポーネントであって、前記参照属性は、前記参照属性によって特定されるフィールドへの先の書き込みの成功又は失敗を示す書き込み状態を読み取る、ソフトウエア制御コンポーネント。
  21. 請求項12記載のソフトウエア制御コンポーネントであって、前記複数の属性の第2のそれは、前記参照属性の前記フィールド値が正しいフィールドであるかどうかの指標を提供する接続属性であり、前記複数の属性の第3のそれは、前記参照属性によって特定されているフィールドの読み取り又は書き込みを行う前記読み取り/書き込み属性である、ソフトウエア制御コンポーネント。
  22. 請求項21記載のソフトウエア制御コンポーネントであって、前記複数の属性の第4のそれは、前記参照属性によって特定されるフィールドに関連する状態を読み取る状態属性である、ソフトウエア制御コンポーネント。
JP2000069117A 1999-03-12 2000-03-13 プロセス制御ルーチンに於ける間接参照 Expired - Lifetime JP4707792B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/267,431 US6385496B1 (en) 1999-03-12 1999-03-12 Indirect referencing in process control routines
US09/267431 1999-03-12

Publications (2)

Publication Number Publication Date
JP2000311004A JP2000311004A (ja) 2000-11-07
JP4707792B2 true JP4707792B2 (ja) 2011-06-22

Family

ID=23018744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000069117A Expired - Lifetime JP4707792B2 (ja) 1999-03-12 2000-03-13 プロセス制御ルーチンに於ける間接参照

Country Status (4)

Country Link
US (1) US6385496B1 (ja)
JP (1) JP4707792B2 (ja)
DE (1) DE10011661B4 (ja)
GB (1) GB2348020B (ja)

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257523B1 (en) * 1999-05-06 2007-08-14 Fisher-Rosemount Systems, Inc. Integrated distributed process control system functionality on a single computer
US6865576B1 (en) * 1999-05-21 2005-03-08 International Business Machines Corporation Efficient schema for storing multi-value attributes in a directory service backing store
GB2351370A (en) * 1999-06-25 2000-12-27 Ibm Data processing with policed object union
JP3998372B2 (ja) * 1999-06-30 2007-10-24 株式会社東芝 半導体処理工程制御システム、半導体処理工程制御方法、及び、そのための処理を記録した記録媒体
US7020876B1 (en) * 2000-06-30 2006-03-28 Fisher-Rosemount Systems, Inc. Campaign management for batch processes
US6647315B1 (en) * 2000-09-29 2003-11-11 Fisher-Rosemount Systems, Inc. Use of remote soft phases in a process control system
DE10101746A1 (de) * 2001-01-16 2002-08-14 Siemens Ag Verfahren zum Betreiben eines Automatisierungssystems
JP3729251B2 (ja) * 2001-03-12 2005-12-21 オムロン株式会社 コントローラ及びシステム
US7047522B1 (en) * 2001-04-30 2006-05-16 General Electric Capital Corporation Method and system for verifying a computer program
US7802238B2 (en) * 2001-06-22 2010-09-21 Invensys Systems, Inc. Process control script development and execution facility supporting multiple user-side programming languages
US6993643B2 (en) * 2001-12-03 2006-01-31 International Business Machines Corporation Method and system of dynamic video driver selection on a bootable CD via symbolic links
US7076312B2 (en) * 2002-08-02 2006-07-11 Fisher-Rosemount Systems, Inc. Integrated electronic signatures for approval of process control and safety system software objects
US7424702B1 (en) * 2002-08-19 2008-09-09 Sprint Communications Company L.P. Data integration techniques for use in enterprise architecture modeling
DE10348563B4 (de) * 2002-10-22 2014-01-09 Fisher-Rosemount Systems, Inc. Integration von Grafikdisplayelementen, Prozeßmodulen und Steuermodulen in Prozeßanlagen
US9983559B2 (en) * 2002-10-22 2018-05-29 Fisher-Rosemount Systems, Inc. Updating and utilizing dynamic process simulation in an operating process environment
GB2418031A (en) * 2002-10-22 2006-03-15 Fisher Rosemount Systems Inc Smart process modules and objects in process plants
US7146231B2 (en) * 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
US7865251B2 (en) * 2003-01-28 2011-01-04 Fisher-Rosemount Systems, Inc. Method for intercontroller communications in a safety instrumented system or a process control system
US7043311B2 (en) * 2003-02-18 2006-05-09 Fisher-Rosemount Systems, Inc. Module class objects in a process plant configuration system
US7526347B2 (en) * 2003-02-18 2009-04-28 Fisher-Rosemount Systems, Inc. Security for objects in a process plant configuration system
US7117052B2 (en) * 2003-02-18 2006-10-03 Fisher-Rosemount Systems, Inc. Version control for objects in a process plant configuration system
US7369912B2 (en) * 2003-05-29 2008-05-06 Fisher-Rosemount Systems, Inc. Batch execution engine with independent batch execution processes
DE10347972A1 (de) 2003-10-15 2005-05-19 Siemens Ag Steuerverfahren für eine Produktionsmaschine, insbesondere eine Werkzeugmaschine, durch eine der Produktionsmaschine zugeordnete Steuereinrichtung
US7435581B2 (en) 2003-11-26 2008-10-14 Broadley-James Corporation Integrated bio-reactor monitor and control system
US7635586B2 (en) 2003-11-26 2009-12-22 Broadley-James Corporation Integrated bio-reactor monitor and control system
DE102004007231B4 (de) * 2004-02-13 2011-07-28 Siemens AG, 80333 Verfahren zum Konfigurieren einer Automatisierungskomponente eines Automatisierungssystems und entsprechendes Automatisierungssystem
US7729789B2 (en) 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
JP2007536634A (ja) 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US7991602B2 (en) * 2005-01-27 2011-08-02 Rockwell Automation Technologies, Inc. Agent simulation development environment
US7457675B2 (en) * 2005-08-15 2008-11-25 Abb Inc. External status asset monitor
US7738975B2 (en) 2005-10-04 2010-06-15 Fisher-Rosemount Systems, Inc. Analytical server integrated in a process control network
US7444191B2 (en) 2005-10-04 2008-10-28 Fisher-Rosemount Systems, Inc. Process model identification in a process control system
US8036760B2 (en) 2005-10-04 2011-10-11 Fisher-Rosemount Systems, Inc. Method and apparatus for intelligent control and monitoring in a process control system
GB2446343B (en) 2005-12-05 2011-06-08 Fisher Rosemount Systems Inc Multi-objective predictive process optimization with concurrent process simulation
US7860589B2 (en) 2006-03-02 2010-12-28 Rockwell Automation Technologies, Inc. Programmatic access to controller construct and variable names
US7672740B1 (en) * 2006-09-28 2010-03-02 Rockwell Automation Technologies, Inc. Conditional download of data from embedded historians
US7742833B1 (en) 2006-09-28 2010-06-22 Rockwell Automation Technologies, Inc. Auto discovery of embedded historians in network
US7848829B2 (en) * 2006-09-29 2010-12-07 Fisher-Rosemount Systems, Inc. Methods and module class objects to configure absent equipment in process plants
US8181157B2 (en) * 2006-09-29 2012-05-15 Rockwell Automation Technologies, Inc. Custom language support for project documentation and editing
US7913228B2 (en) 2006-09-29 2011-03-22 Rockwell Automation Technologies, Inc. Translation viewer for project documentation and editing
US7933666B2 (en) * 2006-11-10 2011-04-26 Rockwell Automation Technologies, Inc. Adjustable data collection rate for embedded historians
US7835806B2 (en) * 2007-01-29 2010-11-16 Rockwell Automation Technologies, Inc. Method for indirect access to controller data using name stored in string tag
US20080255681A1 (en) 2007-04-10 2008-10-16 Cindy Alsup Scott Methods and apparatus to manage process plant alarms
US8046086B2 (en) 2007-05-15 2011-10-25 Fisher-Rosemount Systems, Inc. Methods and systems for batch processing and execution in a process system
US7974937B2 (en) * 2007-05-17 2011-07-05 Rockwell Automation Technologies, Inc. Adaptive embedded historians with aggregator component
US20080294361A1 (en) * 2007-05-24 2008-11-27 Popp Shane M Intelligent execution system for the monitoring and execution of vaccine manufacturing
US8407716B2 (en) * 2007-05-31 2013-03-26 Fisher-Rosemount Systems, Inc. Apparatus and methods to access information associated with a process control system
US8369975B2 (en) 2007-09-21 2013-02-05 Fisher-Rosemount Systems, Inc. Online recipe synchronization in a real-time batch executive environment
US7930261B2 (en) * 2007-09-26 2011-04-19 Rockwell Automation Technologies, Inc. Historians embedded in industrial units
US7930639B2 (en) 2007-09-26 2011-04-19 Rockwell Automation Technologies, Inc. Contextualization for historians in industrial systems
US7917857B2 (en) * 2007-09-26 2011-03-29 Rockwell Automation Technologies, Inc. Direct subscription to intelligent I/O module
US7962440B2 (en) * 2007-09-27 2011-06-14 Rockwell Automation Technologies, Inc. Adaptive industrial systems via embedded historian data
US7882218B2 (en) * 2007-09-27 2011-02-01 Rockwell Automation Technologies, Inc. Platform independent historian
US20090089671A1 (en) * 2007-09-28 2009-04-02 Rockwell Automation Technologies, Inc. Programmable controller programming with embedded macro capability
US20090089247A1 (en) * 2007-09-28 2009-04-02 Terrence Lynn Blevins Methods and apparatus to standardize data properties in a process control environment
US8825189B2 (en) * 2007-11-13 2014-09-02 Fisher Rosemount Systems, Inc. Methods and apparatus to execute an auxiliary recipe and a batch recipe associated with a process control system
US8150541B2 (en) * 2007-11-13 2012-04-03 Fisher-Rosemount Systems, Inc. Methods and apparatus to modify a recipe process flow associated with a process control system during recipe execution
US8555206B2 (en) * 2007-12-21 2013-10-08 Fisher-Rosemount Systems, Inc. Methods and apparatus to present recipe progress status information
US8606379B2 (en) * 2008-09-29 2013-12-10 Fisher-Rosemount Systems, Inc. Method of generating a product recipe for execution in batch processing
US8881039B2 (en) 2009-03-13 2014-11-04 Fisher-Rosemount Systems, Inc. Scaling composite shapes for a graphical human-machine interface
US8825183B2 (en) * 2010-03-22 2014-09-02 Fisher-Rosemount Systems, Inc. Methods for a data driven interface based on relationships between process control tags
US10127504B2 (en) * 2010-12-16 2018-11-13 Siemens Industry, Inc. Method for linking control system inputs and outputs to symbolic controls
US9772617B2 (en) * 2011-06-30 2017-09-26 General Electric Company Systems and methods for function block instantiation
JP6647709B2 (ja) 2012-09-14 2020-02-14 ジーイー・ヘルスケア・バイオサイエンス・コーポレイション フレキシブルなバイオリアクター制御システムを実装するための方法及び装置
US9086688B2 (en) * 2013-07-09 2015-07-21 Fisher-Rosemount Systems, Inc. State machine function block with user-definable actions on a transition between states
DE102015213700A1 (de) * 2015-07-21 2017-01-26 Siemens Aktiengesellschaft Verfahren und System zur homogenen Integration von Speicherprogrammierbaren Steuerungen in ein Anlagenmodell
US10671038B2 (en) 2016-07-15 2020-06-02 Fisher-Rosemount Systems, Inc. Architecture-independent process control
US10878140B2 (en) 2016-07-27 2020-12-29 Emerson Process Management Power & Water Solutions, Inc. Plant builder system with integrated simulation and control system configuration
US20180356811A1 (en) * 2017-06-12 2018-12-13 Honeywell International Inc. Apparatus and method for automated identification and diagnosis of constraint violations
CN110892350B (zh) * 2017-06-12 2023-04-28 霍尼韦尔国际公司 用于识别、可视化和触发来自自动建议动作的工作流以回收基于模型的工业过程控制器的损失利益的装置和方法
CN109960495B (zh) * 2017-12-25 2022-04-15 紫石能源有限公司 一种设备控制处理方法及装置
AT521649B1 (de) * 2018-09-11 2020-08-15 Gerd Huebscher Verfahren zur Ermittlung von Prozessabläufen
US11604459B2 (en) 2019-07-12 2023-03-14 Emerson Process Management Power & Water Solutions, Inc. Real-time control using directed predictive simulation within a control system of a process plant
US11424865B2 (en) 2020-12-10 2022-08-23 Fisher-Rosemount Systems, Inc. Variable-level integrity checks for communications in process control environments
US11418969B2 (en) 2021-01-15 2022-08-16 Fisher-Rosemount Systems, Inc. Suggestive device connectivity planning

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11134010A (ja) * 1997-10-27 1999-05-21 Honda Motor Co Ltd プログラマブルコントローラにおけるプログラム実行方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4115853A (en) 1976-12-21 1978-09-19 Allen-Bradley Company Jump structure for a digital control system
DE3419559A1 (de) 1984-05-25 1985-11-28 Robert Bosch Gmbh, 7000 Stuttgart Steuervorrichtung fuer funktionen im kraftfahrzeug
EP0405829B1 (en) * 1989-06-30 1998-04-15 AT&T Corp. Object oriented software system architecture
US5469361A (en) 1991-08-08 1995-11-21 The Board Of Regents Acting For And On Behalf Of The University Of Michigan Generic cell controlling method and apparatus for computer integrated manufacturing system
US5860138A (en) * 1995-10-02 1999-01-12 International Business Machines Corporation Processor with compiler-allocated, variable length intermediate storage
US5892934A (en) 1996-04-02 1999-04-06 Advanced Micro Devices, Inc. Microprocessor configured to detect a branch to a DSP routine and to direct a DSP to execute said routine
US5838563A (en) 1996-04-12 1998-11-17 Fisher-Rosemont Systems, Inc. System for configuring a process control environment
US5828851A (en) 1996-04-12 1998-10-27 Fisher-Rosemount Systems, Inc. Process control system using standard protocol control of standard devices and nonstandard devices
US5768119A (en) 1996-04-12 1998-06-16 Fisher-Rosemount Systems, Inc. Process control system including alarm priority adjustment
US5801942A (en) 1996-04-12 1998-09-01 Fisher-Rosemount Systems, Inc. Process control system user interface including selection of multiple control languages
US5727128A (en) * 1996-05-08 1998-03-10 Fisher-Rosemount Systems, Inc. System and method for automatically determining a set of variables for use in creating a process model
US5960441A (en) 1996-09-24 1999-09-28 Honeywell Inc. Systems and methods for providing dynamic data referencing in a generic data exchange environment
DE19737658C2 (de) * 1996-10-18 1999-10-14 Nat Semiconductor Corp Befehlsdecoder für einen Mikroprozessor
ATE264519T1 (de) * 1997-02-21 2004-04-15 Cit Alcatel Verfahren zur erzeugung eines rechnerprogrammes
US5950006A (en) * 1997-11-05 1999-09-07 Control Technology Corporation Object-oriented programmable controller
DE19838469B4 (de) * 1998-08-25 2007-10-18 Abb Research Ltd. Prozeßsteuer- und Regelsystem mit verteilter Verarbeitung
US7257523B1 (en) * 1999-05-06 2007-08-14 Fisher-Rosemount Systems, Inc. Integrated distributed process control system functionality on a single computer

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11134010A (ja) * 1997-10-27 1999-05-21 Honda Motor Co Ltd プログラマブルコントローラにおけるプログラム実行方法

Also Published As

Publication number Publication date
GB2348020A (en) 2000-09-20
GB0001437D0 (en) 2000-03-08
US6385496B1 (en) 2002-05-07
DE10011661A1 (de) 2000-09-14
GB2348020B (en) 2003-12-24
DE10011661B4 (de) 2011-09-15
JP2000311004A (ja) 2000-11-07

Similar Documents

Publication Publication Date Title
JP4707792B2 (ja) プロセス制御ルーチンに於ける間接参照
US6522934B1 (en) Dynamic unit selection in a process control system
JP7004261B2 (ja) 製品レシピを生成する方法
US8761196B2 (en) Flexible input/output devices for use in process control systems
US6195591B1 (en) Process control system using a process control strategy distributed among multiple control elements
JP4576159B2 (ja) 独立バッチ実行プロセスを有するバッチ実行エンジン
US6098116A (en) Process control system including a method and apparatus for automatically sensing the connection of devices to a network
JP6537796B2 (ja) プロセス制御システムに関連する情報にアクセスする機器および方法
USRE40817E1 (en) Process control system including automatic sensing and automatic configuration of devices
US7561930B2 (en) Dynamic modifier function blocks for use in a process control system
US5862052A (en) Process control system using a control strategy implemented in a layered hierarchy of control modules
US5995916A (en) Process control system for monitoring and displaying diagnostic information of multiple distributed devices
US8185871B2 (en) System for configuring a process control environment
US6032208A (en) Process control system for versatile control of multiple process devices of various device types
CZ20011336A3 (cs) Řízení procesů
JP5155509B2 (ja) バッチプロセス制御システムに於けるオペレータロックアウト
GB2480398A (en) Dynamic modifier function blocks for use in a process control system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091224

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100329

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100713

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101013

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110316

R150 Certificate of patent or registration of utility model

Ref document number: 4707792

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term