(57)【要約】      （修正有）【課題】制御系ネットワーク通信におけるリアルタイム性を損なうことなく、マルチキャスト通信を可能とする。【解決手段】転送フレームを生成、送信するマスタ６０は、少なくとも一のデータ転送装置１０を含む通信ネットワークを通じて、制御対象が接続されている複数のスレーブ７０に接続されている。データ転送装置１０はマスタ６０と接続する通信ポートとスレーブ７０と接続する通信ポートとを有する。データ転送装置１０は、通信ネットワーク上に構成される複数のデータ転送経路に応じて、あらかじめ設定されている所定の期間にマスタ６０から受信した転送フレームをメモリ上でコピーしてスレーブ７０側の通信ポートに受け渡すことにより所定の期間内でデータ転送を完了させる。【選択図】図５
2015115864.tif 000002
【特許請求の範囲】
【請求項１】
転送フレームを生成して送信する第一の通信部と、前記転送フレームを受信して格納されているデータを読み出す複数の第二の通信部と、前記第一の通信部と前記第二の通信部とを通信可能に接続する通信ネットワーク、前記通信ネットワークを介して前記第一の通信部と前記第二の通信部とに接続されて前記第一の通信部と前記第二の通信部との間でのデータ転送を実行するデータ転送部とを備えるデータ転送システムであって、
前記データ転送部は、前記データ転送を制御するためのデータ転送制御部と、前記転送フレームを格納する記憶部と、前記第一の通信部との間での前記転送フレームの送受信を実行する第一の通信ポートと、少なくとも一の前記第二の通信部との間での前記転送フレームの送受信を実行する第二の通信ポートとを備え、前記第一の通信部と時刻同期がなされており、
前記記憶部は、前記第一の通信ポートが受信した前記転送フレームを格納する第一の記憶領域と、前記第二の通信ポートが送受信する前記転送フレームを格納する第二の記憶領域とを備え、
前記データ転送制御部は、あらかじめ設定されている所定の期間に前記第一の通信ポートが前記転送フレームを受信した場合、当該転送フレームを前記第一の記憶領域に格納するとともに、前記第二の記憶領域に転送し、前記第二の通信ポートから送信させる、
データ転送システム。
【請求項２】
請求項１記載のデータ転送システムであって、
前記データ転送部は、他の少なくとも一の前記第二の通信部との間での前記転送フレームの送受信を実行する第三の通信ポートをさらに備え、
前記記憶部は、前記第三の通信ポートが送受信する前記転送フレームを格納する第三の記憶領域をさらに備え、
前記データ転送制御部は、所定の期間に前記第一の通信ポートが前記転送フレームを受信した場合、当該転送フレームを前記第一の記憶領域に格納するとともに、前記第二の記憶領域及び前記第三の記憶領域に転送し、前記第二の通信ポート及び前記第三の通信ポートから送信させる、
データ転送システム。
【請求項３】
請求項１記載のデータ転送システムであって、
前記第一の通信部と所定の前記第二の通信部とを含んで構成される複数のネットワーク構成と、各当該ネットワーク構成が確立していることを要求される所定の期間とを関連付けて記憶している全体構成情報記憶部と、前記全体構成情報記憶部の記憶内容から、各前記ネットワーク構成において、前記第一の通信部が対応する前記第二の通信部と通信を行う期間、及び前記データ転送部において、前記第一の通信ポートと前記第二の通信ポートとの間で前記転送フレームの転送を実行する期間とを含む個別スケジュール情報を生成して、前記第一の通信部及び前記データ転送部に配信するスケジュール管理部をさらに備えている、
データ転送システム。
【請求項４】
請求項１記載のデータ転送システムであって、
前記データ転送制御部は、前記所定の期間以外の時間帯に前記第一の通信ポートが受信した前記転送フレームのデータを前記記憶部に格納することなく廃棄する、
データ転送システム。
【請求項５】
請求項３記載のデータ転送システムであって、
前記スケジュール管理部は、前記全体構成情報記憶部の記憶内容において、一の前記ネットワーク構成が含む前記データ転送部間のデータ転送経路と他の前記ネットワーク構成が含む前記データ転送部間のデータ転送経路とが同一期間で競合していると判定した場合、いずれかの前記ネットワーク構成が確立される期間を時間的にシフトさせることにより、前記データ転送経路の競合を解消する、
データ転送システム。
【請求項６】
請求項５記載のデータ転送システムであって、
前記スケジュール管理部は、前記全体構成情報記憶部の記憶内容において、一の前記ネットワーク構成が含む前記データ転送部間のデータ転送経路と他の前記ネットワーク構成が含む前記データ転送部間のデータ転送経路とが同一期間で競合していると判定し、かついずれの前記ネットワーク構成が確立される期間を時間的にシフトさせても、前記データ転送経路の競合を解消することができないと判定した場合、所望のネットワーク構成を確立することができない旨の情報を出力する、
データ転送システム。
【請求項７】
請求項３記載のデータ転送システムであって、
前記全体構成情報記憶部の記憶内容は、前記ネットワーク構成が要求する前記転送フレームの転送周期のうちで、最も長い転送周期に相当する時間分だけ設定される、
データ転送システム。
【請求項８】
転送フレームを生成して送信する第一の通信部と、前記転送フレームを受信して格納されているデータを読み出す複数の第二の通信部と、前記第一の通信部と前記第二の通信部とを通信可能に接続する通信ネットワークと、前記通信ネットワークを介して前記第一の通信部と前記第二の通信部とに接続されて前記第一の通信部と前記第二の通信部との間でのデータ転送を実行するデータ転送部とを備え、前記データ転送部は、前記データ転送を制御するためのデータ転送制御部と、前記転送フレームを格納する記憶部と、前記第一の通信部との間での前記転送フレームの送受信を実行する第一の通信ポートと、少なくとも一の前記第二の通信部との間での前記転送フレームの送受信を実行する第二の通信ポートとを備え、前記記憶部は、前記第一の通信ポートが受信した前記転送フレームを格納する第一の記憶領域と、前記第二の通信ポートが送受信する前記転送フレームを格納する第二の記憶領域とを備えるデータ転送システムの制御方法であって、
前記第一の通信部と前記データ転送部との間で時刻同期をとり、
前記データ転送制御部により、あらかじめ設定されている所定の期間に前記第一の通信ポートが前記転送フレームを受信した場合、当該転送フレームを前記第一の記憶領域に格納するとともに、前記第二の記憶領域に転送し、前記第二の通信ポートから送信させる、
データ転送システムの制御方法。
【請求項９】
請求項８記載のデータ転送システムの制御方法であって、
前記データ転送部は、他の少なくとも一の前記第二の通信部との間での前記転送フレームの送受信を実行する第三の通信ポートをさらに備え、
前記記憶部は、前記第三の通信ポートが送受信する前記転送フレームを格納する第三の記憶領域をさらに備え、
前記データ転送制御部により、所定の期間に前記第一の通信ポートが前記転送フレームを受信した場合、当該転送フレームを前記第一の記憶領域に格納するとともに、前記第二の記憶領域及び前記第三の記憶領域に転送し、前記第二の通信ポート及び前記第三の通信ポートから送信させる、
データ転送システムの制御方法。
【請求項１０】
請求項８記載のデータ転送システムの制御方法であって、
前記データ転送システムは、前記第一の通信部と所定の前記第二の通信部とを含んで構成される複数のネットワーク構成と、各当該ネットワーク構成が確立していることを要求される所定の期間とを関連付けて記憶している全体構成情報記憶部と、前記全体構成情報記憶部の記憶内容から、各前記ネットワーク構成において、前記第一の通信部が対応する前記第二の通信部と通信を行う期間、及び前記データ転送部において、前記第一の通信ポートと前記第二の通信ポートとの間で前記転送フレームの転送を実行する期間とを含む個別スケジュール情報とを生成して、前記第一の通信部及び前記データ転送部に配信するスケジュール管理部をさらに備えている、
データ転送システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送システム及びデータ転送システムの制御方法に関する。
【背景技術】
【０００２】
１９９０年代前半、イーサネット（Ethernet、登録商標）は、情報系ネットワークでローカルエリアネットワーク（ＬＡＮ）の通信媒体として使われていたが、リアルタイム性能の問題からファクトリーオートメーション（ＦＡ）システムへの適用は難しいとされていた。しかし、スイッチングハブの出現によって、この問題が劇的に改善されるに至り、また、インターネット普及も追い風になって、スイッチングハブが安価に入手できるようになったことで、イーサネットがＦＡシステム等の産業向けに使われるようになった（以下、「産業用イーサネット」と言う）。
【０００３】
産業用イーサネットは、１９９０年代中頃から、コントローラ間ネットワークに適用され、さらに２０００年以後には生産現場等に設置されているアクチュエータ、センサ等をネットワークで接続する、フィールドネットワークにまで拡張されるに至っている。
【０００４】
一般に、制御系ネットワークシステムは、産業用イーサネットなどの制御ネットワークと、これに接続されているマスタ及び複数のスレーブから構成され、マスタが制御命令を搭載したフレームを送出し、各スレーブが当該フレームを受信してそれに含まれる制御命令を実行する。フレームには、各スレーブにおいて必要とされる情報が添付されることもある。
【０００５】
制御系ネットワークシステムに関し、例えば非特許文献１〜３に示すような技術がある。非特許文献１に記載のＥｔｈｅｒＣＡＴ（登録商標）は、イーサネットベースのフィールドバスの規格である。この規格では、マスタは、１つのイーサネットのフレーム上の所定の領域に、複数のスレーブへの制御情報を書き込み、当該フレームを受信したスレーブはその制御情報を読み込んでアクチュエータ等の制御を行なう。またスレーブはセンサの情報を、当該イーサネットフレームの所定の領域に書き込んで、その情報をマスタに転送する。マスタが送信した１つのイーサネットフレームについては、全てのスレーブで読み込み及び書き込みが行われ、当該イーサネットフレームが再びマスタに返送されてくることで、１サイクル分の制御が完了する
【０００６】
このように、ＥｔｈｅｒＣａｔ等で実現される制御ネットワークは、一般的には、固定長のフレームを用いて、高精度リアルタイム通信あるいは短期間サイクリック通信を実現しており、マスタがフレームの送出をサイクリック制御することによって、ネットワークを含むシステム全体として同期制御を可能としている。
【０００７】
非特許文献２には、キーと値だけで構成されて、主にメモリ上に展開されるデータベースの発明が記載されている。当該データベースは、従来のハードディスク上に構成されるデータベースや、ＳＱＬを使ったデータベースと比較して、２桁以上の高速アクセス性能を実現していると言われている。このアクセス性能は、制御系ネットワークが必要とするリアルタイムでの所定時間内でのデータ処理を可能とする場合がある。
【０００８】
また、非特許文献３には回線交換方式の通信について記載されている。回線交換方式とは、通信開始から終了まで、物理的又は仮想的な伝送路を設定し、その伝送路を通信回線として占有して行う通信の交換方式、又はその方式によるデータ通信方式をいう。回線交換方式は、パケット通信のようにデータを蓄積し、流量・再送を行う必要がなく交換設備の機能が簡便で済む。また、通信回線を終端装置間で占有するため、基本的には、接続速度やＱｏＳ（Quality of Service）が保証され、輻輳などによる伝送遅延等の伝送時間の変動は原則として生じない。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】"EtherCAT Master Application Developers Manual Doc. No.: P.4500.21 / Rev. 1.4, Page 22 of 151"、[online]、［平成２５年７月１２日検索］、インターネット<URL: http://www.esd-electronics-usa.com/Shared/Handbooks/EtherCATMasterDevelopersManual.pdf＞
【非特許文献２】"Java development 2.0: Redis for the real world"、developerWorks、[online]、［平成２５年７月１２日検索］、インターネット<URL: http://www.ibm.com/developerworks/library/j-javadev2-22/>
【非特許文献３】"Introduction to WAN Technologies, 3 Circuit Switching"、[online]、［平成２５年７月１２日検索］、インターネット<URL: http://docwiki.cisco.com/wiki/Introduction_to_WAN_Technologies#Circuit_switching>
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、これらの文献に記載されている発明には、以下のような問題があると考えられる。まず、非特許文献１に記載の発明では、制御システムにおけるリアルタイム通信を実現するためには、イーサネットのフレームをリアルタイムで転送する専用装置が必要となるという問題がある。また、かかるリアルタイム通信を必要とする制御システムと、必要としないコンテンツ配信等のための情報システムとを同一の装置に接続することはできないという問題もある。後者の問題は、制御系のリアルタイムの通信が、情報系の非リアルタイムの通信によって損なわれるためである。
【００１１】
また、非特許文献２に記載のデータベースの発明は、高速のデータ読み書きを実現するためのものであるが、制御系システムにおけるリアルタイム性能とは、単にリアルタイム時間を越える高速アクセスが実現できるだけでは十分ではない。すなわち、リアルタイム性が破られる可能性が限りなく０に近いことでは足りず、確実に０でなければならない。この点、非特許文献２の技術は、確実なリアルタイム性が完全に保証されている訳ではない。
【００１２】
また、非特許文献３の回線交換方式では、通信回線を流れるデータ量にかかわらず、複数の端末による伝送路などの共有（マルチキャスト通信）ができないため、ネットワーク資源の利用効率が悪く、異なる速度の端末装置間での通信は比較的困難となる。また、通信中はその端末装置同士を接続している通信回線を占有しつづけるため、動的な経路切替は困難であり、また切替が可能であったとしても時間がかかる。
【００１３】
回線交換方式の代表例としては、加入電話回線ネットワーク「公衆交換電話網（ＰＳＴＮ、Public Switching Telephone Network）」がある。ＰＳＴＮでは「ＳＳ７（Signaling System No.7（共通線信号Ｎｏ．７）」というプロトコルが用いられる。ＳＳ７は、回線制御装置に対して切替の制御命令の通信を行うが、制御ネットワークが要求する精度の速度で回線を切替えることはできない。基本的には、送信元が発信する送信先のアドレス（電話番号等）の入力毎に、回線制御装置に対して切替命令が行われるからである。
【００１４】
以上の課題を踏まえ、本発明は、制御系ネットワーク通信におけるリアルタイム性を損なうことなく、マルチキャスト通信を可能とするデータ転送システム等を提供することを目的としている。
【課題を解決するための手段】
【００１５】
上記の及び他の目的を達成するための、本発明の一態様は、転送フレームを生成して送信する第一の通信部と、前記転送フレームを受信して格納されているデータを読み出す複数の第二の通信部と、前記第一の通信部と前記第二の通信部とを通信可能に接続する通信ネットワーク、前記通信ネットワークを介して前記第一の通信部と前記第二の通信部とに接続されて前記第一の通信部と前記第二の通信部との間でのデータ転送を実行するデータ転送部とを備えるデータ転送システムであって、前記データ転送部は、前記データ転送を制御するためのデータ転送制御部と、前記転送フレームを格納する記憶部と、前記第一の通信部との間での前記転送フレームの送受信を実行する第一の通信ポートと、少なくとも一の前記第二の通信部との間での前記転送フレームの送受信を実行する第二の通信ポートとを備え、前記第一の通信部と時刻同期がなされており、前記記憶部は、前記第一の通信ポートが受信した前記転送フレームを格納する第一の記憶領域と、前記第二の通信ポートが送受信する前記転送フレームを格納する第二の記憶領域とを備え、前記データ転送制御部は、あらかじめ設定されている所定の期間に前記第一の通信ポートが前記転送フレームを受信した場合、当該転送フレームを前記第一の記憶領域に格納するとともに、前記第二の記憶領域に転送し、前記第二の通信ポートから送信させるデータ転送システムである。また、本発明の他の態様は、前記データ転送システムの制御方法である。
【発明の効果】
【００１６】
本発明のデータ転送システム等によれば、制御系ネットワーク通信におけるリアルタイム性を損なうことなく、マルチキャスト通信が可能となる。
【図面の簡単な説明】
【００１７】
【図１】一般的な制御ネットワークの構成例を示す図である。
【図２】一般的な制御ネットワークの構成例を示す図である。
【図３】本発明の一実施形態によるデータ転送システム１の動作の概要の一例を示す図である。
【図４】一般的な制御系システムの構成を示す図である。
【図５】本発明の一実施形態による情報転送システム１の構成例を示す図である。
【図６】データ転送システム１に設けられるスケジュールサーバ２０のハードウェア構成例を示す図である。
【図７】データ転送システム１に設けられるデータ転送装置１０のハードウェア構成例を示す図である。
【図８】データ転送システム１に設けられるマスタ６０のハードウェア構成例を示す図である。
【図９】データ転送システム１に設けられる通信インターフェース６８のハードウェア構成例を示す図である。
【図１０】一般的なイーサネットフレームと、データ転送システム１で用いられる２種類の転送フレームの構成例を示す図である。
【図１１】データ転送システム１の初期情報テーブル１１００である。
【図１２】スケジュールサーバ２０のソフトウェア構成例と、その動作を説明する模式図である。
【図１３】図１２のリソース割当モジュール２３３によるデータ処理例を示すフローチャートである。
【図１４】リソース割当モジュール２３３によって生成される全体タイムテーブル２３５の一例を示す図である。
【図１５】図５のデータ転送装置ＴＭ＿Ａの個別タイムテーブルを作成するためのデータ転送装置ＴＭ＿Ａの構成図である。
【図１６】図５のデータ転送装置ＴＭ＿Ａの個別タイムテーブルを作成するためのマトリックスを示す図である。
【図１７】図５の各データ転送装置ＴＭ＿Ａ〜ＴＭ＿Ｄの個別タイムテーブル構成例を示す図である。
【図１８】図５の各マスタ装置Ｃｏｎｔ＿α〜Ｃｏｎｔ＿γの個別タイムテーブル構成例を示す図である。
【図１９】データ転送装置１０に設けられるマイコン１９のソフトウェア構成例及び動作例を示す図である。
【図２０】時刻ベースデータ転送切替モジュール１９３の動作を示すフローチャートである。
【図２１】マスタ６０に設けられる通信インターフェース６８のソフトウェア構成例及び動作例を示す図である。
【図２２】通信インターフェース６８のメモリ６８９に構成されるインカミング転送フレーム用又はアウトゴーイング転送フレーム用のメモリ領域を例示する図である。
【図２３】時刻ベースフレーム送出モジュール６８６３の動作例を示すフローチャートである。
【図２４】構築情報によって構成されるＴ−ＬＡＮの構成例を示す図である。
【図２５】第一の実施例のＴ−ＬＡＮ＃３の構成変更例を示す図である。
【図２６】図２５の変更例のために再構成した全体タイムテーブル２３５の図である。
【図２７】図２５に対応した各データ転送装置ＴＭ＿Ｂ〜ＴＭ＿Ｄ及びマスタ装置Ｃｏｎｔ＿γの個別タイムテーブル２３６を示す図である。
【図２８】本実施形態のデータ転送システム１を鉄道運行管理システムに適用した事例を示す図である。
【図２９】図２８のシステムにおける全体タイムテーブル２３５の構成例を示す図である。
【図３０】図２８のシステムにおける個別タイムテーブル２３６の構成例を示す図である。
【発明を実施するための形態】
【００１８】
以下、適宜添付図面を参照しながら本発明につき、その実施形態に即して説明する。まず、本発明の構成及び動作の理解を容易とするために、従来の制御系ネットワークの構成例について説明する。図１、図２に、従来の一般的な制御系ネットワークの概略構成例を示している。図１に示す制御系ネットワークは、非特許文献１に関して述べたような、イーサネットベースのフィールドバスである。図１の構成例では、生産ライン等のサイトＳに、それぞれ異なる制御を実行するための制御Ａ用ネットワークと制御Ｂ用ネットワークとが設けられている。例えば制御Ａ用ネットワークは制御マスタ１００に対して複数のスレーブ２００が、通信線３００によってデイジーチェーン構成で接続されている。制御マスタ１００は、各スレーブ２００への制御情報が書き込まれたフレームを通信線３００に送出する。当該フレームを受信した各スレーブ２００はその制御情報を読み込んで所定の制御を行なうとともに、各スレーブ２００に接続されている端末デバイスからの情報を、当該フレームに書き込んで、次のスレーブ２００に転送する。制御マスタ１００が送信した１つのフレームについて全てのスレーブ２００で読み込み及び書き込みが行われ、再び制御マスタ１００に返送されてくることで、１サイクル分の制御が完了する。制御Ｂ用ネットワークでは、上記と同様の通信制御が別個に実行される。
【００１９】
また、図２に示すネットワークは、２台の制御マスタ１００に複数のＬＡＮスイッチ２５０を通信線３００で接続して構成されている。ＬＡＮスイッチ２５０は周知のように、端末に付与されたＩＤ（ＭＡＣアドレス等）を利用してパケットのスイッチングを実行するデバイスである。これにより、ネットワークに接続されている端末のグループ化が可能となっており、図２では、制御Ａ用の制御マスタ１００により制御される端末はVLAN#1の符号で識別される仮想グループを構成している。ＶＬＡＮの略号は、Virtual LANを表す。
【００２０】
これに対して、本発明の実施形態について例示すれば以下のとおりである。本発明の実施形態に係るデータ転送システム１は、時刻同期機能を有し、タイムテーブルに記載されたスケジュールに応じて所定のポート間でデータ転送を行うデータ転送装置、又は、スケジュールに応じてデータを送信し又は受信するマスタと、当該タイムテーブルを作成し、当該データ転送装置又は当該マスタに対して、当該タイムテーブルを配信するスケジュールサーバと、データを送信受信するスレーブとを有する。
【００２１】
スケジュールサーバは、所定の時刻に所定のマスタ−スレーブ間を接続する情報を、各データ転送装置のタイムテーブルに変換して、各データ転送装置に転送する。データ転送装置又はマスタは、時刻同期機能によって常に時刻の同期が行われ、上記タイムテーブルの内容に応じてポート間のデータ転送経路を切替える。マスタ−スレーブ間では、時刻同期機能によって常に時刻の同期が行われ、上記タイムテーブルの内容に応じて転送フレームを送信、又は受信する。
【００２２】
図３に、本発明の動作の概要の一例を示す。例えば、制御用のフレームを送信するマスタ６０とデータ転送装置１０とが通信線３００によって通信可能に接続されている構成において、これらを時刻同期させて、マスタ６０とデータ転送装置１０による論理的な経路を所定の期間ごとに構成する。つまり、ある時刻になるとあるデータ転送装置１０のあるポートに到着した転送フレームは、一度データ転送装置１０のメモリの所定アドレスにコピーされた後、別のポートに転送する為のメモリの所定アドレスにコピーされることになる。当該所定の期間以外に到着した転送フレームは、データ転送装置１０においてコピーされないようにすることもできる。
【００２３】
これによって、データ転送装置１０において、１入力多出力の論理的なデータ転送装置を作ることによって、論理的な経路で直結された任意の形状のネットワーク経路が構築され、リアルタイム性を担保するマルチキャスト通信を可能とするデータ転送を実現することができる。
【００２４】
これを実現するためには、マスタ６０とデータ転送装置１０との間において、高精度の時刻同期が可能であることが前提となる。１００ｋｍ四方レベルの範囲を必要とする制御システム（電力系統管理システム、鉄道運行管理システム等）を想定すると、例えば、ＧＰＳ（Global Positioning System）を利用した時刻同期等で実現することができる。ただし、ＮＴＰ（Network Time Protocol）、あるいはＩＥＥＥ１５８８を用いたもの等、本発明の実施形態であるデータ転送システム１が適用される制御システムとして要求される時刻同期の精度を担保するものであれば、限定はない。
【００２５】
以上のような構成により、本発明の実施形態に係るデータ転送システムによれば、図３に示すように、ネットワーク内の論理的な経路を時刻単位で変化させることによって、複数のマルチキャスト通信を可能とするリアルタイムなデータ転送が可能となる。
【００２６】
次に、本発明について、その実施形態による実施例の構成に即して説明する。
【００２７】
第一の実施例
図４は、一般的な制御系システムとしてのデータ転送システム１の構成を示す図である。マスタコントローラ６０（第一の通信部。以下、「マスタ６０」という。）は、サーボドライブ、Ｉ／Ｏ、温湿度計、温湿度調整器、インバータ、ステッピングモータ等の被制御対象、又は被制御対象との間に介在するインターフェース装置であるスレーブデバイス７０（第二の通信部。以下、「スレーブ７０」という。）と、制御用イーサネット８０（以下、「制御ＬＡＮ８０」という。）によって、通信可能にカスケード接続されている。
【００２８】
マスタ６０は、制御対象機器への制御命令のリクエストを搭載した転送フレームを送出し、スレーブ７０は、それぞれ各スレーブ単位に割り当てられた転送フレームの領域のデータを読み出し、制御命令によって指定される制御内容を実行し、その実行結果、その他のセンサデータ等を転送フレームに書き込む。スレーブ７０は、当該転送フレームを次のスレーブ７０に順次転送し、最後にマスタ６０に戻す。各データの書き込み、読み込みは、転送フレームをフレーム単位で転送する為、リアルタイム性が保証されたデータ転送が可能となる。この点について具体的には後述する。
【００２９】
スケジュールサーバ２０は、マスタ６０と、イーサネット、ＲＳ−２３２Ｃ等の通信回線によって接続されており、上記の転送フレームへのデータの割り当て領域や、マスタ６０がスレーブ７０にサイクリックに転送する転送フレームの周期を設定する機能を有する。マスタ６０、スレーブ７０、及びスケジュールサーバ２０は、後述するような、通信機能を有するコンピュータとして構成されている。
【００３０】
次に、本実施例の通信ネットワークを介した制御系システムの構成例について説明する。図５は、本実施例の通信ネットワークを介した制御系システムを構成するデータ転送システム１の構成例を示す図である。なお、構成要素のうち、マスタ６０、スレーブ７０、スケジュールサーバ２０については、図４のものと同じである。
【００３１】
データ転送装置１０（データ転送部）は、他のデータ転送装置１０、マスタ６０、及びスレーブ７０を相互に通信可能に接続するネットワーク機器である。図５の構成例では、データ転送装置１０間はスター状のネットワークを構成しているが、本発明はこのネットワーク形態に限られるものではない。またネットワークを構成する通信媒体も特に限定されるものではない。
【００３２】
データ転送装置１０は、スケジュールサーバ２０、マスタ６０、又は制御ＬＡＮ８０と接続される複数のポートを有し、自己の所有するタイムテーブルに従って、所定の時間になったら、２以上のポート間のデータ転送のみを実施することで、論理的にポート間を接続する。
【００３３】
マスタ６０は、ネットワークインターフェースを有し、あらかじめ図５のデータ転送システム１に関して設定されている所定の時間になったら、所定の転送フレームを送信し、あるいは受信する。
【００３４】
制御ＬＡＮ８０は、マスタ６０から受信する転送フレームをスレーブ７０に転送する。スレーブ７０は、受信した転送フレームに含まれる制御命令を読み出し、また転送フレームに制御結果の情報を書き込み、制御ＬＡＮ８０を介して順次接続されているスレーブ７０に転送していく。最後のスレーブ７０は、制御ＬＡＮ８０を介して、転送フレームを、マスタ６０に転送する。
【００３５】
なお、本実施例においては、制御ＬＡＮ８０、およびマスタ６０、データ転送装置１０を接続するネットワーク媒体として、イーサネット、又は広域イーサネット（Wide Area Network、WAN）を例として説明することとするが、特にこのネットワーク媒体に限定されるものではない。また、これらのネットワークには双方向通信を可能とする２以上の物理的又は仮想的な通信線を有するものを含むが、図中においては煩雑さを避けるためにその記載を一本の線で単純化している。
【００３６】
また、図５の構成例において、データ転送装置１０とマスタ６０との間では、高精度の時刻同期が施されているものとする。この時刻同期の方式は、例えばＧＰＳを使った方式、ＮＴＰによる方式、ＩＥＥＥ１５８８に準拠する方式等、必要となる時刻同期の精度を担保するものであれば、限定はない。本実施例については、一例としてＧＰＳを使った時刻同期方式を例として説明する。なお、ＧＰＳを使用した時刻同期方式については、“The Role of GPS in Precise Time and Frequency Dissemination” [online]［平成２５年１月１２日検索］  インターネット、<URL:http://ilrs.gsfc.nasa.gov/docs/timing/gpsrole.pdf>に詳しく記載されている。
【００３７】
なお、以下の説明において、複数のデータ転送装置１０、マスタ６０を互いに識別するために、データ転送装置１０については、ＴＭ＿Ａ、ＴＭ＿Ｂ等の符号を、マスタ６０については、Ｃｏｎｔ＿α、Ｃｏｎｔ＿β等の符号を付すこととする。
【００３８】
次に、本実施例のスケジュールサーバ２０（スケジュール管理部）について説明する。図６は、スケジュールサーバ２０のハードウェア構成例を示す図である。スケジュールサーバ２０は、各種データ演算を実行するためのプロセッサであるＣＰＵ２２、ＣＰＵ２２で実行されるプログラム及び各種データの記憶領域を提供するＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等の記憶デバイスであるメモリ２３、キーボード２４やマウス２５等のデータ入力デバイスを制御する入出力コントローラ２６、各種データ表示を行う表示モニタ２７１を制御するモニタコントローラ２７、及びイーサネットネットワークインターフェースカード（ＮＩＣ）等で構成される通信インターフェース２１を具備する。これらの各部は、バス２８により相互に通信可能に接続されている。スケジュールサーバ２０には、ＨＤＤ（HardDisk Drive）、ＳＳＤ（Solid State Drive）等の補助記憶デバイスを設けることもできる。通信インターフェース２１は、データ転送装置１０とイーサネットで接続されるが、これらに限定されるものではなく、ＲＳ−２３２Ｃ等、その通信媒体や通信手段は問わない。
【００３９】
次に、データ転送装置１０について説明する。図７は、データ転送装置１０のハードウェア構成例を示す図である。データ転送装置１０は、複数のＮＩＣ１１、メモリ１３、ＧＰＳ受信機兼１ＰＰＳ生成器１５、ＰＬＬ周波数シンセサイザ１７、及びマイクロコンピュータ１９（データ転送制御部。以下「マイコン１９」）を具備する。ＮＩＣ１１、メモリ１３（記憶部）、及びＰＬＬ周波数シンセサイザ１７は、マイコン１９とそれぞれ接続されている。ＮＩＣ１１は制御ＬＡＮ８０に応じた構成を有するインターフェースカードであり、制御ＬＡＮ８０を介して他のデータ転送装置１０、スレーブ７０、及びスケジュールサーバ２０と通信可能に接続される。
【００４０】
ＧＰＳ受信機兼１ＰＰＳ生成器１５は、ＧＰＳアンテナＡＮＴと接続され、アンテナＡＮＴを介してＧＰＳ衛星から受信するＧＰＳ信号に基づいて精密な１ＰＰＳ（Pulse Per Second（１秒間隔のパスル））信号を生成し、ＰＬＬ周波数シンセサイザ１７に転送する。ＰＬＬ周波数シンセサイザ１７は、この１ＰＰＳ信号からマイコン１９が必要とするクロック周波数のクロック信号を生成する。この１ＰＰＳ信号に同期したクロック信号を使うことによって、各データ転送装置１０、マスタ６０を互いに時刻同期させて稼動させることが可能となる。
【００４１】
マイコン１９は、接続されている各ＮＩＣ１１で受信された他の機器からのデータを、所定のタイムスケジュールに従ってあて先の機器に接続されているＮＩＣ１１へ出力する機能を、メモリ１３に格納されているプログラムを用いて実現する。このデータ転送機能は、本実施例の制御系システムにおいて、データ転送のリアルタイム性を担保するための主要な機能である。
【００４２】
次に、マスタ６０について説明する。図８は、マスタ６０のハードウェア構成例を示す図である。マスタ６０は、スケジュールサーバ２０と同様に、各種データ演算を実行するためのプロセッサであるＣＰＵ６２、ＣＰＵ６２で実行されるプログラム及び各種データの記憶領域を提供するＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等の記憶デバイスであるメモリ６３、キーボード６６やマウス６７等のデータ入力デバイスを制御する入出力コントローラ６５、各種データ表示を行う表示モニタ６４１を制御するモニタコントローラ６４、及びイーサネットネットワークインターフェースカード（ＮＩＣ）等で構成される通信インターフェース６８を具備する。これらの各部は、バス６９により相互に通信可能に接続されている。通信インターフェース６８は、データ転送装置１０と制御ＬＡＮ８０によって接続される。
【００４３】
次に、マスタ６０に設けられている通信インターフェース６８について説明する。図９は、前述した通信インターフェース６８のハードウェア構成例を示す図である。通信インターフェース６８は、ＮＩＣ６８８、メモリ６８９、ＧＰＳ受信機兼１ＰＰＳ生成器６８２、ＰＬＬ周波数シンセサイザ６８４、及びマイクロコンピュータ６８６（以下「マイコン６８６」）を具備する。ＮＩＣ６８８、メモリ６８９、及びＰＬＬ周波数シンセサイザ６８４は、マイコン６８６とそれぞれ接続されている。ＮＩＣ６８８は制御ＬＡＮ８０に応じた構成を有するインターフェースカードであり、制御ＬＡＮ８０を介してデータ転送装置１０と通信可能に接続される。
【００４４】
マイコン６８６と、ＮＩＣ６８８は、データ転送装置１０へのデータ送信用とデータ転送装置１０からのデータ受信用の２つの接続を有している。周波数シンセサイザ６８４、ＧＰＳ信号兼１ＰＰＳ生成器６８２の機能、作用については、前述の図６に関して説明したマスタ６０の場合と同じである。なお、本実施例においては、通信インターフェース６８について、マイコン６８６を使用して制御する態様で説明しているが、これに限定されるものではない。例えば通信インターフェース６８の機能を、ＦＰＧＡ等を用いて実現しても、本実施例の効果、作用に影響を与えるものではない。
【００４５】
次に、本実施例での制御系システムで使用されるデータフレームの構造について説明する。図１０は、一般的なイーサネットフレームと、２種類の転送フレームを示す図である。イーサネットフレームは、プリアンブル（ＰＡ）６１１、送信先アドレス（ＤＡ）６１２、送信元アドレス（ＳＡ）６１３、タイプ６１４、データ６１５、及びフレームチェックシーケンス（ＦＣＳ）６１６からなる。この一般的なイーサネットフレームの構造については、例えば“Ethernet Technologies” [online]［平成２５年１月１２日検索］インターネット、<http://docwiki.cisco.com/wiki/Ethernet_Technologies>に詳細に記載されているため、ここでは特に説明しない。
【００４６】
本実施例においては、図１０の＃Ａ、＃Ｂで示される２種類の転送フレームを使用するものとしている。これらのフレームは、イーサネットフレームのデータ６１５に格納される。なお、＃Ｂのフレームは、マスタ６０とスレーブ７０との間においてフォーマットが規定されていれば自由に使用してよく、制御の種類に応じて、必要な分だけ用意することができる。＃Ａの転送フレームにおいて、ヘッダ領域６１５１は、マスタ６０がフレームの種類をスレーブ７０に知らせるために使用されるヘッダ領域であり、データ領域６１５２、６１５３は、スレーブ７０用に準備されたフレーム上のデータ領域である。これらの領域に、マスタ６０、又はスレーブ７０がビット単位で制御命令やセンサ情報等のデータを搭載する。このフレーム構成に関しては、例えば、EtherCAT Master Application Developers Manual.Doc: P4500.21 /Rev.1.4 Page20 of 151 [online]［平成２５年１月１２日検索］インターネット、<URL: http://www.esd-electronics-usa.com/Shared/Handbooks/EtherCATMasterDevelopersManual.pdf>に詳しく記載されている。
【００４７】
次に、以上の構成を踏まえて、本実施例のデータ転送システムの作用について、順次説明する。まず、本実施例のデータ転送システム１の初期情報について説明する。図１１は、スケジュールサーバ２０から入力される、本実施例によるリアルタイムデータ転送システム１に関する初期情報を示す初期情報テーブル２３４である。初期情報とは、データ転送システム１において実現されるべき通信ネットワークを表現した基本仕様ともいうべき情報であり、あらかじめデータ転送システム１に要求される仕様に従って設計、作成される。初期情報テーブル２３４は、Ｔ−ＬＡＮ２３４１、マスタ２３４２、制御ＬＡＮ２３４３、通信期間２３４４、及び通信周期２３４５の項目を有する。Ｔ−ＬＡＮ２３４１とは、本実施例の時刻単位で形態を変化するデータ転送システムであり、時分割（time-multiplexed）制御ＬＡＮ（以下「Ｔ−ＬＡＮ」という。）のエントリ番号が入力される。優先度はエントリ番号が若い順に高いものとする。すなわち、Ｔ−ＬＡＮ２３４１が＃１のデータ転送システムと＃２とが競合した場合には、＃１の構成が優先される。
【００４８】
マスタ２３４２、制御ＬＡＮ２３４３の列には、マスタ６０とそのマスタ６０が制御する制御ＬＡＮ８０を識別する文字列をペアで入力する。マスタ６０と制御ＬＡＮ８０によって、所定の時刻にマルチキャスト通信を可能とするＴ−ＬＡＮが構築される。通信期間２３４４、通信周期２３４５は、それぞれ、当該Ｔ−ＬＡＮが有効となる期間とそれを繰り返す周期とを入力する。Ｔ−ＬＡＮ＃１を例として説明すると、マスタ６０（Ｃｏｎｔ＿α）と制御ＬＡＮ８０（ＣＬＡＮ＿１）が、本実施例の広域のリアルタイムデータ転送システム１を構成するのは、５ｍｓの期間であり、それが１０ｍｓ周期で行われることを示す。なお、このＴ−ＬＡＮを構成する装置やネットワークは、それぞれいくつ存在してもよい。
【００４９】
次に、スケジュールサーバ２０の機能について説明する。図１２は、スケジュールサーバ２０のメモリ２３に格納されているソフトウェア構成と、その動作を説明する図である。まず、スケジュールサーバ２０には、キーボード２４、マウス２５を通じて、外部インターフェースドライバ（以下「外部Ｉ／Ｆドライバ」という。）２３１を介して、初期情報設定モジュール２３２に対して、初期システム情報が入力される。外部Ｉ／Ｆドライバ２３１は、スケジュールサーバ２０へのデータ入出力を管理する機能部である。
【００５０】
ここで、入力される初期システム情報とは、データ転送装置１０の切替期間（本実施例では１ｍｓ）、又は繰り返し最大値周期（本実施例では２０ｍｓ）である。なお、１５１８バイト長のフレームを１００Ｍｂｐｓのイーサネットで使う場合、切替期間を最小１２５μ秒程度まで設定することが可能である。繰り返し周期は、本実施例のネットワークを利用する制御系システムの転送フレームの送信周期に依存して設定されることになる。例えば、転送フレームを１秒周期で送信することを必要とする制御系システムがあれば、その最大値は１０００ｍｓとする必要がある。
【００５１】
初期情報設定モジュール２３２は、これらの初期システム情報を外部Ｉ／Ｆドライバ２３１から受信して、例えば図１１に例示した初期情報テーブル２３４に、切替期間２３４６、繰り返し周期２３４７として格納する。初期情報テーブル２３４に記録されるＴ−ＬＡＮ２３４１、マスタ２３４２、及び制御ＬＡＮ２３４３の各項目も、キーボード２４等を介して入力される。
【００５２】
次に、スケジュールサーバ２０では、リソース割当モジュール２３３が、初期情報テーブル２３４を参照して、各ネットワーク（Ｔ−ＬＡＮ＃１等）へのネットワークリソースの割り当てを実施する。リソース割り当ての成否は、外部Ｉ／Ｆドライバ２３１を介して、スケジュールサーバ２０に通知され、モニタ２７１等に出力される。リソース割り当てに成功した場合、リソース割当モジュール２３３によって、後述する全体タイムテーブル２３５（全体構成情報記憶部）、個別タイムテーブル２３６（個別スケジュール情報）、及び配布時刻スケジュール２３７のファイルが作成される。これらのファイルは、メモリ２３に格納される。
【００５３】
タイムテーブル配信モジュール２３８は、スケジュールサーバ２０の時刻情報を監視し、配布時刻スケジュール２３７に記載されている配布時刻になったと判定した場合、個別タイムテーブル２３６を、ＮＩＣ  Ｉ／Ｆドライバ２３９を介して、データ転送装置１０又はマスタ６０に配信する。この配信方法に関しては特に限定はなく、ネットワーク経由で行っても、オフラインで実施してもよい。以上のようにして、スケジュールサーバ２０において、各制御系システムが利用するデータ転送システムに必要なネットワークリソースの割り当てと、それにより各データ転送システムが構成されることとなるタイムスケジュールが設定される。
【００５４】
次に、上記したリソース割当モジュール２３３によるリソース割当処理について説明する。図１３は、リソース割当モジュール２３３によるデータ処理を例示するフローチャートである。リソース割当処理は、例えばスケジュールサーバ２０が起動された後開始し（Ｓ１００）、その稼働中、キーボード２４等を通じて新規リソース割当のリクエストを受信するのを待機する（Ｓ１０１、Ｎｏ）。
【００５５】
リソース割当モジュール２３３が新規のＴ−ＬＡＮに対するリクエストを確認すると（Ｓ１０１、Ｙｅｓ）、初期情報テーブル２３４を参照した後、当該リクエストを入力し（Ｓ１０２）、全体タイムテーブル２３５にエントリを追加する（Ｓ１０３）。次に、リソース割当モジュール２３３は、リクエストされたＴ−ＬＡＮについてリソース割り当てが可能かどうかを判断する（Ｓ１０４）。
【００５６】
Ｓ１０４での判断処理においては、例えば、同時刻に２以上の異なるＴ−ＬＡＮが同じネットワークリソースを使うこととなる場合には、リソース割り当てが不可能となる旨の判断が行われることになる。但し、Ｔ−ＬＡＮが異なる経路で設定できる場合や、時刻をずらすことでリソース割り当てが可能となる場合は、当該競合しているＴ−ＬＡＮに対してリソース割り当て可能となる。
【００５７】
リソース割り当ての可否を判定する方法としては、各種のアルゴリズムを利用することができるが、ここではダイクストラ法を一例として説明する。図５に示すＴＭ＿Ａ、ＴＭ＿Ｂ、ＴＭ＿Ｃ、及びＴＭ＿Ｄの４つのデータ転送装置１０からなるネットワークを考えると、同時刻においてデータ転送装置１０間のネットワークが同時に使用されないようにリソース割り当てをすればよい。ダイクストラ法を適用するに際しては、各データ転送装置１０間のネットワークコストの初期値を１と設定する。勿論、１以外の値を使って、ネットワークの利用頻度を変更させるようにしてもよい。また、ある時刻において、各データ転送装置１０間のネットワークが使用されている場合は、コストを無限大（以下「∞」と記載）とする。
【００５８】
図１１の初期情報テーブル２３４に示すＴ−ＬＡＮ＃１を構成する場合、ＴＭ＿ＡからＴＭ＿Ｂに到達する経路を算出する必要があるが、この場合ＴＭ＿ＡとＴＭ＿Ｂを直結するネットワークを利用すると最小コストは１となるので、この経路で確定する。次にＴ−ＬＡＮ＃２を構成する場合、すでにＴＭ＿ＡとＴＭ＿Ｂを直結する最小コストは∞となっているので、これを使うことはできない。ＴＭ＿ＡとＴＭ＿Ｃを直結するコストは１であり、またＴＭ＿ＡとＴＭ＿Ｄを直結するコストも１である。ＴＭ＿ＣとＴＭ＿Ｂを直結するコストも１であるので、ＴＭ＿Ａ、ＴＭ＿Ｃ、ＴＭ＿Ｂを経由するコストは、合計で２となる。次に、ＴＭ＿ＤとＴＭ＿Ｃを直結するコストは１となるので、ＴＭ＿Ａ、ＴＭ＿Ｄ、ＴＭ＿Ｃを経由するコストはこの段階で２となり、ＴＭ＿ＡとＴＭ＿Ｃを直結するコストである１より大きくなるので採用できない。ＴＭ＿Ａ、ＴＭ＿Ｄ、ＴＭ＿Ｂを経由するコストは２となるので、この場合、ＴＭ＿Ａ、ＴＭ＿Ｃ、ＴＭ＿Ｂを経由する経路と、ＴＭ＿Ａ、ＴＭ＿Ｄ、ＴＭ＿Ｂを経由する経路のどちらを採用してもよい。ここでは同じコストであれば、最初に見つかった方の経路を採択するアルゴリズムを採用する。最後に、Ｔ−ＬＡＮ＃３を構成する場合、既にＴＭ＿ＡとＴＭ＿Ｂを直結する経路と、ＴＭ＿ＡとＴＭ＿Ｃを直結する経路はコスト∞であるので、採用できない。そこで、ＴＭ＿ＡとＴＭ＿Ｄを直結する経路がコスト１で成立するので、これを採用する。上記の３つの経路は、いずれの時刻においても成立するため、このまま固定することになる。後述する図２４に示すような変形例の場合には、ＴＭ＿Ｂ、ＴＭ＿Ｃ間のネットワーク経路の利用が重複するため、同じ時刻にリソース割り当ては不可能となる。この場合には、リソースを割り当てる時刻をずらして、割り当てが可能となるかを調べる（Ｓ１０５）。この方法については後述する。
【００５９】
Ｓ１０４で割り当てが可能である場合は（Ｓ１０４又はＳ１０５、Ｙｅｓ）、リソース割当モジュール２３３は、全体タイムテーブル２３５へのエントリ追加を確定し、個別タイムテーブル２３６を作成する（Ｓ１０６）。その後、リソース割当モジュール２３３はＳ１０１に戻って新規リクエストを待機する。一方、リソース割り当てが不可能であると判定された場合には（Ｓ１０５、Ｎｏ）、リソース割当モジュール２３３は、全体タイムテーブル２３５へのエントリを削除し、リソース割り当てが不可能である旨をスケジュールサーバ２０のモニタ２７１等を通じて出力する（Ｓ１０７）。Ｓ１０１において更なるＴ−ＬＡＮの追加リクエストが存在しないと判定した場合は（Ｓ１０１、Ｎｏ）、リソース割当モジュール２３３は処理を終了する（Ｓ１０８）。以上のリソース割当処理により、ネットワークを使用しようとする複数のデータ通信システム（制御系システム）に対して効率的なリソース割り当てを行うことができる。
【００６０】
次に、上記のリソース割当処理によって作成される全体タイムテーブル２３５について説明する。図１４は、本実施例における全体タイムテーブル２３５の構成例を示す図である。図１１に例示した初期情報テーブル２３４に記録されているリアルタイム性を保証するデータ転送システム１０の初期情報に基づき、まずＴ−ＬＡＮ＃１の情報が入力される。すると、図１２に示すリソース割当モジュール２３３は、Ｔ−ＬＡＮ＃１のマスタ６０であるＣｏｎｔ＿αと、制御対象のＬＡＮであるＣＬＡＮ＿１を接続する経路を探す。この場合、図５のネットワーク構成を参照すると、Ｃｏｎｔ＿α−ＴＭ＿Ａ−ＴＭ＿Ｂ−ＣＬＡＮ＿１の経路が利用可能であるので、この経路を確定する。次に、Ｔ−ＬＡＮ＃１の通信期間１１４０、通信周期１１５０と、繰り返し最大値周期（２０ｍｓ）を考慮して、全体タイムテーブル２３５に記録する（符号２３５１）。なお、全体タイムテーブル２３５において、通信時刻の０００〜０１９は、各データ転送装置１０と各マスタ６０で同期している時刻であり、具体的には、例えば「０１１」とは、１２時３４分５６．０１１秒、同分５６．０３１秒、同分５６．０５１秒のように、２０ｍｓ間隔に繰り返される時刻を示すものである。
【００６１】
次に、初期情報としてＴ−ＬＡＮ＃２の情報が入力されると、リソース割当モジュール２３３は、マスタ６０であるＣｏｎｔ＿βと制御対象のＬＡＮであるＣＬＡＮ＿２を接続する経路を探す。この場合、図５のネットワーク構成を参照すると、同じ時刻にＴ−ＬＡＮ＃１がＴＭ＿Ａ−ＴＭ＿Ｂを利用するのでこの経路は使えない。そこで、リソース割当モジュール２３３は、前記したダイクストラ法によりＣｏｎｔ＿β−ＴＭ＿Ａ−ＴＭ＿Ｃ−ＴＭ＿Ｂ−ＣＬＡＮ＿１の経路を確定して、全体タイムテーブル２３５に記録する（符号２３５２）。
【００６２】
次に、Ｔ−ＬＡＮ＃３の情報が入力されると、同様にして、リソース割当モジュール２３３は、Ｃｏｎｔ＿γとＣＬＡＮ＿４を接続する経路を探す。その結果、リソース割当モジュール２３３は、Ｃｏｎｔ＿β−ＴＭ＿Ｄ−ＣＬＡＮ＿４の経路を確定して、全体タイムテーブル２３５に記録する（符号２３５３）。
【００６３】
次に、リソース割当モジュール２３３は、全体タイムテーブル２３５に基づき、データ転送装置１０、又はマスタ６０用の個別タイムテーブル２３６を作成する。以上のようにして、全体タイムテーブル２３５に、初期情報テーブル２３４の通信期間２３４４、通信周期２３４５の条件を満たしたＴ−ＬＡＮ＃１〜＃３が設定される。
【００６４】
次に、個別タイムテーブル２３６について説明する。図１５は、ＴＭ＿Ａで特定されるデータ転送装置１０のための個別タイムテーブル２３６を作成するためのＴＭ＿Ａに接続されるデータ転送装置１０の構成図である。図中、符号０〜５は、データ転送装置ＴＭ＿Ａが有するＮＩＣ１１のポート番号を示している。また、図１６は、図１５の構成図をマトリックスで示す図である。リソース割当モジュール２３３は、全体タイムテーブル２３５から、ＴＭ＿Ａの記載のある記述を読み取る。図１４に例示する本実施例の全体タイムテーブル２３５には、ＴＭ＿Ａが割り当てられているＴ−ＬＡＮとして、＃１（Ｃｏｎｔ＿α−ＴＭ＿Ａ−ＴＭ＿Ｂ−ＣＬＡＮ＿１）と、＃２（Ｃｏｎｔ＿β−ＴＭ＿Ａ−ＴＭ＿Ｃ−ＴＭ＿Ｂ−ＣＬＡＮ＿２）の２つがあり、ＴＭ＿Ａは、Ｃｏｎｔ＿αとＴＭ＿Ｂのペアと、Ｃｏｎｔ＿βとＴＭ＿Ｃのペアを中継していることが分かる。この情報を図１６のマトリックスにあてはめることで、図１５のペアとなるべきポート番号が明らかになる。ここでは、「１−２」と「３−５」のポートペアが抽出されることになる。
【００６５】
図１７に、本実施例での個別タイムテーブル２３６を例示している。図１７中で、（ＴＭ＿Ａ用）は、ＴＭ＿Ａ用の個別タイムテーブル２３６と対応するポート番号のペアを示す図であることを表している。「１−２」の表現は、ＴＭ＿Ａのポート１とポート２は、Ｔ−ＬＡＮ＃１を実現する為に、時刻０００から００４の間と０１０から０１４の間に論理的に接続されることを示している。また同様に、ＴＭ＿Ａについて、「３−５」の表現は、ポート３とポート５は、Ｔ−ＬＡＮ＃２を実現する為に、時刻０００から００３の間に論理的に接続されることを示している。
【００６６】
同様に、図１７の（ＴＭ＿Ｂ用）は、ＴＭ＿Ｂ用の個別タイムテーブル２３６と対応するポート番号のペアを示す図である。「５−１」の表現は、ポート５とポート１は、Ｔ−ＬＡＮ＃１を実現するために、時刻０００から００４の間と０１０から０１４の間に論理的に接続されることを示している。また、「３−２」の表現は、ポート３とポート２は、Ｔ−ＬＡＮ＃２を実現するために、時刻０００から００３の間に論理的に接続されることを示している。
【００６７】
また、図１７の（ＴＭ＿Ｃ用）は、ＴＭ＿Ｃ用の個別タイムテーブル２３６と対応するポート番号のペアを示す図である。「２−３」の表現は、ポート２とポート３は、Ｔ−ＬＡＮ＃２を実現するために、時刻０００から００３の間に論理的に接続されることを示している。
【００６８】
また、図１７の（ＴＭ＿Ｄ用）は、ＴＭ＿Ｄ用の個別タイムテーブル２３６と対応するポート番号のペアを示す図である。「５−４」の表現は、ポート５とポート４は、Ｔ−ＬＡＮ＃３を実現するために、時刻０００、００５、０１０、０１５から１ｍｓの間に論理的に接続されることを示している。ＴＭ＿Ａ〜ＴＭ＿Ｄの各データ転送装置１０は、図１７に例示する個別タイムテーブル２３６に設定されているようにポート間を接続することにより、Ｔ−ＬＡＮ＃１〜＃３で特定されるデータ転送システムを所望の条件を満たすように設定することができる。
【００６９】
次に、マスタ６０に関する個別タイムテーブル２３６について説明する。図１８は、図５に例示されているマスタ６０としてのＣｏｎｔ＿α、Ｃｏｎｔ＿β、Ｃｏｎｔ＿γがそれぞれ、制御対象であるＣＬＡＮ＿１，ＣＬＡＮ＿２，ＣＬＡＮ＿３へ転送フレームを送出することを許容される期間を示す個別タイムテーブル２３６の構成例である。各マスタ６０については、図１７に例示する各データ転送装置１０について設定された通信期間に対応してポートがオープンされるように、個別タイムテーブル２３６が作成されている。この個別タイムテーブル２３６は、スケジュールサーバ２０によって、所定のタイミングで各マスタ６０に配信される。
【００７０】
次に、データ転送装置１０の機能を実現するソフトウェア構成とその動作について説明する。図１９は、データ転送装置１０に搭載されているマイコン１９のソフトウェアの構成と動作を示す図である。本実施例におけるデータ転送装置１０の機能は、主として個別タイムテーブル受信モジュール１９２及び時刻ベース転送切替モジュール１９３とによって実現される。個別タイムテーブル受信モジュール１９２は、スケジュールサーバ２０から個別タイムテーブル２３６、配布時刻スケジュール２３７、又はその配布時刻スケジュール２３７に記載されたタイミングで起動する個別タイムテーブルを、ネットワーク経由で、又はオフラインで受信する。時刻ベース転送切替モジュール１９３は、個別タイムテーブル２３６と時刻同期された時刻を使って所定のポートのビットを読み取り、別のポートに書き出す処理を実行する。また、配布時刻スケジュール２３７に記載された時刻が到来した場合、個別タイムテーブル２３７を新しい個別タイムテーブル２３７に変更し、古いものを廃棄する処理を実行する。なお、配布時刻スケジュール２３７は、例えばメモリ１３に、マイコン１９が定期的に個別タイムテーブル２３６の更新を実行すべき時刻情報として格納しておけばよい。
【００７１】
次に、データ転送装置１０の時刻ベース転送切替モジュール１９３が実行する処理について説明する。図２０は、時刻ベース転送切替モジュール１９３の動作を示すフローチャートである。時刻ベース転送切替モジュール１９３は、データ転送装置１０の起動とともに処理を開始し（Ｓ１９３０）、ＧＰＳ信号と時刻同期されたクロックによって起動するマイコン１９のタイマー割り込みを確認する（Ｓ１９３１）。マイコン１９のタイマー割り込みを検知すると、時刻ベース転送切替モジュール１９３は、現在時刻を取得し（Ｓ１９３２）、個別タイムテーブル２３６を参照する。時刻ベース転送切替モジュール１９３は、個別タイムテーブル２３６の内容と対照して、フレームが到着したのが個別タイムターブル２３６で割り当てられているポートであるか判定する（Ｓ１９３５）。割り当てられているポートであると判定した場合（Ｓ１９３５、Ｙｅｓ）、時刻ベース転送切替モジュール１９３は、指定された一方のポートから作られる１以上の転送フレームが完成しているかどうかを確認する（Ｓ１９３４）。指定された一方のポートから作られる１以上の転送フレームが完成していると判定した場合（Ｓ１９３４、Ｙｅｓ）、時刻ベース転送切替モジュール１９３は、指定された他方のポート用のメモリに転送フレームをコピーする（Ｓ１９３４１）。これを次のタイマー割り込みが発生するまで繰り返す（Ｓ１９３１）。一方、データを受信したのが個別タイムターブル２３６で割り当てられているポートでないと判定した場合（Ｓ１９３５、Ｎｏ）、時刻ベース転送切替モジュール１９３は、受信した転送フレームをメモリにコピーすることなく廃棄して（Ｓ１９３６）、タイマー割り込み確認ステップに戻る（Ｓ１９３１）。
【００７２】
なお、データ転送装置１０のメモリ１３には、それぞれのＮＩＣ１１ごとに、インカミング転送フレーム及びアウトゴーイング転送フレーム用のメモリ領域（第一の記憶領域、第二の記憶領域）が確保されており、マイコン１９は、自身の内蔵メモリ内にそれぞれの転送フレーム用メモリ領域のアドレスを格納している。これにより、マイコン１９は、個別タイムテーブル２３６によって指定される通信期間に、接続されているべきポート間で到着した転送フレームをコピーすることでポート間の接続を確立することができる。
【００７３】
次に、マスタ６０に搭載されている通信インターフェース６８の機能を実現するためのソフトウェア構成とその動作について説明する。図２１は、マスタ６０の通信インターフェース６８が有するマイコン６８６が実行するソフトウェアの構成と動作を示す図である。本実施例における通信インターフェース６８の機能は、主として個別タイムテーブル受信モジュール６８６２及び時刻ベース転送切替モジュール６８６３とによって実現される。
【００７４】
個別タイムテーブル受信モジュール６８６２は、スケジュールサーバ２０から個別タイムテーブル２３６、配布時刻スケジュール２３７、又はその配布時刻スケジュール２３７に記載されたタイミングで起動する個別タイムテーブル２３６をネットワーク経由で受信する。時刻ベースフレーム送出モジュール６８６３は、個別タイムテーブル２３６と時刻同期された時刻を使って、所定のメモリ領域に格納されている転送フレームを読み取りＮＩＣ６８８に転送フレームで送出し、ＮＩＣ６８８は同じく転送フレーム単位でネットワークに送出する。また、時刻ベースフレーム送出モジュール６８６３は、配布時刻スケジュール２３７に記載された時刻が到来した場合、個別タイムテーブル２３６を新しい個別タイムテーブル２３６に更新し、古いものを廃棄する。なお、配布時刻スケジュール２３７は、例えばメモリ６８９に、マイコン６８６が定期的に個別タイムテーブル２３６の更新を実行すべき時刻情報として格納しておけばよい。
【００７５】
図２２は、メモリ６８９内に構成されるインカミング転送フレーム用及びアウトゴーイング転送フレーム用のメモリ領域６８９１を示す模式図である。ＣＬＡＮのポートがオープンするタイミングで、ＣＬＡＮ用アウトゴーイング転送フレーム用のメモリ領域６８９１１から転送フレーム単位で情報が転送される。また、同じようにＣＬＡＮ用インカミング転送フレーム用のメモリ領域６８９１２から転送フレーム単位で情報が格納される。
【００７６】
図２３は、時刻ベースフレーム送出モジュール６８６３の動作を例示するフローチャートである。時刻ベースフレーム送出モジュール６８６３は、通信インターフェース６８の起動とともに処理を開始し（Ｓ６８６３０）、ＧＰＳ信号と時刻同期されたクロックによって起動するマイコン６８６のタイマー割り込みを確認する（Ｓ６８６３１）。マイコン６８６のタイマー割り込みを検知すると、時刻ベースフレーム送出モジュール６８６３は、現在時刻を取得し（Ｓ６８６３２）、個別タイムテーブル２３６を参照する（Ｓ６８６３３）。
【００７７】
現在時刻と個別タイムテーブル２３６の内容とを比較して個別タイムターブル２３６で割り当てられている時刻であると判定した場合（Ｓ６８６３４、Ｙｅｓ）、時刻ベースフレーム送出モジュール６８６３は、１つ以上の転送フレームが完成しているか判定し（Ｓ６８６３５）、完成していると判定した場合（Ｓ６８６３５、Ｙｅｓ）、指定されたＣＬＡＮ用アウトゴーイング転送フレーム用のメモリ領域６８６９１に格納された転送フレームをＮＩＣ６８８に転送し、あるいはＮＩＣ６８８から転送されてきた転送フレームをＣＬＡＮ用インカミング転送フレーム用のメモリ領域６８６９２に格納する（Ｓ６８６３６）。時刻ベースフレーム送出モジュール６８６３は、この処理を次のタイマー割り込み（Ｓ６８６３１）が発生するまで繰り返す。一方、個別タイムターブル２３６で割り当てられている時刻でないと判定した場合（Ｓ６８６３４、Ｎｏ）、時刻ベースフレーム送出モジュール６８６３は、転送フレームを廃棄して（Ｓ６８６３７）、Ｓ６８６３１の処理に戻る。このようにして、マスタ６０の通信インターフェース６８では、個別タイムテーブル２３６に設定されている所定の期間に所定のデータ転送装置１０との間でネットワークの接続が確立される。
【００７８】
図２４は、本実施例における構築情報（初期情報）によって構成されるＴ−ＬＡＮ＃１〜＃３を示す図である。本実施例においては、いずれのＴ−ＬＡＮもその経路が重複していないので、Ｔ−ＬＡＮが設定される時刻の調整を考慮する必要はない。なお、本実施例においては、時刻同期の方法としてＧＰＳの利用を想定しているが、これに限定するものではなく、ネットワーク同期方式であるＮＴＰやＩＥＥＥ１５８８などを用いてもよい。あるいは、本実施例の個別タイムテーブル２３６を用いた時刻同期を行ってもよい。例えば、スケジュールサーバ２０から、通信時刻０００から１ｍｓの間は、例えば、時刻同期用のトリガ信号を全てのデータ転送装置１０およびマスタ６０が受信できるように、事前に個別タイムテーブル２３６に記載しておくようにする。各データ転送装置１０、マスタ６０では、そのトリガを受信することによって、互いに同期するように時刻を補正することができる。
【００７９】
第二の実施例
次に、本発明の第二の実施例に係るデータ転送システム１について説明する。図２５は、本実施例によるデータ転送システム１の構成を例示する図であり、第一の実施例のＴ−ＬＡＮ＃３の構成が変更されている。
【００８０】
本構成のＴ−ＬＡＮ＃３は、第一の実施例でのＴ−ＬＡＮ＃３に対して、制御対象としてＣＬＡＮ５、ＣＬＡＮ６が追加されており、Ｃｏｎｔ＿γ−ＣＬＡＮ４−ＣＬＡＮ５−ＣＬＡＮ６で構成されるネットワークである。この場合、ＴＭ＿ＣとＴＭ＿Ｂとの間の経路を、Ｔ−ＬＡＮ＃２とＴ−ＬＡＮ＃３とが共用することになるため、両方のネットワークが同じ時刻にネットワークリソースを共用することができない点で第一の実施例とは異なる。また、Ｔ−ＬＡＮ＃３の転送フレームは、ＣＬＡＮ４からＣＬＡＮ５を経由してＣＬＡＮ６に至るために、ＣＬＡＮ４、ＣＬＡＮ５はそれぞれ２つのポートを使う点も第一実施例とは異なる。
【００８１】
図２６は、図１４に例示した第一実施例における全体タイムテーブル２３５の作成アルゴリズムを使って再構成した、本実施例の全体タイムテーブル２３５である。このように、Ｔ−ＬＡＮ＃３の構成タイミングを４ｍｓずらすことによって、ＴＭ＿ＣとＴＭ＿Ｂの経路が共用される問題は回避できることになる。割り当ての可否を判定する方法としては、各種のアルゴリズムを用いることができるが、ここでは第一実施例に関して説明したダイクストラ法を一例として説明する。
【００８２】
本実施例では、図２５に示すＴＭ＿Ａ、ＴＭ＿Ｂ、ＴＭ＿Ｃ、ＴＭ＿Ｄの各データ転送装置１０からなるネットワークにおいて、同時刻においてデータ転送装置１０間のネットワークが同時に使用されないようにリソースの割り当てをすればよい。ダイクストラ法を適用するに際して、各データ転送装置１０間のネットワークコストの算定は、第一実施例で説明した通りである。
【００８３】
まず、図２６に示すＴ−ＬＡＮ＃１を構成する場合、ＴＭ＿ＡからＴＭ＿Ｂに到達する経路を算出する必要があるが、この場合ＴＭ＿ＡとＴＭ＿Ｂを直結するネットワークを利用すると最小コストは１となるので、この経路で確定する。
【００８４】
次に、Ｔ−ＬＡＮ＃２を構成する場合、すでにＴＭ＿ＡとＴＭ＿Ｂを直結する最小コストは∞となっているので、これを使うことはできない。ＴＭ＿ＡとＴＭ＿Ｃを直結するコストは１であり、またＴＭ＿ＡとＴＭ＿Ｄを直結するコストも１である。ＴＭ＿ＣとＴＭ＿Ｂを直結するコストも１であるので、ＴＭ＿Ａ、ＴＭ＿Ｃ、ＴＭ＿Ｂを経由するコストは、合計で２となる。次に、ＴＭ＿ＤとＴＭ＿Ｃを直結するコストは１となるので、ＴＭ＿Ａ、ＴＭ＿Ｄ、ＴＭ＿Ｃを経由する場合は、この段階で２となり、ＴＭ＿ＡとＴＭ＿Ｃを直結するコストである１より大きくなるので採用できない。ＴＭ＿Ａ、ＴＭ＿Ｄ、ＴＭ＿Ｂを経由するコストは２となるので、この場合、ＴＭ＿Ａ、ＴＭ＿Ｃ、ＴＭ＿Ｂを経由する経路と、ＴＭ＿Ａ、ＴＭ＿Ｄ、ＴＭ＿Ｂを経由する経路のどちらを採用してもよいこととなる。ここでは、２つの経路が同じコストであれば、最初に見つかった方の経路を採択するアルゴリズムを採用する。
【００８５】
次に、Ｔ−ＬＡＮ＃３の構成を考える。Ｔ−ＬＡＮ＃３ではＴＭ＿Ｄ、ＴＭ＿Ｃ、ＴＭ＿Ｂの順番で接続する必要があるため、ＴＭ＿ＤとＴＭ＿Ｃが接続され、かつ同時に、ＴＭ＿ＣとＴＭ＿Ｂが接続されることが条件と考えればよい。ＴＭ＿ＤとＴＭ＿Ｃを接続するには、これを直結するコストが１となるので、確定的にこの経路で決定する。しかし、ＴＭ＿ＣからＴＭ＿Ｂに到達する経路については、ＴＭ＿ＣとＴＭ＿Ｂのコストが∞であり、ＴＭ＿ＣとＴＭ＿Ａのコストも∞であり、またＴＭ＿ＡとＴＭ＿Ｂのコストも∞であるので、同じ時刻にＴ−ＬＡＮ＃３を、Ｔ−ＬＡＮ＃１、Ｔ−ＬＡＮ＃２と併存させる方法はない。
【００８６】
そこで、すでに成立しているＴ−ＬＡＮ＃１及びＴ−ＬＡＮ＃２のスケジュールを固定したまま、Ｔ−ＬＡＮ＃３が成立し得る時刻の検索を開始する。Ｔ−ＬＡＮ＃３の通信時刻を１ｍｓずつずらしながら、対応するＴ−ＬＡＮ＃１及びＴ−ＬＡＮ＃２の構成が設定されていない時間を検索すると、００４の時刻においてＴ−ＬＡＮ＃２が設定されていないことが検知できる。この時刻において、ＴＭ＿ＣからＴＭ＿Ｂに到達する経路については、ＴＭ＿ＣとＴＭ＿Ｂのコストが１であり、ＴＭ＿ＣとＴＭ＿Ａのコストも１であるが、ＴＭ＿ＡとＴＭ＿Ｂのコストは∞のままであるので、ＴＭ＿ＣとＴＭ＿Ｂを直結するコストが１となりこの経路で確定する。仮に時刻００４において、Ｔ−ＬＡＮ＃３が成立した場合に、要求される５ｍｓ周期で繰り返し設定したとしても、Ｔ−ＬＡＮ＃３が成立するかどうかを、上記のようにして全て調べる。その結果、Ｔ−ＬＡＮ＃３がＴ−ＬＡＮ＃１及びＴ−ＬＡＮ＃２と競合することなく成立すると判断された場合、全体タイムテーブル２３５のエントリを確定することとなる。なお、上記のようにしてＴ−ＬＡＮの通信時刻をシフトしてもネットワークリソースの競合を解消することができない場合には、スケジュールサーバ２０は、当該Ｔ−ＬＡＮを設定することができない旨の情報を、表示モニタ２７１等を通じて出力することができる。
【００８７】
以上のようにして全体タイムテーブル２３５が設定されたことにより、本実施例では、図２７に例示する個別タイムテーブル２３６が作成される。すなわち、データ転送装置ＴＭ＿Ｂ用の個別タイムテーブル２３６としては、Ｔ−ＬＡＮ＃３用としてポート３とポート６を接続するエントリが追加されることになる。また、データ転送装置ＴＭ＿Ｃ用の個別タイムテーブル２３６としては、ポート１とポート４、ポート３とポート６を接続するエントリが追加されることになる。また、データ転送装置ＴＭ＿Ｄ用の個別タイムテーブル２３６としては、ポート３とポート６を接続するエントリが追加されることになる。さらに、Ｔ−ＬＡＮ＃３のマスタ６０であるＣｏｎｔ＿γについては、図２７に例示するように、全体タイムテーブル２３５においてＴ−ＬＡＮ＃３が構成されるタイミングで、転送フレームを送出することが許容される（ポートがオープンとなる）内容が記録される。
【００８８】
本実施例によれば、時間的に複数の制御系システムが競合してリソースの割り当てが行えない場合にも、優先度が低い制御系システムの構成タイミングを他の制御系システムに対してシフトさせることにより、ネットワークリソースの制限内で可能な限りの数の制御系システムを、リアルタイム性を担保しつつ構成させることができる。これにより、ハードウェアとしてのネットワークを複数のリアルタイム制御系システムにより共用することが可能となり、運用コストの低減が可能となる。
【００８９】
第三の実施例
次に、本発明の第三の実施例について説明する。第三の実施例は、本発明のデータ転送システム１を、鉄道運行管理システムに適用した事例である。図２８は、本実施例の鉄道運行管理システムの構成例を示す図である。同図に示すように、マスタ６０（Ｃｏｎｔ＿α）を含むＴ−ＬＡＮ＃１は、リング状の鉄道路線の運行管理を行うための情報伝送を担当しており、マスタ６０（Ｃｏｎｔ＿β）を含むＴ−ＬＡＮ＃２は、当該リング状の鉄道路線の一部を共用する別の鉄道路線の運行管理を行うための情報伝送を担当している。ここで、マスタ６０は、各鉄道路線に設置された信号７１、ポイント７２を制御する。
【００９０】
本実施例においては、ネットワークは、鉄道路線の路線形状とは無関係に敷設されているが、ネットワークに含まれる全てのデータ転送装置１０は、スケジュールサーバ２０、マスタ６０からいずれかのデータ転送装置１０を経由して、信号７１、ポイント７２に転送フレームを届けることができる。転送フレームは、路線単位で、時刻分割して所定の路線用の信号７１又はポインタ７２に届けられるため、ネットワークを路線毎に設置する必要はなく、ネットワークの経路リソースを有効に活用することができる。また、新しい路線が作られた場合であっても、その路線専用のネットワークを敷設する必要はなく、設定によって所望の運行管理用ネットワークを構成することが可能となる。本実施例が、第一、第二の実施例と異なる点は、ＥｔｈｅｒＣａｔと異なり、転送フレームをマスタ６０に戻す必要がないことである。各マスタ６０から送信される転送フレームは、スレーブである信号７１、ポイント７２に転送されて終了する。従って、転送フレームは各データ転送装置１０において複製して、転送することで、各鉄道路線用のネットワークのマルチキャストを実現することができる。本実施例では、Ｔ−ＬＡＮ＃１とＴ−ＬＡＮ＃２とが交互に１０ｍｓ単位でネットワークに割り当てられる。
【００９１】
図２９に、本実施例における全体タイムテーブル２３５の構成例を示している。図２９は２０ｍｓの期間におけるネットワーク上のデータ転送システム構成を示しており、ここでは、前記のように、Ｔ−ＬＡＮ＃１とＴ−ＬＡＮ＃２とが１０ｍｓずつ交互に構成することが示されている。
【００９２】
図３０には、図２９の全体タイムテーブル２３５に基づく個別タイムテーブル２３６の構成例が、データ転送装置ＴＭ＿Ｄ、ＴＭ＿Ｇ、及びＴＭ＿Ａについて示されている。すなわち、図３０では、図２８に例示するＣｏｎｔ＿αをマスタ６０とするＴ−ＬＡＮ＃１を構成するために、時刻０００〜００９の期間には、ＴＭ＿Ｄのポート間２−４、２−５、２−６が接続され、ＴＭ＿Ｅ、ＴＭ＿Ｆを経由して、ＴＭ＿Ｇではポート間３−１が接続されている。また、図２８に例示するＣｏｎｔ＿βをマスタ６０とするＴ−ＬＡＮ＃２を構成するために、時刻０１０〜０１９の期間にはＴＭ＿Ｄのポート間３−５、３−６が接続され、ＴＭ＿Ｅ、ＴＭ＿Ｆを経由して、ＴＭ＿Ｇではポート間３−２が、ＴＭ＿Ｃを経由してＴＭ＿Ａではポート間１−２が接続されている。
【００９３】
本発明の実施形態によれば、データ転送装置１０及びマスタ６０は、スケジュールサーバ２０から配信されたスケジュールに応じて指定の時刻に指定の経路を構築することができる。各データ転送装置１０及びノードは転送フレームを、バッファリングを行わない制御フレーム単位で転送するため、リアルタイム性が保証されたデータ転送が可能となる。
【００９４】
また、本発明によれば、データ転送装置１０は、一入力多出力のデータ転送を行うことによって、リアルタイム性が保証されたマルチキャストのデータ転送を実現することができる。
【００９５】
また、本発明によれば、時刻ごとにデータ転送装置１０によって転送フレームの経路を切り換えることによって、周期的に形態の異なるマルチキャスト通信を実現することができる。
【符号の説明】
【００９６】
１  データ転送システム    １０  データ転送装置    １１  ＮＩＣ
１３  メモリ    １５  ＧＰＳ受信機兼１ＰＰＳ生成器
１７  ＰＬＬ周波数シンセサイザ１７    １９  マイコン
２０  スケジュールサーバ
２１  ネットワークインターフェースカード    ２２  ＣＰＵ
２３  メモリ    ２４  キーボード    ２５  マウス
２６  入出力コントローラ    ２７  モニタコントローラ
６０  マスタ    ６１  ネットワークインターフェースカード
６２  ＣＰＵ    ６３  メモリ    ６８  ネットワークインターフェースカード
７０  スレーブ    ８０  制御ＬＡＮ
１９２  個別タイムテーブル受信モジュール
１９３  時刻ベース転送切替モジュール
２３２  初期情報設定モジュール    
２３４  初期情報テーブル２３４    ２３３  リソース割当モジュール
２３５  全体タイムテーブル    ２３６  個別タイムテーブル
２３７  配布時刻スケジュール    ２３８  タイムテーブル配信モジュール
２３９  ＮＩＣ  Ｉ／Ｆドライバ
６８２  ＧＰＳ受信機兼１ＰＰＳ生成器
６８４  ＰＬＬ周波数シンセサイザ６８４
６８６  マイコン    ６８８  メモリ
６８６２  個別タイムテーブル受信モジュール
６８６３  時刻ベース転送切替モジュール
【図１】
2015115864.tif 000003
【図２】
2015115864.tif 000004
【図３】
2015115864.tif 000005
【図４】
2015115864.tif 000006
【図５】
2015115864.tif 000007
【図６】
2015115864.tif 000008
【図７】
2015115864.tif 000009
【図８】
2015115864.tif 000010
【図９】
2015115864.tif 000011
【図１０】
2015115864.tif 000012
【図１１】
2015115864.tif 000013
【図１２】
2015115864.tif 000014
【図１３】
2015115864.tif 000015
【図１４】
2015115864.tif 000016
【図１５】
2015115864.tif 000017
【図１６】
2015115864.tif 000018
【図１７】
2015115864.tif 000019
【図１８】
2015115864.tif 000020
【図１９】
2015115864.tif 000021
【図２０】
2015115864.tif 000022
【図２１】
2015115864.tif 000023
【図２２】
2015115864.tif 000024
【図２３】
2015115864.tif 000025
【図２４】
2015115864.tif 000026
【図２５】
2015115864.tif 000027
【図２６】
2015115864.tif 000028
【図２７】
2015115864.tif 000029
【図２８】
2015115864.tif 000030
【図２９】
2015115864.tif 000031
【図３０】
2015115864.tif 000032