(57)【特許請求の範囲】
【請求項１】
騒音源又は振動源から発せられる周期的な騒音又は周期的な振動と干渉する制御音又は制御振動を発生可能な制御音源又は制御振動源と、前記干渉した後の残留騒音又は残留振動を検出し残留騒音信号又は残留振動信号として出力する残留騒音検出手段又は残留振動検出手段と、前記騒音又は振動の発生状態を検出し基準信号として出力する基準信号生成手段と、フィルタ係数可変の適応ディジタルフィルタと、前記基準信号を前記適応ディジタルフィルタでフィルタ処理することにより前記制御音源又は制御振動源を駆動する駆動信号を生成し出力する駆動信号生成手段と、前記制御音源又は制御振動源と前記残留騒音検出手段又は残留振動検出手段との間の伝達関数をモデル化した伝達関数フィルタと、前記基準信号及び前記伝達関数フィルタに基づいて更新用基準信号を生成する更新用基準信号生成手段と、前記残留騒音信号又は残留振動信号及び前記更新用基準信号に基づき逐次更新型の適応アルゴリズムに従って前記適応ディジタルフィルタのフィルタ係数を更新する適応処理手段と、を備え、固定サンプリング・クロックに同期して各演算処理を実行するようになっている能動型騒音振動制御装置において、
前記周期的な騒音又は周期的な振動の周期を前記固定サンプリング・クロックの周期で割った場合の端数を求める端数演算手段を設けるとともに、前記更新用基準信号生成手段は、前記基準信号と前記伝達関数フィルタの各フィルタ係数とを畳み込んで基本数列を生成する基本数列生成手段と、この基本数列生成手段が生成した前記基本数列から前記適応ディジタルフィルタのフィルタ係数の更新に用いる前記更新用基準信号を選択する更新用基準信号選択手段と、を含んで構成され、
前記基準信号は、前記周期的な騒音又は周期的な振動の基本周期に同期したインパルス信号であり、前記駆動信号生成手段は、前記基準信号としての最新のインパルス信号の生成時点から前記固定サンプリング・クロックに同期して前記適応ディジタルフィルタのフィルタ係数を順番に前記駆動信号として出力するようになっており、
前記基準信号としての最新のインパルス信号の生成時点から次のインパルス信号の生成時点までの間の前記駆動信号の出力回数Ｔｙをカウントする駆動信号カウント手段と、この駆動信号カウント手段が最後にカウントした前記駆動信号の出力時点から次のインパルス信号の生成時点までの間の端数時間を計測する端数時間計測手段と、を設け、
前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間及び前記固定サンプリング・クロックの周期に基づいて前記端数を演算するようになっており、
前記駆動信号カウント手段がカウントした前記出力回数Ｔｙから１だけ減算した値と前記端数演算手段が演算した端数とを加算した結果を実際タップ長Ｌｆ、前記実際タップ長Ｌｆを小数点第１位で四捨五入した結果を整数タップ長Ｌ１、前記基本数列ＲT を〔Ｒ１0 、Ｒ１1 ，Ｒ１2 ，…，Ｒ１(Ty-1)〕、前記最新のインパルス信号の生成時点から前記固定サンプリング・クロックに同期してｉ（＝０，１，２，…，Ｔｙ−１）番目に出力する前記駆動信号をｙi 、前記適応ディジタルフィルタＷのｊ（＝０，１，２，…，Ｔｙ−１）番目のフィルタ係数をＷj 、前記残留騒音信号又は残留振動信号をｅ、収束係数をαとそれぞれした場合、
前記適応処理手段は、前記駆動信号ｙi を出力する度にＴｙ個の前記フィルタ係数Ｗj を下記（１）式に基づいて更新するようになっており、前記更新用基準信号選択手段は、前記ｊ番目の前記フィルタ係数Ｗj の更新に用いる前記更新用基準信号Ｒ２j を下記（２）式又は（３）式に従って選択するようになっていることを特徴とする能動型騒音振動制御装置。
Ｗj （ｎ＋１）＝Ｗj （ｎ）−αＲ２j ｅ                        ……（１）
Ｒ２j ＝Ｒ１(i+j)         （０≦ｊ≦ｉ）                      ……（２）
Ｒ２j ＝Ｒ１(L1+i-j)      （ｊ＞ｉ）                          ……（３）
【請求項２】
前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間を前記固定サンプリング・クロックの周期で除算することにより前記端数を演算するようになっている請求項１記載の能動型騒音振動制御装置。
【請求項３】
前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間が、前記固定サンプリング・クロックの周期の１／２以上か未満かを判定する比較手段を含んでいる請求項１記載の能動型騒音振動制御装置。
【請求項４】
騒音源又は振動源から発せられる周期的な騒音又は周期的な振動と干渉する制御音又は制御振動を発生可能な制御音源又は制御振動源と、前記干渉した後の残留騒音又は残留振動を検出し残留騒音信号又は残留振動信号として出力する残留騒音検出手段又は残留振動検出手段と、前記騒音又は振動の発生状態を検出し基準信号として出力する基準信号生成手段と、フィルタ係数可変の適応ディジタルフィルタと、前記基準信号を前記適応ディジタルフィルタでフィルタ処理することにより前記制御音源又は制御振動源を駆動する駆動信号を生成し出力する駆動信号生成手段と、前記制御音源又は制御振動源と前記残留騒音検出手段又は残留振動検出手段との間の伝達関数をモデル化した伝達関数フィルタと、前記基準信号及び前記伝達関数フィルタに基づいて更新用基準信号を生成する更新用基準信号生成手段と、前記残留騒音信号又は残留振動信号及び前記更新用基準信号に基づき逐次更新型の適応アルゴリズムに従って前記適応ディジタルフィルタのフィルタ係数を更新する適応処理手段と、を備え、固定サンプリング・クロックに同期して各演算処理を実行するようになっている能動型騒音振動制御装置において、
前記周期的な騒音又は周期的な振動の周期Ｔx 、検出する周期検出手段と、前記周期Ｔx を前記固定サンプリング・クロックの周期ＴSCで除算した結果である実際タップ長Ｌｆを求める実際タップ長演算手段と、前記実際タップ長Ｌｆを小数点第１位で四捨五入した結果である整数タップ長Ｌ１を演算する整数タップ長演算手段と、前記実際タップ長Ｌｆの小数点以下を切り上げた値である出力回数Ｔｙを求める出力回数演算手段と、を設けるとともに、
前記基本数列ＲT を〔Ｒ１0 、Ｒ１1 ，Ｒ１2 ，…，Ｒ１(Ty-1)〕、前記騒音又は振動の一周期内に前記固定サンプリング・クロックに同期してｉ（＝０，１，２，…，Ｔｙ−１）番目に出力する前記駆動信号をｙi 、前記適応ディジタルフィルタＷのｊ（＝０，１，２，…，Ｔｙ−１）番目のフィルタ係数をＷj 、前記残留騒音信号又は残留振動信号をｅ、収束係数をαとそれぞれした場合、
前記適応処理手段は、前記駆動信号を出力する度にＴｙ個の前記フィルタ係数Ｗj を上記請求項１記載の（１）式に基づいて更新するようになっており、前記更新用基準信号選択手段は、前記ｊ番目の前記フィルタ係数Ｗj の更新に用いる前記更新用基準信号Ｒ２j を上記請求項１記載の（２）式又は（３）式に従って選択するようになっている能動型騒音振動制御装置。
【請求項５】
前記伝達関数フィルタは有限インパルス応答型のディジタルフィルタであり、その伝達関数フィルタＣ＾の各フィルタ係数をＣ＾j （ｊ＝０，１，２，…，Ｊ−１；Ｊは伝達関数フィルタＣ＾のタップ数）とした場合、前記基本数列生成手段は、下記の（４）式に従って前記基本数列ＲT の各値Ｒ１j （ｊ＝０，１，２，…，Ｔｙ−１）を演算するようになっている請求項１乃至請求項４のいずれかに記載の能動型騒音振動制御装置。
Ｒ１j ＝Ｃ＾j ＋Ｃ＾(j+round(Lf))＋Ｃ＾(j+round(2Lf)) 
＋Ｃ＾(j+round(3Lf)) ＋Ｃ＾(j+round(4Lf)) ＋・・・
……（４）
ただし、ｒｏｕｎｄ（Ａ）は、数値Ａを小数点以下第１位で四捨五入した値である。
【請求項６】
車両に適用され、前記騒音源又は振動源はエンジンであり、前記基準信号生成手段は、前記基準信号として、前記エンジンでの燃焼タイミングに同期したインパルス信号を生成するようになっている請求項１乃至請求項５のいずれかに記載の能動型騒音振動制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、適応アルゴリズムに従ってフィルタ係数が更新される適応ディジタルフィルタを用いて周期的な騒音又は周期的な振動の低減制御を実行するようになっている能動型騒音振動制御装置に関し、特に、制御音源又は制御振動源と残留騒音又は残留振動を検出する手段との間の伝達関数をモデル化した伝達関数フィルタを有し、周期的な騒音又は周期的な振動の発生状態を表す基準信号をその伝達関数フィルタでフィルタ処理することにより、適応ディジタルフィルタのフィルタ係数の更新に用いられる更新用基準信号を演算するようになっており、しかもサンプリング・クロックが固定である能動型騒音振動制御装置において、更新用基準信号の演算精度が向上して、良好な騒音低減制御、振動低減制御が実行されるようにしたものである。
【０００２】
【従来の技術】
この種の従来の技術としては、騒音低減に限定された発明ではあるが、特許第２５２４０４６号（特開平５−２４９９８５号公報）がある。
【０００３】
即ち、上記特許に係る技術は、特に電子消音方法及び装置に関するものであって、騒音源から発せられる周期性騒音又は疑似周期性騒音に対して逆位相で且つ同一音圧の制御音（付加音）を干渉させることにより、消音を行うようになっている。そして、この特許にあっては、制御音を生成するために同期式Ｆｉｌｔｅｒｅｄ−Ｘ  ＬＭＳアルゴリズム（ＳＦＸアルゴリズム）を適用していて、これにより、コントローラにおける演算量を大幅に低減することができる、というものであった。
【０００４】
なお、上記特許には、サンプリング・クロックを固定にしたもの（上記特許の請求項２に係る発明）と、サンプリング・クロックを可変にしたもの（上記特許の請求項３に係る発明）との両方が含まれている。
【０００５】
ここで、上記特許のうち、そのサンプリング・クロックを固定にしたものにあっては、制御音を発生させるスピーカと残留騒音を検出するエラーセンサとの間の伝達関数を、制御に用いる固定サンプリング・クロックの周期と同じ時間間隔で取り込んだ数列を係数としたフィルタ（有限インパルス応答型のフィルタ）として予め保存しておけば基本的には十分である。これに対し、サンプリング・クロックを可変にしたものにあっては、サンプリング・クロック毎の伝達関数が必要であるから、極めて多数の伝達関数を生成し記憶するか、若しくは、騒音低減制御と並行して伝達関数を同定する処理を実行することが必要になる。
【０００６】
このため、単に演算負荷の軽減等を図ることだけを考えるのなら、サンプリング・クロックは固定にした方が有利である。また、演算負荷の軽減のためには、サンプリング・クロックの周期は長い方がよいが、サンプリング・クロックの周期が長過ぎるとそれだけ消音効果が期待できなくなるから、演算処理を実行するコントローラの能力が許す範囲で、サンプリング・クロックの周波数は高くすることが望ましい。
【０００７】
しかしながら、例えば騒音源が車両のエンジンのような場合には、発生する騒音の周期はエンジンの回転数に応じてリニアに変化するものであるため、サンプリング・クロックが固定であると、騒音の周期がサンプリング・クロックの周期の整数倍になるのは稀な現象になる。すると、基本的には基準信号を伝達関数フィルタ（上記特許では、第２のフィルタ係数を有するディジタルフィルタが対応する。）でフィルタ処理した値である更新用基準信号（上記特許では、リファレンス信号が対応する。）を畳み込み演算によって求めようとすると、騒音の周期をサンプリング・クロックの周期で除算した場合の端数の大きさによっては、更新用基準信号の精度が十分でなくなり、それに基づいて行われる適応ディジタルフィルタのフィルタ係数（上記特許では、第１のフィルタ係数が対応する。）の更新演算の精度が低下して、良好な騒音低減制御が実行できなくなる可能性がある。
【０００８】
つまり、上記特許における表現や記号等を用いれば、サンプリング・クロックが固定の場合、基準信号を第２のフィルタでフィルタ処理することにより作成される疑似周期列Ｃ〜の精度が低いため、その疑似周期列Ｃ〜に基づいて作成されるリファレンス信号の精度も低くなり、適応型ディジタルフィルタの精度も低くなってしまうのである。特に、コントローラの能力から、サンプリング・クロックの周波数を十分に高くできない場合、必然的に端数と固定サンプリング・クロックの周期との差も大きくなるから、上記のような精度低下も顕著になってしまう。
【０００９】
このような問題点を解決するために、本出願人が先に提案した特開平７−１２９２５０号公報に開示された技術がある。即ち、かかる公報に記載された装置においては、基準信号と伝達関数フィルタとの畳み込み演算に用いられる伝達関数フィルタのフィルタ係数を、単に順番に用いるのではなく、基準信号の周期（つまり、騒音や振動の周期）をサンプリング・クロックの周期で割った場合の端数に応じて選択するようにしていて、これにより、適応ディジタルフィルタの更新演算に用いる更新用基準信号（上記特開平７−１２９２５０号公報では、基準処理信号が対応する。）の精度を向上させていた。
【００１０】
【発明が解決しようとする課題】
確かに、上記特開平７−１２９２５０号公報に記載された発明であれば、上記特許をそのまま実行した場合に比べて、更新用基準信号（疑似周期列Ｃ〜）の精度を向上させることができたが、本発明者のその後の研究によれば、改良の余地があることが判った。
【００１１】
特に、上記特開平７−１２９２５０号公報に記載された発明のように、畳み込み演算により更新用基準信号となる数列を作成する際だけではなく、実際に適応ディジタルフィルタのフィルタ係数の更新演算に用いられる更新用基準信号の選択（上記特許では、疑似周期列Ｃ〜に基づいてリファレンス信号を作成することが対応する。）にも工夫をすれば、更なる精度向上が期待できること判った。
【００１２】
本発明は、このような知見に基づいてなされたものであって、更新用基準信号の精度をさらに向上できて、良好な騒音低減制御、振動低減制御が実行される能動型騒音振動制御装置を提供することを目的としている。
【００１３】
【課題を解決するための手段】
上記目的を達成するために、本発明は、騒音源又は振動源から発せられる周期的な騒音又は周期的な振動と干渉する制御音又は制御振動を発生可能な制御音源又は制御振動源と、前記干渉した後の残留騒音又は残留振動を検出し残留騒音信号又は残留振動信号として出力する残留騒音検出手段又は残留振動検出手段と、前記騒音又は振動の発生状態を検出し基準信号として出力する基準信号生成手段と、フィルタ係数可変の適応ディジタルフィルタと、前記基準信号を前記適応ディジタルフィルタでフィルタ処理することにより前記制御音源又は制御振動源を駆動する駆動信号を生成し出力する駆動信号生成手段と、前記制御音源又は制御振動源と前記残留騒音検出手段又は残留振動検出手段との間の伝達関数をモデル化した伝達関数フィルタと、前記基準信号及び前記伝達関数フィルタに基づいて更新用基準信号を生成する更新用基準信号生成手段と、前記残留騒音信号又は残留振動信号及び前記更新用基準信号に基づき逐次更新型の適応アルゴリズムに従って前記適応ディジタルフィルタのフィルタ係数を更新する適応処理手段と、を備え、固定サンプリング・クロックに同期して各演算処理を実行するようになっている能動型騒音振動制御装置において、前記周期的な騒音又は周期的な振動の周期を前記固定サンプリング・クロックの周期で割った場合の端数を求める端数演算手段を設けるとともに、前記更新用基準信号生成手段は、前記基準信号と前記伝達関数フィルタの各フィルタ係数とを畳み込んで基本数列を生成する基本数列生成手段と、この基本数列生成手段が生成した前記基本数列から前記適応ディジタルフィルタのフィルタ係数の更新に用いる前記更新用基準信号を選択する更新用基準信号選択手段と、を含んで構成され、前記基準信号は、前記周期的な騒音又は周期的な振動の基本周期に同期したインパルス信号であり、前記駆動信号生成手段は、前記基準信号としての最新のインパルス信号の生成時点から前記固定サンプリング・クロックに同期して前記適応ディジタルフィルタのフィルタ係数を順番に前記駆動信号として出力するようになっており、前記基準信号としての最新のインパルス信号の生成時点から次のインパルス信号の生成時点までの間の前記駆動信号の出力回数Ｔｙをカウントする駆動信号カウント手段と、この駆動信号カウント手段が最後にカウントした前記駆動信号の出力時点から次のインパルス信号の生成時点までの間の端数時間を計測する端数時間計測手段と、を設け、前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間及び前記固定サンプリング・クロックの周期に基づいて前記端数を演算するようになっており、前記駆動信号カウント手段がカウントした前記出力回数Ｔｙから１だけ減算した値と前記端数演算手段が演算した端数とを加算した結果を実際タップ長Ｌｆ、前記実際タップ長Ｌｆを小数点第１位で四捨五入した結果を整数タップ長Ｌ１、前記基本数列ＲT を〔Ｒ１0 、Ｒ１1 ，Ｒ１2 ，…，Ｒ１(Ty-1)〕、前記最新のインパルス信号の生成時点から前記固定サンプリング・クロックに同期してｉ（＝０，１，２，…，Ｔｙ−１）番目に出力する前記駆動信号をｙi 、前記適応ディジタルフィルタＷのｊ（＝０，１，２，…，Ｔｙ−１）番目のフィルタ��数をＷj 、前記残留騒音信号又は残留振動信号をｅ、収束係数をαとそれぞれした場合、前記適応処理手段は、前記駆動信号ｙi を出力する度にＴｙ個の前記フィルタ係数Ｗj を下記（１）式に基づいて更新するようになっており、前記更新用基準信号選択手段は、前記ｊ番目の前記フィルタ係数Ｗj の更新に用いる前記更新用基準信号Ｒ２j を下記（２）式又は（３）式に従って選択するようになっているものである。
Ｗj （ｎ＋１）＝Ｗj （ｎ）−αＲ２j ｅ                        ……（１）
Ｒ２j ＝Ｒ１(i+j)         （０≦ｊ≦ｉ）                      ……（２）
Ｒ２j ＝Ｒ１(L1+i-j)      （ｊ＞ｉ）                          ……（３）
【００１６】
請求項２に係る発明は、上記請求項１に係る発明である能動型騒音振動制御装置において、前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間を前記固定サンプリング・クロックの周期で除算することにより前記端数を演算するようになっているものである。
【００１７】
これに対し、請求項３に係る発明は、上記請求項１に係る発明である能動型騒音振動制御装置において、前記端数演算手段は、前記端数時間計測手段が計測した前記端数時間が、前記固定サンプリング・クロックの周期の１／２以上か未満かを判定する比較手段を含んでいる。
【００１８】
一方、上記目的を達成するために、請求項４に係る発明は、騒音源又は振動源から発せられる周期的な騒音又は周期的な振動と干渉する制御音又は制御振動を発生可能な制御音源又は制御振動源と、前記干渉した後の残留騒音又は残留振動を検出し残留騒音信号又は残留振動信号として出力する残留騒音検出手段又は残留振動検出手段と、前記騒音又は振動の発生状態を検出し基準信号として出力する基準信号生成手段と、フィルタ係数可変の適応ディジタルフィルタと、前記基準信号を前記適応ディジタルフィルタでフィルタ処理することにより前記制御音源又は制御振動源を駆動する駆動信号を生成し出力する駆動信号生成手段と、前記制御音源又は制御振動源と前記残留騒音検出手段又は残留振動検出手段との間の伝達関数をモデル化した伝達関数フィルタと、前記基準信号及び前記伝達関数フィルタに基づいて更新用基準信号を生成する更新用基準信号生成手段と、前記残留騒音信号又は残留振動信号及び前記更新用基準信号に基づき逐次更新型の適応アルゴリズムに従って前記適応ディジタルフィルタのフィルタ係数を更新する適応処理手段と、を備え、固定サンプリング・クロックに同期して各演算処理を実行するようになっている能動型騒音振動制御装置において、前記周期的な騒音又は周期的な振動の周期Ｔx 、検出する周期検出手段と、前記周期Ｔx を前記固定サンプリング・クロックの周期ＴSCで除算した結果である実際タップ長Ｌｆを求める実際タップ長演算手段と、前記実際タップ長Ｌｆを小数点第１位で四捨五入した結果である整数タップ長Ｌ１を演算する整数タップ長演算手段と、前記実際タップ長Ｌｆの小数点以下を切り上げた値である出力回数Ｔｙを求める出力回数演算手段と、を設けるとともに、前記基本数列ＲT を〔Ｒ１0 、Ｒ１1 ，Ｒ１2 ，…，Ｒ１(Ty-1)〕、前記騒音又は振動の一周期内に前記固定サンプリング・クロックに同期してｉ（＝０，１，２，…，Ｔｙ−１）番目に出力する前記駆動信号をｙi 、前記適応ディジタルフィルタＷのｊ（＝０，１，２，…，Ｔｙ−１）番目のフィルタ係数をＷj 、前記残留騒音信号又は残留振動信号をｅ、収束係数をαとそれぞれした場合、前記適応処理手段は、前記駆動信号を出力する度にＴｙ個の前記フィルタ係数Ｗj を上記請求項１記載の（１）式に基づいて更新するようになっており、前記更新用基準信号選択手段は、前記ｊ番目の前記フィルタ係数Ｗj の更新に用いる前記更新用基準信号Ｒ２j を上記請求項１記載の（２）式又は（３）式に従って選択するようになっているものである。
【００１９】
そして、請求項５に係る発明は、上記請求項１〜４に係る発明である能動型騒音振動制御装置において、前記伝達関数フィルタは有限インパルス応答型のディジタルフィルタであり、その伝達関数フィルタＣ＾の各フィルタ係数をＣ＾j （ｊ＝０，１，２，…，Ｊ−１；Ｊは伝達関数フィルタＣ＾のタップ数）とした場合、前記基本数列生成手段は、下記の（４）式に従って前記基本数列ＲT の各値Ｒ１j （ｊ＝０，１，２，…，Ｔｙ−１）を演算するようになっているものである。ただし、ｒｏｕｎｄ（Ａ）は、数値Ａを小数点以下第１位で四捨五入した値（正の整数）である。
【００２０】
Ｒ１j ＝Ｃ＾j ＋Ｃ＾(j+round(Lf))＋Ｃ＾(j+round(2Lf)) 
＋Ｃ＾(j+round(3Lf)) ＋Ｃ＾(j+round(4Lf)) ＋・・・
……（４）
さらに、請求項６に係る発明は、上記請求項１〜５に係る発明である能動型騒音振動制御装置を車両に適用したものであって、前記騒音源又は振動源はエンジンであり、前記基準信号生成手段は、前記基準信号として、前記エンジンでの燃焼タイミングに同期したインパルス信号を生成するようになっている。
【００２１】
ここで、請求項１に係る発明にあっては、端数演算手段が求めた端数を考慮しつつ、更新用基準信号選択手段が基本数列のうちから更新用基準信号を選択するため、端数を全く考慮せずに更新用基準信号を選択していた従来に比べて、更新用基準信号の精度が向上する。
【００２３】
即ち、駆動信号カウント手段が、最新のインパルス信号の生成時点から次のインパルス信号の生成時点の間の駆動信号の出力回数をカウントするため、次のインパルス信号の生成時点における駆動信号カウント手段のカウント値は、そのまま基準信号の一周期（騒音又は振動の一周期）内における駆動信号の出力回数Ｔｙとなる。具体的には、インパルス信号が生成された時点で最初の駆動信号が出力され、その出力時点からサンプリング・クロックの一周期が経過した時点で二番目の駆動信号が出力され、その後も同様にサンプリング・クロックに同期して次々と駆動信号が出力される。よって、最終的にカウントされた出力回数Ｔｙから１だけ減算した値は、実際タップ長Ｌｆの整数部分に等しい。
【００２４】
その一方で、端数時間計測手段が、駆動信号カウント手段が最後にカウントした駆動信号の出力時点から次のインパルス信号の生成時点までの間（つまり、インパルス信号の生成時点と、その直前に出力されている駆動信号の出力時点との間）の端数時間を計測する。この計測された端数時間は、固定サンプリング・クロックの周期よりも短い時間である。そして、この端数時間及び固定サンプリング・クロックに基づいて端数演算手段が演算した端数は、実際タップ長Ｌｆの小数点以下に等しい。
【００２５】
よって、値（Ｔｙ−１）と端数演算手段が求めた端数とを加算すると、実際タップ長（基準信号の周期を固定サンプリング・クロックで除算して求められる小数点以下も含むタップ長）Ｌｆが得られる。また、その実際タップ長Ｌｆを小数点以下第１位で四捨五入すれば、端数が０．５以上の場合には実際タップ長Ｌｆの整数部分に１を加算した値（つまり、出力回数Ｔｙ）が整数タップ長Ｌ１となり、端数が０．５未満の場合には実際タップ長Ｌｆの整数部分（つまり、出力回数Ｔｙ−１）がそのまま整数タップ長Ｌ１となる。
【００２６】
ちなみに、従来の装置では、端数については全く考慮せず、実際タップ長Ｌｆの小数点以下を切り上げた値、つまり出力回数Ｔｙをそのまま整数タップ長Ｌ１として取り扱っていた。
【００２７】
そして、整数タップ長Ｌ１が上記のように端数を考慮しつつ決定される値であると、特に上記（３）式に従って更新用基準信号Ｒ２j を選択する際（つまり、ｊ＞ｉの場合）には、端数が０．５以上の場合と０．５未満の場合とで、選択される更新用基準信号Ｒ２j が異なってくる。
【００２８】
具体的には、端数が０．５以上の場合には、更新用基準信号Ｒ２j は、現時点で出力された駆動信号ｙi の添え字ｉと更新されるフィルタ係数Ｗj の添え字ｊとが一致するところではＲ１0 が選択され、そこを起点として、添え字ｊが減るに従って、Ｒ１1 ，Ｒ１2 ，…，という順番で更新用基準信号Ｒ２j が選択され、逆に添え字ｊが増えるに従って、Ｒ１(Ty-1)，Ｒ１(Ty-2)，…，という順番で更新用基準信号Ｒ２j が選択される。
【００２９】
これに対し、端数が０．５未満の場合には、更新用基準信号Ｒ２j は、現時点で出力された駆動信号ｙi の添え字ｉと更新されるフィルタ係数Ｗj の添え字ｊとが一致するところではＲ１0 が選択され、そこを起点として、添え字ｊが減るに従って、Ｒ１1 ，Ｒ１2 ，…，という順番で更新用基準信号Ｒ２j が選択される点は、端数が０．５以上の場合と同じであるが、起点から逆に添え字ｊが増えるに従って、Ｒ１(Ty-2)，Ｒ１(Ty-3)，…，という順番で更新用基準信号Ｒ２j が選択される。この結果、更新用基準信号Ｒ２0 と更新用基準信号Ｒ２(Ty-1)とは同じ値になる。
【００３０】
そして、このように端数の大きさに応じて更新用基準信号が選択される結果、端数を考慮せずに更新用基準信号（リファレンス信号）を選択していた従来に比べて、更新用基準信号の精度が向上する。
【００３１】
なお、この請求項１に係る発明における端数演算手段の具体的構成の一例としては、請求項２に係る発明がある。すなわち、端数時間を固定サンプリング・クロックの周期で除算すれば、端数を求めることができる。
【００３２】
ただし、端数演算手段に要求される最低限の能力は、測定された端数時間が、固定サンプリング・クロックの周期の１／２以上か未満か、ということであるから、請求項２に係る発明のようにわざわざ除算を行わなくても済む。
【００３３】
そこで、請求項３に係る発明のように、端数演算手段が比較手段を有していれば、請求項２に係る発明と同様の作用が得られる。つまり、その比較手段が、端数時間が固定サンプリング・クロックの周期の１／２以上であると判定した場合には、出力回数Ｔｙを整数タップ長Ｌ１とし、端数時間が固定サンプリング・クロックの周期の１／２未満であると判定された場合には、出力回数Ｔｙから１を減算した値を整数タップ長Ｌ１とすればよい。或いは、その比較手段が、端数時間が固定サンプリング・クロックの周期の１／２以上であると判定した場合には、端数を０．５以上１．０未満の値（例えば、０．５）に設定し、端数時間が固定サンプリング・クロックの周期の１／２未満であると判定した場合には、端数を０以上０．５未満の値（例えば、０．４）に設定すればよい。
【００３４】
一方、請求項４に係る発明にあっても、周期検出手段と、実際タップ長演算手段と、整数タップ長演算手段と、出力回数演算手段とを備えており、適応処理手段や更新用基準信号選択手段は、上記（１）〜（３）式に従った演算を行うようになっているから、上記請求項１に係る発明と同様の作用が得られる。
【００３５】
また、請求項５に係る発明にあっては、基本数列を生成する際に上記（４）式を用いているため、更新用基準信号の元になる基本数列を生成する際にも、端数が考慮されるようになる。この結果、基本数列の精度も向上し、それから選択される更新用基準信号の精度がさらに向上する。
【００３６】
そして、請求項６に係る発明にあっては、騒音源又は振動源が車両のエンジンであるから、そのエンジンで発生する騒音又は振動は、エンジンでの燃焼に同期しているはずである。そこで、基準信号生成手段が生成するエンジンでの燃焼タイミングに同期したインパルス信号は、基準信号として適当である。
【００３７】
【発明の効果】
本発明によれば、適応ディジタルフィルタのフィルタ係数の更新演算に必要な更新用基準信号を基本数列から選択する際に、騒音又は振動の周期を固定サンプリング・クロックの周期で割った場合を端数を考慮するようにしたため、全く考慮しない場合に比べて更新用基準信号に含まれる誤差を小さくすることができ、更新用基準信号の精度が向上し、これを用いて行われる適応ディジタルフィルタのフィルタ係数の更新処理の精度も向上し、もって良好な騒音低減制御又は振動低減制御が実行できるという効果がある。
【００３８】
特に、請求項５に係る発明にあっては、基本数列を生成する際にも端数を考慮するため、更新用基準信号に含まれる誤差をさらに小さくすることができ、さらに良好な騒音低減制御又は振動低減制御が実行できるという効果がある。
【００３９】
【発明の実施の形態】
以下、この発明の実施の形態を図面に基づいて説明する。
図１乃至図４は本発明の一実施の形態を示す図であって、図１は本発明に係る能動型騒音振動制御装置の一実施形態である能動型振動制御装置を適用した車両の概略側面図である。
【００４０】
先ず、構成を説明すると、エンジン３０が駆動信号に応じた能動的な支持力を発生可能な能動型エンジンマウント１を介して、サスペンションメンバ等から構成される車体３５に支持されている。なお、実際には、エンジン３０及び車体３５間には、能動型エンジンマウント１の他に、エンジン３０及び車体３５間の相対変位に応じた受動的な支持力を発生する複数のエンジンマウントも介在している。受動的なエンジンマウントとしては、例えばゴム状の弾性体で荷重を支持する通常のエンジンマウントや、ゴム状の弾性体内部に減衰力発生可能に流体を封入してなる公知の流体封入式のマウントインシュレータ等が適用できる。
【００４１】
一方、能動型エンジンマウント１は、例えば、図２に示すように構成されている。即ち、この実施の形態における能動型エンジンマウント１は、エンジン３０への取付け用のボルト２ａを上部に一体に備え且つ内部が空洞で下部が開口したキャップ２を有し、このキャップ２の下部外面には、軸が上下方向を向く内筒３の上端部がかしめ止めされている。
【００４２】
内筒３は、下端側の方が縮径した形状となっていて、その下端部が内側に水平に折り曲げられて、ここに円形の開口部３ａが形成されている。そして、内筒３の内側には、キャップ２及び内筒３内部の空間を上下に二分するように、キャップ２及び内筒３のかしめ止め部分に一緒に挟み込まれてダイアフラム４が配設されている。ダイアフラム４の上側の空間は、キャップ２の側面に孔を開けることにより大気圧に通じている。
【００４３】
さらに、内筒３の内側にはオリフィス構成体５が配設されている。なお、本実施の形態では、内筒３内面及びオリフィス構成５間には、薄膜状の弾性体（ダイアフラム４の外周部を延長させたものでもよい）が介在していて、これにより、オリフィス構成体５は内筒３内側に強固に嵌め込まれている。
【００４４】
このオリフィス構成体５は、内筒３の内部空間に整合して略円柱形に形成されていて、その上面には円形の凹部５ａが形成されている。そして、その凹部５ａと、底面の開口部３ａに対向する部分との間が、オリフィス５ｂを介して連通するようになっている。オリフィス５ｂは、例えば、オリフィス構成体５の外周面に沿って螺旋状に延びる溝と、その溝の一端部を凹部５ａに連通させる流路と、その溝の他端部を開口部３ａに連通させる流路とで構成される。
【００４５】
一方、内筒３の外周面には、内周面側が若干上方に盛り上がった肉厚円筒状の支持弾性体６の内周面が加硫接着されていて、その支持弾性体６の外周面は、上端側が拡径した外筒７の内周面上部に加硫接着されている。
【００４６】
そして、外筒７の下端部は上面が開口した円筒形のアクチュエータケース８の上端部にかしめ止めされていて、そのアクチュエータケース８の下端面からは、車体３５側への取付け用の取付けボルト９が突出している。取付けボルト９は、その頭部９ａが、アクチュエータケース８の内底面に張り付いた状態で配設された平板部材８ａの中央の空洞部８ｂに収容されている。
【００４７】
さらに、アクチュエータケース８の内側には、円筒形の鉄製のヨーク１０Ａと、このヨーク１０Ａの中央部に軸を上下に向けて巻き付けられた励磁コイル１０Ｂと、ヨーク１０Ａの励磁コイル１０Ｂに包囲された部分の上面に極を上下に向けて固定された永久磁石１０Ｃと、から構成される電磁アクチュエータ１０が配設されている。
【００４８】
また、アクチュエータケース８の上端部はフランジ状に形成されたフランジ部８Ａとなっていて、そのフランジ部８Ａに外筒７の下端部がかしめられて両者が一体となっているのであるが、そのかしめ止め部分には、円形の金属製の板ばね１１の周縁部（端部）が挟み込まれていて、その板ばね１１の中央部の電磁アクチュエータ１０側には、リベット１１ａによって磁化可能な磁路部材１２が固定されている。なお、磁路部材１２はヨーク１０Ａよりも若干小径の鉄製の円板であって、その底面が電磁アクチュエータ１０に近接するような厚みに形成されている。板ばね１１及び磁路部材１２によって可動部材が構成される。
【００４９】
さらに、上記かしめ止め部分には、フランジ部８Ａと板ばね１１とに挟まれるように、リング状の薄膜弾性体１３と、力伝達部材１４のフランジ部１４ａとが支持されている。具体的には、アクチュエータケース８のフランジ部８Ａ上に、薄膜弾性体１３と、力伝達部材１４のフランジ部１４ａと、板ばね１１とをこの順序で重ね合わせるとともに、その重なり合った全体を外筒７の下端部をかしめて一体としている。
【００５０】
力伝達部材１４は、磁路部材１２を包囲する短い円筒形の部材であって、その上端部がフランジ部１４ａとなっており、その下端部は電磁アクチュエータ１０のヨーク１０Ａの上面に結合している。具体的には、ヨーク１０Ａの上端面周縁部に形成された円形の溝に、力伝達部材１４の下端部が嵌合して両者が結合されている。また、力伝達部材１４の弾性変形時のばね定数は、薄膜弾性体１３のばね定数よりも大きい値に設定されている。
【００５１】
ここで、本実施の形態では、支持弾性体６の下面及び板ばね１１の上面によって画成された部分に主流体室１５が形成され、ダイアフラム４及び凹部５ａによって画成された部分に副流体室１６が形成されていて、これら主流体室１５及び副流体室１６間が、オリフィス構成体５に形成されたオリフィス５ｂを介して連通している。なお、これら主流体室１５，副流体室１６及びオリフィス５ｂ内には、エチレングリコール等の流体が封入されている。
【００５２】
かかるオリフィス５ｂの流路形状等で決まる流体マウントとしての特性は、走行中のエンジンシェイク発生時、つまり５〜１５Hzで能動型エンジンマウント１が加振された場合に高動ばね定数、高減衰力を示すように調整されている。
【００５３】
そして、電磁アクチュエータ１０の励磁コイル１０Ｂは、コントローラ２５からハーネス２３ａを通じて供給される電流である駆動信号ｙに応じて所定の電磁力を発生するようになっている。コントローラ２５は、マイクロコンピュータ，必要なインタフェース回路，Ａ／Ｄ変換器，Ｄ／Ａ変換器，アンプ、ＲＯＭ，ＲＡＭ等の記憶媒体等を含んで構成され、アイドル振動やこもり音振動・加速時振動が車体３５に入力されている場合には、その振動を低減できる能動的な支持力が能動型エンジンマウント１に発生するように、能動型エンジンマウント１に対する駆動信号ｙを生成し出力するようになっている。
【００５４】
ここで、アイドル振動やこもり音振動は、例えばレシプロ４気筒エンジンの場合、エンジン回転２次成分のエンジン振動が車体３５に伝達されることが主な原因であるから、そのエンジン回転２次成分に同期して駆動信号ｙを生成し出力すれば、車体側振動の低減が可能となる。そこで、本実施の形態では、エンジン３０のクランク軸の回転に同期した（例えば、レシプロ４気筒エンジンの場合には、クランク軸が１８０度回転する度に一つの）インパルス信号を生成し基準信号ｘとして出力するパルス信号生成器２６を設けていて、その基準信号ｘが、エンジン３０における振動の発生状態を表す信号としてコントローラ２５に供給されるようになっている。
【００５５】
一方、電磁アクチュエータ１０のヨーク１０Ａの下端面と、アクチュエータケース８の底面を形成する平板部材８ａの上面との間に挟み込まれるように、エンジン３０から支持弾性体６を通じて伝達する加振力を検出する荷重センサ２２が配設されていて、荷重センサ２２の検出結果がハーネス２３ｂを通じて残留振動信号ｅとしてコントローラ２５に供給されるようになっている。荷重センサ２２としては、具体的には、圧電素子，磁歪素子，歪ゲージ等が適用可能である。
【００５６】
そして、コントローラ２５は、供給される残留振動信号ｅ及び基準信号ｘに基づき、逐次更新型の適応アルゴリズムの一つである同期式Ｆｉｌｔｅｒｅｄ−ＸＬＭＳアルゴリズムを実行することにより、能動型エンジンマウント１に対する駆動信号ｙを演算し、その駆動信号ｙを能動型エンジンマウント１に出力するようになっている。
【００５７】
具体的には、コントローラ２５は、フィルタ係数Ｗj 可変の適応ディジタルフィルタＷを有していて、最新の基準信号ｘが入力された時点から固定サンプリング・クロックに同期して、その適応ディジタルフィルタＷのフィルタ係数Ｗj を順番に駆動信号ｙとして出力する一方、基準信号ｘ及び残留振動信号ｅに基づいて適応ディジタルフィルタＷの各フィルタ係数Ｗj を適宜更新する処理を実行するようになっている。
【００５８】
適応ディジタルフィルタＷの更新式は、Ｆｉｌｔｅｒｅｄ−Ｘ  ＬＭＳアルゴリズムに従った下記の（５）式（上記（１）式と同じ）のようになる。
Ｗj （ｎ＋１）＝Ｗj （ｎ）−αＲ２j ｅ（ｎ）            ……（５）
ここで、（ｎ），（ｎ＋１）が付く項はサンプリング時刻ｎ，ｎ＋１における値であることを表し、αは収束係数である。また、更新用基準信号Ｒ２j は、理論的には、基準信号ｘを、能動型エンジンマウント１の電磁アクチュエータ１０及び荷重センサ２２間の伝達関数Ｃを有限インパルス応答型フィルタでモデル化した伝達関数フィルタＣ＾でフィルタ処理した値であるが、基準信号ｘの大きさは“１”であるから、伝達関数フィルタＣ＾のインパルス応答を基準信号ｘに同期して次々と生成した場合のそれらインパルス応答波形を合わせてなる基本数列ＲT 〔Ｒ１0 ，Ｒ１1 ，Ｒ１2 ，…，Ｒ１(Ty-1)〕から選択することにより求められる。
【００５９】
また、理論的には、基準信号ｘを適応ディジタルフィルタＷでフィルタ処理して駆動信号ｙを生成するのであるが、基準信号ｘの大きさが“１”であるため、フィルタ係数Ｗj を順番に駆動信号ｙとして出力しても、フィルタ処理の結果を駆動信号ｙとしたのと同じ結果になる。
【００６０】
上記基本数列ＲT の演算は、最新の基準信号ｘの入力タイミングを始点として伝達関数フィルタＣ＾のインパルス応答波形と、一つ前の基準信号ｘの入力タイミングを始点とした伝達関数フィルタＣ＾のインパルス応答波形と、二つ前の基準信号ｘの入力タイミングを始点とした伝達関数フィルタＣ＾のインパルス応答波形と、…、という具合に、現時点まで応答波形が届いている全ての伝達関数フィルタＣ＾を重畳することにより行うが、ディジタル領域では、伝達関数フィルタＣ＾のインパルス応答はその伝達関数フィルタＣ＾を構成する各フィルタ係数Ｃ＾j （ｊ＝０，１，２，…，Ｊ−１：Ｊはタップ数）そのものであることから、例えば基準信号ｘの周期がサンプリング・クロックの間隔の４倍であれば、例えば基本数列ＲT の第１番目の数値Ｒ１1 は、
Ｒ１1 ＝Ｃ＾1 ＋Ｃ＾5 ＋Ｃ＾9 ＋Ｃ＾13＋…
として求めることができる。
【００６１】
しかし、サンプリング・クロックの周期が固定であり、基準信号ｘの周期はリニアに変化することから、基準信号ｘの周期がサンプリング・クロックの周期の整数倍にならない場合があり、例えば基準信号ｘの周期がサンプリング・クロックの間隔の３．２８倍、３．８７倍等となるようなことがある。そして、本実施の形態では、そのような端数０．２８や０．８７を無視することなく、基本数列ＲT の各数値Ｒ１j を演算するようにしている。
【００６２】
さらに、本実施の形態では、適応ディジタルフィルタＷのフィルタ係数Ｗj の更新の際に、上記のように生成された基本数列ＲT の各数値Ｒ１j から各更新演算に用いる更新用基準信号Ｒ２j を選択するにあたっても、上記端数を考量するようになっている。
【００６３】
ここで、コントローラ２５内における基本数列ＲT の生成処理と、更新用基準信号Ｒ２j の選択処理について、具体的に説明する。
即ち、コントローラ２５内では、最新の基準信号ｘの入力時点から固定サンプリング・クロックに同期して出力される駆動信号ｙの出力回数がカウントされ、次の基準信号ｘの入力時点までの駆動信号ｙの出力回数が、最新の出力回数Ｔｙとして記憶されるようになっている。つまり、最新の基準信号ｘが入力された時点で、適応ディジタルフィルタＷの最初のフィルタ係数Ｗ0 が最初の駆動信号ｙ0 として出力され、その出力時点から固定のサンプリング・クロックの周期ＴSCだけ経過した時点で次のフィルタ係数Ｗ1 が駆動信号ｙ1 として出力され、…、という具合に固定のサンプリング・クロックに同期して次々と出力される駆動信号ｙi の出力回数Ｔｙがカウントされるのである。
【００６４】
また、コントローラ２５は、駆動信号ｙi を出力する度にクリア・スタートするとともに、基準信号ｘが入力された時点で時間計測を停止するようになっているタイマ機能を有していて、基準信号ｘが入力された時点でのタイマの計測時間（端数時間）をサンプリング・クロックの周期ＴSCで除算することにより、端数ＥＤを演算するようになっている。つまり、タイマによって計測された端数時間は、出力回数Ｔｙの最後のカウントを行った時点から次の基準信号ｘの入力時点までの間の時間であり、サンプリング・クロックの周期ＴSCよりも短い時間である。
【００６５】
そして、出力回数Ｔｙから１だけ減じた値（Ｔｙ−１）と端数ＥＤとを加算した値を実際タップ長Ｌｆ、実際タップ長Ｌｆを小数点第１位で四捨五入した値を整数タップ長Ｌ１、とそれぞれすると、コントローラ２５内で、下記の（６）式（上記（４）式と同じ）に従って、基本数列ＲT の各数値Ｒ１j （ｊ＝０，１，２，…，Ｔｙ−１）を演算するようになっている。
【００６６】
0003695052.tif 000002
ただし、ｒｏｕｎｄ（Ａ）は、数値Ａを小数点以下第１位で四捨五入した値である。また、上記（６）式の右辺の加算は、加算される伝達関数フィルタＣ＾のフィルタ係数Ｃ＾* の添え字（ｊ＋ｒｏｕｎｄ（ａ・Ｌｆ））が、伝達関数フィルタＣ＾のタップ数Ｊ以下である範囲で行えばよい。
【００６７】
さらに、コントローラ２５内では、下記の（７）式（上記（２）式と同じ）又は（８）式（上記（３）式と同じ）に従って、更新用基準信号Ｒ２j を選択するようになっている。
【００６８】
Ｒ２j ＝Ｒ１(i+j)         （０≦ｊ≦ｉ）        ……（７）
Ｒ２j ＝Ｒ１(L1+i-j)      （ｊ＞ｉ）            ……（８）
次に、本実施の形態の作用を説明する。
【００６９】
即ち、エンジンシェイク発生時には、オリフィス５ａの流路形状等を適宜選定している結果、このエンジンマウント１は高動バネ定数，高減衰力の支持装置として機能するため、エンジン３０で発生したエンジンシェイクがエンジンマウント１によって減衰され、メンバ３５側の振動レベルが低減される。なお、かかる場合には、特に可動部材１２を変位させる必要はない。
【００７０】
一方、オリフィス５ａ内の流体がスティック状態となり主流体室１５及び副流体１６間での流体の移動が不可能になるアイドル振動周波数以上の周波数の振動が入力された場合には、コントローラ２０は、所定の演算処理を実行し、電磁アクチュエータ１３に駆動信号ｙを出力し、エンジンマウント１に振動を低減し得る能動的な制御力を発生させる。
【００７１】
これを、アイドル振動，こもり音振動入力時にコントローラ２０内で実行される処理の概要を示すフローチャートである図３に従って具体的に説明する。
先ず、そのステップ１０１において所定の初期設定を行った後に、ステップ１０２に移行し、上記（６）式に従って、基本数列ＲT の各数値Ｒ１j （ｊ＝０，１，２，…，Ｔｙ−１）を演算する。なお、出力回数Ｔｙは前回の処理で求められた値を用いるため、図３の処理が開始された時点では、出力回数Ｔｙ、実際タップ長Ｌｆ、整数タップ長Ｌ１は決まらないが、第１回目の処理の際には伝達関数フィルタＣ＾の過去の応答は考慮しなくてよいから、伝達関数フィルタＣ＾の各フィルタ係数Ｃ＾j をそのまま基本数列ＲT の各数値Ｒ１j とすればよい。
【００７２】
しかし、図３に示す処理が繰り返し実行されれば、出力回数Ｔｙには常に最新の値が保存されるようになり、出力回数Ｔｙと、後述する端数ＥＤとが定まれば実際タップ長Ｌｆが求められるから、上記（６）式に従って基本数列ＲT が演算されるようになる。
【００７３】
このステップ１０２における演算処理は、後にさらに詳細に説明する。
ステップ１０２で基本数列ＲT が生成されたら、ステップ１０３に移行してカウンタｉを零クリアし、そして、ステップ１０４に移行して、適応ディジタルフィルタＷのｉ番目のフィルタ係数Ｗi を駆動信号ｙi として出力する。
【００７４】
駆動信号ｙi を出力したら、ステップ１０５に移行して、図示しないタイマを零クリアした後に計測をスタートさせる。
そして、ステップ１０６に移行して残留振動信号ｅを読み込んだら、ステップ１０７に移行してカウンタｊを零クリアし、次いで、ステップ１０８に移行し、上記（７）式又は（８）式に従って更新用基準信号Ｒ２j を選択するとともに、適応ディジタルフィルタＷのｊ番目のフィルタ係数Ｗj を上記（５）式に従って更新する。
【００７５】
ステップ１０８における更新処理を終えたら、ステップ１０９に移行して次の基準信号ｘが入力されているか否かを判定し、ここで基準信号ｘが入力されていないと判定された場合には、ステップ１１０に移行しカウンタｊが出力回数Ｔｙ（正確には、カウンタｊは０からスタートするため、出力回数Ｔｙから１を減じた値）に達しているか否かを判定する。この判定は、ステップ１０４で適応ディジタルフィルタＷのフィルタ係数Ｗi を駆動信号ｙi として出力した後に適応ディジタルフィルタＷのフィルタ係数全てを更新したか否かを判断するためのものである。そこで、このステップ１１０の判定が「ＮＯ」の場合には、ステップ１１１でカウンタｊをインクリメントした後に、ステップ１０８に戻って上述した処理を繰り返し実行する。
【００７６】
しかし、ステップ１１０の判定が「ＹＥＳ」の場合には、適応ディジタルフィルタＷの全てのフィルタ係数に対する更新演算が完了したと判断できるから、ステップ１１２に移行してカウンタｉをインクリメントし且つ前回ステップ１０４の処理を実行してからサンプリング・クロックの周期ＴSCが経過するまで待機した後に、ステップ１０４に戻って上述した処理を繰り返し実行する。従って、駆動信号ｙを出力するステップ１０４以降の演算処理は、サンプリング・クロックの周期ＴSC毎に実行されることになる。
【００７７】
一方、ステップ１０９で基準信号ｘが入力されたと判断された場合には、ステップ１１３に移行し、ステップ１０５でクリア・スタートしたタイマの値（端数時間）を読み込み、その端数時間をサンプリング・クロックの周期ＴSCで除算した結果を、端数ＥＤにセットする。
【００７８】
次いで、ステップ１１４に移行し、カウンタｉ（正確には、カウンタｉが０からスタートするため、カウンタｉに１を加えた値）を最新の出力回数Ｔｙとして保存した後に、ステップ１０２に戻って上述した処理を繰り返し実行する。
【００７９】
このような処理を繰り返し実行する結果、コントローラ２０から能動型エンジンマウント１に対しては、基準信号ｘが入力された時点から、サンプリング・クロックに同期して、適応ディジタルフィルタＷのフィルタ係数Ｗi が順番に駆動信号ｙi として供給されるが、適応ディジタルフィルタＷの各フィルタ係数Ｗi は、同期式Ｆｉｌｔｅｒｅｄ−Ｘ  ＬＭＳアルゴリズムに従った上記（５）によって逐次更新されるため、ある程度の時間が経過して適応ディジタルフィルタＷの各フィルタ係数Ｗi が最適値に収束した後は、駆動信号ｙi が能動型エンジンマウント１に供給されることによって、エンジン３０から能動型エンジンマウント１を介してメンバ３５側に伝達されるアイドル振動やこもり音振動が低減されるようになる。なお、能動型エンジンマウント１から発せられる制御振動は、電磁アクチュエータ１０から発せられる電磁力によって磁路部材１２が上下に変位し、その変位によって主流体室１５の容積が変化し、その容積変化によって支持弾性体６の拡張ばねが変形することにより得られるものである。
【００８０】
しかも、本実施の形態にあっては、ステップ１１３の処理を実行した後に再びステップ１０２の処理が実行される際には、端数ＥＤが設定されているため、これを考慮して基本数列ＲT の各数値Ｒ１j が演算されることになる。
【００８１】
具体的には、基準信号ｘの周期をサンプリング・クロックの周期ＴSCで除算した値（実際タップ長Ｌｆ）の整数部分は、出力回数Ｔｙから１を減じた値に等しく、その少数部分は端数ＥＤに等しいから、逆に、出力回数Ｔｙから１を減じた値に端数ＥＤを加算すれば、実際タップ長Ｌｆが求められるのである。
【００８２】
例えば、出力回数Ｔｙ＝４、端数ＥＤ＝０．２８であれば、実際タップ長Ｌｆ＝３．２８となる。
従って、厳密に基本数列ＲT の各数値Ｒ１j を演算するのであれば、例えば数値Ｒ１1 は、
Ｒ１1 ＝Ｃ＾1 ＋Ｃ＾4.28＋Ｃ＾7.56＋Ｃ＾10.84 ＋…
となるが、ディジタル領域ではこのような演算は不可能であるが、本実施の形態では、上記（６）式が用いられる結果、数値Ｒ１1 は、
Ｒ１1 ＝Ｃ＾1 ＋Ｃ＾4 ＋Ｃ＾8 ＋Ｃ＾11＋…
として求められる。
【００８３】
ちなみに、従来の装置にあっては、端数ＥＤを特に考慮することなく、単純に出力回数Ｔｙをタップ長として考えていたため、数値Ｒ１1 は、
Ｒ１1 ＝Ｃ＾1 ＋Ｃ＾5 ＋Ｃ＾8 ＋Ｃ＾13＋…
となってしまう。
【００８４】
つまり、本実施の形態のように、端数ＥＤを考慮して基本数列ＲT の各数値Ｒ１j を演算するようにすると、全く考慮しない場合に比べて、基本数列ＲT の各数値Ｒ１j に含まれる誤差を小さくすることができ、その基本数列ＲT の各数値Ｒ１j の演算精度が向上するのである。特に、振動の周波数が高くなると、振動の周波数が低い場合に比べて、基本数列ＲT を演算するために多くの伝達関数フィルタＣ＾のフィルタ係数を足し合わさなけれならなくなるから、本実施の形態のように加算時の誤差を小さくすることによる効果はより顕著となる。
【００８５】
さらに、本実施の形態では、基本数列ＲT の各数値Ｒ１j から更新用基準信号Ｒ２j を選択する際にも端数ＥＤを考慮しているため、適応ディジタルフィルタＷの更新処理の精度が従来に比べて高く、良好な振動低減制御を実行することができる。
【００８６】
例えば、図４（ａ）に示すように、フィルタ係数Ｗ4 を駆動信号ｙとして出力した直後（ＥＤ＝０．２５）に次の基準信号ｘが入力されたような場合を考えると、この例では、出力回数Ｔｙ＝５であるが、端数ＥＤ＝０．２５であるため、実際タップ長Ｌｆ＝４．２５、整数タップ長Ｌ１＝４、となる。
【００８７】
すると、駆動信号ｙi の出力回数をカウントするカウンタｉ＝０，１，２，３，４のそれぞれについて、フィルタ係数Ｗj の更新演算を示すと、下記のようになる。
〔ｉ＝０〕
ｊ＝０；  Ｒ２0 ＝Ｒ１0 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１0 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１3 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１3 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１2 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１2 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１1 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１1 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１0 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１0 ｅ
〔ｉ＝１〕
ｊ＝０；  Ｒ２0 ＝Ｒ１1 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１1 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１0 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１0 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１3 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１3 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１2 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１2 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１1 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１1 ｅ
〔ｉ＝２〕
ｊ＝０；  Ｒ２0 ＝Ｒ１2 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１2 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１1 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１1 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１0 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１0 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１3 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１3 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１2 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１2 ｅ
〔ｉ＝３〕
ｊ＝０；  Ｒ２0 ＝Ｒ１3 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１3 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１2 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１2 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１1 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１1 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１0 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１0 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１3 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１3 ｅ
〔ｉ＝４〕
ｊ＝０；  Ｒ２0 ＝Ｒ１0 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１0 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１3 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１3 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１2 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１2 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１1 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１1 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１0 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１0 ｅ
つまり、図４（ａ）に示すように端数ＥＤが０．５未満の場合には、基本数列ＲT の最後の数値Ｒ１(Ty-1)を、更新用基準信号Ｒ２j としては使用しないのである。その結果、最初のフィルタ係数Ｗ0 の更新演算に用いられる更新用基準信号Ｒ２0 と、最後のフィルタ係数Ｗ(Ty-1)の更新演算に用いられる更新用基準信号Ｒ２(Ty-1)とは、同じ値になる。
【００８８】
これに対し、図４（ｂ）に示すように、フィルタ係数Ｗ4 を駆動信号ｙとして出力してからある程度時間が経過してから（ＥＤ＝０．７５）次の基準信号ｘが入力されたような場合を考えると、この例では、出力回数Ｔｙ＝５であるが、端数ＥＤ＝０．７５であるため、実際タップ長Ｌｆ＝４．７５、整数タップ長Ｌ１＝５、となる。
【００８９】
すると、駆動信号ｙi の出力回数をカウントするカウンタｉ＝０，１，２，３，４のそれぞれについて、フィルタ係数Ｗj の更新演算を示すと、下記のようになる。
〔ｉ＝０〕
ｊ＝０；  Ｒ２0 ＝Ｒ１0 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１0 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１4 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１4 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１3 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１3 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１2 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１2 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１1 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１1 ｅ
〔ｉ＝１〕
ｊ＝０；  Ｒ２0 ＝Ｒ１1 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１1 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１0 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１0 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１4 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１4 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１3 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１3 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１2 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１2 ｅ
〔ｉ＝２〕
ｊ＝０；  Ｒ２0 ＝Ｒ１2 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１2 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１1 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１1 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１0 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１0 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１4 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１4 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１3 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１3 ｅ
〔ｉ＝３〕
ｊ＝０；  Ｒ２0 ＝Ｒ１3 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１3 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１2 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１2 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１1 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１1 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１0 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１0 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１4 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１4 ｅ
〔ｉ＝４〕
ｊ＝０；  Ｒ２0 ＝Ｒ１4 →  Ｗ0 （ｎ＋１）＝Ｗ0 （ｎ）−αＲ１4 ｅ
ｊ＝１；  Ｒ２1 ＝Ｒ１3 →  Ｗ1 （ｎ＋１）＝Ｗ1 （ｎ）−αＲ１3 ｅ
ｊ＝２；  Ｒ２2 ＝Ｒ１2 →  Ｗ2 （ｎ＋１）＝Ｗ2 （ｎ）−αＲ１2 ｅ
ｊ＝３；  Ｒ２3 ＝Ｒ１1 →  Ｗ3 （ｎ＋１）＝Ｗ3 （ｎ）−αＲ１1 ｅ
ｊ＝４；  Ｒ２4 ＝Ｒ１0 →  Ｗ4 （ｎ＋１）＝Ｗ4 （ｎ）−αＲ１0 ｅ
つまり、図４（ｂ）に示すように端数ＥＤが０．５以上の場合には、基本数列ＲT の最後の数値Ｒ１(Ty-1)も、更新用基準信号Ｒ２j として使用されるのである。その結果、更新用基準信号Ｒ２j は、基本数列ＲT の各数値Ｒ１j を次々とシフトすることにより得られるようになる。
【００９０】
以上をまとめると、本実施の形態では、第１に基本数列ＲT の各数値Ｒ１j を演算する際に端数ＥＤを考慮してフィルタ係数Ｃ＾j を選択するようにしているが、これは、伝達関数フィルタＣ＾の時間軸上の位置関係に基づく誤差をなくするための工夫であり、第２に基本数列ＲT の各数値Ｒ１j から更新用基準信号Ｒ２j を選択する際にも端数ＥＤを考慮しているが、これは、周期演算における演算処理の切れ目がスムーズになるようにするための工夫である。
【００９１】
そして、更新用基準信号Ｒ２j を得るためにこのような二つの工夫を施した結果、その更新用基準信号Ｒ２j の精度が従来に比べて大幅に向上するから、良好な振動低減効果が発揮されるのである。
【００９２】
そして、このような有利な点は、基本数列ＲT を生成する際に端数ＥＤを考慮しつつフィルタ係数Ｃ＾j を選択すること並びに更新用基準信号Ｒ２j を選択する際に端数ＥＤを考慮することにより得られるのであるから、特に本実施の形態の構成としたことにより演算負荷が大幅に増大してしまうようなこともない。
【００９３】
ここで、本実施の形態にあっては、エンジン３０が振動源に対応し、能動型エンジンマウント１が制御振動源に対応し、加重センサ２２が残留振動検出手段に対応し、パルス信号生成器２６が基準信号生成手段に対応し、図３の処理において固定サンプリング・クロックに同期してステップ１０４でフィルタ係数Ｗi を駆動信号ｙi として出力する処理が駆動信号生成手段に対応し、ステップ１０２において上記（６）式に従って基本数列ＲT を生成する処理及びステップ１０８において上記（７）式又は（８）式に従って更新用基準信号Ｒ２j を選択する処理が更新用基準信号生成手段に対応し、ステップ１０８において上記（５）式に従ってフィルタ係数Ｗj を更新する処理が適応処理手段に対応し、１１３において端数時間を周期ＴSCで除算する処理が端数演算手段に対応し、ステップ１０２において上記（６）式に従って基本数列ＲT を生成する処理が基本数列生成手段に対応し、ステップ１０８において上記（７）式又は（８）式に従って更新用基準信号Ｒ２j を選択する処理が更新用基準信号選択手段に対応し、ステップ１０３及び１１２の処理が駆動信号カウント手段に対応し、ステップ１０５の処理及びステップ１０９の判定が「ＹＥＳ」となったときにタイマを停止する処理によって端数時間計測手段が構成される。
【００９４】
なお、上記実施の形態では、過去の端数ＥＤを特に保存することなく、最新の端数ＥＤのみを考慮して基本数列ＲT を生成することとしているが、これは極短時間では端数ＥＤ（つまり、振動の周期）が変化しないと考えて差し支えないからである。従って、振動の周期が極短時間で変化する制御対象の場合等には、過去の端数ＥＤを保存し、それらを累積してフィルタ係数Ｃ＾j を選択するようにすればよい。
【００９５】
また、上記実施の形態では、端数時間を周期ＴSCで除算することにより端数ＥＤを演算するようにしているが、コントローラ２５の演算負荷を軽減するためには、除算ではなく、端数時間と周期ＴSCの１／２とを比較する比較演算（比較手段）により、実質的に端数演算手段を構成することが望ましい。つまり、端数演算手段に要求される最低限の機能は、実際タップ長Ｌｆから整数タップ長Ｌ１を求める際に、実際タップ長Ｌｆの小数点以下を切り上げるべきか切り捨てるべきかを判断するために必要な情報が得られればよいのであり、その必要な情報とは、正に端数時間が周期ＴSCの１／２以上であるか未満であるか、という判定結果だからである。従って、端数時間が周期ＴSCの１／２以上である場合には、出力回数Ｔｙを整数タップ長Ｌ１とし、端数時間が周期ＴSCの１／２未満である場合には、出力回数Ｔｙから１を減算した値を整数タップ長Ｌ１とすればよいのである。
【００９６】
さらに、上記実施の形態では、駆動信号ｙi が出力される度にクリア・スタートするタイマを用いて端数時間を計測し、その端数時間と周期ＴSCとに基づいて端数ＥＤを求めるようにしているが、これに限定されるものではなく、例えば、基準信号ｘの周期Ｔx を計測するタイマ機能（周期検出手段）を設け、その周期Ｔx を周期ＴSCで除算する処理（実際タップ長演算手段）により実際タップ長Ｌｆを直接求め、その実際タップ長Ｌｆの小数点第１位で四捨五入する処理（整数タップ長演算手段）により整数タップ長を求めるようにしてもよい。また、場合によっては、出力回数Ｔｙもカウントにより求めるのではなく、上記のように求められた実際タップ長Ｌｆの小数点以下を切り上げる処理（出力回数演算手段）により出力回数Ｔｙを求めるようにしてもよい。
【００９７】
また、上記実施の形態では、本発明に係る能動型騒音振動制御装置を、エンジン３０から車体３５に伝達される振動を低減する車両用の能動型振動制御装置に適用した場合について説明したが、本発明の適用対象はこれに限定されるものではなく、例えば騒音源としてのエンジン３０から車室内に伝達される騒音を低減する能動型騒音制御装置であってもよい。かかる能動型騒音制御装置とする場合には、車室内に制御音を発生するための制御音源としてのラウドスピーカと、車室内の残留騒音を検出する残留騒音検出手段としてのマイクロフォンとを設け、上記実施の形態と同様の演算処理によって得られる駆動信号ｙi に応じてラウドスピーカを駆動させるとともに、マイクロフォンの出力を残留騒音信号ｅとして適応ディジタルフィルタＷのフィルタ係数Ｗj の更新処理に用いればよい。
【００９８】
そして、本発明の適用対象は車両に限定されるものではなく、エンジン３０以外で発生する周期的な振動や騒音を低減するための能動型振動制御装置，能動型騒音制御装置であっても本発明は適用可能である。例えば、工作機械からフロアや室内に伝達される振動や騒音を低減する装置等であっても、本発明は適用可能である。
【００９９】
【実施例】
図５は、上記実施の形態で示した車両用の能動型振動制御装置を用いて本発明者が行った実験結果を示す波形図であって、横軸には時間を、縦軸には残留振動信号ｅのレベルをとっている。
【０１００】
そして、図５（ａ）は、基本数列ＲT を生成する際には端数ＥＤを考慮したが、その基本数列ＲT から更新用基準信号Ｒ２j を選択する際には端数ＥＤを考慮することなく、出力回数Ｔｙをそのまま整数タップ長Ｌ１とした場合の結果を示している。
【０１０１】
これに対し、図５（ｂ）は、上記実施の形態と同様に、基本数列ＲT を生成する際及びその基本数列ＲT から更新用基準信号Ｒ２j を選択する際のいずれにおいても端数ＥＤを考慮した場合の結果を示している。
【０１０２】
これら実験結果から、基本数列ＲT から更新用基準信号Ｒ２j を選択する際に端数ＥＤを考慮すること（より望ましくは、基本数列ＲT を生成する際及びその基本数列ＲT から更新用基準信号Ｒ２j を選択する際のいずれにおいても端数ＥＤを考慮すること）が、良好な振動低減効果を得るためには極めて有効であることが判る。
【図面の簡単な説明】
【図１】本発明の一実施の形態における車両の概略側面図である。
【図２】能動型エンジンマウントの一例を示す断面図である。
【図３】振動低減処理の概要を示すフローチャートである。
【図４】実施の形態の動作を説明する波形図である。
【図５】発明者が行った実験の結果を示す波形図である。
【符号の説明】
１          能動型エンジンマウント（制御振動源）
２２        加重センサ（残留振動検出手段）
２５        コントローラ
２６        パルス信号生成器（基準信号生成手段）
３０        エンジン（振動源）
３５        車体
【図１】
0003695052.tif 000003
【図２】
0003695052.tif 000004
【図３】
0003695052.tif 000005
【図４】
0003695052.tif 000006
【図５】
0003695052.tif 000007