(57)【要約】【課題】  構成管理機能を有する開発支援ツール等が、Ｅｔｈｅｒｎｅｔ（登録商標）上の制御機器から、ＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子の４つの情報を自動的かつ短時間で収集することを可能ならしめること。【解決手段】  Ｅｔｈｅｒｎｅｔ（登録商標）ノード上につながる制御機器にＵＤＰブロードキャストを行ない、機器のＩＰアドレスを特定した後、機器の論理ネットワーク番号、論理ノード番号をルーチング異常を起こさせるパケットを機器に送付することで取得し、取得したＩＰアドレス、論理ネットワーク番号および論理ノード番号宛てに送付することで機器の型式を取得する。【選択図】図１９
2007129667.tif 000002
【特許請求の範囲】
【請求項１】
通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能な通信ノード装置であって、
独自規格の通信手順を制御機器の各型式に応じて複数通り備えると共に、通信相手となる制御機器のＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子が与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順を選択しかつそれらをカプセル化してＥｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んだ上で、その制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信を行う通信機能を有し、かつ
ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の収集手段と、
第１の収集手段で収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時通知機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の収集手段と、
第１及び第２の収集手段で収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドをカプセル化して埋め込んだパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の収集手段と、
を具備する、ことを特徴とする通信ノード装置。
【請求項２】
独自規格の通信手順を制御機器の各型式に応じて複数通り備えると共に、通信相手となる制御機器のＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子が与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順を選択しかつそれらをカプセル化してＥｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んだ上で、その制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信を行う通信機能を有し、かつ通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能な通信ノード装置におけるデータ収集方法であって、
ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の収集ステップと、
第１の収集手段で収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時通知機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の収集ステップと、
第１及び第２の収集手段で収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドをカプセル化して埋め込んだパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の収集ステップと、
を具備する、ことを特徴とする通信ノード装置におけるデータ収集方法。
【請求項３】
独自規格の通信手順を制御機器の各型式に応じて複数通り備えると共に、通信相手となる制御機器のＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子が与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順を選択しかつそれらをカプセル化してＥｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んだ上で、その制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信を行う通信機能を有し、かつ通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能な通信ノード装置に組み込まれるコンピュータプログラムであって、
通信ノード装置として機能するコンピュータに、
ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の収集ステップと、
第１の収集手段で収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時通知機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の収集ステップと、
第１及び第２の収集手段で収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドをカプセル化して埋め込んだパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の収集ステップと、
を実行させる、ことを特徴とする通信ノード装置に組み込まれるデータ収集用のコンピュータプログラム。
【請求項４】
独自規格の通信手順を制御機器の各型式に応じて複数通り備えると共に、通信相手となる制御機器のＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子が与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順を選択しかつそれらをカプセル化してＥｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んだ上で、その制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信を行う通信機能を有し、かつ通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能な通信ノード装置に組み込まれるコンピュータプログラムが格納された記録媒体であって、
通信ノード装置として機能するコンピュータに、
ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の収集ステップと、
第１の収集ステップで収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるコマンドを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時対応機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の収集ステップと、
第１及び第２の収集ステップで収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の収集ステップと、
を実行させる、ことを特徴とする通信ノード装置に組み込まれるデータ収集用コンピュータプログラムを格納させた記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能な通信ノード装置に係り、例えばネットワーク構成管理機能を有する開発支援ツール等として好適な通信ノード装置に関する。
【背景技術】
【０００２】
ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）における制御機器（例えば、プログラマブル・コントローラ（以下、「ＰＬＣ」と称する）、プログラマブル・ターミナル装置（以下、「ＰＴ」と称する）等々）の構成管理方法の改良が近年望まれている。その背景としては、システムの大規模化や複雑化により、管理する制御機器の数が膨大な数に昇ること等が挙げられる。
【０００３】
構成管理方法は、その制御機器が接続されたネットワークにてどのような構成管理機能が提供されているか否かに依存されている。ＰＬＣが接続されているネットワークは、ＰＬＣメーカ独自規格の論理通信プロトコルを標準として制御機器システムが構築されており、この場合、その制御機器を特定するには、論理ネットワーク識別子としてのネットワーク番号及び論理ノード識別子としてのノード番号が必要となる。
【０００４】
ＰＬＣメーカ独自規格のネットワークを利用している場合には、ネットワーク番号及びノード番号の情報で制御機器は特定可能であるが、汎用ネットワーク技術上でこれらを実現する場合、上記アドレスのほかに汎用ネットワークのアドレス情報（例えばＥｔｈｅｒｎｅｔ（登録商標）であるなら、ＩＰアドレスとポート番号）が必要になる。ユーザは、ネットワーク番号、ノード番号、ＩＰアドレス、ポート番号の合計４つについてのアドレス管理を一つの機器に対して行なう必要がある。
【０００５】
このような構成を持つＥｔｈｅｒｎｅｔ（登録商標）対応制御機器の構成を収集する場合には、基本的にはＩＰアドレス、ネットワーク番号、ノード番号を組み合わせて、逐次的にトライアンドエラーを繰り返す形で収集する必要がある。
【０００６】
なお、ルーチング異常を起こさせるコマンドを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時対応機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する技術は、本出願人により開発されたものとして、従来より知られている（例えば、特許文献１参照）。
【０００７】
さらに、ネットワーク上にＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）にしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する技術は、Ｅｔｈｅｒｎｅｔ（登録商標）上において従来より実施されている。
【０００８】
このＵＤＰの一斉同報による制御機器のＩＰアドレスの取得は、構成管理機能を有する開発支援ツールとして機能するコンピュータ（例えば、パソコン等）においては、通信モデルにおけるアプリケーション層と通信物理層との間に介在される通信ミドルウェアで行なうことができる。このとき、通信ミドルウェアは、制御機器の型式およびコマンドの組に応じて、通信手順（通信内容を含む）を選択し、その選択された通信手順で制御機器と通信する必要がある。つまり通信ミドルウェアには、通信対象となる制御機器の型式を必ず設定する必要がある。
【０００９】
ユーザの制御システムを構成する各制御機器には、その導入年度の相違や目的とする機能の相違等に起因して、仮にメーカは同一であったとしても、様々な型式の制御機器が混在しているのが通例である。また、メーカ側では開発テーマの相違（開発にあたり、機能を重視するか、通信速度を重視するか等々）により、型式に応じて通信手順が幾分異なるのが通例である。そのため、構成管理機能を有する開発支援ツールと様々な型式の制御機器（ＰＬＣ等の型式、ＰＬＣ等に装着される通信ユニットの型式の双方を含む）との間で通信を行うためには、開発支援ツールの側で通信相手方の型式に応じた複数の通信手順を予め備え付け、通信相手方の型式に応じてそれらの１つを選択すると言う手法が採用されている。
【００１０】
このように、構成管理機能を有する開発支援ツールと様々な型式の制御機器（ＰＬＣ等の型式、ＰＬＣ等に装着される通信ユニットの型式の双方を含む）との間で通信を行うためには、構成管理機能を有する開発支援ツールの側では、ＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子の４つの情報を各制御機器から予め収集しておく必要がある。
【特許文献１】特許第３０７４７２６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記の４つの情報を収集するために、ＩＰアドレス、ネットワーク番号、ノード番号を組み合わせて、逐次的にトライアンドエラーを繰り返す検索方法を採用すると、最大ＩＰアドレス数を２５４、最大ネットワーク数を１２７、最大ノード数を１２８、１ノード当たりの最大待ち時間を２秒と想定すると、検索完了までには約２０００時間以上もの膨大な時間がかかり、到底実用には供し得ないと言う問題点がある。
【００１２】
この発明は、上述の問題点に着目してなされたものであり、その目的とするところは、構成管理機能を有する開発支援ツール等が、Ｅｔｈｅｒｎｅｔ（登録商標）上の制御機器から、ＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子の４つの情報を自動的かつ短時間で収集することを可能ならしめることにある。
【００１３】
この発明のさらに他の目的ならびに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解される筈である。
【課題を解決するための手段】
【００１４】
上記の技術的課題を解決するために、本発明は、以下の構成を有する通信ノード装置、通信ノードにおけるデータ収集方法、通信ノード装置に組み込まれるデータ収集用のコンピュータプログラム、及び通信ノード装置に組み込まれるコンピュータプログラムが格納された記録媒体を提供する。
【００１５】
そして、本発明の通信ノード装置は、通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能とされている。
【００１６】
この通信ノード装置には、独自規格の通信手順を制御機器の各型式に応じて複数通り備えると共に、通信相手となる制御機器のＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子が与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順を選択しかつそれらをカプセル化してＥｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んだ上で、その制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信を行う通信機能が設けられている。
【００１７】
さらに、この通信ノード装置には、ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の収集手段と、第１の収集手段で収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時通知機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の収集手段と、第１及び第２の収集手段で収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドをカプセル化して埋め込んだパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の収集手段と、が設けられている。
【００１８】
次に、本発明の通信ノードにおけるデータ収集方法は、独自規格の通信手順を制御機器の各型式に応じて複数通り備えると共に、通信相手となる制御機器のＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子が与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順を選択しかつそれらをカプセル化してＥｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んだ上で、その制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信を行う通信機能を有し、かつ通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能な通信ノード装置におけるデータ収集方法である。
【００１９】
このデータ収集方法には、ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の収集ステップと、第１の収集手段で収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時通知機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の収集ステップと、第１及び第２の収集手段で収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドをカプセル化して埋め込んだパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の収集ステップと、が具備されている。
【００２０】
次に、本発明の通信ノード装置に組み込まれるデータ収集用のコンピュータプログラムは、独自規格の通信手順を制御機器の各型式に応じて複数通り備えると共に、通信相手となる制御機器のＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子が与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順を選択しかつそれらをカプセル化してＥｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んだ上で、その制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信を行う通信機能を有し、かつ通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能な通信ノード装置に組み込まれるコンピュータプログラムである。
【００２１】
このプログラムは、通信ノード装置として機能するコンピュータに、ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の収集ステップと、第１の収集手段で収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時通知機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の収集ステップと、第１及び第２の収集手段で収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドをカプセル化して埋め込んだパケットを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の収集ステップと、を実行させるものである。
【００２２】
次に、通信ノード装置に組み込まれるデータ収集用コンピュータプログラムを格納させた記録媒体は、上と同様に、独自規格の通信手順を制御機器の各型式に応じて複数通り備えると共に、通信相手となる制御機器のＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子が与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順を選択しかつそれらをカプセル化してＥｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んだ上で、その制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信を行う通信機能を有し、かつ通信機能付の制御機器が１台又は２台以上に亘り接続されたＥｔｈｅｒｎｅｔ（登録商標）規格のネットワークに接続が可能な通信ノード装置に組み込まれるコンピュータプログラムが格納された記録媒体である。
【００２３】
この記録媒体には、通信ノード装置として機能するコンピュータに、ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の収集ステップと、第１の収集ステップで収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるコマンドを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時対応機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の収集ステップと、第１及び第２の収集ステップで収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の収集ステップと、を実行させるものである。
【００２４】
以上の構成よりなる各発明によれば、ネットワーク上にＵＤＰにしたがった一斉同報送信を行ったのち、それに対するレスポンスを受信することにより、各制御機器のそれぞれからＩＰアドレスを収集する第１の段階と、第１の収集ステップで収集された各ＩＰアドレスのそれぞれに対して、ルーチング異常を起こさせるコマンドを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれたルーチング異常時対応機能を利用して、各制御機器のそれぞれから論理ネットワーク識別子及び論理ノード識別子を収集する第２の段階と、第１及び第２の収集ステップで収集されたＩＰアドレス、論理ネットワーク識別子、及び論理ノード識別子で識別される制御機器に対して、その制御機器の独自規格にしたがった型式要求コマンドを送信したのち、それに対するレスポンスを受信することにより、各制御機器に予め仕組まれた型式通知機能を利用して、各制御機器のそれぞれから型式識別子を収集する第３の段階とを経て、ＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子の４つの情報を各制御機器から収集するものである。
【００２５】
そのため、ＵＤＰ一斉同報によりネットワーク上に存在するノードを特定してから型式要求コマンドを送信するものであるから、ＩＰアドレスとネットワーク識別子（番号）とノード識別子（番号）との全ての組合せの宛先に対して型式要求コマンドを送信する場合のように、存在しないノードへのアクセスが発生することがなくなり、ノード数に応じた必要最小限の時間で検索を完了して、ＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子の４つの情報を短時間で収集できることを意味している。
【００２６】
以後、こうして得られた４つの情報が通信ミドルウェアに与えられると、型式識別子で識別される制御機器の型式に応じた独自規格の通信手順が選択されると共に、それらがカプセル化されて、Ｅｔｈｅｒｎｅｔ（登録商標）規格のパケットに埋め込んまれ、しかるのち、各制御機器との間でＥｔｈｅｒｎｅｔ（登録商標）規格の通信が実行可能となるのである。
【発明の効果】
【００２７】
本発明によれば、構成管理機能を有する開発支援ツール等が、Ｅｔｈｅｒｎｅｔ（登録商標）上の制御機器から、ＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子の４つの情報を自動的かつ短時間で収集することが可能となる。
【発明を実施するための最良の形態】
【００２８】
以下に、この発明の好適な実施の一形態を添付図面を参照しながら詳細に説明する。
【００２９】
本発明が適用されるＰＬＣシステムのネットワーク構成を示す説明図が図１に示されている。同図に示されるように、このＰＬＣシステムは、構成管理機能を有する開発支援ツール（本発明の通信ノードに相当）として機能する１台のパソコン（ＰＣ）１１と制御機器である複数台のＰＬＣ１２（１２−１〜１２−ｎ）とを汎用ネットワークであるＥｔｈｅｒｎｅｔ（登録商標）１３を介して接続して構成されている。ＰＣ１１には、後に説明するように、アプリケーション１１−１と通信ミドルウェア１１−２とが組み込まれている。なお、この例では、制御機器としてＰＬＣを例示しているが、それ以外にも制御機器としては、プログラマブル・ターミナル装置（ＰＴ）等を挙げることができる。
【００３０】
通信ミドルウェアをＰＣ上で動作させることを前提としたときのＰＣのハードウェア構成図が図２に示されている。同図に示されるように、ＰＣ１１は、演算部（ＣＰＵ）１０１とＲＯＭ／ＨＤＤ１０２とＲＡＭ１０３と通信制御部１０４とから構成され、一般的なコンピュータ（所謂、パソコン）のハードウェア構成と同じである。
【００３１】
演算部１０１は、ＯＳを含めたそれぞれのソフトウェアを実行制御するものであり、ＲＯＭ／ＨＤＤ１０２は、ソフトウェアの実行モジュールを格納するものである。なお、ソフトウェアは、制御機器の情報をモニタする、もしくは制御機器に対してなんらかの制御トリガを与えるプログラム（以下、アプリケーション１１−１）と、上記アプリケーションの下位で動作し、おもに通信パケットの作成、送信、受信、再構成等を行なうプログラム（以下、通信ミドルウェア１１−２）とから構成される。さらに、通信ミドルウェア１１−２は、制御機器の通信情報並びに型式情報が格納されたＩＰアドレスワークテーブル１１−３を含んでいる。
【００３２】
ＲＡＭ１０３は、それぞれのソフトウェアが必要とするワーク領域（ＩＰアドレスワークテーブル）を保持するのに使用されるものであり、通信制御部１０４は、インターネット等のネットワークを介した通信を制御するのに使用されるものである。
【００３３】
ＰＬＣ１２は周知のごとく、ＣＰＵユニットと、Ｉ／Ｏユニットと、各種高機能ユニット等を含んで構成される。このようなＰＬＣ１２のＣＰＵユニットのハードウェア構成図が図３に示されている。同図に示されるように、このＣＰＵユニット３００は、ＲＯＭ３０１と、マイクロプロセッサ（ＭＰＵ）３０２と、ユーザプログラムメモリ（ＵＭ）３０３と、ワークＲＡＭ３０４と、データ格納用不揮発性メモリ３０５と、アプリケーションスペシフィックＩＣ（ＡＳＩＣ）３０６と、入出力メモリ（ＩＯＭ）３０７とを含んでいる。
【００３４】
ユーザプログラムメモリ（ＵＭ）３０３は、ユーザプログラムを格納するメモリであり、入出力メモリ（ＩＯＭ）３０７は、外部Ｉ／Ｏ割付用のメモリ、あるいはユーザプログラムで使用するデータメモリ等として使用されるメモリである。ＲＯＭ３０１は、システムファームウェアを格納するメモリである。ワークＲＡＭ３０４は、システムワークとして使用されるメモリである。データ格納用不揮発性メモリ３０５は、異常通知の設定や異常ステータス等を格納するメモリである。ＡＳＩＣ３０６は、ユーザプログラムメモリ（ＵＭ）３０３からプログラムを順番に読み出して実行し、実行結果を、入出力メモリ（ＩＯＭ）３０７へ書き込む機能を有する。
【００３５】
マイクロプロセッサ（ＭＰＵ）３０２は、ＣＰＵユニット３００の全体を統括制御するものである。ＲＯＭ３０１には、マイクロプロセッサ（ＭＰＵ）３０２で処理されるシステムプログラムが記憶され、データ格納用不揮発性メモリ３０５には、バックアップされたユーザプログラムが記憶されている。ワークＲＡＭ３０４には、マイクロプロセッサ（ＭＰＵ）３０７の処理全般にわたる各種データが記憶される。入出力メモリ（ＩＯＭ）３０７は、プログラム実行により入出力装置に対して入出力される入出力情報の代用として参照／書き換えられるメモリである。ユーザプログラムメモリ（ＵＭ）３０３には、データ格納用不揮発性メモリと等価なユーザプログラムが記憶され、ここから読み出されたユーザプログラムが実行される。ＡＳＩＣ３０６は、ユーザプログラムメモリ（ＵＭ）３０３からプログラムを順番に読み出し実行し、実行結果を入出力メモリ（ＩＯＭ）３０７へと書き込む。
【００３６】
ＰＬＣ１２のＥｔｈｅｒｎｅｔ（登録商標）ユニットのハードウェア構成図が図４に示されている同図に示されるように、Ｅｔｈｅｒｎｅｔ（登録商標）ユニット４００は、通信インターフェイス４０１と、マイクロプロセッサ（ＭＰＵ）４０２と、システムメモリ４０３とを含んでいる。通信インターフェイス４０１は、図示しないＬＡＮケーブルを介して汎用シリアルデバイスと接続される。この通信インターフェイス４０１は、外部の任意の汎用シリアルデバイスと接続し、通信を行うための物理層として機能する。ＭＰＵ４０２は、Ｅｔｈｅｒｎｅｔ（登録商標）ユニットとして必要な各種の機能を実現する。システムメモリ４０３は、ＭＰＵ４０２が演算処理を行う際に、データを格納するエリアなどとして利用される。
【００３７】
ＣＰＵユニット３００とＥｔｈｅｒｎｅｔ（登録商標）ユニット４００との間のデータのやり取りは、それらを結ぶ内部バスＢＵＳ１を介して行われる。この内部バスＢＵＳ１は、図示しないバックプレーン上に存在する。
【００３８】
本発明の通信ノード装置を用いた制御機器の特定動作を示すゼネラルフローチャートが図５及び図６に示されている。
【００３９】
通信ノード装置を用いる制御機器の特定動作は、ＰＣ１１内のアプリケーション１１−１での処理と、ＰＣ１１内の通信ミドルウェア１１−２での処理と、制御装置（ＰＬＣ１２のＥｔｈｅｒｎｅｔ（登録商標）ユニット４００、またはＣＰＵユニット３００）での処理とから構成される。
【００４０】
特定動作は、ネットワーク上に接続されているＰＬＣ１２の機器情報を取得する処理であり、この例では、アプリケーション初期処理（ステップ５０１）、ミドルウェア初期処理（ステップ５０２）、制御機器のＩＰアドレス取得処理（ステップ５０３）、通信ミドルウェアのＩＰアドレス取得処理（ステップ５０４）、通信ミドルウェアのネットワーク、ノードアドレス特定処理（ステップ５０５）、制御機器のルーチングエラー返送処理（ステップ５０６）、通信ミドルウェアの機種情報特定処理（ステップ５０７）、制御機器の機種情報取得処理（ステップ５０８）を含んでいる。
【００４１】
そして、通信ミドルウェア１１−２内にＥｔｈｅｔｎｅｔ（登録商標）上に接続されているＰＬＣリスト（制御機器リスト）が生成され（ステップ５０９）、アプリケーション１１−１へ出力され、指定範囲内のノード番号のＰＬＣ情報が出力装置に出力される（ステップ５１０）。
【００４２】
続く、制御機器への接続処理では、ＰＬＣリストが表示されると（ステップ５１０）、通信受付が行われ（ステップ５１１）、通信を行うＰＬＣが選択されるまで待機状態が維持される（ステップ５１１ＮＯ）。通信を行うＰＬＣが選択されると（ステップ５１１ＹＥＳ）、アプリケーション１１−１は、選択されたＰＬＣ１２の型式情報、ＩＰアドレス、ネットワーク、及びノード番号を通信ミドルウェアに渡し、通信ミドルウェア１１−２の通信処理が行われ（ステップ５１３）、通信コマンドの送受信がＰＬＣ１２との間で行われる（ステップ５１４）。さらに、ステップ５１４の通信結果は、アプリケーション１１−１に渡され、出力装置に出力される（ステップ５１５）。
【００４３】
アプリケーション初期処理（ステップ５０１）の詳細を示すフローチャートが図７に示されている。ユーザは、構成管理アプリケーション１１−１（機器情報を取得して、どの機器がどのネットワークに存在するかを画面上に表示してユーザに提供するアプリケーション）を用いて、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワーク上にどのような制御機器が存在しているかを取得する。同図に示されるように、ユーザによりアプリケーション１１−１で機器一覧取得機能が実行されると、通信ミドルウェア１１−２が起動される（ステップ７０１）。
【００４４】
機器一覧取得を行う際、一覧取得の取得範囲（検索範囲）を指定することができる。検索範囲の指定は図８に示されるノード番号範囲指定画面８００にて開始ノード番号８０１と終了ノード番号８０２に数値を入力することでノード番号範囲を指定することができる。これにより、効率よく収集したい制御機器情報のみを得ることができる。
【００４５】
ノード番号範囲が指定されると、アプリケーション１１−１は、通信ミドルウェア１１−２に対して、Ｅｔｈｅｒｎｅｔ（登録商標）機器一覧取得コマンドを要求する（ステップ７０２）。
【００４６】
コマンド要求が行われると（ステップ７０２）、通信ミドルウェア１１−２から制御機器一覧リストが送信されるまでアプリケーション１１−１は待機状態が維持される（ステップ７０３ＮＯ）。制御機器一覧リストが送信されると（ステップ７０３ＹＥＳ）、機器一覧表示処理が行われ出力装置にデータが出力される（ステップ７０４）。
【００４７】
通信ミドルウェア初期処理（ステップ５０２）の詳細を示すフローチャートが図９に示されている。同図に示されるように、アプリケーション１１−１からノード一覧取得コマンドが受信されると（ステップ９０１）、通信ミドルウェアに含まれるＩＰアドレスワークテーブル１１−３がクリアされ、ノード番号範囲指定画面８００で指定されたノード番号がワークテーブルに格納される（ステップ９０２）。
【００４８】
ワークテーブルに指定ノード番号が格納されると（ステップ９０２）、独自規格プロトコルで規定された機器情報取得コマンドが生成される（ステップ９０３）。機器情報取得コマンドが生成されると（ステップ９０３）、ユニット宛ての一斉同報アドレスをコマンドに付加し、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワーク上でＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）一斉同報パケットとして、機器情報取得コマンドを指定して、一斉同報される（ステップ９０４）。
【００４９】
ＵＤＰ一斉同報パケット作成例が図１０に示されている。同図の（ａ）に示されるように、ＵＤＰ一斉同報パケットは、パケット種別１００１と送信先ネットワーク番号１００２と送信先ノード番号１００３と送信先ユニット番号１００４と送信元ネットワーク番号１００５と送信元ノード番号１００６と送信元ユニット番号１００７とＩＤ１００８とコマンド番号１００９とから構成される。
【００５０】
パケット種別１００１にはパケットの種別「８０  ００  ０２」が格納され、送信先ノード番号１００３には一斉同報を示す「ＦＦ」が格納され、送信先ユニット番号１００４には通信ユニット宛を示す「ＦＥ」が格納され、送信ネットワーク番号１００５にはこの例ではネットワーク番号が「２」であるため、「０２」がが格納され、コマンド番号１００９には機器情報取得コマンドを示す「０５  ０１」が格納され、他の部分には、特定を行わない「００」が格納される。
【００５１】
このようなＵＤＰ一斉同報パケットが、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワーク上のＰＬＣ１２に向けて、宛先を指定せずに一斉同報される。
【００５２】
制御機器のＩＰアドレス取得処理の詳細を示すフローチャートが図１１に示されている。同図に示されるように、ＰＬＣ１２のＥｔｈｅｒｎｅｔ（登録商標）ユニット４００は、ＰＣ１１からのＵＤＰ一斉同報パケットが受信されるまで待機状態が維持される（ステップ１１０１ＮＯ）。ＵＤＰ一斉同報パケットを受信した場合には（ステップ１１０１ＹＥＳ）、パケットの宛先を参照し、一斉同報の場合には（ステップ１１０２ＹＥＳ、ステップ１１０３ＹＥＳ）、コマンド識別処理が行われ（ステップ１１０４）、パケットに含まれるコマンド種別を識別する。コマンドが機種情報取得コマンドの場合には、機器情報取得コマンドのレスポンスとしてＥｔｈｅｒｎｅｔ（登録商標）通信ユニット４００の型式およびＩＰアドレスを返答するためのレスポンスコマンドが生成される（ステップ１１０５）。レスポンスコマンドが生成されると（ステップ１１０５）、コマンド送信元ＩＰアドレス宛にレスポンスが返送される（ステップ１１０６）。
【００５３】
通信ミドルウェアのＩＰアドレス特定処理の詳細を示すフローチャートが図１２に示されている。同図に示されるように、機種情報取得コマンドを生成し、ＵＤＰ一斉同報されると（ステップ１２０１、１２０２）、通信ミドルウェア１１−２は複数のＰＬＣ１２のＥｔｈｅｒｎｅｔ（登録商標）ユニット４００から返答される機種情報取得コマンドに対するレスポンス受信するために、一定時間受信状態が維持される（ステップ１１０３ＮＯ）。一定時間経過後（ステップ１１０３ＹＥＳ）、通信ミドルウェア１１−２は、時間内に受信したレスポンスから取り出したＩＰアドレスがＩＰアドレスワークテーブルに格納される。ＩＰアドレスワークテーブル１１−３には、返答した機器のＩＰアドレスのみが格納されている（ステップ１２０４）。
【００５４】
通信ミドルウェアのネットワーク、ノードアドレス特定処理の詳細を示すフローチャートが図１３に示されている。同図に示されるように、この処理では、独自規格プロトコルでは仕様範囲外のネットワーク番号を指定したパケットを受信した制御装置が、自身の正しいネットワーク番号とノード番号をエラーレスポンスとして返信する特性を利用するためのパケットの送信が実行される。
【００５５】
このパケットは図１０の（ｂ）に示されるように、この例のネットワーク番号「８０」は使用されていないので、使用範囲外とする。送信先ネットワーク番号１００２’を使用範囲外である「８０」を格納させたパケットが生成される（ステップ１３０１）。パケットが生成されると（ステップ１３０１）、ＩＰアドレスワークテーブル１１−３に従い、ＩＰアドレスワークテーブル１１−３に格納されたＩＰアドレスが取得される（ステップ１３０２）。取得されたＩＰアドレスは、パケットの宛先として設定され、送信される（ステップ１３０３）。
【００５６】
パケットが送信されると、ＰＬＣ１２のＥｔｈｅｒｎｅｔ（登録商標）ユニット４００でエラーレスポンスが生成され、受信が行われる（ステップ１３０４）。エラーレスポンスが受信されると、返答された正しいネットワーク番号と正しいノード番号とを取得し（ステップ１３０６）、ＩＰアドレスワークテーブル１１−３の該当するＩＰアドレスと関連づけて格納される（ステップ１３０７）。ＩＰアドレスとネットワーク番号、ノード番号の関連付けが完了するまでこのシーケンスを繰り返される（ステップ１３０５ＮＯ）。
【００５７】
制御機器のルーチングエラー返送処理の詳細を示すフローチャートが図１４に示されている。同図に示されるように、通信ミドルウェア１１−２からのパケットが受信されると（ステップ１４０１ＹＥＳ）、パケットのアドレスを参照し、アドレスが「自分宛でなく、一斉同報でない」場合には（ステップ１４０２ＮＯ）、Ｅｔｈｅｒｎｅｔ（登録商標）ユニット４００は、ネットワーク番号０ｘ８０は範囲外と判断し、自ネットワーク番号と自ノード番号とが設定されたエラーレスポンスが生成される（ステップ１４０３）。エラーレスポンスが生成されると（ステップ１４０３）、送信元の通信ミドルウェア１１−２へ返送される（ステップ１４０４）。エラーレスポンスは、通信ミドルウェア１１−２で受信される（ステップ１４０５）。
【００５８】
ルーチングエラー時のレスポンスコマンドの作成例を示す説明図が図１５に示されている。同図に示されるように、受信レスポンスパケットは、パケット種別１５０１と送信先ネットワーク番号１５０２と送信先ノード番号１５０３と送信先ユニット番号１５０４と送信元ネットワーク番号１５０５と送信元ノード番号１５０６と送信元ユニット番号１５０７とＩＤ１５０８とコマンド番号１５０９とエラーコード１５１０とネットワーク番号１５１１とノード番号１５１２とを含んでいる。
【００５９】
Ｅｔｈｅｒｎｅｔ（登録商標）４００制御機器は、受け取ったネットワーク番号が仕様範囲外で、他にルーチングできないので、ルーチングエラーを返す。このときエラー情報に正しいネットワーク番号とノード番号が格納される。
【００６０】
次に、通信ミドルウェアの機種情報特定処理の詳細を示すフローチャートが図１６に示されている。同図に示されるように、この処理は、ＰＬＣ１２の機器情報（型式）を取得するための機器情報取得コマンドの生成が行われる（ステップ１６０１）。機器情報取得コマンドが生成されると（ステップ１６０１）、ＩＰアドレスとネットワーク番号とノード番号が全て関連付けられると、通信ミドルウェア１１−２は、ＩＰアドレスワークテーブル１１−３上を参照しながら、ＩＰアドレスとネットワーク番号とノード番号とを取得し（ステップ１６０２）、取得されたＩＰアドレスとネットワーク番号とノード番号とは、コマンドの宛先として設定され、送信される（ステップ１６０３）。
【００６１】
パケットが送信されると、ＰＬＣ１２のＥｔｈｅｒｎｅｔ（登録商標）ユニット４００でレスポンスが生成され、受信が行われる（ステップ１６０４）。レスポンスが受信されると、返答された機器情報（型式）を取得し（ステップ１６０６）、ＩＰアドレスワークテーブル１１−３上で、ＩＰアドレスとネットワーク番号、ノード番号の続きのレコードに、返答された機器情報（型式）が関連付けて格納される（ステップ１６０７）。ＩＰアドレスとネットワーク番号とノード番号と機器情報（型式）の関連付けが完了するまでこのシーケンスを繰り返される（ステップ１６０５ＮＯ）。
【００６２】
制御機器の機種情報取得処理の詳細を示すフローチャートが図１７に示されている。同図に示されるように、通信ミドルウェア１１−２からのパケットが受信されると（ステップ１６０１ＹＥＳ）、パケットのアドレスを参照し、ネットワーク番号、ノード番号が、自分宛の番号と認識し、さらにユニット番号（ユニットに指定される個別の番号）が０であることを認識すると（ステップ１６０２ＹＥＳ、ステップ１６０３ＮＯ、ステップ１６０４ＹＥＳ）、そのパケットをＣＰＵユニット３００へルーチングする処理が行われる（ステップ１６０５）。ＣＰＵユニット３００では、コマンド識別処理が行われ（ステップ１６０６）、ＰＬＣとしての機器情報が格納されたレスポンスが生成される（ステップ１６０７）。生成されたレスポンスは、Ｅｔｈｅｒｎｅｔ（登録商標）ユニット４００経由で通信ミドルウェア１１−２に返送される（ステップ１６０８）。
【００６３】
以上の処理により、通信ミドルウェア１１−２は、Ｅｔｈｅｒｎｅｔ（登録商標）を介して接続される制御機器（例えば、ＰＬＣ１２など）のＩＰアドレス、ネットワーク番号、ノード番号、機器情報（機器の型式）を取得することができ、それらの情報は、通信ミドルウェア１１−２内のＩＰアドレスワークテーブル１１−３に関連付けて格納される。さらに、アプリケーション１１−１は、ＩＰアドレスワークテーブル１１−３に格納される制御機器情報を機器一覧リストとして取得することができる。
【００６４】
アプリケーション１１−１は、機器一覧リストを取得すると、ユーザにその一覧を表示する。ユーザは一覧の中から、実際にモニタしたい制御機器を選択することで、その機器の更なる詳細情報（例えば制御機器がＰＬＣの場合は、ラダープログラムや使用変数アドレスのモニタなど）の取得や設定を行なうことができる。
【００６５】
制御機器においては、世代毎に通信するコマンドの内容や手順が異なることが多い。これは、ＣＰＵユニット３００を代表とする各ユニットで使用するメモリやＣＰＵ(汎用ＣＰＵ)は、その時代で最もコストパフォーマンスの高いものが選択されているので、それに依存して処理内容が変化してきているという背景がある。アプリケーション１１−１やユーザに制御機器の型式毎の通信方式、手順の違いを意識させることのないように、通信ミドルウェア１１−２は、型式およびコマンドの組により通信手順や通信内容を変えて制御機器と通信する必要がある。つまり通信ミドルウェア１１−２には、通信対象の型式を必ず設定する必要がある。ユーザが通信対象の制御機器を選択した際に、アプリケーション１１−１が制御機器の型式を収集した機器情報一覧から取り出し、通信ミドルウェア１１−２に対して提供することで、通信ミドルウェア１１−２内部で型式に沿った適切な手順を生成して、制御機器と通信を行なうことが可能となる。
【００６６】
次に通信ミドルウェアの通信処理の詳細を示すフローチャートが図１８に示されている。同図に示されるように、通信ミドルウェア１１−２は、アプリケーション１１−１から型式と通信方式とを受け取る（ステップ１８０１）。この通信方式には、通信プロトコル名、ネットワーク番号、ノード番号、通信プロトコルに依存したアドレス情報（例えば、Ｅｔｈｅｒｎｅｔ（登録商標）ならば、ＩＰアドレスとポート番号）が含まれる。
【００６７】
型式と通信方式とを受け取ると（ステップ１８０１）、通信ソフトウェアインスタンスが内部で生成される（ステップ１８０２）。通信ソフトウェアインスタンスには、制御機器の型式とコマンドの組毎に、通信手順や通信内容（パケット内容）が保持されている。通信ソフトウェアインスタンスが内部で生成されると（ステップ１８０２）、アプリケーション１１−１からのコマンドの受け取り待ちが維持される（ステップ１８０３、１８０４ＮＯ）。コマンドを受け取ると（ステップ１８０４ＹＥＳ）、コマンド識別処理が行われ（ステップ１８０５）、機器情報取得コマンドや機器状態取得コマンドなどのコマンドに識別される（ステップ１８０６）。各コマンドに識別されると（ステップ１８０６）、制御機器に対してコマンド送信・受信処理が行われる（ステップ１８０７）。制御機器とコマンドの送受信が行われることにより、操作や監視などの通信が行われる。これらの処理により、アプリケーション１１−１やユーザに制御機器の型式毎の通信方式、手順の違いを意識させることのなく、通信ミドルウェア１１−２は、制御機器と通信することができる。
【００６８】
以上の制御機器リストの生成処理をまとめた概要図が図１９に示されている。同図に示されるように、以下の処理が行われる。
【００６９】
［１］アプリケーション１１−１は、制御機器の一覧をアップロードするために、通信ミドルウェア１１−２に機器一覧取得コマンドを発行する。このとき、ユーザは一覧で表示するノード番号検索範囲を指定することができる。通信ミドルウェア１１−２は、独自規格プロトコルで規定された機器情報取得コマンドを生成する。
【００７０】
［２］通信ミドルウェア１１−２は、Ｅｔｈｅｒｎｅｔ（登録商標）ネットワーク上でＵＤＰ一斉同報パケットとして、上記機器情報取得コマンドを指定して、一斉同報する。
【００７１】
［３］制御機器のＥｔｈｅｒｎｅｔ（登録商標）ユニット４００は、機器情報取得コマンドのレスポンスとしてＥｔｈｅｒｎｅｔ（登録商標）ユニット４００の型式およびＩＰアドレスを返答する。
【００７２】
［４］通信ミドルウェア１１−２は、複数の制御機器から返答される上記レスポンスを一定時間待つ。一定時間経過後、通信ミドルウェア１１−２は、レスポンスから取り出したＩＰアドレスをＩＰアドレスワークテーブル１１−３に格納する。ＩＰアドレスワークテーブル１１−３には、返答した機器のＩＰアドレスのみが格納されている。
【００７３】
［５］ＩＰアドレスワークテーブル１１−３に従い、通信ミドルウェア１１−２は、そのＩＰアドレス宛てに、独自規格プロトコルでは仕様範囲外のネットワーク番号を指定したパケットを生成して、送信する。
【００７４】
［６］制御機器（例えば、ＰＬＣ１２など）は受け取ったネットワーク番号が仕様範囲外で、他にルーチングできないので、ルーチングエラーを返す。このときエラー情報に正しいネットワーク番号とノード番号を入れる。
【００７５】
［７］通信ミドルウェア１１−２は、通信エラーの内容を判別し、先ほど格納したＩＰアドレスに関連付けて、制御機器から返答された正しいネットワーク番号と正しいノード番号をＩＰアドレスワークテーブル１１−３に格納する。ＩＰアドレスワークテーブル上で、ＩＰアドレスとネットワーク番号、ノード番号が関連付けられるまで［５］から［７］を繰り返す。
【００７６】
［８］ＩＰアドレスとネットワーク番号、ノード番号が全て関連付けられると、通信ミドルウェア１１−２は、ＩＰアドレスワークテーブル１１−３上を参照しながら上記の組み合わせの機器情報取得コマンドを作成して、送信する。
【００７７】
［９］制御機器は機器本体（Ｅｔｈｅｒｎｅｔ（登録商標）ユニット４００でなく、ＣＰＵユニット３００）の機器情報を生成し、返答する。
【００７８】
［１０］ＩＰアドレスワークテーブル上で、ＩＰアドレスとネットワーク番号、ノード番号の続きのレコードに、返答された機器情報（型式）を格納する。
【００７９】
［１１］ＩＰアドレスワークテーブルが完成すると、通信ミドルウェアは、ノード番号検索範囲内の情報のみを抽出し、それを機器一覧リストとしてアプリケーションに返す。ノード番号検索範囲内の情報が指定されていない場合は、ＩＰアドレスワークテーブル全体を機器一覧リストとしてアプリケーションに返す。
【００８０】
以上の実施形態のように、Ｅｔｈｅｒｎｅｔ（登録商標）上の制御機器情報を容易に収集し、かつ、収集した制御機器の型式に沿った通信手順を生成して、制御機器と通信をユーザに意識させることなく可能とすることができる。
【産業上の利用可能性】
【００８１】
本発明によれば、構成管理機能を有する開発支援ツール等が、Ｅｔｈｅｒｎｅｔ（登録商標）上の制御機器から、ＩＰアドレス、論理ネットワーク識別子、論理ノード識別子、及び型式識別子の４つの情報を自動的かつ短時間で収集することが可能となる。
【図面の簡単な説明】
【００８２】
【図１】本発明のネットワーク構成を示す説明図である。
【図２】ＰＣのハードウェア構成を示すブロック図である。
【図３】ＰＬＣのＣＰＵユニットのハードウェア構成を示すブロック図である。
【図４】ＰＬＣのＥｔｈｅｒｎｅｔ（登録商標）ユニットのハードウェア構成を示すブロック図である。
【図５】本発明のノード装置を用いた制御機器の特定動作を示すゼネラルフローチャート（その１）である。
【図６】本発明のノード装置を用いた制御機器の特定動作を示すゼネラルフローチャート（その２）である。
【図７】アプリケーション初期処理の詳細を示すフローチャートである。
【図８】ノード範囲指定画面の表示例を示す説明図である。
【図９】ミドルウェア初期処理の詳細を示すフローチャートである。
【図１０】ＵＤＰ一斉同報パケットの作成例を示す説明図である。
【図１１】制御装置のＩＰアドレス取得処理の詳細を示すフローチャートである。
【図１２】通信ミドルウェアのＩＰアドレス特定処理の詳細を示すフローチャートである。
【図１３】通信ミドルウェアのネットワーク、ノードアドレス特定処理の詳細を示すフローチャートである。
【図１４】制御機器のルーチングエラー返送処理の詳細を示すフローチャートである。
【図１５】ルーチングエラー時のレスポンスコマンドの作成例を示す説明図である。
【図１６】通信ミドルウェアの機種情報特定処理の詳細を示すフローチャートである。
【図１７】制御機器の機種情報取得処理の詳細を示すフローチャートである。
【図１８】通信ミドルウェアの通信処理の詳細を示すフローチャートである。
【図１９】制御機器リストの生成処理の概要を示す説明図である。
【符号の説明】
【００８３】
１１        ＰＣ
１１−１    アプリケーション
１１−２    通信ミドルウェア
１２        ＰＬＣ
１２−１    ＰＬＣ
１２−ｎ    ＰＬＣ
１３        Ｅｔｈｅｒｎｅｔ（登録商標）
１０１      演算部（ＣＰＵ）
１０２      ＲＯＭ／ＨＤＤ
１０３      ＲＡＭ
１０４      通信制御部
３００      ＣＰＵユニット
３０１      ＲＯＭ
３０２      マイクロプロセッサ（ＭＰＵ）
３０３      ユーザプログラムメモリ（ＵＭ）
３０４      ワークＲＡＭ
３０５      データ格納用不揮発性メモリ
３０６      アプリケーションスペシフィックＩＣ（ＡＳＩＣ）
３０７      入出力メモリ（ＩＯＭ）
４００      Ｅｔｈｅｒｎｅｔ（登録商標）ユニット
４０１      通信インターフェイス
４０２      マイクロプロセッサ（ＭＰＵ）
４０３      システムメモリ
８００      ノード番号範囲指定画面
８０１      開始ノード番号
８０２      終了ノード番号
１００１    パケット種別
１００２    送信先ネットワーク番号
１００３    送信先ノード番号
１００４    送信先ユニット番号
１００５    送信元ネットワーク番号
１００６    送信元ノード番号
１００７    送信元ユニット番号
１００８    ＩＤ
１００９    コマンド番号
１００１’  パケット種別
１００２’  送信先ネットワーク番号
１００３’  送信先ノード番号
１００４’  送信先ユニット番号
１００５’  送信元ネットワーク番号
１００６’  送信元ノード番号
１００７’  送信元ユニット番号
１００８’  ＩＤ
１００９’  コマンド番号
１５０１    パケット種別
１５０２    送信先ネットワーク番号
１５０３    送信先ノード番号
１５０４    送信先ユニット番号
１５０５    送信元ネットワーク番号
１５０６    送信元ノード番号
１５０７    送信元ユニット番号
１５０８    ＩＤ
１５０９    コマンド番号
１５１０    エラーコード
１５１１    ネットワーク番号
１５１２    ノード番号
【図１】
2007129667.tif 000003
【図２】
2007129667.tif 000004
【図３】
2007129667.tif 000005
【図４】
2007129667.tif 000006
【図５】
2007129667.tif 000007
【図６】
2007129667.tif 000008
【図７】
2007129667.tif 000009
【図８】
2007129667.tif 000010
【図９】
2007129667.tif 000011
【図１０】
2007129667.tif 000012
【図１１】
2007129667.tif 000013
【図１２】
2007129667.tif 000014
【図１３】
2007129667.tif 000015
【図１４】
2007129667.tif 000016
【図１５】
2007129667.tif 000017
【図１６】
2007129667.tif 000018
【図１７】
2007129667.tif 000019
【図１８】
2007129667.tif 000020
【図１９】
2007129667.tif 000021