(57)【要約】【課題】プロセスプラントに配置された安全ネットワークで利用される安全ロジックモジュールシステムの提供。【解決手段】プロセスプラントに、プロセス制御機能を実行するプロセス制御入力／出力デバイスと、安全フィールドデバイスに接続されている安全ロジックソルバとに第一の通信バスを介して通信可能に接続されているプロセスコントローラを備え、安全ロジックモジュールシステムは、安全ロジックモジュールが格納されたコンピュータ読み取り可能メモリを備えている。安全ロジックソルバのプロセッサで安全ロジックモジュールが実行されると、一または複数の前記安全フィールドデバイスに対して安全機能を実行し、前記第一の通信バスに接続されている他の安全ロジックソルバ内の他の安全ロジックモジュールに第二の通信バスを介して通信し、前記プロセスコントローラおよび前記プロセス制御入力／出力デバイスと前記第一の通信バスを介して通信する。【選択図】図１
2008102954.tif 000002
【特許請求の範囲】
【請求項１】
プロセス制御機能を実行する一または複数のプロセス制御入力／出力デバイスと、一または複数の安全フィールドデバイスに接続されている安全ロジックソルバとに第一の通信バスを介して通信可能に接続されているプロセスコントローラを備えるプロセスプラントに配置されている安全ネットワークにおいて利用される安全ロジックモジュールシステムであって、
コンピュータ読み取り可能メモリと、
一または複数の前記安全フィールドデバイスに対して安全機能を実行し、前記第一の通信バスに接続されている他の安全ロジックソルバ内の他の安全ロジックモジュールに第二の通信バスを介して通信し、前記プロセスコントローラおよび前記プロセス制御入力／出力デバイスと前記第一の通信バスを介して通信するために、前記安全ロジックソルバのプロセッサにより実行されるように構成された、前記コンピュータ読み取り可能メモリに格納されている安全ロジックモジュールと
を備える安全ロジックモジュールシステム。
【請求項２】
前記プロセスプラントは、一または複数の安全ロジックソルバを有する第一のノードおよび第二のノードにおいて前記第一の通信バスを介して前記コントローラに通信可能に接続されている第一のメッセージ伝送デバイスと、該第一のメッセージ伝送デバイスに第三の通信バスを介して接続されている第二のメッセージ伝送デバイスとを備え、前記安全ロジックモジュールは、前記メッセージ伝送デバイスおよび前記第三の通信バスを介して、前記プロセスプラントの前記第二のノードにおける一または複数の前記安全ロジックソルバに通信するように構成されている
請求項１記載の安全ロジックモジュールシステム。
【請求項３】
前記安全ロジックモジュールは、前記第一の通信バスを介して前記コントローラまたは一または複数の前記プロセス制御入力／出力デバイスからのプロセス制御メッセージを受信しおよび読み取りし、前記第二の通信バスを介して他の安全ロジックソルバに配置されている他の安全モジュールからの安全メッセージを受信しおよび読み取りするようにさらに構成されている
請求項１記載の安全ロジックモジュールシステム。
【請求項４】
前記安全ロジックモジュールは、時間分割型多重通信スキームを用いて前記他の安全ロジックモジュールに前記第二の通信バスを介して通信するように構成されている
請求項１記載の安全ロジックモジュールシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にプロセスプラントにおいて用いられる安全システムに関するものであり、より詳細にはプロセスプラントのプロセス制御システムに組み込まれ、または統合される安全システムに関するものである。
【背景技術】
【０００２】
化学プロセス、石油プロセス、または他のプロセスにおいて利用されるプロセス制御システムは、アナログバス、デジタルバス、またはアナログとデジタルを組み合わせたバスを介して、少なくとも一つのホストワークステーションまたはオペレータワークステーションと一または複数のフィールドデバイスとに通信可能に接続された一または複数のプロセスコントローラを備えていることが一般的である。フィールドデバイスは、たとえば、バルブ、バルブポジショナ、スイッチ、およびトランスミッタ（たとえば、温度センサ、圧力センサ、および流量センサ）などであり、プロセスプラント内で、バルブの開閉や、プロセスパラメータの測定のような機能を実行する。また、プロセスコントローラは、フィールドデバイスにより測定されたプロセスの測定値を示す信号および／またはそのフィールドデバイスに関する情報を受信し、この情報を用いて制御ルーチンを実行し、次いで、制御信号を生成する。その信号は、上述のバスまたは他の通信回線を通じて、フィールドデバイスに送信され、プロセス動作の制御をおこなう。これらのフィールドデバイスおよびコントローラからの情報は、通常、オペレータワークステーションにより実行される一または複数のアプリケーションに提供され、その結果、プロセスの設定、プロセスの現在状態の閲覧、プロセス動作の修正などのような、プロセスに関する所望の機能をオペレータが実行することができるようになる。
【０００３】
さらに、ほとんどのプロセスにおいては、有毒薬品の溢流、爆発などのような深刻な事故になるおそれのある問題が発生した場合、プロセスプラント内の安全に関する重要な問題を検出し、バルブ閉鎖、デバイス電力の切断、プラント内のフローの切換えなどを自動的に行う個別の安全システムが設けられている。通常、これらの安全システムは、プロセス制御コントローラから離れたところに一または複数の個別のコントローラを備えており、これらのコントローラは、プロセスプラント内に配置された個別のバスまたは通信回線を利用して安全フィールドデバイスに接続されている。安全コントローラは、特定の安全スイッチまたは遮断バルブの位置、プロセス内のオーバフローまたはアンダーフロー、重要なパワー生成デバイスまたはパワー制御デバイスの動作、故障検出デバイスの動作などのような、重要なイベントに関連するプロセス状態を検出するために安全フィールドデバイスを利用し、それにより、プロセスプラント内における「イベント」を検出する。イベントが検出されると、安全コントローラは、そのイベントの有害な影響を抑制するために、バルブの閉鎖、デバイスの停止、プラントの一部のセクションにおける電力の停止などのようななんらかのアクションを起こす。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
プロセスコントローラと安全コントローラとの間を分離することは重要なことであると考えられている（また、適用可能な政府規格により指定されることが多い）。その理由は、安全機能を実行するためにプロセスコントローラを利用した場合、そのコントローラが故障すると、安全機能とプロセス制御機能とが同時に故障してしまうことになるからである。しかしながら、安全機能は、プロセスコントローラが故障した場合に最も重要になる。というのは、上記の場合、プロセスが全体的にまたは部分的に制御不能になるからである。
【０００５】
残念ながら、プロセスプラントにおけるプロセスコントローラと安全コントローラとの間を分離した結果、これらのシステムが相互に完全に分断されてしまうことになった。その結果、同一のプラント内においてこのような相異なるシステムを実現するために、異なる通信基盤設備が通常利用され、さらにこれらの個別のシステムを設定・監視するために、異なる設定アプリケーションおよびワークステーションが用いられる。これらの違いに起因して、設定活動および監視活動をこれら別々のシステムに対して行うには、通常、別々の作業員が必要になり、安全システムを用いるプロセスプラントの設定および実行の点においてコストがさらにかさむことになる。
【０００６】
さらに、プロセス制御システムのハードウェアおよびソフトウェアの基盤設備を安全システムが利用しないので、それらとまったく関連付けされていない、相異なる安全システムハードウェアが、同一のプロセスプラント内において異なるノードのような異なる場所で用いられていることがある。その結果、同一のプラント内において、複数の関連付けされていない相異なる安全システムが存在し、これらの安全システムを別々に設定・監視しなければならないことになる。
【課題を解決するための手段】
【０００７】
本発明に係るプロセスプラントは安全システムを備えており、この安全システムは、共通の通信ハードウェアおよび通信ソフトウェア、コンフィギュレーションハードウェアおよびコンフィギュレーションソフトウェア、ならびに表示ハードウェアおよび表示ソフトウェアを安全システムおよびプロセス制御システムがプロセスプラント内で利用できるようにするとともに、安全システムコントローラとプロセス制御システムコントローラとの間に依然として機能的な分離を実現する方式で、プロセス制御システムと物理的に統合されている。さらに、プロセスプラント内の異なるノードにおける安全システムハードウェアは、そのプロセスプラント内に単一のかつ統合化された安全システムを実現するために、相互に通信しうる。
【０００８】
一般的に、安全システムコントローラは安全デバイスに安全通信基盤設備を利用して接続されており、その一方、プロセス制御システムコントローラは制御システムフィールドデバイスに標準制御システムバスまたは通信回線を利用して接続されている。しかしながら、安全システムコントローラは、バスまたは他の通信回線を利用してプロセス制御システムに通信可能に接続され、その各々が、共通通信ネットワークを利用してプロセスプラント内の一または複数のオペレータワークステーションに接続されている。その結果、オペレータワークステーション内のソフトウェアは、プロセス制御システムコントローラ（およびそれに関連するプロセス制御フィールドデバイス）および安全システムコントローラ（およびそれに関連する安全フィールドデバイス）の両方と通信し、それらの動作を設定・閲覧することができる。しかしながら、安全システムコントローラおよびプロセス制御システムコントローラは相互に情報を交換するために相互に通信することができるが、これらのコントローラは、プロセス制御システムコントローラが安全システムデバイスを制御または設定できないように設定されている。それにより、プロセス制御システムと安全システムとの間の必要な機能的分離が実現される。
【０００９】
この統合化により、プロセス制御システムから切り離した安全システムの正しい動作には厳密にいえば必要のない通信・表示構造を追加する必要性を排除でき、プロセスプラントに関連するコンフィギュレーションアプリケーションがプロセス制御システムおよび安全制御システムの両方を設定できるとともに、プロセスプラントの共通ビューまたは統合ビューに、プロセス制御および安全制御用のハードウェアおよびソフトウェアの両方を表示できる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の好ましい実施の形態を図面を参照しながら説明する。なお、以下では全ての図を通じて同一又は相当する要素には同一の参照符号を付して、その重複説明を省略する。なお、次の文章中に含まれる「イーサネット（登録商標）」は登録商標であるが、その旨の表示を以下では省略する。
【００１１】
図１を参照すると、プロセスプラント10は、安全システム14（破線により図示）に統合されたプロセス制御システム12を備えており、この安全システム14は、プロセスプラント10において可能な安全運転を最大にすべくプロセス制御システム12により提供される制御を監視・無効にする安全計装システム（ＳＩＳ）として動作することが一般的である。また、プロセスプラント10は、プロセス制御オペレータ、保守作業員、コンフィギュレーションエンジニアなどの如きプラント作業員がアクセス可能な一または複数の（任意のタイプのパーソナルコンピュータ、ワークステーションなどでありうる）ホストワークステーション、コンピュータ、またはユーザインターフェイス16を備えている。図１に示されている一例では、三つのユーザインターフェイス16が、共有通信回線または共有通信バス22を利用して、二つの別々のプロセス制御ノード／安全制御ノード18、20と、コンフィギュレーションデータベース21とに接続されているものとして例示されている。通信ネットワーク22は、任意の所望のバスをベースにしたまたはバスでないものをベースにしたハードウェアを用いて、任意の所望のハードワイヤード通信構造または無線通信構造を用いて、また任意の所望のまたは適切なイーサネット（登録商標）プロトコルの如き通信プロトコルを用いて実現されうる。
【００１２】
一般的にいえば、プロセスプラント10のノード18、20の各々はプロセス制御システムデバイスおよび安全システムデバイスの両方を備えており、これらのさまざまなデバイスは、該デバイスが取り付けられているバックプレーンに設けられうるバス構造を利用して、相互に接続されている。ノード18は、（一対の冗長コントローラでありうる）プロセスコントローラ24と、一または複数のプロセス制御システム入力／出力（Ｉ／Ｏ）デバイス28、30、32とを備えているものとして図１に例示されており、その一方、ノード20は、（一対の冗長コントローラでありうる）プロセスコントローラ26と、一または複数のプロセス制御システムＩ／Ｏデバイス34、36とを備えているものとして例示されている。プロセス制御システムＩ／Ｏデバイス28、30、32、34、36の各々は、フィールドデバイス40、42として図１に例示されている一組のプロセス制御関連フィールドデバイスに通信可能に接続されている。プロセスコントローラ24、26、Ｉ／Ｏデバイス28〜36、およびコントローラフィールドデバイス40、42により、概して、図１のプロセス制御システム12が形成されている。
【００１３】
同様に、ノード18は一または複数の安全システムロジックソルバ50、52を備えており、ノード20は安全システムロジックソルバ54、56を備えている。ロジックソルバ50〜56の各々はＩ／Ｏデバイスであり、このＩ／Ｏデバイスは、メモリに格納された安全ロジックモジュール58を実行するプロセッサ57を有し、制御信号を送信するためにおよび／または信号を受信するために、安全システムフィールドデバイス60、62に通信可能に接続されている。さらに、ノード18、20の各々は、少なくとも一つのメッセージ伝送デバイス（ＭＰＤ）70、72を備えうる。このメッセージ伝送デバイスは、リング型バス接続74を利用して、相互に通信可能に接続されている。安全ロジックソルバ50〜56、安全システムフィールドデバイス60、62、ＭＰＤ70、72、およびバス74により、概して、図１の安全システム14が形成されている。
【００１４】
ほんの一例ではあるが、プロセスコントローラ24、26は、フィッシャーローズマウントシステムズ社により販売されているＤｅｌｔａＶコントローラまたはその他の所望のタイプのプロセスコントローラでありうる。このプロセスコントローラ24、26は、（コントローラ24に対する）Ｉ／Ｏデバイス28、30、32、（コントローラ26に対する）Ｉ／Ｏデバイス34、36、およびフィールドデバイス40、42を用いて、（制御モジュールと呼ばれるモジュールを利用する）プロセス制御機能を提供するようにプログラムされている。具体的にいうと、コントローラ24、26の各々は、プロセス10または該プロセス10の一部を任意の所望の方法で制御するために、そのコントローラの内部に格納されているかまたはそのコントローラと関連付けされている一または複数のプロセス制御ルーチンを実行または監視し、フィールドデバイス40、42およびワークステーション14と通信する。フィールドデバイス40、42は、センサ、バルブ、トランスミッタ、ポジショナなどの如き任意の所望のタイプのフィールドデバイスでありうるし、任意の所望の公開された通信プロトコルもしくはプログラミングプロトコル、所有権を主張できる通信プロトコルもしくはプログラミングプロトコル、または他の通信プロトコルもしくはプログラミングプロトコルに準拠しうる。このような通信プロトコルまたはプログラミングプロトコルには、２〜３例を挙げると、たとえば、（フィールドデバイス40に対して例示されているような）ＨＡＲＴプロトコルもしくは４〜２０ｍａプロトコル、（フィールドデバイス42に対して例示されているような）Ｆｏｕｎｄａｔｉｏｎ  Ｆｉｅｌｄｂｕｓプロトコルの如き任意のフィールドバスプロトコル、またはＣＡＮプロトコル、Ｐｒｏｆｉｂｕｓプロトコル、もしくはＡＳ−Ｉｎｔｅｒｆａｃｅプロトコルが含まれる。同様に、Ｉ／Ｏデバイス28〜36は、任意の適切な通信プロトコルを用いる任意の公知のプロセス制御Ｉ／Ｏデバイスでありうる。
【００１５】
図１の安全ロジックソルバ50〜56は、プロセッサ57と、安全フィールドデバイス60、62を用いて安全システム14に関連する制御機能を提供するために上述のプロセッサ57により実行されるように構成された安全ロジックモジュール58を格納するメモリとを備えるいかなる所望のタイプの安全システム制御デバイスであってもよい。もちろん、安全フィールドデバイス60、62は、任意の公知または所望の、上述の通信プロトコルの如き通信プロトコルに準拠するまたはそれを用いるいかなる所望のタイプのフィールドデバイスであってもよい。具体的にいえば、フィールドデバイス60、62は、個別かつ専用の、安全に関する制御システムにより慣習的に制御されるタイプの、安全に関するフィールドデバイスでありうる。図１に例示されているプロセス制御プラント10では、安全フィールドデバイス60は、ＨＡＲＴプロトコルまたは４〜２０ｍａプロトコルの如き専用通信プロトコルまたはポイント・ツー・ポイント通信プロトコルを用いるものとして例示されており、その一方、安全フィールドデバイス62は、Ｆｉｅｌｄｂｕｓプロトコルの如きバス通信プロトコルを用いるものとして例示されている。
【００１６】
プロセス制御Ｉ／Ｏカード28、30、32、34、36、安全ロジックソルバ52、54、56、58、およびＭＰＤ70、72にコントローラ24、26を接続するために、（コントローラ24、26、Ｉ／Ｏデバイス28〜36、安全ロジックソルバ50〜56、およびＭＰＤ70、72を通る破線により示されている）共通バックプレーン76がノード18、20の各々において用いられている。また、コントローラ24、26は、Ｉ／Ｏデバイス28〜36、ロジックソルバ52〜56、およびＭＰＤ70、72の各々がワークステーション16のいずれかとバス22を利用して通信することを可能にするために、バス22に通信可能に接続され、バス22に対する調停器として動作する。
【００１７】
いうまでもなく、ワークステーション16の各々は、プロセッサ77と、該プロセッサ78により実行されるように構成された一または複数のコンフィギュレーションアプリケーションおよび／または閲覧アプリケーションを格納するメモリ78とを備えている。コンフィギュレーションアプリケーション80および閲覧アプリケーション82は、ワークステーション14のうちの一つに格納されているものとして図１の拡大図に例示されている。しかしながら、所望ならば、これらのアプリケーションは、ワークステーション14のうちの異なるワークステーションにより、またはプロセスプラント10に関連する他のコンピュータにより格納・実行されてもよい。一般的にいえば、コンフィギュレーションアプリケーション80より、コンフィギュレーション情報がコンフィギュレーションエンジニアに提供され、このコンフィギュレーションエンジニアは、プロセスプラント10の一部または全部のエレメントを設定でき、その設定をコンフィギュレーションデータベース21に格納できるようになる。コンフィギュレーションアプリケーション80により実行されるコンフィギュレーションアクティビティの一部として、コンフィギュレーションエンジニアは、プロセスコントローラ24、26のための制御ルーチンまたは制御モジュールを作成し、安全ロジックソルバ50〜56のうちのいずれかまたはすべてのための安全ロジックモジュールを作成し、これらのさまざまな制御モジュールおよび安全モジュールを、プロセスコントローラ24、26および安全ロジックソルバ50〜56のうちの適切な装置にバス22およびコントローラ24、26を利用してダウンロードしうる。同様に、他のプログラムおよびロジックを作成し、フィールドデバイス40、42、60、62のうちのいずれか、Ｉ／Ｏデバイス28〜36などにダウンロードするためにコンフィギュレーションアプリケーション80を用いうる。
【００１８】
それに対して、閲覧アプリケーション82は、プロセス制御オペレータ、安全オペレータなどの如きユーザに一または複数の表示画面を提供するために利用されうる。この表示画面は、所望ならば、別々のビューまたは同一のビュー内に、プロセス制御システム12および安全システム14の状態についての情報を有してもよい。たとえば、閲覧アプリケーション82は、アラーム表示信号を受信してオペレータに表示するアラーム表示アプリケーションであってもよい。所望ならば、そのようなアラームビューアプリケーションは、発明の名称が「アラーム優先順位調整機能を有するプロセス制御システム」である米国特許番号第5,768,119号、および発明の名称が「プロセス制御ネットワークにおける統合型アラーム表示画面」である米国特許出願番号第09/707,580号において開示されている形態を有しうる。その両方は、本特許の譲受人に譲渡されたものであり、本明細書において参照することにより、ここで明確に援用するものである。しかしながら、上述の特許のアラーム表示画面またはアラームバナーは、プロセス制御システム12および安全システム14の両方からアラームを受信し、統合型アラーム表示画面に表示しうることはいうまでもない。その理由は、両方のシステム12、14からのアラームは、アラーム表示アプリケーションを実行するオペレータワークステーション16に送信されうるし、異なるデバイスからのアラームであるということを認識しうるからである。同様に、オペレータは、プロセス制御アラームと同一の方法でアラームバナーに表示された安全アラームに対処してもよい。たとえば、オペレータまたはユーザは、アラーム表示画面を利用して、安全アラームに対する受信了承応答、安全アラームの停止などを行いうる。そうすると、安全システム14内の適切なプロセスコントローラ24、26に、メッセージが、バス22およびバックプレーン76用いた通信を利用して送信され、それにより、その安全アラームに対して対応するアクションが起こされる。同様に、他の閲覧アプリケーションは、プロセス制御システム12および安全システム14の両方から取得された診断情報または診断データを表示しうる。というのは、これらのシステムは、プロセス制御システムに提供されている従来の表示画面またはビューに対してシステム12、14のうちの一つからのいかなるデータでも統合できるように、同一のタイプまたは種類のパラメータ、セキュリティ、および参照を利用しているからである。
【００１９】
いずれの場合であっても、アプリケーション80、82は、プロセスコントローラ24、26の各々および安全システムロジックソルバ50〜56の各々に個別のコンフィギュレーション信号および他の信号を送信し、それらからデータを受信しうる。これらの信号は、プロセス制御に関連するフィールドデバイス40、42の動作パラメータの制御に関するプロセスレベルのメッセージを含みうるし、安全に関連するフィールドデバイス60、62の動作パラメータの制御に関する安全レベルのメッセージを含みうる。安全ロジックソルバ50〜56はプロセスレベルメッセージおよび安全レベルメッセージの両方を認識するようにプログラムされうる。その一方、安全ロジックソルバ50〜56は、これら二つのタイプのメッセージを区別することが可能であるが、プロセスレベルのコンフィギュレーション信号によりプログラムされることまたは起動されることは可能ではない。一つの例では、プロセス制御システムデバイスに送信されるプログラミングメッセージは、安全システムデバイスにより認識されかつ安全システムをプログラムするためにそれらの信号が用いられることを妨げる特定のフィールドまたはアドレスを有しうる。
【００２０】
所望の場合、安全システムロジックデバイス50〜56は、プロセス制御Ｉ／Ｏカード28〜36に対して用いられるハードウェアデザインまたはソフトウェアデザインと同一のまたはそれとは異なるハードウェアデザインまたはソフトウェアデザインを採用してもよい。しかしながら、プロセス制御システム12内のデバイスおよび安全システム14内のデバイスに対して異なる技術を利用することにより、共通の原因によるハードウェア不良またはソフトウェア不調を最小限に抑えたり排除したりすることが可能となる。
【００２１】
また、ロジックソルバ50〜56を含む安全システムデバイスは、安全に関連する機能に対して許可なく変更が行われるおそれを削減または排除するために、任意の所望の分離技術またはセキュリティ技術を採用しうる。たとえば、安全ロジックデバイス50〜56およびコンフィギュレーションアプリケーション80の場合、ロジックソルバ50〜56内の安全モジュールに対する変更を実行するためには、特定の権限レベルを有する人または特定のワークステーションに配置されている人が必要になる。この権限レベルまたは配置は、コントローラ24、26およびＩ／Ｏデバイス28〜36により実行されるプロセス制御機能に対して変更を実行するために必要となる権限レベル、アクセスレベル、または配置とは異なる。この場合、安全ソフトウェア内で指定されているまたは安全システム14に対して変更を行うことを許可されたワークステーションに配置されている人たちだけが、安全に関連する機能を変更する権限を有しており、それにより、安全システム14の動作が変更される可能性を最小限に抑えることができる。いうまでもなく、そのようなセキュリティを実現するために、安全ロジックソルバ50〜56内のプロセッサは、入ってくるメッセージの正しい形式およびセキュリティを評価し、安全ロジックソルバ50〜56内で実行される安全レベル制御モジュール58に対して行われている変更に関するゲイトキーパとして動作する。
【００２２】
さらに、所望の場合には、ロジックソルバ50〜56内で安全に関連する機能が実行可能状態にいったんなると、正しいアクセス権なしではオペレータワークステーション16を利用して安全機能に対してステータスの変更を行うことはできない。その結果、この通信構造は、安全システム14の初期化を実現するためにまた安全システム14の動作をランタイム状態で報告することを実現するために、プロセス制御システム12に関連する通信構造を使用することが可能であるにもかかわらず、プロセス制御システム12に対して変更を行っても安全システム14に影響を与えないという意味では、安全システム14からプロセス制御システム12を分離することが可能である。
【００２３】
いうまでもなく、ノード18、20の各々でバックプレーン76を用いることにより、安全ロジックソルバ50、52および安全ロジックソルバ54、56は、これらのデバイスの各々により実行される安全機能を協調させるために、データを相互に通信するために、または他の統合機能を実行するために、ローカルに相互に通信することができる。それに対して、ＭＰＤ70、72は、プロセスプラント10のさまざまなノードにおいて協調安全動作を実現するために、プラント10の非常にさまざまな場所に配置されている安全システム14の一部が依然として相互に通信できるように動作する。具体的にいえば、バス74と協動するＭＰＤ70、72により、プロセスプラント10のさまざまなノード18、20に関連付けられている安全ロジックソルバは、プロセス10内において指定優先順位に従いカスケード式に安全に関連する機能を実行可能にするために、カスケード式に相互に通信することができる。あるいは、プラント10の別々の物理的ロケーションまたはノード内の個々の安全フィールドデバイスに専用回線を取り付ける必要もなく、プロセスプラント10内の別々の場所における二を超える安全に関連する機能をインターロックまたは相互接続しうる。換言すれば、ＭＰＤ70、72およびバス74の利用により、コンフィギュレーションエンジニアは、実質的にプロセスプラント10全体に亘り分散されている安全システムでありながら、必要に応じて多種の安全に関連するハードウェアを相互に通信可能にするために、通信可能に相互接続されたさまざまなコンポーネントをその安全システムの内部に備えるような安全システム14をデザイン・設定することができるようになる。また、以上のような特徴により、安全ロジックソルバを追加することが必要な場合や、プロセスプラント10に新規のプロセス制御ノードが追加される場合に、さらなる安全ロジックソルバを安全システム14に追加することができるので、安全システム14にスケーラビリティを付与することができるようになる。
【００２４】
図２は、図１のコンフィギュレーションルーチン80により生成されうるスクリーン表示画面83を例示し、（ロジックソルバおよび安全フィールドデバイスを含む）安全システム14がプロセス制御システム12と統合されているコンフィギュレーションを提示している。いうまでもなく、図２のコンフィギュレーション表示スクリーン83は、コンフィギュレーションアプリケーション80がプロセスプラント10内のさまざまなデバイスに関連するソフトウェアを設定した様態を例示しており、プロセス制御システムデバイスおよび安全システムデバイスを含む、プロセスプラント10内のデバイスに新規のコンフィギュレーションソフトウェアをダウンロードすることによりプロセスプラント10の現行のコンフィギュレーションを作成または変更するために、コンフィギュレーションエンジニアにより利用されうる。
【００２５】
表示画面83に例示されているように、プロセスプラント10は、該プロセスプラント10内のデバイスの物理的相互接続を表示するために用いられる物理ネットワークセクション84と、安全システムデバイスを設定するために用いられる安全ネットワークセクション85とを備えている。物理ネットワークセクション84は、コントローラ87（ＣＴＬＲ１と呼ぶ）を有する制御ネットワークセクションを備えている。図１のコントローラ24、26のうちの一つでありうるコントローラ87は、該コントローラ87により格納され、実行される制御モジュールである一組の指定モジュール88と、通信目的でコントローラ87に接続されているＩ／Ｏデバイスセクション89とを備えている。Ｉ／Ｏデバイスセクション89は、図１のバックプレーン76のうちの一つを利用してコントローラ87に接続されるカード90のすべてを例示するために展開されている。この例では、Ｉ／Ｏデバイスセクション89は、プロセス制御入力／出力カードＣ０１〜Ｃ０５、Ｃ１１〜Ｃ１５、Ｃ２１を備えている。これらのカードの各々は、該カードの各々に接続されるさまざまなフィールドデバイス（図１のフィールドデバイスの個々のデバイス）のアイデンティティおよびそれらに関連する他の情報を示すために展開されうる。同様に、物理的な接続を示すために、二つの安全システムカードＣ０７（ＢＬＲ１ＢＭＳ）およびＣＯ１７（まだ設定されておらず）が斜線形式で示されている。制御ネットワーク内でまたは制御ネットワークによりこれらの安全システムカードを設定することはできないので、安全システムカードＣ０７およびＣＯ１７をこのセクションで展開することはできない。しかしながら、いうまでもなく、スクリーン83の制御ネットワークセクション86を用いて、コンフィギュレーション提示画面のそのセクション内の制御モジュール、Ｉ／Ｏデバイス、および／またはフィールドデバイスを追加、削除、または変更することにより、プロセス制御システム12に関連するデバイスを設定することができる。
【００２６】
安全システム14は、ＢＬＲ１ＢＭＳ、ＢＬＲ２ＢＭＳ，およびＬＳ１と呼ばれる三つの安全ロジックソルバ91〜93を備えるものとして、スクリーン83の安全ネットワークセクション85に例示されている。同様に、所望ならば、メッセージ伝送デバイス（たとえば、図１のＭＰＤ70、72）は、安全ネットワークセクション85に例示されてもよい。スクリーン83では、安全ロジックソルバ91は、それが指定安全モジュールと、（図１のデバイス60、62のごとき安全フィールドデバイスに接続されている）一または複数のチャネルと、安全パラメータとを備えていることを示すために展開されている。これらのエレメントの各々に対して、さらに詳細な閲覧、スクリーン83の安全ネットワークセクションへの追加、スクリーン83の安全ネットワークセクションでの削除または変更を行うことにより、安全システム14を設定しうる。具体的には、制御ネットワークセクション86を利用してプロセス制御ネットワーク12を設定する方法と同様の方法で、安全ネットワークセクション85を利用して安全システム14を設定・変更することができる。実際、いうまでもなく、米国特許番号第5,838,563号に開示されているプロセス制御システムを設定するための方法を用いて、制御モジュールまたは安全モジュールを作成し、上述の異なる制御システムまたは安全システムに割り当てることができる。米国特許番号第5,838,563号は、本特許の譲受人に譲渡されたものであり、本明細書で参照することによりここで明白に援用するものである。しかしながら、一般的にいえば、安全ロジックモジュールは、コンフィギュレーションライブラリに格納されているモジュールテンプレートオブジェクトから作成され、プロセスプラント10内の特定の安全フィールドデバイスに対して安全機能を実行するために特定の安全ロジックソルバ内で用いられるように構成されうる。安全ロジックモジュールの作成には、安全エンジニアは、特定の制御テンプレート（プロセスコントローラで実行されるプロセス制御モジュールおよび安全ロジックソルバで実行される安全ロジックモジュールの両方を作成するために用いられうるテンプレート）をコピーして特定の安全ロジックモジュールを作成し、図２のコンフィギュレーション表示スクリーン83内の所望の安全ロジックソルバの表示体にその安全ロジックモジュールをドラッグ・アンド・ドロップし、それにより、安全ロジックソルバの一つの如き特定の安全エレメントにその安全ロジックモジュールを割り当てうる。開示されたシステムの実現に際し、安全エンジニアの新規のユーザの役割が作成される。安全システムを設定する場合、プロセス制御部を管理するコンフィギュレーションエンジニアが安全モジュールを設定するための適切な特権を有していないことがあり、したがって、その安全モジュールの設定は安全エンジニアにより実行されることになる。以上のように、システム内のセキュリティにより、安全エンジニアおよびプロセスコンフィギュレーションエンジニアとを区別する線引きが可能になる。
【００２７】
一つの特定の例では、安全エンジニアは、安全ネットワークメニュー（たとえば、ポップアップメニューまたはプルダウンメニュー）からＡｄｄ  Ｌｏｇｉｃ  Ｓｏｌｖｅｒメニューオプション（図示せず）を選択することにより、安全ネットワークセクション85下に安全ロジックソルバを追加しうる。このとき、次に使用可能なシステム名を有するロジックソルバが安全ネットワーク85下に作成される。自動的に作成されるシステム名は、たとえばＬＳ１で始まりうるが、プロセスプラント10のコンフィギュレーションシステム内において全体的に固有の名称であるならばどのようにでも改名されうる。図２は、二つのロジックソルバが改名され、一つ（ＬＳ１）が改名されていないケースを示している。この時点で、ロジックソルバは、依然としてプレースホルダであり、物理ロジックソルバにはまだ結合されていない。次いで、ユーザは、物理ネットワークセクション84下のロジックソルバをドラッグし、安全ネットワークセクション85にドロップし、特定の物理ロジックソルバを上述の作成されたプレースホルダに結合させることができる。安全ネットワークセクション85下で特定のロジックソルバがいったん結合されると、そのロジックソルバに行われたコンフィギュレーション変更が実行され、物理ネットワークセクション84下で指定された指定物理ロジックソルバにダウンロードされることになる。さらに、いったん結合されると、安全ネットワークセクション85下のロジックソルバは、物理パスを括弧に入れて示し、物理ネットワークセクション84下のロジックソルバは、ロジックソルバ名を括弧に入れて示しうる。安全ロジックデバイス91およびカードＣＯ７は、図２においてこのような方法で相互に結合されている。
【００２８】
また、所望の場合には、安全ネットワークセクション85下の非結合ロジックソルバを物理ネットワークセクション84下の非結合ロジックソルバにドラッグすることにより結合を実行するか、物理ネットワークセクション84下の非結合ロジックソルバを安全ネットワークセクション85下にドラッグ・アンド・ドロップしてもよい。いずれの場合であっても、プレースホルダを物理ロジックソルバに結合することにより、結果として、括弧で閉じられた参照例を得ることができる。もちろん、安全ネットワークセクション85下のプレースホルダを制御ネットワークセクション内のコントローラ下のＩ／Ｏにドラッグ・アンド・ドロップすることはサポートされておらず、その結果、プロセスコントローラＩ／Ｏデバイス下でロジックソルバカードを作成することができない。それにより、プロセス制御デバイスと安全デバイスとの間の機能的な分離を実現している。もちろん、安全フィールドデバイス、安全モジュール、パラメータなどの如き低レベル安全エレメントは、これらの低レベルエレメントの表示体をスクリーン表示画面83の適切な位置に移動して放すことにより、特定の安全ロジックソルバに割り当てられうるか結合されうる。
【００２９】
図３は、プロセスプラント10のノード18、20内およびそれらの間の通信接続をさらに詳細に例示したものである。一般的にいえば、図２に例示されている図１のコンポーネントは同一の参照符号により参照されている。しかしながら、コントローラ24、26は、任意の標準冗長技術を利用しうる一対の冗長コントローラ24A、24B、26A、26Bとして図３に例示されている。同様に、安全ロジックソルバ50〜56の各々は、各対に第一の安全ロジックソルバ50A、52A、54A、56Aと第二の安全ロジックソルバ50B、52B、54B、56Bとを有する一対のデバイスとして例示されている。いうまでもなく、安全ロジックソルバ50〜56の各々は、安全フィールドデバイス（図３に図示せず）に接続され、安全システム14内で安全機能を実施する際に利用される同一の安全ロジックモジュール58を格納しうる。安全ロジックソルバ50〜56の各対は、そのロジックソルバ対の間で制御通信を行うために、第一のロジックソルバと第二のロジックソルバとの間に接続されている専用バス50C、52C、54C、56Cを備えている。第一の安全ロジックソルバおよび第二の安全ロジックソルバは、計算を同時に実行することが好ましく、この二つのデバイスからの出力は、適切なバス50C、52C、54C、56Cを利用して、相互に伝送・確認されうる。所望の場合には、第一のデバイスは、第一のデバイスおよび第二のデバイスの両方の出力の基づいて一対の安全ロジックソルバの出力を決定する採決ロジックを有していてもよい。以上に代えて、いかなる所望または公知の冗長技術をロジックソルバ対50〜56に対して用いてもよい。さらに、ＭＰＤ70、72の各々は、一対の冗長デバイス70A、70B、72A、72Bとして例示されており、異なるノード18、20のＭＰＤは、一対の冗長相互ノード通信回線または冗長インターノード通信バス74により接続されている。図１および図３では、二つのノード18、20間での通信相互接続が例示されているのみであるが、いうまでもなく、任意の所望の方法でインターノード通信を実現するために、ＭＰＤの単一対または冗長対をプロセスプラント10の任意の数の異なるノードに設け、リングタイプのバス構造で相互に接続してもよい。リング状バス構造が一般的に（しかしそれに限定的されずに）用いられるので、第一のノードのＭＰＤは第二のノードのＭＰＤに接続され、第二のノードのＭＰＤは第三のノードのＭＰＤに接続され、それ以降は同様に接続されていき、最後のノードのＭＰＤは第一のノードのＭＰＤに接続される。接続はすべてリング状バス74を介して行われる。図１に提示されているように、プロセスプラント10に二つのノードのみ存在する場合、ノード20のＭＰＤ72A、72Bから出るバス74は、ノード18のＭＰＤ70A、70Bの入力部へ直接に接続される。
【００３０】
コントローラ24、26と図１のワークステーションとの間の接続を例示することに加えて、図３はバックプレーン76をさらに詳細に例示している。具体的にいうと、ノード18において、コントローラ24A、24Bは、バックプレーン76に配置されることが好ましいレイルバス回線100を介して、Ｉ／Ｏデバイス28、30、32、安全ロジックソルバの冗長対50A、50B、52A、52B、およびＭＰＤの冗長対70A、70Bに接続されている。同様に、ノード20において、コントローラ26A、26Bは、バックプレーン76に配置されているレイルバス回線102を介して、Ｉ／Ｏデバイス34、36、安全ロジックソルバの冗長対54A、54B、56A、56B、およびＭＰＤの冗長対72A、72Bに接続されている。コントローラ24、26は、Ｉ／Ｏデバイス28、30、32、34、36と安全システムロジックソルバ50、52、54、56、70、72との間における通信を実現するのみでなく、ワークステーション14とＩ／Ｏデバイス28、30、32、34、36および安全システムロジックソルバ50、52、54、56、70、72との間における通信もまた同様に実現するために、レイルバス回線100、102を利用する。換言すれば、プロセスプラント10内で、さらに高度なレベルで安全システムデバイスをプロセス制御システムデバイスに統合化することを可能にするための通信ネットワークとしてレイルバス回線100、102が利用され、その結果、ワークステーション14内に配置されるコンフィギュレーションアプリケーションおよび表示アプリケーションは、プロセス制御システムデバイスおよび安全システムデバイスの両方と通信し、それらを設定し、そこからの情報を表示することができるようになる。
【００３１】
さらに、ノード18に関連して例示されているように、バックプレーン76は、安全システムロジックソルバ50、52の各々を第一のＭＰＤ70Aに接続する第一のピア・ツー・ピア（Ｐ２Ｐ）バス104Aを備えており、第二のＰ２Ｐバス104Bは、安全システムロジックソルバ50、52の各々を第二のＭＰＤ70Bに接続している。第一および第二のＰ２Ｐバス104A、104Bは、単一のバックプレーン76内の安全ロジックソルバ間のローカル通信と、そのバックプレーン76に関連付けまたは接続されているＭＰＤ70へのローカル通信とを提供するローカルＰ２Ｐバスである。同様に、ノード20は、安全システムロジックソルバ54、56の冗長対の各々を第一のＭＰＤ72Aに接続する第一のピア・ツー・ピア（Ｐ２Ｐ）バス106Aを備えており、第二のＰ２Ｐバス106Bは、安全システムロジックソルバ54、56の冗長対の各々を第二のＭＰＤ72Bに接続している。第一および第二のＰ２Ｐバス106A、106Bは、ノード20のバックプレーン76内の安全ロジックソルバおよびＭＰＤ72の間にローカル通信を提供するローカルＰ２Ｐバスである。いうまでもなく、第一および第二のローカルＰ２Ｐバス104A、104B、106A、106Bは、それぞれのバックプレーン76  上のすべての安全システムロジックソルバ50〜56間に冗長通信路を提供する。所望ならば、ローカルＰ２Ｐバス104、106は、このバスに接続された安全ロジックソルバおよびＭＰＤの各々がそのバス上におけるその他のすべてのデバイスからの伝送信号を受信することができ、かつ、一度に一つのデバイスのみが伝送することができるブロードキャストバスとして動作してもよい。もちろん、図３は、異なるノード18、20内のバックプレーン76の各々に接続された二つの安全ロジックソルバを例示しているが、ノード18、20の各々において、冗長対型ロジックソルバまたは独立型ロジックソルバでありうる、任意の所望の数の安全ロジックソルバをバックプレーン76に接続してもよい（それにより、ローカルＰ２Ｐバス104、106に接続される）。
【００３２】
所望の場合には、安全ロジックソルバは、時間分割多重アクセス（ＴＤＭＡ）方式を利用して、ローカルＰ２Ｐバスメディアを共有してもよく、この方式では、一つの特定のバックプレーン上のすべてのローカル安全ロジックソルバが相互に同期されている。一つのケースとしては、ローカルＰ２Ｐバス104、106は、たとえば２Ｍｂ／ｓｅｃの処理量を有するＲＳ４８５マンチェスタ符号化ＨＤＬＣプロトコルを利用しうる。このマンチェスタ符号化スキームにより、４Ｍｂ／ｓｅｃの速度で通信を伝送することができる。この提示した速度は一例にすぎず、他の適切な速度および符号化スキームを同様に選択してもよい。さらに、所望ならば、一つの特定のバックプレーン上のローカル安全ロジックソルバの各々は、バックプレーン76内におけるそれ自体の物理的配置に基づいて、バックプレーン76上で利用されるＴＤＭＡスキーム内に伝送時間スロットを決定されてもまたは割り当てられてもよく、それにより、特定のノードにおいてバックプレーン76を設定するために必要なコンフィギュレーションステップの数を減少することができる。さらに、バックプレーン76の第一および第二のＰ２Ｐバス104、106はいかなる所望のメッセージタイプであってもサポートしうるし、ローカルＰ２Ｐバス104、106の物理的配線はバックプレーン76内に設けられうる。
【００３３】
遠隔Ｐ２Ｐバス74は、プロセスプラント10の異なるノードに設置された、すなわち異なるバックプレーン76に配置された安全ロジックソルバ間においてデータを通信できるようにするために、リング状トポロジーを用いることが好ましい。ＭＰＤ70、72は、遠隔Ｐ２Ｐバス74により構成されたリングの周りにメッセージを伝送し、ＭＰＤ70、72と同一のバックプレーン上の安全ロジックソルバから送られたメッセージをリング74に取り込み、およびリング74上に存在し、ＭＰＤ70、72と同一のバックプレーン上の安全ロジックソルバに宛てられたメッセージをその安全ロジックソルバに伝送することを担当する。遠隔Ｐ２Ｐバス74上ではいかなる数のメッセージでも伝送しうるが、一つの実施例では、任意のＰ２Ｐバスサイクル中に、最大、３２のメッセージが伝送される。これらのメッセージは、ノード18、20のバックプレーン76上の安全ロジックソルバ50〜56およびリングバス74により相互接続されたプロセスプラント10内の他のノードにおけるその他のバックプレーン上の安全ロジックソルバを含む、１〜３２の別々の異なる安全ロジックソルバから発生されることが可能である。しかしながら、以上のような動作の結果、安全システム14内の安全ロジックソルバの全部は、異なるノードに設置された場合でさえも、同期して動作しうる。その理由は、リングバス74がそれらのデバイス間での通信の相互接続を実現し、それにより、同期化を確立することが可能になるからである。リングバス74は、任意の所望のタイプのバス構造およびバスプロトコルを用いうるが、１０Ｍビット／ｓｅｃの伝送速度を有する、１０ＢＡＳＥ―Ｔイーサネット（登録商標）プロトコルに準拠したポイント・ツー・ポイントケーブルを用いることが好ましい。
【００３４】
図４は、ローカルＰ２Ｐバス104、106上で用いられている単一バスサイクル302のタイミングチャート300を例示し、安全システム14内の他のアクティビティと対比して、Ｐ２ＰメッセージがＰ２Ｐバス104、106上で送信される様態を示すタイミングシーケンスの一例を説明するものである。バスサイクル302は、適切なバスサイクル時間フレームまたはバスサイクル周期を示し、適切な数の個別の時間スロットに分割されている。各時間スロットは選択された長さを有している。これに代えて、個々の時間スロットのすべてが同一の固定長を有してもよい。当業者であれば、採用される通信プロトコルおよび他の公知の設計事項に応じて、適切なバスサイクル周期、および個々の時間スロットに対する適切な時間インターバルを容易に選択することができる。同様に、所望ならば、ＴＤＭＡ以外の他のタイプのバス通信をＰ２Ｐバス104、106に用いてもよい。
【００３５】
一般的にいえば、図４のバスサイクル302は複数の離散型時間ブロックに分割されている。開示された一例によると、四つの時間ブロック304、306、308、310が存在し、各ブロックは、さまざまな長さをもつさまざまな数の時間スロットを有している。図４のバスサイクル302においては、時間ブロック304は適切な数の個々の時間スロットを有し、各時間スロットは適切な長さを有している。同様に、時間ブロック306、308、310の各々は、適切な数の個々の時間スロットを有しており、時間ブロック306、308、310の時間スロットの各々は適切な長さを有している。時間ブロック304、306、308、310の各々内の個々の時間スロットの数および長さは、システム11のエンドユーザにより選択される通信プロトコルの詳細に基づいて選択されうる。一般的にいえば、時間ブロック304に割り当てられた時間スロットは、Ｐ２Ｐバス104、106上での特定の通信情報の送信には用いられない。しかし、時間ブロック304のうちの一部312の間、バス104、106上のロジックソルバは入力信号のサンプリング（すなわち、それに接続されているフィールドデバイス60、62からの入力信号をサンプリング）を実行し、次いで、安全ロジックソルバ内の安全ロジック制御アルゴリズムまたは安全ロジック制御モジュールを実行する。もちろん、これらのアクティビティはＰ２Ｐバス104、106を使用しないので、この時間周期の間に行われるサンプリングおよび安全制御アクティビティと干渉しないタイプのメッセージである限りいかなるメッセージのタイプを時間ブロック304に割り当ててもよい。いずれの場合であっても、図４に示されているように、時間部314は、たとえば、図３の回線50C、52C、54C、56Cを利用して安全ロジックソルバの冗長対間に同期信号を送信するために用いられうる。また、時間部316の間では、バス104、106上の安全ロジックソルバ内の個々の安全ロジックモジュールが実行され、これらの安全モジュールの出力が算出され設定される。
【００３６】
時間ブロック306の間、バス104、106上の安全ロジックソルバは、一組のブールデータ値を伝送する。このブールデータ値は、個々のロジックソルバにより生成され、好ましくは、ロジックソルバ内で実行されるロジックの結果を示すデジタル信号である。開示された一例では、そのようなデジタル信号は、安全システム11内で通常採用される安全に関連する停止メッセージに対して特に適切である。具体的にいえば、このようなアクティビティを実行するために、各安全ロジックソルバは、ブロック時間306の間、一または複数の時間スロットを与えられ、バス104、106上のその他の安全ロジックソルバおよびＭＰＤデバイスの各々は、これらのブールデータ伝送信号を受信する。
【００３７】
第三の時間ブロック308の間、安全ロジックソルバは、指定時間スロットにおいてローカルＰ２Ｐバス104、106上で未処理のＩ／Ｏデータ値を伝送する。対応するバックプーン76上のその他のローカル安全ロジックソルバの各々は、ふたたび、それらの伝送信号を受信するが、その一方、ＭＰＤはこれらの伝送信号を無視する。しかしながら、バス104、106上のＭＰＤがグローバル送信先アドレス（すなわち、プロセスプラント10の異なるノードに関連する異なるバックプレーン上に設けられている送信先アドレス）を有するブールメッセージを受信した場合、そのＭＰＤは、そのメッセージを他のそのようなグローバルメッセージとともにパッケージ化し、時間318の間、グローバルＰ２Ｐバスを利用してそのメッセージを次のＭＰＤに送信する。このプロセスの間に、上述のＭＰＤは、（リング74上の次のＭＰＤに、）そのリング上に以前から設けられている他のＭＰＤから受信したメッセージも送信する。ＭＰＤは、それ自体のノードを起源とするデータ値を見つけると、メッセージの送信を停止する。
【００３８】
時間ブロック310の間、上述のＭＰＤは、ローカル安全ロジックソルバ宛てのグローバルメッセージ（バス74を利用して他の遠隔バックプレーンからこのＭＰＤに送信されてきたメッセージ）をバス104、106を利用してそれらの安全ロジックソルバに送信する。これらのグローバルメッセージは遠隔のバックプレーン上のＭＰＤにより単一のメッセージに事前にパッケージ化されているので、単一の比較的長い時間スロットが要求されうる。
【００３９】
いうまでもなく、上述のＭＰＤは、各バックプレーン上の安全ロジックソルバからのグローバルブールメッセージを、さまざまなバックプレーン上の安全ロジックソルバのうちの他の安全ロジックソルバにリングバス74を利用して送信する責務を有している。しかしながら、ローカルＰ２Ｐバス104、106、遠隔Ｐ２Ｐバス74、および対応するレイルバス90の伝送部または受信部における通信アクティビティを監視するためにも上述のＭＰＤを用いることができる。所望ならば、第一のＭＰＤ（たとえば、70Aまたは72A）は、それに対応して、第一のローカルＰ２Ｐバス104Aまたは106Aと、第一の遠隔Ｐ２Ｐバス74Aと、レイルバス90または92の伝送側とに接続されてもよい。あるいは、第二のＭＰＤ70Bおよび72Bは、それぞれ対応して、第二のローカルＰ２Ｐバス104Bおよび106Bと、第二の遠隔Ｐ２Ｐバス74Bと、レイルバス90および92の受信側とに接続されてもよい。したがって、ＭＰＤは、レイルバス90、92ならびにローカルおよび遠隔のＰ２Ｐバス104、106、74上のすべてのアクティビティを監視することができる。所望ならば、ＭＰＤは、１０Ｂａｓｅ−Ｔイーサネット（登録商標）監視ポートを用いて、バス74上にメッセージを発信するまえにすべてのメッセージを収集してタイムスタンプを捺してもよい。この監視ポートから出て来るすべての通信を、外部イーサネット（登録商標）パケット探知器を利用して取得・ビジュアル化することができる。一例としては、バックプレーン76の各々は３２の安全に関連するＩ／Ｏカードと２つのメッセージ伝送デバイス（ＭＰＤ）とをサポートしうる。
【００４０】
さまざまな安全ロジックデバイスおよびＭＰＤの送信元アドレスは、レイルバスメッセージから導出されうる。この送信元アドレスは、各ノードでは同一であるがプロセスプラント10内では固有のものであるバックプレーンＩＤ（ＢＰＩＤ）と、ノード毎に繰り返し使用可能であるがノード内では固有のものであるスロットＩＤ（ＳＩＤ）とから構成されうる。また、安全ロジックソルバは、それ自体のＳＩＤから、ローカルＰ２Ｐバス104におけるそれ自体のブロードキャスト時間スロットを（他のデバイスと相対的に）推測しうる。所望ならば、異なるノードにおけるバックプレーンを１０ｍｓ内に相互に同期させうる。
【００４１】
好ましくは、Ｐ２Ｐバス74上のメッセージは受信された順番で伝送され、Ｐ２Ｐバス通信サイクルの入力データ部308のみの間にグループとして送信される。所望ならば、隣接するスロットの安全ロジックサーバ、たとえばロジックサーバ50A、50Bは、バックプレーン76内におけるそれ自体の位置に基づいて、冗長関係を有するように、また第一のまたは第二の冗長デバイスになるように自動的に設定されてもよい。冗長対のデバイスを接続するために冗長バス50C、52Cなどがバックプレーン76内に配設されてもよい。一般的にいえば、設定が適切な場合、アクティブなまたは第一の安全ロジックソルバはグローバルブールメッセージを伝送するが、その一方、その冗長対のうちの第二のまたはスタンドバイ用の安全ロジックソルバはグローバルブールメッセージを伝送しない。よって、ＭＰＤは、アクティブなまたは第一の安全ロジックサーバからのグローバルブールメッセージを送信するのみである。もちろん、冗長対内の第二のまたはスタンドバイ用の安全ロジックソルバは、それ自体のコンフィギュレーション情報を、冗長リンク50C、52C、54C、56Cを利用してアクティブなまたは第一の安全ロジックソルバから取得しうる。スタンドバイソルバは、それ自体のブールデータおよびＩ／Ｏデータを、Ｐ２Ｐリンク104、106を利用してアクティブデバイスから取得する。フェイルオーバ（アクティブ安全ロジックソルバとスタンドバイ安全ロジックソルバとの間の切換え）の場合、新規のアクティブ安全ロジックソルバは、故障したアクティブデバイスにより以前に使用されていた時間スロットと同一のＰ２Ｐバス104、106上の時間スロットを用いてブロードキャストを開始する。アクティブ安全ロジックソルバが、指定された数の時間スロットの間、伝送に失敗した場合、スタンドバイ安全ロジックソルバは新規のアクティブ安全ロジックソルバとして引き継ぐが、この新規のアクティブ安全ロジックソルバは、このときには、以前アクティブであった安全ロジックソルバの時間スロットではなくそれ自体のローカル時間スロットでブロードキャストを行う。
【００４２】
ローカルＰ２Ｐバス104、106に接続されている安全ロジックソルバを同期するために以下の方法が用いられうる。まず、それらのデバイスに電力が供給され、（レイルバス90、100を管理する）コントローラデバイスからＢＰＩＤおよびＳＩＤが割り当てられる。ついで、それらのロジックソルバＳＩＤにより定められた時間スロットを用いてＰ２Ｐバス104、106からパケットを受信し、解析する。このアクティビティは、「伝送待ち」の秒数の間、実行される。この伝送待ち秒数は以下のように算出される。
伝送待ち（秒数）＝（（６４）（時間スロット継続時間））＋（（自己の時間スロット−１）（時間スロット継続時間））
「伝送待ち」の秒数が経過するまえにＰ２Ｐパケットが受信されなかった場合、安全ロジックソルバは、ローカルＰ２Ｐバス104、106上において「未設定」メッセージを直ちに伝送する。しかしながら、安全ロジックソルバが、「伝送待ち」時間の間に、一または複数のパケットを受信した場合、安全ロジックソルバは、これらのメッセージの時間と時間スロットを利用して、それ自体の伝送時間スロットの相対的な位置（時間）を判定する。
【００４３】
一般的にいえば、バックプレーン上のＭＰＤはローカルＰ２Ｐバス104、106に同期する。しかしながら、この同期を供与するローカル安全ロジックソルバが存在しない場合、ＭＰＤは、ローカルＰ２Ｐバス上で伝送を行わず、ローカル安全ロジックソルバがブロードキャストを開始したあとにのみそのローカルバスと同期する。メッセージをローカル安全ロジックソルバからＭＰＤがいったん受信すると、ＭＰＤは、それ自体の時間スロットを、そのローカル安全ロジックソルバと比較して判別することができる。
【００４４】
組み込まれた安全システムは、複数の有望なメッセージ構造または通信プロトコルのいずれか一つを採用しうるが、以下のメッセージ構造をローカルＰ２Ｐバス104、106および遠隔Ｐ２Ｐバス74上で採用してもよい。
【００４５】
一般的に、ローカルＰ２Ｐバスメッセージは、すべて、プリアンブル（たとえば、１バイト）、データ部またはメッセージ部（たとえば、１２９バイト）、およびポストアンブル（たとえば、１バイト）を含む三つの基本部分を有している。プリアンブル部およびポストアンブル部はハードウェアの同期用に設けられており、データ部は所与の送信先にとり重要である実際のメッセージを収納している。所望ならば、高レベルメッセージ構造のメッセージ部に対してハードウェアビット挿入を行ってもよい。
【００４６】
一般的にいえば、メッセージのデータ部またはメッセージ部は、全体としての長さが所与のアプリケーションの最大利用可能長さに至る７つのフィールドに分割しうる。たとえば、（１１バイトのプロトコルオーバヘッドを含む）１３８バイトが利用可能である。メッセージ部は、２バイトの送信元アドレスと、２バイトの送信先アドレスと、１バイトのタイプフィールドと、１バイトのデバイスステータスフィールドと、１バイトのレングスフィールドと、０〜１２８バイトのメッセージフィールドと、周期冗長データを提供する４バイトのＣＲＣフィールドとを有している。
【００４７】
たとえば、これらのフィールドを利用する一つの方法では、送信元アドレスフィールドは送信元デバイスのアドレスを有している。その上位のバイトはバックプレーンＩＤ（ＢＰＩＤ）を有しており、その下位のバイトはスロットＩＤ（ＳＩＤ）を有している。安全ロジックソルバは、ＳＯＵＲＣＥ  ＡＤＤＲＥＳＳを設定するまでは、ローカルＰ２Ｐバス上で伝送または受信することができない。始動時において、各安全ロジックソルバは、それ自体の完全なＳＯＵＲＣＥ  ＡＤＤＲＥＳＳをレイルバスを利用してコントローラから取得する。そのＳＯＵＲＣＥ  ＡＤＤＲＥＳＳのバックプレーンＩＤ（ＢＰＩＤ）部は、コントローラのＩＰアドレスの最右側オクテットに一致するように設定されている。そのＳＯＵＲＣＥ  ＡＤＤＲＥＳＳのスロットＩＤ（ＳＩＤ）部は、プロセスコントローラのレイルバスメッセージから導入されている。各安全ロジックソルバは、それ自体が完全なＳＯＵＲＣＥ  ＡＤＤＲＥＳＳを取得するまで、通信（送信または受信）しないことが好ましい。
【００４８】
ＤＥＳＴＩＮＡＴＩＯＮ  ＡＤＤＯＲＥＳＳフィールドは送信先デバイスのアドレスを有しうる。その上位のバイトはＢＰＩＤを有し、その下位のバイトはＳＩＤを有しうる。ＨＢ＝０であり、ＬＢ＝０である場合、そのメッセージはバス上のすべての遠隔安全ロジックソルバおよびローカル安全ロジックソルバのすべてに対するものであり。ＨＢ＝ＢＰＩＤであり、ＬＢ＝０である場合、そのメッセージはローカルバックプレーン上のノードのすべてに対するものであり。ＨＢ＝ＢＰＩＤであり、ＬＢ＝０である場合、そのメッセージはローカルバックプレーン上の特定のＳＩＤに対するものであり。最後に、ＨＢ＝０であり、ＬＢ＝０である場合、違法アドレスを示している。
【００４９】
メッセージＴＹＰＥフィールドは、メッセージデータフィールド内に含まれているメッセージのタイプに関する情報を有している。複数の異なるメッセージタイプを定義しうる。
【００５０】
ＤＥＶＩＣＥ  ＳＴＡＴＵＳフィールドは以下の項目を示すように適切に分割される。その項目には、たとえば、診断ステータス（エラーの有無を示す）、スイッチオーバステータス（進行中か否かを示す）、コントローラモード（標準モードかまたはエンジニアリングモードを示す）、安全トリップステータス（トリップしたか否かを示す）、冗長ステータス（冗長状態か否かを示す）、設定ステータス（設定完了か否かを示す）、コントローラタイプ（ロジックソルバにより判定され、スタンドバイかアクティブかを示す）、およびモード（モード値はコントローラからバスを経由して入手され、エンジニアリングモードかまたは標準モードかを示す）が含まれる。
【００５１】
ＬＥＮＧＴＨフィールドは、送信されてくるＭＥＳＳＡＧＥ  ＤＡＴＡフィールドの長さをバイト単位で格納しており、その長さはメッセージに依存する。
【００５２】
ＭＥＳＳＡＧＥ  ＤＡＴＡフィールドは、メッセージＴＹＰＥに従ってフォーマットされるメッセージのペイロードであり、その長さはメッセージに依存する。
【００５３】
最後に、ＣＲＣフィールド、すなわち周期冗長検査／コードフィールドは、ＳＯＵＲＣＥ  ＡＤＤＲＥＳＳフィールド、ＴＹＰＥフィールド、ＤＥＶＩＣＥ  ＳＴＡＴＵＳフィールド、ＬＥＮＧＴＨフィールド、およびＭＥＳＳＡＧＥ  ＤＡＴＡフィールドから計算される。ＣＲＣフィールドもメッセージに依存する。
【００５４】
開示された一例では、遠隔Ｐ２ＰバスメッセージはＭＰＤ間のみで送信されうる。一般的にいえば、遠隔Ｐ２Ｐバスメッセージは、すべて、イーサネット（登録商標）ＩＥＥＥ８０２．３プロトコルパケットのＤＡＴＡ部内にカプセル化される。このパケットは、たとえば、７バイトのプリアンブルと、１バイトのフレーム開始デリミタと、６バイトの送信先アドレスと、６バイトの送信元アドレスと、２バイトのタイプ／レングスフィールドと、４６〜１５００バイトのデータフィールドと、４バイトのフレームチェックシーケンスフィールドとを有している。
【００５５】
公知のように、このフレームは、１と０とが交互に混在する７バイトのプリアンブルで始まる。このフレームがマンチェスタ符号により符号化されている場合、プリアンブルは、同期すべき既知のパターンを送信先ステーションに供与する。フレーム開始デリミタが、そのプリアンブルの後に続き、そこがフレームの先頭であることを示す。送信先アドレスおよび送信元アドレスは、送信先装置が無差別にリッスンしているので、通常、互に、無関係である。
【００５６】
イーサネット（登録商標）ＴＹＰＥ／ＩＥＥＥ８０２．３ＬＥＮＧＴＨフィールドはそのフレームのその他において使われるプロトコルを表し、レングスフィールドはそのフレームのデータ部の長さを指定している。イーサネット（登録商標）フレームおよびＩＥＥＥ８０２．３フレームが同一のＬＡＮで共存するために、フレームのレングスフィールドは、利用されるどのタイプのフィールドとも常に異なっていなければならない。これにより、フレームのデータ部の長さは１５００バイトに限定され、全体としてのフレームの長さは１５１８バイトに限定される。安全ロジックソルバの場合、そのタイプはイーサネット（登録商標）であり、データフィールドの長さはメッセージのサイズである。データフィールドは、安全ロジックソルバにより送信されているＰ２Ｐメッセージを有している。データ長が４６バイトよりも少ないメッセージはパッディングされる。公知のように、４バイトのフレームチェックシーケンスフィールドは標準４３ビットＣＣＩＴＴ−ＣＲＣ多項式のためのものである。
【００５７】
所望の場合には、高レベルメッセージ構造のデータ部を、全長が最大５５１バイトの三つのフィールドに分割してもよい（６バイトのプロトコルオーバヘッドを含む）。さらに、低レベルメッセージ構造は２５６のメッセージタイプを考慮に入れたものである。タイプフィールドは各メッセージタイプを一意に識別し、メッセージタイプは対応するレンクスフィールド値を有している。このレンクスフィールド値は各メッセージのデータ部の長さを指定する。メッセージタイプはカプセル化されたブールデータであってもよい。１〜３２のブールデータメッセージのうちの任意の数が全体のメッセージ内にカプセル化される。
【００５８】
本発明は特定の例を参照して記載されてきたが、それらは、例示のみを意図したものであり、本発明を制限することを意図したものではない。したがって、本発明の精神および範疇から逸脱することなく開示された実施例に変更、追加、または削除を加えうることは当業者にとって明らかである。
【図面の簡単な説明】
【００５９】
【図１】プロセス制御システムと統合されている安全システムを備えるプロセスプラントの一例を示すブロック線図である。
【図２】図１のワークステーションのうちの一つのワークステーション内のコンフィギュレーションアプリケーションにより生成された、図１の前記プロセスプラントのプロセス制御システムデバイスおよび安全システムデバイスの両方を示しているコンフィギュレーションビューを示すスクリーン表示画面である。
【図３】第一の通信ネットワークを介して相互に通信可能に接続されるとともに、第二のかつ共有の通信ネットワークを介してプロセス制御システムコントローラおよびオペレータインターフェイスとさらに接続されている複数の安全システムコントローラのブロック線図である。
【図４】図１および図３の前記安全システムで利用されるローカルピア・ツー・ピアバスのバスサイクルを示す略式線図である。
【図１】
2008102954.tif 000003
【図２】
2008102954.tif 000004
【図３】
2008102954.tif 000005
【図４】
2008102954.tif 000006