説明

PIDコントローラのチューニング装置、PIDコントローラのチューニング用プログラムおよびPIDコントローラのチューニング方法

【課題】PIDコントローラが、精度良くプロセスを制御できるようにする。
【解決手段】チューニング装置100では、コントローラ10とプロセス20から構成される実際のシステムの操業データが利用されて、仮想のコントローラ51と仮想のプロセス52のモデル化が行なわれ、そして、得られたプロセス52のモデルが用いられて、コントローラ51の最適な制御パラメータが算出される。コントローラ10のチューニングに際し、算出された制御パラメータの数値を参考にすることができる。なお、チューニング装置100では、コントローラ51(制御ループ)ごとに制御性を評価し、制御性が低いと判断されたコントローラ51についてのみ、上記のモデル化や最適な制御パラメータの算出等が実行される場合がある。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、PID(proportional-integral-derivative)コントローラのチューニングに関し、特に、PIDコントローラのチューニング不良により操業データが周期振動しているようなシステムに対し、適切なPIDパラメータを与えることにより当該チューニング不良を解消し、制御性を向上するための、PIDコントローラのチューニング装置、PIDコントローラのチューニング用プログラムおよびPIDコントローラのチューニング方法に関する。
【背景技術】
【0002】
従来から、プロセスのコントローラでのPID制御に対するチューニング方法に関し、多数の技術が開示されている。たとえば、特許文献1では、プラントに同定用信号を与えることなくプロセスを同定し、同定したプロセスモデルとPIDコントローラのモデルを用いたシミュレーションを行うことによって、その結果を評価し、最適なPIDパラメータを取得する技術が開示されている。
【特許文献1】特開2002−202801号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
なお、プロセスの制御に際し、プロセスの特性や外乱の大きさによってその制御特性が変動すると考えられる。そして、プラントにおけるプロセスの制御についての精度の向上は、常に求められていることである。
【0004】
本発明は係る実情に鑑み考え出されたものであり、その目的は、プロセスをコントローラで制御するシステムにおいて、精度良くプロセスを制御できるPIDコントローラのチューニング装置、PIDコントローラのチューニング用プログラムおよびPIDコントローラのチューニング方法を提供することである。
【課題を解決するための手段】
【0005】
本発明のPIDコントローラのチューニング装置は、プロセスをPID(proportional-integral-derivative)制御するコントローラをチューニングする装置であって、前記プロセスの操業データを取得して記憶する記憶手段と、前記プロセスの操業データに基づいて、前記コントローラの制御性を評価する評価手段と、前記評価手段によって制御性が低いと評価されたことを条件として、前記取得した操業データを使って、コントローラのモデルに対する制御パラメータと、一定の制限に基づくプロセスのモデルに対するプロセスパラメータとを同定する同定手段と、前記同定手段が同定した前記制御パラメータおよび前記プロセスパラメータに基づく前記コントローラのモデルと前記プロセスのモデルを用いて、前記プロセスの制御応答のシミュレーションを実行するシミュレーション手段とを備えることを特徴とする。
【0006】
また、本発明のPIDコントローラのチューニング装置では、前記同定手段は、前記一定の制限として、前記プロセスのモデルを、むだ時間と積分系を含む二次遅れ系の動的モデルとし、前記操業データとして、周期振動をしているデータを使ってパラメータを同定することが好ましい。
【0007】
また、本発明のPIDコントローラのチューニング装置では、前記同定手段は、遺伝的アルゴリズムに基づいて前記制御パラメータと前記プロセスパラメータを同定することが好ましい。
【0008】
また、本発明のPIDコントローラのチューニング装置は、前記同定手段で得た前記プロセスのモデルを用い、一般化最小分散制御に基づき、前記プロセスのモデルにおける制御量の分散とコントローラのモデルにおける操作量の分散とを評価し、その評価値が最小となる最適な制御パラメータを算出する算出手段をさらに備え、前記シミュレーション手段は、前記算出手段が算出した前記最適な制御パラメータに基づく前記コントローラのモデルと、前記同定手段が同定した前記プロセスパラメータに基づく前記プロセスのモデルとを用いて、前記シミュレーションを実行することが好ましい。
【0009】
また、本発明のPIDコントローラのチューニング装置は、前記算出手段が算出した最適な制御パラメータを変更する入力手段と、前記変更したパラメータに基づく前記コントローラのモデルおよび前記プロセスのモデルを用いて前記シミュレーションを実行する手段をさらに備えることが好ましい。
【0010】
本発明のPIDコントローラのチューニング用プログラムは、プロセスをPID(proportional-integral-derivative)制御するコントローラをチューニングするプログラムであって、コンピュータに、前記プロセスの操業データを取得して記憶するステップと、前記プロセスの操業データに基づいて、前記コントローラの制御性を評価するステップと、前記制御性が低いと評価されたことを条件として、前記取得した操業データを使って、コントローラのモデルに対する制御パラメータと、一定の制限に基づくプロセスのモデルに対するプロセスパラメータとを同定するステップと、前記同定するステップで得た前記プロセスのモデルを用い、一般化最小分散制御に基づいて、前記プロセスのモデルにおける制御量の分散とコントローラのモデルにおける操作量の分散とを評価し、その評価値が最小となる最適な制御パラメータを算出するステップと、前記同定したプロセスパラメータと前記同定した制御パラメータに基づいて、前記プロセスの制御応答のシミュレーションを実行するステップと、前記同定したプロセスパラメータと前記算出した最適な制御パラメータに基づいて、前記プロセスの制御応答のシミュレーションを実行するステップとを実行させることを特徴とする。
【0011】
本発明のPIDコントローラのチューニング方法は、プロセスをPID(proportional-integral-derivative)制御するコントローラをチューニングする方法であって、前記プロセスの操業データを取得して記憶するステップと、前記プロセスの操業データに基づいて、前記コントローラの制御性を評価するステップと、前記制御性が低いと評価されたことを条件として、前記取得した操業データを使って、コントローラのモデルに対する制御パラメータと、一定の制限に基づくプロセスのモデルに対するプロセスパラメータとを同定するステップと、前記同定するステップで得た前記プロセスのモデルを用い、一般化最小分散制御に基づいて、前記プロセスのモデルにおける制御量の分散とコントローラのモデルにおける操作量の分散とを評価し、その評価値が最小となる最適な制御パラメータを算出するステップと、前記同定したプロセスパラメータと前記同定した制御パラメータに基づいて、前記プロセスの制御応答のシミュレーションを実行するステップと、前記同定したプロセスパラメータと前記算出した最適な制御パラメータに基づいて、前記プロセスの制御応答のシミュレーションを実行するステップとを備えることを特徴とする。
【発明の効果】
【0012】
本発明によれば、プロセスの実際の操業データに基づいて、コントローラのモデルとプロセスのモデルの双方が同定され、シミュレーションが実行される。
【0013】
これにより、コントローラで制御されている閉ループシステムに対して、より精度良く同定することが可能になると考えられ、このことから、その制御特性をより正確に把握でき、チューニング不良を解消して制御性を向上させる最適なPIDパラメータを算出することが可能となる。
【0014】
また、本発明によれば、プロセスの操業データに基づいて、コントローラの制御性が評価され、制御性が低いと評価されたことを条件として、制御パラメータとプロセスパラメータの同定やシミュレーションが実行される。
【0015】
これにより、制御パラメータやプロセスパラメータの同定等の処理が、必要なときにのみ実行されるため、チューニングのための処理が効率良く実行されることとなる。
【発明を実施するための最良の形態】
【0016】
[1.PIDコントローラのチューニング装置の構成]
本実施の形態のチューニング装置は、プラント内の単数または複数のコントローラを順
次チューニングするための装置である。図1に、当該チューニング装置のハードウェア構成を模式的に示す。
【0017】
図1を参照して、チューニング装置100は、当該チューニング装置100の動作を全体的に制御するCPU(central processing unit)101を含む。また、チューニング装置100では、CPU101は、入出力装置(I/O)102を介して、他の要素との間で情報の送受信を行う。
【0018】
CPU101は、I/O102を介して通信制御部109に接続され、当該通信制御部109を介して、他の装置やネットワークに接続する。そして、CPU101は、外部の装置やネットワーク上のサーバなどから、上記したようなプラントの操業データを取得する。
【0019】
ハードディスク(HD)103には、CPU101が実行するプログラムを記憶するプログラム記憶部103A、および、上記のように取得した操業データを記憶する操業データ記憶部103Bを含む。また、HD103には、プログラム記憶部103Aに記憶されたプログラムをCPU101が実行する際に必要とされる定数や変数の値など、各種のデータが記憶されているものとする。CPU101は、I/O102を介して、HD103にアクセスする。
【0020】
チューニング装置100には、CPU101のワークエリアとして機能するRAM(random access memory)105、キーボード等の外部からの情報の入力を受付ける入力部106、チューニング装置100に対して着脱可能な記録媒体104Aに対する情報の書込および読込を行うメディアドライブ104、ならびに、CPU101の処理内容等を表示する表示部108を含む。
【0021】
CPU101は、HD103のプログラム記憶部103Aに記録されたプログラムを実行することもできるし、記録媒体104Aに記録されたプログラムを実行することもできる。また、チューニング装置100は、プログラム記憶部103Aに、記録媒体104Aに記録されたプログラムや通信制御部109を介して外部の記憶装置に格納されたプログラムをインストールすることもできるし、また、通信制御部109を介して他の機器に記録されているプログラムを読込んで実行することもできる。
【0022】
[2.システム同定のコンセプト]
チューニング装置100は、図11にブロック線図を示すような閉ループシステムに対して、制御性を評価し、制御性が低いと評価されたものに対して、コントローラとプロセスの双方を同定する。そして、当該同定結果として得られるプロセスのモデルを用いて、コントローラがプロセスを制御する際のパラメータとして最適な制御パラメータを算出する。
【0023】
なお、図11において、rは図11に示されたシステムに対する目標値を示し、uはプロセスPに対するコントローラCの操作量を示し、yはプロセスPの出力である制御量を示し、wは外乱を示している。
【0024】
図11に示したようなシステム(閉ループシステム)について、次の伝達関数表現で示した式(1)の関係が成り立つ。
【0025】
【数1】

【0026】
式(1)において、C,Pは、それぞれコントローラ,プロセスを表わす伝達関数を示している。また、U(s),Y(s)は,それぞれ上記した操作量u(t)と制御量y(t)をラプラス変換したものである。
【0027】
式(1)から実際のシステムにおけるコントローラとプロセスを同定しようとした場合、コントローラとプロセスの伝達関数(C,P)双方が未知で、かつ、コントローラとプロセスの伝達関数(C,P)が分離できないため、閉ループのシステム同定は困難とされてきた。
【0028】
ここで、図2に、本実施の形態において設定された、システム同定のための仮想のシステム構成を模式的に示す。
【0029】
図2では、実際のプラントにおけるコントローラとプロセスは、それぞれコントローラ10,プロセス20として示されている。なお、本実施の形態では、これらのシステムと並列して、仮想のコントローラ51と仮想のプロセス52が定義されている。ここで、u′とy′は、それぞれ、仮想のシステムにおける操作量と制御量である。
【0030】
本実施の形態では、コントローラ10とプロセス20とから構成される実際のシステムの操業データを利用して、仮想のコントローラ51と仮想のプロセス52のモデル化を行う。
【0031】
そして、このようにして得られたプロセス52のモデルを用いて、コントローラ51の最適な制御パラメータを算出し、その値を参考に、実際のコントローラ10のチューニングを行う。
【0032】
図3は、チューニング装置100の機能的な構成を模式的に示す図である。
図3を参照して、チューニング装置100では、仮想のコントローラ51と仮想のプロセス52に対して、パラメータ処理部54が、それぞれのモデルに用いられているパラメータの初期値の発生等の処理(後述する遺伝的アルゴリズムを用いたシステム同定における初期世代の固体の発生)を実行する。そして、適応度算出部53は、その時点のパラメータを用いてu′およびy′を算出し、これらの値が実際の操業データにおけるuおよびyとどの程度近いものであるかを示す値を算出する。
【0033】
パラメータ処理部54は、適応度算出部53による度合の算出が行われると、新たにコントローラ51とプロセス52のモデルについてのパラメータを発生する。適応度算出部53は、パラメータ処理部54によって新たなパラメータが提供されると、当該新たなパラメータに基づいて上記したような適応度を算出する。
【0034】
チューニング装置100では、パラメータ処理部54と適応度算出部53による上記のような処理を繰返すことによって、コントローラ51とプロセス52のそれぞれが実際のコントローラとプロセスに合致するようにパラメータを修正し、これにより、コントローラ10およびプロセス20を同定している。
【0035】
本実施の形態において、パラメータ処理部54は、後述するシステム同定処理(図5参照)において、初期設定処理(初期世代の個体の発生)、交差処理、および突然変異処理を実行するCPU101によって実現される。また、適応度算出部53は、当該システム同定処理において、選択処理を実行するCPU101によって実現される。
【0036】
[3.PIDコントローラのチューニングのための処理]
図4は、チューニング装置100がコントローラ10のチューニングのために実行する処理のフローチャートである。
【0037】
図4を参照して、チューニング装置100では、コントローラのチューニングのための処理として、CPU101は、まずステップS1で、コントローラ10とプロセス20を含むシステムの操業データを通信制御部109を介して取得し、操業データ記憶部103Bに記憶させる処理を実行して、ステップS1Aへ処理を進める。
【0038】
ステップS1で取得される操業データの構成の一例を表1に示す。
【0039】
【表1】

【0040】
本実施の形態でチューニング装置100が取得する操業データには、所定の時間間隔(表1では、1分間隔)の、コントローラ10に関する目標値r、制御量y、操作量uの値が含まれる。
【0041】
ステップS1Aでは、処理対象となっている制御ループの制御量について、制御性を評価する。本実施の形態では、制御性の評価は、たとえば、制御量の周期性の有無か、最小分散制御に基づく制御性評価指標の値によって判断される。
【0042】
周期性の有無の判断としては、たとえば、制御量のデータのパワースペクトルを計算し、ある一定の値(たとえば、15dB)を超えるピークが当該パワースペクトルにおいて存在する場合には、周期性があると判断する。ここで、パワースペクトルの計算について説明する。
【0043】
まず、制御量の時系列データ「x(t)」を、平均0、分散1となるように、次の式(A1)で規格化する。
【0044】
【数2】

【0045】
そして、規格化されたデータを、フーリエ変換し、次の式(A2)を使ってパワースペクトルを計算する。
【0046】
【数3】

【0047】
制御量のデータのパワースペクトルにおける周期性の有無の判断態様は、周知の技術(たとえば、文献(久下本秀和、プラント運転データを活用したバルブ固着検出と制御性能改善、計装制御技術会議、日本、日本能率協会、2006年)を参照)を適用できるものとする。そして、周期性が有ると判断された場合には、制御性が低いと判断されることとなる。
【0048】
次に、最小分散制御に基づく制御性評価法による制御性の評価について説明する。
ここで、制御性評価指標とは、次の式(A3)に従って算出される制御性評価指標ηである。なお、式(A3)において、σMV2は制御量の最小分散であり、σy2は実際の制御量の分散であり、d−1は、制御ループにおけるむだ時間を表わしている。なお、ηは、0から1の値をとる。
【0049】
【数4】

【0050】
本実施の形態では、制御性評価指標ηの値が予め定められた閾値の値以上である場合には制御性が高いと判断され、当該閾値よりも小さい場合には制御性が低いと判断される。
【0051】
そして、CPU101は、ステップS1Aで制御性の評価を行なった後、ステップS1Bで、評価の結果、制御性が良好であるか否か、つまり、制御性が高いか否かを判断する。そして、CPU101は、制御性が高いと判断すると図4に示された処理を終了させ、低いと判断すると、ステップS2に処理を進める。
【0052】
ステップS2では、CPU101は、仮想のコントローラ51と仮想のプロセス52で構成されるシステムのモデル化を行い、ステップS3へ処理を進める。ステップS2におけるシステム同定処理の詳細については、後述する。
【0053】
ステップS2でシステム同定処理を実行した後、CPU101は、ステップS3で、当該システム同定処理によって得られたプロセス52のモデルを用いて、コントローラ51の最適な制御パラメータを算出する処理(最適パラメータ算出処理)を実行して、ステップS4へ処理を進める。最適パラメータ算出処理の詳細は、後述する。
【0054】
ステップS4では、CPU101は、上記したシステム同定処理および最適パラメータ算出処理によって得られた情報に基づいて、コントローラ51とプロセス52を含むシステムについてのシミュレーションを実行し、ステップS5へ処理を進める。
【0055】
ステップS5では、CPU101は、上記したシステム同定処理や最適パラメータ算出処理の結果およびシミュレーションの結果を、表示部108に提示する処理(結果提示処理)を実行する。そこで、ユーザは、満足のいく結果が得られていなければ、コントローラ51の制御パラメータを手入力で修正し、再度シミュレーションを行うとともに、満足がいく結果が得られれば、その制御パラメータを参考に実際のコントローラ10の制御パラメータを変更して、チューニングのための処理を終了する。
【0056】
以上、図4を参照して説明した処理では、ステップS1Aにおいて評価した制御性が低い場合にのみ(ステップS1BでNO判断時)、ステップS2以降の処理が実行され、ステップS1Aにおいて評価した制御性が高い場合には(ステップS1BでYES判断時)、ステップS2以降の処理が実行されない。なお、ステップS2以降の処理は、制御性が高いと評価された場合でも実行されても良いし、また、ステップS1において操業データが取得された後、ステップS1A,1Bにおける制御性の評価に関する判断がなされることなく、直接ステップS2以降の処理が実行されても良い。
【0057】
[4.システム同定]
4.1 プロセスモデル
上記したステップS2におけるシステム同定処理の前提として、本実施の形態では、プロセス52のモデルとして、CARIMA(Controlled Auto-Regressive and Integrated Moving-Average)モデルを採用している。CARIMAモデルを、式(2)に示す。
【0058】
【数5】

【0059】
なお、式(2)において、yは制御量であり、uは操作量であり、dはむだ時間であり、wyは制御量yに関する外乱であり、そして、aおよびbはCARIMAモデルにおいて利用されているパラメータであり、Δは差分演算子を表している。
【0060】
本実施の形態では、プロセス52のモデルとして、式(2)で示したCARIMAモデルについて、むだ時間を含む二次遅れ系までを考慮することとする。これにより、本実施の形態においてシステム同定に利用されるプロセス52のモデルは、式(3)として表わされる。
【0061】
【数6】

【0062】
なお、式(3)において、yは制御量の操業データを示し、y′はプロセスモデルから算出される制御量の計算値を示し、uは操作量の操業データを示し、u′は後述するコントローラモデルから算出される操作量の計算値を示す。
【0063】
4.2 コントローラモデル
本実施の形態のチューニング装置100がチューニングの対象とするコントローラ(図11のブロック線図で示したコントローラ)は、PIDコントローラである。なお、本実施の形態では、PIDコントローラの一例としてI−PDコントローラ(比例先行型PID)をコントローラモデルとする。このようなコントローラのモデルは、以下の式(4)に示す式で表わされる。
【0064】
【数7】

【0065】
ここで、yは図2のプロセス20の出力である制御量であり、uはコントローラ10のプロセス20に対する操作量であり、KcはPID制御の式で一般に用いられる比例ゲインであり、Tiは積分時間であり、Tdは微分時間であり、Tsはサンプリング周期(制御演算のためにデータを採集する周期)、Wは操作量uに関する誤差である。
【0066】
なお、上記したように、本実施の形態におけるシステムのモデル化に際して、プロセス20のプロセスモデルには積分を含む二次遅れ系を採用し、むだ時間も考慮している。これに基づき、本実施の形態におけるコントローラ51のモデルは、次の式(5)で表わされる。なお、式(5)では、dはむだ時間を示し、u´はコントローラモデルから算出される操作量の計算値を示している。
【0067】
【数8】

【0068】
4.3 遺伝的アルゴリズム
図4のステップS2に記載されたシステム同定処理では、式(5)のコントローラのモデルと式(3)のプロセスモデルにおいて用いられた8個のパラメータ(a1,a2,b0,b1,d,Kc,Ti,Td)を同定する処理が実行される。ここで、ステップS2におけるシステム同定処理の内容について、当該処理のサブルーチンのフローチャートである図5を参照して説明する。
【0069】
図5を参照して、システム同定処理では、CPU101は、まずステップS21で、初期設定を行い、ステップS22へ処理を進める。
【0070】
本実施の形態では、上記したシステム同定に必要な8個のパラメータを、遺伝的アルゴリズム(GA)を用いて決定する。そして、ステップS21における初期設定では、当該GAによるパラメータの決定において必要とされる初期条件の設定が行われる。ここで、GAによる8個のパラメータの決定がどのように行われるかについて、概略を説明する。図6に、GAによるパラメータの決定の流れを概略的に示す。
【0071】
図6を参照して、GAによるパラメータの決定には、A.初期集団の決定、B.選択、C.交差、D.突然変異の4つの工程が含まれる。以下、各工程の内容を説明する。
【0072】
A.初期集団の発生
GAでは、CPU101は、上記した8個のパラメータを1組として、N組の初期個体を発生させる。ここで、8個のパラメータそれぞれについて、式(6)〜式(13)に示されるような上限値と下限値が設定されている。CPU101は、各パラメータについて、式(6)〜式(13)に示されるような下限値(各パラメータについてminの添字を付されたもの)から上限値(各パラメータについてmaxの添字を付されたもの)の範囲内で、初期個体を発生させる。
【0073】
【数9】

【0074】
以下の説明では、各個体(8個のパラメータを1組としたもの)をP1〜PNとして表わす。N個の初期個体を、初期集団と呼ぶ。
【0075】
B.選択
CPU101は、N個の個体P1〜PNのそれぞれについて、適応度を算出する。適応度の算出は、目的関数f(Pn)について、各個体に含まれるパラメータを用いて、算出される。目的関数f(Pn)は、次の式(14)で表わされる。
【0076】
【数10】

【0077】
目的関数f(Pn)は、各個体を構成するパラメータの組ごとに、操業データにおける時刻(d+1)から時刻Xについて、所定の時間間隔(本実施の形態では、1分間隔)ごとの制御量の操業データとプロセスモデルを使って算出した制御量の計算値(予測値)の差の二乗と、その(d+1)の時間だけ前の操作量の操業データとコントローラモデルを使って算出した操作量の計算値(予測値)の差の二乗の和を積算した値となっている。本実施の形態では、GAによって、コントローラ51とプロセス52とがコントローラ10とプロセス20になるべく近い挙動を示すようなパラメータの組を求めようとしている。したがって、目的関数f(Pn)の値が小さいほど、その算出に用いられた個体(パラメータの組)は、コントローラ10とプロセス20により適応させたものといえる。つまり、本実施の形態では、目的関数f(Pn)の値が小さいものほど、その算出に用いられた
個体(パラメータの組)の適応度が高いと考えられる。そして、本実施の形態のGAでは、N個の個体を含む初期集団(または、後述する次世代の集団)から、目的関数の値が小さいものから順にM個(M<N)の個体が選択される。
【0078】
C.交差
交差では、CPU101は、上記選択によって得られたM個の個体の中から任意に2個の個体PとPを選出し、8個のパラメータすべてを次に式(15)および式(16)に基づいて交差させ、新たな個体Pと固体P)を発生させる。このような交差で、たとえばE個の個体を新たに発生させる。
【0079】
【数11】

【0080】
なお、式(15)と式(16)では、Psupは固体PとPのうち、目的関数の値の小さいもの(適応度が高いもの)を表している。
【0081】
D.突然変異
上記選択によって選択したM個の個体の中から一定の割合の個体を選出し、各個体に含まれるパラメータの中の一定の個数のパラメータの値を上記した式(6)〜式(13)の範囲内でランダムな値に置き換えることによって、CPU101は、新たにF個の個体を生成する。
【0082】
以上説明した初期集団の発生から突然変異までの処理により、N個の個体によって構成されていた集団は、その中からM個の個体が選択され、E個の個体が交差によって発生し、そして、突然変異によってF個の個体が発生する。そして、これらの個体、つまり(M+E+F)個の個体が、次世代の集団とされる。
【0083】
そして、当該次世代の集団に対して、再度、上記した選択から突然変異までの処理が適用されることによって、さらに次の世代の集団が発生する。
【0084】
本実施の形態では、予め定められた世代まで集団を発生させ、最終的に発生させた集団における最も目的関数の値が小さい個体に含まれるパラメータの組を、コントローラ51とプロセス52のモデルを構成するパラメータとされる。
【0085】
4.4 システム同定処理の内容
図5は、図4のステップS2におけるシステム同定処理のサブルーチンのフローチャートである。以下、システム同定処理の内容について説明する。
【0086】
図5を参照して、システム同定処理では、CPU101は、まずステップS21でGAによるシステム同定(上記8個のパラメータの決定)のために初期設定を行って、ステップS22へ処理を進める。
【0087】
ここで、初期設定とは、上記した式(6)〜式(13)に示した8個のパラメータの下限値と上限値の入力を受付け、また、GAによってパラメータを決定する際の集団を発生させる世代数Gの入力を受付ける。
【0088】
ステップS22では、CPU101は、現時点での集団の世代が、ステップS21で設定を受付けたGであるか否かを判断し、そうであると判断するとステップS26へ処理を進め、まだ世代数がGに達していないと判断するとステップS23へ処理を進める。
【0089】
ステップS23では、CPU101は、図6を参照して説明した「選択」を実行し、ステップS24へ処理を進める。
【0090】
ステップS24では、CPU101は、図6を参照して説明した「交差」を実行して、ステップS25へ処理を進める。
【0091】
ステップS25では、CPU101は、図6を参照して説明した「突然変異」を実行して、ステップS22へ処理を戻す。
【0092】
以上説明したように、ステップS23からステップS25までの処理は、GAにおいて扱われる個体の集団の世代数がGとなるまで続けられる。そして、集団の世代数がGとなると、ステップS26へ処理が進められる。
【0093】
ステップS26では、CPU101は、第G世代の集団の中の最も目的関数の値が小さいもの(適応度が高いもの)を構成するパラメータの組を、コントローラ51とプロセス52のモデルを構成するパラメータの組として決定して、図4へ処理を戻す。
【0094】
[5.最適パラメータの算出]
本実施の形態では、図4のステップS3における最適パラメータ算出処理において、一般化最小分散制御(GMVC)に基づいて、コントローラ10のプロセス20に対するPID制御について、最適なパラメータの算出が行われる。ここで、その内容について説明
する。
【0095】
まず、本実施の形態におけるプロセス20の離散時間モデルは、次の式(17)で表わすことができるものとする。
【0096】
【数12】

【0097】
なお、式(17)中で、A(z-1)とB(z-1)は、次の式(18)と式(19)で表わされる離散時間モデルの係数多項式であるとする。
【0098】
【数13】

【0099】
また、式(17)において、y(t)は制御量を示し、u(t)は操作量を示し、χ(t)はモデル化誤差を示し、z-1は時間遅れ演算子(z-1y(t)=y(t−1))を意味し、Δは差分演算子(1−z-1)を意味している。
【0100】
時刻t+1のとき、式(17)は、次の式(20)となる。
【0101】
【数14】

【0102】
そして、式(20)は、次の式(21)のように書くことができる。
【0103】
【数15】

【0104】
ここで、Diophantine方程式を式(22)に示す。
【0105】
【数16】

【0106】
このDiophantine方程式から、次の式(23)の関係を得ることができる。
【0107】
【数17】

【0108】
なお、制御量y(t+1)と予測値y′(t+1|t)との関係は式(24)として表わすことができる。
【0109】
【数18】

【0110】
そして、これにより、次の式(25)の関係が得られる。
【0111】
【数19】

【0112】
一方、PIDコントローラ(コントローラ10)のモデルは、式(4)で示され、次の式(26)のように書き直すことができる。
【0113】
【数20】

【0114】
そして、式(26)のC(z-1)は、次の式(27)の係数多項式で表わされる。
【0115】
【数21】

【0116】
次に、一般化最小分散制御の評価規範に基づいて、最適なPIDパラメータを求めることを考える。
【0117】
上記評価規範の1つの形が、次の式(28)として与えられる。
【0118】
【数22】

【0119】
ここで、P(z-1)は、次の式(29)で表わされる。
【0120】
【数23】

【0121】
なお、式(28)において、λは重み係数を表わしている。λの与え方については、後述する。
【0122】
P(z-1)は、離散時間モデルの設計多項式で、各係数は、望ましい制御性を示すように、次の式(30)〜式(35)のように与える。
【0123】
【数24】

【0124】
ここで、σは、立ち上がり時間を表わすパラメータで、プロセスの時定数Tとむだ時間Lの和の0.5倍から1.0倍が望ましい。本実施の形態では、式(34)で例示するように、0.75倍とする。
【0125】
一方、μは、応答の減衰特性を表わすパラメータであり、式(33)に示されるように、δによって与えられる。δは、0.0から2.0の範囲が望ましく、本実施の形態では、式(35)に例示されるように0.0とする。
【0126】
次に、「一次遅れ+むだ時間」系と、「積分+むだ時間」系を例に、プロセスの離散時間モデルから時定数Tとむだ時間L、プロセスゲインKの求め方について述べる。
【0127】
「一次遅れ+むだ時間」系は、温度制御などのプロセスを表現する際にしばしば用いられ、「積分+むだ時間」系は、液面制御などのプロセスを表現する際によく用いられている。
【0128】
なお、「一次遅れ+むだ時間」系では、各パラメータは、次の式(36)〜式(38)に従って求められる。
【0129】
【数25】

【0130】
また、「積分+むだ時間」系では、各パラメータは、次の式(39)〜式(41)に従って求められる。
【0131】
【数26】

【0132】
ここで、dは、離散時間系における純粋むだ時間であり、Lは立ち上がり初期を含めた実用的なむだ時間を意味している。また、積分系の場合、緩やかな制御が好まれるため、時定数Tを特別に積分時定数の2倍としている。
【0133】
上記した式(28)の評価規範に式(23)を代入すると、次の式(42)が得られる。
【0134】
【数27】

【0135】
そして、無相関である性質を利用することによって、これを最小化する制御則が、次の式(43)として得られる。
【0136】
【数28】

【0137】
さらに、式(43)の第2項の係数多項式を定常項に置き換えると、式(44)が得られる。
【0138】
【数29】

【0139】
そして、式(44)の第2項を次の式(45)のように定義する。
【0140】
【数30】

【0141】
これにより、式(44)は、次の式(46)のようになる。
【0142】
【数31】

【0143】
ここで、式(46)とPIDコントローラの離散モデルである式(26)とを比較すると、次の式(47)の関係が得られる。
【0144】
【数32】

【0145】
そして、これにより、評価規範を最小化とするPIDパラメータを、次の式(48)〜式(50)で求めることができる。
【0146】
【数33】

【0147】
すなわち、適切なλを与えられ場、F(z-1)の係数を求めることができ、これにより、式(48)〜式(50)を用いてPIDパラメータを算出することができる。
【0148】
式(28)の評価規範において、λを変化させたときの制御誤差の分散(すなわち、目標値と制御量との偏差の分散E[e2(t)])と、制御入力の分散(すなわち、操作変化量の分散[(Δu(t))2])の様子をプロットすると、図7に示すようなTrade-off曲線(曲線L)が得られる。この曲線上から最も望ましいλを得るために、次の式(51)に示す評価関数を定義する。
【0149】
【数34】

【0150】
ここで、Kは重み係数に相当し、式(37)または式(40)のプロセスゲインで決めることとする。
【0151】
なお、制御誤差e(t)と操作量Δu(t)は、定常状態において、次の式(52)と式(53)の関係が得られる。
【0152】
【数35】

【0153】
ただし、T(z-1)は、式(54)で表される。
【0154】
【数36】

【0155】
このとき、制御誤差e(t)と操作量Δu(t)の分散は、H2ノルムを用いて計算す
ることとし、次の式(55)を最小とするλを求める。これにより、前述した最適なPIDパラメータが求まる。
【0156】
【数37】

【0157】
具体的なPIDパラメータの算出手順は、次のSA1〜SA6の手順として示すことができる。
【0158】
SA1:式(36)〜式(38)または式(39)〜(41)に基づき、T,K,Lを算出
SA2:式(30)〜式(35)に基づき、Pを算出
SA3:式(22)に基づき、Fを算出(ここで、むだ時間がある場合は、プロセスをパディ近似した離散時間モデルからFを求めるか、逐次計算でむだ時間を考慮したFを求める)
SA4:λに初期値を与えて、式(48)〜式(50)に基づき、λに対応するPIDパラメータを算出
SA5:式(52)と式(53)に基づき、制御誤差の分散E[e2(t)]と制御入
力(制御量)の分散[(Δu(t))2]を算出
SA6:SA4,SA5を繰り返し計算して、式(55)を最小とするλを求め、これに対応するPIDパラメータを出力
なお、このような場合の、式(55)を最小とするλは、図7中の曲線L中の点Pに相当する。
【0159】
[6.シミュレーション]
次に、図4のステップS4におけるシミュレーション処理の内容について説明する。
【0160】
上記したように、本実施の形態のチューニング装置100では、システム同定処理が行われることにより、プロセスモデル(式(3))に用いられたプロセスパラメータ(a,a,b,b,d)とコントローラモデル(式(5))に用いられたパラメータ(K,T,T)の推定値が得られる(ステップS2)。そして、推定されたプロセスモデルを用いて、コントローラに対する最適なPIDパラメータが算出される(ステップS3)。
【0161】
そして、CPU101は、シミュレーション処理として、上記のように得られたプロセスモデルを用い、推定されたPIDパラメータ(以下、「推定パラメータ」)を適用した場合の制御量の時間変化のシミュレーションと、算出された最適なPIDパラメータ(以下、「推奨パラメータ」)を適用した場合の制御量の時間変化のシミュレーションを実行する。図8(A)に、シミュレーション結果を示す。なお、図8(A)のグラフの横軸は、時間を表している。
【0162】
まず、図8(A)では、実線で、ステップ状に変化する目標値が示されている。そして、図8(A)では、実線で示されたようにステップ状に目標値が変化した際の、推定パラメータを適用した場合の制御量の時間変化が破線で示され、推奨パラメータを適用した場合の制御量の時間変化が一点鎖線で示されている。
【0163】
図8(B)には、上記した推定したプロセスモデルのパラメータが示され、図8(C)には、コントローラのPIDパラメータが示されている。
【0164】
なお、図8(C)では、「以前」「推定」「推奨」「現在」の4種類の組のPIDパラメータが示されている。「以前」とは、図4に示された処理が実行される前の実際のプラントでコントローラに適用されていたパラメータである。「推定」とは、図5に示したシステム同定処理によって操業データから「以前」のパラメータを推定した結果で、コントローラモデルの同定の結果として算出されたPIDパラメータである。「以前」の値と「推定」の各パラメータの値が近ければ、ユーザは、システム同定処理によるシステム同定精度は高く、信頼できる結果であると評価することができる。
【0165】
また、図8(C)において、「推奨」とは、ステップS3で実行した最適パラメータ算出処理によって算出されたPIDパラメータである。そして、「現在」とは、ユーザによって新たに設定された実際のPIDパラメータである。なお、ユーザは、このパラメータを、たとえば推奨パラメータを参考にして設定することができる。これらの4種類のPIDパラメータは、いずれも、HD103に格納されている。
【0166】
[7.結果の提示]
CPU101は、結果提示処理(ステップS5)として、図8(A)〜図8(C)に示した情報を表示部108に表示させることができる。このような場合に表示部108に表示される画面の一例を図9に示す。
【0167】
図9を参照して、画面900には、図8(A)に示したグラフを表示する表示欄910と、図8(B)に示したプロセスパラメータを表示する表示欄911と、図8(C)に示したPIDパラメータを表示する表示欄912,915とが含まれる。なお、画面900中のボタン913をクリックされることにより、CPU101は、図4に示された処理を実行する。表示欄912には「推定」のPIDパラメータが表示され、表示欄915には「推奨」のPIDパラメータが表示される。なお、ユーザは、入力部106を適宜操作することにより、表示欄912内の数値を変更することができる。
【0168】
CPU101は、ボタン914に対して操作がなされることにより、表示欄912,915に表示されたPIDパラメータと、表示欄911に表示されたプロセスパラメータを適用したプロセスモデルを利用して、制御量の時間変化をシミュレーションし、その結果を表示する。なお、シミュレーションの態様は、特許文献1に記載の態様を採用することができる。
【0169】
また、画面900では、表示欄920に、破線で設定値SV(Set Variable)の、実線で制御量PV(Process Variable)の、一日分の変化が横軸を時間として提示されている。また、表示欄930には、操作量MV(Manipulative Variable)の一日分の変化が横軸を時間として提示されている。
【0170】
また、表示欄910には、シミュレーションの結果として、プロセス52のステップ応答特性として、5時間分の制御量の変化が示されている。具体的には、表示欄910では、ステップ状に変化する設定値が実線で示され、表示欄912に示された「推定」のパラメータを用いた制御量のシミュレーション結果が破線で示され、そして、表示欄915に示された「推奨」のパラメータを用いた制御量のシミュレーション結果が一点鎖線で示されている。
【0171】
[8.本実施の形態のチューニング装置によるチューニングについて]
実際にプラントに適用した、本実施の形態のチューニング装置によるPIDコントローラのチューニング前後の挙動を図10に示す。
【0172】
図10(A)は、チューニング前のプロセスの制御量の時間変化を示し、図10(B)は、チューニング後のプロセスの制御量の時間変化を示す。なお、チューニング後とは、プロセスのコントローラで利用されるPIDパラメータが、上記した「推奨」のパラメータを参考にチューニングされた後を意味する。
【0173】
図10(A)と図10(B)を比較すると、チューニング後の方が、チューニング前よりも、制御量の変化の幅が狭くなっている。
【0174】
これにより、本実施の形態によれば、プロセスの挙動を落ち着いたものとすることができる。
【0175】
[9.表示画面の関連付け]
図4を参照して説明したように、本実施の形態では、処理対象となっている制御ループの制御性が評価され(ステップS1A)、その内容に応じてステップS2以降の処理を実行するか否かが、CPU101の実行するプログラムによって決定されている。
【0176】
なお、図4を参照して説明した処理は、このような評価結果を表示部108に表示し、当該画面に対する操作内容に応じて、すなわち、解析対象とする制御ループの選択操作に応じて、ステップS2以降の処理を実行するか否かが決定されるように変更されても良い。
【0177】
図12は、制御ループごとの制御性についての評価内容が表示された画面の一例であり、図13は、図4のフローチャートの上記のような変形例のフローチャートである。図13のフローチャートでは、図4のフローチャートのステップS1Bの代わりにステップS1C,S1Dが設けられている。
【0178】
この変形例では、ステップS1Aの結果として、図12に示される画面が表示される。画面800には、制御性が低いと評価された制御ループごとの制御量のトレンド810,820が示されている。そして、各トレンド810,820に関連付けられて、表示欄811,821に、制御ループごとの制御性の評価内容が表示されている。
【0179】
表示欄811,821において、「総合指標」とは、上記した制御性評価指標ηに関連する値であり、また、「周期」は、制御量に周期性があると判断された場合の周期である。
【0180】
また、表示欄811,821において、「コメント」は、周期性の有無や制御性評価指標ηの値、その他の診断結果に基づいて表示されるメッセージである。たとえば、表示欄811には「チューニング不良。」、表示欄821には「バルブ、または計器不良の疑いあり。」というメッセージが表示されている。なお、このようなメッセージは、評価内容に関連付けられて、たとえばHD103内に記憶されている。
【0181】
そして、これらのメッセージには、ステップS2以降の処理を実行するための処理内容がリンクされている。
【0182】
図13を参照して、ステップS1Aにおいて制御性の評価がなされ、その結果として、制御性の低い制御ループの抽出結果が、図12に示されるような画面800に表示された後、CPU101は、ステップS1Dで、上記のようなステップS2以降に処理を進めるリンクが操作されたか(メッセージがクリックされたか)否かが判断される。
【0183】
そして、メッセージがクリックされたと判断されると、クリックされたメッセージが対応する制御ループについて、ステップS2以降の処理が実行される。これにより、当該制御ループについてのシステム同定処理(ステップS2)等が実行され、結果として、当該制御ループについての結果提示処理に基づく画面900(図9参照)が表示される。なお、図9の画面900は、トレンド810に対応したコントーラについての制御パラメータ算出結果に相当する画面である。表示欄920の制御量PVは、トレンド810と同一である。
【0184】
一方、画面800に表示されたいずれのメッセージ(コメント)もクリックされることなく制御性の評価結果についての表示を終了させるための操作がなされた場合には(ステップS1Dで「NO」判断時)、そのまま終了する。
【0185】
以上説明した本実施の形態のチューニング装置100では、コントローラ10とプロセス20から構成される実際のプラントの操業データが利用されて、仮想のコントローラ51と仮想のプロセス52のモデル化が行なわれ、そして、得られたプロセス52のモデルを用いて、コントローラ51の最適な制御パラメータが算出される。コントローラ10のチューニングに際し、算出された制御パラメータの数値を参考にチューニングを実施することができる。なお、チューニング装置100では、コントローラ51ごとに制御性を評価し、制御性が低いと判断されたコントローラ51についてのみ、上記モデル化や最適な制御パラメータの算出等が実行されるため、計算負荷を低減することができる。さらに、図13で示した変形例のように、予め複数の制御ループの制御性を評価しておけば、制御性の低いコントローラに対して、集中的にチューニングを実施できるため、効率的に制御性を向上させることができるといった利点がある。
【0186】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【0187】
【図1】本発明の一実施の形態であるチューニング装置のハードウェア構成を模式的に示す図である。
【図2】図1のチューニング装置において設定された、システム同定のための仮想のシステム構成を模式的に示す図である。
【図3】図1のチューニング装置の機能的な構成を模式的に示す図である。
【図4】図1のチューニング装置がコントローラのチューニングのために実行する処理のフローチャートである。
【図5】図4のシステム同定処理のサブルーチンのフローチャートである。
【図6】図5のシステム同定処理における、GAによるパラメータの決定の流れを概略的に示す図である。
【図7】図4の最適パラメータ算出処理におけるPIDパラメータの算出に利用される、制御誤差の分散と操作量の分散の関係をプロットした図である。
【図8】図4のシミュレーションの結果を示す図である。
【図9】図4の結果提示処理において表示部に表示される画面の一例を示す図である。
【図10】本実施の形態のチューニング装置によるPIDパラメータのチューニングの前後のシステムの挙動を示す図である。
【図11】本実施の形態のチューニング装置がチューニングの対象とするコントローラを含むシステムのブロック線図である。
【図12】本実施の形態におけるプラントの制御性の評価の内容を表示する画面の一例を示す図である。
【図13】図4に示されたフローチャートの変形例を示す図である。
【符号の説明】
【0188】
10,51 コントローラ、20,52 プロセス、53 適応度算出部、54 パラメータ処理部、100 チューニング装置、101 CPU、102 I/O、103 HD、103A プログラム記憶部、103B 操業データ記憶部、104 メディアドライブ、104A 記録媒体、105 RAM、106 入力部、108 表示部、109 通信制御部、800,900 画面。

【特許請求の範囲】
【請求項1】
プロセスをPID(proportional-integral-derivative)制御するコントローラをチューニングする装置であって、
前記プロセスの操業データを取得して記憶する記憶手段と、
前記プロセスの操業データに基づいて、前記コントローラの制御性を評価する評価手段と、
前記評価手段によって制御性が低いと評価されたことを条件として、前記取得した操業データを使って、コントローラのモデルに対する制御パラメータと、一定の制限に基づくプロセスのモデルに対するプロセスパラメータとを同定する同定手段と、
前記同定手段が同定した前記制御パラメータおよび前記プロセスパラメータに基づく前記コントローラのモデルと前記プロセスのモデルを用いて、前記プロセスの制御応答のシミュレーションを実行するシミュレーション手段とを備える、PIDコントローラのチューニング装置。
【請求項2】
前記同定手段は、
前記一定の制限として、前記プロセスのモデルを、むだ時間と積分系を含む二次遅れ系の動的モデルとし、
前記操業データとして、周期振動をしているデータを使ってパラメータを同定する、請求項1に記載のPIDコントローラのチューニング装置。
【請求項3】
前記同定手段は、遺伝的アルゴリズムに基づいて前記制御パラメータと前記プロセスパラメータを同定する、請求項1または請求項2に記載のPIDコントローラのチューニング装置。
【請求項4】
前記同定手段で得た前記プロセスのモデルを用い、一般化最小分散制御に基づき、前記プロセスのモデルにおける制御量の分散とコントローラのモデルにおける操作量の分散とを評価し、その評価値が最小となる最適な制御パラメータを算出する算出手段をさらに備え、
前記シミュレーション手段は、前記算出手段が算出した前記最適な制御パラメータに基づく前記コントローラのモデルと、前記同定手段が同定した前記プロセスパラメータに基づく前記プロセスのモデルとを用いて、前記シミュレーションを実行する、請求項1〜請求項3のいずれかに記載のPIDコントローラのチューニング装置。
【請求項5】
前記算出手段が算出した最適な制御パラメータを変更する入力手段と、
前記変更したパラメータに基づく前記コントローラのモデルおよび前記プロセスのモデルを用いて前記シミュレーションを実行する手段をさらに備える、請求項1〜請求項4のいずれかに記載のPIDコントローラのチューニング装置。
【請求項6】
プロセスをPID(proportional-integral-derivative)制御するコントローラをチューニングするプログラムであって、
コンピュータに、
前記プロセスの操業データを取得して記憶するステップと、
前記プロセスの操業データに基づいて、前記コントローラの制御性を評価するステップと、
前記制御性が低いと評価されたことを条件として、前記取得した操業データを使って、コントローラのモデルに対する制御パラメータと、一定の制限に基づくプロセスのモデルに対するプロセスパラメータとを同定するステップと、
前記同定するステップで得た前記プロセスのモデルを用い、一般化最小分散制御に基づいて、前記プロセスのモデルにおける制御量の分散とコントローラのモデルにおける操作量の分散とを評価し、その評価値が最小となる最適な制御パラメータを算出するステップと、
前記同定したプロセスパラメータと前記同定した制御パラメータに基づいて、前記プロセスの制御応答のシミュレーションを実行するステップと、
前記同定したプロセスパラメータと前記算出した最適な制御パラメータに基づいて、前記プロセスの制御応答のシミュレーションを実行するステップとを実行させる、PIDコントローラのチューニング用プログラム。
【請求項7】
プロセスをPID(proportional-integral-derivative)制御するコントローラをチューニングする方法であって、
前記プロセスの操業データを取得して記憶するステップと、
前記プロセスの操業データに基づいて、前記コントローラの制御性を評価するステップと、
前記制御性が低いと評価されたことを条件として、前記取得した操業データを使って、コントローラのモデルに対する制御パラメータと、一定の制限に基づくプロセスのモデルに対するプロセスパラメータとを同定するステップと、
前記同定するステップで得た前記プロセスのモデルを用い、一般化最小分散制御に基づいて、前記プロセスのモデルにおける制御量の分散とコントローラのモデルにおける操作量の分散とを評価し、その評価値が最小となる最適な制御パラメータを算出するステップと、
前記同定したプロセスパラメータと前記同定した制御パラメータに基づいて、前記プロセスの制御応答のシミュレーションを実行するステップと、
前記同定したプロセスパラメータと前記算出した最適な制御パラメータに基づいて、前記プロセスの制御応答のシミュレーションを実行するステップとを備えるPIDコントローラのチューニング方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate