以下、本発明を実施するための形態について図面を用いて詳細に説明する。本発明は、所定の全体システムのH∞ノルムを評価関数として、制御器Hのゲイン及び誤差を定量化し、制御器Hの誤差をある程度許容するように、H∞ノルムを最小化する制御器Hのパラメータを決定する。
これにより、従来技術では制御器Hのゲインを十分に小さくすることができない場合に、制御器Hの制御性能の低下をある程度許容することにより、制御器Hの設計に多少の誤差は生じるが、ゲインを小さくすることができる。
〔ハードウェア構成〕
まず、本発明の実施形態による制御器設計装置のハードウェア構成について説明する。図1は、本発明の実施形態による制御器設計装置のハードウェア構成を示す概略図である。この制御器設計装置1は、制御器Hを設計する装置である。制御器設計装置1は、CPU11と、プログラム及びテーブル等を記憶するROM及びRAMからなる記憶部12と、アプリケーションのプログラム、テーブル及びデータ等を記憶する記憶装置(例えばハードディスク装置)13と、当該制御器設計装置1のオペレータによるキーボード及びマウス等の操作に伴い、所定のデータを入力制御する操作/入力部14と、オペレータに対しデータ入力操作等を促すための画面情報を表示器に出力する表示出力インタフェース部15と、インターネット等のネットワークを介してプログラム及びデータの送受信を行う通信部16と、を備えて構成され、これらの構成部はシステムバス17を介して相互に接続される。
記憶装置13には、制御器設計装置1の基本的な機能を提供するOS(オペレーティングシステム)プログラム、制御器設計プログラム、及び、制御器設計プログラムにて使用する各種テーブル及びデータ等が記憶されている。
制御器設計プログラムは、制御対象Gpの逆システムHinvの特性と、所望の特性を付与する目標システムGtの特性とを合わせた制御器Hを設計するためのプログラムである。具体的には、制御器設計プログラムは、制御対象Gpを、直達項を持たない状態空間モデルで表現することを前提に、所定の全体システムのH∞ノルムを評価関数として、制御器Hのゲイン及び誤差を定量化し、制御器Hの誤差をある程度許容するように、H∞ノルムを最小化する制御器Hのパラメータを決定する。
尚、制御器設計プログラムは、当該制御器設計装置1が処理を行うときに、CPU11により記憶装置13から記憶部12のRAMに読み出されて実行される。また、各種テーブル及びデータは、制御器設計プログラムの実行に伴い生成され、CPU11によって記憶部12のRAMから記憶装置13へ書き込まれ、また、制御器設計プログラムの実行に伴い、CPU11によって記憶装置13から記憶部12のRAMに読み出される。
ここで、OSプログラムは、CPU11により実行され、制御器設計装置1の基本的な機能として、記憶部12、記憶装置13、操作/入力部14、表示出力インタフェース部15及び通信部16を管理する。そして、このOSプログラムがCPU11によって実行された状態で、前述の制御器設計プログラムが実行される。
制御部10は、CPU11及び記憶部12により構成され、CPU11が記憶装置13に記憶された制御器設計プログラムを記憶部12に読み出して実行することにより、制御器設計装置1全体を統括制御する。図1は、制御器設計プログラムが記憶装置13から記憶部12に読み出された状態を示している。このように、制御器設計装置1は、図1に示したハードウェア構成により、制御部10が制御器設計プログラムに従って各種処理を行う。
〔制御器H〕
次に、図1に示した制御器設計プログラムにより設計される制御器Hについて説明する。図2は、制御器Hを含む音響システムの構成例を示す図である。この音響システムは、制御器H、及び音場である制御対象Gpにより構成される。
制御器Hは、制御対象Gpの逆システムHinvの特性と、所望の特性を付与する目標システムGtの特性とを備えている。制御器Hは、m2個の音響信号(仮想音源信号)u2-1〜u2-m2を入力し、m1個の音響信号(2次音源信号)u1-1〜u1-m1を生成し、m1個の音響信号u1-1〜u1-m1を2次音源であるスピーカ101−1〜101−m1へ出力する。m2個の音響信号u2-1〜u2-m2は、後述する仮想音源であるスピーカ103−1〜103−m2が出力する信号に相当する。
制御対象Gpには、m1個のスピーカ101−1〜101−m1が配置され、聴取者104の耳105−1,105−2の位置が制御点である。この制御点において音響信号が観察される。制御対象Gpの入力点であるスピーカ101−1〜101−m1の位置が提示点であり、当該提示点から制御点へ音響信号が提示される。制御対象Gpは、制御器Hからm1個の音響信号u1-1〜u1-m1を入力し、スピーカ101−1〜101−m1から耳105−1,105−2へ音響信号u1-1〜u1-m1を提示する。これにより、耳105−1,105−2にて音響信号y1,y2が観察される。
目標システムGtには、仮想音源であるm2個のスピーカ103−1〜103−m2が配置される。スピーカ103−1〜103−m2からのm2個の音響信号u2-1〜u2-m2により、聴取者104の耳105−1,105−2の位置である制御点において音響信号が観察される。目標システムGtは、所望の音響信号を再生することを模擬するシステムであり、m2個の音響信号u2-1〜u2-m2を入力し、音響信号u2-1〜u2-m2に対し、耳105−1,105−2の位置である制御点にて実現したい所望の音響特性が観察される。
このように、制御器Hは、制御対象Gpの逆システムHinvの特性と、所望の特性を付与する目標システムGtの特性とを備え、逆システムHinvが請け負う処理と、目標システムGtが請け負う処理とを一括して行う。
〔制御対象Gp〕
本発明の実施形態では、制御対象Gpは、直達項を持たない状態空間モデルとして表現する。
図3は、制御対象Gpを、直達項を持たない状態空間モデルで表した場合のブロック線図であり、本発明の実施形態にて想定するモデルである。図22に示した直達項を持つ状態空間モデルとこの図3の状態空間モデルとを比較すると、図22では直達項の係数行列Dが存在するのに対し、図3では直達項の係数行列Dが存在しない点で相違する。その他は同じである。
直達項を持たない状態空間モデルの一般形は、以下の式にて表される。
前記式(5)は、直達項を持つ状態空間モデルの前記式(1)と異なり、直達項の係数行列Dと入力信号uの乗算結果Du(k)が存在しない。
図3に示すように、入力信号uと出力信号yとの間に、1サンプル時間の遅れを生じさせる遅延器(Z-1)が存在する。このため、入力信号uのサンプル時間と出力信号yのサンプル時間とが同じではなく、この状態空間モデルは、1サンプル時間の遅延を有することとなる。
〔制御器設計装置1の制御部10〕
次に、図1に示した制御器設計装置1の制御部10について説明する。図4は、制御部10の機能構成例を示すブロック図であり、当該制御部10が制御器設計プログラムの処理を実行する際の機能構成を示している。この制御部10は、同定部20、遅延時間分離部21、システム構成部22、パラメータ決定部23及び遅延時間補償部(遅延時間算出部)24を備えている。
図2に示した二次音源であるm1個のスピーカ101−1〜101−m1から出力される音響信号u1-1〜u1-m1、仮想音源であるm2個のスピーカ103−1〜103−m2から出力される音響信号u2-1〜u2-m2、及び制御点の耳105−1,105−2に提示される音響信号y1,y2が測定され、制御部10は、これらの信号を測定信号として入力する。
制御部10は、これらの測定信号である音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定して出力する。制御器Hのパラメータは、制御器(仮制御器)H0の係数行列A0,B0,C0,D0、遅延器(第1遅延器)Rdの遅延時間Rd1〜Rdm2、及び遅延器(第2遅延器)Rcの遅延時間Rc1〜Rcm1である。これらのパラメータの詳細については後述する。
制御部10により決定されたこれらのパラメータを用いて構成される制御器Hは、図2に示したとおり、音響信号u2-1〜u2-m2を入力し、音響信号u1-1〜u1-m1を出力する。つまり、これらのパラメータは、入力信号である音響信号u2-1〜u2-m2から出力信号である音響信号u1-1〜u1-m1を生成するためのデータである。
図5は、制御器Hの構成例を示すブロック図であり、図6は、制御器H0を、直達項を持つ状態空間モデルで表した場合のブロック線図である。図5を参照して、この制御器Hは、遅延器Rd、制御器H0及び遅延器Rcを備えている。
遅延器Rdは、m2個の遅延器30−1,30−2,・・・,30−m2により構成される。遅延器30−1は、音響信号u2-1を入力し、音響信号u2-1を遅延時間Rd1だけ遅延させ、遅延後の音響信号u2-1を制御器H0に出力する。遅延器30−2は、音響信号u2-2を入力し、音響信号u2-2を遅延時間Rd2だけ遅延させ、遅延後の音響信号u2-2を制御器H0に出力する。同様に、遅延器30−m2は、音響信号u2-m2を入力し、音響信号u2-m2を遅延時間Rdm2だけ遅延させ、遅延後の音響信号u2-m2を制御器H0に出力する。
制御器H0は、遅延器Rdから遅延後の音響信号u2-1,u2-2〜u2-m2を入力し、図6のブロック線図に示す処理(前記式(1)の処理に相当、後述する式(11)の処理)を行う。そして、制御器H0は、m1個の遅延前の音響信号u1-1,u1-2〜u1-m1を生成して遅延器Rcに出力する。
図6を参照して、制御器H0は、乗算器40,43,44,45、遅延器42及び加算器41,46を備えている。乗算器40は、入力信号uである音響信号u2-1〜u2-m2(u2)を入力し、音響信号u2に係数行列B0を乗算し、乗算結果を加算器41に出力する。加算器41は、乗算器40から乗算結果を入力すると共に、乗算器43から乗算結果を入力し、両方の乗算結果を加算し、加算結果を遅延器42に出力する。
遅延器42は、加算器41から加算結果を入力し、加算結果を1サンプル分遅延させ、1サンプル遅延後の加算結果xを乗算器43,44に出力する。乗算器43は、遅延器42から加算結果xを入力し、加算結果xに係数行列A0を乗算し、乗算結果を加算器41に出力する。
乗算器44は、遅延器42から加算結果xを入力し、加算結果xに係数行列C0を乗算し、乗算結果を加算器46に出力する。乗算器45は、音響信号u2を入力し、音響信号u2に係数行列D0を乗算し、乗算結果を加算器46に出力する。
加算器46は、乗算器44から乗算結果を入力すると共に、乗算器45から乗算結果を入力し、両方の乗算結果を加算し、加算結果を遅延前の音響信号u1-1,u1-2〜u1-m1(u1)である出力信号yとして遅延器Rcに出力する。
図5に戻って、遅延器Rcは、m1個の遅延器31−1,31−2,・・・,31−m1により構成される。遅延器31−1は、制御器H0から遅延前の音響信号u1-1を入力し、遅延前の音響信号u1-1を遅延時間Rc1だけ遅延させ、音響信号u1-1をスピーカ101−1へ出力する。遅延器31−2は、制御器H0から遅延前の音響信号u1-2を入力し、遅延前の音響信号u1-2を遅延時間Rc2だけ遅延させ、音響信号u1-2をスピーカ101−2へ出力する。同様に、遅延器31−m1は、制御器H0から遅延前の音響信号u1-m1を入力し、遅延前の音響信号u1-m1を遅延時間Rcm1だけ遅延させ、音響信号u1-m1をスピーカ101−m1へ出力する。
図6に示した制御器H0の係数行列A0,B0,C0,D0は、制御部10のパラメータ決定部23により決定され、図5に示した遅延器Rdの遅延時間Rd1〜Rdm2及び遅延器Rcの遅延時間Rc1〜Rcm1は、制御部10の遅延時間補償部24により決定される。
〔制御部10の処理〕
図7は、制御部10の処理例を示すフローチャートである。以下、制御部10の処理例について詳細に説明する。前述のとおり、制御部10は、音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータ(制御器H0の係数行列A0,B0,C0,D0、遅延器Rdの遅延時間Rd1〜Rdm2及び遅延器Rcの遅延時間Rc1〜Rcm1)を決定する。
(制御対象Gp及び目標システムGtを同定:ステップS701)
制御部10の同定部20は、音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて、制御対象Gp及び目標システムGtを同定する(ステップS701)。
これにより、制御対象Gp及び目標システムGtを状態空間モデルで表した場合の係数行列が得られる。
図8は、制御対象Gp及び目標システムGtを結合した結合システムGwを説明する図である。制御対象Gpにおける2次音源であるスピーカ101−1〜101−m1の数はm1であり、目標システムGtにおける仮想音源の数はm2であり、制御点である耳105−1,105−2の数はp=2である。
制御対象Gp及び目標システムGtを結合したシステムを結合システムGwと定義すると、結合システムGwは、m1+m2入力及びp出力のシステムとなる。結合システムGwにおいて、第1番目〜第m1番目の入力を制御対象Gpの入力とし、第m1+1番目〜第m1+m2番目の入力を目標システムGtの入力とする。
具体的には、まず、同定部20は、直達項を持たない状態空間モデルで表した結合システムGwに対し、既存の手法を用いて、結合システムGwの係数行列Aw,Bw,Cwを求める。
例えば、2次音源の音響信号u1-1〜u1-m1、仮想音源の音響信号u2-1〜u2-m2、及びその応答である制御点の音響信号y1,y2が測定(収音)されるものとする。同定部20は、これらの測定信号である音響信号を入力し、2次音源及び仮想音源と制御点との間のインパルス応答を算出する。そして、同定部20は、インパルス応答に基づいて、特異値分解法により、係数行列Aw,Bw,Cwを求める。尚、同定部20は、これらの測定信号である音響信号を入力し、部分空間法により、係数行列Aw,Bw,Cwを求めるようにしてもよい。
尚、特異値分解法及び部分空間法は既知であるから、ここでは詳細な説明を省略する。特異値分解法及び部分空間法は一例であり、他の手法を用いるようにしてもよい。音響信号u1-1〜u1-m1,u2-1〜u2-m2の伝搬にはむだ時間が含まれるため、直達項の係数行列Dwはゼロとする。
直達項を持たない状態空間モデルで表した結合システムGwは、入力信号をu、出力信号をy、状態変数をxとして、以下の式にて表される。
{Aw,Bw,Cw}は、それぞれ結合システムGwの係数行列(システム行列)、入力側の係数行列(入力行列)、出力側の係数行列(出力行列)である。ここで、係数行列Bwの1〜m1列をBpとし、m1+1〜m2列をBtとする。
直達項を持たない状態空間モデルで表した制御対象Gpは、入力信号をu、出力信号をy、状態変数をxとして、以下の式にて表される。
{Aw,Bp,Cw}は、それぞれ制御対象Gpの係数行列(システム行列)、入力側の係数行列(入力行列)、出力側の係数行列(出力行列)である。
直達項を持たない状態空間モデルで表した目標システムGtは、入力信号をu、出力信号をy、状態変数をxとして、以下の式にて表される。
{Aw,Bt,Cw}は、それぞれ目標システムGtの係数行列(システム行列)、入力側の係数行列(入力行列)、出力側の係数行列(出力行列)である。
このように、同定部20により、制御対象Gpについて、直達項を持たない状態空間モデルで表した場合の係数行列Aw,Bp,Cwが得られ、目標システムGtについて、直達項を持たない状態空間モデルで表した場合の係数行列Aw,Bt,Cwが得られる。
(制御対象Gp及び目標システムGtから遅延時間を分離:ステップS702)
制御部10の遅延時間分離部21は、音響信号u1-1〜u1-m1,y1,y2に基づいて、制御対象Gpの遅延時間を求め、制御対象Gpから遅延時間を分離し、制御対象(分離制御対象)Gp#を求める。また、遅延時間分離部21は、音響信号u2-1〜u2-m2,y1,y2に基づいて、目標システムGtの遅延時間を求め、目標システムGtから遅延時間を分離し、目標システム(分離目標システム)Gt#を求める(ステップS702)。
これにより、制御対象Gp#及び目標システムGt#を状態空間モデルで表した場合の係数行列が得られる。
具体的には、遅延時間分離部21は、制御対象Gpに対し、第i(i=1,・・・,m1)番目の音響信号u1-iを入力してから、出力信号である音響信号y1,y2のうちのいずれかから非零の値が出力されるまでの間の時間を求める。そして、遅延時間分離部21は、当該時間から1サンプル時間減算し、減算結果の時間を第i番目の音響信号u1-iの遅延時間とする。
図9は、遅延時間を分離した制御対象Gp#を説明する図である。制御対象Gpは、入力した信号を遅延時間分遅延させる遅延器Rp、及び遅延時間を分離した制御対象Gp#を備えて構成される。
遅延器Rpは、音響信号u1-1〜u1-m1のそれぞれに対応した遅延時間(遅延要素)を対角成分に持つ伝達関数行列にて表される。つまり、遅延器Rpのi行i列の要素は、制御対象Gpのi番目の入力に対応する遅延器である。
遅延時間を分離した制御対象Gp#は、直達項を持たない状態空間モデルで表され、入力信号をu、出力信号をy、状態変数をxとして、以下の式にて表される。
{Aw#,Bp#,Cw#}は、それぞれ制御対象Gp#の係数行列(システム行列)、入力側の係数行列(入力行列)、出力側の係数行列(出力行列)である。
また、遅延時間分離部21は、目標システムGtに対し、第i(i=1,・・・,m2)番目の音響信号u2-iを入力してから、出力信号である音響信号y1,y2のうちのいずれかから非零の値が出力されるまでの間の時間を求める。そして、遅延時間分離部21は、当該時間から1サンプル時間減算し、減算結果の時間を第i番目の音響信号u2-iの遅延時間とする。
図10は、遅延時間を分離した目標システムGt#を説明する図である。目標システムGtは、入力した信号を遅延時間分遅延させる遅延器Rt、及び遅延時間を分離した目標システムGt#を備えて構成される。
遅延器Rtは、音響信号u2-1〜u2-m2のそれぞれに対応した遅延時間(遅延要素)を対角成分に持つ伝達関数行列にて表される。つまり、遅延器Rtのi行i列の要素は、目標システムGtのi番目の入力に対応する遅延器である。
遅延時間を分離した目標システムGt#は、直達項を持たない状態空間モデルで表され、入力信号をu、出力信号をy、状態変数をxとして、以下の式にて表される。
{Aw#,Bt#,Cw#}は、それぞれ目標システムGt#の係数行列(システム行列)、入力側の係数行列(入力行列)、出力側の係数行列(出力行列)である。
このように、遅延時間分離部21により、遅延時間を分離した制御対象Gp#について、直達項を持たない状態空間モデルで表した場合の係数行列Aw#,Bp#,Cw#が得られる。また、遅延時間を分離した目標システムGt#について、直達項を持たない状態空間モデルで表した場合の係数行列Aw#,Bt#,Cw#が得られる。
(全体システムHallを構成:ステップS703)
制御部10のシステム構成部22は、制御器H0、ステップS702にて遅延時間が分離された制御対象Gp#及び目標システムGt#、減算器並びにバランス係数αを用いて、全体システムHallを構成する(ステップS703)。
図11は、全体システムHallの構成例を示すブロック線図である。この全体システムHallは、制御器H0、制御対象Gp#、目標システムGt#、演算器αI及び減算器47を備えている。全体システムHallの入力信号uは音響信号u2-1〜u2-m2であり、出力信号y1は制御器H0のゲインにより増幅される信号であり、制御器H0のゲインに比例する。出力信号y2は、制御対象Gp#と目標システムGt#との間の出力追従誤差である。バランス係数αは、2つの出力である制御器H0のゲインにより増幅される信号と制御対象Gp#及び目標システムGt#の出力追従誤差との間のバランスを決定するためのパラメータである。
制御器H0及び目標システムGt#は、入力信号uを入力する。演算器αIは、制御器H0により出力された信号にαIを乗算し、乗算結果である制御器H0のゲインにより増幅される信号を出力信号y1として出力する。Iは単位行列である。制御対象Gp#は、制御器H0により出力された信号を入力する。減算器47は、制御対象Gp#により出力された信号から目標システムGt#により出力された信号を減算し、減算結果である制御対象Gp#と目標システムGt#との間の出力追従誤差を出力信号y2として出力する。
制御器H0は、直達項を持つ状態空間モデルで表され、入力信号をu、出力信号をy、状態変数をxとして、以下の式にて表される。
{A0,B0,C0,D0}は、それぞれ制御器H0の係数行列(システム行列)、入力側の係数行列(入力行列)、出力側の係数行列(出力行列)、直達項の係数行列である。
図11に示した全体システムHallは、出力信号y1,y2(制御器H0のゲインにより増幅される信号、及び制御対象Gp#と目標システムGt#との間の出力追従誤差)を共に小さくすることが目的となる。
このように、システム構成部22により、入力信号uを音響信号u2-1〜u2-m2とし、出力信号y1,y2を、制御器H0のゲインにより増幅される信号、及び制御対象Gp#と目標システムGt#との間の出力追従誤差とし、係数行列A0,B0,C0,D0で表される制御器H0、係数行列Aw#,Bp#,Cw#で表される制御対象Gp#、係数行列Aw#,Bt#,Cw#で表される目標システムGt#、減算器47及びバランス係数αを用いた全体システムHallが構成される。
(バランス係数αの初期値を設定:ステップS704)
制御部10のパラメータ決定部23は、制御器H0のゲインにより増幅される信号と制御対象Gp#及び目標システムGt#の出力追従誤差との間のバランスを決定するためのバランス係数αの初期値として、予め設定された十分に小さい任意の値を設定する(ステップS704)。
バランス係数αが大きいほど、制御器H0のゲインにより増幅される信号に比重が置かれ、バランス係数αが小さいほど、制御対象Gp#と目標システムGt#との間の出力追従誤差に比重が置かれる。
(パラメータ(係数行列A0,B0,C0,D0)を決定:ステップS705〜S709)
パラメータ決定部23は、バランス係数αを用い、ステップS703にて構成した全体システムHallのH∞ノルムを評価関数として、制御器H0のゲイン、及び制御対象Gp#と目標システムGt#との間の出力追従誤差を定量化し、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定する(ステップS705)。
ここで、H∞ノルムとゲインとは、H∞ノルムが大きいほどゲインの上限が大きくなり、H∞ノルムが小さいほどゲインの上限が小さくなる関係にある。制御器H0の係数行列A0,B0,C0,D0を決定する処理の詳細については後述する。
ステップS705及び後述するステップS706〜S709により、出力追従誤差をある程度許容しながら(大きくしながら)、ゲインが小さくなるように、制御器H0の係数行列A0,B0,C0,D0が決定される。
パラメータ決定部23は、ステップS705から移行して、制御器H0のH∞ノルムであるゲインを算出する。例えば、パラメータ決定部23は、制御器H0の全周波数について特異値を算出し、周波数毎の特異値の中から最大値を特定し、当該最大値を制御器H0のH∞ノルムとする。制御器H0のH∞ノルムを算出する処理は既知であるから、ここでは詳細な説明を省略する。そして、パラメータ決定部23は、制御器H0のH∞ノルムが予め設定された閾値以下であるか否かを判定する(ステップS706)。
パラメータ決定部23は、ステップS706において、制御器H0のH∞ノルムが予め設定された閾値以下でないと判定した場合(ステップS706:N)、バランス係数αに予め設定された定数(正の実数)を加算することで、バランス係数αが少し大きくなるように設定する(ステップS707)。そして、パラメータ決定部23は、ステップS705へ移行し、新たなバランス係数αのときの係数行列A0,B0,C0,D0を決定する。
パラメータ決定部23は、ステップS706において、制御器H0のH∞ノルムが予め設定された閾値以下であると判定した場合(ステップS706:Y)、ステップS708へ移行する。
パラメータ決定部23は、ステップS706から移行して、全体システムHallのH∞ノルムであるゲインを算出する。例えば、パラメータ決定部23は、全体システムHallの全周波数について特異値を算出し、周波数毎の特異値の中から最大値を特定し、当該最大値を全体システムHallのH∞ノルムとする。全体システムHallのH∞ノルムを算出する処理は既知であるから、ここでは詳細な説明を省略する。そして、パラメータ決定部23は、全体システムHallのH∞ノルムが予め設定された閾値以下であるか否かを判定する(ステップS708)。
パラメータ決定部23は、ステップS708において、全体システムHallのH∞ノルムが予め設定された閾値以下でないと判定した場合(ステップS708:N)、バランス係数αから予め設定された定数(正の実数)を減算することで、バランス係数αが少し小さくなるように設定する(ステップS709)。そして、パラメータ決定部23は、ステップS705へ移行し、新たなバランス係数αのときの係数行列A0,B0,C0,D0を決定する。
パラメータ決定部23は、ステップS708において、全体システムHallのH∞ノルムが予め設定された閾値以下であると判定した場合(ステップS708:Y)、ステップS710へ移行する。
ここで、ステップS707にてバランス係数αが大きくなるように設定されることにより、ステップS705にて、新たなバランス係数αを用いて制御器H0の係数行列A0,B0,C0,D0が決定される。そして、ステップS706にて算出される制御器H0のH∞ノルムであるゲインは、以前よりも小さくなる。
これは、図11を参照して、バランス係数αが大きくなると、出力信号y1である制御器H0のゲインにより増幅された信号は、出力追従誤差y2と比較して全体システムHallのH∞ノルムの大きさへの寄与が大きくなる。新たな制御器H0の係数行列A0,B0,C0,D0は、全体システムHallのH∞ノルムを最小化する方向で決定され、結果として全体システムHallのH∞ノルムへの寄与の大きい新たな制御器H0のゲインが抑制されるからである。つまり、バランス係数αが大きくなるほど、制御器H0のゲインは小さくなる。その一方で、出力追従誤差y2は相対的に大きくなり、全体システムHallのH∞ノルムも大きくなる。
一方、ステップS709にてバランス係数αが小さくなるように設定されることにより、ステップS705にて、新たなバランス係数αを用いて制御器H0の係数行列A0,B0,C0,D0が決定される。そして、ステップS706にて算出される制御器H0のH∞ノルムであるゲインは、以前よりも大きくなる。つまり、バランス係数αが小さくなるほど、制御器H0のゲインは大きくなる。その一方で、出力追従誤差y2は相対的に小さくなり、全体システムHallのH∞ノルムも小さくなる。
このように、パラメータ決定部23により、制御対象Gp#と目標システムGt#との出力追従誤差をある程度許容しながら(大きくしながら)、制御器H0ゲインが小さくなるように、制御器H0の係数行列A0,B0,C0,D0が決定される。これにより、図5に示した制御器Hのパラメータのうち、制御器H0の係数行列A0,B0,C0,D0が決定される。
(遅延時間を補償:ステップS710)
遅延時間補償部24は、ステップS702にて制御対象Gp及び目標システムGtから分離した遅延時間を補償するため、当該遅延時間に基づいて、図5に示した制御器Hに含まれる遅延器Rdの遅延時間Rd1〜Rdm2及び遅延器Rcの遅延時間Rc1〜Rcm1を算出する(ステップS710)。
これにより、ステップS702にて制御対象Gp及び目標システムGtから分離した遅延時間を補償するための遅延器Rd,遅延器Rcが構成される。
具体的には、遅延時間補償部24は、ステップS702にて目標システムGtから分離したそれぞれの遅延時間(音響信号u2-1〜u2-m2に対応するそれぞれの遅延時間)のうち、最小時間をβとする。遅延時間補償部24は、最小時間βから、ステップS702にて制御対象Gpから分離したそれぞれの遅延時間を減算し、遅延器Rcを構成する遅延器31−1〜31−m1のそれぞれの遅延時間を求める。
遅延時間補償部24は、ステップS702にて目標システムGtから分離したそれぞれの遅延時間(音響信号u2-1〜u2-m2に対応するそれぞれの遅延時間)から、最小時間βを減算し、遅延器Rdを構成する遅延器30−1〜30−m2のそれぞれの遅延時間を求める。
ただし、遅延時間補償部24は、遅延器Rcを構成する遅延器31−1〜31−m1の遅延時間のうち、いずれかの遅延時間が負値rとなった場合、当該遅延時間が0となるように、それぞれの遅延時間に絶対値|r|を加算する。これにより、遅延器Rcを構成する遅延器31−1〜31−m1の全ての遅延時間が0以上の値となる。
このように、遅延時間補償部24により、ステップS702にて制御対象Gp及び目標システムGtから分離した遅延時間を補償するための遅延器Rd及び遅延器Rcが構成される。これにより、図5に示した制御器Hのパラメータのうち、遅延器Rdの遅延時間Rd1〜Rdm2及び遅延器Rcの遅延時間Rc1〜Rcm1が決定される。
以上のように、制御器設計装置1の制御部10により、音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて、制御器設計プログラムの処理にて制御器Hが設計され、制御器Hのパラメータ(制御器H0の係数行列A0,B0,C0,D0、遅延器Rdの遅延時間Rd1〜Rdm2及び遅延器Rcの遅延時間Rc1〜Rcm1)が決定される。
〔制御器H0の係数行列A0,B0,C0,D0の決定処理(ステップS705)〕
次に、図7のステップS705に示した、パラメータ決定部23による制御器H0の係数行列A0,B0,C0,D0の決定処理について詳細に説明する。
(第1手法)
まず、第1手法について説明する。第1手法は、全体システムHallのうち制御器H0以外の構成部をシステムPとし、システムP及び制御器H0からなる一般化制御問題の標準形の全体システムHallを構成し、そのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定するものである。
図12は、システムPを説明するブロック線図である。全体システムHallにおいて、制御器H0以外の破線で囲まれる構成部をシステムPとする。システムPは、制御対象Gp#、目標システムGt#、演算器αI及び減算器47を備えている。システムPの入力信号は、全体システムHallの入力信号uである音響信号u2-1〜u2-m2、及び制御器H0により出力された信号wである。システムPの出力信号は、入力信号uである信号z、及び全体システムHallの出力信号y1,y2である。
目標システムGt#は、入力信号uを入力する。演算器αIは、制御器H0により出力された信号wにαIを乗算し、乗算結果である制御器H0のゲインにより増幅される信号を出力信号y1として出力する。制御対象Gp#は、制御器H0により出力された信号wを入力する。減算器47は、制御対象Gp#により出力された信号から目標システムGt#により出力された信号を減算し、減算結果である制御対象Gp#と目標システムGt#との間の出力追従誤差を出力信号y2として出力する。
システムPに含まれる制御対象Gp#は前記式(9)にて表され、目標システムGt#は前記式(10)にて表される。
図12に示したシステムPは、直達項を持たない状態空間モデルで表され、以下の式にて表される。
また、制御器H0の入力信号を、z=uを満たすzとし、出力信号をwとする。制御器H0は、入力信号uを入力し、信号wを演算器αI及び制御対象Gp#に出力する。
そうすると、図12のブロック線図は、図13のブロック線図へ等価的に変換される。図13は、図12と等価のブロック線図である。図13において、システムPは一般化プラントといい、破線で示すシステムを全体システムHallとする。全体システムHallは、システムP及び制御器H0を備えた標準形により構成される。前述のとおり、全体システムHallの入力信号uは、音響信号u2-1〜u2-m2であり、出力信号yは、制御器H0のゲイン、及び制御対象Gp#と目標システムGt#との間の出力追従誤差である。
システムPは、入力信号uを入力すると共に、制御器H0により出力された信号wを入力し、出力信号yを出力すると共に、入力信号uを信号zとして制御器H0に出力する。制御器H0は、システムPから信号zを入力し、信号wをシステムPに出力する。
図13に示した全体システムHallは標準形であるから、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定する手法は、既知の手法を用いることができる。
つまり、パラメータ決定部23は、システムP及び制御器H0からなる標準形の全体システムHallを構成し、既知の手法にて、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定する。第1手法の詳細については、以下の文献を参照されたい。
JOHN C.DOYLE el al.,“State-Space Solution to Standard H2 and H∞ Control Problems”,IEEE TRANSATIONS ON AUTOMATIC CONTROL,VOL.34,NO.8,P.831-847,AUGUST 1989
(第2手法)
次に、第2手法について説明する。第2手法は、全体システムHallのH∞ノルムを最小化する条件式を、線形行列不等式(LMI)の制約のもとでの最適化問題で表し、当該最適化問題を求解することで、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定するものである。
図11に示した全体システムHallは、直達項を持つ状態空間モデルで表され、入力信号をu、出力信号をy、状態変数をxとして、以下の式にて表される。
さらに、y1及びy2は前記式(13)にて表される。
そうすると、図11は図14のように簡単化される。図14は、図11を簡単化したブロック線図である。図14に示したブロック線図から、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定する。
この制御器H0の係数行列A0,B0,C0,D0の決定には、線形行列不等式の制約のもとでの最適化問題を用いる。全体システムHallについて、H∞性能を特徴づける線形行列不等式を記述することができれば、既存の計算アルゴリズムを適用することにより、係数行列A0,B0,C0,D0の数値解を得ることができる。
そのために、全体システムHallを表す前記式(14)(すなわち後述する式(15))を、後述する式(17)に代入し、当該式(17)が、係数行列A0,B0,C0,D0及び後述する正定行列Xについて線形行列不等式となるように、当該式(17)を式変換する。
これにより、当該式(17)は、全体システムHallのH∞性能を特徴づける線形行列不等式として記述することができるから、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定することができる。
以下、具体的に説明する。前記式(14)を参照して、全体システムHallの伝達関数Hall(z)を以下の式にて表記することにする(ドイルの記法)。
{Aall,Ball,Call,Dall}は、全体システムHallの係数行列(システム行列)、入力側の係数行列(入力行列)、出力側の係数行列(出力行列)、直達項の係数行列である。
ここで、全体システムHallのH∞ノルムを評価関数として、その最小化問題は、以下のように定式化することができる。
しかしながら、前記式(16)では、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定することができない。そこで、以下に示すように、等価変換と変数変換により前記式(15)を線形行列式に変換し、全体システムHallのH∞ノルムを最小化する条件式である前記式(16)を半正定値計画問題に置き換えることで、制御器H0の係数行列A0,B0,C0,D0を決定する。
既存の定理より、前記式(16)の小なり条件に係る制約は、以下の式を満たす正定行列Xが存在することと等価である。
しかしながら、前記式(15)を代入した前記式(17)は、{X,A0,C0}について双線形項を含む双線形行列不等式であるため、数値的な求解が困難である。そこで、前記式(17)を、線形行列不等式に変換する。つまり、前記式(17)が、係数行列A0,B0,C0,D0及び正定行列Xについて線形行列不等式となるように、式変換する。
まず、正定行列Xを、対称行列X11,X12,X22を用いて、以下の式のように分割する。
次に、式:Xcom=X11=X12を満たす対称行列Xcomが存在するものと仮定する。このとき、AallX及びCallXは、以下の式にて表される。
さらに、以下の式のとおり、新たな変数行列を定義する。
これにより、AallX及びCallXの前記式(19)(20)は、以下の式で表される設計パラメータに関して線形となる。
尚、XAall
T,XCall
TはそれぞれAallX,CallXの転置であり、これも同様の変換によって前記式(22)で表される設計パラメータに関して線形となる。
つまり、パラメータ決定部23は、前記式(17)に含まれるXAallT,XCallT,AallX,CallXを前記式(19)(20)の変数行列及びそれらの転置行列で置き換え、さらに前記式(21)のように変数変換することで、線形行列不等式として記述した前記式(17)について、正定行列Xが存在する条件のもとパラメータγが最小となるように、係数行列Aall,Ball,Call,Dallにて定められる係数行列A0,B0,C0,D0を決定する。
このように、前記式(16)と等価である前記式(17)は、全体システムHallのH∞性能を特徴づける線形行列不等式として記述することができるから、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定することができる。
以上のように、本発明の実施形態の制御器設計装置1によれば、制御対象Gpを、直達項を持たない状態空間モデルで表現することを前提に、制御器Hのパラメータを、全体システムHallのH∞ノルムを評価関数として、制御器Hのゲイン、及び制御対象Gpと目標システムGtとの間の出力追従誤差を定量化し、出力追従誤差をある程度許容して、ゲインを小さく抑えるように、制御器Hのパラメータを決定する。
具体的には、同定部20は、音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて、制御対象Gp及び目標システムGtを結合した結合システムGwの係数行列Aw,Bw,Cwを求め、結合システムGwの係数行列Aw,Bw,Cwから、制御対象Gpの係数行列Aw,Bp,Cwを求め、目標システムGtの係数行列Aw,Bt,Cwを求めることで、制御対象Gp及び目標システムGtを同定する。
遅延時間分離部21は、音響信号u1-1〜u1-m1,y1,y2に基づいて、制御対象Gpの遅延時間を求め、制御対象Gpから遅延時間を分離し、制御対象Gp#を求める。また、遅延時間分離部21は、音響信号u2-1〜u2-m2,y1,y2に基づいて、目標システムGtの遅延時間を求め、目標システムGtから遅延時間を分離し、目標システムGt#を求める
システム構成部22は、制御器H0、制御対象Gp#、目標システムGt#、減算器47及びバランス係数αを用いて、入力信号uを音響信号u2-1〜u2-m2とし、出力信号y1,y2を、制御器H0のゲインにより増幅される信号、及び制御対象Gp#と目標システムGt#との間の出力追従誤差とする全体システムHallを構成する。
パラメータ決定部23は、バランス係数αを用い、全体システムHallのH∞ノルムを評価関数として、制御器Hのゲイン、及び制御対象Gpと目標システムGtとの間の出力追従誤差を定量化し、全体システムHallのH∞ノルムを最小化する制御器H0の係数行列A0,B0,C0,D0を決定する。
遅延時間補償部24は、制御対象Gp及び目標システムGtから分離した遅延時間に基づいて、遅延器Rdの遅延時間Rd1〜Rdm2及び遅延器Rcの遅延時間Rc1〜Rcm1を求める。
これにより、制御器Hのパラメータを、制御器Hのゲインを指標とする最適化問題として決定することができ、制御器Hの制御性能の低下をある程度許容することで、制御器Hのゲインを小さくすることができる。特に、従来技術では制御器Hのゲインを十分に小さくすることができない場合に、本発明の実施形態では、制御器Hの設計に多少の誤差は生じるが、ゲインを小さくすることができる。したがって、制御器Hのゲインを陽に抑制するため、系の外乱及び制御器H自身の摂動に対して高い頑健性を持つ制御器Hを設計することが可能となる。
〔制御部10の他の構成例〕
次に、制御器設計装置1に備えた制御部10の他の構成例について説明する。第1構成例は、音響信号を複数の周波数帯域に分割した場合の帯域毎に、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定する例である。第2構成例は、音響信号を複数の周波数帯域に分割し、さらに音響信号のサンプルの間引きを行った場合の帯域毎に、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定する例である。
(第1構成例:帯域分割後の音響信号にて制御器Hを設計)
まず、制御部10の他の例として第1構成例について説明する。前述のとおり、第1構成例は、音響信号を複数の周波数帯域に分割した場合の帯域毎に、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定する例である。
図15は、制御部10の他の例(第1構成例)を示すブロック図である。この制御部10−1は、帯域通過フィルタ50、及び図4に示した制御部10を備えている。
帯域通過フィルタ50は、音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を入力し、音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に対し、所定のカットオフ周波数にて帯域通過フィルタ処理を行う。そして、帯域通過フィルタ50は、帯域通過フィルタ処理後の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を制御部10に出力する。
制御部10は、帯域通過フィルタ50から帯域通過フィルタ処理後の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を入力する。そして、制御部10は、帯域通過フィルタ処理後の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定して出力する。
これにより、制御部10−1にて、所定周波数の帯域に対する制御器H0の係数行列A0,B0,C0,D0、遅延器Rdの遅延時間Rd1〜Rdm2及び遅延器Rcの遅延時間Rc1〜Rcm1が決定される。
図16は、図15に示した第1構成例の制御部10−1により設計された制御器Hの適用例1を示すブロック図である。このシステムは、音響信号の周波数帯域を2分割した例であり、帯域通過フィルタ51−1,51−2及び制御器H−1a,H−1bを備えている。
尚、図16は、音響信号を図示しないスピーカ101−1〜101−m1へ出力する際には、D/Aコンバータ及びアンプを用いるが、これらの基本的な構成部は自明なものとして省略してある。後述する図17、図19及び図20についても同様である。
帯域通過フィルタ51−1は、図15に示した帯域通過フィルタ50に対応し、音響信号u2-1〜u2-m2を入力し、音響信号u2-1〜u2-m2に対し、予め設定された第1のカットオフ周波数にて帯域通過フィルタの処理を行う。そして、帯域通過フィルタ51−1は、第1のカットオフ周波数による帯域通過フィルタ処理後の音響信号u2-1〜u2-m2を制御器H−1aに出力する。
制御器H−1aは、図15に示した制御部10−1により設計され、決定されたパラメータにて構成された遅延器Rda、制御器H0a及び遅延器Rcaを備えている。遅延器Rda、制御器H0a及び遅延器Rcaは、図15に示した帯域通過フィルタ50の周波数として、帯域通過フィルタ51−1と同じ第1のカットオフ周波数を用いた場合に得られたパラメータにて構成される。
制御器H−1aは、帯域通過フィルタ51−1から第1のカットオフ周波数による帯域通過フィルタ処理後の音響信号u2-1〜u2-m2を入力し、図5に示した制御器Hと同じ処理を行い、音響信号u1a-1〜u1a-m1を生成して出力する。これにより、第1のカットオフ周波数の帯域における音響信号u1a-1〜u1a-m1が出力される。
帯域通過フィルタ51−2は、図15に示した帯域通過フィルタ50に対応し、音響信号u2-1〜u2-m2を入力し、音響信号u2-1〜u2-m2に対し、予め設定された第2のカットオフ周波数(第1のカットオフ周波数とは異なる周波数)にて帯域通過フィルタ処理を行う。そして、帯域通過フィルタ51−2は、第2のカットオフ周波数による帯域通過フィルタ処理後の音響信号u2-1〜u2-m2を制御器H−1bに出力する。
制御器H−1bは、図15に示した制御部10−1により設計され、決定されたパラメータにて構成された遅延器Rdb、制御器H0b及び遅延器Rcbを備えている。遅延器Rdb、制御器H0b及び遅延器Rcbは、図15に示した帯域通過フィルタ50の周波数として、帯域通過フィルタ51−2と同じ第2のカットオフ周波数を用いた場合に得られたパラメータにて構成される。
制御器H−1bは、帯域通過フィルタ51−2から第2のカットオフ周波数による帯域通過フィルタ処理後の音響信号u2-1〜u2-m2を入力し、図5に示した制御器Hと同じ処理を行い、音響信号u1b-1〜u1b-m1を生成して出力する。これにより、第2のカットオフ周波数の帯域における音響信号u1b-1〜u1b-m1が出力される。
そして、第1のカットオフ周波数の帯域における音響信号u1a-1〜u1a-m1と第2のカットオフ周波数の帯域における音響信号u1b-1〜u1b-m1とがそれぞれ加算され、加算された音響信号がスピーカ101−1〜101−m1へ出力される。この場合、音響信号u1a-1〜u1a-m1のみがスピーカ101−1〜101−m1へ出力されるようにしてもよいし、音響信号u1b-1〜u1b-m1のみがスピーカ101−1〜101−m1へ出力されるようにしてもよい。スピーカ101−1〜101−m1が再生周波数帯域の異なる複数のスピーカユニットを備える場合には、音響信号u1a-1〜u1a-m1が、当該音響信号u1a-1〜u1a-m1の通過帯域を再生周波数帯域に含むスピーカユニットへ出力されるようにしてもよい。また、音響信号u1b-1〜u1b-m1が、当該音響信号u1b-1〜u1b-m1の通過帯域を再生周波数帯域に含むスピーカユニットへ出力されるようにしてもよい。
図17は、図15に示した第1構成例の制御部10−1により設計された制御器Hの適用例2を示すブロック図である。このシステムは、音響信号の周波数帯域を2分割した例であり、帯域通過フィルタ51−1,51−2、制御器H−1a及び他の制御器を備えている。このシステムには、本発明の実施形態にて設計された制御器H−1aと従来技術にて設計された他の制御器とが混在している。
帯域通過フィルタ51−1,51−2及び制御器H−1aは、図16に示した帯域通過フィルタ51−1,51−2及び制御器H−1aと同じであるから、ここでは説明を省略する。
他の制御器は、前述の非特許文献1等の従来の制御器設計装置により設計された制御器であり、帯域通過フィルタ51−2から第2のカットオフ周波数による帯域通過フィルタ処理後の音響信号u2-1〜u2-m2を入力し、音響信号u1’-1〜u1’-m1を生成して出力する。
これにより、制御器H−1aから第1のカットオフ周波数の帯域における音響信号u1a-1〜u1a-m1が出力され、他の制御器から第2のカットオフ周波数の帯域における音響信号u1’-1〜u1’-m1が出力される。そして、音響信号u1a-1〜u1a-m1と音響信号u1’-1〜u1’-m1とが加算され、加算された音響信号がスピーカ101−1〜101−m1へ出力される。この場合、音響信号u1a-1〜u1a-m1及び音響信号u1’-1〜u1’-m1のうちのいずれかがスピーカ101−1〜101−m1へ出力されるようにしてもよい。スピーカ101−1〜101−m1が再生周波数帯域の異なる複数のスピーカユニットを備える場合には、音響信号u1a-1〜u1a-m1が、当該音響信号u1a-1〜u1a-m1の通過帯域を再生周波数帯域に含むスピーカユニットへ出力されるようにしてもよい。また、音響信号u1’-1〜u1’-m1が、当該音響信号u1’-1〜u1’-m1の通過帯域を再生周波数帯域に含むスピーカユニットへ出力されるようにしてもよい。
以上のように、本発明の実施形態による制御器設計装置1の制御部10−1によれば、音響信号を複数の周波数帯域に分割した場合の帯域毎に、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定するようにした。
これにより、前述の制御部10と同様の効果を奏する。すなわち、帯域通過フィルタ50にてフィルタ処理がなされた所定の周波数帯域の音響信号について、制御器Hの制御性能の低下がある程度許容され、設計に多少の誤差は生じるが、ゲインを小さくすることができる。
制御部10−1により第1のカットオフ周波数の帯域にて設計された制御器H−1aは、帯域通過フィルタ51−1にてフィルタ処理がなされた第1のカットオフ周波数の音響信号u2-1〜u2-m2に対し、ゲインが陽に抑制され、系の外乱及び制御器H−1a自身の摂動に対して高い頑健性を得ることが可能となる。
尚、図16及び図17は、音響信号の周波数帯域を2分割した例であるが、音響信号の周波数帯域を3以上の周波数帯域に分割するようにしてもよい。この場合の制御器H−1a等は、周波数帯域毎に、当該周波数帯域の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて設計される。
また、図15に示した制御部10−1は、測定した音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を入力し、帯域通過フィルタ50にて、所定のカットオフ周波数による帯域通過フィルタの処理を行うようにした。これに対し、所定のカットオフ周波数により帯域制限された音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2が測定された場合、制御部10−1は、当該所定のカットオフ周波数により帯域制限された音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を直接入力するようにしてもよい。この場合、制御部10−1は、帯域通過フィルタ50を備えていない。
(第2構成例:帯域分割及び間引き後の音響信号にて制御器Hを設計)
次に、第2構成例について説明する。前述のとおり、第2構成例は、音響信号を複数の周波数帯域に分割し、さらに音響信号のサンプルの間引きを行った場合の帯域毎に、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定する例である。
図18は、制御部10の他の例(第2構成例)を示すブロック図である。この制御部10−2は、帯域通過フィルタ50、間引き部52及び図4に示した制御部10を備えている。
帯域通過フィルタ50は、図15に示した帯域通過フィルタ50と同じであるからここでは説明を省略する。
間引き部52は、帯域通過フィルタ50から帯域通過フィルタ処理後の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を入力する。そして、間引き部52は、帯域通過フィルタ50のカットオフ周波数に応じて、帯域通過フィルタ処理後の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に対しサンプルの間引き(ダウンサンプリング)を行う。間引き部52は、間引き後の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を制御部10に出力する。
これにより、間引き後の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2のサンプリング周波数が低い場合、制御部10及び後述する制御器H−1cにおけるモデルの次数を低く抑えることができ、信号処理量を削減することができる。
制御部10は、間引き部52から間引き後の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を入力し、図15に示した制御部10と同じ処理を行う。
これにより、制御部10−2にて、所定周波数の帯域に対する制御器H0の係数行列A0,B0,C0,D0、遅延器Rdの遅延時間Rd1〜Rdm2及び遅延器Rcの遅延時間Rc1〜Rcm1が決定される。
図19は、図18に示した第2構成例の制御部10−2により設計された制御器Hの適用例1を示すブロック図である。このシステムは、音響信号の周波数帯域を2分割した例であり、帯域通過フィルタ51−1,51−2、間引き部53−1,53−2、制御器H−1c、他の制御器及び増幅器54−1,54−2を備えている。このシステムには、本発明の実施形態にて設計された制御器H−1cと従来技術にて設計された他の制御器とが混在している。尚、本発明の実施形態にて設計された制御器H−1cと制御器H−1dとを並べて構成するようにしてもよい。
帯域通過フィルタ51−1,51−2は、図16に示した帯域通過フィルタ51−1,51−2と同じであるから、ここでは説明を省略する。
間引き部53−1は、帯域通過フィルタ51−1から第1のカットオフ周波数による帯域通過フィルタ処理後の音響信号u2-1〜u2-m2を入力する。そして、間引き部53−1は、帯域通過フィルタ51−1の第1のカットオフ周波数に応じて、図18に示した間引き部52と同様に、帯域通過フィルタ処理後の音響信号u2-1〜u2-m2に対しサンプルの間引きを行う。そして、間引き部53−1は、間引き後の音響信号u2-1〜u2-m2を制御器H−1cに出力する。
制御器H−1cは、図18に示した制御部10−2により設計され、決定されたパラメータにて構成された遅延器Rd、制御器H0及び遅延器Rcを備えている。遅延器Rd、制御器H0及び遅延器Rcは、図18に示した帯域通過フィルタ50のカットオフ周波数及び間引き部52の間引き間隔として、帯域通過フィルタ51−1と同じ第1のカットオフ周波数、及び間引き部53−1と同じ間引き間隔を用いた場合に得られたパラメータにて構成される。
制御器H−1cは、間引き部53−1から間引き後の音響信号u2-1〜u2-m2を入力し、図5に示した制御器Hと同じ処理を行い、増幅前の音響信号u1-1〜u1-m1を生成して増幅器54−1に出力する。
増幅器54−1は、制御器H−1cから増幅前の音響信号u1-1〜u1-m1を入力し、間引き部53−1の間引き量に応じて、増幅前の音響信号u1-1〜u1-m1を増幅し、音響信号u1c-1〜u1c-m1を生成して出力する。
間引き部53−2は、帯域通過フィルタ51−2から第2のカットオフ周波数による帯域通過フィルタ処理後の音響信号u2-1〜u2-m2を入力する。そして、間引き部53−2は、帯域通過フィルタ51−2の第2のカットオフ周波数に応じて、図18に示した間引き部52と同様に、帯域通過フィルタ処理後の音響信号u2-1〜u2-m2に対しサンプルの間引きを行う。そして、間引き部53−2は、間引き後の音響信号u2-1〜u2-m2を他の制御器に出力する。
他の制御器は、前述の非特許文献1等の従来の制御器設計装置により設計された制御器であり、間引き部53−2から間引き後の音響信号u2-1〜u2-m2を入力し、増幅前の音響信号u1-1〜u1-m1を生成して出力する。
増幅器54−2は、他の制御器から増幅前の音響信号u1-1〜u1-m1を入力し、間引き部53−2の間引き量に応じて、増幅前の音響信号u1-1〜u1-m1を増幅し、音響信号u1’-1〜u1’-m1を生成して出力する。
これにより、増幅器54−1から第1のカットオフ周波数の帯域における間引き及び増幅後の音響信号u1c-1〜u1c-m1が出力され、増幅器54−2から第2のカットオフ周波数の帯域における間引き及び増幅後の音響信号u1’-1〜u1’c-m1が出力される。そして、音響信号u1c-1〜u1c-m1と音響信号u1’-1〜u1’-m1とが加算され、加算された音響信号がスピーカ101−1〜101−m1へ出力される。この場合、音響信号u1c-1〜u1c-m1及び音響信号u1’-1〜u1’-m1のいずれかがスピーカ101−1〜101−m1へ出力されるようにしてもよい。スピーカ101−1〜101−m1が再生周波数帯域の異なる複数のスピーカユニットを備える場合には、音響信号u1a-1〜u1a-m1が、当該音響信号u1a-1〜u1a-m1の通過帯域を再生周波数帯域に含むスピーカユニットへ出力されるようにしてもよい。また、音響信号u1’-1〜u1’-m1が、当該音響信号u1’-1〜u1’-m1の通過帯域を再生周波数帯域に含むスピーカユニットへ出力されるようにしてもよい。
図20は、図18に示した第2構成例の制御部10−2により設計された制御器Hの適用例2を示すブロック図である。このシステムは、音響信号の周波数帯域を2分割した例であり、帯域通過フィルタ51−1,51−2、間引き部53−1,53−2、制御器H−1c、他の制御器、補間及びLPF部55−1,55−2、増幅器54−1,54−2及び加算器56を備えている。このシステムには、本発明の実施形態にて設計された制御器H−1cと従来技術にて設計された他の制御器とが混在している。尚、本発明の実施形態にて設計された制御器H−1cと制御器H−1dとを並べて構成するようにしてもよい。
図19に示したシステムと図20に示すシステムとを比較すると、図20のシステムは、図19に示したシステムに加え、さらに、制御器H−1cと増幅器54−1との間に補間及びLPF部55−1を備え、他の制御器と増幅器54−2との間に補間及びLPF部55−2を備え、加算器56を備えている点で相違する。図20において、図19と共通する部分には図19と同一の符号を付し、その詳しい説明は省略する。
補間及びLPF部55−1は、制御器H−1cから音響信号u1-1〜u1-m1を入力し、音響信号u1-1〜u1-m1に対し、間引き部53−1による間引きとは逆の処理である補間(アップサンプリング)を行う。これにより、元のサンプリング周波数に戻すことができる。そして、補間及びLPF部55−1は、補間後の音響信号u1-1〜u1-m1に対し、帯域通過フィルタ51−1と同じ第1のカットオフ周波数のLPF処理を施し、LPF処理後の音響信号u1-1〜u1-m1を増幅器54−1に出力する。
これにより、補間処理により生じる折り返し歪は、帯域通過フィルタ51−1と同じカットオフ周波数を用いる帯域通過フィルタのLPF処理により削除することができる。
補間及びLPF部55−2は、他の制御器から音響信号u1’-1〜u1’-m1を入力し、音響信号u1’-1〜u1’-m1に対し、間引き部53−2による間引きとは逆の補間を行う。これにより、元のサンプリング周波数に戻すことができる。そして、補間及びLPF部55−2は、補間後の音響信号u1’-1〜u1’-m1に対し、帯域通過フィルタ51−2と同じ第2のカットオフ周波数のLPFを施し、LPF後の音響信号u1’-1〜u1’-m1を増幅器54−2に出力する。
これにより、補間処理により生じる折り返し歪は、間引き部53−2と同じカットオフ周波数を用いる帯域通過フィルタのLPF処理により削除することができる。増幅器54−1,54−2の処理は、図19にて説明したとおりである。
加算器56は、増幅器54−1から増幅後の音響信号u1c-1〜u1c-m1を入力すると共に、増幅器54−2から増幅後の音響信号u1’-1〜u1’-m1を入力し、音響信号u1c-1〜u1c-m1及び音響信号u1’-1〜u1’-m1を加算し、加算後の音響信号u1d-1〜u1d-m1を出力する。
以上のように、本発明の実施形態による制御器設計装置1の制御部10−2によれば、音響信号を複数の周波数帯域に分割し、さらに音響信号のサンプルの間引きを行った場合の帯域毎に、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定するようにした。
これにより、前述の制御部10と同様の効果を奏する。すなわち、帯域通過フィルタ50によりフィルタ処理がなされた所定の周波数帯域の音響信号について、制御器Hの制御性能の低下がある程度許容され、設計に多少の誤差は生じるが、ゲインを小さくすることができる。
制御部10−2により第1のカットオフ周波数の帯域にて設計された制御器H−1cは、帯域通過フィルタ51−1及び間引き部53−1にて生成された第1のカットオフ周波数及び間引き後の音響信号u2-1〜u2-m2に対し、ゲインが陽に抑制され、系の外乱及び制御器H−1c自身の摂動に対して高い頑健性を得ることが可能となる。
尚、図19及び図20は、音響信号の周波数帯域を2分割した例であるが、図16及び図17と同様に、音響信号の周波数帯域を3以上の周波数帯域に分割するようにしてもよい。この場合の制御器H−1c等は、周波数帯域毎に、当該周波数帯域の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて設計される。また、分割した全ての周波数帯域のそれぞれについて、制御部10−2により設計された制御器Hを用いるようにしてもよい。
また、図18に示した制御部10−2は、測定した音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を入力し、帯域通過フィルタ50にて、所定のカットオフ周波数による帯域通過フィルタ処理を行い、間引き部52にて間引き処理を行うようにした。これに対し、所定のカットオフ周波数かつ間引き処理がなされた音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2が測定された場合、制御部10−2は、当該音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を直接入力するようにしてもよい。この場合、制御部10−2は、帯域通過フィルタ50及び間引き部52を備えていない。
図5に示した制御器Hのハードウェア構成は、制御器設計装置1と同様に、通常のコンピュータを使用することができる。制御器Hは、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインタフェース等を備えたコンピュータによって構成される。制御器Hに備えた遅延器Rd、制御器H0及び遅延器Rcの各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。これらのプログラムは、前記記憶媒体に格納されており、CPUに読み出されて実行される。また、これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもでき、ネットワークを介して送受信することもできる。図16及び図17に示した制御器H−1a、図16に示した制御器H−1b、並びに図19及び図20に示した制御器H−1cについても同様である。