(57)【要約】【課題】電子記述言語（ＥＤＬ）スクリプトを使用してプロセス制御システムを構成する例示的な方法および装置を提供する。【解決手段】開示される例示的な方法は、プロセスプラントを表す第１のスクリプトをロードするステップであって、該第１のスクリプトは電子記述言語に従って構造化されたインタープリティブシステムレベルスクリプトを含むステップと、該第１のスクリプトをコンパイルして第２のスクリプトを形成するステップであって、該第２のスクリプトは該プロセスプラントのための特定のプロセス制御システムに関連するベンダー固有の構成言語に従って構造化されるステップと、を含む。【選択図】図１
2010191964.tif 000002
【特許請求の範囲】
【請求項１】
プロセスプラントを表す第１のスクリプトをロードするステップであって、前記第１のスクリプトは電子記述言語に従い構造化されたインタープリティブシステムレベルスクリプトを含むステップと、
前記第１のスクリプトをコンパイルして第２のスクリプトを形成するステップであって、前記第２のスクリプトは前記プロセスプラントのための特定のプロセス制御システムに関連するベンダー固有の構成言語に従って構造化されるステップと、を含む方法。
【請求項２】
前記第１のスクリプトは、前記プロセスプラントまたは第２のプロセスプラントのうちの少なくとも１つのための第２のプロセス制御システムに関連する第２のベンダー固有の構成言語に従って構造化された第３のスクリプトを形成するようにコンパイル可能である、請求項１に記載の方法。
【請求項３】
前記第１のスクリプトをコンパイルして前記第２のスクリプトを形成するステップは、
前記第１のスクリプトに含まれる１つ以上の語彙素を識別するステップと、
前記１つ以上の語彙素に基づいて前記第１のスクリプトに含まれるトークンを識別するステップと、
前記トークン間の１つ以上の文法的関係を識別するステップと、
前記トークンおよび前記文法的関係に基づいて前記第２のスクリプトを形成するステップと、を含む、請求項１に記載の方法。
【請求項４】
前記第１のスクリプトは、拡張可能なマーク付け言語に従い構築される、請求項１に記載の方法。
【請求項５】
前記第１のスクリプトは、前記プロセス制御システムの第１のデバイスと前記プロセス制御システムの第２のデバイスとの間の関係を表す、請求項１に記載の方法。
【請求項６】
前記第１のデバイスはフィールドデバイスを備え、前記第２のデバイスは制御システムコンポーネントを備える、請求項５に記載の方法。
【請求項７】
前記第２のスクリプトを前記プロセス制御システムに関連するプロセス制御システム構成データベースにインポートするステップをさらに含む、請求項１に記載の方法。
【請求項８】
前記第２のスクリプトに基づいてプロセス制御システム操作データベースを生成するステップと、
前記操作データベースに基づいて前記プロセス制御システムを構成するステップと、をさらに含む、請求項１に記載の方法。
【請求項９】
プロセスプラントを表す第１のスクリプトの作成に使用可能なエディタであって、前記第１のスクリプトは電子記述言語に従い構造化された解釈可能なシステムレベルスクリプトを含むエディタと、
前記第１のスクリプトから第２のスクリプトを形成するコンパイラであって、前記第２のスクリプトは前記プロセスプラントのための特定のプロセス制御システムに関連するベンダー固有の構成言語に従って構造化されるコンパイラと、を備える装置。
【請求項１０】
前記第１のスクリプトは、コンパイルされて第３のスクリプトを形成し、前記第３のスクリプトは、前記プロセスプラントまたは第２のプロセスプラントのうちの少なくとも１つのための第２のプロセス制御システムに関連する第２の構成言語に従って構造化される、請求項９に記載の装置。
【請求項１１】
前記コンパイラは、
前記第１のスクリプトに含まれる１つ以上の語彙素を識別するスキャナと、
前記１つ以上の語彙素に基づいて前記第１のスクリプトに含まれるトークンを識別するトークナイザと、
前記トークン間の１つ以上の文法的関係を識別するパーサと、
前記トークンおよび前記文法的関係に基づいて前記第２のスクリプトを形成するインタプリタと、をさらに含む、請求項９に記載の装置。
【請求項１２】
前記第１のスクリプトは、拡張可能なマーク付け言語に従い構築される、請求項９に記載の装置。
【請求項１３】
前記第１のスクリプトは、前記プロセス制御システムの第１のデバイスと前記プロセス制御システムの第２のデバイスとの間の関係を表す、請求項９に記載の方法。
【請求項１４】
前記第２のスクリプトに基づいてプロセス制御システム構成データベースへの投入を行うデータベースポピュレータと、
前記プロセス制御システム構成データベースに基づいて前記プロセス制御システムを構成するデータベースサーバと、をさらに備える、請求項９に記載の装置。
【請求項１５】
機械が読み取り可能な命令を格納する製造品であって、前記機械が読み取り可能な命令は、実行されると、機械に、
プロセスプラントを表す第１のスクリプトであって、電子記述言語に従い構造化されたインタープリティブシステムレベルスクリプトを含む前記第１のスクリプトをロードさせ、
前記第１のスクリプトをコンパイルして第２のスクリプトを形成させ、前記第２のスクリプトは前記プロセスプラントのための特定のプロセス制御システムに関連するベンダー固有の構成言語に従って構造化される、製造品。
【請求項１６】
前記機械が読み取り可能な命令は、実行されると、前記機械に、前記第１のスクリプトをコンパイルさせて、前記プロセスプラントまたは第２のプロセスプラントのうちの少なくとも１つのための第２のプロセス制御システムに関連する第２のベンダー固有の構成言語に従って構造化された第３のスクリプトを形成する、請求項１５に記載の製造品。
【請求項１７】
前記機械が読み取り可能な命令は、実行されると、前記機械に、
前記第１のスクリプトに含まれる１つ以上の語彙素を特定することと、
前記１つ以上の語彙素に基づいて前記第１のスクリプトに含まれるトークンを識別することと、
前記トークン間の１つ以上の文法的関係を識別することと、
前記トークンおよび前記文法的関係に基づいて前記第２のスクリプトを形成することと、によって前記第１のスクリプトをコンパイルして前記第２のスクリプトを形成させる、請求項１５に記載の製造品。
【請求項１８】
前記第１のスクリプトは、前記プロセス制御システムのフィールドデバイスと前記プロセス制御システムの制御システムコンポーネントとの間の関係を表す、請求項１５に記載の製造品。
【請求項１９】
前記機械が読み取り可能な命令は、実行されると、前記機械に、前記第２のスクリプトを前記プロセス制御システムに関連するプロセス制御システム構成データベースにインポートさせる、請求項１５に記載の製造品。
【請求項２０】
前記機械が読み取り可能な命令は、実行されると、前記機械に、
前記第２のスクリプトに基づいてプロセス制御システム操作データベースを生成させ、
前記操作データベースに基づいて前記プロセス制御システムを構成させる、請求項１５に記載の製造品。
【請求項２１】
エディタを使用してプロセスプラントを表す第１のスクリプトを形成するステップであって、前記第１のスクリプトは電子記述言語に従い構造化されたインタープリティブシステムレベルスクリプトを含む、ステップと、
前記第１のスクリプトから第２のスクリプトを生成するステップであって、前記第２のスクリプトは特定のプロセス制御システムの構成言語に従って構造化される、ステップと、
前記第２のスクリプトに基づいて、前記プロセスプラントのための前記プロセス制御システムを構成するステップと、を含む方法。
【請求項２２】
エディタを使用して、前記プロセスプラントを表す拡張可能なマーク付け言語（ＸＭＬ）ベースのスキーマを形成するステップをさらに含む、請求項２１に記載の方法。
【請求項２３】
前記第１のスクリプトは、前記プロセス制御システムの第１のデバイスと前記プロセス制御システムの第２のデバイスとの間の関係を表す、請求項２１に記載の方法。
【請求項２４】
前記第１のデバイスは、フィールドデバイスを備え、前記第２のデバイスは、制御システムコンポーネントを備える、請求項２３に記載の方法。
【請求項２５】
前記第１のスクリプトは、拡張可能なマーク付け言語（ＸＭＬ）に従い作成される、請求項２１に記載の方法。
【請求項２６】
データベースインポートインターフェースにアクセスして、前記第２のスクリプトをプロセス制御システム構成データベースにインポートするステップをさらに含み、前記プロセス制御システムは前記プロセス制御システム構成データベースに基づいて構成される、請求項２１に記載の方法。
【請求項２７】
前記第２のスクリプトに基づいて前記プロセス制御システムを構成するステップは、
前記第２のスクリプトを変換して、制御システム操作データベースを形成するステップと、
前記制御システム操作データベースに基づいて前記プロセス制御システムを構成するステップと、をさらに含む、請求項２１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、プロセス制御システムに関し、より具体的には、電子記述言語（ＥＤＬ）スクリプトを使用してプロセス制御システムを構成する方法および装置に関する。
【背景技術】
【０００２】
電子デバイス記述言語（ＥＤＤＬ）は、ホストプロセス制御システムの制御コンポーネントによるフィールドデバイスの解釈、制御および／または管理を容易にするために、プロセスプラントのフィールドデバイスを記述および規定する構造化および標準化された形式を提供するために使用されている。したがって、ＥＤＤＬは、典型的に、フィールドデバイスに関連するデータのパラメータ化および視覚化するための標準化されたインターフェースを組み込む。最近になって、ＥＤＤＬはフィールドデバイスデータを表す高度なディスプレイおよび／またはグラフィックを記述および／または規定するように強化されている。
【発明の概要】
【課題を解決するための手段】
【０００３】
開示される例示的な方法は、プロセスプラントを表す第１のスクリプトをロードするステップであって、第１のスクリプトは電子記述言語に従って構造化されたインタープリティティブなシステムレベルスクリプトを含む、ステップと、第１のスクリプトをコンパイルして第２のスクリプトを形成するステップであって、第２のスクリプトはプロセスプラントのための特定のプロセス制御システムに関連するベンダー固有の構成言語に従って構造化される、ステップと、を含む。
【０００４】
開示される例示的な装置は、プロセスプラントを表す第１のスクリプトの作成に使用可能なエディタであって、第１のスクリプトは電子記述言語に従って構造化された解釈可能なシステムレベルのスクリプトを含む、エディタと、第１のスクリプトから第２のスクリプトを形成するコンパイラであって、第２のスクリプトはプロセスプラントのための特定のプロセス制御システムに関連するベンダー固有の構成言語に従って構造化される、コンパイラと、を含む。
【０００５】
開示される別の例示的な方法は、エディタを利用してプロセスプラントを表す第１のスクリプトを形成するステップであって、第１のスクリプトは電子記述言語に従って構造化されたインタープリティティブなシステムレベルスクリプトを含む、ステップと、第１のスクリプトから第２のスクリプトを生成するステップであって、第２のスクリプトは特定のプロセス制御システムのための構成言語に従って構造化される、ステップと、第２のスクリプトに基づいてプロセスプラントのためのプロセス制御システムを構成するステップと、を含む。
【図面の簡単な説明】
【０００６】
【図１】本開示の教示に従って作成される例示的なプロセス制御システムの模式図である。
【図２】図１の例示的なプロセスプラント構成システムを実現する例示的な方式を示す。
【図３】図２の例示的なコンパイラを実現する例示的な方式を示す。
【図４】図１の例示的なプロセス制御システムをグラフに表すために使用され得る例示的なスキーマを示す。
【図５】図４の例示的なスキーマを表すために使用され得る例示的なシステムレベルのＥＤＬスクリプトを表す。
【図６】プロセス制御システムのためのスキーマを形成するために使用され得る例示的なスキーマ要素を示す。
【図７】プロセス制御システムのためのスキーマを形成するために使用され得る例示的なスキーマ要素を示す。
【図８】プロセス制御システムのためのスキーマを形成するために使用され得る例示的なスキーマ要素を示す。
【図９】プロセス制御システムのためのスキーマを形成するために使用され得る例示的なスキーマ要素を示す。
【図１０】図８および９の例示的なスキーマ要素から作成された例示的なシステムレベルのＥＤＬスクリプトを示す。
【図１１】システムレベルのＥＤＬスクリプトに基づいて、図１の例示的なプロセス制御システムを構成するために使用され得る例示的なプロセスを表すフローチャートである。
【図１２】システムレベルのＥＤＬスクリプトをプロセス制御システム固有の構成スクリプトに変換するために使用され得る例示的なプロセスを表すフローチャートである。
【図１３】図１１および／または１２の例示的なプロセスを実現するために、および／またはより一般的には、図１および２の例示的なプロセスプラント構成システムを実現するために、使用され得る例示的なプロセッサプラットフォームの模式図である。
【発明を実施するための形態】
【０００７】
一般的に、本明細書に説明される例示的な装置、方法、および製造品は、電子記述言語（ＥＤＬ）スクリプトおよび／またはインタープリティティブなシステムレベルスクリプトを用いて、プロセスプラント制御システムの全てまたは任意の部分を定義、記述、および／または別様に規定するために使用することができる。拡張可能なマーク付け言語（ＸＭＬ）に従って構築されるような一部のＥＤＬスクリプト言語においては、このようなＥＤＬスクリプトもスキーマと呼ばれる。これまで、電子デバイス記述言語（ＥＤＤＬ）およびＥＤＬスクリプトは、プロセス制御システムのフィールドデバイスを定義、記述および／または別様に規定するためだけに使用された。対照的に、本明細書に説明される例示的なＥＤＬスクリプトは、プロセス制御システムの任意の数および／またはタイプの追加および／または代替の制御および／または非制御コンポーネントを定義、記述および／または別様に規定するために使用可能である。さらに、例示的なＥＤＬスクリプトは、プロセス制御システムのいずれか、または全てのコンポーネント間の任意の数および／またはタイプの相互接続を定義、記述および／または規定するために使用可能である。したがって、一部の実施例においては、単一のスキーマがプロセス制御システムの全体を定義するために使用され得る。ＥＤＬスクリプトを用いてこれまでに定義されていないプロセス制御システムの例示的なコンポーネントは、コントローラ、操作ワークステーション、入力／出力（Ｉ／Ｏ）カード、ルータ、スイッチ、ハブ、ファイアウォール、電源装置、および／またはＩ／Ｏゲートウェイを含むがこれらに限定されない。
【０００８】
本明細書に説明される例示的なＥＤＬスクリプトは、いかなるプロセス制御システムベンダーによって製造、提供および／または実装されるプロセス制御システムのコンポーネントをもサポートするために構築される。したがって、図３を参照しながら以下に詳細を説明するように、このようなＥＤＬスクリプトは、次に、コンパイル、翻訳、解釈、および／または別様に処理され得、１つ以上のベンダー固有および／またはシステム固有のスクリプトを形成し、その後、任意の数の特定のコンポーネントベンダーから特定のプロセス制御システムコンポーネントを構成するためにロードおよび／または別様に使用することができる。したがって、このようなベンダーおよび／またはシステム固有のスクリプトは、一般的に、ベンダー固有の構成言語に従って構造化される。
【０００９】
図１は、例示的なプロセス制御システム１００の模式図である。簡潔性および明確性を目的として、以下の開示では全て、図１の例示的なプロセス制御システム１００を参照する。しかしながら、ＥＤＬスクリプトに基づいてプロセス制御システムを定義、規定、記述および／または構成するために本明細書に説明される方法および装置は、他のプロセス制御システムに適用可能である。図１の例示的なプロセス制御システム１００は、１つ以上のプロセスコントローラ（そのうちの１つを参照番号１１０で示す）、１つ以上の操作ステーション（そのうちの１つを参照番号１１５で示す）および１つ以上のワークステーション（そのうちの１つを参照番号１２０で示す）を含む。例示的なプロセスコントローラ１１０、例示的な操作ステーション１１５およびワークステーション１２０は、バスおよび／またはローカルエリアネットワーク（ＬＡＮ）１２５を用いて通信可能に結合され、これは、一般的に、アプリケーション制御ネットワーク（ＡＣＮ）と呼ばれる。
【００１０】
図１の例示的な操作ステーション１１５によって、プロセスプラントの操作者は、プロセスプラントの可変値を見ること、プロセスプラントの状況を見ること、プロセスプラントの状態を見ること、プロセスプラントの警告を見ること、および／またはプロセスプラントの設定を変更すること（例えば、ポイントおよび／または操作状況を設定、警告をクリア、警告を消音する等）をプロセスプラントの操作者に可能にする、１つ以上の操作ディスプレイ画面および／またはアプリケーションを確認および／または操作することが可能になる。このような画面および／またはアプリケーションは、典型的に、プロセス構成技術者によって設計および／または実装される。
【００１１】
図１の例示的なワークステーション１２０は、１つ以上の情報技術アプリケーション、ユーザ対話式アプリケーションおよび／または通信アプリケーションを実行するアプリケーションステーションとして構成され得る。例えば、ワークステーション１２０は、プロセス制御関連のアプリケーションを主に実行するように構成され得、一方で、別のアプリケーションステーション（図示せず）は、プロセス制御システム１００が任意の望ましい通信媒体（例えば、無線、有線等）およびプロトコル（例えば、ＨＴＴＰ、ＳＯＡＰ等）を使用して他のデバイスまたはシステムと通信することを可能にする通信アプリケーションを主に実行するように構成され得る。図１の例示的な操作ステーション１１５および例示的なワークステーション１２０は、１つ以上のワークステーションおよび／または他の任意の適切なコンピュータシステムおよび／またはプロセス実行システムを使用して実現することができる。操作ステーション１１５および／またはワークステーション１２０は、例えば、シングルプロセッサのパーソナルコンピュータ、シングルまたはマルチプロセッサのワークステーション等を使用して実現され得る。
【００１２】
図１の例示的なＬＡＮ１２５は、任意の所望の通信媒体およびプロトコルを使用して実現することができる。例えば、ＬＡＮ１２５は、有線および／または無線のイーサネット（登録商標）通信スキームに基づき得る。しかしながら、当業者には容易に理解されるように、他の任意の適切な通信媒体および／またはプロトコルを使用することができる。さらに、図１には単一のＬＡＮ１２５が示されているが、図１の例示的なシステム１００内に冗長の通信経路を提供するために、２つ以上のＬＡＮおよび／または他の代替の通信ハードウェアが使用され得る。
【００１３】
図１の例示的なコントローラ１１０は、デジタルデータバス１３５および入力／出力（Ｉ／Ｏ）ゲートウェイ１４０を介して、複数のスマートフィールドデバイス１３０、１３１および１３２に結合される。スマートフィールドデバイス１３０〜１３２は、フィールドバス準拠のバルブ、アクチュエータ、センサ等であり得、この場合、スマートフィールドデバイス１３０〜１３２は、周知のＦｏｕｎｄａｔｉｏｎフィールドバスプロトコルを使用してデジタルバス１３５を経由して通信する。当然のことながら、他のタイプのスマートフィールドデバイスおよび通信プロトコルも代わりに使用することが可能である。例えば、スマートフィールドデバイス１３０〜１３２は、代わりに、周知のＰｒｏｆｉｔｂｕｓおよびＨＡＲＴ通信プロトコルを使用してデータバス１３５を経由して通信するＰｒｏｆｉｔｂｕｓおよび／またはＨＡＲＴ準拠のデバイスであり得る。Ｉ／Ｏゲートウェイ１４０とは異なる、類似および／または同一である追加のＩ／Ｏデバイスを、コントローラ１１０に結合し、Ｆｏｕｎｄａｔｉｏｎフィールドバスデバイス、ＨＡＲＤデバイス等の追加のスマートフィールド群がコントローラ１１０と通信することを可能にすることができる。
【００１４】
例示的なスマートフィールドデバイス１３０〜１３２に加えて、１つ以上の非スマートフィールドデバイス１３３および１３４が例示的なコントローラ１１０に通信可能に結合され得る。図１の例示的な非スマートフィールドデバイス１３３および１３４は、例えば、それぞれのリンクを経由してコントローラ１１０と通信する従来の４〜２０ミリアンペア（ｍＡ）または０〜１０ボルトの直流（ＶＤＣ）デバイスであり得る。
【００１５】
図１の例示的なコントローラ１１０は、例えば、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  ＭａｎａｇｅｍｅｎｔのＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．から販売されているＤｅｌｔａＶ（登録商標）コントローラであり得る。しかしながら、代わりに他の任意のコントローラを使用することができる。さらに、図１には１台のコントローラ１１０だけしか示されていないが、任意の所望のタイプおよび／またはタイプの組み合わせの追加のコントローラおよび／またはプロセス制御プラットフォームがＬＡＮ１２５に結合され得る。いずれにしろ、例示的なコントローラ１１０は、操作ステーション１１５を使用してシステム技術者および／または他のシステム操作者により生成され、コントローラ１００にダウンロードおよび／またはインスタンス化された、プロセス制御システム１００に関連する１つ以上のプロセス制御ルーチンを実行する。
【００１６】
例示的なプロセス制御システム１００（例えば、例示的なコントローラ１１０、例示的な操作ステーション１１５、例示的なワークステーション１２０、例示的なＩ／Ｏゲートウェイ１４０および／または例示的なフィールドデバイス１３０〜１３４）の制御コンポーネントを１つ以上のＥＤＬスクリプトに基づいて構成するために、図１の例示的なプロセス制御システム１００は、プロセス制御システム構成システム１５０を含む。図２を参照しながら以下に説明するように、図１の例示的なプロセス制御システム構成システム１５０は、ベンダーおよび／またはシステムに固有ではない様式で、プロセス制御システム１００の全てを表すことが可能なＥＤＬおよび／または解釈的スクリプトおよび／またはスキーマを作成することをユーザに可能にするエディタ２１０（図２）と、ＥＤＬスクリプトおよび／またはスキーマに基づいて、ベンダーおよび／またはシステム固有の構成および／または操作データベースを生成するコンパイラ２２０とを含む。ベンダー固有の構成および／または操作データベースは、１つ以上のベンダー固有のスクリプト、情報および／またはデータを含み、これは、例示的なプロセス制御システム１００の固有の型式およびモデルを実際に構成するために使用され得、および／またはベンダー固有の構成言語に従って構造化される。
【００１７】
図１は、例示的なプロセス制御システムを示し、この中で、以下に詳細が説明されるＥＤＬスクリプトを用いて、プロセスプラント制御システムの全てまたは任意の部分を定義、記述および／または別様に規定する例示的な装置、方法および製造品が有利に採用され得るが、当業者は本明細書に説明される装置、方法および製造品は、所望の場合、図１に示された実施例よりも複雑または簡単な（例えば、２台以上のコントローラを有する、２箇所以上の場所に及ぶ等）他のプロセスプラントおよび／またはプロセス制御システムに有利に採用されてよいことを容易に理解するであろう。さらに、図示を明確化するために図１には示されていないが、プロセスプラントおよび／またはプロセス制御システムには、任意の数および／またはタイプの追加および／または代替のデバイス、コンポーネントおよびシステムが含まれ得る。例えば、プロセスプラントおよび／またはプロセス制御システムは、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  ＭａｎａｇｅｍｅｎｔのＦｉｓｈｅｒ−Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．により販売されているＤｅｌｔａＶプロセス制御システム等、プロセス制御システムにより管理および／または制御可能なファイアウォール、スイッチ、ルータ、ハブ、電源装置、および／または他のデバイスを含み得る。
【００１８】
図２は、図１の例示的なプロセス制御システムの構成システム１５０を実現する例示的な方式を示す。ユーザが図１の例示的システム１００等、プロセス制御システムを表すＥＤＬスクリプトおよび／またはスキーマ２０５を作成することを可能にするために、図２の例示的な構成システムは、任意の数および／またはタイプのＥＤＬエディタ（そのうちの１つが参照番号２１０で示される）と、ＥＤＬライブラリ２１５とを含む。図１の例示的なプロセス制御システム１００を表すために使用することができる例示的なスキーマおよびＥＤＬスクリプト２０５は、以下でそれぞれ図４および５を参照しながら説明される。図１の例示的なＥＤＬライブラリ２１５は、例示的なＥＤＬスクリプト２０５を作成するために選択および／または使用することができる、任意の数およびタイプのプロセス制御システムコンポーネントおよび／またはプロセス制御システムを相互接続するための複数のＥＤＬベーススキーマおよび／または記述を含む。例示的なＥＤＬライブラリ２１５に含まれ得る、一部の例示的なプロセス制御システムコンポーネント用の例示的なスキーマが、以下の図５〜９に示される。図８および９の例示的なスキーマ要素から作成され得る、別の例示的なＥＤＬスクリプト２０５の一部が、図１０に示される。
【００１９】
例示的なＥＤＬエディタ２１０は、ＸＭＬベースのスキーマおよび／またはＥＤＬスクリプト２０５を作成、変更、表示および／または編集するために構成することができ、例えば、Ａｌｔｏｖａ（登録商標）のＸＭＬＳｐｙ（登録商標）を使用して実現され得る。しかしながら、代わりに任意のＥＤＬエディタ２１０を使用することができる。例示的なＥＤＬエディタ２１０の１つ以上のユーザインターフェースおよび／またはメニューを使用して、ユーザは、図２の例示的なＥＤＬエディタ２１０と対話して例示的なＥＤＬスクリプト２０５を作成する。例えば、ユーザは、ＥＤＬエディタ２１０と対話して、ＥＤＬライブラリ２１５からスキーマ要素を選択、接続および／または構成し、図１の例示的なプロセス制御システム１００のベンダーおよび／またはシステムに依存しない表現（つまりスキーマ）を形成し得る。
【００２０】
例示的なＥＤＬスクリプト２０５をコンパイルするために、図２の例示的なプロセス制御システム構成システム１５０は、例示的なコンパイラ２２０を含む。図２の例示的なコンパイラ２２０は、ベンダーに固有ではないＥＤＬスクリプト２０５に基づいて、ベンダー固有の制御システム構成スクリプト、ファイルおよび／またはデータ２２５を生成および／または形成する。例示的なコンパイラ２２０は、ＥＤＬスクリプト２０５をコンパイル、翻訳および／または別様に処理することによって、ベンダー固有情報２２５を生成することができる。図２の例示的なコンパイラ２２０を実現する例示的な方式は、図３を参照しながら以下に説明する。
【００２１】
システム固有の構成情報２２５を形成する間、図２の例示的なコンパイラ２２０は、デバイス固有の情報および／またはデータを取得するためにデバイスデータ２３０にアクセスおよび／またはクエリし得る。図２の例示的なデバイスデータベース２３０は、特定の制御システムコンポーネントにより実現されるインターフェースおよび／または方法に関する情報を含む。例えば、ＥＤＬスクリプト２０５は、汎用Ｉ／Ｏゲートウェイへの参照を含み得る。その汎用Ｉ／Ｏゲートウェイ参照が例示的なコンパイラ２２０により処理される際、コンパイラ２２０は、デバイスデータベース２３０から、例示的なプロセス制御システム１００が有するＩ／Ｏゲートウェイ１４０の型式およびモデルに固有のデータおよび／または情報を取得し、このようなデータおよび／または情報をシステム固有の構成スクリプト２２５に含める、および／または組み入れる。
【００２２】
図２に示されるように、例示的なデバイスデータベース２３０は、ベンダー固有の構成システム２４０に関連して実現される。図２の例示的なシステム固有の構成システム２４０は、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  ＭａｎａｇｅｍｅｎｔのＦｉｓｈｅｒ‐Ｒｏｓｅｍｏｕｎｔ  Ｓｙｓｔｅｍｓ，Ｉｎｃ．により販売されているＤｅｌｔａＶプロセス制御システムの一部である。例示的なプロセス制御システム構成スクリプトおよび／または情報２２５のインポートを可能にするために、図２の例示的なＤｅｌｔａＶ構成システム２４０は、インポートおよび／またはデータベース入力投入モジュール２５０を有するデータベースサーバ２４５を含む。図２の例示的なインポートモジュール２５０は、例示的なシステム固有のスクリプト２２５からデータ、ファイルおよび／または他の構成情報をインポートし、インポートしたデータ、ファイルおよび／または構成情報をＤｅｌｔａＶ構成データベース２５５に格納する。例えば、１つ以上の構成ツール２６０を用いて設定されるように、図２の例示的なデータベースサーバ２４５は、ＤｅｌｔａＶ構成データベース２５５に格納されたデータ、ファイルおよび／または他の構成情報に基づいて、および／またはこれらから、ＤｅｌｔａＶ操作データベース２６５を作成する。プロセス制御システム１００の実際の（つまり、物理的）プロセス制御コンポーネントは、このように形成された例示的ＤｅｌｔａＶ操作データベース２６５に基づいて、ロード、構成および／またはプログラムされる。図２の例示的なシステム固有の構成スクリプト２２５は例示的なコンパイラ２２０により生成されるが、システム固有の構成スクリプト２２５のいかなる部分も、これに加えて、または代替として、例えば、ＤｅｌｔａＶプロセス制御システムの他のツールおよび／またはインターフェースを使用して生成することができる。
【００２３】
図１の例示的なプロセス制御システム構成システム１５０を実現する例示的な方式が図２に示されているが、図２に示されたインターフェース、データ構造、要素、プロセスおよび／またはデバイスのうちの１つ以上は、他の任意の様式で組み合わせ、分割、再配置、省略、排除および／または実現され得る。例えば、構成システム２４０は、他のベンダーからの任意の数の追加および／または代替のプロセス制御システムに固有の構成システムモジュールを含み得る。さらに、図２の例示的なＥＤＬエディタ２１０、例示的なＥＤＬスクリプト２０５、例示的なＥＤＬライブラリ２１５、例示的なコンパイラ２２０、例示的なシステム固有のスクリプト２２５、例示的なデバイスデータベース２３０、例示的なＤｅｌｔａＶ構成システム２４０、例示的なデータベースサーバ２４５、例示的なインポートモジュール２５０、例示的なＤｅｌｔａＶ構成データベース、例示的な構成ツール２６０、例示的なＤｅｌｔａＶ操作データベース２６５および／または、より一般的には、例示的なプロセス制御システム構成システム１５０は、ハードウェア、ソフトウェア、ファームウェア、および／またはハードウェア、ソフトウェアおよび／またはファームウェアの任意の組み合わせにより実現され得る。したがって、例えば、例示的なＥＤＬエディタ２１０、例示的なＥＤＬスクリプト２０５、例示的なＥＤＬライブラリ２１５、例示的なコンパイラ２２０、例示的なシステム固有のスクリプト２２５、例示的なデバイスデータベース２３０、例示的なＤｅｌｔａＶ構成システム２４０、例示的なデータベースサーバ２４５、例示的なインポートモジュール２５０、例示的なＤｅｌｔａＶ構成データベース、例示的な構成ツール２６０、例示的なＤｅｌｔａＶ操作データベース２６５および／または、より一般的には、例示的なプロセス制御システム構成システム１５０は、いずれも、１つ以上の回路、プログラム可能プロセッサ、アプリケーション固有の集積回路（ＡＳＩＣ）、プログラム可能論理デバイス（ＰＬＤ）および／またはフィールドプログラム可能論理デバイス（ＦＰＬＤ）等により実現され得る。またさらに、プロセス制御システム構成システム１５０は、図２に示されたものの代わりに、またはそれらに加えて、インターフェース、データ構造、要素、プロセスおよび／またはデバイスを含み得、および／または示されたインターフェース、データ構造、要素、プロセスおよび／またはデバイスのうちのいずれかまたは全てのうちの２つ以上を含むことができる。
【００２４】
図３は、図２の例示的なコンパイラ２２０を実現する例示的な方式を示す。ＥＤＬスクリプト２０５内のテキストのカテゴリ分けされたブロック（つまり、トークン）を識別するために、図３の例示的なコンパイラ２２０は、スキャナ３０５とトークナイザ３１０とを含む。任意の数および／またはタイプのアルゴリズム、論理および／または方法を使用して、図３の例示的なスキャナ３０５は、ＥＤＬスクリプト２０５をスキャンおよび／またはパースしてＥＤＬスクリプト２０５内の語彙素を識別、つまり、ＥＤＬスクリプト２０５に含まれる特定のタイプの文字列を識別する。例示的な語彙素は、文字列、数字列、句読点、数学演算子等を含むがこれらに限定されない。任意の数および／またはタイプのアルゴリズム、論理および／または方法を使用して、図３の例示的なトークナイザ３１０は、スキャナ３０５により識別された語彙素を処理して、特定のトークン、つまり、入力文字の分類可能な文字列を識別する。例えば、スキャナ３０５は、例えば、文を表す文字列の語彙素を識別し得、これを、例示的なトークナイザ３１０は１つ以上の単語に区分および／または分割する。トークナイザ３１０により識別された各トークンは、値（例えば、変数の実際の名前）およびタイプ（例えば、変数、演算子、数字等）の両方を有する。
【００２５】
構文分析を実行するために、図３の例示的なコンパイラ２２０はパーサ３１５を含む。任意の数および／またはタイプのアルゴリズム、論理および／または方法を使用して、図３の例示的なパーサ３１５は、例示的なトークナイザ３１０により識別されたトークンを処理および／または分析して、ＥＤＬスクリプト２０５の文法に関する関係を識別および／または決定する。つまり、例示的なパーサ３１５は、ＥＤＬスクリプト２０５内に含まれる表現を識別する。
【００２６】
例示的なパーサ３１５によって識別された表現をベンダーおよび／またはシステム固有の形式に翻訳するために、図３の例示的なコンパイラ２２０は、インタプリタ３２０を含む。任意の数および／またはタイプのアルゴリズム、論理および／または方法を使用して、図３の例示的なインタプリタ３２０は、ＥＤＬスクリプト２０５の識別された表現の各々を、制御システムコンポーネントの特定の型式およびモデル用に対応する動作を表す対応するベンダー固有の表現に翻訳する。例えば、ＥＤＬスクリプト２０５は、汎用温度計の上限閾値を割り当てる表現を含み得る。従って、インタプリタ３２０は、プロセス制御システム１００内に実装された温度計の特定の型式およびモデル用に上限温度を正しく構成する、１つ以上の対応するベンダー固有の表現および／または構成ステートメント２２５を生成する。このような実施例においては、例示的なインタプリタ３２０は、ベンダー固有の構成言語表現を取得して、デバイスデータベース２３０から温度計の型式およびモデルを正しく構成することができる。
【００２７】
図２の例示的なコンパイラ２２０を実現する例示的な方式が図３に示されているが、図３に示されたインターフェース、データ構造、要素、プロセッサおよび／またはデバイスのうちの１つ以上は、他の任意の様式で組み合わせ、分割、再配置、省略、排除および／または実現され得る。さらに、図３の例示的なスキャナ３０５、例示的なトークナイザ３１０、例示的なパーサ３１５、例示的なインタプリタ３２０および／または、より一般的には、例示的なコンパイラ２２０は、ハードウェア、ソフトウェア、ファームウェアおよび／またはハードウェア、ソフトウェアおよび／またはファームウェアの任意の組み合わせにより実現され得る。したがって、例えば、例示的なスキャナ３０５、例示的なトークナイザ３１０、例示的なパーサ３１５、例示的なインタプリタ３２０および／または、より一般的には、例示的なコンパイラ２２０は、いずれも、１つ以上の回路、プログラム可能なプロセッサ、ＡＳＩＣ、ＰＬＤおよび／またはＦＰＬＤ等により実現され得る。またさらに、コンパイラ２２０は、図３に示されたこれらの代わりに、またはこれらに加えて、インターフェース、データ構造、要素、プロセスおよび／またはデバイスを含み得、および／または示されたインターフェース、データ構造、要素、プロセスおよび／またはデバイスのうちのいずれかまたは全てのうちの２つ以上を含み得る。
【００２８】
図４は、図１の例示的なプロセス制御システム１００をグラフに表すために使用され得る、例示的なスキーマ４００を示す。図４に示されるように、例示的なプロセス制御システム１００は、図１の例示的なワークステーション１２０と例示的なプロセスコントローラ１１０を含む。図４の例示的なコントローラ１１０は、特に、名前４０６と記述４０７を含む一連の属性４０５を有する。図４の例示的なコントローラ１１０は、一連の機能４１０も有し、これらは、一連の属性４１５、および任意の数および／またはタイプの追加の属性４２０として定義および／または規定される。例えば、コントローラ１１０は、（ａ）コントローラ１１０が例示的なプロセス制御システム１００の他のコンポーネント（例えば、図１の例示的なフィールドデバイス１３０〜１３４および／または例示的なＩ／Ｏゲートウェイ１４０のうちのいずれか）と通信することを可能にする１つ以上のインターフェースカード４２５、（ｂ）較正、自己診断等の操作の実行を定義および／または許可するコマンド４３０、および／または（ｃ）特殊なプログラム言語の使用を必要とすることなく、第１のレベルのインターフェース構造を実現するために使用され得るメニュー４３５を含み得る。図４の例示的なコマンド４３０は、対応するコンポーネントのメニュー構造４３５にコマンドが自動的に挿入されるように定義され得る。図４の例示的なメニュー４３５は、構成、実行時操作および／または診断等、ユーザが対応する要素の基本的な操作にアクセスすることを可能にするために使用することができる。図４には例示的なプロセス制御システム１００の一部しか表されていないが、当業者は、プロセス制御システムの全てまたはいずれかの部分は、図４に示された方式に類似の方式の模式図を用いて表され得ることを容易に理解するであろう。
【００２９】
図５は図４の例示的なスキーマ４００を表し、これにより、図２の例示的なＥＤＬスクリプト２０５を実現するために使用することができる、例示的なＥＤＬスクリプト５００を表す。図５の例示的なＥＤＬスクリプト５００は、ＸＭＬに従って作成される。図５の例示的なＥＤＬスクリプト５００のプロセス制御システム１００は、対応するＸＭＬ表現を介してコントローラ１１０およびワークステーション１２０を参照する。同様に、コントローラ１１０は、図４の例示的な機能４１０を参照する。図５の例示的なＥＤＬスクリプト５００には、図４の例示的なスキーマ４００の一部しか表されていないが、当業者は、プロセス制御システムスキーマの全てまたはいずれかの部分、つまり、プロセス制御システムは、図５に示した方式に類似の方式でＥＤＬスクリプトに表され得ることを容易に理解するであろう。
【００３０】
図６〜９は、プロセス制御システムを表現および／または定義するために、使用および／または組み合わせ得る、一部の例示的な図表スキーマ要素を示す。図６〜９の例示的なスキーマ要素は、図２の例示的なＥＤＬライブラリ２１５に格納された、および／またはこれからアクセス可能な複数のスキーマに含まれ得る。図６の例示的なスキーマ要素は、コントローラ１１０およびワークステーション１２０を含む、プロセス制御システム１００を表す。図７の例示的なスキーマ要素は、属性４１５、機能４１０、他の属性４２０、カード４２５、コマンド４３０およびメニュー４３５を有するプロセスコントローラ１１０を表す。図４に示した実施例は、図６および７の例示的なスキーマ要素の例示的な組み合わせである。
【００３１】
図８は、例えば、図７の例示的なコントローラスキーマのカード４２５に割り当てられる、および／またはリンクされるインターフェースカード８０５を表現および／または定義するために使用され得る、例示的なスキーマを示す。図９の例示的なスキーマは、例えば、図８の例示的なインターフェースカード８０５のＩ／Ｏチャネル８１０に割り当てられ得る、および／またはリンクされ得るＩ／Ｏチャネル９０５を表現および／または定義する。
【００３２】
図１０は、図８および９の例示的なスキーマ要素の組み合わせを表す例示的なＥＤＬスクリプトの一部を示す。図１０に示した実施例では、図９の例示的なＩ／Ｏチャネル９０５は、直線１００５で示されているように、図８の例示的なインターフェースカード８０５のＩ／Ｏチャネル８１０にリンクされる。
【００３３】
図１１は、ＥＤＬスキーマおよび／またはスクリプトに基づいて例示的なプロセス制御システム１００を構成するために実行され得る、例示的なプロセスを表すフローチャートを示す。図１２は、図２および３の例示的なコンパイラ２２０を実現するために実行され得る、例示的なプロセスを表すフローチャートを示す。図１１および１２の例示的なプロセスは、プロセッサ、コントローラおよび／または任意の他の適切なプロセス実行デバイスにより実行することができる。例えば、図１１および１２の例示的なプロセスは、フラッシュメモリ、コンパクトディスク（ＣＤ）デジタル多用途ディスク（ＤＶＤ）、フロッピー（登録商標）ディスク、読み取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、プログラム可能ＲＯＭ（ＰＲＯＭ）、電子的にプログラム可能なＲＯＭ（ＥＰＲＯＭ）、および／または電子的に消去可能なＰＲＯＭ（ＥＥＰＲＯＭ）、光学式ストレージディスク、光学式ストレージデバイス、磁気ストレージディスク、磁気ストレージデバイス、および／またはプログラムコードを実行または格納するために使用することができ、プロセッサ、汎用目的または特定目的のコンピュータ、または他のプロセッサを備えた機械によりアクセスされ得る他の任意の媒体等、任意の有形のコンピュータが読み取り可能な媒体上に格納されるコード化された命令の形態で具体化され得る（例えば、図１３を参照して以下に説明される例示的なプラットフォームＰ１００）。上記の組み合わせも、コンピュータが読み取り可能な媒体の範囲内に含める。機械がアクセス可能な命令は、例えば、プロセッサ、汎用目的のコンピュータ、特定目的のコンピュータ、または特定目的のプロセス実行機械に１つ以上の特定のプロセスを実現させる命令および／またはデータを含む。代替として、図１１および１２の例示的なプロセスの一部または全ては、ＡＳＩＣ、ＰＬＤ、ＦＰＬＤ、個別の論理、ハードウェア、ファームウェア等の任意の組み合わせを使用して実現され得る。また、図１１および１２の例示的なプロセスの一部または全ては、代わりに、手作業で、または、例えば、ファームウェア、ソフトウェア、個別の論理および／またはハードウェアの任意の組み合わせ等、前述の技術のうちの任意の技術の任意の組み合わせとして、実現され得る。さらに、図１１および１２の例示的な操作を実現する他の多数の方法も採用することができる。例えば、ブロックの実行の順序を変更することができ、および／または説明されたブロックのうちの１つ以上は、変更、排除、再分割または組み合わされ得る。これに加えて、図１１および１２の例示的なプロセスのいずれか、または全ては、順次実行されてよく、および／または個々のプロセス実行スレッド、プロセッサ、デバイス、個別の論理、回路等により、並列に実行され得る。
【００３４】
図１１の例示的なプロセスは、例示的なＥＤＬエディタ２１０を使用して、スキーマおよび／またはＥＤＬスクリプト２０５を作成および／または生成することから開始する、その例としては、制御システム１００のための、図４の例示的なスキーマ４００および／または図５の例示的なＥＤＬスクリプト５００が挙げられる（ブロック１１０５）。例示的なコンパイラ２２０は実行および／または操作されて、システムおよび／またはベンダー固有のデータおよび／または構成情報２２５をＥＤＬスクリプト２０５から作成する（ブロック１１１０）。
【００３５】
例示的なインポートおよび／またはデータベース入力投入モジュール２５０を使用して、システムおよび／またはベンダー固有のデータおよび／または構成情報２２５がシステムおよび／またはベンダー固有の構成データベース２５５にインポートされる（ブロック１１１５）。例示的なデータベースサーバ２４５が操作および／または実行されて、構成データベース２５５に基づいて、システムおよび／またはベンダー固有の操作データベース２６５を形成する（ブロック１１２０）。プロセス制御システム１００は、操作データベース２６５から構成、ロード、および／またはプログラムされる（ブロック１１２５）。そして、図１１の例示的なプロセスの制御が終了する。
【００３６】
図１２の例示的なプロセスは、図３の例示的なスキャナ３０５がＥＤＬスクリプトファイル２０５をスキャンして、ＥＤＬスクリプトファイル２０５に含まれる語彙素を識別することから開始する（ブロック１２０５）。例示的なトークナイザ３１０は、識別された語彙素に基づいて、ＥＤＬスクリプトファイル２０５に含まれるトークンを識別する（ブロック１２１０）。
【００３７】
トークナイザ３１０により識別されたトークンに基づいて、図３の例示的なパーサ３１５がトークンを分析して、トークン間の文法的関係を決定する（ブロック１２１５）。例示的なインタプリタ３２０が、識別された文法的関係を、プロセス制御システムコンポーネントの特定の型式および／またはモデルに固有の表現、データおよび／または構成情報２２５に翻訳する（ブロック１２２０）。そして、図１２の例示的なプロセスの制御が終了する。
【００３８】
図１３は、図１、２および３の例示的なプロセス制御システムの構成システム１５０および／または例示的なコンパイラ２２０を実現するために使用および／またはプログラムされ得る、例示的なプロセッサプラットフォームＰ１００の模式図である。例えば、プロセッサプラットフォームＰ１００は、１つ以上の汎用目的プロセッサ、プロセッサコア、マイクロコントローラ等により実現され得る。
【００３９】
図１３の実施例のプロセッサプラットフォームＰ１００は、少なくとも１つの汎用目的のプログラム可能プロセッサＰ１０５を含む。プロセッサＰ１０５は、プロセッサＰ１０５の主メモリに存在する（例えば、ＲＡＭ  Ｐ１１５および／またはＲＯＭ  Ｐ１２０中の）コード化された命令Ｐ１１０および／またはＰ１１２を実行する。プロセッサＰ１０５は、プロセッサコア、プロセッサおよび／またはマイクロコントローラ等任意のタイプのプロセス実行ユニットにすることができる。プロセッサＰ１０５は、特に、本明細書に説明された例示的な方法および装置を実現するために、図１１および／または１２の例示的なプロセスを実行することができる。
【００４０】
プロセッサＰ１０５は、バスＰ１２５を経由して主メモリ（ＲＯＭ  Ｐ１２０および／またはＲＡＭ  Ｐ１１５を含む）と通信する。ＲＡＭ  Ｐ１１５は、動的ランダムアクセスメモリ（ＤＲＡＭ）、同期動的ランダムアクセスメモリ（ＳＤＲＡＭ）、および／または他の任意のタイプのＲＡＭデバイスにより実現され得、ＲＯＭは、フラッシュメモリ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＣＤ、ＤＶＤおよび／または他の任意の所望のタイプのメモリデバイスにより実現され得る。メモリＰ１１５およびメモリＰ１２０へのアクセスは、メモリコントローラ（図示せず）により制御することができる。例示的なメモリＰ１１５は、例示的なＥＤＬスクリプト２０５、例示的なＥＤＬライブラリ２１５、例示的なシステムおよび／またはベンダー固有のスクリプト２２５、例示的なデバイスデータベース２３０、例示的な構成データベース２２５および／または例示的な操作データベース２６５を実現するために使用することができる。
【００４１】
プロセッサプラットフォームＰ１００はインターフェース回路Ｐ１３０も含む。インターフェース回路Ｐ１３０は、外部のメモリインターフェース、シリアルポート、汎用目的の入力／出力等、任意のタイプのインターフェース標準により実現することができる。１つ以上の入力デバイスＰ１３５および１つ以上の出力デバイスＰ１４０は、インターフェース回路Ｐ１３０に接続される。
【００４２】
一定の例示的方法、装置および製造品を本明細書に説明してきたが、本特許の対象範囲はこれらに限定されない。このような実施例は、非限定的な例示的実施例であることを意図する。対照的に、本特許は、逐語的に、または均等論に基づき添付の請求項の範囲内に適正に含まれる全ての方法、装置および製造品を対象とする。
【図１】
2010191964.tif 000003
【図２】
2010191964.tif 000004
【図３】
2010191964.tif 000005
【図４】
2010191964.tif 000006
【図５】
2010191964.tif 000007
【図６】
2010191964.tif 000008
【図７】
2010191964.tif 000009
【図８】
2010191964.tif 000010
【図９】
2010191964.tif 000011
【図１０】
2010191964.tif 000012
【図１１】
2010191964.tif 000013
【図１２】
2010191964.tif 000014
【図１３】
2010191964.tif 000015