(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-03-11
(45)【発行日】2025-03-19
(54)【発明の名称】制御装置、制御方法およびプログラム
(51)【国際特許分類】
H04L 47/2416 20220101AFI20250312BHJP
【FI】
H04L47/2416
(21)【出願番号】P 2023568769
(86)(22)【出願日】2021-12-20
(86)【国際出願番号】 JP2021046982
(87)【国際公開番号】W WO2023119356
(87)【国際公開日】2023-06-29
【審査請求日】2024-04-10
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110001634
【氏名又は名称】弁理士法人志賀国際特許事務所
(72)【発明者】
【氏名】小屋迫 優士
(72)【発明者】
【氏名】山田 崇史
【審査官】漆原 孝治
(56)【参考文献】
【文献】国際公開第2021/251150(WO,A1)
【文献】特開2005-341492(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 47/2416
(57)【特許請求の範囲】
【請求項1】
複数の制御対象機器から送信される送信情報を受信する受信部と、
前記受信部により受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出部と、
前記制御情報導出部により導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得部と、
前記制御情報を送信する優先度として、前記送信間隔取得部により取得された前記送信間隔が短い前記制御情報ほど優先して送信することを示す優先度を算出する優先度算出部と、
前記優先度算出部により算出された優先度に応じて前記制御情報を送信する送信部と、
を備え
、
前記送信部は、前記送信間隔取得部により取得された送信間隔のうち、最も長い間隔を送信サイクルとし、前記送信サイクルが到来するたびに前記優先度が高い前記制御情報から順に前記制御情報を送信する、
制御装置。
【請求項2】
複数の制御対象機器から送信される送信情報を受信する受信部と、
前記受信部により受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出部と、
前記制御情報導出部により導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得部と、
前記制御情報を送信するネットワークの帯域を取得する帯域取得部と、
前記制御情報を送信する送信部と、
を備え、
前記送信部は、あるタイムスロットにおいて送信すべき一の前記制御情報を送信した場合の帯域が、前記帯域取得部により取得された帯域を超える
場合、一の前記制御情報の送信間隔より長い送信間隔の
他の前記制御情報を次回以降のタイムスロット
であって当該他の制御情報に定められた前記送信間隔内のタイムスロットで送信することで、一の前記制御情報を送信する制御装置。
【請求項3】
前記制御情報を送信する優先度として、前記送信間隔取得部により取得された前記送信間隔が短い前記制御情報ほど優先して送信することを示す優先度を算出する優先度算出部を備え、
前記送信部は、一の前記制御情報の送信間隔より長い送信間隔の前記制御情報を、一の前記制御情報の優先度よりも優先度が低い制御情報とする請求項
2に記載の制御装置。
【請求項4】
複数の制御対象機器から送信される送信情報を受信する受信ステップと、
前記受信ステップにより受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出ステップと、
前記制御情報導出ステップにより導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得ステップと、
前記制御情報を送信する優先度として、前記送信間隔取得ステップにより取得された前記送信間隔が短い前記制御情報ほど優先して送信することを示す優先度を算出する優先度算出ステップと、
前記優先度算出ステップにより算出された優先度に応じて前記制御情報を送信する送信ステップと、
を備え
、
前記送信ステップにおいて、前記送信間隔取得部により取得された送信間隔のうち、最も長い間隔を送信サイクルとし、前記送信サイクルが到来するたびに前記優先度が高い前記制御情報から順に前記制御情報を送信する、
制御方法。
【請求項5】
複数の制御対象機器から送信される送信情報を受信する受信ステップと、
前記受信ステップにより受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出ステップと、
前記制御情報導出ステップにより導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得ステップと、
前記制御情報を送信するネットワークの帯域を取得する帯域取得ステップと、
前記制御情報を送信する送信ステップと、
を備え、
前記送信ステップは、あるタイムスロットにおいて送信すべき一の前記制御情報を送信した場合の帯域が、前記帯域取得ステップにより取得された帯域を超える
場合、一の前記制御情報の送信間隔より長い送信間隔の
他の前記制御情報を次回以降のタイムスロット
であって当該他の制御情報に定められた前記送信間隔内のタイムスロットで送信することで、一の前記制御情報を送信する制御方法。
【請求項6】
コンピュータを制御装置として機能させるためのプログラムであって、
前記コンピュータを、
複数の制御対象機器から送信される送信情報を受信する受信部と、
前記受信部により受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出部と、
前記制御情報導出部により導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得部と、
前記制御情報を送信する優先度として、前記送信間隔取得部により取得された前記送信間隔が短い前記制御情報ほど優先して送信することを示す優先度を算出する優先度算出部と、
前記優先度算出部により算出された優先度に応じて前記制御情報を送信する送信部と、
して機能させ
、
前記送信部は、前記送信間隔取得部により取得された送信間隔のうち、最も長い間隔を送信サイクルとし、前記送信サイクルが到来するたびに前記優先度が高い前記制御情報から順に前記制御情報を送信する、
プログラム。
【請求項7】
コンピュータを制御装置として機能させるためのプログラムであって、
前記コンピュータを、
複数の制御対象機器から送信される送信情報を受信する受信部と、
前記受信部により受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出部と、
前記制御情報導出部により導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得部と、
前記制御情報を送信するネットワークの帯域を取得する帯域取得部と、
前記制御情報を送信する送信部と、
して機能させ、
前記送信部は、あるタイムスロットにおいて送信すべき一の前記制御情報を送信した場合の帯域が、前記帯域取得部により取得された帯域を超える
場合、一の前記制御情報の送信間隔より長い送信間隔の
他の前記制御情報を次回以降のタイムスロット
であって当該他の制御情報に定められた前記送信間隔内のタイムスロットで送信することで、一の前記制御情報を送信するプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御装置、制御方法およびプログラムの技術に関する。
【背景技術】
【0002】
制御対象機器と、制御対象機器を制御する制御装置との通信を行うためのネットワークとして、PROFINETやEthernet/IP、EtherCAT等の産業用イーサネットプロトコルが用いられている。PROFINETでは、NRT、RT、IRTと3つのクラスがある。このうちのリアルタイム性能10ms以内を保証するRTでは、
図15に示されるイーサネットフレーム内の「優先度」に一律に6を設定することで、リアルタイム性能を担保している。
【先行技術文献】
【非特許文献】
【0003】
【文献】PROFINET システム解説 (日本語版), June 2011.
【文献】PROFINET 設計ガイドライン (日本語版), 2014年12月.
【文献】Which settings do you have to comply with in a PROFINET RT network in conjunction with VLAN switches?https://support.industry.siemens.com/cs/document/24947500/which-settings-do-you-have-to-comply-with-in-a-profinet-rt-network-in-conjunction-with-vlan-switches-?dti=0&dl=en&lc=es-PA
【発明の概要】
【発明が解決しようとする課題】
【0004】
図16は、制御装置から送信される制御情報D1、D2、D3の遅延例を示す図である。左側が制御装置における送信タイミングを示し、右側が制御対象機器における受信タイミングを示す。制御情報D1は送信間隔として1msが要求され、最小転送クロックでの送信となっている。制御情報D3の送信間隔は4msである。通常は、
図16に示されるような状況が起こらないよう、ネットワークの接続機器数を制限するなどして、リアルタイムなネットワークを運用するが、制御装置がソフトウェアで動作したり、制御対象機器と制御装置との通信距離が比較的長い場合には、「優先度」に一律に6を設定したとしても、RTのリアルタイム性能の要件を満たさない可能性がある。
【0005】
このように、従来技術では、優先度に6を設定したとしても、リアルタイム性を担保できない可能性があった。
【0006】
上記事情に鑑み、本発明は、よりリアルタイム性を担保可能な技術の提供を目的としている。
【課題を解決するための手段】
【0007】
本発明の一態様は、複数の制御対象機器から送信される送信情報を受信する受信部と、前記受信部により受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出部と、前記制御情報導出部により導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得部と、前記制御情報を送信する優先度として、前記送信間隔取得部により取得された前記送信間隔が短い前記制御情報ほど優先して送信することを示す優先度を算出する優先度算出部と、前記優先度算出部により算出された優先度に応じて前記制御情報を送信する送信部と、を備えた制御装置である。
【0008】
本発明の一態様は、複数の制御対象機器から送信される送信情報を受信する受信部と、前記受信部により受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出部と、前記制御情報導出部により導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得部と、前記制御情報を送信するネットワークの帯域を取得する帯域取得部と、前記制御情報を送信する送信部と、を備え、前記送信部は、あるタイムスロットにおいて送信すべき一の前記制御情報を送信した場合の帯域が、前記帯域取得部により取得された帯域を超えるために一の前記制御情報を送信できないときに、一の前記制御情報の送信間隔より長い送信間隔の前記制御情報を次回以降のタイムスロットで送信することで、一の前記制御情報を送信する制御装置である。
【0009】
本発明の一態様は、複数の制御対象機器から送信される送信情報を受信する受信ステップと、前記受信ステップにより受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出ステップと、前記制御情報導出ステップにより導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得ステップと、前記制御情報を送信する優先度として、前記送信間隔取得ステップにより取得された前記送信間隔が短い前記制御情報ほど優先して送信することを示す優先度を算出する優先度算出ステップと、前記優先度算出ステップにより算出された優先度に応じて前記制御情報を送信する送信ステップと、を備えた制御方法である。
【0010】
本発明の一態様は、複数の制御対象機器から送信される送信情報を受信する受信ステップと、前記受信ステップにより受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出ステップと、前記制御情報導出ステップにより導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得ステップと、前記制御情報を送信するネットワークの帯域を取得する帯域取得ステップと、前記制御情報を送信する送信ステップと、を備え、前記送信ステップは、あるタイムスロットにおいて送信すべき一の前記制御情報を送信した場合の帯域が、前記帯域取得ステップにより取得された帯域を超えるために一の前記制御情報を送信できないときに、一の前記制御情報の送信間隔より長い送信間隔の前記制御情報を次回以降のタイムスロットで送信することで、一の前記制御情報を送信する制御方法である。
【0011】
本発明の一態様は、コンピュータを制御装置として機能させるためのプログラムであって、前記コンピュータを、複数の制御対象機器から送信される送信情報を受信する受信部と、前記受信部により受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出部と、前記制御情報導出部により導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得部と、前記制御情報を送信する優先度として、前記送信間隔取得部により取得された前記送信間隔が短い前記制御情報ほど優先して送信することを示す優先度を算出する優先度算出部と、前記優先度算出部により算出された優先度に応じて前記制御情報を送信する送信部と、して機能させるためのプログラムである。
【0012】
本発明の一態様は、コンピュータを制御装置として機能させるためのプログラムであって、前記コンピュータを、複数の制御対象機器から送信される送信情報を受信する受信部と、前記受信部により受信された送信情報に応じて、前記送信情報を送信した前記制御対象機器を制御する制御情報を導出する制御情報導出部と、前記制御情報導出部により導出された前記制御情報を送信する間隔として、前記制御情報ごとに定められた送信間隔を取得する送信間隔取得部と、前記制御情報を送信するネットワークの帯域を取得する帯域取得部と、前記制御情報を送信する送信部と、して機能させ、前記送信部は、あるタイムスロットにおいて送信すべき一の前記制御情報を送信した場合の帯域が、前記帯域取得部により取得された帯域を超えるために一の前記制御情報を送信できないときに、一の前記制御情報の送信間隔より長い送信間隔の前記制御情報を次回以降のタイムスロットで送信することで、一の前記制御情報を送信するプログラムである。
【発明の効果】
【0013】
本発明により、よりリアルタイム性を担保可能となる。
【図面の簡単な説明】
【0014】
【
図1】制御装置を含む通信システムの構成例を示す図である。
【
図5】第1実施形態における制御装置の構成例を示す図である。
【
図6A】制御情報の送信間隔を示す送信間隔データベースである。
【
図6B】制御情報の優先度を示す優先度データベースである。
【
図7】送信タイミングと受信タイミングとを示す図である。
【
図8】第1実施形態における制御装置の送信情報受信時の処理の流れを示すフローチャートである。
【
図9】第1実施形態における転送サイクル到来時の処理の流れを示すフローチャートである。
【
図10】第2実施形態における制御装置の構成例を示す図である。
【
図11A】制御情報の送信間隔を示す送信間隔サイズデータベースである。
【
図11B】制御情報の優先度を示す優先度データベースである。
【
図13】第2実施形態における制御装置の送信情報受信時の処理の流れを示すフローチャートである。
【
図14】第2実施形態における制御情報送信時の処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0015】
本発明の実施形態について、図面を参照して詳細に説明する。
図1は、実施形態における制御装置100を含む通信システム1の構成例を示す図である。通信システム1は、制御装置100、スイッチ300、N個の制御対象機器200-1、200-2、200-Nで構成される。制御対象機器200-1、200-2、200-Nのそれぞれを特に区別しない場合には、制御対象機器200と表現する。
【0016】
制御装置100は、各制御対象機器200から送信される送信情報を受信する。制御装置100は、各制御対象機器200から受信した送信情報にもとづいて制御対象機器200ごとに制御情報を導出し、導出した制御情報を送信元の制御対象機器200に送信する。スイッチ300は、ネットワークスイッチである。制御対象機器200は、IoT(Internet Of Things)機器(例えばセンサ、モータ、インバータ、ロボット等の産業用機器)である。したがって、制御対象機器200が送信する送信情報は、センサ値などを示す情報である。
【0017】
制御装置100と制御対象機器200との接続形態は、
図1に示される接続形態に限るものではない。他の例を
図2~
図4を用いて説明する。
図2は、制御装置100と制御対象機器200と1つ以上のスイッチ300で接続する接続形態を示す図である。
図3は、制御装置100と制御対象機器200とが異なる拠点に属する場合の接続形態を示す図である。A拠点とB拠点は、イーサネットや光回線で接続する形態であってもよい。
図3においても、複数のスイッチ300で接続されていてもよい。
図4は、制御装置100と制御対象機器200とが異なる拠点に属するとともに、拠点が複数ある場合の接続形態を示す図である。
【0018】
以上説明した各接続形態例において適用可能な実施形態について説明する。
(第1実施形態)
図5は、第1実施形態における制御装置100の構成例を示す図である。制御装置100は、受信部101、制御情報導出部102、送信間隔取得部103、優先度算出部104、送信部105、および記憶部110で構成される。
【0019】
受信部101は、複数の制御対象機器200から送信される送信情報を受信する。受信した送信情報は、制御情報導出部102に出力される。制御情報導出部102は、受信部101により受信された送信情報に応じて、送信情報を送信した制御対象機器200を制御する制御情報を導出する。送信間隔取得部103は、制御情報導出部102により導出された制御情報を送信する間隔として、制御情報ごとに定められた送信間隔を記憶部110から取得する。ここでの送信間隔とは、制御情報を送信する間隔であることから、制御情報を更新する間隔ともいえる。
【0020】
優先度算出部104は、制御情報を送信する優先度として、送信間隔取得部103により取得された送信間隔が短い制御情報ほど優先して送信することを示す優先度を算出する。優先度は、例えば1~6の6段階設けられ、段階が大きいほど優先度が高いことを示し、優先度が高いほど優先して送信されることを示す。算出された優先度は、記憶部110に記憶される。送信部105は、記憶部110を参照して、優先度算出部104により算出された優先度に応じて制御情報を送信する。
【0021】
図6Aは、制御情報の送信間隔を示す送信間隔データベースである。送信間隔データベースは、制御情報の種別に対応する送信間隔を記憶するデータベースである。制御情報の種別とは、制御対象機器の種別などに対応し、制御情報を区別するために用いられる。送信間隔取得部103は、制御情報導出部102により導出された制御情報の種別に対応する送信間隔を取得する。
図6Aには、制御情報A~Dが示され、送信間隔は、それぞれ1ms、2ms、4ms、1msであることが示されている。
【0022】
図6Bは、制御情報の優先度を示す優先度データベースである。優先度算出部104は、送信間隔取得部103により取得された送信間隔が短い制御情報ほど優先して送信することを示す優先度を算出する。
図6Bは、一例として各制御情報のうち、制御情報A、B、Cが制御装置100において送信されている送信情報とした場合の優先度を示す。制御情報A、B、Cの送信間隔は、それぞれ1ms、2ms、4msである。したがって制御情報Aの優先度が最も高く、次いで制御情報Bの優先度が高く、制御情報Cの優先度が最も低い。したがって、優先度算出部104は、制御情報Aの優先度を6とし、制御情報Bの優先度を5とし、制御情報Aの優先度を4と算出する。こうした算出された優先度は、
図6Bに示されるような優先度データベースとして記憶部110に記憶される。
【0023】
図7は、制御装置100の制御情報の送信タイミングと、制御対象機器200の制御情報の受信タイミングとを示す図である。
図7では、
図6Bに示した優先度の場合の送受信例を示している。
【0024】
図7に示されるように、送信部105は、送信間隔取得部103により取得された送信間隔のうち、最も長い間隔(制御情報Cの4ms)を送信サイクルとし、送信サイクルが到来するたびに優先度が高い制御情報から順(制御情報A、B、Cの順)に制御情報を送信する。例えば、タイムスロットAでは、制御情報A、B、Cの順に送信される。また、タイムスロットCにおいても、制御情報A、Bの順に送信される。このように優先度が高い制御情報から順に送信することにより、優先度が高い制御情報ほど早く受信可能となり、また遅延が生じたとしても、従来技術と比較して時間的余裕があることから、よりリアルタイム性を担保可能となる。
【0025】
以上説明した第1実施形態における制御装置の処理の流れをフローチャートを用いて説明する。
図8は、第1実施形態における制御装置の送信情報受信時の処理の流れを示すフローチャートである。
図8において、受信部101は、送信情報を受信する(ステップS101)。制御情報導出部102は、受信された送信情報に応じて、送信情報を送信した制御対象機器200を制御する制御情報を導出する(ステップS102)。送信間隔取得部103は、制御情報導出部102により導出された制御情報を送信する間隔として、制御情報ごとに定められた送信間隔を取得する(ステップS103)。
【0026】
優先度算出部104は、制御情報を送信する優先度として、送信間隔取得部103により取得された送信間隔をソートし(ステップS104)、送信間隔が短い制御情報ほど優先して送信することを示す優先度を算出する(ステップS105)。送信部105は、送信間隔取得部103により取得された送信間隔のうち、最も長い間隔を送信サイクルを記憶部110に記憶する(ステップS106)。
【0027】
図9は、第1実施形態における転送サイクル到来時の処理の流れを示すフローチャートである。転送サイクルが到来すると、送信部105は、優先度を取得する(ステップS201)。次いで送信部105は、
図7に示したように、優先度が高い制御情報から順に制御情報を送信する。
【0028】
以上説明したように、送信間隔に応じて優先度を算出することにより、遅延が許容されない送信情報ほど優先して送信されるので、従来技術のように一律で優先度を定める場合と比較して、よりリアルタイム性を担保可能となる。
【0029】
(第2実施形態)
第2実施形態では、制御装置が制御情報を送信するネットワークの帯域に応じて送信する順序を変更する実施形態である。
図10は、第2実施形態における制御装置500の構成例を示す図である。制御装置500は、受信部501、制御情報導出部502、送信間隔取得部503、優先度算出部504、送信部505、帯域取得部506、および記憶部110で構成される。
【0030】
受信部501は、複数の制御対象機器200から送信される送信情報を受信する。受信した送信情報は、制御情報導出部502に出力される。制御情報導出部502は、受信部501により受信された送信情報に応じて、送信情報を送信した制御対象機器200を制御する制御情報を導出する。送信間隔取得部503は、制御情報導出部502により導出された制御情報を送信する間隔として、制御情報ごとに定められた送信間隔を記憶部510から取得する。ここでの送信間隔とは、制御情報を送信する間隔であることから、制御情報を更新する間隔ともいえる。
【0031】
優先度算出部504は、制御情報を送信する優先度として、送信間隔取得部503により取得された送信間隔が短い制御情報ほど優先して送信することを示す優先度を算出する。優先度は、例えば1~6の6段階設けられ、大きいほど優先して送信されることを示す。算出された優先度は、記憶部510に記憶される。送信部505は、記憶部510を参照して、優先度算出部504により算出された優先度に応じて制御情報を送信する。
【0032】
帯域取得部506は、制御情報を送信するネットワークの帯域(bps)を取得する。帯域取得部506の取得方法として、例えば以下の方法が挙げられる。まず、ネットワークを流れてくるパケットをスニッフィングする方法である。または、OLT(Optical Line Terminal)のような通信装置から帯域を取得する方法である。さらに、制御装置500に配下の通信装置があれば、この通信装置からゲートレポートのような形で帯域を取得する方法である。取得方法は、これらの方法に限るものではない。取得された帯域は、送信部505に出力される。なお、帯域が狭くなるケースとして、制御対象機器200の増加が挙げられる。
【0033】
図11Aは、制御情報の送信間隔およびサイズを示す送信間隔サイズデータベースである。送信間隔サイズデータベースは、制御情報の種別に対応する送信間隔とサイズとを記憶するデータベースである。制御情報の種別とは、制御対象機器の種別などに対応し、制御情報を区別するために用いられる。送信間隔取得部503は、制御情報導出部502により導出された制御情報の種別に対応する送信間隔を取得する。
図11Aには、制御情報W~Zが示され、送信間隔は、それぞれ1ms、4ms、2ms、1msであることが示されている。また、制御情報W~Zのサイズは、それぞれwバイト、xバイト、yバイト、zバイトであることが示されている。
【0034】
図11Bは、制御情報の優先度を示す優先度データベースである。優先度算出部504は、送信間隔取得部503により取得された送信間隔が短い制御情報ほど優先して送信することを示す優先度を算出する。
図11Bは、一例として各制御情報のうち、制御情報W、X、Y、Zが制御装置500において送信されている送信情報とした場合の優先度を示す。制御情報W~Zが示され、送信間隔は、それぞれ1ms、4ms、2ms、1msである。
【0035】
したがって、制御情報W、Zの優先度が最も高く、次いで制御情報Yの優先度が高く、制御情報Xの優先度が最も低い。よって、優先度算出部104は、制御情報W、Zの優先度を6とし、制御情報Yの優先度を5とし、制御情報Xの優先度を4と算出する。こうした算出された優先度は、
図11Bに示されるような優先度データベースとして記憶部110に記憶される。
【0036】
図12は、送信する順序の変更例を示す図である。
図12は、制御装置500の制御情報の変更前の送信タイミングと、変更後のタイミングとを示す図である。
図12では、
図11Bに示した優先度の場合の送信例を示している。
【0037】
図12に示されるように、変更前のタイムスロットAにおいて、制御情報W、X、Y、Zの順に送信した場合、送信可能な帯域を超えてしまい、制御情報Zが時間内に送信できない。そこで送信部505は、制御情報Zよりも優先度が低い制御情報Xを、次回以降のタイムスロットで送信する。変更後のタイミングに示されるように、制御情報Xは、次回のタイムスロットBで送信される。このようにすることで、制御装置500は、制御情報Zを時間内に送信することができる。
【0038】
このように、送信部505は、あるタイムスロットにおいて送信すべき一の制御情報(
図12では制御情報Z)を送信した場合の帯域が、帯域取得部506により取得された帯域を超えるために一の制御情報を送信できないときに、一の制御情報の送信間隔より長い送信間隔の制御情報(
図12では制御情報X)を次回以降のタイムスロットで送信することで、一の制御情報を送信する。また、送信部505は、一の制御情報の送信間隔より長い送信間隔の制御情報を、一の前記制御情報の優先度よりも優先度が低い制御情報とする。
【0039】
なお、
図12の例では、優先度が最も低い制御情報を次回以降のタイムスロットで送信したが、必ずしも最も低い制御情報でなくてもよい。例えば、制御情報Yが次回以降のタイムスロットで送信可能であれば、制御情報Xに代えて、制御情報Yを次回以降のタイムスロットで送信してもよい。
【0040】
このように優先度が低い制御情報を次回以降のタイムスロットで送信することにより、帯域が狭くなったとして優先度が高い制御情報を送信可能となることから、よりリアルタイム性を担保可能となる。
【0041】
以上説明した第2実施形態における制御装置の処理の流れをフローチャートを用いて説明する。
図13は、第2実施形態における制御装置の送信情報受信時の処理の流れを示すフローチャートである。
図13において、受信部501は、送信情報を受信する(ステップS301)。制御情報導出部502は、受信された送信情報に応じて、送信情報を送信した制御対象機器200を制御する制御情報を導出する(ステップS302)。送信間隔取得部503は、制御情報導出部502により導出された制御情報を送信する間隔として、制御情報ごとに定められた送信間隔を取得する(ステップS303)。
【0042】
優先度算出部504は、制御情報を送信する優先度として、送信間隔取得部503により取得された送信間隔をソートし(ステップS304)、送信間隔が短い制御情報ほど優先して送信することを示す優先度を算出する(ステップS305)。
【0043】
図14は、第2実施形態における制御情報送信時の処理の流れを示すフローチャートである。
図14において、帯域取得部506は、制御情報を送信するネットワークの帯域を取得する(ステップS401)。次いで、送信部505は、サイズを取得する(ステップS402)。ここで、サイズとは、送信しようとする制御情報のサイズの総和である。
図12における変更前のタイムスロットAを例にすると、制御情報W、X、Y、Zのサイズの総和(w+x+y+z)である。
【0044】
送信部505は、サイズが帯域を超えるか否かを判定する(ステップS403)。ここでは、
図12における変更前のタイムスロットAを例にし、帯域取得部506により取得された帯域をP(bps)すると、送信部505は、バイトをビットに変換した総和8×(w+x+y+z)>Pか否かを判定する。
【0045】
サイズが帯域を超えない場合には(ステップS403:NO)、送信部505は、そのまま制御情報を送信する(ステップS406)。一方、サイズが帯域を超えない場合には(ステップS403:NO)、送信部505は、優先度が送信する制御情報の中で、優先度が低い制御情報を、今回送信する制御情報から除外する(ステップS404)。送信部505は、除外された制御情報を次回以降のタイムスロットで送信することに決定する(ステップS405)。送信部505は、除外された制御情報以外の制御情報を送信する(ステップS406)。
【0046】
上記ステップS404で除外される制御情報の数は、1つに限に限らず、今回のタイムスロットで送信すべき制御情報が送信可能となるまで優先度の低い制御情報が除外される。また、除外可能な制御情報が存在しない場合には、送信部505は、優先度が高い制御情報からから順に制御情報を送信する。
【0047】
以上説明したように、優先度が低い制御情報を次回以降のタイムスロットで送信することにより、帯域が狭くなったとして優先度が高い制御情報を送信可能となることから、よりリアルタイム性を担保可能となる。
【0048】
制御装置100、500は、CPU(Central Processing Unit)等のプロセッサーとメモリーとを用いて構成されてもよい。この場合、受信部101、501、制御情報導出部102、502、送信間隔取得部103、503、優先度算出部104、504、送信部105、505、および帯域取得部506は、プロセッサーがプログラムを実行することによって、受信部101、501、制御情報導出部102、502、送信間隔取得部103、503、優先度算出部104、504、送信部105、505、および帯域取得部506として機能する。なお、受信部101、501、制御情報導出部102、502、送信間隔取得部103、503、優先度算出部104、504、送信部105、505、および帯域取得部506の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されても良い。上記のプログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD-ROM、半導体記憶装置(例えばSSD:Solid State Drive)等の可搬媒体、コンピュータシステムに内蔵されるハードディスクや半導体記憶装置等の記憶装置である。上記のプログラムは、電気通信回線を介して送信されてもよい。
【0049】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【産業上の利用可能性】
【0050】
本発明は、制御対象機器とリアルタイム性を担保させながら通信する制御装置に適用可能である。
【符号の説明】
【0051】
1 通信システム
100、500 制御装置
101 受信部
102 制御情報導出部
103 送信間隔取得部
104 優先度算出部
105 送信部
110 記憶部
200、200-1、200-2、200-N 制御対象機器
300 スイッチ
501 受信部
502 制御情報導出部
503 送信間隔取得部
504 優先度算出部
505 送信部
506 帯域取得部
510 記憶部