(57)【要約】【課題】ネットワーク上で送信される通信フレームが中継局を通過するたびに発生するリピータ遅延を低減化し、通信サイクルを高速化すること。【解決手段】通信機能を有するマスタ局と、通信機能を有する１もしくは２以上のスレーブ局とがバス型ネットワークにて結ばれ、かつバス型ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘って中継局が介在されている通信システムにおいて、スレーブ局は、マスタ局からのフレーム送信経路上に設置されている中継局の台数に基づきリピータ遅延時間が設定されており、設定されたリピータ遅延時間に基づいて、スレーブ局からマスタ局への応答フレームの返信タイミングを制御する。【選択図】図１
2007244000.tif 000002
【特許請求の範囲】
【請求項１】
通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するＩ／Ｏターミナル装置である１もしくは２以上のスレーブ局とがネットワークにて結ばれ、かつネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘ってリピータとして機能する中継局が介在されている通信システムにおいて、
ネットワーク上にて送受信される各種通信フレームには、当該フレームの種別を識別するための識別情報が含まれており、
中継局は、マスタ局からスレーブ局へと送信される要求フレームに対するスレーブ局から返信される応答フレームに対しては、ネットワーク上の下流から上流方向に対してのみ中継処理を行うことを特徴とする通信システム。
【請求項２】
マスタ局は、
スレーブ局に対して前記複数の通信フレームのうちの特定の通信フレームを送信し、その特定の通信フレームに対するスレーブ局からの応答フレームから中継局の通過段数を読み出し、
読み出された中継局の通過段数に基づいて、当該スレーブ局がマスタ局からの応答フレームを返信するタイミングを設定するタイムドメインを計算し、そのタイムドメインの書き込み処理を行うこと、
を特徴とする請求項１に記載の通信システム。
【請求項３】
スレーブ局において、マスタ局からの通信フレームに対する応答フレームを送信するタイミングが、マスタ局が複数の応答フレームを隙間なく受信できるように応答を返信することを特徴とする請求項２に記載の通信システム。
【請求項４】
前記要求フレームの１つは、通過した中継局のアドレス値の情報と中継局段数の情報とを含むことができるものであり、
前記中継局は、前記要求フレームの１つが通過する際に、自局のアドレス値の情報と中継局段数に＋１加算した値の情報とを記憶する処理を行うものであり、
前記スレーブ局は、
前記要求フレームの１つから、自局の上位側に隣接する中継局のアドレス値の情報と、中継局段数の情報とを読み出す処理と、マスタ局への応答フレームに前記要求フレームの１つから読み出した自局の上位側に隣接する中継局のアドレス値の情報と中継局段数の情報とを含ませる処理と、を行うことを特徴とする請求項２に記載の通信システム。
【請求項５】
前記各種通信フレームには、スレーブ局に接続された入力機器から入力したＩＮデータをスレーブ局が前記マスタ局へ送信するためのインフレームが含まれており、
前記スレーブ局は、前記タイムドメインに基づいて、前記インフレームを、前記リピータ遅延時間だけ早く応答を返信するようにし、
前記中継局は、前記インフレームについて下流から上流方向に対してのみ中継処理を行うこと、
を特徴とする請求項３に記載の通信システム。
【請求項６】
前記スレーブ局はマスタ局がスレーブ局の存在を確認するためのコネクションフレームをマスタ局へ送信するものであり、
前記マスタ局は、スレーブ局に対してコネクションフレームの送信を要求するトリガフレームを送信するものであり、
前記スレーブ局は、前記タイムドメインに基づいて、前記コネクションフレームを前記リピータ遅延時間だけ応答を返信するようにし、
前記中継局は、前記コネクションフレームについては下流から上流方向に対してのみ中継処理を行うこと、
を特徴とする請求項３に記載の通信システム。
【請求項７】
通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するＩ／Ｏターミナル装置である１若しくは２以上のスレーブ局とがネットワークにて結ばれ、かつネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘ってリピータとして機能する中継局が介在されている通信システムにおいて、
ネットワーク上にて送受信される各種フレームには、当該フレームの種別を識別するための識別情報が含まれており、
中継局は、スレーブ局からマスタ局へ送信される通信フレームの種別に対しては、ネットワーク上の下流から上流方向に対して中継処理を行い、
スレーブ局は、マスタ局との間に介在する中継局の段数を予め記憶しており、マスタ局からの通信フレームに対する応答フレームを送信するタイミングが、マスタ局が複数の応答フレームを隙間なく受信できるように応答を返信すること、
を特徴とする通信システム。
【請求項８】
前記マスタ局は、スレーブ局に対してコネクションフレームの送信を要求するトリガフレームを送信するものであり、
前記スレーブ局はマスタ局がスレーブ局の存在を確認するためのコネクションフレームをマスタ局へ送信するものであり、
前記スレーブ局は、前記タイムドメインに基づいて、前記コネクションフレームを前記リピータ遅延時間だけ早く応答を返信するようにし、
前記中継局は、前記コネクションフレームについては下流から上流方向に対してのみ中継処理を行うこと、
を特徴とする請求項７に記載の通信システム。
【請求項９】
前記各種通信フレームには、スレーブ局Ｉ／Ｏターミナル装置のＩＮデータを前記マスタ局へ送信するためのインフレームが含まれており、
前記スレーブ局は、前記マスタ局との間に介在する中継局の段数に基づいて、Ｉ／Ｏターミナル装置のＩＮデータを含んだインフレームを、マスタ局が複数の応答フレームを隙間なく受信できるように応答を返信するようにし、
前記中継局は、前記インフレームについては下流から上流方向に対してのみ中継処理を行うこと、
を特徴とする請求項７に記載の通信システム。
【請求項１０】
通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するＩ／Ｏターミナル装置である１もしくは２以上のスレーブ局とがネットワークにて結ばれ、かつネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘ってリピータとして機能する中継局が介在されている通信システムにおいて、
スレーブ局は、
マスタ局から送信される通信フレームにより、通信フレームの伝達時間及び通過中継局段数を読み出す受信処理部と、
マスタ局からの通信フレームに対して応答フレームの送信が要請されている場合、応答フレームを送信するタイミングが、マスタ局が複数の応答フレームを隙間なく受信できるように応答を返信する送信処理部とからなるスレーブ局。
【請求項１１】
通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するＩ／Ｏターミナル装置である１若しくは２以上のスレーブ局とがネットワークにて結ばれ、かつネットワーク上にあて、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘ってリピータとして機能する中継局が介在されている通信システムにおける中継装置であって、
フレームの種別を識別するための識別情報が含まれた各種通信フレームを受信する手段と、
受信した通信フレームの種別を識別する手段と、
識別した通信フレームの種別が、スレーブ局からマスタ局へ送信される通信フレームであった場合には、ネットワーク上の下流から上流方向に対してのみ中継処理を行う中継制御手段と、からなる中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バス型ネットワークにおいて、ネットワークを管理するマスタ局、Ｉ／Ｏ機器を接続するスレーブ局、及び通信フレームを整形・増幅する中継局とから構成されるＦＡ機器等を制御する通信システムに関するものである。
【背景技術】
【０００２】
単一のマスタ局と複数のスレーブ局及び複数の中継局とから構成されるプログラマブルコントローラ（ＰＬＣ）のリモートＩ／Ｏネットワークは既に知られている。そのネットワーク例が図１７に示されている。
【０００３】
同図にて示されるように、このネットワークシステムはマスタ局７０とスレーブ局８０ａ〜ｄ（スレーブ＃１〜４）と中継局９０ａ〜ｄ（リピータ＃１〜４）とから概略構成されており、中継局（リピータ）段数は２段として構成されたネットワークである。
【０００４】
ＰＬＣは、ユーザプログラムを実行する制御ユニット（ＣＰＵユニット）、入力機器や出力機器（以下、両機器の総称としてＩ／Ｏ機器という）を接続した入出力ユニット（Ｉ／Ｏユニット）、リモートＩ／Ｏネットワークを接続してスレーブ局との間で入出力データ（Ｉ／Ｏデータ）を通信する通信マスタユニットなどの各ユニットが結合して構成されている。マスタ局７０というのは、１組のプログラマブルコントローラに相当すると捉えても良いし、ＰＬＣの通信マスタユニットが該当すると捉えても良い。同図では、プログラマブルコントローラをマスタ局として表している。そして、このネットワークはバス型ネットワークとして構成されており、マスタ局はネットワークを管理するものであり、プログラマブルコントローラに組み込まれている。スレーブ局はＩ／Ｏ機器（図示せず）を接続していて、マスタ局から受信した通信フレームに格納されたＯＵＴデータに基づいて出力機器を制御し、また、マスタ局からの要求に応答して、入力機器から取り込んだＩＮデータを応答フレームに格納してマスタ局へ返信するものである。中継局はネットワーク上で送受信される通信フレームに対して波形整形及び増幅処理を行うものである。このことから、マスタ局から各スレーブ局へと送信される要求フレームや各スレーブ局からの応答フレームが通信される際に、中継局を通過するたびに整形・増幅処理を経るため、整形・増幅処理に要する一定時間の遅延（リピータ遅延）が発生してしまう。図１７にて示される観測点Ａ，Ｂ，Ｃ，Ｄにおいて、マスタ局が送信する要求フレームと各スレーブ局が応答する応答フレームを時系列的に示す動作モデルが図２１にて示されている。
【０００５】
図１７にて示されるように、スレーブ局＃１は、中継局を介さずにマスタ局に接続されている。そのため、図２１の観測点Ａにおけるスレーブ局８０ａの応答は、リピータ遅延が生じないため、マスタ局からの要求フレームの終了と共に、スレーブ局１からの応答フレームが送信されている。それに対し、スレーブ局２とマスタ局との間には中継局が存在しており、スレーブ局３及び４はマスタ局との間に中継局が２つずつ存在している。そのため、スレーブ局２，３，４に送信される要求フレームは中継局を通過するたびにリピータ遅延が発生し、それらのスレーブ局からの応答フレームも同様に中継局を通過するたびにリピータ遅延が発生してしまう。そのため、従来は、中継局で生じてしまうリピータ遅延を考慮して、同図にて示されるように、各スレーブの応答に隙間を空けて応答同士が衝突しないようにしていた（例えば特許文献１参照）。
【０００６】
同様に、図１７にて示される観測点Ｂ，Ｃ，Ｄにおいてもリピータ遅延に対応するために、図２１にて示されるように各スレーブ局の応答フレームの送信には所定時間の間隔を空けて送信するようにしていた。
【０００７】
また、同システムはバス型システムであるため、中継局は、上流、下流に流れる全ての通信フレームを中継するものである。図１７にて示されるようなシステム構成においては、スレーブ局＃３の応答フレームは４つの中継局（中継局９０ｄ、９０ｃ、９０ａ、９０ｂ）を介して、マスタ局や他のスレーブ局に到着し、スレーブ局＃４にも到着することとなる。この際、スレーブ局＃４に到着するのは「リピータ遅延×４」時間後となる。このため、全てのスレーブ局からの応答フレームの衝突を回避するためには、観測点Ａにおいて応答フレームの間隔を平均で「リピータ遅延×４」に相当する時間の隙間をあける必要が生じていた。そのため、通信サイクルは、
通信サイクル
＝要求フレーム時間
＋（応答フレーム時間＋リピータ遅延×最大リピータ段数×２）
×スレーブ数
となる。
【０００８】
さらに、上述のように、従来の中継局は上流、下流に流れる全ての通信フレームを中継するものであった。より詳細には、例えば、図２１にて示されるスレーブ局＃１から発信される応答フレームは、マスタ局に送信されるだけではなく、中継局を介して他のスレーブ局＃２，３，４にも中継されていた。このことは、観測点Ａ，Ｂ，Ｃ，Ｄの全てにおいてスレーブ局＃１からの応答フレームが知見されていることから明らかである。同様に、全ての観測点Ａ，Ｂ，Ｃ，Ｄにおいて、全てのスレーブ局からの応答フレームが知見されている。
【特許文献１】特開２００４−２８０３０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従来の方法では、各中継局にて発生するリピータ遅延を考慮して各スレーブ局の応答に隙間を空けて応答同士が衝突しないようにしているため、各スレーブ局の応答の隙間分、通信サイクルが増大してしまうという問題が生じていた。
【００１０】
また、ネットワーク上の各スレーブ局から送信されるマスタ局宛の通信フレームも、他のスレーブ局に中継されてしまうため、通信路の占有率が上昇してしまい、通信性能の低下に繋がっていた。
【００１１】
本発明は、上述の問題点に着目してなされたものであり、その目的とするところは、通信サイクルを増大させずに、各スレーブ局の応答同士が衝突しないようにすることのできる中継局遅延影響の低減化方法及びその方法を実現するためのシステムを提供することにある。
【００１２】
また、本発明の他の目的とするところは、ネットワーク上の中継局により、中継する通信フレームの種別を判別し、必要な情報のみを中継することで、中継局以下のネットワーク占有率を低減化し、ネットワーク効率を向上させることにある。
【００１３】
本発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
【課題を解決するための手段】
【００１４】
本発明の実施形態によれば、通信機能を有するＰＬＣであるマスタ局と、通信機能を有するＩ／Ｏターミナル装置である１もしくは２以上のスレーブ局とがネットワークにて結ばれ、かつネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘ってリピータとして機能する中継局が介在されている通信システムにおいて、ネットワーク上にて送受信される各種通信フレームには、当該フレームの種別を識別するための識別情報が含まれており、中継局は、マスタ局からスレーブ局へと送信される要求フレームに対するスレーブ局から返信される応答フレームに対しては、ネットワーク上の下流から上流方向に対してのみ中継処理を行う。
【００１５】
このような構成により、スレーブ局からマスタ局へと送信される応答フレームは、マスタ局にのみ送信され、従来例のように他のスレーブ局にまで送信されてしまうことがない。従って、不要なフレームの送信が行われず、ネットワーク上にて応答同士が衝突しないように設けられていた各スレーブ局の応答タイミングの隙間を最小化することが可能となる。
【００１６】
本発明の実施形態によれば、マスタ局は、スレーブ局に対して前記複数の通信フレームのうちの特定の通信フレームを送信し、その特定の通信フレームに対するスレーブ局からの応答フレームから中継局の通過段数を読み出し、読み出された中継局の通過段数に基づいて、当該スレーブ局がマスタ局からの応答フレームを返信するタイミングを設定するタイムドメインを計算し、そのタイムドメインの書き込み処理を行う。
【００１７】
このような構成により、送信される通信フレームから得られる情報を基に、そのフレームを送信したスレーブ局とのネットワーク構成上の位置を把握することが可能となる（例えば、マスタ局から当該スレーブ局までの経路上に中継局が何段存在するか等）。そして、マスタ局によって算出される、各スレーブ局における応答タイミングを設定するためのタイムドメインにおいて、各スレーブ局の応答タイミングの隙間を減少させ、高速な通信サイクルを実現することが可能となる。
【００１８】
本発明の実施形態によれば、スレーブ局において、マスタ局からの通信フレームに対する応答フレームを送信するタイミングが、マスタ局が複数の応答フレームを隙間なく受信できるように応答を返信する。
【００１９】
ここで言う『リピータ遅延』とは、ネットワーク上送信される各種通信フレームが中継局を通過する際にかかる時間のことである。中継局において、中継対象となる通信フレームに対して波形整形や増幅等の様々な処理を行うため、通信フレームを中継するたびに中継局が存在しない場合に比べて遅れが生じてしまう。リピータ遅延とはこの遅れ、すなわち中継局における中継処理にかかる時間を意味するものである。以下で言う『リピータ通信』も同様である。
【００２０】
このような構成により、マスタ局からのフレームに対する応答フレームの送信時に設けられている応答の隙間を削減し、中継局によって生じるリピータ遅延の影響を低減化することが可能となる。
【００２１】
本発明の実施形態によれば、要求フレームの１つは、通過した中継局のアドレス値の情報と中継局段数の情報とを含むことができるものであり、中継局は、要求フレームの１つが通過する際に、自局のアドレス値の情報と中継局段数に＋１加算した値の情報とを記憶する処理を行うものであり、スレーブ局は、要求フレームの１つから、自局の上位側に隣接する中継局のアドレス値の情報と、中継局段数の情報とを読み出す処理と、マスタ局への応答フレームに前記要求フレームの１つから読み出した自局の上位側に隣接する中継局のアドレス値の情報と中継局段数の情報とを含ませる処理と、を行うような構成とすることが好ましい。
【００２２】
また、本発明の実施形態によれば、前記各種通信フレームには、スレーブ局に接続された入力機器から入力したＩＮデータをスレーブ局が前記マスタ局へ送信するためのインフレームが含まれており、前記スレーブ局は、前記タイムドメインに基づいて、前記インフレームを、前記リピータ遅延時間だけ早く応答を返信するようにし、前記中継局は、前記インフレームについて下流から上流方向に対してのみ中継処理を行うような構成とすることもできる。
【００２３】
前記スレーブ局はマスタ局がスレーブ局の存在を確認するためのコネクションフレームをマスタ局へ送信するものであり、前記マスタ局は、スレーブ局に対してコネクションフレームの送信を要求するトリガフレームを送信するものであり、前記スレーブ局は、前記タイムドメインに基づいて、前記コネクションフレームを前記リピータ遅延時間だけ応答を返信するようにし、前記中継局は、前記コネクションフレームについては下流から上流方向に対してのみ中継処理を行うような構成とすることができる。
【００２４】
本発明の実施形態によれば、通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するＩ／Ｏターミナル装置である１若しくは２以上のスレーブ局とがネットワークにて結ばれ、かつネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘ってリピータとして機能する中継局が介在されている通信システムにおいて、ネットワーク上にて送受信される各種フレームには、当該フレームの種別を識別するための識別情報が含まれており、中継局は、スレーブ局からマスタ局へ送信される通信フレームの種別に対しては、ネットワーク上の下流から上流方向に対して中継処理を行い、スレーブ局は、マスタ局との間に介在する中継局の段数を予め記憶しており、マスタ局からの通信フレームに対する応答フレームを送信するタイミングが、マスタ局が複数の応答フレームを隙間なく受信できるように応答を返信するような構成とした。
【００２５】
このような構成により、スレーブ局からマスタ局へと送信される応答フレームは、マスタ局にのみ送信され、従来例のように他のスレーブ局にまで送信されてしまうことがない。従って、不要なフレームの送信が行われず、ネットワーク上にて応答同士が衝突しないように設けられていた各スレーブ局の応答タイミングの隙間を最小化することが可能となる。そして、マスタ局からのフレームに対する応答フレームの送信時に設けられている応答の隙間を削減し、中継局によって生じるリピータ遅延の影響を低減化すること可能となる。
【００２６】
本発明の実施形態によれば、前記マスタ局は、スレーブ局に対してコネクションフレームの送信を要求するトリガフレームを送信するものであり、前記スレーブ局はマスタ局がスレーブ局の存在を確認するためのコネクションフレームをマスタ局へ送信するものであり、前記スレーブ局は、前記タイムドメインに基づいて、前記コネクションフレームを前記リピータ遅延時間だけ早く応答を返信するようにし、前記中継局は、前記コネクションフレームについては下流から上流方向に対してのみ中継処理を行うような構成とすることもできる。
【００２７】
本発明の実施形態によれば、前記各種通信フレームには、スレーブ局Ｉ／Ｏターミナル装置のＩＮデータを前記マスタ局へ送信するためのインフレームが含まれており、前記スレーブ局は、前記マスタ局との間に介在する中継局の段数に基づいて、Ｉ／Ｏターミナル装置のＩＮデータを含んだインフレームを、マスタ局が複数の応答フレームを隙間なく受信できるように応答を返信するようにし、前記中継局は、前記インフレームについては下流から上流方向に対してのみ中継処理を行うような構成とすることができる。
【００２８】
本発明の実施形態によれば、通信機能を有するＰＬＣであるマスタ局と、通信機能を有するＩ／Ｏターミナル装置である１もしくは２以上のスレーブ局とがネットワークにて結ばれ、かつネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘ってリピータとして機能する中継局が介在されている通信システムにおいて、スレーブ局は、
マスタ局から送信される通信フレームにより、通信フレームの伝達時間及び通過中継局段数を読み出す受信処理部と、マスタ局からの通信フレームに対して応答フレームの送信が要請されている場合、応答フレームを送信するタイミングが、マスタ局が複数の応答フレームを隙間なく受信できるように応答を返信する送信処理部とからなる。
【００２９】
このような構成により、マスタ局からのフレームに対する応答フレームの送信時に設けられている応答の隙間を削減し、中継局によって生じるリピータ遅延の影響を低減化する機能を備えたスレーブ局を提供することが可能となる。
【００３０】
本発明の実施形態によれば、通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するＩ／Ｏターミナル装置である１若しくは２以上のスレーブ局とがネットワークにて結ばれ、かつネットワーク上にあて、マスタ局と所定のスレーブ局とを結ぶ経路上には、１段又は２段以上に亘ってリピータとして機能する中継局が介在されている通信システムにおける中継装置であって、フレームの種別を識別するための識別情報が含まれた各種通信フレームを受信する手段と、受信した通信フレームの種別を識別する手段と、識別した通信フレームの種別が、スレーブ局からマスタ局へ送信される通信フレームであった場合には、ネットワーク上の下流から上流方向に対してのみ中継処理を行う中継制御手段と、からなる。
【００３１】
このような構成により、スレーブ局からマスタ局へと送信される応答フレームは、マスタ局にのみ送信され、従来例のように他のスレーブ局にまで送信されてしまうことがない。
【発明の効果】
【００３２】
以上の説明で明らかなように、本発明によれば、ネットワーク上で送信される通信フレームが中継局を通過するたびに発生するリピータ遅延を低減化し、通信サイクルを高速化することが可能となる。
【発明を実施するための最良の形態】
【００３３】
以下に、この発明の好適な実施の一形態を添付図面を参照しながら詳細に説明する。
【００３４】
通信マスタ局及び通信スレーブ局を含むＰＬＣシステム全体の構成図が図１に示されている。同図に示されるように、このＰＬＣシステムは、通信マスタ局となる通信機能を有するＰＬＣ装置１と、通信スレーブ局となる複数台の通信機能を有するＩ／Ｏターミナル装置２，２・・・とを、バス型ネットワークであるフィールドバス６により繋いで構成されている。なお、図において、３はパソコンを利用した設定装置であり、ＰＬＣ装置１、マスタユニット１０、通信スレーブ局、中継装置４などのネットワーク上においてノードとなる各装置・機器に対して、各種の設定を行う機能を持つ。「設定ツール装置」や「ネットワークコンフィギュレータ」などと称されることもある。４は中継装置として機能するリピータ、５はフィールドバスの終端における反射を低減する終端装置である。
【００３５】
図示のＰＬＣ装置１としては、パラレルバスの敷設された図示しないバックプレーン上に多数のコネクタを配置し、それらのコネクタに対して、ＣＰＵユニット、Ｉ／Ｏユニット、その他各種の高機能ユニット等々を任意に装着可能とした所謂ビルディングブロック型のＰＬＣ装置が採用されている。そして、特に、この例では、バックプレーン上の１のコネクタに対して通信マスタユニットを装着することにより、「通信機能を有するＰＬＣ装置」が構成されている。図では、それらのユニットのうちで、ＣＰＵユニット２０及び通信マスタユニット１０のみに参照符号が付されている。
【００３６】
通信マスタユニット１０の内部構成を示すハードウェア構成図が図２に示されている。同図に示されるように、通信マスタユニット１０は、通信物理層として機能する通信インタフェース（通信Ｉ／Ｆ）１０１と、所望の通信機能を実現するための回路をＬＳＩ化してなるマスタ用ＡＳＩＣ１０２と、ＣＰＵユニット２０との間で受け渡される送受信データのバッファエリアや、後述するＣＰＵ１０４の演算用ワークエリア等として機能するＲＡＭ１０３と、マイクロプロセッサを主体として構成されて装置全体を統括制御するためのＣＰＵ１０４と、各種の設定データが格納される不揮発性メモリ（ＥＥＰＲＯＭ）１０５と、各種の動作表示等を行うためのＬＥＤ表示器１０６と、各種の設定操作等に使用される設定スイッチ１０７と、ＣＰＵユニット２０へ通ずる内部バスへのインタフェースとして機能する内部バスインタフェース（内部バスＩ／Ｆ）１０８とを含んでいる。
【００３７】
当業者にはよく知られているように、この種のＰＬＣシステムにおいては、ＣＰＵユニット２０は、共通処理、Ｉ／Ｏリフレッシュ処理、ユーザプログラム実行処理、周辺サービス処理等を繰り返し一巡実行しており、Ｉ／Ｏリフレッシュ処理の実行の際には、バックプレーン上に装着されたローカルＩ／Ｏユニットとの間のみならず、通信マスタユニット１０内のＲＡＭ１０３との間においても、Ｉ／Ｏリフレッシュ処理を実行する。
【００３８】
具体的には、ＣＰＵユニット２０のＩ／Ｏメモリ内のＯＵＴデータは、通信マスタユニット１０のＲＡＭ１０３内のＯＵＴエリアに書き込まれ、同ＲＡＭ１０３のＩＮデータは、ＣＰＵユニット２０のＩ／Ｏメモリ内のＩＮエリアに書き込まれる。
【００３９】
一方、後に詳細に説明するように、通信マスタユニット１０と各Ｉ／Ｏターミナル装置２との間では、ＣＰＵユニット２０のＩ／Ｏリフレッシュ動作とは非同期にフィールドバス６を介する通信が行われており、これにより各Ｉ／Ｏターミナル装置２と通信マスタユニット１０内のＲＡＭ１０３との間においても、一種のＩ／Ｏリフレッシュ処理が実行される。
【００４０】
具体的には、Ｉ／Ｏターミナル装置２から受信されたＩＮデータは、通信マスタユニット１０内のＲＡＭ１０３のＩＮエリアに書き込まれ、ＣＰＵユニット２０はＩ／Ｏリフレッシュ動作により通信マスタユニット１０から取り込む。そしてＣＰＵユニット２０はＩＮデータをもとにユーザプログラムを実行し、その実行結果をＯＵＴデータとする。ＣＰＵユニット２０はＩ／Ｏリフレッシュ動作によりＯＵＴデータを通信マスタユニット１０へ送り出す。通信マスタユニット１０はＯＵＴデータを同ＲＡＭ１０３のＯＵＴエリアに格納する。そして通信マスタユニット１０は、Ｉ／Ｏリフレッシュとは非同期に、同ＲＡＭ１０３のＯＵＴエリアのＯＵＴデータを、該当するＩ／Ｏターミナル装置２へ送信する。
【００４１】
このようにして、ＣＰＵユニット２０内のＩ／Ｏメモリと各Ｉ／Ｏターミナル装置２，２・・との間において、通信マスタユニット１０を経由してＩ／Ｏリフレッシュ処理が実行され、その結果として、リモート設置された各Ｉ／Ｏターミナル装置２，２・・・に接続されたＩ／Ｏ機器をＣＰＵユニット２０で制御することが可能となるのである。
【００４２】
次に、Ｉ／Ｏターミナル装置内部のハードウェア構成図が図３に示されている。同図に示されるように、Ｉ／Ｏターミナル装置２は、通信物理層として機能する通信インタフェース（通信Ｉ／Ｆ）２０１と、所望の通信機能を実現するための回路をＬＳＩ化してなるスレーブ用ＡＳＩＣ２０２と、マイクロプロセッサを主体として構成されて装置全体を統括制御するためのＣＰＵ２０３と、各種の設定データが格納される不揮発性メモリ（ＥＥＰＲＯＭ）２０４と、各種の動作表示等を行うためのＬＥＤ表示器２０５と、各種の設定操作等に使用される設定スイッチ２０６と、Ｉ／Ｏ機器７との間でデータをやり取りするためのＩ／Ｏ部２０７と、装置全体に安定化直流電源を供給するための変圧機能を有する直流電源部２０８とを含んでいる。
【００４３】
そして、通信マスタユニット１０と各Ｉ／Ｏターミナル装置２との間では、通信マスタユニット１０を通信マスタ局、各Ｉ／Ｏターミナル装置２を通信スレーブ局とする１対Ｎのマスタ・スレーブ通信を通じて、Ｉ／Ｏデータのやり取りが行われる。
【００４４】
具体的には、通信マスタユニット１０から受信されるＯＵＴデータは、Ｉ／Ｏターミナル装置２のＩ／Ｏ部２０７を介してＩ／Ｏ機器７（出力機器）へと送り出され、Ｉ／Ｏ機器７（入力機器）からＩ／Ｏ部２０７を介してＩ／Ｏターミナル装置２に取り込まれたＩＮデータは、通信マスタユニット１０へ宛てて送信される。
【００４５】
次に、中継装置として機能するリピータ内部のハードウェア構成図が図４に示されている。同図に示されているように、リピータ４は、マスタ側とスレーブ側にそれぞれ接続される通信インタフェース４０１，４０２と、両通信インタフェース４０１，４０２間に実装され、伝送されるデータ（信号）に対して所定の処理を行うリピータ用ＡＳＩＣ４０３と、マイクロプロセッサを主体として構成されて装置全体を統括制御するためのＣＰＵ４０７とを備えている。さらに、入力電圧（２４Ｖ）を５Ｖに降圧し、リピータ４内の各素子に電源供給する電源部４０４を備えている。さらにまた、動作状態（通信状態）や異常／正常などを示すＬＥＤ表示部４０５並びにノードアドレスの設定などを行うための設定スイッチ４０６を備えている。
【００４６】
本発明におけるリピータ（中継局）の遅延低減化にあたっては、ネットワーク上における各中継局がネットワーク上における設置位置（すなわち、ネットワーク構成）を認識することが好ましい。上述のように構成されたネットワークにおいて、送信される情報フレームの探索経路及びそのためのネットワーク構成情報教示方法の一例から説明する。
【００４７】
先に、図１を参照しつつ説明した通信マスタ局（Ｍ）、通信スレーブ局（Ｓ）、中継局（Ｒ）は、ＰＬＣシステムのネットワーク上で固有のアドレスを保持しており、各機器の個別識別は、このアドレスにより行われる。そして、ネットワークの立ち上げ管理から通常通信に至るまでには、本実施形態のネットワーク構成情報教示方法が適用される。
【００４８】
先ず、マスタ局（Ｍ）から一斉同報送信（１対Ｎ通信）される第１のフレームを媒介として、中継局（Ｒ）から中継局（Ｒ）及び中継局（Ｒ）からスレーブ局（Ｓ）へと局アドレスを受け渡すことで、中継局（Ｒ）及びスレーブ局（Ｓ）のそれぞれに、ネットワーク内における「自局の上位側隣接局情報」を生成保存させる動作が行われる。
【００４９】
この動作は、電源投入時等のように、マスタ局がネットワークに接続された中継局並びにスレーブ局を認識する以前の段階で行ってもよいし、ネットワーク運用中のように、マスタ局がネットワークに接続された中継局並びにスレーブ局を認識したのちの段階で随意に行ってもよい。
【００５０】
この実施形態では、探索フレーム（一般にSolicitFrame又はBeaconFrame等と呼ばれる
ものが該当する。以下、BeaconFrameと記述し、ＢＦと略記するがいずれもSolicitFrame
を含む意味である）が使用される。ＢＦのフレームフォーマットを示す構成図が図５に示されている。
【００５１】
同図に示されるように、フィールドバス６を流れるＢＦには、ＢＦであることを識別するためのＢＦ識別ヘッダ５０１と、中継局を通過するたびにその中継局のアドレス値により更新される中継局アドレス５０２と、中継局を通過するたびにその値が＋１インクリメントされる中継局カウンタ５０３と、ＢＦの通信転送速度を示す伝達速度５０４とが少なくとも含まれている。
【００５２】
通信マスタ局（Ｍ）は、ＢＦがネットワークに接続されている全ての中継局及び通信スレーブ局（Ｓ）に伝わるようにＢＦを一斉同報送信する。すると、一斉同報送信されたＢＦは、直接にスレーブ局（Ｓ）へ、又は、１もしくは２段以上の中継局を経由してスレーブ局へと到達する。このとき、各経路を流れるＢＦはその経路の線路遅延時間、及び通過中継局の中継遅延時間をもって僅かに遅れるものの、全体としてはほぼ同時刻に各中継局及び各スレーブ局に到達すると考えることができる。
【００５３】
フレームの送受信シーケンスの説明図（その１）が図６に示されている。同図に示されるように、マスタ局（アドレス１０）からは、中継局アドレスの値が「１０」及び中継局カウンタの値が「０」の状態にあるＢＦがネットワーク上に一斉同報送信される。
【００５４】
この一斉同報送信されたＢＦを中継局（アドレス１００）がその上位ポートから受信すると、ＢＦ内の中継局アドレス５０２の値「１０」及び中継局カウンタ５０３の値「０」はＢＦから読み出され、中継局（アドレス１００）内のメモリに格納保持される。これにより、中継局（アドレス１００）は、上位側に１つ隣接する局の局アドレスが「１０」であるとして、自局の相対位置を認識することができる。この場合、中継局（アドレス１００）が生成する「自局の上位側隣接局情報」の内容は、「自局の上位側隣接局情報」（局アドレス「１０」）となる。
【００５５】
その後、ＢＦ内の中継局アドレス５０２の値は、「１０」（マスタ局アドレス：上位側へ１つ隣接する局の局アドレス）から「１００」（中継局アドレス：自局アドレス）へと置き換えられる。同時に、中継局カウンタ５０３の値「０」は＋１インクリメントされて「１」となる。こうして、中継局アドレス５０２の値が書き替えられ、かつ中継局カウンタ５０３の値が＋１インクリメントされた新たなＢＦが、次段に位置するスレーブ局（アドレス１０１）へとその下位ポートから送信される。
【００５６】
中継局（アドレス１００）から送信されたＢＦをスレーブ局（アドレス１０１）が受信すると、ＢＦ内の中継局アドレス５０２の値「１００」及び中継局カウンタ５０３の値「１」はＢＦから読み出され、スレーブ局（アドレス１０１）内のメモリに格納保持される。これにより、スレーブ局（アドレス１０１）は、上位側に１つ隣接する局の局アドレスが「１００」であるとして、自局の相対位置を認識することができる。この場合、スレーブ局（アドレス１０１）が生成する「自局の上位側隣接局情報」の内容は、上位側に１つ隣接する局の局アドレスが「１００」であるから、「自局の上位側隣接局情報」（局アドレス「１００」）となる。
【００５７】
このように、情報保存フェーズ（フェーズＩ）が実行されると、マスタ局から一斉同報送信されるＢＦを媒介として、マスタ局（アドレス１０）から中継局（アドレス１００）、中継局（アドレス１００）からスレーブ局（アドレス１０１）へと局アドレスを受け渡すことで、中継局（アドレス１００）及びスレーブ局（アドレス１０１）のそれぞれに、ネットワーク内における自局の上位側隣接局情報と中継局カウンタ値とが生成保存されることなる。
【００５８】
なお、図６に示される例にあっては、マスタ局とスレーブ局との間には中継局が１段しか介在されていないが、それらの局間に２段以上の中継局が介在されていたり、あるいは、マスタ局とスレーブ局との間に中継局が全く介在されていない場合においても、各中継局並びに各スレーブ局の動作は同様である。
【００５９】
中継局のＢＦ受信時の処理フロー（その１）が図７に示されている。なお、このフローに示される処理は、図４に示されるリピータ４内のＣＰＵ４０７により実行される。
【００６０】
同図において、処理が開始されると、まず、フレーム受信待機処理が実行される（ステップ７０１）。この状態において、何らかのフレームが受信され（ステップ７０２ＹＥＳ）、そのフレームのＢＦ識別ヘッダ５０１に基づいて、そのフレームがＢＦであると判定されると（ステップ７０３ＹＥＳ）、以下の処理（ステップ７０４〜７０９）が順次に実行される。
【００６１】
先ず、フレームの解析が行われて、当該フレームの構造が認識される（ステップ７０４）。次いで、フレーム内のアドレス情報（中継局アドレス５０２）、カウンタ情報（中継局カウンタ５０３）が読み出され、所定のメモリに格納保持される（ステップ７０５，７０６）。次いで、フレーム内のアドレス情報（中継局アドレス５０２）が自アドレスに置換される（ステップ７０７）。次いで、フレーム内のカウンタ情報（中継局カウンタ５０３）が、＋１インクリメントされた値で置換される（ステップ７０８）。最後に、こうして得られた新たなフレームが、下位ポートに出力される（７０９）。
【００６２】
通信スレーブ局のＢＦ受信時の処理フロー（その１）が図８に示されている。なお、このフローに示される処理は、図３に示されるＩ／Ｏターミナル装置２内のＣＰＵ２０３により実行される。
【００６３】
同図において、処理が開始されると、まず、フレーム受信待機処理が実行される（ステップ８０１）。この状態において、何らかのフレームが受信され（ステップ８０２ＹＥＳ）、そのフレームのＢＦ識別ヘッダ５０１に基づいて、そのフレームがＢＦヘッダと判定されると（ステップ８０３ＹＥＳ）、以下の処理（ステップ８０４〜８０６）が順次に実行される。
【００６４】
先ず、フレームの解析が行われて、当該フレームの構造が認識される（ステップ８０４）。次いで、フレーム内アドレス情報（中継局アドレス５０２）、フレーム内カウンタ情報（中継局カウンタ５０３）が読み出され、「自局の上位側隣接局情報」として所定のメモリに格納保持される（ステップ８０５，８０６）。
【００６５】
このようにして、中継局及びスレーブ局のそれぞれに、ネットワーク内における自局の上位側隣接局情報と中継局カウンタ値とが生成保存され、この情報がマスタ局にフィードバックされることにより、マスタ局にてシステム全体の構成図が把握される。なお、ＢＦを利用する方法以外にもネットワーク構成情報教示方法はある。例えば、作業者が実際のネットワーク構成から各スレーブ局においてマスタ局との間に介在する中継局の数を確かめ、その結果をマスタ局に登録する方法であっても良い。つまり、設定装置３からマスタ局に対して各スレーブ局の中継局の段数情報を送信して書き込む方法であっても良い。この方法であれば、その後、マスタ局から各スレーブ局に対して中継局の段数情報を送信して書き込むことになる。
【００６６】
他の方法として、例えば、作業者が実際のネットワーク構成から各スレーブ局においてマスタ局との間に介在する中継局の数を確かめ、その結果をスレーブ局に登録する方法であっても良い。つまり、設定装置３から直接的に各スレーブ局に対して、中継局の段数情報を送信して書き込む方法であっても良い。各スレーブ局に直接的に中継局段数を登録する場合の、別方法としては、スレーブ局に操作ボタンを設け、作業者がスレーブ局の操作ボタンを中継局段数と同じ数だけ押すことで登録できるような方法としても良い。
【００６７】
次に、本発明の要部であるネットワーク上の中継局にて生じるリピータ遅延の低減化方法について図９〜１６を参照して詳細に説明する。尚、これらの図において、符号３０はマスタ局を、４０ａ〜ｅはスレーブ局（その１〜５）を、５０ａ及びｂは中継局（その１及び２）を、３１はネットワーク幹線を、３２はネットワーク幹線から分岐しているネットワーク支線その１、そして３３はネットワーク幹線から分岐しているネットワーク支線その２をそれぞれ示している。
【００６８】
本発明に係るＰＬＣシステムには、以下に説明を行うマスタ局からスレーブ局に対してのみ発せられる専用フレーム（例えば、BeaconFrame, OutFrame, TrgFrame）と、スレーブ局からマスタ局に対してのみ発せられる専用フレーム（例えば、ConnectionFrame, InFrame）、双方向に発せられるフレーム（例えば、EventFrame）が存在し、中継局にて前記フレーム種類を判別し、必要方向のみに転送する中継局を特徴とするものである。なお、BeaconFrame（ビーコンフレーム）は、前述の探索フレームであり、定期的にマスタ局から送信するもので、送信伝送速度とリピータ通過段数をスレーブ局に通知する働きをする。OutFrame（アウトフレーム）は、ＰＬＣのユーザプログラム実行結果などをＯＵＴデータとし、マスタ局からスレーブ局へ送信するものである。TrgFrame（トリガフレーム）は、マスタ局からスレーブ局に対してConnectionFrameの返信を要求するためのものである。ConnectionFrame（コネクションフレーム）は、スレーブ局がトリガフレームを受信した場合に、トリガフレームで指定されていた時にマスタ局へ返信するものである。マスタ局は、このConnectionFrameを返送してきたスレーブ局に対して存在確認（図１８のステップ１１０３ＹＥＳ）または加入処理（図１８のステップ１１０４，１１０５）を行う。InFrame（インフレーム）は、スレーブ局が入力機器から取り込んだＩＮデータをマスタ局へ送信するものである。EventFrame（イベントフレーム）は、インフレームとは別に、マスタ局からの要求によりスレーブ局が何らかのデータをマスタ局へ送信するためのフレームである。
【００６９】
図１０及び図１１にて示されるように、本実施形態におけるＰＬＣシステムは、バス型ネットワークにおいて、ネットワークを管理するマスタ局３０と、Ｉ／Ｏ等を制御するスレーブ局４０、及び通信フレームを整形・増幅する中継局５０とから構成されている。
【００７０】
各フレームの基本構造が図９に示されている。同図にて示されるように、各フレームは、フレームが始まることを示すスタートコード９０１、フレームの種別を示すフレーム識別ヘッダ９０２、フレームの内容を示すフレームデータ９０３、及びフレームの正当性を示すチェックコード９０４（ＣＲＣデータ等）の４つの要素少なくとも含むものである。ネットワーク上の中継局５０は、このスタートコード９０１を認識した時点で波形の整形を行い、他方のポートに出力を開始する。この波形の整形を行うことで、ネットワークの敷設距離を延長することが可能とされている。
【００７１】
しかしながら、スタートコード９０１を判別した段階で中継処理を行った場合、スレーブ局４０からマスタ局３０宛てに送信するデータも、他のスレーブ局宛てに中継が行われてしまうため、不要な中継セグメントにもデータが送信され、ネットワークの占有効率が低下してしまっていた。
【００７２】
図１０にマスタ局３０からスレーブ局４０に対してのフレーム送信を行う場合が示されている。マスタ局３０からスレーブ局４０に対してのフレームは一斉同報的なフレームであるため、全てのフレームを同時に中継することで対応が可能である。同図にて示されるように、マスタ局３０から発せられるフレームは、スレーブ局４０ａのみならず、中継局５０ａを介してスレーブ局４０ｄ、そしてスレーブ局４０ｅへも送信される。尚、図示していないが、中継局５０ｂを介してスレーブ局４０ｂ及びスレーブ局４０ｃにも送信されている。
【００７３】
それに対して、図１１にスレーブ局４０からマスタ局３０に対してのフレーム送信を行う場合が示されている。同図にて示されるように、例えば、スレーブ局４０ｄからマスタ局３０に対してフレーム送信する場合、中継局５０ａがフレームの整形・増幅を行い、マスタ局３０に対してフレーム送信を行うのであるが、従来では同時に中継局５０ｂがそのフレームを受信し、下位ポートにフレーム送信を行ってしまっていた。このため、スレーブ局４０ｂ及び４０ｃは、マスタ３０局に送信できるネットワークの空き時間が確保できずに、ネットワークの通信効率が低下してしまっていた。
【００７４】
図１２にて上記の場合におけるネットワーク占有率が示されている。同図にて示されるように、ネットワーク支線３２上に配置されているスレーブ局４０ｄからマスタ局宛のフレームは、ネットワーク支線３２から中継局５０ａによって中継されてネットワーク幹線３１へと送り出されてマスタ局３０へと送信される。ところが、マスタ局３０へと送信されると共に、ネットワーク支線３３上に設置されている中継局５０ｂによって中継され、スレーブ局４０ｂへも送信されてしまう。本来マスタ局宛てであるスレーブ局４０ｄからのフレームがネットワーク支線３２と中継局５０ｂを経由してスレーブ局４０ｂへも送信されてしまう。その結果、ネットワーク支線３３上にスレーブ局４０ｄからマスタ局３０宛のフレームが中継されることによって余分な占有が生じてしまい、その分スレーブ局４０ｂからマスタ局３０宛のフレームの送信が遅れてしまっている。
【００７５】
尚、図示しないが、同様にスレーブ局４０ｂから送信されるマスタ局３０宛のフレームも中継局５０ａを経由してスレーブ局４０ｄ及び４０ｅにも送信されてしまい、ネットワーク支線３２上に余分なセットワーク占有を発生させていた。
【００７６】
各中継局にて受信するフレームを識別し、不要な中継処理を行わないようにした場合が図１３にて示されている。同図と図１２とを比較することで明確であるが、スレーブ局４０ｄからマスタ局３０宛のフレームを中継局５０ｂが識別し、中継処理を行わないようにすることで、ネットワーク支線３３上の余分なネットワーク占有が発生せずに、スレーブ局４０ｂからマスタ局３０宛のフレームをスムーズに送信することが可能となっている。このように、中継局にてフレーム識別ヘッダを判断し、必要な方向のみに中継処理を行うことで、ネットワーク支線３３の通信時間が確保でき、スレーブ局４０ｂ及び４０ｃが通信可能となり、ネットワーク効率の向上が実現可能である。ここでは、ネットワーク支線３３の通信時間を確保することを記載しているが、他の中継局でも同様の処理を行うことにより、ネットワーク全体の効率が向上されることは言うまでもない。
【００７７】
上述のようにフレームを識別し不要な中継を行わないようにされた中継局の機能ブロック図が図１４に示されている。同図にて示されるように、各中継局には上位ポート４１１と下位ポート４１７とが双方向シリアルバスによってネットワークに接続されている。
【００７８】
まず、上位ポート４１１側からフレームが送信されてきた場合を説明する。双方向シリアルバスを介して上位ポート４１１に送られてきたフレーム（受信データ）はスタートコード検出部４１２へと送られる。そして、受信データはスタートコード検出部４１２からデータバッファリング部４１３にて蓄積され、後にリピートフレーム生成部４１６へと送られる。このとき、スタートコード検知部４１２は、データバッファリング部４１３へと受信データを送ると共に、フレーム種別識別部４１４へも受信データとスタートコード検知信号を送る。次に、フレーム種別識別部４１４にスタートコード検知信号が送られると、フレームの種別が識別され、その識別結果がフレーム種別情報信号として下位リピートコントロール部４１５へと送られる。下位リピートコントロール部４１５では、フレーム種別情報信号にて規定されるフレームの種類によって、受信したフレームがリピート対象フレームであるかどうかの判定を行う。
【００７９】
この下位リピートコントロール部４１５における判定方法は以下のようになっている。既に説明したように、ネットワーク上の各中継局はネットワーク構成情報教示方法を用いることにより、ネットワーク上の自己の位置や他の中継局及びスレーブ局との相対位置を把握している。この場合、上位ポート４１１側にて受信したフレームに対する判定なので、ネットワークにおける上流から送信されてきたフレームに対して当該中継局からさらに下流側に中継するかどうかを判定するものである。そのため、例えば受信データがマスタ局からスレーブ局宛てのフレームであれば、ネットワークの上流から送信されてくるべきフレームであり、下位ポートを介して更に下流へと中継するべきフレームであると判断される。一方、受信データがスレーブ局からマスタ局宛のフレームであれば、マスタ局は中継局より上流側に位置しているため、下位ポートを介して下流へと中継処理（リピート）は行う必要のないフレームであると判断される。
【００８０】
このような判定処理を経て、対象フレームが中継を行う必要があるフレームであると判定された場合、リピートフレーム生成部４１６に対してリピート開始信号を送信する。このリピート開始信号を受信したリピートフレーム生成部４１６はデータバッファリング部４１３に蓄積されている受信データをリピート送信フレームデータとして下位ポート４１７を介してネットワーク上に送信する。尚、下位リピートコントロール部４１５は、リピート開始信号をリピートフレーム生成部４１６へと送信すると共に、抑制信号を上位リピートコントロール部４２１にも送信する。中継局においては、自己が発信したフレームをまた自己で受信してしまうことがある。そのようなこのことのないように、下位ポート４１７からフレームデータを送信する際には、上位リピートコントロール部４２１を介して上位ポート４１１にて受信を抑制するための信号を下位リピートコントロール部４１５にて送信するものである。
【００８１】
下位リピートコントロール部４１５にて中継を行う必要がないと判定された場合、リピート開始信号は生成されず、受信データの中継処理は行われない。
【００８２】
同様に、下位ポート４１７側からフレームが送信されてきた場合を以下に説明する。双方向シリアルバスを介して下位ポート４１７に送られてきたフレーム（受信データ）はスタートコード検出部４１８へと送られる。そして、受信データはスタートコード検出部４１８からデータバッファリング部４１９にて蓄積され、後にリピートフレーム生成部４２２へと送られる。このとき、データバッファリング部４１９へと受信データが送られると共に、フレーム種別識別部４２０へも受信データとスタートコード検知信号が送られる。次に、フレーム種別識別部４２０にスタートコード検知信号が送られると、フレームの種別が識別され、その識別結果がフレーム種別情報信号として上位リピートコントロール部４２１へと送られる。上位リピートコントロール部４２１では、フレーム種別情報信号にて規定されるフレームの種類によって、上位ポート４１１を介してさらに中継処理（リピート）を行うかどうかの判定を行う。
【００８３】
この上位リピートコントロール部４２１における判定方法も上述した上位ポート４１１からの受信時と同様であるが、この場合は下位ポート４１７側にて受信したフレームについての判定なので、ネットワークにおける下流から送信されてきたフレームとなる。そのため、受信データがスレーブ局からマスタ局宛てのフレームであれば、ネットワークの下流から送信されてくるべきフレームであり、上位ポートを介して更に上流へと中継するべきフレームであると判断される。一方、受信データがマスタ局からスレーブ局宛のフレームであれば、スレーブ局は中継局より下流に位置しているため、上位ポートを介して上流に位置するマスタ局への中継処理（リピート）は行う必要のないフレームであると判断される。
【００８４】
このような判定処理を経て、中継を行う必要があると判定された場合、リピートフレーム生成部４２２に対してリピート開始信号を送信する。このリピート開始信号を受信したリピートフレーム生成部４２２はデータバッファリング部４１９に蓄積されている受信データをリピート送信フレームデータとして上位ポート４１１を介してネットワーク上に送信する。尚、上位リピートコントロール部４２１は、リピート開始信号をリピートフレーム生成部４２２へと送信すると共に、抑制信号を下位リピートコントロール部４１５にも送信する。中継局においては、自己が発信したフレームをまた自己で受信してしまうことがある。そのようなこのことのないように、上位ポート４１１からフレームデータを送信する際には、下位リピートコントロール部４１５を介して下位ポート４１７にて受信を抑制するための信号を上位リピートコントロール部４２１にて送信するものである。
【００８５】
上位リピートコントロール部４２１にて中継を行う必要がないと判定された場合、リピート開始信号は生成されず、受信データを中継は行われない。
【００８６】
中継局にて行われる処理が図１５のフローチャートにて示されている。同図にて示されるように、上位ポート側においては、先ず、フレーム受信を待つ待機状態にて始まる（ステップ１５０１）。フレーム受信後、受信したフレームのスタートコードを検出する（ステップ１５０２）。当該フレームのスタートコードが検出されたら、先に図９にて説明したフレームに含まれるフレーム識別ヘッダを基にヘッダー識別（フレーム種類の識別）を行い、そのフレーム種類がリピート対象フレームであるか否かを判定する（ステップ１５０３）。対象フレームがリピート対象フレームである場合（ステップ１５０３、リピート対象フレーム）、下位ポートへの受信とリピートとを停止させる信号を送信し（ステップ１５０４）、その後下位ポートへのリピート処理を開始する（ステップ１５０５）。一方で、ステップ１５０３に戻り、対象フレームがリピート不可フレームである場合（ステップ１５０３、リピート不可フレーム）、そのフレームに対するリピート処理は行わず、ステップ１５０１に戻り、次の受信フレームを待機する。
【００８７】
同様に、下位ポート側においてもフレーム受信を待つ待機状態にて始まる（ステップ１５０６）。フレーム受信後、受信したフレームのスタートコードを検出する（ステップ１５０７）。当該フレームのスタートコードが検出されたら、当該フレームに含まれるフレーム識別ヘッダを基にヘッダー識別（フレーム種類の識別）を行い、そのフレーム種類がリピート対象フレームであるか否かを判定する（ステップ１５０８）。対象フレームがリピート対象フレームである場合（ステップ１５０８、リピート対象フレーム）、上位ポートへの受信とリピートとを停止させる信号を送信し（ステップ１５０９）、その後上位ポートへのリピート処理を開始する（ステップ１５１０）。一方で、ステップ１５０８に戻り、対象フレームがリピート不可フレームである場合（ステップ１５０８、リピート不可フレーム）、そのフレームに対するリピート処理は行わず、ステップ１５０６に戻り、次の受信フレームを待機する。
【００８８】
このような構成により、各中継局は、受信したフレームの種別を判別し、中継が必要なフレームのみを中継することができる。尚、上記実施例では、中継局２つと、スレーブ局５つのネットワーク構成として説明したが、異なる構成のネットワークにおいても同様の処理を行うことで同じ効果を得ることが可能である。
【００８９】
また、このような機能を備えた中継局は、中継するフレームと、中継しないフレームとを設定により切り替えることも可能である。同様に、設定により中継処理を行わない期間（時間）を設けるようにすることも可能である。
【００９０】
さらには、上記の構成において、任意の中継局の中継動作そのものを停止させることも可能である。これにより、中継動作が停止された中継局で区切られた独立ネットワークが存在可能になる。
【００９１】
ネットワーク内の一つの中継局を区切りとして独立ネットワークを構成した一例が図１６に示されている。同図において、基本的構成は先に説明した図１０並びに図１１と同様であるため、同じ構成要素には同じ符号を付与し、説明を省略する。図１６においては、ネットワーク支線３２上にサブマスタ（副マスタ）局６０を設置した点において図１０並びに図１１のネットワーク構成と異なる。このようなネットワーク構成において、ネットワーク支線３２上の中継局５０ａにおける中継動作を停止するように設定することによって、中継動作が停止された中継局５０ａで区切られた独立ネットワークを構成することが可能となる。より詳細には、同図のネットワークにおいて、中継局５０ａにて区切られているネットワーク支線３２と、そのネットワーク支線３２上に設置されているスレーブ局４０ｄ、スレーブ局４０ｅ、及び新たに設置されたサブマスタ局６０が独立ネットワークとして構成されている。そして、この、独立ネットワークにサブマスタ局６０が接続されていることで、独立ネットワーク内での高速通信が可能になる。
【００９２】
なお、この独立させたネットワークを再度同一ネットワークに組み込む場合には、サブマスタ局６０から中継局５０ａに対して復帰指示のフレームを送信。中継局５０ａは復帰指示のフレームを受信した場合、マスタ局３０に対して復帰します（しました）というステータスを示すフレームを返信し中継動作を再開する。これにより、ネットワークが復帰する。
【００９３】
また、上記の復帰方法の場合、復帰するまでに時間かかってしまう場合がある。この場合、中継動作を停止させる対象中継局（この例では中継局５０ａ）の上位ポートにおいて、特定のフレームを受信した時から一定時間のみ中継動作を停止するように設定しても良い。そのような構成とすることで、通常はネットワークの一部として動作し、所定のフレームをマスタ局から受信した場合、所定期間中継動作を停止させ、ネットワークから切り離された独立ネットワークが構成される。そして、中継局が中継動作を停止している期間のみサブマスタ６０が動作するように設定すれば、独立ネットワークとして所定期間動作し、期間の満了とともに中継動作を再会し、通常のネットワークに戻ることが可能となる。このようにして、中継局にて区切られた独立ネットワークを効率よく形成し、その独立ネットワーク内での高速通信が実現され、通常のネットワークへの復帰も容易となる。
【００９４】
次に、本発明が適用されたネットワークにおける通信フレームの流れを、図１７〜２０を参照しつつ説明する。図１７は先に従来例の説明にて用いたネットワークのシステム構成図であるが、同じシステム構成に本発明を用いた場合を以下に説明する。言うまでもないが、図１７の構成については既に従来例の説明にて詳細に説明しているため、ここでの説明は省略する。
【００９５】
このような構成のネットワークシステムにおけるマスタ局の動作を図１８に示されるフローチャートを参照して説明する。同図にて示されるように、マスタ局は先ずＢＦ（Beaconフレーム）の送信を行う（ステップ１１０１）。このＢＦは、所定間隔毎に一斉同報的に送信され、各スレーブ局に、マスタ局からの送信経路上に中継局が何段（何個）存在するかを通知する働きを有する。続いて、トリガフレームの送信を行う（ステップ１１０２）。このトリガフレームは、特定のアドレスに対して送信されるものであり、対象スレーブ局にて受信後にＣＮフレームを送信するようにとの指示が含まれている。そのため、マスタ局は、トリガフレームの送信後、スレーブ局からＣＮフレームが返信されて来たかを確認する（ステップ１１０３）。ここで言うＣＮフレームとは、マスタ局が送信するトリガフレームに対するスレーブ局の応答フレームのことである。マスタ局は、このＣＮフレームを返信してきたスレーブに対して以下の加入処理を行う。ＣＮフレームが返信されてきている場合（ステップ１１０３，ＹＥＳ）、ＣＮフレームの送信元であるスレーブ局の加入処理を行う。この加入処理として、スレーブ情報の読み出し処理を行うStatusReadフ
レームを送信する（ステップ１１０４）。この読み出し処理には、同図のフローチャートでは省略しているが、対象スレーブ局へのStatusReadの送信と、その応答の受信が実行される。そして、スレーブ局からの応答に含まれる対象スレーブ局の種別情報や対応するスレーブの中継局通過段数の読み出し処理が行われる。この読み出し処理で得られたスレーブ局情報によってマスタ局はネットワーク構成を把握し、その情報を基に、タイムドメインの作成を行う。そして、加入処理のもう一つの処理として、StatusWriteによるスレーブに対する情報書き込み処理（ステップ１１０５）が行われる。この書き込み処理においても、同図のフローチャートでは省略しているが、StatusWriteの対象スレーブ局への送信処理が行われている。このStatusWriteには、作成されたタイムドメインが含まれており、スレーブ局側にてそのタイムドメインにて指定されるタイミングで応答処理を行うようにスレーブ局側に指示するものである。これらの処理が終了すると、またステップ１１０１に戻る。
【００９６】
次に、スレーブ局側の動作を図１９を参照して説明する。マスタ局からのＢＦにより、先に説明した方法を用いてフレームの伝送速度及び自己の中継局通過段数を把握する（ステップ１２０１）。そして、この把握処理が完了したらマスタ局からのトリガフレームを受信できる状態に遷移する（ステップ１２０２）。マスタ局からのトリガフレームの受信有無の確認が行われる（ステップ１２０３）。このとき、トリガフレームの受信が確認できなければ（ステップ１２０３，ＮＯ）、トリガフレームを受信するまで待機する。マスタ局からのトリガフレームの受信が確認できたら（ステップ１２０３，ＹＥＳ）、そのトリガフレームが自局宛であるかどうか（自分がＣＮ応答該当ノードであるかどうか）を識別する（ステップ１２０４）。このとき、自分がＣＮ応答該当ノードでなければ（ステップ１２０４，ＮＯ）、ステップ１２０３に戻り、次のトリガフレームを待つ。そして、自分がＣＮ応答該当ノードである場合（ステップ１２０４，ＹＥＳ）、マスタ局に対してＣＮフレームの返信を行う（ステップ１２０５）。続いて、マスタ局からのStatusReadの受信を待つ（ステップ１２０６及びステップ１２０６，ＮＯ）。マスタ局からのStatusReadを受信したら（ステップ１２０６，ＹＥＳ）、受信したStatusReadに対して、自局中継局通過段数を応答としてマスタ局に返信する（ステップ１２０７）。続いて、マスタ局からのStatusWriteの受信を待つ（ステップ１２０８及びステップ１２０８，ＮＯ）。マスタ局からのStatusWriteを受信したら（ステップ１２０８，ＹＥＳ）、StatusWriteのパラメータで加入状態に遷移するとともに、タイムドメインの反映を行う（ステップ１２０９）。このタイムドメインの反映とは、マスタ局にて作成されたタイムドメインにおいて指定される応答タイミングで応答フレームを送信するように自局を設定するものである。
【００９７】
以上のようにして、マスタユニットとすべてのスレーブユニットについてイニシャル処理が終了したら、Ｉ／Ｏ情報を交換する通信サイクルが以下のように実行される。マスタユニットは、出力データを含んだ要求フレームをスレーブに対して一斉同報する。それぞれのスレーブユニットは、マスタユニットから受信したタイムドメインに基づいて入力データを含んだ応答フレームを順番に送信する。すべてのスレーブユニットが応答フレームを送信した後、マスタユニットは再度要求フレームを一斉同報し、Ｉ／Ｏ情報交換の通信サイクルを繰り返す。
【００９８】
図１７にて示される４つの観測点Ａ〜Ｄにおいて、マスタ局が送信する要求フレームと各スレーブ局が応答する応答フレームを時系列的に示す動作モデルが図２０に示されている。同図にて示されるように、観測点Ａにおいては、マスタ局からの要求フレームに加え、各スレーブ局からの応答フレームが知見されているが、その他の観測点Ｂ，Ｃ，Ｄにおいては、マスタ局からの要求フレームと、ネットワーク構成において各観測点より下流に位置するスレーブ局からの応答フレームのみ知見され、図２１に示した従来例のように、不要なフレームの中継がなされていないことが明確である。
【００９９】
この実施形態においては、各中継局は、応答フレームは下流から上流のみに中継するように設定されており、かつ応答フレームの間隔を観測点Ａで最小化できるように、各応答フレームは通過する中継局数分のリピータ遅延時間だけ早く応答するように設定されている。このような設定により、観測点Ａにおける応答フレームの間隔を最小化でき、図２０にて示されるように、各応答フレームにおいて、リピータ遅延の低減化が実現されている。
【０１００】
各スレーブ局における応答フレームの送信タイミングは、
要求フレーム受信後の該当スレーブ局応答フレーム送信開始時間
＝該当スレーブ局の応答フレームの観測点Ａでの位置
−要求フレーム到着遅延
−該当スレーブ局応答フレームが観測点Ａまで到着するまでの時間
＝該当スレーブ局の応答フレームの観測点Ａでの位置
−リピータ遅延×該当スレーブまでのリピータ（中継局）段数×２
となる。
【０１０１】
このとき、通信サイクルは、
通信サイクル＝
要求フレーム時間＋リピータ遅延×最大リピータ段数
＋（応答フレーム時間）×スレーブ数
となる。
【０１０２】
よって、従来例に比べて「リピータ遅延×最大リピータ段数×（２×スレーブ数−１）」の分だけ、通信サイクルは高速になる。
【０１０３】
尚、従来の技術を用いた通信ネットワークと、同じネットワーク構成を有し、本発明を適用した通信ネットワークとのサイクルタイムの比較を行ったところ、従来例では１．８ｍｓであったサイクルタイムが、本発明を適用することによって、１．２ｍｓまで短縮できた。
【産業上の利用可能性】
【０１０４】
以上の説明で明らかなように、本発明によれば、ネットワーク上で送信される通信フレームが中継局を通過するたびに発生するリピータ遅延を低減化し、通信サイクルを高速化した通信ネットワークを提供することが可能となる。
【図面の簡単な説明】
【０１０５】
【図１】通信マスタ局、通信スレーブ局、及び中継局を含むＰＬＣシステムの構成図である。
【図２】通信マスタ局のハードウェア構成図である。
【図３】通信スレーブ局のハードウェア構成図である。
【図４】中継局のハードウェア構成図である。
【図５】ＢＥＡＣＯＮフレームのフレーム構成図である。
【図６】通信フレームの送受信の模式図である。
【図７】中継局のＢＦ受信時の処理フローチャートである。
【図８】スレーブ局のＢＦ受信時の処理フローチャートである。
【図９】通信フレームのフレーム構成図である。
【図１０】マスタ局からスレーブ局へのフレーム送信を説明する図である。
【図１１】スレーブ局からマスタ局へのフレーム送信を説明する図である。
【図１２】従来技術のネットワーク占有率を説明する図である。
【図１３】本発明におけるネットワーク占有率を説明する図である。
【図１４】中継局の動作を説明するための機能ブロック図である。
【図１５】中継局の処理を示すフローチャートである。
【図１６】サブマスタ局を用いた独立ネットワークの構成を説明する図である。
【図１７】中継局段数を２段で構成したネットワークのシステム構成図である。
【図１８】マスタ局のイニシャル処理のフローチャートである。
【図１９】スレーブ局のイニシャル処理のフローチャートである。
【図２０】中継局２段構成での各観測点におけるフレーム動作モデル（本発明）である。
【図２１】中継局２段構成での各観測点におけるフレーム動作モデル（従来例）である。
【符号の説明】
【０１０６】
１        ＰＬＣ
２        スレーブ局
３        ＰＣ
４        中継局
５        終端装置
６        フィールドバス
７        Ｉ／Ｏ機器
１０      通信マスタユニット
２０      ＣＰＵユニット
３０      マスタ局
３１      ネットワーク幹線
３２      ネットワーク支線その１
３３      ネットワーク支線その２
４０ａ〜４０ｅ  スレーブ局
５０ａ、ｂ      中継局
６０      サブマスタ局
７０      マスタ
８０ａ〜８０ｄ      スレーブ
９０ａ〜９０ｄ      中継局
１０１      通信Ｉ／Ｆ
１０２      マスタ用ＡＳＩＣ
１０３      ＲＡＭ
１０４      ＣＰＵ
１０５      ＥＥＰＲＯＭ
１０６      ＬＥＤ表示器
１０７      設定ＳＷ
１０８      内部バスＩ／Ｆ
２０１      通信Ｉ／Ｆ
２０２      スレーブ用ＡＳＩＣ
２０３      ＣＰＵ
２０４      ＥＥＰＲＯＭ
２０５      ＬＥＤ表示器
２０６      設定ＳＷ
２０７      Ｉ／Ｏ部
２０８      電源
４０１      通信Ｉ／Ｆ
４０２      通信Ｉ／Ｆ
４０３      リピータ用ＡＳＩＣ
４０４      電源
４０５      ＬＥＤ表示器
４０６      設定ＳＷ
４０７      ＣＰＵ
４１１      上位ポート
４１２      スタートコード検出部
４１３      データバッファリング部
４１４      フレーム種別識別部
４１５      下位リピートコントロール部
４１６      リピートフレーム生成部
４１７      下位ポート
４１８      スタートコード検出部
４１９      データバッファリング部
４２０      フレーム種別識別部
４２１      上位リピートコントロール部
４２２      リピートフレーム生成部
５０１      ＢＦ識別ヘッダ
５０２      中継局アドレス
５０３      中継局カウンタ
５０４      伝達速度
９０１      スタートコード
９０２      フレーム識別ヘッダ
９０３      フレームデータ
９０４      チェックコード
【図１】
2007244000.tif 000003
【図２】
2007244000.tif 000004
【図３】
2007244000.tif 000005
【図４】
2007244000.tif 000006
【図５】
2007244000.tif 000007
【図６】
2007244000.tif 000008
【図７】
2007244000.tif 000009
【図８】
2007244000.tif 000010
【図９】
2007244000.tif 000011
【図１０】
2007244000.tif 000012
【図１１】
2007244000.tif 000013
【図１２】
2007244000.tif 000014
【図１３】
2007244000.tif 000015
【図１４】
2007244000.tif 000016
【図１５】
2007244000.tif 000017
【図１６】
2007244000.tif 000018
【図１７】
2007244000.tif 000019
【図１８】
2007244000.tif 000020
【図１９】
2007244000.tif 000021
【図２０】
2007244000.tif 000022
【図２１】
2007244000.tif 000023