(57)【特許請求の範囲】
【請求項１】
第１のＰＬＣおよび第２のＰＬＣを有する二重化ＰＬＣにネットワークを介して接続される、プログラマブル表示器の監視操作方法であって、
前記プログラマブル表示器は、
前記第１のＰＬＣを識別するＩＰアドレスと関連付けられた第１の局番と、前記第２のＰＬＣを識別するＩＰアドレスと関連付けられた第２の局番とが局番管理情報として記憶部に登録されており、
前記プログラマブル表示器に配置された各表示操作部品の参照先の局番には、稼動系のＰＬＣの情報を監視表示するためまたは該稼動系のＰＬＣに操作指令を送信するための設定として前記第１の局番が設定されており、
前記プログラマブル表示器は、
前記各ＰＬＣから受信した前記各ＰＬＣの稼動または停止のステ−タス情報に基づいて稼動状態を監視し、待機系のＰＬＣが稼動したと判定したとき、前記各表示操作部品に設定されている前記参照先の局番を前記第２の局番に書き替えをし、
前記書き替え後前記プログラマブル表示器をリセットして監視操作を継続する
ことを特徴とするプログラマブル表示器の監視操作方法。
【請求項２】
前記プログラマブル表示器は、
前記プログラム表示器のリセット後、前記各ＰＬＣから受信した前記各ＰＬＣの稼動または停止のステ−タス情報に基づいて稼動状態を監視し、前記待機系のＰＬＣが稼動したと判定したとき、前記各表示操作部品に設定されている前記参照先の局番を前記第１の局番に書き替えをし、
前記第１の局番への書き替え後前記プログラマブル表示器をリセットして監視操作を継続する
ことを特徴とする請求項１に記載のプログラマブル表示器の監視操作方法。
【請求項３】
前記プログラマブル表示器は、
前記稼動系のＰＬＣの情報を監視表示するためまたは前記稼動系のＰＬＣに操作指令を送信するための設定のためのアドレスとして、前記各ＰＬＣの内部レジスタのアドレスを指定する
ことを特徴とする請求項１に記載のプログラマブル表示器による監視操作方法。
【請求項４】
第１のＰＬＣ、第２のＰＬＣおよび第３のＰＬＣを有する三重化ＰＬＣにネットワークを介して接続される、プログラマブル表示器の監視操作方法であって、
前記プログラマブル表示器は、
前記第１のＰＬＣを識別するＩＰアドレスと関連付けられた第１の局番と、前記第２のＰＬＣを識別するＩＰアドレスと関連付けられた第２の局番と、前記第３のＰＬＣを識別するＩＰアドレスと関連付けられた第３の局番が記憶部に登録されており、
前記プログラマブル表示器に配置された各表示操作部品の参照先の局番には、前記第１のＰＬＣの情報を監視表示するためまたは前記第１のＰＬＣに操作指令を送信するための設定として前記第１の局番が対応づけられて設定されており、
前記プログラマブル表示器は、
前記各ＰＬＣから受信した前記各ＰＬＣの稼動または停止のステ−タス情報に基づいて前記各ＰＬＣの稼動状態を監視し、前記第１のＰＬＣが停止したと判定したとき、前記各表示操作部品に設定されている局番を前記第２の局番に書き替えをし、
前記第１のＰＬＣおよび前記第２のＰＬＣが停止したと判定したとき、前記各表示操作部品に設定されている局番を前記第３の局番に書き替えをし、
前記書き替え後前記プログラマブル表示器をリセットして監視操作を継続する
ことを特徴とするプログラマブル表示器の監視操作方法。
【請求項５】
請求項１から請求項４のいずれか１項に記載のプログラマブル表示器の監視操作方法をコンピュータに実行させるための監視操作プログラム。
【請求項６】
第１のＰＬＣおよび第２のＰＬＣを有する二重化ＰＬＣにネットワークを介して接続される、プログラマブル表示器であって、
前記第１のＰＬＣを識別するＩＰアドレスと関連付けられた第１の局番と、前記第２のＰＬＣを識別するＩＰアドレスと関連付けられた第２の局番とが局番管理情報として記憶される記憶部と、
稼動系のＰＬＣの情報を監視表示するためまたは該稼動系のＰＬＣに操作指令を送信するための参照先の局番の設定として前記第１の局番が設定された前記プログラマブル表示器に配置される各表示操作部品と、
前記各ＰＬＣから受信した前記各ＰＬＣの稼動または停止のステ−タス情報に基づいて前記各ＰＬＣの状態を監視し、待機系のＰＬＣが稼動したと判定したとき、前記各表示操作部品に設定されている前記参照先の局番を前記第２の局番に書き替えをし、前記書き替え後前記プログラマブル表示器をリセットして監視操作を継続する参照先局番切替処理部とを有する
ことを特徴とするプログラマブル表示器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、上下水プラント機器の監視操作をするプログラマブル表示器の監視操作方法、監視操作プログラムおよびプログラマブル表示器に関する。
【背景技術】
【０００２】
プログラマブル表示器は、プログラマブルコントローラ（以下ＰＬＣと称す。）などのホストマシンと情報を送受信しており、ホストマシンを監視・制御するのに有用な機器となっている。
【０００３】
プログラマブル表示器がイーサネット（登録商標）伝送路に二重化されたＰＬＣと接続されている場合、プログラマブル表示器からは、稼動系のＰＬＣ、待機系のＰＬＣの両方の情報を取得することができる。しかしながら、情報の監視と、機器の操作は、稼動系のＰＬＣのみを対象としなければならない。このため、どちらが稼動しているかを判断し、稼動系のＰＬＣの内部レジスタをプログラマブル表示器内の内部レジスタに転写し、その情報により表示するように構成されている。
【０００４】
機器操作も同様に、プログラマブル表示器内の内部レジスタを稼動系のＰＬＣの内部レジスタに転写し機器操作するように構成されている。つまり、プログラマブル表示器内の内部レジスタと稼動系のＰＬＣの内部レジスタが別レジスタであり、レジスタ間の読みかえをする必要がある。読み替えをするために、レジスタ間対応表が使用されている。
【０００５】
また、特許文献１のＰＬＣ二重化切換装置では、イーサネット伝送路に二重化されたＰＬＣが接続された場合で、一方のＰＬＣが異常になったときでも、他方のＰＬＣと通信可能とする技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−５６８１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、上位監視装置が、二重化ＰＬＣの稼動系（マスタ）のみを監視しそれを１つの装置とみなしデータの送受信ができる。ＰＬＣ側で稼動系の切換を行い稼動系のみの情報をＰＬＣが送信することを特徴としている。上位監視装置は共有メモリに割りついた稼動系の情報を読むことになり、これは監視装置の内部レジスタの情報になる。また、上位監視装置は待機系（スレーブ）の情報を読むことはない。つまり、上位監視装置は、共有メモリの稼動系の情報エリアを参照するが、そのレジスタ指定はＰＬＣ内のレジスタ指定とは異なる。さらに、待機系のＰＬＣの状態については、稼動系のＰＬＣのみを監視の対象としているため、監視できないことになる。
【０００８】
イーサネット伝送路では、伝送路上に接続されている機器などを識別するためにＩＰ（Internet Protocol）アドレスが割り振られており、稼動系のＰＬＣも待機系のＰＬＣも同一プログラムがローディングされておりそれぞれ別のＩＰアドレスが割り振られている。しかし、プログラマブル表示器からは、１つのＩＰアドレスとして稼動系のＰＬＣのみを認識したほうが都合がよい。しかしながら、前記のＩＰアドレスの制約上、二重化されたＰＬＣは同一のＩＰアドレスを使用することは許されない。
【０００９】
プログラマブル表示器がシングルのＰＬＣとの接続の場合、該当のＰＬＣレジスタとプログラマブル表示器の表示箇所が１：１で固定されるため、ＰＬＣ内部のレジスタを直接プログラマブル表示器の表示用に指定できる。
【００１０】
一方、プログラマブル表示器が二重化ＰＬＣとの接続の場合、稼動系のＰＬＣの情報のみを表示に使うため、プログラマブル表示器の表示部品のレジスタ指定が、１：１で固定できない。このため、稼動系のＰＬＣの情報のみを監視制御するように切り替えを行い、待機系のＰＬＣについても必要に応じてＰＬＣのステータス状態の監視を可能としている。
【００１１】
背景技術ですでに説明したように、従来、プログラマブル表示器の内部レジスタに、稼動系のＰＬＣのデータを転写し、そのデータを表示用に使わなければならないため、対シングルＰＬＣと同様にプログラマブル表示器のアプリケーションプログラムを作成することができず、ＰＬＣ内部レジスタとプログラマブル表示器内部のレジスタ間の読みかえ（レジスタ間対応表）も必要であった。
【００１２】
このため、複数のＰＬＣで構成された二重化ＰＬＣの場合でも、プログラマブル表示器より直接ＰＬＣ内部のレジスタを表示、操作に使用でき、プログラマブル表示器の内部レジスタを使用せず、対シングルＰＬＣと同様にＰＬＣ内部レジスタを直接使用するプログラマブル表示器のアプリケーションプログラムを作成することが望まれていた。
【００１３】
本発明は、前記の課題を解決するための発明であって、プログラマブル表示器が複数のＰＬＣに接続されている場合において、稼動系のＰＬＣが切り替わったときに稼動系のＰＬＣを監視・操作することができるプログラマブル表示器の監視操作方法、監視操作プログラムおよびプログラマブル表示器を提供することを目的とする。
【課題を解決するための手段】
【００１４】
前記目的を達成するため、本発明のプログラマブル表示器の監視操作方法は、第１のＰＬＣ（例えば、Ａ系ＰＬＣ２０Ａ）および第２のＰＬＣ（例えば、Ｂ系ＰＬＣ２０Ｂ）を有する二重化ＰＬＣにネットワークを介して接続される、プログラマブル表示器(10)の監視操作方法であって、
プログラマブル表示器は、第１のＰＬＣと関連付けられた第１の局番と、第２のＰＬＣと関連付けられた第２の局番とが局番管理情報（例えば、局番テーブル１２１）として記憶部に登録されており、
プログラマブル表示器に配置された各表示操作部品の参照先の局番には、稼動系のＰＬＣの情報を監視表示するためまたは稼動系のＰＬＣに操作指令を送信するための設定として第１の局番が設定されており、
プログラマブル表示器は、各ＰＬＣから受信した各ＰＬＣの稼動または停止のステ−タス情報に基づいて稼動状態を監視し、待機系のＰＬＣが稼動したと判定したとき、各表示操作部品に設定されている参照先の局番を第２の局番に書き替えをし、書き替え後プログラマブル表示器をリセットして監視操作を継続することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、プログラマブル表示器が複数のＰＬＣに接続されている場合において、稼動系のＰＬＣが切り替わったときに稼動系のＰＬＣを監視・操作することができる。
【図面の簡単な説明】
【００１６】
【図１】プログラマブル表示器と二重化ＰＬＣを含む上下水プラント監視制御システムを示す構成図である。
【図２】プログラマブル表示器および二重化ＰＬＣの機能を示すブロック図である。
【図３】稼動系が切り替わる時（スイッチオーバー時）の動作を示す説明図である。
【図４】比較例である、稼動系のＰＬＣを監視制御するための内部レジスタの説明とその処理方法を示す説明図である。
【図５】本実施形態の稼動系のＰＬＣを監視制御するためのＰＬＣの内部レジスタの定義方法とその処理方法を示す説明図である。
【図６】参照先局番切替処理を示すフローチャートである。
【図７】二重化ＰＬＣの稼動／待機の状態の組み合わせとそのときの参照先局番の関係を示す説明図である。
【図８】プログラマブル表示器および三重化ＰＬＣの機能を示すブロック図である。
【図９】三重化ＰＬＣの状態の組み合わせとそのときの参照先局番の関係を示す説明図である。
【図１０】三重化ＰＬＣの場合の参照先局番切替処理を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について図面を参照して詳細に説明する。プログラマブル表示器のアプリケーションプログラム作成の際に、プログラマブル表示器とシングルＰＬＣ（図示せず）のイーサネット接続の場合、１：１接続のため、直接ＰＬＣの内部レジスタを指定しており、プログラマブル表示器内の内部レジスタを使用する必要がない。本実施形態では、プログラマブル表示器と複数のＰＬＣで構成される二重化ＰＬＣのイーサネット接続の場合においても、直接ＰＬＣの内部レジスタを指定することができる方法について、図１および図２を参照して説明する。
【００１８】
＜実施形態１＞
図１は、プログラマブル表示器と二重化ＰＬＣを含む上下水プラント監視制御システムを示す構成図である。上下水プラント監視制御システムは、プログラマブル表示器１０、二重化ＰＬＣ２０、入出力装置（Ｉ／Ｏ）４、上下水プラント５から構成されており、上下水プラント監視制御システムの管理者は、プログラマブル表示器１０を用いて、上下水プラント５の情報について入出力装置４、二重化ＰＬＣ２０を介して監視・操作（制御）することができる。
【００１９】
プログラマブル表示器１０は、監視・操作するための表示・操作部１４を有し、イーサネットＩ／Ｆ（インターフェイス）１５を介して、イーサネットＮ１（イーサネットのネットワーク）に接続されている。
【００２０】
二重化ＰＬＣ２０は、Ａ系ＰＬＣ２０Ａ（第１のＰＬＣ）と、Ｂ系ＰＬＣ２０Ｂ（第２のＰＬＣ）とから構成されている。Ａ系ＰＬＣ２０Ａは、プロセッサ２１Ａ、イーサネットＩ／Ｆ２５Ａ、二重化Ｉ／Ｆ２６Ａを有する。また、Ｂ系ＰＬＣ２０Ｂは、プロセッサ２１Ｂ、イーサネットＩ／Ｆ２５Ｂ、二重化Ｉ／Ｆ２６Ｂを有する。
【００２１】
Ａ系ＰＬＣ２０Ａは、イーサネットＩ／Ｆ２５Ａを介してイーサネットＮ１に接続されており、二重化Ｉ／Ｆ２６Ａを介して、ＦＬネットＮ３（ＦＬネットのネットワーク）に接続されている。Ｂ系ＰＬＣ２０Ｂは、イーサネットＩ／Ｆ２５Ｂを介してイーサネットＮ１に接続されており、二重化Ｉ／Ｆ２６Ｂを介して、ＦＬネットＮ３に接続されている。なお、ＦＬネットとは、ＦＡ（Factory Automation）用制御ネットワークであり、伝送プロトコルとしてＵＤＰ（User Datagram Protocol）／ＩＰおよびＦＡリンクプロトコルが使用される。
【００２２】
ここで、Ａ系ＰＬＣ２０Ａとは、両ＰＬＣが正常な場合、稼動系のＰＬＣとなるものをいう。一方、Ｂ系ＰＬＣ２０Ｂとは、両ＰＬＣが正常な場合、待機系のＰＬＣとなり、Ａ系ＰＬＣ２０Ａが異常になると、稼動系のＰＬＣなるものをいう。但し、この逆の運用も可能なものとする。
【００２３】
図２は、プログラマブル表示器および二重化ＰＬＣの機能を示すブロック図である。本実施形態の特徴であるプログラマブル表示器のプログラムを作成する際のＰＬＣの内部レジスタの指定方法の概要についても説明する。
【００２４】
プログラマブル表示器１０のプロセッサ１１は、プログラマブル表示器１０のアプリケーションプログラム１２および内部レジスタ１３を有している。アプリケーションプログラム１２は、後記する稼動系のＰＬＣ、待機系のＰＬＣを識別するための局番とＩＰアドレスを関連付けした局番テーブル１２１（局番管理情報）（図５参照）、プログラマブル表示器１０の参照先である参照先局番切替処理をする参照先局番切替処理部１２２（図６参照）を有している。なお、局番の詳細については後記する。また、局番テーブル１２１は、プロセッサ１１内に記憶しているが、図示しないメモリ（記憶部）に記憶しておき、必要に応じてプロセッサ１１にロードしてもよい。
【００２５】
Ａ系ＰＬＣ２０Ａのプロセッサ２１Ａは、アプリケーションプログラム２２Ａおよび内部レジスタ２３Ａを有している。同様に、Ｂ系ＰＬＣ２０Ｂのプロセッサ２１Ｂは、アプリケーションプログラム２２Ｂおよび内部レジスタ２３Ｂを有している。
【００２６】
ここで作成するプログラマブル表示器１０のアプリケーションプログラム１２、ＰＬＣ用のアプリケーションプログラム２２Ａ，２２Ｂは、パソコン（パーソナルコンピュータ）３０のプロセッサ３１により実行されるプログラミングツール３２を使用して作成し、イーサネットＮ１経由でローディングされる。なお、アプリケーションプログラム１２、ＰＬＣ用のアプリケーションプログラム２２Ａ，２２Ｂは、プログラマブル表示器１０および各ＰＬＣのメモリ（図示せず）に記憶し、必要に応じてロードして、プロセッサ１１，２１Ａ，２２Ｂで実行してもよいことは言うまでもない。
【００２７】
図２において、Ａ系ＰＬＣ２０Ａ、Ｂ系ＰＬＣ２０Ｂ、プログラマブル表示器１０には、それぞれを識別するためのＩＰアドレスが割り付けられている。Ａ系ＰＬＣ２０ＡのＩＰアドレスを「０」（通常ＩＰアドレスは、ドット付き十進表記で表記されるが、図中では、ＩＰアドレス０と表記している。）とし、Ｂ系ＰＬＣ２０ＢのＩＰアドレスを「１」とし、プログラマブル表示器１０のＩＰアドレスを「２」とし、イーサネットＮ１のネットワークを構成する。またＰＬＣの内部データの一致化を行うために、ＦＬネットＮ３を介して、稼動系のＰＬＣから待機系のＰＬＣへ内部データを転送している。
【００２８】
また、プログラマブル表示器１０の局番テーブル１２１において、Ａ系ＰＬＣ２０Ａは局番０（第１の局番）と関連づけられており、Ｂ系ＰＬＣ２０Ｂは局番１（第２の局番）と関連づけられている。また、プログラマブル表示器１０は局番２と関連づけられている。
【００２９】
本実施形態では、プログラマブル表示器１０のアプリケーションプログラム１２を作成する際、表示・操作部１４に使用する表示部品、操作部品、設定部品には、プログラマブル表示器１０の内部レジスタ１３でなく、例えば、Ａ系ＰＬＣ２０Ａ、つまり局番０のＰＬＣの内部レジスタ２３Ａを直接指定することができる。
【００３０】
すなわち、二重化ＰＬＣ２０を１台のプログラマブル表示器１０で監視、操作（制御）する場合、プログラマブル表示器１０のアプリケーションプログラム１２のマクロ処理でどちらのＰＬＣが稼動系か判断し、その情報を表示・操作部１４で使用するが、このアプリケーションプログラム１２を作成する際に、プログラマブル表示器１０の内部レジスタ１３の参照でなくＰＬＣの内部レジスタ２３Ａまたは内部レジスタ２３Ｂを参照するようにする。
【００３１】
内部レジスタの指定方法の例について図１を参照して説明する。符号４０には、プログラマブル表示器１０の内部レジスタ１３の例が示されている。一方、符号４１には、Ａ系ＰＬＣ２０Ａの内部レジスタ２３ＡおよびＢ系ＰＬＣ２０Ｂの内部レジスタ２３Ｂの例が示されている。部品への監視、操作用レジスタの設定には、符号４２に示すように、従来はプログラマブル表示器１０の内部レジスタ１３を参照していた。これに対し、本実施形態では、符号４３に示すように、Ａ系ＰＬＣ２０Ａの内部レジスタ２３ＡおよびＢ系ＰＬＣ２０Ｂの内部レジスタ２３Ｂを直接参照できるようにしている。Ａ系ＰＬＣ２０Ａの内部レジスタ２３ＡおよびＢ系ＰＬＣ２０Ｂの内部レジスタ２３Ｂの識別は、局番によってなされる。
【００３２】
本実施形態では、稼動系であるＡ系ＰＬＣ２０Ａが異常になると、待機系のＢ系ＰＬＣ２０Ｂが稼動系となるため、プログラマブル表示器１０のアプリケーションプログラム１２のマクロ処理で、全ての、表示・操作部１４の表示部品、操作部品、設定部品のリンク先をＢ系ＰＬＣ２０Ｂに切り替える。切り替え方法は、前記で示した局番０（イーサネットＩ／Ｆ２５Ａが記憶）でＰＬＣの内部レジスタを直接指定していたものを、全て局番１（イーサネットＩ／Ｆ２５Ｂ）に書き替えることができる。
【００３３】
図３は、稼動系が切り替わる時（スイッチオーバー時）の動作を示す説明図である。Ａ系ＰＬＣ２０Ａが稼動系のとき故障するとＢ系ＰＬＣ２０Ｂに稼動系がスイッチオーバする。プログラマブル表示器１０は、Ａ系ＰＬＣ２０Ａが稼動系であったため、Ａ系ＰＬＣ２０Ａを監視制御していたが、稼動系がＢ系ＰＬＣ２０Ｂにスイッチオーバしたことを判断し監視制御対象を、Ｂ系ＰＬＣ２０Ｂに切り替える。このスイッチオーバの際のプログラマブル表示器１０の内部処理（マクロ処理）の内容を、図４（比較例）および図５（本実施形態）を参照して説明する。
【００３４】
図４は、比較例である、稼動系のＰＬＣを監視制御するための内部レジスタの説明とその処理方法を示す説明図である。図２を適宜参照する。比較例の場合、稼動系のＰＬＣの内部レジスタ（内部レジスタ２３Ａもしくは内部レジスタ２３Ｂ）を判断し、プログラマブル表示器１０のアプリケーションプログラム１２のマクロ処理を使用し、稼動系のＰＬＣの内部レジスタとプログラマブル表示器１０の内部レジスタ１３との間でデータの転写処理を行い、監視制御を実現していた。このため、アプリケーションプログラム１２の作成者は、ＰＬＣの内部レジスタ２３Ａ，２３Ｂとプログラマブル表示器１０の内部レジスタ１３との間の対応表１３Ｒを作成し、レジスタの割付を意識する必要があった。
【００３５】
図５は、本実施形態の稼動系のＰＬＣを監視制御するためのＰＬＣの内部レジスタの定義方法とその処理方法を示す説明図である。本実施形態では、局番テーブル１２１において、Ａ系ＰＬＣ２０Ａを局番０、Ｂ系ＰＬＣ２０Ｂを局番１、プログラマブル表示器１０を局番２として定義し、アプリケーションプログラム１２を作成する。プログラマブル表示器１０のアプリケーションプログラム１２のマクロ処理において、ＰＬＣの稼動状況を判断し、参照先局番切替処理（図６参照、具体的には、局番０→１、局番１→０）を行う。
【００３６】
本実施形態では、アプリケーションプログラム１２のマクロ処理は、稼動系のＰＬＣの状態を監視制御している。また、プログラマブル表示器１０の表示操作部品毎にＰＬＣの内部レジスタ２３Ａ，２３Ｂの情報（符号８０Ａ１、符号８０Ａ２または符号８０Ｂ１、符号８０Ｂ２参照）を直接設定することが可能である。プログラマブル表示器１０が対二重化ＰＬＣ接続において、対シングルＰＬＣ接続と同様に、プログラマブル表示器１０のアプリケーションプログラム１２を作成することができる。また、このことにより、レジスタの対応表１３Ｒも不要となりアプリケーションプログラム作成者の負担を減らすこともできる。さらに、プログラマブル表示器１０のアプリケーションプログラム１２の作成段階で稼動系と逆の局番を参照する（符号８３、符号８４）ことで待機系のＰＬＣのレジスタ情報も監視可能とした。
【００３７】
次に、参照先局番切替処理について説明する。
図６は、参照先局番切替処理を示すフローチャートである。図６（ａ）は、プログラマブル表示器１０のアプリケーションプログラム１２のローディング後のイニシャル処理Ｓ１を示し、図６（ｂ）は、所定時間毎（例えば、１秒周期）の定周期処理を示す。なお、本実施形態では、アプリケーションプログラム１２のローディング直後は、プログラマブル表示器１０に配置された各表示操作部品の参照先局番を０（Ａ系ＰＬＣが稼動系）として説明する。
【００３８】
プロセッサ１１は、図６（ａ）に示すイニシャル処理Ｓ１を実行すると（ステップＳ１１）、イニシャル値として現状の局番をワークデータに設定し（ステップＳ１２）、処理を終了する。具体的には、稼動系のＰＬＣであるＡ系ＰＬＣ２０Ａの局番０がワークＷ１に設定され、待機系のＰＬＣであるＢ系ＰＬＣ２０Ｂの局番１がワークＷ２に設定される。なお、ワークには、内部レジスタ１３の一時記憶領域を使用するとよい。
【００３９】
プロセッサ１１は、図６（ｂ）に示す定周期処理を開始すると（ステップＳ２１）、例えば１秒周期毎にステップＳ２２からステップＳ２７の処理をする。プロセッサ１１は、Ａ系ＰＬＣ２０ＡのＲＵＮ（稼動）またはＳＴＯＰ（停止）のステ−タス情報をワークＷ１１へ設定し（ステップＳ２２）、Ｂ系ＰＬＣ２０ＢのＲＵＮまたはＳＴＯＰのステ−タス情報をワークＷ１２へ設定する（ステップＳ２３）。そして、プロセッサ１１は、ワークＷ１１，Ｗ１２より「待機系のＰＬＣが稼動したか？」の条件を判定し（ステップＳ２４）、待機系のＰＬＣが稼動したと判定した場合（ステップＳ２４，Ｙｅｓ）、ワークＷ１とワークＷ２の値の入替えを実施する（ステップＳ２５）。
【００４０】
プロセッサ１１は、プログラマブル表示器８１の表示操作部品毎の参照先の局番について切り替え処理を実行する（ステップＳ２６）。具体的には、プログラマブル表示器８１の表示操作部品毎の参照先の局番をワークＷ１の値として切り替え（書き替え）する。そして、プログラマブル表示器１０の表示・操作部１４の画面にリセットを実行し（ステップＳ２７）、処理を終了する。プロセッサ１１は、ステップＳ２７において、プログラマブル表示器１０のリセット要求があると、図６（ａ）に示すイニシャル処理Ｓ１を実行し（ステップＳ１１）、現在の局番をワークデータに設定する（ステップＳ１２）。具体的には、稼動系ＰＬＣの局番１がワークＷ１に、待機系ＰＬＣの局番０がワークＷ２に設定される。
【００４１】
ステップＳ２４において、待機系のＰＬＣが稼動したと判定しない場合（ステップＳ２４，Ｎｏ）、処理を終了する。
【００４２】
なお、イニシャル処理Ｓ１において、局番を読み込みワークデータに設定する処理を行うことにより、定周期処理では局番を毎回読み出す必要がないので、プロセッサ１１の処理負担を軽減する方法を採用している。
【００４３】
本実施形態では、プログラマブル表示器８１の表示操作部品毎の参照先の局番を入れ替えることで常に稼動系のＰＬＣの局番を参照するようになる。さらに、ここで逆の局番を参照すれば、それが待機系のＰＬＣということになる。
【００４４】
図７は、二重化ＰＬＣの稼動／待機の状態の組み合わせとそのときの参照先局番の関係を示す説明図である。Ａ系ＰＬＣ２０Ａの稼動／待機の状態とＢ系ＰＬＣ２０Ｂの稼動／待機の状態により、４つの組合せがある。図６に示した参照先局番切替処理は、ハードウェア回路上、稼動系は必ず一方のみでありＡ系ＰＬＣ２０Ａ、Ｂ系ＰＬＣ２０Ｂが同時に稼動系（符号７１参照）となることは無いため、本参照先局番切替処理が成立する。通常は一方が稼動系でもう一方が待機系（符号７２もしくは符号７３参照）の状態であり、符号７２の場合、参照先局番は１であり、符号７３の場合、参照先局番は０となる。両系が故障などで、両系待機系の場合（符号７４参照）は、局番の書き替えは行われず、前回値保持となる。なお、待機の状態には、故障の状態も含んでいる。
【００４５】
以上述べたように、本実施形態によれば、二重化されたＰＬＣをプログラマブル表示器１０で監視制御するアプリケーションプログラム１２を作成する場合、稼動系のＰＬＣを自動的に判断し局番を利用しこの局番の参照先を切り換えることで常に稼動系のＰＬＣの監視制御が行えるようになる。また、局番を利用したことでＰＬＣの内部レジスタ（例えば、内部レジスタ２３Ａ，２３Ｂ）をプログラマブル表示器１０で直接設定することができるようになる。つまり、シングルＰＬＣと接続し監視制御する場合と同様のアプリケーションプログラムの作成方法でよいこととなり、プログラムの作成者はシングルＰＬＣであるか、二重化されたＰＬＣであるか意識することなくアプリケーションプログラムを作成することができるという利点がある。さらに、待機系のＰＬＣの状態監視も稼動系と逆の局番を指定すれば良いこととなり、稼動系のＰＬＣ経由でなく、待機系のＰＬＣを直接的にプログラマブル表示器１０で状態監視を行うことができる。
【００４６】
具体的には、本実施形態の二重化ＰＬＣ２０は、Ａ系ＰＬＣ２０Ａ、Ｂ系ＰＬＣ２０Ｂで構成され、各ＰＬＣには稼動系のＰＬＣ局番０、待機系のＰＬＣの局番１を設定する。稼動系のＰＬＣのみの情報を監視表示し、また稼動系のＰＬＣのみに制御指令を送信するために、プログラマブル表示器１０の各々の表示操作部品に稼動系のＰＬＣである参照先の局番０を設定する。プログラマブル表示器１０は、各ＰＬＣのＲＵＮ（稼動）、ＳＴＯＰ（停止）のステ−タス情報を所定周期で監視を行う。Ｂ系ＰＬＣ２０Ｂが待機系から稼動系に切り替わったときに、プログラマブル表示器１０が稼動系のＰＬＣが切り替わったと判断し、参照先の局番を書き替え（０→１）、稼動系のみの監視操作を続行する。これにより、上下水プラント監視操作用のプログラマブル表示器１０と二重化ＰＬＣ２０のイーサネット接続において、対シングルＰＬＣ接続と同等のプログラマブル表示器のアプリケーションプログラムを使用し、自動的に稼動系のＰＬＣの情報を表示、操作可能とすることができる。
【００４７】
＜実施形態２＞
実施形態１においてプログラマブル表示器１０を二重化ＰＬＣに適用した場合について説明したが、これに限定されるものではない。実施形態２において、プログラマブル表示器１０を三重化ＰＬＣに適用した場合について説明する。
【００４８】
図８は、プログラマブル表示器および三重化ＰＬＣの機能を示すブロック図である。３重化ＰＬＣは、Ａ系ＰＬＣ２０Ａ（ＰＬＣ１）、Ｂ系ＰＬＣ２０Ｂ（ＰＬＣ２）、Ｃ系ＰＬＣ２０Ｃ（ＰＬＣ３）から構成されている。図８において、図２に記載の同一構成品については同一番号を付しており、説明は省略する。図８を参照して、上下水プラント監視制御システムとして現実的である３台のＰＬＣの同時ＲＵＮ方式で３台のデータ一致化を行わないシステムを考え、参照する優先順位をＰＬＣ１、ＰＬＣ２、ＰＬＣ３とする。
【００４９】
このとき、ＰＬＣ１が正常にＲＵＮ（稼動）していれば、ＰＬＣ１を参照、ＰＬＣ１が故障で、ＰＬＣ２が正常ＲＵＮであればＰＬＣ２を参照、同様に、ＰＬＣ２も故障であれば、ＰＬＣ３の正常ＲＵＮを判断しＰＬＣ３を参照する（組み合わせは図９参照）というように、切換えを行い、冗長性を確保するシステムを考えたときにも、実施形態１で示した参照先局番処理は有効である。
【００５０】
図９は、三重化ＰＬＣの状態の組み合わせとそのときの参照先局番の関係を示す説明図である。ＰＬＣ１が正常にＲＵＮの場合、参照先局番は０であり、ＰＬＣ１が故障し、かつＰＬＣ２が正常にＲＵＮの場合、参照先局番は１である。ＰＬＣ１およびＰＬＣ２が故障し、ＰＬＣ３が正常にＲＵＮの場合、参照先局番は２である。なお、ＰＬＣ１、ＰＬＣ２およびＰＬＣ３ともに故障の場合、参照先局番は、前回値を保持する設定となる。
【００５１】
図１０は、三重化ＰＬＣの場合の参照先局番切替処理を示すフローチャートである。図１０（ａ）は、プログラマブル表示器１０のアプリケーションプログラム１２のローディング後のイニシャル処理Ｓ２を示し、図１０（ｂ）は、局番０のＰＬＣが故障した場合の故障処理を示す。なお、アプリケーションプログラム１２をローディング直後は、参照先局番は０（ＰＬＣ１に対応）として説明する。
【００５２】
プロセッサ１１は、図１０（ａ）に示すイニシャル処理Ｓ２を実行すると（ステップＳ４１）、イニシャル値として各ＰＬＣに局番を設定し（ステップＳ４２）、処理を終了する。具体的には、ＰＬＣ１の局番を０に設定され、ＰＬＣ２の局番が１に設定され、ＰＬＣ３の局番が２に設定される。
【００５３】
プロセッサ１１は、局番０のＰＬＣが故障であると判定すると図１０（ｂ）に示す故障処理を開始する（ステップＳ５１）。プロセッサ１１は、局番１（優先度が２番）のＰＬＣがＲＵＮであるか否かを判定し（ステップＳ５２）、ＲＵＮである場合（ステップＳ５２、Ｙｅｓ）、局番０と局番１を入換え（ステップＳ５７）、局番書替処理を実行し（ステップＳ５５）、最後にプログラマブル表示器１０のリセットを実行し（ステップＳ５６）、処理を終了する。
【００５４】
ステップＳ５２において、プロセッサ１１は、局番１のＰＬＣがＲＵＮでない場合（ステップＳ５２，Ｎｏ）、局番２（優先順位が３番）のＰＬＣがＲＵＮであるか否かを判定し（ステップＳ５３）、ＲＵＮである場合（ステップＳ５３、Ｙｅｓ）、局番０と局番２を入替え（ステップＳ５４）、ステップＳ５５に進む。ステップＳ５３において、局番２（優先順位が３番）のＰＬＣがＲＵＮでない場合（ステップＳ５３、Ｎｏ）、処理を終了する。
【００５５】
実施形態２においては、局番書替処理の適用はＰＬＣの故障時を想定しているが、オペレータ判断による手動切り換え時にも本局番書替処理は有効である。
【００５６】
本実施形態では、上下水プラント制御システムとして説明したが、これに限定されるものではない。プログラマブル表示器と二重化ＰＬＣまたは三重化ＰＬＣを含む構成である制御システムであれば、搬送系制御システムなど各種制御システムに適用できる。
【符号の説明】
【００５７】
４    入出力装置（Ｉ／Ｏ）
５    上下水プラント
１０    プログラマブル表示器
１１    プロセッサ
１２    アプリケーションプログラム（マクロ処理）
１３    内部レジスタ
１４    表示・操作部
１５    イーサネットＩ／Ｆ
２０    二重化ＰＬＣ
２０Ａ    Ａ系ＰＬＣ（第１のＰＬＣ）
２０Ｂ    Ｂ系ＰＬＣ（第２のＰＬＣ）
２１Ａ，２１Ｂ    プロセッサ
２２Ａ，２２Ｂ    アプリケーションプログラム（ラダー）
２３Ａ，２３Ｂ    内部レジスタ
２５Ａ，２５Ｂ    イーサネットＩ／Ｆ
２６Ａ，２６Ｂ    二重化Ｉ／Ｆ
１２１    局番テーブル（局番管理情報）
１２２    参照先局番書替処理部
Ｎ１    イーサネット（イーサネットのネットワーク）
Ｎ３    ＦＬネット（ＦＬネットのネットワーク）
【図１】
0005400691.tif 000002
【図２】
0005400691.tif 000003
【図３】
0005400691.tif 000004
【図４】
0005400691.tif 000005
【図５】
0005400691.tif 000006
【図６】
0005400691.tif 000007
【図７】
0005400691.tif 000008
【図８】
0005400691.tif 000009
【図９】
0005400691.tif 000010
【図１０】
0005400691.tif 000011