(57)【特許請求の範囲】
【請求項１】
２台のプログラマブルコントローラが、汎用ネットワークを介して接続されるプログラマブルコントローラシステムで使用されるプログラマブルコントローラにおいて、
他のプログラマブルコントローラと前記汎用ネットワークを介して接続される通信部と、
電源がオンにされた場合に、自プログラマブルコントローラに設定されている第１ネットワーク設定情報と、前記自プログラマブルコントローラのシステム構成を示す第１システム構成情報と、を前記通信部を介して前記他のプログラマブルコントローラに送信する初期設定処理部と、
前記第１ネットワーク設定情報と、前記他のプログラマブルコントローラから送られてくる第２ネットワーク設定情報と、が同一であるかを判定する設定内容判定部と、
前記第１ネットワーク設定情報と前記第２ネットワーク設定情報とが同一である場合に、前記第１システム構成情報と、前記他のプログラマブルコントローラから送られてくる前記他のプログラマブルコントローラのシステム構成を示す第２システム構成情報と、を比較し、前記他のプログラマブルコントローラと二重化システムを構築するのに必要な構成が一致するかを判定するシステム構成判定部と、
前記構成が一致する場合に、前記自プログラマブルコントローラが制御系であるか待機系であるかを決定し、前記制御系であると決定した場合には前記第１ネットワーク設定情報をそのままとし、前記待機系であると決定した場合には、前記第１ネットワーク設定情報の内容を変更する制御系−待機系設定部と、
を備えることを特徴とするプログラマブルコントローラ。
【請求項２】
前記初期設定処理部は、前記自プログラマブルコントローラが保持し、数値で表される第１製品固有情報を、前記第１ネットワーク設定情報と前記第１システム構成情報とともに送信し、
前記制御系−待機系設定部は、前記第１製品固有情報と、前記他のプログラマブルコントローラが保持し、数値で表される第２製品固有情報と、を比較し、前記第１製品固有情報の前記第２製品固有情報に対する大小によって、前記制御系または前記待機系の決定を行うことを特徴とする請求項１に記載のプログラマブルコントローラ。
【請求項３】
前記第１製品固有情報と前記第２製品固有情報は、前記プログラマブルコントローラに対して付された固有の整数であることを特徴とする請求項２に記載のプログラマブルコントローラ。
【請求項４】
前記第１製品固有情報と前記第２製品固有情報は、前記プログラマブルコントローラに対して一意に設定されるネットワーク固定アドレスであることを特徴とする請求項２に記載のプログラマブルコントローラ。
【請求項５】
前記自プログラマブルコントローラは、ベースユニット上に、ＣＰＵユニットおよびネットワークユニットを含むユニットが装着される構成を有し、
前記第１システム構成情報と前記第２システム構成情報は、各前記プログラマブルコントローラでの各前記ユニットについて、前記ベースユニット上での配置位置と、前記ユニットの種類と、を含むユニット情報を有することを特徴とする請求項１に記載のプログラマブルコントローラ。
【請求項６】
前記システム構成判定部は、前記第１システム構成情報中と前記第２システム構成情報中の前記ＣＰＵユニットと前記ネットワークユニットの前記ユニット情報を用いて判定を行うことを特徴とする請求項５に記載のプログラマブルコントローラ。
【請求項７】
前記第１システム構成情報と前記第２システム構成情報は、各前記ユニットについて、前記二重化システムに必要な構成であるか否かを示す二重化要否情報をさらに有し、
前記システム構成判定部は、前記二重化要否情報が前記二重化システムに必要な構成である前記ユニット情報を用いて判定を行うことを特徴とする請求項５に記載のプログラマブルコントローラ。
【請求項８】
前記自プログラマブルコントローラでの動作状態と、前記他のプログラマブルコントローラの動作状態と、を監視する状態監視部と、
前記状態監視部による監視結果に基づいて、前記二重化システムでの前記制御系と前記待機系との動作状態の制御を行う異常発生時処理部と、
をさらに備えることを特徴とする請求項１に記載のプログラマブルコントローラ。
【請求項９】
各前記プログラマブルコントローラは、ベースユニット上に、ＣＰＵユニットおよびネットワークユニットを含むユニットが装着される構成を有し、
前記状態監視部は、
前記ＣＰＵユニットに設けられる前記ネットワークユニットの動作状態を監視するネットワークユニット状態監視部と、
前記ネットワークユニットに設けられる前記ＣＰＵユニットの動作状態を監視するＣＰＵユニット状態監視部と、
前記ネットワークユニットに設けられる前記他のプログラマブルコントローラの前記ネットワークユニットの動作状態を監視する相手系ネットワーク状態監視部と、
を備え、
前記ネットワークユニット状態監視部と前記ＣＰＵユニット状態監視部は、前記ＣＰＵユニットで実行されるサイクリック処理の中で状態監視を行い、
前記相手系ネットワーク状態監視部は、前記サイクリック処理とは独立して前記汎用ネットワークを介して状態監視を行うことを特徴とする請求項８に記載のプログラマブルコントローラ。
【請求項１０】
前記他のプログラマブルコントローラとの間で、前記汎用ネットワークを介してデータの同期を行う等値化処理部をさらに備えることを特徴とする請求項８に記載のプログラマブルコントローラ。
【請求項１１】
前記設定内容判定部は、前記第１ネットワーク設定情報と前記第２ネットワーク設定情報とが同一でない場合に、前記他のプログラマブルコントローラとは前記二重化システムを構築しないと判定することを特徴とする請求項１に記載のプログラマブルコントローラ。
【請求項１２】
前記システム構成判定部は、前記第１システム構成情報と前記第２システム構成情報の前記二重化システムを構築するのに必要な構成が一致しない場合に、エラーを通知することを特徴とする請求項１に記載のプログラマブルコントローラ。
【請求項１３】
２台のプログラマブルコントローラが、汎用ネットワークを介して接続されるプログラマブルコントローラシステムにおいて、
それぞれの前記プログラマブルコントローラは、
他のプログラマブルコントローラと前記汎用ネットワークを介して接続される通信部と、
電源がオンにされた場合に、自プログラマブルコントローラに設定されている第１ネットワーク設定情報と、前記自プログラマブルコントローラのシステム構成を示す第１システム構成情報と、を前記通信部を介して前記他のプログラマブルコントローラに送信する初期設定処理部と、
前記第１ネットワーク設定情報と、前記他のプログラマブルコントローラから送られてくる第２ネットワーク設定情報と、が同一であるかを判定する設定内容判定部と、
前記第１ネットワーク設定情報と前記第２ネットワーク設定情報とが同一である場合に、前記第１システム構成情報と、前記他のプログラマブルコントローラから送られてくる前記他のプログラマブルコントローラのシステム構成を示す第２システム構成情報と、を比較し、前記他のプログラマブルコントローラと二重化システムを構築するのに必要な構成が一致するかを判定するシステム構成判定部と、
前記構成が一致する場合に、前記自プログラマブルコントローラが制御系であるか待機系であるかを決定し、前記制御系であると決定した場合には前記第１ネットワーク設定情報をそのままとし、前記待機系であると決定した場合には、前記第１ネットワーク設定情報の内容を変更する制御系−待機系設定部と、
を備えることを特徴とするプログラマブルコントローラシステム。
【発明の詳細な説明】
【技術分野】
【０００１】  この発明は、プログラマブルコントローラおよびプログラマブルコントローラシステムに関するものである。
【背景技術】
【０００２】  プログラマブルコントローラを有する制御システムで二重化システムを構築する場合には、専用のデータ等値化ユニットと、２つの系のデータ等値化ユニット間を接続し、それぞれの系の死活状態を監視するための信号線を持つ専用ケーブルと、を用意していた（たとえば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５０００６２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】  特許文献１に記載の方法で二重化システムを構築するためには、通信用に敷設するネットワークとは別の専用ケーブルを用意することとなり、保守部品として確保する種類が増えてしまうという問題点があった。【０００５】  また、二重化システム構築時には、制御系としてふるまう側のシステムに対する設定と、待機系としてふるまう側のシステムに対する設定と、は、待機系と制御系との間の切替えを行う系切替え時にそれまでの処理を継続するために同一にする必要がある。しかし、ネットワーク設定に関して同一の設定にした場合には、通信に必要なアドレスなどの設定が衝突してしまい、通信を行うことができなくなる。そのため、二重化システム構築時は、制御系で動作する場合のアドレスと、待機系で動作する場合のアドレスの両方を設定し、制御系で動作するか、待機系で動作するか決定した後に、決定した系の設定を適用する処理を行わなければならなかった。そして、このような二重化システムの設定を行うＣＰＵ（Central  Processing  Unit）ユニットについては従来提案されていなかった。【０００６】  さらに、汎用ネットワークを二重化システムに適用するためには、二重化システムを構成する相互のシステムの死活状態を監視する仕組みが必要である。しかし、汎用ネットワークで二重化システムを構築する場合の相互のシステムの死活状態を監視する仕組みについては従来提案されていなかった。【０００７】  この発明は上記に鑑みてなされたもので、２台のプログラマブルコントローラ間がネットワークで接続された場合に、通常のシステムとして使用するのか、または二重化システムとして使用するのかを判定し、判定結果に基づいてシステムの設定を行うことができるプログラマブルコントローラおよびプログラマブルコントローラシステムを得ることを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、この発明にかかるプログラマブルコントローラは、２台のプログラマブルコントローラが、汎用ネットワークを介して接続されるプログラマブルコントローラシステムで使用されるプログラマブルコントローラにおいて、他のプログラマブルコントローラと前記汎用ネットワークを介して接続される通信部と、電源がオンにされた場合に、自プログラマブルコントローラに設定されている第１ネットワーク設定情報と、前記自プログラマブルコントローラのシステム構成を示す第１システム構成情報と、を前記通信部を介して前記他のプログラマブルコントローラに送信する初期設定処理部と、前記第１ネットワーク設定情報と、前記他のプログラマブルコントローラから送られてくる第２ネットワーク設定情報と、が同一であるかを判定する設定内容判定部と、前記第１ネットワーク設定情報と前記第２ネットワーク設定情報とが同一である場合に、前記第１システム構成情報と、前記他のプログラマブルコントローラから送られてくる前記他のプログラマブルコントローラのシステム構成を示す第２システム構成情報と、を比較し、前記他のプログラマブルコントローラと二重化システムを構築するのに必要な構成が一致するかを判定するシステム構成判定部と、前記構成が一致する場合に、前記自プログラマブルコントローラが制御系であるか待機系であるかを決定し、前記制御系であると決定した場合には前記第１ネットワーク設定情報をそのままとし、前記待機系であると決定した場合には、前記第１ネットワーク設定情報の内容を変更する制御系−待機系設定部と、を備えることを特徴とする。
【発明の効果】
【０００９】  この発明によれば、２つのプログラマブルコントローラが互いに送信するネットワーク設定情報を用いて、２つのネットワーク設定情報が衝突したかしないかで二重化システムとして機能させるか否かを設定するようにした。また、ネットワーク設定情報が衝突した場合には、２つのプログラマブルコントローラのシステム構成情報を用いて、二重化システムを構築するのにシステム構成が同一であるかを判定し、さらに同一である場合には制御系として機能させるのか、待機系として機能させるのか、を決定し、それに基づいてネットワーク設定情報を変更するようにした。これによって、二重化システムの構築において、制御系／待機系の設定を人手によることなく自動的に決定し、その結果に基づいてネットワーク設定を行うことができるという効果を有する。
【図面の簡単な説明】
【００１０】
【図１】図１は、実施の形態１による二重化システムの構成の一例を模式的に示す図である。
【図２】図２は、実施の形態１によるＰＬＣの機能構成の一例を模式的に示すブロック図である。
【図３】図３は、ネットワーク設定情報の一例を示す図である。
【図４】図４は、システム構成情報の一例を示す図である。
【図５】図５は、製品固有情報の一例を示す図である。
【図６】図６は、システム構成情報の他の例を示す図である。
【図７】図７は、実施の形態１による二重化システムの構築処理の手順の一例を示すフローチャートである。
【図８】図８は、実施の形態１による二重化システムの構成の他の例を模式的に示す図である。
【図９】図９は、ネットワーク設定情報の他の例を示す図である。
【図１０】図１０は、実施の形態２によるＰＬＣの機能構成の一例を模式的に示すブロック図である。
【図１１】図１１は、実施の形態２による二重化システムでの状態監視部のさらに詳細な構成を模式的に示すブロック図である。
【図１２】図１２は、ＰＬＣの動作の概略を示すフローチャートである。
【図１３】図１３は、異常発生時の二重化システムとしての動作を示す図である。
【発明を実施するための形態】
【００１１】  以下に添付図面を参照して、この発明の実施の形態にかかるプログラマブルコントローラおよびプログラマブルコントローラシステムを詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。
【００１２】実施の形態１．  図１は、実施の形態１による二重化システムの構成の一例を模式的に示す図である。二重化システムは、同じネットワーク設定およびシステム構成を有する２つのプログラマブルコントローラ（以下、ＰＬＣという）１０Ａ，１０Ｂがネットワーク（通信回線）２１を介して接続される構成を有する。ここで、ＰＬＣ１０Ａは制御系ＰＬＣ（以下、制御系という）として機能し、ＰＬＣ１０Ｂは待機系ＰＬＣ（以下、待機系という）として機能するものとする。また、ネットワーク２１として、汎用ネットワークを用いることができる。
【００１３】  ＰＬＣ１０Ａは、各ユニットに電源を供給する電源ユニット１２Ａと、ＰＬＣ１０Ａでの入出力制御や演算処理を行うＣＰＵユニット１３Ａと、他のＰＬＣ１０Ｂなどとネットワーク２１を介して通信を行うネットワークユニット１４Ａと、制御対象からの制御結果を受信する入力ユニットおよびＣＰＵユニット１３Ａからの指示によって制御対象に出力を行う出力ユニットなどの他のユニット１５Ａ，１６Ａとが、たとえばバスを内蔵するベースユニット１１Ａを介して接続される。
【００１４】  ＰＬＣ１０Ｂも、同様に、電源ユニット１２Ｂと、ＣＰＵユニット１３Ｂと、ネットワークユニット１４Ｂと、他のユニット１５Ｂ，１６Ｂとがベースユニット１１Ｂに装着される構成を有している。なお、二重化システムでは、制御系のシステム構成と待機系のシステム構成とが同じになる。すなわち、待機系となるＰＬＣ１０Ｂのベースユニット１１Ｂに装着されるユニットは、制御系となるＰＬＣ１０Ａのベースユニット１１Ａに装着されるユニットと同一となる。そして、制御系のネットワークユニット１４Ａと待機系のネットワークユニット１４Ｂとがネットワーク（二重化システム用ネットワーク）２１を介して接続される。
【００１５】  なお、図示していないが、制御系の入力ユニットと待機系の入力ユニットは、同じ機器にケーブルを介して接続され、制御系の出力ユニットと待機系の出力ユニットは、同じ機器にケーブルを介して接続されているものとする。
【００１６】  二重化システムでは、システム構築時に２つの系（ＰＬＣ１０Ａ，ＰＬＣ１０Ｂ）のネットワーク設定が同じであり、二重化システムのネットワーク設定時に待機系のネットワーク設定が制御系のネットワーク設定と異なるように変更される。この実施の形態では、２つの系がネットワーク２１に接続されると、それぞれのシステム構成とネットワーク設定とが同じである場合に、二重化システムを構築する設定を行うＰＬＣ１０Ａ，１０Ｂについて説明する。
【００１７】  図２は、実施の形態１によるＰＬＣの機能構成の一例を模式的に示すブロック図である。なお、この図２では、二重化システムの構築判定を行う際に関係する処理部について示している。ＰＬＣ１０は、通信部１０１と、ネットワーク設定情報記憶部１０２と、システム構成情報記憶部１０３と、製品固有情報記憶部１０４と、初期設定処理部１０５と、設定内容判定部１０６と、システム構成判定部１０７と、制御系−待機系設定部１０８と、等値化処理部１０９と、を有する。
【００１８】  通信部１０１は、他のＰＬＣ１０との間で、所定のプロトコルにしたがって通信を行う。図１で説明したように、この実施の形態では、ネットワークユニット１４Ａ，１４Ｂ間が汎用ネットワークで接続される。そのため、ネットワークユニット１４Ａ，１４Ｂ間においては、使用される汎用ネットワークに対応するプロトコルにしたがって、通信が行われる。通信部１０１は、図１のネットワークユニット１４Ａ，１４Ｂが有する機能となる。
【００１９】  ネットワーク設定情報記憶部１０２は、ＰＬＣ１０に対して他のＰＬＣ１０などと通信が可能となるように設定されたネットワーク設定情報を記憶する。ネットワーク設定情報は、同一のネットワークで本来異なる値を設定しなければ通信を行うことができない値であり、たとえばネットワークユニット１４Ａ，１４Ｂに設定されたＩＰ（Internet  Protocol）アドレス、または図示しない制御ネットワークに接続されるネットワークユニットに設定された局番などを例示することができる。ネットワーク設定情報記憶部１０２は、たとえば図１のネットワークユニット１４Ａ，１４Ｂが有する機能となる。
【００２０】  図３は、ネットワーク設定情報の一例を示す図である。ここでは、図１の二重化システムにおける各ＰＬＣ１０Ａ，１０Ｂのネットワーク設定情報の一例を示している。たとえば、図３（ａ）は、ＰＬＣ１０Ａのネットワーク設定情報を示し、図３（ｂ）は、ＰＬＣ１０Ｂのネットワーク設定情報を示している。ここでは、ネットワーク設定情報として、ネットワークユニット１４Ａ，１４Ｂに設定されたＩＰアドレスが格納されているものとする。なお、二重化システムを構成する２つのＰＬＣ１０Ａ，１０Ｂ間では、ネットワーク設定情報は、同一となるように二重化システムを構築するユーザによって設定される。
【００２１】  システム構成情報記憶部１０３は、ＰＬＣ１０における各ユニットの接続状態などのシステム構成を示すシステム構成情報を記憶する。システム構成情報は、ベースユニット１１Ａ，１１Ｂの各スロットの位置（スロット番号）に、装着されているユニットの種類、型名を識別する情報を対応付けたものである。システム構成情報記憶部１０３は、たとえば図１のＣＰＵユニット１３Ａ，１３Ｂが有する機能としてもよいし、ネットワークユニット１４Ａ，１４Ｂが有する機能としてもよいし、他のユニットが有する機能としてもよい。
【００２２】  図４は、システム構成情報の一例を示す図である。ここでも、図１の二重化システムにおける各ＰＬＣ１０Ａ，１０Ｂのシステム構成情報の一例を示している。たとえば、図４（ａ）は、ＰＬＣ１０Ａのシステム構成情報を示し、図４（ｂ）は、ＰＬＣ１０Ｂのシステム構成情報を示している。図４に示されるように、システム構成情報として、ベースユニット１１Ａ，１１Ｂの各スロットに装着されているユニットの製品型名が登録されている。また、ここでは、２つのＰＬＣ１０Ａ，１０Ｂのシステム構成情報が等しいものとする。
【００２３】  製品固有情報記憶部１０４は、ＰＬＣ１０に固有の製品固有情報を記憶する。製品固有情報として、たとえば各ユニットに対して製造品ごとに付加される番号である製造情報、またはネットワークユニット１４Ａ，１４Ｂの場合にはＭＡＣ（Media  Access  Control）アドレスなどのネットワーク固有番号を例示することができる。なお、製品固有情報としては、整数（１６進数を含む）のような大小を決定することができる情報とする。
【００２４】  図５は、製品固有情報の一例を示す図である。ここでも、図１の二重化システムにおける各ＰＬＣ１０Ａ，１０Ｂの製品固有情報の一例を示している。たとえば、図５（ａ）は、ＰＬＣ１０Ａの製品固有情報を示し、図５（ｂ）は、ＰＬＣ１０Ｂの製品固有情報を示している。図５に示されるように、製品固有情報として、ＣＰＵユニット１３Ａ，１３Ｂまたはネットワークユニット１４Ａ，１４Ｂを一意に識別する製造情報、ネットワークユニット１４Ａ，１４Ｂに対して付されたネットワーク固有アドレスが含まれている。
【００２５】  初期設定処理部１０５は、ＰＬＣ１０の電源がオンにされた場合に、ネットワーク設定情報記憶部１０２中のネットワーク設定情報と、システム構成情報記憶部１０３中のシステム構成情報と、製品固有情報記憶部１０４中の製品固有情報と、を他のＰＬＣ１０に通信部１０１を介して送信する。たとえば、ネットワーク設定情報をブロードキャストで送信する。このようにブロードキャストで送信することで、他のＰＬＣ１０のネットワーク設定アドレスが自ＰＬＣ１０のものと同じであったとしても、ネットワーク設定情報を相手側に送信することが可能になる。初期設定処理部１０５は、図１のＣＰＵユニット１３Ａ，１３Ｂに設けられてもよいし、ネットワークユニット１４Ａ，１４Ｂに設けられてもよい。
【００２６】  設定内容判定部１０６は、通信部１０１で受信した他のＰＬＣ１０のネットワーク設定情報と自ＰＬＣ１０のネットワーク設定情報とを比較し、ネットワーク設定情報が衝突したか（同一であるか）を判定する。ネットワーク設定情報が同一でない場合には、ネットワーク２１で接続された２つのＰＬＣ１０は、二重化システムを構成するものではなく、通常のＰＬＣ１０として動作させる。また、ネットワーク設定情報が同一の場合には、他のＰＬＣ１０と二重化システムを構築するものと判定する。設定内容判定部１０６は、図１のＣＰＵユニット１３Ａ，１３Ｂに設けられてもよいし、ネットワークユニット１４Ａ，１４Ｂに設けられてもよい。
【００２７】  システム構成判定部１０７は、設定内容判定部１０６によって自ＰＬＣ１０が二重化システムを構築するものであると判定された場合に、通信部１０１で受信した他のＰＬＣ１０のシステム構成情報と自ＰＬＣ１０のシステム構成情報とを比較し、自ＰＬＣ１０と衝突した他のＰＬＣ１０のシステム構成が同一であるかを判定する。そして、システム構成が同一である場合には、二重化システムとして動作させるものと判定し、制御系−待機系設定部１０８に二重化システム構築の指示を与える。また、システム構成が同一でない場合には、エラーを通知する。エラー通知の内容としては、たとえば自ＰＬＣ１０と他のＰＬＣ１０のシステム構成を再度確認する旨のメッセージなどを例示することができる。システム構成判定部１０７は、図１のＣＰＵユニット１３Ａ，１３Ｂに設けられる。
【００２８】  二重化システムを構築する場合には、たとえば図１の２つのＰＬＣ１０Ａ，１０Ｂを構成するＣＰＵユニット１３Ａ，１３Ｂおよびネットワークユニット１４Ａ，１４Ａを含むユニットは通常同一の製品によって構築され、またこれらの各ユニットが配置されるベースユニット１１Ａ，１１Ｂ上の位置（スロット位置）も同一となる。そのため、２つのＰＬＣ１０Ａ，１０Ｂのシステム構成情報を比較することで、二重化システムとして動作させるものであるか否かを判断することが可能となる。
【００２９】  ただし、ベースユニット１１Ａ，１１Ｂに装着されるユニット（入力ユニットまたは出力ユニットなど）には、制御に使用されないものも存在する。そのため、２つのＰＬＣ１０Ａ，１０Ｂの構成が二重化システムを構築するものかどうかを判定するには、二重化システムを構築するのに必要なＣＰＵユニット１３Ａ，１３Ｂおよびネットワークユニット１４Ａ，１４Ｂを比較し、これらが同一である場合に、二重化システムとして動作させるものであるか否かを判断することも可能である。なお、ベースユニット１１Ａ，１１Ｂも二重化システムを構築するのに必要なユニットとして加えてもよい。
【００３０】  また、システム構成情報に、二重化システムの構成に必要か否かを示す情報を付加してもよい。図６は、システム構成情報の他の例を示す図である。ここでも、図１の二重化システムにおける各ＰＬＣ１０Ａ，１０Ｂのネットワーク設定情報の一例を示している。たとえば、図６（ａ）は、ＰＬＣ１０Ａのネットワーク設定情報を示し、図６（ｂ）は、ＰＬＣ１０Ｂのネットワーク設定情報を示している。図６に示されるように、システム構成情報には、ベースユニット１１Ａ，１１Ｂの種類を識別する製品型名、ベースユニット１１Ａ，１１Ｂの各スロットに装着されているユニットの種類を識別する製品型名と、二重化に必要か否かを示す二重化要否情報が含まれる。図では、二重化要否情報が〇で示されるものが二重化に必要なユニットであり、×が二重化に必要でないユニットであることを示している。このようなシステム構成情報で、２つのＰＬＣ１０Ａ，１０Ｂを二重化システムとして動作させるのか否かを判断する場合には、二重化要否情報が必要であることを示すものについてのみ比較を行えばよい。
【００３１】  制御系−待機系設定部１０８は、システム構成判定部１０７で二重化システムとして動作させるものであると判定された場合に、自ＰＬＣ１０の製品固有情報を他のＰＬＣ１０の製品固有情報とを用いて、自ＰＬＣ１０が制御系となるのか待機系となるのかを決定する。そして、自ＰＬＣ１０が制御系となる場合には、ネットワーク設定情報をそのまま使用し、待機系となる場合には、ネットワーク設定情報を変更する。
【００３２】  制御系−待機系設定部１０８は、大小比較が可能な２つの製品固有情報を用いて、たとえば自ＰＬＣ１０の製品固有情報の方が大きい場合には制御系と決定し、小さい場合には待機系と決定する。なお、乱数発生器によって生成された乱数を製品固有情報として相互に通知し、この乱数の大小によって制御系／待機系を決定してもよい。また、これは一例であり、制御系／待機系の決定に際し、自ＰＬＣ１０の製品固有情報が他のＰＬＣ１０のものよりも小さい場合に制御系と決定し、大きい場合に待機系と決定してもよい。
【００３３】  また、自ＰＬＣ１０が待機系であると決定された場合には、ネットワーク設定情報中のネットワーク設定アドレスに所定の数を加算し、新たなネットワーク設定アドレスを設定する。制御系−待機系設定部１０８は、図１のＣＰＵユニット１３Ａ，１３Ｂに設けられる。
【００３４】  等値化処理部１０９は、自ＰＬＣが制御系である場合に、制御系で使用されるデータを、待機系にも略リアルタイムで送信する等値化処理を行う。等値化処理部１０９は、図１のネットワーク２１（汎用ネットワーク）の通信タイミングに合わせてデータの同期を行う。等値化処理部１０９は、図１のネットワークユニット１４Ａ，１４Ｂに設けられる。
【００３５】  つぎに、このような構成におけるＰＬＣ１０での二重化システム構築処理について説明する。図７は、実施の形態１による二重化システムの構築処理の手順の一例を示すフローチャートである。なお、以下の説明では、図１のＰＬＣ１０Ａでの処理を例として挙げて説明する。基本的には、ＰＬＣ１０Ｂでの処理もＰＬＣ１０Ａでの処理と同様である。
【００３６】  まず、ネットワーク２１で接続された２つのＰＬＣ１０Ａ，１０Ｂの電源がオンにされると、ＰＬＣ１０Ａの初期設定処理部１０５は、ネットワーク設定情報、システム構成情報および製品固有情報を通信部１０１を介してたとえばブロードキャストで送信する。そして、通信部１０１を介して他のＰＬＣ１０Ｂからネットワーク設定情報、システム構成情報および製品固有情報を受信する（ステップＳ１１）。
【００３７】  ついで、設定内容判定部１０６は、受信したネットワーク設定情報と、ネットワーク設定情報記憶部１０２中のネットワーク設定情報とを比較し、両者の内容が衝突するか（同一であるか）を判定する（ステップＳ１２）。２つのネットワーク設定情報が衝突しない場合（ステップＳ１２でＮｏの場合）には、設定内容判定部１０６は、２つのＰＬＣ１０Ａ，１０Ｂは、二重化システムとして構成されるものではなく、通常のＰＬＣシステムとして動作させ（ステップＳ１３）、処理が終了する。
【００３８】  一方、２つのネットワーク設定情報が衝突する場合（ステップＳ１２でＹｅｓの場合）には、システム構成判定部１０７は、衝突した２つのＰＬＣ１０Ａ，１０Ｂのシステム構成が同一であるかを判定する（ステップＳ１４）。ここでは、システム構成判定部１０７は、システム構成情報記憶部１０３に記憶されている自ＰＬＣ１０Ａのシステム構成情報とステップＳ１１で受信した他のＰＬＣ１０Ｂのシステム構成情報とを比較する。また、この比較に当たって、上記したように、システム構成情報中のベースユニット１１Ａ，１１Ｂ、ＣＰＵユニット１３Ａ，１３Ｂおよびネットワークユニット１４Ａ，１４Ｂの種類で比較してもよいし、システム構成情報のすべての内容で比較してもよいし、図６のように二重化要否情報が要を示すユニットのみで比較してもよい。
【００３９】  ２つのＰＬＣ１０Ａ，１０Ｂのシステム構成が同一ではない場合（ステップＳ１４でＮｏの場合）には、システム構成判定部１０７は、エラー通知を行い（ステップＳ１５）、処理を終了する。このエラー通知では、たとえば、二重化システムを構築すべきであるのに、２つのＰＬＣ１０Ａ，１０Ｂのシステム構成が同一でない旨の通知を行う。
【００４０】  一方、２つのＰＬＣ１０Ａ，１０Ｂのシステム構成が同一である場合（ステップＳ１４でＹｅｓの場合）には、制御系−待機系設定部１０８は、製品固有情報を用いて、自ＰＬＣ１０Ａが制御系であるのか、待機系であるのかを決定する処理を行う（ステップＳ１６）。
【００４１】
制御系／待機系決定処理として、たとえば、自ＰＬＣ１０ＡのＣＰＵユニット１３Ａの製品情報と他のＰＬＣ１０ＢのＣＰＵユニット１３Ｂの製品情報とを比較し、自ＰＬＣ１０ＡのＣＰＵユニット１３Ａの製品情報の方が大きい場合には自ＰＬＣ１０Ａを制御系と決定し、自ＰＬＣ１０ＡのＣＰＵユニット１３Ａの製品情報の方が小さい場合には自ＰＬＣ１０Ａを待機系と決定する。制御系／待機系を決定する際の製品情報の大小関係を逆にしてもよい。また、ＣＰＵユニット１３Ａ，１３Ｂの製品情報ではなく、ネットワークユニット１４Ａ，１４Ｂの製品情報を用いてもよいし、ＭＡＣアドレスなどのネットワーク固有アドレスを用いてもよい。
【００４２】  また、自ＰＬＣ１０Ａを制御系に設定する際の優先度を製品固有情報に含ませて、この優先度を比較することによって制御系／待機系を決定してもよい。たとえば、制御系に設定する際の優先度として、ＣＰＵユニット１３Ａ，１３Ｂまたはネットワークユニット１４Ａ，１４Ｂなどのバージョン情報を用いることができる。同じ種類の製品でもバージョンが新しければ機能が改善なされており、古いバージョンに比較して不具合が改善されていることが多い。そのため、バージョンが新しい方に高い優先度を設定することで、制御系に、機能改善がなされ、不具合がより少ないＰＬＣ１０を用いることが可能になる。このような優先度は、システム設計者によって任意に設定することができる。そして、このような優先度を製品固有情報に含ませることで、システム設計者が好むＰＬＣ１０を制御系として使用することができるようになる。
【００４３】  その後、制御系−待機系設定部１０８は、ステップＳ１６で決定された結果に基づいて、ＣＰＵユニット１３Ａに対して制御系または待機系を設定する（ステップＳ１７）。また、制御系−待機系設定部１０８は、自ＰＬＣ１０Ａが制御系である場合（ステップＳ１８でＹｅｓの場合）には、設定されたネットワーク設定アドレスをそのまま使用する（ステップＳ１９）。また、制御系−待機系設定部１０８は、自ＰＬＣ１０Ａが待機系である場合（ステップＳ１８でＮｏの場合）には、設定されたネットワーク設定アドレスを変更する（ステップＳ２０）。たとえば、設定されたネットワーク設定アドレスに「１」を加算したものをネットワーク設定アドレスとして用いる。これによって、自ＰＬＣ１０Ａと他のＰＬＣ１０Ｂとの間でネットワーク設定アドレスの衝突が回避され、２つのＰＬＣ１０Ａ，１０Ｂ間で通信を行うことが可能になる。
【００４４】  ステップＳ１９またはＳ２０の後、ＰＬＣ１０Ａはネットワーク２１を介して接続された他のＰＬＣ１０Ｂと通信を開始する（ステップＳ２１）。通信が開始されると、たとえば等値化処理部１０９によって、通信を開始したネットワーク２１を使用して、二重化必要なデータ等値化処理が行われる。以上で、ＰＬＣ１０での二重化システム構築処理が終了する。
【００４５】  なお、制御系の入力ユニットと待機系の入力ユニットが同じ機器にケーブルを介して接続されている場合には、機器からの情報は、制御系と待機系の入力ユニットに送られる。また、制御系の出力ユニットと待機系の出力ユニットが同じ機器にケーブルを介して接続されている場合には、制御系の出力ユニットのみ機器に情報を出力し、待機系の出力ユニットは機器に対して情報を出力しない。このようにして、制御系と待機系との間でデータの同一性が保たれることになる。
【００４６】  上述した説明では、図１に示される形の二重化システムの場合を例に挙げた。しかし、各ＰＬＣにさらに制御ネットワークが接続される構成の二重化システムの場合もある。図８は、実施の形態１による二重化システムの構成の他の例を模式的に示す図である。図８では、ベースユニット１１Ａに電源ユニット１２Ａ、ＣＰＵユニット１３Ａ、ネットワークユニット１４Ａ、ネットワークユニット１７Ａおよび他のユニット１６Ａが装着されたＰＬＣ１０Ａと、このＰＬＣ１０Ａと同一の構成を有するＰＬＣ１０Ｂと、で二重化システムが構築されている。２つのＰＬＣ１０Ａ，１０Ｂのネットワークユニット１４Ａ，１４Ｂ間は、二重化システム用ネットワーク（通信回線）２１で接続されている。また、２つのＰＬＣ１０Ａ，１０Ｂのネットワークユニット１７Ａ，１７Ｂには制御ネットワーク２２が接続されている。制御ネットワーク２２には、複数のネットワークリモート局３１Ａ〜３１Ｃが接続されている。
【００４７】  このような二重化システムにおけるネットワーク設定情報は、二重化システム用ネットワーク２１で接続されるネットワークユニット１４Ａ，１４Ｂの第１ネットワーク設定アドレスと、制御ネットワーク２２で接続されるネットワークユニット１７Ａ，１７Ｂの第２ネットワーク設定アドレスと、を含む。図９は、ネットワーク設定情報の他の例を示す図である。このネットワーク設定情報は、図８の二重化システムの構成の場合の一例を示している。また、図９（ａ）は、ＰＬＣ１０Ａのネットワーク設定情報であり、図９（ｂ）は、ＰＬＣ１０Ｂのネットワーク設定情報である。
【００４８】  図９に示されるように、二重化システム用ネットワーク２１で接続されるネットワークユニット１４Ａ，１４Ｂのネットワーク設定アドレスは、図３と同様であり、たとえばＩＰアドレスが設定されることになる。また、制御ネットワーク２２に接続されるネットワークユニット１７Ａ，１７Ｂのネットワーク設定アドレスは局番となっている。この例では、２つの局番１、局番２が設定されている。たとえば局番１は、自ＰＬＣ１０Ａ，１０Ｂが制御系の場合に使用される局番であり、局番２は、自ＰＬＣ１０Ａ，１０Ｂが待機系の場合に使用される局番である。
【００４９】  このような構成の場合には、図７のステップＳ１９で自ＰＬＣ１０Ａが制御系である場合には、制御系−待機系設定部１０８は、二重化システム用ネットワーク２１で接続されるネットワークユニット１４Ａのネットワーク設定アドレスはそのままの設定とするが、制御ネットワーク２２に接続されるネットワークユニット１７Ａのネットワーク設定アドレス（局番）については、制御系の局番に設定される。一方、図７のステップＳ２０で自ＰＬＣ１０Ａが制御系でない場合には、制御系−待機系設定部１０８は、二重化システム用ネットワーク２１で接続されるネットワークユニット１４Ａのネットワーク設定アドレスが変更され、制御ネットワーク２２に接続されるネットワークユニット１７Ａのネットワーク設定アドレス（局番）については、待機系の局番に設定される。
【００５０】  なお、ネットワーク設定を変更せずに通信を行うことができる場合には、ステップＳ１９，Ｓ２０でネットワーク設定情報を修正せずに、すなわちステップＳ１９，Ｓ２０の処理を省略して、通信を開始してもよい。このような場合は、たとえば１対１で接続されたネットワーク構成において、設定されたアドレスを使用せず、双方がブロードキャストによって相手側にデータを送信することができるネットワークで接続されている場合である。
【００５１】
実施の形態１では、２つのＰＬＣ１０Ａ，１０Ｂがネットワーク２１で接続され、電源がオンの状態にされたときに、自ＰＬＣ１０Ａと他のＰＬＣ１０Ｂのネットワーク設定情報が衝突したかしないかで二重化システムとして機能させるか否かを設定するようにした。また、ネットワーク設定情報が衝突した場合には、自ＰＬＣ１０Ａと他のＰＬＣ１０Ｂのシステム構成情報を用いて、二重化システムを構築するのにシステム構成が同一であるかを判定し、さらに同一である場合には自ＰＬＣ１０Ａを制御系として機能させるのか、待機系として機能させるのか、を決定し、それに基づいてネットワーク設定情報を変更するようにした。これによって、二重化システムの構築において、制御系／待機系の設定を人手によることなく自動的に決定し、その結果に基づいてネットワーク設定を行うことができるという効果を有する。
【００５２】実施の形態２．  実施の形態１では、システム構築時における二重化システムのネットワーク設定を自動で行う構成について説明した。実施の形態２では、制御系−待機系間でのネットワーク状態の監視、およびＰＬＣ内でのＣＰＵユニット−ネットワークユニット間の監視に基づいた制御系から待機系への切り替えについて説明する。
【００５３】  図１０は、実施の形態２によるＰＬＣの機能構成の一例を模式的に示すブロック図である。このＰＬＣ１０は、実施の形態１の構成に加えて、自ＰＬＣ１０と相手系ＰＬＣ１０の状態を監視する状態監視部１１０と、状態監視部１１０によって自ＰＬＣ１０または相手系ＰＬＣ１０に異常が発生した場合に、二重化システムの状態をどのようにするかを判断し、決定する異常発生時処理部１１１と、をさらに備える。なお、実施の形態１と同一の構成要素には同一の符号を付してその説明を省略する。
【００５４】  図１１は、実施の形態２による二重化システムでの状態監視部のさらに詳細な構成を模式的に示すブロック図である。ここでは、ＰＬＣ１０Ａを制御系とし、ＰＬＣ１０Ｂを待機系としている。この図に示されるように、制御系と待機系ともに、ＣＰＵユニット１３Ａ，１３Ｂは、自ＰＬＣ１０Ａ，１０Ｂのネットワークユニット１４Ａ，１４Ｂの死活状態を監視するネットワークユニット状態監視部１２１Ａ，１２１Ｂを有し、ネットワークユニット１４Ａ，１４Ｂは、自ＰＬＣ１０Ａ，１０ＢのＣＰＵユニット１３Ａ，１３Ｂの死活状態を監視するＣＰＵユニット状態監視部１２２Ａ，１２２Ｂと、相手系のＰＬＣ１０Ｂ，１０Ａのネットワークユニット１４Ｂ，１４Ａの死活状態を監視する相手系ネットワーク状態監視部１２３Ａ，１２３Ｂと、を有する。相手系ネットワーク状態監視部１２３Ａ，１２３Ｂは、ネットワークユニット１４Ａ，１４Ｂ間を接続するネットワーク２１（汎用ネットワーク）を介して相手系のネットワークユニット１４Ａ，１４Ｂに対して監視を行う。このとき、相手系ネットワーク状態監視部１２３Ａ，１２３Ｂは、ネットワーク２１（汎用ネットワーク）の通信タイミングに合わせて状態監視を行う。
【００５５】  ネットワークユニット状態監視部１２１Ａ，１２１Ｂ、ＣＰＵユニット状態監視部１２２Ａ，１２２Ｂおよび相手系ネットワーク状態監視部１２３Ａ，１２３Ｂは、定期的に監視相手の所定の記憶領域に異なる値の書き込みを行い、書き込みを行う際にその記憶領域に記憶されている値を読み出し、所定の回数書き込みを行うたびに読み出される値が同じ値である場合には、相手側のユニットが動作していない状態（異常状態）であると判断する。また、書き込みを行うたびに読み出される値が異なる場合には、相手側のユニットは正常に動作している状態であると判断する。
【００５６】  図１２は、ＰＬＣの動作の概略を示すフローチャートである。この図に示されるように、ＰＬＣ１０Ａ，１０Ｂでは、最初にイニシャル処理を実行した（ステップＳ３１）後、一連の制御手順が記述されたシーケンスプログラムを実行し（ステップＳ３２）、さらに、シーケンスプログラムによる演算の実行結果の出力処理や演算を行うためのデータの入力処理などのシステム処理を行う（ステップＳ３３）。そして、このステップＳ３２のシーケンスプログラム実行処理とステップＳ３３のシステム処理を繰り返し実行する。
【００５７】  ＣＰＵユニット１３Ａ，１３Ｂによるネットワークユニット状態監視部１２１Ａ，１２１Ｂとネットワークユニット１４Ａ，１４ＢのＣＰＵユニット状態監視部１２２Ａ，１２２Ｂによる状態監視処理は、たとえばステップＳ３３のシステム処理のときに行われる。
【００５８】  また、図１２では、ステップＳ３１〜Ｓ３３の処理と並行して、ネットワークユニット１４Ａ，１４Ｂの相手系ネットワーク状態監視部１２３Ａ，１２３Ｂによる状態監視処理が行われる（ステップＳ３４）。そのため、相手系ＰＬＣ１０Ｂ，１０Ａの状態監視は、ＣＰＵユニット１３Ａ，１３Ｂで行われる処理とは独立した周期で実行される。すなわち、ＣＰＵユニット１３Ａ，１３Ｂで行われるサイクリック処理とは関係なく実行することができる。なお、ここでサイクリック処理とは、ＣＰＵユニットが、ＰＬＣが備える種々のユニットを動作させて産業用機器を制御するためのプログラムであるユーザプログラムの実行と、実行結果の出力と、ユーザプログラムが使用する値などの入力値の取得と、を所定の周期で繰り返す処理のことをいう。
【００５９】  なお、ステップＳ３４では、相手系ネットワークユニット１４Ａ，１４Ｂの状態監視処理が行われているが、これに加えて等値化処理を行ってもよい。これによって、等値化処理もＣＰＵユニット１３Ａ，１３Ｂで行われる処理とは独立した周期で実行されることになる。
【００６０】  ここで、ネットワークユニット状態監視部１２１Ａ，１２１Ｂ、ＣＰＵユニット状態監視部１２２Ａ，１２２Ｂおよび相手系ネットワーク状態監視部１２３Ａ，１２３Ｂによって、監視対象の異常が検出された場合の二重化システムの動作状態の制御について説明する。
【００６１】  図１３は、異常発生時の二重化システムとしての動作を示す図である。なお、以下では、ＰＬＣ１０Ａが制御系であるとし、ＰＬＣ１０Ｂが待機系であるとする。制御系のＣＰＵユニット１３Ａのネットワークユニット状態監視部１２１Ａで異常が検出された場合、すなわち制御系のネットワークユニット１４Ａが異常である場合には、異常発生時処理部１１１は、現在の制御系−待機系での処理状態を維持する。
【００６２】  制御系のネットワークユニット１４ＡのＣＰＵユニット状態監視部１２２Ａで異常が検出された場合、すなわち制御系のＣＰＵユニット１３Ａが異常である場合には、異常発生時処理部１１１は、ＰＬＣ１０Ａを現在の制御系から待機系に切り替える。またこのとき、ＰＬＣ１０Ｂでは現在の待機系から制御系に切り替える処理を行う。図１のような二重化システムの場合には、ネットワークユニット１４Ａ，１４Ｂの制御系／待機系の設定を切り替えるのみでよいが、図８のような二重化システムの場合には、上記のほかに制御ネットワーク２２を構成するネットワークユニット１７Ａ，１７Ｂの局番を切り替える処理も行われる。すなわち、ネットワークリモート局３１Ａ〜３１Ｃが制御系のＰＬＣと通信できるように、局番の切り替えが行われる。たとえば、制御ネットワーク２２では、ＰＬＣ１０Ａ，１０Ｂの制御系のネットワークユニット１７Ａ，１７Ｂに設定される局番（たとえば図９の局番１）と、待機系のネットワークユニット１７Ａ，１７Ｂに設定される局番（たとえば図９の局番２）と、が予め定められており、制御系−待機系の切り替えの際に、これらの局番の切り替えを行う。
【００６３】  制御系のネットワークユニット１４Ａの相手系ネットワーク状態監視部１２３Ａで異常が検出された場合、すなわち待機系のネットワークユニット１４Ｂが異常である場合には、異常発生時処理部１１１は、現在の制御系−待機系での処理状態を維持する。
【００６４】  待機系のネットワークユニット１４Ｂの相手系ネットワーク状態監視部１２３Ｂで異常が検出された場合、すなわち制御系のネットワークユニット１４Ａが異常である場合には、異常発生時処理部１１１は、現在の制御系−待機系での処理状態を維持する。
【００６５】  待機系のネットワークユニット１４ＢのＣＰＵユニット状態監視部１２２Ｂで異常が検出された場合、すなわち待機系のＣＰＵユニット１３Ｂが異常である場合には、異常発生時処理部１１１は、ＰＬＣ１０Ｂの現在の待機系から制御系への切り替えを禁止する。これは、待機系のＣＰＵユニット１３Ｂに異常が発生した状態では、制御系から待機系への切り替えを行うことが出できないからである。その結果、異常発生時処理部１１１は、たとえばその後に制御系のＣＰＵユニット１３Ａに異常が発生した場合でも、待機系への切り替えを行わない。
【００６６】  待機系のＣＰＵユニット１３Ｂのネットワークユニット状態監視部１２１Ｂで異常が検出された場合、すなわち待機系のネットワークユニット１４Ｂが異常である場合には、異常発生時処理部１１１は、現在の制御系−待機系での処理状態を維持する。
【００６７】  なお、上記では説明した状態監視部１１０は、図１の二重化システムの場合の例であり、ＣＰＵユニット１３Ａ，１３Ｂと二重化システム用ネットワーク（ネットワーク２１）で通信を行うネットワークユニット１４Ａ，１４Ｂに設けられる場合を説明したが、これに限定されるものではない。たとえば、図８の二重化システムの場合には、状態監視部１１０は、ＣＰＵユニット１３Ａ，１３Ｂと二重化システム用ネットワーク（ネットワーク２１）で通信を行うネットワークユニット１４Ａ，１４Ｂのほかに、制御ネットワーク２２で通信を行うネットワークユニット１７Ａ，１７Ｂに設けるようにしてもよい。このような構成によって、ネットワークユニット１７Ａ，１７Ｂの状態監視を行うネットワークユニットを増やすことができ、異常検出の信頼性を高めることができる。
【００６８】  この実施の形態２では、自ＰＬＣ１０Ａ内のＣＰＵユニット１３Ａと相手系ＰＬＣ１０Ｂのネットワークユニット１４Ｂの死活監視を行う状態監視部１１０をネットワークユニット１４Ａに設け、自ＰＬＣ１０Ａ内のネットワークユニット１４Ａの死活監視を行う状態監視部１１０をＣＰＵユニット１３Ａに設けた。これによって、自ＰＬＣ１０Ａまたは相手系ＰＬＣ１０Ｂの状態監視を行う専用のユニットをＰＬＣ１０Ａに設けずに、ＣＰＵユニット１３Ａとネットワークユニット１４Ａによる異常監視が可能になるという効果を有する。
【００６９】  また、ネットワークユニット１４Ａに設けた状態監視部１１０は、ＣＰＵユニット１３Ａでの周期的な処理と並行して状態監視処理を行うことができるので、ＣＰＵユニット１３Ａでの処理時間に影響されることなく、自ＰＬＣ１０ＡのＣＰＵユニット１３Ａの状態と相手系ＰＬＣ１０Ｂのネットワークユニット１４Ｂの状態とを監視することができるという効果を有する。
【産業上の利用可能性】
【００７０】  以上のように、この発明にかかるプログラマブルコントローラは、２つのプログラマブルコントローラを用いて二重化システムを構築する場合に有用である。
【符号の説明】
【００７１】  １０，１０Ａ，１０Ｂ  ＰＬＣ（プログラマブルコントローラ）、１１Ａ，１１Ｂ  ベースユニット、１２Ａ，１２Ｂ  電源ユニット、１３Ａ，１３Ｂ  ＣＰＵユニット、１４Ａ，１４Ｂ，１７Ａ，１７Ｂ  ネットワークユニット、１５Ａ，１６Ａ，１５Ｂ，１６Ｂ  ユニット、２１  ネットワーク（二重化システム用ネットワーク）、２２  制御ネットワーク、３１Ａ〜３１Ｃ  ネットワークリモート局、１０１  通信部、１０２  ネットワーク設定情報記憶部、１０３  システム構成情報記憶部、１０４  製品固有情報記憶部、１０５  初期設定処理部、１０６  設定内容判定部、１０７  システム構成判定部、１０８  制御系−待機系設定部、１０９  等値化処理部、１１０  状態監視部、１１１  異常発生時処理部、１２１Ａ，１２１Ｂ  ネットワークユニット状態監視部、１２２Ａ，１２２Ｂ  ＣＰＵユニット状態監視部、１２３Ａ，１２３Ｂ  相手系ネットワーク状態監視部。
【要約】  ＰＬＣ（１０）は、他のＰＬＣと汎用ネットワークを介して接続される通信部（１０１）と、自ＰＬＣ（１０）の第１ネットワーク設定情報と前記他のＰＬＣから送られてくる第２ネットワーク設定情報とが同一であるかを判定する設定内容判定部（１０６）と、前記第１ネットワーク設定情報と前記第２ネットワーク設定情報とが同一である場合に、前記自ＰＬＣ（１０）の第１システム構成情報と前記他のＰＬＣの第２システム構成情報とを比較し、前記他のＰＬＣと二重化システムを構築するのに必要な構成が一致するかを判定するシステム構成判定部（１０７）と、前記構成が一致する場合に、前記自ＰＬＣ（１０）が制御系であるか待機系であるかを決定し、前記制御系であると決定した場合には前記第１ネットワーク設定情報をそのままとし、前記待機系であると決定した場合には、前記第１ネットワーク設定情報の内容を変更する制御系−待機系設定部（１０８）と、を備える。【図１】
0005701459.tif 000002
【図２】
0005701459.tif 000003
【図３】
0005701459.tif 000004
【図４】
0005701459.tif 000005
【図５】
0005701459.tif 000006
【図６】
0005701459.tif 000007
【図７】
0005701459.tif 000008
【図８】
0005701459.tif 000009
【図９】
0005701459.tif 000010
【図１０】
0005701459.tif 000011
【図１１】
0005701459.tif 000012
【図１２】
0005701459.tif 000013
【図１３】
0005701459.tif 000014