【解決手段】制御器更新装置10は、初期応答取得部11、推定応答算出部12、制御器更新部13を備える。初期応答取得部11は、制御対象101及び初期制御器を含む初期閉ループ系の応答を初期応答として取得する。推定応答算出部12は、初期制御器の伝達関数と、更新後制御器の伝達関数と、制御対象及び更新後制御器を含む更新後閉ループ系の目標伝達関数を含むフィルタとして、初期応答から推定応答を算出する。制御器更新部13は、推定応答算出部12で算出された推定応答と、更新後閉ループ系の目標応答との差を示す評価関数に基づいて、初期制御器を更新後制御器に更新する。
前記制御器更新部により行われる前記初期制御器から前記更新後制御器への更新は、前記初期制御器の要素及び要素同士の接続関係を保持しつつ、前記更新後制御器の伝達関数のパラメータを調整することにより行われる、
請求項1又は請求項2に記載の制御器更新装置。
前記更新後制御器設定部は、前記更新後閉ループ系をI‐PD制御器又はPI‐D制御器に帰着させることにより、前記更新後制御器の要素及び要素同士の接続関係を設定し、
前記制御器更新部は、設定された前記I‐PD制御器又は前記PI‐D制御器を考慮した前記評価関数に基づいて、前記更新後制御器の伝達関数のパラメータを更新する、
請求項4に記載の制御器更新装置。
【発明を実施するための形態】
【0018】
<第一の実施形態における閉ループ系の構成と機能>
図1から
図4を参照して、第一の実施形態に係る閉ループ系100と制御器更新装置10の構成とその機能について説明する。
【0019】
図1は、本発明の第一の実施形態に係る1自由度の閉ループ系100及び制御器更新装置10の機能的な構成を示すブロック図である。
図2は、代表的な閉ループ系100の構成を示すブロック図である。
図1に示すように、制御器更新装置10は、初期応答取得部11と、推定応答算出部12と、制御器更新部13を備える。また、閉ループ系100は、制御器101と制御対象102を備える。制御器更新装置10は、閉ループ系100の制御器101を更新する。
【0020】
制御器更新装置10は、1自由度の閉ループ系100が出力する応答y(ρ)が目標応答y
dに近づくように、制御器101のパラメータρを更新する。
なお、制御器更新装置10は、
図2に示す1自由度の閉ループ系100が備える制御器101及び制御対象102の各要素及びこれらの要素同士の接続関係を変更しない。ここでいう要素には、制御器101、制御対象102等の伝達要素の他に、加え合わせ点も含まれる。
【0021】
図2は、代表的な1自由度系の閉ループ系の例を示したものであり、
図2では、制御器101の伝達関数を符号「C」で表し、制御対象102の伝達関数を符号「G」で表している。以下、
図1に示す制御器更新装置10の構成及びその動作についてさらに詳細に説明する。
【0022】
図1、
図2に示す制御器101は、制御対象102を含む閉ループ系100の全体が安定するように制御対象を制御する。また、制御対象102は、比較的取り扱いが容易な線形時不変の一入力一出力の制御対象であり、伝達関数Gは既知である。
【0023】
これ以降、特に更新前あるいは更新後のいずれかに予め定められている場合を除き、閉ループ系100と制御器101の初期状態と更新後状態を区別するために、初期閉ループ系を「100
0」、初期制御器を「101
0」と記載し、更新後閉ループ系を「100
ρ」、更新後制御器を「101
ρ」と記載することにする。なお、初期状態と更新後状態を特に区別して説明しない場合には、単に閉ループ系100、制御器101と記載する。
【0024】
制御器更新装置10の初期応答取得部11は、初期制御器101
0を含む初期閉ループ系100
0の制御対象102からの応答を初期応答y
0として取得し、初期応答y
0を推定応答算出部12に送る。ここでいう初期制御器101
0は、パラメータρが更新される前の制御器であり、初期閉ループ系100
0は、パラメータρが更新される前の閉ループ系である。
【0025】
ここで、制御対象102からの初期応答y
0は、制御量の希望値r、初期制御器101
0の伝達関数C
0及び制御対象102の伝達関数Gを用いて、数1式で表される。
【0027】
また、更新後制御器101
ρの伝達関数C(ρ)とパラメータρが更新された後における閉ループ系100
ρの応答y(ρ)は、数1式と同様に、制御量の希望値r、更新後制御器101
ρの伝達関数C(ρ)、制御対象102の伝達関数Gを用いて数2式で表される。
【0029】
さらに、上述した数1式及び数2式を用いて制御量の希望値rを消去すると、数3式が導出される。
【0031】
ここで、まず比較のために、
図3を参照して、既に述べたERITを2自由度系に適用した例について説明する。
図3に示すように、フィードフォワード制御を行う制御器101
FFの伝達関数を「C
FF」、フィードバック制御を行う制御器101
FBの伝達関数を「C
FB」、フィードフォワード部を含む閉ループ制御系100の理想的更新装置としての制御器103の目標伝達関数を「T
d」とすると、数1式は数4式のように表すことができる。また、数2式も同様に、数5式のように表すことができる。なお、「C
0FF」は、フィードフォワード制御を行う初期制御器101
FF0の伝達関数であり、「C
FF(ρ)」は、フィードフォワード制御を行う更新後制御器101
FFρの伝達関数である。また、数4式と数5式を用いて制御量の希望値rを消去すると、数6式が導出される。
【0035】
さらに、
図3について説明すると、フィードフォワード制御器101
FFの伝達関数C
FF=T
dG
M−1として、このモデルの伝達関数G
Mが制御対象102の伝達関数Gにほぼ等しいと仮定すると(G
M≒G)、数5式は、y(ρ)≒T
drとなる。この場合には、制御するモデルが既知であることが前提になるが、このように、ERITを用いた2自由度制御系では、安定性及び応答性について個別に設計することが可能である。この点は2自由度系に適用されるERITの強みになると言ってよい。
【0036】
上述したように、数6式は、2自由度系のフィードフォワード部を含む閉ループ制御系100の初期応答y
0と目標伝達関数T
dにより応答y(ρ)を記述したものである。
このように、2自由度系のフィードフォワード部をERITにより更新する場合、上述した数6式に示す制御器101
FFの伝達関数「C
FF(ρ)」、ひいてはこの伝達関数のパラメータρを最適化することにより、
図3に示す制御器101
FFを更新することができる。
【0037】
しかし、
図2に示した1自由度の閉ループ系100が備える制御器101をERITにより更新する場合、数5式が制御対象102の伝達関数Gを含んでいるため、数5式を用いて直接的に制御器101を更新することができない。
【0038】
そこで、第一の実施形態に係る制御器更新装置10を使用して、下に記載の数7式で表される更新後閉ループ系100
ρの理想とされる目標伝達関数T
dと更新後制御器101
ρの理想とされる目標応答y
dとの関係を用いて、更新後制御器101
ρの伝達関数C(ρ)を求めることを考える。
ここで、目標伝達関数T
dとは、更新後閉ループ系100
ρが目標応答y
dを出力する場合における更新後閉ループ系100
ρの伝達関数である。なお、数7式は、制約式とも呼ばれる。
【0039】
図4は、
図2に示す閉ループ系100に加えて、理想的更新装置である制御器103の目標伝達関数T
dと、この目標伝達関数T
dに制御量の希望値rを供給して得られる目標応答y
dの関係を示した図である。この
図4から数7式と既に
図2で説明した数2式が導かれる。ここで、数2式の制御量の希望値rの係数である1自由度系の伝達関数が、目標伝達関数T
dと一致することが理想的な更新後の条件となる。言い換えると、数8式の制約式の成立が理想的な更新後の条件である。なお、目標伝達関数T
dは、設計者が予め定める関数である。
【0042】
数8式を変形して、制御対象102の伝達関数Gを求めると、伝達関数Gは、数9式のようになる。
【0044】
そして、この数9式を数3式に代入すると、下の数10式が導出される。数10式に含まれる応答y(ρ)は、推定応答と呼ばれる。
図1に示す制御器更新装置10の推定応答算出部12は、数10式を用いて推定応答を算出し、算出した推定応答を制御器更新部13に送る。
【0045】
具体的には、
図1に示すように、推定応答算出部12は、制御器101から初期制御器101
0の伝達関数C
0を受け取る。また、推定応答算出部12には、更新後制御器101
ρの伝達関数C(ρ)及び更新後閉ループ系100
ρの目標伝達関数T
dが与えられる。
【0046】
推定応答算出部12は、初期制御器101
0の伝達関数C
0と、更新後制御器101
ρの伝達関数C(ρ)と、更新後閉ループ系100
ρの目標伝達関数T
dが加えられる一種のフィルタとしての役割を果たす。そして、この推定応答算出部12に初期応答取得部11で取得された初期応答y
0が供給されると、推定応答算出部12は、数10式から得られる応答y(ρ)を推定応答として算出し、算出した推定応答y(ρ)を制御器更新部13に送る。
【0048】
閉ループ制御系100を評価するためには、数10式の左辺の推定応答y(ρ)と更新後閉ループ系100
ρの目標応答y
dとの差を小さくすればよいので、評価関数J(ρ)を数11式のように定め、J(ρ)の値の大きさによって閉ループ制御系100の評価が行われる。つまり、J(ρ)の値は小さければ小さいほど閉ループ制御系100の性能が良いと評価される。
【0050】
そこで、数10式を数11式に代入すると、下の数12式が得られる。
図1に示す制御器更新装置10の制御器更新部13は、数12式を用いて評価関数J(ρ)の値が最小になるパラメータρを算出する。
すなわち、制御器更新部13は、推定応答算出部12が算出する推定応答y(ρ)と、更新後閉ループ系100
ρの目標応答y
dとの差を示す評価関数J(ρ)に基づいて、更新後制御器101
ρのパラメータρを算出する。そして、制御器更新部13は、初期制御器101
0の要素及び要素同士の接続関係を保持しつつ、更新後制御器101
ρの伝達関数C(ρ)のパラメータρを調整して、初期制御器101
0を更新後制御器101
ρに更新する。
【0052】
さらに、この数12式に、数1式と数7式を代入すると、「y
d」、「y
0」が消去されて数13式が得られる。すなわち、数12式と数13式は、用いられる記号が異なるだけで実質的に同じ式である。
【0054】
ここで、上述した数8式で表される制約式を満たす制御器101の伝達関数C(ρ)を理想的制御器の伝達関数「C
d」とすると、数8式は、数14式のように書き換えることができる。
【0056】
そして、数13式と数14式から数15式が導出される。数15式に示される評価関数J(ρ)は、目標伝達関数T
d、初期閉ループ系の感度関数1/(1+GC
0)及び制御器101の相対誤差の積の2乗で示されている。
言い換えると、数15式は、目標伝達関数T
d、初期閉ループ系の感度関数1/(1+GC
0)及び制御器101の相対誤差の積からなるフィルタを制御量の希望値rに適用することを意味している。
つまり、制御器更新部13は、上述した数12式又は数13式で表される評価関数J(ρ)あるいは数15式で表される評価関数J(ρ)のいずれかの評価関数J(ρ)を任意に選択して、初期制御器101
0を更新後制御器101
ρに更新することができる。
【0058】
<第一の実施形態を台車の位置決め制御に適用した具体例>
以上、説明したように、数1式から数15式を用いて、制御器更新装置10の構成と機能及び制御器更新装置10による制御器101の更新方法を説明した。
次に、上述した制御器更新装置10とその更新方法を、例えば、
図5に示す台車の位置決め制御系500に適用する例を説明する。
図5は、本発明の第一の実施形態に係る台車の位置決め制御系の例を示す図である。
【0059】
図5に示すように、台車の位置決め制御系500は、台車501と、ゴムベルト502と、サーボモータ503と、プーリ504と、PID制御器505を備える。
【0060】
台車501は、ゴムベルト502に固定されている。ゴムベルト502は、サーボモータ503とプーリ504との間に所定の張力が加えられた状態で取り付けられている。サーボモータ503は、ゴムベルト502をサーボモータ503とプーリ504との間で回転させる。プーリ504は、内部に搭載されている不図示のポテンシオメータにより、台車501の移動距離を計測し、この計測した移動距離をPID制御器505にフィードバックする。PID制御器505は、プーリ504からのフィードバックに基づいてサーボモータ503の回転を制御する。
【0061】
ここで、PID制御器505の伝達関数Cは、PID制御器505のパラメータρ=[k
p,k
i,k
d]及びラプラス演算子sを含む数16式で表される。ここで、
図5に示されるコンピュータ装置をPID制御器505として使うため、数16式では、パラメータρは、比例、積分、微分のそれぞれのパラメータを示す[k
p,k
i,k
d]を使っているが、これを一般化してパラメータρ=[ρ
1,ρ
2,ρ
3]と記載することもできる。
【0063】
また、
図5に示す台車の位置決め制御系500の目標伝達関数T
dは、ラプラス演算子sを含む数17式で表される。数17式は、
図5に示す台車の位置決め制御系500の目標伝達関数T
dを、台車501の運動を決める運動方程式に基づいてラプラス演算子で与えた式である。
【0065】
さらに、この場合における評価関数J(ρ)は、ρ=[k
p,k
i,k
d]=[ρ
1,ρ
2,ρ
3]を用いて、数12式及び数16式から数18式が導出される。
【0067】
図1の制御器更新装置10の初期応答取得部11は、例えば、初期パラメータをρ
1=k
p=1.000,ρ
2=k
i=1.000,ρ
3=k
d=0.100として初期応答y
0を取得する。推定応答算出部12は、数18式のノルム記号内の第2項及び第3項で表される応答を推定応答y(ρ)として算出する。制御器更新部13は、数18式で表される評価関数J(ρ)の値を小さくする更新後パラメータρを計算して、ρ
1=k
p=0.305,ρ
2=k
i=0.001,ρ
3=k
d=0.043を算出し、これらの更新後パラメータρの値によりPID制御器505を更新する。
【0068】
図6は、本発明の第一の実施形態に係る台車の位置決め制御系500の目標応答y
d及び制御器更新装置10による更新の前後における台車の位置決め制御系500の応答例を示す図である。
図6に示されるように、PID制御器505には、二点鎖線A1で示される制御量の希望値r及び一点鎖線B1で示される目標応答y
dが設定されている。
制御器更新装置10による更新前には、PID制御器505は、
図6に破線D1で示すオーバーシュートを含む応答を示している。一方、制御器更新装置10による更新後には、PID制御器505は、
図6に実線E1で示すように、一点鎖線B1で示された目標応答y
dに追従する応答を示している。
【0069】
<第一の実施形態に係る閉ループ系の処理>
次に、
図7のフローチャートを参照して、第一の実施形態に係る制御器更新装置10により実行される制御器101の更新処理について説明する。
制御器更新装置10の初期応答取得部11は、制御対象102及び初期制御器101
0を含む初期閉ループ系100
0の応答を初期応答y
0として取得する(ステップS110)。また、この初期応答y
0は、推定応答算出部12に送られる。
【0070】
推定応答算出部12は、初期制御器101
0の伝達関数C
0と、更新後制御器101
ρの伝達関数C(ρ)と、更新後閉ループ系100
ρの目標伝達関数T
dを含むフィルタとしての機能を有する。言うまでもなく、更新後閉ループ系100
ρには、更新後制御器101
ρと制御対象102が含まれる。そして、推定応答算出部12は、初期応答取得部11から供給される初期応答y
0に基づいて、推定応答y(ρ)を算出し(ステップS120)、算出した推定応答y(ρ)を制御器更新部13に送る。
【0071】
次に、制御器更新部13は、推定応答y(ρ)と、更新後閉ループ系100
ρの目標応答y
dとの差を示す評価関数J(ρ)に基づいて、初期制御器101
0を更新後制御器101
ρに更新する(ステップS130)。
【0072】
以上、第一の実施形態に係る制御器更新装置10の処理について説明した。繰り返しになるが、制御器更新装置10は、制御対象102及び初期制御器101
0を含む初期閉ループ系100
0の応答y
0を初期応答として取得する。そして、上述した数10式で表される応答y(ρ)を推定応答として算出し、数12式、数13式又は数15式で表される評価関数J(ρ)に基づいて、初期制御器101
0を更新後制御器101
ρに更新する。
【0073】
上述のように、制御器更新装置10は、閉ループ系100に含まれる制御器101を簡易かつ最適に更新することができる。また、制御器更新装置10は、数9式の推定応答y(ρ)及び更新後パラメータρにより、更新後制御器101
ρの応答y(ρ)を推定することができる。これにより、制御器更新装置10は、更新後制御器101
ρの実装に要する労力を削減することができる。さらに、閉ループ系100の数式モデルと現実の系の間には、例えば摩擦や機械のガタツキ等により誤差が発生するが、本発明の制御器更新装置10のようなデータ駆動制御では、動特性モデルを求めることなく、直接的に信号の状態で制御器101を調整することが可能である。したがって、現実の系と数式モデルとの擦り合わせ等の作業をなくして、閉ループ系100に含まれる制御器101を更新することができる。
【0074】
なお、制御器更新装置10の制御器更新部13は、数12式又は数13式で表される評価関数J(ρ)に基づいて、
図5に示すPID制御器505
0(初期制御器101
0に相当)をI‐PD制御器又はPI‐D制御器505
ρ(更新後制御器101
ρとに相当)に更新してもよい。ここでいうI‐PD制御器及びPI‐D制御器は、線形時不変の制御器の一例として挙げられるものである。
【0075】
<第二の実施形態に係る閉ループ系の構成と動作>
次に、
図8から
図11を参照して、第二の実施形態に係る制御器更新装置20の構成と動作について説明する。なお、第二の実施形態の説明において、第一の実施形態と重複する説明は省略する。
【0076】
図8は、本発明の第二の実施形態に係る制御器更新装置20の機能的な構成例を示すブロック図である。
図9は、第二の実施形態に係る更新前閉ループ系200
0の構成例を示すブロック図である。
図10は、第二の実施形態に係る更新後閉ループ系200
ρの構成例を示すブロック図である。
【0077】
図8に示すように、制御器更新装置20は、初期応答取得部21、更新後制御器設定部22、推定応答算出部23及び制御器更新部24を備える。制御器更新装置20は、第一の実施形態に係る制御器更新装置10と異なり、更新後閉ループ系200
ρをI‐PD制御器又はPI‐D制御器に帰着させることにより、
図9に示す1自由度の更新前閉ループ系200
0が備える制御器201の要素及びこれらの要素同士の接続関係を設定する。
【0078】
そして、制御器更新装置20は、更新後の閉ループ系200
ρが出力する応答y(ρ)が目標応答y
dに近づくように、制御器201のパラメータρを更新する。
図9は、作図上では
図2と同じ構成になっているが、
図9の制御器201は、I‐PD制御器又はPI‐D制御器に帰着させている点で
図2の制御器101とは異なる。
【0079】
以下、制御器更新装置20についてさらに具体的に説明する。なお、第二の実施形態に示すI‐PD制御器又はPI‐D制御器は、あくまでも一例であり、線形時不変の制御器であればどのようなものであってもよい。
図9に示すように、更新前閉ループ系200は、制御器201と、制御対象202を含む。制御器201及び制御対象202に対する条件は、
図2に示した第一の実施形態に係る制御器101及び制御対象102と同様である。
【0080】
制御器更新装置20の初期応答取得部21は、初期制御器201
0を含む初期閉ループ系200
0の応答を初期制御器201の初期応答y
0として取得し、初期応答y
0を推定応答算出部23に供給する。
初期応答y
0は、制御量の希望値r、初期制御器201の伝達関数C
0及び制御対象202の伝達関数Gを用いて、第一の実施形態に係る数1式と同様の式で表される。
【0081】
更新後制御器設定部22は、更新後閉ループ系200
ρをI‐PD制御器又はPI‐D制御器に帰着させることにより、更新後制御器201
ρの要素及び要素同士の接続関係を設定する。具体的には、更新後制御器設定部22は、更新後制御器201
ρの要素及び要素同士の接続関係を示す情報を受け付け、この設定を実行する。この情報は、線形時不変の制御器201
ρ(例えば、I‐PD制御器、PI‐D制御器など)と制御器201
ρの接続関係を示している。
【0082】
図10に示すように、更新後制御器設定部22は、例えば、
図9に示す更新前制御器201を更新後に制御器201
1及び制御器201
2の2つに分割して設定する。この例では、
図9に示す制御器201が初期制御器201
0であり、
図10に示す制御器201
1及び制御器201
2が更新後制御器201
ρになる。したがって、
図9の制御器201は初期制御器201
0と同じものである。
図10に示す更新後閉ループ系200
ρにおいて、パラメータρが更新された後における更新後閉ループ系200
ρの応答y(ρ)は、更新後制御器201
1の伝達関数C
1(ρ)及び更新後制御器201
2の伝達関数C
2(ρ)を用いて、数19式のように表すことができる。
【0084】
また、
図9に示す更新前制御器201を
図10に示す更新後制御器201
1及び更新後制御器201
2に更新する場合における制約式は、数20式で表される。数20式の右辺の「T
d」は理想的更新装置(制御器201
1と制御器201
2)の目標伝達関数である。
【0086】
ここで、
図9の更新前の閉ループ系200から初期応答y
0を求めると、数1式と同じ式が得られ、この数1式を数19式に代入して制御量の希望値rを消去すると、数21式が導出される。ただし、「C0」は、
図9の制御器201の更新前の伝達関数である。
【0088】
そして、数21式と、数20式とから伝達関数Gを消去して、推定応答y(ρ)を求めると、数22式のようになる。
【0090】
そして、このようにして求めた数22式の推定応答y(ρ)を、数12式の評価関数J(ρ)に代入すると、数23式が求められる。
【数23】
【0091】
すなわち、
図9に示した更新前制御器201を、
図10に示す更新後制御器201
1及び更新後制御器201
2に更新する場合における評価関数J(ρ)は、更新後制御器201
1の伝達関数C
1(ρ)及び更新後制御器201
2の伝達関数C
2(ρ)を含む数23式で表される。
【0092】
そして、制御器更新部24は、数20式を用いて数23式の評価関数J(ρ)の値が小さくなるパラメータρを算出することにより、更新前制御器201(初期制御器201
0)を線形時不変の更新後制御器201
1と更新後制御器201
2に更新する。
【0093】
次に、
図9に示す更新前制御器201(初期制御器201
0としてのPID制御器)を更・BR>V後制御器201
ρ(201
1、及び201
2)としてのI‐PD制御器に更新する具体例について説明する。
【0094】
初期制御器201
0としてのPID制御器の伝達関数C
0は、パラメータρ=[k
p,k
i,k
d]及びラプラス演算子sを含む数24式で表される。
【0096】
更新後制御器201
ρとしてのI‐PD制御器に含まれる制御器、すなわち
図10に示した更新後制御器201
1の伝達関数C
1は、パラメータk
i及びラプラス演算子sを含む数25式で表される。
【0098】
また、更新後制御器201
ρとしてのI‐PD制御器に含まれる制御器、すなわち
図10に示した更新後制御器201
2の伝達関数C
2は、パラメータk
p,k
d及びラプラス演算子sを含む数26式で表される。
【0100】
また、
図10に示す更新後閉ループ系200
ρの目標伝達関数T
dは、ラプラス演算子sを含む数27式で表される。
【0102】
ここで、初期応答取得部21において、例えば、初期パラメータをk
p=1.000、k
i=1.000、k
d=0.100として初期応答y
0を取得する。推定応答算出部23は、数23式のノルム記号内の第2項、第3項及び第4項で表される応答を推定応答y(ρ)として算出する。
制御器更新部13は、数23式で表される評価関数J(ρ)の値を小さくする更新後パラメータρとしてk
p=0.003,k
i=0.001,k
d=-0.297を算出した。そして、制御器更新部13は、算出した更新後パラメータの値により
図9に示した制御器201を
図10に示す制御器201
1及び制御器201
2に更新する。
【0103】
図11は、本発明の第二の実施形態に係る初期閉ループ系200
0の初期応答y
0、更新後閉ループ系200
ρの応答y(ρ)及び目標応答y
dの例を示す図である。更新後制御器201
ρとしての制御器201
1及び制御器201
2には、
図11に二点鎖線A2で示された制御量の希望値r及び一点鎖線B2で示された目標応答y
dが設定されている。
【0104】
制御器更新装置20による更新前には、初期制御器201
0としての制御器201は、
図11に破線D2で示したようなオーバーシュートする応答を示している。一方、制御器更新装置20による更新の後には、更新後制御器201
ρとしての制御器201
1及び制御器201
2は、
図11に実線E2で示すように、一点鎖線B2で示された目標応答y
dに追従する応答y(ρ)を示している。
【0105】
次に、
図12のフローチャートを参照して、第二の実施形態に係る制御器更新装置20が実行する処理について説明する。
【0106】
図8に示す制御器更新装置20の初期応答取得部21は、制御対象202及び初期制御器201を含む初期閉ループ系200
0の応答を初期応答y
0として取得する(ステップS210)。また、この初期応答y
0は、推定応答算出部12に送られる。
【0107】
更新後制御器設定部22は、更新後閉ループ系200
ρをI‐PD制御器又はPI‐D制御器に帰着させることにより、
図10に示す更新後制御器201
ρ(201
1、201
2)の要素及び要素同士の接続関係を設定する(ステップS220)。
【0108】
推定応答算出部23は、初期制御器201の伝達関数C
0と、更新後制御器201
ρ(201
1、201
2)の伝達関数C
1(ρ)、C
2(ρ)と、更新後閉ループ系200
ρの目標伝達関数T
dを含むフィルタ機能を持っており、初期応答y
0が入力されると、これを推定応答y(ρ)として算出する(ステップS230)。そして、推定応答算出部23は、算出した推定応答y(ρ)を制御器更新部24に送る。
【0109】
制御器更新部24は、推定応答y(ρ)と、更新後閉ループ系200の目標応答y
dとの差を示す数23式に示す評価関数J(ρ)に基づいて、初期制御器201を線形時不変の更新後制御器201
ρ(201
1、201
2)に更新する(ステップS240)。すなわち、制御器更新部24は、設定されたI‐PD制御器あるいはPI‐D制御器を考慮した評価関数J(ρ)に基づいて、
図10に示す更新後制御器201
1及び更新後制御器201
2の伝達関数C
1(ρ)及びC
2(ρ)のパラメータρを更新する。
【0110】
以上、第二の実施形態に係る制御器更新装置20の構成と動作について説明した。繰り返すと、制御器更新装置20は、制御対象202及び初期制御器201を含む初期閉ループ系200
0の応答y
0を初期応答として取得する。そして、制御器更新装置20は、数19式及び第一の実施形態に係る数1式から制御量の希望値rを消去して導出される数21式と、数21式から数20式を用いて制御対象の伝達関数Gを消去して数22式を得る。制御器更新装置20は、この数22式により導出される応答y(ρ)を推定応答として算出する。さらに、上述した数23式で表される評価関数J(ρ)に基づいて、初期制御器201を更新後制御器201
ρ(201
1、201
2)に更新する。このため、制御器更新装置20も、第一の実施形態に係る制御器更新装置10と同様の効果を奏する。
【0111】
<第三の実施形態に係る制御器更新装置の構成と動作>
次に、
図13から
図15を参照して、本発明の第三の実施形態に係る制御器更新装置の構成と動作を説明する。第三の実施形態は、第二の実施形態の変形例であり、制御器更新装置の構成は、
図8に示した制御器更新装置20と同じである。したがって、第三の実施形態の説明でも、第一の実施形態及び第二の実施形態の説明と重複する部分の説明は省略する。
【0112】
第三の実施形態における制御器更新装置20は、更新後閉ループ系200
ρを内部モデル制御器に帰着させる点で、第二の実施形態とは異なる。すなわち、制御器更新装置20は、
図13に示すように、更新後閉ループ系300
ρを内部モデル制御器に帰着させることにより、更新後制御器301
ρの要素及び要素同士の接続関係を設定する。
そして、
図8に示す制御器更新装置20の制御器更新部24で内部モデル制御器を考慮した評価関数J(ρ)に基づいて、初期制御器301
0を線形時不変の更新後制御器301
ρに更新する。ここで、内部モデル制御器は、線形時不変の制御器である。以下、第三の実施形態における制御器更新装置20について、さらに具体的に説明する。
【0113】
上述した数8式を満たす制御対象202(
図8参照)の伝達関数Gを
図13に示す制御対象302
2の伝達関数G
M(ρ)とすると、数8式の変形式として数28式が成立する。
【0115】
数28式及び数11式から数29式が導出される。数29式は、
図9に示した閉ループ系200を、
図13に示す内部モデル制御器を実行する閉ループ系300に帰着させる式である。
【0117】
図13は、本発明の第三の実施形態に係る更新後閉ループ系300
ρの構成例を示すブロック図である。
図13に示すように、閉ループ系300は、制御器301と、制御対象302
1と、制御対象302
2を含む。制御器301は、伝達関数T
dG
M−1を有する。制御対象302
1は、実際に存在する制御器であり、伝達関数Gを有する。また、制御対象302
2は、内部モデル制御器に帰着させたことによりモデル化された制御器であり、伝達関数G
Mを有する。
【0118】
以下、数28式及び数29式を用いて、制御器更新装置20により制御器301を更新する方法を説明する。
【0119】
制御対象302
2の内部モデルの伝達関数G
M(ρ)は、パラメータρ
1,ρ
2,ρ
3及びラプラス演算子sを含む数30式で表される。但し、「G
M−1(ρ)」は、「1/G
M(ρ)」を表す。
【0121】
また、
図13に示した閉ループ系300の目標伝達関数T
dは、ラプラス演算子sを含む数31式で表される。数31式も、設計者が任意に設定する式である。
【0123】
さらに、上述した数29式及び数30式から評価関数J(ρ)は、数32式で表される。また、数30式は、パラメータρ
1,ρ
2,ρ
3について線形化されている。
【0125】
この場合、制御器更新装置20は、最小二乗法により、数33式で表されるモデルを取得する。
【0127】
図14は、本発明の第三の実施形態に係る初期閉ループ系の応答、更新後閉ループ系の応答及び目標応答の例を示す図である。更新後制御器301
ρは、
図14に二点鎖線A3で示された制御量の希望値及び一点鎖線B3で示された目標応答が設定されている。
制御器更新装置20による更新前には、制御器301は、
図14に破線D3で示すようなオーバーシュートを含む応答を示している。一方、制御器更新装置20による更新後には、制御器301
ρは、
図14に実線E3で示すように、一点鎖線B3で示された目標応答に追従する応答を示している。
【0128】
次に、
図15のフローチャートを参照して、本発明の第三の実施形態に係る制御器更新装置20が実行する処理例について説明する。
図8に示した制御器更新装置20の初期応答取得部21は、制御対象202及び初期制御器201
0を含む初期閉ループ系200
0の応答を初期応答y
0として取得する(ステップS310)。また、初期応答取得部21は、この初期応答y
0を推定応答算出部22に送る。
【0129】
更新後制御器設定部22は、
図8に示した更新後閉ループ系200
ρを
図13に示す更新後閉ループ系300
ρの内部モデル制御器301に帰着させることにより、更新後制御器301
ρの要素及び要素同士の接続関係を設定する(ステップS320)。
【0130】
推定応答算出部23は、初期制御器301
0の伝達関数C
0と、更新後制御器301
ρの伝達関数C(ρ)と、制御対象302
1、302
2及び更新後制御器301
ρを含む更新後閉ループ系300
ρの目標伝達関数T
dを含むフィルタとしての機能を持つ。そして、このフィルタとしての推定応答算出部23に初期応答取得部21からの初期応答y
0が加えられると、推定応答算出部23は、初期応答y
0を推定応答y(ρ)に変換する算出処理を行う(ステップS330)。また、推定応答算出部23は、算出した推定応答y(ρ)を制御器更新部24に送る。
【0131】
制御器更新部24は、推定応答y(ρ)と、更新後閉ループ系300
ρの目標応答y
dとの差を示す、数32式に示す評価関数J(ρ)に基づいて、
図9に示す初期制御器201を、線形時不変の
図13に示す更新後制御器301に更新する(ステップS340)。すなわち、制御器更新部24は、設定された内部モデル制御器を考慮した評価関数J(ρ)に基づいて、更新後制御器301
ρの伝達関数のパラメータρを更新する。
【0132】
以上、第三の実施形態に係る制御器更新装置20について説明した。制御器更新装置20は、更新後閉ループ系300
0を内部モデル制御器に帰着させることにより、更新後制御器301
ρの要素及び要素同士の接続関係を設定する。
そして、制御器更新装置20は、制御器更新部24により
図13に示す内部モデル制御器を考慮した評価関数J(ρ)に基づいて、
図9に示す初期制御器201
0を
図13に示す更新後制御器301
ρに更新する。このため、制御器更新装置20は、制御器や閉ループ系の目標伝達関数を与えた場合における指針を提供することができる。
【0133】
なお、上述した第一の実施形態、第二の実施形態及び第三の実施形態では、閉ループ系が出力する応答の差、すなわち推定応答と、更新後閉ループ系の目標応答との差に基づいて、初期制御器を更新後制御器に更新したが、本発明は、これに限定されない。第一の実施形態、第二の実施形態又は第三の実施形態に係る制御器更新装置は、閉ループ系に入力される信号の差に基づいて、初期制御器を更新後制御器に更新してもよい。
【0134】
また、上述した各装置は、内部にコンピュータを有している。そして、上述した各処理の過程は、プログラム形式でコンピュータにより読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することにより実行される。ここでコンピュータにより読み取り可能な記録媒体は、例えば、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリである。また、通信回線を経由してこのプログラムをコンピュータに配信し、コンピュータにこのプログラムを実行させてもよい。
【0135】
また、上述したプログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムに予め記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分プログラムであってもよい。
【0136】
以上、本発明の実施形態について図面を参照して詳述したが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。