(57)【要約】      （修正有）【課題】リングネットワークにおいて、異常箇所を早期に特定する。【解決手段】通信線４１を介して通信可能に接続された複数のノード４２Ａ〜４２Ｄのそれぞれは、送信データＤｔを生成するデータ生成部と、送信データＤｔを含み且つ少なくとも中継数ＨＯＰ及び送信元ＳＩＤをヘッダに有する送信パケットを、下流側のノードへ送出するパケット送出部と、上流側のノードから送信された入力パケットを、中継数に１単位を加算したうえで中継パケットとして送出するパケット中継部とを備える。少なくとも１つのノードＡ４２Ａは、リングネットワーク４０における通信異常を検出する通信異常検出部を備え、通信異常検出部は、入力パケットＰｅについて、繰り返しパターンに従った送信がされているか否かを判定することにより、通信異常の発生箇所を特定する。【選択図】図７
2019125978.tif 000002
【特許請求の範囲】
【請求項１】
通信線を介してリング状に接続された複数のノードを含むリングネットワークであって、
複数のノードのそれぞれは、
少なくとも中継数及び送信元を有する送信パケットを生成し、前記送信パケットを所定の繰り返しパターンに従って送出するパケット送出部と、
入力する入力パケットのうち、前記送信元が自ノード以外である中継パケットを、前記中継数に１単位を加算したうえで送出するパケット中継部とを備え、
複数のノードの少なくとも１つは、リングネットワークにおける通信異常を検出する通信異常検出部を備え、
前記通信異常検出部は、前記入力パケットについて、前記送信元を参照することにより、通信異常の発生箇所を特定することを特徴とするリングネットワーク。
【請求項２】
前記通信線は、あるノードを起点とする上流側部分と下流側部分とが並設されており、
複数のノードは、前記通信線の一端に設けられ、前記通信異常検出部を備える第１ノードと、前記通信線の他端に設けられる第２ノードと、前記通信線における前記第１ノードと前記第２ノードとの間に位置する少なくとも１つの第３ノードとを含み、
前記第３ノードは、入力側通信線によって上流側のノードに接続され、出力側通信線によって下流側のノードに接続されており、
前記通信線上には、少なくとも１つのスイッチが前記第３ノードごとに設けられ、当該スイッチは、対応する前記第３ノードの前記入力側通信線、前記出力側通信線及びこれらに並設された通信線上に設けられ、対応する前記第３ノードにより中継されるべき前記中継パケット、及び、対応する前記第３ノードから出力されるべき前記送信パケットの伝送状態に基づいて、パケット伝送経路を切り替え、
前記通信異常検出部は、前記入力パケットの前記中継数と前記送信元との関係に基づいて通信異常の発生箇所を特定することを特徴とする請求項１に記載のリングネットワーク。
【請求項３】
前記スイッチは、対応する前記第３ノードの前記出力側通信線の接続を維持しつつ、対応する前記第３ノードの前記入力側通信線の上流側を前記出力側通信線に短絡する第１切替状態に切り替わり得るように構成され、
前記スイッチは、前記入力側通信線を通過した前記中継パケットが前記出力側通信線に伝送されず、前記送信パケットが前記出力側通信線に伝送された場合、前記第１切替状態に切り替わることを特徴とする請求項２に記載のリングネットワーク。
【請求項４】
前記スイッチは、対応する前記第３ノードの前記出力側通信線を切断し、且つ対応する前記第３ノードの前記入力側通信線の上流側を前記出力側通信線に短絡する第２切替状態に切り替わり得るように構成され、
前記スイッチは、前記入力側通信線を通過した前記中継パケット及び前記送信パケットが共に前記出力側通信線に伝送されない場合、前記第２切替状態に切り替わることを特徴とする請求項２又は請求項３に記載のリングネットワーク。
【請求項５】
前記通信線の前記上流側部分に設けられた前記第３ノードに対応する前記スイッチは、前記並設された通信線の接続を維持しつつ、対応する前記第３ノードの前記出力側通信線の上流側を前記並設された通信線に短絡する第３切替状態に切り替わり得るように構成され、
前記スイッチは、前記中継パケットが前記入力側通信線を通過し、且つ前記出力側通信線に伝送された前記送信パケットが前記入力側通信線を通過しない場合、前記第３切替状態に切り替わることを特徴とする請求項２〜請求項４のいずれかに記載のリングネットワーク。
【請求項６】
前記通信線の前記下流側部分に設けられた前記第３ノードに対応する前記スイッチは、前記入力側通信線の接続を維持しつつ、対応する前記第３ノードの前記並設された通信線の上流側を前記入力側通信線に短絡する第４切替状態に切り替わり得るように構成され、
前記スイッチは、前記中継パケットが前記入力側通信線を通過し、且つ前記出力側通信線に伝送された前記送信パケットが前記入力側通信線を通過しない場合、前記第４切替状態に切り替わることを特徴とする請求項２〜請求項４のいずれかに記載のリングネットワーク。
【請求項７】
前記通信線は、あるノードを起点とする上流側部分と下流側部分とが並設されており、
複数のノードは、前記通信線の一端に設けられ、前記通信異常検出部を備える第１ノードと、前記通信線の他端に設けられる第２ノードと、前記通信線における前記第１ノードと前記第２ノードとの間に設けられた複数の第３ノードとを含み、
前記第３ノードのそれぞれは、入力側通信線によって上流側のノードに接続され、出力側通信線によって下流側のノードに接続されており、
前記通信線上には、少なくとも１つのスイッチが複数の前記第３ノードに対応して設けられ、当該スイッチは、対応する複数の前記第３ノードのそれぞれの前記入力側通信線及び前記出力側通信線上に設けられ、対応する前記第３ノードにより中継されるべき前記中継パケット、及び、対応する前記第３ノードから出力されるべき前記送信パケットの伝送状態に基づいて、パケット伝送経路を切り替え、
前記通信異常検出部は、前記入力パケットの前記中継数と前記送信元との関係に基づいて通信異常の発生箇所を特定することを特徴とする請求項１に記載のリングネットワーク。
【請求項８】
前記第３ノードが前記通信線における前記上流側部分と前記下流側部分とに少なくとも１対に設けられ、
前記スイッチが１対の前記第３ノードに対応して設けられていることを特徴とする請求項７に記載のリングネットワーク。
【請求項９】
前記スイッチは、対応する１対の前記第３ノードのそれぞれについて、対応する前記出力側通信線の接続を維持しつつ、対応する前記入力側通信線の上流側を対応する前記出力側通信線に短絡する第４切替状態に切り替わり得るように構成され、
前記スイッチは、一方の前記第３ノードの前記入力側通信線を通過した前記中継パケットが前記一方の前記第３ノードの前記出力側通信線に伝送されず、前記一方の前記第３ノードから出力されるべき前記送信パケットが前記出力側通信線に伝送された場合、前記第４切替状態に切り替わることを特徴とする請求項８に記載のリングネットワーク。
【請求項１０】
前記スイッチは、対応する１対の前記第３ノードのそれぞれについて、対応する前記出力側通信線を切断し、且つ対応する前記入力側通信線の上流側を対応する前記出力側通信線に短絡する第５切替状態に切り替わり得るように構成され、
前記スイッチは、一方の前記第３ノードの前記入力側通信線を通過した前記中継パケット及び前記一方の前記第３ノードから出力されるべき前記送信パケットが共に前記一方の前記第３ノードの前記出力側通信線に伝送されない場合、前記第５切替状態に切り替わることを特徴とする請求項８又は請求項９に記載のリングネットワーク。
【請求項１１】
前記スイッチは、対応する一方の前記第３ノードの前記入力側通信線の接続を維持しつつ、対応する他方の前記第３ノードの前記出力側通信線の上流側を前記一方の前記第３ノードの前記入力側通信線に短絡する第６切替状態に切り替わり得るように構成され、
前記スイッチは、前記他方の前記第３ノードの前記出力側通信線を通過した前記他方の前記第３ノードからの前記中継パケットが前記一方の前記第３ノードの前記入力側通信線に伝送されず、前記第２ノードの側から出力された前記送信パケット又は前記中継パケットが前記一方の前記第３ノードの前記入力側通信線に伝送された場合、前記第６切替状態に切り替わることを特徴とする請求項８〜請求項１０のいずれかに記載のリングネットワーク。
【請求項１２】
前記スイッチは、対応する一方の前記第３ノードの前記入力側通信線を切断し、且つ対応する他方の前記第３ノードの前記出力側通信線の上流側を前記一方の前記第３ノードの前記入力側通信線に短絡する第７切替状態に切り替わり得るように構成され、
前記スイッチは、前記他方の前記第３ノードの前記出力側通信線を通過した前記他方の前記第３ノードからの前記中継パケットが前記一方の前記第３ノードの前記入力側通信線に伝送されず、且つ前記第２ノードの側から出力された前記送信パケット又は前記中継パケットが前記一方の前記第３ノードの前記入力側通信線に伝送されない場合、前記第７切替状態に切り替わることを特徴とする請求項８〜請求項１１のいずれかに記載のリングネットワーク。
【請求項１３】
請求項１〜請求項１２のいずれかに記載のリングネットワークを備えたロボットであって、
本体と、
サーボ制御されるモータによって駆動される複数の関節を介して前記本体に直列に接続された複数のリンクを有する腕又は脚とを備え、
複数のノードが、前記本体と前記腕又は前記脚の複数のリンクとに分散配置され、且つ対応するリンクの関節を駆動するモータを制御し、
複数のノードのそれぞれが前記通信異常検出部を備えており、
前記腕又は前記脚のリンクに設けられたノードは、前記通信異常検出部が上流側での通信異常を特定した場合、モータをサーボロックして対応する関節を固定し、
前記本体に設けられたノードは、前記通信異常検出部が通信異常の発生箇所を特定した場合、通信異常の発生箇所よりも遊端側のリンクを固定物とみなして縮退制御を行うことを特徴とするロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信線を介してリング状に接続された複数のノードを含むリングネットワーク及びこれを備えたロボットに関する。
【背景技術】
【０００２】
複数のコンピュータ等の端末（ノード）を通信可能に接続するネットワークのトポロジーには、バス型、スター型、リング型、メッシュ型等がある。バス型のネットワークの例としては、イーサネット（登録商標）がある。イーサネットは、物理的にはスター型構成とされるが、論理的にはバス型構成を採っており、各ノードは自由に信号（データ）を発信することができる。その一方で、イーサネットでは、信号の衝突が発生することがあり、この場合には信号の送達が遅れる（即ち、レイテンシが大きい）。
【０００３】
リング型のネットワーク（以下、リングネットワークという）も、イーサネット（登録商標）と同様に物理的にはハブに集線したスター型構成とされることが多い。リングネットワークでは、ネットワーク上にてデータが衝突することがなく、リング上に送信されたデータは、ノードによって中継されながら、送信先のノードへ伝送される。送信データの終端は、送信先のノードになる場合と送信元のノードになる場合とがある（即ち、２通りの通信方式がある）。送信データが送信元に返送される通信方式では、送信データが送信元に返送されたことにより、通信が正常に行われたことが確認でき、データが返送されてこない場合には、ネットワークに異常が発生したことが判る。
【０００４】
リングネットワークでは、いずれの通信方式においても、１つの通信ノードに異常があるとネットワークシステム全体が影響を受け、システム障害となる可能性が高い。このような異常が発生したときには、異常が発生した通信ノードを切り分けるため、通信ノードを順次バイパスさせて異常状態が解消するか否かを調べることが特許文献１に記載されている。
【０００５】
しかしながら、通信ノード数が多い場合には多くの時間を要することから、異常が発生したノードを早期に発見できるようにした発明が提案されている（特許文献１）。この発明では、各ノードが、自身が生成するデータのヘッダに、歩進する数値を送信番号として付与するように構成される。監視ノードは、各ノードから送信されるデータに不連続な送信番号が観測された回数を記憶し、この回数が大きくなっているノードの周辺に障害が発生したことものと判定する。
【０００６】
また、送信ノードでは受信ノードに向けて順次に送信するデータ単位の各々に送信順序を示す順序番号を付加して送信し、受信ノードでは受信したデータ単位に対して前回受信したデータ単位の前回順序番号と現在受信処理中のデータ単位の今回順序番号とを比較して異常を発見する発明が提案されている（特許文献２）。この発明では、今回順序番号の示す順序が前回順序番号の示す順序と同じとの比較結果が２回以上連続したときや、今回順序番号の示す順序が前回順序番号の示す順序よりも２番以上大きいとの比較結果が２回以上連続したときに、送信ノードでの順序番号付加機能又は受信ノードでの比較機能に異常があると判定する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平５−２１９０８４号公報
【特許文献２】特許第３４３１３１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１、２に記載の発明では、通信線の断線やノードの中継機能障害といった通信異常が発生した場合には、通信異常の発生箇所を特定することができない。
【０００９】
本発明は、このような背景に鑑み、様々な態様の異常について異常箇所を早期に特定できるようにすることを課題とする。
【００１０】
このような課題を解決するために、本発明のある実施形態は、通信線（４１）を介してリング状に接続された複数のノード（４２）を含むリングネットワーク（４０）であって、複数のノードのそれぞれは、少なくとも中継数（ＨＯＰ）及び送信元（ＳＩＤ）を有する送信パケット（Ｐｔ）を生成し、前記送信パケットを所定の繰り返しパターンに従って送出するパケット送出部（５８、６０）と、入力する入力パケット（Ｐｅ）のうち、前記送信元（ＳＩＤ）が自ノード以外である中継パケット（Ｐｒ）を、前記中継数に１単位を加算したうえで送出するパケット中継部（５７、５９）とを備え、複数のノードの少なくとも１つ（４２Ａ）は、リングネットワークにおける通信異常を検出する通信異常検出部（４９、５６）を備え、前記通信異常検出部は、前記入力パケット（Ｐｅ）について、前記送信元を参照することにより、通信異常の発生箇所を特定する。
【００１１】
この構成によれば、ノードを順次バイパスさせて通信異常の発生箇所を特定しなくとも、パケットの送信状態に基づいて通信異常の発生箇所を特定することができる。また、通信線の断線やノードの中継機能障害といった通信異常が発生した場合にも、通信異常の発生箇所を特定することができる。
【００１２】
また、上記構成において、前記通信線（４１）は、あるノード（４２Ａ）を起点とする上流側部分と下流側部分とが並設されており、複数のノードは、前記通信線の一端に設けられ、前記通信異常検出部を備える第１ノード（４２Ａ）と、前記通信線の他端に設けられる第２ノード（４２Ｄ）と、前記通信線における前記第１ノードと前記第２ノードとの間に位置する少なくとも１つの第３ノード（４２Ｂ、４２Ｃ）とを含み、前記第３ノード（４２Ｂ、４２Ｃ）は、入力側通信線（８２）によって上流側のノードに接続され、出力側通信線（８３）によって下流側のノードに接続されており、前記通信線上には、少なくとも１つのスイッチ（８０）が前記第３ノード（４２Ｂ、４２Ｃ）ごとに設けられ、当該スイッチは、前記入力側通信線（８２）、前記出力側通信線（８３）及びこれらに並設された通信線（８１）上に設けられ、対応する前記第３ノードにより中継されるべき前記中継パケット（Ｐｒ）、及び、対応する前記第３ノードから出力されるべき前記送信パケット（Ｐｔ）の伝送状態に基づいて、パケット伝送経路を切り替え、前記通信異常検出部（４９、５６）は、前記入力パケット（Ｐｅ）の前記中継数（ＨＯＰ）と前記送信元（ＳＩＤ）との関係に基づいて通信異常の発生箇所を特定するとよい。
【００１３】
この構成によれば、第３ノードごとに設けられたスイッチにおけるパケット伝送状態に基づいてスイッチがパケット伝送経路を切り替えるため、通信異常の発生によってその下流側をパケットが全く伝送されないような事態に陥ることが防止される。
【００１４】
また、上記構成において、前記スイッチ（８０）は、対応する前記第３ノード（４２Ｂ、４２Ｃ）の前記出力側通信線（８３）の接続を維持しつつ、対応する前記第３ノードの前記入力側通信線（８２）の上流側を前記出力側通信線（８３）に短絡する第１切替状態（図１８（Ａ））に切り替わり得るように構成され、前記スイッチは、前記入力側通信線（８２）を通過した前記中継パケット（Ｐｒ）が前記出力側通信線（８３）に伝送されず、前記送信パケット（Ｐｔ）が前記出力側通信線（８３）に伝送された場合（図１９（Ａ））、前記第１切替状態に切り替わるとよい。
【００１５】
この構成によれば、スイッチは、中継パケットの第３ノードへの送信異常が入力側通信線に発生したものとして、第３ノードをバイパスして（経由せずに）中継パケットを出力側通信線に伝送させると共に、第３ノードから出力される送信パケットを遮断せずに出力側通信線に伝送させることができる。
【００１６】
また、上記構成において、前記スイッチ（８０）は、対応する前記第３ノード（４２Ｂ、４２Ｃ）の前記出力側通信線（８３）を切断し、且つ対応する前記第３ノードの前記入力側通信線（８２）の上流側を前記出力側通信線（８３）に短絡する第２切替状態（図１８（Ｂ））に切り替わり得るように構成され、前記スイッチは、前記入力側通信線（８２）を通過した前記中継パケット（Ｐｒ）及び前記送信パケット（Ｐｔ）が共に前記出力側通信線（８３）に伝送されない場合（図２０（Ａ））、前記第２切替状態に切り替わるとよい。
【００１７】
この構成によれば、スイッチは、中継パケット及び送信パケットの第３ノードからの受信異常が出力側通信線に発生したものとして、第３ノードをバイパスして（経由せずに）中継パケットを出力側通信線に伝送させることができる。
【００１８】
また、上記構成において、前記通信線（４１）の前記上流側部分に設けられた前記第３ノード（４２Ｂ、４２Ｃ）に対応する前記スイッチ（８０）は、前記並設された通信線（８１）の接続を維持しつつ、対応する前記第３ノード（４２Ｂ、４２Ｃ）の前記出力側通信線（８３）の上流側を前記第１通信線（８１）に短絡する第３切替状態（図１８（Ｃ））に切り替わり得るように構成され、前記スイッチは、前記中継パケット（Ｐｒ）が前記入力側通信線（８２）を通過し、且つ前記出力側通信線（８３）に伝送された前記送信パケット（Ｐｔ）が前記第１通信線（８１）を通過しない場合（図２１（Ａ））、前記第３切替状態に切り替わるとよい。
【００１９】
この構成によれば、スイッチは、出力側通信線の下流側に異常が発生したものとして、対応する第３ノードが送出する送信パケット及び中継パケットを、リングネットワークにおける下流側のノードをバイパスして（経由せずに）、並設された通信線に伝送させることができる。
【００２０】
また、上記構成において、前記通信線（４１）の前記下流側部分に設けられた前記第３ノード（４２Ｅ）に対応する前記スイッチ（８０）は、前記入力側通信線（８２）の接続を維持しつつ、対応する前記第３ノードの前記並設された通信線（８１）の上流側を前記入力側通信線（８２）に短絡する第４切替状態（図２９（Ｂ））に切り替わり得るように構成され、前記スイッチは、前記中継パケット（Ｐｒ）が前記入力側通信線（８２）を通過し、且つ前記出力側通信線（８３）に伝送された前記送信パケット（Ｐｔ）が前記入力側通信線（８２）を通過しない場合（図２９（Ａ））、前記第４切替状態に切り替わるとよい。
【００２１】
この構成によれば、スイッチは、並設された通信線の下流側に異常が発生したものとして、並設された通信線の上流側を伝送する送信パケット及び中継パケットを、リングネットワークにおける上流側のノードをバイパスして（経由せずに）、対応する第３ノードに入力させることができる。
【００２２】
また、上記構成において、前記通信線（４１）は、あるノード（４２Ａ）を起点とする上流側部分と下流側部分とが並設されており、複数のノードは、前記通信線の一端に設けられ、前記通信異常検出部を備える第１ノード（４２Ａ）と、前記通信線の他端に設けられる第２ノード（４２Ｃ）と、前記通信線における前記第１ノードと前記第２ノードとの間に設けられた複数の第３ノード（４２Ｂ、４２Ｄ）とを含み、前記第３ノードのそれぞれは、入力側通信線（８２）によって上流側のノードに接続され、出力側通信線（８３）によって下流側のノードに接続されており、前記通信線上には、少なくとも１つのスイッチ（９０）が複数の前記第３ノードに対応して設けられ、当該スイッチは、対応する複数の前記第３ノードのそれぞれの前記入力側通信線及び前記出力側通信線上に設けられ、対応する前記第３ノードにより中継されるべき前記中継パケット（Ｐｒ）、及び、対応する前記第３ノードから出力されるべき前記送信パケット（Ｐｔ）の伝送状態に基づいて、パケット伝送経路を切り替え、前記通信異常検出部（４９、５６）は、前記入力パケット（Ｐｅ）の前記中継数（ＨＯＰ）と前記送信元（ＳＩＤ）との関係に基づいて通信異常の発生箇所を特定するとよい。
【００２３】
この構成によれば、複数の第３ノードに対応して設けられたスイッチにおけるパケット伝送状態に基づいてスイッチがパケット伝送経路を切り替えるため、通信異常の発生によってその下流側をパケットが全く伝送されないような事態に陥ることが防止される。
【００２４】
また、上記構成において、前記第３ノード（４２Ｂ、４２Ｄ）が前記通信線（４１）における前記上流側部分と前記下流側部分とに少なくとも１対に設けられ、前記スイッチ（９０）が１対の前記第３ノードに対応して設けられているとよい。
【００２５】
この構成によれば、１対の第３ノードに対応して設けられたスイッチにおけるパケット伝送状態に基づいてスイッチがパケット伝送経路を切り替えることができる。
【００２６】
また、上記構成において、前記スイッチ（９０）は、対応する１対の前記第３ノード（４２Ｂ、４２Ｄ）のそれぞれについて、対応する前記出力側通信線（８３）の接続を維持しつつ、対応する前記入力側通信線（８２）の上流側を対応する前記出力側通信線に短絡する第４切替状態（図３１（Ａ））に切り替わり得るように構成され、前記スイッチは、一方の前記第３ノード（４２Ｂ）の前記入力側通信線を通過した前記中継パケット（Ｐｒ）が前記一方の前記第３ノードの前記出力側通信線に伝送されず、一方の前記第３ノードから出力されるべき前記送信パケット（Ｐｔ）が前記出力側通信線に伝送された場合（図３３（Ａ））、前記第４切替状態に切り替わるとよい。
【００２７】
この構成によれば、スイッチは、中継パケットの第３ノードへの送信異常がその入力側通信線に発生したものとして、第３ノードをバイパスして（経由せずに）中継パケットを出力側通信線に伝送させると共に、第３ノードから出力される送信パケットを遮断せずに出力側通信線に伝送させることができる。
【００２８】
また、上記構成において、前記スイッチ（９０）は、対応する１対の前記第３ノード（４２Ｂ、４２Ｄ）のそれぞれについて、対応する前記出力側通信線（８３）を切断し、且つ対応する前記入力側通信線（８２）の上流側を対応する前記出力側通信線に短絡する第５切替状態（図３１（Ｂ））に切り替わり得るように構成され、前記スイッチは、一方の前記第３ノード（４２Ｂ）の前記入力側通信線を通過した前記中継パケット（Ｐｒ）及び前記一方の前記第３ノードから出力されるべき前記送信パケット（Ｐｔ）が共に前記一方の前記第３ノードの前記出力側通信線に伝送されない場合（図３４（Ａ））、前記第５切替状態に切り替わるとよい。
【００２９】
この構成によれば、スイッチは、中継パケット及び送信パケットの第３ノードから出力されるべき受信異常が出力側通信線に発生したものとして、第３ノードをバイパスして（経由せずに）中継パケットを出力側通信線に伝送させることができる。
【００３０】
また、上記構成において、前記スイッチ（９０）は、対応する一方の前記第３ノード（４２Ｄ）の前記入力側通信線（８２）の接続を維持しつつ、対応する他方の前記第３ノード（４２Ｂ）の前記出力側通信線（８３）の上流側を前記一方の前記第３ノードの前記入力側通信線に短絡する第６切替状態（図３２（Ｃ））に切り替わり得るように構成され、前記スイッチは、前記他方の前記第３ノードの前記出力側通信線を通過した前記他方の前記第３ノードからの前記中継パケット（Ｐｒ）が前記一方の前記第３ノードの前記入力側通信線に伝送されず、前記第２ノードの側から出力された前記送信パケット（Ｐｔ）又は前記中継パケットが前記一方の前記第３ノードの前記入力側通信線に伝送された場合（図３５（Ａ））、前記第６切替状態に切り替わるとよい。
【００３１】
この構成によれば、スイッチは、他方の第３ノードから出力された中継パケットの第２ノードへの送信異常が他方の第３ノードの出力側通信線に発生したものとして、第２ノードをバイパスして（経由せずに）中継パケットを一方の第３ノードの入力側通信線に伝送させると共に、第２ノードの側から出力される送信パケット又は中継パケットを遮断せずに一方の第３ノードの入力側通信線に伝送させることができる。
【００３２】
また、上記構成において、前記スイッチ（９０）は、対応する一方の前記第３ノード（４２Ｄ）の前記入力側通信線（８２）を切断し、且つ対応する他方の前記第３ノード（４２Ｂ）の前記出力側通信線（８３）の上流側を前記一方の前記第３ノードの前記入力側通信線に短絡する第７切替状態（図３２（Ｄ））に切り替わり得るように構成され、前記スイッチは、前記他方の前記第３ノードの前記出力側通信線を通過した前記他方の前記第３ノードからの前記中継パケット（Ｐｒ）が前記一方の前記第３ノードの前記入力側通信線に伝送されず、且つ前記第２ノードの側から出力された前記送信パケット（Ｐｔ）又は前記中継パケットが前記一方の前記第３ノードの前記入力側通信線に伝送されない場合（図３６（Ａ））、前記第７切替状態に切り替わるとよい。
【００３３】
この構成によれば、スイッチは、第２ノードの側から出力された送信パケット又は中継パケットの一方の第３ノードへの受信異常が一方の第３ノードの入力側通信線に発生したものとして、第２ノードをバイパスして（経由せずに）中継パケットを一方の第３ノードの入力側通信線に伝送させることができる。
【００３４】
また、上記構成のリングネットワーク（４０）を備えたロボット（１）であって、本体（２）と、サーボ制御されるモータ（３５）によって駆動される複数の関節（２２〜２４、２５〜２７）を介して前記本体に直列に接続された複数のリンク（７〜９、１０〜１２）を有する腕（４）又は脚（５）とを備え、複数のノード（４２）が、前記本体と前記腕又は前記脚の複数のリンクとに分散配置され、且つ対応するリンクの関節を駆動するモータ（３５）を制御し、複数のノードのそれぞれが前記通信異常検出部（４９、５６）を備えており、前記腕又は前記脚のリンクに設けられたノード（４２Ｃ、４２Ｄ）は、前記通信異常検出部が上流側での通信異常を特定した場合、モータをサーボロックして対応する関節を固定し、前記本体に設けられたノード（４２Ａ）は、前記通信異常検出部が通信異常の発生箇所を特定した場合、通信異常の発生箇所よりも遊端側のリンクを固定物とみなして縮退制御を行うとよい。
【００３５】
この構成によれば、ロボットは、リングネットワークに通信異常が発生した場合に、早期に通信異常の発生箇所を特定すると共に、通信異常の発生箇所に応じた縮退制御を行うことによって動作を継続することができる。
【発明の効果】
【００３６】
このように本発明によれば、様々な態様の異常について異常箇所を早期に特定することができる。
【図面の簡単な説明】
【００３７】
【図１】実施形態に係るロボットの正面図
【図２】図１に示すロボットの脚部の関節構造の説明図
【図３】図１に示すロボットの右脚部に設けられたリングネットワークの配置図
【図４】図３に示すリングネットワークの第１実施例の概略構成図
【図５】通常パケットの構成図
【図６】割込パケットの構成図
【図７】ノードＡが送信したパケットの中継数（ＨＯＰ）の変化の説明図
【図８】各ノードが受信したパケットの中継数（ＨＯＰ）の説明図
【図９】図４に示す各ノードの機能ブロック図
【図１０】図９に示す通信状態記憶部の機能ブロック図
【図１１】第１実施例の第１通信異常パターンにおけるＨＯＰテーブルの説明図
【図１２】第１実施例の第２通信異常パターンにおけるＨＯＰテーブルの説明図
【図１３】第１実施例の第３通信異常パターンにおけるＨＯＰテーブルの説明図
【図１４】第１実施例の第４通信異常パターンにおけるＨＯＰテーブルの説明図
【図１５】第１実施例のＨＯＰテーブルの一覧表
【図１６】図３に示すリングネットワークの第２実施例の概略構成図
【図１７】図１６に示すスイッチの概略構成図
【図１８】図１７に示すスイッチが取り得る（Ａ）第１切替状態、（Ｂ）第２切替状態、（Ｃ）第３切替状態の説明図
【図１９】図１８（Ａ）に示す第１切替状態への切替条件の説明図
【図２０】図１８（Ｂ）に示す第２切替状態への切替条件の説明図
【図２１】図１８（Ｃ）に示す第３切替状態への切替条件の説明図
【図２２】第２実施例の第１通信異常パターンにおけるＨＯＰテーブルの説明図
【図２３】第２実施例の第２通信異常パターンにおけるＨＯＰテーブルの説明図
【図２４】第２実施例の第３通信異常パターンにおけるＨＯＰテーブルの説明図
【図２５】第２実施例の第４通信異常パターンにおけるＨＯＰテーブルの説明図
【図２６】第２実施例のスイッチがない場合のＨＯＰテーブルに基づく異常箇所の特定可能性を示す一覧表
【図２７】第２実施例のＨＯＰテーブルに基づく異常箇所の特定可能性を示す一覧表
【図２８】第２実施例の変形例に係るリングネットワークの概略構成図
【図２９】第２実施例の変形例にノードＥの第４切替状態への切替条件の説明図
【図３０】図３に示すリングネットワークの第３実施例の概略構成図
【図３１】図３０に示すスイッチが取り得る（Ａ）第４切替状態、（Ｂ）第５切替状態の説明図
【図３２】図３０に示すスイッチが取り得る（Ｃ）第６切替状態、（Ｄ）第７切替状態の説明図
【図３３】図３１（Ａ）に示す第４切替状態への切替条件の説明図
【図３４】図３１（Ｂ）に示す第５切替状態への切替条件の説明図
【図３５】図３２（Ｃ）に示す第６切替状態への切替条件の説明図
【図３６】図３２（Ｄ）に示す第７切替状態への切替条件の説明図
【図３７】第３実施例の第１通信異常パターンにおけるＨＯＰテーブルの説明図
【図３８】第３実施例の第２通信異常パターンにおけるＨＯＰテーブルの説明図
【図３９】第３実施例の第３通信異常パターンにおけるＨＯＰテーブルの説明図
【図４０】第３実施例の第４通信異常パターンにおけるＨＯＰテーブルの説明図
【図４１】第３実施例の第５通信異常パターンにおけるＨＯＰテーブルの説明図
【図４２】第３実施例の第６通信異常パターンにおけるＨＯＰテーブルの説明図
【図４３】第３実施例の第７通信異常パターンにおけるＨＯＰテーブルの説明図
【図４４】第３実施例の第８通信異常パターンにおけるＨＯＰテーブルの説明図
【図４５】第３実施例のＨＯＰテーブルに基づく異常箇所の特定可能性を示す一覧表
【発明を実施するための形態】
【００３８】
本発明に係るロボット１の実施形態を、図面を参照して説明する。
【００３９】
図１に示すように、実施形態に係るロボット１は、自律的に歩行・走行を行う２脚歩行式の人間型ロボットであり、本体をなす胴体２、頭部３、左右の腕４、左右の脚５を備えると共に、胴体２の背部に電装品ボックス６を背負っている。腕４は、それぞれがリンクをなす上腕部７と、前腕部８と、手部９とから構成されている。また、脚５はそれぞれがリンクをなす、大腿部１０と、下腿部１１と、足部１２とから構成されている。電装品ボックス６には、バッテリやＤＣ−ＤＣコンバータ等が収容されている。
【００４０】
胴体２と頭部３は首関節２１によって連結されている。また、上腕部７は肩関節２２によって胴体２に連結され、上腕部７と前腕部８とは肘関節２３によって連結され、前腕部８と手部９とは手関節２４によって連結されている。一方、大腿部１０は股関節２５によって胴体２に連結され、大腿部１０と下腿部１１とは膝関節２６によって連結され、下腿部１１と足部１２とは足関節２７によって連結されている。即ち、腕４や脚５を構成する複数のリンクは胴体２に直列に接続されている。なお、図１においては、各関節（２１〜２７）の概ね中心を破線の円で示してある。
【００４１】
図２を参照して、脚５の関節（２５〜２７）の構成について説明する。なお、説明は省略するが、腕４の関節（２２〜２４）も脚５の関節と同様に構成される。以下の説明では、ロボット１の前後方向をＸ軸、左右方向をＹ軸、上下方向をＺ軸とする。脚５の関節（２５〜２７）は、互いに連結された１対のリンク間に設けられた少なくとも１つの連結部３０（３０Ａ〜３０Ｆ）によって構成される。連結部３０は一方のリンクに対して他方のリンクを１軸に回動可能に連結している。連結部３０の回動方向は、Ｘ軸を中心とする回転（ロール）、Ｙ軸を中心とする回転（ピッチ）、Ｚ軸を中心とする回転（ヨー）の３種からなり、それらの組み合わせによって関節における複数の自由度を有する回動が可能となる。
【００４２】
股関節２５は、胴体２に対する大腿部１０の、Ｚ軸回りの回動を行うための股第１連結部３０Ａ、Ｙ軸回りの回動を行うための股第２連結部３０Ｂ、及び、Ｘ軸回りの回動を行うための股第３連結部３０Ｃによって構成されている。膝関節２６は、大腿部１０に対する下腿部１１のＹ軸回りの回動を行うための膝連結部３０Ｄによって構成されている。足関節２７は、下腿部１１に対する足部１２の、Ｙ軸回りの回動を行うための足第１連結部３０Ｅ、及び、Ｘ軸回りの回動を行うための足第２連結部３０Ｆによって構成されている。各連結部３０には電動サーボモータ３５（左の脚５のみに図示）が設けられており、電動サーボモータ３５が駆動制御されることにより、対応する連結部３０が駆動され、もって各関節の動作が実現される。
【００４３】
図３に示すように、ロボット１には、右の脚５の動作を制御するためのリングネットワーク４０が設けられている。リングネットワーク４０は、胴体２及び右の脚５を構成するリンク（１０〜１２）に分散して配置され、通信線４１により互いに通信可能に接続された複数のノード４２（ノードＡ４２Ａ〜ノードＤ４２Ｄ）を備えている。これらのノード４２は、電動サーボモータ３５をサーボ制御する制御装置をそれぞれなし、右の脚５の動作を協調して制御する。少なくとも１つ（図示例ではノードＡ４２Ａ、ノードＢ４２Ｂの２つ）のノード４２は胴体２に設けられ、残りの複数（図示例ではノードＣ４２Ｃ、ノードＤ４２Ｄの２つ）のノード４２は右の脚５の複数のリンクに（図示例では、大腿部１０及び下腿部１１に）設けられている。図示省略するが、右の脚５や左右の腕４にも、同様な構成のリングネットワーク４０が設けられている。即ち、これらのリングネットワーク４０は、ロボット１の各部を制御するノード４２が分散配置された分散制御システムをなす。
【００４４】
胴体２に設けられたノードＡ４２Ａは、左の脚５用のリングネットワーク４０や左右の腕用のリングネットワーク４０、頭部用のリングネットワーク４０と互いに接続され、他のノード４２に対する動作指令等を生成するホストノードである。残りの３つのノード４２（４２Ｂ、４２Ｃ、４２Ｄ）は、ノードＡ４２Ａによって生成された動作指令に従って関節動作の制御を行うエージェントノードである。
【００４５】
通信線４１は、関節（２５、２６）を通って胴体２から下腿部１１に至るようにロボット１に敷設されている。リングネットワーク４０においては、信号の伝送方向が予め定められている。本実施形態のリングネットワーク４０では、信号が、胴体２に設けられたホストノードをなすノードＡ４２Ａから、胴体２に設けられたエージェントノードをなすノードＢ４２Ｂ、大腿部１０に設けられたノードＣ４２Ｃ、下腿部１１に設けられたノードＤ４２Ｄ、ノードＡ４２Ａへ、この順に伝送されるように接続されている。本実施形態の通信線４１には光ファイバケーブルが使用されている。他の実施形態では、通信線４１として電気信号線が使用されてもよい。
【００４６】
本実施形態では、ノードＤ４２Ｄは、足第１連結部３０Ｅを駆動する電動サーボモータ３５及び足第２連結部３０Ｆを駆動する電動サーボモータ３５の動作を制御する。ノードＣ４２Ｃは、膝連結部３０Ｄを駆動する電動サーボモータ３５の動作を制御する。ノードＢ４２Ｂは、股第２連結部３０Ｂを駆動する電動サーボモータ３５及び股第３連結部３０Ｃを駆動する電動サーボモータ３５の動作を制御する。ノードＡ４２Ａは、股第１連結部３０Ａを駆動する電動サーボモータ３５の動作を制御する。
【００４７】
まず、図４〜図１５を参照して、本実施形態に係るリングネットワーク４０の第１実施例について説明する。
【００４８】
図４は、本実施形態に係るリングネットワーク４０の第１実施例の概略構成図である。図４に示すように、各ノード４２は、演算処理部をなすＣＰＵ４４と、リングネットワーク４０に沿って一方向にデータＤを送るように構成されたネットワークコントローラ４５と、ソフトウェアを格納するメモリ４６とを有している。通信線４１に光ファイバケーブルが使用されていることから、ネットワークコントローラ４５は、光信号を送受信するための光送受信モジュールを備えている。つまり、通信線４１は、複上記の順序で互いに隣接する１対のノード４２の光送受信モジュール間に設けられ、一方向に通信を行う複数の光ファイバケーブルによってリング状に構成される。なお、リングネットワーク４０とは論理的な通信構成を意味し、通信線４１が物理的にリング状に接続されている必要はない。
【００４９】
各ノード４２は、ＣＰＵ４４によるソフトウェアを用いた演算処理を行い、演算処理により出力されたデータＤに基づいて、ハードウェアからなる対応する制御対象４７（図９）をそれぞれ制御する制御装置である。ハードウェアとは、電源に電気的に接続された電気装置であり、例えば、電動サーボモータ３５への供給電力を制御するドライバの他、電磁弁や照明器具、電気素子、及びそれらのドライバ等を含む。
【００５０】
リングネットワーク４０上を通信されるデータＤには、通常制御に用いられる、即ち後述するソフトウェア駆動式の制御部４９によりなされるハードウェアの制御に用いられるデータＤ（以下、通常データＤｎと称する）と、制御部４９を介することなくハードウェアを制御したいときに生成される、通常データＤｎに優先される割込データＤｉとの２種類がある。これらのデータＤ（通常データＤｎ及び割込データＤｉ）は、原則として、図５又は図６に示す構造を有するパケットＰ（以下、通常データＤｎを含むパケットＰを通常パケットＰｎと称し、割込データＤｉを含むパケットＰを割込パケットＰｉと称する）の形態で伝送される。例外的なパケットＰについては、説明を省略するが、必要であれば本出願人による特開２０１７−１７５２３１号公報を参照されたい。
【００５１】
図５に示すように、通常データＤｎを含むパケットＰ、即ち通常パケットＰｎは、先頭から順にヘッダ、データ部（通常データＤｎ）、トレーラ及びＣＲＣ（周期的冗長検査）を含むフレームにより構成される。ヘッダは、符号、パケット先頭（ＳＯＤＰ）、中継数（ＨＯＰ）及び送信元ノードＩＤ（ＳＩＤ）により構成される。トレーラは、パケット末尾（ＥＯＤＰ）、空きバッファサイズ（ＦＢＣ）、送信先ノードＩＤ（ＤＩＤ）及びパケット優先度（ＰＲＩ）により構成される。データ部は、大きさ（バイト）に制限がなく、一連の指令に必要なデータＤの全てを含む１塊として構成されてもよく、所定の大きさに制限され、一連の指令に必要なデータＤが所定の大きさよりも大きい場合に複数に分割されたデータＤのうちの１塊とされてもよい。つまり、通常データＤｎに少なくともヘッダ及びトレーラが付加されることで通常パケットＰｎが構成されている。
【００５２】
一方、割込データＤｉを含むパケットＰ、即ち割込パケットＰｉは、図６に示すように、ヘッダ、トレーラ及びＣＲＣを含むフレームにより構成される。つまり、本実施形態の割込パケットＰｉは、図５に示すデータ部を含んでいない。割込パケットＰｉのヘッダは、通常パケットＰｎと同様に、符号、パケット先頭（ＳＯＩＰ）、中継数（ＨＯＰ）及び送信元ノードＩＤ（ＳＩＤ）により構成される。一方、割込パケットＰｉのトレーラは、パケット末尾（ＥＯＩＰ）、空きバッファサイズ（ＦＢＣ）、送信先ノードＩＤ（ＤＩＤ）及び割込ピン番号（ＩＮＴ）により構成される。
【００５３】
割込パケットＰｉのパケット先頭（ＳＯＩＰ）及びパケット末尾（ＥＯＩＰ）は、通常パケットＰｎのパケット先頭（ＳＯＩＰ）及びパケット末尾（ＥＯＩＰ）とそれぞれ異なっており、割込パケットＰｉのパケット先頭（ＳＯＩＰ）及びパケット末尾（ＥＯＩＰ）は、通常パケットＰｎのパケット先頭（ＳＯＩＰ）及びパケット末尾（ＥＯＩＰ）から区別可能となっている。
【００５４】
上記の通り割込パケットＰｉは通常パケットＰｎに優先されて伝送されるため、割込パケットＰｉのトレーラは、図５に示すパケット優先度（ＰＲＩ）を含んでおらず、その代わりに割込ピン番号（ＩＮＴ）を含んでいる。つまり、本実施形態では、割込ピン番号（ＩＮＴ）自体が割込データＤｉとなっており、割込データＤｉがトレーラに組み込まれることにより、割込データＤｉを含み且つヘッダ及びトレーラを有する割込パケットＰｉが構成されている。
【００５５】
割込ピン番号（ＩＮＴ）は、制御したい他のノード４２のハードウェアの割込ピンを指定するものである。なお、各ノード４２に複数のハードウェアが関連付けられていてよく、また、各ハードウェアが異なる動作モードに対応した複数の割込ピンを有していてもよい。そのような場合、割込ピン番号は、１つの割込ピン番号が特定のハードウェアの特定の割込ピンを指定するように予め定めることができる。
【００５６】
他の実施形態では、割込ピン番号（ＩＮＴ）よりも多くの情報を含むデータＤが割込データＤｉとして利用され、割込パケットＰｉが、通常パケットＰｎと同様の構成、即ち割込データＤｉの前にヘッドが付加され、割込データＤｉの後ろにトレーラやＣＲＣが付加された構成とされてもよい。
【００５７】
中継数（ＨＯＰ）は、パケットＰを中継したノード４２の数を示すものである。中継数（ＨＯＰ）は、パケットＰを生成したノード４２において０に設定され、ノード４２を中継するごとに１単位（本実施形態では、１）ずつ加算されてゆく。以下、具体的に説明する。
【００５８】
図７に示すように、例えば、ノードＡ４２Ａにおいて生成されたパケットＰ（即ち、送信元ノードＩＤ（ＳＩＤ）がＡであるパケットＰ）の中継数（ＨＯＰ）は次のように変化する。即ち、パケットＰは、ノードＡ４２Ａにおいて中継数（ＨＯＰ）＝０に設定されてノードＡ４２Ａから通信線４１に送信される。従って、ノードＢ４２Ｂが受け取るＳＩＤ＝ＡのパケットＰの中継数（ＨＯＰ）は０である。一方、ノードＢ４２ＢはパケットＰを中継する際に中継数（ＨＯＰ）に１を加算する。従って、ノードＣ４２Ｃが受け取るＳＩＤ＝ＡのパケットＰの中継数（ＨＯＰ）は１である。ノードＣ４２ＣもパケットＰを中継する際に中継数（ＨＯＰ）に１を加算する。従って、ノードＤ４２Ｄが受け取るＳＩＤ＝ＡのパケットＰの中継数（ＨＯＰ）は２である。更に、ノードＤ４２ＤもパケットＰを中継する際に中継数（ＨＯＰ）に１を加算する。従って、ノードＡ４２Ａが受け取るＳＩＤ＝ＡのパケットＰの中継数（ＨＯＰ）は３である。
【００５９】
他のノード４２において生成されたパケットＰも、同様に中継数（ＨＯＰ）に１が加算されながら中継されることにより、リングネットワーク４０に伝送されるパケットＰは、図８に示されるような中継数（ＨＯＰ）をもって各ノード４２において受信される。例えば、ノードＡ４２Ａが受け取るパケットＰは、ＳＩＤがＤであればＨＯＰ＝０、ＳＩＤがＣであればＨＯＰ＝１、ＳＩＤがＢであればＨＯＰ＝２、ＳＩＤがＡであればＨＯＰ＝３となる。ノードＢ４２Ｂでは、受け取るパケットＰの中継数（ＨＯＰ）とＳＩＤとの関係が、ノードＡ４２Ａが受け取るパケットＰに対して１だけずれる。ノードＣ４２Ｃ及びノードＤ４２Ｄにおいても同様である。
【００６０】
図９は各ノード４２の機能ブロック図である。図９に示すように、各ノード４２は、ハードウェアにより構成される上記のネットワークコントローラ４５と、ＣＰＵ４４によるソフトウェアを用いた演算処理を行い、他のノード４２に対して送信すべきデータＤ（以下、送信データＤｔと称する）や、データＤに付加すべき符号や優先度等のデータ関連情報（以下、データ情報ＤＩと称する）を生成する機能部であるソフトウェア駆動式のデータ生成部４８と、少なくとも他のノード４２から送信されたパケットＰに含まれるデータＤに基づいてＣＰＵ４４によるソフトウェアを用いた演算処理を行い、制御対象４７を制御する機能部であるソフトウェア駆動式の制御部４９とを有している。
【００６１】
データ生成部４８は、他のノード４２に送信すべき送信データＤｔとして、通常制御に用いられる（即ち、他のノード４２の制御部４９によりなされる制御対象４７（ハードウェア）の制御に用いられる）通常送信データＤｔｎと、制御部４９を介することなく他のノード４２のハードウェアを制御するのに用いられる、通常送信データＤｔｎに優先される割込送信データＤｔｉとの２種類の送信データＤｔを生成する。データ生成部４８は、通常送信データＤｔｎを所定の繰り返しパターンに従って（例えば、所定時間おきに）生成するように構成されている。本明細書では、通常送信データＤｔｎ及び割込送信データＤｔｉは、それぞれノード４２がデータ生成部４８で生成した未送信の通常データＤｎ及び割込データＤｉを意味しており、通信線４１からノード４２に入力する通常データＤｎ及び割込データＤｉと区別するためにそれぞれの名称が付与されている。
【００６２】
データ生成部４８はまた、これらの送信データＤｔ（通常送信データＤｔｎ及び割込送信データＤｔｉ）を含むパケットＰのヘッダやトレーラに含ませるデータ情報ＤＩを生成する。送信データＤｔを含み且つヘッダ及びトレーラを有するパケットＰ（以下、送信パケットＰｔと称する）には、通常送信データＤｔｎにヘッダやトレーラ等が付加された通常送信パケットＰｔｎと、割込送信データＤｔｉを含み且つヘッダやトレーラ等を有する割込送信パケットＰｔｉとの２種類がある。割込送信データＤｔｉは図６に示すようにトレーラに組み込まれてもよく、或いは、割込送信データＤｔｉの前後にヘッダ及びトレーラが付加されてもよい。
【００６３】
各ノード４２では、リングネットワーク４０の上流側から送信されたデータＤを含むパケットＰがネットワークコントローラ４５に入力される。本明細書では、各ノード４２に入力されるデータＤやパケットＰは、ノード４２がデータ生成部４８で生成した未送信の送信データＤｔや送信パケットＰｔと区別して、それぞれ入力データＤｅ、入力パケットＰｅと称する。入力データＤｅにも、通常制御に用いられる（即ち、自ノード又は他のノード４２の制御部４９によりなされる制御対象４７（ハードウェア）の制御に用いられる）通常入力データＤｅｎと、制御部４９を介することなく自ノード又は他のノード４２のハードウェアを制御するのに用いられる、通常入力データＤｅｎに優先される割込入力データＤｅｉとの２種類がある。同様に、入力パケットＰｅにも、通常入力データＤｅｎを含み且つヘッダやトレーラ等を有する通常入力パケットＰｅｎと、割込入力データＤｅｉを含み且つヘッダやトレーラ等を有する割込入力パケットＰｅｉとの２種類がある。
【００６４】
ネットワークコントローラ４５は、入力データＤｅを含む入力パケットＰｅを後述する各部に分配するパケット分配器５１を有している。パケット分配器５１は、入力パケットＰｅのヘッダに含まれるパケット先頭がＳＯＤＰ（図５参照）である場合に、トレーラに含まれるパケット末尾がＥＯＤＰであるトレーラ及びＣＲＣまでを、原則的に１つの通常入力パケットＰｅｎと認識し、入力パケットＰｅのヘッダに含まれるパケット先頭がＳＯＩＰ（図６参照）である場合に、トレーラに含まれるパケット末尾がＥＯＩＰであるトレーラ及びＣＲＣまでを、原則的に１つの割込入力パケットＰｅｉと認識する。例外については説明を省略する。図９では、パケット分配器５１により分配される通常入力データＤｅｎを含む通常入力パケットＰｅｎを太線で示し、パケット分配器５１により分配される割込入力データＤｅｉを含む割込入力パケットＰｅｉを破線で示している。
【００６５】
パケット分配器５１に入力したパケットＰが標準的な（即ち、図５に示した構成を有する）通常入力パケットＰｅｎである場合、パケット分配器５１は、通常入力パケットＰｅｎを通常パケット送出部５２、通常パケット受信部５３及び通信状態記憶部５６のそれぞれに分配する。一方、パケット分配器５１に入力したパケットＰが標準的な（即ち、図６に示した構成を有する）割込入力パケットＰｅｉである場合、パケット分配器５１は割込入力パケットＰｅｉを割込パケット送出部５４、割込パケット受信部５５及び通信状態記憶部５６のそれぞれに分配する。入力したパケットＰが例外的な場合の分配については、説明を省略する。
【００６６】
データ生成部４８は、生成した他のノード４２に対する通常送信データＤｔｎを送受信バッファ６７に書き込むと共に、生成した通常送信データＤｔｎのデータ情報ＤＩ（以下、送信データ情報ＤＩｔと称する）を通常パケット送出部５２に書き込む。また、データ生成部４８は、生成した他のノード４２に対する割込送信データＤｔｉ（割込ピン番号（ＩＮＴ））及びその送信データ情報ＤＩｔを割込パケット送出部５４に書き込む。
【００６７】
通常パケット送出部５２は、パケット分配器５１から分配された通常入力パケットＰｅｎの送信元が自ノードでない場合に通常入力パケットＰｅｎを、中継数（ＨＯＰ）に１単位（１）を加算したうえで、そのまま中継すべき通常中継パケットＰｒｎとして送出する通常パケット中継ブロック５７と、データ生成部４８が生成した他のノード４２に対する通常送信データＤｔｎを通常送信パケットＰｔｎの構成にして送出する通常パケット送出ブロック５８とを有している。通常パケット送出ブロック５８は、データ生成部４８が書き込んだ送信データ情報ＤＩｔに対応する通常送信データＤｔｎを送受信バッファ６７から読み出し、通常送信データＤｔｎにヘッダ、トレーラ及びＣＲＣを付加して通常送信パケットＰｔｎを生成する。また、通常パケット送出ブロック５８は、パケット分配器５１から分配された通常入力パケットＰｅｎに基づいて通信完了判定を行う。具体的には、自ノードが生成した通常送信パケットＰｔｎがリングネットワーク４０を１周回って通常入力パケットＰｅｎとして帰ってきたことをもって当該通常送信パケットＰｔｎの通信完了を判定する。
【００６８】
割込パケット送出部５４は、パケット分配器５１から分配された割込入力パケットＰｅｉの送信元が自ノードでない場合に割込入力パケットＰｅｉを、中継数（ＨＯＰ）に１単位（１）を加算したうえで、そのまま中継すべき割込中継パケットＰｒｉとして送出する割込パケット中継ブロック５９と、データ生成部４８が生成した他のノード４２に対する割込送信データＤｔｉを割込送信パケットＰｔｉの構成にして送出する割込パケット送出ブロック６０とを有している。割込パケット送出ブロック６０は、割込送信データＤｔｉにヘッダ、トレーラ及びＣＲＣを付加して（正確には割込送信データＤｔｉをトレーラに組み込んで）通常送信パケットＰｔｎを生成する。
【００６９】
通常パケット受信部５３は、パケット分配器５１から分配された通常入力パケットＰｅｎの送信先が自ノードであり、通常入力パケットＰｅｎを受信すべき場合に、通常入力パケットＰｅｎを受信してこれに含まれる通常入力データＤｅｎを受信データＤｒとして送受信バッファ６７に書き込むと共に、通常入力パケットＰｅｎに含まれる送信データ情報ＤＩｔを制御部４９に提供する通常パケット受信ブロック６１を有している。制御部４９は、通常パケット受信ブロック６１から提供された送信データ情報ＤＩｔに基づいて、送受信バッファ６７から受信データＤｒを読み出して制御対象４７（ハードウェア）の制御を行う。
【００７０】
割込パケット受信部５５は、パケット分配器５１から分配された割込入力パケットＰｅｉの送信先が自ノードである割込パケットＰｉである場合に割込入力パケットＰｅｉを受信し、これに含まれる割込データＤｉ（割込ピン番号（ＩＮＴ）、図６参照）に基づいてハードウェア制御信号Ｓｃをハードウェアに送出する割込パケット受信ブロック６２を有している。
【００７１】
通常パケット中継ブロック５７から送出された通常中継パケットＰｒｎ、通常パケット送出ブロック５８から送出された通常送信パケットＰｔｎ、割込パケット中継ブロック５９から送出された割込中継パケットＰｒｉ、及び割込パケット送出ブロック６０から送出された割込送信パケットＰｔｉは、出力切替部６３に入力される。
【００７２】
出力切替部６３では、通常パケット切替ブロック６４が、通常中継パケットＰｒｎ及び通常送信パケットＰｔｎのうち、入力タイミングが早い通常パケットＰｎを他のノード４２に向けて出力すべき通常送出パケットとして出力する。具体的には、通常パケット切替ブロック６４は、通常中継パケットＰｒｎ及び通常送信パケットＰｔｎの一方が入力した場合、入力した通常パケットＰｎを通常送出パケットとして出力し、通常中継パケットＰｒｎ及び通常送信パケットＰｔｎの両方が同時に入力した場合、通常送信パケットＰｔｎを優先的に（先に）通常送出パケットとして出力するように、出力する通常パケットＰｎを通常中継パケットＰｒｎ及び通常送信パケットＰｔｎの間で切り替える。
【００７３】
また、出力切替部６３では、割込パケット切替ブロック６５が、割込中継パケットＰｒｉ及び割込送信パケットＰｔｉのうち、入力タイミングが早い割込パケットＰｉを他のノード４２に向けて出力すべき割込送出パケットとして出力すると共に、出力する割込パケットＰｉを割込中継パケットＰｒｉ及び割込送信パケットＰｔｉの間で切り替える。割込パケット切替ブロック６５も、出力切替部６３と同様に、割込中継パケットＰｒｉ及び通常送信パケットＰｔｎが同時に入力した場合には通常送信パケットＰｔｎを優先的に出力する。
【００７４】
更に、出力切替部６３では、出力切替ブロック６６が、原則として、通常パケット切替ブロック６４から出力される通常パケットＰｎ、及び割込パケット切替ブロック６５から出力される割込パケットＰｉのうち、一方のパケットＰを出力パケットＰｏとして下流側のノード４２に向けて出力する。具体的には、出力切替ブロック６６は、通常パケットＰｎ及び割込パケットＰｉの一方が入力している場合、入力しているパケットＰ（通常パケットＰｎ又は割込パケットＰｉ）を出力パケットＰｏとして出力する。例外については説明を省略する。
【００７５】
なお、これらの各部についての詳細な説明は割愛するが、必要であれば、本出願人による特開２０１７−１１５１９号公報及び特開２０１７−１７５２３１号公報を参照されたい。
【００７６】
通信状態記憶部５６は、パケット分配器５１により分配された入力パケットＰｅ（通常入力パケットＰｅｎ及び割込入力パケットＰｅｉ）について、上記繰り返しパターンに従った送信がされているか否か、及び、中継数（ＨＯＰ）と送信元ノードＩＤ（ＳＩＤ）との関係が適正であるか否かを判定するための送信データ情報ＤＩｔを記憶する。
【００７７】
図１０に示すように、通信状態記憶部５６では、通常パケット解析部７１が通常入力パケットＰｅｎの送信元ノードＩＤ（ＳＩＤ）、中継数（ＨＯＰ）及びＣＲＣを解析する。また、割込パケット解析部７２が割込入力パケットＰｅｉの送信元ノードＩＤ（ＳＩＤ）、中継数（ＨＯＰ）及びＣＲＣを解析する。通信状態記憶部５６では、ＨＯＰテーブル書き込み部７３が、通常パケット解析部７１及び割込パケット解析部７２により解析されたこれらの入力パケットＰｅの送信元ノードＩＤ（ＳＩＤ）、中継数（ＨＯＰ）及びＣＲＣを、レジスタ番号及びシステムタイマ７７から供給される時刻と共にＨＯＰテーブル７４に書き込む。ＨＯＰテーブル７４は、ＨＯＰ＝０の入力パケットＰｅに関する入力部であるＨＯＰ０レジスタ７５、同じくＨＯＰ＝１に関する入力部であるＨＯＰ１レジスタ７６、・・・ＨＯＰｎレジスタを備えており、送信元ノードＩＤ（ＳＩＤ）及びＣＲＣがＨＯＰごとにこれらのレジスタ（７５、７６、・・・）に書き込まれる。
【００７８】
制御部４９（図９）は、ＨＯＰテーブル７４を読み出し、上記繰り返しパターンに従った送信がされているか否かを判定することにより、リングネットワーク４０の通信異常を検出し、検出した通信異常の発生箇所を特定する通信異常検出部として機能を備えている。ここで、通信異常とは、通信線４１を構成する光ファイバケーブルの断線の他、ノード４２の故障によるパケットＰの送受信障害、ノード４２の暴走によるパケットＰの大量送受信等も含まれる。
【００７９】
なお、全てのノード４２が図９に示す機能部の全てを有している必要はない。例えば、ホストノードをなすノードＡ４２Ａが、通信状態記憶部５６を有し、他のノード４２は通信状態記憶部５６を有していなくてもよい。また、全てのノード４２が割込パケット送出ブロック６０や割込パケット切替ブロック６５、割込パケット受信部５５を有していなくてもよい。但し、全てのノード４２は、データ生成部４８を有して通常送信データＤｔｎを生成し、リングネットワーク４０を実現するのに必要な機能部、即ち、パケット分配器５１、通常パケット中継ブロック５７、通常パケット送出ブロック５８及び通常パケット切替ブロック６４を備えている。割込パケットＰｉが使用されない場合、パケット中継部を構成する通常パケット中継ブロック５７及び割込パケット中継ブロック５９のうち、割込パケット中継ブロック５９は必要ない。
【００８０】
次に、制御部４９（図９）が行う通信異常の判定について説明する。
【００８１】
図１１は、第１実施例の第１通信異常パターンにおけるＨＯＰテーブル７４の説明図である。図１１に示すように、第１通信異常パターンは、ホストノードであるノードＡ４２Ａとその下流側のノードＢ４２Ｂとを接続する通信線４１（Ａ−Ｂ間）の断線時である。この第１通信異常パターンでは、ノードＡ４２ＡのＨＯＰテーブル７４には、ＳＩＤ＝Ａの入力パケットＰｅの送信データ情報ＤＩｔや時刻等の情報のみが書き込まれておらず、他の入力パケットＰｅの情報が書き込まれている。なお、書き込まれていないとは、繰り返しパターンに従った送信がされていないことを意味し、書き込まれているとは、繰り返しパターンに従った送信がされていることを意味する。ノードＢ４２ＢのＨＯＰテーブル７４には、全ての入力パケットＰｅの情報が書き込まれていない。ノードＣ４２ＣのＨＯＰテーブル７４には、ＳＩＤ＝Ｂの入力パケットＰｅの情報のみが書き込まれており、他の入力パケットＰｅの情報が書き込まれていない。ノードＤ４２ＤのＨＯＰテーブル７４には、ＳＩＤ＝Ｃ及びＢの入力パケットＰｅの情報が書き込まれており、ＳＩＤ＝Ａ及びＣの入力パケットＰｅの情報が書き込まれていない。
【００８２】
図１２は、第１実施例の第２通信異常パターンにおけるＨＯＰテーブル７４の説明図である。図１２に示すように、第２通信異常パターンは、ノードＢ４２Ｂの故障時及びノードＢ４２Ｂとその下流側のノードＣ４２Ｃとを接続する通信線４１（Ｂ−Ｃ間）の断線時である。この第２通信異常パターンでは、ノードＡ４２ＡのＨＯＰテーブル７４には、ＳＩＤ＝Ｂ及びＡの入力パケットＰｅの情報が書き込まれておらず、ＳＩＤ＝Ｄ及びＣの入力パケットＰｅの情報が書き込まれている。ノードＢ４２ＢのＨＯＰテーブル７４には、ＳＩＤ＝Ｂの入力パケットＰｅの情報のみが書き込まれておらず、他の入力パケットＰｅの情報が書き込まれている。ノードＣ４２ＣのＨＯＰテーブル７４には、全ての入力パケットＰｅの情報が書き込まれていない。ノードＤ４２ＤのＨＯＰテーブル７４には、ＳＩＤ＝Ｃの入力パケットＰｅの情報のみが書き込まれており、他の入力パケットＰｅの情報が書き込まれていない。
【００８３】
図１３は、第１実施例の第３通信異常パターンにおけるＨＯＰテーブル７４の説明図である。図１３に示すように、第３通信異常パターンは、ノードＣ４２Ｃの故障時及びノードＣ４２Ｃとその下流側のノードＤ４２Ｄとを接続する通信線４１（Ｃ−Ｄ間）の断線時である。この第３通信異常パターンでは、ノードＡ４２ＡのＨＯＰテーブル７４には、ＳＩＤ＝Ｄの入力パケットＰｅの情報のみが書き込まれており、他の入力パケットＰｅの情報が書き込まれていない。ノードＢ４２ＢのＨＯＰテーブル７４には、ＳＩＤ＝Ｃ及びＢの入力パケットＰｅの情報が書き込まれておらず、ＳＩＤ＝Ａ及びＤの入力パケットＰｅの情報が書き込まれている。ノードＣ４２ＣのＨＯＰテーブル７４には、ＳＩＤ＝Ｃの入力パケットＰｅの情報のみが書き込まれておらず、他の入力パケットＰｅの情報が書き込まれている。ノードＤ４２ＤのＨＯＰテーブル７４には、全ての入力パケットＰｅの情報が書き込まれていない。
【００８４】
図１４は、第１実施例の第４通信異常パターンにおけるＨＯＰテーブル７４の説明図である。図１４に示すように、第４通信異常パターンは、ノードＤ４２Ｄの故障時及びノードＤ４２Ｄとその下流側のノードＡ４２Ａとを接続する通信線４１（Ｄ−Ａ間）の断線時である。この第４通信異常パターンでは、ノードＡ４２ＡのＨＯＰテーブル７４には、全ての入力パケットＰｅの情報が書き込まれていない。ノードＢ４２ＢのＨＯＰテーブル７４には、ＳＩＤ＝Ａの入力パケットＰｅの情報のみが書き込まれており、他の入力パケットＰｅの情報が書き込まれていない。ノードＣ４２ＣのＨＯＰテーブル７４には、ＳＩＤ＝Ｄ及びＣの入力パケットＰｅの情報が書き込まれておらず、ＳＩＤ＝Ｂ及びＡの入力パケットＰｅの情報が書き込まれている。ノードＤ４２ＤのＨＯＰテーブル７４には、全ての入力パケットＰｅの情報が書き込まれていない。
【００８５】
図１５は、以上の４つの通信異常パターンのＨＯＰテーブル７４をまとめた一覧表である。図１５に示すように、第１実施例では、各ノード４２におけるＨＯＰテーブル７４の書き込み状態が通信異常パターンごとに異なっている。そのため、制御部４９は、通信状態記憶部５６のＨＯＰテーブル７４を読み出し、ＨＯＰテーブル７４の書き込み状態に基づいて、具体的には、送信元ノードＩＤ（ＳＩＤ）を参照して所定の繰り返しパターンに従ったパケット伝送がなされているか否かを判定することにより、通信異常の発生を検出すると共に、通信異常箇所を特定することができる。
【００８６】
次に、図１６〜図２７を参照して、本実施形態に係るリングネットワーク４０の第２実施例について説明する。
【００８７】
図１６は、本実施形態に係るリングネットワーク４０の第２実施例の概略構成図である。図１６に示すように、通信線４１上には４つのノード４２が設けられ、通信線４１は、ホストノードであるノードＡ４２Ａを起点とする上流側部分と下流側部分とが並設されている。また、通信線４１上には、２つのスイッチ８０（図には「ＳＷ」と記す）が通信線４１の上流側部分と下流側部分とに跨るように設けられている。以下、具体的に説明する。
【００８８】
上流側部分と下流側部分とが並設された通信線４１の一端には、ホストノードであるノードＡ４２Ａが設けられ、通信線４１の他端（ノードＡ４２Ａから最も遠い位置であって、通信線４１の上流側部分の下流端且つ下流側部分の上流端をなす折り返し部分）には、ノードＤ４２Ｄが設けられている。ノードＡ４２Ａの下流側（出力ポート）とノードＤ４２Ｄの上流側（入力ポート）との間には、中間ノード４２Ｍと呼ぶべき２つのノードＢ４２Ｂ及びノードＣ４２Ｃが設けられている。ノードＤ４２Ｄの下流側とノードＡ４２Ａの上流側とは、第１通信線８１によって互いに接続されている。各中間ノード４２Ｍは、上流側のノード４２（４２Ａ、４２Ｂ）に対して入力側通信線８２によって接続され、下流側のノード４２（４２Ｃ、４２Ｄ）に対して出力側通信線８３によって接続されている。即ち、ノードＢ４２Ｂの出力側通信線８３とノードＣ４２Ｃの入力側通信線８２とは同じ信号通信線を指している。第１通信線８１は、ノードＢ４２Ｂ及びノードＣ４２Ｃの入力側通信線８２及び出力側通信線８３の近傍を通過するように並設されている。
【００８９】
スイッチ８０の１つは、ノードＢ４２Ｂの入力側通信線８２、出力側通信線８３及び第１通信線８１の上に設けられている。スイッチ８０の他の１つは、ノードＣ４２Ｃの入力側通信線８２、出力側通信線８３及び第１通信線８１の上に設けられている。即ち、スイッチ８０は、中間ノード４２Ｍ（４２Ｂ、４２Ｃ）ごとに設けられている。なお、リングネットワーク４０における信号の伝送方向が逆とされてもよい。即ち、ノードＡ４２Ａを起点とする上流側部分と下流側部分とが並設された通信線４１のうち、下流側部分に中間ノード４２Ｍ（４２Ｂ、４２Ｃ）が設けられてもよい。この場合にも、スイッチ８０は中間ノード４２Ｍ（４２Ｂ、４２Ｃ）ごとに設けられる。
【００９０】
各スイッチ８０は、図１７に示すように、３つの受信ポート８５（８５Ａ〜８５Ｃ、図には「Ｒｘ」と記す）と、３つの送信ポート８６（８６Ａ〜８６Ｃ、図には「Ｔｘ」と記す）とを備えている。第１受信ポート８５Ａには、上流側のノードＡ４２Ａ又はスイッチ８０の送信ポート８６（Ｔｘ）に接続された入力側通信線８２が接続されている。第１受信ポート８５Ａと第１送信ポート８６Ａとは互いに接続されている。第１送信ポート８６Ａは、対応する中間ノード４２Ｍ（ノードＢ４２Ｂ又はノードＣ４２Ｃ）の受信ポート８５（Ｒｘ）に接続されている。第２受信ポート８５Ｂは、対応する中間ノード４２Ｍの送信ポート８６に接続されている。第２受信ポート８５Ｂと第２送信ポート８６Ｂとは互いに接続されている。第２送信ポート８６Ｂには、下流側のスイッチ８０又はノードＤ４２Ｄの受信ポート８５に接続された出力側通信線８３が接続されている。第３受信ポート８５Ｃには、下流側のスイッチ８０又はノードＤ４２Ｄの送信ポート８６に接続された第１通信線８１が接続されている。第３受信ポート８５Ｃと第３送信ポート８６Ｃとは互いに接続されている。第３送信ポート８６Ｃには、上流側のノードＡ４２Ａ又はスイッチ８０の受信ポート８５に接続された第１通信線８１が接続されている。即ち、第３受信ポート８５Ｃ及び第３送信ポート８６Ｃは、第１通信線８１上に上流側からこの順に設けられている。
【００９１】
各スイッチ８０は、パケット伝送経路を切替可能に構成されており、対応する中間ノード４２ＭをなすノードＢ４２Ｂ又はノードＣ４２Ｃにより中継されるべき、入力側通信線８２及び出力側通信線８３における中継パケットＰｒ（通常中継パケットＰｒｎ又は割込中継パケットＰｒｉ）の伝送状態、及び、対応する中間ノード４２Ｍから出力されるべき送信パケットＰｔ（通常送信パケットＰｔｎ又は割込送信パケットＰｔｉ）の、出力側通信線８３及び入力側通信線８２における伝送状態に基づいて、パケット伝送経路を切り替える。以外に具体的に説明する。
【００９２】
図１８は、スイッチ８０が取り得る３つの切替状態を示す説明図である。図１８（Ａ）に示すように、第１切替状態では、スイッチ８０は、対応する中間ノード４２Ｍの出力側通信線８３の接続を維持しつつ、対応する中間ノード４２Ｍの入力側通信線８２の上流側を出力側通信線８３に短絡する。図１８（Ｂ）に示すように、第２切替状態では、スイッチ８０は、対応する中間ノード４２Ｍの出力側通信線８３を切断し、且つ対応する中間ノード４２Ｍの入力側通信線８２の上流側を出力側通信線８３に短絡する。図１８（Ｃ）に示すように、第３切替状態では、スイッチ８０は、第１通信線８１の接続を維持しつつ、対応する中間ノード４２Ｍの出力側通信線８３の上流側を第１通信線８１に短絡する。スイッチ８０は、パケット伝送状態に基づいて、これら３つの切替状態に切り替わり得るように構成されている。
【００９３】
図１９は、中間ノード４２ＭのうちノードＢ４２Ｂを例にした、第１切替状態への切替条件の説明図である。図１９（Ａ）に示すように、上記所定の繰り返しパターンに従って送信され、入力側通信線８２を通過した中継パケットＰｒ（例えば、送信元ノードＩＤ（ＳＩＤ）＝Ａの中継パケットＰｒ）が、出力側通信線８３に伝送されて来ず、上記所定の繰り返しパターンに従ってノードＢ４２Ｂが送信したＳＩＤ＝Ｂの送信パケットＰｔが、出力側通信線８３に伝送されて来る場合、スイッチ８０は、ノードＢ４２Ｂは正常であり、第１送信ポート８６ＡとノードＢ４２Ｂとの接続に異常があるものとして、図１９（Ｂ）に示す第１切替状態に切り替わる。スイッチ８０が第１切替状態に切り替わると、第１受信ポート８５Ａが受信した、ＳＩＤ＝Ａの中継パケットＰｒは、ノードＢ４２Ｂを介さずに第２送信ポート８６Ｂから出力側通信線８３に送信される。これにより、出力側通信線８３には、ＳＩＤ＝Ａの中継パケットＰｒ及びＳＩＤ＝Ｂの送信パケットＰｔの両方が伝送される。
【００９４】
図２０は、中間ノード４２ＭのうちノードＢ４２Ｂを例にした、第２切替状態への切替条件の説明図である。図２０（Ａ）に示すように、上記所定の繰り返しパターンに従って送信され、入力側通信線８２を通過した中継パケットＰｒ（例えば、ＳＩＤ＝Ａの中継パケットＰｒ）が、出力側通信線８３に伝送されて来ず、上記所定の繰り返しパターンに従ってノードＢ４２Ｂが送信したＳＩＤ＝Ｂの送信パケットＰｔも、出力側通信線８３に伝送されて来ない場合、スイッチ８０は、ノードＢ４２Ｂが故障しているか、ノードＢ４２Ｂと第２受信ポート８５Ｂとの接続に異常があるものとして、図２０（Ｂ）に示す第２切替状態に切り替わる。スイッチ８０が第２切替状態に切り替わると、第１受信ポート８５Ａが受信した、ＳＩＤ＝Ａの中継パケットＰｒは、ノードＢ４２Ｂを介さずに第２送信ポート８６Ｂから出力側通信線８３に送信される。これにより、出力側通信線８３には、ＳＩＤ＝Ａの中継パケットＰｒのみが伝送される。
【００９５】
図２１は、中間ノード４２ＭのうちノードＢ４２Ｂを例にした、第３切替状態への切替条件の説明図である。図２１（Ａ）に示すように、上記所定の繰り返しパターンに従って上流側のノード４２が送信し、入力側通信線８２を通過した中継パケットＰｒ（例えば、ＳＩＤ＝Ａの中継パケットＰｒ）が出力側通信線８３に伝送され、且つ上記所定の繰り返しパターンに従ってノードＢ４２Ｂが送信し、出力側通信線８３に伝送されたＳＩＤ＝Ｂの送信パケットＰｔが、第１通信線８１に伝送されて来ない場合、スイッチ８０は、出力側通信線８３に通信異常があるものとして、図２１（Ｂ）に示す第３切替状態に切り替わる。スイッチ８０が第３切替状態に切り替わると、第２受信ポート８５Ｂが受信した、ＳＩＤ＝Ａの中継パケットＰｒ及びＳＩＤ＝Ｂの送信パケットＰｔは、下流側のノード４２を介さずに第３送信ポート８６Ｃから第１通信線８１に送信される。これにより、入力側通信線８２には、ＳＩＤ＝Ｂの送信パケットＰｔが伝送されて来る（戻ってくる）ようになる。
【００９６】
次に、スイッチ８０がこのように切り替わる場合の中継数（ＨＯＰ）と送信元ノードＩＤ（ＳＩＤ）との関係の変化について説明する。
【００９７】
図２２は、第２実施例の第１通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第１通信異常パターンも、図１１に示した第１実施例の第１通信異常パターンと同様に、ホストノードであるノードＡ４２Ａとその下流側のノードＢ４２Ｂとを接続する通信線４１（Ａ−Ｂ間）の断線時である。この第１通信異常パターンでは、ノードＢ４２Ｂに対して設けられたスイッチ８０の入力側通信線８２を何らの信号も通過しないが、図１９〜図２１に示すパケット伝送パターンに当てはまらないため、スイッチ８０は状態切替を行わない。従って、ホストノードであるノードＡ４２ＡのＨＯＰテーブル７４は、図の右上に示す表の「なし」の欄に比較例として示す、スイッチ８０が設けられていない第１実施例（図１１のＨＯＰテーブル７４）の時の値から変化しない。
【００９８】
図示省略するが、ノードＢ４２Ｂに対して設けられたスイッチ８０の第１送信ポート８６ＡとノードＢ４２Ｂとの接続（即ち、ノードＢ４２Ｂの受信ポート８５）に異常があり、スイッチ８０が図１９に示すパケット伝送パターンになって図１９（Ｂ）の第１切替状態に切り替わった場合、ＳＩＤ＝Ａの送信パケットＰｔがノードＡ４２Ａに戻ってくるようになる。但し、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）はノードＢ４２Ｂを中継していなくなるため、３ではなく２になる。
【００９９】
図２３は、第２実施例の第２通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第２通信異常パターンも、図１２に示した第１実施例の第２通信異常パターンと同様に、ノードＢ４２Ｂの故障時及びノードＢ４２Ｂとその下流側のノードＣ４２Ｃとを接続する通信線４１（Ｂ−Ｃ間）の断線時である。ノードＢ４２Ｂの故障時は、上段に示すように、ノードＢ４２Ｂに対して設けられたスイッチ８０が図２０に示すパケット伝送パターンになり、図２０（Ｂ）の第２切替状態に切り替わる。これにより、ＳＩＤ＝Ａの送信パケットＰｔがノードＡ４２Ａに戻ってくる。但し、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）はノードＢ４２Ｂを中継していないため、３ではなく２になる。
【０１００】
通信線４１（Ｂ−Ｃ間）の断線時は、下段に示すように、ノードＢ４２Ｂに対して設けられたスイッチ８０が図２１に示すパケット伝送パターンになり、図２１（Ｂ）の第３切替状態に切り替わる。一方、ノードＣ４２Ｃに対して設けられたスイッチ８０は状態切替を行わない。これにより、ＳＩＤ＝Ａの送信パケットＰｔ及びＳＩＤ＝Ｂの中継パケットＰｒは、ノードＣ４２Ｃ及びノードＤ４２Ｄを中継せずに第１通信線８１からノードＡ４２Ａに伝送される。但し、ＳＩＤ＝Ｂの中継パケットＰｒの中継数（ＨＯＰ）は０になり、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）は１になる。
【０１０１】
図示省略するが、ノードＣ４２Ｃに対して設けられたスイッチ８０の第１送信ポート８６ＡとノードＣ４２Ｃとの接続（即ち、ノードＣ４２Ｃの受信ポート８５）に異常があり、スイッチ８０が図１９に示すパケット伝送パターンになって第１切替状態に切り替わった場合も、ＳＩＤ＝Ａの送信パケットＰｔ及びＳＩＤ＝Ｂの中継パケットＰｒがノードＡ４２Ａに伝送されるようになる。但し、ＳＩＤ＝Ｂの中継パケットＰｒの中継数（ＨＯＰ）は２ではなく１になり、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）は３ではなく２になる。
【０１０２】
図２４は、第２実施例の第３通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第３通信異常パターンも、図１３に示した第１実施例の第３通信異常パターンと同様に、ノードＣ４２Ｃの故障時及びノードＣ４２Ｃとその下流側のノードＤ４２Ｄとを接続する通信線４１（Ｃ−Ｄ間）の断線時である。ノードＣ４２Ｃの故障時は、上段に示すように、ノードＣ４２Ｃに対して設けられたスイッチ８０が図２０に示すパケット伝送パターンになり、第２切替状態に切り替わる。これにより、ＳＩＤ＝Ａの送信パケットＰｔ及びＳＩＤ＝Ｂの中継パケットＰｒがノードＡ４２Ａに伝送される。但し、ＳＩＤ＝Ｂの中継パケットＰｒの中継数（ＨＯＰ）は１になり、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）は２になる。
【０１０３】
通信線４１（Ｃ−Ｄ間）の断線時は、下段に示すように、ノードＣ４２Ｃに対して設けられたスイッチ８０が図２１に示すパケット伝送パターンになり、第３切替状態に切り替わる。これにより、ＳＩＤ＝Ａの送信パケットＰｔ及びＳＩＤ＝Ｂ、Ｃの中継パケットＰｒはノードＤ４２Ｄを中継せずに第１通信線８１からノードＡ４２Ａに伝送される。但し、ＳＩＤ＝Ｃの中継パケットＰｒの中継数（ＨＯＰ）は０になり、ＳＩＤ＝Ｂの中継パケットＰｒの中継数（ＨＯＰ）は１になり、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）は２になる。
【０１０４】
図２５は、第２実施例の第４通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第４通信異常パターンも、図１４に示した第１実施例の第４通信異常パターンと同様に、ノードＤ４２Ｄの故障時及びノードＤ４２Ｄとその下流側のノードＡ４２Ａとを接続する通信線４１（Ｄ−Ａ間）の断線時である。ノードＤ４２Ｄの故障時は、上段に示すように、ノードＣ４２Ｃに対して設けられたスイッチ８０が図２１に示すパケット伝送パターンになり、第３切替状態に切り替わる。これにより、ＳＩＤ＝Ａの送信パケットＰｔ及びＳＩＤ＝Ｂ、Ｃの中継パケットＰｒがノードＡ４２Ａに伝送される。但し、ＳＩＤ＝Ｃの中継パケットＰｒの中継数（ＨＯＰ）は０になり、ＳＩＤ＝Ｂの中継パケットＰｒの中継数（ＨＯＰ）は１になり、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）は２になる。
【０１０５】
通信線４１（Ｄ−Ａ間）の断線時（例えば、２つのスイッチ８０間）は、下段に示すように、ノードＢ４２Ｂに対して設けられたスイッチ８０が図２１に示すパケット伝送パターンになり、第３切替状態に切り替わる。これにより、ＳＩＤ＝Ａの送信パケットＰｔ及びＳＩＤ＝Ｂの中継パケットＰｒはノードＣ４２Ｃ及びノードＤ４２Ｄを中継せずに第１通信線８１からノードＡ４２Ａに伝送される。但し、ＳＩＤ＝Ｂの中継パケットＰｒの中継数（ＨＯＰ）は０になり、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）は１になる。
【０１０６】
図示省略するが、通信線４１（Ｄ−Ａ間）のうち、下流側のスイッチ８０とノードＡ４２Ａとの間（即ち、下流側のスイッチ８０の第３送信ポート８６Ｃ）の断線時は、全てのパケットＰがノードＡ４２Ａに伝送されない。
【０１０７】
図２６は、第２実施例においてスイッチ８０がない場合（即ち、第１実施例の場合）に、ＨＯＰテーブル７４に基づく異常箇所の特定可能性をまとめた一覧表である。図２６に示すように、スイッチ８０がない場合では、各ノード４２のＨＯＰテーブル７４の書き込み状態（即ち、所定の繰り返しパターンに従ったパケット伝送状態）に加え、中継数（ＨＯＰ）と送信元ノードＩＤ（ＳＩＤ）との関係が適正であるか否かを更に判定しても、通信異常箇所をある程度の領域をもって特定できるだけで具体的箇所を特定することはできない。
【０１０８】
図２７は、スイッチ８０がない場合と比較して、スイッチ８０がある場合に、ＨＯＰテーブル７４に基づく異常箇所の特定可能性をまとめた一覧表である。図２７に示すように、第２実施例では、スイッチ８０が設けられたことにより、ノードＡ４２Ａは、入力パケットＰｅの中継数（ＨＯＰ）と送信元ノードＩＤ（ＳＩＤ）との関係に基づいて通信異常の発生箇所を特定することができる。
【０１０９】
このように、中間ノード４２Ｍの入力側通信線８２及び出力側通信線８３におけるパケット伝送状態に基づいてスイッチ８０がパケット伝送経路を切り替えるため、通信異常の発生によってその下流側をパケットが全く伝送されないような事態に陥ることが防止される。具体的には、スイッチ８０が図１９（Ｂ）の第１切替状態に切り替わることにより、対応する中間ノード４２Ｍをバイパスして（経由せずに）中継パケットＰｒを出力側通信線８３に伝送させると共に、中間ノード４２Ｍから出力される送信パケットＰｔを遮断せずに出力側通信線８３に伝送させることができる。また、スイッチ８０が図２０（Ｂ）の第２切替状態に切り替わることにより、中間ノード４２Ｍをバイパスして（経由せずに）中継パケットＰｒを出力側通信線８３に伝送させることができる。更に、スイッチ８０が図２１（Ｂ）の第３切替状態に切り替わることにより、下流側のノード４２をバイパスして（経由せずに）送信パケットＰｔ及び中継パケットＰｒを第１通信線８１に伝送させることができる。
【０１１０】
図９に戻って説明を続ける。制御部４９は、上記の判定を行い、リングネットワーク４０の通信異常を検出し、検出した通信異常の発生箇所を特定する。図３に示すロボット１においては、全てのノード４２が通信状態記憶部５６を備えている。大腿部１０に設けられたノードＣ４２Ｃ、下腿部１１に設けられたノードＤ４２Ｄの制御部４９は、上流側での通信異常を特定した場合、電動サーボモータ３５をサーボロックして関連する膝関節２６又は足関節２７を固定する。胴体２に設けられたノードＡ４２Ａ及びノードＢ４２Ｂは、ノードＣ４２Ｃ又はノードＤ４２Ｄが関連する膝関節２６又は足関節２７をサーボロックした場合、即ち下流側での通信異常を特定した場合、通信異常の発生箇所よりも遊端側（リングネットワーク４０の下流側）のリンクを、関節が固定された固定物とみなして縮退制御を行う。例えば、ノードＣ４２ＣとノードＤ４２Ｄとの間の通信線４１が断線した場合、ノードＤ４２Ｄは足関節２７を固定する。ノードＢ４２ＢとノードＣ４２Ｃとの間の通信線４１が断線した場合、ノードＣ４２Ｃは膝関節２６を固定し、ノードＤ４２Ｄは足関節２７を固定する。これにより、ロボット１は、リングネットワーク４０に通信異常が発生した場合に、早期に通信異常の発生箇所を特定できると共に、通信異常の発生箇所に応じた縮退制御、例えば、膝関節２６から遊端側を固定物として動作全体を小さくする制御や、脚５の全体を固定物の杖として機能させるような制御を行うことができる。
【０１１１】
次に、図２８及び図２９を参照して第２実施例の変形例について説明する。
【０１１２】
図２８に示すように、この変形例では、ホストノードであるノードＡ４２Ａを起点として上流側部分と下流側部分とが並設された通信線４１の下流側部分に中間ノード４２ＭであるノードＥ４２Ｅが設けられている。図示例では、通信線４１におけるノードＢ４２ＢとノードＣ４２Ｃとの間にノードＤ４２Ｄが設けられている。ノードＤ４２Ｄに関して説明すると、ノードＤ４２Ｄは、リングネットワーク４０における上流側のノードＣ４２Ｃに対して入力側通信線８２によって接続され、下流側のノードＡ４２Ａに対して出力側通信線８３によって接続されている。ノードＢ４２ＢとノードＣ４２Ｃとを接続する信号線（ノードＢ４２Ｂの出力側通信線８３とノードＣ４２Ｃの入力側通信線８２とをなす通信線）が、ノードＤ４２Ｄの入力側通信線８２及び出力側通信線８３の近傍を通過するように並設されに第１通信線８１をなす。
【０１１３】
ノードＥ４２Ｅに対して設けられたスイッチ８０は、第１切替状態（図１９（Ｂ））及び第２切替状態（図２０（Ｂ））に切り替わる他、第３切替状態（図２１（Ｂ））に代えて、図２９（Ｂ）に示すように、入力側通信線８２の接続を維持しつつ、第１通信線８１の上流側を対応するノードＥ４２Ｅの入力側通信線８２に短絡する第４切替状態に切り替わる。
【０１１４】
図２９は、ノードＥ４２Ｅの第４切替状態への切替条件の説明図である。図２９（Ａ）に示すように、上記所定の繰り返しパターンに従って上流側のノード４２（より具体的には、並設された通信線４１のうち他端側のノードＤ４２Ｄ及びノードＣ４２Ｃ）から送信されて入力側通信線８２を通過した中継パケットＰｒ（ＳＩＤ＝Ｃ、Ｄの中継パケットＰｒ）が出力側通信線８３に伝送され、且つ上記所定の繰り返しパターンに従ってノードＥ４２Ｅが送信し、出力側通信線８３に伝送されたＳＩＤ＝Ｅの送信パケットＰｔが、入力側通信線８２に伝送されて来ない場合、スイッチ８０は、第１通信線８１の下流側に通信異常があるものとして、図２９（Ｂ）に示す第４切替状態に切り替わる。スイッチ８０が第４切替状態に切り替わると、第３受信ポート８５Ｃが受信した、ＳＩＤ＝Ａ、Ｂの中継パケットＰｒ及びＳＩＤ＝Ｅの送信パケットＰｔは、他側のノード４２（ノードＣ４２Ｃ、ノードＤ４２Ｄ）を介さずに第１送信ポート８６Ａから入力側通信線８２に送信される。これにより、入力側通信線８２には、ＳＩＤ＝Ｅの送信パケットＰｔが伝送されて来る（戻ってくる）ようになる。
【０１１５】
このような形態であっても、ノードＡ４２Ａは、入力パケットＰｅの中継数（ＨＯＰ）と送信元ノードＩＤ（ＳＩＤ）との関係に基づいて通信異常の発生箇所を特定することができる。
【０１１６】
次に、図３０〜図４５を参照して、本実施形態に係るリングネットワーク４０の第３実施例について説明する。
【０１１７】
図３０は、本実施形態に係るリングネットワーク４０の第３実施例の概略構成図である。図３０に示すように、通信線４１上には４つのノード４２が設けられ、通信線４１は、ホストノードであるノードＡ４２Ａを起点とする上流側部分と下流側部分とが並設されている。また、通信線４１上には、１つのスイッチ９０（図には「ＳＷ」と記す）が通信線４１の上流側部分と下流側部分とに跨るように設けられている。以下、具体的に説明する。
【０１１８】
上流側部分と下流側部分とが並設された通信線４１の一端には、ホストノードであるノードＡ４２Ａが設けられ、通信線４１の他端には、ノードＣ４２Ｃが設けられている。ノードＡ４２ＡとノードＤ４２Ｄとの間には、通信線４１の上流側部分と下流側部分とに１対の中間ノード４２Ｍと呼ぶべき複数（図示例では２つ）のノードＢ４２Ｂ及びノードＤ４２Ｄが設けられている。ノードＤ４２Ｄの下流側とノードＡ４２Ａの上流側とは、第１通信線８１によって互いに接続されている。各中間ノード４２Ｍは、上流側のノード４２（４２Ａ、４２Ｃ）に対して入力側通信線８２によって接続され、下流側のノード４２（４２Ｃ、４２Ａ）に対して出力側通信線８３によって接続されている。即ち、スイッチ９０は、複数の中間ノード４２Ｍ（ノードＢ４２Ｂ及びノードＤ４２Ｄ）のそれぞれの入力側通信線８２及び出力側通信線８３の上に設けられている。そして、ノードＢ４２Ｂの出力側通信線８３はノードＣ４２Ｃの入力通信線をなし、ノードＤ４２Ｄの入力側通信線８２はノードＣ４２Ｃの出力通信線をなしている。
【０１１９】
スイッチ９０は、図３３（Ａ）に示されるように、４つの受信ポート８５（図中の「Ｒｘ」）と、４つの送信ポート８６（図中の「Ｔｘ」）とを備えている。ノードＢ４２Ｂ及びノードＤ４２Ｄのそれぞれの入力側通信線８２及び出力側通信線８３には、上流側から受信ポート８５及び送信ポート８６がこの順に対に設けられている。各対の受信ポート８５と送信ポート８６とは互いに接続されている。
【０１２０】
スイッチ９０は、パケット伝送経路を切替可能に構成されており、対応する中間ノード４２ＭをなすノードＢ４２Ｂ又はノードＤ４２Ｄにより中継されるべき、入力側通信線８２及び出力側通信線８３における中継パケットＰｒの伝送状態、及び、対応する中間ノード４２Ｍから出力されるべき送信パケットＰｔの、出力側通信線８３及び入力側通信線８２における伝送状態に基づいて、パケット伝送経路を切り替える。以外に具体的に説明する。
【０１２１】
図３１及び図３２は、スイッチ９０が取り得る４つの切替状態を示す説明図である。図３１（Ａ）に示すように、第４切替状態では、スイッチ９０は、対応する中間ノード４２Ｍの１つの出力側通信線８３の接続を維持しつつ、この中間ノード４２Ｍの入力側通信線８２の上流側をこの中間ノード４２Ｍの出力側通信線８３に短絡する。図３１（Ｂ）に示すように、第５切替状態では、スイッチ９０は、対応する中間ノード４２Ｍの１つの出力側通信線８３を切断し、且つこの中間ノード４２Ｍの入力側通信線８２の上流側をこの中間ノード４２Ｍの出力側通信線８３に短絡する。図３２（Ｃ）に示すように、第６切替状態では、スイッチ９０は、対応する中間ノード４２Ｍの１つの入力側通信線８２の接続を維持しつつ、対応する中間ノード４２Ｍの他の１つの出力側通信線８３の上流側を先の１つの入力側通信線８２に短絡する。図３２（Ｄ）に示すように、第７切替状態では、スイッチ９０は、対応する中間ノード４２Ｍの１つの入力側通信線８２を切断し、且つ対応する中間ノード４２Ｍの他の１つの出力側通信線８３の上流側を先の１つの入力側通信線８２に短絡する。スイッチ９０は、パケット伝送状態に基づいて、これら４つの切替状態に切り替わり得るように構成されている。
【０１２２】
図３３は、中間ノード４２ＭのうちノードＢ４２Ｂを例にした、第４切替状態への切替条件の説明図である。図３３（Ａ）に示すように、上記所定の繰り返しパターンに従って送信され、入力側通信線８２を通過した中継パケットＰｒ（例えば、送信元ノードＩＤ（ＳＩＤ）＝Ａの中継パケットＰｒ）が、出力側通信線８３に伝送されて来ず、上記所定の繰り返しパターンに従ってノードＢ４２Ｂが送信したＳＩＤ＝Ｂの送信パケットＰｔが、出力側通信線８３に伝送されて来る場合、スイッチ９０は、ノードＢ４２Ｂは正常であり、第１送信ポート８６ＡとノードＢ４２Ｂとの接続に異常があるものとして、図３３（Ｂ）に示す第４切替状態に切り替わる。スイッチ９０が第４切替状態に切り替わると、スイッチ９０の受信ポート８５が受信した、ＳＩＤ＝Ａの中継パケットＰｒは、ノードＢ４２Ｂを介さずに送信ポート８６から出力側通信線８３に送信される。これにより、出力側通信線８３には、ＳＩＤ＝Ａの中継パケットＰｒ及びＳＩＤ＝Ｂの送信パケットＰｔの両方が伝送される。
【０１２３】
図３４は、中間ノード４２ＭのうちノードＢ４２Ｂを例にした、第５切替状態への切替条件の説明図である。図３４（Ａ）に示すように、上記所定の繰り返しパターンに従って送信され、入力側通信線８２を通過した中継パケットＰｒ（例えば、ＳＩＤ＝Ａの中継パケットＰｒ）が、出力側通信線８３に伝送されて来ず、上記所定の繰り返しパターンに従ってノードＢ４２Ｂが送信したＳＩＤ＝Ｂの送信パケットＰｔも、出力側通信線８３に伝送されて来ない場合、スイッチ９０は、ノードＢ４２Ｂが故障しているか、ノードＢ４２Ｂと第２受信ポート８５Ｂとの接続に異常があるものとして、図３４（Ｂ）に示す第５切替状態に切り替わる。スイッチ９０が第５切替状態に切り替わると、スイッチ９０の受信ポート８５が受信した、ＳＩＤ＝Ａの中継パケットＰｒは、ノードＢ４２Ｂを介さずに第２送信ポート８６Ｂから出力側通信線８３に送信される。これにより、出力側通信線８３には、ＳＩＤ＝Ａの中継パケットＰｒのみが伝送される。
【０１２４】
図３５は、中間ノード４２Ｍのうち上流側にあるノードＢ４２Ｂの出力側通信線８３の故障時における、第６切替状態への切替条件の説明図である。図３５（Ａ）に示すように、上記所定の繰り返しパターンに従って送信され、上流側のノード４２が送信し、その出力側通信線８３を通過した中継パケットＰｒ（ＳＩＤ＝ＢやＡの中継パケットＰｒ）がノードＤ４２Ｄの入力側通信線８２に伝送されず、上記所定の繰り返しパターンに従ってノードＣ４２Ｃの側から出力された送信パケットＰｔ又は中継パケットＰｒ（ＳＩＤ＝Ｃの送信パケットＰｔ）がノードＤ４２Ｄの入力側通信線８２に伝送されて来る場合、スイッチ９０は、ノードＢ４２Ｂの出力側通信線８３に通信異常があるものとして、図３５（Ｂ）に示す第６切替状態に切り替わる。スイッチ９０が第６切替状態に切り替わると、スイッチ９０の受信ポート８５が受信した、ＳＩＤ＝ＢやＡの中継パケットＰｒ及びＳＩＤ＝Ｃの送信パケットＰｔは、ノードＢ４２ＢとノードＤ４２Ｄの間のノード４２を介さずにノードＤ４２Ｄに送信される。これにより、ノードＤ４２Ｄの入力側通信線８２には、ＳＩＤ＝Ｃの送信パケットＰｔに加え、ＳＩＤ＝ＢやＡの中継パケットＰｒが伝送されて来るようになる。
【０１２５】
図３６は、中間ノード４２Ｍのうち下流側にあるノードＤ４２Ｄの入力側通信線８２の故障時における、第７切替状態への切替条件の説明図である。図３６（Ａ）に示すように、上記所定の繰り返しパターンに従って送信され、上流側のノード４２が送信し、その出力側通信線８３を通過した中継パケットＰｒ（ＳＩＤ＝ＢやＡの中継パケットＰｒ）がノードＤ４２Ｄの入力側通信線８２に伝送されず、且つ上記所定の繰り返しパターンに従ってノードＣ４２Ｃの側から出力された送信パケットＰｔ又は中継パケットＰｒ（ＳＩＤ＝Ｃの送信パケットＰｔ）がノードＤ４２Ｄの入力側通信線８２に伝送されて来ない場合、スイッチ９０は、ノードＤ４２Ｄの入力側通信線８２に通信異常があるものとして、図３６（Ｂ）に示す第７切替状態に切り替わる。スイッチ９０が第７切替状態に切り替わると、スイッチ９０の受信ポート８５が受信した、ＳＩＤ＝ＢやＡの中継パケットＰｒ及びＳＩＤ＝Ｃの送信パケットＰｔは、ノードＢ４２ＢとノードＤ４２Ｄの間のノード４２を介さずにノードＤ４２Ｄに送信される。これにより、ノードＤ４２Ｄの入力側通信線８２には、ＳＩＤ＝ＢやＡの中継パケットＰｒが伝送されて来るようになる。
【０１２６】
次に、スイッチ９０がこのように切り替わる場合の中継数（ＨＯＰ）と送信元ノードＩＤ（ＳＩＤ）との関係の変化について説明する。
【０１２７】
図３７は、第３実施例の第１通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第１通信異常パターンは、ホストノードであるノードＡ４２Ａとその下流側のスイッチ９０とを接続する通信線４１（Ａ−ＳＷ間）の断線時である。この第１通信異常パターンでは、ノードＢ４２Ｂに対して設けられたスイッチ９０の入力側通信線８２を何らの信号も通過しないが、図３３〜図３６に示すパケット伝送パターンに当てはまらないため、スイッチ９０は状態切替を行わない。従って、ホストノードであるノードＡ４２ＡのＨＯＰテーブル７４は、図の左下に示す表のようになる。
【０１２８】
図３８は、第３実施例の第２通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第２通信異常パターンは、スイッチ９０とノードＢ４２Ｂとを接続する通信線４１（ＳＷ−Ｂ間）の断線時である。この第２通信異常パターンでは、スイッチ９０が図３３に示すパケット伝送パターンになって図３３（Ｂ）の第４切替状態に切り替わる。これにより、ＳＩＤ＝Ａの送信パケットＰｔがノードＡ４２Ａに戻ってくるようになる。但し、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）はノードＢ４２Ｂを中継していなくなるため、３ではなく２になる。
【０１２９】
図３９は、第３実施例の第３通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第３通信異常パターンは、ノードＢ４２Ｂの故障時及びノードＢ４２Ｂとスイッチ９０とを接続する通信線４１（Ｂ−ＳＷ間）の断線時である。この第３通信異常パターンでは、スイッチ９０が図３４に示すパケット伝送パターンになって図３４（Ｂ）の第５切替状態に切り替わる。これにより、ＳＩＤ＝Ａの送信パケットＰｔがノードＡ４２Ａに戻ってくる。但し、ＳＩＤ＝Ａの送信パケットＰｔの中継数（ＨＯＰ）はノードＢ４２Ｂを中継していないため、３ではなく２になる。
【０１３０】
図４０は、第３実施例の第４通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第４通信異常パターンは、スイッチ９０とノードＣ４２Ｃとを接続する通信線４１（ＳＷ−Ｃ間）の断線時である。この第４通信異常パターンでは、スイッチ９０が図３５に示すパケット伝送パターンになって図３５（Ｂ）の第６切替状態に切り替わる。これにより、ＳＩＤ＝Ｂ及びＡの送信パケットＰｔがノードＡ４２Ａに戻ってくるようになる。但し、ＳＩＤ＝Ｂ及びＡの送信パケットＰｔの中継数（ＨＯＰ）はノードＣ４２Ｃを中継していなくなるため、１及び２になる。
【０１３１】
図４１は、第３実施例の第５通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第５通信異常パターンは、ノードＣ４２Ｃの故障時及びノードＣ４２Ｃとスイッチ９０とを接続する通信線４１（Ｃ−ＳＷ間）の断線時である。この第５通信異常パターンでは、スイッチ９０が図３６に示すパケット伝送パターンになって図３６（Ｂ）の第７切替状態に切り替わる。これにより、ＳＩＤ＝Ｂ及びＡの送信パケットＰｔがノードＡ４２Ａに戻ってくるようになる。但し、ＳＩＤ＝Ｂ及びＡの送信パケットＰｔの中継数（ＨＯＰ）はノードＣ４２Ｃを中継していなくなるため、１及び２になる。
【０１３２】
図４２は、第３実施例の第６通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第６通信異常パターンは、スイッチ９０とノードＤ４２Ｄとを接続する通信線４１（ＳＷ−Ｄ間）の断線時である。この第６通信異常パターンでは、スイッチ９０がノードＤ４２Ｄに対して図３３に示すパケット伝送パターンになって図３３（Ｂ）の第４切替状態に切り替わる。これにより、ＳＩＤ＝Ｃ、Ｂ及びＡの送信パケットＰｔがノードＡ４２Ａに戻ってくるようになる。但し、ＳＩＤ＝Ｃ、Ｂ及びＡの送信パケットＰｔの中継数（ＨＯＰ）はノードＤ４２Ｄを中継していなくなるため、１、２及び３になる。
【０１３３】
図４３は、第３実施例の第７通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第７通信異常パターンは、ノードＤ４２Ｄの故障時及びノードＤ４２Ｄとスイッチ９０とを接続する通信線４１（Ｄ−ＳＷ間）の断線時である。この第７通信異常パターンでは、スイッチ９０がノードＤ４２Ｄに対して図３４に示すパケット伝送パターンになって図３４（Ｂ）の第５切替状態に切り替わる。これにより、ＳＩＤ＝Ｃ、Ｂ及びＡの送信パケットＰｔがノードＡ４２Ａに戻ってくるようになる。但し、ＳＩＤ＝Ｃ、Ｂ及びＡの送信パケットＰｔの中継数（ＨＯＰ）はノードＤ４２Ｄを中継していなくなるため、０、１及び２になる。
【０１３４】
図４４は、第３実施例の第８通信異常パターンにおけるＨＯＰテーブル７４の説明図である。本実施例の第８通信異常パターンは、スイッチ９０とノードＡ４２Ａとを接続する通信線４１（ＳＷ−Ａ間）の断線時である。この第６通信異常パターンでは、所定の繰り返しパターンに従って送信された全ての送信パケットＰｔがスイッチ９０を通過する。従って、図３３〜図３６に示すパケット伝送パターンに当てはまらないため、スイッチ９０は状態切替を行わない。そして、ホストノードであるノードＡ４２Ａにはいずれの送信パケットＰｔも戻って来ず、ＨＯＰテーブル７４は図の左下に示す表のようになる。
【０１３５】
図４５は、ＨＯＰテーブル７４に基づく異常箇所の特定可能性をまとめた一覧表である。図４５に示すように、第３実施例では、スイッチ９０が設けられたことにより、ノードＡ４２Ａは、入力パケットＰｅの中継数（ＨＯＰ）と送信元ノードＩＤ（ＳＩＤ）との関係に基づいて通信異常の発生箇所を特定することができる。
【０１３６】
このように、中間ノード４２Ｍの入力側通信線８２及び出力側通信線８３におけるパケット伝送状態に基づいてスイッチ９０がパケット伝送経路を切り替えるため、通信異常の発生によってその下流側をパケットが全く伝送されないような事態に陥ることが防止される。具体的には、スイッチ９０が図３３（Ｂ）の第４切替状態に切り替わることにより、対応する中間ノード４２Ｍをバイパスして（経由せずに）中継パケットＰｒをその出力側通信線８３に伝送させると共に、中間ノード４２Ｍから出力される送信パケットＰｔを遮断せずに出力側通信線８３に伝送させることができる。また、スイッチ９０が図３４（Ｂ）の第５切替状態に切り替わることにより、中間ノード４２Ｍをバイパスして（経由せずに）中継パケットＰｒをその出力側通信線８３に伝送させることができる。更に、スイッチ９０が図３５（Ｂ）の第６切替状態に切り替わることにより、下流側のノードＣ４２Ｃをバイパスして（経由せずに）送信パケットＰｔ及び中継パケットＰｒを更に下流側の中間ノード４２Ｍの入力側通信線８２に伝送させると共に、ノードＣ４２Ｃの側から出力される送信パケットＰｔを遮断せずに下流側の中間ノード４２Ｍの入力側通信線８２に伝送させることができる。また、スイッチ９０が図３６（Ｂ）の第７切替状態に切り替わることにより、下流側のノードＣ４２Ｃをバイパスして（経由せずに）送信パケットＰｔ及び中継パケットＰｒを更に下流側の中間ノード４２Ｍの入力側通信線８２に伝送させることができる。
【０１３７】
以上で具体的実施形態の説明を終えるが、本発明は上記実施形態に限定されることなく幅広く変形実施することができる。例えば、各部材や部位の具体的構成や配置、数量、処理手順など、本発明の趣旨を逸脱しない範囲であれば適宜変更可能である。一方、上記実施形態に示した各構成要素は必ずしも全てが必須ではなく、適宜選択することができる。
【符号の説明】
【０１３８】
１      ロボット
２      胴体（本体）
４      腕
５      脚
７      上腕部（リンク）
８      前腕部（リンク）
９      手部（リンク）
１０    大腿部（リンク）
１１    下腿部（リンク）
１２    足部（リンク）
２２    肩関節
２３    肘関節
２４    手関節
２５    股関節
２６    膝関節
２７    足関節
３０    連結部
３５    電動サーボモータ
４０    リングネットワーク
４１    通信線
４２    ノード
４２Ａ  ノードＡ（第１ノード）
４２Ｂ  ノードＢ（中間ノード４２Ｍ、第３ノード）
４２Ｃ  ノードＣ（中間ノード４２Ｍ、第３ノード）
４２Ｄ  ノードＤ（第２ノード）
４７    制御対象
４８    データ生成部
４９    制御部（通信異常検出部）
５６    通信状態記憶部（通信異常検出部）
５７    通常パケット中継ブロック（パケット中継部）
５８    通常パケット送出ブロック（パケット送出部）
５９    割込パケット中継ブロック（パケット中継部）
６０    割込パケット送出ブロック（パケット送出部）
７４    ＨＯＰテーブル
８０    スイッチ
８１    第１通信線
８２    入力側通信線
８３    出力側通信線
９０    スイッチ
Ｄｔ    送信データ
Ｄｔｉ  割込送信データ
Ｄｔｎ  通常送信データ
Ｐ      パケット
Ｐｅ    入力パケット
Ｐｅｉ  割込入力パケット
Ｐｅｎ  通常入力パケット
Ｐｔ    送信パケット
Ｐｔｉ  割込送信パケット
Ｐｔｎ  通常送信パケット
Ｐｒ    中継パケット
Ｐｒｎ  通常中継パケット
Ｐｒｉ  割込中継パケット
ＨＯＰ  中継数
ＳＩＤ  送信元ノードＩＤ
【図１】
2019125978.tif 000003
【図２】
2019125978.tif 000004
【図３】
2019125978.tif 000005
【図４】
2019125978.tif 000006
【図５】
2019125978.tif 000007
【図６】
2019125978.tif 000008
【図７】
2019125978.tif 000009
【図８】
2019125978.tif 000010
【図９】
2019125978.tif 000011
【図１０】
2019125978.tif 000012
【図１１】
2019125978.tif 000013
【図１２】
2019125978.tif 000014
【図１３】
2019125978.tif 000015
【図１４】
2019125978.tif 000016
【図１５】
2019125978.tif 000017
【図１６】
2019125978.tif 000018
【図１７】
2019125978.tif 000019
【図１８】
2019125978.tif 000020
【図１９】
2019125978.tif 000021
【図２０】
2019125978.tif 000022
【図２１】
2019125978.tif 000023
【図２２】
2019125978.tif 000024
【図２３】
2019125978.tif 000025
【図２４】
2019125978.tif 000026
【図２５】
2019125978.tif 000027
【図２６】
2019125978.tif 000028
【図２７】
2019125978.tif 000029
【図２８】
2019125978.tif 000030
【図２９】
2019125978.tif 000031
【図３０】
2019125978.tif 000032
【図３１】
2019125978.tif 000033
【図３２】
2019125978.tif 000034
【図３３】
2019125978.tif 000035
【図３４】
2019125978.tif 000036
【図３５】
2019125978.tif 000037
【図３６】
2019125978.tif 000038
【図３７】
2019125978.tif 000039
【図３８】
2019125978.tif 000040
【図３９】
2019125978.tif 000041
【図４０】
2019125978.tif 000042
【図４１】
2019125978.tif 000043
【図４２】
2019125978.tif 000044
【図４３】
2019125978.tif 000045
【図４４】
2019125978.tif 000046
【図４５】
2019125978.tif 000047