(57)【特許請求の範囲】
【請求項１】
ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムにおける通信方法であって、
前記通信は、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信があり、
前記データ通信は、前記管理局が前記ネットワークに接続された機器に対してＯＵＴデータを送信し、次いで前記管理局が前記機器からＩＮデータを受信する第１データ通信と、一定時間ごと、または、データ変更のあったときにデータを送信する第２データ通信を有し、
前記管理局には、送信する情報を一時的に格納する送信キューを複数設けるとともに、そのうちの一つは前記第２データ通信用の送信データを保持するようにし、
前記通信は、予め定めたサイクルタイムに従い、前記データ通信を行った後、前記サイクルタイムの残り時間で前記メッセージ通信と前記第２データ通信を交互に切り替えながら行うことを１サイクルとし、そのサイクルを繰り返し実行することを特徴とするネットワークシステムにおける通信方法。
【請求項２】
ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムであって、
前記通信は、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信があり、
前記データ通信は、前記管理局が前記ネットワークに接続された機器に対してＯＵＴデータを送信し、次いで前記管理局が前記機器からＩＮデータを受信する第１データ通信と、一定時間ごと、または、データ変更のあったときにデータを送信する第２データ通信を有し、
前記管理局は、
送信する情報を一時的に格納する送信キューを複数設け、
前記複数の送信キューのうちの一つは前記第２データ通信用の送信データを保持するように構成し、
前記複数の送信キューから適宜データを抽出する管理手段を設け、
前記管理手段は、設定されたサイクルタイムに従い、前記データ通信を行った後、前記サイクルタイムの残り時間で前記メッセージ通信と前記第２データ通信を交互に切り替えながら行うことを１サイクルとし、そのサイクルを繰り返し実行する機能を有するようにしたことを特徴とするネットワークシステム。
【請求項３】
ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムにおける通信方法であって、
前記通信は、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信があり、
前記管理局は、通信中に前記サイクルタイムを個別に設定する機能を持ち、
前記通信のサイクルごとに前記設定されたサイクルタイムを参照し、その回のサイクルタイムを決定し、
前記通信は、前記データ通信を行った後、前記設定されたサイクルタイムの残り時間で前記メッセージ通信を行うことを１サイクルとし、そのサイクルを繰り返し実行するようにしたことを特徴とするネットワークシステムにおける通信方法。
【請求項４】
ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムであって、
前記通信は、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信があり、
前記管理局は、
通信中に前記サイクルタイムを個別に設定する機能を持ち、
通信のサイクルごとに前記設定されたサイクルタイムを参照し、その回のサイクルタイムを決定する手段と、
前記データ通信を行った後、前記設定されたサイクルタイムの残り時間で前記メッセージ通信を行うことを１サイクルとし、そのサイクルを繰り返し実行する手段を設けたことを特徴とするネットワークシステム
【請求項５】
リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークに接続可能で、前記ネットワーク上の通信を管理する管理局であって、
前記データ通信は、前記管理局が前記ネットワークに接続された機器に対してＯＵＴデータを送信し、次いで前記管理局が前記機器からＩＮデータを受信する第１データ通信と、一定時間ごと、または、データ変更のあったときにデータを送信する第２データ通信を有し、
送信する情報を一時的に格納する送信キューを複数設けるとともに、そのうちの一つは前記第２データ通信用の送信データを保持するように構成し、
前記複数の送信キューから適宜データを抽出する管理手段を設け、
前記管理手段は、設定されたサイクルタイムに従い、前記データ通信を行った後、前記サイクルタイムの残り時間で前記メッセージ通信と前記第２データ通信を交互に切り替えながら行うことを１サイクルとし、そのサイクルを繰り返し実行するようにしたことを特徴とする管理局。
【請求項６】
前記管理局は、前記サイクルタイムを個別に設定する機能を持ち、
各通信のサイクルごとに前記設定されたサイクルタイムを参照し、その回の通信サイクルにおけるサイクルタイムを設定する機能を備えたことを特徴とする請求項５に記載の管理局。
【請求項７】
リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークに接続可能で、前記ネットワーク上の通信を管理する管理局であって、
通信中に前記サイクルタイムを個別に設定する機能を持ち、
通信のサイクルごとに前記設定されたサイクルタイムを参照し、その回のサイクルタイムを決定する手段と、
前記データ通信を行った後、前記設定されたサイクルタイムの残り時間で前記メッセージ通信を行うことを１サイクルとし、そのサイクルを繰り返し実行する手段を備えたことを特徴とする管理局。
【請求項８】
リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークであって、
前記ネットワークには、管理局と機器が接続され、
前記管理局は、通信中に、次のサイクルで送信する前記メッセージ通信の総量を個別に設定する機能を持ち、
前記機器は、通信のサイクルごとに前記管理局が設定した前記メッセージ通信の総量を越えないように通信を行うように構成されたことを特徴とするネットワークシステム。
【請求項９】
リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークに接続可能で、前記ネットワーク上の通信を管理する管理局であって、
通信中に、次のサイクルで送信する前記メッセージ通信の総量を個別に設定する機能を持ち、
通信のサイクルごとに前記設定された総量を参照し、次の回のサイクルでは、前記ネットワークに接続される各機器から送信されるメッセージ通信の総量が、前記設定した総量を越えないように制御する制御手段を備えたことを特徴とする管理局。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、管理局及びネットワークシステム並びにネットワークシステムにおける通信方法に関するものである
【０００２】
【従来の技術】
Ｉ／Ｏ通信機能とメッセージ通信機能を持ったネットワークでは、Ｉ／Ｏ通信に割り当てる通信帯域と、メッセージ通信に割り当てるメッセージ帯域を予めネットワークパラメータとして設定し、その設定したパラメータに基づいてデータの送受信を行うようになっている。
【０００３】
Ｉ／Ｏ通信は、例えば、センサのオン／オフの情報などのリアルタイム性の有するデータの送受信を行うもので、Ｉ／Ｏフェーズ，Ｉ／Ｏメッセージとも称される。そして、Ｉ／Ｏフェーズには、ポーリング方式をとり、マスター局から送信相手のスレーブ局に対して出力データ（ＯＵＴデータ）を送信し（コマンド）、次いで、各スレーブ局からそれに対する入力データ（ＩＮデータ）を受信する（レスポンス）通信方式をとるＰｏｌｌコマンド／レスポンスと、全スレーブ局に対して係る上記のＯＵＴデータの送信とＩＮデータの受信を行うＢｉｔ―Ｓｔｒｏｂｅコマンド／レスポンスメッセージがある。さらに、一定時間ごとにデータを送信するＣｙｃｌｉｃや、データの変更のあった時に送信するＣｈａｎｇ  ｏｆ  Ｓｔａｔｅ（ＣＯＳ）がある。そして、後者の２つ（Ｃｙｃｌｉｃ，ＣＯＳ）は、特に優先度は高い。
【０００４】
一方、メッセージ通信は、パラメータの設定，データ読み出し，ファイル転送等の優先度の低い情報の送受信を行うもので、Ｅｘｐｌｉｃｉｔフェーズ，Ｅｘｐｌｉｃｉｔメッセージとも称される。
【０００５】
例えば、ネットワーク上に通信を管理する１つのマスター局と、そのマスター局との間でデータ通信を行う複数のスレーブ局が存在しているネットワークシステム（デバイスネット（登録商標）など）の場合、マスター局が、各スレーブ局との間で順番にデータの送受信を行うようになる。ＦＡネットワークの場合、マスター局が全ＯＵＴデータをスレーブ局に対して送り、次いで全ＩＮデータの入力を終了したところで１つのサイクルと考え、このサイクルを繰り返し実行することでネットワークによるシステムが動作する。
【０００６】
さらに、Ｅｘｐｌｉｃｉｔフェーズの場合、Ｉ／Ｏフェーズより優先度が低いので、１つのサイクル内ですべて送信する必要性はない。そこで、図１に示すように、１サイクルの時間を予め設定し、まず、Ｉ／ＯフェーズであるＰｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズ（Ｐｏｌｌコマンド／レスポンス＋Ｂｉｔ―Ｓｔｒｏｂｅコマンド／レスポンスメッセージ）の通信を行い、その後にＥｘｐｌｉｃｉｔフェーズの通信を行う。この時、Ｐｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズは、そのサイクルで送るべきデータはすべて送受信し、１サイクルの時間は固定であるので残った時間で送れる範囲でＥｘｐｌｉｃｉｔフェーズを送信するようになる。
【０００７】
また、係るデータの送受信の管理を行うマスター局の内部構造としては、図２に示すようになっている。すなわち、Ｉ／Ｏフェーズを送るＩ／Ｏアプリケーション処理部１と、Ｅｘｐｌｉｃｉｔフェーズを送るＥｘｐｌｉｃｉｔアプリケーション処理部２を備え、各処理部１，２は、ネットワークパラメータテーブル３を参照しながら、送信タイミングに来たならば送信キュー４に送信すべきデータを与える。これにより、送信キュー４の先頭から順番に、送信処理部５を介して所定のクライアントに対して送信データが送信される。
【０００８】
つまり、良く知られているように、キューはＦＩＦＯ（Ｆｉｒｓｔ−ｉｎ−ｆｉｒｓｔ−ｏｕｔ）型のデータ構造であるので、まずＩ／Ｏアプリケーション処理部１が今回のサイクルで送るべき送信データを送信キュー４に与える。この登録した送信データの総量から、今回送信にかかる時間がわかる。そして、１回のサイクルタイムは、ネットワークパラメータテーブル３のサイクルタイムの欄に登録されているので、Ｅｘｐｌｉｃｉｔフェーズを送信できる時間が求められるので、Ｅｘｐｌｉｃｉｔアプリケーション処理部２は、その求めた時間で送信できるＥｘｐｌｉｃｉｔフェーズを送信キュー４に与える。以後、上記処理を繰り返すことにより、送信処理部５から送信される送信データは、図１に示す送信スケジュールを守って送ることができるようになる。
【０００９】
なお、ネットワークパラメータテーブル３に格納する各種パラメータは、マスター局に接続した上位のコントローラ，ツール装置などから送られるデータに基づいて登録される。そして、ネットワークシステム中に存在するセンサ数等から１サイクルで送るべきＩ／Ｏデータ量が決まるので、Ｐｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズの送信時間もわかる。そして、１サイクルの時間（サイクルタイム）をどれくらいにしたいかの仕様が与えられると、Ｅｘｐｌｉｃｉｔフェーズ（メッセージ）を送信できる時間が決定される。
【００１０】
【発明が解決しようとする課題】
ところで、例えば大量のメッセージ（Ｅｘｐｌｉｃｉｔフェーズ）を送信したい場合、上記した通常のサイクルにしたがって処理をすると、すべてのメッセージを送信し終わるまでに時間がかかりすぎるとともに、変更する送信する内容によっては、一括して送信し、各スレーブ局の記憶内容を変更したいという要求が有る。一例を示すと、ある商品Ａの生産ラインを管理・制御するＦＡネットワークシステムにおいて、同一の生産ラインを用いながら別の商品Ｂを製造するような場合、各スレーブ局との間で送受信するＩ／Ｏ情報が変更されたり、各種の設定の変更を行う必要があるので、係る設定変更のためのメッセージを送信するような場合が有る。
【００１１】
係る場合には、サイクルタイムを長くし、結果として１サイクル中のメッセージ（Ｅｘｐｌｉｃｉｔフェーズ）の送信時間を長くすることにより対応することができる。しかし、図２に示すように、サイクルタイムは、ネットワークパラメータテーブル３に登録されているので、サイクルタイムの変更を行うためには、ネットワークパラメータの更新を行う必要がある。そのため、Ｉ／Ｏ通信を停止させた状態でネットワークパラメータの更新をすることになり、リアルタイム性を要求されるＩ／Ｏ通信のリアルタイム性が低下してしまう。しかも、一度装置を停止させることから、初期設定を最初からやりなおさなければならなくなるという問題も有る。
【００１２】
一方、メッセージ（Ｅｘｐｌｉｃｉｔフェーズ）を送信中は、他のデータが送信できない。つまり、サイクルタイムを長くした後のサイクルにおいて大量のメッセージ（Ｅｘｐｌｉｃｉｔフェーズ）の送信中にＣＯＳ／Ｃｙｃｌｉｃフェーズの送信の必要性が発生した場合、Ｉ／Ｏアプリケーション処理部１は、自己の送信タイミングが来た時に送信キュー４に係るＣＯＳ等の送信データを登録する。つまり、１回のサイクル終了後にＣＯＳフェーズ等の送信デーを送信するようになる。従って、メッセージ（Ｅｘｐｌｉｃｉｔフェーズ）のデータ量が多くなるほど、緊急性を要するＣＯＳフェーズ等の送信データの送信タイミングが遅れるという問題がある。
【００１３】
また、仮に、ＣＯＳフェーズ等の場合には、Ｉ／Ｏアプリケーション処理部１が割り込み処理をして送信キュー４にその送信データを登録することもできるが、いずれにしても既に送信キュー４に蓄積されていたデータを送信後でなければＣＯＳフェーズを送信することができず、実際に送信するまでにはタイムラグが生じる。
【００１４】
この発明は、Ｉ／Ｏ通信を行いながらメッセージの通信帯域（時間・データ量）を変更することができる管理局及びネットワークシステムを提供することを目的とする。また、メッセージの通信帯域の広狭にかかわらず、リアルタイム性が要求されるデータ（ＣＯＳ，Ｃｙｃｌｉｃフェーズ等のＩ／Ｏデータ等）の送信のリアルタイム性を確保することのできる管理局及びネットワークシステム並びにネットワークシステムにおける通信方法を提供することを他の目的とする。
【００１５】
【課題を解決するための手段】
この発明によるネットワークシステムにおける通信方法は、ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムにおける通信方法であって、前記通信は、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信があり、前記データ通信は、前記管理局が前記ネットワークに接続された機器に対してＯＵＴデータを送信し、次いで前記管理局が前記機器からＩＮデータを受信する第１データ通信と、一定時間ごと、または、データ変更のあったときにデータを送信する第２データ通信を有し、前記管理局には、送信する情報を一時的に格納する送信キューを複数設けるとともに、そのうちの一つは前記第２データ通信用の送信データを保持するようにし、前記通信は、予め定めたサイクルタイムに従い、前記データ通信を行った後、前記サイクルタイムの残り時間で前記メッセージ通信と前記第２データ通信を交互に切り替えながら行うことを１サイクルとし、そのサイクルを繰り返し実行するようにした。
【００１６】
また、このネットワークシステムの通信方法を実行するのに好ましいネットワークシステムとしては、ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムであって、前記通信は、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信があり、前記データ通信は、前記管理局が前記ネットワークに接続された機器に対してＯＵＴデータを送信し、次いで前記管理局が前記機器からＩＮデータを受信する第１データ通信と、一定時間ごと、または、データ変更のあったときにデータを送信する第２データ通信を有するものを前提とする。そして、前記管理局は、送信する情報を一時的に格納する送信キューを複数設け、前記複数の送信キューのうちの一つは前記第２データ通信用の送信データを保持するように構成し、前記複数の送信キューから適宜データを抽出する管理手段を設け、前記管理手段は、設定されたサイクルタイムに従い、前記データ通信を行った後、前記サイクルタイムの残り時間で前記メッセージ通信と前記第２データ通信を交互に切り替えながら行うことを１サイクルとし、そのサイクルを繰り返し実行する機能を有するようにした。
【００１７】
また、このネットワークシステムを構築するのに好ましい管理局としては、例えば、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークに接続可能で、前記ネットワーク上の通信を管理する管理局であって、前記データ通信は、前記管理局が前記ネットワークに接続された機器に対してＯＵＴデータを送信し、次いで前記管理局が前記機器からＩＮデータを受信する第１データ通信と、一定時間ごと、または、データ変更のあったときにデータを送信する第２データ通信を有し、送信する情報を一時的に格納する送信キューを複数設けるとともに、そのうちの一つは前記第２データ通信用の送信データを保持するように構成し、前記複数の送信キューから適宜データを抽出する管理手段を設け、前記管理手段は、設定されたサイクルタイムに従い、前記データ通信を行った後、前記サイクルタイムの残り時間で前記メッセージ通信と前記第２データ通信を交互に切り替えながら行うことを１サイクルとし、そのサイクルを繰り返し実行するように構成することができる。
【００１８】
管理局は、実施の形態では、マスタ局１０（単にマスターと称されたり、親局とも称されることもあり、その呼称は問わない）に対応し、機器は実施の形態ではスレーブ局１１（単にスレーブと称されたり、子局と称されることもあり、その呼称は問わない）に対応する。また、第１データ通信は、実施の形態ではＰｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズの通信に対応し、第２データ通信はＣＯＳ，Ｃｙｃｌｉｃの通信に対応する。第２データ通信は、リアルタイム性が要求されるデータの中でも、優先度の高いデータを通信するものである。
【００１９】
送信キューは、実施の形態では、送信データの種類に対応して３つ設けたが、少なくとも２つ設ければよい。そして、そのうちの１つを第２データ通信用に使用することにより、優先度の高いデータを独立して送信キューに保持できるので、必要な時に他のデータに先駆けて送信することができる。
【００２０】
そして、複数の送信キューの下流側（出力側）に管理手段を設けたことにより、各キューに保持された送信データを任意の順番で送信することができ、上記した他のデータに先駆けた送信が可能となる。また、このようにメッセージ通信を実行中であっても、その途中でリアルタイム性の特に高い第２データ通信が行えるので、仮に大量のメッセージを送信する必要があっても、第２データ通信つまりリアルタイム性が確保できる。
【００２２】
なおまた、データ通信は、実施の形態では、第１データ通信と第２データ通信を交互に行うようにしたが、本発明は必ずしもこのようにする必要はなく、第１データ通信のみとしたり、ｎ回に１回等の他、任意のタイミングで第１データ通信と第２データ通信を切り替えるようにしてもよい。
【００２３】
本発明の別のネットワークシステムの通信方法は、ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムにおける通信方法であって、前記通信は、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信があり、前記管理局は、通信中に前記サイクルタイムを個別に設定する機能を持ち、前記通信のサイクルごとに前記設定されたサイクルタイムを参照し、その回のサイクルタイムを決定し、前記通信は、前記データ通信を行った後、前記設定されたサイクルタイムの残り時間で前記メッセージ通信を行うことを１サイクルとし、そのサイクルを繰り返し実行するようにした。
そして、係る通信方法を実施するのに適したネットワークシステムとしては、ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムであって、前記通信は、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信があるものを前提とする。そして、前記管理局は、通信中に前記サイクルタイムを個別に設定する機能を持ち、通信のサイクルごとに前記設定されたサイクルタイムを参照し、その回のサイクルタイムを決定する手段と、前記データ通信を行った後、前記設定されたサイクルタイムの残り時間で前記メッセージ通信を行うことを１サイクルとし、そのサイクルを繰り返し実行する手段を設けるようにした。
【００２４】
また、このネットワークシステムを構築するのに好ましい管理局としては、例えば、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークに接続可能で、前記ネットワーク上の通信を管理する管理局であって、通信中に前記サイクルタイムを個別に設定する機能を持ち、通信のサイクルごとに前記設定されたサイクルタイムを参照し、その回のサイクルタイムを決定する手段と、前記データ通信を行った後、前記設定されたサイクルタイムの残り時間で前記メッセージ通信を行うことを１サイクルとし、そのサイクルを繰り返し実行する手段を備えることである。
【００２５】
ここで、サイクルタイムを個別に設定する機能は、実施の形態では、別途サイクルタイムを記憶するサイクルタイム記憶エリア２６を設けるとともに、その記憶内容を変更する設定部３３の両者により実現される。また、サイクルタイムを決定する手段は、実施の形態では、フェーズ管理部３２により実現される。さらに繰り返し実行する手段もフェーズ管理部３２により実現される。
【００２６】
この発明によれば、通信中でも独立してサイクルタイムを変更でき、しかも、毎サイクルごとにサイクルタイムを参照し、次の通信にそのサイクルタイムの変更を反映させるので、動的にサイクルタイムの変更が可能となる。よって、メッセージ通信をするデータが多い時は、動的にサイクルタイムを増大させることにより、通信を停止することなくメッセージ通信のための通信時間（通信帯域）を広げることができ、短時間でメッセージ送信が行える。
【００２７】
また、上記した２つのネットワークシステムを同時に実現することもできる。つまり、動的にサイクルタイムを変更し、さらに各サイクルでの通信は、メッセージ通信と第２データ通信を適宜切り替えて実施するようにしたネットワークシステムを構築すると良い。
【００２８】
そして、係るシステムを構築するのに適した管理局としては、例えば、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークに接続可能で、前記ネットワーク上の通信を管理する管理局であって、前記データ通信は、前記管理局から前記ネットワークに接続された機器に対してデータを送信し、その送信に対する応答として前記機器からデータを受ける第１データ通信と、所定のタイミングで前記管理局からデータを送信する第２データ通信を有する。そして、送信する情報を一時的に格納する送信キューを複数設けるとともに、そのうちの一つは前記第２データ通信用の送信データを保持するように構成し、前記複数の送信キューから適宜データを抽出する管理手段を設け、前記管理手段は、設定されたサイクルタイムに従い、前記データ通信を行った後、前記サイクルタイムの残り時間で前記メッセージ通信と前記第２データ通信を適宜切り替えながら行うことを１サイクルとし、そのサイクルを繰り返し実行し、さらに、サイクルタイムを個別に設定する機能を持ち、各通信のサイクルごとに前記設定されたサイクルタイムを参照し、その回の通信サイクルにおけるサイクルタイムを設定する機能を備えて構成することである。
【００２９】
さらにまた、本発明の別のネットワークシステムとしては、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークであって、前記ネットワークには、管理局と機器が接続され、前記管理局は、通信中に、次のサイクルで送信する前記メッセージ通信の総量を個別に設定する機能を持ち、前記機器は、通信のサイクルごとに前記管理局が設定した前記メッセージ通信の総量を越えないように通信を行うようにすることである。
【００３０】
そして、このネットワークシステムを構築するのに好ましい管理局としては、例えば、リアルタイム性が要求されるデータ通信と、リアルタイム性の要求されないメッセージ通信が行われるネットワークに接続可能で、前記ネットワーク上の通信を管理する管理局であって、通信中に、次のサイクルで送信する前記メッセージ通信の総量を個別に設定する機能を持ち、通信のサイクルごとに前記設定された総量を参照し、次の回のサイクルでは、前記ネットワークに接続される各機器から送信されるメッセージ通信の総量が、前記設定した総量を越えないように制御する制御手段を備えて構成することである。
【００３１】
この発明は、第３の実施の形態により実現されている。そして、機器は実施の形態ではノードに対応する。また、メッセージ通信の総量は、１回の通信サイクルにおいて、各ノードが送信するメッセージ通信の総量であり、データ量（データ長）や、通信時間や、通信可能なノード数などにより規定される。
【００３２】
この発明によれば、Ｎ：Ｎ通信のようなネットワークにおいても、通信を行いながら１回の通信サイクルで送信可能なメッセージの総量を変更することができる。
【００３３】
なお、上記した実施するのに適した機器としては、例えば、ネットワーク接続された管理局と複数の機器との間で通信を行うネットワークシステムに接続可能な前記機器である。そして、送信する情報を一時的に格納する複数の送信キューと、前記複数の送信キューに対して、送信データを格納する手段と、前記複数の送信キューから適宜データを抽出する管理手段と、その管理手段で抽出された送信データを送信する送信手段とを備え、前記複数の送信キューのうちの１つは、優先的に送信する送信データを保持するように構成する。
【００３４】
ここで、機器は、実施の形態ではスレーブ局１１（単にスレーブと称されたり、子局と称されることもあり、その呼称は問わない）に対応する。また、送信キューは、実施の形態では２個設けているが、３個以上としてももちろん良い。さらに、送信データを格納する手段は、実施の形態では、各アプリケーション処理部３０′，３１′に対応し、管理手段はフェーズ管理部３２′に対応する。そして、優先的に送信する送信データを保持するキューは、実施の形態では、ＣＯＳキュー２７′ｂに対応する。
【００３５】
そして、各手段は、この様に所定の１つの送信キューに対して優先的に送信する送信データを保持させるべく動作する。つまり、格納する手段は、優先的に送信すべき送信データが発生すると、係る所定の１つの送信キューに登録するようにし、管理手段も、優先的に送信すべき送信データは、所定のアルゴリズムに従い、他のキューに保持された送信データよりも優先的に抽出するように機能する。なお、優先的に抽出するとは、係る所定の送信キューに送信データが存在する場合には直ぐに抽出する場合はもちろんであるが、例えば、各送信キューを見に行く回数，頻度を高くすることにより、結果として待ち時間が他の送信データよりも短くなり、優先的に送信されるようにする場合も含む。さらには、仮に見に行く回数が均等としても、単位時間当たりに発生する優先的に送信すべき送信データのデータ数と、一般の送信データのデータ数で、前者の方が少ない場合には、一般の送信データよりも後に発生した優先的に送信すべき送信データの方が先に送信されるので、係る場合も含む。もちろん、上記したアルゴリズムは、例示でありこれ以外でも良い。
【００３６】
この発明によれば、優先的に送信する送信データを保持する送信キューを別途設けたため、一般的な優先度の低い送信データの通信を実行中であっても、その途中で優先度の高い送信データの通信が行えるので好ましい。
【００３７】
この発明の以上説明した構成要素は可能な限り組み合わせることができる。この発明による管理局を構成する各手段を専用のハードウェア回路によって実現することができるし、プログラムされたコンピュータによって実現することもできる。
【００３８】
【発明の実施の形態】
図３は、本発明が適用されるネットワークシステムの一例を示している。同図に示すように、１つのマスター局１０と複数個（Ｎ個）のスレーブ局１１が、コンポーネント系ネットワークであるデバイスネット（登録商標）などの伝送路１２に接続され、その伝送路１２を介してデータの送受信を行うようになっている。さらに、マスター局１０には、ツール装置１３が接続可能となり、動作条件等がそのツール装置１３からマスター局１０に与えられる。
【００３９】
そして、このネットワークシステムでは、下位層にＣＡＮプロトコルを使用し、その上にデバイスネットプロトコルを動作させている。そして、管理局としてのマスター局１０がネットワークの動作を制御している。つまり、マスター局１０が、ネットワーク上のデータの送受信を管理する。
【００４０】
本形態でも、マスター局１０から各スレーブ局１１に対し、１サイクル中にまずＩ／Ｏ通信機能であるＩ／Ｏメッセージを送信し、残った通信時間（通信帯域）を使ってメッセージ通信機能であるＥｘｐｌｉｃｉｔメッセージ（Ｅｘｐｌｉｃｉｔフェーズ）の送信を行うようになっている。また、Ｉ／Ｏメッセージには、従来の技術で説明した３つの種類がある。
【００４１】
このネットワークに接続されるマスター局１０の内部構造は、図４，図５に示すようになっている。すなわち、ハードウェア構成は、図４に示すように各種処理を実際に行うＣＰＵ２０と、そのＣＰＵ２０が処理するためのプログラムその他のデータが格納されたＲＯＭ２１と、作業エリアや各種データを記憶するＲＡＭ２２と、他のスレーブ局１１との間でデータの送受を行うための通信コントローラ２３並びに伝送路１２に接続される物理層２４とを備えている。ＲＡＭ２２内には、ネットワークパラメータテーブルを記憶するエリア２５と、サイクルタイムを記憶するサイクルタイム記憶エリア２６と、送信データを一時的に保持する送信キュー２７と受信データを一時的に保持する受信キュー２８を有している。
【００４２】
この図４に示す構成では、サイクルタイム記憶エリア２６をネットワークパラメータを記憶するエリア２５と分離・独立させてエリアの確保をしたことに特徴がある。つまり、後述するように、サイクルタイム記憶エリア２６を独立して確保することにより、そのサイクルタイム記憶エリア２６に対するデータ更新をするに際し、ネットワークパラメータテーブルに対しては更新処理をする必要がなくなる。その結果、ネットワークパラメータテーブルに格納されたデータに基づいて動作するＩ／Ｏ通信機能，メッセージ通信機能を動作させながら、サイクルタイム記憶エリア２６の更新を行うことができる。そして、係る更新に伴い、１回のサイクルタイムが変化するので、メッセージを送信する時間が変更される。よって、Ｉ／Ｏ通信などのネットワークシステムが稼動中に動的にサイクルタイムの変更が行える。
【００４３】
図５は、マスター局１０のソフトウェア構成を示す図である。図４にも示した通り、ネットワークパラメータテーブルとサイクルタイムをそれぞれ記憶するエリア２５，２６を分離している。ネットワークパラメータテーブル中のスキャンリストは、各スレーブ局１１との間で送受信するＯＵＴデータ及びＩＮデータをそれぞれ格納するアドレス情報等が格納される。つまり、あるノード番号のスレーブ局１１に対するＯＵＴデータを格納するアドレス（ポインタ等の場合も有る）がスキャンリストにより一義的に決定されているので、該当するアドレスに格納されているデータは、そのノード番号のスレーブ局に送信すればよいことになる。また、ＩＮデータの場合には、あるノード番号のスレーブから受信したデータは、該当するアドレスに格納されるので、その受信したデータに基づいて他のスレーブに対して命令を送る場合には、そのアドレスに格納されたデータを監視すればよいことがわかる。
【００４４】
さらに、送信キュー２７も、Ｐｏｌｌキュー２７ａ，ＣＯＳキュー２７ｂ並びにＥｘｐｌｉｃｉｔキュー２７ｃの３つのキューを用意している。ここでＰｏｌｌキュー２７ａは、Ｐｏｌｌコマンド／レスポンスメッセージとＢｉｔ―Ｓｔｒｏｂｅコマンド／メッセージを含むＰｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズを格納する。また、ＣＯＳキュー２７ｂは、Ｃｈａｎｇｅ  ｏｆ  Ｓｔａｔｅ（ＣＯＳ）とＣｙｃｌｉｃな送信データを格納する。そして、それらＰｏｌｌキュー２７ａ，ＣＯＳキュー２７ｂに対しては、Ｉ／Ｏアプリケーション処理部３０が、必要な送信データを、そのデータの種類に応じていずれかのキューに登録するようになっている。
【００４５】
なお、Ｉ／Ｏアプリケーション処理部３０は、図示省略するマスター局１０の全体の処理を管理する処理部からの命令を受けて、送信データを各キューに登録するもので、登録先がＰｏｌｌキュー２７ａとＣＯＳキュー２７ｂに分かれたことを除き、基本的に従来と同様の機能を有する。すなわち、ネットワークパラメータテーブルに登録されたスキャンリストやＭＡＣＩＤ等の情報にしたがい、送信するデータを抽出するとともに、抽出したデータのヘッダ部分に宛先や発信元のノード番号（ＭＡＣＩＤ）や、データの種類及びデータ長情報など必要な情報を付加したフレームを生成し、所定のキューに登録する。
【００４６】
また、Ｅｘｐｌｉｃｉｔキュー２７ｃは、送信すべきＥｘｐｌｉｃｉｔフェーズを保持するもので、Ｅｘｐｌｉｃｉｔアプリケーション処理部３１が、必要な送信データを登録する。このＥｘｐｌｉｃｉｔアプリケーション処理部３１は、従来のＥｘｐｌｉｃｉｔアプリケーション処理部２が、Ｉ／Ｏアプリケーション処理部１と協調して所定タイミングで１つの送信キューにＥｘｐｌｉｃｉｔフェーズを登録したが、本形態では、登録先が専用のＥｘｐｌｉｃｉｔキュー２７ｃとなっているので、Ｉ／Ｏアプリケーション処理部３０の動作に関係なく逐次登録することが可能となる。なお、その他の処理機能は、従来のものと同様で有る。
【００４７】
そして、本形態では、フェーズ管理部３２を設け、上記した３つのキュー２７ａ〜２７ｃに登録された各送信データを所定の順で各キューの先頭から取り出して送信処理部３５を介して送信するようになっている。どのキューに格納された各キューの先頭のデータを取り出すかは、予め定めたフェーズ管理ルールに従って行う。
【００４８】
このフェーズ管理ルールは、図６に示すように、１サイクル単位でデータ通信を行う。そして、従来と同様にＩ／Ｏ通信機能であるＰｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズの通信を行い、その通信後、設定されたサイクルタイムの残り時間を使ってメッセージ通信機能であるＥｘｐｌｉｃｉｔフェーズの通信を行うようになっている。さらにフェーズ管理部３２は、毎サイクルごとにサイクルタイム記憶エリア２６をアクセスし、そこに格納されたサイクルタイムを取得し、上記したＥｘｐｌｉｃｉｔフェーズの通信可能な時間（通信帯域）を求めるようにしている。
【００４９】
そして、より具体的なフェーズ管理は、図７に示すフローチャートに従って実行される。まず、サイクルタイムを取得するとともに、取得したタイム（通信帯域）に基づきタイマをセットする（ＳＴ１）。このタイマは、時間の経過に伴いタイマ値が減少していくタイプを用いる。従って、タイマ値が０になると、そのサイクルが終了となる。
【００５０】
次いで、Ｐｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅ送信フェーズを実行する（ＳＴ２）。つまり、Ｐｏｌｌキュー２７ａに保持された送信データ（ＯＵＴデータ）を先頭から所定数送信する。もちろん、この送信（コマンド）に対応して相手方のスレーブ局からはＩＮデータが送信されてくる（レスポンス）ので、そのレスポンスを受信する。その後、ＣＯＳ／Ｃｙｃｌｉｃ送信フェーズを実行し、ＣＯＳキュー２７ｂに保持された送信データを先頭から１パケット送信する（ＳＴ３）。なお、この時、ＣＯＳキュー２７ｂに送信するデータが存在しない場合には、このＣＯＳ／Ｃｙｃｌｉｃ送信フェーズはスキップされ（送信されない）、次の送信フェーズに移行する。
【００５１】
そして、全ＩＮデータ並びに全ＯＵＴデータのやり取りが終了するまで、上記のステップ２，３の処理を繰り返し実行する（ＳＴ４）。なお、全ＩＮデータ並びに全ＯＵＴデータのやり取りが終了したか否かの判断は、例えば、１サイクルで送受信すべきＩ／Ｏフェーズはわかっているので、フェーズ管理部３２がＰｏｌｌキュー２７ａから係る１サイクル分の送信データを取り出して送信したかを判断するようにしても良い。また、Ｉ／Ｏアプリケーション処理部３０が、１サイクル分のＰｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅ送信フェーズの送信データをＰｏｌｌキュー２７ａに登録したならば、一定期間登録を停止するようにする。そして、フェーズ管理部３２では、ステップ２，３を繰り返し実行してＰｏｌｌキュー２７ａとＣＯＳキュー２７ｂを交互にアクセスして先頭から送信データを取り出して送信処理をし、Ｐｏｌｌキュー２７ａの送信データが無い場合に今回の通信サイクルで送信すべきＰｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズは終了したと判断することもできる。さらには、管理局であるマスター局１０でのＩＮデータの受信が一定時間無い場合に終了したと判断することもできるなど、各種の方式がとれる。そして、すべのＩＮ／ＯＵＴデータのやり取りが終了したならば、Ｐｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズを終了し、Ｅｘｐｌｉｃｉｔフェーズに移行する。
【００５２】
Ｅｘｐｌｉｃｉｔフェーズでは、まず、Ｅｘｐｌｉｃｉｔ送信フェーズを実行し、Ｅｘｐｌｉｃｉｔキュー２７ｃに保持された送信データを先頭から１パケット送信する（ＳＴ５）。その後、ＣＯＳ／Ｃｙｃｌｉｃ送信フェーズを実行し、ＣＯＳキュー２７ｂに保持された送信データを先頭から１パケット送信する（ＳＴ６）。なお、この時、ＣＯＳキュー２７ｂに送信するデータが存在しない場合には、このＣＯＳ／Ｃｙｃｌｉｃ送信フェーズはスキップされ（送信されない）、次の送信フェーズに移行する。
【００５３】
そして、上記したステップ５とステップ６の各処理を、タイムアップするまで繰り返し行い（ＳＴ７）、タイムアップしたならば今回のサイクルに基づく通信は終了するので、次のサイクルの処理をすべくステップ１に戻って処理を実行する。
【００５４】
このようにすると、特にリアルタイム性の要求されるＣＯＳ／Ｃｙｃｌｉｃの送信データが、１サイクル中で逐次送られるので、仮にＥｘｐｌｉｃｉｔフェーズの通信帯域（通信時間）が長くても、ＣＯＳ／Ｃｙｃｌｉｃのリアルタイム性は確保できる。
【００５５】
さらに、送信キューを３つに分けているので、各送信データを、他の種類の送信データの存在を気にすることなくそれぞれのキューに登録することができ、当然のことながらＣＯＳキュー２７ｂには、ＣＯＳ／Ｃｙｃｌｉｃのデータのみが保持されているので、例えばＥｘｐｌｉｃｉｔキュー２７ｃにある送信データを登録した後でＣＯＳキュー２７ｂに登録したものであっても、ＣＯＳキュー２７ｂに登録したデータを先に送信することが可能となる。
【００５６】
また、送信キューを３つに分けるとともに、各キューに保持されたデータの取り出しをフェーズ管理部３２が行うので、各フェーズの切り替えを確実に行うことができ、所望のデータを所望のタイミングで送信することができる。
【００５７】
さらに本形態では、図５に示すように、上記したサイクルタイム記憶エリア２６の記憶内容を更新する設定部３３を設け、その設定部３３によりサイクルタイムを単独で更新できるようにしている。この更新は、例えば上位コンピュータやツール装置１３などから受けた更新命令に従ってサイクルタイムを書き替えるようにしている。
【００５８】
このようにすることにより、例えばフェーズ管理部３２が、図７に示すステップ１を実行してサイクルタイム記憶エリア２６に書き込まれたサイクルタイムを参照した後、次のサイクルに移行するまでの間にサイクルタイム記憶エリア２６に格納されたデータを設定部３３が書き替えると、次のサイクルの際にフェーズ管理部３２がサイクルタイム記憶エリア２６にアクセスした際には、既にサイクルタイムが更新されているので、その更新された新しいサイクルタイムに従って処理される。そして、Ｉ／Ｏ通信の通信帯域（Ｐｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅフェーズの処理時間）はほぼ一定であるので、仮にサイクルタイムを増加させた場合には、メッセージ通信の通信帯域（Ｅｘｐｌｉｃｉｔフェーズの処理時間）が増加される。
【００５９】
従って、例えば、制御装置，スレーブが接続されるネットワークにおいて、制御装置が動作するためのレシピデータ（アプリケーション動作データ）を変更するような場合、比較的データ量の多いレシピデータを送る必要から、Ｅｘｐｌｉｃｉｔフェーズの処理時間を長くしたいが、本形態では、設定部３３がサイクルタイム記憶エリア２６に登録されたサイクルタイムを更新することにより、通常のＩ／Ｏ通信処理等を停止することなく、サイクルタイムを変更させ、大量のレシピデータを短時間で送信完了することができる。しかも、上記したように、ＣＯＳ／Ｃｙｃｌｉｃ送信フェーズを１パケット単位で交互に送信可能としているので、リアルタイム性が確保できる。
【００６０】
図８は、本発明の第２の実施の形態を示している。本実施の形態では、従来と同様にサイクルタイムは、ネットワークパラメータテーブルに記憶するようにしている。つまり、サイクルタイムを変更する場合には、一旦Ｉ／Ｏ通信等を停止した状態で更新処理を実行する必要がある。
【００６１】
そして、フェーズ管理部３２は、基本的には図７に示すフローチャートと同様に、３つのキュー２７ａ〜２７ｃに格納された送信データを適宜の順に取得し、送信処理部２３を介して送信するようになる。なお、本形態では、稼動中にサイクルタイムの変更がないので、ステップ１のサイクルタイムの読み込みは必ずしも毎サイクルごとに行う必要はなく、初期設定などにより一度サイクルタイムを取得したならば、以後は、サイクルタイムに基づくタイマセットを行うだけでも良い。もちろん、毎回参照しても問題はない。なお、その他の構成並びに作用効果は、上記した第１の実施の形態と同様であるので、その詳細な説明を省略する。
【００６２】
なお、上記した実施の形態では、送信キュー２７を３つに分けたが、本発明では必ずしも３つに分ける必要はない。すなわち、少なくともＣＯＳキュー２７ｂが分離して設けられていれば良い。但し、その場合には、Ｐｏｌｌ／Ｂｉｔ  Ｓｔｒｏｂｅの送信データと、Ｅｘｐｌｉｃｉｔの送信データを同一の共通キューに与えることになるので、特にＥｘｐｌｉｃｉｔアプリケーション処理部は、設定されたサイクルタイムを参照し、１サイクルのタイムアップする分の送信データを共通キューに登録することになる。また、フェーズ管理部は、共通キューとＣＯＳキューを交互に先頭からデータを取り出すような制御を実行するようになる。
【００６３】
図９は、本発明の第３の実施の形態を示している。本実施の形態では、上記した各実施の形態と相違してＮ：Ｎのネットワークシステムに適用した例を示している。すなわち、１つの管理局１５と複数のノード１６が伝送路１７を介して接続されネットワークが構築されている。管理局１５は、通信サイクルタイムを管理する機能を持つもので、専用のものでも良いし、ノードが兼用しても良い。
【００６４】
本形態では、トークンパッシング方式でノード間の通信が行われるようになっている。すなわち、ＦＡのネットワークでは、Ｃｙｃｌｉｃデータ通信機能（上記した実施の形態ではＩ／Ｏフェーズ）とメッセージ通信機能（上記した実施の形態ではＥｘｐｌｉｃｉｔフェーズ）を持ち、１回の通信サイクルにおいて、リアルタイム性の要求されるＣｙｃｌｉｃデータの通信が優先され、残り時間でメッセージ通信機能が実行されるようになる。
【００６５】
良く知られているように、トークンパッシング方式は、トークンを受信したノードがデータの送信権を持ち、Ｃｙｃｌｉｃデータとメッセージデータを送信することができるようになる。このとき、トークンフレームに１通信サイクル内で通信できるメッセージのデータ長を付加する。そして、各ノード１６は、送信するメッセージデータがある場合にはトークンフレームの許可されたメッセージのデータ長を検出し、０でない場合にメッセージデータを送信するとともに、送信したデータ長だけ、トークンフレーム中に登録された１通信サイクル内で通信できるメッセージのデータ長を減算した新たなトークンフレームを生成し、出力する。そして、トークンフレーム中に格納された前記データ長が０の場合には、その通信サイクルではメッセージデータを送信することはできなくなる。
【００６６】
このようにすると、１通信サイクルで送信可能なメッセージデータのデータ量を制限でき、しかも、その送信可能なメッセージデータのデータ量を独立して設定する機能を設け、管理局が各通信サイクル時にトークンフレームを送出するに際し、係る１通信サイクル内で通信できるメッセージのデータ長をその都度変更することにより、通信帯域を動的に制御できる。
【００６７】
なお、各ノードが送信するメッセージのデータ長は、予め上限を決めておいても良いし、決めなくても良い。上記した動作の一例を示すと、図９のように、通信できるメッセージのデータ長として「３」が与えられており、ノード（１）がＣｙｃｌｉｃデータ（Ｃ）とデータ長が１のメッセージデータ（Ｍ）を送信したとすると、ノード（２）が受け取るトークンフレームに格納された通信可能なデータ長は「２」となる。そして、このノード（２）でもデータ長１のメッセージを出力すると、トークンフレームに格納された通信可能なデータ長は「１」となる。また、次のノード（３）でメッセージが送信されない場合には、上記データ長は「１」のままとなる。そして、ネットワーク中の各ノードからデータが送信されノード（Ｎ）に着たときには上記のデータ長が「０」になっているとすると、仮にノード（Ｎ）が送信したいメッセージデータがあったとしても、メッセージは送信することはできない。
【００６８】
また、１回の通信サイクルにおける通信帯域（送信用量）の動的変更は、上記したトークンパッシング方式に限ることは無く、例えば時分割通信方式でも同様に適用できる。すなわち、時分割通信方式においても、通信を管理する管理局が存在し、管理局がトリガーフレームを送信することにより、指定（許可）されたノードがＣｙｃｌｉｃの送信フェーズやメッセージの送信フェーズを出力するようになる。
【００６９】
具体的には、まずＣｙｃｌｉｃ送信用のトリガフレームを送信するので、それを受けた各ノードは、Ｃｙｃｌｉｃデータの送信を開始する。係るＣｙｃｌｉｃデータの送信が終了すると、管理局はメッセージ送信用のトリガフレームを送信するが、このとき、トリガーフレームにはメッセージデータを送信できるノードが記述されており、その記述により指定・許可されたノードは１パケットだけメッセージを送信することができるようになっている。
【００７０】
係る場合に、１通信サイクルでメッセージを送信できるノード数の情報を独立して設定する機能を設け、管理局がトリガフレームを生成する際にノード数情報を参照し、許可されたノード数だけ順番に指定する。つまり、当初は許可されたノード数が３とすると、１回目の通信では１番から３番までのノードがメッセージの送信が許可されるようなトリガフレームを生成し、２回目の通信では４番から６番までのノードがメッセージの送信が許可されるようなトリガフレームを生成する。このとき、２回目の通信の前に、ノード数情報の設定値が５に更新されている場合には、４番から８番までのノードがメッセージの送信が許可されるようなトリガフレームを生成することになる。このようにして、１通信サイクル内でメッセージを送信できるノード数を増減制御することにより、通信帯域の変更を動的に制御できる。
【００７１】
図１０は、本発明の第４の実施の形態を示している。上記した各実施の形態では、いずれもマスター局などの管理局側に着目した発明についての実施の形態であるが、本形態では、機器（スレーブ局１１）について着目した発明の実施の形態である。このスレーブ局１１は、例えば第１の実施の形態などと同様に、図３に示すネットワークシステムに接続される。
【００７２】
図１０に示すように、スレーブ局１１においても、送信キュー２７′を複数設け、具体的には、優先度の高い送信データであるＣｈａｎｇｅ  ｏｆ  Ｓｔａｔｅ（ＣＯＳ）とＣｙｃｌｉｃな送信データを格納するＣＯＳキュー２７′ｂと、それ以外の送信データを格納保持する送信キュー２７′ｄを２個設けた。つまり、送信キュー２７′には、ＣＯＳやＣｙｃｌｉｃ以外のＩ／Ｏデータと、Ｅｘｐｌｉｃｉｔメッセージを保持するようにした。
【００７３】
また、このスレーブ局１１にも、Ｉ／Ｏアプリケーション処理部３０′とＥｘｐｌｉｃｉｔアプリケーション処理部３１′を備え、図示省略するスレーブ局１１の全体の処理を管理する処理部からの命令を受けて、送信データを各キューに登録する。そして、本形態では、Ｉ／Ｏアプリケーション処理部３０′の登録先がＣＯＳキュー２７′ｂと送信キュー２７′ｄに分かれたことを除き、基本的に従来と同様の機能を有する。すなわち、送信するデータを抽出するとともに、抽出したデータのヘッダ部分に宛先や発信元のノード番号（ＭＡＣＩＤ）や、データの種類及びデータ長情報など必要な情報を付加したフレームを生成し、所定のキューに登録する。そして、優先度の高いＣＯＳやＣｙｃｌｉｃなデータは、ＣＯＳキュー２７′ｂに登録し、その他のＩ／Ｏデータは送信キュー２７′ｄに登録する。
【００７４】
また、Ｅｘｐｌｉｃｉｔアプリケーション処理部３１は、送信すべきメッセージを送信キュー２７′ｄに登録する。なお、その他の処理機能は、従来のものと同様である。
【００７５】
さらに、本形態では、フェーズ管理部３２′を設け、上記した２つのキュー２７′ｂ，２７′ｄに登録された各送信データを所定の順で各キューの先頭から取り出して送信処理部３５′を介して送信するようになっている。どのキューに格納された各キューの先頭のデータを取り出すかは、予め定めたフェーズ管理ルールに従って行う。
【００７６】
なお、上記した実施の形態では、送信キューを２種類設けたが、マスター局と同様に、ＰｏｌｌキューとＣＯＳキューとＥｘｐｌｉｃｉｔキューのように３つに分けて管理してももちろん良い。
【００７７】
【発明の効果】
以上のように、この発明では、サイクルタイム等を独立して変更可能とした場合には、Ｉ／Ｏ通信を行いながらメッセージの通信帯域（時間・データ量）を変更することができる。また、メッセージ送信中であってもリアルタイム性が要求されるデータを途中で送信するようにした場合には、メッセージの通信帯域の広狭にかかわらず、係るリアルタイム性が要求されるデータ（ＣＯＳ，Ｃｙｃｌｉｃフェーズ等のＩ／Ｏデータ等）の送信のリアルタイム性を確保することができる。よって必要な情報を迅速に伝達することができる。
【図面の簡単な説明】
【図１】従来例を示す図である。
【図２】従来例を示す図である。
【図３】本発明が適用されるネットワークの一例を示す図である。
【図４】マスター局の第１の実施の形態を示す図である。
【図５】マスター局の第１の実施の形態を示す図である。
【図６】フェーズ管理ルールを示す図である。
【図７】フェーズ管理部の機能を示すフローチャートである。
【図８】マスター局の第２の実施の形態を示す図である。
【図９】第３の実施の形態を示す図である。
【図１０】第４の実施の形態を示す図である。
【符号の説明】
１０  マスター局
１１  スレーブ局
１２  伝送路
１３  ツール装置
１５  管理局
１６  ノード
１７  伝送路
２０  ＣＰＵ
２１  ＲＯＭ
２２  ＲＡＭ
２３  通信コントローラ
２４  物理層ＩＦ
２５  エリア
２６  サイクルタイム記憶エリア
２７  送信キュー
２７ａ  Ｐｏｌｌキュー
２７ｂ  ＣＯＳキュー
２７ｃ  Ｅｘｐｌｉｃｉｔキュー
２８  受信キュー
３０  Ｉ／Ｏアプリケーション処理部
３１  Ｅｘｐｌｉｃｉｔアプリケーション処理部
３２  フェーズ管理部
３３  設定部
【図１】
0003551905.tif 000002
【図２】
0003551905.tif 000003
【図３】
0003551905.tif 000004
【図４】
0003551905.tif 000005
【図５】
0003551905.tif 000006
【図６】
0003551905.tif 000007
【図７】
0003551905.tif 000008
【図８】
0003551905.tif 000009
【図９】
0003551905.tif 000010
【図１０】
0003551905.tif 000011