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