以下に、本発明の実施の形態に係る駆動音診断システム、駆動音診断方法および駆動音診断システムの機械学習装置を図面に基づいて詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、実施の形態1に係る駆動音診断システムの機能構成の一例を示すブロック図である。駆動音診断システム10は、駆動音検出部11と、運転状態検出部12と、時刻同期部13と、運転モード抽出部14と、音振動時系列スペクトル取得部15と、特徴点抽出部16と、運転振動抽出部17と、要因判定部18と、を備える。
駆動音検出部11は、アクチュエータおよびアクチュエータによって駆動される機械である被駆動機械が発する音または振動を検出する。以下では、アクチュエータおよび被駆動機械が発する音または振動を駆動音というものとする。駆動音検出部11は、音または振動を検出するセンサである。音を検出するマイクロフォン、加速度センサなどの振動センサは駆動音検出部11の一例である。駆動音検出部11は、アクチュエータを駆動する駆動機器が発する音を検出してもよい。
運転状態検出部12は、駆動機器に接続されたアクチュエータの運転状態を時系列で取得する。アクチュエータの運転状態は、アクチュエータの駆動位置、駆動速度または駆動によって発生する力を含む。モータは、アクチュエータの一例である。モータの回転角度を検出するエンコーダ、リニアモータの位置を検出するリニアスケール、位置センサ、変位計、距離センサ、速度検出器、電流検出器、加速度センサ、ジャイロセンサ、力覚センサは、運転状態検出部12の一例である。
時刻同期部13は、駆動音検出部11で検出された駆動音の時系列データである音振動データと、運転状態検出部12で検出された運転状態の時系列データである運転データと、の時刻の同期を行う。一例では、時刻同期部13は、音振動データおよび運転データの基準となる時刻の差を求め、この差を用いて音振動データまたは運転データの時刻を補正し、音振動データおよび運転データのうち共通して取得された時刻間のデータを抽出することで、同期した音振動データおよび運転データを取得する。
運転データの一例は、電流、発生トルク、位置、速度の時系列データである。運転データは、駆動機器の情報であってもよいし、一部の検出可能なデータに基づく推定値であってもよい。モータの位置指令、速度指令、トルク指令、電流指令、電圧指令をモータの駆動装置が記憶し、駆動音診断システム10がモータの駆動装置からこれらを取得してそのまま運転データとしてもよいし、検出可能なデータとの比較演算またはフィルタ処理を含む推定演算によって運転データが求められてもよい。
また、運転データは、アナログ信号に限定されない。速度が指令の速度に達した時にオンとなる二値のデータは運転データの一例である。この他、運転データは、時刻と値の組である必要はない。各時刻の速度パターンを表す時刻を引数とする関数は運転データの一例である。
運転モード抽出部14は、運転状態を運転状態検出部12で検出された運転データに基づいて時刻で区切られた2つ以上の区間に区分する。具体的には、運転モード抽出部14は、運転データを解析することによって、アクチュエータの運転状態の種別を判別し、運転モードとして特定の種類のアクチュエータの運転状態となる時刻の区間を抽出する。運転モードは、時刻同期部13で音振動データと同期を行った後の運転データから運転状態を判別してもよいし、時刻同期部13で音振動データと同期を行う前の運転データから運転状態を判別してもよい。
音振動時系列スペクトル取得部15は、時刻同期部13で時刻同期を行った音振動データに対して、周波数変換を行い各時刻に対応する音振動データのスペクトルを求めた時系列スペクトルを取得する。時系列スペクトルは、算出した周波数スペクトルのパワーを周波数および時刻と対応付けて組にしたものである。音振動時系列スペクトル取得部15は、周波数変換を行う際に、運転モード抽出部14の抽出結果のうち、特定の運転モードの区間のみを周波数変換することによって、周波数変換を行う時刻を選択してもよい。一例として、駆動音が測定される可能性の低いアクチュエータが停止している状態の運転モードを周波数変換の対象から外すことができる。この場合、周波数変換処理を行うデータの量が削減されるため、演算時に使用するメモリの削減と処理時間の短縮が望める。
特徴点抽出部16は、音振動時系列スペクトル取得部15で求めた時系列スペクトルのパワーの周波数および時刻に対する波形が、定められた条件を満たすときに、その点を特徴点として抽出する。特徴点抽出部16は、特徴点の周波数、時刻、パワー、特徴点の波形、特徴点の時刻における運転データを特徴点データとして組にする。
運転振動抽出部17は、時刻同期を行った運転データから振動成分を抽出し、その周波数または振幅を含む振動データを取得する。
要因判定部18は、駆動音の要因として発生する現象毎に定められたその現象に伴って発生する特徴点の含まれる数値範囲である要因判定条件と、特徴点抽出部16で抽出された特徴点データと、を比較することによって駆動音の発生要因を判定する。このとき、要因判定条件は、駆動音の要因である発生する現象毎に予め定められたその現象に伴って発生する振動データの含まれる数値範囲を含むものであってもよい。この場合には、要因判定部18は、要因判定条件と、特徴点抽出部16で抽出された特徴点データおよび運転振動抽出部17で抽出された振動データと、を比較することによって駆動音の発生要因を推定する。
なお、装置の異常毎に特徴点の含まれる数値範囲を規定した場合には、被駆動機械のすべての種類に対して、装置の異常原因別の特徴点の含まれる数値の範囲を求めなければならない。また、被駆動機械の構成を変更した場合にも同様に、装置の異常原因別の特徴点の含まれる数値の範囲を求めなければならない。多種類の被駆動機械が存在し、また被駆動機械の構成も多種類の変更のバリエーションが存在するので、これらのすべてについて装置の異常原因別の特徴点の含まれる数値範囲を求めるのは現実的ではない。
しかし、実施の形態1では、装置の異常毎ではなく、駆動音の要因として発生する現象毎に、特徴点の含まれる数値範囲を定めている。つまり、特徴量を、モータの回転速度の値などの特定の駆動パターンで規定するのではなく、駆動パターンに依らない条件式、例えばモータの回転速度を変数とした条件式で表現している。そのため、被駆動機械が異なる場合、あるいは被駆動機械の構成を変更した場合でも、駆動音の要因が同じであれば、発生する現象も同じであり、被駆動機械の種類または構成に依らずに同じ要因判定条件を使用することができる。その結果、装置の異常毎に特徴点の含まれる数値の範囲を規定する場合に比して、診断の準備に要する時間を短くすることができ、また汎用的に駆動音の診断を実施することができる。
特徴点データは、特徴点の周波数、時刻、パワー、特徴点の波形、および特徴点の時刻における運転データを組にしたものである。そのため、音または振動についての情報だけではなく、アクチュエータもしくは被駆動機械の位置または速度についての情報が含まれる。つまり、要因判定部18では、駆動音の発生の要因を判定する際に、アクチュエータもしくは被駆動機械の位置または速度も含めて判定することになるので、アクチュエータもしくは被駆動機械の位置または速度に依存する異常の要因を容易に特定することが可能となる。
また、図1において、時刻同期部13、運転モード抽出部14および運転振動抽出部17は、診断が必要とする性能または装置構成によって、適宜、駆動音診断システム10に含めてもよいし、駆動音診断システム10から除去してもよい。一例では、音振動データと運転データとを同一の計測器またはデバイスで取得する場合に、取得するタイミングが同一のAD(Analog to Digital)変換器を使用することで、取得するデータの同期をとることができる。つまり、時刻同期部13を設けることなく音振動データと運転データとの同期を行うことができる。この場合、時刻同期部13を除去することによって、駆動音診断システム10で使用するメモリの削減と処理時間の短縮が望める。
図2は、実施の形態1に係る駆動音診断システムを昇降機に適用した場合のハードウェア構成の一例を示す図である。図2に示されるように、診断対象100は、アクチュエータであるモータ110と、被駆動機械120と、モータ110を駆動する駆動装置130と、を備える。また、この診断対象100に、駆動音検出部11、運転状態検出部12および演算処理部140を備える駆動音診断システム10Aが設けられる。
モータ110は、駆動指令と回転情報との差分に基づき電機子巻線の電流を制御するサーボモータである。モータ110は、モータ110を駆動する機器からエネルギまたは電気信号を受け取ることによって動力を発生させるアクチュエータであればよい。この例では、モータ110は、駆動装置130によって制御される。ただし、駆動装置130によって制御されるモータ110の状態量は、電流に限定されない。油圧、空圧、熱、超音波は、駆動装置130により制御されるモータ110の状態量の一例である。また、モータ110は、回転力を発生させるものに限定されず、並進方向に駆動させるリニアモータでもよい。
被駆動機械120は、モータ110の回転に応じて上下方向に駆動対象を搬送する昇降機である。被駆動機械120は、モータ110を架台に固定するブラケット121と、モータ110で発生した回転力を増幅してボールねじ123に伝達するギアボックス122と、モータ110の回転を上下方向の運動に変換するボールねじ123と、ギアボックス122とボールねじ123とを接続するカップリング124と、を備える。
また、昇降機は、ボールねじ123の回転により上下方向に駆動されるスライダ125と、スライダ125に固定され、ワークを搭載するステージ126と、スライダ125の運動を摺動自在に上下方向に案内するリニアガイド127と、ベアリングを介してボールねじ123を回転自在にリニアガイド127に固定するブラケット128と、を備える。
ここでは、被駆動機械120がボールねじ123を有する昇降機である場合を例示したが、被駆動機械120は、モータ110の回転に応じて、音または振動が発生する機械であればよい。ねじ、ベルト、ギア、カム、リンク機構、ベアリングもしくはシール、またはこれらの要素を組み合わせた機械は、被駆動機械120の一例である。
駆動装置130は、モータ110にケーブル151を介して接続される。駆動装置130は、モータドライブ131と、モータ制御機器132と、表示器133と、を備える。モータドライブ131は、モータ110を駆動する動力をモータ110に供給する。また、モータドライブ131は、モータ制御機器132から伝送された駆動指令に従い、モータ110を駆動する。
モータ制御機器132は、モータドライブ131に指令位置または指令速度などの電気信号を送ることによって、モータドライブ131がモータ110へ供給する電流の量およびタイミングを制御する。表示器133は、駆動音診断システム10Aおよび診断対象100を含むシステム全体の各種状態を表示し、使用者に通知する。
実施の形態1において、モータドライブ131は、駆動音検出部11と運転状態検出部12とに接続され、駆動音検出部11および運転状態検出部12とモータ制御機器132との間の通信を中継する機能を有する。
また、モータ制御機器132は、モータドライブ131にモータ110の位置または速度のパターンなどを含む駆動指令を与えるコントローラである。モータ制御機器132は、PLC(Programmable Logic Controller)、モータ駆動用CPU(Central Processing Unit)、DSP(Digital Signal Processor)、パルス発生器などを備える制御機器である。
さらに、表示器133は、駆動音診断システム10Aを含むシステム全体の状態をモータドライブ131、モータ制御機器132、または演算処理部140の少なくとも一つから通信で取得し、使用者に見やすい形式で表示を行う。表示器133は、液晶ディスプレイを内蔵していてもよい。表示器133をシステムに含めることによって、演算処理部140で駆動音の診断を実行した後、通信を介して駆動音の診断の結果を表示器133に表示し、使用者に分かりやすく通知することができる。
駆動装置130は、少なくとも一つのモータ110を駆動する装置であればよく、本実施の形態の一部または複数を組み合わせて構成してもよい。
演算処理部140は、ソフトウェアとして後述の駆動音診断システム10Aの診断処理を実行することのできる処理装置である。実施の形態1では、モータ制御機器132に内蔵されるマイクロコンピュータのCPUが演算処理部140の機能を実現する。図3は、実施の形態1による演算処理部のハードウェア構成の一例を示すブロック図である。演算処理部140は、プロセッサ141と、メモリ142と、を有する。プロセッサ141とメモリ142とは、バスライン143を介して接続される。CPU、GPU(Graphics Processing Units)はプロセッサ141の一例である。
図4は、実施の形態1による図2の演算処理部の機能構成の一例を模式的に示すブロック図である。演算処理部140は、時刻同期部13と、運転モード抽出部14と、音振動時系列スペクトル取得部15と、特徴点抽出部16と、運転振動抽出部17と、要因判定部18と、を、マイクロコンピュータのCPUが実行するソフトウェアとして備える。なお、図1および図2と同一の構成要素には同一の符号を付して、その説明を省略している。
図2では、演算処理部140は、モータ制御機器132に内蔵される構成が示されているが、実施の形態はこの構成に限定されない。演算処理部140が、駆動装置130の他の機器であるモータドライブ131に内蔵されてもよいし、表示器133に内蔵されてもよい。また、モータ制御機器132に別のマイクロコンピュータを取りつけて演算処理部140としてもよい。さらには、駆動装置130と独立した別の機器として接続されていてもよい。
駆動音検出部11は、診断対象100の発する駆動音を検出するマイクロフォンである。検出した駆動音は、ケーブル152および駆動装置130を経由して、演算処理部140に送信される。図2の例では、駆動音検出部11は昇降機に固定されている。しかし、駆動音検出部11は、診断対象100の駆動音を検出できればよく、設置方法は、被駆動機械120に固定されることに限定されない。駆動音検出部11は、モータ110に固定されてもよいし、駆動音を検出できる程度の距離で被駆動機械120から離して設置されてもよい。
診断の対象とする現象の発音場所が限定されている場合、マイクロフォンを発音場所に隣接させて配置する、あるいは指向性のマイクロフォンを使用するなどの手段で、集音対象となる範囲または集音可能な範囲を限定してもよい。集音を限定することによって、診断を妨げる周囲の雑音を減らし誤診断を減少させることができる。
また、駆動音検出部11として、複数のマイクロフォンを用いることもできる。複数のマイクロフォンで同一の音または振動を集音することにより、雑音による誤診断を減らすことができる。
さらに、録音機を使用して、診断対象100が時系列に発する駆動音を音振動データとして記録してもよい。スマートフォンまたはボイスレコーダは録音機の一例である。この他、カメラなどで動画を撮影し、音部分のみ取り出して音振動データとしてもよい。
また、駆動音検出部11に時系列に発せられる駆動音を音振動データとして記憶する記憶部を設け、必要に応じて上位の演算装置へ記憶した音振動データを送信する方式としてもよい。この場合、駆動音診断を行わないときには、駆動音検出部11と演算処理部140との間の通信が行われず、駆動音診断を実施するときに、駆動音検出部11が記憶した時系列の音振動データがまとめて送信される。このような構成とすることで、駆動音検出部11と演算処理部140との間の通信に係る処理を削減することができる。
運転状態検出部12は、モータ110に取りつけられ、モータ110の回転角度を検出するエンコーダである。エンコーダが検出した回転角度のデータは、運転状態としてケーブル153および駆動装置130を経由して演算処理部140に送信される。
運転状態検出部12の設置個所は、モータ110に固定される場合に限定されない。運転状態検出部12は、モータ110が駆動する機械である被駆動機械120の駆動部に固定されてもよい。駆動音検出部11と同様に、運転状態検出部12に検出した時系列の運転状態を運転データとして記憶する記憶部を設け、必要に応じて、上位の演算装置へ記憶した運転データを送信する方式としてもよい。
演算処理部140は、ケーブル152,153を介して駆動音検出部11が検出した駆動音と、運転状態検出部12が検出した運転状態と、を受け取り、駆動音の要因を診断する。
演算処理部140は、駆動音検出部11と運転状態検出部12と相応のデータのやりとりを行うため、データ遅延のない高速のネットワークで駆動音検出部11および運転状態検出部12と接続されている環境が望ましい。
次に、診断対象100の動作を説明する。被駆動機械120の昇降機の使用者は、昇降機で図示しないワークを搬送するため、モータ110の駆動指令をモータ制御機器132に入力する。モータ制御機器132は、使用者が入力した駆動パターンおよび動作タイミングを含む情報に基づき、モータドライブ131へ駆動指令を送信する。モータドライブ131は、受信した駆動指令に従い、モータ駆動電流を制御し、モータ110を駆動する。昇降機は、動力源であるモータ110が回転することで、ボールねじ123が回転し、ボールねじ123に接続されたスライダ125、およびスライダ125に接続されたステージ126が上下に移動する。
一例では、昇降機の使用者は、上述の動作によって、ステージ126の位置がリニアガイド127の鉛直下方に移動しているときに、ワークをステージ126に搭載する。ステージ126は、モータ110が回転することで、リニアガイド127の鉛直上方へ移動する。この移動に伴い、昇降機はステージ126に搭載したワークを搬送する。
診断対象100は、モータ110によって駆動される際に駆動音を発する。具体的には、診断対象100は、モータ110のトルク脈動、ボールねじ123の並進および捩じり剛性、カップリング124の接続剛性、ギアの噛み合い剛性、機械の移動、変形または衝突、リニアガイド127とスライダ125との間の摺動摩擦などに起因した駆動音を発する。診断対象100が発した駆動音は駆動音検出部11で検出され、モータ110の回転角度は運転状態検出部12で検出され、ケーブル152,153を介してモータドライブ131、モータ制御機器132および演算処理部140に送信される。ただし、送信方法は必ずしも有線である必要はなく、無線または記録媒体を介してもよい。
表示器133は、適宜モータ制御機器132との間で通信を行い、運転状態検出部12が検出したモータ110の回転角度、診断対象100を含むシステム全体の異常の有無を含む使用者が必要とする各種情報を表示器133に表示する。
実施の形態1では、時刻同期部13、運転モード抽出部14、音振動時系列スペクトル取得部15、特徴点抽出部16、運転振動抽出部17および要因判定部18は一つのハードウェアである演算処理部140上に構成されているが、別々のハードウェアに分割して構成されるようにしてもよい。一例として、時刻同期部13を演算処理部140から分離し、モータドライブ131のマイクロコンピュータ上のソフトウェアとして構成することができる。この場合、モータ制御機器132と比べて高速で制御処理を行うモータドライブ131で時間的要求の厳しい時刻同期の処理が行われ、モータ制御機器132の演算処理部140で相対的に時間的制約の少ない運転モード抽出部14、音振動時系列スペクトル取得部15、特徴点抽出部16、運転振動抽出部17および要因判定部18の処理が行われる。これによって、演算処理部140の必要とされる性能を低減することができ、演算処理能力の低いデバイスでも駆動音の要因の診断を実現することが可能となる。
また、各機能の実現はマイクロコンピュータのCPU上のソフトウェアによる実現に限定されず、ASIC(Application Specific Integrated Circuits)、FPGA(Field Programmable Gate Array)またはCPLD(Complex Programmable Logic Device)などの電子回路を用いてもよい。
次に、診断対象100の発する音または振動を対象にした駆動音診断システム10Aでの駆動音の診断手順について説明する。図5は、実施の形態1に係る駆動音診断方法の処理手順の一例を示すフローチャートである。実施の形態1では、上述のとおり、モータ110の駆動により被駆動機械120を駆動したときに、機械の移動、変形、衝突、剛性、摩擦等に起因して駆動音が発生する。また、駆動音は、モータ110の駆動方法によって音圧の大小および周波数が異なる。そこで、実施の形態1では、被駆動機械120が発する駆動音の診断方法を説明する。
駆動音診断システム10Aの駆動音検出部11は、駆動音を検出し(ステップS11)、運転状態検出部12は、モータ110の運転状態を検出する(ステップS12)。
時刻同期部13は、駆動音検出部11からの駆動音を時系列の音振動データとして取り込む(ステップS13)。図6は、実施の形態1による音振動データの一例を示す図である。この図において、横軸は、時刻を表し、縦軸は振幅を表している。
また、時刻同期部13は、運転状態検出部12からの運転状態を時系列の運転データとして取り込む(ステップS14)。図7は、実施の形態1による運転データの一例を示す図である。この図において、横軸は、時刻を示し、縦軸は、回転角度、回転速度、電流を示している。図7では、運転データとして、ボールねじ123の基準となる箇所からのモータ110の回転角度Po、モータ110の回転速度wおよびモータ電流iが示されている。
ここで、音振動データの取得と運転データの取得とは同一の時刻間のデータを取り込む必要がある。ただし、同一の時刻間であれば取り込むデータの取得時刻が異なってもよいし、一部データの取得した時刻が同一の時刻間とは異なってもよい。
また、診断対象100の発する音または振動の周波数について、その帯域が何らかの知見により予見される場合には、対象の周波数帯域まで音振動データおよび運転データのサンプリングを間引くことが望ましい。間引き処理によって、使用するメモリ量および処理時間を削減することができる。間引き処理を行う場合、駆動音検出部11および運転状態検出部12の処理よりも後の処理で音振動データの周波数変換が行われるため、ノイズ除去フィルタによるフィルタ処理が行われることが望ましい。ローパスフィルタ、ハイパスフィルタ、バンドパスフィルタ、ノッチフィルタ、バンドエリミネイトフィルタは、ノイズ除去フィルタの一例である。また、ノイズ除去フィルタとして、例示したフィルタを単独または複数適用してもよい。このようにすることで、間引きによる折り返し雑音を低減する効果が期待できる。
ついで、時刻同期部13は、音振動データおよび運転データの同期処理を行う(ステップS15)。図8は、実施の形態1による音振動データおよび運転データの同期処理の手順の一例を示すフローチャートである。
最初に、音振動データおよび運転データのそれぞれの基準時刻の差を取得する(ステップS31)。ここで基準時刻とは、各データで時刻0とする時刻である。音振動データと運転データとが同期されていない場合、各データの時刻0とするタイミングは個別に設定されることから、データの取得時刻が同一であっても実際に取得したタイミングが異なる場合がある。そこで、各データにおいて時刻0とするタイミングの実際の時刻の差を求めることで、各データの時刻を補正する。
基準時刻の差を求める方法としては、予めデータを取得するタイミングを一定の時刻差になるよう設計し、その一定の時刻差を基準時刻の差とする方法が挙げられる。また、共通のマスタクロックに事前にアクセスして各データの取得タイミングを同一とし、基準時刻の差を0とする方法も挙げられる。または、データの取得を開始するタイミングの共通のマスタクロックにおける時刻をタイムスタンプとして記憶し、音振動データおよび運転データのタイムスタンプの差を基準時刻の差とする方法も挙げられる。
図9は、実施の形態1による音振動データと運転データとを同期させる手順を説明するための図である。図9の例では、音振動データDaの時刻0はデータの取得時刻であり、運転データDoの時刻0はデータの取得時刻であるものとする。音振動データDaの時刻0は、基準時刻でのt1であるとし、運転データDoの時刻0は、基準時刻でのt2とする。この場合、基準時刻の差Δtはt2−t1である。
ついで、求めた基準時刻の差を基に各データの取得時刻を補正する(ステップS32)。具体的には、音振動データおよび運転データのうち、先に取得を開始したデータの各データの取得時刻に、求めた基準時刻の差を補正として加える。
図9の例では、先に取得を開始したデータは、音振動データDaである。そのため、音振動データDaの取得時刻t1に基準時刻の差Δtを加えたものが運転データの基準時刻t2となる。
図8に戻り、音振動データと運転データとが共通して取得した時刻間を算出する(ステップS33)。具体的な算出方法の一例は、前述の処理で後から取得を開始したデータの取得開始時刻から、音振動データおよび運転データの最後の取得時刻のうち早いタイミングの取得時刻までを、共通して取得した時刻間とする方法である。図9の例では、運転データDoの取得開始時刻t2から、音振動データDaの最後の取得時刻t3まで、が共通して取得した時刻間Δtcになる。
そして、算出した共通で取得した時刻間でない、共通していない時刻のデータを破棄する(ステップS34)。図9の例では、時刻t2よりも前の音振動データDaと時刻t3よりも後の運転データDoとを破棄する。以上によって、音振動データと運転データとを同期させることができ、音振動データおよび運転データの同期処理が終了する。
図5に戻り、運転モード抽出部14は、時刻同期を行った運転データに基づき被駆動機械120の運転状態を推定し、運転モードを抽出する(ステップS16)。実施の形態1では、被駆動機械120の運転モードを、停止中、定速運転中または加減速中の3つに分割する。
<停止中>
モータ110の回転が停止している区間を停止中と定める。ここで、モータ110の回転が停止しているとは、一定の時間、運転状態検出部12で検出するモータ110の回転角度のデータの変化量の和が特定の閾値に収まることをいう。このとき、回転角度のデータの変化量の和が特定の閾値に収まっている区間を位置が停止している区間として定める。条件に含まれる一定の時間は、音振動データおよび運転データの検出周期の平均値に応じて定めればよい。
<定速運転中>
モータ110の回転速度が一定となり、かつ、停止中でない区間を定速運転中と定める。ここで、速度が一定であるとは、停止中と同様に一定の時間、速度のデータの変化量の和が特定の閾値に収まることをいう。このとき、速度のデータの変化量の和が特定の閾値に収まっている区間を速度が一定である、予め定められた時間よりも長い時間を区間として定める。
<加減速中>
停止中でも定速運転中でもない区間を加減速中として定める。駆動方向に対して、加速度が正のときを加速中、加速度が負のときを減速中と区別してもよい。図10は、図7の運転データを運転モードで分割した一例を示す図である。この例では、運転モードは、時刻0からt11までの間が加減速中であり、時刻t11からt12までが定速運転中であり、時刻t12からt13までが加減速中であり、時刻t13以降が停止中である。
図5に戻り、音振動時系列スペクトル取得部15は、時刻同期部13が時刻同期を行った音振動データに対して、周波数変換を行い各時刻における音振動データのスペクトルを算出する(ステップS17)。音振動データのスペクトルは、算出した周波数スペクトルのパワーを周波数および時刻と対応付けて組にした時系列のスペクトルデータである。
周波数変換は、短時間フーリエ変換(Short-Time Fourier Transform:STFT)またはウェーブレット変換により行うことが望ましい。これらの手法によって時系列スペクトルを求めるために、フィルタ設計などの手間および処理を軽減することができる。
ここで診断対象100の発する駆動音の周波数について、その帯域が、何らかの知見により予見される場合は、周波数変換の前に予見される帯域内の周波数成分を抽出するフィルタを音振動データに適用してもよい。フィルタの適用によって、より正確に駆動音の診断を行うことが可能となる。
実施の形態1では、音振動時系列スペクトル取得部15は、時刻同期を行った音振動データのうち、運転モード抽出部14が抽出した定速運転中の期間に対応する音振動データのみに周波数変換を行い、他の期間のデータは破棄する。
図11は、時刻、周波数およびパワーの3軸による3次元グラフにて、図6の音振動データを周波数変換した時系列のスペクトルデータの一例を示す図である。この図で、縦軸はパワーを示し、縦軸に垂直な面内における2つの直交する軸は時刻および周波数を示している。
図5に戻り、特徴点抽出部16は、音振動時系列スペクトル取得部15で求めた時系列データで表現される音振動データのスペクトルに対して、そのスペクトルのパワーの周波数および時刻が定められた条件となる特徴点を抽出する(ステップS18)。また、特徴点抽出部16は、この抽出した特徴点についての特徴点データを生成する(ステップS19)。特徴点データは、特徴点の周波数、時刻、パワー、波形および特徴点の時刻における運転データを組にしたものである。
特徴点抽出部16で特徴点を抽出する際に使用される条件の一例は、頂点、峰、稜線、鞍点である。特徴点として頂点を取得する場合について説明する。
まず、時系列の音振動データのスペクトルはノイズを含むことから、時刻軸と周波数軸に対してローパスフィルタを適用する。ローパスフィルタの時定数は、音振動データのサンプリング周期と周波数変換分解能により決定される。また、ローパスフィルタを適用する代わりに、時系列のスペクトルにヒルベルト変換を適用してもよい。
次に、ローパスフィルタを適用した後の時系列のスペクトルについて、パワーの閾値を決定し、閾値よりパワーが大きい領域と、閾値よりパワーが小さい領域と、に分ける。時系列のスペクトルの中央値はパワーの閾値の一例である。
その後、閾値よりパワーが大きい点x=(tx,fx,px)の中から、次の4つの点を取得する。ここで、tx,fx,pxは、それぞれ点xでの時刻、周波数およびパワーを示している。
(1)周波数がfxで、取得時刻がtxの次の時刻tx+1の点x1(tx+1,fx,p1)
(2)周波数がfxで、取得時刻がtxの一つ前の時刻tx-1の点x2(tx-1,fx,p2)
(3)取得時刻がtxで、周波数がfxの次の周波数fx+1の点x3(tx,fx+1,p3)
(4)取得時刻がtxで、周波数がfxの一つ前の周波数fx-1の点x4(tx,fx-1,p4)
次に、上記4つの点x1,x2,x3,x4に元の点xを加えた計5つの点のパワーを比較する。5つの点の中で点xが他の4つの点よりもパワーが大きいとき、すなわち5つの点の中で他の4つの点x1,x2,x3,x4に囲まれる点xがパワー最大の点となるとき、点xを頂点の候補とする。なお、この例では、点xと、点xを中心として、時刻軸方向に隣接する2つの点および周波数軸方向に隣接する2つの点と、を用いてパワーが最大となる点を抽出する場合を示したが、実施の形態がこれに限定されるものではない。すなわち、時刻軸および周波数軸によって形成される平面上で点xを囲む複数の点と、点xと、を用いて、複数の点に囲まれる点xのパワーが最大となる場合に、点xをパワーが最大の点として抽出する方法であればよい。
最後に、頂点の候補をパワーが大きい順に並べ、大きい方から一定の数の点を極大として抽出する。
ここで、候補となる点をパワーの大きい順に並べ、大きい方から一定の数だけ取得したものを頂点としてもよいし、パワーが予め定められた閾値を超える全ての候補となる点を頂点としてもよい。また、これらの手法を組み合わせてもよい。
このように時系列のスペクトルのパワーの周波数および時刻に対する波形の頂点を特徴点として取得することにより、処理量の少ない手法で後述の要因診断による計算量を軽減することができる。
特徴点の時刻で運転データを取得していない場合には、特徴点の時刻に最も近い時刻の運転データを用いることによって、あるいは特徴点の時刻前後の複数の時刻の運転データを基に特徴点の時刻の運転データを補間することによって、特徴点の時刻の運転データを定めることができる。
図12は、時刻、周波数およびパワーの3軸による3次元グラフにて、図11の時系列のスペクトルデータから抽出した音の頂点の一例を示す図である。この図には、上記で説明した方法によって抽出された頂点1,2,3が示されている。
図5に戻り、運転振動抽出部17は、時刻同期を行った運転データから振動成分を抽出し、振動データを取得する(ステップS20)。振動成分の周波数、振幅または位相は、振動データの一例である。この処理は、ステップS17の音振動時系列スペクトル取得処理と独立に実施してもよい。
振動成分の抽出手法の一例は、定速運転中の運転データの波の山の頂点から次の山の頂点までの時間を求める方法である。
次に、要因判定部18は、ステップS19で生成された特徴点データおよびステップS20で取得された振動データを、駆動音の要因毎に登録した要因判定条件と比較することによって、駆動音の発生要因を判定する(ステップS21)。ここで駆動音の要因毎に登録する各要因判定条件は、特徴点データについては、駆動音の要因であるモータ110または被駆動機械120に発生する現象毎に、この現象に伴って発生する特徴点の含まれる周波数および時刻の少なくとも1つと、上記時刻におけるアクチュエータであるモータ110の駆動位置、駆動速度または駆動により発生する力である運転データと、の組み合わせを多次元データとしたときの数値範囲を定めたものである。振動データについては、駆動音の要因としてモータ110または被駆動機械120に発生する現象毎に、この現象に伴って発生する振動成分が含まれる数値範囲を定めたものである。
要因判定部18は、特徴点データについては、取得した特徴点データを要因毎の数値範囲と比較することで、音振動データの発生要因を決定する。また、要因判定部18は、振動データについては、取得した振動データを要因毎の数値範囲と比較すること、つまり、運転データの振動成分と音の頂点とを比較することで、振動データの発生要因を決定する。
一例として、リニアガイド127に汚れが付着し、スライダ125とリニアガイド127との間の摩擦が増加して擦過音が発生する場合には、発生する擦過音は、スライダ125が特定の位置区間内にあるときのみ発生する。そこで、特徴点の発生する時刻におけるモータ110の位置が特定の位置、または一定の幅の区間P内に集中する場合に、診断対象100は、区間Pで音が発生していると要因判定部18は判定する。ここで区間Pの幅は、時系列の運転データにおける位置のデータの最大値と最小値との差に対する割合により決定することができる。また、この要因判定条件は、特徴点の時刻におけるモータ110の位置の分布具合が、特定の位置に集中することが検査可能な条件であればよい。例えば、一定の幅の区間Pより外れた特徴点の数もしくはその割合、特徴点の時刻における位置の平均と分散、または特徴点における周波数と位置の相関係数を算出し、算出した値が予め定められた範囲内となることを検査すればよい。
また、他の例として、カップリング124で接続する二軸の中心がずれている場合には、カップリング124の回転数の2倍の周波数に特徴的な音が発生することが知られている。そこで、特徴点の発生した時刻における運転データのモータ110の速度から、ギアボックス122の変換比を乗ずることによって、カップリング124の回転速度を算出し、算出した回転速度と特徴点の周波数が2倍の正比例の関係にあるときに、カップリング124で接続する二軸の中心がずれていると要因判定部18は判定する。このとき、モータ110の速度の代わりに、運転データとしてモータ110の電流を取得し、値を累積することで、速度の代替としてもよい。
さらに他の条件の例として、機械がモータ110の駆動により機械共振する場合には、機械共振を励起する特定の速度vで、特定の共振周波数fの共振音が発生する。そこで、特徴点の発生する時刻におけるモータ110の回転速度が特定の速度、または一定の幅の区間Vに集中し、かつ特徴点の周波数が特定の周波数、または一定の幅の区間Fに集中するときに、診断対象100は、回転速度vで機械共振による周波数fの音が発生していると要因判定部18は判定する。
さらには、運転振動抽出部17で取得した振動の周波数と機械共振による周波数fが発生する特徴点の時刻の周期が同一である場合には、モータ110の回転によって、一定の間隔でモータ110の振動成分が機械共振を励起していると要因判定部18は判定する。つまり、運転データの振動成分と、音の頂点とを比較することで、駆動の振動成分によって機械共振が定期的に加振され、共振が励起される現象が要因判定部18によって判定される。
このように要因判定部18は、登録された要因判別条件を用いて、特徴点抽出部16で抽出された特徴点データに対して、あるいは特徴点データおよび運転振動抽出部17が抽出した振動データに対して、検査をすることで、アクチュエータもしくは被駆動機械120の位置または速度に依存する駆動音の要因を判別する。登録する要因判別条件は、あらかじめ類似する条件を整理して二分木探索として検査をしてもよい。このようにすることで、要因の判別で検査する条件の数を減らし、判別時間の短縮が図れる。以上で、駆動音診断方法の処理が終了する。
実施の形態1による駆動音診断システム10,10Aは、アクチュエータもしくは被駆動機械120が発する駆動音についての時系列の音振動データと、アクチュエータの運転状態についての時系列の運転データと、を同期させ、運転モードを抽出する。また、音振動データを時間周波数解析して得られる時系列の音振動データのスペクトルから特徴点を抽出し、特徴点の周波数、時刻、パワー、波形および特徴点の時刻における運転データを組にした特徴点データを生成する。そして、特徴点データを予め用意した要因判別条件と比較することによって、駆動音の発生要因を判別した。このように、音振動データと運転データに基づき駆動音の発生要因を診断するので、被駆動機械120への異物の付着などによる駆動音の発生箇所を特定することができ、アクチュエータもしくは被駆動機械120の位置または速度に依存する異常原因を容易に判定することができる。さらに、アクチュエータまたは被駆動機械120の速度に応じて発生する音の周波数が変化する原因を判別することもできる。さらには、装置全体が振動しているような場合でも、音振動が運転によるものであるかを判別することができる。
また、駆動音診断システム10,10Aは、特徴点の音振動データと運転データとその発生時刻に基づき音または振動の発生要因を診断する。そのため、診断対象の隣で大きな稼働音を発する装置が存在する場合であっても発生時刻と運転データとの因果関係から誤診断を抑制することができる。
さらに、駆動音診断システム10,10Aは、音振動データの周波数スペクトルと運転データとを組み合わせて音の発生要因を診断するので、音振動データのスペクトルの変化を判定する際に、運転パターンの変化による音振動データのスペクトルの変化の影響を除去することができる。特に、ワークの条件により運転パターンが変化する場合であっても、音振動データのスペクトルへの影響を運転データによって除去することができるため、駆動音診断システム10,10Aは適切な診断を実施することができる。
また、駆動音診断システム10,10Aは、音振動データを時間周波数解析して求めた特徴量を、駆動パターンに依らない条件式に代入することで、駆動音の発生要因を診断する。このため、正常時または異常時の運転データを予め用意する必要がない。従って、駆動機器または機械の構成を変更した場合でも、汎用的かつ即座に駆動音の診断を実施することができる。
カップリング124で接続する二軸の中心がずれている場合を例に挙げて説明する。この音は、カップリング124の回転速度の周波数の2倍の周波数に特徴的な音が発生することが知られている。機械の使用方法の変更によって、駆動パターンが、毎秒10回転のモータ110の回転速度から毎秒20回転のモータ110の回転速度へと変わったものとする。特許文献1に記載の技術では、異常を検知する場合の音のピーク周波数の閾値を、駆動パターンごとに設定しなければならない。ピーク周波数の閾値の一例は、駆動パターンの変更前の場合は次式(1)で示され、駆動パターンの変更後の場合は次式(2)で示される。
変更前のピーク周波数=10×ギアボックス122の変換比×2±誤差[Hz] ・・・(1)
変更後のピーク周波数=20×ギアボックス122の変換比×2±誤差[Hz] ・・・(2)
一方、本実施の形態では、カップリング124のずれで発生する音の特徴量であるピーク周波数は、次式(3)で示される。
ピーク周波数=回転速度の周波数×ギアボックス122の変換比×2±誤差[Hz] ・・・(3)
つまり、(1)式および(2)式を含むカップリング124のずれで発生する音のピーク周波数を、モータ110の回転速度を変数とした条件式で表現しており、駆動パターン毎、この場合にはモータ110の回転速度毎に条件式を予め用意しておく必要がない。そして、回転速度の周波数は、取得した運転データから求めることができるので、(3)式を使用することで、どのような運転パターンの場合でもカップリング124のずれを判定することが可能になる。すなわち、音の特徴量である周波数が駆動パターンに依らない条件式に代入して判別されることになる。なお、ここでは、カップリング124で接続する二軸の中心がずれている場合に発生する音について説明したが、他の要因についても同様に、振動データを時間周波数解析して求めた特徴量を、駆動パターンに依らない条件式に代入することで、駆動音の発生要因を診断することができる。
さらに、被駆動機械120の発する駆動音を基にその要因を診断する。駆動音を用いて診断することによって、機械剛性の低い場合などでも機械を選ばずに診断することができる。
また、駆動音診断システム10,10Aは、音振動データを時間周波数解析した結果を用いて、音または振動の要因を診断する。時間周波数解析を行うことによって、センサの誤検知またはノイズによる要因診断の誤りを減らすことができる。
さらに、駆動音診断システム10,10Aは、音振動データを時間周波数解析して求めた特徴量を基に駆動音の要因を診断する。これによって、診断の対象となるデータを削減し、処理時間を軽減することができる。また、周波数を用いることによって、駆動音の原因の推定が可能となる。
また、駆動音診断システム10,10Aは、運転データに基づき運転モード抽出部14が機器の運転状態を推定し、運転モードを抽出する。そして、定速運転中の期間に対応する音振動データのみに周波数変換を行い、アクチュエータの駆動が安定し難い加減速中の音振動データを破棄することができる。したがって、加減速中の音振動データも使用する場合に比して、診断の精度を改善するとともに、診断に適さない音振動データを破棄することで、演算処理で使用するメモリ量と処理時間とを削減することができる。
さらに、駆動音診断システム10,10Aは、運転データに基づき、被駆動機械120が動作していない期間などを判定し、動作していない期間の音振動データを省くことで、駆動によらない音による誤検知を防ぐことができる。さらに、被駆動機械120が動作していない状態の周波数変換を省略することにより処理コストを軽減することができる。
さらにまた、駆動音の原因を調査する場合に、調査したい駆動音が含まれる運転モードを特定することで、他の現象による駆動音の影響を排除することができる。特に、複数のアクチュエータが設けられる場合に駆動音の原因となるアクチュエータを推定することができる。
また、駆動音診断システム10,10Aは、運転モード抽出部14が一定の時間、運転データである速度のデータの変化量の和が特定の閾値に収まるときに定速運転中であると定める。このようにすることで、アクチュエータの速度が一定の幅に収まる状態では、被駆動機械120の発する駆動音が安定し、均質の状態となり易いので、より正確に音の要因を判定することができる。また、速度を特定せずに安定した状態の音を抽出することができるため、駆動パターンが異なった場合でも定速運転中であれば同じ要因診断をすることができる。さらに、要因推定のために望ましい、アクチュエータまたは被駆動機械120の複数の速度で安定したときの音を抽出することができる。
また、駆動音診断システム10,10Aは、運転データから振動成分を抽出する運転振動抽出部17を備えるので、要因判定部18は振動成分と特徴点の発生時刻とを比較することができる。これによって、駆動の振動成分により機械共振が定期的に加振され、共振が励起される現象を判定することができる。
また、駆動音診断システム10,10Aは、特徴点と特徴点の時刻におけるモータ110の位置の分布具合が、特定の位置に集中することを検出する。このようにすることで、検出された特徴点が運転データに依存する要因で発生した特徴点であるか否かを判定することができる。
また、駆動音診断システム10,10Aは、特徴点を時系列スペクトルのパワーが周波数と時刻に対する波形について頂点となる点を特徴点として抽出する。抽出によって診断を行う点数を減らすことで、要因判定部18で行う処理を軽減することができる。スペクトルの頂点と運転データとの相関係数を計算することにより、検出された頂点が運転データに依存する要因で発生したものであるか否かを判別することができる。
また、駆動音診断システム10,10Aは、被駆動機械120が発した駆動音の要因を判定し、表示器133を通じて昇降機の使用者に通知する。このようにすることで、昇降機の使用者は、被駆動機械120の駆動音に問題があることを検知し、診断結果を基に適切な対応をとることができる。
実施の形態2.
図13は、実施の形態2に係る駆動音診断システムをピッキングユニットに適用した場合のハードウェア構成の一例を示す図である。この例では、診断対象200は、ベルトコンベア225上を流れるワーク291を別のベルトコンベア226へ移し替えるピッキングユニットである。
図13に示されるように、診断対象200は、複数のモータ211,212,213,214およびアクチュエータ215と、被駆動機械220と、駆動装置230と、を備える。この診断対象200に、駆動音診断システム10Bが設けられる。駆動音診断システム10Bは、駆動音検出部11と、運転状態検出部12と、無線ネットワーク機器240と、サーバ装置250と、ユーザ端末260と、ネットワーク機器270と、を備える。サーバ装置250とユーザ端末260との間は、通信回線280を介して接続される。なお、被駆動機械220において、上下方向をZ方向とし、Z方向に垂直な面内で、ベルトコンベア225,226の延在方向をY方向とし、Y方向およびZ方向に垂直な方向をX方向とする。
被駆動機械220は、ピッキングユニットである。被駆動機械220は、リニアレール221と、ボールねじ222と、リニアガイド223と、ヘッド224と、2つのベルトコンベア225,226と、を備える。
リニアレール221は、リニアモータであるモータ212の駆動方向を固定するレールである。この例では、リニアレール221は、並行して配置される2つのベルトコンベア225,226の上部に、Y方向に延在して配置される。リニアレール221には、モータ212、ボールねじ222およびリニアガイド223を介してヘッド224が接続される。モータ212を駆動したときのモータ212の可動方向は、リニアレール221の延在方向に限定される。図13の例では、モータ212の可動方向は、X方向に限定される。
ボールねじ222は、モータ211に接続され、モータ211の回転によってZ方向にヘッド224を駆動させる。リニアガイド223は、ボールねじ222の駆動方向をZ方向に限定するガイドである。リニアガイド223は、モータ211およびボールねじ222と締結され、モータ212の可動部に固定される。これによって、ボールねじ222はモータ212の駆動によってリニアレール221に沿って駆動される。
ヘッド224は、ボールねじ222の駆動によって、Z方向に駆動されるステージである。ヘッド224は、Y方向に延在した形状を有し、下部にワーク291を保持する機構を有するアクチュエータ215を有する。アクチュエータ215は、真空吸着機構によってワーク291を保持する真空パッドである。アクチュエータ215で保持したワーク291は、ボールねじ222によって上下に移動が可能となる。ワーク291は、ピッキングユニットのピッキング対象である。
ベルトコンベア225は、Y方向の正側から負側にワーク291を供給するフィーダである。ベルトコンベア225には、モータ213が接続される。モータ213の回転によって内蔵されたベルトが駆動されることによって、ベルト上のワーク291が運搬される。
ベルトコンベア226は、Y方向の正側から負側にワーク291を運搬するアンローダである。ベルトコンベア226には、モータ214が接続される。モータ214の回転によって内蔵されたベルトが駆動されることによって、ベルト上のワーク291が運搬される。
モータ211は、ボールねじ222に接続される。モータ211は、駆動装置230によって制御された電流を受け取り、軸を回転させるサーボモータである。
モータ212は、リニアレール221に接続される。モータ212は、駆動装置230によって制御された電流を受け取り、X方向にモータ212を駆動するリニアサーボモータである。
モータ213は、ベルトコンベア225に接続され、モータ214は、ベルトコンベア226に接続される。モータ213,214は、駆動装置230からパルス状の電気信号を受け取り、軸を回転させるステッピングモータである。
アクチュエータ215は、駆動装置230から電気信号を受け取り、ワーク291の吸着または脱着を行う複数の真空パッドである。吸着または脱着の動作によって、ピッキングを行うワーク291を保持または解放する。
駆動装置230は、複数のモータドライブ231,232,233と、モータ制御機器234と、を有する。
モータドライブ231は、モータ211にケーブルで接続され、モータ211の回転角度を参照しながら駆動する動力をモータ211に供給する。モータドライブ232は、モータ212にケーブルで接続され、モータ212の位置を参照しながら駆動する動力をモータ212に供給する。モータドライブ233は、モータ213,214にケーブルで接続され、パルス状の指令をモータ213,214に送信する。
モータ制御機器234は、モータドライブ231,232,233を統括し、各モータ211,212,213,214の駆動を制御する。モータドライブ231,232,233およびモータ制御機器234はケーブルによって接続され、通信によって相互の情報を交換することができる。また、モータ制御機器234は、アクチュエータ215と図示しないケーブルによって接続され、アクチュエータ215によるワーク291に対する吸着、脱着を電気信号によって制御する。ワーク291に対する吸着または脱着を行うので、真空ポンプはアクチュエータ215の一例である。真空ポンプが動作することで、ワーク291に対する吸着が行われ、真空ポンプが動作しないことで、ワーク291に対する脱着が行われる。
駆動音検出部11は、被駆動機械220に隣接して配置され、診断対象200が発する音を検出するマイクロフォンである。駆動音検出部11には、通信部241Aが設けられる。通信部241Aの一例は、無線通信装置である。駆動音検出部11は、検出した駆動音を、音を検出した時刻であるタイムスタンプと組にして、通信部241Aを介してサーバ装置250に送信する。
運転状態検出部12は、駆動装置230にケーブルを介して接続され、駆動装置230の情報を運転状態として取得するロガーである。運転状態検出部12は、駆動装置230と適宜通信を行い、運転状態を含む各種データを取得し、記録する。運転状態検出部12は、診断対象200の運転状態として、モータ211,212,213,214の速度指令、およびアクチュエータ215の吸着状態を取得し、時刻同期部13に出力する。吸着または脱着の2値データは、吸着状態の一例である。
運転状態検出部12には、通信部241Bが設けられる。通信部241Bの一例は、無線通信装置である。運転状態検出部12は、取得した運転状態を、運転状態を取得した時刻であるタイムスタンプと組にして、通信部241Bを介してサーバ装置250に送信する。
図13では、複数軸のモータ211,212,213,214およびアクチュエータ215に対して、1台の駆動音検出部11および1台の運転状態検出部12が設けられる場合が示されているが、複数の駆動音検出部11または複数の運転状態検出部12が設けられる構成としてもよい。特に、遮蔽などによって他のモータの駆動音による干渉を排除する構成を有する被駆動機械220の場合には、それぞれのモータ211,212,213,214およびアクチュエータ215に対して駆動音検出部11を設けることで、より正確な診断が期待できる。
無線ネットワーク機器240は、通信部241A,241Bとの間で無線通信を行う装置である。無線ネットワーク機器240は、通信部241Cを有する。無線ネットワーク機器240および通信部241A,241B,241Cによって、無線LAN(Local Area Network)が構築され、無線ネットワーク機器240は、通信部241A,241B,241Cのアクセスポイントとなる。また、無線ネットワーク機器240は、同時にルータの役割も有し、各端末と通信回線280によるネットワークとの通信を中継している。なお、通信部241A,241B,241Cおよび無線ネットワーク機器240は、必要に応じて、通信部241A,241B,241Cおよび無線ネットワーク機器240を含む無線設備間の時刻の同期を行う。これは駆動音検出部11および運転状態検出部12で使用する時刻を正確な時刻とするためである。
実施の形態2では、音振動データおよび運転データを用いて要因判別を行う機能処理部は、サーバ装置250と、ユーザ端末260と、に分散して設けられる。サーバ装置250とユーザ端末260とは通信回線280を介して接続される。
サーバ装置250は、被駆動機械220について駆動音についての要因判別の処理の実行をユーザ端末260から指示されると、被駆動機械220から取得した駆動音の時系列データである音振動データおよび運転状態の時系列データである運転データを用いて特徴点データを含む装置データを生成する処理を行う。
図14は、実施の形態2によるサーバ装置の機能構成の一例を模式的に示すブロック図である。サーバ装置250は、通信回線280によるネットワーク上に設置された情報処理装置である。サーバ装置250は、時刻同期部13、運転モード抽出部14、音振動時系列スペクトル取得部15および特徴点抽出部16の機能を有する。すなわち、サーバ装置250は、サーバ装置250上のアプリケーションとして、時刻同期部13と、運転モード抽出部14と、音振動時系列スペクトル取得部15と、特徴点抽出部16と、を備える。なお、実施の形態2では、運転振動抽出部17が省略される構成を例示している。
また、サーバ装置250は、駆動音検出部11と運転状態検出部12との間、およびユーザ端末260との間で通信を行う通信部251を備える。
さらに、サーバ装置250は、装置データ記憶部252を備える。装置データ記憶部252は、RDBMS(Relational Database Management System)またはNot only SQLなどのデータベースである。サーバ装置250は、駆動音検出部11および運転状態検出部12からネットワークに送られた駆動音および運転状態を含む装置データをデータベースに収集し、必要に応じて加工した後、記憶する。一例として、実施の形態1で説明したように、音振動データおよび運転データの同期を取り、音振動データについて時系列のスペクトルデータを取得し、このスペクトルデータから特徴点を抽出し、特徴点の周波数、時刻、パワー、波形および特徴点の時刻における運転データを組にした特徴点データを含む装置データが装置データ記憶部252に記憶される。
図15は、実施の形態2による装置データのレコードの一例を示す図である。装置データの1つのレコードは、登録時刻と、運転モードと、特徴点データと、運転データと、を含む。なお、サーバ装置250に収集されたデータをディープラーニングなどによって分析することにより、より精度の高い要因の判別を行うことができる。
ユーザ端末260は、被駆動機械220の駆動音についての要因判別をサーバ装置250に指示し、サーバ装置250から受け取った装置データを用いて要因判別の処理を行い、その結果を表示する。ユーザ端末260は、被駆動機械220の使用者が所持する情報処理装置である。ユーザ端末260の一例は、ラップトップ型またはデスクトップ型でのパーソナルコンピュータである。
図16は、実施の形態2によるユーザ端末の機能構成の一例を模式的に示すブロック図である。ユーザ端末260は、実施の形態1で説明した要因判定部18の機能を有する。すなわち、ユーザ端末260は、ユーザ端末260上のアプリケーションとして、要因判定部18を備える。
また、ユーザ端末260は、通信部261と、入力部262と、表示部263と、を備える。通信部261は、通信回線280を介してサーバ装置250との間で通信を行う。一例として、使用者によって入力部262から入力された要因判別の処理の実行の指示をサーバ装置250に送信し、サーバ装置250から装置データを含む種々の情報を受信する。また、通信部261は、駆動音検出部11および運転状態検出部12に接続し、駆動音を時系列データにした音振動データおよび運転状態を時系列データにした運転データを取得することもできる。
入力部262は、使用者との間の入力インタフェースである。キーボードまたはマウスは入力部262の一例である。入力部262から被駆動機械220の要因判別の処理の実行の指示の入力などが行われる。
表示部263は、被駆動機械220の要因判別の処理の実行の際に必要な情報を表示する。液晶ディスプレイは表示部263の一例である。表示部263には、要因判別の結果またはネットワークを介して取得した装置データなどが表示される。
ネットワーク機器270は、被駆動機械220に設けられる駆動音検出部11および運転状態検出部12、サーバ装置250およびユーザ端末260の間の通信を中継する通信装置である。ルータはネットワーク機器270の一例である。
図13に示されるように、ネットワークを介して駆動音診断システム10Bを構成することで、被駆動機械220が設置される工場とは異なる遠隔地であっても駆動音の診断を行うことができる。
駆動音の診断を行うサーバ装置250およびユーザ端末260は、上記したように情報処理装置によって実現される。図17は、サーバ装置およびユーザ端末のハードウェア構成の一例を示すブロック図である。サーバ装置250およびユーザ端末260は、演算装置401と、メモリ402と、記憶装置403と、通信装置404と、入力装置405と、表示装置406とを有する。演算装置401と、メモリ402と、記憶装置403と、通信装置404と、入力装置405と、表示装置406とは、バスライン407を介して接続される。
演算装置401は、演算処理を行うCPUをはじめとしたプロセッサである。メモリ402は、演算装置401が演算処理の途中で使用するデータを格納するワークエリアとして機能する。記憶装置403は、コンピュータプログラム、情報などを記憶する。通信装置404は、ネットワークに接続される他の装置との間の通信機能を有する。入力装置405は、操作者からの入力を受け付ける。入力装置405は、キーボード、マウスなどである。表示装置406は、表示画面を出力する。表示装置406は、モニタ、ディスプレイなどである。なお、入力装置405と表示装置406とが一体化されたタッチパネルが用いられてもよい。
図14に示される時刻同期部13、運転モード抽出部14、音振動時系列スペクトル取得部15および特徴点抽出部16の機能は、演算装置401が記憶装置403に格納されたコンピュータプログラムを読み出して実行することにより実現される。
また、図16に示される要因判定部18の機能は、演算装置401が記憶装置403に格納されたコンピュータプログラムを読み出して実行することにより実現される。
次に、診断対象200の動作を説明する。ピッキングユニットの使用者は、ピッキングユニットでワーク291を搬送するため、モータ211,212,213,214およびアクチュエータ215の駆動指令をモータ制御機器234に入力する。一例として、使用者は、ユーザ端末260からモータ制御機器234に対する指令を入力する。そして、ネットワーク機器270、通信回線280、サーバ装置250、無線ネットワーク機器240、通信部241C、通信部241Bを介して、モータ制御機器234に指令が送信される。モータ制御機器234は、入力された指令に従い、モータドライブ231,232,233に対して、駆動指令を生成し、送信する。
モータドライブ231,232,233は、受信した駆動指令に従い、モータ駆動電流を制御し、モータ211,212,213,214およびアクチュエータ215を駆動させる。
モータ211が駆動することで、モータ211に接続されたボールねじ222が回転し、ボールねじ222に接続されたヘッド224およびアクチュエータ215がZ方向に移動する。
モータ212が駆動することで、モータ212に接続されたリニアガイド223と、モータ211と、モータ211に接続された機器が、X方向に移動する。
モータ213が駆動することで、ベルトコンベア225が回転し、ベルトコンベア225上のワーク291がY方向の正側から負側に向かって移動する。同様に、モータ214が駆動することで、ベルトコンベア226が回転し、ベルトコンベア226上のワーク291がY方向の正側から負側に向かって移動する。
アクチュエータ215は、ベルトコンベア225の上を移動するワーク291を、アクチュエータ215の直下に接触するタイミングで吸着することにより、ワーク291を保持する。これによって、吸着後のモータ211の駆動によりアクチュエータ215が上方向に移動したときも、ワーク291がアクチュエータ215に接触した状態を保持することができる。
その後、モータ211が回転することにより、アクチュエータ215を上方向に移動する。このとき、ワーク291はアクチュエータ215に吸着されているため、アクチュエータ215の上昇とともにワーク291も上昇し、ベルトコンベア225から離れた状態となる。
次に、モータ212をY方向の正側に駆動することにより、ワーク291はベルトコンベア226の直上へ移動する。その後、再びモータ211を回転することにより、ワーク291をベルトコンベア226に載せる。アクチュエータ215は、保持したワーク291がベルトコンベア226上に接触するタイミングでワーク291を解放することにより、ワーク291をベルトコンベア226上に載せる。アクチュエータ215を解放した後、モータ211およびモータ212を駆動させ、アクチュエータ215を開始時の位置に戻す。最後にモータ214を回転させることにより、ベルトコンベア226のY方向負側に向かってワーク291を搬出する。
以上説明した動作の過程で、診断対象200は駆動する際に駆動音を発する。診断対象200が発生した駆動音およびモータ211,212,213,214の回転角度のそれぞれは、駆動音検出部11および運転状態検出部12にて収録および取得され、無線通信によって、サーバ装置250に送信される。
サーバ装置250は、随時無線ネットワーク機器240を通じて、駆動音検出部11および運転状態検出部12と通信を行い、駆動音および運転状態を含む診断対象200に関する各種情報を取得し、装置データ記憶部252に情報を格納する。装置データ記憶部252に格納する前処理として、時刻同期部13、運転モード抽出部14、音振動時系列スペクトル取得部15および特徴点抽出部16は、取得した時系列データの音振動データおよび運転データに対して処理を実行し、運転モードと特徴点データを算出する。装置データ記憶部252は、時刻同期部13、運転モード抽出部14、音振動時系列スペクトル取得部15および特徴点抽出部16により算出した特徴点データと、特徴点の時刻の同期された運転データと、その他診断対象200に関する必要な情報を格納する。
ユーザ端末260は、使用者の求めに応じて、システムの異常の有無など、使用者が必要とするシステムの各種情報を、サーバ装置250を通じて取得し、ユーザ端末260の表示部263に表示する。また、使用者は、サーバ装置250の装置データ記憶部252に記憶されたデータベースを用いて、診断対象200および駆動音診断システム10Bの保守、運用に必要な分析を行うことができる。
次に、実施の形態2おける駆動音診断システム10Bにおける駆動音の診断手順について説明する。なお、基本的な駆動音の診断手順については実施の形態1の場合とほぼ同様であるが、以下では、実施の形態1との相違点を中心に説明する。
実施の形態2では、サーバ装置250の時刻同期部13は、駆動音検出部11および運転状態検出部12で組とされたタイムスタンプを用いて、音振動データと運転データとの同期を行う。これにより通信の品質が悪いなどの理由で通信のリアルタイム性が確保できない場合においても、音振動データおよび運転データの同期を行うことが可能となる。
また、サーバ装置250の運転モード抽出部14などにおいて特定の時刻間のデータを必要とする場合に、タイムスタンプにより指定された時刻間のタイムスタンプをもつデータが抽出されるものとする。この方式で抽出することにより、音振動データおよび運転データの取得周期が異なる場合でも、同期されたデータとして解析を行うことが可能となる。
音振動データおよび運転データの検出周期が異なる場合の他の手法としては、同一の周期となるようフィルタ処理を行った後に、データを間引く方法、あるいは逆に間のデータを線形補間などの手法によって補間する方法が考えられる。
また、運転モード抽出部14は、複数のモータ211,212,213,214およびアクチュエータ215のうちどのモータが主で動作するのかによって工程を分割して運転モードを設定する。具体的には、運転モード抽出部14は、運転データを基に、モータ211,212,213,214の速度指令とアクチュエータ215の圧着状態のデータとから、どのモータ211,212,213,214またはアクチュエータ215が動作しているのかを判別し、運転モードを決定する。一例では、ワーク搬入中ではモータ213が主に動作し、ワーク吊上中ではモータ211,212が主に動作し、ワーク搬出中では主にモータ214が動作し、ポンプ操作中ではアクチュエータ215が主に動作する。そこで、一例では、運転モード抽出部14は、ワーク搬入中、ワーク吊上中、ワーク搬出中、およびポンプ操作中に運転モードを分割する。
ユーザ端末260の要因判定部18は、特徴点データを、要因判定条件であるサーバ装置250で生成された数値範囲と比較し、駆動音の要因を判別する。サーバ装置250における数値範囲の生成方法としては、知見により要因と推定されるパラメータを基に数値範囲を生成してもよいし、運転データおよび音振動データを基にした機械学習などによって数値範囲を生成してもよい。また、要因判定条件を要因判定部18で判別する直前にサーバ装置250で動的に生成してもよい。この場合には、より喫緊の事例を基にした要因診断が行えるため、より精度の高い診断を実行することができる。
なお、実施の形態2では、図1のように、運転振動抽出部17が設けられない構成となっている。そのため、要因判定部18は、振動データを用いず、特徴点データを用いて要因の判別を行う。
実施の形態2による駆動音診断システム10Bは、音振動データおよび運転データを時間周波数解析して求めた特徴点データを、運転モード毎にサーバ装置250で生成した数値範囲と比較することで、駆動音の発生要因を診断する。このため、正常時または異常時の運転データを予め用意する必要がなく、駆動機器または機械の構成を変更した場合でも、汎用的かつ即座に駆動音の診断を実施することができる。
また、実施の形態2による駆動音診断システム10Bによれば、複数のモータ211,212,213,214およびアクチュエータ215によって駆動される被駆動機械220が発する駆動音の要因を即座に判定することができる。特にどのモータにより駆動される部分に原因があるかの判別が容易となる。これによって、被駆動機械220の駆動音に問題がある場合、使用者は、その要因から適切な対処をとることができ、その対処に要する時間を短縮することができる。
実施の形態3.
図18は、実施の形態3に係る駆動音診断システムにおける要因判定部の機能構成の一例を示すブロック図である。実施の形態3による駆動音診断システムは、実施の形態1における演算処理部140の要因判定部18を、駆動音の要因判定について学習済みの学習器を用いて駆動音の要因を判別する要因判定部18Aへと換えたものである。なお、以下では、実施の形態1と同一の構成要素には、同一の符号を付してその説明を省略し、実施の形態1と異なる部分について説明する。
要因判定部18Aは、学習結果保存部31と、要因推論部32と、を備える。学習結果保存部31は、特徴点抽出部16によって抽出された特徴点データに対する駆動音の要因を推定するための機械学習を予め行った学習結果を保存する。要因推論部32は、学習結果保存部31の学習結果に基づいた演算処理を実行する。
要因判定部18Aは、特徴点抽出部16によって抽出された特徴点データを入力とし、学習結果保存部31の学習結果に基づいた演算処理を要因推論部32にて行うことによって、駆動音の要因判別を行う。
このとき、学習結果保存部31で保存される学習結果は、特徴点データの全てを用いて機械学習した結果であってもよいし、特徴点データの一部を用いて機械学習した結果であってもよい。また、要因推論部32は、学習結果保存部31の学習時に用いた特徴点データに応じて、入力データを抽出して演算処理を行う。
また、学習結果保存部31に保存される学習結果を導く機械学習の学習モデルとしては、K近傍法、決定木、サポートベクターマシーン、カーネル近似が挙げられる。また、学習モデルとして、ディープラーニングが用いられてもよい。
実施の形態3における要因判定部18Aは、駆動音の要因判定を学習済みの学習器を用いて判別する。これによって、より精度の高い駆動音の要因判定を提供することができる。また、要因判定部18Aは、要因判定部18と同じデータを用いて機械学習を行った学習器を用いるので、駆動パターンに依らない判別を行うことができる。このことから学習結果保存部31に保存される学習結果は、多様な駆動装置に適用することができる。
実施の形態4.
図19は、実施の形態4に係る駆動音診断システムの機械学習装置の機能構成の一例を示すブロック図である。機械学習装置50は、実施の形態2における音振動データおよび運転データを用いて要因判別を行う機能処理部を有するサーバ装置250およびユーザ端末260に、機械学習する機能を持たせたものである。なお、以下では、実施の形態1,2と同一の構成要素には、同一の符号を付してその説明を省略し、実施の形態1,2と異なる部分について説明する。
機械学習装置50は、駆動音検出部11と、運転状態検出部12と、音振動時系列スペクトル取得部15と、特徴点抽出部16と、要因取得部51と、要因学習部52と、学習結果保存部53と、を備える。
要因取得部51は、駆動音の発生要因に関するデータを取得する。要因取得部51は、例えば、設計者または利用者の操作によって入力された計測した駆動音の発生要因に関するデータを取得するものでもよい。あるいは、要因取得部51は、実施の形態1または実施の形態2に係る駆動音の発生要因の診断結果を取得するものでもよいし、他の駆動音診断システムにおける駆動音の発生要因の診断結果を取得するものでもよい。
要因学習部52は、特徴点抽出部16によって抽出された特徴点データと、要因取得部51によって取得された駆動音の発生要因に関するデータと、の組み合わせに基づいて作成される訓練データセットに従って、駆動音の発生要因を学習する。要因学習部52で用いる学習モデルは、実施の形態3で挙げられた学習モデルなどを用いることができる。訓練データセットに用いる診断データは、複数の被駆動機械220のものを用いてもよい。一例では、通信回線280等によって複数の被駆動機械220に接続して診断データを収集することによって、より正確な診断とすることができる。学習結果保存部53は、要因学習部52による学習結果を保存する。
図20は、実施の形態4によるサーバ装置の機能構成の一例を模式的に示すブロック図である。サーバ装置250Aは、通信回線280によるネットワーク上に設置された情報処理装置である。サーバ装置250Aは、時刻同期部13と、運転モード抽出部14と、音振動時系列スペクトル取得部15と、特徴点抽出部16と、要因学習部52と、学習結果保存部53と、通信部251と、を備える。
サーバ装置250Aは、駆動音検出部11および運転状態検出部12から通信回線280に送られた駆動音および運転状態を含む装置データを、必要に応じて加工した後、学習し、保存する。一例として、まず、実施の形態2のように、特徴点の周波数、時刻、パワー、波形および特徴点の時刻における運転データを組にした特徴点データの全部または一部が要因学習部52に入力される。次に、ユーザ端末260から通信回線280および通信部251を介して、駆動音の発生要因を取得し、組み合わせて訓練データセットとする。最後に、訓練データセットを用いて要因学習部52は駆動音の発生要因を学習し、その結果を学習結果保存部53に保存する。
図21は、実施の形態4によるユーザ端末の機能構成の一例を模式的に示すブロック図である。ユーザ端末260Aは、通信部261と、入力部262Aと、表示部263と、要因判定部18と、要因取得部51と、を備える。
要因取得部51は、駆動音の発生要因に関するデータを、例えば、使用者より取得する。取得した駆動音の発生要因に関するデータは、通信部261を介してサーバ装置250Aに送信される。
入力部262Aは、使用者との間の入力インタフェースである。入力部262Aは、被駆動機械220の要因判別の処理の実行の指示を使用者が入力する際、また要因取得部51で取得する駆動音の発生要因に関するデータを使用者が入力する際のインタフェースとなる。
実施の形態4に係る駆動音診断システムでは、駆動音の要因の機械学習機能と機械学習機能の結果を用いた要因判別機能の両方を併せ持つ。これにより、駆動音の要因診断を利用しつつ、学習を進めることによって要因診断の精度を高めていくことが可能となる。
また、通信回線280を介して複数の被駆動機械220またはユーザ端末260Aと接続することによって、より精度の高い要因診断を被駆動機械220の設置個所に依らず複数の場所で利用することができる。その結果、汎用性の高い診断を学習することが可能となる。
実施の形態4に係る駆動音診断システムでは駆動音の要因の機械学習機能と機械学習機能の結果を用いた要因判別機能の両方を併せ持つが、駆動音診断システムの機械学習装置50が単独で構成され、学習結果を用いる要因判別は他の装置の機能としてもよい。学習結果を用いる要因判別装置の例は実施の形態3の図18に示した構成のものである。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
上述した課題を解決し、目的を達成するために、本発明に係る駆動音診断システムは、駆動音検出部と、運転状態検出部と、音振動時系列スペクトル取得部と、特徴点抽出部と、要因判定部と、を備える。駆動音検出部は、アクチュエータまたはアクチュエータによって駆動される被駆動機械で発生する音または機械的振動である駆動音を検出する。運転状態検出部は、アクチュエータの駆動位置、駆動速度または駆動により発生する力を時系列で取得する。音振動時系列スペクトル取得部は、検出された駆動音の時系列データである音振動データの各時刻に対応する周波数スペクトルを算出し、算出した周波数スペクトルのパワーを周波数および時刻と対応付けて組にした時系列スペクトルを出力する。特徴点抽出部は、時系列スペクトルのパワーの周波数および時刻に対する波形が時系列スペクトルのパワーの周波数および時刻に対する波形の頂点、峰、稜線および鞍点の少なくともいずれか1つとなる点を特徴点として抽出し、特徴点の周波数、時刻、特徴点の波形および特徴点の時刻におけるアクチュエータの駆動位置、駆動速度または駆動により発生する力である運転データを組にした特徴点データを出力する。要因判定部は、駆動音の要因であるアクチュエータまたは被駆動機械に発生する現象毎に、現象に伴って発生する特徴点の含まれる周波数および時刻の少なくとも1つと、その時刻におけるアクチュエータの駆動位置、駆動速度または駆動により発生する力である運転データと、の組み合わせを多次元データとしたときの第1数値範囲を定めた要因判定条件と、特徴点データの数値と、を比較することで検出された駆動音の発生要因を判定する。