説明

逆フィルタ係数決定方法、逆フィルタ係数決定装置、異常振動検出装置

【課題】 本発明は、機械等の異常検出の精度を従来に比べ向上する逆フィルタ係数決定方法を提供する。
【解決手段】 バッファ部106に記録された正常音信号を可視化した信号波形を表示部113が表示し、入力受付部114が利用者による特徴部分を含む範囲指示を受け付け、フィルタ係数演算部109が、前記範囲に対応する部分信号を用いて、逆フィルタ係数を算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、入力振動から正常振動を除去し異常振動を検出する技術に関し、特に、正常振動を除去するための逆フィルタ係数を決定する技術に関する。
【背景技術】
【0002】
機械等の異常の発生を検出するために、前記機械等の正常動作時の音である正常音信号を予め計測し、音響信号から当該正常音信号を除去するフィルタの係数である逆フィルタ係数を算出しておき、当該算出の後、異常の有無の判定対象である入力音を受け付けて、入力音信号に対して逆フィルタを適用し入力音信号から正常音信号を除去して異常音信号のみを抽出し、当該異常音信号を用いて異常の有無を判定する手法が用いられている。
【0003】
ここで、前記逆フィルタ係数を算出するには複雑な演算を行う必要があるので、正常音信号を短時間分(一例としては25m秒程度)記録して逆フィルタ係数の算出に用いることにより、演算時間の長期化を防いでいる。
【非特許文献1】現代ディジタル信号処理理論とその応用 青山友紀監訳 丸善株式会社 平成4年12月30日発行 P.16〜P.19
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、前述のように短時間分の正常音信号を記録した場合に、当該記録の終了後に、パルス信号などの特徴的な信号が発生し、当該特徴的な部分が逆フィルタ係数の算出に用いられない場合が想定される。このような想定の下では、パルス信号に対応し高周波を重点的に除去するような逆フィルタ係数を算出すべきであるにも関わらず、低周波を重点的に除去する逆フィルタ係数が算出され、算出された逆フィルタ係数を用いると、入力音信号の低周波部分が異常音である場合に除去されてしまい、このような異常音の検出漏れが生じ得る。また、高周波部分は除去されずに残ってしまい、異常音として検出されてしまう。特徴的な部分が、のこぎり波等パルス波以外であっても、同様の理由から異常音の検出漏れ、誤検出が生じ得る。また、上記の問題は、音のみに係るものではなく、異常音を含め異常振動を検出するための逆フィルタ係数の算出についても同様に生じうる。
【0005】
上記の問題に鑑み、本発明は、異常振動の検出漏れ、誤検出を防ぎ、異常振動の検出精度を従来に比べ向上し得る逆フィルタ係数決定方法、逆フィルタ係数決定装置、異常振動検出装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明は、入力振動から正常振動を除去して異常振動を検出する逆フィルタの逆フィルタ係数を算出する逆フィルタ係数決定方法であって、正常振動信号を記録する記録ステップと、前記正常振動信号を可視化した信号波形を生成し、当該信号波形を表示する波形表示ステップと、表示された前記信号波形を見た利用者からの指示に基づき、前記信号波形の特徴部分を含む範囲を特定する特定ステップと、前記正常振動信号のうち前記範囲に対応する部分信号を用いて、逆フィルタ係数を算出する算出ステップとを含むことを特徴とする。
【発明の効果】
【0007】
本発明の逆フィルタ係数決定方法は、上述の構成を備えることにより、信号波形の特徴部分である特徴振動を含む部分信号を用いて逆フィルタ係数を算出するので、入力振動に対し当該逆フィルタ係数を用いた逆フィルタを適用した場合に、入力振動中の前記特徴振動を除去することができ、前記特徴振動を異常振動として誤検出するのを防ぐことができる。
【0008】
例えば、入力振動信号にパルス信号が含まれている場合、当該パルス信号を含む部分信号を用いて逆フィルタ係数を算出すると、高周波成分を低減する逆フィルタ係数を得るが、前記パルス信号を含まない部分信号を用いて逆フィルタ係数を算出すると、低周波成分を重点的に低減する逆フィルタ係数を得る。入力振動信号に対し、低周波成分を重点的に低減する逆フィルタ係数を用いた逆フィルタを用いると、当該入力振動信号に含まれるパルス信号が低減されず、当該パルス信号が異常振動として検出されてしまう。
【0009】
また、前記特定ステップは、前記指示を受け付ける受付ステップと、前記信号波形のうち所定条件を満たす仮範囲を選出する仮特定ステップと、前記信号波形の表示に前記仮範囲を示す表示を付する表示更新ステップと、前記指示に基づき前記仮範囲を増減することにより前記範囲を特定する本特定ステップとを含んでもよい。
この構成によれば、仮特定ステップにより、信号波形において、特徴部分が含まれるとみなされる仮範囲を特定し、本特定ステップにより、当該仮範囲を変更することにより、特徴部分を含む前記範囲を特定するので、前記範囲を従来よりも迅速に特定することができる。
【0010】
例えば、仮特定ステップにより、パルス信号を含む仮範囲を特定しておき、本特定ステップにおいて、前記信号波形を見た利用者が前記仮範囲をユーザ操作により変更し、前記範囲を特定することとした場合、仮特定ステップにより前記仮範囲を特定することなく前記利用者が前記範囲を特定する場合に比べて、前記ユーザ操作の工数が少なくて済む。
本発明の逆フィルタ係数決定装置は、入力振動から正常振動を除去して異常振動を検出する逆フィルタの逆フィルタ係数を算出する逆フィルタ係数決定装置であって、正常振動信号を記録する記録手段と、前記正常振動信号を可視化した信号波形を生成し、当該信号波形を表示する波形表示手段と、表示された前記信号波形を見た利用者からの指示に基づき、前記信号波形の特徴部分を含む範囲を特定する特定手段と、前記正常振動信号のうち前記範囲に対応する部分信号を用いて、逆フィルタ係数を算出する算出手段とを備える。
【0011】
この構成によれば、信号波形の特徴部分である特徴振動を含む部分信号を用いて逆フィルタ係数を算出するので、入力振動に対し当該逆フィルタ係数を用いた逆フィルタを適用した場合に、入力振動中の前記特徴振動を除去することができ、前記特徴振動を異常振動として誤検出するのを防ぐことができる。
例えば、入力振動信号にパルス信号が含まれている場合、当該パルス信号を含む部分信号を用いて逆フィルタ係数を算出すると、高周波成分を低減する逆フィルタ係数を得るが、前記パルス信号を含まない部分信号を用いて逆フィルタ係数を算出すると、低周波成分を重点的に低減する逆フィルタ係数を得る。入力振動信号に対し、低周波成分を重点的に低減する逆フィルタ係数を用いた逆フィルタを用いると、当該入力振動信号に含まれるパルス信号が低減されず、当該パルス信号が異常振動として検出されてしまう。
【0012】
また、前記特定手段は、前記指示を受け付ける受付部と、前記信号波形のうち所定条件を満たす仮範囲を選出する仮特定部と、前記信号波形の表示に前記仮範囲を示す表示を付する表示更新部と、前記指示に基づき前記仮範囲を増減することにより前記範囲を特定する本特定部とを含んでもよい
また、前記仮特定部は、前記信号波形における振幅が最大である点を選出する第1選出部と、前記仮範囲として、前記信号波形における前記最大点を含む所定範囲を選出する第2選出部とを含んでもよい。
【0013】
また、前記仮特定部は、前記信号波形における所定の大きさ以上の振幅が所定長以上連続する前記仮範囲を選出してもよい。
また、前記仮特定部は、記録された正常振動信号を順に読み出す読出部と、信号が読み出される毎に、読み出された当該信号が所定値を超えるか否かを判定する判定部と、連続して所定値を超えると判定された回数を計数する計数部と、前記回数が所定数を超えた場合に、前記正常振動信号における連続して所定値を超えると判定された前記仮範囲を出力する出力部とを含んでもよい。
【0014】
この構成によれば、仮特定部により、信号波形において、特徴部分が含まれるとみなされる仮範囲を特定し、本特定部により、当該仮範囲を増減することにより、特徴部分を含む前記範囲を特定するので、前記範囲を従来よりも迅速に特定することができる。
例えば、仮特定部により、パルス信号を含む仮範囲を特定しておき、本特定ステップにおいて、前記信号波形を見た利用者が前記仮範囲をユーザ操作に基づき増減し、前記範囲を特定することとした場合、仮特定部により前記仮範囲を特定することなく前記利用者が前記範囲を特定する場合に比べて、前記ユーザ操作の工数が少なくて済む。
【0015】
また、前記特定手段は、前記信号波形のうち所定条件を満たす第1仮範囲を選出する第1仮特定部と、前記信号波形の表示に前記第1仮範囲を示す表示を付する第1表示更新部と、前記指示に基づき前記第1仮範囲を増減する第1本特定部と、前記第1仮特定部により選出された範囲と異なる、前記信号波形のうち前記所定条件を満たす第2仮範囲を選出する第2仮特定部と、前記信号波形の表示に前記第2仮範囲を示す表示を付する第2表示更新部と、前記指示に基づき前記第2仮範囲を増減する第2本特定部と、前記第1仮範囲と前記第2仮範囲とを合わせた前記仮範囲を出力する出力部とを含んでもよい。
【0016】
この構成によれば、前記正常振動信号において、特徴部分が複数ある場合に、複数の特徴に対応する逆フィルタ係数を算出できるので、入力振動に対し当該逆フィルタ係数を用いた逆フィルタを適用した場合に、入力振動中の複数の特徴振動を含む正常振動を除去することができ、複数の特徴振動それぞれを異常振動として誤検出するのを防ぐことができる。
【0017】
また、前記特定手段は、前記信号波形のうち所定条件を満たす第1範囲を特定する第1特定部と、前記信号波形のうち所定条件を満たし、前記第1範囲と異なる第2範囲を特定する第2特定部と、前記第1範囲及び前記第2範囲のいずれかを選択する選択部と、前記信号波形の表示に、前記選択部により選択された範囲を示す表示を付する表示更新部と、前記選択部により選択された範囲を前記指示に基づき増減し、当該範囲を前記仮範囲として出力する出力部とを含んでもよい。
【0018】
この構成によれば、前記正常振動信号において、特徴部分が複数ある場合に、複数の特徴のうち1の特徴に対応する逆フィルタ係数を算出できるので、入力振動に対し当該逆フィルタ係数を用いた逆フィルタを適用した場合に、選択した特徴振動を異常振動として誤検出するのを防ぐことができる。
また、前記記録手段は、前記正常振動信号として、正常音信号を記録することとしてもよい。
【0019】
この構成によれば、信号波形の特徴部分である特徴音を含む部分信号を用いて逆フィルタ係数を算出するので、入力音に対し当該逆フィルタ係数を用いた逆フィルタを適用した場合に、入力音中の前記特徴音を除去することができ、前記特徴音を異常音として誤検出するのを防ぐことができる。
本発明は、入力振動から正常振動を除去して異常振動を検出する異常振動検出装置であって、正常振動信号を記録する記録手段と、前記正常振動信号を可視化した信号波形を生成し、当該信号波形を表示する波形表示手段と、表示された前記信号波形を見た利用者からの指示に基づき、前記信号波形の特徴部分を含む範囲を特定する特定手段と、前記正常振動信号のうち前記範囲に対応する部分信号を用いて、逆フィルタ係数を算出する算出手段と、入力振動信号を受信する受信手段と、前記逆フィルタ係数に基づく逆フィルタを用いて前記入力振動信号から正常振動信号を除去し、当該入力振動信号に含まれる異常振動信号を検出する検出手段とを備える。
【0020】
この構成によれば、信号波形の特徴部分である特徴振動を含む部分信号を用いて逆フィルタ係数を算出し、入力振動に対し当該逆フィルタ係数を用いた逆フィルタを適用するので、入力振動中の前記特徴振動を除去することができ、前記特徴振動を異常振動として誤検出するのを防ぐことができる。
また、前記特定手段は、前記指示を受け付ける受付部と、前記信号波形のうち所定条件を満たす仮範囲を選出する仮特定部と、前記信号波形の表示に前記仮範囲を示す表示を付する表示更新部と、前記指示に基づき前記仮範囲を増減することにより前記範囲を特定する本特定部とを含んでもよい。
【0021】
この構成によれば、仮特定部により、信号波形において、特徴部分が含まれるとみなされる仮範囲を特定し、本特定部により、当該仮範囲を増減することにより、特徴部分を含む前記範囲を特定するので、前記範囲を従来よりも迅速に特定することができる。
例えば、仮特定部により、パルス信号を含む仮範囲を特定しておき、本特定ステップにおいて、前記信号波形を見た利用者が前記仮範囲をユーザ操作に基づき増減し、前記範囲を特定することとした場合、仮特定部により前記仮範囲を特定することなく前記利用者が前記範囲を特定する場合に比べて、前記ユーザ操作の工数が少なくて済む。
【発明を実施するための最良の形態】
【0022】
本発明の一実施形態として、振動の一具体例である音に係る異常音検出装置1について説明する。
本発明の異常音検出装置1は、機械等の異常を検出する装置であり、予め、機械等の正常動作時に記録した正常音信号のうち、逆フィルタ係数の演算に使用する信号を、ユーザ操作によって範囲指定し得る機能を備え、範囲指定された信号から、前記逆フィルタ係数の算出を行って、異常音の検出漏れを防ぎ、異常音の検出精度を向上する。
【0023】
以下、本発明の実施の形態を図示例と共に説明する。
本発明の異常音検出装置1は、図1に示すように、マイクロフォン101、AD変換部102、スイッチ103、正常音除去部104、計時部105、バッファ部106、記録制御部107、記録部108、フィルタ係数演算部109、異常音判定部110、表示生成部111、表示制御部112、表示部113、入力受付部114、制御部115から構成される。
【0024】
異常音検出装置1は、具体的には、CPU、ROM、RAM、ハードディスク、ビデオアダプタ、液晶ディスプレイなどから構成されるコンピュータシステムであり、前記RAMには、コンピュータプログラムが記憶され、前記CPUが、前記コンピュータプログラムに従って動作することにより、異常音検出装置1は、その機能を達成する。
以下、前記各部について作用を交えて説明する。
<入力受付部114>
入力受付部114は、キーボードを備えており、利用者が前記キーボードを操作することにより入力する操作指示を取得し、取得した操作指示を制御部115に送信する。
【0025】
前記操作指示には、一例として、フィルタ係数算出指示、選択カーソル変更指示、カーソル右移動指示、カーソル左移動指示、選択範囲決定指示、異常音検出開始指示、異常音検出終了指示などがある。
<マイクロフォン101、AD変換部102、スイッチ103、計時部105>
マイクロフォン101は、集音した音響信号を−5ボルト〜+5ボルトの範囲の電気信号に変換し、AD変換部102に出力する。
【0026】
AD変換部102は、16ビットAD変換素子であり、マイクロフォン101から入力される電気信号を、予め設定されたサンプリング周期毎に、−32768〜32767の範囲を示すデジタルデータへとAD変換する。
本実施形態では、一例としてAD変換部102のサンプリング周波数を、43.478KHzとしている。
【0027】
AD変換部102は、他モジュールから読み出されるAD変換結果レジスタを備えており、AD変換の結果を前記AD変換結果レジスタに順次設定する。
スイッチ103は、制御部115からの選択指示に従い、正常音除去部104と記録制御部107とのうちのいずれかと、AD変換部102とを接続する。
計時部105は、1秒ごとにカウンタ値をカウントアップすることにより日時を計測する時計であり、具体的には、1970年1月1日からの秒数を計測する。
【0028】
計時部105は異常音検出装置1の記録制御部107から読み出される時刻読出レジスタを備えており、前記カウントアップ毎に、カウント値を「年/月/日 時/分/秒」のフォーマットに変換し、時刻情報として、前記時刻読出レジスタに設定する。
例えば、前記時刻読出レジスタには、2005年6月14日10時31分40秒を示す時刻情報「2005/6/14 10:31:40」が設定され、記録制御部107は当該時刻情報を読み出す。
<バッファ部106、記録部108>
バッファ部106は、バッファメモリから構成されており、記録制御部107により正常音除去のための逆フィルタ係数算出時に書き込まれる信号データファイルや、異常音検出時に書き込まれる異常音検出対象データなどのデジタルデータを保持する。
【0029】
信号データファイルは、信号データファイル名、タイムスタンプ、信号データ配列とを含む。
信号データファイル名は、信号データファイルを識別するための名前であり、タイムスタンプは、記録制御部107が計時部105から読み出した時刻情報であり、信号データ配列は、AD変換結果である16ビットデータを格納する配列である。
【0030】
一例として、バッファ部106は、図2に示すような信号データファイル201を記録する。
信号データファイル201は、信号データファイル名「データファイル1」202と、タイムスタンプ「2005/6/14 10:31:40」(203)と、信号データ配列204とから成り、信号データ配列204は、(Nmax)個の16ビットデータであるSig[0]〜Sig[Nmax−1]からなる配列である。
【0031】
本実施形態では、Nmaxは43478である。
異常音検出対象データは、16ビットデータを要素とするデータ配列であり、当該16ビットデータは、正常音除去部104が、AD変換部102から読み出し、記録制御部107へ転送し、同制御部により格納されたものである。
前記異常音検出対象データは、当該データの保存領域が無限に増大することのないようリングバッファに保持される。
【0032】
記録部108は、ハードディスクから構成される記録デバイスであり、記録制御部107により書き込まれる、異常と判定した異常音検出対象データから作成された異常データファイル、逆フィルタ係数及び逆フィルタ係数演算に使用した信号データファイルを保持する。
<記録制御部107>
記録制御部107は、制御部115から記録開始指示を受信すると、信号データファイルを生成して、当該信号データファイルをバッファ部106に記憶させる。
【0033】
記録制御部107は、所定のサンプリング時間毎に、AD変換部102のAD変換結果レジスタから、AD変換結果を読み出し、前記信号データファイルの信号データ配列に書き込んでいく。
また、記録制御部107は、制御部115から異常音検出指示を受信するとバッファ部106に異常音検出対象ファイルを作成し、正常音除去部104から送られてくる16ビットデータを、異常音検出対象データであるデータ配列として順次リングバッファに格納する。さらに制御部115から異常信号保存指示を受信すると、それから一定期間経過後までのデータを記録した後、このデータを時系列順に並べ替えて作成した異常データファイルを記録部108に記憶させる。
<表示生成部111>
表示生成部111は、制御部115から指示を受け付けて、当該指示に応じた処理を行い、一例として図3に示す表示画像230のような表示画像を生成して、当該表示画像を示す画像データを表示制御部112が備える画像メモリに書き込む。表示画像230は、カーソル位置表示画像231と、カーソル幅表示画像232と、グラフ画像233とを含み、グラフ画像233は、グラフ234、開始カーソル235及び終了カーソル236を含む。
【0034】
表示生成部111が行うカーソル位置決定処理について、図4〜図6を用いて説明する。
表示生成部111は、制御部115から信号データファイル名を含む波形表示指示を取得する(ステップS11)。
表示生成部111は、バッファ部106から、当該信号データファイル名で識別される信号データファイルを読み出す(ステップS12)。
【0035】
表示生成部111は、読み出した信号データファイル中の信号データ配列Sig[n]を用いて、一例として図3に示すように、原点237を原点とするx軸、y軸の直交座標上に、(x座標,y座標)として(n,Sig[n])をプロットしたグラフ234を生成する(ステップS13)。ここで、nは自然数であり、0〜Nmax−1の値を取る。
表示生成部111は、開始カーソル235及び終了カーソル236に関し、選択カーソルを示すSigSelect、開始カーソルのx座標を示すSigStart、終了カーソルのx座標を示すSigEndの3つの情報を管理する。
【0036】
SigSelectは、移動対象となっているカーソルを識別するための変数であり、終了カーソルを示す値「0」か、開始カーソルを示す値「1」のいずれかの値を示す。
表示生成部111は、SigStartを0で初期化し、SigEndをNmaxで初期化し、SigSelectを0で初期化する(ステップS14)。
表示生成部111は、グラフ234に対し、一例として図3に示すように、x座標がSigStartである位置に、y軸に平行な破線で示される開始カーソル235を重畳させ、x座標がSigEndである位置に、y軸に平行な破線で示される終了カーソル236を重畳させた画像であるグラフ画像233を生成する(ステップS15)。ここで、SigSelectにより示されるカーソルを、操作の対象であることを認識できるよう赤色で表示し、他方のカーソルは黒色で表示するよう表示画像を生成するものとする。
【0037】
表示生成部111は、一例として図7に示すように、SigStartの値を表示するカーソル位置表示画像231を生成し、SigEnd−SigStartの値を表示するカーソル幅表示画像232を生成し、グラフ画像233と併せた表示画像230を生成し、表示画像230を表示制御部112が備える前記画像メモリに書き込む(ステップS16)。
【0038】
例えば図7においては、開始カーソル235は、x座標がSigStartの値「11060」の位置に表示されており、SigStartの値「11060」が、カーソル位置表示画像231中に表示されている。
また、終了カーソル236は、x座標がSigEndの値「12084」の位置に表示されており、カーソル幅表示画像232として12084−11060の計算結果である値「1024」が表示されている。
【0039】
表示制御部112は、前記画像メモリに書き込まれた表示画像230を表示するための映像信号を生成し、表示部113に対し出力し、表示部113は、前記映像信号を受信して、表示画像230を表示する(ステップS17)。
表示制御部112は、制御部115からの指示を受け付ける(ステップS18)。
前記指示が、カーソル右移動指示であり(ステップS31:YES)、SigSelectが「0」である場合(ステップS32:YES)、SigEndがNmax未満であれば(ステップS33:NO)、SigEndを1インクリメントし(ステップS34)、Nmax以上であれば(ステップS33:YES)、ステップS18に移行する。
【0040】
SigSelectが「0」でない場合(ステップS32:NO)、SigStartがNmax以上であるか又はSigStartがSigEnd以上であるか否かを判定する(ステップS35)。
ステップS35において否定的であると判定した場合(ステップS35:NO)、SigStartを1インクリメントし(ステップS36)、肯定的であると判定した場合(ステップS35:YES)、ステップS18に移行する。
【0041】
前記指示が、カーソル左移動指示であり(ステップS41:YES)、SigSelectが「0」である場合(ステップS42:YES)、SigEndが0より大きくかつSigEnd>SigStartであるか否かを判定する(ステップS43)。ステップS35において肯定的であると判定した場合(ステップS43:YES)、SigEndを1デクリメントし(ステップS44)、否定的であると判定した場合(ステップS43:NO)、ステップS18に移行する。
【0042】
SigSelectが「0」でない場合(ステップS42:NO)、SigStartが0より大きければ(ステップS45:YES)、SigStartを1デクリメントし(ステップS46)、0以下であれば(ステップS33:NO)、ステップS18に移行する。
前記指示が選択カーソル変更指示であり(ステップS61:YES)、SigSlectが「0」である場合(ステップS62:YES)、SigSelectを値「1」で書換え、SigSelectが「0」でない場合(ステップS62:NO)、SigSelectを値「0」で書換えて、ステップS15に移行する。
【0043】
前記指示が選択範囲決定指示でない場合(ステップS65:NO)、ステップS18に移行し、前記指示が選択範囲決定指示である場合(ステップS65:YES)、表示生成部111は、制御部115に対し、SigStartと、SigEndと、前記信号データファイル名とを送信して処理を終了する。
<表示制御部112、表示部113>
表示制御部112は、前記画像メモリを備えるグラフィックアダプタであり、表示生成部111により当該画像メモリに書き込まれた画像データに基づき表示画像を表す映像信号を生成し、当該映像信号を表示部113に出力する。
【0044】
表示部113は、液晶ディスプレイであり、表示制御部112が出力する映像信号を受信し、受信した映像信号に従い前記表示画像を液晶画面に表示する。
<フィルタ係数演算部109>
フィルタ係数演算部109は、自己相関関数演算処理、Levinson法による演算により、正常音除去のためのフィルタ係数算出処理を行う。
【0045】
フィルタ係数演算部109は、制御部115から、自己相関関数演算処理の開始指示として、信号データファイル名、SigStart、SigEndとを取得する。SigStartは、信号データ配列中で計算に用いる部分の先頭位置を示し、前記開始カーソル位置情報の値と同値であり、SigEndは、信号データ配列中で計算に用いる部分の終了位置を示し、前記終了カーソル位置情報の値と同値である。
【0046】
フィルタ係数演算部109は、定数Lに、初期値として、(SigEnd−SigStart)で算出される値を設定する。
フィルタ係数演算部109は、Levinson法により、信号値X[0]〜X[L−1]から線形予測係数σ、a[1]〜a[m]を求め、さらに、逆フィルタ係数b[0]=A/σ、b[i]=(A/σ)a[i](但しiは、1≦i≦m)を算出する。
【0047】
フィルタ係数演算部109は、b[0]〜b[m]を、正常音除去部104に送信すると共に、記録部108に逆フィルタ係数ファイルとして保存する。
<正常音除去部104、異常音判定部110>
正常音除去部104は、フィルタ係数演算部109からb[0]〜b[m]を受信し、受信したb[0]〜b[m]に基づき正常音除去フィルタ出力平均振幅Pを算出し、Pを異常音判定部110に送信する。
【0048】
異常音判定部110は、正常音除去部104からPを取得し、取得したPが異常検出用閾値PTH以上であるか否かを判定し、PTH以上であるPを、Tmin回以上Tmax回以下検出した場合に、異常音が発生していると判断する。
逆フィルタ係数の算出に用いる自己相関関数演算処理、Levinson法による演算については、前述した非特許文献1に詳述されているので、説明は省略する。
<制御部115>
制御部115は、入力受付部114から受信する操作指示に基づき、異常音検出装置1の全体動作を制御する。各操作指示に対する制御部115の処理は以下の通りである。
【0049】
制御部115は、入力受付部114から、フィルタ係数算出指示を受信した場合に、スイッチ103に対し、AD変換部102と記録制御部107とを接続するよう選択指示を行い、記録制御部107に対し、記録開始指示を送信する。
制御部115は、記録制御部107による信号データファイル作成完了を待ち、信号データファイル名を記録制御部107から取得し、表示生成部111に対し、当該信号データファイル名を含む波形表示指示を送信する。
【0050】
制御部115は、入力受付部114から選択カーソル変更指示を受信した場合に、選択カーソル変更指示を、表示生成部111に送信し、カーソル右移動指示を受信した場合に、カーソル右移動指示を表示生成部111に送信し、カーソル左移動指示を受信した場合に、カーソル左移動指示を表示生成部111に送信する。
制御部115は、入力受付部114から、カーソル位置決定指示を受信すると、表示生成部111から、信号データファイル名と、SigStartとしての開始カーソル位置情報と、SigEndとしての終了カーソル位置情報とを取得し、フィルタ係数演算部109に対し、当該信号データファイル名と、当該SigStartと、当該SigEndとを送信する。
【0051】
制御部115は、入力受付部114から、異常音検出開始指示を受信した場合に、スイッチ103に対し、AD変換部102と正常音除去部104とを接続するよう選択指示を行い、正常音除去部104及び記録制御部107に対し、異常音検出開始指示を送信する。
制御部115は、入力受付部114から、異常音検出終了指示を受信した場合には、正常音除去部104及び記録制御部107に対し、異常音検出終了指示を送信する。
<動作>
以下、異常音検出装置1の動作について、(1)音響信号から、正常音を除去するための逆フィルタの係数を算出するためのフィルタ係数算出処理、(2)前記逆フィルタ係数を適用した逆フィルタを用いて、検査対象である信号に含まれる異常音を検出する異常音検出処理の順に説明する。
(1)フィルタ係数算出処理
フィルタ係数算出処理の動作について、図12、図13を用いて説明する。
【0052】
ユーザは、前記キーボードを用いて、入力受付部114に対し、フィルタ係数算出を指示する。
入力受付部114は、フィルタ係数算出の指示を取得し、制御部115に対し、フィルタ係数算出指示を送信する。
制御部115は、前記フィルタ係数算出指示を取得する(ステップS501)。
【0053】
制御部115は、AD変換部102と、記録制御部107とを接続するようスイッチ103に指示し、スイッチ103は、当該指示を受信して、前記AD変換部102と、記録制御部107とを接続する(ステップS502)。
制御部115は、記録制御部107に対し、信号の記録開始指示を送信する(ステップS503)。
【0054】
記録制御部107は、前記信号記録開始指示を受信し、バッファ部106中に、信号データファイルを生成する(ステップS505)。
記録制御部107は、変数として保持するサンプリング回数を値「0」で初期化する(ステップS506)。
記録制御部107は、サンプリング回数が、Nmax以下であるか否かを判定し(ステップS508)、Nmax以下である場合(ステップS508:YES)、AD変換部102のAD変換結果レジスタから、AD変換結果を読み出し(ステップS510)、当該AD変換結果を信号データファイルの信号データ配列の未使用領域に記録する(ステップS511)。
【0055】
記録制御部107は、前記サンプリング回数を、「1」インクリメントし(ステップS512)、ステップS508に戻る。
記録制御部107は、サンプリング回数が、Nmaxより大きい場合(ステップS508:NO)、信号記録を終了し、制御部115に終了を通知する(ステップS521)。
以上のステップS507からステップS512のループによって、信号データファイル中の信号データ配列として、Sig[0]=8、Sig[1]=84、Sig[2]=84・・・Sig[43477]=192が記録されたものとする。
【0056】
制御部115は、表示生成部111に対し、信号データファイル名を含む波形表示指示を送信する(ステップS523)。
表示生成部111は、前記波形表示指示を受信し、当該波形表示指示に含まれる信号データファイル名で識別され、バッファ部106に記録されている信号データファイル中の信号データ配列に基づき、前述した図6に示すような表示画像を生成し、前記画像メモリに書き込み、表示を指示する(ステップS524)。
【0057】
次に、カーソル位置決定処理を行う(ステップS531)。
ステップ531の詳細は、図4〜図6を用いて既に説明したカーソル位置決定処理である。
次に、フィルタ係数演算部109は、制御部115から、自己相関関数演算処理の開始指示として、信号データファイル名、SigStart、SigEndとを取得し、バッファ部106に記録され、前記信号データファイル名で識別される信号データファイル中のSig[SigStart]〜Sig[SigEnd−1]を用いて、フィルタ係数算出処理を実行する(ステップS532)。
【0058】
ここで、Sig[SigStart]〜Sig[SigEnd−1]が、前述のX[0]〜X[L−1]に相当する。
フィルタ係数算出処理において、フィルタ係数演算部109は、Levinson法により、信号値X[0]〜X[L−1]から線形予測係数σ、a[1]〜a[m]を求め、さらに、逆フィルタ係数b[0]=A/σ、b[i]=(A/σ)a[i](但しiは、1≦i≦m)を算出する。
【0059】
一例としては、前記フィルタ係数算出処理における自己相関関数演算処理の結果、フィルタ係数演算部109は、r[0]=1.21429e+10、r[1]=9.45524e+9、・・・r[15]=−9.06491e+08を得る(但し、m=15)。また、フィルタ係数演算部109は、Levinson法により一例として線形予測係数σ=48720.7、a[1]=−0.985659・・・a[15]=−0.0251489を得る。
【0060】
次に、フィルタ係数演算部109は、逆フィルタ係数決定処理を行い、その結果、フィルタ係数演算部109は、一例として、逆フィルタ係数b[0]=1.34575、b[1]=−1.32442、・・・、b[15]=−0.0326441を得る(但し、ゲインA=2.0)。
(2)異常音検出処理
前記フィルタ係数算出処理において算出された逆フィルタ係数を用いて行う異常音検出処理について、図9を用いて説明する。
【0061】
正常音除去部104は、逆フィルタ係数を記憶しておくメモリ領域を備え、フィルタ係数演算部109からb[0]〜b[m]を受信して、前記メモリ領域に記憶する。
また、AD変換部102から取得するAD変換結果を記録する異常音検出対象データを含む異常音検出対象ファイルをバッファ部106に生成する。
ここで、前記異常音検出対象ファイルは、一定の長さ(例えばNmax)を持つリングバッファを構成しているものとする。
【0062】
正常音除去部104は、制御部115から異常音検出開始指示を受信すると、以下に説明する異常音検出を開始する。
正常音除去部104は、配列w[i](但し、0≦i≦m)、変数Pを記憶するための一時的な記憶領域を確保し、w[0]=w[1]=・・・=w[m]=0,P=0を実行し(ステップS401)、iw=0,n=0,q=0,Tp=0を実行する(ステップS402)。
【0063】
また、正常音除去部104は、AD変換部102によるAD変換結果を、前記AD変換結果レジスタから読み出して記録制御部107に送り、記録制御部107はこれを前記異常音検出対象ファイルの異常音検出対象データ配列S[n]に記憶する(ステップS403)。
次に、正常音除去部104は、w[iw]=AD変換結果を実行する(ステップS404)。
次に、
【0064】

を計算し(ステップS405)、次に、式
iw=Mod(iw+m,m+1)
を計算し(ステップS406)、式
=λP+(1−λ)|Y
を計算し(ステップS407)、Pを、異常音判定部110に送信する。
【0065】
ここで、Mod(A,B)との記載は、AをBで剰余演算した結果を示す。
異常音判定部110は、正常音除去部104からPを取得し、取得したPがPTH以上か否かを判定し(ステップS408)、PTH以上であると判定した場合(ステップS408:YES)には、Tpを1インクリメントし(ステップS409)、PTHより小さいと判定した場合(ステップS408:NO)には、TpがTmax以下か否かを判定する(ステップS410)。
【0066】
TpがTmax以下でないと判定された場合(ステップS410:NO)、後述するステップS414に移行し、TpがTmax以下であると判定された場合(ステップS410:YES)、更に、TpがTmin以上か否かを判定する。
TpがTmin以上でないと判定された場合(ステップS411:NO)、後述するステップS412に移行し、TpがTmin以上であると判定された場合(ステップS410:YES)、制御部115に異常音発生信号を送信する(ステップS412)。
【0067】
この結果、制御部115は、記録制御部107に異常信号保存指示を送信する。これを受け、記録制御部107は、一定数のデータを取り込み、その時点でバッファ部106に記憶されている異常音検出対象ファイル中のリングバッファに保存されたデータから作成した異常データファイルを記録部108に記憶させる(ステップS413)。
本実施形態においては、ステップS407からステップS411により示したように、PTH以上であるデータを、Tmin回以上Tmax回以下検出した場合に、異常音が発生していると判断している。PTH回以上検出した場合には、異常音の検出処理において、何らかの異常があると判断している。
【0068】
次に、Tpを0で初期化し(ステップS414)、正常音除去部104は、処理を継続するか否かを判定し、継続する場合(ステップS415:YES)、n=Mod(n+1,Nmax)を計算して(ステップS416)、ステップS403に移行し、継続しない場合(ステップS415:NO)、処理を終了する。
ステップS415における、処理を継続するか否かの判定については、一例として、制御部115から、異常音検出終了指示を受け付けている場合に処理終了と判定する。
<補足>
一方、本願と異なり、ユーザにフィルタ係数算出に使用するデータを選択させず、予め定めた、信号データ配列の先頭から1024個のデータ、即ち、Sig[0]=8、Sig[1]=84、Sig[2]=84・・・Sig[1023]=80を用いて、演算を行った場合には、一例として、以下の結果を得る。
【0069】
r[0]=1.66365e+08、r[1]=1.64333e+08、・・・、r[15]=1.40538e+08。
σ=1844.92、a[1]=1.11129、・・・、a[15]=0.0739347。
b[0]=1.78564、b[1]=−1.96717、・・・、b[15]=0.155876(但し、ゲインA=0.1)。
【0070】
図10に、(a)本願手法により得た逆フィルタ係数のフィルタ特性図と、(b)信号データ配列の先頭から1024個のデータを用いて得た逆フィルタ係数のフィルタ特性図を示す。フィルタ特性図の横軸は周波数を示し、縦軸は、本フィルタへの入力信号と出力信号との入出力比 (デシベル)を示す。
図10(b)においては、演算において、正常音中のパルス信号といった特徴的な信号を含まない部分を用いて演算を行ったため、特性曲線302は、正常音の特性を十分反映しておらず、低域部分で減衰率が大きくなっており、低周波成分の異常を見逃す危険がある。
【0071】
これに対し、図10(a)は、演算において、正常音中のパルス信号といった特徴的な部分を含む信号を用いて、演算を行ったため、特性曲線301は、正常音の特性を十分反映した特性を示しており、低域の異常も発見することができる。
<変形例>
なお、本発明を上記の実施形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
(1)上記の実施形態において、異常音を検出する装置について説明してきたが、本発明は、音に限らず、音以外の振動についても適用できるものである。
【0072】
例えば、上記の実施形態におけるマイクロフォン101を、圧電体に加えられた力を電圧に変換する圧電素子へと変更してもよい。機械が動作することによって発生する振動により、圧電素子に力が加えられた場合に、当該圧電素子が前記力を電気信号に変換し、当該電気信号をAD変換部102に出力する。当該圧電素子以外の構成は、上記実施形態と同構成とする。
【0073】
上述の構成を用いて、異常振動の検出対象である機械が正常動作している間に、圧電素子が計測した振動を示す振動信号を正常振動信号として記録し、以降は、実施形態において説明したのと同様の手順で、当該正常振動信号を用いて、逆フィルタ係数を算出する。当該算出以降、異常振動の有無の判定を行う場合に、当該判定の対象である振動を圧電素子が計測し、以降は、実施形態において説明したのと同様の手順で、計測した振動を示す異常振動検出対象信号から前記正常振動信号を除いた信号を用いて、異常振動の有無を判定する。
【0074】
また、前記圧電素子に替えて、加速度計又はジャイロ等、振動の測定が可能なデバイスを用いてもよい。
(2)上記の実施形態において、異常音検出装置1内で全ての処理を実現していたが、これに限らず、複数の装置に処理を分担させてもよい。
例えば、図11に示すように、異常音検出装置1を、フィルタの逆フィルタ係数の演算処理及び異常音の検出処理などを担当する異常音検出ユニット401と、ユーザ操作指示の取得及び画像の表示を担当するパーソナルコンピュータ402とに分けて構成してもよい。異常音検出ユニット401とパーソナルコンピュータ402とは、IEEE1394等のネットワーク403を介して接続する。
【0075】
異常音検出ユニット401は、図12に示すように、マイクロフォン101、AD変換部102、スイッチ103、正常音除去部104、計時部105、バッファ部106、記録制御部107、記録部108、フィルタ係数演算部109、異常音判定部110、制御部115、通信部411とから構成される。
マイクロフォン101、AD変換部102、スイッチ103、正常音除去部104、計時部105、バッファ部106、記録制御部107、記録部108、フィルタ係数演算部109、異常音判定部110、制御部115については、上記実施形態の異常音検出装置1におけるものと、同じ動作を行うものとする。
【0076】
通信部411は、ネットワーク403を介して、バッファ部106に記憶されている信号データファイルを、パーソナルコンピュータ402に送信する。
パーソナルコンピュータ402は、図13に示すように、表示生成部111と、表示制御部112と、表示部113と、入力受付部114と、通信部421と、制御部422とから構成される。
【0077】
表示生成部111と、表示制御部112と、表示部113と、入力受付部114については、上記実施形態の異常音検出装置1におけるものと、同じ動作を行うものとする。
通信部421は、ネットワーク403を介して、異常音検出ユニット401との間で、データの通信を行う。
実施形態において、制御部115が行っていた処理は、異常音検出ユニット401の制御部115と、パーソナルコンピュータ402の制御部422とが分担して行う。
【0078】
実施形態において、制御部115は、ユーザのキーボード操作による操作指示を入力受付部114から直接受信していたが、本変形例では、入力受付部114は、ユーザがキーボードを操作することにより取得した操作指示を制御部422に送信し、前記操作指示を受信した制御部422は、当該操作指示を、通信部421、通信部411を介して、制御部115に送信する。
【0079】
また、実施形態において、表示生成部111は、制御部115から信号データファイル名を含む波形表示指示を受信し、当該信号データファイル名で識別される、バッファ部106に記録されている信号データファイルの内容に基づき、表示画像を生成し、当該表示画像を示す画像データを、表示制御部112が備える画像メモリに書き込んでいたが、本変形例では、表示生成部111は、制御部115から、通信部411とネットワーク403と通信部421とを介して信号データファイル名を含む波形表示指示を受信し、信号データファイル名を含む信号データファイル読出要求を、通信部421、通信部411を介して制御部115に送信し、制御部115は通信部411に、信号データファイル読出要求に含まれる信号データファイル名で示される信号データファイルをパーソナルコンピュータ402に送信するよう指示する。通信部411は、バッファ部106から、前記信号データファイルを読み出して、ネットワーク403、通信部421を介して、表示生成部111に送信し、表示生成部111は、当該信号データファイルを取得する。
(3)逆フィルタ係数を決定した後、異常音検出装置1における、表示生成部111は、図14に示すような、図7に示す表示画像230と、図10に示す決定された逆フィルタ係数の特性を表すフィルタ特性図とを、重ねて表示することとしてもよい。
【0080】
これにより、ユーザにとっては、キーボードを操作することにより、選択した開始カーソル位置と、終了カーソル位置との間の部分信号を用いて算出された逆フィルタ係数の特性が一目で分かるので、逆フィルタ係数の特性が、想定していたものと著しく乖離しているなどの理由により、再度、開始カーソル位置と、終了カーソル位置とを選択し直して逆フィルタ係数の算出を行うか否かを判定が容易になる。
(4)表示生成部111は、開始カーソルと終了カーソルとのカーソル組を1組、表示画像230中に表示することとしていたが、これに限らず、2個以上のカーソル組を表示することとしてもよい。
【0081】
一例として、2個のカーソル組を表示画像230中に示す例について、図15〜図18を用いて説明する。
表示生成部111は、制御部115から信号データファイル名を含む波形表示指示を取得する(ステップS11)。
表示生成部111は、バッファ部106から、当該信号データファイル名で識別される信号データファイルを読み出す(ステップS12)。
【0082】
表示生成部111は、読み出した信号データファイル中の信号データ配列Sig[n]を用いて、一例として図19に示すように、原点237を原点とするx軸、y軸の直交座標上に、(x座標,y座標)として(n,Sig[n])をプロットしたグラフ234を生成する(ステップS13)。ここで、nは自然数であり、0〜Nmax−1の値を取る。
【0083】
表示生成部111は、開始カーソル235のx座標を示すSigStart[0]、終了カーソル236のx座標を示すSigEnd[0]、開始カーソル235又は終了カーソル236のいずれかを示すSigSelect[0]、開始カーソル238のx座標を示すSigStart[1]、終了カーソル239のx座標を示すSigEnd[1]、開始カーソル238又は終了カーソル239のいずれかを示すSigSelect[1]を管理する。また、表示生成部111は、制御対象となっているカーソル組が、開始カーソル235と終了カーソル236との組である第1カーソル組と、開始カーソル238と終了カーソル239との組である第2カーソル組のうちのいずれであるかを示すSigGroupを管理する。
【0084】
ここで、SigGroupが値「0」である場合、第1カーソル組を示し、値が「1」である場合、第2カーソル組を示すものとする。
表示生成部111は、SigStart[0]、SigStart[1]を0で初期化し、SigEnd[0]、SigEnd[1]をNmaxで初期化し、SigSelect[0]、SigSelect[1]を0で初期化し、SigGroupを「0」で初期化する(ステップS1014)。
【0085】
表示生成部111は、前記グラフ234に対し、一例として図19に示すように、x座標がSigStart[0]である位置に、y軸に平行な破線で示される開始カーソル235を重畳させ、x座標がSigEnd[0]である位置に、y軸に平行な破線で示される終了カーソル236を重畳させ、x座標がSigStart[1]である位置に、y軸に平行な破線で示される開始カーソル238を重畳させ、x座標がSigEnd[1]である位置に、y軸に平行な破線で示される終了カーソル239を重畳させた画像であるグラフ画像233を生成する(ステップS1015)。
【0086】
ここで、SigSelect[SigGroup]で示されるカーソルは操作の対象であることを認識できるよう赤色で表示し、他のカーソルは黒色で表示するよう表示画像を生成するものとする。
表示生成部111は、一例として図15に示すように、SigStart[SigGroup]の値を表示するカーソル位置表示画像231を生成し、SigEnd[SigGroup]−SigStart[SigGroup]の値を表示するカーソル幅表示画像232を生成し、SigSelect[SigGroup]を表示するカーソル組番号表示画像240を生成し、グラフ画像233と併せた表示画像230を生成し、表示画像230を表示制御部112が備える前記画像メモリに書き込む(ステップS1016)。
【0087】
例えば図15においては、SigGroupが「0」であるとし、開始カーソル235は、x座標がSigStart[SigGroup]の値「11060」の位置に表示されており、SigStart[SigGroup]の値「11060」が、カーソル位置表示画像231中に表示されている。
また、終了カーソル236は、x座標がSigEnd[SigGroup]の値「12084」の位置に表示されており、カーソル幅表示画像232として12084−11060の計算結果である値「1024」が表示されている。
【0088】
表示制御部112は、前記画像メモリに書き込まれた表示画像230を表示するための映像信号を生成し、表示部113に対し出力し、表示部113は、前記映像信号を受信して、表示画像230を表示する(ステップS17)。
表示制御部112は、制御部115からの指示を受け付ける(ステップS18)。
前記指示が、カーソル右移動指示であり(ステップS31:YES)、SigSelect[SigGroup]が「0」である場合(ステップS1032:YES)、SigEnd[SigGroup]がNmax未満であれば(ステップS1033:NO)、SigEnd[SigGroup]を1インクリメントし(ステップS1034)、Nmax以上であれば(ステップS1033:YES)、ステップS18に移行する。
【0089】
SigSelect[SigGroup]が「0」でない場合(ステップS32:NO)、SigStart[SigGroup]≧Nmax又はSigStart[SigGroup]≧SigEnd[SigGroup]であるか否かを判定する(ステップS1035)。ステップS1035において、否定的であると判定された場合(ステップS1035:NO)、SigStart[SigGroup]を1インクリメントし(ステップS1036)、肯定的であると判定された場合(ステップS1035:YES)、ステップS18に移行する。
【0090】
前記指示が、カーソル左移動指示であり(ステップS41:YES)、SigSelect[SigGroup]が「0」である場合(ステップS42:YES)、SigEnd[SigGroup]>0かつSigEnd[SigGroup]>SigStart[SigGroup]であるか否かを判定する(ステップS1043)。ステップS1043において、肯定的であると判定された場合(ステップS1043:YES)、SigEnd[SigGroup]を1デクリメントし(ステップS1044)、否定的であると判定された場合(ステップS1043:NO)、ステップS18に移行する。
【0091】
SigSelect[SigGroup]が「0」でない場合(ステップS1042:NO)、SigStart[SigGroup]が0より大きければ(ステップS1045:YES)、SigStart[SigGroup]を1デクリメントし(ステップS1046)、0以下であれば(ステップS1045:NO)、ステップS18に移行する。
【0092】
前記指示が選択カーソル変更指示であり(ステップS1061:YES)、選択カーソル情報SigSelect[SigGroup]が「0」である場合(ステップS1062:YES)、SigSelect[SigGroup]を値「1」で書換え、SigSelect[SigGroup]が「0」でない場合(ステップS1062:NO)、SigSelect[SigGroup]を値「0」で書換えて、ステップS1015に移行する。
【0093】
前記指示が選択範囲決定指示である場合(ステップS1065:YES)、処理を終了し、前記指示が選択範囲決定指示でない場合(ステップS1065:NO)、前記指示が選択カーソル組変更指示であれば(ステップS1067:YES)、表示生成部111は、SigGroupを、Mod(SigGroup+1,組数)で置き換えて(ステップS1068)、ステップS1015に移行する。ここで「組数」は、表示するカーソル組の数であり、本変形例では、組数=2である。
(5)上述の変形例(4)のステップS1014において、開始カーソル235、238の初期位置を「0」とし、終了カーソル236、239の初期位置をNmaxとしたが、これに限るものではなく、カーソルの初期位置は、一例として図14に示したように、利用者が操作しやすいと推測される位置に移動させることとしてもよい。
【0094】
例えば、Sig[0]〜Sig[Nmax−1]のうち、最大値を保持している配列要素(例えばSig[m])を含む所定個数(例えば1024個)の配列要素を範囲とするように、SigStart[0]とSigEnd[0]の組、又は、SigStart[1]とSigEnd[1]の組を決定してもよい。最大値を持つ配列要素がSig[m]であったとすると、SigStart[0]=(m−511)、SigEnd[0]=(m+512)のようになる。但し、SigStart[0]、SigEnd[0]は、0以上Nmax以下となるよう定める。m=50のような場合には、m−511は「0」より小さくなるので、SigStart[0]=0とし、SigEnd[0]=1024として、1024個のデータを用いるよう初期値を定めてもよいし、SigStart[0]を0とし、SigEnd[0]=m+512=562としてもよい。
【0095】
また、Sig[0]〜Sig[Nmax−1]のうち、最大値ではなく、最小値を保持している配列要素(例えばSig[m])を含む所定個数(例えば1024個)の配列要素を範囲とするように、SigStart[0]とSigEnd[0]の組、又は、SigStart[1]とSigEnd[1]の組を決定してもよい。
(6)カーソルの初期位置は、上述の変形例(5)以外に、以下に示すようなものであってもよい。
【0096】
例えば、Sig[0]〜Sig[Nmax−1]のうち、所定の閾値以上の値が所定数以上連続する範囲を示すように、SigStart[0]とSigEnd[0]の組、又は、SigStart[1]とSigEnd[1]の組を決定してもよい。
例えば、Sig[2300]〜Sig[2700]の値が、所定の閾値(例えば4000)を超えていた場合に、SigStart[0]=2300、SigEnd[0]=2700のように初期値を設定する。
【0097】
また、所定範囲の中間(本変形例では、2300〜2700の中間である2500)の前後、所定数個(例えば500個)の信号データを使うように、SigStart[0]、SigEnd[0]を設定してもよい。この場合、SigStart[0]=2000、SigEnd[0]=3000のようになる。
また、上述したように所定の閾値以上の値ではなく、Sig[0]〜Sig[Nmax−1]のうち、所定の閾値以下の値が所定数以上連続する範囲を示すように、SigStart[0]とSigEnd[0]の組、又は、SigStart[1]とSigEnd[1]の組を設定してもよい。
(7)上記の各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレィユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAM又は前記ハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、各装置は、その機能を達成する。ここで、コンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
(8)上記の各装置を構成する構成要素の一部又は全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。
(9)上記の各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なICカード又は単体のモジュールから構成されているとしてもよい。前記ICカード又は前記モジュールは、マイクロプロセッサ、ROM、RAM、などから構成されるコンピュータシステムである。前記ICカード又は前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、前記ICカード又は前記モジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしてもよい。
(10)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
【0098】
また、本発明は、前記コンピュータプログラム又は前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD―ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなど、に記録したものとしてもよい。また、これらの記録媒体に記録されている前記コンピュータプログラム又は前記デジタル信号であるとしてもよい。
【0099】
また、本発明は、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリとを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしてもよい。
【0100】
また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、又は前記プログラム又は前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(11)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【0101】
本発明の逆フィルタ係数決定方法は、機械等を用いて製品を製造する製造業等において、機械等の異常検出に利用される。
【図面の簡単な説明】
【0102】
【図1】本発明の一実施形態である異常音検出装置の構成を示すブロック図である。
【図2】バッファ部に記録する信号データファイルの構造を示す図である。
【図3】表示部に表示する表示画像の一例を示す図である。
【図4】カーソル位置決定処理の動作を示すフローチャートである。
【図5】カーソル位置決定処理の動作を示すフローチャートである。
【図6】カーソル位置決定処理の動作を示すフローチャートである。
【図7】表示部に表示する表示画像の一例を示す図である。
【図8】フィルタ係数算出処理を示すフローチャートである。
【図9】異常音検出処理を示すフローチャートである。
【図10】本発明により算出されたフィルタ係数を用いた逆フィルタの周波数特性と、従来の逆フィルタの周波数特性の一例を示す図である。
【図11】異常音検出ユニットとパーソナルコンピュータから構成する異常音検出システムの概略図である。
【図12】異常音検出ユニットの構成を示すブロック図である。
【図13】パーソナルコンピュータの構成を示すブロック図である。
【図14】フィルタ特性図と、信号波形とを併せて表示する表示画像を示す図である。
【図15】開始及び終了カーソルの組を複数表示する表示画像を示す図である。
【図16】カーソルの組を複数表示する場合のカーソル位置決定処理の動作を示す図である。
【図17】カーソルの組を複数表示する場合のカーソル位置決定処理の動作を示す図である。
【図18】カーソルの組を複数表示する場合のカーソル位置決定処理の動作を示す図である。
【符号の説明】
【0103】
101 マイクロフォン
102 変換部
103 スイッチ
104 正常音除去部
105 制御部
105 計時部
106 バッファ部
107 記録制御部
108 記録部
109 フィルタ係数演算部
110 異常音判定部
111 表示生成部
112 表示制御部
113 表示部
114 入力受付部
115 制御部
201 信号データファイル
204 信号データ配列
230 表示画像
231 カーソル位置表示画像
232 カーソル幅表示画像
233 グラフ画像
234 グラフ
235 開始カーソル
236 終了カーソル
237 原点
301 特性曲線
302 特性曲線

【特許請求の範囲】
【請求項1】
入力振動から正常振動を除去して異常振動を検出する逆フィルタの逆フィルタ係数を算出する逆フィルタ係数決定方法であって、
正常振動信号を記録する記録ステップと、
前記正常振動信号を可視化した信号波形を生成し、当該信号波形を表示する波形表示ステップと、
表示された前記信号波形を見た利用者からの指示に基づき、前記信号波形の特徴部分を含む範囲を特定する特定ステップと、
前記正常振動信号のうち前記範囲に対応する部分信号を用いて、逆フィルタ係数を算出する算出ステップと
を含むことを特徴とする逆フィルタ係数決定方法。
【請求項2】
前記特定ステップは、
前記指示を受け付ける受付ステップと、
前記信号波形のうち所定条件を満たす仮範囲を選出する仮特定ステップと、
前記信号波形の表示に前記仮範囲を示す表示を付する表示更新ステップと、
前記指示に基づき前記仮範囲を増減することにより前記範囲を特定する本特定ステップと
を含むことを特徴とする請求項1に記載の逆フィルタ係数決定方法。
【請求項3】
入力振動から正常振動を除去して異常振動を検出する逆フィルタの逆フィルタ係数を算出する逆フィルタ係数決定装置であって、
正常振動信号を記録する記録手段と、
前記正常振動信号を可視化した信号波形を生成し、当該信号波形を表示する波形表示手段と、
表示された前記信号波形を見た利用者からの指示に基づき、前記信号波形の特徴部分を含む範囲を特定する特定手段と、
前記正常振動信号のうち前記範囲に対応する部分信号を用いて、逆フィルタ係数を算出する算出手段と
を備えることを特徴とする逆フィルタ係数決定装置。
【請求項4】
前記特定手段は、
前記指示を受け付ける受付部と、
前記信号波形のうち所定条件を満たす仮範囲を選出する仮特定部と、
前記信号波形の表示に前記仮範囲を示す表示を付する表示更新部と、
前記指示に基づき前記仮範囲を増減することにより前記範囲を特定する本特定部と
を含むことを特徴とする請求項3に記載の逆フィルタ係数決定装置。
【請求項5】
前記仮特定部は、
前記信号波形における振幅が最大である点を選出する第1選出部と、
前記仮範囲として、前記信号波形における前記最大点を含む所定範囲を選出する第2選出部と
を含むことを特徴とする請求項4に記載の逆フィルタ係数決定装置。
【請求項6】
前記仮特定部は、
前記信号波形における所定の大きさ以上の振幅が所定長以上連続する前記仮範囲を選出する
ことを特徴とする請求項4に記載の逆フィルタ係数決定装置。
【請求項7】
前記仮特定部は、
記録された正常振動信号を順に読み出す読出部と、
信号が読み出される毎に、読み出された当該信号が所定値を超えるか否かを判定する判定部と、
連続して所定値を超えると判定された回数を計数する計数部と、
前記回数が所定数を超えた場合に、前記正常振動信号における連続して所定値を超えると判定された前記仮範囲を出力する出力部と
を含むことを特徴とする請求項6に記載の逆フィルタ係数決定装置。
【請求項8】
前記特定手段は、
前記信号波形のうち所定条件を満たす第1仮範囲を選出する第1仮特定部と、
前記信号波形の表示に前記第1仮範囲を示す表示を付する第1表示更新部と、
前記指示に基づき前記第1仮範囲を増減する第1本特定部と、
前記第1仮特定部により選出された範囲と異なる、前記信号波形のうち前記所定条件を満たす第2仮範囲を選出する第2仮特定部と、
前記信号波形の表示に前記第2仮範囲を示す表示を付する第2表示更新部と、
前記指示に基づき前記第2仮範囲を増減する第2本特定部と、
前記第1仮範囲と前記第2仮範囲とを合わせた前記仮範囲を出力する出力部と
を含むことを特徴とする請求項3に記載の逆フィルタ係数決定装置。
【請求項9】
前記特定手段は、
前記信号波形のうち所定条件を満たす第1範囲を特定する第1特定部と、
前記信号波形のうち所定条件を満たし、前記第1範囲と異なる第2範囲を特定する第2特定部と、
前記第1範囲及び前記第2範囲のいずれかを選択する選択部と、
前記信号波形の表示に、前記選択部により選択された範囲を示す表示を付する表示更新部と、
前記選択部により選択された範囲を前記指示に基づき増減し、当該範囲を前記仮範囲として出力する出力部と
を含むことを特徴とする請求項3に記載の逆フィルタ係数決定装置。
【請求項10】
前記記録手段は、前記正常振動信号として、正常音信号を記録する
ことを特徴とする請求項3に記載の逆フィルタ係数決定装置。
【請求項11】
入力振動から正常振動を除去して異常振動を検出する異常振動検出装置であって、
正常振動信号を記録する記録手段と、
前記正常振動信号を可視化した信号波形を生成し、当該信号波形を表示する波形表示手段と、
表示された前記信号波形を見た利用者からの指示に基づき、前記信号波形の特徴部分を含む範囲を特定する特定手段と、
前記正常振動信号のうち前記範囲に対応する部分信号を用いて、逆フィルタ係数を算出する算出手段と、
入力振動信号を受信する受信手段と、
前記逆フィルタ係数に基づく逆フィルタを用いて前記入力振動信号から正常振動信号を除去し、当該入力振動信号に含まれる異常振動信号を検出する検出手段と
を備えることを特徴とする異常振動検出装置。
【請求項12】
前記特定手段は、
前記指示を受け付ける受付部と、
前記信号波形のうち所定条件を満たす仮範囲を選出する仮特定部と、
前記信号波形の表示に前記仮範囲を示す表示を付する表示更新部と、
前記指示に基づき前記仮範囲を増減することにより前記範囲を特定する本特定部と
を含むことを特徴とする請求項11に記載の異常振動検出装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2007−107908(P2007−107908A)
【公開日】平成19年4月26日(2007.4.26)
【国際特許分類】
【出願番号】特願2005−296268(P2005−296268)
【出願日】平成17年10月11日(2005.10.11)
【出願人】(000227467)日東精工株式会社 (263)
【Fターム(参考)】