(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6268859
(24)【登録日】2018年1月12日
(45)【発行日】2018年1月31日
(54)【発明の名称】多変数制御を行うコントローラを調整するパラメータの値の設定方法
(51)【国際特許分類】
G05B 13/04 20060101AFI20180122BHJP
G05B 11/32 20060101ALI20180122BHJP
【FI】
G05B13/04
G05B11/32 A
【請求項の数】4
【全頁数】8
(21)【出願番号】特願2013-198108(P2013-198108)
(22)【出願日】2013年9月25日
(65)【公開番号】特開2015-64743(P2015-64743A)
(43)【公開日】2015年4月9日
【審査請求日】2016年7月26日
(73)【特許権者】
【識別番号】000000099
【氏名又は名称】株式会社IHI
(74)【代理人】
【識別番号】100083806
【弁理士】
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100100712
【弁理士】
【氏名又は名称】岩▲崎▼ 幸邦
(74)【代理人】
【識別番号】100101247
【弁理士】
【氏名又は名称】高橋 俊一
(74)【代理人】
【識別番号】100095500
【弁理士】
【氏名又は名称】伊藤 正和
(74)【代理人】
【識別番号】100098327
【弁理士】
【氏名又は名称】高松 俊雄
(72)【発明者】
【氏名】米田 信一郎
(72)【発明者】
【氏名】木村 麻衣
(72)【発明者】
【氏名】古川 洋之
(72)【発明者】
【氏名】垣内 大紀
【審査官】
牧 初
(56)【参考文献】
【文献】
特開2005−70940(JP,A)
【文献】
特開2012−92761(JP,A)
【文献】
特開平8−54906(JP,A)
【文献】
特開2010−66852(JP,A)
【文献】
特開2008−299697(JP,A)
【文献】
特開2009−116721(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 11/00−13/04
(57)【特許請求の範囲】
【請求項1】
アンチワインドアップ制御及び非干渉化制御を考慮して多変数制御を行うコントローラを調整するパラメータの値の設定方法であって、
前記コントローラが使用する前記パラメータの複数の候補値の初期値を設定するステップと、
左既約分解で利用される状態フィードバックに、前記パラメータの各候補値を設定した場合について、前記コントローラの動作のシミュレーションを実行するステップと、
粒子群最適化のアルゴリズムで規定される所定の数式により各候補値を最適化するステップと、
前記シミュレーションの結果から所定の評価条件を満たす候補値を最適解として選択するステップと、
前記最適解が選択された場合に、所定の終了条件を満たすまで、前記更新された各候補値を利用して前記コントローラの動作のシミュレーションを実行するステップを繰り返すステップと、
前記所定の終了条件を満たした場合に、前記選択された最適解を前記コントローラが使用するパラメータの値として設定するステップと
を有する多変数制御を行うコントローラを調整するパラメータの値の設定方法。
【請求項2】
前記シミュレーションを実行するステップは、さらに、前記シミュレーションの結果から前記パラメータの各候補値を評価する評価値を求めるものである請求項1に記載の多変数制御を行うコントローラを調整するパラメータの値の設定方法。
【請求項3】
前記所定の評価条件が、最小となる評価値を抽出するものである請求項1または2に記載の多変数制御を行うコントローラを調整するパラメータの値の設定方法。
【請求項4】
前記所定の終了条件が、前記コントローラの動作のシミュレーションを実行するステップの繰り返しの回数が所定回数に達したかどうかである請求項1に記載の多変数制御を行うコントローラを調整するパラメータの値の設定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は多変数制御を行うコントローラを調整するパラメータの値を設定する設定方法に関する。
【背景技術】
【0002】
様々な機器等の制御(操作)にコントローラが利用されている。このようなコントローラは、機器等の制御対象に合わせて設計されているが、実際に制御対象に使用する際には、実際の制御対象に応じた調整を行う必要がある。その一例として、ワインドアップ現象による制御性能の低下を防止するため、アンチワインドアップ制御等を行うことがある。
【0003】
また、コントローラには、1入力1出力の制御対象を制御するものの他、2入力2出力等の多変数制御するものがある。多変数制御では、干渉が生じることがあるため、多変数制御を行うコントローラに対しては、アンチワインドアップ制御に加えて非干渉化制御を考慮する必要があり、1入力1出力制御のコントローラよりも調整が困難となる問題があった。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第2982903号公報
【特許文献2】特許第4462165号公報
【非特許文献】
【0005】
【非特許文献1】鈴木文泰、他1名、「左既約分解に基づく2自由度制御系のアンチワインドアップ化」、電気学会、電学論D、2001年、121巻7号、p792-797
【発明の概要】
【発明が解決しようとする課題】
【0006】
したがって、本発明はアンチワインドアップ制御及び非干渉化制御を考慮して多変数制御を行うコントローラの調整に使用するパラメータの値を容易に設定することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、
本発明は、アンチワインドアップ制御及び非干渉化制御を考慮して多変数制御を行うコントローラを調整するパラメータの値の設定方法であって、
前記コントローラが使用する
前記パラメータの複数の候補値の初期値を設定するステップと、
左既約分解で利用される状態フィードバックに、前記パラメータの各候補値
を設定した場合について、前記コントローラの動作のシミュレーションを実行するステップと、
粒子群最適化のアルゴリズムで規定される所定の数式により各候補値を
最適化するステップと、
前記シミュレーションの結果から所定の評価条件を満たす候補値を最適解として選択するステップと、前記最適解が選択された場合に、所定の終了条件を満たすまで、前記更新された各候補値を利用して前記コントローラの動作のシミュレーションを実行するステップ
を繰り返すステップと、
前記所定の終了条件を満たした場合に、前記選択された最適解を前記コントローラが使用するパラメータの値として設定するステップとを有する多変数制御を行うコントローラを調整することを特徴とする。
【発明の効果】
【0008】
本発明によれば、容易に多変数制御を行うコントローラを調整するパラメータの値を設定することができる。
【図面の簡単な説明】
【0009】
【
図1】実施形態に係る設定方法で利用するコントローラと制御対象を表す概略図である。
【
図2】ワインドアップ及びアンチワインドアップ制御を説明する波形である。
【
図3】多変数制御で生じる干渉を説明する波形である。
【
図4】実施形態に係る設定方法に利用する設定装置のブロック図である。
【
図5】実施形態に係る設定方法を説明するフローチャートである。
【
図6】シミュレーションで使用する指令値の一例を表す波形である。
【
図7】実施形態に係る設定方法で利用する評価値の一例である。
【発明を実施するための形態】
【0010】
以下に、図面を用いて本発明に係る多変数制御を行うコントローラを調整するパラメータの値の設定方法について説明する。
【0011】
本発明に係る設定方法は、アンチワインドアップ及び非干渉化を考慮して多変数制御を行うコントローラで使用するパラメータの値を適切な値に設定するものである。例えば、本発明に係る設定方法を利用して、ジェットエンジン等を制御するコントローラのパラメータ値を設定することができる。
【0012】
コントローラを利用して機器等を制御(操作)する際の問題に、制御入力飽和により生じるワインドアップ現象がある。例えば、
図1(a)に示すように、指令値rに出力yが追従するようコントローラ1を設計し、コントローラ1が、制御対象2を制御入力で制御(操作)する例において、コントローラ1と制御対象2の間にリミッタ3が存在しているとき、このリミッタ3の入力飽和を考慮しないでコントローラ1を設計すると、ワインドアップ現象が生じる。ここで、コントローラ1は、Kで表し、
図1(a)に示すようにフィードバック制御を利用している。また、K(コントローラ1)は、状態行列A、入力行列B、出力行列C、直達行列Dを状態空間表現で表すとする。
【0013】
コントローラ1に指令値rを入力し、制御対象2から出力yを得る一例があるとする。このとき、リミッタを無視して、コントローラ1を設計した場合、
図2(a)に示すように、リミッタ3により、制御対象2ではワインドアップ現象の影響を受けた出力yとなる。例えば、制御対象2をジェットエンジンとし、指令値rと出力yは「推力」であって、制御入力uは、コントローラ1によって得られる「燃料流量」であるとする。
【0014】
このようなワインドアップ現象の影響を防止するアンチワインドアップ制御の一例に、
図1(b)に示すように、コントローラ1を、左既約分解を利用して理論的に設計する方法がある。例えば、左既約分解を利用し、コントローラ1がアンチワインドアップ制御を考慮して制御した場合、
図2(b)に示すように、制御対象2の出力yは、ワインドアップ現象の影響を防止することができる。ここで、K=M
-1NかつR=I−Mであり、Rは、状態行列A−FC、入力行列F、出力行列C、直達行列0を状態空間表現で表し、Nは、状態行列A−FC、入力行列B−FD、出力行列C、直達行列Dを状態空間表現で表すとする。Iは、単位行列であり、Fは、状態フィードバックゲインである。
【0015】
一方、多変数制御の場合、アンチワインドアップ制御に加え、非干渉化制御をする必要が生じる。仮に、アンチワインドアップ制御がされている状態で、コントローラ1に指令値r1,r2を入力し、制御入力u1,u2により制御対象2から出力y1,y2を得る多変数制御の一例があるとする。例えば、制御対象2をジェットエンジンとし、指令値r1と出力y1は「推力」、指令値r2と出力y2は「エンジン回転数」であって、制御入力u1は「燃料流量」、出力u2は「排気ノズル」であるとする。このとき、コントローラ1に指令値r1を入力し、アンチワインドアップ制御により、
図3(a)に示すように、制御対象2から出力y1が得られ、ワインドアップの影響を受けない制御がされる。一方、
図3(b)に示すように、制御対象2から得られる出力y2は、指令値r2とともに指令値r1の干渉を受ける。
【0016】
単にアンチワインドアップ制御では、数式等を利用して理論的にコントローラの調整に使用する値等を設定することが比較的容易であるが、アンチワインドアップ制御に加えて多変数制御のためにコントローラの調整に使用する値を設定することは困難である。具体的には、理論的にコントローラの調整に使用する値を設定しようとすると、シミュレーションを複数回繰り返し、シミュレーション結果を確認する必要があり、オペレータの作業が煩雑になる。
【0017】
本発明に係る設定方法では、多変数制御の場合に、アンチワインドアップ及び非干渉化を考慮してコントローラを調整するためのパラメータの値を容易に設定することができる。ここで、実施形態に係る設定方法は、
図1(b)に示すように、左既約分解を利用するコントローラ1のパラメータを設定する方法である。このコントローラ1は、2入力2出力制御によって制御対象2を制御するものであり、r=[r1,r2]、u=[u1,u2]、y=[y1,y2]であるものとする。
【0018】
実施形態に係る方法では、コントローラを調整するパラメータの値の設定をメタヒューリスティクスの一種であるPSO(粒子群最適化)を利用して行うため、自動で設定することができる。以下では、PSOを使用してパラメータの値を設定する例で説明する。例えば、
図4に示すように、パラメータの候補値に対して初期値を設定する初期値設定部101と、候補値を利用してコントローラの動作のシミュレーションを実行し、候補値を評価する値を求めるシミュレーション部102と、シミュレーション結果を利用して候補値を更新する更新部103と、更新された新たな候補値から最適な値を選択する選択部104と、最適な値の設定に必要な必要条件を満たしたか否か判定する判定部105とを有する設定装置100を利用して行われる。
【0019】
図5に、設定方法の処理を説明するフローチャートを示している。パラメータを設定する際、はじめに、初期値設定部101が、複数の候補値x1〜xnで構成される解候補集団Xを設定する(S1)。例えば、初期値設定部101は、乱数を利用して複数の候補値x1〜xnの初期値を設定する。
【0020】
続いて、シミュレーション部102が、左既約分解で利用される状態フィードバックFに解候補集団Xの各値を設定した場合のコントローラ1についてシミュレーションを実行し、各状態フィードバックF1〜Fnについて候補値x1〜xnによるコントローラ1の調整の効果の指標を表す評価値J1〜Jnを求める(S2)。
【0021】
例えば、シミュレーション部102では、各候補値x1〜xnを設定した状態フィードバックF1〜Fnについて、
図6に示すような波形で表されるシミュレーションの指令値r1,r2を使用した場合のシミュレーションの結果としてそれぞれ出力y1,y2を求める。また、シミュレーション部102は、シミュレーションに使用した指令値とシミュレーションによって得られた出力を利用して、評価値J1〜Jnを求める。
図7に示す例では、評価値Jは、指令値r2と出力y2との差によって得られる面積であるが、この面積に限らず、評価値Jは、候補値をパラメータの値として求めた出力値と出力値を得るために使用した指令値から求めるものであればよい。
【0022】
評価値J1〜Jnが得られると、更新部103は、各候補値x1〜xnを対応する評価値J1〜Jnを利用して更新する(S3)。ここで、更新部103は、PSOのアルゴリズムで規定される候補値の更新式(式(1),式(2))を利用して、求めた値を新たな候補値とする。これにより、各候補値x1〜xnが元の値より適切な値に変更される。
【0023】
x(t+1)=x(t)+v(t+1) …(1)
v(t+1)=wv(t)+c1r1(xbest−x(t))+c2r2(xbest−x(t)) …(2)
ここで、tは、シミュレーションの実行回数の値である。したがって、候補値の初期値としては、x1(1)〜xn(1)が設定され、その後、これらの値からx1(2)〜xn(2)が求められる。また、c1とc2はPSOの設定パラメータであり、r1とr2は、乱数である。
【0024】
その後、選択部104は、複数の評価値J1〜Jnのうち最小となる評価値を抽出し、この評価値に対応する新たな候補値を今回のシミュレーションによる最適解xbestとして選択する(S4)。
【0025】
最適解xbestが選択されると、判定部105は、終了条件を満たすか否か判定する(S5)。例えば、判定部105は、ステップS2〜S4の処理が所定回数(例えば、200回)繰り返された場合に終了条件を満たすと判定する。
【0026】
条件を満たさない場合(S5でNO)、ステップS2に戻り、ステップS2〜S4の処理を繰り返す。このとき、シミュレーション部102は、更新部103で更新された新たな候補値x1〜xnを利用してシミュレーションを実行する。
【0027】
一方、条件を満たした場合(S5でYES)、選択部104でステップS4で選択された最適解xbestをコントローラのパラメータ値と設定する(S6)。
【0028】
上述したように、本発明によれば、アンチワインドアップ制御とともに、非干渉化制御を考慮して多変数制御に対応するコントローラを調整するパラメータ値を設定する際、PSO等のメタヒューリスティクスを利用することで、複雑であるパラメータ値の演算を容易に実行することが可能になる。
【0029】
以上、実施形態を用いて本発明を詳細に説明したが、本発明は本明細書中に説明した実施形態に限定されるものではない。本発明の範囲は、特許請求の範囲の記載及び特許請求の範囲の記載と均等の範囲により決定されるものである。
【符号の説明】
【0030】
1 コントローラ
2 制御対象
3リミッタ
100 設定装置
101初期値設定部
102 シミュレーション部
103 更新部
104 選択部
105 判定部