(58)【調査した分野】(Int.Cl.,DB名)
予め用意された複数の良品に係る信号から夫々算出された時間、周波数及びレベルの情報に基づく信号から、予め定められた間隔で画定された時間及び周波数毎に最大のレベルを各々抽出し、
抽出した最大の各レベルを前記良品が発生した音又は振動に係る信号のレベルに設定し、
設定した前記良品に係る信号のレベルに基づいて、レベル差の最大値を前記複数の不良品毎に算出する
ことを特徴とする請求項3に記載の検査方法。
周波数が時間経過につれて変化する音又は振動を発生する検査対象の装置を検査するために、特性を時間経過につれて変化させ得る複数のフィルタから検査用のフィルタを決定するフィルタ決定方法であって、
予め用意された装置の良品及び一又は複数の不良品夫々が発生した音又は振動に係る信号のレベル差を該複数の不良品毎に算出し、
算出したレベル差に対応する信号を複数のフィルタ夫々で処理し、
処理した信号に対応するレベル差の最大値を前記一又は複数の不良品毎に算出し、
複数のフィルタ夫々につき、前記一又は複数の不良品毎に算出したレベル差の各最大値のうち、レベル差の最小値を選択し、
複数のフィルタ夫々につき選択したレベル差の各最小値のうち、最大のレベル差に対応するフィルタを検査用のフィルタと決定する
ことを特徴とするフィルタ決定方法。
周波数が時間経過につれて変化する音又は振動に係る信号に基づいて、特性を時間経過につれて変化させ得る複数のフィルタから一のフィルタを決定する処理をコンピュータに実行させるプログラムであって、
音又は振動に係る一の信号と、一又は複数の他の信号とのレベル差を該一又は複数の他の信号毎に算出し、
特性を時間経過につれて変化させ得るフィルタを変更し、
変更した複数のフィルタ夫々で、算出したレベル差に対応する信号を処理し、
処理した信号に対応するレベル差の最大値を前記一又は複数の他の信号毎に算出し、
複数のフィルタ夫々につき、前記一又は複数の他の信号毎に算出したレベル差の各最大値のうち、レベル差の最小値を選択し、
複数のフィルタ夫々につき選択したレベル差の各最小値のうち、最大のレベル差に対応するフィルタを一のフィルタと決定する
処理をコンピュータに実行させることを特徴とするプログラム。
周波数が時間経過につれて変化する音又は振動を発生する検査対象の装置を検査する検査装置のために、特性を時間経過につれて変化させ得る複数のフィルタから検査用のフィルタを決定するフィルタ決定装置であって、
複数のフィルタを出力するフィルタ出力部と、
予め用意された装置の良品及び一又は複数の不良品夫々が発生した音又は振動に係る信号のレベル差を該複数の不良品毎に算出するレベル差算出部と、
前記フィルタ出力部が出力する複数のフィルタ夫々で、前記レベル差算出部が算出したレベル差に対応する信号を処理する信号処理部と、
該信号処理部が処理した信号に対応するレベル差の最大値を前記一又は複数の不良品毎に算出する算出部と、
前記フィルタ出力部が出力する複数のフィルタ夫々につき、前記算出部が前記一又は複数の不良品毎に算出したレベル差の各最大値のうち、レベル差の最小値を選択する選択部と、
該選択部が複数のフィルタ夫々につき選択したレベル差の各最小値のうち、最大のレベル差に対応するフィルタを検査用のフィルタと決定する決定部と
を備える
ことを特徴とするフィルタ決定装置。
【発明を実施するための形態】
【0022】
本実施の形態に係る検査装置を、図面を参照して説明する。本実施の形態に係る検査装置は、音又は振動を発生する装置を検査して、当該装置の良否判定を実行する。以下、スピーカを検査対象の装置の例に挙げて、本実施の形態に係る検査装置を説明する。
【0023】
実施の形態1
図1は、本願に係る検査装置を備える検査システムのハードウェア構成例を示すブロック図である。検査システムは、フィルタ決定装置20、測定部30、マイクロホン40及び無響箱50を含む。検査対象のスピーカ60を検査する検査装置は、フィルタ決定装置20及び測定部30から構成されている。検査装置は、フィルタ決定装置20を要部とする。
【0024】
フィルタ決定装置20は、パーソナルコンピュータを用いてなる。フィルタ決定装置20は、測定部30に低周波数から高周波数に変化する正弦波のスイープ信号に対応するデータを出力する。フィルタ決定装置20は、測定部30からスピーカ60が発生した音に対応する信号を入力する。フィルタ決定装置20は、測定部30から入力した信号に基づいて、各種処理を実行する。
【0025】
フィルタ決定装置20は、CPU21、ROM22、RAM23、ハードディスク24、ディスクドライブ25、表示部26、操作部27、通信部28及びI/O部29を含む。
【0026】
CPU21は、プログラム2Pに記述された命令セットを実行するプロセッサである。ROM22は、フィルタ決定装置20の起動時にCPU21が実行するBIOS等を記憶している。
【0027】
RAM23は、主記憶装置である。ハードディスク24は、補助記憶装置である。ハードディスク24は、測定部30が増幅したスピーカ60からの音の信号を記憶する。
【0028】
ディスクドライブ25は、外部記憶媒体の光ディスク2dから情報を読み出し、光ディスク2dに情報を記録する。表示部26は、画像を表示する表示装置である。操作部27は、ユーザから各種の入力を受け付ける入力デバイスである。通信部28は、LAN100とのインタフェースである。I/O部29は、測定部30とのインタフェースである。
【0029】
なお、CPU21は、ディスクドライブ25を介して、プログラム2Pを光ディスク2dなどの可搬記憶媒体から読み込んでもよい。CPU21は、通信部28を介して、プログラム2Pを他の情報処理装置又は記憶装置から読み込んでもよい。さらに、プログラム2Pを記憶したフラッシュメモリ等の半導体メモリ2mが、フィルタ決定装置20内に実装されていてもよい。
【0030】
測定部30は、スピーカ60にスイープ信号を入力する。
測定部30は、D/A変換器31、パワーアンプ32、計測増幅器33及びA/D変換器34を含む。D/A変換器31は、フィルタ決定装置20から入力したデジタルのスイープ信号をアナログ信号に変換し、変換したアナログ信号をパワーアンプ32に出力する。パワーアンプ32は、D/A変換器31から変換されたアナログ信号を増幅する。パワーアンプ32は、スイープ信号をスピーカ60に出力する。
【0031】
無響箱50は、高い遮音性と、吸音特性を持つ。スピーカ60と対向する無響箱50の上壁には、スピーカ60が発生する音を内部に取り入れる開口が設けられている。マイクロホン40は、無響箱50の内部にスピーカ60に正対するように設置されている。
【0032】
計測増幅器33は、マイクロホン40から出力されるアナログの信号のレベルを増幅させる。A/D変換器34は、計測増幅器33が増幅した信号をデジタル信号に変換する。A/D変換器34は、変換したデジタル信号をフィルタ決定装置20へ出力する。
【0033】
図2は、検査システムの動作の概要を示す説明図である。予め、複数のスピーカ60について聴感テストを実施し、1つの良品と、複数の不良品とを、検査用のフィルタを決定するための処理対象のサンプルとして用意する。用意した1つのスピーカ60を無響箱50に取り付ける。フィルタ決定装置20は、測定部30のD/A変換器31へ、低い周波数(例えば10Hz)から高い周波数(例えば20kHz)に一定速度で変化する正弦波のスイープ信号に対応するデータを入力する。スイープ時間は、例えば1.0秒である。スピーカ60は、D/A変換器31及びパワーアンプ32を介して、フィルタ決定装置20から入力されたデータに対応するスイープ信号に対応する音を発生する。
【0034】
マイクロホン40は、サンプル用のスピーカ60が発生した音を受音する。マイクロホン40は、計測増幅器33及びA/D変換器34を介して、信号をフィルタ決定装置20に出力する。CPU21は、測定部30から信号を入力する。CPU21は、入力した信号をサンプル用のスピーカ60に係る良品/不良品の識別情報と対応付けてハードディスク24に記憶する。検査システムは、同様の記憶処理を、用意した全てのサンプル用のスピーカ60について繰り返す。
【0035】
CPU21は、ハードディスク24に記憶した信号を、当該信号に対応するサンプル用のスピーカ60に係る良品/不良品の識別情報と共に読み出す。CPU21は、読み出した信号から、時間、周波数、レベルの3次元からなるスペクトログラムを算出し、各時間における周波数毎に最大周波数から該周波数までの該時間におけるレベルの積算をする。
図8はスペクトログラムの例、
図9は、ある時点におけるスペクトログラムの断面、つまりレベルの周波数分布例を示し、
図10はその時点における最大周波数から該周波数までのレベルの積算をしたものを示している。すべての時間での積算グラフは
図11のようになる。
図8〜
図11の詳細は、実施の形態2で説明する。CPU21は、算出した積算グラフを良/不良の別と共にハードディスク24に記憶する。CPU21は、この積算グラフ算出処理を、ハードディスク24に記憶したサンプル用のスピーカ60の信号全てについて繰り返す。
【0036】
一般的に不良品のスピーカ60は、入力信号に対して主に高域で異常音を発生する。異常音は、入力信号の基本波、2次、3次…の高調波に比べて、レベルが小さい場合が多いく低次の高調波を取り除く事が必要になるため、原則として高次高調波を通過させるハイパスフィルタを用いる。あるサンプル用のスピーカ60の信号をある時間にある周波数をカットオフ周波数に持つハイパスフィルタを通過させたレベルは、該スピーカ60の前記積算グラフの該時間の該周波数でのレベルになる。
本発明では、CPU21は、検査対象のスピーカ60を良品と不良品と明確に判別するため、良品と不良品との間でレベル差が大きくなるように、音の信号を処理するフィルタを決定する。
【0037】
CPU21は、スイープ信号に応じたスピーカ60からの信号にハイパスフィルタのカットオフ周波数を追従させるために、ハイパスフィルタのカットオフ周波数を動的に変化させる。つまり、CPU21が使用するフィルタは動的フィルタ1fといえる。動的フィルタ1fは、カットオフ周波数の時間変化で表される。
図2において、動的フィルタ1fを示すグラフの横軸は時間、縦軸は周波数である。すなわち、動的フィルタ1fは、時間及び周波数を要素とする2次元上の曲線で表現できる。また、あるサンプル用のスピーカ60の信号を該動的フィルタ1fで処理した結果のレベルグラフは、該スピーカ60の前記積算グラフを該動的フィルタ1fの曲線で切断した切断面となる。
【0038】
CPU21は、動的フィルタ1fを用いて、サンプル用の良品/不良品の双方に共通する成分を処理する。CPU21は、サンプル用の良品及び不良品に係る処理後のレベル差に基づいて、検査対象のスピーカ60を検査するためのフィルタを決定する。CPU21は、決定した動的フィルタ1fを用いて、検査対象のスピーカ60を検査する。動的フィルタ1fはCPU21で作成されるデジタルフィルタであるので、動的フィルタ1fのフィルタ特性はフィルタパラメータによって決定される。
【0039】
検査対象のスピーカ60を検査するためのフィルタの決定処理について説明する。
どのような特性変化のフィルタも許容されるのであれば、夫々の不良品の差分グラフの最大値の点の全てを通る曲線でフィルタを作ればよいが、実際には様々な制約があるのでそのようなフィルタを実現することは困難となる。フィルタの形状は、実際の検査ラインで利用可能な一定のパターンに限定して考える必要がある。一定のパターンのフィルタを複数ハードディスク24に記憶しておく。本実施例でのパターンは、時間経過につれてカットオフ周波数が低周波数から高周波数へ連続的に変化する。また、パターンには、基本波又は低次数から高次数までの複数の高調波の周波数変化に夫々追従して変化する複数のパターンがある。
なお、CPU21は、一定のパターンのフィルタをリアルタイムで複数生成し、生成した一定のパターンのフィルタ夫々を、以下の処理のために出力してもよい。
【0040】
CPU21は、用意されたフィルタから1つのフィルタを選択する。CPU21は、選択したフィルタでサンプル用の良品の積算グラフに対してフィルタ曲線で切断した切断面を取得する。該切断面は、該フィルタで良品をフィルタ処理したレベルグラフになる。
【0041】
CPU21は、選択したフィルタでサンプル用の複数の不良品の積算グラフをフィルタ曲線で切断した切断面を取得する。該切断面は、該フィルタで該不良品を処理したレベルグラフになる。
図2に、処理後の良品及び不良品のレベルグラフ1g、2gを、横軸を時間、縦軸をレベルとして、模式的に示す。
なお、CPU21は、フィルタ処理をした良品のレベルグラフ1gを、ハードディスク24に記憶しておいてもよい。
【0042】
CPU21は、処理した良品のレベルグラフと、1つの不良品のレベルグラフとの差分グラフの最大値を該不良品の該フィルタによる検出値として算出する。CPU21は、算出した検出値を不良品の識別情報と対応付けて、ハードディスク24に記憶する。CPU21は、全てのサンプル用の不良品について、検出値を算出する処理を繰り返す。
図2には、ハードディスク24に記憶された検出値のリスト200が示されている。検出値が大きいほど、不良品は良品から懸け離れていることになる。
【0043】
複数の不良品の間には、音出力特性にバラツキがある。検査対象のスピーカ60を良品と不良品とを判別するフィルタは、サンプルとして用意した不良品の全てが不良品に判定されるフィルタである必要がある。そのためには、最も良品寄りの音出力特性を有する不良品に対応するレベル差を採用することが安全側に立ち、好ましい。
【0044】
そこで、CPU21は、リスト200にある、全ての不良品夫々について算出した検出値から、最小値を該フィルタの不良検出能力値として抽出する。CPU21は、抽出した不良検出能力値を、選択したフィルタと対応付けてハードディスク24にリスト300として記憶する。CPU21は、各フィルタについて、リスト300への不良検出能力値の記憶を繰り返す。
【0045】
CPU21は、予め用意したフィルタの全てを用いて不良検出能力値を計算し尽くした場合、ハードディスク24にリスト300として記憶した複数の不良検出能力値から、最大の値に対応するフィルタを、検査用のフィルタに決定する。あるいは、CPU21は、フィルタを変更して上記の処理途中で例えば利用者が良品と不良品の分離には充分と考える不良検出能力値以上の不良検出能力値を持つフィルタが見つかった場合、そのフィルタを、検査用のフィルタに決定してもよい。これにより、検査用のフィルタを決定する処理時間の短縮を図ることができる。
【0046】
図3は、フィルタ決定処理の概要手順の一例を示すフローチャートである。
図3の手順では、複数の不良品に係る積算グラフの算出は予め終了しているものとしている。
CPU21は、未処理のフィルタを選択する(ステップS101)。CPU21は、未処理の不良品の積算グラフを選択する(ステップS102)。CPU21は、良品及び不良品に係る積算グラフを、選択したフィルタで処理する(ステップS103)。CPU21は、処理した良品のレベルグラフと、不良品のレベルグラフとの差分グラフの最大値を該不良品の該フィルタによる検出値として算出する(ステップS104)。
【0047】
CPU21は、算出した検出値を不良品の識別情報と対応付けて、ハードディスク24内のリスト200に記憶する(ステップS105)。CPU21は、全ての不良品の積算グラフについて処理が終了したか否かを判定する(ステップS106)。CPU21は、全ての不良品の積算グラフについて処理が終了していないと判定した場合(ステップS106:NO)、ステップS102へ処理を戻す。CPU21は、全ての不良品の積算グラフについて処理が終了したと判定した場合(ステップS106:YES)、ハードディスク24内のリスト200に記憶した複数の検出値から最小値を該フィルタの不良検出能力値として抽出する(ステップS107)。CPU21は、抽出した不良検出能力値を、選択したフィルタと対応付けて、ハードディスク24内のリスト300に記憶する(ステップS108)。
【0048】
CPU21は、全てのフィルタについて処理が終了したか否かを判定する(ステップS109)。CPU21は、全てのフィルタについて処理が終了していないと判定した場合(ステップS109:NO)、ステップS101に処理を戻す。CPU21は、全てのフィルタについて処理が終了したと判定した場合(ステップS109:YES)、ハードディスク24内のリスト300に記憶した不良検出能力値から最大値を抽出する(ステップS110)。CPU21は、抽出した最大値に対応するフィルタを検査用のフィルタに決定し(ステップS111)、処理を終了する。
【0049】
次に、決定したフィルタを用いて、検査対象のスピーカ60を検査する処理について説明する。
検査員は、検査対象のスピーカ60を、無響箱50の上壁に取り付ける。検査員は、フィルタ決定装置20を操作して、検査対象のスピーカ60にスイープ信号に対応する音を発生させる。マイクロホン40は、検査対象のスピーカ60からの音を受音し、受音した音の信号を、測定部30を介して、フィルタ決定装置20へ出力する。フィルタ決定装置20は、入力した信号及び検査用のフィルタに基づいて、検査対象のスピーカ60を検査する。フィルタ決定装置20は、検査対象のスピーカ60を検査した結果を、例えば表示部26に表示する。検査員は、検査対象のスピーカ60を無響箱50の上壁から取り外す。検査員は、表示部26に表示された結果に応じて、検査対象のスピーカ60を良品/不良品に分別する。以下、検査員は、上記の作業を繰り返す。
なお、検査員が行なう作業は、自動化してもよいことは勿論である。
【0050】
図4は、検査処理の手順の一例を示すフローチャートである。
CPU21は、測定部30へスイープ信号に対応するデータを出力する(ステップS1)。CPU21は、測定部30から検査対象のスピーカ60が発生した音の信号を測定部30から入力する(ステップS2)。CPU21は、入力した信号を、フィルタ決定処理で決定した検査用のフィルタでフィルタ処理する(ステップS3)。CPU21は、フィルタ処理した信号を、予め用意した検査基準データと比較する(ステップS4)。CPU21は、比較した結果に基づいて、検査対象のスピーカ60が良品か否かを判定する(ステップS5)。
【0051】
CPU21は、判定結果を表示部26に出力する(ステップS6)。CPU21は、上記の検査処理を繰り返すか否かの指示を操作部27から受け付けたか否かを判定する(ステップS7)。CPU21は、上記の検査処理を繰り返す指示を操作部27から受け付けたと判定した場合(ステップS7:YES)、ステップS1へ処理を戻す。CPU21は、上記の検査処理を繰り返す指示を操作部27から受け付けなかった場合(ステップS7:NO)、処理を終了する。なお、CPU21が検査処理を繰り返す指示を操作部27から受け付けなかった場合とは、CPU21が検査処理を停止する指示を受け付けた場合である。
【0052】
本実施の形態では、フィルタ決定装置20は、スピーカ60に低い周波数から高い周波数に変化するスイープ信号を入力している。しかし、フィルタ決定装置20は、スピーカ60に高い周波数から低い周波数に変化する逆スイープ信号を入力してもよい。
【0053】
本実施の形態では、フィルタ決定装置20は、スピーカ60にスイープ信号を入力している。しかし、フィルタ決定装置20は、固定周波数の正弦波であり、周波数が切り替わるステップ正弦波をスピーカ60に入力してもよい。かかる場合、周波数の時間変化は、単調増加又は単調減少でなくてもよい。あるいは、フィルタ決定装置20は、複数の周波数を有する合成波をスピーカ60に入力してもよい。
【0054】
本実施の形態に係る検査対象の装置は、外部から入力した信号に基づいて音を発生するスピーカ60であった。しかし、検査対象の装置は、時間経過につれて周波数が変化する音又は振動を自ら発生する装置でもよい。当該検査対象の装置は、モータ、ギヤ・ベアリング等の回転部材、エレベータの乗車かご、コンプレッサ等である。
【0055】
検査用のフィルタを決定するために、予め用意しておくパターンは、カットオフ周波数が高くなる変化の態様が時間経過につれて変化するものを含んでもよい。
図5は、カットオフ周波数が高くなる変化の態様が時間経過につれて変化するフィルタの一例を示す説明図である。なお、横軸の時間は、ミリ秒の対数である。カットオフ周波数は、最初、高次数の高調波の周波数変化に追従して変化し、途中から約一定周波数を維持する。その後、カットオフ周波数は、低次数の高調波側へ遷移するが、高調波の周波数変化からはずれている。
図5に示すようなパターンのフィルタを複数用意しておく。
【0056】
検査用のフィルタを決定するために、予め用意しておくパターンは、カットオフ周波数が時間経過につれて単調に高くなるだけでなく、極大値及び極小値を有するように変化する部分を有するものを含んでもよい。
図6は、時間経過につれてカットオフ周波数が低くなる部分を有するフィルタの一例を示す説明図である。なお、横軸の時間は、ミリ秒の対数である。
図6のフィルタの場合、カットオフ周波数は、最初、高次数の高調波の周波数変化に追従して変化し、途中から高調波の周波数より低くなり、極大値及び極小値を有するように変化する。そのため、
図6フィルタは、カットオフ周波数が時間経過につれて低くなる部分を有している。
図6に示すようなパターンのフィルタを複数用意しておく。
【0057】
本実施の形態では、動的フィルタ1fはハイパスフィルタを採用している。しかし、動的フィルタ1fは、バンドパスフィルタ、櫛形フィルタ、ローパスフィルタ等でもよい。動的フィルタ1fは、特定の周波数をカットするノッチフィルタ、特定の帯域のレベルを上げるパラメトリックイコライザ等でもよい。動的フィルタ1fにより抽出される出力は、エンベロープ出力、クレストファクト出力等でもよい。フィルタの種類に応じて、積算グラフを作成する積算方法は変化する。
【0058】
実施の形態2
実施の形態2は、良品及び不良品のスピーカ60に係る信号のレベル差を算出してから、レベル差に対応する信号を複数の動的フィルタ1fでフィルタ処理し、検査用のフィルタを決定する形態に関する。
なお、実施の形態2において、実施の形態1と同様である構成要素には同一の参照番号を付してその詳細な説明を省略する。
【0059】
図7は、実施の形態2に係る検査システムの動作の概要を示す説明図である。
サンプル用のスピーカ60に係る複数の良品及び複数の不良品へ、正弦波のログスイープ信号が入力される。正弦波のログスイープ信号は、周波数が指数関数的かつ連続的に時間変化する正弦波信号である。サンプル用のスピーカ60が発生した音に係る信号がフィルタ決定装置20に入力される。CPU21は、入力した信号をハードディスク24に記憶する。
【0060】
CPU21は、ハードディスク24に記憶した信号を、当該信号に対応するサンプル用のスピーカ60に係る良品/不良品の識別情報と共に読み出す。CPU21は、読み出した信号から、時間、周波数、レベルの3次元からなるスペクトログラムを算出し、各時間における周波数毎に最大周波数から該周波数までの該時間におけるレベルの積算をする。
図7に、良品及び不良品について夫々算出された積算グラフ1m、2mが、横軸を時間、縦軸を周波数、高さ方向の軸をレベルとして、示されている。CPU21は、算出した積算グラフ1m、2mを良/不良の別と共にハードディスク24に記憶する。CPU21は、この積算グラフ算出処理を、ハードディスク24に記憶したサンプル用のスピーカ60の信号全てについて繰り返す。
【0061】
実施の形態1では、聴感テストにより選別した1つの良品のスピーカ60における積算グラフ1mを良品の参照データとした。しかし、実施の形態2では、複数の良品のスピーカにおける積算グラフ1mから、良品を代表する参照データを算出する。
図8は、良品のスピーカ60について算出されたスペクトログラム1sの一例である。
図8のスペクトログラム1sにおいて、横軸は時間t、縦軸は周波数f、紙面に対する垂直軸はレベルを夫々示している。なお、
図8におけるレベルの大小は濃淡の違いで表現されている。
図8の下部には、参考にフィルタ決定装置20へ測定部30から入力された信号波形が示されている。
図9は、スペクトログラムのある時点におけるレベルの周波数分布例を示す説明図である。
図9の横軸はレベル、縦軸は周波数fである。
【0062】
複数の良品を区別するためのインデックスをiとした場合、スペクトログラム1s上で離散的に分布する各時点/周波数での点(t,f)におけるレベルは、次の(1)式で表される。
【0064】
レベルP(i)(t,f)は、2次元配列のデータである。
CPU21は、各良品のスペクトログラム1sにおいて、夫々の時点で最高周波数f
maxから複数の周波数の点夫々までのレベルの積算値を夫々算出して積算グラフを作成する。ある周波数の点まで積算されたレベルの積算値は、その周波数をカットオフ周波数とするハイパスフィルタの出力信号のレベルに対応する。
積算値g(i)(t,f)は、次の(2)式で表される。
【0066】
図10は、ある時点におけるレベルの積算値の周波数分布例を示す説明図である。
図10の横軸はレベル、縦軸は周波数である。
図10において、点線はレベル、実線はレベルの積算値を示している。すなわち、
図10における実線上の黒丸は、ある時点における最高周波数f
maxからある周波数の点までのレベルの積算値を示している。積算値g(i)(t,f)は、2次元配列のデータである。
図11は、積算値g(i)(t,f)の3次元グラフ、つまり積算グラフの例である。
図11の縦軸は積算値、平面方向の軸は夫々時間t及び周波数fである。
【0067】
複数の良品のスピーカ60毎に算出したレベルの積算値g(i)(t,f)夫々から、各時点/周波数点(t,f)毎に最大値を夫々抽出する。抽出した最大値G(t,f)は、複数の良品全てについてのレベル積算値の最大値であり、良品を代表するレベル積算値1mである。
検査対象のスピーカ60を良品と不良品とに判別するフィルタは、サンプルとして用意した良品の全てが良品に判定されるフィルタである必要がある。そのためには、最も不良品寄りの音出力特性を有する良品に対応するレベルの最大値を採用することが安全側に立ち、好ましい。
最大値G(t,f)は、次の(3)式で表される。
【0069】
複数の不良品のスペクトログラム2sから、良品と同様にレベルの積算値2mを算出する。複数の不良品を区別するためのインデックスをiiとした場合、スペクトログラム2s上の各時点/周波数での点(t,f)におけるレベルは、次の(4)式で表される。
【0071】
各不良品のスペクトログラム2sから、ある時点における各周波数までのレベルの積算値を夫々算出する。積算値g(ii)(t,f)は、次の(5)式で表される。
【0073】
次に、複数の良品から取得したレベル積算値の最大値G(t,f)に対する複数の不良品から取得したレベル積算値g(ii)(t,f)との比over(ii,t,f)を、複数の不良品毎に算出する。over(ii,t,f)は、デシベル差分である。対数の減算が真数の除算に対応するように、比over(ii,t,f)はレベル差に対応する。
over(ii,t,f)は、次の(6)式で表される。
【0075】
図12は、比over(ii,t,f)の計算を概念的に示す説明図である。
図12の左上に、良品に係るG(t,f)のグラフを示す。
図12の右上に、ii番目の不良品に係るg(ii)(t,f)を示す。良品と不良品とに係るレベルの差分を算出することは、比over(ii,t,f)を計算することに対応する。
図12の下部に、ii番目の不良品に関するover(ii,t,f)のグラフを示す。
【0076】
CPU21は、良品のレベル積算値1mと、複数の不良品のレベル積算値2m夫々との差分1dに対応するover(ii,t,f)を、複数の不良品毎に算出する。
図7に示すように、CPU21は、複数の不良品毎に算出した積算値の差分グラフ1dを、予め用意した複数の動的フィルタ1fの曲線で順次切断処理する。該切断面は、該動的フィルタ1fで複数の良品を処理したときのレベルの最大値と該不良品を処理したレベルとのレベル差のグラフになる。
【0077】
図13は、
図12におけるii番目の不良品に係るover(ii,t,f)のグラフ上で、不良品を良品群から判別するフィルタのカットオフ周波数の時間変化を示すカーブを示す説明図である。フィルタのカットオフ周波数は、時間tの経過に伴って変化していく。
図13におけるカットオフ周波数の変化は、
図12の下部におけるover(ii,t,f)のグラフの(t,f)平面上に、太線で示されている。ここで、不良品を良品群から判別するフィルタのカットオフ周波数の時間変化を示すカーブをカットオフカーブCと呼ぶ。
図13では、カットオフカーブCが太線で示されている。
【0078】
図14は、
図13をカットオフカーブCに沿って切断した断面図である。
図14の縦軸は、良品のレベル積算値の最大値G(t,f)と、ii番目の不良品のレベル積算値g(ii)(t,f)との差分である。
図14の横軸は、周波数である。レベル積算値は最高周波数から周波数の点までのレベルの積算値であるため、
図14は、高周波数帯域を濾波するハイパスフィルタにより、良品と不良品との間において、フィルタ処理されたレベル積算値に係るレベル差を示している。
図14における矢印は、レベル差の最大値、つまり不良品(ii)の検出値を示している。カットオフカーブCによる不良品(ii)の検出値Over(ii,C)は、次の(7)式で表される。
【0080】
図7に戻り、説明を続ける。
図7に、フィルタ処理後のレベル差1lが、縦軸をレベル、横軸を周波数として示されている。CPU21は、カットオフカーブCによる検出値Over(ii,C)を複数の不良品毎に算出する。CPU21は、複数の不良品毎に算出した各検出値を、不良品の識別情報と対応付けてハードディスク24にリスト200として書き込む。
【0081】
CPU21は、リスト200に書き込んだ各検出値の最小値、つまり不良検出能力値を抽出する。
図15は、n個の不良品の検出値Over(ii,C)から、不良検出能力値D(C)を抽出する処理を概念的に示す説明図である。
最小の検出値、すなわち不良検出能力値D(C)は、D(C)に対応するカットオフカーブCで全ての良品の積算グラフ1mと、全ての不良品の積算グラフ2mとを切り分けることができる量である。不良検出能力値D(C)は、次の(8)式で表される。
【0083】
再び
図7に戻り、説明を続ける。CPU21は、抽出した不良検出能力値D(C)を、フィルタの識別情報と対応付けて、ハードディスク24にリスト300として書き込む。CPU21は、予め用意した動的フィルタ1fを変更して、上記の処理を繰り返す。その結果、リスト300には、用意した動的フィルタ1fの数だけ不良検出能力値D(C)が書き込まれる。
CPU21は、予め用意した全ての動的フィルタ1fについて不良検出能力値D(C)の抽出処理が終了した場合、リスト300に書き込まれた各不良検出能力値D(C)から、最大の不良検出能力値D(C)に対応するフィルタを検査用のフィルタと決定する。
【0084】
CPU21は、決定した検査用のフィルタで、検査対象のスピーカ60を検査する。
CPU21は、検査対象のスピーカ60に係る信号を入力する。CPU21は、入力した信号を決定した検査用のフィルタでフィルタ処理する。CPU21は、フィルタ処理した検査対象のスピーカに係る信号と、予め用意した検査基準データとを比較する。CPU21は、比較結果に基づいて、検査対象のスピーカ60の良否を判定する。
【0085】
なお、比over(ii,t,f)は、フィルタ処理した検査対象のスピーカ60に係るレベルが良品と不良品とのいずれに対応するか判定するための検査基準データの参考データとして利用することができる。
【0086】
実施の形態2では、複数の良品のスピーカ60におけるスペクトログラム1sのレベル積算値から、良品を代表する参照データを求めた。しかし、実施の形態1と同様に、1つの良品のスピーカ60におけるスペクトログラム1sを参照データとしてもよい。かかる場合、1つの良品に係る各時点/周波数での点(t,f)におけるレベル積算値を参照データとする。
また、実施の形態1に、複数の良品のスピーカ60におけるスペクトログラム1sのレベル積算値から、良品を代表する参照データを求める手法を適用してもよい。かかる場合、複数の良品毎に各時点/周波数での点(t,f)におけるレベルを求め、各点(t,f)毎に最大のレベルを参照データとする。
【0087】
実施の形態3
実施の形態3は、最大の不良検出能力値D(C)を求めるまでの演算量を抑えて、スピーカ60の検査に用いるフィルタを決定する形態に関する。不良検出能力値D(C)が最大となるフィルタを決定するため、予め用意した多くのパターンについて不良検出能力値D(C)を算出した場合、演算量が膨大になり、フィルタの決定が現実的でなくなる。そこで、実用性が高い3種類のパターンから検査用のフィルタを決定する。なお、フィルタを決定することは、カットオフカーブCの形状を決定することに対応する。
なお、実施の形態3において、実施の形態1、2と同様である構成要素には同一の参照番号を付してその詳細な説明を省略する。
【0088】
検査用のフィルタを決定するための動的フィルタ1fは、ハイパスフィルタである。動的フィルタ1fのカットオフ周波数は、スイープ信号を入力したスピーカ60からの音に基づく信号の基本波又は高調波の周波数変化に追従して変化するものである。動的フィルタ1fのパラメータの1つは、基本波の周波数に対する高調波の周波数の倍率mである。
【0090】
bパターンの形状は、高次数の高調波に追随してカットオフ周波数が高くなり、その後より低次数の高調波に追随してカットオフ周波数が高くなる形状である。そして、bパターンの形状は、高次数の高調波からより低次数の高調波へ遷移する中間の周波数帯域で、カットオフ周波数が一定となる形状である。良品として判別されるスピーカ60であっても、例えば、
図8に示す良品のスペクトログラム1sにおいて、時間360ms〜480ms、周波数10kHzの付近に、複数の高調波で、その高周波数側における境界の周波数がほぼ一定に現れている。良品のスピーカ60であっても、時間360ms〜480ms、周波数10kHzの付近における複数の高調波を許容する検査仕様がある場合、良品と不良品とに共通する信号を遮断するフィルタの形状は、bパターンの形状が合理的である。
【0091】
カットオフ周波数は、基本波の周波数が開始周波数から周波数f0まで変化する間、次数m0の高調波の周波数に追従する。カットオフ周波数は、中間の周波数帯域において、基本波の周波数が周波数f0から周波数f1(>f0)まで変化する間、一定周波数(f0×m0)を保つ。カットオフ周波数は、基本波の周波数が周波数f1から終了周波数までの間、次数m1(<m0)の高調波の周波数に追従する。なお、f0×m0=f1×m1である。例えば、f0=500Hz、m0=7次、f1=1750Hz、m1=2次である場合、500Hz×7=1750Hz×2である。
【0092】
cパターンは、bパターンの変形例である。cパターンの形状は、カットオフ周波数がbパターンの周波数一定区間(基本波の周波数がf0からf1へ変化する区間)において一定ではなく、徐々に変化する形状である。中間の周波数帯域において、多少のノイズを発生してもよいという検査仕様のスピーカ60の場合、bパターンよりもcパターンの方が、良品と不良品との間の信号のレベル差がより大きくなることがある。そこで、cパターンの形状を考慮する。
【0093】
cパターンの場合、基本波の周波数がf0からf1へ変化する区間において、カットオフ周波数は単調増加する。時間軸と周波数軸とを有する図において、時間及び周波数を対数で表した場合、基本波の周波数がf0からf1へ変化する区間では、cパターンの形状は直線である。なお、f0×m0<f1×m1である。例えば、例えば、f0=500Hz、m0=7次、f1=3kHz、m1=2次である場合、500Hz×7<3kHz×2である。
【0094】
カットオフカーブCの形状は、他にも多くのパターンが考えられる。しかし、処理が複雑になることと、スピーカ60の異常音を検査する上では上記の3パターンで多くの場合最適化できることから、ここではカットオフカーブCの形状をa、b及びcパターンの3種類にとした。
【0095】
スピーカ60は良品であっても、スピーカ60における2次歪、3次歪等の低次歪はレベルが高い場合が多い。そのため、スピーカ60の良否を検査するためのハイパスフィルタにおけるカットオフ周波数が追従する高調波の次数mは、あまり低いものは適さない。また、この次数mが高すぎても、ハイパスフィルタのカットオフ周波数が高くなりすぎるため、ハイパスフィルタは不良品のスピーカ60が発生する異常音の周波数の信号を遮断してしまう。そこで、実施の形態3では、不良検出能力値D(C)の最大値を算出するまでの計算量を低減させるために、動的フィルタ1fのフィルタ係数を変化させるにあたり、変化させる動的フィルタ1fのカットオフ周波数が追従する高調波の次数mを予め一定の範囲に制限する。ここで、当該高調波における次数mの制限範囲の上限値及び下限値を夫々m
max及びm
minとする。なお、m
max及びm
minは、良品と不良品とを判別することができるカットオフカーブCに対応する経験値である。
【0096】
計算量の低減のために、検査対象のスピーカ60における良品と不良品とのバラツキも考慮して、1つのフィルタが良品のスペクトログラム1sと、不良品のスペクトログラム2sとを区別できるレベル差を、予め一定の範囲に制限する。ここで、レベル差の範囲の上限値及び下限値に対応する不良検出能力値D(C)を夫々D
max及びD
minとする。
【0097】
D
max及びD
minは、良品と不良品とを判別するレベル差の経験値である。例えば、レベル差が6〜10デシベルより大きい場合、良品と不良品とを判別することができることが判明している。そこで、D
maxとして例えば15デシベルが設定され、D
minとして例えば6デシベルが設定される。
【0098】
次に、フィルタ決定処理について説明する。
フィルタ決定処理の大きな流れとして、CPU21は、フィルタの形状を低周波数側から高周波数側へ向かって変化させて、不良検出能力値D(C)がD
maxを超えるフィルタを検査用のフィルタに決定する。その際、CPU21は、aパターンからフィルタ決定処理を開始する。CPU21は、aパターンについて算出したD(C)がD
maxを超えなかった場合、bパターンについてフィルタ決定処理を実行する。CPU21は、bパターンについて算出したD(C)がD
maxを超えなかった場合、cパターンについてフィルタ決定処理を実行する。
【0099】
CPU21は、D
max、D
min、m
max及びm
minを受け付ける。CPU21は、変数D0にD
minを代入する。変数D0は、複数の不良品及び複数のフィルタについて夫々算出されたD(C)がより大きな値に更新される都度、その処理時点における最大のD(C)を保持する作業変数である。CPU21は、算出したD(C)が受け付けたD
maxを超えた場合、その時点でフィルタの検索を打ち切る。これにより、処理時間の短縮を図ることができる。
【0100】
図17は、aパターンからD(C)を求める処理のイメージを示す説明図である。
CPU21は、aパターンについて、次数mにm
minを設定してD(C)を算出する。つまり、CPU21は、サンプル用の各不良品iiについてover(ii,t,f)平面上におけるm=m
minのパターン上のデータからOver(ii,C)を求める。CPU21は、全ての不良品のOver(ii,C)の中から最小値D(C)を抽出する。
【0101】
CPU21は、次数mを1だけインクリメントしたパターンについて同様に最小値D(C)を抽出する。CPU21は、抽出した最小値D(C)がD0より大きい場合、抽出した最小値D(C)をD0に代入する。CPU21は、同様の処理を次数mがm
maxになるまで繰り返す。ただし、CPU21は、処理の途中で、抽出した最小値D(C)がD
maxを超えた場合、検索を終了する。その時点で、CPU21は、aパターンのフィルタからスピーカ60を検査するフィルタを決定したことになる。
【0102】
CPU21は、aパターンについて抽出した最小値D(C)がD
maxを超えなかった場合、bパターンについて検査用のフィルタの検索を行う。その際、CPU21は、フィルタに関する演算範囲を制限する処理を実行する。
【0103】
図18は、フィルタに関する演算範囲の制限を示す説明図である。
図18に示す各図は、いずれもが横軸は時間、縦軸は周波数である。
図18の各図には、参考のためにスピーカ60が発生した音に係る基本波の周波数時間変化曲線が破線で表示されている。
図18の上部の図には、n個の不良品に関するover(ii,t,f)の分布が白抜き及び灰色の領域で示されている。白抜きの領域は、各不良品に関するover(ii,t,f)の値がaパターンにおけるフィルタ決定で得られたD0より大きい領域である。灰色の領域は、各不良品に関するover(ii,t,f)の値がaパターンにおけるフィルタ決定で得られたD0以下の領域である。白抜きの領域は、スピーカ60が発生する異常音のレベルが大きい領域に対応する。
【0104】
図18の下部の図には、n個の不良品に関するover(ii,t,f)の分布を重畳したものに、フィルタに関する演算範囲を示す領域が示されている。
図18において、破線で示されている領域の外側は、良品と不良品との信号のレベル差が小さく、フィルタを決定するために、パターンの形状を変化させる必要がない領域である。従って、CPU21は、パターンの形状を変化させる場合、破線部分の外側を、フィルタを決定する演算処理から除外する。そのために、CPU21は、不良品に関するover(ii,t,f)の分布に基づいて、演算が制限される範囲を特定する次数mの範囲(m
L,m
H)と、カットオフ周波数の範囲(fmax,fmin)を決定する。これにより、CPU21は、処理速度を向上させることができる。
【0105】
CPU21は、
図18に示した演算範囲の制限を実行した後、bパターンのフィルタについて検査用のフィルタ決定を行う。bパターンの形状は、次数m0の高調波の部分、周波数一定区間の部分及び次数m1の高調波の部分の各形状で決定される(
図16B参照)。CPU21は、これらの3つの部分を順次変更して、パターンの形状を動的に変化させる。次数m0の高調波の部分は、基本波の周波数が最低周波数からf0まで変化する部分に対応する。周波数一定区間の部分は、基本波の周波数がf0からf1まで変化する部分に対応する。次数m1の高調波の部分は、基本波の周波数がf1から最高周波数まで変化する部分に対応する。
【0106】
図19は、bパターンの形状を変更する処理のイメージを示す説明図である。次数m0の高調波の部分の形状は、当該高調波の次数で決定される。周波数一定区間の部分の形状は、一定周波数を示す線分の両端位置で決定される。当該線分の一端位置は、周波数f0と、高調波の次数m0とで決定される。当該線分の他端位置は、周波数f1と、高調波の次数m1とで決定される。次数m1の高調波の部分の形状は、当該高調波の次数で決定される。よって、bパターンの形状は、次数m0、周波数f0、周波数f1及び次数m1で決定される。bパターンの場合、f0×m0=f1×m1であることから、f1はf0×m0/m1で求められる。従って、bパターンの形状は、次数m0、周波数f0及び次数m1で決定される。
【0107】
次数m0を変化させる範囲は、m
min+1からm
maxまでである。次数m1を変化させる範囲は、m
minからm0−1までである。f0を変化させる範囲は、発生させた最低周波数から、不良品に関するレベル差に基づいて演算の制限範囲として求めたfmaxまでである。ここでの最低周波数は、スピーカ60の特性を考慮して、予め決められた周波数であり、例えば20Hzである。
【0108】
bパターンの各部分を変更する考え方を説明する。bパターンの各部分を変更する順序は、次数m1の高調波の部分、周波数一定区間の部分、次数m0の高調波の部分の順である。CPU21は、次数m0、周波数f0を固定して、次数m1をm
minからm0−1まで変化させる。次にCPU21は、周波数f0を一定値Δfだけ高くする。CPU21は、次数m0、一定値Δfだけ高くした周波数f0を固定して、次数m1をm
minからm0−1まで変化させる。次にCPU21は、周波数f0を更に一定値Δfだけ高くして、次数m1をm
minからm0−1まで変化させる。CPU21は周波数f0がfmaxに達した場合、次数m0を1だけインクリメントして、m
min+2に設定する。そして、CPU21は、次数m0、周波数f0を固定して、次数m1をm
minからm0−1まで変化させる。このように、CPU21は、次数m1、周波数f0、次数m0をこの順で順次決められた範囲の中で変化させることにより、bパターンの形状を変更する。
【0109】
図20は、bパターンの各部分を順次変更する処理の手順の一例を示すフローチャートである。
CPU21は、次数m0にm
min+1を、周波数f0に最低周波数を、次数m1にm
minを代入する(ステップS201)。この場合、既にm1=m0−1なので、CPU21は、次に次数m0にm
min+2を、周波数f0に最低周波数を、次数m1にm
minを代入する(ステップS202)。CPU21は、次数m1をインクリメントする(ステップS203)。CPU21は、m1=m0−1か否かを判定する(ステップS204)。CPU21は、m1=m0−1でないと判定した場合(ステップS204:NO)、ステップS203へ処理を戻す。CPU21は、m1=m0−1であると判定した場合(ステップS204:YES)、次数m1にm
minを代入する(ステップS205)。CPU21は、f0にΔfを加算する(ステップS206)。
【0110】
CPU21は、f0=fmaxか否かを判定する(ステップS207)。CPU21は、f0=fmaxでないと判定した場合(ステップS207:NO)、ステップS203へ処理を戻す。CPU21は、f0=fmaxであると判定した場合(ステップS207:YES)、周波数f0に最低周波数を、次数m1にm
minを代入する(ステップS208)。CPU21は、次数m0をインクリメントする(ステップS209)。CPU21はm0=m
maxか否かを判定する(ステップS210)。CPU21は、m0=m
maxでないと判定した場合(ステップS210:NO)、ステップS203へ処理を戻す。CPU21はm0=m
maxであると判定した場合(ステップS210:YES)、処理を終了する。
【0111】
なお、CPU21は、次数m0、m1を夫々変化させる範囲を、不良品に関するレベル差に基づいて求めた演算に係る次数の制限範囲(m
L,m
H)に制限する。また、CPU21は、f0×m0が変化する範囲を、不良品に関するレベル差に基づいて求めた演算に係るカットオフ周波数の制限範囲(fmax,fmin)に制限する。
【0112】
CPU21がbパターンについて最小値D(m)を求める処理を説明する。CPU21は、bパターンのフィルタ(m0,f0,m1,f1)において、パターンを3つの部分C0、C1、C01に分割する。
図21は、bパターンにおける3つの部分C0、C1、C01を示す説明図である。C0は、基本波の周波数が最低周波数からf0まで変化する区間に対応する部分(次数m0の高調波の部分)である。C1は、基本波の周波数がf1から最高周波数まで変化する区間に対応する部分(次数m1の高調波の部分)である。C01は、基本波の周波数がf0からf1まで変化する区間に対応する部分(周波数一定区間の部分)である。
【0113】
CPU21は、aパターンにおけるフィルタ決定処理の段階で、次数m
iの高調波に対応するパターン上の差分を算出する際、C0、C1に夫々対応するOver0(ii,f,mi)、Over1(ii,f,mi)を計算する(
図12参照)。CPU21は、計算したOver0(ii,f,mi)、Over1(ii,f,mi)を予めRAM23に記憶しておく。
【0114】
図22Aは、パターン上の差分値を示す説明図である。
図22Bは、C0に対応するOver0(ii,f,mi)を算出する処理を示す説明図である。
図22Cは、C1に対応するOver1(ii,f,mi)を算出する処理を示す説明図である。
図22A、
図22B及び
図22Cにおいて、夫々時間は左側から右側へ経過している。CPU21は、aパターンにおけるフィルタ決定処理の段階で、C0に対応する最大値Over0(ii,f,mi)を、入力信号の周波数変化の開始から終了へ向かって順に差分値を比較して抽出しておく。CPU21は、aパターンのフィルタ決定処理の段階で、C1に対応する最大値Over1(ii,f,mi)を、入力信号の周波数変化の終了から開始へ向かって順に差分値を比較して抽出しておく。
【0115】
ここで、CPU21は、不良品毎に、C0、C1、C01の夫々について、Over(ii,Cx)を求め、求めたOver(ii,Cx)の最大値をOver(ii,C)に設定する。Cxは、C0、C1及びC01のいずれかである。
【0116】
図23は、C0、C1及びC01に対応するOver(ii,Cx)から、最大値をOver(ii,C)に設定するイメージを示す説明図である。CPU21は、C0の区間では、Over(ii,C0)に、RAM23に記憶したOver0(ii,f,mi)を代入する。CPU21は、C1の区間では、Over(ii,C1)に、RAM23に記憶したOver1(ii,f,mi)を代入する。CPU21は、C01の区間では、算出済みのover(ii,t,F)のデータからOver(ii,C01)を求める。CPU21は、Over(ii,C0)、Over(ii,C1)及びOver(ii,C01)のうち、最大値をOver(ii,C)に設定する。
【0117】
CPU21は、全ての不良品について最大値Over(ii,C)を求め、求めた最大値Over(ii,C)から、最小値を抽出してD(C)に設定する。CPU21は、抽出した最小値D(C)がD0より大きい場合、抽出した最小値D(C)をD0に代入して、D0を更新する。CPU21は、抽出した最小値D(C)がD0以下である場合、例えば次数m1の高調波の部分についてm1を1つインクリメントすることにより、パターンの形状を変化させて、上記の処理を繰り返す。ただし、CPU21は、処理の途中で、抽出した最小値D(C)がD
maxを超えた場合、フィルタ決定処理を終了する。
【0118】
CPU21は、bパターンについて抽出した最小値D(C)の全てがD
maxを超えなかった場合、cパターンについてフィルタ決定処理を実行する。その際、CPU21は、ここまでの処理により算出した不良検出能力値の最大値であるD0に基づいて、
図18に示した演算範囲の制限を実行した後、cパターンについてフィルタ決定処理を実行する。
【0119】
図24は、cパターンの形状を変更する処理のイメージを示す説明図である。
cパターンの形状は、次数m0の高調波の部分、周波数が徐々に高くなる部分及び次数m1の高調波の部分の各形状で決定される(
図16C参照)。次数m0の高調波の部分、周波数が徐々に高くなる部分及び次数m1の高調波の部分は、夫々
図21のC0、C01及びC1に対応する。そこで、
図24の時間軸には、参考にC0、C01及びC1が添えられている。
【0120】
CPU21は、bパターンの場合と同様に、次数m0、周波数f0、次数m1を順次変化させて、cパターンの形状を変化させる。ただし、cパターンの場合、周波数f1は1つに定まらないため、CPU21は周波数f1も順次変化させて、cパターンの形状を変化させる。周波数f1を変化させる範囲は、発生させた最低周波数からfmaxまでである。ここでの最低周波数は、スピーカ60の特性を考慮して、予め決められた周波数であり、例えば20Hzである。CPU21は、周波数f1、次数m1、周波数f0、次数m0をこの順で順次決められた範囲の中で変化させることにより、cパターンの形状を変更する。
ここでの周波数f1の変化とは、周波数が徐々に高くなる部分(C01に対応する)の他端点の位置を次数m1の高調波に沿って、高周波数側へ変化させることに対応する。具体的には、CPU21は、f1×m1がf0×m0に一定値を加算した値からfmaxまで変化するように、他端点の位置を変化させる。
【0121】
cパターンの場合におけるD(C)の算出について説明する。
CPU21は、bパターンの場合と同様に、cパターンを3つの部分C0、C1、C01に分割する。CPU21は、Over(ii,Cx)を求め、その最大値をOver(ii、C)に設定する。
【0122】
CPU21は、全ての不良品について最大値Over(ii,C)を求め、求めた最大値Over(ii,C)から、最小値を抽出してD(C)に設定する。CPU21は、抽出した最小値D(C)がD0より大きい場合、抽出した最小値D(C)をD0に代入して、D0を更新する。CPU21は、抽出した最小値D(C)がD0以下である場合、cパターンの形状を変化させて、上記の処理を繰り返す。ただし、CPU21は、処理の途中で、抽出した最小値D(C)がD
maxを超えた場合、フィルタ決定処理を終了する。CPU21は、aパターン、bパターン及びcパターンの全てについて、D
maxを超える最小値D(C)が見つからなかった場合、ここまでの処理で不良検出能力値の最大値D0がD
minを超えているとき、最大値D0に対応するフィルタを検査用のフィルタと決定する。
【0123】
図25及び
図26は、フィルタ決定処理の手順の一例を示すフローチャートである。
CPU21は、D
max、D
min、m
max及びm
minを受け付ける(ステップS301)。CPU21は、変数D0にD
minを代入する(ステップS302)。CPU21は、変数Pに1を代入する(ステップS303)。変数Pは、パターンを判別するためのフラグ変数である。変数Pには、aパターンの場合には1、bパターンの場合には2、cパターンの場合には3が夫々代入される。
【0124】
CPU21は、P=1か否かを判定する(ステップS304)。CPU21は、P=1でないと判定した場合(ステップS304:NO)、D0に基づいて、フィルタに関する演算範囲を制限し(ステップS305)、ステップS306へ処理を進める。ステップS305において、CPU21は、演算範囲を特定する次数mの範囲(m
L,m
H)と、カットオフ周波数の範囲(fmax,fmin)とを決定する。CPU21は、P=1であると判定した場合(ステップS304:YES)、未処理の不良品(ii)についてOver(ii、C)を算出する(ステップS306)。CPU21は、全ての不良品についてOver(ii、C)を算出したか否かを判定する(ステップS307)。CPU21は、全ての不良品についてOver(ii、C)を算出していないと判定した場合(ステップS307:NO)、ステップS306へ処理を戻す。
【0125】
CPU21は、全ての不良品についてOver(ii、C)を算出したと判定した場合(ステップS307:YES)、D(C)を算出する(ステップS308)。CPU21は、D(C)>D0か否かを判定する(ステップS309)。CPU21は、D(C)>D0であると判定した場合(ステップS309:YES)、D0にD(C)を代入する(ステップS310)。ステップS310でD0に代入されたD(C)に対応するパターンは、検査用として決定されるフィルタの候補に対応する暫定パターンである。CPU21は、D(C)>D0でないと判定した場合(ステップS309:NO)、ステップS313へ処理を進める。
【0126】
CPU21は、D(C)≧D
maxか否かを判定する(ステップS311)。CPU21は、D(C)≧D
maxであると判定した場合(ステップS311:YES)、D(C)に対応するフィルタのフィルタ係数を出力し(ステップS312)、処理を終了する。CPU21は、D(C)≧D
maxでないと判定した場合(ステップS311:NO)、処理中のフィルタパターンに含まれる全てのフィルタについて処理を実行したか否かを判定する(ステップS313)。CPU21は、全てのフィルタについて処理を実行していないと判定した場合(ステップS313:NO)、Pの値に応じて、パターンの形状を変更し(ステップS314)、ステップS306へ処理を戻す。
【0127】
CPU21は、処理中のフィルタパターンに含まれる全てのフィルタについて処理を実行したと判定した場合(ステップS313:YES)、P=1か否かを判定する(ステップS315)。CPU22は、P=1であると判定した場合(ステップS315:YES)、Pに2を代入し(ステップS316)、ステップS304へ処理を戻す。CPU21は、P=1でないと判定した場合(ステップS315:NO)、P=2か否かを判定する(ステップS317)。CPU21は、P=2であると判定した場合(ステップS317:YES)、Pに3を代入し(ステップS318)、ステップS304へ処理を戻す。
【0128】
CPU21は、P=2でないと判定した場合(ステップS317:NO)、D0に暫定パターンに対応するD(C)が代入されているか否かを判定する(ステップS319)。CPU21は、D0に暫定パターンが代入されていると判定した場合(ステップS319:YES)、ステップS312に処理を進める。CPU21は、D0に暫定パターンに対応するD(C)が代入されていないと判定した場合(ステップS319:NO)、良品/不良品を分離可能なカットオフカーブCはない旨を出力し(ステップS320)、処理を終了する。
【0129】
本実施の形態では、CPU21は、パターンについて算出したD(C)がD
maxを超えなかった場合、決定対象のフィルタをaパターンからbパターンへ、更にはbパターンからcパターンへ変更している。しかし、CPU21は、aパターンについて算出したD(C)がD
maxを超えなかった場合、bパターンへ移行せず、その時点のD0に対応するフィルタを検査用のフィルタと決定し、フィルタ決定処理を終了してもよい。同様に、CPU21は、bパターンについて算出したD(C)がD
maxを超えなかった場合、cパターンへ移行せず、その時点のD0に対応するフィルタを検査用のフィルタと決定し、フィルタ決定処理を終了してもよい。これにより、処理時間の短縮を図ることができる。
【0130】
本実施の形態では、CPU21は、フィルタに関する演算範囲を限定した。しかし、CPU21は、フィルタに関する演算範囲を限定せずに、aパターンからbパターンへ、bパターンからcパターンへフィルタ決定処理の対象を変更してもよい。
【0131】
本願に係る検査装置によれば、音又は振動を発生する装置の仕様毎に、当該装置を検査するためのフィルタを決定することができる。
CPU21は、フィルタを動的に変更する処理を繰り返すことにより、予め用意したスピーカ60の良品及び不良品の間における信号のレベル差が最大となるフィルタを決定することができる。
【0132】
フィルタ決定装置20によれば、最大の不良検出能力値D(C)を求めるまでの演算量を抑えることができる。
フィルタ決定装置20は、受け付けたD
max及びD
minの範囲内で、フィルタの決定を実行する。そのため、フィルタ決定装置20は、計算するD(C)の数を低減することができる。また、フィルタ決定装置20は、算出したD(C)がD
maxを超えた場合、その時点でフィルタの決定を終了し、D
maxを超えたD(C)に対応するフィルタを検査用のフィルタと決定する。これにより、フィルタ決定装置20は、処理時間の短縮を図ることができる。
【0133】
フィルタ決定装置20は、aパターン、bパターン及びcパターンの3パターン内でフィルタの決定処理を実行する。フィルタ決定装置20は、限定したフィルタパターンの範囲内、かつ受け付けたm
max及びm
minの次数範囲内でパターンの形状を変更する。このような限定条件も演算量の低減に資する。更には、フィルタ決定装置20は、bパターン及びcパターンにおけるフィルタの決定において、D0に基づいて演算範囲を制限する。この演算範囲の制限も演算量を低減させることができる。
【0134】
開示された実施の形態は、全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上述の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【0135】
各実施の形態で記載されている技術的特徴(構成要件)はお互いに組合せ可能であり、組み合わせすることにより、新しい技術的特徴を形成することができる。
音又は振動を発生する装置の仕様毎に、最適な検査用のフィルタを複数のフィルタから決定して当該装置を検査することができる検査方法、検査装置、検査方法に使用するフィルタを決定することができるフィルタ決定方法、プログラム及びフィルタ決定装置を提供する。更に、特性を時間経過につれて変化させ得るフィルタを用いて、周波数が時間経過につれて変化する音又は振動を発生する装置を検査することができる検査方法及び検査装置を提供する。
検査対象の装置が発生した、周波数が時間経過につれて変化する音又は振動に係る信号を、特性を時間経過につれて変化させ得るフィルタを用いて処理して、前記装置を検査する。