(57)【要約】  複数のプログラマブルコントローラ（以下、ＰＬＣという）がネットワークを介して接続された制御システムの１つのＰＬＣと接続し、このＰＬＣを起点ＰＬＣとして、制御システムについてのネットワーク構成情報と制御システム中の各ＰＬＣまでのオンライン接続経路を収集し、これらのネットワーク構成情報とオンライン接続経路とからネットワーク間の配置関係およびＰＬＣの接続関係とその座標を算出し、オブジェクトとして表示部に表示する。
2008146380.tif 000002
【特許請求の範囲】
【請求項１】
複数の制御装置がネットワークを介して接続された制御システムの中の１つの制御装置と接続する通信手段と、
前記通信手段と接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、
前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、
前記制御システムの構成要素をオブジェクトとし、前記オンラインネットワーク構成情報で得られた各制御装置の構成と、各制御装置とネットワークとの接続関係を、オブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標とから、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項２】
前記表示オブジェクト座標算出手段は、
前記オンラインネットワーク構成情報からネットワークを抽出し、抽出したネットワークを矩形状のネットワークグリッドとして所定の規則で上下に配置するネットワークグリッド配置機能と、
前記オンラインネットワーク構成情報から制御装置を抽出し、前記制御装置に接続されるネットワークグリッドの下位に矩形状の制御装置グリッドを配置し、接続関係のあるネットワークグリッドに対して上方向に矩形状の配線グリッドを前記制御装置グリッドと前記ネットワークグリッドとの間に配置してグリッドモデルを生成する制御装置グリッド配置機能と、
前記オンラインネットワーク構成情報の前記制御装置の構成情報から、前記グリッドモデル中の前記制御装置グリッドのサイズを算出するとともに、前記制御装置のサイズに合わせて関係する配線グリッドとネットワークグリッドのサイズを変更して、グリッドサイズを算出するグリッドサイズ算出機能と、
前記グリッドモデルの所定の位置を基準にして、前記グリッドサイズを用いて前記グリッドモデル中の各グリッドの座標を算出するグリッド座標算出機能と、
を備えることを特徴とする請求項１に記載の制御システムエンジニアリング装置。
【請求項３】
前記表示オブジェクト座標算出手段の前記制御装置グリッド配置機能は、制御装置の増設ベースの装着の有無とベースに装着されているユニットの数とに基づいて、制御装置グリッドのサイズを決め、前記制御装置グリッドを前記ユニットの数分の領域に分割し、
前記システム構成表示手段は、前記制御装置のベースに装着される実際のユニットの種類に対応させて、前記制御装置グリッドに形成した各領域にユニットの種類名を表示することを特徴とする請求項２に記載の制御システムエンジニアリング装置。
【請求項４】
前記ネットワークグリッド配置機能は、抽出したネットワークを種類ごとに分類し、分類したネットワーク種類ごとに、ネットワークに接続する制御装置のうちフィールドネットワークにも接続する制御装置の数または割合が多いネットワークほど下位に配置し、他の情報系ネットワークのみ接続する制御装置の数または割合が多いネットワークほど上位に配置し、他のコントローラ間ネットワークにも接続する制御装置の数または割合が多いネットワークほど上位に配置する処理を行い、
前記制御装置グリッド配置機能は、同じネットワークに接続する制御装置グリッドをより近くに配置することを特徴とする請求項２に記載の制御システムエンジニアリング装置。
【請求項５】
前記オンラインネットワーク構成情報収集手段は、前記起点制御装置から前記制御システム中の各制御装置までのオフライン接続経路を収集する機能をさらに有し、
前記オンラインネットワーク構成情報収集手段によって収集された各制御装置までのオンライン接続経路を用いて、前記起点制御装置から前記各制御装置までのオンライン接続経路を前記システム構成に重ねて表示する接続経路表示手段をさらに備えることを特徴とする請求項１に記載の制御システムエンジニアリング装置。
【請求項６】
複数の制御装置がネットワークを介して接続される制御システムにおける前記制御装置の構成と、前記制御装置のネットワークとの接続関係と、を示すオフラインネットワーク構成情報がオフラインで編集されるシステム構成編集手段と、
前記オフラインネットワーク構成情報に基づいて各制御装置の構成と各制御装置とネットワークとの接続関係を、前記制御システムの構成要素を表すオブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標から、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項７】
前記表示オブジェクト座標算出手段は、
前記オフラインネットワーク構成情報からネットワークを抽出し、抽出したネットワークを矩形状のネットワークグリッドとして所定の規則で上下に配置するネットワークグリッド配置機能と、
前記オフラインネットワーク構成情報から制御装置を抽出し、前記制御装置に接続されるネットワークグリッドの下位に矩形状の制御装置グリッドを配置し、接続関係のあるネットワークグリッドに対して上方向に矩形状の配線グリッドを前記制御装置グリッドと前記ネットワークグリッドとの間に配置してグリッドモデルを生成する制御装置グリッド配置機能と、
前記オフラインネットワーク構成情報の前記制御装置の構成情報から、前記グリッドモデル中の前記制御装置グリッドのサイズを算出するとともに、前記制御装置のサイズに合わせて関係する配線グリッドとネットワークグリッドのサイズを変更して、グリッドサイズを算出するグリッドサイズ算出機能と、
前記グリッドモデルの所定の位置を基準にして、前記グリッドサイズを用いて前記グリッドモデル中の各グリッドの座標を算出するグリッド座標算出機能と、
を備えることを特徴とする請求項６に記載の制御システムエンジニアリング装置。
【請求項８】
前記表示オブジェクト座標算出手段の前記制御装置グリッド配置機能は、制御装置の増設ベースの装着の有無とベースに装着されているユニットの数とに基づいて、制御装置グリッドのサイズを決め、前記制御装置グリッドを前記ユニットの数分の領域に分割し、
前記システム構成表示手段は、前記制御装置のベースに装着される実際のユニットの種類に対応させて、前記制御装置グリッドに形成した各領域にユニットの種類名を表示することを特徴とする請求項７に記載の制御システムエンジニアリング装置。
【請求項９】
前記ネットワークグリッド配置機能は、抽出したネットワークを種類ごとに分類し、分類したネットワーク種類ごとに、ネットワークに接続する制御装置のうちフィールドネットワークにも接続する制御装置の数または割合が多いネットワークほど下位に配置し、他の情報系ネットワークのみ接続する制御装置の数または割合が多いネットワークほど上位に配置し、他のコントローラ間ネットワークにも接続する制御装置の数または割合が多いネットワークほど上位に配置する処理を行い、
前記制御装置グリッド配置機能は、同じネットワークに接続する制御装置グリッドをより近くに配置することを特徴とする請求項７に記載の制御システムエンジニアリング装置。
【請求項１０】
前記オフラインネットワーク構成情報に含まれる制御装置の中で、起点制御装置を指定する起点制御装置指定手段と、
前記起点制御装置から前記オフラインネットワーク構成情報に含まれる各制御装置へのオフライン接続経路を解析し、選択する接続経路解析選択手段と、
前記接続経路解析選択手段によって選択されたオフライン接続経路を保持するオフライン接続経路保持手段と、
前記オフライン接続経路を前記システム構成に重ねて表示する接続経路表示手段と、
をさらに備えることを特徴とする請求項６に記載の制御システムエンジニアリング装置。
【請求項１１】
前記制御システムを構成するネットワーク種類ごとの通信スループットおよび制御装置の通信スループットと、前記通信スループットを用いたスループット評価値の計算方法と、を含むスループットモデルを保持するスループットモデル保持手段をさらに備え、
前記接続経路解析選択手段は、前記起点制御装置から前記オフラインネットワーク構成情報中の各制御装置へのオフライン接続経路のスループット評価値を算出するとともに、１つの制御装置へのオフライン接続経路が２以上ある場合には最良のスループット評価値を有するオフライン接続経路を選択して前記オフライン接続経路保持手段に出力することを特徴とする請求項１０に記載の制御システムエンジニアリング装置。
【請求項１２】
前記接続経路選択手段によって求められた前記オフラインネットワーク構成情報中の各制御装置を起点とした場合の各制御装置へのスループットモデルに基づいた最良のオフライン接続経路のスループット評価値を、前記制御システム全体で合計した合計スループット評価値を算出し、前記合計スループット評価値が最良のものを最適なオフライン接続経路として選択する最適接続経路算出手段をさらに備え、
前記接続経路解析選択手段は、前記最適接続経路算出手段によって選択された最適な前記オフライン接続経路を前記オフライン接続経路保持部に出力することを特徴とする請求項１１に記載の制御システムエンジニアリング装置。
【請求項１３】
前記接続経路解析選択手段は、情報収集が可能なネットワークについての制約に基づいて、前記オフラインネットワーク構成情報中の各制御装置までのオフライン接続経路を求め、
前記接続経路表示手段は、前記起点制御装置から前記オフライン接続経路で到達可能な制御装置と、前記オフライン接続経路を作成することができなかった到達不可能な制御装置とを区別して表示する機能をさらに備えることを特徴とする請求項１０に記載の制御システムエンジニアリング装置。
【請求項１４】
前記オフライン接続経路保持手段中の各オフライン接続経路について、起点制御装置から終点制御装置までの間にネットワークが２以上接続される場合に、前記オフライン接続経路上で複数のネットワーク間を接続する制御装置に対して設定する、前記起点制御装置から前記終点制御装置までデータ伝送に必要なルーチングパラメータを算出するルーチングパラメータ算出手段をさらに備えることを特徴とする請求項１０に記載の制御システムエンジニアリング装置。
【請求項１５】
前記ルーチングパラメータ算出手段は、前記オフライン接続経路保持手段中の各オフライン接続経路のうちの起点制御装置から終点制御装置までの間にネットワークが２以上接続される場合に、転送先ネットワークと、前記オフライン接続経路上の前記制御装置の属するネットワークのつぎに存在する中継先ネットワークと、前記中継先ネットワークでデータの中継を行う中継制御装置と、を抽出して、前記オフライン接続経路上で複数のネットワーク間を接続する制御装置に対して設定するルーチングパラメータを算出することを特徴とする請求項１４に記載の制御システムエンジニアリング装置。
【請求項１６】
前記ルーチングパラメータ算出手段は、前記オフライン接続経路保持手段に保持される各オフライン接続経路を逆順にした逆オフライン接続経路を生成し、この逆オフライン接続経路に対してもルーチングパラメータの算出を行う機能をさらに有することを特徴とする請求項１４に記載の制御システムエンジニアリング装置。
【請求項１７】
複数の制御装置がネットワークを介して接続された制御システム中の１つの制御装置と接続する通信手段と、
前記通信手段に接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、
前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むオンラインネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、
前記オンラインネットワーク構成情報収集手段で収集されたオンラインネットワーク構成情報をオフラインで編集し、オフラインネットワーク構成情報を生成するシステム構成編集手段と、
前記起点制御装置から前記オフラインネットワーク構成情報に含まれる各制御装置へのオフライン接続経路を解析し、選択する接続経路解析選択手段と、
前記接続経路解析選択手段で選択される各オフライン接続経路について、起点制御装置から終点制御装置までの間にネットワークが２以上接続される場合に、前記オフライン接続経路上で複数のネットワーク間を接続する制御装置に対して設定する、前記起点制御装置から前記終点制御装置までのデータ伝送に必要なルーチングパラメータを算出するルーチングパラメータ算出手段と、
前記オンラインネットワーク構成情報と前記オフラインネットワーク構成情報とを比較してパラメータに変更のあったネットワークを抽出し、前記通信手段を介して前記パラメータに変更のあったネットワークに接続する制御装置のパラメータを順次変更した後、ルーチングパラメータが設定されている制御装置のうち、前記パラメータに変更のあったネットワークに関係するルーチングパラメータを、前記ルーチングパラメータ算出手段によって算出されたルーチングパラメータに書換えるパラメータ一括書換手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項１８】
前記パラメータ一括書換手段は、前記パラメータに変更のあったネットワークの通常局の制御装置について局番号の大きい制御装置から順にパラメータを変更し、最後に管理局の制御装置のパラメータを変更した後に、ルーチングパラメータの書換処理を行うことを特徴とする請求項１７に記載の制御システムエンジニアリング装置。
【請求項１９】
前記パラメータ一括書換手段は、前記パラメータに変更のあったネットワークが複数存在する場合に、前記パラメータに変更のあったネットワークについては、前記起点制御装置から最も離れたネットワークの制御装置から前記起点制御装置に近づく方向に順にパラメータの変更を行い、ルーチングパラメータについては、前記起点制御装置に近い制御装置から離れる方向に順にルーチングパラメータの変更を行うことを特徴とする請求項１７に記載の制御システムエンジニアリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プログラマブルコントローラなどの複数の制御装置がネットワークを介して接続された制御システムにおいて、システム構成の設定や管理を支援する制御システムエンジニアリング装置に関するものである。
【背景技術】
【０００２】
従来、生産設備の制御を行うために、プログラマブルコントローラ（以下、ＰＬＣという）が用いられている。このＰＬＣに接続し、所定のプログラミングや保守を行うのがエンジニアリング装置である。エンジニアリング装置は一般にパーソナルコンピュータ上で動作し、ＰＬＣが制御を行うためのプログラムの作成を支援するほか、エンジニアリング装置が動作するパーソナルコンピュータをＰＬＣと接続して、作成したプログラムをＰＬＣへ転送したり、ＰＬＣが制御を行っている状態を監視したりする機能を有している。【０００３】
個々のＰＬＣにはベース（バックプレーン）があり、そのベース上にネットワーク接続用の通信ユニットが取り付けられる。この通信ユニット同士をケーブルなどの通信回線を介して接続することにより、複数のＰＬＣからなる制御システムが構築される。生産設備の規模が大きな制御システムにおいては、多数のＰＬＣが用いられ、これらのＰＬＣ同士を接続するネットワークも複雑な構成になっている。【０００４】
上記のエンジニアリング装置には、制御システムのネットワーク構成をオフラインで作成し、グラフィック表示するとともに、このグラフィック表示を用いてＰＬＣのモニタやＰＬＣへのプログラムの転送などを行うことが可能なものがある。しかし、複雑な構成を有する制御システムでは、同一の種類のＰＬＣが複数存在することがあり、エンジニアリング装置に表示される画面では、設定するＰＬＣの区別がつかない場合があった。そこで、モニタや設定の対象となるＰＬＣを強調表示する技術が提案されている（たとえば、特許文献１参照）。【０００５】
【特許文献１】特開２００６−２７７７３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、特許文献１では、エンジニアリング装置の使用者が予め実際のネットワーク構成に基づいて、ＰＬＣの配置をエンジニアリング装置上で行い、各ＰＬＣに設定値を設定することによって、制御システムのネットワーク構成やシステム構成の情報をオフラインで作成していた。複雑な構成の制御システムのネットワーク構成やＰＬＣのシステム構成の情報をオフラインで作成する場合では、ＰＬＣ間の接続などを間違えてしまう可能性があるという問題点があった。【０００７】
また、特許文献１では、対象となるＰＬＣの場所を強調表示することはできるが、たとえばエンジニアリング装置が接続された位置から対象となるＰＬＣまでの情報伝達を行うための最適な接続経路の求め方については、開示されていなかった。【０００８】
さらに、複数のネットワークが接続されてなる制御システムにおいて、ネットワークとネットワークとの間に位置するＰＬＣには、複数のネットワークをまたがってデータ伝送を可能とするためのルーチングパラメータが設定されている。しかし、このルーチングパラメータが、どの要求元からどの要求先へのトランジェント伝送のためのものであるのかについて、第三者が理解するのは困難であるという問題点もあった。また、既存の制御システムの構成に対して追加変更を行う場合や新しく制御システムを構築する場合に、システム構築者にとってルーチングパラメータの算出は手作業で行っており、その算出は容易ではないという問題点もあった。【０００９】
この発明は上記に鑑みてなされたもので、既存の複数のＰＬＣからなる制御システムにおけるネットワーク構成とＰＬＣのシステム構成を収集し、自動的にその構成をグラフィカルに表示することができる制御システムエンジニアリング装置を得ることを目的とする。【００１０】
また、オフラインでネットワーク構成をグラフィカルに作成する場合において、起点となる位置から目標となる位置のＰＬＣまでの最適な接続経路を自動的に算出し、強調表示することができる制御システムエンジニアリング装置を得ることも目的とする。【００１１】
さらに、既存の制御システムの構成に対して追加変更を行う場合や、新しく制御システムを構築する場合にも容易にＰＬＣへのルーチングパラメータを含むネットワークパラメータを設定することができる制御システムエンジニアリング装置を得ることを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、この発明にかかる制御システムエンジニアリング装置は、複数の制御装置がネットワークを介して接続された制御システムの中の１つの制御装置と接続する通信手段と、前記通信手段と接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、前記制御システムの構成要素をオブジェクトとし、前記オンラインネットワーク構成情報で得られた各制御装置の構成と、各制御装置とネットワークとの接続関係を、オブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標とから、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、を備えることを特徴とする。
【発明の効果】
【００１３】
この発明によれば、ＰＬＣなどの複数の制御機器からなる制御システムの全体のネットワーク構成や制御装置のシステム構成についての情報を、制御システムに接続して収集することで、その接続関係を含めてグラフィカルに表示することができ、制御システムを構成するネットワークや制御装置のシステム構成の全体を把握することが容易になるという効果を有する。また、制御システムを構成するネットワークや制御装置のシステム構成全体のステータスを把握することも容易となるという効果を有する。
【図面の簡単な説明】
【００１４】
【図１】図１は、制御システムのネットワーク構成の一例を模式的に示す図である。
【図２】図２は、制御システムエンジニアリング装置のハードウェア構成を模式的に示すブロック図である。
【図３】図３は、この発明による制御システムエンジニアリング装置の実施の形態１の機能構成を模式的に示すブロック図である。
【図４−１】図４−１は、制御システムの構成の一例を示す図である。
【図４−２】図４−２は、図４−１に対応するグリッドモデルの一例を示す図である。
【図５−１】図５−１は、制御システムの構成の一例を示す図である。
【図５−２】図５−２は、図５−１に対応するグリッドモデルの一例を示す図である。
【図６−１】図６−１は、制御システムの構成の一例を示す図である。
【図６−２】図６−２は、図６−１に対応するグリッドモデルの一例を示す図である。
【図７−１】図７−１は、制御システムの構成の一例を示す図である。
【図７−２】図７−２は、制御システムの構成の一例を示す図である。
【図７−３】図７−３は、図７−１に対応するグリッドモデルの一例を示す図である。
【図７−４】図７−４は、図７−２に対応するグリッドモデルの一例を示す図である。
【図８】図８は、表示オブジェクト座標算出部の機能構成を模式的に示すブロック図である。
【図９−１】図９−１は、ネットワーク構成情報収集処理手順の一例を示すフローチャートである（その１）。
【図９−２】図９−２は、ネットワーク構成情報収集処理手順の一例を示すフローチャートである（その２）。
【図９−３】図９−３は、ネットワーク構成情報収集処理手順の一例を示すフローチャートである（その３）。
【図１０】図１０は、オンライン接続経路保持部に保持される接続経路情報の一例を示す図である。
【図１１】図１１は、オンラインネットワーク構成情報格納部に格納されるネットワーク構成情報の一例を示す図である。
【図１２】図１２は、ネットワークの情報収集の制約の一例を示す図である。
【図１３】図１３は、ネットワーク情報出力処理の優先度の一例を示す図である。
【図１４−１】図１４−１は、表示オブジェクト座標算出処理手順の一例を示すフローチャートである。
【図１４−２】図１４−２は、ネットワークグリッド配置処理手順の一例を示すフローチャートである。
【図１４−３】図１４−３は、ＰＬＣグリッド配置処理手順の一例を示すフローチャートである。
【図１４−４】図１４−４は、グリッドサイズ算出処理手順の一例を示すフローチャートである。
【図１４−５】図１４−５は、グリッド座標算出処理手順の一例を示すフローチャートである。
【図１５】図１５は、ネットワークグリッド配置処理の結果を示す図である。
【図１６−１】図１６−１は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その１）。
【図１６−２】図１６−２は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その２）。
【図１６−３】図１６−３は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その３）。
【図１６−４】図１６−４は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その４）。
【図１６−５】図１６−５は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その５）。
【図１７】図１７は、グリッドサイズ算出結果の一例を示す図である。
【図１８】図１８は、グリッド座標算出結果の一例を示す図である。
【図１９】図１９は、システム構成表示処理手順の一例を示すフローチャートである。
【図２０】図２０は、システム構成表示処理によって表示部に表示されるシステム構成情報の一例を示す図である。
【図２１】図２１は、制御システムエンジニアリング装置の機能を有する表示器のハードウェア構成を示すブロック図である。
【図２２−１】図２２−１は、この発明による制御システムエンジニアリング装置のネットワークグリッド配置機能の機能構成を模式的に示すブロック図である。
【図２２−２】図２２−２は、ＰＬＣグリッド配置機能の機能構成を模式的に示すブロック図である。
【図２３−１】図２３−１は、この実施の形態２によるネットワークグリッド配置処理手順の一例を示すフローチャートである（その１）。
【図２３−２】図２３−２は、この実施の形態２によるＰＬＣグリッド配置処理手順の一例を示すフローチャートである（その２）。
【図２３−３】図２３−３は、この実施の形態２によるＰＬＣグリッド配置処理手順の一例を示すフローチャートである（その３）。
【図２４】図２４は、この実施の形態２によるネットワークグリッド配置処理の結果を示す図である。
【図２５−１】図２５−１は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その１）。
【図２５−２】図２５−２は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その２）。
【図２５−３】図２５−３は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その３）。
【図２５−４】図２５−４は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その４）。
【図２５−５】図２５−５は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その５）。
【図２６】図２６は、図２５−５の結果に対して、グリッドサイズとグリッド座標を算出した結果を示す図である。
【図２７】図２７は、システム構成表示処理によって表示されるシステム構成情報の一例を示す図である。
【図２８】図２８は、制御システムの他の構成例を示す図である。
【図２９】図２９は、図２８の制御システムを実施の形態１の方法で表示したシステム構成を示す図である。
【図３０】図３０は、図２８の制御システムについて実施の形態２の方法で作成したグリッドモデルを示す図である。
【図３１】図３１は、図３０のグリッドモデルに基づいて表示される図２８の制御システムのシステム構成を示す図である。
【図３２】図３２は、この発明にかかる制御システムエンジニアリング装置の実施の形態３の機能構成を模的に示すブロック図である。
【図３３】図３３は、接続経路表示処理手順の一例を示すフローチャートである。
【図３４−１】図３４−１は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その１）。
【図３４−２】図３４−２は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その２）。
【図３４−３】図３４−３は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その３）。
【図３４−４】図３４−４は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その４）。
【図３４−５】図３４−５は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その５）。
【図３５】図３５は、この発明による制御システムエンジニアリング装置の実施の形態４の機能構成を模式的に示すブロック図である。
【図３６−１】図３６−１は、オフライン接続経路解析処理手順の一例を示すフローチャートである（その１）。
【図３６−２】図３６−２は、オフライン接続経路解析処理手順の一例を示すフローチャートである（その２）。
【図３６−３】図３６−３は、オフライン接続経路解析処理手順の一例を示すフローチャートである（その３）。
【図３７−１】図３７−１は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その１）。
【図３７−２】図３７−２は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その２）。
【図３７−３】図３７−３は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その３）。
【図３７−４】図３７−４は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その４）。
【図３７−５】図３７−５は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その５）。
【図３８】図３８は、この実施の形態４によるスループットモデルの例を示す図である。
【図３９】図３９は、オフライン接続経路の表示画面の一例を示す図である。
【図４０】図４０は、オフライン接続経路の表示画面の一例を示す図である。
【図４１】図４１は、この発明による制御システムエンジニアリング装置の実施の形態５の機能構成を模式的に示すブロック図である。
【図４２】図４２は、最適接続経路算出処理手順の一例を示すフローチャートである。
【図４３−１】図４３−１は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その１）。
【図４３−２】図４３−２は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その２）。
【図４３−３】図４３−３は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その３）。
【図４３−４】図４３−４は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その４）。
【図４３−５】図４３−５は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その５）。
【図４４−１】図４４−１は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その１）。
【図４４−２】図４４−２は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その２）。
【図４４−３】図４４−３は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その３）。
【図４４−４】図４４−４は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その４）。
【図４４−５】図４４−５は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その５）。
【図４５−１】図４５−１は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その１）。
【図４５−２】図４５−２は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その２）。
【図４５−３】図４５−３は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その３）。
【図４５−４】図４５−４は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その４）。
【図４５−５】図４５−５は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その５）。
【図４６−１】図４６−１は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その１）。
【図４６−２】図４６−２は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その２）。
【図４６−３】図４６−３は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その３）。
【図４６−４】図４６−４は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その４）。
【図４６−５】図４６−５は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その５）。
【図４７】図４７は、最適接続経路の表示画面の一例を示す図である。
【図４８】図４８は、制御システムに設定されるルーチングパラメータの一例を示す図である。
【図４９】図４９は、この発明による制御システムエンジニアリング装置の実施の形態６の機能構成を模式的に示すブロック図である。
【図５０】図５０は、ルーチングパラメータ算出部の機能構成を模式的に示すブロック図である。
【図５１−１】図５１−１は、ルーチングパラメータ算出処理手順の一例を示すフローチャートである（その１）。
【図５１−２】図５１−２は、ルーチングパラメータ算出処理手順の一例を示すフローチャートである（その２）。
【図５２】図５２は、図２８の制御システムについての各ＰＬＣへの接続経路の一例を示す図である。
【図５３−１】図５３−１は、ＰＬＣに設定されるルーチングパラメータである（その１）。
【図５３−２】図５３−２は、ＰＬＣに設定されるルーチングパラメータである（その２）。
【図５３−３】図５３−３は、ＰＬＣに設定されるルーチングパラメータである（その３）。
【図５３−４】図５３−４は、ＰＬＣに設定されるルーチングパラメータである（その４）。
【図５４】図５４は、この発明による制御システムエンジニアリング装置の実施の形態７の機能構成を模式的に示すブロック図である。
【図５５−１】図５５−１は、パラメータ一括書換処理手順の一例を示すフローチャートである（その１）。
【図５５−２】図５５−２は、パラメータ一括書換処理手順の一例を示すフローチャートである（その２）。
【図５６−１】図５６−１は、制御システムの構成変更後のルーチングパラメータを示す図である（その１）。
【図５６−２】図５６−２は、制御システムの構成変更後のルーチングパラメータを示す図である（その２）。
【図５６−３】図５６−３は、制御システムの構成変更後のルーチングパラメータを示す図である（その３）。
【図５６−４】図５６−４は、制御システムの構成変更後のルーチングパラメータを示す図である（その４）。
【図５７−１】図５７−１は、複数ネットワークのパラメータ一括書換処理手順の一例を示すフローチャートである（その１）。
【図５７−２】図５７−２は、複数ネットワークのパラメータ一括書換処理手順の一例を示すフローチャートである（その２）。
【図５８−１】図５８−１は、制御システムの構成変更後のルーチングパラメータを示す図である（その１）。
【図５８−２】図５８−２は、制御システムの構成変更後のルーチングパラメータを示す図である（その２）。
【図５８−３】図５８−３は、制御システムの構成変更後のルーチングパラメータを示す図である（その３）。
【図５８−４】図５８−４は、制御システムの構成変更後のルーチングパラメータを示す図である（その４）。
【符号の説明】
【００１５】
１０，１０−１〜１０−１３  ＰＬＣ（プログラマブルコントローラ）
１１−１Ａ〜１１−５Ｂ  通信ユニット
１２−３〜１２−５  入出力ユニット
１３−３  増設ベース
２１  情報系ネットワークＮｏ．３
２２Ａ  コントローラ間ネットワークＮｏ．１
２２Ｂ  コントローラ間ネットワークＮｏ．２
２３  フィールドネットワーク
１００  制御システムエンジニアリング装置
１０１，１５５  マイクロプロセッサ
１０２，１５６  データ格納メモリ
１０３  通信ポート
１０４，１１２，１５１  表示部
１０５，１５２  入力部
１０６，１５４  記憶部
１０７，１５７  バス
１１１  通信部
１１３  起点ＰＬＣ指定部
１１４  オンラインネットワーク構成情報収集部
１１５  オンライン接続経路保持部
１１６  オンラインネットワーク構成情報保持部
１１７  表示オブジェクト座標算出部
１１８  システム構成表示部
１１９  制御部
１２０  接続経路表示部
１２１  システム構成編集部
１２２  オフラインネットワーク構成情報保持部
１２３  接続経路解析選択部
１２４  スループットモデル保持部
１２５  オフライン接続経路保持部
１２６  最適接続経路算出部
１２７  ルーチングパラメータ算出部
１５０  表示器
１１７１  グリッドモデル保持機能
１１７２  ネットワークグリッド配置機能
１１７３  ＰＬＣグリッド配置機能
１１７４  グリッドサイズ算出機能
１１７５  グリッド座標算出機能
１２７１  接続経路逆転機能
１２７２  転送先ネットワーク番号抽出機能
１２７３  中継先ネットワーク番号抽出機能
１２７４  中継先局番号抽出機能
１１７２１  他ネットワーク接続ＰＬＣ抽出手段
１１７２２  ネットワーク種別ソート手段
１１７３１  ＰＬＣグリッド配置候補抽出手段
１１７３２  ＰＬＣグリッド配置候補選択手段
【発明を実施するための最良の形態】
【００１６】
以下に添付図面を参照して、この発明にかかる制御システムエンジニアリング装置の好適な実施の形態を詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。【００１７】
実施の形態１．
この実施の形態１では、複数のＰＬＣがネットワークを介して接続された生産設備などの制御システムからオンラインでネットワーク構成情報と接続経路情報を収集し、これらのネットワーク構成情報と接続経路情報から制御システムを構成するネットワーク構成やＰＬＣのシステム構成全体を表示する制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。【００１８】
図１は、制御システムのネットワーク構成の一例を模式的に示す図である。この制御システムは、たとえば生産設備を構成し、複数のＰＬＣがネットワークによって接続される構成を有する。この例では、ＰＬＣ１０−１，１０−２が情報系ネットワーク２１に接続され、ＰＬＣ１０−１，１０−３，１０−４がコントローラ間ネットワーク２２Ａに接続され、ＰＬＣ１０−１，１０−２，１０−５がコントローラ間ネットワーク２２Ｂに接続され、ＰＬＣ１０−４，１０−５がフィールドネットワーク２３で接続されている。また、コントローラ間ネットワーク２２ＡのＰＬＣ１０−３には、ＵＳＢ（Universal  Serial  Bus）ケーブル３０を介してこの発明による制御システムエンジニアリング装置１００が接続される。【００１９】
ここで、情報系ネットワークとは、ＰＬＣと、パーソナルコンピュータなどの情報処理端末と、が混在して接続されるネットワークであり、イーサネット（登録商標）などを例示することができる。また、コントローラ間ネットワークは、ＰＬＣのみが接続されるネットワークであり、フィールドネットワークは、ＰＬＣと、サーボモータなどのＰＬＣの制御対象と、が混在して接続されるネットワークである。一般的に、フィールドネットワーク２３よりもコントローラ間ネットワーク２２の方が通信速度の速い回線によって構成される。また、情報系ネットワーク２１とコントローラ間ネットワーク２２には、ネットワーク番号を付すことができるが、フィールドネットワーク２３には、ネットワーク番号を付すことができないものとする。この図１では、コントローラ間ネットワーク２２Ａには、ネットワーク番号「Ｎｏ．１」が付され、コントローラ間ネットワーク２２Ｂには、ネットワーク番号「Ｎｏ．２が付され、情報系ネットワーク２１には、ネットワーク番号「Ｎｏ．３」が付されている。【００２０】
ＰＬＣ１０−１のベースには、通信ユニットとして、コントローラ間ネットワーク２２Ａ，２２Ｂで通信するための通信ユニット１１−１Ａ，１１−１Ｂと、情報系ネットワーク２１で通信するための通信ユニット１１−１Ｃと、が設けられている。【００２１】
ここで、一般的にネットワークを構成するＰＬＣを局という。また、コントローラ間ネットワークでは、局の中で特にコントローラ間ネットワークの各局を管理する局で、自身の局番号とどれだけの局を管理するのかの情報（総局数）を保持する局を管理局という。この管理局は１つのコントローラ間ネットワークに１つとする。さらに、コントローラ間ネットワークにおけるそれ以外の局で、自身の局番号を保持する局を通常局という。また、コントローラ間ネットワーク２２Ａ，２２Ｂで通信を行うための通信ユニット１１の図中における表記は、以下の意味を有するものとする。たとえば「Ｍ１−３通」の場合には、「Ｍ」はコントローラ間ネットワークで通信を行うための通信ユニットを示し、「１」はコントローラ間ネットワークに付されているネットワーク番号を示し、ハイフン「−」の後の数字「３」はコントローラ間ネットワークにおけるそのＰＬＣ（通信ユニット１１）の局番号を示し、最後の文字は管理局か通常局かを示し、管理局の場合には「管」と表記され、通常局の場合には「通」と表記される。【００２２】
また、情報系ネットワーク２１で通信を行うための通信ユニット１１の図中の表記、たとえば「Ｅ３−１」で、「Ｅ」は情報系ネットワークで通信を行うための通信ユニットを示し、「３」は情報系ネットワークに付されているネットワーク番号を示し、ハイフン「−」の後の数字「１」は情報系ネットワークにおけるそのＰＬＣ（通信ユニット１１）の局番号を示している。【００２３】
そのため、通信ユニット１１−１Ａは、コントローラ間ネットワーク２２Ａに対して局番３の通常局として接続される通信ユニットであり、通信ユニット１１−１Ｂは、コントローラ間ネットワーク２２Ｂに対して局番２の通常局として接続される通信ユニットである。また、通信ユニットＥ３−１は、情報系ネットワーク２１に対して局番１として接続される通信ユニットである。【００２４】
ＰＬＣ１０−２のベースには、通信ユニットとして、コントローラ間ネットワーク２２Ｂで通信するための通信ユニット１１−２Ａと、情報系ネットワーク２１で通信するための通信ユニット１１−２Ｂと、が設けられている。通信ユニット１１−２Ａは、コントローラ間ネットワーク２２Ｂに対して局番１の管理局として接続される通信ユニットである。また、通信ユニット１１−２Ｂは、情報系ネットワーク２１に対して局番２として接続される通信ユニットである。【００２５】
ＰＬＣ１０−３のベースには、通信ユニットとして、コントローラ間ネットワーク２２Ａで通信するための通信ユニット１１−３が設けられている。この通信ユニット１１−３は、コントローラ間ネットワーク２２Ａに対して局番１の管理局として接続される通信ユニットである。また、ＰＬＣ１０−３のベースには、入出力（Ｉ／Ｏ）ユニット１２−３が設けられているとともに、２つの入出力ユニット１２−３が装着された増設ベース１３−３が取り付けられている。【００２６】
ＰＬＣ１０−４のベースには、入出力ユニット１２−４のほかに、通信ユニットとして、フィールドネットワーク２３で通信するための通信ユニット１１−４Ａと、コントローラ間ネットワーク２２Ａで通信するための通信ユニット１１−４Ｂと、が設けられている。【００２７】
ここで、フィールドネットワーク２３で通信を行うための通信ユニット１１の図中の表記、たとえば「Ｃマスタ」で、「Ｃ」はフィールドネットワークで通信を行うための通信ユニットを示し、その後の文字はマスタ局かローカル局かを示し、ローカル局の場合にはさらにその後にフィールドネットワークにおけるそのＰＬＣ（通信ユニット１１）の局番号が付される。なお、マスタ局、ローカル局は、フィールドネットワークにおける局の呼び名であり、マスタ局はコントローラ間ネットワークの管理局に相当し、ローカル局は同じく通常局に相当する。【００２８】
そのため、通信ユニット１１−４Ａは、フィールドネットワーク２３に対してマスタ局として接続される通信ユニットであり、通信ユニット１１−４Ｂは、コントローラ間ネットワーク２２Ａに対して局番２の通常局として接続される通信ユニットである。【００２９】
ＰＬＣ１０−５のベースには、入出力ユニット１２−５のほかに、通信ユニットとして、フィールドネットワーク２３で通信するための通信ユニット１１−５Ａと、コントローラ間ネットワーク２２Ｂで通信するための通信ユニット１１−５Ｂと、が設けられている。通信ユニット１１−５Ａは、フィールドネットワーク２３に対して局番１のローカル局として接続される通信ユニットであり、通信ユニット１１−５Ｂは、コントローラ間ネットワーク２２Ｂに対して局番３の通常局として接続される通信ユニットである。【００３０】
なお、各ＰＬＣは、ＰＬＣを動作させるためにＰＬＣに設定したベース情報や、そのＰＬＣが属するネットワークに関する接続ネットワーク情報、プログラムを含むプロジェクト情報を保持している。ベース情報は、ＰＬＣのベースに装着されているユニットの数（スロット数）やベースの各スロットに装着されているユニットの種類、ベースに接続されている増設ベースに関する情報を含む。また、接続ネットワーク情報は、そのＰＬＣが属するネットワークの種別、ネットワーク番号、ネットワークにおける局番と管理局か通常局かの種別、総局数を含む。なお、以下の説明では、これらのベース情報と接続ネットワーク情報を合わせたものをシステム構成情報ともいう。【００３１】
図２は、制御システムエンジニアリング装置のハードウェア構成を模式的に示すブロック図である。制御システムエンジニアリング装置１００は、パーソナルコンピュータなどの情報処理端末によって構成され、エンジニアリングツールの処理（すなわち、システム構成の設定および管理の処理）をプログラムに基づいて行うためのマイクロプロセッサ１０１と、その処理に伴う一時データを格納するためのデータ格納メモリ１０２と、ＰＬＣ１０と通信を行うための通信ポート１０３と、エンジニアリグツール（ツリーやアイコンなどのウィンドウ）を表示するための表示部１０４と、キーボードやマウスなどの入力部１０５と、エンジニアリングツールで設定したデータ（すなわち、システム構成の設定）を記憶するハードディスク装置などの記憶部１０６と、がバス１０７を介して接続される構成を有する。【００３２】
図１の例では、この制御システムエンジニアリング装置１００が、ＰＬＣ１０−３とＵＳＢケーブル３０を介して接続されている。そして、後述する制約の下で、制御システムに関するＰＬＣデータや各ＰＬＣ１０への接続経路などの情報を収集し、システム構成をグラフィカルに表示する。【００３３】
図３は、この発明にかかる制御システムエンジニアリング装置の実施の形態１の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、通信部１１１と、表示部１１２と、起点ＰＬＣ指定部１１３と、オンラインネットワーク構成情報収集部１１４と、オンライン接続経路保持部１１５と、オンラインネットワーク構成情報保持部１１６と、表示オブジェクト座標算出部１１７と、システム構成表示部１１８と、これらの各処理部を制御する制御部１１９と、を備える。【００３４】
通信部１１１は、制御システムを構成する１つのＰＬＣと接続し、通信を行う。また、表示部１１２は、システム構成表示部１１８によって作成されたシステム構成情報を表示する手段である。なお、通信部１１１は、請求の範囲における通信手段に対応し、表示部１１２は、同じく表示手段に対応している。【００３５】
起点ＰＬＣ指定部１１３は、当該制御システムエンジニアリング装置１００をどのＰＬＣに接続するかを指定する。この起点ＰＬＣ指定部１１３による処理は、たとえば、特許第３５８７０９９号公報に記載されているものなどを用いることができる。なお、起点ＰＬＣ指定部１１３は、請求の範囲における起点制御装置指定手段に対応している。【００３６】
オンラインネットワーク構成情報収集部１１４は、起点ＰＬＣ指定部１１３で指定されたＰＬＣを起点として制御システムを構成するＰＬＣに接続するネットワークを示す接続ネットワーク情報やＰＬＣのシステム構成（ベース上に装着されているユニットの構成）を示すベース情報を含むシステム構成情報と、各ＰＬＣへの接続経路である接続経路情報と、を収集する。また、収集したシステム構成情報から、ネットワークの構成、すなわちネットワークに接続するＰＬＣを示すネットワーク情報を作成する機能も有する。そして、収集した接続ネットワーク情報とベース情報をＰＬＣデータとして、作成したネットワークをネットワークデータとして、オンラインネットワーク構成情報保持部１１６に格納し、収集した接続経路情報をオンライン接続経路保持部１１５に格納する。なお、このオンラインネットワーク構成情報収集部１１４は、請求の範囲におけるオンラインネットワーク構成情報収集手段に対応している。【００３７】
オンライン接続経路保持部１１５は、オンラインネットワーク構成情報収集部１１４の処理の中で用いられた、それぞれのＰＬＣへの接続経路である接続経路情報を保持する。接続経路情報は、当該制御システムエンジニアリング装置１００が接続されたＰＬＣからあるＰＬＣへアクセスする際の通信経路を示すものである。【００３８】
オンラインネットワーク構成情報保持部１１６は、オンラインネットワーク構成情報収集部１１４によって収集された接続ネットワーク情報やベース情報と、オンラインネットワーク構成情報収集部１１４によって作成されたネットワーク情報と、をネットワーク構成情報として保持する。上述したように、接続ネットワーク情報は、制御システムを構成するＰＬＣに接続するネットワークを示す情報であり、ベース情報は、各ＰＬＣと同じベース上に装着されるユニットの数（スロット数）と種類とその属性、そのベースに接続される増設ベースとこの増設ベースに装着されるユニットの数と種類とその属性を示す情報である。また、ネットワーク情報は、ネットワークを構成するＰＬＣとその通信ユニットに設定された属性を含む情報である。【００３９】
表示オブジェクト座標算出部１１７は、オンラインネットワーク構成情報保持部１１６に保持されているネットワーク構成情報を読み出して、その内容を解析し、制御システムを構成するネットワークやＰＬＣのシステム構成全体を表示するために、それぞれの表示オブジェクト（以下、単にオブジェクトともいう）の座標を算出する。この表示オブジェクト座標算出部１１７は、請求の範囲における表示オブジェクト座標算出手段に対応している。【００４０】
システム構成表示部１１８は、表示オブジェクト座標算出部１１７で算出された座標に基づいて表示オブジェクトを表示部１１２に表示する。このシステム構成表示部１１８は、請求の範囲におけるシステム構成表示手段に対応している。【００４１】
ここで、表示オブジェクト座標算出部１１７についてさらに詳しく説明する。表示オブジェクト座標算出部１１７は、システム構成表示部１１８で表示処理されるオブジェクトの座標を最終的に算出するまでの中間段階として、グリッドモデルによる配置情報を算出する機能を有する。【００４２】
このグリッドモデルとは、矩形セルによってオブジェクト間の配置関係を表すモデルのことをいう。ここではグリッドモデルとして、ネットワークグリッドと、ＰＬＣグリッドと、配線グリッドの３種類のグリッドを用いる。【００４３】
ネットワークグリッドは、ネットワークを表す矩形セル（グリッド）である。ネットワークグリッドの左右に別のグリッドが配置されることはなく、複数のネットワークグリッドが存在する場合には、ネットワークグリッドは上下に配置するものとする。【００４４】
ＰＬＣグリッドは、ＰＬＣを表す矩形セル（グリッド）である。ＰＬＣグリッドはＰＬＣが接続するネットワークのネットワークグリッドの下に、後述する配線グリッドを伴って配置される。このＰＬＣグリッドは、請求の範囲における制御装置グリッドに対応している。【００４５】
配線グリッドは、ＰＬＣとネットワークとを接続するための配線を表す矩形セル（グリッド）である。配線グリッドはネットワークグリッドとＰＬＣグリッドとの間に配置され、ＰＬＣグリッドからは必ず上方向にのみ延びるものとする。【００４６】
また、このほかに、追加したＰＬＣグリッド上部にある全てのネットワークグリッドは、追加した下部のＰＬＣグリッドを包含するように横方向に伸びるものとする。【００４７】
つぎに、グリッドモデルの具体例を説明する。図４−１〜図７−４は、制御システムの構成の一例と、それに対応するグリッドモデルの一例を示す図である。図４−１に示されるネットワークＮｏ．１に接続するＰＬＣ３を、グリッドモデルで表したものが、図４−２である。この図４−２に示されるように、ネットワークグリッド１の下にＰＬＣグリッド３が配置され、このＰＬＣグリッド３からネットワークグリッド１に向けて配線グリッドが配置される。【００４８】
図５−１に示されるように、ＰＬＣ３がネットワークＮｏ．１，Ｎｏ．２の２つのネットワークに接続する場合のグリッドモデルは、図５−２に示されるように、ＰＬＣグリッド３から、上下に配置されたネットワークグリッド１とネットワークグリッド２に対して配線グリッドが上方向に配置される。【００４９】
図６−１に示されるように、２つのＰＬＣ３，４が１つのネットワークＮｏ．１に接続される場合のグリッドモデルは、図６−２に示されるように、左右に並べて配置された２つのＰＬＣグリッド３，４のそれぞれからネットワークグリッド１に向けて配線グリッドが配置される。このとき、図６−１に示されるようにネットワークＮｏ．１には２つのＰＬＣ３，４が接続されているので、図６−２で、ネットワークグリッド１は、２つのＰＬＣグリッド３，４を含むように左右方向に伸びた形となっている。【００５０】
図７−１または図７−２に示されるようにＰＬＣ−３がネットワークＮｏ．１に接続し、ＰＬＣ４がネットワークＮｏ．２に接続し、ＰＬＣ５が２つのネットワークＮｏ．１，Ｎｏ．２に接続している場合のグリッドモデルは、図７−３または図７−４に示されるようになる。すなわち、２つのネットワークＮｏ．１，Ｎｏ．２が存在するので、上下方向に２つのネットワークグリッド１，２が配置される。ここでは、ネットワークグリッド１がネットワークグリッド２よりも上に配置されている。また、ＰＬＣ３はネットワークＮｏ．１にのみ接続されるので、ＰＬＣグリッド３は、ネットワークグリッド１とネットワークグリッド２との間に配置され、ＰＬＣグリッド１からネットワークグリッド１に向けて配線グリッドが配置される。また、ＰＬＣ４はネットワークＮｏ．２にのみ接続されるので、ＰＬＣグリッド４は、ネットワークグリッド２の下方に配置され、ＰＬＣグリッド４からネットワークグリッド２に向けて配線グリッドが配置される。さらに、ＰＬＣ５は、ネットワークＮｏ．１，Ｎｏ．２の両方に接続されるので、ＰＬＣグリッド５は、ネットワークグリッド２の下方に配置され、ネットワークグリッド１とネットワークグリッド２に向けて配線グリッドが配置される。また、ネットワークグリッド１は、ＰＬＣグリッド３，５を含むように、ネットワークグリッド２は、ＰＬＣグリッド４，５を含むように左右方向に伸びた形となっている。【００５１】
このようなグリッドモデルの規則の下に表示オブジェクト座標算出部１１７は、グリッドを用いてシステム構成表示部１１８で表示処理される制御システムを構成するオブジェクトの座標を算出する。【００５２】
図８は、表示オブジェクト座標算出部の機能構成を模式的に示すブロック図である。この図に示されるように、表示オブジェクト座標算出部１１７は、グリッドモデル保持機能１１７１と、ネットワークグリッド配置機能１１７２と、ＰＬＣグリッド配置機能１１７３と、グリッドサイズ算出機能１１７４と、グリッド座標算出機能１１７５と、を備える。【００５３】
グリッドモデル保持機能１１７１は、ネットワークグリッド配置機能１１７２とＰＬＣグリッド配置機能１１７３とによって配置されたグリッドモデルや、グリッドサイズ算出機能１１７４によって算出されたグリッドサイズを含むグリッドモデルを保持する。【００５４】
ネットワークグリッド配置機能１１７２は、オンラインネットワーク構成情報保持部１１６に保持されているネットワーク構成情報を読み出して、その内容からネットワーク間の配置関係を解析し、ネットワークのグリッドモデルを算出して配置する。その結果は、グリッドモデル保持機能１１７１に格納される。【００５５】
ＰＬＣグリッド配置機能１１７３は、オンラインネットワーク構成情報保持部１１６に保持されているネットワーク構成情報を読み出して、その内容からＰＬＣとそのネットワークとの接続関係を解析し、ＰＬＣと配線のグリッドモデルを算出して配置する。このとき、ネットワークグリッド配置機能１１７２によって算出され、グリッドモデル保持機能１１７１に格納されたグリッドモデルに対して、ＰＬＣグリッドと配線グリッドとが配置される。そして、その結果は、グリッドモデル保持機能１１７１に格納される。なお、このＰＬＣグリッド配置機能１１７３は、請求の範囲における制御装置グリッド配置機能に対応している。【００５６】
グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に保持されているグリッドモデル中の各グリッド、特にＰＬＣグリッドについて、オンラインネットワーク構成情報保持部１１６の対応するＰＬＣのベース情報を用いて、ＰＬＣの表示に必要なサイズを算出する。ここで用いられるグリッドモデルは、ネットワークグリッドとＰＬＣグリッドと配線グリッドとが配置されたグリッドモデルである。また、ベース情報としては、対応するＰＬＣのベースに装着されているユニットの個数とその種類、また増設ベースの有無と、その増設ベースに装着されているユニットの個数とその種類が利用される。そして、その結果は、グリッドモデル保持機能１１７１中のグリッドモデルに付加されて格納される。【００５７】
グリッド座標算出機能１１７５は、グリッドモデル保持機能１１７１に保持されているグリッドサイズを含むグリッドモデル中のＰＬＣグリッドに対して、左上のＰＬＣグリッドから順にグリッドサイズを加算してグリッド座標を算出する。そして、算出した結果が、グリッドモデルとともにシステム構成表示部１１８に出力される。【００５８】
つぎに、上記のような構成を有する制御システムエンジニアリング装置１００での、ネットワーク構成情報の収集処理からシステム構成情報の表示処理について順に説明する。【００５９】
（ネットワーク構成情報収集処理）
（１）処理の概要
図９−１〜図９−３は、ネットワーク構成情報収集処理手順の一例を示すフローチャートである。まず、制御システムエンジニアリング装置１００の使用者が、起点ＰＬＣ指定部１１３から当該制御システムエンジニアリング装置１００をどのＰＬＣに接続するかを指定する（ステップＳ１１）。このとき指定されたＰＬＣを、ネットワーク構成情報を収集する起点となるので、起点ＰＬＣという。【００６０】
オンラインネットワーク構成情報収集部１１４は、指定された起点ＰＬＣが保持するプロジェクト情報のうち、システム構成情報を読み出す（ステップＳ１２）。また、同時にオンラインネットワーク構成情報収集部１１４は、この起点ＰＬＣへの接続経路を出力し（ステップＳ１３）、接続経路情報としてオンライン接続経路保持部１１５に格納する。【００６１】
ついで、オンラインネットワーク構成情報保持部１１６は、ステップＳ１２で読み出したシステム構成情報からベース情報と接続ネットワーク情報とを抽出し（ステップＳ１４）、これらをＰＬＣデータとして、オンラインネットワーク構成情報保持部１１６に出力する（ステップＳ１５）。その後、オンラインネットワーク構成情報収集部１１４は、起点ＰＬＣを処理対象ＰＬＣとして選択し（ステップＳ１６）、図９−２に示されるＡ１処理を実行する（ステップＳ１７）。【００６２】
図９−２は、図９−１のステップＳ１７におけるＡ１処理の手順を示すフローチャートである。まず、オンラインネットワーク構成情報保持部１１６は、起点ＰＬＣが接続するすべてのネットワークに対して、図９−３に示されるＡ２処理を実行したか否かを判定する（ステップＳ３１）。対象となるＰＬＣに接続するすべてのネットワークに対してＡ２処理を行っている場合（ステップＳ３１でＹｅｓの場合）には、Ａ１処理を終了し、図９−１のフローチャートへと戻る。【００６３】
また、対象となるＰＬＣに接続するすべてのネットワークに対してＡ２処理を行っていない場合（ステップＳ３１でＮｏの場合）には、それぞれのネットワークは、さらに情報収集できるか否かを判定する（ステップＳ３２）。このネットワークの情報収集処理実行の可否の判定は、予め定義されたネットワークの情報収集処理が可能な範囲についての制約に基づいて行われる。そして、それぞれのネットワークについてさらに情報収集できる場合（ステップＳ３２でＹｅｓの場合）には、図９−３のＡ２処理をまだ実行していないネットワークから１つのネットワークを処理対象のネットワークとして選択し（ステップＳ３３）、このネットワークに対して、図９−３に示されるネットワーク情報出力処理を実行する（ステップＳ３４）。【００６４】
その後、Ａ２処理がまだのネットワークがあるかを判定し（ステップＳ３５）、Ａ２処理がまだのネットワークがある場合（ステップＳ３５でＹｅｓの場合）には、ステップＳ３３へと戻り、上述した処理が繰り返し実行される。一方、Ａ２処理がまだのネットワークがない場合（ステップＳ３５でＮｏの場合）には、Ａ１処理が終了し、図９−１に処理が戻る。【００６５】
また、ステップＳ３２で、それぞれのネットワークについてさらに情報収集することができない場合（ステップＳ３２でＮｏの場合）には、出力されたＰＬＣデータを用いて、ネットワーク情報を作成し、これをネットワークデータとしてオンラインネットワーク構成情報保持部１１６に出力する（ステップＳ３６）。このネットワーク情報は、各ネットワークについて、そのネットワークを構成するＰＬＣと、そのＰＬＣについて設定されている情報をまとめたものである。【００６６】
図９−３は、図９−２のステップＳ３４におけるＡ２処理の手順の一例を示すフローチャートである。このＡ２処理では、オンラインネットワーク構成情報収集部１１４は、まず、ネットワークに接続している管理局（コントローラ間ネットワークの場合）またはマスタ局（フィールドネットワークの場合）のＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す（ステップＳ５１）。ついで、読み出したシステム構成情報の接続ネットワーク情報から総局数を抽出する（ステップＳ５２）。【００６７】
その後、オンラインネットワーク構成情報収集部１１４は、ネットワークに接続している各ＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す（ステップＳ５３）。ついで、読み出したシステム構成情報の中からベース情報と接続ネットワーク情報を抽出し（ステップＳ５４）、これらの情報を用いて、そのネットワークを構成するＰＬＣについての設定情報をまとめたネットワーク情報を作成し、オンラインネットワーク構成情報保持部１１６にネットワークデータとして出力する（ステップＳ５５）。【００６８】
ついで、オンラインネットワーク構成情報収集部１１４は、情報収集されたすべてのＰＬＣに対して、データを出力したか否かを判定する（ステップＳ５６）。すべてのＰＬＣに対してデータを出力している場合（ステップＳ５６でＹｅｓの場合）には、対象としているネットワークに関するＡ２処理を終了し、図９−２のＡ１処理に戻る。また、すべてのＰＬＣに対してデータを出力していない場合（ステップＳ５６でＮｏの場合）には、各ＰＬＣまでの接続経路をオンライン接続経路保持部１１５に対して出力するとともに（ステップＳ５７）、オンラインネットワーク構成情報保持部１１６に対して、ステップＳ５４で抽出した各ＰＬＣのＰＬＣデータを出力する（ステップＳ５８）。【００６９】
ついで、各ＰＬＣに対してネットワークについてさらに情報収集可能か否かを、所定の制約に基づいて判定する（ステップＳ５９）。ネットワークについて情報収集が可能である場合（ステップＳ５９でＹｅｓの場合）には、図９−２に示されるＡ１処理について未実施のＰＬＣを処理対象のＰＬＣとして選択し（ステップＳ６０）、図９−２に示したＡ１処理を実行する（ステップＳ６１）。そして、Ａ１処理がまだのＰＬＣが存在するかを判定し（ステップＳ６２）、Ａ１処理がまだのＰＬＣが存在する場合（ステップＳ６２でＹｅｓの場合）には、ステップＳ６０へと戻り、上述した処理が繰り返し実行される。また、Ａ１処理がまだのＰＬＣが存在しない場合（ステップＳ６２でＮｏの場合）には、Ａ２処理が終了する。さらに、ステップＳ５９で、ネットワークについて情報収集が可能でない場合（ステップＳ５９でＮｏの場合）にも、Ａ２処理が終了する。【００７０】
その後、図９−１に戻り、ステップＳ１７のＡ１処理の後、オンラインネットワーク構成情報収集部１１４は、出力されたデータの整合性の処理を行う（ステップＳ１８）。このデータの整合性の処理として、たとえば、同じネットワークについて、制約によって２つのネットワークデータがオンラインネットワーク構成情報保持部１１６に存在する場合に、これらの２つのデータをまとめて１つのネットワークについてのネットワークデータとする処理などを挙げることができる。以上により、ネットワーク構成情報収集処理を終了する。【００７１】
以上に示した処理によって、オンライン接続経路保持部１１５には、制御システムエンジニアリング装置１００が接続されたＰＬＣから情報収集が可能なネットワークの各ＰＬＣまでの接続経路情報が格納され、オンラインネットワーク構成情報保持部１１６には、情報収集が可能なネットワークの各ＰＬＣに関する接続ネットワーク情報とベース情報と、各ＰＬＣによって構成されるネットワーク情報と、を含むネットワーク構成情報が格納される。【００７２】
（２）処理の具体例
上述した説明では、ネットワーク構成情報収集処理の概要を述べたものであるので、この処理の具体例を図１の構成を有する制御システムの場合を例に挙げて以下に説明する。図１０は、ネットワーク構成情報収集処理の結果、オンライン接続経路保持部に保持される接続経路情報の一例を示す図であり、図１１は、同じくオンラインネットワーク構成情報格納部に格納されるネットワーク構成情報の一例を示す図である。なお、これらの図１０と図１１では、データが生成される順に示されている。また、これらの図中では、ネットワークは図１に示される符号ではなく、「ネットワーク種類＋ネットワーク番号」の形で表記している。【００７３】
図１０に示されるように、接続経路情報は、格納されるデータの種類を示す「データ種別」と、終点ＰＬＣとなる「名称」と、「起点ＰＬＣ」と、途中の経路であるネットワークまたはノード（ＰＬＣ）を示す「データ１」、「データ２」、・・・、とを含む。ここでは、ｎを自然数として、「データ（２ｎ−１）」の欄にはネットワークが入り、「データ（２ｎ）」の欄にはＰＬＣが入る。【００７４】
また、図１１に示されるように、ネットワーク構成情報は、格納されるデータの種別を示す「データ種別」と、対象となるＰＬＣを示す「名称」と、そのＰＬＣについてデータ種別ごとに規定された内容を示す「データ１」、「データ２」、・・・、とを含む。ネットワーク構成情報は、上述したようにベース情報、接続ネットワーク情報およびネットワーク情報の３種類からなるので、これらのデータ種類によって、格納されるデータの内容が異なる。【００７５】
たとえば、ベース情報を格納する場合には、データ種別には「ＰＬＣベース」と格納され、各データ欄には各スロットに装着されるユニットの種別が格納される。増設ベースを有する場合には、増設ベースの各スロットに装着されるユニットの種別も格納される。また、接続ネットワーク情報を格納する場合には、データ種別には「ＰＬＣネットワーク」と格納され、各データ欄には、「名称」に示されるＰＬＣのベースに装着されている各通信ユニットに関する情報が格納される。さらに、ネットワーク情報を格納する場合には、データ種別には「ネットワーク」と格納され、各データ欄には、「名称」に示されるネットワークを構成するＰＬＣの通信ユニットに関する情報が格納される。ここでは、局番順に格納されるものとする。【００７６】
（２−１）起点ＰＬＣについて
図１では、ＰＬＣ１０−３に制御システムエンジニアリング装置１００が接続されているので、まず、制御システムエンジニアリング装置１００の起点ＰＬＣ指定部１１３から、使用者はＰＬＣ１０−３を起点ＰＬＣに指定する。その後、オンラインネットワーク構成情報収集部１１４は、ＵＳＢケーブル３０を介して接続される起点ＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出すとともに、起点ＰＬＣへの接続経路Ｐ３ｃを、オンライン接続経路保持部１１５に出力する。【００７７】
ここで読み出したシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にＩ／Ｏユニット１２−３、スロット３にコントローラ間ネットワークユニット１１−３、増設ベース１３−３のスロット１，２にＩ／Ｏユニット１２−３がそれぞれ装着されているという情報が含まれている。また、接続ネットワーク情報として、ネットワーク種別がコントローラ間ネットワークＮｏ．１であり、コントローラ間ネットワークユニット１１−３が局番１で、管理局であり、コントローラ間ネットワークＮｏ．１の総局数は３であるという情報が含まれている。【００７８】
そこで、オンラインネットワーク構成情報収集部１１４は、接続経路情報として、図１０の接続経路Ｐ３ｃに示される内容をオンライン接続経路保持部１１５に出力し、図１１に示されるＰＬＣデータＰ３ｂ，Ｐ３ｎに示される内容をオンラインネットワーク構成情報保持部１１６に出力する。そして、起点ＰＬＣであるＰＬＣ１０−３を処理対象として選択し、図９−２に示されるＡ１処理を実行する。【００７９】
（２−２）ＰＬＣ１０−３に接続されるネットワーク
ＰＬＣ１０−３を処理の対象とした図９−２のＡ１処理では、ＰＬＣ１０−３に接続するコントローラ間ネットワークＮｏ．１（２２Ａ）は、図９−３のＡ２処理をまだ実行していないので、ネットワークをさらに情報収集できるか制約を確認する。図１２は、ネットワークの情報収集の制約の一例を示す図である。図１のＰＬＣ１０−３に接続するネットワークであるコントローラ間ネットワークＮｏ．１（２２Ａ）は、図１２のどの制約にも該当しないので、オンラインネットワーク構成情報収集部１１４は、コントローラ間ネットワークＮｏ．１（２２Ａ）をＡ２処理の対象として選択し、図９−３に示されるＡ２処理を実行する。【００８０】
（２−３）コントローラ間ネットワークＮｏ．１について
コントローラ間ネットワークＮｏ．１（２２Ａ）を処理の対象とした図９−３のＡ２処理では、まず、オンラインネットワーク構成情報収集部１１４は、コントローラ間ネットワークＮｏ．１に接続している管理局であるＰＬＣ１０−３が保持するプロジェクト情報のうちシステム構成情報を読み出す。しかし、ここでは既にＰＬＣ１０−３のシステム構成情報のうち、図１１にＰＬＣデータＰ３ｂ，Ｐ３ｎが出力されているため、改めて読み出す必要がない。そこで、管理局ＰＬＣ（すなわち、ＰＬＣ１０−３）のシステム構成情報のうち接続ネットワーク情報Ｐ３ｎには、コントローラ間ネットワークＮｏ．１に接続するＰＬＣの総局数に関する情報が含まれているので、総局数「３」を抽出する。【００８１】
その後、オンラインネットワーク構成情報収集部１１４は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→各局」の経路で、それぞれの局番のＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す。つまり、ここでは新たにＰＬＣ１０−４とＰＬＣ１０−１の情報が収集される。【００８２】
その後、オンラインネットワーク構成情報収集部１１４は、これら抽出した情報から、ネットワーク情報を生成し、ネットワークデータＭ１として、オンラインネットワーク構成情報保持部１１６に出力する。つまり、オンラインネットワーク構成情報収集部１１４は、既にオンラインネットワーク構成情報保持部１１６に格納されているＰＬＣ１０−３の通信ユニット１１−３についての情報と、抽出したＰＬＣ１０−４，１０−１の通信ユニット１１−１Ａ，１１−４Ｂについての情報と、を用いて、図１１のネットワークデータＭ１に示されるコントローラ間ネットワークＮｏ．１についてのネットワーク情報を作成する。【００８３】
ついで、オンラインネットワーク構成情報収集部１１４は、新たに収集されたＰＬＣ１０−４，１０−１に関するデータのうち全てのデータについて、オンライン接続経路保持部１１５またはオンラインネットワーク構成情報保持部１１６に対してデータを出力したか否かを判定する。ここでは、ＰＬＣ１０−４，１０−１のどちらのデータも、オンライン接続経路保持部１１５とオンラインネットワーク構成情報保持部１１６にまだ出力されていない。そのため、それぞれのＰＬＣ１０−４，１０−１の読み出しを行った経路をそれぞれ接続経路Ｐ４ｃ，Ｐ１ｃとしてオンライン接続経路保持部１１５に出力し、それぞれのＰＬＣ１０−４，１０−１のＰＬＣデータを、オンラインネットワーク構成情報保持部１１６にそれぞれベース情報Ｐ４ｂ，Ｐ１ｂ、接続ネットワーク情報Ｐ４ｎ，Ｐ１ｎとして出力する。【００８４】
その後、オンラインネットワーク構成情報収集部１１４は、情報収集を行ったＰＬＣ１０−４，１０−１に関してネットワークをさらに情報収集できるか判定する。なお、ここでは、ネットワークをさらに情報収集できるか判定を行うＰＬＣがＰＬＣ１０−４（局番２）とＰＬＣ１０−１（局番３）であるが、どちらのＰＬＣから処理を行ってもよい。つまり、処理の優先度はない。この例では、局番順に処理を行うものとし、局番２のＰＬＣ１０−４についての処理が終了した後に、局番３のＰＬＣ１０−１についての処理が行うものとする。【００８５】
（２−４）ＰＬＣ１０−４
まずＰＬＣ１０−４に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ＰＬＣ１０−４に関しては、図１２の制約に該当しないので、ＰＬＣ１０−４を処理の対象として選択し、図９−２のＡ１処理を実行する。【００８６】
（２−４−１）Ａ１処理
ＰＬＣ１０−４を処理の対象としたＡ１処理では、ＰＬＣ１０−４の接続するネットワークのうち、コントローラ間ネットワークＮｏ．１のデータは、オンラインネットワーク構成情報保持部１１６に既にネットワークデータＭ１として出力されており、Ａ２処理が実行されているが、フィールドネットワーク２３についてはまだＡ２処理が実行されていない。そのため、オンラインネットワーク構成情報収集部１１４は、フィールドネットワーク２３について、ネットワークをさらに情報収集できるか図１２を用いて制約を確認する。ここでは制約に該当しないので、フィールドネットワーク２３を処理の対象として選択し、図９−３のＡ２処理を実行する。【００８７】
（２−４−２）Ａ２処理
ついで、フィールドネットワーク２３を処理の対象としたＡ２処理では、フィールドネットワーク２３に接続しているマスタ局ＰＬＣであるＰＬＣ１０−４が保持するプロジェクト情報のうちシステム構成情報を読み出す。しかし、ＰＬＣ１０−４のシステム構成情報のうち、ベース情報Ｐ４ｂと接続ネットワーク情報Ｐ４ｎのデータは既に出力しているため、改めて読み出す必要がない。そこで、すでに出力しているマスタ局のＰＬＣ１０−４のシステム構成情報の接続ネットワーク情報Ｐ４ｎから、フィールドネットワーク２３に接続するＰＬＣの総局数「２」を抽出する。【００８８】
その後、オンラインネットワーク構成情報収集部１１４は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→フィールドネットワーク２３→各局」の経路で、それぞれの局番のＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す。つまり、ここでは新たにＰＬＣ１０−５の情報が収集される。【００８９】
（２−４−３）フィールドネットワーク２３→ＰＬＣ１０−５
新たに読み出したＰＬＣ１０−５のシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にＩ／Ｏユニット１２−５、スロット３にフィールドネットワーク２３で通信するための通信ユニット１１−５Ａ、スロット４にコントローラ間ネットワーク２２Ｂで通信するための通信ユニット１１−５Ｂ、という情報が含まれている。また、接続ネットワーク情報として、フィールドネットワーク２３、ローカル局１、という情報と、コントローラ間ネットワークＮｏ．２、局番３、通常局、という情報が含まれている。そして、オンラインネットワーク構成情報収集部１１４は、これらの抽出したシステム構成情報と、既に出力されたＰＬＣ１０−４についてのシステム構成情報とから、フィールドネットワーク２３に関するネットワーク情報を作成し、図１１に示されるネットワークデータＣとしてオンラインネットワーク構成情報保持部１１６に出力する。【００９０】
ついで、オンラインネットワーク構成情報収集部１１４は、新たに情報収集されたＰＬＣ１０−５に関して、オンライン接続経路保持部１１５またはオンラインネットワーク構成情報保持部１１６に対してデータを出力したか否かを判定する。ここでは、ＰＬＣ１０−５のデータを出力していないので、読み出しを行った経路をオンライン接続経路保持部１１５に接続経路Ｐ５ｃとして出力し、ＰＬＣデータをオンラインネットワーク構成情報保持部１１６にベース情報Ｐ５ｂ、接続ネットワーク情報Ｐ５ｎとして出力する。【００９１】
その後、オンラインネットワーク構成情報収集部１１４は、情報収集を行ったＰＬＣ１０−５に関して、ネットワークをさらに情報収集できるか図１２の制約に基づいて確認する。ここでは制約Ｂに該当するので、フィールドネットワーク２３を処理の対象としたＡ２処理を終了する。そして、（２−４）のＰＬＣ１０−４を処理の対象としたＡ１処理も終了する。【００９２】
（２−５）ＰＬＣ１０−１
つぎに、ＰＬＣ１０−１に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ＰＬＣ１０−１に関しては、図１２の制約に該当しないので、ＰＬＣ１０−１を処理の対象として選択し、図９−２のＡ１処理を実行する。【００９３】
ＰＬＣ１０−１を処理の対象としたＡ１処理では、ＰＬＣ１０−１の接続するネットワークのうちコントローラ間ネットワークＮｏ．２も情報系ネットワークＮｏ．３も、まだＡ２処理が実行されていない。そのため、オンラインネットワーク構成情報収集部１１４は、所定の基準で設定された優先度に基づいて処理の対象となるＰＬＣを選択し、処理を行う。図１３は、ネットワーク情報出力処理の優先度の一例を示す図である。この例では、ＰＬＣが接続される可能性が最も高いコントローラ間ネットワーク２２Ａ，２２Ｂを最も処理の優先度を高く設定し、フィールドネットワーク２３、情報系ネットワーク２１の順に処理の優先度を低くしている。【００９４】
（２−６）コントローラ間ネットワークＮｏ．２
オンラインネットワーク構成情報収集部１１４は、図１３の優先度にしたがって、コントローラ間ネットワークＮｏ．２を選択し、ネットワークをさらに情報収集できるかについて図１２を用いて制約を確認する。ここでは制約に該当しないので、コントローラ間ネットワークＮｏ．２を処理の対象として図９−３のＡ２処理を実行する。【００９５】
このコントローラ間ネットワークＮｏ．２を処理の対象としたＡ２処理では、オンラインネットワーク構成情報収集部１１４は、コントローラ間ネットワークＮｏ．２に接続している管理局であるＰＬＣ１０−２が保持するプロジェクト情報のうちシステム構成情報を読み出す。そのシステム構成情報のうち接続ネットワーク情報には、コントローラ間ネットワークＮｏ．２に接続するＰＬＣの総局数に関する情報が含まれているので、総局数「３」を抽出する。【００９６】
その後、オンラインネットワーク構成情報収集部１１４は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→各局」の経路で、それぞれの局番のＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す。つまり、ここではＰＬＣ１０−２，１０−５の情報が収集される。【００９７】
新たに読み出したＰＬＣ１０−２のシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にコントローラ間ネットワークＮｏ．２で通信するための通信ユニット１１−２Ａ、スロット２に情報系ネットワークＮｏ．３で通信するための通信ユニット１１−２Ｂ、という情報が含まれている。また、接続ネットワーク情報として、コントローラ間ネットワークＮｏ．２、局番１、管理局、という情報と、情報系ネットワークＮｏ．３、局番２、ＩＰアドレス、という情報が含まれている。【００９８】
また、ＰＬＣ１０−５のシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にＩ／Ｏユニット１２−５、スロット３にフィールドネットワーク２３で通信するための通信ユニット１１−５Ａ、スロット４にコントローラ間ネットワークＮｏ．２で通信するための通信ユニット１１−５Ｂ、という情報が格納されている。また、接続ネットワーク情報として、フィールドネットワーク、ローカル局１、という情報と、コントローラ間ネットワークＮｏ．２、局番３、通常局、という情報が格納されている。【００９９】
そして、オンラインネットワーク構成情報収集部１１４は、これらの抽出したシステム情報と、オンラインネットワーク構成情報保持部１１６に既に格納されているＰＬＣ１０−１に関するＰＬＣデータとから、コントローラ間ネットワークＮｏ．２についてのネットワーク情報を作成し、ネットワークデータＭ２としてオンライン接続経路保持部１１５に出力する。【０１００】
ついで、新たに情報収集されたシステム構成情報のうち、ＰＬＣ１０−５のデータに関しては既にデータ出力されているが、ＰＬＣ１０−２のデータに関してはまだ出力されていない。そのため、ＰＬＣ１０−２の読み出しを行った経路を接続経路Ｐ２ｃとしてオンライン接続経路保持部１１５に出力し、ＰＬＣデータをオンラインネットワーク構成情報保持部１１６にベース情報Ｐ２ｂ、接続ネットワーク情報Ｐ２ｎとして出力する。【０１０１】
（２−７）ＰＬＣ１０−２
その後、ＰＬＣ１０−２に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ＰＬＣ１０−２に関しては、図１２の制約に該当しないので、ＰＬＣ１０−２を処理の対象として選択し、図９−２のＡ１処理を実行する。【０１０２】
ＰＬＣ１０−２を処理の対象としたＡ１処理では、ＰＬＣ１０−２の接続するネットワークのうち情報系ネットワークＮｏ．３について、まだＡ２処理が実行されていない。そのため、オンラインネットワーク構成情報収集部１１４は、ネットワークをさらに情報収集できるか図１２の制約を確認する。ここでは、制約Ｃに該当するので、情報収集できるネットワークはない。そのため、ＰＬＣ１０−２のＰＬＣデータを用いて情報系ネットワークＮｏ．３について作成できる範囲でのネットワーク情報を作成し、ネットワークデータＥ３−２としてオンラインネットワーク構成情報保持部１１６に出力する。以上により、ＰＬＣ１０−２を処理の対象としたＡ１処理を終了する。また、（２−６）のコントローラ間ネットワークＮｏ．２を処理の対象としたＡ２処理も終了する。【０１０３】
（２−８）情報系ネットワークＮｏ．３
つぎに、情報系ネットワークＮｏ．３に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。情報系ネットワーク２１は制約Ｃに該当するので、情報系ネットワークＮｏ．３について、作成できる範囲でのネットワーク情報を作成し、ネットワークデータＥ３−１としてオンラインネットワーク構成情報保持部１１６に出力する。以上により、（２−５）のＰＬＣ１０−１を処理の対象としたＡ１処理を終了する。また、（２−３）のコントローラ間ネットワークＮｏ．１を処理の対象としたＡ２処理を終了する。さらに、（２−２）のＰＬＣ１０−３を処理の対象としたＡ１処理を終了する。【０１０４】
その後、オンラインネットワーク構成情報収集部１１４は、出力されたデータの整合性を処理する。この例では、ネットワークをさらに情報収集できるかの図１２の制約Ｃによって、情報系ネットワークＮｏ．３に関するネットワークデータが、図１１に示されるようにネットワークデータＥ３−１，Ｅ３−２として個別に出力されている。そのため、これらを集約してネットワークデータＥ３とする処理を行う。以上によってネットワーク構成情報収集処理を終了する。【０１０５】
（ＰＬＣグリッド配置処理）
（１）処理の概要
図１４−１〜図１４−５は、表示オブジェクト座標算出処理手順の一例を示すフローチャートである。なお、以下の説明では、上述したグリッドモデルを用いて表示オブジェクトの座標算出処理が行われるものとする。【０１０６】
図１４−１を参照して、表示オブジェクト座標算出処理手順の概要を説明する。まず、表示オブジェクト座標算出部１１７のネットワークグリッド配置機能１１７２は、グリッドモデル上でオンラインネットワーク構成情報保持部１１６に格納されたネットワーク情報を用いて、所定の規則にしたがったネットワークグリッド配置処理を実行する（ステップＳ１１１）。【０１０７】
ついで、ＰＬＣグリッド配置機能１１７３は、グリッドモデル上でオンラインネットワーク構成情報保持部１１６に格納されたベース情報を用いて、所定の規則にしたがってＰＬＣグリッドと配線グリッドを配置するＰＬＣグリッド配置処理を実行する（ステップＳ１１２）。このＰＬＣグリッド配置処理では、ステップＳ１１１で配置されたネットワークグリッドに対して、ＰＬＣグリッドと配線グリッドとを配置する。これらのステップＳ１１１のネットワークグリッド配置処理と、ステップＳ１１２のＰＬＣグリッド配置処理の結果は、グリッドモデル保持機能１１７１に格納される。【０１０８】
その後、グリッドサイズ算出機能１１７４は、ベース情報とグリッドを配置するための所定の規則に基づいて、各グリッドについてのサイズを算出し、その結果をグリッドモデル保持機能１１７１に格納する（ステップＳ１１３）。そして、グリッド座標算出機能１１７５は、グリッドモデル保持機能１１７１に格納されたグリッドサイズに基づいて、表示部１１２上にグリッドを表示するための座標を算出し（ステップＳ１１４）、表示オブジェクト座標算出処理が終了する。【０１０９】
以下に、図１４−１に示される各ステップにおける処理の詳細について説明する。図１４−２は、ネットワークグリッド配置処理手順の一例を示すフローチャートである。まず、表示オブジェクト座標算出部１１７のネットワークグリッド配置機能１１７２は、オンラインネットワーク構成情報保持部１１６のネットワークデータを参照し、ネットワークを抽出する（ステップＳ１３１）。【０１１０】
ついで、抽出したネットワークを上からネットワーク番号順にソートし（ステップＳ１３２）、ネットワーク番号が付されていないフィールドネットワークは下位にソートする（ステップＳ１３３）。そして、ソートが完了した順にネットワークグリッドを配置し（ステップＳ１３４）、その結果をグリッドモデル保持機能１１７１に格納して、ネットワークグリッド配置処理が終了する。【０１１１】
図１４−３は、ＰＬＣグリッド配置処理手順の一例を示すフローチャートである。ＰＬＣグリッド配置機能１１７３は、オンラインネットワーク構成情報保持部１１６のベース情報からＰＬＣを抽出する（ステップＳ１５１）。ついで、抽出したＰＬＣの中から、ステップＳ１１１のネットワークグリッド配置処理で最も下位に配置されるネットワークを選択する（ステップＳ１５２）。その後、選択したネットワークに接続されるＰＬＣを選択し（ステップＳ１５３）、この中から局番の最も小さいＰＬＣを選択する（ステップＳ１５４）。そして、ステップＳ１５２で選択したネットワークグリッドの左下のグリッドから順に詰めて、選択したＰＬＣグリッドと配線グリッドとを配置する（ステップＳ１５５）。このとき、ＰＬＣグリッドとネットワークグリッドの間に配線グリッドを配置する。また、ＰＬＣグリッドがステップＳ１５２で選択したネットワークだけでなく、他のネットワークにも接続している場合には、そのネットワークに至るまで上方向に配線グリッドを配置する。【０１１２】
その後、ステップＳ１５２で選択したネットワークに接続するＰＬＣのうち他のＰＬＣが存在するか否かを判定する（ステップＳ１５６）。他のＰＬＣが存在する場合（ステップＳ１５６でＹｅｓの場合）には、つぎに局番の小さなＰＬＣを選択し（ステップＳ１５７）、ステップＳ１５５へと戻って、ステップＳ１５２で選択したネットワークに接続するＰＬＣがなくなるまで、同じ処理が繰り返し行われる。【０１１３】
また、ステップＳ１５６で他のＰＬＣが存在しない場合（ステップＳ１５６でＮｏの場合）には、他のネットワークが存在するか否かを判定する（ステップＳ１５８）。他のネットワークが存在する場合（ステップＳ１５８でＹｅｓの場合）には、ステップＳ１１１のネットワークグリッド配置処理で、つぎに下位に配置されるネットワークを選択し（ステップＳ１５９）、ステップＳ１５３へと戻り、最も上位に配置されるネットワークについてＰＬＣグリッドと配線グリッドを配置するまで上述した処理が繰り返し実行される。また、他のネットワークが存在しない場合（ステップＳ１５８でＮｏの場合）には、ＰＬＣグリッドと配線グリッドの配置結果をグリッドモデル保持機能１１７１に格納し（ステップＳ１６０）、ＰＬＣグリッド配置処理が終了する。【０１１４】
図１４−４は、グリッドサイズ算出処理手順の一例を示すフローチャートである。まず、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたグリッドモデルからＰＬＣグリッドを１つ選択する（ステップＳ１７１）。ついで、選択したＰＬＣグリッドに対応するＰＬＣについて、オンラインネットワーク構成情報保持部１１６からベース情報を読み取り、増設ベース情報を含めてＰＬＣグリッドの表示に必要な縦サイズと横サイズを算出する（ステップＳ１７２）。ここで、ベースに装着される最小の寸法を有する１つのユニットを基準ユニットとして矩形で表し、ベース上に装着されるユニットや増設ベースを、この基準ユニットの倍数で計算する。たとえば、基準ユニットの上下方向（以下、縦方向と言う）のサイズは１０であり、左右方向（以下、横方向と言う）のサイズは１０であるとすると、ベースに３つのユニットが装着されている場合には、縦サイズは１０であり、横サイズは３０となる。また、増設ベースが装着されている場合には、縦方向に重ねて描くので、縦サイズが延びて２０となる。【０１１５】
その後、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたグリッドモデルには、他のＰＬＣグリッドが存在するか否かを判定する（ステップＳ１７３）。他のＰＬＣグリッドが存在する場合（ステップＳ１７３でＹｅｓの場合）には、ステップＳ１７１へと戻り、選択されないＰＬＣグリッドがなくなるまで、上述した処理が繰り返し実行される。【０１１６】
また、他のＰＬＣグリッドが存在しない場合（ステップＳ１７３でＮｏの場合）には、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納された配線グリッドを１つ選択する（ステップＳ１７４）。選択した配線グリッドに対して、縦サイズと横サイズを算出する（ステップＳ１７５）。ここでは、配線グリッドの縦サイズを予め定められる所定の値とし、横サイズはその配線グリッドの下部に配置されるＰＬＣグリッドの横サイズと同一にする。【０１１７】
その後、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたグリッドモデルには、他の配線グリッドが存在するか否かを判定する（ステップＳ１７６）。他の配線グリッドが存在する場合（ステップＳ１７６でＹｅｓの場合）には、ステップＳ１７４へと戻り、選択されない配線グリッドがなくなるまで、上述した処理が繰り返し実行される。【０１１８】
また、他の配線グリッドが存在しない場合（ステップＳ１７６でＮｏの場合）には、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたネットワークグリッドを１つ選択する（ステップＳ１７７）。選択したネットワークグリッドに対して、縦サイズと横サイズを算出する（ステップＳ１７８）。ここでは、ネットワークグリッドの縦サイズを予め定められる所定の値とし、横サイズは、その下部に配置される配線グリッドを包含するサイズとする。【０１１９】
その後、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたグリッドモデルには、他のネットワークユニットが存在するか否かを判定する（ステップＳ１７９）。他のネットワークグリッドが存在する場合（ステップＳ１７９でＹｅｓの場合）には、ステップＳ１７７へと戻り、選択されないネットワークグリッドがなくなるまで、上述した処理が繰り返し実行される。【０１２０】
また、他のネットワークグリッドが存在しない場合（ステップＳ１７９でＮｏの場合）には、グリッドサイズ算出機能１１７４は、上記で算出されたグリッドサイズを含むグリッドモデルを、グリッドモデル保持機能１１７１に格納して（ステップＳ１８０）、グリッドサイズ算出処理が終了する。【０１２１】
図１４−５は、グリッド座標算出処理手順の一例を示すフローチャートである。グリッド座標算出機能１１７５は、グリッドモデル保持機能１１７１に格納されたグリッドサイズが付加されたグリッドモデルを読み込み（ステップＳ１９１）、グリッドモデルの左上から順にグリッドサイズを加算してグリッド座標を算出する（ステップＳ１９２）。以上により、グリッド座標算出処理が終了する。【０１２２】
（２）処理の具体例
上述した説明では、表示オブジェクト座標算出処理の概要を述べたものであるので、この処理の具体例を図１の構成を有する制御システムの場合を例に挙げて以下に説明する。なお、ここでは、図１０の接続経路情報と図１１のネットワーク構成情報とを用いて、表示オブジェクトの座標算出処理を行うものとする。【０１２３】
（２−１）ネットワークグリッド配置処理
まず、オンラインネットワーク構成情報保持部１１６に格納される図１１のネットワーク構成情報から、データ種別が「ネットワーク」となっているネットワークデータＭ１，Ｍ２，Ｃ，Ｅ３を参照し、コントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２、フィールドネットワーク、情報系ネットワークＮｏ．３を抽出する。【０１２４】
ついで、抽出したネットワークをネットワーク番号順にソートする。この場合、上に配置されるネットワークから順に、「コントローラ間ネットワークＮｏ．１（２２Ａ）→コントローラ間ネットワークＮｏ．２（２２Ｂ）→情報系ネットワークＮｏ．３（２１）→フィールドネットワーク（２３）（括弧内の数字は、図１での符号である）」となる。そして、ソートが完了した順にネットワークグリッドを配置する。図１５は、ネットワークグリッド配置処理の結果を示す図である。この図の状態では、上下の配置関係だけが確定しており、左右の配置関係はまだ確定していない状態にある。【０１２５】
（２−２）ＰＬＣグリッド配置処理
図１６−１〜図１６−５は、ＰＬＣグリッド配置処理の手順の一例を示す図である。以下、これらの図１６−１〜図１６−５を参照しながら、ＰＬＣグリッドの配置処理について説明する。【０１２６】
まず、表示オブジェクト座標算出部１１７のＰＬＣグリッド配置機能１１７３は、図１１のオンラインネットワーク構成情報保持部１１６からデータ種別が「ＰＬＣネットワーク」となっている接続ネットワーク情報Ｐ３ｎ，Ｐ１ｎ，Ｐ４ｎ，Ｐ２ｎ，Ｐ５ｎを抽出する。【０１２７】
ついで、抽出した接続ネットワーク情報から、図１５で最下位に配置されているネットワークであるフィールドネットワークに接続するＰＬＣを取得する。ここでは、ＰＬＣ１０−４（接続ネットワーク情報Ｐ４ｎ）とＰＬＣ１０−５（接続ネットワーク情報Ｐ５ｎ）が取得される。これらのＰＬＣ１０−４（マスタ局）とＰＬＣ１０−５（ローカル局１）のうち、局番の小さなＰＬＣから処理を行うが、ここでは、フィールドネットワークであるため、マスタ局を最初に処理し、つぎにローカル局の局番順に処理を行う。そのため、ＰＬＣ１０−４から処理を行う。【０１２８】
ＰＬＣ１０−４グリッドと配線グリッドを、図１５のフィールドネットワークグリッドの左下に詰めて配置する。なお、図１１の接続ネットワーク情報Ｐ４ｎに示されるように、ＰＬＣ１０−４はコントローラ間ネットワークＮｏ．１にも接続しているため、ＰＬＣ１０−４グリッドからコントローラ間ネットワークＮｏ．１グリッドにかけても配線グリッドａを配置する。このとき、ＰＬＣ１０−４グリッドと各ネットワークグリッドと各配線グリッドａの幅は同一となっている。この結果が、図１６−１に示されている。【０１２９】
つぎに、ローカル局であるＰＬＣ１０−５の処理を行う。ＰＬＣ１０−５グリッドと配線グリッドｂを、図１６−１のフィールドネットワークグリッドの左下に詰めて配置する。なお、図１１の接続ネットワーク情報Ｐ５ｎに示されるように、ＰＬＣ１０−５はコントローラ間ネットワークＮｏ．２にも接続しているため、ＰＬＣ１０−５グリッドからコントローラ間ネットワークＮｏ．２グリッドにかけても配線グリッドｂを配置する。このとき、フィールドネットワークよりも上位のネットワークグリッドは、ＰＬＣ１０−４グリッドとＰＬＣ１０−５グリッドとを包含するように、横方向の幅が伸びる。この結果が、図１６−２に示されている。フィールドネットワークに接続されるＰＬＣは以上であるので、フィールドネットワークでのＰＬＣグリッドと配線グリッドの配置処理を終了する。【０１３０】
ついで、フィールドネットワークの上位に配置されるネットワークとして情報系ネットワークＮｏ．３が選択され、この情報系ネットワークＮｏ．３に接続するＰＬＣ（ＰＬＣ１０−１，１０−２）を取得する。ここでは、まだ配置されていないＰＬＣ１０−１（接続ネットワーク情報Ｐ１ｎ、局番１）とＰＬＣ１０−２（接続ネットワーク情報Ｐ２ｎ、局番２）について、ＰＬＣグリッドの配置処理を行う。ここでは、局番の小さい順、すなわちＰＬＣ１０−１→ＰＬＣ１０−２の順で処理を行う。【０１３１】
まず、ＰＬＣ１０−１グリッドと配線グリッドｃを、図１６−２の情報系ネットワークＮｏ．３グリッドの左下に詰めて配置する。このとき既に情報系ネットワークＮｏ．３の下部にはＰＬＣ１０−４とＰＬＣ１０−５の配線グリッドａ，ｂが配置されているので、ＰＬＣ１０−５よりも右の位置にＰＬＣ１０−１グリッドと配線グリッドｃを配置する。【０１３２】
ここで、より下位に配置されているネットワークにおける局番順を配置の優先とし、より下位に配置されているＰＬＣグリッドの配置関係を分割するような配置を行わないことを条件とする。このとき同時に、より上位に配置されているネットワークへの配線も行うため、そのネットワークにおいては、既に配置されている状況によって必ずしも局番順にならない可能性がある。【０１３３】
また、図１１の接続ネットワーク情報Ｐ１ｎに示されるように、ＰＬＣ１０−１はコントローラ間ネットワークＮｏ．２，Ｎｏ．１にも接続しているため、ＰＬＣ１０−１グリッドからコントローラ間ネットワークＮｏ．２グリッドおよびコントローラ間ネットワークＮｏ．１グリッドにかけて配線グリッドｃを配置する。この結果が図１６−３に示されている。【０１３４】
つぎに局番の小さなＰＬＣ１０−２グリッドの配置処理を行う。ＰＬＣ１０−２グリッドと配線グリッドｄを、図１６−３の情報系ネットワークＮｏ．３グリッドの左下に詰めて配置する。このとき既に情報系ネットワークＮｏ．３にはＰＬＣ１０−４グリッド、ＰＬＣ１０−５グリッドおよびＰＬＣ１０−１グリッドの配線グリッドａ，ｂ，ｃが配置されている。そのため、上述した制約の下では、ＰＬＣ１０−１の右側にＰＬＣ１０−２グリッドと配線グリッドｄを配置する。なお、図１１の接続ネットワーク情報Ｐ２ｎに示されるように、ＰＬＣ１０−２はコントローラ間ネットワークＮｏ．２にも接続しているため、ＰＬＣ１０−２グリッドからコントローラ間ネットワークＮｏ．２グリッドにかけて配線グリッドｄを配置する。この結果が図１６−４に示されている。情報系ネットワークＮｏ．３に接続されるＰＬＣは以上であるので、情報系ネットワークＮｏ．３でのＰＬＣグリッドと配線グリッドの配置処理を終了する。【０１３５】
ついで、情報系ネットワークＮｏ．３の上位に配置されるネットワークとしてコントローラ間ネットワークＮｏ．２が選択されるが、このコントローラ間ネットワークＮｏ．２に接続するＰＬＣ（ＰＬＣ１０−２，１０−１，１０−５）のうち、まだ配置されていないＰＬＣはない。そのため、さらにその上位に配置されているコントローラ間ネットワークＮｏ．１が選択される。このコントローラ間ネットワークＮｏ．１に接続するＰＬＣ（ＰＬＣ１０−３，１０−１，１０−４）のうち、まだ配置されていないＰＬＣは、ＰＬＣ１０−３（接続ネットワーク情報Ｐ３ｎ）である。そこで、このＰＬＣ１０−３についてＰＬＣグリッドと配線グリッドｅの配置処理を行う。コントローラ間ネットワークの場合には、通常、管理局、通常局に関係なく、局番順に（局番の小さいＰＬＣから順に）処理を行うことができる。しかし、この例では、コントローラ間ネットワークＮｏ．１に接続され、まだ配置されていない処理対象のＰＬＣは１つであるので、ここではＰＬＣ１０−３の配置処理を行うだけである。【０１３６】
ＰＬＣ１０−３グリッドと配線グリッドｅを、図１６−４のコントローラ間ネットワークＮｏ．１グリッドの左下に詰めて配置する。このとき既にコントローラ間ネットワークＮｏ．１にはＰＬＣ１０−４，１０−１の配線グリッドａ，ｃが配置されているが、その間のグリッドが空いているので、左下に詰めて配置すると、その空いているグリッドにＰＬＣ１０−３グリッドと配線グリッドｅとが配置されることになる。この結果が、図１６−５に示されている。【０１３７】
コントローラ間ネットワークＮｏ．１に接続されるＰＬＣは以上であるので、コントローラ間ネットワークＮｏ．１でのＰＬＣグリッドと配線グリッドの配置処理を終了する。また、コントローラ間ネットワークＮｏ．１が最上位のネットワークであるので、以上でＰＬＣグリッドの配置処理を終了する。【０１３８】
（２−３）グリッドサイズ算出処理
表示オブジェクト座標算出部１１７のグリッドサイズ算出機能１１７４は、図１６−５のグリッド配置結果に対して、各グリッドのサイズを算出する。特に、ＰＬＣグリッドに対して、オンラインネットワーク構成情報保持部１１６のベース情報を用いて、ＰＬＣの表示に必要なサイズを算出する。【０１３９】
まず、グリッドサイズ算出機能１１７４は、ＰＬＣグリッドのサイズ算出を行う。このＰＬＣグリッドの算出について、どのＰＬＣから処理を開始するか順序は問わない。この例では、ＰＬＣ１０−１〜ＰＬＣ１０−５の順番にそれぞれのＰＬＣグリッドのサイズ算出を行うものとする。【０１４０】
グリッドサイズ算出機能１１７４は、図１１のオンラインネットワーク構成情報保持部１１６のＰＬＣ１０−１のベース情報Ｐ１ｂを参照して、増設ベースがないことを抽出し、グリッドの縦サイズを３０と算出する。同時に、ベース情報Ｐ１ｂからベースのスロット数が「４」であることを抽出し、グリッドの横サイズを４０と算出する。【０１４１】
ＰＬＣ１０−２についても同様に、ベース情報Ｐ２ｂから増設ベースがないことを抽出し、グリッドの縦サイズを３０と算出する。また、ベース情報Ｐ２ｂからベースのスロット数が「３」であることを抽出し、グリッドの横サイズを３０と算出する。【０１４２】
ＰＬＣ１０−３について、ベース情報Ｐ３ｂから増設ベースがあることを抽出し、グリッドの縦サイズを６０と算出する。同時に、ベース情報Ｐ３ｂからベースのスロット数が「３」、増設ベースのスロット数が「２」であることを抽出し、グリッドの横サイズをサイズの大きなベースに合わせて３０と算出する。【０１４３】
ＰＬＣ１０−４について、ベース情報Ｐ４ｂから増設ベースがないことを抽出し、グリッドの縦サイズを３０と算出する。また、ベース情報Ｐ４ｂからベースのスロット数が「４」であることを抽出し、グリッドの横サイズを４０と算出する。【０１４４】
ＰＬＣ１０−５についても同様に、ベース情報Ｐ５ｂから増設ベースがないことを抽出し、グリッドの縦サイズを３０と算出する。同時に、ベース情報Ｐ５ｂからベースのスロット数が「４」であることを抽出し、グリッドの横サイズを４０と算出する。【０１４５】
その後、縦方向（配線方向）に並ぶＰＬＣグリッド（配置の関係上、同じ横サイズを共有するＰＬＣグリッド）を抽出し、そのＰＬＣグリッドの横サイズを大きなＰＬＣグリッドの横サイズへと統一する。ここでは、横サイズが３０のＰＬＣ１０−３グリッドと横サイズが４０のＰＬＣ１０−５グリッドとが縦方向（配線方向）に並んでいるので、同じ横サイズを共有するように、ＰＬＣ１０−３グリッドの横サイズをＰＬＣ１０−５グリッドの横サイズの４０に変更する。【０１４６】
つぎに、グリッドサイズ算出機能１１７４は、配線グリッドのサイズ算出を行う。このとき、配線グリッドについて、縦サイズは固定値１０とするが、横サイズについては、それぞれの配線グリッドの下部に配置されるＰＬＣグリッドの横サイズを反映する。また、配線グリッドの横方向にＰＬＣグリッドと配線グリッドが配置される場合には、そのＰＬＣグリッドと配線グリッドの縦サイズの合計サイズの分だけ、縦方向に配線グリッドが伸ばされる。【０１４７】
そして、グリッドサイズ算出機能１１７４は、ネットワークグリッドのサイズ算出を行う。このネットワークグリッドのサイズ算出について、どのネットワークから処理を開始するか順序は問わない。この例では、上位に配置されたネットワークグリッドから順にサイズ算出を行うものとする。【０１４８】
まず、コントローラ間ネットワークＮｏ．１については、縦サイズは固定値１０とし、横サイズは、その下にＰＬＣ１０−４，１０−３，１０−１のそれぞれへの配線グリッドａ，ｅ，ｃが配置されているので、それを包含するサイズとする。つまり、ＰＬＣ１０−４グリッド、ＰＬＣ１０−３グリッドおよびＰＬＣ１０−１グリッドの横サイズはそれぞれ、４０，４０，４０であるので、コントローラ間ネットワークＮｏ．１グリッドの横サイズは１２０（＝４０＋４０＋４０）となる。【０１４９】
また、コントローラ間ネットワークＮｏ．２についても同様に、縦サイズは固定値１０とし、横サイズは、その下にＰＬＣ１０−５，１０−１，１０−２のそれぞれへの配線グリッドｂ，ｃ，ｄが配置されているので、それを包含するサイズとする。つまり、ＰＬＣ１０−５グリッド、ＰＬＣ１０−１グリッドおよびＰＬＣ１０−２グリッドの横サイズはそれぞれ、４０、４０、３０であるので、コントローラ間ネットワークＮｏ．２グリッドの横サイズは１１０（＝４０＋４０＋３０）となる。【０１５０】
さらに、情報系ネットワークＮｏ．３についても同様に、縦サイズは固定値１０とし、横サイズは、その下にＰＬＣ１０−１，１０−２のそれぞれへの配線グリッドｃ，ｄが配置されているので、それを包含するサイズとする。つまり、ＰＬＣ１０−１グリッドおよびＰＬＣ１０−２グリッドの横サイズはそれぞれ４０、３０であるので、情報系ネットワークＮｏ．３グリッドの横サイズは７０（＝４０＋３０）となる。【０１５１】
また、フィールドネットワークについても同様に、縦サイズは固定値１０とし、横のサイズは、その下にＰＬＣ１０−４，１０−５のそれぞれへの配線グリッドａ，ｂが配置されているので、それを包含するサイズとする。つまり、ＰＬＣ１０−４グリッドおよびＰＬＣ１０−５グリッドの横サイズはそれぞれ４０、４０であるので、フィールドネットワークグリッドの横サイズは８０（＝４０＋４０）となる。【０１５２】
図１７は、グリッドサイズ算出結果の一例を示す図である。この図１７は、以上の結果を図１６−５のグリッド配置結果に書込んだものである。この結果は、グリッドモデル保持機能１１７１に格納される。以上で、グリッドサイズ算出処理が終了する。【０１５３】
（２−４）グリッド座標算出処理
表示オブジェクト座標算出部１１７のグリッド座標算出機能１１７５は、グリッドモデル保持機能１１７１に格納されたグリッドサイズ算出結果を含むグリッドモデルを読出し、グリッドモデルの左上から順にグリッドサイズを加算してグリッド座標を算出する処理を行う。【０１５４】
具体的には、グリッド座標算出機能１１７５は、読み出した図１７のグリッドモデルの左上隅の座標を（０，０）とし、この座標位置に、各グリッドのサイズを加算してゆき、各グリッドの座標を算出する。図１８は、グリッド座標算出結果の一例を示す図である。この図１８は、図１７のグリッドモデルに、左上隅の座標を（０，０）として、各グリッドのサイズを加算していったものである。なお、この図において、原点から右方向をｘ軸の正方向とし、原点から下方向をｙ軸の正方向としている。【０１５５】
（システム構成表示処理）
図１９は、システム構成表示処理手順の一例を示すフローチャートである。まず、システム構成表示部１１８は、表示オブジェクト座標算出部１１７によって算出されたグリッド座標を有するグリッドモデルから、ネットワークグリッドを抽出し、それぞれのネットワークをその座標位置に基づいて表示する（ステップＳ２１１）。ここでは、表示部１１２上のシステム構成を表示する領域の所定の位置を、グリッドモデルの原点（０，０）に対応させ、その点からグリッドモデルのグリッド座標に基づいて、ネットワークを描く。ネットワークは、線で描くものとする。また、各ネットワークに対してその名称を表示する。【０１５６】
ついで、グリッドモデルからＰＬＣグリッドを抽出し、それぞれのＰＬＣグリッドをその座標位置に基づいて表示する（ステップＳ２１２）。このＰＬＣグリッドに関しては、グリッドモデルに含まれる座標情報（またはサイズ情報）に基づいて、矩形状のオブジェクトが配置されるものとする。また、このとき、各ＰＬＣのベース情報に基づいて、ベースの各スロットに装着されているユニットを区切って表示するとともに、その区切った領域内にそのユニットの名称を表示する処理も行う。【０１５７】
その後、それぞれのＰＬＣとネットワークとを接続する線、すなわち配線を表示する（ステップＳ２１３）。この処理は、オンラインネットワーク構成情報保持部１１６中のベース情報に基づいて、各ＰＬＣの通信ユニットと、この通信ユニットに接続されるネットワークとの間を、線で結ぶことによって行われる。以上によって、システム構成表示処理が終了する。そして、このシステム構成表示部１１８によって作成されたシステム構成情報が、表示部１１２に表示される。【０１５８】
図２０は、システム構成表示処理によって表示部に表示されるシステム構成情報の一例を示す図である。この図２０の例では、各ＰＬＣの通信ユニット上に、ネットワーク種別の頭文字とネットワーク番号、そのネットワークでの局番号と管理局（マスタ局）か通常局（ローカル局）かを文字列で表示することで、ネットワークパラメータの確認が容易となるようにしている。【０１５９】
また、各ＰＬＣが保持するプロジェクト情報を読み出した際に、そのステータス（稼動状況や診断情報）を読み出しておけば、それを図２０のシステム構成表示に重畳して表示することも可能である。【０１６０】
この実施の形態１によれば、実際の制御システムを構成する各ＰＬＣから収集されたネットワーク構成情報を用いて、解析可能な範囲のネットワークの接続関係やＰＬＣの配置関係を自動的にグラフィック表示するようにしたので、ネットワークのシステム構成図の図面を生成する手間を削減することができるという効果を有する。また、生産設備などの制御システムを構成するネットワークやＰＬＣのシステム構成全体を把握することが容易になるという効果を有する。さらに、ＰＬＣから必ず上方向に配線を配置するようにしたので、ＰＬＣがどのネットワークにどれだけ属しているかが容易に判別可能となり、制御システムを構成するネットワークやＰＬＣのシステム構成全体の把握やステータスを把握することも容易となるという効果を有する。【０１６１】
なお、上述した説明では、パーソナルコンピュータなどによって構成される制御システムエンジニアリング装置１００を制御システムのＰＬＣ１０に接続する形としたが、制御システムエンジニアリング装置１００の機能を、プログラマブルコントローラに接続し、制御システムの稼動状態や制御システムに対する設定を行う表示器に搭載してもよい。このようにすることで、制御システムを構成するネットワークやＰＬＣのシステム構成全体を表示器の画面上に表示することが可能である。【０１６２】
図２１は、制御システムエンジニアリング装置の機能を有する表示器のハードウェア構成を示すブロック図である。この表示器１５０は、所定の画面を表示するための表示部１５１と、タッチキーなどによる入力部１５２と、ＰＬＣ１０と通信を行うための通信ポート１５３と、当該表示器１５０で設定したデータ（すなわち表示画面プログラム）を記憶するハードディスク装置などからなる記憶部１５４と、表示部１５１に表示する処理（すなわち表示画面プログラムを実行し所定の画面を表示する処理、およびシステム構成の設定や管理の処理）を行うためのマイクロプロセッサ１５５と、その処理に伴う一時データを格納するためのデータ格納メモリ１５６と、が、表示器１５０上のバス１５７に接続されて構成される。なお、入力部１５２がタッチパネル画面となっている場合には、入力部１５２と表示部１５１とが一体となる。【０１６３】
これにより、制御システムエンジニアリング装置１００を動作させる情報処理端末を別途に用意してＰＬＣ１０に接続することなく、制御システムを構成する表示器１５０上でシステム全体の構成およびステータスを容易に把握することが可能となる。【０１６４】
実施の形態２． 
実施の形態１では、ネットワークグリッドをネットワークに付された番号順に配置し、ＰＬＣグリッドを選択したネットワーク内の局番の小さいものから順に配置していたが、この実施の形態２では、単なる番号順ではなく、制御システムを構成するネットワークやＰＬＣのシステム構成全体を把握することが容易な配置を自動的に算出して表示することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。【０１６５】
図２２−１は、この発明にかかる制御システムエンジニアリング装置のネットワークグリッド配置機能の機能構成を模式的に示すブロック図であり、図２２−２は、同じくＰＬＣグリッド配置機能の機能構成を模式的に示すブロック図である。【０１６６】
図２２−１に示されるようにネットワークグリッド配置機能１１７２は、ネットワークに接続するＰＬＣのうち、他のネットワークにも接続するＰＬＣを抽出する他ネットワーク接続ＰＬＣ抽出手段１１７２１と、フィールドネットワークに関連する度合いがより高いネットワークを下方に配置し、情報系ネットワーク２１に関連する度合いがより高いネットワークを上方に配置して、制御システムの全体構成を把握しやすい最適な配置へとソートするネットワーク種別ソート手段１１７２２と、を備える。【０１６７】
ここで、フィールドネットワークに関連する度合いとは、そのネットワークに属するＰＬＣのうち、フィールドネットワークにも属するＰＬＣの数（または割合）が多いほど、フィールドネットワークに関連する度合いが高いものとする。また、情報系ネットワークに関連する度合いとは、そのネットワークに属するＰＬＣのうち、情報系ネットワークにも属するＰＬＣの数（または割合）が多いほど、情報系ネットワークに関連する度合いが高いものとする。【０１６８】
また、図２２−２に示されるようにＰＬＣグリッド配置機能１１７３は、選択したネットワークより下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないような配置候補を抽出するＰＬＣグリッド配置候補抽出手段１１７３１と、最も近傍になり局番号の順となる最適な配置を候補から選択するＰＬＣグリッド配置候補選択手段１１７３２と、を備える。なお、その他の構成要素は実施の形態１と同一なのでその説明を省略する。【０１６９】
つぎに、この実施の形態２による処理手順について説明する。この実施の形態２の制御システムエンジニアリング処理では、オンラインネットワーク構成情報収集部１１４によって収集したネットワーク構成情報のデータ（ＰＬＣデータ）を、オンラインネットワーク構成情報保持部１１６に格納するところまでは、実施の形態１と同じである。しかし、実施の形態２では、このネットワーク構成情報のデータに対して、表示オブジェクト座標算出部１１７が、ネットワークグリッド配置処理を行う図１４−２の処理と、ＰＬＣグリッド配置処理を行う図１４−３の処理とが、実施の形態１とは異なる。そこで、以下では、ネットワークグリッド配置処理とＰＬＣグリッド配置処理について説明し、他の処理についての説明は同一であるので省略する。【０１７０】
（１）処理の概要
（１−１）ネットワークグリッド配置処理
この実施の形態２では、作成（表示）されるシステム構成情報におけるネットワーク配線の交差をなるべく少なくすることを目的としている。そのために、以下の規則Ａ〜Ｄの順でネットワークグリッドとＰＬＣグリッドの配置を優先的に行うことを特徴とするものである。【０１７１】
Ａ．制御システムを構成するネットワークやＰＬＣのシステム構成では、イーサネット（登録商標）のような情報系ネットワークと、コントローラ間ネットワークと、フィールドネットワークと、はその使用目的が明確である。つまり、情報系ネットワークはシステムの上位に位置し、コントローラ間ネットワークはシステムの中位に位置し、フィールドネットワークはシステムの下位に位置している。そのため、この実施の形態２では、このような順番でネットワークを配置する。【０１７２】
Ｂ．同じネットワークに接続するＰＬＣは、互いに近傍に配置する。特に下位ネットワークでは、１つのネットワークが１つのセルを構成していることが多いので、同じ下位ネットワークに接続するＰＬＣは、互いに近傍に配置する。ここで、セルとは、たとえば制御システムでの処理を機能ごとに分類した際のＰＬＣの固まりのことをいう。たとえば、制御システムが、塗装工程、露光工程、洗浄工程、・・・、などの各工程に分かれている場合に、これらの各工程の処理を行う一つの装置のまとまりを一つのセルという。【０１７３】
Ｃ．上位ネットワークに接続するＰＬＣは、セルコントローラの役割を果たすことが多いので、互いに近傍に配置する必要はない。【０１７４】
Ｄ．ネットワーク番号や局番号の順に配置する。【０１７５】
図２３−１は、この実施の形態２によるネットワークグリッド配置処理手順の一例を示すフローチャートである。まず、ネットワークグリッド配置機能１１７２は、オンラインネットワーク構成情報保持部１１６のネットワークデータを参照し、ネットワークを抽出する（ステップＳ２３１）。ついで、上記規則Ａにしたがって、抽出したネットワークを上から情報系ネットワーク、コントローラ間ネットワーク、フィールドネットワークの種別にソートする（ステップＳ２３２）。【０１７６】
ついで、ソートしたネットワーク種別から１つのネットワーク種別を選択する（ステップＳ２３３）。そして、他ネットワーク接続ＰＬＣ抽出手段１１７２１は、選択したネットワーク種別中のそれぞれのネットワークに接続するＰＬＣを抽出する（ステップＳ２３４）。【０１７７】
その後、ネットワーク種別ソート手段１１７２２は、各ネットワークについて、他のフィールドネットワークにも接続するＰＬＣの数を計数し、他のフィールドネットワークに接続するＰＬＣの数が多いネットワークほど下に配置する（ステップＳ２３５）。【０１７８】
ついで、ネットワーク種別ソート手段１１７２２は、各ネットワークについて、他の情報系ネットワークにも接続するＰＬＣの数を計数し、他の情報系ネットワークに接続するＰＬＣの数が多いネットワークほど上に配置する（ステップＳ２３６）。【０１７９】
最後に、ネットワーク種別ソート手段１１７２２は、各ネットワークについて、他のコントローラ間ネットワークにも接続するＰＬＣの数を計数し、他のコントローラ間ネットワークに接続するＰＬＣの数が多いネットワークほど上に配置する（ステップＳ２３７）。以上のように、１つのネットワーク種別における各ネットワーク間のソート処理が実行される。【０１８０】
その後、選択されていない他のネットワーク種別が存在するか否かを判定する（ステップＳ２３８）。選択されていない他のネットワーク種別が存在する場合（ステップＳ２３８でＹｅｓの場合）には、ステップＳ２３３へと戻り、選択されていない他のネットワーク種別がなくなるまで、上述した処理が繰り返し実行される。【０１８１】
また、選択されていない他のネットワーク種別が存在しない場合（ステップＳ２３８でＮｏの場合）には、ネットワークグリッド配置機能１１７２は、ソートが完了した順にネットワークグリッドを配置し（ステップＳ２３９）、その結果をグリッドモデル保持機能１１７１に格納し、ネットワークグリッド配置処理が終了する。【０１８２】
（１−２）ＰＬＣグリッド配置処理
図２３−２〜図２３−３は、この実施の形態２によるＰＬＣグリッド配置処理手順の一例を示すフローチャートである。ＰＬＣグリッド配置機能１１７３は、オンラインネットワーク構成情報保持部１１６のベース情報からＰＬＣを抽出する（ステップＳ２５１）。ついで、図２３−１のネットワークグリッド配置処理で最も下位に配置されるネットワークを選択する（ステップＳ２５２）。その後、選択したネットワークに接続されるＰＬＣを選択し（ステップＳ２５３）、この中から局番の最も小さいＰＬＣを選択する（ステップＳ２５４）。【０１８３】
ＰＬＣグリッド配置機能１１７３は、選択したネットワークに接続するＰＬＣが既に配置されているか否かを判定する（ステップＳ２５５）。そのネットワークに接続するＰＬＣが既に配置されていない場合（ステップＳ２５５でＮｏの場合）には、ＰＬＣグリッド配置候補選択手段１１７３２は、抽出したＰＬＣに関して、そのネットワークの左下のグリッドから順に詰めて配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２６０）。【０１８４】
また、ステップＳ２５５で、そのネットワークに接続するＰＬＣが既に配置されている場合（ステップＳ２５５でＹｅｓの場合）には、ＰＬＣグリッド配置候補抽出手段１１７３１は、そのネットワークよりも下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないような配置候補を抽出できるかを判定する（ステップＳ２５６）。【０１８５】
そのネットワークよりも下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないような配置候補を抽出できない場合（ステップＳ２５６でＮｏの場合）には、ＰＬＣグリッド配置候補選択手段１１７３２は、そのネットワークの左下のグリッドから順に詰めて配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２６０）。【０１８６】
また、ステップＳ２５６で、そのネットワークよりも下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないような配置候補を抽出できる場合（ステップＳ２５６でＹｅｓの場合）には、ＰＬＣグリッド配置候補抽出手段１１７３１は、その候補の中から、そのネットワークに既に配置されているＰＬＣと最も近傍になる配置候補を抽出できるかを判定する（ステップＳ２５７）。【０１８７】
そのネットワークの既に配置されているＰＬＣと最も近傍になる配置候補を抽出できない場合（ステップＳ２５７でＮｏの場合）には、ＰＬＣグリッド配置候補選択手段１１７３２は、そのネットワークの左下のグリッドから順に詰めて配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２６０）。【０１８８】
また、ステップＳ２５７で、そのネットワークの既に配置されているＰＬＣと最も近傍になる配置候補を抽出できる場合（ステップＳ２５７でＹｅｓの場合）には、ＰＬＣグリッド配置候補抽出手段１１７３１は、その配置候補の中から、そのネットワークに既に配置されているＰＬＣと最も局番号の順となる配置候補を抽出できるかを判定する（ステップＳ２５８）。【０１８９】
そのネットワークに既に配置されているＰＬＣと最も局番号の順となる配置候補を抽出できない場合（ステップＳ２５８でＮｏの場合）には、ＰＬＣグリッド配置候補選択手段１１７３２は、そのネットワークの左下のグリッドから順に詰めて配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２６０）。【０１９０】
また、ステップＳ２５８で、そのネットワークに既に配置されているＰＬＣと最も局番号の順となる配置候補を抽出できる場合（ステップＳ２５８でＹｅｓの場合）には、その配置候補を選択し、ＰＬＣグリッド配置候補選択手段１１７３２は、その配置候補に配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２５９）。【０１９１】
その後またはステップＳ２６０の後、ステップＳ２５２で選択したネットワークに接続するＰＬＣのうち他のＰＬＣが存在するか否かを判定する（ステップＳ２６１）。他のＰＬＣが存在する場合（ステップＳ２６１でＹｅｓの場合）には、つぎに局番の小さなＰＬＣを選択し（ステップＳ２６２）、ステップＳ２５５へと戻って、ステップＳ２５２で選択したネットワークに接続するＰＬＣがなくなるまで、同じ処理が繰り返し行われる。【０１９２】
また、ステップＳ２６１で他のＰＬＣが存在しない場合（ステップＳ２６１でＮｏの場合）には、他のネットワークが存在するか否かを判定する（ステップＳ２６３）。他のネットワークが存在する場合（ステップＳ２６３でＹｅｓの場合）には、ネットワークグリッド配置処理で、つぎに下位に配置されるネットワークを選択し（ステップＳ２６４）、ステップＳ２５３へと戻り、最も上位に配置されるネットワークについてＰＬＣグリッドと配線グリッドを配置するまで上述した処理が繰り返し実行される。また、他のネットワークが存在しない場合（ステップＳ２６３でＮｏの場合）には、ＰＬＣグリッドと配線グリッドの配置結果をグリッドモデル保持機能１１７１に格納し（ステップＳ２６５）、ＰＬＣグリッド配置処理が終了する。【０１９３】
（２）処理の具体例
上述した説明では、ネットワークグリッドとＰＬＣグリッドの配置処理の概要を述べたものであるので、この処理の具体例を図１の構成を有する制御システムの場合を例に挙げて以下に説明する。なお、ここでは、図１０の接続経路情報と図１１のネットワーク構成情報とを用いて、グリッドの配置処理を行うものとする。【０１９４】
（２−１）ネットワークグリッド配置処理
まず、オンラインネットワーク構成情報保持部１１６に格納される図１１のネットワーク構成情報から、データ種別が「ネットワーク」となっているコントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２、フィールドネットワーク、情報系ネットワークＮｏ．３のネットワークデータＭ１，Ｍ２，Ｃ，Ｅ３を抽出する。【０１９５】
ついで、上述した規則によって、抽出したネットワークをネットワーク種別にソートする。つまり、情報系ネットワークＮｏ．３、コントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２およびフィールドネットワークの順にソートされる。なお、コントローラ間ネットワークのみ、コントローラ間ネットワークＮｏ．１とコントローラ間ネットワークＮｏ．２の２つのネットワークが存在するので、ここではネットワーク番号順にソートし、その後、このコントローラ間ネットワークの順番をさらにソートする。【０１９６】
まず、他ネットワーク接続ＰＬＣ抽出手段１１７２１は、オンラインネットワーク構成情報保持部１１６のネットワークデータＭ１を参照して、コントローラ間ネットワークＮｏ．１に接続するＰＬＣを抽出する。この結果、ＰＬＣ１０−３，１０−１，１０−４を得る。同様に、コントローラ間ネットワークＮｏ．２に接続するＰＬＣを抽出し、その結果、ＰＬＣ１０−２，１０−１，１０−５を得る。【０１９７】
ここで、抽出したＰＬＣのうち他のフィールドネットワークにも接続するＰＬＣの数を計数する。抽出したＰＬＣのうち、フィールドネットワークにも接続するＰＬＣは、ＰＬＣ１０−４，１０−５である。そのため、他のフィールドネットワークにも接続するＰＬＣの数は、コントローラ間ネットワークＮｏ．１に関しては、ＰＬＣ１０−４の１個であり、コントローラ間ネットワークＮｏ．２に関しては、ＰＬＣ１０−５の１個である。ネットワーク種別ソート手段１１７２２は、他のフィールドネットワーク２３にも接続するＰＬＣの数が多いネットワークを下にソートするが、この基準では、両者ともに同じ数であるので、コントローラ間ネットワークＮｏ．１とコントローラ間ネットワークＮｏ．２とはソートできない。【０１９８】
つぎに、抽出したＰＬＣのうち他の情報系ネットワークにも接続するＰＬＣの数を計数する。抽出したＰＬＣのうち、情報系ネットワークにも接続するＰＬＣは、ＰＬＣ１０−１，１０−２である。そのため、他の情報系ネットワークにも接続するＰＬＣの数は、コントローラ間ネットワークＮｏ．１に関しては、ＰＬＣ１０−１の１個であり、コントローラ間ネットワークＮｏ．２に関しては、ＰＬＣ１０−１，１０−２の２個である。これより、ネットワーク種別ソート手段１１７２２は、他の情報系ネットワークにも接続するＰＬＣの数が多いネットワークを上にソートするが、この基準によって、コントローラ間ネットワークＮｏ．２をコントローラ間ネットワークＮｏ．１よりも上にソートする。【０１９９】
以上によって、ソートが完了したので、ここでは他のコントローラ間ネットワークに接続するＰＬＣの数でソートする必要はない。【０２００】
その後、ネットワークグリッド配置機能１１７２は、ソートが完了した順にネットワークグリッドを配置し、グリッドモデル保持機能１１７１に格納する。図２４は、この実施の形態２によるネットワークグリッド配置処理の結果を示す図である。【０２０１】
（２−２）ＰＬＣグリッド配置処理
図２５−１〜図２５−５は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である。以下、これらの図２５−１〜図２５−５を参照しながら、ＰＬＣグリッドの配置処理について説明する。【０２０２】
まず、表示オブジェクト座標算出部１１７のＰＬＣグリッド配置機能１１７３は、図１１のオンラインネットワーク構成情報保持部１１６からデータ種別が「ＰＬＣネットワーク」となっている接続ネットワーク情報Ｐ３ｎ、Ｐ１ｎ、Ｐ４ｎ、Ｐ２ｎ、Ｐ５ｎを抽出する。【０２０３】
ついで、抽出した接続ネットワーク情報から、図２４で最下位に配置されているネットワークであるフィールドネットワークに接続するＰＬＣを取得する。ここでは、ＰＬＣ１０−４（接続ネットワーク情報Ｐ４ｎ）とＰＬＣ１０−５（接続ネットワーク情報Ｐ５ｎ）が取得される。これらのＰＬＣ１０−４（マスタ局）とＰＬＣ１０−５（ローカル局１）のうち、局番の小さなＰＬＣから処理を行うが、ここでは、フィールドネットワークであるため、マスタ局を先ず処理し、つぎにローカル局の局番順に処理を行う。そのため、ＰＬＣ１０−４→ＰＬＣ１０−５の順で処理を行う。【０２０４】
ＰＬＣ１０−４グリッドと配線グリッドａを、図２４のフィールドネットワークグリッドの左下に詰めて配置する。なお、図１１の接続ネットワーク情報Ｐ４ｎに示されるように、ＰＬＣ１０−４はコントローラ間ネットワークＮｏ．１にも接続しているため、ＰＬＣ１０−４グリッドからコントローラ間ネットワークＮｏ．１グリッドにかけて配線グリッドａを配置する。このとき、ＰＬＣ１０−４グリッドと各ネットワークグリッドと各配線グリッドの幅は同一となっている。この結果が、図２５−１に示されている。【０２０５】
つぎに、ローカル局であるＰＬＣ１０−５の処理を行う。ＰＬＣ１０−５グリッドと配線グリッドｂを、図２５−１のフィールドネットワークグリッドの左下に詰めて配置する。このとき、既にフィールドネットワークグリッドにはＰＬＣ１０−４の配線グリッドａが配置されており、そのネットワークより下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないようなＰＬＣ１０−５の配置候補としては『ＰＬＣ１０−４の左』と『ＰＬＣ１０−４の右』である。いずれもフィールドネットワークに接続しているＰＬＣ１０−４に最も近傍となる配置候補である。そして、この中で局番号の順となるのは、ＰＬＣ１０−４がマスタ局であり、ＰＬＣ１０−５がローカル局の局番１であるので、『ＰＬＣ１０−４の右』である。よって、この位置にＰＬＣ１０−５グリッドと配線グリッドｂを配置する。【０２０６】
なお、図１１の接続ネットワーク情報に示されるように、ＰＬＣ１０−５はコントローラ間ネットワークＮｏ．２にも接続しているため、ＰＬＣ１０−５グリッドからコントローラ間ネットワークＮｏ．２グリッドにかけても配線グリッドｂを配置する。このとき、フィールドネットワークよりも上位のネットワークグリッドは、ＰＬＣ１０−４グリッドとＰＬＣ１０−５グリッドとを包含するように、横方向の幅が伸びる。この結果が、図２５−２に示されている。フィールドネットワークに接続されるＰＬＣは以上であるので、フィールドネットワーク２３でのＰＬＣグリッドと配線グリッドの配置処理を終了する。【０２０７】
ついで、図２４（図２５−２）からフィールドネットワークの上位に配置されるネットワークとしてコントローラ間ネットワークＮｏ．１が選択される。コントローラ間ネットワークＮｏ．１に接続するＰＬＣは、ＰＬＣ１０−１（局番２）、ＰＬＣ１０−３（局番１）、ＰＬＣ１０−４（局番３）であるが、これらのうち、まだ配置されていないのは、ＰＬＣ１０−１とＰＬＣ１０−３である。そこで、これらのＰＬＣ１０−１，１０−３について、ＰＬＣグリッドの配置処理を行う。ここでは、局番の小さい順、すなわちＰＬＣ１０−３→ＰＬＣ１０−１の順で処理を行う。【０２０８】
まず、ＰＬＣ１０−３グリッドと配線グリッドｃを、図２５−２のコントローラ間ネットワークＮｏ．１グリッドの左下に詰めて配置する。このとき既にコントローラ間ネットワークＮｏ．１にはＰＬＣ１０−４，１０−５の配線グリッドａ，ｂが配置されており、そのネットワークより下位のネットワーク（フィールドネットワーク）に既に配置されているＰＬＣ１０−４グリッドとＰＬＣ１０−５グリッドの配置関係を分断しないようなＰＬＣ１０−３の配置候補としては、『ＰＬＣ１０−４の左』と『ＰＬＣ１０−５の右』である。この中でコントローラ間ネットワークＮｏ．１に接続しているＰＬＣ１０−４に最も近傍となるのは『ＰＬＣ１０−４の左』である。よって、この位置にＰＬＣ１０−３グリッドと配線グリッドｃを配置する。この結果が、図２５−３に示されている。【０２０９】
ついで、つぎに局番の大きなＰＬＣ１０−１グリッドの配置処理を行う。ＰＬＣ１０−１グリッドと配線グリッドｄを、図２５−３のコントローラ間ネットワークＮｏ．１グリッドの左下に詰めて配置する。このとき既にコントローラ間ネットワークＮｏ．１にはＰＬＣ１０−３，１０−４，１０−５の配線グリッドｃ，ａ，ｂが配置されており、そのネットワークより下位のネットワーク（フィールドネットワーク）に既に配置されているＰＬＣ１０−４グリッドとＰＬＣ１０−５グリッドの配置関係を分断しないようなＰＬＣ１０−１の配置候補としては、『ＰＬＣ１０−３の左』、『ＰＬＣ１０−３の右（＝ＰＬＣ１０−４の左）』、『ＰＬＣ１０−５の右』である。この中でコントローラ間ネットワークＮｏ．１に接続しているＰＬＣ１０−３，１０−４に最も近傍になり、またコントローラ間ネットワークＮｏ．１に既に配置されているＰＬＣ１０−３（局番１）とＰＬＣ１０−４（局番３）と最もよい番号順の配置になるのは『ＰＬＣ１０−３の右』である。よって、この位置にＰＬＣ１０−１グリッドと配線グリッドｄを配置する。【０２１０】
なお、図１１の接続ネットワーク情報Ｐ１ｎに示されるように、ＰＬＣ１０−１はコントローラ間ネットワークＮｏ．２と情報系ネットワークＮｏ．３にも接続しているため、ＰＬＣ１０−１グリッドからコントローラ間ネットワークＮｏ．２グリッドと情報系ネットワークＮｏ．３グリッドにかけても配線グリッドｄを配置する。この結果が図２５−４に示されている。コントローラ間ネットワークＮｏ．１グリッドに接続されるＰＬＣは以上であるので、コントローラ間ネットワークＮｏ．１でのＰＬＣグリッドと配線グリッドの配置処理を終了する。【０２１１】
ついで、図２４（図２５−４）からコントローラ間ネットワークＮｏ．１の上位に配置されるネットワークとしてコントローラ間ネットワークＮｏ．２が選択される。コントローラ間ネットワークＮｏ．２に接続するＰＬＣは、ＰＬＣ１０−１（局番２）、ＰＬＣ１０−２（局番１）、ＰＬＣ１０−５（局番３）であるが、これらうち、まだ配置されていないのは、ＰＬＣ１０−２である。そこで、このＰＬＣ１０−２についてＰＬＣグリッドと配線グリッドの配置処理を行う。ここで、配置されていないＰＬＣが複数ある場合には、局番の小さいＰＬＣから処理を行う。また、コントローラ間ネットワークの場合には、管理局、通常局に関係なく、局番順に処理を行う。【０２１２】
ＰＬＣ１０−２グリッドと配線グリッドｅを、図２５−４のコントローラ間ネットワークＮｏ．２グリッドの左下に詰めて配置する。このとき既にコントローラ間ネットワークＮｏ．２にはＰＬＣ１０−１，１０−５の配線グリッドｄ，ｂが配置されており、そのネットワークより下位のネットワーク（コントローラ間ネットワークＮｏ．１とフィールドネットワーク）に既に配置されているＰＬＣ１０−３，１０−１，１０−４，１０−５の配置関係を分断しないようなＰＬＣ１０−２の配置候補としては、『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−１につながる配線ｄの左の空きグリッド』、『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−１につながる配線ｄとＰＬＣ１０−５につながる配線ｂの間の空きグリッド』、『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−５につながる配線ｂの右』である。この中でコントローラ間ネットワークＮｏ．２に接続しているＰＬＣ１０−１に最も近傍となるのは『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−１につながる配線ｄとＰＬＣ１０−５につながる配線ｂの間の空きグリッド』である。なお、ここでは、上記の候補の中からコントローラ間ネットワークＮｏ．２に既に配置されているＰＬＣ１０−１（局番２）とＰＬＣ１０−５（局番３）に対して、最も局番号の順になる配置候補を抽出できないために、上記の『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−１につながる配線ｄとＰＬＣ１０−５につながる配線ｂの間の空きグリッド』が選択される。よって、この位置にＰＬＣ１０−２グリッドと配線グリッドｅを配置する。この結果が、図２５−５に示されている。【０２１３】
その後、図２４（図２５−５）からコントローラ間ネットワークＮｏ．２の上位に配置されるネットワークとして情報系ネットワークＮｏ．３が選択されるが、この情報系ネットワークＮｏ．３に接続するＰＬＣ１０−１，１０−２のうち、まだ配置されていないＰＬＣはない。そして、この情報系ネットワーク２１が最上位のネットワークであるので、ＰＬＣグリッド配置処理が終了する。【０２１４】
この後、実施の形態１で説明したように、図２５−５の結果に対して、グリッドサイズ算出機能１１７４によって各グリッドのサイズ（特に、ＰＬＣグリッドに対して、ＰＬＣのベース情報からＰＬＣの表示に必要なサイズ）を算出するグリッドサイズ算出処理を行い、左上から順にグリッドサイズを加算してグリッド座標を算出するグリッド座標算出処理を行う。図２６は、図２５−５の結果に対して、グリッドサイズとグリッド座標を算出した結果を示す図である。【０２１５】
そして、システム構成表示部１１８が、上記の結果得られるグリッド座標が付加されたグリッドモデルを読み込んで、表示部１１２にシステム構成情報を表示する。図２７は、システム構成表示処理によって表示されるシステム構成情報の一例を示す図である。この表示画面では、人手によって作成される制御システムのネットワーク構成図に近い状態で表示されるため、つまり、情報系ネットワークを上位に表示し、コントロール間ネットワークを中位に表示し、フィールドネットワークを下位に表示するため、使用者はネットワーク構成から制御システムの構成を実施の形態１の場合に比較して把握しやすくなるという効果を有する。【０２１６】
この実施の形態２によれば、収集されたネットワーク構成情報を、使用者が把握しやすいネットワークの順序で表示するようにしたので、制御システムを構成するネットワークやＰＬＣのシステム構成全体を把握することが容易となるという効果を有する。【０２１７】
図２８は、制御システムの他の構成例を示す図である。この図２８は、実施の形態１の制御システムを構成するネットワークやＰＬＣのシステム構成全体の例を示す図１に比較して、多数のＰＬＣによって複雑に制御システムが構成されている。この図２８のような制御システムのシステム構成情報を、実施の形態１の方法で表示する場合と、実施の形態２の方法で表示する場合とで比較する。【０２１８】
図２９は、図２８の制御システムを実施の形態１の方法で表示したシステム構成を示す図である。また、図３０は、図２８の制御システムについて実施の形態２の方法で作成したグリッドモデルを示す図であり、図３１は、図３０のグリッドモデルに基づいて表示される図２８の制御システムのシステム構成を示す図である。【０２１９】
実施の形態１の方法によって表示される図２９のシステム構成の表示画面よりも、実施の形態２の方法によって表示される図３１のシステム構成の表示画面の方が、制御システムの上位情報系を構成するネットワークが画面の上方に表示され、システムの下位フィールド系を構成するネットワークが下方に表示され、かつ、同じネットワークに接続するＰＬＣがまとまって表示されるので、分かりやすい。つまり、実施の形態１の方法によって表示される図２９のシステム構成の表示画面よりも、実施の形態２の方法によって表示される図３１の方が、使用者が分かりやすく手で描いた図２８のシステム構成図により近い表現となっている。すなわち、この実施の形態２によれば、人間が分かりやすく手で描いたシステム構成図により近い表現のシステム構成情報を、自動的に表示することが可能となる。【０２２０】
実施の形態３．
この実施の形態３では、実施の形態１，２において、どの経路を通って目的とするＰＬＣへ接続したのかについて、具体的な接続経路を表示することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。なお、以下の説明では、実施の形態１の結果を用いて説明する。【０２２１】
図３２は、この発明にかかる制御システムエンジニアリング装置の実施の形態３の機能構成を模的に示すブロック図である。この制御システムエンジニアリング装置１００は、実施の形態１の図３において、表示オブジェクト座標算出部１１７によって算出された座標を含むデータと、オンライン接続経路保持部１１５で保持されている接続経路と、から、起点ＰＬＣから目的とするＰＬＣまでの接続経路を表示部１１２に表示する接続経路表示部１２０をさらに備える。この接続経路表示部１２０は、請求の範囲における接続経路表示手段に対応している。なお、実施の形態１と同一の構成要素には同一の符号を付して、その説明を省略している。【０２２２】
つぎに、このような構成を有する制御システムエンジニアリング装置１００における起点ＰＬＣから対象となるＰＬＣまでの接続経路の表示処理について説明する。図３３は、接続経路表示処理手順の一例を示すフローチャートである。また、図３４−１〜図３４−５は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である。なお、この処理は、実施の形態１，２において、システム構成情報の表示処理が行われている状態で実施されるものである。【０２２３】
まず、接続経路表示部１２０は、起点ＰＬＣのオブジェクトの表示部１１２上の位置を表示オブジェクト座標算出部１１７から取得し、起点ＰＬＣのオブジェクト全体を強調表示する（ステップＳ２７１、図３４−１）。【０２２４】
ついで、オンライン接続経路保持部１１５に格納される接続経路から指定されたまたは１つの接続経路情報を選択する（ステップＳ２７２）。選択した接続経路情報中の起点ＰＬＣからデータ１に記載されるネットワークへの配線を選択する（ステップＳ２７３）。そして、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２７４、図３４−２）。【０２２５】
その後、接続経路表示部１２０は、接続経路情報中のデータ１に記載されるネットワークと、データ２に記載されるＰＬＣとを結ぶ配線を選択する（ステップＳ２７５）。そして、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２７６、図３４−３）。【０２２６】
ついで、接続経路表示部１２０は、強調描画された２つの配線間のネットワーク部分を強調描画する（ステップＳ２７７、図３４−４）。その後、データ２に記載されるＰＬＣが、接続経路情報の名称のＰＬＣ（終点ＰＬＣ）であるか否かを判定する（ステップＳ２７８）。【０２２７】
データ２に記載されるＰＬＣが終点ＰＬＣでない場合（ステップＳ２７８でＮｏの場合）には、接続経路表示部１２０は、ｎ＝１、ｍ＝２を設定し（ステップＳ２７９）、接続経路情報中のデータ２ｎに記載されるＰＬＣと、データ２ｎ＋１に記載されるネットワークとを結ぶ配線を選択する（ステップＳ２８０）。その後、この配線に対する表示部１１２上での位置を表示オブジェクト座標演算部から取得し、強調描画する（ステップＳ２８１）。【０２２８】
ついで、接続経路表示部１２０は、接続経路情報中のデータ２ｍ−１に記載されるネットワークと、２ｍに記載されるＰＬＣとを結ぶ配線を選択する（ステップＳ２８２）。その後、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２８３）。そして、接続経路表示部１２０は、強調描画された２つの配線間のネットワーク部分を強調描画する（ステップＳ２８４）。【０２２９】
その後、データ２ｍに記載されるＰＬＣが、接続経路情報の名称のＰＬＣ（終点ＰＬＣ）であるか否かを判定する（ステップＳ２８５）。データ２ｍに記載されるＰＬＣが終点ＰＬＣでない場合（ステップＳ２８５でＮｏの場合）には、接続経路表示部１２０は、ｎ＝ｎ＋１、ｍ＝ｍ＋１に設定した後（ステップＳ２８６）、ステップＳ２８０へと戻り、上述した処理が繰り返し実行される。【０２３０】
また、ステップＳ２７８で、データ２に記載されるＰＬＣが終点ＰＬＣである場合（ステップＳ２７８でＹｅｓの場合）、またはステップＳ２８５で、データ２ｍに記載されるＰＬＣが終点ＰＬＣである場合（ステップＳ２８５でＹｅｓの場合）には、起点ＰＬＣと目的とする終点ＰＬＣまでの間の接続経路の表示処理が終了する（図３４−５）。【０２３１】
この実施の形態３によれば、制御システムを構成するネットワークにおいて、起点ＰＬＣから終点ＰＬＣまでの接続経路を容易に確認することができるという効果を有する。【０２３２】
実施の形態４．
実施の形態１〜３では、実際の制御システムを構成するＰＬＣに制御システムエンジニアリング装置を接続し、そのＰＬＣを介してオンラインで制御システムのネットワーク構成やＰＬＣのシステム構成の情報を得て、システム構成情報を表示していた。これに対し、この実施の形態４では、オフラインで編集されたシステム構成図に対して、到達可能なＰＬＣを判定することを可能にし、さらには、複数の接続経路が存在する際には通信スループットを参照して最適な経路を自動的に選択することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。【０２３３】
図３５は、この発明にかかる制御システムエンジニアリング装置の実施の形態４の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、通信部１１１と、表示部１１２と、起点ＰＬＣ指定部１１３と、システム構成編集部１２１と、オフラインネットワーク構成情報保持部１２２と、接続経路解析選択部１２３と、スループットモデル保持部１２４と、オフライン接続経路保持部１２５と、表示オブジェクト座標算出部１１７と、システム構成表示部１１８と、接続経路表示部１２０と、これらの各処理部を制御する制御部１１９と、を備える。【０２３４】
システム構成編集部１２１は、当該制御システムエンジニアリング装置１００上で、オフラインで生産設備などの制御システムを構成するネットワークやＰＬＣのシステム構成全体を設定する画面を使用者に対して提供するとともに、使用者によって設定された内容を管理する。このシステム構成編集部１２１は、請求の範囲におけるシステム構成編集手段に対応している。【０２３５】
オフラインネットワーク構成情報保持部１２２は、使用者によってシステム構成編集部１２１から直接に設定された、制御システムを構成するＰＬＣのネットワークとの接続状態を示す接続ネットワーク情報や、ＰＬＣのシステム構成（ベース上に装着されているユニットの構成）を示すベース情報を含むネットワーク構成情報を保持する。このオフラインネットワーク構成情報保持部１２２に保持される接続ネットワーク情報やネットワーク構成情報を含むネットワーク構成情報は、当該制御システムエンジニアリング装置１００が自動的にシステム構成情報をオンラインで収集し、ネットワーク情報を作成するのではなく、既存の制御システムについてのシステム構成情報やネットワーク情報を使用者が制御システムエンジニアリング装置１００に直接入力して（オフラインで）得られるので、以下では、オフラインネットワーク構成情報ともいう。このオフラインネットワーク構成情報保持部１２２は、請求の範囲におけるオフラインネットワーク構成情報保持手段に対応している。【０２３６】
接続経路解析選択部１２３は、起点ＰＬＣ指定部１１３で設定されたＰＬＣを起点として、システム構成編集部１２１によって設定されたネットワーク構成におけるそれぞれのＰＬＣへの接続経路を解析する。また、複数の接続経路が存在する場合には、スループットモデル保持部１２４のネットワーク通信スループットデータベースを参照して、最適な方の経路を選択する機能も有する。この接続経路解析選択部１２３は、請求の範囲における接続経路解析選択手段に対応している。【０２３７】
スループットモデル保持部１２４は、制御システムの各接続経路における通信スループットを算出する際のスループットモデルをデータベースとして保持する。このスループットモデル保持部１２４は、請求の範囲におけるスループットモデル保持手段に対応している。【０２３８】
オフライン接続経路保持部１２５は、接続経路解析選択部１２３にて解析および選択された、それぞれのＰＬＣへの接続経路（以下、オフライン接続経路ともいう）を保持する。このオフライン接続経路は、実施の形態１の図１０の接続経路情報のデータ構成に、スループット評価値をさらに含むことを特徴とする。このオフライン接続経路保持部１２５は、請求の範囲におけるオフライン接続経路保持手段に対応している。【０２３９】
なお、実施の形態１〜３と同一の構成要素には同一の符号を付して、その説明を省略している。ただし、この実施の形態４では、表示オブジェクト座標算出部１１７は、オフラインネットワーク構成情報保持部１２２で保持されるネットワーク構成情報を用いて、表示部１１２に表示する表示オブジェクトの座標を算出する。【０２４０】
つぎに、このような構成を有する制御システムエンジニアリング装置１００での、オフラインでの制御システム構成処理からオフラインでの接続経路表示処理について順に説明する。【０２４１】
（オフラインでの制御システム構成処理）
システム構成編集部１２１では、グラフィカルユーザインタフェースでのドラッグアンドドロップやウィザードによって、使用者によって入力される制御システムを構成するネットワークやＰＬＣのシステム構成全体を設定する。【０２４２】
システム構成編集部１２１で設定されたシステム構成データ（以下、オフラインネットワーク構成情報という）は、オフラインネットワーク構成情報保持部１２２で保持される。このデータ形式は、実施の形態１で説明したオンラインネットワーク構成情報保持部１１６によって保持されるネットワーク構成情報と同じである。たとえば、１つの要素（ネットワークまたはＰＬＣ）を追加する操作を行うと、その要素のデータが、オフラインネットワーク構成情報保持部１２２で保持されるオフラインネットワーク構成情報に追加される。続けて、要素のデータが追加された後のシステム構成データ全体に対して表示オブジェクト座標算出部１１７が座標を算出する処理を行って、システム構成を表示部１１２に表示する。したがって、同じシステム構成を表現する場合には、データ追加の操作の順序によって、生成されるデータの順番が異なるが、データの内容（データの意味するところ）は同じものとなる。【０２４３】
なお、この実施の形態４では、実施の形態１の図１と同じ制御システムの構成を、以下の手順によってオフラインで構築したものとする。まず、ＰＬＣ１０−３を追加し、ついで、コントローラ間ネットワークＮｏ．１（２２Ａ）を追加した後に、ＰＬＣ１０−１とＰＬＣ１０−４を順に追加する。その後、コントローラ間ネットワークＮｏ．２（２２Ｂ）を追加し、ＰＬＣ１０−２とＰＬＣ１０−５を順に追加する。そして、フィールドネットワーク（２３）を追加した後、情報系ネットワークＮｏ．３（２１）を追加する。【０２４４】
その結果として、オフラインネットワーク構成情報保持部１２２で保持されるオフラインネットワーク構成情報のデータの内容は図１１と同じとなり、システム構成の表示も図２０（実施の形態２の方法を用いれば、図２７）と同じになる。以下では、図１１や図２７のような表示部１１２に表示されるシステム構成の画面を、システム構成図ということにする。【０２４５】
（オフライン接続経路解析処理）
（１）処理の概要
オフラインで編集されたシステム構成図に対して、起点となるＰＬＣ（制御システムエンジニアリング装置１００をどのＰＬＣに接続するか）を、起点ＰＬＣ指定部１１３を用いて指定する。その後、接続経路解析選択部１２３は、起点ＰＬＣ指定部１１３で設定されたＰＬＣを起点として、システム構成編集部１２１によって設定されたネットワーク構成におけるそれぞれのＰＬＣへの接続経路を解析する。以下に、この処理の詳細について説明する。【０２４６】
図３６−１〜図３６−３は、オフライン接続経路解析処理手順の一例を示すフローチャートである。まず、起点ＰＬＣ指定部１１３によって当該制御システムエンジニアリング装置１００を接続する接続先ＰＬＣ（起点ＰＬＣ）が指定されると（ステップＳ３１１）、接続経路解析選択部１２３は、指定された起点ＰＬＣまでの接続経路を出力する（ステップＳ３１２）。ついで、指定された起点ＰＬＣを処理対象のＰＬＣとして選択し（ステップＳ３１３）、この選択したＰＬＣに対して、図３６−２に示されるＢ１処理を実行し（ステップＳ３１４）、オフライン接続経路解析処理が終了する。【０２４７】
図３６−２は、ステップＳ３１４におけるＢ１処理の手順を示すフローチャートである。まず、接続経路解析選択部１２３は、処理の対象となるＰＬＣが接続しているネットワークを収集する（ステップＳ３３１）。より具体的には、処理の対象となるＰＬＣの接続ネットワーク情報をオフラインネットワーク構成情報保持部１２２から収集する。ついで、情報収集されたそれぞれのネットワークへの接続経路はループを構成するか否かを判定する（ステップＳ３３２）。ここで、ループか否かの判定は、接続経路で同じ要素が複数含まれる場合にはループであると判定し、それ以外の場合にはループでないと判定する。【０２４８】
接続経路がループでない場合（ステップＳ３３２でＮｏの場合）には、図１２の制約の下、ネットワークをさらに情報収集できるか否かを判定する（ステップＳ３３３）。ネットワークをさらに情報収集できる場合（ステップＳ３３３でＹｅｓの場合）には、そのネットワークを処理の対象ネットワークとして選択し（ステップＳ３３４）、図３６−３に示されるＢ２処理を実行する（ステップＳ３３５）。また、ステップＳ３３３で、図１２の制約に該当し、ネットワークをさらに情報収集できない場合（ステップＳ３３３でＮｏの場合）またはステップＳ３３２で、接続経路がループである場合（ステップＳ３３２でＹｅｓの場合）には、Ｂ１処理を終了し、図３５の処理に戻る。【０２４９】
図３６−３は、図３６−２のステップＳ３３５におけるＢ２処理の手順の一例を示すフローチャートである。このＢ２処理では、接続経路解析選択部１２３は、まず、処理の対象となるネットワークに接続しているＰＬＣを収集する（ステップＳ３５１）。具体的には、処理の対象となるネットワークのネットワーク情報をオフラインネットワーク構成情報保持部１２２から取得し、このネットワーク情報から処理対象のネットワークに接続されるＰＬＣを収集する。ついで、情報収集されたそれぞれのＰＬＣまでの接続経路はループを構成しているか否かを判定する（ステップＳ３５２）。【０２５０】
接続経路がループを構成していない場合（ステップＳ３５２でＮｏの場合）には、最適な接続経路か否かを判定する（ステップＳ３５３）。最適な接続経路か否かの判定は、複数の接続経路が存在する場合に、スループットモデル保持部１２４が保持する通信スループット情報を参照して、通信スループットのよい接続経路であるか否かを判定することによって行われる。その結果、最適な接続経路でない場合（ステップＳ３５３でＮｏの場合）には、その接続経路を出力することなくＢ１処理を終了し、図３６−２の処理に戻る。【０２５１】
また、最適な接続経路である場合（ステップＳ３５３でＹｅｓの場合）には、その接続経路をオフライン接続経路保持部１２５に出力し（ステップＳ３５４）、図１２の制約の下、そのＰＬＣに接続するネットワークをさらに情報収集できるか否かを判定する（ステップＳ３５５）。ネットワークをさらに情報収集できない場合（ステップＳ３５５でＮｏの場合）には、Ｂ２処理を終了し、図３６−２の処理に戻る。また、そのＰＬＣに接続するネットワークをさらに情報収集できる場合（ステップＳ３５５でＹｅｓの場合）には、そのＰＬＣを処理対象として選択し（ステップＳ３５６）、図３６−２のＢ１処理を実行する（ステップＳ３５７）。【０２５２】
また、ステップＳ３５２で、ＰＬＣまでの接続経路がループを構成している場合（ステップＳ３５２でＹｅｓの場合）には、その接続経路を出力することなくＢ１処理を終了し、図３６−２の処理に戻る。【０２５３】
（２）処理の具体例
上述した説明では、オフライン接続経路解析処理の概要を述べたものであるので、この処理の具体例を図１の構成を有する制御システムの場合を例に挙げて以下に説明する。図３７−１〜図３７−５は、接続経路解析選択処理の結果、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である。また、ここでは、オフラインネットワーク構成情報保持部１２２は、図１１のネットワーク構成情報を保持しているものとする。これらの図１１と図３７−１〜図３７−５に示されるデータは、データ生成の順に示されている。また、ここでも制約として、図１２に示される制約が適用されるものとする。【０２５４】
図３８は、この実施の形態４によるスループットモデルの例を示す図である。この実施の形態４では、ＰＬＣのスループットを１Ｍｂｐｓであるとし、フィールドネットワークのスループットを０．１Ｍｂｐｓであるとし、コントローラ間ネットワークのスループットを１０Ｍｂｐｓであるとし、情報系ネットワークのスループットを１００Ｍｂｐｓであるとしている。また、接続経路全体のスループットの評価値の計算方法は、接続経路中に含まれる各要素のスループット値の逆数を加算して求め、この接続経路全体のスループットの評価値が小さい方が、スループットが良いものと判定する。【０２５５】
（２−１）ＰＬＣ１０−３
まず、接続経路解析選択部１２３は、起点ＰＬＣ指定部１１３で指定されたＰＬＣ１０−３の接続経路Ｐ３ｇを出力する。この接続経路は、終点ＰＬＣが起点ＰＬＣと同じＰＬＣ１０−３である接続経路である。そして、スループットモデル保持部１２４の図３８の条件を参照して、スループット評価値を計算すると、ＰＬＣ１０−３は起点ＰＬＣであるので、スループット評価値は０となる。この結果が、図３７−１に示されている。そして、この起点ＰＬＣであるＰＬＣ１０−３に対して、図３６−２のＢ１処理を実行する。【０２５６】
（２−２）ＰＬＣ１０−３に接続されるネットワーク
ＰＬＣ１０−３を処理の対象としたＢ１処理では、ＰＬＣ１０−３が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報保持部１２２中の接続ネットワーク情報Ｐ３ｎを読み出す処理を行う。ここでは、コントローラ間ネットワークＮｏ．１が収集される。その後、収集したネットワーク（コントローラ間ネットワークＮｏ．１）までの接続経路を作成し、その接続経路がループか否かを確認する。この場合、接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１（２２Ａ）」となり、同じＰＬＣが複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、コントローラ間ネットワークＮｏ．１を処理の対象として図３６−３のＢ２処理を実行する。【０２５７】
（２−３）コントローラ間ネットワークＮｏ．１に接続されるＰＬＣ
コントローラ間ネットワークＮｏ．１を処理の対象としたネットワーク情報出力処理では、コントローラ間ネットワークＮｏ．１に接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報保持部１２２中のネットワークデータＭ１の中で、コントローラ間ネットワークＮｏ．１に接続するＰＬＣを検索して抽出する。ここでは、コントローラ間ネットワークＮｏ．１に接続するＰＬＣとして、ＰＬＣ１０−３，１０−４，１０−１が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路がループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。【０２５８】
（２−４）コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−３
ＰＬＣ１０−３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−３」であり、同じＰＬＣが複数出現するのでループである。そこで、この接続経路を出力せずに、このＰＬＣ１０−３についての処理が終了する。【０２５９】
（２−５）コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４
ＰＬＣ１０−４までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ４ｇを出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−４までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＝２．１
となるので、出力時にこのスループット値を入力する。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、ＰＬＣ１０−４を処理の対象として図３６−２のＢ１処理を実行する。【０２６０】
（２−６）ＰＬＣ１０−４に接続されるネットワーク
ＰＬＣ１０−４を処理の対象としたＢ１処理では、ＰＬＣ１０−４が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報中の接続ネットワーク情報Ｐ４ｎに格納されているネットワークを読み出す処理を行う。ここでは、ＰＬＣ１０−４に接続されるネットワークとして、フィールドネットワークとコントローラ間ネットワークＮｏ．１とが収集される。その後、収集したネットワークまでの接続経路を作成し、その接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。【０２６１】
（２−７）ＰＬＣ１０−４→フィールドネットワーク
フィールドネットワーク２３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→フィールドネットワーク」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、フィールドネットワークを処理の対象として選択し、図３６−３のＢ２処理を実行する。【０２６２】
（２−８）フィールドネットワークに接続されるＰＬＣ
フィールドネットワークを処理の対象としたＢ２処理では、フィールドネットワークに接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報中のネットワークデータＣからフィールドネットワークに接続するＰＬＣを検索して抽出する。ここでは、フィールドネットワークに接続するＰＬＣとして、ＰＬＣ１０−４，１０−５が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路がループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。【０２６３】
（２−９）フィールドネットワーク→ＰＬＣ１０−４
ＰＬＣ１０−４までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→フィールドネットワーク→ＰＬＣ１０−４」であり、同じＰＬＣが複数出現するのでループである。そこで、この接続経路は出力せずに、このＰＬＣ１０−４についての処理が終了する。【０２６４】
（２−１０）フィールドネットワーク→ＰＬＣ１０−５
ＰＬＣ１０−５までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→フィールドネットワーク→ＰＬＣ１０−５」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ５ｇ−１を出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−５までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／０．１）＋（１／１）＝１３．１
となるので、出力時にこのスループット値を入力する。この結果が図３７−３に示されている。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約Ｂに該当するので、図３６−２のＢ１処理を実行しない。以上により、（２−８）のフィールドネットワークを処理の対象としたＢ２処理を終了する。【０２６５】
（２−１１）コントローラ間ネットワークＮｏ．１に接続されるＰＬＣ
（２−６）でＰＬＣ１０−４に接続されるネットワークの１つとして収集されたコントローラ間ネットワークＮｏ．１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→コントローラ間ネットワークＮｏ．１」となり、同じネットワークが複数出現するので、ループとなっている。そのため、図３６−３のＢ２処理を実行しない。以上により、（２−６）のＰＬＣ１０−４を処理の対象としたＢ１処理を終了する。【０２６６】
（２−１２）ＰＬＣ１０−１について
（２−３）でコントローラ間ネットワークＮｏ．１に接続するＰＬＣの１つとして収集されたＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ１ｇを出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−１までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＝２．１
となるので、出力時にこのスループット時を入力する。この結果が、図３７−４に示されている。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、ＰＬＣ１０−１を処理の対象として図３６−２のＢ１処理を実行する。【０２６７】
（２−１３）ＰＬＣ１０−１に接続されるネットワーク
ＰＬＣ１０−１を処理の対象としたＢ１処理では、ＰＬＣ１０−１が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されている接続ネットワーク情報Ｐ１ｎ中のネットワーク情報を読み出す処理を行う。ここでは、ＰＬＣ１０−１に接続されるネットワークとして、コントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２および情報系ネットワークＮｏ．３が収集される。その後、収集したネットワークまでの接続経路を作成し、その接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。【０２６８】
（２−１４）ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．１
コントローラ間ネットワークＮｏ．１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．１」となり、同じネットワークが複数出現するので、ループとなっている。そのため、図３６−３のＢ２処理を実行しない。【０２６９】
（２−１５）ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、コントローラ間ネットワークＮｏ．２を処理の対象として選択し、図３６−３のＢ２処理を実行する。【０２７０】
（２−１６）コントローラ間ネットワークＮｏ．２に接続されるＰＬＣ
コントローラ間ネットワークＮｏ．２を処理の対象としたＢ２処理では、コントローラ間ネットワークＮｏ．２に接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報中のネットワークデータＭ２から、コントローラ間ネットワークＮｏ．２に接続するＰＬＣを検索して抽出する。ここでは、コントローラ間ネットワークＮｏ．２に接続するＰＬＣとして、ＰＬＣ１０−２，１０−１，１０−５が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路はループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。【０２７１】
（２−１７）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２
ＰＬＣ１０−２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ２ｇ−１を出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−２までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１０）＋（１／１）＝３．２  
となるので、出力時にこのスループット値を入力する。この結果が、図３７−５に示されている。その後、ＰＬＣ１０−２に接続するネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ＰＬＣ１０−２を処理の対象として、図３６−２のＢ１処理を実行する。【０２７２】
（２−１８）ＰＬＣ１０−２に接続されるネットワーク
ＰＬＣ１０−２を処理の対象としたＢ１処理では、ＰＬＣ１０−２が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報中の接続ネットワーク情報Ｐ２ｎに格納されているネットワークを読み出す処理を行う。ここでは、ＰＬＣ１０−２に接続されるネットワークとして、コントローラ間ネットワークＮｏ．２と情報系ネットワークＮｏ．３とが収集される。その後、収集したネットワークまでの接続経路を作成し、その接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。【０２７３】
（２−１９）ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２」となり、同じネットワークが複数出現するので、ループである。そのため、図３６−３のＢ２処理を実行しない。【０２７４】
（２−２０）ＰＬＣ１０−２→情報系ネットワークＮｏ．３
情報系ネットワークＮｏ．３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２→情報系ネットワークＮｏ．３」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、情報系ネットワークＮｏ．３を処理の対象として選択し、図３６−３のＢ２処理を実行する。【０２７５】
（２−２１）情報系ネットワークＮｏ．３に接続されるＰＬＣ
情報系ネットワークＮｏ．３を処理の対象としたＢ２処理では、情報系ネットワークＮｏ．３に接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されるネットワークデータＥ３中で情報系ネットワークＮｏ．３に接続するＰＬＣを検索して抽出する。ここでは、情報系ネットワークＮｏ．３に接続するＰＬＣとして、ＰＬＣ１０−１，１０−２が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路がループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。【０２７６】
（２−２２）情報系ネットワークＮｏ．３→ＰＬＣ１０−１
ＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２→情報系ネットワークＮｏ．３→ＰＬＣ１０−１」であり、同じＰＬＣが複数出現するのでループである。そこで、この接続経路は出力しない。【０２７７】
（２−２３）情報系ネットワークＮｏ．３→ＰＬＣ１０−２
ＰＬＣ１０−２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２→情報系ネットワークＮｏ．３→ＰＬＣ１０−２」であり、同じＰＬＣが複数出現するのでループである。そこで、この接続経路は出力しない。以上により、（２−２０）の情報系ネットワークＮｏ．３を処理の対象としたＢ２処理が終了する。また、（２−１７）のＰＬＣ１０−２を処理の対象としたＢ１処理を終了する。【０２７８】
（２−２４）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−１
ＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−１」であり、同じＰＬＣが複数出現しているので、ループである。そこで、図３６−２に示されるＢ１処理を実行しない。【０２７９】
（２−２５）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５
ＰＬＣ１０−５までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５」であり、同じ要素が複数出現しないので、ループではない。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−５までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１０）＋（１／１）＝３．２
となる。ところで、ＰＬＣ１０−５までの経路については、図３７−３に示されるように、既に接続経路Ｐ５ｇ−１が出力されている。この接続経路Ｐ５ｇ−１のスループット値は１３．１であるので、今回算出した接続経路の方がスループット値がよい。そこで、既に出力されている接続経路に代わり、スループットが良い今回算出した方を最適接続経路Ｐ５ｇとして出力する。この結果が図３７−３に示されている。この図３７−３で、接続経路Ｐ３７−３のデータ内容に取り消し線が付されているのは、削除され、その下のデータが上書きされることを示している。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ＰＬＣ１０−５を処理の対象として、図３６−２のＢ１処理を実行する。【０２８０】
（２−２６）ＰＬＣ１０−５に接続されるネットワーク
ＰＬＣ１０−５を処理の対象としたＢ１処理では、ＰＬＣ１０−５が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報中の接続ネットワーク情報Ｐ５ｎに格納されているネットワークを読み出す処理を行う。ここでは、ＰＬＣ１０−５に接続されるネットワークとして、フィールドネットワークとコントローラ間ネットワークＮｏ．２とが収集される。その後、収集したネットワークまでの接続経路を作成し、それぞれの接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。【０２８１】
（２−２７）ＰＬＣ１０−５→フィールドネットワーク
フィールドネットワークまでの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５→フィールドネットワーク」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、フィールドネットワークを処理の対象として選択し、図３６−３のＢ２処理を実行する。【０２８２】
（２−２８）フィールドネットワークに接続されるＰＬＣ
フィールドネットワークを処理の対象としたＢ２処理では、フィールドネットワークに接続しているＰＬＣ情報を収集する。具体的には、図１１のオフラインネットワーク構成情報のネットワークデータＣ中のフィールドネットワークに接続するＰＬＣを検索して抽出する。ここでは、フィールドネットワークに接続するＰＬＣとして、ＰＬＣ１０−４，１０−５が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路はループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。【０２８３】
（２−２９）フィールドネットワーク→ＰＬＣ１０−４
ＰＬＣ１０−４までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５→フィールドネットワーク→ＰＬＣ１０−４」であり、同じ要素が複数出現しないので、ループではない。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−４までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１０）＋（１／１）＋（１／０．１）＋（１／１）＝１４．２
となる。ところで、ＰＬＣ１０−４までの経路については、図３７−２に示されるように、既に接続経路Ｐ４ｇが出力されている。この接続経路Ｐ４ｇのスループット値は２．１であるので、今回算出した接続経路よりも既存の接続経路の方がスループット値がよい。そこで、スループットが良い既に出力されている接続経路の方を最適接続経路とする（図３７−２）。【０２８４】
（２−３０）フィールドネットワーク→ＰＬＣ１０−５
ＰＬＣ１０−５までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５→フィールドネットワーク→ＰＬＣ１０−５」であり、同じＰＬＣが複数出現するので、ループである。そこで、接続経路は出力しない。以上で、（２−２８）のフィールドネットワークを処理の対象としたＢ２処理を終了する。【０２８５】
（２−３１）ＰＬＣ１０−５→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５→コントローラ間ネットワークＮｏ．２」であり、同じネットワークが複数出現しているので、ループである。そのため、図３６−３のＢ２処理を実行しない。以上により、（２−２６）のＰＬＣ１０−５を処理の対象としたＢ１処理を終了する。また、（２−１６）のコントローラ間ネットワークＮｏ．２を処理の対象とした図３６−３のＢ２処理を終了する。【０２８６】
（２−３２）情報系ネットワークＮｏ．３に接続されるＰＬＣ
（２−１３）でＰＬＣ１０−１に選択されるネットワークの１つとして収集された情報系ネットワークＮｏ．３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、情報系ネットワークＮｏ．３を処理の対象として選択し、図３６−３のＢ２処理を実行する。【０２８７】
情報系ネットワークＮｏ．３を処理の対象としたＢ２処理では、情報系ネットワークＮｏ．３に接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されるネットワークデータＥ３の中で情報系ネットワークＮｏ．３に接続するＰＬＣを検索して抽出する。ここでは、情報系ネットワークＮｏ．３に接続するＰＬＣとして、ＰＬＣ１０−１，１０−２とが収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路はループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。【０２８８】
（２−３３）情報系ネットワークＮｏ．３→ＰＬＣ１０−１
ＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−１」であり、同じＰＬＣが複数出現しているので、ループとなっている。そこで、この接続経路は出力しない。【０２８９】
（２−３４）情報系ネットワークＮｏ．３→ＰＬＣ１０−２
ＰＬＣ１０−２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２」であり、同じ要素が複数出現しないので、ループではない。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−２までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１００）＋（１／１）＝３．１１
となる。ところで、ＰＬＣ１０−２までの経路については、図３７−５に示されるように、既に接続経路Ｐ２ｇ−１が出力されている。この接続経路Ｐ２ｇ−１のスループット値は３．２であるので、今回算出された接続経路の方がスループット値が良い。そこで、既に出力されている接続経路Ｐ２ｇ−１に代わり、スループットが良い今回計算された方を最適接続経路Ｐ２ｇとして出力する。この結果が、図３７−５に示されている。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ＰＬＣ１０−２を処理の対象として、図３６−２のＢ１処理を実行する。【０２９０】
（２−３５）ＰＬＣ１０−２に接続されるネットワーク
ＰＬＣ１０−２を処理の対象としたＢ１処理では、ＰＬＣ１０−２が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報中の接続ネットワーク情報Ｐ２ｎに格納されているネットワークを読み出す処理を行う。ここでは、ＰＬＣ１０−２に接続されるネットワークとして、コントローラ間ネットワークＮｏ．２と情報系ネットワークＮｏ．３とが収集される。その後、収集したネットワークまでの接続経路を作成し、それぞれの接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。【０２９１】
（２−３６）ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、コントローラ間ネットワークＮｏ．２を処理の対象として選択し、図３６−３のＢ２処理を実行する。【０２９２】
（２−３７）コントローラ間ネットワークＮｏ．２に接続されるＰＬＣ
コントローラ間ネットワークＮｏ．２を処理の対象としたＢ２処理では、コントローラ間ネットワークＮｏ．２に接続しているＰＬＣ情報を収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されるネットワークデータＭ２の中でコントローラ間ネットワークＮｏ．２に接続するＰＬＣを検索して抽出する。ここでは、コントローラ間ネットワークＮｏ．２に接続するＰＬＣとして、ＰＬＣ１０−２，１０−１，１０−５が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路はループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。【０２９３】
（２−３８）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２
ＰＬＣ１０−２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２」であり、同じＰＬＣが複数出現するので、ループである。そこで、接続経路は出力しない。【０２９４】
（２−３９）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−１
ＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−１」であり、同じＰＬＣが複数出現するので、ループである。そこで、接続経路は出力しない。【０２９５】
（２−４０）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５
ＰＬＣ１０−５までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５」であり、同じ要素が複数出現しないので、ループではない。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−５までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１００）＋（１／１）＋（１／１０）＋（１／１）＝４．２１
となる。ところで、ＰＬＣ１０−５までの経路については、図３７−３に示されるように、既に接続経路Ｐ５ｇが出力されている。この接続経路Ｐ５ｇのスループット値は３．２であるので、既存の接続経路の方が今回計算されたものよりもスループット値がよい。そこで、スループットが良い既に出力されている接続経路の方を最適接続経路とする（図３７−３）。以上により、（２−３７）のコントローラ間ネットワークＮｏ．２を処理の対象としたＢ２処理を終了する。【０２９６】
（２−４１）情報系ネットワークＮｏ．３に接続されるＰＬＣ
（２−３５）でＰＬＣ１０−２に接続されるネットワークの１つとして収集された情報系ネットワークＮｏ．３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→情報系ネットワークＮｏ．３」となり、同じネットワークが複数出現するので、ループである。そのため、図３６−３のＢ２処理は実行しない。以上により、（２−３５）のＰＬＣ１０−２を処理の対象とした図３６−２のＢ１処理を終了する。また、（２−３２）の情報系ネットワークＮｏ．３を処理の対象としたＢ２処理を終了する。さらに、（２−１３）のＰＬＣ１０−１を処理の対象としたＢ１処理を終了する。また、（２−１１）のコントローラ間ネットワークＮｏ．１を処理の対象としたＢ２処理を終了する。さらに、（２−２）のＰＬＣ１０−３を処理の対象としたＢ１処理を終了する。以上で、接続経路解析処理を終了する。【０２９７】
（接続経路表示処理）
上記のオフライン接続経路解析処理によって、オフライン接続経路保持部１２５に図３７−１〜図３７−５に示されるような接続経路が格納されると、接続経路表示部１２０は、その接続経路にしたがって、表示部１１２に接続経路を強調表示する。【０２９８】
図３９は、オフライン接続経路の表示画面の一例を示す図である。この図に示されるように、各ＰＬＣへの接続経路を把握しやすくなる。ここでは、上述したように、通信スループットのよい経路が選択される。【０２９９】
また、アクセス可能なＰＬＣとアクセス不可能なＰＬＣを強調的に区別して表示してもよい。このように表示することによって、起点ＰＬＣからアクセス可能なＰＬＣを容易に理解することができる（アクセス不可能なＰＬＣを容易に理解することができる）。【０３００】
図４０は、オフライン接続経路の表示画面の一例を示す図である。この図では、起点ＰＬＣから図１２の制約によってアクセス可能なＰＬＣには、その近傍に「○」印を配置し、起点ＰＬＣから図１２の制約によってアクセスできないＰＬＣには、その近傍に「×」印を配置している。これによって、起点ＰＬＣからアクセス可能なＰＬＣとアクセス不可能なＰＬＣとをすぐに見分けることが可能となる。この図３９の例では、ＰＬＣ１０−５の先に情報系ネットワークＮｏ．４を介してＰＬＣ１０−９が接続されている。しかし、このＰＬＣ１０−９へは、フィールドネットワークのローカル局であるＰＬＣ１０−５を介してしかアクセスできないので、図１２の制約Ｂに該当する。そのため、ＰＬＣ１０−９へはアクセス不可能となる。【０３０１】
この実施の形態４によれば、オフラインで作成した制御システムのネットワーク図において、起点となるＰＬＣからアクセス可能なＰＬＣを容易に把握することができるとともに、その場合の各ＰＬＣへの接続経路を事前に理解することができるという効果を有する。また、起点ＰＬＣからの接続経路が複数存在する場合には、所定の基準によって選択される最適な接続経路が自動的に選択されるという効果も有する。【０３０２】
実施の形態５．
ところで、制御システムを構成するネットワークは、上述した図１２のような接続制約が存在するために、当該制御システムエンジニアリング装置をどこに接続してもシステム内の全てのＰＬＣにアクセスできるわけではない。そのため、アクセスできないＰＬＣが存在する場合に、一度制御システムエンジニアリング装置とＰＬＣとの接続ケーブルを外し、対象のＰＬＣに接続し直すという作業が必要となる。また、制御システムエンジニアリング装置を接続する場所によっては、通信速度が遅くなる場合がある。【０３０３】
そこで、この実施の形態５では、実施の形態４において、制御システムを構成するネットワークで、全てのＰＬＣに対して接続が可能で、かつ、高速な通信が可能な（スループットが総合的に最適な経路となるような）制御システムエンジニアリング装置の接続口となるＰＬＣ（起点ＰＬＣ）を自動的に算出することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。【０３０４】
図４１は、この発明にかかる制御システムエンジニアリング装置の実施の形態５の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、実施の形態４の図３５において、起点ＰＬＣ指定部１１３が削除され、最適接続経路算出部１２６をさらに備えることを特徴とする。【０３０５】
最適接続経路算出部１２６は、当該制御システムエンジニアリング装置１００の接続口（起点ＰＬＣ）の全ての候補に対して順次、接続経路解析選択部１２３による接続経路解析選択処理を行った結果、全てのＰＬＣに対して接続可能な候補のみ抽出し、さらにその中で、各ＰＬＣへの通信スループットが総合的に良いものを抽出して、最適接続経路とする機能を有する。この最適接続経路算出部１２６は、請求の範囲における最適接続経路算出手段に対応している。【０３０６】
つぎに、この実施の形態５の構成を有する制御システムエンジニアリング装置の処理について説明する。図４２は、最適接続経路算出処理手順の一例を示すフローチャートである。また、ここでは、図１の構成を有する制御システムでの最適接続経路算出処理を例に挙げて説明する。まず、最適接続経路算出部１２６は、起点ＰＬＣとなる候補のＰＬＣを抽出する（ステップＳ３７１）。具体的には、図１１のオフラインネットワーク構成情報に格納されているＰＬＣを全て抽出する。ここでは、ＰＬＣ１０−１〜１０−５の５つのＰＬＣが抽出される。【０３０７】
ついで、抽出されたそれぞれを起点ＰＬＣとして図３６−１〜図３６−３に示されるオフライン接続経路解析処理を実行する（ステップＳ３７２）。ＰＬＣ１０−３を起点ＰＬＣとしてオフライン接続経路解析処理を実行した結果得られる接続経路データは、実施の形態４の図３７−１〜図３７−５に示される結果と同じものとなる。図４３−１〜図４３−５は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図であり、図４４−１〜図４４−５は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図であり、図４５−１〜図４５−５は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図であり、図４６−１〜図４６−５は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である。【０３０８】
その後、接続経路解析処理が実行されたそれぞれの結果に対して、全てのＰＬＣに接続可能かを確認する（ステップＳ３７３）。ここで、起点となるＰＬＣの選び方によっては、図１２の制約によって、接続不可能なＰＬＣが存在する場合が出てくるので、図１２の制約に抵触しないか否かを確認する。ここでは、いずれのＰＬＣを起点ＰＬＣとした場合にも、全てのＰＬＣに接続可能である。【０３０９】
ついで、接続経路解析処理が実行されたそれぞれの結果に対して、システム構成全体のスループット評価値（合計スループット評価値）を比較する（ステップＳ３７４）。ここで用いるスループットモデルは、実施の形態４で用いた図３８のスループットモデルと同じである。以下に、各ＰＬＣを起点とした場合のスループット評価値とその合計値を示す。【０３１０】
（ＰＬＣ１０−１を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ１）  ＝  ０
ＰＬＣ１０−２（Ｐ２ｇ１）  ＝  ２．０１
ＰＬＣ１０−３（Ｐ３ｇ１）  ＝  ２．１
ＰＬＣ１０−４（Ｐ４ｇ１）  ＝  ２．１
ＰＬＣ１０−５（Ｐ５ｇ１）  ＝  ２．１
合計スループット評価値  ＝  ８．３１【０３１１】
（ＰＬＣ１０−２を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ２）  ＝  ２．０１
ＰＬＣ１０−２（Ｐ２ｇ２）  ＝  ０
ＰＬＣ１０−３（Ｐ３ｇ２）  ＝  ３．２
ＰＬＣ１０−４（Ｐ４ｇ２）  ＝  ３．２
ＰＬＣ１０−５（Ｐ５ｇ２）  ＝  ２．１
合計スループット評価値  ＝  １０．５１【０３１２】
（ＰＬＣ１０−３を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ）  ＝  ２．１
ＰＬＣ１０−２（Ｐ２ｇ）  ＝  ３．１１
ＰＬＣ１０−３（Ｐ３ｇ）  ＝  ０
ＰＬＣ１０−４（Ｐ４ｇ）  ＝  ２．１
ＰＬＣ１０−５（Ｐ５ｇ）  ＝  ３．２
合計スループット評価値  ＝  １０．５１【０３１３】
（ＰＬＣ１０−４を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ４）  ＝  ２．１
ＰＬＣ１０−２（Ｐ２ｇ４）  ＝  ３．１１
ＰＬＣ１０−３（Ｐ３ｇ４）  ＝  ２．１
ＰＬＣ１０−４（Ｐ４ｇ４）  ＝  ０
ＰＬＣ１０−５（Ｐ５ｇ４）  ＝  ３．２
合計スループット評価値  ＝  １０．５１【０３１４】
（ＰＬＣ１０−５を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ５）  ＝  ２．１
ＰＬＣ１０−２（Ｐ２ｇ５）  ＝  ２．１
ＰＬＣ１０−３（Ｐ３ｇ５）  ＝  ３．２
ＰＬＣ１０−４（Ｐ４ｇ５）  ＝  ３．２
ＰＬＣ１０−５（Ｐ５ｇ５）  ＝  ０
合計スループット評価値  ＝  １０．６【０３１５】
ついで、最適接続経路算出部１２６は、上記で算出した各ＰＬＣを起点とした合計スループット評価値のうち、システム構成全体のスループットが最良のものを抽出し（ステップＳ３７５）、最適接続経路としてオフライン接続経路保持部１２５に出力する（ステップＳ３７６）。実施の形態４で用いたスループットモデルを用いているので、ここでは、合計スループット評価値の小さいものが最適なものとなる。上記した結果より、ＰＬＣ１０−１を起点ＰＬＣとした場合の接続経路データの合計スループット評価値が最も小さいので、図４３−１に示される最適接続経路を最適接続経路としてオフライン接続経路保持部１２５に出力する。以上により、最適接続経路算出処理が終了する。【０３１６】
その後、接続経路表示部１２０によって、最適接続経路算出部１２６によって算出された最適接続経路に基づいて、最適接続経路がオフラインのシステム構成図に表示される。図４７は、最適接続経路の表示画面の一例を示す図である。この図は、図４３−１に示される最適接続経路に基づいて、実施の形態３の接続経路表示処理を用いて接続経路表示したものである。これにより、制御システムエンジニアリング装置１００の使用者は、ＰＬＣ１０−１に制御システムエンジニアリング装置１００を接続すれば、制御システムを構成する全てのＰＬＣに接続することができ、高いスループットでデータの転送を行うことができることを知ることができる。【０３１７】
この実施の形態５によれば、オフラインで構築された制御システムのネットワークにおいて、制御システム内の全てのＰＬＣにアクセスでき、かつ高速な通信ができる位置を算出することができる。その結果、この位置に制御システムエンジニアリング装置１００を接続することで、設定データのダウンロードやアップロード作業に必要な時間を削減することができるという効果を有する。【０３１８】
実施の形態６．
この実施の形態６では、起点ＰＬＣからそれぞれのＰＬＣへの接続経路の途中のＰＬＣに、受け取ったデータを目的とするＰＬＣへルーチングするためのルーチングパラメータを自動的に算出し、設定することができる制御システムエンジニアリング装置と制御システムエンジニアリング方法について説明する。ここでは、最初に制御システムにおけるルーチングパラメータについて簡単に説明し、その後に実施の形態の内容を説明する。【０３１９】
制御システムにおけるルーチング機能とは、複数のネットワークからなるシステムにおいて、複数のネットワークにまたがるデータを、他のネットワーク番号の局へトランジェント伝送する機能のことをいう。ルーチング機能を実行するためには、ルーチングパラメータを設定して、要求先のネットワーク番号とブリッジの役割を行うＰＬＣとの対応付けが必要となる。【０３２０】
また、ルーチングパラメータは、トランジェント伝送の要求元と中継局に設定が必要となる。ここで、中継局とは、複数のネットワークと接続するＰＬＣのことをいう。また、中継局には、要求元から要求先へ送る（行く）ためのルーチングパラメータと、要求先から要求元へ送る（戻る）ためのルーチングパラメータと、の２つの設定が通常必要である。なお、要求先でのルーチングパラメータの設定は不要である。【０３２１】
図４８は、制御システムに設定されるルーチングパラメータの一例を示す図である。なお、この図４８では、各ＰＬＣを示す矩形の枠内には、通信ユニットが示されている。この通信ユニットの表記は、たとえば、ネットワークＮｏ．１の１局である場合には、「１Ｎｓ１」と表記する。また、複数のネットワークに接続されるＰＬＣには複数のネットワークユニットが設けられている。【０３２２】
この例では、制御システムは、ネットワークＮｏ．１〜ネットワークＮｏ．３の３つのネットワークが接続されて構成されている。ネットワークＮｏ．１には、６つのＰＬＣ１０−１〜１０−６が接続されており、このうちの４局のＰＬＣ１０−４が隣接するネットワークＮｏ．２とも接続している。すなわち、ＰＬＣ１０−４は、ネットワークＮｏ．１と通信を行う通信ユニット１Ｎｓ４と、ネットワークＮｏ．２と通信を行う通信ユニット２Ｎｓ１とを有する。また、ネットワークＮｏ．２には、４つのＰＬＣ１０−４，１０−７，１０−８，１０−１３が接続されている。このうち、ネットワークＮｏ．２における１局のＰＬＣ１０−４は、隣接するネットワークＮｏ．１とも接続しており、４局のＰＬＣ１０−１３は、隣接するネットワークＮｏ．３とも接続している。すなわち、ＰＬＣ１０−１３は、ネットワークＮｏ．２と通信を行う通信ユニット２Ｎｓ４と、ネットワークＮｏ．３と通信を行う通信ユニット３Ｎｓ５とを有する。さらに、ネットワークＮｏ．３には、５つのＰＬＣ１０−９〜１０−１３が接続されている。このうち、ネットワークＮｏ．３における５局のＰＬＣ１０−１３は、隣接するネットワークＮｏ．２とも接続している。【０３２３】
ここでは、ネットワークＮｏ．１のＰＬＣ１０−３からネットワークＮｏ．３のＰＬＣ１０−１２にデータをトランジェント伝送する場合を例に挙げて説明する。この場合、トランジェント伝送を要求するネットワークＮｏ．１のＰＬＣ１０−３、ネットワークＮｏ．１とネットワークＮｏ．２のブリッジの役割をするＰＬＣ１０−４およびネットワークＮｏ．２とネットワークＮｏ．３のブリッジの役割をするＰＬＣ１０−１３にルーチングパラメータを設定する必要がある。以下では、各局のルーチングパラメータの設定について説明する。【０３２４】
（１）ネットワークＮｏ．１のＰＬＣ１０−３
このＰＬＣ１０−３にはルーチングパラメータとして、転送先ネットワーク番号（３）および中継局の通信ユニット（１Ｎｓ４）と、そこまでの中継ネットワーク番号（１）と、が設定される。【０３２５】
（２）ネットワークＮｏ．１のＰＬＣ１０−４
このＰＬＣ１０−４にはルーチングパラメータとして、転送先ネットワーク番号（３）および中継局の通信ユニット（２Ｎｓ４）とそこまでの中継ネットワーク番号（２）と、が設定される。なお、つぎに説明する（３）のＰＬＣ１０−１３でネットワークＮｏ．２からネットワークＮｏ．１へのデータ伝送のためのルーチングパラメータが設定されるので、このＰＬＣ１０−４での戻り用のルーチングパラメータについては不要である。【０３２６】
（３）ネットワークＮｏ．２のＰＬＣ１０−１３
このＰＬＣ１０−１３では、転送先への設定は、自局の先が転送先ネットワーク（ネットワークＮｏ．３であるので、行き用のルーチングパラメータの設定は不要である。ただし、戻り用のルーチングパラメータとして、転送元ネットワーク番号（１）を転送先ネットワーク番号に設定し、戻るための中継局のネットワークユニット（２Ｎｓ１）と、そこまでの中継ネットワーク番号（２）とを設定する。【０３２７】
このようにルーチングパラメータを各局に設定することで、ネットワークＮｏ．１のＰＬＣ１０−３からネットワークＮｏ．３のＰＬＣ１０−１２へのデータ伝送が可能となる。【０３２８】
つぎに、このように設定されたルーチングパラメータを用いたデータ伝送の手順について簡単に説明する。まず、ネットワークＮｏ．１のＰＬＣ１０−３は、ネットワークＮｏ．３のＰＬＣ１０−１３に送信するデータを、ルーチングパラメータに基づいて送信する。すなわち、転送先ネットワーク番号が「３」で、中継先ネットワークが「１」で、中継先局番号が「４」という設定パラメータにしたがって、データを送信する。これにより、ＰＬＣ１０−３からのデータはネットワークＮｏ．１を介してＰＬＣ１０−４（ネットワークＮｏ．１で４局の通信ユニット１Ｎｓ４を有するＰＬＣ）へと送信される。【０３２９】
このＰＬＣ１０−４の通信ユニット１Ｎｓ４でデータを受信すると、宛先がネットワークＮｏ．３のＰＬＣ１０−４であるので、ルーチングパラメータを参照して、中継先ネットワークＮｏ．２の中継先局番号４であるＰＬＣ１０−１３へと、通信ユニット２Ｎｓ１とネットワークＮｏ．２を介して送信する。ＰＬＣ１０−１３では、受信したデータがネットワークＮｏ．３のＰＬＣ１０−１２宛へのデータであるので、通信ユニット３Ｎｓ５とネットワークＮｏ．３を介してＰＬＣ１０−１２へと送信する。これによって、行きのデータ伝送が終了する。【０３３０】
つぎに、要求先であるネットワークＮｏ．３のＰＬＣ１０−１２が要求元であるネットワークＮｏ．１のＰＬＣ１０−３にデータ伝送する場合、すなわち戻りのデータ伝送の場合を説明する。この場合には、ネットワークＮｏ．３のＰＬＣ１０−１２は、転送先のネットワークＮｏ．１のＰＬＣ１０−３宛へのデータを送信する。このデータは、ネットワークＮｏ．３を介してＰＬＣ１０−１３へと届く。ＰＬＣ１０−１３では、このデータの宛先が転送先ネットワークＮｏ．１のＰＬＣ１０−３であるので、ルーチングパラメータを参照して、中継先ネットワークが「ネットワークＮｏ．２」で、中継先局番号が「１」のネットワークＮｏ．２のＰＬＣ１０−４にデータを伝送する。【０３３１】
ネットワークＮｏ．２のＰＬＣ１０−４では、ネットワークＮｏ．１のＰＬＣ１０−３宛のデータであるので、同じベースに装着されている通信ユニット１Ｎｓ４と、ネットワークＮｏ．１を介して、宛先のＰＬＣ１０−３へと送信する。そして、ＰＬＣ１０−３は、ネットワークＮｏ．３のＰＬＣ１０−１２からのデータを受信する。これによって、戻りのデータ伝送が終了する。【０３３２】
以上のような仕組みで、制御システムでの複数のネットワークにまたがる場合のデータ伝送が行われる。以下に、このような制御システムにおけるＰＬＣのネットワークパラメータの設定処理について説明する。【０３３３】
図４９は、この発明にかかる制御システムエンジニアリング装置の実施の形態６の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、実施の形態４の図３５において、オフライン接続経路保持部１２５に保持されている起点ＰＬＣから各ＰＬＣへの接続経路を読み出して、それぞれの接続経路においてルーチングパラメータの設定が必要なＰＬＣに対してルーチングパラメータを算出するルーチングパラメータ算出部１２７をさらに備える。このルーチングパラメータ算出部１２７は、請求の範囲におけるルーチングパラメータ算出手段に対応している。なお、実施の形態４との図３５と同一の構成要素には同一の符号を付してその説明を省略している。【０３３４】
図５０は、ルーチングパラメータ算出部のさらに詳細な機能構成を模式的に示すブロック図である。この図に示されるように、ルーチングパラメータ算出部１２７は、接続経路逆転機能１２７１と、転送先ネットワーク番号抽出機能１２７２と、中継先ネットワーク番号抽出機能１２７３と、中継先局番号抽出機能１２７４と、を備える。【０３３５】
接続経路逆転機能１２７１は、オフライン接続経路保持部１２５に格納される接続経路を抽出し、そのデータを逆順にした逆接続経路を作成する。【０３３６】
転送先ネットワーク番号抽出機能１２７２は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける転送先ネットワーク番号を抽出する。【０３３７】
中継先ネットワーク番号抽出部は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける中継先ネットワーク番号を抽出する。【０３３８】
中継先局番号抽出部は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける中継先局番号を抽出する。【０３３９】
（１）処理の概要
つぎに、このような構成を有する制御システムエンジニアリング装置１００での、ルーチングパラメータの算出処理について説明する。図５１−１〜図５１−２は、ルーチングパラメータ算出処理手順の一例を示すフローチャートである。まず、起点ＰＬＣ指定部１１３によってトランジェント伝送の要求元ＰＬＣが使用者によって指定される（ステップＳ４１１）。この要求元ＰＬＣを以下では、起点ＰＬＣという。【０３４０】
ついで、起点ＰＬＣ指定部１１３によって指定された起点ＰＬＣを処理対象として選択し、実施の形態４の図３６−２に示されるＢ２処理を実行して（ステップＳ４１２）、接続経路を取得する（ステップＳ４１３）。【０３４１】
取得した接続経路から１つの接続経路を選択する（ステップＳ４１４）。ついで、その接続経路における起点ＰＬＣを処理の対象として選択し、Ｃ１処理を実行する（ステップＳ４１５）。【０３４２】
図５１−２に示されるように、Ｃ１処理では、まず、処理対象のＰＬＣから終点ＰＬＣまでに異なるネットワークが２つ以上存在するか否かを判定する（ステップＳ４３１）。異なるネットワークが２つ以上存在しない場合（ステップＳ４３１でＮｏの場合）には、Ｃ１処理を終了し、図５１−１の処理に戻る。また、異なるネットワークが存在する場合（ステップＳ４３１でＹｅｓの場合）には、選択した接続経路で、終点ＰＬＣの１つ前のデータに記載されるネットワーク番号を転送先ネットワーク番号として出力する（ステップＳ４３２）。【０３４３】
ついで、選択した接続経路で、処理対象のＰＬＣのつぎのデータに記載されているネットワーク番号を中継先ネットワーク番号として出力し（ステップＳ４３３）、さらに、処理対象のＰＬＣのつぎのつぎのデータに記載されているＰＬＣの、ステップＳ４３３で出力した中継先ネットワークにおける局番号を中継先局番号として出力する（ステップＳ４３４）。【０３４４】
その後、処理対象のＰＬＣのつぎのつぎのデータに記載されているＰＬＣを処理の対象として選択し（ステップＳ４３５）、ステップＳ４３１へと戻り、上述した処理が繰り返し行われる。【０３４５】
Ｃ１処理を終了すると、図５１−１に戻り、接続経路逆転機能１２７１によって、選択された接続経路のデータを逆順にした逆接続経路を作成する（ステップＳ４１６）。つまり、選択された接続経路の起点ＰＬＣが終点ＰＬＣになり、終点ＰＬＣが起点ＰＬＣになる。【０３４６】
その後、逆順とした逆接続経路のデータにおける起点ＰＬＣのつぎのつぎのデータに記載されるＰＬＣを処理対象として選択し（ステップＳ４１７）、Ｃ１処理を実施する（ステップＳ４１８）。【０３４７】
逆接続経路におけるＣ１処理が終了した後、ステップＳ４１３で取得した全ての接続経路に対して処理を行ったか否かを確認し（ステップＳ４１９）、処理を行っていない接続経路がある場合（ステップＳ４１９でＮｏの場合）には、ステップＳ４１４へと戻り、上述した処理が繰り返し実行される。また、全ての接続経路に対して処理を行った場合（ステップＳ４１９でＹｅｓの場合）には、ルーチングパラメータ算出処理が終了する。【０３４８】
（２）処理の具体例
上述した説明では、ルーチングパラメータ算出処理の概要を述べたものであるので、この処理の具体例を図２８の構成を有する制御システムの場合を例に挙げて以下に説明する。この図２８に示される制御システムを対象に、ＰＬＣπを起点ＰＬＣとして実施の形態４の図３６−１〜図３６−３に示されるオフライン接続経路解析処理を実施する。図５２は、図２８の制御システムについての各ＰＬＣへの接続経路の一例を示す図である。また、図５３−１〜図５３−４は、ルーチングパラメータ算出処理の結果得られる各ＰＬＣに設定されるルーチングパラメータである。【０３４９】
（２−１）接続経路取得処理
まず、起点ＰＬＣ指定部１１３にて指定したトランジェント伝送の要求元ＰＬＣπを起点ＰＬＣとして、図３６−１〜図３６−３に示されるオフライン接続経路解析処理を行うことによって、図５２に示される接続経路Ｐαｇ〜Ｐψｇが得られる。【０３５０】
（２−２）接続経路Ｐαｇ
図５２の接続経路の中から、まず接続経路Ｐαｇを選択し、この接続経路Ｐαｇに関して以下の処理を行う。【０３５１】
（２−２−１）接続経路のＰＬＣπ
接続経路Ｐαｇ中の起点ＰＬＣであるＰＬＣπを処理の対象ＰＬＣとして図５１−２に示されるＣ１処理を実行する。ＰＬＣπを処理対象としたＣ１処理では、接続経路Ｐαｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣπを処理の対象ＰＬＣとしたＣ１処理を終了する。【０３５２】
（２−２−２）逆接続経路のＰＬＣπ
ついで、接続経路Ｐαｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα」を逆順にした「ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐαｇ’とする。そして、この逆接続経路Ｐαｇ’における起点ＰＬＣであるＰＬＣαのつぎのつぎのデータに記載されるＰＬＣであるＰＬＣπを処理対象のＰＬＣとして選択し、Ｃ１処理を実行する。しかし、このＰＬＣπを処理対象としたＣ１処理では、逆接続経路Ｐαｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣπを処理の対象ＰＬＣとしたＣ１処理を終了する。【０３５３】
（２−３）接続経路Ｐεｇ
図５２の接続経路から接続経路Ｐεｇを選択し、この接続経路Ｐεｇに関して処理を行うと、（２−２）の接続経路Ｐαｇと同様の結果となり、算出されるルーチングパラメータはない。【０３５４】
（２−４）接続経路Ｐβｇ
図５２の接続経路から接続経路Ｐβｇを選択し、この接続経路Ｐβｇに関して以下の処理を行う。【０３５５】
（２−４−１）接続経路
接続経路Ｐβｇ中の起点ＰＬＣであるＰＬＣπを処理の対象ＰＬＣとして図５１−２に示されるＣ１処理を実行する。ＰＬＣπを処理対象としたＣ１処理では、接続経路Ｐβｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣβの１つ前のデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を転送先ネットワーク番号として出力する。【０３５６】
また、処理対象のＰＬＣπのつぎのデータ（データ１）に記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣであるＰＬＣαのコントローラ間ネットワークＮｏ．１における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。【０３５７】
ついで、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐβｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、接続経路ＰＬＣαを処理対象としたＣ１処理を終了する。この結果が、図５３−１の行５０１に示されている。【０３５８】
（２−４−２）逆接続経路
ついで、接続経路Ｐβｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα→情報系ネットワークＮｏ．５→ＰＬＣβ」を逆順にした「ＰＬＣβ→情報系ネットワークＮｏ．５→ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐβｇ’とする。そして、この逆接続経路Ｐβｇ’における起点ＰＬＣであるＰＬＣβのつぎのつぎのデータに記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。しかし、このＰＬＣαを処理対象としたＣ１処理では、逆接続経路Ｐβｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣαを処理の対象ＰＬＣとしたＣ１の処理を終了する。【０３５９】
（２−５）接続経路Ｐμｇ
図５２の接続経路から接続経路Ｐμｇを選択し、この接続経路Ｐμｇに関して処理を行うと、（２−４）の接続経路Ｐβｇと同様の結果となる。すなわち、算出されるルーチングパラメータが同じであり、新たに出力されるルーチングパラメータはない。【０３６０】
（２−６）接続経路Ｐθｇ
図５２の接続経路から接続経路Ｐθｇを選択し、この接続経路Ｐθｇに関して以下の処理を行う。【０３６１】
（２−６−１）接続経路
接続経路Ｐθｇ中の起点ＰＬＣであるＰＬＣπを処理の対象ＰＬＣとして図５１−２に示されるＣ１処理を実行する。ＰＬＣπを処理対象としたＣ１処理では、接続経路Ｐθｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣθの１つ前のデータ（データ５）に記載されるコントローラ間ネットワークＮｏ．２のネットワーク番号「２」を転送先ネットワーク番号として出力する。【０３６２】
また、処理対象のＰＬＣπのつぎのデータ（データ１）に記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣであるＰＬＣαのコントローラ間ネットワークＮｏ．１における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−１の行５０２に示されている。【０３６３】
その後、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣαを処理の対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐθｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣθの１つ前のデータ（データ５）に記載されるコントローラ間ネットワーク２２Ｂのネットワーク番号「２」を転送先ネットワーク番号として出力する。【０３６４】
また、処理対象のＰＬＣαのつぎのデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣαのつぎのつぎのデータ（データ４）に記載されるＰＬＣであるＰＬＣβの情報系ネットワークＮｏ．５における局番号「２」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−２の行５０４に示されている。【０３６５】
その後、処理対象のＰＬＣαのつぎのつぎのデータの記載されるＰＬＣであるＰＬＣβを処理の対象ＰＬＣとしてＣ１処理を実行する。ＰＬＣβを処理対象としたＣ１処理では、接続経路Ｐθｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣβを処理対象としたＣ１処理を終了する。【０３６６】
（２−６−２）逆接続経路
ついで、接続経路Ｐθｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα→情報系ネットワークＮｏ．５→ＰＬＣβ→コントローラ間ネットワークＮｏ．２→ＰＬＣθ」を逆順にした「ＰＬＣθ→コントローラ間ネットワークＮｏ．２→ＰＬＣβ→情報系ネットワークＮｏ．５→ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐθｇ’とする。そして、この逆接続経路Ｐθｇ’における起点ＰＬＣであるＰＬＣθのつぎのつぎのデータに記載されるＰＬＣβを処理対象として選択し、Ｃ１処理を実行する。【０３６７】
ＰＬＣβを処理対象としたＣ１処理では、接続経路Ｐθｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣπの１つ前のデータに記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を転送先ネットワーク番号として出力する。また、処理対象のＰＬＣβのつぎのデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣβのつぎのつぎのデータ（データ４）に記載されるＰＬＣであるＰＬＣαの情報系ネットワークＮｏ．５における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−３の行５０６に示されている。【０３６８】
ついで、処理対象のＰＬＣβのつぎのつぎのデータに記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐθｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、接続経路ＰＬＣαを処理対象としたＣ１処理を終了する。【０３６９】
（２−７）接続経路Ｐκｇ
図５２の接続経路から接続経路Ｐκｇを選択し、この接続経路Ｐκｇに関して処理を行うと、（２−６）の接続経路Ｐθｇと同様の結果となる。すなわち、算出されるルーチングパラメータが同じであり、新たに出力されるルーチングパラメータはない。【０３７０】
（２−８）接続経路Ｐωｇ
図５２の接続経路から接続経路Ｐωｇを選択し、この接続経路Ｐωｇに関して以下の処理を行う。【０３７１】
（２−８−１）接続経路
接続経路Ｐωｇ中の起点ＰＬＣであるＰＬＣπを処理の対象ＰＬＣとして図５１−２に示されるＣ１処理を実行する。ＰＬＣπを処理対象としたＣ１処理では、接続経路Ｐωｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣωの１つ前のデータ（データ５）に記載されるコントローラ間ネットワークＮｏ．３のネットワーク番号「３」を転送先ネットワーク番号として出力する。【０３７２】
また、処理対象のＰＬＣπのつぎのデータ（データ１）に記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣであるＰＬＣαのコントローラ間ネットワークＮｏ．１における局番号「１」を、オフラインネットワーク構成情報から取得し、中継先局番号として出力する。この結果が、図５３−１の行５０３に示されている。【０３７３】
その後、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣαを処理の対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐωｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣωの１つ前のデータ（データ５）に記載されるコントローラ間ネットワークＮｏ．３のネットワーク番号「３」を転送先ネットワーク番号として出力する。【０３７４】
また、処理対象のＰＬＣαのつぎのデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣαのつぎのつぎのデータ（データ４）に記載されるＰＬＣであるＰＬＣμの情報系ネットワークＮｏ．５における局番号「３」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−２の行５０５に示されている。【０３７５】
その後、処理対象のＰＬＣαのつぎのつぎのデータの記載されるＰＬＣであるＰＬＣμを処理の対象ＰＬＣとしてＣ１処理を実行する。ＰＬＣμを処理対象としたＣ１処理では、接続経路Ｐωｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣβを処理対象としたＣ１処理を終了する。【０３７６】
（２−８−２）逆接続経路
ついで、接続経路Ｐωｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα→情報系ネットワークＮｏ．５→ＰＬＣμ→コントローラ間ネットワークＮｏ．３→ＰＬＣω」を逆順にした「ＰＬＣω→コントローラ間ネットワークＮｏ．３→ＰＬＣμ→情報系ネットワークＮｏ．５→ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐωｇ’とする。そして、この逆接続経路Ｐωｇ’における起点ＰＬＣであるＰＬＣωのつぎのつぎのデータに記載されるＰＬＣμを処理対象として選択し、Ｃ１処理を実行する。【０３７７】
ＰＬＣμを処理対象としたＣ１処理では、接続経路Ｐωｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣπの１つ前のデータに記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を転送先ネットワーク番号として出力する。また、処理対象のＰＬＣμのつぎのデータに記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣμのつぎのつぎのデータに記載されるＰＬＣであるＰＬＣαの情報系ネットワークＮｏ．５における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−４の行５０７に示されている。【０３７８】
ついで、処理対象のＰＬＣμのつぎのつぎのデータ記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐωｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、接続経路ＰＬＣαを処理対象としたＣ１処理を終了する。【０３７９】
（２−９）接続経路Ｐψｇ
図５２の接続経路から接続経路Ｐψｇを選択し、この接続経路Ｐψｇに関して処理を行うと、（２−８）の接続経路Ｐωｇと同様の結果となる。すなわち、算出されるルーチングパラメータが同じであり、新たに出力されるルーチングパラメータはない。【０３８０】
このようにして求められた図５３−１〜図５４−４のルーチングパラメータは、それぞれの名称に示されるＰＬＣに対して設定される。すなわち、図５３−１は、ＰＬＣπに設定されるルーチングパラメータであり、図５３−２は、ＰＬＣαに設定されるルーチングパラメータであり、図５３−３は、ＰＬＣβに設定されるルーチングパラメータであり、図５３−４は、ＰＬＣμに設定されるルーチングパラメータである。【０３８１】
この実施の形態６によれば、人手によって計算されていた処理を、制御システムエンジニアリング装置１００で実行させるようにしたので、ルーチングパラメータを算出する手間が省けるという効果を有する。また、既存の制御システムの構成に対して追加変更を行う場合や、新しく制御システムを構築する場合にも容易にＰＬＣへのルーチングパラメータを含むネットワークパラメータを設定することができるという効果も有する。さらに、接続経路が表示されるので、算出された各ＰＬＣのルーチングパラメータがどの接続経路のためのものかについてを確認し易くなるという効果も有する。【０３８２】
実施の形態７．
この実施の形態７では、既に稼動している制御システムのネットワークパラメータを変更する際に、それに伴うルーチングパラメータの変更を含め、各ＰＬＣのネットワークパラメータを自動で書換えることができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。【０３８３】
図５４は、この発明にかかる制御システムエンジニアリング装置の実施の形態７の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、通信部１１１と、表示部１１２と、起点ＰＬＣ指定部１１３と、オンラインネットワーク構成情報収集部１１４と、オンライン接続経路保持部１１５と、オンラインネットワーク構成情報保持部１１６と、表示オブジェクト座標算出部１１７と、システム構成表示部１１８と、システム構成編集部１２１と、オフラインネットワーク構成情報保持部１２２と、接続経路解析選択部１２３と、オフライン接続経路保持部１２５と、接続経路表示部１２０と、パラメータ一括書換部１２８と、これらの各処理部を制御する制御部１１９と、を備える。より詳細には、この制御システムエンジニアリング装置１００は、実施の形態１の構成と実施の形態６の構成に、スループットモデル保持部１２４を削除し、パラメータ一括書換部１２８をさらに備える構成を有する。【０３８４】
パラメータ一括書換部１２８は、ルーチングパラメータの変更を含めたネットワークパラメータの変更を、制御システムに対して自動的に行う。このとき、パラメータの変更によって制御システムを構成するＰＬＣに対してアクセス不能とならない順番で、ネットワークパラメータの書換えを行う。このパラメータ一括書換部１２８は、請求の範囲におけるパラメータ一括書換手段に対応している。なお、上述した実施の形態とで説明した構成要素と同一の構成要素には、同一の符号を付してその説明を省略している。【０３８５】
（１）処理の概要
図５５−１〜図５５−２は、パラメータ一括書換処理手順の一例を示すフローチャートである。まず、制御システムを構成するいずれかのＰＬＣに接続された制御システムエンジニアリング装置１００は、稼動している制御システムから実施の形態１で説明した方法によって、ネットワーク構成情報を取得する（ステップＳ４５１）。以下、このネットワーク構成情報をオンラインネットワーク構成情報という。【０３８６】
ついで、取得したオンラインネットワーク構成情報に対して、パラメータの変更をオフラインで編集し（ステップＳ４５２）、オフラインネットワーク構成情報を作成する。このとき、１つのネットワークのネットワークパラメータが変更されるものとする。その後、オフラインで編集したオフラインネットワーク構成情報に基づいて、ルーチングパラメータを算出する（ステップＳ４５３）。【０３８７】
ついで、オンラインネットワーク構成情報と、編集したオフラインネットワーク構成情報とを比較して、パラメータに変更のあったネットワークを抽出する（ステップＳ４５４）。そして、抽出されたネットワークの各ＰＬＣに対し、図５５−２に示されるパラメータ書換処理を実行する（ステップＳ４５５）。【０３８８】
図５５−２に移って、抽出されたネットワークに接続するＰＬＣの中で、局番が最も大きい通常局ＰＬＣのパラメータを新しいパラメータに書換える（ステップＳ４７１）。ついで、該ネットワークの管理局ＰＬＣが保持しているネットワークパラメータの総局数を１つ減らす書換処理を行う（ステップＳ４７２）。【０３８９】
その後、該ネットワークの管理局ＰＬＣのネットワークパラメータの総局数は１となったか否かを判定する（ステップＳ４７３）。管理局ＰＬＣのネットワークパラメータの総局数が１でない場合（ステップＳ４７３でＮｏの場合）には、ステップＳ４７１へと戻り、管理局ＰＬＣのネットワークパラメータの総局数が１となるまで上述した処理が繰り返される。【０３９０】
また、管理局ＰＬＣのネットワークパラメータの総局数が１である場合（ステップＳ４７３でＹｅｓの場合）には、該ネットワークの管理局ＰＬＣのパラメータを新しいものに書換え（ステップＳ４７４）、パラメータ書換処理が終了し、図５５−１に処理が戻る。【０３９１】
図５５−１に戻り、ステップＳ４５４で選択されたネットワークが関連するルーチングパラメータを書換えて（ステップＳ４５６）、パラメータ一括書換処理が終了する。【０３９２】
（２）処理の具体例
上述した説明では、パラメータ一括書換処理の概要を述べたものであるので、この処理の具体例について以下で詳細に説明する。ここでは、実施の形態６で算出された図５３−１〜図５３−４のルーチングパラメータで稼動している図２８に示される制御システムに対して、コントローラ間ネットワークＮｏ．３を、コントローラ間ネットワークＮｏ．１０に変更する場合について説明する。【０３９３】
まず、実施の形態１で説明した方法によって、稼動している図２８に示される制御システムのオンラインネットワーク構成情報を取得して、オンラインネットワーク構成情報保持部１１６に格納する。【０３９４】
ついで、実施の形態４で説明した方法によって、システム構成編集部１２１で、オンラインネットワーク構成情報に関して、コントローラ間ネットワークＮｏ．３をコントローラ間ネットワークＮｏ．１０にオフラインで変更したオフラインネットワーク構成情報を作成し、オフラインネットワーク構成情報保持部１２２に格納する。また、変更後のオフラインネットワーク構成情報に基づいて実施の形態６で説明した方法によって、ルーチングパラメータの算出を行う。図５６−１〜図５６−４は、制御システムの構成変更後のルーチングパラメータを示す図である。図５６−１の行５１３と図５６−２の行５１５において、それぞれ図５３−１の５０３と図５３−２の５０５の転送先ネットワーク番号が「３」となっている部分が、「１０」に変更された形となっている。【０３９５】
その後、オンラインネットワーク構成情報とオフラインネットワーク構成情報とを比較して、パラメータに変更のあったネットワークを抽出する。ここでは、オンラインネットワーク構成情報のコントローラ間ネットワークＮｏ．３の部分が、オフラインネットワーク構成情報ではコントローラ間ネットワークＮｏ．１０に変更されたことが抽出される。【０３９６】
ついで、変更のあったコントローラ間ネットワークＮｏ．３に対して、図５５−２に示される各ＰＬＣのパラメータの書換処理を実行する。まず、稼動している制御システムにおいて、コントローラ間ネットワークＮｏ．３に接続するＰＬＣの中で局番が最も大きい通常局ＰＬＣであるＰＬＣψ（局番３）のパラメータを、新しいものへ書換える。すなわち、「コントローラ間ネットワークＮｏ．３の通常局の局番３」から「コントローラ間ネットワークＮｏ．１０の通常局の局番３」へと書換える処理を行う。【０３９７】
ついで、稼動している制御システムにおいて、コントローラ間ネットワークＮｏ．３に接続する管理局ＰＬＣであるＰＬＣμのネットワークパラメータの総局数を１つ減らして書換える。すなわち、コントローラ間ネットワークＮｏ．３の総局数を「３」から「２」に書換える。これによって、この時点で、コントローラ間ネットワークＮｏ．３は、ＰＬＣμとＰＬＣωとが接続した状態で動作しているが、ＰＬＣψは物理的には接続しているもののコントローラ間ネットワークＮｏ．３の局としては動作していない状態となる。【０３９８】
その後、コントローラ間ネットワークＮｏ．３に接続する管理局ＰＬＣであるＰＬＣμのネットワークパラメータの総局数は「１」ではなく、「２」であるため、この時点でコントローラ間ネットワークＮｏ．３に接続するＰＬＣの中で局番が最も大きい通常局ＰＬＣであるＰＬＣω（局番２）のパラメータを、新しいものへ書換える。すなわち、「コントローラ間ネットワークＮｏ．３の通常局の局番２」から「コントローラ間ネットワークＮｏ．１０の通常局の局番２」へと書換える処理を行う。【０３９９】
ついで、コントローラ間ネットワークＮｏ．３に接続する管理局ＰＬＣであるＰＬＣμのネットワークパラメータの総局数を１つ減らす。すなわち、コントローラ間ネットワークＮｏ．３の総局数を「２」から「１」に書換える。これによって、この時点で、コントローラ間ネットワークＮｏ．３は、ＰＬＣμのみが接続した状態で動作しており、ＰＬＣωとＰＬＣψは物理的には接続しているもののコントローラ間ネットワークＮｏ．３の局としては動作していない状態となる。【０４００】
その後、コントローラ間ネットワークＮｏ．３に接続する管理局ＰＬＣであるＰＬＣμのネットワークパラメータの総局数は「１」であるため、この管理局のＰＬＣμのパラメータを新しいものへと書換える。すなわち、「コントローラ間ネットワークＮｏ．３の管理局の局番１」から「コントローラ間ネットワークＮｏ．１０の管理局の局番１」へと書換える。これによって、この時点で、コントローラ間ネットワークＮｏ．３は、コントローラ間ネットワークＮｏ．１０へと変更され、コントローラ間ネットワークＮｏ．１０には、ＰＬＣμとＰＬＣωとＰＬＣψが接続された状態で動作している。以上で図５５−２の各ＰＬＣのパラメータ書換処理を終了する。【０４０１】
その後、変更のあったコントローラ間ネットワークＮｏ．３が関連するルーチングパラメータを書換える処理が行われる。ここでは、コントローラ間ネットワークＮｏ．３は、コントローラ間ネットワークＮｏ．１０に変更されたので、これに伴って、新たに自動算出された図５６−１〜図５６−４に示されるルーチングパラメータの中で、コントローラ間ネットワークＮｏ．１０に関連するルーチングパラメータを書換える。すなわち、ＰＬＣπに対して、図５６−１に示される新たなルーチングパラメータＰπｑを書き込み、ＰＬＣαに対して、図５６−２に示される新たなルーチングパラメータＰαｑを書き込む。そして、変更のあったネットワークはこれ以外にないので、パラメータ一括書換処理を終了する。【０４０２】
この実施の形態７によれば、ネットワークパラメータを変更する際に、ルーチングパラメータを含むネットワークパラメータの変更を自動的に変更のあるＰＬＣへ書込むことができるという効果を有する。従来では、ネットワークパラメータの変更の際には、変更を行う各ＰＬＣに制御システムエンジニアリング装置１００を接続して、個々に新しい設定を書き込む必要があり、非常に手間であったが、この実施の形態７では、ネットワークを介した各ＰＬＣのネットワークパラメータの変更を行うことが可能となるという効果を有する。【０４０３】
実施の形態８．
実施の形態７では、既に稼動しているシステムのうち、１つのネットワークについてパラメータを変更する場合について有効な方法であるが、この実施の形態８では、複数のネットワークについてパラメータを変更する場合について説明する。【０４０４】
複数のネットワークについてパラメータを変更する場合でも、個々の変更に対して順に実施の形態７を適用すれば、ルーチングパラメータの変更を含め、各ＰＬＣのネットワークパラメータを自動で書換えることは可能である。しかし、ルーチングパラメータの書換えを複数回行う必要のあるＰＬＣが存在することがあるため、書換え作業は自動的ではあるものの効率的でない。そこで、この実施の形態８では、これを一括して行う制御システムエンジニアリング装置と制御システムエンジニアリング方法について説明する。【０４０５】
この実施の形態８で用いられる制御システムエンジニアリング装置の構成は、実施の形態７の図５４に示したものと同じである。ただし、パラメータ一括書換部１２８は、最初にルーチングパラメータを含まないネットワークパラメータの更新を、起点ＰＬＣに最も遠いネットワークから起点ＰＬＣに向かって順に行い、その後に、ルーチングパラメータの更新を、起点ＰＬＣに最も近いＰＬＣから順に奥のネットワークのＰＬＣに向かって行う機能を有する。これにより、ネットワークパラメータ更新中の通信不能状態を回避することができる。【０４０６】
（１）処理の概要
図５７−１〜図５７−２は、複数ネットワークのパラメータ一括書換処理手順の一例を示すフローチャートである。まず、制御システムを構成するいずれかのＰＬＣに接続された制御システムエンジニアリング装置１００は、稼動している制御システムからオンラインネットワーク構成情報を取得する（ステップＳ５１１）。この結果は、オンラインネットワーク構成情報保持部１１６に格納される。【０４０７】
ついで、取得したオンラインネットワーク構成情報に対して、パラメータの変更をオフラインで編集し（ステップＳ５１２）、その結果がオフラインネットワーク構成情報としてオフラインネットワーク構成情報保持部１２２に格納される。このとき、２以上のネットワークのネットワークパラメータが変更されるものとする。その後、オフラインで編集したオフラインネットワーク構成情報に基づいて、ルーチングパラメータの算出処理を行う（ステップＳ５１３）。【０４０８】
ついで、ステップＳ５１１で取得したオンラインネットワーク構成情報と、ステップＳ５１２で編集したオフラインネットワーク構成情報とを比較し、パラメータに変更のあったネットワークを抽出する（ステップＳ５１４）。【０４０９】
その後、抽出されたネットワークのうち、オフライン接続経路保持部１２５に格納されているオフライン接続経路情報を参照して、起点ＰＬＣからの接続経路が最も離れているネットワークを１つ選択し（ステップＳ５１５）、図５５−２に示される選択したネットワークの各ＰＬＣのパラメータ書換処理を実行する（ステップＳ５１６）。なお、このＰＬＣのパラメータ書換処理は実施の形態７で既に説明しているので、その説明を省略する。【０４１０】
ステップＳ５１５で選択したネットワークについて図５３−２のＰＬＣのパラメータ書換処理が終了すると、ステップＳ５１４で抽出したパラメータに変更のあったネットワークの全てを選択したか否かを判定する（ステップＳ５１７）。変更のあったネットワークの全てを選択していない場合（ステップＳ５１７でＮｏの場合）には、抽出したネットワークのうち、起点ＰＬＣからつぎに離れているネットワークを１つ選択する（ステップＳ５１８）。そして、ステップＳ５１６へと戻り、変更のあったネットワークの全てを、起点ＰＬＣからの接続経路が離れている順に選択するまで、上述した処理が繰り返し実行される。また、変更のあったネットワークの全てを選択した場合（ステップＳ５１７でＹｅｓの場合）には、図５７−２のルーチングパラメータ書換処理を行う（ステップＳ５１９）。【０４１１】
図５７−２に移って、ネットワークパラメータの書換処理を行ったネットワークが関連するＰＬＣのうち、ルーチングパラメータを書換える必要のあるＰＬＣを抽出する（ステップＳ５３１）。抽出したＰＬＣの中で、オフライン接続経路保持部１２５に保持されている接続経路の短いＰＬＣから順にルーチングパラメータを書換える（ステップＳ５３２）。以上により、ルーチングパラメータ書換処理が終了し、パラメータ一括書換処理が終了する。【０４１２】
（２）処理の具体例
上述した説明では、複数ネットワークのパラメータ一括書換処理の概要を述べたものであるので、この処理の具体例について以下で詳細に説明する。ここでは、実施の形態６で算出された図５３−１〜図５３−４のルーチングパラメータで稼動している図２８に示される制御システムに対して、コントローラ間ネットワークＮｏ．１をコントローラ間ネットワークＮｏ．９に変更し、コントローラ間ネットワークＮｏ．３を、コントローラ間ネットワークＮｏ．１０に変更する場合について説明する。【０４１３】
まず、実施の形態１で説明した方法によって、稼動している図２８に示される制御システムのオンラインネットワーク構成情報を取得して、オンラインネットワーク構成情報保持部１１６に格納する。【０４１４】
ついで、実施の形態４で説明した方法によって、システム構成編集部１２１で、コントローラ間ネットワークＮｏ．１をコントローラ間ネットワークＮｏ．９に、コントローラ間ネットワークＮｏ．３をコントローラ間ネットワークＮｏ．１０にそれぞれオフラインで変更したオフラインネットワーク構成情報を、オフラインネットワーク構成情報保持部１２２に格納する。また、変更後のオフラインネットワーク構成情報に基づいて実施の形態６で説明した方法によって、ルーチングパラメータの算出を行う。図５８−１〜図５８−４は、制御システムの構成変更後のルーチングパラメータを示す図である。【０４１５】
その後、オンラインネットワーク構成情報とオフラインネットワーク構成情報とを比較して、パラメータに変更のあったネットワークを抽出する。ここでは、オンラインネットワーク構成情報のコントローラ間ネットワークＮｏ．１，Ｎｏ．３の部分が、オフラインネットワーク構成情報ではコントローラ間ネットワークＮｏ．９，Ｎｏ．１０にそれぞれ変更されたことが抽出される。【０４１６】
ついで、変更のあったそれぞれのコントローラ間ネットワークに対して、図５５−２に示される各ＰＬＣのパラメータ書換処理を実行する。つまり、最初に、変更のあったコントローラ間ネットワークＮｏ．１に対して、各ＰＬＣのパラメータ書換処理を実施し、ついで、変更のあったコントローラ間ネットワークＮｏ．３に対して、各ＰＬＣのパラメータ書換処理を実施する。【０４１７】
その後、図５７−２に示される変更のあったコントローラ間ネットワークＮｏ．１，Ｎｏ．３に関連するルーチングパラメータの書換処理を、以下に示すように実施する。【０４１８】
まず、新たに算出された図５８−１〜図５８−４のルーチングパラメータの中で、ルーチングパラメータを書換える必要のあるＰＬＣを抽出する。ここでは、コントローラ間ネットワークＮｏ．１がコントローラ間ネットワークＮｏ．９に変更され、コントローラ間ネットワークＮｏ．３がコントローラ間ネットワークＮｏ．１０に変更されたので、これらを含む現在稼動している図５３−１〜図５３−４に示されるすべてのルーチングパラメータを書換える必要がある。すなわち、ＰＬＣπに対して図５８−１に示される新たなルーチングパラメータを書き込み、ＰＬＣαに対して図５８−２に示される新たなルーチングパラメータを書き込み、ＰＬＣβに対して図５８−３に示される新たなルーチングパラメータを書き込み、ＰＬＣμに対して図５８−４に示される新たなルーチングパラメータＰμｑを書き込む必要がある。【０４１９】
これらのルーチングパラメータの書き込み処理を行う際に、これらＰＬＣの中で、オフライン接続経路保持部１２５に保持されている接続経路が短いものから順に、ルーチングパラメータを書換える。ここで、オフライン接続経路保持部１２５に保持されているオフライン接続経路は、オフラインで編集したネットワークシステム構成に対してルーチングパラメータを算出する際に用いられた接続経路である。ここでは、直接接続しているＰＬＣπが、最も接続経路が短いので、最初に、ＰＬＣπに対して図５８−１の新たなルーチングパラメータを書き込む。【０４２０】
その後、オフライン接続経路保持部１２５を参照して、この中で最も接続経路が短いものを抽出する。この中で最も接続経路が短いＰＬＣはＰＬＣαである。そのため、つぎにＰＬＣαに対して図５８−２の新たなルーチングパラメータを書き込む。【０４２１】
同様に、つぎに接続経路が短いのはＰＬＣβおよびＰＬＣμであり、ＰＬＣβに対して図５８−３の新たなルーチングパラメータを書き込み、ＰＬＣμに対して図５８−４の新たなルーチングパラメータを書き込む。以上によって、ルーチングパラメータの書換処理および複数ネットワークのパラメータ一括書換処理が終了する。【０４２２】
ここで、ネットワークパラメータを書換えるＰＬＣに対して順に実施の形態７の方法を適用した場合には、ルーチングパラメータの変更を含め、各ＰＬＣのネットワークパラメータを自動で書換えることは可能であるが、ルーチングパラメータの書換えを複数回行う必要のあるＰＬＣが存在することがある。すなわち、コントローラ間ネットワークＮｏ．１がコントローラ間ネットワークＮｏ．９に変わったことを反映したルーチングパラメータをＰＬＣπに書き込んだ後、コントローラ間ネットワークＮｏ．３がコントローラ間ネットワークＮｏ．１０に変わったことを反映したルーチングパラメータを再度ＰＬＣπに書き込む必要があった。しかし、上記した方法を用いることによって、これらのルーチングパラメータを一括して書き込むことが可能となり、ネットワークパラメータの変更に係るルーチングパラメータの変更を各ＰＬＣへ書き込む作業が効率化される。【０４２３】
この実施の形態８によれば、オフラインで制御システムを構成する２以上のネットワークのネットワークパラメータが変更された場合でも、最初に起点ＰＬＣから接続経路の遠いネットワークから順にネットワークパラメータのみを変更し、その後に起点ＰＬＣから接続経路の近い順にルーチングパラメータを変更するようにしたので、ネットワークパラメータの書換えを一括で行うことができるという効果を有する。【０４２４】
なお、上述した実施の形態１〜８では、プログラマブルコントローラが制御装置としてネットワークに接続されてなる制御システムの場合を例に挙げて説明したが、これに限られる趣旨ではない。たとえば、プログラマブルコントローラのほかに、数値制御装置やモーションコントローラ、ロボットコントローラなどの制御装置がネットワークに接続されてなる制御システムについても同様に適用することができる。【０４２５】
また、上述した制御システムエンジニアリング方法は、その処理手順を書込んだプログラムを、ＣＰＵ（中央演算処理装置）を有するパーソナルコンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。この場合、コンピュータのＣＰＵ（制御手段）が、プログラムにしたがって、上述したプログラム作成支援方法の各処理工程を実行することになる。これらのプログラムは、ハードディスク、フロッピー（登録商標）ディスク、ＣＤ（Compact  Disk）−ＲＯＭ（Read  Only  Memory）、ＭＯ（Magneto-Optical  disk）、ＤＶＤ（Digital  Versatile  DiskまたはDigital  Video  Disk）などのコンピュータで読取可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、これらのプログラムは、インタネットなどのネットワーク（通信回線）を介して配布することもできる。
【産業上の利用可能性】
【０４２６】
以上のように、この発明にかかる制御システムエンジニアリング装置は、生産設備などに設けられる制御システムにおけるシステム構成や接続経路の把握に有用である。
【図１】
2008146380.tif 000003
【図２】
2008146380.tif 000004
【図３】
2008146380.tif 000005
【図４−１】
2008146380.tif 000006
【図４−２】
2008146380.tif 000007
【図５−１】
2008146380.tif 000008
【図５−２】
2008146380.tif 000009
【図６−１】
2008146380.tif 000010
【図６−２】
2008146380.tif 000011
【図７−１】
2008146380.tif 000012
【図７−２】
2008146380.tif 000013
【図７−３】
2008146380.tif 000014
【図７−４】
2008146380.tif 000015
【図８】
2008146380.tif 000016
【図９−１】
2008146380.tif 000017
【図９−２】
2008146380.tif 000018
【図９−３】
2008146380.tif 000019
【図１０】
2008146380.tif 000020
【図１１】
2008146380.tif 000021
【図１２】
2008146380.tif 000022
【図１３】
2008146380.tif 000023
【図１４−１】
2008146380.tif 000024
【図１４−２】
2008146380.tif 000025
【図１４−３】
2008146380.tif 000026
【図１４−４】
2008146380.tif 000027
【図１４−５】
2008146380.tif 000028
【図１５】
2008146380.tif 000029
【図１６−１】
2008146380.tif 000030
【図１６−２】
2008146380.tif 000031
【図１６−３】
2008146380.tif 000032
【図１６−４】
2008146380.tif 000033
【図１６−５】
2008146380.tif 000034
【図１７】
2008146380.tif 000035
【図１８】
2008146380.tif 000036
【図１９】
2008146380.tif 000037
【図２０】
2008146380.tif 000038
【図２１】
2008146380.tif 000039
【図２２−１】
2008146380.tif 000040
【図２２−２】
2008146380.tif 000041
【図２３−１】
2008146380.tif 000042
【図２３−２】
2008146380.tif 000043
【図２３−３】
2008146380.tif 000044
【図２４】
2008146380.tif 000045
【図２５−１】
2008146380.tif 000046
【図２５−２】
2008146380.tif 000047
【図２５−３】
2008146380.tif 000048
【図２５−４】
2008146380.tif 000049
【図２５−５】
2008146380.tif 000050
【図２６】
2008146380.tif 000051
【図２７】
2008146380.tif 000052
【図２８】
2008146380.tif 000053
【図２９】
2008146380.tif 000054
【図３０】
2008146380.tif 000055
【図３１】
2008146380.tif 000056
【図３２】
2008146380.tif 000057
【図３３】
2008146380.tif 000058
【図３４−１】
2008146380.tif 000059
【図３４−２】
2008146380.tif 000060
【図３４−３】
2008146380.tif 000061
【図３４−４】
2008146380.tif 000062
【図３４−５】
2008146380.tif 000063
【図３５】
2008146380.tif 000064
【図３６−１】
2008146380.tif 000065
【図３６−２】
2008146380.tif 000066
【図３６−３】
2008146380.tif 000067
【図３７−１】
2008146380.tif 000068
【図３７−２】
2008146380.tif 000069
【図３７−３】
2008146380.tif 000070
【図３７−４】
2008146380.tif 000071
【図３７−５】
2008146380.tif 000072
【図３８】
2008146380.tif 000073
【図３９】
2008146380.tif 000074
【図４０】
2008146380.tif 000075
【図４１】
2008146380.tif 000076
【図４２】
2008146380.tif 000077
【図４３−１】
2008146380.tif 000078
【図４３−２】
2008146380.tif 000079
【図４３−３】
2008146380.tif 000080
【図４３−４】
2008146380.tif 000081
【図４３−５】
2008146380.tif 000082
【図４４−１】
2008146380.tif 000083
【図４４−２】
2008146380.tif 000084
【図４４−３】
2008146380.tif 000085
【図４４−４】
2008146380.tif 000086
【図４４−５】
2008146380.tif 000087
【図４５−１】
2008146380.tif 000088
【図４５−２】
2008146380.tif 000089
【図４５−３】
2008146380.tif 000090
【図４５−４】
2008146380.tif 000091
【図４５−５】
2008146380.tif 000092
【図４６−１】
2008146380.tif 000093
【図４６−２】
2008146380.tif 000094
【図４６−３】
2008146380.tif 000095
【図４６−４】
2008146380.tif 000096
【図４６−５】
2008146380.tif 000097
【図４７】
2008146380.tif 000098
【図４８】
2008146380.tif 000099
【図４９】
2008146380.tif 000100
【図５０】
2008146380.tif 000101
【図５１−１】
2008146380.tif 000102
【図５１−２】
2008146380.tif 000103
【図５２】
2008146380.tif 000104
【図５３−１】
2008146380.tif 000105
【図５３−２】
2008146380.tif 000106
【図５３−３】
2008146380.tif 000107
【図５３−４】
2008146380.tif 000108
【図５４】
2008146380.tif 000109
【図５５−１】
2008146380.tif 000110
【図５５−２】
2008146380.tif 000111
【図５６−１】
2008146380.tif 000112
【図５６−２】
2008146380.tif 000113
【図５６−３】
2008146380.tif 000114
【図５６−４】
2008146380.tif 000115
【図５７−１】
2008146380.tif 000116
【図５７−２】
2008146380.tif 000117
【図５８−１】
2008146380.tif 000118
【図５８−２】
2008146380.tif 000119
【図５８−３】
2008146380.tif 000120
【図５８−４】
2008146380.tif 000121
【手続補正書】
【提出日】平成19年11月21日(2007.11.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
（削除）
【請求項２】
（削除）
【請求項３】
（削除）
【請求項４】
複数の制御装置がネットワークを介して接続された制御システムの中の１つの制御装置と接続する通信手段と、
前記通信手段と接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、
前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、
前記制御システムの構成要素をオブジェクトとし、前記オンラインネットワーク構成情報収集手段で得られた各制御装置の構成と、各制御装置とネットワークとの接続関係を、オブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標とから、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
を備え、
前記オブジェクト座標算出手段は、
前記オンラインネットワーク構成情報からネットワークを抽出し、抽出したネットワークを種類ごとに分類し、分類したネットワーク種類ごとに、ネットワークに接続する制御装置のうちフィールドネットワークにも接続する制御装置の数または割合が多いネットワークほど下位に配置し、他の情報系ネットワークのみ接続する制御装置の数または割合が多いネットワークほど上位に配置し、他のコントローラ間ネットワークにも接続する制御装置の数または割合が多いネットワークほど上位に配置する処理を行うネットワークグリッド配置機能と、
同じネットワークに接続する制御装置グリッドをより近くに配置する制御装置グリッド配置機能と、を備えることを特徴とする制御システムエンジニアリング装置。
【請求項５】
複数の制御装置がネットワークを介して接続された制御システムの中の１つの制御装置と接続する通信手段と、
前記通信手段と接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、
前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むネットワーク構成情報を収集する機能と、前記起点制御装置から前記制御システム中の各制御装置までのオンライン接続経路を収集する機能と、を有するオンラインネットワーク構成情報収集手段と、
前記制御システムの構成要素をオブジェクトとし、前記オンラインネットワーク構成情報収集手段で得られた各制御装置の構成と、各制御装置とネットワークとの接続関係を、オブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標とから、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
前記オンラインネットワーク構成情報収集手段によって収集された各制御装置までのオンライン接続経路を用いて、前記起点制御装置から前記各制御装置までのオンライン接続経路を前記システム構成に重ねて表示する接続経路表示手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項６】
（削除）
【請求項７】
（削除）
【請求項８】
（削除）
【請求項９】
複数の制御装置がネットワークを介して接続される制御システムにおける前記制御装置の構成と、前記制御装置のネットワークとの接続関係と、を示すオフラインネットワーク構成情報がオフラインで編集されるシステム構成編集手段と、
前記オフラインネットワーク構成情報に基づいて各制御装置の構成と各制御装置とネットワークとの接続関係を、前記制御システムの構成要素を表すオブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標から、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
前記オフラインネットワーク構成情報からネットワークを抽出し、
前記表示オブジェクト座標算出手段は、
抽出したネットワークを種類ごとに分類し、分類したネットワーク種類ごとに、ネットワークに接続する制御装置のうちフィールドネットワークにも接続する制御装置の数または割合が多いネットワークほど下位に配置し、他の情報系ネットワークのみ接続する制御装置の数または割合が多いネットワークほど上位に配置し、他のコントローラ間ネットワークにも接続する制御装置の数または割合が多いネットワークほど上位に配置する処理を行うネットワークグリッド配置機能と、
同じネットワークに接続する制御装置グリッドをより近くに配置する前記制御装置グリッド配置機能と、を備えることを特徴とする制御システムエンジニアリング装置。
【請求項１０】
複数の制御装置がネットワークを介して接続される制御システムにおける前記制御装置の構成と、前記制御装置のネットワークとの接続関係と、を示すオフラインネットワーク構成情報がオフラインで編集されるシステム構成編集手段と、
前記オフラインネットワーク構成情報に基づいて各制御装置の構成と各制御装置とネットワークとの接続関係を、前記制御システムの構成要素を表すオブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標から、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
前記オフラインネットワーク構成情報に含まれる制御装置の中で、起点制御装置を指定する起点制御装置指定手段と、
前記起点制御装置から前記オフラインネットワーク構成情報に含まれる各制御装置へのオフライン接続経路を解析し、選択する接続経路解析選択手段と、
前記接続経路解析選択手段によって選択されたオフライン接続経路を保持するオフライン接続経路保持手段と、
前記オフライン接続経路を前記システム構成に重ねて表示する接続経路表示手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項１１】
（削除）
【請求項１２】
（削除）
【請求項１３】
（削除）
【請求項１４】
（削除）
【請求項１５】
（削除）
【請求項１６】
（削除）
【請求項１７】
複数の制御装置がネットワークを介して接続された制御システム中の１つの制御装置と接続する通信手段と、
前記通信手段に接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、
前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むオンラインネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、
前記オンラインネットワーク構成情報収集手段で収集されたオンラインネットワーク構成情報をオフラインで編集し、オフラインネットワーク構成情報を生成するシステム構成編集手段と、
前記起点制御装置から前記オフラインネットワーク構成情報に含まれる各制御装置へのオフライン接続経路を解析し、選択する接続経路解析選択手段と、
前記接続経路解析選択手段で選択される各オフライン接続経路について、起点制御装置から終点制御装置までの間にネットワークが２以上接続される場合に、前記オフライン接続経路上で複数のネットワーク間を接続する制御装置に対して設定する、前記起点制御装置から前記終点制御装置までのデータ伝送に必要なルーチングパラメータを算出するルーチングパラメータ算出手段と、
前記オンラインネットワーク構成情報と前記オフラインネットワーク構成情報とを比較してパラメータに変更のあったネットワークを抽出し、前記通信手段を介して前記パラメータに変更のあったネットワークに接続する制御装置のパラメータを順次変更した後、ルーチングパラメータが設定されている制御装置のうち、前記パラメータに変更のあったネットワークに関係するルーチングパラメータを、前記ルーチングパラメータ算出手段によって算出されたルーチングパラメータに書換えるパラメータ一括書換手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項１８】
前記パラメータ一括書換手段は、前記パラメータに変更のあったネットワークの通常局の制御装置について局番号の大きい制御装置から順にパラメータを変更し、最後に管理局の制御装置のパラメータを変更した後に、ルーチングパラメータの書換処理を行うことを特徴とする請求項１７に記載の制御システムエンジニアリング装置。
【請求項１９】
前記パラメータ一括書換手段は、前記パラメータに変更のあったネットワークが複数存在する場合に、前記パラメータに変更のあったネットワークについては、前記起点制御装置から最も離れたネットワークの制御装置から前記起点制御装置に近づく方向に順にパラメータの変更を行い、ルーチングパラメータについては、前記起点制御装置に近い制御装置から離れる方向に順にルーチングパラメータの変更を行うことを特徴とする請求項１７に記載の制御システムエンジニアリング装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００３
【補正方法】変更
【補正の内容】
【０００３】
的とする。
課題を解決するための手段
［００１２］
上記目的を達成するため、この発明にかかる制御システムエンジニアリング装置は、複数の制御装置がネットワークを介して接続された制御システムの中の１つの制御装置と接続する通信手段と、前記通信手段と接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、前記制御システムの構成要素をオブジェクトとし、前記オンラインネットワーク構成情報収集手段で得られた各制御装置の構成と、各制御装置とネットワークとの接続関係を、オブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標とから、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、を備え、前記オブジェクト座標算出手段は、前記オンラインネットワーク構成情報からネットワークを抽出し、抽出したネットワークを種類ごとに分類し、分類したネットワーク種類ごとに、ネットワークに接続する制御装置のうちフィールドネットワークにも接続する制御装置の数または割合が多いネットワークほど下位に配置し、他の情報系ネットワークのみ接続する制御装置の数または割合が多いネットワークほど上位に配置し、他のコントローラ間ネットワークにも接続する制御装置の数または割合が多いネットワークほど上位に配置する処理を行うネットワークグリッド配置機能と、同じネットワークに接続する制御装置グリッドをより近くに配置する制御装置グリッド配置機能と、を備えることを特徴とする。
発明の効果
［００１３］
この発明によれば、
ＰＬＣなどの複数の制御機器からなる制御システムの全体のネットワーク構成や制御装置のシステム構成についての情報を、制御システムに接続して収集することで、その接続関係を含めてグラフィカルに表示することができ、制御システムを構成するネットワークや制御装置のシステム構成の全体を把握することが容易になるとともに、収集されたネットワーク構成情報を、使用者が把握しやすいネットワークの順序で表示するようにしたので、制御システムを構成するネットワークや制御装置のシステム構成全体を把握することが容易となるという効果を有する。また、制御システムを構成するネットワークや制御装置のシステム構成全体のステータスを把握することも容易となるという効果を有する。
図面の簡単な説明
［００１４］
［図１］図１は、制御システムのネットワーク構成の一例を模式的に示す図である。
［図２］図２は、制御システムエンジニアリング装置のハードウェア構成を模式的に示すブロック図である。
［図３］図３は、この発明による制御システムエンジニアリング装置の実施の形態１の機能構成を模式的に示すブロック図である。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
情報保持部１１６に出力する。つまり、オンラインネットワーク構成情報収集部１１４は、既にオンラインネットワーク構成情報保持部１１６に格納されているＰＬＣ１０−３の通信ユニット１１−３についての情報と、抽出したＰＬＣ１０−４，１０−１の通信ユニット１１−１Ａ，１１−４Ｂについての情報と、を用いて、図１１のネットワークデータＭ１に示されるコントローラ間ネットワークＮｏ．１についてのネットワーク情報を作成する。
［００８３］
ついで、オンラインネットワーク構成情報収集部１１４は、新たに収集されたＰＬＣ１０−４，１０−１に関するデータのうち全てのデータについて、オンライン接続経路保持部１１５またはオンラインネットワーク構成情報保持部１１６に対してデータを出力したか否かを判定する。ここでは、ＰＬＣ１０−４，１０−１のどちらのデータも、オンライン接続経路保持部１１５とオンラインネットワーク構成情報保持部１１６にまだ出力されていない。そのため、それぞれのＰＬＣ１０−４，１０−１の読み出しを行った経路をそれぞれ接続経路Ｐ４ｃ，Ｐ１ｃとしてオンライン接続経路保持部１１５に出力し、それぞれのＰＬＣ１０−４，１０−１のＰＬＣデータを、オンラインネットワーク構成情報保持部１１６にそれぞれベース情報Ｐ４ｂ，Ｐ１ｂ、接続ネットワーク情報Ｐ４ｎ，Ｐ１ｎとして出力する。
［００８４］
その後、オンラインネットワーク構成情報収集部１１４は、情報収集を行ったＰＬＣ１０−４，１０−１に関してネットワークをさらに情報収集できるか判定する。なお、ここでは、ネットワークをさらに情報収集できるか判定を行うＰＬＣがＰＬＣ１０−４（局番２）とＰＬＣ１０−１（局番３）であるが、どちらのＰＬＣから処理を行ってもよい。つまり、処理の優先度はない。この例では、局番順に処理を行うものとし、局番２のＰＬＣ１０−４についての処理が終了した後に、局番３のＰＬＣ１０−１についての処理を行うものとする。
［００８５］
（２−４）ＰＬＣ１０−４
まずＰＬＣ１０−４に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ＰＬＣ１０−４に関しては、図１２の制約に該当しないので、ＰＬＣ１０−４を処理の対象として選択し、図９−２のＡ１処理を実行する。
［００８６］
（２−４−１）Ａ１処理
ＰＬＣ１０−４を処理の対象としたＡ１処理では、ＰＬＣ１０−４の接続するネットワークのうち、コントローラ間ネットワークＮｏ．１のデータは、オンラインネットワーク構成情報保持部１１６に既にネットワークデータＭ１として出力されており、Ａ２処理が実行され
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００５５
【補正方法】変更
【補正の内容】
【００５５】
す図である。また、図３０は、図２８の制御システムについて実施の形態２の方法で作成したグリッドモデルを示す図であり、図３１は、図３０のグリッドモデルに基づいて表示される図２８の制御システムのシステム構成を示す図である。
［０２１９］
実施の形態１の方法によって表示される図２９のシステム構成の表示画面よりも、実施の形態２の方法によって表示される図３１のシステム構成の表示画面の方が、制御システムの上位情報系を構成するネットワークが画面の上方に表示され、システムの下位フィールド系を構成するネットワークが下方に表示され、かつ、同じネットワークに接続するＰＬＣがまとまって表示されるので、分かりやすい。つまり、実施の形態１の方法によって表示される図２９のシステム構成の表示画面よりも、実施の形態２の方法によって表示される図３１の方が、使用者が分かりやすく手で描いた図２８のシステム構成図により近い表現となっている。すなわち、この実施の形態２によれば、人間が分かりやすく手で描いたシステム構成図により近い表現のシステム構成情報を、自動的に表示することが可能となる。
［０２２０］
実施の形態３．
この実施の形態３では、実施の形態１，２において、どの経路を通って目的とするＰＬＣへ接続したのかについて、具体的な接続経路を表示することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。なお、以下の説明では、実施の形態１の結果を用いて説明する。
［０２２１］
図３２は、この発明にかかる制御システムエンジニアリング装置の実施の形態３の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、実施の形態１の図３において、表示オブジェクト座標算出部１１７によって算出された座標を含むデータと、オンライン接続経路保持部１１５で保持されている接続経路と、から、起点ＰＬＣから目的とするＰＬＣまでの接続経路を表示部１１２に表示する接続経路表示部１２０をさらに備える。この接続経路表示部１２０は、請求の範囲における接続経路表示手段に対応している。なお、実施の形態１と同一の構成要素には同一の符号を付して、その説明を省略している。
［０２２２］
つぎに、このような構成を有する制御システムエンジニアリング装置１００における起点ＰＬＣから対象となるＰＬＣまでの接続経路の表示処理について説明する。図３３は
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００５６
【補正方法】変更
【補正の内容】
【００５６】
、接続経路表示処理手順の一例を示すフローチャートである。また、図３４−１〜図３４−５は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である。なお、この処理は、実施の形態１，２において、システム構成情報の表示処理が行われている状態で実施されるものである。
［０２２３］
まず、接続経路表示部１２０は、起点ＰＬＣのオブジェクトの表示部１１２上の位置を表示オブジェクト座標算出部１１７から取得し、起点ＰＬＣのオブジェクト全体を強調表示する（ステップＳ２７１、図３４−１）。
［０２２４］
ついで、オンライン接続経路保持部１１５に格納される接続経路から指定されたまたは１つの接続経路情報を選択する（ステップＳ２７２）。選択した接続経路情報中の起点ＰＬＣからデータ１に記載されるネットワークへの配線を選択する（ステップＳ２７３）。そして、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２７４、図３４−２）。
［０２２５］
その後、接続経路表示部１２０は、接続経路情報中のデータ１に記載されるネットワークと、データ２に記載されるＰＬＣとを結ぶ配線を選択する（ステップＳ２７５）。そして、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２７６、図３４−３）。
［０２２６］
ついで、接続経路表示部１２０は、強調描画された２つの配線間のネットワーク部分を強調描画する（ステップＳ２７７、図３４−４）。その後、データ２に記載されるＰＬＣが、接続経路情報の名称のＰＬＣ（終点ＰＬＣ）であるか否かを判定する（ステップＳ２７８）。
［０２２７］
データ２に記載されるＰＬＣが終点ＰＬＣでない場合（ステップＳ２７８でＮｏの場合）には、接続経路表示部１２０は、ｎ＝１、ｍ＝２を設定し（ステップＳ２７９）、接続経路情報中のデータ２ｎに記載されるＰＬＣと、データ２ｎ＋１に記載されるネットワークとを結ぶ配線を選択する（ステップＳ２８０）。その後、この配線に対応する表示部１１２上での位置を表示オブジェクト座標演算部から取得し、強調描画する（ステップＳ２８１）。
［０２２８］
ついで、接続経路表示部１２０は、接続経路情報中のデータ２ｍ−１に記載されるネットワークと、２ｍに記載されるＰＬＣとを結ぶ配線を選択する（ステップＳ２８２）。その後、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２８３）。そして、接続経路表示部１２０は、強調
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００６６
【補正方法】変更
【補正の内容】
【００６６】
以上により、（２−６）のＰＬＣ１０−４を処理の対象としたＢ１処理を終了する。
［０２６６］
（２−１２）ＰＬＣ１０−１について
（２−３）でコントローラ間ネットワークＮｏ．１に接続するＰＬＣの１つとして収集されたＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ１ｇを出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−１までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＝２．１
となるので、出力時にこのスループット値を入力する。この結果が、図３７−４に示されている。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、ＰＬＣ１０−１を処理の対象として図３６−２のＢ１処理を実行する。
［０２６７］
（２−１３）ＰＬＣ１０−１に接続されるネットワーク
ＰＬＣ１０−１を処理の対象としたＢ１処理では、ＰＬＣ１０−１が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されている接続ネットワーク情報Ｐ１ｎ中のネットワーク情報を読み出す処理を行う。ここでは、ＰＬＣ１０−１に接続されるネットワークとして、コントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２および情報系ネットワークＮｏ．３が収集される。その後、収集したネットワークまでの接続経路を作成し、その接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。
［０２６８］
（２−１４）ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．１
コントローラ間ネットワークＮｏ．１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．１」となり、同じネットワークが複数出現するので、ループとなっている。そのため、図３６−３のＢ２処理を実行しない。
［０２６９］
（２−１５）ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００７９
【補正方法】変更
【補正の内容】
【００７９】
テップＳ３７５）、最適接続経路としてオフライン接続経路保持部１２５に出力する（ステップＳ３７６）。実施の形態４で用いたスループットモデルを用いているので、ここでは、合計スループット評価値の小さいものが最適なものとなる。上記した結果より、ＰＬＣ１０−１を起点ＰＬＣとした場合の接続経路データの合計スループット評価値が最も小さいので、図４３−１に示される最適接続経路を最適接続経路としてオフライン接続経路保持部１２５に出力する。以上により、最適接続経路算出処理が終了する。
［０３１６］
その後、接続経路表示部１２０によって、最適接続経路算出部１２６によって算出された最適接続経路に基づいて、最適接続経路がオフラインのシステム構成図に表示される。図４７は、最適接続経路の表示画面の一例を示す図である。この図は、図４３−１に示される最適接続経路に基づいて、実施の形態３の接続経路表示処理を用いて接続経路を表示したものである。これにより、制御システムエンジニアリング装置１００の使用者は、ＰＬＣ１０−１に制御システムエンジニアリング装置１００を接続すれば、制御システムを構成する全てのＰＬＣに接続することができ、高いスループットでデータの転送を行うことができることを知ることができる。
［０３１７］
この実施の形態５によれば、オフラインで構築された制御システムのネットワークにおいて、制御システム内の全てのＰＬＣにアクセスでき、かつ高速な通信ができる位置を算出することができる。その結果、この位置に制御システムエンジニアリング装置１００を接続することで、設定データのダウンロードやアップロード作業に必要な時間を削減することができるという効果を有する。
［０３１８］
実施の形態６．
この実施の形態６では、起点ＰＬＣからそれぞれのＰＬＣへの接続経路の途中のＰＬＣに、受け取ったデータを目的とするＰＬＣへルーチングするためのルーチングパラメータを自動的に算出し、設定することができる制御システムエンジニアリング装置と制御システムエンジニアリング方法について説明する。ここでは、最初に制御システムにおけるルーチングパラメータについて簡単に説明し、その後に実施の形態の内容を説明する。
［０３１９］
制御システムにおけるルーチング機能とは、複数のネットワークからなるシステムにおいて、複数のネットワークにまたがるデータを、他のネットワーク番号の局へトランジ
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００８１
【補正方法】変更
【補正の内容】
【００８１】
ｏ．２のブリッジの役割をするＰＬＣ１０−４およびネットワークＮｏ．２とネットワークＮｏ．３のブリッジの役割をするＰＬＣ１０−１３にルーチングパラメータを設定する必要がある。以下では、各局のルーチングパラメータの設定について説明する。
［０３２４］
（１）ネットワークＮｏ．１のＰＬＣ１０−３
このＰＬＣ１０−３にはルーチングパラメータとして、転送先ネットワーク番号（３）および中継局の通信ユニット（１Ｎｓ４）と、そこまでの中継ネットワーク番号（１）と、が設定される。
［０３２５］
（２）ネットワークＮｏ．１のＰＬＣ１０−４
このＰＬＣ１０−４にはルーチングパラメータとして、転送先ネットワーク番号（３）および中継局の通信ユニット（２Ｎｓ４）とそこまでの中継ネットワーク番号（２）と、が設定される。なお、つぎに説明する（３）のＰＬＣ１０−１３でネットワークＮｏ．２からネットワークＮｏ．１へのデータ伝送のためのルーチングパラメータが設定されるので、このＰＬＣ１０−４での戻り用のルーチングパラメータについては不要である。
［０３２６］
（３）ネットワークＮｏ．２のＰＬＣ１０−１３
このＰＬＣ１０−１３では、転送先への設定は、自局の先が転送先ネットワークＮｏ．３であるので、行き用のルーチングパラメータの設定は不要である。ただし、戻り用のルーチングパラメータとして、転送元ネットワーク番号（１）を転送先ネットワーク番号に設定し、戻るための中継局のネットワークユニット（２Ｎｓ１）と、そこまでの中継ネットワーク番号（２）とを設定する。
［０３２７］
このようにルーチングパラメータを各局に設定することで、ネットワークＮｏ．１のＰＬＣ１０−３からネットワークＮｏ．３のＰＬＣ１０−１２へのデータ伝送が可能となる。
［０３２８］
つぎに、このように設定されたルーチングパラメータを用いたデータ伝送の手順について簡単に説明する。まず、ネットワークＮｏ．１のＰＬＣ１０−３は、ネットワークＮｏ．３のＰＬＣ１０−１３に送信するデータを、ルーチングパラメータに基づいて送信する。すなわち、転送先ネットワーク番号が「３」で、中継先ネットワークが「１」で、中継先局番号が「４」という設定パラメータにしたがって、データを送信する。これにより、ＰＬＣ１０−３からのデータはネットワークＮｏ．１を介してＰＬＣ１０−４（ネットワークＮｏ．１で４局の通信ユニット１Ｎｓ４を有するＰＬＣ）へと送信される。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００８３
【補正方法】変更
【補正の内容】
【００８３】
部１２７は、請求の範囲におけるルーチングパラメータ算出手段に対応している。なお、実施の形態４の図３５と同一の構成要素には同一の符号を付してその説明を省略している。
［０３３４］
図５０は、ルーチングパラメータ算出部のさらに詳細な機能構成を模式的に示すブロック図である。この図に示されるように、ルーチングパラメータ算出部１２７は、接続経路逆転機能１２７１と、転送先ネットワーク番号抽出機能１２７２と、中継先ネットワーク番号抽出機能１２７３と、中継先局番号抽出機能１２７４と、を備える。
［０３３５］
接続経路逆転機能１２７１は、オフライン接続経路保持部１２５に格納される接続経路を抽出し、そのデータを逆順にした逆接続経路を作成する。
［０３３６］
転送先ネットワーク番号抽出機能１２７２は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける転送先ネットワーク番号を抽出する。
［０３３７］
中継先ネットワーク番号抽出部は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける中継先ネットワーク番号を抽出する。
［０３３８］
中継先局番号抽出部は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける中継先局番号を抽出する。
［０３３９］
（１）処理の概要
つぎに、このような構成を有する制御システムエンジニアリング装置１００での、ルーチングパラメータの算出処理について説明する。図５１−１〜図５１−２は、ルーチングパラメータ算出処理手順の一例を示すフローチャートである。まず、起点ＰＬＣ指定部１１３によってトランジェント伝送の要求元ＰＬＣが使用者によって指定される（ステップＳ４１１）。この要求元ＰＬＣを以下では、起点ＰＬＣという。
［０３４０］
ついで、起点ＰＬＣ指定部１１３によって指定された起点ＰＬＣを処理対象として選択し、実施の形態４の図３６−２に示されるＢ２処理を実行して（ステップＳ４１２）、接続経路を取得する（ステップＳ４１３）。
［０３４１］
取得した接続経路から１つの接続経路を選択する（ステップＳ４１４）。ついで、その
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００８８
【補正方法】変更
【補正の内容】
【００８８】
トローラ間ネットワーク２２Ｂのネットワーク番号「２」を転送先ネットワーク番号として出力する。
［０３６４］
また、処理対象のＰＬＣαのつぎのデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣαのつぎのつぎのデータ（データ４）に記載されるＰＬＣであるＰＬＣβの情報系ネットワークＮｏ．５における局番号「２」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−２の行５０４に示されている。
［０３６５］
その後、処理対象のＰＬＣαのつぎのつぎのデータに記載されるＰＬＣであるＰＬＣβを処理の対象ＰＬＣとしてＣ１処理を実行する。ＰＬＣβを処理対象としたＣ１処理では、接続経路Ｐθｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣβを処理対象としたＣ１処理を終了する。
［０３６６］
（２−６−２）逆接続経路
ついで、接続経路Ｐθｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα→情報系ネットワークＮｏ．５→ＰＬＣβ→コントローラ間ネットワークＮｏ．２→ＰＬＣθ」を逆順にした「ＰＬＣθ→コントローラ間ネットワークＮｏ．２→ＰＬＣβ→情報系ネットワークＮｏ．５→ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐθｇ’とする。そして、この逆接続経路Ｐθｇ’における起点ＰＬＣであるＰＬＣθのつぎのつぎのデータに記載されるＰＬＣβを処理対象として選択し、Ｃ１処理を実行する。
［０３６７］
ＰＬＣβを処理対象としたＣ１処理では、接続経路Ｐθｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣπの１つ前のデータに記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を転送先ネットワーク番号として出力する。また、処理対象のＰＬＣβのつぎのデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣβのつぎのつぎのデータ（データ４）に記載されるＰＬＣであるＰＬＣαの情報系ネットワークＮｏ．５における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００９１
【補正方法】変更
【補正の内容】
【００９１】
５３−４の行５０７に示されている。
［０３７８］
ついで、処理対象のＰＬＣμのつぎのつぎのデータに記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐωｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、接続経路ＰＬＣαを処理対象としたＣ１処理を終了する。
［０３７９］
（２−９）接続経路Ｐψｇ
図５２の接続経路から接続経路Ｐψｇを選択し、この接続経路Ｐψｇに関して処理を行うと、（２−８）の接続経路Ｐωｇと同様の結果となる。すなわち、算出されるルーチングパラメータが同じであり、新たに出力されるルーチングパラメータはない。
［０３８０］
このようにして求められた図５３−１〜図５４−４のルーチングパラメータは、それぞれの名称に示されるＰＬＣに対して設定される。すなわち、図５３−１は、ＰＬＣπに設定されるルーチングパラメータであり、図５３−２は、ＰＬＣαに設定されるルーチングパラメータであり、図５３−３は、ＰＬＣβに設定されるルーチングパラメータであり、図５３−４は、ＰＬＣμに設定されるルーチングパラメータである。
［０３８１］
この実施の形態６によれば、人手によって計算されていた処理を、制御システムエンジニアリング装置１００で実行させるようにしたので、ルーチングパラメータを算出する手間が省けるという効果を有する。また、既存の制御システムの構成に対して追加変更を行う場合や、新しく制御システムを構築する場合にも容易にＰＬＣへのルーチングパラメータを含むネットワークパラメータを設定することができるという効果も有する。さらに、接続経路が表示されるので、算出された各ＰＬＣのルーチングパラメータがどの接続経路のためのものかについてを確認し易くなるという効果も有する。
［０３８２］
実施の形態７．
この実施の形態７では、既に稼動している制御システムのネットワークパラメータを変更する際に、それに伴うルーチングパラメータの変更を含め、各ＰＬＣのネットワークパラメータを自動で書換えることができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。
［０３８３］
図５４は、この発明にかかる制御システムエンジニアリング装置の実施の形態７の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１０
【手続補正書】
【提出日】平成21年11月2日(2009.11.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の制御装置がネットワークを介して接続された制御システムの中の１つの制御装置と接続する通信手段と、
前記通信手段と接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、
前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、
前記制御システムの構成要素をオブジェクトとし、前記オンラインネットワーク構成情報収集手段で得られた各制御装置の構成と、各制御装置とネットワークとの接続関係を、オブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標とから、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
を備え、
前記表示オブジェクト座標算出手段は、
前記オンラインネットワーク構成情報からネットワークを抽出し、抽出したネットワークを種類ごとに分類し、分類したネットワーク種類ごとに、ネットワークに接続する制御装置のうちフィールドネットワークにも接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして下位に配置し、他の情報系ネットワークのみ接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして上位に配置し、他のコントローラ間ネットワークにも接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして上位に配置するネットワークグリッド配置機能と、
前記オンラインネットワーク構成情報から制御装置を抽出し、前記制御装置に接続されるネットワークグリッドの下位に矩形状の制御装置グリッドを配置するとともに、同じネットワークに接続する前記制御装置グリッドをより近くに配置し、接続関係のあるネットワークグリッドに対して上方向に矩形状の配線グリッドを前記制御装置グリッドと前記ネットワークグリッドとの間に配置してグリッドモデルを生成する制御装置グリッド配置機能と、
前記オンラインネットワーク構成情報の前記制御装置の構成情報から、前記グリッドモデル中の前記制御装置グリッドのサイズを算出するとともに、前記制御装置のサイズに合わせて関係する配線グリッドとネットワークグリッドのサイズを変更して、グリッドサイズを算出するグリッドサイズ算出機能と、
前記グリッドモデルの所定の位置を基準にして、前記グリッドサイズを用いて前記グリッドモデル中の各グリッドの座標を算出するグリッド座標算出機能と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項２】
複数の制御装置がネットワークを介して接続された制御システムの中の１つの制御装置と接続する通信手段と、
前記通信手段と接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、
前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むネットワーク構成情報を収集する機能と、前記起点制御装置から前記制御システム中の各制御装置までのオンライン接続経路を収集する機能と、を有するオンラインネットワーク構成情報収集手段と、
前記制御システムの構成要素をオブジェクトとし、前記オンラインネットワーク構成情報収集手段で得られた各制御装置の構成と、各制御装置とネットワークとの接続関係を、オブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標とから、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
前記オンラインネットワーク構成情報収集手段によって収集された各制御装置までのオンライン接続経路を用いて、前記起点制御装置から前記各制御装置までのオンライン接続経路を前記システム構成に重ねて表示する接続経路表示手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項３】
複数の制御装置がネットワークを介して接続される制御システムにおける前記制御装置の構成と、前記制御装置のネットワークとの接続関係と、を示すオフラインネットワーク構成情報がオフラインで編集されるシステム構成編集手段と、
前記オフラインネットワーク構成情報に基づいて各制御装置の構成と各制御装置とネットワークとの接続関係を、前記制御システムの構成要素を表すオブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標から、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
を備え、
前記表示オブジェクト座標算出手段は、
前記オフラインネットワーク構成情報からネットワークを抽出し、抽出したネットワークを種類ごとに分類し、分類したネットワーク種類ごとに、ネットワークに接続する制御装置のうちフィールドネットワークにも接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして下位に配置し、他の情報系ネットワークのみ接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして上位に配置し、他のコントローラ間ネットワークにも接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして上位に配置するネットワークグリッド配置機能と、
前記オフラインネットワーク構成情報から制御装置を抽出し、前記制御装置に接続されるネットワークグリッドの下位に矩形状の制御装置グリッドを配置するとともに、同じネットワークに接続する制御装置グリッドをより近くに配置し、接続関係のあるネットワークグリッドに対して上方向に矩形状の配線グリッドを前記制御装置グリッドと前記ネットワークグリッドとの間に配置してグリッドモデルを生成する制御装置グリッド配置機能と、
前記オフラインネットワーク構成情報の前記制御装置の構成情報から、前記グリッドモデル中の前記制御装置グリッドのサイズを算出するとともに、前記制御装置のサイズに合わせて関係する配線グリッドとネットワークグリッドのサイズを変更して、グリッドサイズを算出するグリッドサイズ算出機能と、
前記グリッドモデルの所定の位置を基準にして、前記グリッドサイズを用いて前記グリッドモデル中の各グリッドの座標を算出するグリッド座標算出機能と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項４】
複数の制御装置がネットワークを介して接続される制御システムにおける前記制御装置の構成と、前記制御装置のネットワークとの接続関係と、を示すオフラインネットワーク構成情報がオフラインで編集されるシステム構成編集手段と、
前記オフラインネットワーク構成情報に基づいて各制御装置の構成と各制御装置とネットワークとの接続関係を、前記制御システムの構成要素を表すオブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、
前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標から、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、
前記オフラインネットワーク構成情報に含まれる制御装置の中で、起点制御装置を指定する起点制御装置指定手段と、
前記起点制御装置から前記オフラインネットワーク構成情報に含まれる各制御装置へのオフライン接続経路を解析し、選択する接続経路解析選択手段と、
前記接続経路解析選択手段によって選択されたオフライン接続経路を保持するオフライン接続経路保持手段と、
前記オフライン接続経路を前記システム構成に重ねて表示する接続経路表示手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項５】
複数の制御装置がネットワークを介して接続された制御システム中の１つの制御装置と接続する通信手段と、
前記通信手段に接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、
前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むオンラインネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、
前記オンラインネットワーク構成情報収集手段で収集されたオンラインネットワーク構成情報をオフラインで編集し、オフラインネットワーク構成情報を生成するシステム構成編集手段と、
前記起点制御装置から前記オフラインネットワーク構成情報に含まれる各制御装置へのオフライン接続経路を解析し、選択する接続経路解析選択手段と、
前記接続経路解析選択手段で選択される各オフライン接続経路について、起点制御装置から終点制御装置までの間にネットワークが２以上接続される場合に、前記オフライン接続経路上で複数のネットワーク間を接続する制御装置に対して設定する、前記起点制御装置から前記終点制御装置までのデータ伝送に必要なルーチングパラメータを算出するルーチングパラメータ算出手段と、
前記オンラインネットワーク構成情報と前記オフラインネットワーク構成情報とを比較してパラメータに変更のあったネットワークを抽出し、前記通信手段を介して前記パラメータに変更のあったネットワークに接続する制御装置のパラメータを順次変更した後、ルーチングパラメータが設定されている制御装置のうち、前記パラメータに変更のあったネットワークに関係するルーチングパラメータを、前記ルーチングパラメータ算出手段によって算出されたルーチングパラメータに書換えるパラメータ一括書換手段と、
を備えることを特徴とする制御システムエンジニアリング装置。
【請求項６】
前記パラメータ一括書換手段は、前記パラメータに変更のあったネットワークの通常局の制御装置について局番号の大きい制御装置から順にパラメータを変更し、最後に管理局の制御装置のパラメータを変更した後に、ルーチングパラメータの書換処理を行うことを特徴とする請求項５に記載の制御システムエンジニアリング装置。
【請求項７】
前記パラメータ一括書換手段は、前記パラメータに変更のあったネットワークが複数存在する場合に、前記パラメータに変更のあったネットワークについては、前記起点制御装置から最も離れたネットワークの制御装置から前記起点制御装置に近づく方向に順にパラメータの変更を行い、ルーチングパラメータについては、前記起点制御装置に近い制御装置から離れる方向に順にルーチングパラメータの変更を行うことを特徴とする請求項５に記載の制御システムエンジニアリング装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プログラマブルコントローラなどの複数の制御装置がネットワークを介して接続された制御システムにおいて、システム構成の設定や管理を支援する制御システムエンジニアリング装置に関するものである。
【背景技術】
【０００２】
従来、生産設備の制御を行うために、プログラマブルコントローラ（以下、ＰＬＣという）が用いられている。このＰＬＣに接続し、所定のプログラミングや保守を行うのがエンジニアリング装置である。エンジニアリング装置は一般にパーソナルコンピュータ上で動作し、ＰＬＣが制御を行うためのプログラムの作成を支援するほか、エンジニアリング装置が動作するパーソナルコンピュータをＰＬＣと接続して、作成したプログラムをＰＬＣへ転送したり、ＰＬＣが制御を行っている状態を監視したりする機能を有している。
【０００３】
個々のＰＬＣにはベース（バックプレーン）があり、そのベース上にネットワーク接続用の通信ユニットが取り付けられる。この通信ユニット同士をケーブルなどの通信回線を介して接続することにより、複数のＰＬＣからなる制御システムが構築される。生産設備の規模が大きな制御システムにおいては、多数のＰＬＣが用いられ、これらのＰＬＣ同士を接続するネットワークも複雑な構成になっている。
【０００４】
上記のエンジニアリング装置には、制御システムのネットワーク構成をオフラインで作成し、グラフィック表示するとともに、このグラフィック表示を用いてＰＬＣのモニタやＰＬＣへのプログラムの転送などを行うことが可能なものがある。しかし、複雑な構成を有する制御システムでは、同一の種類のＰＬＣが複数存在することがあり、エンジニアリング装置に表示される画面では、設定するＰＬＣの区別がつかない場合があった。そこで、モニタや設定の対象となるＰＬＣを強調表示する技術が提案されている（たとえば、特許文献１参照）。
【０００５】
【特許文献１】特開２００６−２７７７３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ところで、特許文献１では、エンジニアリング装置の使用者が予め実際のネットワーク構成に基づいて、ＰＬＣの配置をエンジニアリング装置上で行い、各ＰＬＣに設定値を設定することによって、制御システムのネットワーク構成やシステム構成の情報をオフラインで作成していた。複雑な構成の制御システムのネットワーク構成やＰＬＣのシステム構成の情報をオフラインで作成する場合では、ＰＬＣ間の接続などを間違えてしまう可能性があるという問題点があった。
【０００７】
また、特許文献１では、対象となるＰＬＣの場所を強調表示することはできるが、たとえばエンジニアリング装置が接続された位置から対象となるＰＬＣまでの情報伝達を行うための最適な接続経路の求め方については、開示されていなかった。
【０００８】
さらに、複数のネットワークが接続されてなる制御システムにおいて、ネットワークとネットワークとの間に位置するＰＬＣには、複数のネットワークをまたがってデータ伝送を可能とするためのルーチングパラメータが設定されている。しかし、このルーチングパラメータが、どの要求元からどの要求先へのトランジェント伝送のためのものであるのかについて、第三者が理解するのは困難であるという問題点もあった。また、既存の制御システムの構成に対して追加変更を行う場合や新しく制御システムを構築する場合に、システム構築者にとってルーチングパラメータの算出は手作業で行っており、その算出は容易ではないという問題点もあった。
【０００９】
この発明は上記に鑑みてなされたもので、既存の複数のＰＬＣからなる制御システムにおけるネットワーク構成とＰＬＣのシステム構成を収集し、自動的にその構成をグラフィカルに表示することができる制御システムエンジニアリング装置を得ることを目的とする。
【００１０】
また、オフラインでネットワーク構成をグラフィカルに作成する場合において、起点となる位置から目標となる位置のＰＬＣまでの最適な接続経路を自動的に算出し、強調表示することができる制御システムエンジニアリング装置を得ることも目的とする。
【００１１】
さらに、既存の制御システムの構成に対して追加変更を行う場合や、新しく制御システムを構築する場合にも容易にＰＬＣへのルーチングパラメータを含むネットワークパラメータを設定することができる制御システムエンジニアリング装置を得ることを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するため、この発明にかかる制御システムエンジニアリング装置は、複数の制御装置がネットワークを介して接続された制御システムの中の１つの制御装置と接続する通信手段と、前記通信手段と接続した前記制御装置を起点制御装置として指定する起点制御装置指定手段と、前記通信手段を介して、前記制御システムを構成する制御装置から、この制御装置が所持する制御装置の構成、および前記制御装置が接続するネットワークを含むネットワーク構成情報を収集するオンラインネットワーク構成情報収集手段と、前記制御システムの構成要素をオブジェクトとし、前記オンラインネットワーク構成情報収集手段で得られた各制御装置の構成と、各制御装置とネットワークとの接続関係を、オブジェクトを用いて表示手段上に表示するために必要な座標を算出する表示オブジェクト座標算出手段と、前記表示オブジェクト座標算出手段によって算出されたオブジェクトと前記座標とから、前記制御システムのシステム構成を前記表示手段に表示するシステム構成表示手段と、を備え、前記表示オブジェクト座標算出手段は、前記オンラインネットワーク構成情報からネットワークを抽出し、抽出したネットワークを種類ごとに分類し、分類したネットワーク種類ごとに、ネットワークに接続する制御装置のうちフィールドネットワークにも接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして下位に配置し、他の情報系ネットワークのみ接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして上位に配置し、他のコントローラ間ネットワークにも接続する制御装置の数または割合が多いネットワークほどネットワークグリッドとして上位に配置するネットワークグリッド配置機能と、前記オンラインネットワーク構成情報から制御装置を抽出し、前記制御装置に接続されるネットワークグリッドの下位に矩形状の制御装置グリッドを配置するとともに、同じネットワークに接続する前記制御装置グリッドをより近くに配置し、接続関係のあるネットワークグリッドに対して上方向に矩形状の配線グリッドを前記制御装置グリッドと前記ネットワークグリッドとの間に配置してグリッドモデルを生成する制御装置グリッド配置機能と、前記オンラインネットワーク構成情報の前記制御装置の構成情報から、前記グリッドモデル中の前記制御装置グリッドのサイズを算出するとともに、前記制御装置のサイズに合わせて関係する配線グリッドとネットワークグリッドのサイズを変更して、グリッドサイズを算出するグリッドサイズ算出機能と、前記グリッドモデルの所定の位置を基準にして、前記グリッドサイズを用いて前記グリッドモデル中の各グリッドの座標を算出するグリッド座標算出機能と、を備えることを特徴とする。
【発明の効果】
【００１３】
この発明によれば、ＰＬＣなどの複数の制御機器からなる制御システムの全体のネットワーク構成や制御装置のシステム構成についての情報を、制御システムに接続して収集することで、その接続関係を含めてグラフィカルに表示することができ、制御システムを構成するネットワークや制御装置のシステム構成の全体を把握することが容易になるとともに、収集されたネットワーク構成情報を、使用者が把握しやすいネットワークの順序で表示するようにしたので、制御システムを構成するネットワークや制御装置のシステム構成全体を把握することが容易となるという効果を有する。また、制御システムを構成するネットワークや制御装置のシステム構成全体のステータスを把握することも容易となるという効果を有する。
【発明を実施するための最良の形態】
【００１４】
以下に添付図面を参照して、この発明にかかる制御システムエンジニアリング装置の好適な実施の形態を詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。
【００１５】
実施の形態１．
この実施の形態１では、複数のＰＬＣがネットワークを介して接続された生産設備などの制御システムからオンラインでネットワーク構成情報と接続経路情報を収集し、これらのネットワーク構成情報と接続経路情報から制御システムを構成するネットワーク構成やＰＬＣのシステム構成全体を表示する制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。
【００１６】
図１は、制御システムのネットワーク構成の一例を模式的に示す図である。この制御システムは、たとえば生産設備を構成し、複数のＰＬＣがネットワークによって接続される構成を有する。この例では、ＰＬＣ１０−１，１０−２が情報系ネットワーク２１に接続され、ＰＬＣ１０−１，１０−３，１０−４がコントローラ間ネットワーク２２Ａに接続され、ＰＬＣ１０−１，１０−２，１０−５がコントローラ間ネットワーク２２Ｂに接続され、ＰＬＣ１０−４，１０−５がフィールドネットワーク２３で接続されている。また、コントローラ間ネットワーク２２ＡのＰＬＣ１０−３には、ＵＳＢ（Universal  Serial  Bus）ケーブル３０を介してこの発明による制御システムエンジニアリング装置１００が接続される。
【００１７】
ここで、情報系ネットワークとは、ＰＬＣと、パーソナルコンピュータなどの情報処理端末と、が混在して接続されるネットワークであり、イーサネット（登録商標）などを例示することができる。また、コントローラ間ネットワークは、ＰＬＣのみが接続されるネットワークであり、フィールドネットワークは、ＰＬＣと、サーボモータなどのＰＬＣの制御対象と、が混在して接続されるネットワークである。一般的に、フィールドネットワーク２３よりもコントローラ間ネットワーク２２の方が通信速度の速い回線によって構成される。また、情報系ネットワーク２１とコントローラ間ネットワーク２２には、ネットワーク番号を付すことができるが、フィールドネットワーク２３には、ネットワーク番号を付すことができないものとする。この図１では、コントローラ間ネットワーク２２Ａには、ネットワーク番号「Ｎｏ．１」が付され、コントローラ間ネットワーク２２Ｂには、ネットワーク番号「Ｎｏ．２が付され、情報系ネットワーク２１には、ネットワーク番号「Ｎｏ．３」が付されている。
【００１８】
ＰＬＣ１０−１のベースには、通信ユニットとして、コントローラ間ネットワーク２２Ａ，２２Ｂで通信するための通信ユニット１１−１Ａ，１１−１Ｂと、情報系ネットワーク２１で通信するための通信ユニット１１−１Ｃと、が設けられている。
【００１９】
ここで、一般的にネットワークを構成するＰＬＣを局という。また、コントローラ間ネットワークでは、局の中で特にコントローラ間ネットワークの各局を管理する局で、自身の局番号とどれだけの局を管理するのかの情報（総局数）を保持する局を管理局という。この管理局は１つのコントローラ間ネットワークに１つとする。さらに、コントローラ間ネットワークにおけるそれ以外の局で、自身の局番号を保持する局を通常局という。また、コントローラ間ネットワーク２２Ａ，２２Ｂで通信を行うための通信ユニット１１の図中における表記は、以下の意味を有するものとする。たとえば「Ｍ１−３通」の場合には、「Ｍ」はコントローラ間ネットワークで通信を行うための通信ユニットを示し、「１」はコントローラ間ネットワークに付されているネットワーク番号を示し、ハイフン「−」の後の数字「３」はコントローラ間ネットワークにおけるそのＰＬＣ（通信ユニット１１）の局番号を示し、最後の文字は管理局か通常局かを示し、管理局の場合には「管」と表記され、通常局の場合には「通」と表記される。
【００２０】
また、情報系ネットワーク２１で通信を行うための通信ユニット１１の図中の表記、たとえば「Ｅ３−１」で、「Ｅ」は情報系ネットワークで通信を行うための通信ユニットを示し、「３」は情報系ネットワークに付されているネットワーク番号を示し、ハイフン「−」の後の数字「１」は情報系ネットワークにおけるそのＰＬＣ（通信ユニット１１）の局番号を示している。
【００２１】
そのため、通信ユニット１１−１Ａは、コントローラ間ネットワーク２２Ａに対して局番３の通常局として接続される通信ユニットであり、通信ユニット１１−１Ｂは、コントローラ間ネットワーク２２Ｂに対して局番２の通常局として接続される通信ユニットである。また、通信ユニットＥ３−１は、情報系ネットワーク２１に対して局番１として接続される通信ユニットである。
【００２２】
ＰＬＣ１０−２のベースには、通信ユニットとして、コントローラ間ネットワーク２２Ｂで通信するための通信ユニット１１−２Ａと、情報系ネットワーク２１で通信するための通信ユニット１１−２Ｂと、が設けられている。通信ユニット１１−２Ａは、コントローラ間ネットワーク２２Ｂに対して局番１の管理局として接続される通信ユニットである。また、通信ユニット１１−２Ｂは、情報系ネットワーク２１に対して局番２として接続される通信ユニットである。
【００２３】
ＰＬＣ１０−３のベースには、通信ユニットとして、コントローラ間ネットワーク２２Ａで通信するための通信ユニット１１−３が設けられている。この通信ユニット１１−３は、コントローラ間ネットワーク２２Ａに対して局番１の管理局として接続される通信ユニットである。また、ＰＬＣ１０−３のベースには、入出力（Ｉ／Ｏ）ユニット１２−３が設けられているとともに、２つの入出力ユニット１２−３が装着された増設ベース１３−３が取り付けられている。
【００２４】
ＰＬＣ１０−４のベースには、入出力ユニット１２−４のほかに、通信ユニットとして、フィールドネットワーク２３で通信するための通信ユニット１１−４Ａと、コントローラ間ネットワーク２２Ａで通信するための通信ユニット１１−４Ｂと、が設けられている。
【００２５】
ここで、フィールドネットワーク２３で通信を行うための通信ユニット１１の図中の表記、たとえば「Ｃマスタ」で、「Ｃ」はフィールドネットワークで通信を行うための通信ユニットを示し、その後の文字はマスタ局かローカル局かを示し、ローカル局の場合にはさらにその後にフィールドネットワークにおけるそのＰＬＣ（通信ユニット１１）の局番号が付される。なお、マスタ局、ローカル局は、フィールドネットワークにおける局の呼び名であり、マスタ局はコントローラ間ネットワークの管理局に相当し、ローカル局は同じく通常局に相当する。
【００２６】
そのため、通信ユニット１１−４Ａは、フィールドネットワーク２３に対してマスタ局として接続される通信ユニットであり、通信ユニット１１−４Ｂは、コントローラ間ネットワーク２２Ａに対して局番２の通常局として接続される通信ユニットである。
【００２７】
ＰＬＣ１０−５のベースには、入出力ユニット１２−５のほかに、通信ユニットとして、フィールドネットワーク２３で通信するための通信ユニット１１−５Ａと、コントローラ間ネットワーク２２Ｂで通信するための通信ユニット１１−５Ｂと、が設けられている。通信ユニット１１−５Ａは、フィールドネットワーク２３に対して局番１のローカル局として接続される通信ユニットであり、通信ユニット１１−５Ｂは、コントローラ間ネットワーク２２Ｂに対して局番３の通常局として接続される通信ユニットである。
【００２８】
なお、各ＰＬＣは、ＰＬＣを動作させるためにＰＬＣに設定したベース情報や、そのＰＬＣが属するネットワークに関する接続ネットワーク情報、プログラムを含むプロジェクト情報を保持している。ベース情報は、ＰＬＣのベースに装着されているユニットの数（スロット数）やベースの各スロットに装着されているユニットの種類、ベースに接続されている増設ベースに関する情報を含む。また、接続ネットワーク情報は、そのＰＬＣが属するネットワークの種別、ネットワーク番号、ネットワークにおける局番と管理局か通常局かの種別、総局数を含む。なお、以下の説明では、これらのベース情報と接続ネットワーク情報を合わせたものをシステム構成情報ともいう。
【００２９】
図２は、制御システムエンジニアリング装置のハードウェア構成を模式的に示すブロック図である。制御システムエンジニアリング装置１００は、パーソナルコンピュータなどの情報処理端末によって構成され、エンジニアリングツールの処理（すなわち、システム構成の設定および管理の処理）をプログラムに基づいて行うためのマイクロプロセッサ１０１と、その処理に伴う一時データを格納するためのデータ格納メモリ１０２と、ＰＬＣ１０と通信を行うための通信ポート１０３と、エンジニアリグツール（ツリーやアイコンなどのウィンドウ）を表示するための表示部１０４と、キーボードやマウスなどの入力部１０５と、エンジニアリングツールで設定したデータ（すなわち、システム構成の設定）を記憶するハードディスク装置などの記憶部１０６と、がバス１０７を介して接続される構成を有する。
【００３０】
図１の例では、この制御システムエンジニアリング装置１００が、ＰＬＣ１０−３とＵＳＢケーブル３０を介して接続されている。そして、後述する制約の下で、制御システムに関するＰＬＣデータや各ＰＬＣ１０への接続経路などの情報を収集し、システム構成をグラフィカルに表示する。
【００３１】
図３は、この発明にかかる制御システムエンジニアリング装置の実施の形態１の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、通信部１１１と、表示部１１２と、起点ＰＬＣ指定部１１３と、オンラインネットワーク構成情報収集部１１４と、オンライン接続経路保持部１１５と、オンラインネットワーク構成情報保持部１１６と、表示オブジェクト座標算出部１１７と、システム構成表示部１１８と、これらの各処理部を制御する制御部１１９と、を備える。
【００３２】
通信部１１１は、制御システムを構成する１つのＰＬＣと接続し、通信を行う。また、表示部１１２は、システム構成表示部１１８によって作成されたシステム構成情報を表示する手段である。なお、通信部１１１は、請求の範囲における通信手段に対応し、表示部１１２は、同じく表示手段に対応している。
【００３３】
起点ＰＬＣ指定部１１３は、当該制御システムエンジニアリング装置１００をどのＰＬＣに接続するかを指定する。この起点ＰＬＣ指定部１１３による処理は、たとえば、特許第３５８７０９９号公報に記載されているものなどを用いることができる。なお、起点ＰＬＣ指定部１１３は、請求の範囲における起点制御装置指定手段に対応している。
【００３４】
オンラインネットワーク構成情報収集部１１４は、起点ＰＬＣ指定部１１３で指定されたＰＬＣを起点として制御システムを構成するＰＬＣに接続するネットワークを示す接続ネットワーク情報やＰＬＣのシステム構成（ベース上に装着されているユニットの構成）を示すベース情報を含むシステム構成情報と、各ＰＬＣへの接続経路である接続経路情報と、を収集する。また、収集したシステム構成情報から、ネットワークの構成、すなわちネットワークに接続するＰＬＣを示すネットワーク情報を作成する機能も有する。そして、収集した接続ネットワーク情報とベース情報をＰＬＣデータとして、作成したネットワークをネットワークデータとして、オンラインネットワーク構成情報保持部１１６に格納し、収集した接続経路情報をオンライン接続経路保持部１１５に格納する。なお、このオンラインネットワーク構成情報収集部１１４は、請求の範囲におけるオンラインネットワーク構成情報収集手段に対応している。
【００３５】
オンライン接続経路保持部１１５は、オンラインネットワーク構成情報収集部１１４の処理の中で用いられた、それぞれのＰＬＣへの接続経路である接続経路情報を保持する。接続経路情報は、当該制御システムエンジニアリング装置１００が接続されたＰＬＣからあるＰＬＣへアクセスする際の通信経路を示すものである。
【００３６】
オンラインネットワーク構成情報保持部１１６は、オンラインネットワーク構成情報収集部１１４によって収集された接続ネットワーク情報やベース情報と、オンラインネットワーク構成情報収集部１１４によって作成されたネットワーク情報と、をネットワーク構成情報として保持する。上述したように、接続ネットワーク情報は、制御システムを構成するＰＬＣに接続するネットワークを示す情報であり、ベース情報は、各ＰＬＣと同じベース上に装着されるユニットの数（スロット数）と種類とその属性、そのベースに接続される増設ベースとこの増設ベースに装着されるユニットの数と種類とその属性を示す情報である。また、ネットワーク情報は、ネットワークを構成するＰＬＣとその通信ユニットに設定された属性を含む情報である。
【００３７】
表示オブジェクト座標算出部１１７は、オンラインネットワーク構成情報保持部１１６に保持されているネットワーク構成情報を読み出して、その内容を解析し、制御システムを構成するネットワークやＰＬＣのシステム構成全体を表示するために、それぞれの表示オブジェクト（以下、単にオブジェクトともいう）の座標を算出する。この表示オブジェクト座標算出部１１７は、請求の範囲における表示オブジェクト座標算出手段に対応している。
【００３８】
システム構成表示部１１８は、表示オブジェクト座標算出部１１７で算出された座標に基づいて表示オブジェクトを表示部１１２に表示する。このシステム構成表示部１１８は、請求の範囲におけるシステム構成表示手段に対応している。
【００３９】
ここで、表示オブジェクト座標算出部１１７についてさらに詳しく説明する。表示オブジェクト座標算出部１１７は、システム構成表示部１１８で表示処理されるオブジェクトの座標を最終的に算出するまでの中間段階として、グリッドモデルによる配置情報を算出する機能を有する。
【００４０】
このグリッドモデルとは、矩形セルによってオブジェクト間の配置関係を表すモデルのことをいう。ここではグリッドモデルとして、ネットワークグリッドと、ＰＬＣグリッドと、配線グリッドの３種類のグリッドを用いる。
【００４１】
ネットワークグリッドは、ネットワークを表す矩形セル（グリッド）である。ネットワークグリッドの左右に別のグリッドが配置されることはなく、複数のネットワークグリッドが存在する場合には、ネットワークグリッドは上下に配置するものとする。
【００４２】
ＰＬＣグリッドは、ＰＬＣを表す矩形セル（グリッド）である。ＰＬＣグリッドはＰＬＣが接続するネットワークのネットワークグリッドの下に、後述する配線グリッドを伴って配置される。このＰＬＣグリッドは、請求の範囲における制御装置グリッドに対応している。
【００４３】
配線グリッドは、ＰＬＣとネットワークとを接続するための配線を表す矩形セル（グリッド）である。配線グリッドはネットワークグリッドとＰＬＣグリッドとの間に配置され、ＰＬＣグリッドからは必ず上方向にのみ延びるものとする。
【００４４】
また、このほかに、追加したＰＬＣグリッド上部にある全てのネットワークグリッドは、追加した下部のＰＬＣグリッドを包含するように横方向に伸びるものとする。
【００４５】
つぎに、グリッドモデルの具体例を説明する。図４−１〜図７−４は、制御システムの構成の一例と、それに対応するグリッドモデルの一例を示す図である。図４−１に示されるネットワークＮｏ．１に接続するＰＬＣ３を、グリッドモデルで表したものが、図４−２である。この図４−２に示されるように、ネットワークグリッド１の下にＰＬＣグリッド３が配置され、このＰＬＣグリッド３からネットワークグリッド１に向けて配線グリッドが配置される。
【００４６】
図５−１に示されるように、ＰＬＣ３がネットワークＮｏ．１，Ｎｏ．２の２つのネットワークに接続する場合のグリッドモデルは、図５−２に示されるように、ＰＬＣグリッド３から、上下に配置されたネットワークグリッド１とネットワークグリッド２に対して配線グリッドが上方向に配置される。
【００４７】
図６−１に示されるように、２つのＰＬＣ３，４が１つのネットワークＮｏ．１に接続される場合のグリッドモデルは、図６−２に示されるように、左右に並べて配置された２つのＰＬＣグリッド３，４のそれぞれからネットワークグリッド１に向けて配線グリッドが配置される。このとき、図６−１に示されるようにネットワークＮｏ．１には２つのＰＬＣ３，４が接続されているので、図６−２で、ネットワークグリッド１は、２つのＰＬＣグリッド３，４を含むように左右方向に伸びた形となっている。
【００４８】
図７−１または図７−２に示されるようにＰＬＣ−３がネットワークＮｏ．１に接続し、ＰＬＣ４がネットワークＮｏ．２に接続し、ＰＬＣ５が２つのネットワークＮｏ．１，Ｎｏ．２に接続している場合のグリッドモデルは、図７−３または図７−４に示されるようになる。すなわち、２つのネットワークＮｏ．１，Ｎｏ．２が存在するので、上下方向に２つのネットワークグリッド１，２が配置される。ここでは、ネットワークグリッド１がネットワークグリッド２よりも上に配置されている。また、ＰＬＣ３はネットワークＮｏ．１にのみ接続されるので、ＰＬＣグリッド３は、ネットワークグリッド１とネットワークグリッド２との間に配置され、ＰＬＣグリッド１からネットワークグリッド１に向けて配線グリッドが配置される。また、ＰＬＣ４はネットワークＮｏ．２にのみ接続されるので、ＰＬＣグリッド４は、ネットワークグリッド２の下方に配置され、ＰＬＣグリッド４からネットワークグリッド２に向けて配線グリッドが配置される。さらに、ＰＬＣ５は、ネットワークＮｏ．１，Ｎｏ．２の両方に接続されるので、ＰＬＣグリッド５は、ネットワークグリッド２の下方に配置され、ネットワークグリッド１とネットワークグリッド２に向けて配線グリッドが配置される。また、ネットワークグリッド１は、ＰＬＣグリッド３，５を含むように、ネットワークグリッド２は、ＰＬＣグリッド４，５を含むように左右方向に伸びた形となっている。
【００４９】
このようなグリッドモデルの規則の下に表示オブジェクト座標算出部１１７は、グリッドを用いてシステム構成表示部１１８で表示処理される制御システムを構成するオブジェクトの座標を算出する。
【００５０】
図８は、表示オブジェクト座標算出部の機能構成を模式的に示すブロック図である。この図に示されるように、表示オブジェクト座標算出部１１７は、グリッドモデル保持機能１１７１と、ネットワークグリッド配置機能１１７２と、ＰＬＣグリッド配置機能１１７３と、グリッドサイズ算出機能１１７４と、グリッド座標算出機能１１７５と、を備える。
【００５１】
グリッドモデル保持機能１１７１は、ネットワークグリッド配置機能１１７２とＰＬＣグリッド配置機能１１７３とによって配置されたグリッドモデルや、グリッドサイズ算出機能１１７４によって算出されたグリッドサイズを含むグリッドモデルを保持する。
【００５２】
ネットワークグリッド配置機能１１７２は、オンラインネットワーク構成情報保持部１１６に保持されているネットワーク構成情報を読み出して、その内容からネットワーク間の配置関係を解析し、ネットワークのグリッドモデルを算出して配置する。その結果は、グリッドモデル保持機能１１７１に格納される。
【００５３】
ＰＬＣグリッド配置機能１１７３は、オンラインネットワーク構成情報保持部１１６に保持されているネットワーク構成情報を読み出して、その内容からＰＬＣとそのネットワークとの接続関係を解析し、ＰＬＣと配線のグリッドモデルを算出して配置する。このとき、ネットワークグリッド配置機能１１７２によって算出され、グリッドモデル保持機能１１７１に格納されたグリッドモデルに対して、ＰＬＣグリッドと配線グリッドとが配置される。そして、その結果は、グリッドモデル保持機能１１７１に格納される。なお、このＰＬＣグリッド配置機能１１７３は、請求の範囲における制御装置グリッド配置機能に対応している。
【００５４】
グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に保持されているグリッドモデル中の各グリッド、特にＰＬＣグリッドについて、オンラインネットワーク構成情報保持部１１６の対応するＰＬＣのベース情報を用いて、ＰＬＣの表示に必要なサイズを算出する。ここで用いられるグリッドモデルは、ネットワークグリッドとＰＬＣグリッドと配線グリッドとが配置されたグリッドモデルである。また、ベース情報としては、対応するＰＬＣのベースに装着されているユニットの個数とその種類、また増設ベースの有無と、その増設ベースに装着されているユニットの個数とその種類が利用される。そして、その結果は、グリッドモデル保持機能１１７１中のグリッドモデルに付加されて格納される。
【００５５】
グリッド座標算出機能１１７５は、グリッドモデル保持機能１１７１に保持されているグリッドサイズを含むグリッドモデル中のＰＬＣグリッドに対して、左上のＰＬＣグリッドから順にグリッドサイズを加算してグリッド座標を算出する。そして、算出した結果が、グリッドモデルとともにシステム構成表示部１１８に出力される。
【００５６】
つぎに、上記のような構成を有する制御システムエンジニアリング装置１００での、ネットワーク構成情報の収集処理からシステム構成情報の表示処理について順に説明する。
【００５７】
（ネットワーク構成情報収集処理）
（１）処理の概要
図９−１〜図９−３は、ネットワーク構成情報収集処理手順の一例を示すフローチャートである。まず、制御システムエンジニアリング装置１００の使用者が、起点ＰＬＣ指定部１１３から当該制御システムエンジニアリング装置１００をどのＰＬＣに接続するかを指定する（ステップＳ１１）。このとき指定されたＰＬＣを、ネットワーク構成情報を収集する起点となるので、起点ＰＬＣという。
【００５８】
オンラインネットワーク構成情報収集部１１４は、指定された起点ＰＬＣが保持するプロジェクト情報のうち、システム構成情報を読み出す（ステップＳ１２）。また、同時にオンラインネットワーク構成情報収集部１１４は、この起点ＰＬＣへの接続経路を出力し（ステップＳ１３）、接続経路情報としてオンライン接続経路保持部１１５に格納する。
【００５９】
ついで、オンラインネットワーク構成情報保持部１１６は、ステップＳ１２で読み出したシステム構成情報からベース情報と接続ネットワーク情報とを抽出し（ステップＳ１４）、これらをＰＬＣデータとして、オンラインネットワーク構成情報保持部１１６に出力する（ステップＳ１５）。その後、オンラインネットワーク構成情報収集部１１４は、起点ＰＬＣを処理対象ＰＬＣとして選択し（ステップＳ１６）、図９−２に示されるＡ１処理を実行する（ステップＳ１７）。
【００６０】
図９−２は、図９−１のステップＳ１７におけるＡ１処理の手順を示すフローチャートである。まず、オンラインネットワーク構成情報保持部１１６は、起点ＰＬＣが接続するすべてのネットワークに対して、図９−３に示されるＡ２処理を実行したか否かを判定する（ステップＳ３１）。対象となるＰＬＣに接続するすべてのネットワークに対してＡ２処理を行っている場合（ステップＳ３１でＹｅｓの場合）には、Ａ１処理を終了し、図９−１のフローチャートへと戻る。
【００６１】
また、対象となるＰＬＣに接続するすべてのネットワークに対してＡ２処理を行っていない場合（ステップＳ３１でＮｏの場合）には、それぞれのネットワークは、さらに情報収集できるか否かを判定する（ステップＳ３２）。このネットワークの情報収集処理実行の可否の判定は、予め定義されたネットワークの情報収集処理が可能な範囲についての制約に基づいて行われる。そして、それぞれのネットワークについてさらに情報収集できる場合（ステップＳ３２でＹｅｓの場合）には、図９−３のＡ２処理をまだ実行していないネットワークから１つのネットワークを処理対象のネットワークとして選択し（ステップＳ３３）、このネットワークに対して、図９−３に示されるネットワーク情報出力処理を実行する（ステップＳ３４）。
【００６２】
その後、Ａ２処理がまだのネットワークがあるかを判定し（ステップＳ３５）、Ａ２処理がまだのネットワークがある場合（ステップＳ３５でＹｅｓの場合）には、ステップＳ３３へと戻り、上述した処理が繰り返し実行される。一方、Ａ２処理がまだのネットワークがない場合（ステップＳ３５でＮｏの場合）には、Ａ１処理が終了し、図９−１に処理が戻る。
【００６３】
また、ステップＳ３２で、それぞれのネットワークについてさらに情報収集することができない場合（ステップＳ３２でＮｏの場合）には、出力されたＰＬＣデータを用いて、ネットワーク情報を作成し、これをネットワークデータとしてオンラインネットワーク構成情報保持部１１６に出力する（ステップＳ３６）。このネットワーク情報は、各ネットワークについて、そのネットワークを構成するＰＬＣと、そのＰＬＣについて設定されている情報をまとめたものである。
【００６４】
図９−３は、図９−２のステップＳ３４におけるＡ２処理の手順の一例を示すフローチャートである。このＡ２処理では、オンラインネットワーク構成情報収集部１１４は、まず、ネットワークに接続している管理局（コントローラ間ネットワークの場合）またはマスタ局（フィールドネットワークの場合）のＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す（ステップＳ５１）。ついで、読み出したシステム構成情報の接続ネットワーク情報から総局数を抽出する（ステップＳ５２）。
【００６５】
その後、オンラインネットワーク構成情報収集部１１４は、ネットワークに接続している各ＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す（ステップＳ５３）。ついで、読み出したシステム構成情報の中からベース情報と接続ネットワーク情報を抽出し（ステップＳ５４）、これらの情報を用いて、そのネットワークを構成するＰＬＣについての設定情報をまとめたネットワーク情報を作成し、オンラインネットワーク構成情報保持部１１６にネットワークデータとして出力する（ステップＳ５５）。
【００６６】
ついで、オンラインネットワーク構成情報収集部１１４は、情報収集されたすべてのＰＬＣに対して、データを出力したか否かを判定する（ステップＳ５６）。すべてのＰＬＣに対してデータを出力している場合（ステップＳ５６でＹｅｓの場合）には、対象としているネットワークに関するＡ２処理を終了し、図９−２のＡ１処理に戻る。また、すべてのＰＬＣに対してデータを出力していない場合（ステップＳ５６でＮｏの場合）には、各ＰＬＣまでの接続経路をオンライン接続経路保持部１１５に対して出力するとともに（ステップＳ５７）、オンラインネットワーク構成情報保持部１１６に対して、ステップＳ５４で抽出した各ＰＬＣのＰＬＣデータを出力する（ステップＳ５８）。
【００６７】
ついで、各ＰＬＣに対してネットワークについてさらに情報収集可能か否かを、所定の制約に基づいて判定する（ステップＳ５９）。ネットワークについて情報収集が可能である場合（ステップＳ５９でＹｅｓの場合）には、図９−２に示されるＡ１処理について未実施のＰＬＣを処理対象のＰＬＣとして選択し（ステップＳ６０）、図９−２に示したＡ１処理を実行する（ステップＳ６１）。そして、Ａ１処理がまだのＰＬＣが存在するかを判定し（ステップＳ６２）、Ａ１処理がまだのＰＬＣが存在する場合（ステップＳ６２でＹｅｓの場合）には、ステップＳ６０へと戻り、上述した処理が繰り返し実行される。また、Ａ１処理がまだのＰＬＣが存在しない場合（ステップＳ６２でＮｏの場合）には、Ａ２処理が終了する。さらに、ステップＳ５９で、ネットワークについて情報収集が可能でない場合（ステップＳ５９でＮｏの場合）にも、Ａ２処理が終了する。
【００６８】
その後、図９−１に戻り、ステップＳ１７のＡ１処理の後、オンラインネットワーク構成情報収集部１１４は、出力されたデータの整合性の処理を行う（ステップＳ１８）。このデータの整合性の処理として、たとえば、同じネットワークについて、制約によって２つのネットワークデータがオンラインネットワーク構成情報保持部１１６に存在する場合に、これらの２つのデータをまとめて１つのネットワークについてのネットワークデータとする処理などを挙げることができる。以上により、ネットワーク構成情報収集処理を終了する。
【００６９】
以上に示した処理によって、オンライン接続経路保持部１１５には、制御システムエンジニアリング装置１００が接続されたＰＬＣから情報収集が可能なネットワークの各ＰＬＣまでの接続経路情報が格納され、オンラインネットワーク構成情報保持部１１６には、情報収集が可能なネットワークの各ＰＬＣに関する接続ネットワーク情報とベース情報と、各ＰＬＣによって構成されるネットワーク情報と、を含むネットワーク構成情報が格納される。
【００７０】
（２）処理の具体例
上述した説明では、ネットワーク構成情報収集処理の概要を述べたものであるので、この処理の具体例を図１の構成を有する制御システムの場合を例に挙げて以下に説明する。図１０は、ネットワーク構成情報収集処理の結果、オンライン接続経路保持部に保持される接続経路情報の一例を示す図であり、図１１は、同じくオンラインネットワーク構成情報格納部に格納されるネットワーク構成情報の一例を示す図である。なお、これらの図１０と図１１では、データが生成される順に示されている。また、これらの図中では、ネットワークは図１に示される符号ではなく、「ネットワーク種類＋ネットワーク番号」の形で表記している。
【００７１】
図１０に示されるように、接続経路情報は、格納されるデータの種類を示す「データ種別」と、終点ＰＬＣとなる「名称」と、「起点ＰＬＣ」と、途中の経路であるネットワークまたはノード（ＰＬＣ）を示す「データ１」、「データ２」、・・・、とを含む。ここでは、ｎを自然数として、「データ（２ｎ−１）」の欄にはネットワークが入り、「データ（２ｎ）」の欄にはＰＬＣが入る。
【００７２】
また、図１１に示されるように、ネットワーク構成情報は、格納されるデータの種別を示す「データ種別」と、対象となるＰＬＣを示す「名称」と、そのＰＬＣについてデータ種別ごとに規定された内容を示す「データ１」、「データ２」、・・・、とを含む。ネットワーク構成情報は、上述したようにベース情報、接続ネットワーク情報およびネットワーク情報の３種類からなるので、これらのデータ種類によって、格納されるデータの内容が異なる。
【００７３】
たとえば、ベース情報を格納する場合には、データ種別には「ＰＬＣベース」と格納され、各データ欄には各スロットに装着されるユニットの種別が格納される。増設ベースを有する場合には、増設ベースの各スロットに装着されるユニットの種別も格納される。また、接続ネットワーク情報を格納する場合には、データ種別には「ＰＬＣネットワーク」と格納され、各データ欄には、「名称」に示されるＰＬＣのベースに装着されている各通信ユニットに関する情報が格納される。さらに、ネットワーク情報を格納する場合には、データ種別には「ネットワーク」と格納され、各データ欄には、「名称」に示されるネットワークを構成するＰＬＣの通信ユニットに関する情報が格納される。ここでは、局番順に格納されるものとする。
【００７４】
（２−１）起点ＰＬＣについて
図１では、ＰＬＣ１０−３に制御システムエンジニアリング装置１００が接続されているので、まず、制御システムエンジニアリング装置１００の起点ＰＬＣ指定部１１３から、使用者はＰＬＣ１０−３を起点ＰＬＣに指定する。その後、オンラインネットワーク構成情報収集部１１４は、ＵＳＢケーブル３０を介して接続される起点ＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出すとともに、起点ＰＬＣへの接続経路Ｐ３ｃを、オンライン接続経路保持部１１５に出力する。
【００７５】
ここで読み出したシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にＩ／Ｏユニット１２−３、スロット３にコントローラ間ネットワークユニット１１−３、増設ベース１３−３のスロット１，２にＩ／Ｏユニット１２−３がそれぞれ装着されているという情報が含まれている。また、接続ネットワーク情報として、ネットワーク種別がコントローラ間ネットワークＮｏ．１であり、コントローラ間ネットワークユニット１１−３が局番１で、管理局であり、コントローラ間ネットワークＮｏ．１の総局数は３であるという情報が含まれている。
【００７６】
そこで、オンラインネットワーク構成情報収集部１１４は、接続経路情報として、図１０の接続経路Ｐ３ｃに示される内容をオンライン接続経路保持部１１５に出力し、図１１に示されるＰＬＣデータＰ３ｂ，Ｐ３ｎに示される内容をオンラインネットワーク構成情報保持部１１６に出力する。そして、起点ＰＬＣであるＰＬＣ１０−３を処理対象として選択し、図９−２に示されるＡ１処理を実行する。
【００７７】
（２−２）ＰＬＣ１０−３に接続されるネットワーク
ＰＬＣ１０−３を処理の対象とした図９−２のＡ１処理では、ＰＬＣ１０−３に接続するコントローラ間ネットワークＮｏ．１（２２Ａ）は、図９−３のＡ２処理をまだ実行していないので、ネットワークをさらに情報収集できるか制約を確認する。図１２は、ネットワークの情報収集の制約の一例を示す図である。図１のＰＬＣ１０−３に接続するネットワークであるコントローラ間ネットワークＮｏ．１（２２Ａ）は、図１２のどの制約にも該当しないので、オンラインネットワーク構成情報収集部１１４は、コントローラ間ネットワークＮｏ．１（２２Ａ）をＡ２処理の対象として選択し、図９−３に示されるＡ２処理を実行する。
【００７８】
（２−３）コントローラ間ネットワークＮｏ．１について
コントローラ間ネットワークＮｏ．１（２２Ａ）を処理の対象とした図９−３のＡ２処理では、まず、オンラインネットワーク構成情報収集部１１４は、コントローラ間ネットワークＮｏ．１に接続している管理局であるＰＬＣ１０−３が保持するプロジェクト情報のうちシステム構成情報を読み出す。しかし、ここでは既にＰＬＣ１０−３のシステム構成情報のうち、図１１にＰＬＣデータＰ３ｂ，Ｐ３ｎが出力されているため、改めて読み出す必要がない。そこで、管理局ＰＬＣ（すなわち、ＰＬＣ１０−３）のシステム構成情報のうち接続ネットワーク情報Ｐ３ｎには、コントローラ間ネットワークＮｏ．１に接続するＰＬＣの総局数に関する情報が含まれているので、総局数「３」を抽出する。
【００７９】
その後、オンラインネットワーク構成情報収集部１１４は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→各局」の経路で、それぞれの局番のＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す。つまり、ここでは新たにＰＬＣ１０−４とＰＬＣ１０−１の情報が収集される。
【００８０】
その後、オンラインネットワーク構成情報収集部１１４は、これら抽出した情報から、ネットワーク情報を生成し、ネットワークデータＭ１として、オンラインネットワーク構成情報保持部１１６に出力する。つまり、オンラインネットワーク構成情報収集部１１４は、既にオンラインネットワーク構成情報保持部１１６に格納されているＰＬＣ１０−３の通信ユニット１１−３についての情報と、抽出したＰＬＣ１０−４，１０−１の通信ユニット１１−１Ａ，１１−４Ｂについての情報と、を用いて、図１１のネットワークデータＭ１に示されるコントローラ間ネットワークＮｏ．１についてのネットワーク情報を作成する。
【００８１】
ついで、オンラインネットワーク構成情報収集部１１４は、新たに収集されたＰＬＣ１０−４，１０−１に関するデータのうち全てのデータについて、オンライン接続経路保持部１１５またはオンラインネットワーク構成情報保持部１１６に対してデータを出力したか否かを判定する。ここでは、ＰＬＣ１０−４，１０−１のどちらのデータも、オンライン接続経路保持部１１５とオンラインネットワーク構成情報保持部１１６にまだ出力されていない。そのため、それぞれのＰＬＣ１０−４，１０−１の読み出しを行った経路をそれぞれ接続経路Ｐ４ｃ，Ｐ１ｃとしてオンライン接続経路保持部１１５に出力し、それぞれのＰＬＣ１０−４，１０−１のＰＬＣデータを、オンラインネットワーク構成情報保持部１１６にそれぞれベース情報Ｐ４ｂ，Ｐ１ｂ、接続ネットワーク情報Ｐ４ｎ，Ｐ１ｎとして出力する。
【００８２】
その後、オンラインネットワーク構成情報収集部１１４は、情報収集を行ったＰＬＣ１０−４，１０−１に関してネットワークをさらに情報収集できるか判定する。なお、ここでは、ネットワークをさらに情報収集できるか判定を行うＰＬＣがＰＬＣ１０−４（局番２）とＰＬＣ１０−１（局番３）であるが、どちらのＰＬＣから処理を行ってもよい。つまり、処理の優先度はない。この例では、局番順に処理を行うものとし、局番２のＰＬＣ１０−４についての処理が終了した後に、局番３のＰＬＣ１０−１についての処理を行うものとする。
【００８３】
（２−４）ＰＬＣ１０−４
まずＰＬＣ１０−４に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ＰＬＣ１０−４に関しては、図１２の制約に該当しないので、ＰＬＣ１０−４を処理の対象として選択し、図９−２のＡ１処理を実行する。
【００８４】
（２−４−１）Ａ１処理
ＰＬＣ１０−４を処理の対象としたＡ１処理では、ＰＬＣ１０−４の接続するネットワークのうち、コントローラ間ネットワークＮｏ．１のデータは、オンラインネットワーク構成情報保持部１１６に既にネットワークデータＭ１として出力されており、Ａ２処理が実行されているが、フィールドネットワーク２３についてはまだＡ２処理が実行されていない。そのため、オンラインネットワーク構成情報収集部１１４は、フィールドネットワーク２３について、ネットワークをさらに情報収集できるか図１２を用いて制約を確認する。ここでは制約に該当しないので、フィールドネットワーク２３を処理の対象として選択し、図９−３のＡ２処理を実行する。
【００８５】
（２−４−２）Ａ２処理
ついで、フィールドネットワーク２３を処理の対象としたＡ２処理では、フィールドネットワーク２３に接続しているマスタ局ＰＬＣであるＰＬＣ１０−４が保持するプロジェクト情報のうちシステム構成情報を読み出す。しかし、ＰＬＣ１０−４のシステム構成情報のうち、ベース情報Ｐ４ｂと接続ネットワーク情報Ｐ４ｎのデータは既に出力しているため、改めて読み出す必要がない。そこで、すでに出力しているマスタ局のＰＬＣ１０−４のシステム構成情報の接続ネットワーク情報Ｐ４ｎから、フィールドネットワーク２３に接続するＰＬＣの総局数「２」を抽出する。
【００８６】
その後、オンラインネットワーク構成情報収集部１１４は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→フィールドネットワーク２３→各局」の経路で、それぞれの局番のＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す。つまり、ここでは新たにＰＬＣ１０−５の情報が収集される。
【００８７】
（２−４−３）フィールドネットワーク２３→ＰＬＣ１０−５
新たに読み出したＰＬＣ１０−５のシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にＩ／Ｏユニット１２−５、スロット３にフィールドネットワーク２３で通信するための通信ユニット１１−５Ａ、スロット４にコントローラ間ネットワーク２２Ｂで通信するための通信ユニット１１−５Ｂ、という情報が含まれている。また、接続ネットワーク情報として、フィールドネットワーク２３、ローカル局１、という情報と、コントローラ間ネットワークＮｏ．２、局番３、通常局、という情報が含まれている。そして、オンラインネットワーク構成情報収集部１１４は、これらの抽出したシステム構成情報と、既に出力されたＰＬＣ１０−４についてのシステム構成情報とから、フィールドネットワーク２３に関するネットワーク情報を作成し、図１１に示されるネットワークデータＣとしてオンラインネットワーク構成情報保持部１１６に出力する。
【００８８】
ついで、オンラインネットワーク構成情報収集部１１４は、新たに情報収集されたＰＬＣ１０−５に関して、オンライン接続経路保持部１１５またはオンラインネットワーク構成情報保持部１１６に対してデータを出力したか否かを判定する。ここでは、ＰＬＣ１０−５のデータを出力していないので、読み出しを行った経路をオンライン接続経路保持部１１５に接続経路Ｐ５ｃとして出力し、ＰＬＣデータをオンラインネットワーク構成情報保持部１１６にベース情報Ｐ５ｂ、接続ネットワーク情報Ｐ５ｎとして出力する。
【００８９】
その後、オンラインネットワーク構成情報収集部１１４は、情報収集を行ったＰＬＣ１０−５に関して、ネットワークをさらに情報収集できるか図１２の制約に基づいて確認する。ここでは制約Ｂに該当するので、フィールドネットワーク２３を処理の対象としたＡ２処理を終了する。そして、（２−４）のＰＬＣ１０−４を処理の対象としたＡ１処理も終了する。
【００９０】
（２−５）ＰＬＣ１０−１
つぎに、ＰＬＣ１０−１に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ＰＬＣ１０−１に関しては、図１２の制約に該当しないので、ＰＬＣ１０−１を処理の対象として選択し、図９−２のＡ１処理を実行する。
【００９１】
ＰＬＣ１０−１を処理の対象としたＡ１処理では、ＰＬＣ１０−１の接続するネットワークのうちコントローラ間ネットワークＮｏ．２も情報系ネットワークＮｏ．３も、まだＡ２処理が実行されていない。そのため、オンラインネットワーク構成情報収集部１１４は、所定の基準で設定された優先度に基づいて処理の対象となるＰＬＣを選択し、処理を行う。図１３は、ネットワーク情報出力処理の優先度の一例を示す図である。この例では、ＰＬＣが接続される可能性が最も高いコントローラ間ネットワーク２２Ａ，２２Ｂを最も処理の優先度を高く設定し、フィールドネットワーク２３、情報系ネットワーク２１の順に処理の優先度を低くしている。
【００９２】
（２−６）コントローラ間ネットワークＮｏ．２
オンラインネットワーク構成情報収集部１１４は、図１３の優先度にしたがって、コントローラ間ネットワークＮｏ．２を選択し、ネットワークをさらに情報収集できるかについて図１２を用いて制約を確認する。ここでは制約に該当しないので、コントローラ間ネットワークＮｏ．２を処理の対象として図９−３のＡ２処理を実行する。
【００９３】
このコントローラ間ネットワークＮｏ．２を処理の対象としたＡ２処理では、オンラインネットワーク構成情報収集部１１４は、コントローラ間ネットワークＮｏ．２に接続している管理局であるＰＬＣ１０−２が保持するプロジェクト情報のうちシステム構成情報を読み出す。そのシステム構成情報のうち接続ネットワーク情報には、コントローラ間ネットワークＮｏ．２に接続するＰＬＣの総局数に関する情報が含まれているので、総局数「３」を抽出する。
【００９４】
その後、オンラインネットワーク構成情報収集部１１４は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→各局」の経路で、それぞれの局番のＰＬＣが保持するプロジェクト情報のうちシステム構成情報を読み出す。つまり、ここではＰＬＣ１０−２，１０−５の情報が収集される。
【００９５】
新たに読み出したＰＬＣ１０−２のシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にコントローラ間ネットワークＮｏ．２で通信するための通信ユニット１１−２Ａ、スロット２に情報系ネットワークＮｏ．３で通信するための通信ユニット１１−２Ｂ、という情報が含まれている。また、接続ネットワーク情報として、コントローラ間ネットワークＮｏ．２、局番１、管理局、という情報と、情報系ネットワークＮｏ．３、局番２、ＩＰアドレス、という情報が含まれている。
【００９６】
また、ＰＬＣ１０−５のシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にＩ／Ｏユニット１２−５、スロット３にフィールドネットワーク２３で通信するための通信ユニット１１−５Ａ、スロット４にコントローラ間ネットワークＮｏ．２で通信するための通信ユニット１１−５Ｂ、という情報が格納されている。また、接続ネットワーク情報として、フィールドネットワーク、ローカル局１、という情報と、コントローラ間ネットワークＮｏ．２、局番３、通常局、という情報が格納されている。
【００９７】
そして、オンラインネットワーク構成情報収集部１１４は、これらの抽出したシステム情報と、オンラインネットワーク構成情報保持部１１６に既に格納されているＰＬＣ１０−１に関するＰＬＣデータとから、コントローラ間ネットワークＮｏ．２についてのネットワーク情報を作成し、ネットワークデータＭ２としてオンライン接続経路保持部１１５に出力する。
【００９８】
ついで、新たに情報収集されたシステム構成情報のうち、ＰＬＣ１０−５のデータに関しては既にデータ出力されているが、ＰＬＣ１０−２のデータに関してはまだ出力されていない。そのため、ＰＬＣ１０−２の読み出しを行った経路を接続経路Ｐ２ｃとしてオンライン接続経路保持部１１５に出力し、ＰＬＣデータをオンラインネットワーク構成情報保持部１１６にベース情報Ｐ２ｂ、接続ネットワーク情報Ｐ２ｎとして出力する。
【００９９】
（２−７）ＰＬＣ１０−２
その後、ＰＬＣ１０−２に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ＰＬＣ１０−２に関しては、図１２の制約に該当しないので、ＰＬＣ１０−２を処理の対象として選択し、図９−２のＡ１処理を実行する。
【０１００】
ＰＬＣ１０−２を処理の対象としたＡ１処理では、ＰＬＣ１０−２の接続するネットワークのうち情報系ネットワークＮｏ．３について、まだＡ２処理が実行されていない。そのため、オンラインネットワーク構成情報収集部１１４は、ネットワークをさらに情報収集できるか図１２の制約を確認する。ここでは、制約Ｃに該当するので、情報収集できるネットワークはない。そのため、ＰＬＣ１０−２のＰＬＣデータを用いて情報系ネットワークＮｏ．３について作成できる範囲でのネットワーク情報を作成し、ネットワークデータＥ３−２としてオンラインネットワーク構成情報保持部１１６に出力する。以上により、ＰＬＣ１０−２を処理の対象としたＡ１処理を終了する。また、（２−６）のコントローラ間ネットワークＮｏ．２を処理の対象としたＡ２処理も終了する。
【０１０１】
（２−８）情報系ネットワークＮｏ．３
つぎに、情報系ネットワークＮｏ．３に関して、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。情報系ネットワーク２１は制約Ｃに該当するので、情報系ネットワークＮｏ．３について、作成できる範囲でのネットワーク情報を作成し、ネットワークデータＥ３−１としてオンラインネットワーク構成情報保持部１１６に出力する。以上により、（２−５）のＰＬＣ１０−１を処理の対象としたＡ１処理を終了する。また、（２−３）のコントローラ間ネットワークＮｏ．１を処理の対象としたＡ２処理を終了する。さらに、（２−２）のＰＬＣ１０−３を処理の対象としたＡ１処理を終了する。
【０１０２】
その後、オンラインネットワーク構成情報収集部１１４は、出力されたデータの整合性を処理する。この例では、ネットワークをさらに情報収集できるかの図１２の制約Ｃによって、情報系ネットワークＮｏ．３に関するネットワークデータが、図１１に示されるようにネットワークデータＥ３−１，Ｅ３−２として個別に出力されている。そのため、これらを集約してネットワークデータＥ３とする処理を行う。以上によってネットワーク構成情報収集処理を終了する。
【０１０３】
（ＰＬＣグリッド配置処理）
（１）処理の概要
図１４−１〜図１４−５は、表示オブジェクト座標算出処理手順の一例を示すフローチャートである。なお、以下の説明では、上述したグリッドモデルを用いて表示オブジェクトの座標算出処理が行われるものとする。
【０１０４】
図１４−１を参照して、表示オブジェクト座標算出処理手順の概要を説明する。まず、表示オブジェクト座標算出部１１７のネットワークグリッド配置機能１１７２は、グリッドモデル上でオンラインネットワーク構成情報保持部１１６に格納されたネットワーク情報を用いて、所定の規則にしたがったネットワークグリッド配置処理を実行する（ステップＳ１１１）。
【０１０５】
ついで、ＰＬＣグリッド配置機能１１７３は、グリッドモデル上でオンラインネットワーク構成情報保持部１１６に格納されたベース情報を用いて、所定の規則にしたがってＰＬＣグリッドと配線グリッドを配置するＰＬＣグリッド配置処理を実行する（ステップＳ１１２）。このＰＬＣグリッド配置処理では、ステップＳ１１１で配置されたネットワークグリッドに対して、ＰＬＣグリッドと配線グリッドとを配置する。これらのステップＳ１１１のネットワークグリッド配置処理と、ステップＳ１１２のＰＬＣグリッド配置処理の結果は、グリッドモデル保持機能１１７１に格納される。
【０１０６】
その後、グリッドサイズ算出機能１１７４は、ベース情報とグリッドを配置するための所定の規則に基づいて、各グリッドについてのサイズを算出し、その結果をグリッドモデル保持機能１１７１に格納する（ステップＳ１１３）。そして、グリッド座標算出機能１１７５は、グリッドモデル保持機能１１７１に格納されたグリッドサイズに基づいて、表示部１１２上にグリッドを表示するための座標を算出し（ステップＳ１１４）、表示オブジェクト座標算出処理が終了する。
【０１０７】
以下に、図１４−１に示される各ステップにおける処理の詳細について説明する。図１４−２は、ネットワークグリッド配置処理手順の一例を示すフローチャートである。まず、表示オブジェクト座標算出部１１７のネットワークグリッド配置機能１１７２は、オンラインネットワーク構成情報保持部１１６のネットワークデータを参照し、ネットワークを抽出する（ステップＳ１３１）。
【０１０８】
ついで、抽出したネットワークを上からネットワーク番号順にソートし（ステップＳ１３２）、ネットワーク番号が付されていないフィールドネットワークは下位にソートする（ステップＳ１３３）。そして、ソートが完了した順にネットワークグリッドを配置し（ステップＳ１３４）、その結果をグリッドモデル保持機能１１７１に格納して、ネットワークグリッド配置処理が終了する。
【０１０９】
図１４−３は、ＰＬＣグリッド配置処理手順の一例を示すフローチャートである。ＰＬＣグリッド配置機能１１７３は、オンラインネットワーク構成情報保持部１１６のベース情報からＰＬＣを抽出する（ステップＳ１５１）。ついで、抽出したＰＬＣの中から、ステップＳ１１１のネットワークグリッド配置処理で最も下位に配置されるネットワークを選択する（ステップＳ１５２）。その後、選択したネットワークに接続されるＰＬＣを選択し（ステップＳ１５３）、この中から局番の最も小さいＰＬＣを選択する（ステップＳ１５４）。そして、ステップＳ１５２で選択したネットワークグリッドの左下のグリッドから順に詰めて、選択したＰＬＣグリッドと配線グリッドとを配置する（ステップＳ１５５）。このとき、ＰＬＣグリッドとネットワークグリッドの間に配線グリッドを配置する。また、ＰＬＣグリッドがステップＳ１５２で選択したネットワークだけでなく、他のネットワークにも接続している場合には、そのネットワークに至るまで上方向に配線グリッドを配置する。
【０１１０】
その後、ステップＳ１５２で選択したネットワークに接続するＰＬＣのうち他のＰＬＣが存在するか否かを判定する（ステップＳ１５６）。他のＰＬＣが存在する場合（ステップＳ１５６でＹｅｓの場合）には、つぎに局番の小さなＰＬＣを選択し（ステップＳ１５７）、ステップＳ１５５へと戻って、ステップＳ１５２で選択したネットワークに接続するＰＬＣがなくなるまで、同じ処理が繰り返し行われる。
【０１１１】
また、ステップＳ１５６で他のＰＬＣが存在しない場合（ステップＳ１５６でＮｏの場合）には、他のネットワークが存在するか否かを判定する（ステップＳ１５８）。他のネットワークが存在する場合（ステップＳ１５８でＹｅｓの場合）には、ステップＳ１１１のネットワークグリッド配置処理で、つぎに下位に配置されるネットワークを選択し（ステップＳ１５９）、ステップＳ１５３へと戻り、最も上位に配置されるネットワークについてＰＬＣグリッドと配線グリッドを配置するまで上述した処理が繰り返し実行される。また、他のネットワークが存在しない場合（ステップＳ１５８でＮｏの場合）には、ＰＬＣグリッドと配線グリッドの配置結果をグリッドモデル保持機能１１７１に格納し（ステップＳ１６０）、ＰＬＣグリッド配置処理が終了する。
【０１１２】
図１４−４は、グリッドサイズ算出処理手順の一例を示すフローチャートである。まず、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたグリッドモデルからＰＬＣグリッドを１つ選択する（ステップＳ１７１）。ついで、選択したＰＬＣグリッドに対応するＰＬＣについて、オンラインネットワーク構成情報保持部１１６からベース情報を読み取り、増設ベース情報を含めてＰＬＣグリッドの表示に必要な縦サイズと横サイズを算出する（ステップＳ１７２）。ここで、ベースに装着される最小の寸法を有する１つのユニットを基準ユニットとして矩形で表し、ベース上に装着されるユニットや増設ベースを、この基準ユニットの倍数で計算する。たとえば、基準ユニットの上下方向（以下、縦方向と言う）のサイズは１０であり、左右方向（以下、横方向と言う）のサイズは１０であるとすると、ベースに３つのユニットが装着されている場合には、縦サイズは１０であり、横サイズは３０となる。また、増設ベースが装着されている場合には、縦方向に重ねて描くので、縦サイズが延びて２０となる。
【０１１３】
その後、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたグリッドモデルには、他のＰＬＣグリッドが存在するか否かを判定する（ステップＳ１７３）。他のＰＬＣグリッドが存在する場合（ステップＳ１７３でＹｅｓの場合）には、ステップＳ１７１へと戻り、選択されないＰＬＣグリッドがなくなるまで、上述した処理が繰り返し実行される。
【０１１４】
また、他のＰＬＣグリッドが存在しない場合（ステップＳ１７３でＮｏの場合）には、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納された配線グリッドを１つ選択する（ステップＳ１７４）。選択した配線グリッドに対して、縦サイズと横サイズを算出する（ステップＳ１７５）。ここでは、配線グリッドの縦サイズを予め定められる所定の値とし、横サイズはその配線グリッドの下部に配置されるＰＬＣグリッドの横サイズと同一にする。
【０１１５】
その後、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたグリッドモデルには、他の配線グリッドが存在するか否かを判定する（ステップＳ１７６）。他の配線グリッドが存在する場合（ステップＳ１７６でＹｅｓの場合）には、ステップＳ１７４へと戻り、選択されない配線グリッドがなくなるまで、上述した処理が繰り返し実行される。
【０１１６】
また、他の配線グリッドが存在しない場合（ステップＳ１７６でＮｏの場合）には、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたネットワークグリッドを１つ選択する（ステップＳ１７７）。選択したネットワークグリッドに対して、縦サイズと横サイズを算出する（ステップＳ１７８）。ここでは、ネットワークグリッドの縦サイズを予め定められる所定の値とし、横サイズは、その下部に配置される配線グリッドを包含するサイズとする。
【０１１７】
その後、グリッドサイズ算出機能１１７４は、グリッドモデル保持機能１１７１に格納されたグリッドモデルには、他のネットワークユニットが存在するか否かを判定する（ステップＳ１７９）。他のネットワークグリッドが存在する場合（ステップＳ１７９でＹｅｓの場合）には、ステップＳ１７７へと戻り、選択されないネットワークグリッドがなくなるまで、上述した処理が繰り返し実行される。
【０１１８】
また、他のネットワークグリッドが存在しない場合（ステップＳ１７９でＮｏの場合）には、グリッドサイズ算出機能１１７４は、上記で算出されたグリッドサイズを含むグリッドモデルを、グリッドモデル保持機能１１７１に格納して（ステップＳ１８０）、グリッドサイズ算出処理が終了する。
【０１１９】
図１４−５は、グリッド座標算出処理手順の一例を示すフローチャートである。グリッド座標算出機能１１７５は、グリッドモデル保持機能１１７１に格納されたグリッドサイズが付加されたグリッドモデルを読み込み（ステップＳ１９１）、グリッドモデルの左上から順にグリッドサイズを加算してグリッド座標を算出する（ステップＳ１９２）。以上により、グリッド座標算出処理が終了する。
【０１２０】
（２）処理の具体例
上述した説明では、表示オブジェクト座標算出処理の概要を述べたものであるので、この処理の具体例を図１の構成を有する制御システムの場合を例に挙げて以下に説明する。なお、ここでは、図１０の接続経路情報と図１１のネットワーク構成情報とを用いて、表示オブジェクトの座標算出処理を行うものとする。
【０１２１】
（２−１）ネットワークグリッド配置処理
まず、オンラインネットワーク構成情報保持部１１６に格納される図１１のネットワーク構成情報から、データ種別が「ネットワーク」となっているネットワークデータＭ１，Ｍ２，Ｃ，Ｅ３を参照し、コントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２、フィールドネットワーク、情報系ネットワークＮｏ．３を抽出する。
【０１２２】
ついで、抽出したネットワークをネットワーク番号順にソートする。この場合、上に配置されるネットワークから順に、「コントローラ間ネットワークＮｏ．１（２２Ａ）→コントローラ間ネットワークＮｏ．２（２２Ｂ）→情報系ネットワークＮｏ．３（２１）→フィールドネットワーク（２３）（括弧内の数字は、図１での符号である）」となる。そして、ソートが完了した順にネットワークグリッドを配置する。図１５は、ネットワークグリッド配置処理の結果を示す図である。この図の状態では、上下の配置関係だけが確定しており、左右の配置関係はまだ確定していない状態にある。
【０１２３】
（２−２）ＰＬＣグリッド配置処理
図１６−１〜図１６−５は、ＰＬＣグリッド配置処理の手順の一例を示す図である。以下、これらの図１６−１〜図１６−５を参照しながら、ＰＬＣグリッドの配置処理について説明する。
【０１２４】
まず、表示オブジェクト座標算出部１１７のＰＬＣグリッド配置機能１１７３は、図１１のオンラインネットワーク構成情報保持部１１６からデータ種別が「ＰＬＣネットワーク」となっている接続ネットワーク情報Ｐ３ｎ，Ｐ１ｎ，Ｐ４ｎ，Ｐ２ｎ，Ｐ５ｎを抽出する。
【０１２５】
ついで、抽出した接続ネットワーク情報から、図１５で最下位に配置されているネットワークであるフィールドネットワークに接続するＰＬＣを取得する。ここでは、ＰＬＣ１０−４（接続ネットワーク情報Ｐ４ｎ）とＰＬＣ１０−５（接続ネットワーク情報Ｐ５ｎ）が取得される。これらのＰＬＣ１０−４（マスタ局）とＰＬＣ１０−５（ローカル局１）のうち、局番の小さなＰＬＣから処理を行うが、ここでは、フィールドネットワークであるため、マスタ局を最初に処理し、つぎにローカル局の局番順に処理を行う。そのため、ＰＬＣ１０−４から処理を行う。
【０１２６】
ＰＬＣ１０−４グリッドと配線グリッドを、図１５のフィールドネットワークグリッドの左下に詰めて配置する。なお、図１１の接続ネットワーク情報Ｐ４ｎに示されるように、ＰＬＣ１０−４はコントローラ間ネットワークＮｏ．１にも接続しているため、ＰＬＣ１０−４グリッドからコントローラ間ネットワークＮｏ．１グリッドにかけても配線グリッドａを配置する。このとき、ＰＬＣ１０−４グリッドと各ネットワークグリッドと各配線グリッドａの幅は同一となっている。この結果が、図１６−１に示されている。
【０１２７】
つぎに、ローカル局であるＰＬＣ１０−５の処理を行う。ＰＬＣ１０−５グリッドと配線グリッドｂを、図１６−１のフィールドネットワークグリッドの左下に詰めて配置する。なお、図１１の接続ネットワーク情報Ｐ５ｎに示されるように、ＰＬＣ１０−５はコントローラ間ネットワークＮｏ．２にも接続しているため、ＰＬＣ１０−５グリッドからコントローラ間ネットワークＮｏ．２グリッドにかけても配線グリッドｂを配置する。このとき、フィールドネットワークよりも上位のネットワークグリッドは、ＰＬＣ１０−４グリッドとＰＬＣ１０−５グリッドとを包含するように、横方向の幅が伸びる。この結果が、図１６−２に示されている。フィールドネットワークに接続されるＰＬＣは以上であるので、フィールドネットワークでのＰＬＣグリッドと配線グリッドの配置処理を終了する。
【０１２８】
ついで、フィールドネットワークの上位に配置されるネットワークとして情報系ネットワークＮｏ．３が選択され、この情報系ネットワークＮｏ．３に接続するＰＬＣ（ＰＬＣ１０−１，１０−２）を取得する。ここでは、まだ配置されていないＰＬＣ１０−１（接続ネットワーク情報Ｐ１ｎ、局番１）とＰＬＣ１０−２（接続ネットワーク情報Ｐ２ｎ、局番２）について、ＰＬＣグリッドの配置処理を行う。ここでは、局番の小さい順、すなわちＰＬＣ１０−１→ＰＬＣ１０−２の順で処理を行う。
【０１２９】
まず、ＰＬＣ１０−１グリッドと配線グリッドｃを、図１６−２の情報系ネットワークＮｏ．３グリッドの左下に詰めて配置する。このとき既に情報系ネットワークＮｏ．３の下部にはＰＬＣ１０−４とＰＬＣ１０−５の配線グリッドａ，ｂが配置されているので、ＰＬＣ１０−５よりも右の位置にＰＬＣ１０−１グリッドと配線グリッドｃを配置する。
【０１３０】
ここで、より下位に配置されているネットワークにおける局番順を配置の優先とし、より下位に配置されているＰＬＣグリッドの配置関係を分割するような配置を行わないことを条件とする。このとき同時に、より上位に配置されているネットワークへの配線も行うため、そのネットワークにおいては、既に配置されている状況によって必ずしも局番順にならない可能性がある。
【０１３１】
また、図１１の接続ネットワーク情報Ｐ１ｎに示されるように、ＰＬＣ１０−１はコントローラ間ネットワークＮｏ．２，Ｎｏ．１にも接続しているため、ＰＬＣ１０−１グリッドからコントローラ間ネットワークＮｏ．２グリッドおよびコントローラ間ネットワークＮｏ．１グリッドにかけて配線グリッドｃを配置する。この結果が図１６−３に示されている。
【０１３２】
つぎに局番の小さなＰＬＣ１０−２グリッドの配置処理を行う。ＰＬＣ１０−２グリッドと配線グリッドｄを、図１６−３の情報系ネットワークＮｏ．３グリッドの左下に詰めて配置する。このとき既に情報系ネットワークＮｏ．３にはＰＬＣ１０−４グリッド、ＰＬＣ１０−５グリッドおよびＰＬＣ１０−１グリッドの配線グリッドａ，ｂ，ｃが配置されている。そのため、上述した制約の下では、ＰＬＣ１０−１の右側にＰＬＣ１０−２グリッドと配線グリッドｄを配置する。なお、図１１の接続ネットワーク情報Ｐ２ｎに示されるように、ＰＬＣ１０−２はコントローラ間ネットワークＮｏ．２にも接続しているため、ＰＬＣ１０−２グリッドからコントローラ間ネットワークＮｏ．２グリッドにかけて配線グリッドｄを配置する。この結果が図１６−４に示されている。情報系ネットワークＮｏ．３に接続されるＰＬＣは以上であるので、情報系ネットワークＮｏ．３でのＰＬＣグリッドと配線グリッドの配置処理を終了する。
【０１３３】
ついで、情報系ネットワークＮｏ．３の上位に配置されるネットワークとしてコントローラ間ネットワークＮｏ．２が選択されるが、このコントローラ間ネットワークＮｏ．２に接続するＰＬＣ（ＰＬＣ１０−２，１０−１，１０−５）のうち、まだ配置されていないＰＬＣはない。そのため、さらにその上位に配置されているコントローラ間ネットワークＮｏ．１が選択される。このコントローラ間ネットワークＮｏ．１に接続するＰＬＣ（ＰＬＣ１０−３，１０−１，１０−４）のうち、まだ配置されていないＰＬＣは、ＰＬＣ１０−３（接続ネットワーク情報Ｐ３ｎ）である。そこで、このＰＬＣ１０−３についてＰＬＣグリッドと配線グリッドｅの配置処理を行う。コントローラ間ネットワークの場合には、通常、管理局、通常局に関係なく、局番順に（局番の小さいＰＬＣから順に）処理を行うことができる。しかし、この例では、コントローラ間ネットワークＮｏ．１に接続され、まだ配置されていない処理対象のＰＬＣは１つであるので、ここではＰＬＣ１０−３の配置処理を行うだけである。
【０１３４】
ＰＬＣ１０−３グリッドと配線グリッドｅを、図１６−４のコントローラ間ネットワークＮｏ．１グリッドの左下に詰めて配置する。このとき既にコントローラ間ネットワークＮｏ．１にはＰＬＣ１０−４，１０−１の配線グリッドａ，ｃが配置されているが、その間のグリッドが空いているので、左下に詰めて配置すると、その空いているグリッドにＰＬＣ１０−３グリッドと配線グリッドｅとが配置されることになる。この結果が、図１６−５に示されている。
【０１３５】
コントローラ間ネットワークＮｏ．１に接続されるＰＬＣは以上であるので、コントローラ間ネットワークＮｏ．１でのＰＬＣグリッドと配線グリッドの配置処理を終了する。また、コントローラ間ネットワークＮｏ．１が最上位のネットワークであるので、以上でＰＬＣグリッドの配置処理を終了する。
【０１３６】
（２−３）グリッドサイズ算出処理
表示オブジェクト座標算出部１１７のグリッドサイズ算出機能１１７４は、図１６−５のグリッド配置結果に対して、各グリッドのサイズを算出する。特に、ＰＬＣグリッドに対して、オンラインネットワーク構成情報保持部１１６のベース情報を用いて、ＰＬＣの表示に必要なサイズを算出する。
【０１３７】
まず、グリッドサイズ算出機能１１７４は、ＰＬＣグリッドのサイズ算出を行う。このＰＬＣグリッドの算出について、どのＰＬＣから処理を開始するか順序は問わない。この例では、ＰＬＣ１０−１〜ＰＬＣ１０−５の順番にそれぞれのＰＬＣグリッドのサイズ算出を行うものとする。
【０１３８】
グリッドサイズ算出機能１１７４は、図１１のオンラインネットワーク構成情報保持部１１６のＰＬＣ１０−１のベース情報Ｐ１ｂを参照して、増設ベースがないことを抽出し、グリッドの縦サイズを３０と算出する。同時に、ベース情報Ｐ１ｂからベースのスロット数が「４」であることを抽出し、グリッドの横サイズを４０と算出する。
【０１３９】
ＰＬＣ１０−２についても同様に、ベース情報Ｐ２ｂから増設ベースがないことを抽出し、グリッドの縦サイズを３０と算出する。また、ベース情報Ｐ２ｂからベースのスロット数が「３」であることを抽出し、グリッドの横サイズを３０と算出する。
【０１４０】
ＰＬＣ１０−３について、ベース情報Ｐ３ｂから増設ベースがあることを抽出し、グリッドの縦サイズを６０と算出する。同時に、ベース情報Ｐ３ｂからベースのスロット数が「３」、増設ベースのスロット数が「２」であることを抽出し、グリッドの横サイズをサイズの大きなベースに合わせて３０と算出する。
【０１４１】
ＰＬＣ１０−４について、ベース情報Ｐ４ｂから増設ベースがないことを抽出し、グリッドの縦サイズを３０と算出する。また、ベース情報Ｐ４ｂからベースのスロット数が「４」であることを抽出し、グリッドの横サイズを４０と算出する。
【０１４２】
ＰＬＣ１０−５についても同様に、ベース情報Ｐ５ｂから増設ベースがないことを抽出し、グリッドの縦サイズを３０と算出する。同時に、ベース情報Ｐ５ｂからベースのスロット数が「４」であることを抽出し、グリッドの横サイズを４０と算出する。
【０１４３】
その後、縦方向（配線方向）に並ぶＰＬＣグリッド（配置の関係上、同じ横サイズを共有するＰＬＣグリッド）を抽出し、そのＰＬＣグリッドの横サイズを大きなＰＬＣグリッドの横サイズへと統一する。ここでは、横サイズが３０のＰＬＣ１０−３グリッドと横サイズが４０のＰＬＣ１０−５グリッドとが縦方向（配線方向）に並んでいるので、同じ横サイズを共有するように、ＰＬＣ１０−３グリッドの横サイズをＰＬＣ１０−５グリッドの横サイズの４０に変更する。
【０１４４】
つぎに、グリッドサイズ算出機能１１７４は、配線グリッドのサイズ算出を行う。このとき、配線グリッドについて、縦サイズは固定値１０とするが、横サイズについては、それぞれの配線グリッドの下部に配置されるＰＬＣグリッドの横サイズを反映する。また、配線グリッドの横方向にＰＬＣグリッドと配線グリッドが配置される場合には、そのＰＬＣグリッドと配線グリッドの縦サイズの合計サイズの分だけ、縦方向に配線グリッドが伸ばされる。
【０１４５】
そして、グリッドサイズ算出機能１１７４は、ネットワークグリッドのサイズ算出を行う。このネットワークグリッドのサイズ算出について、どのネットワークから処理を開始するか順序は問わない。この例では、上位に配置されたネットワークグリッドから順にサイズ算出を行うものとする。
【０１４６】
まず、コントローラ間ネットワークＮｏ．１については、縦サイズは固定値１０とし、横サイズは、その下にＰＬＣ１０−４，１０−３，１０−１のそれぞれへの配線グリッドａ，ｅ，ｃが配置されているので、それを包含するサイズとする。つまり、ＰＬＣ１０−４グリッド、ＰＬＣ１０−３グリッドおよびＰＬＣ１０−１グリッドの横サイズはそれぞれ、４０，４０，４０であるので、コントローラ間ネットワークＮｏ．１グリッドの横サイズは１２０（＝４０＋４０＋４０）となる。
【０１４７】
また、コントローラ間ネットワークＮｏ．２についても同様に、縦サイズは固定値１０とし、横サイズは、その下にＰＬＣ１０−５，１０−１，１０−２のそれぞれへの配線グリッドｂ，ｃ，ｄが配置されているので、それを包含するサイズとする。つまり、ＰＬＣ１０−５グリッド、ＰＬＣ１０−１グリッドおよびＰＬＣ１０−２グリッドの横サイズはそれぞれ、４０、４０、３０であるので、コントローラ間ネットワークＮｏ．２グリッドの横サイズは１１０（＝４０＋４０＋３０）となる。
【０１４８】
さらに、情報系ネットワークＮｏ．３についても同様に、縦サイズは固定値１０とし、横サイズは、その下にＰＬＣ１０−１，１０−２のそれぞれへの配線グリッドｃ，ｄが配置されているので、それを包含するサイズとする。つまり、ＰＬＣ１０−１グリッドおよびＰＬＣ１０−２グリッドの横サイズはそれぞれ４０、３０であるので、情報系ネットワークＮｏ．３グリッドの横サイズは７０（＝４０＋３０）となる。
【０１４９】
また、フィールドネットワークについても同様に、縦サイズは固定値１０とし、横のサイズは、その下にＰＬＣ１０−４，１０−５のそれぞれへの配線グリッドａ，ｂが配置されているので、それを包含するサイズとする。つまり、ＰＬＣ１０−４グリッドおよびＰＬＣ１０−５グリッドの横サイズはそれぞれ４０、４０であるので、フィールドネットワークグリッドの横サイズは８０（＝４０＋４０）となる。
【０１５０】
図１７は、グリッドサイズ算出結果の一例を示す図である。この図１７は、以上の結果を図１６−５のグリッド配置結果に書込んだものである。この結果は、グリッドモデル保持機能１１７１に格納される。以上で、グリッドサイズ算出処理が終了する。
【０１５１】
（２−４）グリッド座標算出処理
表示オブジェクト座標算出部１１７のグリッド座標算出機能１１７５は、グリッドモデル保持機能１１７１に格納されたグリッドサイズ算出結果を含むグリッドモデルを読出し、グリッドモデルの左上から順にグリッドサイズを加算してグリッド座標を算出する処理を行う。
【０１５２】
具体的には、グリッド座標算出機能１１７５は、読み出した図１７のグリッドモデルの左上隅の座標を（０，０）とし、この座標位置に、各グリッドのサイズを加算してゆき、各グリッドの座標を算出する。図１８は、グリッド座標算出結果の一例を示す図である。この図１８は、図１７のグリッドモデルに、左上隅の座標を（０，０）として、各グリッドのサイズを加算していったものである。なお、この図において、原点から右方向をｘ軸の正方向とし、原点から下方向をｙ軸の正方向としている。
【０１５３】
（システム構成表示処理）
図１９は、システム構成表示処理手順の一例を示すフローチャートである。まず、システム構成表示部１１８は、表示オブジェクト座標算出部１１７によって算出されたグリッド座標を有するグリッドモデルから、ネットワークグリッドを抽出し、それぞれのネットワークをその座標位置に基づいて表示する（ステップＳ２１１）。ここでは、表示部１１２上のシステム構成を表示する領域の所定の位置を、グリッドモデルの原点（０，０）に対応させ、その点からグリッドモデルのグリッド座標に基づいて、ネットワークを描く。ネットワークは、線で描くものとする。また、各ネットワークに対してその名称を表示する。
【０１５４】
ついで、グリッドモデルからＰＬＣグリッドを抽出し、それぞれのＰＬＣグリッドをその座標位置に基づいて表示する（ステップＳ２１２）。このＰＬＣグリッドに関しては、グリッドモデルに含まれる座標情報（またはサイズ情報）に基づいて、矩形状のオブジェクトが配置されるものとする。また、このとき、各ＰＬＣのベース情報に基づいて、ベースの各スロットに装着されているユニットを区切って表示するとともに、その区切った領域内にそのユニットの名称を表示する処理も行う。
【０１５５】
その後、それぞれのＰＬＣとネットワークとを接続する線、すなわち配線を表示する（ステップＳ２１３）。この処理は、オンラインネットワーク構成情報保持部１１６中のベース情報に基づいて、各ＰＬＣの通信ユニットと、この通信ユニットに接続されるネットワークとの間を、線で結ぶことによって行われる。以上によって、システム構成表示処理が終了する。そして、このシステム構成表示部１１８によって作成されたシステム構成情報が、表示部１１２に表示される。
【０１５６】
図２０は、システム構成表示処理によって表示部に表示されるシステム構成情報の一例を示す図である。この図２０の例では、各ＰＬＣの通信ユニット上に、ネットワーク種別の頭文字とネットワーク番号、そのネットワークでの局番号と管理局（マスタ局）か通常局（ローカル局）かを文字列で表示することで、ネットワークパラメータの確認が容易となるようにしている。
【０１５７】
また、各ＰＬＣが保持するプロジェクト情報を読み出した際に、そのステータス（稼動状況や診断情報）を読み出しておけば、それを図２０のシステム構成表示に重畳して表示することも可能である。
【０１５８】
この実施の形態１によれば、実際の制御システムを構成する各ＰＬＣから収集されたネットワーク構成情報を用いて、解析可能な範囲のネットワークの接続関係やＰＬＣの配置関係を自動的にグラフィック表示するようにしたので、ネットワークのシステム構成図の図面を生成する手間を削減することができるという効果を有する。また、生産設備などの制御システムを構成するネットワークやＰＬＣのシステム構成全体を把握することが容易になるという効果を有する。さらに、ＰＬＣから必ず上方向に配線を配置するようにしたので、ＰＬＣがどのネットワークにどれだけ属しているかが容易に判別可能となり、制御システムを構成するネットワークやＰＬＣのシステム構成全体の把握やステータスを把握することも容易となるという効果を有する。
【０１５９】
なお、上述した説明では、パーソナルコンピュータなどによって構成される制御システムエンジニアリング装置１００を制御システムのＰＬＣ１０に接続する形としたが、制御システムエンジニアリング装置１００の機能を、プログラマブルコントローラに接続し、制御システムの稼動状態や制御システムに対する設定を行う表示器に搭載してもよい。このようにすることで、制御システムを構成するネットワークやＰＬＣのシステム構成全体を表示器の画面上に表示することが可能である。
【０１６０】
図２１は、制御システムエンジニアリング装置の機能を有する表示器のハードウェア構成を示すブロック図である。この表示器１５０は、所定の画面を表示するための表示部１５１と、タッチキーなどによる入力部１５２と、ＰＬＣ１０と通信を行うための通信ポート１５３と、当該表示器１５０で設定したデータ（すなわち表示画面プログラム）を記憶するハードディスク装置などからなる記憶部１５４と、表示部１５１に表示する処理（すなわち表示画面プログラムを実行し所定の画面を表示する処理、およびシステム構成の設定や管理の処理）を行うためのマイクロプロセッサ１５５と、その処理に伴う一時データを格納するためのデータ格納メモリ１５６と、が、表示器１５０上のバス１５７に接続されて構成される。なお、入力部１５２がタッチパネル画面となっている場合には、入力部１５２と表示部１５１とが一体となる。
【０１６１】
これにより、制御システムエンジニアリング装置１００を動作させる情報処理端末を別途に用意してＰＬＣ１０に接続することなく、制御システムを構成する表示器１５０上でシステム全体の構成およびステータスを容易に把握することが可能となる。
【０１６２】
実施の形態２．
実施の形態１では、ネットワークグリッドをネットワークに付された番号順に配置し、ＰＬＣグリッドを選択したネットワーク内の局番の小さいものから順に配置していたが、この実施の形態２では、単なる番号順ではなく、制御システムを構成するネットワークやＰＬＣのシステム構成全体を把握することが容易な配置を自動的に算出して表示することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。
【０１６３】
図２２−１は、この発明にかかる制御システムエンジニアリング装置のネットワークグリッド配置機能の機能構成を模式的に示すブロック図であり、図２２−２は、同じくＰＬＣグリッド配置機能の機能構成を模式的に示すブロック図である。
【０１６４】
図２２−１に示されるようにネットワークグリッド配置機能１１７２は、ネットワークに接続するＰＬＣのうち、他のネットワークにも接続するＰＬＣを抽出する他ネットワーク接続ＰＬＣ抽出手段１１７２１と、フィールドネットワークに関連する度合いがより高いネットワークを下方に配置し、情報系ネットワーク２１に関連する度合いがより高いネットワークを上方に配置して、制御システムの全体構成を把握しやすい最適な配置へとソートするネットワーク種別ソート手段１１７２２と、を備える。
【０１６５】
ここで、フィールドネットワークに関連する度合いとは、そのネットワークに属するＰＬＣのうち、フィールドネットワークにも属するＰＬＣの数（または割合）が多いほど、フィールドネットワークに関連する度合いが高いものとする。また、情報系ネットワークに関連する度合いとは、そのネットワークに属するＰＬＣのうち、情報系ネットワークにも属するＰＬＣの数（または割合）が多いほど、情報系ネットワークに関連する度合いが高いものとする。
【０１６６】
また、図２２−２に示されるようにＰＬＣグリッド配置機能１１７３は、選択したネットワークより下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないような配置候補を抽出するＰＬＣグリッド配置候補抽出手段１１７３１と、最も近傍になり局番号の順となる最適な配置を候補から選択するＰＬＣグリッド配置候補選択手段１１７３２と、を備える。なお、その他の構成要素は実施の形態１と同一なのでその説明を省略する。
【０１６７】
つぎに、この実施の形態２による処理手順について説明する。この実施の形態２の制御システムエンジニアリング処理では、オンラインネットワーク構成情報収集部１１４によって収集したネットワーク構成情報のデータ（ＰＬＣデータ）を、オンラインネットワーク構成情報保持部１１６に格納するところまでは、実施の形態１と同じである。しかし、実施の形態２では、このネットワーク構成情報のデータに対して、表示オブジェクト座標算出部１１７が、ネットワークグリッド配置処理を行う図１４−２の処理と、ＰＬＣグリッド配置処理を行う図１４−３の処理とが、実施の形態１とは異なる。そこで、以下では、ネットワークグリッド配置処理とＰＬＣグリッド配置処理について説明し、他の処理についての説明は同一であるので省略する。
【０１６８】
（１）処理の概要
（１−１）ネットワークグリッド配置処理
この実施の形態２では、作成（表示）されるシステム構成情報におけるネットワーク配線の交差をなるべく少なくすることを目的としている。そのために、以下の規則Ａ〜Ｄの順でネットワークグリッドとＰＬＣグリッドの配置を優先的に行うことを特徴とするものである。
【０１６９】
Ａ．制御システムを構成するネットワークやＰＬＣのシステム構成では、イーサネット（登録商標）のような情報系ネットワークと、コントローラ間ネットワークと、フィールドネットワークと、はその使用目的が明確である。つまり、情報系ネットワークはシステムの上位に位置し、コントローラ間ネットワークはシステムの中位に位置し、フィールドネットワークはシステムの下位に位置している。そのため、この実施の形態２では、このような順番でネットワークを配置する。
【０１７０】
Ｂ．同じネットワークに接続するＰＬＣは、互いに近傍に配置する。特に下位ネットワークでは、１つのネットワークが１つのセルを構成していることが多いので、同じ下位ネットワークに接続するＰＬＣは、互いに近傍に配置する。ここで、セルとは、たとえば制御システムでの処理を機能ごとに分類した際のＰＬＣの固まりのことをいう。たとえば、制御システムが、塗装工程、露光工程、洗浄工程、・・・、などの各工程に分かれている場合に、これらの各工程の処理を行う一つの装置のまとまりを一つのセルという。
【０１７１】
Ｃ．上位ネットワークに接続するＰＬＣは、セルコントローラの役割を果たすことが多いので、互いに近傍に配置する必要はない。
【０１７２】
Ｄ．ネットワーク番号や局番号の順に配置する。
【０１７３】
図２３−１は、この実施の形態２によるネットワークグリッド配置処理手順の一例を示すフローチャートである。まず、ネットワークグリッド配置機能１１７２は、オンラインネットワーク構成情報保持部１１６のネットワークデータを参照し、ネットワークを抽出する（ステップＳ２３１）。ついで、上記規則Ａにしたがって、抽出したネットワークを上から情報系ネットワーク、コントローラ間ネットワーク、フィールドネットワークの種別にソートする（ステップＳ２３２）。
【０１７４】
ついで、ソートしたネットワーク種別から１つのネットワーク種別を選択する（ステップＳ２３３）。そして、他ネットワーク接続ＰＬＣ抽出手段１１７２１は、選択したネットワーク種別中のそれぞれのネットワークに接続するＰＬＣを抽出する（ステップＳ２３４）。
【０１７５】
その後、ネットワーク種別ソート手段１１７２２は、各ネットワークについて、他のフィールドネットワークにも接続するＰＬＣの数を計数し、他のフィールドネットワークに接続するＰＬＣの数が多いネットワークほど下に配置する（ステップＳ２３５）。
【０１７６】
ついで、ネットワーク種別ソート手段１１７２２は、各ネットワークについて、他の情報系ネットワークにも接続するＰＬＣの数を計数し、他の情報系ネットワークに接続するＰＬＣの数が多いネットワークほど上に配置する（ステップＳ２３６）。
【０１７７】
最後に、ネットワーク種別ソート手段１１７２２は、各ネットワークについて、他のコントローラ間ネットワークにも接続するＰＬＣの数を計数し、他のコントローラ間ネットワークに接続するＰＬＣの数が多いネットワークほど上に配置する（ステップＳ２３７）。以上のように、１つのネットワーク種別における各ネットワーク間のソート処理が実行される。
【０１７８】
その後、選択されていない他のネットワーク種別が存在するか否かを判定する（ステップＳ２３８）。選択されていない他のネットワーク種別が存在する場合（ステップＳ２３８でＹｅｓの場合）には、ステップＳ２３３へと戻り、選択されていない他のネットワーク種別がなくなるまで、上述した処理が繰り返し実行される。
【０１７９】
また、選択されていない他のネットワーク種別が存在しない場合（ステップＳ２３８でＮｏの場合）には、ネットワークグリッド配置機能１１７２は、ソートが完了した順にネットワークグリッドを配置し（ステップＳ２３９）、その結果をグリッドモデル保持機能１１７１に格納し、ネットワークグリッド配置処理が終了する。
【０１８０】
（１−２）ＰＬＣグリッド配置処理
図２３−２〜図２３−３は、この実施の形態２によるＰＬＣグリッド配置処理手順の一例を示すフローチャートである。ＰＬＣグリッド配置機能１１７３は、オンラインネットワーク構成情報保持部１１６のベース情報からＰＬＣを抽出する（ステップＳ２５１）。ついで、図２３−１のネットワークグリッド配置処理で最も下位に配置されるネットワークを選択する（ステップＳ２５２）。その後、選択したネットワークに接続されるＰＬＣを選択し（ステップＳ２５３）、この中から局番の最も小さいＰＬＣを選択する（ステップＳ２５４）。
【０１８１】
ＰＬＣグリッド配置機能１１７３は、選択したネットワークに接続するＰＬＣが既に配置されているか否かを判定する（ステップＳ２５５）。そのネットワークに接続するＰＬＣが既に配置されていない場合（ステップＳ２５５でＮｏの場合）には、ＰＬＣグリッド配置候補選択手段１１７３２は、抽出したＰＬＣに関して、そのネットワークの左下のグリッドから順に詰めて配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２６０）。
【０１８２】
また、ステップＳ２５５で、そのネットワークに接続するＰＬＣが既に配置されている場合（ステップＳ２５５でＹｅｓの場合）には、ＰＬＣグリッド配置候補抽出手段１１７３１は、そのネットワークよりも下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないような配置候補を抽出できるかを判定する（ステップＳ２５６）。
【０１８３】
そのネットワークよりも下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないような配置候補を抽出できない場合（ステップＳ２５６でＮｏの場合）には、ＰＬＣグリッド配置候補選択手段１１７３２は、そのネットワークの左下のグリッドから順に詰めて配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２６０）。
【０１８４】
また、ステップＳ２５６で、そのネットワークよりも下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないような配置候補を抽出できる場合（ステップＳ２５６でＹｅｓの場合）には、ＰＬＣグリッド配置候補抽出手段１１７３１は、その候補の中から、そのネットワークに既に配置されているＰＬＣと最も近傍になる配置候補を抽出できるかを判定する（ステップＳ２５７）。
【０１８５】
そのネットワークの既に配置されているＰＬＣと最も近傍になる配置候補を抽出できない場合（ステップＳ２５７でＮｏの場合）には、ＰＬＣグリッド配置候補選択手段１１７３２は、そのネットワークの左下のグリッドから順に詰めて配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２６０）。
【０１８６】
また、ステップＳ２５７で、そのネットワークの既に配置されているＰＬＣと最も近傍になる配置候補を抽出できる場合（ステップＳ２５７でＹｅｓの場合）には、ＰＬＣグリッド配置候補抽出手段１１７３１は、その配置候補の中から、そのネットワークに既に配置されているＰＬＣと最も局番号の順となる配置候補を抽出できるかを判定する（ステップＳ２５８）。
【０１８７】
そのネットワークに既に配置されているＰＬＣと最も局番号の順となる配置候補を抽出できない場合（ステップＳ２５８でＮｏの場合）には、ＰＬＣグリッド配置候補選択手段１１７３２は、そのネットワークの左下のグリッドから順に詰めて配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２６０）。
【０１８８】
また、ステップＳ２５８で、そのネットワークに既に配置されているＰＬＣと最も局番号の順となる配置候補を抽出できる場合（ステップＳ２５８でＹｅｓの場合）には、その配置候補を選択し、ＰＬＣグリッド配置候補選択手段１１７３２は、その配置候補に配線グリッドとＰＬＣグリッドとを配置する（ステップＳ２５９）。
【０１８９】
その後またはステップＳ２６０の後、ステップＳ２５２で選択したネットワークに接続するＰＬＣのうち他のＰＬＣが存在するか否かを判定する（ステップＳ２６１）。他のＰＬＣが存在する場合（ステップＳ２６１でＹｅｓの場合）には、つぎに局番の小さなＰＬＣを選択し（ステップＳ２６２）、ステップＳ２５５へと戻って、ステップＳ２５２で選択したネットワークに接続するＰＬＣがなくなるまで、同じ処理が繰り返し行われる。
【０１９０】
また、ステップＳ２６１で他のＰＬＣが存在しない場合（ステップＳ２６１でＮｏの場合）には、他のネットワークが存在するか否かを判定する（ステップＳ２６３）。他のネットワークが存在する場合（ステップＳ２６３でＹｅｓの場合）には、ネットワークグリッド配置処理で、つぎに下位に配置されるネットワークを選択し（ステップＳ２６４）、ステップＳ２５３へと戻り、最も上位に配置されるネットワークについてＰＬＣグリッドと配線グリッドを配置するまで上述した処理が繰り返し実行される。また、他のネットワークが存在しない場合（ステップＳ２６３でＮｏの場合）には、ＰＬＣグリッドと配線グリッドの配置結果をグリッドモデル保持機能１１７１に格納し（ステップＳ２６５）、ＰＬＣグリッド配置処理が終了する。
【０１９１】
（２）処理の具体例
上述した説明では、ネットワークグリッドとＰＬＣグリッドの配置処理の概要を述べたものであるので、この処理の具体例を図１の構成を有する制御システムの場合を例に挙げて以下に説明する。なお、ここでは、図１０の接続経路情報と図１１のネットワーク構成情報とを用いて、グリッドの配置処理を行うものとする。
【０１９２】
（２−１）ネットワークグリッド配置処理
まず、オンラインネットワーク構成情報保持部１１６に格納される図１１のネットワーク構成情報から、データ種別が「ネットワーク」となっているコントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２、フィールドネットワーク、情報系ネットワークＮｏ．３のネットワークデータＭ１，Ｍ２，Ｃ，Ｅ３を抽出する。
【０１９３】
ついで、上述した規則によって、抽出したネットワークをネットワーク種別にソートする。つまり、情報系ネットワークＮｏ．３、コントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２およびフィールドネットワークの順にソートされる。なお、コントローラ間ネットワークのみ、コントローラ間ネットワークＮｏ．１とコントローラ間ネットワークＮｏ．２の２つのネットワークが存在するので、ここではネットワーク番号順にソートし、その後、このコントローラ間ネットワークの順番をさらにソートする。
【０１９４】
まず、他ネットワーク接続ＰＬＣ抽出手段１１７２１は、オンラインネットワーク構成情報保持部１１６のネットワークデータＭ１を参照して、コントローラ間ネットワークＮｏ．１に接続するＰＬＣを抽出する。この結果、ＰＬＣ１０−３，１０−１，１０−４を得る。同様に、コントローラ間ネットワークＮｏ．２に接続するＰＬＣを抽出し、その結果、ＰＬＣ１０−２，１０−１，１０−５を得る。
【０１９５】
ここで、抽出したＰＬＣのうち他のフィールドネットワークにも接続するＰＬＣの数を計数する。抽出したＰＬＣのうち、フィールドネットワークにも接続するＰＬＣは、ＰＬＣ１０−４，１０−５である。そのため、他のフィールドネットワークにも接続するＰＬＣの数は、コントローラ間ネットワークＮｏ．１に関しては、ＰＬＣ１０−４の１個であり、コントローラ間ネットワークＮｏ．２に関しては、ＰＬＣ１０−５の１個である。ネットワーク種別ソート手段１１７２２は、他のフィールドネットワーク２３にも接続するＰＬＣの数が多いネットワークを下にソートするが、この基準では、両者ともに同じ数であるので、コントローラ間ネットワークＮｏ．１とコントローラ間ネットワークＮｏ．２とはソートできない。
【０１９６】
つぎに、抽出したＰＬＣのうち他の情報系ネットワークにも接続するＰＬＣの数を計数する。抽出したＰＬＣのうち、情報系ネットワークにも接続するＰＬＣは、ＰＬＣ１０−１，１０−２である。そのため、他の情報系ネットワークにも接続するＰＬＣの数は、コントローラ間ネットワークＮｏ．１に関しては、ＰＬＣ１０−１の１個であり、コントローラ間ネットワークＮｏ．２に関しては、ＰＬＣ１０−１，１０−２の２個である。これより、ネットワーク種別ソート手段１１７２２は、他の情報系ネットワークにも接続するＰＬＣの数が多いネットワークを上にソートするが、この基準によって、コントローラ間ネットワークＮｏ．２をコントローラ間ネットワークＮｏ．１よりも上にソートする。
【０１９７】
以上によって、ソートが完了したので、ここでは他のコントローラ間ネットワークに接続するＰＬＣの数でソートする必要はない。
【０１９８】
その後、ネットワークグリッド配置機能１１７２は、ソートが完了した順にネットワークグリッドを配置し、グリッドモデル保持機能１１７１に格納する。図２４は、この実施の形態２によるネットワークグリッド配置処理の結果を示す図である。
【０１９９】
（２−２）ＰＬＣグリッド配置処理
図２５−１〜図２５−５は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である。以下、これらの図２５−１〜図２５−５を参照しながら、ＰＬＣグリッドの配置処理について説明する。
【０２００】
まず、表示オブジェクト座標算出部１１７のＰＬＣグリッド配置機能１１７３は、図１１のオンラインネットワーク構成情報保持部１１６からデータ種別が「ＰＬＣネットワーク」となっている接続ネットワーク情報Ｐ３ｎ、Ｐ１ｎ、Ｐ４ｎ、Ｐ２ｎ、Ｐ５ｎを抽出する。
【０２０１】
ついで、抽出した接続ネットワーク情報から、図２４で最下位に配置されているネットワークであるフィールドネットワークに接続するＰＬＣを取得する。ここでは、ＰＬＣ１０−４（接続ネットワーク情報Ｐ４ｎ）とＰＬＣ１０−５（接続ネットワーク情報Ｐ５ｎ）が取得される。これらのＰＬＣ１０−４（マスタ局）とＰＬＣ１０−５（ローカル局１）のうち、局番の小さなＰＬＣから処理を行うが、ここでは、フィールドネットワークであるため、マスタ局を先ず処理し、つぎにローカル局の局番順に処理を行う。そのため、ＰＬＣ１０−４→ＰＬＣ１０−５の順で処理を行う。
【０２０２】
ＰＬＣ１０−４グリッドと配線グリッドａを、図２４のフィールドネットワークグリッドの左下に詰めて配置する。なお、図１１の接続ネットワーク情報Ｐ４ｎに示されるように、ＰＬＣ１０−４はコントローラ間ネットワークＮｏ．１にも接続しているため、ＰＬＣ１０−４グリッドからコントローラ間ネットワークＮｏ．１グリッドにかけて配線グリッドａを配置する。このとき、ＰＬＣ１０−４グリッドと各ネットワークグリッドと各配線グリッドの幅は同一となっている。この結果が、図２５−１に示されている。
【０２０３】
つぎに、ローカル局であるＰＬＣ１０−５の処理を行う。ＰＬＣ１０−５グリッドと配線グリッドｂを、図２５−１のフィールドネットワークグリッドの左下に詰めて配置する。このとき、既にフィールドネットワークグリッドにはＰＬＣ１０−４の配線グリッドａが配置されており、そのネットワークより下位のネットワークに既に配置されているＰＬＣの配置関係を分断しないようなＰＬＣ１０−５の配置候補としては『ＰＬＣ１０−４の左』と『ＰＬＣ１０−４の右』である。いずれもフィールドネットワークに接続しているＰＬＣ１０−４に最も近傍となる配置候補である。そして、この中で局番号の順となるのは、ＰＬＣ１０−４がマスタ局であり、ＰＬＣ１０−５がローカル局の局番１であるので、『ＰＬＣ１０−４の右』である。よって、この位置にＰＬＣ１０−５グリッドと配線グリッドｂを配置する。
【０２０４】
なお、図１１の接続ネットワーク情報に示されるように、ＰＬＣ１０−５はコントローラ間ネットワークＮｏ．２にも接続しているため、ＰＬＣ１０−５グリッドからコントローラ間ネットワークＮｏ．２グリッドにかけても配線グリッドｂを配置する。このとき、フィールドネットワークよりも上位のネットワークグリッドは、ＰＬＣ１０−４グリッドとＰＬＣ１０−５グリッドとを包含するように、横方向の幅が伸びる。この結果が、図２５−２に示されている。フィールドネットワークに接続されるＰＬＣは以上であるので、フィールドネットワーク２３でのＰＬＣグリッドと配線グリッドの配置処理を終了する。
【０２０５】
ついで、図２４（図２５−２）からフィールドネットワークの上位に配置されるネットワークとしてコントローラ間ネットワークＮｏ．１が選択される。コントローラ間ネットワークＮｏ．１に接続するＰＬＣは、ＰＬＣ１０−１（局番２）、ＰＬＣ１０−３（局番１）、ＰＬＣ１０−４（局番３）であるが、これらのうち、まだ配置されていないのは、ＰＬＣ１０−１とＰＬＣ１０−３である。そこで、これらのＰＬＣ１０−１，１０−３について、ＰＬＣグリッドの配置処理を行う。ここでは、局番の小さい順、すなわちＰＬＣ１０−３→ＰＬＣ１０−１の順で処理を行う。
【０２０６】
まず、ＰＬＣ１０−３グリッドと配線グリッドｃを、図２５−２のコントローラ間ネットワークＮｏ．１グリッドの左下に詰めて配置する。このとき既にコントローラ間ネットワークＮｏ．１にはＰＬＣ１０−４，１０−５の配線グリッドａ，ｂが配置されており、そのネットワークより下位のネットワーク（フィールドネットワーク）に既に配置されているＰＬＣ１０−４グリッドとＰＬＣ１０−５グリッドの配置関係を分断しないようなＰＬＣ１０−３の配置候補としては、『ＰＬＣ１０−４の左』と『ＰＬＣ１０−５の右』である。この中でコントローラ間ネットワークＮｏ．１に接続しているＰＬＣ１０−４に最も近傍となるのは『ＰＬＣ１０−４の左』である。よって、この位置にＰＬＣ１０−３グリッドと配線グリッドｃを配置する。この結果が、図２５−３に示されている。
【０２０７】
ついで、つぎに局番の大きなＰＬＣ１０−１グリッドの配置処理を行う。ＰＬＣ１０−１グリッドと配線グリッドｄを、図２５−３のコントローラ間ネットワークＮｏ．１グリッドの左下に詰めて配置する。このとき既にコントローラ間ネットワークＮｏ．１にはＰＬＣ１０−３，１０−４，１０−５の配線グリッドｃ，ａ，ｂが配置されており、そのネットワークより下位のネットワーク（フィールドネットワーク）に既に配置されているＰＬＣ１０−４グリッドとＰＬＣ１０−５グリッドの配置関係を分断しないようなＰＬＣ１０−１の配置候補としては、『ＰＬＣ１０−３の左』、『ＰＬＣ１０−３の右（＝ＰＬＣ１０−４の左）』、『ＰＬＣ１０−５の右』である。この中でコントローラ間ネットワークＮｏ．１に接続しているＰＬＣ１０−３，１０−４に最も近傍になり、またコントローラ間ネットワークＮｏ．１に既に配置されているＰＬＣ１０−３（局番１）とＰＬＣ１０−４（局番３）と最もよい番号順の配置になるのは『ＰＬＣ１０−３の右』である。よって、この位置にＰＬＣ１０−１グリッドと配線グリッドｄを配置する。
【０２０８】
なお、図１１の接続ネットワーク情報Ｐ１ｎに示されるように、ＰＬＣ１０−１はコントローラ間ネットワークＮｏ．２と情報系ネットワークＮｏ．３にも接続しているため、ＰＬＣ１０−１グリッドからコントローラ間ネットワークＮｏ．２グリッドと情報系ネットワークＮｏ．３グリッドにかけても配線グリッドｄを配置する。この結果が図２５−４に示されている。コントローラ間ネットワークＮｏ．１グリッドに接続されるＰＬＣは以上であるので、コントローラ間ネットワークＮｏ．１でのＰＬＣグリッドと配線グリッドの配置処理を終了する。
【０２０９】
ついで、図２４（図２５−４）からコントローラ間ネットワークＮｏ．１の上位に配置されるネットワークとしてコントローラ間ネットワークＮｏ．２が選択される。コントローラ間ネットワークＮｏ．２に接続するＰＬＣは、ＰＬＣ１０−１（局番２）、ＰＬＣ１０−２（局番１）、ＰＬＣ１０−５（局番３）であるが、これらうち、まだ配置されていないのは、ＰＬＣ１０−２である。そこで、このＰＬＣ１０−２についてＰＬＣグリッドと配線グリッドの配置処理を行う。ここで、配置されていないＰＬＣが複数ある場合には、局番の小さいＰＬＣから処理を行う。また、コントローラ間ネットワークの場合には、管理局、通常局に関係なく、局番順に処理を行う。
【０２１０】
ＰＬＣ１０−２グリッドと配線グリッドｅを、図２５−４のコントローラ間ネットワークＮｏ．２グリッドの左下に詰めて配置する。このとき既にコントローラ間ネットワークＮｏ．２にはＰＬＣ１０−１，１０−５の配線グリッドｄ，ｂが配置されており、そのネットワークより下位のネットワーク（コントローラ間ネットワークＮｏ．１とフィールドネットワーク）に既に配置されているＰＬＣ１０−３，１０−１，１０−４，１０−５の配置関係を分断しないようなＰＬＣ１０−２の配置候補としては、『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−１につながる配線ｄの左の空きグリッド』、『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−１につながる配線ｄとＰＬＣ１０−５につながる配線ｂの間の空きグリッド』、『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−５につながる配線ｂの右』である。この中でコントローラ間ネットワークＮｏ．２に接続しているＰＬＣ１０−１に最も近傍となるのは『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−１につながる配線ｄとＰＬＣ１０−５につながる配線ｂの間の空きグリッド』である。なお、ここでは、上記の候補の中からコントローラ間ネットワークＮｏ．２に既に配置されているＰＬＣ１０−１（局番２）とＰＬＣ１０−５（局番３）に対して、最も局番号の順になる配置候補を抽出できないために、上記の『コントローラ間ネットワークＮｏ．２の下のＰＬＣ１０−１につながる配線ｄとＰＬＣ１０−５につながる配線ｂの間の空きグリッド』が選択される。よって、この位置にＰＬＣ１０−２グリッドと配線グリッドｅを配置する。この結果が、図２５−５に示されている。
【０２１１】
その後、図２４（図２５−５）からコントローラ間ネットワークＮｏ．２の上位に配置されるネットワークとして情報系ネットワークＮｏ．３が選択されるが、この情報系ネットワークＮｏ．３に接続するＰＬＣ１０−１，１０−２のうち、まだ配置されていないＰＬＣはない。そして、この情報系ネットワーク２１が最上位のネットワークであるので、ＰＬＣグリッド配置処理が終了する。
【０２１２】
この後、実施の形態１で説明したように、図２５−５の結果に対して、グリッドサイズ算出機能１１７４によって各グリッドのサイズ（特に、ＰＬＣグリッドに対して、ＰＬＣのベース情報からＰＬＣの表示に必要なサイズ）を算出するグリッドサイズ算出処理を行い、左上から順にグリッドサイズを加算してグリッド座標を算出するグリッド座標算出処理を行う。図２６は、図２５−５の結果に対して、グリッドサイズとグリッド座標を算出した結果を示す図である。
【０２１３】
そして、システム構成表示部１１８が、上記の結果得られるグリッド座標が付加されたグリッドモデルを読み込んで、表示部１１２にシステム構成情報を表示する。図２７は、システム構成表示処理によって表示されるシステム構成情報の一例を示す図である。この表示画面では、人手によって作成される制御システムのネットワーク構成図に近い状態で表示されるため、つまり、情報系ネットワークを上位に表示し、コントロール間ネットワークを中位に表示し、フィールドネットワークを下位に表示するため、使用者はネットワーク構成から制御システムの構成を実施の形態１の場合に比較して把握しやすくなるという効果を有する。
【０２１４】
この実施の形態２によれば、収集されたネットワーク構成情報を、使用者が把握しやすいネットワークの順序で表示するようにしたので、制御システムを構成するネットワークやＰＬＣのシステム構成全体を把握することが容易となるという効果を有する。
【０２１５】
図２８は、制御システムの他の構成例を示す図である。この図２８は、実施の形態１の制御システムを構成するネットワークやＰＬＣのシステム構成全体の例を示す図１に比較して、多数のＰＬＣによって複雑に制御システムが構成されている。この図２８のような制御システムのシステム構成情報を、実施の形態１の方法で表示する場合と、実施の形態２の方法で表示する場合とで比較する。
【０２１６】
図２９は、図２８の制御システムを実施の形態１の方法で表示したシステム構成を示す図である。また、図３０は、図２８の制御システムについて実施の形態２の方法で作成したグリッドモデルを示す図であり、図３１は、図３０のグリッドモデルに基づいて表示される図２８の制御システムのシステム構成を示す図である。
【０２１７】
実施の形態１の方法によって表示される図２９のシステム構成の表示画面よりも、実施の形態２の方法によって表示される図３１のシステム構成の表示画面の方が、制御システムの上位情報系を構成するネットワークが画面の上方に表示され、システムの下位フィールド系を構成するネットワークが下方に表示され、かつ、同じネットワークに接続するＰＬＣがまとまって表示されるので、分かりやすい。つまり、実施の形態１の方法によって表示される図２９のシステム構成の表示画面よりも、実施の形態２の方法によって表示される図３１の方が、使用者が分かりやすく手で描いた図２８のシステム構成図により近い表現となっている。すなわち、この実施の形態２によれば、人間が分かりやすく手で描いたシステム構成図により近い表現のシステム構成情報を、自動的に表示することが可能となる。
【０２１８】
実施の形態３．
この実施の形態３では、実施の形態１，２において、どの経路を通って目的とするＰＬＣへ接続したのかについて、具体的な接続経路を表示することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。なお、以下の説明では、実施の形態１の結果を用いて説明する。
【０２１９】
図３２は、この発明にかかる制御システムエンジニアリング装置の実施の形態３の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、実施の形態１の図３において、表示オブジェクト座標算出部１１７によって算出された座標を含むデータと、オンライン接続経路保持部１１５で保持されている接続経路と、から、起点ＰＬＣから目的とするＰＬＣまでの接続経路を表示部１１２に表示する接続経路表示部１２０をさらに備える。この接続経路表示部１２０は、請求の範囲における接続経路表示手段に対応している。なお、実施の形態１と同一の構成要素には同一の符号を付して、その説明を省略している。
【０２２０】
つぎに、このような構成を有する制御システムエンジニアリング装置１００における起点ＰＬＣから対象となるＰＬＣまでの接続経路の表示処理について説明する。図３３は、接続経路表示処理手順の一例を示すフローチャートである。また、図３４−１〜図３４−５は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である。なお、この処理は、実施の形態１，２において、システム構成情報の表示処理が行われている状態で実施されるものである。
【０２２１】
まず、接続経路表示部１２０は、起点ＰＬＣのオブジェクトの表示部１１２上の位置を表示オブジェクト座標算出部１１７から取得し、起点ＰＬＣのオブジェクト全体を強調表示する（ステップＳ２７１、図３４−１）。
【０２２２】
ついで、オンライン接続経路保持部１１５に格納される接続経路から指定されたまたは１つの接続経路情報を選択する（ステップＳ２７２）。選択した接続経路情報中の起点ＰＬＣからデータ１に記載されるネットワークへの配線を選択する（ステップＳ２７３）。そして、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２７４、図３４−２）。
【０２２３】
その後、接続経路表示部１２０は、接続経路情報中のデータ１に記載されるネットワークと、データ２に記載されるＰＬＣとを結ぶ配線を選択する（ステップＳ２７５）。そして、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２７６、図３４−３）。
【０２２４】
ついで、接続経路表示部１２０は、強調描画された２つの配線間のネットワーク部分を強調描画する（ステップＳ２７７、図３４−４）。その後、データ２に記載されるＰＬＣが、接続経路情報の名称のＰＬＣ（終点ＰＬＣ）であるか否かを判定する（ステップＳ２７８）。
【０２２５】
データ２に記載されるＰＬＣが終点ＰＬＣでない場合（ステップＳ２７８でＮｏの場合）には、接続経路表示部１２０は、ｎ＝１、ｍ＝２を設定し（ステップＳ２７９）、接続経路情報中のデータ２ｎに記載されるＰＬＣと、データ２ｎ＋１に記載されるネットワークとを結ぶ配線を選択する（ステップＳ２８０）。その後、この配線に対応する表示部１１２上での位置を表示オブジェクト座標演算部から取得し、強調描画する（ステップＳ２８１）。
【０２２６】
ついで、接続経路表示部１２０は、接続経路情報中のデータ２ｍ−１に記載されるネットワークと、２ｍに記載されるＰＬＣとを結ぶ配線を選択する（ステップＳ２８２）。その後、この配線に対応する表示部１１２上での位置を表示オブジェクト座標算出部１１７から取得し、強調描画する（ステップＳ２８３）。そして、接続経路表示部１２０は、強調描画された２つの配線間のネットワーク部分を強調描画する（ステップＳ２８４）。
【０２２７】
その後、データ２ｍに記載されるＰＬＣが、接続経路情報の名称のＰＬＣ（終点ＰＬＣ）であるか否かを判定する（ステップＳ２８５）。データ２ｍに記載されるＰＬＣが終点ＰＬＣでない場合（ステップＳ２８５でＮｏの場合）には、接続経路表示部１２０は、ｎ＝ｎ＋１、ｍ＝ｍ＋１に設定した後（ステップＳ２８６）、ステップＳ２８０へと戻り、上述した処理が繰り返し実行される。
【０２２８】
また、ステップＳ２７８で、データ２に記載されるＰＬＣが終点ＰＬＣである場合（ステップＳ２７８でＹｅｓの場合）、またはステップＳ２８５で、データ２ｍに記載されるＰＬＣが終点ＰＬＣである場合（ステップＳ２８５でＹｅｓの場合）には、起点ＰＬＣと目的とする終点ＰＬＣまでの間の接続経路の表示処理が終了する（図３４−５）。
【０２２９】
この実施の形態３によれば、制御システムを構成するネットワークにおいて、起点ＰＬＣから終点ＰＬＣまでの接続経路を容易に確認することができるという効果を有する。
【０２３０】
実施の形態４．
実施の形態１〜３では、実際の制御システムを構成するＰＬＣに制御システムエンジニアリング装置を接続し、そのＰＬＣを介してオンラインで制御システムのネットワーク構成やＰＬＣのシステム構成の情報を得て、システム構成情報を表示していた。これに対し、この実施の形態４では、オフラインで編集されたシステム構成図に対して、到達可能なＰＬＣを判定することを可能にし、さらには、複数の接続経路が存在する際には通信スループットを参照して最適な経路を自動的に選択することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。
【０２３１】
図３５は、この発明にかかる制御システムエンジニアリング装置の実施の形態４の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、通信部１１１と、表示部１１２と、起点ＰＬＣ指定部１１３と、システム構成編集部１２１と、オフラインネットワーク構成情報保持部１２２と、接続経路解析選択部１２３と、スループットモデル保持部１２４と、オフライン接続経路保持部１２５と、表示オブジェクト座標算出部１１７と、システム構成表示部１１８と、接続経路表示部１２０と、これらの各処理部を制御する制御部１１９と、を備える。
【０２３２】
システム構成編集部１２１は、当該制御システムエンジニアリング装置１００上で、オフラインで生産設備などの制御システムを構成するネットワークやＰＬＣのシステム構成全体を設定する画面を使用者に対して提供するとともに、使用者によって設定された内容を管理する。このシステム構成編集部１２１は、請求の範囲におけるシステム構成編集手段に対応している。
【０２３３】
オフラインネットワーク構成情報保持部１２２は、使用者によってシステム構成編集部１２１から直接に設定された、制御システムを構成するＰＬＣのネットワークとの接続状態を示す接続ネットワーク情報や、ＰＬＣのシステム構成（ベース上に装着されているユニットの構成）を示すベース情報を含むネットワーク構成情報を保持する。このオフラインネットワーク構成情報保持部１２２に保持される接続ネットワーク情報やネットワーク構成情報を含むネットワーク構成情報は、当該制御システムエンジニアリング装置１００が自動的にシステム構成情報をオンラインで収集し、ネットワーク情報を作成するのではなく、既存の制御システムについてのシステム構成情報やネットワーク情報を使用者が制御システムエンジニアリング装置１００に直接入力して（オフラインで）得られるので、以下では、オフラインネットワーク構成情報ともいう。このオフラインネットワーク構成情報保持部１２２は、請求の範囲におけるオフラインネットワーク構成情報保持手段に対応している。
【０２３４】
接続経路解析選択部１２３は、起点ＰＬＣ指定部１１３で設定されたＰＬＣを起点として、システム構成編集部１２１によって設定されたネットワーク構成におけるそれぞれのＰＬＣへの接続経路を解析する。また、複数の接続経路が存在する場合には、スループットモデル保持部１２４のネットワーク通信スループットデータベースを参照して、最適な方の経路を選択する機能も有する。この接続経路解析選択部１２３は、請求の範囲における接続経路解析選択手段に対応している。
【０２３５】
スループットモデル保持部１２４は、制御システムの各接続経路における通信スループットを算出する際のスループットモデルをデータベースとして保持する。このスループットモデル保持部１２４は、請求の範囲におけるスループットモデル保持手段に対応している。
【０２３６】
オフライン接続経路保持部１２５は、接続経路解析選択部１２３にて解析および選択された、それぞれのＰＬＣへの接続経路（以下、オフライン接続経路ともいう）を保持する。このオフライン接続経路は、実施の形態１の図１０の接続経路情報のデータ構成に、スループット評価値をさらに含むことを特徴とする。このオフライン接続経路保持部１２５は、請求の範囲におけるオフライン接続経路保持手段に対応している。
【０２３７】
なお、実施の形態１〜３と同一の構成要素には同一の符号を付して、その説明を省略している。ただし、この実施の形態４では、表示オブジェクト座標算出部１１７は、オフラインネットワーク構成情報保持部１２２で保持されるネットワーク構成情報を用いて、表示部１１２に表示する表示オブジェクトの座標を算出する。
【０２３８】
つぎに、このような構成を有する制御システムエンジニアリング装置１００での、オフラインでの制御システム構成処理からオフラインでの接続経路表示処理について順に説明する。
【０２３９】
（オフラインでの制御システム構成処理）
システム構成編集部１２１では、グラフィカルユーザインタフェースでのドラッグアンドドロップやウィザードによって、使用者によって入力される制御システムを構成するネットワークやＰＬＣのシステム構成全体を設定する。
【０２４０】
システム構成編集部１２１で設定されたシステム構成データ（以下、オフラインネットワーク構成情報という）は、オフラインネットワーク構成情報保持部１２２で保持される。このデータ形式は、実施の形態１で説明したオンラインネットワーク構成情報保持部１１６によって保持されるネットワーク構成情報と同じである。たとえば、１つの要素（ネットワークまたはＰＬＣ）を追加する操作を行うと、その要素のデータが、オフラインネットワーク構成情報保持部１２２で保持されるオフラインネットワーク構成情報に追加される。続けて、要素のデータが追加された後のシステム構成データ全体に対して表示オブジェクト座標算出部１１７が座標を算出する処理を行って、システム構成を表示部１１２に表示する。したがって、同じシステム構成を表現する場合には、データ追加の操作の順序によって、生成されるデータの順番が異なるが、データの内容（データの意味するところ）は同じものとなる。
【０２４１】
なお、この実施の形態４では、実施の形態１の図１と同じ制御システムの構成を、以下の手順によってオフラインで構築したものとする。まず、ＰＬＣ１０−３を追加し、ついで、コントローラ間ネットワークＮｏ．１（２２Ａ）を追加した後に、ＰＬＣ１０−１とＰＬＣ１０−４を順に追加する。その後、コントローラ間ネットワークＮｏ．２（２２Ｂ）を追加し、ＰＬＣ１０−２とＰＬＣ１０−５を順に追加する。そして、フィールドネットワーク（２３）を追加した後、情報系ネットワークＮｏ．３（２１）を追加する。
【０２４２】
その結果として、オフラインネットワーク構成情報保持部１２２で保持されるオフラインネットワーク構成情報のデータの内容は図１１と同じとなり、システム構成の表示も図２０（実施の形態２の方法を用いれば、図２７）と同じになる。以下では、図１１や図２７のような表示部１１２に表示されるシステム構成の画面を、システム構成図ということにする。
【０２４３】
（オフライン接続経路解析処理）
（１）処理の概要
オフラインで編集されたシステム構成図に対して、起点となるＰＬＣ（制御システムエンジニアリング装置１００をどのＰＬＣに接続するか）を、起点ＰＬＣ指定部１１３を用いて指定する。その後、接続経路解析選択部１２３は、起点ＰＬＣ指定部１１３で設定されたＰＬＣを起点として、システム構成編集部１２１によって設定されたネットワーク構成におけるそれぞれのＰＬＣへの接続経路を解析する。以下に、この処理の詳細について説明する。
【０２４４】
図３６−１〜図３６−３は、オフライン接続経路解析処理手順の一例を示すフローチャートである。まず、起点ＰＬＣ指定部１１３によって当該制御システムエンジニアリング装置１００を接続する接続先ＰＬＣ（起点ＰＬＣ）が指定されると（ステップＳ３１１）、接続経路解析選択部１２３は、指定された起点ＰＬＣまでの接続経路を出力する（ステップＳ３１２）。ついで、指定された起点ＰＬＣを処理対象のＰＬＣとして選択し（ステップＳ３１３）、この選択したＰＬＣに対して、図３６−２に示されるＢ１処理を実行し（ステップＳ３１４）、オフライン接続経路解析処理が終了する。
【０２４５】
図３６−２は、ステップＳ３１４におけるＢ１処理の手順を示すフローチャートである。まず、接続経路解析選択部１２３は、処理の対象となるＰＬＣが接続しているネットワークを収集する（ステップＳ３３１）。より具体的には、処理の対象となるＰＬＣの接続ネットワーク情報をオフラインネットワーク構成情報保持部１２２から収集する。ついで、情報収集されたそれぞれのネットワークへの接続経路はループを構成するか否かを判定する（ステップＳ３３２）。ここで、ループか否かの判定は、接続経路で同じ要素が複数含まれる場合にはループであると判定し、それ以外の場合にはループでないと判定する。
【０２４６】
接続経路がループでない場合（ステップＳ３３２でＮｏの場合）には、図１２の制約の下、ネットワークをさらに情報収集できるか否かを判定する（ステップＳ３３３）。ネットワークをさらに情報収集できる場合（ステップＳ３３３でＹｅｓの場合）には、そのネットワークを処理の対象ネットワークとして選択し（ステップＳ３３４）、図３６−３に示されるＢ２処理を実行する（ステップＳ３３５）。また、ステップＳ３３３で、図１２の制約に該当し、ネットワークをさらに情報収集できない場合（ステップＳ３３３でＮｏの場合）またはステップＳ３３２で、接続経路がループである場合（ステップＳ３３２でＹｅｓの場合）には、Ｂ１処理を終了し、図３５の処理に戻る。
【０２４７】
図３６−３は、図３６−２のステップＳ３３５におけるＢ２処理の手順の一例を示すフローチャートである。このＢ２処理では、接続経路解析選択部１２３は、まず、処理の対象となるネットワークに接続しているＰＬＣを収集する（ステップＳ３５１）。具体的には、処理の対象となるネットワークのネットワーク情報をオフラインネットワーク構成情報保持部１２２から取得し、このネットワーク情報から処理対象のネットワークに接続されるＰＬＣを収集する。ついで、情報収集されたそれぞれのＰＬＣまでの接続経路はループを構成しているか否かを判定する（ステップＳ３５２）。
【０２４８】
接続経路がループを構成していない場合（ステップＳ３５２でＮｏの場合）には、最適な接続経路か否かを判定する（ステップＳ３５３）。最適な接続経路か否かの判定は、複数の接続経路が存在する場合に、スループットモデル保持部１２４が保持する通信スループット情報を参照して、通信スループットのよい接続経路であるか否かを判定することによって行われる。その結果、最適な接続経路でない場合（ステップＳ３５３でＮｏの場合）には、その接続経路を出力することなくＢ１処理を終了し、図３６−２の処理に戻る。
【０２４９】
また、最適な接続経路である場合（ステップＳ３５３でＹｅｓの場合）には、その接続経路をオフライン接続経路保持部１２５に出力し（ステップＳ３５４）、図１２の制約の下、そのＰＬＣに接続するネットワークをさらに情報収集できるか否かを判定する（ステップＳ３５５）。ネットワークをさらに情報収集できない場合（ステップＳ３５５でＮｏの場合）には、Ｂ２処理を終了し、図３６−２の処理に戻る。また、そのＰＬＣに接続するネットワークをさらに情報収集できる場合（ステップＳ３５５でＹｅｓの場合）には、そのＰＬＣを処理対象として選択し（ステップＳ３５６）、図３６−２のＢ１処理を実行する（ステップＳ３５７）。
【０２５０】
また、ステップＳ３５２で、ＰＬＣまでの接続経路がループを構成している場合（ステップＳ３５２でＹｅｓの場合）には、その接続経路を出力することなくＢ１処理を終了し、図３６−２の処理に戻る。
【０２５１】
（２）処理の具体例
上述した説明では、オフライン接続経路解析処理の概要を述べたものであるので、この処理の具体例を図１の構成を有する制御システムの場合を例に挙げて以下に説明する。図３７−１〜図３７−５は、接続経路解析選択処理の結果、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である。また、ここでは、オフラインネットワーク構成情報保持部１２２は、図１１のネットワーク構成情報を保持しているものとする。これらの図１１と図３７−１〜図３７−５に示されるデータは、データ生成の順に示されている。また、ここでも制約として、図１２に示される制約が適用されるものとする。
【０２５２】
図３８は、この実施の形態４によるスループットモデルの例を示す図である。この実施の形態４では、ＰＬＣのスループットを１Ｍｂｐｓであるとし、フィールドネットワークのスループットを０．１Ｍｂｐｓであるとし、コントローラ間ネットワークのスループットを１０Ｍｂｐｓであるとし、情報系ネットワークのスループットを１００Ｍｂｐｓであるとしている。また、接続経路全体のスループットの評価値の計算方法は、接続経路中に含まれる各要素のスループット値の逆数を加算して求め、この接続経路全体のスループットの評価値が小さい方が、スループットが良いものと判定する。
【０２５３】
（２−１）ＰＬＣ１０−３
まず、接続経路解析選択部１２３は、起点ＰＬＣ指定部１１３で指定されたＰＬＣ１０−３の接続経路Ｐ３ｇを出力する。この接続経路は、終点ＰＬＣが起点ＰＬＣと同じＰＬＣ１０−３である接続経路である。そして、スループットモデル保持部１２４の図３８の条件を参照して、スループット評価値を計算すると、ＰＬＣ１０−３は起点ＰＬＣであるので、スループット評価値は０となる。この結果が、図３７−１に示されている。そして、この起点ＰＬＣであるＰＬＣ１０−３に対して、図３６−２のＢ１処理を実行する。
【０２５４】
（２−２）ＰＬＣ１０−３に接続されるネットワーク
ＰＬＣ１０−３を処理の対象としたＢ１処理では、ＰＬＣ１０−３が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報保持部１２２中の接続ネットワーク情報Ｐ３ｎを読み出す処理を行う。ここでは、コントローラ間ネットワークＮｏ．１が収集される。その後、収集したネットワーク（コントローラ間ネットワークＮｏ．１）までの接続経路を作成し、その接続経路がループか否かを確認する。この場合、接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１（２２Ａ）」となり、同じＰＬＣが複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、コントローラ間ネットワークＮｏ．１を処理の対象として図３６−３のＢ２処理を実行する。
【０２５５】
（２−３）コントローラ間ネットワークＮｏ．１に接続されるＰＬＣ
コントローラ間ネットワークＮｏ．１を処理の対象としたネットワーク情報出力処理では、コントローラ間ネットワークＮｏ．１に接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報保持部１２２中のネットワークデータＭ１の中で、コントローラ間ネットワークＮｏ．１に接続するＰＬＣを検索して抽出する。ここでは、コントローラ間ネットワークＮｏ．１に接続するＰＬＣとして、ＰＬＣ１０−３，１０−４，１０−１が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路がループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。
【０２５６】
（２−４）コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−３
ＰＬＣ１０−３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−３」であり、同じＰＬＣが複数出現するのでループである。そこで、この接続経路を出力せずに、このＰＬＣ１０−３についての処理が終了する。
【０２５７】
（２−５）コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４
ＰＬＣ１０−４までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ４ｇを出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−４までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＝２．１
となるので、出力時にこのスループット値を入力する。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、ＰＬＣ１０−４を処理の対象として図３６−２のＢ１処理を実行する。
【０２５８】
（２−６）ＰＬＣ１０−４に接続されるネットワーク
ＰＬＣ１０−４を処理の対象としたＢ１処理では、ＰＬＣ１０−４が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報中の接続ネットワーク情報Ｐ４ｎに格納されているネットワークを読み出す処理を行う。ここでは、ＰＬＣ１０−４に接続されるネットワークとして、フィールドネットワークとコントローラ間ネットワークＮｏ．１とが収集される。その後、収集したネットワークまでの接続経路を作成し、その接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。
【０２５９】
（２−７）ＰＬＣ１０−４→フィールドネットワーク
フィールドネットワーク２３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→フィールドネットワーク」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、フィールドネットワークを処理の対象として選択し、図３６−３のＢ２処理を実行する。
【０２６０】
（２−８）フィールドネットワークに接続されるＰＬＣ
フィールドネットワークを処理の対象としたＢ２処理では、フィールドネットワークに接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報中のネットワークデータＣからフィールドネットワークに接続するＰＬＣを検索して抽出する。ここでは、フィールドネットワークに接続するＰＬＣとして、ＰＬＣ１０−４，１０−５が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路がループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。
【０２６１】
（２−９）フィールドネットワーク→ＰＬＣ１０−４
ＰＬＣ１０−４までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→フィールドネットワーク→ＰＬＣ１０−４」であり、同じＰＬＣが複数出現するのでループである。そこで、この接続経路は出力せずに、このＰＬＣ１０−４についての処理が終了する。
【０２６２】
（２−１０）フィールドネットワーク→ＰＬＣ１０−５
ＰＬＣ１０−５までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→フィールドネットワーク→ＰＬＣ１０−５」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ５ｇ−１を出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−５までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／０．１）＋（１／１）＝１３．１
となるので、出力時にこのスループット値を入力する。この結果が図３７−３に示されている。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約Ｂに該当するので、図３６−２のＢ１処理を実行しない。以上により、（２−８）のフィールドネットワークを処理の対象としたＢ２処理を終了する。
【０２６３】
（２−１１）コントローラ間ネットワークＮｏ．１に接続されるＰＬＣ
（２−６）でＰＬＣ１０−４に接続されるネットワークの１つとして収集されたコントローラ間ネットワークＮｏ．１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−４→コントローラ間ネットワークＮｏ．１」となり、同じネットワークが複数出現するので、ループとなっている。そのため、図３６−３のＢ２処理を実行しない。以上により、（２−６）のＰＬＣ１０−４を処理の対象としたＢ１処理を終了する。
【０２６４】
（２−１２）ＰＬＣ１０−１について
（２−３）でコントローラ間ネットワークＮｏ．１に接続するＰＬＣの１つとして収集されたＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ１ｇを出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−１までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＝２．１
となるので、出力時にこのスループット値を入力する。この結果が、図３７−４に示されている。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、ＰＬＣ１０−１を処理の対象として図３６−２のＢ１処理を実行する。
【０２６５】
（２−１３）ＰＬＣ１０−１に接続されるネットワーク
ＰＬＣ１０−１を処理の対象としたＢ１処理では、ＰＬＣ１０−１が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されている接続ネットワーク情報Ｐ１ｎ中のネットワーク情報を読み出す処理を行う。ここでは、ＰＬＣ１０−１に接続されるネットワークとして、コントローラ間ネットワークＮｏ．１、コントローラ間ネットワークＮｏ．２および情報系ネットワークＮｏ．３が収集される。その後、収集したネットワークまでの接続経路を作成し、その接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。
【０２６６】
（２−１４）ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．１
コントローラ間ネットワークＮｏ．１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．１」となり、同じネットワークが複数出現するので、ループとなっている。そのため、図３６−３のＢ２処理を実行しない。
【０２６７】
（２−１５）ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、コントローラ間ネットワークＮｏ．２を処理の対象として選択し、図３６−３のＢ２処理を実行する。
【０２６８】
（２−１６）コントローラ間ネットワークＮｏ．２に接続されるＰＬＣ
コントローラ間ネットワークＮｏ．２を処理の対象としたＢ２処理では、コントローラ間ネットワークＮｏ．２に接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報中のネットワークデータＭ２から、コントローラ間ネットワークＮｏ．２に接続するＰＬＣを検索して抽出する。ここでは、コントローラ間ネットワークＮｏ．２に接続するＰＬＣとして、ＰＬＣ１０−２，１０−１，１０−５が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路はループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。
【０２６９】
（２−１７）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２
ＰＬＣ１０−２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２」であり、同じ要素が複数出現しないので、ループではない。そこで、最適接続経路として上記の接続経路Ｐ２ｇ−１を出力する。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−２までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１０）＋（１／１）＝３．２
となるので、出力時にこのスループット値を入力する。この結果が、図３７−５に示されている。その後、ＰＬＣ１０−２に接続するネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ＰＬＣ１０−２を処理の対象として、図３６−２のＢ１処理を実行する。
【０２７０】
（２−１８）ＰＬＣ１０−２に接続されるネットワーク
ＰＬＣ１０−２を処理の対象としたＢ１処理では、ＰＬＣ１０−２が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報中の接続ネットワーク情報Ｐ２ｎに格納されているネットワークを読み出す処理を行う。ここでは、ＰＬＣ１０−２に接続されるネットワークとして、コントローラ間ネットワークＮｏ．２と情報系ネットワークＮｏ．３とが収集される。その後、収集したネットワークまでの接続経路を作成し、その接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。
【０２７１】
（２−１９）ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２」となり、同じネットワークが複数出現するので、ループである。そのため、図３６−３のＢ２処理を実行しない。
【０２７２】
（２−２０）ＰＬＣ１０−２→情報系ネットワークＮｏ．３
情報系ネットワークＮｏ．３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２→情報系ネットワークＮｏ．３」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、情報系ネットワークＮｏ．３を処理の対象として選択し、図３６−３のＢ２処理を実行する。
【０２７３】
（２−２１）情報系ネットワークＮｏ．３に接続されるＰＬＣ
情報系ネットワークＮｏ．３を処理の対象としたＢ２処理では、情報系ネットワークＮｏ．３に接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されるネットワークデータＥ３中で情報系ネットワークＮｏ．３に接続するＰＬＣを検索して抽出する。ここでは、情報系ネットワークＮｏ．３に接続するＰＬＣとして、ＰＬＣ１０−１，１０−２が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路がループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。
【０２７４】
（２−２２）情報系ネットワークＮｏ．３→ＰＬＣ１０−１
ＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２→情報系ネットワークＮｏ．３→ＰＬＣ１０−１」であり、同じＰＬＣが複数出現するのでループである。そこで、この接続経路は出力しない。
【０２７５】
（２−２３）情報系ネットワークＮｏ．３→ＰＬＣ１０−２
ＰＬＣ１０−２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２→情報系ネットワークＮｏ．３→ＰＬＣ１０−２」であり、同じＰＬＣが複数出現するのでループである。そこで、この接続経路は出力しない。以上により、（２−２０）の情報系ネットワークＮｏ．３を処理の対象としたＢ２処理が終了する。また、（２−１７）のＰＬＣ１０−２を処理の対象としたＢ１処理を終了する。
【０２７６】
（２−２４）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−１
ＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−１」であり、同じＰＬＣが複数出現しているので、ループである。そこで、図３６−２に示されるＢ１処理を実行しない。
【０２７７】
（２−２５）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５
ＰＬＣ１０−５までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５」であり、同じ要素が複数出現しないので、ループではない。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−５までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１０）＋（１／１）＝３．２
となる。ところで、ＰＬＣ１０−５までの経路については、図３７−３に示されるように、既に接続経路Ｐ５ｇ−１が出力されている。この接続経路Ｐ５ｇ−１のスループット値は１３．１であるので、今回算出した接続経路の方がスループット値がよい。そこで、既に出力されている接続経路に代わり、スループットが良い今回算出した方を最適接続経路Ｐ５ｇとして出力する。この結果が図３７−３に示されている。この図３７−３で、接続経路Ｐ３７−３のデータ内容に取り消し線が付されているのは、削除され、その下のデータが上書きされることを示している。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ＰＬＣ１０−５を処理の対象として、図３６−２のＢ１処理を実行する。
【０２７８】
（２−２６）ＰＬＣ１０−５に接続されるネットワーク
ＰＬＣ１０−５を処理の対象としたＢ１処理では、ＰＬＣ１０−５が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報中の接続ネットワーク情報Ｐ５ｎに格納されているネットワークを読み出す処理を行う。ここでは、ＰＬＣ１０−５に接続されるネットワークとして、フィールドネットワークとコントローラ間ネットワークＮｏ．２とが収集される。その後、収集したネットワークまでの接続経路を作成し、それぞれの接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。
【０２７９】
（２−２７）ＰＬＣ１０−５→フィールドネットワーク
フィールドネットワークまでの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５→フィールドネットワーク」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、フィールドネットワークを処理の対象として選択し、図３６−３のＢ２処理を実行する。
【０２８０】
（２−２８）フィールドネットワークに接続されるＰＬＣ
フィールドネットワークを処理の対象としたＢ２処理では、フィールドネットワークに接続しているＰＬＣ情報を収集する。具体的には、図１１のオフラインネットワーク構成情報のネットワークデータＣ中のフィールドネットワークに接続するＰＬＣを検索して抽出する。ここでは、フィールドネットワークに接続するＰＬＣとして、ＰＬＣ１０−４，１０−５が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路はループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。
【０２８１】
（２−２９）フィールドネットワーク→ＰＬＣ１０−４
ＰＬＣ１０−４までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５→フィールドネットワーク→ＰＬＣ１０−４」であり、同じ要素が複数出現しないので、ループではない。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−４までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１０）＋（１／１）＋（１／０．１）＋（１／１）＝１４．２
となる。ところで、ＰＬＣ１０−４までの経路については、図３７−２に示されるように、既に接続経路Ｐ４ｇが出力されている。この接続経路Ｐ４ｇのスループット値は２．１であるので、今回算出した接続経路よりも既存の接続経路の方がスループット値がよい。そこで、スループットが良い既に出力されている接続経路の方を最適接続経路とする（図３７−２）。
【０２８２】
（２−３０）フィールドネットワーク→ＰＬＣ１０−５
ＰＬＣ１０−５までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５→フィールドネットワーク→ＰＬＣ１０−５」であり、同じＰＬＣが複数出現するので、ループである。そこで、接続経路は出力しない。以上で、（２−２８）のフィールドネットワークを処理の対象としたＢ２処理を終了する。
【０２８３】
（２−３１）ＰＬＣ１０−５→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５→コントローラ間ネットワークＮｏ．２」であり、同じネットワークが複数出現しているので、ループである。そのため、図３６−３のＢ２処理を実行しない。以上により、（２−２６）のＰＬＣ１０−５を処理の対象としたＢ１処理を終了する。また、（２−１６）のコントローラ間ネットワークＮｏ．２を処理の対象とした図３６−３のＢ２処理を終了する。
【０２８４】
（２−３２）情報系ネットワークＮｏ．３に接続されるＰＬＣ
（２−１３）でＰＬＣ１０−１に選択されるネットワークの１つとして収集された情報系ネットワークＮｏ．３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ネットワークをさらに情報収集することができ、情報系ネットワークＮｏ．３を処理の対象として選択し、図３６−３のＢ２処理を実行する。
【０２８５】
情報系ネットワークＮｏ．３を処理の対象としたＢ２処理では、情報系ネットワークＮｏ．３に接続しているＰＬＣを収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されるネットワークデータＥ３の中で情報系ネットワークＮｏ．３に接続するＰＬＣを検索して抽出する。ここでは、情報系ネットワークＮｏ．３に接続するＰＬＣとして、ＰＬＣ１０−１，１０−２とが収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路はループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。
【０２８６】
（２−３３）情報系ネットワークＮｏ．３→ＰＬＣ１０−１
ＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−１」であり、同じＰＬＣが複数出現しているので、ループとなっている。そこで、この接続経路は出力しない。
【０２８７】
（２−３４）情報系ネットワークＮｏ．３→ＰＬＣ１０−２
ＰＬＣ１０−２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２」であり、同じ要素が複数出現しないので、ループではない。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−２までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１００）＋（１／１）＝３．１１
となる。ところで、ＰＬＣ１０−２までの経路については、図３７−５に示されるように、既に接続経路Ｐ２ｇ−１が出力されている。この接続経路Ｐ２ｇ−１のスループット値は３．２であるので、今回算出された接続経路の方がスループット値が良い。そこで、既に出力されている接続経路Ｐ２ｇ−１に代わり、スループットが良い今回計算された方を最適接続経路Ｐ２ｇとして出力する。この結果が、図３７−５に示されている。その後、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、ＰＬＣ１０−２を処理の対象として、図３６−２のＢ１処理を実行する。
【０２８８】
（２−３５）ＰＬＣ１０−２に接続されるネットワーク
ＰＬＣ１０−２を処理の対象としたＢ１処理では、ＰＬＣ１０−２が接続しているネットワークを収集する。具体的には、図１１のオフラインネットワーク構成情報中の接続ネットワーク情報Ｐ２ｎに格納されているネットワークを読み出す処理を行う。ここでは、ＰＬＣ１０−２に接続されるネットワークとして、コントローラ間ネットワークＮｏ．２と情報系ネットワークＮｏ．３とが収集される。その後、収集したネットワークまでの接続経路を作成し、それぞれの接続経路がループか否かを確認する。なお、このネットワークの処理に優先度はなく、順次処理するものとする。
【０２８９】
（２−３６）ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２
コントローラ間ネットワークＮｏ．２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２」となり、同じ要素が複数出現しないので、ループではない。そこで、ネットワークをさらに情報収集できるか、図１２に示される制約を確認する。ここでは制約に該当しないので、コントローラ間ネットワークＮｏ．２を処理の対象として選択し、図３６−３のＢ２処理を実行する。
【０２９０】
（２−３７）コントローラ間ネットワークＮｏ．２に接続されるＰＬＣ
コントローラ間ネットワークＮｏ．２を処理の対象としたＢ２処理では、コントローラ間ネットワークＮｏ．２に接続しているＰＬＣ情報を収集する。具体的には、図１１のオフラインネットワーク構成情報に格納されるネットワークデータＭ２の中でコントローラ間ネットワークＮｏ．２に接続するＰＬＣを検索して抽出する。ここでは、コントローラ間ネットワークＮｏ．２に接続するＰＬＣとして、ＰＬＣ１０−２，１０−１，１０−５が収集される。その後、収集したＰＬＣまでの接続経路を作成し、それぞれのＰＬＣへの接続経路はループか否かを確認する。このＰＬＣの処理に優先度はなく、順次処理するものとする。
【０２９１】
（２−３８）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２
ＰＬＣ１０−２までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−２」であり、同じＰＬＣが複数出現するので、ループである。そこで、接続経路は出力しない。
【０２９２】
（２−３９）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−１
ＰＬＣ１０−１までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−１」であり、同じＰＬＣが複数出現するので、ループである。そこで、接続経路は出力しない。
【０２９３】
（２−４０）コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５
ＰＬＣ１０−５までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→コントローラ間ネットワークＮｏ．２→ＰＬＣ１０−５」であり、同じ要素が複数出現しないので、ループではない。ここで、接続経路解析選択部１２３は、この接続経路のスループットについて計算する。図３８を参照すると、ＰＬＣ１０−５までのスループット評価値は、
（１／１）＋（１／１０）＋（１／１）＋（１／１００）＋（１／１）＋（１／１０）＋（１／１）＝４．２１
となる。ところで、ＰＬＣ１０−５までの経路については、図３７−３に示されるように、既に接続経路Ｐ５ｇが出力されている。この接続経路Ｐ５ｇのスループット値は３．２であるので、既存の接続経路の方が今回計算されたものよりもスループット値がよい。そこで、スループットが良い既に出力されている接続経路の方を最適接続経路とする（図３７−３）。以上により、（２−３７）のコントローラ間ネットワークＮｏ．２を処理の対象としたＢ２処理を終了する。
【０２９４】
（２−４１）情報系ネットワークＮｏ．３に接続されるＰＬＣ
（２−３５）でＰＬＣ１０−２に接続されるネットワークの１つとして収集された情報系ネットワークＮｏ．３までの接続経路は、「ＰＬＣ１０−３→コントローラ間ネットワークＮｏ．１→ＰＬＣ１０−１→情報系ネットワークＮｏ．３→ＰＬＣ１０−２→情報系ネットワークＮｏ．３」となり、同じネットワークが複数出現するので、ループである。そのため、図３６−３のＢ２処理は実行しない。以上により、（２−３５）のＰＬＣ１０−２を処理の対象とした図３６−２のＢ１処理を終了する。また、（２−３２）の情報系ネットワークＮｏ．３を処理の対象としたＢ２処理を終了する。さらに、（２−１３）のＰＬＣ１０−１を処理の対象としたＢ１処理を終了する。また、（２−１１）のコントローラ間ネットワークＮｏ．１を処理の対象としたＢ２処理を終了する。さらに、（２−２）のＰＬＣ１０−３を処理の対象としたＢ１処理を終了する。以上で、接続経路解析処理を終了する。
【０２９５】
（接続経路表示処理）
上記のオフライン接続経路解析処理によって、オフライン接続経路保持部１２５に図３７−１〜図３７−５に示されるような接続経路が格納されると、接続経路表示部１２０は、その接続経路にしたがって、表示部１１２に接続経路を強調表示する。
【０２９６】
図３９は、オフライン接続経路の表示画面の一例を示す図である。この図に示されるように、各ＰＬＣへの接続経路を把握しやすくなる。ここでは、上述したように、通信スループットのよい経路が選択される。
【０２９７】
また、アクセス可能なＰＬＣとアクセス不可能なＰＬＣを強調的に区別して表示してもよい。このように表示することによって、起点ＰＬＣからアクセス可能なＰＬＣを容易に理解することができる（アクセス不可能なＰＬＣを容易に理解することができる）。
【０２９８】
図４０は、オフライン接続経路の表示画面の一例を示す図である。この図では、起点ＰＬＣから図１２の制約によってアクセス可能なＰＬＣには、その近傍に「○」印を配置し、起点ＰＬＣから図１２の制約によってアクセスできないＰＬＣには、その近傍に「×」印を配置している。これによって、起点ＰＬＣからアクセス可能なＰＬＣとアクセス不可能なＰＬＣとをすぐに見分けることが可能となる。この図３９の例では、ＰＬＣ１０−５の先に情報系ネットワークＮｏ．４を介してＰＬＣ１０−９が接続されている。しかし、このＰＬＣ１０−９へは、フィールドネットワークのローカル局であるＰＬＣ１０−５を介してしかアクセスできないので、図１２の制約Ｂに該当する。そのため、ＰＬＣ１０−９へはアクセス不可能となる。
【０２９９】
この実施の形態４によれば、オフラインで作成した制御システムのネットワーク図において、起点となるＰＬＣからアクセス可能なＰＬＣを容易に把握することができるとともに、その場合の各ＰＬＣへの接続経路を事前に理解することができるという効果を有する。また、起点ＰＬＣからの接続経路が複数存在する場合には、所定の基準によって選択される最適な接続経路が自動的に選択されるという効果も有する。
【０３００】
実施の形態５．
ところで、制御システムを構成するネットワークは、上述した図１２のような接続制約が存在するために、当該制御システムエンジニアリング装置をどこに接続してもシステム内の全てのＰＬＣにアクセスできるわけではない。そのため、アクセスできないＰＬＣが存在する場合に、一度制御システムエンジニアリング装置とＰＬＣとの接続ケーブルを外し、対象のＰＬＣに接続し直すという作業が必要となる。また、制御システムエンジニアリング装置を接続する場所によっては、通信速度が遅くなる場合がある。
【０３０１】
そこで、この実施の形態５では、実施の形態４において、制御システムを構成するネットワークで、全てのＰＬＣに対して接続が可能で、かつ、高速な通信が可能な（スループットが総合的に最適な経路となるような）制御システムエンジニアリング装置の接続口となるＰＬＣ（起点ＰＬＣ）を自動的に算出することができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。
【０３０２】
図４１は、この発明にかかる制御システムエンジニアリング装置の実施の形態５の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、実施の形態４の図３５において、起点ＰＬＣ指定部１１３が削除され、最適接続経路算出部１２６をさらに備えることを特徴とする。
【０３０３】
最適接続経路算出部１２６は、当該制御システムエンジニアリング装置１００の接続口（起点ＰＬＣ）の全ての候補に対して順次、接続経路解析選択部１２３による接続経路解析選択処理を行った結果、全てのＰＬＣに対して接続可能な候補のみ抽出し、さらにその中で、各ＰＬＣへの通信スループットが総合的に良いものを抽出して、最適接続経路とする機能を有する。この最適接続経路算出部１２６は、請求の範囲における最適接続経路算出手段に対応している。
【０３０４】
つぎに、この実施の形態５の構成を有する制御システムエンジニアリング装置の処理について説明する。図４２は、最適接続経路算出処理手順の一例を示すフローチャートである。また、ここでは、図１の構成を有する制御システムでの最適接続経路算出処理を例に挙げて説明する。まず、最適接続経路算出部１２６は、起点ＰＬＣとなる候補のＰＬＣを抽出する（ステップＳ３７１）。具体的には、図１１のオフラインネットワーク構成情報に格納されているＰＬＣを全て抽出する。ここでは、ＰＬＣ１０−１〜１０−５の５つのＰＬＣが抽出される。
【０３０５】
ついで、抽出されたそれぞれを起点ＰＬＣとして図３６−１〜図３６−３に示されるオフライン接続経路解析処理を実行する（ステップＳ３７２）。ＰＬＣ１０−３を起点ＰＬＣとしてオフライン接続経路解析処理を実行した結果得られる接続経路データは、実施の形態４の図３７−１〜図３７−５に示される結果と同じものとなる。図４３−１〜図４３−５は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図であり、図４４−１〜図４４−５は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図であり、図４５−１〜図４５−５は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図であり、図４６−１〜図４６−５は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である。
【０３０６】
その後、接続経路解析処理が実行されたそれぞれの結果に対して、全てのＰＬＣに接続可能かを確認する（ステップＳ３７３）。ここで、起点となるＰＬＣの選び方によっては、図１２の制約によって、接続不可能なＰＬＣが存在する場合が出てくるので、図１２の制約に抵触しないか否かを確認する。ここでは、いずれのＰＬＣを起点ＰＬＣとした場合にも、全てのＰＬＣに接続可能である。
【０３０７】
ついで、接続経路解析処理が実行されたそれぞれの結果に対して、システム構成全体のスループット評価値（合計スループット評価値）を比較する（ステップＳ３７４）。ここで用いるスループットモデルは、実施の形態４で用いた図３８のスループットモデルと同じである。以下に、各ＰＬＣを起点とした場合のスループット評価値とその合計値を示す。
【０３０８】
（ＰＬＣ１０−１を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ１）  ＝  ０
ＰＬＣ１０−２（Ｐ２ｇ１）  ＝  ２．０１
ＰＬＣ１０−３（Ｐ３ｇ１）  ＝  ２．１
ＰＬＣ１０−４（Ｐ４ｇ１）  ＝  ２．１
ＰＬＣ１０−５（Ｐ５ｇ１）  ＝  ２．１
合計スループット評価値  ＝  ８．３１
【０３０９】
（ＰＬＣ１０−２を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ２）  ＝  ２．０１
ＰＬＣ１０−２（Ｐ２ｇ２）  ＝  ０
ＰＬＣ１０−３（Ｐ３ｇ２）  ＝  ３．２
ＰＬＣ１０−４（Ｐ４ｇ２）  ＝  ３．２
ＰＬＣ１０−５（Ｐ５ｇ２）  ＝  ２．１
合計スループット評価値  ＝  １０．５１
【０３１０】
（ＰＬＣ１０−３を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ）  ＝  ２．１
ＰＬＣ１０−２（Ｐ２ｇ）  ＝  ３．１１
ＰＬＣ１０−３（Ｐ３ｇ）  ＝  ０
ＰＬＣ１０−４（Ｐ４ｇ）  ＝  ２．１
ＰＬＣ１０−５（Ｐ５ｇ）  ＝  ３．２
合計スループット評価値  ＝  １０．５１
【０３１１】
（ＰＬＣ１０−４を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ４）  ＝  ２．１
ＰＬＣ１０−２（Ｐ２ｇ４）  ＝  ３．１１
ＰＬＣ１０−３（Ｐ３ｇ４）  ＝  ２．１
ＰＬＣ１０−４（Ｐ４ｇ４）  ＝  ０
ＰＬＣ１０−５（Ｐ５ｇ４）  ＝  ３．２
合計スループット評価値  ＝  １０．５１
【０３１２】
（ＰＬＣ１０−５を起点ＰＬＣとした場合）
ＰＬＣ１０−１（Ｐ１ｇ５）  ＝  ２．１
ＰＬＣ１０−２（Ｐ２ｇ５）  ＝  ２．１
ＰＬＣ１０−３（Ｐ３ｇ５）  ＝  ３．２
ＰＬＣ１０−４（Ｐ４ｇ５）  ＝  ３．２
ＰＬＣ１０−５（Ｐ５ｇ５）  ＝  ０
合計スループット評価値  ＝  １０．６
【０３１３】
ついで、最適接続経路算出部１２６は、上記で算出した各ＰＬＣを起点とした合計スループット評価値のうち、システム構成全体のスループットが最良のものを抽出し（ステップＳ３７５）、最適接続経路としてオフライン接続経路保持部１２５に出力する（ステップＳ３７６）。実施の形態４で用いたスループットモデルを用いているので、ここでは、合計スループット評価値の小さいものが最適なものとなる。上記した結果より、ＰＬＣ１０−１を起点ＰＬＣとした場合の接続経路データの合計スループット評価値が最も小さいので、図４３−１に示される最適接続経路を最適接続経路としてオフライン接続経路保持部１２５に出力する。以上により、最適接続経路算出処理が終了する。
【０３１４】
その後、接続経路表示部１２０によって、最適接続経路算出部１２６によって算出された最適接続経路に基づいて、最適接続経路がオフラインのシステム構成図に表示される。図４７は、最適接続経路の表示画面の一例を示す図である。この図は、図４３−１に示される最適接続経路に基づいて、実施の形態３の接続経路表示処理を用いて接続経路を表示したものである。これにより、制御システムエンジニアリング装置１００の使用者は、ＰＬＣ１０−１に制御システムエンジニアリング装置１００を接続すれば、制御システムを構成する全てのＰＬＣに接続することができ、高いスループットでデータの転送を行うことができることを知ることができる。
【０３１５】
この実施の形態５によれば、オフラインで構築された制御システムのネットワークにおいて、制御システム内の全てのＰＬＣにアクセスでき、かつ高速な通信ができる位置を算出することができる。その結果、この位置に制御システムエンジニアリング装置１００を接続することで、設定データのダウンロードやアップロード作業に必要な時間を削減することができるという効果を有する。
【０３１６】
実施の形態６．
この実施の形態６では、起点ＰＬＣからそれぞれのＰＬＣへの接続経路の途中のＰＬＣに、受け取ったデータを目的とするＰＬＣへルーチングするためのルーチングパラメータを自動的に算出し、設定することができる制御システムエンジニアリング装置と制御システムエンジニアリング方法について説明する。ここでは、最初に制御システムにおけるルーチングパラメータについて簡単に説明し、その後に実施の形態の内容を説明する。
【０３１７】
制御システムにおけるルーチング機能とは、複数のネットワークからなるシステムにおいて、複数のネットワークにまたがるデータを、他のネットワーク番号の局へトランジェント伝送する機能のことをいう。ルーチング機能を実行するためには、ルーチングパラメータを設定して、要求先のネットワーク番号とブリッジの役割を行うＰＬＣとの対応付けが必要となる。
【０３１８】
また、ルーチングパラメータは、トランジェント伝送の要求元と中継局に設定が必要となる。ここで、中継局とは、複数のネットワークと接続するＰＬＣのことをいう。また、中継局には、要求元から要求先へ送る（行く）ためのルーチングパラメータと、要求先から要求元へ送る（戻る）ためのルーチングパラメータと、の２つの設定が通常必要である。なお、要求先でのルーチングパラメータの設定は不要である。
【０３１９】
図４８は、制御システムに設定されるルーチングパラメータの一例を示す図である。なお、この図４８では、各ＰＬＣを示す矩形の枠内には、通信ユニットが示されている。この通信ユニットの表記は、たとえば、ネットワークＮｏ．１の１局である場合には、「１Ｎｓ１」と表記する。また、複数のネットワークに接続されるＰＬＣには複数のネットワークユニットが設けられている。
【０３２０】
この例では、制御システムは、ネットワークＮｏ．１〜ネットワークＮｏ．３の３つのネットワークが接続されて構成されている。ネットワークＮｏ．１には、６つのＰＬＣ１０−１〜１０−６が接続されており、このうちの４局のＰＬＣ１０−４が隣接するネットワークＮｏ．２とも接続している。すなわち、ＰＬＣ１０−４は、ネットワークＮｏ．１と通信を行う通信ユニット１Ｎｓ４と、ネットワークＮｏ．２と通信を行う通信ユニット２Ｎｓ１とを有する。また、ネットワークＮｏ．２には、４つのＰＬＣ１０−４，１０−７，１０−８，１０−１３が接続されている。このうち、ネットワークＮｏ．２における１局のＰＬＣ１０−４は、隣接するネットワークＮｏ．１とも接続しており、４局のＰＬＣ１０−１３は、隣接するネットワークＮｏ．３とも接続している。すなわち、ＰＬＣ１０−１３は、ネットワークＮｏ．２と通信を行う通信ユニット２Ｎｓ４と、ネットワークＮｏ．３と通信を行う通信ユニット３Ｎｓ５とを有する。さらに、ネットワークＮｏ．３には、５つのＰＬＣ１０−９〜１０−１３が接続されている。このうち、ネットワークＮｏ．３における５局のＰＬＣ１０−１３は、隣接するネットワークＮｏ．２とも接続している。
【０３２１】
ここでは、ネットワークＮｏ．１のＰＬＣ１０−３からネットワークＮｏ．３のＰＬＣ１０−１２にデータをトランジェント伝送する場合を例に挙げて説明する。この場合、トランジェント伝送を要求するネットワークＮｏ．１のＰＬＣ１０−３、ネットワークＮｏ．１とネットワークＮｏ．２のブリッジの役割をするＰＬＣ１０−４およびネットワークＮｏ．２とネットワークＮｏ．３のブリッジの役割をするＰＬＣ１０−１３にルーチングパラメータを設定する必要がある。以下では、各局のルーチングパラメータの設定について説明する。
【０３２２】
（１）ネットワークＮｏ．１のＰＬＣ１０−３
このＰＬＣ１０−３にはルーチングパラメータとして、転送先ネットワーク番号（３）および中継局の通信ユニット（１Ｎｓ４）と、そこまでの中継ネットワーク番号（１）と、が設定される。
【０３２３】
（２）ネットワークＮｏ．１のＰＬＣ１０−４
このＰＬＣ１０−４にはルーチングパラメータとして、転送先ネットワーク番号（３）および中継局の通信ユニット（２Ｎｓ４）とそこまでの中継ネットワーク番号（２）と、が設定される。なお、つぎに説明する（３）のＰＬＣ１０−１３でネットワークＮｏ．２からネットワークＮｏ．１へのデータ伝送のためのルーチングパラメータが設定されるので、このＰＬＣ１０−４での戻り用のルーチングパラメータについては不要である。
【０３２４】
（３）ネットワークＮｏ．２のＰＬＣ１０−１３
このＰＬＣ１０−１３では、転送先への設定は、自局の先が転送先ネットワークＮｏ．３であるので、行き用のルーチングパラメータの設定は不要である。ただし、戻り用のルーチングパラメータとして、転送元ネットワーク番号（１）を転送先ネットワーク番号に設定し、戻るための中継局のネットワークユニット（２Ｎｓ１）と、そこまでの中継ネットワーク番号（２）とを設定する。
【０３２５】
このようにルーチングパラメータを各局に設定することで、ネットワークＮｏ．１のＰＬＣ１０−３からネットワークＮｏ．３のＰＬＣ１０−１２へのデータ伝送が可能となる。
【０３２６】
つぎに、このように設定されたルーチングパラメータを用いたデータ伝送の手順について簡単に説明する。まず、ネットワークＮｏ．１のＰＬＣ１０−３は、ネットワークＮｏ．３のＰＬＣ１０−１３に送信するデータを、ルーチングパラメータに基づいて送信する。すなわち、転送先ネットワーク番号が「３」で、中継先ネットワークが「１」で、中継先局番号が「４」という設定パラメータにしたがって、データを送信する。これにより、ＰＬＣ１０−３からのデータはネットワークＮｏ．１を介してＰＬＣ１０−４（ネットワークＮｏ．１で４局の通信ユニット１Ｎｓ４を有するＰＬＣ）へと送信される。
【０３２７】
このＰＬＣ１０−４の通信ユニット１Ｎｓ４でデータを受信すると、宛先がネットワークＮｏ．３のＰＬＣ１０−４であるので、ルーチングパラメータを参照して、中継先ネットワークＮｏ．２の中継先局番号４であるＰＬＣ１０−１３へと、通信ユニット２Ｎｓ１とネットワークＮｏ．２を介して送信する。ＰＬＣ１０−１３では、受信したデータがネットワークＮｏ．３のＰＬＣ１０−１２宛へのデータであるので、通信ユニット３Ｎｓ５とネットワークＮｏ．３を介してＰＬＣ１０−１２へと送信する。これによって、行きのデータ伝送が終了する。
【０３２８】
つぎに、要求先であるネットワークＮｏ．３のＰＬＣ１０−１２が要求元であるネットワークＮｏ．１のＰＬＣ１０−３にデータ伝送する場合、すなわち戻りのデータ伝送の場合を説明する。この場合には、ネットワークＮｏ．３のＰＬＣ１０−１２は、転送先のネットワークＮｏ．１のＰＬＣ１０−３宛へのデータを送信する。このデータは、ネットワークＮｏ．３を介してＰＬＣ１０−１３へと届く。ＰＬＣ１０−１３では、このデータの宛先が転送先ネットワークＮｏ．１のＰＬＣ１０−３であるので、ルーチングパラメータを参照して、中継先ネットワークが「ネットワークＮｏ．２」で、中継先局番号が「１」のネットワークＮｏ．２のＰＬＣ１０−４にデータを伝送する。
【０３２９】
ネットワークＮｏ．２のＰＬＣ１０−４では、ネットワークＮｏ．１のＰＬＣ１０−３宛のデータであるので、同じベースに装着されている通信ユニット１Ｎｓ４と、ネットワークＮｏ．１を介して、宛先のＰＬＣ１０−３へと送信する。そして、ＰＬＣ１０−３は、ネットワークＮｏ．３のＰＬＣ１０−１２からのデータを受信する。これによって、戻りのデータ伝送が終了する。
【０３３０】
以上のような仕組みで、制御システムでの複数のネットワークにまたがる場合のデータ伝送が行われる。以下に、このような制御システムにおけるＰＬＣのネットワークパラメータの設定処理について説明する。
【０３３１】
図４９は、この発明にかかる制御システムエンジニアリング装置の実施の形態６の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、実施の形態４の図３５において、オフライン接続経路保持部１２５に保持されている起点ＰＬＣから各ＰＬＣへの接続経路を読み出して、それぞれの接続経路においてルーチングパラメータの設定が必要なＰＬＣに対してルーチングパラメータを算出するルーチングパラメータ算出部１２７をさらに備える。このルーチングパラメータ算出部１２７は、請求の範囲におけるルーチングパラメータ算出手段に対応している。なお、実施の形態４の図３５と同一の構成要素には同一の符号を付してその説明を省略している。
【０３３２】
図５０は、ルーチングパラメータ算出部のさらに詳細な機能構成を模式的に示すブロック図である。この図に示されるように、ルーチングパラメータ算出部１２７は、接続経路逆転機能１２７１と、転送先ネットワーク番号抽出機能１２７２と、中継先ネットワーク番号抽出機能１２７３と、中継先局番号抽出機能１２７４と、を備える。
【０３３３】
接続経路逆転機能１２７１は、オフライン接続経路保持部１２５に格納される接続経路を抽出し、そのデータを逆順にした逆接続経路を作成する。
【０３３４】
転送先ネットワーク番号抽出機能１２７２は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける転送先ネットワーク番号を抽出する。
【０３３５】
中継先ネットワーク番号抽出部は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける中継先ネットワーク番号を抽出する。
【０３３６】
中継先局番号抽出部は、オフライン接続経路保持部１２５に格納される接続経路と、接続経路逆転機能１２７１によって作成された逆接続経路とからルーチングパラメータにおける中継先局番号を抽出する。
【０３３７】
（１）処理の概要
つぎに、このような構成を有する制御システムエンジニアリング装置１００での、ルーチングパラメータの算出処理について説明する。図５１−１〜図５１−２は、ルーチングパラメータ算出処理手順の一例を示すフローチャートである。まず、起点ＰＬＣ指定部１１３によってトランジェント伝送の要求元ＰＬＣが使用者によって指定される（ステップＳ４１１）。この要求元ＰＬＣを以下では、起点ＰＬＣという。
【０３３８】
ついで、起点ＰＬＣ指定部１１３によって指定された起点ＰＬＣを処理対象として選択し、実施の形態４の図３６−２に示されるＢ２処理を実行して（ステップＳ４１２）、接続経路を取得する（ステップＳ４１３）。
【０３３９】
取得した接続経路から１つの接続経路を選択する（ステップＳ４１４）。ついで、その接続経路における起点ＰＬＣを処理の対象として選択し、Ｃ１処理を実行する（ステップＳ４１５）。
【０３４０】
図５１−２に示されるように、Ｃ１処理では、まず、処理対象のＰＬＣから終点ＰＬＣまでに異なるネットワークが２つ以上存在するか否かを判定する（ステップＳ４３１）。異なるネットワークが２つ以上存在しない場合（ステップＳ４３１でＮｏの場合）には、Ｃ１処理を終了し、図５１−１の処理に戻る。また、異なるネットワークが存在する場合（ステップＳ４３１でＹｅｓの場合）には、選択した接続経路で、終点ＰＬＣの１つ前のデータに記載されるネットワーク番号を転送先ネットワーク番号として出力する（ステップＳ４３２）。
【０３４１】
ついで、選択した接続経路で、処理対象のＰＬＣのつぎのデータに記載されているネットワーク番号を中継先ネットワーク番号として出力し（ステップＳ４３３）、さらに、処理対象のＰＬＣのつぎのつぎのデータに記載されているＰＬＣの、ステップＳ４３３で出力した中継先ネットワークにおける局番号を中継先局番号として出力する（ステップＳ４３４）。
【０３４２】
その後、処理対象のＰＬＣのつぎのつぎのデータに記載されているＰＬＣを処理の対象として選択し（ステップＳ４３５）、ステップＳ４３１へと戻り、上述した処理が繰り返し行われる。
【０３４３】
Ｃ１処理を終了すると、図５１−１に戻り、接続経路逆転機能１２７１によって、選択された接続経路のデータを逆順にした逆接続経路を作成する（ステップＳ４１６）。つまり、選択された接続経路の起点ＰＬＣが終点ＰＬＣになり、終点ＰＬＣが起点ＰＬＣになる。
【０３４４】
その後、逆順とした逆接続経路のデータにおける起点ＰＬＣのつぎのつぎのデータに記載されるＰＬＣを処理対象として選択し（ステップＳ４１７）、Ｃ１処理を実施する（ステップＳ４１８）。
【０３４５】
逆接続経路におけるＣ１処理が終了した後、ステップＳ４１３で取得した全ての接続経路に対して処理を行ったか否かを確認し（ステップＳ４１９）、処理を行っていない接続経路がある場合（ステップＳ４１９でＮｏの場合）には、ステップＳ４１４へと戻り、上述した処理が繰り返し実行される。また、全ての接続経路に対して処理を行った場合（ステップＳ４１９でＹｅｓの場合）には、ルーチングパラメータ算出処理が終了する。
【０３４６】
（２）処理の具体例
上述した説明では、ルーチングパラメータ算出処理の概要を述べたものであるので、この処理の具体例を図２８の構成を有する制御システムの場合を例に挙げて以下に説明する。この図２８に示される制御システムを対象に、ＰＬＣπを起点ＰＬＣとして実施の形態４の図３６−１〜図３６−３に示されるオフライン接続経路解析処理を実施する。図５２は、図２８の制御システムについての各ＰＬＣへの接続経路の一例を示す図である。また、図５３−１〜図５３−４は、ルーチングパラメータ算出処理の結果得られる各ＰＬＣに設定されるルーチングパラメータである。
【０３４７】
（２−１）接続経路取得処理
まず、起点ＰＬＣ指定部１１３にて指定したトランジェント伝送の要求元ＰＬＣπを起点ＰＬＣとして、図３６−１〜図３６−３に示されるオフライン接続経路解析処理を行うことによって、図５２に示される接続経路Ｐαｇ〜Ｐψｇが得られる。
【０３４８】
（２−２）接続経路Ｐαｇ
図５２の接続経路の中から、まず接続経路Ｐαｇを選択し、この接続経路Ｐαｇに関して以下の処理を行う。
【０３４９】
（２−２−１）接続経路のＰＬＣπ
接続経路Ｐαｇ中の起点ＰＬＣであるＰＬＣπを処理の対象ＰＬＣとして図５１−２に示されるＣ１処理を実行する。ＰＬＣπを処理対象としたＣ１処理では、接続経路Ｐαｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣπを処理の対象ＰＬＣとしたＣ１処理を終了する。
【０３５０】
（２−２−２）逆接続経路のＰＬＣπ
ついで、接続経路Ｐαｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα」を逆順にした「ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐαｇ’とする。そして、この逆接続経路Ｐαｇ’における起点ＰＬＣであるＰＬＣαのつぎのつぎのデータに記載されるＰＬＣであるＰＬＣπを処理対象のＰＬＣとして選択し、Ｃ１処理を実行する。しかし、このＰＬＣπを処理対象としたＣ１処理では、逆接続経路Ｐαｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣπを処理の対象ＰＬＣとしたＣ１処理を終了する。
【０３５１】
（２−３）接続経路Ｐεｇ
図５２の接続経路から接続経路Ｐεｇを選択し、この接続経路Ｐεｇに関して処理を行うと、（２−２）の接続経路Ｐαｇと同様の結果となり、算出されるルーチングパラメータはない。
【０３５２】
（２−４）接続経路Ｐβｇ
図５２の接続経路から接続経路Ｐβｇを選択し、この接続経路Ｐβｇに関して以下の処理を行う。
【０３５３】
（２−４−１）接続経路
接続経路Ｐβｇ中の起点ＰＬＣであるＰＬＣπを処理の対象ＰＬＣとして図５１−２に示されるＣ１処理を実行する。ＰＬＣπを処理対象としたＣ１処理では、接続経路Ｐβｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣβの１つ前のデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を転送先ネットワーク番号として出力する。
【０３５４】
また、処理対象のＰＬＣπのつぎのデータ（データ１）に記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣであるＰＬＣαのコントローラ間ネットワークＮｏ．１における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。
【０３５５】
ついで、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐβｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、接続経路ＰＬＣαを処理対象としたＣ１処理を終了する。この結果が、図５３−１の行５０１に示されている。
【０３５６】
（２−４−２）逆接続経路
ついで、接続経路Ｐβｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα→情報系ネットワークＮｏ．５→ＰＬＣβ」を逆順にした「ＰＬＣβ→情報系ネットワークＮｏ．５→ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐβｇ’とする。そして、この逆接続経路Ｐβｇ’における起点ＰＬＣであるＰＬＣβのつぎのつぎのデータに記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。しかし、このＰＬＣαを処理対象としたＣ１処理では、逆接続経路Ｐβｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣαを処理の対象ＰＬＣとしたＣ１の処理を終了する。
【０３５７】
（２−５）接続経路Ｐμｇ
図５２の接続経路から接続経路Ｐμｇを選択し、この接続経路Ｐμｇに関して処理を行うと、（２−４）の接続経路Ｐβｇと同様の結果となる。すなわち、算出されるルーチングパラメータが同じであり、新たに出力されるルーチングパラメータはない。
【０３５８】
（２−６）接続経路Ｐθｇ
図５２の接続経路から接続経路Ｐθｇを選択し、この接続経路Ｐθｇに関して以下の処理を行う。
【０３５９】
（２−６−１）接続経路
接続経路Ｐθｇ中の起点ＰＬＣであるＰＬＣπを処理の対象ＰＬＣとして図５１−２に示されるＣ１処理を実行する。ＰＬＣπを処理対象としたＣ１処理では、接続経路Ｐθｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣθの１つ前のデータ（データ５）に記載されるコントローラ間ネットワークＮｏ．２のネットワーク番号「２」を転送先ネットワーク番号として出力する。
【０３６０】
また、処理対象のＰＬＣπのつぎのデータ（データ１）に記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣであるＰＬＣαのコントローラ間ネットワークＮｏ．１における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−１の行５０２に示されている。
【０３６１】
その後、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣαを処理の対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐθｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣθの１つ前のデータ（データ５）に記載されるコントローラ間ネットワーク２２Ｂのネットワーク番号「２」を転送先ネットワーク番号として出力する。
【０３６２】
また、処理対象のＰＬＣαのつぎのデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣαのつぎのつぎのデータ（データ４）に記載されるＰＬＣであるＰＬＣβの情報系ネットワークＮｏ．５における局番号「２」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−２の行５０４に示されている。
【０３６３】
その後、処理対象のＰＬＣαのつぎのつぎのデータに記載されるＰＬＣであるＰＬＣβを処理の対象ＰＬＣとしてＣ１処理を実行する。ＰＬＣβを処理対象としたＣ１処理では、接続経路Ｐθｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣβを処理対象としたＣ１処理を終了する。
【０３６４】
（２−６−２）逆接続経路
ついで、接続経路Ｐθｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα→情報系ネットワークＮｏ．５→ＰＬＣβ→コントローラ間ネットワークＮｏ．２→ＰＬＣθ」を逆順にした「ＰＬＣθ→コントローラ間ネットワークＮｏ．２→ＰＬＣβ→情報系ネットワークＮｏ．５→ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐθｇ’とする。そして、この逆接続経路Ｐθｇ’における起点ＰＬＣであるＰＬＣθのつぎのつぎのデータに記載されるＰＬＣβを処理対象として選択し、Ｃ１処理を実行する。
【０３６５】
ＰＬＣβを処理対象としたＣ１処理では、接続経路Ｐθｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣπの１つ前のデータに記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を転送先ネットワーク番号として出力する。また、処理対象のＰＬＣβのつぎのデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣβのつぎのつぎのデータ（データ４）に記載されるＰＬＣであるＰＬＣαの情報系ネットワークＮｏ．５における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−３の行５０６に示されている。
【０３６６】
ついで、処理対象のＰＬＣβのつぎのつぎのデータに記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐθｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、接続経路ＰＬＣαを処理対象としたＣ１処理を終了する。
【０３６７】
（２−７）接続経路Ｐκｇ
図５２の接続経路から接続経路Ｐκｇを選択し、この接続経路Ｐκｇに関して処理を行うと、（２−６）の接続経路Ｐθｇと同様の結果となる。すなわち、算出されるルーチングパラメータが同じであり、新たに出力されるルーチングパラメータはない。
【０３６８】
（２−８）接続経路Ｐωｇ
図５２の接続経路から接続経路Ｐωｇを選択し、この接続経路Ｐωｇに関して以下の処理を行う。
【０３６９】
（２−８−１）接続経路
接続経路Ｐωｇ中の起点ＰＬＣであるＰＬＣπを処理の対象ＰＬＣとして図５１−２に示されるＣ１処理を実行する。ＰＬＣπを処理対象としたＣ１処理では、接続経路Ｐωｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣωの１つ前のデータ（データ５）に記載されるコントローラ間ネットワークＮｏ．３のネットワーク番号「３」を転送先ネットワーク番号として出力する。
【０３７０】
また、処理対象のＰＬＣπのつぎのデータ（データ１）に記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣであるＰＬＣαのコントローラ間ネットワークＮｏ．１における局番号「１」を、オフラインネットワーク構成情報から取得し、中継先局番号として出力する。この結果が、図５３−１の行５０３に示されている。
【０３７１】
その後、処理対象のＰＬＣπのつぎのつぎのデータ（データ２）に記載されるＰＬＣαを処理の対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐωｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣωの１つ前のデータ（データ５）に記載されるコントローラ間ネットワークＮｏ．３のネットワーク番号「３」を転送先ネットワーク番号として出力する。
【０３７２】
また、処理対象のＰＬＣαのつぎのデータ（データ３）に記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣαのつぎのつぎのデータ（データ４）に記載されるＰＬＣであるＰＬＣμの情報系ネットワークＮｏ．５における局番号「３」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−２の行５０５に示されている。
【０３７３】
その後、処理対象のＰＬＣαのつぎのつぎのデータの記載されるＰＬＣであるＰＬＣμを処理の対象ＰＬＣとしてＣ１処理を実行する。ＰＬＣμを処理対象としたＣ１処理では、接続経路Ｐωｇに関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、ＰＬＣβを処理対象としたＣ１処理を終了する。
【０３７４】
（２−８−２）逆接続経路
ついで、接続経路Ｐωｇの接続経路データ「ＰＬＣπ→コントローラ間ネットワークＮｏ．１→ＰＬＣα→情報系ネットワークＮｏ．５→ＰＬＣμ→コントローラ間ネットワークＮｏ．３→ＰＬＣω」を逆順にした「ＰＬＣω→コントローラ間ネットワークＮｏ．３→ＰＬＣμ→情報系ネットワークＮｏ．５→ＰＬＣα→コントローラ間ネットワークＮｏ．１→ＰＬＣπ」を逆接続経路Ｐωｇ’とする。そして、この逆接続経路Ｐωｇ’における起点ＰＬＣであるＰＬＣωのつぎのつぎのデータに記載されるＰＬＣμを処理対象として選択し、Ｃ１処理を実行する。
【０３７５】
ＰＬＣμを処理対象としたＣ１処理では、接続経路Ｐωｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在する。そのため、終点ＰＬＣであるＰＬＣπの１つ前のデータに記載されるコントローラ間ネットワークＮｏ．１のネットワーク番号「１」を転送先ネットワーク番号として出力する。また、処理対象のＰＬＣμのつぎのデータに記載される情報系ネットワークＮｏ．５のネットワーク番号「５」を、中継先ネットワーク番号として出力する。さらに、処理対象のＰＬＣμのつぎのつぎのデータに記載されるＰＬＣであるＰＬＣαの情報系ネットワークＮｏ．５における局番号「１」を、オフラインネットワーク構成情報保持部１２２から取得し、中継先局番号として出力する。この結果が、図５３−４の行５０７に示されている。
【０３７６】
ついで、処理対象のＰＬＣμのつぎのつぎのデータに記載されるＰＬＣαを処理対象として選択し、Ｃ１処理を実行する。ＰＬＣαを処理対象としたＣ１処理では、接続経路Ｐωｇ’に関して終点ＰＬＣまでに異なるネットワークが２つ以上存在しないので、接続経路ＰＬＣαを処理対象としたＣ１処理を終了する。
【０３７７】
（２−９）接続経路Ｐψｇ
図５２の接続経路から接続経路Ｐψｇを選択し、この接続経路Ｐψｇに関して処理を行うと、（２−８）の接続経路Ｐωｇと同様の結果となる。すなわち、算出されるルーチングパラメータが同じであり、新たに出力されるルーチングパラメータはない。
【０３７８】
このようにして求められた図５３−１〜図５４−４のルーチングパラメータは、それぞれの名称に示されるＰＬＣに対して設定される。すなわち、図５３−１は、ＰＬＣπに設定されるルーチングパラメータであり、図５３−２は、ＰＬＣαに設定されるルーチングパラメータであり、図５３−３は、ＰＬＣβに設定されるルーチングパラメータであり、図５３−４は、ＰＬＣμに設定されるルーチングパラメータである。
【０３７９】
この実施の形態６によれば、人手によって計算されていた処理を、制御システムエンジニアリング装置１００で実行させるようにしたので、ルーチングパラメータを算出する手間が省けるという効果を有する。また、既存の制御システムの構成に対して追加変更を行う場合や、新しく制御システムを構築する場合にも容易にＰＬＣへのルーチングパラメータを含むネットワークパラメータを設定することができるという効果も有する。さらに、接続経路が表示されるので、算出された各ＰＬＣのルーチングパラメータがどの接続経路のためのものかについてを確認し易くなるという効果も有する。
【０３８０】
実施の形態７．
この実施の形態７では、既に稼動している制御システムのネットワークパラメータを変更する際に、それに伴うルーチングパラメータの変更を含め、各ＰＬＣのネットワークパラメータを自動で書換えることができる制御システムエンジニアリング装置および制御システムエンジニアリング方法について説明する。
【０３８１】
図５４は、この発明にかかる制御システムエンジニアリング装置の実施の形態７の機能構成を模式的に示すブロック図である。この制御システムエンジニアリング装置１００は、通信部１１１と、表示部１１２と、起点ＰＬＣ指定部１１３と、オンラインネットワーク構成情報収集部１１４と、オンライン接続経路保持部１１５と、オンラインネットワーク構成情報保持部１１６と、表示オブジェクト座標算出部１１７と、システム構成表示部１１８と、システム構成編集部１２１と、オフラインネットワーク構成情報保持部１２２と、接続経路解析選択部１２３と、オフライン接続経路保持部１２５と、接続経路表示部１２０と、パラメータ一括書換部１２８と、これらの各処理部を制御する制御部１１９と、を備える。より詳細には、この制御システムエンジニアリング装置１００は、実施の形態１の構成と実施の形態６の構成に、スループットモデル保持部１２４を削除し、パラメータ一括書換部１２８をさらに備える構成を有する。
【０３８２】
パラメータ一括書換部１２８は、ルーチングパラメータの変更を含めたネットワークパラメータの変更を、制御システムに対して自動的に行う。このとき、パラメータの変更によって制御システムを構成するＰＬＣに対してアクセス不能とならない順番で、ネットワークパラメータの書換えを行う。このパラメータ一括書換部１２８は、請求の範囲におけるパラメータ一括書換手段に対応している。なお、上述した実施の形態とで説明した構成要素と同一の構成要素には、同一の符号を付してその説明を省略している。
【０３８３】
（１）処理の概要
図５５−１〜図５５−２は、パラメータ一括書換処理手順の一例を示すフローチャートである。まず、制御システムを構成するいずれかのＰＬＣに接続された制御システムエンジニアリング装置１００は、稼動している制御システムから実施の形態１で説明した方法によって、ネットワーク構成情報を取得する（ステップＳ４５１）。以下、このネットワーク構成情報をオンラインネットワーク構成情報という。
【０３８４】
ついで、取得したオンラインネットワーク構成情報に対して、パラメータの変更をオフラインで編集し（ステップＳ４５２）、オフラインネットワーク構成情報を作成する。このとき、１つのネットワークのネットワークパラメータが変更されるものとする。その後、オフラインで編集したオフラインネットワーク構成情報に基づいて、ルーチングパラメータを算出する（ステップＳ４５３）。
【０３８５】
ついで、オンラインネットワーク構成情報と、編集したオフラインネットワーク構成情報とを比較して、パラメータに変更のあったネットワークを抽出する（ステップＳ４５４）。そして、抽出されたネットワークの各ＰＬＣに対し、図５５−２に示されるパラメータ書換処理を実行する（ステップＳ４５５）。
【０３８６】
図５５−２に移って、抽出されたネットワークに接続するＰＬＣの中で、局番が最も大きい通常局ＰＬＣのパラメータを新しいパラメータに書換える（ステップＳ４７１）。ついで、該ネットワークの管理局ＰＬＣが保持しているネットワークパラメータの総局数を１つ減らす書換処理を行う（ステップＳ４７２）。
【０３８７】
その後、該ネットワークの管理局ＰＬＣのネットワークパラメータの総局数は１となったか否かを判定する（ステップＳ４７３）。管理局ＰＬＣのネットワークパラメータの総局数が１でない場合（ステップＳ４７３でＮｏの場合）には、ステップＳ４７１へと戻り、管理局ＰＬＣのネットワークパラメータの総局数が１となるまで上述した処理が繰り返される。
【０３８８】
また、管理局ＰＬＣのネットワークパラメータの総局数が１である場合（ステップＳ４７３でＹｅｓの場合）には、該ネットワークの管理局ＰＬＣのパラメータを新しいものに書換え（ステップＳ４７４）、パラメータ書換処理が終了し、図５５−１に処理が戻る。
【０３８９】
図５５−１に戻り、ステップＳ４５４で選択されたネットワークが関連するルーチングパラメータを書換えて（ステップＳ４５６）、パラメータ一括書換処理が終了する。
【０３９０】
（２）処理の具体例
上述した説明では、パラメータ一括書換処理の概要を述べたものであるので、この処理の具体例について以下で詳細に説明する。ここでは、実施の形態６で算出された図５３−１〜図５３−４のルーチングパラメータで稼動している図２８に示される制御システムに対して、コントローラ間ネットワークＮｏ．３を、コントローラ間ネットワークＮｏ．１０に変更する場合について説明する。
【０３９１】
まず、実施の形態１で説明した方法によって、稼動している図２８に示される制御システムのオンラインネットワーク構成情報を取得して、オンラインネットワーク構成情報保持部１１６に格納する。
【０３９２】
ついで、実施の形態４で説明した方法によって、システム構成編集部１２１で、オンラインネットワーク構成情報に関して、コントローラ間ネットワークＮｏ．３をコントローラ間ネットワークＮｏ．１０にオフラインで変更したオフラインネットワーク構成情報を作成し、オフラインネットワーク構成情報保持部１２２に格納する。また、変更後のオフラインネットワーク構成情報に基づいて実施の形態６で説明した方法によって、ルーチングパラメータの算出を行う。図５６−１〜図５６−４は、制御システムの構成変更後のルーチングパラメータを示す図である。図５６−１の行５１３と図５６−２の行５１５において、それぞれ図５３−１の５０３と図５３−２の５０５の転送先ネットワーク番号が「３」となっている部分が、「１０」に変更された形となっている。
【０３９３】
その後、オンラインネットワーク構成情報とオフラインネットワーク構成情報とを比較して、パラメータに変更のあったネットワークを抽出する。ここでは、オンラインネットワーク構成情報のコントローラ間ネットワークＮｏ．３の部分が、オフラインネットワーク構成情報ではコントローラ間ネットワークＮｏ．１０に変更されたことが抽出される。
【０３９４】
ついで、変更のあったコントローラ間ネットワークＮｏ．３に対して、図５５−２に示される各ＰＬＣのパラメータの書換処理を実行する。まず、稼動している制御システムにおいて、コントローラ間ネットワークＮｏ．３に接続するＰＬＣの中で局番が最も大きい通常局ＰＬＣであるＰＬＣψ（局番３）のパラメータを、新しいものへ書換える。すなわち、「コントローラ間ネットワークＮｏ．３の通常局の局番３」から「コントローラ間ネットワークＮｏ．１０の通常局の局番３」へと書換える処理を行う。
【０３９５】
ついで、稼動している制御システムにおいて、コントローラ間ネットワークＮｏ．３に接続する管理局ＰＬＣであるＰＬＣμのネットワークパラメータの総局数を１つ減らして書換える。すなわち、コントローラ間ネットワークＮｏ．３の総局数を「３」から「２」に書換える。これによって、この時点で、コントローラ間ネットワークＮｏ．３は、ＰＬＣμとＰＬＣωとが接続した状態で動作しているが、ＰＬＣψは物理的には接続しているもののコントローラ間ネットワークＮｏ．３の局としては動作していない状態となる。
【０３９６】
その後、コントローラ間ネットワークＮｏ．３に接続する管理局ＰＬＣであるＰＬＣμのネットワークパラメータの総局数は「１」ではなく、「２」であるため、この時点でコントローラ間ネットワークＮｏ．３に接続するＰＬＣの中で局番が最も大きい通常局ＰＬＣであるＰＬＣω（局番２）のパラメータを、新しいものへ書換える。すなわち、「コントローラ間ネットワークＮｏ．３の通常局の局番２」から「コントローラ間ネットワークＮｏ．１０の通常局の局番２」へと書換える処理を行う。
【０３９７】
ついで、コントローラ間ネットワークＮｏ．３に接続する管理局ＰＬＣであるＰＬＣμのネットワークパラメータの総局数を１つ減らす。すなわち、コントローラ間ネットワークＮｏ．３の総局数を「２」から「１」に書換える。これによって、この時点で、コントローラ間ネットワークＮｏ．３は、ＰＬＣμのみが接続した状態で動作しており、ＰＬＣωとＰＬＣψは物理的には接続しているもののコントローラ間ネットワークＮｏ．３の局としては動作していない状態となる。
【０３９８】
その後、コントローラ間ネットワークＮｏ．３に接続する管理局ＰＬＣであるＰＬＣμのネットワークパラメータの総局数は「１」であるため、この管理局のＰＬＣμのパラメータを新しいものへと書換える。すなわち、「コントローラ間ネットワークＮｏ．３の管理局の局番１」から「コントローラ間ネットワークＮｏ．１０の管理局の局番１」へと書換える。これによって、この時点で、コントローラ間ネットワークＮｏ．３は、コントローラ間ネットワークＮｏ．１０へと変更され、コントローラ間ネットワークＮｏ．１０には、ＰＬＣμとＰＬＣωとＰＬＣψが接続された状態で動作している。以上で図５５−２の各ＰＬＣのパラメータ書換処理を終了する。
【０３９９】
その後、変更のあったコントローラ間ネットワークＮｏ．３が関連するルーチングパラメータを書換える処理が行われる。ここでは、コントローラ間ネットワークＮｏ．３は、コントローラ間ネットワークＮｏ．１０に変更されたので、これに伴って、新たに自動算出された図５６−１〜図５６−４に示されるルーチングパラメータの中で、コントローラ間ネットワークＮｏ．１０に関連するルーチングパラメータを書換える。すなわち、ＰＬＣπに対して、図５６−１に示される新たなルーチングパラメータＰπｑを書き込み、ＰＬＣαに対して、図５６−２に示される新たなルーチングパラメータＰαｑを書き込む。そして、変更のあったネットワークはこれ以外にないので、パラメータ一括書換処理を終了する。
【０４００】
この実施の形態７によれば、ネットワークパラメータを変更する際に、ルーチングパラメータを含むネットワークパラメータの変更を自動的に変更のあるＰＬＣへ書込むことができるという効果を有する。従来では、ネットワークパラメータの変更の際には、変更を行う各ＰＬＣに制御システムエンジニアリング装置１００を接続して、個々に新しい設定を書き込む必要があり、非常に手間であったが、この実施の形態７では、ネットワークを介した各ＰＬＣのネットワークパラメータの変更を行うことが可能となるという効果を有する。
【０４０１】
実施の形態８．
実施の形態７では、既に稼動しているシステムのうち、１つのネットワークについてパラメータを変更する場合について有効な方法であるが、この実施の形態８では、複数のネットワークについてパラメータを変更する場合について説明する。
【０４０２】
複数のネットワークについてパラメータを変更する場合でも、個々の変更に対して順に実施の形態７を適用すれば、ルーチングパラメータの変更を含め、各ＰＬＣのネットワークパラメータを自動で書換えることは可能である。しかし、ルーチングパラメータの書換えを複数回行う必要のあるＰＬＣが存在することがあるため、書換え作業は自動的ではあるものの効率的でない。そこで、この実施の形態８では、これを一括して行う制御システムエンジニアリング装置と制御システムエンジニアリング方法について説明する。
【０４０３】
この実施の形態８で用いられる制御システムエンジニアリング装置の構成は、実施の形態７の図５４に示したものと同じである。ただし、パラメータ一括書換部１２８は、最初にルーチングパラメータを含まないネットワークパラメータの更新を、起点ＰＬＣに最も遠いネットワークから起点ＰＬＣに向かって順に行い、その後に、ルーチングパラメータの更新を、起点ＰＬＣに最も近いＰＬＣから順に奥のネットワークのＰＬＣに向かって行う機能を有する。これにより、ネットワークパラメータ更新中の通信不能状態を回避することができる。
【０４０４】
（１）処理の概要
図５７−１〜図５７−２は、複数ネットワークのパラメータ一括書換処理手順の一例を示すフローチャートである。まず、制御システムを構成するいずれかのＰＬＣに接続された制御システムエンジニアリング装置１００は、稼動している制御システムからオンラインネットワーク構成情報を取得する（ステップＳ５１１）。この結果は、オンラインネットワーク構成情報保持部１１６に格納される。
【０４０５】
ついで、取得したオンラインネットワーク構成情報に対して、パラメータの変更をオフラインで編集し（ステップＳ５１２）、その結果がオフラインネットワーク構成情報としてオフラインネットワーク構成情報保持部１２２に格納される。このとき、２以上のネットワークのネットワークパラメータが変更されるものとする。その後、オフラインで編集したオフラインネットワーク構成情報に基づいて、ルーチングパラメータの算出処理を行う（ステップＳ５１３）。
【０４０６】
ついで、ステップＳ５１１で取得したオンラインネットワーク構成情報と、ステップＳ５１２で編集したオフラインネットワーク構成情報とを比較し、パラメータに変更のあったネットワークを抽出する（ステップＳ５１４）。
【０４０７】
その後、抽出されたネットワークのうち、オフライン接続経路保持部１２５に格納されているオフライン接続経路情報を参照して、起点ＰＬＣからの接続経路が最も離れているネットワークを１つ選択し（ステップＳ５１５）、図５５−２に示される選択したネットワークの各ＰＬＣのパラメータ書換処理を実行する（ステップＳ５１６）。なお、このＰＬＣのパラメータ書換処理は実施の形態７で既に説明しているので、その説明を省略する。
【０４０８】
ステップＳ５１５で選択したネットワークについて図５３−２のＰＬＣのパラメータ書換処理が終了すると、ステップＳ５１４で抽出したパラメータに変更のあったネットワークの全てを選択したか否かを判定する（ステップＳ５１７）。変更のあったネットワークの全てを選択していない場合（ステップＳ５１７でＮｏの場合）には、抽出したネットワークのうち、起点ＰＬＣからつぎに離れているネットワークを１つ選択する（ステップＳ５１８）。そして、ステップＳ５１６へと戻り、変更のあったネットワークの全てを、起点ＰＬＣからの接続経路が離れている順に選択するまで、上述した処理が繰り返し実行される。また、変更のあったネットワークの全てを選択した場合（ステップＳ５１７でＹｅｓの場合）には、図５７−２のルーチングパラメータ書換処理を行う（ステップＳ５１９）。
【０４０９】
図５７−２に移って、ネットワークパラメータの書換処理を行ったネットワークが関連するＰＬＣのうち、ルーチングパラメータを書換える必要のあるＰＬＣを抽出する（ステップＳ５３１）。抽出したＰＬＣの中で、オフライン接続経路保持部１２５に保持されている接続経路の短いＰＬＣから順にルーチングパラメータを書換える（ステップＳ５３２）。以上により、ルーチングパラメータ書換処理が終了し、パラメータ一括書換処理が終了する。
【０４１０】
（２）処理の具体例
上述した説明では、複数ネットワークのパラメータ一括書換処理の概要を述べたものであるので、この処理の具体例について以下で詳細に説明する。ここでは、実施の形態６で算出された図５３−１〜図５３−４のルーチングパラメータで稼動している図２８に示される制御システムに対して、コントローラ間ネットワークＮｏ．１をコントローラ間ネットワークＮｏ．９に変更し、コントローラ間ネットワークＮｏ．３を、コントローラ間ネットワークＮｏ．１０に変更する場合について説明する。
【０４１１】
まず、実施の形態１で説明した方法によって、稼動している図２８に示される制御システムのオンラインネットワーク構成情報を取得して、オンラインネットワーク構成情報保持部１１６に格納する。
【０４１２】
ついで、実施の形態４で説明した方法によって、システム構成編集部１２１で、コントローラ間ネットワークＮｏ．１をコントローラ間ネットワークＮｏ．９に、コントローラ間ネットワークＮｏ．３をコントローラ間ネットワークＮｏ．１０にそれぞれオフラインで変更したオフラインネットワーク構成情報を、オフラインネットワーク構成情報保持部１２２に格納する。また、変更後のオフラインネットワーク構成情報に基づいて実施の形態６で説明した方法によって、ルーチングパラメータの算出を行う。図５８−１〜図５８−４は、制御システムの構成変更後のルーチングパラメータを示す図である。
【０４１３】
その後、オンラインネットワーク構成情報とオフラインネットワーク構成情報とを比較して、パラメータに変更のあったネットワークを抽出する。ここでは、オンラインネットワーク構成情報のコントローラ間ネットワークＮｏ．１，Ｎｏ．３の部分が、オフラインネットワーク構成情報ではコントローラ間ネットワークＮｏ．９，Ｎｏ．１０にそれぞれ変更されたことが抽出される。
【０４１４】
ついで、変更のあったそれぞれのコントローラ間ネットワークに対して、図５５−２に示される各ＰＬＣのパラメータ書換処理を実行する。つまり、最初に、変更のあったコントローラ間ネットワークＮｏ．１に対して、各ＰＬＣのパラメータ書換処理を実施し、ついで、変更のあったコントローラ間ネットワークＮｏ．３に対して、各ＰＬＣのパラメータ書換処理を実施する。
【０４１５】
その後、図５７−２に示される変更のあったコントローラ間ネットワークＮｏ．１，Ｎｏ．３に関連するルーチングパラメータの書換処理を、以下に示すように実施する。
【０４１６】
まず、新たに算出された図５８−１〜図５８−４のルーチングパラメータの中で、ルーチングパラメータを書換える必要のあるＰＬＣを抽出する。ここでは、コントローラ間ネットワークＮｏ．１がコントローラ間ネットワークＮｏ．９に変更され、コントローラ間ネットワークＮｏ．３がコントローラ間ネットワークＮｏ．１０に変更されたので、これらを含む現在稼動している図５３−１〜図５３−４に示されるすべてのルーチングパラメータを書換える必要がある。すなわち、ＰＬＣπに対して図５８−１に示される新たなルーチングパラメータを書き込み、ＰＬＣαに対して図５８−２に示される新たなルーチングパラメータを書き込み、ＰＬＣβに対して図５８−３に示される新たなルーチングパラメータを書き込み、ＰＬＣμに対して図５８−４に示される新たなルーチングパラメータＰμｑを書き込む必要がある。
【０４１７】
これらのルーチングパラメータの書き込み処理を行う際に、これらＰＬＣの中で、オフライン接続経路保持部１２５に保持されている接続経路が短いものから順に、ルーチングパラメータを書換える。ここで、オフライン接続経路保持部１２５に保持されているオフライン接続経路は、オフラインで編集したネットワークシステム構成に対してルーチングパラメータを算出する際に用いられた接続経路である。ここでは、直接接続しているＰＬＣπが、最も接続経路が短いので、最初に、ＰＬＣπに対して図５８−１の新たなルーチングパラメータを書き込む。
【０４１８】
その後、オフライン接続経路保持部１２５を参照して、この中で最も接続経路が短いものを抽出する。この中で最も接続経路が短いＰＬＣはＰＬＣαである。そのため、つぎにＰＬＣαに対して図５８−２の新たなルーチングパラメータを書き込む。
【０４１９】
同様に、つぎに接続経路が短いのはＰＬＣβおよびＰＬＣμであり、ＰＬＣβに対して図５８−３の新たなルーチングパラメータを書き込み、ＰＬＣμに対して図５８−４の新たなルーチングパラメータを書き込む。以上によって、ルーチングパラメータの書換処理および複数ネットワークのパラメータ一括書換処理が終了する。
【０４２０】
ここで、ネットワークパラメータを書換えるＰＬＣに対して順に実施の形態７の方法を適用した場合には、ルーチングパラメータの変更を含め、各ＰＬＣのネットワークパラメータを自動で書換えることは可能であるが、ルーチングパラメータの書換えを複数回行う必要のあるＰＬＣが存在することがある。すなわち、コントローラ間ネットワークＮｏ．１がコントローラ間ネットワークＮｏ．９に変わったことを反映したルーチングパラメータをＰＬＣπに書き込んだ後、コントローラ間ネットワークＮｏ．３がコントローラ間ネットワークＮｏ．１０に変わったことを反映したルーチングパラメータを再度ＰＬＣπに書き込む必要があった。しかし、上記した方法を用いることによって、これらのルーチングパラメータを一括して書き込むことが可能となり、ネットワークパラメータの変更に係るルーチングパラメータの変更を各ＰＬＣへ書き込む作業が効率化される。
【０４２１】
この実施の形態８によれば、オフラインで制御システムを構成する２以上のネットワークのネットワークパラメータが変更された場合でも、最初に起点ＰＬＣから接続経路の遠いネットワークから順にネットワークパラメータのみを変更し、その後に起点ＰＬＣから接続経路の近い順にルーチングパラメータを変更するようにしたので、ネットワークパラメータの書換えを一括で行うことができるという効果を有する。
【０４２２】
なお、上述した実施の形態１〜８では、プログラマブルコントローラが制御装置としてネットワークに接続されてなる制御システムの場合を例に挙げて説明したが、これに限られる趣旨ではない。たとえば、プログラマブルコントローラのほかに、数値制御装置やモーションコントローラ、ロボットコントローラなどの制御装置がネットワークに接続されてなる制御システムについても同様に適用することができる。
【０４２３】
また、上述した制御システムエンジニアリング方法は、その処理手順を書込んだプログラムを、ＣＰＵ（中央演算処理装置）を有するパーソナルコンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。この場合、コンピュータのＣＰＵ（制御手段）が、プログラムにしたがって、上述したプログラム作成支援方法の各処理工程を実行することになる。これらのプログラムは、ハードディスク、フロッピー（登録商標）ディスク、ＣＤ（Compact  Disk）−ＲＯＭ（Read  Only  Memory）、ＭＯ（Magneto-Optical  disk）、ＤＶＤ（Digital  Versatile  DiskまたはDigital  Video  Disk）などのコンピュータで読取可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、これらのプログラムは、インタネットなどのネットワーク（通信回線）を介して配布することもできる。
【産業上の利用可能性】
【０４２４】
以上のように、この発明にかかる制御システムエンジニアリング装置は、生産設備などに設けられる制御システムにおけるシステム構成や接続経路の把握に有用である。
【図面の簡単な説明】
【０４２５】
【図１】図１は、制御システムのネットワーク構成の一例を模式的に示す図である。
【図２】図２は、制御システムエンジニアリング装置のハードウェア構成を模式的に示すブロック図である。
【図３】図３は、この発明による制御システムエンジニアリング装置の実施の形態１の機能構成を模式的に示すブロック図である。
【図４−１】図４−１は、制御システムの構成の一例を示す図である。
【図４−２】図４−２は、図４−１に対応するグリッドモデルの一例を示す図である。
【図５−１】図５−１は、制御システムの構成の一例を示す図である。
【図５−２】図５−２は、図５−１に対応するグリッドモデルの一例を示す図である。
【図６−１】図６−１は、制御システムの構成の一例を示す図である。
【図６−２】図６−２は、図６−１に対応するグリッドモデルの一例を示す図である。
【図７−１】図７−１は、制御システムの構成の一例を示す図である。
【図７−２】図７−２は、制御システムの構成の一例を示す図である。
【図７−３】図７−３は、図７−１に対応するグリッドモデルの一例を示す図である。
【図７−４】図７−４は、図７−２に対応するグリッドモデルの一例を示す図である。
【図８】図８は、表示オブジェクト座標算出部の機能構成を模式的に示すブロック図である。
【図９−１】図９−１は、ネットワーク構成情報収集処理手順の一例を示すフローチャートである（その１）。
【図９−２】図９−２は、ネットワーク構成情報収集処理手順の一例を示すフローチャートである（その２）。
【図９−３】図９−３は、ネットワーク構成情報収集処理手順の一例を示すフローチャートである（その３）。
【図１０】図１０は、オンライン接続経路保持部に保持される接続経路情報の一例を示す図である。
【図１１】図１１は、オンラインネットワーク構成情報格納部に格納されるネットワーク構成情報の一例を示す図である。
【図１２】図１２は、ネットワークの情報収集の制約の一例を示す図である。
【図１３】図１３は、ネットワーク情報出力処理の優先度の一例を示す図である。
【図１４−１】図１４−１は、表示オブジェクト座標算出処理手順の一例を示すフローチャートである。
【図１４−２】図１４−２は、ネットワークグリッド配置処理手順の一例を示すフローチャートである。
【図１４−３】図１４−３は、ＰＬＣグリッド配置処理手順の一例を示すフローチャートである。
【図１４−４】図１４−４は、グリッドサイズ算出処理手順の一例を示すフローチャートである。
【図１４−５】図１４−５は、グリッド座標算出処理手順の一例を示すフローチャートである。
【図１５】図１５は、ネットワークグリッド配置処理の結果を示す図である。
【図１６−１】図１６−１は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その１）。
【図１６−２】図１６−２は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その２）。
【図１６−３】図１６−３は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その３）。
【図１６−４】図１６−４は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その４）。
【図１６−５】図１６−５は、ＰＬＣグリッド配置処理の手順の一例を示す図である（その５）。
【図１７】図１７は、グリッドサイズ算出結果の一例を示す図である。
【図１８】図１８は、グリッド座標算出結果の一例を示す図である。
【図１９】図１９は、システム構成表示処理手順の一例を示すフローチャートである。
【図２０】図２０は、システム構成表示処理によって表示部に表示されるシステム構成情報の一例を示す図である。
【図２１】図２１は、制御システムエンジニアリング装置の機能を有する表示器のハードウェア構成を示すブロック図である。
【図２２−１】図２２−１は、この発明による制御システムエンジニアリング装置のネットワークグリッド配置機能の機能構成を模式的に示すブロック図である。
【図２２−２】図２２−２は、ＰＬＣグリッド配置機能の機能構成を模式的に示すブロック図である。
【図２３−１】図２３−１は、この実施の形態２によるネットワークグリッド配置処理手順の一例を示すフローチャートである（その１）。
【図２３−２】図２３−２は、この実施の形態２によるＰＬＣグリッド配置処理手順の一例を示すフローチャートである（その２）。
【図２３−３】図２３−３は、この実施の形態２によるＰＬＣグリッド配置処理手順の一例を示すフローチャートである（その３）。
【図２４】図２４は、この実施の形態２によるネットワークグリッド配置処理の結果を示す図である。
【図２５−１】図２５−１は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その１）。
【図２５−２】図２５−２は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その２）。
【図２５−３】図２５−３は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その３）。
【図２５−４】図２５−４は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その４）。
【図２５−５】図２５−５は、この実施の形態２によるＰＬＣグリッド配置処理の手順の一例を示す図である（その５）。
【図２６】図２６は、図２５−５の結果に対して、グリッドサイズとグリッド座標を算出した結果を示す図である。
【図２７】図２７は、システム構成表示処理によって表示されるシステム構成情報の一例を示す図である。
【図２８】図２８は、制御システムの他の構成例を示す図である。
【図２９】図２９は、図２８の制御システムを実施の形態１の方法で表示したシステム構成を示す図である。
【図３０】図３０は、図２８の制御システムについて実施の形態２の方法で作成したグリッドモデルを示す図である。
【図３１】図３１は、図３０のグリッドモデルに基づいて表示される図２８の制御システムのシステム構成を示す図である。
【図３２】図３２は、この発明にかかる制御システムエンジニアリング装置の実施の形態３の機能構成を模式的に示すブロック図である。
【図３３】図３３は、接続経路表示処理手順の一例を示すフローチャートである。
【図３４−１】図３４−１は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その１）。
【図３４−２】図３４−２は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その２）。
【図３４−３】図３４−３は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その３）。
【図３４−４】図３４−４は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その４）。
【図３４−５】図３４−５は、システム構成情報表示画面における接続経路表示処理の手順の一例を示す図である（その５）。
【図３５】図３５は、この発明による制御システムエンジニアリング装置の実施の形態４の機能構成を模式的に示すブロック図である。
【図３６−１】図３６−１は、オフライン接続経路解析処理手順の一例を示すフローチャートである（その１）。
【図３６−２】図３６−２は、オフライン接続経路解析処理手順の一例を示すフローチャートである（その２）。
【図３６−３】図３６−３は、オフライン接続経路解析処理手順の一例を示すフローチャートである（その３）。
【図３７−１】図３７−１は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その１）。
【図３７−２】図３７−２は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その２）。
【図３７−３】図３７−３は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その３）。
【図３７−４】図３７−４は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その４）。
【図３７−５】図３７−５は、オフライン接続経路保持部に保持される接続経路保持情報の一例を示す図である（その５）。
【図３８】図３８は、この実施の形態４によるスループットモデルの例を示す図である。
【図３９】図３９は、オフライン接続経路の表示画面の一例を示す図である。
【図４０】図４０は、オフライン接続経路の表示画面の一例を示す図である。
【図４１】図４１は、この発明による制御システムエンジニアリング装置の実施の形態５の機能構成を模式的に示すブロック図である。
【図４２】図４２は、最適接続経路算出処理手順の一例を示すフローチャートである。
【図４３−１】図４３−１は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その１）。
【図４３−２】図４３−２は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その２）。
【図４３−３】図４３−３は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その３）。
【図４３−４】図４３−４は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その４）。
【図４３−５】図４３−５は、ＰＬＣ１０−１を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その５）。
【図４４−１】図４４−１は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その１）。
【図４４−２】図４４−２は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その２）。
【図４４−３】図４４−３は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その３）。
【図４４−４】図４４−４は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その４）。
【図４４−５】図４４−５は、ＰＬＣ１０−２を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その５）。
【図４５−１】図４５−１は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その１）。
【図４５−２】図４５−２は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その２）。
【図４５−３】図４５−３は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その３）。
【図４５−４】図４５−４は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その４）。
【図４５−５】図４５−５は、ＰＬＣ１０−４を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その５）。
【図４６−１】図４６−１は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その１）。
【図４６−２】図４６−２は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その２）。
【図４６−３】図４６−３は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その３）。
【図４６−４】図４６−４は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その４）。
【図４６−５】図４６−５は、ＰＬＣ１０−５を起点ＰＬＣとして接続経路解析処理を処理した場合の接続経路データを示す図である（その５）。
【図４７】図４７は、最適接続経路の表示画面の一例を示す図である。
【図４８】図４８は、制御システムに設定されるルーチングパラメータの一例を示す図である。
【図４９】図４９は、この発明による制御システムエンジニアリング装置の実施の形態６の機能構成を模式的に示すブロック図である。
【図５０】図５０は、ルーチングパラメータ算出部の機能構成を模式的に示すブロック図である。
【図５１−１】図５１−１は、ルーチングパラメータ算出処理手順の一例を示すフローチャートである（その１）。
【図５１−２】図５１−２は、ルーチングパラメータ算出処理手順の一例を示すフローチャートである（その２）。
【図５２】図５２は、図２８の制御システムについての各ＰＬＣへの接続経路の一例を示す図である。
【図５３−１】図５３−１は、ＰＬＣに設定されるルーチングパラメータである（その１）。
【図５３−２】図５３−２は、ＰＬＣに設定されるルーチングパラメータである（その２）。
【図５３−３】図５３−３は、ＰＬＣに設定されるルーチングパラメータである（その３）。
【図５３−４】図５３−４は、ＰＬＣに設定されるルーチングパラメータである（その４）。
【図５４】図５４は、この発明による制御システムエンジニアリング装置の実施の形態７の機能構成を模式的に示すブロック図である。
【図５５−１】図５５−１は、パラメータ一括書換処理手順の一例を示すフローチャートである（その１）。
【図５５−２】図５５−２は、パラメータ一括書換処理手順の一例を示すフローチャートである（その２）。
【図５６−１】図５６−１は、制御システムの構成変更後のルーチングパラメータを示す図である（その１）。
【図５６−２】図５６−２は、制御システムの構成変更後のルーチングパラメータを示す図である（その２）。
【図５６−３】図５６−３は、制御システムの構成変更後のルーチングパラメータを示す図である（その３）。
【図５６−４】図５６−４は、制御システムの構成変更後のルーチングパラメータを示す図である（その４）。
【図５７−１】図５７−１は、複数ネットワークのパラメータ一括書換処理手順の一例を示すフローチャートである（その１）。
【図５７−２】図５７−２は、複数ネットワークのパラメータ一括書換処理手順の一例を示すフローチャートである（その２）。
【図５８−１】図５８−１は、制御システムの構成変更後のルーチングパラメータを示す図である（その１）。
【図５８−２】図５８−２は、制御システムの構成変更後のルーチングパラメータを示す図である（その２）。
【図５８−３】図５８−３は、制御システムの構成変更後のルーチングパラメータを示す図である（その３）。
【図５８−４】図５８−４は、制御システムの構成変更後のルーチングパラメータを示す図である（その４）。
【符号の説明】
【０４２６】
１０，１０−１〜１０−１３  ＰＬＣ（プログラマブルコントローラ）
１１−１Ａ〜１１−５Ｂ  通信ユニット
１２−３〜１２−５  入出力ユニット
１３−３  増設ベース
２１  情報系ネットワークＮｏ．３
２２Ａ  コントローラ間ネットワークＮｏ．１
２２Ｂ  コントローラ間ネットワークＮｏ．２
２３  フィールドネットワーク
１００  制御システムエンジニアリング装置
１０１，１５５  マイクロプロセッサ
１０２，１５６  データ格納メモリ
１０３  通信ポート
１０４，１１２，１５１  表示部
１０５，１５２  入力部
１０６，１５４  記憶部
１０７，１５７  バス
１１１  通信部
１１３  起点ＰＬＣ指定部
１１４  オンラインネットワーク構成情報収集部
１１５  オンライン接続経路保持部
１１６  オンラインネットワーク構成情報保持部
１１７  表示オブジェクト座標算出部
１１８  システム構成表示部
１１９  制御部
１２０  接続経路表示部
１２１  システム構成編集部
１２２  オフラインネットワーク構成情報保持部
１２３  接続経路解析選択部
１２４  スループットモデル保持部
１２５  オフライン接続経路保持部
１２６  最適接続経路算出部
１２７  ルーチングパラメータ算出部
１５０  表示器
１１７１  グリッドモデル保持機能
１１７２  ネットワークグリッド配置機能
１１７３  ＰＬＣグリッド配置機能
１１７４  グリッドサイズ算出機能
１１７５  グリッド座標算出機能
１２７１  接続経路逆転機能
１２７２  転送先ネットワーク番号抽出機能
１２７３  中継先ネットワーク番号抽出機能
１２７４  中継先局番号抽出機能
１１７２１  他ネットワーク接続ＰＬＣ抽出手段
１１７２２  ネットワーク種別ソート手段
１１７３１  ＰＬＣグリッド配置候補抽出手段
１１７３２  ＰＬＣグリッド配置候補選択手段
【手続補正書】
【提出日】平成21年12月25日(2009.12.25)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００５９
【補正方法】変更
【補正の内容】
【００５９】
ついで、オンラインネットワーク構成情報収集部１１４は、ステップＳ１２で読み出したシステム構成情報からベース情報と接続ネットワーク情報とを抽出し（ステップＳ１４）、これらをＰＬＣデータとして、オンラインネットワーク構成情報保持部１１６に出力する（ステップＳ１５）。その後、オンラインネットワーク構成情報収集部１１４は、起点ＰＬＣを処理対象ＰＬＣとして選択し（ステップＳ１６）、図９−２に示されるＡ１処理を実行する（ステップＳ１７）。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００６０
【補正方法】変更
【補正の内容】
【００６０】
図９−２は、図９−１のステップＳ１７におけるＡ１処理の手順を示すフローチャートである。まず、オンラインネットワーク構成情報収集部１１４は、起点ＰＬＣが接続するすべてのネットワークに対して、図９−３に示されるＡ２処理を実行したか否かを判定する（ステップＳ３１）。対象となるＰＬＣに接続するすべてのネットワークに対してＡ２処理を行っている場合（ステップＳ３１でＹｅｓの場合）には、Ａ１処理を終了し、図９−１のフローチャートへと戻る。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００９５
【補正方法】変更
【補正の内容】
【００９５】
新たに読み出したＰＬＣ１０−２のシステム構成情報には、ベース情報として、スロット１にＣＰＵユニット、スロット２にコントローラ間ネットワークＮｏ．２で通信するための通信ユニット１１−２Ａ、スロット３に情報系ネットワークＮｏ．３で通信するための通信ユニット１１−２Ｂ、という情報が含まれている。また、接続ネットワーク情報として、コントローラ間ネットワークＮｏ．２、局番１、管理局、という情報と、情報系ネットワークＮｏ．３、局番２、ＩＰアドレス、という情報が含まれている。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００９７
【補正方法】変更
【補正の内容】
【００９７】
そして、オンラインネットワーク構成情報収集部１１４は、これらの抽出したシステム情報と、オンラインネットワーク構成情報保持部１１６に既に格納されているＰＬＣ１０−１に関するＰＬＣデータとから、コントローラ間ネットワークＮｏ．２についてのネットワーク情報を作成し、ネットワークデータＭ２としてオンラインネットワーク構成情報保持部１１６に出力する。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０２４２
【補正方法】変更
【補正の内容】
【０２４２】
その結果として、オフラインネットワーク構成情報保持部１２２で保持されるオフラインネットワーク構成情報のデータの内容は図１１と同じとなり、システム構成の表示も図２０（実施の形態２の方法を用いれば、図２７）と同じになる。以下では、図２０や図２７のような表示部１１２に表示されるシステム構成の画面を、システム構成図ということにする。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】０２９８
【補正方法】変更
【補正の内容】
【０２９８】
図４０は、オフライン接続経路の表示画面の一例を示す図である。この図では、起点ＰＬＣから図１２の制約によってアクセス可能なＰＬＣには、その近傍に「○」印を配置し、起点ＰＬＣから図１２の制約によってアクセスできないＰＬＣには、その近傍に「×」印を配置している。これによって、起点ＰＬＣからアクセス可能なＰＬＣとアクセス不可能なＰＬＣとをすぐに見分けることが可能となる。この図４０の例では、ＰＬＣ１０−５の先に情報系ネットワークＮｏ．４を介してＰＬＣ１０−９が接続されている。しかし、このＰＬＣ１０−９へは、フィールドネットワークのローカル局であるＰＬＣ１０−５を介してしかアクセスできないので、図１２の制約Ｂに該当する。そのため、ＰＬＣ１０−９へはアクセス不可能となる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】０３１３
【補正方法】変更
【補正の内容】
【０３１３】
ついで、最適接続経路算出部１２６は、上記で算出した各ＰＬＣを起点とした合計スループット評価値のうち、システム構成全体のスループットが最良のものを抽出し（ステップＳ３７５）、最適接続経路としてオフライン接続経路保持部１２５に出力する（ステップＳ３７６）。実施の形態４で用いたスループットモデルを用いているので、ここでは、合計スループット評価値の小さいものが最適なものとなる。上記した結果より、ＰＬＣ１０−１を起点ＰＬＣとした場合の接続経路データの合計スループット評価値が最も小さいので、図４３−１〜図４３−５に示される最適接続経路を最適接続経路としてオフライン接続経路保持部１２５に出力する。以上により、最適接続経路算出処理が終了する。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】０３２７
【補正方法】変更
【補正の内容】
【０３２７】
このＰＬＣ１０−４の通信ユニット１Ｎｓ４でデータを受信すると、宛先がネットワークＮｏ．３のＰＬＣ１０−１２であるので、ルーチングパラメータを参照して、中継先ネットワークＮｏ．２の中継先局番号４であるＰＬＣ１０−１３へと、通信ユニット２Ｎｓ１とネットワークＮｏ．２を介して送信する。ＰＬＣ１０−１３では、受信したデータがネットワークＮｏ．３のＰＬＣ１０−１２宛へのデータであるので、通信ユニット３Ｎｓ５とネットワークＮｏ．３を介してＰＬＣ１０−１２へと送信する。これによって、行きのデータ伝送が終了する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】０３７８
【補正方法】変更
【補正の内容】
【０３７８】
このようにして求められた図５３−１〜図５３−４のルーチングパラメータは、それぞれの名称に示されるＰＬＣに対して設定される。すなわち、図５３−１は、ＰＬＣπに設定されるルーチングパラメータであり、図５３−２は、ＰＬＣαに設定されるルーチングパラメータであり、図５３−３は、ＰＬＣβに設定されるルーチングパラメータであり、図５３−４は、ＰＬＣμに設定されるルーチングパラメータである。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】０４０８
【補正方法】変更
【補正の内容】
【０４０８】
ステップＳ５１５で選択したネットワークについて図５５−２のＰＬＣのパラメータ書換処理が終了すると、ステップＳ５１４で抽出したパラメータに変更のあったネットワークの全てを選択したか否かを判定する（ステップＳ５１７）。変更のあったネットワークの全てを選択していない場合（ステップＳ５１７でＮｏの場合）には、抽出したネットワークのうち、起点ＰＬＣからつぎに離れているネットワークを１つ選択する（ステップＳ５１８）。そして、ステップＳ５１６へと戻り、変更のあったネットワークの全てを、起点ＰＬＣからの接続経路が離れている順に選択するまで、上述した処理が繰り返し実行される。また、変更のあったネットワークの全てを選択した場合（ステップＳ５１７でＹｅｓの場合）には、図５７−２のルーチングパラメータ書換処理を行う（ステップＳ５１９）。
【手続補正１１】
【補正対象書類名】図面
【補正対象項目名】図１７
【補正方法】変更
【補正の内容】
【図１７】
2008146380.tif 000122
【手続補正１２】
【補正対象書類名】図面
【補正対象項目名】図１８
【補正方法】変更
【補正の内容】
【図１８】
2008146380.tif 000123
【手続補正１３】
【補正対象書類名】図面
【補正対象項目名】図２３−２
【補正方法】変更
【補正の内容】
【図２３−２】
2008146380.tif 000124
【手続補正１４】
【補正対象書類名】図面
【補正対象項目名】図２３−３
【補正方法】変更
【補正の内容】
【図２３−３】
2008146380.tif 000125
【手続補正１５】
【補正対象書類名】図面
【補正対象項目名】図２６
【補正方法】変更
【補正の内容】
【図２６】
2008146380.tif 000126
【手続補正１６】
【補正対象書類名】図面
【補正対象項目名】図３８
【補正方法】変更
【補正の内容】
【図３８】
2008146380.tif 000127
【手続補正１７】
【補正対象書類名】図面
【補正対象項目名】図４８
【補正方法】変更
【補正の内容】
【図４８】
2008146380.tif 000128
【国際調査報告】
2008146380.tif 000129
2008146380.tif 000130