(57)【特許請求の範囲】
【請求項１】
複数のプロセッサ装置をネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成し、
前記複数のプロセッサ装置が、同一の出力装置内の出力バッファの各プロセッサ装置ごとに割り付けられたアドレス領域に出力データを格納するプログラマブルコントローラシステムにおいて、
システム構築時に、各プロセッサ装置は、送信するデータが自装置に属するか否かをビット単位で表示するフラグテーブルを作成してデータ送信先の出力装置に送信し、
出力装置が前記フラグテーブルを受信したときに、既に格納されている他のプロセッサ装置のフラグテーブルを参照し、
他のプロセッサ装置のフラグテーブルと重複して出力バッファの同一のアドレス領域を指定していた場合は、両プロセッサ装置に対して重複している旨を通知するとともに重複位置情報を送信し、
他のプロセッサ装置のフラグテーブルと重複して出力バッファの同一のアドレス領域を指定していない場合は、受信したフラグテーブルをソースアドレスをキーとして出力装置内に格納し、
システム構築後は、各プロセッサ装置のフラグテーブルと関連付けられた演算結果データ及び前記ソースアドレスを少なくとも有する出力データ送信フレームを各プロセッサ装置が出力装置に送信し、出力装置がプロセッサ装置からの出力データ送信フレームを受信したときに、前記ソースアドレスにより該当するフラグテーブルを参照して出力バッファに格納する演算結果データをビット単位で更新することを特徴とするプログラマブルコントローラシステム。
【請求項２】
複数のプロセッサ装置をネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成し、
前記複数のプロセッサ装置が、同一の出力装置内の出力バッファの各プロセッサ装置ごとに割り付けられたアドレス領域に出力データを格納するプログラマブルコントローラシステムにおいて、
システム構築時に、各プロセッサ装置は、送信するデータが自装置に属するか否かをビット単位で表示するフラグ、及び、各データが自装置に属するか否かをバイトまたはワード単位で表示したフラグからなるフラグテーブルを作成してデータ送信先の出力装置に送信し、
出力装置が前記フラグテーブルを受信したときに、既に格納されている他のプロセッサ装置のフラグテーブルを参照し、
他のプロセッサ装置のフラグテーブルと重複して出力バッファの同一のアドレス領域を指定していた場合は、両プロセッサ装置に対して重複している旨を通知するとともに重複位置情報を送信し、
他のプロセッサ装置のフラグテーブルと重複して出力バッファの同一のアドレス領域を指定していない場合は、受信したフラグテーブルをソースアドレスをキーとして出力装置内に格納し、
システム構築後は、各プロセッサ装置のフラグテーブルと関連付けられた演算結果データ及び前記ソースアドレスを少なくとも有する出力データ送信フレームを各プロセッサ装置が出力装置に送信し、出力装置がプロセッサ装置からの出力データ送信フレームを受信したときに、前記ソースアドレスにより該当するフラグテーブルを参照して出力バッファに格納する演算結果データをビット単位で更新することを特徴とするプログラマブルコントローラシステム。
【請求項３】
複数のプロセッサ装置をネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成し、
前記複数のプロセッサ装置が、同一の出力装置内の出力バッファの各プロセッサ装置ごとに割り付けられたアドレス領域に出力データを格納するプログラマブルコントローラシステムにおいて、
システム構築時に、各プロセッサ装置は、送信するデータが自装置に属するか否かをビット単位で表示するフラグテーブルを作成してデータ送信先の出力装置に送信し、
出力装置が前記フラグテーブルを受信したときに、その発信元プロセッサ装置のフラグテーブルが既に格納されているか否かを判別し、発信元プロセッサ装置のフラグテーブルが既に格納されている場合は、新規に受信したフラグテーブルを格納して更新するとともに、発信元プロセッサ装置のフラグテーブルが格納されていない場合は、受信したフラグテーブルを格納し、
システム構築後は、各プロセッサ装置のフラグテーブルと関連付けられた演算結果データ及び前記ソースアドレスを少なくとも有する出力データ送信フレームを各プロセッサ装置が出力装置に送信し、出力装置がプロセッサ装置からの出力データを受信したときに、前記ソースアドレスにより該当するフラグテーブルを参照して出力バッファに格納する演算結果データをビット単位で更新することを特徴とするプログラマブルコントローラシステム。
【請求項４】
複数のプロセッサ装置をネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成し、
前記複数のプロセッサ装置が、同一の出力装置内の出力バッファの各プロセッサ装置ごとに割り付けられたアドレス領域に出力データを格納するプログラマブルコントローラシステムにおいて、
システム構築時に、各プロセッサ装置は、送信するデータが自装置に属するか否かをビット単位で表示するフラグ、及び、各データが自装置に属するか否かをバイトまたはワード単位で表示したフラグからなるフラグテーブルを作成してデータ送信先の出力装置に送信し、
出力装置が前記フラグテーブルを受信したときに、その発信元プロセッサ装置のフラグテーブルが既に格納されているか否かを判別し、発信元プロセッサ装置のフラグテーブルが既に格納されている場合は、新規に受信したフラグテーブルを格納して更新するとともに、発信元プロセッサ装置のフラグテーブルが格納されていない場合は、受信したフラグテーブルを格納し、
システム構築後は、各プロセッサ装置のフラグテーブルと関連付けられた演算結果データ及び前記ソースアドレスを少なくとも有する出力データ送信フレームを各プロセッサが出力装置に送信し、出力装置がプロセッサ装置からの出力データ送信フレームを受信したときに、前記ソースアドレスにより該当するフラグテーブルを参照して出力バッファに格納する演算結果データをビット単位で更新することを特徴とするプログラマブルコントローラシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のプロセッサ装置を、ネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成するとともに、複数のプロセッサ装置が、同一の出力装置内の出力バッファの互いに異なるアドレス領域に出力データを格納するプログラマブルコントローラシステムに関するものであり、詳しくは、複数のプロセッサ装置から共通の出力装置へのデータの書き込みの改善に関する。
【０００２】
【従来の技術】
従来、プログラマブルコントローラシステムとして、図１１に示す構成のものがある。これは、複数のプロセッサ装置１ａ〜１ｎを、ネットワーク２を介してそれぞれ１以上の入力装置３ａ〜３ｉ、出力装置４ａ〜４ｊと接続して構成するとともに、複数のプロセッサ装置１ａ〜１ｎが、同一の出力装置４ａ内の出力バッファの互いに異なるアドレス領域に出力データを格納してから外部へ出力するものであった。
このシステムでは、複数のプロセッサ装置１ａ〜１ｎの演算結果を１つの出力装置４ａに対して出力しようとする場合、１つのプロセッサ装置にそれらのデータを集め、出力データを１つのバッファにまとめてからそのプロセッサ装置のみが出力を行っていた。そのため、同一の出力装置に対して複数のプロセッサ装置から同時に出力データが書き込まれることはなかった。
【０００３】
【発明が解決しようとする課題】
このように従来は、複数のプロセッサ装置の演算結果を同一の出力装置に出力したい場合、プロセッサ装置間で通信を行い、１つのプロセッサにデータを集めなければならず、これらの処理のためプロセッサ装置の演算結果を出力するまでに時間がかかった。また、プロセッサ装置間で通信を行うため、処理が複雑となってシステム全体の運用効率がそこなわれることがあった。
【０００４】
【課題を解決するための手段】
そこで上記課題を解決するために、請求項１の発明は、複数のプロセッサ装置をネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成し、
前記複数のプロセッサ装置が、同一の出力装置内の出力バッファの各プロセッサ装置ごとに割り付けられたアドレス領域に出力データを格納するプログラマブルコントローラシステムにおいて、
システム構築時に、各プロセッサ装置は、送信するデータが自装置に属するか否かをビット単位で表示するフラグテーブルを作成してデータ送信先の出力装置に送信し、出力装置が前記フラグテーブルを受信したときに、既に格納されている他のプロセッサ装置のフラグテーブルを参照し、他のプロセッサ装置のフラグテーブルと重複して出力バッファの同一のアドレス領域を指定していた場合は、両プロセッサ装置に対して重複している旨を通知するとともに重複位置情報を送信し、他のプロセッサ装置のフラグテーブルと重複して出力バッファの同一のアドレス領域を指定していない場合は、受信したフラグテーブルをソースアドレスをキーとして出力装置内に格納し、システム構築後は、各プロセッサ装置のフラグテーブルと関連付けられた演算結果データ及び前記ソースアドレスを少なくとも有する出力データ送信フレームを各プロセッサ装置が出力装置に送信し、出力装置がプロセッサ装置からの出力データ送信フレームを受信したときに、前記ソースアドレスにより該当するフラグテーブルを参照して出力バッファに格納する演算結果データをビット単位で更新することを特徴とする。
【０００５】
請求項２の発明は、複数のプロセッサ装置をネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成し、前記複数のプロセッサ装置が、同一の出力装置内の出力バッファの各プロセッサ装置ごとに割り付けられたアドレス領域に出力データを格納するプログラマブルコントローラシステムにおいて、
システム構築時に、各プロセッサ装置は、送信するデータが自装置に属するか否かをビット単位で表示するフラグ、及び、各データが自装置に属するか否かをバイトまたはワード単位で表示したフラグからなるフラグテーブルを作成してデータ送信先の出力装置に送信し、出力装置が前記フラグテーブルを受信したときに、既に格納されている他のプロセッサ装置のフラグテーブルを参照し、
他のプロセッサ装置のフラグテーブルと重複して出力バッファの同一のアドレス領域を指定していた場合は、両プロセッサ装置に対して重複している旨を通知するとともに重複位置情報を送信し、他のプロセッサ装置のフラグテーブルと重複して出力バッファの同一のアドレス領域を指定していない場合は、受信したフラグテーブルをソースアドレスをキーとして出力装置内に格納し、システム構築後は、各プロセッサ装置のフラグテーブルと関連付けられた演算結果データ及び前記ソースアドレスを少なくとも有する出力データ送信フレームを各プロセッサ装置が出力装置に送信し、出力装置がプロセッサ装置からの出力データ送信フレームを受信したときに、前記ソースアドレスにより該当するフラグテーブルを参照して出力バッファに格納する演算結果データをビット単位で更新することを特徴とする。
【０００６】
請求項３の発明は、複数のプロセッサ装置をネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成し、前記複数のプロセッサ装置が、同一の出力装置内の出力バッファの各プロセッサ装置ごとに割り付けられたアドレス領域に出力データを格納するプログラマブルコントローラシステムにおいて、
システム構築時に、各プロセッサ装置は、送信するデータが自装置に属するか否かをビット単位で表示するフラグテーブルを作成してデータ送信先の出力装置に送信し、出力装置が前記フラグテーブルを受信したときに、その発信元プロセッサ装置のフラグテーブルが既に格納されているか否かを判別し、発信元プロセッサ装置のフラグテーブルが既に格納されている場合は、新規に受信したフラグテーブルを格納して更新するとともに、発信元プロセッサ装置のフラグテーブルが格納されていない場合は、受信したフラグテーブルを格納し、システム構築後は、各プロセッサ装置のフラグテーブルと関連付けられた演算結果データ及び前記ソースアドレスを少なくとも有する出力データ送信フレームを各プロセッサ装置が出力装置に送信し、出力装置がプロセッサ装置からの出力データを受信したときに、前記ソースアドレスにより該当するフラグテーブルを参照して出力バッファに格納する演算結果データをビット単位で更新することを特徴とする。
【０００７】
請求項４の発明は、複数のプロセッサ装置をネットワークを介してそれぞれ１以上の入力装置、出力装置と接続して構成し、前記複数のプロセッサ装置が、同一の出力装置内の出力バッファの各プロセッサ装置ごとに割り付けられたアドレス領域に出力データを格納するプログラマブルコントローラシステムにおいて、
システム構築時に、各プロセッサ装置は、送信するデータが自装置に属するか否かをビット単位で表示するフラグ、及び、各データが自装置に属するか否かをバイトまたはワード単位で表示したフラグからなるフラグテーブルを作成してデータ送信先の出力装置に送信し、出力装置が前記フラグテーブルを受信したときに、その発信元プロセッサ装置のフラグテーブルが既に格納されているか否かを判別し、発信元プロセッサ装置のフラグテーブルが既に格納されている場合は、新規に受信したフラグテーブルを格納して更新するとともに、発信元プロセッサ装置のフラグテーブルが格納されていない場合は、受信したフラグテーブルを格納し、システム構築後は、各プロセッサ装置のフラグテーブルと関連付けられた演算結果データ及び前記ソースアドレスを少なくとも有する出力データ送信フレームを各プロセッサが出力装置に送信し、出力装置がプロセッサ装置からの出力データ送信フレームを受信したときに、前記ソースアドレスにより該当するフラグテーブルを参照して出力バッファに格納する演算結果データをビット単位で更新することを特徴とする。
【０００８】
【発明の実施の形態】
以下、図に沿って本発明の実施形態を説明する。
図１は第１の実施形態の動作を示す説明図である。この実施形態では、プロセッサ装置が、演算した結果のデータを出力装置に通知するために、出力装置の持つデータバッファと同等にマッピングしたファイルを作成し、その中に自装置の演算結果を格納する。ここで、有効フラグでないところに対応するデータは、不定データがセットされる。また同時に自装置の所属する該当出力データ位置を有効とするフラグを作成し、データ部とともに図１に示されるような出力データ送信フレームを作成し、出力装置へ通知する。
【０００９】
出力装置は、演算部で示されるような論理にもとづきフレーム内の有効フラグに対応して出力バッファのデータをプロセッサ装置から通知されてきたデータにより変更して新しい出力とする。すなわち、有効フラグのあるデータのみを変更し、有効フラグのないデータは現在データをそのまま新規出力データとする。図２は、この実施形態の出力装置が出力バッファに３２ビットのデータを持ち、あるプロセッサ装置がそのうちの１〜８ビットと２５，２６，３２ビット目を出力データとした場合の例を示す。
【００１０】
図３は第２の実施形態の動作を示す説明図である。この実施形態では、第１の実施形態における出力データ送信フレームについて、さらにバイト単位での有効フラグをビット単位で持たせたものである。このフラグは順番に以下のデータがバイト単位でフレーム内に存在するか否かを示すフラグであり、このフラグが無効状態であれば、そのフラグに対応する位置にあるバイトデ一タそのものがフレーム上に存在しないことを意味する。
【００１１】
従って出力装置は、出力データ送信フレームを受信すると、フレーム内のバイト有効フラグにもとづき、自己の出力バッファのデータをバイト単位で選択しながら、フレーム内の有効フラグと更新デ一タに従って、出力バッファの内容を更新する。すなわち、図４に示すようにある出力デバイスが３２ビットの出力情報を持ち、その出力装置に対してあるプロセッサ装置が、最初の１〜８ビットと２５，２６，３２ビット目を出力データとして持つ場合は、図に示すように１バイト目と４バイト目を有効とし、その他は無効として設定している。このフレームを受信した出力装置は、有効となっているバイト単位で第１の実施形態と同じく出力データの更新を行う。
【００１２】
図５、図６は第３の実施形態を示す説明図である。この実施形態は、図示されるように、各プロセッサ装置が、まず自装置が出力するデータの属する出力装置が持つ全デ−タに対して、自装置の該当出力データ位置を有効とするフラグのテーブルを作成し、そのテーブルをネットワークを介して該当出力装置に通知する。各出力装置は、受信した各プロセッサからのフラグテーブルを、そのソースアドレスをキーとして内部に持つ。その後、各プロセッサ装置は、演算結果を該当する出力装置に通知する。このとき、自装置に所属しないデータに関しては不定データが送られる。これらのデータフレームを受け取った各出力装置は、フレーム内のソースアドレスより有効フラグテーブルのアドレスを認識し、該当するフラグテーブルを参照し、第１の実施形態と同じく有効データのみを出力する。
【００１３】
図７、図８は第４の実施形態を示す説明図である。この実施形態が第３の実施形態と異なるところは、各プロセッサ装置がイニシャル状態において作成するフラグテーブルの中に、第２の実施形態で示したバイト有効フラグが付加されていることである。従って各プロセッサ装置は、演算結果を該当する出力装置に通知する時に、バイト単位で自装置の出力データが含まれるデータのみを送信する。これらのデータフレームを受け取った各出力装置は、フレーム内のソースアドレスより有効フラグテーブルのアドレスを認識し、該当するフラグテーブルを参照し第２の実施形態と同じく有効データのみを出力する。
【００１４】
図９は第５の実施形態を示す説明図である。第３および第４の実施形態において、各出力装置は、各プロセッサ装置からフラグテーブルを通知された時に、他プロセッサ装置から既に登録されているフラグテーブルを参照し、プロセッサ装置間で重複して有効に指定されているデータがないか否かチェックする。この時重複して有効になっているデータがあれば、出力装置の出力バッファのマッピングに対応して重複データの位置に、“１”をセットした情報、例えば図９に示されるような重複データ情報フレームを作成し、重複している２つのプロセッサに対してそれぞれ通知する。
【００１５】
次に、第６の実施形態について説明する。第３および第４の実施形態において、各出力装置は、プロセッサ装置から通知されたフラグテーブルを登録するときに、フラグテーブル格納領域を検索し、送信元プロセッサのフラグテーブルが既に登録してあるか否かをチェックする。ここで既に登録されていれば新しいテーブルに変更し、未登録の場合は新たにそのテ−ブルを追加する。それにより、プロセッサ装置が有効ビットパターンテーブルを変更したい場合に新しいテーブルを出力装置に通知するだけで変更が可能となる。
なお、第２の実施形態および第４の実施形態では、データをバイト単位で送信する場合について説明したが、ワード単位で送信する場合も同様に、本発明を適用することができる。
【００１６】
【発明の効果】
以上述べたように本発明によれば、複数のプロセッサ装置の演算結果を１つの出力装置に対して出力しようとする場合、自装置が出力データを通知しようとしている出力装置が他プロセッサ装置からも出力データを通知される出力装置であるか否かを意識することなく、該当出力装置に自装置の演算結果を通知することが可能となる。その結果、プロセッサ装置間で出力データの整合をとるための通信プロトコルが不要となり、プロセッサ装置の演算から出力までの処理が簡単になる。また、従来行われていた出力データを１つのプロセッサ装置に集めるためのプロセッサ装置間の通信が不要となった分、システム全体の運用効率を向上させることができる。
【図面の簡単な説明】
【図１】  第１の実施形態の動作を示す説明図である。
【図２】  第１の実施形態の具体例を示す説明図である。
【図３】  第２の実施形態の動作を示す説明図である。
【図４】  第２の実施形態の具体例を示す説明図である。
【図５】  第３の実施形態の動作を示す説明図である。
【図６】  第３の実施形態の動作を示す説明図である。
【図７】  第４の実施形態の動作を示す説明図である。
【図８】  第４の実施形態の動作を示す説明図である。
【図９】 第５の実施形態で用いられステータスフレームを示す図である。
【図１０】  本発明が適用されるプログラマブルコントローラシステムの構成を示す図である。
【符号の説明】
１ａ〜１ｎ  プロセッサ装置
２  ネットワーク
３ａ〜３ｉ  入力装置
４ａ〜４ｊ  出力装置
【図１】
0003810138.tif 000002
【図２】
0003810138.tif 000003
【図３】
0003810138.tif 000004
【図４】
0003810138.tif 000005
【図５】
0003810138.tif 000006
【図６】
0003810138.tif 000007
【図７】
0003810138.tif 000008
【図８】
0003810138.tif 000009
【図９】
0003810138.tif 000010
【図１０】
0003810138.tif 000011