(57)【要約】      （修正有）【課題】第１フレーム周期を有する第１コントロールセットと第２フレーム周期に設定される第２コントロールセットが混用された産業用制御システムを提供する。【解決手段】第１コントロールセットは、少なくとも１つの第１入力／出力（Ｉ／Ｏ）パックと、少なくとも１つの第１コントローラと、を含む。産業用制御システムは、更に、第２フレーム周期に設定される第２コントロールセットを有する。第２コントロールセットは、少なくとも１つの第２入力／出力（Ｉ／Ｏ）パックと、少なくとも１つの第２コントローラと、を含む。混合フレームレートロジックデバイスを、更に産業用制御システムに含める。このデバイスは、第１及び第２フレーム周期が異なる場合に第１コントロールセットから第２コントロールセットに供給される入力データ、出力データ又は両方のデータの共有を処理する。【選択図】図１
2015115956.tif 000002
【特許請求の範囲】
【請求項１】
第１フレーム周期に設定される第１コントロールセットであって、前記第１コントロールセットが、
少なくとも１つの第１入力／出力（Ｉ／Ｏ）パックと、
少なくとも１つの第１コントローラと、を備える、前記第１コントロールセットと、
第２フレーム周期に設定される第２コントロールセットであって、前記第２コントロールセットが、
少なくとも１つの第２入力／出力（Ｉ／Ｏ）パックと、
少なくとも１つの第２コントローラと、を備える、前記第２コントロールセットと、
前記第１及び第２フレーム周期が異なる場合に、前記第１コントロールセットから前記第２コントロールセットに供給される入力データ、出力データ、又は入力データ及び出力データの両方のデータの共有を処理するように構成される混合フレームレートロジック（６２）デバイスと、
を備える、産業用制御システム。
【請求項２】
前記混合フレームレートロジック（６２）デバイスは、前記第１フレーム周期が前記第２フレーム周期より遅い場合に入力データ、出力データ、又は入力データ及び出力データの両方のデータの共有を、
前記入力データ、出力データ、又は入力データ及び出力データの両方のデータを受信するタイムアウト閾値を前記第２フレーム周期に基づいて設定し、そして
タイムアウト通知を、前記入力データが前記タイムアウト閾値により定義される期間以内に受信されない場合にのみ行うことにより処理するように構成される、請求項１に記載のシステム。
【請求項３】
前記混合フレームレートロジック（６２）デバイスは、前記第１フレーム周期が前記第２フレーム周期より遅い場合に入力データ、出力データ、又は入力データ及び出力データの両方のデータの共有を、
前記入力データ、出力データ、又は入力データ及び出力データの両方のデータを前記第２コントロールセットに供給して、次の処理を前記第１フレーム周期に基づいて行うことにより処理するように構成される、請求項１に記載のシステム。
【請求項４】
前記混合フレームレートロジック（６２）デバイスは、前記第１フレーム周期が前記第２フレーム周期より速い場合に入力データ、出力データ、又は入力データ及び出力データの両方のデータの共有を、
前記入力データ、出力データ、又は入力データ及び出力データの両方のデータのフレーム番号が、前記第２フレーム周期の整数倍であるかどうかを判断し、そして
前記第２フレーム周期の整数倍ではない関連フレーム番号を有する全てのフレームを廃棄することにより処理するように構成される、請求項１に記載のシステム。
【請求項５】
前記第２フレーム周期の整数倍ではない前記関連フレーム番号を有する前記フレームは、前記第２コントロールセットのアプリケーションレイヤ（９６）に届く前に廃棄される、請求項４に記載のシステム。
【請求項６】
前記第２フレーム周期の整数倍ではない前記関連フレーム番号を有する前記フレームは、高速のユーザデータグラムプロトコル（ＵＤＰ）フィルタを使用して廃棄される、請求項４に記載のシステム。
【請求項７】
前記混合フレームレートロジック（６２）デバイスは、前記第１フレーム周期が前記第２フレーム周期より速い場合に入力データ、出力データ、又は入力データ及び出力データの両方のデータの共有を、
前記第２フレーム周期の整数倍である前記関連フレーム番号を持つ前記入力データ、出力データ、又は入力データ及び出力データの両方のデータを前記第２フレームセットに供給して、次の処理を行うことにより処理するように構成される、請求項４に記載のシステム。
【請求項８】
前記フレーム番号は、前記産業用制御システム（１０）の同期時間に基づいて設定される、請求項４に記載のシステム。
【請求項９】
前記同期時間は、ＩＥＥＥ１５８８高精度時間プロトコルに基づいて定義される、請求項８に記載のシステム。
【請求項１０】
前記第１コントローラ、前記第２コントローラ、又は前記第１コントローラ及び前記第２コントローラの両方のコントローラは、前記混合フレームレートロジック（６２）デバイスを備える、請求項１に記載のシステム。
【請求項１１】
前記第１Ｉ／Ｏパック、前記第２Ｉ／Ｏパック、又は前記第１Ｉ／Ｏパック及び前記第２Ｉ／Ｏパックの両方のＩ／Ｏパックは、前記混合フレームレートロジック（６２）デバイスを備える、請求項１に記載のシステム。
【請求項１２】
前記混合フレームレートロジック（６２）デバイスを有する少なくとも１つのスイッチを備える、請求項１に記載のシステム。
【請求項１３】
機械可読命令を備え、これらの機械可読命令によって、
入力データ、出力データ、又は入力データ及び出力データの両方のデータを、第１フレーム周期に設定される第１コントロールセットから送信し、
前記入力データ、前記出力データ、又は前記入力データ及び前記出力データの両方のデータを、第２フレーム周期に設定される第２コントロールセットが、前記第１及び第２フレーム周期が異なっている環境で受信し、
タイムアウト閾値を、異なる前記第１及び第２フレーム周期を考慮に入れて変更し、そして
前記第２コントロールセットによる前記入力データ、前記出力データ、又は前記入力データ及び前記出力データの両方のデータの処理を、異なる前記第１及び第２フレーム周期を考慮に入れて変更する、
非一時的な有形機械可読媒体。
【請求項１４】
機械可読命令を備え、これらの機械可読命令によって前記タイムアウト閾値を、
入力データ、出力データ、又は入力データ及び出力データの両方のデータを受信する必要がある期間閾値を示す前記タイムアウト閾値を、前記第１フレーム周期及び前記第２フレーム周期のうちの遅い方のフレーム周期に基づいて設定することにより変更する、請求項１３に記載の機械可読媒体。
【請求項１５】
機械可読命令を備え、これらの機械可読命令によって前記入力データ、前記出力データ、又は前記入力データ及び前記出力データの両方のデータの処理を、
前記入力データ、前記出力データ、又は前記入力データ及び前記出力データの両方のデータを、前記第２コントロールセットの処理構成要素に、前記第１フレーム周期及び前記第２フレーム周期のうちの遅い方のフレーム周期に基づいて供給する、請求項１３に記載の機械可読媒体。
【請求項１６】
機械可読命令を備え、これらの機械可読命令によって前記入力データ、前記出力データ、又は前記入力データ及び前記出力データの両方のデータの処理を、
前記入力データ、前記出力データ、又は前記入力データ及び前記出力データの両方のデータを、前記第２コントロールセットのアプリケーションレイヤ（９６）に、前記第１フレーム周期及び前記第２フレーム周期のうちの遅い方のフレーム周期に基づいて供給する、請求項１３に記載の機械可読媒体。
【請求項１７】
機械可読命令を備え、これらの機械可読命令によって前記第１フレーム周期、前記第２フレーム周期、又は前記第１フレーム周期及び前記第２フレーム周期の両方のフレーム周期を、産業用制御システム（１０）の１つ以上のコンフィグレーションシステムの１つ以上のコンフィグレーションファイルを解釈することにより決定する、請求項１３に記載の機械可読媒体。
【請求項１８】
機械可読命令を備え、これらの機械可読命令によって前記第１フレーム周期、前記第２フレーム周期、又は前記第１フレーム周期及び前記第２フレーム周期の両方のフレーム周期を、前記第１コントロールセット、前記第２コントロールセット、又は前記第１コントロールセット及び前記第２コントロールセットの両方のコントロールセットのデータ伝送レートをモニタリングすることにより決定する、請求項１３に記載の機械可読媒体。
【請求項１９】
少なくとも１つの混合フレームレートロジック（６２）モジュールを備え、前記少なくとも１つの混合フレームレートロジック（６２）モジュールは、
データを受信するタイムアウト閾値を、データ送信側装置に関連する第１フレームレート、及びデータ受信側装置に関連する第２フレームレートのうちの遅い方のフレームレートに基づいて設定し、そして
データを前記データ受信側装置に供給して次の処理を、前記第１フレームレート及び前記第２フレームレートのうちの遅い方のフレームレートで行うように構成される、産業用制御システム（１０）。
【請求項２０】
前記少なくとも１つの混合フレームレートロジック（６２）モジュールのホストとなるように構成される産業用制御システムコントローラ（２６）、ネットワークスイッチ、入力／出力モジュール、又はこれらの構成要素の任意の組み合わせを備え、
前記データ送信側装置は、第１コントロールセットの第１コントローラ、第１入力／出力モジュール、又は第１コントローラ及び第１入力／出力モジュールの両方を備え、前記データ受信側装置は、第２コントロールセットの第２コントローラ、第２入力／出力モジュール、又は第２コントローラ及び第２入力／出力モジュールの両方を備える、請求項１９に記載の産業用制御システム（１０）。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書において開示される主題は、自動制御システムに関する。詳細には、本出願は、異なるフレームレート／周期を有する複数のコントローラを共通の物理ネットワークに配備することに関する。
【背景技術】
【０００２】
産業用制御システムのような特定のシステムは、制御命令を、センサ、ポンプ、バルブなどのような種々の種類の装置において実行することができる制御機能を提供することができる。これらのシステムが更に高機能化するにつれて、装置の数が大幅に増えて、支援用ハードウェアが増え、データが増え、そしてシステムを流れるネットワークトラフィックが増える。
【発明の概要】
【０００３】
特定の制御システムでは、複数のコントローラを共通の物理ネットワークに常駐させることができ、そしてこれらのコントローラは、互いのコントローラの入力／出力モジュール（例えば、Ｉ／Ｏパック）からのデータを消費してしまう。多くの場合、産業用制御システムのコントローラは、ネットワークの他のコントローラとは異なるフレームレート／周期でデータを送信及び／又は受信する可能性がある。残念なことに、従来の実施形態では、入力／出力モジュールを共通の物理ネットワーク上で共有するコントローラは、異なる送信フレームレート及び／又は受信フレームレートを有することが許容されない。
【０００４】
最初に特許請求した発明の範囲と同等である特定の実施形態は、以下に要約されている。これらの実施形態は、特許請求した発明の範囲を限定するために提示されるのではなく、これらの実施形態は、本発明について考えられる構成を簡単に要約するためにのみ提示される。実際、本発明は、以下に説明される種々実施形態と同様の、又はこれらの実施形態とは異なる多種多様な構成を包含することができる。
【０００５】
第１の実施形態では、第１フレーム周期を有する第１コントロールセットを含む産業用制御システムが提供される。前記第１コントロールセットは、少なくとも１つの第１入力／出力（Ｉ／Ｏ）パックと、少なくとも１つの第１コントローラと、を含む。前記産業用制御システムは更に、第２フレーム周期に設定される第２コントロールセットを有する。前記第２コントロールセットは、少なくとも１つの第２入力／出力（Ｉ／Ｏ）パックと、少なくとも１つの第２コントローラと、を含む。混合フレームレートロジックデバイス（例えば、前記コントローラ内のロジック）を更に、前記産業用制御システムに含める。このデバイスは、前記第１及び第２フレーム周期が異なる場合に前記第１コントロールセットから前記第２コントロールセットに供給される入力データ、出力データ、又は入力データ及び出力データの両方のデータの共有を処理することができる。
【０００６】
第２の実施形態では、非一時的な有形機械可読媒体は機械可読命令を含み、これらの機械可読命令によって、入力データ、出力データ、又は入力データ及び出力データの両方のデータを、第１フレーム周期に設定される第１コントロールセットから送信し、前記入力データ、前記出力データ、又は前記入力データ及び前記出力データの両方のデータを、第２フレーム周期に設定される第２コントロールセットが、前記第１及び第２フレーム周期が異なっている環境で受信し、タイムアウト閾値を、異なる前記第１及び第２フレーム周期を考慮に入れて変更し、そして前記第２コントロールセットによる前記入力データ、前記出力データ、又は前記入力データ及び前記出力データの両方のデータの処理を、異なる前記第１及び第２フレーム周期を考慮に入れて変更する。
【０００７】
第３の実施形態では、産業用制御システムは、少なくとも１つの混合フレームレートロジックモジュールを含む。前記混合フレームレートロジックモジュールは、データを受信するタイムアウト閾値を、データ送信側装置に関連する第１フレームレート、及びデータ受信側装置に関連する第２フレームレートのうちの遅い方のフレームレートに基づいて設定し、そしてデータを前記データ受信側装置に供給して次の処理を、前記第１フレームレート及び前記第２フレームレートのうちの遅い方のフレームレートで行う。
【０００８】
本発明のこれらの特徴、態様、及び利点、及び他の特徴、態様、及び利点は、以下の詳細な説明を、同様の記号が同様の構成要素を、これらの図面全体を通じて指している添付の図面を参照して一読することにより一層深く理解されるようになる。
【図面の簡単な説明】
【０００９】
【図１】１つの実施形態によるマルチフレームレートコントロールセット全体に亘るデータの共有を処理するマルチフレームレートロジックモジュールを含む自動制御システム（例えば、産業用制御システム）の１つの実施形態の模式図である。
【図２】１つの実施形態による異なるフレームレート／周期を有するコントローラの間で共有される入力／出力モジュールを示すブロック図である。
【図３】１つの実施形態によるコントローラの予測フレームレートがＩ／Ｏパックのフレームレートより速い場合にマルチレートコントローラ入力を行うプロセスを示すフローチャートである。
【図４】１つの実施形態によるコントローラの予測フレームレートがＩ／Ｏパックのフレームレートより遅い場合にマルチレートコントローラ入力を行うプロセスを示すフローチャートである。
【図５】１つの実施形態によるＩ／Ｏパックの予測フレームレートが、出力データを送信するコントローラのフレームレートより速い場合にマルチレートコントローラ出力を行うプロセスを示すフローチャートである。
【図６】１つの実施形態によるＩ／Ｏパックの予測フレームレートが、出力データを送信するコントローラのフレームレートより遅い場合にマルチレートコントローラ出力を行うプロセスを示すフローチャートである。
【発明を実施するための形態】
【００１０】
本発明の１つ以上の特定の実施形態について以下に説明することとする。これらの実施形態について正確な記載を行おうとするために、実際の実施形態の全ての特徴が本明細書において記載されている訳ではない。いずれかの技術プロジェクト又は設計プロジェクトにおけるようなこのようないずれかの実際の実施形態を開発するに当たって、実施形態に特有の非常に多くの決定を下して、実施形態ごとに変わり得るシステム関連制約及びビジネス関連制約を遵守するといった開発者に特有の目標を達成する必要があることを理解されたい。更に、このような開発努力は複雑であり、かつ多大な時間を要する可能性があるが、本開示の恩恵を享受する当業者にとっては、設計、組立、及び製造に関する日常的な作業であることを理解されたい。
【００１１】
本発明の種々の実施形態の構成要素を紹介する場合、冠詞「ａ」、「ａｎ」、「ｔｈｅ」、及び「ｓａｉｄ」は、これらの構成要素のうちの１つ以上の構成要素が存在することを意味するために用いられる。「ｃｏｍｐｒｉｓｉｎｇ」、「ｉｎｃｌｕｄｉｎｇ」、及び「ｈａｖｉｎｇ」という用語は、包含するという意味に用いられ、列挙されるこれらの構成要素以外に更に別の構成要素が存在し得ることを意味するために用いられる。
【００１２】
産業用制御システムは、データを特定のレート（例えば、特定のフレームレート／周期）で送信及び／又は受信するコントローラ及び／又は入力／出力モジュール（例えば、Ｉ／Ｏパック）を含むことができる。例えば、これらのコントローラ及び／又はＩ／Ｏパックは、種々のフレーム周期に設定することができる（例えば、１０ｍｓ、２０ｍｓ、４０ｍｓ、８０ｍｓ、１６０ｍｓ、３２０ｍｓなどの単位の周期で１フレームを送信／受信する）。これは、フレームレートとして測定することもできる（例えば、１０ｍｓ／ｆｒａｍｅ、２０ｍｓ／ｆｒａｍｅ、４０ｍｓ／ｆｒａｍｅ、８０ｍｓ／ｆｒａｍｅ、１６０ｍｓ／ｆｒａｍｅ、３２０ｍｓ／ｆｒａｍｅなど）。従来より、コントロールセット（例えば、コントローラ、及びコントローラの接続先のＩ／Ｏパック）を利用して、制御システム内のデータ通信を安定させている。例えば、従来のシステムでは、Ｉ／Ｏパックは特定のコントローラに接続され、この場合、共通のタイミングをＩ／Ｏパックと接続先のコントローラとの間で使用していた。これにより、予測可能性がＩ／Ｏパックと接続先のコントローラとの間に生じて、これらの構成要素の間の通信を容易にすることができた。
【００１３】
しかしながら、ごく最近、別々のコントロールセットの間で共有する方向の動きがみられる。例えば、ごく最新の手法では、第１コントロールセットの第１のＩ／ＯパックのＩ／Ｏポートを第２コントロールセットのコントローラが利用することができる。これは、例えば第２コントロールセットに利用可能なポートがない場合に、第１コントロールセットの空きポートを第２コントロールセットが使用することができるので有用となり得る。従って、ハードウェアコストは、更に別のハードウェアを第１コントロールセット用に購入するのではなく、別のコントロールセットの空きポートを利用することにより減らすことができる。残念なことに、フレームレート／周期は、コントロールセットの間で異なる可能性があるので、データ入力／出力は、一致しない時点で受信及び／又は送信されることになる。
【００１４】
以下に説明される実施形態は、産業用制御システムの混合フレームレートロジックを提供し、この産業用制御システムでは、コントロールセットを互いに、一致するフレームレート／周期で通信させることができる。従って、データは、これらのコントロールセットが、同じ送信／受信フレームレート／周期を有しているかどうかに関係なく、これらのコントロールセットの間で、同じタイミングを利用して共有することができる。これにより、産業用制御システムの新たな効率を生み出すことができる。
【００１５】
図１を参照するに、産業用プロセス制御システム１０の１つの実施形態が図示されている。制御システム１０は、多種多様なフィールドデバイスコンフィグレーション及びモニタリングアプリケーションを実行し、かつオペレータインターフェースを提供するために適するコンピュータ１２を含むことができ、このオペレータインターフェースを介して、エンジニア又は技術者は、制御システム１０の構成要素をモニタリングすることができる。コンピュータ１２は、ソフトウェアアプリケーションを実行するために適するラップトップ、ワークステーション、タブレットコンピュータ、又は携帯型機器（例えば、携帯情報端末又は携帯電話機）のようないずれかの種類の計算装置とすることができる。実際、コンピュータ１２は、多種多様なハードウェアプラットフォーム及び／又はオペレーティングシステムプラットフォームのうちのいずれかのプラットフォームを含むことができる。１つの実施形態によれば、コンピュータ１２は、ヒューマンマシンインターフェース（ＨＭＩ）ソフトウェア１４、製造実行システム（ＭＥＳ）１６、分散制御システム（ＤＣＳ）１８、及び／又は監視制御／データ取得（ＳＣＡＤＡ）システム２０のような産業用制御ソフトウェアのホストとなることができる。例えば、コンピュータ１２は、Ｎｅｗ  Ｙｏｒｋ（ニューヨーク）州のＳｃｈｅｎｅｃｔａｄｙ（スケネクタディ）市にあるゼネラルエレクトリック社のＣｏｎｔｒｏｌＳＴ（商標）ソフトウェアのホストとなることができる。
【００１６】
更に、コンピュータ１２は、図示のコンピュータ１２と工場内の他のコンピュータ１２との間の通信を可能にするために適するプラントデータハイウェイ２２に通信可能に接続される。実際、産業用制御システム１０は、プラントデータハイウェイ２２を介して相互接続される複数のコンピュータ１２を含むことができる。コンピュータ１２は更に、コンピュータ１２を産業用コントローラ２６に通信可能に接続するために適するユニットデータハイウェイ２４に通信可能に接続することができる。システム１０は、プラントデータハイウェイ２２及び／又はユニットデータハイウェイ２４に接続される他のコンピュータを含むことができる。例えば、制御システム１０の種々実施形態は、仮想コントローラを実行するコンピュータ２８、イーサネット（登録商標）グローバルデータ（ＥＧＤ）コンフィグレーションサーバ、オブジェクトリンクと埋め込み（Ｏｂｊｅｃｔ  Ｌｉｎｋｉｎｇ  ａｎｄ  Ｅｍｂｅｄｄｉｎｇ）を使用したプロセスコントロール（ＯＰＣ）データアクセス（ＤＡ）サーバ、アラームサーバ、又はこれらのサーバの組み合わせのホストとなるコンピュータ３０と、ゼネラルエレクトリックデバイスシステムスタンダードメッセージ（ＧＳＭ）（登録商標）サーバのホストとなるコンピュータ３２と、ＯＰＣアラーム／イベント（ＡＥ）サーバのホストとなるコンピュータ３４と、アラームビューアのホストとなるコンピュータ３６と、を含むことができる。プラントデータハイウェイ２２及び／又はユニットデータハイウェイ２４に接続される他のコンピュータは、Ｎｅｗ  Ｙｏｒｋ（ニューヨーク）州のＳｃｈｅｎｅｃｔａｄｙ（スケネクタディ）市にあるゼネラルエレクトリック社のＣｉｍｐｌｉｃｉｔｙ（商標）、ＣｏｎｔｒｏｌＳＴ（商標）、及びＴｏｏｌｂｏｘＳＴ（商標）のホストとなるコンピュータを含むことができる。
【００１７】
システム１０は、任意の数の、かつ適切な構成の産業用コントローラ２６を含むことができる。例えば、幾つかの実施形態では、システム１０は、１つの産業用コントローラ２６、２つの産業用コントローラ２６、又は３つの、或いは３つよりも多くの産業用コントローラを含むことにより冗長性を確保することができる。これらの産業用コントローラ２６は、タービンシステム３８、バルブ４０、及びポンプ４２のような多種多様な工場設備を自動化するために有用な制御ロジックを作動させることができる。実際、これらの産業用コントローラ２６は、これらには限定されないが、温度センサ４４、フローメータ、ｐＨセンサ、温度センサ、振動センサ、間隙センサ（例えば、回転部材品と固定部材との間の距離を測定する）、及び圧力センサを含む多種多様な装置と通信することができる。産業用コントローラ２６は更に、電気アクチュエータ、スイッチ（例えば、ホールスイッチ、ソレノイドスイッチ、リレースイッチ、リミットスイッチ）などと通信することができる。
【００１８】
図示の実施形態では、タービンシステム３８、バルブ４０、ポンプ４２、及び温度センサ４４は、オートメーションコントローラ２６に、Ｉ／Ｏ  ＮＥＴ５０とＨ１ネットワーク５２との間のインターフェースとなるために適するリンク装置４６及び４８を使用することにより通信可能に相互接続される。例えば、リンク装置４６及び４８は、ドイツのＨａａｒ（ハール）にあるＳｏｆｔｉｎｇ  ＡＧ社のＦＧ−１００リンク装置を含むことができる。幾つかの実施形態では、リンク装置４８のようなリンク装置は、スイッチ５４を介してＩ／Ｏ  ＮＥＴに接続することができる。このような実施形態では、Ｉ／Ｏ  ＮＥＴ５０に接続される他の構成要素を、これらの産業用コントローラ２６のうちの１つの産業用コントローラのように、スイッチ５４に接続することもできる。従って、１００メガビット（ＭＢ）高速イーサネット（登録商標）（ＨＳＥ）ネットワークのようなＩ／Ｏ  ＮＥＴ５０を介して送信及び受信されるデータを今度は、３１．２５キロビット／秒のネットワークのようなＨ１ネットワーク５２を介して送信及び受信することができる。すなわち、リンク装置４６及び４８は、Ｉ／Ｏ  ＮＥＴ５０とＨ１ネットワーク５２との間のブリッジとして機能することができる。
【００１９】
多種多様な装置は、産業用コントローラ２６に、かつコンピュータ１２に接続することができる。例えば、タービンシステム３８、バルブ４０、ポンプ４２、及び温度センサ４４のようなこれらの装置は、フィールドバス協会が制定する（Ｆｏｕｎｄａｔｉｏｎ  Ｆｉｅｌｄｂｕｓ）規格に対応し、かつＦｏｕｎｄａｔｉｏｎ  Ｈ１（ファンデーションＨ１）双方向通信プロトコルをサポートするフィールドバス対応機器のような産業用装置を含むことができる。このような実施形態では、ＰＡ（ペンシルバニア）州のＭｉｄｄｌｅｔｏｗｎ（ミドルタウン）にあるＰｈｏｅｎｉｘ  Ｃｏｎｔａｃｔ（フェニックスコンタクト）社のＰｈｏｅｎｉｘ  Ｃｏｎｔａｃｔ  Ｆｉｅｌｄｂｕｓ  Ｐｏｗｅｒ  Ｓｕｐｐｌｙ（フェニックスコンタクトフィールドバス電源）のようなＦｏｕｎｄａｔｉｏｎ  Ｆｉｅｌｄｂｕｓ（ファンデーションフィールドバス）電源５３を更に、Ｈ１ネットワーク５２に接続することができ、かつＡＣ電源又はＤＣ電源のような電源に接続することができる。電源５３は、電力を装置３８、４０、４２、及び４４に供給するだけでなく、装置３８、４０、４２、及び４４の間の通信を可能にするために適合させることができる。有利な点として、Ｈ１ネットワーク５２は、電源信号及び通信信号（例えば、警報信号）の両方の信号を、同じ有線を用いて、通信干渉を最小限に抑えて伝送することができる。装置３８、４０、４２、及び４４は更に、ＨＡＲＴ（登録商標）Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｆｏｕｎｄａｔｉｏｎ（ＨＣＦ）プロトコル及びＰｒｏｆｉｂｕｓ  Ｎｕｔｚｅｒ  Ｏｒｇａｎｉｚａｔｉｏｎ  ｅ．Ｖ．（ＰＮＯ）プロトコルに含まれる通信プロトコルのような他の通信プロトコルをサポートすることができる。
【００２０】
リンク装置４６及び４８の各リンク装置は、Ｈ１ネットワーク５２をセグメント化するために有用な１つ以上のセグメントポート５６及び５８を含むことができる。例えば、リンク装置４６がセグメントポート５６を使用して、装置３８及び４４に通信可能に接続することができるのに対し、リンク装置４８は、セグメントポート５８を使用して、装置４０及び４２に通信可能に接続することができる。装置３８、４０、４２、及び４４の間の入力／出力を、例えばセグメントポート５６及び５８を使用して分散させることにより、故障余裕、冗長性を保ち、かつ通信時間を短縮するために有用な物理的分離を可能にすることができる。幾つかの実施形態では、更に別の装置をＩ／Ｏ  ＮＥＴ５０に接続することができる。例えば、１つの実施形態では、Ｉ／Ｏパック６０をＩ／Ｏ  ＮＥＴ５０に接続することができる。Ｉ／Ｏパック６０は、システム１０への更に別のセンサ及びアクチュエータの接続を可能にすることができる。
【００２１】
図示のように、複数のコントローラ２６は、同じ物理ネットワークに常駐させることができる。Ｉ／Ｏパック６０（例えば、入力／出力モジュール）を特定のコントローラ２６に関連付けることにより、コントロールセット（例えば、コントロールセット６２及びコントロールセット６４）を形成する。しかしながら、上に説明したように、特定の状況では、１つのコントロールセット（例えば、コントロールセット６２）が、データを消費し、かつ／又はデータを別のコントロールセット（例えば、コントロールセット６４）に送信する構成が有用となり得る。例えば、以下に更に詳細に説明されることであるが、システム１０のコントローラ２６のうちの１つ以上のコントローラ（例えば、コントロールセット６２のコントローラ２６）は、データを消費し、かつ／又はデータを別のコントロールセットのＩ／Ｏパック６０（例えば、コントロールセット６４のＩ／Ｏパック６０）に送信することができる。しかしながら、これらのコントロールセット（例えば、コントローラ２６及びコントローラが関連するＩ／Ｏパック６０）は、データを特定のフレームレートで受信するように設定されるので、均一なフレームレート／周期が、別のコントローラ２６のＩ／Ｏパック６０との相互伝送及び／又は相互消費を可能にするために使用される必要がある。
【００２２】
従って、システム１０は、混合フレームレートロジック６２モジュール（例えば、非一時的な機械可読媒体に格納される機械実行命令）を含むことができ、この混合フレームレートロジックモジュールがプロセッサによって実行されると、混合フレームレートロジックモジュールによって、フレームレート／周期が異なるこれらのコントロールセット（例えば、コントロールセット６４）のフレームレート／周期を安定させることができる。例えば、ロジック６２は、データ通信タイムアウト設定及びデータ取り込み設定を変更することができる。図１に示すように、混合フレームレートロジック６２は、Ｉ／Ｏ  ＮＥＴ５０に実装することができる。例えば、混合フレームレートロジック６２は、Ｉ／Ｏ  ＮＥＴ５０に接続されるコントローラ２６のうちの１つ以上のコントローラのような処理装置に実装することができる。
【００２３】
混合フレームレートロジック６２を有する産業用制御システム１０について説明してきたが、図２は、１つの実施形態による異なるフレームレート／周期を有するコントロールセットの間で共有される入力／出力モジュール（例えば、Ｉ／Ｏパック６０）を示すブロック図である。図２に示す例では、２つのコントロールセット、すなわちコントロールセット８２及びコントロールセット８４を設ける。図を分かり易くするために、「Ａ」が後に来る参照番号がコントロールセット８２の複数の構成部分を表しているのに対し、「Ｂ」が後に来る参照番号は、コントロールセット８４の複数の構成部分を表している。図示のように、コントロールセット８２はコントローラ２６Ａと、１つ以上のポート９２Ａを備えるスイッチ９０Ａと、１つ以上のＩ／Ｏパック６０Ａと、を含む。コントローラ２６Ａは、通信ハードウェア９３Ａと、通信ハードウェア９３Ａのドライバ９４Ａ（例えば、データを解釈させる機械実行可能命令）と、混合フレームレートロジック６２Ａと、アプリケーションレイヤ９６Ａと、を含むことができる。通信ハードウェア９３Ａは、パケットをＩ／Ｏ  ＮＥＴ５０から受信することができ、ドライバ９４Ａは命令をコントローラ２６Ａに供給して、ハードウェア９３Ａが受信するデータを解釈させることができ、アプリケーションレイヤ９６Ａは、解釈データを利用することができる。コントロールセット６２内で通信が行われる場合、コントロールセット６２のスイッチ７０Ａは、データを特定のコントロールセット６２の正しいコントローラ２６Ａに／コントローラ２６Ａから、Ｉ／Ｏ  ＮＥＴ５０及びスイッチ５４を介して誘導することができる。図５に示すように、コントロールセット６２は、１０ｍｓのフレーム周期を有することができる。
【００２４】
また、コントロールセット８４もまた、コントローラ２６Ｂと、１つ以上のポート９２Ｂを備えるスイッチ９０Ｂと、１つ以上のＩ／Ｏパック６０Ｂと、を含むことができる。通信ハードウェア９３Ｂは、パケットをＩ／Ｏ  ＮＥＴ５０から受信することができ、ドライバ９４Ｂは命令をコントローラ２６Ｂに供給して、ハードウェア９３Ｂが受信するデータを解釈させることができ、アプリケーションレイヤ９６Ｂは、解釈データを利用することができる。コントロールセット８２と同様に、コントロールセット内で通信が行われる場合、コントロールセット８４のスイッチ９０Ｂは、データをコントロールセット８４の正しいコントローラ２６Ｂに／コントローラ２６Ｂから、Ｉ／Ｏ  ＮＥＴ５０及びスイッチ５４を介して誘導することができる。図示のように、現在の例では、コントロールセット８４は、４０ｍｓのフレーム周期を有することができる。
【００２５】
上述したように、１つのコントロールセットのＩ／Ｏパック６０を別のコントロールセットと共有することが望ましい。例えば、限られた数のポート９２Ａ（例えば、１０個のポート）をスイッチ９０Ａに設けることができる。１０個のＩ／Ｏパック６０Ａが、スイッチ９０Ａの１０個のポート９２Ａに既に接続されている場合、更に別のＩ／Ｏパック６０Ａをコントロールセット８２に追加することはできない。従って、空きポート９２Ｂが、コントロールセット８４のスイッチ９０Ｂにない場合、新規のＩ／Ｏパック６０Ｂをスイッチ９０Ｂに接続して新規のＩ／Ｏパック６０Ｂのデータをコントロールセット８２と共有する（例えば、データをコントロールセット８２のコントローラ２６Ａと共有する）ことが望ましい。
【００２６】
しかしながら、上述したように、コントロールセット８２及び８４は、データを特定のレートで送信するように設定される。コントロールセット８２が１０ｍｓフレーム周期に設定され、かつコントロールセット８４が４０ｍｓフレーム周期に設定されるので、コントロールセット８２はデータを、コントロールセット８４よりも４倍速い速度で送受信する。従って、Ｉ／Ｏパック６０Ｂからのデータをコントロールセット８２のコントローラ２６Ａと共有するために、コントロールセット８２及び８４は、異なるフレーム周期に関連する全ての課題を認識し、そして処理する必要がある。上に説明したように、混合フレームレートロジック６２（例えば、６２Ａ及び／又は６２Ｂ）は、この混合フレームレート／周期の処理を行うことができる。現在の例は、混合フレームレートロジック６２が１つ以上のコントローラ２６（例えば、コントローラ２６Ａ及び／又は２６Ｂ）に一体化される構成を示しているが、混合フレームレートロジック６２は、Ｉ／Ｏ  ＮＥＴ５０に接続されるいずれの処理装置に実装することもできる。
【００２７】
混合フレームロジック６２が、混合フレームレートに関する処理をコントロールセットの間で行う２つの場合は、ａ）データフレームがコントローラ２６によって、受信側コントローラ２６のフレーム周期の頻度よりも多い頻度で受信される場合、及びｂ）データフレームがコントローラ２６によって、受信側コントローラ２６のフレーム周期の頻度よりも少ない頻度で受信される場合を含む。
【００２８】
第１の場合では、データフレームが、受信側コントローラのフレーム周期より速い周期で受信／送信される場合、コントロールセットのハードウェアが過負荷状態になる虞がある。例えば、コントロールセット８２及び／又は８４が、Ｉ／Ｏパック６０Ａのデータをコントローラ２６Ｂと共有するように設定される場合、Ｉ／Ｏパック６０Ａからのデータは、コントロールセット８２が１０ｍｓのフレーム周期を有するのに対し、コントロールセット８４は４０ｍｓのフレーム周期を有するので、コントローラ２６Ｂがデータを受信するときの速度の４倍の速度で送信されることになる。データは、データを受信するときの速度の４倍の速度で送信されるので、アプリケーションレイヤ９６Ｂは、未使用データを大量に受信することになる。従って、以下に更に詳細に説明されるように、混合フレームレートロジック６２Ｂは、未使用データを大量に受信することに対する対策を講じる必要がある。
【００２９】
第２の場合では、データフレームが、受信側コントローラのフレーム周期より遅い周期で受信／送信される場合、コントロールセットのハードウェアは、システム１０が不健全な状態になっていると誤って認識する（例えば、Ｉ／Ｏパック６０からのデータがタイムアウトになっていると誤って通知する）虞がある。例えば、コントロールセット８２及び／又は８４が、Ｉ／Ｏパック６０Ｂのデータをコントローラ２６Ａと共有するように設定される場合、Ｉ／Ｏパック６０Ｂからのデータは、コントロールセット８２が１０ｍｓのフレーム周期を有するのに対し、コントロールセット８４は４０ｍｓのフレーム周期を有するので、コントローラ２６Ａがデータを受信する速度よりも４倍遅い速度で送信されることになる。データは、データが受信される速度よりも４倍遅い速度で送信されるので、コントローラ２６Ａは、１０ｍｓが経過するたびにデータが受信されることがないので、データ送信がタイムアウトとなっていると誤って通知する可能性がある。従って、以下に更に詳細に説明されるように、混合フレームレートロジック６２Ｂは、タイムアウトとなっていると誤って通知することに対する対策を講じる必要がある。
【００３０】
図３及び図４は、コンピュータ実行プロセスを示しており、これらのコンピュータ実行プロセスに従って、混合フレームレートロジック６２が操作を行うことにより、入力データがＩ／Ｏパック６０から、入力データをコントローラ２６が受信するレートとは異なるレートで送信される場合を処理することができる。図３は、データを受信するコントローラ２６のフレームレートが、データを送信するＩ／Ｏパック６０のフレームレートより速い場合（例えば、コントロールセット８４がＩ／Ｏパック６０Ｂのデータをコントロールセット８２と共有する図２で説明した構成の場合）に、送信及び／又は受信されるＩ／Ｏパック入力データを処理するコンピュータ実行プロセス１００を示すフローチャートである。
【００３１】
まず、入力データを送信するＩ／Ｏパック６０のフレームレート／周期を求める（ブロック１０２）。Ｉ／Ｏパック６０のフレームレート／周期は、例えば産業用制御システム１０のコンフィグレーションプログラムのコンフィグレーションファイル（例えば、Ｎｅｗ  Ｙｏｒｋ（ニューヨーク）州のＳｃｈｅｎｅｃｔａｄｙ（スケネクタディ）市にあるゼネラルエレクトリック社のＴｏｏｌｂｏｘＳＴ（商標））にアクセスすることにより、又はＩ／Ｏパック６０から送信される送信パケットの周期を分析することにより求めることができる。
【００３２】
次に、タイムアウト閾値（例えば、タイムアウト通知が開始される前に経過する時間）を受信側コントロールセットのフレーム周期に基づいて設定することができる構成のシステムとは異なり、タイムアウト閾値を送信側Ｉ／Ｏパックのフレーム周期に基づいて設定する（ブロック１０４）。例えば、図２に示す例では、送信側Ｉ／Ｏパック６０Ｂのフレーム周期は４０ｍｓである。従って、入力データをＩ／Ｏパック６０Ｂから受信するコントローラ２６Ａは、データがＩ／Ｏパック６０Ｂから４０ｍｓの周期内に供給されない場合にタイムアウトになるように構成することができる。従って、コントローラ２６Ａは、設定タイムアウト閾値（例えば、４０ｍｓ）を超えると、タイムアウト通知を送信側Ｉ／Ｏパック６０（例えば、Ｉ／Ｏパック６０Ｂ）宛に行うことになる（ブロック１０６）。
【００３３】
更に、コントローラ２６は、入力データをＩ／Ｏパック６０のフレームレートで更新する（例えば、取り込む）ように構成することができる（ブロック１０８）。例えば、コントローラ２６Ａは、データをＩ／Ｏパック６０Ｂから、Ｉ／Ｏパックのフレーム周期／レートに基づいて受信することにより、コントローラ２６Ａのフレーム周期／レートを無効化するように構成することができる。
【００３４】
混合フレームレートロジック６２が、送信側レートが受信側レートより遅いと判断する場合にプロセス１００を実行することにより、幾つかのマルチフレームレートの問題が解決される。タイムアウトになっていると誤って通知する操作が回避される。更に、正しいデータは、コントローラ２６への送信が、コントローラ２６が予測するよりも遅いレートで行われるにも拘わらず、コントローラで受信される。
【００３５】
図４は、データを受信するコントローラ２６のフレームレートが、データを送信するＩ／Ｏパック６０のフレームレートより遅い場合に送信及び／又は受信されるＩ／Ｏパック入力データを処理するコンピュータ実行プロセス１２０（例えば、コントロールセット８２がＩ／Ｏパック６０Ａのデータをコントロールセット８４と共有する図２で説明した構成の場合）を示すフローチャートである。
【００３６】
混合フレームロジック６２が、受信側レートが送信側レートより遅いと判断する場合、ロジック６２は、フレーム番号が、受信側フレーム周期／レートの整数倍であるかどうかを判断する（ブロック１２２）。フレーム番号は、産業用制御システム１０全体の同期時間に基づいて設定される送信データの基本フレーム番号とすることができる。同期時間は、ＩＥＥＥ１５８８高精度時間プロトコル（ＰＴＰ）に従って定義することができる。入力データがＩ／Ｏパック６０Ａから１０ｍｓの周期で送信される構成の図２に関して説明した例では、これらのフレーム番号は、例えば０、１０、２０、３０、４０などとすることができる（１０ｍｓごとの新規データフレームを表す）。コントローラ２６Ｂは、フレームを４０ｍｓごとに受信するように構成されるので、コントローラ２６Ｂは、フレーム０、４０、８０、１２０、１６０など（例えば、４０ｍｓ周期（例えば、４０ｍｓの整数倍）に関連する各フレーム番号）を受信すると予測する。
【００３７】
受信側フレーム周期の整数倍ではない送信データフレームの各送信データフレームを廃棄する（ブロック１２４）。特定の実施形態では、アプリケーションレイヤ９６（例えば、９６Ａ及び／又は９６Ｂ）は、非整数倍のフレームを廃棄することができる。しかしながら、これにより、アプリケーションレイヤ９６が、これらのフレームを廃棄するために処理能力（例えば、コントローラ２６の処理能力）を消費する必要があるので、処理が非効率的になる。従って、特定の実施形態では、フィルタを設けて、非整数倍のフレームを、これらのフレームがアプリケーションレイヤ９６に届く前に廃棄することができる。例えば、特定の実施形態では、高速のユーザデータグラムプロトコル（ＵＤＰ）フィルタを使用して、非整数倍のフレームを全て、これらのフレームがアプリケーションレイヤ９６に届く前に廃棄することができる。従って、これらのアプリケーションレイヤ９６の処理負荷は、これらのアプリケーションレイヤ９６が、より少ない数のデータフレームしか受信しないので、低減することができる。現在の例では、図２に戻って参照すると、Ｉ／Ｏパック６０Ａは、フレーム０、１０、２０、３０、４０、５０などを送信する。しかしながら、フレーム０、１０、２０、３０、５０などは、これらのフレームが、４０ｍｓの受信側フレーム周期／レートの整数倍ではないので廃棄されることになる。
【００３８】
受信側フレームレートの整数倍である各データフレームは、アプリケーションレイヤ９６によって処理することができる（ブロック１２６）。従って、現在の例では、図２に戻って参照すると、Ｉ／Ｏパック６０Ａから送信され、かつ４０の整数倍である各フレーム（例えば、フレーム０、４０、８０、１２０など）を処理することができる。これらのフレームは、アプリケーションレイヤ９６に供給され、このアプリケーションレイヤ９６において、コントローラを利用した処理を行うことができる。
【００３９】
これまで、Ｉ／Ｏパック６０からの入力データに関する場合について説明してきたが、説明を、コントローラ２６からＩ／Ｏパック６０に送信される出力データに関する場合について行うこととする。上述のように、コントローラ２６は、出力データをＩ／Ｏパック６０に供給することができ、出力データが次に、Ｉ／Ｏパック６０に接続される装置に伝送される。同じ混合フレームレートの問題は、この出力データをコントローラ２６からＩ／Ｏパック６０に送信する場合に生じる可能性がある。例えば、出力データは、コントローラ２６からＩ／Ｏパック６０に、Ｉ／Ｏパック６０がデータを受信するレートとは異なるレートで（例えば、より速く、又はより遅く）送信することができる。従って、混合フレームレートロジック６２は、レートが一致しないことによるこの影響に対する対策を講じる必要がある。この場合も同じく、混合フレームレートロジック６２は、Ｉ／Ｏ  ＮＥＴ５０の任意の処理装置に常駐させることができる。特定の実施形態では、ロジック６２は、送信側コントローラ２６、受信側スイッチ９０、及び／又は受信側Ｉ／Ｏパック６０に常駐させることができる。図５及び図６は、混合フレームレートロジック６２がプロセスに従って操作を行うことができる場合のプロセスを示している。
【００４０】
図５は、Ｉ／Ｏパック６０の送信側フレームレートが、コントローラ出力データを送信するコントローラ２６の受信側フレームレートより速い場合にマルチフレームレートを処理するコンピュータ実行プロセス１４０を示すフローチャートである。
【００４１】
まず、出力データを送信するコントローラ２６のフレームレート／周期を求める（ブロック１４２）。コントローラ２６のフレームレート／周期は、例えば産業用制御システム１０のコンフィグレーションプログラムのコンフィグレーションファイル（例えば、Ｎｅｗ  Ｙｏｒｋ（ニューヨーク）州のＳｃｈｅｎｅｃｔａｄｙ（スケネクタディ）市にあるゼネラルエレクトリック社のＴｏｏｌｂｏｘＳＴ（商標））にアクセスすることにより、又はコントローラ２６から送信される送信パケットの周期を分析することにより求めることができる。
【００４２】
次に、タイムアウト閾値（例えば、タイムアウト通知が開始される前に経過する時間）を受信側コントロールセットのフレーム周期に基づいて設定することができる構成の従来のシステムとは異なり、タイムアウト閾値（又は、予測出力レート）を送信側Ｉ／Ｏパックのフレーム周期に基づいて設定する（ブロック１４４）。例えば、図２に示す例では、送信側コントローラ２６Ｂのフレーム周期は４０ｍｓである。従って、出力データをコントローラ２６Ｂから受信するＩ／Ｏパック６０Ａは、データがコントローラ２６Ｂから４０ｍｓの周期内に供給されない場合にタイムアウトになるように構成することができる。従って、Ｉ／Ｏパック６０Ａは、設定タイムアウト閾値（例えば、４０ｍｓ）を超えると、タイムアウト通知を送信側コントローラ２６（例えば、コントローラ２６Ｂ）宛に行うことができる（ブロック１４６）。
【００４３】
更に、Ｉ／Ｏパック６０は、コントローラ出力データをコントローラ２６のフレームレートで更新する（例えば、取り込む）ように構成することができる（ブロック１４８）。例えば、Ｉ／Ｏパック６０Ａは、データをコントローラ２６Ｂから、コントローラ２６Ａのフレーム周期／レートに基づいて受信することにより、Ｉ／Ｏパック６０Ａのフレーム周期／レートを無効化するように構成することができる。
【００４４】
混合フレームレートロジック６２が、コントローラ出力データの送信側レートが受信側レートより遅いと判断する場合にプロセス１４０を実行することにより、幾つかのマルチフレームレートの問題が解決される。タイムアウトとなっていると誤って通知する操作が回避される。更に、正しいデータは、Ｉ／Ｏパック６０への送信が、予測されるよりも遅いレートで行われるにも拘わらず、Ｉ／Ｏパック６０で受信される。
【００４５】
図６は、データを受信するＩ／Ｏパック６０のフレームレートが、データを送信するコントローラ２６のフレームレートより遅い場合に送信及び／又は受信されるコントローラ出力データを処理するコンピュータ実行プロセス１６０（例えば、コントロールセット８２がコントローラ２６Ａのデータをコントロールセット８４と共有する場合）を示すフローチャートである。
【００４６】
混合フレームロジック６２が、受信側レートが送信側レートより遅いと判断する場合、ロジック６２は、フレーム番号が、受信側フレーム周期／レートの整数倍であるかどうかを判断する（ブロック１６２）。フレーム番号は、産業用制御システム１０全体の同期時間に基づいて設定される送信データの基本フレーム番号とすることができる。図２を参照するに、例えばコントローラ出力データがコントローラ２６Ａから１０ｍｓの周期で送信される場合、これらのフレーム番号は、例えば０、１０、２０、３０、４０などとすることができる（１０ｍｓごとの新規データフレームを表す）。Ｉ／Ｏパック６０Ｂは、フレームを４０ｍｓごとに受信するように構成されるので、Ｉ／Ｏパック６０Ｂは、フレーム０、４０、８０、１２０、１６０など（例えば、４０ｍｓ周期（例えば、４０ｍｓの整数倍）に関連する各フレーム番号）を受信することができる。
【００４７】
受信側フレーム周期の整数倍ではない送信データフレームの各送信データフレームを廃棄する（ブロック１６４）。特定の実施形態では、アプリケーションレイヤ９６（例えば、９６Ａ及び／又は９６Ｂ）は、非整数倍のフレームを廃棄することができる。しかしながら、これにより、アプリケーションレイヤ９６が、これらのフレームを廃棄するためにコントローラ２６、スイッチ５４又は９０、及び／又はＩ／Ｏパック６０の処理能力を消費する必要があるので、処理が非効率的になる。従って、特定の実施形態では、フィルタを設けて、非整数倍のフレームを廃棄することができる。例えば、特定の実施形態では、高速のユーザデータグラムプロトコル（ＵＤＰ）フィルタを使用して、非整数倍の全てのフレームを、フレームがアプリケーションレイヤ９６に届く前に廃棄することができる。従って、これらのアプリケーションレイヤ９６の処理負荷は、これらのアプリケーションレイヤ９６が、より少ないデータフレームしか受信しないので、減らすことができる。現在の例では、図２に戻って参照すると、コントローラ２６Ａは、フレーム０、１０、２０、３０、４０、５０などを送信する。しかしながら、フレーム１０、２０、３０、５０などは、これらのフレームが４０ｍｓの受信側フレーム周期／レートの整数倍ではないので廃棄されることになる。
【００４８】
受信側フレームレートの整数倍である各データフレームは、アプリケーションレイヤ９６によって処理することができる（ブロック１２６）。従って、現在の例では、図２に戻って参照すると、コントローラ２６Ａから送信され、かつ４０の整数倍である各フレーム（例えば、フレーム０、４０、８０、１２０など）を処理することができる。これらのフレームは、アプリケーションレイヤ９６に供給され、このアプリケーションレイヤ９６において、コントローラを利用した処理を行うことができる。
【００４９】
本発明の技術的効果は、コントローラ及び／又はＩ／Ｏパックのフレームレート／周期の調整を共通の物理ネットワーク上で行うことである。詳細には、データフレームレート／周期は、混合フレームロジックが、タイムアウト設定を予測データについて調整し、かつ／又は余剰データを廃棄することにより調整することができる。従って、混合フレームロジックによって、産業用制御システムを強化することができる。例えば、異なるフレームレートを有する複数のコントローラ及び／又はＩ／Ｏパックは、データを同じ物理ネットワーク上で共有することができる。
【００５０】
この記載の説明では、種々の例を用いて、最良の形態を含む本発明を開示し、そして更に、この技術分野の当業者であれば誰でも、本発明を実施することにより、任意のデバイス又はシステムを作製して使用し、そして取り込まれる全ての方法を実行することができるようにしている。本開示の特許可能な範囲は、請求項により規定され、そしてこの技術分野の当業者が想到することができる他の例を含むことができる。このような他の例は、これらの請求項の範囲に、これらの例が、これらの請求項の文言と異ならない構造的要素を有する場合に、又はこれらの例が、これらの請求項の文言とは殆ど異ならない等価な構造的要素を含む場合に包含されるべきである。
【符号の説明】
【００５１】
１０  産業用プロセス制御システム
１２、２８、３０、３２、３４、３６  コンピュータ
１４  ヒューマンマシンインターフェース（ＨＭＩ）ソフトウェア
１６  製造実行システム（ＭＥＳ）
１８  分散制御システム（ＤＣＳ）
２０  監視制御／データ取得（ＳＣＡＤＡ）システム
２２  プラントデータハイウェイ
２４  ユニットデータハイウェイ
２６  産業用コントローラ、オートメーションコントローラ、送信側コントローラ、受信側コントローラ
２６Ａ  コントローラ
２６Ｂ  送信側コントローラ、コントローラ
３８  タービンシステム、装置
４０  バルブ、装置
４２  ポンプ、装置
４４  温度センサ、装置
４６、４８  リンク装置
５０  Ｉ／Ｏ  ＮＥＴ
５２  Ｈ１ネットワーク
５３  電源
５４、７０Ａ、９０、９０Ａ、９０Ｂ  スイッチ
５６、５８  セグメントポート
６０  Ｉ／Ｏパック、受信側Ｉ／Ｏパック６０、送信側Ｉ／Ｏパック６０
６０Ａ  Ｉ／Ｏパック
６０Ｂ  Ｉ／Ｏパック、送信側Ｉ／Ｏパック６０
６２  混合フレームレートロジック、混合フレームロジック、コントロールセット
６２Ａ、６２Ｂ  混合フレームレートロジック
６４、８２、８４  コントロールセット、
９２Ａ、９２Ｂ  ポート
９３Ａ、９３Ｂ  通信ハードウェア
９４Ａ、９４Ｂ  ドライバ
９６、９６Ａ、９６Ｂ  アプリケーションレイヤ
１００  コンピュータ実行プロセス、プロセス
１０２、１０４、１０６、１０８、１２２、１２４、１２６、１４２、１４４、１４６、１４８、１６２、１６４、１６６  ブロック
１２０、１４０、１６０  コンピュータ実行プロセス
【図１】
2015115956.tif 000003
【図２】
2015115956.tif 000004
【図３】
2015115956.tif 000005
【図４】
2015115956.tif 000006
【図５】
2015115956.tif 000007
【図６】
2015115956.tif 000008
【外国語明細書】
2015115956000001.pdf