(57)【要約】      （修正有）【課題】最大限にデータ連結されたパケットの再プログラミングをすることなしにＩ／Ｏデータのデータ通信速度を向上させる方法を提供する。【解決手段】最大限に連結されたパケットは高度に信頼性の高いネットワーク通信を保障するのに用いられるコネクトされたメッセージの一部としてコネクションを通して通信することができる。あるＩ／Ｏモジュールに対して高度なデータ速度が必要な時には最大限にデータ連結されたパケットの一部として第２の冗長性コネクションを開設することによりこの第２のコネクションを通して対応することができ、それにより最大限にデータ連結されたパケットを再設定することなしにあるいは工業用制御プログラムによるデータの用法を変更することなく高速のデータ速度を提供することができる。【選択図】図１
2008134999.tif 000002
【特許請求の範囲】
【請求項１】
プロセスにインタフェイスされて動作し前記プロセスを有するＩ／Ｏデータを交換する複数のＩ／Ｏモジュールと；
前記Ｉ／Ｏデータと前記Ｉ／Ｏモジュールを交換するように動作しフォーマットされていないデータ  ブロックに配列された各モジュールのためにＩ／Ｏデータを含む最大限にデータ連結されたパケットを創作するスキャナと；
前記最大限にデータ連結されたパケットを、第１の速度で第１の時間で第１のコネクトされたメッセージの中にある前記スキャナと交換しかつ前記最大限にデータ連結されたパケットの部分集合と、第２の速度で前記第１の時間インタリーブされた第２の時間にある前記スキャナとを交換するように動作する工業用制御器と；
前記最大限にデータ連結されたパケットの部分集合に対するデータは前記最大限にデータ連結されたパケットのデータより高速で分配される；
を含む工業用制御システム。
【請求項２】
前記部分集合は与えられたＩ／Ｏモジュールのデータによって定義される請求項１に記載の工業用制御システム。
【請求項３】
前記第２の速度は前記第１の速度と等しく、前記部分集合は前記最大限にデータ連結されたパケットのデータの２倍の速度で分配される請求項１に記載の工業用制御システム。
【請求項４】
前記第１及び第２の時間は実質上２つの時間の間に一定の間隔を有する請求項１に記載の工業用制御システム。
【請求項５】
前記第２の速度は前記第１の速度より大きく、従って、部分集合は最大限にデータ連結されたパケットの他のデータの速度の２倍より多く分配される請求項１に記載の工業用制御システム。
【請求項６】
前記スキャナが最大限にデータ連結されたパケットをスキャナ  バッファで構成し、第１及び第２のコネクションは前記スキャナ  バッファを符合するデータのために用いる請求項１に記載の工業用制御システム。
【請求項７】
前記工業用制御システムが工業用制御バッファからＩ／Ｏデータを読み込み、前記第１及び第２のコネクションが前記工業用制御バッファの同じ位置を符合するデータのために使用する請求項１に記載の工業用制御システム。
【請求項８】
前記スキャナは複数の異なった時間に複数のＩ／Ｏモジュールと通信することができる請求項１に記載の工業用制御システム。
【請求項９】
次の（ａ）〜（ｄ）のステップを含む工業用制御システムの動作方法。  
（ａ）複数のＩ／Ｏモジュールをスキャナに接続し、Ｉ／Ｏモジュールは動作可能にプロセスとインタフェイスされプロセスを有するＩ／Ｏデータと交換する。
（ｂ）Ｉ／Ｏモジュールとスキャナとの間でデータを交換してスキャナ内に、Ｉ／Ｏデータを含む最大限にデータ連結されたパケットを創作し、各モジュールはフォーマットされないデータ  ブロックで配列される。
（ｃ）スキャナと工業用制御器の間に第１のコネクションを開設し、最大限にデータ連結されたパケットと第１の速度で第１の時間でコネクトされた第１のメッセージ内での工業用制御器とを交換する。
（ｄ）スキャナと工業用制御器との間に第２のコネクションを開設し、最大限にデータ連結されたパケットの部分集合と第２の速度、第１の時間でインタリーブされた第２の時間での工業用制御器とを交換し、そこで最大限にデータ連結されたパケットの部分集合に対するデータは最大限にデータ連結されたパケットのデータより高速で分配される。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には工業用制御システムに関し、更に詳しくは、上記システムにおいて工業用制御データを転送するための方法及び装置に関する。
【背景技術】
【０００２】
工業用制御器は、工業用処理あるいは設備を製造する制御のために用いられる特別の目的を持ったコンピュータである。蓄積されたプログラムの指向の基に工業用制御器は制御されたプロセスの状態を反映する一連の入力を試験して、プロセスの制御を達成する出力を変化させる。入力及び出力はバイナリ（即ち“オン”または“オフ”）か、あるいは代わりに値が連続してつながるアナログ入力及び出力が使用される。バイナリ入／出力はデータの単一のビットで表わされ、アナログ入／出力は多数のビット  データ  ワードで表される。
【０００３】
工業用制御器の種々の要素は、工場あるいは製造施設の周囲に空間的に分配され、１つあるいは多くの通信ネットワークによって接続されている。これらの通信ネットワークは、実時間制御に要求されるような高度な信頼性及び最小の良く定義された遅延時間でデータを配達することにより特徴づけられている。多くの異なったネットワークは工業用制御技術に共通に用いられており、その制御技術はこれに限定しないが、Ｃｏｎｔｒｏｌ  ＮｅｔＴＭ  ，Ｄｅｖｉｃｅ  ＮｅｔＴＭ  、及びＥｔｈｅｒ  Ｎｅｔ／ＩＰＴＭ  を含んでおり、これらの詳細は公表されていると共に、これらのプロトコルは多くの製造者及び供給者により広く使用されている。これらの通信ネットワークは物理的局面において相互に異なっており、例えば、メディアのタイプ（例えば、同軸ケーブル、ツウイステット  ペア、光ファイバ等）；その動作プロトコル（例えば、伝送速度、チャネル数、語伝送サイズ、接続メッセージの用途等）；及びデータのフォーマットの仕方及び標準メッセージに集合する方法である。
【０００４】
工業用制御システムの共通の構成要素は、制御されるプロセスあるいは機械から工業用制御器に対してデータを受信し、かつ工業用制御器からのデータを制御されるプロセスまたは機械に供給する入力あるいは出力（Ｉ／Ｏ）モジュールである。Ｉ／Ｏモジュールは典型的には工業用制御器から離隔されており、叙上の如き通信ネットワークを通して接続されている。
【０００５】
種々のＩ／Ｏモジュールは、工業用制御システムにおいて使用されており、異なった時間間隔及び周波数でデータを発生している。もし制御器がそれぞれデータを発生しているＩ／Ｏモジュールと非同期にてインタフェイスされているとすれば、制御システムは制御動作を同期させる困難に遭遇し、ネットワークの通信は厄介になる。例えば、制御器はそのモジュールがデータを発生している時に同じ周波数でそのモジュールからデータを受領することはできない。もしＩ／Ｏモジュールがその制御器に対して各時間そのデータが最新情報になるように処理を送ったとすればその制御器はそのデータに対して処理するように要求し、現在の制御決定に対して必要がなくなる。
【０００６】
ネットワーク通信を最大限に利用するために、異なったネットワーク  タイプの間に翻訳者及び代理人を置き、同期データを発生してフレームを転送し、スキャナがＩ／Ｏモジュールとその制御器との間は物理的あるいは論理的な仲介者として用いられる。そのスキャナは予め決定された最新情報期間でデータを集めるためにそのＩ／Ｏモジュールとインタフェイスされ、そのデータを単一の最大限にデータ連結されたパケットに合体させて、最新情報期間毎に単一の処理を用いてその最大限にデータ連結されたパケットは制御された予め決められた期間にデータを受領することができ、そのデータが制御決定目的に必要なときにもっともらしくなる。
【０００７】
最大限にデータ連結されたパケットは通常“ｃｏｎｎｅｃｔｅｄ  ｍｅｓｓａｇｉｎｇ”プロトコルによって転送される。この技術分野で周知の如く、連結されたメッセージはネットワーク上の２つのデバイスの間に論理的結合を確立（例えば、制御器とスキャナ）し、ネットワーク帯域幅及びバッファ  スペースのために予め取り除けておき、デバイスの他の供給源が属性として判断できるデータの適時の転送を保障する。これはネットワークの通信における変更がメッセージの通信に影響を及ぼす属性として判断できない接続されないメッセージ  システムと対称的である。
【０００８】
最大限データ連結されたパケットを生成するに際し、スキャナは周期的に制御器に対して予め確立されているコネクションを通して最大限にデータ連結されたパケットを送り込む。最大限にデータ連結されたパケットはＩ／Ｏモジュールから収集されたデータを示し未構成のブロックである。各モジュールから集められたデータはフォーマットしないで予め決定された秩序によって鎖のように連結されている。最大限にデータ連結されたパケットの構成は前進において決定される。この予め決定された構成は、最大限にデータ連結されたパケット内のデータを参照する時に、制御器の応用及びプログラムの発展システム（即ち、制御器の応用を発展させるために用いる）によって使用される。例えば、もし特別のＩ／Ｏモジュールの出力が最大限にデータ連結されたパケットのビットＮ―Ｋに存在していれば、制御器応用でプログラムの指示は制御決定の発生に用いるためにこれらのビットを正確に参照する。
【０００９】
制御応用を発展させるために、応用発展者は最大限にデータ連結されたパケットのマッピングを知る必要がある。最大限にデータ連結されたパケットの一部に固定された参照記号は制御応用を作成するプログラム  コマンドに含まれる。もし、Ｉ／Ｏモジュールの追加あるいは削減、スキャナによってサービスされるＩ／Ｏモジュールの秩序変化等によって最大限にデータ連結されたパケットのマッピングが変化したならば、前記固定された参照記号は、制御器が適切なデータを参照できるように制御応用内で最新情報でなければならない。
【００１０】
前述したように、前記したケースにおいてプログラマによって最大限にデータ連結されたパケットのデータに参照記号がされた場合にはキャスト  タグを用いることによって、より容易になり、タグの構成は最大限にデータ連結されたパケットにおける物理的位置から翻訳して用いられ、それによって種々の名前が実際の物理的位置を参照することなく、プログラムに結合されて便宜的になる。  
【００１１】
全てのＩ／Ｏデータを単一の最大限にデータ連結されたパケットに結合することは極端に効果的なＩ／Ｏデータの通信を供給するが、しかしすべてのＩ／Ｏデータに対するデータ分配の単一の速度を強要する。それはあるＩ／Ｏデータを転送するのに必要であるが、例えば、急速に変化するデータあるいは高速プロセスに同期して用いられる場合残されているＩ／Ｏデータよりもより高速の場合に必要である。最大限にデータ連結されたパケットの転送速度が高速Ｉ／Ｏデータの所望のデータ速度よりも大幅に増大した場合には、この試みは利用されるネットワークの帯域幅にとって実際的ではなく、少なくとも不必要な高速ですべてのＩ／Ｏデータ転送することにより適切な帯域幅を消耗させる。
【００１２】
もし、プログラミングが完成した後にあるデータに対するより高いデータ速度の必要が発見された場合には、最大限にデータ連結されたパケットからこのデータを移動させてこの最大限にデータ連結されたパケットを崩壊させ、適切なプログラミングの努力が要求される。
【発明の開示】
【発明が解決しようとする課題】
【００１３】
本発明は、最大限にデータ連結されたパケットの再プログラミングをすることなしに、及びそのＩ／Ｏデータを用いている現行のプログラムを崩壊させることなしに、あるいは同期を必要とする同じデータの多くのバージョンを創作することなしに与えられたＩ／Ｏデータのデータ通信速度を向上させる方法を提供する。一般的に、本発明はスキャナと工業用制御器との間に第２の増大用コネクションを提供し、データを最大限にデータ連結されたパケットによって転送されたデータの中に挟みこむ。大切なことは、この第２のコネクションは前記最大限にデータ連結されたパケットにより用いられたように、スキャナと工業用制御器の中に同じバッファ位置を用いており、参照及び同期の問題を作り出すデータの崩壊を除去している。この第２のコネクションはデータの部分集合のみを転送するものであり、そのために帯域幅に極めて効果的である。
【００１４】
特に、本発明はプロセスを備えたＩ／Ｏデータを変換するプロセスとインタフェイスして動作する多数のＩ／Ｏモジュールを有する工業用制御システムを提供するものである。工業用制御システムにおいて、スキャナはＩ／Ｏモジュールを変換しフォーマットされないデータ  ブロックに配列された各モジュールのためにＩ／Ｏデータを含む最大限にデータ連結されたパケットを創作する。そのスキャナはそれから最大限にデータ連結されたパケットを第１の時間に第１の速度を有する第１の連結されたメッセージの工業用制御器と交換し、前記最大限にデータ連結されたパケットの部分集合を第１の時間を間に挟む第２の時間で第２の速度にあるスキャナと交換する。
【００１５】
しかして、本発明による少なくとも１つの実施例の目的は、単一の最大限にデータ連結されたパケットの異なったデータ成分を異なった速度で伝達することにある。本発明の他の目的は、最大限にデータ連結されたパケットの再プログラミングまたは与えられたデータの使用法を示すプログラムなしに与えられたデータ成分のデータ速度を許可することにある。
【００１６】
第２の速度で転送されるデータの部分集合は１つまたはもっと多くの与えられたＩ／Ｏモジュールのデータによって定義される。
【００１７】
しかして、本発明による少なくとも一実施例の他の目的は、個別のＩ／Ｏモジュールに対する異なったデータ配送速度を仕立てる方法を提供することにある。
【００１８】
スキャナは複数の異なった時間に複数のＩ／Ｏモジュールと通信する。
【００１９】
本発明による少なくとも一実施例の他の目的は、スキャナにより普通に供給されたＩ／Ｏデータを非同期に収集して収容する方法を提供することにある。
【００２０】
第２の速度は第１の速度と等しいかあるいは大きいかであり、それで部分集合は最大限にデータ連結されたパケットの他のデータの速度の２倍より少なくない時間で配送される。
【００２１】
しかして、本発明による少なくとも一実施例の他の目的は、Ｉ／Ｏデータの転送速度を増大し、比較的低速度の２つのコネクションをインタリーブすることによりＩ／Ｏデータの適時性を増加させるシステムを提供することにある。
【００２２】
スキャナはスキャナ  バッファ及び第１及び第２のコネクションの中に最大限にデータ連結されたパケットを構築することができ、符合するデータのためのスキャナ  バッファとして使用することが可能である。
【００２３】
本発明による少なくとも一実施例の他の目的は、スキャナに必要なバッファ  スペースの全体の量を実質上増加させないで、前記の利益を提供することにある。
【００２４】
第１及び第２のコネクションは工業用制御バッファの中に符合するデータのために同じバッファ位置を使用している。
【００２５】
本発明による少なくとも一実施例の他の目的は、同期させる必要のあるデータの多数のコピーの発生を回避し、更に変化しないで残るデータを用いるプログラムを許可することにある。
【００２６】
これらの特定の目的及び利点は特許請求の範囲内に該当する幾つかの実施例のみに適用されるが、本発明の範囲はこれらに限定されるものではないことは勿論である。
【発明を実施するための最良の形態】
【００２７】
図１を参照するに、本発明による実施の形態は工業用制御システム１０の環境の中に記載されている。一般に、工業用制御システムは処理ユニット１６及びメモリ１８を含む工業用制御器１５（例えばプログラム可能な論理コントローラ（ＰＬＣ））、プログラミング  ターミナル２０、人間―機械インタフェイス（ＨＭＩ）２５、Ｉ／Ｏモジュール３０、３５、センサ４０、アクチュエータ４５、スキャナ５０、５５、及び通信ネットワーク６０、６５、７０を含んでいる。
【００２８】
プログラム用端子２０は工業用制御システムの構築、修飾、デバック及び保守の機能を許可する。例えば、プログラム用端子２０は工業用制御器１５と通信し、メモリ１７に格納されている制御プログラムの如き制御器の動作及び処理ユニット１６により実行される局面を修飾する。ＨＭＩ２５は工業用制御システム１０を動作させるインタフェイスをオペレータに供給して工業的処理をオートメーション化する作用をする。
【００２９】
以下にかなり詳細に記載されるように、プログラム用端子２０は工業用制御器１５とスキャナ５０、５５間に送られた未構成のデータ上にデータ構成を重ねて置くのに用いられるキャスト  タグを定義している。これらのキャスト  タグは、工業用制御器１５またはＨＭＩ２５が予め決定されたデータ構造の以前の知識を必要としないで未構成のデータ  ブロックの個別的部分集合を論理的に参照するように工業用制御システム１０内の他の存在によって雇用されることができる。それ故にこれらのキャスト  タグは、Ｉ／Ｏモジュール３０の構成及び状態を表す各Ｉ／Ｏモジュールによって維持されるデータ目的を、たとえこれらのデータ目的が多数のモジュールからのデータを含む未構成のデータ  ブロックの中に埋もれることがあっても、論理的に参照するのに用いることができる。
【００３０】
Ｉ／Ｏモジュール３０、３５は制御される処理に関係しているセンサ４０及びアクチュエータ４５に対してインタフェイスを供給しているセンサ４０は温度、圧力、流体の出水率、トルク、電流等の如き項目を検出する。アクチュエータ４５はモータ、バルブ等のロボット  システムに関するもの、ファン、ビータ、ポンプ等の項目を制御する。例えば、あるタイプのアクチュエータ４５は、関連したモータを運転するための種々の周波数の運転信号を発生するのに実施可能なモータ  ドライブである。図示するための便宜上、各個々のセンサ４０及びアクチュエータ４５はすべてのＩ／Ｏモジュール３０、３５に都合良くは図示されてはいない。
【００３１】
工業用制御器１５において、Ｉ／Ｏモジュール３０、３５からの入力信号は制御プログラム及び更に出力信号（即ちアクチュエータ４５への）として送られる信号の基に処理される。制御される特別の処理、及び特別の入力及び出力モジュール型は本発明では重要ではない。Ｉ／Ｏモジュール３０、３５は工業用制御器１５の中に吸収して統合されるか、あるいは工業用制御器１５から離隔することもできる。本発明の一実施例においては、工業用制御システム１０は、ウィスコンシン州ミルウォーキーのロックウェル  オートメーション  インコーポレーテッドのＬｏｇｉｘＴＭを用いて構成することができる。
【００３２】
通信ネットワーク６０、６５、７０は、ケーブルの形をとることも、分離したワイヤの形であってもよいし、あるいはリピータ、ルータ、ブリッジ、及びゲート  ウェイを含むディジタル  ネットワークで構成することもできる。適当な通信ネットワーク６０、６５、７０は、同じくロックウェル  オートメーション社によって提供される。Ｄｅｖｉｃｅ  ＮｅｔＴＭ  ，Ｅｔｈｅｒｎｅｔ／ＩＰＴＭ、またはＣｏｎｔｒｏｌ  ＮｅｔＴＭ  ネットワークである。
【００３３】
図１に見られる如く、Ｉ／Ｏモジュール３０はスキャナ５０の下部にネットワーク７０に接続されている。スキャナ５０はＩ／Ｏモジュール３０と工業用制御器１５との間で仲介物として機能する。スキャナ５５もまた、通信ネットワーク６０に接続されているが、関連したＩ／Ｏモジュール３５がそれぞれ別々のネットワーク６５（またはメディアの各チャネル）を用いてスキャナ５５と通信するようにスキャナ５５の下に連結されている。
【００３４】
スキャナ５０、５５は、また１つの通信プロトコル（例えばネットワーク６０で用いていた）から例えばネットワーク６５、あるいは例えばネットワーク７０で用いていた別のプロトコルに変換するルータとして機能する。各スキャナ５０、５５を整理することは、工業的制御システム１０内における各Ｉ／Ｏモジュールをインタフェイスするために違った技術を述べることが要求される。実際に設備することは、提示されたインタフェイスの配列あるいは違ったインタフェイスの配列の１つを採用した単一のスキャナ５０、５５のみを含むことになるかも知れない。提示を容易にするために、次の討論がスキャナ５０に参照されるが、しかしながら、この技術はスキャナ５０、５５のいずれにも等しく適用される。
【００３５】
図示された本発明の実施例において、工業用制御器１５は目的が指向されたプログラム用語を用いてプログラムされている。プログラム用端子２０は工業用制御器１５とインタフェイスされており工業用制御器１５のメモリ１７内に格納されている種々の目的を修飾し、追加しあるいは削除し、且つその機能を実行するのに用いられる。集約的には、工業用制御器１５の機能を実行するための上記メモリに保護されている目的は工業用制御器の制御プログラムとして参照することができる。それ故に、プログラム用端子２０は工業用制御器１５の制御プログラムを最新のものとするためのプログラム用インタフェイスを提供するものである。
【００３６】
スキャナ５０は、最新情報期間の間入力データを収集するためにＩ／Ｏモジュール３０とインタフェイスし、図２に大きく詳細に示されるように、単一の最大限に拡大された結合パケット１００にデータを合体整理し、結合体１４０内の工業用制御器１５に対してその最大限に拡大された結合体パケット１００を転送する。上述した如く、結合体１４０はデータ通信が開始される前は開かれており、送信のスケジュールが確立されてネットワークの帯域幅、バッファ及びこの技術分野で周知である他のネットワーク資源が配分される、最新情報の間の特別の期間（例えば最大限にデータ連結されたパケット）ｆ特別の構成に依存して変化する。スキャナ５０はまた工業用制御器１５からの出力データをＩ／Ｏモジュール３０と通信し、以前の入力データ４５の制御プログラムに基づいて制御されたアクチュエータ４５の１つの状態を変更する。
【００３７】
スキャナ５０はＩ／Ｏモジュール３０からデータを収集するために種々の技術を用いることができる。例えば、スキャナ５０はＩ／Ｏモジュール３０を周期的に調査し、各監視したパラメータ毎にもっとも最近のデータ値をリクエストする。Ｉ／Ｏモジュール３０は以前のデータ値に応答するような新しいデータを発生していない。代案として、Ｉ／Ｏモジュール３０は最新のデータを発生したか否かのフラグをセットすることができる。スキャナ５０はそのフラグを監視することができ、かつ  最新情報期間中そのフラグがセットされている時だけデータをリクエストすることができる（即ち、そのフラグはデータ転送後クリアされる）。更にもう１つの代わりの技術において、Ｉ／Ｏモジュール３０は発生されたデータをスキャナ５０に送ることができる（例えば、周期的にあるいは非周期的に）。しかるにこの技術はスキャナ５０とＩ／Ｏモジュール３０との間に余分の通信技術を必要とする結果となり、この通信機関は工業用制御器１５に影響を与えないが、期待された期間に最大限にデータ連結されたパケット１００を受信するだけである。アナログ  モジュール（例えば、Ｉ／Ｏモジュール３５の１つ）の場合にはデータは連続的にスキャナ５５に利用される。
【００３８】
次に図２を参照するに、そこには最大限にデータ連結されたパケット１００を通信するための工業用制御器１５とスキャナ５０との間にインタフェイスを示した図が示されている。最大限にデータ連結されたパケット１００は、各Ｉ／Ｏモジュール３５から収集されたデータを表す未構成のデータ  ブロックである。各Ｉ／Ｏモジュール３０からのデータは企画編成なしに予め決められた順序で連結される。
【００３９】
１つの図示された例において、モジュール１及びモジュール２と参照される２つのＩ／Ｏモジュール３５は、モータの駆動に関連しており、モータは交互に駆動信号を与えている。モータは最大限にデータ連結されたパケット１００を通して工業用制御１５の速度制御データを変換するように駆動する。速度制御データのデータ要素に対する典型的なデータ構成は表１及び表２により供給される。表１は速度制御データ成分それぞれのフォーマット（企画編成）情報を供給し、表２は最大限にデータ連結されたパケット１００の中に含ませるためのデータ  ブロックの中に集められるＩ／Ｏモジュール３０にいかなるデータ目的かが記述されている。スキャナ５５の場合に、データの目的（例えば、Ｉ／Ｏモジュール内のバッファを示している）はＩ／Ｏモジュール３５のために単一のＩ／Ｏデータ  ブロックの中にスキャナ５５によって連結されている。  
【００４０】
Ｉ／Ｏモジュール３０のデータ目的はＩ／Ｏモジュール３０の構築及び状態を表す。Ｉ／Ｏモジュール３０、３５のすべてのデータ  ブロックは最大限にデータ連結されたパケット１００を形成するために連結されている。データ構成及びデータ  ブロックの企画構成は図示目的のみにだけ提供されており、本発明の応用は任意の特別なデータ構成または企画構成に限定されていない。
【００４１】
【表１】
2008134999.tif 000003
【００４２】
【表２】
2008134999.tif 000004
【００４３】
表１に示される如く、速度制御データは以下の各疑問表を指示するブール演算フラグを含む。即ち、モータは所望の速度（Ａｔ  Ｓｐｅｅｄ）か否か；参照トルクは局部的かあるいはネットワークをオーバーしている（Ｒｅｆ  Ｆｒｏｍ  Ｎｅｔ）か否か；モータの駆動は局部的に制御されているかあるいはネットワークを超えて制御されているか否か（Ｃｏｎｔｒｏｌ  Ｆｒｏｍ  Ｎｅｔ）；モータの駆動は準備ができている状態（Ｒｅａｄｙ）か否か；モータの走行は逆方向（Ｒｕｎｎｉｎｇ  Ｒｅｖｅｒｓｅ）かあるいは前方向（Ｒｕｎｎｉｎｇ  Ｆｏｒｗａｒｄ）か；及びモータの駆動は障害状態（Ｆａｕｌｔｅｄ）にあるか；である。１つのフラグ（パッド）は将来使用するために保存されている。速度制御データは、また予約された、１バイトのフィールド（ｐａｄ）、モータ速度（Ｓｐｅｅｄ  Ａｃｔｕａｌ  ＲＰＭ）の最小で最も重要なビットのための１バイト及びモータ速度の最も重要なビットのための１バイトを含んでいる。前記２つのモジュールのための速度制御データに最大限にデータ連結されたパケット１００の中に単純に連結され、結果として各モジュールのために上記速度制御データを含むビット系につながっている。それ故に、Ｉ／Ｏモジュールのための各データ目的は予め定められた方法でも最大限にデータ連結されたパケット１００内で任意に相殺される。
【００４４】
最大限にデータ連結されたパケット１００が、モジュール１のためのデータを先頭に始動したと想定して、他のモジュールからのデータが引き続き、それからモジュール２のためのデータが続き、ビット０からビット３１まで（即ちブロック１１５）はモジュール１の速度制御データを示し、且つビット６２８からビット６５９（即ちブロック１２０）はモジュール２の速度制御データを表す。
【００４５】
ただ１つのデータ  ブロック１１５、１２０は各Ｉ／Ｏモジュールのために示されているけれども、多数のデータ  ブロックが使用されている。例えば、出力データあるいはモジュール３０の機器構成データは入力データから分離されたブロック内に含まれる。同様にまた、入力データは分離されたデータ  ブロックに分離されており、各データ  ブロックはＩ／Ｏモジュール３０のバッファの１つに関連している。
【００４６】
工業用制御システム１０は最大限にデータ連結されたパケット１００内に個別のブロック１１５、１２０を参照するキャスト  タグ１２５を使用している。一般的に、キャスト  タグ１２５は、特定のＩ／Ｏモジュール３０のためのデータ目的を含む最大限にデータ連結されたパケット１００の１部分を論理的に参照する識別機能を提供している。工業用制御器１５内の制御プログラム１３０は最大限にデータ連結されたパケット１００の個別的ビットを参照する代わりにキャスト  タグを用いることができる。
【００４７】
代表的な工業用制御環境において、識別子タグは単一のデータ領域を参照するのに用いることができる。タグは代表的には氏名、または標識、メンバーの氏名を指名するデータの型及びデータの企画構成、及びデータ  セットの特別な物理的配置を表わすデータ目的を含んでいる。従来のタグのためのデータ目的は全くのデータ  セットを指示し、且つ代表的には１つのタグのみは特別のデータ目的を参照する。
【００４８】
キャスト  タグ１２５はデータの目的がデータ  セットの部分集合を参照するだけである従来のタグとは異なり、且つそのデータ  タイプは参照されるデータ  セットの部分上に重ねて置かれるものである。多層のキャスト  タグ１２５は異なったＩ／Ｏモジュール３０のためのデータ  セットの異なった部分集合を参照することができ、そのデータ上の自身の独立したデータ  タイプを負わせている。プログラミングのときには、このタグは独立しているように見える。それ故に、各キャスト  タグ１２５はＩ／Ｏモジュール３０の１つのＩ／Ｏデータを参照し、キャスト  タグ１２５によって定義された構成部分はＩ／Ｏモジュール３０のバッファに格納されている個別的データ要素を参照することができる。
【００４９】
表１に表わされた構成は速度制御データのデータ要素のための構成部分とデータ  フォーマットを詳細に説明するためにキャスト  タグ１２５に用いられるデータ  タイプを示している。それ故に、キャスト  タグ１２５において、モジュール１はＡｔ  Ｓｐｅｅｄ  、モジュール１はシンボルで、Ａｔ  Ｓｐｅｅｄはブール演算フォーマットを有するデータ  タイプの構成部分の１つとして定義される。データ目的は最大限にデータ連結されたパケット１００のビット７が参照される。
【００５０】
次の仮想コードの例は表３及び表４に示されており、キャスト  タグ１２５を使用するプログラムの参照は従来のハード参照コマンドとどのように異なるかが示されている。仮想コードは使用されている実際のコードを反映する意図ではなく、むしろ概念上ハード  レファレンス越えたキャスト  タグ１２５によって与えられた利益を示している。
【００５１】
【表３】
2008134999.tif 000005
【００５２】
【表４】
2008134999.tif 000006
【００５３】
表３の例により明らかな如く、キャスト  タグ１２５はデータを連結させるようにスキャナ５０により用いられる秩序の知識を必要とすることなく関連したモジュール３０のパラメータを参照することを許可している。更に、データ  フォーマットはキャスト  タグ１２５内に詳記しており、プログラムの参照を必要としない。
【００５４】
次に図１を参照するに、キャスト  タグ１２５は具体例をあげて説明され、プログラム用端子２０に保持され、しかも工業用制御器１５の制御プログラムを発生させるプログラム環境の中で使用される。プログラム環境において、各モジュール３０のデータは独立しているように見え、且つ各構成部分は論理の名称で参照される。キャスト  タグ１２５はまた工業用制御器１５の中に蓄積される。
【００５５】
ある場合には、制御プログラムは工業用制御器１５に装荷される前に編集することができ、参照文は編集されたコードの物理的参照文に翻訳される。しかしながら、スキャナ５０によって用いられる最大限にデータ連結されたパケット１００の編成が変化（例えばモジュール３０の追加あるいは削減による）すれば、キャスト  タグ１２５のみが最新のものとなる必要がある。制御プログラムは次いで再編集され、新しい参照文がキャスト  タグ１２５により詳細に説明されて編集コードに加入される。それ故に、制御プログラムに何らの変更を必要としなくなる。他の場合において、制御プログラムが翻訳されたときには、キャスト  タグ１２５が直接に制御プログラムを参照することができる。工業用制御器１５がキャスト  タグ１２５を蓄積しているために、工業用制御システム１０内の他の実在物はキャスト  タグ１２５により創造された論理参照文を同様に用いることができ、工業用制御器１５により蓄積された基準データを参照することができる。例えば、ＨＭＩ２５は、もしモータがモジュール１に関連してモジュール１．Ａｔ  Ｓｐｅｅｄ参照を用いた速度であれば工業用制御器１５に決定するように質問をすることができる。更に、ＨＭＩ２５はモジュール１及び２に関連したモータの状態を連続的に表示するために自身の実施可能な動作モードを含むことができる。このＨＭＩコードはモジュール１．Ａｔ  Ｓｐｅｅｄ及びモジュール２．Ａｔ  Ｓｐｅｅｄ参照を用いて状態情報にアクセスするときにのみ必要である。もし最大限にデータ連結されたパケット１００の編成が変化した場合には、このＨＭＩ２５コードは修正する必要がなくなる。
【００５６】
キャスト  タグ１２５はまた制御プログラムを再構成するのに使用される。例えば、もし工業用制御器１５とインタフェイスするプログラム用端子が図１（例えばプログラム用端子がノート  コンピュータ上に装備されている）に示されるプログラム用端子２０とは別の端子であれば、それはキャスト  タグ１２５を最大限にデータ連結されたパケット１００を構成するのに用いることができ、且つ制御プログラム  コードを分析するのにも使用できる。
【００５７】
Ｉキャスト  タグ１２５を使用することは工業用制御システム１０内で用いられるコードの展開及び保守に多大の簡略化効果を与えている。最大限にデータ連結されたパケット１００を編成するための変更は、キャスト  タグ１２５の最新情報の変更のみで足りるのでコードの修正などは必要ではない。更に、キャスト  タグ１２５が一旦キャスト  タグ１２５が定義づけられた際には、ユーザーは極く容易に工業用制御システム１０にインタフェイスするだけで良く、最大限にデータ連結されたパケット１００のマッピングを記載した外部文書をアクセスすることも工業用制御システム１０内のモジュール  データをアクセスすることも必要がない。
【００５８】
次に図３を参照するに、叙上の如く、ネットワーク６０の接続体１４０は最大限にデータ連結されたパケット１００の工業用制御器１５に対する規定された転送スケジュールが追随（及び工業用制御器１５からスキャナ５０への返送パケットの同様のスケジュールも）している。このスケジュールは、最大限にデータ連結されたパケット１００のデータに対して最新情報期間に検出できないネットワークの渋滞が生じて予想できない遅延が発生するのを除去できることを確実にしており、これは制御されるプロセスに不利な影響を与える過度のあるいは予想できないデータの遅延を工業用制御システムから排除することは必要なことである。
【００５９】
異なったＩ／Ｏモジュール３５のデータに対する実際の要求は変化し、例えば、Ｉ／Ｏモジュール３５ａ、３５ｂ、３５ｃ及び３５ｅデータは緊急ではないがゆっくり変化するデータを有するセンサに関連しているために比較的低い最新情報率のみでもよく、Ｉ／Ｏモジュール３５ｄのデータ１４６は高速のセンサあるいは緊急の時刻感知データに関連しているために比較的高い最新情報率が要求される。Ｉ／Ｏモジュール３５ｄのデータ１４６の高最新情報率の故に工業用制御器１５に対する最大限にデータ連結されたパケット１００の伝送周波数を増大させることになるが、ネットワーク６０の周波数帯域幅の極端な増大による費用の増加につながる。
【００６０】
次に図４を参照するに、接続体１４０の最新情報期間１４２は、本発明においては、Ｉ／Ｏモジュール３５ａ、３５ｂ、３５ｃ及び３５ｅのデータに対して適当な値にセットされているが、Ｉ／Ｏモジュール３５ｄのデータ１４６に対して十分進んではおらず、例えば、Ｉ／Ｏモジュール３５ａ、３５ｂ、３５ｃ、３５ｅのデータに対して最新情報期間の１／３を必要としている。Ｉ／Ｏモジュール３５ｄのデータ１４６に対して必要とされる量よりも大きな最新情報期間１４２を増加することにより、ネットワーク６０の帯域幅が大きくなってデータの受信に対する応答時間の処理が容易になる。
【００６１】
続いて図３を参照するに、本発明は高い最新情報を必要とするＩ／Ｏモジュール３５ｄのデータ１４６に対して第２のコネクション１４４を開設することにより全体の最大限にデータ連結されたパケット１００は最新情報の周波数を許容している。コネクション１４０と同様にこの第２のコネクション１４４は、Ｉ／Ｏモジュール３５ｄのデータ１４６の信頼性の高い伝送を保障するようにネットワーク６０上の帯域幅及び他の資源を保留しているが、しかし標準的コネクションではないので伝送されるデータを保持するための分離独立したバッファを保持してはおらず、しかるに、Ｉ／Ｏモジュール３５ａ、３５ｂ、３５ｃ、３５ｄ及び３５ｅの最大限にデータ連結されたパケット１００のためにすでに保持されている同様のバッファをスキャナ５０及び工業用制御器１５の中に用意されている。
【００６２】
しかして、図３からも理解される如く、Ｉ／Ｏモジュール３５ｄに対するデータは最大限にデータ連結されたパケット１００から除去されることなく、従ってコネクション１４０から保存されるバッファ  スペースを有している。コネクション１４４のためにコネクション１４０と同一のバッファ  スペースを用意することによって、異なったコネクション１４０及び１４４に関連した異なったバッファの中にＩ／Ｏモジュール３５ｄのデータ１４６の異なった値の発生不能性によって生ずる問題は除去される。異なった位置における同じデータの異なった値は、制御プログラム１３０により読み込まれた位置に依存した制御プログラム１３０の属性として判断できない動作を惹起することは理解される。  
【００６３】
図３及び図４を参照するに、コネクション１４４は、Ｉ／Ｏモジュール３５ｄ（最大限にデータ連結されたパケット１００の部分集合である）のデータ１４６のみを転送するコネクション１４４であることを除いてコネクション１４０のそれと同様であり、かつ比較的短い最新情報期間１４７を有している。
【００６４】
コネクション１４４でＩ／Ｏモジュール３５ｄのデータ１４６が２つのコネクションを通して送られ最初に最大限にデータが連結されたパケット１００の１部としてコネクション１４０を通して、次にコネクション１４４の１部として期間１４７内に２回送られる。コネクション１４０及び１４４内におけるデータ１４６の転送の間隔はデータ１４６の受信に実質上定まった時間分離を設ける必要はなく、そのために、適当な時期のデータが最大限に増加する。
【００６５】
データ１４６の転送に発生した小さい単一の干渉は、最大限にデータ連結されたパケットの転送の間に供給され、あるいは期間１４２、多くは期間１４２に収容されることは理解される。更に、追加されるコネクション（図示せず）が開設されて、異なった最新情報期間を有する特別のモジュール３５のために他のデータ成分を転送するのに供給されるか、あるいは多数のＩ／Ｏモジュールからのデータが与えられたコネクション１４４に転送される。
【００６６】
重要なことは、データ、例えば、データ１４６が最大限にデータ連結されたパケット１００に転送されるので、本発明は、Ｉ／Ｏモジュール３５の構成及び最大限のデータ連結されたパケット１００を形成された後だけに位置を寄与しており、それによってＩ／Ｏモジュール３５の１つの部分集合のために要求される高データ  レートが実現される。この場合には、たとえば、Ｉ／Ｏモジュール３５ｄのために最大限にデータ連結されたパケット１００の方に以前用いられていたコネクション１４０を変更することなく追加のコネクション１４４が開設される。重要なことは、追加のコネクション１４４はコネクション１４０を閉塞することなく開設することができ、如何なる時でもコネクション１４０を遮断することなく工業用制御システム１０が動作させられ一層重要な仕事をさせることを許可している。コネクション１４４及び１４０のために２つの同じバッファが用いられているので、問題になっていたバッファのスペースが欠落による危険もなくなる。
【００６７】
興行用制御器１５のバッファの中の同じ位置を更に参照している上述されたキャスト  タグに不利な影響を与えない分離したコネクション１４４の用途は理解されるし、更に、期間１４７は最大限にデータ連結されたパケット１００を転送するのに用いられる根本のコネクションを転覆させることなしに再び自由に変化させることができる。
【００６８】
上述された特別の実施例は図示のみであり、本発明はこの技術分野において明らかな、違った形のあるいはここで説明された利点を有して同様の形態で修飾され実施することが可能である。更にここで示された構成或いはデザインのまたは請求範囲に記述された他の詳細に限定する意図はないことは勿論である。従って、上述された特別の実施例は変更できるしまたは修正できるし、また全てのそのような変形は本発明の範囲及び精神の範囲内にあるものである。
【図面の簡単な説明】
【００６９】
【図１】本発明に係る工業用制御システムの一実施例を示す簡単なブロック構成図である。
【図２】本発明に係る最大限にデータ連結されたパケットと通信するための工業用制御器とスキャナとの間の単一のコネクションのブロック線図である。
【図３】最大限にデータ連結されたパケットの部分集合を転送するために工業用制御器とスキャナとの間に第２のコネクションを開設したことを示す図２と同様の図である。
【図４】最大限にデータ連結されたパケット及び最大限にデータ連結されたパケットの部分集合の転送のインタリーブを示すタイミングチャートであり、データ転送速度の可変性を提供する図である。
【符号の説明】
【００７０】
１０…工業用制御システム  
１５…工業用制御器
１６…処理ユニット
１７、１８…メモリ
２０…プログラム用端子（プログラミング  ターミナル）
２５…ＨＭＩ
３０、３５…Ｉ／Ｏモジュール
４０…センサ
５０、５５…スキャナ
４５…アクチュエータ
６０、６５、７０…通信ネットワーク
１００…パケット
１１５、１２０…データ  ブロック
１２０…ブロック
１２５…キャスト  タグ
１３０…制御プログラム
１４、１４４…コネクション
【図１】
2008134999.tif 000007
【図２】
2008134999.tif 000008
【図３】
2008134999.tif 000009
【図４】
2008134999.tif 000010
【外国語明細書】
2008134999.tif 000011
2008134999.tif 000012
2008134999.tif 000013
2008134999.tif 000014
2008134999.tif 000015
2008134999.tif 000016
2008134999.tif 000017
2008134999.tif 000018
2008134999.tif 000019
2008134999.tif 000020
2008134999.tif 000021
2008134999.tif 000022
2008134999.tif 000023
2008134999.tif 000024
2008134999.tif 000025
2008134999.tif 000026
2008134999.tif 000027
2008134999.tif 000028
2008134999.tif 000029
2008134999.tif 000030
2008134999.tif 000031
2008134999.tif 000032