(57)【要約】      （修正有）【課題】ケーブルにより直列接続されて電力伝送及び通信を行う複数の制御装置において、ケーブルによる通信の遅延時間を判定する。【解決手段】制御装置は、複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定するマスタ装置Ｍと、マスタ装置からケーブル（Ｃ０〜Ｃ５）を通じて供給された電力により動作可能なスレーブ装置（Ｓ１〜Ｓ６）との間においてケーブルによって生じる通信の遅延時間を計測し、当該遅延時間を判定する判定部を備える。判定部は、ケーブルを通じてスレーブ装置に信号が送信されてから当該信号に対するスレーブ装置からの第１応答信号を受信するまでの第１経過時間と、マスタ装置とスレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する伝送処理時間とに基づいて遅延時間を算出する。【選択図】図９
2018180699.tif 000002
【特許請求の範囲】
【請求項１】
複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定する制御装置であって、
前記ケーブルによって生じる通信の遅延時間を判定する前記制御装置は、前記複数の制御装置のうちのマスタ装置であり、前記複数の制御装置のうちの他の制御装置に前記ケーブルを通じて電力を供給可能であり、
前記複数の制御装置のうち前記マスタ装置から前記ケーブルを通じて供給された電力により動作可能なスレーブ装置と前記マスタ装置との間において前記ケーブルによって生じる通信の遅延時間を計測し、前記計測された、前記マスタ装置と前記スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を判定する判定部
を備え、
前記判定部は、前記ケーブルを通じて前記マスタ装置から前記スレーブ装置に信号が送信されてから当該信号に対する前記スレーブ装置からの第１応答信号を前記マスタ装置が受信するまでの第１経過時間と、前記複数の制御装置のうち、前記マスタ装置と前記スレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する第１伝送処理時間とに基づいて、前記ケーブルによって生じる通信の遅延時間を算出する
制御装置。
【請求項２】
前記第１伝送処理時間は、
前記複数の制御装置のうち、前記スレーブ装置に送信された前記信号を中継する１以上の制御装置が前記信号を中継するのに要する中継時間と、
前記スレーブ装置が前記スレーブ装置に送信された前記信号を受信してから前記第１応答信号を送信するまでに要する応答時間と
を含む請求項１に記載の制御装置。
【請求項３】
前記スレーブ装置は、前記ケーブルを通じて電力を供給可能な第１スレーブ装置である
請求項１又は２に記載の制御装置。
【請求項４】
前記複数の制御装置は、前記第１スレーブ装置から前記ケーブルを通じて供給された電力により動作可能な第２スレーブ装置を更に含み、前記直列接続において前記第１スレーブ装置は前記マスタ装置と前記第２スレーブ装置との間に位置し、
前記判定部は、
前記マスタ装置から前記ケーブルを通じて前記第２スレーブ装置に信号が送信されてから当該信号に対する前記第２スレーブ装置からの第２応答信号を前記マスタ装置が受信するまでの第２経過時間をさらに計測し、
前記複数の制御装置のうち、前記マスタ装置と前記第２スレーブ装置との間の通信経路上にある複数の制御装置が信号を伝送する処理に要する第２伝送処理時間と、前記第１経過時間と、前記第２経過時間とに基づいて、前記第１スレーブ装置と前記第２スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を算出する
請求項３に記載の制御装置。
【請求項５】
複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定する制御装置であって、
前記制御装置は、前記複数の制御装置のうちのマスタ装置から前記ケーブルを通じて供給された電力により動作可能であり、前記複数の制御装置のうちの他のスレーブ装置に前記ケーブルを通じて電力を供給可能な、第１スレーブ装置であり、
前記第１スレーブ装置と前記マスタ装置との間において前記ケーブルによって生じる通信の遅延時間を計測し、前記計測された、前記マスタ装置と前記第１スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を判定する判定部
を備え、
前記判定部は、前記ケーブルを通じて前記第１スレーブ装置から前記マスタ装置に信号が送信されてから当該信号に対する前記マスタ装置からの第１応答信号を前記第１スレーブ装置が受信するまでの第１経過時間と、前記複数の制御装置のうち、前記第１スレーブ装置と前記マスタ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する第１伝送処理時間とに基づいて、前記ケーブルによって生じる通信の遅延時間を算出する
制御装置。
【請求項６】
前記複数の制御装置は、前記第１スレーブ装置から前記ケーブルを通じて供給された電力により動作可能な第２スレーブ装置を更に含み、前記直列接続において前記第１スレーブ装置は前記マスタ装置と前記第２スレーブ装置との間に位置し、
前記判定部は、
前記第１スレーブ装置から前記ケーブルを通じて前記第２スレーブ装置に信号が送信されてから当該信号に対する前記第２スレーブ装置からの第２応答信号を前記第１スレーブ装置が受信するまでの第２経過時間をさらに計測し、
前記複数の制御装置のうち、前記第１スレーブ装置と前記第２スレーブ装置との間の通信経路上にある複数の制御装置が信号を伝送する処理に要する第２伝送処理時間と、前記第２経過時間とに基づいて、前記第１スレーブ装置と前記第２スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を算出する
請求項５に記載の制御装置。
【請求項７】
前記第２伝送処理時間は、
前記複数の制御装置のうち、前記第２スレーブ装置に送信された前記信号を中継する制御装置が信号を中継するのに要する中継時間と、
前記第２スレーブ装置が前記第２スレーブ装置に送信された前記信号を受信してから前記第２応答信号を送信するまでに要する応答時間と
を含む請求項４又は６に記載の制御装置。
【請求項８】
前記複数の制御装置は、前記ケーブルによりデイジーチェーン接続される
請求項１から７のいずれか一項に記載の制御装置。
【請求項９】
前記判定部が前記ケーブルによって生じる通信の遅延時間が予め定められた時間を超えると判定した場合に通知する通知部
をさらに備える請求項１から８のいずれか一項に記載の制御装置。
【請求項１０】
前記判定部は、前記ケーブルによって生じる通信の遅延時間から算出される前記ケーブルの長さが、前記ケーブルが電力を伝送可能な予め定められた規定長を超えるか否かを判定する
請求項１から９のいずれか一項に記載の制御装置。
【請求項１１】
前記直列接続される前記複数の制御装置の接続構成を示す情報と、前記複数の制御装置のうち、前記ケーブルを通じて他の制御装置に電力を供給可能な制御装置を特定する情報とを含む接続情報を取得する取得部と、
前記接続情報に基づいて、前記複数の制御装置のうち、前記ケーブルを通じて電力を供給可能な１以上の制御装置と、当該１以上の制御装置が電力を供給するべき１以上のスレーブ装置とを特定する特定部と
をさらに備える請求項１から１０のいずれか一項に記載の制御装置。
【請求項１２】
前記第１スレーブ装置は、主電源を有し、前記主電源からの電力が遮断された場合に、前記マスタ装置から前記ケーブルを通じて供給された電力を用いて前記複数の制御装置のうちの他の制御装置との間の通信を維持する
請求項３から７のいずれか一項に記載の制御装置。
【請求項１３】
前記複数の制御装置はそれぞれ、タイマを備え、受信した信号を転送する場合に、当該信号を受信したときの前記タイマのタイマ値と、当該信号を転送するときの前記タイマのタイマ値とを、転送する信号に含めて転送し、
前記判定部は、前記応答信号に含まれる前記タイマ値に基づいて、前記複数の制御装置のうち、前記通信経路上にある１以上の制御装置がそれぞれ信号を伝送する処理に要する伝送処理時間を算出する
請求項１から１２のいずれか一項に記載の制御装置。
【請求項１４】
ケーブルにより直列接続された複数の制御装置を備える制御システムであって、
前記複数の制御装置は、
前記ケーブルを通じて電力を供給可能な、前記複数の制御装置のうちのマスタ装置と、
前記マスタ装置から前記ケーブルを通じて供給された電力により動作可能であり前記ケーブルを通じて電力を供給可能な第１スレーブ装置と、
前記第１スレーブ装置から前記ケーブルを通じて供給された電力により動作可能な第２スレーブ装置と
を備え、
前記マスタ装置は、
前記マスタ装置と前記第１スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を計測し、前記計測された、前記マスタ装置と前記第１スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を判定する第１判定部
を有し、
前記第１判定部は、前記ケーブルを通じて前記マスタ装置から前記第１スレーブ装置に信号が送信されてから当該信号に対する前記第１スレーブ装置からの応答信号を前記マスタ装置が受信するまでの第１経過時間と、前記複数の制御装置のうち、前記マスタ装置と前記第１スレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する伝送処理時間とに基づいて、前記ケーブルによって生じる通信の遅延時間を算出し、
前記第１スレーブ装置は、
前記第１スレーブ装置と前記第２スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を計測し、前記計測された、前記第１スレーブ装置と前記第２スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を判定する第２判定部と
を有し、
前記第２判定部は、前記ケーブルを通じて前記第１スレーブ装置から前記第２スレーブ装置に信号が送信されてから当該信号に対する前記第２スレーブ装置からの応答信号を前記第１スレーブ装置が受信するまでの第１経過時間と、前記複数の制御装置のうち、前記第１スレーブ装置と前記第２スレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する伝送処理時間とに基づいて、前記ケーブルによって生じる通信の遅延時間を算出する
制御システム。
【請求項１５】
複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定する方法であって、
前記方法は、前記ケーブルを通じて他の制御装置に電力を供給可能であり、前記複数の制御装置のうちのマスタ装置において実行され、
前記複数の制御装置のうち前記マスタ装置から前記ケーブルを通じて供給された電力により動作可能なスレーブ装置と前記マスタ装置との間において前記ケーブルによって生じる通信の遅延時間を計測し、前記計測された、前記マスタ装置と前記スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を判定する段階
を備え、
前記判定する段階は、前記ケーブルを通じて前記マスタ装置から前記スレーブ装置に信号が送信されてから当該信号に対する前記スレーブ装置からの第１応答信号を前記マスタ装置が受信するまでの第１経過時間と、前記複数の制御装置のうち、前記マスタ装置と前記スレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する第１伝送処理時間とに基づいて、前記ケーブルによって生じる通信の遅延時間を算出する
方法。
【請求項１６】
コンピュータを、複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定する制御装置として機能させるためのプログラムであって、
前記制御装置は、前記複数の制御装置のうちのマスタ装置であり、前記複数の制御装置のうち前記ケーブルを通じて電力を供給可能であり、
前記プログラムは、前記コンピュータに、
前記複数の制御装置のうち前記マスタ装置から前記ケーブルを通じて供給された電力により動作可能なスレーブ装置と前記マスタ装置との間において前記ケーブルによって生じる通信の遅延時間を計測し、前記計測された、前記マスタ装置と前記スレーブ装置との間において前記ケーブルによって生じる通信の遅延時間を判定するステップ
を実行させ、
前記判定するステップは、前記ケーブルを通じて前記マスタ装置から前記スレーブ装置に信号が送信されてから当該信号に対する前記スレーブ装置からの第１応答信号を前記マスタ装置が受信するまでの第１経過時間と、前記複数の制御装置のうち、前記マスタ装置と前記スレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する第１伝送処理時間とに基づいて、前記ケーブルによって生じる通信の遅延時間を算出する
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、判定装置、制御装置、制御システム、判定方法及びプログラムに関する。
【背景技術】
【０００２】
複数の給電ポートのそれぞれに接続されたＰｏＥ受電デバイスにおける消費電力を監視し、監視された消費電力に基づいて、ＰｏＥ受電デバイスへの供給電力を決定するスイッチングハブが知られている（例えば特許文献１参照）。
特許文献１  特開２０１２−１０８８４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
複数の制御装置を直列接続する構成では、電力供給を担う制御装置から電力供給を受ける制御装置までのケーブルの全長が、ケーブルが電力を伝送可能な規定長を超える場合がある。この場合、電力供給を受ける制御装置に適切な電力を供給できない虞がある。
【課題を解決するための手段】
【０００４】
第１の態様において、制御装置は、複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定する。ケーブルによって生じる通信の遅延時間を判定する制御装置は、複数の制御装置のうちのマスタ装置であり、複数の制御装置のうちの他の制御装置にケーブルを通じて電力を供給可能である。制御装置は、複数の制御装置のうちマスタ装置からケーブルを通じて供給された電力により動作可能なスレーブ装置とマスタ装置との間においてケーブルによって生じる通信の遅延時間を計測し、計測された、マスタ装置とスレーブ装置との間においてケーブルによって生じる通信の遅延時間を判定する判定部を備える。判定部は、ケーブルを通じてマスタ装置からスレーブ装置に信号が送信されてから当該信号に対するスレーブ装置からの第１応答信号をマスタ装置が受信するまでの第１経過時間と、複数の制御装置のうち、マスタ装置とスレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する第１伝送処理時間とに基づいて、ケーブルによって生じる通信の遅延時間を算出する。
【０００５】
第１伝送処理時間は、複数の制御装置のうち、スレーブ装置に送信された信号を中継する１以上の制御装置が信号を中継するのに要する中継時間と、スレーブ装置がスレーブ装置に送信された信号を受信してから第１応答信号を送信するまでに要する応答時間とを含んでよい。
【０００６】
スレーブ装置は、ケーブルを通じて電力を供給可能な第１スレーブ装置であってよい。
【０００７】
複数の制御装置は、第１スレーブ装置からケーブルを通じて供給された電力により動作可能な第２スレーブ装置を更に含み、直列接続において第１スレーブ装置はマスタ装置と第２スレーブ装置との間に位置してよい。判定部は、マスタ装置からケーブルを通じて第２スレーブ装置に信号が送信されてから当該信号に対する第２スレーブ装置からの第２応答信号をマスタ装置が受信するまでの第２経過時間をさらに計測してよい。判定部は、複数の制御装置のうち、マスタ装置と第２スレーブ装置との間の通信経路上にある複数の制御装置が信号を伝送する処理に要する第２伝送処理時間と、第１経過時間と、第２経過時間とに基づいて、第１スレーブ装置と第２スレーブ装置との間においてケーブルによって生じる通信の遅延時間を算出してよい。
【０００８】
第２伝送処理時間は、複数の制御装置のうち、第２スレーブ装置に送信された信号を中継する制御装置が信号を中継するのに要する中継時間と、第２スレーブ装置が第２スレーブ装置に送信された信号を受信してから第２応答信号を送信するまでに要する応答時間とを含んでよい。
【０００９】
複数の制御装置は、ケーブルによりデイジーチェーン接続されてよい。
【００１０】
判定部がケーブルによって生じる通信の遅延時間が予め定められた時間を超えると判定した場合に通知する通知部をさらに備えてよい。
【００１１】
判定部は、ケーブルによって生じる通信の遅延時間から算出されるケーブルの長さが、ケーブルが電力を伝送可能な予め定められた規定長を超えるか否かを判定してよい。
【００１２】
直列接続される複数の制御装置の接続構成を示す情報と、複数の制御装置のうち、ケーブルを通じて他の制御装置に電力を供給可能な制御装置を特定する情報とを含む接続情報を取得する取得部と、接続情報に基づいて、複数の制御装置のうち、ケーブルを通じて電力を供給可能な１以上の制御装置と、当該１以上の制御装置が電力を供給するべき１以上のスレーブ装置とを特定する特定部とをさらに備えてよい。
【００１３】
第１スレーブ装置は、主電源を有し、主電源からの電力が遮断された場合に、マスタ装置からケーブルを通じて供給された電力を用いて複数の制御装置のうちの他の制御装置との間の通信を維持してよい。
【００１４】
複数の制御装置はそれぞれ、タイマを備え、受信した信号を転送する場合に、当該信号を受信したときのタイマのタイマ値と、当該信号を転送するときのタイマのタイマ値とを、転送する信号に含めて転送し、判定部は、応答信号に含まれるタイマ値に基づいて、複数の制御装置のうち、通信経路上にある１以上の制御装置がそれぞれ信号を伝送する処理に要する伝送処理時間を算出してよい。
【００１５】
第２の形態において、制御装置は、複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定する。当該制御装置は、複数の制御装置のうちのマスタ装置からケーブルを通じて供給された電力により動作可能であり、複数の制御装置のうちの他のスレーブ装置にケーブルを通じて電力を供給可能な、第１スレーブ装置である。制御装置は、第１スレーブ装置とマスタ装置との間においてケーブルによって生じる通信の遅延時間を計測し、計測された、マスタ装置と第１スレーブ装置との間においてケーブルによって生じる通信の遅延時間を判定する判定部を備える。判定部は、ケーブルを通じて第１スレーブ装置からマスタ装置に信号が送信されてから当該信号に対するマスタ装置からの第１応答信号を第１スレーブ装置が受信するまでの第１経過時間と、複数の制御装置のうち、第１スレーブ装置とマスタ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する第１伝送処理時間とに基づいて、ケーブルによって生じる通信の遅延時間を算出する。
【００１６】
複数の制御装置は、第１スレーブ装置からケーブルを通じて供給された電力により動作可能な第２スレーブ装置を更に含み、直列接続において第１スレーブ装置はマスタ装置と第２スレーブ装置との間に位置してよい。判定部は、第１スレーブ装置からケーブルを通じて第２スレーブ装置に信号が送信されてから当該信号に対する第２スレーブ装置からの第２応答信号を第１スレーブ装置が受信するまでの第２経過時間をさらに計測し、複数の制御装置のうち、第１スレーブ装置と第２スレーブ装置との間の通信経路上にある複数の制御装置が信号を伝送する処理に要する第２伝送処理時間と、第２経過時間とに基づいて、第１スレーブ装置と第２スレーブ装置との間においてケーブルによって生じる通信の遅延時間を算出してよい。
【００１７】
第３の形態において制御システムは、ケーブルにより直列接続された複数の制御装置を備える。複数の制御装置は、ケーブルを通じて電力を供給可能な、複数の制御装置のうちのマスタ装置と、マスタ装置からケーブルを通じて供給された電力により動作可能でありケーブルを通じて電力を供給可能な第１スレーブ装置と、第１スレーブ装置からケーブルを通じて供給された電力により動作可能な第２スレーブ装置とを備える。マスタ装置は、マスタ装置と第１スレーブ装置との間においてケーブルによって生じる通信の遅延時間を計測し、計測された、マスタ装置と第１スレーブ装置との間においてケーブルによって生じる通信の遅延時間を判定する第１判定部を有する。第１判定部は、ケーブルを通じてマスタ装置から第１スレーブ装置に信号が送信されてから当該信号に対する第１スレーブ装置からの応答信号をマスタ装置が受信するまでの第１経過時間と、複数の制御装置のうち、マスタ装置と第１スレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する伝送処理時間とに基づいて、ケーブルによって生じる通信の遅延時間を算出する。第１スレーブ装置は、第１スレーブ装置と第２スレーブ装置との間においてケーブルによって生じる通信の遅延時間を計測し、計測された、第１スレーブ装置と第２スレーブ装置との間においてケーブルによって生じる通信の遅延時間を判定する第２判定部を有する。第２判定部は、ケーブルを通じて第１スレーブ装置から第２スレーブ装置に信号が送信されてから当該信号に対する第２スレーブ装置からの応答信号を第１スレーブ装置が受信するまでの第１経過時間と、複数の制御装置のうち、第１スレーブ装置と第２スレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する伝送処理時間とに基づいて、ケーブルによって生じる通信の遅延時間を算出する。
【００１８】
第４の形態において、方法は、複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定する。当該方法は、ケーブルを通じて他の制御装置に電力を供給可能であり、複数の制御装置のうちのマスタ装置において実行される。当該方法は、複数の制御装置のうちマスタ装置からケーブルを通じて供給された電力により動作可能なスレーブ装置とマスタ装置との間においてケーブルによって生じる通信の遅延時間を計測し、計測された、マスタ装置とスレーブ装置との間においてケーブルによって生じる通信の遅延時間を判定する段階を備える。当該判定する段階は、ケーブルを通じてマスタ装置からスレーブ装置に信号が送信されてから当該信号に対するスレーブ装置からの第１応答信号をマスタ装置が受信するまでの第１経過時間と、複数の制御装置のうち、マスタ装置とスレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する第１伝送処理時間とに基づいて、ケーブルによって生じる通信の遅延時間を算出する。
【００１９】
第５の形態において、プログラムは、コンピュータを、複数の制御装置を直列接続するケーブルによって生じる通信の遅延時間を判定する制御装置として機能させる。制御装置は、複数の制御装置のうちのマスタ装置であり、複数の制御装置のうちケーブルを通じて電力を供給可能であり、プログラムは、コンピュータに、複数の制御装置のうちマスタ装置からケーブルを通じて供給された電力により動作可能なスレーブ装置とマスタ装置との間においてケーブルによって生じる通信の遅延時間を計測し、計測された、マスタ装置とスレーブ装置との間においてケーブルによって生じる通信の遅延時間を判定するステップを実行させる。当該判定するステップは、ケーブルを通じてマスタ装置からスレーブ装置に信号が送信されてから当該信号に対するスレーブ装置からの第１応答信号をマスタ装置が受信するまでの第１経過時間と、複数の制御装置のうち、マスタ装置とスレーブ装置との間の通信経路上にある１以上の制御装置が信号を伝送する処理に要する第１伝送処理時間とに基づいて、ケーブルによって生じる通信の遅延時間を算出する。
【００２０】
なお、上記の発明の概要は、本発明の特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００２１】
【図１】一実施形態における制御システム１０の概略的な構成を示す。
【図２】マスタコントローラＭの機能構成を概略的に示す。
【図３】スレーブコントローラＳ１の機能構成を概略的に示す。
【図４】スレーブコントローラＳ４の機能構成を概略的に示す。
【図５】マスタコントローラＭからスレーブコントローラＳ４までの間のネットワークケーブルの全長が仕様長を超えている場合に生じ得る事象を概略的に示す。
【図６】マスタコントローラＳ４からスレーブコントローラＳ６までの間のネットワークケーブルの全長が仕様長を超えている場合に生じ得る事象を概略的に示す。
【図７】マスタコントローラＭが取得する、給電機能有無情報の一例をテーブル形式で示す。
【図８】マスタコントローラＭが特定する、電力供給を担う範囲の一例をテーブル形式で示す。
【図９】ネットワークケーブルＣの全長の測定方法を説明するための図である。
【図１０】マスタコントローラＭにおける処理を示すフローチャートである。
【図１１】制御システム１０の第１の変形例においてネットワークケーブルＣの長さを測定する方法を説明するための図である。
【図１２】制御システム１０の第２の変形例におけるネットワークケーブルＣの長さを測定する方法を説明するための図である。
【図１３】制御システム１０の第３の変形例においてネットワークケーブルＣの長さを測定する方法を説明するための図である。
【発明を実施するための形態】
【００２２】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００２３】
図１は、一実施形態における制御システム１０の概略的な構成を示す。制御システム１０は、管理装置２０と、マスタコントローラＭと、スレーブコントローラＳ１、スレーブコントローラＳ２、スレーブコントローラＳ３、スレーブコントローラＳ４、スレーブコントローラＳ５及びスレーブコントローラＳ６と、被制御機器４０ａ、被制御機器４０ｂ、被制御機器４０ｃ、被制御機器４０ｄ、被制御機器４０ｅ及び被制御機器４０ｆとを備える。
【００２４】
本実施形態において、スレーブコントローラＳ１、スレーブコントローラＳ２、スレーブコントローラＳ３、スレーブコントローラＳ４、スレーブコントローラＳ５及びスレーブコントローラＳ６を、スレーブコントローラＳと総称する場合がある。また、制御システム１０が備えるマスタコントローラＭ及びスレーブコントローラＳを、コントローラと総称する場合がある。また、被制御機器４０ａ、被制御機器４０ｂ、被制御機器４０ｃ、被制御機器４０ｄ、被制御機器４０ｅ及び被制御機器４０ｆを、被制御機器４０と総称する場合がある。
【００２５】
管理装置２０は、制御システム１０の全体を管理する。管理装置２０は、パーソナルコンピュータ等のコンピュータにより実現される。管理装置２０は、ネットワークを通じてマスタコントローラＭと通信する。
【００２６】
マスタコントローラＭ及びスレーブコントローラＳは、制御装置の一例である。スレーブコントローラＳは、マスタコントローラＭによる制御に従って、被制御機器４０との間でデータの入出力を行う。
【００２７】
マスタコントローラＭ及びスレーブコントローラＳは、複数のネットワークケーブルによりデイジーチェーン接続されている。デイジーチェーン接続において、スレーブコントローラＳ４は、マスタコントローラＭとスレーブコントローラＳ６との間に位置する。具体的には、マスタコントローラＭは、ネットワークケーブルＣ０を通じて、スレーブコントローラＳ１に接続されている。スレーブコントローラＳ１は、ネットワークケーブルＣ１を通じて、スレーブコントローラＳ２に接続されている。スレーブコントローラＳ２は、ネットワークケーブルＣ２を通じて、スレーブコントローラＳ３に接続されている。一般に、スレーブコントローラＳｉは、ネットワークケーブルＣｉを通じて、スレーブコントローラＳｉ＋１に接続されている。ここで、ｉは、１以上５以下の整数である。なお、ネットワークケーブルＣ０、ネットワークケーブルＣ１、ネットワークケーブルＣ２、ネットワークケーブルＣ３、ネットワークケーブルＣ４及びネットワークケーブルＣ５を、ネットワークケーブルＣと総称する場合がある。
【００２８】
スレーブコントローラＳ１、スレーブコントローラＳ２、スレーブコントローラＳ３、スレーブコントローラＳ４、スレーブコントローラＳ５及びスレーブコントローラＳ６は、それぞれ被制御機器４０ａ、被制御機器４０ｂ、被制御機器４０ｃ、被制御機器４０ｄ、被制御機器４０ｅ及び被制御機器４０ｆに接続されている。スレーブコントローラＳは、それぞれ接続されている被制御機器４０との間のデータの入出力を担う。具体的には、スレーブコントローラＳ１は、被制御機器４０ａとの間のデータの入出力を担う。スレーブコントローラＳ２は、被制御機器４０ｂとの間のデータの入出力を担う。なお、スレーブコントローラＳの数、及び、被制御機器４０の数は、本実施形態に示される数に限定されない。また、スレーブコントローラＳがデータの入出力を行う被制御機器４０の数は、１つに限られない。スレーブコントローラＳの少なくとも１つは、複数の被制御機器４０に接続され、接続された複数の被制御機器４０のそれぞれとの間でデータの入出力を行ってよい。
【００２９】
制御システム１０は、工場やプラント等の産業施設において用いられてよい。制御システム１０は、ファクトリーオートメーションの少なくとも一部として用いられてよい。管理装置２０、マスタコントローラＭ及びスレーブコントローラＳは、産業用制御システムであってよい。被制御機器４０は、管理装置２０、マスタコントローラＭ及びスレーブコントローラＳによる制御対象となる機器である。被制御機器４０は、モータ、エンコーダ、ポンプ、バルブ、カメラ、各種センサ等であってよい。被制御機器４０は、例えば産業機械であってよい。マスタコントローラＭ及びスレーブコントローラＳは、それぞれプログラマブルロジックコントローラ（ＰＬＣ）であってよい。
【００３０】
管理装置２０は、制御システム１０を統括制御する。管理装置２０は、マスタコントローラＭとの間でメッセージを送受信することにより、制御システム１０を統括制御する。管理装置２０は、マスタコントローラＭからステータス情報を読み出し、制御システム１０が制御する工程に従って、マスタコントローラＭに各種の制御指示を出力する。
【００３１】
スレーブコントローラＳは、被制御機器４０の状態を示す情報や、被制御機器４０が計測した結果を示す情報等のデータを、監視データとして被制御機器４０から取得する。スレーブコントローラＳは、被制御機器４０から入力された監視データを、マスタコントローラＭに送信する。なお、監視データは、被制御機器４０からの入力データの一例である。
【００３２】
マスタコントローラＭ及びスレーブコントローラＳは、ラダー図等を通じて生成されたシーケンス制御のための制御プログラムを有する。マスタコントローラＭは、制御プログラムに従って、管理装置２０から取得したメッセージと、スレーブコントローラＳを通じて取得した監視データとに基づいて、被制御機器４０への制御データを生成して、スレーブコントローラＳに出力する。スレーブコントローラＳは、制御プログラムに従って、マスタコントローラＭから取得した制御データに基づいて、被制御機器４０に制御信号を出力する。
【００３３】
マスタコントローラＭは、制御システム１０が備える複数のコントローラにおけるマスタ装置の一例である。スレーブコントローラＳは、制御システム１０が備える複数のコントローラにおけるスレーブ装置の一例である。本実施形態において、マスタコントローラＭは、ネットワークケーブルＣを通じてスレーブコントローラＳに電力を供給可能である。また、スレーブコントローラＳ４は、ネットワークケーブルＣを通じて他のスレーブコントローラＳに電力を供給可能である。マスタコントローラＭ及びスレーブコントローラＳ４のように、ネットワークケーブルＣを通じて他のスレーブコントローラＳに電力を供給可能であることを、「給電機能を有する」等と呼ぶ場合がある。
【００３４】
ネットワークケーブルＣには、仕様上、電力を伝送可能な最大長が定められている。本実施形態において、ネットワークケーブルＣが電力を伝送可能な最大長を「仕様長」と呼ぶ。例えば、ネットワークケーブルＣが準拠する規格によって、仕様長が定められる。本実施形態では、ネットワークケーブルＣ０〜Ｃ５の仕様長が１００ｍであるとする。また、ネットワークケーブルＣを通じて電力を供給する供給先のスレーブコントローラＳの台数にも制約がある。電力供給先のスレーブコントローラＳの台数を給電可能台数と呼ぶ。本実施形態では、給電可能台数は４台とする。システム構築者は、給電可能台数及びネットワークケーブルＣの仕様長を考慮して、マスタコントローラＭ及びスレーブコントローラＳを配置して、各ネットワークケーブルＣの長さを選択する。
【００３５】
本実施形態において、マスタコントローラＭは、スレーブコントローラＳ１、スレーブコントローラＳ２、スレーブコントローラＳ３及びスレーブコントローラＳ４への電力供給を担う。スレーブコントローラＳ４は、スレーブコントローラＳ５及びスレーブコントローラＳ６への電力供給を担う。なお、スレーブコントローラＳ１、スレーブコントローラＳ２、スレーブコントローラＳ３、スレーブコントローラＳ５及びスレーブコントローラＳ６は、他のスレーブコントローラＳへの給電機能を有しない。
【００３６】
ここで、スレーブコントローラＳはそれぞれ主電源を有しており、通常運用時は主電源からの電力で動作する。スレーブコントローラＳは、保守時等に、主電源がオフされる場合がある。例えばスレーブコントローラＳ４の主電源をオフにした場合、スレーブコントローラＳ４の通信機能は、ネットワークケーブルＣ３を通じて供給される電力を用いて維持される。これにより、スレーブコントローラＳ５及びスレーブコントローラＳ６とマスタコントローラＭとの間の通信を維持することができる。
【００３７】
管理装置２０は、システム構成情報に基づいて、給電可能台数をチェックする。例えば、管理装置２０は、マスタコントローラＭが電力供給を担うスレーブコントローラＳの台数が給電可能台数を超えている場合には、仕様外構成である旨のメッセージを発する。これにより、マスタコントローラＭの給電容量を超えた台数のスレーブコントローラＳが接続されることを防ぐことができる。
【００３８】
しかし、マスタコントローラＭ及びスレーブコントローラＳに実際に接続されたネットワークケーブルＣ０、ネットワークケーブルＣ１、ネットワークケーブルＣ２及びネットワークケーブルＣ３の長さを合計した全長が仕様長１００ｍを超えていると、マスタコントローラＭからネットワークケーブルＣを通じてスレーブコントローラＳ４に適切な電力を供給されない場合がある。そのため、スレーブコントローラＳ４の主電源をオフすると、スレーブコントローラＳ４の通信機能を維持できずに、スレーブコントローラＳ５及びスレーブコントローラＳ６とマスタコントローラＭとの間の通信を維持することができなくなる場合がある。
【００３９】
本実施形態において、マスタコントローラＭは、ネットワークケーブルＣを通じて電力の供給可能範囲に設けられたネットワークケーブルＣの全長を算出する機能を有する。具体的には、マスタコントローラＭは、スレーブコントローラＳ４までの間に接続されたネットワークケーブルＣの全長を計測する。そして、マスタコントローラＭは、当該ネットワークケーブルＣの全長が１００ｍを超えている場合に、警告を発する。また、マスタコントローラＭは、スレーブコントローラＳ４からスレーブコントローラＳ６までの間に接続されたネットワークケーブルＣの全長を計測する。そして、マスタコントローラＭは、当該ネットワークケーブルＣの全長が１００ｍを超えている場合に、警告を発する。これにより、給電機能を有するコントローラから供電先の末端のスレーブコントローラＳまでのネットワークケーブルＣの全長が１００ｍを超えた状態で制御システム１０が運用される可能性を抑制することができる。
【００４０】
図２は、マスタコントローラＭの機能構成を概略的に示す。マスタコントローラＭは、制御部２１０と、電力供給部２２０と、ネットワークインタフェース２４０と、通信部２３０と、タイマ２６０と、通知部２７０と、主電源２８０と、コネクタ部Ｔとを備える。コネクタ部Ｔには、ネットワークケーブルＣ０が接続される。
【００４１】
制御部２１０は、ネットワークインタフェース２４０及び通信部２３０と互いにデータを送受信する。制御部２１０は、プロセッサであってよい。制御部２１０は、マイクロコントローラであってよい。制御部２１０は、中央処理装置（ＣＰＵ）、ＲＯＭ、ＲＡＭ等を含む半導体集積回路で構成される。制御部２１０は制御プログラムを格納する記憶部を内部に有する。
【００４２】
制御部２１０は、マスタコントローラＭにおける主処理を担う。制御部２１０は、制御プログラムに従って、通信部２３０、通知部２７０、通信部２３０及びネットワークインタフェース２４０を含む、マスタコントローラＭの各部を制御する。例えば、制御部２１０は、内部の記憶部に格納された制御プログラムに従って、スレーブコントローラＳから取得した監視データの処理を行い、スレーブコントローラＳに対する制御データを監視データに基づいて生成する処理を行う。
【００４３】
タイマ２６０は、時刻を示すタイマ値を生成して、制御部２１０に供給する。制御部２１０は、タイマ２６０から供給されたタイマ値を用いて、各種の処理を実行する。
【００４４】
通信部２３０は、管理装置２０との通信を担う。通信部２３０は、管理装置２０からのメッセージを受信して、受信したメッセージを制御部２１０に出力する。また、通信部２３０は、管理装置２０へのメッセージを制御部２１０から受信して、受信したメッセージを管理装置２０に送信する。通信部２３０から管理装置２０に送信されるメッセージには、被制御機器４０から取得した監視データや、制御システム１０のステータス等の情報が含まれる。
【００４５】
ネットワークインタフェース２４０は、ＦＰＧＡ等の半導体集積回路で構成される。ネットワークインタフェース２４０は、スレーブコントローラＳから監視データを受信する。制御部２１０は、ネットワークインタフェース２４０が受信した監視データを用いて、制御プログラムに従って制御データを生成する。制御部２１０は、生成した制御データを、ネットワークインタフェース２４０を通じてスレーブコントローラＳに送信する。
【００４６】
主電源２８０は、マスタコントローラＭの各部に電力を供給する。制御部２１０、通信部２３０、ネットワークインタフェース２４０及び通知部２７０は、主電源２８０から供給された電力により動作する。
【００４７】
マスタコントローラＭは、ネットワークケーブルＣ０を通じてスレーブコントローラＳに電力を供給可能である。具体的には、電力供給部２２０は、主電源２８０から供給された電力を、コネクタＴに供給する。例えば、電力供給部２２０は、コネクタ部ＴのグランドラインＧに電力を供給する。グランドラインＧに供給された電力は、ネットワークケーブルＣ０のグランドラインを通じてスレーブコントローラＳ１に供給される。
【００４８】
制御部２１０の機能について説明する。制御部２１０は、判定処理部２００を有する。判定処理部２００は、制御部２１０の機能部分であってよい。判定処理部２００は、判定部２０４と、特定部２０６と、取得部２０８とを含む。
【００４９】
判定処理部２００は、マスタコントローラＭ及びスレーブコントローラＳをデイジーチェーン接続するネットワークケーブルＣによって生じる通信の遅延時間を判定する。判定部２０４は、マスタコントローラＭからネットワークケーブルＣを通じて供給された電力により動作可能なスレーブコントローラＳとマスタコントローラＭとの間においてネットワークケーブルＣによって生じる通信の遅延時間を計測する。判定部２０４は、当該計測された、マスタコントローラＭとスレーブコントローラＳとの間においてネットワークケーブルＣによって生じる通信の遅延時間を判定する。具体的には、判定部２０４は、ネットワークケーブルＣを通じてマスタコントローラＭからスレーブコントローラＳに信号が送信されてから当該信号に対する当該スレーブコントローラＳからの第１応答信号をマスタコントローラＭが受信するまでの第１経過時間と、複数のコントローラのうち、マスタコントローラＭと当該スレーブコントローラＳとの間の通信経路上にある１以上のコントローラが信号を伝送する処理に要する第１伝送処理時間とに基づいて、ネットワークケーブルＣによって生じる通信の遅延時間を算出する。
【００５０】
例えば、判定部２０４は、ネットワークケーブルＣを通じてマスタコントローラＭからスレーブコントローラＳ４に信号が送信されてから当該信号に対するスレーブコントローラＳ４からの第１応答信号をマスタコントローラＭが受信するまでの第１経過時間と、複数のマスタコントローラＭとスレーブコントローラＳ４との間の通信経路上にある１以上のコントローラが信号を伝送する処理に要する第１伝送処理時間とに基づいて、マスタコントローラＭとスレーブコントローラＳ４との間におけるネットワークケーブルＣによって生じる通信の遅延時間を算出する。
【００５１】
第１伝送処理時間は、複数のコントローラのうち、スレーブコントローラＳに送信された信号を中継する１以上のコントローラが信号を中継するのに要する中継時間と、スレーブコントローラＳがスレーブコントローラＳに送信された信号を受信してから第１応答信号を送信するまでに要する応答時間とを含んでよい。
【００５２】
本実施形態に関連して後述するように、遅延時間の判定対象となるネットワークケーブルＣで接続されたスレーブコントローラＳは、電力供給機能を有するスレーブコントローラＳ４であってよい。スレーブコントローラＳ４は、ネットワークケーブルＣを通じて電力を供給可能なスレーブコントローラの一例である。しかし、遅延時間の判定対象となるスレーブコントローラは、電力供給機能を有しないスレーブコントローラであってよい。
【００５３】
次に、電力供給機能を有するスレーブコントローラＳと電力供給機能を有しないスレーブコントローラＳとの間においてネットワークケーブルＣにより生じる遅延時間を判定する場合を説明する。ここでは、スレーブコントローラＳ４とスレーブコントローラＳ６との間においてネットワークケーブルＣにより生じる遅延時間を判定する場合を取り上げて説明する。判定部２０４は、マスタコントローラＭからネットワークケーブルＣを通じてスレーブコントローラＳ６に信号が送信されてから当該信号に対するスレーブコントローラＳ６からの第２応答信号をマスタコントローラＭが受信するまでの第２経過時間をさらに計測する。そして、判定部２０４は、複数のコントローラのうち、マスタコントローラＭとスレーブコントローラＳ６との間の通信経路上にある複数のコントローラが信号を伝送する処理に要する第２伝送処理時間と、上述した第１経過時間と、上述した第２経過時間とに基づいて、スレーブコントローラＳ４とスレーブコントローラＳ６との間においてネットワークケーブルＣによって生じる通信の遅延時間を算出する。第２伝送処理時間は、複数のコントローラのうち、スレーブコントローラＳ６に送信された信号を中継するコントローラが信号を中継するのに要する中継時間と、スレーブコントローラＳ６がスレーブコントローラＳ６に送信された信号を受信してから第２応答信号を送信するまでに要する応答時間とを含んでよい。
【００５４】
通知部２７０は、判定部２０４がネットワークケーブルＣによって生じる通信の遅延時間が予め定められた時間を超えると判定した場合に通知する。また、判定部２０４は、ネットワークケーブルＣによって生じる通信の遅延時間から算出されるネットワークケーブルＣの長さが、ネットワークケーブルＣが電力を伝送可能な予め定められた規定長を超えるか否かを判定してよい。規定長は、例えば上述した仕様長であってよい。
【００５５】
取得部２０８は、デイジーチェーン接続におけるマスタコントローラＭ及びスレーブコントローラＳの接続構成を示す情報と、マスタコントローラＭ及びスレーブコントローラＳのうち、ネットワークケーブルＣを通じて他のコントローラに電力を供給可能なコントローラを特定する情報とを含む接続情報を取得する。そして、特定部２０６は、当該接続情報に基づいて、ネットワークケーブルＣを通じて電力を供給可能なマスタコントローラＭ及び０以上のスレーブコントローラＳと、当該電力供給可能なコントローラが電力を供給するべき１以上のスレーブコントローラＳとを特定する。
【００５６】
本実施形態では、判定処理部２００は、マスタコントローラＭにおける制御部２１０の機能ブロックである。一方、判定処理部２００の機能は、マスタコントローラＭとは独立した装置に実装されてよい。例えば、判定処理部２００の機能は、管理装置２０に実装されてよい。また、判定処理部２００の機能は、スレーブコントローラＳに実装されてよい。判定処理部２００の機能をスレーブコントローラＳ４に実装する場合については、制御システム１０の変形例に関連して後述する。
【００５７】
図３は、スレーブコントローラＳ１の機能構成を概略的に示す。スレーブコントローラＳ１は、電力供給機能を有しないスレーブコントローラである。
【００５８】
スレーブコントローラＳ１は、制御部３１０と、電力取得部３５０と、タイマ３６０と、ネットワークインタフェース３４０と、主電源３８０と、コネクタ部Ｔ１と、コネクタ部Ｔ２とを備える。コネクタ部Ｔ１には、デイジーチェーン接続における上流側のネットワークケーブルＣ０が接続される。コネクタ部Ｔ２には、デイジーチェーン接続における下流側のネットワークケーブルＣであるネットワークケーブルＣ１が接続される。
【００５９】
制御部３１０は、ネットワークインタフェース２４０とデータを送受信する。制御部３１０は、プロセッサであってよい。制御部３１０は、マイクロコントローラであってよい。制御部３１０は、中央処理装置（ＣＰＵ）、ＲＯＭ、ＲＡＭ等を含む半導体集積回路で構成される。制御部３１０は制御プログラムを格納する記憶部を内部に有する。制御部３１０は、制御プログラムに従って、ネットワークインタフェース２４０を含む、スレーブコントローラＳ１の各部を制御する。
【００６０】
ネットワークインタフェース３４０は、ＦＰＧＡ等の半導体集積回路で構成される。ネットワークインタフェース３４０は、マスタコントローラＭから制御データを受信する。ネットワークインタフェース３４０は、マスタコントローラＭからの制御データを、コネクタＴ１を通じて受信する。
【００６１】
制御部３１０は、スレーブコントローラＳ１における主処理を担う。例えば、制御部３１０は、内部の記憶部に格納された制御プログラムに従って、マスタコントローラＭから送信された制御データに基づいて、被制御機器４０への入力信号を出力する。また。制御部３１０は、被制御機器４０から出力される出力信号を取得して、監視データを生成する。制御部３１０は、生成した監視データをネットワークインタフェース３４０に出力する。ネットワークインタフェース３４０は、制御部３１０から取得した監視データをマスタコントローラＭに送信する。
【００６２】
タイマ３６０は、タイマ値を生成して、制御部３１０に供給する。制御部３１０は、タイマ３６０から供給されたタイマ値を用いて、各種の処理を実行する。
【００６３】
また、ネットワークインタフェース３４０は、マスタコントローラＭから受信した他のスレーブコントローラＳ宛の制御データを中継する。ネットワークインタフェース３４０は、他のスレーブコントローラＳ宛の制御データを、コネクタＴ２を通じてネットワークケーブルＣ１に出力する。
【００６４】
主電源３８０は、スレーブコントローラＳ１の各部に電力を供給する。制御部３１０及びネットワークインタフェース３４０は、主電源３８０から供給された電力により動作する。スレーブコントローラＳ１は、主電源３８０からの電力が遮断された場合に、マスタコントローラＭからネットワークケーブルＣを通じて供給された電力を用いて複数のコントローラのうちの他の制御装置との間の通信を維持する。
【００６５】
電力取得部３５０は、コネクタＴ１のグランドラインＧ及びコネクタＴ２のグランドラインＧの少なくとも一方から電力を取得する。主電源３８０がオフされた場合、電力取得部３５０は、コネクタＴ１のグランドラインＧから取得した電力を、ネットワークインタフェース３４０に供給する。これにより、スレーブコントローラＳ１の通信機能を維持することができる。
【００６６】
なお、電力取得部３５０は、コネクタＴ２のグランドラインＧから電力が供給されている場合には、コネクタＴ２のグランドラインＧから取得した電力を、ネットワークインタフェース３４０に供給する。また、コネクタＴ１のグランドラインＧとコネクタＴ２のグランドラインＧとは短絡されており、コネクタＴ１のグランドラインＧを通じて供給された電力は、コネクタＴ２のグランドラインＧを通じて下流のスレーブコントローラＳに供給される。
【００６７】
スレーブコントローラＳ２、スレーブコントローラＳ３、スレーブコントローラＳ５及びスレーブコントローラＳ６は、スレーブコントローラＳ１が有する構成と同様の機能構成を有する。そのため、スレーブコントローラＳ２、スレーブコントローラＳ３、スレーブコントローラＳ５及びスレーブコントローラＳ６の機能構成については説明を省略する。
【００６８】
図４は、スレーブコントローラＳ４の機能構成を概略的に示す。スレーブコントローラＳ４は、電力供給機能を有するスレーブコントローラである。スレーブコントローラＳ４は、制御部４１０と、電力取得部４５０と、タイマ４６０と、ネットワークインタフェース４４０と、主電源４８０と、コネクタ部Ｔ１と、コネクタ部Ｔ２とを備える。
【００６９】
スレーブコントローラＳ４は、電力を供給する機能を有する点を除いて、スレーブコントローラＳ１と略同一の機能を有する。具体的には、スレーブコントローラＳ４における制御部４１０、ネットワークインタフェース４４０、電力取得部４５０、タイマ４６０、主電源４８０、コネクタ部Ｔ１及びコネクタ部Ｔ２は、それぞれスレーブコントローラＳ１における制御部３１０、ネットワークインタフェース３４０、電力取得部３５０、タイマ３６０、主電源３８０、コネクタ部Ｔ１及びコネクタ部Ｔ２に対応する。そのため、スレーブコントローラＳ４における制御部４１０、ネットワークインタフェース４４０、電力取得部４５０、主電源４８０、コネクタ部Ｔ１及びコネクタ部Ｔ２についての説明は省略する。
【００７０】
電力供給部４２０は、主電源４８０から供給された電力を、コネクタＴ１及びコネクタＴ２に供給することができる。具体的には、電力供給部２２０は、コネクタ部Ｔ１のグランドラインＧ及びコネクタ部Ｔ２のグランドラインＧに電力を供給することができる。
【００７１】
ここで、コネクタ部Ｔ１には、デイジーチェーン接続における上流側のスレーブコントローラＳ３からのネットワークケーブルＣ３が接続されており、コネクタ部Ｔ２には、デイジーチェーン接続における下流側のスレーブコントローラＳ５からのネットワークケーブルＣ４が接続されているとする。この場合、電力供給部４２０は、主電源４８０から供給された電力をコネクタＴ２のグランドラインＧに供給する。これにより、スレーブコントローラＳ４は、ネットワークケーブルＣ４を通じてスレーブコントローラＳ５に電力を供給可能となる。
【００７２】
なお、コネクタ部Ｔ１に下流側のスレーブコントローラＳ５からのネットワークケーブルＣ４が接続され、コネクタ部Ｔ２に上流側のスレーブコントローラＳ３からのネットワークケーブルＣ３が接続されている場合、電力供給部４２０は、主電源４８０から供給された電力をコネクタＴ１のグランドラインＧに供給する。これにより、このスレーブコントローラＳ５及びスレーブコントローラＳ６は、主電源からの電力が遮断された場合に、スレーブコントローラＳ４からネットワークケーブルＣを通じて供給された電力を用いて他のコントローラとの間の通信を維持する。
【００７３】
図５は、マスタコントローラＭからスレーブコントローラＳ４までの間のネットワークケーブルの全長が仕様長を超えている場合に生じ得る事象を概略的に示す。
【００７４】
ここでは、ネットワークケーブルＣ０の長さ、ネットワークケーブルＣ１の長さ、ネットワークケーブルＣ２の長さ及びネットワークケーブルＣ３の長さが、それぞれ２０ｍ、４０ｍ、４０ｍ及び２０ｍであるとする。マスタコントローラＭからスレーブコントローラＳ３までの間のネットワークケーブルＣの全長は１００ｍである。そのため、スレーブコントローラＳ３は、マスタコントローラＭから供給される規定の電力を受け取ることができる。
【００７５】
しかし、マスタコントローラＭからスレーブコントローラＳ４までのネットワークケーブルＣの全長は１２０ｍであるため、スレーブコントローラＳ４の主電源がオフされると、スレーブコントローラＳ４のネットワークインタフェース４４０は、マスタコントローラＭから規定の電力を受け取ることができなくなる場合がある。ネットワークインタフェース４４０の動作を維持できなくなると、スレーブコントローラＳ５が上流側のマスタコントローラＭとの間の通信を維持できなくなる。これにより、スレーブコントローラＳ５及びスレーブコントローラＳ６がマスタコントローラＭの制御から脱落してしまう。
【００７６】
そこで、マスタコントローラＭは、マスタコントローラＭが電力供給を担うスレーブコントローラＳ１〜Ｓ４のうち、デイジーチェーン接続において最も下流側のスレーブコントローラＳ４までのネットワークケーブルＣの全長を測定する。そして、マスタコントローラＭは、測定した全長が仕様長を超える場合に警告する。
【００７７】
なお、ネットワークケーブルＣの全長が長くなると、電力伝送だけでなく、ネットワーク通信の電気信号も劣化する。しかし、一般に、ネットワーク通信においては、電気信号の劣化に対して比較的にロバストに設計されるため、ネットワークケーブルＣの全長が仕様長を超えている場合でも通信不能が生じにくい。そのため、マスタコントローラＭ及びスレーブコントローラＳの主電源がオンされている場合には、ネットワークケーブルＣの全長が仕様長を超えていることに気づきにくい。そして、運用中にスレーブコントローラＳ４の主電源をオフした場合にスレーブコントローラＳが脱落することで、ネットワークケーブルＣの全長が仕様長を超えていることに初めて気づく場合がある。
【００７８】
図６は、マスタコントローラＳ４からスレーブコントローラＳ６までの間のネットワークケーブルの全長が仕様長を超えている場合に生じ得る事象を概略的に示す。ここでは、ネットワークケーブルＣ４の長さが８０ｍであり、ネットワークケーブルＣ５の長さが７０ｍであるとする。
【００７９】
スレーブコントローラＳ４からスレーブコントローラＳ６までのネットワークケーブルＣの全長は１５０ｍである。そのため、スレーブコントローラＳ６の主電源がオフされると、スレーブコントローラＳ６のネットワークインタフェース３４０は、スレーブコントローラＳ４から供給される規定の電力を受け取ることができない場合がある。これにより、スレーブコントローラＳ６のネットワークインタフェース３４０がマスタコントローラＭと通信することができなくなり、マスタコントローラＭの制御に支障が生じる場合がある。例えば、マスタコントローラＭからの信号を各スレーブコントローラＳがバケツリレー方式で伝達してマスタコントローラＭに返送する場合に、スレーブコントローラＳ６のネットワークインタフェース３４０から信号が上流側に返信されずに失われてしまう場合がある。
【００８０】
そこで、マスタコントローラＭは、スレーブコントローラＳ４が電力供給を担うスレーブコントローラＳ５及びＳ６のうち最も下流側のスレーブコントローラＳ６と、スレーブコントローラＳ４との間のネットワークケーブルＣの全長を測定する。そして、マスタコントローラＭは、測定した全長が仕様長を超える場合に警告する。
【００８１】
図５及び図６に関連して説明したように、マスタコントローラＭは、マスタコントローラＭ及びスレーブコントローラＳ４のそれぞれが電力供給を担う範囲のネットワークケーブルＣの全長がネットワークケーブルＣの仕様長を超えている場合に警告する。これにより、ネットワークケーブルＣの全長が仕様長を超えている状態で制御システム１０が運用され続けてしまうことを未然に防ぐことができる。
【００８２】
図７は、マスタコントローラＭが取得する、給電機能有無情報の一例をテーブル形式で示す。給電機能有無情報は、管理装置２０からマスタコントローラＭに送信されるシステム構成情報に含めて送信される。給電機能有無情報は、スレーブコントローラＳの識別情報と、それぞれのスレーブコントローラＳが電力供給機能を有するか否かを示す情報とを含む。マスタコントローラＭの特定部２０６は、給電機能有無情報に基づいて、マスタコントローラＭ及びスレーブコントローラＳのうち、電力供給を担うスレーブコントローラＳを特定する。
【００８３】
図８は、マスタコントローラＭが特定する、電力供給を担う範囲の一例をテーブル形式で示す。管理装置２０からマスタコントローラＭに送信されるシステム構成情報には、図７に示す給電機能有無情報の他に、デイジーチェーン接続されるマスタコントローラＭ及びスレーブコントローラＳの接続構成を示す情報を含む。例えば、接続構成は、スレーブコントローラＳ１〜Ｓ６は、上流から下流に向けて、スレーブコントローラＳ１、Ｓ２、Ｓ３、Ｓ４、Ｓ５及びＳ６の順でデイジーチェーン接続されることを示す。
【００８４】
マスタコントローラＭの特定部２０６は、システム構成情報に含まれる給電機能有無情報及び接続構成に基づいて、スレーブコントローラＳ４が電力供給を担うべきスレーブコントローラＳとして、スレーブコントローラＳ５及びスレーブコントローラＳ６を特定する。また、マスタコントローラＭは、マスタコントローラＭが電力供給を担うべきスレーブコントローラＳとして、スレーブコントローラＳ１、スレーブコントローラＳ２、スレーブコントローラＳ３及びスレーブコントローラＳ４を特定する。
【００８５】
これにより、特定部２０６は、マスタコントローラＭが電力供給を担う範囲のスレーブコントローラＳ１〜Ｓ４のうち、最も下流側のスレーブコントローラＳ４を、マスタコントローラＭとの間のネットワークケーブルＣの全長の測定対象として特定する。また、特定部２０６は、スレーブコントローラＳ４が電力供給を担う範囲のスレーブコントローラＳ５及びＳ６のうち、最も下流側のスレーブコントローラＳ６を、スレーブコントローラＳ４との間のネットワークケーブルＣの全長の測定対象として特定する。
【００８６】
図９は、ネットワークケーブルＣの全長の測定方法を説明するための図である。
【００８７】
スレーブコントローラＳ４との間のネットワークケーブルＣの全長を測定する場合、マスタコントローラＭにおいて、制御部２１０は、ネットワークインタフェース２４０に、スレーブコントローラＳ４宛の要求信号Ｒｑ１を送信させる。スレーブコントローラＳ４において、ネットワークインタフェース４４０が要求信号Ｒｑ１を受信すると、制御部４１０はマスタコントローラＭ宛の応答信号Ｒｓ１を生成して、ネットワークインタフェース４４０に応答信号Ｒｓ１を送信させる。マスタコントローラＭにおいて、制御部２１０の判定部２０４は、ネットワークインタフェース２４０が応答信号要求信号Ｒｑ１を送信してから、ネットワークインタフェース２４０が応答信号Ｒｓ１を受信するまでの経過時間Ｔｍ＿Ｓ４を計測する。判定部２０４は、タイマ２６０から供給されたタイマ値を用いて、経過時間Ｔｍ＿Ｓ４を算出する。判定部２０４は、経過時間Ｔｍ＿Ｓ４を用いて、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣの全長を算出する。
【００８８】
ここで、ネットワークケーブルＣｉを信号が通過するのに要する時間をｔｃｉとする。ｉは、０から５の整数であるとする。ｔａは、スレーブコントローラＳが信号を中継するのに要する時間である。ｔａは、スレーブコントローラＳにおけるネットワークインタフェースの処理能力によって予め定められた値を持つとしてよい。しかし、ここでは、ｔａは各スレーブコントローラＳにおいて同じ値とする。ｔｂは、スレーブコントローラＳにおいて要求信号を受信してからマスタコントローラＭ宛の応答信号を送信するまでに要する応答時間である。応答時間には、スレーブコントローラＳにおいて応答信号を生成する時間が含まれる。ｔｂは、予め定められた値としてよい。
【００８９】
判定部２０４は、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣ０−Ｃ３内を信号が通過するのに要する時間ｔｃ０＋ｔｃ１＋ｔｃ２＋ｔｃ３を、Ｔｍ＿Ｓ４／２  −  ３ｔａ  −  ｔｂ／２により算出する。
【００９０】
一例として、ｔａ及びｔｂを共に２００ｎｓとする。Ｔｍ＿Ｓ４が１８００ｎｓであった場合、ネットワークケーブルＣ０−Ｃ３内の信号の通過時間は２００ｎｓとなる。判定部２０４は、当該通過時間とネットワークケーブルＣ内の電気信号の伝搬速度とに基づいて、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣの全長を算出する。例えば、ネットワークケーブルＣ内の電気信号の伝搬速度を３×１０８ｍ／ｓとすると、当該全長は６０ｍと算出される。この場合、判定部２０４は、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣの全長がネットワークケーブルＣの仕様長を超えていないと判定する。
【００９１】
次に、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣの全長を測定する場合を説明する。マスタコントローラＭにおいて、制御部２１０は、ネットワークインタフェース２４０に、スレーブコントローラＳ６宛の要求信号Ｒｑ２を送信させる。スレーブコントローラＳ６において、ネットワークインタフェース３４０が要求信号Ｒｑ２を受信すると、制御部３１０はマスタコントローラＭ宛の応答信号Ｒｓ２を生成して、ネットワークインタフェース３４０に応答信号Ｒｓ２を送信させる。マスタコントローラＭにおいて、制御部２１０の判定部２０４は、ネットワークインタフェース２４０が要求信号Ｒｑ２を送信してから、ネットワークインタフェース２４０が応答信号Ｒｓ２を受信するまでの経過時間Ｔｍ＿Ｓ６を算出する。判定部２０４は、経過時間Ｔｍ＿Ｓ４と、経過時間Ｔｍ＿Ｓ６とを用いて、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣの全長を算出する。
【００９２】
具体的には、判定部２０４は、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣ４−Ｃ５内を信号が通過するのに要する時間ｔｃ４＋ｔｃ５を、（Ｔｍ＿Ｓ６−Ｔｍ＿Ｓ４）／２  −  ２ｔａにより算出する。一例として、上述したようにｔａ及びｔｂを共に２００ｎｓとし、Ｔｍ＿Ｓ４が２０００ｎｓであり、Ｔｍ＿Ｓ６が３６００ｎｓであった場合、ネットワークケーブルＣ４−Ｃ５内の信号の通過時間は５００ｎｓとなる。判定部２０４は、当該通過時間とネットワークケーブルＣ内の信号の伝搬速度とに基づいて、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣの全長を算出する。例えば、ネットワークケーブルＣ内の信号の伝搬速度を３×１０８ｍ／ｓとすると、当該全長は１５０ｍと算出される。
【００９３】
この場合、判定部２０４は、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣの全長がネットワークケーブルＣの仕様長を超えていると判定する。この場合、通知部２７０は、ケーブル長が仕様長を超えていることを運用者に通知する。例えば、通知部２７０は、仕様外構成であることを警告するためのランプを点灯させる。また、制御部２１０は、ケーブル長が仕様長を超えていることを示す警告情報を管理装置２０に送信してよい。これにより、電力供給範囲内におけるケーブル長が仕様長を超えている場合に、運用者に警告することができる。
【００９４】
なお、上述したマスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣ内の信号の通過時間は、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣにより生じる通信の遅延時間に対応する。また、上述したように、ネットワークケーブルＣ内の信号の伝搬速度は略一定であるので、当該通過時間を、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣの長さの指標として使用できる。上述したスレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣ内の信号の通過時間についても同様である。したがって、判定部２０４は、必ずしもケーブル長を算出して判定する必要はなく、当該ネットワークケーブルＣ内の通過時間を用いて判定を行ってよい。
【００９５】
図１０は、マスタコントローラＭにおける処理を示すフローチャートである。本フローチャートの処理は、制御部２１０が主体となってマスタコントローラＭの各部を制御することにより実行される。本フローチャートの処理は、電源投入により開始されてよい。
【００９６】
Ｓ１０００において、制御部２１０の取得部２０８は、通信部２３０を通じて、システム構成情報を管理装置２０から取得する。Ｓ１００２において、制御部２１０の特定部２０６は、Ｓ１０００で取得したシステム構成情報に基づいて、給電機能を有するスレーブコントローラＳ４を特定し、マスタコントローラＭ及びスレーブコントローラＳ４がそれぞれ電力供給を担う範囲を特定する。
【００９７】
Ｓ１００４において、判定部２０４は、給電機能を有する各コントローラについて、各コントローラの電力供給範囲におけるネットワークケーブルＣによる通信の遅延時間を計測する。具体的には、判定部２０４は、上述したマスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣ内を信号が通過する時間と、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣ内を信号が通過する時間とを計測する。
【００９８】
Ｓ１００６において、判定部２０４は、給電機能を有する各コントローラについて、各コントローラの電力供給範囲におけるネットワークケーブルＣの全長を算出する。具体的には、判定部２０４は、上述したマスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣの全長と、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣの全長とを算出する。
【００９９】
Ｓ１００８において、判定部２０４は、Ｓ１００６で算出した給電機能を有する各コントローラの電力供給範囲内のネットワークケーブルＣの全長が、ネットワークケーブルＣの仕様長を超えるか否かを判定する。少なくとも１つの電力供給範囲について、ネットワークケーブルＣの全長が仕様長を超えると判定された場合、Ｓ１０１０において仕様外構成である旨の通知を行う。例えば、通知部２７０がランプを点灯させることにより運用者に通知する。また、制御部２１０は、警告情報を管理装置２０に送信する。Ｓ１０１０において仕様外構成の通知をした後、制御部２１０は、制御システム１０の通常運用を開始せずに、制御システム１０の動作を終了させる。
【０１００】
Ｓ１００８の判定において、全ての電力供給範囲について、ネットワークケーブルＣの全長が仕様長を超えないと判定された場合、Ｓ１０２４において、制御システム１０の通常運用を開始する。
【０１０１】
Ｓ１０２６において、判定部２０４は、マスタコントローラＭと各スレーブコントローラＳとの間で定期的に計測される通信の遅延時間から、マスタコントローラＭとスレーブコントローラＳ４との間、及び、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣによる通信の遅延時間を計測する。通常運用中、制御部２１０は、マスタコントローラＭ及びスレーブコントローラＳとの間で時刻の同期を取るために、マスタコントローラＭと各スレーブコントローラＳとの間の通信経路中で生じる通信遅延時間を計測する。通信経路中の通信の遅延時間は、例えば、上述したＴｍ＿Ｓ４、Ｔｍ＿Ｓ６に対応する。判定部２０４は、定期的に計測される通信経路中の通信遅延時間から、上述した給電機能を有する各コントローラの電力供給範囲内のネットワークケーブルＣによる通信の遅延時間を算出し、判定部２０４が、Ｓ１００６と同様に、算出されたネットワークケーブルＣによる通信の遅延時間から、各電力供給範囲内のネットワークケーブルＣの全長を算出する。
【０１０２】
Ｓ１０２８において、判定部２０４は、Ｓ１００８と同様に、Ｓ１０２６で算出した給電機能を有する各コントローラの電力供給範囲内のネットワークケーブルＣの全長が、ネットワークケーブルＣの仕様長を超えるか否かを判定する。Ｓ１０２８の判定において、全ての電力供給範囲について、ネットワークケーブルＣの全長が仕様長を超えないと判定された場合、Ｓ１０２６に処理を移行する。
【０１０３】
Ｓ１０２８の判定において、少なくとも１つの電力供給範囲について、ネットワークケーブルＣの全長が仕様長を超えると判定された場合、Ｓ１０３０において、仕様外構成である旨の通知を行う。Ｓ１０３０においては、Ｓ１０１０と同様の処理を行ってよい。Ｓ１０３０において仕様外構成を通知した後、Ｓ１０２６に処理を移行する。上述したように、ネットワークケーブルＣの全長が仕様長を超える場合でも、スレーブコントローラＳの主電源をオフしなければ、通信は正常に行える場合がある。そのため、通常運用を開始した後においては、スレーブコントローラＳの主電源をオフしない限りは、ネットワークケーブルＣの全長が仕様長を超えると判定された場合でも、制御システム１０の運用を停止することなく、運用を継続してよい。もちろん、通常運用を開始した後においても、ネットワークケーブルＣの全長が仕様長を超えると判定された場合には、制御システム１０の運用を停止してもよい。
【０１０４】
図１０のＳ１０２６、Ｓ１０２８及びＳ１０３０に関連して説明したように、マスタコントローラＭは、通常運用後においても、ネットワークケーブルＣの全長の計測を続ける。ネットワークケーブルＣの状態は、温度等の環境変化によって変わる。そのため、通常運用後においても、ネットワークケーブルＣにおける通信の遅延時間に基づく判定処理を継続的に行うことで、環境変化に応じて適切に警告することが可能になる。
【０１０５】
図１１は、制御システム１０の第１の変形例においてネットワークケーブルＣの長さを測定する方法を説明するための図である。第１の変形例において、スレーブコントローラＳ４は、スレーブコントローラＳ４から供給される電力により動作可能なスレーブコントローラＳとの間におけるネットワークケーブルＣの長さを測定する機能を有する。一例として、スレーブコントローラＳ４の制御部４１０が、マスタコントローラＭが備える判定処理部２００と同様の機能の判定処理部を備えてよい。ここでは、スレーブコントローラＳ４の制御部４１０の動作として、ネットワークケーブルＣの長さを測定する場合の動作を説明する。
【０１０６】
第１の変形例においても、マスタコントローラＭの判定処理部２００が、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣの全長を算出する。具体的には、図９に関連して説明したように、マスタコントローラＭの判定処理部２００が、経過時間Ｔｍ＿Ｓ４を用いて、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣの全長を算出する。
【０１０７】
次に、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣの全長を測定する場合を説明する。スレーブコントローラＳ４において、制御部４１０は、ネットワークインタフェース４４０に、スレーブコントローラＳ６宛の要求信号Ｒｑ２を送信させる。スレーブコントローラＳ６において、ネットワークインタフェース３４０が要求信号Ｒｑ２を受信すると、制御部３１０はマスタコントローラＭ宛の応答信号Ｒｓ２を生成して、ネットワークインタフェース３４０に応答信号Ｒｓ２を送信させる。スレーブコントローラＳ４において、制御部４１０は、ネットワークインタフェース４４０が要求信号Ｒｑ２を送信してから、ネットワークインタフェース２４０が応答信号Ｒｓ２を受信するまでの経過時間ＴＳ４＿Ｓ６を算出する。制御部４１０は、経過時間ＴＳ４＿Ｓ６を用いて、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣの全長を算出する。具体的には、制御部４１０は、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣ４−Ｃ５内を信号が通過するのに要する時間ｔｃ４＋ｔｃ５を、ＴＳ４＿Ｓ６／２−ｔａ−ｔｂ／２により算出する。時間ｔｃ４＋ｔｃ５を用いて判定を行う処理については、マスタコントローラＭに関連して説明した動作と同様であるので、説明を省略する。
【０１０８】
図１１に関連して説明したように、マスタコントローラＭにおいて、判定部２０４は、マスタコントローラＭとスレーブコントローラＳ４との間においてネットワークケーブルＣによって生じる通信の遅延時間を計測し、計測された、マスタコントローラＭとスレーブコントローラＳ４との間においてネットワークケーブルＣによって生じる通信の遅延時間を判定してよい。一方、スレーブコントローラＳ４は、スレーブコントローラＳ４とスレーブコントローラＳ６との間においてネットワークケーブルＣによって生じる通信の遅延時間を計測し、計測された、スレーブコントローラＳ４とスレーブコントローラＳ６との間においてネットワークケーブルＣによって生じる通信の遅延時間を判定する判定部を有してよい。当該判定部は、ネットワークケーブルＣを通じてスレーブコントローラＳ４からスレーブコントローラＳ６に信号が送信されてから当該信号に対するスレーブコントローラＳ６からの応答信号をスレーブコントローラＳ４が受信するまでの第１経過時間と、複数のコントローラのうち、スレーブコントローラＳ４とスレーブコントローラＳ６との間の通信経路上にある１以上のコントローラが信号を伝送する処理に要する伝送処理時間とに基づいて、スレーブコントローラＳ４とスレーブコントローラＳ６との間においてネットワークケーブルＣによって生じる通信の遅延時間を算出してよい。
【０１０９】
図１２は、制御システム１０の第２の変形例におけるネットワークケーブルＣの長さを測定する方法を説明するための図である。第２の変形例において、スレーブコントローラＳ４は、第１の変形例と同様に、スレーブコントローラＳ４から供給される電力により動作可能なスレーブコントローラＳとの間におけるネットワークケーブルＣの長さを測定する機能を有する。スレーブコントローラＳ４がスレーブコントローラＳ６との間におけるネットワークケーブルＣの長さを測定するための動作は、図１１に関連して説明した動作と同様であるので、説明を省略する。
【０１１０】
第２の変形例において、スレーブコントローラＳ４は更に、マスタコントローラＭとスレーブコントローラＳ４との間におけるネットワークケーブルＣの長さを測定する機能を有する。ここでは、第１の変形例との相違点を説明する。
【０１１１】
第２の変形例において、スレーブコントローラＳ４の判定処理部２００が、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣの全長を算出する。具体的には、スレーブコントローラＳ４において、制御部４１０は、ネットワークインタフェース４４０に、マスタコントローラＭ宛の要求信号Ｒｑ１を送信させる。マスタコントローラＭにおいて、ネットワークインタフェース２４０が要求信号Ｒｑ１を受信すると、制御部２１０はマスタコントローラＭ宛の応答信号Ｒｓ１を生成して、ネットワークインタフェース２４０に応答信号Ｒｓ１を送信させる。スレーブコントローラＳ４において、制御部４１０は、ネットワークインタフェース４４０が要求信号Ｒｑ１を送信してから、ネットワークインタフェース４４０が応答信号Ｒｓ２を受信するまでの経過時間ＴＳ４＿ｍを算出する。制御部４１０は、経過時間ＴＳ４＿ｍを用いて、スレーブコントローラＳ４とマスタコントローラＭとの間のネットワークケーブルＣの全長を算出する。なお、経過時間ＴＳ４＿ｍは、図９に関連して説明したＴＳ４＿ｍと同様に表すことができるので、説明を省略する。
【０１１２】
図１２に関連して説明したように、ネットワークケーブルＣによって生じる通信の遅延時間を判定するコントローラは、マスタコントローラＭからネットワークケーブルＣを通じて供給された電力により動作可能であり、複数のコントローラのうちの他のスレーブコントローラＳにネットワークケーブルＣを通じて電力を供給可能な、スレーブコントローラＳ４であってよい。スレーブコントローラＳ４が、スレーブコントローラＳ４とマスタコントローラＭとの間においてネットワークケーブルＣによって生じる通信の遅延時間を計測し、計測された、マスタコントローラＭとスレーブコントローラＳ４との間においてネットワークケーブルＣによって生じる通信の遅延時間を判定する判定部を有してよい。当該判定部は、ネットワークケーブルＣを通じてスレーブコントローラＳ４からマスタコントローラＭに信号が送信されてから当該信号に対するマスタコントローラＭからの第１応答信号をスレーブコントローラＳ４が受信するまでの第１経過時間と、複数のコントローラのうち、スレーブコントローラＳ４とマスタコントローラＭとの間の通信経路上にある１以上のコントローラが信号を伝送する処理に要する第１伝送処理時間とに基づいて、ネットワークケーブルＣによって生じる通信の遅延時間を算出してよい。また、当該判定部は、スレーブコントローラＳ４からネットワークケーブルＣを通じてスレーブコントローラＳ６に信号が送信されてから当該信号に対するスレーブコントローラＳ６からの第２応答信号をスレーブコントローラＳ４が受信するまでの第２経過時間をさらに計測し、スレーブコントローラＳ４とスレーブコントローラＳ６との間の通信経路上にある複数のコントローラが信号を伝送する処理に要する第２伝送処理時間と、第２経過時間とに基づいて、スレーブコントローラＳ４とスレーブコントローラＳ４との間においてネットワークケーブルＣによって生じる通信の遅延時間を算出してよい。
【０１１３】
図１３は、制御システム１０の第３の変形例においてネットワークケーブルＣの長さを測定する方法を説明するための図である。第３の変形例において、スレーブコントローラＳはそれぞれ、受信した信号を他のスレーブコントローラＳに転送する場合に、それぞれのスレーブコントローラＳが備えるタイマで計測したタイマ値を信号に含めて転送する。また、スレーブコントローラＳはそれぞれ、受信した信号を他のスレーブコントローラＳに転送する場合に、それぞれのスレーブコントローラＳを識別する識別情報を、当該タイマ値に対応付けて転送する。例えば、スレーブコントローラＳはそれぞれ、受信タイミングにおけるタイマ値及び転送タイミングにおけるタイマ値と、それぞれのスレーブコントローラＳの識別情報とを対応づけた情報を、転送する信号に含める。第３の変形例における各コントローラの動作を、上述した制御システム１０における動作の相違点を説明する。
【０１１４】
スレーブコントローラＳ１において、制御部３１０は、Ｒｑ１を受信した場合に、スレーブコントローラＳ１のタイマで計測したタイマ値Ｔ０＿ｒを取得する。また、制御部３１０は、Ｒｑ１を転送する場合に、当該タイマで計測したタイマ値Ｔ０＿ｓを取得する。制御部３１０は、タイマ値Ｔ０＿ｒ、タイマ値Ｔ０＿ｓ及びスレーブコントローラＳ１の識別情報を対応付けた情報をＲｑ１に含めて、スレーブコントローラＳ２に転送する。例えば、スレーブコントローラＳ１の制御部３１０は、Ｒｑ１のヘッダ部に、タイマ値Ｔ０＿ｒ及びタイマ値Ｔ０＿ｓを含める。他のスレーブコントローラＳの制御部も同様に、Ｒｑ１を受信した場合及び転送する場合に、各スレーブコントローラＳのタイマで計測したタイマ値を取得し、当該タイマで計測した２つのタイマ値を、Ｒｑ１に含めて転送する。
【０１１５】
なお、スレーブコントローラＳ６においては、制御部は、Ｒｑ１を受信したときのタイマ値Ｔ６＿ｒと、Ｒｓ１を送信するときのタイマ値Ｔ６＿ｓとをＲｑ１に含めて、Ｒｑ１の応答信号Ｒｓ１としてマスタコントローラＭに向けて転送する。他のスレーブコントローラＳはそれぞれ、受信したＲｓ１を他のスレーブコントローラＳに転送する場合に、それぞれのスレーブコントローラＳが備えるタイマで計測したタイマ値を信号に含めて転送する。ｉをスレーブコントローラＳ１〜５を識別する整数とすると、図１３に示すＴｉ＿ｒは、スレーブコントローラＳｉがＲｑ１を受信したときのタイマ値を示し、Ｔｉ＿ｓは、Ｒｑ１を転送するときのタイマ値を示す。図１３に示すＴ６＿ｒは、スレーブコントローラＳ６がＲｑ１を受信したときのタイマ値を示し、Ｔ６＿ｓは、Ｒｓ１を送信するときのタイマ値を示す。また、図１３に示すＴ'ｉ＿ｒは、スレーブコントローラＳｉがＲｓ１を受信したときのタイマ値を示し、Ｔ'ｉ＿ｓは、Ｒｓ１を転送するときのタイマ値を示す。
【０１１６】
マスタコントローラＭにおいて、判定部２０４は、Ｒｓ１を受信すると、Ｒｓ１に含まれる各スレーブコントローラＳのタイマ値に基づいて、マスタコントローラＭとスレーブコントローラＳ６との間、及び、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣによって生じる遅延時間を算出する。例えば、スレーブコントローラＳ１がＲｑ１の中継に要した時間ｔａ１は、Ｔ１＿ｓ−Ｔ１＿ｒにより算出することができる。各スレーブコントローラＳの間においては、各タイマにより得られるタイマ値にはズレが存在し得る。しかし、同一のスレーブコントローラＳのタイマで取得したタイマ値の差分には、コントローラ間のタイマ値のズレは影響しない。
【０１１７】
そこで、ｉをスレーブコントローラＳ１〜５を識別する整数とすると、マスタコントローラＭの判定部２０４は、Ｔｉ＿ｓ−Ｔｉ＿ｒにより、スレーブコントローラＳｉがＲｑ１の中継に要した時間ｔａｉを算出する。また、マスタコントローラＭの判定部２０４は、Ｔ６＿ｓ−Ｔ６＿ｒにより、スレーブコントローラＳ６がＲｑ１を受信してからマスタコントローラＭ宛のＲｓ１を送信するまでに要した時間ｔｂを算出する。また、マスタコントローラＭの判定部２０４は、Ｔ'ｉ＿ｓ−Ｔ'ｉ＿ｒにより、スレーブコントローラＳｉがＲｓ１の中継に要した時間ｔａｉ'を算出する。
【０１１８】
判定部２０４は、スレーブコントローラＳ４とスレーブコントローラＳ６との間のネットワークケーブルＣにより生じる遅延時間ｔｃ＿Ｓ４＿Ｓ６を、Ｔ'４＿ｒ−Ｔ'４＿ｓ―（ｔａ１＋ｔａ１'）−ｔｂにより算出する。また、マスタコントローラＭとスレーブコントローラＳ６との間のネットワークケーブルＣにより生じる遅延時間ｔｃ＿ｍ＿Ｓ６は、Ｔ'０＿ｒ−Ｔ'０＿ｓ―（ｔａ１＋ｔａ２＋ｔａ３＋ｔａ４＋ｔａ５＋ｔａ１'＋ｔａ２'＋ｔａ３'＋ｔａ４'＋ｔａ５'）−ｔｂにより算出される。よって、判定部２０４は、マスタコントローラＭとスレーブコントローラＳ４との間のネットワークケーブルＣにより生じる遅延時間を、ｔｃ＿ｍ＿Ｓ６−ｔｃ＿Ｓ４＿Ｓ６により算出する。
【０１１９】
なお、マスタコントローラＭは、同様の処理により、任意の２つのコントローラ間におけるネットワークケーブルＣにより生じる遅延時間を算出することができる。マスタコントローラＭの判定部２０４は、デイジーチェーン接続において隣接するコントローラ間のネットワークケーブルＣにより生じる遅延時間に基づいて、各ネットワークケーブルＣのそれぞれの長さを算出してよい。マスタコントローラＭは、算出されたネットワークケーブルＣのそれぞれの長さを、管理装置２０に送信してよい。
【０１２０】
図１３に関連して説明したように、コントローラは、受信した信号を転送する場合に、当該信号を受信したときの前記タイマのタイマ値と、当該信号を転送するときの前記タイマのタイマ値とを、転送する信号に含めて転送する。そして、判定部２０４は、応答信号に含まれるタイマ値に基づいて、遅延時間を計測する対象となるネットワークケーブルＣによる通信経路上にある１以上のコントローラがそれぞれ信号を伝送する処理に要する伝送処理時間を算出する。
【０１２１】
第３の変形例によれば、タイマ値を用いてネットワークケーブルＣの長さを測定することができる。これにより、スレーブコントローラＳにおける伝送処理時間ｔａ及びｔｂの実測値を用いて、ネットワークケーブルＣの長さを算出することができる。なお、タイマ値を用いる方法は、第１の変形例及び第２の変形例にも適用できる。
【０１２２】
以上に説明した制御システム１０によれば、複数のコントローラをデイジーチェーン接続する構成において、電力供給を担うコントローラと電力供給を受けるコントローラとの間のネットワークケーブルの全長が仕様長を超えていることを適切に検出することができる。そのため、当該電力供給を受けるコントローラの主電源をオフした場合でも、制御システム１０の運用を続けることができる。
【０１２３】
なお、デイジーチェーン接続は直列接続の一例である。直列接続は、縦続接続やカスケード接続等と呼称される接続構成を含み得る。また、１つのマスタコントローラＭと１つのスレーブコントローラＳの２台を接続した構成も、直列接続の概念に含み得る。また、複数のコントローラが物理的にループ状に接続されている接続形態において、特定のコントローラで信号をループバックする状態も、直列接続の概念に含み得る。
【０１２４】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【０１２５】
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【０１２６】
１０  制御システム
２０  管理装置
４０  被制御機器
２００  判定処理部
２０４  判定部、２０６  特定部、２０８  取得部
２１０、３１０、４１０  制御部
２２０、４２０  電力供給部
２３０  通信部
２４０、３４０、４４０  ネットワークインタフェース
２７０  通知部
２８０、３８０、４８０  主電源
３５０、４５０  電力取得部
Ｃ０  ネットワークケーブル
Ｃ１  ネットワークケーブル
Ｃ２  ネットワークケーブル
Ｃ３  ネットワークケーブル
Ｃ４  ネットワークケーブル
Ｃ５  ネットワークケーブル
Ｓ１  スレーブコントローラ
Ｓ２  スレーブコントローラ
Ｓ３  スレーブコントローラ
Ｓ４  スレーブコントローラ
Ｓ５  スレーブコントローラ
Ｓ６  スレーブコントローラ
【図１】
2018180699.tif 000003
【図２】
2018180699.tif 000004
【図３】
2018180699.tif 000005
【図４】
2018180699.tif 000006
【図５】
2018180699.tif 000007
【図６】
2018180699.tif 000008
【図７】
2018180699.tif 000009
【図８】
2018180699.tif 000010
【図９】
2018180699.tif 000011
【図１０】
2018180699.tif 000012
【図１１】
2018180699.tif 000013
【図１２】
2018180699.tif 000014
【図１３】
2018180699.tif 000015