(57)【要約】  データの送受信をトークンパッシング方式で行なうとともにスレーブ局との間で送受信するデータの演算処理を行なってデータのデータ更新を行なうデータ通信システムにおいて、スレーブ局ｍ１，ｍ２のデータ更新を行なう管理マスタ局Ｍと、スレーブ局ｌ１，ｌ２のデータ更新を行なうローカル局Ｌと、を有し、管理マスタ局Ｍは、管理マスタ局Ｍを宛先としたトークンフレームを受信した場合にデータ更新を行ない、ローカル局Ｌは、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２から送信されるトークンフレームの宛先を判定し、宛先が管理マスタ局Ｍである場合にデータ更新を行なう。
2009147714.tif 000002
【特許請求の範囲】
【請求項１】
スレーブ局との間のデータの送受信をマルチキャスト通信を用いたトークンパッシング方式で行なうとともに前記スレーブ局との間で送受信するデータの演算処理を行なって前記データのデータ更新を行なうマスタ局と、前記スレーブ局と、を具備するデータ通信システムにおいて、
前記マスタ局は、
前記データ通信システム内の管理を行うとともに所定のスレーブ局のデータ更新を行なう第１のマスタ局と、
前記第１のマスタ局がデータ更新するスレーブ局とは異なるスレーブ局のデータ更新を行なう第２のマスタ局と、
を有し、
前記第１および第２のマスタ局は、前記スレーブ局から前記第１のマスタ局を宛先としたトークンフレームを受信した場合にデータ更新を行なうことを特徴とするデータ通信システム。
【請求項２】
前記第２のマスタ局は、
前記スレーブ局から送信されるトークンフレームの宛先を判定する宛先判定部と、
前記宛先判定部が前記トークンフレームの宛先は前記第１のマスタ局であると判定した場合に前記データ更新を行なうデータ更新処理部と、
を備えることを特徴とする請求項１に記載のデータ通信システム。
【請求項３】
前記第１のマスタ局は、
前記第１のマスタ局を宛先としたトークンフレームであって且つデータ更新を許可する更新許可情報を有したトークンフレームを受信した場合にデータ更新を行ない、
前記第２のマスタ局は、
前記スレーブ局から送信されるトークンフレームが前記更新許可情報を有しているか否かを判定する許可判定部をさらに備え、
前記データ更新処理部は、前記宛先判定部が前記トークンフレームの宛先は前記第１のマスタ局であると判定し、且つ前記許可判定部が前記スレーブ局から送信されるトークンフレームは更新許可情報を有していると判定した場合に、前記データ更新を行なうことを特徴とする請求項２に記載のデータ通信システム。
【請求項４】
前記トークンフレームは、前記第１マスタ局および前記第２のマスタ局へ送信された後、前記各スレーブ局に送信されるよう周回順序が設定されることを特徴とする請求項１〜３のいずれか１つに記載のデータ通信システム。
【請求項５】
前記第１および第２のマスタ局は、データ更新を行なった後に行なう次のデータ送信処理を、前記第１のマスタ局と第２のマスタ局とで同時に開始することを特徴とする請求項１〜４のいずれか１つに記載のデータ通信システム。
【請求項６】
データ通信システム内でスレーブ局との間のデータの送受信をマルチキャスト通信を用いたトークンパッシング方式で行なうとともに前記スレーブ局との間で送受信するデータの演算処理を行なって前記データのデータ更新を行なうデータ通信装置において、
前記スレーブ局から送信されるトークンフレームの宛先を判定する宛先判定部と、
前記宛先判定部が前記トークンフレームの宛先は、前記データ通信システム内の管理を行うとともに所定のスレーブ局のデータ更新を行なうマスタ局であると判定した場合に、前記データ更新を行なうデータ更新処理部と、
を備えることを特徴とするデータ通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタ局とスレーブ局との間のデータ通信をトークンパッシング方式で行なうデータ通信システムおよびデータ通信装置に関するものである。
【背景技術】
【０００２】
工場等の製造現場では、ＰＬＣ（Programmable  Logic  Controller）、インバータ、温度計などのフィールド機器間を接続することによって通信システム（フィールドネットワーク）を構成し、フィールド機器間でデータ通信を行いながら種々の処理を行なっている。このような通信システムでは、フィールド機器間で行なわれるデータ通信のリアルタイム性を保証するため、例えばイーサネット（登録商標）技術などのＬＡＮ（Local  Area  Network）規格を用いたトークンパッシング方式が採用されている。近年、通信システムには、多数のフィールド機器が接続されるので、各フィールド機器で扱うデータを効率良く短時間でデータ処理することが望まれている。【０００３】
例えば、特許文献１に記載のデータリンク方法では、データリンクシステム内に２台のマスタ局を設けている。そして、各マスタ局が配下のローカル局との間でデータ通信を行っている。【０００４】
【特許文献１】特開平５−２５２１６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の技術では、各マスタ局は、それぞれ自局がトークンを受信したタイミングでデータ更新（データ処理）を行なっているので、各マスタ局が行なうデータ更新は非同期で行なわれることとなる。このため、システム全体の状態に対して、マスタ局間のデータ更新にずれが生じてしまうという問題があった。【０００６】
また、各マスタ局が行なうデータ更新の更新間隔（リンクスキャン）時間には、全マスタ局が行なうデータ更新処理の合計時間が含まれることとなる。例えば、通信システムに２台のマスタ局が設けられている場合、１つのマスタ局が行なうデータ更新の更新間隔時間には、２台分のデータ更新処理時間（自マスタ局のデータ更新処理時間および他マスタ局のデータ更新処理時間）が含まれることとなる。したがって、各マスタ局が行なうデータ更新の更新間隔が長くなり、各マスタ局はローカル局との間のデータ通信を短時間で完了することができないという問題があった。【０００７】
本発明は、上記に鑑みてなされたものであって、効率良く動作が可能な適切なタイミングでデータ更新を行なうとともに通信システム内のデータ通信を短時間で行なうことができるデータ通信システムおよびデータ通信装置を得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、スレーブ局との間のデータの送受信をマルチキャスト通信を用いたトークンパッシング方式で行なうとともに前記スレーブ局との間で送受信するデータの演算処理を行なって前記データのデータ更新を行なうマスタ局と、前記スレーブ局と、を具備するデータ通信システムにおいて、前記マスタ局は、前記データ通信システム内の管理を行うとともに所定のスレーブ局のデータ更新を行なう第１のマスタ局と、前記第１のマスタ局がデータ更新するスレーブ局とは異なるスレーブ局のデータ更新を行なう第２のマスタ局と、を有し、前記第１および第２のマスタ局は、前記スレーブ局から前記第１のマスタ局を宛先としたトークンフレームを受信した場合にデータ更新を行なうことを特徴とする。
【発明の効果】
【０００９】
本発明にかかるデータ通信システムは、効率良く動作が可能な適切なタイミングでデータ更新を行なうとともに通信システム内のデータ通信を短時間で行なうことができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態１に係るデータ通信システムの構成を示す図である。
【図２】図２は、実施の形態１に係るデータ通信システムのローカル局の構成を示すブロック図である。
【図３】図３は、実施の形態１に係るデータ通信システムのデータ更新のタイミングを説明するための図である。
【図４】図４は、ローカル局が行なうトークンの宛先の判定方法を説明するための図である。
【図５】図５は、非同期処理時のデータ更新間隔を説明するための図である。
【図６】図６は、実施の形態１に係るデータ通信システムの動作手順を示すフローチャートである。
【図７】図７は、リング型接続によって接続されたデータ通信システムの構成を示す図である。
【図８】図８は、実施の形態２に係るデータ通信システムのローカル局の構成を示すブロック図である。
【図９】図９は、実施の形態２に係るデータ通信システムのデータ更新のタイミングを説明するための図である。
【図１０】図１０は、実施の形態２に係るデータ通信システムの動作手順を示すフローチャートである。
【符号の説明】
【００１１】
１１  データ更新処理部
１２  データ送受信部
１３  管理マスタアドレス記憶部
１４  アドレス判定部
１５  データ更新フラグ判定部
１００  データ通信システム
ｌ１，ｌ２，ｍ１，ｍ２  スレーブ局
Ｌ  ローカル局
Ｍ  管理マスタ局
【発明を実施するための最良の形態】
【００１２】
以下に、本発明に係るデータ通信システムおよびデータ通信装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。【００１３】
実施の形態１．
図１は、実施の形態１に係るデータ通信システムの構成を示す図である。データ通信システム１００は、通信機器（ノード）として、管理マスタ局（第１のマスタ局）Ｍ、ローカル局（第２のマスタ局）Ｌ、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２を有している。データ通信システム１００では、伝送路（バス２）上に、管理マスタ局Ｍ、ローカル局Ｌ、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２が接続されており、互いに伝送路を介してデータ通信を行なう。ここでは、管理マスタ局Ｍの配下にあるスレーブ局がスレーブ局ｍ１，ｍ２であり、ローカル局Ｌの配下にあるスレーブ局がスレーブ局ｌ１，ｌ２である場合について説明する。【００１４】
本実施の形態のデータ通信システム１００は、管理マスタ局Ｍとローカル局Ｌとが同じタイミングでデータ更新（スレーブ局から受信したデータの演算処理など）を行なう。データ通信システム１００は、例えばイーサネット（登録商標）技術などのＬＡＮ規格を用いたトークンパッシング方式によって各局（管理マスタ局Ｍ、ローカル局Ｌ、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２）間のデータ通信（イーサネット（登録商標）フレームの送受信）を行なう。【００１５】
管理マスタ局Ｍ、ローカル局Ｌ、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２は、ぞれぞれフィールド機器などのコンピュータである。管理マスタ局Ｍは、ＰＬＣ（Programmable  Logic  Controller）などの中に配設されるネットワークユニットであり、配下にあるスレーブ局ｍ１，ｍ２から送られてくるデータのデータ処理や、データ通信システム１００内の管理を行う。【００１６】
また、ローカル局Ｌは、配下にあるスレーブ局ｌ１，ｌ２から送られてくるデータのデータ処理などを行う。スレーブ局ｍ１，ｍ２，ｌ１，ｌ２は、それぞれＩＯ機器やデジタル／アナログ変換装置などの周辺機器（図示せず）内に配設されており、これらの周辺機器に管理マスタ局Ｍやローカル局Ｌからの動作指示などを送る。【００１７】
データ通信システム１００では、スレーブ局ｍ１，ｍ２が管理マスタ局Ｍからのデータを用いて周辺機器を動作させ、スレーブ局ｌ１，ｌ２がローカル局Ｌからのデータを用いて周辺機器を動作させる。さらに、スレーブ局ｍ１，ｍ２は、それぞれが接続されている周辺機器から取得したデータを管理マスタ局Ｍに送り、スレーブ局ｌ１，ｌ２は、それぞれが接続されている周辺機器から取得したデータをローカル局Ｌに送る。【００１８】
管理マスタ局Ｍやローカル局Ｌでは、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２からのデータを用いて所定の演算を行い、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２へのデータを生成する。そして、生成したデータを管理マスタ局Ｍやローカル局Ｌからスレーブ局ｍ１，ｍ２，ｌ１，ｌ２へ送信する。データ通信システム１００は、管理マスタ局Ｍとスレーブ局ｍ１，ｍ２との間で行なうデータ通信処理や、ローカル局Ｌとスレーブ局ｌ１，ｌ２との間で行なうデータ通信処理を繰り返すことによって動作する。【００１９】
データ通信システム１００では、管理マスタ局Ｍが、何れの順番でトークンフレーム（以下、トークンという）が各局間を流れていくかを、主に物理的な構成（局の接続構成）に基づいて決定する。【００２０】
データ通信システム１００内の各局は、管理マスタ局Ｍが決定したトークン順序（トークンの周回順序）に従ってトークンを巡回させる。各局がマルチキャストでデータ通信システム１００内に送信するトークンには、次に送信権が与えられる局のＭＡＣ（Media  Access  Control）アドレス（以下、トークン判定用ＭＡＣアドレスという）を入れておく。【００２１】
データ通信システム１００内の各局は、自局宛てのトークン（トークン判定用ＭＡＣアドレスが自局のＭＡＣアドレスであるトークン）を受信した場合に、自局が送信権を獲得したことを認識し、必要に応じて自局からデータを送信したのち他局へのトークンを発行して次の送信局を指定する。データ通信システム１００では、この動作を各局が実施し、トークンがデータ通信システム１００内を巡回することによって伝送路上のフレームの輻輳状態を回避する。また、管理マスタ局Ｍは、トークンを受信するとスレーブ局ｍ１，ｍ２からデータを受信したことを認識し、データ更新を実行する。また、ローカル局Ｌは、トークンを受信するとスレーブ局ｌ１，ｌ２からデータを受信したことを認識し、データ更新を実行する。ここでのデータ更新は、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２から受信したデータを用いて所定の演算処理を実行し、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２へ送信するデータを生成する処理である。データ更新には、各局で構成されるネットワークへ送信データやネットワークからの受信データをＣＰＵユニットなどの演算処理装置との間で授受する処理も含まれている。【００２２】
本実施の形態の管理マスタ局Ｍは、データ通信システム１００内の管理として、トポロジーやトークンの順番などの管理を行う。ローカル局Ｌは、データ通信システム１００内の管理を行なってもよいし、行わなくてもよい。【００２３】
図２は、実施の形態１に係るデータ通信システムのローカル局の構成を示すブロック図である。同図に示すように、ローカル局Ｌは、データ更新処理部１１、データ送受信部１２、管理マスタアドレス記憶部１３、ＭＡＣアドレス判定部（宛先判定部）１４を有している。ローカル局Ｌは、例えばＡＳＩＣ（Application  Specific  Integrated  Circuit）やマイコンなどを用いて構成されている。【００２４】
データ更新処理部１１は、スレーブ局ｌ１，ｌ２から受信したデータを用いて所定の演算処理を実行し、この実行結果としてスレーブ局ｌ１，ｌ２へ送信するデータを生成する。本実施の形態のデータ更新処理部１１は、ＭＡＣアドレス判定部１４によるトークンの宛先判定結果に応じたタイミングでデータ更新を行なう。データ更新処理部１１は、ＭＡＣアドレス判定部１４がトークンの宛先は管理マスタ局Ｍであると判断した場合に、データ更新を行なう。【００２５】
データ送受信部１２は、データ通信システム１００内の他局との間で、データの送受信やトークンの送受信などを行う。ローカル局Ｌの配下のスレーブ局は、スレーブ局ｌ１，ｌ２なので、データ送受信部１２は、スレーブ局ｌ１，ｌ２との間でデータの送受信を行う。管理マスタアドレス記憶部１３は、管理マスタ局Ｍから送られてくる管理マスタ局ＭのＭＡＣアドレスを記憶しておく。【００２６】
ＭＡＣアドレス判定部１４は、他局から送られてくるトークンのトークン判定用ＭＡＣアドレス（更新許可情報）に基づいて、トークンが何れの局へのトークンであるかを判定する。ＭＡＣアドレス判定部１４は、トークン判定用ＭＡＣアドレスが自局のＭＡＣアドレスであるトークンを受信した場合に送信権を得たと判断する。また、本実施の形態のＭＡＣアドレス判定部１４は、管理マスタアドレス記憶部１３が記憶している管理マスタ局ＭのＭＡＣアドレスと、他局から受信したトークンのトークン判定用ＭＡＣアドレスとを比較することによって、管理マスタ局Ｍにトークンが送られたか否かを判断する。ＭＡＣアドレス判定部１４は、トークン判定用ＭＡＣアドレスが管理マスタ局ＭのＭＡＣアドレスであるトークンを受信した場合（管理マスタアドレス記憶部１３が記憶しているＭＡＣアドレスとトークン判定用ＭＡＣアドレスが一致した場合）に、データ更新のタイミングであると判断する。【００２７】
ＭＡＣアドレス判定部１４は、送信権を得た場合には、送信権を得たことをデータ送受信部１２に通知し、データ送受信部１２にデータ送信させる。また、ＭＡＣアドレス判定部１４は、データ更新のタイミングである場合には、データ更新タイミングであることをデータ更新処理部１１に通知し、データ更新処理部１１にデータ更新を行なわせる。【００２８】
図３は、実施の形態１に係るデータ通信システムのデータ更新のタイミングを説明するための図である。本実施の形態では、トークン順序が、管理マスタ局Ｍ、ローカル局Ｌ、スレーブ局ｍ１、スレーブ局ｌ１、スレーブ局ｌ２、スレーブ局ｍ２、管理マスタ局Ｍ、・・・である場合について説明する。なお、データ通信システム１００内では、送信側の局が、宛先を指定したデータやトークンをマルチキャスト通信によって送信し、受信側の局は自局に必要なデータのみを受信して不必要なデータやトークンを破棄するものとする。【００２９】
管理マスタ局Ｍは、配下のスレーブ局ｍ１，ｍ２にデータを送信し、スレーブ局ｍ１，ｍ２は管理マスタ局Ｍからのデータを受信する（ｓ１、ｓ２）。管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２へのデータ送信を完了すると、トークンをローカル局Ｌに送信し、ローカル局Ｌが管理マスタ局Ｍからのトークンを受信する（ｓ３）。【００３０】
本実施の形態のローカル局Ｌは、管理マスタ局Ｍからのトークンを受信した際にデータの更新処理を行なわず、次の処理を実行する。ローカル局Ｌは、管理マスタ局Ｍからトークンを受信すると、配下のスレーブ局ｌ１，ｌ２にデータを送信し、スレーブ局ｌ１，ｌ２はローカル局Ｌからのデータを受信する（ｓ４、ｓ５）。ローカル局Ｌは、スレーブ局ｌ１，ｌ２へのデータ送信を完了すると、トークンをスレーブ局ｍ１に送信し、スレーブ局ｍ１がローカル局Ｌからのトークンを受信する（ｓ６）。【００３１】
スレーブ局ｍ１は、管理マスタ局Ｍにデータを送信し、管理マスタ局Ｍはスレーブ局ｍ１からのデータを受信する（ｓ７）。スレーブ局ｍ１は、管理マスタ局Ｍへのデータ送信を完了すると、トークンをスレーブ局ｌ１に送信し、スレーブ局ｌ１がスレーブ局ｍ１からのトークンを受信する（ｓ８）。【００３２】
スレーブ局ｌ１は、ローカル局Ｌにデータを送信し、ローカル局Ｌはスレーブ局ｌ１からのデータを受信する（ｓ９）。スレーブ局ｌ１は、ローカル局Ｌへのデータ送信を完了すると、トークンをスレーブ局ｌ２に送信し、スレーブ局ｌ２がスレーブ局ｌ１からのトークンを受信する（ｓ１０）。【００３３】
スレーブ局ｌ２は、ローカル局Ｌにデータを送信し、ローカル局Ｌはスレーブ局ｌ２からのデータを受信する（ｓ１１）。スレーブ局ｌ２は、ローカル局Ｌへのデータ送信を完了すると、トークンをスレーブ局ｍ２に送信し、スレーブ局ｍ２がスレーブ局ｌ２からのトークンを受信する（ｓ１２）。【００３４】
スレーブ局ｍ２は、管理マスタ局Ｍにデータを送信し、管理マスタ局Ｍはスレーブ局ｍ２からのデータを受信する（ｓ１３）。スレーブ局ｍ２は、管理マスタ局Ｍへのデータ送信を完了すると、トークンを管理マスタ局Ｍに送信し、管理マスタ局Ｍがスレーブ局ｍ２からのトークンを受信する（ｓ１４）。本実施の形態のローカル局Ｌは、他局から送られてくるトークンを監視している。そして、ローカル局Ｌは、他局が送信したトークンの宛先が管理マスタ局Ｍであるか否かの判断を行なっている。ｓ１４の処理でスレーブ局ｍ２から管理マスタ局Ｍへ送られたトークンは、他のトークンと同様にマルチキャスト通信によって送信されるので、ローカル局Ｌにも送信される。ローカル局Ｌは、スレーブ局ｍ２が送信したトークンが管理マスタ局Ｍへのトークンであるか否か（トークンの宛先）を判定する。【００３５】
ここで、ローカル局Ｌによるトークンの宛先の判定方法について説明する。図４は、ローカル局Ｌが行なうトークンの宛先の判定方法を説明するための図である。データ通信システム１００では、管理マスタ局Ｍからローカル局Ｌへ予め管理マスタ局ＭのＭＡＣアドレスを通知しておく（ｓｔ１）。【００３６】
ローカル局Ｌは、管理マスタ局Ｍから送られてくるＭＡＣアドレスをデータ送受信部１２を介して受信する。管理マスタアドレス記憶部１３は、データ送受信部１２が受信したＭＡＣアドレスを管理マスタ局ＭのＭＡＣアドレスとして記憶しておく。【００３７】
この後、スレーブ局ｍ２が管理マスタ局Ｍへトークンを発行すると（ｓｔ２）、ローカル局Ｌは、データ送受信部１２を介してスレーブ局ｍ２からのトークンを受信する（ｓｔ３）。データ送受信部１２は、受信したトークンをＭＡＣアドレス判定部１４におくる。【００３８】
ＭＡＣアドレス判定部１４は、データ送受信部１２が受信したトークン内のトークン判定用ＭＡＣアドレスと、管理マスタアドレス記憶部１３が記憶している管理マスタ局ＭのＭＡＣアドレスと、を比較することによってスレーブ局ｍ２からのトークンが管理マスタ局Ｍへのトークンであるか否かを判定する。【００３９】
管理マスタ局Ｍでは、スレーブ局ｍ２からトークンを受信すると（ｓ１５）、データ更新を行なう（ｓ１６）。また、ローカル局Ｌは、スレーブ局ｍ２が送信したトークンが管理マスタ局Ｍへのトークンであると判断すると、データ更新を行なう（ｓ１７）。具体的には、ローカル局ＬのＭＡＣアドレス判定部１４がトークンの宛先は管理マスタ局Ｍであると判断すると、データ更新処理部１１がデータ更新を行なう。【００４０】
これにより、管理マスタ局Ｍによるデータ更新と、ローカル局Ｌによるデータ更新と、が略同一のタイミングで実行されることとなる。このように、データ通信システム１００では、管理マスタ局Ｍへのトークンが送信された場合に、管理マスタ局Ｍとローカル局Ｌとで同期してデータ更新を行なっている。【００４１】
管理マスタ局Ｍは、データ更新を行なった後、次のデータ送信を実行する（ｓ１８）。ここでの、ｓ１８の処理は、ｓ１の処理に対応している。以下、データ通信システム１００では、ｓ１〜ｓ１７と同様の処理が繰り返される。【００４２】
データ通信システム１００によるデータ更新間隔（リンクスキャン）Ｔ１は、管理マスタ局Ｍによるｓ１の処理から管理マスタ局Ｍによるｓ１６の処理までの時間となる。このデータ更新間隔Ｔ１は、ローカル局Ｌが自局宛てのトークンを受信した際にデータ更新を行なう場合のデータ更新間隔よりも、ローカル局Ｌによるデータ更新の時間（ｓ１７の処理時間）だけ短くなっている。【００４３】
ここで、ローカル局Ｌが自局宛てのトークンを受信した際にデータ更新を行なう場合のデータ更新間隔と、本実施の形態のデータ通信システム１００によるデータ更新間隔Ｔ１との差異について説明する。以下では、ローカル局Ｌが自局宛てのトークンを受信した際にデータ更新を行なう場合のデータ更新間隔を非同期処理時のデータ更新間隔とし、本実施の形態のデータ通信システム１００によるデータ更新間隔を同期処理時のデータ更新間隔として説明する。【００４４】
図５は、非同期処理時のデータ更新間隔を説明するための図である。図５では、データ通信システム１００が非同期処理を行なう場合（ローカル局Ｌが自局宛てのトークンを受信した際にデータ更新を行なう場合）のデータ更新のタイミングを示している。ここでは、トークン順序が、管理マスタ局Ｍ、スレーブ局ｍ１、スレーブ局ｌ１、ローカル局Ｌ、スレーブ局ｌ２、スレーブ局ｍ２、管理マスタ局Ｍ、・・・である場合について説明する。【００４５】
データ通信システム１００が非同期処理を行なう場合、管理マスタ局Ｍは、配下のスレーブ局ｍ１，ｍ２にデータを送信し、スレーブ局ｍ１，ｍ２は管理マスタ局Ｍからのデータを受信する（ｓ２１、ｓ２２）。管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２へのデータ送信を完了すると、トークンをスレーブ局ｍ１に送信し、スレーブ局ｍ１が管理マスタ局Ｍからのトークンを受信する（ｓ２３）。【００４６】
スレーブ局ｍ１は、管理マスタ局Ｍにデータを送信し、管理マスタ局Ｍはスレーブ局ｍ１からのデータを受信する（ｓ２４）。スレーブ局ｍ１は、管理マスタ局Ｍへのデータ送信を完了すると、トークンをスレーブ局ｌ１に送信し、スレーブ局ｌ１がスレーブ局ｍ１からのトークンを受信する（ｓ２５）。【００４７】
スレーブ局ｌ１は、ローカル局Ｌにデータを送信し、ローカル局Ｌはスレーブ局ｌ１からのデータを受信する（ｓ２６）。スレーブ局ｌ１は、ローカル局Ｌへのデータ送信を完了すると、トークンをローカル局Ｌに送信し、ローカル局Ｌがスレーブ局ｌ１からのトークンを受信する（ｓ２７）。【００４８】
データ通信システム１００が非同期処理を行なう場合のローカル局Ｌは、スレーブ局ｌ１からのトークンを受信した際にデータの更新処理を行なう（ｓ２８）。この後、ローカル局Ｌは、配下のスレーブ局ｌ１，ｌ２にデータを送信し、スレーブ局ｌ１，ｌ２はローカル局Ｌからのデータを受信する（ｓ２９、ｓ３０）。ローカル局Ｌは、スレーブ局ｌ１，ｌ２へのデータ送信を完了すると、トークンをスレーブ局ｌ２に送信し、スレーブ局ｌ２がローカル局Ｌからのトークンを受信する（ｓ３１）。【００４９】
スレーブ局ｌ２は、ローカル局Ｌにデータを送信し、ローカル局Ｌはスレーブ局ｌ２からのデータを受信する（ｓ３２）。スレーブ局ｌ２は、ローカル局Ｌへのデータ送信を完了すると、トークンをスレーブ局ｍ２に送信し、スレーブ局ｍ２がスレーブ局ｌ２からのトークンを受信する（ｓ３３）。【００５０】
スレーブ局ｍ２は、管理マスタ局Ｍにデータを送信し、管理マスタ局Ｍはスレーブ局ｍ２からのデータを受信する（ｓ３４）。スレーブ局ｍ２は、管理マスタ局Ｍへのデータ送信を完了すると、トークンを管理マスタ局Ｍに送信し、管理マスタ局Ｍがスレーブ局ｍ２からのトークンを受信する（ｓ３５）。【００５１】
管理マスタ局Ｍは、スレーブ局ｍ２からトークンを受信すると、データ更新を行なう（ｓ３６）。管理マスタ局Ｍは、データ更新を行なった後、次のデータ送信を実行する。すなわち、管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２にデータを送信し、スレーブ局ｍ１，ｍ２は管理マスタ局Ｍからのデータを受信する（ｓ３７、ｓ３８）。そして、管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２へのデータ送信を完了すると、トークンをスレーブ局ｍ１に送信し、スレーブ局ｍ１が管理マスタ局Ｍからのトークンを受信する（ｓ３９）。【００５２】
この後、データ通信システム１００は、ｓ２４〜ｓ３０と同様の処理として、ｓ４０〜ｓ４６を行なう。以下、データ通信システム１００では、ｓ２９〜ｓ４４と同様の処理が繰り返される。換言すると、データ通信システム１００では、図５で説明したｓ２１〜ｓ３６の処理やｓ２９〜ｓ４４の処理を１回のトークン周回で行なわれるデータ通信とし、この処理を複数周回繰り返す。【００５３】
管理マスタ局Ｍによる非同期処理時のデータ更新間隔ｔ１は、管理マスタ局Ｍによるｓ２１の処理から管理マスタ局Ｍによるｓ３６の処理までの時間となる。また、ローカル局Ｌによる非同期処理時のデータ更新間隔ｔ２は、ローカル局Ｌによるｓ２９の処理からローカル局Ｌによるｓ４４の処理までの時間となる。【００５４】
管理マスタ局Ｍによる非同期処理時のデータ更新間隔ｔ１には、管理マスタ局Ｍによるデータ更新の処理時間（ｓ３６）と、ローカル局Ｌによるデータ更新の処理時間（ｓ２８）が含まれている。また、ローカル局Ｌによる非同期処理時のデータ更新間隔ｔ２には、ローカル局Ｌによるデータ更新の処理時間（ｓ４４）と、管理マスタ局Ｍによるデータ更新の処理時間（ｓ３６）と、が含まれている。このため、非同期処理時のデータ更新間隔ｔ１，ｔ２は、本実施の形態のデータ通信システム１００による同期処理時のデータ更新間隔Ｔ１よりも間隔時間が長くなる。【００５５】
図６は、実施の形態１に係るデータ通信システムの動作手順を示すフローチャートであり、管理マスタ局Ｍとローカル局Ｌの動作手順を示している。ローカル局Ｌは、管理マスタ局Ｍへローカル局Ｌに関する情報（自局の局情報）を送信する（ステップＳ１０）。この局情報は、例えばローカル局ＬのＭＡＣアドレス、ローカル局Ｌで使用可能な通信プロトコルの種別などの情報を含んで構成されている。【００５６】
管理マスタ局Ｍは、管理マスタ局Ｍに接続されているローカル局Ｌやスレーブ局ｍ１，ｍ２，ｌ１，ｌ２から各局の局情報を受信して収集する（ステップＳ２０）。そして、管理マスタ局Ｍは、収集した局情報に基づいて、トークンの周回順序を決定する（ステップＳ３０）。【００５７】
本実施の形態では、管理マスタ局Ｍは、ローカル局Ｌに設定するトークンの周回順序を、他の局よりも優先的に早い順序とする。例えば、管理マスタ局Ｍは、トークンの周回順序として、管理マスタ局Ｍから最初にトークンを送信する局をローカル局Ｌとする。【００５８】
これにより、管理マスタ局Ｍとローカル局Ｌが送受信するデータの順番を、管理マスタ局Ｍやローカル局Ｌからのデータ送信、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２からのデータの受信の順番で統一することができる。したがって、管理マスタ局Ｍやローカル局Ｌが、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２からデータを受信してからデータ更新を行なうまでの時間が短くなり、管理マスタ局Ｍやローカル局Ｌはデータ通信システム１００の状態に応じた適切なタイミング（データ通信システム１００が効率良く動作が可能なタイミング）でデータ更新を行なうことが可能となる。【００５９】
管理マスタ局Ｍは、決定したトークンの周回順序をローカル局Ｌに通知する（ステップＳ４０）。ローカル局Ｌは、トークンの周回順序を受信して取得する（ステップＳ５０）。また、管理マスタ局Ｍは、管理マスタ局ＭのＭＡＣアドレスをローカル局Ｌに通知する（ステップＳ６０）。ローカル局Ｌは、管理マスタ局ＭのＭＡＣアドレスを受信して取得する（ステップＳ７０）。このステップＳ１０〜Ｓ７０の処理がルックアップフェーズ（データの取り込みに関する処理）であり、データ通信システム１００がデータ通信を行なう際に一度行なっておけばよい。【００６０】
このルックアップフェーズの後、管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２へのデータ送信を行なう（ステップＳ８０）。管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２へのデータ送信を完了すると、トークンをローカル局Ｌに送信することによって、トークンを開放する（ステップＳ９０）。ローカル局Ｌは、管理マスタ局Ｍからのトークンを受信する（ステップＳ１００）。【００６１】
ローカル局ＬのＭＡＣアドレス判定部１４は、受信したトークンが、自局（ローカル局Ｌ）宛てのトークンであるか否かを判定する（ステップＳ１１０）。受信したトークンが、自局宛てのトークンであれば（ステップＳ１１０、Ｙｅｓ）、ローカル局Ｌのデータ送受信部１２は、スレーブ局ｌ１，ｌ２へのデータ送信を行なう（ステップＳ１２０）。そして、ローカル局Ｌは、スレーブ局ｌ１，ｌ２へのデータ送信を完了すると、トークンをスレーブ局ｍ１に送信することによって、トークンを解放する（ステップＳ１３０）。この後、ローカル局Ｌは、次に送られてくるトークンを待つ。【００６２】
一方、受信したトークンが、自局宛てのトークンでなければ（ステップＳ１１０、Ｎｏ）、ローカル局ＬのＭＡＣアドレス判定部１４は、トークンが管理マスタ局Ｍへのトークンであるか否かを判定する。換言すると、ＭＡＣアドレス判定部１４は、受信したトークンのトークン判定用ＭＡＣアドレスが、管理マスタ局ＭのＭＡＣアドレスであるか否かを判定する（ステップＳ１４０）。【００６３】
受信したトークンが管理マスタ局ＭのＭＡＣアドレスでなければ（ステップＳ１４０、Ｎｏ）、ローカル局Ｌは、次に送られてくるトークンを待つ。受信したトークンが管理マスタ局ＭのＭＡＣアドレスであれば（ステップＳ１４０、Ｙｅｓ）、ローカル局Ｌのデータ更新処理部１１は、データ更新を行なう（ステップＳ１５０）。【００６４】
本実施の形態では、ローカル局Ｌは、スレーブ局ｍ２から管理マスタ局Ｍへ送られるトークンを受信した場合に、受信したトークンが、自局宛てのトークンでなく、管理マスタ局Ｍ宛てのトークンであると判定する。したがって、ローカル局Ｌは、スレーブ局ｍ２から管理マスタ局Ｍへ送信されるトークンを受信した場合に、データ更新を行なう。【００６５】
ローカル局Ｌは、データ更新を完了すると、次に送られてくるトークンを待つ。他局（管理マスタ局Ｍやスレーブ局ｍ２など）からトークンを受信する度に、ローカル局Ｌは、ステップＳ１００〜Ｓ１５０の処理を繰り返す。【００６６】
管理マスタ局Ｍは、ステップＳ９０の処理でトークンを解放した後、次に送られてくるトークンを待つ。管理マスタ局Ｍは、トークンを受信すると（ステップＳ１６０）、受信したトークンのトークン判定用ＭＡＣアドレスが、自局（管理マスタ局Ｍ）のＭＡＣアドレスであるか否かを判定する（ステップＳ１７０）。【００６７】
受信したトークンが管理マスタ局ＭのＭＡＣアドレスでなければ（ステップＳ１７０、Ｎｏ）、管理マスタ局Ｍは、次に送られてくるトークンを待つ。受信したトークンの宛先が管理マスタ局ＭのＭＡＣアドレスであれば（ステップＳ１７０、Ｙｅｓ）、管理マスタ局Ｍはデータ更新を行なう（ステップＳ１８０）。【００６８】
スレーブ局ｍ２から送られてくるトークンは、管理マスタ局Ｍ宛てのトークンであるので、管理マスタ局Ｍはスレーブ局ｍ２からのトークンを受信した場合にデータ更新を行なう。ローカル局Ｌでも、管理マスタ局Ｍと同様に、スレーブ局ｍ２から送られてくるトークンが管理マスタ局Ｍ宛てのトークンである場合にデータ更新を行なう。したがって、管理マスタ局Ｍによるデータ更新（ステップＳ１８０）は、ローカル局Ｌによるデータ更新（ステップＳ１５０）と同じタイミングで行われることとなる。【００６９】
管理マスタ局Ｍは、データ更新を行なう際に、必要に応じて時間調整を行なってもよい。例えば、ローカル局Ｌが行なうデータ更新の処理時間が管理マスタ局Ｍが行なうデータ更新の処理時間よりも長い場合、管理マスタ局Ｍは、ローカル局Ｌが行なうデータ更新と管理マスタ局Ｍが行なうデータ更新が同じタイミングで完了するよう、所定時間だけデータ更新の開始タイミングを遅らせる。これにより、ローカル局Ｌと管理マスタ局Ｍとで同時にデータ更新が完了するので、ローカル局Ｌのデータ更新が完了することなく管理マスタ局Ｍが次のデータ送信処理を開始することを防げる。なお、ローカル局Ｌや管理マスタ局Ｍによるデータ更新の処理時間は、例えば管理マスタ局Ｍが予め計測または算出して記憶しておく。【００７０】
管理マスタ局Ｍは、データ更新を完了すると、次に送られてくるトークンを待つ。他局からトークンを受信する度に、管理マスタ局Ｍは、ステップＳ１６０〜Ｓ１８０の処理とステップＳ８０，Ｓ９０の処理を繰り返す。【００７１】
データ通信システム１００では、ルックアップフェーズの後、ローカル局ＬによるステップＳ１００〜Ｓ１５０の処理と、管理マスタ局ＭによるステップＳ８０，Ｓ９０，Ｓ１６０〜Ｓ１８０の処理と、がトークンフェーズ（トークンを用いたデータ通信処理）として繰り返される。【００７２】
なお、本実施の形態では、データ通信システム１００の各局がライン型接続によって接続されている場合について説明したが、データ通信システム１００の各局をスター型接続やリング型接続によって接続してもよい。【００７３】
データ通信システム１００の各局をリング型接続によって接続する場合、例えば図７に示す接続構成によって各局を接続する。図７は、リング型接続によって接続されたデータ通信システムの構成を示す図である。同図に示すように、リング型接続によって接続されたデータ通信システム１００は、反時計周りに、管理マスタ局Ｍ、スレーブ局ｍ１、スレーブ局ｌ１、ローカル局Ｌ、スレーブ局ｌ２、スレーブ局ｍ２の順番で接続されるとともに、スレーブ局ｍ２と管理マスタ局Ｍとを接続することによってリング型接続を構成している。【００７４】
また、本実施の形態では、データ通信システム１００が１つのローカル局Ｌを有している場合について説明したが、データ通信システム１００が複数のローカル局Ｌを有する構成としてもよい。この場合、管理マスタ局Ｍのデータ更新と少なくとも１つのローカル局Ｌのデータ更新とを同タイミングで行なう。例えば、管理マスタ局Ｍのデータ更新と全てのローカル局Ｌのデータ更新とを同タイミングで行なってもよい。【００７５】
このように実施の形態１によれば、管理マスタ局Ｍがデータ更新を行なうタイミングでローカル局Ｌがデータ更新を行なうので、データ通信システム１００内でのデータ更新を管理マスタ局Ｍとローカル局Ｌとで同期して行なうことが可能となる。これにより、適切なタイミングでデータ更新を行なうことが可能となる。また、データ通信システム１００内のデータ通信を短時間で行なうことが可能となり、スレーブ局ｍ１，ｍ２，ｌ１，ｌ２と接続する機器の制御を高速化できる。【００７６】
実施の形態２．
つぎに、図８〜図１０を参照してこの発明の実施の形態２について説明する。実施の形態２では、管理マスタ局Ｍへトークンを発行するスレーブ局ｍ２が、管理マスタ局Ｍへトークンを送信する際に、データ更新のタイミングであることを示す情報（データ更新を許可することを示す情報）をトークンに付加して管理マスタ局Ｍへ送信する。ローカル局Ｌや管理マスタ局Ｍは、管理マスタ局Ｍへ送られるトークンのうち、トークンにデータ更新のタイミングであることを示す情報が付加されている場合にのみデータ更新を行なう。【００７７】
図８は、実施の形態２に係るデータ通信システムのローカル局の構成を示すブロック図である。図８の各構成要素のうち図２に示すローカル局Ｌと同一機能を達成する構成要素については同一番号を付しており、重複する説明は省略する。図８に示すように、ローカル局Ｌは、データ更新処理部１１、データ送受信部１２、管理マスタアドレス記憶部１３、ＭＡＣアドレス判定部１４に加えて、データ更新フラグ判定部（許可判定部）１５を有している。【００７８】
データ更新フラグ判定部１５は、他局から送られてくるトークンに含まれるデータ更新フラグがＯＮであるかＯＦＦであるかを判定する。データ更新フラグは、管理マスタ局Ｍおよびローカル局Ｌがデータ更新を行なうタイミングであるか否かを示す情報である。データ更新フラグは、トークンの最終受信局（トークン周回で最後にトークンを受信する局）であるスレーブ局ｍ２から管理マスタ局Ｍへ送られるトークンでのみＯＮにされ、他のスレーブ局が送信するトークンではＯＦＦにされている。データ更新フラグ判定部１５は、データ更新フラグがＯＮである場合に、データ更新のタイミングであると判断する。データ更新フラグ判定部１５は、データ更新のタイミングであるか否かの判断結果をデータ更新処理部１１に送る。【００７９】
つぎに、実施の形態２に係るデータ通信システムのデータ更新のタイミングについて説明する。図９は、実施の形態２に係るデータ通信システムのデータ更新のタイミングを説明するための図である。なお、データ通信システム１００で行なう処理のうち、図３で説明した処理と同様の処理が行なわれる処理については、その説明を省略する。本実施の形態では、トークン順序が、管理マスタ局Ｍ、ローカル局Ｌ、管理マスタ局Ｍ、スレーブ局ｍ１、スレーブ局ｌ１、スレーブ局ｌ２、スレーブ局ｍ２、管理マスタ局Ｍ、・・・である場合について説明する。【００８０】
管理マスタ局Ｍは、管理マスタ局Ｍにトークンを送信する際にはデータ更新フラグをＯＮにして送信するよう、最終受信局のスレーブ局ｍ２にのみ指示しておく。この後、管理マスタ局Ｍは、配下のスレーブ局ｍ１，ｍ２にデータを送信し、スレーブ局ｍ１，ｍ２は管理マスタ局Ｍからのデータを受信する（ｓ５１、ｓ５２）。管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２へのデータ送信を完了すると、トークンをローカル局Ｌに送信し、ローカル局Ｌが管理マスタ局Ｍからのトークンを受信する（ｓ５３）。【００８１】
本実施の形態のローカル局Ｌは、管理マスタ局Ｍからのトークンを受信した際にデータの更新処理を行なわず、次の処理を実行する。ローカル局Ｌは、管理マスタ局Ｍからトークンを受信すると、配下のスレーブ局ｌ１，ｌ２にデータを送信し、スレーブ局ｌ１，ｌ２はローカル局Ｌからのデータを受信する（ｓ５４、ｓ５５）。【００８２】
ローカル局Ｌは、スレーブ局ｌ１，ｌ２へのデータ送信を完了すると、トークンを管理マスタ局Ｍに送信し、管理マスタ局Ｍがローカル局Ｌからのトークンを受信する（ｓ５６）。【００８３】
管理マスタ局Ｍは、データの送受信とは異なる他の処理（別処理）を実行する（ｓ５７）。ここでの別処理は、例えばリアルタイム通信などによって行なう処理であり、トークンパッシング方式によって行なう処理とは異なる処理である。本実施の形態の管理マスタ局Ｍは、別処理として与えられた時間にはデータの更新処理を行なわない。【００８４】
管理マスタ局Ｍは、別処理を行なった後、トークンをスレーブ局ｍ１に送信し、スレーブ局ｍ１が管理マスタ局Ｍからのトークンを受信する（ｓ５８）。スレーブ局ｍ１は、管理マスタ局Ｍにデータを送信し、管理マスタ局Ｍはスレーブ局ｍ１からのデータを受信する（ｓ５９）。スレーブ局ｍ１は、管理マスタ局Ｍへのデータ送信を完了すると、トークンをスレーブ局ｌ１に送信し、スレーブ局ｌ１がスレーブ局ｍ１からのトークンを受信する（ｓ６０）。【００８５】
スレーブ局ｌ１は、ローカル局Ｌにデータを送信し、ローカル局Ｌはスレーブ局ｌ１からのデータを受信する（ｓ６１）。スレーブ局ｌ１は、ローカル局Ｌへのデータ送信を完了すると、トークンをスレーブ局ｌ２に送信し、スレーブ局ｌ２がスレーブ局ｌ１からのトークンを受信する（ｓ６２）。【００８６】
スレーブ局ｌ２は、ローカル局Ｌにデータを送信し、ローカル局Ｌはスレーブ局ｌ２からのデータを受信する（ｓ６３）。スレーブ局ｌ２は、ローカル局Ｌへのデータ送信を完了すると、トークンをスレーブ局ｍ２に送信し、スレーブ局ｍ２がスレーブ局ｌ２からのトークンを受信する（ｓ６４）。【００８７】
スレーブ局ｍ２は、管理マスタ局Ｍにデータを送信し、管理マスタ局Ｍはスレーブ局ｍ２からのデータを受信する（ｓ６５）。スレーブ局ｍ２は、管理マスタ局Ｍへのデータ送信を完了すると、トークン内のデータ更新フラグをＯＮにしたトークンを管理マスタ局Ｍに送信し、管理マスタ局Ｍがスレーブ局ｍ２からのトークンを受信する（ｓ６６）。本実施の形態のローカル局Ｌは、他局から送られてくるトークンを監視している。そして、ローカル局Ｌは、他局が送信したトークンの宛先が管理マスタ局Ｍであるか否かの判断を行なっている。さらに、ローカル局Ｌは、他局が送信したトークンに含まれるデータ更新フラグがＯＮであるかＯＦＦであるかの判断を行なっている。【００８８】
ｓ６６の処理でスレーブ局ｍ２から管理マスタ局Ｍへ送られたトークンは、他のトークンと同様にマルチキャスト通信によって送信されるので、ローカル局Ｌにも送信される（ｓ６７）。ローカル局Ｌは、スレーブ局ｍ２が送信したトークンが管理マスタ局Ｍへのトークンであるか否か（トークンの宛先）を判定するとともに、データ更新フラグがＯＮであるか否かを判定する。ここでのＭＡＣアドレス判定部１４は、スレーブ局ｍ２が送信したトークンは管理マスタ局Ｍへのトークンであると判断する。また、ＭＡＣアドレス判定部１４は、データ更新フラグがＯＮであると判断する。【００８９】
管理マスタ局Ｍでは、スレーブ局ｍ２からトークンを受信すると、データ更新を行なう（ｓ６８）。また、ローカル局Ｌは、スレーブ局ｍ２が送信したトークンが管理マスタ局Ｍへのトークンであり、データ更新フラグがＯＮであると判断すると、データ更新を行なう（ｓ６９）。具体的には、ローカル局ＬのＭＡＣアドレス判定部１４がトークンの宛先は管理マスタ局Ｍであると判断し、かつデータ更新フラグ判定部１５がデータ更新フラグはＯＮであると判断すると、データ更新処理部１１がデータ更新を行なう。これにより、管理マスタ局Ｍによるデータ更新と、ローカル局Ｌによるデータ更新と、が略同一のタイミングで実行されることとなる。【００９０】
本実施の形態では、データ更新フラグがＯＮである場合にのみ、管理マスタ局Ｍがデータ更新を行なっている。このため、本実施の形態の管理マスタ局Ｍは、ローカル局Ｌからトークンを受信した場合（ｓ５６）にデータ更新を行なっていない。図９では、管理マスタ局Ｍがローカル局Ｌ、スレーブ局ｍ２からトークンを受信する場合について説明したが、データ通信システム１００では、他局（スレーブ局ｍ２以外の局）から複数回に渡って管理マスタ局Ｍにトークンを送信してもよい。この場合も、スレーブ局ｍ２から送信するトークンでのみデータ更新フラグをＯＮにしておけば、管理マスタ局Ｍはスレーブ局ｍ２以外からトークンを受信してもデータ更新を行なわない。これにより、データ通信システム１００では、１回のトークン周回として種々のトークン周回（複数回に渡る管理マスタ局Ｍへのトークン送信など）を設定することが可能となる。換言すると、データ通信システム１００では、データ更新の間隔を種々設定することができる。例えば、１回のトークン周回として、管理マスタ局Ｍにトークンを３回以上送信してもよい。【００９１】
このように、データ通信システム１００では、データ更新フラグがＯＮのトークンが管理マスタ局Ｍに送信された場合に、管理マスタ局Ｍとローカル局Ｌとで同期してデータ更新を行なっている。管理マスタ局Ｍは、データ更新を行なった後、次のデータ送信を実行する。以下、データ通信システム１００では、ｓ５１〜ｓ６９と同様の処理が繰り返される。【００９２】
図１０は、実施の形態２に係るデータ通信システムの動作手順を示すフローチャートであり、管理マスタ局Ｍ、ローカル局Ｌ、トークンの最終受信局であるスレーブ局ｍ２の動作手順を示している。なお、データ通信システム１００で行なう処理のうち、図６で説明した実施の形態１のデータ通信システム１００と同様の処理を行なう処理については、その説明を省略する。【００９３】
ローカル局Ｌは、管理マスタ局Ｍへ自局の局情報を送信する（ステップＳ２１０）。また、トークンの最終受信局であるスレーブ局ｍ２は、管理マスタ局Ｍへ自局の局情報を送信する（ステップＳ２２０）。【００９４】
管理マスタ局Ｍは、管理マスタ局Ｍに接続されているローカル局Ｌやスレーブ局ｍ１，ｍ２，ｌ１，ｌ２から各局の局情報を受信して収集する（ステップＳ２３０）。そして、管理マスタ局Ｍは、収集した局情報に基づいて、トークンの周回順序を決定する（ステップＳ２４０）。【００９５】
つぎに、管理マスタ局Ｍは、決定したトークンの周回順序をローカル局Ｌとスレーブ局ｍ２に通知する（ステップＳ２５０）。ローカル局Ｌは、トークンの周回順序を受信して取得する（ステップＳ２６０）。また、スレーブ局ｍ２は、トークンの周回順序を受信して取得する（ステップＳ２７０）。【００９６】
このステップＳ２１０〜Ｓ２７０の処理がルックアップフェーズであり、データ通信システム１００がデータ通信を行なう際に一度行なっておけばよい。なお、本実施の形態でも、管理マスタ局Ｍは、管理マスタ局ＭのＭＡＣアドレスをローカル局Ｌに通知しておく。【００９７】
このルックアップフェーズの後、管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２へのデータ送信を行なう（ステップＳ２８０）。管理マスタ局Ｍは、スレーブ局ｍ１，ｍ２へのデータ送信を完了すると、トークンをローカル局Ｌに送信することによって、トークンを開放する（ステップＳ２９０）。ローカル局Ｌは、管理マスタ局Ｍからのトークンを受信する（ステップＳ３００）。【００９８】
ローカル局ＬのＭＡＣアドレス判定部１４は、受信したトークンが、自局（ローカル局Ｌ）宛てのトークンであるか否かを判定する（ステップＳ３１０）。受信したトークンが、自局宛てのトークンであれば（ステップＳ３１０、Ｙｅｓ）、ローカル局Ｌのデータ送受信部１２は、スレーブ局ｌ１，ｌ２へのデータ送信を行なう（ステップＳ３２０）。そして、ローカル局Ｌは、スレーブ局ｌ１，ｌ２へのデータ送信を完了すると、トークンを管理マスタ局Ｍに送信することによって、トークンを解放する（ステップＳ３３０）。この後、ローカル局Ｌは、次に送られてくるトークンを待つ。【００９９】
スレーブ局ｍ２では、ステップＳ２８０の処理で管理マスタ局Ｍが送信したデータを受信する（ステップＳ３４０）。この後、スレーブ局ｍ２は、他局から送られてくる自局宛てのトークンを待つ。スレーブ局ｍ２は、自局宛てのトークンを受信すると（ステップＳ３５０）、管理マスタ局Ｍへデータを送信する（ステップＳ３６０）。スレーブ局ｍ２は、管理マスタ局Ｍへのデータ送信を完了すると、トークンを管理マスタ局Ｍに送信することによって、トークンを解放する（ステップＳ３８０）。本実施の形態のスレーブ局ｍ２は、管理マスタ局Ｍにトークンを送信する際に、トークン内のデータ更新フラグをＯＮにして送信する。そして、スレーブ局ｍ２は、トークンを解放した後、次に送られてくるトークンを待つ。【０１００】
ローカル局Ｌでは、ステップＳ３００の処理で受信したトークンが、自局宛てのトークンでなければ（ステップＳ３１０、Ｎｏ）、ローカル局ＬのＭＡＣアドレス判定部１４が、受信したトークンは管理マスタ局Ｍへのトークンであるか否かを判定する（ステップＳ３９０）。【０１０１】
受信したトークンが管理マスタ局ＭのＭＡＣアドレスでなければ（ステップＳ３９０、Ｎｏ）、ローカル局Ｌは、次に送られてくるトークンを待つ。受信したトークンが管理マスタ局ＭのＭＡＣアドレスであれば（ステップＳ３９０、Ｙｅｓ）、データ更新フラグ判定部１５がトークン内のデータ更新フラグがＯＮであるか否かを判定する（ステップＳ４００）。【０１０２】
データ更新フラグがＯＦＦであれば（ステップＳ４００、ＯＦＦ）、ローカル局Ｌは、次に送られてくるトークンを待つ。一方、データ更新フラグがＯＮであれば（ステップＳ４００、ＯＮ）、ローカル局Ｌのデータ更新処理部１１は、データ更新を行なう（ステップＳ４１０）。【０１０３】
本実施の形態では、ローカル局Ｌは、スレーブ局ｍ２から管理マスタ局Ｍへ送られるトークンを受信した場合に、受信したトークンが、自局宛てのトークンでなく、かつ管理マスタ局Ｍ宛てのトークンであり、かつデータ更新フラグがＯＮであると判定する。したがって、ローカル局Ｌは、スレーブ局ｍ２から管理マスタ局Ｍへ送信されるトークンを受信した場合に、データ更新を行なう。【０１０４】
ローカル局Ｌは、データ更新を完了すると、次に送られてくるトークンを待つ。他局からトークンを受信する度に、ローカル局Ｌは、ステップＳ３００〜Ｓ３３０の処理、ステップＳ３９０〜Ｓ４１０の処理を繰り返す。【０１０５】
管理マスタ局Ｍは、ステップＳ２９０の処理でトークンを解放した後、次に送られてくるトークンを待つ。この間にスレーブ局ｍ１，ｍ２から管理マスタ局Ｍへのデータ送信があると、管理マスタ局Ｍはスレーブ局ｍ１，ｍ２からのデータを受信する。スレーブ局ｍ２は、ステップＳ３６０の処理で管理マスタ局Ｍにデータ送信しているので、管理マスタ局Ｍはスレーブ局ｍ２からのデータを受信する（ステップＳ４２０）。【０１０６】
この後、管理マスタ局Ｍは、他局からトークンを受信すると（ステップＳ４３０）、受信したトークンのトークン判定用ＭＡＣアドレスが、自局のＭＡＣアドレスであるか否かを判定する（ステップＳ４４０）。【０１０７】
受信したトークンが管理マスタ局ＭのＭＡＣアドレスでなければ（ステップＳ４４０、Ｎｏ）、管理マスタ局Ｍは、次に送られてくるトークンを待つ。受信したトークンが管理マスタ局ＭのＭＡＣアドレスであれば（ステップＳ４４０、Ｙｅｓ）、受信したトークンのデータ更新フラグがＯＮであるか否かを判定する（ステップＳ４５０）。受信したトークンのデータ更新フラグがＯＦＦである場合（ステップＳ４５０、ＯＦＦ）、管理マスタ局Ｍは、次に送られてくるトークンを待つ。受信したトークンのデータ更新フラグがＯＮである場合（ステップＳ４５０、ＯＮ）、管理マスタ局Ｍは、データ更新を行なう（ステップＳ４６０）。【０１０８】
スレーブ局ｍ２から送られてくるトークンは、データ更新フラグがＯＮになっているので、管理マスタ局Ｍはスレーブ局ｍ２からのトークンを受信した場合にデータ更新を行なう。ローカル局Ｌでも、管理マスタ局Ｍと同様に、スレーブ局ｍ２から送られてくるトークンのデータ更新フラグがＯＮである場合にデータ更新を行なう。したがって、管理マスタ局Ｍによるデータ更新（ステップＳ４６０）は、ローカル局Ｌによるデータ更新（ステップＳ４１０）と同じタイミングで行われることとなる。【０１０９】
管理マスタ局Ｍは、データ更新を完了すると、次に送られてくるトークンを待つ。他局からトークンを受信する度に、管理マスタ局Ｍは、ステップＳ４３０〜Ｓ４６０の処理とステップＳ２８０，Ｓ２９０，Ｓ４２０の処理を繰り返す。【０１１０】
データ通信システム１００では、ルックアップフェーズの後、ローカル局ＬによるステップＳ３００〜Ｓ３３０，Ｓ３９０〜Ｓ４１０の処理と、管理マスタ局ＭによるステップＳ２８０，Ｓ２９０，Ｓ４２０〜Ｓ４６０の処理と、がトークンフェーズとして繰り返される。【０１１１】
このように実施の形態２によれば、データ更新フラグがＯＮのトークンが管理マスタ局Ｍに送信された場合に、管理マスタ局Ｍとローカル局Ｌとで同期してデータ更新を行なうので、１回のトークン周回として種々のトークン周回を設定することが可能となる。
【産業上の利用可能性】
【０１１２】
以上のように、本発明に係るデータ通信システムおよびデータ通信装置は、マスタ局とスレーブ局との間のデータ通信に適している。
【図１】
2009147714.tif 000003
【図２】
2009147714.tif 000004
【図３】
2009147714.tif 000005
【図４】
2009147714.tif 000006
【図５】
2009147714.tif 000007
【図６】
2009147714.tif 000008
【図７】
2009147714.tif 000009
【図８】
2009147714.tif 000010
【図９】
2009147714.tif 000011
【図１０】
2009147714.tif 000012
【手続補正書】
【提出日】平成22年7月21日(2010.7.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
スレーブ局との間のデータの送受信をマルチキャスト通信を用いたトークンパッシング方式で行なうとともに前記スレーブ局との間で送受信するデータの演算処理を行なって前記データのデータ更新を行なうマスタ局と、前記スレーブ局と、を具備するデータ通信システムにおいて、
前記マスタ局は、
前記データ通信システム内の管理を行うとともに所定のスレーブ局のデータ更新を行なう第１のマスタ局と、
前記第１のマスタ局がデータ更新するスレーブ局とは異なるスレーブ局のデータ更新を行なう第２のマスタ局と、
を有し、
前記第１および第２のマスタ局は、前記スレーブ局から前記第１のマスタ局を宛先としたトークンフレームを受信した場合にデータ更新を行なうことを特徴とするデータ通信システム。
【請求項２】
前記第２のマスタ局は、
前記スレーブ局から送信されるトークンフレームの宛先を判定する宛先判定部と、
前記宛先判定部が前記トークンフレームの宛先は前記第１のマスタ局であると判定した場合に前記データ更新を行なうデータ更新処理部と、
を備えることを特徴とする請求項１に記載のデータ通信システム。
【請求項３】
前記第１のマスタ局は、
前記第１のマスタ局を宛先としたトークンフレームであって且つデータ更新を許可する更新許可情報を有したトークンフレームを受信した場合にデータ更新を行ない、
前記第２のマスタ局は、
前記スレーブ局から送信されるトークンフレームが前記更新許可情報を有しているか否かを判定する許可判定部をさらに備え、
前記データ更新処理部は、前記宛先判定部が前記トークンフレームの宛先は前記第１のマスタ局であると判定し、且つ前記許可判定部が前記スレーブ局から送信されるトークンフレームは更新許可情報を有していると判定した場合に、前記データ更新を行なうことを特徴とする請求項２に記載のデータ通信システム。
【請求項４】
前記トークンフレームは、前記第１マスタ局および前記第２のマスタ局へ送信された後、前記各スレーブ局に送信されるよう周回順序が設定されることを特徴とする請求項１〜３のいずれか１つに記載のデータ通信システム。
【請求項５】
前記第１および第２のマスタ局は、データ更新を行なった後に行なう次のデータ送信処理を、前記第１のマスタ局と第２のマスタ局とで同時に開始することを特徴とする請求項１〜４のいずれか１つに記載のデータ通信システム。
【請求項６】
データ通信システム内でスレーブ局との間のデータの送受信をマルチキャスト通信を用いたトークンパッシング方式で行なうとともに前記スレーブ局との間で送受信するデータの演算処理を行なって前記データのデータ更新を行なうデータ通信装置において、
前記スレーブ局から送信されるトークンフレームの宛先を判定する宛先判定部と、
前記宛先判定部が、前記トークンフレームの宛先は前記データ通信システム内の管理を行うとともに前記データ通信装置が更新する前記スレーブ局とは異なる所定のスレーブ局のデータ更新を行なうマスタ局であると判定した場合に、前記データ更新を行なうデータ更新処理部と、
を備えることを特徴とするデータ通信装置。
【国際調査報告】
2009147714.tif 000013
2009147714.tif 000014