(57)【要約】通信システム（１）は、ＥｔｈｅｒＣＡＴ規格に従う通信ＩＦ（３１及び３４）を有する複数の被制御機器（３０Ａ）等と、複数の被制御機器（３０Ａ）等それぞれの通信ＩＦ（３１）が接続されるネットワーク（Ｎ１）と、複数の被制御機器（３０Ａ）等それぞれの通信ＩＦ（３４）が接続されるネットワーク（Ｎ２）と、複数の被制御機器（３０Ａ）等を制御するための第一制御データをネットワーク（Ｎ１）に送出し得る制御装置（２０Ａ）と、複数の被制御機器（３０Ａ）等を制御するための第二制御データをネットワーク（Ｎ２）に送出し得る制御装置（２０Ｂ）と、制御装置（２０Ａ）に第一制御データを送出させる第一制御をする主制御装置（１０）とを備え、主制御装置（１０）は、さらに、送出された第一制御データが複数の被制御機器（３０Ａ）等の少なくともいずれかに到達しない場合に、制御装置（２０Ｂ）に第二制御データを送出させる第二制御をする。
2019087849.tif 000002
【特許請求の範囲】
【請求項１】
複数の被制御機器であって、前記複数の被制御機器のそれぞれが、第一入力用ポート及び第一出力用ポートを有するＥｔｈｅｒＣＡＴ（登録商標）（Ｅｔｈｅｒｎｅｔ  ｆｏｒ  Ｃｏｎｔｒｏｌ  Ａｕｔｏｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）規格に従う第一インタフェースと、第二入力用ポート及び第二出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第二インタフェースとを有する複数の被制御機器と、
前記複数の被制御機器それぞれの前記第一インタフェースが接続される第一ネットワークと、
前記複数の被制御機器それぞれの前記第二インタフェースが接続される第二ネットワークと、
前記第一ネットワークに接続され、前記複数の被制御機器を制御するための第一制御データを前記第一ネットワークに送出し得るアクティブ制御装置と、
前記第二ネットワークに接続され、前記複数の被制御機器を制御するための第二制御データを前記第二ネットワークに送出し得るスタンバイ制御装置と、
前記アクティブ制御装置に前記第一制御データを送出させる第一制御をする主制御装置とを備え、
前記主制御装置は、さらに、送出された前記第一制御データが前記複数の被制御機器の少なくともいずれかに到達しない場合に、前記スタンバイ制御装置に前記第二制御データを送出させる第二制御をする
通信システム。
【請求項２】
前記アクティブ制御装置は、前記第一制御において、
前記第一ネットワークから受信した前記第一制御データに含まれる情報から、前記複数の被制御機器のうち、前記第一制御データが到達した被制御機器の個数を取得し、
取得した前記個数が前記複数の被制御機器の個数より小さいと判定した場合に、前記第二制御をする
請求項１に記載の通信システム。
【請求項３】
前記主制御装置は、さらに、
前記アクティブ制御装置からの通信パケットを所定期間内に受信したか否かを判定し、前記通信パケットを前記所定期間内に受信しないと判定した場合に、前記第二制御をする
請求項１又は２に記載の通信システム。
【請求項４】
前記主制御装置は、前記アクティブ制御装置から前記所定期間内に前記通信パケットを受信しないことに基づいて前記第二制御をした後に、前記アクティブ制御装置から新たな所定期間内に新たな通信パケットを受信したときには、さらに、前記第一制御をする
請求項３に記載の通信システム。
【請求項５】
前記第一ネットワークは、前記アクティブ制御装置と、前記複数の被制御機器それぞれの前記第一インタフェースが接続された、リング型のトポロジを有する
請求項１〜４のいずれか１項に記載の通信システム。
【請求項６】
前記通信システムは、さらに、
前記複数の被制御機器である複数の第一被制御機器とは異なる複数の第二被制御機器であって、前記複数の第二被制御機器のそれぞれが、第一入力用ポート及び第一出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第一インタフェースと、第二入力用ポート及び第二出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第二インタフェースとを有する、複数の第二被制御機器と、
前記複数の第二被制御機器それぞれの前記第一インタフェースが接続される第三ネットワークと、
前記複数の第二被制御機器それぞれの前記第二インタフェースが接続される第四ネットワークと、
前記アクティブ制御装置である第一アクティブ制御装置とは異なる第二アクティブ制御装置であって、前記第三ネットワークに接続され、前記複数の第二被制御機器を制御するための第三制御データを前記第三ネットワークに送出する第二アクティブ制御装置とを備え、
前記スタンバイ制御装置は、さらに、
前記第四ネットワークに接続され、
前記複数の第二被制御機器を制御するための第四制御データを前記第四ネットワークに送出し、
前記主制御装置は、さらに、
前記第二アクティブ制御装置に前記第三制御データを送出させる第三制御をし、
前記第三制御データが前記複数の第二被制御機器の少なくともいずれかに到達しない場合に、前記スタンバイ制御装置に前記第四制御データを送出させる第四制御をする
請求項１〜５のいずれか１項に記載の通信システム。
【請求項７】
被制御機器であって、
第一入力用ポート及び第一出力用ポートを有するＥｔｈｅｒＣＡＴ（Ｅｔｈｅｒｎｅｔ  ｆｏｒ  Ｃｏｎｔｒｏｌ  Ａｕｔｏｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）規格に従う第一インタフェースと、
第二入力用ポート及び第二出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第二インタフェースとを備え、
前記第一インタフェースは、第一ネットワークを介して、前記被制御機器を制御するための第一制御データを前記第一ネットワークに送出し得るアクティブ制御装置に接続されており、
前記第二インタフェースは、第二ネットワークを介して、前記被制御機器を制御するための第二制御データを前記第二ネットワークに送出し得るスタンバイ制御装置に接続されており、
前記被制御機器は、
前記アクティブ制御装置によって送出された前記第一制御データを受信した場合には、受信した前記第一制御データによる制御に従って動作し、
前記スタンバイ制御装置によって送出された前記第二制御データを受信した場合には、受信した前記第二制御データによる制御に従って動作する
被制御機器。
【請求項８】
通信システムの制御方法であって、
前記通信システムは、
複数の被制御機器であって、前記複数の被制御機器のそれぞれが、第一入力用ポート及び第一出力用ポートを有するＥｔｈｅｒＣＡＴ（Ｅｔｈｅｒｎｅｔ  ｆｏｒ  Ｃｏｎｔｒｏｌ  Ａｕｔｏｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）規格に従う第一インタフェースと、第二入力用ポート及び第二出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第二インタフェースとを有する複数の被制御機器と、
前記複数の被制御機器それぞれの前記第一インタフェースが接続される第一ネットワークと、
前記複数の被制御機器それぞれの前記第二インタフェースが接続される第二ネットワークと、
前記第一ネットワークに接続され、前記複数の被制御機器を制御するための第一制御データを前記第一ネットワークに送出し得るアクティブ制御装置と、
前記第二ネットワークに接続され、前記複数の被制御機器を制御するための第二制御データを前記第二ネットワークに送出し得るスタンバイ制御装置と、
主制御装置とを備え、
前記制御方法は、
前記主制御装置が、前記アクティブ制御装置に前記第一制御データを送出させる第一制御をするステップと、
前記主制御装置が、送出された前記第一制御データが前記複数の被制御機器の少なくともいずれかに到達しない場合に、前記スタンバイ制御装置に前記第二制御データを送出させる第二制御をするステップとを含む
制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、被制御機器、及び、通信システムの制御方法に関する。
【背景技術】
【０００２】
工場などに配備される機器の制御通信のネットワークには、通信の冗長性及び即時性の観点からＥｔｈｅｒＣＡＴ（登録商標）（Ｅｔｈｅｒｎｅｔ  ｆｏｒ  Ｃｏｎｔｒｏｌ  Ａｕｔｏｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）などのリング方式の通信規格が用いられている。【０００３】
ＥｔｈｅｒＣＡＴのネットワークに接続される装置には、制御装置（一般にマスタともいう）と被制御機器（一般にスレーブともいう）とがある。ＥｔｈｅｒＣＡＴのネットワークは、その一形態としてリング型のトポロジを有する。制御装置が送出したフレームは、制御装置に隣接する被制御機器に受信された後、当該被制御機器から送出され、当該被制御機器に隣接する別の被制御機器に受信される。そのフレームは、その後次々に隣接する被制御機器に送出され、最後に制御装置が受信することで、ネットワークを循環する。【０００４】
特許文献１は、ＥｔｈｅｒＣＡＴのネットワークにおける障害発生時の経路切替に関する技術を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第４９０４３９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に開示する技術では、リング型のネットワークトポロジ（単にトポロジともいう）を有しているネットワークの１箇所で障害が発生したときに、トポロジを変更して通信を継続することができる。【０００７】
しかしながら、ネットワークの２箇所以上で障害が発生した場合、又は、制御装置に障害が発生した場合などには通信を維持することができないという問題がある。【０００８】
本発明は、上記問題を解決するためになされたものであり、より障害耐性を高めたリング方式のネットワークを構成する通信システムなどを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明の一態様に係る通信システムは、複数の被制御機器であって、前記複数の被制御機器のそれぞれが、第一入力用ポート及び第一出力用ポートを有するＥｔｈｅｒＣＡＴ（Ｅｔｈｅｒｎｅｔ  ｆｏｒ  Ｃｏｎｔｒｏｌ  Ａｕｔｏｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）規格に従う第一インタフェースと、第二入力用ポート及び第二出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第二インタフェースとを有する複数の被制御機器と、前記複数の被制御機器それぞれの前記第一インタフェースが接続される第一ネットワークと、前記複数の被制御機器それぞれの前記第二インタフェースが接続される第二ネットワークと、前記第一ネットワークに接続され、前記複数の被制御機器を制御するための第一制御データを前記第一ネットワークに送出し得るアクティブ制御装置と、前記第二ネットワークに接続され、前記複数の被制御機器を制御するための第二制御データを前記第二ネットワークに送出し得るスタンバイ制御装置と、前記アクティブ制御装置に前記第一制御データを送出させる第一制御をする主制御装置とを備え、前記主制御装置は、さらに、送出された前記第一制御データが前記複数の被制御機器の少なくともいずれかに到達しない場合に、前記スタンバイ制御装置に前記第二制御データを送出させる第二制御をする。【００１０】
これによれば、通信システムは、第一ネットワークが折り返し型のトポロジを有する場合には、アクティブ制御装置の障害、又は、第一ネットワーク上の１箇所の障害が発生した場合でも、制御装置と複数の被制御機器との通信を維持できる。また、通信システムは、第一ネットワークがリング型のトポロジを有する場合には、アクティブ制御装置の障害、又は、第一ネットワーク上の２箇所以上の障害が発生した場合でも、制御装置と複数の被制御機器との通信を維持できる。ここで、単に制御装置という場合、アクティブ制御装置とスタンバイ制御装置との少なくとも一方を意味する。このように、通信システムは、より障害耐性を高めたリング方式のネットワークを構成することができる。【００１１】
また、前記アクティブ制御装置は、前記第一制御において、前記第一ネットワークから受信した前記第一制御データに含まれる情報から、前記複数の被制御機器のうち、前記第一制御データが到達した被制御機器の個数を取得し、取得した前記個数が前記複数の被制御機器の個数より小さいと判定した場合に、前記第二制御をしてもよい。【００１２】
これによれば、通信システムは、第一ネットワークを循環する制御データ内に被制御機器によって記録される、当該制御データが到達した被制御機器の個数を示す情報に基づいて、第一制御データがすべての被制御機器に到達したか否かを容易に判定し得る。よって、通信システムは、より障害耐性を高めたリング方式のネットワークを、一層容易に構成することができる。【００１３】
また、前記主制御装置は、さらに、前記アクティブ制御装置からの通信パケットを所定期間内に受信したか否かを判定し、前記通信パケットを前記所定期間内に受信しないと判定した場合に、前記第二制御をしてもよい。【００１４】
これによれば、通信システムは、アクティブ制御装置から受信する通信パケットを受信するか否かに基づいてアクティブ制御装置が正常に動作しているか否かを容易に判定し得る。よって、通信システムは、より障害耐性を高めたリング方式のネットワークを、一層容易に構成することができる。【００１５】
また、前記主制御装置は、前記アクティブ制御装置から前記所定期間内に前記通信パケットを受信しないことに基づいて前記第二制御をした後に、前記アクティブ制御装置から新たな所定期間内に新たな通信パケットを受信したときには、さらに、前記第一制御をしてもよい。【００１６】
これによれば、通信システムは、アクティブ制御装置により被制御機器と通信する状態からスタンバイ制御装置により被制御装置と通信する状態に切り替えた後に、アクティブ制御装置からの通信パケットを受信するか否かに基づいて、自動的に、アクティブ制御装置により被制御機器と通信する状態に戻すことができる。よって、通信システムは、障害が復旧した際の運用をより容易にすることができる。【００１７】
また、前記第一ネットワークは、前記アクティブ制御装置と、前記複数の被制御機器それぞれの前記第一インタフェースが接続された、リング型のトポロジを有してもよい。【００１８】
これによれば、通信システムは、リング型のトポロジを有する第一ネットワークにより、アクティブ制御装置の障害、又は、第一ネットワーク上の２箇所以上の障害が発生した場合でも、制御装置と複数の被制御機器との通信を維持できる。【００１９】
また、前記通信システムは、さらに、前記複数の被制御機器である複数の第一被制御機器とは異なる複数の第二被制御機器であって、前記複数の第二被制御機器のそれぞれが、第一入力用ポート及び第一出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第一インタフェースと、第二入力用ポート及び第二出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第二インタフェースとを有する、複数の第二被制御機器と、前記複数の第二被制御機器それぞれの前記第一インタフェースが接続される第三ネットワークと、前記複数の第二被制御機器それぞれの前記第二インタフェースが接続される第四ネットワークと、前記アクティブ制御装置である第一アクティブ制御装置とは異なる第二アクティブ制御装置であって、前記第三ネットワークに接続され、前記複数の第二被制御機器を制御するための第三制御データを前記第三ネットワークに送出する第二アクティブ制御装置とを備え、前記スタンバイ制御装置は、さらに、前記第四ネットワークに接続され、前記複数の第二被制御機器を制御するための第四制御データを前記第四ネットワークに送出し、前記主制御装置は、さらに、前記第二アクティブ制御装置に前記第三制御データを送出させる第三制御をし、前記第三制御データが前記複数の第二被制御機器の少なくともいずれかに到達しない場合に、前記スタンバイ制御装置に前記第四制御データを送出させる第四制御をしてもよい。【００２０】
これによれば、通信システムは、制御装置から複数の第一被制御機器への通信と、制御装置から複数の第二被制御機器への通信とを、別個のネットワークを通じて行う。これにより、上記の被制御機器と単一のネットワークを通じて通信する場合に比べて多くの被制御機器との通信を行うことができ、また、制御装置の処理負荷を低減することができる。また、複数の第一被制御機器に用いるスタンバイ制御装置が、複数の第二被制御機器の制御にも用いられる。つまり、スタンバイ制御装置が、複数の第一被制御機器との通信、および、複数の第二被制御機器との通信に兼用される。よって、スタンバイ装置の個数を少なくし、コスト削減の効果を奏する。【００２１】
また、本発明の一態様に係る被制御機器は、第一入力用ポート及び第一出力用ポートを有するＥｔｈｅｒＣＡＴ（Ｅｔｈｅｒｎｅｔ  ｆｏｒ  Ｃｏｎｔｒｏｌ  Ａｕｔｏｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）規格に従う第一インタフェースと、第二入力用ポート及び第二出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第二インタフェースとを備え、前記第一インタフェースは、第一ネットワークを介して、前記被制御機器を制御するための第一制御データを前記第一ネットワークに送出し得るアクティブ制御装置に接続されており、前記第二インタフェースは、第二ネットワークを介して、前記被制御機器を制御するための第二制御データを前記第二ネットワークに送出し得るスタンバイ制御装置に接続されており、前記被制御機器は、前記アクティブ制御装置によって送出された前記第一制御データを受信した場合には、受信した前記第一制御データによる制御に従って動作し、前記スタンバイ制御装置によって送出された前記第二制御データを受信した場合には、受信した前記第二制御データによる制御に従って動作する。【００２２】
これにより、上記通信システムと同様の効果を奏する。【００２３】
また、本発明の一態様に係る通信システムの制御方法において、前記通信システムは、複数の被制御機器であって、前記複数の被制御機器のそれぞれが、第一入力用ポート及び第一出力用ポートを有するＥｔｈｅｒＣＡＴ（Ｅｔｈｅｒｎｅｔ  ｆｏｒ  Ｃｏｎｔｒｏｌ  Ａｕｔｏｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ）規格に従う第一インタフェースと、第二入力用ポート及び第二出力用ポートを有するＥｔｈｅｒＣＡＴ規格に従う第二インタフェースとを有する複数の被制御機器と、前記複数の被制御機器それぞれの前記第一インタフェースが接続される第一ネットワークと、前記複数の被制御機器それぞれの前記第二インタフェースが接続される第二ネットワークと、前記第一ネットワークに接続され、前記複数の被制御機器を制御するための第一制御データを前記第一ネットワークに送出し得るアクティブ制御装置と、前記第二ネットワークに接続され、前記複数の被制御機器を制御するための第二制御データを前記第二ネットワークに送出し得るスタンバイ制御装置と、主制御装置とを備え、前記制御方法は、前記主制御装置が、前記アクティブ制御装置に前記第一制御データを送出させる第一制御をするステップと、前記主制御装置が、送出された前記第一制御データが前記複数の被制御機器の少なくともいずれかに到達しない場合に、前記スタンバイ制御装置に前記第二制御データを送出させる第二制御をするステップとを含む。【００２４】
これにより、上記通信システムと同様の効果を奏する。【００２５】
なお、本発明は、装置として実現できるだけでなく、その装置を構成する処理手段をステップとする方法として実現したり、それらステップをコンピュータに実行させるプログラムとして実現したり、そのプログラムを記録したコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体として実現したり、そのプログラムを示す情報、データ又は信号として実現したりすることもできる。そして、それらプログラム、情報、データ及び信号は、インターネット等の通信ネットワークを介して配信してもよい。
【発明の効果】
【００２６】
本発明により、通信システムは、より障害耐性を高めたリング方式のネットワークを構成することができる。
【図面の簡単な説明】
【００２７】
【図１】図１は、実施の形態１に係る通信システムの機能構成を示すブロック図である。
【図２】図２は、実施の形態１に係る検出部が保有するログを示す説明図である。
【図３】図３は、実施の形態１に係る制御部が保持しているＩＤ対応テーブルを示す説明図である。
【図４】図４は、実施の形態１に係る通信システムの制御方法を示す第一のフロー図である。
【図５】図５は、実施の形態１に係る通信システムの制御方法を示す第二のフロー図である。
【図６】図６は、実施の形態１に係る折り返し型のトポロジを有する通信システムの、障害がない場合の通信経路を示す説明図である。
【図７】図７は、実施の形態１に係る折り返し型のトポロジを有する通信システムにおいて障害が発生している場合の通信経路を示す説明図である。
【図８】図８は、実施の形態１に係るリング型のトポロジを有する通信システムの、障害がない場合の通信経路を示す説明図である。
【図９】図９は、実施の形態１に係るリング型のトポロジを有する通信システムの、障害が発生している場合の通信経路を示す第一の説明図である。
【図１０】図１０は、実施の形態１に係るリング型のトポロジを有する通信システムの、障害が発生している場合の通信経路を示す第二の説明図である。
【図１１】図１１は、実施の形態１に係るリング型のトポロジを有する通信システムの、障害が発生している場合の通信経路を示す第三の説明図である。
【図１２】図１２は、実施の形態２に係る折り返し型のトポロジを有する通信システムの、障害がない場合の通信経路を示す説明図である。
【図１３】図１３は、実施の形態２に係るリング型のトポロジを有する通信システムの、障害がない場合の通信経路を示す説明図である。
【発明を実施するための形態】
【００２８】
以下、本発明の実施の形態について、図面を参照しながら具体的に説明する。
【００２９】
以下で説明する実施の形態は、いずれも本発明の好ましい一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、より好ましい形態を構成する任意の構成要素として説明される。
【００３０】
なお、同一の構成要素には同一の符号を付し、説明を省略する場合がある。
【００３１】
（実施の形態１）
本実施の形態において、より障害耐性を高めたリング方式のネットワークを構成する通信システムなどについて説明する。
【００３２】
まず、本実施の形態に係る通信システムの構成について説明する。
【００３３】
図１は、本実施の形態に係る通信システム１の機能構成を示すブロック図である。
【００３４】
図１に示されるように、通信システム１は、主制御装置１０と、制御装置２０Ａ及び２０Ｂと、ネットワークＮ、Ｎ１及びＮ２と、被制御機器３０Ａ、３０Ｂ及び３０Ｃとを備える。
【００３５】
通信システム１は、被制御機器３０Ａ〜３０Ｃを制御するための通信システムである。通信システム１は、例えば、工場などに配備される機器の制御通信のネットワークにおいて、主制御装置と被制御機器との間で行うＩ／Ｏ制御（例えば、センサー、モータなどに対する制御）のための通信に用いられる。
【００３６】
主制御装置１０は、被制御機器３０Ａ〜３０Ｃを含む設備全体を管理するコンピュータであり、被制御機器３０Ａ〜３０Ｃを制御する。具体的には、主制御装置１０は、制御装置２０Ａに制御データを送出させる制御をし、さらに、送出された制御データが被制御機器３０Ａ〜３０Ｃの少なくともいずれかに到達しない場合に、制御装置２０Ｂに制御データを送出させる制御をする。なお、制御装置２０Ａに送出させる制御データを第一制御データともいい、制御装置２０Ａに制御データを送出させる制御を第一制御ともいう。また、制御装置２０Ｂに送出させる制御データを第二制御データともいい、制御装置２０Ｂに制御データを送出させる制御を第二制御ともいう。
【００３７】
制御装置２０Ａは、主制御装置１０から受信した制御命令に従って被制御機器３０Ａ〜３０Ｃを制御するコンピュータである。制御装置２０Ａは、ネットワークＮ１を通じて被制御機器３０Ａ〜３０Ｃのそれぞれと接続されている。制御装置２０Ａは、主制御装置１０から受信した制御命令に含まれるＩ／Ｏ制御の情報に従って被制御機器３０Ａ〜３０Ｃに行わせる具体的な動作を決定する。そして、被制御機器３０Ａ〜３０Ｃのそれぞれに、決定した動作をさせるための制御データを含む通信パケット（単にパケットともいう）をネットワークＮ１に送出する。制御装置２０Ａは、ＰＣ（パーソナルコンピュータ）等のハードウェアにより実現され得る。また、制御装置２０Ａをアクティブ制御装置ともいう。
【００３８】
制御装置２０Ｂは、制御装置２０Ａと同様の機能を有する制御装置である。制御装置２０Ｂは、ネットワークＮ２に接続されている。制御装置２０Ｂは、ネットワークＮ２を通じて被制御機器３０Ａ〜３０Ｃのそれぞれと接続されており、制御装置２０Ａと同様に、生成した制御データをネットワークＮ２に送出する。なお、制御装置２０Ｂをスタンバイ制御装置ともいう。
【００３９】
ネットワークＮ１は、制御装置２０Ａの物理ポート２６（単にポートともいう）及び被制御機器３０Ａ〜３０Ｃのそれぞれが接続されるネットワークである。ネットワークＮ１は、制御装置２０Ａ及び被制御機器３０Ａ〜３０Ｃのそれぞれがデイジーチェーン接続（いわゆる数珠つなぎ）されることで形成されるネットワークであり、その具体例は、ＥｔｈｅｒＣＡＴの通信規格に従うネットワークである。具体的には、制御装置２０Ａのポート２６と被制御機器３０Ａのポート３２とが通信リンクＬ１（単にリンクともいう）で接続され、被制御機器３０Ａのポート３３と被制御機器３０Ｂのポート３２とがリンクＬ２で接続され、被制御機器３０Ｂのポート３３と被制御機器３０Ｃのポート３２とがリンクＬ３で接続されている。
【００４０】
また、ネットワークＮ１は、制御装置２０Ａを一端とする折り返し型のトポロジ（一筆書きのトポロジ）と、制御装置２０Ａをリングの一部とするリング型のトポロジ（環状のトポロジ）とを選択的に採り得る。図１に示されるネットワークＮ１は、折り返し型のトポロジを有している。
【００４１】
ネットワークＮ２は、制御装置２０Ｂのポート２６及び被制御機器３０Ａ〜３０Ｃのそれぞれが接続されるネットワークであり、ネットワークＮ１と同様の機能を有する。
【００４２】
被制御機器３０Ａは、例えば、Ｉ／Ｏ制御（例えば、センサー、モータなどに対する制御）処理を施す機器であり、主制御装置１０による制御に従って動作する。
【００４３】
被制御機器３０Ａは、２つの通信ＩＦ（インタフェース）３１及び３４を有しており、通信ＩＦ３１がネットワークＮ１に接続されており、通信ＩＦ３４がネットワークＮ２に接続されている。被制御機器３０Ａは、通信ＩＦ３１によって受信したパケットを受信した場合には、受信した当該パケットに含まれる制御データに従って動作し、通信ＩＦ３４によって受信したパケットを受信した場合には、受信した当該パケットに含まれる制御データに従って動作する。
【００４４】
被制御機器３０Ｂ及び３０Ｃは、被制御機器３０Ａと同様の機能を有する被制御機器である。被制御機器３０Ｂ及び３０Ｃは、それぞれ、被制御機器３０Ａとは独立に制御データを受信し、独立に動作する。なお、通信システム１が備える被制御機器が、被制御機器３０Ａ、３０Ｂ及び３０Ｃの３個である場合を説明するが、これに限られず、数十個又は数百個であってもよい。
【００４５】
制御装置２０ＡがネットワークＮ１に送出したパケットは、ネットワークＮ１を通じて被制御機器３０Ａに受信される。そして、被制御機器３０Ａは、受信したパケットに含まれる自装置宛ての制御データを取得し、取得した制御データに従って動作する。また、被制御機器３０Ａは、制御装置２０Ａに送信すべきデータを保有している場合には、そのデータをパケットに含めてネットワークＮ１に送出する。送出されたパケットは、被制御機器３０Ｂに受信され、同様に処理がなされてネットワークＮ１に送出される。このようにして、制御装置２０Ａが送出したパケットは、ネットワークＮ１を循環して制御装置２０Ａに戻る。
【００４６】
制御装置２０Ｂ及びネットワークＮ２は、制御装置２０Ａ又はネットワークＮ１に障害が発生した場合に被制御機器３０Ａ〜３０Ｃを制御するスタンバイ系（または予備系）の制御装置及びネットワークとして機能する。これに対して、制御装置２０Ａ及びネットワークＮ１は、通常の場合に被制御機器３０Ａ〜３０Ｃを制御するアクティブ系（又は運用系）の制御装置及びネットワークとして機能する。
【００４７】
次に、主制御装置１０と、制御装置２０Ａ及び２０Ｂと、被制御機器とのそれぞれの詳細な構成について説明する。
【００４８】
図１に示されるように、主制御装置１０は、通信ＩＦ１１と、生成部１２と、ＨＢ検出部１３とを備える。
【００４９】
通信ＩＦ１１は、ネットワークＮに通信可能に接続する通信インタフェース装置である。通信ＩＦ１１は、ネットワークＮを通じて制御装置２０Ａ及び２０Ｂそれぞれの通信ＩＦ２１と接続されている。通信ＩＦ１１の通信規格は、例えば、ＩＥＥＥ８０２．３規格に従う有線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、又は、ＩＥＥＥ８０２．１１ａ、ｂ、ｇ、ｎ等の規格に従う無線ＬＡＮであるがこれらに限られない。
【００５０】
生成部１２は、被制御機器３０Ａ〜３０Ｃのそれぞれを制御するための制御命令を生成する処理部である。制御命令は、例えば、Ｉ／Ｏ制御を示す情報であり、より具体的には、どの機器を、どのように動作させるかを示す情報である。生成部１２は、プロセッサがメモリ等を用いてプログラムを実行することで実現される。
【００５１】
生成部１２は、生成した制御命令を、通信ＩＦ１１を介してネットワークＮに送出する。生成部１２は、送出する制御命令の宛先を、ＨＢ検出部１３から受信する検出情報に基づいて決定する。具体的には、生成部１２は、ＨＢ検出部１３が保有しているハートビート信号のログ１４を参照して、制御装置２０Ａ及び２０Ｂのそれぞれからのハートビート信号を現時点までの所定時間（例えば５秒間程度）内に受信したか否かを判定する。そして、生成部１２は、制御装置２０Ａからのハートビート信号を上記所定時間内に受信していることに基づいて制御装置２０Ａの動作が通常状態であると判定したときには、制御命令を制御装置２０Ａに送信することで制御装置２０Ａを制御する。一方、制御装置２０Ａからのハートビート信号を定期的に受信していないことに基づいて制御装置２０Ａの動作が異常状態であると判定したときには、制御命令を制御装置２０Ｂに送信することで制御装置２０Ｂを制御する。なお、制御装置２０Ａからのハートビート信号を定期的に受信していないことに基づいて制御装置２０Ｂを制御した後に、制御装置２０Ａからのハートビート信号を受信した場合には、自動的に制御装置２０Ａを制御するようにしてもよい。障害が復旧した際の運用をより容易にするためである。一方、上記のように自動的に制御装置２０Ａを制御することを禁止してもよい。障害の原因が不明確である状況のままで自動的に制御を元に戻すと、新たな障害の発生要因になり得るからである。
【００５２】
また、生成部１２は、制御装置２０Ａから切替信号を受信した場合にも、送出する制御命令の宛先を制御装置２０Ａから制御装置２０Ｂに変更する。なお、切替信号とは、制御装置２０Ａから主制御装置１０に向けて、制御命令の宛先を制御装置２０Ａから制御装置２０Ｂに変更する旨の信号である。
【００５３】
また、生成部１２は、被制御機器３０Ａ〜３０Ｃのそれぞれを一意に識別し得る識別子である共通ＩＤを管理しており、制御対象である被制御機器の共通ＩＤを制御命令に含める。
【００５４】
ＨＢ検出部１３は、制御装置２０Ａ及び２０Ｂからのハートビート信号を検出する処理部である。ＨＢ検出部１３は、プロセッサがメモリ等を用いてプログラムを実行することで実現される。
【００５５】
ＨＢ検出部１３は、制御装置２０Ａ及び２０Ｂが定期的に送信するハートビート信号を、通信ＩＦ１１がネットワークＮから受信するか否かを監視する。そして、通信ＩＦ１１がネットワークＮからハートビート信号を受信したことをもって、ハートビート信号を検出する。ＨＢ検出部１３は、ハートビート信号を検出したら、当該ハートビート信号を検出した時刻を示す情報と、当該ハートビート信号の送信元を示す情報とをログ１４に格納する。ログ１４は、メモリ又はストレージなどの記憶装置により実現される。
【００５６】
なお、ＨＢ検出部１３は、ハートビート信号を検出する代わりに、制御装置２０Ａ及び２０Ｂが送信する何らかのパケットを検出するようにしてもよい。このようにすれば、ハートビート信号という専用の信号を用いることなく、制御装置２０Ａ及び２０Ｂの状態を知ることができる利点がある。
【００５７】
次に、制御装置２０Ａについて説明する。
【００５８】
図１に示されるように、制御装置２０Ａは、通信ＩＦ２１及び２２と、制御部２３と、機器検出部２４と、ＨＢ生成部２５とを備える。
【００５９】
通信ＩＦ２１は、ネットワークＮに通信可能に接続する通信インタフェース装置である。通信ＩＦ２１は、ネットワークＮを通じて主制御装置１０の通信ＩＦ１１と接続されている。通信ＩＦ２１の通信規格は、例えば、ＩＥＥＥ８０２．３規格に従う有線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、又は、ＩＥＥＥ８０２．１１ａ、ｂ、ｇ、ｎ等の規格に従う無線ＬＡＮであるがこれらに限られない。
【００６０】
通信ＩＦ２２は、ネットワークＮ１に通信可能に接続する通信インタフェース装置である。通信ＩＦ２２は、ネットワークＮ１に接続される２つのポート２６及び２７を備える。通信ＩＦ２２は、ポート２６及び２７の両方がリンクアップ状態であるときには、ポート２６及び２７のうちの一方を入力用ポートとして機能させ、他方を出力用ポートとして機能させる。また、ポート２６及び２７の一方のみがリンクアップ状態である場合には、その一方のポートを入力用ポート及び出力用ポートとして機能させる。
【００６１】
制御部２３は、主制御装置１０から受信した制御命令に従って、被制御機器３０Ａ〜３０Ｃの動作を制御する処理部である。制御部２３は、プロセッサがメモリ等を用いてプログラムを実行することで実現される。
【００６２】
制御部２３は、具体的には、主制御装置１０から受信した制御計画に従って、被制御機器３０Ａ〜３０Ｃに行わせる具体的な動作を決定する。そして、その動作をさせるための制御データを生成し、生成した制御データを通信ＩＦ２２を介してネットワークＮ１に送出する。制御データには、制御データによって制御される被制御機器のＩＤ（アクティブ系ＩＤともいう）が含められる。ＩＤについては、以降で詳しく説明する。
【００６３】
機器検出部２４は、被制御機器３０Ａ〜３０Ｃの個数を検出する処理部である。機器検出部２４は、プロセッサがメモリ等を用いてプログラムを実行することで実現される。
【００６４】
機器検出部２４は、通信ＩＦ２２によりネットワークを循環してきた制御データを受信した場合、受信した制御データに含まれるカウンタに基づいて、当該制御データが到達した被制御機器の個数を検出する。上記カウンタは、例えば、ＥｔｈｅｒＣＡＴのフレームフォーマットにおけるワーキングカウンタを用いることができるが、これに限定されることなく、受信した制御データに含まれる情報を用いることで当該制御データが到達した被制御機器の個数を算出することができる。そして、機器検出部２４は、制御データが到達した被制御機器の個数が、被制御機器の全数より少ないときに切替信号を主制御装置１０に送信する。制御装置２０Ａと被制御機器３０Ａ〜３０Ｃそれぞれとの通信ができていないので、制御装置２０Ｂに通信をさせるためである。なお、機器検出部２４は、ネットワークＮ１に接続されている被制御機器３０Ａ〜３０Ｃの全数、又は、接続されているべき被制御機器３０Ａ〜３０Ｃの全数を把握しているとする。
【００６５】
ＨＢ生成部２５は、定期的にハートビート信号を生成し、生成したハートビート信号を通信ＩＦ２１を介して主制御装置１０に送信する処理部である。ハートビート信号とは、制御装置２０Ａが正常に動作していることを示す信号であり、所定時間間隔（例えば５秒）おきに生成されて主制御装置１０に送信される。ハートビート信号には、制御装置２０Ａを一意に特定する識別子が含まれ、その他、任意の情報が含まれてもよい。また、制御装置２０Ａから主制御装置１０に他のパケットが定期的に送信される場合には、そのパケットがハートビート信号の役割を兼ねてもよい。ＨＢ生成部２５は、プロセッサがメモリ等を用いてプログラムを実行することで実現される。
【００６６】
なお、制御装置２０Ｂは、制御装置２０Ａと同様の機能を有する。制御装置２０Ｂは、通信ＩＦ２２の接続先がネットワークＮ２である。また、制御装置２０Ｂが送出する制御データには、アクティブ系ＩＤとは異なるスタンバイ系ＩＤが付される。
【００６７】
次に、被制御機器３０Ａについて説明する。
【００６８】
図１に示されているように、被制御機器３０Ａは、通信ＩＦ３１及び３４と、機能部３７とを備える。
【００６９】
通信ＩＦ３１は、ネットワークＮ１に通信可能に接続する通信インタフェース装置である。通信ＩＦ３１は、ネットワークＮ１に接続される２つのポート３２及び３３を備える。通信ＩＦ３１には、アクティブ系ＩＤが割り当てられている。ポート３２及び３３を、入力用ポート又は出力用ポートとして機能させる態様は、制御装置２０Ａの通信ＩＦ２２と同様である。通信ＩＦ３１は、第一インタフェースに相当する。
【００７０】
通信ＩＦ３４は、ネットワークＮ２に通信可能に接続する通信インタフェース装置である。通信ＩＦ３４は、ネットワークＮ２に接続される２つのポート３５及び３６を備える。通信ＩＦ３４には、スタンバイ系ＩＤが割り当てられている。ポート３５及び３６を、入力用ポート又は出力用ポートとして機能させる態様は、制御装置２０Ａの通信ＩＦ２２と同様である。通信ＩＦ３４は、第二インタフェースに相当する。
【００７１】
機能部３７は、被制御機器３０Ａの主な機能を発揮する処理部である。機能部３７は、制御装置２０Ａによって送出された、自装置のＩＤを含む制御データをネットワークＮ１を介して受信した場合には、ネットワークＮ１を介して受信した制御データに従って動作し、また、制御装置２０Ｂによって送出された制御データをネットワークＮ２を介して受信した場合には、ネットワークＮ２を介して受信した制御データに従って動作する。機能部３７は、被制御機器３０ＡがＩ／Ｏ制御する機能などを有する。機能部３７は、プロセッサがメモリ等を用いてプログラムを実行することで実現される。
【００７２】
図２は、本実施の形態に係るＨＢ検出部１３が保有するログ１４を示す説明図である。
【００７３】
図２に示されるように、ログ１４は、１以上のエントリによって構成されている。１つのエントリは、ＨＢ検出部１３が検出した１つのハートビート信号に対応している。各エントリは、当該ハートビート信号の受信時刻を示す情報と、当該ハートビート信号の送信元を示す情報とを含む。
【００７４】
例えば、ログ１４のうち、期間Ｔ１に含まれるログには、制御装置２０Ａ及び２０Ｂのそれぞれから５秒おきにハートビート信号を検出したことが記録されている。よって、期間Ｔ１には、制御装置２０Ａ及び２０Ｂともに動作が通常状態であることが生成部１２によって判定される。
【００７５】
また、ログ１４のうち、期間Ｔ２に含まれるログには、制御装置２０Ｂから５秒おきにハートビート信号を検出したことが記録されており、制御装置２０Ａからのハートビート信号を検出したことが記録されていない。よって、期間Ｔ２には、制御装置２０Ａの動作が異常状態であり、制御装置２０Ｂの動作が通常状態であることが生成部１２によって判定される。
【００７６】
図３は、本実施の形態に係る制御部２３が保持しているＩＤ対応テーブルを示す説明図である。
【００７７】
図３に示されるように、ＩＤ対応テーブルは、共通ＩＤと、アクティブ系ＩＤ及びスタンバイ系ＩＤのそれぞれとを対応付けるものである。
【００７８】
例えば、共通ＩＤの００００１は、アクティブ系ＩＤの００１に対応付けられており、また、スタンバイ系ＩＤの２５７に対応付けられている。
【００７９】
制御装置２０Ａの制御部２３は、通信ＩＦ２１を介して主制御装置１０から制御命令を受信した場合に、受信した制御命令に含まれている共通ＩＤを、当該共通ＩＤに対応付けられたアクティブ系ＩＤに変換して制御データを生成する。
【００８０】
また、制御装置２０Ｂの制御部２３は、通信ＩＦ２１を介して主制御装置１０から制御命令を受信した場合に、受信した制御命令に含まれている共通ＩＤを、当該共通ＩＤに対応付けられたスタンバイ系ＩＤに変換して制御データを生成する。
【００８１】
なお、制御装置２０Ａの制御部２３は、ＩＤ対応テーブルのうち、共通ＩＤとアクティブ系ＩＤとの列を少なくとも保持していればよい。また、制御装置２０Ｂの制御部２３は、ＩＤ対応テーブルのうち、共通ＩＤとスタンバイ系との列を少なくとも保持していればよい。
【００８２】
以上のように構成された通信システム１の動作について説明する。
【００８３】
図４は、本実施の形態に係る通信システム１における主制御装置１０の制御方法を示す第一のフロー図である。
【００８４】
ステップＳ１０１において、主制御装置１０は、制御装置２０Ａに制御データを送出させる制御（つまり第一制御）をする。主制御装置１０は、送出された制御データが被制御機器３０Ａ〜３０Ｃのそれぞれに到達するか否かを判定する。送出された制御データが被制御機器３０Ａ〜３０Ｃのそれぞれに到達すると判定した場合（ステップＳ１０１でＹｅｓ）には、再びステップＳ１０１を実行し、そうでない場合、つまり被制御機器３０Ａ〜３０Ｃの少なくともいずれかに到達しない場合には、ステップＳ１０２に進む。
【００８５】
ステップＳ１０２において、主制御装置１０は、制御装置２０Ｂに制御データを送出させる制御（つまり第二制御）をする。
【００８６】
以降において、通信システム１の動作をより具体的に説明する。
【００８７】
図５は、本実施の形態に係る通信システム１における主制御装置１０の制御方法を示す第二のフロー図である。図５に示されるフロー図は、主制御装置１０が、被制御機器に制御データが到達するか否かに基づいて、制御装置２０Ａに制御命令を送信している状態（下記ステップＳ２０１からステップＳ２０５までに対応）から、制御装置２０Ｂに制御命令を送信している状態（下記ステップＳ２０７からステップＳ２０９までに対応）に変化するときの処理を示す。
【００８８】
ステップＳ２０１において、主制御装置１０の生成部１２は、ログ１４を参照して、制御装置２０Ａが通常状態であるか否かを判定する。制御装置２０Ａが通常状態であると判定した場合（ステップＳ２０１でＹｅｓ）、ステップＳ２０２に進み、そうでない場合（ステップＳ２０１でＮｏ）、ステップＳ２２１に進む。
【００８９】
ステップＳ２０２において、主制御装置１０の生成部１２は、被制御機器３０Ａ〜３０Ｃを制御するための制御命令を生成し、生成した制御命令を制御装置２０Ａに送信する。
【００９０】
ステップＳ２０３において、制御装置２０Ａは、ステップＳ２０２で主制御装置１０が送信した制御命令を受信する。そして、制御装置２０Ａの制御部２３は、受信した制御命令に従って制御データを生成し、生成した制御データをネットワークＮ１に送出する。送出された制御データは、被制御機器３０Ａ〜３０Ｃによって順次に転送されることでネットワークＮ１を循環する。
【００９１】
ステップＳ２０４において、制御装置２０Ａは、ネットワークＮ１を循環してきた制御データを受信する。
【００９２】
ステップＳ２０５において、制御装置２０Ａの機器検出部２４は、ステップＳ２０４で受信した制御データから、当該制御データが到達した被制御機器の個数を示す情報を取得する。そして、機器検出部２４は、取得した、制御データが到達した被制御機器の個数が、被制御機器３０Ａ〜３０Ｃの全数に一致するか否かを判定する。制御データが到達した被制御機器の個数が、被制御機器の全数に一致すると判定した場合（ステップＳ２０５でＹｅｓ）にはステップＳ２０１に進む。一方、制御データが到達した被制御機器の個数が、被制御機器の全数と異なる、より具体的には被制御機器の全数より少ないと判定した場合（ステップＳ２０５でＮｏ）にはステップＳ２０６に進む。
【００９３】
ステップＳ２０６において、制御装置２０Ａの機器検出部２４は、主制御装置１０に切替信号を送信する。
【００９４】
ステップＳ２０７において、主制御装置１０は、新たな制御命令の宛先を制御装置２０Ｂに設定する。これは、ステップＳ２０６で送信された切替信号を受信したこと（ステップＳ２０６）、又は、制御装置２０Ａが通常状態でなく、かつ制御装置２０Ｂが通常状態であると判断されたこと（ステップＳ２２１でＹｅｓ）に基づいてなされる。また、主制御装置１０の生成部１２は、被制御機器３０Ａ〜３０Ｃを制御するための新たな制御命令を生成し、生成した制御命令を制御装置２０Ｂに送信する。
【００９５】
ステップＳ２０８において、制御装置２０Ｂは、ステップＳ２０７で主制御装置１０が送信した制御命令を受信する。そして、制御装置２０Ｂの制御部２３は、受信した制御命令に従って制御データを生成し、生成した制御データをネットワークＮ２に送出する。送出された制御データは、被制御機器３０Ａ〜３０Ｃによって順次に転送されることでネットワークＮ２を循環する。
【００９６】
ステップＳ２０９において、制御装置２０Ｂは、ネットワークＮ２を循環してきた制御データを受信する。ステップＳ２０９を終えたら図５に示される一連の処理を終了する。
【００９７】
ステップＳ２２１において、主制御装置１０の生成部１２は、ログ１４に基づいて、制御装置２０Ｂが通常状態であるか否かを判定する。制御装置２０Ｂが通常状態である場合（ステップＳ２２１でＹｅｓ）にはステップＳ２０７に進み、そうでない場合（ステップＳ２２１でＮｏ）にはステップＳ２２２に進む。
【００９８】
ステップＳ２２２において、主制御装置１０の生成部１２は、所定のエラー処理を行う。ステップＳ２２２における処理を行うことになるのは、制御装置２０Ａ及び２０Ｂがともに通常状態でないとき、つまり、被制御機器３０Ａ〜３０Ｃに制御を行うことができない状態である。所定のエラー処理は、例えば、運用者に通信又は警報器などによって通報すること、又は、記録を残すこと等が含まれる。所定のエラー処理は、なされなくてもよい。ステップＳ２２２の処理を終えたら、図５に示される一連の処理を終了する。
【００９９】
なお、ステップＳ２０９を終えた後、主制御装置１０は、制御装置２０Ｂに制御命令を送信すること（ステップＳ２０７）を繰り返し実行してよく、所定の事象が生じた場合に制御装置２０Ａに制御命令を繰り返し送信する（ステップＳ２０２）ように変化してもよい。所定の事象とは、例えば、所定の時間が経過したこと、運用者により上記のように送信するような設定変更がなされたこと、などがあり得る。
【０１００】
なお、制御装置２０Ａと被制御機器３０Ａとを結ぶリンクＬ１に障害が発生している場合、制御装置２０ＡがネットワークＮ１に制御データを送出する（ステップＳ２０２）ことができない。この場合には、制御装置２０Ａのポート２６がリンクダウン状態になる。そこで、制御装置２０Ａの機器検出部２４は、制御装置２０Ａのポート２６がリンクダウン状態になっていることに基づいて、制御データが到達した被制御機器の個数がゼロであるとしてステップＳ２０５の判定を行うことで、制御データが到達した被制御機器の個数が被制御機器の個数と等しくないと判定してもよい。
【０１０１】
以降において、通信システム１において障害が発生時の制御命令及び制御データの通信経路について具体的に説明する。具体的には、（１）折り返し型のトポロジを有する場合、及び、（２）リング型のトポロジを有する場合について説明する。なお、説明中、図５に示されるステップを括弧書きで示している。
【０１０２】
（１）折り返し型のトポロジを有する場合
図６は、本実施の形態に係る折り返し型のトポロジを有する通信システム１の、障害がない場合の通信経路を示す説明図である。図６において、ネットワークＮ１が折り返し型のトポロジを有している。図６において、制御データの流れを実線及び破線で示しており、同一の経路を反対方向に制御データが流れる場合にはその方向ごとに実線及び破線を使い分けている。以降の図でも同様の表記を用いる。以下、図６の説明は、図５に示された各ステップを参照しながら説明する。
【０１０３】
図６に示される通信システム１では、主制御装置１０は、制御装置２０Ａからのハートビート信号を受信するので、制御装置２０Ａに制御命令を送信する（ステップＳ２０２、Ｓ２０３）。ネットワークＮ１のリンクに障害が発生していないので、制御装置２０ＡがネットワークＮ１に制御データを送信すると、送信された制御データはネットワークＮ１を通じて被制御機器３０Ａ、３０Ｂ及び３０Ｃを経由し、被制御機器３０Ｃで折り返して被制御機器３０Ｂ及び３０Ａを経由して制御装置２０Ａに戻る。制御装置２０ＡがネットワークＮ１から受信した制御データ内のカウンタは、被制御機器３０Ａ、３０Ｂ及び３０Ｃの個数である３であり、被制御機器の全数である３に等しい（ステップＳ２０５でＹｅｓ）。よって、主制御装置１０は、再び制御装置２０Ａに制御命令を送信する。
【０１０４】
図７は、本実施の形態に係る折り返し型のトポロジを有する通信システム１において障害が発生している場合の通信経路を示す説明図である。具体的には、制御装置２０Ａに障害が発生している場合（ケース１）、制御装置２０Ａと被制御機器３０Ａとを結ぶリンクＬ１に障害が発生している場合（ケース２）、及び、被制御機器３０Ａと被制御機器３０Ｂとを結ぶリンクＬ２に障害が発生している場合（ケース３）について説明する。
【０１０５】
ケース１の場合、主制御装置１０は、制御装置２０Ａからのハートビート信号を受信せず、また、制御装置２０Ｂからのハートビート信号を受信する。そのため、主制御装置１０の生成部１２は、制御装置２０Ａが通常状態でないと判定し（ステップＳ２０１でＮｏ）、また、制御装置２０Ｂが通常状態であると判定する（ステップＳ２２１でＹｅｓ）。よって、主制御装置１０は、制御装置２０Ｂに制御命令を送信し、制御装置２０ＢがネットワークＮ２に制御データを送出及び受信する（ステップＳ２０７〜Ｓ２０９）。
【０１０６】
ケース２及びケース３の場合、主制御装置１０は、制御装置２０Ａからのハートビート信号を受信する。そのため、主制御装置１０の生成部１２は、制御装置２０Ａが通常状態であると判定する（ステップＳ２０１でＹｅｓ）。よって、主制御装置１０は、制御装置２０Ａに制御命令を送信し、制御装置２０ＡがネットワークＮ１に制御データを送出する（ステップＳ２０２、Ｓ２０３）。ネットワークＮ１から受信した制御データが到達した被制御機器の個数は、ケース２ではゼロであり、ケース３では被制御機器３０Ａの個数である１であり、どちらのケースでも被制御機器の全数である３と異なる（ステップＳ２０５でＮｏ）。
【０１０７】
よって、主制御装置１０は、制御装置２０Ｂに制御命令を送信し、制御装置２０ＢがネットワークＮ２に制御データを送出及び受信する（ステップＳ２０７〜Ｓ２０９）。
【０１０８】
（２）リング型のトポロジを有する場合
図８は、本実施の形態に係るリング型のトポロジを有する通信システム１の、障害がない場合の通信経路を示す説明図である。図８において、ネットワークＮ１がリング型のトポロジを有するネットワークである。図８に示されるネットワークＮ１は、図１又は図６等に示されたネットワークＮ１に対して、さらに、被制御機器３０Ｃのポート３３と制御装置２０Ａのポート２７とを接続するリンクＬ４が追加されたものである。
【０１０９】
図８に示される通信システム１では、主制御装置１０は、制御装置２０Ａからのハートビート信号を受信するので、制御装置２０Ａに制御命令を送信する（ステップＳ２０２、Ｓ２０３）。ネットワークＮ１のリンクに障害が発生していないので、制御装置２０ＡがネットワークＮ１に制御データを送信すると、送信された制御データはネットワークＮ１を通じて被制御機器３０Ａ、３０Ｂ及び３０Ｃを経由して制御装置２０Ａに戻る。制御装置２０ＡがネットワークＮ１から受信した制御データ内のカウンタは、被制御機器３０Ａ、３０Ｂ及び３０Ｃの個数である３であり、被制御機器の全数である３に等しい（ステップＳ２０５でＹｅｓ）。よって、主制御装置１０は、再び制御装置２０Ａに制御命令を送信する。
【０１１０】
図９は、本実施の形態に係るリング型のトポロジを有する通信システム１において障害が発生している場合の通信経路を示す第一の説明図である。具体的には、制御装置２０Ａと被制御機器３０Ａとを結ぶリンクＬ１に障害が発生している場合について説明する。
【０１１１】
主制御装置１０は、制御装置２０Ａからのハートビート信号を受信する。そのため、主制御装置１０の生成部１２は、制御装置２０Ａが通常状態であると判定する（ステップＳ２０１でＹｅｓ）。よって、主制御装置１０は、制御装置２０Ａに制御命令を送信し、制御装置２０Ａが通信ＩＦ２１によりネットワークＮ１に制御データを送出する（ステップＳ２０２、Ｓ２０３）。ここで、ポート２６が接続されているリンクＬ１に障害が発生しているときには、制御装置２０Ａは、ポート２７によりネットワークＮ１に制御データを送出する。ネットワークＮ１から受信した制御データ内のカウンタは、被制御機器３０Ａ、３０Ｂ及び３０Ｃの個数である３であり、被制御機器の全数である３に等しい（ステップＳ２０５でＹｅｓ）。よって、主制御装置１０は、再び制御装置２０Ａに制御命令を送信する。
【０１１２】
図１０は、本実施の形態に係るリング型のトポロジを有する通信システム１の、障害が発生している場合の通信経路を示す第二の説明図である。具体的には、被制御機器３０Ａと被制御機器３０Ｂとを結ぶリンクＬ２に障害が発生している場合について説明する。
【０１１３】
主制御装置１０は、制御装置２０Ａからのハートビート信号を受信する。そのため、主制御装置１０の生成部１２は、制御装置２０Ａが通常状態であると判定する（ステップＳ２０１でＹｅｓ）。よって、主制御装置１０は、制御装置２０Ａに制御命令を送信し、制御装置２０Ａがポート２６によりネットワークＮ１に制御データを送出する（ステップＳ２０２、Ｓ２０３）。ここで、リンクＬ２に障害が発生しているとき、制御装置２０Ａの通信ＩＦ２１の制御によって、ポート２６とポート２７とはそれぞれ折り返し型のトポロジとして、リンクＬ１、Ｌ２、Ｌ３、Ｌ４がひとつながりのネットワークとして認識される。そして、機器検出部２４は、ネットワークＮ１から受信した制御データが到達した被制御機器の個数について、ポート２６から１を検出し、ポート２７から２を検出して、ネットワークＮ１から受信した制御データが到達した被制御機器の個数は全部で３と判断し、主制御装置１０が制御装置２０Ａに制御命令を送信した被制御機器の全数である３と一致する（ステップＳ２０５でＹｅｓ）。よって、主制御装置１０は、再び制御装置２０Ａに制御命令を送信する。
【０１１４】
図１１は、本実施の形態に係るリング型のトポロジを有する通信システム１において障害が発生している場合の通信経路を示す説明図である。具体的には、制御装置２０Ａに障害が発生している場合（ケース１）、及び、被制御機器３０Ａと被制御機器３０Ｂとを結ぶリンクＬ２並びに被制御機器３０Ｂと被制御機器３０Ｃとを結ぶリンクＬ３に障害が発生している場合（ケース２）について説明する。
【０１１５】
ケース１の場合、主制御装置１０は、制御装置２０Ａからのハートビート信号を受信せず、また、制御装置２０Ｂからのハートビート信号を受信する。この場合、上記で説明した図７におけるケース１の場合と同じ処理がなされる。その結果、主制御装置１０は、制御装置２０Ｂに制御命令を送信し、制御装置２０ＢがネットワークＮ２に制御データを送出及び受信する（ステップＳ２０７〜Ｓ２０９）。
【０１１６】
ケース２の場合、主制御装置１０は、制御装置２０Ａからのハートビート信号を受信する。そのため、主制御装置１０の生成部１２は、制御装置２０Ａが通常状態であると判定する（ステップＳ２０１でＹｅｓ）。よって、主制御装置１０は、制御装置２０Ａに制御命令を送信し、制御装置２０ＡがネットワークＮ１に制御データを送出する（ステップＳ２０２、Ｓ２０３）。ネットワークＮ１は、図９に示した場合と同様に、リンクＬ１、Ｌ２、Ｌ３、Ｌ４がひとつながりのネットワークとして認識され、ネットワークＮ１から受信した制御データが到達した被制御機器（被制御機器３０Ａ及び３０Ｃ）の個数が２であり、被制御機器の全数である３と異なる（ステップＳ２０５でＮｏ）。
【０１１７】
よって、主制御装置１０は、制御装置２０Ｂに制御命令を送信し、制御装置２０ＢがネットワークＮ２に制御データを送出及び受信する（ステップＳ２０７〜Ｓ２０９）。
【０１１８】
以上のように、本実施の形態に示される通信システム１は、第一ネットワークが折り返し型のトポロジを有する場合には、アクティブ制御装置の障害、又は、第一ネットワーク上の１箇所の障害が発生した場合でも、制御装置と複数の被制御機器との通信を維持できる。また、通信システムは、第一ネットワークがリング型のトポロジを有する場合には、アクティブ制御装置の障害、又は、第一ネットワーク上の２箇所以上の障害が発生した場合でも、制御装置と複数の被制御機器との通信を維持できる。ここで、単に制御装置という場合、アクティブ制御装置とスタンバイ制御装置との少なくとも一方を意味する。このように、通信システムは、より障害耐性を高めたリング方式のネットワークを構成することができる。
【０１１９】
また、通信システムは、第一ネットワークを循環する制御データ内に被制御機器によって記録される、当該制御データが到達した被制御機器の個数を示す情報に基づいて、第一制御データがすべての被制御機器に到達したか否かを容易に判定し得る。よって、通信システムは、より障害耐性を高めたリング方式のネットワークを、一層容易に構成することができる。
【０１２０】
また、通信システムは、アクティブ制御装置から受信する通信パケットを受信するか否かに基づいてアクティブ制御装置が正常に動作しているか否かを容易に判定し得る。よって、通信システムは、より障害耐性を高めたリング方式のネットワークを、一層容易に構成することができる。
【０１２１】
また、通信システムは、アクティブ制御装置により被制御機器と通信する状態からスタンバイ制御装置により被制御装置と通信する状態に切り替えた後に、アクティブ制御装置からの通信パケットを受信するか否かに基づいて、自動的に、アクティブ制御装置により被制御機器と通信する状態に戻すことができる。よって、通信システムは、障害が復旧した際の運用をより容易にすることができる。
【０１２２】
また、通信システムは、リング型のトポロジを有する第一ネットワークにより、アクティブ制御装置の障害、又は、第一ネットワーク上の２箇所以上の障害が発生した場合でも、制御装置と複数の被制御機器との通信を維持できる。
【０１２３】
（実施の形態２）
本実施の形態において、より障害耐性を高めたリング方式のネットワークを構成する通信システムなどについて、実施の形態１における場合より被制御機器の個数が多い場合にも用いられ得る制御方法について説明する。
【０１２４】
実施の形態１の通信システム１では、被制御機器の個数が多いほど制御装置２０Ａ又は２０Ｂの処理負荷が高くなる。そこで、制御装置２０Ａ又は２０Ｂの処理負荷を低減するとともに、より多くの被制御機器を接続可能である通信システム２を説明する。
【０１２５】
例えば、ＥｔｈｅｒＣＡＴの通信規格では、１つのネットワークに６５５３５個の被制御機器が接続されることが許容される。しかしながら、制御装置２０Ａの処理負荷を考慮すると、実質的に接続され得る被制御機器の個数は、通信規格で許容される個数より少なく例えば２５５個程度になる。本実施の形態の通信システム２によれば、通信システム１を単に２個備える場合に比べて簡素な構成によって、実質的に接続され得る被制御機器の個数を増やし例えば５１２個程度とすることができる。
【０１２６】
図１２は、本実施の形態に係る折り返し型のトポロジを有する通信システム２の、障害がない場合の通信経路を示す説明図である。図１３は、本実施の形態に係るリング型のトポロジを有する通信システム２の、障害がない場合の通信経路を示す説明図である。
【０１２７】
図１２及び図１３に示されるように、通信システム２は、主制御装置１０と、制御装置２０Ａ、２０Ｂ及び２０Ｃと、ネットワークＮ１、Ｎ２、Ｎ３及びＮ４と、被制御機器３０Ａ、３０Ｂ、３０Ｃ、３０Ｄ、３０Ｅ及び３０Ｆとを備える。
【０１２８】
ここで、制御装置２０Ａが第一アクティブ装置に相当し、制御装置２０Ｃが第二アクティブ装置に相当し、ネットワークＮ１、Ｎ２、Ｎ３及びＮ４がそれぞれ第一、第二、第三及び第四ネットワークに相当し、被制御機器３０Ａ、３０Ｂ及び３０Ｃが複数の第一被制御機器に相当し、被制御機器３０Ｄ、３０Ｅ及び３０Ｆが複数の第二被制御機器に相当する。
【０１２９】
ここで、主制御装置１０と、制御装置２０Ａと、被制御機器３０Ａ、３０Ｂ及び３０Ｃと、ネットワークＮ１及びＮ２については、実施の形態１におけるものと同じであるので詳細な説明を省略する。
【０１３０】
制御装置２０Ｃは、主制御装置１０から受信した制御命令に従って被制御機器３０Ｄ〜３０Ｆを制御するコンピュータである。制御装置２０Ｃは、ネットワークＮ３によって被制御機器３０Ｄ〜３０Ｆのそれぞれと接続されている。制御装置２０Ｃは、制御装置２０Ａと同様の機能を有する制御装置である。制御装置２０Ｃは、ネットワークＮ３によって被制御機器３０Ｄ〜３０Ｆのそれぞれと接続されており、制御装置２０Ａと同様に生成した制御データをネットワークＮ３に送出する。
【０１３１】
制御装置２０Ｂは、実施の形態１における制御装置２０Ｂの機能に加えて、ポート２７によりネットワークＮ４に接続されている。そして、制御装置２０Ｂは、ネットワークＮ４を通じて被制御機器３０Ｄ〜３０Ｆのそれぞれと接続されており、制御装置２０Ａと同様に生成した制御データをネットワークＮ４に送出する。
【０１３２】
ネットワークＮ３は、制御装置２０Ｃ及び被制御機器３０Ｄ〜３０Ｆのそれぞれが接続されるネットワークであり、ネットワークＮ１と同様の機能を有する。ネットワークＮ３は、制御装置２０Ｃを一端とする折り返し型のトポロジ（図１２）と、制御装置２０Ｃをリングの一部とするリング型のトポロジ（図１３）とを選択的に採り得る。
【０１３３】
ネットワークＮ４は、制御装置２０Ｂのポート２７及び被制御機器３０Ｄ〜３０Ｆのそれぞれが接続されるネットワークであり、ネットワークＮ３と同様の機能を有する。
【０１３４】
主制御装置１０は、制御装置２０Ａ〜２０Ｃ、及び、被制御機器３０Ａ〜３０Ｆを制御する。制御装置２０Ａと、制御装置２０Ｂのポート２６と、被制御機器３０Ａ〜３０Ｃとに対する制御は、実施の形態１における主制御装置１０と同様である。また、主制御装置１０は、上記の制御装置２０Ａ等に対する制御とは独立に、この制御と同じように、制御装置２０Ｃと、制御装置２０Ｂのポート２７と、被制御機器３０Ｄ〜３０Ｆとを制御する。すなわち、主制御装置１０は、制御装置２０Ｃに制御データを送出させる制御をし、さらに、送出された制御データが被制御機器３０Ｄ〜３０Ｆの少なくともいずれかに到達しない場合に、制御装置２０Ｂのポート２７に制御データを送出させる制御をする。なお、制御装置２０Ｃに送出させる制御データを第三制御データともいい、制御装置２０Ｃに制御データを送出させる制御を第三制御ともいう。また、制御装置２０Ｂのポート２７に送出させる制御データを第四制御データともいい、制御装置２０Ｂのポート２７に制御データを送出させる制御を第四制御ともいう。
【０１３５】
その結果、通信システム２は、折り返し型のトポロジを有する場合には、制御装置２０Ｃの障害、又は、ネットワークＮ３上の１箇所の障害が発生した場合でも、被制御機器３０Ｄ〜３０Ｆの制御を維持できる。つまり、制御装置２０Ｂのポート２７から制御データがネットワークＮ４に送出されることにより、被制御機器３０Ｄ〜３０Ｆの制御を維持できる。
【０１３６】
また、通信システム２は、リング型のトポロジを有する場合には、制御装置２０Ｃの障害、又は、ネットワークＮ３上の２箇所以上の障害が発生した場合でも、制御装置と被制御機器３０Ｄ〜３０Ｆとの通信を維持できる。つまり、制御装置２０Ｂのポート２７から制御データがネットワークＮ４に送出されることにより、被制御機器３０Ｄ〜３０Ｆの制御を維持できる。
【０１３７】
このように、制御装置と被制御機器３０Ａ〜３０Ｃとの通信に関しては、制御装置２０Ａ及びネットワークＮ１がアクティブ系として機能し、制御装置２０Ｂのポート２６及びネットワークＮ２がスタンバイ系として機能する。また、制御装置と被制御機器３０Ｄ〜３０Ｆとの通信に関しては、制御装置２０Ｃ及びネットワークＮ３がアクティブ系として機能し、制御装置２０Ｂのポート２７及びネットワークＮ４がスタンバイ系として機能する。ここで、制御装置２０Ｂが、制御装置と被制御機器３０Ａ〜３０Ｃとの通信、及び、制御装置と被制御機器３０Ｄ〜３０Ｆとの通信の両方のスタンバイ系の役割に兼用されている。仮にこのような役割の兼用がなければ、スタンバイ系の制御装置を２個備える必要がある。よって、本実施の形態の通信システム２は、実施の形態１における通信システム１を単に２個備える場合に比べて簡素な構成になっている。
【０１３８】
そして、主制御装置１０から制御装置２０Ａを経由して被制御機器３０Ａ〜３０Ｃを制御するのと同時並行的に、主制御装置１０から制御装置２０Ｃを経由して被制御機器３０Ｄ〜３０Ｆを制御することができる。その結果、実施の形態１における通信システム１より多い被制御機器との通信を行うことができる。
【０１３９】
以上のように、本実施の形態の通信システムは、制御装置から複数の第一被制御機器への通信と、制御装置から複数の第二被制御機器への通信とを、別個のネットワークを通じて行う。これにより、上記の被制御機器と単一のネットワークを通じて通信する場合に比べて多くの被制御機器との通信を行うことができ、また、制御装置の処理負荷を低減することができる。また、複数の第一被制御機器に用いるスタンバイ制御装置が、複数の第二被制御機器の制御にも用いられる。つまり、スタンバイ制御装置が、複数の第一被制御機器との通信、および、複数の第二被制御機器との通信に兼用される。よって、スタンバイ装置の個数を少なくし、コスト削減の効果を奏する。
【０１４０】
以上、本発明の通信システムについて、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
【産業上の利用可能性】
【０１４１】
本発明は、より障害耐性を高めたリング方式のネットワークを構成する通信システムに適用され得る。より具体的には、産業機器を制御する通信システム等に適用され得る。
【符号の説明】
【０１４２】
１、２    通信システム
１０    主制御装置
１１、２１、２２、３１、３４    通信ＩＦ
１２    生成部
１３    ＨＢ検出部
１４    ログ
２０Ａ、２０Ｂ、２０Ｃ    制御装置
２３    制御部
２４    機器検出部
２５    ＨＢ生成部
２６、２７、３２、３３、３５、３６    ポート
３０Ａ、３０Ｂ、３０Ｃ、３０Ｄ、３０Ｅ、３０Ｆ    被制御機器
３７    機能部
Ｌ１、Ｌ２、Ｌ３、Ｌ４    リンク
Ｎ、Ｎ１、Ｎ２、Ｎ３、Ｎ４    ネットワーク
Ｔ１、Ｔ２    期間
【図１】
2019087849.tif 000003
【図２】
2019087849.tif 000004
【図３】
2019087849.tif 000005
【図４】
2019087849.tif 000006
【図５】
2019087849.tif 000007
【図６】
2019087849.tif 000008
【図７】
2019087849.tif 000009
【図８】
2019087849.tif 000010
【図９】
2019087849.tif 000011
【図１０】
2019087849.tif 000012
【図１１】
2019087849.tif 000013
【図１２】
2019087849.tif 000014
【図１３】
2019087849.tif 000015
【国際調査報告】
2019087849.tif 000016
2019087849.tif 000017
2019087849.tif 000018