(57)【要約】【課題】オフライン（生産物が完成した後）ではなく、生産物が製造されている間にオンラインで実行する。【解決手段】データ分析デバイスは、非侵入的にプロセス制御システムから収集されたプロセスデータを受け取る論理エンジンに接続されているデータ分析エンジンを含む。論理エンジンは、プロセス制御システム内で発生されていないさらなるプロセス変数値を決定するために動作し、収集されたプロセス変数データおよびさらなるプロセス変数値をデータ分析エンジンに供給する。データ分析エンジンは、オンラインプロセスの稼働を分析するために使用されるステージ終点のもしくはバッチ終点の品質変数などの予測プロセス変数を生成するために、バッチモデル、ステージモデル、およびフェーズモデルなどの統計的に基づくプロセスモデルを実行する。【選択図】図２
2015011722.tif 000002
【特許請求の範囲】
【請求項１】
プロセスプラント内で、プロセスプラント制御設備が工業プロセスを実施するためにオンラインで稼働している間に、前記プロセスプラント内で前記プロセスプラント制御設備の稼働を分析するために使用されるシステムであって、
前記プロセスプラント制御設備に接続され、前記プロセスプラント制御設備から、前記工業プロセスがオンラインで稼働している間に前記工業プロセス内で決定または測定されたとおりのプロセス変数データを収集するデータ収集デバイスと、
前記データ収集デバイスに通信可能に接続され、１つ以上のさらなるプロセス変数値を生成するために前記収集されたプロセス変数データを使用して前記工業プロセスの稼働の一部をシミュレートするようにコンピュータプロセッサ上で動作するプロセス論理エンジンと、
前記プロセス論理エンジンに通信可能に接続され、
前記プロセスの稼働を統計的にモデル化する１つ以上の記憶されたデータ分析モデルと、
前記工業プロセスがオンラインで稼働している間に前記プロセス変数データのうちの一部および前記１つ以上のさらなるプロセス変数値を使用して前記工業プロセスに対する予測プロセス変数を決定するために、前記工業プロセスがオンラインで稼働している間に前記１つ以上のデータ分析モデルを使用してデータ分析ルーチンを実行するデータ分析実行エンジンと、
を含むプロセス分析エンジンと、
を備えるシステム。
【請求項２】
前記予測プロセス変数は、予測プロセス品質値である、請求項１に記載のシステム。
【請求項３】
前記プロセス論理エンジンは、１つ以上のプロセスシミュレーションモデルと、前記１つ以上のさらなるプロセス変数値を生成するために前記１つ以上のプロセスシミュレーションモデルを使用して前記工業プロセスの稼働をシミュレートするようにプロセッサ上で実行するプロセスシミュレーションエンジンとを含む、請求項１に記載のシステム。
【請求項４】
前記プロセスシミュレーションエンジンは、前記工業プロセスの稼働をシミュレートするために前記データ収集デバイスによって収集されたとおりの前記収集されたプロセス変数値を記憶する、請求項３に記載のシステム。
【請求項５】
前記工業プロセスはバッチプロセスであり、前記１つ以上のデータ分析モデルはバッチモデルを含む、請求項１に記載のシステム。
【請求項６】
前記プロセス論理エンジンは、前記１つ以上のさらなるプロセス変数値のうちの１つとして前記バッチモデルによって定義されたバッチの開始または停止を決定するプロセスモデルを含む、請求項５に記載のシステム。
【請求項７】
前記工業プロセスはバッチプロセスであり、前記１つ以上のデータ分析モデルは、特有のバッチプロセスをモデル化する２つ以上のステージモデルを含む、請求項１に記載のシステム。
【請求項８】
前記プロセス論理エンジンは、前記１つ以上のさらなるプロセス変数値として前記２つ以上のステージモデルに関連付けられた２つ以上のステージのそれぞれの開始または停止を決定するプロセスモデルを含む、請求項７に記載のシステム。
【請求項９】
前記工業プロセスはバッチプロセスであり、前記１つ以上のデータ分析モデルは、特有のバッチプロセスをモデル化するバッチの異なるフェーズに対する２つ以上のフェーズモデルを含む、請求項１に記載のシステム。
【請求項１０】
前記プロセス論理エンジンは、前記１つ以上のさらなるプロセス変数値として前記フェーズモデルに関連付けられた２つ以上のフェーズのそれぞれの開始または停止を決定するプロセスモデルを含む、請求項９に記載のシステム。
【請求項１１】
前記データ分析モデルは、潜在構造投影（ＰＬＳ）モデルを含む、請求項１に記載のシステム。
【請求項１２】
前記データ収集デバイスは、測定されたプロセス変数の形式でプロセス変数を収集する、請求項１に記載のシステム。
【請求項１３】
前記データ収集デバイスは、制御信号の形式でプロセス変数を収集する、請求項１に記載のシステム。
【請求項１４】
前記データ収集デバイスは、前記工業プロセス内で発生させられたとおりのアラームおよび警報の形式でプロセス変数を収集する、請求項１に記載のシステム。
【請求項１５】
１つ以上の以前の工業プロセスに対して該工業プロセスから収集された過去のプロセス変数データと、前記１つ以上の以前の工業プロセスに対して前記プロセス論理エンジンによって決定されたとおりのさらなる変数値とから、前記１つ以上のデータ分析モデルを作成するモデルビルダーエンジンをさらに含む、請求項１に記載のシステム。
【請求項１６】
前記プロセス論理エンジンは、前記工業プロセスで使用された前記プロセス制御設備の現在の構成を記憶するプロセスシミュレーションエンジンを含む、請求項１に記載のシステム。
【請求項１７】
前記プロセス論理エンジンは、前記１つ以上のさらなるプロセス変数値を決定するために前記プロセス論理エンジン上で実施される１つ以上の論理モジュールをユーザが作成することを可能にする論理ビルダーエンジンを含む、請求項１に記載のシステム。
【請求項１８】
前記予測プロセス変数値は、ステージ終点の生産物品質およびバッチ終点の生産物品質のうちの１つを含む、請求項１に記載のシステム。
【請求項１９】
前記データ収集デバイスは、ＯＰＣデータ収集デバイスである、請求項１に記載のシステム。
【請求項２０】
プロセスプラント内で、プロセスプラント制御設備が工業プロセスを実施するためにオンラインで稼働している間に、前記プロセスプラント内で前記プロセスプラント制御設備の稼働を分析するコンピュータ実施方法であって、
前記プロセスプラント制御設備から、前記工業プロセスがオンラインで稼働している間に前記工業プロセス内で決定または測定されたとおりのプロセス変数データを収集することと、
１つ以上のさらなるプロセス変数値を生成するためにコンピュータプロセッサデバイス上で前記工業プロセスの稼働をシミュレートするように前記収集されたプロセス変数データの少なくとも一部を使用することと、
前記プロセスの稼働を統計的にモデル化する１つ以上の記憶されたデータ分析モデルを記憶することと、
前記工業プロセスに対する予測プロセス変数を決定するために前記工業プロセスがオンラインで稼働している間に前記１つ以上のデータ分析モデル、前記収集されたプロセス変数データの少なくとも一部、および前記１つ以上のさらなるプロセス変数値を使用してデータ分析ルーチンを実施するようにコンピュータプロセッサを使用することと、
を備えるコンピュータ実施方法。
【請求項２１】
前記工業プロセスに対する予測プロセス変数を決定することは、予測プロセス品質値として前記予測プロセス変数を決定することを含む、請求項２０に記載のコンピュータ実施方法。
【請求項２２】
前記工業プロセスに対する予測プロセス変数を決定することは、ステージ終点の生産物品質およびバッチ終点の生産物品質のうちの１つとして前記予測プロセス変数値を決定することを含む、請求項２０に記載のコンピュータ実施方法。
【請求項２３】
前記プロセスプラント制御設備から、前記工業プロセスがオンラインで稼働している間に前記工業プロセス内で決定または測定されたとおりのプロセス変数データを収集することは、前記プロセス制御設備を再構成することなく、前記プロセス変数データを収集することを含む、請求項２０に記載のコンピュータ実施方法。
【請求項２４】
前記プロセスプラント制御設備から、前記工業プロセスがオンラインで稼働している間に前記工業プロセス内で決定または測定されたとおりのプロセス変数データを収集することは、通信ファイアウォールを介してプロセス変数データを収集することを含む、請求項２０に記載のコンピュータ実施方法。
【請求項２５】
前記工業プロセスの稼働をシミュレートするように前記収集されたプロセス変数データの少なくとも一部を使用することは、前記１つ以上のさらなるプロセス変数値を生成するために前記収集されたプロセス変数データの少なくとも一部を操作する１つ以上のプロセス論理ルーチンを使用することを含む、請求項２０に記載のコンピュータ実施方法。
【請求項２６】
１つ以上のさらなるプロセス変数値を生成するためにコンピュータプロセッサデバイス上で前記工業プロセスの稼働をシミュレートするように前記収集されたプロセス変数データの少なくとも一部を使用することは、１つ以上のプロセスシミュレーションモデルを使用して前記工業プロセスの稼働をシミュレートすることを含む、請求項２０に記載のコンピュータ実施方法。
【請求項２７】
前記工業プロセスはバッチプロセスであり、１つ以上のデータ分析モデルを使用してデータ分析ルーチンを実施するためにコンピュータプロセッサを使用することは、前記１つ以上のデータ分析モデルとして、１つ以上のバッチモデル、ステージモデル、またはフェーズモデルを使用することを含む、請求項２０に記載のコンピュータ実施方法。
【請求項２８】
１つ以上のさらなるプロセス変数値を生成するためにコンピュータプロセッサデバイス上で前記工業プロセスの稼働をシミュレートするように前記収集されたプロセス変数データの少なくとも一部を使用することは、前記１つ以上のさらなるプロセス変数値のうちの１つとして、バッチモデル、ステージモデルまたはフェーズモデルに関連付けられているバッチ、ステージまたはフェーズの開始もしくは停止を決定することを含む、請求項２７に記載のコンピュータ実施方法。
【請求項２９】
前記１つ以上のデータ分析モデルを使用してデータ分析ルーチンを実施するようにコンピュータプロセッサを使用することは、前記１つ以上のデータ分析モデルのうちの１つとして潜在構造投影（ＰＬＳ）モデルを使用することを含む、請求項２０に記載のコンピュータ実施方法。
【請求項３０】
コンピュータプロセッサを使用して、１つ以上の以前の工業プロセスに対して該工業プロセスから収集された過去のプロセス変数データと、前記１つ以上の以前の工業プロセスに対して決定されたとおりのさらなる変数値とから、前記１つ以上のデータ分析モデルをユーザが作成することを可能にすることをさらに含む、請求項２０に記載のコンピュータ実施方法。
【請求項３１】
前記１つ以上のさらなるプロセス変数値を決定するためにコンピュータプロセッサ上で実施されるように１つ以上の論理モジュールをユーザが作成することを可能にすることをさらに含む、請求項２０に記載のコンピュータ実施方法。
【請求項３２】
工業プロセスを制御するために使用されるプロセス制御システムであって、
コントローラおよび工業プロセスを実施する１台以上のフィールドデバイスを含むプロセスプラント制御設備と、
前記プロセスプラント制御設備に通信可能に接続され、前記プロセスプラント制御設備から、前記工業プロセスがオンラインで稼働している間に前記工業プロセス内で決定または測定されたとおりのプロセス変数データを収集するデータ収集デバイスと、
前記データ収集デバイスに通信可能に接続され、１つ以上のさらなるプロセス変数値を生成するために前記収集されたプロセス変数データの一部を使用して前記工業プロセスの稼働をシミュレートするようにコンピュータプロセッサ上で動作するプロセス論理エンジンと、
前記プロセス論理エンジンに通信可能に接続され、
前記プロセスの稼働を統計的にモデル化する１つ以上の記憶されたデータ分析モデルと、
前記工業プロセスがオンラインで稼働している間に前記収集されたプロセス変数データのうちの一部および前記１つ以上のさらなるプロセス変数値を使用して前記工業プロセスに対する予測プロセス変数を決定するために、前記工業プロセスがオンラインで稼働している間に前記１つ以上のデータ分析モデルを使用してデータ分析ルーチンを実行するデータ分析実行エンジンと、
を含むプロセス分析エンジンと、
を備えるプロセス制御システム。
【請求項３３】
前記プロセスプラント制御設備は、第１の通信ネットワークに接続され、前記プロセス論理エンジンおよび前記プロセス分析エンジンは、第２の通信ネットワークに接続され、前記第１の通信ネットワークと前記第２の通信ネットワークとの間に配置されている１台以上のファイアウォールをさらに含む、請求項３２に記載のプロセス制御システム。
【請求項３４】
前記データ収集デバイスは、前記第１の通信ネットワークおよび前記第２の通信ネットワークの両方に接続されている、請求項３３に記載のプロセス制御システム。
【請求項３５】
前記データ収集デバイスは、前記第１の通信ネットワーク上で書き込み動作を全く行うことなく前記第１の通信ネットワーク上で読み出し専用動作を実行する、請求項３４に記載のプロセス制御システム。
【請求項３６】
前記プロセスプラント制御設備は、データヒストリアンを含み、前記データヒストリアンは、前記第１の通信ネットワークおよび前記第２の通信ネットワークに接続され、前記第１の通信ネットワークに接続されたデバイスによって発生され、前記第１の通信ネットワークに接続されたデバイスから受信されたデータを記憶するように適合している、請求項３３に記載のプロセス制御システム。
【請求項３７】
前記予測プロセス変数は、予測プロセス品質値である、請求項３２に記載のプロセス制御システム。
【請求項３８】
前記プロセス論理エンジンは、１つ以上のプロセスシミュレーションモデルと、前記１つ以上のプロセスシミュレーションモデルを使用して前記工業プロセスの稼働をシミュレートするためにプロセッサ上で実行するプロセスシミュレーションエンジンとを含む、請求項３２に記載のプロセス制御システム。
【請求項３９】
前記工業プロセスはバッチプロセスであり、前記１つ以上のデータ分析モデルはバッチモデルを含み、前記プロセス論理エンジンは、前記１つ以上のさらなるプロセス変数値のうちの１つとして前記バッチモデルによって定義されたバッチの開始または停止を決定するプロセスモデルを含む、請求項３２に記載のプロセス制御システム。
【請求項４０】
前記データ分析モデルは、潜在構造投影（ＰＬＳ）モデルを含む、請求項３２に記載のプロセス制御システム。
【請求項４１】
１つ以上の以前の工業プロセス時点に対して前記工業プロセスから収集された過去のプロセス変数データと、前記１つ以上の以前の工業プロセス時点に対して前記プロセス論理エンジンによって決定されたとおりのさらなる変数値とから前記１つ以上のデータ分析モデルを作成するモデルビルダーエンジンをさらに含む、請求項３２に記載のプロセス制御システム。
【請求項４２】
前記プロセス論理エンジンは、前記１つ以上の更なるプロセス変数値を決定するために前記プロセス論理エンジン上で実施される１つ以上の論理モジュールをユーザが作成することを可能にする論理ビルダーエンジンを含む、請求項４１に記載のプロセス制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、プロセス制御システム性能を分析するシステムおよび方法に関し、より詳細には、バッチプロセスおよび連続プロセス内でオンラインデータ分析およびモデリングを非侵入的に実行するシステムおよび方法に関する。
【背景技術】
【０００２】
化学、石油またはその他のプロセスにおけるプロセス制御システムなどのプロセス制御システムは、一般に、アナログバス、デジタルバスまたはアナログ／デジタル併用バスを介して、少なくとも１台のホストまたはオペレータワークステーションおよび１台以上のフィールドデバイスに通信可能に接続されている１台以上のプロセスコントローラおよび入出力（Ｉ／Ｏ）デバイスを含む。例えば、バルブ、バルブポジショナ、スイッチおよびトランスミッタ（例えば、温度、圧力および流量センサ）であってもよいフィールドデバイスは、プロセス内でバルブ開閉およびプロセス制御パラメータ測定などのプロセス制御機能を実行する。プロセスコントローラは、プロセスの稼働を制御するために、フィールドデバイスによって作られたプロセス測定量を表示する信号を受信し、制御ルーチンを実施するために、この情報を処理し、バスまたはその他の通信回線を介してフィールドデバイスに送信される制御信号を発生させる。このように、プロセスコントローラは、バスおよび／またはその他の通信リンクを介し、フィールドデバイスを使用して、制御戦略を実行し調整することがある。
【０００３】
フィールドデバイスおよびコントローラからのプロセス情報は、オペレータがプロセスに関して、（例えば、グラフィカルユーザインターフェースを介して）プロセスの現在の状態を観察する、プロセスを評価する、（例えば、視覚オブジェクト図を用いて）プロセスの稼働を修正するなどの所望の機能を実行することを可能にするために、オペレータワークステーション（例えば、プロセッサベースシステム）によって実行された１つ以上のアプリケーション（すなわち、ソフトウェアルーチン、プログラムなど）によって利用できるようにされることがある。多くのプロセス制御システムは、一般に、パーソナルコンピュータ、ラップトップなどを使用して実装され、ローカルエリアネットワーク（ＬＡＮ）を介して、コントローラ、オペレータワークステーション、およびプロセス制御システム内部のその他のシステムと通信可能に接続されている１台以上のアプリケーションステーション（例えば、ワークステーション）をさらに含む。各アプリケーションステーションは、プロセス変数の値、プロセスに関連付けられた品質パラメータの値、プロセス故障検出情報、および／または、プロセス状態情報を含むプロセス制御情報を表示するグラフィカルユーザインターフェースを含むことがある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一般に、グラフィカルユーザインターフェースにおいてプロセス情報を表示することは、プロセスに関連付けられた各プロセス変数の値の表示に限定される。場合によっては、収集されたデータについてデータ分析を実行する方法は、プロセスの稼働を分析するために使用される。例えば、いくつかのプロセス制御システムは、プロセスに関連付けられた品質メトリクスを決定するためにいくつかのプロセス変数の間の簡単な関係を特徴付けることがある。場合によっては、プロセスデータ分析は、かなり入り組んでいる可能性があるが、このようなプロセスデータ分析は、大部分は、オフラインで、すなわち、プロセスが終了した後に実行されている。オフラインデータ分析は、例えば、生産物の品質問題の根本的原因を決定するために顧客によって長年に亘って使用されている強力なツールであるが、得られるプロセスの生産物が所定の品質制御メトリクスを満たさない場合、プロセスおよび／その他のプロセス変数は、バッチ、プロセス、および／または得られる生産物の組立の終了後に限り分析される。プロセスの終了によりプロセスおよび／または品質変数を観察することは、後続の生産物の製造または加工に改良が実施されることを可能にするが、これらの改良は、規格外である現在の完成生産物を改善する能力がない。
【０００５】
この問題は、バッチプロセスにおいて、すなわち、バッチプロセスを実施するプロセス制御システムにおいて特に深刻である。知られているように、バッチプロセスは、典型的に、生産物を生産するために、（１つ以上のステージ、フェーズ、または手順によって定義されることがある）様々なステージ数またはステップ数を通じて、共通の原材料の組を「バッチ」として一括して処理するために稼働する。バッチプロセスの中の複数のステージまたはステップは、タンク等の同じ設備で実行されることがあるが、その他のステージまたはステップは、その他の設備で実行されることがある。多くの場合に共通の１台の設備内で、同じ原材料がバッチプロセスの中の異なるステージまたはステップで経時的に様々に処理されるので、バッチプロセスの中の何らかのステージまたはステップの間に、バッチの内部の材料が所望のまたは十分な品質メトリクスを有する最終生産物の生産という結果になる可能性が高い方法で処理されているか否かを正確に決定することは困難である。すなわち、処理されている材料の温度、圧力、粘度、ｐＨ、またはその他のパラメータは、多くの場合に材料が同じ場所に留まるが、バッチの稼働の間に経時的に変化するので、バッチプロセスが所望の品質メトリクスを有する最終生産物を生産する可能性が高い方法でバッチラン中の何らかの特有の時間に稼働しているか否かを決定することは困難である。
【課題を解決するための手段】
【０００６】
このため、多くの場合、分析計算は、オフライン（生産物が完成した後）ではなく、生産物が製造されている間にオンラインで実行できることが望ましい。オンラインデータ分析とオフラインデータ分析とは、同じ計算を使用することがあるが、オンライン分析は、生産物が完成する前に修正処置を講じることを可能にする。
【０００７】
現在稼働しているバッチが正常にまたは所望の規格内で進んでいるか（その結果、所望の品質メトリクスを有する最終生産物を生じる可能性が高いか）否かを決定する１つのオンライン分析方法は、進行中のバッチの稼働中に作られた様々なプロセス変数測定量を代表的なまたは「高品質のバッチ」の動作中に取り込まれた類似する測定量と比較する。この場合、高品質のバッチは、バッチの正常動作または予想動作を表し、結果として所望の品質メトリクスを有する最終生産物を生じるバッチランとして選択された所定の既に行われたバッチである。しかし、プロセスのバッチランは、典型的に、時間的長さの点で異なり、すなわち、バッチを終了するために要する時間の点で異なり、高品質のバッチ内で高品質のバッチと比較される進行中のバッチの現在測定されたパラメータに最も適用できる時間を知ることを難しくする。その上、多くの場合に、バッチプロセス変数は、選択された高品質のバッチのバッチプロセス変数と比べると、最終生産物の品質の著しい劣化なしに、バッチ動作中に大幅に変化する可能性があり、進行中のバッチは、プロセス変数が高品質のバッチの類似する変数とは異なる場合でも、依然として適切に稼働していることがあることを意味する。同様に、屡々難しいことは、実際には不可能ではないとしても、全てのバッチランが比較されるべき高品質のバッチとしてあらゆる場合に使用される能力がある特有のバッチランを識別することである。
【０００８】
高品質のバッチを使用する問題のうちのいくつかを解決する進行中のバッチプロセスの結果を分析する方法は、バッチの統計的モデルを作成することと、オンライン分析を実行するために統計的モデルを使用することとを含む。この技術は、バッチプロセスの中のある数の異なるバッチランからプロセス変数（バッチパラメータ）の組のそれぞれに対するデータを収集することと、これらのバッチランのそれぞれに対する品質メトリクスを識別または測定することとを含む。その後、収集されたバッチパラメータおよび品質データは、バッチの統計的モデルを作成するために使用され、統計的モデルは、結果的に所望の品質メトリクスを生じるバッチの「正常」動作を表している。バッチのこの統計的モデルは、その後、特有のバッチラン中に作られた異なるプロセス変数測定量がモデルを作成するために使用されたバッチランの内部の同じ測定量にどのように統計的に関係しているかを分析するために、プロセスの稼働中にオンラインで使用される可能性がある。例えば、この統計的モデルは、各測定されたプロセス変数の平均または中央値と、現在の測定されたプロセス変数が比較される可能性があるバッチラン中の何らかの特有の時点での各測定されたプロセス変数に関連付けられた標準偏差とを提供するために使用されうる。その上、この統計的モデルは、バッチの現在の状態がバッチの終点に生産されたバッチ生産物の最終的な品質にどのように影響を与えるか、または、関係するかを予測するために使用されうる。
【０００９】
概括的に言うと、このタイプのバッチモデリングは、大量のデータが、トランスミッタ、制御ループ、アナライザ、仮想センサ、計算ブロックおよび手動エントリなどの様々なオンラインソースから収集されることを必要とする。以前に実行されたバッチに対するデータの大半は、連続的なデータ履歴に記憶される。しかし、かなりの量のデータと、詳しくは、手動エントリとは、通常は、プロセス管理システムに関連付けられる。これらのタイプのシステムの両方からのデータ抽出は、モデル構築要件を満たすために融合されなければならない。その上、前述のとおり、バッチプロセスは、技術的およびモデリングの観点から、いくつかの著しく異なるステージ、ステップまたはフェーズを標準的に行う。その結果、バッチプロセスは、典型的に、フェーズに関して細分され、モデルは、フェーズ毎に構築されることがある。この場合、多くのバッチランからの同じフェーズまたはステージまたは手順のためのデータは、このフェーズまたはステージまたは手順のための統計的モデルを作成するために分類される。このようなデータ配置の目的は、プロセス非線形性を除去または軽減することである。ステージ基準、フェーズ基準、手順基準、またはその他の基準で別個のバッチモデルを作成する別の理由は、バッチの様々な異なるステージで、異なるプロセスパラメータはアクティブであり、モデリングのため使用される。その結果、ステージモデルは、各バッチステージで関連性があるプロセスパラメータのみを受け入れて考慮するため、特有のステージ毎に関連性がある特定のパラメータの組を用いて構築される可能性がある。
【００１０】
バッチプロセスおよび連続プロセス内で統計に基づくオンラインデータ分析を実行する様々な方法は、プロセス変数およびプロセス品質の推定、予測および制御を可能にするオンラインプロセスモデルを作成し実行する方法を一般的に説明する米国特許出願公開第２０１０／０３１８９３４号、同第２０１１／０２８８６６０号、同第２０１１／０２８８８３７号および同第２０１３／００６９７９２号により詳細に記載されている。米国特許出願公開第２０１０／０３１８９３４号、同第２０１１／０２８８６６０号、同第２０１１／０２８８８３７号および同第２０１３／００６９７９２号のそれぞれの開示内容は、本明細書における参照によってここに明確に組み込まれる。概括的に言うと、これらの刊行物に記載されたデータ分析モデルおよびユーザインターフェース方法は、オンラインおよびオフラインプロセス分析を実行するために使用される可能性があり、プロセスが実行している間にオンラインプロセス制御を実行するために使用されることがあり、それによって、プロセスが動いているときにプロセスによって生産されている生産物の品質を高める。
【００１１】
典型的に、オンラインデータ分析を提供するために、プラントの様々なエリア、領域、ユニット、設備などからのデータは、分析されているプロセスの稼働中にモデル化されているプロセスの各ステージまたは部分に対する分析を実行するため収集されなければならない。このデータの収集は、多くの場合に、最初からプロセス内でコントローラ（群）、フィールドデバイス、バッチエグゼクティブ、またはその他のデバイスもしくはモジュールによって収集されるようにセットアップされなかったデータの収集および処理を必要とする。このため、多くの場合、オンラインデータ分析の追加は、オペレータまたはプロセス構成エンジニアが、例えば、データ分析モデルまたは計算のための入力として必要とされる新しい変数を組み込む、発生させる、または収集するようにプロセスを修正することによってプロセス制御システムを再構成することを必要とする。「固定化」または認証された制御システムに勤務しているプラントオペレータにとって、この修正は、プラントオペレータが、この修正を行うために、制御システム構成変更を導入し、その後、システムを再認証し、再び固定化することが必要であるので、問題を呈する。この再認証プロセスは、非常に費用がかかり、時間がかかる可能性がある。
【００１２】
オンラインデータ分析システムは、オンラインデータ分析を支援するためにプロセス制御システムが再構成されることを必要とすることなく、従って、プロセス制御システムが再認証されることを必要とすることなく、プロセスのオンライン分析を実行するために、オンライン制御システムと並列であるが、オンライン制御システムに関して非侵入的に動作するスタンドアロンデバイスとして、プロセス制御システムに設置される可能性がある。データ分析機械は、非侵入的にプロセス制御システムから収集されたプロセスデータを受信する論理エンジンに接続されているデータ分析エンジンを含む。論理エンジンは、プロセス制御システム内で発生されていないさらなるプロセス変数値を決定し、収集されたプロセス変数データのうちの少なくとも一部およびさらなるプロセス変数値をデータ分析エンジンに供給するために動作する。データ分析エンジンは、バッチプロセスまたは連続プロセスであってもよいオンラインプロセスの稼働を分析するために使用されるステージ終点のまたはバッチ終点の品質変数などの予測プロセス変数を生成するために、バッチモデル、ステージモデル、およびフェーズモデルなどの統計に基づく予測プロセスモデルを実行する。
【００１３】
オンラインデータ分析機械は、論理エンジンに接続されているデータ分析エンジンを含むことがある。この場合、データ分析エンジンは、オンライン分析の一部としてバッチモデル、ステージモデル、フェーズモデルなどのような様々なプロセスモデルを実行するため、データ分析エンジンによって必要とされたプロセス論理エンジンからデータを受信するためにプロセス論理エンジンに接続されることがあり、そうではない場合、何らかの周知または所望の方法でデータ分析を実行することがある。疑似制御システムを含むことがあるプロセス論理エンジンは、測定されたプロセス変数、制御信号、アラーム、警報などの形式でプラントからデータを受信する。論理エンジンは、プロセスのオンライン制御システムから受信された重要な変数を格納していることがあり、疑似制御システムの一部としてこれらの変数を本質的に「ミラー化」することがあるが、論理エンジンは、付加的にまたは代替的に、データ分析エンジンによって必要とされるが、現実のプラント制御システムによって作成されない、測定されない、または、現実のプラント制御システム内で収集されない、もしくは、現実のプラント制御システムによって収集されない何らかの新しい変数に対する値を計算し、作成し、シミュレートし、または発生させるプロセス論理実行エンジンを含むことがある。このような新しい変数は、例えば、特有のバッチステージ、フェーズ、手順などの開始もしくは終了の指示でもよく、または、データ分析エンジンで使用された１つ以上の予測モデルに関連付けられたプロセス内のいくつかのその他の開始点もしくは停止点の指示でもよい。
【００１４】
このため、新しいデータ分析機械は、既存の制御システムから独立かつ別個に構成される可能性があり、当初または既存の制御システムからデータを取得するときに既存の制御システムに関して読み出し専用動作を実行するように動作することがある。その結果、データ分析機械は、データ分析機械の追加および実行がオンライン制御システムを修正、変更または再構成することを概ね必要としないように、従って、データ分析機械の追加時にオンライン制御システムの再認証を必要としないように設置され、非侵入的にプロセス制御システムに関してオンラインで動作する可能性がある。しかし、データ分析エンジンは、既存の生産または制御システムとは全て独立して、分析計算を実行し、オンラインプロセスに対するプロセス変数または生産物品質予測の形式で結果を出力するために動作しうる。
【００１５】
このため、この複合システムは、データ分析エンジンが（外部データ分析エンジンの存在に気付かないことがある）既存のシステムに対するオンライン分析を実行することを可能にするために既存の生産システムの動作を監視し、ミラー化および／または、シミュレートする疑似制御システムと結合されたオンラインデータ分析エンジンを含む。この解決策は、同じまたは異なるバージョンの制御システムが一方で同じ論理エンジン内で、他方でプロセスプラント制御システム内で使用される際に有用であり、異なる制御システムが一方で論理エンジンシミュレーションの一部として、他方でオンライン制御システムの一部として使用される際に更に有用である。
【００１６】
一例では、プロセスプラント内で、プロセスプラント制御設備が工業プロセスを実施するためにオンラインで稼働している間に、プロセスプラントの内部のプロセスプラント制御設備の稼働を分析するために使用されるデータ分析システムは、プロセスプラント制御設備に接続され、工業プロセスがオンラインで稼働している間に、プロセスプラント制御設備から工業プロセス内で決定または測定されたとおりのプロセス変数データを収集するデータ収集デバイスと、データ収集デバイスに通信可能に接続され、１つ以上のさらなるプロセス変数値を生成するため、収集されたプロセス変数データを使用して工業プロセスの稼働の一部をシミュレートするためにコンピュータプロセッサに基づいて動作するプロセス論理エンジンと、を含む。システムは、プロセス論理エンジンに通信可能に接続されているプロセス分析エンジンをさらに含み、プロセス分析エンジンは、プロセスの稼働を統計的にモデル化する（予測モデルの形式の）１つ以上の記憶されたデータ分析モデルと、工業プロセスがオンラインで稼働している間にプロセス変数データのうちのいくつかおよび１つ以上のさらなるプロセス変数値を使用して工業プロセスに対する予測プロセス変数を決定するために、工業プロセスがオンラインで稼働している間に、１つ以上のデータ分析モデルを使用してデータ分析ルーチンを実行するデータ分析実行エンジンと、を含む。
【００１７】
必要に応じて、データ分析システムは、例えば、ステージ終点の生産物品質またはバッチ終点の生産物品質などの予測プロセス品質値として予測プロセス変数を決定することがある。プロセス論理エンジンは、１つ以上のプロセスシミュレーションモデルと、１つ以上のさらなるプロセス変数値を生成するために１つ以上のプロセスシミュレーションモデルを使用して工業プロセスの稼働をシミュレートするためにプロセッサ上で実行するプロセスシミュレーションエンジンとを含むことがある。プロセスシミュレーションエンジンは、工業プロセスの稼働をシミュレートするためにデータ収集デバイスによって収集されたとおりの収集されたプロセス変数値を記憶するか、または、工業プロセスの稼働をシミュレートするために１つ以上のシミュレーションモデルを動作させることがある。プロセスシミュレーションエンジンは、シミュレーションの一部分として工業プロセス制御システムの構成をさらに記憶することがある。
【００１８】
工業プロセスがバッチプロセスである場合、１つ以上のデータ分析モデルは、バッチプロセスの異なるステージもしくはフェーズを定義するか、または、異なるステージもしくはフェーズに関連付けられているバッチモデル、２つ以上のステージモデル、および／または、２つ以上のフェーズモデルを含むことがある。この場合、プロセス論理エンジンは、１つ以上のさらなるプロセス変数値のうちの１つとしてバッチモデルによって定義されたバッチの開始もしくは停止を決定するプロセスモデル、１つ以上のさらなるプロセス変数値として２つ以上のステージモデルに関連付けられた２つ以上のステージのそれぞれの開始もしくは停止を決定するプロセスモデル、または、１つ以上の更なるプロセス変数値としてフェーズモデルに関連付けられた２つ以上のフェーズのそれぞれの開始もしくは停止を決定するプロセスモデルを含むことがある。
【００１９】
場合によっては、データ分析モデルは、潜在構造投影（ＰＬＳ）モデルまたはその他の統計的予測モデルを含むことがある。さらに、ＯＰＣデータ収集デバイスであってもよいデータ収集デバイスは、工業プロセス内で発生されたとおりの、測定されたプロセス変数の形式のプロセス変数、制御信号、アラームおよび警報、または、工業プロセス制御システムの構成された動作の一部として、工業プロセス内で測定された、収集された、または発生された何らかのその他のプロセスデータを収集することがある。
【００２０】
データ分析システムは、１つ以上の以前の工業プロセスもしくはプロセス時間に対して工業プロセスから収集された過去のプロセス変数データと、１つ以上の以前の工業プロセスもしくはプロセス時間に対してプロセス論理エンジンによって決定されたとおりのさらなる変数値とから１つ以上のデータ分析モデルを作成するモデルビルダーエンジンをさらに含むことがある。データ分析システムは、プロセス論理エンジンの一部として、工業プロセスにおいて使用されたプロセス制御設備の現在の構成を記憶するプロセスシミュレーションエンジンをさらに含むことがある。プロセス論理エンジンは、ユーザが１つ以上のさらなるプロセス変数値を決定するためプロセス論理エンジンで実施されるように１つ以上の論理モジュールを作成するための論理ビルダーエンジンをさらに含むことがある。
【００２１】
別の例では、プロセスプラント内で、プロセスプラント制御設備が工業プロセスを実施するためにオンラインで稼働している間に、プロセスプラント内でプロセスプラント制御設備の稼働を分析する、コンピュータ実施方法は、工業プロセスがオンラインで稼働している間に、プロセスプラント制御設備から工業プロセス内で決定または測定されたとおりのプロセス変数データを収集することと、１つ以上のさらなるプロセス変数値を生成するため、コンピュータプロセッサデバイス上で工業プロセスの稼働をシミュレートするために収集されたプロセス変数データの少なくとも一部を使用することと、を含む。プロセスプラント制御設備の稼働を分析する方法は、プロセスの稼働を統計的にモデル化する１つ以上の予測データ分析モデルを記憶することと、工業プロセスが工業プロセスに対する予測プロセス変数を決定するために、オンラインで稼働している間に、１つ以上のデータ分析モデルと、収集されたプロセス変数データの少なくとも一部分と、１つ以上のさらなるプロセス変数値とを使用して、データ分析ルーチンを実施するためにコンピュータプロセッサを使用することと、をさらに含む。
【００２２】
必要に応じて、分析方法は、ステージ終点の生産物品質またはバッチ終点の生産物品質などの予測プロセス品質値として、工業プロセスに対する予想プロセス変数を決定することがある。工業プロセスがオンラインで稼働している間に、プロセスプラント制御設備から工業プロセス内で決定または測定されたとおりのプロセス変数データを収集することは、プロセス制御設備を再構成することなく、プロセス変数データを収集することを含むことがあり、および／または、１つ以上の通信ファイアウォールを介して、プロセスがオンラインで稼働している間に、プロセスプラント制御設備から工業プロセス内で決定または測定されたとおりのプロセス変数データを収集することを含むことがある。
【００２３】
さらに、工業プロセスの稼働をシミュレートするために収集されたプロセス変数データのうちの少なくとも一部を使用することは、１つ以上のさらなるプロセス変数値を生成するために収集されたプロセス変数データの少なくとも一部で動作する１つ以上のプロセス論理ルーチンまたは１つ以上のプロセスシミュレーションモデルを使用することを含むことがある。
【００２４】
分析方法は、ユーザが、コンピュータプロセッサを使用して、１つ以上の以前の工業プロセスまたはプロセス時間に対する工業プロセスから収集された過去のプロセス変数データと、１つ以上の以前の工業プロセスまたはプロセス時間に対して決定されたとおりのさらなる変数値とから１つ以上のデータ分析モデルを作成することをさらに可能にすることがあり、１つ以上のさらなるプロセス変数値を決定するためにコンピュータプロセッサで実施される１つ以上の論理モジュールをユーザが作成することを可能にすることがある。
【００２５】
さらに別の例では、工業プロセスを制御するために使用されるプロセス制御システムは、少なくともコントローラおよび工業プロセスを実施する１台以上のフィールドデバイスの形式のプロセスプラント制御設備と、プロセスプラント制御設備に通信可能に接続され、工業プロセスがオンラインで稼働している間に、プロセスプラント制御設備から工業プロセス内で決定または測定されたとおりのプロセス変数データを収集するデータ収集デバイスとを含む。プロセス制御システムは、データ収集デバイスに通信可能に接続され、１つ以上のさらなるプロセス変数値を生成するために、収集されたプロセス変数データのうちの一部を使用して工業プロセスの稼働をシミュレートするためにコンピュータプロセッサ上で動作するプロセス論理エンジンと、プロセス論理エンジンに通信可能に接続されているプロセス分析エンジンとをさらに含む。ここで、プロセス分析エンジンは、プロセスの稼働を統計的にモデル化する１つ以上の記憶されたデータ分析モデルと、工業プロセスがオンラインで稼働している間に収集されたプロセス変数データの一部と１つ以上のさらなるプロセス変数値とを使用して工業プロセスに対する予測プロセス変数を決定するために、工業プロセスがオンラインで稼働している間に１つ以上のデータ分析モデルを使用してデータ分析ルーチンを実行するデータ分析実行エンジンとを含む。
【００２６】
この例では、プロセスプラント制御設備は、第１の通信ネットワークに接続されることがあり、プロセス論理エンジンおよびプロセス分析エンジンは、第２の通信ネットワークに接続されることがあり、１つ以上のファイアウォールが第１の通信ネットワークと第２の通信ネットワークとの間に配置されている。必要に応じて、データ収集デバイスは、第１の通信ネットワークと第２の通信ネットワークとの両方に接続されることがあり、第１の通信ネットワークに関して何ら書き込み動作を実行することなく第１の通信ネットワークに関して読み出し専用動作を実行することがある。同様に、プロセスプラント制御設備は、第１および第２の通信ネットワークに接続され、第１の通信ネットワークに接続されているデバイスによって発生された、または、デバイスから受信されたデータを記憶するように適合し、または、動作するデータヒストリアンを含むことがある。
【図面の簡単な説明】
【００２７】
【図１】コントローラおよびフィールドデバイスを有するプロセス制御ネットワークに接続され、バッチまたは連続プロセスに対するオンラインまたはオフラインデータ分析を実施するために使用されうる分離したデータ分析機械の図である。
【図２】疑似プロセス制御システムの形式のデータ分析エンジンおよび論理エンジンを有する非侵入的に実施されたデータ分析機械の例を示すブロック図である。
【図３】オンラインプロセス制御システムから分離しているが、オンラインバッチデータ分析を実行するためにプロセス制御システムの動作に関してオンラインで動作するデータ分析エンジンを有するプロセス制御システムのデータフロー図である。
【発明を実施するための形態】
【００２８】
図１は、非侵入的なデータ分析機械が設置され使用される例示的な工業プロセスプラント５を示す。プロセスプラント５は、１次プラント通信ネットワーク内でデータヒストリアン１２および（任意のタイプのパーソナルコンピュータ、ワークステーションなどでもよい）それぞれが表示スクリーン１４を有する１台以上のホストワークステーションまたはコンピュータ１３に接続されている１台以上のプロセスコントローラ（図１の１１Ａ，１１Ｂ）を有するオンラインプロセス制御システム１０を含む。コントローラ１１Ａ，１１Ｂは、入出力（Ｉ／Ｏ）カード２８Ａ，２８Ｂおよび２９Ａ，２９Ｂを介してフィールドデバイス１５〜２７にさらに接続され、バッチプロセスの１つ以上のバッチランを実施するために動作するか、または、フィールドデバイス１５〜２７の一部または全てを使用して連続プロセスを実施することがある。コントローラ１１と、データヒストリアン１２と、コンピュータ１３と、Ｉ／Ｏデバイス２８および２９と、フィールドデバイス１５〜２７とは、本明細書においてオンライン制御ネットワークとも称される１次制御通信ネットワーク３０に通信可能に接続されている。
【００２９】
データを記憶する任意の所望のタイプのメモリおよび何らかの所望もしくは周知のソフトウェア、ハードウェアまたはファームウェアを有するいかなる所望のタイプのデータ収集ユニットでもよいデータヒストリアン１２は、（図１に示されるように）ワークステーション１３から分離するか、または、ワークステーション１３のうちの１台の一部であってもよい。一例として、Ｅｍｅｒｓｏｎ  Ｐｒｏｃｅｓｓ  Ｍａｎａｇｅｍｅｎｔによって販売されるＤｅｌｔａＶ（登録商標）コントローラでもよいコントローラ１１は、例えば、通信ネットワーク３０の一部であるイーサネット接続または他の任意の所望の通信回線を介して、ホストコンピュータ１３およびデータヒストリアン１２に通信接続されている。コントローラ１１Ａ，１１Ｂは、例えば、標準的な４〜２０ｍＡ通信プロトコル、および／または、ＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバスプロトコル、ＨＡＲＴ（登録商標）プロトコル、ＷｉｒｅｌｅｓｓＨＡＲＴ（登録商標）プロトコルなどなどの任意のスマート通信プロトコルに関連付けられた任意の所望のハードウェアおよびソフトウェアを使用して、フィールドデバイス１５〜２７に通信接続されることがある。
【００３０】
図１のシステムでは、コントローラ１１Ａは、Ｉ／Ｏデバイス２８Ａを介して４〜２０ｍＡデバイスに、または、有線ＨＡＲＴ通信回線などの標準配線を介してＨＡＲＴデバイス１５〜１８に接続されているものとして示されている。同様に、コントローラ１１Ａは、Ｉ／Ｏデバイス２８Ｂを介して、標準配線フィールドバスリンクもしくはバスを経由してＦＯＵＮＤＡＴＩＯＮ（登録商標）フィールドバス装置１９−２２に接続されているものとして図１に示されている。同様に、図１のシステムでは、コントローラ１１Ｂは、ＷｉｒｅｌｅｓｓＨＡＲＴ通信プロトコルを実施するＩ／Ｏデバイス２９Ａおよびトランスミッタを介してＷｉｒｅｌｅｓｓＨＡＲＴ（登録商標）フィールドデバイス２３〜２５に接続されるが、コントローラ１１Ｂは、ＩＥＥＥプロセス制御ベースの無線プロトコルなどの任意の他の無線通信プロトコルを介して、その他のフィールドデバイス２６，２７に接続されているものとして示されている。しかし、コントローラ１１は、他の任意の所望の有線または無線通信プロトコルまたは技術を使用してその他の台数およびタイプのフィールドデバイスと通信することがある。当然ながら、フィールドデバイス１５〜２７は、センサ、バルブ、トランスミッタ、ポジショナなどなどの任意のタイプのデバイスでもよい。さらに詳しくは、フィールドデバイス１５〜２７は、入力を受信し、出力を発生し、および／または、プロセスを制御する能力がある何らかのタイプのプロセス制御コンポーネントを含むことがある。例えば、フィールドデバイス１５〜２７は、プロセスを制御するために、例えば、バルブ、ポンプ、ファン、ヒーター、クーラー、および／または、ミキサなどの制御またはプロセス制御入力デバイスの形式をとる。付加的に、フィールドデバイス１５〜２７は、例えば、プロセスの１つ以上の部分の内部のプロセス変数を測定する温度計、圧力計、濃度計、液面計、流量計、および／または蒸気センサなどのプロセス制御出力デバイスの形式をとることがある。入力デバイスは、１つ以上の指定されたコマンドを実行し、プロセスに変化を引き起こすようにコントローラ１１から命令を受信することがある。さらに、出力デバイスは、プロセスデータ、環境データ、および／または入力デバイスデータを測定し、測定されたデータをプロセス制御情報としてコントローラ１１または他のデバイスに送信する。このプロセス制御情報は、各フィールドデバイスからの測定された出力に対応する変数（例えば、プロセス変数および／または測定された品質変数）の値を含むことがある。さらに、測定されたプロセス変数は、プロセスの一部および／またはフィールドデバイスの特性を測定するフィールドデバイスから発するプロセス制御情報に関連付けられることがある。測定された品質変数は、完成した生産物または中間生産物の少なくとも一部に関連付けられたプロセスの測定特性に関係しているプロセス制御情報に関連付けられることがある。
【００３１】
さらに、Ｉ／Ｏカード２８および２９は、任意の所望の通信またはコントローラプロトコルに従う任意のタイプのＩ／Ｏデバイスでもよい。さらに、２台のコントローラ１１Ａ，１１Ｂだけが図１に示されるが、他の任意の台数のコントローラが、Ｐｒｏｆｉｂｕｓ、ＡＳ−インターフェース等のプロトコルなどの任意の所望の通信プロトコルを使用して、何らかの台数のフィールドデバイスに接続し、制御するために使用されるかもしれない。
【００３２】
いずれにしても、一般的に、コントローラ１１Ａ，１１Ｂは、制御ループを含むことがある（メモリ３２に記憶された）１つ以上のプロセス制御ルーチンを実施または監視し、任意の所望の方法でプロセスを制御するためにフィールドデバイス１５〜２７、ホストコンピュータ１３、およびデータヒストリアン１２と通信するプロセッサ３１を含む。本明細書に記載された制御ルーチンまたはモジュールのうちのいずれかは、そのように望まれる場合、異なるコントローラまたはその他のデバイスによって実施または実行される部分を有することがあることに注意を要する。同様に、本明細書に記載され、プロセス制御システム１０内で実施されるべき制御ルーチンまたはモジュールは、ソフトウェア、ファームウェア、ハードウェアなどの何らかの形式をとることがある。制御ルーチンは、オブジェクト指向プログラミング、ラダー論理、シーケンシャルファンクションチャート、もしくは機能ブロック図を使用するような、または、他の任意のソフトウェアプログラミング言語もしくは設計パラダイムを使用するような任意の所望のソフトウェアフォーマットで実施されることがある。同様に、制御ルーチンは、例えば、１つ以上のＥＰＲＯＭ、ＥＥＰＲＯＭ、特定用途向け集積回路（ＡＳＩＣ）、または、他の任意のハードウェアもしくはファームウェア要素の中にハードコード化されることがある。このため、コントローラ１１は、任意の所望の方法で１つ以上の制御戦略または制御ルーチンを実施するように構成されうる。
【００３３】
一部の実施形態では、コントローラ１１は、一般に機能ブロックと称されるものを使用する１つ以上の制御戦略を実施し、各機能ブロックは、制御ルーチン全体のうちのオブジェクトまたは他の部分（例えば、サブルーチン）であり、プロセス制御システム１０内でプロセス制御ループを実施するために（リンクと称される通信を介して）他の機能ブロックと関連して動作する。機能ブロックは、典型的に、プロセス制御システム１０内である物理的機能を実行するために、トランスミッタ、センサまたはその他のプロセスパラメータ測定デバイスに関連付けられている機能などの入力機能と、ＰＩＤ、ファジィ論理、ニューラルネットワークなどの制御を実行する制御ルーチンに関連付けられている機能などの制御機能と、または、バルブなどのいくつかのデバイスの動作を制御する出力機能とのうちの１つを実行する。当然ながら、ハイブリッド型およびその他のタイプの機能ブロックが存在する。機能ブロックは、コントローラ１１に記憶され、コントローラ１１によって実行されることがあり、これは、典型的に、これらの機能ブロックは、標準的な４〜２０ｍＡデバイス、および、ＨＡＲＴデバイスなどのある種のスマートフィールドデバイスのため使用され、もしくは、これらに関連付けられている場合であり、または、スマートフィールドデバイス自体に記憶され、スマートフィールドデバイスによって実施されることがあり、これは、フィールドバスデバイスの場合である可能性がある。
【００３４】
図１の分解されたブロックに示されるように、コントローラ１１Ａは、ルーチン４２，４４として示された、ある数のシングルループ制御ルーチンを含むことがあり、必要に応じて、制御ループ４６として示された、多入力多出力制御ルーチンなどの１つ以上の高性能制御ループを含むことがある。それぞれのこのようなループは、典型的に、制御モジュールと称される。単一ループ制御ルーチン４２，４４は、バルブ等のプロセス制御デバイス、温度および圧力トランスミッタ等の測定デバイス、またはプロセス制御システム１０の内部の他の任意のデバイスに関連付けられることがある適切なアナログ入力（ＡＩ）およびアナログ出力（ＡＯ）機能ブロックに接続されている単入力／単出力ファジィ論理制御ブロックおよび単入力／単出力ＰＩＤ制御ブロックをそれぞれ使用して単一ループ制御を実行するものとして示されている。高性能制御ループ４６は、１つ以上のＡＩ機能ブロックに通信接続されている入力と、１つ以上のＡＯ機能ブロックに通信接続されている出力とを含むものとして示されているが、高性能制御ブロック４８の入力および出力は、他のタイプの入力を受信し、他のタイプの制御出力を供給するために他の任意の所望の機能ブロックまたは制御要素に接続されることがある。高性能制御ブロック４８は、例えば、任意のタイプのモデル予測制御（ＭＰＣ）ブロック、ニューラルネットワークモデリングもしくは制御ブロック、多変数ファジィ論理制御ブロック、リアルタイムオプティマイザブロック、適応調整された制御ブロックなどでもよい。高性能制御ブロック４８を含む図１に示された機能ブロックは、コントローラ１１Ａによって実行される可能性があること、または、代替的に、ワークステーション１３のうちの１台またはさらにフィールドデバイス１９〜２２のうちの１台などの任意の他の処理デバイスに設置され、他の任意の処理デバイスによって実行される可能性があることが理解されるであろう。理解されるように、制御ループまたは制御モジュール４２、４４および４６は、プロセス制御システム１０内でバッチプロセスもしくは連続プロセスに関連付けられ、または、バッチプロセスもしくは連続プロセスを実施するのに用いられることがある。
【００３５】
その上、図１に示されるように、２次通信ネットワーク５０は、例えば、コンピュータデバイス１３、ヒストリアン１２、および／またはファイアウォールデバイス５１のうちの１台以上を介して、１次制御通信ネットワーク３０に接続されている。２次ネットワーク５０は、例えば、ファイアウォールデバイス５１、および／または、ネットワーク５０に接続されたサーバおよびコンピュータデバイス１２，１３のいずれかまたは全部に設置され、これらによって実施される１台以上のファイアウォールもしくはセキュリティ分離メカニズムを用いて、１次制御通信ネットワーク３０から分離している。重要なことには、データ分析機械５２は、セキュリティ観点から、本質的に、１次制御通信ネットワーク３０から分離されるように、２次ネットワーク５０に、従って、様々なデバイス１２，１３に通信接続されている。データ分析機械５２は、メモリ５４およびプロセッサ５６を有する任意のタイプのコンピュータまたは処理デバイスでもよく、メモリ５４は、１次制御システム３０によって、もしくは、１次制御システム３０上で実施され、１つ以上のバッチまたは連続プロセスに関して、例えば、１次またはオンライン制御ネットワーク３０に対するオンラインまたはオフラインデータ分析を含むデータ分析を実行する１つ以上のデータ分析ルーチンおよび／またはアプリケーションを記憶し、プロセッサ５６がこの１つ以上のデータ分析ルーチンおよび／またはアプリケーションを実行する。２次通信ネットワーク５０は、配線接続された通信ネットワークを使用するものとして示されているが、２次通信ネットワーク５０は、任意の所望の無線通信プロトコルおよび／またはハードウェアを使用する無線通信ネットワークを含むこと、または、その代わりに無線通信ネットワークとして実施されることがあり、有線接続もしくは無線通信のいずれかを介して１次通信ネットワーク３０に接続されることがあり得る。
【００３６】
図１の拡大されたブロック５９によって指示されるように、データ分析機械５２は、論理エンジン６２に接続されているデータ分析エンジン６０を含むことがある。以下、より詳細に検討されるように、データ分析エンジン６０は、オンラインまたはオフラインデータ分析を実行するために使用される可能性がある１つ以上のデータ分析モデルを作成または形成するために使用されるデータ分析またはモデリングインターフェースと、データ分析を実行する１つ以上のモデルを記憶するメモリと、プロセスの内部のプロセス変数、または、プロセスによって生産されている生産物の品質変数の予測を行うようなプロセス制御ネットワーク１０の動作に関するデータ分析、プロセス制御システム１０への変更のレコメンデーション、プロセス性能の分析などを実行するために１次通信ネットワーク３０に接続されているプロセス制御システム１０の動作と併せて１つ以上のデータ分析モデルを実行するデータ分析実行エンジンとを含むことがある。さらに、疑似制御システムモジュールで部分的または完全に構成されている論理エンジン６２は、オンラインデータ分析を実行する際にデータ分析エンジン６０によって用いるプロセス制御システム１０に対するオンラインパラメータまたは変数値を収集および／または作成するために、１次通信ネットワーク３０（または、これの何らかの関連した部分）を介して実施されているとおりのプロセス制御システム１０の動作をシミュレートまたは追跡することがある。必要に応じて、疑似制御システムモジュールは、オンラインプロセス制御ネットワーク３０の同じまたは異なるバージョンを含み、オンラインプロセス制御ネットワーク３０内で使用されるとおりの同じまたは異なるタイプのプロセス制御システムソフトウェアを使用して形成されることもある。このように、疑似プロセス制御システムまたはモジュールは、同じまたは異なる（例えば、高性能）能力を使ってオンラインプロセス制御ネットワーク３０の動作をシミュレートし、それによって、オンライン制御ネットワーク３０内の動作のため試験されている、または、オンラインプロセス制御ネットワーク３０内に設けられていない能力を有する制御ネットワークの動作をシミュレートすることがある。
【００３７】
オンライン動作中に、または、場合によっては、オフライン動作中に、データ分析エンジン６０を支援するために、通信モジュール６５がコンピュータデバイスまたはサーバ１３のうちの１台に配置され、１次通信ネットワーク３０に接続されているときに、プロセス制御ネットワーク１０から様々なプロセス変数値およびその他のプロセス情報を収集または読み取るために動作し、オンラインまたはオフラインデータ分析を実行する際にデータ分析エンジン６０および／または論理エンジン６２によって用いるこれらの値を、２次通信ネットワーク５０を介して、データ分析機械５２に送出するためにさらに動作する。オープンプロセス制御（ＯＰＣ）サーバの形式のデータ収集デバイスであるとして本明細書中で詳しく記載されている通信モジュール６５は、読み出し専用の方法で、コントローラ１１Ａ，１１Ｂ、データヒストリアン１２、フィールドデバイス１５〜２７、コンピュータ１３、または、１次通信ネットワーク３０内の他の任意のデバイスを含めて、１次プロセス通信ネットワーク３０に関連付けられた、または、接続されたデバイスから情報を読み取り、収集する何らかのタイプのシステムまたはモジュールでもあり得る。通信モジュールまたはデータ収集デバイス６５は、２次通信ネットワーク５０にさらに接続され、プロセスプラントデータを２次ネットワーク５０上の１以上のユーザまたはデバイスに供給するために動作する。通信モジュール６５は、（典型的に、ＯＰＣデバイスの場合と同様に）変数単位でプロセス変数データを収集し送信するか、または、例えば、ＨＴＭＬベースのプロトコルを使用して、ウェブページ内でこのデータを収集し送信することがある。
【００３８】
概括的に言うと、通信モジュール６５は、ＯＰＣサーバとして実施されることがあり、このＯＰＣサーバは、コントローラ、データヒストリアンなどのようなデバイスに一般に接続し、デバイスからのデータを標準ベースのＯＰＣフォーマットに翻訳するように動作する、アプリケーションプログラミングインターフェース（ＡＰＩ）またはプロトコルコンバータとしての機能を果たすソフトウェアアプリケーションである。ＯＰＣ協議会によって管理されるＯＰＣプロトコルは、Ｍｉｃｒｏｓｏｆｔ（登録商標）と共同して作業するある数の主要な全世界的な自動化ハードウェアおよびソフトウェア供給業者の協力で作成された工業規格である。この規格は、ＰＣベースのクライアント間でリアルタイム自動化データを交換する方法を定義する。このように、ＯＰＣは、異なるデータ構造体、プロトコルなどを有する異なるネットワークなどの異なるネットワーク間でのデータ捕捉、取り込み、および通信を可能にするために、例えば、様々な異なるタイプの独自開発ネットワークの間でデータアクセスをミラー化または供給する周知の方法を使用する。ヒューマンマシンインターフェース、ヒストリアン、スプレッドシート、トレンディングなどのアプリケーションなどのＯＰＣ準拠アプリケーションは、ＯＰＣサーバに接続し、デバイスデータを読み取り（場合によっては、書き込む）ためにこのサーバを使用する可能性がある。通信モジュール６５は、コンピュータデバイス３０のうちの１台に設置されているものとして示されているが、この通信モジュールは、その代わりに、ファイアウォールデバイス５１、ヒストリアン１２、または、一般によくあるように、スタンドアロンデバイスもしくはサーバなどの、１次通信ネットワーク３０上の他の任意のデバイスに設置されることがあり得る。
【００３９】
図１のデータ分析機械５２を再び参照すると、データ分析機械のデータ分析エンジン６０は、メモリ５４に記憶され、プロセッサ５６によって実行される１つ以上のプロセス分析ルーチンを含むことがある。データ分析エンジン６０および論理エンジン６２は、単一のコンピュータ読み取り可能なメモリに記憶され、機械５２の単一のプロセッサで実行されるものとして示されているが、データ分析エンジン６０および論理エンジン６２は、２つ以上のメモリに記憶されることがあり、および／または、２台以上のプロセッサで実行されることがあり、これらのメモリおよびプロセッサは、同じまたは異なるデバイスに設置されることがある。概括的に言うと、データ分析エンジン６０と、従って、エンジン６０によって実行されるプロセス分析ルーチンとは、１次通信ネットワーク３０内で、１つ以上のプロセス変数測定量、制御信号、構成データ、および／または、その他の測定もしくは発生されたデータ値を受信するために、（例えば、ＯＰＣサーバ６５を介して）制御ルーチン４２，４４，４６などの１つ以上の制御ルーチン、データヒストリアン１２、および／または、１次通信ネットワーク４０内で１つ以上のアプリケーションに通信可能に接続されている。しかし、この場合、データ分析エンジン６０は、プロセス制御システム１０がプロセス制御システム動作の一部として収集するように構成されているデータまたは情報を受信するだけである。しかし、データ分析エンジン６０の１つ以上のモデル構築ルーチンは、１つ以上の統計的プロセスモデルまたは進行中プロセス、または、オンラインバッチプロセス、または、連続プロセスを分析するために使用されうるその他のモデルを作成するために、このデータを使用することがある。データ分析エンジン６０は、その後、プロセスの内部のプロセス変数値の予測を生成する、プロセスの内部の因果関係を分析する、プロセスによって生産されている生産物もしくは出力の品質特性を予測する、プロセスを最適化するためプロセスへの変更を提案もしくはレコメンドするなどのために、プロセスが動いているとき、オンラインプロセスの稼働に関するＯＰＣサーバからのデータを再び使用して、これらのモデルをオンラインで実行することがある。データ分析エンジン６０のデータ分析ルーチンは、プロセスオペレータなどのユーザに、プロセス制御システム１０によって実施されているとおりのオンラインまたは進行中のプロセスに関する情報をさらに表示し、プロセスがより効率的に動作すること、プラント１０内で製造されている生産物の品質を高めるなどを可能にするために制御システムもしくはプロセスへの変更のレコメンデーションを行うことがある。
【００４０】
一例では、データ分析エンジン６０は、米国特許出願公開第２０１０／０３１８９３４号により詳細に記載されたデータ分析ルーチンのいずれかもしくは全部を実施することがあり、この米国特許出願公開は、オペレータもしくはその他のユーザがプロセスの内部のプロセス品質劣化もしくは変動の原因を検出し決定することを可能にさせ、それによって、ユーザもしくはオペレータが品質もしくは劣化問題を除去もしくは低減するためにプラントを変更することを可能にさせるプロセス分析機械について記載する。さらに、データ分析エンジン６０は、生産物品質または最終出力品質変数などのプロセス変数の予測を生成するためバッチプロセスなどのプロセスをモデル化するために使用される１つ以上のプロセスモデルを構築するために、米国特許出願公開第２０１１／０２８８６６０号に記載された技術を使用することがある。詳しくは、この刊行物は、バッチプロセスのデータ分析エンジンで用いる１つ以上のプロセスモデルを構築し、その後、プロセスの中の後続のバッチランの進行中もしくはオンライン動作を分析するためにこれらのモデルを使用する方法について記載する。より詳しくは、この刊行物は、データを収集し、バッチプロセスの中の様々なステージ、手順、動作などのようなバッチプロセスの内部の様々な事象の開始および停止を検出することに基づいて、モデルを作成するために使用されるプロセスの様々な異なるバッチランから収集されたデータを整列し、次に、整列されたデータからバッチプロセスに対するプロセスモデルを作成する方法について記載する。その後、オンラインバッチからのデータは、整列されたモデルデータと共にこのバッチプロセスから収集されたデータを整列することと、現在またはオンラインバッチを統計的モデルと比較する方法を決定し、プロセス変数もしくは生産物の品質変数の予測を行い、ユーザインターフェース動作のための上述の分析用の計算エンジンを設けるために、プロセスモデルを使用して、整列されたデータについてＰＬＳ、ＰＣＡおよび／またはその他の統計的データ分析方法を動かすことと、により分析される可能性がある。さらに、データ分析エンジン６０は、プロセスをステージの組に分割し、そのように定義されたステージに基づいて、ＰＬＳ、ＰＣＡおよびその他のプロセスモデルを使用してオンラインデータ分析を実行するさらなるデータ分析ルーチンおよびモデル構築ルーチンについて記載する米国特許出願公開第２０１１／０２８８８３７号に記載された技術を使用することがある。同様に、データ分析エンジン６０は、プロセススループットレンジなどの異なるプロセス状態を考慮する方法で作成されたモデルを使用してバッチまたは連続製造プロセスをモデル化し、現在のプロセス状態に基づいてデータ分析で使用されたモデルを修正または調整するシステムについて記載する米国特許出願公開第２０１３／００６９７９２号に記載された技術を使用することがある。
【００４１】
次に図２を参照すると、図１のデータ分析エンジン６０および論理エンジン６２を含むデータ分析機械５２の一例がより詳細に示される。詳しくは、図２に示されるように、データ分析エンジン６０は、メモリに記憶されたデータ分析もしくは分析モデルまたはルーチン７０の組と、データ分析（ＤＡ）実行またはランタイムエンジン７２と、モデル作成または構築エンジン７３と、ユーザインターフェース（ＵＩ）７４と、例えば、任意の所望の通信プロトコルまたはプロトコル群に関連付けられた通信スタックでもよい通信インターフェース７６とを含む。モデルもしくはルーチン７０は、例えば、モデルビルダーエンジン７３およびＵＩ  ７４を使用してユーザまたはモデルビルダーによって作成され、または、その他のソースから取り込まれることがある。概括的に言うと、モデルもしくはルーチン７０は、統計的に許容可能またはモデル化されたプロセスランの動作と比べて、プロセスプラント１０の現在の動作特性をモデル化、または、反映させるために、任意の所望の方法で開発された統計に基づく予測モデルなどのデータ分析モデルを含む、または、使用する。ランタイムまたは実行エンジン７２は、プラントによって生産されている生産物の生産物品質もしくは出力品質の予測、現在もしくは将来のプロセス変数値の予測などのような予測を導き出すため、プロセス制御ネットワーク１０またはこれの一部の現在の動作をモデル化するために、適切な時点で様々モデルまたはルーチン７０を使用して、オンラインで、すなわち、プロセス制御ネットワーク１０の動作中に、モデルまたはルーチン７０のうちの１つ以上を実行することがある。ランタイムエンジン７２の出力は、プラント１０の、または、プラント１０の内部の他の任意の所望の分析を実行するために使用されうる。例えば、ランタイムエンジン７２は、任意の所望の分析方法を使用してプラント１０の動作を分析することがある。特有の例では、ランタイムエンジン７２は、生産物変数値もしくは生産物品質値を推定もしくは予測するために、予測出力変動もしくは品質への様々なパラメータの寄与度を決定し、ユーザが閲覧することを可能にするために、１つ以上の制御パラメータへの変動に基づいてプラント動作のシミュレーションを動かすなどのために、米国特許出願公開第２０１０／０３１８９３４号または前述の他の刊行物のいずれかに記載されたシステムにおいてデータ分析エンジンとして動作することがある。場合によっては、ランタイムエンジン７２は、プロセス制御ネットワーク１０により実施されている現在動いているバッチプロセスによって出力される生産物品質の予測を行い、または、プロセス制御ネットワーク１０のプロセス変数値を予測し、データ分析モデルおよびこれらの刊行物に記載された技術を使用してＵＩ  ７４を介して、このような予測および品質変数値をオペレータなどのユーザに提供する。オペレータは、その後、より優れた品質特性を有する生産物を生産するため、コントローラ１１Ａもしくは１１Ｂのうちの１台以上を介して、プロセス１０の制御を変更するためにこれらの予測を使用することがある。このようなユーザインターフェースの例は、例えば、米国特許出願公開第２０１０／０３１８��３４号に詳細に記載されている。さらに、データ分析エンジン内で用いるプロセスモジュールを作成する方法は、米国特許出願公開第２０１１／０２８８６６０号、第２０１１／０２８８８３７号および第２０１３／００６９７９２号に記載され、これらの開示内容全体がここで参照によって本明細書に明確に組み込まれる。
【００４２】
重要なことには、動作中に、ランタイムエンジン７２は、モデル７０をランまたは実施するため必要なデータを取得し、必要に応じて、オンライン予測および品質評価を行うか、または、その他のオンライン分析をもたらすために通信インターフェース７６を介して論理エンジン６２と通信する。図２に示されるように、論理エンジン６２は、疑似制御ネットワーク８０、プロセス論理エンジン８２、現実のプロセス制御ネットワーク１０と通信する通信ブロック８４、ＵＩインターフェース８６、および論理ビルダーアプリケーション８８を含む。一例では、疑似制御ネットワーク８０は、図１に示された制御ネットワーク１０の動作をシミュレートするために構成されている制御システムシミュレーションでもよい。この例では、疑似制御ネットワーク８０は、シミュレーション８０の中に移植された現実の制御ネットワーク１０の一部または全てのコンポーネントを含むので、疑似制御ネットワーク８０は、プロセス変数値の一部または全てをシミュレートする。疑似制御ネットワーク８０は、現実の制御ネットワーク１０に実施されているのと同じソフトウェアモジュールを使用して構成または実施されることがあるが、疑似制御ネットワークは、異なるバージョン（例えば、異なる特徴を有する）のこのような制御ネットワークでもよく、または、完全に異なるタイプの制御ネットワークでもよい。このように、データ分析システム５２は、そのように望まれる場合、モデル化されている現実のプロセス制御ネットワークの動作をシミュレートするために異なるタイプの制御システムを使用することがある。
【００４３】
概括的に言うと、疑似制御ネットワーク８０は、モデル７０によって必要に応じて現実の制御ネットワーク１０に関連付けられている構成値を含むまたは使用し、現在構成されているとおりのプロセスプラント１０の内部のこれらのプロセス変数、構成変数などの間の相互接続を模倣し、もしくは、記憶する。その結果、疑似制御ネットワーク８０は、構成されているとおりの現実のプロセスプラント１０に関連付けられ、使用される一部または全てのプロセス変数、構成変数、接続変数、ユーザインターフェース変数などを含む。
【００４４】
理解されるように、図２に示された通信ブロック８４は、現実のプロセスプラント１０によって送信されるか、または、使用されるプロセス変数、制御信号、アラームおよび警報などと、プラント１０内で変更されたような構成パラメータなどとの現在値を取得するために、プロセスプラント１０から現実のプロセスプラントデータまたは情報を取得するか、または、読み取り、これらの値を疑似制御システム８０に供給する。一例では、これらのプロセス変数、制御およびプラント構成変数などは、オープンプロトコルデータ取得デバイス９０を使用して取得されることがあり、このオープンプロトコルデータ取得デバイスは、図１の１次通信ネットワーク３０に設置されているコンピュータデバイス１３の内部に配置された図１のＯＰＣサーバ６５でもよい。ここで、データ取得デバイス９０は、プロセスプラント１０の内部のヒストリアン１２と、および／または、コントローラ１１Ａ，１１Ｂ、フィールドデバイス１５〜２７、プラントデバイスの内部の機能ブロックまたは制御モジュール４２，４４，４６などの制御モジュール、などのようなプラント１０の内部の現実の物理デバイスと直接通信することがあり、収集された情報を論理エンジン６２に供給し、より詳しくは、論理エンジン６２の疑似制御ネットワーク８０に供給する。一例として、ＯＰＣサーバ９０は、様々なプロセス変数、制御変数、コンフィギュレーションパラメータ、アラーム、警報、メッセージなどの現在値を、これらの値がプロセスプラント１０の内部に存在するときに、読み取る、または、取得するために、図１の１次通信ネットワーク３０の内部に接続されることがあり、シミュレーションの一部分として疑似制御ネットワーク８０内でこれらの値を単にミラー化することがある疑似制御システム８０にこれらの値を供給するために動作することがある。
【００４５】
当然ながら、図２のＯＰＣサーバ９０は、知られているようにヒストリアン１２を介して、プラント１０内の現実のデバイスを介して、または、両方を介して、プラント１０の内部の様々な値にアクセスできるようにするために、（概してプラント内で行われるとおりに）プラント１０より前またはプラント１０と共に構成された何らかの標準的なＯＰＣネットワークサーバでもよい。ここでは、ＯＰＣデバイス９０は、図１のデータ分析システム５２と１次通信ネットワーク３０との間でファイアウォールの機能を果たすか、または、ファイアウォールを実施する。従って、ＯＰＣデバイス９０は、１次通信ネットワーク３０で全く書き込み動作を実行することなく、このネットワーク内で読み出し専用動作だけを実行することがある。ＯＰＣサーバ９０または他の任意の類似するオンラインプラントデータ取得デバイスの使用は、データ分析エンジン６０および論理エンジン６２がプラントネットワーク１０を再構成する必要なしに、プラントネットワーク１０を再認証する必要なしに、プラント１０に接続されることを可能にする。
【００４６】
理解されるように、疑似プロセス制御ネットワーク８０は、ＯＰＣサーバ９０によって読み取られるまたは取得され、必要に応じてオンライン診断または分析エンジン７２によるこれらの変数値へのアクセスを可能にするようにプログラムされているプロセス変数およびその他の変数のそれぞれに対して、プラント１０から取得されたとおりのデータを記憶することがある。当然ながら、ＯＰＣサーバ９０は、新しい変数値がプラント内で発生されたとき、変数値を収集し、疑似制御ネットワーク８０の内部の変数またはパラメータ値を更新するために、プラント１０のランタイム中に動作する。このため、ＯＰＣサーバ９０は、診断ランタイムエンジン７２がプロセスプラント１０に実際に接続され、プラント１０から直接的にこれらの変数値を測定または取得しているかのように、プラント１０の内部の変数およびパラメータ値が論理エンジン６２と、従って、ランタイムエンジン７２とによって直ちに利用可能、アクセス可能にするために動作する。
【００４７】
しかしながら、多くの場合に、ランタイムエンジン７２および／またはランタイムエンジン７２によって使用されるモデル７０は、様々な変数値、パラメータ値、または、ＯＰＣサーバ９０によって収集されないその他の情報にアクセスできることが必要であり、なぜならば、ＯＰＣサーバ９０は、このデータを収集するように初期にセットアップされていない、または、このデータが発生されないか、もしくは、プロセスプラント１０内で直接的に収集され得ないからである。このような変数もしくはパラメータ値の例は、ステージ、フェーズ、手順、ユニットフェーズ手順などがプロセス内で開始もしくは終了したとき、プロセスの内部の状態パラメータの値に基づく状態の変化などのようなプロセスの内部のステージもしくは状態の変化を認識することを含む。当然ながら、このような変数またはパラメータは、プロセスプラント１０によって測定されなかった、もしくは、プロセスプラント１０内で収集されなかったプロセス変数の推定値、または、測定されなかった、収集されなかった、さもなければ、ＯＰＣサーバ９０で利用できないその他のデータもしくは情報でもよい。この例では、プロセス論理エンジン８２は、例えば、論理ビルダーアプリケーション８８およびＵＩ  ８６を使用してオペレータもしくは構成エンジニアによって構成もしくは作成されることがある１つ以上のさらなるプロセス論理モジュール９２を実行する。プロセス論理モジュール９２は、ランタイムエンジン７２の動作の一部分として、ランタイムエンジン７２もしくはモデル７０によって必要とされる付加的な変数値もしくはデータを計算するために、ＯＰＣサーバ９０によって作成もしくは収集されたとおりの、または、そうではない場合、プロセスシミュレーションシステム８０によって決定され、もしくは、プロセスシミュレーションシステム８０の内部に記憶されているとおりのプラントデータの少なくとも一部を使用してプロセス論理エンジン８２内で動作する。
【００４８】
このため、例えば、一例では、プロセス論理モジュール９２のうちの１台は、バッチステージの変化、または、バッチプロセスの１つのバッチフェーズもしくは手順から別のバッチフェーズもしくは手順への変化を検出するために、プロセスシミュレーションシステム８０によってシミュレートされた、もしくは、プロセスシミュレーションシステム８０の内部に保持されたとおりのプロセスプラントデータに基づいて動作することがある。このようなバッチステージまたはバッチフェーズもしくは手順の変化の検出は、ランタイムエンジン７２が、プラント１０においてオンラインで実施されているバッチプロセスのフェーズもしくはステージもしくは手順に対して、新しいモデル７０を実行するか、もしくは、新しいモデル７０で用いるデータを収集することを知ることを可能にするために必要とされることがある。この例では、バッチのフェーズもしくはステージもしくは手順の変化は、プラント１０もしくはＯＰＣサーバ９０によってそれ自体では測定されないことがあり、このアクションは、１次通信ネットワーク３０の内部のＯＰＣサーバ９０に具体的に通信されないかもしれない。この事実を補償するために、プロセス論理モジュール９２のうちの１台以上がこの情報のため作成され、この情報を決定するために実行されることがあり、この情報は、オンラインプラント１０からそれ自体としては決して通信されることがなく、実際には、プラント１０内でそれ自体として検出もしくは測定されないことがある。
【００４９】
この動作を可能にするため、プロセス論理エンジン８２は、制御システムに関連付けられ、ＯＰＣサーバ９０によって収集されるか、もしくは、プロセス制御シミュレーションシステム８０によってシミュレートされたプロセスデータに基づいて、バッチフェーズもしくはステージの終了、バッチプロセスなどのプロセス内部の新しいバッチフェーズ、ステージ、もしくはその他の遷移点の始まりもしくは開始、連続もしくはバッチプロセスの状態変数によって決定されたとおりの新しいステージへのプロセスのエントリなどを認識するために、プラント１０から収集された、または、プラントシミュレーションシステム８０によって供給されたプロセス変数データ、構成データ、モードデータ、プロセス制御信号データなどのようなその他のデータを分析するためにプロセス論理モジュール９２のうちの１つ以上を使用する。プロセス論理エンジン８２は、例えば、プロセスシミュレーション８０からのデータ、および／または、ＯＰＣサーバ９０からのデータに基づいてプロセス論理モジュール９２を動かすことにより、この遷移を検出するためにセットアップされることがあり、次に、プラント１０により実行されているプロセスのためオンラインでプロセス変数予測および品質評価などを実行するために、この遷移データをモデル７０と共に用いるランタイムエンジン７２に通信することがある。
【００５０】
データ分析機械５２において、より具体的には、プロセス論理エンジン８２において作成され、使用されうる様々なタイプのプロセス論理モジュールの例は、プロセスからの様々な情報に基づいて、バッチプロセスステージ遷移などのプロセスステージもしくは状態の遷移を検出する論理ルーチンもしくはモジュールを含む。例えば、一例では、ユーザもしくはオペレータは、モデル構築のためのステージの始まりもしくは終わりを定義するプロセス論理モジュールもしくはルーチンを作成することがある。詳しくは、論理モジュールは、バッチステージがプロセス内で開始し、終了するときを定義するため作成されることがある。このような論理モジュールは、オフラインで（例えば、データヒストリアンから取得されたとおりの以前のバッチからのデータを使用して）モデルを作成するときに使用されることがあり、次に、同じ方法でバッチステージ遷移を認識することによりオンライン分析を実行するために、オンライン分析で、もしくは、オンライン分析のため使用されうる。このように、同じステージ定義ルールは、バッチステージの開始時および終了時を明示的にシグナル通知するために、バッチ分析によって実施されるモデルを作成するために使用されたとおりに、オンラインバッチ分析監視システムで使用されることがあり得る。
【００５１】
当然、ステージもしくはその他のプロセス区分の開始ルールおよび終了ルールを定義するのに参加するために任意の数の制御システム条件が使用されることがあり得る。例えば、様々なプロセス条件を定義し、複合条件を作成するために、プロセス論理モジュールもしくはルールの一部分として柔軟な方法で条件を１つに集約することが可能である。一例として、バッチプロセスの「ステージ１」と称される第１のステージは、開始：
動作「動作３ｂ−１」が開始したとき、または、動作「動作３ｂ−１」が終了したとき、かつ、プロセスパラメータ「ＰＰ１」が１９０より大きくなり、その後、１０分間が経過したとき
として定義されることがある。例えば、ユーザもしくはオペレータがモデル構築のためのステージを定義しているとき、零個以上のバッチもしくはその他のプロセスステージがプラント設備階層の中でユニット毎に定義される。ステージが定義されていないユニットは、データ分析機械６０内でバッチモデルが発生されていない、または、配置されていない。
【００５２】
その上、一例では、（プラント内部の設備のグループである）ユニットのためのステージを定義することは、例えば、文字列であってもよいステージ名を定義することで始まる。その後、始動されるオンラインバッチ分析監視に対して、ステージ名文字列が対応するユニットモジュール内のバッチ分析ステージパラメータに書き込まれる。多経路バッチにおいて同じ処理機能を実行する他のユニットのため定義されたステージ名は、同じステージ名を有する可能性が非常に高い。この例では、同じステージ名がユーザディスプレイにおいてマルチユニットバッチの中に２回以上（別個のユニットに）現れることが可能であってもよい。いずれにしても、複数の異なるタイプのステージ事象が様々なステージ遷移もしくはその他のタイプの事象を識別するために定義されることがある。ステージ事象は、例えば、ステージ「ユニット開始」事象、ステージ「ユニット終了」事象、ステージ「使用中」事象などを含むことがある。
【００５３】
より詳しくは、ステージ「ユニット開始」事象は、モデル構築中およびオンラインデータ分析中に適用される論理モジュールとして作成される可能性がある。この定義は、例えば、（１）ユニット上の第１の製法が開始する、（２）ユニット手順インスタンスが開始する、（３）動作インスタンスが開始する、（４）フェーズインスタンスが開始する、（５）フェーズインスタンスが終了する、（６）動作インスタンスが終了する、または（７）ユニット手順インスタンスが終了するときのいずれかとして定義される可能性がある。
【００５４】
同様の方法で、モデル構築中およびオンラインデータ分析中に適用される可能性があるステージ「ユニット終了」事象は、例えば、（１）ユニット手順インスタンスが開始する、（２）動作インスタンスが開始する、（３）フェーズインスタンスが開始する、（４）フェーズインスタンスが終了する、（５）動作インスタンスが終了する、（６）ユニット手順インスタンスが終了する、または（６）ユニット上の最後の製法が終了するときのいずれか、または、いずれかの組み合わせとして定義される可能性がある。
【００５５】
さらに、ステージ定義は、（設備階層において）１ユニット当たり単一のステージが「使用中の＜ユニット名＞」と称されるステージ名として定義されることがあるように定義されるような様々な方法で定義されることがある。ここで、ステージ「ユニット開始」事象は、ユニット上の第１の製法が開始したときに起こり、ステージ「ユニット終了」事象は、ユニット上の最後の製法が終了したときに起こる。このステージ定義の組は、設備階層内のあらゆるユニット上のバッチ制御アクションがバッチ分析監視に参加すべきこと、１ユニット当たり単一のステージがバッチ分析モデルに対する適切な粒度を定義または提供することを仮定する。当然ながら、その他のステージ定義は、ユニットに関連付けられたフェーズ、ユニットフェーズ、動作などのようなその他の規準に基づいて定義された１ユニット当たり複数のステージを含む、その他のステージ粒度を提供することがある。
【００５６】
必要に応じて、論理エンジン８２は、ユーザまたはデータ分析エンジンがユニット上で、（１）全てのステージを除去し、ユニットに対して定義されるステージがないという結果になる（これは、次に、ユニットは、バッチ分析監視に参加しないことを意味する）、（２）１ユニット当たり１つのステージを定義し、ユニットに対して初期設定ステージ構成という結果になる（に戻る）、（３）ユニット手順当たり１つのステージを定義し、これらの可能なものから基準候補バッチを選択した後に、このユニットに対する現在のステージ定義がこのユニットを使用して動く各ユニット手順に対して定義されたステージで置換される、といった何らかの数のステージ定義アクションを実行することを可能にすることがある。ここで、基準バッチ内の各ユニット手順は、（１）ステージ名、例えば、「＜ユニット手順インスタンス名＞」、（２）ステージ「ユニット開始」事象、例えば、「＜ユニット手順インスタンス名＞開始」または（３）ステージ「ユニット終了」事象、例えば、「＜ユニット手順インスタンス名＞終了」として定義されることがある。
【００５７】
ステージは、動作に関連して、さらに、または、代わりに、定義されることがある。例えば、ユニット上で１動作当たり１ステージを定義することが可能である。例えば、取り込まれたものから基準候補バッチを選択した後、ユニットに対する現在のステージ定義は、このユニットを使用して動いた各動作のため定義されたステージと置換され、基準バッチ内で見つけられた各動作に対して、ステージは、（１）ステージ名、例えば、「＜動作インスタンス名＞」、（２）ステージ「ユニット開始」事象、例えば、「＜動作インスタンス名＞開始」または（３）ステージ「ユニット終了」事象、例えば、「＜動作インスタンス名＞終了」として定義されることがある。
【００５８】
同様に、ステージは、フェーズに関連して、さらに、または、代わりに、定義されることがある。この例では、基準候補バッチを選択した後、ユニットに対する現在のステージ定義は、このユニットを使用して動いた各フェーズに対して定義されたステージと置換され、基準バッチ内で見つけられた各フェーズに対して、ステージは、（１）ステージ名、例えば、「＜フェーズインスタンス名＞」、（２）ステージ「ユニット開始」事象、例えば、「＜フェーズインスタンス名＞開始」、および（３）ステージ「ユニット終了」事象、例えば、「＜フェーズインスタンス名＞終了」として定義される。
【００５９】
ユーザは、ステージをさらに構成することがある。この例では、取り込まれたものから基準候補バッチを選択した後、ユーザは、ユニットに対する既存のステージ定義の追加／削除／編集を完全に制御するために、ＵＩ  ７４を使用することがある。その上、モデル構築が適切に機能するため、ユニット上で定義されたステージは、時間系列内で互いにオーバーラップすべきではない。ＵＩは、ステージオーバーラップエラーを指摘するようにプログラムされ、その結果、これらのエラーがこの構成ステップを出る前に訂正される可能性があることが非常に望ましい。
【００６０】
さらに、モデルを構築するために使用された訓練用バッチおよび試験用バッチに亘る、または、訓練用バッチと試験用バッチとの間の製法およびフェーズ名の変動または変化を受け入れるために、モデルビルダーアプリケーション７３は、ある数（例えば、５個）までの製法／フェーズ名のうちのいずれかが各ステージ「ユニット開始」事象および各ステージ「ユニット終了」事象において一致することがあることを指定する可能性がある。例えば、単一の基準バッチを使用して、ステージ「ユニット開始」事象は、「フェーズ＿スチーム＿ヒート：１−１」；開始として決定されるかもしれない。しかし、この事象は、フェーズ＿エレック＿ヒートというフェーズ名を代わりに使用した事象を含むいくつかの訓練用または試験用バッチについて解決されない可能性がある。この例では：
「フェーズ＿スチーム＿ヒート：１−１」；開始
または
「フェーズ＿エレック＿ヒート：１−１」；開始
と等価であるとしてステージ開始事象を精緻化することが可能であろう。
【００６１】
モデル構築アプリケーションは、モデル構築のため使用されるバッチの全てを通じて全てのステージ開始および終了イベントの存在をチェックする手段をさらに提供することがある。訓練用または試験用バッチ毎に、（１）バッチＩｄ、および（２）候補バッチ用途：（訓練用または試験用）を指示すべきである。理想的には、ステージ開始および終了事象がステージ毎に明白に解決され得ない場合、（解決できないステージ事象を伴う候補バッチを不適格とみなすために無視することを含めて）用途を変更する手段が提供される。このような表示は、（モデル構築から不適格とみなされる）ステージ事象が欠けているバッチを見つけることを容易にすることがあり得る。表示は、多くのバッチのため機能しない（このステージのため不十分に選択されたステージ定義事象（群）を示唆している）ステージ定義を見ることも容易にするべきである。この表示は、訓練用および試験用バッチとの相互チェックしているときに、何らかのバッチにおいて何らかのステージオーバーラップエラーが見つけられた場合、見つけられたステージ系列を見ることも容易にするべきである。
【００６２】
ユーザが正しいユニットにおいて期待ステージ名文字列を設定し、バッチ実行中の正しい時点でステージパラメータを設定するために自分の論理モジュールを構成するのを支援するため、モデル構築アプリケーションは、（平文として）現在のステージ定義を（ユーザが電子メール、または、印刷されるか、もしくは、ＵＳＢデバイスを介して移動させられるファイルなどに貼り付けるために）Ｗｉｎｄｏｗｓクリップボードにコピーする手段を提供することがある。
【００６３】
いずれにしても、論理モジュールが機能できるステージを定義するために作成され、期待ステージ系列が導出されると、モデル構築アプリケーションは、ステージによるパラメータ用途を構成する手段を提供する可能性がある。この例では、モデル構築アプリケーションは、ステージ系列内で値を捕捉し、または、各ＩＣＰを使用すべきステージ群を指定する手段を提供する可能性がある。モデル構築中に、ＩＣＰを使用するステージ系列内の第１のステージは、このステージに対する開始事象の時点で（ＯＰＣ  ＨＤＡサーバ、または、取り込まれたデータファイルから）値を捕捉させ、同じＩＣＰを使用するために構成されているステージ系列内の後続のステージは、先行するステージによって捕捉されたとおりにＩＣＰに対する値を使用する。付加的に、モデル構築アプリケーションは、各ＰＰを使用すべきステージ系列内のステージ群を指定する手段を提供し、各ＰＱＰ（予測）値を生成すべきステージ系列内のステージ（群）を指定する手段を提供することがある。
【００６４】
同様の方法で、論理モジュールは、疑似制御システム８０によって受信され、ミラー化され、または発生された変数の関数として計算されることがあるデータ分析を実行するために、モデルもしくはルーチン７０によって、または、ランタイムエンジン７２によって必要とされることがあるその他のプロセス変数、プロセス遷移、プロセス定義などを定義または発生させるために作成されることがある。この例では、データ分析エンジン６０の構成中に、ユーザは、バッチの内部の遷移を反映する遷移情報、バッチフェーズもしくはその他のステージ遷移、プロセス変数もしくはプロセス変数から導出される可能性があるその他の変数値の計算、プロセスプラント１０内でＯＰＣサーバ９０によって収集された制御信号もしくはその他の変数値などの決定などの、ランタイムエンジン７２もしくはモジュール７０によって必要とされる様々なパラメータを実行もしくは計算するために、論理エンジン６２の内部に１つ以上の新しい制御論理モジュール９２を作成すること、有効にすること、またはセットアップすることがあり、この情報を取得するために現実のプラント１０を再構成する必要が全くなく、論理エンジン６２を使用して、データ分析エンジン６０のシームレス動作を可能にする。
【００６５】
このため、理解されるように、データ分析エンジン６０は、プロセス１０のオンラインデータ分析を実行するために（例えば、疑似制御システムおよびプロセス論理エンジンの形式で）論理エンジン６２と連動して動作するが、何らかの付加的な機械もしくはソフトウェアがプラント１０の１次部分もしくは固定化された部分、例えば、１次通信ネットワーク３０に接続されたデバイスに追加されることを実際に必要とすることなく、オンラインプラントネットワーク３０もしくはオンラインプラントネットワーク３０の内部のデバイスが再構成されることを必要とすることなく、データ分析機械５２が現在のプロセスプラント１０に追加される、または、並列式に取り付けられることを可能にする方法で動作する。この特徴は、次に、プラント１０が構成され、認証され、固定化された後に、データ分析エンジンがプラント１０のランタイム中にプラント１０のオンラインデータ分析を実行するように動作する方法で、データ分析エンジン６０がプラント１０に追加もしくは取り付けられることを可能にする。この動作は、プロセスプラント１０の再構成を必要とすることなく、従って、プロセスプラント１０がデータ分析エンジン６０の追加時に再認識されることを必要とすることがない。このアーキテクチャを使用することは、データ分析エンジンが、これらのプロセスプラントのデータ分析を実行するために、進行中もしくは現在動いているプロセスプラントに容易に追加され、このプロセスプラントと共に動くと共に、収集された分析データに基づいて、プロセスプラントの運転を測定もしくは微調整するために、プロセスプラントに一時的に追加されるか、または、プロセスプラント内で動き、次に、後の時点で取り除かれることを可能にするが、現実のプロセスプラント制御システムを再認識または変更することが全くない。実際に、これらの状況では、必要とされる全てのことは、プロセスプラントが疑似制御システムのため必要とされるプロセスプラントの内部のデータにアクセスできるＯＰＣまたは別のデータ収集もしくはアクセスルーチンを有することであり、これは、通常は、最も典型的なプラント構成の場合に妥当である。
【００６６】
バッチプロセスに対するバッチデータ分析を実施するために使用されるデータ分析機械をプロセス制御ネットワークに非侵入的に接続する１つの例示的な方法は、図３に示されている。詳しくは、図３は、プロセス制御システム１０４で実施されているバッチプロセスのためオンラインバッチデータ分析を実行するためにオンラインプロセスプラント制御システム１０４に非侵入的に接続されているデータ分析エンジン１０２を有するプロセスプラント１００のデータフロー図を表す。図３に示されるように、プロセス制御システム１０４は、制御システム１０４内で接続されている様々なプラントデバイスもしくはデバイスネットワーク１０４を含み、本例では、例えば、イーサネットバスであってもよい冗長な１次ネットワークバス１２３，１２４を介して、デバイスネットワーク１０６に接続されている様々なコンピュータデバイスを含む。詳しくは、１次バス１２３，１２４に接続されているコンピュータデバイスは、オペレータワークステーション１３０，１３２と、様々なアプリケーションワークステーション１４０，１４２，１４４，１４６，１４８をプラント動作アプリケーション、ビジネスアプリケーション、保守アプリケーションなどのような上位レベルアプリケーションを実行することがある上位レベルワークステーション１４９と共に含む。本例では、オペレータワークステーション１３０，１３２は、例えば、図１のフィールドデバイス、コントローラ、Ｉ／Ｏデバイスなどを含むプラント制御ネットワークもしくはデバイスネットワーク１０６からデータを収集するために動作し、ワークステーション１３０，１３２は、ユーザが、プロセスの現在動作を観察すること、設定点を変更すること、バッチプロセスランをセットアップし動かすこと、制御意思決定を行うこと、アラームおよび警報に応答すること、保守対策を講じることなどのようなオペレータおよび管理行動を実行することを可能にする。
【００６７】
アプリケーションワークステーション１４０，１４２，１４４，１４６，１４８は、デバイスネットワーク１０６を監視し、動かし、または、構成するためにプラントで使用される異なるタイプのアプリケーションを記憶し、実行する。本例では、アプリケーションワークステーション１４０は、ＯＰＣデータ分析サーバ１７０（例えば、図１および２のＯＰＣサーバ５１または９０でもよい）を動かすものとして示されている。アプリケーションワークステーション１４２は、Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒウェブブラウザアプリケーション１７２で動いているものとして示され、アプリケーションワークステーション１４４は、デバイスまたはプラントネットワーク１０６内でバッチランの動作をスプールし、制御するために動作するバッチエグゼクティブルーチン１７４を動かすものとして示されている。知られているように、バッチエグゼクティブ１７４は、典型的に、バッチキャンペーンの一部でもよい異なるバッチを実施するために、異なる時点で様々な異なる制御デバイスを使用してプロセス制御プラントシステム内でバッチを動かすか、または、実行されるようにスケジュールに入れる。さらに、アプリケーションワークステーション１４６は、現在または以前に動かされたバッチに関してプラントネットワーク１０６から、プロセス変数、制御変数、およびプラントデバイス１０６の動作中にプラントデバイスの範囲内でまたはプラントデバイスに関して収集されたその他のデータを含むデータを収集するバッチヒストリアン１７５を動かすものとして示されている。同様に、アプリケーションワークステーション１４８は、プロセス制御ネットワークにおいて広く行われているように履歴データ分析を発生させるためにローカル履歴分析アプリケーションを動かすことがある履歴分析アプリケーション１７６を動かすものとして示されている。さらに、高性能制御システムプラットフォーム１４９は、プラントネットワーク１０６の内部のバッチのうちの１つ以上を動作させる第２のバッチエグゼクティブ１７４を記憶し実行するものとして示されている。
【００６８】
本例では、コンピュータデバイス１３２，１４０，１４２，１４４，１４６，１４８，１４９は、３枚のネットワークカードを含むものとして示され、これらのネットワークカードのうちの２枚は、これらのデバイスを冗長通信ネットワーク１２３，１２４（図１の１次通信ネットワーク３０の一部分）に接続するために使用され、３枚目のネットワークカードは、これらのデバイスを、通信バス２０６を介して、バッチ分析機械２００および１台以上の遠隔オペレータワークステーションもしくはコンピュータ２０２，２０４に接続するために使用される。別個のネットワークカードの使用は、ネットワークバス２０６がネットワークバス１２３，１２４から分離されることを可能にさせ、従って、データ分析機械２００がセキュリティ観点から見てプラントネットワーク１０６から分離されることを可能にさせる。このように、データ分析機械２００は、１次バス１２３，１２４に接続された制御デバイスもしくはアプリケーションのうちのいずれかを再構成する必要なしに、任意の所望の時点でプラント１００に追加される、または、プラント１００から削除される可能性がある。
【００６９】
図３に示されるように、バッチ分析機械２００は、バッチモデリングエンジン２１０と、バッチ分析エンジン２１６と、バッチウェブアプリケーションまたはインターフェース２１４とを含む。概括的に言うと、モデリングエンジン２１０は、バッチモデル構築アプリケーション２２２と、ライブラリまたはストレージ２２２とを含む。バッチモデル構築アプリケーションエンジン２２０は、進行中のモデリングプロジェクトを記憶するためにモデリングライブラリ２２２を使用してプラントもしくはバッチモデルを作成するために使用されうる。ここで、ユーザは、例えば、遠隔コンピュータデバイス２０２，２０４の内部のエクスプローラもしくはウェブブラウザを介して、モデリングエンジン２１０にアクセスすることがあり、以前に動かされたバッチに対するデータを記憶するバッチヒストリアン１７５からのデータを使用してバッチに対するモデルを作成するためにモデル構築アプリケーション２２０を使用することがある。モデルが作成され、試験され、動かされる準備が完了すると、これらのモデルは、プラントネットワーク１０６内で動かされているオンラインバッチを分析するために使用されるバッチ分析ランタイムエンジン２１６に供給されることがある。
【００７０】
バッチランタイムエンジン２１６は、バッチモデル実行エンジン２３０と、メモリ２３２に記憶されたバッチモデルもしくはルーチンの組と、バッチ管理アプリケーション２３５とを含む。理解されるように、バッチランタイムエンジン２１６は、図１および２のデバイスネットワーク１０６のプロセスプラントと共に論理エンジン６２の内部の現在動いているバッチについての分析を動かすために使用されているアクティブなバッチモデルを記憶し、実行する。ここで、図３のバッチ分析エンジン２３０は、プラントシミュレーションシステム８０と、図１および２に記載されたえ論理エンジン８２に関連付けられた論理モデルとを含む。バッチ分析管理ルーチン２３５は、ユーザインターフェースを介して、情報をユーザに提供し、ユーザが進行中のバッチモデリングおよび予測行動を変更すること、閲覧することなどを可能にするために、ユーザインターフェースルーチンとインターフェースをとる。図３に示されるように、バッチモデル実行エンジン２１６は、上述のとおりのオンラインデータ分析を実行するためにＯＰＣデータサーバ１７０およびバッチエグゼクティブ１７４を介してオンラインプラント１０４からデータを受信する。
【００７１】
モデル作成中に、（図２のモデルビルダー７３を含むことがある）モデリングアプリケーション２２０は、バッチ実行エンジン２１６において後で用いるため１つ以上のモデルを作成するために、アクセスされ、使用される（実行される）ことがある。モデリングエンジン２１０は、図２の論理ビルダー８８をさらに含むことがあり、ＯＰＣサーバ１７０またはバッチエグゼクティブ１７４によって供給されない付加的なプラントパラメータを計算もしくは決定するため、図２に関連して記載された論理モジュール９２を作成するために使用されうる。バッチモデリングアプリケーション２２０のよって作成され、記憶され、図２のモデル７０であってもよいアクティブなモデルおよびモデリングプロジェクトは、以前に動かされた、もしくは、実行されたバッチから、バッチヒストリアン１７５に記憶されたとおりのデータを使用して作成され、オンラインバッチランもしくはプロセスを分析するために使用される準備が完了しているときに、バッチランタイムエンジン２３０に供給される。本例では、バッチランタイムエンジン２３０は、図２のランタイムエンジン７２を図２のモデル７０および図２の論理エンジン６２の一部もしくは全部と共に実施することがある。その上、バッチ管理ルーチン２３５は、図２のユーザインターフェースアプリケーション７４を含むことがある。
【００７２】
バッチウェブサーバ２１４は、ユーザが様々な時点で必要とされるデータを取得するため、例えば、バッチ分析エンジン２００によって作成された情報に基づいて１次ネットワーク１２３，１２４上の様々なデバイスを変更するため、ネットワーク２０６上のデバイスをブラウズすることを可能にするために使用されうる。
【００７３】
重要なことには、バッチ分析機械２００は、プラント１００の動作中にいつでも図３のネットワーク２０６に追加されることがあり、データヒストリアン１７５およびその他のデバイスの内部に記憶されたデータに基づいて１つ以上のバッチ分析モデルを作成するために使用されることがあり、次に、ネットワーク１０６がプラントの様々なバッチもしくはバッチランを実施するために動いている間に、デバイスネットワーク１０６のオンライン分析を実行するために動作させられることがある。ユーザは、この時点で、オンラインバッチ分析に基づいてより良好な生産物を生産するようにバッチランを変更もしくは改造するために様々な異なるアクションを試すことがあり、ある時点で、バッチ制御ルーチンもしくはデバイスネットワーク１０６を最適化した後、バッチデータ分析機械２００を切断することがある。これらの行動の全部は、オンラインデータ分析の全部がオンラインプラントネットワーク１０４から（例えば、ＯＰＣサーバ１７０で未だアクセスできない）何らかの新しい情報を取得することを要することなく、機械２００の追加に対するデータ収集を支援するために何らかの方法でプラント構成を変更することを要することなく、実行されているので、プラントまたはデバイスネットワーク１０４もしくは１０６を再構成するまたは再認証することを要することなく、実行されることがある。同様に、機械２００をプラント１００から、簡単に切り離せる。当然、オンライン診断を提供するためにデータ分析エンジン２００がオンラインプラント１０もしくはデバイスネットワーク１０６に直接的に接続されているかのように動作することを可能にするプロセスシミュレーションにおいてプラントからのデータをミラー化することは、ユーザもしくは構成エンジニアの能力であり、現在のところ構成されているように、プロセスシミュレーションシステムがオンラインプラントから容易に利用できないデータおよび情報を作成することを可能にするプラントから収集されたプラントデータおよび情報に適用された論理に基づいて新しいデータを供給するのは、プロセス論理モジュールの使用である。
【００７４】
上述の例示的方法および／または装置の少なくとも一部は、コンピュータプロセッサ上で動いている１つ以上のソフトウェアおよび／またはファームウェアプログラムによって実施されることがある。しかし、特定用途向け集積回路、プログラマブルロジックアレイおよびその他のハードウェアデバイスを含み、これらに限定されない専用ハードウェア実施は、全体的または部分的に、本明細書に記載された例示的方法および／または装置の一部もしくは全部を実施するように同様に構成される可能性がある。その上、分散処理もしくはコンポーネント／オブジェクト分散処理、並列処理、または仮想マシン処理を含み、これらに限定されない代替的なソフトウェア実施は、本明細書に記載された例示的方法および／またはシステムを実施するためにさらに構成される可能性がある。
【００７５】
本明細書に記載された例示的ソフトウェアおよび／またはファームウェア実施は、磁気媒体（例えば、磁気ディスクもしくはテープ）、光ディスクなどの光磁気もしくは光媒体、あるいは、メモリカード、または、１つ以上のリードオンリー（不揮発性）メモリ、ランダムアクセスメモリ、もしくはその他の書換え可能（揮発性）メモリを収容するその他のパッケージなどの固体媒体などの有形の記憶媒体に記憶されることにさらに注意すべきである。従って、本明細書に記載された例示的ソフトウェアおよび／またはファームウェアは、前述の記憶媒体、または、後継記憶媒体などの有形の記憶媒体に記憶される可能性がある。特有の規格およびプロトコルに関連して本明細書が例示的コンポーネントおよび機能について記載する程度まで、本特許の範囲は、このような規格およびプロトコルに限定されないことが理解される。例えば、インターネットおよびその他のパケット交換型ネットワーク伝送のそれぞれ（例えば、伝送制御プロトコル（ＴＣＰ）／インターネットプロトコル（ＩＰ）、ユーザデータグラムプロトコル（ＵＤＰ）／ＩＰ、ハイパーテキストマークアップ言語（ＨＴＭＬ）、ハイパーテキストトランスファープロトコル（ＨＴＴＰ））は、技術水準の例を表現する。このような規格は、同じ汎用的な機能性を有するより一層高速またはより一層効率的な均等物によって定期的に取って代わられる。従って、本特許によって考慮され、請求項に記載された事項の範囲内に包含されることが意図されている同じ機能を有する代替規格およびプロトコルは、均等物である。
【００７６】
さらに、本特許は、ハードウェア上で実行されるソフトウェアまたはファームウェアを含む例示的方法および装置を開示するが、このようなシステムは、単なる例示であり、限定としてみなされるべきでないことに注意すべきである。例えば、これらのハードウェアコンポーネントおよびソフトウェアコンポーネントのいずれかもしくは全部は、全くハードウェアのみで、全くソフトウェアのみで、全くファームウェアのみで、あるいは、ハードウェア、ファームウェアおよび／またはソフトウェアの何らかの組み合わせで具現化され得ると考えられる。従って、本明細書は、例示的方法、システム、および／または機械アクセス可能な媒体について記載するが、例は、このようなシステム、方法および機械アクセス可能な媒体を実施する唯一の方法ではない。その結果、ある種の例示的方法、システム、および機械アクセス可能な媒体が本明細書に記載されているが、本特許の対象の範囲は、これらに限定されない。
【符号の説明】
【００７７】
１０   オンラインプロセス制御システム
６２   論理エンジン
９０   データ取得デバイス
１０２ データ分析エンジン
【図１】
2015011722.tif 000003
【図２】
2015011722.tif 000004
【図３】
2015011722.tif 000005