JP3541613B2 - 能動型騒音振動制御装置 - Google Patents

能動型騒音振動制御装置 Download PDF

Info

Publication number
JP3541613B2
JP3541613B2 JP10616697A JP10616697A JP3541613B2 JP 3541613 B2 JP3541613 B2 JP 3541613B2 JP 10616697 A JP10616697 A JP 10616697A JP 10616697 A JP10616697 A JP 10616697A JP 3541613 B2 JP3541613 B2 JP 3541613B2
Authority
JP
Japan
Prior art keywords
fraction
filter
transfer function
reference signal
vibration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP10616697A
Other languages
English (en)
Other versions
JPH10301578A (ja
Inventor
佐藤  茂樹
健 木村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nissan Motor Co Ltd
Original Assignee
Nissan Motor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nissan Motor Co Ltd filed Critical Nissan Motor Co Ltd
Priority to JP10616697A priority Critical patent/JP3541613B2/ja
Publication of JPH10301578A publication Critical patent/JPH10301578A/ja
Application granted granted Critical
Publication of JP3541613B2 publication Critical patent/JP3541613B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
この発明は、適応アルゴリズムに従ってフィルタ係数が更新される適応ディジタルフィルタを用いて周期的な騒音又は周期的な振動の低減制御を実行するようになっている能動型騒音振動制御装置に関し、特に、制御音源又は制御振動源と残留騒音又は残留振動を検出する手段との間の伝達関数をモデル化した伝達関数フィルタを有し、周期的な騒音又は周期的な振動の発生状態を表す基準信号をその伝達関数フィルタでフィルタ処理することにより、適応ディジタルフィルタのフィルタ係数の更新に用いられる更新用基準信号を演算するようになっており、しかもサンプリング・クロックが固定である能動型騒音振動制御装置において、更新用基準信号の演算精度が向上して、良好な騒音低減制御、振動低減制御が実行されるようにしたものである。
【0002】
【従来の技術】
この種の従来の技術としては、騒音低減に限定された発明ではあるが、特許第2524046号(特開平5−249985号公報)がある。
【0003】
即ち、上記特許に係る技術は、特に電子消音方法及び装置に関するものであって、騒音源から発せられる周期性騒音又は疑似周期性騒音に対して逆位相で且つ同一音圧の制御音(付加音)を干渉させることにより、消音を行うようになっている。そして、この特許にあっては、制御音を生成するために同期式Filtered−X LMSアルゴリズム(SFXアルゴリズム)を適用していて、これにより、コントローラにおける演算量を大幅に低減することができる、というものであった。
【0004】
なお、上記特許には、サンプリング・クロックを固定にしたもの(上記特許の請求項2に係る発明)と、サンプリング・クロックを可変にしたもの(上記特許の請求項3に係る発明)との両方が含まれている。
【0005】
【発明が解決しようとする課題】
ここで、上記特許のうち、そのサンプリング・クロックを固定にしたものにあっては、制御音を発生させるスピーカと残留騒音を検出するエラーセンサとの間の伝達関数を、制御に用いる固定サンプリング・クロックの周期と同じ時間間隔で取り込んだ数列を係数としたフィルタ(有限インパルス応答型のフィルタ)として予め保存しておけば基本的には十分である。これに対し、サンプリング・クロックを可変にしたものにあっては、サンプリング・クロック毎の伝達関数が必要であるから、極めて多数の伝達関数を生成し記憶するか、若しくは、騒音低減制御と並行して伝達関数を同定する処理を実行することが必要になる。
【0006】
このため、単に演算負荷の軽減等を図ることだけを考えるのなら、サンプリング・クロックは固定にした方が有利である。また、演算負荷の軽減のためには、サンプリング・クロックの周期は長い方がよいが、サンプリング・クロックの周期が長過ぎるとそれだけ消音効果が期待できなくなるから、演算処理を実行するコントローラの能力が許す範囲で、サンプリング・クロックの周波数は高くすることが望ましい。
【0007】
しかしながら、例えば騒音源が車両のエンジンのような場合には、発生する騒音の周期はエンジンの回転数に応じてリニアに変化するものであるため、サンプリング・クロックが固定であると、騒音の周期がサンプリング・クロックの周期の整数倍になるのは稀な現象になる。
【0008】
すると、固定サンプリング・クロックに同期して出力される駆動信号のうち、騒音の一周期内の最後に出力される駆動信号以外の駆動信号は、固定サンプリング・クロックの周期と同じ幅の方形波として出力されるが、騒音の一周期内の最後の出力される駆動信号は、固定サンプリング・クロックの周期よりも短い幅の方形波(つまり騒音の一周期を固定サンプリング・クロックの周期で除算した場合の端数と同じ幅の方形波)として出力されることになる。
【0009】
しかし、サンプリング・クロックが固定であることから、上記従来の騒音低減装置では、伝達関数フィルタを一種類しか記憶していなかった。つまり、伝達関数フィルタは、有限インパルス応答型のディジタルフィルタとして記憶されているが、LMSアルゴリズムの特性から、その伝達関数フィルタの基礎になっているインパルス応答測定時のインパルス信号として、サンプリング・クロックの周期と同じ幅の方形波を用いているのである。
【0010】
従って、上記端数と同じ幅で出力される駆動信号との関係では、記憶している伝達関数フィルタの精度が低いということになり、これが良好な騒音低減効果を得る上で一つの支障になっていたことが判った(第1の課題)。
【0011】
さらに、基本的には基準信号を伝達関数フィルタ(上記特許では、第2のフィルタ係数を有するディジタルフィルタが対応する。)でフィルタ処理した値である更新用基準信号(上記特許では、リファレンス信号が対応する。)を畳み込み演算によって求めようとすると、騒音の周期をサンプリング・クロックの周期で除算した場合の端数の大きさによっては、更新用基準信号の精度が十分でなくなり、それに基づいて行われる適応ディジタルフィルタのフィルタ係数(上記特許では、第1のフィルタ係数が対応する。)の更新演算の精度が低下して、良好な騒音低減制御が実行できなくなる可能性がある。
【0012】
つまり、上記特許における表現や記号等を用いれば、サンプリング・クロックが固定の場合、基準信号を第2のフィルタでフィルタ処理することにより作成される疑似周期列C〜の精度が低いため、その疑似周期列C〜に基づいて作成されるリファレンス信号の精度も低くなり、適応型ディジタルフィルタの精度も低くなってしまうのである。特に、コントローラの能力から、サンプリング・クロックの周波数を十分に高くできない場合、必然的に端数と固定サンプリング・クロックの周期との差も大きくなるから、上記のような精度低下も顕著になってしまう。
【0013】
このような問題点を解決するために、本出願人が先に提案した特開平7−129250号公報に開示された技術がある。即ち、かかる公報に記載された装置においては、基準信号と伝達関数フィルタとの畳み込み演算に用いられる伝達関数フィルタのフィルタ係数を、単に順番に用いるのではなく、基準信号の周期(つまり、騒音や振動の周期)をサンプリング・クロックの周期で割った場合の端数に応じて選択するようにしていて、これにより、適応ディジタルフィルタの更新演算に用いる更新用基準信号(上記特開平7−129250号公報では、基準処理信号が対応する。)の精度を向上させていた。
【0014】
確かに、上記特開平7−129250号公報に記載された発明であれば、上記特許をそのまま実行した場合に比べて、更新用基準信号(疑似周期列C〜)の精度を向上させることができたが、本発明者のその後の研究によれば、改良の余地があることが判った。
【0015】
特に、上記特開平7−129250号公報に記載された発明のように、畳み込み演算により更新用基準信号となる数列を作成する際だけではなく、実際に適応ディジタルフィルタのフィルタ係数の更新演算に用いられる更新用基準信号の選択(上記特許では、疑似周期列C〜に基づいてリファレンス信号を作成することが対応する。)にも工夫をすれば、更なる精度向上が期待できること判った(第2の課題)。
【0016】
本発明は、上記のような種々の知見に基づいてなされたものであり、上記第1の課題に対応し、サンプリング・クロックが固定であっても、騒音や振動の一周期内に出力される全ての駆動信号との関係で伝達関数フィルタの精度を良好に保つことができて、良好な騒音低減制御、振動低減制御が実行される能動型騒音振動制御装置を提供することを第1の目的としている。
【0017】
また、本発明は、上記第1の課題及び第2の課題の両方に対応し、サンプリング・クロックが固定であっても、騒音や振動の一周期内に出力される全ての駆動信号との関係で伝達関数フィルタの精度を良好に保つことができるとともに、更新用基準信号の精度をさらに向上でき、もって、良好な騒音低減制御、振動低減制御が実行される能動型騒音振動制御装置を提供することを第2の目的としている。
【0018】
【課題を解決するための手段】
上記第1の目的を達成するために、請求項1に係る発明は、騒音源又は振動源から発せられる周期的な騒音又は周期的な振動と干渉する制御音又は制御振動を発生可能な制御音源又は制御振動源と、前記干渉した後の残留騒音又は残留振動を検出し残留騒音信号又は残留振動信号として出力する残留騒音検出手段又は残留振動検出手段と、前記騒音又は振動の発生状態を検出し基準信号として出力する基準信号生成手段と、フィルタ係数可変の適応ディジタルフィルタと、前記基準信号を前記適応ディジタルフィルタでフィルタ処理することにより前記制御音源又は制御振動源を駆動する駆動信号を生成し出力する駆動信号生成手段と、前記制御音源又は制御振動源と前記残留騒音検出手段又は残留振動検出手段との間の伝達関数をモデル化した伝達関数フィルタと、前記基準信号及び前記伝達関数フィルタに基づいて更新用基準信号を生成する更新用基準信号生成手段と、前記残留騒音信号又は残留振動信号及び前記更新用基準信号に基づき逐次更新型の適応アルゴリズムに従って前記適応ディジタルフィルタのフィルタ係数を更新する適応処理手段と、を備え、固定サンプリング・クロックに同期して各演算処理を実行するようになっている能動型騒音振動制御装置において、前記伝達関数フィルタは、前記固定サンプリング・クロックの周期と同じ幅の基準方形波を入力とした場合の応答波形に基づいて各フィルタ係数を生成したディジタルフィルタであり、前記周期的な騒音又は周期的な振動の周期を前記固定サンプリング・クロックの周期で割った場合の端数を求める端数演算手段と、前記基準方形波に代えて前記端数と同じ幅の端数方形波を入力とした場合の前記伝達関数フィルタに相当する端数用伝達関数フィルタとして求める端数用伝達関数フィルタ生成手段と、を設けるとともに、前記更新用基準信号生成手段は、前記基準信号と前記伝達関数フィルタの各フィルタ係数とを畳み込んで基本数列を生成する基本数列生成手段と、前記基準信号と前記端数用伝達関数フィルタの各フィルタ係数とを畳み込んで端数用基本数列を生成する端数用基本数列生成手段と、前記基本数列又は前記端数用基本数列から前記適応ディジタルフィルタのフィルタ係数の更新に用いる前記更新用基準信号を選択する更新用基準信号選択手段と、を含んで構成され、前記更新用基準信号選択手段は、前記適応ディジタルフィルタの各フィルタ係数のうち、最終タップ以外のフィルタ係数の更新には前記基本数列から前記更新用基準信号を選択し、最終タップのフィルタ係数の更新には前記端数用基本数列から前記更新用基準信号を選択するようになっているものである。
【0019】
また、請求項2に係る発明は、上記請求項1に係る発明である能動型騒音振動制御装置において、前記基準方形波に代えて前記固定サンプリング・クロックの周期以下の幅である方形波を入力とした場合の前記伝達関数フィルタに相当する端数用伝達関数フィルタ候補を、複数種類予め記憶しておき、前記端数用伝達関数フィルタ生成手段は、前記端数に応じて、前記端数用伝達関数フィルタ候補から前記端数用伝達関数フィルタを選択するようになっているものである。
【0020】
そして、請求項3に係る発明は、上記請求項1に係る発明である能動型騒音振動制御装置において、前記基準方形波に代えて実質的にデルタ関数と見なすことができる単位パルス波を入力とした場合の前記伝達関数フィルタに相当する伝達関数フィルタ単位波形を、予め記憶しておき、 前記端数用伝達関数フィルタ生成手段は、前記端数に相当する時間に渡って所定間隔で前記伝達関数フィルタ単位波形を次々と出力したように並べた各波形を重畳することにより、前記端数用伝達関数フィルタを求めるようになっているものである。
【0021】
さらに、請求項4に係る発明は、上記請求項1に係る発明である能動型騒音振動制御装置において、前記端数用伝達関数フィルタ生成手段は、前記端数が前記固定サンプリング・クロックの周期の1/2を越える場合には、前記端数用伝達関数フィルタとして前記伝達関数フィルタを用いる一方で、前記端数が前記固定サンプリング・クロックの周期の1/2以下の場合には、前記伝達関数フィルタを補正して前記端数用伝達関数フィルタを求めるようにしたものである。
【0022】
そして、請求項5に係る発明は、上記請求項4に係る発明である能動型騒音振動制御装置において、前記端数用伝達関数フィルタ生成手段は、前記端数が前記固定サンプリング・クロックの周期の1/2以下の場合には、前記伝達関数フィルタC^の各フィルタ係数C^j (j=0,1,2,…,J−1;Jは伝達関数フィルタC^のタップ数)に基づき、下記の(1)式又は(2)式に従って、端数用伝達関数フィルタC^' の各フィルタ係数C^' j を求めるようにしたものである。
【0023】
C^' 0 =C^' 1 =0 ……(1)
C^' j =(C^(j-1) +C^j )/2 (j≧2) ……(2)
一方、上記第2の目的を達成するために、請求項6に係る発明は、上記請求項1〜5に係る発明である能動型騒音振動制御装置に加えて、さらに、前記更新用基準信号選択手段は、前記端数を考慮しつつ前記更新用基準信号を選択するようになっているものである。
【0024】
また、請求項7に係る発明は、上記請求項1〜6に係る発明である能動型騒音振動制御装置において、さらに、前記基本数列生成手段は、前記端数に応じて前記畳み込み演算に用いられる前記伝達関数フィルタのフィルタ係数を選択し、前記端数用基本数列生成手段は、前記端数に応じて前記畳み込み演算に用いられる前記端数用伝達関数フィルタのフィルタ係数を選択するようになっているものである。
【0025】
そして、請求項8に係る発明は、上記請求項1〜6に係る発明である能動型騒音振動制御装置において、前記基準信号は、前記周期的な騒音又は周期的な振動の基本周期に同期したインパルス信号であり、前記駆動信号生成手段は、前記基準信号としての最新のインパルス信号の生成時点から前記固定サンプリング・クロックに同期して前記適応ディジタルフィルタのフィルタ係数を順番に前記駆動信号として出力するようになっており、前記基準信号としての最新のインパルス信号の生成時点から次のインパルス信号の生成時点までの間の前記駆動信号の出力回数Tyをカウントする駆動信号カウント手段と、この駆動信号カウント手段が最後にカウントした前記駆動信号の出力時点から次のインパルス信号の生成時点までの間の端数時間を計測する端数時間計測手段と、を設け、前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間及び前記固定サンプリング・クロックの周期に基づいて前記端数を演算するようになっており、前記駆動信号カウント手段がカウントした前記出力回数Tyから1だけ減算した値と前記端数演算手段が演算した端数とを加算した結果を実際タップ長Lf、前記実際タップ長Lfを小数点第1位で四捨五入した結果を整数タップ長L1、前記基本数列RT を〔R10 ,R11 ,R12 ,…,R1(Ty-1)〕、前記端数用基本数列RT ' を〔R1'0,R1'1,R1'2,…,R1' (Ty-1)〕、前記最新のインパルス信号の生成時点から前記固定サンプリング・クロックに同期してi(=0,1,2,…,Ty−1)番目に出力する前記駆動信号をyi 、前記適応ディジタルフィルタWのj(=0,1,2,…,Ty−1)番目のフィルタ係数をWj 、前記残留騒音信号又は残留振動信号をe、収束係数をαとそれぞれした場合、前記適応処理手段は、前記駆動信号yi を出力する度にTy個の前記フィルタ係数Wj を下記(3)式に基づいて更新するようになっており、前記更新用基準信号選択手段は、前記j番目の前記フィルタ係数Wj の更新に用いる前記更新用基準信号R2j を下記(4)式、(5)式、(6)式又は(7)式に従って選択するようになっているものである。
【0026】
j (n+1)=Wj (n)−αR2j e ……(3)
R2j =R1(i+j) (j≠Ty−1,0≦j≦i) ……(4)
R2j =R1(L1+i-j) (j≠Ty−1,j>i) ……(5)
R2j =R1' (i+1) (j=Ty−1,j<i) ……(6)
R2j =R1'0 (j=Ty−1,j=i) ……(7)
請求項9に係る発明は、上記請求項8に係る発明である能動型騒音振動制御装置において、前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間を前記固定サンプリング・クロックの周期で除算することにより前記端数を演算するようになっているものである。
【0027】
これに対し、請求項10に係る発明は、上記請求項8に係る発明である能動型騒音振動制御装置において、前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間が、前記固定サンプリング・クロックの周期の1/2以上か未満かを判定する比較手段を含んでいる。
【0028】
さらに、上記第2の目的を達成するために、請求項11に係る発明は、上記請求項1〜5に係る発明である能動型騒音振動制御装置に加えて、さらに、前記周期的な騒音又は周期的な振動の周期Tx を検出する周期検出手段と、前記周期Tx を前記固定サンプリング・クロックの周期TSCで除算した結果である実際タップ長Lfを求める実際タップ長演算手段と、前記実際タップ長Lfを小数点第1位で四捨五入した結果である整数タップ長L1を演算する整数タップ長演算手段と、前記実際タップ長Lfの小数点以下を切り上げた値である出力回数Tyを求める出力回数演算手段と、を設けるとともに、前記基本数列RT を〔R10 ,R11 ,R12 ,…,R1(Ty-1)〕、前記騒音又は振動の一周期内に前記固定サンプリング・クロックに同期してi(=0,1,2,…,Ty−1)番目に出力する前記駆動信号をyi 、前記適応ディジタルフィルタWのj(=0,1,2,…,Ty−1)番目のフィルタ係数をWj 、前記残留騒音信号又は残留振動信号をe、収束係数をαとそれぞれした場合、前記適応処理手段は、前記駆動信号を出力する度にTy個の前記フィルタ係数Wj を上記請求項8記載の(3)式に基づいて更新するようになっており、前記更新用基準信号選択手段は、前記j番目の前記フィルタ係数Wj の更新に用いる前記更新用基準信号R2j を上記請求項8記載の(4)式、(5)式、(6)式又は(7)式に従って選択するようになっているものである。
【0029】
そして、請求項12に係る発明は、上記請求項8〜11に係る発明である能動型騒音振動制御装置において、前記伝達関数フィルタC^の各フィルタ係数をC^j (j=0,1,2,…,J−1;Jは伝達関数フィルタC^のタップ数)、前記端数用伝達関数フィルタC^' の各フィルタ係数C^' j (j=0,1,2,…,J−1)とした場合、前記基本数列生成手段は、下記の(8)式に従って前記基本数列RT の各値R1j (j=0,1,2,…,Ty−1)を演算し、前記端数用基本数列生成手段は、下記の(9)式に従って前記端数用基本数列RT ' の各値R1' j (j=0,1,2,…,Ty−1)を演算するようになっているものである。ただし、round(A)は、数値Aを小数点以下第1位で四捨五入した値(正の整数)である。
【0030】
R1j =C^j +C^(j+round(Lf)) +C^(j+round(2Lf))+C^(j+round(3Lf))+C^(j+round(4Lf))+・・・……(8)
R1' j =C^' j +C^' (j+round(Lf)) +C^' (j+round(2Lf))+C^' (j+round(3Lf))+C^' (j+round(4Lf))+・・・……(9)
さらに、請求項13に係る発明は、上記請求項1〜12に係る発明である能動型騒音振動制御装置を車両に適用したものであって、前記騒音源又は振動源はエンジンであり、前記基準信号生成手段は、前記基準信号として、前記エンジンでの燃焼タイミングに同期したインパルス信号を生成するようになっている。
【0031】
ここで、請求項1に係る発明にあっては、端数用伝達関数フィルタ生成手段によって、端数と同じ幅の方形波に応じた端数用伝達関数フィルタが生成され、端数用基本数列生成手段によって、端数用伝達関数フィルタに基づいた端数用基本数列生成手段が生成される。
【0032】
そして、適応ディジタルフィルタのフィルタ係数が更新される際に、更新用基準信号選択手段によって、基本数列又は端数用基本数列から更新用基準信号が選択されるが、適応ディジタルフィルタの最終タップのフィルタ係数(騒音又は振動の一周期内の最後の駆動信号に関係するフィルタ係数)の更新には、基本数列からではなく、端数用基本数列から更新用基準信号が選択される。
【0033】
このため、適応ディジタルフィルタの各フィルタ係数の更新に用いる更新用基準信号を、常に基本数列(上記特許では、疑似周期列C〜)から選択していた従に比べて、適応ディジタルフィルタのフィルタ係数の更新精度が向上する。
【0034】
請求項2、3、4及び5に係る発明は、いずれも端数用伝達関数フィルタ生成手段の構成をより具体的にしたものである。
即ち、請求項2に係る発明にあっては、端数用伝達関数フィルタ候補を予め複数種類記憶している(なお、端数用伝達関数フィルタ候補のうちの一つとして、伝達関数フィルタを兼用してもよい。)という構成を採用している。つまり、端数用伝達関数フィルタ生成手段は、端数の大きさに従って、最も高い精度が得られるであろう端数用伝達関数フィルタ候補を、端数用伝達関数フィルタとして選出する。
【0035】
例えば、端数用伝達関数フィルタ候補として、伝達関数フィルタそのものである第1の端数用伝達関数フィルタ候補、固定サンプリング・クロックの周期の1/2と同じ幅の方形波を入力とした場合の伝達関数フィルタに相当する第2の端数用伝達関数フィルタ候補、固定サンプリング・クロックの周期の1/4と同じ幅の方形波を入力とした場合の伝達関数フィルタに相当する第3の端数用伝達関数フィルタ候補、という三種類のフィルタを記憶しているものとすれば、端数の大きさが、固定サンプリング・クロックの周期に対して、1/2を越えるときには第1の端数用伝達関数フィルタ候補を端数用伝達関数フィルタとして選出し、1/4を越え1/2以下のときには第2の端数用伝達関数フィルタ候補を端数用伝達関数フィルタとして選出し、1/2未満のときには第3の端数用伝達関数フィルタ候補を端数用伝達関数フィルタとして選出する、という具合になる。
【0036】
このように、請求項2に係る発明であれば、端数用伝達関数フィルタ候補を記憶する必要はあるが、制御中には端数に応じて端数用伝達関数フィルタを選出するだけで済むから、処理が容易であるという利点がある。
【0037】
これに対し、請求項3に係る発明にあっては、実質的にデルタ関数(幅が0で面積が1の方形波)と見なすことができる単位パルス波(具体的には、固定サンプリング・クロックの周期に比べて幅が極めて狭く、高さは可能な範囲で最大になっているパルス波)を利用したものであって、その単位パルス波の応答波形である伝達関数フィルタ単位波形を出来るだけ細かいサンプリング周期(例えば、固定サンプリング・クロックの1/10)で生成し記憶しておき、その伝達関数フィルタ単位波形を適宜積分すれば、任意の幅のパルス波形の応答波形が求められる、という点に着目している。
【0038】
つまり、端数に相当する時間に渡って、伝達関数フィルタ単位波形を所定間隔(例えば、伝達関数フィルタ単位波形のサンプリング周期に相当する時間間隔)で次々と出力したと考えると、それら出力された各波形は、出力タイミングが所定間隔だけずれているが、同じ形の波形であるから、それら各波形の重畳波形は伝達関数フィルタ単位波形の各値を加算するだけで求めることができる。
【0039】
このように、請求項3に係る発明であれば、一つの伝達関数フィルタ単位半径を記憶しておくだけで、後は端数時間に応じた加算演算を行うことにより、端数用伝達関数フィルタを生成することができる、という利点がある。
【0040】
そして、請求項4に係る発明にあっては、端数が固定サンプリング・クロックの周期の1/2を越えるか否かによって、伝達関数フィルタを端数用伝達関数フィルタとしてそのまま用いるか、伝達関数フィルタを補正して端数用伝達関数フィルタを別途生成するか、を選択するようになる。これは、精度として請求項2又は請求項3に係る発明に比べて若干劣るが、記憶容量に余裕がない場合や、演算能力が低い場合には適用が容易であるという利点がある。
【0041】
端数が固定サンプリング・クロックの周期の1/2を越えない場合に伝達関数フィルタを補正して端数用伝達関数フィルタを生成する具体的な手法としては、種々の手法が考えられる。例えば請求項5に係る発明であれば、端数が固定サンプリング・クロックの周期の1/2を越えない場合には、その周期の1/2の幅の方形波を入力とした場合の伝達関数フィルタに相当するフィルタを、端数用伝達関数フィルタとして用いるために、上記(1)式、(2)式に従って伝達関数フィルタC^の各フィルタ係数C^j を補正して各フィルタ係数C^' j (j=0,1,2,…,J−1)が求められる。
【0042】
そして、請求項6に係る発明にあっては、端数演算手段が求めた端数を考慮しつつ、更新用基準信号選択手段が基本数列又は端数用基本数列のうちから更新用基準信号を選択するため、端数を全く考慮せずに更新用基準信号を選択していた従来に比べて、更新用基準信号の精度が向上する。
【0043】
また、請求項7に係る発明にあっては、基本数列又は端数用基本数列を生成するための畳み込み演算に用いられる伝達関数フィルタ又は端数用伝達関数フィルタのフィルタ係数をも、端数演算手段が求めた端数に応じて選択するようになっているから、基本数列及び端数用基本数列の精度も向上し、それから選択される更新用基準信号の精度がさらに向上する。
【0044】
これに対し、請求項8に係る発明にあっては、駆動信号カウント手段が、最新のインパルス信号の生成時点から次のインパルス信号の生成時点の間の駆動信号の出力回数をカウントするため、次のインパルス信号の生成時点における駆動信号カウント手段のカウント値は、そのまま基準信号の一周期(騒音又は振動の一周期)内における駆動信号の出力回数Tyとなる。具体的には、インパルス信号が生成された時点で最初の駆動信号が出力され、その出力時点からサンプリング・クロックの一周期が経過した時点で二番目の駆動信号が出力され、その後も同様にサンプリング・クロックに同期して次々と駆動信号が出力される。よって、最終的にカウントされた出力回数Tyから1だけ減算した値は、実際タップ長Lfの整数部分に等しい。
【0045】
その一方で、端数時間計測手段が、駆動信号カウント手段が最後にカウントした駆動信号の出力時点から次のインパルス信号の生成時点までの間(つまり、インパルス信号の生成時点と、その直前に出力されている駆動信号の出力時点との間)の端数時間を計測する。この計測された端数時間は、固定サンプリング・クロックの周期よりも短い時間である。そして、この端数時間及び固定サンプリング・クロックに基づいて端数演算手段が演算した端数は、実際タップ長Lfの小数点以下に等しい。
【0046】
よって、値(Ty−1)と端数演算手段が求めた端数とを加算すると、実際タップ長(基準信号の周期を固定サンプリング・クロックで除算して求められる小数点以下も含むタップ長)Lfが得られる。また、その実際タップ長Lfを小数点以下第1位で四捨五入すれば、端数が0.5以上の場合には実際タップ長Lfの整数部分に1を加算した値(つまり、出力回数Ty)が整数タップ長L1となり、端数が0.5未満の場合には実際タップ長Lfの整数部分(つまり、出力回数Ty−1)がそのまま整数タップ長L1となる。
【0047】
ちなみに、従来の装置では、端数については全く考慮せず、実際タップ長Lfの小数点以下を切り上げた値、つまり出力回数Tyをそのまま整数タップ長L1として取り扱っていた。
【0048】
そして、整数タップ長L1が上記のように端数を考慮しつつ決定される値であると、特に上記(5)式に従って更新用基準信号R2j を選択する際(つまり、j>iの場合)には、端数が0.5以上の場合と0.5未満の場合とで、選択される更新用基準信号R2j が異なってくる。
【0049】
具体的には、端数が0.5以上の場合には、更新用基準信号R2j は、現時点で出力された駆動信号yi の添え字iと更新されるフィルタ係数Wj の添え字jとが一致するところではR10 が選択され、そこを起点として、添え字jが減るに従って、R11 ,R12 ,…,という順番で更新用基準信号R2j が選択され、逆に添え字jが増えるに従って、R1(Ty-1),R1(Ty-2),…,という順番で更新用基準信号R2j が選択される。
【0050】
これに対し、端数が0.5未満の場合には、更新用基準信号R2j は、現時点で出力された駆動信号yi の添え字iと更新されるフィルタ係数Wj の添え字jとが一致するところではR10 が選択され、そこを起点として、添え字jが減るに従って、R11 ,R12 ,…,という順番で更新用基準信号R2j が選択される点は、端数が0.5以上の場合と同じであるが、起点から逆に添え字jが増えるに従って、R1(Ty-2),R1(Ty-3),…,という順番で更新用基準信号R2j が選択される。
【0051】
そして、このように端数の大きさに応じて更新用基準信号が選択される結果、端数を考慮せずに更新用基準信号(リファレンス信号)を選択していた従来に比べて、更新用基準信号の精度が向上する。
【0052】
なお、この請求項8に係る発明における端数演算手段の具体的構成の一例としては、請求項9に係る発明がある。すなわち、端数時間を固定サンプリング・クロックの周期で除算すれば、端数を求めることができる。
【0053】
ただし、端数演算手段に要求される最低限の能力は、測定された端数時間が、固定サンプリング・クロックの周期の1/2以上か未満か、ということであるから、請求項9に係る発明のようにわざわざ除算を行わなくても済む。
【0054】
そこで、請求項10に係る発明のように、端数演算手段が比較手段を有していれば、請求項9に係る発明と同様の作用が得られる。つまり、その比較手段が、端数時間が固定サンプリング・クロックの周期の1/2以上であると判定した場合には、出力回数Tyを整数タップ長L1とし、端数時間が固定サンプリング・クロックの周期の1/2未満であると判定された場合には、出力回数Tyから1を減算した値を整数タップ長L1とすればよい。或いは、その比較手段が、端数時間が固定サンプリング・クロックの周期の1/2以上であると判定した場合には、端数を0.5以上1.0未満の値(例えば、0.5)に設定し、端数時間が固定サンプリング・クロックの周期の1/2未満であると判定した場合には、端数を0以上0.5未満の値(例えば、0.4)に設定すればよい。
【0055】
一方、請求項11に係る発明にあっても、周期検出手段と、実際タップ長演算手段と、整数タップ長演算手段と、出力回数演算手段とを備えており、適応処理手段や更新用基準信号選択手段は、上記(3)〜(7)式に従った演算を行うようになっているから、上記請求項8に係る発明と同様の作用が得られる。
【0056】
また、請求項12に係る発明にあっては、基本数列及び端数用基本数列を生成する際に上記(8)式、(9)式を用いているため、更新用基準信号の元になる基本数列及び端数用基本数列を生成する際にも、端数が考慮されるようになる。この結果、基本数列及び端数用基本数列の精度も向上し、それから選択される更新用基準信号の精度がさらに向上する。
【0057】
そして、請求項13に係る発明にあっては、騒音源又は振動源が車両のエンジンであるから、そのエンジンで発生する騒音又は振動は、エンジンでの燃焼に同期しているはずである。そこで、基準信号生成手段が生成するエンジンでの燃焼タイミングに同期したインパルス信号は、基準信号として適当である。
【0058】
【発明の効果】
以上説明したように、本発明によれば、騒音や振動の一周期を固定サンプリング・クロックの周期で除算した場合の端数に対応する伝達関数フィルタである端数用伝達関数フィルタを、伝達関数フィルタとは別に求めるとともに、その端数用伝達関数フィルタに基づいた端数用基本数列を生成し、適応ディジタルフィルタのフィルタ係数のうち最終タップのフィルタ係数の更新には、端数用基本数列から更新用基準信号を選択するようにしたため、適応ディジタルフィルタの更新精度が向上し、良好な騒音低減制御、振動低減制御が実行できるという効果がある。
【0059】
特に、請求項6及び請求項8に係る発明であれば、更新用基準信号を基本数列又は端数用基本数列から選択する際に、端数を考慮するようにしたため、全く考慮しない場合に比べて更新用基準信号に含まれる誤差を小さくすることができ、更新用基準信号の精度が向上し、これを用いて行われる適応ディジタルフィルタのフィルタ係数の更新処理の精度もさらに向上し、より良好な騒音低減制御又は振動低減制御が実行できるという効果がある。
【0060】
さらに、請求項7及び請求項12に係る発明にあっては、基本数列及び端数用基本数列を生成する際にも端数を考慮するため、更新用基準信号に含まれる誤差をさらに小さくすることができ、一段と良好な騒音低減制御又は振動低減制御が実行できるという効果がある。
【0061】
【発明の実施の形態】
以下、この発明の実施の形態を図面に基づいて説明する。
図1乃至図5は本発明の第1の実施の形態を示す図であって、図1は本発明に係る能動型騒音振動制御装置の一実施形態である能動型振動制御装置を適用した車両の概略側面図である。
【0062】
先ず、構成を説明すると、エンジン30が駆動信号に応じた能動的な支持力を発生可能な能動型エンジンマウント1を介して、サスペンションメンバ等から構成される車体35に支持されている。なお、実際には、エンジン30及び車体35間には、能動型エンジンマウント1の他に、エンジン30及び車体35間の相対変位に応じた受動的な支持力を発生する複数のエンジンマウントも介在している。受動的なエンジンマウントとしては、例えばゴム状の弾性体で荷重を支持する通常のエンジンマウントや、ゴム状の弾性体内部に減衰力発生可能に流体を封入してなる公知の流体封入式のマウントインシュレータ等が適用できる。
【0063】
一方、能動型エンジンマウント1は、例えば、図2に示すように構成されている。即ち、この実施の形態における能動型エンジンマウント1は、エンジン30への取付け用のボルト2aを上部に一体に備え且つ内部が空洞で下部が開口したキャップ2を有し、このキャップ2の下部外面には、軸が上下方向を向く内筒3の上端部がかしめ止めされている。
【0064】
内筒3は、下端側の方が縮径した形状となっていて、その下端部が内側に水平に折り曲げられて、ここに円形の開口部3aが形成されている。そして、内筒3の内側には、キャップ2及び内筒3内部の空間を上下に二分するように、キャップ2及び内筒3のかしめ止め部分に一緒に挟み込まれてダイアフラム4が配設されている。ダイアフラム4の上側の空間は、キャップ2の側面に孔を開けることにより大気圧に通じている。
【0065】
さらに、内筒3の内側にはオリフィス構成体5が配設されている。なお、本実施の形態では、内筒3内面及びオリフィス構成5間には、薄膜状の弾性体(ダイアフラム4の外周部を延長させたものでもよい)が介在していて、これにより、オリフィス構成体5は内筒3内側に強固に嵌め込まれている。
【0066】
このオリフィス構成体5は、内筒3の内部空間に整合して略円柱形に形成されていて、その上面には円形の凹部5aが形成されている。そして、その凹部5aと、底面の開口部3aに対向する部分との間が、オリフィス5bを介して連通するようになっている。オリフィス5bは、例えば、オリフィス構成体5の外周面に沿って螺旋状に延びる溝と、その溝の一端部を凹部5aに連通させる流路と、その溝の他端部を開口部3aに連通させる流路とで構成される。
【0067】
一方、内筒3の外周面には、内周面側が若干上方に盛り上がった肉厚円筒状の支持弾性体6の内周面が加硫接着されていて、その支持弾性体6の外周面は、上端側が拡径した外筒7の内周面上部に加硫接着されている。
【0068】
そして、外筒7の下端部は上面が開口した円筒形のアクチュエータケース8の上端部にかしめ止めされていて、そのアクチュエータケース8の下端面からは、車体35側への取付け用の取付けボルト9が突出している。取付けボルト9は、その頭部9aが、アクチュエータケース8の内底面に張り付いた状態で配設された平板部材8aの中央の空洞部8bに収容されている。
【0069】
さらに、アクチュエータケース8の内側には、円筒形の鉄製のヨーク10Aと、このヨーク10Aの中央部に軸を上下に向けて巻き付けられた励磁コイル10Bと、ヨーク10Aの励磁コイル10Bに包囲された部分の上面に極を上下に向けて固定された永久磁石10Cと、から構成される電磁アクチュエータ10が配設されている。
【0070】
また、アクチュエータケース8の上端部はフランジ状に形成されたフランジ部8Aとなっていて、そのフランジ部8Aに外筒7の下端部がかしめられて両者が一体となっているのであるが、そのかしめ止め部分には、円形の金属製の板ばね11の周縁部(端部)が挟み込まれていて、その板ばね11の中央部の電磁アクチュエータ10側には、リベット11aによって磁化可能な磁路部材12が固定されている。なお、磁路部材12はヨーク10Aよりも若干小径の鉄製の円板であって、その底面が電磁アクチュエータ10に近接するような厚みに形成されている。板ばね11及び磁路部材12によって可動部材が構成される。
【0071】
さらに、上記かしめ止め部分には、フランジ部8Aと板ばね11とに挟まれるように、リング状の薄膜弾性体13と、力伝達部材14のフランジ部14aとが支持されている。具体的には、アクチュエータケース8のフランジ部8A上に、薄膜弾性体13と、力伝達部材14のフランジ部14aと、板ばね11とをこの順序で重ね合わせるとともに、その重なり合った全体を外筒7の下端部をかしめて一体としている。
【0072】
力伝達部材14は、磁路部材12を包囲する短い円筒形の部材であって、その上端部がフランジ部14aとなっており、その下端部は電磁アクチュエータ10のヨーク10Aの上面に結合している。具体的には、ヨーク10Aの上端面周縁部に形成された円形の溝に、力伝達部材14の下端部が嵌合して両者が結合されている。また、力伝達部材14の弾性変形時のばね定数は、薄膜弾性体13のばね定数よりも大きい値に設定されている。
【0073】
ここで、本実施の形態では、支持弾性体6の下面及び板ばね11の上面によって画成された部分に主流体室15が形成され、ダイアフラム4及び凹部5aによって画成された部分に副流体室16が形成されていて、これら主流体室15及び副流体室16間が、オリフィス構成体5に形成されたオリフィス5bを介して連通している。なお、これら主流体室15,副流体室16及びオリフィス5b内には、エチレングリコール等の流体が封入されている。
【0074】
かかるオリフィス5bの流路形状等で決まる流体マウントとしての特性は、走行中のエンジンシェイク発生時、つまり5〜15Hzで能動型エンジンマウント1が加振された場合に高動ばね定数、高減衰力を示すように調整されている。
【0075】
そして、電磁アクチュエータ10の励磁コイル10Bは、コントローラ25からハーネス23aを通じて供給される電流である駆動信号yに応じて所定の電磁力を発生するようになっている。コントローラ25は、マイクロコンピュータ,必要なインタフェース回路,A/D変換器,D/A変換器,アンプ、ROM,RAM等の記憶媒体等を含んで構成され、アイドル振動やこもり音振動・加速時振動が車体35に入力されている場合には、その振動を低減できる能動的な支持力が能動型エンジンマウント1に発生するように、能動型エンジンマウント1に対する駆動信号yを生成し出力するようになっている。
【0076】
ここで、アイドル振動やこもり音振動は、例えばレシプロ4気筒エンジンの場合、エンジン回転2次成分のエンジン振動が車体35に伝達されることが主な原因であるから、そのエンジン回転2次成分に同期して駆動信号yを生成し出力すれば、車体側振動の低減が可能となる。そこで、本実施の形態では、エンジン30のクランク軸の回転に同期した(例えば、レシプロ4気筒エンジンの場合には、クランク軸が180度回転する度に一つの)インパルス信号を生成し基準信号xとして出力するパルス信号生成器26を設けていて、その基準信号xが、エンジン30における振動の発生状態を表す信号としてコントローラ25に供給されるようになっている。
【0077】
一方、電磁アクチュエータ10のヨーク10Aの下端面と、アクチュエータケース8の底面を形成する平板部材8aの上面との間に挟み込まれるように、エンジン30から支持弾性体6を通じて伝達する加振力を検出する荷重センサ22が配設されていて、荷重センサ22の検出結果がハーネス23bを通じて残留振動信号eとしてコントローラ25に供給されるようになっている。荷重センサ22としては、具体的には、圧電素子,磁歪素子,歪ゲージ等が適用可能である。
【0078】
そして、コントローラ25は、供給される残留振動信号e及び基準信号xに基づき、逐次更新型の適応アルゴリズムの一つである同期式Filtered−XLMSアルゴリズムを実行することにより、能動型エンジンマウント1に対する駆動信号yを演算し、その駆動信号yを能動型エンジンマウント1に出力するようになっている。
【0079】
具体的には、コントローラ25は、フィルタ係数Wj 可変の適応ディジタルフィルタWを有していて、最新の基準信号xが入力された時点から固定サンプリング・クロックに同期して、その適応ディジタルフィルタWのフィルタ係数Wj を順番に駆動信号yとして出力する一方、基準信号x及び残留振動信号eに基づいて適応ディジタルフィルタWの各フィルタ係数Wj を適宜更新する処理を実行するようになっている。
【0080】
適応ディジタルフィルタWの更新式は、Filtered−X LMSアルゴリズムに従った下記の(3)式のようになる。
j (n+1)=Wj (n)−αR2j e(n) ……(3)
ここで、(n),(n+1)が付く項はサンプリング時刻n,n+1における値であることを表し、αは収束係数である。また、更新用基準信号R2j は、理論的には、基準信号xを、能動型エンジンマウント1の電磁アクチュエータ10及び荷重センサ22間の伝達関数Cを有限インパルス応答型フィルタでモデル化した伝達関数フィルタC^でフィルタ処理した値であるが、基準信号xの大きさは“1”であるから、伝達関数フィルタC^のインパルス応答を基準信号xに同期して次々と生成した場合のそれらインパルス応答波形を合わせてなる基本数列RT 〔R10 ,R11 ,R12 ,…,R1(Ty-1)〕から選択することにより求められる。
【0081】
ただし、伝達関数フィルタC^は、厳密な意味での伝達関数Cに対応するものではなく、実際は、駆動信号yの出力周期を決める固定のサンプリング・クロックの周期TSCと同じ幅の方形波を、駆動信号yとして電磁アクチュエータ10に供給し、その駆動信号yに応じて発生した制御振動を加重センサ22で測定した場合の応答波形(つまり、残留振動信号eの波形)を周期TSCでサンプリングすることによりフィルタ係数C^j が決定されたディジタルフィルタであり、例えば、図4(a)に示すような形になっている。
【0082】
さらに、本実施の形態では、コントローラ25は、上記伝達関数フィルタC^の他に、端数用伝達関数フィルタC^' の候補を複数種類記憶している。端数用伝達関数フィルタC^' は、例えば、図4(b)に示すように、周期TSCよりも幅の狭い方形波を入力した場合の伝達関数フィルタC^に相当するディジタルフィルタであり、周期TSCよりも幅の狭い方形波を、駆動信号yとして電磁アクチュエータ10に供給し、その駆動信号yに応じて発生した制御振動を加重センサ22で測定した場合の応答波形(つまり、残留振動信号eの波形)を周期TSCでサンプリングすることにより生成されるディジタルフィルタである。つまり、そのような端数用伝達関数フィルタC^' を、入力となる方形波の幅を複数選択して複数種類生成しておき、コントローラ25は、それら各端数用伝達関数フィルタC^' を候補として記憶しているのである。
【0083】
そして、コントローラ25は、後述のような端数EDが求められると、その端数EDに応じて端数用伝達関数フィルタ候補のうちから一つの端数用伝達関数フィルタC^' を選択するようになっている。例えば、周期TSCよりも幅の狭い方形波として、TSC/2、TSC/4、TSC/8、TSC/10という四種類を選択して各方形波に対応した端数用伝達関数フィルタ候補をコントローラ25が記憶していたとすると、端数EDが、1/2を越えるときには伝達関数フィルタC^を端数用伝達関数フィルタC^' として選択し、1/4を越えて1/2以下の場合には、幅がTSC/2の方形波に対応する端数用伝達関数フィルタ候補を端数用伝達関数フィルタC^' として選択し、1/8を越えて1/4以下の場合には、幅がTSC/4の方形波に対応する端数用伝達関数フィルタ候補を端数用伝達関数フィルタC^' として選択し、1/10を越えて1/8以下の場合には、幅がTSC/8の方形波に対応する端数用伝達関数フィルタ候補を端数用伝達関数フィルタC^' として選択し、1/10以下の場合には、幅がTSC/10の方形波に対応する端数用伝達関数フィルタ候補を端数用伝達関数フィルタC^' として選択する、というようになっている。
【0084】
そして、コントローラ25は、伝達関数フィルタC^に対応した基本数列RT を演算するのと同様に、端数用伝達関数フィルタC^' を基準信号xに同期して次々と生成した場合の応答波形を合わせてなる端数用基本数列RT ' 〔R1'0,R1'1,R1'2,…,R1' (Ty-1)〕を生成するようにもなっている。
【0085】
また、理論的には、基準信号xを適応ディジタルフィルタWでフィルタ処理して駆動信号yを生成するのであるが、基準信号xの大きさが“1”であるため、フィルタ係数Wj を順番に駆動信号yとして出力しても、フィルタ処理の結果を駆動信号yとしたのと同じ結果になる。
【0086】
上記基本数列RT の演算は、最新の基準信号xの入力タイミングを始点として伝達関数フィルタC^のインパルス応答波形と、一つ前の基準信号xの入力タイミングを始点とした伝達関数フィルタC^のインパルス応答波形と、二つ前の基準信号xの入力タイミングを始点とした伝達関数フィルタC^のインパルス応答波形と、…、という具合に、現時点まで応答波形が届いている全ての伝達関数フィルタC^を重畳することにより行う。また、端数用基本数列RT ' の演算も、同様に、最新の基準信号xの入力タイミングを始点として端数用伝達関数フィルタC^' のインパルス応答波形と、一つ前の基準信号xの入力タイミングを始点とした端数用伝達関数フィルタC^' のインパルス応答波形と、二つ前の基準信号xの入力タイミングを始点とした端数用伝達関数フィルタC^' のインパルス応答波形と、…、という具合に、現時点まで応答波形が届いている全ての端数用伝達関数フィルタC^' を重畳することにより行う。
【0087】
そして、ディジタル領域では、例えば伝達関数フィルタC^のインパルス応答は、その伝達関数フィルタC^を構成する各フィルタ係数C^j (j=0,1,2,…,J−1:Jはタップ数)そのものであることから、基準信号xの周期がサンプリング・クロックの間隔の4倍であれば、例えば基本数列RT の第1番目の数値R11 は、
R11 =C^1 +C^5 +C^9 +C^13+…
として求めることができる。
【0088】
しかし、サンプリング・クロックの周期が固定であり、基準信号xの周期はリニアに変化することから、基準信号xの周期がサンプリング・クロックの周期の整数倍にならない場合があり、例えば基準信号xの周期がサンプリング・クロックの間隔の3.28倍、3.87倍等となるようなことがある。そして、本実施の形態では、そのような端数0.28や0.87を無視することなく、基本数列RT の各数値R1j 及び端数用基本数列RT ' の各数値R1' j を演算するようにしている。
【0089】
さらに、本実施の形態では、適応ディジタルフィルタWのフィルタ係数Wj の更新の際に、上記のように生成された基本数列RT の各数値R1j から各更新演算に用いる更新用基準信号R2j を選択するにあたっても、上記端数を考量するようになっている。
【0090】
ここで、コントローラ25内における基本数列RT 及び端数用基本数列RT ' の生成処理と、更新用基準信号R2j の選択処理について具体的に説明する。
即ち、コントローラ25内では、最新の基準信号xの入力時点から固定サンプリング・クロックに同期して出力される駆動信号yの出力回数がカウントされ、次の基準信号xの入力時点までの駆動信号yの出力回数が、最新の出力回数Tyとして記憶されるようになっている。つまり、最新の基準信号xが入力された時点で、適応ディジタルフィルタWの最初のフィルタ係数W0 が最初の駆動信号y0 として出力され、その出力時点から固定のサンプリング・クロックの周期TSCだけ経過した時点で次のフィルタ係数W1 が駆動信号y1 として出力され、…、という具合に固定のサンプリング・クロックに同期して次々と出力される駆動信号yi の出力回数Tyがカウントされるのである。
【0091】
また、コントローラ25は、駆動信号yi を出力する度にクリア・スタートするとともに、基準信号xが入力された時点で時間計測を停止するようになっているタイマ機能を有していて、基準信号xが入力された時点でのタイマの計測時間(端数時間)をサンプリング・クロックの周期TSCで除算することにより、端数EDを演算するようになっている。つまり、タイマによって計測された端数時間は、出力回数Tyの最後のカウントを行った時点から次の基準信号xの入力時点までの間の時間であり、サンプリング・クロックの周期TSCよりも短い時間である。
【0092】
そして、出力回数Tyから1だけ減じた値(Ty−1)と端数EDとを加算した値を実際タップ長Lf、実際タップ長Lfを小数点第1位で四捨五入した値を整数タップ長L1、とそれぞれすると、コントローラ25内で、下記の(8)式に従って基本数列RT の各数値R1j (j=0,1,2,…,Ty−1)を演算し、下記の(9)式に従って端数用基本数列RT ' の各数値R1' j (j=0,1,2,…,Ty−1)を演算するようになっている。
【0093】
R1j =C^j +C^(j+round(Lf)) +C^(j+round(2Lf))+C^(j+round(3Lf))+C^(j+round(4Lf))+・・・……(8)
R1' j =C^' j +C^' (j+round(Lf)) +C^' (j+round(2Lf))+C^' (j+round(3Lf))+C^' (j+round(4Lf))+・・・……(9)
ただし、round(A)は、数値Aを小数点以下第1位で四捨五入した値である。また、上記(8)式、(9)式の右辺の加算は、加算される伝達関数フィルタC^、端数用伝達関数フィルタC^' のフィルタ係数C^* 、C^' * の添え字(j+round(a・Lf))が、伝達関数フィルタC^のタップ数J以下である範囲で行えばよい。
【0094】
さらに、コントローラ25内では、下記の(4)式、(5)式、(6)式又は(7)式に従って、更新用基準信号R2j を選択するようになっている。
R2j =R1(i+j) (j≠Ty−1,0≦j≦i) ……(4)
R2j =R1(L1+i-j) (j≠Ty−1,j>i) ……(5)
R2j =R1' (i+1) (j=Ty−1,j<i) ……(6)
R2j =R1'0 (j=Ty−1,j=i) ……(7)
次に、本実施の形態の作用を説明する。
【0095】
即ち、エンジンシェイク発生時には、オリフィス5aの流路形状等を適宜選定している結果、このエンジンマウント1は高動バネ定数,高減衰力の支持装置として機能するため、エンジン30で発生したエンジンシェイクがエンジンマウント1によって減衰され、メンバ35側の振動レベルが低減される。なお、かかる場合には、特に可動部材12を変位させる必要はない。
【0096】
一方、オリフィス5a内の流体がスティック状態となり主流体室15及び副流体16間での流体の移動が不可能になるアイドル振動周波数以上の周波数の振動が入力された場合には、コントローラ20は、所定の演算処理を実行し、電磁アクチュエータ13に駆動信号yを出力し、エンジンマウント1に振動を低減し得る能動的な制御力を発生させる。
【0097】
これを、アイドル振動,こもり音振動入力時にコントローラ20内で実行される処理の概要を示すフローチャートである図3に従って具体的に説明する。
先ず、そのステップ101において所定の初期設定を行った後に、ステップ102に移行し、上記(8)式に従って、基本数列RT の各数値R1j (j=0,1,2,…,Ty−1)を演算するとともに、上記(9)式に従って、端数用基本数列RT ' の各数値R1' j (j=0,1,2,…,Ty−1)を演算する。なお、出力回数Tyは前回の処理で求められた値を用いるため、図3の処理が開始された時点では、出力回数Ty、実際タップ長Lf、整数タップ長L1は決まらないが、第1回目の処理の際には伝達関数フィルタC^の過去の応答は考慮しなくてよいから、伝達関数フィルタC^の各フィルタ係数C^j をそのまま基本数列RT の各数値R1j とすればよい。
【0098】
しかし、図3に示す処理が繰り返し実行されれば、出力回数Tyには常に最新の値が保存されるようになり、出力回数Tyと、後述する端数EDとが定まれば実際タップ長Lfが求められるから、上記(8)式に従って基本数列RT が演算されるようになる。
【0099】
同様に、図3の処理が開始された時点では、端数EDが定まっていないから、端数用伝達関数フィルタC^' が選択されていないため、端数用基本数列RT ' の各数値R1' j の演算は行われない。しかし、図3に示す処理が繰り返し実行されれば、後述のように端数EDに応じた端数用伝達関数フィルタC^' が複数の候補のうちから選択されるから、上記(9)式に従って端数用基本数列RT ' が演算されるようになる。
【0100】
このステップ102における演算処理は、後にさらに詳細に説明する。
ステップ102で基本数列RT 及び端数用基本数列RT ' が生成されたら、ステップ103に移行してカウンタiを零クリアし、そして、ステップ104に移行して、適応ディジタルフィルタWのi番目のフィルタ係数Wi を駆動信号yi として出力する。
【0101】
駆動信号yi を出力したら、ステップ105に移行して、図示しないタイマを零クリアした後に計測をスタートさせる。
そして、ステップ106に移行して残留振動信号eを読み込んだら、ステップ107に移行してカウンタjを零クリアし、次いで、ステップ108に移行し、上記(4)〜(7)式に従って更新用基準信号R2j を選択するとともに、適応ディジタルフィルタWのj番目のフィルタ係数Wj を上記(3)式に従って更新する。
【0102】
ステップ108における更新処理を終えたら、ステップ109に移行して次の基準信号xが入力されているか否かを判定し、ここで基準信号xが入力されていないと判定された場合には、ステップ110に移行しカウンタjが出力回数Ty(正確には、カウンタjは0からスタートするため、出力回数Tyから1を減じた値)に達しているか否かを判定する。この判定は、ステップ104で適応ディジタルフィルタWのフィルタ係数Wi を駆動信号yi として出力した後に適応ディジタルフィルタWのフィルタ係数全てを更新したか否かを判断するためのものである。そこで、このステップ110の判定が「NO」の場合には、ステップ111でカウンタjをインクリメントした後に、ステップ108に戻って上述した処理を繰り返し実行する。
【0103】
しかし、ステップ110の判定が「YES」の場合には、適応ディジタルフィルタWの全てのフィルタ係数に対する更新演算が完了したと判断できるから、ステップ112に移行してカウンタiをインクリメントし且つ前回ステップ104の処理を実行してからサンプリング・クロックの周期TSCが経過するまで待機した後に、ステップ104に戻って上述した処理を繰り返し実行する。従って、駆動信号yを出力するステップ104以降の演算処理は、サンプリング・クロックの周期TSC毎に実行されることになる。
【0104】
一方、ステップ109で基準信号xが入力されたと判断された場合には、ステップ113に移行し、ステップ105でクリア・スタートしたタイマの値(端数時間)を読み込み、その端数時間をサンプリング・クロックの周期TSCで除算した結果を、端数EDにセットする。
【0105】
次いで、ステップ114に移行し、カウンタi(正確には、カウンタiが0からスタートするため、カウンタiに1を加えた値)を最新の出力回数Tyとして保存する。
【0106】
そして、ステップ115に移行し、端数EDに応じて、端数用伝達関数フィルタ候補のうちから一つの端数用伝達関数フィルタC^' を選択する。その後、ステップ102に戻って上述した処理を繰り返し実行する。
【0107】
このような処理を繰り返し実行する結果、コントローラ20から能動型エンジンマウント1に対しては、基準信号xが入力された時点から、サンプリング・クロックに同期して、適応ディジタルフィルタWのフィルタ係数Wi が順番に駆動信号yi として供給されるが、適応ディジタルフィルタWの各フィルタ係数Wi は、同期式Filtered−X LMSアルゴリズムに従った上記(3)によって逐次更新されるため、ある程度の時間が経過して適応ディジタルフィルタWの各フィルタ係数Wi が最適値に収束した後は、駆動信号yi が能動型エンジンマウント1に供給されることによって、エンジン30から能動型エンジンマウント1を介してメンバ35側に伝達されるアイドル振動やこもり音振動が低減されるようになる。なお、能動型エンジンマウント1から発せられる制御振動は、電磁アクチュエータ10から発せられる電磁力によって磁路部材12が上下に変位し、その変位によって主流体室15の容積が変化し、その容積変化によって支持弾性体6の拡張ばねが変形することにより得られるものである。
【0108】
しかも、本実施の形態にあっては、ステップ113の処理を実行した後に再びステップ102の処理が実行される際には、ステップ115において端数EDに対応した端数用伝達関数フィルタC^' が選択されているから、基本数列RT の他に、端数用基本数列RT ' も演算されることになる。
【0109】
その結果、ステップ108においては、適応ディジタルフィルタWの各フィルタ係数W0 〜W(Ty-1)のうち、最終タップ以外のフィルタ係数W0 〜W(Ty-2)の更新の際には、上記(4)式又は(5)式に従って、基本数列RT から更新用基準信号R2j が選択され、最終タップのフィルタ係数W(Ty-1)の更新の際には、上記(6)式又は(7)式に従って、端数用基本数列RT ' から更新用基準信号R2j が選択される。
【0110】
そして、端数用基本数列RT ' は、端数用伝達関数フィルタC^' に基づいて生成された数列であり、その端数用伝達関数フィルタC^' としては、予め記憶している複数の候補のうちから端数EDに応じた伝達関数フィルタC^として最も好適と思われるディジタルフィルタが選択されている。このため、上記(6)式又は(7)式に従って最終タップのフィルタ係数W(Ty-1)の更新のために更新用基準信号R2j を選択することは、そのフィルタ係数W(Ty-1)の更新に用いる更新用基準信号R2j をも基本数列RT から選択するようになっている従来の比べて、適応ディジタルフィルタWの精度を向上させて良好な振動低減制御を実行する上で極めて有益なのである。
【0111】
また、本実施の形態にあっては、ステップ113の処理を実行した後に再びステップ102の処理が実行される際には、端数EDを考慮して基本数列RT 及び端数用基本数列RT ' の各数値R1j 、R1' j が演算されることになる。
【0112】
具体的には、基準信号xの周期をサンプリング・クロックの周期TSCで除算した値(実際タップ長Lf)の整数部分は、出力回数Tyから1を減じた値に等しく、その少数部分は端数EDに等しいから、逆に、出力回数Tyから1を減じた値に端数EDを加算すれば、実際タップ長Lfが求められるのである。
【0113】
例えば、出力回数Ty=4、端数ED=0.28であれば、実際タップ長Lf=3.28となる。
従って、厳密に基本数列RT 及び端数用基本数列RT ' の各数値R1j 及びR1' j を演算するのであれば、例えば基本数列RT の数値R11 は、
R11 =C^1 +C^4.28+C^7.56+C^10.84 +…
となり、ディジタル領域ではこのような演算は不可能であるが、本実施の形態では、上記(8)式が用いられる結果、数値R11 は、
R11 =C^1 +C^4 +C^8 +C^11+…
として求められる。
【0114】
ちなみに、従来の装置にあっては、端数EDを特に考慮することなく、単純に出力回数Tyをタップ長として考えていたため、数値R11 は、
R11 =C^1 +C^5 +C^8 +C^13+…
となってしまう。
【0115】
つまり、本実施の形態のように、端数EDを考慮して基本数列RT 及び端数用基本数列RT ' の各数値R1j 及びR1' j を演算するようにすると、全く考慮しない場合に比べて、基本数列RT 及び端数用基本数列RT ' の各数値R1j 及びR1' j に含まれる誤差を小さくすることができ、数値R1j 及びR1' j の演算精度が向上するのである。特に、振動の周波数が高くなると、振動の周波数が低い場合に比べて、基本数列RT 及び端数用基本数列RT を演算するために多くの伝達関数フィルタC^のフィルタ係数を足し合わさなけれならなくなるから、本実施の形態のように加算時の誤差を小さくすることによる効果はより顕著となる。
【0116】
さらに、本実施の形態では、基本数列RT や端数用基本数列RT ' の各数値R1j やR1' j から更新用基準信号R2j を選択する際にも端数EDを考慮しているため、適応ディジタルフィルタWの更新処理の精度が従来に比べて高く、良好な振動低減制御を実行することができる。
【0117】
例えば、図5(a)に示すように、フィルタ係数W4 を駆動信号yとして出力した直後(ED=0.25)に次の基準信号xが入力されたような場合を考えると、この例では、出力回数Ty=5であるが、端数ED=0.25であるため、実際タップ長Lf=4.25、整数タップ長L1=4、となる。
【0118】
すると、駆動信号yi の出力回数をカウントするカウンタi=0,1,2,3,4のそれぞれについて、フィルタ係数Wj の更新演算を示すと、下記のようになる。
〔i=0〕
j=0; R20 =R10 → W0 (n+1)=W0 (n)−αR10
j=1; R21 =R13 → W1 (n+1)=W1 (n)−αR13
j=2; R22 =R12 → W2 (n+1)=W2 (n)−αR12
j=3; R23 =R11 → W3 (n+1)=W3 (n)−αR11
j=4; R24 =R1'1→ W4 (n+1)=W4 (n)−αR1'1
〔i=1〕
j=0; R20 =R11 → W0 (n+1)=W0 (n)−αR11
j=1; R21 =R10 → W1 (n+1)=W1 (n)−αR10
j=2; R22 =R13 → W2 (n+1)=W2 (n)−αR13
j=3; R23 =R12 → W3 (n+1)=W3 (n)−αR12
j=4; R24 =R1'2→ W4 (n+1)=W4 (n)−αR1'2
〔i=2〕
j=0; R20 =R12 → W0 (n+1)=W0 (n)−αR12
j=1; R21 =R11 → W1 (n+1)=W1 (n)−αR11
j=2; R22 =R10 → W2 (n+1)=W2 (n)−αR10
j=3; R23 =R13 → W3 (n+1)=W3 (n)−αR13
j=4; R24 =R1'3→ W4 (n+1)=W4 (n)−αR1'3
〔i=3〕
j=0; R20 =R13 → W0 (n+1)=W0 (n)−αR13
j=1; R21 =R12 → W1 (n+1)=W1 (n)−αR12
j=2; R22 =R11 → W2 (n+1)=W2 (n)−αR11
j=3; R23 =R10 → W3 (n+1)=W3 (n)−αR10
j=4; R24 =R1'4→ W4 (n+1)=W4 (n)−αR1'4
〔i=4〕
j=0; R20 =R10 → W0 (n+1)=W0 (n)−αR10
j=1; R21 =R13 → W1 (n+1)=W1 (n)−αR13
j=2; R22 =R12 → W2 (n+1)=W2 (n)−αR12
j=3; R23 =R11 → W3 (n+1)=W3 (n)−αR11
j=4; R24 =R1'0→ W4 (n+1)=W4 (n)−αR1'0
つまり、図5(a)に示すように端数EDが0.5未満の場合には、基本数列RT の最後の数値R1(Ty-1)を、更新用基準信号R2j としては使用しないのである。その結果、j=0〜3の間で更新用基準信号R2j としての数値R10 〜R13 が順次シフトするとともに、j=4の更新用基準信号R2j としては数値R1'0〜R1'4が順番に選択される。
【0119】
これに対し、図5(b)に示すように、フィルタ係数W4 を駆動信号yとして出力してからある程度時間が経過してから(ED=0.75)次の基準信号xが入力されたような場合を考えると、この例では、出力回数Ty=5であるが、端数ED=0.75であるため、実際タップ長Lf=4.75、整数タップ長L1=5、となる。
【0120】
すると、駆動信号yi の出力回数をカウントするカウンタi=0,1,2,3,4のそれぞれについて、フィルタ係数Wj の更新演算を示すと、下記のようになる。
〔i=0〕
j=0; R20 =R10 → W0 (n+1)=W0 (n)−αR10
j=1; R21 =R14 → W1 (n+1)=W1 (n)−αR14
j=2; R22 =R13 → W2 (n+1)=W2 (n)−αR13
j=3; R23 =R12 → W3 (n+1)=W3 (n)−αR12
j=4; R24 =R1'1→ W4 (n+1)=W4 (n)−αR1'1
〔i=1〕
j=0; R20 =R11 → W0 (n+1)=W0 (n)−αR11
j=1; R21 =R10 → W1 (n+1)=W1 (n)−αR10
j=2; R22 =R14 → W2 (n+1)=W2 (n)−αR14
j=3; R23 =R13 → W3 (n+1)=W3 (n)−αR13
j=4; R24 =R1'2→ W4 (n+1)=W4 (n)−αR1'2
〔i=2〕
j=0; R20 =R12 → W0 (n+1)=W0 (n)−αR12
j=1; R21 =R11 → W1 (n+1)=W1 (n)−αR11
j=2; R22 =R10 → W2 (n+1)=W2 (n)−αR10
j=3; R23 =R14 → W3 (n+1)=W3 (n)−αR14
j=4; R24 =R1'3→ W4 (n+1)=W4 (n)−αR1'3
〔i=3〕
j=0; R20 =R13 → W0 (n+1)=W0 (n)−αR13
j=1; R21 =R12 → W1 (n+1)=W1 (n)−αR12
j=2; R22 =R11 → W2 (n+1)=W2 (n)−αR11
j=3; R23 =R10 → W3 (n+1)=W3 (n)−αR10
j=4; R24 =R1'4→ W4 (n+1)=W4 (n)−αR1'4
〔i=4〕
j=0; R20 =R14 → W0 (n+1)=W0 (n)−αR14
j=1; R21 =R13 → W1 (n+1)=W1 (n)−αR13
j=2; R22 =R12 → W2 (n+1)=W2 (n)−αR12
j=3; R23 =R11 → W3 (n+1)=W3 (n)−αR11
j=4; R24 =R1'0→ W4 (n+1)=W4 (n)−αR1'0
つまり、図5(b)に示すように端数EDが0.5以上の場合には、基本数列RT の最後の数値R1(Ty-1)も、更新用基準信号R2j として使用されるのである。その結果、更新用基準信号R2j として選択される各数値R1j 、R1' j の添え字は連続しており(添え字だけに着目すれば、数値R1j 、R1' j が次々とシフトしているのが判る。)、ただ単に、j=4についてのみ端数用基本数列RT ' から更新用基準信号R2j が選択されるだけである。
【0121】
以上をまとめると、本実施の形態では、端数EDに応じた端数用伝達関数フィルタC^' に従って端数用基本数列RT ' を別途生成しているが、これは端数EDに対応するフィルタ係数W(Ty-1)の更新には基本数列RT から更新用基準信号R2j を選択することを避けるための工夫である。また、基本数列RT の各数値R1j を演算する際に端数EDを考慮してフィルタ係数C^j を選択するようにしているが、これは、伝達関数フィルタC^の時間軸上の位置関係に基づく誤差をなくするための工夫である。そして、基本数列RT の各数値R1j から更新用基準信号R2j を選択する際にも端数EDを考慮しているが、これは、周期演算における演算処理の切れ目がスムーズになるようにするための工夫である。
【0122】
そして、更新用基準信号R2j を得るためにこのような三つの工夫を施した結果、その更新用基準信号R2j の精度が従来に比べて大幅に向上するから、良好な振動低減効果が発揮されるのである。
【0123】
ここで、本実施の形態にあっては、エンジン30が振動源に対応し、能動型エンジンマウント1が制御振動源に対応し、加重センサ22が残留振動検出手段に対応し、パルス信号生成器26が基準信号生成手段に対応し、図3の処理において固定サンプリング・クロックに同期してステップ104でフィルタ係数Wi を駆動信号yi として出力する処理が駆動信号生成手段に対応し、ステップ115において端数EDに応じて端数用伝達関数フィルタC^' を選択する処理が端数用伝達関数フィルタ生成手段に対応し、ステップ102において上記(8)式に従って基本数列RT を生成する処理,上記(9)式に従って端数用基本数列RT ' を生成する処理及びステップ108において上記(4)〜(7)式に従って更新用基準信号R2j を選択する処理が更新用基準信号生成手段に対応し、ステップ108において上記(3)式に従ってフィルタ係数Wj を更新する処理が適応処理手段に対応し、113において端数時間を周期TSCで除算する処理が端数演算手段に対応し、ステップ102において上記(8)式に従って基本数列RT を生成する処理が基本数列生成手段に対応し、ステップ102において上記(9)式に従って端数用基本数列RT ' を生成する処理が端数用基本数列生成手段に対応し、ステップ108において上記(4)〜(7)式に従って更新用基準信号R2j を選択する処理が更新用基準信号選択手段に対応し、ステップ103及び112の処理が駆動信号カウント手段に対応し、ステップ105の処理及びステップ109の判定が「YES」となったときにタイマを停止する処理によって端数時間計測手段が構成される。
【0124】
図6は本発明の第2の実施の形態を説明するための図である。なお、全体的な構成は上記第1の実施の形態と同様であるため、その図示及び説明は省略する。また、処理の内容も特徴部分を除いて上記第1の実施の形態と同様であるため、その図示及び重複する説明は省略する。
【0125】
即ち、本実施の形態は、端数用伝達関数フィルタC^' の生成方法が上記第1の実施の形態における生成方法とは異なっている。具体的には、コントローラ25内には、上記第1の実施の形態のように端数用伝達関数フィルタ候補を複数種類記憶するのではなく、実質的にデルタ関数と見なすことができる単位パルス波に対応する伝達関数フィルタが、伝達関数フィルタ単位波形C^* として記憶されている。つまり、伝達関数フィルタ単位波形C^* は、単位パルス波を入力した場合の伝達関数フィルタC^に相当するものであって、単位パルス波を駆動信号yとして電磁アクチュエータ10に供給し、その駆動信号yに応じて発生した制御振動を加重センサ22で測定した場合の応答波形(つまり、残留振動信号eの波形)を、周期TSCに比べて十分に短い時間(例えば、TSC/10程度)でサンプリングすることにより生成される。
【0126】
そして、本実施の形態では、図3のステップ115においては、端数用伝達関数フィルタC^' を選択するのではなく、端数EDに相当する時間に渡って伝達関数フィルタ単位波形C^* を、この伝達関数フィルタ単位波形C^* のサンプリング周期で次々と出力した場合の各波形を積分し、その積分結果を端数用伝達関数フィルタC^' として用いるようになっている。図6には、伝達関数フィルタ単位波形C^* を、この伝達関数フィルタ単位波形C^* のサンプリング周期離して二つ出力した様子を示している。
【0127】
このような構成であっても、端数EDに応じた端数用伝達関数フィルタC^' が生成され、その端数用伝達関数フィルタC^' に従って端数用基本数列RT ' が生成されるし、その他の処理も上記第1の実施の形態と同様に実行されるから、上記第1の実施の形態と同様の作用効果が得られる。
【0128】
そして、本実施の形態にあっては、複数の端数用伝達関数フィルタ候補を記憶しておく必要がないから、伝達関数フィルタ単位波形C^* のサンプリング周期にもよるが、多数の端数用伝達関数フィルタ候補を記憶するのに比べて、必要な記憶容量が少なくて済むようになる。
【0129】
次に、本発明の第3の実施の形態を説明する。なお、全体的な構成は上記第1の実施の形態と同様であるため、その図示及び説明は省略する。また、処理の内容も特徴部分を除いて上記第1の実施の形態と同様であるため、その図示及び重複する説明は省略する。本実施の形態も、端数用伝達関数フィルタC^' の生成方法が、上記第1,2の実施の形態における生成方法とは異なっている。
【0130】
即ち、コントローラ25内には、伝達関数フィルタC^そのものは記憶されているが、端数用伝達関数フィルタ候補や伝達関数フィルタ単位波形C^* は記憶されていない。そして、図3のステップ115においては、端数EDに応じて伝達関数フィルタC^を補正して端数用伝達関数フィルタC^' を生成するようになっている。具体的には、端数EDが1/2を越える場合には、伝達関数フィルタC^そのものを端数用伝達関数フィルタC^' とする。この場合には、ステップ102では基本数列RT のみを演算し、端数用基本数列RT ' は基本数列RT を代入すれば済む。
【0131】
これに対し、端数EDが1/2未満の場合には、下記の(1)式及び(2)式に従って、端数用伝達関数フィルタC^' の各フィルタ係数C^' j が演算される。
【0132】
C^' 0 =C^' 1 =0 ……(1)
C^' j =(C^(j-1) +C^j )/2 (j≧2) ……(2)
つまり、端数EDが1/2以上の場合には伝達関数フィルタC^を補正せずに端数用伝達関数フィルタC^' を求める一方で、端数EDが1/2未満の場合には伝達関数フィルタC^を補正することにより、端数用伝達関数フィルタC^' を求めるようになっているのである。
【0133】
そして、伝達関数フィルタC^を補正する場合には、上記(2)式からも判るように、本来の伝達関数フィルタC^を幅が半分(TSC/2)の信号で測定した場合の応答波形に相当するものが、端数用伝達関数フィルタC^' として求められる。
【0134】
このような構成であっても、上記第1の実施の形態や第2の実施の形態程ではないが、端数EDに応じた端数用伝達関数フィルタC^' が生成されるから、従来の装置に比べて更新用基準信号R2j の精度が向上し、それだけ良好な振動低減制御が実行できるようになる。
【0135】
なお、上記各実施の形態では、過去の端数EDを特に保存することなく、最新の端数EDのみを考慮して基本数列RT 及び端数用基本数列RT ' を生成することとしているが、これは極短時間では端数ED(つまり、振動の周期)が変化しないと考えて差し支えないからである。従って、振動の周期が極短時間で変化する制御対象の場合等には、過去の端数EDを保存し、それらを累積してフィルタ係数C^j を選択するようにすればよい。
【0136】
また、上記第3の実施の形態においては、端数時間を周期TSCで除算することにより端数EDを演算するのではなく、端数時間と周期TSCの1/2とを比較する比較演算(比較手段)により、実質的に端数演算手段を構成することが望ましい。つまり、上記第3の実施の形態の端数演算手段に要求される最低限の機能は、端数用伝達関数フィルタC^' として、伝達関数フィルタC^をそのまま用いるか或いは補正して用いるかという判断と、実際タップ長Lfから整数タップ長L1を求める際に、実際タップ長Lfの小数点以下を切り上げるべきか切り捨てるべきかという判断と、を行うために必要な情報が得られればよいのであり、その必要な情報とは、正に端数時間が周期TSCの1/2以上であるか未満であるか、という判定結果だからである。従って、端数時間が周期TSCの1/2以上である場合には、端数用伝達関数フィルタC^' として伝達関数フィルタC^をそのまま用いるとともに、出力回数Tyを整数タップ長L1とし、端数時間が周期TSCの1/2未満である場合には、伝達関数フィルタC^を補正して端数用伝達関数フィルタC^' を生成するとともに、出力回数Tyから1を減算した値を整数タップ長L1とすればよいのである。これにより、コントローラ25の演算負荷を軽減することができる。
【0137】
さらに、上記各実施の形態では、駆動信号yi が出力される度にクリア・スタートするタイマを用いて端数時間を計測し、その端数時間と周期TSCとに基づいて端数EDを求めるようにしているが、これに限定されるものではなく、例えば、基準信号xの周期Tx を計測するタイマ機能(周期検出手段)を設け、その周期Tx を周期TSCで除算する処理(実際タップ長演算手段)により実際タップ長Lfを直接求め、その実際タップ長Lfの小数点第1位で四捨五入する処理(整数タップ長演算手段)により整数タップ長を求めるようにしてもよい。また、場合によっては、出力回数Tyもカウントにより求めるのではなく、上記のように求められた実際タップ長Lfの小数点以下を切り上げる処理(出力回数演算手段)により出力回数Tyを求めるようにしてもよい。
【0138】
また、上記各実施の形態では、本発明に係る能動型騒音振動制御装置を、エンジン30から車体35に伝達される振動を低減する車両用の能動型振動制御装置に適用した場合について説明したが、本発明の適用対象はこれに限定されるものではなく、例えば騒音源としてのエンジン30から車室内に伝達される騒音を低減する能動型騒音制御装置であってもよい。かかる能動型騒音制御装置とする場合には、車室内に制御音を発生するための制御音源としてのラウドスピーカと、車室内の残留騒音を検出する残留騒音検出手段としてのマイクロフォンとを設け、上記実施の形態と同様の演算処理によって得られる駆動信号yi に応じてラウドスピーカを駆動させるとともに、マイクロフォンの出力を残留騒音信号eとして適応ディジタルフィルタWのフィルタ係数Wj の更新処理に用いればよい。
【0139】
そして、本発明の適用対象は車両に限定されるものではなく、エンジン30以外で発生する周期的な振動や騒音を低減するための能動型振動制御装置,能動型騒音制御装置であっても本発明は適用可能である。例えば、工作機械からフロアや室内に伝達される振動や騒音を低減する装置等であっても、本発明は適用可能である。
【0140】
【実施例】
図7乃至図9は、上記実施の形態で示した車両用の能動型振動制御装置を用いて本発明者が行った実験結果を示す波形図であって、横軸には時間を、縦軸には残留振動信号eのレベルをとっている。
【0141】
図7は、端数用伝達関数フィルタC^' を用いることなく、従って端数用基本数列RT ' を生成することなく、更新用基準信号R2j は全て基本数列RT から選択することにより振動低減制御を実行した場合の結果を示している。なお、この場合には、基本数列RT を生成する際には端数EDを考慮したが、その基本数列RT から更新用基準信号R2j を選択する際には端数EDを考慮することなく、出力回数Tyをそのまま整数タップ長L1としている。
【0142】
図8も、図7と同様に更新用基準信号R2j は全て基本数列RT から選択することにより振動低減制御を実行した場合の結果を示しているが、この場合には、基本数列RT を生成する際及びその基本数列RT から更新用基準信号R2j を選択する際のいずれにおいても端数EDを考慮している。
【0143】
これに対し、図9は、上記第2の実施の形態と同様に、端数用伝達関数フィルタC^' を用いて端数用基本数列RT ' を生成し、更新用基準信号R2j は基本数列RT 又は端数用基本数列RT ' から選択することにより振動低減制御を実行した場合の結果を示している。そして、この場合には、基本数列RT を生成する際及びその基本数列RT から更新用基準信号R2j を選択する際のいずれにおいても端数EDを考慮している。
【0144】
図7及び図8の比較から、基本数列RT から更新用基準信号R2j を選択する際に端数EDを考慮すること(より望ましくは、基本数列RT を生成する際及びその基本数列RT から更新用基準信号R2j を選択する際のいずれにおいても端数EDを考慮すること)が、良好な振動低減効果を得るためには極めて有効であることが判る。
【0145】
また、図8及び図9の比較から、更新用基準信号R2j を、基本数列RT 又は端数用基本数列RT ' から選択することが、良好な振動低減効果を得るためには極めて有効であることが判る。
【0146】
さらに、図9から、更新用基準信号R2j を、基本数列RT 又は端数用基本数列RT ' から選択するとともに、基本数列RT を生成する際及びその基本数列RT から更新用基準信号R2j を選択する際のいずれにおいても端数EDを考慮することが、良好な振動低減効果を得るためには極めて有効であることが判る。
【図面の簡単な説明】
【図1】本発明の一実施の形態における車両の概略側面図である。
【図2】能動型エンジンマウントの一例を示す断面図である。
【図3】振動低減処理の概要を示すフローチャートである。
【図4】伝達関数フィルタ及び端数用伝達関数フィルタの一例を示す波形図である。
【図5】実施の形態の動作を説明する波形図である。
【図6】第2の実施の形態の要点を説明するための波形図である。
【図7】発明者が行った実験の結果を示す波形図である。
【図8】発明者が行った実験の結果を示す波形図である。
【図9】発明者が行った実験の結果を示す波形図である。
【符号の説明】
1 能動型エンジンマウント(制御振動源)
22 加重センサ(残留振動検出手段)
25 コントローラ
26 パルス信号生成器(基準信号生成手段)
30 エンジン(振動源)
35 車体

Claims (13)

  1. 騒音源又は振動源から発せられる周期的な騒音又は周期的な振動と干渉する制御音又は制御振動を発生可能な制御音源又は制御振動源と、前記干渉した後の残留騒音又は残留振動を検出し残留騒音信号又は残留振動信号として出力する残留騒音検出手段又は残留振動検出手段と、前記騒音又は振動の発生状態を検出し基準信号として出力する基準信号生成手段と、フィルタ係数可変の適応ディジタルフィルタと、前記基準信号を前記適応ディジタルフィルタでフィルタ処理することにより前記制御音源又は制御振動源を駆動する駆動信号を生成し出力する駆動信号生成手段と、前記制御音源又は制御振動源と前記残留騒音検出手段又は残留振動検出手段との間の伝達関数をモデル化した伝達関数フィルタと、前記基準信号及び前記伝達関数フィルタに基づいて更新用基準信号を生成する更新用基準信号生成手段と、前記残留騒音信号又は残留振動信号及び前記更新用基準信号に基づき逐次更新型の適応アルゴリズムに従って前記適応ディジタルフィルタのフィルタ係数を更新する適応処理手段と、を備え、固定サンプリング・クロックに同期して各演算処理を実行するようになっている能動型騒音振動制御装置において、
    前記伝達関数フィルタは、前記固定サンプリング・クロックの周期と同じ幅の基準方形波を入力とした場合の応答波形に基づいて各フィルタ係数を生成したディジタルフィルタであり、
    前記周期的な騒音又は周期的な振動の周期を前記固定サンプリング・クロックの周期で割った場合の端数を求める端数演算手段と、前記基準方形波に代えて前記端数と同じ幅の端数方形波を入力とした場合の前記伝達関数フィルタに相当する端数用伝達関数フィルタとして求める端数用伝達関数フィルタ生成手段と、を設けるとともに、
    前記更新用基準信号生成手段は、前記基準信号と前記伝達関数フィルタの各フィルタ係数とを畳み込んで基本数列を生成する基本数列生成手段と、前記基準信号と前記端数用伝達関数フィルタの各フィルタ係数とを畳み込んで端数用基本数列を生成する端数用基本数列生成手段と、前記基本数列又は前記端数用基本数列から前記適応ディジタルフィルタのフィルタ係数の更新に用いる前記更新用基準信号を選択する更新用基準信号選択手段と、を含んで構成され、
    前記更新用基準信号選択手段は、前記適応ディジタルフィルタの各フィルタ係数のうち、最終タップ以外のフィルタ係数の更新には前記基本数列から前記更新用基準信号を選択し、最終タップのフィルタ係数の更新には前記端数用基本数列から前記更新用基準信号を選択するようになっていることを特徴とする能動型騒音振動制御装置。
  2. 前記基準方形波に代えて前記固定サンプリング・クロックの周期以下の幅である方形波を入力とした場合の前記伝達関数フィルタに相当する端数用伝達関数フィルタ候補を、複数種類予め記憶しておき、
    前記端数用伝達関数フィルタ生成手段は、前記端数に応じて、前記端数用伝達関数フィルタ候補から前記端数用伝達関数フィルタを選択するようになっている請求項1記載の能動型騒音振動制御装置。
  3. 前記基準方形波に代えて実質的にデルタ関数と見なすことができる単位パルス波を入力とした場合の前記伝達関数フィルタに相当する伝達関数フィルタ単位波形を、予め記憶しておき、
    前記端数用伝達関数フィルタ生成手段は、前記端数に相当する時間に渡って所定間隔で前記伝達関数フィルタ単位波形を次々と出力したように並べた各波形を重畳することにより、前記端数用伝達関数フィルタを求めるようになっている請求項1記載の能動型騒音振動制御装置。
  4. 前記端数用伝達関数フィルタ生成手段は、前記端数が前記固定サンプリング・クロックの周期の1/2を越える場合には、前記端数用伝達関数フィルタとして前記伝達関数フィルタを用いる一方で、前記端数が前記固定サンプリング・クロックの周期の1/2以下の場合には、前記伝達関数フィルタを補正して前記端数用伝達関数フィルタを求めるようになっている請求項1記載の能動型騒音振動制御装置。
  5. 前記端数用伝達関数フィルタ生成手段は、前記端数が前記固定サンプリング・クロックの周期の1/2以下の場合には、前記伝達関数フィルタC^の各フィルタ係数C^j (j=0,1,2,…,J−1;Jは伝達関数フィルタC^のタップ数)に基づき、下記の(1)式又は(2)式に従って、端数用伝達関数フィルタC^' の各フィルタ係数C^' j を求めるようになっている請求項4記載の能動型騒音振動制御装置。
    C^' 0 =C^' 1 =0 ……(1)
    C^' j =(C^(j-1) +C^j )/2 (j≧2) ……(2)
  6. 前記更新用基準信号選択手段は、前記端数を考慮しつつ前記更新用基準信号を選択するようになっている請求項1乃至請求項5のいずれかに記載の能動型騒音振動制御装置。
  7. 前記基本数列生成手段は、前記端数に応じて前記畳み込み演算に用いられる前記伝達関数フィルタのフィルタ係数を選択し、前記端数用基本数列生成手段は、前記端数に応じて前記畳み込み演算に用いられる前記端数用伝達関数フィルタのフィルタ係数を選択するようになっている請求項1乃至請求項6のいずれかに記載の能動型騒音振動制御装置。
  8. 前記基準信号は、前記周期的な騒音又は周期的な振動の基本周期に同期したインパルス信号であり、前記駆動信号生成手段は、前記基準信号としての最新のインパルス信号の生成時点から前記固定サンプリング・クロックに同期して前記適応ディジタルフィルタのフィルタ係数を順番に前記駆動信号として出力するようになっており、
    前記基準信号としての最新のインパルス信号の生成時点から次のインパルス信号の生成時点までの間の前記駆動信号の出力回数Tyをカウントする駆動信号カウント手段と、この駆動信号カウント手段が最後にカウントした前記駆動信号の出力時点から次のインパルス信号の生成時点までの間の端数時間を計測する端数時間計測手段と、を設け、
    前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間及び前記固定サンプリング・クロックの周期に基づいて前記端数を演算するようになっており、
    前記駆動信号カウント手段がカウントした前記出力回数Tyから1だけ減算した値と前記端数演算手段が演算した端数とを加算した結果を実際タップ長Lf、前記実際タップ長Lfを小数点第1位で四捨五入した結果を整数タップ長L1、前記基本数列RT を〔R10 ,R11 ,R12 ,…,R1(Ty-1)〕、前記端数用基本数列RT ' を〔R1'0,R1'1,R1'2,…,R1' (Ty-1)〕、前記最新のインパルス信号の生成時点から前記固定サンプリング・クロックに同期してi(=0,1,2,…,Ty−1)番目に出力する前記駆動信号をyi 、前記適応ディジタルフィルタWのj(=0,1,2,…,Ty−1)番目のフィルタ係数をWj 、前記残留騒音信号又は残留振動信号をe、収束係数をαとそれぞれした場合、
    前記適応処理手段は、前記駆動信号yi を出力する度にTy個の前記フィルタ係数Wj を下記(3)式に基づいて更新するようになっており、前記更新用基準信号選択手段は、前記j番目の前記フィルタ係数Wj の更新に用いる前記更新用基準信号R2j を下記(4)式、(5)式、(6)式又は(7)式に従って選択するようになっている請求項1乃至請求項6のいずれかに記載の能動型騒音振動制御装置。
    j (n+1)=Wj (n)−αR2j e ……(3)
    R2j =R1(i+j) (j≠Ty−1,0≦j≦i) ……(4)
    R2j =R1(L1+i-j) (j≠Ty−1,j>i) ……(5)
    R2j =R1' (i+1) (j=Ty−1,j<i) ……(6)
    R2j =R1'0 (j=Ty−1,j=i) ……(7)
  9. 前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間を前記固定サンプリング・クロックの周期で除算することにより前記端数を演算するようになっている請求項8記載の能動型騒音振動制御装置。
  10. 前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間が、前記固定サンプリング・クロックの周期の1/2以上か未満かを判定する比較手段を含んでいる請求項8記載の能動型騒音振動制御装置。
  11. 前記周期的な騒音又は周期的な振動の周期Tx を検出する周期検出手段と、前記周期Tx を前記固定サンプリング・クロックの周期TSCで除算した結果である実際タップ長Lfを求める実際タップ長演算手段と、前記実際タップ長Lfを小数点第1位で四捨五入した結果である整数タップ長L1を演算する整数タップ長演算手段と、前記実際タップ長Lfの小数点以下を切り上げた値である出力回数Tyを求める出力回数演算手段と、を設けるとともに、
    前記基本数列RT を〔R10 ,R11 ,R12 ,…,R1(Ty-1)〕、前記騒音又は振動の一周期内に前記固定サンプリング・クロックに同期してi(=0,1,2,…,Ty−1)番目に出力する前記駆動信号をyi 、前記適応ディジタルフィルタWのj(=0,1,2,…,Ty−1)番目のフィルタ係数をWj 、前記残留騒音信号又は残留振動信号をe、収束係数をαとそれぞれした場合、
    前記適応処理手段は、前記駆動信号を出力する度にTy個の前記フィルタ係数Wj を上記請求項8記載の(3)式に基づいて更新するようになっており、前記更新用基準信号選択手段は、前記j番目の前記フィルタ係数Wj の更新に用いる前記更新用基準信号R2j を上記請求項8記載の(4)式、(5)式、(6)式又は(7)式に従って選択するようになっている請求項1乃至請求項5のいずれかに記載の能動型騒音振動制御装置。
  12. 前記伝達関数フィルタC^の各フィルタ係数をC^j (j=0,1,2,…,J−1;Jは伝達関数フィルタC^のタップ数)、前記端数用伝達関数フィルタC^' の各フィルタ係数C^' j (j=0,1,2,…,J−1)とした場合、前記基本数列生成手段は、下記の(8)式に従って前記基本数列RT の各値R1j (j=0,1,2,…,Ty−1)を演算し、前記端数用基本数列生成手段は、下記の(9)式に従って前記端数用基本数列RT ' の各値R1' j (j=0,1,2,…,Ty−1)を演算するようになっている請求項8乃至請求項11のいずれかに記載の能動型騒音振動制御装置。
    R1j =C^j +C^(j+round(Lf)) +C^(j+round(2Lf))+C^(j+round(3Lf))+C^(j+round(4Lf))+・・・……(8)
    R1' j =C^' j +C^' (j+round(Lf)) +C^' (j+round(2Lf))+C^' (j+round(3Lf))+C^' (j+round(4Lf))+・・・……(9)
    ただし、round(A)は、数値Aを小数点以下第1位で四捨五入した値である。
  13. 車両に適用され、前記騒音源又は振動源はエンジンであり、前記基準信号生成手段は、前記基準信号として、前記エンジンでの燃焼タイミングに同期したインパルス信号を生成するようになっている請求項1乃至請求項12のいずれかに記載の能動型騒音振動制御装置。
JP10616697A 1997-04-23 1997-04-23 能動型騒音振動制御装置 Expired - Fee Related JP3541613B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10616697A JP3541613B2 (ja) 1997-04-23 1997-04-23 能動型騒音振動制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10616697A JP3541613B2 (ja) 1997-04-23 1997-04-23 能動型騒音振動制御装置

Publications (2)

Publication Number Publication Date
JPH10301578A JPH10301578A (ja) 1998-11-13
JP3541613B2 true JP3541613B2 (ja) 2004-07-14

Family

ID=14426703

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10616697A Expired - Fee Related JP3541613B2 (ja) 1997-04-23 1997-04-23 能動型騒音振動制御装置

Country Status (1)

Country Link
JP (1) JP3541613B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6726579B2 (ja) * 2016-09-14 2020-07-22 オークマ株式会社 工作機械

Also Published As

Publication number Publication date
JPH10301578A (ja) 1998-11-13

Similar Documents

Publication Publication Date Title
JP3451891B2 (ja) 能動型振動制御装置
JP3228153B2 (ja) 能動型振動制御装置
JPH09303477A (ja) 能動型騒音振動制御装置
JP3336781B2 (ja) 防振支持装置
JP3541613B2 (ja) 能動型騒音振動制御装置
JP3695052B2 (ja) 能動型騒音振動制御装置
JP3480181B2 (ja) 能動型騒音振動制御装置
JP3593866B2 (ja) 能動型騒音振動制御装置
JP3695058B2 (ja) 能動型振動制御装置
JP3402120B2 (ja) 能動型振動制御装置
JP3228224B2 (ja) 能動型騒音振動制御装置
JP3419231B2 (ja) 能動型振動制御装置
JP3551653B2 (ja) 能動型騒音振動制御装置
JPH09317816A (ja) 能動型振動制御装置
JPH07223444A (ja) 振動制御装置及び能動型振動制御装置
JPH11338553A (ja) 能動型振動制御装置及び能動型騒音制御装置
JP3598888B2 (ja) 車両用能動型振動制御装置
JP3743165B2 (ja) 能動型騒音振動制御装置
JP3572953B2 (ja) 能動型騒音振動制御装置
JP3562303B2 (ja) 能動型騒音振動制御装置
JPH0869289A (ja) 能動型振動制御装置及び能動型騒音制御装置
JP3829408B2 (ja) 車両用能動型振動制御装置
JP3572444B2 (ja) 能動型騒音振動制御装置
JPH0844371A (ja) 能動型振動制御装置及び能動型騒音制御装置
JP3804275B2 (ja) 能動型騒音振動制御装置

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040309

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040322

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090409

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090409

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100409

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110409

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120409

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130409

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees