(57)【要約】【課題】上位ソフトウエアによるデータの同期チェックを不要にすることが可能なサイクリック通信同期方法を得る。【解決手段】ネットワークを介して接続されている複数の端末間で仮想的に共有するメモリ空間を設け、それぞれの端末が予め書込み位置を決定しておき、その領域への書込みデータを定周期で他の端末に送信することによりネットワーク全体で共有メモリを実現するサイクリック通信同期方法であって、ネットワークにサイクリックデータを送信する際には、各端末は、各端末のデータの書込み済みの領域を送信し、各端末のデータの書込み待ちの領域若しくは書込み中の領域についてはデータの書込みが済むまで送信を留保することにより、全送信領域の同時性を保証して送信する。【選択図】図１
2005303534.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続されている複数の端末間で仮想的に共有するメモリ空間を設け、それぞれの端末が予め書込み位置を決定しておき、その領域への書込みデータを定周期で他の端末に送信することにより前記ネットワーク全体で共有メモリを実現するサイクリック通信同期方法であって、
ネットワークにサイクリックデータを送信する際には、前記各端末は、前記各端末のサイクリックデータの書込み済みの領域を送信し、前記各端末のサイクリックデータの書込み待ちの領域若しくは書込み中の領域についてはサイクリックデータの書込みが済むまで送信を留保することにより、全送信領域の同時性を保証して送信することを特徴としたサイクリック通信同期方法。
【請求項２】
送信側の端末は、前記サイクリックデータを分割送信する場合、分割した前記サイクリックデータにシーケンス番号を付加し、
受信側の端末は、シーケンスを開始したら全シーケンスのデータを受信するまで前記共有メモリへの反映を禁止し、前記送信側の端末ごとの同時性を保証することを特徴とした請求項１に記載のサイクリック通信同期方法。
【請求項３】
送信側の端末は、前記サイクリックデータを分割送信する場合には、分割した前記サイクリックデータを送信する前に同期確認の制御情報を送信し、前記サイクリックデータを送信した後に同期完了の制御情報を送信し、
受信側の端末は、前記同期確認の制御情報を受信してから前記同期完了の制御情報を受信するまでの間に前記送信側の端末から受信したサイクリックデータを同時性が保持されたデータであると認識し前記共有メモリに反映させることを特徴とした請求項１に記載のサイクリック通信同期方法。
【請求項４】
前記受信側の端末は、前記同期確認の制御情報を受信してから前記同期完了の制御情報を受信するまでの時間を監視し、この監視された時間が予め定義された時間を越える場合には、システム監視機構に対してサイクリックデータ更新が正常に行われていない旨を通知することを特徴とした請求項３に記載のサイクリック通信同期方法。
【請求項５】
前記受信側の端末は、前記同期確認の制御情報を受信してから前記同期完了の制御情報を受信するまでの時間を監視し、この監視された時間が予め定義された時間を越える場合には、前記送信側の端末に対してサイクリックデータ更新が正常に行われていない旨を通知し、
前記送信側の端末は、前記通知に基づいて、優先度が低いサイクリックデータブロックの送信をスキップし、優先度の高いサイクリックデータの更新周期を規定時間内に戻すように制御することを特徴とした請求項３に記載のサイクリック通信同期方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、イーサネット（登録商標）やＡＴＭ等の任意のネットワークを介して接続されている複数の端末間で、仮想的に共有するメモリ空間を互いに定周期データ送信により更新し、データの同時性を保証するサイクリック通信同期方法に関するものである。
【背景技術】
【０００２】
従来のサイクリック通信同期方法には、アプリケーションの書込みと同期することなくネットワークにデータ送信するものがある（例えば、特許文献１参照）。
ここで、サイクリック通信の動作原理は、イーサネット（登録商標）やＡＴＭなどのネットワークに複数の端末が接続されており、これらの各端末は装置内に同じアドレス割り付けのメモリ（サイクリックメモリ）を持ち、ある端末が自装置内の該メモリ中にデータを書き込むと、他の装置ではそれぞれの装置が持つメモリの同一アドレスにそのデータが反映されるというものである。
【０００３】
【特許文献１】特開２０００−７８１３０号公報（第３頁−第５頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、上記サイクリック通信同期方法によれば、書込みデータが全て最新に反映されているかどうかを上位ソフトウエアにて明示的に確認する必要があった。
したがって、上位ソフトウエアがユーザデータとして使用できるはずのサイクリックメモリの一部をデータ同期のためのシーケンス番号等に当てなければならず、メモリの使用効率が低くなるという問題点があった。
【０００５】
この発明は、上記のような問題点を解決することを課題とするものであって、上位ソフトウエアによるデータの同期チェックを不要にすることが可能なサイクリック通信同期方法を得ることを目的とするものである。
【課題を解決するための手段】
【０００６】
この発明に係るサイクリック通信同期方法は、ネットワークを介して接続されている複数の端末間で仮想的に共有するメモリ空間を設け、それぞれの端末が予め書込み位置を決定しておき、その領域への書込みサイクリックデータを定周期で他の端末に送信することによりネットワーク全体で共有メモリを実現するサイクリック通信同期方法であって、ネットワークにサイクリックデータを送信する際には、各端末は各端末のサイクリックデータの書込み済みの領域を送信し、各端末のサイクリックデータの書込み待ちの領域若しくは書込み中の領域については、サイクリックデータの書込みが済むまで送信を留保することにより、全送信領域の同時性を保証して送信するものである。
【発明の効果】
【０００７】
この発明に係るサイクリック通信同期方法によれば、ネットワークにサイクリックデータを送信する際には、各端末は、各端末のデータの書込み済みの領域を送信し、各端末のデータの書込み待ちの領域若しくは書込み中の領域についてはデータの書込みが済むまで送信を留保することにより、全送信領域の同時性を保証して送信するので、上位ソフトウエアによるデータの同期チェックを不要にすることができる効果がある。
【発明を実施するための最良の形態】
【０００８】
以下、この発明の各実施の形態について図に基づいて説明するが、各図において、同一または相当部材、部位については同一符号を付して説明する。
【０００９】
実施の形態１．
図１は、この発明の実施の形態１による送信側装置の構成を示す図である。
図１に示すように、ネットワークにサイクリックデータを送信する送信側の端末である送信側装置は、第１のサイクリックメモリ２ｍと、第２のサイクリックメモリ２ｎと、これらの第１および第２のサイクリックメモリ２ｍ、２ｎのバンク切換を行う第１の切換回路１１ａと、第１および第２のサイクリックメモリ２ｍ、２ｎのバンク切換を行う第２の切換回路１１ｂと、これらの第１および第２の切換回路１１ａ、１１ｂに制御情報を設定する出力レジスタ１０とを備えている。
【００１０】
そして、この送信側装置は、サイクリックメモリに書込みを行う書込み処理機能３ａ〜３ｎと、この書込み処理機能３ａ〜３ｎの起動順序を制御するスケジューリング処理機能１２と、第１および第２のサイクリックメモリ２ｍ、２ｎの内容を他の端末に送信する送信処理機能４とを有する。
【００１１】
第１の切換回路１１ａは、書込み処理機能３ａ〜３ｎにから第１および第２のサイクリックメモリ２ｍ、２ｎにアクセスする際に、第１および第２のサイクリックメモリ２ｍ、２ｎの何れにアクセスするかを制御するようになっている。
第２の切換回路１１ｂは、送信処理機能４から第１および第２のサイクリックメモリ２ｍ、２ｎにアクセスする際に、第１および第２のサイクリックメモリ２ｍ、２ｎの何れにアクセスするかを制御するようになっている。
【００１２】
出力レジスタ１０は、二値設定可能なレジスタである。この出力レジスタ１０は、一方の値を設定した場合は、第１の切換回路１１ａ経由で第１のサイクリックメモリ２ｍにアクセスするとともに、第２の切換回路１１ｂ経由で第２のサイクリックメモリ２ｎにアクセスするような設定を行うようになっている。
【００１３】
また、この出力レジスタ１０は、他方の値を設定した場合は、第１の切換回路１１ａ経由で第２のサイクリックメモリ２ｎにアクセスするとともに、第２の切換回路１１ｂ経由で第１のサイクリックメモリ２ｍにアクセスする設定を行うようになっている。
【００１４】
次に、この発明の実施の形態１によるサイクリック通信同期方法の一例について説明する。
送信側装置の初期化完了後、最初は第１の切換回路１１ａは、固定で書込み処理機能３ａ〜３ｎからは第１のサイクリックメモリ２ｍへアクセスさせるとともに、送信処理機能４からは第２のサイクリックメモリ２ｎへアクセスさせるように設定される。第１および第２のサイクリックメモリ２ｍ、２ｎとも初期化後のメモリ内容は０に固定されている。
【００１５】
また、書込み処理機能３ａ〜３ｎは、サイクリック送信周期内にそれぞれ一回第１および第２のサイクリックメモリ２ｍ、２ｎへの書込みを行う。送信側装置は、その中で最後に起動する書込み処理機能をスケジューリング処理機能１２に予め登録する。
【００１６】
送信処理機能４は、定周期で起動されて第１および第２のサイクリックメモリ２ｍ、２ｎの内容を読出し他の端末に送信する。最初に送信処理機能４が起動されたときには、第２の切換回路１１ｂ経由で第２のサイクリックメモリ２ｎにアクセスしてサイクリックデータを読み出す。
【００１７】
一方、書込み処理機能３ａ〜３ｎは、スケジューリング処理機能１２により順番に起動されてサイクリックメモリに書込みを行う。そのとき書込み処理機能３ａ〜３ｎは、第１の切換回路１１ａ経由で第１のサイクリックメモリ２ｍにアクセスする。
【００１８】
装置初期化後は、出力レジスタ１０は、第１の切換回路１１ａ経由で第１のサイクリックメモリ２ｍにアクセスするとともに、第２の切換回路１１ｂ経由で第２のサイクリックメモリ２ｎにアクセスする設定になっている。
そして、最後の書込み処理機能３ｎの処理が完了すると、この出力レジスタ１０は、設定が反転し、第１の切換回路１１ａ経由で第２のサイクリックメモリ２ｎにアクセスするとともに、第２の切換回路１１ｂ経由で第１のサイクリックメモリ２ｍにアクセスする設定になる。
【００１９】
したがって、送信処理機能４が、次に定周期起動されたときに第２の切換回路１１ｂ経由でサイクリックメモリを読み出そうとすると、第１のサイクリックメモリ２ｍにアクセスすることとなる。
【００２０】
すなわち、送信処理機能４は、書込み処理機能３ａ〜３ｎがデータ更新を完了した状態でサイクリックメモリ（ここでは、データの書込み済みの領域となる第１のサイクリックメモリ２ｍ）を読み出すこととなるものである。
また、データ更新を完了していない状態のサイクリックメモリ（ここでは、データの書込み待ちの領域若しくは書込み中の領域となる第２のサイクリックメモリ２ｎ）についてはデータの書込みが済むまで読出しを留保することとなるものである。これにより、サイクリックメモリの同時性が保証される。
【００２１】
そして、第２のサイクリックメモリ２ｎについて、最後の書込み処理機能３ｎの処理が完了すると、上述したように、出力レジスタ１０は設定を切り換えて、送信処理機能４が、次に定周期起動されたときに第２の切換回路１１ｂ経由で第２のサイクリックメモリ２ｎにアクセスすることとなり、以下同様の動作が繰り返される。
【００２２】
以上のように、この実施の形態１のサイクリック通信同期方法によれば、ネットワークにサイクリックデータを送信する際には、各端末は、各端末のデータの書込み済みの領域を送信し、各端末のデータの書込み待ちの領域若しくは書込み中の領域についてはデータの書込みが済むまで送信を留保することにより、全送信領域の同時性を保証して送信するので、上位ソフトウエアによるデータの同期チェックを不要にすることができる効果がある。
【００２３】
実施の形態２．
なお、上記実施の形態１では、サイクリックデータが分割して送信された場合については特に明示しなかったが、例えばデータ量が大きい場合には、サイクリックデータを分割して送受信するようにしてもよい。以下、分割されたサイクリックデータを送受信するためのこの発明の実施の形態２のサイクリック通信同期方法について説明する。
【００２４】
この発明の実施の形態２について、図に基づいて説明する。図２は、この発明の実施の形態２による受信情報管理テーブルの構成を示す図である。
【００２５】
送信すべきサイクリックデータがひとつの送信フレームに収まらない場合は、複数のフレームに分割して送信される。
受信側の端末では、自装置以外の全装置から受信するサイクリックデータについて分割時の対応が可能であるように、図２に示すような端末アドレスをインデクスとする受信情報管理テーブルを保持する。
【００２６】
図２に示すように、受信情報管理テーブル２０ａは、受信側の端末である受信側装置で複数に分割されたサイクリックデータをすべて受信したかどうかを判定するためのものである。
この受信情報管理テーブル２０ａは、ネットワークに接続している他のサイクリックデータの送信側装置のアドレス２１ａ〜２１ｎと、それぞれの装置での分割データ数２２ａ〜２２ｎと、分割されたフレームの何番目まで受信したかを示す情報である受信済みデータシーケンス番号管理情報２３ａ〜２３ｎと、受信したサイクリックデータを格納しているバッファアドレスを保持する情報２４ａ〜２４ｎとを含む。
【００２７】
図３は、この発明の実施の形態２によるネットワークで送受信されるサイクリックデータの構成を示す図である。
【００２８】
上述のように、送信すべきサイクリックデータがひとつの送信フレームに収まらない場合は、複数のフレームに分割して送信される。
その際、送信側装置では送信フレームに、図３に示すような分割フレーム数および各フレームに一意となるシーケンシャル番号を設定して送信する。
【００２９】
図３に示すように、サイクリックデータのサイクリックデータフレームフォーマット２５は、このサイクリックデータの送信元端末アドレス２６と、このサイクリックデータの分割データ数２７と、このサイクリックデータの分割シーケンス番号２８と、その他の情報２９とを含む。
【００３０】
次に、この発明の実施の形態２によるサイクリック通信同期方法の一例について説明する。
図４は、この発明の実施の形態２によるサイクリック通信同期方法を示すフローチャートである。このサイクリック通信同期方法の受信処理フローは、以下のステップＳ４１〜Ｓ４５を含むフローで構成されている。
【００３１】
図４の処理フローに示すように、サイクリックデータの受信待ち状態（ステップＳ４１）で、サイクリックフレームが受信されたか否かが確認される。
サイクリックフレームを受信したら（すなわち、ＹＥＳ）、送信元端末アドレスを参照して（ステップＳ４２）、受信情報管理テーブルのインデックスを決める。
一方、サイクリックフレームが受信されていなければ（すなわち、ＮＯ）、ステップＳ４１に戻る。
【００３２】
ステップＳ４２の後、受信されたサイクリックフレームから分割シーケンス番号を取り出して（ステップＳ４３）、受信情報管理テーブルを参照し受信情報管理テーブルの受信済みデータシーケンス番号管理情報を更新する（ステップＳ４４）。
【００３３】
更新後、分割データ数と受信済みデータシーケンス番号を比較して、全分割フレームを受信済み（すなわち、ＹＥＳ）であれば、それまでに受信したデータをサイクリックメモリにコピーする（ステップＳ４５）。
一方、全分割フレームを未受信（すなわち、ＮＯ）であれば、引き続きステップＳ４１に戻る。
【００３４】
このように、送信側装置は、サイクリックデータを分割送信する場合、分割したサイクリックデータにシーケンス番号を付加し、受信側装置は、シーケンスを開始したら全シーケンスのデータを受信するまで共有メモリへの反映を禁止し、送信側装置ごとの同時性を保証するものである。
【００３５】
以上のように、この発明の実施の形態２によるサイクリック通信同期方法によれば、一台の端末から分割して送信された複数のサイクリックデータをすべて受信してから一括してサイクリックメモリに反映するので、読み出し処理機能の起動タイミングに関わらず、同期の取れたデータを読み出すことができる。
【００３６】
実施の形態３．
なお、上記実施の形態２では、送信側装置は、シーケンスを開始したら全シーケンスのデータを受信するまで共有メモリへの反映を禁止したが、同期確認の制御情報を受信してから同期完了の制御情報を受信するまでの間に送信側装置から受信したサイクリックデータを同時性が保持されたデータであると認識するようにしてもよい。
以下、データの同期を確認する構成が異なるこの発明の実施の形態３のサイクリック通信同期方法について説明する。
【００３７】
この発明の実施の形態３について、図に基づいて説明する。図５は、この発明の実施の形態３による受信管理情報テーブルの構造を示す構成図である。
図５に示すように、受信管理情報テーブル２０ｂは、受信側装置において、分割されたサイクリックデータの受信管理を行うためのものである。
この受信情報管理テーブル２０ｂは、ネットワークに接続している他のサイクリックデータの送信側装置のアドレス２１ａ〜２１ｎと、受信したサイクリックデータを格納しているバッファアドレスを保持する情報２４ａ〜２４ｎと、受信フェーズ３０ａ〜３０ｎとを含む。
【００３８】
次に、この発明の実施の形態３によるサイクリック通信同期方法の一例について説明する。
図６は、この発明の実施の形態３によるサイクリック通信同期方法の送信処理を示すフローチャートである。この送信処理フローは、以下のステップＳ６１〜Ｓ６６を含むフローで構成されている。
【００３９】
先ず、サイクリックデータの書込み完了待ち状態（ステップＳ６１）で、書込みが完了したか否かが確認される。書込みが未完であると確認（すなわち、ＮＯ）されれば、ステップＳ６１に戻る。
書込みが完了であると確認（すなわち、ＹＥＳ）されれば、サイクリックデータのサイズが確認される（ステップＳ６２）。
【００４０】
ステップＳ６２で確認された送信すべきサイクリックデータがひとつの送信フレームに収まらない場合（すなわち、ＹＥＳ）は、複数のフレームに分割する（ステップＳ６３）。ステップＳ６２で確認された送信すべきサイクリックデータがひとつの送信フレームに収まる場合（すなわち、ＮＯ）は、サイクリックデータの分割は行われない。
【００４１】
次に、送信側装置では、先頭のサイクリックデータを送信する前に、「送信開始」を示す制御情報フレームを送信する（ステップＳ６４）。
【００４２】
次に、分割したサイクリックデータを先頭から順に送信する（ステップＳ６５）。そして、全サイクリックデータが送信されたか否かが確認される。末尾のサイクリックデータが送信され全データの送信が確認（すなわち、ＹＥＳ）された後、「送信完了」を示す制御情報フレームを送信する（ステップＳ６６）。全サイクリックデータが送信されていない（すなわち、ＮＯ）場合は、ステップＳ６５に戻る。
【００４３】
図７は、この発明の実施の形態３によるサイクリック通信同期方法の受信処理を示すフローチャートである。この受信処理フローは、以下のステップＳ７１〜Ｓ７９を含むフローで構成されている。
【００４４】
図７の処理フローに示すように、サイクリックデータの受信待ち状態（ステップＳ７１）で、サイクリックフレームが受信されたか否かが確認される。
サイクリックフレームを受信したら（すなわち、ＹＥＳ）、制御情報フレームの内容により以降の処理フローが決定される（ステップＳ７２）。サイクリックフレームが受信されていなければ（すなわち、ＮＯ）、ステップＳ７１に戻る。
【００４５】
受信側装置で「送信開始」の制御情報フレームが受信された場合は、その送信元端末アドレスが取り出される（ステップＳ７３）。次に、この送信元端末アドレスから受信情報管理テーブルのインデクスを算出し受信フェーズが確認される（ステップＳ７４）。
受信フェーズが受信開始待ち状態であると確認（すなわち、ＹＥＳ）されれば、受信情報管理テーブルの受信フェーズを受信中状態に変更する（ステップＳ７６）。
一方、受信中状態であると確認（すなわち、ＮＯ）されれば受信した送信開始制御情報を無視し、受信したデータを廃棄し（ステップＳ７５）、ステップＳ７１に戻る。
【００４６】
同一端末からサイクリックデータが受信された場合は、ステップＳ７２の後、その送信元端末アドレスが取り出される（ステップＳ７３ａ）。次に、この送信元端末アドレスから受信情報管理テーブルのインデクスを算出し受信フェーズが確認される（ステップＳ７４ａ）。
受信フェーズが受信中であると確認（すなわち、ＹＥＳ）されれば、受信情報管理テーブルに受信データを格納する（ステップＳ７７）。
一方、受信中状態でないと確認（すなわち、ＮＯ）されれば受信したサイクリックデータを無視し、受信したデータを廃棄し（ステップＳ７５）、ステップＳ７１に戻る。
【００４７】
さらに、送信側装置から「送信完了」の制御情報フレームが受信された場合は、ステップＳ７２の後、その送信元端末アドレスが取り出される（ステップＳ７３ｂ）。次に、この送信元端末アドレスから受信情報管理テーブルのインデクスを算出し受信フェーズが確認される（ステップＳ７４ｂ）。
受信フェーズが受信中であると確認（すなわち、ＹＥＳ）されれば、受信情報管理テーブルに格納していたサイクリックデータをサイクリックメモリにコピーする（ステップＳ７８）。
一方、受信中状態でないと確認（すなわち、ＮＯ）されれば受信したサイクリックデータを無視し、受信したデータを廃棄し（ステップＳ７５）、ステップＳ７１に戻る。
ステップＳ７８の後、受信フェーズを受信開始待ちに変更する（ステップＳ７９）。
【００４８】
このように、送信側装置は、サイクリックデータを分割送信する場合には、分割したサイクリックデータを送信する前に同期確認（送信開始）の制御情報を送信し、サイクリックデータを送信した後に同期完了（送信完了）の制御情報を送信する。そして、受信側装置は、同期確認の制御情報を受信してから同期完了の制御情報を受信するまでの間に送信側装置から受信したサイクリックデータを同時性が保持されたデータであると認識し共有メモリであるサイクリックメモリに反映させる。
【００４９】
以上のように、この発明の実施の形態３によるサイクリック通信同期方法によれば、一台の端末から分割して送信された複数のサイクリックデータをすべて受信してから一括してサイクリックメモリに反映するので、読み出し処理機能の起動タイミングに関わらず、同期の取れたデータを読み出すことができる。
【００５０】
実施の形態４．
この発明の実施の形態４のサイクリック通信同期方法について説明する。なお、同期確認の制御情報を受信してから同期完了の制御情報を受信するまでの間に送信側装置から受信したサイクリックデータを同時性が保持されたデータであると認識する構成については、実施の形態３と同様である。
【００５１】
この発明の実施の形態４について、図に基づいて説明する。
図８は、この発明の実施の形態４によるサイクリック通信同期方法の受信処理を示すフローチャートである。この送信処理フローは、以下のステップＳ７１〜Ｓ７７、Ｓ８１〜Ｓ８５を含むフローで構成されている。なお、図７と同一符号は同様のフローである。
【００５２】
図８に示すように、受信側装置は、「送信開始」の制御情報フレームを受信すると、ステップＳ７６の後、サイクリックメモリの更新周期監視タイマを起動する（ステップＳ８１）。
【００５３】
その後、サイクリックデータを受信した場合は、受信情報管理テーブルに受信データを格納する（ステップＳ７７）。その間、該更新周期監視タイマは動作継続している。
【００５４】
送信側装置から「送信完了」の制御情報フレームを受信すると、ステップＳ７４ｂの後、該更新周期監視タイマを停止して、それまで受信したサイクリックデータをサイクリックメモリにコピーする（ステップＳ８２）。
【００５５】
ステップＳ８２の後、受信フェーズを受信開始待ちに変更する（ステップＳ８３）。
【００５６】
次に、タイマの起動から停止までの経過時間の計測値と、あらかじめ定義しているサイクリック更新周期時間を比較する（ステップＳ８４）。
計測値の方が大きい場合（すなわち、ＹＥＳ）には、システム監視装置に対してサイクリックメモリ更新時間オーバが発生していることをアラームとして通知する。
計測値の方が小さい場合（すなわち、ＮＯ）には、そのまま終了する。
【００５７】
このように、受信側装置は、同期確認、すなわち「送信開始」の制御情報を受信してから、同期完了、すなわち「送信完了」の制御情報を受信するまでの時間を監視し、この監視された時間が予め定義された時間を越える場合には、システム監視機構に対してサイクリックデータ更新が正常に行われていない旨を通知するものである。
【００５８】
以上のように、この発明の実施の形態４によるサイクリック通信同期方法によれば、受信側で本当にサイクリックデータ更新周期が守られているかどうかを監視して、更新周期が守られていない場合には、データ更新遅延を速やかにシステム監視装置に通知するので、これらのデータを参照している上位システムで致命的なエラーが発生することを回避できる。
【００５９】
実施の形態５．
なお、上記実施の形態４では、データ更新遅延をシステム監視装置に通知し対応するようにしたが、送信側装置に対してデータ更新遅延を通知するようにしてもよい。以下、データ更新遅延を通知する構成が異なるこの発明の実施の形態５のサイクリック通信同期方法について説明する。
【００６０】
この発明の実施の形態５について、図に基づいて説明する。図９は、この発明の実施の形態５によるサイクッリクマップの構造を示す構成図である。図１０は、この発明の実施の形態５による縮退ブロック情報格納テーブルの構造を示す構成図である。
【００６１】
図９に示すように、送信すべきサイクリックデータのアドレスとサイズを定義するサイクリックマップ５０は、複数のアドレスとサイズ情報をブロック５１ａ〜５１ｎの単位に区切って定義する。このブロック５１ａ〜５１ｎは、それぞれサイクリックアドレス５３ａ〜５３ｎと、サイズ５４ａ〜５４ｎと、組合せ登録数を示す情報５２とを含む。この組合せ登録数を示す情報５２は、例えば、サイクリックアドレス５３ａとサイズ５４ａが一組の送信データ情報となるが、これらの組み合わせ登録数を示すものである。
【００６２】
また、図１０において、縮退ブロック情報格納テーブル４０は、受信側から通知されたサイクリック更新周期オーバの回数に応じて、送信をスキップするサイクリックデータブロック番号を格納する。この縮退ブロック情報格納テーブル４０は、ブロック情報登録数４１と、送信スキップブロック番号４２ａ〜４２ｎとを含む。
【００６３】
この送信スキップブロック番号４２ａ〜４２ｎは、該回数をインデクスとして参照され、更新周期オーバ発生回数に応じて送信をスキップすべきブロック番号を格納する。このブロック番号は、送信すべきサイクリックデータの中で、送信優先度が低いものほど、縮退ブロック情報格納テーブルの先頭エントリに近い方に設定される。送信優先度が高いデータのブロック番号は、該テーブルのエントリ番号が大きい領域に設定される。必ず送信すべきブロックは本テーブルには設定しない。
【００６４】
図１１は、この発明の実施の形態５によるサイクリック通信同期方法の受信処理を示すフローチャートである。このサイクリック通信同期方法は、以下のステップＳ７１〜Ｓ７７、Ｓ８１〜Ｓ８４、Ｓ１１１を含むフローで構成されている。なお、図８と同一符号は同様のフローである。
【００６５】
図１１に示すように、実施の形態４と同様に、サイクリックデータの受信側装置において、複数に分割されたサイクリックデータを受信する際、送信開始から送信完了までの時間を継続してあらかじめ規定された更新周期時間を守れているかどうかを検出する機能を有する。
【００６６】
ステップＳ８４において、更新周期オーバであることを検出した場合（すなわち、ＹＥＳ）には、送信元装置に対して「更新周期オーバ」を通知する（ステップＳ１１１）。更新周期を守れている場合（すなわち、ＮＯ）には何も通知しない。
【００６７】
図１２は、この発明の実施の形態５によるサイクリック通信同期方法の送信処理を示すフローチャートである。この送信処理フローは、以下のステップＳ１２１〜Ｓ１２１３を含むフローで構成されている。
【００６８】
この送信処理フローでは、サイクリックデータ送信のため定期的に送信処理機能を起動する。先ず、送信処理機能の起動後、「更新周期オーバ」の通知がされているか否かにより、以下のフローが決定される（ステップＳ１２１）。
【００６９】
受信側装置から「更新周期オーバ」通知を受信していない場合は、サイクリック縮退モードが参照される（ステップＳ１２３）。
ここで、サイクリック縮退モードとは、当該装置のサイクリックデータ送信に対して、他の受信装置から「更新周期オーバ」の通知を受信している状態であるかどうかを示す情報である。具体的には、「更新周期オーバ」通知の受信カウンタを保持しており該カウンタ値が０以外である状態をサイクリック縮退モード状態と定義する。
【００７０】
受信側装置から「更新周期オーバ」通知を受信した場合は、該受信カウンタに１を加算する（ステップＳ１２０２）。
【００７１】
ステップＳ１２３において、通常はサイクリック縮退モードではない（すなわち、ＮＯ）ので、サイクリックマップ５０から送信ブロック情報（データアドレスとサイズ）を読み込み（ステップＳ１２５）、送信ブロックとデータサイズを決定し（ステップＳ１２６）、送信すべきサイクリックデータを作成する（ステップＳ１２７）。なお、データの分割が必要な場合は、複数のデータが作成される。
【００７２】
他方、ステップＳ１２３において、サイクリック縮退モードである場合には、縮退ブロック情報格納テーブル４０を参照して、先頭のエントリから発生回数をインデクスとしたエントリ（図１０の送信スキップブロック番号４２ａ〜４２ｎのいずれか）までに設定されている送信スキップするブロック番号を取り出し（ステップＳ１２４）、ステップＳ１２６、Ｓ１２７に進む。
【００７３】
ステップＳ１２７の後、サイクリックマップ５０を参照して該ブロック番号を除いた分について送信すべきサイクリックデータを作成する。上記にて作成したデータを、「送信開始」の制御情報フレームの送信に引き続いて順次送信し（ステップＳ１２９）、全てのデータが送信されたか否かが確認される。
【００７４】
全データを送信した後（すなわち、ＹＥＳ）、「送信完了」の制御情報フレームを送信する（ステップＳ１２１０）。全データが送信されていない場合は、ステップＳ１２９に戻る。
【００７５】
ステップＳ１２１０の後、更新周期オーバ発生回数がチェックされる（ステップＳ１２１１）。
更新周期オーバ発生回数が０でない場合には、同一縮退モード（更新周期オーバ発生回数値が同じ）で、一定回数以上サイクリックデータ送信を行ったかどうかチェック（ステップＳ１２１２）して、一定回数に達した場合は更新周期オーバ発生回数から１を減じる。
一方、更新周期オーバ発生回数が０である場合には、なにもせずに処理を抜ける。
【００７６】
以上のように、受信側の端末は、同期確認の制御情報を受信してから同期完了の制御情報を受信するまでの時間を監視し、この監視された時間が予め定義された時間を越える場合には、送信側の端末に対してサイクリックデータ更新が正常に行われていない旨「更新周期オーバ」を通知し、送信側の端末は、通知に基づいて、優先度が低いサイクリックデータブロックの送信をスキップし、優先度の高いサイクリックデータの更新周期を規定時間内に戻すように制御するものである。
【００７７】
以上のように、この発明の実施の形態５によるサイクリック通信同期方法によれば、送信／受信装置の処理負荷、通信の負荷などが高くて更新周期が守れない場合には、送信量を減らして必ず送信したいデータだけを、更新周期を守って送り届けることができる。
【図面の簡単な説明】
【００７８】
【図１】この発明の実施の形態１に係る送信側装置の構成を示す図である。
【図２】この発明の実施の形態２に係る受信情報管理テーブルの構成を示す図である。
【図３】この発明の実施の形態２に係るネットワークで送受信されるサイクリックデータの構成を示す図である。
【図４】この発明の実施の形態２に係るサイクリック通信同期方法を示すフローチャートである。
【図５】この発明の実施の形態３に係る受信管理情報テーブルの構造を示す構成図である。
【図６】この発明の実施の形態３に係るサイクリック通信同期方法の送信処理を示すフローチャートである。
【図７】この発明の実施の形態３に係るサイクリック通信同期方法の受信処理を示すフローチャートである。
【図８】この発明の実施の形態４に係るサイクリック通信同期方法の受信処理を示すフローチャートである。
【図９】この発明の実施の形態５に係るサイクッリクマップの構造を示す図である。
【図１０】この発明の実施の形態５に係る縮退ブロック情報格納テーブルの構造を示す図である。
【図１１】この発明の実施の形態５に係るサイクリック通信同期方法の受信処理を示すフローチャートである。
【図１２】この発明の実施の形態５に係るサイクリック通信同期方法の送信処理を示すフローチャートである。
【符号の説明】
【００７９】
２ｍ  サイクリックメモリ、２ｎ  サイクリックメモリ、３ａ〜３ｎ  書き込み処理機能、４  送信処理機能、１０  出力レジスタ、１１ａ  第１の切り替え回路、１１ｂ  第２の切り替え回路、１２  スケジューリング処理機能。
【図１】
2005303534.tif 000003
【図２】
2005303534.tif 000004
【図３】
2005303534.tif 000005
【図４】
2005303534.tif 000006
【図５】
2005303534.tif 000007
【図６】
2005303534.tif 000008
【図７】
2005303534.tif 000009
【図８】
2005303534.tif 000010
【図９】
2005303534.tif 000011
【図１０】
2005303534.tif 000012
【図１１】
2005303534.tif 000013
【図１２】
2005303534.tif 000014