(57)【要約】【課題】できるだけトラッキングする時間を短くするとともに、実行周期内でのアプリケーションプログラムを実行するための時間を長くとることのできるプラントコントロールシステムを提供する。【解決手段】エンジニアリングツール１には、制御系のコントローラ７Ａ及び待機系のコントローラ７Ｂで実行されるプログラムを生成するためのコンパイラ２３と、制御系のコントローラ７Ａから待機系のコントローラ７Ｂにトラッキングすることが必要なトラッキング設定２６をコンパイラ２３からの呼び出しに応じて生成するための手段と、トラッキング設定２６を制御系のコントローラ７Ａに転送するための転送手段２７とを設け、制御系のコントローラ７Ａにはエンジニアリングツール１から転送されたトラッキング設定２６を待機系のコントローラ７Ｂにトラッキングするためのトラッキング機能３０Ａを設ける。【選択図】図２
2010128514.tif 000002
【特許請求の範囲】
【請求項１】
プラント機器を制御するための制御系のコントローラと、上記制御系のコントローラに替わって上記プラント機器を制御することのできる待機系のコントローラとを備えたプラントコントロールシステムにおいて、上記コントローラで実行されるプログラムを生成するための手段と、上記プログラムにおいて上記制御系のコントローラから上記待機系のコントローラにトラッキングすることが必要なデータを選択してトラッキング設定を生成する手段と、上記トラッキング設定を上記制御系のコントローラに転送するための手段とからなるエンジニアリングツールを設け、上記エンジニアリングツールから転送された上記トラッキング設定を上記待機系のコントローラにトラッキングするためのトラッキング機能を設けたことを特徴とするプラントコントロールシステム。
【請求項２】
上記トラッキング設定は演算ステップにおける前回演算した出力値のフィードバック値に関するものであることを特徴とする請求項１記載のプラントコントロールシステム。
【請求項３】
上記トラッキング設定は上記プラント機器と上記制御系又は待機系のコントローラとの間の入出力設定に関するものであることを特徴とする請求項１又は請求項２記載のプラントコントロールシステム。
【請求項４】
上記トラッキング設定が使用されているプログラムの種類も上記トラッキング設定に保存させると共に、上記プログラムを実行する前に当該プログラムで使用している上記トラッキング設定のみを上記待機系のコントローラにトラッキングするようにしたことを特徴とする請求項１から請求項３のいずれか１項に記載のプラントコントロールシステム。
【請求項５】
トラッキング優先とプログラム実行優先の２つのモードのうちのいずれかを選択し保存する手段を上記エンジニアリングツールに設けるとともに、上記制御系のコントローラは選択された上記モードに従ってプログラムの実行を優先させるか或いはトラッキングを優先させるかを選択することを特徴とする請求項１から請求項４のいずれか１項に記載のプラントコントロールシステム。
【請求項６】
上記トラッキング設定に係るトラッキング領域が複数のブロックに分割されている場合、当該トラッキング領域を１つの領域にまとめて上記制御系のコントローラに転送するようにしたことを特徴とする請求項１から請求項５のいずれか１項に記載のプラントコントロールシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、プラントをコントロールするためのプラントコントロールシステムに関するものであり、特に実際にプラントの制御を行う制御系コントローラと、この制御系コントローラが何らかの原因で故障した時に、引き続いてプラントを制御する待機系コントローラとを有する二重系のプラントコントロールシステムに関するものである。
【背景技術】
【０００２】
従来の二重系のコントロールシステムにおける制御系コントローラから待機系コントローラへのデータのトラッキング（コピー）方式に関しては、制御系ＣＰＵユニットのＣＰＵは、メモリ内における値の変更の有無を常に監視し、メモリの値が変更する度に、書き込まれるアドレス及びその値をＣＰＵの機能により同時に記憶しておき、値の変更が発生したら、制御系ＣＰＵユニットから待機系ＣＰＵユニットのトラッキングメモリに対して、更新された情報の場所と値の変更情報を転送する。
【０００３】
そして待機系ＣＰＵユニットにおいては、転送され、更新された情報の格納場所と値の変更情報をトラッキングメモリが受信すると、上記変更情報により、制御系ＣＰＵユニットで抽出された更新に係るメモリに対して変更値を反映し、完了したら待機系ＣＰＵユニットは、制御系ＣＰＵユニットに対して完了を知らせる応答を返すものがあった（特許文献１）。
【０００４】
【特許文献１】特開平１０−２４０６６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のコントロールシステムは上記のように構成されており、アプリケーションプログラム実行中に、制御系ＣＰＵがデータの変化を常に監視しメモリ値の変更をチェックする必要があり、そのための時間を使うので、その分プログラム実行時間が短くなってしまうという問題があった。特にサイズの大きいアプリケーションプログラムを決められた実行周期内で実行しなければならないような厳しい条件においては不向きであるという問題があった。
【０００６】
この発明は上記のような課題を解決するためになされたものであり、制御系のコントローラが故障しても待機系のコントローラが正確に作動できるようにしながら、制御系コントローラがデータの変化を常に監視しメモリ値の変更をチェックする必要をなくすことにより、実行周期内でのアプリケーションプログラムを実行するための時間を長くとることのできるプラントコントロールシステムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係るプラントコントロールシステムは、プラント機器を制御するための制御系のコントローラと、制御系のコントローラに替わってプラント機器を制御することのできる待機系のコントローラとを備えたものであって、コントローラで実行されるプログラムを生成するための手段と、プログラムにおいて制御系のコントローラから待機系のコントローラにトラッキングすることが必要なデータを選択してトラッキング設定を生成する手段と、トラッキング設定を制御系のコントローラに転送するための手段とからなるエンジニアリングツールを設け、エンジニアリングツールから転送されたトラッキング設定を待機系のコントローラにトラッキングするためのトラッキング機能を設けたものである。
【発明の効果】
【０００８】
この発明に係るプラントコントロールシステムによれば、プラント機器を制御するための制御系のコントローラと、制御系のコントローラに替わってプラント機器を制御することのできる待機系のコントローラとを備えたものであって、コントローラで実行されるプログラムを生成するための手段と、プログラムにおいて制御系のコントローラから待機系のコントローラにトラッキングすることが必要なデータを選択してトラッキング設定を生成する手段と、トラッキング設定を制御系のコントローラに転送するための手段とからなるエンジニアリングツールを設け、エンジニアリングツールから転送されたトラッキング設定を待機系のコントローラにトラッキングするためのトラッキング機能を設けたので、制御系のコントローラがデータの変化を監視する必要がなくなり、その分コントローラが一定周期内においてアプリケーションプログラムを実行するための時間を増やすことができる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
以下、この発明の一実施形態を図に基づいて説明する。図１はこの発明の実施の形態１によるプラントコントロールシステムを示すブロック構成図であり、図において、エンジニアリングツール１は、エンジニアリング機能を格納するプログラムメモリ２と、エンジニアリング機能を呼び出して実行するＣＰＵ３と、演算用の一時記憶装置であるＲＡＭ４と、エンジニアリング機能により生成される情報を半永久的に格納するための外部記憶装置５から構成される。
【００１０】
エンジニアリングツール１で作成され外部記憶装置５に格納されたプログラムは、制御ネットワーク６を経由して各コントローラ（ＣＮＳ）７Ａ、７Ｂに転送され、コントローラ７Ａ、７Ｂの制御用ロジックとして使用される。ＣＮＳ７Ａ、７Ｂは、エンジニアリングツール１で作成されたプログラムを格納するための不揮発性メモリ８Ａ、８Ｂと、演算用プログラムを格納するプログラムメモリ９Ａ、９Ｂと、プログラムを読み出して実行するＣＰＵ１０Ａ、１０Ｂから構成される。
【００１１】
ＣＮＳ７Ａ、７Ｂにはプラント機器１１が接続され、プラント機器１１からの入力を受けてＣＰＵ１０Ａ、１０Ｂはプログラムを実行することにより演算を行い、その結果をプラント機器１１に出力する。ＣＮＳ７ＡとＣＮＳ７Ｂは対になっており、即ち二重系を構成しており、ＣＮＳ７ＡとＣＮＳ７Ｂはトラッキングケーブル１２で接続される。そして制御系であるＣＮＳ７Ａが故障した時、待機系のＣＮＳ７Ｂに制御が切り替る。ＣＮＳ７Ａのトラッキングメモリ１３Ａに格納されていたプログラム実行用のデータは、トラッキングケーブル１２を経由して、ＣＮＳ７Ｂのトラッキングメモリ１３Ｂにトラッキングされ、切り替わり後のＣＮＳ７Ｂは、それまでにＣＮＳ７Ａで実行されていたデータに基づいてプログラムを再開できる。
【００１２】
図２はこの発明の実施の形態１によるプラントコントロールシステムの機能を示す構成図であり、エンジニアリングツール１は、プログラムエディタ２１を使って、プログラムを作成する。作成されたプログラムはプログラム（作図）２２として保存される。プログラム（作図）２２の一例を図３に示す。
【００１３】
図３に示されたプログラムは、入力値ＳＶと、前回のプログラム実行周期においてＰＩＤ演算（演算ステップ）によって演算した出力値ＭＶ１のフィードバック値から、同じくＰＩＤ演算を使って計算して、今回の出力値ＭＶ２を出力する例を示している。前回出力値ＭＶ１（フィードバック値）を、待機系であるＣＮＳ７Ｂにトラッキングしておかないと、ＣＮＳが切り替わって、新しい制御系で演算が再開されたときに、不正な前回値で演算を行ってしまい、不正な出力値ＭＶを出力するおそれがある。そこで本発明においては以下に示すように動作する。
【００１４】
先ずコンパイラ２３は、プログラム（作図）２２を読み込んで、ＣＮＳで実行するためのプログラム（実行用）２４を生成する。コンパイラ２３は、コンパイル中に、フィードバック抽出機能２５を呼び出す。フィードバック抽出機能２５は、プログラム（作図）２２のデータからフィードバックを抽出し、トラッキング設定２６を生成する。トラッキング設定２６の一例を図４に示す。
【００１５】
図４において、先頭デバイスからサイズ分のメモリに、フィードバック値に関するエリア（アドレス）が格納される。このエリア（アドレス）は、制御系のＣＮＳ７Ａから待機系のＣＮＳ７Ｂにトラッキングされる必要がある。コンパイル後、転送機能２７は、トラッキング設定２６と、プログラム（実行用）２４を、ＣＮＳ７Ａに転送する。
【００１６】
ＣＮＳ７Ａにおいて、スケジューラ２８Ａは決められたスケジュールにしたがって、実行エンジン２９Ａと、トラッキング機能３０Ａを呼び出す。実行エンジン２９Ａは、エンジニアリングツール１から転送されたプログラム（実行用）２４に基づいてプログラムを実行し、演算結果をメモリ３１Ａに格納する。
【００１７】
トラッキング機能３０Ａは、エンジニアリングツール１から転送されたトラッキング設定２６に保存されたトラッキングエリア（アドレス）に対応するフィードバック値を、メモリ３１Ａから読み出して、エリアとともに対応するフィードバック値を待機系であるＣＮＳ７Ｂのトラッキング機能３０Ｂに転送し、トラッキング機能３０Ｂは待機系のＣＮＳ７Ｂにおけるメモリ３１Ｂにこの値を書き込む。
【００１８】
従来においてはプログラム実行中に制御系ＣＰＵがデータの変化を常に監視しており、そのための時間を使うのでプログラム実行時間が短くなってしまうが、本発明においては、エンジニアリングツール１を使用してフィードバック抽出等を行い、必要なデータのみを選択して制御系のＣＮＳ７Ａから待機系のＣＮＳ７Ｂにトラッキングすれば済むので、ＣＮＳ７Ａ、７Ｂがデータの変化を監視する必要がなくなり、その分一定周期内においてアプリケーションプログラムを実行するための時間を増やすことができる。又従来においては、制御系ＣＰＵは変化したデータを全て待機系ＣＰＵにトラッキングしていたので、トラッキングするための時間を多くとっていたが、本発明においては必要なデータのみを選択してトラッキングするのでトラッキングするための時間は一般的には短くなる。
【００１９】
実施の形態２．
図５はこの発明の実施の形態２によるプラントコントロールシステムの機能を示す構成図である。トラッキングが必要なエリアとして、フィードバックの他に、制御系のＣＮＳ７Ａ又は待機系のＣＮＳ７Ｂとプラント機器１１との間の入力、出力に関するメモリエリア（アドレス）がある。このようなメモリエリアが待機系のＣＮＳ７Ｂにトラッキングされていないと、制御系コントローラ７Ａと待機系コントローラ７Ｂが切り替わって、待機系コントローラ７Ｂが制御するようになった場合、不正なメモリの値（データ）によりプラント機器１１との間で入出力される可能性がある。
【００２０】
そこで本実施形態においては、プラント機器１１との入出力の設定について、メモリ３１Ａにおけるどのメモリエリアを入力として使うか、またどのメモリエリアを出力として使うかを、ＩＯ（入出力）設定ツール４１で設定する。設定結果は、ＩＯ設定４２に保存される。ＩＯ設定４２の一例を図６に示す。図６において、例えば出力エリアの１行目はＹ０から１２８点を出力するエリアとして使用するというように設定するものである。例えばＹ０から１２８点のメモリエリアが出力線を介してバルブなどにつながっている場合、Ｙ０をＯＮすればＹ０とつながったバルブがＯＮするというものである。
【００２１】
ＩＯ出力抽出機構４３は、ＩＯ設定４２とプログラム（作図）２２を参照し、プログラムで使用されている入出力メモリエリアを抽出して、トラッキング設定２６に保存する。図７はトラッキング設定２６の一例を示すものである。図７においては、Ｙ１００から１点と、Ｄ１２０から２点がプログラムで使用されていて、これらをトラッキングすることが必要であるという設定となっている。後の動作、即ちＣＮＳ７Ａへの転送や、ＣＮＳ同士でのトラッキング動作は、実施の形態１の場合と同様である。
【００２２】
以上のように構成することにより、実施の形態１の場合と同様に、ＣＮＳ７Ａ、７Ｂがデータの変化を監視する必要がないので、その分一定周期内においてアプリケーションプログラムを実行するための時間を増やすことができる。尚上記実施の形態１に示された動作と上記実施の形態２で示された動作を同時に行うようにしても良い。更に上記実施の形態１，２では、フィードバック機能をトラッキングする場合、及び入出力設定をトラッキングする場合について説明したが、プログラムを実行するための他のデータをトラッキングするようにしても良い。
【００２３】
実施の形態３．
図８はこの発明の実施の形態３によるプラントコントロールシステムの機能を示す構成図である。プログラムが複数ある場合、各々のプログラムが実行される前に必要なデータがトラッキングされていればよい。即ちあるプログラムが実行されない周期においては、そのプログラムが使用するデータをトラッキングする必要はない。
【００２４】
そこで本実施形態においては、フィードバック・タイミング抽出機構５１は、プログラム（作図）２２からトラッキングする必要のあるメモリエリアを抽出するだけでなく、そのメモリエリアがどのプログラムで使用されているかもトラッキング設定（タイミング付き）５２に保存する。即ちメモリエリアが使用されているプログラムの種類もトラッキング設定（タイミング付き）５２に保存する。
【００２５】
トラッキング設定（タイミング付き）５２の一例を図９に示す。図９において、プログラム１はＺＲ３２７６８から２点、ＺＲ３２４８９から１２点をフィードバックとして使用していて、プログラム１の実行前に、これらのメモリエリアをコピーすることが必要であることを示している。
【００２６】
このトラッキング設定（タイミング付き）５２は、実施の形態１の場合と同様に、ＣＮＳ７Ａに転送される。ＣＮＳ７Ａでは、タイミング同期トラッキング機能５３が、プログラムを実行する前に、当該プログラムで使用しているエリアのみをＣＮＳ７Ｂにコピーする。尚上記説明ではフィードバック抽出について説明したが、実施の形態２で示したシステムにおいて本実施形態で示した機能を付加するようにしても良い。
【００２７】
以上のように、必要なメモリエリアのみが制御系ＣＮＳ７Ａから待機系ＣＮＳ７Ｂにトラッキングされるので、トラッキングの時間を短くし、その結果一定周期内で実行できるアプリケーションプログラムの量を実施の形態１の場合と比べて更に増やすことができる。
【００２８】
実施の形態４．
図１０はこの発明の実施の形態４によるプラントコントロールシステムの機能を示す構成図である。本実施形態においては、トラッキングモードとして、トラッキング優先とプログラム実行優先の２つのモードを設ける。ユーザはトラッキングモード設定機能６１を使って、いずれかのモードを選択する。選択された結果はトラッキングモード設定６２に保存され、転送機能２７によってＣＮＳ７Ａに転送される。図１１はトラッキングモード設定６２を示す図である。
【００２９】
トラッキング機能３０Ａはトラッキングモード設定６２を参照し、設定に従ってトラッキングを行う。図１２はトラッキングモード設定による動作を経時的に示す図であり、図１２（ａ）はトラッキング優先モードを示し、図１２（ｂ）はプログラム優先モードを示している。トラッキング優先モードにおいては、制御系ＣＮＳ７Ａでは、トラッキングの準備、トラッキングデータの送信及びトラッキングデータの受信が完了してからプログラムを実行する。実行周期内でのプログラムを実行するための時間は短くなるが、異常が発生しＣＮＳ７Ｂに切り替えた後において、新制御系ＣＮＳ７Ｂは、１スキャン前のトラッキングデータでプログラムの実行を開始できる。
【００３０】
一方プログラム優先モードにおいては、制御系ＣＮＳ７Ａはトラッキングデータの送信、受信を待たずにプログラムの実行を開始する。ＣＮＳ７Ａ、７Ｂはプログラムの実行とトラッキングとを同時にしないのが一般的であるが、このプログラム優先モードにおいては敢えて同時に行おうとするものである。プログラム優先モードにおいては、実行周期内におけるプログラムを実行できる時間を長くすることができるが、トラッキングデータの送信、受信完了前に制御系ＣＮＳ７Ａで異常が発生した場合、新制御系ＣＮＳ７Ｂでは、２スキャン前のトラッキングデータでプログラムの実行を開始しなければならない。ただしトラッキングデータの送信、受信が完了してから異常が発生した場合には１スキャン前のトラッキングデータでプログラムを実行できる。
【００３１】
以上のように２つのモードを設けたので、切り替え時に前回の実行周期において得られたトラッキングデータが演算に大きな影響を与えないような場合（２スキャン前のトラッキングデータでプログラムを開始しても問題ない場合）、プログラム優先モードにすることで、実行周期内でのプログラム実行時間を長くすることができる。
【００３２】
実施の形態５．
図１３はこの発明の実施の形態５によるプラントコントロールシステムの機能を示す構成図である。トラッキング設定２６はフィードバックを単に抽出したものなので、中抜き状態になっている場合がある。例えば図４において、ＺＲ３２７６８〜ＺＲ３２７７０はトラッキングし、ＺＲ３２７７１〜ＺＲ３２４８８はトラッキングせず、更にＺＲ３２４８９〜ＺＲ３２４９１はトラッキングするというように、トラッキングするエリアとトラッキングしないエリアが混在することがある。
【００３３】
一般に制御系ＣＮＳ７Ａから待機系ＣＮＳ７Ｂへデータをトラッキングする場合は、バーストモード（ｂｕｒｓｔ  ｍｏｄｅ）が使用され、トラッキングエリアが連続している場合は高速にトラッキングできる場合が多いが、上記のようにトラッキングするエリアとトラッキングしないエリアが混在する状態でブロック毎にデータをトラッキングした場合一般に時間がかかることとなる。
【００３４】
そこでエンジニアリングツール１に設けられたトラッキングデータ整理・転送機構７１は、トラッキング設定２６において、上記のように連続しているが複数のブロックに分割されている場合に１つの領域にまとめて、ＣＮＳ７Ａに転送するようにする。このように、トラッキングするエリアを１つの領域にまとめるようにしたので、制御系ＣＮＳ７Ａから待機系ＣＮＳ７Ｂに対してバーストモードを使用して高速にトラッキングすることができ、トラッキングするための時間を短くし、アプリケーションプログラムを実行するための時間を長くとることができるようになる。
【図面の簡単な説明】
【００３５】
【図１】この発明の実施の形態１によるプラントコントロールシステムを示すブロック構成図である。
【図２】この発明の実施の形態１によるプラントコントロールシステムの機能を示す構成図である。
【図３】プログラム（作図）の一例を示すブロック構成図である。
【図４】トラッキング設定の一例を示す表である。
【図５】この発明の実施の形態２によるプラントコントロールシステムの機能を示す構成図である。
【図６】ＩＯ設定の一例を示す表である。
【図７】トラッキング設定の一例を示す表である。
【図８】この発明の実施の形態３によるプラントコントロールシステムの機能を示す構成図である。
【図９】トラッキング設定（タイミング付き）の一例を示す表である。
【図１０】この発明の実施の形態４によるプラントコントロールシステムの機能を示す構成図である。
【図１１】トラッキングモード設定を示す表である。
【図１２】トラッキングモード設定による動作を経時的に示す図（ａ）、（ｂ）である。
【図１３】この発明の実施の形態５によるプラントコントロールシステムの機能を示す構成図である。
【符号の説明】
【００３６】
１  エンジニアリングツール、７Ａ  制御系のコントローラ、
７Ｂ  待機系のコントローラ、１１  プラント機器、２６  トラッキング設定、
３０Ａ，３０Ｂ  トラッキング機能。
【図１】
2010128514.tif 000003
【図２】
2010128514.tif 000004
【図３】
2010128514.tif 000005
【図４】
2010128514.tif 000006
【図５】
2010128514.tif 000007
【図６】
2010128514.tif 000008
【図７】
2010128514.tif 000009
【図８】
2010128514.tif 000010
【図９】
2010128514.tif 000011
【図１０】
2010128514.tif 000012
【図１１】
2010128514.tif 000013
【図１２】
2010128514.tif 000014
【図１３】
2010128514.tif 000015