(57)【要約】【課題】制御機器の情報化を実現するためには、制御系通信と情報系通信とを最適化された状態で融合することが要望されている。【解決手段】通信システムは、製造装置または生産設備の制御に用いる第１のデータを予め定められた周期毎に伝送する第１の伝送手段と、指定された時間内に送信先へ到着させる必要のある第２のデータを、第１のデータが伝送されていない期間に伝送する第２の伝送手段とを含む。第２の伝送手段は、第２のデータを指定された時間内にネットワークの第１の伝送経路で送信先へ到着させることができるか否かを判断する判断手段と、第２のデータを指定された時間内に送信先へ到着させることができないと判断されると、当該第２のデータの少なくとも一部をネットワークの第１の伝送経路とは異なる第２の伝送経路で送信先へ送信するように変更する経路変更手段とを含む。【選択図】図９
2018129707.tif 000002
【特許請求の範囲】
【請求項１】
冗長化されたネットワークに複数の通信装置が接続された通信システムであって、
製造装置または生産設備の制御に用いる第１のデータを予め定められた周期毎に伝送する第１の伝送手段と、
指定された時間内に送信先へ到着させる必要のある第２のデータを、前記第１のデータが伝送されていない期間に伝送する第２の伝送手段とを備え、
前記第２の伝送手段は、
前記第２のデータを指定された時間内に前記ネットワークの第１の伝送経路で送信先へ到着させることができるか否かを判断する判断手段と、
前記第２のデータを指定された時間内に前記送信先へ到着させることができないと判断されると、当該第２のデータの少なくとも一部を前記ネットワークの前記第１の伝送経路とは異なる第２の伝送経路で前記送信先へ送信するように変更する経路変更手段とを含む、通信システム。
【請求項２】
前記判断手段は、前記ネットワーク上の前記第１のデータの伝送に係る回線利用率に基づいて、前記第２のデータを指定された時間内に前記送信先へ到着させることができるか否かを判断する、請求項１に記載の通信システム。
【請求項３】
前記判断手段は、前記第１の伝送経路上に存在する送信元の通信装置とは異なる通信装置から前記回線利用率を取得する、請求項２に記載の通信システム。
【請求項４】
前記経路変更手段は、前記ネットワークについての予め定められた規則に従って、前記第２の伝送経路を選択する、請求項１〜３のいずれか１項に記載の通信システム。
【請求項５】
前記第２の伝送手段は、伝送経路の切替え履歴に基づいて、前記ネットワークについての予め定められた規則を変更する規則変更手段をさらに含む、請求項４に記載の通信システム。
【請求項６】
前記第１のデータおよび前記第２のデータとは異なる第３のデータを伝送する第３の伝送手段をさらに備える、請求項１〜５のいずれか１項に記載の通信システム。
【請求項７】
前記第３の伝送手段は、前記第３のデータを前記ネットワークの第３の伝送経路で送信先へ伝送する際に、前記ネットワーク上の前記第３のデータの伝送に係る回線利用率に基づいて、前記第３のデータを前記ネットワークの前記第３の伝送経路とは異なる第４の伝送経路で前記送信先へ送信するように変更する、請求項６に記載の通信システム。
【請求項８】
前記経路変更手段は、前記第２のデータを前記第１の伝送経路および前記第２の伝送経路の両方で前記送信先へ送信する、請求項１に記載の通信システム。
【請求項９】
冗長化されたネットワークに接続するためのインターフェイスと、
製造装置または生産設備の制御に用いる第１のデータを予め定められた周期毎に伝送する第１の伝送手段と、
指定された時間内に送信先へ到着させる必要のある第２のデータを、前記第１のデータが伝送されていない期間に伝送する第２の伝送手段とを備え、
前記第２の伝送手段は、
前記第２のデータを指定された時間内に前記ネットワークの第１の伝送経路で送信先へ到着させることができるか否かを判断する判断手段と、
前記第２のデータを指定された時間内に前記送信先へ到着させることができないと判断されると、当該第２のデータの少なくとも一部を前記ネットワークの前記第１の伝送経路とは異なる第２の伝送経路で前記送信先へ送信するように変更する経路変更手段とを含む、通信装置。
【請求項１０】
複数の通信装置が接続された冗長化されたネットワークでの通信方法であって、
製造装置または生産設備の制御に用いる第１のデータを予め定められた周期毎に伝送する第１の伝送ステップと、
指定された時間内に送信先へ到着させる必要のある第２のデータを、前記第１のデータが伝送されていない期間に伝送する第２の伝送ステップとを備え、
前記第２の伝送ステップは、
前記第２のデータを指定された時間内に前記ネットワークの第１の伝送経路で送信先へ到着させることができるか否かを判断する判断ステップと、
前記第２のデータを指定された時間内に前記送信先へ到着させることができないと判断されると、当該第２のデータの少なくとも一部を前記ネットワークの前記第１の伝送経路とは異なる第２の伝送経路で前記送信先へ送信するように変更する経路変更ステップとを含む、通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、冗長化されたネットワークに複数の通信装置が接続された通信システム、当該通信システムに向けられた通信装置、および、当該通信システムに向けられた通信方法に関する。
【背景技術】
【０００２】
近年の情報通信技術（ＩＣＴ：Information and Communication Technology）の進歩に伴って、生産ラインについても、現場の製造機器から上位の管理装置までを一体のネットワーク化するようなシステムが実現されつつある。
【０００３】
このようなネットワーク化されたシステムにおいて伝送されるデータには、その用途、目的などに応じた要件が課される。例えば、製造装置や生産設備などの制御に用いるデータ（制御系データ）は、そのデータサイズはそれほど大きくないものの、リアルタイム性が要求される。これに対して、上位の管理装置などが扱うデータ（情報系データ）は、リアルタイム性などは必要ないものの、比較的大きいサイズのデータを伝送しなければならない。制御系データおよび情報系データの両方がネットワーク上に存在することに関して、以下のような先行技術文献が存在する。
【０００４】
特開２０１３−１５７７５２号公報（特許文献１）は、ＰＬＣとスレーブ装置の間を接続する制御系ネットワーク（フィールドネットワーク）と、機器同士を内部バスでダイレクトに接続するＢａｃｋｐｌａｎｅＢｕｓと、ＰＬＣと上位のコンピュータの間を接続する情報系ネットワークといった、プロトコルの異なる複数種類のネットワークが混在するネットワークシステムを開示する。
【０００５】
特開２０１５−０２２４１６号公報（特許文献２）は、フィールド機器がディジタル化およびインテリジェント化されると、フィールド機器からは基本的な機能によって得られる情報とともに、多様な情報が大量に得られることになるといった課題を提示する。このような課題に対して、特許文献２に開示されたフィールド機器は、第１通信経路を介して制御装置と通信を行う通信部を備えるフィールド機器において、当該第１通信経路とは異なる第２通信経路を介して他のフィールド機器と通信を行う局所通信部を有している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−１５７７５２号公報
【特許文献２】特開２０１５−０２２４１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したような制御系データは、多くの場合、厳密なリアルタイム性が要求される一方で、情報系データは、比較的大きな伝送容量（通信帯域）が要求される。これらの互いに相反する要件を同一のネットワーク上で満足させることは容易ではない。
【０００８】
上述の特許文献１は、同一のフレーム内にプロトコルの異なる複数のデータを組み入れる構成を開示するが、この方法では、データの特性（例えば、上述したような制御系データおよび情報系データの区分など）毎に要求される伝送速度または伝送容量の要求に応えることができず、制御系データおよび情報系データがいずれも共通の伝送速度または伝送容量で信号伝送されることになる。
【０００９】
また、特許文献２は、各フィールド機器が複数の通信経路（有線および無線）を利用可能な構成を開示するが、複数の通信経路をサポートするような構成は処理が複雑化する。例えば、ある機器から別の機器に対して無線で通信しつつ、当該別の機器からマスターに対して有線で通信する必要があり、無線および有線のいずれの通信も担当する機器における処理負荷も大きくなる。
【００１０】
以上のように、制御系データおよび情報系データを同一のネットワーク上でそれぞれの要求を満たしつつ伝送させることは容易ではない。つまり、制御機器の情報化を実現するためには、制御系通信と情報系通信とを最適化された状態で融合することが要望されている。
【課題を解決するための手段】
【００１１】
本発明のある実施の形態に従えば、冗長化されたネットワークに複数の通信装置が接続された通信システムが提供される。通信システムは、製造装置または生産設備の制御に用いる第１のデータを予め定められた周期毎に伝送する第１の伝送手段と、指定された時間内に送信先へ到着させる必要のある第２のデータを、第１のデータが伝送されていない期間に伝送する第２の伝送手段とを含む。第２の伝送手段は、第２のデータを指定された時間内にネットワークの第１の伝送経路で送信先へ到着させることができるか否かを判断する判断手段と、第２のデータを指定された時間内に送信先へ到着させることができないと判断されると、当該第２のデータの少なくとも一部をネットワークの第１の伝送経路とは異なる第２の伝送経路で送信先へ送信するように変更する経路変更手段とを含む。
【００１２】
好ましくは、判断手段は、ネットワーク上の第１のデータの伝送に係る回線利用率に基づいて、第２のデータを指定された時間内に送信先へ到着させることができるか否かを判断する。
【００１３】
好ましくは、判断手段は、第１の伝送経路上に存在する送信元の通信装置とは異なる通信装置から回線利用率を取得する。
【００１４】
好ましくは、経路変更手段は、ネットワークについての予め定められた規則に従って、第２の伝送経路を選択する。
【００１５】
好ましくは、第２の伝送手段は、伝送経路の切替え履歴に基づいて、ネットワークについての予め定められた規則を変更する規則変更手段をさらに含む。
【００１６】
好ましくは、通信システムは、第１のデータおよび第２のデータとは異なる第３のデータを伝送する第３の伝送手段をさらに含む。
【００１７】
好ましくは、第３の伝送手段は、第３のデータをネットワークの第３の伝送経路で送信先へ伝送する際に、ネットワーク上の第３のデータの伝送に係る回線利用率に基づいて、第３のデータをネットワークの第３の伝送経路とは異なる第４の伝送経路で送信先へ送信するように変更する。
【００１８】
好ましくは、経路変更手段は、第２のデータを第１の伝送経路および第２の伝送経路の両方で送信先へ送信する。
【００１９】
本発明の別の実施の形態に従う通信装置は、冗長化されたネットワークに接続するためのインターフェイスと、製造装置または生産設備の制御に用いる第１のデータを予め定められた周期毎に伝送する第１の伝送手段と、指定された時間内に送信先へ到着させる必要のある第２のデータを、第１のデータが伝送されていない期間に伝送する第２の伝送手段とを含む。第２の伝送手段は、第２のデータを指定された時間内にネットワークの第１の伝送経路で送信先へ到着させることができるか否かを判断する判断手段と、第２のデータを指定された時間内に送信先へ到着させることができないと判断されると、当該第２のデータの少なくとも一部をネットワークの第１の伝送経路とは異なる第２の伝送経路で送信先へ送信するように変更する経路変更手段とを含む。
【００２０】
本発明の別の実施の形態に従えば、複数の通信装置が接続された冗長化されたネットワークでの通信方法が提供される。通信方法は、製造装置または生産設備の制御に用いる第１のデータを予め定められた周期毎に伝送する第１の伝送ステップと、指定された時間内に送信先へ到着させる必要のある第２のデータを、第１のデータが伝送されていない期間に伝送する第２の伝送ステップとを含む。第２の伝送ステップは、第２のデータを指定された時間内にネットワークの第１の伝送経路で送信先へ到着させることができるか否かを判断する判断ステップと、第２のデータを指定された時間内に送信先へ到着させることができないと判断されると、当該第２のデータの少なくとも一部をネットワークの第１の伝送経路とは異なる第２の伝送経路で送信先へ送信するように変更する経路変更ステップとを含む。
【発明の効果】
【００２１】
本発明のある実施の形態によれば、制御系データおよび情報系データを同一のネットワーク上でそれぞれの要求を満たしつつ伝送させることができる。
【図面の簡単な説明】
【００２２】
【図１】本実施の形態に従う通信システムの全体構成の一例を示す模式図である。
【図２】図１の通信システムにおいて伝送されるデータ種別を示す図である。
【図３】本実施の形態に従う通信方法における通信帯域の割り当ての一例を示す図である。
【図４】本実施の形態に従う制御装置を含むネットワーク構成の一例を示す模式図である。
【図５】本実施の形態に従う通信装置を含む制御装置のハードウェア構成の一例を示す模式図である。
【図６】本実施の形態に従う通信装置を含むデバイスのハードウェア構成の一例を示す模式図である。
【図７】本実施の形態に従う通信処理を実現するための制御装置のソフトウェア構成の一例を示す模式図である。
【図８】冗長経路を有していないネットワーク構成におけるデータ伝送の一状態を説明する図である。
【図９】本実施の形態に従う通信方法における伝送経路の動的選択の一形態を説明する図である。
【図１０】冗長経路を有していないネットワーク構成におけるデータ伝送の別の一状態を説明する図である。
【図１１】本実施の形態に従う通信方法における伝送経路の動的選択の別の一形態を説明する図である。
【図１２】本実施の形態に従う通信装置が保持する経路設定テーブルの一例を示す模式図である。
【図１３】本実施の形態に従う通信処理のマスターとして機能する通信装置での処理手順を示すフローチャートである。
【図１４】本実施の形態に従う通信処理のスレーブとして機能する通信装置での処理手順を示すフローチャートである。
【図１５】本実施の形態に従う通信方法においてマスターとして機能する通信装置におけるデータの送信タイミングの調整を説明するための模式図である。
【図１６】冗長経路を有していないネットワーク構成におけるデータ伝送のさらに別の一状態を説明する図である。
【図１７】本実施の形態に従う通信方法における伝送経路の動的選択のさらに別の一形態を説明する図である。
【図１８】本実施の形態に従う通信処理のマスターとして機能する通信装置での別の処理手順を示すフローチャートである。
【発明を実施するための形態】
【００２３】
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
【００２４】
＜Ａ．通信システムの全体構成＞
まず、本実施の形態に従う通信処理を採用した通信システムの全体構成について説明する。図１は、本実施の形態に従う通信システム１の全体構成の一例を示す模式図である。
【００２５】
図１を参照して、通信システム１では、ネットワークが複数レベルに接続されており、各レベルのネットワークには、それぞれ異なる機能が割り当てられる。具体的には、４つのレベルのネットワーク１１〜１４が設けられている。
【００２６】
ネットワーク１１は、コントロールレベルのネットワークであり、マシン制御機器である制御装置１００と、装置／ライン管理機器である装置／ライン管理装置１９０およびＳＣＡＤＡ（Supervisory Control And Data Acquisition）機能を提供する表示装置１８０とが接続されており、装置間でデータを交換できるリンクが形成される。ネットワーク１１は、コントローラ（制御装置１００）と管理機器（装置／ライン管理装置１９０および表示装置１８０）との間でデータリンクを構築する。
【００２７】
制御装置１００には、センサ、アクチュエータといった各種デバイスが接続される。これらのデバイスは、制御装置１００に装着される入出力ユニットを介して直接接続される場合もあるが、フィールドネットワークを介して接続されることもある。図１に示す構成例においては、制御装置１００では、冗長化されたフィールドネットワーク１１０が構成されており、冗長化されたフィールドネットワーク１１０には、複数のデバイス２００が接続される。複数のデバイス２００は、フィールド信号を取得する入力デバイス、および、制御装置１００からの指示に従ってフィールドに対して何らかのアクションを行う出力デバイスあるいはアクチュエータを含む。したがって、図１に示す通信システム１には、ネットワーク１１〜１４の４つのレベルに加えて、フィールドレベルのフィールドネットワークがさらに追加されることになる。フィールドレベルは、入力およびデバイス制御を主たる機能として提供する。
【００２８】
ネットワーク１２は、管理レベルのネットワークであり、装置／ライン管理装置１９０および表示装置１８０と、製造管理装置３００およびデータベース装置３１０とが接続されており、装置間でデータを交換できるリンクが形成される。ネットワーク１２は、管理情報の遣り取りおよび装置／ラインの情報の伝送を主たる機能として提供する。
【００２９】
ネットワーク１３は、コンピュータレベルのネットワークであり、製造管理装置３００およびデータベース装置３１０と生産計画などを管理する生産管理装置３５０とが接続されており、装置間でデータを交換できるリンクが形成される。ネットワーク１３は、生産管理および情報系のデータの伝送を主たる機能として提供する。
【００３０】
ネットワーク１４は、インターネットなどの外部ネットワークであり、生産管理装置３５０とクラウドやサプライチェーンなどとが接続される。
【００３１】
図１に示す通信システム１において、ネットワーク１２およびそれ以下のレベルは、「ファクトリーネットワーク」とも称され、機器を現実に制御するためのデータ（以下、「制御系データ」と総称することもある）を遣り取りする制御系通信を提供する。一方、ネットワーク１３以上のレベルは、「コーポレートネットワーク」とも称され、生産ライン／工場での生産活動などを監視・管理・制御するためのデータ（以下、「情報系データ」と総称することもある）を遣り取りする情報系通信を提供する。
【００３２】
ネットワーク１１〜１４およびフィールドネットワーク１１０には、このような要求される特性の違いに応じたプロトコルおよびフレームワークが採用される。例えば、ファクトリーネットワークに属するネットワーク１１および１２のプロトコルとしては、汎用的なＥｔｈｅｒｎｅｔ（登録商標）上に制御用プロトコルを実装した産業用オープンネットワークであるＥｔｈｅｒＮｅｔ／ＩＰ（登録商標）を用いてもよい。また、フィールドネットワーク１１０のプロトコルとしては、マシンコントロール用ネットワークの一例であるＥｔｈｅｒＣＡＴ（登録商標）を採用してもよい。
【００３３】
このようなマシンコントロールに適したネットワーク技術を採用することで、機器間の伝送に要する時間が保証されたリアルタイム性を提供できる。但し、１回の通信周期で伝送可能なデータ量には制限がある。
【００３４】
一方、コーポレートネットワークに属するネットワーク１３および１４のプロトコルとしては、接続先の多様性を担保するために、汎用的なＥｔｈｅｒｎｅｔなどが用いられる。汎用的なＥｔｈｅｒｎｅｔを採用することで、リアルタイム性は実現できないものの、送信可能なデータ量などの制限は存在しない。
【００３５】
＜Ｂ．要求される通信性能＞
図１に示すファクトリーネットワークにおいては、基本的には、上述したような制御系データが周期的に伝送されることになるが、コーポレートネットワークに含まれる製造管理装置３００、データベース装置３１０、生産管理装置３５０などが要求する情報系データも伝送する必要がある。なお、以下の説明においては、ファクトリーネットワークとの対比において、コーポレートネットワークに含まれる装置の全部または一部を「上位管理システム」とも総称する。
【００３６】
さらに、制御系データのような高速なリアルタイム性は要求されないものの、ある程度の到着時刻の保証が必要なデータ（例えば、機器の設定および管理に関するデータ）も存在する。以下では、説明の便宜上、このようなデータを「制御情報系データ」とも称す。
【００３７】
図２は、図１の通信システム１において伝送されるデータ種別を示す図である。図２を参照して、通信システム１においては、主として、（１）制御系データ、（２）制御情報系データ、（３）情報系データ、が伝送される。なお、これらのいずれにも分類されないデータが伝送されることを排除するものではなく、さらに別の種類のデータを伝送するようにしてもよい。
【００３８】
（１）制御系データは、その主旨として、機器を現実に制御するためのデータを含む。すなわち、制御系データは、製造装置または生産設備の制御に用いるデータに相当する。制御系データの一例としては、サーボ指令値、エンコーダ値、センサのＯＮ／ＯＦＦ値などが挙げられる。このような制御系データの通信周期は１０ｍｓｅｃ以下に設定されることが好ましい。そして、この通信周期を確実に保証する必要がある。一方で、ネットワーク上で伝送される制御系データの内容は予め設定されているため、データサイズとしては、固定的で比較的小さい。
【００３９】
（２）制御情報系データは、情報系通信において用いられるデータのうち、制御に必要な情報に分類されるものであり、その主旨として、機器の設定・管理に関するデータを含む。すなわち、制御情報系データは、指定された時間内に送信先へ到着させるのに必要なデータに相当する。制御情報系データの一例としては、センサデバイスに対するしきい値といった各種パラメータの設定、各機器に格納されている異常情報（ログ）の収集、各機器に対する更新用のファームウェアなどが挙げられる。このようなネットワーク上で伝送される制御情報系データの内容は多種多様であるが、基本的には、機器の設定・管理に関するデータであるので、データサイズとしては、数ｋｂｙｔｅ程度が想定される。そのため、制御情報系データの通信周期は１００ｍｓｅｃ未満に設定されることが好ましい。通信周期は比較的長くてもよいが、データの到着時刻は保証される必要がある。なお、到着時間の指定は、ユーザが任意に行ってもよいし、データを生成または要求するアプリケーションもしくは装置が予め定められたルールに従って行ってもよい。
【００４０】
（３）情報系データは、情報系通信において用いられるデータのうち、上位管理システムに必要な情報に分類されるものであり、その主旨として、上位管理システムで利用されるデータを含む。情報系データの一例としては、ある期間に亘るセンサでの収集情報といった統計的データや、何らかの条件で撮像された監視画像（静止画像／動画像）などが挙げられる。このようなネットワーク上で伝送される制御系データの内容は多種多様であり、データサイズとしても多種多様である。典型的には、情報系データのデータサイズは、制御情報系データのデータサイズより大きいことが想定される。また、機器の制御には直接関係しないので、情報系データはベストエフォート形式で伝送されることが想定される。この場合、リアルタイム性（すなわち、指定された時間にデータが到着すること）ではなく、スループットの大きさが重視される。
【００４１】
なお、データ毎に、制御系、制御情報系、情報系のいずれに分類されるのかを一意に決定するようにしてもよいし、同じデータであっても、その用途に応じて、制御系、制御情報系、情報系のいずれに分類されるのかが変化するようにしてもよい。後者の場合には、典型的には、各データが対象となるレイヤでどのように使われるかによって、いずれの種別に分類されるのかが決定されることになる。このような分類は、データ毎に予め設定されていてもよい。
【００４２】
このように、制御系データについては高速高精度の通信が要求され、情報系データについては大容量の通信が要求される。そして、制御情報系データについては、制御系データと情報系データとの間の中間的な特性が要求される。これらのデータは、予め定められた送信周期毎に通信帯域が割り当てられる。このとき、制御系データに対して通信帯域が最優先に割り当てられ、残りの通信帯域が制御情報系データおよび情報系データに割り当てられる。
【００４３】
本明細書において、「通信帯域」とは、ネットワーク上でデータを伝送するためのリソースを意味し、時間分割方式でデータを伝送する場合には、データを伝送するために割り当てられる時間幅を意味する。あるいは、周波数分割方式または符号分割方式でデータを伝送する場合には、データを伝送するために割り当てられる周波数または符号系列（論理的なチャネル）を意味し得る。以下の説明においては、便宜上、時間分割方式でデータを伝送する場合を想定し、「通信帯域」がデータを伝送するための時間幅である例について説明する。
【００４４】
図３は、本実施の形態に従う通信方法における通信帯域の割り当ての一例を示す図である。図３を参照して、本実施の形態に従う通信処理においては、予め定められたシステム周期Ｔｓに従って、制御系データ、制御情報系データ、情報系データの送受信（それぞれ、制御系通信、制御情報系通信、情報系通信と記す。）がスケジューリングされる。
【００４５】
まず、制御系データに対して通信帯域が優先的に割り当てられる。図３（Ａ）に示すように、システム周期Ｔｓのうち、制御系通信に要する処理時間ｔ１が先に割り当てられる。
【００４６】
そして、図３（Ｂ）に示すように、必要に応じて、制御系通信を行っていない空帯域で制御情報系通信が行われる。すなわち、システム周期Ｔｓのうち、制御系通信に要する処理時間ｔ１を除いた残り時間に対して、制御情報系通信に要する処理時間ｔ２が割り当てられる。
【００４７】
制御情報系通信は、すべてのシステム周期で発生するものではないので、図３（Ｃ）に示すように、システム周期Ｔｓのうち、制御系通信に要する処理時間ｔ１を除いた残り時間に対して、情報系通信に要する処理時間ｔ３が割り当てられることもある。すなわち、情報系通信は、制御系通信および制御情報系通信のいずれもが存在しない通信帯域で行われる。
【００４８】
図３（Ｄ）に示すように、システム周期Ｔｓに対して、制御系通信に要する処理時間ｔ１、制御情報系通信に要する処理時間ｔ２、および、情報系通信に要する処理時間ｔ３のすべてが割り当てられてもよい。
【００４９】
図３（Ａ）〜図３（Ｄ）に示すように、本実施の形態に従う通信システムおよび当該通信システムに接続される通信装置の各々は、第１の伝送機能として、製造装置または生産設備の制御に用いるデータである制御系データを予め定められたシステム周期Ｔｓ毎に伝送する制御系伝送機能を有している。
【００５０】
また、図３（Ｂ）〜図３（Ｄ）に示すように、本実施の形態に従う通信システムおよび当該通信システムに接続される通信装置の各々は、第２の伝送機能として、指定された時間内に送信先へ到着させる必要のあるデータである制御情報系データを、制御系データが伝送されていない期間に伝送する制御情報系伝送機能を有している。
【００５１】
さらに、図３（Ｃ）および図３（Ｄ）に示すように、本実施の形態に従う通信システムおよび当該通信システムに接続される通信装置の各々は、第３の伝送機能として、制御系データおよび制御情報系データとは異なる情報系データを伝送する情報系伝送機能を有している。
【００５２】
制御系データの送信（制御系通信）については、ネットワークに接続されているノード間をフレームが順次転送される方法で実現されてもよい。一方、制御情報系データおよび制御系データの送信（制御情報系通信および情報系通信）については、特定のノード間でフレームを転送する方式（メッセージ送信）で実現されてもよい。
【００５３】
本実施の形態に従う通信処理は、上述したような通信帯域の割り当てが実現されるようなネットワークにおいて、冗長経路を構成する。そして、このような冗長経路を前提とした上で、互いに異なる３種類の要件をそれぞれ満たしつつデータ伝送を行うための構成および処理を提供する。すなわち、本実施の形態に従う通信処理は、冗長経路を有する単一ネットワーク上で、要求される特性が異なる３種類のデータを統合した伝送を実現する。
【００５４】
より具体的には、ネットワーク上の回線負荷（回線利用率）などを考慮しつつ、冗長経路のうちから使用する伝送経路を動的に選択することで、予め定められたシステム周期を維持しつつ、３種類のデータ特性に応じた伝送経路の最適化を実現する。
【００５５】
本実施の形態に従う通信装置は、これらの３種類のデータが伝送される冗長化された経路上に配置されるものであれば、特に、その実装形態については限定されるものではない。
【００５６】
以下では、ネットワーク１１に接続される制御装置１００またはデバイス２００の伝送機能の一部として実装された場合を想定して説明する。但し、制御装置１００に限定されることなく、例えば、ネットワーク１１に接続される装置／ライン管理装置１９０または表示装置１８０に係る伝送機能の一部として実装してもよいし、フィールド上の各種機器をネットワーク化するためのリモート入出力装置に係る伝送機能の一部として実装してもよい。
【００５７】
＜Ｃ．冗長化＞
次に、冗長化されたネットワークの一例について説明する。図４は、本実施の形態に従う制御装置１００を含むネットワーク構成の一例を示す模式図である。図４に示すように、本実施の形態に従う通信システムにおいては、冗長化されたネットワークに複数の通信装置が接続された構成が採用される。
【００５８】
一例として、図４に示すネットワーク構成２は、制御装置１００が「マスター」として機能し、複数のデバイス２００Ａ〜２００Ｆが「スレーブ」として機能する例を示す。「マスター」は、ネットワーク構成２内を伝送されるデータの伝送タイミングなどを管理する。
【００５９】
制御装置１００は、複数のフィールドネットワークコントローラ（図４に示す例では、２つのフィールドネットワークコントローラ１４０，１５０）を有している。制御装置１００の複数のフィールドネットワークコントローラは、冗長化されたネットワークに接続するためのインターフェイスとして機能する。なお、フィールドネットワークコントローラとしては、特定のプロトコルに向けられた専用回路、および、特定のプロトコルに限定されない汎用回路のいずれを用いて構成してもよい。例えば、ＥｔｈｅｒＣＡＴ（登録商標）に従うフィールドネットワークを構築する場合には、マスターとして機能する装置には、汎用化されたフィールドネットワークコントローラを採用し、スレーブとして機能する装置には、専用化されたフィールドネットワークコントローラを採用することができる。
【００６０】
以下では、それぞれのフィールドネットワークを区別するために、「ポート１」および「ポート２」と称する場合もある。
【００６１】
フィールドネットワークコントローラ１４０（ポート１）からフィールドネットワークコントローラ１５０（ポート２）までを一巡するフィールドネットワーク１１０が形成されており、この一巡経路に、複数のデバイス２００Ａ〜２００Ｆが接続されることになる。フィールドネットワーク１１０上に配置される任意のノード間において、データの送受信が可能になっている。
【００６２】
例えば、制御装置１００からデバイス２００Ｃに対して何らかのデータを送信する場合には、ポート１からデータを送出して、デバイス２００Ａおよびデバイス２００Ｂを経て、デバイス２００Ｃへ到達する経路も可能であるし、ポート２からデータを送出して、デバイス２００Ｆ、デバイス２００Ｅ、およびデバイス２００Ｄを経て、デバイス２００Ｃへ到達する経路も可能である。
【００６３】
逆に、デバイス２００Ｃから制御装置１００に対して何らかのデータを送信する場合には、デバイス２００Ｃからデータを送出して、デバイス２００Ｂおよびデバイス２００Ａを経て、制御装置１００へ到達する経路も可能であるし、デバイス２００Ｃからデータを送出して、デバイス２００Ｄ、デバイス２００Ｅ、およびデバイス２００Ｆを経て、制御装置１００へ到達する経路も可能である。
【００６４】
このような意味において、ネットワーク構成２においては、冗長経路が実現されることになる。
【００６５】
＜Ｄ．ハードウェア構成＞
次に、ネットワーク構成２に含まれる制御装置１００およびデバイスのハードウェア構成の一例について説明する。
【００６６】
（ｄ１：制御装置１００）
図５は、本実施の形態に従う通信装置を含む制御装置１００のハードウェア構成の一例を示す模式図である。制御装置１００は、典型的には、ＰＬＣをベースとして構成されてもよい。図５を参照して、制御装置１００は、主たるコンポーネントとして、プロセッサ１０２と、メモリ１０４と、ストレージ１０６と、ネットワークコントローラ１３０と、フィールドネットワークコントローラ１４０，１５０と、内部バスコントローラ１６０とを含む。
【００６７】
プロセッサ１０２は、ストレージ１０６に格納されているシステムプログラム１０７およびユーザアプリケーションプログラム１０８をメモリ１０４に読み出して実行することで、後述するような処理を含む各種処理を実現する。メモリ１０４は、ＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）などの揮発性記憶装置からなる。ストレージ１０６は、ハードディスクやフラッシュメモリなどの不揮発性記憶装置からなる。ストレージ１０６には、制御装置１００の各部を制御するためのシステムプログラム１０７に加えて、制御対象などに応じて設計されるユーザアプリケーションプログラム１０８が格納される。
【００６８】
ネットワークコントローラ１３０は、制御装置１００がネットワーク１１を介して他の装置との間でデータを遣り取りするためのインターフェイスを提供する。ネットワークコントローラ１３０は、主たるコンポーネントとして、受信回路（ＲＸ）１３１と、受信バッファ１３２と、送受信コントローラ１３３と、送信バッファ１３４と、送信回路（ＴＸ）１３５とを含む。
【００６９】
受信回路１３１は、ネットワークコントローラ１３０上を定周期で伝送されるパケットを受信して、その受信したパケットに格納されているデータを受信バッファ１３２に書込む。受信バッファ１３２内には、書込まれたデータがキューの形で保持されてもよい。送受信コントローラ１３３は、受信バッファ１３２に書込まれた受信パケットを順次読出すとともに、当該読出したデータのうち制御装置１００での処理に必要なデータのみをプロセッサ１０２へ出力する。送受信コントローラ１３３は、プロセッサ１０２からの指令に従って、他の装置へ送信すべきデータあるいはパケットを送信バッファ１３４へ順次書込む。送信バッファ１３４内には、書込まれたデータがキューの形で保持されてもよい。送信回路１３５は、ネットワークコントローラ１３０上をパケットが転送される周期に応じて、送信バッファ１３４に格納されているデータを順次送出する。
【００７０】
フィールドネットワークコントローラ１４０は、制御装置１００がフィールドネットワークを介して各種のデバイス２００との間でデータを遣り取りするためのインターフェイスを提供する。フィールドネットワークコントローラ１４０は、主たるコンポーネントとして、受信回路（ＲＸ）１４１と、受信バッファ１４２と、送受信コントローラ１４３と、送信バッファ１４４と、送信回路（ＴＸ）１４５とを含む。これらのコンポーネントの機能は、ネットワークコントローラ１３０の対応するコンポーネントの機能と同様であるので、詳細な説明は繰返さない。
【００７１】
同様に、フィールドネットワークコントローラ１５０は、制御装置１００がフィールドネットワークを介して複数のデバイス２００との間でデータを遣り取りするためのインターフェイスを提供する。フィールドネットワークコントローラ１５０は、主たるコンポーネントとして、受信回路（ＲＸ）１５１と、受信バッファ１５２と、送受信コントローラ１５３と、送信バッファ１５４と、送信回路（ＴＸ）１５５とを含む。これらのコンポーネントの機能は、ネットワークコントローラ１３０およびフィールドネットワークコントローラ１４０の対応するコンポーネントの機能と同様であるので、詳細な説明は繰返さない。
【００７２】
本実施の形態においては、フィールドネットワークコントローラ１４０およびフィールドネットワークコントローラ１５０を用いて、冗長経路を実現する。
【００７３】
内部バスコントローラ１６０は、制御装置１００に装着される入出力ユニットと間で、が内部バス（図示しない）を介してデータを遣り取りするためのインターフェイスを提供する。内部バスコントローラ１６０は、主たるコンポーネントとして、受信回路（ＲＸ）１６１と、受信バッファ１６２と、送受信コントローラ１６３と、送信バッファ１６４と、送信回路（ＴＸ）１６５とを含む。これらのコンポーネントの機能は、ネットワークコントローラ１３０の対応するコンポーネントの機能と同様であるので、詳細な説明は繰返さない。
【００７４】
（ｄ２：デバイス２００）
図６は、本実施の形態に従う通信装置を含むデバイス２００のハードウェア構成の一例を示す模式図である。デバイス２００は、フィールドネットワーク１１０に接続される任意の通信装置を包含する。図６を参照して、デバイス２００は、主たるコンポーネントとして、処理コントローラ２１０と、機能モジュール２２０と、フィールドネットワークコントローラ２４０，２５０とを含む。
【００７５】
処理コントローラ２１０は、デバイス２００における全体処理を管理する機能を有している。処理コントローラ２１０は、プロセッサがプログラムを実行することで必要な機能を提供するように構成（ソフトウェア実装）としてもよいし、ＡＳＩＣ（application specific integrated circuit）やＦＰＧＡ（field-programmable gate array）などのハードワイヤードな構成（ハードウェア実装）としてもよい。さらに、ソフトウェア実装とハードウェア実装とを組み合わせた実装形態を採用してもよい。デバイス２００の用途や要求されるスペックなどに応じて、適宜最適な実装形態が採用される。
【００７６】
処理コントローラ２１０は、本実施の形態に従う通信処理を実現するための通信処理機能２３０を有している。本実施の形態に従う通信処理およびそれを実現するための通信処理機能２３０の詳細については後述する。
【００７７】
機能モジュール２２０は、デバイス２００が提供する機能を実現する部分である。例えば、デバイス２００がＩ／Ｏ（Input/Output）ユニットであれば、機能モジュール２２０は、リレーユニットやＡ／Ｄ（Analog/Digital）変換ユニットなどを含む。あるいは、デバイス２００がサーボコントローラユニットであれば、機能モジュール２２０は、サーボモータに対する指令を生成する回路や、サーボモータからのフィードバックを受付ける回路などを含む。
【００７８】
フィールドネットワークコントローラ２４０は、デバイス２００がフィールドネットワークを介して制御装置１００または他のデバイス２００との間でデータを遣り取りするためのインターフェイスを提供する。フィールドネットワークコントローラ２４０は、主たるコンポーネントとして、受信回路（ＲＸ）２４１と、受信バッファ２４２と、送受信コントローラ２４３と、送信バッファ２４４と、送信回路（ＴＸ）２４５とを含む。これらのコンポーネントの機能は、図５に示すフィールドネットワークコントローラ２４０の対応するコンポーネントの機能と同様であるので、詳細な説明は繰返さない。
【００７９】
同様に、フィールドネットワークコントローラ２５０は、デバイス２００がフィールドネットワークを介して制御装置１００または他のデバイス２００との間でデータを遣り取りするためのインターフェイスを提供する。フィールドネットワークコントローラ２５０は、主たるコンポーネントとして、受信回路（ＲＸ）２５１と、受信バッファ２５２と、送受信コントローラ２５３と、送信バッファ２５４と、送信回路（ＴＸ）２５５とを含む。これらのコンポーネントの機能は、上述のフィールドネットワークコントローラ２４０の対応するコンポーネントの機能と同様であるので、詳細な説明は繰返さない。
【００８０】
＜Ｅ．ソフトウェア構成＞
次に、本実施の形態に従う通信処理（伝送経路の動的な選択）を実現するためのソフトウェア構成の一例について説明する。図７は、本実施の形態に従う通信処理を実現するための制御装置１００のソフトウェア構成の一例を示す模式図である。
【００８１】
図７を参照して、制御装置１００のプロセッサ１０２ではスケジューラ１７０が実行される。スケジューラ１７０は、予め定められたシステム周期に従って、複数の処理の実行順序や実行中断などを決定する。より具体的には、スケジューラ１７０は、ユーザアプリケーション実行処理１７３と、各種処理を含む周辺処理１７４と、通信処理部１７６とに対して、予め定められた優先順位およびシステム周期などに従って、処理リソース（プロセッサ時間およびメモリなど）を割り当てる。
【００８２】
ユーザアプリケーション実行処理１７３は、ユーザアプリケーションプログラム１０８の実行に係る処理を含む。
【００８３】
通信処理部１７６は、制御装置１００とデバイス２００との間のデータの遣り取りを制御する。具体的には、通信処理部１７６は、送信先のデバイス２００に向けてデータを送信する際の伝送経路を、冗長経路に含まれる複数の伝送経路から動的に選択する処理などを実施する。
【００８４】
通信処理部１７６は、フィールドネットワークコントローラ１４０，１５０との間で内部コマンドやデータを遣り取りすることで、必要なデータの送受信処理を実現する。
【００８５】
より具体的には、通信処理部１７６は、伝送経路を動的に選択するために必要な情報を含む経路設定テーブル１７７と、経路設定テーブル１７７を参照して、伝送経路を動的に選択する経路設定モジュール１７８とを含む。すなわち、主として、経路設定モジュール１７８が本実施の形態に従う通信方法を実現する。
【００８６】
なお、デバイス２００のソフトウェア構成についても、図７と同様であるので、詳細な説明は繰返さない。具体的には、図６に示す通信処理機能２３０は、図７に示すスケジューラ１７０および通信処理部１７６が提供する機能と同様の機能を有している。
【００８７】
＜Ｆ：伝送経路の動的な選択＞
次に、本実施の形態に従う通信方法が提供する伝送経路の動的な選択の詳細について説明する。
【００８８】
（ｆ１：概要）
まず、本実施の形態に従う通信方法の概要について説明する。
【００８９】
図８は、冗長経路を有していないネットワーク構成におけるデータ伝送の一状態を説明する図である。図９は、本実施の形態に従う通信方法における伝送経路の動的選択の一形態を説明する図である。
【００９０】
一例として、マスターとして機能する制御装置１００からスレーブである１または複数のデバイス２００に対して制御情報系データを送信する場合を考える。上述したように、制御情報系データは、到着時刻を保証する必要がある。
【００９１】
図８に示すように、制御装置１００からデバイス２００Ａに対して制御情報系データを送信する場合において、その制御情報系データのデータサイズが相対的に大きく、制御装置１００とデバイス２００Ａとを結ぶフィールドネットワークの回線利用率が高い状態であるとする。このような状態において、制御装置１００から別のデバイス２００Ｂに対しても制御情報系データを送信する要求が発生したとする。このとき、制御装置１００からデバイス２００Ａへ送信される制御情報系データの影響を受けて、制御装置１００からデバイス２００Ｂへ制御情報系データを送信するのに必要な回線の空き（通信帯域）を確保することができない場合も想定される。
【００９２】
このような場合、制御装置１００から別の送信先であるデバイス２００Ｂへ送信すべき制御情報系データに伝送遅延が発生し得る。つまり、制御情報系データの送信が集中した場合、要求される到着時刻を保証できない場合が生じ得る。このような課題に対して、本実施の形態に従う通信方法では、冗長経路を設けるとともに、回線利用率などに応じて、伝送経路を動的に選択する。
【００９３】
なお、一般的な冗長構成は、デバイスの故障や回線の切断時などに通信を継続することを目的とするものであり、本実施の形態に従う通信方法のように、回線利用率などに応じて伝送経路を変更するようなことは想定されていない。
【００９４】
より具体的には、図９に示すように、制御装置１００およびデバイス２００Ａ〜２００Ｆを一巡するフィールドネットワーク１１０を構成するとともに、回線利用率などに応じて伝送経路を選択する。
【００９５】
図９には、図８に示す状態と同様に、制御装置１００からデバイス２００Ａに対して制御情報系データを送信している状態において、別のデバイス２００Ｂに対しても制御情報系データを送信する要求が発生した場合を示す。図９に示す場合においては、制御装置１００からデバイス２００Ａを経てデバイス２００Ｂへ到達する伝送経路の回線利用率が高いことが検出されると、制御装置１００は、指定された到着時刻を保証できることを評価した上で、制御装置１００からデバイス２００Ｆ、デバイス２００Ｅ、デバイス２００Ｄ、デバイス２００Ｃを経てデバイス２００Ｂへ到達する伝送経路で、制御情報系データを送信する。
【００９６】
このように、本実施の形態においては、冗長経路を有するネットワーク構成を採用することで、回線負荷を分散させて、制御情報系データの到着時刻を確実に保証する。つまり、特定の伝送経路において、何らかの制御情報系データまたは情報系データの伝送によって回線に空き（通信帯域）が存在しない場合、別の伝送経路を選択して、データを送信する。このとき、制御系データについては、厳密な到着時刻の保証が必要であり、制御精度を維持するために、伝送経路を変更しない。すなわち、伝送経路を変更する対象としては、主として、制御情報系データが対象とされる。この伝送経路の変更に先だって、到着時刻が保障されることを確認することが好ましい。
【００９７】
制御情報系データに加えて、情報系データについても、伝送経路を変更する対象としてもよい。但し、情報系データについては、到着時刻を保証する必要はなく、ベストエフォート形式で伝送されるので、伝送経路を変更しなくてもよい。
【００９８】
上述の図８および図９においては、マスターとして機能する制御装置１００からスレーブとして機能するデバイス２００に対して制御情報系データを送信する場合について説明した。これとは逆に、スレーブとして機能するデバイス２００からマスターとして機能する制御装置１００に対して制御情報系データを送信する場合について説明する。
【００９９】
図１０は、冗長経路を有していないネットワーク構成におけるデータ伝送の別の一状態を説明する図である。図１１は、本実施の形態に従う通信方法における伝送経路の動的選択の別の一形態を説明する図である。
【０１００】
図１０に示すように、デバイス２００Ａから制御装置１００に対して制御情報系データを送信する場合において、その制御情報系データのデータサイズが相対的に大きく、デバイス２００Ａと制御装置１００とを結ぶフィールドネットワークの回線利用率が高い状態であるとする。なお、デバイス２００Ａから制御装置１００に対する制御情報系データの送信は、周期的に伝送されるフレームではなく、メッセージにより実現される場合を想定している。
【０１０１】
このような状態において、別のデバイス２００Ｂが制御装置１００に対して制御情報系データを送信する要求が発生したとする。このとき、デバイス２００Ｂは隣接するノードであるデバイス２００Ａに対して制御情報系データを送信する。デバイス２００Ａは、デバイス２００Ｂからの制御情報系データを制御装置１００へ転送することになるが、デバイス２００Ａから制御装置１００へ送信している制御情報系データの影響を受けて、デバイス２００Ｂからの制御情報系データを制御装置１００へ転送するのに十分な回線の空き（通信帯域）を確保することができない場合も想定される。
【０１０２】
このような場合、デバイス２００Ｂから制御装置１００へ送信すべき制御情報系データに伝送遅延が発生し得る。つまり、制御情報系データの送信が集中した場合、要求される到着時刻を保証できない場合が生じ得る。本実施の形態に従う通信方法では、このような場合に対しても、冗長経路を設けるとともに、回線利用率などに応じて、伝送経路を動的に選択する。
【０１０３】
より具体的には、図１１を参照して、まず、デバイス２００Ｂは、制御装置１００へ送信すべき制御情報系データについて、最短経路であるデバイス２００Ａを経由する伝送経路を選択する。すなわち、デバイス２００Ｂは、まず、対象の制御情報系データをデバイス２００Ａへ送信する（（１）最短経路での伝送）。このとき、デバイス２００Ａと制御装置１００とを結ぶフィールドネットワークの回線利用率が高い状態であれば、デバイス２００Ａは、伝送経路に用いられるフィールドネットワークの回線利用率が高いことを、デバイス２００Ｂに対して通知する（（２）高回線利用率の通知）。
【０１０４】
デバイス２００Ｂは、この回線利用率が高いことの通知を受けて、対象の制御情報系データを送信する経路を変更する（（３）別経路での伝送）。すなわち、デバイス２００Ｂは、デバイス２００Ｃ、デバイス２００Ｄ、デバイス２００Ｅ、デバイス２００Ｆを経て制御装置１００へ到達する経路で、制御情報系データを送信する。
【０１０５】
このように、スレーブとして機能するデバイス２００は、局所的な回線利用率を知ることができない場合も多いので、他のデバイス２００と連携しつつ、伝送経路を動的に選択する。
【０１０６】
図８〜図１１を参照して説明したように、少なくとも、制御情報系データの伝送機能は、冗長化されたネットワークに存在する複数の伝送経路を選択的に切替える機能を有している。すなわち、制御情報系データの伝送機能は、制御情報系データを指定された時間内にネットワークのある伝送経路で送信先へ到着させることができるか否かを判断する判断機能と、制御情報系データを指定された時間内に送信先へ到着させることができないと判断されると、当該制御情報系データの少なくとも一部をネットワークの先に選択されていた伝送経路とは異なる別の伝送経路で送信先へ送信するように変更する経路変更機能とを含む。このような制御情報系データの伝送経路を動的に切替えることで、制御情報系データに要求される到着時刻を保証することができる。
【０１０７】
なお、情報系データの伝送機能についても、上述したような伝送経路を動的に切替える機能を実装してもよい。すなわち、情報系データの伝送機能には、情報系データを冗長化されたネットワークのある伝送経路で送信先へ伝送する際に、当該冗長化されたネットワーク上の情報系データの伝送に係るネットワーク上の回線負荷（回線利用率）に基づいて、当該情報系データの少なくとも一部を当該冗長化されたネットワークの先に選択されている伝送経路とは異なる別の伝送経路で送信先へ送信するように変更してもよい。このような情報系データの伝送経路を動的に切替えることで、その情報系データの伝送時間を短縮することができるとともに、制御系データおよび制御情報系データの到達時刻の保証もより容易化できる。
【０１０８】
（ｆ２：経路設定テーブル）
上述の図９および図１１に示すような伝送経路の動的な選択については、経路設定テーブル１７７（図７）に規定された情報に基づいて実施される。以下、経路設定テーブル１７７の一例について説明する。経路設定テーブル１７７は、対象のネットワークについての予め定められた規則を規定する。
【０１０９】
図１２は、本実施の形態に従う通信装置が保持する経路設定テーブル１７７の一例を示す模式図である。図１２に示す経路設定テーブル１７７は、図４に示すネットワーク構成２に対応するものである。図１２を参照して、経路設定テーブル１７７には、各デバイスについて、接続ポートおよびデータ種別毎のポートの優先順位が設定される。
【０１１０】
経路設定テーブル１７７は、デバイス欄１７７１と、接続ポート欄１７７２と、制御系データ使用ポート欄１７７３と、制御情報系データ使用ポート欄１７７４と、情報系データ使用ポート欄１７７５とを含む。
【０１１１】
デバイス欄１７７１には、各通信装置から到達可能なすべてのデバイスが規定される。接続ポート欄１７７２には、通信装置が有するポートのうち各デバイスに到達可能なポートが規定される。図４に示すネットワーク構成２においては、制御装置１００の２つのポート１，２の両方からいずれのデバイス２００にも到達可能であるので、接続ポート欄１７７２には、「１」および「２」が規定されている。
【０１１２】
制御系データ使用ポート欄１７７３には、制御系データの送信に用いられるポートが規定される。制御系データについては、到着時刻を厳密に保証する必要があるので、使用されるポートは固定される。図１２に示す例では、制御系データ使用ポート欄１７７３には、全デバイスについて「１」が規定されている。
【０１１３】
制御情報系データ使用ポート欄１７７４には、制御情報系データの送信に用いられるポートが規定される。制御情報系データについては、ネットワーク上の回線負荷（回線利用率）に応じて伝送経路が選択されるので、その伝送経路の選択に使用可能な複数のポートが設定される。制御情報系データ使用ポート欄１７７４に規定されるポートは、その記載順序が選択の優先順序に対応付けられている。図１２に示す例においては、左側に規定されるポートの方がより優先順位が高くなるように設定されている。
【０１１４】
情報系データ使用ポート欄１７７５には、情報系データの送信に用いられるポートが規定される。情報系データについても、ネットワーク上の回線負荷（回線利用率）に応じて伝送経路が選択される場合には、その伝送経路の選択に使用可能な複数のポートが設定される。但し、情報系データに対する伝送経路の動的な選択を実施しない場合には、特定のポートに固定してもよい。図１２に示す例においては、情報系データ使用ポート欄１７７５には、選択可能な複数のポートが規定されており、また、左側に規定されるポートの方がより優先順位が高くなるように設定されている。
【０１１５】
経路設定モジュール１７８（図７）は、図１２に示すような経路設定テーブル１７７を参照することで、伝送経路を動的に選択する。
【０１１６】
図１２に示す経路設定テーブル１７７は、一例として、マスターとして機能する通信装置（制御装置１００）に格納されるものを想定しているが、各スレーブとして機能する通信装置（デバイス２００Ａ〜２００Ｆ）の各々にも経路設定テーブル１７７は格納される。この場合には、デバイス欄１７７１に、マスターとして機能する通信装置が規定されてもよい。
【０１１７】
経路設定テーブル１７７は、予めユーザによって設定されてもよいし、ネットワークの接続状態などに基づいて自動的に設定されてもよい。
【０１１８】
図７に示す経路設定テーブル１７７においては、制御系データのポートは全デバイスについて「１」（制御系データ使用ポート欄１７７３の設定値）に固定されている例を示すが、これに限られることはなく、デバイスに応じて、異なるポートを指定するようにしてもよい。但し、制御系データについてのポートは、到着時刻を厳密に保証するために、動的に変更されないことが好ましい。
【０１１９】
（ｆ３：処理手順：マスター）
次に、上述の図９に示すような通信方法を実現するための処理手順について説明する。図１３は、本実施の形態に従う通信処理のマスターとして機能する通信装置での処理手順を示すフローチャートである。図１３に示す処理手順は、典型的には、制御装置１００のプロセッサ１０２（図５）によってシステム周期毎に繰返し実行される。
【０１２０】
図１３を参照して、制御装置１００は、何らかのデータの送信がスケジュールされたか否かを判断する（ステップＳ１００）。いずれのデータの送信もスケジュールされていなければ（ステップＳ１００においてＮＯ）、ステップＳ１００の処理が繰返される。
【０１２１】
何らかのデータの送信がスケジュールされると（ステップＳ１００においてＹＥＳ）、制御装置１００は、送信対象のデータのデータ種別を判断する（ステップＳ１０２）。
【０１２２】
データ種別が制御系データである場合（ステップＳ１０２において「制御系データ」）には、制御装置１００は、経路設定テーブル１７７を参照して、送信対象のデータの送信先情報（典型的には、デバイス番号など）に対応するポートを使用ポートとして選択する（ステップＳ１０４）。そして、選択された使用ポートを用いて、送信対象のデータを送出する（ステップＳ１０６）。すなわち、製造装置または生産設備の制御に用いる制御系データを予め定められた周期毎に伝送する処理が実施される。
【０１２３】
データ種別が制御情報系データである場合（ステップＳ１０２において「制御情報系データ」）には、制御装置１００は、経路設定テーブル１７７を参照して、送信対象のデータの送信先情報に対応する最も優先順位の高いポートを使用ポートとして選択する（ステップＳ１０８）。そして、指定された時間内に送信先へ到着させる必要のある制御情報系データを、制御系データが伝送されていない期間に伝送する処理が実施される。
【０１２４】
このとき、制御装置１００は、ネットワーク上の回線負荷（回線利用率）に基づいて、選択された使用ポートに対応する伝送経路を変更する必要があるか否かを評価する。つまり、制御装置１００は、ネットワーク上の制御情報系データの伝送に係る回線利用率に基づいて、対象の制御情報系データを指定された時間内に送信先へ到着させることができるか否かを判断する。具体的には、制御装置１００は、使用ポートとして選択されたポートに対応するネットワークコントローラの送信バッファのデータ蓄積量が予め定められた値を超えているか否かを判断する（ステップＳ１１０）。
【０１２５】
対応するネットワークコントローラの送信バッファのデータ蓄積量が予め定められた値を超えていれば（ステップＳ１１０においてＹＥＳ）、現在選択している伝送経路の回線負荷（回線利用率）が高いと判断し、別の伝送経路を選択する。具体的には、制御装置１００は、経路設定テーブル１７７を参照して、送信対象のデータの送信先情報に対応する次に優先順位の高いポートを使用ポートとして選択する（ステップＳ１１２）。つまり、制御装置１００は、経路設定テーブル１７７に規定されている、ネットワークについての予め定められた規則に従って、代替の伝送経路を選択する。そして、ステップＳ１１０の処理を繰返す。
【０１２６】
対応するネットワークコントローラの送信バッファのデータ蓄積量が予め定められた値を超えていなければ（ステップＳ１１０においてＮＯ）、現在選択している伝送経路の回線負荷（回線利用率）は高くないと判断し、選択中の伝送経路でのデータ送信を継続する。すなわち、選択中の使用ポートを用いて、送信対象のデータを送出する（ステップＳ１０６）。
【０１２７】
データ種別が情報系データである場合（ステップＳ１０２において「情報系データ」）には、制御装置１００は、経路設定テーブル１７７を参照して、送信対象のデータの送信先情報に対応する最も優先順位の高いポートを使用ポートとして選択する（ステップＳ１１４）。そして、選択された使用ポートを用いて、送信対象のデータを送出する（ステップＳ１０６）。すなわち、制御系データおよび制御情報系データとは異なる情報系データを伝送する処理が実施される。
【０１２８】
但し、情報系データについても伝送経路の動的な選択を行う場合には、ステップＳ１１０およびＳ１１２と同様の処理を行ってもよい（ステップＳ１１６）。
【０１２９】
（ｆ４：マスターにおける付加処理）
図１３に示す処理手順においては、データ種別に応じて伝送経路を選択してデータ送信を行う例について説明したが、このようなデータ送信に併せて、経路設定テーブル１７７の内容を更新するようにしてもよい。
【０１３０】
例えば、最も優先順位の高いポートに対応するネットワークコントローラの送信バッファに定常的にデータが蓄積しており、選択されたポートの切替え（図１３に示すステップＳ１１２）が頻繁に生じるような場合には、経路設定テーブル１７７の対応する複数のポートの間で優先順位を変更するようにしてもよい。例えば、選択されたポートの切替えが所定回数以上に亘って連続して発生した場合には、対応するデバイス宛てに使用可能な複数のポートのうち、最も優先順位の高い（すなわち、デフォルトの）ポートを変更してもよい。
【０１３１】
同様に、伝送経路の伝送状態が良好ではない場合にも、経路設定テーブル１７７の内容を更新するようにしてもよい。例えば、最も優先順位の高いポートに対応する伝送経路でデータを送信した場合に、当該伝送経路で受けるノイズなどによってデータ伝送が完了せず、リトライ要求などの応答を受けている場合、あるいは、応答時間のタイムアウトが発生している場合などについても、上述と同様に、対応するデバイス宛てに使用可能な複数のポートのうち、最も優先順位の高い（すなわち、デフォルトの）ポートを変更してもよい。
【０１３２】
例えば、リトライ要求が所定回数以上に亘って連続して発生した場合や、応答時間のタイムアウトが所定回数以上に亘って連続して発生した場合などに、経路設定テーブル１７７の対象となっているデバイスの設定内容を変更するようにしてもよい。
【０１３３】
このように、制御装置１００またはデバイス２００において、伝送経路の切替え履歴に基づいて、経路設定テーブル１７７に規定されている、ネットワークについての予め定められた規則を変更する機能を実装してもよい。
【０１３４】
（ｆ５：処理手順：スレーブ）
次に、上述の図１１に示すような通信方法を実現するための処理手順について説明する。図１４は、本実施の形態に従う通信処理のスレーブとして機能する通信装置での処理手順を示すフローチャートである。図１４に示す処理手順は、典型的には、デバイス２００の処理コントローラ２１０（図６）によってシステム周期毎に繰返し実行される。
【０１３５】
図１４を参照して、デバイス２００は、何らかのデータの送信がスケジュールされたか否かを判断する（ステップＳ２００）。いずれのデータの送信もスケジュールされていなければ（ステップＳ２００においてＮＯ）、ステップＳ２００の処理が繰返される。
【０１３６】
何らかのデータの送信がスケジュールされると（ステップＳ２００においてＹＥＳ）、デバイス２００は、送信対象のデータのデータ種別を判断する（ステップＳ２０２）。
【０１３７】
データ種別が制御系データである場合（ステップＳ２０２において「制御系データ」）には、デバイス２００は、経路設定テーブル（図７に示す経路設定テーブル１７７と同様）を参照して、送信対象のデータの送信先情報（典型的には、制御装置１００）に対応するポートを使用ポートとして選択する（ステップＳ２０４）。そして、選択された使用ポートを用いて、送信対象のデータを送出する（ステップＳ２０６）。すなわち、製造装置または生産設備の制御に用いる制御系データを予め定められた周期毎に伝送する処理が実施される。
【０１３８】
データ種別が制御情報系データである場合（ステップＳ２０２において「制御情報系データ」）には、デバイス２００は、経路設定テーブルを参照して、送信対象のデータの送信先情報に対応する最も優先順位の高いポートを使用ポートとして選択する（ステップＳ２０８）。そして、指定された時間内に送信先へ到着させる必要のある制御情報系データを、制御系データが伝送されていない期間に伝送する処理が実施される。
【０１３９】
このとき、デバイス２００は、隣接するデバイスからの情報に基づいて、選択された使用ポートに対応する伝送経路を変更する必要があるか否かを評価する。つまり、デバイス２００は、ネットワーク上の制御情報系データの伝送に係る回線利用率に基づいて、対象の制御情報系データを指定された時間内に送信先へ到着させることができるか否かを判断する。具体的には、デバイス２００は、使用ポートとして選択されたポートからのデータ送出に対して、他のデバイスからフィールドネットワークの回線利用率が高いとの通知（高回線利用率の通知）を受信しているか否かを判断する（ステップＳ２１０）。このように、デバイス２００は、先に選択されている伝送経路上に存在するデバイス２００自身（すなわち、送信元の通信装置）とは異なる通信装置（他のデバイス２００または制御装置１００）から回線利用率を取得することで、ネットワーク上の回線負荷を判断する。
【０１４０】
他のデバイスからフィールドネットワークの回線利用率が高いとの通知を受信していれば（ステップＳ２１０においてＹＥＳ）、現在選択している伝送経路の回線負荷（回線利用率）が高いと判断し、別の伝送経路を選択する。具体的には、デバイス２００は、経路設定テーブルを参照して、送信対象のデータの送信先情報に対応する次に優先順位の高いポートを使用ポートとして選択する（ステップＳ２１２）。つまり、デバイス２００は、経路設定テーブル１７７に規定されている、ネットワークについての予め定められた規則に従って、代替の伝送経路を選択する。そして、ステップＳ２１０の処理を繰返す。
【０１４１】
他のデバイスからフィールドネットワークの回線利用率が高いとの通知を受信していなければ（ステップＳ２１０においてＮＯ）、現在選択している伝送経路の回線負荷（回線利用率）は高くないと判断し、選択中の伝送経路でのデータ送信を継続する。すなわち、選択中の使用ポートを用いて、送信対象のデータを送出する（ステップＳ２０６）。
【０１４２】
データ種別が情報系データである場合（ステップＳ２０２において「情報系データ」）には、デバイス２００は、経路設定テーブルを参照して、送信対象のデータの送信先情報に対応する最も優先順位の高いポートを使用ポートとして選択する（ステップＳ２１４）。そして、選択された使用ポートを用いて、送信対象のデータを送出する（ステップＳ２０６）。すなわち、制御系データおよび制御情報系データとは異なる情報系データを伝送する処理が実施される。
【０１４３】
但し、情報系データについても伝送経路の動的な選択を行う場合には、ステップＳ２１０およびＳ２１２と同様の処理を行ってもよい（ステップＳ２１６）。
【０１４４】
（ｆ６：スレーブでの処理手順の変形例）
上述の図１４に示す処理手順のステップＳ２１０での判断を実現するために、あるデバイス２００が、隣接する一方のデバイス２００から受信したデータを隣接する他方のデバイス２００または制御装置１００へ転送する必要がある場合において、使用ポートに対応するネットワークコントローラの送信バッファのデータ蓄積量が予め定められた値を超えていれば、ネットワーク上の回線負荷（回線利用率）が高いことを、データ送信元のデバイス２００へ通知するようにしてもよい。
【０１４５】
また、制御装置１００と任意のデバイス２００との間の経路上に存在するデバイス２００は、データを制御装置１００または他のデバイス２００から送信されたデータを転送することになる。そのため、それらのデバイス２００の各々においては、図１３に示すようなマスターとして機能する通信装置での処理手順、および、図１４に示すようなスレーブとして機能する通信装置での処理手順の両方を実装してもよい。
【０１４６】
なお、あるデバイス２００が、隣接する一方のデバイス２００から受信したデータを隣接する他方のデバイス２００または制御装置１００へ転送する必要がある場合において、使用ポートに対応するネットワークコントローラの送信バッファのデータ蓄積量が予め定められた値を超えていれば（すなわち、ネットワーク上の回線負荷（回線利用率）が高ければ）、送信対象のデータの優先度などに応じて送信順序を入れ替えるようにしてもよい。
【０１４７】
（ｆ７：その他の処理）
上述の通信方法においては、ネットワークコントローラの送信バッファのデータ蓄積量などに基づいて、ネットワーク上の回線負荷（回線利用率）を判断して、ポート（伝送経路）を選択する処理を例示したが、以下のような代替処理または追加処理を実施してもよい。
【０１４８】
例えば、制御情報系データについて、最も優先順位の高いポートに対応するネットワークコントローラの送信バッファのデータ蓄積量が予め定められた値を超えていて、別のポート（伝送経路）に変更すると判断された場合であっても、当該変更されたポート（伝送経路）を用いたとしても、指定された到着時刻を保証することができないと判断された場合には、ポート（伝送経路）の変更は行わないようにしてもよい。この到着時刻を保証することができるか否かについては、過去に送信したデータの伝送に要した時間などに基づいて判断することができる。
【０１４９】
なお、ポート（伝送経路）の変更有無にかかわらず、指定された到着時刻を保証することができないと判断された場合には、通信処理を中止して、エラー通知などを行ってもよい。エラー通知の方法としては、エラーフラグなどをオンにする処理を含み、エラーフラグがオンになることで、ユーザプログラムにて異常処理が可能となる。あるいは、保証可能な到着時刻をユーザプログラムなどに提示しつつ、当該最短の伝送経路にて通信を継続するようにしてもよい。さらに、指定された到着時刻を保証することができないと判断された場合にいずれの処理を選択的に実行するのかを、予め設定できるようにしてもよい。
【０１５０】
例えば、情報系データが特定のポート（伝送経路）の送信バッファに蓄積されている状態であるが、制御情報系データは、そのポート（伝送経路）を利用しなければ、指定された到着時刻を保証できない場合には、先に蓄積されている情報系データの優先順位を変更する、あるいは、先に蓄積されている情報系データが利用するポート（伝送経路）を変更するようにしてもよい。
【０１５１】
例えば、制御系がネットワークコントローラの送信バッファに蓄積されようとした場合に、先に、制御情報系データまたは情報系データが送信バッファに蓄積されていた場合には、制御系データを最優先に送出するようにしてもよい。このとき、制御情報系データについては、制御系データの後に送出することになるため、制御系データの後での送出であっても、指定された到着時刻を保証できる場合には、対象の制御情報系データを制御系データの後に送出するようにしてもよい。一方、指定された到着時刻を保証できない場合には、制御情報系データを送出するポート（伝送経路）を変更するようにしてもよい。
【０１５２】
マスターとして機能する制御装置１００およびスレーブとして機能するデバイス２００のいずれにおいても、選択されたポートの切替えが所定回数以上に亘って連続して発生した場合には、経路設定テーブル１７７に規定される、最も優先順位の高い（すなわち、デフォルトの）ポートを変更してもよい。同様に、伝送経路の伝送状態が良好ではない場合にも、経路設定テーブル１７７の内容を更新するようにしてもよい。
【０１５３】
本実施の形態に従う通信方法においては、冗長経路を利用することになるが、冗長経路を利用することで、２つの異なる方向からデータが送信される場合が生じ得る。このような異なる方向からのデータ送信によって、データ同士の衝突が生じ得るので、このようなデータの衝突を防止するような処理を実行するようにしてもよい。
【０１５４】
図１５は、本実施の形態に従う通信方法においてマスターとして機能する通信装置におけるデータの送信タイミングの調整を説明するための模式図である。図１５を参照して、例えば、マスターとして機能する制御装置１００のポート１から制御系データを含むフレームＦＬ１を送出した後、ポート２から制御情報系データまたは情報系データを含むフレームＦＬ２を送出したとする。フレームＦＬ１は、ネットワークに接続される全デバイスを転送された後、ポート２に隣接するデバイス（図１５の例では、デバイスＦ）で折り返されて、再度ポート１へ戻る。
【０１５５】
このようなフレームＦＬ１の転送状態において、制御装置１００のポート２からフレームＦＬ２が送出されると、例えば、デバイスＦなどにおいて、フレームＦＬ１とフレームＦＬ２との間の衝突が生じ得る。すなわち、デバイスＦには、フレームＦＬ２が先に到着し、当該フレームＦＬ２がデバイスＦからデバイスＥへの転送が開始されると、デバイスＦに後から到着したフレームＦＬ１の転送が待たされるという事態が生じ得る。
【０１５６】
このようなフレーム同士の衝突を回避するために、制御系データの転送中、または、制御系データの送信開始直後の一定期間においては、制御情報系データまたは情報系データを含むフレームを別のポートから送出しないように制御することが好ましい。図１５には、フレームＦＬ２の送信タイミングを所定時間だけ遅らせる（シフトさせる）例が示されている。
【０１５７】
あるいは、制御情報系データまたは情報系データを含むフレームＦＬ２’について、制御系データを含むフレームＦＬ１を送出したのと同じポートから送出するように変更してもよい。
【０１５８】
このように、ネットワーク内のデータの転送状態に応じて、制御系データと制御情報系データ／情報系データとが衝突しないように、データの送出タイミングを調整することが好ましい。
【０１５９】
（ｆ７：分割伝送）
上述の通信方法の説明においては、伝送経路を動的に選択する処理例について説明したが、冗長経路を利用して、複数の伝送経路を用いてデータを伝送するようにしてもよい。すなわち、対象のデータを分割して、分割されたそれぞれのデータを異なる伝送経路を介して送信するようにしてもよい。つまり、上述の通信方法においては、制御情報系データまたは情報系データを指定された時間内に送信先へ到着させることができないと判断されると、当該データの全部について伝送経路を切替えているが、当該データの一部のみについて伝送経路を切替えるようにしてもよい。以下、このような分割伝送の一例について説明する。
【０１６０】
図１６は、冗長経路を有していないネットワーク構成におけるデータ伝送のさらに別の一状態を説明する図である。図１７は、本実施の形態に従う通信方法における伝送経路の動的選択のさらに別の一形態を説明する図である。
【０１６１】
図１６に示すように、制御装置１００からデバイス２００Ａに対して制御情報系データを送信する場合において、その制御情報系データのデータサイズが相対的に大きく、要求される到着時刻を保証できない場合が生じ得る。あるいは、対象の制御情報系データに設定される到着時刻の制約が厳しい場合などにも、その設定されている到着時刻を保証できない場合が生じ得る。
【０１６２】
このような場合において、冗長経路を利用して、回線負荷を分散させて、制御情報系データの到着時刻を確実に保証するようにしてもよい。具体的には、図１７を参照して、制御装置１００から送信される制御情報系データを分割して、分割された各データを到着順序が保証されるように異なる伝送経路でそれぞれ送信することで、実質的に伝送容量（通信帯域）を増大させることができる。制御情報系データの分割には、フラグメントなどの方法を用いることができる。
【０１６３】
到着順序を保証するために、データの受信ノードおよび送信ノードにて送信順序を適宜修正するようにしてもよい。例えば、受信ノード（または、伝送経路上に存在するデータ転送を担当するノード）におけるデータの到着順序がずれた場合には、当該受信ノードにてデータの順序を整えた上で、当該データを再構成してもよい。あるいは、送信ノード（または、伝送経路上に存在するデータ転送を担当するノード）は、受信ノードまたは中継ノードからの情報や通信帯域の空き具合の情報などに基づいて、到着順がずれないように送信タイミングや送信データ量などを調整するようにしてもよい。
【０１６４】
このとき、制御系データについては、厳密な到着時刻の保証が必要であり、制御精度を維持するために、分割伝送はなされない。また、制御情報系データに加えて、情報系データについても、分割伝送の対象としてもよい。さらに、情報系データについては、到着時間を保証する必要はないものの、通信帯域に空きが存在するのであれば、分割伝送の対象としてもよい。
【０１６５】
図１８は、本実施の形態に従う通信処理のマスターとして機能する通信装置での別の処理手順を示すフローチャートである。図１８に示す処理手順は、典型的には、制御装置１００のプロセッサ１０２（図５）によってシステム周期毎に繰返し実行される。
【０１６６】
図１８を参照して、制御装置１００は、何らかのデータの送信がスケジュールされたか否かを判断する（ステップＳ３００）。いずれのデータの送信もスケジュールされていなければ（ステップＳ３００においてＮＯ）、ステップＳ３００の処理が繰返される。
【０１６７】
何らかのデータの送信がスケジュールされると（ステップＳ３００においてＹＥＳ）、制御装置１００は、送信対象のデータのデータ種別を判断する（ステップＳ３０２）。
【０１６８】
データ種別が制御系データである場合（ステップＳ３０２において「制御系データ」）には、制御装置１００は、経路設定テーブル１７７を参照して、送信対象のデータの送信先情報（典型的には、デバイス番号など）に対応するポートを使用ポートとして選択する（ステップＳ３０４）。そして、選択された使用ポートを用いて、送信対象のデータを送出する（ステップＳ３０６）。
【０１６９】
データ種別が制御情報系データである場合（ステップＳ３０２において「制御情報系データ」）には、制御装置１００は、経路設定テーブル１７７を参照して、送信対象のデータの送信先情報に対応する最も優先順位の高いポートを使用ポートとして選択する（ステップＳ３０８）。続いて、制御装置１００は、送信対象のデータの到着時刻を保証できるか否かを判断する（ステップＳ３１０）。具体的には、制御装置１００は、送信対象のデータに設定される到着時刻において確保できる伝送時間が予め定められた値以下であるか、あるいは、送信対象のデータのデータサイズが予め定められた値以上であるかに基づいて、到着時刻の保証可否を判断する。
【０１７０】
送信対象のデータの到着時刻を保証できなければ（ステップＳ３１０においてＮＯ）、制御装置１００は、経路設定テーブル１７７を参照して、現在選択されている使用ポートに加えて、別のポートも使用ポートとして追加的に選択するとともに、送信対象のデータを分割し（ステップＳ３１２）、分割したそれぞれの送信データをそれぞれの使用ポートから送出する（ステップＳ３１８）。
【０１７１】
送信対象のデータの到着時刻を保証できれば（ステップＳ３１０においてＹＥＳ）、制御装置１００は、選択中の使用ポートを用いて、送信対象のデータを送出する（ステップＳ３０６）。
【０１７２】
データ種別が情報系データである場合（ステップＳ３０２において「情報系データ」）には、制御装置１００は、経路設定テーブル１７７を参照して、送信対象のデータの送信先情報に対応するポートを使用ポートとして選択する（ステップＳ３１４）。そして、選択された使用ポートを用いて、送信対象のデータを送出する（ステップＳ３０６）。
【０１７３】
但し、情報系データについても伝送経路の動的な選択を行う場合には、ステップＳ３１０，Ｓ３１２，Ｓ３１８と同様の処理を行ってもよい（ステップＳ３１６）。
【０１７４】
上述したように、制御情報系データまたは情報系データを指定された時間内に送信先へ到着させることができないと判断された場合には、それらのデータを当初の伝送経路に加えて、新たな伝送経路の両方で送信先へ送信するようにしてもよい。このような複数の伝送経路を用いることで、通信効率をより高めることができる。
【０１７５】
＜Ｇ：利点＞
本実施の形態に従う通信方法によれば、冗長化されたネットワークにおいて複数の伝送経路を選択可能である場合、制御系データの伝送を最優先しつつ、制御情報系データについても予め指定された到着時刻を保証できるような通信方法を提供できる。より具体的には、ある選択された伝送経路で制御情報系データを伝送しようとした場合に、ネットワーク上の回線負荷（回線利用率）などを考慮して、現在選択中の伝送経路では、指定された到着時刻を保証できないと判断された場合には、現在選択中伝送経路とは異なる伝送経路を選択して対象の制御情報系データを伝送できる。このような伝送経路の動的な選択によって、到着時刻を厳密に保証しなければならない制御系データを伝送しつつ、制御系データよりも緩いものの、制御情報系データについて指定された到着時刻を保証することができる。
【０１７６】
すなわち、厳密な到着時刻の保証が要求される制御系データに加えて、緩いながらも到着時刻を保証しなければならない制御情報系データについても、同一のネットワークを利用して伝送することができる。つまり、異なる要求およびデータサイズが設定されている制御系データおよび制御情報系データのいずれについても、要求を満たしつつ同一ネットワーク内で伝送することができる。
【０１７７】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１７８】
１  通信システム、２  ネットワーク構成、１１，１２，１３，１４  ネットワーク、１００  制御装置、１０２  プロセッサ、１０４  メモリ、１０６  ストレージ、１０７  システムプログラム、１０８  ユーザアプリケーションプログラム、１１０  フィールドネットワーク、１３０  ネットワークコントローラ、１３１，１４１，１５１，１６１，２４１，２５１  受信回路、１３２，１４２，１５２，１６２，２４２，２５２  受信バッファ、１３３，１４３，１５３，１６３，２４３，２５３  送受信コントローラ、１３４，１４４，１５４，１６４，２４４，２５４  送信バッファ、１３５，１４５，１５５，１６５，２４５，２５５  送信回路、１４０，１５０，２４０，２５０  フィールドネットワークコントローラ、１６０  内部バスコントローラ、１７０  スケジューラ、１７３  ユーザアプリケーション実行処理、１７４  周辺処理、１７６  通信処理部、１７７  経路設定テーブル、１７８  経路設定モジュール、１８０  表示装置、１９０  ライン管理装置、２００，２００Ａ，２００Ｂ，２００Ｃ，２００Ｄ，２００Ｅ，２００Ｆ  デバイス、２１０  処理コントローラ、２２０  機能モジュール、２３０  通信処理機能、３００  製造管理装置、３１０  データベース装置、３５０  生産管理装置、１７７１  デバイス欄、１７７２  接続ポート欄、１７７３  制御系データ使用ポート欄、１７７４  制御情報系データ使用ポート欄、１７７５  情報系データ使用ポート欄、ＦＬ１，ＦＬ２  フレーム、Ｔｓ  システム周期。
【図１】
2018129707.tif 000003
【図２】
2018129707.tif 000004
【図３】
2018129707.tif 000005
【図４】
2018129707.tif 000006
【図５】
2018129707.tif 000007
【図６】
2018129707.tif 000008
【図７】
2018129707.tif 000009
【図８】
2018129707.tif 000010
【図９】
2018129707.tif 000011
【図１０】
2018129707.tif 000012
【図１１】
2018129707.tif 000013
【図１２】
2018129707.tif 000014
【図１３】
2018129707.tif 000015
【図１４】
2018129707.tif 000016
【図１５】
2018129707.tif 000017
【図１６】
2018129707.tif 000018
【図１７】
2018129707.tif 000019
【図１８】
2018129707.tif 000020