(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-02
(45)【発行日】2023-08-10
(54)【発明の名称】プロセスプラントエンティティの状態を検出する方法およびシステム
(51)【国際特許分類】
G05B 23/02 20060101AFI20230803BHJP
【FI】
G05B23/02 Z
【外国語出願】
(21)【出願番号】P 2017205479
(22)【出願日】2017-10-24
【審査請求日】2020-10-23
(32)【優先日】2016-10-24
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】512132022
【氏名又は名称】フィッシャー-ローズマウント システムズ,インコーポレイテッド
(74)【代理人】
【識別番号】110002860
【氏名又は名称】弁理士法人秀和特許事務所
(72)【発明者】
【氏名】マーク ジェイ. ニクソン
(72)【発明者】
【氏名】ジョシュア ビー. キッド
(72)【発明者】
【氏名】マイケル ジェイ.ブードロー
(72)【発明者】
【氏名】ショーン ダブリュ. アンダーソン
(72)【発明者】
【氏名】エリック ロトヴォルド
【審査官】稲垣 浩司
(56)【参考文献】
【文献】特開2013-195398(JP,A)
【文献】特表2007-536647(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 23/02
(57)【特許請求の範囲】
【請求項1】
プロセスプラントからクラウドコンピューティングシステムに安全に転送されるデータを使用してプロセスプラントエンティティの状態を検出する方法であって、
前記プロセスプラントが工業プロセスを制御するように動作している間に前記プロセスプラントの1つ以上のデバイスによって生成されたデータが、前記1つ以上のデバイスから、フィールドゲートウェイ、データダイオード及びエッジゲートウェイを介して前記クラウドコンピューティングシステムへ送信するためにセキュリティ保護され、前記データダイオードが、前記プロセスプラントのネットワークと前記クラウドコンピューティングシステムのネットワークとの間の双方向通信を防止するように構成されて、前記1つ以上のデバイスによって生成された前記データを、前記クラウドコンピューティングシステムにおいて受信すること
であって、複数の時間のインスタンスにおいて、前記プロセスプラントエンティティの1つ以上のプロセスパラメータの各々に対してのそれぞれのプロセスパラメータ値を受信すること、を含む、前記1つ以上のデバイスによって生成された前記データを受信することと、
前記クラウドコンピューティングシステムにおいて、前記データを分析して、それにより、前記プロセスプラント内の前記工業プロセスを制御するために物理的機能を遂行し前記1つ以上のデバイスに対応する
前記プロセスプラントエンティティの状態を検出すること
であって、
前記1つ以上のプロセスパラメータの各々に対して、前記複数の時間のインスタンスにわたる前記1つ以上のプロセスパラメータの前記それぞれのプロセスパラメータ値を結合して、プロセスパラメータメトリックを生成することと、
前記1つ以上のプロセスパラメータの時間経過に伴って収集される履歴プロセスパラメータ値に基づいて統計的モデルを生成することと、
前記1つ以上のプロセスパラメータに対する前記プロセスパラメータメトリックを前記統計的モデルに適用することと、
を含む、前記データを分析して、それにより前記プロセスプラントエンティティの前記状態を検出することと、
前記プロセスプラントエンティティの前記状態の指標をユーザインターフェースデバイスに送信して、オペレータに前記状態を警告することと、を含む、方法。
【請求項2】
前記プロセスプラントエンティティの前記状態を検出することが、前記プロセスプラントエンティティの性能監視メトリックを検出すること、または前記プロセスプラントエンティティにおけるエラー、不動帯、不動時間、または漏れのうちの少なくとも1つを検出すること、のうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項3】
前記プロセスプラントエンティティの前記検出された状態に基づいて前記プロセスプラントで警報またはイベントを発生させること、をさらに含む、請求項1または2に記載の方法。
【請求項4】
前記プロセスプラントエンティティの前記検出された状態に基づいて前記プロセスプラントエンティティの動作を調整するために前記プロセスプラントに制御信号を送信すること、をさらに含む、請求項1から3のいずれか1項に記載の方法。
【請求項5】
前記1つ以上のデバイスによって生成されたデータを受信することが、前記1つ以上のデバイスから前記データダイオードを介して前記クラウドコンピューティングシステムにストリーミングされたリアルタイムデータを受信すること、を含む、請求項1から4のいずれか1項に記載の方法。
【請求項6】
前記複数の時間のインスタンスにわたる前記1つ以上のプロセスパラメータの前記それぞれのプロセスパラメータ値を結合して前記プロセスパラメータメトリックを生成することが、前記それぞれのプロセスパラメータ値の移動平均、または前記複数の時間のインスタンスにわたる前記それぞれのプロセスパラメータ値の減衰平均のうちの少なくとも1つを計算して前記プロセスパラメータメトリックを生成すること、を含む、請求項
1から5のいずれか1項に記載の方法。
【請求項7】
前記1つ以上のプロセスパラメータの前記履歴プロセスパラメータ値に基づいて前記統計的モデルを生成することが、
各々の
前記履歴プロセスパラメータ値を、前記状態を経験した1つ以上のプロセスプラントエンティティに対するプロセスパラメータ値の第1のセットに対応するものとして、または前記状態を経験していない1つ以上のプロセスプラントエンティティに対するプロセスパラメータ値の第2のセットに対応するものとして分類することと、
前記履歴プロセスパラメータ値の前記分類に基づいて、前記統計的モデルを生成することと、を含む、請求項
1から6のいずれか1項に記載の方法。
【請求項8】
前記プロセスプラントエンティティが、前記状態を経験したか否かの指標を受信することと、
前記プロセスプラントエンティティの前記1つ以上のプロセスパラメータの前記それぞれのプロセスパラメータ値を含むように、かつ前記プロセスプラントエンティティが前記状態を経験したかどうかの前記指標に基づいて
前記履歴プロセスパラメータ値を更新することと、をさらに含む、請求項
7に記載の方法。
【請求項9】
プロセスプラントのプロセスプラントエンティティの状態を検出するシステムであって、
前記プロセスプラントに配置されたプロセスプラントエンティティに対応し、工業プロセスを制御するための物理的機能を遂行する1つ以上のデバイスと、
前記1つ以上のデバイスを1つ以上のコンピューティングデバイスに通信可能に接続するデータダイオードであって、前記プロセスプラントのネットワークと前記1つ以上のコンピューティングデバイスとの間の双方向通信を防止するように構成される、データダイオードと、
前記プロセスプラントのネットワークと前記データダイオードとを相互接続するフィー
ルドゲートウェイと、
前記データダイオードと前記1つ以上のコンピューティングデバイスとを相互接続するエッジゲートウェイと、
前記1つ以上のコンピューティングデバイスであって、
1つ以上プロセッサと、
通信ユニットと、
前記1つ以上のプロセッサ及び前記通信ユニットに結合された1つ以上の固定コンピュータ可読媒体であって、前記1つ以上のプロセッサによって実行されると、
前記プロセスプラントがオンラインである間に前記プロセスプラントの前記1つ以上のデバイスによって生成されたデータが、前記データダイオードを介して前記1つ以上のデバイスから前記コンピューティングデバイスに送信するためにセキュリティ保護されて、前記1つ以上のデバイスによって生成された前記データを、前記データダイオード及び前記通信ユニットを介して受信すること
であって、複数の時間のインスタンスにおいて、前記プロセスプラントエンティティの1つ以上のプロセスパラメータの各々に対してのそれぞれのプロセスパラメータ値を受信すること、を含む、前記1つ以上のデバイスによって生成された前記データを受信することと、
前記プロセスプラントエンティティの状態を検出するために前記データを分析すること
であって、
前記1つ以上のプロセスパラメータの各々に対して、前記複数の時間のインスタンスにわたる前記1つ以上のプロセスパラメータの前記それぞれのプロセスパラメータ値を結合して、プロセスパラメータメトリックを生成することと、
前記1つ以上のプロセスパラメータの時間経過に伴って収集される履歴プロセスパラメータ値に基づいて統計的モデルを生成することと、
前記1つ以上のプロセスパラメータに対する前記プロセスパラメータメトリックを前記統計的モデルに適用することと、
を含む、前記データを分析することと、
前記プロセスプラントエンティティがオペレータに前記状態を警告するための前記状態の指標を、前記通信ユニットを介してユーザインターフェースデバイスに送信することと、を前記コンピューティングデバイスにさせる命令を格納する、固定コンピュータ可読媒体と、を備える、1つ以上のコンピューティングデバイスと、
を備えるシステム。
【請求項10】
前記プロセスプラントエンティティの前記状態が、前記プロセスプラントエンティティにおける性能監視メトリック、エラー、不動帯、不動時間、または漏れのうちの少なくとも1つを含む、請求項
9に記載のシステム。
【請求項11】
前記1つ以上のデバイスが、フィールドデバイスまたはコントローラであって、前記フィールドデバイスによって生成されるまたは送信されるうちの少なくとも1つである信号を利用する制御ルーチンを実行する前記フィールドデバイスまたはコントローラのうちの少なくとも1つを含む、請求項
9または
10に記載のシステム。
【請求項12】
前記プロセスプラントエンティティが、バルブ、フィールドデバイス、I/Oデバイス、前記I/Oデバイスを介して前記フィールドデバイスに結合されたコントローラ、タンク、ミキサー、ポンプ、または熱交換器のうちの少なくとも1つを含む、請求項
9から
11のいずれか1項に記載のシステム。
【請求項13】
前記それぞれのプロセスパラメータ値
の組み合わせが、前記それぞれのプロセスパラメータ値の移動平均または前記それぞれのプロセスパラメータ値の減衰平均のうちの少なくとも1つを含む、請求項
9から12のいずれか1項に記載のシステム。
【請求項14】
前記統計的モデルが、各々の履歴プロセスパラメータ値の分類に基づいて、前記状態を経験した1つ以上のプロセスプラントエンティティのプロセスパラメータ値の第1のセットに対応するものとしてまたは、前記状態を経験していない1つ以上のプロセスプラントエンティティのプロセスパラメータ値の第2のセットに対応するものとして生成される、請求項
9から13のいずれか1項に記載のシステム。
【請求項15】
前記統計的モデルが、1つ以上の機械学習技術であって、線形回帰、多項式回帰、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、またはニューラルネットワークを含む、1つ以上の機械学習技術を使用して生成される、請求項
9から14のいずれか1項に記載のシステム。
【請求項16】
前記1つ以上のプロセスパラメータが、圧力、温度、流量、密度、面積、または体積のうちの少なくとも1つを示す、請求項
9から
15のいずれか1項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【0001】
<関連参考文献>
本開示は、2014年10月6日に出願され、「Regional Big Data
in Process Control Systems」と題する共同所有の米国特許出願第14/507,188号、2016年9月23日に出願され、「Data Analytics Services for Distributed Industrial Performance Monitoring」という名称の米国特許出願第15/274,519号、2016年9月23日に出願され、「Distributed
Industrial Performance Monitoring and Analytics」という名称の米国特許出願第15/274,233号、及び米国特許出願第15/332,751号(本明細書と共に援用され、「Secured Process Control Communications」(代理人整理番号06005-593588)と題されている)に関連し、その全体の開示は参照により本明細書に組み込まれる。
<技術分野>
【0002】
本開示は、一般的にプロセスプラント及びプロセス制御システムに関し、より詳細には、時系列データを分析することによってプロセスプラント内のデバイスの状態を検出することに関する。
【背景技術】
【0003】
化学プロセス、石油プロセスまたは他のプロセスプラントで使用されるものなどの分散プロセス制御システムは、I/Oカードまたはデバイス、アナログ、デジタルまたはアナログ/デジタルバスの組み合わせを介して1つ以上のフィールドデバイスに通信可能に結合された1つ以上のプロセスコントローラ、及び/または無線通信リンクまたはネットワークを典型的に含む。例えばバルブ、バルブ位置決め器、スイッチ、及び送信機(例えば、温度、圧力、レベル、及び流量センサ)であってもよいフィールドデバイスは、プロセス環境内に位置し、例えばバルブの開閉、プロセスプラントまたはシステム内で実行されている1つ以上のプロセスを制御するために、圧力、温度などのプロセスパラメータの測定などのような、一般に物理的またはプロセス制御機能を遂行する。周知のフィールドバスプロトコルに準拠するフィールドデバイスなどのスマートフィールドデバイスは、制御計算、アラーム機能、及びコントローラ内で通常実装される他の制御機能を遂行することもできる。典型的にプラント環境内に位置するプロセスコントローラは、フィールドデバイスによって作られたプロセス測定値及び/またはフィールドデバイスに関する他の情報を示す信号を受信し、例えば、プロセス制御判定を行い、受信した情報に基づいて制御信号を生成し、HART(登録商標)、WirelessHART(登録商標)、FOUNDATION(登録商標)Fieldbusフィールドデバイスなどのフィールドデバイスで実施される制御モジュールまたはブロックと連携する、異なる制御モジュールを動作させるコントローラアプリケーションを遂行する。コントローラ内の制御モジュールは、通信ラインまたはリンクを介してフィールドデバイスに制御信号を送信し、それによってプロセスプラントまたはシステムの少なくとも一部の動作を制御する。本明細書で使用されるように、フィールドデバイス、I/Oカードまたはデバイス、及びコントローラは、一般に、「プロセスデバイス(process devices)」または「プロセス制御デバイス(process control devices)」と呼ばれる。
【0004】
フィールドデバイス及びコントローラからの情報は、通常、データハイウェイを介して、オペレータワークステーション、パーソナルコンピュータもしくはコンピューティング
デバイス、データヒストリアン、レポートジェネレータ、集中型データベース、または典型的にはより厳しいプラント環境から離れた制御室もしくは他の場所に配置される他の集中管理コンピューティングデバイスなどの1つ以上の他のハードウェアデバイスに利用可能になる。これらのハードウェアデバイスの各々は、典型的には、プロセスプラントにわたって、またはプロセスプラントの一部にわたって集中化される。これらのハードウェアデバイスは、例えば、プロセス制御ルーチンの設定を変更すること、コントローラ及びフィールドデバイスプロセス内の制御モジュールの動作を修正すること、プロセスの現在の状態を視認すること、フィールドデバイス及びコントローラによって生成されたアラームを視認すること、人員の訓練またはプロセス制御ソフトウェアのテストの目的でプロセス動作をシミュレートすること、構成データベースを維持及び更新することなど、プロセスの制御及び/またはプロセスプラントの動作に関する機能を、オペレータが遂行することができるアプリケーションを実施することができる。ハードウェアデバイス、コントローラ、及びフィールドデバイスによって利用されるデータハイウェイは、有線通信経路、無線通信経路、または有線及び無線通信経路の組み合わせを含むことができる。
【0005】
一例として、Emerson Process Managementが販売するDeltaVTM制御システムには、プロセスプラント内の多様な場所に位置する異なるデバイスに格納され、実行される複数のアプリケーションが含まれる。1つ以上のワークステーションまたはコンピューティングデバイスに存在する構成アプリケーションによって、ユーザが、プロセス制御モジュールを作成または変更し、これらのプロセス制御モジュールを、データハイウェイを介して専用の分散コントローラにダウンロードすることができる。典型的には、これらの制御モジュールは、そこへの入力に基づいて制御スキーム内の機能を遂行し、制御スキーム内の他の機能ブロックに出力を提供するオブジェクト指向プログラミングプロトコル内のオブジェクトである通信可能に相互接続された機能ブロックで構成される。構成アプリケーションはまた、構成設計者が、視認アプリケーションによってデータをオペレータに表示し、オペレータがプロセス制御ルーチン内の設定点などの設定を変更することができるようにするオペレータインターフェースを作成または変更することを可能にすることができる。各々の専用コントローラ及び場合によっては1つ以上のフィールドデバイスは、実際のプロセス制御機能を実装するために割り当てられ、ダウンロードされた制御モジュールを実施するそれぞれのコントローラアプリケーションを格納及び実行する。1つ以上のオペレータワークステーション(またはオペレータワークステーション及びデータハイウェイと通信可能に接続された1つ以上の遠隔コンピューティングデバイス)上で実行される視認アプリケーションは、データハイウェイを介してコントローラアプリケーションからデータを受信し、ユーザインターフェースを使用してプロセス制御システムの設計者、オペレータ、またはユーザにこのデータを表示することができ、オペレータの視点、技術者の視点、技能者の視点など、多数の異なる視点のいずれかを提供することができる。データヒストリアンアプリケーションは、典型的には、データハイウェイにわたって提供されるデータの一部または全部を収集して保存するデータヒストリアンデバイスに格納されて実行され、一方、構成データアプリケーションを、データハイウェイに接続されたさらに別のコンピュータ内で実施し、現在のプロセス制御ルーチン構成及びそれに関連するデータを格納することができる。代替的に、構成データベースを構成アプリケーションと同一のワークステーションに位置させることもできる。
【0006】
一般的には、プロセスプラントのプロセス制御システムは、フィールドデバイス、コントローラ、ワークステーション、ならびに階層化ネットワーク及びバスのセットによって相互接続される他のデバイスを含む。プロセス制御システムは、例えば、製造及び運用コストを低減し、生産性及び効率を高め、プロセス制御及び/またはプロセスプラント情報などへのタイムリーなアクセスを提供するために、様々な事業体及び外部ネットワークと接続されてもよい。一方、プロセスプラント及び/またはプロセス制御システムを、企業及び/または外部のネットワーク及びシステムに相互接続することにより、企業及び/ま
たは外部ネットワークで使用されるもののような、商用システム及びアプリケーションにおいて予想される脆弱性から生じ得る、サイバー侵入及び/または悪意のあるサイバー攻撃のリスクが高まる。プロセスプラント、ネットワーク、及び/または制御システムのサイバー侵入及び悪意のあるサイバー攻撃は、一般的に言えば、汎用コンピューティングネットワークの脆弱性と同様の脆弱性である情報資産の機密性、完全性、及び/または可用性に悪影響を与える可能性がある。しかしながら、汎用コンピュータネットワークとは異なり、プロセスプラント、ネットワーク、及び/または制御システムのサイバー侵入は、プラント設備、製品、及び他の物理的資産の損傷、破壊、及び/または損失だけでなく、人命の喪失をもたらす可能性がある。例えば、サイバー侵入によってプロセスが制御不能になり、爆発、火災、洪水、危険物への曝露などが生成する可能性がある。したがって、プロセス制御プラント及びシステムに関連する通信を、セキュリティ保護することが特に重要である。
【0007】
図1は、プロセス制御または工業プロセスシステムのセキュリティの例示的なレベルのブロックダイヤグラム10を含む。ダイヤグラム10は、プロセス制御システムの様々な構成要素、プロセス制御システムそれ自体、及びプロセス制御システムが、通信可能に接続することができる他のシステム及び/またはネットワーク間の相互接続、ならびに、プロセス制御システムと他のシステム/ネットワークの内部及び間の通信に対するセキュリティの階層またはレベルを示す。セキュリティレベルは、セグメンテーションまたは分離によるセキュリティへの階層的なアプローチを提供し、様々なレベルは1つ以上のファイアウォール12
A、12
B、12
Cによって保護され、異なるレベル間で許可されたトラフィックのみを可能にする。
図1では、低い番号のセキュリティレベルは、制御されているオンラインプロセスに近く、高い番号のセキュリティレベルは実行プロセスからより多く削除されている。したがって、信頼レベル(例えば、メッセージ、パケット、及びその他の通信が安全であるという信頼の相対的な程度)は、デバイスレベル(レベル0)で最も高く、信頼レベルは、事業体ネットワークレベル上、例えば、公衆インターネット上で最も低レベル(レベル5)にある。ISA(国際自動学会(International
Society of Automation))95.01-IEC(国際電気標準
会議(International Electrotechnical Commission))62264-1で標準化されている制御階層(Purdue Model for Control Hierarchy)論理フレームワークのパーデュ(Purdue)モデルを使用すると、プロセス制御システムは一般にセキュリティレベル0~2に分類され、製造、会社、及び企業システムは、一般にセキュリティレベル3~5に分類される。
【0008】
異なるセキュリティレベルの各々における異なる機能性の例を、
図1に示す。典型的には、レベル0には、プロセスと直接接触するフィールドデバイス及び他のデバイス、例えば、センサ、バルブ、バルブ位置決め器、スイッチ、送信機、及びバルブの開閉、圧力、温度などのプロセスパラメータの測定などの物理的及び/またはプロセス制御機能を遂行する他のデバイスを含む。例示を明確にするために、例示的なフィールドデバイスは、
図1には示されていない。
【0009】
レベル1は、例えば、フィールドデバイスからの入力を受信し、制御スキーム、モジュール、または他の論理を使用して入力を処理し、結果出力を他のデバイスに送信することによって、プロセスのリアルタイム動作の基本制御を提供するコントローラ及び他のプロセス制御デバイス15
A~15
Dを含む。例えば、レベル1のプロセス制御デバイスは、プロセスコントローラ、プログラマブルロジックコントローラ(PLC)、遠隔端末ユニット(RTU)などを含むことができる。一般に、このようなプロセス制御デバイスは、それぞれの制御方式でプログラムされ、及び/または構成されている。
図1に示すように、レベル1のプロセス制御デバイスは、バッチ制御15A、個別制御15B、連続制御15C、ハイブリッド制御15D、及び/または他のタイプの制御を遂行するものを含むことができる。
【0010】
レベル2は、生産領域監視制御を提供するデバイス及び設備18A~18Dを含む。例えば、レベル2は、警告及び/または警報システム18A、オペレータワークステーション18C、他のヒューマンマシンインターフェース(HMI)18B、18Dなどを含むことができる。一般に、レベル2のデバイス及び設備は、レベル1のデバイス15A~15Dならびにレベル3のデバイス及び設備と、例えば1つ以上のファイアウォール12A、12Bを介して通信することができる。
【0011】
レベル3は、プラントシステム及び/またはネットワーク、例えば、デバイス、設備、及びサイト/プラント動作を管理し、所望の最終製品を生産または製造するために制御するシステム20A~20Dを収容する。例えば、レベル3は、生産制御、報告、スケジューリング等に使用される生産システム20A、品質、生産性、効率などを改善するために使用される最適化システム20B、プロセスプラントによって生成された、及び/または示すデータを履歴化するためのヒストリアン20C、及び/または制御スキーム及びモジュール、オペレータワークステーション、及び/またはHMIインターフェースなどの設計及び開発のために要員が使用するエンジニアリングワークステーションもしくはコンピューティングデバイス20Dを含むことができる。
【0012】
レベル5にスキップすると、レベル5には一般的に、事業体、会社、または企業のシステム及び/またはネットワークが収納される。典型的には、そのようなシステム及び/またはネットワークは、企業外のシステムとのインターフェースを管理する。例えば、企業のVPN(仮想プライベートネットワーク)、会社もしくは企業インターネットアクセスサービス、ならびに/または他のIT(情報技術)インフラストラクチャシステム及びアプリケーションは、レベル5にある。
【0013】
レベル5の内部拡張と見なすことができるレベル4は、一般的に企業の内部にある会社または企業システム、電子メール、イントラネット、サイトの事業計画とロジスティクス、在庫管理、スケジューリング、及び/または他の会社/企業システム及びネットワークを収納する。
【0014】
図1に示すように、レベル3及び4は、事業体または企業システム及び/またはネットワークを、プラント/プロセスシステム及び/またはネットワーク分離をするために非武装地帯(DMZ)22によって分離され、それによってプロセスプラントが曝されるセキュリティリスクを最小にする。DMZ22は、1つ以上のそれぞれのファイアウォール12Cを含み、より低いレベルでプラント関連デバイス、機器、及び/またはアプリケーションと通信し、及び/または企業関連デバイス、機器、アプリケーションと高度なレベルで通信する、様々なデバイス、機器、サーバ、及び/またはアプリケーション25A~25Fを収容してもよい。例えば、DMZ22は、2、3の例を挙げると、端末サービス25A、パッチ管理25B、1つ以上のAVサーバ25C、1つ以上のヒストリアン25D(例えばミラーヒストリアンであり得る)、Webサービスオペレーション25E、及び/または1つ以上のアプリケーションサーバ25Fを含む。典型的には、DMZ22の上のレベルのデバイス、設備、及び/またはアプリケーションに対して、プロセスプラント及びその制御システムにアクセスすることを許可されたデバイス、設備、サーバ、及び/またはアプリケーション25A~25Fは、下位レベルへの別個の接続を維持し、それにより、プロセスプラント及び制御システムを企業(及び上位)システム及び/またはネットワークからの攻撃から保護する。
【0015】
遠隔サービスの簡単な議論に移ると、遠隔サービスは、異なるユーザ及びシステムによ
って、ますます一般的に使用されるようになってきている。例えば、MicrosoftWindows(登録商標)オペレーティングシステムによって提供される遠隔デスクトップサービス製品を使用すると、ユーザは、会社ネットワーク及び/またはインターネットから、データセンター内のセッションベースのデスクトップ、仮想マシンベースのデスクトップ、及び/または他のアプリケーションにアクセスすることが可能になる。Intuit(登録商標)が提供するQuickBooks(登録商標)Online製品は、ユーザがキャッシュフロー管理、請求書発行、インターネットを介してのオンライン支払いなどの会計機能を遂行することを可能にする。一般的に言えば、遠隔サービスは、遠隔サービスにアクセスするシステムまたはユーザから遠隔操作で実行する1つ以上のアプリケーションによって提供される。例えば、1つ以上のアプリケーションは、サーバの遠隔バンク、クラウドなどでデータを実行及び管理し、企業ネットワーク及び/または公衆インターネットのような1つ以上のプライベート及び/または公衆ネットワークを介してアクセスされる。
【発明の概要】
【0016】
時系列分析を使用してプロセスプラント内のデバイスの状態を検出するための技術、システム、装置、構成要素、デバイス、及び方法が本明細書で開示される。該技術、システム、装置、構成要素、デバイス、及び方法は、本明細書では「工業制御(Industrial control)」、「プロセス制御(process control)」または「プロセス(process)」システム、環境、及び/またはプラントと互換的に呼ばれる工業プロセス制御システム、環境、及び/またはプラントに適用することができる。典型的には、そのようなシステム及びプラントは、物理的な材料または製品を製造、精製、変換、生成または生産するように動作する1つ以上のプロセスを分散方式で制御する。
【0017】
プロセス制御デバイスまたはプロセス制御デバイスの状態を検出するために、1つ以上のコンピューティングデバイスは、プロセスプラントエンティティに対応するプロセスパラメータのいくつかのインスタンスにわたって、プロセスパラメータ値を受信する。プロセスプラントエンティティは、バルブ、タンク、ミキサー、ポンプ、熱交換器などの、プロセスを制御する物理的機能を遂行するプロセスプラント内のデバイスを含む。プロセスプラントエンティティは、場合によっては、コントローラ及び/またはI/Oデバイスを含むことができる。一般的に言えば、プロセスプラントエンティティは、プロセスプラント内の物理的材料を、含有する、変換する、生成する、または転送することができる。
【0018】
プロセスパラメータは、プロセスプラントを流れる材料またはプロセスを制御する物理的機能を遂行するデバイスのプロセスプラント内の設定点または測定値(例えば、バルブパラメータ、フィールドデバイスパラメータ、コントローラパラメータなど)を含む。例えば、プロセスパラメータは、プロセスプラントまたはその設定点を流れる材料の温度、圧力、流量、質量、体積、密度、面積などを含む。プロセスパラメータはまた、プロセス(例えばバルブ)を制御するために物理的機能を遂行するデバイスまたはその設定点の駆動信号、移動、圧力、温度などを含む。
【0019】
プロセスパラメータ値は、ファイアウォール、暗号化技術、または任意の他の好適なセキュリティ機構を使用することによって、データダイオード(以下により詳細に記載される)を介してなどの安全な方法で受信される。その後、コンピューティングデバイスは、規則を適用することによって、または受信された時系列データに対する機械学習技術を使用することによって、プロセスプラントエンティティ(例えば、性能監視メトリック、エラー、漏れ、不動帯、不動時間、機械的摩耗など)で発生している状態を検出または識別する。
【0020】
一例では、コンピューティングデバイスは、各々のプロセスパラメータ上の統計的計算を遂行して、プロセスパラメータの平均値、標準偏差、所定時間期間にわたる移動平均、所定時間期間にわたる減衰平均、プロセスパラメータの最大/最小値、時間経過に伴うプロセスパラメータ値に対応する波の振幅、位相、及び/または周波数などを判定する。その後、統計的尺度は、プロセスプラントエンティティの履歴プロセスパラメータ値を使用して生成された統計的モデルと比較され、プロセスプラントエンティティの結果の状態が検出または識別される。
【0021】
統計的モデルは、例えば、決定木であってもよい。コンピューティングデバイスは、ノード、分岐、及び葉からなる決定木を生成することができ、各々のノードは統計的尺度に関するテストを表し、各々の分岐は、テストの結果を表し、各々の葉は、プロセスプラントエンティティが状態を経験する可能性を表す。対象プロセス制御エンティティの計算された統計的測定値を決定木と比較することによって、コンピューティングデバイスは、過剰な不動帯(例えば、許容可能な閾値を越える不動帯など)が発生しているかまたは存在していると判定する。コンピューティングデバイスは、検出された状態の指標をオペレータワークステーションのようなユーザインターフェースデバイスに送信して、オペレータに状態を警告する。例えば、プロセス制御システム内のバルブが過剰な不動帯を経験すると、オペレータはこの状態を警告され、バルブを検査して問題に対処することができる。
【0022】
プロセスプラントエンティティがバルブであるようないくつかのシナリオでは、コンピューティングデバイスは、受信されたプロセスパラメータデータまたはバルブデータに基づいてプロセスプラントエンティティまたはバルブの動作モードを判定する(例えば、フルストロークサイクル、連続スロットル、周期的スロットルなど)。例えば、バルブの動作モードは、バルブに対応するプロセスパラメータの受信されたプロセスパラメータ値に基づいて判定され、例えば、1つ以上のバルブパラメータのバルブに対応する受信されたバルブパラメータ値に基づいて判定される。コンピューティングデバイスは、規則のセットをプロセスパラメータ値に適用し、及びまたは機械学習技術を使用してバルブの動作モードを判定する。
【0023】
判定されたバルブの動作モードに基づいて、コンピューティングデバイスは、バルブの統計的測定値(バルブデータから判定される)を、判定されたモードで動作するバルブに基づいて具体的に生成される統計的モデルと比較する。いくつかの実施形態では、コンピューティングデバイスは、1つ以上のモード固有の統計的モデルを生成する。例えば、コンピューティングデバイス、フルストロークサイクルモードで動作するバルブからの履歴プロセスパラメータ値を使用してバルブ状態を検出するための統計的モデルを生成することができる。コンピューティングデバイスは、連続スロットルモードで動作するバルブからの履歴プロセスパラメータ値を使用してバルブ状態を検出するための別の統計的モデル、及び周期的スロットルモードで動作するバルブからの履歴プロセスパラメータ値を使用してバルブ状態を検出するための第3の統計的モデをル生成することができる。判定された動作モード及び受信されたバルブデータのための統計的モデルを使用して、コンピューティングデバイスは、バルブで生じている状態を検出または識別する。
【0024】
また、プロセスプラントエンティティがバルブであるようないくつかのシナリオでは、コンピューティングデバイスは、同じプロセスプラント、企業、工業、またはすべての工業にわたる複数のバルブのバルブデータ(バルブまたはプロセスパラメータ値)を比較する。コンピューティングデバイスは、その後、他のバルブに関する対象バルブの健全性を判定し、オペレータまたは他のコンピューティングデバイスまたはアプリケーションに表示するために、比較の指標(例えば、相対的健全性インジケータ)をユーザインターフェースデバイスに送信する。例えば、ユーザインターフェースデバイスは、各々のバルブのランク付けリストを表示するか、またはバルブの各々のためのバルブデータを並列にグラ
フ表示で提示する。付加的に、この比較は、バルブの状態のさらなる尺度として使用される。例えば、バルブデータが履歴プロセスパラメータ値を使用して生成された統計的モデルと比較されるとき、コンピューティングデバイスは、バルブが過剰な不動時間(例えば、許容可能な閾値を超える不動時間)を経験していると判定することができる。しかしながら、バルブが同じ工業の他のすべてのバルブと比較されるとき、コンピューティングデバイスは、バルブが経験している不動時間が工業内の平均であり、したがって不動時間は許容範囲内であると判定する。
【0025】
一実施形態では、プロセスプラントからクラウドコンピューティングシステムに安全に転送されるデータを使用することによってプロセスプラントエンティティの状態を検出する方法が開示される。この方法は、プロセスプラントが工業プロセスを制御するように動作している間に、プロセスプラントの1つ以上のデバイスによって生成されたデータをクラウドコンピューティングシステムで受信することを含む。データは、プロセスプラントのネットワークとクラウドコンピューティングシステムのネットワークとの間の双方向通信を防止するように構成されたデータダイオードを介して、1つ以上のデバイスからクラウドコンピューティングシステムへの転送のためにセキュリティ保護される。付加的に、この方法は、クラウドコンピューティングシステムにおいてデータを分析することを含み、それによってプロセスプラント内の工業プロセスを制御する物理的機能を遂行するプロセスプラントエンティティの状態を検出する。プロセスプラントエンティティは、1つ以上のデバイスに対応するか、または1つ以上のデバイスに関連する。例えば、プロセスプラントエンティティは、制御ループまたはバルブまたは他のタイプのフィールドデバイスなどの制御ループに含まれるデバイスであってもよく、1つ以上のデバイスは、ゲートウェイなどの通信ノードを含むことができる。別の例では、1つ以上のデバイスがプロセスプラントエンティティに含まれる。この方法は、プロセスプラントエンティティの状態の指標をユーザインターフェースデバイスに送信して、例えばオペレータにその状態を警告することをさらに含む。
【0026】
一実施形態では、プロセスプラントのプロセスプラントエンティティの状態を検出するためのシステムが開示される。システムは、プロセスプラント内に配置されたプロセスプラントエンティティに対応する1つ以上のデバイスを含み、プロセスプラントエンティティは、工業プロセスを制御する物理的機能を遂行する。例えば、プロセスプラントエンティティは、制御ループまたはバルブまたは他のタイプのフィールドデバイスなどの制御ループに含まれるデバイスであってもよい。システムはさらに、1つ以上のデバイスを1つ以上のコンピューティングデバイスに通信可能に接続するデータダイオードを含み、データダイオードは、プロセスプラントのネットワークと1つ以上のコンピューティングデバイスとの間の双方向通信を防止するように構成される。
【0027】
システムの1つ以上のコンピューティングデバイスは、1つ以上のプロセッサを備え、通信ユニットと、1つ以上のプロセッサ及び通信ユニットに結合された1つ以上の固定コンピュータ可読媒体とを含む。1つ以上の固定コンピュータ可読媒体は、1つ以上のプロセッサによって実行されると、コンピューティングデバイスに、(i)プロセスプラントがオンラインである間にプロセスプラントの1つ以上のデバイスによって生成されたデータをデータダイオード及び通信ユニットを介して受信し、データがデータダイオードを介して1つ以上のデバイスからコンピューティングデバイスに送信するためにセキュリティ保護され、(ii)プロセスプラントエンティティの状態を検出するためにデータを分析し、(iii)通信ユニットを介して、プロセスプラントエンティティがオペレータにその状態を警告するための状態の指標を、ユーザインターフェースデバイスに送信すること、をさせる命令をその上に(または構成されて)格納する。
【図面の簡単な説明】
【0028】
【
図1】特に、プロセス制御システムの様々な例示的構成要素と、プロセス制御システム自体と、他の例示的なシステム及び/またはネットワークとの間の相互接続を含む、プロセス制御または工業プロセスシステムのセキュリティの例示的なレベルのブロック図を含む。
【
図2】プロセス制御システムの様々な例示的構成要素と、プロセス制御システム自体と、他の例示的なシステム及び/またはネットワークとの間の相互接続を特に示すプロセスプラントまたはプロセス制御システムの例のブロック図である。
【
図3】プロセスプラントまたはプロセス制御システムのための例示的なセキュリティアーキテクチャのブロック図である。
【
図4】プロセスプラントエンティティについて時間経過に伴って収集され、本明細書に記載の技術を用いて分析され得る例示的なプロセスパラメータ値を示す。
【
図5】プロセスプラントエンティティ内の状態を検出または識別するために安全に通信されたプロセスプラントデータを分析する例示的な方法を表すフロー図である。
【
図6A】各々異なる動作モードで動作する3つのバルブに対し時間経過に伴って収集されたバルブ開度パーセントのグラフ表示の例を示す。
【
図6B】バルブのプロセスパラメータ値に基づいてバルブの動作モードを検出または識別する例示的なルールベースの方法を表すフロー図である。
【
図6C】バルブの動作モードを検出または識別する例示的な機械学習方法を表すフロー図である。
【
図7A】3つの異なるバルブについて時間経過に伴って収集されたバルブサイクルのグラフ表示の一例である。
【
図7B】いくつかのバルブの健全性を互いに比較し、比較に基づいてバルブのそれぞれの状態を検出または識別する例示的な方法を表すフロー図である。
【
図8】バルブまたは他のプロセスプラントエンティティの健全性及び/または性能を監視するための例示的な方法のフロー図である。
【発明を実施するための形態】
【0029】
上述したように、プロセスプラントエンティティまたはプロセスプラントエンティティの状態を検出するために使用されるプロセスプラントデータは、安全な方法でコンピューティングデバイスにおいて受信される。プロセスプラントデータが安全な方法で受信されると、プロセスプラントエンティティに対応するプロセスプラントデータが分析されて、プロセスプラントエンティティでのまたはプロセスプラントエンティティの状態を検出または識別する。プロセスプラントデータは、プロセスプラントデータに含まれるプロセスパラメータ値に、ルールのセットを適用することによってまたは例えば、以下により詳細に説明される様々な機械学習技術を使用することによって分析することができる。状態の指標は、オペレータに状態を警告するためにユーザインターフェースデバイスに送信され、及び/またはプロセスプラントに対応するアプリケーションまたはサービスに提供される。
【0030】
本明細書に記載の新たなシステム、構成要素、装置、方法、及び技術は、プロセスプラントエンティティでのまたはプロセスプラントエンティティの状態を検出するためにプロセスプラントデータの時系列分析を遂行することに関する。プロセスプラントデータは、安全な方法で受信され、これについては、
図1~3を参照して以下でさらに詳細に説明する。付加的に、プロセスプラントデータの時系列分析については、
図4~8を参照して以下でさらに詳細に説明する。
【0031】
サイバー侵入及び悪意のあるサイバー攻撃に対してプロセス制御プラント及びシステムをセキュリティ保護することは、典型的にファイアウォール及び他のセキュリティ機構を使用して安全にされた層またはレベルの少なくとも一部によって、層状またはレベル化されたセキュリティ階層を利用する。例えば、
図1に関して上記に説明したように、レベル
0~3のプロセスプラントシステム、ネットワーク、及びデバイスは、レベル4~5の企業ネットワークから、及び/または企業ネットワークを利用するレベル5より高い任意の外部ネットワークからの脅威から、DMZ22及び1つ以上のファイアウォール12Cを使用することによって、保護され得る。しかしながら、プロセスプラントデータ上で動作するより多くのサービス及びアプリケーションが、(例えば、企業またはビジネス内のレベル4及び/または5の)例えば、プロセスプラントの外部ネットワーク及びシステム上で、ならびに/または企業もしくは事業体の外部にあるネットワーク及びシステム(例えば、レベル5以上、インターネットもしくは他の公衆ネットワークを介して)上であっても、遠隔操作で実行するために移動されるとき、プロセスプラントシステム、ネットワーク、及びデバイスが危険に曝されるのを防ぐためのより強力な技術が必要である。
【0032】
説明するために、
図2は、本明細書に記載された新たなセキュリティ技術のうちの任意の1つ以上を利用してセキュリティ保護され得る例示的なプロセスプラント100のブロック図である。プロセスプラント100(本明細書では、同義的に、プロセス制御システム100またはプロセス制御環境100とも称される)は、フィールドデバイスによって行われたプロセス測定値を示す信号を受信し、この情報を処理して制御ルーチンを実装し、有線または無線のプロセス制御通信リンクまたはネットワークを介して他のフィールドデバイスに送信される制御信号を生成して、プラント100内のプロセスの動作を制御する1つ以上のプロセスコントローラを含む。典型的には、少なくとも1つのフィールドデバイスが、プロセスの動作を制御する物理的機能(例えば、バルブの開閉、温度の上昇または低下、測定の取得、状況の検出など)を遂行する。一部のタイプのフィールドデバイスは、I/Oデバイスを使用してコントローラと通信する。プロセスコントローラ、フィールドデバイス、及びI/Oデバイスは、有線または無線であってもよく、任意の数及び組み合わせの有線及び無線プロセスコントローラ、フィールドデバイス、及びI/Oデバイスが、プロセスプラント環境またはシステム100に含まれてもよい。
【0033】
例えば、
図2は、入出力(I/O)カード126及び128を介して有線フィールドデバイス115~122に通信可能に接続され、無線ゲートウェイ135及びプロセス制御データハイウェイまたはバックボーン110を介して無線フィールドデバイス140~146に通信可能に接続されているプロセスコントローラ111を示す。プロセス制御データハイウェイ110は、1つ以上の有線及び/または無線通信リンクを含むことができ、例えば、イーサネット(登録商標)プロトコルのような任意の所望のまたは好適なまたは通信のプロトコルを使用して実装することができる。いくつかの構成(図示せず)では、コントローラ111は、バックボーン110以外の1つ以上の通信ネットワークを使用して、例えば、Wi-Fiまたは他のIEEE802.11準拠の無線ローカルエリアネットワークプロトコル、移動通信プロトコル(例えば、WiMAX、LTE、または他のITU-R互換プロトコル)、Bluetooth(登録商標)、HART(登録商標)、WirelessHART(登録商標)、Profibus、FOUNDATION(登録商標)Fieldbusなどをサポートする任意の数の他の有線または無線通信リンクを使用して、無線ゲートウェイ135に通信可能に接続されてもよい。
【0034】
例えば、Emerson Process Managementによって販売されているDeltaVTMコントローラであってもよいコントローラ111は、フィールドデバイス115~122及び140~146の少なくとも一部を使用してバッチプロセスまたは連続プロセスを実装するように動作することができる。一実施形態では、コントローラ111は、プロセス制御データハイウェイ110に通信可能に接続されることに加えて、フィールドデバイス115~122及び140~146のうちの少なくともいくつかに、4~20mAデバイス、I/Oカード126、128、及び/またはFOUNDATION(登録商標)Fieldbusプロトコル、HART(登録商標)プロトコル、WirelessHART(登録商標)プロトコルなどの任意のスマート通信プロトコルに関
連する任意の所望のハードウェア及びソフトウェアを使用して通信可能に接続される。
図2では、コントローラ111、フィールドデバイス115~122及びI/Oカード126、128は、有線デバイスであり、フィールドデバイス140~146は、無線フィールドデバイスである。当然のことながら、有線フィールドデバイス115~122及び無線フィールドデバイス140~146は、将来開発される任意の標準またはプロトコルを含む任意の有線または無線プロトコルのような任意の他の所望の標準またはプロトコルに準拠することができる。
【0035】
図2のプロセスコントローラ111は、(例えば、メモリ132に格納された)1つ以上のプロセス制御ルーチン138を実装または監督するプロセッサ130を含む。プロセッサ130は、フィールドデバイス115~122及び140~146及びコントローラ111に通信可能に接続された他のノードと通信するように構成されている。本明細書に記載された任意の制御ルーチンまたはモジュールは、そのように所望される場合、異なるコントローラまたは他のデバイスによってその一部が実装または実行されてもよい。同様に、プロセス制御システム100内で実装される本明細書に記載の制御ルーチンまたはモジュール138は、ソフトウェア、ファームウェア、ハードウェアなどを含む任意の形態をとることができる。制御ルーチンは、オブジェクトラダーロジック、シーケンシャルファンクションチャート、ファンクションブロックダイアグラム、または他の任意のソフトウェアプログラミング言語もしくは設計パラダイムを使用して実装することができる。制御ルーチン138は、ランダムアクセスメモリ(RAM)または読み出し専用メモリ(ROM)のような任意の所望のタイプのメモリ132に格納することができる。同様に、制御ルーチン138は、例えば、1つ以上のEPROM、EEPROM、特定用途向け集積回路(ASIC)、または他の任意のハードウェアもしくはファームウェア要素にハードコード化されてもよい。したがって、コントローラ111は、任意の所望の方法で制御ストラテジまたは制御ルーチンを実装するように構成することができる。
【0036】
コントローラ111は、一般的に機能ブロックと称されるものを使用して制御ストラテジを実装し、各々の機能ブロックは全体制御ルーチンのオブジェクトまたは他の部分(例えばサブルーチン)であり、他の機能ブロックと共に(リンクと称される通信を介して)動作して、プロセス制御システム100内のプロセス制御ループを実装する。制御ベースの機能ブロックは、典型的には、送信機、センサまたは他のプロセスパラメータ測定デバイスに関連する入力機能の1つ、PID、ファジィ論理等の制御を遂行する制御ルーチンに関連するもののような制御機能、プロセス制御システム100内のいくつかの物理的機能を実行するためのバルブなどのデバイスの動作を制御する出力機能の1つを遂行する。当然のことながら、ハイブリッド及び他のタイプの機能ブロックが存在する。機能ブロックは、典型的には、これらの機能ブロックが標準4~20mAデバイス及びHART(登録商標)デバイスのようないくつかのタイプのスマートフィールドデバイスに使用されるか、または関連するときに、コントローラ111に格納され、コントローラ111によって実行されてもよく、FOUNDATION(登録商標)フィールドバスデバイスの場合のようにフィールドデバイス自体に格納され、実装されてもよい。コントローラ111は、1つ以上の機能ブロックを実行することによって遂行される1つ以上の制御ループを実装することができる、1つ以上の制御ルーチン138を含むことができる。
【0037】
有線フィールドデバイス115~122は、センサ、バルブ、送信機、位置決め器などのような任意のタイプのデバイスとすることができ、I/Oカード126及び128は、任意の所望の通信プロトコルまたはコントローラプロトコルに準拠する任意のタイプのI/Oデバイスであってもよい。
図2に示すように、フィールドデバイス115~118は、アナログラインまたはアナログ及びデジタルの結合ラインを介してI/Oカード126と通信する、標準的な4~20mAデバイスまたはHART(登録商標)デバイスであり、フィールドデバイス119~122は、FOUNDATION(登録商標)フィールド
バス通信プロトコルを使用してデジタルバスを介してI/Oカード128と通信するFOUNDATION(登録商標)Fieldbusフィールドデバイスなどのスマートデバイスである。しかし、いくつかの実施形態では、少なくとも一部の有線フィールドデバイス115、116、118~121及び/または少なくとも一部のI/Oカード126、128は、プロセス制御データハイウェイ110を使用して及び/または他の適切な制御システムプロトコル(例えば、Profibus、DeviceNet、Foundation Fieldbus、ControlNet、Modbus、HARTなど)を使用することによって、コントローラ111と付加的または代替的に通信する。
【0038】
図2では、無線フィールド機器140~146は、WirelessHART(登録商標)プロトコルなどの無線プロトコルを使用して、無線プロセス制御通信ネットワーク170を介して通信する。そのような無線フィールド機器140~146は、(例えば、無線プロトコルまたは別の無線プロトコルを使用して)無線通信するようにも構成された無線ネットワーク170の1つ以上の他のデバイスまたはノードと直接通信することができる。無線通信するように構成されていない他のノードと通信するために、無線フィールド機器140~146は、プロセス制御データハイウェイ110または別のプロセス制御通信ネットワークに接続された無線ゲートウェイ135を利用することができる。無線ゲートウェイ135は、無線通信ネットワーク170の様々な無線デバイス140~158へのアクセスを提供する。特に、無線ゲートウェイ135は、無線デバイス140~158、有線デバイス115~128、及び/またはプロセス制御プラント100の他のノードまたはデバイス間の通信結合を提供する。例えば、無線ゲートウェイ135は、プロセス制御データハイウェイ110を使用することによって、及び/またはプロセスプラント100の1つ以上の他の通信ネットワークを使用することによって、通信結合を提供することができる。
【0039】
有線フィールドデバイス115~122と同様に、無線ネットワーク170の無線フィールドデバイス140~146は、プロセスプラント100内の物理的制御機能、例えば、バルブの開閉、またはプロセスパラメータの測定を遂行する。しかし、無線フィールドデバイス140~146は、ネットワーク170の無線プロトコルを使用して通信するように構成されている。このように、無線ネットワーク170の無線フィールドデバイス140~146、無線ゲートウェイ135、及び他の無線ノード152~158は、無線通信パケットのプロデューサ及びコンシューマである。
【0040】
プロセスプラント100のいくつかの構成では、無線ネットワーク170は、非無線デバイスを含む。例えば、
図2において、
図2のフィールドデバイス148は、従来の4~20mAデバイスであり、フィールドデバイス150は有線HART(登録商標)デバイスである。ネットワーク170内で通信するために、フィールドデバイス148、150は無線アダプタ152A、152Bを介して無線通信ネットワーク170に接続される。無線アダプタ152A、152Bは、WirelessHARTのような無線プロトコルをサポートし、Foundation(登録商標)Fieldbus、PROFIBUS、DeviceNetなどの1つ以上の他の通信プロトコルもサポートすることができる。付加的に、いくつかの構成では、無線ネットワーク170は、無線ゲートウェイ135と有線通信する別個の物理デバイスであってもよいし、一体型デバイスとして無線ゲートウェイ135を備えてもよい1つ以上のネットワークアクセスポイント155A、155Bを含む。無線ネットワーク170はまた、1つの無線デバイスから無線通信ネットワーク170内の別の無線デバイスにパケットを転送するための1つ以上のルータ158を含むことができる。
図2では、無線デバイス140~146及び152~158は、無線通信ネットワーク170の無線リンク160を介して、及び/またはプロセス制御データハイウェイ110を介して、相互に及び無線ゲートウェイ135と通信する。
【0041】
図2では、プロセス制御システム100は、データハイウェイ110に通信可能に接続された1つ以上のオペレータワークステーション171を含む。オペレータワークステーション171を介して、オペレータは、プロセスプラント100のランタイムオペレーションを閲覧し、監視し、ならびに、診断、是正、メンテナンス、及び/または必要とされる可能性のある他の措置をとることができる。オペレータワークステーション171の少なくとも一部は、プラント100内またはプラント100の近くの様々な保護領域に位置させることができ、状況によっては、オペレータワークステーション171の少なくともいくつかが遠隔地に位置するが、それにもかかわらずプラント100と通信可能に接続される。オペレータワークステーション171は、有線または無線のコンピューティングデバイスであってもよい。
【0042】
例示的なプロセス制御システム100は、構成アプリケーション172A及び構成データベース172Bを含むものとしてさらに示されており、これらの各々はまた、データハイウェイ110にも通信可能に接続される。上述したように、構成アプリケーション172Aの様々なインスタンスは、1つ以上のコンピューティングデバイス(図示せず)上で実行して、ユーザが、プロセス制御モジュールを作成または変更し、これらのモジュールを、データハイウェイ110を介してコントローラ111にダウンロードできるようにすると共に、オペレータがデータを表示し、プロセス制御ルーチン内のデータ設定を変更することができるオペレータインターフェースを、ユーザが作成または変更することができるようにする。構成データベース172Bは、作成された(例えば、構成された)モジュール及び/またはオペレータインターフェースを格納する。一般的に、構成アプリケーション172A及び構成データベース172Bは集中しており、プロセス制御システム100に対し単一の論理的な外観を有するが、構成アプリケーション172Aの複数のインスタンスは、プロセス制御システム100内に複数のインスタンスを同時に実行することができ、構成データベース172Bは、複数の物理的データ格納デバイスを経由して実装される。したがって、構成アプリケーション172A、構成データベース172B、及びそれらに対するユーザインターフェース(図示せず)は、制御及び/または表示モジュール用の構成または開発システム172を含む。典型的には、必須ではないが、構成システム172のユーザインターフェースは、プラント100がリアルタイムで動作しているかどうかにかかわらず、構成エンジニア及び開発エンジニアによって利用されるので、オペレータワークステーション171は、プロセスプラント100のリアルタイム動作中にオペレータによって利用されるが(ここでは、同義的に、プロセスプラント100の「ランタイム」オペレーションと称される)、構成システム172のユーザインターフェースは、オペレータワークステーション171とは異なる。
【0043】
例示的なプロセス制御システム100は、データヒストリアンアプリケーション173A及びデータヒストリアンデータベース173Bを含み、それらの各々はまた、データハイウェイ110に通信可能に接続される。データヒストリアンアプリケーション173Aは、データハイウェイ110にわたって提供されたデータの一部または全部を収集し、長期格納のためにヒストリアンデータベース173Bにデータを履歴化または格納するように動作する。構成アプリケーション172A及び構成データベース172Bと同様に、データヒストリアンアプリケーション173A及びヒストリアンデータベース173Bは、集中化され、プロセス制御システム100に対して単一の論理的外観を有するが、データヒストリアンアプリケーション173Aの複数のインスタンスが、制御システム100内で同時に実行してもよく、データヒストリアン173Bは、複数の物理データ格納デバイスにわたって実装されてもよい。
【0044】
いくつかの構成では、プロセス制御システム100は、Wi-Fiまたは他のIEEE802.11準拠無線ローカルエリアネットワークプロトコルなどの他の無線プロトコル、WiMAXなどのモバイル通信プロトコル、LTE(Long Term Evolu
tion)または他のITU-R(International Telecommunication Union Radiocommunication Sector)互換プロトコル、近距離無線通信(NFC)及びBluetoothなどの短波長無線通信、または他の無線通信プロトコルを使用して他のデバイスと通信する1つ以上の他の無線アクセスポイント174を含む。典型的には、そのような無線アクセスポイント174は、ハンドヘルドまたは他のポータブルコンピューティングデバイス(例えば、ユーザインターフェースデバイス175)が、無線ネットワーク170とは異なり、無線ネットワーク170とは異なる無線プロトコルをサポートするそれぞれの無線プロセス制御通信ネットワークにわたって通信することを可能にする。例えば、無線またはポータブルユーザインターフェースデバイス175は、プロセスプラント100内のオペレータ(例えば、オペレータワークステーション171の1つのインスタンス)によって利用されるモバイルワークステーションまたは診断テスト機器であってもよい。いくつかのシナリオでは、ポータブルコンピューティングデバイスに加えて、1つ以上のプロセス制御デバイス(例えば、コントローラ111、フィールドデバイス115~122、または無線デバイス135、140~158)も、アクセスポイント174によってサポートされる無線プロトコルを使用して通信する。
【0045】
いくつかの構成では、プロセス制御システム100は、即時プロセス制御システム100の外部にあるシステムへの1つ以上のゲートウェイ176、178を含む。典型的には、そのようなシステムは、プロセス制御システム100によって生成または操作されるカスタマーまたはサプライヤである。情報、例えば、プロセス制御プラント100は、即時プロセスプラント100を別のプロセスプラントと通信可能に接続するためのゲートウェイノード176を含むことができる。付加的または代替的に、プロセス制御プラント100は、即時プロセスプラント100を、実験室システム(例えば、実験室情報管理システムまたはLIMS)、オペレータラウンドデータベース、材料ハンドリングシステム、メンテナンス管理システム、製品在庫制御システム、生産スケジューリングシステム、気象データシステム、出荷及び処理システム、パッケージングシステム、インターネット、別のプロバイダのプロセス制御システム、または他の外部システムなどの公衆またはプライベートシステムに通信可能に接続することができるゲートウェイノード178を含むことができる。
【0046】
なお、
図2は、例示的なプロセスプラント100に含まれる有限数のフィールドデバイス115~122及び140~146、無線ゲートウェイ
135、無線アダプタ152、アクセスポイント155、ルータ158、及び無線プロセス制御通信ネットワーク170を有する単一のコントローラ111のみを示しているが、これは、例示的かつ非限定的な実施形態に過ぎないことに留意されたい。任意の数のコントローラ111を、プロセス制御プラントまたはシステム100に含めることができ、コントローラ111のいずれかは、任意の数の有線または無線デバイス及びネットワーク115~122、140~146、135、152、155、158、170と通信してプラント100内のプロセスを制御することができる。
【0047】
図3は、プロセスプラント100の例示的なセキュリティアーキテクチャ200のブロック図を含む。参考までに、
図1の様々
なセキュリティ
レベル0-5が、
図3の上部を横切って描かれてセキュリティアーキテクチャ200の様々な部分をどのセキュリティレベルに含めることができるかを示す。
【0048】
図3に示すように、1つ以上のデバイス202は、例えば、図
2の無線ゲートウェイ135のインスタンスであり得る1つ以上の無線ゲートウェイ205A、205Bに通信可能に接続される。前述したように、無線ゲートウェイ205A、205Bは、セキュリティレベル1及び/またはセキュリティレベル2、例えばプロセスプラント100自体に位置してもよい。ゲートウェイ205A、205Bとデバイス202との間の通信接続は、参照番号204A、204Bで示されている。
【0049】
デバイス202のセットは、プロセスプラント100のセキュリティレベル0にあるものとして示されており、有限数の無線フィールドデバイスを含むものとして示されている。しかしながら、デバイス202に関する本明細書に記載された概念及び特徴は、プロセスプラント100の任意の数のフィールドデバイスだけでなく、任意のタイプのフィールドデバイスにも容易に適用できることが理解される。例えば、フィールドデバイス202は、プロセスプラント100の1つ以上の有線通信ネットワークを介して無線ゲートウェイ205A、205Bに通信可能に接続された1つ以上の有線フィールドデバイス115~122を含むことができ、及び/またはフィールドデバイス202は、無線アダプタ152A、152Bに結合された有線フィールドデバイス148、150を含むことができる。
【0050】
さらに、デバイス202のセットは、プロセスデータを生成するフィールドデバイスだけに限定されず、プロセスプラント100がオンラインプロセスを制御する結果としてデータを生成するプロセスプラント100内の任意のデバイスまたは構成要素を付加的または代替的に含み得ることが理解される。例えば、デバイス202のセットは、診断データを生成する診断デバイスまたは構成要素、プロセスプラント100の様々な構成要素及び/またはデバイスのなど間で情報を送信するネットワークルーティングデバイスまたは構成要素などを含むことができる。実際には、
図2に示す構成要素のうちの任意の1つ以上(例えば、構成要素111、115~122、126、128、135、140~146、152、155、158、160、170、171~176、178)及び
図2には示されていない他の構成要素は、遠隔システム210に配信するためのデータを生成するデバイスであってもよい。このように、デバイス202のセットは、本明細書では「データソース202」または「データソースデバイス202」と同義的に称される。
【0051】
図3は、プロセスプラント100に対して利用され得る、及び/またはプロセスプラント100が利用する遠隔アプリケーションまたはサービス208のセットをさらに示す。遠隔アプリケーションまたはサービス208のセットは、1つ以上の遠隔システム210で実行またはホストされ、遠隔アプリケーション/サービス208のセットは、一般的にセキュリティレベル5以上であると見なされる。アプリケーションまたはサービス208の少なくとも一部は、リアルタイムデータがプロセスプラント100によって生成され、アプリケーションまたはサービス208によって受信されると、リアルタイムデータ上でリアルタイムで動作する。他のアプリケーションまたはサービス208は、より厳しいタイミング要件を必要とすることなく、プロセスプラント生成データを操作または実行することができる。遠隔システム210で実行されるかまたはホストされ、プロセスプラント100によって生成されるデータのコンシューマであるアプリケーション/サービス208の例は、プロセスプラント100で生成する状況及び/または事象を監視及び/または検出するアプリケーション及びプロセスプラント100で実行されているオンラインプロセス自体の少なくとも一部を監視するアプリケーションまたはサービスを含む。アプリケーション/サービス208の他の例は、プロセスプラント100によって生成されたデータ上で動作し、場合によっては、プロセスプラント生成データならびに他のプロセスプラントから生成され受信されたデータを分析して収集または発見された知識に基づいて動作し得る記述的及び/または規範的分析を含む。アプリケーション/サービス208のさらに別の例は、規範的機能を実装する1つ以上のルーチン及び/または例えば、別のサービスまたはアプリケーションの結果として、プロセスプラント100に再実装されるべき変化を含む。アプリケーション及びサービス208のいくつかの例は、2016年9月23日に出願され、「分散産業性能監視のためのデータ分析サービス(Data Analytics Services for Distributed Industrial
Performance Monitoring)」と題する米国特許出願第15/274、519号、2016年9月23日に出願され、「分散産業性能監視及び分析(Distributed Industrial Performance Monitoring and Analytics)」と題する米国特許出願第15/274、233号に記載されており、その全体の開示内容は参照により本明細書に組み込まれる。アプリケーション及びサービス208の他の例は、プロセスプラント及び/または他のプロセスプラントによって生成された履歴データを分析することから、または下記に詳述するようにプロセスプラントエンティティのデータを、同じまたは類似のプロセスプラントエンティティと比較することから得られる知識で動作する。
【0052】
1つ以上の遠隔システム210は、ネットワークサーバの遠隔バンク、1つ以上のクラウドコンピューティングシステム、1つ以上のネットワークなど、任意の所望の方法で実装することができる。説明を容易にするために、本明細書では、1つ以上の遠隔システム210は、該用語が1つのシステム、2つ以上のシステム、または任意の数を指すことがあると理解されるが、単数時制、すなわち「遠隔システム210」を使用して参照される。いくつかのシナリオでは、プロセスプラントデータを分析するように構成された1つ以上のコンピューティングデバイス250が、遠隔システム210内に含まれてもよい。例えば、1つ以上の遠隔アプリケーションまたはサービス208は、1つ以上のコンピューティングデバイス250上で実行して、プロセスプラント100によって生成されたプロセスプラントデータを分析することができる。ここで、1つ以上のコンピューティングデバイス250は、本明細書では「コンピューティングデバイス(the computing device)250」のような単数時制で言及されているが、これは読解を容易にするものであり、限定するものではなく、1つ以上のコンピューティングデバイス250は、1つ、2つ、または任意の数のコンピューティングデバイスを含むことができる。
【0053】
一般的に言えば、セキュリティアーキテクチャ200は、デバイス202がインストールされ動作するプロセスプラント100のフィールド環境から、プロセスプラント100によって生成されたデータ上でコンシュームし、動作するアプリケーション及び/またはサービス208を提供する遠隔システム210にエンドツーエンドのセキュリティを提供する。このように、デバイス202及びプロセスプラント100の他の構成要素によって生成されたデータは、遠隔アプリケーション/サービス208による使用のために遠隔システム210に安全に転送されることができ、一方、サイバー攻撃、侵入、及び/または他の悪意のあるイベントからプラント100を保護する。特に、セキュリティアーキテクチャ200は、プロセスプラント100(例えば、プロセスプラント100の無線ゲートウェイ205A、205Bの間の)と遠隔システム210との間に配設されたフィールドゲートウェイ212、データダイオード215、及びエッジゲートウェイ218を含む。典型的には、必須ではないが、フィールドゲートウェイ212、データダイオード215、及びエッジゲートウェイ218は、セキュリティレベル2~5に含まれる。
【0054】
セキュリティアーキテクチャ200の重要な態様は、データダイオード215である。データダイオード215は、ハードウェア、ファームウェア及び/またはソフトウェアで実装される構成要素であり、特に、プロセスプラント100と遠隔システム210との間の双方向通信を防止するように構成されている。すなわち、データダイオード215は、データトラフィックがプロセス制御システム100から遠隔システム210に出ることを可能にし、データトラフィック(例えば、遠隔システム210または他のシステムから送信または送られる)がプロセス制御システム100に侵入することを防止する。
【0055】
したがって、データダイオード215は、フィールドゲートウェイ212に通信可能に接続された少なくとも1つの入力ポート220と、エッジゲートウェイ218に通信可能に接続された少なくとも1つの出力ポート222とを含む。データダイオード215はまた、その入力ポート220をその出力ポート222に接続する他の好適な技術の光ファイバまたは通信リンクを含む。データトラフィックがプロセス制御システム100に流れる(例えば、そこに侵入する)のを防ぐために、例示的実装形態では、データダイオード215は、エッジゲートウェイ218(またはより高いセキュリティレベルの他の構成要素)からデータを受信する入力ポートを除外または省略し、及びまたはフィールドゲートウェイ212(またはより低いセキュリティレベルの他の構成要素)にデータを送信するために出力ポートを除外または省略する。付加的または代替的な実装形態では、データダイオード215は、データが出力ポート222から入力ポート220に流れることを可能にする送受信機を除外、省略、及び/または無効にし、及び/または出力ポート222から入力ポート220にデータが流れるための物理的な通信経路を除外する。さらに付加的または代替的に、データダイオード215は、ソフトウェアを介して、例えば、エッジゲートウェイ218(またはより高いセキュリティレベルの構成要素)から出力ポート222で受信された任意のメッセージをドロップまたはブロックすることによって、及び/またはフィールドゲートウェイ212(またはより低いセキュリティレベルの構成要素)宛ての任意のメッセージをドロップまたはブロックすることによって、入力ポート220から出力ポート222への単方向データフローのみをサポートすることができる。
【0056】
プロセスプラント100から出て、データダイオード215を経由して入力ポート220から出力ポート222に送信されたデータは、暗号化によってデータダイオード215を経由してさらにセキュリティ保護されてもよい。一例では、フィールドゲートウェイ212は、データを暗号化し、暗号化されたデータを入力ポート220に配信する。別の例では、データダイオード215は、フィールドゲートウェイ212からデータトラフィックを受信し、データダイオード215は、データを出力ポート222に送信する前に、受信したデータトラフィックを暗号化する。データダイオード215を経由して暗号化されて送信されるデータトラフィックは、一例ではUDP(User Datagram Protocol)データトラフィックであり、別の例ではJSONデータトラフィックまたは他の汎用通信フォーマットであってもよい。
【0057】
フィールドゲートウェイ212は、データダイオード215の下位セキュリティ側をプロセス制御プラント100に通信可能に接続する。
図3に示すように、フィールドゲートウェイ212は、プロセスプラント100のフィールド環境内に配設され、1つ以上のデバイスまたはデータソース202に通信可能に接続された無線ゲートウェイ205A、205Bに通信可能に接続される。前述したように、デバイスまたはデータソース202及び無線ゲートウェイ205A、205Bは、WirelessHART工業プロトコルまたは1つ以上のセキュリティ機構を介して安全な通信を提供するように構成された他の適切な無線プロトコルを使用して通信することができる。例えば、WirelessHART工業プロトコルは128ビットAES暗号化を提供し、それに応じて通信経路204A、204Bを保護することができる。
【0058】
付加的に、無線ゲートウェイ205A、205Bとフィールドゲートウェイ212との間の通信接続225は、通信接続204A、204Bに利用されるのと同じまたは異なるセキュリティ機構を使用してそれぞれセキュリティ保護される。一例では、通信接続225は、TLS(Transport Layer Security)ラッパーによってセキュリティ保護される。例えば、無線ゲートウェイ205A、205Bは、HART-IPフォーマットのパケットを生成し、フィールドゲートウェイ212への転送のためにTLSラッパーによってセキュリティ保護される。
【0059】
したがって、一実施形態では、前述したように、デバイス202によって生成されたデータまたはパケットは、第1のセキュリティ機構を使用して無線ゲートウェイ205A、205Bへの転送204A、204Bのためにセキュリティ保護され、その後、第2のセ
キュリティ機構を使用して無線ゲートウェイ205A、205Bから、フィールドゲートウェイ212への転送225のためにセキュリティ保護され、第3のセキュリティ機構を使用してデータダイオード215を経由して転送するために引き続きセキュリティ保護され得る。
【0060】
ここで、データダイオード215のより上位セキュリティ側に向けると、データダイオード215から出るデータトラフィックは、所望されれば、第4のセキュリティ機構を使用することによって、またはセキュリティ機構のうちの1つを使用することによって、上述したデータダイオード215のより下位セキュリティ側で使用されるセキュリティ機構のうちの1つを使用することによって、エッジゲートウェイ218への転送のためにセキュリティ保護され得る。付加的に、または代替的に、
図3に示すように、エッジゲートウェイ218は、
図1のファイアウォール12Cまたは別のファイアウォールであってもよいファイアウォール228によって保護されてもよい。
【0061】
エッジゲートウェイ218から遠隔システム210へのデータ転送は、プライベート企業ネットワーク、インターネット、セルラールータ、バックホールインターネットまたは他のタイプのバックホール接続などの1つ以上の公衆及び/またはプライベートネットワークを使用して配信することができる。注目すべきことに、エッジゲートウェイ218から遠隔システム210へ転送するデータは、第5のセキュリティ機構を使用することによって、または前述のセキュリティ機構の1つを使用することによってセキュリティ保護される。
図3は、遠隔システム210に設けられたトークンサービス230を介して管理されることができるSAS(Shared Access Signature)トークンを介してセキュリティ保護されているとして、エッジゲートウェイ218から遠隔システム210に配信されるデータトラフィックを示す。エッジゲートウェイ218は、トークンサービス230を認証し、限られた時間期間、例えば2分、5分、30分、1時間を超えて有効である可能性のあるSASトークンを要求する。エッジゲートウェイ218は、コンテンツデータがエッジゲートウェイ218から遠隔システム210に送信される遠隔システム210へのAMQP(アドバンストメッセージキュープロトコル(Advanced Message Queuing Protocol))接続をセキュリティ保護し、認証するためにSASトークンを受信し、使用する。当然のことながら、エッジゲートウェイ218と遠隔システム210との間のデータ転送をセキュリティ保護するためのSASトークン及びAMQPプロトコルの使用は、多くの可能性のあるセキュリティ機構のうちの1つに過ぎない。例えば、X.509証明書、他のタイプのトークン、MQTT(MQ Telemetry Transport)またはXMPP(Extensible Messaging and Presence Protocol)などの他のIOTプロトコルなどの任意の1つ以上の好適な、Internet-Of-Things(IOT)セキュリティ機構が、エッジゲートウェイ218と遠隔システム210との間のデータ転送をセキュリティ保護するために利用することができる。これらの他の実施形態では、サービス230は、例えば、適切なセキュリティトークンまたは証明書を提供及び/または発行する。
【0062】
遠隔システム210において、ユーザ認証及び/または許可は、任意の1つ以上の好適な認証及び/または許可セキュリティ機構232によって提供される。例えば、遠隔システム210への安全なアクセスは、ドメイン認証サービス、APIユーザ認証サービス、及び/または任意の他の好適な認証及び/または許可サービス232によって提供されてもよい。したがって、認証及び/または許可サービス232を介して認証及び/または許可されたユーザインターフェースデバイス235のみが、遠隔システム210で利用可能な少なくとも一部のデータ、とりわけ、データデバイス202によって生成されたデータを含むデータにアクセスすることができる。
【0063】
したがって、上述のように、セキュリティアーキテクチャ200は、プロセスプラント100内で動作して、例えばその送信を介してデータソース202によるデータの開始から遠隔システム210へ1つ以上の遠隔アプリケーションまたはサービス208によって操作されるプロセスを制御する間に、デバイスまたはデータソース202によって生成されたデータに対してエンドツーエンドのセキュリティを提供する。重要なことに、セキュリティアーキテクチャ200は、このエンドツーエンドのセキュリティを提供し、プロセスプラント100で悪意のある攻撃が発生するのを防止する。
【0064】
なお、
図3は、デバイスまたはデータソース202をフィールドゲートウェイ212に通信可能に接続する無線ゲートウェイ205A、205Bを示しているが、いくつかの構成では、無線ゲートウェイ205A、205Bのうちの1つ以上が省略され、ソースデータがデータソース202から直接フィールドゲートウェイ212に送信されることに留意されたい。例えば、データソース202は、プロセスプラント100のビッグデータネットワークを介してフィールドゲートウェイ212にソースデータを直接送信することができる。一般的に言えば、プロセスプラント100のビッグデータネットワークは、バックボーンプラントネットワーク110ではなく、またはビッグデータネットワークは、工業用通信プロトコル(例えば、Profibus、DeviceNet、Foundation Fieldbus、ControlNet、Modbus、HARTなど)を使用してデバイス間で制御信号を送信するために使用される工業用プロトコルネットワークでもない。むしろ、プロセスプラント100のビッグデータネットワークは、例えばデータ処理及び分析目的のためにノード間でデータを流すプロセスプラント100用に実装されたオーバーレイネットワークであってもよい。ビッグデータネットワークのノードは、例えば、データソース202、無線ゲートウェイ205A、205B、及びフィールドゲートウェイ212、ならびに
図2に示す、構成要素111、115~122、126、128の任意の1つ以上、135、140、146、152、155、158、160、170、171~176、178及び他の構成要素を含むことができる。したがって、プロセスプラントデータネットワークの多くのノードには、典型的には、工業通信プロトコルを利用するプロセスプラントオペレーションのための指定インターフェースと、例えばストリーミングプロトコルを利用するデータ処理/分析オペレーションのための別の指定インターフェースが含まれる。プロセスプラント100において利用され得るビッグデータネットワークの例は、「プロセス制御システムにおける地域的ビッグデータ(Regional Big Data in Process Control Systems)」と題する、2014年10月6日に出願された、米国特許出願第14/507、188号に記載され、参照により本明細書に組み込まれる。
【0065】
いくつかの実施形態では、
図3に関して、有線ゲートウェイ(図示せず)を無線ゲートウェイ205A、205Bのうちの1つの代わりに利用することができることにさらに留意されたい。さらに、フィールドゲートウェイ212、データダイオード215、及びエッジゲートウェイ218は、
図3に示すボックス
224によって示されるように、物理的に同じ場所に位置して
もよく、または構成要素212、215、218のうちの1つ以上は、複数の場所を経由して物理的に位置してもよい。例えば、フィールドゲートウェイ212、データダイオード215、またはエッジゲートウェイ218のうちの1つ以上が、プロセスプラント100に配設されてもよい。付加的に、または代替的に、フィールドゲートウェイ212、データダイオード215、またはエッジゲートウェイ218のうちの1つ以上が、プロセスプラント100から遠隔地に配設されてもよい。
【0066】
プロセスプラント100は、所望されれば、複数のフィールドゲートウェイ212によってサービスされてもよく、任意の数の遠隔システム210が単一のエッジゲートウェイ218によってサービスされてもよい。いくつかの実施形態では、遠隔システム210は、所望されれば、複数のエッジゲートウェイ218によってサービスされる。
【0067】
前述したように、データダイオード215を経由して転送されるデータトラフィックはセキュリティ保護される。そのようなデータトラフィックは、例えば、シリアル通信またはUDP通信を使用することによって、データダイオード215を経由して通信され得る。しかしながら、双方向通信なしでこのような通信をセキュリティ保護することは困難かつ扱いにくく、一般的にUDP通信とシリアル通信の両方は、両方に双方向通信(データダイオード215を使用することは不可能である)するだけでなく、長いキーシーケンスを記憶し、入力する必要がある。したがって、従来の双方向通信を使用して単方向データダイオード215を経由してデータ転送をセキュリティ保護するのではなく、転送されたデータを、エッジゲートウェイ218とフィールドゲートウェイ212との間で利用されるセキュリティプロビジョニングプロセスを介してセキュリティ保護することができる。セキュリティプロビジョニングプロセスは、エッジゲートウェイ218とフィールドゲートウェイ212(例えば、対称キーまたは対称マテリアル)、例えば、結合キー、の間で共有化される固有の初期キーまたは機密マテリアルを確立する。結合キーを使用して、エッジゲートウェイ218及びフィールドゲートウェイ212は、データダイオード215を経由して安全にデータトラフィックを転送するために利用されるさらなるキーまたは機密マテリアルを交換するために使用される安全な接続を確立する。セキュリティプロビジョニングプロセスは、参照により本明細書に組み込まれる、「セキュリティ保護されたプロセス制御通信(Secured Process Control Communications)」(代理人整理番号06005-593588)と題された米国特許出願第15/332,751号に詳細に記載されている。
【0068】
さらに、上記の例は、データダイオード215を介してプロセスプラントデータを受信する遠隔システム210の構成要素としてプロセスプラントデータを分析するためのコンピューティングデバイス250を参照しているが、コンピューティングデバイス250は、プロセスプラント100の任意の好適な通信構成要素を介して安全な方法でプロセスプラントデータを受信できるため、これは多くの実施形態のうちの1つに過ぎない。例えば、コンピューティングデバイス250は、無線ゲートウェイ205A、205B、フィールドゲートウェイ212、またはエッジゲートウェイ218に通信可能に接続されてもよい。通信経路は、暗号化技術、ファイアウォール、データダイオード、または任意の他の好適なセキュリティ機構を介して、デバイス202からコンピューティングデバイス250にセキュリティ保護されてもよい。
【0069】
プロセスプラントデータが、コンピューティングデバイス250で受信されると、コンピューティングデバイス250は、プロセスプラントデータを分析して、対応するプロセスプラントエンティティの状態を検出または識別する。状態の指標は、例えば、ドメイン認証サービスを介してユーザインターフェースデバイス235、及び/または別の通信ネットワーク(図示せず)を介してプロセスプラント100のオペレータワークステーション171の1つに送信される。このようにして、オペレータは、プロセスプラント内の様々なプロセスプラントエンティティで発生する状態に警告することができる。オペレータは、これらの状態によって作成された問題を解決するために適切な処置をとることができる。いくつかの状況では、様々なプロセスプラントエンティティの検出された状態の指標が、これらのそれぞれの使用及び/または分析のために、他のコンピューティングデバイス、例えば、遠隔システム210内の、プロセスプラント100、または他の場所に位置するコンピューティングデバイス、アプリケーション、またはサービスなどのものに送信される。
【0070】
上述したように、プロセスプラントデータは、プロセスプラントエンティティに対応するプロセスパラメータに対して時間経過に伴って収集されたプロセスパラメータ値を含む。プロセスパラメータは、プロセスプラントを流れる材料またはプロセスを制御する物理
的機能を遂行するデバイス(例えば、バルブパラメータ、フィールドデバイスパラメータ、コントローラパラメータなど)のプロセスプラント内の設定点または測定値を含む。例えば、プロセスパラメータは、プロセスプラントまたはその設定点を流れる材料の温度、圧力、流量、質量、体積、密度、または面積を含む。プロセスパラメータはまた、プロセス(例えばバルブ)を制御するために物理的機能を実行するデバイスまたはその設定点の駆動信号、開度、圧力、または温度を含む。プロセスプラントエンティティは、バルブ、タンク、ミキサー、ポンプ、熱交換器などのプロセスを制御する物理的機能を遂行するプロセスプラント内のデバイスを含む。プロセスプラントエンティティは、場合によっては、コントローラ及び/またはI/Oデバイスを含むことができる。例示のために、例示的なシナリオを、バルブの状態を検出するために、バルブのプロセスパラメータが分析される
図4を参照して以下で説明する。
【0071】
図4は、本明細書に記載された技術の実施例において、バルブに対応するプロセスパラメータについて時間経過に伴って収集されたプロセスパラメータ値の例示的なグラフ表示300を示す。プロセスパラメータ値は、デバイス202の1つ以上から収集され、コンピューティングデバイス250で分析された。詳細には、この例示実装形態では、デバイス202は、リアルタイムでデータダイオード215を経由してプロセスパラメータ値をコンピューティングデバイス250にストリームした。
図4に示すように、プロセスパラメータは、バルブの駆動信号302、バルブにおける材料の入口圧力304、バルブにおける材料の温度306、及びバルブ開度308を含む。各々のプロセスパラメータ値は、対応するタイムスタンプ(例えば、時間40で収集された値80の駆動信号)を含む。
【0072】
プロセスパラメータ302~308の各々に対して、コンピューティングデバイス250は、プロセスパラメータメトリックを生成するために、時間経過に伴って収集された対応するプロセスパラメータ値に関する統計的計算を遂行することができる。例えば、バルブでの材料の温度の値306から、コンピューティングデバイス250は、バルブにおける材料の平均温度、温度における標準偏差、温度の20秒移動平均及び/または温度の20秒減衰平均などの1つ以上のプロセスパラメータメトリックを判定することができ、最も最近の温度が最も高く加重され、20秒前の温度が最も低く加重される。コンピューティングデバイス250は、付加的または代替的に、時間経過に伴って収集された様々な温度によって作成される波の振幅及び周波数を判定することができる。さらに、コンピューティングデバイス250は、ノイズを除去し、フィルタが適用された後に追加の統計的計算を遂行するために、温度値に様々なフィルタを適用することができる。
【0073】
バルブまたはプロセスプラントエンティティのプロセスパラメータメトリックは、バルブ/プロセスプラントエンティティで発生する状態を検出または識別するために使用される。例えば、コンピューティングデバイス250は、様々な機械学習技術を使用して、特定の状態がバルブ/プロセスプラントエンティティにおいて発生しているか、存在しているかを検出または識別する統計的モデルを生成する。単一の統計的モデルを使用して、プロセスプラントエンティティで発生するかまたは存在する可能性がある複数の状態を検出または識別することができ、または異なるタイプの統計的モデルを、状態の各々のタイプに対して固有とすることができ、プロセスパラメータメトリックを、各々の統計的モデルプロセスプラントエンティティにおいてどの状態(もしあれば)が発生しているか存在しているかを検出または識別することができる。1つ以上の統計的モデルは、線形回帰、多項式回帰、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、ニューラルネットワークなどの好適な機械学習技術を使用して生成することができる。
【0074】
いくつかの実施形態では、プロセスプラント100及び/または他のプロセスプラントのプロセスプラントエンティティによって以前に生産された履歴プロセスパラメータ値を
含むトレーニングデータを使用して、1つ以上の統計的モデルが生成される。履歴プロセスパラメータ値は、例えば、
図2に示すように、データヒストリアンデータベース173Bから取得することができる。
【0075】
ある場合には、特定の時間ウィンドウ(例えば1時間)に対応する履歴プロセスパラメータ値または履歴プロセスパラメータ値のセットの各々は、履歴プロセスパラメータ値が、生成された間中または生成された時間に関連するプロセスパラメータ値のサブセットに分類され得る。例えば、温度値のセットは、温度値が収集されたとき、例えば熱交換器で識別されたエラーの閾値時間期間内に、熱交換器でのエラーに関連するプロセスパラメータ値のサブセットに分類することができる。さらに、履歴プロセスパラメータ値は、履歴プロセスパラメータ値が生成された時刻またはその付近で、プロセスプラントエンティティにおいて何の状態も発生しないかまたは存在しないときプロセスプラントエンティティの正常動作に関連するプロセスパラメータエンティティの別のサブセットに分類される。コンピューティングデバイス250は、ある状態に関連する履歴プロセスパラメータ値のサブセットを、その状態に関連しない履歴プロセスパラメータ値の別のサブセットと比較して、統計的モデルを生成する。このようにして、コンピューティングデバイス250は、プロセスプラントエンティティが特定の状態を経験していることを示すプロセスパラメータの特性を識別する。
ナイーブベイズ
【0076】
いくつかの実施形態では、統計的モデルを生成及び/または利用するための機械学習技術は、ナイーブベイズである。例えば、コンピューティングデバイス250は、プロセスプラントエンティティ(例えば、性能監視メトリック、エラー、漏れ、不動帯、不動時間、機械的摩耗など)に関連する各々のタイプの状態に対する統計的モデルを生成する。例示のために、熱交換器での漏れなどの特定の状態について、コンピューティングデバイス250は、熱交換器に関連する履歴プロセスパラメータ値を、熱交換器漏れに関連するプロセスパラメータ値の第1にセット及び熱交換器漏れに関連しないプロセスパラメータ値の第2にセットに分類する。その後、コンピューティングデバイス250は、サブセットの各々で統計的計算を遂行する。例えば、第1のサブセット内の各々の履歴プロセスパラメータに対して、コンピューティングデバイス250は、対応する履歴プロセスパラメータ値の平均値及び対応する履歴プロセスパラメータ値の標準偏差値を計算する。またコンピューティングデバイス250は、第2のサブセット内の各々の履歴プロセスパラメータに対応する履歴プロセスパラメータ値の平均及び標準偏差を計算する。いくつかの実施形態では、履歴プロセスパラメータに対する平均が加重され、ここで、状態の検出に時間的に近づいて収集された履歴プロセスパラメータ値はより高く加重される。例えば、時刻t=9分に漏れが検出された場合、漏れに関連する平均圧力値計算するとき、時刻t=8分59秒の圧力値は、時刻t=8分40秒の圧力値よりも、高く加重される。
【0077】
コンピューティングデバイス250は、ガウス分布または任意の他の好適な確率密度関数を仮定して、第1のサブセット内の各々の履歴プロセスパラメータ(例えば、熱交換器漏れに関連するもの)の平均及び標準偏差を使用して、第1の統計的モデルを生成する。コンピューティングデバイス250は、ガウス分布または任意の他の好適な確率密度関数を仮定して、第2のサブセット内の各々の履歴プロセスパラメータ(例えば、熱交換器漏れに関連しないもの)の平均及び標準偏差を使用して、第2の統計的モデルを生成する。
【0078】
一例では、コンピューティングデバイス250は、熱交換器などのプロセスプラントエンティティの圧力、温度、及び流量などの履歴プロセスパラメータから統計的モデルを生成する。この例では、第1の統計的モデルに対して、コンピューティングデバイス250は、プロセスパラメータ値の第1のサブセット(例えば、熱交換器漏れに関連するもの)における圧力、温度、及び流量に対する平均圧力、圧力標準偏差、平均温度、温度標準偏
差、平均流量、及び流量標準偏差を判定する。コンピューティングデバイス250は、その後、第1のサブセットに対する圧力分布、温度分布、及び流量分布をそれに応じて生成する。第2の統計的モデルに対して、コンピューティングデバイス250は、プロセスパラメータ値の第2のサブセット(例えば、熱交換器漏れに関連しないもの)における圧力、温度、及び流量に対する平均圧力、圧力標準偏差、平均温度、温度標準偏差、平均流量、及び流量標準偏差を判定する。コンピューティングデバイス250は、第2のサブセットに対する圧力分布、温度分布、及び流量分布をそれに応じて生成する。
【0079】
その後、第1及び第2の統計的モデルは、プロセスプラントから受け取ったオンラインプロセスプラントデータから計算されたプロセスパラメータメトリックと比較される。比較に基づいて、コンピューティングデバイス250は、例えば、類似性または差異のそれぞれの尺度を判定し、それぞれの尺度を比較することによって、第1及び第2の統計的モデルのどちらがプロセスパラメータメトリックにより密接に一致するかを判定する。プロセスパラメータメトリックが第1の統計的モデルにより密接に一致するとき、コンピューティングデバイス250は、プロセスパラメータメトリック(例えば、この例のシナリオでは、熱交換器)に対応するプロセスプラントエンティティが漏れを経験していると判定する。一方、プロセスパラメータメトリックが第2の統計的モデルにより密接に一致するとき、コンピューティングデバイス250は、プロセスパラメータメトリック(例えば、この例のシナリオでは、熱交換器)に対応するプロセスプラントエンティティが、漏れを経験していないと判定する。上述のように、プロセスパラメータメトリックは、セキュリティ保護された方法で受信され、時間経過に伴って収集されたプロセスパラメータ値から計算される。したがって、上記の技術を使用して、熱交換器における温度値の移動平均(例えば、温度メトリック)を使用して、熱交換器における漏れを検出することができる。
【0080】
上記の例を続けると、圧力メトリック(例えば、圧力の減衰平均)は、プロセスパラメータ値の第1のサブセット(例えば、熱交換器漏れに関連するもの)からの平均圧力及び圧力標準偏差に従って生成される圧力分布と比較される。比較に基づいて、コンピューティングデバイス250は、プロセスパラメータ値の第1のサブセットに対する圧力メトリックと平均圧力との差(標準偏差)に対応する確率を判定する。コンピューティングデバイス250はまた、同様の手順を遂行して、プロセスパラメータ値の第1のサブセットに対する温度メトリックと平均温度との差(標準偏差)に対応する確率及びプロセスパラメータ値の第1のサブセットに対する流量メトリックと平均流量との差(標準偏差での)に対応する確率を判定する。その後、判定されたプロセスパラメータメトリックが、熱交換器漏れに関連するプロセスパラメータ値の第1のサブセットに対応する全体的な確率を判定するために、確率が結合される(掛け合わされる、集約されるなど)。
【0081】
付加的に、圧力メトリック、温度メトリック、及び流量メトリックは、プロセスパラメータ値の第2のサブセット(例えば、熱交換器漏れに関連しないもの)に基づいて判定された圧力分布、温度分布、及び流量分布とそれぞれ比較される。比較に基づいて、コンピューティングデバイス250は、プロセスパラメータ値の第2のサブセットに対する圧力メトリックと平均圧力との差(標準偏差での)に対応する確率、第2のサブセットに対する温度メトリックと平均温度との差(標準偏差での)に対応する確率及びプロセスパラメータ値の第2のサブセットに対する流量メトリックと平均流量との差(標準偏差での)に対応する確率を判定する。その後、プロセスパラメータメトリックが、熱交換器漏れに関連しないプロセスパラメータ値の第2のサブセットに対応する全体的な確率を判定するために、確率が結合される(掛け合わされる、集約されるなど)。
【0082】
続いて、第1のサブセットに対する全体的な確率は、第2のサブセットの全体的な確率と比較される。第1のサブセットの全体的確率が高いとき、コンピューティングデバイス250は、対応するプロセスプラントエンティティ、例えば熱交換器が漏れを経験してい
ると判定する。そうでない場合、コンピューティングデバイス250は、対応するプロセスプラントエンティティ、例えば熱交換器が漏れを経験していないと判定する。上述のように、コンピューティングデバイス250は、各々のタイプの状態について統計的モデルを生成し、対応するプロセスプラントエンティティがそれに応じて各々のタイプの状態を経験しているかどうかを判定する。
決定木
【0083】
他の実施形態では、統計的モデルを生成及び/または利用するための機械学習技術は、ランダムツリーまたはブースティングのような決定木を用いた決定木または機械学習技術である。例えば、機械学習技術がランダムフォレストであるとき、コンピューティングデバイス250は、プロセスプラントデータの各々のいくつかの代表的なサンプルを収集する。各々の代表サンプルを使用して、コンピューティングデバイス250は、プロセスプラントエンティティにおいて状態が発生している可能性を判定するための決定木を生成する。コンピューティングデバイス250は、各々の個別ツリーで判定された可能性を平均化すること、加重平均を計算すること、多数決をとることなどによって、決定木のそれぞれを集約及び/または結合して統計的モデルを生成する。コンピューティングデバイス250は、機械学習技術がブースティングしているときに、決定木を生成することもできる。
【0084】
各々の決定木は、いくつかのノード、分岐、及び葉を含み、各々のノードはプロセスパラメータメトリック(例えば、20より大きい減衰流量平均)上のテストを表し、各々の分岐はテストの結果を表し(減衰流量平均は20より大きい)、各々の葉は、プロセスプラントエンティティが特定の種類の状態を経験している可能性を表す。例えば、決定木の分岐は、プロセスプラントエンティティがエラー、漏れ、不動帯、不動時間、機械的摩耗などを経験する可能性を表す。したがって、コンピューティングデバイス250は、収集されたプロセスプラントデータからのプロセスパラメータメトリックを使用して各々の決定木を走査して、プロセスプラントエンティティが、もしあれば、どの状態にあるかを判定する。プロセスプラントエンティティが特定のタイプの状態を経験している可能性が閾値可能性(例えば、0.5,0.7など)を上回る可能性がある場合、コンピューティングデバイス250は、プロセスプラントエンティティがその状態を経験していると判定し、状態の指標を、ユーザインターフェースデバイス及び/または別のコンピューティングデバイス、サービス、またはアプリケーションへ送信する。
【0085】
例えば、コンピューティングデバイス250は、20秒移動平均圧力が25を超えるかどうかに対応する第1のノードを含む決定木を生成する。20秒移動平均圧力が25を超えない場合、第1の分枝は第1の葉ノードに接続し、プロセスプラントエンティティが機械的摩耗を経験している可能性が0.6であることを示す。20秒移動平均圧力スコアが7を超える場合、第2の分岐は第2のノードに接続し、温度の標準偏差が10を超えるかどうかに対応する第2のノードに接続する。
【0086】
温度の標準偏差が10を超える場合、第3の分岐は、プロセスプラントエンティティが機械的摩耗を経験している可能性が0.75であることを示す第2の葉ノードに接続する。しかし、温度の標準偏差が10を超えない場合、第4の分岐は、プロセスプラントエンティティが機械的摩耗を経験している可能性が0.25であることを示す第3の分岐ノードに接続する。決定木には3つの葉ノードと4つの分枝が含まれているが、これは説明を簡単にするための単なる例である。各々の決定木は、プロセスパラメータメトリックに関する任意の好適な数及び/またはタイプのテストを有する任意の数のノード、分岐、及び葉を含むことができる。
【0087】
いずれにしても、ランダムフォレストまたはブースティング方法のようにいくつかの決
定木を結合及び/または集約することによって、コンピューティングデバイス250は、プロセスプラントエンティティが特定のタイプの状態を経験している可能性を判定するために最も重要な、プロセスパラメータメトリックを識別する。最も重要なプロセスパラメータメトリックは、決定木の早期分割を最も頻繁に行うものであり、プロセスプラントエンティティが状態を経験しているかどうかを最もよく表している。上記の決定木の例を参照すると、20秒移動平均圧力は、20秒移動平均圧力よりも温度の標準偏差が木内で低く表れるため、温度の標準偏差よりも重要である。したがって、この例では、20秒移動平均圧力が最も重要なプロセスパラメータメトリックである。
【0088】
いくつかの実施形態では、プロセスパラメータメトリックには、それぞれの重要度に従って重みが割り当てられる。コンピューティングデバイス250は、統計的モデルを生成するときに割り当てられた重みを使用する。いくつかのシナリオでは、最も重要でないプロセスパラメータメトリックを、0またはほぼ0の係数で加重して、統計的モデルからプロセスパラメータメトリックを除外することができる
回帰
【0089】
さらに他の実施形態では、統計的モデルを生成及びまたは利用するための機械学習技術は、ロジスティック回帰、線形回帰、多項式回帰などの回帰分析である。例えば、履歴プロセスパラメータ値を特定の状態に関連する及び関連しないプロセスパラメータ値のそれぞれのサブセットに分類することに加えて、各々の履歴プロセスパラメータ値には性能監視メトリックが割り当てられる。性能監視メトリックは、対応するプロセスプラントエンティティの健全性状態に応じたデバイス全体の健全性パラメータなど、プロセスプラントエンティティの性能またはレーティングのレベルを示す。
【0090】
履歴プロセスパラメータ値及び対応する性能監視メトリックに基づいて、コンピューティングデバイス250は、履歴プロセスパラメータ値から性能監視メトリックを最も近似する式として統計的モデルを生成する。いくつかの実施形態では、統計的モデルを使用する予測性能監視メトリックの値と、履歴プロセスパラメータ値に割り当てられた実際の性能監視メトリックとの間の差を最小にするために、通常の最小二乗法が使用される。さらに、統計的モデル及び性能監視メトリック(yi)を使用する各々の予測性能監視メトリック(yi)の値の間の差は、任意の好適な方法で集約及び/または結合されて、回帰の平均二乗誤差(MSE)を判定する。その後、MSEは統計的モデル内の標準エラーまたは標準偏差(σε)を判定するために使用され、統計的モデルは信頼区間を作成するために使用される。
【0091】
統計的モデルを使用して、コンピューティングデバイス250は、プロセスプラントデータから計算されたプロセスパラメータメトリックを、回帰分析の結果として生成された式(例えば、生成された統計的モデル)に適用する。したがって、コンピューティングデバイス250は、プロセスプラントエンティティに対する性能監視メトリック(例えば、全体的なデバイス健全性パラメータ)を判定または識別する。
【0092】
プロセスパラメータ値は
図4のグラフ表示に含まれているが、これは説明を簡単にするためのものである。プロセスパラメータ値は、表示デバイスにプロセスパラメータ値を提示することなく、対応するタイムスタンプ(例えば、時系列データとして)を有するデータポイントとしてコンピューティングデバイス250で収集され分析されてもよい。また、コンピューティングデバイス250は、機械学習技術を使用してプロセスプラントエンティティで発生する状態を検出または識別するものとして説明されているが、状態は、付加的または代替的に、一組のルールを適用することによって検出または識別されてもよい。例えば、コンピューティングデバイス250は、駆動信号の差とバルブの開度とを比較することによって、バルブの過剰な不動帯を識別する。差が既定の閾値量を超えると、コ
ンピューティングデバイス250は、バルブ内の過剰な不動帯を識別する。
【0093】
図5は、安全に受信されたデータの分析に基づいてプロセスプラントエンティティ内の状態を検出または識別するための例示的な方法400を表すフロー図を示す。方法400は、
図3に示すように、コンピューティングデバイス250によって、または任意の好適なコンピューティングデバイスによって実行され得る。上述のように、コンピューティングデバイス250は、遠隔システム210に含まれてもよく、及び/または無線ゲートウェイ205A、205B、フィールドゲートウェイ212、データダイオード215、及び/またはエッジゲートウェイ218に通信可能に接続されてもよい。
【0094】
ブロック402において、プロセスプラントエンティティ(例えば、バルブ、タンクなど)に対応するいくつかのプロセスパラメータ対して履歴プロセスパラメータ値が取得される。履歴プロセスパラメータ値または特定の時間ウィンドウ(例えば1時間)に対応する履歴プロセスパラメータ値のセットの各々は、履歴プロセスパラメータ値が生成された時点またはその付近で、対応するプロセスプラントエンティティで発生した特定の状態に関連するプロセスパラメータ値のサブセットに分類される(ブロック404)。例えば、温度値のセットは、熱交換器で識別されたエラーの閾値時間内に温度値が収集されたときに、熱交換器におけるエラーに関連するプロセスパラメータ値のサブセットに分類されてもよい。付加的に、履歴プロセスパラメータ値は、プロセスプラントエンティティの通常の動作に関連する及び/またはプロセスプラントエンティティに履歴プロセスパラメータ値が生成されたその時点にまたは付近で、その状態が発生しないか存在しないときに、プロセスパラメータ値のサブセットに分類されてもよい。
【0095】
ブロック406において、統計的モデルが、例えば様々なルール及び/または機械学習技術を使用することによって、履歴プロセスパラメータ値のサブセットに基づいて生成される。機械学習技術は、線形回帰、多項式回帰、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、ニューラルネットワークなどを含むことができる。いくつかの実施形態では、単一の統計的モデルが生成されて、プロセスプラントエンティティにおいて発生する可能性があるか、または存在し得るいくつかのタイプの状態を検出または識別する。他の実施形態では、プロセスプラントエンティティにおいて発生する可能性があるか、または存在し得る状態の各々のタイプ対する異なる統計的モデルが生成される。いくつかの実施形態では、プロセスパラメータメトリックは、どの統計的モデルがプロセスパラメータメトリックに最もよく対応するかを判定するために、様々な状態(またはその不在)を示す複数の統計的モデルと比較される。
【0096】
いずれにせよ、ブロック408で、プロセスプラントエンティティのプロセスプラントデータが安全な方法で受信される。例えば、プロセスプラントデータは、ファイアウォール、暗号化技術、及び/または他の好適なセキュリティ機構を使用して、データダイオード215を経由してコンピューティングデバイス250に送信されてもよい。プロセスプラントデータは、駆動信号、バルブ開度、開度設定点、密度、面積、質量、容積、圧力、温度、またはバルブに対応する流量またはバルブを流れる材料などの、プロセスプラントエンティティに対応するプロセスパラメータを含むことができる。一般に、プロセスプラントデータは、プロセスプラントエンティティが工業プロセスを制御するために動作する結果として生成されるデータであってもよく、プロセスプラントエンティティの挙動または動作を記述してもよい。プロセスプラントデータは、プロセスプラントエンティティ自体によって生成されても生成されなくてもよい。例えば、バルブデータは、バルブ自体(例えば、バルブがどのように開いているかまたは閉じているかの尺度)によって記述し及び/または生成され得、及び/またはバルブのアクチュエータ記述し及び/または生成され得る(例えば、アクチュエータがバルブに特定の信号をどのくらい頻繁に印加するか)。各々のプロセスパラメータに対して、コンピューティングデバイス250は、いくつか
の時間のインスタンスにわたっていくつかのプロセスパラメータ値を受信する。各々のプロセスパラメータ値は、例えば、プロセスパラメータ値がいつ生成されるかを示す対応するタイムスタンプを含む。
【0097】
ブロック410において、1つ以上のプロセスパラメータメトリックが、対応する受信プロセスパラメータ値に基づいて、各々のプロセスパラメータに対して生成、判定、及び/または計算される。プロセスパラメータメトリックは、例えば、プロセスパラメータの平均値、標準偏差、所定時間期間にわたる移動平均、所定時間期間にわたる減衰平均、プロセスパラメータの最大/最小値、時間経過に伴うプロセスパラメータ値に対応する波の振幅、位相、及び/または周波数などを含む。
【0098】
各々のプロセスパラメータメトリックは、どのプロセスプラントエンティティが、もしあれば、どの状態を経験しているかを検出または識別するために、統計的モデル(ブロック412)と比較される(ブロック414)。例えば、機械学習技術がナイーブベイズであるとき、プロセスパラメータメトリックは、状態に関連するプロセスパラメータ値のサブセットに対する分布と、状態に関連しないプロセスパラメータ値のサブセットに対する別の分布とを比較する。コンピューティングデバイス250は、どの分布がプロセスパラメータメトリックにより近く一致しているかを判定し、プロセスプラントエンティティが分布の一致に基づいて状態を経験しているか否かを検出/識別する。別の例では、機械学習技術が決定木、ランダムフォレスト、またはブースティングであるとき、コンピューティングデバイス250は、どの状態をプロセスプラントエンティティが、もしあれば、経験しているかを判定するためにプロセスパラメータメトリックを使用して決定木のノードを走査する。さらに別の例では、機械学習技術がロジスティック回帰、線形回帰、多項式回帰などの回帰分析であるとき、コンピューティングデバイス250は、回帰式にプロセスパラメータメトリックを適用して、プロセスプラントエンティティに対する性能監視メトリックを検出または識別する。
【0099】
ブロック416において、コンピューティングデバイス250は、ユーザインターフェースデバイス235に識別された状態の指標を送信して、オペレータに状態を警告する。状態の指標は、検出された状態のタイプ(例えば、性能監視メトリック、不動帯、機械的摩耗など)、状態を経験しているプロセスプラントエンティティ、状態を検出するために使用されるプロセスパラメータ値、状態によって作成される潜在的な問題を解決するための手順、または他の好適な情報を含む警報またはエラーメッセージであり得る。
【0100】
いくつかの実施形態では、コンピューティングデバイス250は、プロセスプラントエンティティに対する識別された状態に従って、プロセスプラント100で警報またはイベントを生成させる。例えば、コンピューティングデバイス250は、プロセスプラント100に通信を送信して、プロセスプラントエンティティに対する警報またはイベントを表示するか、またはユーザインターフェースデバイス235に要求を送信してプロセスプラント100に通信を送信し、プロセスプラントエンティティに対する警報またはイベントを表示する。他の実施形態では、コンピューティングデバイス250は、プロセスプラント110に制御信号を送信して、識別された状態に基づいてプロセスプラントエンティティの動作を調整する。例えば、プロセスプラントエンティティが漏れを経験しているとき、コンピューティングデバイス250は、プロセスプラントエンティティの動作を停止するために、プロセスプラント110に制御信号を送信する。
【0101】
プロセスプラントエンティティの状態が分かれば(例えば、オペレータがプロセスプラントエンティティを評価して、プロセスプラントエンティティで何らかの状態が発生しているかどうかを判定する)、プロセスパラメータ値が履歴プロセスパラメータ値に追加され(ブロック418)、それに応じて統計的モデルが更新される。例えば、プロセスパラ
メータ値は、
図2に示すように、データヒストリアンデータベース173Bに格納される。
【0102】
付加的に、または代替的に、コンピューティングデバイス250は、別のコンピューティングデバイス、サービス、またはアプリケーションに(例えば、さらなる分析のために)状態の指標を送信する。例えば、コンピューティングデバイス250内の状態判定アプリケーションまたはモジュールは、プロセスプラントエンティティの状態を検出または識別し、その識別された状態の指標をコンピューティングデバイス250または別のコンピューティングデバイス内の別のアプリケーションまたはモジュールに送信する。他のアプリケーションまたはモジュールは、例えば、
図7A~7Bを参照してより詳細に後述するように、同じプロセスプラント100、企業、工業などにおける他のプロセスプラントエンティティに対するプロセスプラントエンティティの健全性を検出するために付加的な分析を遂行することができる。他のアプリケーションまたはモジュールは、プロセスプラントエンティティの状態を、プロセスの相対的な健全性に基づいて検出する。
【0103】
いくつかの実施形態では、プロセスプラントエンティティの相対的な健全性に基づいて判定された状態は、機械学習方法に基づいて判定された状態と比較される。プロセスプラントエンティティに対する相対的健全性インジケータに基づいて判定された状態と機械学習方法に基づいて判定された状態とが一致しないとき、他のアプリケーションまたはモジュールは、プロセスプラントエンティティにおいて発生する状態を検出または識別するために分析をさらに遂行し、及び/または、さらなるレビューのために、状態及び関連するプロセスパラメータメトリックの指標をオペレータに送信する。
【0104】
プロセスプラントエンティティで発生する状態を検出または識別する精度を高めるために、プロセスプラントエンティティの特定の動作特性に対してそれぞれ別々の統計的モデルを生成することができる。例えば、プロセスプラントエンティティがバルブであるとき、フルストロークサイクル、連続スロットル、周期的スロットルなど、バルブが動作する可能性のある各々のモードに異なる統計的モデルが生成される。コンピューティングデバイス250が、バルブが現在動作している(例えば、上述のように)モードを識別するとき、バルブのプロセスパラメータ値は、同じモードで動作するバルブの履歴プロセスパラメータ値に基づいて生成された統計的モデルと比較される。このように、統計分析はより正確である。ある動作モードにおけるプロセスパラメータ値は、別の動作モードにおけるプロセスパラメータ値とは異なる状態を示すことがある。例えば、連続スロットルモードでは、不動時間の特定の量が過剰であるが、フルストロークサイクルモードでは、同じ不動時間量が許容可能である可能性がある。
【0105】
各々のモードの統計的モデルは、線形回帰、多項式回帰、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、ニューラルネットワークなどの様々な機械学習技術を使用して、上記と同様の方法で生成することができる。履歴プロセスパラメータ値は、対応するバルブの動作モードに従ってさらに分類され、統計的モデルは、例えば、各々の動作モード及び/または状態に対する履歴プロセスパラメータ値のサブセットに基づいて生成される。
【0106】
しかし、バルブのオンラインプロセスパラメータ値が、バルブと同じ動作モードの統計的モデルと比較される前に、コンピューティングデバイス250は、バルブの動作モードを判定する。バルブの動作モードは、統計的モデルと比較されるプロセスパラメータの同一セット、プロセスパラメータの異なるセット、または統計的モデルと比較されるプロセスパラメータのセットと重複するプロセスパラメータのセットと比較されるプロセスパラメータセットを使用して判定されてもよい。いずれにしても、バルブの動作モードを判定するための例示的なプロセスパラメータは、典型的には、バルブ開度、開度設定点、及び
/またはバルブの駆動信号を含み得る。バルブの動作モードを判定するために、コンピューティングデバイス250は、付加的または代替的に、時間経過に伴って収集されたプロセスパラメータ値に基づくプロセスパラメータメトリック、例えば反転あたりの平均バルブ開度、反転当たりの移動平均バルブ開度、反転あたりの減衰バルブ開度、バルブ開度の標準偏差、または時間周期当たりの逆転の数、を使用する。(反転とは、バルブ開度において開から閉へまたは閉から開への遷移である。)
【0107】
いくつかの実施形態では、コンピューティングデバイス250内のモード判定アプリケーションまたはモジュールが、バルブの動作モードを判定する。その後、モード判定アプリケーションまたはモジュールは、動作モードをオペレータに警告するために、判定された動作モードの指標をユーザインターフェースデバイス235に送信する。付加的に、モード判定アプリケーションまたはモジュールは、判定された動作モードの指標を、コンピューティングデバイス250または別のコンピューティングデバイス内の別のアプリケーションまたはモジュールに送信することができる。その後、他のアプリケーションまたはモジュールは、判定された動作モードを使用して、バルブと同じ動作モードのためのバルブのオンラインプロセスパラメータを、バルブと同一の動作モードの統計的モデルと比較して、もしあれば、バルブに発生する状態を検出または識別する。
【0108】
図6Aは、本明細書に記載の新たな技術のうちの少なくともいくつかを使用して、異なる動作モード下で各々動作する3つのバルブに対して時間経過に伴って収集されたバルブ開度データの例示的なグラフ表示500を示す。第1のバルブ502は、フルストロークサイクルモードで動作している。第2のバルブ504は、周期的スロットルモードで動作し、第3のバルブ506は、連続スロットルモードで動作している。バルブの開度は、バルブが完全に開いているときは0%、バルブが完全に閉じているときは100%、またはその間のどこか(例えば50%)であってもよい。
図6Aに示すように、時間の関数としてのバルブ開度は、各々の動作モードに対して明確なパターンを有する。
【0109】
例えば、連続スロットルモードでの第3のバルブ506のバルブ開度は、一定の周波数と振幅が100%よりかなり小さい(例えば、20%)正弦波パターンを有する。連続スロットルモードでは、第3のバルブ506は、プロセス制御システム100の調整に応答して静止しているか、または常に運動している。しかしながら、第3のバルブ506は、動作が停止されない限り、このモードでは完全に開閉しない。時刻t=15での第3のバルブ506のバルブ開度は約52パーセント(参照番号506a)であり、時刻t=20で約48パーセント(参照番号506b)であり、時刻t=25で再び約52パーセント
(参照番号506c)になる。
【0110】
一方、フルストロークサイクルモードでは、第1のバルブ502は完全に開いた状態から完全に閉じた状態へ、またはその逆に進むが、部分的に開いたり閉じたりしない。したがって、フルストロークサイクルモードにおける第1のバルブ502のバルブ開度は、ステップ関数パターンであり、時間t=10からt=20までの第1のバルブ502のバルブ開度は0パーセント(参照番号502a)であり、時間t=25~t=40は100パーセント(参照番号502b)であり、時間t=42~t=60は0パーセント(参照番号502c)である。
【0111】
周期的スロットルモードは、フルストロークサイクルモードと連続スロットルモードの組み合わせである。周期的スロットルモードでは、第2のバルブ504はスロットルの状態と完全に閉じた/開いた状態とを交互に繰り返す。このように、周期的スロットルモードにおける第2のバルブ504のバルブ開度は、ステップ関数パターンと正弦パターンとの組み合わせである。ステップ関数と同様に、時間t=10からt=15までの第2のバルブ504のバルブ開度は0パーセント(参照番号504a)であり、その後ステップ関数と類似の30パーセント(参照番号504b)に移行する。次に、時間t=18からt=28まで、バルブ開度は約2%の振幅で約30%の正弦波状のパターンで振動する。時刻t=30付近では、バルブ開度は0パーセント(参照番号504c)に戻り、再び30パーセントに移行する前に時刻t=35までそこにとどまる。周期的スロットルモードでの第2のバルブ504のバルブ開度は、0から30パーセントの間を行き来する第1の小さい周波数と、バルブ開度が0%から30%に移行するたびに、約29パーセントから約31パーセントまで前後に振動する第2の大きな周波数と、の2つの周波数を示す。
【0112】
様々な動作モードに対する時間の関数としてのバルブ開度のグラフ表示における明確なパターンに基づいて、コンピューティングデバイス250は、バルブの時間経過に伴うバルブ開度データを分析することによって動作モードを判定する。付加的または代替的に、コンピュータデバイス250は、バルブを走査する駆動信号、バルブの開度設定点、及び/または時間経過に伴う他のバルブパラメータ値などの他のバルブパラメータ値を分析して、バルブの動作モードを判定する。アクチュエータ圧力のような、バルブの動作モードを判定するために、他のパラメータを分析することもできる。
【0113】
いくつかの実施形態では、コンピューティングデバイス250は、所定のルールのセットをプロセスパラメータまたはプロセスパラメータメトリックに適用することによって動作モードを判定する。例えば、コンピューティングデバイス250は、バルブ開度を時間経過に伴って周波数領域に変換し、バルブ開度が高周波数(連続スロットル)、低周波数(フルストロークサイクル)、または高周波数及び低周波数の組み合わせ(周期的スロットル)を含むかどうかを検出または識別することができる。コンピューティングデバイス250は、周波数を検出または識別し、バルブの対応する動作モードを判定するために、ハイパス、ローパス、またはバンドパスフィルタなどのフィルタを適用することができる。
【0114】
付加的、または代替的に、コンピューティングデバイス250は、バルブデータを使用してプロセスパラメータメトリックを計算する。例えば、バルブ開度測定データを使用して、反転当たりの平均バルブ開度、反転当たりの移動平均バルブ開度、反転あたりの減衰バルブ開度、バルブ開度の標準偏差、時間期間当たりの反転回数などを計算することができる。例えば、第1のバルブ502に対して、時刻t=約20でバルブが閉鎖(バルブ開度が増加する)し、その後時刻t=約40で開になり始める(バルブ開度が減少する)ので、反転は、時刻t=40で発生する。この時間フレームの間、バルブ開度は、0%から100%に移動し、反転当たりのバルブ開度は100%になる。しかしながら、上記は、
バルブの動作モードを判定するために使用され得るプロセスパラメータ及び/またはプロセスパラメータメトリックの例に過ぎない。任意の好適なプロセスパラメータ及び/またはプロセスパラメータメトリックを利用することができる。
【0115】
図6Bは、バルブの動作モードを検出または識別するための例示的なルールベースの方法550を表すフロー図を示す。方法550は、
図3に示すように、コンピューティングデバイス250によって、または例えば、モード判定アプリケーションまたはモジュールを介して、任意の好適なコンピューティングデバイスによって実行されてもよい。上述のように、コンピューティングデバイス250は、遠隔システム210に含まれてもよく、及び/または無線ゲートウェイ205A、205B、フィールドゲートウェイ212、データダイオード215、及び/またはエッジゲートウェイ218に通信可能に接続されてもよい。
【0116】
ブロック552において、バルブのプロセスパラメータ値(例えば、バルブパラメータ値)が安全な方法で受信される。例えば、プロセスまたはバルブパラメータ値は、ファイアウォール、暗号化技術、及び/または他の好適なセキュリティ機構を使用して、データ
ダイオードを介してコンピューティングデバイス250に送信されてもよい。各々のプロセスパラメータまたはバルブパラメータに対して、コンピューティングデバイス250は、いくつかの時間のインスタンスに対応するいくつかのプロセスパラメータ値を受信する。各々のプロセスパラメータ値は、プロセスパラメータ値がいつ生成されたかを示す対応するタイムスタンプを含む。バルブの動作モードを検出または識別するためのプロセスまたはバルブパラメータは、(例えば、
図5の方法400で説明したように)バルブで発生する状態を検出または識別するために使用されるプロセスまたはバルブパラメータの同じセット、バルブで発生する状態を検出または識別するために使用されるプロセスまたはバルブパラメータの異なるセット、またはそのセット内のいくつかのプロセス/バルブパラメータが同一であり、他のパラメータが異なる、プロセスまたはバルブパラメータの重複セットを含むことができる。バルブのプロセス/バルブパラメータは、バルブ開度測定値または指標、バルブの駆動信号、バルブ開度設定点、アクチュエータ圧力などを含むことができる
【0117】
いずれにしても、ブロック554において、バルブの1つ以上のプロセスパラメータメトリックが判定される。例えば、1サイクル当たりの平均バルブ開度がバルブに対して求められる。1サイクル当たりの平均バルブ開度は、バルブが開から閉、または閉から開に移行するごとにバルブ開度の変化を計算し、その後計算されたバルブ開度の変化を平均することによって判定される。例えば、
図6Aの時間経過に伴うバルブ開度のグラフ表示500に戻ると、第1のバルブ502は、時間t=10か
らt=40(0~100%)の間で100%のバルブ開度の変化を含む。バルブ開度の変化は、また、時間t=42からt=60(100%から0%)まで100%である。さらに、バルブ開度の変化は、時間t=70からt=90まで再び100%である。したがって、1サイクル当たりの平均バルブ開度は100%である。対照的に、第3のバルブ506は、時間t=15からt=20(52から48パーセント)の間で約4パーセントのバルブ開度の変化を含み、4パーセントの変化は時
刻t=35まで安定しており、バルブ開度の変化は、時間t=30からt=35(45~55パーセント)まで約10パーセントに増加する。そこでは、1サイクルあたりの平均バルブ開度は約7%である。
【0118】
ブロック556において、コンピューティングデバイス250は、1サイクル当たりの平均バルブ開度が閾値数(例えば、95%)より大きいかどうかを判定する。1サイクル当たりの平均バルブ開度が95パーセントより大きいとき、コンピューティングデバイス250は、バルブの動作モードがフルストロークサイクルであると判定する(ブロック558)。例えば、
図6Aに示す第1のバルブ502は、1サイクル当たりの平均バルブ開度が95%を超えており、したがってフルストロークサイクルモードにある。いくつかの実施形態では、コンピューティングデバイス250は、その後、例えば、上記の機械学習技術を使用して分析を遂行して、もしあれば、バルブで生じる状態を検出または識別する。この状態は、例えば、フルストロークサイクルモードにおけるバルブの履歴プロセスパラメータ値から生成された統計的モデルを使用して識別される。他の実施形態では、コンピューティングデバイス250内のモード判定アプリケーションまたはモジュールは、判定された動作モードの指示を、ユーザインターフェースデバイス235またはコンピューティングデバイス250または別のコンピューティングデバイス内の別のアプリケーションまたはモジュールに送信する。他のアプリケーションまたはモジュールは、例えば、上記の機械学習技術を使用して、判定された動作モード及び/またはバルブデータに基づいて分析を遂行して、バルブで生じる状態を検出または識別することができる。
【0119】
1サイクル当たりの平均バルブ開度が閾値数(例えば、95%)よりも大きくないとき、コンピューティングデバイス250は、バルブ開度が閾値のエラーマージン(例えば、2パーセント)を超えて時間にわたって変化するかどうかを判定する(ブロック560)。バルブ開度が変化しないとき、コンピューティングデバイス250は、バルブが動かず
、飽和状態にあると判定する(ブロック561)。一方、バルブの開度が変化すると、コンピューティングデバイス250は、オンライン動作の間に受信されたバルブ開度値が時折、カットオフ(例えば、0パーセントまたは100パーセント)に達するかどうかを判定する(ブロック562)。バルブ開度値が時折、0パーセントまたは100パーセントのカットオフに達する(例えば、少なくとも1回)と、コンピューティングデバイス250は、バルブの動作モードが周期的スロットルであると判定する(ブロック564)。例えば、
図6Aに示すように、第2のバルブ504のバルブ開度は、時間t=10からt=15まで0%である。いくつかの実施形態では、次いで、コンピューティングデバイス250は、その後、例えば、上記の機械学習技術を使用して、分析を遂行して、バルブに生じる状態を、もしあれば、検出または識別する。この状態は、周期的スロットルモードのバルブの履歴プロセスパラメータ値から生成された統計的モデルを使用して識別される。他の実施形態では、コンピューティングデバイス250内のモード判定アプリケーションまたはモジュールは、判定された動作モードの指標を、ユーザインターフェースデバイス235またはコンピューティングデバイス250または別のコンピューティングデバイス内の別のアプリケーションまたはモジュールに送信する。その後、他のアプリケーションまたはモジュールは、例えば、上記の機械学習技術を使用して、分析を遂行して、バルブに生じる状態を、もしあれば、検出または識別する。
【0120】
一方、バルブ開度値が0パーセントまたは100パーセントのカットオフに達しないとき、コンピューティングデバイス250は、バルブの動作モードが連続スロットルであると判定する(ブロック566)。例えば、
図6Aに示すように、第3のバルブ506のバルブ開度は、約45~55パーセントの間にとどまり、決して0または100パーセントには達しない。いくつかの実施形態では、その後、コンピューティングデバイス250は、例えば、上記の機械学習技術を使用して、分析を遂行してバルブに生じる状態を、もしあれば、検出または識別する。この状態は、連続スロットルモードのバルブの履歴プロセスパラメータ値から生成された統計的モデルを使用して識別される。他の実施形態では、コンピューティングデバイス250内のモード判定アプリケーションまたはモジュールは、判定された動作モードの指標を、ユーザインターフェースデバイス235またはコンピューティングデバイス250または別のコンピューティングデバイス内の別のアプリケーションまたはモジュールに送信する。その後、他のアプリケーションまたはモジュールは、例えば、上記の機械学習技術を使用して、分析を遂行してバルブに生じる状態を、もしあれば、検出または識別する。
【0121】
方法550は、バルブの動作モードを検出または識別するための所定のルールのセットを含むが、これは説明を簡単にするための単なる一例に過ぎない。コンピューティングデバイス250は、任意の好適な所定のルールのセットを使用して、方法550に含まれるルールに対する付加的または代替的ルールを含むバルブの動作モードを検出または識別することができる。さらに、方法550における所定のルールのセットがバルブ開度プロセスパラメータに適用されるが、所定のルールのセットは、バルブの任意の数のプロセスパラメータに適用されてもよい。
【0122】
他の実施形態では、コンピューティングデバイス250は、上述の機械学習技術に類似した、様々な機械学習技術を使用して動作モードを判定してプロセスプラントエンティティで発生する状態を検出または識別する。例えば、バルブに関するいくつかのプロセスパラメータ(例えば、バルブ開度、バルブ駆動信号、バルブ開度設定点、アクチュエータ圧力など)に対して、コンピューティングデバイス250は、時間経過に伴って収集された履歴プロセスパラメータ値を受信し、履歴プロセスパラメータ値の各々は、対応するバルブの動作モードによって分類される。その後、コンピューティングデバイス250は、特定の動作モードに対応する履歴プロセスパラメータ値の各々のサブセットを分析して、各々の動作モードの統計的モデルを生成する。バルブのプロセスパラメータ値及び対応するタイムスタンプがコンピューティングデバイス250で受信されると、コンピューティングデバイス250はプロセスパラメータ値を各々の統計的モデルと比較してバルブの動作モードを判定する。
【0123】
図6Cは、バルブの動作モードを検出または識別するための例示的な方法580を表すフロー図を示す。方法580は、
図3に示すように、コンピューティングデバイス250上で、またはモード判定アプリケーションまたはモジュールを介して任意の好適なコンピューティングデバイス上で、実行することができる。上述したように、コンピューティングデバイス250は、遠隔システム210に含まれてもよく、及び/または無線ゲートウェイ205A、205B、フィールドゲートウェイ212、データダイオード215、またはエッジゲートウェイ218に通信可能に接続されてもよい。
【0124】
ブロック582において、1つ以上のバルブに対応する1つ以上のプロセスパラメータ(例えば、1つ以上のバルブパラメータ)に対して、履歴プロセスパラメータ値(例えば、履歴バルブパラメータ値)が取得される。履歴プロセスパラメータ値の各々は、対応するタイムスタンプと、履歴プロセスパラメータ値が生成されたときの対応するバルブの動作モードの指標と、を含む。対応するバルブの特定の動作モードに関連する特定の時間ウィンドウ(例えば、1時間)に対応する履歴プロセスパラメータ値または履歴プロセスパラメータ値のセットの各々は、プロセスパラメータ値のそれぞれのサブセットに分類される(ブロック584)。例えば、履歴プロセスパラメータ値は、フルストロークサイクルモードに関連するプロセスパラメータ値の第1のサブセット、連続スロットルモードに関連するプロセスパラメータ値の第2のサブセット、または周期的スロットルモードに関連するプロセスパラメータ値の第3のサブセットに分類することができる。
【0125】
ブロック586において、統計的モデルが、例えば様々な機械学習技術を使用することによって、履歴プロセス/バルブパラメータ値のサブセットに基づいて生成される。機械学習技術は、線形回帰、多項式回帰、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、ニューラルネットワークなどを含むことができる。いくつかの実施形態では、単一の統計的モデルが複数のモードのバルブ動作に対して生成される。他の実施形態では、異なる統計的モデルが、バルブ動作の各々のモードに対して生成される。さらに他の実施形態では、時間経過に伴う履歴プロセスパラメータ値(例えば、上述のような平均、移動平均など)から生成されたプロセスパラメータメトリックを、バルブ動作の様々なモードを示す複数の統計的モデルと比較して、どのモード固有の統計的モデルが、プロセスパラメータメトリックに最もよく一致するかを判定する。例えば、(プロセスパラメータメトリックに関して)各々のモード固有の統計的モデルに対して、類似性または差のそれぞれの尺度を生成し、比較して、適切なモード固有の統計的モデルを判定することができる。
【0126】
いずれにしても、ブロック588において、対象バルブのバルブデータが安全な方法で受信される。例えば、バルブデータは、ファイアウォール、暗号化技術、及び/または他の好適なセキュリティ機構を使用して、データダイオードを介してコンピューティングデバイス250に送信されてもよい。バルブデータには、駆動信号、バルブ開度測定値、開度設定値、アクチュエータ圧力などに対応する値など、バルブに対応するプロセスパラメータ値が含まれる。各々のプロセスパラメータに対して、コンピューティングデバイス250は、いくつかの時間のインスタンスで得られたいくつかのプロセスパラメータ値を受信する。各々のプロセスパラメータ値は、例えば、プロセスパラメータ値がいつ生成されたかを示す対応するタイムスタンプを含む。
【0127】
対象バルブの対応する時系列プロセスパラメータ値に基づいて、各々のプロセスパラメータについて1つ以上のプロセスパラメータメトリックを生成することができる。例示プ
ロセスパラメータメトリックは、反転あたりの移動平均、反転当たりの移動平均バルブ開度、反転当たりの減衰バルブ開度、バルブ開度の標準偏差、時間周期当たりの反転回数、時間経過に伴うバルブの開度に対応する波の振幅、位相、及び/または周波数を含む。
【0128】
1つ以上のプロセスパラメータメトリックを統計的モデル(ブロック590)と比較して、対象バルブの動作モードを検出または識別する(ブロック592)。例えば、ナイーブベイズによって統計的モデルが生成されるとき、1つ以上のプロセスパラメータメトリックがフルストロークサイクルモードに関連するプロセスパラメータ値のサブセットの分布、及び連続スロットルモードに関連するプロセスパラメータ値のサブセットの別の分布、周期的スロットルモードに関連するプロセスパラメータ値のサブセットのためのさらに別の分布と比較される。コンピューティングデバイス250は、どの分布がプロセスパラメータメトリックと最もよく一致しているかを判定し、それに応じて対象バルブの動作モードを識別する。別の例では、決定木、ランダムフォレスト、またはブースティングによって統計的モデルが生成されるとき、コンピューティングデバイス250は、プロセスパラメータメトリックを使用して決定木のノードを走査して、対象バルブの動作モードを判定する。
【0129】
対象バルブの識別された動作モードに基づいて、コンピューティングデバイス250は、それぞれの分析を遂行して、対象バルブに発生するかまたは存在する状態を、もしあれば、検出または識別する。例えば、識別されたバルブ動作モードが周期的スロットルであるとき、コンピューティングデバイス250は、例えば、周期的スロットルモードで動作するバルブの履歴プロセスパラメータ値に基づいて生成された統計的モデルを使用して、分析を遂行して、対象バルブに発生する状態を、もしあれば、検出または識別する(ブロック594a)。識別された動作モードが連続スロットルであるとき、コンピューティングデバイス250は、例えば、連続スロットルモードで動作するバルブの履歴プロセスパラメータ値に基づいて生成された統計的モデルを使用して分析を遂行する(ブロック594b)。識別された動作モードがフルストロークサイクルであるとき、コンピューティングデバイス250は、例えば、フルストロークサイクルモードで動作するバルブの履歴プロセスパラメータ値に基づいて生成された統計的モデルを使用して分析を遂行する(ブロック594c)。
【0130】
いくつかの実施形態では、コンピューティングデバイス250内のモード判定アプリケーションまたはモジュールは、判定された動作モードの指標を、ユーザインターフェースデバイス235、コンピューティングデバイス250内の別のアプリケーションまたはモジュール、及び/または別のコンピューティングデバイスに送信する。他のアプリケーション、モジュール、またはコンピューティングデバイスは、例えば、機械学習技術及び/または上記のような統計的モデルを使用して、それぞれの分析を遂行して、対象バルブで発生または存在する状態を、もしあれば、検出または識別する。
【0131】
ブロック596において、バルブ対して識別されたものと同じ動作モードのために生成された統計的モデルを使用することによって、バルブの状態が検出され、または識別される。例えば、識別されたバルブ動作モードに対応し、ナイーブベイズを使用して生成された統計的モデルの場合、対象バルブのプロセスパラメータメトリックは、状態に関連するプロセスパラメータ値のサブセットに対する分布と比較され、状態に関連しないプロセスパラメータ値のサブセットに対する別の分布と比較される。コンピューティングデバイス250は、どの分布がプロセスパラメータメトリックにより近く一致しているかを判定し、対象バルブがそれに応じて状態を経験しているか否かを識別する。別の例では、識別されたバルブ動作モードに対応し、決定木、ランダムフォレスト、またはブースティングに対応する統計的モデルの場合、コンピューティングデバイス250は、対象バルブのプロセスパラメータメトリックを使用して決定木のノードを走査して、対象バルブが、もしあれば、経験している状態であるかどうかを判定する。さらに別の例では、識別されたバルブ動作モードに対応し、ロジスティック回帰、線形回帰、多項式回帰などの回帰分析を使用して生成された統計的モデルに対して、コンピューティングデバイス250は、対象バルブのプロセスパラメータメトリックを対応する回帰式に適用して、バルブの性能監視メトリックまたは他の状態を検出または識別する。
【0132】
ブロック598で、コンピューティングデバイス250は、検出/識別された状態の指標をユーザインターフェースデバイス235に送信して、例えば、オペレータにその状態を警告する。状態の指標は、検出された状態のタイプ(例えば、不動帯、機械的摩耗など)、その状態を経験するバルブの識別、状態を識別するために使用されるプロセスまたはバルブパラメータ値、その状態によって作成された潜在的な問題を解決するための手順、及び/またはその他の好適な情報を含む警報またはエラーメッセージであってもよい。
【0133】
いくつかの実施形態では、コンピューティングデバイス250は、バルブの検出/識別された状態に従って、プロセスプラント100で警報またはイベントを生成させる。例えば、コンピューティングデバイス250は、プロセスプラント100に通信を送信して、バルブのための警報またはイベントをアクティブにするか、またはユーザインターフェースデバイス235に要求を送信して、プロセスプラント100にそれぞれの通信を送信して、バルブの警報またはイベントをアクティブにする。他の実施形態では、コンピューティングデバイス250は、プロセスプラント110に制御信号を送信して、バルブの動作及び/または識別された状態に基づいてプロセスプラントの動作を調整する。例えば、バルブが漏れを経験しているとき、コンピューティングデバイス250は、プロセスプラント110に制御信号を送信して、バルブの動作を停止させる。
【0134】
付加的にまたは代替的に、コンピューティングデバイス250は、別のコンピューティングデバイス、サービス、またはアプリケーションに(例えば、さらなる分析のために)状態の指標を送信する。例えば、コンピューティングデバイス250内の状態判定アプリケーションまたはモジュールは、プロセスプラントエンティティの状態を検出または識別し、その識別された状態の指標をコンピューティングデバイス250または別のコンピューティングデバイス内の別のアプリケーションまたはモジュールに送信する。他のアプリケーションまたはモジュールは、例えば、
図7A~
図7Bを参照してより詳細に後述するように、同じプロセスプラント100、企業、工業などにおける他のプロセスプラントエンティティに対するプロセスプラントエンティティの健全性を検出するために、付加的な分析を遂行することができる。他のアプリケーションまたはモジュールは、プロセスプラントエンティティの相対的な健全性に基づいてプロセスプラントエンティティの状態を検出する。
【0135】
いくつかの実施形態では、プロセスプラントエンティティの相対的な健全性に基づいて判定された状態は、機械学習方法に基づいて判定された状態と比較される。プロセスプラントエンティティの相対的健全性インジケータに基づいて判定された状態と機械学習方法に基づいて判定された状態が一致しないとき、他のアプリケーションまたはモジュールは、さらなる分析を遂行して、プロセスプラントエンティティで発生している状態を検出または識別し及び/または、さらなるレビューのために、状態及び関連プロセスパラメータメトリックの指標をオペレータに送信する。
【0136】
図6B、及び6Cに示す方法550,580は、バルブの3つの動作モード(フルストロークサイクル、連続スロットル、及び周期的スロットル)を検出または識別するが、付加的な、代替的な、または任意の好適な数の動作モードを識別することができる。
【0137】
バルブの統計的分析をさらに強化するために、特定のバルブのバルブデータを、同一の
プロセスプラント、企業、工業、またはすべての工業にわたっていくつかの他のバルブに対するバルブデータと比較することができる。このようにして、特定のバルブの健全性は、履歴プロセスパラメータに加えて、現在動作している他のバルブに対して識別される。いくつかの実施形態では、特定のバルブの健全性は、同じプロセスプラント、企業、工業、またはすべての工業にわたって動作するバルブのそれぞれにランク付けされる。
【0138】
例えば、バルブに対応するプロセスパラメータ値と履歴プロセスパラメータ値との比較に基づいて、例えば、統計的モデルを使用することによって、コンピューティングデバイス250は、特定のバルブに特定の状態(例えば、エラー)が発生しているか、または存在しているかを判定する。しかし、特定のバルブは、バルブの各々に対する全体的なデバイス健全性パラメータ、またはエラー状態に関するいくつかの他のプロセスパラメータに従って、プロセスプラント内のバルブの中央にランク付けすることができる。このように、バルブの全体的なデバイス健全性パラメータに基づいて、コンピューティングデバイス250は、特定のバルブがプロセスプラント内の他のバルブと比較して正常に動作していると判定する。
【0139】
説明のために、
図7Aは、3つの異なるバルブに対する時間経過に伴って収集されたバルブサイクルの例示的なグラフ表示600を示し、ここで、1サイクルは、バルブの開度方向の反転(例えば、開から閉へ、または閉から開へ)を表す。この例では、バルブサイクルは、同じプロセスプラント100、企業、工業、またはすべての工業にわたって動作するバルブ602~606の各々を比較するための全体的なデバイス健全性パラメータを生成するために使用される。しかし、これは単なる一例に過ぎず、付加的または代替的なプロセスパラメータまたはプロセスパラメータメトリックを使用して、全体的なデバイス健全性パラメータを生成することができる。
【0140】
いずれにしても、第1のバルブ602について、バルブサイクルの量は、全時間1時間当たり約11サイクルを平均する13週間の時間スパンにわたって一定である。値は約10サイクル/時間から約12サイクル/時間まで変化するが、時間当たりのサイクルの平均勾配または変化はほぼ一定である。第2のバルブ604では、バルブサイクルの量は、約9サイクル/時間で第7週まで一定である。その後、バルブサイクルの量は、第7週から第8週まで増加してから、第8週から第13週まで約14サイクル/時間で一定になる。これは、プロセスパラメータ値の変化または機械的摩耗などのバルブの機械的な変化を示している可能性がある。第3のバルブ606に対して、バルブサイクルの量は、約9.5サイクル/時間でほぼ週7まで一定である。その後、バルブサイクルの量は、時間経過に伴って第13週まで徐々に増加し、約16サイクル/時間となる。
【0141】
したがって、コンピューティングデバイス250は、バルブのそれぞれの全体的なデバイス健全性パラメータを他のバルブの全体的なデバイス健全性パラメータと比較することによって、各々のバルブ602,604,606の相対的健全性インジケータを判定する。バルブの相対的健全性インジケータは、バルブが他のバルブのどこにランク付けされているか、バルブの全体的なデバイス健全性パラメータの全体的なデバイス健全性パラメータパーセンタイル、または他の好適なインジケータとすることができる。
【0142】
例えば、第1のバルブ602の週当たりのバルブサイクルがほとんど一定であるので、コンピューティングデバイス250は、第1のバルブ602を最も高い順位にランク付けするか、または最高の全体的なデバイス健全性パラメータで割り当てることができる。バルブサイクルの量は第2のバルブ604と第3のバルブ606の両方で時間の経過と共に増加するが、バルブサイクルの量は第3のバルブ606内で時間経過に伴って増加を継続し、バルブサイクルの量は第2のバルブ604内で一定になるので、第2のバルブ604は第3のバルブ606より上位の第2位にランク付けされてもよい。
【0143】
いくつかの実施形態では、グラフ表示600は、例えば、ユーザインターフェースデバイス235及び/またはオペレータワークステーション171のユーザインターフェースでの表示のために、ユーザインターフェースデバイス235に送信される。付加的にまたは代替的に、グラフ表示600に含まれるデータは、コンピューティングデバイス250によって分析される。いくつかの実施形態では、バルブ602~606のそれぞれの対応する相対的デバイス健全性インジケータ(例えば、全体的なデバイス健全性パラメータまたはランク付け)は、例えば、ユーザインターフェースデバイス235及び/またはオペレータワークステーション171のユーザインターフェースでの表示のために、ユーザインターフェースデバイス235に送信される。
【0144】
各々のバルブ602~606の全体的なデバイス健全性パラメータは、1時間当たりの平均バルブサイクルの時間経過に伴って判定されてもよい。バルブで発生する状態も、分析に基づいて判定または調整され、ユーザインターフェースデバイス235に送信される。
【0145】
例えば、第2のバルブ604の場合、コンピューティングデバイス250は、例えば上述した機械学習技術を使用することによって、第2のバルブ604に対応するプロセスパラメータ値を分析する。コンピューティングデバイス250はまた、第2のバルブ604の動作モードを判定し、プロセスパラメータ値に適用する適切な統計的モデルを識別して、第2のバルブ604で発生する状態を検出または識別する。適用された統計的モデルに基づいて、コンピューティングデバイス250が、第2のバルブ604が機械的摩耗を経験していると判定した場合、第2のバルブ604が実際に機械的摩耗を経験していることを確認するために、相対的なデバイス健全性インジケータ(例えば、全体的なデバイス健全性パラメータまたは第2バルブ604と他のバルブ602,606との並列比較)を利用することができる。一方、相対的なデバイス健全性インジケータ(例えば、全体的なデバイス健全性パラメータまたは第1のバルブ602と他のバルブ604,606との並列比較)は、バルブ604がある程度の機械的摩耗を経験していることを統計的モデルの適用結果が示したとしても、第1のバルブ602が、他のバルブ604,606と比較して、比較的健全性であると指摘することができる。この学習された情報は、さらなる分析のためにオペレータ及び/または別のアプリケーションまたはサービスに提供されてもよい。
【0146】
図7Bは、いくつかのバルブの健全性を比較し、比較に基づいてバルブのそれぞれの状態を検出/識別するための例示的な方法650を表すフロー図を示す。方法650は、
図3に示されるように、コンピューティングデバイス250によって、または任意の好適なコンピューティングデバイスによって実行されてもよい。上述したように、コンピューティングデバイス250は、遠隔システム210に含まれてもよく、及び/または無線ゲートウェイ205A、205B、フィールドゲートウェイ212、データダイオード215、またはエッジゲートウェイ218に通信可能に接続されてもよい。
【0147】
ブロック652において、複数のバルブのプロセスパラメータ値(例えば、バルブパラメータ値)が安全な方法で受信される。例えば、プロセスまたはバルブパラメータ値は、ファイアウォール、暗号化技術、及び/または他の好適なセキュリティ機構を使用して、データダイオードを介してコンピューティングデバイス250に送信されてもよい。複数のバルブは、同じプロセスプラント100、企業、工業、またはすべての工業に含まれ得る。例えば、プロセスプラント100の外部のバルブのプロセスパラメータは、ゲートウェイ176、178から即時プロセス制御システム100の外部にあるシステムに受信される。
【0148】
各々のプロセスまたはバルブパラメータに対して、コンピューティングデバイス250
は、いくつかの時間のインスタンスで生成された、いくつかのプロセスパラメータ値を受信する。各々のプロセス/バルブパラメータ値は、例えば、プロセスパラメータがいつ生成されるかを示す対応するタイムスタンプを含む。バルブの健全性を比較するために使用されるプロセス/バルブパラメータは、バルブ(例えば、
図5の方法400で説明したように)で発生する状態を検出または識別するために使用されるプロセスパラメータの同じセット、バルブで発生する状態を検出または識別するために使用されるパラメータの別のセット、またはセット内のいくつかのプロセスパラメータが同一であり、他のパラメータが異なるプロセスパラメータの重複セットを含むことができる。バルブの例示プロセスパラメータは、バルブ開度、バルブの駆動信号、バルブ開度設定点、アクチュエータ圧力などが含まれる。
【0149】
いくつかの実施形態では、複数のバルブの各々について、コンピューティングデバイス250は、時間経過に伴う対応するプロセスパラメータ値に基づいて、各々のプロセスパラメータについて1つ以上のそれぞれのプロセスパラメータメトリックを判定する。プロセスパラメータメトリックは、例えば、反転あたりの平均バルブ開度、反転当たりの移動平均バルブ開度、反転当たりの減衰バルブ開度、バルブ開度の標準偏差、
図7Aにおけるような時間周期当たりのサイクル数、時間経過に伴うバルブの開度に対応する波の振幅、位相、及び/または周波数を含む。
【0150】
ブロック654において、各々のバルブのプロセスパラメータメトリックについて統計的分析を遂行してバルブの全体的なデバイス健全性パラメータを判定する。いくつかの実施形態では、プロセスパラメータメトリックにルールのセットを適用することによって、全体的なデバイス健全性パラメータを判定することができる。例えば、
図7Aを参照して説明したように、時間経過に伴う時間当たりの平均バルブサイクルの変化に従って、全体的なデバイス健全性パラメータが各々のバルブに割り当てられ、時間当たりの平均バルブサイクルの変化が増加するにつれて全体的なデバイス健全性パラメータが低下する。
【0151】
他の実施形態では、全体的なデバイス健全性パラメータは、上述の機械学習技術と同様に、1つ以上の機械学習技術を使用して判定される。例えば、1つ以上の機械学習技法は、ロジスティック回帰、線形回帰、多項式回帰などの回帰分析を含むことができる。付加的に、バルブに対応するプロセスパラメータの履歴プロセスパラメータ値の各々には、対応するバルブの健全性状態に従って全体的なデバイス健全性パラメータが割り当てられる。
【0152】
履歴プロセスパラメータ値及び対応する全体的なデバイス健全性パラメータに基づいて、コンピューティングデバイス250は、履歴プロセスパラメータ値からデバイス健全性パラメータを最も近似する式として統計的モデルを生成する。いくつかの実施形態では、統計的モデルを使用する予測された全体的なデバイス健全性パラメータの値と、履歴プロセスパラメータ値に割り当てられた実際の全体的なデバイス健全性パラメータとの間の差を最小にするために通常の最小二乗法が使用される。付加的に、統計的モデル及び全体的なデバイス健全性パラメータを使用して各々の予測される全体的なデバイス健全性パラメータの値の差を、任意の好適な方法で集約及び/または結合されて回帰の平均二乗誤差(MSE)を判定する。その後、MSEは統計的モデル内の標準エラーまたは標準偏差(σε)を判定するために使用され、統計的モデルは、信頼区間を作成するために使用される。
【0153】
統計的モデルを使用して、コンピューティングデバイス250は、回帰分析の結果として生成された式にプロセスパラメータメトリックを適用する。結果として、コンピューティングデバイス250は、バルブの全体的なデバイス健全性パラメータを識別する。これは、各々のバルブに対して繰り返され、各々のバルブの全体的なデバイス健全性パラメー
タを判定する。
【0154】
コンピューティングデバイス250は、全体的なデバイス健全性パラメータ(例えば、時間経過に伴う時間周期当たりの平均バルブサイクルなど)を使用して、1つのバルブの全体的なデバイス健全性パラメータを、同じプロセスプラント100、企業、工業、またはすべての工業にわたって他のバルブの全体的なデバイス健全性パラメータと比較する。比較に基づいて、コンピューティングデバイス250は、各々のバルブの相対的健全性インジケータを判定する。例えば、いくつかの実施形態では、バルブは、それらの対応するデバイス全体的なデバイス健全性パラメータに基づいてランク付けされる。他の実施形態では、バルブは特定のプロセスパラメータまたはプロセスパラメータメトリックに基づいてランク付けされ、いくつかのプロセスパラメータ及び/またはプロセスパラメータメトリックに対するバルブのいくつかのランク付けが生成される。
【0155】
他の実施形態では、コンピューティングデバイス250は、各々のバルブに対する全体的なデバイス健全性パラメータの平均及び標準偏差を判定する。その後、ガウス分布または他の好適な確率密度関数を仮定すると、コンピューティングデバイス250は、各々のバルブに対する相対健全性インジケータとして、バルブの各々に対する全体的なデバイス健全性パラメータパーセンタイルを判定する。例えば、全体的なデバイス健全性パラメータの平均値に等しい全体的なデバイス健全性パラメータを有するバルブは、50番目パーセンタイル内にあってもよい。全体的なデバイス健全性パラメータの平均値についての2標準偏差である全体的なデバイス健全性パラメータを有する別のバルブは、98番目パーセンタイルにあり得、さらに、平均的な全体的なデバイス健全性パラメータの下にある1標準偏差である全体的なデバイス健全性パラメータを有する別のバルブは、16番目パーセンタイルであってもよい。
【0156】
その後、ブロック658において、バルブに生じる状態が、バルブに対する相対的健全性インジケータに基づいて判定される。いくつかの実施形態では、特定のプロセスパラメータまたはプロセスパラメータメトリックは、特定のタイプの状態を示す。例えば、時間経過に伴う時間あたりの平均バルブサイクルの変化に従って、バルブの底部近くにランク付けされたバルブは、機械的摩耗を経験する可能性がある。さらに、不動時間または不動帯の量に応じてバルブの底部近くにランク付けされたバルブは、過剰な不動時間または不動帯を経験する可能性がある。さらに、バルブ開度設定点と測定されたバルブ開度との間の差に従ってバルブの底部近くにランク付けされたバルブは、エラーを経験する可能性がある。
【0157】
他の実施形態では、バルブの相対的健全性インジケータは、バルブで発生する状態を検出または識別するための機械学習方法(
図5の方法400など)と共に使用される。例えば、バルブの相対的健全性インジケータと機械学習法に基づいて判定された状態とに基づいて判定された状態が一致するとき、コンピューティングデバイス250は、機械学習法に基づいて判定された状態が正確であると判定する。一方、バルブの相対的健全性インジケータに基づいて判定された状態と機械学習方法に基づいて判定された状態とが一致しないとき、コンピューティングデバイス250は、さらなる分析を遂行して、バルブで生じる状態を検出または識別し及びまたは、さらなるレビューのために、状態及び関連プロセスパラメータメトリックの指標をオペレータに送信する。他の実施形態では、バルブの相対的健全性インジケータに基づいて判定された状態は、機械学習方法に基づいて判定された状態を無効にする。結果として、コンピューティングデバイス250は、バルブの相対的健全性インジケータに基づいて判定された状態の指標をユーザインターフェースデバイス235に送信して、オペレータに状態を警告する。
【0158】
例えば、バルブデータが履歴プロセスパラメータ値を使用して生成された統計的モデル
と比較されるとき、コンピューティングデバイス250は、バルブが過剰な不動時間を経験していると判定する。しかしながら、バルブが同じ工業の他のすべてのバルブと比較されるとき、コンピューティングデバイス250は、バルブが経験している不動時間が工業内の平均であり、したがって不動時間は許容範囲内であると判定する。
【0159】
別の例では、バルブデータが履歴プロセスパラメータ値を使用して生成された統計的モデルと比較されるとき、コンピューティングデバイス250は、バルブの不動帯の量が許容範囲内であると判定する。しかしながら、バルブが同じ工業の他のすべてのバルブと比較されるとき、コンピューティングデバイス250は、バルブの不動帯の量が、同じ工業の他のバルブと比較して99番目パーセンタイルであると判定する。したがって、コンピューティングデバイス250は、バルブが過剰な不動帯を経験していると判定する。したがって、コンピューティングデバイス250は、過剰な不動帯状態の指標をユーザインターフェースデバイス235に送信し、プロセスプラント100において、バルブにおいて過剰な不動帯を示す警報またはイベントを発生させ、またはプロセスプラント110に制御信号を送信して過剰な不動帯に基づいてバルブの動作を調整する。例えば、制御信号は、バルブを停止する命令であってもよい。
【0160】
ブロック660において、バルブの状態の指標が、ユーザインターフェースデバイス235に送信されて、オペレータに状態を警告する。いくつかの実施形態では、各バルブの相対的健全性インジケータもまた、ユーザインターフェースデバイス235に送信される。例えば、全体的なデバイス健全性パラメータならびに全体的なデバイス健全性パラメータによる各々のバルブの順位付けは、ユーザインターフェースデバイス235に送信される。状態の指標は、検出された状態のタイプ(例えば、不動帯、機械的摩耗など)、状態を経験するバルブ、状態を検出するために使用されるプロセスパラメータ値、状態によって作成された潜在的な問題を解決する手順、または他の好適な情報を含む警報またはエラーメッセージであってもよい。
【0161】
いくつかの実施形態では、コンピューティングデバイス250はまた、バルブの識別された状態に従って、プロセスプラント100で警報またはイベントを生成させる。例えば、コンピューティングデバイス250は、プロセスプラント100に通信を送信して、バルブに対す警報またはイベントを表示するか、ユーザインターフェースデバイス235に要求を送信してプロセスプラント100に送信し、バルブに対する警報またはイベントを表示する。他の実施形態では、コンピューティングデバイス250は、制御信号をプロセスプラント110に送信して識別された状態に基づいてバルブの動作を調整する。例えば、バルブが漏れを経験しているとき、コンピューティングデバイス250は、プロセスプラント110に制御信号を送信してバルブの動作を停止させる。
【0162】
付加的に、ブロック662において、各々のバルブに対して、いくつかの時間のインスタンスでのプロセスパラメータ値の指標が、並列比較される表示のためにユーザインターフェースデバイス235に送信される。例えば、
図7Aに示すようなグラフ表示600は、ユーザインターフェースデバイス235に送信されてもよい。このようにして、オペレータは各々のバルブの時間経過に伴うプロセスパラメータ値の変化を見ることができ、バルブを比較することができる。
【0163】
次に
図8を参照すると、
図8は、バルブまたは他のプロセスプラントエンティティの健全性及び/または性能を監視するための例示的な方法700のフロー図である。一実施形態では、方法700の少なくとも一部分は、コンピューティングデバイス250及び/または遠隔アプリケーションまたはサービス208によって遂行される。いくつかの実施形態では、方法700の少なくとも一部分は、例えばデータハイウェイ110に通信可能に接続されたコンピューティングデバイスなど、プロセスプラント100に対してローカル
に配置された別のコンピューティングデバイスによって遂行される。しかし、特に、方法700は、本明細書に記載の技術、方法、システム、デバイス、及び/またはデバイスのいずれかと共に動作してもよい。
【0164】
一般的に言えば、方法700は、バルブまたは他のターゲットプロセスエンティティを連続的及び/または周期的に監視し、バルブがプロセスプラント100内のプロセスを制御するように動作している間に実行される。このように、限定ではなく例示のために、方法700は、監視されるバルブに関して説明される。方法700が(再)実行される頻度は、既定でもよく、及び/または例えばバルブの臨界に基づいてもよい。勿論、反復実行に加えて、方法700の実行は、プロセスプラント100内で発生するイベント及び/またはユーザ要求またはコマンドなどのトリガに基づいて開始されてもよい。
【0165】
いずれにせよ、ブロック702において、方法700は、バルブに対応する任意の警報がアクティブであるか否かを判定することを含む。ブロック702において、方法700
が、バルブに対応するアクティブな警告があると判定した場合、方法は、アクティブな警告の指標を、オペレータワークステーション171及び/またはユーザインターフェースデバイス235のユーザインターフェースに送信することによってユーザに通知することを含む(ブロック705)。各々のアクティブな警告のそれぞれの優先順位は、所望されればアクティブ警告通知と共に送信することができる(ブロック705)。それぞれの優先順位は、例えばアクティブな警告のレベルと、バルブの尺度または他の臨界の指標に基づいて判定されてもよい。ユーザ通知が完了すると(ブロック705)、方法700は、バルブの健全性及び/または性能を監視し続け(ブロック708)、ブロック702に戻る。
【0166】
ブロック702において、方法700が、バルブに対応するアクティブな警告がないと判定した場合、方法700は、バルブの1つ以上の時系列分析を遂行するように進む(ブロック710)。例えば、ブロック710において、方法700は、バルブに対応する時系列バルブデータを取得することと、時系列バルブデータに基づいて1つ以上のプロセスプラントメトリックを生成することと、生成されたプロセスプラントメトリックを、より多くの統計的モデル、例えば、
図5に関して先に説明したような方法で、比較することと、を含むことができる。場合によっては、バルブの時系列分析は、例えば
図6Cに関して先に説明したように、バルブの検出された動作モードに基づくことができる。バルブに対して遂行され得る時系列分析の例(ブロック710)には、傾き及び/または傾向の判定、平均及び他のメトリックの判定、標準偏差及び/または分散の判定、バルブデータと様々な閾値の比較、及び/またはその他分析を含む。一実施形態では、ブロック710は、例えば
図7Bに関して先に説明したように、バルブの全体的なデバイス健全性の値または尺度、及び/またはバルブの相対的健全性インジケータの値または尺度を判定することを含む。
【0167】
ブロック712において、方法700は、ブロック710で実行された時系列分析の1つ以上の結果の変化が生じたか、または観察されたかどうかを判定することを含む。例えば、最も最近実行された時系列分析(ブロック710)の結果は、バルブ及び/または同様のバルブの履歴時系列分析結果と比較されてもよく、及び/または1つ以上の時系列分析結果が、1つ以上の監視されたバルブパラメータに対応してもよい。バルブパラメータ値の変化及び/または時系列分析の結果の存在は、閾値またはベースラインからの偏差の量(例えば、期待値及び/または時間経過に伴う挙動)に基づいて判定されてもよく、変更の存在を示す偏差の量は、所望されれば構成可能であってもよい。監視可能な変化の例(ブロック712)には、駆動信号、移動偏差、サイクル及び/または移動メトリック、供給圧力、及び/またはバルブに対応する他の時系列分析結果への変化が含まれる。
【0168】
ブロック712において、方法700が、変化が発生しなかった及び/または観察されないと判定した場合、方法700は、バルブの健全性及び/または性能を継続して監視し(ブロック708)、ブロック702に戻る。ブロック712において、方法700が、変化が発生した及び/または観察されたと判定した場合、方法700は、変化の重大度のレベルまたは尺度を任意選択で判定することを含む(ブロック715)。変化の重大度の判定は、変化したパラメータ値及び/または時系列分析結果の重要性、パラメータ値/時系列分析結果の変化の大きさ、バルブの臨界性、及び/または他の要因に基づいてもよい。
【0169】
ブロック718において、方法700は、バルブパラメータ及びまたは時系列分析結果及び任意選択でそのそれぞれの重大度の変化をユーザに通知することを含む。例えば、変化の通知及びその重大度は、オペレータワークステーション171及び/またはユーザインターフェースデバイス235のユーザインターフェースに送信されてもよい。変化のユーザ通知が完了すると(ブロック718)、方法700は、バルブの健全性及び/または性能を継続して監視し(ブロック708)、ブロック702に戻る。
【0170】
本開示に記載された技術の実施形態は、以下の態様のうちの任意の数を単独でまたは組み合わせて含むことができる。
【0171】
1. プロセスプラントからクラウドコンピューティングシステムに安全に転送されるデータを使用してプロセスプラントエンティティの状態を検出する方法であって、プロセスプラントが工業プロセスを制御するように動作している間に、プロセスプラントの1つ以上のデバイスによって生成されたデータを、クラウドコンピューティングシステムにおいて受信することであって、データが、1つ以上のデバイスからデータダイオードを介してクラウドコンピューティングシステムへ送信するためにセキュリティ保護され、データダイオードが、プロセスプラントのネットワークとクラウドコンピューティングシステムのネットワークとの間の双方向通信を防止するように構成されている、受信することと、クラウドコンピューティングシステムにおいて、データを分析して、それによりプロセスプラント内の工業プロセスを制御するために物理的機能を遂行しているプロセスプラントエンティティの状態を検出することであって、プロセスプラントエンティティが、1つ以上のデバイスに対応する、検出することと、プロセスプラントエンティティの状態の指標をユーザインターフェースデバイスに送信して、オペレータに状態を警告することと、を含む、方法。
【0172】
2.1つ以上のデバイスによって生成されたデータを受信することが、複数の時間のインスタンスにおいて、プロセスプラントエンティティの1つ以上のプロセスパラメータの各々に対してのそれぞれのプロセスパラメータ値を受信すること、を含む、態様1に記載の方法。
【0173】
3.データを分析して、それによりプロセスプラントエンティティの状態を検出することが、1つ以上のプロセスパラメータの各々に対して、複数の時間のインスタンスにわたる1つ以上のプロセスパラメータのそれぞれのプロセスパラメータ値を結合して、プロセスパラメータメトリックを生成することと、プロセスパラメータメトリックに基づいてプロセスプラントエンティティの状態を検出することと、を含む、態様1または2に記載の方法。
【0174】
4.複数の時間のインスタンスにわたる1つ以上のプロセスパラメータのそれぞれのプロセスパラメータ値を結合してプロセスパラメータメトリックを生成することが、それぞれのプロセスパラメータ値の移動平均、または複数の時間のインスタンスにわたるそれぞれのプロセスパラメータ値の減衰平均のうちの少なくとも1つを計算してプロセスパラメータメトリックを生成すること、を含む、態様1~3のいずれか1つに記載の方法。
【0175】
5.1つ以上のプロセスパラメータの履歴プロセスパラメータ値に基づいて統計的モデルを生成することをさらに含み、プロセスパラメータメトリックに基づいてプロセスプラントエンティティの状態を検出することが、プロセスパラメータメトリックを統計的モデルに適用すること、を含む、態様1~4のいずれか1つに記載の方法。
【0176】
6.1つ以上のプロセスパラメータの履歴プロセスパラメータ値に基づいて統計的モデルを生成することが、各々の履歴プロセスパラメータ値を、状態を経験した1つ以上のプロセスプラントエンティティに対するプロセスパラメータ値の第1のセットに対応するものとして、または状態を経験していない1つ以上のプロセスプラントエンティティに対するプロセスパラメータ値の第2のセットに対応するものとして分類することと、履歴プロセスパラメータ値の分類に基づいて、統計的モデルを生成することと、を含む、態様1~5のいずれか1つに記載の方法。
【0177】
7.プロセスプラントエンティティが、状態を経験したか否かの指標を受信することと、プロセスプラントエンティティの1つ以上のプロセスパラメータのそれぞれのプロセスパラメータ値を含むように、かつプロセスプラントエンティティが状態を経験したかどうかの指標に基づいて履歴プロセスパラメータ値を更新することと、をさらに含む、態様1~6のいずれか1つに記載の方法。
【0178】
8.プロセスプラントエンティティの状態を検出することが、プロセスプラントエンティティの性能監視メトリックを検出すること、またはプロセスプラントエンティティにおけるエラー、不動帯、不動時間、または漏れのうちの少なくとも1つを検出すること、のうちの少なくとも1つを含む、態様1~7のいずれか1つに記載の方法。
【0179】
9.プロセスプラントエンティティの検出された状態に基づいてプロセスプラントで警報またはイベントを発生させること、をさらに含む、態様1~8のいずれか1つに記載の方法。
【0180】
10.プロセスプラントエンティティの検出された状態に基づいてプロセスプラントエンティティの動作を調整するためにプロセスプラントに制御信号を送信すること、をさらに含む、態様1~9のいずれか1つに記載の方法。
【0181】
11.1つ以上のデバイスによって生成されたデータを受信することが、1つ以上のデバイスからデータダイオードを介してクラウドコンピューティングシステムにストリーミングされたリアルタイムデータを受信すること、を含む、態様1~10のいずれか1つに記載の方法。
【0182】
12.プロセスプラントエンティティが、バルブ、アクチュエータ、タンク、ミキサー、ポンプ、熱交換器、フィールドデバイス、I/Oデバイス、コントローラ、またはプロセスプラント内の工業プロセスを制御するための物理的機能を遂行する別のデバイスを含む、態様1~11のいずれか1つに記載の方法。
【0183】
13.1つ以上のデバイスが、プロセスプラントエンティティに含まれる1つ以上のデバイス、フィールドデバイス、I/Oデバイス、コントローラ、ノード、通信デバイス、アダプタ、ルータ、ゲートウェイ、またはプロセスプラント内に配置された別のデバイスのうちの少なくとも1つを含む、態様1~12のいずれか1つに記載の方法。
【0184】
14.プロセスプラントエンティティの動作モードを判定することをさらに含み、デー
タを分析することが、プロセスプラントエンティティの動作モードに対応する技術またはモデルを利用してデータを分析することを含む、態様1~13のいずれか1つに記載の方法。
【0185】
15.プロセスプラントのプロセスプラントエンティティの状態を検出するためのシステムであって、
【0186】
プロセスプラントに配置されたプロセスプラントエンティティに対応し、工業プロセスを制御するための物理的機能を遂行する1つ以上のデバイスと、
【0187】
1つ以上のデバイスを1つ以上のコンピューティングデバイスに通信可能に接続するデータダイオードであって、プロセスプラントのネットワークと1つ以上のコンピューティングデバイスとの間の双方向通信を防止するように構成される、データダイオードと、
【0188】
1つ以上のコンピューティングデバイスであって、1つ以上プロセッサと、通信ユニットと、1つ以上のプロセッサ及び通信ユニットに結合された1つ以上の固定コンピュータ可読媒体であって、1つ以上のプロセッサによって実行されると、
【0189】
プロセスプラントがオンラインである間にプロセスプラントの1つ以上のデバイスによって生成されたデータを、データダイオード及び通信ユニットを介して受信することであって、データが、1つ以上のデバイスからデータダイオードを介して1つ以上のデバイスからコンピューティングデバイスに送信するためにセキュリティ保護される、受信することと、プロセスプラントエンティティの状態を検出するためにデータを分析することと、プロセスプラントエンティティがオペレータに状態を警告するための状態の指標を、通信ユニットを介してユーザインターフェースデバイスに送信することと、をコンピューティングデバイスにさせる命令を格納する、固定コンピュータ可読媒体と、を備える、システム。
【0190】
16.1つ以上のデバイスによって生成されたデータが、複数の時間のインスタンスにおけるプロセスプラントエンティティの1つ以上のプロセスパラメータの各々に対するそれぞれのプロセスパラメータ値を含む、態様15に記載のシステム。
【0191】
17.プロセスプラントエンティティの状態を検出するためのデータの分析が、1つ以上のプロセスパラメータメトリックを生成するために、複数の時間のインスタンスにわたる1つ以上のプロセスパラメータのそれぞれのプロセスパラメータ値の組み合わせを含み、プロセスプラントエンティティの状態が、1つ以上のプロセスパラメータメトリックに基づいて検出される、態様15または態様16に記載のシステム。
【0192】
18.それぞれのプロセスパラメータ値の組み合わせが、それぞれのプロセスパラメータ値の移動平均またはそれぞれのプロセスパラメータ値の減衰平均のうちの少なくとも1つを含む、態様15~17のいずれか1つに記載のシステム。
【0193】
19.1つ以上のプロセスパラメータの履歴プロセスパラメータ値に基づいて生成された統計的モデルをさらに含み、プロセスプラントエンティティの状態が、1つ以上のプロセスパラメータメトリックを統計的モデルに適用することによって検出される、態様15~18のいずれか1つに記載のシステム。
【0194】
20.統計的モデルが、各々の履歴プロセスパラメータ値の分類に基づいて、状態を経験した1つ以上のプロセスプラントエンティティのプロセスパラメータ値の第1のセットに対応するものとしてまたは、状態を経験していない1つ以上のプロセスプラントエンテ
ィティのプロセスパラメータ値の第2のセットに対応するものとして生成される、態様15~19のいずれか1つに記載のシステム。
【0195】
21.統計的モデルが、1つ以上の機械学習技術であって、線形回帰、多項式回帰、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、またはニューラルネットワークを含む、1つ以上の機械学習技術を使用して生成される、態様15~20のいずれか1つに記載のシステム。
【0196】
22.1つ以上のプロセスパラメータが、圧力、温度、流量、密度、面積、または体積のうちの少なくとも1つを示す、態様15~21のいずれか1つに記載のシステム。
【0197】
23.プロセスプラントエンティティの状態が、プロセスプラントエンティティにおける性能監視メトリック、エラー、不動帯、不動時間、または漏れのうちの少なくとも1つを含む、態様15~22のいずれか1つに記載のシステム。
【0198】
24.1つ以上のデバイスが、フィールドデバイスによって生成されるまたは送信されるうちの少なくとも1つである信号を利用する制御ルーチンを実行するフィールドデバイスまたはコントローラのうちの少なくとも1つを含む、態様15~23のいずれか1つに記載のシステム。
【0199】
25.プロセスプラントエンティティが、バルブ、フィールドデバイス、I/Oデバイス、I/Oデバイスを介してフィールドデバイスに結合されたコントローラ、タンク、ミキサー、ポンプ、または熱交換器のうちの少なくとも1つを含む、態様15~24のいずれか1つに記載のシステム。
【0200】
26.態様1~14のいずれか1つの方法を遂行するようにさらに構成された、態様15~25のいずれか1つに記載のシステム。
【0201】
27.プロセスプラント内のバルブの動作モードを検出するための方法であって、工業プロセスを制御するためにプロセスプラント内で動作するバルブの結果として生成されたデータをコンピューティングデバイスで受信することであって、バルブデータが、複数の時間のインスタンスにわたる1つ以上のバルブパラメータに対するバルブのそれぞれのバルブパラメータ値を含む、受信することと、複数のバルブ動作モードから、バルブの動作モードを識別するために、バルブデータをコンピューティングデバイスによって分析することであって、複数のバルブ動作モードが、フルストロークサイクル、連続スロットル、または周期的スロットルのうちの2つ以上を含む、分析することと、バルブの識別された動作モードの指標を、プロセスプラント内の動作を分析するためにユーザインターフェースまたは他のアプリケーションのうちの少なくとも1つに送信することと、を含む、方法。
【0202】
28.それぞれのバルブパラメータ値が、バルブパラメータの第1のセットであり、方法がさらに、バルブの識別された動作モードに基づいて、バルブパラメータの第2のセットを選択することと、複数の時間のインスタンスにわたってバルブデータに含まれるバルブパラメータの第2のセットのバルブパラメータ値の第2のセットを分析して、それによりバルブの状態を検出することと、検出されたバルブの状態の指標をユーザインターフェースに送信することと、を含む、態様27に記載の方法。
【0203】
29.複数の時間のインスタンスにわたるバルブパラメータ値の第2のセットを分析し、それによりバルブの状態を検出することが、1つ以上のバルブパラメータメトリックを生成するために、複数の時間のインスタンスにわたってバルブパラメータ値の第2のセッ
トを結合することと、1つ以上のバルブパラメータメトリックに基づいてバルブの状態を検出することと、を含む、態様27または態様28のいずれか1つに記載の方法。
【0204】
30.バルブパラメータの第2のセットに対する履歴バルブパラメータ値に基づいて統計的モデルを生成することをさらに含み、履歴バルブパラメータ値が、バルブの識別された動作モードで動作する1つ以上のバルブによって生成され、1つ以上のバルブパラメータメトリックに基づいてバルブの状態を検出することが、1つまたはバルブパラメータメトリックを統計的モデルに適用することを含む、態様27~29のいずれか1つに記載の方法。
【0205】
31.統計的モデルを生成することが、1つ以上の機械学習技術を使用して統計的モデルを生成することを含み、1つ以上の機械学習技術が、線形回帰、多項式回帰、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、またはニューラルネットワークにうちの少なくとも1つを含む、態様27~30のいずれか1つに記載の方法。
【0206】
32.バルブの検出された状態に基づいて、プロセスプラントにおいて警報またはイベントを発生させることをさらに含む、態様27~31のいずれか1つに記載の方法。
【0207】
33.バルブの状態を検出することが、バルブの性能メトリックを判定すること、または、バルブのエラー、不動帯、不動時間、漏れのうちの少なくとも1つを検出すること、のうちの少なくとも1つを含む、態様27~32のいずれか1つに記載の方法。
【0208】
34.バルブの動作モードを識別するためにバルブデータを分析することが、複数の時間のインスタンスにわたってバルブのそれぞれのバルブパラメータ値を結合して、バルブのバルブパラメータメトリックを生成することと、バルブのバルブパラメータメトリックを、複数のバルブ動作モードにそれぞれ対応する複数の統計的モデルと比較することであって、各々の統計的モデルが、バルブ動作のそれぞれのモードに対応し、バルブ動作のそれぞれのモードで動作する1つ以上のバルブのそれぞれの履歴バルブパラメータ値に基づいて生成される、比較することと、比較に基づいてバルブの動作モードを識別することと、を含む、態様27~33のいずれか1つに記載の方法。
【0209】
35.バルブの動作モードを識別するために、それぞれのバルブパラメータ値を含むバルブデータを分析することが、開度設定点、バルブ開度測定値、設備駆動信号、アクチュエータの圧力、開度サイクル、サイクルカウンタ、開度アキュムレータ、または複数の時間のインスタンスにわたる制御信号のうちの少なくとも1つに対応する値を分析して、バルブの動作モードを識別すること、を含む、態様27~34のいずれか1つに記載の方法。
【0210】
36.バルブの動作モードを識別するためにバルブデータを分析することが、1サイクル当たりの平均バルブ開度を判定するためにプロセスプラントのオンライン動作の間、複数の時間のインスタンスにわたってバルブのそれぞれのバルブ開度の測定値を分析することと、サイクル当たりの平均バルブ開度が閾値数を超えたときに、バルブがフルストロークサイクルモードで動作していると判定することと、1サイクル当たりの平均バルブ開度が閾値数を超えないとき、バルブが連続スロットルモードで動作していると判定することと、フルストロークサイクルモードでの動作と連続スロットルモードでの動作との間でバルブが交互に切り替わるとき、バルブが周期的スロットルモードで動作していると判定することと、を含む、態様27~35のいずれか1項に記載の方法。
【0211】
37.態様1~14のいずれか1項に記載の方法と組み合わせた態様27~36のいず
れか1つに記載の方法。
【0212】
38.態様15~26のいずれか1項に記載のシステムによって遂行される態様27~37のいずれか1つに記載の方法。
【0213】
39.プロセスプラント内のバルブの動作モードを検出するためのシステムであって、プロセスプラント内で動作して工業プロセスを制御するバルブと、
【0214】
1つ以上のプロセッサ及び通信ユニットに結合された1つ以上の固定コンピュータ可読媒体であって、1つ以上のプロセッサによって実行されると、
【0215】
工業プロセスを制御するためにプロセスプラント内で動作するバルブの結果として生成されたデータを、通信ユニットを介して受信することであって、バルブデータが、複数の時間のインスタンスにわたる1つ以上のバルブパラメータに対するバルブのそれぞれのバルブパラメータ値を含む、受信することと、複数のバルブ動作モードから、バルブの動作モードを識別するために、バルブデータをコンピューティングデバイスによって分析することであって、複数のバルブ動作モードが、フルストロークサイクル、連続スロットル、または周期的スロットルのうちの2つ以上を含む、分析することと、バルブの識別された動作モードの指標を、プロセスプラント内の動作を分析するためにユーザインターフェースまたは他のアプリケーションのうちの少なくとも1つに送信することと、を1つ以上のコンピューティングデバイスにさせる命令をそこに格納する固定コンピュータ可読媒体と、を備えるシステム。
【0216】
40.それぞれのバルブパラメータ値が、バルブパラメータで第1のセットであり、命令が、コンピューティングデバイスに、バルブの識別された動作モードに基づいて、バルブパラメータの第2のセットを選択することと、バルブのデータに含まれるバルブの状態を検出するために、複数の時間のインスタンスにわたってバルブパラメータの第2のセットのバルブパラメータ値の第2のセットを分析することと、通信ユニットを介して、バルブの検出された状態の指標をユーザインターフェースに送信することと、をさらにさせるために実行可能である、態様39に記載のシステム。
【0217】
41.複数の時間のインスタンスにわたるバルブパラメータ値の第2のセットの分析が、バルブのバルブパラメータメトリックを生成するために、複数の時間のインスタンスにわたるバルブパラメータ値の第2のセットの組み合わせを含み、バルブの状態が、バルブパラメータメトリックに基づいて検出される、態様39~40のいずれか1つに記載のシステム。
【0218】
42.識別された動作モードに対応し、識別された動作モードで動作するバルブの履歴バルブパラメータ値に基づいて生成された統計的モデルをさらに含み、バルブの状態が、バルブの識別された動作モードに対応する統計的モデルに対するバルブパラメータメトリックの適用に基づいて検出される、態様39~41のいずれか1つに記載のシステム。
【0219】
43.統計的モデルが1つ以上の機械学習技術を使用して生成され、1つ以上の機械学習技術が、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、またはニューラルネットワークのうちの少なくとも1つを含む、態様39~42のいずれか1つに記載のシステム。
【0220】
44.バルブの検出された状態が、性能メトリック、バルブにおけるエラー、不動帯、不動時間、または漏れのうちの少なくとも1つを含む、態様39~43のいずれか1項に記載のシステム。
【0221】
45.バルブの動作モードを識別するためのバルブデータの分析が、バルブのバルブパラメータメトリックを生成するために、複数の時間のインスタンスにわたるバルブのそれぞれのバルブパラメータ値の組み合わせと、バルブのバルブパラメータメトリックの複数のバルブ動作モードにそれぞれ対応する複数の統計的モデルとの比較と、各々の統計的モデルが、それぞれのバルブ動作モードに対応し、それぞれのバルブ動作モードに従って動作する1つ以上のバルブ履歴バルブパラメータ値に基づいて生成され、比較に基づくバルブの動作モードの識別と、を含む、態様39~44のいずれか1つに記載のシステム。
【0222】
46.複数の統計的モデルが、1つ以上の機械学習技術を使用して生成される、態様39~45のいずれか1つに記載のシステム。
【0223】
47.バルブデータが、開度設定値、バルブ開度測定値、アクチュエータ圧力、開度サイクル、サイクルカウンタ、開度アキュムレータ、または制御信号のうちの少なくとも1つに対応するバルブのバルブパラメータ値を含む、態様39~46のいずれか1つに記載のシステム。
【0224】
48.バルブデータの分析が、プロセスプラントのオンライン動作中の複数の時間のインスタンスにわたるバルブのそれぞれのバルブ開度測定値の分析を含み、1サイクルあたりの平均バルブ開度が、閾値数を超えたとき、バルブがフルストロークサイクルモードで動作していると判定され、1サイクル当たりの平均バルブ開度が閾値数を超えないとき、バルブが連続スロットルモードで動作していると判定され、バルブが、フルストロークサイクルモードと連続スロットルモードとの間でバルブが交互に切り替わるとき、周期的スロットルモードで動作していると判定される、態様39~47のいずれか1つに記載のシステム。
【0225】
49.1つ以上のコンピューティングデバイスが、クラウドコンピューティングシステムに含まれる、態様39から48のいずれか1つ記載のシステム。
【0226】
50.クラウドコンピューティングシステム及びプロセスプラントが、データダイオードを介して通信可能に接続され、データダイオードが、データトラフィックをプロセスプラントに侵入するのを防止するように構成される、態様39~49のいずれか1つに記載のシステム。
【0227】
51.態様27~38に記載のいずれか1つの方法を遂行するようにさらに構成される、態様39~50のいずれか1つに記載のシステム。
【0228】
52.バルブの健全性を検出するための方法であって、プロセスプラント内に配置され、工業プロセスを制御するように動作するバルブに対応するデータを、コンピューティングデバイスで、受信することであって、バルブデータが、複数の時間のインスタンスにわたって1つ以上のバルブパラメータに対するバルブのそれぞれのバルブパラメータ値を含む、受信することと、バルブの全体的なデバイス健全性パラメータの値を判定するために、コンピューティングデバイスによって、バルブデータを分析することと、バルブの全体的なデバイス健全性パラメータ値と複数のバルブのそれぞれの全体的なデバイス健全性パラメータ値との比較に基づいて、バルブの相対的健全性インジケータをコンピューティングデバイスによって判定することと、ユーザインターフェースでの表示、データ格納エンティティにおける格納、または実行中のアプリケーションによる使用のうちの少なくとも1つに対してバルブの相対的健全性インジケータを提供することと、を含む、方法。
【0229】
53.複数のバルブのそれぞれの全体的なデバイス健全性パラメータ値内のバルブの全体的なデバイス健全性パラメータ値の比較に基づいて、バルブの相対的健全性インジケータを判定することが、複数のバルブのそれぞれの全体的なデバイス健全性パラメータ値に基づいて複数のバルブをランク付けすることを含み、バルブの相対的健全性インジケータを提供することが、バルブの全体的なデバイス健全性パラメータ値の指標と、複数のバルブのランク付けの指標を提供することを含む、態様52に記載の方法。
【0230】
54.バルブの全体的なデバイス健全性パラメータ値を判定するためにバルブデータを分析することが、1つ以上のバルブパラメータメトリックを生成するために、複数の時間のインスタンスにわたって1つ以上のバルブパラメータに対するバルブのそれぞれのバルブパラメータ値を結合することと、1つ以上のバルブパラメータメトリックに基づいてバルブの全体的なデバイス健全性パラメータ値を判定することと、を含む、態様52または53のいずれか1つに記載の方法。
【0231】
55.1つ以上のバルブパラメータに対する履歴バルブパラメータ値に基づいて統計的モデルを生成することをさらに含み、1つ以上のバルブパラメータメトリックに基づいてバルブの全体的なデバイス健全性パラメータ値を判定することが、1つ以上のバルブパラメータメトリックを統計的モデルに適用すること、を含む、態様52~54のいずれか1つに記載の方法。
【0232】
56.バルブの全体的なデバイス健全性パラメータ値またはバルブの相対的健全性インジケータのうちの少なくとも1つに基づいてバルブの状態を検出することと、検出されたバルブの状態の指標をユーザインターフェースに送信することと、を含む、態様52~55のいずれか1つに記載の方法。
【0233】
57.(i)バルブの検出された状態が第1の検出された状態であり、(ii)方法が、1以上のバルブパラメータに対する履歴バルブパラメータ値に基づいて、バルブの第2の状態を検出するための統計的モデルを生成することと、1つ以上のバルブパラメータメトリックを統計的モデルに適用することによって、バルブの第2の状態を検出することと、第1の検出された状態と第2の検出された状態とを比較することと、を含み、(iii)バルブの第1の検出された状態の指標をユーザインターフェースに送信するステップが、第1の検出された状態が第2の検出された状態と異なるとき、バルブの第1の検出された状態の指標をユーザインターフェースに送信することを含む、態様52~56のいずれか1つに記載の方法。
【0234】
58.バルブの検出された状態に基づいて、プロセスプラントにおいて警報またはイベントを発生させることをさらに含む、態様52~57のいずれか1つに記載の方法。
【0235】
59.検出されたバルブの状態に基づいてプロセスプラントの動作を調整するために、プロセスプラントに制御信号を送信することをさらに含む、態様52~58のいずれか1つに記載の方法。
【0236】
60.バルブの状態を検出することが、バルブの性能メトリックを判定すること、またはバルブでの、エラー、不動帯、不動時間、機械的摩耗または漏れ、のうちの少なくとも1つを検出することの少なくとも1つを含む、態様52~59のいずれか1つに記載の方法。
【0237】
61.1つ以上のバルブパラメータに対する複数のバルブのそれぞれのバルブパラメータ値の指標を、複数の時間のインスタンスにわたって生成することと、複数の時間のインスタンスにわたって1つ以上のバルブパラメータに対する複数のバルブのそれぞれのバルブパラメータ値の指標を、バルブのそれぞれのバルブパラメータ値に関連して、時系列的
な描写で表示するために、ユーザインターフェースに提供することと、を含む、態様52~60のいずれか1つに記載の方法。
【0238】
62.態様27~38のいずれか1つに記載の方法と組み合わせた、態様52~61に記載のいずれか1つの方法。
【0239】
63.複数のバルブの健全性を検出するシステムであって、システムが、複数のバルブであって、それらのうちの少なくともいくつかがプロセスプラント内で動作して工業プロセスを複数のバルブと、
【0240】
1つ以上のコンピューティングデバイスであって、1つ以上のプロセッサと、通信部ユニットと、1つ以上のプロセッサ及び通信ユニットに結合された1つ以上の固定コンピュータ可読媒体であって、1つ以上のプロセッサによって実行されると、1つ以上のコンピューティングデバイスに、
【0241】
複数のバルブに対応するバルブデータを、複数のバルブに含まれる各々のバルブのそれぞれのバルブパラメータ値を含むバルブデータを、複数の時間のインスタンスにわたり1つ以上のバルブバルブパラメータに対して受信することと、各々のバルブのそれぞれのバルブパラメータ値を分析して、各々のバルブの全体的なデバイス健全性パラメータ値を判定することと、複数のバルブの全体的なデバイス健全性パラメータ値の比較に基づいて、各々のバルブのそれぞれの相対的健全性指標を判定することと、各々のバルブのそれぞれの相対的健全性インジケータを、ユーザインターフェース、データ格納エンティティ、または実行中のアプリケーションのうちの少なくとも1つに提供することと、をさせる命令をその上に格納する、固定コンピュータ可読媒体と、を含む、システム。
【0242】
64.複数のバルブのそれぞれの相対的健全性インジケータが、複数のバルブの全体的なデバイス健全性パラメータ値に基づく複数のバルブのランク付けに基づいて判定され、複数のバルブのランク付けの指標が、各々のバルブの相対的な健全性インジケータと共に提供される、態様63に記載のシステム。
【0243】
65.各々のバルブのそれぞれのバルブパラメータ値の分析が、複数のバルブのバルブパラメータメトリックを生成するために、複数の時間のインスタンスにわたって各々のバルブのそれぞれのバルブパラメータ値の組み合わせを含み、各々のバルブに対するそれぞれの全体的なデバイス健全性パラメータの値が、各々のバルブのバルブパラメータメトリックに基づく、態様63~64のいずれか1つに記載のシステム。
【0244】
66.1つ以上のバルブパラメータに対する履歴バルブパラメータ値に基づいて生成された統計的モデルを、さらに含み、各々のバルブのそれぞれの全体的なデバイス健全性パラメータの値が、各々のバルブのバルブパラメータメトリックを統計的モデルに適用することによって判定される、態様63~65のいずれか1つに記載のシステム。
【0245】
67.履歴バルブパラメータ値の各々が、対応するバルブの対応するデバイス健全性スコアと関連し、統計的モデルが、履歴バルブパラメータ値に関連する対応するデバイス健全性スコアにさらに基づいて生成される、態様63~66のいずれか1つに記載のシステム。
【0246】
68.統計的モデルが、線形回帰、多項式回帰、ロジスティック回帰、ナイーブベイズ、決定木、ランダムフォレスト、ブースティング、最近傍、またはニューラルネットワークのうちの少なくとも1つを含む1つ以上の機械学習技術を使用して生成される、態様63~67のいずれか1つに記載のシステム。
【0247】
69.命令が、1つ以上のコンピューティングデバイスに、各々のバルブのそれぞれの相対的健全性インジケータに基づいて各々のバルブの状態を検出させ、各々のバルブの検出された状態の指標をユーザインターフェースに送信させるようにさらに実行可能である、態様63~68のいずれか1つに記載のシステム。
【0248】
70.各々のバルブの検出された状態が、各々のバルブにおける、性能メトリック、エラー、漏れ、不動帯、または機械的摩耗のうちの少なくとも1つを含む、態様63~69のいずれか1つ記載のシステム。
【0249】
71.プロセスプラントのネットワークと1つ以上のコンピューティングデバイスとの間の双方向通信を防止するように構成されたデータダイオードをさらに備え、バルブデータが、データダイオードを介してプロセスプラントから1つ以上のコンピューティングデバイスへの転送のためにセキュリティ保護される、態様63~70のいずれか1つに記載のシステム。
【0250】
72.1つ以上のコンピューティングデバイスが、クラウドコンピューティングシステムに含まれる、態様63~71のいずれか1つに記載のシステム。
【0251】
73.命令が、1つ以上のコンピューティングデバイスに、複数のバルブのそれぞれのバルブパラメータ値の指標を、複数の時間のインスタンスにわたって1つ以上のバルブパラメータに対して生成させ、複数の時間のインスタンスにわたる1つ以上のバルブパラメータに対する複数のバルブのそれぞれのバルブパラメータ値の指標を、時系列表示で表示するためにユーザインターフェースに提供させるようにさらに実行可能である、態様63~72のいずれか1つに記載のシステム。
【0252】
74.態様52~62のいずれか1つに記載のシステムを遂行するようにさらに構成される、態様63~73のいずれか1つに記載のシステム。
【0253】
75.態様1~74の他のいずれか1つに記載の方法またはシステムと組み合わせた、態様1~74のいずれか1つに記載の方法またはシステム。
【0254】
ソフトウェアとして実行される場合、本明細書において記載されるアプリケーション、サービス、及びエンジンのいずれも、磁気ディスク、レーザディスク、固体メモリデバイス、分子メモリ格納デバイス、または他の格納媒体のような任意の有形の固定のコンピュータ可読メモリに格納することができ、コンピュータまたはプロセッサのRAMまたはROMなどに格納することができる。本明細書において開示される例示的なシステムは、構成要素の中でもとりわけ、ハードウェア上で実行されるソフトウェア及び/またはファームウェアを含むものとして開示されているが、このようなシステムは、単なる例示に過ぎず、限定的に考えられてはならないことに留意されたい。例えば、これらのハードウェア構成要素、ソフトウェア構成要素、及びファームウェア構成要素のいずれか、またはすべてが、ハードウェアとして排他的に搭載される、ソフトウェアとして排他的に搭載される、またはハードウェア及びソフトウェアの任意の組み合わせとして搭載されるような構成が想到される。したがって、当該技術分野の当業者であれば、提供されるこれらの例が、このようなシステムを実現するための唯一の方法ではないことを容易に理解できるであろう。
【0255】
以上、本発明を例示のみを意図したものであって発明の限定を意図したものではない特定の例を参照して説明したが、発明の趣旨及び範囲を逸脱することなく、開示された実施形態に変更、追加、または削除を行ってよいことは、当該技術分野における当業者には明
らかであろう。