(58)【調査した分野】(Int.Cl.,DB名)
前記第1のコンピュータプログラム、第2のコンピュータプログラム、および第3のコンピュータプログラムの1つは、前記中央処理ユニットが実行すると、前記統合ノードに指示して、
前記収集された時刻表示付きプロセスデータが予め定めた例外基準を満たすと
決定したことに応じて例外警報を前記遠隔ホストに報告すると、前記遠隔ホス
トは前記警報を受信して、前記統合ノードが処理したことに応じてコマンドを
出す、
動作を行わせる1つ以上の命令を含み、
前記収集動作は毎秒1回の割合で行い、
前記統合ノードは取出しコマンドを前記遠隔ホストから受信して、時刻表示付きプロセスデータを60秒毎に約1回の割合で送信し、前記時刻表示付きプロセスデータは前記遠隔ホストからコマンドを受信する間の約60秒の期間内に収集動作により収集された時刻表示付きプロセスデータと定義される、
請求項1記載のプログラマブルロジックコントローラ。
前記保存動作は前記時刻表示付きプロセスデータを複数のカンマ区切りの値(CSV)ファイル内に保存することを含み、各ファイルは特定の日に対応し、またその日の日、月、年に応じて名付けられ、また月、年に応じて名付けられるディレクトリ内に記憶され、
前記保存動作は収集動作を絶えず行うことに応じて絶えず保存動作を行うことを含み、
前記送信動作はファイル転送プロトコル(FTP)を用いて、前記統合ノードと前記遠隔ホストのどちらかであるFTPサーバからデータを送信することを含む、
請求項1記載のプログラマブルロジックコントローラ。
前記保存動作は前記時刻表示付きプロセスデータを複数のカンマ区切りの値(CSV)ファイル内に保存することを含み、各ファイルは特定の日に対応し、またその日の日、月、年に応じて名付けられ、また月、年に応じて名付けられるディレクトリ内に記憶され、
前記保存動作は前記収集動作に応じて絶えず行うことを含み、
前記送信ステップはファイル転送プロトコル(FTP)を用いてデータを送信することを含み、前記FTPサーバは前記統合ノードまたは前記遠隔ホストである、
請求項6記載のプログラマブルロジックコントローラ。
複数の遠隔サブシステムとプログラマブルロジックコントローラとの間の中断されたデータ伝送を一様に復元するためのコンピュータで実施する方法であって、前記プログラマブルロジックコントローラは遠隔ホストを複数の遠隔サブシステムとインターフェースすることにより統合ノードを定義するように配置され、前記方法は、
それぞれが一様の時間の発生源に従って時間同期化された前記統合ノードと前記複数の遠隔のサブシステムのいずれかとの間の通信リンク内の通信障害の時刻および対応する通信回復の時刻を検出するステップと、
前記通信障害の前記検出時刻および前記対応する通信回復の検出時刻に応じて、少なくとも1つのデータファイルを前記複数の遠隔の時間同期化サブシステムの1つから検索するステップと、
前記検出ステップに応じて前記時刻表示付きプロセスデータを前記遠隔ホストに復元するステップと、
を含むコンピュータで実施する方法。
遠隔ホストと、プロセスデータを複数の遠隔サブシステムから収集しまた統合ノードを定義するプログラマブルロジックコントローラとの間の中断されたデータ伝送を一様に復元するためのコンピュータで実施する方法であって、前記方法は、
それぞれが一様の時間の発生源に従って同期化されている前記統合ノードと前記遠隔ホストとの間の通信リンク内の通信障害の時刻および対応する通信回復の時刻を検出するステップと、
前記通信障害の時刻および前記対応する通信回復の時刻に応じて、時刻表示付きプロセスデータを前記遠隔ホストコンピュータに復元するステップと、
を含むコンピュータで実施する方法。
【発明の概要】
【発明が解決しようとする課題】
【0007】
本出願者は従来の自動化遠隔サブシステム内に多くの問題並びに問題の原因があると認識している。例えば、ますます多くのタイプの現場装置を自動化環境に追加するに従ってかかるシステムの準備および較正はますます複雑になり、或るものは、工業で現在用いられている種々の既存の通信プロトコルの中の異なる通信プロトコルの使用および支援を必要とする。したがって、従来の自動化システム、特に知的現場装置を用いるシステムの構造および構成はいくつかの調達上の(logistical)問題を生じることがある。第1に、多数のハードウエア構成要素が必要なために、電力や物理的な設置面積などの、企業の限られた資源に負担をかける。
【0008】
更に、必要な異なるハードウエア構成要素の数が増えると、例えば、多重装置および多重プロトコル構造の配備や保全や運転などの、システムの支援モデルがますます複雑になる。したがって、複数の遠隔現場システムを用いるには、多くのハードウエア構成要素を用いなければならない。一般に含まれるのは、例えば、(a)遠隔サブシステムおよび計測器を含む複数の現場装置にコマンドを出し、またプロセスデータを集め、また多重通信プロトコルのいずれかに従う、PLCおよびRTUなどの複数のコントローラユニット、(b)遠隔サブシステムおよび計測器から検索したプロセスデータを記憶するためのデータベースサーバ、および(c)ネットワーク接続性および多重プロトコル支援を含む、多重通信インターフェースを支援する通信インフラストラクチャ、である。
【0009】
種々のサブシステムが異なる通信プロトコルおよびインターフェースを実現するので、更に多くの中間装置が必要になる。上に述べた多数のハードウエア構成要素を供給しなければならないというコストやその他の不利益に加えて、多数のハードウエア構成要素を運転することにより、必要な電力や設置面積が増え、構成要素を配備し、保全し、運転するための支援モデルが一層複雑になる。
【課題を解決するための手段】
【0010】
本出願者の認識では、多くのハードウエア構成要素を運転すると制御点が増えて不都合になるので、データ収集に矛盾が起こりまたネットワークおよびホストの故障の許容度が非常に低くなるという、望ましくないリスクが生じる。例えば、上に述べた多重システムを用いるときに起こる1つの共通の問題は、収集して記憶したデータが一様の同期化された時間に従って時刻表示されないため、ホストコンピュータが与える時間ベースの機能とインターフェースするという目的にデータが適合しなくなることである。こうなると、例えば、プロセスのシミュレーションおよび最適化(例えば、貯水池モデル(reservoir modeling)および特性化)のために遠隔ホストで行う系統的解析などにおいて、収集したデータとホストのデータとの間にデータ収集の矛盾が生じることがある。更に、時間的に同期していない多数の装置を用いる既存のシステムはネットワークおよびホストの故障に十分耐えられないので、機能停止期間中に集めたデータが多く失われ、機能停止中に(例えば、容量過負荷状態で)再生することができない。
【0011】
本発明の実施の形態は、プロセス自動化環境内の遠隔ホストサーバと複数の遠隔サブシステムとの間をインターフェースするのに用いる統合ノードを提供し、単一のタイミング源に同期する時刻表示に応じてデータの収集、監視、および復元を行うための単一の制御点を与えることにより、データの収集および復元のための更に一様な基礎を確立する。したがって、本発明の実施の形態は、機械と、コンピュータプログラムまたはコンピュータプログラム製品をその上に記憶するコンピュータ読取り可能な媒体と、コンピュータが実施する方法とを提供して、プロセス自動化遠隔サブシステムからデータを収集するための統合ノードを提供する。
【0012】
或る統合ノードの例示の実施の形態は、例えば、コントローラユニットと通信ネットワーキング装置とデータ記憶サーバの機能を1つのユニット内に統合する。また或る統合ノードの実施の形態は、例えば、イーサネット(登録商標)スイッチを用いて多重通信インターフェースによるネットワーキングを支援し、TCP/IP(伝送制御プロトコル/インターネットプロトコル、またインターネットプロトコルスーツとも呼ぶ)でプロセスデータを遠隔ホストサーバに送信することにより、必要なハードウエア構成要素の数を大幅に減らしまた一層簡単な支援モデルを可能にする。更に、或る統合ノードの実施の形態は、例えば、OPCサーバ(「プロセス制御用OLE」とも呼ぶ)、または当業者に周知の任意の適当なサーバまたはドライバを用いて、多重通信プロトコルを支援することができる。
【0013】
また更に、或る統合ノードの実施の形態はPLCまたはRTUを含み、または、例えば、ハードウエアまたはソフトウエアによりPLCまたはRTUの機能性を用いて、多重PLCまたはRTU構成要素を必要としない多重プロセス自動化プロトコルに従ってコマンドを出しまたデータを収集しまた処理することにより、必要なハードウエア構成要素の数を更に減らしまた一層簡単な支援モデルを可能にする。更に、或る統合ノードの実施の形態は、サブシステムと遠隔サーバとの間を時間同期化することによりデータ収集の矛盾の可能性を大幅に減らし、また統合ノードと複数の遠隔サブシステムとの間または統合ノードと遠隔サーバとの間に任意のタイプのネットワーク障害またはシステム故障を含む通信障害が発生すると、データ伝送を復元することによりネットワークの監視および障害の回復を十分提供する。
【0014】
このように、或る統合ノードの実施の形態は、PLC、RTU、およびイーサネット(登録商標)スイッチの機能性を組み込み、また多重インターフェース、多重プロトコル、およびローカルデータ記憶容量を追加することによる現場/システムのデータ保持を支援することにより、多重システムを結合して多重システム機能性を与える1つのシステムにして、プロセス自動化システムの配備、保全および運転を含む支援モデルを簡単にする。
【0015】
また更に、或る統合システム(例えば、統合ノードの或る実施の形態)を用いて、データの、またホストとサブシステムと上部アプリケーション層の間の、時間同期化を強化する制御の中心点を提供する。例えば、或る統合ノードの実施の形態は、TCP/IPイーサネット(登録商標)スイッチ、PLCまたはRTU論理、多重通信プロトコルを支援しまたデータ記憶機能を備える入出力インターフェース、FTPクライアント/サーバ支援、およびOPCインターフェース機能をうまく結合する。
【0016】
或る統合ノードの実施の形態では、例えば、遠隔ホストサーバとの時間同期機能を有するデータを記憶することにより、自動化システムはホストとのまたはネットワーク内での通信の障害または中断への耐性が高くなり、捕らえたデータと、シミュレーションおよび最適化に用いるホストデータとの間の収集の矛盾が最小になり、また故障中断期間中に収集したデータをネットワーク障害またはホストの故障のために失うリスクが最小になり、停止期間中または過負荷状態中に送信されなかったデータを実質的に再生する。更にまた、或る統合ノードの実施の形態は、現場でのハードウエア構成要素の数および必要な関連する電力および設置面積を最小にすることにより、また任意の多重プロトコルおよびインターフェースのタイプを支援する支援モデルを簡単にすることにより、必要な電力を減らすことができる。
【0017】
或る例示の実施の形態は、例えば、中央処理ユニットおよびメモリを有し、遠隔ホストを複数の遠隔サブシステムとインターフェースすることにより統合ノードを定義するプログラマブルロジックコントローラを提供する。或る統合ノードの実施の形態をプログラマブルロジックコントローラと述べたが、統合ノードはまた、例えば、プログラマブルロジックコントローラの機能性を持つコンピュータ、遠隔端末ユニット、または遠隔端末ユニットの機能性を持つコンピュータを含む適当な機能性を有する、当業者に周知の任意のコンピュータでよい。統合ノードは、屋内では約セ氏10度から35度、屋外では約セ氏−20度から70度の範囲の運転環境の、屋内および屋外の条件に耐えるよう構築することができる。
【0018】
実施の形態は更に、例えば、遠隔ホストおよび複数の遠隔サブシステムとのネットワーク接続の経路を定めるためのネットワークインターフェースを含むことができる。また或る統合ノードの実施の形態は、当業者に周知の多数のメッセージングプロトコルのいずれかに従う複数の遠隔サブシステムのそれぞれとの通信を変換または翻訳するプロトコル翻訳プログラムまたは翻訳サーバ、または適当なドライバも含む。また、或る統合ノードの実施の形態は、ノードと遠隔サブシステムと遠隔ホストの間および相互間の通信を転送するように配置された入出力ユニットを含む。或る統合ノードの実施の形態は更に、サブシステムから収集したデータをそれぞれの遠隔サブシステムに対応する時刻表示付きアーカイブファイル内に保存するように配置されたデータベースまたはデータベースサーバを含む。
【0019】
実施の形態は更に、ノードとサブシステムとの間、およびノードと遠隔ホストとの間のデータ伝送を管理するためのコンピュータプログラムまたはコンピュータプログラム製品を含む。当業者が認識するように、本発明は単一のコンピュータプログラムまたはコンピュータプログラム製品を用いる実施の形態に限定されるものではない。例えば、当業者が認識するように、本発明は、または本発明を実現する特定の機能または動作は、多重コンピュータプログラムまたは多重コンピュータプログラム製品、別個のコンピュータプログラムまたは別個のコンピュータプログラム製品、ハードウエア製品と多重コンピュータプログラムまたは多重コンピュータプログラム製品との結合、またはここに述べた1つ以上のコンピュータプログラムまたはコンピュータプログラム製品の機能性を有する単一のコンピュータプログラムまたは単一のコンピュータプログラム製品で実現してよい。或るコンピュータプログラムまたはコンピュータプログラム製品の実施の形態はメモリなどの非遷移性のコンピュータ読取り可能な記憶媒体内または上に記憶してプロセッサ上で動作してよく、前記メモリは有形で非遷移性のコンピュータ読取り可能な記憶媒体である。或るコンピュータプログラムの実施の形態はプロセッサ上で実行する一組の命令を含む。
【0020】
例えば
図8に示すように、コンピュータプログラムまたはコンピュータプログラム製品内の命令の集合は、遠隔ホスト内の内部時計と各遠隔サブシステム内の内部時計とを同期させる
(801
)命令を含むことにより遠隔ホストと遠隔サブシステムとを一様の時間に従って遠隔ホストに時間同期させてよい。当業者が理解するように、この命令の集合は統合ノードの他のハードウエアまたはソフトウエア構成要素内の内部時計を同期させる命令も含む。時間同期化は、予め定めた同期化基準に基づいて、絶えずまたは要求に応じて行うことができる。
【0021】
更に、実施の形態は時刻表示付きプロセスデータを各時間同期化サブシステムから予め定めた速度で収集する
(802
)命令を含む。統合ノードは、例えば、時刻表示付きプロセスデータを毎秒1回の予め定めた割合で収集する。時刻表示は、例えば、プロセスデータが生成された日時を示す。例えば、遠隔サブシステムと統合ノードとがそれぞれ一様の時間に従って同期化されている場合は、時刻表示は遠隔サブシステムかまたは統合ノードが行う。当業者が認識するように、時刻表示はプロセスデータが生成された時刻、または恐らくプロセスデータに関するなんらかの他の時刻を示す。
【0022】
本発明の実施の形態は更に、時刻表示付きプロセスデータを遠隔サブシステムから受信すると、予め定めた例外基準に応じてこの時刻表示付きプロセスデータを例外とすべきかどうか決定する命令を与えてよい。当業者が認識するように、例外基準を決定する命令は、統合ノードで、遠隔サブシステムで、または遠隔ホストで実行する。命令を有するコンピュータプログラム製品を遠隔サブシステムで実行する場合は、遠隔サブシステムは統合ノードが受信すべき警報を統合ノードに送る。収集された時刻表示付きプロセスデータが、予め定めた例外基準を満たすと決定するステップは統合ノードで行ってよく、この場合は、統合ノードは例外警報を遠隔ホストに報告し、遠隔ホストは警報を受信して、例えば、遠隔ホストで処理する。
【0023】
例えば、遠隔ホストはこの警報に応じて命令を実行し、例えば、警報をユーザに中継しまたは提示し、またはこれにより遠隔ホストは警報に応じて統合ノードにコマンドを出力する。統合ノードはこれを受信して処理することにより、PLCまたはRTU機能性を用いる統合ノードまたはいずれかの遠隔サブシステムの動作に影響を与える。時刻表示付きプロセスデータを統合ノードが収集すると、統合ノード内のコンピュータプログラム製品はかかる命令に従って、時刻表示付きプロセスデータを時刻表示付きアーカイブファイル内に保存してよい
(803
)。時刻表示付きアーカイブファイルは日時(例えば、時間同期化サブシステム毎にプロセスデータが生成された日時)に応じて時刻表示する。
【0024】
或る実施の形態では、アーカイブファイル内に含まれるデータはスケーリングを行う必要はないが、当業者が認識するように、スケーリングは必要に応じて行う。アーカイブファイルは、例えば、フォーマットYYYY−MM−DD.CSVに適合する名前を有する名前で時刻表示する。ただし、YYYYは数字の年、MMは数字の月、DDは数字の日である。更に、アーカイブファイルはやはり、例えば、名前の最初の3文字は月、最後の2数字は年、すなわち、MMMYY(例えば、SEP07)の名前を有する名前で時刻表示して、時刻表示付きディレクトリ内に記憶される。
【0025】
また統合ノード内に記憶するコンピュータプログラムの実施の形態は、或る時刻表示付きプロセスデータを統合ノードから遠隔ホストに送るコマンドを遠隔ホストから第2の予め定めた速度で受信して処理する
(804
)命令を有するコンピュータプログラム製品を含んでよく、またこれに応じて、コンピュータプログラム製品は、そのコマンドに応じて前記或る時刻表示付きプロセスデータを少なくとも1つの時刻表示付きアーカイブファイルから取り出力する
(805
)命令を含む。またコンピュータプログラム製品は、実行すると、時刻表示付きプロセスデータをアーカイブファイルから取り出したことに応じてその時刻表示付きプロセスデータを遠隔ホストに送る
(80
6)。
【0026】
本発明の実施の形態はまた、統合ノードと複数の遠隔サブシステムとの間の送信を監視しまた回復するためのコンピュータプログラムまたはコンピュータプログラム製品を含む統合ノードを提供する。当業者が認識するように、本発明は単一のコンピュータプログラムまたはコンピュータプログラム製品を用いる実施の形態に限定されるものではない。例えば、当業者が認識するように、本発明は、または本発明を実現する特定の機能または動作は、多重コンピュータプログラムまたは多重コンピュータプログラム製品、別個のコンピュータプログラムまたは別個のコンピュータプログラム製品、ハードウエア製品と多重コンピュータプログラムまたは多重コンピュータプログラム製品との結合、またはここに述べた1つ以上のコンピュータプログラムまたはコンピュータプログラム製品の機能性を有する単一のコンピュータプログラムまたは単一のコンピュータプログラム製品で実現される。或るコンピュータプログラムまたはコンピュータプログラム製品の実施の形態はメモリなどの非遷移性のコンピュータ読取り可能な記憶媒体内または上に記憶してプロセッサ上で動作してよく、前記メモリは有形で非遷移性のコンピュータ読取り可能な記憶媒体である。或るコンピュータプログラムの実施の形態はプロセッサ上で実行する一組の命令を含む。
【0027】
コンピュータプログラムまたはコンピュータプログラム製品内の命令の集合は、例えば、統合ノードと複数の遠隔サブシステムのいずれかとの間の通信障害を検出する(通信障害の時刻の検出を含む)命令を含む。また、或るコンピュータプログラム製品の実施の形態は、通信障害が検出された、統合ノードとサブシステムとの間の対応する通信回復を検出する(通信回復の時刻の検出を含む)よう統合ノードに命じる。通信障害および通信回復を検出した後、コンピュータプログラム製品は更に、プロセッサが実行すると、通信障害および通信回復が検出された遠隔サブシステムから1つのデータファイルまたは複数のデータファイルを検索するよう統合ノードに命じる命令を含む。
【0028】
コンピュータプログラム製品は更に、プロセッサが実行すると、データファイルの検索に応じて、検索したデータファイルから時刻表示付きプロセスデータを取り出すよう統合ノードに命じる命令を含む。時刻表示付きプロセスデータは、通信障害の時刻から始めて通信回復の時刻まで取り出してよい。コンピュータプログラム製品は更に、プロセッサが実行すると、プロセスデータの取出しに応じて、取り出したプロセスデータを遠隔ホストに送るよう統合ノードに命じる命令を含む。
【0029】
或る統合ノードの実施の形態はまた、統合ノードと遠隔ホストとの間の送信の監視および回復のための第3のコンピュータプログラムまたはコンピュータプログラム製品を含む。当業者が認識するように、本発明は単一のコンピュータプログラムまたはコンピュータプログラム製品を用いる実施の形態に限定されるものではない。例えば、当業者が認識するように、本発明は、または本発明を実現する特定の機能または動作は、多重コンピュータプログラムまたは多重コンピュータプログラム製品、別個のコンピュータプログラムまたは別個のコンピュータプログラム製品、ハードウエア製品と多重コンピュータプログラムまたは多重コンピュータプログラム製品との結合、またはここに述べた1つ以上のコンピュータプログラムまたはコンピュータプログラム製品の機能性を有する単一のコンピュータプログラムまたは単一のコンピュータプログラム製品で実現してよい。或るコンピュータプログラムまたはコンピュータプログラム製品の実施の形態はメモリなどの非遷移性のコンピュータ読取り可能な記憶媒体内または上に記憶してプロセッサ上で動作してよく、前記メモリは有形で非遷移性のコンピュータ読取り可能な記憶媒体である。或るコンピュータプログラムの実施の形態はプロセッサ上で実行する一組の命令を含む。
【0030】
コンピュータプログラムまたはコンピュータプログラム製品内の命令の集合は、例えば、統合ノードと遠隔ホストとの間の通信障害を検出する(通信障害の時刻の検出を含む)命令を含む。また、或るコンピュータプログラム製品の実施の形態は、プロセッサが実施すると、統合ノードと遠隔ホストとの間の対応する通信回復を監視しまた検出する(通信回復の時刻の検出を含む)よう統合ノードに命じる命令を含む。或るコンピュータプログラム製品の実施の形態は更に、プロセッサが実施すると、通信障害および通信回復の検出に応じて、通信障害の時刻と通信回復の時刻とを報告して、消失したデータの復元を遠隔ホストが開始できるようにすることを、統合ノードに命じる命令を含む。
【0031】
このコンピュータプログラム製品は更に、プロセッサが実施すると、通信障害および通信回復の時刻に応じて時刻表示付きアーカイブファイルから時刻表示付きプロセスデータを取り出し、次に、取り出した時刻表示付きプロセスデータを遠隔ホストに送信して、時刻表示付きプロセスデータを遠隔ホストが受信できるようにすることを、統合ノードに命じる命令を含む。或るコンピュータプログラム製品は更に、プロセッサが実施すると、統合ノードと遠隔ホストとの間の通信リンクを監視することを統合ノードに命じ、またデータ伝送の帯域幅の枯渇を検出し
(80
7)、またこれに応じてデータ伝送を緩衝する
(808
)ことを遠隔ホストに命じる命令を含む。
【0032】
本発明の別の例示の実施の形態では、中央処理ユニットおよびメモリを有する或るプログラマブルロジックコントローラは遠隔ホストを複数の遠隔サブシステムとインターフェースすることにより統合ノードを定義してよい。或る統合ノードの実施の形態をプログラマブルロジックコントローラと述べたが、統合ノードの実施の形態はまた、例えば、プログラマブルロジックコントローラの機能性を持つコンピュータ、遠隔端末ユニット、または遠隔端末ユニットの機能性を持つコンピュータを含む適当な機能性を有する、当業者に周知の任意のコンピュータでよい。
【0033】
或る統合ノードの実施の形態は、屋内では約セ氏10度から35度の範囲内、屋外では約セ氏−20度から70度の範囲内の運転環境の、屋内および屋外の条件に耐えるように構築される。或る統合ノードの実施の形態は更に、統合ノードと、複数の遠隔サブシステムのいずれかまたは遠隔ホストとの間で通信を転送するように配置された入出力ユニットを含む。また統合ノードは、複数の遠隔サブシステムから収集されたデータを1つ以上の時刻表示付きアーカイブファイル(例えば、1つ以上の時刻表示付き各アーカイブファイルはそれぞれのサブシステムに対応する)内に保存するように配置されたデータベースサーバを含む。
【0034】
本発明の実施の形態は更に、遠隔ホスト内と各遠隔サブシステム内の内部時計を同期させることにより、遠隔ホストと遠隔サブシステムとを一様の時間に従って遠隔ホストに時間同期させる時間同期化モジュールを有する統合ノードを提供する。当業者が理解するように、時間同期化は予め設定した同期化基準に基づいて絶えずまたは要求に応じて行うことが出来る。また統合ノードは、時刻表示付きデータを複数の遠隔の各時間同期化サブシステムから定期的に収集するように配置されたデータ収集モジュールを含む。データ収集モジュールは更に、データベースサーバを用いて時刻表示付きデータを保存するように配置される。
【0035】
統合ノードはまた、収集した時刻表示付きデータ内の例外を決定し、例外と決定すると、その例外を遠隔ホストに報告するように配置された例外報告モジュールを含む。統合ノードは更に、保存した時刻表示付きデータを遠隔ホストに定期的にアップロードするように配置されたデータアップローダを含んでよい。或る統合ノードの実施の形態は更に、例えば、統合ノードと遠隔サブシステムのいずれかとの間の通信障害および通信回復を検出すると、複数の遠隔サブシステムのいずれかから検索した時刻表示付きデータの間の通信障害を検出するように配置されたサブシステム復元モジュールを含む。或る統合ノードの実施の形態は更に、統合ノードと遠隔ホストとの間の通信障害に応じて遠隔ホストへのデータ伝送を復元するように配置されたホスト復元モジュールを含む。
【0036】
本発明の別の例示の実施の形態は、複数の遠隔サブシステムと、遠隔ホストが複数の遠隔サブシステムと通信できるように配置された統合ノードとの間の中断されたデータ伝送を一様に回復させる、コンピュータで実施する方法を含む。方法の実施の形態は、例えば、統合ノードと遠隔サブシステムがそれぞれ実質的に一様の時間源に従って時間同期化していれば、統合ノードと遠隔サブシステムのいずれかとの間の通信リンクの通信障害の時刻とこれに対応する通信回復の時刻とを検出することを含む。この方法は更に、通信障害とこれに対応する通信回復の時刻に応じて、時刻表示付きプロセスデータを含む少なくとも1つのデータファイルを複数のサブシステムのいずれかから検索することを含む。方法の実施の形態は更に、検索動作に応じて、時刻表示付きプロセスデータを遠隔ホストコンピュータに復元することを含む。
【0037】
本発明の別の例示の実施の形態は、遠隔ホストと、プロセスデータを複数の遠隔サブシステムから収集するように配置されたPLCなどの統合ノードとの間の、中断されたデータ伝送を一様に回復できるようにする、コンピュータで実施する方法を提供する。この方法は、統合ノードと遠隔ホストが一様の時間源に従って時間同期化していれば、統合ノードと遠隔ホストとの間の通信リンク内の通信障害の時刻とこれに対応する通信回復の時刻とを検出することを含む。方法の実施の形態は、通信障害の時刻と通信回復の時刻とを遠隔ホストに報告して、通信障害の結果消失したデータの復元を遠隔ホストが開始できるようにすることを含む。
【0038】
更に、当業者が理解するように、実施の形態はデータ収集(通信障害が発生したときにデータ伝送を監視して復元することを含む)のための統合ノードを提供する、他の機械、システム、コンピュータ、コンピュータプログラム、コンピュータプログラム製品、および関連するコンピュータで実施する方法を含む。
【0039】
また本発明の実施の形態は、予め設定した濾過方式に応じて、時刻表示付きデータ内の限度外の測定値を新たな測定値と置換し、また限度外の測定値を検出するとデータ収集を中止することにより複数の確認された測定値を定義するためのデータ確認モジュールを含む。またかかる実施の形態は、複数の遠隔の時間同期化サブシステムの動作状態を決定し、また複数の遠隔の時間同期化サブシステムの動作状態に応じて複数の確認された測定値を調整するためのデータ調整モジュールを含む。或るデータ確認モジュールの実施の形態は、中央処理ユニットが実行すると、統合ノードに指示して、複数の遠隔の時間同期化サブシステムから収集した時刻表示付きデータ内の或る第1の測定値が所定の上限および所定の下限に対して限度外であると決定させる、例えば、メモリ内に記憶する或るコンピュータプログラム製品を含む。
【0040】
またデータ確認モジュールは統合ノードに指示して、限度外の第1の測定値を或る第2の測定値と置換させることができる。この第2の測定値は、過去の測定値の予め選択した間隔の最小値または最大値、最後の正常な測定値、上限と下限の平均、予め選択した数の測定値のまたは過去の測定値の間隔の平均、上限、下限、または任意の予め選択した値の1つである。更に、時刻表示付きデータは、複数の確認された測定値を定義する前記置換した第2の測定値を含む。また時刻表示付きデータ内の限度外の測定値の決定に応じて、データ確認モジュールは統合ノードに指示して、複数の遠隔の時間同期化サブシステムのいずれかからの時刻表示付きデータの収集を中止するようデータ収集モジュールに命じさせる。
【0041】
データ調整モジュールを含む実施の形態は更に、中央処理ユニットが実行すると、統合ノードに指示して複数の遠隔の時間同期化サブシステムの1台以上のプロセスユニットの動作状態を決定させる、例えば、或るコンピュータプログラムまたはコンピュータプログラム製品をメモリ内に記憶してよい。この決定動作は、複数の遠隔の時間同期化サブシステムの1台以上からの複数の確認された測定値に応じて行う。かかるコンピュータプログラムまたはコンピュータプログラム製品を含むデータ調整モジュールは、コンピュータプログラムまたはコンピュータプログラム製品を実行すると、プログラマブルロジックコントローラに指示して複数の確認された測定値に応じた調整モデルを決定させる。この調整モデルは1台以上のプロセスユニットとこの1台以上のプロセスユニットの動作状態とに対応する。
【0042】
またデータ調整モジュールは統合ノードに指示して、複数の確認された測定値を調整モデルに応じて調整させることにより(調整動作は順次二次計画法アルゴリズムである)、複数の調整された測定値を定義する。またデータ調整モジュールはプログラマブルロジックコントローラに指示して、後の複数の確認された測定値に応じて1台以上のプロセスユニットの動作状態の変化を検出させる。またデータ調整モジュールはプログラマブルロジックコントローラに指示して、検出した動作状態の変化に応じて1台以上のプロセスユニットのための新たな調整モデルを決定させて、調整動作が新たな調整モデルに応じて進むようにすることができる。
【発明を実施するための形態】
【0044】
統合ノード100の或る実施の形態は、
図1A−1Bに示すように、中央処理ユニット105およびメモリ160を有し、遠隔ホスト110を複数の遠隔サブシステム120とインターフェース可能とする。統合ノード100はプログラマブルロジックコントローラ(PLC)である。これは、任意のプログラマブルロジックコントローラ(PLC)、遠隔端末ユニット(RTU)、RTU機能性を持つPLC、PLC機能性を持つRTU、またはPLCまたはRTUの機能性またはその両方を組み込むことができる当業者が理解する任意のタイプのコンピュータや端末やサーバやシステムやノードやユニットまたは他の機械、を意味する。統合ノードは、屋内では約セ氏10度から35度、屋外では約セ氏−20度から70度の範囲の動作環境を持つ、屋内および屋外の条件に耐えるよう構築される。当業者が理解するように、統合ノード100は通信リンク115および125により遠隔ホストコンピュータ110または遠隔サブシステム120のいずれかにそれぞれ接続する。
【0045】
統合ノード100は、プロトコル翻訳プログラムまたは翻訳サーバ102(当業者が理解するように、これは中央処理ユニット105上で動作するプロトコル翻訳ドライバでもよい)、ネットワークインターフェース103、入出力ユニット104、およびデータベースサーバ101を含んでよく、これらは中央処理ユニット105上で動作する。中央処理ユニット(CPU)105は、ピーク負荷状態でCPU利用率が50%を超えないように選択した構造を有する。非遷移性のコンピュータ読取り可能な記憶媒体であるメモリ160があり、ピーク負荷状態でシステムおよびアプリケーションソフトウエア用の全てのメモリ要求を用いた後でも、供給される全メモリの50%が利用可能である大きさにされる。CPU105およびメモリ160は、プログラム、制御アプリケーション、ノード上で走るタスク、および現場データの安定性に悪い影響を与えずに、主ホストサーバと冗長ホストサーバの間の切換えを十分支援するよう選択される。統合ノード100のPLCまたはRTU機能により統合ノード100内でのデータ処理が可能であり、また複数の遠隔サブシステムからのデータ収集およびその制御が可能になる。
【0046】
PLCおよびRTU機能性は、PCベースの制御システムの機能とプログラマブル自動化コントローラ(PAC)または分散RTUなどの代表的なPLCまたはRTUの機能(当業者が理解するように、例えば、IEC61131−3(ラダー論理)で実現される「スマート」RTUまたはPLC技術を含む)とを結合するPLC類似のまたRTU類似の構成を含み、主コンピュータを用いずに簡単な論理プロセスの自律的な実行を可能にする。当業者が理解するように、簡単な論理プロセスは以下の動作を含む。算術機能としては、加算、減算、乗算、割り算、平方根、二進化十進数(BCD)から整数へ、整数からBCDへ;論理機能としては論理積、論理和、排他的論理和、否定、フリップ/フロップ、アナログ入力を実数(浮動少数点)に変換する算術および論理機能のための数学的命令;シフトレジスタ機能としてはビットシフト左、ビットシフト右;比較関数としてはより小さい、より大きい、以下、以上、等しい、等しくない;タイマ/カウンタ機能としてはカウントアップ、カウントダウン、タイムアップ、タイムダウン(アキュムレータ、プリセットおよび時間ベースのサブエレメントによる)、時間ベースは0.01秒および1.0秒;リレー接触要素、および移行;およびリレーコイル要素としては標準、ラッチ、およびアンラッチなど、である。
【0047】
また統合ノード100は、例えば、ユーザ(図示せず)がアクセス可能な1台以上の入力装置や1台以上のディスプレイ装置を有するコンピュータ端末を通して、または、例えば、遠隔ホストコンピュータ110を用いて、コンピュータによるローカルプログラミングインターフェースを支援する。統合ノード100は更に、比例・積分・微分制御(PID)、閉ループ制御、開ループ制御、および論理およびシーケンス機能を支援する。更に、統合ノード100は状態データの例外時報告および常時報告を支援できる。例えば、電力、ガス、または液体フローの運転においてプロセスアプリケーションの計算または補償アルゴリズムが必要なところでは、統合ノード100は外部コンピュータとは独立に必要な計算を行う。統合ノード100はシーケンス・オブ・イベント(sequence−of−events)機能のための離散的入力について、例えば、100ミリ秒(msec)の時間分解能(例えば、信号の濾波および緩衝の後で)を支援する。
【0048】
複数の遠隔サブシステム120を含む実施の形態は、例えば、永久ダウンホール監視(「PDHM」)システム、電気水中ポンプ(「ESP」)システム、スマートウエルコンプリーション(smart well completion,「SWC」)システム、および流量計システムなどの知的現場システムや、例えば、電気サブステーション自動化、ユーティリティ、および輸送セクタに用いられ、当業者が理解するような任意のタイプの知的イクイップメント装置(「IDE」)を含む。遠隔サブシステム120は、測定および制御データの処理および信号の変換を含むタスクを行ってよい。また遠隔サブシステム120は、例えば、統合ノードとは独立に他の現場装置と通信するようにプログラムできる。例えば、知的センサ、アクチュエータ、およびコントローラは、通信バス、インターフェースボード、ケーブル、および付属品によりネットワークに接続できる。
【0049】
かかる装置は、例えば、当業者に周知の種々の構成および制御アプリケーションを用いて構成してよい。システムの運転に関しては、当業者が認識するように、データとシステムトポロジとの適合、システムの統合、および現場計測器のグループ化を最適にする必要がある。更に当業者が認識するように、本発明は任意の特定の工業、セクタ、または運転環境における遠隔自動化サブシステムの使用に限定されるものではなく、例えば、石油やガス用の知的現場システム、電気サブステーション/パワーグリッドシステム、および遠隔安全システムを含む異なるネットワーキング運転環境、および企業システムに用いられる。遠隔ホスト110は、当業者に周知のまたは利用可能な、プロセス自動化機能の管理または調整のための任意のタイプの遠隔ホストコンピュータ、例えば、SCADAホストでよい。
【0050】
図1A−1Bに示すように、統合ノード100は、遠隔ホストおよび多数のサブシステムとのネットワーク接続の経路を指定するためのネットワークインターフェース103を含む。ローカルネットワークインターフェース103は、例えば、開放型システム間相互接続(「OSI」)参照モデルのデータリンク層(レイヤ2)での処理および経路指定の機能のためのネットワークブリッジを含むネットワークスイッチ、または当業者が理解するような、データリンクまたはネットワーク層でデータを処理しまた経路を指定するための任意の周知のレイヤ3スイッチまたはルータまたは任意の周知のマルチレイヤスイッチでよく、また、例えば、以下のIEEE(米国電気電子学会)標準に従う一般的機能を含む。すなわち、802.1D スパニングツリープロトコル、802.1P QoSタギングおよびポートベースの優先順位、802.1Q フレームタギングおよびVLANトランキング、802.1w 急速スパニングツリー、802.1X ポートベースのネットワークアクセス制御、802.3 イーサネット(登録商標)グループ、802.3u 高速イーサネット(登録商標)、802.3z ギガビットイーサネット(登録商標)(ファイバベース)、802.3ab ギガビットイーサネット(登録商標)(銅ベース;シールドなしツイストペアカテゴリ5eまたは6ケーブリング)、802.3ad リンク集約、802.3x 全二重通信方式フロー制御、などである。
【0051】
急速スパニングツリーに加えて、例えば、ローカルネットワークインターフェースは、装置の故障または光ファイバケーブルの切断の場合に可能な最も速い収束時間を持つ、光ファイバリング内の所有権を主張できるプロトコルの使用を支援する。更に、統合ノード100の或る実施の形態は、リング信頼性を高めたり、帯域幅要求を減らしたり、ネットワーク遅れを小さくしたりすることができるリングトポロジ
エンハンスメント(
enhancement)に基づくネットワーク解を提供できる。本発明の実施の形態は、例えば、石油およびガスの知的現場、サブステーション/パワーグリッド、および遠隔安全保護を含む異なるネットワーキング運転環境で用いてよく、また企業のアプリケーションに用いてよくまた拡張することができる。
【0052】
更に、ネットワーク通信リンク125は、例えば、次のいずれかを含んでよい。すなわち、100BaseTX、EIA/TIA カテゴリ5、6、7 UTPの2対線、セグメント当たり1ユーザ、長さ100メートルまで、物理的スタートポロジおよび論理バスを持つRJ−45コネクタを用いる;1000Base−T、カテゴリ5、長さ100メートルまでの4対のUTP線;1000Base−SX、62.5および50ミクロンのコアを用いるマルチモードファイバ、850ナノメートルのレーザを用い、62.5ミクロンでは220メートルまで、50ミクロンでは550メートルまで;1000BaseLX、9ミクロンのコアおよび1310ナノメートルのレーザを用いる単モードファイバで、3キロメートルから最長10キロメートルまで進むことができる;または1000BaseLH/ZX、通常の単モード光ファイバリンク上で動作して長さ43.4マイルまで広がる。
【0053】
ネットワークインターフェースは物理的構造として次の仕様を実施してもよい。すなわち、IEC60068−2−6、振動に対する機械的安定性;IEC60068-2-27およびIEC60068−2−29、衝撃に対する機械的安定性;EN61000−6−2および−4、妨害耐性のための電磁的特性:IGMPv1/RFC1112;IGMPv2/RFC2236;SNMPv3/RFC3410;MIB II/RFC1158;RMON/RFC1757;IP20(IEC536)進入保護;IP67、進入保護、である。
【0054】
図1Aおよび
図2Aに示す統合ノード100の例示の実施の形態は、例えば、統合ノード100と複数の遠隔サブシステム120と遠隔ホストコンピュータ110の間で通信を転送するように配置された入出力ユニット104を含む。入出力ユニット104は、通信リンク115および125によりシリアルおよびイーサネット(登録商標)インターフェースを提供する。これらは任意のタイプのシリアルおよびイーサネット(登録商標)リンクでよく、光ファイバ、銅、VSAT、および/または無線などの異なる通信媒体上で通信する10/100/1000Mb/s イーサネット(登録商標)速度を含む。また本発明の実施の形態では、すぐに利用できる無線システムおよびサービスによる継ぎ目なし通信が可能である。例えば、セルラネットワーク(GSM(登録商標)/TETRA)と共に共同Wi−Fiネットワーク(IEEE802.11a/b/g/n)を用いて、完全に冗長にしまた優先順位をつけて現場データを送ることができる。
【0055】
したがって、接続性(コストおよび品質)が最適になり、ネットワーク接続性の多様化を達成することができる。入出力ユニット104は有線および無線の計装インターフェース(アナログ、ディジタル、および無線ISA100.11a/WHART/Zigbee(登録商標))について、例えば、アナログ入力、アナログ出力、ディジタル入力、ディジタル出力、パルス入力、およびパルス出力のいずれも支援することができる。例えば、プロセスレベルで用いる標準のアナログ信号(4−20ミリアンペア(mA))を用いるアナログ通信に加えて、当業者に周知のフィールドバス タイプ61158などの、国際電気標準会議(IEC TC65 SCC)/国際計測制御学会(ISA)のフィールドバス委員会に従って標準化されたプロトコルに従って、ディジタルネットワークを用いて通信することができる。
【0056】
図1Bに示すように、統合ノード100の或る例示の実施の形態は更に、任意の1つ以上の複数のメッセージングプロトコルに従って各遠隔サブシステム120との通信を翻訳するプロトコル翻訳プログラムまたは翻訳サーバ102を含む(プロトコル翻訳プログラムまたは翻訳サーバ102と複数の遠隔サブシステム120とを接続する矢印で示すように)。
【0057】
当業者が理解するように、プロトコル翻訳プログラムまたは翻訳サーバ102は構成可能であり(例えば、構成ツールインターフェースによりユーザが構成するなど)種々のプロトコルに従う通信を支援し、またサブシステムデータ交換を支援する。前記種々のプロトコルは、シリアルModbus、ModbusオーバーIP(インターネットプロトコル)、ハイウエイアドレス指定可能な遠隔変換器(HART)プロトコル、基礎フィールドバス、分散ネットワークプロトコル(DNP)、IEC61850、ISA100.11a、無線HART、ZigBee(登録商標)、およびイーサネット(登録商標)/IP(イーサネット(登録商標)工業プロトコル)などのシリアルおよびイーサット物理的インターフェイスによる種々のプロトコルを含む。更に、統合ノード100は構成可能であり(例えば、構成ツールインターフェースによりユーザが構成するなど)、異なる接続タイプ、プロトコルタイプ、および速度を支援する。
【0058】
更に、コンピュータプログラムまたはコンピュータプログラム製品に関して後で説明するように、或る実施の形態では、プロトコル翻訳プログラムまたは翻訳サーバ102は、ノード、遠隔ホスト、および複数の各遠隔サブシステムが一様のタイミング源に基づいて時間同期化するように構成される。例えば、プロトコル翻訳プログラムまたは翻訳サーバ102は、遠隔サブシステムで実施する通信プロトコル(例えば、ModbusおよびDNP)が支援するテレコントロールプロトコルを用いて、時刻表示(タイミング表示とも呼ぶ)を複数の遠隔サブシステムの1つ以上の記録に送信しおよび/または書き込むのを容易にする。記録の時刻表示部分は、例えば、当業者が理解するように、年、月、日、時、分、および秒のデータを含む6個の連続レジスタ(32ビットの符号なし整数)を含んでよい。また時間同期化は、例えば、NTP(ネットワーク時間プロトコル)、協定世界時(UTC)に基づくSNTP(簡易ネットワーク時間プロトコル)、ローカル/遠隔GPSユニット、または前進(Precession)タイミングプロトコル(PTP、IEEE1588)を用いる終端間イーサネット(登録商標)ベースのデバイスについて達成される。
【0059】
図1Bに示すように、プロトコル翻訳プログラムまたは翻訳サーバ102はまた、サブシステムが用いるプロトコルのいずれかに従って遠隔サブシステムの現場データに絶えずアクセスするための標準ベースの機能性(例えば、ノードおよび遠隔ホストコンピュータのデータの共通インターフェースを定義するOPC(プロセス制御用のOLE)ドライバまたはOPCサーバの機能性)を含む。したがって、遠隔サブシステムとデータを交換するためにノードおよび遠隔ホストコンピュータで必要なインターフェースは1つだけであるが、遠隔サブシステムとの通信リンクは複数の支援される通信プロトコルのいずれかに従って動作する。当業者が認識するように、OPCインターフェースは異なるハードウエアおよびソフトウエアの間の相互通信を容易にして、本来は工業ネットワークまたはプロセス自動化環境の一部とは考えられていなかった装置間でも通信を可能にする。
【0060】
或る統合ノードの実施の形態は更に、ノードとサブシステムとの間およびノードと遠隔ホストとの間のデータ伝送を管理するために、
図2Aに示すようなデータ収集モジュール161などのコンピュータプログラムまたはコンピュータプログラム製品を含むことができる。当業者が認識するように、本発明は単一のコンピュータプログラムまたはコンピュータプログラム製品を用いる実施の形態に限定されるものではない。例えば、当業者が認識するように、本発明は多重コンピュータプログラム製品で、多重コンピュータプログラム製品およびハードウエア製品で、またはここで更に述べる他のコンピュータプログラム製品の機能性を有する単一のコンピュータプログラム製品に結合して、実現される。コンピュータプログラムまたはコンピュータプログラム製品はメモリ160内に記憶する。このメモリは有形で非遷移性のコンピュータ読取り可能な記憶媒体であって、プロセッサ105上で動作する。
【0061】
コンピュータプログラムまたはコンピュータプログラム製品は、プロセッサ105で実行すると或る動作を行う一組の命令を中に記憶する。コンピュータプログラム製品161内の命令の集合は、例えば、
図3に示すように、遠隔ホスト内および各遠隔サブシステム内の内部時計311、321を同期させる命令を含み、これにより遠隔ホストおよび遠隔サブシステムを遠隔ホスト内の時計301と、一様の時間に従って時間同期される。当業者が理解するように、命令を実行すると、統合ノード100の他のハードウエアおよびソフトウエア構成要素内の内部時計も同期化してよい。時間同期化は絶えず、または、例えば、予め定めた同期化基準に基づいて要求に応じて行われる。
【0062】
当業者が認識するように、時間同期化は、例えば、統合ノード100または遠隔ホストコンピュータ110でプロセッサが実行する別個のまたは独立のコンピュータプログラム製品で行われる。或る実施の形態では、内部ノード100はすでに時間同期化されている各遠隔サブシステム120から、或る時刻表示付きプロセスデータを予め定めた速度で収集する。
図2Aのデータフローパス200に示すように、このデータフローパスは、例えば、ネットワークインターフェース103、入出力ユニット104、およびプロトコル翻訳プログラムまたは翻訳サーバ102を含む。統合ノード100が時刻表示付きプロセスデータを収集すると、統合ノードのコンピュータプログラム製品161からの命令は、プロセッサで実行すると、時刻表示付きプロセスデータをデータベース101内の時刻表示付きアーカイブファイル内に保存される。
【0063】
データ収集モジュール161を含む実施の形態が行う動作を示す
図3を参照して更に詳しく述べる。変数(t
i)、(t
s)、および(t
h)はそれぞれ、統合ノード300、遠隔サブシステム
320、および遠隔ホストコンピュータ310での例示の時間参照である。時間(t
i)、(t
s)、および(t
h)は、統合ノード300、遠隔ホストコンピュータ310、および遠隔サブシステム320のそれぞれの内部時計301、311、および321全体で、それぞれ一様になるように同期化される。統合ノード300は時間およびプロセス変数(例えば、圧力、温度、流量)を含むサブシステムまたは計測器のデータをポーリングする。統合ノード300は、例えば、水面下センサやサブシステムのデータなどのデータを、時刻(t
i)に遠隔サブシステム320をポーリングすることにより遠隔サブシステム320から予め定めた速度360で収集する。ただし、(t
i)=h、i、jおよびkであり、h、i、jおよびkのそれぞれの間の期間は予め定めた速度360に対応する。
【0064】
統合ノード3
00は、入出力(I/0)スキャンおよび任意の診断およびアプリケーションプログラムの実行を含めて、実行サイクル時間≦100msecで、毎秒1サンプルの割合でデータを収集できる。収集したデータ351h、351i、351j、351kはそれぞれ時刻(t
i)=h、i、jおよびkでのポーリングに対応し、時刻表示される。時刻表示はプロセスデータが生成された日時を示す。それぞれが一様の時間に従って同期化されていれば、時刻表示は遠隔サブシステムまたは統合ノードにより付与される。
【0065】
遠隔サブシステム320または統合ノード300は収集したデータ351h、351i、351j、351kを、一様な同期化された時計321および301に基づいてそれぞれ時刻表示することができる。
図3に示すように、収集したデータ352は遠隔サブシステム320が時刻表示済みである。図に示すように、時刻「h」の印を付けた時刻表示は単なる例示のためである。当業者が認めるように、例えば、時刻表示付きデータファイルまたはパケットでのデータ伝送は任意の適当な方法または約束で刻表示してよい。収集したデータの表示はIEEE32浮動小数点に基き、また記録の時刻表示部分は、例えば、年、月、日、時間、分、および秒のデータを含む6個の連続レジスタ(32ビットの符号なし整数)を含むことができる。
【0066】
図3に示す保存ステップ353に示すように、アーカイブファイル354は収集動作351hに応じて時刻表示付きプロセスデータ352を収める。その後の収集動作351i、351j、および351kについては図示しないが、当業者が認識するように、収集動作351hについて示したのと同じ保存プロセス354が続く。アーカイブファイル354は遠隔サブシステム320に対応する。また当業者が理解するように、複数の遠隔サブシステム320があるので、対応する複数のアーカイブファイル354があり、または、例えば、プロセスカテゴリ毎に複数のアーカイブファイル354がある。更に、複数のアーカイブファイル354はいずれも時刻表示してよく、したがってその中に保存するデータの日時に対応する。
【0067】
当業者が理解するように、複数のアーカイブファイル354はいずれもカンマ区切りの値(comma-separated values)(CSV)形式でよく、また予め定めたポーリング速度360に基づいて連続的に統合ノード300内に記憶される。当業者が理解するように、アーカイブファイル354内に含まれるデータのスケーリングは任意選択でよい。アーカイブファイル354は、例えば、名前YYYY−MM−DD.CSVを有する名前で時刻表示される。更に、アーカイブファイル354は時刻表示付きディレクトリ内に、やはり、例えば、最初の3文字が月で次がYY、すなわち、MMMYY(例えば、SEP07)という名前を有する名前で時刻表示して記憶される。アーカイブファイル354は
図1Aに示すデータベース101内に記憶される。
【0068】
したがって、アーカイブファイル354は、収集したプロセスデータ352やその他の収集したプロセスデータ(収集351i、351j、351k、乃至352nからのデータなど)をその中に記憶した日毎のアーカイブファイルでよい。ただし、nは任意の時刻であってその日の最後のデータ収集の時刻を表し、予め定めたポーリング速度360に応じて更新する。当業者が認識するように、本発明はこの特定の命名約束または日毎のアーカイブ窓に限定されるものではなく、他の命名約束またはアーカイブ窓は本発明およびこの開示の範囲内である。データベースまたはデータベースサーバ101は、その中のデータは保存プロセス353により絶えず更新されてはいるが、遠隔ホスト310によりコピーアクセス(FTP機能を含む)が可能なように構成する。当業者が認識するように、例えば、遠隔ホスト300のファイルアクセスプロセス中にファイルアクセス違反が起こらないようにする種々の方法がある。
【0069】
時刻表示付きプロセスデータを遠隔サブシステムから受信すると、統合ノードはこの時刻表示付きプロセスデータが予め定めた例外基準に基づく例外であるかどうか決定することができる。例外基準と比較してかかる検出を行う811ための命令を有するコンピュータプログラム製品(例えば、
図8、
図9、および
図10に示す)は、統合ノードで、遠隔サブシステムで、または遠隔ホストで実行することができる。かかる命令を有するかかるコンピュータプログラム製品を遠隔サブシステムで実行すると、遠隔サブシステムは更に警報を統合ノードに送りまたは報告し
(812
)、統合ノードはコンピュータプログラム製品内の別の命令に従ってこれを受信できる。
【0070】
収集した時刻表示付きプロセスデータが、予め定めた例外基準を満たすと決定するステップは、例えば、
図2Aに示すように、より特定するとデータフローパス210に示すように、統合ノードで実行される。データフローパス210は、例えば、統合ノード100が例外警報を遠隔ホストに報告し、遠隔ホストがこの警報を受信することを示す。例外警報を決定して報告する命令は、例えば、データ収集モジュール161または他のコンピュータプログラム製品、または、恐らく、データ収集モジュール161からの命令で動作するハードウエア製品内に含まれる。更にデータフローパス210に示すように、例外警報の報告は、入出力ユニット104およびネットワークインターフェース103を通して遠隔ホストコンピュータ
110と通信するデータ伝送を含む。
【0071】
更に詳細に述べると、
図3に示すように、統合ノード300は例外があると報告するよう構成してもよい。収集動作351hに応じて、例えば、統合ノード300は、時刻表示付きプロセスデータ352が所定の例外基準を満たすかどうかを、プロセス変数データの百分率値または絶対値に基づいて決定される。例外と決定すると
(355
)、統合ノード300はすぐに応答して、例外を遠隔ホストコンピュータに報告する。コンピュータプログラム製品内に含まれる命令内の決定動作355は、収集動作、例えば、351hに応じて行ってよいので、決定動作355は同じ速度360で絶えず実行される。例外を遠隔ホストコンピュータ310に報告する
と、遠隔ホストコンピュータ310は例外の通知を受信し、これに応じて統合ノード
300にコマンドを出し、例えば、統合ノード300のPLC/RTU機能を用いて処理しまたは操作する813命令を有する統合ノード
300がこれを処理することにより、複数の遠隔サブシステム320のいずれかを制御する。
【0072】
また統合ノード内のコンピュータプログラム製品161の或る実施の形態は、或る時刻表示付きプロセスデータを統合ノードから遠隔ホストに送るコマンドを遠隔ホストから第2の予め定めた速度で受信する、という命令を有するコンピュータプログラム製品を含み、これに応じて、このコンピュータプログラム製品は、コマンドに応じて前記或る時刻表示付きプロセスデータを少なくとも1つの時刻表示付きアーカイブファイルから取り出す命令を含む。また、このコンピュータプログラム製品は、この時刻表示付きプロセスデータをアーカイブファイルから取り出すと、これに応じて、この時刻表示付きプロセスデータを遠隔ホストに送る命令を含む。
図2Aのデータフロー220に示すように、時刻表示付きプロセスデータはアーカイブファイルデータベース101から検索して、入出力ユニット104およびネットワークインターフェース103を用いて送信される。
【0073】
更に詳細に述べると、
図3に示すように、遠隔ホストコンピュータ310は、保存したプロセス変数データ(例えば、352)をアーカイブデータファイル354から予め定めた速度(例えば、例外があると報告するデッドバンド356に関わらず60秒毎に1回)で収集するコマンド380を統合ノード3
00に送る。遠隔ホストコンピュータ310は、例えば、ファイル転送プロトコル(FTP)を用いて、遠隔ホストコンピュータ310での現在の時刻(t
h)に応じて統合ノード300から或るファイルをコピーする要求を出す。統合ノード300はこれに応じて既存のアーカイブデータファイル(例えば、アーカイブデータファイル354)を要求通り提出する。
【0074】
更に、統合ノード300は応答的に、特に統合ノード300での要求時刻(t
i)に応じて、アーカイブデータファイル354から或る保存されたプロセスデータ381を取り出す。更に、統合ノード300は応答的に、最後の要求380以後の期間に対応する期間中に収集したデータを含むアーカイブファイル354の部分集合であるファイル382を定義する。当業者が理解するように、統合ノード300は、遠隔ホストコンピュータ310からの要求に応じて、任意の時間パラメータに対応するプロセスデータを、多重の日付、サブシステム、または他の部門についての既存の複数のアーカイブファイルの任意のアーカイブファイル354から取り出すことにより、遠隔ホストコンピュータ310に送信する
(383
)データを取り出しまたファイル382を定義する。
【0075】
更に、当業者が理解するように、上に述べた取出し、定義、および送信は予め定めた速度またはそのときどきのベースに応じて開始してよい。データを取り出した後、統合ノード300は当業者に周知の種々の方法により(例えば、標準履歴転送を用いることを含む)、遠隔ホストコンピュータ310にデータを送る。ここで更に述べるように、遠隔ホスト310がデータ読取りプロセスを行うことにより、通信障害が起こった場合に、例えば、統合ノード300をFTPサーバとして用いて、遠隔ホスト310はデータを復元することができる。しかし当業者が認識するように、ホストコンピュータ310をサーバとして、また統合ノード300をクライアントとして構成してもよい。クライアント/サーバ相互作用の構成は、例えば、統合ノード300で、または遠隔ホスト310で行ってよい。
【0076】
或る統合ノードの実施の形態は更に、
図2Bに示すように、統合ノード100と複数の遠隔サブシステム120との間のデータ伝送の監視および復元のためのコンピュータプログラムまたはコンピュータプログラム製品162を含む。当業者が認識するように、本発明は単一のコンピュータプログラムまたはコンピュータプログラム製品を用いる実施の形態に限定されるものではない。例えば、当業者が認識するように、本発明は多重コンピュータプログラム製品、多重コンピュータプログラム製品およびハードウエア製品で、またはここで更に述べる他のコンピュータプログラム製品の機能性を有する単一のコンピュータプログラム製品に結合して、実現することが出来る。
【0077】
コンピュータプログラムまたはコンピュータプログラム製品はメモリ160上に記憶される。このメモリは、有形で非遷移性のコンピュータ読取り可能な記憶媒体であって、プロセッサ105上で動作する。
図9に示すように、コンピュータプログラムまたはコンピュータプログラム製品は、プロセッサ105で実行すると或る動作を行う一組の命令を、それ自体の中に記憶する。コンピュータプログラム製品162内の命令の集合は、例えば、統合ノードとサブシステムのいずれかとの間の通信障害を検出する901(通信障害の時刻の検出を含む)命令を含むことができる。
【0078】
また、コンピュータプログラム製品は、統合ノードと、通信障害が検出されたサブシステムとの間の対応する通信回復を統合ノードが検出する(通信回復の時刻を検出することを含む)命令を含むことができる。通信障害および通信回復を検出すると、これに応じてコンピュータプログラム製品162は統合ノードに命じて、通信障害および通信回復が検出されたサブシステムから1つのデータファイルまたは多重データファイルを検索する
(904
)。データファイルを検索すると、これに応じてコンピュータプログラム製品は検索したデータファイルから時刻表示付きプロセスデータを取り出す
(905
)ための1つ以上の命令を統合ノードに与えることが出来る。
【0079】
時刻表示付きプロセスデータはサブシステムの通信障害の時刻から始めてサブシステムの通信回復の時刻まで取り出す。プロセスデータの検索のためのデータフローは
図2Bの例示のデータフロー230に示され、ネットワークインターフェース103、入出力ユニット104、プロトコル翻訳プログラムまたは翻訳サーバ102、およびデータベースサーバ101を含む。プロセスデータの取出しに応じて、プログラム製品は取り出したプロセスデータを遠隔ホストに送信する
(806
)ための1つ以上の命令を統合ノードに与える。これについては、遠隔ホストコンピュータ110と通信する入出力ユニット104およびネットワークインターフェース103を含む
図2Bの例示のデータフロー240に更に示す。
【0080】
図3および
図4Aに示すように、統合ノードの実施の形態は予め定めた速度476で遠隔サブシステム420をポーリングして
(450
)、通信リンク451h、451i、451j、および451kにより、或る時刻表示付き工業プロセスデータ452h、452i、452j、および452kを同じ予め定めた速度で受信する。時刻表示付き工業プロセスデータ452h、452i、452j、および452kを時刻h、i、j、kに受信すると、時刻表示付き工業プロセスデータ452h、452i、452j、および452kの日時に対応するアーカイブファイル454内にデータを保存する
(453h、453i、453j、および453k
)。統合ノード400は、統合ノード400と複数の遠隔サブシステム420との間の通信リンクの状態を監視する。
【0081】
通信リンクの故障は、コンピュータプログラム製品内の命令に従って検出し、優先順位の高い警報として遠隔ホストに報告する
(902
)。更に、当業者が認識するように、どの故障も優先順位の高い警報として、例えば、他のノードやホストやサブシステムを含む他のシステムに報告する。コンピュータプログラム製品は更に、遠隔ホストからコマンドを受信して処理する
(903
)命令を含み、検索し
(904
)、取り出し
(905
)、また送信する
(806
)命令に関して述べたように復元を開始する。
【0082】
更に詳細に述べると、
図4Bに示すように、通信障害461iが(t
i)=iで起こり、通信回復461kが(t
i)=kで起こると(
図4Aのデータ収集動作に関して)、時刻表示付きプロセスデータ452i−452j(すなわち、452i−452(k−1))は時刻(t
i)=iおよび(t
i)=jでそれぞれ収集されない。統合ノード400と複数の遠隔サブシステム420のいずれかとの間の通信で或る例示の通信障害が起こると、統合ノード、特にサブシステム復元プログラム162は、通信障害が起こりまた通信が復元した日時を検出しまた記録する。更に詳細に述べると、通信回復461kを(t
i)=kに検出すると、
図4Aに示すように、通常、時刻表示付きデータファイル452kを受信する。
【0083】
当業者が理解するように、統合ノード400は、遠隔サブシステム420の日毎のデータ(24時間のデータ)を含むどのファイルにアクセスして検索するか決定する。
図4Cに示すように、少なくとも1つのデータファイル480を遠隔サブシステム420から検索する動作は障害の時刻461iおよび回復の時刻461kの検出に応じて行ってよく、また取り出す動作481は障害の時刻(t
i)=iおよび回復の時刻(t
i)=kに応じて行い、時刻表示付きプロセスデータファイル452i’および452j’は検索したデータファイル480(
図4Bに示すように452iおよび452jで収集しなかったプロセスデータに対応する)から取り出す。すなわち、統合ノードは、通信障害の日時から始めて通信復元の日時までのプロセスデータおよび時刻表示付きデータを、CSVファイルまたは任意の予め定義されたファイルデータ書式から取り出す。
【0084】
図4Dに示すように、取り出したプロセスデータを遠隔ホストに送る方法は取出し動作481に応じて行う。かかる方法の例示の実施の形態は、例えば、取り出したプロセスデータ452i’−452j’を遠隔ホストコンピュータ410に、FTPなどによりファイル転送またはコピー動作を行うことを含んでよい。統合ノード400は、通信障害の日時および通信復元の日時に応じて1つ以上のデータファイルをコピーする、FTPコピーコマンドなどのコマンドを出す。複数のサブシステム420が同じ統合ノード400に接続されている場合は、各統合ノード400は複数のサブシステム420のそれぞれに関して同じプロセスを行う。
【0085】
かかる方法の別の例示の実施の形態は、取り出したプロセスデータ452i’および452j’を含むデータファイル(例えば、検出された通信障害および通信回復についての障害の時刻(t
i)=iおよび回復の時刻(t
i)=kに応じてそれぞれ与えられるデータファイルなど)をFTPなどによりファイル転送またはコピー動作を行うことを含む。当業者が認識するように、データファイル(例えば、
図3に示すアーカイブファイル382)は、遠隔ホストコンピュータ410から受信したコマンドに応じて与えて、例えば、データ452i’および452j’を含む時刻表示付きプロセスデータを検索する。統合ノードからのデータ収集が失われると、例えば、遠隔ホストまたは統合ノードは、通信が中断した時刻および通信が回復した時刻を検出する。
【0086】
遠隔ホストコンピュータは更に、回復したデータを検索し、回復したデータを遠隔ホストコンピュータ履歴内にコピーし、ノードから受信した回復したファイルから消失データに関する1つ以上の新たなCSVファイルを再形成し、次に、必要であれば、ファイルを企業システムに転送することができる。ファイル転送プロセスが失敗した場合は、ファイルのコピーに成功するまでファイル転送プロセスを繰り返される。更に、帯域幅の枯渇を検出すると、統合ノードは収集したデータを記憶し、影響を受けたデータ伝送をこれに従って緩衝する。
【0087】
或る統合ノードの実施の形態はまた、統合ノードと遠隔ホストとの間の送信の監視および回復のためのコンピュータプログラム製品163を含む。当業者が認識するように、本発明は単一のコンピュータプログラムまたはコンピュータプログラム製品を用いる実施の形態に限定されるものではない。例えば、当業者が認識するように、本発明は多重コンピュータプログラム製品で、多重コンピュータプログラム製品およびハードウエア製品で、またはここで更に述べる他のコンピュータプログラム製品の機能性を有する単一のコンピュータプログラム製品に結合して、実現できる。
【0088】
コンピュータプログラムまたはコンピュータプログラム製品はメモリ160上に記憶される。このメモリは、有形で非遷移性のコンピュータ読取り可能な記憶媒体であって、プロセッサ105上で動作する。コンピュータプログラムまたはコンピュータプログラム製品は、プロセッサ105で実行すると或る動作を行う一組の命令をその中に記憶する。
図10に示すように、コンピュータプログラム製品163内の命令の集合は、例えば、統合ノードと遠隔ホストとの間の通信障害を検出する
(1001
)(通信障害の時刻の検出を含む)命令を含む。
【0089】
またコンピュータプログラム製品は、統合ノードと遠隔ソフトとの間の対応する通信回復を検出する
(1001
)(通信回復の時刻の検出を含む)ための1つ以上の命令を統合ノードに与える。通信障害および通信回復を検出した後、コンピュータプログラム製品は、遠隔ホストが消失データの復元を開始できるように通信障害の時刻および通信回復の時刻を遠隔ホストに報告する
(1002
)ための1つ以上の命令を統合ノードに与える。コンピュータプログラム製品は更に、消失データの復元を開始するコマンドを遠隔ホストから受信して処理する
(1003
)ための1つ以上の命令を統合ノードに与える。
【0090】
コンピュータプログラム製品はまた更に、通信障害および回復の時刻に応じて、時刻表示付きプロセスデータを時刻表示付きアーカイブファイルから取り出して
(1004
)、取り出した時刻表示付きプロセスデータを遠隔ホストに送る
(806
)ための1つ以上の命令を統合ノードに与える。プログラム製品は更に、統合ノードと遠隔ホストとの間の通信リンクを監視し
(807
)、データ伝送における帯域幅の枯渇を検出し、またこれに応じてデータ伝送を緩衝する
(808
)ための1つ以上の命令を統合ノードに与える。上述の例示の実施の形態のデータフロー250は、ネットワークインターフェース103、入出力ユニット104、およびデータベースサーバ101を含む
図2Cに示す。
【0091】
更に詳細に述べると、
図5は統合ノード500と遠隔ホストコンピュータ510との間の通信リンク内の通信障害および通信回復に応じたプロセスデータの回復を、特に
図3に関して述べた遠隔ホストコンピュータ310によるデータ検索に関して示す。例示の目的で、統合ノード500および遠隔ホスト510を、時刻(t
i)=pで始まる時間の範囲にわたって示す(図の左から右に向かって進むように表す)。時刻(t
i)=pで、遠隔ホスト510は統合ノード500からプロセスデータを普通に正常に検索する。これを
図3で示すと、遠隔ホスト310はデータファイル382を速度
360で検索する。
【0092】
図5に戻って、時間が進んで時刻(t
i)=qになると(q−pは速度390に対応する期間と理解してよい)、統合ノード500は統合ノード500と遠隔ホストコンピュータ510との間の通信520qに障害を検出する。または、遠隔ホストコンピュータ510が通信障害520qを検出する。
図5において、時間が時刻(t
i)=vに進むと(v−qは通信障害の検出と通信回復の検出の間の時間に対応する随意の期間と理解してよい)、統合ノードは通信リンク520v内の通信回復を検出して、回復通知560qvを遠隔ホストコンピュータ510に送る(通信障害および通信回復の日時を含む)。
【0093】
または、遠隔ホストコンピュータ510は時刻(t
i)=qに通信障害を、また時刻(t
i)=vに通信回復を検出する。ただし、
図3に述べたように、遠隔ホストコンピュータ510と統合ノード500とは時間同期化されていると仮定する。時刻(t
i)=vで、遠隔ホストコンピュータ510からの要求520vに応じて、統合ノードは時刻表示付きプロセスデータ540vをアーカイブデータファイル354から取り出し、また取り出した時刻表示付きプロセスデータ540vを遠隔ホストコンピュータ510に送る
(550p
)。統合ノード500から通知560qvを受信すると、または通信障害および通信回復を検出すると、遠隔ホストコンピュータ510は通信障害および通信回復の期間(v−q)に対応するデータを復元するコマンド570qvを統合ノード500に出力する。
【0094】
コマンド570qvを受信すると、統合ノード500はこれに応答して、期間(v−q)および対応する通信障害に応じるプロセスデータ580qvをデータファイル354から取り出し
(530
)、更に、取り出したプロセスデータ580qvを遠隔ホストコンピュータ510に送信する
(590qv
)。送信590qvが送信550pまたは時刻(t
i)=nでの任意の送
信と衝突する場合は、遠隔ホストはこれに従って遠隔ホストコンピュータ510へのデータ送信590qvおよび
任意の送信を緩衝することにより、当業者が理解するように、収集したデータ量、通信リンク障害、および帯域幅制限に応じて、遠隔ホストコンピュータ510に送信する通信トラフィックを調節する。更に、遠隔ホストコンピュータ510は、実時間データを絶えず収集する一方で、障害の時刻に関するファイルのコピーを開始する。
【0095】
更にまた、
図1Aに示すように、本発明の実施の形態は統合ノード100に、例えば、データ確認および調整モジュール(DVRM)164を含む。これは複数の遠隔サブシステム120から収集したデータの確認および調整を行うためのコンピュータプログラムまたはコンピュータプログラム製品である。DVRM164は統合ノード100が収集したデータの正確さを高め、また複数の遠隔サブシステム120を制御するときの統合ノード100の有効性を高める。
【0096】
当業者が認識するように、データ確認機能およびデータ調整機能はDVRM164などの1つのコンピュータプログラム製品またはモジュール内に組み可能で、または
図6に示すようなデータ確認モジュール(DVM)165、
図7に示すようなデータ調整モジュール(DRM)166、または、例えば、報告モジュール167などの任意の他の関係するモジュールまたはサブモジュールなどの、1つ以上のモジュール内に組み込むことができる。ここでは例示の実施の形態をDVM165、DRM166、および報告モジュール167に関して述べるが、当業者が認識するように、DVM165、DRM166、または報告モジュール167のここに述べるどの機能もDVRM164の機能でもよく、この開示の範囲内に含まれる。
【0097】
図2D、
図6、および
図7に示すように、DVM165は複数の遠隔サブシステム120のいずれかから収集したデータを入力として受信して601ここに述べるようなデータ確認機能を行い、更に、確認した測定データをDRM166に、または統合ノード100の外部または内部にある他の構成要素またはモジュールに出力する(例えば、データを記憶するため、またはデータを遠隔ホストに出力するため)。
【0098】
更に、DRM166は、DRM166から出力した確認された測定データ、または複数の遠隔サブシステム120のいずれかから収集した任意の測定データを入力として受信して
(701
)ここに述べるようなデータ調整機能を行い、また測定データを統合ノード100の外部または内部にある他の構成要素またはモジュールに出力する(例えば、データを記憶するため、またはデータを遠隔ホストに出力するため)。
図2に示すように、DVM165、DRM166、またはDVRM164に入力するデータは、まずデータ収集モジュール161およびプロトコル翻訳プログラムまたは翻訳サーバ102を用いて収集しまた変換する。更に、中間のステップとして、
図2Dに示すように、任意のプロセスデータまたは測定データをデータベースサーバ101で記憶しまたはこれからアクセスできる。
【0099】
DVM165は
図6に示すように測定の限度を含みまたは提供する。かかる実施の形態では、DVM165は当業者に周知の濾過手続き607を用いて生の測定データを処理して、予め定めた限度608外の測定値を識別する。例えば、
図11に示すようなコンピュータプログラム製品1100は、時刻表示付きデータ内の測定値と予め定めた限度とを比較して
(1101
)、或る測定値が限度外の測定値かどうか決定するための1つ以上の命令を含む。
【0100】
データ濾過手続きは、例えば、命令1106に従って、限度外のいくつかの読み(例えば、非現実的なまたは不適当な読み)および測定値を削除しまた交換することにより、濾過した測定値を後の下流の計算で使用される、すなわち、収束を高めてDRM166により調整を行う。予め定めた限度608は、例えば、メモリ160内にまたはデータベース101に記憶し、また当業者が認識するように、測定値毎に少なくとも1レベルの限度(上限および下限)を含む。データ濾過手続きは、予め定めた限度を超える値を検出し、これに応じて、濾過した値610を別の値609と置換する
(610
)ために実施される。
【0101】
前記別の値は、例えば、デフォルト値、過去の測定値の予め定めた間隔の最小値または最大値、最終の正常な測定値(すなわち、確認した、濾過していない測定値)、予め定めた限度の平均値、予め定めた測定値の数または過去の測定値の間隔の平均値、上限、下限、または任意の予め定めた絶対値または相対値でよい。データ濾過手続きはまた、予め定めた限度を超える測定データを検出したことに応じて、例えば、複数の遠隔サブシステム120またはデータ収集モジュール161に、例えば、命令1107に従って、測定またはデータ収集機能を停止または中止するよう命じる
(612
)。
【0102】
またDVM165は、例えば、適応正確さの機能性を含みまたは与える
(604
)。かかる実施の形態では、DVM165は測定の予め定めた正確さ構成に応じてデータ濾過限度を調整する
(605
)。後で更に述べるように、正確さ構成は、調整に影響を与えそうな或る測定値に割当てる、ユーザが構成可能な確信度606を含む。正確さの確信度はいくつかの異なる測定タイプに応じてプログラム的に割り当られる。
【0103】
またDVM165は、例えば、当業者が認識するように、流量補償の機能性を含みまたは与える。かかる実施の形態では、補償された流量測定値がデータ源(すなわち、複数の遠隔サブシステム120の1つ以上)から直接与えられたのでなければ、DVM165は流量の読みが補償されているかどうか決定して
(602
)、補償を行う
(603
)。
【0104】
データ調整モジュール(DRM)166に移ると、
図2Dおよび
図7に示すように、DRM166はデータ確認モジュール(DVM)165がチェックした測定データ、すなわち、確認された測定データ(
図11に示すように、例えば、命令に従って確認されたもの
(1102
)でよい)を入力として受けいれる
(701
)。言い換えると、ここで更に述べるように、データ限度と正確さの機能性との組合せによりデータ調整プロセスを「駆動し」てその正確度を高める。DRM166のかかる機能性は正規分布型の流量、圧力、温度、および密度の測定データなどの、測定データについて与えてよい。
【0105】
DRM166は更に、予め定めた調整モデル703、704を含みまたは与えてよい。予め定めた調整モデルは、当業者に周知のように、例えば、メモリ160内またはデータベース101内に記憶する。予め定めた調整モデルは、例えば、特定のプロセスまたはユニットについて(「ユニットモデル」)、またはプラント全体について(「プラント全体モデル」)定義される。各予め定めた調整モデルは、例えば、ユニットまたはプラントの測定データの調整のために実施する標準的な手続きまたは規則の異なる集合を含む。プラント全体モデルは1つ以上のユニットモデルを含みまたはこれに依存する。
【0106】
また、予め定めた調整モデルはユニットまたはプラントの動作状態に合わせて調整される
(709
)。例えば、
図11に示すように、コンピュータプログラム製品1100は、確認された測定データに応じて、1つ以上の遠隔の時間同期化サブシステムを有する1つ以上のプロセスユニットの動作状態を決定する
(1103
)ための1つ以上の命令を含む。ここで更に述べるように、予め定めた調整モデルは、ユーザがアクセスできる構成インターフェースにより(例えば、入力装置および表示装置を有するユーザ端末により)ユーザが構成することができる。コンピュータプログラム製品1100は更に、確認された測定値および動作状態に応じて調整モデルを決定する
(1104
)ための、また確認された測定値を調整する
(1105
)ための、1つ以上の命令を含む。これについては以下のパラグラフで更に詳細に述べる。
【0107】
DRAM166は更に、例えば、ローカルインターフェース190などの構成インターフェースを含みまたは与える。構成インターフェース190は、例えば、ユニットモデルおよびプラント全体モデルを開発するのに必要なオブジェクトの組込みライブラリを有するオブジェクト指向グラフィカルユーザインターフェース(「GUI」)を含む。当業者が理解するように、構成インターフェース190はユーザ端末コンピュータ上で実現してよく、またユーザとインターフェースするための任意の数の周辺装置(モニタ、キーボード、マウス、スタイラス、プリンタ、タッチスクリーン、ジョイスティック、またはユーザ端末コンピュータと通信する任意の他の周知の周辺装置など)で構成しまた動作する。構成インターフェースに含まれるモデリングオブジェクトは、例えば、プラントと、異なる数およびタイプのプロセスユニット(タンクや原油スイッチ(crude switches)や当業者に周知のその他のプロセスユニットなど)との間の経路およびプロセスストリームを識別するためのオブジェクトを含む。また構成インターフェースにより、例えば、ユーザは種々のタイプのデータをモデルに割り当てることができる。これらのデータは、調整された読み、重要性能標識(KPIs)、信頼度/正確度、および未調整データ(実時間のおよび過去の)を含む。
【0108】
またDRM166は、例えば、状態検出論理を与えまたは含む。かかる実施の形態では、状態検出アルゴリズムを用いて測定データを処理して、ユニットまたはプラントの運転状態を検出してよい
(705
)。例えば、DRM166は、ユニットまたはプラントの調整された入力を生成した遠隔サブシステム120の定常状態運転またはその変化を応答的に検出してよい。更にDRMは、運転状態を変える運転事象を検出すると
(706,707
)、これに応じて、実現されている調整モデルを異なる運転状態用の異なる調整モデルに変える
(708
)。
【0109】
更に詳細に述べると、例えば、最小の冗長度を達成するには、関係するプロセスのユニットのユニットモデル703を定義する。各ユニットモデルは、例えば、複数の遠隔サブシステム120の1つ以上に対応し、またそのユニットの運転論理を反映して、他のプロセスユニットおよびその対応するプロセスストリームに関する開および閉トランザクションおよびユニット入出力に基づくユニット生産収支計算を定義する。モデル化するユニットは、例えば、原油蒸留ユニット、ユーティリティ、H2、真空蒸留ユニット、流動接触分解ユニット、水素添加分解ユニット、原油安定化設備、ガス処理ユニット、ガス液化ユニット、液化天然ガス、プラットフォーマ、粘度ブレーカ(「ビスブレーカ」)を含んでよい。
【0110】
プラント全体モデル704は、例えば、ユニットの任意のグループについて構成してよく、また原油スイッチ、運転シナリオ、および開および閉トランザクションに基づくプラントのための物質収支ループを定義してよい(例えば、タンクのレベル状態またはポンプの運転に変化があるとき)。プラント全体モデルは、例えば、受領、充填、処理、中間製品、および最終製品の入力、出力、および在庫のための収支計算を反映する。プラント全体モデルは更に、供給、充填、および製品仕様に基づいて物質収支を行うための予め定めた割当て方式を反映する。更に、プラント全体モデルは、例えば、サービスの変更が起こったときに、ユーザが行うタンクの割当てのための収支計算および方法を反映する。
【0111】
DRM166は、例えば、特定のモデルの最小必要冗長レベルを決定することによりモデルの収束とモデルの信頼レベルを高めるための予め定めた規則および条件712を含む。かかる条件は、例えば、流量が或る限界より下った場合はポンプを止めることや、或る読み/条件に基づいて或る限度または流れを活動化することを含む。或る実施の形態では、ユーザはここに述べる構成インターフェース190を用いて冗長度についての規則および条件を構成することが出来る。したがって、かかる冗長度を含むプラント全体モデルを調整することにより、測定の不正確さやデータの消失を克服することができる。
【0112】
DRM166は更に、ユニットおよびプラント全体の調整モデルに関する調整やその他の計算を支援するのに必要なデータライブラリ711を組み込むこともできる。ライブラリは、例えば、当業者に周知の方法に従って、メモリ160内またはデータベース101内などに記憶される。ライブラリは、制限なしに、以下の情報を含んでよい。
a)標準容量計算: 容量流量を質量流量に変換しまた質量流量を容量流量に変換するなどの、米国石油協会の標準容量計算に従う方法のため。
【0113】
b)熱力学的ライブラリ: 生産のための真の沸点(TBP)など、原油分析のための純粋化合物および疑似化合物に関する特性や、気液平衡のための関係する熱力学的特性や、石油精製およびガス処理工業における他の周知のプロセスを表す方法のため。定義されたプロセスデータは、例えば、温度、圧力、液体またはガスクロマトグラフィ(実験屋内で行う分析)、密度、ASTM(材料試験のための米国標準)D86、およびTBPsを含むことができる。
c)質量および熱収支の最適化計算: 熱力学的平衡の情報を持つ物質、熱、および構成要素の収支を組み合わせて単一の最適化問題を形成する方法のため。主な収支は、例えば、物質、容量、熱(エネルギー)、および構成要素収支を含む。熱力学的平衡データは、例えば、冗長度を高め(別個のまた同時のランで)、また調整された測定値の正確さを増すことができる。
【0114】
d)消失した構成物の推定: 成分の物質収支および熱力学的ライブラリに基づいて平均物質重量を計算して、消失した構成物推定の正確さを増すため。
e)消失した変数の推定: 未測定のプロセス変数の値および消失した計器の値を識別しまた推定するため(現在の冗長度が許せば)。
f)圧力および分子の収支: 気液平衡の技術を用いて圧力および分子の収支を計算するため。
g)化学反応: 原子収支またはユーザが定義した式に基づいて反応をモデル化するため。
h)ASTM(材料試験のための米国標準)D86: 多重成分を有するシステム内の測定の確認のためにASTM D86蒸留曲線をTBP曲線に変換するため。
【0115】
DRM166は更に、モデルを調整して、上述の機能性と一致する確認され調整されたデータを作るためのモデルソルバを含みまたは与える
(714
)。モデルソルバは、例えば、ユニットモデルおよびプラント全体モデルの調整問題を解く命令を有するコンピュータプログラム製品を組み込むことができる。かかる実施の形態は当業者に周知のアルゴリズムを用いて、順次二次計画(SQP)アルゴリズム(内部点を持つ順次二次計画を含む)などの厳しい調整問題を、例えば、ラン当たり10分以内に解くことができる。モデルソルバは、例えば、物質および熱収支を同時に実施し、ユーザが定義する規則を組み込んで測定限度を処理し、物質および容量収支を同時に実施し、不均衡制約を支援し、予め定めた反復回数内に収束しない場合は終了する。更に、モデルソルバは調整された測定値を強化するために、予め定めた限度に従ってソルバ制限を実施する。ソルバ限度は、例えば、DVM165測定値限度に関して述べた機能でよい。
【0116】
DRM166は更に、例えば、調整された測定値内の総誤差を検出する
(715
)命令を有するコンピュータプログラム製品を含みまたは提供する。実施の形態は、調整された値の信頼レベルおよび総誤差の存在の確率を決定し、また更に、予め定めた信頼レベル713を超える値にフラグを立てる
(716
)。予め定めた信頼レベル713はユーザが構成可能であり、デフォルト信頼レベルとしては、例えば、95%信頼レベルが適当である。更に、DRM166は標準の統計的方法を用いて、信頼レベルに基づいてランダム誤差を測定値全体に分配してよい。また、DRM166は、例えば、調整された測定値内の総誤差を除去する命令を有するコンピュータプログラム製品を組み込むことができる。総誤差を除去する命令を有するコンピュータプログラム製品は、例えば、検出された総誤差を持つ測定値を、予め定めた優先方式718に従って除去する
(717
)機能を与えることができる。優先方式は、(1)より大きな訂正を行った測定値を除去することを優先する、(2)調整ランペナルティの総和に最も大きな影響を与える測定値を除去することを優先する、ことを含む。
【0117】
DRM166は更に、調整された測定値の確認された正確さ/精度の表示や、確認された正確さに寄与する主な測定値の表示や、調整により改善された測定値の識別や、調整問題の全ペナルティに対する調整された測定値の寄与の定量化と共に、調整された測定値722を出力する
(719
)。当業者が認識するように、DRM166は任意の測定値または値を、メモリ160またはデータベース101などの記憶媒体内に記憶することにより、遠隔ホストコンピュータ110に送ることにより、または入出力ユニット(ローカルインターフェース190、または当業者が理解するようなグラフィカルユーザインターフェースを有する任意のコンピュータ端末など)を通して統合ノード100と通信する任意の他のコンピュータまたはインターフェースに送ることにより、出力する。
【0118】
DRM166は更に、以下の領域、すなわち、損失の識別、石油会計、および性能監視、のいずれかに関係する重要性能標識(「KPIs」)723を推定する
(720
)命令を有するコンピュータプログラム製品を含みまたは与える。他のKPIsとしては、例えば、(1)損失管理(すなわち、ユニットまたはプラントレベルが受けた損失の量を計算するため)、(2)調整対理論の歩留まり(reconciled−to−theoretical yield ratio)に基づく信頼性指標、(3)熱交換器の付着物、ヒータやコンプレッサやポンプや配管や分別の効率、分別の重複、および式[1]で表す比に基づく性能指標などを示す性能に基づくKPIs、を含む。
【数1】
【0119】
当業者が認識するように、DRM166はKPIsを定義するデータをメモ
リ160またはデータベース101などの記憶媒体から検索する。これらの記憶媒体は、遠隔ホストコンピュータ110と通信し、または入出力ユニット(ローカルインターフェース190、または当業者が理解するようなグラフィカルユーザインターフェースを有する任意のコンピュータ端末など)を通して統合ノードと通信する任意の他のインターフェースと通信する。DRM166は更に、KPIsを計算するのに用いる各入力測定値に寄与しまたは由来する誤差を計算する命令を有するコンピュータプログラム製品を含みまたは与えることが出来る。例えば、コンピュータプログラム製品は共分散解析を用いて、異なる測定値の間の統計的相互作用を計算する(例えば、共分散解析を用いてKPIsの間またはKPIsと測定値との間の相互作用を計算することにより)命令を有する。コンピュータプログラム製品は更に、調整された測定値および計算された共分散に応じてKPI毎の正確さを計算する命令を有する。
【0120】
DRM166は更に、例えば、任意の調整された測定値または決定された値を別のシステムまたはユーザに引き渡す命令を有するコンピュータプログラム製品(例えば、報告モジュール167)を与えまたは含んでよい。当業者が認識するように、報告モジュール167は測定値または値を、メモリ160またはデータベース101などの記憶媒体に記憶することにより、遠隔ホストコンピュータ110に送ることにより、または入出力ユニット(ローカルインターフェース190、または当業者が理解するようなグラフィカルユーザインターフェースを有する任意のコンピュータ端末など)を通して統合ノードと通信する任意の他のインターフェースに送信することにより、引き渡す。
【0121】
例であって制限するものではないが、このようにして引き渡してよい測定値または値は次のものを含む。すなわち、仮定や冗長度や測定値に基づく調整されたモデルの品質、調整された測定値およびその正確さ、推定された測定値およびその正確さ、調整モデルから決定されたKPIsおよびその正確さ、フラグを立てて疑った限度外測定値および調整、およびカスタム化された報告に従って選択してよいユーザが選択しまたは構成する任意の測定値または値、などである。例えば、報告機能性はCrystal Reports(R)またはMicrosoft(R)Office Excel(アドイン)などの、1つ以上の所有権を主張できるまたは標準の報告ツールを組み込むことができる。
【0122】
報告は、例えば、歩留まりおよび損失勘定(すなわち、充填/供給の収支)、排液やタンクの蒸発や説明不可能なおよび説明可能な損失の百分率の環境順守、性能の監視、およびデータ/モデル解析に従って作成される。報告は、自然のすなわち生の形で、またMicrosoft(R)Office Excel(R)またはMicrosoft(R)Office Word、またはAdobe(R)PDF(portable document format)用にフォーマットされたものを制限なしに含む当業者に周知の任意のフォーマットで、引き渡すことができる。報告は、例えば、ペナルティに基づいて分類することにより、どこに重大な訂正が行われたかをユーザは容易に識別することができる。報告はまた、特に関心のある或る測定値または値に、例えば、カラーコーディングを用いてフラグを立てて、例えば、重大な説明不可能な損失、誤ったまたは疑わしい読み、または調整された測定値を示してもよい。
【0123】
本出願は、米国仮特許出願第61/367,207号、2010年7月23日出願の「データ収集および制御のための統合ノードを提供する機械、コンピュータプログラム製品、およびコンピュータで実現する方法」の優先権を主張しまた関連するものであり、その全体を援用する。
【0124】
図面および記述において、本発明の代表的な好ましい実施の形態を開示した。図面および記述に特定の用語を用いたが、かかる用語は説明のために用いたに過ぎないものであって、制限するものではない。更に、図面、記述、およびクレームに用いた、「一次」、「二次」、「第1」、「第2」、「第3」、または他の序数などの番号付けに関する語は単なる説明のためのものであって、重要性の順序、順番、連続、または程度を定義しまたは暗示するものではない。更に、図面または記述の中で特定の実施の形態の多重の実施の形態または多重の機能を別々に記述した限りでは(「コンピュータプログラムまたはコンピュータプログラム製品など)、これらは例示の目的で、また開示を完全にするために与えたものであって、多重の実施の形態または要素を記述するのに用いた用語の意味の間の違いを暗示しまたは区別するためではない。本発明について、図示した実施の形態を特に参照してかなり詳細に記述した。しかし明らかなように、上記の明細書に記述しまた添付のクレームで規定した本発明の精神および範囲内で、種々の修正および変更を行うことができる。