(58)【調査した分野】(Int.Cl.,DB名)
前記監査対象アラームに対応する前記プロセス制御システム内の前記コンポーネントを前記特定することが、前記監査レポートリクエストのうちの前記1つに含まれる前記アラーム監査パラメータに基づいて、前記コンポーネントに対応するコンポーネント識別子をシステムエンジニアリングデータベースから取り出すことをさらに含む、請求項1又は請求項2に記載の方法。
前記監査レポートを前記生成することが、前記応答内に含まれるランタイムアラーム定義とアラーム定義データベース内に記憶された対応する設計時アラーム定義との間の相違点を比較することをさらに含む、請求項1〜請求項3の何れか1項に記載の方法。
前記監査レポートを前記生成することが、前記コンポーネントから受信した前記応答に基づいて前記コンポーネントの動作状態を判定することをさらに含む、請求項1〜請求項4の何れか1項に記載の方法。
前記プロセス制御システム内の前記コンポーネントが、フィールドデバイス、I/Oデバイス、またはコントローラのうちの少なくとも1つを含む、請求項6に記載の装置。
前記監査対象アラームに対応する前記プロセス制御システム内の前記コンポーネントを前記特定することが、前記監査レポートリクエストのうちの前記1つに含まれる前記アラーム監査パラメータに基づいて、前記コンポーネントに対応するコンポーネント識別子をシステムエンジニアリングデータベースから取り出すことをさらに含む、請求項6又は請求項7に記載の装置。
前記監査レポートを生成するために、前記レポート生成器が、前記応答内に含まれるランタイムアラーム定義とアラーム定義データベース内に記憶された対応する設計時アラーム定義との間の相違点をさらに比較する、請求項6〜請求項8の何れか1項に記載の装置。
前記監査レポートを生成するために、前記レポート生成器が、前記コンポーネントから受信した前記応答に基づいて前記コンポーネントの動作状態をさらに判定する、請求項6〜請求項9の何れか1項に記載の装置。
実行されるとき、前記機械をもって、監査レポートリクエストを記憶する監査レポートリクエスト待機行列を維持させるものをさらに含む、請求項11に記載のコンピュータ読み取り可能な有形記憶媒体。
前記監査対象アラームに対応する前記プロセス制御システム内の前記コンポーネントを特定するために、実行されるとき、前記機械をもって、前記監査レポートリクエストのうちの前記1つに含まれる前記アラーム監査パラメータに基づいて、前記コンポーネントに対応するコンポーネント識別子をシステムエンジニアリングデータベースから取り出させる前記命令、請求項11又は請求項12に記載のコンピュータ読み取り可能な有形記憶媒体。
前記アラーム監査パラメータが、複数の前記コンポーネントを含む前記プロセス制御システム内の定義された領域を指定する、請求項11〜請求項13の何れか1項に記載のコンピュータ読み取り可能な有形記憶媒体。
前記監査レポートを生成するために、前記命令が、実行されるとき、前記機械をもって、前記応答内に含まれるランタイムアラーム定義とアラーム定義データベース内に記憶された対応する設計時アラーム定義との間の相違点をさらに比較させる、請求項11〜請求項14の何れか1項に記載のコンピュータ読み取り可能な有形記憶媒体。
【発明を実施するための形態】
【0007】
本開示は、一般的にはプロセス制御システムに関し、より具体的にはプロセス制御アラームの監査のための方法及び装置に関する。プロセス制御システムは、コントローラと相互に作用して制御システム内に配置されたフィールドデバイスを管理するルーチン、制御戦略、及び/またはアルゴリズムを遂行するプロセス制御アプリケーションを実行するワークステーション及び/またはサーバを含む。フィールドデバイスは、例えば、弁、弁ポジショナ、スイッチ、及び送信器であってもよく、弁の開閉及びプロセス制御パラメータの測定等のプロセス制御機能を遂行してもよい。フィールドデバイスを管理することに加えて、コントローラは、フィールドデバイスから受信した情報に基づいてプロセスデータ(例えば、プロセス制御情報)を生成してもよい。プロセスデータとしては、プロセス統計、アラーム、監視情報、プロセス動向情報、診断情報、フィールドデバイスステータス情報、及び/またはフィールドデバイスからのメッセージが含まれてもよい。
【0008】
プロセス制御アラームは、フィールドデバイスによって測定されるパラメータを監視し、プロセス制御システム内の設計限界を超える、またはまもなく超える条件をオペレータに警告する。例えば、温度プローブは、気体がプロセス制御システムの次のフェーズに入る前に、その気温を測定してもよい。このような例では、第1のプロセス制御アラームは、気体の温度が250℃を超えるならば検知するように設定されてもよく、第2のプロセス制御アラームは、気体の温度が225℃を超えるならば検知するように設定されてもよい。パラメータがアラーム条件を超える場合、プロセス制御アラームには、例えばプロセス制御システムに対する影響に基づいて、優先度も付与されてもよい。アラームに対する反応も、ログファイル内へのログ記録から、オペレータに対する聴覚的及び/または視覚的合図まで、プロセス制御システムの緊急シャットダウンまで、それらの優先度に基づいて変化する。例えば、第1のプロセス制御アラームは、高苛酷度を付与され、プロセス制御システムに接続されたワークステーションで聴覚的及び視覚的アラームを始動させてもよい一方、第2のプロセス制御アラームは、中度の苛酷度を付与され、プロセス制御システムに接続されたワークステーションで視覚的アラームを始動させてもよい。
【0009】
プロセス制御アラームは、システムエンジニアによって構成され、アラーム定義データベース内に維持される。本明細書で使用される場合、設計時プロセス制御アラーム定義は、システムエンジニアによって設計されたプロセス制御定義である。プロセス制御アラームの構成は、ランタイム間に、オペレータ及び/またはプロセス制御論理によって変更されてもよい。本明細書で使用される場合、ランタイムプロセス制御アラーム定義は、フィールドデバイス及び/またはプロセス制御システムのコントローラによって記憶されたプロセス制御アラーム定義である。例えば、フィールドデバイスによって測定されるあるパラメータの正常動作条件が、該測定されるパラメータにおける正常な変動がプロセス制御アラームをトリガーするほど、プロセス制御アラームの限界値に近接する場合がある。このような例では、オペレータ及び/またはプロセス制御論理は、プロセス制御アラームの設定を変更して、プロセス制御アラームがトリガーされる頻数を低減してもよい。フィールドデバイスがプロセス制御システムに追加された当初は、フィールドデバイス内に記憶されたランタイムプロセス制御アラーム定義は、設計時プロセス制御アラーム定義と同一である。
【0010】
ランタイムプロセス制御アラーム定義は、随時(例えば、定期的に、非定期的に等)監査される。一部の実施例では、プロセス制御アラーム監査は、ランタイムプロセス制御アラーム定義と対応する設計時プロセス制御アラーム定義との間の相違点を判定する。追加的に、オペレータ及び/またはプロセス制御論理は、プロセス制御アラームを棚上げすること(例えば、ある期間にわたる一時的に無効化)によって、またはプロセス制御アラームを非稼働にすること(例えば、プロセス制御アラームを、それが再有効化されるまで、無効化すること)によって、ランタイム間にプロセス制御アラームを停止してもよい。例えば、オペレータ及び/またはプロセス制御論理は、チャタリングを発生させるプロセス制御アラームを棚上げしてもよい。別の実施例として、オペレータ及び/またはプロセス制御論理は、プロセス制御システムの対応する部分がメンテナンス中である間、プロセス制御アラームを非稼働にしてもよい。
【0011】
慣例上、プロセス制御アラームは、プロセス制御システム内のOPCサーバにアクセスするオープンプラットホームコミュニケーションズ(OPC)クライアントアプリケーションを介して監査される。OPCは、プロセス制御システムのための標準化通信プロトコルである。OPCクライアントは、OPCクライアントがOPCサーバにリクエストできる、承認されたプロセス制御設定のリストにアクセスすることができる。しかしながら、OPCプロトコルは、プロセス制御システムの性能に著しい影響を与える。結果として、OPCベースのシステムは、監査され得るプロセス制御アラームの数及び種別を限定している。
【0012】
以下に開示される実施例では、プロセス制御システムは、プロセス制御システム内のアラームハンドラを含む。アラームハンドラは、ランタイムに修正され得るアラーム特性を点検する(例えば、オペレータ及び/またはプロセス制御論理によって)。アラームハンドラの例は、プロセス制御バス(例えば、HART(登録商標)及び/またはFOUNDATION(商標)フィールドバス等)を通じてコントロール及びフィールドデバイスに通信し、かつ/またはフィールドデバイスに送られる監査クエリのタイミング及び/または優先度を管理する。一部の実施例では、アラームハンドラは、コントローラ及び/またはフィールドデバイスに送られる監査クエリを低優先度として指定する。このような手法で、コントローラ及び/またはフィールドデバイスは、コントローラ及び/またはフィールドデバイスが高優先度のタスク(例えば、アラーム条件をホストに通信すること)を処理していないとき、監査リクエストを処理する。以下に開示される一部の実施例では、アラームハンドラは、監査レポートリクエストの受領に基づいて、かつ/または計画的な監査レポートリクエストに基づいて、監査クエリを送る。代替的に、または追加的に、一部の実施例では、アラームハンドラは、随時(例えば、毎日、毎週等)監査クエリを送る。
【0013】
以下に開示される一部の実施例では、アラームハンドラは、監査レポートリクエストを管理して、システム資源(例えば、プロセッサ負荷、プロセス制御システム帯域等)に過負荷を与えることを防止してもよい。このような一部の実施例では、アラームハンドラは、監査レポートリクエストを待機行列内に入れて、プロセス制御システム内のフィールドデバイス及び/またはコントローラに同時に送られる監査クエリの数を制御する。このような手法で、アラームハンドラは、フィールドデバイス及び/またはコントローラに送られる監査クエリを制御して、意図的または非意図的なサービス妨害型の攻撃(例えば、システム資源が監査レポートリクエストを処理するために使用されるためにプロセス制御システムの低下を引き起こすような、大量の、及び/または頻繁な監査レポートリクエストを送ること)を防止する。
【0014】
以下に開示される実施例では、アラームハンドラは、相違点レポート及び/またはランタイムレポートを提供する。相違点レポートを生成するために、アラームハンドラは、ランタイムプロセス制御アラーム定義と設計時プロセス制御アラーム定義とを比較する。相違点レポートは、定義間の相違点を報告し、かつ/またはプロセス制御アラームが停止されているか否か報告する。ランタイムレポートは、現在の限界値、現在の停止状態(例えば、棚上げ、非稼働、非停止)、有効化状態(例えば、有効または無効)、優先度等の、ランタイムプロセス制御アラーム定義内の情報を報告する。一部の実施例では、アラームハンドラは、監査対象アラームに関連付けられたフィールドデバイス及び/またはコントローラの動作状態(例えば、アイドル、運転中、シャットダウン等)を報告する。例えば、監査レポートリクエストが弁コントローラに関連付けられた監査対象アラームを指定しているとき、アラームハンドラは、弁コントローラがシャットダウンされていることを表示してもよい。
【0015】
以下に開示される一部の実施例では、アラームハンドラは、相違点レポート及び/またはランタイムレポートを標準化された形式(例えば、デリミタ区切り値(DSV)形式、ハイパーテキストマークアップ言語(HTML)形式、拡張マークアップ言語(XML)形式、JavaScript
(登録商標) Object Notation(JSON)形式等)で提供してもよい。一部の実施例では、アラームハンドラは、相違点レポート及び/またはランタイムレポートをスタイルシート(例えば、XMLスタイルシート等)に従ってフォーマットしてもよい。一部の実施例では、アラームハンドラは、相違点レポート及び/またはランタイムレポートを監査レポートリクエストによって指定されたネットワーク上の場所に保存してもよい。
【0016】
以下に開示される実施例では、アラームハンドラは、監査対象アラームのサブセットを指定するアラーム監査リクエストを受け入れる。一部の実施例では、監査レポートリクエストは、監査対象プロセス制御アラームの優先度及び/または種別を指定してもよい。例えば、監査レポートリクエストは、アラームハンドラ監査プロセス制御アラームにリクエストしてもよく、温度プローブに対応する「重大」の優先度レベルで指定する。一部の実施例では、監査レポートリクエストは、対応するプロセス制御アラームが監査されるべき、コントローラ及び/またはフィールドデバイスのサブセットを指定してもよい。このような一部の実施例では、コントローラ及び/またはフィールドデバイスのサブセットは、論理的及び/または地理的な区分(例えば、領域)にまとめられてもよい。このような実施例では、コントローラ及び/またはフィールドデバイスの特定のサブセットを指定するアラーム監査リクエストを受信したとき、アラームハンドラは、システムエンジニアリングデータベースに基づいて、どのコントローラ及び/またはフィールドデバイスならびにどのプロセス制御アラームを監査するか決定する。例えば、監査レポートリクエストは、MATERIAL_PREP_AREAタグと関連付けられた領域を指定してもよい。このような一実施例では、アラームハンドラは、どのプロセス制御アラームがシステムデータベース内でMATERIAL_PREP_AREAタグと関連付けられているか判定し、次に、ランタイムプロセス制御アラーム定義を対応するコントローラ及び/または対応するフィールドデバイスにリクエストしてもよい。
【0017】
以下に開示される一部の実施例では、アラームハンドラは、コマンドラインスイッチを含む監査レポートリクエストを受け入れる。本明細書で使用される場合、コマンドラインスイッチとは、監査レポートリクエストを生成するコマンドに対する引数であり、監査レポートリクエストを修正する。例えば、コメントラインスイッチは、予め定義された監査レポートリクエスト、レポート(複数可)を保存するネットワーク上の場所、監査対象アラームのサブセット、監査対象プロセス制御アラームの優先度及び/または種別(例えば、温度プローブアラーム、システムアラーム、プロセスアラーム等)等を指定してもよい。
【0018】
図1は、本明細書に記載されているようなアラームハンドラ102を含むプロセス制御システムの例100を図示している。プロセス制御システムの例100は、フィールドバス104(HART(登録商標)及び/またはFOUNDATION(商標)フィールドバス等)、高速分離型バス、組み込み型高度制御、ならびに高度ユニット及びバッチ管理を含む1つまたは複数のスマートプラント能力を統合した工場プロセス制御アーキテクチャを用いている。フィールドバス104は、プロセス制御システム100内部のフィールドデバイス106をネットワーク化し、デバイスの管理、構成、監視、及び診断等を含む様々なアプリケーションのためのインフラストラクチャを提供する。
【0019】
プロセス制御システムの例100は、フィールドデバイスの例106、コントローラ(複数可)の例108、I/Oデバイスの例110、及びホストの例112を含む。フィールドデバイスの例106は、プロセスを制御及び/または監視し、例えば、弁、センサ、近接スイッチ、電動機始動装置、駆動装置等を含んでもよい。図示されている実施例では、フィールドデバイス106は、I/Oデバイス110に交換可能に連結され、I/Oデバイスの例110は、フィールドデバイスの例106との通信を促進する。I/Oデバイスの例110は、様々なモジュールが(例えば、デジタル及び/またはアナログ通信を介して)様々なフィールドデバイス106と通信するのを支援する。例えば、I/Oデバイス110は、3線式温度プローブとインターフェース接続するためのアナログモジュール及びデジタル弁コントローラとインターフェース接続するためのデジタルモジュールを有してもよい。I/Oデバイスの例110は、フィールドデバイス106からデータを受信し、コントローラの例108によって処理され得る通信へデータを変換する。追加的に、I/Oデバイスの例110は、コントローラの例108からのデータ及び/または通信を、フィールドデバイス106によって処理され得る形式に変換する。一部の実施例では、I/Oデバイス110及びコントローラ(複数可)108は、1つのユニットに組み合わされている。
【0020】
図示されている実施例では、プロセス制御システム100は、I/Oデバイス110、フィールドデバイス106、及び/またはコントローラ108を収容する領域114a、114bに分割され、プロセス制御システム100のサブセットを形成する。領域の例114a、114bは、プロセス制御システム100を、含まれているI/Oデバイス110、フィールドデバイス106、及び/またはコントローラ108の間の論理的及び/または地理的関係に基づいて分割する。例えば、領域114aは、原材料の処理に関係するI/Oデバイス110、フィールドデバイス106、及び/またはコントローラ108用に定義されてもよい。別の実施例として、領域114bは、製造工場のクリーンルーム内に収容されたフィールドデバイス106及び関連付けられたI/Oデバイス110用に定義されてもよい。
【0021】
コントローラの例108は、有線または無線ネットワーク(例えば、LAN、WAN、インターネット等)を介してホスト112(例えば、ワークステーション及び/またはサーバ)に連結される。コントローラの例108は、例えば、監視アプリケーション、アラーム管理アプリケーション、プロセス動向及び/または履歴アプリケーション、診断アプリケーション、パッチ処理及び/またはキャンペーン管理アプリケーション、統計アプリケーション、映像ストリーミングアプリケーション、高度制御アプリケーション、安全計装アプリケーション、イベントアプリケーション等を含むプロセス制御アプリケーションのためのフィールドデバイス106からの出力に基づいて、プロセスデータを計算するルーチンを制御する。コントローラ108は、定期的間隔で、かつ/またはプロセスデータを処理または生成させるたびに、プロセスデータをホスト112に転送する。コントローラ108によって送信されるプロセスデータには、プロセス制御値、データ値、アラーム情報、テキスト、ブロックモード要素ステータス情報、診断情報、エラーメッセージ、パラメータ、イベント、及び/またはデバイス識別子が含まれてもよい。
【0022】
図1に図示されている実施例では、ホスト112は、プロセス制御アプリケーションを実行する。プロセス制御アプリケーションは、コントローラの例108と通信して、フィールドデバイス106を監視、制御、及び/または診断する。例えば、プロセス制御アプリケーションとしては、制御自動化、プロセス制御システム100のグラフ表示、変更管理、プロセス制御編集、データ収集、データ分析等が挙げられ得る。一部の実施例では、ホスト112に接続された表示器は、プロセス制御アプリケーションをユーザインターフェースを介して表示してプロセスデータをグラフ形式で描画し、ホスト112のユーザが(アプリケーションを介して)フィールドデバイス106によって生成されたプロセスデータをグラフとして見ることを可能にする。一部の実施例では、プロセス制御アプリケーションがサーバ上で実行されているとき、オペレータは、ワークステーション116からホスト112への遠隔接続を確立してプロセス制御アプリケーションにアクセスしてもよい。
【0023】
追加的に、ホストの例112は、プロセス制御システム100内のプロセス制御アラームを監視する。一部の実施例では、ホスト112は、フィールドデバイスの例106及び/またはコントローラの例108からアラーム条件を表示する(例えば、フィールドデバイス106によって測定されるあるパラメータが、ランタイムプロセス制御アラーム定義内で定義されたしきい値を満たす(例えば、超える、下回る等))メッセージを受信する。プロセス制御アラームの表示を受信したことに応答して、ホスト112は、視覚的及び/または聴覚的アラートを例えばワークステーション116上で発生させてもよい。図示されている実施例では、フィールドデバイス106及び/またはコントローラ108は、特定のフィールドデバイス106及び/または特定のコントローラ108がアラーム条件を検出するために使用するランタイムプロセス制御アラーム定義を記憶する。
【0024】
ランタイムプロセス制御アラーム定義は、プロセス制御システム100のランタイム間に変更されてもよい。一部の実施例では、オペレータは、ランタイムプロセス制御アラーム定義の限界値を変更してもよい。例えば、オペレータは、チャタリングを発生させるプロセス制御アラーム(例えば、アラームパラメータが正常動作条件下で測定パラメータに近く、プロセス制御アラームを頻繁にトリガーさせる)の限界値を調節してもよい。追加的に、一部の実施例では、制御論理が、限界値を調節してもよい。例えば、フィールドデバイス106は、あるパラメータのベースライン値を経時的に確立して、そのパラメータの値に不意の急上昇があったときにアラームをトリガーする限界値を設定してもよい。一部の実施例では、オペレータは、プロセス制御アラームを棚上げすること(例えば、ある期間にわたって一時的に無効化すること)及び/またはプロセス制御アラームを非稼働にすること(例えば、再有効化されるまで、無効化すること)によって、プロセス制御アラームを停止(例えば、無効化)してもよい。
【0025】
図1の図示されている実施例では、プロセス制御システム100は、システムエンジニアリングデータベースの例118を含む。
図2は、例示的なプロセス制御システム100のコンポーネント(例えば、フィールドデバイス106、I/Oデバイス110、コントローラ108等)間の関係を特定する、システムエンジニアリングデータベース118内に記憶されたデータ構造の例200を描いている。
図2の図示されている実施例では、データ構造200は、フィールドデバイス識別子(ID)の例202、コントローラIDの例204、I/OデバイスIDの例206、及び領域タグの例208を含む。フィールドデバイス識別子の例202は、プロセス制御システムの例100内のフィールドデバイス106を一意的に識別する。コントローラIDの例204は、対応するフィールドデバイス106が通信可能に連結されたプロセス制御システムの例100内のコントローラ108を一意的に識別する。I/OデバイスIDの例206は、対応するフィールドデバイス106が通信可能に連結されたプロセス制御システムの例100内のI/Oデバイス110を一意的に識別する。領域タグの例208は、対応するフィールドデバイス106が付与されたプロセス制御システムの例100内の領域114a、114bを一意的に識別する。
【0026】
図1に図示されている実施例に戻ると、アラームハンドラの例102は、プロセス制御システム100内のプロセス制御アラームを監査する。プロセス制御アラームを監査するために、アラームハンドラ102は、監査クエリをフィールドバス104を介してフィールドデバイス106及び/またはコントローラ108に送る。監査クエリの例は、フィールドデバイス106及び/またはコントローラ108によって記憶されたプロセス制御アラーム定義(例えば、ランタイムプロセス制御アラーム定義)及び/またはステータス(例えば、有効、無効、停止等)をリクエストする。一部の実施例では、監査クエリは、フィールドデバイス106及び/またはコントローラ108の動作状態(例えば、アイドル、運転中、シャットダウン等)もリクエストする。アラームハンドラの例102は、監査クエリを処理することがフィールドデバイス106及び/またはコントローラ108の正常動作を妨げないときにフィールドデバイス106及び/またはコントローラ108が監査クエリを処理するように、監査クエリを低優先度として指定する。
【0027】
図示されているアラームハンドラの例102は、フィールドデバイス106及び/またはコントローラ108に送られた監査クエリの結果に基づいてレポートを生成する。一部の実施例では、アラームハンドラ102は、フィールドデバイス106及び/またはコントローラ108から受信したランタイムプロセス制御アラーム定義をアラーム定義データベース120内の対応する設計時プロセス制御アラーム定義と比較することによって、相違点レポートを生成する。追加的に、または代替的に、一部の実施例では、アラームハンドラ102は、フィールドデバイス106及び/またはコントローラ108から受信したランタイムプロセス制御アラーム定義及びそれらに関連付けられたステータスを報告するランタイムレポートを生成する。
【0028】
アラームハンドラの例102は、ワークステーション116から監査レポートリクエストを受信する。監査レポートリクエストは、どのプロセス制御アラームが監査されるべきか指定する。例えば、監査レポートリクエストは、MATERIAL_PREP_AREAタグに対応する領域114a、114bに関連付けられたプロセス制御アラームを監査すべきであると、指定してもよい。追加的に、監査レポートリクエストは、アラームハンドラの例102によってどの種別のレポート(例えば、ランタイムレポート、相違点レポート等)が生成されるべきか指定する。一部の実施例では、アラームハンドラ102は、コマンドラインスイッチ付きの監査レポートリクエストを受け入れる。コマンドラインスイッチは、監査レポートリクエストを修正する引数である。コマンドラインスイッチは、ワークステーション116上で実行されるアプリケーション(例えば、第三者アプリケーション等)が特定の監査レポートリクエストを、アラームハンドラ102内に統合されることなく、生成することを可能にする。アラームハンドラの例102が受け入れるコマンドラインスイッチの例が、下表1に示されている。
【表1】
【0029】
図示されている実施例では、監査レポートリクエストを受信した後、アラームハンドラ102は、どのプロセス制御アラームが監査されるべきか決定する。一部の実施例では、アラームハンドラ102は、プロセス制御システム100内のフィールドデバイス106及び/またはコントローラ108に関連付けられた全てのプロセス制御アラームを監査する。代替的に、一部の実施例では、アラームハンドラ102は、システムエンジニアリングデータベース118内に記憶されたデータ構造200及び/またはアラーム定義データベース120内に記憶されたプロセス制御アラーム定義に基づいて、監査レポートリクエストによって(例えば、コマンドラインスイッチを介して)指定されたプロセス制御アラームを監査する。例えば、PRODUCTION1_AREAタグによって指定された領域(例えば、領域114a)に関連付けられたプロセス制御アラームを監査レポートリクエストが指定する場合、アラームハンドラ102は、フィールドデバイスID202を「PRODUCTION1_AREA」領域タグ208に関連付けられたシステムエンジニアリングデータベース118から取り出す。
【0030】
一部の実施例では、アラームハンドラ102は、リクエストの待機行列を維持する。このような実施例では、アラームハンドラ102は、監査レポートリクエストに応答するために必要とされるプロセス制御システム100のプロセッサ及び帯域の資源を限定するために、新規の監査レポートリクエストをリクエストの待機行列上に置いて、監査レポートリクエストを取り扱う。例えば、アラームハンドラ102が監査レポートリクエストを高頻度で受信する場合(例えば、サービス妨害型の攻撃において)、アラームハンドラ102は、監査レポートリクエストをリクエストの待機行列上に置いて(または、一部の場合では、監査レポートリクエストの一部を削除して)リクエストを一度に1つずつ処理する。
【0031】
プロセス制御アラームを監査するために、アラームハンドラの例102は、監査クエリを生成して、フィールドバス104を介してフィールドデバイス106及び/またはコントローラ108に送る。アラームハンドラの例102は、プロセス制御システム100の性能が低下しないように、監査クエリを管理する。一部の実施例では、アラームハンドラ102は、より高い優先度を有するアクション(例えば、アラームメッセージ等)がある場合にフィールドデバイス106及び/またはコントローラ108が監査クエリに応答するのを遅延させるように、監査クエリを低優先度に指定する。一部の実施例では、アラームハンドラ102は、生成された監査クエリのためのリクエストの待機行列を維持する。このような実施例では、アラームハンドラ102は、監査クエリがフィールドデバイス106及び/またはコントローラ108に送られる頻数を制御する。
【0032】
図示されている実施例では、アラームハンドラ102は、監査クエリに対する応答を受信する。一部の実施例では監査クエリは低優先度に指定されるため、応答は、ある期間にわたってアラームハンドラ102によって受信されてもよい。図示されている実施例では、アラームハンドラ102は、どの監査クエリがどの監査レポートリクエストに関連付けられているか追跡する。アラームハンドラの例102は、アラームハンドラ102が監査レポートリクエストに関連付けられた監査クエリに対する応答を受信したとき、監査レポートリクエストに対応する監査レポートを生成する。一部の実施例では、複数の監査レポートリクエストから同じフィールドデバイス106及び/または同じコントローラ108に対する監査クエリが発生する場合、アラームハンドラ102は、フィールドデバイス106及び/またはコントローラ108に送られる監査クエリを複数の監査レポートリクエストに関連付ける。このような手法で、アラームハンドラ102は、フィールドデバイス106及び/またはコントローラ108が応答しなければならない監査クエリへの数を低減することによって、プロセス制御システム100の資源(例えば、処理サイクル、帯域等)を節約する。
【0033】
図3は、
図1のプロセス制御システム100内のプロセス制御アラームを監査する、
図1のアラームハンドラの例102の実装例を図示している。図示されているアラームハンドラの例102は、アラーム通信器の例300、クエリ生成器の例302、システム通信器の例304、及びレポート生成器306の例を含む。アラーム通信器の例300は、
図1のワークステーション116と連通している。一部の実施例では、アラーム通信器300は、インターネットプロトコル接続(例えば、伝送制御プロトコル/インターネットプロトコル(TCP/IP)等)を介してワークステーション116と通信する。一部の実施例では、アラーム通信器300は、コマンドライン入力を受け入れる。
【0034】
アラーム通信器の例300は、監査レポートリクエスト及び/または監査レポート定義を受信する。監査レポートリクエストの例は、関連付けられたプロセス制御アラームが監査されるべき、領域114a、114b(
図1)、コントローラ108(
図1)、I/Oデバイス110(
図1)、及び/またはフィールドデバイス106(
図1)を指定する。一部の実施例では、監査レポートリクエストは、どのプロセス制御アラームが監査されるべきかをさらに絞り込むフィルタオプションも含む。例えば、監査レポートリクエストは、「MXR_MAT1」フィールドデバイスID202(
図2)を有するフィールドデバイス106に関連付けられたプロセス制御アラームを指定してもよく、「有効」のフィルタ値を指定してもよい。
【0035】
監査レポート定義は、関連付けられたプロセス制御アラームが監査されるべき、領域114a、114b(
図1)、コントローラ108(
図1)、I/Oデバイス110(
図1)、及び/またはフィールドデバイス106(
図1)を指定する。一部の実施例では、監査レポート定義は、どのプロセス制御アラームが監査されるべきかをさらに絞り込むフィルタオプションも含む。監査レポート定義がアラーム通信器300によって受信されると、アラーム通信器の例300は、監査レポート定義をレポート定義データベースの例308内に記憶する。このような手法で、監査レポートリクエストは、どのプロセス制御アラームが監査されるべきかを指定する監査レポート定義をレポート定義データベース308内で指定してもよい。一部の実施例では、アラーム通信器300は、監査レポートリクエストに応答して生成された監査クエリの追跡を促進するために、受信された監査レポートリクエストにリクエストIDを付与する。
【0036】
図示されている実施例では、クエリ生成器302は、監査レポートリクエストをアラーム通信器300から受信するか、そうでなければ取り出す。クエリ生成器の例302は、どのプロセス制御アラームが監査されるべきか決定し、監査対象アラームに関連付けられたフィールドデバイス106及び/またはコントローラ108に送られるべき監査クエリを生成する。どの監査クエリを生成するか決定するために、クエリ生成器の例302は、どのフィールドデバイス106及び/またはコントローラ108が監査レポートリクエストによって指定されているか判定する。図示されている実施例では、クエリ生成器302は、監査レポートリクエスト内に指定された領域114a、114b、コントローラ108、I/Oデバイス110、及び/またはフィールドデバイス106に対応するフィールドデバイスID202(
図2)及び/またはコントローラID204(
図2)をシステムエンジニアリングデータベース118(
図1)から取り出す。例えば、監査レポートリクエストが特定の領域タグ208(
図2)を指定している場合、クエリ生成器302は、領域タグ208に関連付けられたフィールドデバイスID202及び/またはコントローラID204(
図2)をシステムエンジニアリングデータベース118から取り出す。一部の実施例では、監査クエリは、アラーム通信器300によって監査レポートリクエストに付与されたリクエストIDに関連付けられている。
【0037】
図3の図示されている実施例では、システム通信器304は、監査対象プロセス制御アラームを有するフィールドデバイス106及び/またはコントローラ108への監査クエリの送信を管理するステータス更新待機行列を維持する。クエリ生成器302が監査クエリを生成した後、システム通信器304は、監査クエリをステータス更新待機行列上に置く。一部の実施例では、ステータス更新待機行列内の監査クエリに対応するクエリ生成器302から、システム通信器304がその後に監査クエリ(例えば、ステータス更新待機行列内にすでにある監査クエリと同じフィールドデバイス106及び/または同じコントローラ108宛ての監査クエリ)を受信する場合、システム通信器304は、その2つの監査クエリを組み合わせる。このような一部の実施例では、2つの監査クエリを組み合わせるために、システム通信器304は、受信された監査クエリに対応するリクエストIDを、すでにステータス更新待機行列内にあった監査クエリと関連付ける。
【0038】
システム通信器の例304は、プロセス制御システム100の動作を妨げないように、フィールドバス104を通した監査クエリの送信を管理する。一部の実施例では、システム通信器304は、ステータス更新待機行列上の監査クエリがそれぞれのフィールドデバイス106及び/またはそれぞれのコントローラ108に送られる頻度を制御する。追加的に、または代替的に、一部の実施例では、システム通信器304は、監査クエリを低優先度メッセージとして指定する。システム通信器の例304は、フィールドデバイスの例106から受信された、プロセス制御アラーム定義を包含する監査応答を追跡する。図示されている実施例では、システム通信器304は、監査応答をレポート生成器の例306に転送する。
【0039】
図示されている実施例では、レポート生成器306は、監査レポートリクエストをクエリ生成器の例302から受信するか、そうでなければ取り出す。監査レポートリクエストは、レポート生成器306が作成すべき監査レポートの種類(例えば、ランタイムレポート、相違点レポート等)を指定する。レポート生成器の例306は、監査応答をシステム通信器304から受信する。監査応答の例は、対応するフィールドデバイス106によって使用されるランタイムプロセス制御アラーム定義を含む。一部の実施例では、監査応答は、フィールドデバイス106が監査クエリに応答する際、ある期間にわたって受信される。このような一部の実施例では、レポート生成器306は、どの監査応答がリクエストされているか追跡する(例えば、クエリ生成器302から受信される監査レポートリクエストに基づいて)。レポート生成器の例306が監査レポートリクエストに対する監査応答を受信すると、レポート生成器の例306は、監査レポートを生成する。一部の実施例では、レポート生成器306は、監査応答を受信するために、ある期間(例えば、6時間、1日、1週間等)待機する。このような実施例では、その期間が満了したとき、レポート生成器306は、対応する監査応答が受信されなかったプロセス制御アラームに関するエラーメッセージを含む監査レポートを生成する。
【0040】
ランタイムレポートを生成するために、レポート生成器306は、フィールドデバイス106からの監査応答をとりまとめ、監査レポートリクエストに含まれている場合はフィルタ値を適用する。例えば、監査レポートリクエストが、停止されているプロセス制御アラームを除外するためのフィルタを指定している場合、レポート生成器306は、対応するプロセス制御アラームが停止されている(例えば、棚上げ、非稼働等)ことを表示する監査応答を取り除く。
【0041】
一部の実施例では、監査レポートリクエストは、ランタイムレポートを指定する。
図4は、レポート生成器306によって生成されたランタイムレポートの例400を図示している。図示されている実施例では、ランタイムレポート400は、ランタイムレコード401を含む。ランタイムレコードの例401は、ランタイムプロセス制御定義内の情報及びプロセス制御アラームの停止に関する情報を含む。図示されている実施例では、ランタイムレコード401は、プロセス制御アラーム経路の例402、優先度インジケータの例404、有効フラグの例406、限界値の例408、停止理由の例410、停止タイムアウト値の例412、棚上げ停止フラグの例414、及び非稼働停止フラグの例416を含む。図示されている実施例では、ランタイムレポート400は、どのフィルタが監査レポートリクエスト内に含まれていたかを表示するフィルタ値418を含む。図示されている実施例では、プロセス制御アラーム経路は、それぞれのプロセス制御アラームに関連付けられた領域タグ208、コントローラID204、及びプロセス制御アラームIDを表示する。優先度インジケータの例404は、それぞれのプロセス制御アラームの優先度レベルを表示する。例示的な有効フラグの例406は、プロセス制御アラームが有効か(例えば、有効であることを表示する値)または無効か(例えば、無効であることを表示する値)を表示する。限界値の例408は、プロセス制御アラームをトリガーするランタイム限界値を表示する。停止理由の例410は、それぞれのプロセス制御アラームが停止されている理由の簡潔な説明を含む。停止タイムアウト値の例412は、プロセス制御アラームが棚上げ解除されるまでの時間を表示する。棚上げ停止フラグの例414は、対応するプロセス制御アラームが棚上げされているか否か表示する非稼働停止フラグの例416は、対応するプロセス制御アラームが非稼働か否か表示する。
【0042】
一部の実施例では、監査レポートリクエストは、相違点レポートを指定する。相違点レポートを生成するために、
図3のレポート生成器306は、システム通信器304から受信された監査応答に含まれるランタイムプロセス制御アラーム定義に対応する設計時プロセス制御アラーム定義を、アラーム定義データベース120から取り出す。レポート生成器の例306は、ランタイムプロセス制御アラーム定義と設計時プロセス制御アラーム定義との間の相違点を判定する。
【0043】
図5は、レポート生成器の例306によって生成された相違点レポートの例500を図示している。図示されている実施例では、相違点レポート500は、ランタイムプロセス制御アラーム定義と設計時プロセス制御アラーム定義との間の相違点の概要502を含む。相違点レポートの例500は、相違点レコードの例503を含む。図示されている実施例では、相違点レコード503は、プロセス制御アラーム経路の例402、属性フィールドの例504、設計時フィールドの例506、ランタイムフィールドの例508、及び追加的データフィールドの例510を含む。図示されている実施例では、プロセス制御アラーム経路402は、領域タグ208、コントローラID204、及びそれぞれのプロセス制御アラームに関連付けられたプロセス制御アラームIDを表示する。属性フィールドの例504は、どの属性(例えば、優先度インジケータ404、有効フラグ406、限界値408等)がランタイムプロセス制御アラーム定義と設計時プロセス制御アラーム定義との間で異なるか表示する。
【0044】
図5に図示されているように、ランタイムプロセス制御アラーム定義と対応する設計時プロセス制御アラーム定義との間で、属性フィールド504によって表示されているように、2つ以上の属性が相違する場合、プロセス制御アラーム(例えば、プロセス制御経路402によって表示されるような)は、相違点レポート500上で2回以上表示されてもよい。設計時フィールドの例506は、属性フィールド504によって表示される属性の設計時プロセス制御アラーム定義に対応する値を保持する。ランタイムフィールドの例508は、属性フィールド504によって表示される属性のランタイムプロセス制御アラーム定義に対応する値を保持する。追加的データフィールドの例510には、ランタイムプロセス制御アラーム定義のうち他の態様(例えば、停止理由410から、停止タイムアウト値412、棚上げ停止フラグ414、非稼働停止フラグ416等)が含まれる。例えば、プロセス制御アラームが停止されていることをランタイムプロセス制御アラーム定義が表示するとき、レポート生成器は、追加的データフィールド510内に停止関連データを含める。図示されている実施例では、相違点レポート500は、どのフィルタが監査レポートリクエストに含まれていたか表示するフィルタ値418を含む。
【0045】
図3のレポート生成器306は、レポート(例えば、ランタイムレポート400、相違点レポート500等)を標準化された形式(例えば、DSV形式、HTML形式、XML形式、JSON形式等)で生成する。レポート生成器の例は、レポートをアラーム通信器の例300に転送する。一部の実施例では、アラーム通信器300は、生成されたレポートをワークステーション116に送る。代替的に、一部の実施例では、アラーム通信器300は、監査レポートリクエストによって指定されるネットワーク上の場所にレポートを保存する。
【0046】
図1のアラームハンドラの例102を実装する手法の例が
図3に図示されているものの、
図3に図示されている1つまたは複数の要素、プロセス、及び/またはデバイスは、任意の他の方法で組み合わせ、分割、再配置、省略、排除、及び/または実装されてもよい。さらに、アラーム通信器の例300、クエリ生成器の例302、システム通信器の例304、レポート生成器の例306、及び/またはより一般的に
図1のアラームハンドラの例102は、ハードウェア、ソフトウェア、ファームウェア、ならびに/またはハードウェア、ソフトウェア、及び/またはファームウェアの任意の組み合わせによって実装されてもよい。したがって、例えば、アラーム通信器の例300、クエリ生成器の例302、システム通信器の例304、レポート生成器の例306、及び/またはより一般的にアラームハンドラの例102のうちのいずれも、1つまたは複数のアナログもしくはデジタル回路(複数可)、論理回路、プログラマブルプロセッサ(複数可)、特定用途向け集積回路(複数可)(ASIC(複数可))、プログラマブル論理デバイス(複数可)(PLD(複数可))及び/またはフィールドプログラマブル論理デバイス(複数可)(FPLD(複数可))によって実装されてもよい。純粋にソフトウェア及び/またはファームウェアの実装を包含するために本特許の装置またはシステムの請求項のいずれかを読み取るとき、実施例、アラーム通信器の例300、クエリ生成器の例302、システム通信器の例304、及び/またはレポート生成器の例306のうちの少なくとも1つは、ソフトウェア及び/またはファームウェアを記憶したメモリ、デジタル汎用ディスク(DVD)、コンパクトディスク(CD)、Blu−ray
(登録商標)ディスク等の、コンピュータ読み取り可能な有形の記憶デバイスまたは記憶ディスクを含むと、ここに明示的に定義される。さらに、
図1のアラームハンドラの例102は、
図3に図示されているものに加えて、もしくはそれらの代わりに1つまたは複数の要素、プロセス、及び/もしくはデバイスを含んでもよく、かつ/または図示されている要素、プロセス、及びデバイスのうちのいずれか2つ以上もしくは全部を含んでもよい。
【0047】
図1及び3のアラームハンドラ102を実装するための方法の例を表す流れ図が、
図6及び7に示されている。この実施例では、方法は、
図8に関連して下述されるプロセッサプラットホームの例800内に示されているプロセッサ812等の、プロセッサによって実行されるためのプログラムを含む。プログラムは、CD−ROM、フロッピーディスク、ハードドライブ、デジタル汎用ディスク(DVD)、Blu−rayディスク、またはプロセッサ812に関連付けられたメモリ等の、コンピュータ読み取り可能な有形記憶媒体上に記憶されたソフトウェア内で具現化されてもよいが、プログラムの全部及び/またはその部分は、代替的に、プロセッサ812以外のデバイスによって実行されてもよく、かつ/またはファームウェアもしくは専用ハードウェア内で具現化されてもよい。さらに、プログラム(複数可)の例は、
図6及び7に図示されている流れ図を参照して説明されているものの、アラームハンドラの例102を実装する他の多くの方法が代替的に使用されてもよい。例えば、ブロックの実行順序は、変更されてもよく、かつ/または説明されているブロックのうちのいくつかは、変更、排除、もしくは組み合わせられてもよい。
【0048】
上述のように、
図6及び7の方法の例は、ハードディスク駆動装置、フラッシュメモリ、読み取り専用メモリ(ROM)、コンパクトディスク(CD)、デジタル汎用ディスク(DVD)、キャッシュ、ランダムアクセスメモリ(RAM)、及び/または任意の持続期間の間(例えば、長期間、永続的、短時間、一時的バッファ保持用、及び/または情報のキャッシュ保持用)情報が内部に記憶される任意の他の記憶デバイスもしくは記憶ディスク等の、コンピュータ読み取り可能な有形記憶媒体上に記憶された符号化命令(例えば、コンピュータ及び/または機械読み取り可能な命令)を使用して実装されてもよい。本明細書で使用される場合、「コンピュータ読み取り可能な有形記憶媒体」という用語は、任意の種類のコンピュータ読み取り可能な記憶デバイス及び/または記憶ディスクを含み、伝播信号を除外し、伝送媒体を除外すると明示的に定義される。本明細書で使用される場合、「コンピュータ読み取り可能な有形記憶媒体」及び「機械読み取り可能な有形記憶媒体」は、互換的に使用される。追加的に、または代替的に、
図6及び7の方法の例は、ハードディスク駆動装置、フラッシュメモリ、読み取り専用メモリ、コンパクトディスク、デジタル汎用ディスク、キャッシュ、ランダムアクセスメモリ、及び/または任意の持続期間の間(例えば、長期間、永続的、短時間、一時的バッファ保持用、及び/または情報のキャッシュ保持用)情報が内部に記憶される任意の他の記憶デバイスまたは記憶ディスク等の、コンピュータ及び/または機械読み取り可能な非一時的媒体上に記憶された符号化命令(例えば、コンピュータ及び/または機械読み取り可能な命令)を使用して実装されてもよい。本明細書で使用される場合、「コンピュータ読み取り可能な非一時的媒体」という用語は、任意の種類のコンピュータ読み取り可能な記憶デバイス及び/または記憶ディスクを含み、伝播信号を除外し、伝送媒体を除外すると明示的に定義される。本明細書で使用される場合、「少なくとも」という文言が請求項のプリアンブルで遷移用語として使用されるとき、それは、「含む(comprising)」という用語が制約のない語であるのと同様に、制約のない語である。
【0049】
図6は、
図1のプロセス制御システム100内のプロセス制御アラームを監査する
図1及び3のアラームハンドラ102を実装するために実行することができる方法の例600を表す流れ図である。最初に、ブロック602で、アラーム通信器300(
図3)が監査レポートリクエストを選択する。一部の実施例では、アラーム通信器300は、ワークステーション116(
図1)から受信された監査レポートリクエストを記憶するリクエスト待機行列を維持する。ブロック604で、クエリ生成器302は、ブロック602で選択された監査レポートリクエストに基づいて、監査されるべきプロセス制御アラームを有するフィールドデバイス106(
図1)を特定する。フィールドデバイス106を特定するために、クエリ生成器の例302は、監査レポートリクエストに含まれているコントローラID204、I/OデバイスID206、及び/または領域タグ208に対応するフィールドデバイスID202を取り出す。一部の実施例では、監査レポートリクエストは、特定のフィールドデバイスID(複数可)202を指定する。
【0050】
ブロック606で、クエリ生成器302は、ブロック604で特定されたフィールドデバイスID202に対応するフィールドデバイス106のうちの1つを選択する。ブロック608で、クエリ生成器302は、フィールドデバイスに対応する監査クエリがシステム通信器304によって維持されるステータス更新待機行列内にあるか否か判定する。このフィールドデバイスに対応する監査クエリがステータス更新待機行列内にない場合、プログラム制御は、ブロック610に進む。逆に、このフィールドデバイスに対応する監査クエリがステータス更新待機行列内にある場合、プログラム制御は、ブロック614に進む。ブロック610で、クエリ生成器302は、ブロック606で選択されたフィールドデバイス106によって記憶されたランタイムプロセス制御アラーム定義をリクエストする監査クエリを生成し、この監査クエリをブロック602で選択された監査レポートリクエストと(例えば、リクエストIDを介して)関連付ける。ブロック612で、システム通信器は、ブロック610で生成された監査クエリをステータス更新待機行列上に置く。
【0051】
ブロック614で、クエリ生成器302は、ステータス更新待機行列内の監査クエリをブロック602で選択された監査レポートリクエストと(例えば、リクエストIDを介して)関連付ける。このような手法で、ステータス更新待機行列内の監査クエリは、2つ以上の監査レポートリクエストと関連付けられてもよい。ブロック616で、クエリ生成器302は、監査クエリが生成されるべき別のフィールドデバイス106が存在するか否か判定する。監査クエリが生成されるべき別のフィールドデバイス106が存在する場合、プログラム制御は、ブロック606に戻る。逆に、監査クエリが生成されるべき別のフィールドデバイス106が存在しない場合、プログラム制御は、ブロック618に進む。ブロック618で、アラーム通信器300は、監査クエリが生成されるべき別の監査レポートリクエストが存在するか否か判定する。監査クエリが生成されるべき別の監査レポートリクエストが存在する場合、プログラム制御は、ブロック602に戻る。逆に、監査クエリが生成されるべき別の監査レポートリクエストが存在しない場合、プログラム制御は、ブロック620に進む。ブロック620で、システム通信器304は、監査ステータス更新待機行列内の監査クエリを対応するフィールドデバイスにフィールドバス104(
図1)を介して送信する。方法の例600は、そこで終了する。
【0052】
図7は、監査レポートを生成する
図1及び3のアラームハンドラ102を実装するために実行することができる、方法の例700を表す流れ図である。最初に、ブロック702で、レポート生成器306は、監査リクエストレポートを選択する。ブロック704で、レポート生成器306は、ブロック702で選択された監査レポートリクエストに関連付けられた監査応答を受信する。ブロック706で、レポート生成器306は、監査レポートリクエストに関連付けられた全ての監査応答が受信されたか否か判定する。監査レポートリクエストに関連付けられた全ての監査応答が受信されている場合、プログラム制御は、ブロック708に進む。逆に、監査レポートリクエストに関連付けられた全ての監査応答が受信されていない場合、プログラム制御は、ブロック704に戻る。
【0053】
ブロック708で、レポート生成器306は、ブロック702で選択された監査レポートリクエストに指定されているフィルタ値に基づいて監査応答を抽出する。例えば、レポートリクエストが、プロセス制御アラームが有効であるか否かに対応するフィルタ値を指定している場合、レポート生成器は、対応するプロセス制御アラームが無効であることを表示するランタイムプロセス制御アラーム定義を有する監査応答を除外する。ブロック710で、レポート生成器306は、監査レポートリクエストがランタイムレポートまたは相違点レポートを指定しているか否か判定する。監査レポートリクエストがランタイムレポートを指定している場合、プログラム制御は、ブロック712に進む。逆に、監査レポートリクエストが相違点レポートを指定している場合、プログラム制御は、ブロック714に進む。ブロック712で、レポート生成器306は、ブロック708でフィルタ抽出された監査応答内のランタイムプロセス制御アラーム定義に基づいて、ランタイムレポート(例えば、
図4のランタイムレポート400)を生成する。
【0054】
ブロック714で、レポート生成器306は、監査応答に含まれているランタイムプロセス制御アラーム定義を、アラーム定義データベース120内の対応する設計時プロセス制御アラーム定義と比較する。ブロック716で、レポート生成器306は、ランタイムプロセス制御アラーム定義と対応する設計時プロセス制御アラーム定義との間の相違点を含む相違点レポート(例えば、
図5の相違点レポート500)を生成する。例えば、ランタイムプロセス制御アラーム定義は、95という限界値(例えば、限界値408)を有してもよい一方、対応する設計時プロセス制御アラーム定義は、98という限界値を有する。このような一実施例では、レポート生成器は、設計時プロセス制御アラーム定義内のプロセス制御経路に対応するプロセス制御アラーム経路402、「限界値」という値を有する属性504、「98」の値を有する指定フィールド506、及び「95」の値を有するランタイムフィールド、を備える相違点レコード503(
図5)を含むであろう。
【0055】
ブロック718で、レポート生成器718は、監査レポートが生成されるべき別の監査レポートリクエストが存在するか否か判定する。監査レポートが生成されるべき別の監査レポートリクエストが存在する場合、プログラム制御は、702に戻る。逆に、監査レポートが生成されるべき別の監査レポートリクエストが存在しない場合、方法の例700は、終了する。
【0056】
図8は、
図6及び7の方法ならびに
図1及び3のアラームハンドラ102を実装する命令を実行できる、プロセッサプラットホームの例800のブロック図である。プロセッサプラットホーム800は、例えば、サーバ、ワークステーション、または任意の他の種類の計算装置であってもよい。
【0057】
図示されているプロセッサプラットホームの例800は、プロセッサ812を含む。図示されているプロセッサの例812は、ハードウェアである。例えば、プロセッサ812は、任意の所望のファミリまたは製造業者からの1つまたは複数の集積回路、論理回路、マイクロプロセッサ、またはコントローラによって実装されてもよい。図示されている実施例では、プロセッサ812は、アラーム通信器の例300、クエリ生成器の例302、システム通信器の例304、及びレポート生成器の例306を含むように構築される。
【0058】
図示されているプロセッサの例812は、ローカルメモリ813(例えば、キャッシュ)を含む。図示されているプロセッサの例812は、揮発性メモリ814及び不揮発性メモリ816を含む主メモリとバス818を介して連通している。揮発性メモリ814は、シンクロナス動的ランダムアクセスメモリ(SDRAM)、動的ランダムアクセスメモリ(DRAM)、RAMBUS動的ランダムアクセスメモリ(RDRAM)、及び/または任意の他の種類のランダムアクセスメモリデバイスによって実装されてもよい。不揮発性メモリ816は、フラッシュメモリ及び/または任意の他の所望の種類のメモリデバイスによって実装されてもよい。主メモリ814、816へのアクセスは、メモリコントローラによって制御される。
【0059】
図示されているプロセッサプラットホームの例800は、インターフェース回路820も含む。インターフェース回路820は、イーサネット
(登録商標)インターフェース、ユニバーサルシリアルバス(USB)、及び/またはPCIエクスプレスインターフェース等の、任意の種類のインターフェース規格によって実装されてもよい。
【0060】
図示されている実施例では、1つまたは複数の入力デバイス822が、インターフェース回路820に接続される。入力デバイス(複数可)822は、ユーザがデータ及びコマンドをプロセッサ812内に入力することを可能にする。入力デバイス(複数可)は、例えば、オーディオセンサ、マイクロホン、カメラ(静止画もしくは動画)、キーボード、ボタン、マウス、タッチスクリーン、トラックパッド、トラックボール、isopoint及び/または音声認識システムによって実装されてもよい。
【0061】
1つまたは複数の出力デバイス824も、図示されているインターフェース回路の例820に接続される。出力デバイス824は、例えば、表示器デバイス(例えば、発光ダイオード(LED)、有機発光ダイオード(OLED)、液晶表示器、陰極線管表示器(CRT)、タッチスクリーン、触覚出力デバイス、印刷機、及び/またはスピーカ)によって実装されてもよい。したがって、図示されている実施例のインターフェース回路820は、典型的にグラフィックスドライバカード、グラフィックスドライバチップ、またはグラフィックスドライバプロセッサを含む。
【0062】
図示されているインターフェース回路の例820は、送信器、受信器、トランシーバ、モデム及び/またはネットワークインターフェースカード等の、ネットワーク826(例えば、イーサネット接続、デジタル加入者線(DSL)、電話線、同軸ケーブル、携帯電話システム等)を介して外部機械(例えば、任意の種類の計算装置)とのデータの交換を促進する通信デバイスも含む。
【0063】
図示されているプロセッサプラットホームの例800は、ソフトウェア及び/またはデータを記憶するための1つまたは複数の大容量記憶デバイス828も含む。このような大容量記憶デバイス828の例としては、フロッピーディスク駆動装置、ハードドライブディスク、コンパクトディスク駆動装置、Blu−rayディスク駆動装置、RAIDシステム、及びデジタル汎用ディスク(DVD)駆動装置が挙げられる。
【0064】
図6及び/または7の方法を実装する符号化命令832は、大容量記憶デバイス828内に、揮発性メモリ814内に、不揮発性メモリ816内に、及び/またはCDもしくはDVD等の着脱可能なコンピュータ読み取り可能な有形記憶媒体上に、記憶されてもよい。
【0065】
上述のことから、上に開示された実施例は、プロセス制御システム内のプロセス制御アラームのための監査レポートを生成する一方で、プロセス制御システムのプロセッサ及び帯域の資源を管理することが理解されるであろう。上に開示されたアラームハンドラは、外部OPCベースのランタイムアラーム監査を使用して、プロセス制御システムのサイバー脅威に対するエクスポージャを低減する。一部の実施例では、上に開示されたアラームハンドラは、低レベル接続を使用し(例えば、フィールドバスを介して)、かつ複数の監査レポートリクエストを管理することによって、プロセス制御システムの処理及び帯域の資源に対する負担を低減する。
【0066】
追加的に、一部の実施例では、上に開示されたアラームハンドラは、監査可能なプロセス制御アラームの数を、ランタイムに修正可能なプロセス制御アラームへ拡張する。上に開示されたアラームハンドラの例は、監査レポートリクエストが、監査されるべきプロセス制御システムの特定の論理的及び/または地理的領域を指定することを可能にし、監査レポートリクエストが、所望のプロセス制御アラーム(例えば、環境保護または安全に関係するプロセス制御アラーム)を指定するフィルタ値を含めることを可能にする。
【0067】
本明細書では特定の方法の例、装置、及び製造物品が開示されたものの、本特許の包含範囲は、それらには限定されない。それどころか、本特許は、本特許の特許請求の範囲内に公正に属する全ての方法、装置、及び製造物品を包含する。