JP2007244000A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2007244000A5 JP2007244000A5 JP2007167281A JP2007167281A JP2007244000A5 JP 2007244000 A5 JP2007244000 A5 JP 2007244000A5 JP 2007167281 A JP2007167281 A JP 2007167281A JP 2007167281 A JP2007167281 A JP 2007167281A JP 2007244000 A5 JP2007244000 A5 JP 2007244000A5
- Authority
- JP
- Japan
- Prior art keywords
- station
- frame
- relay
- slave
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004891 communication Methods 0.000 claims description 166
- 230000004044 response Effects 0.000 claims description 95
- 238000000034 method Methods 0.000 claims description 41
- 230000005540 biological transmission Effects 0.000 claims description 38
- 230000000875 corresponding Effects 0.000 claims description 26
- 239000000284 extract Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 18
- 238000011144 upstream manufacturing Methods 0.000 description 8
- 238000001514 detection method Methods 0.000 description 7
- 230000001629 suppression Effects 0.000 description 7
- 230000003139 buffering Effects 0.000 description 6
- 238000007493 shaping process Methods 0.000 description 4
- 230000003321 amplification Effects 0.000 description 3
- 230000002457 bidirectional Effects 0.000 description 3
- 238000003199 nucleic acid amplification method Methods 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 2
- 230000003111 delayed Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000001404 mediated Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000001131 transforming Effects 0.000 description 1
Description
本発明は、バス型ネットワークにおいて、ネットワークを管理するマスタ局、I/O機器を接続するスレーブ局、及び通信フレームを整形・増幅する中継局とから構成されるFA機器等を制御する通信システムに関するものである。
単一のマスタ局と複数のスレーブ局及び複数の中継局とから構成されるプログラマブルコントローラ(PLC)のリモートI/Oネットワークは既に知られている。そのネットワーク例が図17に示されている。
同図にて示されるように、このネットワークシステムはマスタ局70とスレーブ局80a〜d(スレーブ#1〜4)と中継局90a〜d(リピータ#1〜4)とから概略構成されており、中継局(リピータ)段数は2段として構成されたネットワークである。
PLCは、ユーザプログラムを実行する制御ユニット(CPUユニット20)、入力機器や出力機器(以下、両機器の総称としてI/O機器という)を接続した入出力ユニット(I/Oユニット)、リモートI/Oネットワークを接続してスレーブ局との間で入出力データ(I/Oデータ)を通信する通信マスタユニットなどの各ユニットが結合して構成されている。
マスタ局70というのは、1組のプログラマブルコントローラに相当すると捉えても良いし、PLCの通信マスタユニット10が該当すると捉えても良い。同図では、プログラマブルコントローラをマスタ局10として表している。
このネットワークはバス型ネットワークとして構成されており、マスタ局はネットワークを管理するものであり、プログラマブルコントローラに組み込まれている。
スレーブ局はI/O機器(図示せず)を接続していて、マスタ局から受信した通信フレームに格納されたOUTデータに基づいて出力機器を制御し、また、マスタ局からの要求に応答して、入力機器から取り込んだINデータを応答フレームに格納してマスタ局へ返信するものである。
中継局はネットワーク上で送受信される通信フレームに対して波形整形及び増幅処理を行うものである。このことから、マスタ局から各スレーブ局へと送信される要求フレームや各スレーブ局からの応答フレームが通信される際に、中継局を通過するたびに整形・増幅処理を経るため、整形・増幅処理に要する一定時間の遅延(リピータ遅延)が発生してしまう。
図17にて示される観測点A,B,C,Dにおいて、マスタ局が送信する要求フレームと各スレーブ局が応答する応答フレームを時系列的に示す動作モデルが図21にて示されている。
図17にて示されるように、スレーブ局#1は、中継局を介さずにマスタ局に接続されている。そのため、図21の観測点Aにおけるスレーブ局80aの応答は、リピータ遅延が生じないため、マスタ局からの要求フレームの終了と共に、スレーブ局1からの応答フレームが送信されている。
それに対し、スレーブ局2とマスタ局との間には中継局が存在しており、スレーブ局3及び4はマスタ局との間に中継局が2つずつ存在している。そのため、スレーブ局2,3,4に送信される要求フレームは中継局を通過するたびにリピータ遅延が発生し、それらのスレーブ局からの応答フレームも同様に中継局を通過するたびにリピータ遅延が発生してしまう。
そのため、従来は、中継局で生じてしまうリピータ遅延を考慮して、同図にて示されるように、各スレーブの応答に隙間を空けて応答同士が衝突しないようにしていた(例えば特許文献1参照)。
同様に、図17にて示される観測点B,C,Dにおいてもリピータ遅延に対応するために、図21にて示されるように各スレーブ局の応答フレームの送信には所定時間の間隔を空けて送信するようにしていた。
また、同システムはバス型システムであるため、中継局は、上流、下流に流れる全ての通信フレームを中継するものである。図17にて示されるようなシステム構成においては、スレーブ局#3の応答フレームは4つの中継局(中継局90d、90c、90a、90b)を介して、マスタ局や他のスレーブ局に到着し、スレーブ局#4にも到着することとなる。この際、スレーブ局#4に到着するのは「リピータ遅延×4」時間後となる。このため、全てのスレーブ局からの応答フレームの衝突を回避するためには、観測点Aにおいて応答フレームの間隔を平均で「リピータ遅延×4」に相当する時間の隙間をあける必要が生じていた。そのため、通信サイクルは、
通信サイクル
=要求フレーム時間
+(応答フレーム時間+リピータ遅延×最大リピータ段数×2)
×スレーブ数
となる。
通信サイクル
=要求フレーム時間
+(応答フレーム時間+リピータ遅延×最大リピータ段数×2)
×スレーブ数
となる。
さらに、上述のように、従来の中継局は上流、下流に流れる全ての通信フレームを中継するものであった。より詳細には、例えば、図21にて示されるスレーブ局#1から発信される応答フレームは、マスタ局に送信されるだけではなく、中継局を介して他のスレーブ局#2,3,4にも中継されていた。このことは、観測点A,B,C,Dの全てにおいてスレーブ局#1からの応答フレームが知見されていることから明らかである。同様に、全ての観測点A,B,C,Dにおいて、全てのスレーブ局からの応答フレームが知見されている。
特開2004−280304号公報
従来の方法では、各中継局にて発生するリピータ遅延を考慮して各スレーブ局の応答に隙間を空けて応答同士が衝突しないようにしているため、各スレーブ局の応答の隙間分、通信サイクルが増大してしまうという問題が生じていた。
本発明は、上述の問題点に着目してなされたものであり、その目的とするところは、通信サイクルを増大させることなく、各スレーブ局の応答同士が衝突しないようにすることのできる通信システム、通信システムにおける通信制御方法、スレーブ局、及びスレーブ局の送信制御方法を提供することにある。
本発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
上述の技術的な課題は、以下の構成を有する通信システム、通信システムにおける通信制御方法、スレーブ局、及びスレーブ局の送信制御方法により解決することができるものと考えられる。
すなわち、本発明に係る通信システムは、通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するI/Oターミナル装置である2以上のスレーブ局とがネットワークにて結ばれ、ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、1段又は2段以上に亘って、リピータとして機能するとともに、中継処理をする際に中継局が存在しない場合に比べて遅延時間が生じてしまう中継局が介在されている通信システムを前提とする。
そして、上記のシステムにおいて、各スレーブ局は、マスタ局までの経路上における通過中継局数の情報を含むタイムドメイン情報を記憶する記憶部と、マスタ局から一斉同報にて送信される要求フレームに対して応答フレームの送信が要請されている場合に、応答フレームを自己の順番でマスタ局へ対して送信し、かつその応答フレームを送信するタイミングを記憶部に記憶されたタイムドメイン情報の通過中継局数分の遅延時間に応じて早くする送信処理部とを有している。
このような構成によれば、各スレーブ局における応答タイミングは、記憶部に記憶されたタイムドメイン情報の通過中継局数分の遅延時間に応じて早められるため、各中継局における中継遅延時間の存在及び通過中継局数に拘わらず、マスタ局が接続される通信幹線上に於ける各スレーブ局からのフレーム同士の間隔は所期の間隔に維持されるから、各スレーブ局の応答同士が衝突することを回避しつつ、通信サイクルの増大を抑制することができる。
このとき、各スレーブ局が、送信処理部において、応答フレームを送信するタイミングをタイムドメイン情報の通過中継局数分の遅延時間に応じて早くすることによって、マスタ局は、各スレーブ局からの応答フレームを隙間なく受信できるようにすれば、各中継局における中継遅延時間の存在及び通過中継局数に拘わらず、各スレーブ局の応答同士が衝突することを回避しつつ、通信サイクルを最短として、この種の通信システムに於ける通信速度を向上させることができる。
本発明に係る通信システムの好ましい実施の形態においては、各スレーブが送信する応答フレームは、スレーブ局に接続された入力機器から入力したINデータをマスタ局へと返信するためのインフレームとされる。
このような構成によれば、この種のマスタスレーブ通信システムを採用するPLCシステムにおける入出力応答特性を向上させることができる。
本発明に係る通信システムの好ましい実施の形態においては、マスタ局は、各スレーブ局に対して特定の通信フレームを送信し、その特定の通信フレームに対する各スレーブ局からの応答フレームから通過中継局数を読み出し、読み出された通過中継局数に基づいて、各スレーブ局がマスタ局からの通信フレームに対する応答フレームの返信タイミングを設定するためのタイムドメインをそれぞれ計算し、各スレーブ局に対してそのタイムドメインを書き込む、といった処理を行う処理手段を有する、ように構成される。
このような構成によれば、通過中継局数の探査、タイムドメインの計算、及び各スレーブ局に対するタイムドメインの書き込みは、いずれもマスタ局の主導の元に行われるため、ユーザにとって面倒な設定が一切不要となり、使い勝手が良好となる。
このとき、各スレーブ局における前記タイムドメインが、マスタ局において読み出した通過中継局数に基づいて複数の応答フレームを隙間なく受信できるようにマスタ局にて計算されるものであれば、各中継局における中継遅延時間の存在及び通過中継局数に拘わらず、各スレーブ局の応答同士が衝突することを回避しつつ、通信サイクルを最短として、この種の通信システムに於ける通信速度を向上させることができる。
また、このとき、マスタ局からスレーブ局に対して送信される特定の通信フレームは、通過した中継局のアドレス値の情報と中継局段数の情報とを含むことができるものであり、中継局は、前記特定の通信フレームが通過する際に、自局のアドレス値の情報と中継局段数に+1加算した値の情報とをその特定の通信フレームに含ませる処理を行うものであり、スレーブ局は、前記特定の通信フレームから、自局の上位側に隣接する中継局のアドレス値の情報と、中継局段数の情報とを取り出す処理と、マスタ局への応答フレームに、前記特定の通信フレームから読み出した自局の上位側に隣接する中継局のアドレス値の情報と中継局段数の情報とを含ませる処理とを行うものであれば、マスタ局側におけるタイムドメインの計算がより容易となる。
別の一面から見た本発明は、同様な特徴事項を備えたスレーブ局として捉えることもできる。すなわち、この発明に係るスレーブ局は、通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するI/Oターミナル装置である2以上のスレーブ局とがネットワークにて結ばれ、ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、1段又は2段以上に亘ってリピータとして機能し、かつ中継処理をする際に中継局が存在しない場合に比べて遅延時間が生じる中継局が介在されている通信システムにおけるスレーブ局であります。
このスレーブ局は、マスタ局までの経路上における通過中継局段数の情報を含むタイムドメイン情報を記憶する記憶部と、マスタ局から一斉同報にて送信される要求フレームに対して応答フレームの送信が要請されている場合、応答フレームを自己の順番で送信し、その応答フレームを送信するタイミングを、前記タイムドメイン情報の通過中継局数分の遅延時間に応じて早くする送信処理部を有する、ものである。
別の一面から見た本発明は、同様な特徴事項を備えたスレーブ局の送信制御方法として捉えることもできる。すなわち、この発明に係るスレーブ局の送信制御方法は、通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するI/Oターミナル装置である2以上のスレーブ局とがネットワークにて結ばれ、ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、1段又は2段以上に亘ってリピータとして機能し、かつ中継処理をする際に中継局が存在しない場合に比べて遅延時間が生じてしまう中継局が介在されている通信システムにおけるスレーブ局の送信制御方法であります。
このスレーブ局の送信制御方法は、各スレーブ局は、マスタ局までの経路上における通過中継局数の情報を含むタイムドメイン情報を記憶し、マスタ局から一斉同報にて送信される要求フレームを受信し、それに対して応答フレームを自己の順番でマスタ局へ対して送信する際に、その応答フレームを送信するタイミングを前記タイムドメイン情報の通過中継局数分の遅延時間に応じて早くする、ものである。
別の一面から見た本発明は、同様な特徴事項を備えた通信システムにおける通信制御方法として捉えることもできる。すなわち、この通信システムにおける通信制御方法は、通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するI/Oターミナル装置である2以上のスレーブ局とがネットワークにて結ばれ、ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、1段又は2段以上に亘って、リピータとして機能しかつ中継処理をする際に中継局が存在しない場合に比べて遅延時間が生じてしまう中継局が介在されている通信システムにおける通信制御方法である。
この通信システムにおける通信制御方法において、各スレーブ局は、マスタ局までの経路上における通過中継局数の情報を含むタイムドメイン情報を記憶し、マスタ局は、各スレーブ局に対して要求フレームを一斉同報にて送信し、各スレーブ局は、マスタ局からの要求フレームを受信し、その要求フレームに対して応答フレームを自己の順番でマスタ局へ対して送信する際に、その応答フレームを送信するタイミングを前記タイムドメイン情報の通過中継局数分の遅延時間に応じて早くし、マスタ局は、各スレーブ局からの応答フレームを隙間なく受信する、ものである。
上述のスレーブ局、スレーブ局における送信制御方法、及び通信システムにおける通信制御方法によれば、各スレーブ局における応答タイミングは、記憶部に記憶されたタイムドメイン情報の通過中継局数分の遅延時間に応じて早められるため、各中継局における中継遅延時間の存在及び通過中継局数に拘わらず、マスタ局が接続される通信幹線上に於ける各スレーブ局からのフレーム同士の間隔は所期の間隔に維持されるから、各スレーブ局の応答同士が衝突することを回避しつつ、通信サイクルの増大を抑制することができる。
以上の説明で明らかなように、本発明によれば、各スレーブ局における応答タイミングは、記憶部に記憶されたタイムドメイン情報の通過中継局数分の遅延時間に応じて早められるため、各中継局における中継遅延時間の存在及び通過中継局数に拘わらず、マスタ局が接続される通信幹線上に於ける各スレーブ局からのフレーム間隔は所期の間隔に維持されるから、各スレーブ局の応答同士が衝突することを回避しつつ、通信サイクルの増大を抑制することができる。
以下に、この発明に係る通信システム、通信システムにおける通信制御方法、スレーブ局、及びスレーブ局の送信制御方法の好適な実施の一形態を添付図面を参照しながら詳細に説明する。
通信マスタ局及び通信スレーブ局を含むPLCシステム全体の構成図が図1に示されている。同図に示されるように、このPLCシステムは、通信マスタ局となる通信機能を有するPLC装置1と、通信スレーブ局となる複数台の通信機能を有するI/Oターミナル装置2,2・・・とを、バス型ネットワークであるフィールドバス6により繋いで構成されている。
なお、図において、3はパソコンを利用した設定装置であり、PLC装置1、マスタユニット10、通信スレーブ局、中継装置4などのネットワーク上においてノードとなる各装置・機器に対して、各種の設定を行う機能を持つものであり、「設定ツール装置」や「ネットワークコンフィギュレータ」などと称されることもある。4は中継装置として機能するリピータ、5はフィールドバスの終端における反射を低減する終端装置である。
図示のPLC装置1としては、パラレルバスの敷設された図示しないバックプレーン上に多数のコネクタを配置し、それらのコネクタに対して、CPUユニット、I/Oユニット、その他各種の高機能ユニット等々を任意に装着可能とした所謂ビルディングブロック型のPLC装置が採用されている。そして、特に、この例では、バックプレーン上の1のコネクタに対して通信マスタユニットを装着することにより、「通信機能を有するPLC装置」が構成されている。図では、それらのユニットのうちで、CPUユニット20及び通信マスタユニット10のみに参照符号が付されている。
通信マスタユニット10の内部構成を示すハードウェア構成図が図2に示されている。同図に示されるように、通信マスタユニット10は、通信物理層として機能する通信インタフェース(通信I/F)101と、所望の通信機能を実現するための回路をLSI化してなるマスタ用ASIC102と、CPUユニット20との間で受け渡される送受信データのバッファエリアや、後述するCPU104の演算用ワークエリア等として機能するRAM103と、マイクロプロセッサを主体として構成されて装置全体を統括制御するためのCPU104と、各種の設定データが格納される不揮発性メモリ(EEPROM)105と、各種の動作表示等を行うためのLED表示器106と、各種の設定操作等に使用される設定スイッチ107と、CPUユニット20へ通ずる内部バスへのインタフェースとして機能する内部バスインタフェース(内部バスI/F)108とを含んでいる。
当業者にはよく知られているように、この種のPLCシステムにおいては、CPUユニット20は、共通処理、I/Oリフレッシュ処理、ユーザプログラム実行処理、周辺サービス処理等を繰り返し一巡実行しており、I/Oリフレッシュ処理の実行の際には、バックプレーン上に装着されたローカルI/Oユニットとの間のみならず、通信マスタユニット10内のRAM103との間においても、I/Oリフレッシュ処理を実行する。
具体的には、CPUユニット20のI/Oメモリ内のOUTデータは、通信マスタユニット10のRAM103内のOUTエリアに書き込まれ、同RAM103のINデータは、CPUユニット20のI/Oメモリ内のINエリアに書き込まれる。
一方、後に詳細に説明するように、通信マスタユニット10と各I/Oターミナル装置2との間では、CPUユニット20のI/Oリフレッシュ動作とは非同期にフィールドバス6を介する通信が行われており、これにより各I/Oターミナル装置2と通信マスタユニット10内のRAM103との間においても、一種のI/Oリフレッシュ処理が実行される。
具体的には、I/Oターミナル装置2から受信されたINデータは、通信マスタユニット10内のRAM103のINエリアに書き込まれ、CPUユニット20はI/Oリフレッシュ動作により通信マスタユニット10から取り込む。そしてCPUユニット20はINデータをもとにユーザプログラムを実行し、その実行結果をOUTデータとする。CPUユニット20はI/Oリフレッシュ動作によりOUTデータを通信マスタユニット10へ送り出す。通信マスタユニット10はOUTデータを同RAM103のOUTエリアに格納する。そして通信マスタユニット10は、I/Oリフレッシュとは非同期に、同RAM103のOUTエリアのOUTデータを、該当するI/Oターミナル装置2へ送信する。
このようにして、CPUユニット20内のI/Oメモリと各I/Oターミナル装置2,2・・との間において、通信マスタユニット10を経由してI/Oリフレッシュ処理が実行され、その結果として、リモート設置された各I/Oターミナル装置2,2・・・に接続されたI/O機器をCPUユニット20で制御することが可能となるのである。
次に、I/Oターミナル装置内部のハードウェア構成図が図3に示されている。同図に示されるように、I/Oターミナル装置2は、通信物理層として機能する通信インタフェース(通信I/F)201と、所望の通信機能を実現するための回路をLSI化してなるスレーブ用ASIC202と、マイクロプロセッサを主体として構成されて装置全体を統括制御するためのCPU203と、各種の設定データが格納される不揮発性メモリ(EEPROM)204と、各種の動作表示等を行うためのLED表示器205と、各種の設定操作等に使用される設定スイッチ206と、I/O機器7との間でデータをやり取りするためのI/O部207と、装置全体に安定化直流電源を供給するための変圧機能を有する直流電源部208とを含んでいる。
そして、通信マスタユニット10と各I/Oターミナル装置2との間では、通信マスタユニット10を通信マスタ局、各I/Oターミナル装置2を通信スレーブ局とする1対Nのマスタ・スレーブ通信を通じて、I/Oデータのやり取りが行われる。
具体的には、通信マスタユニット10から受信されるOUTデータは、I/Oターミナル装置2のI/O部207を介してI/O機器7(出力機器)へと送り出され、I/O機器7(入力機器)からI/O部207を介してI/Oターミナル装置2に取り込まれたINデータは、通信マスタユニット10へ宛てて送信される。
次に、中継装置として機能するリピータ内部のハードウェア構成図が図4に示されている。同図に示されているように、リピータ4は、マスタ側とスレーブ側とにそれぞれ接続される通信インタフェース401,402と、両通信インタフェース401,402間に実装され、伝送されるデータ(信号)に対して所定の処理を行うリピータ用ASIC403と、マイクロプロセッサを主体として構成されて装置全体を統括制御するためのCPU407とを備えている。さらに、入力電圧(24V)を5Vに降圧し、リピータ4内の各素子に電源供給する電源部404を備えている。さらにまた、動作状態(通信状態)や異常/正常などを示すLED表示部405並びにノードアドレスの設定などを行うための設定スイッチ406を備えている。
先に、図1を参照しつつ説明した通信マスタ局(M)、通信スレーブ局(S)、中継局(R)は、PLCシステムのネットワーク上で固有のアドレスを保持しており、各機器の個別識別は、このアドレスにより行われる。そして、ネットワークの立ち上げ管理から通常通信に至るまでには、以下に説明するネットワーク構成情報教示方法が適用される。
先ず、マスタ局(M)から一斉同報送信(1対N通信)される第1のフレームを媒介として、中継局(R)から中継局(R)及び中継局(R)からスレーブ局(S)へと局アドレスを受け渡すことで、中継局(R)及びスレーブ局(S)のそれぞれに、ネットワーク内における「自局の上位側隣接局情報」を生成保存させる動作が行われる。
この動作は、電源投入時等のように、マスタ局がネットワークに接続された中継局並びにスレーブ局を認識する以前の段階で行ってもよいし、ネットワーク運用中のように、マスタ局がネットワークに接続された中継局並びにスレーブ局を認識したのちの段階で随意に行ってもよい。
この実施形態では、ネットワーク構成情報教示方法には、探索フレーム(一般にSolicitFrame又はBeaconFrame等と呼ばれるものが該当する。以下、BeaconFrameと記述し、BFと略記するがいずれもSolicitFrameを含む意味である)が使用される。BFのフレームフォーマットを示す構成図が図5に示されている。
同図に示されるように、フィールドバス6を流れるBFには、BFであることを識別するためのBF識別ヘッダ501と、中継局を通過するたびにその中継局のアドレス値により更新される中継局アドレス502と、中継局を通過するたびにその値が+1インクリメントされる中継局カウンタ503と、BFの通信転送速度を示す伝達速度504とが少なくとも含まれている。
通信マスタ局(M)は、BFがネットワークに接続されている全ての中継局及び通信スレーブ局(S)に伝わるようにBFを一斉同報送信する。すると、一斉同報送信されたBFは、直接にスレーブ局(S)へ、又は、1もしくは2段以上の中継局を経由してスレーブ局へと到達する。このとき、各経路を流れるBFはその経路の線路遅延時間、及び通過中継局の中継遅延時間をもって僅かに遅れるものの、全体としてはほぼ同時刻に各中継局及び各スレーブ局に到達すると考えることができる。
フレームの送受信の模式図が図6に示されている。同図に示されるように、マスタ局(アドレス10)からは、中継局アドレスの値が「10」及び中継局カウンタの値が「0」の状態にあるBFがネットワーク上に一斉同報送信される。
この一斉同報送信されたBFを中継局(アドレス100)がその上位ポートから受信すると、BF内の中継局アドレス502の値「10」及び中継局カウンタ503の値「0」はBFから読み出され、中継局(アドレス100)内のメモリに格納保持される。これにより、中継局(アドレス100)は、上位側に1つ隣接する局の局アドレスが「10」であるとして、自局の相対位置を認識することができる。この場合、中継局(アドレス100)が生成する「自局の上位側隣接局情報」の内容は、「自局の上位側隣接局情報」(局アドレス「10」)となる。
その後、BF内の中継局アドレス502の値は、「10」(マスタ局アドレス:上位側へ1つ隣接する局の局アドレス)から「100」(中継局アドレス:自局アドレス)へと置き換えられる。同時に、中継局カウンタ503の値「0」は+1インクリメントされて「1」となる。こうして、中継局アドレス502の値が書き替えられ、かつ中継局カウンタ503の値が+1インクリメントされた新たなBFが、次段に位置するスレーブ局(アドレス101)へとその下位ポートから送信される。
中継局(アドレス100)から送信されたBFをスレーブ局(アドレス101)が受信すると、BF内の中継局アドレス502の値「100」及び中継局カウンタ503の値「1」はBFから読み出され、スレーブ局(アドレス101)内のメモリに格納保持される。これにより、スレーブ局(アドレス101)は、上位側に1つ隣接する局の局アドレスが「100」であるとして、自局の相対位置を認識することができる。この場合、スレーブ局(アドレス101)が生成する「自局の上位側隣接局情報」の内容は、上位側に1つ隣接する局の局アドレスが「100」であるから、「自局の上位側隣接局情報」(局アドレス「100」)となる。
このように、マスタ局から一斉同報送信されるBFを媒介として、マスタ局(アドレス10)から中継局(アドレス100)、中継局(アドレス100)からスレーブ局(アドレス101)へと局アドレスを受け渡すことで、中継局(アドレス100)及びスレーブ局(アドレス101)のそれぞれに、ネットワーク内における自局の上位側隣接局情報と中継局カウンタ値とが生成保存されることなる。
なお、図6に示される例にあっては、マスタ局とスレーブ局との間には中継局が1段しか介在されていないが、それらの局間に2段以上の中継局が介在されていたり、あるいは、マスタ局とスレーブ局との間に中継局が全く介在されていない場合においても、各中継局並びに各スレーブ局の動作は同様である。
中継局のBF受信時の処理フローチャートが図7に示されている。なお、このフローチャートに示される処理は、図4に示されるリピータ4内のCPU407により実行される。
同図において、処理が開始されると、まず、フレーム受信待機処理が実行される(ステップ701)。この状態において、何らかのフレームが受信され(ステップ702YES)、そのフレームのBF識別ヘッダ501に基づいて、そのフレームがBFであると判定されると(ステップ703YES)、以下の処理(ステップ704〜709)が順次に実行される。
先ず、フレームの解析が行われて、当該フレームの構造が認識される(ステップ704)。次いで、フレーム内のアドレス情報(中継局アドレス502)、カウンタ情報(中継局カウンタ503)が読み出され、所定のメモリに格納保持される(ステップ705,706)。次いで、フレーム内のアドレス情報(中継局アドレス502)が自アドレスに置換される(ステップ707)。次いで、フレーム内のカウンタ情報(中継局カウンタ503)が、+1インクリメントされた値で置換される(ステップ708)。最後に、こうして得られた新たなフレームが、下位ポートに出力される(709)。
通信スレーブ局のBF受信時の処理フローチャートが図8に示されている。なお、このフローチャートに示される処理は、図3に示されるI/Oターミナル装置2内のCPU203により実行される。
同図において、処理が開始されると、まず、フレーム受信待機処理が実行される(ステップ801)。この状態において、何らかのフレームが受信され(ステップ802YES)、そのフレームのBF識別ヘッダ501に基づいて、そのフレームがBFヘッダと判定されると(ステップ803YES)、以下の処理(ステップ804〜806)が順次に実行される。
先ず、フレームの解析が行われて、当該フレームの構造が認識される(ステップ804)。次いで、フレーム内アドレス情報(中継局アドレス502)、フレーム内カウンタ情報(中継局カウンタ503)が読み出され、「自局の上位側隣接局情報」として所定のメモリに格納保持される(ステップ805,806)。
このようにして、中継局及びスレーブ局のそれぞれに、ネットワーク内における自局の上位側隣接局情報と中継局カウンタ値とが生成保存され、この情報がマスタ局にフィードバックされることにより、マスタ局にてシステム全体の構成図が把握される。
なお、BFを利用する方法以外にもネットワーク構成情報教示方法はある。例えば、作業者が実際のネットワーク構成から各スレーブ局においてマスタ局との間に介在する中継局の数を確かめ、その結果をマスタ局に登録する方法であっても良い。つまり、設定装置3からマスタ局に対して各スレーブ局の中継局の段数情報を送信して書き込む方法であっても良い。この方法であれば、その後、マスタ局から各スレーブ局に対して中継局の段数情報を送信して書き込むことになる。
他の方法として、例えば、作業者が実際のネットワーク構成から各スレーブ局においてマスタ局との間に介在する中継局の数を確かめ、その結果をスレーブ局に登録する方法であっても良い。つまり、設定装置3から直接的に各スレーブ局に対して、中継局の段数情報を送信して書き込む方法であっても良い。
各スレーブ局に直接的に中継局段数を登録する場合の、別方法としては、スレーブ局に操作ボタンを設け、作業者がスレーブ局の操作ボタンを中継局段数と同じ数だけ押すことで登録できるような方法としても良い。
次に、ネットワーク上の中継局にて生じるリピータ遅延の低減化方法について図9〜16を参照して詳細に説明する。尚、これらの図において、符号30はマスタ局を、40a〜40eはスレーブ局(その1〜5)を、50a及び50bは中継局(その1及び2)を、31はネットワーク幹線を、32はネットワーク幹線から分岐しているネットワーク支線(その1)、そして33はネットワーク幹線から分岐しているネットワーク支線(その2)をそれぞれ示している。
図示のPLCシステムには、以下に説明を行うマスタ局からスレーブ局に対してのみ発せられる専用フレーム(例えば、BeaconFrame, OutFrame, TrgFrame)と、スレーブ局からマスタ局に対してのみ発せられる専用フレーム(例えば、ConnectionFrame, InFrame)と、双方向に発せられるフレーム(例えば、EventFrame)が存在し、中継局においては、それらのフレーム種類が判別されて、必要な方向のみに転送が行われる。
なお、BeaconFrame(ビーコンフレーム)は、前述の探索フレームであり、定期的にマスタ局から送信するもので、送信伝送速度とリピータ通過段数をスレーブ局に通知する働きをなすものである。
OutFrame(アウトフレーム)は、PLCのユーザプログラム実行結果などをOUTデータとし、マスタ局からスレーブ局へ送信するものである。
TrgFrame(トリガフレーム)は、マスタ局からスレーブ局に対してConnectionFrameの返信を要求するためのものである。ConnectionFrame(コネクションフレーム)は、スレーブ局がトリガフレームを受信した場合に、トリガフレームで指定されていた時にマスタ局へ返信するものである。マスタ局は、このConnectionFrameを返送してきたスレーブ局に対して存在確認(図18のステップ1103YES)または加入処理(図18のステップ1104,1105)を行う。
InFrame(インフレーム)は、スレーブ局が入力機器から取り込んだINデータをマスタ局へ送信するものである。
EventFrame(イベントフレーム)は、インフレームとは別に、マスタ局からの要求によりスレーブ局が何らかのデータをマスタ局へ送信するためのフレームである。
図10及び図11にて示されるように、図示のPLCシステムは、バス型ネットワークにおいて、ネットワークを管理するマスタ局30と、I/O等を制御するスレーブ局40と、及び通信フレームを整形・増幅する中継局50とから構成されている。
各フレームの基本構造が図9に示されている。同図に示されるように、各フレームは、フレームが始まることを示すスタートコード901、フレームの種別を示すフレーム識別ヘッダ902、フレームの内容を示すフレームデータ903、及びフレームの正当性を示すチェックコード904(CRCデータ等)の4つの要素少なくとも含むものである。ネットワーク上の中継局50は、このスタートコード901を認識した時点で波形の整形を行い、他方のポートに出力を開始する。この波形の整形を行うことで、ネットワークの敷設距離を延長することが可能とされている。
しかしながら、スタートコード901を判別した段階で中継処理を行った場合、スレーブ局40からマスタ局30宛てに送信するデータも、他のスレーブ局宛てに中継が行われてしまうため、不要な中継セグメントにもデータが送信され、ネットワークの占有効率が低下する。
マスタ局30からスレーブ局40に対してフレーム送信を行う場合が図10に示されている。マスタ局30からスレーブ局40に対してのフレームは一斉同報的なフレームであるため、全てのフレームを同時に中継することで対応が可能である。同図にて示されるように、マスタ局30から発せられるフレームは、スレーブ局40aのみならず、中継局50aを介してスレーブ局40d、そしてスレーブ局40eへも送信される。尚、矢印にて図示していないが、中継局50bを介してスレーブ局40b及びスレーブ局40cにも送信されている。
それに対して、スレーブ局40からマスタ局30に対してのフレーム送信を行う場合が図11に示されている。同図にて示されるように、例えば、スレーブ局40dからマスタ局30に対してフレーム送信する場合、中継局50aがフレームの整形・増幅を行い、マスタ局30に対してフレーム送信を行うのであるが、従来では同時に中継局50bがそのフレームを受信し、下位ポートにフレーム送信を行ってしまっていた。このため、スレーブ局40b及び40cは、マスタ30局に送信できるネットワークの空き時間が確保できずに、ネットワークの通信効率が低下してしまっていた。
上記の場合におけるネットワーク占有率が図12に示されている。同図に示されるように、ネットワーク支線32上に配置されているスレーブ局40dからマスタ局宛のフレームは、ネットワーク支線32から中継局50aによって中継されてネットワーク幹線31へと送り出されてマスタ局30へと送信される。
ところが、マスタ局30へと送信されると共に、ネットワーク支線33上に設置されている中継局50bによって中継され、スレーブ局40bへも送信されてしまう。本来マスタ局宛てであるスレーブ局40dからのフレームがネットワーク支線32と中継局50bを経由してスレーブ局40bへも送信されてしまう。
その結果、ネットワーク支線33上にスレーブ局40dからマスタ局30宛のフレームが中継されることによって余分な占有が生じてしまい、その分スレーブ局40bからマスタ局30宛のフレームの送信が遅れてしまっている。
尚、図示しないが、同様にスレーブ局40bから送信されるマスタ局30宛のフレームも中継局50aを経由してスレーブ局40d及び40eにも送信されてしまい、ネットワーク支線32上に余分なセットワーク占有を発生させていた。
各中継局にて受信するフレームを識別し、不要な中継処理を行わないようにした場合が図13にて示されている。図13と図12とを比較することで明確であるが、スレーブ局40dからマスタ局30宛のフレームを中継局50bが識別し、中継処理を行わないようにすることで、ネットワーク支線33上の余分なネットワーク占有が発生せずに、スレーブ局40bからマスタ局30宛のフレームをスムーズに送信することが可能となっている。
このように、中継局にてフレーム識別ヘッダを判断し、必要な方向のみに中継処理を行うことで、ネットワーク支線33の通信時間が確保でき、スレーブ局40b及び40cが通信可能となり、ネットワーク効率の向上が実現可能である。
ここでは、ネットワーク支線33の通信時間を確保することを記載しているが、他の中継局でも同様の処理を行うことにより、ネットワーク全体の効率が向上されることは言うまでもない。
上述のようにフレームを識別し不要な中継を行わないようにされた中継局の機能ブロック図が図14に示されている。同図に示されるように、各中継局には上位ポート411と下位ポート417とが双方向シリアルバスによってネットワークに接続されている。
まず、上位ポート411側からフレームが送信されてきた場合を説明する。双方向シリアルバスを介して上位ポート411に送られてきたフレーム(受信データ)はスタートコード検出部412へと送られる。
そして、受信データはスタートコード検出部412からデータバッファリング部413にて蓄積され、後にリピートフレーム生成部416へと送られる。このとき、スタートコード検知部412は、データバッファリング部413へと受信データを送ると共に、フレーム種別識別部414へも受信データとスタートコード検知信号を送る。
次に、フレーム種別識別部414にスタートコード検知信号が送られると、フレームの種別が識別され、その識別結果がフレーム種別情報信号として下位リピートコントロール部415へと送られる。
下位リピートコントロール部415では、フレーム種別情報信号にて規定されるフレームの種類によって、受信したフレームがリピート対象フレームであるかどうかの判定を行う。
この下位リピートコントロール部415における判定方法は、以下のように構成されている。既に説明したように、ネットワーク上の各中継局は、ネットワーク構成情報教示方法を用いることにより、ネットワーク上の自己の位置や他の中継局及びスレーブ局との相対位置を把握している。
この場合、上位ポート411側にて受信したフレームに対する判定なので、ネットワークにおける上流から送信されてきたフレームに対して当該中継局からさらに下流側に中継するかどうかを判定するものである。
そのため、例えば受信データがマスタ局からスレーブ局宛てのフレームであれば、ネットワークの上流から送信されてくるべきフレームであり、下位ポートを介して更に下流へと中継するべきフレームであると判断される。
一方、受信データがスレーブ局からマスタ局宛のフレームであれば、マスタ局は中継局より上流側に位置しているため、下位ポートを介して下流へと中継処理(リピート)は行う必要のないフレームであると判断される。
このような判定処理を経て、対象フレームが中継を行う必要があるフレームであると判定された場合、リピートフレーム生成部416に対してリピート開始信号を送信する。
このリピート開始信号を受信したリピートフレーム生成部416はデータバッファリング部413に蓄積されている受信データをリピート送信フレームデータとして下位ポート417を介してネットワーク上に送信する。
尚、下位リピートコントロール部415は、リピート開始信号をリピートフレーム生成部416へと送信すると共に、抑制信号を上位リピートコントロール部421にも送信する。
中継局においては、自己が発信したフレームをまた自己で受信してしまうことがある。そのようなこのことのないように、下位ポート417からフレームデータを送信する際には、上位リピートコントロール部421を介して上位ポート411にて受信を抑制するための信号を下位リピートコントロール部415にて送信するものである。
下位リピートコントロール部415にて中継を行う必要がないと判定された場合、リピート開始信号は生成されず、受信データの中継処理は行われない。
同様に、下位ポート417側からフレームが送信されてきた場合を以下に説明する。双方向シリアルバスを介して下位ポート417に送られてきたフレーム(受信データ)はスタートコード検出部418へと送られる。
そして、受信データはスタートコード検出部418からデータバッファリング部419にて蓄積され、後にリピートフレーム生成部422へと送られる。
このとき、データバッファリング部419へと受信データが送られると共に、フレーム種別識別部420へも受信データとスタートコード検知信号が送られる。
次に、フレーム種別識別部420にスタートコード検知信号が送られると、フレームの種別が識別され、その識別結果がフレーム種別情報信号として上位リピートコントロール部421へと送られる。
上位リピートコントロール部421では、フレーム種別情報信号にて規定されるフレームの種類によって、上位ポート411を介してさらに中継処理(リピート)を行うかどうかの判定を行う。
この上位リピートコントロール部421における判定方法も上述した上位ポート411からの受信時と同様であるが、この場合は下位ポート417側にて受信したフレームについての判定なので、ネットワークにおける下流から送信されてきたフレームとなる。
そのため、受信データがスレーブ局からマスタ局宛てのフレームであれば、ネットワークの下流から送信されてくるべきフレームであり、上位ポートを介して更に上流へと中継するべきフレームであると判断される。
一方、受信データがマスタ局からスレーブ局宛のフレームであれば、スレーブ局は中継局より下流に位置しているため、上位ポートを介して上流に位置するマスタ局への中継処理(リピート)は行う必要のないフレームであると判断される。
このような判定処理を経て、中継を行う必要があると判定された場合、リピートフレーム生成部422に対してリピート開始信号を送信する。このリピート開始信号を受信したリピートフレーム生成部422はデータバッファリング部419に蓄積されている受信データをリピート送信フレームデータとして上位ポート411を介してネットワーク上に送信する。
尚、上位リピートコントロール部421は、リピート開始信号をリピートフレーム生成部422へと送信すると共に、抑制信号を下位リピートコントロール部415にも送信する。
中継局においては、自己が発信したフレームをまた自己で受信してしまうことがある。そのようなこのことのないように、上位ポート411からフレームデータを送信する際には、下位リピートコントロール部415を介して下位ポート417にて受信を抑制するための信号を上位リピートコントロール部421にて送信するものである。
上位リピートコントロール部421にて中継を行う必要がないと判定された場合、リピート開始信号は生成されず、受信データを中継は行われない。
中継局にて行われる処理が図15のフローチャートにて示されている。同図にて示されるように、上位ポート側においては、先ず、フレーム受信を待つ待機状態にて始まる(ステップ1501)。
フレーム受信後、受信したフレームのスタートコードを検出する(ステップ1502)。当該フレームのスタートコードが検出されたら、先に図9にて説明したフレームに含まれるフレーム識別ヘッダを基にヘッダー識別(フレーム種類の識別)を行い、そのフレーム種類がリピート対象フレームであるか否かを判定する(ステップ1503)。
対象フレームがリピート対象フレームである場合(ステップ1503、リピート対象フレーム)、下位ポートへの受信とリピートとを停止させる信号を送信し(ステップ1504)、その後下位ポートへのリピート処理を開始する(ステップ1505)。
一方で、ステップ1503に戻り、対象フレームがリピート不可フレームである場合(ステップ1503、リピート不可フレーム)、そのフレームに対するリピート処理は行わず、ステップ1501に戻り、次の受信フレームを待機する。
同様に、下位ポート側においてもフレーム受信を待つ待機状態にて始まる(ステップ1506)。
フレーム受信後、受信したフレームのスタートコードを検出する(ステップ1507)。当該フレームのスタートコードが検出されたら、当該フレームに含まれるフレーム識別ヘッダを基にヘッダー識別(フレーム種類の識別)を行い、そのフレーム種類がリピート対象フレームであるか否かを判定する(ステップ1508)。
対象フレームがリピート対象フレームである場合(ステップ1508、リピート対象フレーム)、上位ポートへの受信とリピートとを停止させる信号を送信し(ステップ1509)、その後上位ポートへのリピート処理を開始する(ステップ1510)。
一方で、ステップ1508に戻り、対象フレームがリピート不可フレームである場合(ステップ1508、リピート不可フレーム)、そのフレームに対するリピート処理は行わず、ステップ1506に戻り、次の受信フレームを待機する。
このような構成により、各中継局は、受信したフレームの種別を判別し、中継が必要なフレームのみを中継することができる。尚、上記実施例では、中継局2つと、スレーブ局5つのネットワーク構成として説明したが、異なる構成のネットワークにおいても同様の処理を行うことで同じ効果を得ることが可能である。
また、このような機能を備えた中継局は、中継するフレームと、中継しないフレームとを設定により切り替えることも可能である。同様に、設定により中継処理を行わない期間(時間)を設けるようにすることも可能である。
さらには、上記の構成において、任意の中継局の中継動作そのものを停止させることも可能である。これにより、中継動作が停止された中継局で区切られた独立ネットワークが存在可能になる。
ネットワーク内の一つの中継局を区切りとして独立ネットワークを構成した一例が図16に示されている。同図において、基本的構成は先に説明した図10並びに図11と同様であるため、同じ構成要素には同じ符号を付与し、説明を省略する。
図16においては、ネットワーク支線32上にサブマスタ(副マスタ)局60を設置した点において図10並びに図11のネットワーク構成と異なる。
このようなネットワーク構成において、ネットワーク支線32上の中継局50aにおける中継動作を停止するように設定することによって、中継動作が停止された中継局50aで区切られた独立ネットワークを構成することが可能となる。
より詳細には、同図のネットワークにおいて、中継局50aにて区切られているネットワーク支線32と、そのネットワーク支線32上に設置されているスレーブ局40d、スレーブ局40e、及び新たに設置されたサブマスタ局60が独立ネットワークとして構成されている。そして、この、独立ネットワークにサブマスタ局60が接続されていることで、独立ネットワーク内での高速通信が可能になる。
なお、この独立させたネットワークを再度同一ネットワークに組み込む場合には、サブマスタ局60から中継局50aに対して復帰指示のフレームを送信。中継局50aは復帰指示のフレームを受信した場合、マスタ局30に対して復帰します(しました)というステータスを示すフレームを返信し中継動作を再開する。これにより、ネットワークが復帰する。
また、上記の復帰方法の場合、復帰するまでに時間かかってしまう場合がある。この場合、中継動作を停止させる対象中継局(この例では中継局50a)の上位ポートにおいて、特定のフレームを受信した時から一定時間のみ中継動作を停止するように設定しても良い。
そのような構成とすることで、通常はネットワークの一部として動作し、所定のフレームをマスタ局から受信した場合、所定期間中継動作を停止させ、ネットワークから切り離された独立ネットワークが構成される。
そして、中継局が中継動作を停止している期間のみサブマスタ60が動作するように設定すれば、独立ネットワークとして所定期間動作し、期間の満了とともに中継動作を再会し、通常のネットワークに戻ることが可能となる。このようにして、中継局にて区切られた独立ネットワークを効率よく形成し、その独立ネットワーク内での高速通信が実現され、通常のネットワークへの復帰も容易となる。
次に、本発明が適用されたネットワークにおける通信フレームの流れを、図17〜20を参照しつつ説明する。図17は先に従来例の説明にて用いたネットワークのシステム構成図であるが、同じシステム構成に本発明を用いた場合を以下に説明する。言うまでもないが、図17の構成については既に従来例の説明にて詳細に説明しているため、ここでの説明は省略する。
このような構成のネットワークシステムにおけるマスタ局の動作を図18に示されるフローチャートを参照して説明する。
同図に示されるように、マスタ局は先ずBF(Beaconフレーム)の送信を行う(ステップ1101)。このBFは、所定間隔毎に一斉同報的に送信され、各スレーブ局に、マスタ局からの送信経路上に中継局が何段(何個)存在するかを通知する働きを有する。
続いて、トリガフレームの送信を行う(ステップ1102)。このトリガフレームは、特定のアドレスに対して送信されるものであり、対象スレーブ局にて受信後にCNフレームを送信するようにとの指示が含まれている。そのため、マスタ局は、トリガフレームの送信後、スレーブ局からCNフレームが返信されて来たかを確認する(ステップ1103)。ここで言うCNフレームとは、マスタ局が送信するトリガフレームに対するスレーブ局の応答フレームのことである。
マスタ局は、このCNフレームを返信してきたスレーブに対して以下の加入処理を行う。すなわち、CNフレームが返信されてきている場合(ステップ1103,YES)、CNフレームの送信元であるスレーブ局の加入処理を行う。この加入処理として、スレーブ情報の読み出し処理を行うStatusReadフレームを送信する(ステップ1104)。
この読み出し処理には、同図のフローチャートでは省略しているが、対象スレーブ局へのStatusReadの送信と、その応答の受信が実行される。そして、スレーブ局からの応答に含まれる対象スレーブ局の種別情報や対応するスレーブの中継局通過段数の読み出し処理が行われる。この読み出し処理で得られたスレーブ局情報によってマスタ局はネットワーク構成を把握し、その情報を基に、タイムドメインの作成を行う。
そして、加入処理のもう一つの処理として、StatusWriteによるスレーブに対する情報書き込み処理(ステップ1105)が行われる。この書き込み処理においても、同図のフローチャートでは省略しているが、StatusWriteの対象スレーブ局への送信処理が行われている。このStatusWriteには、作成されたタイムドメインが含まれており、スレーブ局側にてそのタイムドメインにて指定されるタイミングで応答処理を行うようにスレーブ局側に指示するものである。これらの処理が終了すると、またステップ1101に戻る。
次に、スレーブ局側の動作を図19を参照して説明する。マスタ局からのBFにより、先に説明した方法を用いてフレームの伝送速度及び自己の中継局通過段数を把握する(ステップ1201)。そして、この把握処理が完了したらマスタ局からのトリガフレームを受信できる状態に遷移する(ステップ1202)。
マスタ局からのトリガフレームの受信有無の確認が行われる(ステップ1203)。このとき、トリガフレームの受信が確認できなければ(ステップ1203,NO)、トリガフレームを受信するまで待機する。
マスタ局からのトリガフレームの受信が確認できたら(ステップ1203,YES)、そのトリガフレームが自局宛であるかどうか(自分がCN応答該当ノードであるかどうか)を識別する(ステップ1204)。
このとき、自分がCN応答該当ノードでなければ(ステップ1204,NO)、ステップ1203に戻り、次のトリガフレームを待つ。そして、自分がCN応答該当ノードである場合(ステップ1204,YES)、マスタ局に対してCNフレームの返信を行う(ステップ1205)。
続いて、マスタ局からのStatusReadの受信を待つ(ステップ1206及びステップ1206,NO)。マスタ局からのStatusReadを受信したら(ステップ1206,YES)、受信したStatusReadに対して、自局中継局通過段数を応答としてマスタ局に返信する(ステップ1207)。
続いて、マスタ局からのStatusWriteの受信を待つ(ステップ1208及びステップ1208,NO)。マスタ局からのStatusWriteを受信したら(ステップ1208,YES)、StatusWriteのパラメータで加入状態に遷移するとともに、タイムドメインの反映を行う(ステップ1209)。このタイムドメインの反映とは、マスタ局にて作成されたタイムドメインにおいて指定される応答タイミングで応答フレームを送信するように自局を設定するものである。
以上のようにして、マスタユニットとすべてのスレーブユニットについてイニシャル処理が終了したら、I/O情報を交換する通信サイクルが以下のように実行される。
すなわち、マスタユニットは、出力データを含んだ要求フレームをスレーブに対して一斉同報する。それぞれのスレーブユニットは、マスタユニットから受信したタイムドメインに基づいて入力データを含んだ応答フレームを順番に送信する。すべてのスレーブユニットが応答フレームを送信した後、マスタユニットは再度要求フレームを一斉同報し、I/O情報交換の通信サイクルを繰り返す。
図17にて示される4つの観測点A〜Dにおいて、マスタ局が送信する要求フレームと各スレーブ局が応答する応答フレームを時系列的に示す動作モデルが図20に示されている。
同図にて示されるように、観測点Aにおいては、マスタ局からの要求フレームに加え、各スレーブ局からの応答フレームが知見されているが、その他の観測点B,C,Dにおいては、マスタ局からの要求フレームと、ネットワーク構成において各観測点より下流に位置するスレーブ局からの応答フレームのみ知見され、図21に示した従来例のように、不要なフレームの中継がなされていないことが明確である。
この実施形態においては、各中継局は、応答フレームは下流から上流のみに中継するように設定されており、かつ応答フレームの間隔を観測点Aで最小化できるように、各応答フレームは通過する中継局数分のリピータ遅延時間だけ早く応答するように設定されている。このような設定により、観測点Aにおける応答フレームの間隔を最小化でき、図20にて示されるように、各応答フレームにおいて、リピータ遅延の低減化が実現されている。
各スレーブ局における応答フレームの送信タイミングは、
要求フレーム受信後の該当スレーブ局応答フレーム送信開始時間
=該当スレーブ局の応答フレームの観測点Aでの位置
−要求フレーム到着遅延
−該当スレーブ局応答フレームが観測点Aまで到着するまでの時間
=該当スレーブ局の応答フレームの観測点Aでの位置
−リピータ遅延×該当スレーブまでのリピータ(中継局)段数×2
となる。
要求フレーム受信後の該当スレーブ局応答フレーム送信開始時間
=該当スレーブ局の応答フレームの観測点Aでの位置
−要求フレーム到着遅延
−該当スレーブ局応答フレームが観測点Aまで到着するまでの時間
=該当スレーブ局の応答フレームの観測点Aでの位置
−リピータ遅延×該当スレーブまでのリピータ(中継局)段数×2
となる。
このとき、通信サイクルは、
通信サイクル=
要求フレーム時間+リピータ遅延×最大リピータ段数
+(応答フレーム時間)×スレーブ数
となる。
通信サイクル=
要求フレーム時間+リピータ遅延×最大リピータ段数
+(応答フレーム時間)×スレーブ数
となる。
よって、従来例に比べて「リピータ遅延×最大リピータ段数×(2×スレーブ数−1)」の分だけ、通信サイクルは高速になる。
尚、従来の技術を用いた通信ネットワークと、同じネットワーク構成を有し、本発明を適用した通信ネットワークとのサイクルタイムの比較を行ったところ、従来例では1.8msであったサイクルタイムが、本発明を適用することによって、1.2msまで短縮できた。
以上の説明で明らかなように、本発明によれば、通信サイクルを増大させることなく、各スレーブ局の応答同士が衝突しないようにすることのできる通信システム、通信システムにおける通信制御方法、スレーブ局、及びスレーブ局の送信制御方法を提供することができる。
1 PLC
2 スレーブ局
3 PC
4 中継局
5 終端装置
6 フィールドバス
7 I/O機器
10 通信マスタユニット
20 CPUユニット
30 マスタ局
31 ネットワーク幹線
32 ネットワーク支線(その1)
33 ネットワーク支線(その2)
40a〜40e スレーブ局
50a、b 中継局
60 サブマスタ局
2 スレーブ局
3 PC
4 中継局
5 終端装置
6 フィールドバス
7 I/O機器
10 通信マスタユニット
20 CPUユニット
30 マスタ局
31 ネットワーク幹線
32 ネットワーク支線(その1)
33 ネットワーク支線(その2)
40a〜40e スレーブ局
50a、b 中継局
60 サブマスタ局
Claims (9)
- 通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するI/Oターミナル装置である2以上のスレーブ局とがネットワークにて結ばれ、ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、1段又は2段以上に亘って、リピータとして機能するとともに、中継処理をする際に中継局が存在しない場合に比べて遅延時間が生じてしまう中継局が介在されている通信システムにおいて、
各スレーブ局は、
マスタ局までの経路上における通過中継局数の情報を含むタイムドメイン情報を記憶する記憶部と、
マスタ局から一斉同報にて送信される要求フレームに対して応答フレームの送信が要請されている場合に、応答フレームを自己の順番でマスタ局へ対して送信し、かつその応答フレームを送信するタイミングを記憶部に記憶されたタイムドメイン情報の通過中継局数分の遅延時間に応じて早くする送信処理部とを有する、ことを特徴とする通信システム。 - 各スレーブ局が、送信処理部において、応答フレームを送信するタイミングをタイムドメイン情報の通過中継局数分の遅延時間に応じて早くすることによって、マスタ局は、各スレーブ局からの応答フレームを隙間なく受信できるようになる、ことを特徴とする請求項1に記載の通信システム。
- 各スレーブが送信する応答フレームは、スレーブ局に接続された入力機器から入力したINデータをマスタ局へと返信するためのインフレームである、ことを特徴とする請求項1または2に記載の通信システム。
- マスタ局は、各スレーブ局に対して特定の通信フレームを送信し、その特定の通信フレームに対する各スレーブ局からの応答フレームから通過中継局数を読み出し、読み出された通過中継局数に基づいて、各スレーブ局がマスタ局からの通信フレームに対する応答フレームの返信タイミングを設定するためのタイムドメインをそれぞれ計算し、各スレーブ局に対してそのタイムドメインを書き込む、といった処理を行う処理手段を有する、ことを特徴とする請求項1または2に記載の通信システム。
- 各スレーブ局における前記タイムドメインは、マスタ局において読み出した通過中継局数に基づいて複数の応答フレームを隙間なく受信できるようにマスタ局にて計算される、ことを特徴とする請求項4に記載の通信システム。
- マスタ局からスレーブ局に対して送信される特定の通信フレームは、通過した中継局のアドレス値の情報と中継局段数の情報とを含むことができるものであり、
中継局は、前記特定の通信フレームが通過する際に、自局のアドレス値の情報と中継局段数に+1加算した値の情報とをその特定の通信フレームに含ませる処理を行うものであり、
スレーブ局は、前記特定の通信フレームから、自局の上位側に隣接する中継局のアドレス値の情報と、中継局段数の情報とを取り出す処理と、マスタ局への応答フレームに、前記特定の通信フレームから読み出した自局の上位側に隣接する中継局のアドレス値の情報と中継局段数の情報とを含ませる処理とを行うものである、ことを特徴とする請求項4に記載の通信システム。 - 通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するI/Oターミナル装置である2以上のスレーブ局とがネットワークにて結ばれ、ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、1段又は2段以上に亘ってリピータとして機能し、かつ中継処理をする際に中継局が存在しない場合に比べて遅延時間が生じる中継局が介在されている通信システムにおけるスレーブ局であって、
マスタ局までの経路上における通過中継局段数の情報を含むタイムドメイン情報を記憶する記憶部と、
マスタ局から一斉同報にて送信される要求フレームに対して応答フレームの送信が要請されている場合、応答フレームを自己の順番で送信し、その応答フレームを送信するタイミングを、前記タイムドメイン情報の通過中継局数分の遅延時間に応じて早くする送信処理部を有する、ことを特徴とするスレーブ局。 - 通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するI/Oターミナル装置である2以上のスレーブ局とがネットワークにて結ばれ、ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、1段又は2段以上に亘ってリピータとして機能し、かつ中継処理をする際に中継局が存在しない場合に比べて遅延時間が生じてしまう中継局が介在されている通信システムにおけるスレーブ局の送信制御方法であって、
各スレーブ局は、
マスタ局までの経路上における通過中継局数の情報を含むタイムドメイン情報を記憶し、マスタ局から一斉同報にて送信される要求フレームを受信し、それに対して応答フレームを自己の順番でマスタ局へ対して送信する際に、その応答フレームを送信するタイミングを前記タイムドメイン情報の通過中継局数分の遅延時間に応じて早くする、ことを特徴とする通信システムにおけるスレーブ局の送信制御方法。 - 通信機能を有するプログラマブルコントローラであるマスタ局と、通信機能を有するI/Oターミナル装置である2以上のスレーブ局とがネットワークにて結ばれ、ネットワーク上にあって、マスタ局と所定のスレーブ局とを結ぶ経路上には、1段又は2段以上に亘って、リピータとして機能しかつ中継処理をする際に中継局が存在しない場合に比べて遅延時間が生じてしまう中継局が介在されている通信システムにおける通信制御方法であって、
各スレーブ局は、マスタ局までの経路上における通過中継局数の情報を含むタイムドメイン情報を記憶し、
マスタ局は、各スレーブ局に対して要求フレームを一斉同報にて送信し、
各スレーブ局は、マスタ局からの要求フレームを受信し、その要求フレームに対して応答フレームを自己の順番でマスタ局へ対して送信する際に、その応答フレームを送信するタイミングを前記タイムドメイン情報の通過中継局数分の遅延時間に応じて早くし、マスタ局は、各スレーブ局からの応答フレームを隙間なく受信する、ことを特徴とする通信システムにおける通信制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007167281A JP4182450B2 (ja) | 2005-08-31 | 2007-06-26 | リピータ遅延影響の低減化 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005252423 | 2005-08-31 | ||
JP2007167281A JP4182450B2 (ja) | 2005-08-31 | 2007-06-26 | リピータ遅延影響の低減化 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006233037A Division JP4006605B2 (ja) | 2005-08-31 | 2006-08-30 | リピータ遅延影響の低減化 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007244000A JP2007244000A (ja) | 2007-09-20 |
JP2007244000A5 true JP2007244000A5 (ja) | 2008-02-07 |
JP4182450B2 JP4182450B2 (ja) | 2008-11-19 |
Family
ID=38588978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007167281A Active JP4182450B2 (ja) | 2005-08-31 | 2007-06-26 | リピータ遅延影響の低減化 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4182450B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5962786B2 (ja) * | 2010-03-19 | 2016-08-03 | ヤマハ株式会社 | 通信システム、スイッチングハブ、およびルータ |
-
2007
- 2007-06-26 JP JP2007167281A patent/JP4182450B2/ja active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7792155B2 (en) | Communication system and slave and repeater units therefor | |
JP3925660B2 (ja) | 通信マスタ局の起動時制御方法 | |
CN104702474A (zh) | 一种基于FPGA的EtherCAT主站装置 | |
JP2001512944A (ja) | 自動的アドレス指定のための方法、自動的アドレス指定のためのバスシステムおよび本バスシステムおよび方法に使用可能な通信加入機器 | |
CN110955626A (zh) | 一种在串行链路上实现Modbus通信的方法与系统 | |
WO2019196483A1 (zh) | 空调系统及空调系统中机组间的通信方法 | |
CN104009976A (zh) | 一种用于多主站系统之间的实时通信方法及其设备 | |
CN103186440A (zh) | 检测子卡在位的方法、装置及系统 | |
JP4006605B2 (ja) | リピータ遅延影響の低減化 | |
JP4182450B2 (ja) | リピータ遅延影響の低減化 | |
JP4623291B2 (ja) | Plcシステムにおけるネットワーク構成情報教示方法 | |
JP2007244000A5 (ja) | ||
JP4636257B2 (ja) | フィルタリングリピート機能 | |
CN102347878A (zh) | 一种多点通信系统、方法及设备 | |
KR100633061B1 (ko) | 네트워크시스템 및 그 정식어드레스 할당방법 | |
US11343119B2 (en) | Distributed control system and communication control method therefor | |
JP2004280304A (ja) | フィールドバスシステム及び通信方法並びにマスタ及びスレーブ | |
JP4407838B2 (ja) | 通信マスタ局の起動時制御方法 | |
JP2012169800A (ja) | 通信システム | |
JP4107110B2 (ja) | フィールドバスシステム及び接続確認方法並びにマスタ | |
JP2011119999A (ja) | 通信装置及びマスタ装置 | |
JP5801059B2 (ja) | 通信処理システム | |
US20200233809A1 (en) | Measurement system and method for operating a measurement system | |
CN111442797B (zh) | 测量系统以及操作测量系统的方法 | |
CN107832239A (zh) | 一种基于ahb总线的传输控制方法及装置 |