(57)【特許請求の範囲】
【請求項１】
複数のスレーブ装置と通信ケーブルでライン状に接続され周期データを共有する通信を行うネットワークシステムの一端に位置するマスタ装置であって、
前記スレーブ装置が前記マスタ装置と通信を行うときに中継される他のスレーブ装置の数に基づいて決められる前記スレーブ装置の位相差を取得する構成情報取得部と、
前記構成情報取得部が取得した前記位相差に基づいて、前記スレーブ装置が前記マスタ装置又は他のスレーブ装置と通信を行うときに中継される他のスレーブ装置の数からホップ数を算出し、同じタイミングに同じ前記ホップ数の通信を前記複数のスレーブ装置が行うよう、前記スレーブ装置の周期データの送信タイミングを決定する送信タイミング決定部と
前記送信タイミング決定部は、同じタイミングに同じ前記ホップ数の通信を前記複数のスレーブ装置がそれぞれ異なるスレーブ同士をつなぐ前記通信ケーブルを用いて行うよう、前記スレーブ装置の周期データの送信タイミングを決定する
を備えるマスタ装置。
【請求項２】
前記複数のスレーブ装置のうち、同じ前記ホップ数の通信を行う第１のスレーブ装置と第２のスレーブ装置の送信タイミングを決定する場合において、
前記送信タイミング決定部は、前記第１のスレーブ装置の位相差から前記ホップ数を引いた値と、前記第２のスレーブ装置の位相差の値とが同じ場合に、前記第１のスレーブ装置と前記第２のスレーブ装置の送信タイミングを同じタイミングとなるように決定する
請求項１に記載のマスタ装置。
【請求項３】
前記複数のスレーブ装置のうち、同じ前記ホップ数の通信を行う前記第１のスレーブ装置と前記第２のスレーブ装置の送信タイミングを決定する場合において、
前記送信タイミング決定部は、前記第１のスレーブ装置の位相差の前記ホップ数による剰余の値と、前記第２のスレーブ装置の位相差の前記ホップ数による剰余の値とが異なる場合に、前記第１のスレーブ装置と前記第２のスレーブ装置のうち位相差の前記ホップ数による剰余の値が小さい前記スレーブ装置の送信タイミングを、前記スレーブ装置の前記位相差の前記ホップ数による剰余の値が大きい前記スレーブ装置の送信タイミングよりも早いタイミングとなるように決定する
請求項２に記載のマスタ装置。
【請求項４】
前記複数のスレーブ装置のうち、同じ前記ホップ数の通信を行う第１のスレーブ装置と第２のスレーブ装置の送信タイミングを決定する場合において、
送信タイミング決定部は、前記第１のスレーブ装置の位相差の前記ホップ数による剰余の値と、前記第２のスレーブ装置の位相差の前記ホップ数による剰余の値とが同じ場合に、前記第１のスレーブ装置と前記第２のスレーブ装置の送信タイミングを同じタイミングとなるよう決定する
請求項１に記載のマスタ装置。
【請求項５】
前記スレーブ装置との通信に必要な構成情報を要求するための構成情報要求フレームを前記スレーブ装置に送信する通信ポートを備え、
前記構成情報取得部は、
前記構成情報要求フレームに対する応答である構成情報応答フレームに含まれる前記構成情報から前記位相差を取得する
請求項１から４のいずれか１項に記載のマスタ装置。
【請求項６】
複数のスレーブ装置と、前記複数のスレーブ装置と通信ケーブルでライン状に接続され周期データを共有する通信を行うネットワークシステムの一端に位置するマスタ装置と、から構成される前記ネットワークシステムの通信方法であって、
前記スレーブ装置が前記マスタ装置と通信を行うときに中継される他のスレーブ装置の数に基づいて決められる前記スレーブ装置の位相差を取得し、取得した前記位相差に基づいて、前記スレーブ装置が前記マスタ装置又は他のスレーブ装置と通信を行うときに中継される他のスレーブ装置の数からホップ数を算出し、同じタイミングに同じ前記ホップ数の通信を前記複数のスレーブ装置がそれぞれ異なるスレーブ同士をつなぐ前記通信ケーブルを用いて行うよう、前記スレーブ装置の周期データの送信タイミングを決定する、
通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、マスタ装置と複数のスレーブ装置で構成されるネットワークシステムの、マスタ装置および通信方法に関する。
【背景技術】
【０００２】
従来から、複数の通信装置で構成されるネットワークシステムにおいて、通信効率を向上させる技術が提案されている。【０００３】
例えば特許文献１には、ルートノードと複数のノードから構成されるネットワークシステムにおいて、周期通信時の通信効率を向上させる方法が記載されている。周期通信とは、一定の時間の長さである通信周期内において、ネットワークシステム内の装置が情報の送受信を繰り返す通信のことである。特許文献１では、ルートノードは、ルートノードと直接接続されたノードと通信を行う回線を介して、複数のノードと周期通信を行う。ルートノードは、通信周期内でこの回線が使用されていなかった時間に通信を行うことにより、回線使用率を向上させ、ネットワークシステムの通信効率を向上させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２９８６４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１は、ネットワークシステム内の回線のうちルートノードと直接接続されたノードとの通信に用いる回線の回線使用率を向上させるものであり、それ以外のノード間の通信で用いる回線の回線使用率は考慮されていない。従って、ルートノードがあるノードと通信する際に、その他のノード同士を接続する回線が通信に使用されていない場合があり、ネットワークシステム全体として通信効率が悪いという問題がある。【０００６】
本開示は、上記のような課題を解決するためになされたものであり、マスタ装置と複数のスレーブ装置で構成されるネットワークシステムにおいて、ネットワークシステム全体の通信効率を向上させることができるマスタ装置および通信方法を得ることを目的とする。
【課題を解決するための手段】
【０００７】
本開示のマスタ装置は、複数のスレーブ装置と通信ケーブルでライン状に接続され周期データを共有する通信を行うネットワークシステムの一端に位置するマスタ装置であって、スレーブ装置がマスタ装置と通信を行うときに中継される他のスレーブ装置の数に基づいて決められるスレーブ装置の位相差を取得する構成情報取得部と、構成情報取得部が取得した位相差に基づいて、スレーブ装置がマスタ装置又は他のスレーブ装置と通信を行うときに中継される他のスレーブ装置の数からホップ数を算出し、同じタイミングに同じホップ数の通信を複数のスレーブ装置がそれぞれ異なるスレーブ同士をつなぐ前記通信ケーブルを用いて行うよう、スレーブ装置の周期データの送信タイミングを決定する送信タイミング決定部とを備える。
【発明の効果】
【０００８】
本開示のマスタ装置および通信方法によれば、ネットワークシステム全体の通信効率を向上させることができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１のネットワークシステムの構成図
【図２】実施の形態１の装置名と識別情報の対応関係を示す図
【図３】実施の形態１のマスタ装置の機能ブロック図
【図４】実施の形態１のスレーブ装置の機能ブロック図
【図５】実施の形態１のネットワークシステムの動作の概要を示すフローチャート
【図６】実施の形態１の構成情報を取得するための通信を示すシーケンス図
【図７】実施の形態１の通信設定の通信を示すシーケンス図
【図８】実施の形態１の構成情報取得時のマスタ装置の動作を示すフローチャート
【図９】実施の形態１の構成情報取得時のスレーブ装置の動作を示すフローチャート
【図１０】実施の形態１の構成情報要求フレームに含まれる情報を示す説明図
【図１１】実施の形態１の構成情報応答フレームに含まれる情報を示す説明図
【図１２】実施の形態１のマスタ装置が取得した構成情報を示す説明図
【図１３】実施の形態１の通信設定時のマスタ装置の動作を示すフローチャート
【図１４】実施の形態１の送信タイミングの決定方法について説明する図
【図１５】実施の形態１における設定情報の内容を示す図
【図１６】実施の形態１の周期通信時のマスタ装置およびスレーブ装置の動作を示すフローチャート
【図１７】実施の形態１の通信方法を適用しない場合の周期通信の例を示すシーケンス図
【図１８】実施の形態１の通信方法を適用した場合の周期通信を示すシーケンス図
【図１９】実施の形態１のマスタ装置およびスレーブ装置のハードウェア構成図
【発明を実施するための形態】
【００１０】
実施の形態１．
以下、本開示の実施の形態１を説明する。図１は本開示の実施の形態１におけるネットワークシステム１の構成図である。
【００１１】
ネットワークシステム１は複数の通信装置で構成され、実施の形態１では通信装置は１台のマスタ装置１００と５台のスレーブ装置２００ａ〜２００ｅ（スレーブ装置２００）から構成される。このネットワークシステム１は、マスタ装置１００とスレーブ装置２００ａ〜２００ｅが周期通信時に周期データを共有する通信を行う。周期データとは、マスタ装置１００とスレーブ装置２００ａ〜２００ｅが周期通信動作時に通信周期毎に繰り返し送信する情報のことである。例えば、周期データは、マスタ装置１００がスレーブ装置２００に送信される指示情報であって、スレーブ装置２００は、この指示情報に基づいて外部の装置を制御する。また、周期データは、スレーブ装置２００が収取したセンサの出力値等であって、この出力値はスレーブ装置２００からマスタ装置１００に送信される。１通信周期内において、ネットワークシステム１内の全ての通信装置は、他の全ての通信装置と通信し、周期データを共有する。
【００１２】
マスタ装置１００とスレーブ装置２００ａ〜２００ｅは通信ケーブル３によってライン状に有線接続される。スレーブ装置２００はマスタ装置１００に近い順に、スレーブ装置２００ａ、スレーブ装置２００ｂ、スレーブ装置２００ｃ、スレーブ装置２００ｄ、スレーブ装置２００ｅの順番でマスタ装置１００とライン状に接続されている。ライン状であるので、ネットワークシステム１の一端に位置するマスタ装置１００にはスレーブ装置２００ａが接続され、他端のスレーブ装置２００ｅにはスレーブ装置２００ｄが接続される。なお、図１において、各装置に付されている記号Ｍ、Ｓ１〜Ｓ５は、各装置の識別情報を示している。識別情報とはネットワークシステム１を構成する全ての装置に一意に設定されるマスタ装置１００およびスレーブ装置２００を識別するための情報である。
【００１３】
図２は、本開示の実施の形態１における装置名と識別情報の対応関係を示す図である。図２に示すように、マスタ装置１００の識別情報はＭ、スレーブ装置２００ａの識別情報はＳ１、スレーブ装置２００ｂの識別情報はＳ２、スレーブ装置２００ｃの識別情報はＳ３、スレーブ装置２００ｄの識別情報はＳ４、スレーブ装置２００ｅの識別情報はＳ５が設定されている。本開示の例では、識別情報は、Ｍ、Ｓ１〜Ｓ５で示したが、各装置を識別できるものであればよく、他の数値や文字列でもよい。また、識別情報には、各装置のＭＡＣアドレス、または、予めユーザが設定した機器の名称等を用いてもよい。
【００１４】
マスタ装置１００は、通信ケーブル３が接続されるインターフェースである通信ポート１０１を１つ以上備える。通信ポート１０１は具体的にはＬＡＮポートまたはＵＳＢポート等である。マスタ装置１００は通信ケーブル３を介してスレーブ装置２００ａ〜２００ｅと通信を行い、スレーブ装置２００ａ〜２００ｅとの通信に必要な構成情報の取得と、周期通信を行うための送信タイミングの設定と、周期通信時にスレーブ装置２００と周期データの共有を行う。
【００１５】
スレーブ装置２００は、それぞれ２つ以上の通信ポートを備える。実施の形態１ではスレーブ装置２００ａ〜２００ｅはそれぞれ２つの通信ポート２０１、２０２を備える。マスタ装置１００に近い方の装置と接続する方を、通信ポート２０１ａ〜２０１ｅ、末端のスレーブ装置２００ｅに近い方のスレーブ装置２００と接続する方を通信ポート２０２ａ〜２０２ｅとする。
【００１６】
スレーブ装置２００ａ〜２００ｅは、マスタ装置１００により制御され、マスタ装置１００によって周期データの送信タイミングの設定がなされた後、マスタ装置１００と他のスレーブ装置２００と周期通信を行い周期データの共有を行う。
【００１７】
なお、図１でスレーブ装置２００を５台備えるネットワークシステム１を示したが、スレーブ装置２００を２台以上備えていれば本開示の通信方法を適用可能である。
【００１８】
続いて図３を用いて、マスタ装置１００の詳細な構成を説明する。図３は実施の形態１のマスタ装置１００の機能ブロック図である。マスタ装置１００は、上記で説明した通信ポート１０１の他、記憶部１１０、処理部１２０、制御部１３０を備える。以下、各部の詳細を説明する。
【００１９】
まず記憶部１１０について説明する。記憶部１１０は、情報を記憶する装置である。記憶部１１０は、受信情報記憶部１１１と、設定記憶部１１２と、送信情報記憶部１１３とを備える。
【００２０】
受信情報記憶部１１１は、マスタ装置１００が通信ポート１０１を介してスレーブ装置２００から取得した情報を記憶する。この情報は例えば、マスタ装置１００が構成情報取得時にスレーブ装置２００から取得する構成情報応答フレームの情報、および周期通信時にスレーブ装置２００から取得する周期データの情報である。構成情報応答フレームは、マスタ装置１００がネットワークシステム１の構成を検知するために、ネットワークシステム１内のスレーブ装置２００から取得する情報であり、スレーブ装置２００に関する情報が含まれている。
【００２１】
設定記憶部１１２は、後述する構成情報取得部１２１が取得したネットワークシステム１の構成情報と、送信タイミング決定部１２２が決定した各スレーブ装置２００の送信タイミングとを設定情報として記憶する。なお、設定記憶部１１２は設定情報である構成情報および送信タイミングの他、ユーザによって設定された周期通信を行うための周期データの送信タイミングの設定または、送信タイミング決定部１２２が送信タイミングを決定するために必要な通信時間等の情報を記憶してもよい。
【００２２】
送信情報記憶部１１３は、後述する送信情報生成部１２３が生成したマスタ装置１００からスレーブ装置２００に送信する情報を、後述する送信制御部１３１によって送信するよう指示があるまでの間記憶する。マスタ装置１００からスレーブ装置２００に送信する情報とは、例えば、構成情報取得時に送信する構成情報要求フレームの情報、通信設定時に送信する設定情報、および周期通信時にスレーブ装置２００から取得する周期データの情報等である。構成情報要求フレームは、マスタ装置１００がネットワークシステム１の構成を検知するために、ネットワークシステム１内のスレーブ装置２００に送信する情報であり、スレーブ装置２００に構成情報応答フレームの情報を送信させるための情報が含まれている。
【００２３】
続いて処理部１２０について説明する。処理部１２０は、構成情報取得部１２１と、送信タイミング決定部１２２と、送信情報生成部１２３とを備える。
【００２４】
構成情報取得部１２１は、構成情報取得動作時に受信情報記憶部１１１に記憶した構成情報応答フレームの情報から、スレーブ装置２００の構成情報を取得する。構成情報は、マスタ装置１００が周期通信時の周期データの送信タイミングを設定するため情報であり、各スレーブ装置２００がマスタ装置１００と通信を行うときのホップ数である位相差を含む。
【００２５】
ホップ数は、マスタ装置１００とスレーブ装置２００またはスレーブ装置２００とスレーブ装置２００との間で通信を行うときに中継されるスレーブ装置２００の数に基づいて決められる値であって、マスタ装置１００またはスレーブ装置２００が隣接するマスタ装置１００またはスレーブ装置２００装置と通信を行うときの通信のホップ数を１と定義する。また、通信時に中継されるマスタ装置１００またはスレーブ装置２００が１増加する毎にその通信のホップ数も１増加する。
例えば、マスタ装置１００とスレーブ装置２００ａとが通信する場合、これらの装置は隣接するため、この通信のホップ数は１となる。また、マスタ装置１００とスレーブ装置２００ｂとが通信を行うとき、隣接する装置同士の通信と比べて中継されるスレーブ装置２００が１増加しているため、ホップ数は２となる。
【００２６】
位相差とは、ある装置が基準とするネットワークシステム１内の装置と通信するときに中継されるスレーブ装置の数に基づいて決められるホップ数であり、基準とする装置の位相差は０とする。実施の形態１では基準とする装置をマスタ装置１００とするため、マスタ装置１００の位相差は０である。また、スレーブ装置２００ａの位相差は、マスタ装置１００と通信するときに中継されるスレーブ装置２００の数に基づいて決められるホップ数であるため、１である。同様にして、スレーブ装置２００ｂの位相差は２、スレーブ装置２００ｃの位相差は３、スレーブ装置２００ｄの位相差は４、スレーブ装置２００ｅの位相差は５となる。
【００２７】
送信タイミング決定部１２２は、構成情報取得部１２１が取得した構成情報に含まれる各スレーブ装置２００の識別情報と位相差の情報とを用いて、マスタ装置１００と各スレーブ装置２００の周期データの送信タイミングを決定する。なお、送信タイミングとは、送信元装置から送信先装置に周期データを送信するタイミングのことである。送信タイミング決定部１２２は、同じタイミングに同じホップ数の通信を複数の装置間で行うよう、各スレーブ装置２００の周期データの送信タイミングを決定する。送信タイミングは、１回の周期通信の中で何マイクロ秒経過時というように決定しても、実際の時刻として決定してもよい。送信タイミングの決定方法は後述する。
【００２８】
送信情報生成部１２３は、設定記憶部１１２に記憶された設定情報に基づいて、マスタ装置１００から各スレーブ装置２００へ送信する構成情報要求フレームの情報または周期通信の際にスレーブ装置２００へ送信する周期データを生成し、送信情報記憶部１１３に記憶させる。
【００２９】
次に、制御部１３０について説明する。制御部１３０は送信制御部１３１と、時刻取得部１３２とを備える。なお、制御部１３０はこれらの他にもマスタ装置１００に必要な制御を行うための機能を備えていてもよい。
【００３０】
送信制御部１３１は、時刻取得部１３２から時刻情報を取得し、スレーブ装置２００が送信する予定の情報を、送信すべき時刻に通信ポート１０１から送信するよう送信情報記憶部１１３を制御する。
【００３１】
時刻取得部１３２は、周期通信時に時分割方式で通信を行うためにマスタ装置１００とスレーブ装置２００とで時刻を同期させたマスタ装置１００の時計（図示せず）から、時刻情報を取得する。時分割方式は、周期的な通信を繰り返すネットワークシステム１において、１周期内のどの時間帯にどのような通信を行うかを予め規定しておき、周期データの送受信を行う通信である。
【００３２】
続いて図４を用いて、スレーブ装置２００の詳細な構成を説明する。図４は本開示の実施の形態１のスレーブ装置２００の機能ブロック図である。スレーブ装置２００は、上記で説明した通信ポート２０１、２０２の他、記憶部２１０、処理部２２０、制御部２３０を備える。
【００３３】
まず記憶部２１０について説明する。記憶部２１０は、送受信する情報と、通信のための設定を記憶する。記憶部２１０は、ワーキングメモリなどに該当する情報を記憶する装置である。記憶部２１０は、受信情報記憶部２１１と、設定記憶部２１２と、送信情報記憶部２１３とを備える。
【００３４】
受信情報記憶部２１１は、スレーブ装置２００が通信ポート２０１または通信ポート２０２を介してマスタ装置１００と他のスレーブ装置２００から取得した情報を記憶する。この情報は例えば、構成情報取得時に取得する構成情報要求フレームの情報、通信設定時にマスタ装置１００から取得する設定情報、および周期通信時にマスタ装置１００および他のスレーブ装置２００から取得する周期データの情報等がある。
【００３５】
設定記憶部２１２は、後述する設定情報取得部２２１で取得したマスタ装置１００から取得する周期通信時の周期データの送信タイミングを含む設定情報を記憶する。
【００３６】
送信情報記憶部２１３は、スレーブ装置２００から送信する情報を記憶する。この情報とは、例えば構成情報取得時にマスタ装置１００へ送信する構成情報応答フレームの情報、および周期通信時に送信する周期データの情報等である。
【００３７】
続いて処理部２２０について説明する。処理部２２０は、設定情報取得部２２１と、送信情報生成部２２２とを備える。
【００３８】
設定情報取得部２２１は、受信情報記憶部２１１に記憶された受信情報から、通信設定動作時にマスタ装置１００から受信した設定情報から周期データの送信タイミングの設定情報を取得する。
【００３９】
送信情報生成部２２２は、スレーブ装置２００からマスタ装置１００または他のスレーブ装置２００へ送信する構成情報応答フレーム等の情報を生成し、送信情報記憶部２１３に記憶させる。
【００４０】
次に、制御部２３０について説明する。制御部２３０は送信制御部２３１と、時刻取得部２３２とを備える。
【００４１】
送信制御部２３１は、時刻取得部２３２から時刻情報を取得し、送信情報記憶部２１３が記憶する送信する予定の情報を、送信すべき時刻にマスタ側の通信ポート２０１または末端側の通信ポート２０２から送信するよう送信情報記憶部２１３を制御する。なお、送信に用いる通信ポートは、マスタ側の通信ポート２０１と末端側の通信ポート２０２のうち、情報の送信先の装置と接続された通信ポートから送信するよう、送信制御部２３１が送信情報記憶部２１３を制御する。
【００４２】
時刻取得部２３２は、周期通信を行う際に、時分割方式で通信を行うためにマスタ装置１００とスレーブ装置２００とで時刻を同期させた時計から、時刻情報を取得する。
【００４３】
次に、実施の形態１のネットワークシステム１の動作を図５を用いて説明する。図５は実施の形態１のネットワークシステム１の動作の概要を示すフローチャートである。
【００４４】
ネットワークシステム１が運転を開始すると、図５のフローが開始される。まず、ステップＳ１にて通信を開始するよう指示がなされたか否かをマスタ装置１００が判断する。通信開始の指示がなされるまで、ネットワークシステム１はステップＳ１を繰り返す。この通信開始の指示は、例えばユーザがマスタ装置１００に対して行う操作である。
【００４５】
ステップＳ１にて通信開始指示がなされたと判断されると、ステップＳ２に進み、マスタ装置１００が構成情報取得動作を開始する。
ここで、ネットワークシステム１の構成情報取得動作について説明する。図６は実施の形態１の構成情報を取得するための通信を示すシーケンス図である。図６は構成情報取得動作の間に行われる通信を上から時系列順に矢印で示している。なお矢印の元が通信時に情報を送信する装置であり、矢印の先が通信時に情報を受信する装置を指している。以降で示すシーケンス図の矢印の意味も同様とする。
【００４６】
図６において、実線の矢印は構成情報要求フレームの通信を示し、点線の矢印は構成情報応答フレームの通信を示す。
【００４７】
構成情報取得動作ではまずマスタ装置１００がスレーブ装置２００ａに対してスレーブ装置２００との通信に必要な構成情報を要求するための構成情報要求フレームを通信ポート１０１から送信する。
【００４８】
構成情報要求フレームを受信したスレーブ装置２００ａは、構成情報要求フレームの情報を更新して、更新した構成情報要求フレームをスレーブ装置２００ｂに対して送信する。その後、スレーブ装置２００ａはマスタ装置１００に対して、構成情報応答フレームを送信する。
【００４９】
以後、構成情報要求フレームを受信したスレーブ装置２００ｂ〜２００ｄも同様の動作を行う。スレーブ装置２００ｅが構成情報要求フレームを受信すると、スレーブ装置２００ｅはネットワークシステム１の端の装置であるため、構成情報要求フレームを送信せずに、マスタ装置１００に構成情報応答フレームを送信する。
【００５０】
以上の動作により、マスタ装置１００に対してネットワークシステム１を構成する全てのスレーブ装置２００ａ〜２００ｅが構成情報応答フレームを送信することで、ネットワークシステム１の構成情報取得動作が完了する。
【００５１】
ステップＳ２での構成情報取得が完了すると、ステップＳ３に進み、ネットワークシステム１は通信設定動作を行う。
【００５２】
ここで、ネットワークシステム１の通信設定動作について説明する。図７は図１と同じ構成のネットワークシステム１において、実施の形態１の通信設定の通信を示すシーケンス図である。図７は装置間の通信の時系列を上から順に矢印で示す。図７において、実線の矢印は設定情報の通信を示す。通信設定動作では、まずマスタ装置１００が各スレーブ装置２００の周期データの送信タイミングを位相差とホップ数に基づいて決定する。送信タイミングの決定方法については後述する。その後、マスタ装置１００は、スレーブ装置２００ａに対して周期データの送信タイミングを含む設定情報を送信する。設定情報を受信したスレーブ装置２００ａは、自装置の通信設定を行う。スレーブ装置２００が行う通信設定とは、スレーブ装置２００が１周期内のどの時間帯にどの装置に対して周期データを送信するかを設定記憶部２１２に記憶することである。その後、マスタ装置１００は、スレーブ装置２００ｂ〜２００ｅに対しても同様に設定情報を送信する。スレーブ装置２００ｂ〜２００ｅもスレーブ装置２００ａと同様に自装置の通信設定を行う。
【００５３】
図５のステップＳ３の後、ステップＳ４に進み、マスタ装置１００とスレーブ装置２００との周期通信動作が開始される。周期通信動作とは、周期的な通信を繰り返すネットワークシステム１において、繰り返される動作のことであり、ネットワークシステム１が主に行う通信動作である。具体例としては、マスタ装置１００がスレーブ装置２００に対して指示情報を周期データとして送信し、スレーブ装置２００はこの指示情報に基づいてセンサ等の監視対象機器を制御する。また、スレーブ装置２００はマスタ装置１００および他のスレーブ装置２００に対してスレーブ装置２００に接続されたセンサ等の監視対象機器から取得した値を周期データとして送信する。
【００５４】
ステップＳ４にて周期通信が完了した後、ステップＳ５に進み、通信を終了するか否かをマスタ装置１００が判断する。通信を終了する場合は、図５のフローは終了するが、通信を終了しない場合は、ステップＳ６に進む。
【００５５】
ステップＳ６において、マスタ装置１００は、構成情報取得動作が必要か否かを判断する。構成情報取得動作が必要である場合は、ステップＳ２に戻り、ステップＳ５にて通信終了と判断されるまで、ステップＳ６までの動作を繰り返す。構成情報取得動作が不要な場合はステップＳ４に戻り、ステップＳ５にて通信終了と判断されるまで、ステップＳ６までの動作を繰り返す。
【００５６】
なお、構成情報取得動作が必要である場合とは、例えば、所定時間ごとにネットワークシステム１に新たなスレーブ装置２００が追加または削除されたかを確認するよう、マスタ装置１００に設定していた場合には、その所定時間の経過後である。
【００５７】
構成情報取得動作が不要な場合とは、例えば、所定時間ごとにネットワークシステム１に対して新たな装置が追加または削除されたかを確認するよう、マスタ装置１００に設定していた場合には、その所定時間の経過前である。
【００５８】
以上がネットワークシステム１の動作である。
【００５９】
次に、各動作の詳細について説明する。まず、図５のステップＳ２の構成取得時のマスタ装置１００の動作について説明する。図８は、図５のステップＳ２の構成情報取得時のマスタ装置１００の動作を示すフローチャートである。
【００６０】
図５のステップＳ１にて通信開始の指示がネットワークシステム１になされると、ステップＳ２の構成情報取得動作が開始され、マスタ装置１００は図８で示す構成情報取得時の動作を開始する。
【００６１】
まずステップＳ２１１において、マスタ装置１００は通信ポート１０１から通信ケーブル３を介して構成情報要求フレームをスレーブ装置２００ａに送信する。このとき、マスタ装置１００の処理部１２０は受信監視タイマ（図示せず）をスタートさせる。受信監視タイマとは、処理部１２０が備える機能であって、構成情報応答フレームの受信完了を判断するために、構成情報要求フレームを送信してからの時間経過を計時する機能である。処理部１２０は、ステップＳ２１１にて時刻取得部１３２からそのときの時刻情報を取得し、この時刻情報を構成情報応答フレームの取得を開始した時刻とすることで、受信監視タイマをスタートする。
【００６２】
ステップＳ２１１の後、ステップ２１２において、受信情報記憶部１１１は取得した構成情報応答フレームの情報を記憶する。
【００６３】
ステップＳ２１２の後、ステップＳ２１３において、構成情報取得部１２１は、ネットワークシステム１に接続されている全てのスレーブ装置２００から構成情報要求フレームに対する応答である構成情報応答フレームを受信したか、または受信監視タイマをスタートさせてから所定時間経過しているかを確認する。
【００６４】
受信監視タイマをスタートさせてからの経過時間は、処理部１２０が時刻取得部１３２からそのときの時刻情報を取得し、ステップＳ２１１にて取得した構成情報応答フレームの取得を開始したときの時刻情報との差から算出する。所定時間は、全てのスレーブ装置２００から構成情報応答フレームを受信するために十分な時間であり、ユーザが予め指定するか、マスタ装置１００が予め記憶する時間である。この所定時間を経過しても、全てのスレーブ装置２００から構成情報応答フレームを受信できていない場合は、マスタ装置１００はタイムアウトしたと判断する。
【００６５】
マスタ装置１００は全てのスレーブ装置２００から構成情報応答フレームの受信が完了しておらず、さらに受信監視タイマも所定時間を経過していなければ、ステップＳ２１２に戻り、構成情報応答フレームの受信を繰り返す。マスタ装置１００はすべてのスレーブ装置２００から構成情報応答フレームを受信したか、構成情報応答フレームの受信監視タイマの時間が所定時間を経過し、タイムアウトしたとステップＳ２１３において判断した場合、ステップＳ２１４に進む。
【００６６】
ステップＳ２１４では、ステップＳ２１４までに受信した構成情報応答フレームの情報を用いて、構成情報取得部１２１がネットワークシステム１の構成情報を取得し、設定記憶部１１２に記憶する。
【００６７】
以上のステップＳ２１１からステップＳ２１４の動作により、マスタ装置１００はネットワークシステム１の構成情報を取得する。
【００６８】
続いて、構成情報取得時のスレーブ装置２００の動作を説明する。図９は、図５のステップＳ２の構成情報取得時のスレーブ装置２００の動作を示すフローチャートである。
【００６９】
ステップＳ２２１において、マスタ側の通信ポート２０１は、マスタ装置１００から送信された構成情報要求フレームを取得し、受信情報記憶部２１１に記憶する。スレーブ装置２００は構成情報要求フレームを受信した場合にステップＳ２２２に進む。
【００７０】
ステップＳ２２２において、スレーブ装置２００の処理部２２０は、自装置がネットワークシステム１内の末端のスレーブ装置２００ｅであるか否かを判断する。末端のスレーブ装置２００ｅであることは、例えば末端側の通信ポート２０２に通信ケーブル３が接続されていないこと、または予めマスタ装置１００から通知された構成情報等の情報を参照することから判断することができる。スレーブ装置２００は自装置が末端のスレーブ装置２００ｅではないと判断すると、ステップＳ２２３に進む。スレーブ装置２００は自装置が末端のスレーブ装置２００eであると判断すると、ステップＳ２２５に進む。
【００７１】
ステップＳ２２３では、スレーブ装置２００の送信情報生成部２２２は受信情報記憶部２１１に記憶した構成情報要求フレームを取得して更新する。送信情報生成部２２２は、更新した構成情報要求フレームを送信情報記憶部２１３に記憶する。
【００７２】
ここで、構成情報要求フレームについて図１０を用いて説明する。図１０は構成情報要求フレームに含まれる情報を示す説明図である。図１０では、上から時系列順にマスタ装置１００から末端のスレーブ装置２００ｅまで送信される構成情報要求フレームに含まれる情報を示す。図１０に示すように、構成情報要求フレームは、送信元装置の識別情報と、送信先装置の識別情報と、マスタ装置１００と送信元装置が通信する際のホップ数の情報とを含む。具体的には、１行目は、マスタ装置１００からスレーブ装置２００ａに送信される構成情報要求フレームを示す。このとき送信される構成情報要求フレームに含まれるホップ数の値は０である。２行目は、スレーブ装置２００ａからスレーブ装置２００ｂに送信される構成情報要求フレームを示す。このとき送信される構成情報要求フレームに含まれるホップ数の値は１である。同様に、３行目はスレーブ装置２００ｂからスレーブ装置２００ｃに送信される構成情報要求フレーム、４行目はスレーブ装置２００ｃからスレーブ装置２００ｄに送信される構成情報要求フレーム、５行目はスレーブ装置２００ｄからスレーブ装置２００eに送信される構成情報要求フレームを示す。図１０に示すように、スレーブ装置２００は、ステップＳ２２３にて、構成情報要求フレームを更新する際、受信した構成情報要求フレームのホップ数に１を加算する。例えば、スレーブ装置２００ａは、マスタ装置１００からホップ数０の情報を含む構成情報要求フレームを受信すると、送信元装置の識別情報をスレーブ装置２００ａの識別情報であるＳ１、送信先装置の識別情報を送信先であるスレーブ装置２００ｂの識別情報であるＳ２とし、ホップ数に１を加算してホップ数を１とし、構成情報要求フレームを更新する。
【００７３】
ステップＳ２２４において、末端側の通信ポート２０２は、送信情報記憶部２１３に記憶されたス更新後の構成情報要求フレームをスレーブ装置２００に送信する。例えば、スレーブ装置２００ａの場合、送信元装置の識別情報をＳ１、送信先装置の識別情報をＳ２、及びホップ数を１に更新した構成情報要求フレームをスレーブ装置２００ｂに送信する。
【００７４】
ステップＳ２２５では、マスタ側の通信ポート２０１は、送信情報記憶部２１３に記憶された更新後の構成情報応答フレームを送信する。
ここで、構成情報応答フレームについて図１１を用いて説明する。図１１は構成情報応答フレームに含まれる情報を示す説明図である。図１１では、上から時系列順に各スレーブ装置２００からマスタ装置１００へ送信される構成情報応答フレームに含まれる情報を示す。図１１に示すように、構成情報応答フレームは、送信元の装置の識別情報と、送信先の装置の識別情報と、マスタ装置１００と送信元装置との通信におけるホップ数の情報を含む。
【００７５】
以上のステップＳ２２１からステップＳ２２５の動作をマスタ装置１００が全てのスレーブ装置と行うことにより、マスタ装置１００はネットワークシステム１の構成情報を取得することができる。マスタ装置１００に対してネットワークシステム１を構成する全てのスレーブ装置２００ａ〜２００ｅが構成情報応答フレームを送信することで、ネットワークシステム１の構成情報取得動作が完了する。
【００７６】
以上のように、ネットワークシステム１の構成情報取得動作が完了すると、マスタ装置１００には、通信設定動作に用いる構成情報が記憶されることになる。ここでマスタ装置１００が取得した構成情報を図１２に示す。図１２は実施の形態１のマスタ装置１００が取得した構成情報を示す説明図である。マスタ装置１００の構成情報取得部１２１は、図１１で示した構成情報応答フレームの情報から各スレーブ装置２００の識別情報と、各スレーブ装置２００がマスタ装置１００と通信を行うときのホップ数とを取得することができる。各スレーブ装置２００がマスタ装置１００と通信を行うときのホップ数は、各スレーブ装置２００の位相差である。従って、マスタ装置１００は、各スレーブ装置２００の識別情報と、各スレーブ装置２００の識別情報に対応する各スレーブ装置２００の位相差を図１２で示すように取得することができる。
【００７７】
次にステップＳ３の通信設定時のマスタ装置１００の動作について説明する。図１３は、通信設定時のマスタ装置１００の動作を示すフローチャートである。
【００７８】
まずステップＳ３０１で、マスタ装置１００の送信タイミング決定部１２２は、設定記憶部１１２に記憶された構成情報を用いて、周期通信において各装置が周期データを送信する送信タイミングを決定する。
【００７９】
ここで、図１４を用いて送信タイミング決定部１２２が決定する送信タイミングの決定方法について詳述する。図１４は送信タイミングの決定方法について説明する図である。図１４において、通信のホップ数と送信元装置の位相差は、構成情報に含まれる情報から得られる。
【００８０】
送信タイミング決定部１２２は、送信元装置と送信先装置の通信において、送信元装置の位相差をその送信元装置が行うことが可能な通信のホップ数でそれぞれ割った剰余を算出する。送信タイミング決定部１２２は、各スレーブ装置２００の位相差を各スレーブ装置２００が行うことが可能な通信のホップ数で割った剰余を算出した後、各スレーブ装置２００の周期データの送信タイミングを決定する。
送信タイミング決定部１２２は、同じホップ数の通信を行う第１のスレーブ装置２００と第２のスレーブ装置２００の送信タイミングを決定する場合において、第１のスレーブ装置２００の位相差の当該ホップ数による剰余の値と、第２のスレーブ装置２００の位相差の当該ホップ数による剰余の値とが同じ場合に、第１のスレーブ装置と第２のスレーブ装置の送信タイミングを同じタイミングとなるように決定する。図１４に示すように、例えば同じホップ数１の通信を行うスレーブ装置２００ａおよびスレーブ装置２００ｂの通信の送信タイミングを決定する場合において、スレーブ装置２００ａの位相差１のホップ数１による剰余の値０と、スレーブ装置２００ｂの位相差２のホップ数１による剰余の値は同じであるため、スレーブ装置２００ａと、スレーブ装置２００ｂの送信タイミングを同じタイミングである送信タイミングＴ１に決定する。
送信タイミング決定部１２２は、同じホップ数の通信を行う第１のスレーブ装置２００と第２のスレーブ装置２００の送信タイミングを決定する場合において、第１のスレーブ装置２００の位相差の当該ホップ数による剰余の値と、第２のスレーブ装置２００の位相差の当該ホップ数による剰余の値とが異なる場合には、異なる送信タイミングを割り当てている。図１４に示すように、例えばホップ数２の通信を行うスレーブ装置２００ｂの位相差２のホップ数２による剰余の値は０であり送信タイミングＴ２が割り当てられる。ホップ数２の通信を行うスレーブ装置２００ａの位相差１のホップ数２による剰余の値は１であり送信タイミングＴ３が割り当てられる。
送信タイミング決定部１２２は、異なるホップ数の通信を行う第１のスレーブ装置２００と第２のスレーブ装置２００の送信タイミングを決定する場合において、異なる送信タイミングとする。図１４に示すように、例えばホップ数１の通信には、送信タイミングＴ１が割り当て、ホップ数２〜５の行には、送信タイミングＴ１以外を割り当てる。割り当てる送信タイミングの候補T１〜T９は、予めマスタ装置１００に記憶させておけばよい。
【００８１】
図１４では、実施の形態１では同じホップ数の通信において、位相差のホップ数による剰余の値が同じとなる装置は全て同一の送信タイミングとなるよう送信タイミングを決定するように示しているが、少なくとも１つのホップ数の通信において、複数の装置間での通信を同一の送信タイミングとなるよう送信タイミングを決定すれば、通信効率を向上させることができる。
【００８２】
また、送信タイミング決定部１２２は、同じホップ数の通信が同時に行われるように、各装置の周期データの送信タイミングを決定すればよく、必ずしも剰余の値を用いる必要はない。例えば、同じホップ数の通信を行う第１のスレーブ装置と第２のスレーブ装置の送信タイミングを決定する場合において、第１のスレーブ装置の位相差からホップ数を引いた値と、第２のスレーブ装置の位相差の値とが同じ場合に、第１のスレーブ装置と第２のスレーブ装置の送信タイミングを同じタイミングに決定してもよい。このように構成しても、結果として同じホップ数の通信が同時に行われるようになり、通信効率を向上させることができる。ただし、この構成において、第１のスレーブ装置の位相差のホップ数による剰余の値と、第２のスレーブ装置の位相差のホップ数による剰余の値とが異なる場合に、第１のスレーブ装置と第２のスレーブ装置のうち位相差のホップ数による剰余の値が小さいスレーブ装置の送信タイミングを、スレーブ装置の位相差のホップ数による剰余の値が大きいスレーブ装置の送信タイミングよりも早いタイミングとなるように決定すれば、より回線の空きを減らすことができ、通信効率を向上させることができる。
【００８３】
ステップＳ３０１の後、ステップＳ３０２では、決定した送信タイミングの情報を用いて、各スレーブ装置２００に設定する設定情報を生成する。具体的には、送信情報生成部１２３は、各スレーブ装置２００の識別情報と設定情報とを関連づけたデータを生成し、送信情報記憶部１１３に記憶する。ここで、図１５に基づいて設定情報の内容を説明する。図１５は実施の形態１における設定情報の内容を示す図である。周期データを送信する送信元装置の識別情報と、送信タイミングの情報と、送信先装置の識別情報とが対応づけられ、設定情報として送信情報記憶部１１３に記憶される。
【００８４】
ステップＳ３０２の後、ステップＳ３０３において、マスタ装置１００の通信ポート１０１は送信情報記憶部１１３に記憶した設定情報をスレーブ装置２００に送信する。以上のようにして、マスタ装置１００は全ての通信について、全ての送信元装置の送信タイミングを決定する。
【００８５】
続いて、ステップＳ４の周期通信時のマスタ装置１００およびスレーブ装置２００の動作を図１６を用いて説明する。図１６は、周期通信時のマスタ装置１００およびスレーブ装置２００の動作を示すフローチャートである。
【００８６】
図５のステップＳ３の通信設定動作が完了すると、各装置は周期通信の動作を開始する。ステップＳ４０１にて、マスタ装置１００の処理部１２０は、設定記憶部１１２に記憶した設定情報に基づいて、周期データを送信する時刻になったか否かを時刻取得部１３２から時刻情報を取得し、判断する。同様にスレーブ装置２００の処理部２２０も、設定記憶部２１２に記憶した設定情報に基づいて、周期データを送信する時刻になったか否かを時刻取得部２３２から時刻情報を取得し、判断する。送信タイミングとなるまで、マスタ装置１００およびスレーブ装置２００は、ステップＳ４０１の判断を繰り返す。マスタ装置１００およびスレーブ装置２００は、送信タイミングとなったと判断されると、ステップＳ４０２に進む。
【００８７】
ステップＳ４０２において、マスタ装置１００の処理部１２０およびスレーブ装置２００の処理部２２０は、設定情報に従い、その送信タイミングに対応する送信先装置に対して周期データを送信する。なお、この周期データは数値でも文字列でもよい。
【００８８】
ステップＳ４０３において、周期通信が終了する時刻になったか否かをマスタ装置１００の処理部１２０およびスレーブ装置２００の処理部２２０が判断する。周期通信の終了時刻になるまで、マスタ装置１００およびスレーブ装置２００はステップＳ４０１とステップＳ４０２の動作を繰り返す。
【００８９】
ステップＳ４０３でマスタ装置１００の処理部１２０が、設定記憶部１１２に記憶した設定情報に基づいて、周期通信終了時刻になったと時刻取得部１３２から時刻情報を取得して判断すると、マスタ装置１００は周期通信動作を終了する。スレーブ装置２００では処理部２２０が、設定記憶部２１２に記憶した設定情報に基づいて、周期通信終了時刻になったと時刻取得部２３２から時刻情報を取得して判断すると、スレーブ装置２００は周期通信動作を終了する。
【００９０】
ここで、マスタ装置１００と複数のスレーブ装置２００で構成されるネットワークシステム１において、周期通信時に全ての装置が周期データを共有する通信を行う場合に、実施の形態１のマスタ装置１００および通信方法による、回線使用率向上の効果を説明する。
【００９１】
図１７は、実施の形態１の通信方法を適用しない場合の周期通信の例を示すシーケンス図である。図１７において、矢印は装置間の通信を示す。また、各装置間の通信は、上から時系列順で割り当てられている。斜線部は、矢印の通信を行う時間において通信が行われない回線を示す。図１７に示すように、実施の形態１に係る通信装置を用いないシステムにおいては、回線の空きが多いことが分かる。例えば、マスタ装置１００とスレーブ装置Ｓ１との通信が行われる時刻と同じタイミングには、スレーブ装置Ｓ１からスレーブ装置Ｓ５までの回線が使用されていない。
【００９２】
一方、図１８は、図１７と同じ構成のネットワークシステム１において、実施の形態１の通信方法を適用した場合の周期通信を示すシーケンス図を示す。図１７と同様、矢印は装置間の通信を示し、斜線部は、矢印の通信を行う時間において通信が行われない回線を示す。実施の形態１に係るマスタ装置１００は同じタイミングに同じホップ数の通信を複数のスレーブ装置２００が行うよう、各スレーブ装置２００に設定する周期データの送信タイミングを決定するので、マスタ装置１００と特定のスレーブ装置２００が１対１通信を行う時刻において、使用されていない他の装置間の回線に通信が割り当てられている。したがって、全ての通信が完了するまでの時間内で、図１７と図１８とで回線の空き部分を比較すると、図１８で示した実施の形態１の通信方法を適用した場合の方が、回線の空きが少ない。従って、実施の形態１の通信方法を適用すると、周期データを共有する通信を行う装置間の距離が近いときの回線の空きを減らすことが可能となる。
【００９３】
また、同じホップ数の通信を行う通信では、通信にかかる時間が同じ単位時間かかるとすれば、図１８で示した実施の形態１の通信方法を適用した場合の方が、図１７で示した通信方法を適用しない場合の周期通信の例の場合より、６単位時間だけ最後の通信を行うまでの所要時間が短い。これは回線の使用率を向上できたためであり、実施の形態１の通信方法を適用すると、通信周期の短縮も可能となる。通信周期が短縮されることにより、ネットワークシステム１の装置数が増加した場合でも通信周期の増加を抑えることができる。従って、装置数が多い大規模なネットワークシステム１でも高速な通信を実現できる。
【００９４】
以上のようにマスタ装置１００が各スレーブ装置２００の位相差に基づいて、周期データを共有する通信を行うときに中継されるスレーブ装置２００の数に基づいて決められるホップ数に基づいて、同じタイミングに同じホップ数の通信を複数のスレーブ装置２００が行うよう、各スレーブ装置２００に設定する周期データの送信タイミングを決定するため、回線使用率を向上し、ネットワークシステム１の通信効率を向上させることができる。
【００９５】
以下、図１９を用いて実施の形態１のマスタ装置１００およびスレーブ装置２００のハードウェア構成について説明する。図１９は、実施の形態１のマスタ装置１００およびスレーブ装置２００のハードウェア構成図である。マスタ装置１００およびスレーブ装置２００は入力装置９０１、出力装置９０２、記憶装置９０３、及び処理装置９０４を備える。
【００９６】
入力装置９０１は、マスタ装置１００の通信ポート１０１、およびスレーブ装置２００の通信ポート２０１、２０２が備える、情報が入力されるインターフェースである。このインターフェースとしては、ＬＡＮケーブルまたは同軸ケーブル等の有線通信ネットワークでも、無線通信技術を用いた無線通信ネットワークでもよい。
【００９７】
出力装置９０２は、マスタ装置１００の通信ポート１０１、およびスレーブ装置２００の通信ポート２０１、２０２が備える、情報が入力される通信インターフェースである。このネットワークはＬＡＮケーブルまたは同軸ケーブル等の有線通信ネットワークでも、無線通信技術を用いた無線通信ネットワークでもよい。
【００９８】
記憶装置９０３は、マスタ装置１００の記憶部１１０およびスレーブ装置２００の記憶部２１０が備える情報を記憶する装置である。例えば、ＲＡＭ、ＲＯＭ、フラッシュメモリー等の不揮発性または揮発性の半導体メモリや、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク等が該当する。
【００９９】
処理装置９０４は、マスタ装置１００の処理部１２０と制御部１３０、およびスレーブ装置２００の処理部２２０と制御部２３０が備える。処理装置９０４は専用のハードウェアであっても、記憶装置９０３に記録されるプログラムを実行するＣＰＵ（ＣｅｎｔｒａｌＰｒｏｃｅｓｓｉｎｇＵｎｉｔ）であってもよい。
【０１００】
処理装置９０４が専用のハードウェアである場合、処理装置９０４は、例えば、単一回路、複合回路、プログラム化したプロセッサー、並列プログラム化したプロセッサー、ＡＳＩＣ、ＦＰＧＡ、またはこれらを組み合わせたものが該当する。
【０１０１】
処理装置９０４がＣＰＵの場合、処理装置９０４の機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアの組み合わせにより実現される。ソフトウェアやファームウェアはプログラムとして記述され、記憶装置９０３に記録される。処理装置９０４は記憶装置９０３に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。
【０１０２】
なお、処理装置９０４の各機能は、一部をハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。
【０１０３】
例えば、マスタ装置１００の制御部１３０については専用のハードウェアで構成し、処理部１２０については記憶装置９０３に記録されたプログラムを実行するＣＰＵで構成することによりその機能を実現してもよい。
【０１０４】
このように、処理装置９０４はハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
【０１０５】
以上のようにして、本開示のマスタ装置１００および通信方法によれば、スレーブ装置２００の位相差に基づいて、周期データを共有する通信を行うときに中継されるスレーブ装置２００の数に基づいて決められるホップ数に基づいて、同じタイミングに同じホップ数の通信を複数のスレーブ装置２００が行うよう、各スレーブ装置２００に設定する周期データの送信タイミングを決定するため、回線使用率を向上し、ネットワークシステム１全体の通信効率を向上させることができる。
【符号の説明】
【０１０６】
１        ネットワークシステム
３        通信ケーブル
１００    マスタ装置
１０１    通信ポート
１１０    記憶部
１１１    受信情報記憶部
１１２    設定記憶部
１１３    送信情報記憶部
１２０    処理部
１２１    構成情報取得部
１２２    送信タイミング決定部
１２３    送信情報生成部
１３０    制御部
１３１    送信制御部
１３２    時刻取得部
２００    スレーブ装置
２０１    通信ポート
２０２    通信ポート
２１０    記憶部
２１１    受信情報記憶部
２１２    設定記憶部
２１３    送信情報記憶部
２２０    処理部
２２１    設定情報取得部
２２２    送信情報生成部
２３０    制御部
２３１    送信制御部
２３２    時刻取得部
９０１    入力装置
９０２    出力装置
９０３    記憶装置
９０４    処理装置
【要約】
本開示のマスタ装置は、複数のスレーブ装置と周期データを共有する通信を行い、スレーブ装置がマスタ装置と通信を行うときに中継される他のスレーブ装置の数に基づいて決められるスレーブ装置の位相差を取得する構成情報取得部と、構成情報取得部が取得した位相差に基づいて、スレーブ装置がマスタ装置又は他のスレーブ装置と通信を行うときに中継される他のスレーブ装置の数からホップ数を算出し、同じタイミングに同じホップ数の通信を複数のスレーブ装置が行うよう、スレーブ装置の周期データの送信タイミングを決定する送信タイミング決定部とを備える。【図１】
0006798649.tif 000002
【図２】
0006798649.tif 000003
【図３】
0006798649.tif 000004
【図４】
0006798649.tif 000005
【図５】
0006798649.tif 000006
【図６】
0006798649.tif 000007
【図７】
0006798649.tif 000008
【図８】
0006798649.tif 000009
【図９】
0006798649.tif 000010
【図１０】
0006798649.tif 000011
【図１１】
0006798649.tif 000012
【図１２】
0006798649.tif 000013
【図１３】
0006798649.tif 000014
【図１４】
0006798649.tif 000015
【図１５】
0006798649.tif 000016
【図１６】
0006798649.tif 000017
【図１７】
0006798649.tif 000018
【図１８】
0006798649.tif 000019
【図１９】
0006798649.tif 000020