(57)【要約】      （修正有）【解決手段】ソース制御オブジェクトは、任意のデータ型、フォーマット、構造、言語等を利用し得る。シャドウイング機器は、シャドウマネージャと、ソース制御オブジェクトの構成／定義及びデータ型を発見するために利用される単純データ型を定義するプリミティブコンポーネントのセットとを含み、かつ発見されたソース制御オブジェクトの署名が格納されるシャドウライブラリを含む。【効果】プロセスプラント内のシャドウイング機器が、事前構成または事前定義なしに、かつ構成ツールの使用なしに、他の機器においてホスト化され、かつシャドウイングされるソース制御オブジェクトを自動的に発見することを可能にする。【選択図】図２
2019032829.tif 000002
【特許請求の範囲】
【請求項１】
プロセスプラント内に含まれるシャドウイング機器であって、
１つ以上のプロセッサと、
前記シャドウイング機器をシャドウイングされた機器に通信可能に接続する１つ以上のインターフェースであって、前記シャドウイング機器及び前記シャドウイングされた機器が、前記プロセスプラント内の工業プロセスをリアルタイムで制御するように動作するプロセス制御システムに含まれる、インターフェースと、
シャドウライブラリを格納する１つ以上の有形メモリと、
前記１つ以上の有形メモリに格納されており、かつ前記１つ以上のプロセッサによって実行されると、前記シャドウイング機器に、
前記シャドウイングされた機器から、前記シャドウイングされた機器内に構成及びダウンロードされているソース機能ブロックの指標を受信することであって、前記シャドウイングされた機器内に構成及びダウンロードされている前記ソース機能ブロックが、インスタンス化されたソース機能ブロックである、受信することと、
前記ソース機能ブロックに対応する署名が前記シャドウライブラリに格納されていない場合、（ｉ）前記ソース機能ブロックの前記受信された指標に基づいて、前記ソース機能ブロックの署名を作成し、（ｉｉ）前記シャドウライブラリに、前記ソース機能ブロックの前記作成された署名を格納し、（ｉｉｉ）前記ソース機能ブロックの前記作成された署名をインスタンス化し、それによって、前記シャドウイング機器において前記ソース機能ブロックのシャドウを生成することと、
前記ソース機能ブロックに対応する署名が前記シャドウライブラリに格納されている場合、（ｉ）前記ソース機能ブロックの前記受信された指標に基づいて、前記ソース機能ブロックと前記ソース機能ブロックに対応する前記格納された署名との間の不一致を判定し、（ｉｉ）前記不一致に基づいて、前記ソース機能ブロックに対応する前記格納された署名を更新し、（ｉｉｉ）前記シャドウライブラリに、前記ソース機能ブロックの前記更新された署名を格納し、（ｉｖ）前記ソース機能ブロックの前記更新された署名をインスタンス化し、それによって、前記シャドウイング機器における前記ソース機能ブロックの前記シャドウを生成することと、を行わせるコンピュータ実行可能命令を含む、シャドウマネージャと、を備え、
前記シャドウイング機器の前記１つ以上のプロセッサが、前記ソース機能ブロックの前記シャドウを用いて、
前記プロセスプラント内の前記工業プロセスの前記リアルタイム制御中、前記シャドウイングされた機器で実行している前記インスタンス化されたソース機能ブロックによって観測された動的データをミラーリングするように、かつ、
前記プロセス制御システムに含まれる１つ以上の他の機器及び／または機能ブロックに、前記ミラーリングされた動的データを提供し、それによって、前記シャドウイング機器によって、前記シャドウイングされた機器で実行されている前記インスタンス化されたソース機能ブロックをシャドウイングするように構成される、シャドウイング機器。
【請求項２】
前記インスタンス化されたソース機能ブロックが、前記シャドウイングされた機器においてインスタンス化された複数の機能ブロックに含まれ、
前記シャドウマネージャがさらに、前記シャドウイング機器に、前記シャドウイングされた機器においてインスタンス化された前記複数の機能ブロックのそれぞれの指標に関して、前記シャドウイングされた機器への問い合わせを行わせ、
前記インスタンス化されたソース機能ブロックの前記指標が、前記問い合わせに対する応答に含まれる、請求項１に記載のシャドウイング機器。
【請求項３】
前記シャドウイングされた機器においてインスタンス化された前記複数の機能ブロックの前記それぞれの指標に関する前記シャドウイングされた機器の前記問い合わせが、前記
シャドウイングされた機器においてインスタンス化された前記複数の機能ブロックの前記それぞれの指標に関する前記シャドウイングされた機器のポーリングを含む、請求項２に記載のシャドウイング機器。
【請求項４】
前記シャドウイングされた機器の前記ポーリングが、前記シャドウイングされた機器の周期的なポーリングを含む、請求項３に記載のシャドウイング機器。
【請求項５】
前記インスタンス化されたソース機能ブロックの前記指標が、前記シャドウイングされた機器内への前記ソース機能ブロックの構成のダウンロード、前記シャドウイングされた機器における前記ソース機能ブロックの前記ダウンロードされた構成のインスタンス化、または前記シャドウイングされた機器における前記インスタンス化されたソース機能ブロックの実行のうちの少なくとも１つのときに、前記シャドウイングされた機器から受信される、請求項１に記載のシャドウイング機器。
【請求項６】
前記シャドウイングされた機器から受信された前記インスタンス化されたソース機能ブロックの前記指標が、前記インスタンス化されたソース機能ブロックが構成されている１つ以上のタイプの動的データの指標を含む、請求項１に記載のシャドウイング機器。
【請求項７】
前記インスタンス化されたソース機能ブロックの前記シャドウが、前記シャドウイングされた機器において、かつ任意に他の機器においてインスタンス化された複数の機能ブロックの複数のシャドウに含まれ、
前記複数の機能ブロックのそれぞれの署名が、前記シャドウライブラリに格納され、
前記シャドウマネージャがさらに、前記シャドウイング機器に、前記シャドウライブラリに格納された前記複数の機能ブロックの前記それぞれの署名を、前記シャドウイングされた機器において、かつ任意に他の機器においてインスタンス化された複数の機能ブロックと同期させる、請求項１に記載のシャドウイング機器。
【請求項８】
前記１つ以上のプロセッサがさらに、前記１つ以上のインターフェースを介して、前記シャドウイング機器と前記シャドウイングされた機器との間の通信の損失を検出するように、かつ前記通信の損失の前記検出に基づいて、アラームまたはアラートのうちの少なくとも１つを生成するように構成される、請求項１に記載のシャドウイング機器。
【請求項９】
前記ソース機能ブロックが、前記シャドウイングされた機器内に制御モジュールとして構成及びダウンロードされた複数の機能ブロックに含まれ、前記ダウンロードされた制御モジュールが、前記シャドウイングされた機器において、インスタンス化されたソース制御モジュール内にインスタンス化され、
前記シャドウマネージャがさらに、前記シャドウイング機器に、
前記ソース制御モジュールに対応する署名が前記シャドウライブラリに格納されていない場合、（ｉ）前記シャドウイングされた機器から受信された前記インスタンス化されたソース制御モジュールの指標に基づいて、前記ソース制御モジュールの署名、前記ソース機能ブロックの前記署名を含む前記ソース制御モジュールの前記署名、及び前記インスタンス化されたソース制御モジュールの他の機能ブロックのそれぞれの署名を作成し、（ｉｉ）前記シャドウライブラリに、前記ソース制御モジュールの前記署名を格納し、（ｉｉｉ）前記ソース制御モジュールの前記作成され格納された署名をインスタンス化し、それによって、前記シャドウイング機器において前記ソース制御モジュールのシャドウを生成することと、
前記ソース制御モジュールに対応する署名が前記シャドウライブラリに格納されている場合、（ｉ）前記シャドウイングされた機器から受信された前記インスタンス化されたソース制御モジュールの前記指標に基づいて、前記ソース制御モジュールと前記ソース制御モジュールに対応する前記格納された署名との間の不一致を判定し、（ｉｉ）前記不一
致に基づいて、前記ソース制御モジュールに対応する前記格納された署名を更新し、（ｉｉｉ）前記シャドウライブラリに、前記ソース制御モジュールの前記更新された署名を格納し、（ｉｖ）前記ソース制御モジュールの前記更新された署名をインスタンス化し、それによって、前記シャドウイング機器における前記ソース制御モジュールの前記シャドウを生成することと、を行わせ、
前記シャドウイング機器の前記１つ以上のプロセッサが、前記ソース制御モジュールの前記シャドウを用いて、（ｉ）前記工業プロセスの前記リアルタイム制御中、前記シャドウイングされた機器で実行している前記インスタンス化されたソース制御モジュールによって観測された動的データをミラーリングするように、かつ（ｉｉ）前記プロセス制御システムに含まれる１つ以上の他の機器及び／または機能ブロックに、前記ミラーリングされた動的データを提供し、それによって、前記シャドウイング機器によって、前記シャドウイングされた機器で実行されている前記インスタンス化されたソース制御モジュールをシャドウイングするように、さらに構成される、請求項１に記載のシャドウイング機器。
【請求項１０】
前記シャドウマネージャがさらに、前記シャドウイング機器に、前記シャドウイング機器に格納された複数の制御モジュールシャドウを、他の機器においてインスタンス化された複数の制御モジュールと同期させ、前記複数の制御モジュールシャドウが、前記ソース制御モジュールの前記シャドウを含み、前記複数のインスタンス化された制御モジュールが、前記インスタンス化されたソース制御モジュールを含み、前記他の機器が、前記シャドウイングされた機器を含む、請求項９に記載のシャドウイング機器。
【請求項１１】
前記シャドウイング機器が、前記プロセスプラント内の前記工業プロセスを制御するようにリアルタイムで動作するプロセスコントローラであり、前記シャドウイングされた機器が、前記プロセスコントローラによって制御されるフィールド機器、前記プロセスコントローラに対応する安全性コントローラもしくは安全性ロジックソルバ、または前記プロセス制御システムで実行する別の制御オブジェクトのうちの１つである、請求項１に記載のシャドウイング機器。
【請求項１２】
前記シャドウイング機器が、前記シャドウイングされた機器と一体であり、かつその中で隔離されたソフトウェアモジュールを備える、請求項１に記載のシャドウイング機器。
【請求項１３】
前記インスタンス化されたソース機能ブロックが、前記プロセスプラントの前記プロセス制御システムで実行する制御モジュールに含まれる、請求項１に記載のシャドウイング機器。
【請求項１４】
前記１つ以上のインターフェースがさらに、前記シャドウイング機器を、前記プロセスプラントの構成データベースに通信可能に接続し、
前記シャドウライブラリが、前記１つ以上のインターフェースを介して前記構成データベースからダウンロードされた制御オブジェクトの署名のセットを格納し、
前記構成データベースからダウンロードされた前記制御オブジェクトの署名のセットが、前記ソース機能ブロックの前記署名を除外する、請求項１に記載のシャドウイング機器。
【請求項１５】
前記シャドウマネージャがさらに、前記シャドウイング機器に、前記ソース機能ブロックと前記ソース機能ブロックの前記格納された署名との間の前記不一致に対する解決を判定するために、前記シャドウイングされた機器に問い合わせさせ、前記シャドウ機能ブロックの前記格納された署名に対する前記更新が、前記問い合わせに対する応答に基づく、請求項１に記載のシャドウイング機器。
【請求項１６】
前記シャドウマネージャが、制御オブジェクトの署名を発見するための発見プロセスを
含み、前記制御オブジェクトが、前記ソース機能ブロックを含み、前記制御オブジェクトの前記署名が、前記ソース機能ブロックの前記署名を含む、請求項１に記載のシャドウイング機器。
【請求項１７】
前記ソース機能ブロックの前記署名が、前記ソース機能ブロックによって利用される第１のデータ型を示し、
前記シャドウライブラリが、複数のデータ型を定義するプリミティブコンポーネントのセットを格納し、
前記発見プロセスが、前記プリミティブコンポーネントのセットを用い、かつ前記ソース機能ブロックの前記受信された指標に基づいて、前記ソース機能ブロックによって利用される前記第１のデータ型を特定するように構成され、
前記シャドウライブラリが、前記複数のデータ型のいずれかシャドウの署名を格納するように構成される、請求項１６に記載のシャドウイング機器。
【請求項１８】
前記複数のデータ型が、１つ以上のデータ構造、１つ以上のデータフォーマット、１つ以上のデータ値、１つ以上のデータ構文、または１つ以上のマークアップ言語のうちの少なくとも１つを含む、請求項１７に記載のシャドウイング機器。
【請求項１９】
前記ソース機能ブロックによって利用される前記第１のデータ型が、複合データ型であり、
前記プリミティブコンポーネントのセットによって定義された前記複数のデータ型が、複数の単純データ型を含み、
前記発見プロセスが、多数の単純データ型を組み合わせるために前記プリミティブコンポーネントのセットを用いることによって、前記ソース機能ブロックによって利用される前記複合データ型を学習するようにさらに構成される、請求項１７に記載のシャドウイング機器。
【請求項２０】
前記発見プロセスが、前記学習された複合データ型を定義する複合コンポーネントを生成し、前記シャドウライブラリに前記複合コンポーネントを格納するように構成される、請求項１９に記載のシャドウイング機器。
【請求項２１】
前記発見プロセスが、前記ソース機能ブロックによって利用されるデータ型を判定するために、前記シャドウイングされた機器に問い合わせするように構成され、前記ソース機能ブロックの前記署名が、前記ソース機能ブロックによって利用され、前記問い合わせに対する応答に示された前記データ型を示す、請求項１６に記載のシャドウイング機器。
【請求項２２】
前記ソース機能ブロックによって利用される特定のデータ型の指標が、前記シャドウイングされた機器から受信された前記インスタンス化されたソース機能ブロックの前記指標とともに含まれ、前記発見プロセスがさらに、前記特定のデータ型に基づいて前記ソース機能ブロックの前記シャドウを特定するように構成される、請求項１６に記載のシャドウイング機器。
【請求項２３】
前記シャドウイング機器が、前記プロセス制御システムのユーザインターフェースでの表示のために、前記シャドウイングされた機器で実行される前記インスタンス化されたソース機能ブロックによって観測された前記ミラーリングされた動的データのうちの少なくともいくつかを提供する、請求項１に記載のシャドウイング機器。
【請求項２４】
プロセスプラント内の機器をシャドウイングするための方法であって、
シャドウイング機器において、シャドウイングされた機器から、前記シャドウイングされた機器内に構成及びダウンロードされているソース機能ブロックの指標を受信すること
であって、前記シャドウイング機器及び前記シャドウイングされた機器が、前記プロセスプラント内の工業プロセスをリアルタイムで制御するように動作するプロセス制御システムに含まれ、前記シャドウイングされた機器内に構成及びダウンロードされている前記ソース機能ブロックが、インスタンス化されたソース機能ブロックである、受信することと、
前記シャドウイング機器によって、前記ソース機能ブロックに対応する署名が前記シャドウイング機器において格納されていないことを判定することと、
前記インスタンス化されたソース機能ブロックに対応する前記署名が前記シャドウイング機器に格納されていないという前記判定に基づいて、前記ソース機能ブロックの前記署名を発見し、前記シャドウイング機器のシャドウライブラリに、前記ソース機能ブロックの前記署名を格納することと、
前記シャドウイング機器において、かつ前記ソース機能ブロックの前記署名を用いることによって、前記工業プロセスのリアルタイム制御中、前記シャドウイングされた機器において前記インスタンス化されたソース機能ブロックによって生成及び／または受信される動的データをミラーリングすることと、
前記シャドウイング機器によって、前記プロセス制御システムに含まれる他の機能ブロック及び／または機器に、前記ミラーリングされた動的データを提供し、それによって、前記シャドウイングされた機器で実行される前記インスタンス化されたソース機能ブロックをシャドウイングすることと、を含む、方法。
【請求項２５】
前記ソース機能ブロックの前記署名を発見することが、
前記ソース機能ブロックによって利用されるデータ型を判定するために、前記シャドウイング機器によって、前記シャドウイングされた機器に問い合わせすることと、
前記問い合わせに対する応答に基づいて、前記ソース機能ブロックの前記署名を生成することであって、前記応答が、前記ソース機能ブロックによって利用される前記データ型を示す、生成することと、を含む、請求項２４に記載の方法。
【請求項２６】
前記シャドウイングされた機器からの前記インスタンス化されたソース機能ブロックの前記指標を受信することとともに、前記ソース機能ブロックによって利用されるデータ型の指標を受信することをさらに含み、
前記ソース機能ブロックの前記署名を発見することが、前記ソース機能ブロックによって利用される前記データ型に基づいて、前記ソース機能ブロックの前記署名を生成することを含む、請求項２４に記載の方法。
【請求項２７】
前記シャドウイング機器が、前記プロセスプラント内の前記工業プロセスを制御するようにリアルタイムで動作するプロセスコントローラに含まれ、前記シャドウイングされた機器が、前記プロセスプラント内の前記リアルタイム工業プロセスを制御するための前記プロセスコントローラによって制御されるフィールド機器、前記プロセスコントローラに対応する安全性コントローラもしくは安全性ロジックソルバ、または前記プロセスプラントの前記プロセス制御システムで実行する別の制御オブジェクトのうちの１つである、請求項２４に記載の方法。
【請求項２８】
前記シャドウイング機器が、前記シャドウイングされた機器と一体であり、かつその中で隔離されたソフトウェアモジュールを備える、請求項２４に記載の方法。
【請求項２９】
前記シャドウイング機器によって、前記プロセスプラントの構成データベースから、前記シャドウイング機器の構成と、前記シャドウイング機器によってシャドウイングされる機能ブロックのセットに対応する署名のセットと、を得ることをさらに含み、
前記ソース機能ブロックに対応する前記署名が、前記構成データベースから得られた前記署名のセットから除外される、請求項２４に記載の方法。
【請求項３０】
前記ソース機能ブロックの前記署名を発見することが、前記ソース機能ブロックの前記指標の前記受信に基づいて、プリミティブコンポーネントのセットを利用して、前記ソース機能ブロックによって利用される１つ以上のデータ型を発見することを含み、前記１つ以上のデータ型が、複数のデータ構造、複数のデータフォーマット、複数のデータ値、複数のデータ構文、または複数のマークアップ言語のうちの少なくとも１つを含む、請求項２４に記載の方法。
【請求項３１】
前記ソース機能ブロックによって利用されるデータ型が、複合データ型であり、
前記プリミティブコンポーネントのセットが、複数の単純データ型に対応し、
前記方法が、前記複数の単純データ型に対応する前記プリミティブコンポーネントのセットを用いることによって、前記ソース機能ブロックによって利用される前記複合データ型を学習することをさらに含む、請求項３０に記載の方法。
【請求項３２】
前記プリミティブコンポーネントのセットに基づいて、前記ソース機能ブロックによって利用される前記学習された複合データ型を定義する複合コンポーネントを生成することと、
前記シャドウイング機器において前記複合コンポーネントを格納することと、をさらに含む、請求項３１に記載の方法。
【請求項３３】
前記シャドウライブラリ内の前記ソース機能ブロックの前記署名を格納することが、前記シャドウライブラリに、前記シャドウイングされた機器において、また任意に前記プロセス制御システム内に含まれる他の機器においてインスタンス化された多数の機能ブロックの多数の署名を格納することを含む、請求項２４に記載の方法。
【請求項３４】
前記多数の機能ブロックが、前記シャドウイングされた機器においてインスタンス化された制御モジュールに含まれ、前記インスタンス化された制御モジュールの前記多数の機能ブロックの前記多数の署名を格納することが、前記インスタンス化された制御モジュールの署名を格納することを含む、請求項３３に記載の方法。
【請求項３５】
前記シャドウイング機器によって、前記ソース機能ブロックの前記署名を、前記シャドウイングされた機器において実行する前記インスタンス化されたソース機能ブロックと同期させることをさらに含む、請求項２４に記載の方法。
【請求項３６】
前記シャドウイング機器によって、前記シャドウイングされた機器との通信の損失を検出し、前記通信の損失を検出したとき、アラームまたはアラートのうちの少なくとも１つを生成することをさらに含む、請求項２４に記載の方法。
【請求項３７】
前記シャドウイング機器において、前記インスタンス化されたソース機能ブロックに対応する表示ビューの表示を受信することと、
前記インスタンス化されたソース機能ブロックに対応する前記表示ビューにおける提示のために、前記シャドウイング機器によって、かつ前記表示ビューの構成に従って、前記ミラーリングされた動的データの少なくとも一部を提供することと、をさらに含む、請求項２４に記載の方法。
【請求項３８】
前記シャドウイングされた機器から追加のデータを受信することと、前記プロセス制御システムに含まれる受信側機器に前記追加のデータを転送することとをさらに含む、請求項２４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本特許は、概して工業プロセスプラント及びプロセス制御システムに関し、より具体的には、構成の事前知識なしに、プロセスプラント内の汎用シャドウイングを提供するための方法及びシステムに関する。
【背景技術】
【０００２】
工業プロセスプラントでは、プロセス制御システム、例えば分散制御システム（Ｄｉｓｔｒｉｂｕｔｅｄ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍ（ＤＣＳ）、安全計装システム（Ｓａｆｅｔｙ  Ｉｎｓｔｒｕｍｅｎｔｅｄ  Ｓｙｓｔｅｍ  （ＳＩＳ））、及び／またはプログラマブルロジックコントローラ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｃｏｎｔｒｏｌｌｅｒ（ＰＬＣ））は、その内部で実行している１つ以上の工業プロセスを制御して、原材料から物理的材料または製品、例えば紙、医薬品、石油製品、プラスチック、包装、化学製品等を製造、精製、変形、生成、または生産するように動作する。分散制御システムは、典型的には、１つ以上のフィールド機器アナログバス、デジタルバスもしくは結合型アナログ／デジタルバスを介して、または１つ以上の無線通信リンクまたはネットワークを介して通信可能に結合された１つ以上のプロセスコントローラを含む。フィールド機器は、例えば、弁、弁ポジショナ、スイッチ及びトランスミッタ（例えば、温度センサ、圧力センサ、水位センサ及び流量センサ等）であってもよく、プロセス環境内に位置し、概して物理的またはプロセス制御機能、例えば弁の開閉、プロセス及び／または環境パラメータ、例えば温度、流れ、または圧力等の測定を行い、プロセスプラントまたはシステム内部で実行している１つ以上のプロセスを制御し、それによって、ソース原材料から物理的材料または製品を生成する。スマートフィールド機器、例えば周知のフィールドバスプロトコルに準拠するフィールド機器はまた、コントローラ内部で一般的に実施される計算、アラーミング機能の制御、及び他の制御機能を行い得る。プロセスコントローラは、これもまた典型的にはプラント環境内部に位置し、フィールド機器によってなされたプロセス測定、及び／またはフィールド機器に関する他の情報を示す信号を（例えば、バス、有線通信ネットワーク、及び／または無線通信ネットワークを介して）受信し、例えば、プロセス制御決定を行い、受信された情報に基づいて制御信号を生成し、フィールド機器内で行われている制御モジュールまたはブロック、例えばＨＡＲＴ（登録商標）、ＷｉｒｅｌｅｓｓＨＡＲＴ（登録商標）、及びＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバスフィールド機器と連携させる異なる制御モジュールを稼働させるコントローラアプリケーションを実行する。コントローラ内の制御モジュールは、通信ラインまたはリンクを経由して、フィールド機器に制御信号を送信し、それによって、プロセスプラントまたはシステムの少なくとも一部の動作を制御し、プラントまたはシステム内部で稼働または実行している１つ以上の工業プロセスの少なくとも一部を制御する。Ｉ／Ｏ機器は、これもまた典型的にはプラント環境内部に位置し、典型的にはコントローラと１つ以上のフィールド機器との間に配設され、それらの間の通信を、例えば、電気信号をデジタル値に変換することによって可能にし、逆の場合も同様である。本明細書で利用される場合、フィールド機器、コントローラ、及びＩ／Ｏ機器は、概して「プロセス制御機器」と称され、概してプロセスプラントの物理的フィールド環境内に位置するか、配設されるか、または設置される。
【０００３】
同じ工業プロセスプラントは、安全計装システム（「ＳＩＳ」）を含み、これは概して、プロセスプラント内部の著しく安全性に関連する問題を検出し、結果としてプラント内での深刻な危険を招くかまたはそれにつながり得る問題、例えば有毒化学物質の流出、爆発等が生じた場合弁を自動的に開閉し、機器から電力を除去し、プラント内部の流れを切り替える等のために動作する。これらの安全計装システムは、典型的には、標準的プロセ
ス制御コントローラから離れた１つ以上の別個のコントローラを有し、これは、本明細書においては安全性システムロジックソルバまたは安全性コントローラと称され、プロセス制御のために用いられ、バス、通信ライン、または無線ネットワークを介して、プロセスプラント内部に設置されたものとは別個の安全性フィールド機器に接続される。ロジックソルバは、安全計装機能（ＳＩＦ）ルーチンを実行し、安全性フィールド機器を用いて、著しい事象に関係するプロセス状況、例えばある一定の安全性スイッチまたは遮断弁の位置、プロセス内のオーバフローまたはアンダフロー、重要な発電または制御機器の動作、障害検出機器の動作等を検出し、それによって、プロセスプラント内部の事象を検出する。単一の状況または２つ以上の状況の同時発生であり得る事象が検出されると、安全性コントローラは、事象の好ましくない性質を制限するためのいくつかのアクション、例えば弁の閉鎖、機器の電源オフ、プラントのセクションからの電力の除去等を行う。概して、これらのアクションは、安全性機器を、プロセスプラント内部の深刻または危険な状況を防止するように設計された動作の作動または「セーフ」モードに切り替えることを含む。
【０００４】
加えてまたは代替的に、いくつかの工業またはプロセスプラントは、１つ以上のＰＬＣ（プログラマブルロジックコントローラ）制御システムを含む。一般的に言えば、ＰＬＣは、過酷なフィールド環境に好適であり、限られた時間的制約の中で、入力状況に応答して出力結果を常に発生させるように設計された、高信頼性の自動化コントローラである。ＰＬＣ制御システム内部では、ＰＬＣは、さまざまなセンサ、アクチュエータ、及び／または他のフィールド機器に加えて、いくつかの実施では、ＰＬＣをプログラミングした制御ロジックを用いて入力が受信及び処理され、また結果として得られた出力が伝送され、その結果プロセスプラント内部の工業プロセスの少なくとも一部を制御する他のコントローラに接続し得る。典型的には、ＰＬＣは、ラダー方式のロジックを用いてプログラミングまたは構成されるが、いくつかのＰＬＣは、ステートロジック、機能ブロックダイアグラム、シーケンスフローチャート、構造化テキスト、命令リスト、他のタイプのプログラミング言語等を用いてプログラミング／構成され得る。
【０００５】
このように、さまざまなプロセス制御システム（例えば、上述のＤＣＳ、ＳＩＳ、及びＰＬＣ、及び／または他のタイプのプロセス制御システム）は、工業プロセスプラント内部で動作し、さまざまなプロセス制御機器を介して実行している１つ以上の工業プロセスを、その内部でリアルタイムでまたはランタイムで制御する。先に述べたように、用語「プロセス制御機器」は、概してＤＣＳのフィールド機器、Ｉ／Ｏ機器、及びコントローラ、ＳＩＳの安全性フィールド機器、Ｉ／Ｏ機器、及び安全性ロジックソルバまたは安全性コントローラ、及び／またはプログラマブルロジックコントローラ及びフィールド機器ＰＬＣベースの制御システムを指し、それらのうち任意の数が、工業製品または材料を製造、精製、変形、生成、または生産するために動作するプロセスプラントに含まれ得る。
【０００６】
プロセスプラントのプロセス制御システムのさまざまなプロセス制御機器からの情報は、データハイウェイまたは通信ネットワークを経由して、１つ以上の他のハードウェア機器、例えばオペレータワークステーション、パーソナルコンピュータまたはユーザインターフェースを有する他のタイプのコンピューティング機器、データヒストリアン、レポートジェネレータ、中央集中型データベース、または典型的には、制御室またはプラントのより過酷な物理的フィールド環境から離れた他の場所、例えばプロセスプラントのバックエンド環境内に置かれる他の中央集中型管理運営コンピューティング機器に利用可能にされ得る。これらのハードウェア機器の各々は、典型的には、プロセスプラントをわたって、またはプロセスプラントの一部をわたって中央集中化される。これらのハードウェア機器は、例えば、制御または安全性システムオペレータに、プロセスの制御、及び／またはプロセスプラントの動作に関する機能、例えば、プロセス制御ルーチンまたは安全性ルーチンの設定を変えること、プロセスコントローラ、安全性システムコントローラ、フィールド機器等の内部での制御モジュールの動作を、例えばそれらのそれぞれの構成を変える
ことによって変更すること、プロセスの現在のステータスを視認すること、フィールド機器、プロセスコントローラ、または安全性システムコントローラによって生成されたアラームを視認すること、作業者を訓練するかまたはプロセス制御ソフトウェアを試験することを目的としてプロセスの動作をシミュレートすること、構成データベースを維持し更新すること等を行わせることを可能にし得るアプリケーションを稼働させる。ハードウェア機器、コントローラ、及びフィールド機器によって利用されるデータハイウェイは、有線通信パス、無線通信パス、または有線及び無線通信パスの組み合わせを含み得る。
【０００７】
一般に既知であるように、プロセス制御機器は、典型的には、機能ブロックダイアグラム（ＦＢＤ）及び／または他の好適な構成ツールを用いて、オフラインで構成される。そのような構成ツールは、構成機能ブロック及び／または制御モジュールの定義及び／または構成を可能にし、この場合、制御モジュールは、典型的には、機能ブロックの特定のセットの特定の配置を含む。構成された機能ブロックに、及び／または構成された制御モジュールに対応する制御オブジェクトは、それぞれのプロセス制御機器にダウンロードされインスタンス化される。ダウンロードされた制御オブジェクトが、それらのホストプロセス制御機器においてインスタンス化及び実行されると、制御オブジェクトは、それらのホストプロセス制御機器に、それらのそれぞれの構成に従って動作して、プロセスプラント内部のプロセスの少なくとも一部を制御させる。
【０００８】
いくつかの配置では、ＦＢＤの制御オブジェクト（例えば、１つ以上の機能ブロック、制御モジュール等を含み得る）は、数個のプロセス制御機器間に分散し得る。制御オブジェクトがそれらのそれぞれのプロセス制御機器においてインスタンス化されると、多数のプロセス制御機器にわたって協調して動作している上記の制御オブジェクトは、特定の制御ロジックに、プロセスの少なくとも一部を制御することを実行させるようにし得る。これらの分散型構成では、１つの特定のプロセス制御機器は、多数のプロセス制御機器間で分散的に動作している制御ロジックの、例えば、ユーザインターフェースでの提示を目的とした、及び／またはプロセス制御システムの別の機器による消費のための集約的ビューの提示を担い得る。そのようなレスポンシビリティまたはタスクは、本明細書においては概して「シャドウイング」と称され、このように、制御ロジックの集約的ビューを担う特定の機器は、本明細書においては「シャドウイング機器」と称される場合があり、制御ロジックを実行するために動作している他の多数のプロセス制御機器（これらは、コンシューマに対してシャドウイング機器によって表され、及び／または参照される）は、本明細書においては「シャドウイングされた機器」と称される場合がある。一般的に言えば、シャドウイングされた機器によって生成され、受信され、及び／または観察された動的データ及び他の情報は、シャドウイング機器においてミラーリングされ、それによって、ミラーリングされたデータが、シャドウイング機器において、他の機器、モジュール、機能ブロック、制御オブジェクト、及び／またはプロセス制御システムに含まれるそのようなデータの他のコンシューマに利用可能となるようにする。
【０００９】
シャドウイング機器は、他の機器と別個かつ区別できる物理的機器である必要はないことに留意されたい。いくつかの実施では、例えば、シャドウイング機器は、シャドウイングされた機器または別の機器と一体型であり、シャドウイングされた機器または別の機器の内部で実行している分離されたソフトウェアモジュールであってもよく、分離されたソフトウェアモジュールは、本来の（シャドウイングされた）制御オブジェクトと、シャドウイングされた制御オブジェクトによって観察されたデータのコンシューマとの間の橋絡として機能し得る。シャドウイング機器によってプロセス制御システム内部のさまざまなコンシューマに提示された集約的ビューは、概してシャドウイングされた機器によって生成され、受信され、及び／またはさもなければリアルタイムの動的データを含み、一方でシャドウイングされた機器は、オンラインであり、リアルタイムまたはオンラインで動作しており、プロセスプラントで実行している１つ以上のプロセスの少なくとも一部を制御
することにさらに留意されたい。このように、制御ロジックまたはその一部によって発生するかまたは観察されたデータのさまざまなコンシューマは、制御ロジックの実行に関係する各プロセス制御機器と直接通信する必要はないが、代わりに、シャドウイング機器と単に通信して、制御ロジックに関係する多数のシャドウイングされた機器によって生成、受信、及び／または観察された動的なリアルタイムデータを得てもよい。このように、実際に、シャドウイング機器は、シャドウイングされた機器からデータのさまざまなコンシューマへのリアルタイムデータ転送を提供する。
【００１０】
シャドウイング機器は、シャドウ任意の１つ以上の機能ブロック、１つ以上の制御モジュール、及び／またはそれらの組み合わせをシャドウイングし得る。例えば、シャドウイング機器が、１つ以上の他のプロセス制御機器において実行する１つ以上の機能ブロックを含む制御モジュールのホストとして機能すると（例えば、その集約的ビューを提供すると）、シャドウイング機器は、「シャドウイング制御モジュール」または「シャドウイングモジュール」であると言われる。制御モジュールをシャドウイングすることは、例えば、ユーザ対話及び／または制御モジュールの内外へのデータ転送を目的として行われ得る。
【００１１】
別の例では、シャドウイング機器は、機能ブロックのホストとして機能し（例えば、その集約的ビューを提供し）、その一部は、シャドウイング機器が常駐する物理的機器によって実行され、その別の部分は、別のプロセス制御機器によって実行される。この例では、シャドウイング機器は、「シャドウイング機能ブロック」であると言われる。例えば、Ｆｏｕｎｄａｔｉｏｎフィールドバス制御ストラテジは、さまざまなフィールド機器内で実行しているプロセスコントローラ及び１つ以上の他の機能ブロックで実行している１つ以上の機能ブロックによって実行され得る。プロセスコントローラは、さまざまなフィールド機器において、例えば、ユーザ対話、機能ブロック内外へのデータ転送等を目的として実行されている１つ以上の他の機能ブロックをシャドウイングし得る。
【００１２】
プロセス制御システム及びプロセスプラントにおけるシャドウイング制御モジュール及び機能ブロックのための既知の手法の実施の例は、米国特許第６，７３８，３８８号及び米国特許第７，５１９，０８３号に見い出され、その内容は、参照によりそれらの全体が本明細書に含まれる。
【発明の概要】
【００１３】
一実施形態では、プロセスプラント内に含まれるシャドウイング機器は、１つ以上のプロセッサと、シャドウイング機器をシャドウイングされた機器に通信可能に接続する１つ以上のインターフェースを含み、シャドウイング機器及びシャドウイングされた機器は、プロセスプラント内の工業プロセスをリアルタイムで制御するように動作するプロセス制御システムに含まれる。
【００１４】
また、シャドウイング機器は、シャドウライブラリを格納する１つ以上の有形メモリと、１つ以上の有形メモリに格納され、かつ１つ以上のプロセッサによって実行されると、シャドウイング機器に、シャドウイングされた機器から、シャドウイングされた機器内に、インスタンス化されたソース機能ブロック（例えば、シャドウイングされた機器内に構成及びダウンロードされたソース機能ブロック）の指標を受信させるコンピュータ実行可能命令を含むシャドウマネージャとを備える。加えて、コンピュータ実行可能命令は、ソース機能ブロックに対応する署名がシャドウライブラリに格納されていない場合、シャドウイング機器に、（ｉ）ソース機能ブロックの受信された指標に基づいて、ソース機能ブロックの署名を作成し、（ｉｉ）シャドウライブラリに、ソース機能ブロックの作成された署名を格納し、（ｉｉｉ）ソース機能ブロックの作成された署名をインスタンス化し、それによって、シャドウイング機器においてソース機能ブロックのシャドウを生成するこ
とを行わせる。さらに、コンピュータ実行可能命令は、ソース機能ブロックに対応する署名がシャドウライブラリに格納されている場合、シャドウイング機器に、（ｉ）ソース機能ブロックの受信された指標に基づいて、ソース機能ブロックとソース機能ブロックに対応する格納された署名との間の不一致を判定し、（ｉｉ）不一致に基づいて、ソース機能ブロックに対応する格納された署名を更新し、（ｉｉｉ）シャドウライブラリに、ソース機能ブロックの更新された署名を格納し、（ｉｖ）ソース機能ブロックの更新された署名をインスタンス化し、それによって、シャドウイング機器におけるソース機能ブロックのシャドウを生成することと、を行わせる。
【００１５】
シャドウイング機器の１つ以上のプロセッサは、ソース機能ブロックのシャドウを用いて、プロセスプラント内の工業プロセスのリアルタイム制御中、シャドウイングされた機器で実行しているインスタンス化されたソース機能ブロックによって観測された動的データをミラーリングするように、かつ、プロセス制御システムに含まれる１つ以上の他の機器及び／または機能ブロックに、ミラーリングされた動的データを提供し、それによって、シャドウイング機器によって、シャドウイングされた機器で実行されているインスタンス化されたソース機能ブロックをシャドウイングするように構成される。
【００１６】
一実施形態では、プロセスプラント内の機器をシャドウイングするための方法は、シャドウイング機器において、シャドウイングされた機器から、シャドウイングされた機器においてインスタンス化されたソース機能ブロック（例えば、シャドウイングされた機器内に構成及びダウンロードされているソース機能ブロック）の指標を受信することを含み、シャドウイング機器及びシャドウイングされた機器は、プロセスプラント内の工業プロセスをリアルタイムで制御するように動作するプロセス制御システムに含まれる。加えて、本方法は、シャドウイング機器によって、ソース機能ブロックに対応する署名がシャドウイング機器において格納されていないことを判定することと、インスタンス化されたソース機能ブロックに対応する署名がシャドウイング機器に格納されていないという判定に基づいて、ソース機能ブロックの署名を発見し、シャドウイング機器のシャドウライブラリに、ソース機能ブロックの署名を格納することとを含む。さらに、本方法は、シャドウイング機器において、かつソース機能ブロックの署名を用いることによって、工業プロセスのリアルタイム制御中、シャドウイングされた機器においてインスタンス化されたソース機能ブロックによって生成及び／または受信される動的データをミラーリングすることと、シャドウイング機器によって、プロセス制御システムに含まれる他の機能ブロック及び／または機器に、ミラーリングされた動的データを提供し、それによって、シャドウイングされた機器で実行されるインスタンス化されたソース機能ブロックをシャドウイングすることと、を含む。
【図面の簡単な説明】
【００１７】
【図１】汎用シャドウイングが実施され得、及び／または含まれ得るプロセスプラントを示すブロック図を描画する。
【図２】プロセス制御システムにおける事前構成されたシャドウイングのためのシステムの一例のブロック図を描画する。
【図３】プロセス制御システムにおける汎用シャドウイングのためのシステムの一例のブロック図を描画する。
【図４】プロセスプラントにおける汎用シャドウイングの方法の一例のフロー図を図示する。
【発明を実施するための形態】
【００１８】
図１は、１つ以上の工業プロセスをリアルタイムで制御するように動作する１つ以上のプロセス制御システムを含み、本明細書で説明された任意の数の汎用シャドウイング方法、システム、装置、機器、機構、及び／または手法を組み入れ得るプロセスプラント５の
一例を図示する。プロセスプラント５の１つ以上のプロセス制御システムは、１つ以上の分散制御システム（Ｄｉｓｔｒｉｂｕｔｅｄ  Ｃｏｎｔｒｏｌ  Ｓｙｓｔｅｍ（ＤＣＳ）、安全計装システム（Ｓａｆｅｔｙ  Ｉｎｓｔｒｕｍｅｎｔｅｄ  Ｓｙｓｔｅｍ（ＳＩＳ））、プログラマブルロジックコントローラ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｃｏｎｔｒｏｌｌｅｒ（ＰＬＣ））、及び／または他のタイプのプロセス制御システムを含んでもよく、それら各々が、それぞれのプロセス制御機器を含んでもよいが、しかしながら、説明を簡単にするために、プロセスプラント５は、以下により詳細に説明されるように、ＤＣＳであるプロセス制御システムと、ＳＩＳであるプロセス制御システムとを含むとして図１に図示される。しかしながら、当業者には、本明細書で説明された汎用シャドウイング方法、システム、装置、機器、機構、及び／または手法のいずれかが、２つ以上のＤＣＳ、２つ以上のＳＩＳ、１つ以上のＰＬＣ、及び／または１つ以上の他のタイプのプロセス制御システムを含むプロセスプラントに容易に組み入れられてもよいことが理解されよう。
【００１９】
しかし、一般的に言えば、プロセスプラント５は、運用開始されてオンラインで動作するとき、プロセスプラント５内で実行する１つ以上のプロセスを制御するように協働する１つ以上の有線または無線プロセス制御機器、要素、または素子を含み、これは、例えば、結果として、原材料から物理的な工業製品または材料、例えば紙製品、薬剤、石油製品、包装、プラスチック等を生成し得る。このように、プロセスプラント５のプロセス制御機器のうちの少なくともいくつかが、さまざまな物理的機能、例えば弁の開閉、温度検知、流れ検知、体積、密度、及び／または材料の他の特性等の測定を行い得る。また、プロセスプラント５及びその内部に含まれるプロセス制御システムは、１つ以上の有線通信ネットワーク、無線通信ネットワーク、及び／または集中データベース、例えば連続的、バッチ、資産管理、構成、履歴、及び他のタイプのデータベースを含んでもよい。
【００２０】
先に述べたように、プロセスプラント５のプロセス制御システムに含まれるプロセス制御機器は、いくつかを挙げると、ＤＣＳフィールド機器、Ｉ／Ｏ機器、ならびにコントローラと、ＳＩＳ安全性フィールド機器、Ｉ／Ｏ機器、ならびに安全性コントローラまたはロジックソルバと、プログラマブルロジックコントローラ（ＰＬＣ）とを含み得る。典型的には、本明細書で説明された汎用シャドウイング手法をサポートするプロセス制御機器は、スマートプロセス制御機器であり、それ自体がそれらのそれぞれの構成及び／または他のデータが格納された１つ以上の非一時的有形メモリを含み、またリアルタイムまたはオンライン動作中にインスタンス化された構成を実行し、その内部で定義された挙動、例えば制御ループ、アラーミング、及び他の制御機能を行う１つ以上のプロセッサを含む。加えて、プロセス制御機器は、典型的には、以下により詳細に述べられるように、それによってプロセスプラント５の物理的フィールド環境内部に配設された他のプロセス制御機器と、及び／またはプロセスプラント５のバックエンド環境と、任意の好適な工業用制御プロトコル、例えばＨＡＲＴ、ＷｉｒｅｌｅｓｓＨＡＲＴ、フィールドバス（Ｆｉｅｌｄｂｕｓ）、プロフィバス（Ｐｒｏｆｉｂｕｓ）等のプロセス制御信号を送受信するための、１つ以上のプロセス制御ネットワークへの１つ以上の通信インターフェースを含む。
【００２１】
典型的には、プロセス制御機器は、機能ブロックダイアグラム（ＦＢＤ）及び／または他の好適な構成ツールを用いてオフラインで構成される。そのような構成ツールは、１つ以上の機能ブロック及び／または１つ以上の制御モジュールの定義及び／または構成を可能にする。構成された機能ブロック及び／または構成された制御モジュールに対応する制御オブジェクトは、プラント５のフィールド環境内部のそれぞれのプロセス制御機器にダウンロードされ、かつそこでインスタンス化される。インスタンス化された制御オブジェクトが、リアルタイムまたはオンライン動作中にそれらのホストプロセス制御機器で実行されると、制御オブジェクトは、ホスト機器を、それらのそれぞれの構成に従って動作させ、例えば信号を受信すること、受信信号に基づいて１つ以上の制御機能を行うこと、そ
こから結果として得られた制御信号を伝送すること等によって、プロセスプラント５内部の１つ以上のプロセスの少なくとも一部を制御させる。
【００２２】
プロセス制御システムで現在利用されている既知のシャドウイング手法では、シャドウイング機器は、オンライン動作中にシャドウイングする制御オブジェクトの構成を含むか、さもなければそれを参照するように構成される。構成ツールまたは他の好適なツールを用いることによって、シャドウイング機器の構成は、シャドウイング機器がオンライン動作中にシャドウイングすることになる制御オブジェクト（例えば、機能ブロック、制御モジュール等に対応する）の構成を含むかまたはそれを参照するように定義される。シャドウイング機器の上記の、そしてシャドウイングの定義及び／または構成は、構成データベースに格納され、そして、リアルタイムプロセスプラント動作中の実行のためのシャドウイング機器内にダウンロードまたはインスタンス化され、それによって、シャドウイング機器は、シャドウイング機器の構成によって定義されたような、シャドウイングされた制御オブジェクトの構成を含むかまたはそれを参照するそれらのシャドウイング役割を果たす。このように、現在既知のプロセス制御システムでは、シャドウイングされることが所望される制御オブジェクトの詳細な知識が分かっており、かつそれらのシャドウイング機器の構成に事前に構成されることが必要である。このように、上記のシャドウイングされたオブジェクト及びそれらのそれぞれのシャドウイング機器の事前の詳細な知識及び構成なしに、既存のシャドウイングされた制御オブジェクトに対する変更を導入すること、及び／またはシャドウイングされた新しい制御オブジェクトをプロセス制御システムに導入することは、不可能ではないにせよ非常に煩雑である。いくつかのシナリオでは、シャドウイング機器は、さらにオフラインにされ、それによって、シャドウイングされた機器の改変された、及び／または新しい制御オブジェクトが、シャドウイング機器の構成において正しく定義または参照されるようにし得る。
【００２３】
一方、本明細書に開示された新規な汎用シャドウイング手法、システム、方法、装置、機器、及び機構は、事前構成または事前定義なしに、シャドウイングされた制御オブジェクト（例えば、機能ブロック及び／または制御モジュール）をシャドウイング機器によって自動的に発見することを可能にし、それによって、シャドウイング機器が（例えば、プロセスプラントのリアルタイムまたはオンライン動作中に）自動的に構成され、ユーザインターフェース及び／またはシャドウイングされた制御オブジェクトによって観測されたデータのコンシューマであるプロセス制御システムのさまざまな他の部分に、シャドウイングされたオブジェクトのデータを適切に提示及び／または転送し、データは、プロセスプラント５内でオンラインで実行中に、シャドウイングされた制御オブジェクトによって生成されるか、受信されるか、またはさもなければ観測された動的データであってもよい。
【００２４】
図１に描画された例示のプロセスプラント５は、フィールド機器によってなされたプロセス測定値及び／またはフィールド機器によって検知されるかまたは他のプロセスコントローラによって提供される他の情報を示す信号を受信する１つ以上のプロセスコントローラを含むＤＣＳプロセス制御システムを含む。コントローラは、有線または無線プロセス制御通信リンクまたはネットワークを経由して、他のコントローラ及び／またはプラント５内のプロセスの動作を制御するためのフィールド機器に送信される制御信号を生成する１つ以上の制御ルーチンを用いることによって、フィールド機器から受信される情報を処理する。典型的には、少なくとも１つのフィールド機器は、物理的機能（例えば、弁の開閉、温度の上昇または下降、測定の実行、状況検知等）を行い、プロセスの動作を制御する。いくつかのタイプのフィールド機器は、コントローラと直接通信し、他のタイプのフィールド機器は、入出力（Ｉ／Ｏ）機器を用いて、コントローラと通信する。プロセス制御機器は、有線または無線であってもよく、任意の数及び組み合わせの有線及び無線プロセスコントローラ、フィールド機器及びＩ／Ｏ機器が、プロセスプラント環境またはシス
テム５に含まれていてもよい。
【００２５】
例えば、図１のシステムは、多数のプロセスコントローラ１１を有するプロセス制御システム５を描画し、プロセスコントローラ１１のうちのいくつかは、入出力（Ｉ／Ｏ）カード２６及び２８を介して有線でフィールド機器１５〜２２に通信可能に接続される。また、プロセスコントローラ１１のうちのいくつかは、無線ゲートウェイ３５及びプロセス制御データハイウェイ１０を介して、フィールド機器４０〜４６に無線で、または部分的に無線で通信可能に接続される。プロセス制御データハイウェイ１０は、１つ以上の有線及び／または無線通信リンクを含んでもよく、任意の所望のまたは好適なまたは通信プロトコル、例えばイーサネットプロトコル等を用いて組み込まれ得る。いくつかの構成（図示せず）では、プロセスコントローラ１１のうちの１つ以上は、データハイウェイまたは通信ネットワーク１０以外の１つ以上の通信ネットワークを用いて、例えば、任意の他の通信プロトコル、例えばＷｉ−Ｆｉまたは他のＩＥＥＥ８０２．１１準拠の無線ローカルエリアネットワークプロトコル、モバイル通信プロトコル（例えば、ＷｉＭＡＸ、ＬＴＥ、または他のＩＴＵ−Ｒ互換性プロトコル）、Ｂｌｕｅｔｏｏｔｈ（登録商標）プロトコル、ＨＡＲＴ（登録商標）プロトコル、ＷｉｒｅｌｅｓｓＨＡＲＴ（登録商標）プロトコル、プロフィバス（プロフィバス）プロトコル、ＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバスプロトコル等をサポートする任意の数の他の有線または無線通信リンクを用いることによって、無線ゲートウェイ３５に通信可能に接続され得る。
【００２６】
コントローラ１１は、例示を目的として、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔより販売されているＤｅｌｔａＶ（商標）コントローラであってもよく、フィールド機器１５〜２２及び４０〜４６のうちの少なくともいくつかを用いて、バッチプロセスまたは連続的プロセスを実施するように動作し得る。プロセス制御データハイウェイ１０に通信可能に接続されることに加えて、コントローラ１１は、例えば、標準的な４−２０ｍＡ機器、Ｉ／Ｏカード２６、２８に、及び／または任意のスマート通信プロトコル、例えばＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバスプロトコル、ＨＡＲＴ（登録商標）プロトコル、ＷｉｒｅｌｅｓｓＨＡＲＴ（登録商標）プロトコル等に関連付けられた任意の所望のハードウェア及びソフトウェアを用いて、フィールド機器１５〜２２及び４０〜４６のうちの少なくともいくつかに通信可能に接続され得る。図１では、コントローラ１１、フィールド機器１５〜２２及びＩ／Ｏカード２６、２８は、有線機器であり、フィールド機器４０〜４６は、無線フィールド機器である。当然ながら、有線フィールド機器１５〜２２及び無線フィールド機器４０〜４６は、任意の他の所望の規格またはプロトコル、例えば今後開発される任意の規格またはプロトコルを含む任意の有線または無線プロトコルに適合することができる。
【００２７】
図１のプロセスコントローラ１１は、プロセス制御システムの別個のノードを各々定義し、（例えば、メモリ３２に格納される）１つ以上のそれぞれのプロセス制御ルーチン３８を実施または管理するそれぞれのプロセッサ３０を含み、そのようなプロセス制御ルーチン３８は、本明細書では概して制御モジュールと称される。プロセッサ３０は、フィールド機器１５〜２２及び４０〜４６と、及びコントローラ１１に通信可能に接続された他のノードと通信するように構成される。本明細書で説明された任意の制御ルーチンまたはモジュール３８は、そのように所望すれば、異なるコントローラまたは他の機器によって実施または実行されるパーツを有し得、すなわち、実行している制御ロジックは、多数のプロセス制御機器間に分散され得ることに留意すべきである。同様に、本明細書で説明された、プロセス制御システム５内部で実施されることになる制御ルーチンまたは制御モジュール３８は、ソフトウェア、ファームウェア、ハードウェア等を含む任意の形式を取り得る。加えて、制御ルーチン３８は、任意の所望のソフトウェアフォーマットで、例えばオブジェクト指向プログラミング、ラダーロジック、シーケンシャル機能チャート、機能ブロックダイアグラムを用いて、または任意の他のソフトウェアプログラミング言語また
は設計方式を用いて実施され得る。制御ルーチンまたは制御モジュール３８は、任意の所望のタイプのメモリ３２、例えばランダムアクセスメモリ（ＲＡＭ）、またはリードオンリーメモリ（ＲＯＭ）に格納され得る。同様に、制御ルーチン３８は、例えば、１つ以上のＥＰＲＯＭ、ＥＥＰＲＯＭ、特定用途向け集積回路（ＡＳＩＣ）、または任意の他のハードウェアまたはファームウェア素子にハードコードされ得る。このように、コントローラ１１は、任意の所望の方法で制御ストラテジまたは制御ルーチンを実施するように構成され得る。
【００２８】
１つのケースでは、コントローラ１１は、一般に機能ブロックと称されるものによって定義された制御モジュール３８を用いて制御ストラテジを実施し、この場合、各機能ブロックは、制御ルーチンまたは制御ロジック全体のオブジェクトまたは他の部分（例えば、サブルーチン）であり、他の機能ブロックと（リンクと呼ばれる通信を介して）協働し、プロセス制御システム５内部のプロセス制御ループを実施する。制御ベースの機能ブロックは、典型的には、トランスミッタ、センサまたは他のプロセスパラメータ測定機器に関連付けられた入力機能、ＰＩＤ、ファジー論理等の制御を行う制御ルーチンに関連付けられた制御機能、または弁等のいくつかの機器の動作を、プロセス制御システム５内部のいくつかの物理的機能を行うように制御する出力機能のうちの１つを行う。当然ながら、ハイブリッド及び他のタイプの機能ブロックが存在する。機能ブロックは、コントローラ１１に格納されそれによって実行され得、これは、典型的にはこれらの機能ブロックが標準的４−２０ｍＡ機器及びいくつかのタイプのスマートフィールド機、例えばＨＡＲＴ（登録商標）機器のために用いられるかまたはこれらと関連付けられる場合であり、またはフィールド機器自体に格納されそれによって実施され得、これは、ＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバス機器による場合である可能性がある。このように、理解されるように、コントローラ１１は、機能ブロックのうちの１つ以上を実行することによって行われる１つ以上の制御ループを実施し得る１つ以上の制御ルーチンまたはモジュール３８を含み得る。
【００２９】
有線フィールド機器１５〜２２は、任意のタイプの機器、例えばセンサ、弁、トランスミッタ、ポジショナ等であってもよく、一方でＩ／Ｏカード２６及び２８は、任意の所望の通信またはコントローラプロトコルに適合する任意のタイプのＩ／Ｏ機器であってもよい。図１では、フィールド機器１５〜１８は、アナログ線または組み合わせられたアナログ及びデジタル線を経由してＩ／Ｏカード２６と通信する、標準的４−２０ｍＡ機器またはＨＡＲＴ（登録商標）機器であり、一方でフィールド機器１９〜２２は、ＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバス通信プロトコルを用いて、デジタルバスを経由してＩ／Ｏカード２８と通信するスマート機器、例えばＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバス機器である。しかし、いくつかの実施形態では、有線フィールド機器１５〜２２のうちの少なくともいくつか及び／またはＩ／Ｏカード２６、２８のうちの少なくともいくつかは、加えてまたは代替的に、プロセス制御データハイウェイ１０を用いて、及び／または他の好適な制御システムプロトコル（例えば、プロフィバス、ＤｅｖｉｃｅＮｅｔ、Ｆｏｕｎｄａｔｉｏｎフィールドバス、ＣｏｎｔｒｏｌＮｅｔ、Ｍｏｄｂｕｓ、ＨＡＲＴ等）を用いることによって、コントローラ１１と通信し得る。
【００３０】
図１のシステムでは、無線フィールド機器４０〜４６は、無線プロトコル、例えばＷｉｒｅｌｅｓｓＨＡＲＴ（登録商標）プロトコルを用いて、無線プロセス制御通信ネットワーク７０を介して通信する。そのような無線フィールド機器４０〜４６は、（例えば、無線プロトコルまたは別の無線プロトコルを用いて）無線通信するようにさらに構成される無線ネットワーク７０の１つ以上の他の機器またはノードと直接通信し得る。無線通信するように構成されていない１つ以上の他のノードと通信するために、無線フィールド機器４０〜４６は、プロセス制御データハイウェイ１０に、または別のプロセス制御通信ネットワークに接続された無線ゲートウェイ３５を利用し得る。無線ゲートウェイ３５は、無
線通信ネットワーク７０のさまざまな無線機器４０〜５８へのアクセスを提供する。特に、無線ゲートウェイ３５は、無線機器４０〜５８、有線機器１１〜２８、及び／またはプロセス制御プラント５の他のノードまたは機器間の通信可能な結合を提供する。例えば、無線ゲートウェイ３５は、プロセス制御データハイウェイ１０を用いることによって、及び／またはプロセスプラント５の１つ以上の他の通信ネットワークを用いることによって、通信可能な結合を提供する。
【００３１】
有線フィールド機器１５〜２２に類似して、無線ネットワーク７０の無線フィールド機器４０〜４６は、プロセスプラント５内部の物理的制御機能、例えば、弁の開閉、プロセスパラメータの測定値の取得等を行う。しかしながら、無線フィールド機器４０〜４６は、ネットワーク７０の無線プロトコルを用いて通信するように構成される。このように、無線フィールド機器４０〜４６、無線ゲートウェイ３５、及び無線ネットワーク７０の他の無線ノード５２〜５８は、無線通信パケットの生産者でありコンシューマである。
【００３２】
プロセスプラント５のいくつかの構成では、無線ネットワーク７０は、非無線機器を含む。例えば、図１では、フィールド機器４８は、従来の４−２０ｍＡ機器が描画され、フィールド機器５０は、有線ＨＡＲＴ（登録商標）機器として描画される。ネットワーク７０内部で通信するために、フィールド機器４８及び５０は、無線アダプタ５２ａ、５２ｂを介して無線通信ネットワーク７０に接続される。無線アダプタ５２ａ、５２ｂは、ＷｉｒｅｌｅｓｓＨＡＲＴ等の無線プロトコルをサポートし、１つ以上の他の通信プロトコル、例えばＦｏｕｎｄａｔｉｏｎ（登録商標）フィールドバス、プロフィバス、ＤｅｖｉｃｅＮｅｔ等をさらにサポートしてもよい。加えて、いくつかの構成では、無線ネットワーク７０は、１つ以上のネットワークアクセスポイント５５ａ、５５ｂを含み、これらは、無線ゲートウェイ３５と有線通信する別個の物理的機器であってもよく、または無線ゲートウェイ３５とともに一体型機器として設けられてもよい。また、無線ネットワーク７０は、無線通信ネットワーク７０内部の１つの無線機器から別の無線機器にパケットを転送するための１つ以上のルータ５８を含み得る。図１の例示のシステムでは、無線機器４０〜４６及び５２〜５８は、無線通信ネットワーク７０の無線リンク６０を経由して、及び／またはプロセス制御データハイウェイ１０を介して、互いに、及び無線ゲートウェイ３５と通信する。
【００３３】
またさらには、プロセスプラント５は、安全性ロジックソルバまたはコントローラ７２及び安全性フィールド機器７４を備えるＳＩＳ制御システムをさらに含む。特に、プロセスコントローラ１１のうちの１つ以上は、安全性ロジックソルバまたは安全性システムコントローラ７２に接続され、これはひいては、安全性システムフィールド機器またはアセット７４に接続される。安全性コントローラ７２は、安全性フィールド機器７４（図１に示されるとおり）に直接接続されてもよく、または１つ以上のＩ／Ｏ機器（図１に図示せず）を介して安全性フィールド機器７４に接続されてもよく、いずれにしても、任意の有線または無線通信リンクを介して、安全性フィールド機器７４に接続され得る。同様に、安全性フィールド機器７４は、安全性を目的として、プラント内部で任意のタイプの物理的機能または検知機能を行う任意のタイプの機器であってもよく、上記の通信プロトコルのいずれかまたは他の通信プロトコルに適合し得る。同様に、安全性コントローラ７２は、メモリ７７内に１つ以上の安全性システムロジックモジュール７６（本明細書においては、同義的に「安全性システムモジュール」または「安全性システム制御モジュール」とも称される）を格納し、プロセッサ７８上でこれらの安全性システムモジュール７６を実行し得る。安全性システムロジックモジュール７６は、プロセス制御モジュール３８について上述された方法のいずれかで構成され得、アラーミング機能等のユーザインターフェース機能を含む、安全性システム内部の任意の所望の機能を行い得る。所望であれば、安全性ロジックコントローラ７２は、プロセスコントローラ１１と同じかまたは異なるノード内にあってもよい。
【００３４】
また、図１のプロセスプラントまたはプロセス制御システム５は、１つ以上のオペレータワークステーション８０を含み、その各々が、データハイウェイ１０に通信可能に接続され、その各々が、メモリ及び１つ以上のコンピュータプロセッサを含む。オペレータ及び他の作業員は、オペレータワークステーション８０を用いて、プラント５及びプラント５内部の素子とを構成し、及び／またはプロセスプラント５のランタイム動作を視認及び監視し、加えて任意の診断、修正、保守、及び／または必要とされ得る他の活動を行い得る。オペレータワークステーション８０のうちの少なくともいくつかは、プラント５内またはその近くのさまざまな防護領域内に位置し得、いくつかの状況では、オペレータワークステーション８０のうちの少なくともいくつかは、遠隔して位置するが、それにもかかわらずプラント５と通信可能に接続され得る。オペレータワークステーション８０は、有線または無線コンピューティング機器であってもよい。
【００３５】
さらに、例示のプロセス制御システム５は、構成ツールまたはアプリケーション８１（メモリに格納され、オペレータワークステーション８０のうちの少なくとも１つのプロセッサ上で実行される）と、１つ以上の構成データベース８２とを含むとして図示され、それら各々が、さらにデータハイウェイ１０に通信可能に接続される。上述のように、構成ツールまたはアプリケーション８１のさまざまなインスタンスを１つ以上のコンピューティング機器上で実行し、ユーザが、プロセス制御モジュール（３８）及び／または安全性システムモジュール（７６）を作成または変更し、それらのそれぞれのシャドウイングされた機器の知識を有するようにシャドウイング機器を構成し、これらの構成されたモジュール、シャドウイング、及びサポート機構を、データハイウェイ１０を介して、コントローラ１１、安全性ロジック機器７２、フィールド機器１５〜２２、４０〜４６、４８、５０のうちの１つ以上、安全性フィールド機器７４、及び／またはプロセスプラント５の他のノードにダウンロードすることを可能にすることに加えて、ユーザがオペレータインターフェース機器上で実行されるオペレータインターフェースディスプレイモジュールを作成または変更することを可能にし得、これを介して、オペレータは、プロセスプラント５を視認し、データを視認し、プロセス制御ルーチン３８、安全性システムルーチン７６、プラント５のフィールド機器１５〜２２及び４０〜４６、５８、５０、７４等の内部のデータ設定を変更する。１つ以上の構成データベース８２は、作成された（例えば、構成された）制御及び安全性システムモジュール及び／またはオペレータインターフェースディスプレイモジュールまたはルーチンを格納する。所望であれば、構成アプリケーション８１及び構成データベース８２は、中央集中化型であり、プロセス制御システム５に対する単位的な論理アピアランスを有し得るが、構成アプリケーション８１の多数のインスタンスを、プロセス制御システム５内部で同時に実行し得、構成データベース８２は、多数の物理的データ記憶機器及び多数のデータベース機構にわたって実施され得る。しかしながら、解釈を容易にすること、かつ限定しないことを目的として、１つ以上の構成データベース８２が、本明細書においては単数形を用いて言及される。
【００３６】
所望であれば、構成システムのためのユーザインターフェースディスプレイ機器は、オペレータワークステーション８０とは異なってもよいが、それは、構成システムのためのユーザインターフェース機器が、プラント５がリアルタイムで動作しているか否かにかかわらず、構成及び開発技術者によって利用されるためであり、反面、オペレータワークステーション８０は、概して、リアルタイム動作（本明細書においては、同義的に、プロセスプラント５の「ランタイム」または「オンライン」動作とも称される）中に、例えば、プロセスプラント５が、物理的製品及び／または材料を生成するために物理的フィールド環境内部の１つ以上のプロセスをアクティブに実行している間、プロセスプラント５の制御及び安全性システムオペレータによって利用される。例えば、プラント５のオンライン動作中、オペレータワークステーション８０のうちの１つ以上が、ユーザ、例えば制御システムオペレータに、さまざまな機材のビュー及び機材に関連付けられたリアルタイムデ
ータ、例えばオンライン測定値、検知データ、及び／またはステータス、アラーム及び警告等を提供するユーザインターフェースアプリケーション９５を実施し得る。
【００３７】
また、例示のプロセス制御システム５は、データ履歴アプリケーション８３及びデータ履歴データベース８４を含み、それら各々がさらに、データハイウェイ１０に通信可能に接続される。データ履歴アプリケーション８３は、データハイウェイ１０をわたって提供されたデータのいくつかまたはすべてを収集し、データを履歴化するか、または長期にわたる格納のために履歴データベース８４内に格納するように動作する。構成アプリケーション８１及び構成データベース８２と同様に、データ履歴アプリケーション８３及び履歴データベース８４は、中央集中化型であり、プロセス制御システム５に対する単位的な論理アピアランスを有し得るが、データ履歴アプリケーション８３の多数のインスタンスを、プロセス制御システム５内部で同時に実行し得、データ履歴データベース８４は、多数の物理的データ記憶機器及び多数のデータベース機構にわたって実施され得る。
【００３８】
いくつかの構成では、プロセス制御システム５は、他の無線プロトコル、例えばＷｉ−Ｆｉまたは他のＩＥＥＥ８０２．１１準拠の無線ローカルエリアネットワークプロトコル、モバイル通信プロトコル、例えばＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ）、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）または他のＩＴＵ−Ｒ（国際電気通信連合無線通信部門（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｕｎｉｏｎ  Ｒａｄｉｏ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓｅｃｔｏｒ））互換性プロトコル、短波無線通信、例えば近距離無線通信通信（ＮＦＣ）及びＢｌｕｅｔｏｏｔｈ、または他の無線通信プロトコルを用いて、他の機器と通信する１つ以上の他の無線アクセスポイント８５を含む。典型的には、そのような無線アクセスポイント８５は、ハンドヘルドまたは他のポータブルコンピューティング機器（例えば、ユーザインターフェース機器８６）が、無線ネットワーク７０とは異なる場合があり、無線ネットワーク７０とは異なる無線プロトコルをサポートし得るそれぞれの無線プロセス制御通信ネットワークを経由して通信することを可能にする。例えば、無線またはポータブルユーザインターフェース機器８６は、オペレータによって、または保守作業員によってプロセスプラント５内部で利用されるモバイルワークステーションまたは診断試験機（例えば、オペレータワークステーション８０のうちの１つのインスタンス）であってもよい。いくつかのシナリオでは、ポータブルコンピューティング機器に加えて、１つ以上のプロセス制御機器（例えば、コントローラ１１、フィールド機器１５〜２２、または無線機器４０〜４６、４８、５０）もまた、アクセスポイント８５によってサポートされた無線プロトコルを用いて通信する。
【００３９】
いくつかの構成では、プロセス制御システム５は、近接のプロセス制御システム５外側にあるシステムへの１つ以上のゲートウェイ８７、８８を含む。典型的には、そのようなシステムは、プロセス制御システム５によって生成されるかまたはそれによって操作される情報のコンシューマまたはサプライヤに提供され得る。例えば、プロセス制御プラント５は、近接したプロセスプラント５を別のプロセスプラントに通信可能に接続するためのゲートウェイノード８７を含み得る。加えてまたは代替的に、プロセス制御プラント５は、近接したプロセスプラント５を、外部の公衆またはプライベートシステム、例えば研究所システム（例えば、研究所情報管理システムまたはＬＩＭＳ）、オペレータラウンドデータベース、荷役システム、保守管理システム、製品在庫管理システム、製造スケジュール管理システム、天気データシステム、出荷及び運搬システム、包装システム、インターネット、別のプロバイダのプロセス制御システム、または他の外部システムと通信可能に接続するためのゲートウェイノード８８を含み得る。
【００４０】
図１は、例示のプロセスプラント５に含まれる有限個のフィールド機器１５〜２２、４０〜４６、４８、５０、無線ゲートウェイ３５、無線アダプタ５２、アクセスポイント５
５、ルータ５８、無線プロセス制御通信ネットワーク７０、安全性システムロジック機器７２、及び安全性システムフィールド機器７４を有する３つのコントローラ１１のみを図示しているが、この例は、単なる例証であり、非限定的な実施形態であることに留意されたい。任意の数のコントローラ１１及び／または安全性ロジック機器７２が、プロセス制御プラントまたはシステム５に含まれてもよく、コントローラ１１及び安全性ロジック機器７２のうちのいずれかが、プラント５内のプロセスを制御するために、任意の数の有線または無線機器及びネットワーク１５〜２２、３５、４０〜４６、４８、５０、５２、５５、５８、７０、及び７４と通信してもよい。
【００４１】
さらに、図１のプロセスプラントまたは制御システム５は、物理的フィールド環境９０（例えば、プロセスプラントフロア）と、データハイウェイ１０によって通信可能に接続されるバックエンド環境９２とを含むことに留意されたい。図１に描画されるように、フィールド環境９０は、その内部に配設され、設置され、及び相互接続され、ランタイム中プロセスを制御するように動作する物理的要素（例えば、プロセス制御機器、フィールド機器、Ｉ／Ｏネットワーク、ネットワーク素子等）を含む。例えば、コントローラ１１、Ｉ／Ｏカード２６、２８、フィールド機器１５〜２２、及び他の機器及びネットワーク要素３５、４０〜４６、４８、５０、５２、５５、５８、７０及び安全性ロジックソルバ７２及び安全性機器７４は、プロセスプラント５の物理的フィールド環境９０内に位置するか、配設されるか、さもなければ含まれる。一般的に言えば、プロセスプラント５の物理的フィールド環境９０では、原材料を受け入れて、その内部に配設された物理的要素を用いて処理し、１つ以上の製品または材料を生成する。
【００４２】
プロセスプラント５のバックエンド環境９２は、典型的にはフィールド環境９０の過酷な状況及び材料から遮蔽及び／または保護されたさまざまな要素例えばコンピューティング機器、オペレータワークステーション、データベースまたはデータバンク等を含む。図１を参照すると、バックエンド環境９２は、例えば、オペレータワークステーション８０、制御モジュール及び他の実行可能モジュールのための構成または開発システム８１、８２、データ履歴システム８３、８４、及び／または他の中央集中型管理運営システム、コンピューティング機器、及び／またはプロセスプラント５のランタイム動作をサポートする機能性を含む。いくつかの構成では、プロセスプラント５のバックエンド環境９２に含まれるさまざまなコンピューティング機器、データベース、及び他の要素及び機材は、異なる物理位置に物理的に位置し得、それらのいくつかは、プロセスプラント５に対してローカルであってもよく、それらのいくつかは遠隔していてもよい。
【００４３】
特に汎用シャドウイングに関しては、プロセスプラント５のプロセス制御機器のうちのいずれか１つ以上（かつ任意に、プロセスプラント５に含まれる他の機器）は、汎用シャドウイングをサポートするように構成され得る。すなわち、プロセスプラント５に含まれる任意のプロセス制御機器または他の機器が、シャドウイング機器であるように構成され得、プロセスプラント５に含まれる任意のプロセス制御機器または他の機器が、シャドウイングされた機器であるように構成され得る。例えば、プロセスコントローラ１１、フィールド機器４０〜４６、４８、５０、安全性システムコントローラ７２、安全性システムフィールド機器７４、及び／またはＩ／Ｏ機器２６、２８の各々が、所望であれば、例えば、本明細書で説明された手法のうちのいずれか１つ以上を用いることによって、汎用シャドウイングをそれぞれサポートするように構成されてもよい。例えば、図１では、機器１１、１５、２２、７２、及び７４は、丸で囲んだＧＳＤインジケータごとに、サポートされた汎用シャドウイングとして表される。さらに、プロセス制御システムのすべてのプロセス制御機器が、必ずしも汎用シャドウイングをサポートするように構成されるわけではない。いくつかの実施では、汎用シャドウイング及び事前構成されたシャドウイング手法の両方が、プロセスプラント５内部で実施され得る。例えば、プロセス制御システムは、以下により詳細に説明されるように、汎用シャドウイングをサポートするように構成さ
れたプロセス制御機器の第１のセットと、事前構成されたシャドウイングを利用するように構成されたプロセス制御機器の第２のセットとを含み得る。
【００４４】
図２は、プロセス制御システム内の事前構成されたシャドウイングのためのアーキテクチャまたはシステム１５０の例を描画するブロック図である。一実施形態では、例示の事前構成されたシャドウイングアーキテクチャまたはシステム１５０は、図１のプロセスプラント５で実施され得、例証を容易にすること（及び限定しないこと）を目的として、図１を同時に参照して以下で説明される。
【００４５】
図２に示されるように、シャドウイング機器を事前構成するための例示のアーキテクチャ１５０は、シャドウイングされた機器１５２と、シャドウイング機器１５５と、１つ以上の構成データベース１５８とを含む。図２では、シャドウイングされた機器１５２は、安全性コントローラとして描画され、シャドウイング機器１５５は、プロセスコントローラとして描画されているが、しかしながら、シャドウイングされた機器１５２及びシャドウイング機器１５５の各々が、任意の所望のプロセス制御機器、例えばプロセスコントローラ、フィールド機器、Ｉ／Ｏ機器、安全性コントローラ、安全性ロジックソルバ、分離ソフトウェアモジュール等であってもよいことが理解される。１つ以上の構成データベース１５８（例えば、図１に示された構成データベース８２）は、その内部に、シャドウイングされた機器１５２及びシャドウイング機器１５５のためのそれぞれの構成１６２ａ、１６５ａを格納する。構成１６２ａ、１６５ａは、例えばユーザまたは制御技術者によって、構成アプリケーション８１等の構成ツールを用いることによって、事前定義される。具体的には、構成１６２ａ、１６５ａは、シャドウイングされた機器１５２及びシャドウイング機器１５５がプロセスプラント５内部でオンライン動作を行う前に、定義されて１つ以上の構成データベース１５８内部に格納される。図１の構成データベース８２に類似して、図２の１つ以上の構成データベース１５８は、解釈を容易にすること（及び限定しないこと）を目的として、本明細書においては単数形を用いて言及されることに留意されたい。
【００４６】
安全性コントローラまたはシャドウイングされた機器１５２の構成１６２ａは、例えば安全性制御モジュール構成または定義ＳＣＭを含むように定義または構成される。このように、安全性コントローラ１５２の構成１６２ａが、ホスト安全性コントローラ１５２（参照番号１６２ｂによって表される）内にダウンロードされると、安全性制御モジュール定義ＳＣＭは、実行可能な安全性制御モジュール１６２ｃ内にインスタンス化され、それによって、オンラインまたはリアルタイム動作中、安全性コントローラ１５２が、実行している安全性制御モジュール１６２ｃに従って動作するようにされる。
【００４７】
事前定義され、構成データベース１５８内に格納されたプロセスコントローラまたはシャドウイング機器１５５の構成１６５ａは、プロセスコントローラ／シャドウイング機器１５５のリアルタイムの属性及び挙動の定義、例えば、定義ＰＣＭのプロセス制御モジュール構成を含む。加えて、プロセスコントローラ／シャドウイング機器１５５の構成１６５ａはまた、シャドウイング機器１５５のシャドウイングレスポンシビリティの事前構成された定義を含むかまたは参照する。すなわち、プロセスコントローラ／０機器１５５の構成１６５ａは、シャドウイング機器１５５がオンライン動作中にシャドウイングする制御オブジェクトの構成を含むかまたは参照し、この場合、シャドウイングされる制御オブジェクトの構成もまた、構成データベース１５８内に格納される。図２の例示のアーキテクチャ１５０に特に示されるように、シャドウイング機器１５５の構成１６５ａは、そのリアルタイムまたはオンライン動作中にプロセスコントローラ／シャドウイング機器１５５によってシャドウイングされる安全性制御モジュール構成または定義ＳＣＭの指標１７０ａを含む。実施において、ＳＣＭ指標１７０ａは、安全性制御モジュール定義ＳＣＭの選択された部分のコピーまたは他の表現（もしくはそれに対するポインタ、または類似の
もの）を含む。代替的に、ＳＣＭ指標１７０ａは、安全性制御モジュール定義ＳＣＭの選択された部分のコピーまたは他の表現（もしくはそれに対するポインタ、または類似のもの）を含む。しかし、有意には、シャドウイングされる安全性制御モジュール定義ＳＣＭの指標１７０ａは、安全性制御モジュールＳＣＭによって利用され、プロセスコントローラ／シャドウイング機器２０５によってシャドウイングされるデータ構造及びデータ型の定義（例えば、フォーマット、構文、値等）を示す。
【００４８】
プロセスコントローラＰＣＭの構成１６５ａは、ホストプロセスコントローラ１５５内にダウンロードされ（参照番号１６５ｂによって表される）、実行可能なプロセス制御モジュール１６５ｃにインスタンス化され、それによって、プロセスコントローラ１５５が、実行しているＰＣＭ１６５ｃに従って動作するようにされる。加えて、ＰＣＭ構成１６５ｂのダウンロードと併せて、安全性制御モジュール定義ＳＣＭまたはＰＣＭ構成において１７０ａで示されるその一部もまた、シャドウイング機器１５５にダウンロードされ、参照番号１７０ｂによって表される。定義１７０ｂの受信されたＳＣＭ構成に基づいて、安全性制御モジュール１６２ｃのシャドウ１７０ｃは、シャドウイング機器１５５においてインスタンス化され、それによって、シャドウイング機器１５５のオンラインまたはリアルタイム動作中、シャドウイング機器１５５で実行しているシャドウ安全性制御モジュール１７０ｃは、シャドウイングされた機器１５２で実行しているインスタンス化された安全性制御モジュールＳＣＭ１６２ｃによって受信され、生成され、及び／またはさもなければ観測されたリアルタイムまたは動的データを理解し、ミラーリングし、提供することが可能である（図２において参照番号１７２で表される）。例えば、シャドウイング機器１５５におけるシャドウ安全性制御モジュール１７０ｃは、安全性制御モジュールＳＣＭ１６２ｃによって直接観測されたミラーリングされたデータを、ユーザインターフェース、他の機器、他の機能ブロック、及び／またはプロセスプラント５内部のそのようなデータの他のコンシューマ１７５に提供し得る。
【００４９】
このように、事前構成されたシャドウイングアーキテクチャ１５０において、シャドウイングされた機器１５２、シャドウイング機器１５５、及び構成データベース１５８間での高度な結合が必要とされる。特に、制御オブジェクト構成及び定義の知識（利用されたデータ型）及びいずれの特定の機器がいずれの他の特定の機器をシャドウイングするべきかに関する知識は、事前に定義され構成されなければならない。すなわち、シャドウイング機器１５５の構成は、オンライン動作中にシャドウイングされるべき制御オブジェクトの構成を示すように定義されかつ構成される。
【００５０】
一方、本明細書で説明された新規のシャドウイング手法、方法、システム、装置及び機器を用いて、シャドウイングされた機器及びシャドウイング機器は、構成中に切り離され、それによって、シャドウイング機器が、シャドウイングされるべき制御オブジェクト及びそれらのそれぞれの構成に関する事前知識によって構成される、及び／または事前知識を有する必要がない。さらに、本明細書で説明された新規のシャドウイング手法、方法、システム、装置及び機器は、シャドウイングされた機器によって利用されたデータ型の事前知識（例えば、構成時間における知識）を必要としない。
【００５１】
例証のために、図３は、プロセス制御システム内の汎用シャドウイングのための例示のアーキテクチャまたはシステム２００を描画するブロック図を含む。汎用シャドウイングアーキテクチャまたはシステム２００は、本明細書で述べられた新規の汎用シャドウイング手法のうちのいずれか１つ以上をサポートし得る。一例では、アーキテクチャ２００は、図１のプロセスプラント５に組み込まれ、本明細書で述べられた新規の汎用シャドウイング手法のうちのいずれか１つ以上を行う。しかし、一般的に言えば、アーキテクチャ２００は、任意のプロセスプラントの任意のプロセス制御システム内における、例えば、プロセスプラントの１つ以上の分散型制御システム（ＤＣＳ）、安全計装システム（ＳＩＳ
）、及び／またはプログラマブルロジックコントローラ（ＰＬＣ）等における汎用シャドウイングのために利用され得る。
【００５２】
図３に描画されるように、プロセス制御システムまたはプラントのための例示の汎用シャドウイングアーキテクチャ２００は、シャドウイングされた機器２０２と、シャドウイング機器２０５と、１つ以上の構成データベース２０８とを含む。シャドウイングされた機器２０２及びシャドウイング機器２０５は、任意の所望のプロセス制御機器、例えばプロセスコントローラ、フィールド機器、Ｉ／Ｏ機器、安全性コントローラ、安全性ロジックソルバ、分離型ソフトウェアモジュール等であってもよい。１つ以上の構成データベース２０８は、例えば図１に示された構成データベース８２、またはさまざまなプロセス制御機材及び／または機器の構成が格納されている何らかの他のデータベースであってもよい。いくつかの実施では、汎用シャドウイングアーキテクチャ２００に含まれた１つ以上の構成データベース２０８の少なくとも一部、及び事前構成されたシャドウイングアーキテクチャ１５０の構成データベース１５８の少なくとも一部は、共通の統合データベースであってもよいが、必要とされるわけではない。簡単に述べるために、かつ限定を目的とせず、図１のプロセスプラント５を同時に参照して、汎用シャドウイングアーキテクチャまたはシステム２００が以下に述べられる。加えて、図１の構成データベース８２に類似して、図３の１つ以上の構成データベース２０８は、解釈を容易にすること（及び限定しないこと）を目的として、本明細書においては単数形を用いて言及されることに留意されたい。
【００５３】
図２の事前構成されたシャドウイングアーキテクチャ１５０に類似して、汎用シャドウイングアーキテクチャ２００では、構成データベース２０８は、シャドウイングされた機器２０２の構成２１２ａを格納し、この場合、構成２１２ａは、シャドウイングされた機器２０２がどのようにしてオンライン時に動作するかを定義する。典型的には、シャドウイングされた機器２０２の構成２１２ａは、制御技術者によって構成ツール、例えば構成アプリケーション８１を用いて事前定義され、構成データベース２０８に格納され、構成２１２ａは、シャドウイングされた機器２０２がプロセスプラント５内部でオンライン動作を行う前に、定義され、構成データベース２０８内部に格納される。図３に示されるとおり、シャドウイングされた機器２０２の例示の構成２１２ａは、多数の特定の機能ブロックＦＢ１〜ＦＢｎの特定の配置を含む制御モジュールＣＭの定義または構成を含む。制御モジュール構成２１２ａは、シャドウイングされた機器２０２（参照番号２１２ｂによって表される）にダウンロードされ、シャドウイングされた機器２０２において実行可能な制御モジュール２１２ｃにインスタンス化され、それによって、シャドウイングされた機器２０２が、プロセスプラント５内でのそのオンラインまたはリアルタイム動作中、実行している制御モジュール２１２ｃに従って動作するようにされる。シャドウイングされた機器２０２は、例えばプロセスコントローラ、安全性コントローラ、フィールド機器、または他のプロセス制御機器であってもよい。
【００５４】
しかし、図２の事前構成されたシャドウイングアーキテクチャ１５０とは異なり、汎用シャドウイングアーキテクチャ２００においては、構成データベース２０８と、特にシャドウイング機器２０５の構成２１０ａとは、いずれのソース制御オブジェクト（例えば、いずれのソース制御モジュール及び／またはソース機能ブロック）が、シャドウイング機器２０５によってシャドウイングされるべきかの指標を格納しない。すなわち、シャドウイング機器２０５とシャドウイングされた機器２０２との間の関係は、事前構成されず、シャドウイング機器２０５は、シャドウイングされた機器２０２またはその内部のソース制御オブジェクトの構成の任意の指標によって構成されない。代わりに、シャドウイング機器２０５によってシャドウイングされるそのようなソース制御オブジェクトのシャドウイングレスポンシビリティ及びそれぞれの構成は、上記の関係に関して事前定義された指標または定義が構成されて構成データベース２０８に格納される必要なく、かつ構成デー
タベース２０８が、シャドウイングされた機器２０２とシャドウイング機器２０５との間の媒介の役割を果たすことを必要とせず、シャドウイング機器２０５によって自動的に発見される。具体的には、図３に示されるように、他の非シャドウイング属性及び機器２０５のオンライン挙動を定義するシャドウイング機器２０５の構成２１０ａは、構成データベース２０８に格納され、シャドウイング機器２０５内にダウンロードされ（参照番号２１０ｂ）、インスタンス化される（参照番号２１０ｃ）。しかしながら、特にシャドウイング機器２０５の非シャドウイング挙動を定義する構成２１０ａは、シャドウイング機器２０５のシャドウイング目標の任意の指標を含む必要がなく、ほとんどのケースでは全く含まない。すなわち、シャドウイング機器２０５の構成２１０ａは、シャドウイング機器２０５がオンライン動作中にシャドウイングする制御オブジェクトのソースの任意の指標及び／または定義を必要としない−及びほとんどのケースでは、全く含まない。むしろ、以下に説明されるように、シャドウイング機器２０５のシャドウイングレスポンシビリティは、シャドウイング機器２０５によって、汎用シャドウイング要素２１５を利用して発見される。
【００５５】
図３に示されるように、シャドウイング機器２０５は、汎用シャドウイング部２１５と、汎用シャドウイング２１８を含まない部分とを含む。汎用シャドウイング部２１５は、シャドウマネージャ２２０とシャドウライブラリ２２２とを含む。一実施形態では、シャドウマネージャ２２０及び／またはシャドウライブラリ２２２の定義または構成は、シャドウイング機器２０５の構成２１０ａによって特定される。別の実施形態では、シャドウイング機器２０５は、シャドウマネージャ２２０及び／またはシャドウライブラリ２２２によって（例えば、製造元によって、またはフィールド９２内にシャドウイング機器２０５を設置する前のある時点で）事前構成される。シャドウマネージャ２２０は、例えば、シャドウイング機器２０５に含まれ、シャドウイング機器２０５に含まれた１つ以上のプロセッサによって実行可能な１つ以上の有形の非一時的メモリ上に格納されたコンピュータ実行可能命令のセットを含み得る。例えば、シャドウマネージャ２２０は、シャドウイング機器２０５の構成２１０ｂが格納されたメモリ上に格納され得、シャドウイング機器２０５のインスタンス化された構成２１０ｃを実行する１つ以上のプロセッサによって実行され得る。一般的に言えば、シャドウマネージャ２２０は、シャドウイング機器２０５でシャドウイングされるソース制御オブジェクトの構成（またはその一部）を発見しかつ管理する。例えば、シャドウマネージャ２２０は、シャドウイング機器２０５によってシャドウイングされるソース制御モジュール及び／またはソース機能ブロック定義に加えて、その中で利用されるそれぞれのデータ型を発見する。
【００５６】
発見された情報は、シャドウイング機器２０５に対応するシャドウライブラリ２２２に格納される。シャドウライブラリ２２２は、シャドウイング機器２０５に含まれるか、またはシャドウイング機器２０５にアクセス可能である（例えばローカルに、及び／または遠隔して）一方または非一時的有形メモリまたはデータ記憶機器を含み得る。１つの実施では、シャドウライブラリ２２２は、シャドウイング機器２０５のダウンロードされた構成２１０ｂもまた格納される１つ以上のメモリ上に格納される。図３に図示されるように、シャドウライブラリ２２２は、シャドウモジュール定義ＳＭ１〜ＳＭｎの数及びシャドウ機能ブロック定義ＳＢ１〜ＳＢｍの数を格納する。シャドウモジュール定義ＳＭ１〜ＳＭｎのうちの少なくともいくつかは、シャドウライブラリ２２２内部で、特定の数のシャドウ機能ブロックの特定の配置であるとして定義され得る。
【００５７】
解釈を容易にするために、シャドウイングされたライブラリ２２２に格納されたシャドウモジュール定義ＳＭ１〜ＳＭｎ及びシャドウ機能ブロック定義ＳＢ１〜ＳＢｍは、本明細書においては概して「署名」と称され、それによって、シャドウ定義を、それらのソースまたは一次構成された定義と区別する。このように、例えば、シャドウイング機器２０５におけるシャドウ制御モジュール定義ＳＭｘは、本明細書においては、作成されてシス
テム構成データベース２０８内に格納され、シャドウイングされた機器２０２にインスタンス化された、対応するソース制御モジュール定義ＣＭｘの「署名」と称される。このように、シャドウモジュール定義ＳＭ１〜ＳＭｎは、本明細書においては、同義的に、「シャドウモジュールの署名ＳＭ１〜ＳＭｎ」または「シャドウ制御モジュールの署名ＳＭ１〜ＳＭｎ」と称され、シャドウ機能ブロック定義ＳＢ１〜ＳＢｍは、本明細書においては、同義的に、「シャドウブロックの署名ＳＢ１〜ＳＢｍ」または「シャドウ機能ブロックの署名ＳＢ１〜ＳＢｍ」と称される。したがって、シャドウライブラリ２２２は、本明細書においては、同義的に「署名ライブラリ２２２」、「署名２２２のライブラリ」、または「シャドウ署名２２２のライブラリ」と称される。加えて、シャドウライブラリ２２２は、本開示の以下のセクションにおいてさらに説明されるように、署名以外の他の要素、定義、及び構成を格納してもよい。
【００５８】
いずれにしても、シャドウイングされるいくつかのソース制御オブジェクトに関しては、シャドウイング機器２０５におけるソース制御オブジェクトの署名と、シャドウイングされた機器２０２におけるソース制御オブジェクトの本来の構成とは、同等であってもよい。他の制御オブジェクトについては、シャドウイング機器２０５におけるソース制御オブジェクトの署名と、シャドウイング機器２０２におけるソース制御オブジェクトの本来の構成とは、同等でなくてもよく、例えば、ソース制御オブジェクトの署名は、ソース制御オブジェクトの本来の構成のサブセットのみを定義するかまたは示し得る。しかしながら、ソース制御オブジェクトの署名は、少なくともソース制御オブジェクトの本来の構成と合致し、ゆえに、リアルタイムまたはオンライン動作中シャドウイングされた機器２０２で実行されるソース制御オブジェクトによって観測されたデータの少なくとも一部をシャドウイングするために、シャドウイング機器２０５に必要である十分な構造、データ型、及び他の情報を定義する。
【００５９】
一般的に言えば、シャドウマネージャ２２０は、シャドウライブラリ２２２にアクセスし、シャドウ制御オブジェクトの署名を得て（例えば、シャドウ制御モジュールまたはシャドウ機能ブロックの）、かつシャドウイング機器２０５において署名を実行可能なものにインスタンス化する。例えば、インスタンス化されたソース制御モジュール２１２ｃをシャドウイングするために、シャドウマネージャ２２０は、シャドウライブラリ２２２にアクセスして、インスタンス化されたソース制御モジュール２１２ｃの署名２１２ｄを得、シャドウイング機器２０５において、署名２１２ｄを実行可能なシャドウ制御モジュール２１２ｅにインスタンス化し、適切なデータ構造、データ型、データ値等によって署名２１２ｄをポピュレートすることを含む。いくつかのソース制御オブジェクトについては、シャドウマネージャ２２０は、シャドウイングされた機器２０２に問い合わせて、オンラインシャドウイングのための署名２１２ｄ、例えば、モジュール内部の特定のオブジェクト、データ値、データ型、データ構造等をポピュレートするために必要であり得る追加の情報を得る。これらのソース制御オブジェクトについては、シャドウイングされた機器２０２は、要求された情報を含むクエリ応答を返し、この場合、応答は、シャドウイング機器２０５によって稼働されるスクリプト、シャドウイング機器２０５によって解析されるＸＭＬファイル、及び／または、例えばシャドウイング機器２０５の製造元に基づいて選択されるか、判定されるか、または必要とされ得るいくつかの他の機構の形式を取り得る。シャドウイング機器２０５は、クエリ応答を処理し、署名２１２ｄをポピュレートし、それに応じて、シャドウ制御オブジェクト２１２ｅをインスタンス化する。図３では、シャドウマネージャ２２０とシャドウイングされた機器２０２との間のダイアログまたは相互作用は、参照番号２２５によって表される。
【００６０】
同様に、署名がシャドウライブラリ２２２内で見つからないかまたはその中に格納されていないソース制御オブジェクトは、シャドウマネージャ２２０が、それらのソース制御オブジェクトをシャドウイングするために必要とされる情報、例えば、完全または部分的
な構成定義、特定の機能ブロック、データ構造、データ型、データ値等について、シャドウイングされた機器２０２に問い合わせし得る。シャドウイングされた機器２０２のクエリ応答は、シャドウイング機器２０５によって稼働されるスクリプト、シャドウイング機器２０５によって解析されるＸＭＬファイル、及び／または例えばシャドウイング機器２０５の製造元によって判定されるかまたは必要とされ得るいくつかの他の機構の形式を取り得る。シャドウマネージャ２２０は、クエリ応答を処理し、応答に含まれる情報に基づいて、シャドウマネージャ２２０は、ソース制御オブジェクトのための新しい署名を作成してシャドウライブラリ２２２内にそれらを格納し、インスタンス化のために作成された署名をポピュレートし、それによって、シャドウイング機器２０２のリアルタイムまたはオンライン動作中に、インスタンス化されたソース制御オブジェクトをシャドウイングする。図３では、シャドウマネージャ２２０とシャドウイングされた機器２０２との間のダイアログまたは相互作用は、参照番号２２５によって表される。
【００６１】
したがって、制御モジュール２１２に関しては、リアルタイムまたはオンライン動作中、シャドウイング機器２０５は、シャドウ制御モジュール２１２ｅを実行させ、それによって、シャドウイング機器２０５がプロセスプラント５内のシャドウイングされた機器２０２でのオンライン動作中、ソース制御モジュール２１２ｃによって受信され、生成され、及び／またはさもなければ観測されたリアルタイムまたは動的データを得て、理解し、コンシューマに提供することを可能にする。すなわち、リアルタイムまたはオンライン動作中、シャドウイング機器２０５は、シャドウ制御モジュール２１２ｅの実行を介して、オンライン動作に、インスタンス化されたソース制御モジュール２１２ｃによって観測された選択された動的データをミラーリングし、データのコンシューマである他の機器及び／またはアプリケーションに、ミラーリングされた動的データを提供する。シャドウ制御モジュール２１２ｅによるオンラインソース制御オブジェクト２１２ｃのオンラインミラーリングまたはシャドウイングは、図３において参照番号２２８によって示される。
【００６２】
このように、一般的に言えば、シャドウマネージャ２２０は、シャドウイング機器２０５によってシャドウイングされるソース制御オブジェクトの署名を有する（例えば、ソース制御モジュール署名を有する、及び／またはソース機能ブロック署名を有する）シャドウライブラリ２２２を発見し（参照番号２２５）ポピュレートする。シャドウイング機器２０２によってシャドウイングされたインスタンス化されたソース制御オブジェクトは、例えば同じかまたは異なるシャドウイングされた機器で実行され得る。すなわち、シャドウイング機器２０２は、異なるホスト機器に常駐するシャドウソース制御オブジェクトであってもよい。いくつかの実施では、シャドウイング機器２０５は、互いに独立したソース制御オブジェクトをシャドウイングし、例えば、シャドウイング機器２０５は、第１のソース制御モジュールをシャドウイングし得、また別個の違った第２のソース制御モジュールをシャドウイングし得、そのインスタンス化は、同じかまたは異なるシャドウイングされた機器内で実行し得る。加えてまたは代替的に、シャドウイング機器２０５は、同じシャドウイングされた機器２０２内部の別個のモジュールで稼働しているソース制御オブジェクト（例えば、ソース機能ブロック）をシャドウイングし得る。いくつかのシナリオでは、シャドウイング機器２０５は、ソース制御モジュールをその全体においてシャドウイングし、他のシナリオでは、シャドウイング機器２０５は、ソース制御モジュールに含まれるいくつかではあるがすべてではないソース機能ブロックをシャドウイングする。
【００６３】
このように、シャドウマネージャ２２０は、既知の要素のシャドウライブラリ２２２を構築し、これは、ソース機能ブロックの署名または定義、ソース制御モジュールの署名または定義に加えて、既知のデータ型、データ構造、データ値、データ構文、及びその内部で用いられた他のデータ定義を含み得る。いくつかの実施では、シャドウライブラリ２２２は、ソース制御オブジェクト及びデータ型の発見を生じさせ得、そこから発見された情報が構築され得るプリミティブコンポーネントのセット２３０によって事前にポピュレー
トされる。例えば、プリミティブコンポーネントのセット２３０は、単純データ型及びそれらの特性、例えば浮動小数点及び／またはステータス、整数値及び／またはステータス等を定義し得る。これらのプリミティブコンポーネント２３０は、他のより複合型のデータ型を開発または発見するための基礎として利用され得る。これに応じて、シャドウマネージャ２２０は、複合データ型が発見され２２５、定義されることが必要とされると、プリミティブコンポーネント２３０の組み合わせを利用して、新しい複合データ型を定義し得る。新しい複合データ型を定義する複合コンポーネント２３２は、シャドウライブラリ２２２に格納され得、さらに他の署名及びデータ型の作成、定義、及び／またはポピュレーティングで用いるための資源として利用可能であり得る。このように、シャドウイング機器２０５にはこれまで不明であった任意の新しい要素の定義は、発見プロセス２２５中に（例えば、構成データベース２０８の介在または介入なしに）完全に発見及び定義され２３０、２３２、シャドウライブラリ２２２に加えられ得る。このように、かつ有利には、汎用シャドウイングアーキテクチャまたはシステム２００によるシャドウイング機器２０５の構成（シャドウイングレスポンシビリティに関する）は、シャドウイングされた機器２０２の構成とは無関係である。結果として、汎用シャドウイングをサポートする任意のシャドウイングされた機器２０２は、汎用シャドウイングをサポートする任意のシャドウイング機器２０５によってシャドウイングされ得、またシャドウイングのペアリングは、例えば、シャドウイングされた機器２０２の後に機器２０２、２０５によって自動的に発見及び実施され得、シャドウイング機器２０５は、それらの非シャドウイングレスポンシビリティによってそれぞれ構成されており、一方で、いくつかのシナリオでは、機器２０２、２０５はオンラインで動作している。
【００６４】
いずれにしても、以下に説明されるように、シャドウイングレスポンシビリティの発見２２５は、自動的にシャドウイング機器２０５によって始動され得、及び／または発見プロセスは、シャドウイングされた機器２０２によって自動的に始動され得る。
【００６５】
一例のシナリオでは、発見２２５は、シャドウイングされた機器２０２によって自動的に始動される。具体的には、この例のシナリオでは、構成データベース２０８内に格納されたシャドウイングされた機器２０２の構成２１２ａは、構成２１２ａに含まれるいずれの特定の制御オブジェクトがシャドウイングされるべきであるかの指標を含み（例えば、１つ以上の制御オブジェクトの自己記述）、任意に、いずれの特定の機器がシャドウイングを行うかの指標を含む。一実施形態では、構成データベース２０８に格納されたシャドウイングされた機器２０２の構成２１２ａは、その内部に埋め込みスクリプト（図示せず）を含み、これは、シャドウイングされた機器２０２においてダウンロードされかつインスタンス化されると（参照番号２１２ｂ、２１２ｃ）、自動的に実行して自己記述を生成し、シャドウイング機器２０５に自己記述を伝送する。別の実施形態では、構成２１２ａは、シャドウイングされた機器２０２において解析され、それによって、シャドウイングされた機器２０２において自己記述を生成するＸＭＬまたは他のタイプのファイルを含む。埋め込みスクリプト及び／またはＸＭＬファイル以外の他の好適なタイプの機構は、説明されたように利用されてもよい。一般的に言えば、自己記述生成が構成２１２ａのダウンロードを介して実施される機構は、シャドウイング機器２０５の製造元に基づいて／従ってもよい。このように、その構成２１２ａ内部にシャドウイング自己記述を含むことに少なくとも起因して、シャドウイングされた機器２０２は、特に汎用シャドウイングをサポートするように構成される。
【００６６】
シャドウイングされるべき制御オブジェクト２１２ｃの自己記述は、任意の好適な形式を取り得る。例えば、自己記述は、制御オブジェクト２１２ｃの全構成２１２ｂの指標を含んでもよく、または全構成２１２ｂのサブセットのみの指標のみを含んでもよい。一実施形態では、自己記述は、全構成２１２ｂを記述しないが、新しくダウンロードされた構成２１２ｂと、及びダウンロード時に、シャドウイングされた機器２０２によって利用さ
れている構成との間の変化のみを示す。加えてまたは代替的に、自己記述は、制御オブジェクト２１２ｃによって生成及び／または受信されたデータのサブセットの指標、例えば、シャドウイング機器２０５からそのようなデータを得るユーザインターフェース及び／または他のコンシューマによって必要とされる特定のデータ（例えば、特定のリアルタイムまたは動的データ）のみの指標を含む。構成２１２ｂのサブセットの指標をシャドウイング機器２０５に送信することは、有利には、プロセス制御システム内部のメッセージトラフィックを低減させ得る。
【００６７】
いずれにしても、この例示のシナリオでは、シャドウイングされた機器２０２において構成２１２ａがダウンロード及びインスタンス化されると（例えば、参照番号２１２ｂ、２１２ｃによって示されるとおり）、シャドウイングされた機器２０２は、シャドウイング機器２０５に対して、シャドウイングされるべきその特定の制御オブジェクト２１２ｃを自己記述する。例えば、シャドウイング機器２０５が、シャドウイングされた機器２０２で特定された場合、シャドウイングされた機器２０２は、その自己記述を含む直接通信をシャドウイング機器２０５に送信し得る。別の例では、シャドウイングされた機器２０２は、その自己記述の指標を、図３ではシャドウイング機器２０５を含む近接する候補のシャドウイング機器に放送し得る。
【００６８】
いくつかの状況では、シャドウイングされた機器２０２は、他の機器に、そのシャドウイングサービス及び／またはその自己記述されたシャドウイングされた制御オブジェクトに対するその要望を周期的にまたはときどき放送するかまたは直接通信することによって、発見２２５を自動的に始動させる。自己記述は、上述されたものと同様に、シャドウイングされた制御オブジェクト２１２ｃの全構成２１２ｂを示し得るか、またはシャドウイングされた制御オブジェクト２１２ｃの全構成２１２ｂのサブセットを示し得る。
【００６９】
シャドウイング機器２０５は、シャドウイングされた機器２０２から受信された自己記述を、例えばプリミティブコンポーネントのセット２３０及び／またはライブラリ２２２内に格納された他の要素２３２を用いることによって処理する。いくつかのケースでは、自己記述を処理することは、新しいデータ型及び／または新しい署名を生成または作成することを含む。いくつかのケースでは、自己記述を処理することは、既存のデータ型及び／または既存の署名を更新することを含む。いずれにしても、シャドウイング機器２０５において自己記述を処理すると、有効なまたは検証済のデータ型及び／または署名は、シャドウライブラリ２０５に格納され（例えば、新しいデータ型及び／または署名として、及び／または更新されたデータ型及び／または署名として）、有効／検証済データ型及び署名は、シャドウイング機器２０５において、シャドウイング機器２０５のオンライン動作中に実行されるソース制御オブジェクトのシャドウをインスタンス化するために利用される。
【００７０】
別の例示のシナリオでは、発見２２５は、シャドウイング機器２０５によって自動的に始動される。例えば、シャドウイング機器２０５は、シャドウイング機器２０５が現在シャドウイングしている（これは、図３ではシャドウイングされた機器２０２を含む）ソース制御オブジェクトを実行している機器に、シャドウイングされた制御オブジェクトの構成に対するあらゆる更新、及び／またはシャドウイングされるべき他のソース制御オブジェクトの構成を得ることを、周期的に及び／またはときどきポーリングするか、または要求を行う。一実施形態では、シャドウイング機器２０５は、シャドウイングされた機器２０２に、例えばシャドウイング機器２０５の初期化時、更新されたシャドウイング機器２０５の構成を受信したとき等に、シャドウイングされた機器２０２で実行しているシャドウイングされた制御オブジェクトの更新を直接要求する。加えてまたは代替的に、シャドウイング機器２０５は、隣接した機器に、シャドウイング機器２０５がシャドウイングサービスを提供するために利用可能であることを周期的に及び／またはときどき広告または
放送し得る。シャドウイングされた機器２０２は、シャドウイング機器２０５のポーリング、広告、放送、及び／または直接要求に対して、もしあれば、例えば、上述のような方法で、シャドウイングされ、及び／または更新されるべきであるソース制御オブジェクトの自己記述で応答する。
【００７１】
さらに別の例示のシナリオでは、発見２２５は、手動で始動される。例えば、ユーザコマンドは、シャドウイングされた機器２０２に、発見２０２を始動させるよう命令し得るか、またはユーザコマンドは、シャドウイング機器２０５に、発見２０５を始動させるよう命令し得る。ユーザによって始動された発見２０２は、選択された状況のために、例えば試運転中に、及び／またはシャドウイングされた機器２０２の、またはシャドウイング機器２０５のリブート時に、予約され得る。
【００７２】
このように、図２の事前に構成されたアーキテクチャ１５０とは異なり、汎用シャドウイングアーキテクチャまたはシステム２００の発見機構２２５は、リアルタイム動作中にシャドウイングされた機器２０２とシャドウイング機器２０５との間で転送されるデータの構造及びタイプ（例えば、シャドウイング機器２０５によってミラーリングまたはシャドウイングされた動的データについて）、例えば、オンライン動作中にシャドウイング機器２０５によってミラーリングまたはシャドウイングされる動的データについて、自動的に発見し定義する。
【００７３】
しかしながら、及び有意には、汎用シャドウイングアーキテクチャ２００は、どのようにしてシャドウ制御モジュールまたはオブジェクト２１２ｅが、シャドウイング機器２０５において、シャドウ制御モジュール２１２ｅによって提供されたミラーリングされたデータのコンシューマに対して現れるかを限定しない。例えば、いくつかの制御オブジェクトについては、シャドウイング機器２０５は、ミラーリングされたデータを、その本来のフォーマットで、例えばインスタンス化された制御オブジェクト２１２ｃの構成２１２ｂによって定義されたデータフォーマットで表示及び／または提供する。他の制御オブジェクトについては、シャドウイング機器２０５は、ミラーリングされたデータを、インスタンス化された制御オブジェクト２１２ｃの構成２１２ｂによって定義されたようなフォーマット以外のフォーマットで表示及び／または提供する。例えば、シャドウイング機器２０５は、ミラーリングされたデータを、シャドウイング機器２０５が常駐するホストプロセス制御システムで利用されるフォーマット、例えば、ミラーリングされたデータのコンシューマによって利用されるフォーマットで表示及び／または提供する。したがって、汎用シャドウイングシステム２００は、有利には、ソース制御オブジェクト及び／またはソース機器がフォーマットに依存しないことを可能にする。すなわち、特定のデータフォーマットを用いる同じソース機器は、事前構成または再度構成される必要があるソース機器かあるいはコンシューマ機器のいずれもなしに、異なるデータフォーマットを利用するさまざまなプロセス制御システムに容易に含まれ得るが、これは、汎用シャドウイング機構２００が、ソース機器の本来のデータフォーマットを自動的に発見し（かつ、その本来のフォーマットにおいてソース機器と通信することが可能であり）、同時に、他の機器及びコンシューマによって理解されるデータフォーマットを用いるプロセス制御システム内部の他の機器及びコンシューマによって、ソース機器から生じたミラーリングされたデータを提示するためである。汎用シャドウイング機構２００によって、ソース機器は、それが利用されるプロセス制御システムによって利用されるデータフォーマット及び構造の知識に気づくかまたはそれを有している必要がなく、その反対も同様である。
【００７４】
したがって、図３の制御オブジェクト２１２の構成を再度見ると、プロセスプラント５のリアルタイムまたはオンライン動作中、シャドウイング機器２０５において、シャドウイングされた制御オブジェクトの署名が発見され（参照番号２２５）、格納され（参照番号２１２ｄ）、インスタンス化された（参照番号２１２ｅ）後、シャドウイング機器２０
５は、インスタンス化されたシャドウ制御モジュール２１２ｅを実行し、それによって、シャドウイング機器２０５が、プロセスプラント５内でのそのオンライン動作中に、シャドウイングされた制御モジュール２１２ｃによって受信され、及び／または生成されたリアルタイムまたは動的データのミラー（参照番号２２８）を得て、理解し、他の機器、機能ブロック、アプリケーション、及び／またはコンシューマ（参照番号２３５）に提供することを可能にする。すなわち、リアルタイムまたはオンライン動作中、シャドウイング機器２０５は、シャドウイング制御モジュール２１２ｅの実行を介して、他の機器に、機能ブロック、及び／またはアプリケーション２３５、そのオンライン動作中にシャドウイングされた制御モジュール２１２ｅによって直接観測された選択された動的データ２２８のコピーを提供する。
【００７５】
図４は、制御オブジェクトの汎用シャドウイングのための例示の方法３００のフロー図を描画する。一実施形態では、方法３００は、図３のシャドウイング機器２０５によって行われる。一例では、方法３００の少なくとも一部は、シャドウイング機器２０５のシャドウマネージャ２２０によって行われる。しかし、一般的に言えば、方法３００は、図３の汎用シャドウイングアーキテクチャ２００と併せて、及び／または本明細書で説明された汎用シャドウイングのための新規のシステム、方法、装置、機器、及び／または手法の任意の他の実施形態と併用して行われてもよい。説明を容易にするが、限定しないことを目的として、方法３００は、図１及び３を同時に参照して以下に説明される。
【００７６】
図４に図示されるように、ブロック３０２において、方法３００は、制御オブジェクトが（その全体かあるいはそれに対する１つ以上の変化及び／または変更において）シャドウイングされた機器、例えばシャドウイングされた機器２０２内にダウンロードされていることの指標を受信することを含む。制御オブジェクトが、シャドウイングされるべきオブジェクトである場合、制御オブジェクトは、本明細書においては概して「ソース制御オブジェクト」と称される。ソース制御オブジェクトは、例えば、特に配置され相互接続された複数の機能ブロックを備えるソース制御モジュール（例えば、図３の制御モジュール２１２ｂ）であってもよい。いくつかのシナリオでは、ソース制御オブジェクトは、１つ以上の制御モジュールの一部であってもよいソース機能ブロックであり得る。説明を容易にすること及び限定しないことを目的として、方法３００は、ソース機能ブロックに関して以下に説明される。
【００７７】
ソース機能ブロックがダウンロードされ、及び／または変更されたことの指標は、シャドウイングされた機器から、例えばシャドウイングされた機器２０２から受信され得る。ソース機能ブロックに対するダウンロード／変更の指標は、例えば、例えば先に説明されたような、シャドウイングされた機器２０２のダウンロード／変更の受信及び／またはインスタンス化のとき、シャドウイングされた機器２０２かあるいはシャドウイング機器２０５のいずれかによる、周期的な及び／または不定期なポーリング、要求、及び／または放送時に、手動コマンドの受信時等に、シャドウイングされた機器２０２からシャドウイング機器２０５に送信され得る。
【００７８】
ブロック３０５において、方法３００は、ソース機能ブロックの署名が利用可能であるか、既知であるか、または格納されているかを判断することを含む。例えば、シャドウイング機器２０５は、ソース機能ブロックの署名がシャドウライブラリ２２２に格納されているか否かを判断する。
【００７９】
ブロック３０５において、方法３００が、署名に対応するソース機能ブロックがシャドウライブラリ２２２に格納されていないと判断した場合（例えば、ブロック３０５の「いいえ」の脚）、方法３００は、機能ブロックの署名を作成し（ブロック３０８）、作成された機能ブロック署名を格納し得（ブロック３１０）、それによって、機能ブロック署名
がシャドウイング機器２０５にアクセス可能であるようにされる。例えば、作成された機能ブロック署名は、シャドウイング機器２０５に対してローカルであるかまたはそれと一体であり得るか、またはシャドウイング機器２０５にアクセス可能である１つ以上のローカル及び／または遠隔データ記憶機器（図示せず）に組み入れられ得るシャドウライブラリ２２２に格納されてもよい。
【００８０】
一実施形態では、ソース機能ブロックの署名を作成すること（ブロック３０８）は、シャドウライブラリ２２２によって提供されるかまたはその中に格納された１つ以上のプリミティブコンポーネント２３０を利用することによって、ソース機能ブロックの署名を作成することを含む。プリミティブコンポーネント２３０は、１つ以上のデータ構造、１つ以上のデータフォーマット、１つ以上のデータ値、１つ以上のデータ構文、１つ以上のマークアップ言語、及び／またはデータ型の任意の１つ以上の定義に対応し得、これらは概して単純データ型であり得る（しかし、必ずしもそうではない）。例えば、ライブラリ２２２に格納されたさまざまなプリミティブコンポーネントは、浮動小数点及び／またはステータス、整数値及び／またはステータスの署名、及び／または他の単純データ型の値及び／またはステータスを生成するように構成される。加えてまたは代替的に、ライブラリ２２２に格納されたさまざまなプリミティブコンポーネントは、１つ以上のマークアップ言語を読み取り、及び／または書き込み、それによって、利用されたデータ型を判断し得るように構成され、これは単純データ型であってもよい（しかし必ずしもそうではない）。したがって、ソース機能ブロック署名が１つ以上の複合データ型を利用するシナリオでは、ソース機能ブロックの署名を作成することは、ライブラリ２２２によって提供されたそれぞれのプリミティブコンポーネントを利用することによって、１つ以上の単純データ型に基づいて、１つ以上の複合データ型を発見することまたは作成することを含む。１つ以上の発見及び／または作成された複合データ型２３２は、それらが利用可能またはアクセス可能である、及び／または他の制御オブジェクト署名を定義するために利用され得るように、シャドウライブラリ２２２に格納され得る。いくつかの実施形態では、新しく発見された／作成された複合データ型２３２（例えば、「複合コンポーネント」）を生成するように構成されたそれぞれの機能、スクリプト、または等価物もまた、例えば、別の署名のための複合データ型の別のインスタンスの生成に利用するために、作成されてシャドウライブラリ２２２に格納され得る。
【００８１】
ブロック３０５において、方法３００が、ソース機能ブロックに対応する署名がシャドウライブラリ２２２内に格納されていると判断した場合（例えば、ブロック３０５「はい」の脚）、方法３００は、格納された署名を、ブロック３０２で受信されかつ示された署名と比較する（ブロック３１２）。２つの署名がマッチするかまたはさもなければ合致する場合（例えば、ブロック３１２の「はい」の脚）、ソース機能ブロックの格納された署名が、最新の署名、例えば、ブロック３０２において受信された指標によって示された署名と対照して検証される。
【００８２】
ブロック３１２において、方法３００が、ブロック３０２において示されたダウンロード／変更されたソース機能ブロックの格納された署名及び指標がマッチしないかまたは合致しないと判断した場合（例えば、ブロック３１２の「いいえ」の脚）、格納された署名は、受信された指標に基づいて更新または変更され（ブロック３１５）、更新された署名は、例えばシャドウライブラリ２２２内に格納される（ブロック３１８）。
【００８３】
いずれにしても、ソース機能ブロックの署名の作成、検証、または変更時（例えば、ブロック３１０、３１２、及び／または３１８を介して）、ソース機能ブロックの署名は、シャドウイング機器２０５においてインスタンス化され（ブロック３２０）、それによって、シャドウイング機器２０５において、シャドウイングされた機器２０２で実行されているインスタンス化されたソース機能ブロックをシャドウイングするために実行される（
ブロック３２２）。ソース機能ブロック（参照番号３２０）の署名をインスタンス化することは、ブロック３０２によって示された構成もしくは定義に基づいて署名をポピュレートすることを含み得、及び／またはシャドウイングされた機器２０２によってダイアログを始動させ、例えばポピュレーション情報（参照番号２２５）を得ることを含み得る。いずれにしても、インスタンス化されたソース機能ブロック（参照番号３２２）をシャドウイングする場合、ソース機能ブロックのシャドウイング２１２ｅは、シャドウイングまたはミラーリングされたリアルタイムまたは動的データ（参照番号２２８）及びインスタンス化されたソース機能ブロック２１２ｃによって受信され、生成され、及び／またはさもなければ観測された他の情報を、ユーザインターフェース、表示ビュー、及び／またはプロセス制御システム内部の他のそのようなデータコンシューマ２３５に提供する。
【００８４】
任意に、方法３００は、シャドウイング機器２０５とシャドウイングされた機器２０２との間の通信が十分に忠実である（図示せず）ことを検証することを含んでもよい。すなわち、方法３００は、シャドウイングされた機器２０２がシャドウイング機器２０５に通信可能にアクセス可能であることを検証することを含んでもよい。通信の損失が検出された場合、または通信の質が閾値を下回って劣化した場合、シャドウイング機器２０５は、機器２０２、２０５間の通信の損失または劣化を示すアラームまたはアラートを生成し得、アラームまたはアラートは、ユーザインターフェースにおいて提示される。シャドウイングされた機器２０２によって自然に生成された他のタイプのアラーム及び／またはアラートは、ユーザインターフェースでの提示及び／またはプロセス制御システム内の他の機能ブロック、モジュール、アプリケーション、及び／または機器への配信のために、シャドウイング機器２０５においてミラーリングされ得ることに留意されたい。このように、シャドウイング機器２０５及び／または特別なアラーム処理（例えば、異なるアラーム性、アラーム／アラート工程応答原理等）によって提供されるミラーリングされたアラーム及び／またはアラートデータの、受信側による任意のダイアログは、例えばソース制御オブジェクトのシャドウ２１２ｅによって定義されたようなシャドウイング機器２０５によって行われ得る。
【００８５】
任意に、方法３００は、シャドウライブラリ２２２に格納された署名及び他の要素の、それらのソース制御オブジェクト及び機器による同期、監査、及び／または検証精度を含み得る。例えば、周期的に、ときどき、及び／またはオンデマンドで、シャドウマネージャ２２０は、１つ以上のシャドウイングされた機器及び／またはソース制御オブジェクトによって同期、監査、または検証プロセスを始動させる。上記の同期、監査、及び／または検証プロセスは、シャドウイング機器２０５が発見２２５を示す場合に利用されるものに類似していてもよい。すなわち、シャドウイング機器２０５は、シャドウイングされた機器２０２に検証クエリを送信し得、シャドウイングされた機器２０２は、シャドウイング機器２０５においてシャドウイングされる対応するインスタンス化されたソース制御オブジェクト（またはその選択された部分）の対応する構成を示す応答で応答し得る。応答は、シャドウイング機器２０５によって稼働されるスクリプト、シャドウイング機器２０５によって解析されるＸＭＬファイル、及び／または、例えばシャドウイング機器２０５の製造元によって判定されるかまたは必要とされ得るいくつかの他の機構の形式を取り得る。シャドウイング機器２０５は、クエリ応答を処理し、続いて、応答の内容に基づいて、シャドウライブラリ２２２に格納された署名及び他の要素を作成し、削除し、更新し、及び／または変更する。一実施形態では、方法３００のブロック３０２〜３１８のうちの少なくともいくつかは、シャドウライブラリ２２２内に格納された署名及び要素を同期させ、監査し、及び／または検証するために実行され得る。
【００８６】
さらに、方法３００は、制御モジュールであるシャドウイングソース制御オブジェクトに容易に拡張され得る。例えば、方法３００のそれぞれのインスタンスは、シャドウイングされるソース制御モジュールに含まれる機能ブロックごとに（例えば、順次及び／また
は並行して）行われてもよく、方法３００のインスタンスは、全体としてソース制御モジュールに対して行われ、それによって例えば、インスタンス化されたソース制御モジュール２１２ｃで受信され、及び／またはそれによって生成されたミラーリングされたリアルタイムデータ及び他の情報２２８を、ユーザインターフェース、表示ビュー、及び／またはプロセス制御システム内部のそのようなデータの他のコンシューマ２３５に提供する、インスタンス化されたソース制御モジュール２１２ｃのシャドウ２１２ｅを生成し得る。
【００８７】
したがって、上述を考慮すると、方法３００は、その内部で利用される特定のデータ型を発見することを含む、シャドウイングされた機器２０２においてインスタンス化された制御オブジェクト（例えば、機能ブロック及び／または制御モジュール）を発見し、シャドウイング機器２０５におけるインスタンス化のための制御オブジェクトの（例えば、ソース制御オブジェクトの）それぞれの署名を作成及び／または更新し、発見されたソース制御オブジェクトのシャドウイングに利用する。重要なことには、そのことについては、方法３００によって、及び／またはシステム２００によって、その内部で利用されるソース制御オブジェクト定義または構成及びデータ型は、カスタムメイドであるか、またはさまざまなベンダによって提供されたシャドウイングされた機器であることを考慮しても、シャドウイング機器２０５によって事前に既知である必要はない。すなわち、シャドウイング機器２０５は、構成データベース２０８から、それ自体のオンライン動作を特定するそれ自体の構成２１０ａを得るが、一方で、シャドウイング機器２０５（例えば、シャドウイング機器２０５がそのオンライン動作中にシャドウイングする制御オブジェクト）のシャドウイングレスポンシビリティのいずれかまたはすべての構成は、シャドウイング機器２０５の構成２１０ａに含まれ得ないかまたは参照され得ず、代わりにシャドウイング機器２０５によって、方法３００及び／またはシステム２００の少なくとも一部を用いて自動的に発見され得る。
【００８８】
さらに、方法３００によって、及び／またはシステム２００によって、シャドウイング機器のシャドウイングレスポンシビリティの発見及びその結果の実施は、外部構成ツールの使用なしに（例えば、構成ツール８１なしに）、及びシャドウイング機器２０５とシャドウイングされた機器２０２との間の媒介として動作するために必要とされる構成データベース２０８なしに行われ得る。加えて、方法３００及び／またはシステム２００は、有利には、シャドウイング機器２０５が、シャドウ署名がそれらのそれぞれのソース制御オブジェクトと比較された場合にそれとは異なるかまたは不一致を有するときを発見または検出することを可能にし、かつ、ここでも媒介としての外部構成ツールの使用及び／または構成データベースの使用なしに、ソース制御オブジェクトとマッチするか、またはさもなければ同時であるかもしくは合致するような、インスタンス化されたシャドウ署名の自動的な修正及び／または復元を可能にする。
【００８９】
またさらには、方法３００及び／またはシステム２００は、ソース制御オブジェクトで利用されるデータ型が、任意の所望のタイプの、フォーマット、構造、マークアップ言語等であることを可能にする。すなわち、方法３００の、及び／またはシステム２００の発見機構を用いて、ソース制御オブジェクトで利用される複合データ型は、例えば、シャドウイング機器２０５で利用可能であるプリミティブコンポーネントのセット２３０によって示されたプリミティブデータ型の組み合わせに基づいて、自動的に発見され、及び／または自動的に学習され、作成され、または生成される。いくつかの実施形態では、ソース制御オブジェクトで利用されるデータ型は、シャドウイングされた機器２０２とシャドウイング機器２０５との間の直接通信を利用することによって、例えば、上述のダイアログ２２５を介して、及び／またはプリミティブコンポーネントのセット２３０を用いることによって、折衝され、発見され、及び／または定義され得る。有利には、かつ上記にもあるように、新たに学習され、作成され、及び／または生成されたデータ型定義及び／または署名は、シャドウイング機器２０５にアクセス可能であるシャドウライブラリ２２２に
格納され得る。このように、シャドウイング機器２０５は、任意の学習され、作成され、及び／または生成されたデータ型定義及び／または署名を再度学習するかまたは再発見する必要がないが、当然ながら、シャドウイングされた機器２０２によって、格納されたデータ型定義及び署名を同期し、監査し、及び／または検証することを除く。さらに、方法３００及び／またはシステム２００は、複合コンポーネント２３２の作成及び生成を考慮し、これらは、シャドウライブラリ２２２内に格納され、ソースプリミティブコンポーネント２３０と併せて資源として利用され、他の署名及びデータ型を発見し生成する。一実施形態では、プリミティブコンポーネントのセット２３０及び任意の複合コンポーネント２３２は、シャドウライブラリ２２２内に格納される。
【００９０】
いくつかのプロセス制御システムは、事前構成されたシャドウイングアーキテクチャ１５０及び汎用シャドウイングアーキテクチャ２００の両方を利用し得ることに留意されたい。例えば、事前構成されたシャドウイングアーキテクチャ１５０を利用して、汎用シャドウイングをサポートしないソース機器、例えばレガシーソース機器のシャドウイングを実施し得、一方で、汎用シャドウイングアーキテクチャ１５０を利用して、汎用シャドウイングをサポートしているソース機器のシャドウイングを実施し得る。このように、特定のシャドウイング機器２０５は、事前構成されたシャドウイング機構１５０を利用して、レガシーソース機器をシャドウイングし得、また一方で、汎用シャドウイング機構２００を利用して、汎用シャドウイングをサポートする他のソース機器をシャドウイングする。このように、シャドウイング機構１５０、２００の両方をサポートするように構成された特定のシャドウイング機器２０５については、事前構成されたシャドウイング１５０に対応する署名及び／または要素は、構成データベース２０８から特定のシャドウイング機器２０５によってダウンロードされるかまたは得られ、一方で、汎用シャドウイング２００に対応する署名及び／または要素は、構成データベース２０８と通信することなく、特定のシャドウイング機器２０５によって発見され得る。いずれにしても、ダウンロードされ発見された署名及び／または要素の両方が、シャドウライブラリ２２２内に格納され得、他の署名、データ型、及び要素を作成し、生成し、及び／または発見するために、特定のシャドウイング機器２０５によって利用され得る。
【００９１】
さらに、汎用シャドウイングアーキテクチャまたはシステム２００は、シャドウイングされた機器２０２を介して、シャドウイングに関連しない追加のデータを、シャドウイング機器２０５に、ならびに任意に他の機器、アプリケーション、モジュール、機能ブロック、及び／またはプロセス制御システム内部のオブジェクト２３５に移送するように拡張可能である。ある意味で、シャドウイングされた機器２０２、及び任意にシャドウイング機器２０５は、蓄積転送機構として利用される。例えば、図２を参照すると、シャドウイング機器２０５に渡される追加のデータ（図示せず）は、シャドウイングされた機器２０２の構成２１２ａの中に、またはそれとともに構成され、シャドウイングされた機器２０２に、シャドウイングされた機器２０２の構成と併せてダウンロードされる（参照番号２１２ｂ）。続いて、追加のデータは、シャドウイングされた機器２０２において、例えば、シャドウイングされた機器２０２によって操作または処理されることなく格納または保持される。シャドウイング機器２０５は、発見プロセス２２５を利用して、シャドウイングされた機器２０２で格納され、シャドウイング機器２０５に配信されることが意図される追加のデータを発見する。同様に、発見プロセス２２５を介して、シャドウイングされた機器２０２は、格納された追加のデータをシャドウイング機器２０５を転送する。シャドウイング機器２０５またはシャドウイングされた機器２０２のうちのいずれか一方が、追加の非シャドウイングデータを転送するための発見プロセス２２５を開始し得る。このように、発見プロセス２２５、シャドウマネージャ２２０、及び汎用シャドウイングアーキテクチャ２００のシャドウライブラリ２２２を利用することによって、追加のデータを受信し理解するためにシャドウイング機器２０５が事前に構成される必要なしに、追加のデータがシャドウイング機器２０５に配信され、かつそれによって理解されることが可能
になる。またさらには、いくつかのシナリオでは、シャドウイング機器２０５によって発見されシャドウイングされた機器２０２から得られた追加のデータのうちの少なくともいくつかは、受信側の機器、モジュール、機能ブロック、または受信側によって用いるためのプロセス制御システムのアプリケーション２３５に転送され得る。
【００９２】
例証のために、蓄積転送データ処理をサポートするための汎用シャドウイングアーキテクチャ２０２を実行する例示のシナリオでは、追加のデータは、グラフィカル表示ビューの構成を含み、これは、構成データベース２０８において格納され、シャドウイングされた機器２０２の構成２１２ａと併せてダウンロードされる。例えば、グラフィカル表示ビュー構成は、シャドウイングされた機器２０２の構成２１２ａに包み込まれるか、またはさもなければその中で参照され得る。グラフィカル表示ビューは、シャドウイングされた機器２０２において構成２１２ｂと併せて受信され、シャドウイングされた機器２０２によって（例えば、一時的に）保持または格納される。発見プロセス２２５及び任意にシャドウライブラリ２２２に格納された要素を介して、シャドウマネージャ２２０は、シャドウイングされた機器２０２で保持されているグラフィカル表示ビューの構成を得、かつグラフィカル表示ビューの構成を処理して、グラフィカル表示ビューの構成及びその中で利用されるデータ型を発見、学習、及び／または理解する。所望であれば、グラフィカル表示ビュー構成は、シャドウイング機器２０５において、シャドウライブラリ２２２に格納されてもよい。加えて、グラフィカル表示ビュー構成は、シャドウイング機器２０５によって、プロセス制御システム内の１つ以上の他の受信側機器、アプリケーション、モジュール、機能ブロック等に提供され、それぞれのユーザインターフェース上での提示のためのグラフィカル表示ビューを作成し得る。
【００９３】
したがって、上述のように、シャドウイングされた機器２０２及びシャドウイング機器２０５を含む汎用シャドウイングアーキテクチャ２００は、格納及び転送機構として利用され、それを介して、受信側が構成データベース２０８への直接アクセスまたは通信可能な接続を有していない場合であっても、追加のデータ（例えば、サードパーティオブジェクトの構成、及び／または他のタイプの追加のデータ）は、構成データベース２０８から、プロセス制御システム内部のさまざまな受信側機器、アプリケーション、モジュール、及び／またはオブジェクトに配信されることが可能である。
【００９４】
本開示に記載された手法の実施形態は、任意の数の以下の態様を、単独または組み合わせでのいずれかで含み得る。
【００９５】
１．プロセスプラント内に含まれるシャドウイング機器であって、シャドウイング機器が、１つ以上のプロセッサと、シャドウイング機器をシャドウイングされた機器に通信可能に接続する１つ以上のインターフェースであって、シャドウイング機器及びシャドウイングされた機器が、プロセスプラント内の工業プロセスをリアルタイムで制御するように動作するプロセス制御システムに含まれる、インターフェースと、シャドウライブラリを格納する１つ以上の有形メモリと、１つ以上の有形メモリに格納されており、かつ１つ以上のプロセッサによって実行されると、シャドウイング機器に、シャドウイングされた機器から、シャドウイングされた機器内に構成及びダウンロードされているソース機能ブロックの指標を受信することであって、シャドウイングされた機器内に構成及びダウンロードされているソース機能ブロックが、インスタンス化されたソース機能ブロックである、受信すること、を行わせるコンピュータ実行可能命令を含むシャドウマネージャと、を備える。
【００９６】
ソース機能ブロックに対応する署名がシャドウライブラリに格納されていない場合、シャドウイング機器が、一方またはプロセッサによって実行されるコンピュータ実行可能命令によって、（ｉ）ソース機能ブロックの受信された指標に基づいて、ソース機能ブロッ
クの署名を作成し、（ｉｉ）シャドウライブラリに、ソース機能ブロックの作成された署名を格納し、（ｉｉｉ）ソース機能ブロックの作成された署名をインスタンス化し、それによって、シャドウイング機器においてソース機能ブロックのシャドウを生成することと、を行う。加えてまたは代替的に、ソース機能ブロックに対応する署名がシャドウライブラリに格納されている場合、シャドウマネージャが、一方またはプロセッサによって実行されるコンピュータ実行可能命令によって、（ｉ）ソース機能ブロックの受信された指標に基づいて、ソース機能ブロックとソース機能ブロックに対応する格納された署名との間の不一致を判定し、（ｉｉ）不一致に基づいて、ソース機能ブロックに対応する格納された署名を更新し、（ｉｉｉ）シャドウライブラリに、ソース機能ブロックの更新された署名を格納し、（ｉｖ）ソース機能ブロックの更新された署名をインスタンス化し、それによって、シャドウイング機器におけるソース機能ブロックのシャドウを生成することと、を行う。
【００９７】
加えて、シャドウイング機器の１つ以上のプロセッサが、ソース機能ブロックのシャドウを用いて、プロセスプラント内の工業プロセスのリアルタイム制御中、シャドウイングされた機器で実行しているインスタンス化されたソース機能ブロックによって観測された動的データをミラーリングし、プロセス制御システムに含まれる１つ以上の他の機器及び／または機能ブロックに、ミラーリングされた動的データを提供し、それによって、シャドウイング機器によって、シャドウイングされた機器で実行されているインスタンス化されたソース機能ブロックをシャドウイングする。
【００９８】
２．インスタンス化されたソース機能ブロックが、シャドウイングされた機器においてインスタンス化された複数の機能ブロックに含まれ、シャドウマネージャがさらに、シャドウイング機器に、シャドウイングされた機器においてインスタンス化された複数の機能ブロックのそれぞれの指標に関して、シャドウイングされた機器への問い合わせを行わせ、インスタンス化されたソース機能ブロックの指標が、問い合わせに対する応答に含まれる、前述の態様に記載のシャドウイング機器。
【００９９】
３．シャドウイングされた機器においてインスタンス化された複数の機能ブロックのそれぞれの指標に関するシャドウイングされた機器の問い合わせが、シャドウイングされた機器においてインスタンス化された複数の機能ブロックのそれぞれの指標に関するシャドウイングされた機器のポーリングを含む、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１００】
４．シャドウイングされた機器のポーリングが、シャドウイングされた機器の周期的なポーリングを含む、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１０１】
５．インスタンス化されたソース機能ブロックの指標が、シャドウイングされた機器内へのソース機能ブロックの構成のダウンロード、シャドウイングされた機器におけるソース機能ブロックのダウンロードされた構成のインスタンス化、またはシャドウイングされた機器におけるインスタンス化されたソース機能ブロックの実行のうちの少なくとも１つのときにシャドウイングされた機器から受信される、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１０２】
６．シャドウイングされた機器から受信されたインスタンス化されたソース機能ブロックの指標が、インスタンス化されたソース機能ブロックが構成されている１つ以上のタイプの動的データの指標を含む、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１０３】
７．インスタンス化されたソース機能ブロックのシャドウが、シャドウイングされた機器において、かつ任意に他の機器においてインスタンス化された複数の機能ブロックの複
数のシャドウに含まれ、複数の機能ブロックのそれぞれの署名が、シャドウライブラリに格納され、シャドウマネージャがさらに、シャドウイング機器に、シャドウライブラリで格納された複数の機能ブロックのそれぞれの署名を、シャドウイングされた機器において、かつ任意に他の機器においてインスタンス化された複数の機能ブロックと同期させる、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１０４】
８．１つ以上のプロセッサがさらに、１つ以上のインターフェースを介して、シャドウイング機器とシャドウイングされた機器との間の通信の損失を検出するように、かつ通信の損失の検出に基づいて、アラームまたはアラートのうちの少なくとも１つを生成するように構成される、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１０５】
９．ソース機能ブロックが、シャドウイングされた機器内に制御モジュールとして構成及びダウンロードされた複数の機能ブロックに含まれ、ダウンロードされた制御モジュールが、シャドウイングされた機器において、インスタンス化されたソース制御モジュール内にインスタンス化され、シャドウマネージャがさらに、シャドウイング機器に、（１）ソース制御モジュールに対応する署名がシャドウライブラリに格納されていない場合、（ｉ）シャドウイングされた機器から受信されたインスタンス化されたソース制御モジュールの指標に基づいて、ソース制御モジュールの署名、ソース機能ブロックの署名を含むソース制御モジュールの署名、及びインスタンス化されたソース制御モジュールの他の機能ブロックのそれぞれの署名を作成し、（ｉｉ）シャドウライブラリに、ソース制御モジュールの署名を格納し、（ｉｉｉ）ソース制御モジュールの作成され格納された署名をインスタンス化し、それによって、シャドウイング機器においてソース制御モジュールのシャドウを生成すること、及び／または（２）ソース制御モジュールに対応する署名がシャドウライブラリに格納されている場合、（ｉ）シャドウイングされた機器から受信されたインスタンス化されたソース制御モジュールの指標に基づいて、ソース制御モジュールとソース制御モジュールに対応する格納された署名との間の不一致を判定し、（ｉｉ）不一致に基づいて、ソース制御モジュールに対応する格納された署名を更新し、（ｉｉｉ）シャドウライブラリに、ソース制御モジュールの更新された署名を格納し、（ｉｖ）ソース制御モジュールの更新された署名をインスタンス化し、それによって、シャドウイング機器におけるソース制御モジュールのシャドウを生成することと、を行わせる。
【０１０６】
加えて、シャドウイング機器の１つ以上のプロセッサが、ソース制御モジュールのシャドウを用いて、（ｉ）工業プロセスのリアルタイム制御中、シャドウイングされた機器で実行しているインスタンス化されたソース制御モジュールによって観測された動的データをミラーリングするように、かつ（ｉｉ）プロセス制御システムに含まれる１つ以上の他の機器及び／または機能ブロックに、ミラーリングされた動的データを提供し、それによって、シャドウイング機器によって、シャドウイングされた機器で実行されているインスタンス化されたソース制御モジュールをシャドウイングするように、さらに構成される。
【０１０７】
１０．シャドウマネージャがさらに、シャドウイング機器に、シャドウライブラリで格納された複数の制御モジュールシャドウを、他の機器においてインスタンス化された複数の制御モジュールと同期させ、複数の制御モジュールシャドウが、ソース制御モジュールのシャドウを含み、複数のインスタンス化された制御モジュールが、インスタンス化されたソース制御モジュールを含み、他の機器が、シャドウイングされた機器を含む、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１０８】
１１．シャドウイング機器が、プロセスプラント内の工業プロセスを制御するようにリアルタイムで動作するプロセスコントローラであり、シャドウイングされた機器が、プロセスコントローラによって制御されるフィールド機器、プロセスコントローラに対応する安全性コントローラもしくは安全性ロジックソルバ、またはプロセス制御システムで実行
する別の制御オブジェクトのうちの１つである、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１０９】
１２．シャドウイング機器が、シャドウイングされた機器と一体であり、かつその中で隔離されたソフトウェアモジュールを備える、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１０】
１３．インスタンス化されたソース機能ブロックが、プロセスプラントのプロセス制御システムで実行する制御モジュールに含まれる、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１１】
１４．１つ以上のインターフェースがさらに、シャドウイング機器を、プロセスプラントの構成データベースに通信可能に接続し、シャドウライブラリが、１つ以上のインターフェースを介して構成データベースからダウンロードされた制御オブジェクトの署名のセットを格納し、構成データベースからダウンロードされた制御オブジェクトの署名のセットが、ソース機能ブロックの署名を除外する、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１２】
１５．シャドウマネージャがさらに、シャドウイング機器に、ソース機能ブロックとソース機能ブロックの格納された署名との間の不一致に対する解決を判定するために、シャドウイングされた機器に問い合わせさせ、シャドウ機能ブロックの格納された署名に対する更新が、問い合わせに対する応答に基づく、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１３】
１６．シャドウマネージャが、制御オブジェクトの署名を発見するための発見プロセスを含み、制御オブジェクトが、ソース機能ブロックを含み、制御オブジェクトの署名が、ソース機能ブロックの署名を含む、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１４】
１７．ソース機能ブロックの署名が、ソース機能ブロックによって利用される第１のデータ型を示し、シャドウライブラリが、複数のデータ型を定義するプリミティブコンポーネントのセットを格納し、発見プロセスが、プリミティブコンポーネントのセットを用い、ソース機能ブロックの受信された指標に基づいて、ソース機能ブロックによって利用される第１のデータ型を特定するように構成され、シャドウライブラリが、複数のデータ型のいずれかシャドウの署名を格納するように構成される、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１５】
１８．複数のデータ型が、１つ以上のデータ構造、１つ以上のデータフォーマット、１つ以上のデータ値、１つ以上のデータ構文、または１つ以上のマークアップ言語のうちの少なくとも１つを含む、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１６】
１９．ソース機能ブロックによって利用される第１のデータ型が、複合データ型であり、プリミティブコンポーネントのセットによって定義された複数のデータ型が、複数の単純データ型を含み、発見プロセスが、多数の単純データ型を組み合わせるためにプリミティブコンポーネントのセットを用いることによって、ソース機能ブロックによって利用される複合データ型を学習するようにさらに構成される、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１７】
２０．発見プロセスが、学習された複合データ型を定義する複合コンポーネントを生成し、シャドウライブラリに複合コンポーネントを格納するように構成される、前述の態様
のいずれか１つに記載のシャドウイング機器。
【０１１８】
２１．発見プロセスが、ソース機能ブロックによって利用されるデータ型を判定するために、シャドウイングされた機器に問い合わせするように構成され、ソース機能ブロックの署名が、ソース機能ブロックによって利用され、問い合わせに対する応答に示されたデータ型を示す、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１１９】
２２．ソース機能ブロックによって利用される特定のデータ型の指標が、シャドウイングされた機器から受信されたインスタンス化されたソース機能ブロックの指標とともに含まれ、発見プロセスがさらに、特定のデータ型に基づいてソース機能ブロックのシャドウを特定するように構成される、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１２０】
２３．シャドウイング機器が、プロセス制御システムのユーザインターフェースでの指標のために、シャドウイングされた機器で実行されるインスタンス化されたソース機能ブロックによって観測されたミラーリングされた動的データのうちの少なくともいくつかを提供する、前述の態様のいずれか１つに記載のシャドウイング機器。
【０１２１】
２４．プロセスプラント内の機器をシャドウイングするための方法であって、当該方法が、シャドウイング機器において、シャドウイングされた機器から、シャドウイングされた機器内に構成及びダウンロードされているソース機能ブロックの指標を受信することであって、シャドウイング機器及びシャドウイングされた機器が、プロセスプラント内の工業プロセスをリアルタイムで制御するように動作するプロセス制御システムに含まれ、シャドウイングされた機器内に構成及びダウンロードされているソース機能ブロックが、インスタンス化されたソース機能ブロックである、受信することと、シャドウイング機器によって、ソース機能ブロックに対応する署名がシャドウイング機器において格納されていないことを判定することと、インスタンス化されたソース機能ブロックに対応する署名がシャドウイング機器に格納されていないことの判定に基づいて、ソース機能ブロックの署名を発見し、シャドウイング機器のシャドウライブラリに、ソース機能ブロックの署名を格納することと、シャドウイング機器において、かつソース機能ブロックの署名を用いることによって、工業プロセス中のリアルタイム制御中、シャドウイングされた機器においてインスタンス化されたソース機能ブロックによって生成及び／または受信される動的データをミラーリングすることと、シャドウイング機器によって、プロセス制御システムに含まれる他の機能ブロック及び／または機器に、ミラーリングされた動的データを提供し、それによって、シャドウイングされた機器で実行されるインスタンス化されたソース機能ブロックをシャドウイングすることと、を含む。
【０１２２】
２５．ソース機能ブロックの署名を発見することが、ソース機能ブロックによって利用されるデータ型を判定するために、シャドウイング機器によって、シャドウイングされた機器に問い合わせすることと、問い合わせに対する応答に基づいて、ソース機能ブロックの署名を生成することであって、応答が、ソース機能ブロックによって利用されるデータ型を示す、生成することと、を含む、前述の態様に記載の方法。
【０１２３】
２６．シャドウイングされた機器からのインスタンス化されたソース機能ブロックの指標を受信することとともに、ソース機能ブロックによって利用されるデータ型の指標を受信することをさらに含み、ソース機能ブロックの署名を発見することが、ソース機能ブロックによって利用されるデータ型に基づいて、ソース機能ブロックの署名を生成することを含む、態様２４または２５のいずれかに記載の方法。
【０１２４】
２７．シャドウイング機器が、プロセスプラント内の工業プロセスを制御するようにリアルタイムで動作するプロセスコントローラに含まれ、シャドウイングされた機器が、プ
ロセスプラント内のリアルタイム工業プロセスを制御するためのプロセスコントローラによって制御されるフィールド機器、プロセスコントローラに対応する安全性コントローラもしくは安全性ロジックソルバ、またはプロセスプラントのプロセス制御システムで実行する別の制御オブジェクトのうちの１つである、態様２４〜２６のいずれか１つに記載の方法。
【０１２５】
２８．シャドウイング機器が、シャドウイングされた機器と一体であり、かつその中で隔離されたソフトウェアモジュールを備える、態様２４〜２７のいずれか１つに記載の方法。
【０１２６】
２９．シャドウイング機器によって、プロセスプラントの構成データベースから、シャドウイング機器の構成と、シャドウイング機器によってシャドウイングされる機能ブロックのセットに対応する署名のセットと、を得ることをさらに含み、ソース機能ブロックに対応する署名が、構成データベースから得られた署名のセットから除外される、態様２４〜２８のいずれか１つに記載の方法。
【０１２７】
３０．ソース機能ブロックの署名を発見することが、ソース機能ブロックの指標の受信に基づいて、プリミティブコンポーネントのセットを利用して、ソース機能ブロックによって利用される１つ以上のデータ型を発見することを含み、１つ以上のデータ型が、複数のデータ構造、複数のデータフォーマット、複数のデータ値、複数のデータ構文、または複数のマークアップ言語のうちの少なくとも１つを含む、態様２４〜２９のいずれか１つに記載の方法。
【０１２８】
３１．ソース機能ブロックによって利用されるデータ型が、複合データ型であり、プリミティブコンポーネントのセットが、複数の単純データ型に対応し、方法が、複数の単純データ型に対応するプリミティブコンポーネントのセットを用いることによって、ソース機能ブロックによって利用される複合データ型を学習することをさらに含む、態様２４〜３０のいずれか１つに記載の方法。
【０１２９】
３２．プリミティブコンポーネントのセットに基づいて、ソース機能ブロックによって利用される学習された複合データ型を定義する複合コンポーネントを生成することと、シャドウイング機器において複合コンポーネントを格納することと、をさらに含む、態様２４〜３１のいずれか１つに記載の方法。
【０１３０】
３３．シャドウライブラリ内のソース機能ブロックの署名を格納することが、シャドウライブラリに、シャドウイングされた機器において、また任意にプロセス制御システム内に含まれる他の機器においてインスタンス化された多数の機能ブロックの多数の署名を格納することを含む、態様２４〜３２のいずれか１つに記載の方法。
【０１３１】
３４．多数の機能ブロックが、シャドウイングされた機器においてインスタンス化された制御モジュールに含まれ、インスタンス化された制御モジュールの多数の機能ブロックの多数の署名を格納することが、インスタンス化された制御モジュールの署名を格納することを含む、態様２４〜３３のいずれか１つに記載の方法。
【０１３２】
３５．シャドウイング機器によって、ソース機能ブロックの署名を、シャドウイングされた機器において実行するインスタンス化されたソース機能ブロックと同期させることをさらに含む、態様２４〜３４のいずれか１つに記載の方法。
【０１３３】
３６．シャドウイング機器によって、シャドウイングされた機器との通信の損失を検出し、通信の損失を検出したとき、アラームまたはアラートのうちの少なくとも１つを生成
することをさらに含む、態様２４〜３５のいずれか１つに記載の方法。
【０１３４】
３７．シャドウイング機器において、インスタンス化されたソース機能ブロックに対応する表示ビューの指標を受信することと、インスタンス化されたソース機能ブロックに対応する表示ビューにおける提示のために、シャドウイング機器によって、かつ表示ビューの構成に従って、ミラーリングされた動的データの少なくとも一部を提供することと、をさらに含む、態様２４〜３６のいずれか１つに記載の方法。
【０１３５】
３８．シャドウイングされた機器から追加のデータを受信することと、プロセス制御システムに含まれる受信側機器に追加のデータを転送することとをさらに含む、態様２４〜３７のいずれか１つに記載の方法。
【０１３６】
３９．シャドウイング機器が、態様１〜２３のいずれか１つのシャドウイング機器である、態様２４〜３８のいずれか１つに記載の方法。
【０１３７】
ソフトウェアに組み込まれる場合、本明細書で説明されたアプリケーション、サービス、及びエンジンのいずれかが、任意の有形の非一時的コンピュータ可読メモリに、例えば磁気ディスク、レーザーディスク、ソリッドステートメモリデバイス、分子メモリ記憶機器、または他の記憶媒体上に、コンピュータまたはプロセッサのＲＡＭまたはＲＯＭ等に記憶されてもよい。本明細書に開示された例示のシステムは、とりわけ、ハードウェア上で実行されるソフトウェア及び／またはファームウェアを含むとして開示されているが、そのようなシステムは、単なる例証であり、限定するものとして考えられるべきではないことを留意すべきである。例えば、これらのハードウェア、ソフトウェア、及びファームウェアコンポーネントのいずれかまたはすべてが、ハードウェアにおいて排他的に、ソフトウェアにおいて排他的に、またはハードウェア及びソフトウェアの任意の組み合わせにおいて具現化されることができることが考えられる。したがって、本明細書で説明された例示のシステムは、１つ以上のコンピュータ機器のプロセッサ上で実行されたソフトウェアに組み込まれるとして説明されているが、当業者においては、提供された例が、そのようなシステムを実施するための唯一の方法ではないことが容易に理解されよう。
【０１３８】
このように、特定の例を参照して本発明を記載してきたが、これらは例証のみが意図され、本発明を限定することは意図されておらず、当業者においては、本発明の本質及び範囲から逸脱することなく、開示された実施形態に変更、付加または削除がなされてもよいことが明らかであろう。さらに、先述のテキストは、数多くの異なる実施形態の詳細な説明を述べているが、本特許の範囲は、本特許の終わりに述べられた特許請求の範囲の文言及びその等価物によって定義されることが理解されるべきである。詳細な説明は、単なる例証として解釈されるべきであり、あらゆる可能な実施形態を記載しているのではないが、これは、あらゆる可能な実施形態を説明することが、不可能ではないにせよ、現実的ではないためである。数多くの代替の実施形態は、現在の技術または本特許の出願日以降に開発された技術のいずれかを用いて実施されることができ、これらは依然として特許請求の範囲及びそのすべての等価物に含まれる。
【図１】
2019032829.tif 000003
【図２】
2019032829.tif 000004
【図３】
2019032829.tif 000005
【図４】
2019032829.tif 000006
【外国語明細書】
2019032829000001.pdf