"複数のコントローラを有するプラント監視制御装置本体と、複数の前記コントローラと複数のプラント機器とを接続する1台のプロセス入出力装置と、複数の前記コントローラのそれぞれが実行する複数のプログラムが格納されたデータベースを有し、複数の前記コントローラと接続されるコントローラ管理装置と、を備え、前記コントローラ管理装置は、複数の前記コントローラのうちの第1のコントローラの負荷率と、前記第1のコントローラが実行しているプログラムの重要度と、前記第1のコントローラが使用しているデータの重要度とに従い、前記第1のコントローラが実行している処理を、複数の前記コントローラのうちの第2のコントローラに移すか否かを決定し、前記第2のコントローラは前記第2のコントローラの負荷率に従って決定され、前記第2のコントローラに、前記第1のコントローラが実行しているのと同じプログラムを前記データベースからインストールし、インストールしたプログラムを実行させ、前記第1のコントローラを休止させる、ことを特徴とするプラント省エネ制御装置。請求項1記載のプラント省エネ制御装置において、前記コントローラ管理装置は、前記第1のコントローラが実行しているプログラムが前記第2のコントローラに既にインストールされているかどうかを調べ、前記プログラムが前記第2のコントローラに既にインストールされている場合には、前記プログラムを前記データベースからインストールせず、既にインストールされている前記プログラムを前記第2のコントローラに実行させるプラント省エネ制御装置。請求項1記載のプラント省エネ制御装置において、前記1台のプロセス入出力装置は、複数の前記コントローラと複数の前記プラント機器とに対して、情報を送受信するプラント省エネ制御装置。請求項1記載のプラント省エネ制御装置において、前記コントローラ管理装置は、前記第1のコントローラが実行しているプログラムの重要度と、前記第1のコントローラが使用しているデータの重要度とから最終重要度を定め、複数の前記コントローラのうちの第1のコントローラの負荷率と前記最終重要度とに従い、前記第1のコントローラが実行している処理を、前記第2のコントローラに移すか否かを決定するプラント省エネ制御装置。複数のコントローラを有するプラント監視制御装置本体と、複数の前記コントローラと複数のプラント機器とを接続する1台のプロセス入出力装置と、複数の前記コントローラのそれぞれが実行する複数のプログラムが格納されたデータベースを有し、複数の前記コントローラと接続されるコントローラ管理装置と、を備え、前記コントローラ管理装置は、複数の前記コントローラのうちの第1のコントローラの負荷率に従い、前記第1のコントローラが実行している処理の一部を、複数の前記コントローラのうちの第2のコントローラに移すか否かを決定し、前記第2のコントローラは前記第2のコントローラの負荷率に従って決定され、前記第2のコントローラが休止している場合には、前記第2のコントローラを起動させ、前記第2のコントローラに、前記第1のコントローラが実行しているのと同じプログラムを前記データベースからインストールし、インストールしたプログラムを実行させ、前記第1のコントローラと前記第2のコントローラで処理を実行させる、ことを特徴とするプラント省エネ制御装置。従来のプラント制御装置では、プラント制御装置が有する複数台のコントローラのそれぞれに、制御用プログラムが割り当てられている。このため、プラントを監視制御するために、常にすべてのコントローラを稼動させており、電源を切ってコントローラを休止させることは困難である。このため、プラント制御装置は、消費する電力が大きくなっており、省エネ省電力稼動を実現することが望まれている。また、省エネ省電力稼動のために、コントローラ間でプログラムを移動させてそれぞれのコントローラの負荷を分散させると、どのコントローラでどの処理を実行するかという制御や管理が難しくなる。本発明は、各コントローラで実行するプログラムの制御や管理が容易であり、省エネ省電力稼動を実現することが可能なプラント制御装置プラント省エネ制御装置を提供することを目的とする。本発明によるプラント省エネ制御装置は、次のような特徴を持つ。複数のコントローラを有するプラント監視制御装置本体と、複数の前記コントローラと複数のプラント機器とを接続する1台のプロセス入出力装置と、複数の前記コントローラのそれぞれが実行する複数のプログラムが格納されたデータベースを有し、複数の前記コントローラと接続されるコントローラ管理装置とを備える。前記コントローラ管理装置は、複数の前記コントローラのうちの第1のコントローラの負荷率と、前記第1のコントローラが実行しているプログラムの重要度と、前記第1のコントローラが使用しているデータの重要度とに従い、前記第1のコントローラが実行している処理を、複数の前記コントローラのうちの第2のコントローラに移すか否かを決定する。前記第2のコントローラは、前記コントローラ管理装置により、前記第2のコントローラの負荷率に従って決定される。前記コントローラ管理装置は、前記第2のコントローラに、前記第1のコントローラが実行しているのと同じプログラムを前記データベースからインストールし、インストールしたプログラムを実行させ、前記第1のコントローラを休止させる。本発明によれば、各コントローラで実行するプログラムの制御や管理が容易であり、省エネ省電力稼動を実現することが可能なプラント省エネ制御装置を提供することができる。本発明によるプラント省エネ制御装置は、プラント監視制御装置本体とコントローラ管理装置を備える。プラント監視制御装置本体は、複数台のコントローラを備え、コントローラに配置された制御用プログラムによって、プラントのフィールド装置プラント機器を監視制御する。コントローラ管理装置は、プラント監視制御装置本体に接続され、プラント監視制御装置本体の各コントローラの負荷率と各コントローラで実行中の制御用プログラムや使用中のデータの重要度とを、あらかじめ定めた一定時間ごとに求める。そして、負荷率が低く、重要度の低い処理を実行しているコントローラに対しては、そのコントローラが実行中の制御を自動的に他のコントローラへ移動させた後、電源を切って休止させる。動作させる必要のないコントローラを休止させることにより、消費電力を低減し、省エネ省電力稼動が可能なプラント省エネ制御装置を実現することができる。また、コントローラ管理装置により、コントローラを常時監視し、必要な制御用プログラムを各コントローラにインストールするので、各コントローラで実行する制御用プログラムの制御や管理が容易である。なお、本実施例での制御用プログラムとは、プラントのフィールド装置を監視制御するための動作を実行させる機能を記述するプログラムのことである。すなわち、制御用プログラムは、例えばバルブの開閉、配管の温度や流量の制御などという機能ごとに、記述されているものとする。コントローラで使用するデータとは、フィールド装置が出力したプラントデータのことであり、例えば計測データやプラントの異常を知らせるためのデータが含まれる。また、本実施例において、コントローラを休止させるとは、単にコントローラの動作を停止させることや電源が供給されているスタンバイ状態にさせることではなく、コントローラの電源を切ることコントローラに電源を供給しないことを指す。上記の処理を実現するため、本発明によるプラント省エネ制御装置では、制御用プログラムは、特定のコントローラに固定して配置せず、コントローラ管理装置から各コントローラへオンラインでシームレスに柔軟に配置可能とする。さらに、各コントローラの負荷率だけでなく、実行中のプログラムや使用中のデータの重要度に従い、各コントローラの制御を他のコントローラに移すことの可否を判断する。制御の移動先となるコントローラは、そのコントローラの負荷率に従って定める。また、必要に応じて休止中のコントローラを起動させて、制御を移動して実行させる。従来のプラント制御装置において、複数台のCPU間で負荷を分散平準化する技術は知られている。しかし、あらかじめ各コントローラに制御用プログラムを固定的に割り当てず、各コントローラの負荷率と各コントローラで実行中のプログラムや使用中のデータの重要度とを監視し、どのコントローラにどの制御を行わせるかを上位のコンピュータコントローラ管理装置で判断した後、必要な制御用プログラムを適切なコントローラにコントローラ管理装置からシームレスに再配置インストールすることにより、動作させる必要のないコントローラの電源を切って休止させ、消費電力の削減へつなげるという発想はなかった。本発明は、単にプラント制御装置の消費電力量の低減に寄与するだけでなく、コントローラの台数の削減や、コントローラの故障時におけるバックアップの対応容易性など、システムの可用性と堅牢性の向上にも寄与すると考えられる。図1を用いて、本発明の実施例によるプラント省エネ制御装置の概略を説明する。プラント省エネ制御装置は、プラント監視制御装置本体110と、コントローラ管理装置100と、統合されたプロセス入出力装置130とを備える。プラント監視制御装置本体110は、統合されたプロセス入出力装置130とケーブルで接続される。統合されたプロセス入出力装置130は、プラントのフィールド装置プラント機器121、122、123、124とケーブルで接続され、プラントデータを受信する。フィールド装置121~124の例としては、アクチュエーターやセンサを挙げることができる。プラント監視制御装置本体110は、複数台のコントローラ111、112、113、114を備え、コントローラ111~114を用い、統合されたプロセス入出力装置130を介して、フィールド装置121~124を監視制御する。コントローラ111~114には、初期設定として、あらかじめ制御用プログラムが配置インストールされている。初期設定では、各コントローラ111~114に対して、任意に制御用プログラムを配置することができる。コントローラ111~114は、それぞれに配置された制御用プログラムを実行して、統合されたプロセス入出力装置130を介して、フィールド装置121~124に対して制御信号を出力し、かつフィールド装置121~124が出力したプラントデータを受信する。統合されたプロセス入出力装置130は、コントローラ111~114からの制御信号を受信してフィールド装置121~124に出力し、フィールド装置121~124からのプラントデータを受信してコントローラ111~114に出力する。すなわち、統合されたプロセス入出力装置130は、1台のプロセス入出力装置で、複数台のコントローラと複数台のフィールド装置とに対して情報を送受信する。図4は、従来のプラント制御装置の概略を示す図である。図4に示すように、従来のプラント制御装置では、コントローラ111~114は、それぞれに接続されたプロセス入出力装置131、132、133、134を介して、フィールド装置121~124とそれぞれ接続され、フィールド装置121~124をそれぞれ監視制御する。従って、従来のプラント制御装置では、コントローラ111~114のそれぞれには、プロセス入出力装置131~134を介して接続されるフィールド装置121~124に応じた制御用プログラムや制御機能が配置されている。しかし、本実施例のプラント省エネ制御装置では、コントローラ111~114のすべては、1台の統合されたプロセス入出力装置130を介して、すべてのフィールド装置121~124と接続可能である。これにより、どのコントローラ111~114でも、フィールド装置121~124のうち任意のフィールド装置の監視制御が可能である。統合されたプロセス入出力装置130の、各コントローラ111~114とフィールド装置121~124に対する入出力処理は、従来のプロセス入出力装置がコントローラやフィールド装置に対して行う入出力処理と同じである。図1に示すように、コントローラ管理装置100は、コントローラ管理装置100を司る本体装置102と、コントローラ111~114のそれぞれが実行する複数の制御用プログラムを格納した制御用プログラムデータベース103と、ディスプレイ101、キーボード、及びマウス等の入出力装置とを備える。また、コントローラ管理装置100は、プラントデータのデータベース104に、フィールド装置121~124が出力してプラント監視制御装置本体110が受信したプラントデータを格納することができる。本体装置102は、後述する重要度を登録するためのテーブルを保存することができ、プラント監視制御装置本体110と接続されていて、コントローラ省エネ運転制御プログラムを実行する。コントローラ省エネ運転制御プログラムにより、本体装置102は、プラント監視制御装置本体110が受信したプラントデータを基にして、制御情報の計算解析を行って最適な制御指令をプラント監視制御装置本体110に送信したり、プラント情報をディスプレイ101に表示したりすることができる。本実施例では、コントローラ111~114が実行する制御用プログラムは、コントローラ111~114のそれぞれに固定的に割り当てるのではない。制御用プログラムは、コントローラ管理装置100内にある制御用プログラムデータベース103に、すべてを集約させて格納しておく。そして、本体装置102は、プラント監視制御装置本体110のコントローラ111~114の負荷率とコントローラ111~114で実行中のプログラムと使用中のデータの重要度とに応じて、どのコントローラにどの制御を行わせるかを判断し、必要な制御用プログラムを制御用プログラムデータベース103から適切なコントローラに配置インストールする。そして、負荷率が低く、重要度の低い処理を実行しているコントローラを休止させる。以下、コントローラに制御用プログラムを最適に配置し、負荷率が低く重要度の低い処理を実行しているコントローラを休止させるための具体的な方法について説明する。コントローラ管理装置100の本体装置102には、制御用プログラムごとに、その制御の重要度すなわち、プログラムに記述された機能の重要度をあらかじめテーブルに登録しておく。また、各コントローラ111~114が使用するデータごとに、その重要度を別のテーブルにあらかじめ登録しておく。重要度は任意に定めて表してよいが、本実施例では一例として、重要度の高い順に高中低の3段階で表す。本体装置102は、プラント監視制御装置本体110が備える各コントローラ111~114の負荷率を、あらかじめ定めた一定時間ごとに求める。負荷率は、任意の既知の方法で求めることができる。さらに、本体装置102は、負荷率を求めるのと並行して、各コントローラ111~114が実行している制御用プログラムと使用しているデータの重要度を一定時間ごとに求める。このとき、本体装置102は、次に実行する制御用プログラムや次に使用するデータを知ることができるので、各コントローラ111~114が現在実行している制御用プログラムや現在使用しているデータの重要度だけでなく、次に実行する制御用プログラムや次に使用するデータの重要度も求めることができる。そして、本体装置102は、求めた負荷率と重要度に応じて、各コントローラ111~114を休止するか否かを判断する。本実施例では、本体装置102は、各コントローラ111~114が実行している制御用プログラムと使用しているデータの重要度とから、各コントローラ111~114の最終重要度を求め、この最終重要度と負荷率に応じて、各コントローラ111~114を休止するか否かを判断する。図2は、制御用プログラムの重要度とデータの重要度とからコントローラの最終重要度を定める方法を示す表である。各コントローラ111~114の最終重要度は、図2に示すように、制御用プログラムの重要度とデータの重要度に応じてAまたはBと定める。すなわち、制御用プログラムの重要度が高の場合は、データの重要度に依らず最終重要度をAとし、データの重要度が高の場合は、制御用プログラムの重要度に依らず最終重要度をAとし、制御用プログラムの重要度とデータの重要度の両方が中または低の場合は、最終重要度をBとする。最終重要度がAのコントローラが実行している制御は、他のコントローラへ移さず、最終重要度がBのコントローラが実行している制御は、他のコントローラへ移すものとする。図3は、あるコントローラで実行中の制御を他のコントローラへ移動させる処理方法を示すフロー図である。本体装置102は、あらかじめ定めた一定時間ごとに図3に示す処理を行い、負荷率が低く最終重要度がBであるコントローラに対し、実行中の制御を他のコントローラへ移動させた後、電源を切って休止させる。本処理は、コントローラの数だけ行うS301。プラント監視制御装置本体110は、図1に示したようにN台のコントローラを有するものとする。また、各コントローラは、コントローラiやコントローラjやコントローラkなどと、アルファベットの添え字をつけて区別する1≦i,j,k≦N。S302では、コントローラiについて負荷率Liを求める。S303で、コントローラiの負荷率Liと負荷率のしきい値Xを比較する。負荷率のしきい値Xは、任意の値とすることができ、あらかじめ定めておく。例えば、X=30とする。負荷率Liがしきい値Xより小さい場合は、S304に進み、負荷率Liがしきい値X以上の場合は、S321に進む。S304では、コントローラiについて最終重要度を定める。最終重要度は、前述したように、コントローラiが実行している制御用プログラムと使用しているデータの重要度とを求め、図2に従ってこれらの重要度から定める。S305の判定処理において、最終重要度がBの場合は、コントローラiが実行している制御を他のコントローラへ移動させるものとし、制御の移動先のコントローラを探す処理S306~S310を行う。最終重要度がBでない場合すなわち、最終重要度がAの場合は、コントローラiが実行している制御を他のコントローラへ移さない。S306~S310は、コントローラiが実行している制御を移動するコントローラを探す処理である。この処理は、コントローラi以外のコントローラに対して行うS306。S307では、コントローラjただしi≠jについて負荷率Ljを求める。S308で、コントローラjの負荷率Ljと負荷率のしきい値Yを比較する。負荷率のしきい値Yは、任意の値とすることができ、あらかじめ定めておく。負荷率のしきい値Yは、S303で用いた負荷率のしきい値Xと同じ値でも異なる値でもよい。負荷率Ljがしきい値Y以上の場合、コントローラjは、負荷率の高い制御を実行しており、コントローラiが実行している制御の移動先として適当ではない。この場合は、S310に進む。一方、負荷率Ljがしきい値Yより小さい場合、コントローラjは、負荷率の低い制御を実行しているか休止中であるので、コントローラjをコントローラiが実行している制御の移動先の候補とする。この場合は、S309に進む。S309では、制御の移動先の候補であるコントローラjが休止中かどうか判定する。コントローラjが休止中の場合は、S310に進み、コントローラiが実行している制御をコントローラjに移動させない。コントローラjが休止中でない場合は、S311に進み、コントローラjをコントローラiが実行している制御の移動先とする。S310は、コントローラjに、コントローラiが実行している制御を移動させない場合の処理である。コントローラi以外のすべてのコントローラについてS307~S309の処理を行ったかどうか調べるすなわち、S307~S309の処理をN-1回行ったかどうか調べる。コントローラi以外のすべてのコントローラについてS307~S309の処理を行っていない場合S307~S309の処理をN-1回行っていない場合は、S306に戻る。コントローラi以外のすべてのコントローラについてS307~S309の処理を行った場合S307~S309の処理をN-1回行った場合は、S311~S313の処理を行わず、S301に戻って、次のコントローラコントローラi1に対してS302以下の処理を行う。S311では、コントローラiが実行しているのと同じ制御用プログラムを、コントローラ管理装置100の制御用プログラムデータベース103からダウンロードし、コントローラjにインストールする。このとき、コントローラjは、コントローラjで実行中の制御と並行して、制御用プログラムのインストールが可能であるものとする。S312では、コントローラjに、インストールした制御用プログラムを実行させて、コントローラiの制御を移動させる。このとき、制御用プログラムのダウンロードとインストールが完全にできていて、コントローラjが制御用プログラムを実行したときに支障がないかを確認する。さらに、コントローラjへ処理を切り替えるタイミングのスケジューリングを行い、コントローラiを安全に休止させるための処理を行う。S313では、コントローラiを休止させる。S321は、S303でコントローラiの負荷率Liが負荷率のしきい値X以上の場合の処理である。S321では、負荷率Liと負荷率のしきい値Zを比較する。負荷率のしきい値Zは、任意の値とすることができ、あらかじめ定めておく。ただし、しきい値Zは、しきい値Xより大きい値とする。例えば、Z=50とする。負荷率Liがしきい値Zより大きい場合は、コントローラiではこれ以上の処理ができないと判断する。そこで、コントローラiの負荷率を低減するために、コントローラiが実行している制御の一部を他のコントローラへ移動させるものとし、制御の移動先のコントローラを探す処理S322~S324を行う。S322~S324は、コントローラiが実行している制御を移動するコントローラを探す処理である。この処理は、コントローラi以外のコントローラに対して行うS322。S323では、コントローラkただしi≠kについて負荷率Lkを求める。S324で、コントローラkの負荷率Lkと負荷率のしきい値Yを比較する。負荷率Lkがしきい値Y以上の場合、コントローラkは、負荷率の高い制御を実行しており、コントローラiが実行している制御の移動先として適当ではない。この場合は、S322~S324の処理を続行する。一方、負荷率Lkがしきい値Yより小さい場合、コントローラkは、負荷率の低い制御を実行しているか休止中であるので、コントローラiが実行している制御の移動先とする。この場合は、S322~S324の処理をやめて、S325に進む。S325では、制御の移動先であるコントローラkが休止中かどうか判定する。コントローラkが休止中の場合は、S326で、コントローラkを起動させる。S327では、コントローラiが実行しているのと同じ制御用プログラムを、コントローラ管理装置100の制御用プログラムデータベース103からダウンロードし、コントローラkにインストールする。このとき、コントローラkは、コントローラkで実行中の制御と並行して、制御用プログラムのインストールが可能であるものとする。S328では、コントローラkに、インストールした制御用プログラムを実行させて、コントローラiの制御の一部を移動させる。すなわち、コントローラiが実行している制御を、コントローラiとコントローラkで分担して実行させる。コントローラiとコントローラkは、互いに異なった処理を行う。このとき、制御用プログラムのダウンロードとインストールが完全にできていて、コントローラkが制御用プログラムを実行したときに支障がないかを確認する。さらに、コントローラkに処理を実行させるタイミングのスケジューリングを行う。コントローラ管理装置100の本体装置102は、以上の一連の処理を、コントローラ1からコントローラNのそれぞれに対して、あらかじめ定めた一定時間ごとに実行する。なお、S324において、すべてのコントローラkただしk≠jについて負荷率Lkがしきい値Y以上の場合は、負荷率の低い制御を実行しているコントローラがない場合である。この場合は、コントローラiが実行している制御を移動するコントローラがないので、S301に戻って、次のコントローラコントローラi1に対してS302以下の処理を行う。S311とS327において、コントローラjやコントローラkに制御用プログラムをインストールするとき、既にコントローラjやコントローラkにインストールされている制御用プログラムは、削除してもよいし、削除せずにコントローラjやコントローラkが保持したままにしておいてもよい。既にインストールされている制御用プログラムを削除しない場合には、各コントローラは、複数の制御用プログラムを保持する。すなわち、各コントローラは、複数の制御用プログラムを格納することができる。各コントローラが複数の制御用プログラムを格納することができる場合には、S311とS327において、本体装置102は、インストールしようとしている制御用プログラムが既にコントローラjやコントローラkにインストールされているかどうかを調べる。調べる方法は任意であるが、例えば、本体装置102がインストールログを記録して保存しておき、このインストールログを参照する方法や、コントローラが休止していない場合には、コントローラに格納されているプログラムを検索する方法がある。インストールしようとしている制御用プログラムが既にコントローラjやコントローラkにインストールされている場合は、この制御用プログラムをインストールしないものとする。コントローラjやコントローラkは、S312やS328では、既にインストールされている制御用プログラムを実行する。このようにすると、制御用プログラムのインストール処理を省略できるので、コントローラが実行する制御の移動処理にかかる時間を短縮することができる。S326において、休止中のコントローラkを起動させる。一般に、休止中のコントローラを起動させる再起動させるのには、時間がかかる。これに対処するためには、休止中のコントローラkを起動させるのに必要な時間を考慮に入れた上で、十分に時間に余裕を持たせてS302、S303、S321~S325の処理を行う。これにより、制御用プログラムをシームレスにコントローラkにインストールすることができる。制御用プログラムをシームレスに適切なコントローラにインストールするために、各コントローラのOS基本ソフトやミドルウェアは、各コントローラが最適の効率で制御用プログラムを実行できるようにスケジューリングを独自に行う。そして、各コントローラは、制御用プログラムのインストールとプラントの監視制御とを両立して実行する。"