JP6993483B2 - ロボット装置の異常を検出する方法 - Google Patents

ロボット装置の異常を検出する方法 Download PDF

Info

Publication number
JP6993483B2
JP6993483B2 JP2020155289A JP2020155289A JP6993483B2 JP 6993483 B2 JP6993483 B2 JP 6993483B2 JP 2020155289 A JP2020155289 A JP 2020155289A JP 2020155289 A JP2020155289 A JP 2020155289A JP 6993483 B2 JP6993483 B2 JP 6993483B2
Authority
JP
Japan
Prior art keywords
abnormality
anomaly
score
sensor data
vibration sensor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020155289A
Other languages
English (en)
Other versions
JP2021047183A (ja
Inventor
ウェイ ヒュアン
英明 鈴木
アーメド カイリー ファラハット
チェタン グプタ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of JP2021047183A publication Critical patent/JP2021047183A/ja
Application granted granted Critical
Publication of JP6993483B2 publication Critical patent/JP6993483B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/026Acoustical sensing devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/058Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4065Monitoring tool breakage, life or condition
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/14Plc safety
    • G05B2219/14116Safe, emergency shutdown, esd of system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37435Vibration of machine
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39195Control, avoid oscillation, vibration due to low rigidity

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • Measurement Of Mechanical Vibrations Or Ultrasonic Waves (AREA)
  • Manipulator (AREA)
  • Testing Of Devices, Machine Parts, Or Other Structures Thereof (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Description

本開示は、ロボット装置の管理に関し、より具体的には、振動データを使用してロボットアーム及び他のロボット装置の異常検出を行うことに関する。
製造業における産業用ロボットアームは、設計された動きに従うことによって作業を達成するように構成された、予めプログラムされたマニピュレータである。スマート産業において、ロボットアームに取り付けられた振動センサがあり、作業中の動きを監視する。いかなる機械システムも自然に振動し、振動センサにより測定可能な振動信号を発生させる。測定された振動信号は、移動軌道に重畳された自然振動の組み合わせである。ロボットアームは、典型的には、複数のタイプのジョブ/アクション(例えば、異なるタスク、異なるターゲット)を実行しており、振動測定値のすべてが故障パターンを捉えるわけではない。これは、異なる作業が機械部品の異なる使用方法を有しおり、故障した部品により多く依存する作業に関連した振動は、より多くの故障情報を含むからである。
設計された軌跡からの実際の動きの逸脱は、異常検出のために捕らえることができる一つの故障パターンである。しかし,このような逸脱の出現及び検出の前に,隠れた異常が存在することがある。作業の多様性を考慮することなく異常検出に基づく故障予測方法を開発することにより、誤報率が高くなりえる。
本発明の一態様に係る方法は、予め設定された複数の動作から一つの動作を実行するように構成されたロボット装置に関連付けられたセンサから、振動センサデータを受信し、前記ロボット装置が実行している動作を決定するために、前記振動センサデータのクラスタリングを行い、前記振動センサデータについて第1の異常計算処理を実行し、前記第1の異常計算処理は、前記ロボット装置が実行している動作に対する前記振動センサデータから異常を計算するように構成され、予め設定された時間窓の前記振動センサデータにおける各サンプルセットに対応する第1の異常スコアの第1のセットを出力し、前記第1の異常スコアの第1のセットを、前記第1の異常計算処理からの結果のバッチ及び前記複数の動作において異常を検出するように構成された、第2の異常計算処理に与え、前記第2の異常計算処理は、前記ロボット装置の異常又は正常状態の検出を出力する。
本発明の一態様は、コンピュータに処理を実行させるプログラムであって、前記処理は、予め設定された複数の動作から一つの動作を実行するように構成されたロボット装置に関連付けられたセンサから、振動センサデータを受信し、前記ロボット装置が実行している動作を決定するために、前記振動センサデータのクラスタリングを行い、前記振動センサデータについて第1の異常計算処理を実行し、前記第1の異常計算処理は、前記ロボット装置が実行している動作に対する前記振動センサデータから異常を計算するように構成され、予め設定された時間窓の前記振動センサデータにおける各サンプルセットに対応する第1の異常スコアの第1のセットを出力し、前記第1の異常スコアの第1のセットを、前記第1の異常計算処理からの結果のバッチ及び前記複数の動作において異常を検出するように構成された、第2の異常計算処理に与え、前記第2の異常計算処理は、前記ロボット装置の異常又は正常状態の検出を出力する、ことを含む。
本発明の一態様に係るシステムは、予め設定された複数の動作から一つの動作を実行するように構成されたロボット装置に関連付けられたセンサから、振動センサデータを受信する手段と、前記ロボット装置が実行している動作を決定するために、前記振動センサデータのクラスタリングを行い、前記振動センサデータについて第1の異常計算処理を実行する手段とを含む。前記第1の異常計算処理は、前記ロボット装置が実行している動作に対する前記振動センサデータから異常を計算するように構成され、予め設定された時間窓の前記振動センサデータにおける各サンプルセットに対応する第1の異常スコアの第1のセットを出力する。システムはさらに、前記第1の異常スコアの第1のセットを、前記第1の異常計算処理からの結果のバッチ及び前記複数の動作において異常を検出するように構成された、第2の異常計算処理に与える手段を含み、前記第2の異常計算処理は、前記ロボット装置の異常又は正常状態の検出を出力する。
例示的な実装に係る異常検出アプローチを示す。 例示的な実装に係る変動に基づく異常検出を示す。 例示的な実装に係る変動に基づく異常検出における学習フェーズを示す。 例示的な実装に係る、変動に基づく異常検出におけるジョブ分類部を示す。 例示的な実装に係る、変動に基づく異常検出におけるジョブ分類部の例示的なフロー図を示す。 例示的な実装に係る、異常スコア計算部を示す。 例示的な実装に係る、異常スコア計算部のフロー図を示す。 例示的な実装に係る、バッチ異常スコア計算部を示す。 例示的な実装に係る、バッチ異常スコア計算部の例示的なフロー図を示す。 例示的な実装に係る、適用フェーズの例を示す。 例示的な実装に係る、適用フェーズのジョブ分部を示す。 例示的な実装に係る、適用フェーズでの異常スコア計算部の例を示す。 例示的な実装に係る、適用フェーズにおけるバッチ異常スコア計算部の例を示す。 例示的な実装に係る、周波数スペクトルに基づく異常検出のためのシステムを示す。 例示的な実装に係る学習モデルを示す。 例示的な実装に係るスペクトル分析の詳細を示す。 例示的な実装に係る、学習モデルの増分クラスタリングの例を示す。 例示的な実装に係る、学習モデルのための例示的なフローを示す。 例示的な実装に係る適用フェーズを示す。 例示的な実装に係る、適用フェーズにおける異常スコア計算部を示す。 例示的な実装に係る、異常スコア計算部の例示的なフロー図を示す。 例示的な実装を示すための例示的なプロットを示す。 例示的な実装を示すための例示的なプロットを示す。 例示的な実装に係る、提供され得る可視化インターフェイスの例を示す。 例示的な実装に係る、システムの物理的構造の例を示す。 例示的な実装に係る、システムの物理的構造の例示的なアラート生成システムを示す。 例示的な実装に係る、システムの物理的構造の例示的なアラート生成システムを示す。 例示的な実装に係る、システムの物理的構造の例示的なアラート生成システムを示す。 いくつかの例示的な実装において使用するのに適した例示的なコンピュータ装置を有する例示的なコンピューティング環境を示す。
以下の詳細な説明は、本願の図及び実施例のさらなる詳細を提供する。図面間の冗長要素の参照番号及び説明は、明確にするために省略されている。説明全体で使用される用語は例として提供されており、限定することを意図したものではない。例えば、「自動」という用語の使用は、本願の実装を実施する当業者の所望の実装に応じて、実装の特定の側面に対するユーザまたは管理者の制御を伴う完全自動または半自動実装を含み得る。選択は、ユーザがユーザインターフェイスまたは他の入力手段を介して実行するか、目的のアルゴリズムを使用して実装できる。本明細書で説明される実施例は、単独でまたは組み合わせて利用することができ、実施例の機能は、所望の実装による任意の手段を通じて実装することができる。
図1は、例示的実装に係る、異常検出アプローチを示す。図1に示すように、異常検出アプローチは、振動データ101を提供するロボット100のシステムを含み、振動データ101のサンプルは、前処理102を通して処理され、そこでは、単一サンプル異常スコア計算部103及びバッチ異常スコア計算部104が利用される。所望の実装に応じて、図19(a)-(d)の工場システムで図示されるように、例示的な異常検出システムは、アラート発生器105を介して、アラート及び制御システムに統合することができる。
本明細書に記載される例示的な実装では、振動測定に基づくロボットアームシステムの異常検出アプローチがある。異常検出アプローチは、振動における異なる異常を捉えるための2つの方法、具体的には、変動に基づく異常検出と、スペクトルに基づく異常検出とを組み込む。
変動(fluctuation)に基づく異常検出において、振動における短時間パルスノイズ(強いピーク)が捕捉される。このような短時間パルスは、比較的広い周波数帯域を有しており、スペクトル分析の予め定義された窓における周波数スペクトルにおいて、気付くことが困難であり得る。
スペクトルに基づく異常検出は、予め定義された窓内の周波数スペクトルを用いて、スペクトル分析を使用して正常な周波数スペクトルからの逸脱を監視する。周波数スペクトルは、適度に長い時間(予め定義された窓)のパターンを含む。
振動データ101は、ロボット100に搭載された振動センサからの測定された振動信号を含む。振動センサは、多次元の動きを測定するために多次元タイプであってもよい。振動測定値は、ファイルに分割され、各ファイルが1つの作業に対応する。振動測定値は、移動軌跡に重畳された、ロボットアーム機械システムからの自然変動の組み合わせである。
振動信号=動きの軌跡+重畳された自然変動
図2は、例示的実装に係る、変動に基づく異常検出を示す。本明細書に記載される例示的実装において、学習フェーズ200は、変動に基づく異常検出に従って、ジョブ分類部、異常スコア計算部、及びバッチ異常スコア計算部を訓練する。適用フェーズ201において、ジョブ分類部、異常スコア計算部、およびバッチ異常スコア計算部は、リアルタイムまたはバックエンドの振動データを受信するために展開される。
変動に基づく異常検出において、例示的実装は、振動測定における変動に基づくロボットアームの異常検出方法を含む。異常指標は、閾値処理機構を使用することによって、変動のノイズレベルを特徴付けるように定義される。異なるタイプの作業のため、それらの通常の振動測定値を用いて、変動の通常範囲がそれぞれ学習される。その後、閾値処理機構が適用されて、予め学習された正常範囲を超える、(1つの作業に関連付けられた)振動測定値におけるピークの数をカウントする。異常指標は、例えば、振動測定の測定時間で正規化されたピーク数である、ピーク密度である。変動に基づく異常検出は、2フェーズを含み、学習フェーズと適用フェーズである。
図3は、例示的な実装に係る、変動に基づく異常検出における学習フェーズを示す。学習フェーズ200において、ジョブ分類部300は、異なるロボット作業タイプを識別するために学習される。異常スコア計算部(単一サンプル)301及びバッチ異常スコア計算部302のパラメータは、それぞれジョブタイプごとに学習される。異常スコア計算部301及びバッチ異常スコア計算部302は、閾値処理機構に基づく。
図4(a)は、例示的な実装に係る、変動に基づく異常検出におけるジョブ分類部を示す。学習データ401が与えられると、ジョブ分類部410は、振動を、異なるジョブ又は作業に関連する可能性のある異なるグループに分類するように訓練される。異なる作業は、異なる設計動作軌跡を有する。ジョブ分類部410は、最初に、振動データに移動平均平滑化を適用して一般的な移動軌跡を抽出する。これらは、分類のために使用される。
軌跡抽出部411:スライド平均化窓を使用して、原振動の変動を平滑化し、一般的な移動軌跡を移動シグネチャとして抽出する。各多次元原振動信号対して抽出された移動シグネチャは、同一次元及び同一長さを有する。
ダウンサンプリング部412:各抽出された多次元の滑らかな移動軌跡は、最初に、各次元において固定長n(例えば、n=50)にダウンサンプリングされ、次に、連結されて、要素数が次元数のn倍に等しい1次元ベクトルを形成する。
クラスタリング部413:ベクトル化段階からの複数の1次元ベクトルは、任意の教師なしクラスタリングアルゴリズム(k-meansが好ましい例である)への入力であり、当該アルゴルズムは、クラスタリングモデル414で使用されるグルーピングタスクを実行する。
図4(b)は、例示的な実装に係る、変動に基づく異常検出におけるジョブ分類部の例示的なフロー図を示す。振動データ401が入力として用いられる。具体的には、入力は、学習用の振動データV[V1、・・・Vi、・・・、VN]を含む。ここで、Nは総サンプル数、wは予め定義された平滑化窓サイズ、Lは振動ダウンサンプリングのための予め定義された長さである。
421において、軌跡抽出部411とダウンサンプリング部412の処理は、Vにおける各振動サンプルVi=[v1 i,・・・,vj i,・・・,vni i]について反復的に実行される。ここで、niはViにおけるの測定数である。
422において、軌跡抽出部411が実行され、移動平均を使用することによって、平滑化窓サイズwで平滑化された振動Vsmooth iが抽出される。
Figure 0006993483000001
423において、ダウンサンプリング部412が実行され、ダウンサンプリングを使用することによりVsmooth iを短縮して、長さLのVtraj iを生成する。
Figure 0006993483000002
424において、振動サンプルのそれぞれが処理済みか判定される。サンプルが残っている場合(YES)、フローは、421で繰り返して次のサンプルに進む。そうでない場合(NO)、フローは、425に進んでクラスタリング部413を実行して、クラスタモデルを生成する。
425において、クラスタリング部413が実行され、421-424の処理において全てのサンプルに対して行われた平滑化及びダウンサンプリングに基づいて、クラスタモデルを生成する。
図5(a)は、例示的な実装に係る、異常スコア計算部を示す。異常スコア計算部500は、クラスタ識別子(ID)、ロー(raw)振動、及び平滑振動などの入力を取り込み、対応する異常スコアを提供する。異常スコア計算部500は、変動抽出部501、閾値計算部502、偏差計算部503により、このような入力を処理する。異常スコア計算部500の処理は、図5(b)を参照して、さらに詳細に説明する。
図5(b)は、例示的な実装に係る、異常スコア計算部のフロー図を示す。510において、学習のための振動データセットの入力が、異常スコア計算部500に与えられる。具体的には、V=[V1,・・・,Vi,・・・,VN]、平滑化された振動群Vsmooth=[Vsmooth 1,・・・Vsmooth i,・・・,Vsmooth N]、及びクラスタID群:C=[c1,・・・,ci,・・・,cN]、ci∈[1,2,・・・,k,・・・,K]、である。
511において、異常スコア計算部500は、変動抽出部501を実行する。Vにおける各振動サンプルVi=[v1 i,・・・,vj i,・・・,vni i]に対して、niはViにおける測定の数であり、変動抽出部501は、ViからVsmooth iを減算することによって、変動成分Vfluct iを取得する。Vfluct iは次にように計算される。Vfluct i=absolute(Vi-Vsmooth i)=[absolute(v1 i-vsmooth1 i)、・・・、absolute(vni i-vsmoothni i)]=[vfluct1 i、・・・、vfluctni i]。
512において、異常スコア計算部500は、振動の各クラスタについて閾値計算部1(502)を実行する。振動の各クラスタ、Vck=[V1 ck,・・・,Vm ck,・・・,VMk ck]、ck∈[1,2,・・・,K]、ΣK k=1k=N、について、閾値計算部1(502)は、クラスタ毎に、そのクラスタに属する各振動における変動の平均値と標準偏差を用いて、変動の範囲を計算する。
Figure 0006993483000003
513において、異常スコア計算部500は、クラスタIDに基づいて、各振動サンプルの変動について偏差計算部503を実行する。すなわち、各振動サンプルViについて、その変動Vfluct i=[vfluct 1 i,・・・,vfluct ni i]を用いる。ここで、niはViの要素数である。クラスタID:ciが与えられると、ci=kにおける閾値akを取得し、偏差計算部503は、異常スコアを計算する。異常スコアsi=(閾値akを超える値を持つVfluct iの要素の割合)、である。
Figure 0006993483000004
514において、対応する異常スコアのセットSが、出力として提供される。
図6(a)は、例示的な実装に係る、バッチ異常スコア計算部を示す。バッチ異常スコア計算部600は、バッチ異常スコア計算処理部601及び閾値計算部602を含む。バッチ異常スコア計算部600への入力は、学習用の振動データセット、クラスタID、及び異常スコアを含むことができる。出力はバッチ異常スコアである。バッチ異常スコア計算部600のフローは、図6(b)に提供される。
図6(b)は、例示的な実装に係る、バッチ異常スコア計算部の例示的なフロー図を示す。まず、バッチ異常スコア計算部600は、クラスタID群:C=[c1,・・・,ci,・・・,cN]、ci∈[1,・・・,k,・・・,K]、及び異常スコア群:S=[s1,・・・,sN]、を含む入力610を取り込む
バッチ異常スコア計算部600は、クラスタ毎に閾値計算部2(611)を実行し、学習データの全てを1つのバッチとする。すなわち、各クラスタkについて、閾値計算部2(611)は、クラスタk内の振動サンプルそれぞれのスコアを取得する:Sk=[s1 k,・・・,snk k]。ここで、Σk=1 Kk=N。
612において、バッチ異常スコア計算処理部601が実行される。値の範囲:[minimum(Sk)、・・・、maximum(Sk)]におけるβkについて、バッチ異常スコア計算処理部601は、バッチ異常スコアを計算する:pk=BatchAnomaly(Sk,βk)。ここで、P=BatchAnomaly(S、β)=Percentage(S≧β)。
613において、閾値計算部2(602)は、推定範囲内でバッチ異常スコアを選択する。すなわち、各クラスタkについて、閾値計算部2(602)は、学習データ(通常の測定値)について、予め定められた小さい値(例えば、10%)に最も近いバッチ異常スコアpkを生成するβk値を、選択する。学習データは正常状態において収集されるため、pkは小さい値であるべきである。したがって、βkは大きな値であるべきである。例示的な実装において、より高いβkは、強い変動に関連する故障に対するより低い感度を示す。
614において、処理すべきクラスタが残っているか判定する。そうである場合(YES)、フローは611に進み、次のクラスタのために閾値計算部2(602)を実行する。そうでない場合(NO)、フローは615に進み、バッチ異常スコアPを出力する。バッチ異常スコアの全範囲を[0,1]に正規化することができる。ここで、1は最も高い異常を意味する。例示的な実装において、正常状態とみなされる学習データに対して、バッチ異常スコアを予め定められた小さい値(例えば、10%である0.1)に近い値に設定することができる。
図7は、例示的な実装に係る、適用フェーズの例を示す。適用フェーズ201では、適用データ内のサンプルが、順次、訓練されたモデルに送られる。各サンプルは、ジョブ分類部700及び異常スコア計算部701の後、1つの異常スコアを持つ。予め設定されたバッチ窓におけるサンプルのバッチに対して異常スコアが計算された後、異常スコアのバッチは、バッチ異常スコア計算部702に送られ、バッチ異常スコア値が計算される。
図8は、例示的な実装に係る、適用フェーズのジョブ分類部を示す。適用フェーズにおいて、適用データ800からの振動サンプルは、軌跡抽出部811及びダウンサンプリング部812によって適切なフォーマットに変換される。次いで、クラスタID割当部813は、クラスタIDを、現在の振動サンプルに、学習フェーズから生成された訓練されたクラスタリングモデルに基づいて、割り当てる。ジョブ分類部810は、これにより、以下のフローを実行することにより、適切なジョブを決定できる。
適用データ800からのジョブ分類部810への入力は、適用における現在の振動サンプルVt=[v1 t,・・・,vi t,・・・,vn t]を含む。ここで、nはVtにおける要素数であり、wを予め定義された平滑化窓サイズ、Lを振動ダウンサンプリングのための予め定義された長さとする。軌跡抽出部811は、移動平均を用いて、平滑化窓サイズwで平滑化された振動Vsmooth tを抽出する。振動Vsmooth tは以下のように表される。
Figure 0006993483000005
その後、ダウンサンプリング部812は、以下のようにダウンサンプリングを使用することによって、Vsmooth tを短縮化し、長さLのVtraj tを生成する。
Figure 0006993483000006
クラスタID割当部813は、次に、学習フェーズで訓練されたクラスタリングモデル814を利用して、出力:Vtraj t=[vtraj 1 t,・・・,vtraj i t,・・・,vtraj L t]に基づいて、現在の振動VcにクラスタIDcを割り当てる。
結果としての出力は、クラスタIDs ct=ClusteringModel(clusters=K),predict(Vtraj c)、ct∈[1,・・・,K]である。
本明細書で述べた通り、ClusteringModelは、k-meansのような、所望の実装に係る任意のタイプの教師なしクラスタリングモデルを含むことがでる。
図9は、例示的な実装に係る、適用段階での異常スコア計算部の例を示す。異常スコア計算部900は、現在の振動サンプルの異常スコアを計算する。図9に示すように、異常スコア計算部900への入力のタイプは、現在の振動サンプル:Vt=[v1 t,・・・,vi t,・・・,vn t]、平滑化バージョン:Vsmooth t=[vsmooth 1 t,・・・,vsmooth i t,・・・,vsmooth n t]、及びクラスタID:ct、ct∈[1、・・・、K]を含むことができる。
変動抽出部901は、入力を取り込み、VtからVsmooth tを減算することによって、以下のように変動成分Vfluct tを求める。
Figure 0006993483000007
偏差計算部902は、クラスタID:ct及び学習フェーズで学習した閾値ak、k=1,・・・,Kに基づいて、閾値act、ct∈[1,・・・,k]を取得し、異常スコア=閾値actを超える値を有するVfluct t内の要素の割合、を出することができる。異常スコア計算部900の出力は、st=Percentage(Vfluct t>act)である。
次に、異常スコアは、振動サンプルのバッチV=[Vt,・・・、Vt+i,・・・,Vt+T-1]について計算される。ここで、Tは、図10に示すように、バッチサイズ(例えば、時間窓内のサンプル数)である。
図10は、例示的な実装に係る、適用フェーズにおけるバッチ異常スコア計算部の例を示す。バッチ異常スコア計算部1000は、現在の振動信号のバッチに対する入力を取得する。入力は、クラスタIDs:id=[idt、・・・、idt+i,・・・,idt+T-1]、idt+i∈[1,・・・,k、・・・,K]、及び異常スコア:S=[st,・・・,st+i,・・・,st+T-1]、を含む。
まず、バッチ異常スコア計算部1000は、異常スコアSをクラスタに分割する:S=[S1,・・・,Sk,・・・,SK]。ここで、Sk=[s1 k,・・・,snk k]、Σk=1 Kk=T。
続いて、バッチにおける振動サンプルの各クラスタについて、バッチ異常スコア計算部1000は、次のように、バッチ異常スコアを算出する。
Figure 0006993483000008
最後に、バッチ異常スコア計算部1000は、異なるクラスタのためのバッチ異常スコアを合計して、1つのバッチ異常スコアPを生成する。
Figure 0006993483000009
図11は、例示的な実装に係る、周波数スペクトルに基づく異常検出のためのシステムを示す。周波数スペクトルに基づく異常検出のためのシステムは、学習フェーズ1100及び適用フェーズ1101を含む。周波数スペクトルに基づく異常検出は、振動測定におけるそれらの自然変動に基づく。異常指標は、周波数スペクトルを比較することにより、自然変動のノイズレベルを特徴付けるように定義される。異なるタイプの作業に対して、変動の正常範囲は、それぞれ、正常な振動スペクトルの組み合わせとして学習される。異常指標は、すべての正常スペクトルのうち最小の距離を持つ最尤スペクトルからの偏差として定義される。
図12は、例示的な実装に係る学習モデルを示す。学習モデル1200は、入力として学習データ1201を取得する。学習データ1201は、スペクトル分析部1202及び増分クラスタリング(incremental clustering)部1203により処理され、正常閾値及びスペクトルテンプレートセットを提供する。スペクトル分析部1202は、所望の実装に応じて、短時間フーリエ変換(STFT)又は他のタイプのスペクトル分析を利用できる。
図13は、例示的な実装に係る、スペクトル分析の詳細を示す。動きパターンを得るために、例示的な実装は、動きパターン抽出部を使用する。動きパターン抽出部は、振動データに対してスペクトル分析部1202を用いて周波数スペクトルを計算する。
以下の例では、STFTが利用されるが、所望の実装に応じて、任意のタイプのスペクトル分析を使用することができる。図13に示すように、入力は、V:振動データ、Lw:窓サイズ、Ls:窓シフト長を含み、一連の周波数スペクトルS=STFT(V,Lw,Ls)を生成する。
最初に、スペクトル分析部1202は、1次元振動データV=[v1,v2,・・・,vn]を、一連の窓U=[U1,U2,・・・,Um]に分割する。オーバーラップが存在する。
Figure 0006993483000010
次にスペクトル分析部1202は、信号の各窓Ui,i=1,・・・,mに、高速フーリエ変換(FFT)を適用することによって、UからスペクトルSを算出する。
Figure 0006993483000011
したがって、一連の周波数スペクトルは、Si=FFT(Ui)=[s1 i,s2 i,・・・,sLw/2 i],i=1,・・・,mである。
図14(a)は、例示的な実装に係る、学習モデルの増分クラスタリングの例を示す。図14(a)の例において、学習モデル1400は、スペクトル分析部1402及び増分クラスタリング部1410で処理するための学習データ1401を取得する。増分クラスタリング部1410は、距離計算部1403においてスペクトルテンプレートセット1420を利用して、更新部1404によってスペクトルテンプレートセット1420に更新を与える。異常指標は、教師なし機械学習アルゴリズムに依存する、再構成偏差と定義される。例えば、k-meansの場合、得られた動きパターンxiの異常指標は、最も近い動きパターンmjからの距離と定義される。1つのファイルに含まれる全ての異常計測値は、各距離の和と定義される。
Figure 0006993483000012
図14(b)は、例示的な実装に係る、学習モデルの例示的な流れを示す図である。得られた一連の動きパターンは、k-meansなどの教師なし機械学習アルゴリズムを使用することによって、所定の大きさのグループに分類される。入力1430は、学習データ[V1,・・・,VN]を含む。なお、以下の例では、スペクトル分析部1402はSTFTを利用するが、所望の実装に応じて他のタイプのスペクトル分析を利用することができる。
1431において、スペクトル分析部1402は、STFTを用いて第1の振動データV1からスペクトルを計算する:S1=STFT(V1,Lw,Ls)=[S1 1,・・・,Sn1 1]。次に、クラスタサイズcが与えられると、増分クラスタリング部1410は、k-means等のクラスタリングアルゴリズムを用いて、スペクトル[S1 1,・・・,Sn1 1]をc個のクラスタにクラスタリングする:T1=[t1 1,・・・,tm1 1]、T2=[t1 21,・・・,tm2 2]、・・・、Tc=[t1 c1,・・・,tmc c]。ここで、n1=m1+m2+・・・+mcである。
1432において、各クラスタjについて、距離計算部1403は、重心Mj=mean(Tj)=(1/mj)Σp=1 mjp jと、各クラスタに属するスペクトルの閾値D=maxj(maxp(||tp j-Mj||))を計算する。ここでM=[M1,M2,・・・,Mc]は、学習された正常なスペクトルパターンである。
1433-1438において、学習データ中の各振動データがループにおいて処理される。すなわち、1433の処理からk=[2,3,・・・,N]について、増分クラスタリング部1410は、学習データに残っている各振動データVkについて、以下の処理を繰り返す。
1434において、増分クラスタリング部1410は、各振動データVkのスペクトルSkを、次のように計算する:Sk=STFT(Vk,Lw,Ls)=[S1 k,・・・,Snk k]、k=2,・・・,N。
1435-1438において、抽出された各スペクトルは、与えられた振動データに対してループにおいて処理される。すなわち、1つの振動データVkから抽出されたスペクトルセット[S1 k,S2 k,・・・,Snk k]の各スペクトルについて、処理1435は、以下のようなループを開始する。
1436において、各スペクトルS1 kについて、距離計算部1403は、学習した正常なスペクトルパターンからの最小距離di kを計算する:di k=min(||Si k-Mj||)、l=argminj(||Si k-Mj||)、i=1,・・・,nk、j=1,・・・,c。
1437において、di k>Dである場合、増分クラスタリング部1410は、次のように、Si kをSold 1に加える。
Figure 0006993483000013
さらに、スペクトルSnew 1を、クラスタTnew 1、Tnew 2、・・・Tnew cにクラスタリングする。
1438において、各クラスタjについて、更新部1404は、重心Mj new及び更新閾値Dnewを計算する。
すべての振動データ及びスペクトルが処理されると、1439における結果は、スペクトルテンプレートセット1420である。
図15は、例示的な実装に係る、適用フェーズ1101を示す。適用フェーズ1101は、異常スコア計算部1501及びバッチ異常スコア計算部1502を含み、図3及び図7に図示されたシステムと同様に動作する。適用フェーズにおいて、各サンプルは、1つの異常スコアを有する。予め定義されたバッチ窓内のサンプルのバッチに対して異常スコアが計算された後、異常スコアのバッチは、バッチ異常スコア計算部1502に送られ、バッチ異常スコア値が計算される。
図16(a)は、例示的な実装に係る、適用フェーズにおける異常スコア計算部を示す。異常スコア計算部1600は、適用データ1601を取得し、スペクトル分析部1602、距離計算部1603、スペクトルテンプレートセット1604を含む。異常スコア計算部1600の処理の流れのさらなる詳細は、図16(b)を参照して説明される。
図16(b)は、例示的な実装に係る、異常スコア計算部の例示的なフロー図である。1610において、適用データ[V1,・・・,VN]が入力され、異常スコア計算部1600は、学習された正常スペクトルパターン1604(M=[M1,M2,・・・,Mc])に基づいて、入力を処理する。以下の例では、スペクトル分析部1602は、STFTを利用するが、所望の実装に応じて他のタイプのスペクトル分析を利用できる。
1611において、k=[1,2,・・・,N]について処理ループが開始される。すなわち、異常スコア計算部1600は、適用データにおける残りの振動データVkごとに、1612-1613を繰り返す。
1612において、スペクトル分析部1602は、各振動データVkに対するスペクトルSkを算出する。Sk=STFT(Vk,Lw,Ls)=[S1 k,・・・,Snk k]、k=2,・・・,Nとなる。
1613において、1つの振動データVkから抽出されたスペクトルセット[S1 k,S2 k,・・・,Snk k]の各スペクトルについて、距離計算部1603は、学習された正常スペクトルパターンからの最小距離di kを計算する:di k=min(||Si k-Mj||)、l=argminj(||Si k-Mj||)、i=1,・・・,nk、j=1,・・・,c。
1614において、Vkの異常スコア2が、次のように計算される。スコア2(Vk)=(1/nk)Σ1 nki k
異常指標分布は、一定期間(例えば1日)の全てのファイルから生成された全ての平均異常指標のヒストグラム又は密度である。異常指標の平均は、1つのファイルに対応する全ての異常指標の平均である。
分布シフトは、2つの異なる異常指標分布の密度比として定義される。
図17(a)および図17(b)は、本明細書に記載された例示的な実装を示すための例示的なプロットを示す。本明細書に記載されているように、異常検出アプローチは、振動における異なる異常を捉えるための2つの方法、すなわち、変動に基づく異常検出及びスペクトルに基づく異常検出を組み込む。変動に基づく異常検出は、振動における短時間パルスノイズ(強いピーク)を捉えることを目的とする。このような短時間パルスノイズは比較的広い周波数帯域を持ち、周波数スペクトルでは気付くことが困難である。
図17(a)は、変動に基づく異常検出のための信号のシミュレーション例を示す。図17(a)に示すように、左上のプロットは元信号であり、100Hzと250Hzの2つの周波数成分を持つ正弦波信号である。
元信号=20×sin2πf1t+20×sin2πf2t,
1=100Hz,f2=250Hz
右上のプロットに示すようなホワイトノイズが元信号に加えられて、左中央のプロットに示すようなシミュレートされた信号を形成する。
シミュレートされた信号=元信号+ホワイトノイズ
次に、2つのパルスノイズをシミュレートされた信号に加えて、右中央のプロットに示すような信号を形成する。パルスノイズを加えたシミュレーション信号と加えないシミュレーション信号の周波数スペクトルが、下図においてプロットされている。
右中央のプロットに示す時間領域信号から、閾値機構を使用して、過渡的なパルスノイズを検出することができる。しかし、下段プロットに示すような周波数スペクトルを監視することによって、その偏差を観測することは困難である。
図17(b)に示すように、左上、右上、左中央のプロットは、図17(a)と同様であり、右中央のプロットに示すように、シミュレートされた信号に200Hzの正弦波ノイズを加えて信号を形成する。正弦波ノイズを伴うシミュレートされた信号と伴わないシミュレートされた信号の周波数スペクトルが、下段のプロットにおいてプロットされている。
この場合、正弦波ノイズは、右中央のプロットに示す時間領域信号から観測することが困難であり得る。しかし、下段プロットのように周波数スペクトルの偏差を監視することによって、観測することができる。
図18は、例示的な実装に係る、提供可能な視覚インターフェイスの例を示す。具体的には、左のプロットはスコア2の分布であり、右のプロットはバッチスコアである。両方のプロットは、劣化を説明する時間的傾向を含む。
図19(a)は、例示的な実装に係る、システムの物理構造例を示す。工場1901において、加工装置1905及びロボットアーム1904などの1又は複数の作動装置を含むラインがあり、部品のロード、部品のアンロード、部品の組み立てなどの製造プロセスを実行するように構成されている。製造工程例は、装置1905が製品1908を加工し、ロボットアーム1904がスケジュールに従って製品1908を運ぶ工程を含むことができる。
所望の実装に応じて、複数種類又はタイプの製品が、同時に処理され得る。ロボットアーム1904及び装置1905は、プログラマブル・ロジック・コントローラ(PLC)1909によって制御され、複数のタスクのうちの1つを実行することができる。作業者1902は、プログラマブル・ロジック・コントローラ1909に接続されているコンピュータ装置1903に、期日及びスケジューリングポリシを与え、所望の実装応じて、コンピュータ装置1903を、対応するPLC及び任意のネットワークを介して作動装置に通信的に結合する。例示的な実装に応じて、ラインにおいて、ローディング製品1906及びアンローディング製品1907は、生産管理システムによって管理される。所望の実施形態に応じて、カメラシステム1921が、工場フロア1901を監視してもよい。
例示的な実装において、各作動装置(処理装置1905、ロボットアーム1904)は、それに取り付けられた1又は複数の振動センサを有し、所望の実装に応じて、振動センサは、PLCに接続されたネットワークと別のネットワーク又はPLCと同じネットワークを介して、センサデータをコンピュータ装置1903に提供する。このような振動センサデータは、バッチデータ又はストリーミングデータとしてコンピュータ装置1903のメモリに格納されてもよく、コンピュータ装置1903によってアクセス可能なデータベースに格納されてもよい。作動装置のそれぞれは、工場の現場によって設定されたスケジュール又はプログラミングに基づいて、予め設定された複数の動作の中から一つの動作を行うように構成される。ロボットアーム1904の例において、動作は、所望の実装に応じて、製品をロードする、製品をアンロードする、アームをある場所から他の場所に移動する、などを含むことができる。このような動作は、移動装置によって処理されるべき異なるタイプのジョブ(例えば、製品Xの移動、製品Yのローディング/アンローディングなど)に分類することができ、作動装置は、工場のために異なるタイプのジョブを処理するように構成される。
コンピュータ装置1903は、アラートを生成し、生成されたアラートに基づいてPLC1909を制御するように構成され得る。アラート生成は、例示的な実装に応じて、変動に基づく異常検出及びスペクトルに基づく異常検出を組み込むことができ、アラート生成及びPLC制御ポリシを容易なものにできる。
図19(b)から図19(d)は、例示的な実装に係る、システムの構成のために、アラート生成システムを示す。具体的には、図19(b)は、アラート生成装置1920のポリシの例を示す。このような例示的な実装において、変動に基づく異常検出のバッチ異常スコア計算部1910、及び、スペクトルに基づく異常検出のバッチ異常スコア計算部1911の双方が、考慮されている。例示的な実装において、各タイプの異常検出は、対応するアラート発動部1912、1913に関連付けられており、基礎となる異常検出手法のバッチ異常スコアが、対応する異常検出の閾値に応じてアラートを発動すべきか否かを示す。アラート発動部1912、1913の機能例は、以下のようなものである。
アラート発動部(x)=H0(x-θ)={1:x≧θ,0:x<θ}
θ:発動部の閾値、x:スコア
各異常検出手法に対するアラート発動部1912、1913を、最終アラート発動1914に集約し、アラートを発生させるべきかどうかを決定することができる。最終アラート発動部1914は、アラート発動部1912、1913の結果に基づいて、アラートを上げるか決定する。最終アラート発動部1914は、所望の実装に応じて、OR演算決定またはAND演算決定を実行することができる。例えば、OR演算決定の第1のタイプ(タイプ1)では、決定は、以下のようにできる。
最終アラート発動部=アラート発動部1(スコア1)+アラート発動部2(スコア2)
他の例において、AND演算により決定することができる。
最終アラート発動部=アラート発動部1(スコア1)×アラート発動部2(スコア2)
図19(c)は、各タイプの動作決定に基づく最終アラート発動部1914の決定テーブルの一例を示す。決定がなされると、アラートを発令する場合、アラート1915を上げることができる。
図19(d)は、例示的な実装に係る、アラート生成ポリシ1940の他の例を示す。この例示的な実装において、バッチ異常スコア計算部1931及び1932は、バッチ異常スコア計算部1911及び1912と同様である。この例示的な実装に係るアラート生成ポリシ1940において、スコア合成部1933及びアラート発動部1934がある。この例において、スコア合成部1933は、所望の実装を容易にするため、バッチ異常スコア計算部1931、1932によって提供されるスコアのそれぞれに重みを割り当てるために利用される。例示的な実装において、スコア合成部1933は、以下のように合成スコアを決定できる。
合成スコア=W1×スコア1+W2×スコア2
1, W2:各スコアの重み
各スコアの重みは、各スコアの信頼度に基づいて更新され得、信頼度は、特定の動作のための基礎となる異常検出手法の精度に応じて決定される。合成されたスコアが閾値を超える場合にアラート1935を生成するように、アラート発動部1934を構成することができる。
所望の実装に基づき、アラート1915、1935をコンピュータ装置1903によって対応するPLC1909に発行し、アラートが生成されると、ロボットアーム1904をシャットダウン又はセーフモードに入るように制御することができる。また、PLC1909は、ロボットアーム1904を制御して、異常が発生したことを工場フロアの作業員に警告するための、警告灯を点灯する又は他の表示を行うことができる。
コンピューティング環境2000内のコンピュータ装置2005は、1以上の処理ユニット、コア、またはプロセッサ2010、メモリ2015(例えば、RAM、ROMなど)、内部ストレージ2020(例えば、磁気ストレージ、光学ストレージ、ソリッドステートストレージ及び/またはオーガニックストレージ)、及び/またはI/Oインターフェイス2025を含むことができる。これらのいずれのデバイスも、情報を通信するための通信機構またはバス1430に結合されるか、またはコンピュータ装置2005に埋め込まれ得る。I/Oインターフェイス2025は、所望の実装に応じて、カメラから画像を受信する、又は、プロジェクタやディスプレイに画像を提供することができる。
コンピュータ装置2005は、入力/ユーザインターフェイス2035及び出力デバイス/インターフェイス2040に通信可能に結合され得る。入力/ユーザインターフェイス2035及び出力デバイス/インターフェイス2040のいずれか一方または両方は、有線または無線インターフェイスであってよく、取り外し可能であり得る。入力/ユーザインターフェイス2035には、入力を提供するために使用できる物理的または仮想的なデバイス、コンポーネント、センサ、またはインターフェイスが含まれる(たとえば、ボタン、タッチスクリーンインターフェイス、キーボード、ポインティング/カーソルコントロール、マイク、カメラ、点字、モーションセンサ、光学式リーダなど)。出力デバイス/インターフェイス2040は、ディスプレイ、テレビ、モニタ、プリンタ、スピーカ、点字などを含み得る。いくつかの例示的な実装では、入力/ユーザインターフェイス2035及び出力デバイス/インターフェイス2040は、コンピュータ装置2005に埋め込むか、または物理的に結合することができる。他の例示的な実装において、他のコンピュータ装置は、コンピュータ装置2005の入力/ユーザインターフェイス2035および出力デバイス/インターフェイス2040として機能してもよい。
コンピュータ装置2005の例は、これらに限定されないが、特にモバイル性が高いデバイス(例えば、スマートフォン、車両及び他の機械内のデバイス、人間及び動物によって運ばれるデバイスなど)、モバイルデバイス(例えば、タブレット、ノートブック、ラップトップ、パーソナルコンピュータ、ポータブルテレビ、ラジオなど)、及びモバイル向けに設計されていないデバイス(デスクトップコンピュータ、他のコンピュータ、情報キオスク、1以上のプロセッサが埋め込まれた、または結合されたテレビ、ラジオなど)が含まれ得る。
コンピュータ装置2005は、(例えば、I/Oインターフェイス2025を介して)外部ストレージ2045及びネットワーク2050に通信可能に結合され、同一または異なる構成の1以上のコンピュータ装置を含む、多くのネットワーク化されたコンポーネント、デバイス、及びシステムと通信することができる。コンピュータ装置2005または任意の接続されたコンピュータ装置は、サーバ、クライアント、シンサーバ、汎用機械、専用機械、または別の名称で参照され、サービスを提供するように機能することができる。
I/Oインターフェイス2025は、任意の通信またはI/Oプロトコルまたは標準(例えば、イーサネット、802.11x、ユニバーサルシステムバス、WiMax、モデム、携帯電話ネットワークプロトコルなど)、コンピューティング環境2000の少なくともすべての接続されたコンポーネント、デバイス、及びネットワークと情報をやり取りするための、有線及び/または無線インターフェイスを含むことができるが、これらに限定されない。ネットワーク2050は、任意のネットワークまたはネットワークの組み合わせであってよい(たとえば、インターネット、ローカルエリア、広域ネットワーク、電話ネットワーク、携帯電話ネットワーク、衛星ネットワークなど)。
コンピュータ装置2005は、一過性媒体及び非一過性媒体を含むコンピュータ使用可能またはコンピュータ可読媒体を、使用する、及び/または、使用して通信することができる。一過性媒体には、伝送媒体(金属ケーブル、光ファイバーなど)、信号、搬送波などが含まれる。非一過性の媒体には、磁気メディア(ディスクやテープなど)、光学メディア(CDROM、デジタルビデオディスク、ブルーレイディスクなど)、ソリッドステートメディア(RAM、ROM、フラッシュメモリ、ソリッドステートストレージなど)、及びその他の不揮発性ストレージまたはメモリが含まれる。
コンピュータ装置2005は、いくつかの例示的なコンピューティング環境において、技術、方法、アプリケーション、プロセス、またはコンピュータ実行可能命令を実装するために使用することができる。コンピュータで実行可能な命令は、一過性の媒体から取得し、非一過性の媒体に格納して取得できる。実行可能命令は、1以上の任意のプログラミング、スクリプト、及びマシン言語(C、C++、C#、Java(登録商標)、Visual Basic、Python、Perl、JavaScript(登録商標)など)から生成できる。
プロセッサ2010は、ネイティブまたは仮想的な環境で、任意のオペレーティングシステム(OS)(図示せず)の下で実行することができる。論理ユニット2060、アプリケーションプログラミングインターフェイス(API)ユニット2065、入力ユニット2070、出力ユニット2075、及び、相互間で、OSと、そして他のアプリケーション(図示せず)と通信するための異なるユニット用のユニット間通信メカニズム2095を含む、1以上のアプリケーションを展開することができる。上記ユニット及び要素は、設計、機能、構成、または実装が異なる可能性があり、提供された説明に限定されない。プロセッサ2010は、メモリ2015からロードされた命令を実行するように構成された物理プロセッサまたは中央処理装置(CPU)の形態であり得る。
いくつかの例示的な実装では、情報または実行命令がAPIユニット2065によって受信されると、それは1以上の他のユニット(たとえば、論理ユニット2060、入力ユニット2070、出力ユニット2075)に通信され得る。いくつかの例では、論理ユニット2060は、ユニット間の情報フローを制御し、上記のいくつかの例示的な実装においてAPIユニット2065、入力ユニット2070、出力ユニット2075によって提供されるサービスを指示するように構成され得る。たとえば、1以上のプロセスまたは実装のフローは、論理ユニット2060によって単独で、またはAPIユニット2065と連動して制御され得る。入力ユニット2070は、例示的な実装で説明した計算のための入力を取得するように構成され得る。ユニット2075は、例示的な実装で説明される計算に基づいて出力を提供するように構成され得る。
1以上のプロセッサ2010は、図19(a)に示すように、予め設定された複数の動作から一つの動作を実行するように構成されたロボット装置に関連付けられたセンサから、振動センサデータを受信することができる。1以上のプロセッサ2010は、図2から4(b)及び7から8に示すように、前記ロボット装置が実行している動作を決定するために、前記振動センサデータのクラスタリングを行うことができる。1以上のプロセッサ2010は、図5(a)、5(b)、7、9、15、16(a)、及び16(b)に示すように、前記振動センサデータについて第1の異常計算処理を実行することができる。前記第1の異常計算処理は、前記ロボット装置が実行している動作に対する前記振動センサデータから異常を計算するように構成され、予め設定された時間窓の前記振動センサデータにおける各サンプルセットに対応する第1の異常スコアの第1のセットを出力する。1以上のプロセッサ2010は、図3、7、10及び15に示すように、前記第1の異常スコアの第1のセットを、前記第1の異常計算処理からの結果のバッチ及び前記複数の動作において異常を検出するように構成された、第2の異常計算処理に与えることができる。前記第2の異常計算処理は、前記ロボット装置の異常又は正常状態の検出を出力する。
例示的実装において、図9に示すように、前記第1の異常計算処理は、前記予め設定された時間窓の前記振動センサデータにおける前記各サンプルセットについて、前記各サンプルセットの移動平均に応じた前記各サンプルセットの平滑化に基づいて、前記各サンプルセットの変動成分を取得し、前記クラスタリングから決定された前記各サンプルセットの対応クラスタに基づく閾値を取得し、前記閾値を超える前記各サンプルセットの変動成分に基づいて、前記予め設定された時間窓の前記振動センサデータにおける前記各サンプルセットに対応する前記第1の異常スコアの第1のセットを、生成する、ことを含むことができる。
例示的実装において、図10に示すように、前記第2の異常計算処理は、前記第1の異常スコアを前記クラスタリングから決定された対応クラスタで分割し、閾値を超える前記対応クラスタのそれぞれにおける前記第1の異常スコアに基づいて、前記対応クラスタのそれぞれについてのバッチ異常スコアを計算し、前記対応クラスタのそれぞれについての前記バッチ異常スコアの総和に基づいて、前記ロボット装置の異常又は正常状態を検出する、ことを含むことができる。
例示的実装において、図16(b)に示すように、前記第1の異常計算処理は、前記予め設定された時間窓の前記振動センサデータにおける前記各サンプルセットに対して、スペクトル分析に基づいて前記各サンプルセットのスペクトルを計算し、学習された正常スペクトル分布からの前記スペクトルそれぞれの最小距離を計算し、前記学習された正常スペクトルからの前記スペクトルそれぞれの最小距離の平均に基づいて、前記予め設定された時間窓の前記振動センサデータにおける各サンプルセットに対応する前記第1の異常スコアの第1のセットを生成する、ことを含むことができる。
図3に示すように、1以上のプロセッサ2010は、さらに、前記複数の動作のそれぞれに対する前記ロボット装置の正常な挙動を表すパラメータのセットを、正常なデータから学習してもよい。
図19(b)から19(d)に示すように、1以上のプロセッサ2010は、さらに、前記ロボット装置の異常又は正常状態の検出の出力と、第3の異常計算処理からの他の異常又は正常状態の検出の出力とを集約し、前記集約に基づいてアラートを生成してもよい。
図19(a)に示すように、前記一つの動作は、前記ロボット装置によって実行されるように構成されたジョブであり、前記ロボット装置はロボットアームであってもよい。
詳細な説明のいくつかの部分は、コンピュータ内の動作のアルゴリズム及び記号的表現に関して提示されている。これらのアルゴリズム記述及び記号的表現は、データ処理技術の当業者が、その革新の本質を他の当業者に伝えるために使用する手段である。アルゴリズムは、目的の最終状態または結果に至る一連の定義済みステップでる。例示的な実装では、実行されるステップは、具体的な結果を得るために具体的な量を物理的に操作する必要がある。
議論から明らかなように、以下のことが理解される。説明全体を通して、「処理」、「コンピューティング」、「計算」、「決定」、「表示」などの用語を利用する議論は、コンピュータシステムまたは他の情報処理装置の動作及び処理を含むことができる。これら装置は、コンピュータシステムのレジスタ及びメモリ内の物理(電子)量として表されるデータを、コンピュータシステムのメモリ、レジスタ、その他の情報ストレージ、送信または表示デバイス内の物理量として同様に表される他のデータに操作及び変換する。
例示的な実装はまた、本明細書のオペレーションを実行するための装置に関連してもよい。この装置は、必要な目的のために特別に構築されてもよいし、1以上のコンピュータプログラムによって選択的に起動または再構成される1以上の汎用コンピュータを含んでもよい。そのようなコンピュータプログラムは、コンピュータ可読記憶媒体またはコンピュータ可読信号媒体などのコンピュータ可読媒体に格納されてもよい。コンピュータ可読記憶媒体は、限定ではないが、電子情報を保存するための、光ディスク、磁気ディスク、読み取り専用メモリ、ランダムアクセスメモリ、ソリッドステートデバイス及びドライブ、またはその他の適切な有形または非一過性の媒体などの有形媒体を含み得る。コンピュータ可読信号媒体には、搬送波などの媒体が含まれ得る。本明細書で提示されるアルゴリズム及び表示は、特定のコンピュータまたは他の装置に本質的に関連するものではない。コンピュータプログラムには、目的の実装のオペレーションを実行する命令を含む純粋なソフトウェア実装を含めることができる。
本明細書の例に従って、様々な汎用システムをプログラム及びプログラムモジュールとともに使用することができ、または所望の方法ステップを実行するための専用の装置を構築することがより適切であることが判明する場合がある。さらに、例示的な実装は、特定のプログラミング言語を参照して説明されていない。様々なプログラミング言語を使用して、本明細書で説明する例示的な実装の教示を実装できることが理解される。プログラミング言語の命令は、1以上の処理デバイス、たとえば中央処理装置(CPU)、プロセッサ、またはコントローラによって実行されてよい。
当技術分野で知られているように、上記オペレーションは、ハードウェア、ソフトウェア、またはソフトウェアとハードウェアの何らかの組み合わせによって実行することができる。例示的な実装のさまざまな態様は、回路及び論理デバイス(ハードウェア)を使用して実装できるが、他の態様は、プロセッサによって実行されるとプロセッサに本願の実装を実行する方法を実行させる、機械可読媒体(ソフトウェア)に格納された命令を使用して実装できる。さらに、本願のいくつかの例示的な実装は、ハードウェアのみで実行されてもよく、他の例示的な実装は、ソフトウェアのみで実行されてもよい。さらに、説明されているさまざまな機能は、単一のユニットで実行することも、さまざまな方法で多数のコンポーネントに分散させることもできる。ソフトウェアによって実行される場合、これらの方法は、コンピュータ可読媒体に格納された命令に基づいて、汎用コンピュータなどのプロセッサによって実行され得る。必要に応じて、命令は圧縮及び/または暗号化された形式で媒体に保存できる。
さらに、本願の他の実装は、本願の教示の仕様及び実施を考慮することにより、当業者には明らかであろう。説明した例示的な実装の様々な態様及び/または構成要素は、単独でまたは任意の組み合わせで使用することができる。本明細書及び例示的な実装は、例としてのみ考慮されることが意図されており、本願の真の範囲及び精神は、添付の特許請求の範囲によって示される。
103、301、500、701、900、1501、1600 異常スコア計算部、104、302、600、702、1000、1502 バッチ異常スコア計算部、105 アラート生成部、300、410、700、810 ジョブ分類部

Claims (13)

  1. 予め設定された複数の動作から一つの動作を実行するように構成されたロボット装置に関連付けられたセンサから、振動センサデータを受信し、
    前記ロボット装置が実行している動作を決定するために、前記振動センサデータのクラスタリングを行い、
    前記振動センサデータについて第1の異常計算処理を実行し、
    前記第1の異常計算処理は、時間範囲を規定する予め設定された時間窓での前記振動センサデータにおける異なるサンプルセットの各サンプルセットについて、
    前記各サンプルセットの移動平均に応じた前記各サンプルセットの平滑化に基づいて、前記各サンプルセットの各サンプルの変動成分を取得し、
    前記クラスタリングから決定された前記各サンプルセットの対応クラスタに基づく閾値を取得し、
    前記変動成分が前記閾値を超える前記各サンプルセット内のサンプルの割合に基づいて、前記各サンプルセットの第1の異常スコアを、生成し、
    前記第1の異常スコアの第1のセットを第2の異常計算処理に与え
    前記第2の異常計算処理は、
    前記第1の異常スコアの第1のセットに基づき前記ロボット装置が実行している動作において異常を検出するように構成され、
    前記第1の異常スコアを前記クラスタリングから決定された対応クラスタで分割し、
    閾値を超える前記対応クラスタのそれぞれにおける前記第1の異常スコアの割合に基づいて、前記対応クラスタのそれぞれについての第2の異常スコアを計算し、
    前記第2の異常スコアに基づいて前記ロボット装置の異常又は正常状態の検出を出力する、方法。
  2. 請求項1に記載の方法であって、
    前記第2の異常計算処理は、前記対応クラスタのそれぞれについての前記第2の異常スコアの和に基づいて、前記ロボット装置の異常又は正常状態を検出する、ことを含む方法。
  3. 請求項1に記載の方法であって、さらに、前記複数の動作のそれぞれに対する前記ロボット装置の正常な挙動を表すパラメータのセットを、正常なデータから学習することを含む、方法。
  4. 請求項1に記載の方法であって、さらに、前記ロボット装置の異常又は正常状態の検出の出力と、第3の異常計算処理からの他の異常又は正常状態の検出の出力とを集約し、前記集約に基づいてアラートを生成することを含む、方法。
  5. 請求項1に記載の方法であって、前記一つの動作は、前記ロボット装置によって実行されるように構成されたジョブである、方法。
  6. 請求項1に記載の方法であって、前記ロボット装置はロボットアームである、方法。
  7. コンピュータに処理を実行させるプログラムであって、前記処理は、
    予め設定された複数の動作から一つの動作を実行するように構成されたロボット装置に関連付けられたセンサから、振動センサデータを受信し、
    前記ロボット装置が実行している動作を決定するために、前記振動センサデータのクラスタリングを行い、
    前記振動センサデータについて第1の異常計算処理を実行し、
    前記第1の異常計算処理は、時間範囲を規定する予め設定された時間窓での前記振動センサデータにおける異なるサンプルセットの各サンプルセットについて、
    前記各サンプルセットの移動平均に応じた前記各サンプルセットの平滑化に基づいて、前記各サンプルセットの各サンプルの変動成分を取得し、
    前記クラスタリングから決定された前記各サンプルセットの対応クラスタに基づく閾値を取得し、
    前記変動成分が前記閾値を超える前記各サンプルセット内のサンプルの割合に基づいて、前記各サンプルセットの第1の異常スコアを、生成し、

    前記第1の異常スコアの第1のセットを第2の異常計算処理に与え、
    前記第2の異常計算処理は、
    前記第1の異常スコアの第1のセットに基づき前記ロボット装置が実行している動作において異常を検出するように構成され、
    前記第1の異常スコアを前記クラスタリングから決定された対応クラスタで分割し、
    閾値を超える前記対応クラスタのそれぞれにおける前記第1の異常スコアの割合に基づいて、前記対応クラスタのそれぞれについての第2の異常スコアを計算し、
    前記第2の異常スコアに基づいて前記ロボット装置の異常又は正常状態の検出を出力する、ことを含む、プログラム。
  8. 請求項7に記載のプログラムであって、
    前記第2の異常計算処理は、前記対応クラスタのそれぞれについての前記第2の異常スコアの和に基づいて、前記ロボット装置の異常又は正常状態を検出する、ことを含むプログラム。
  9. 請求項7に記載のプログラムであって、前記コンピュータに実行させる処理は、さらに、前記複数の動作のそれぞれに対する前記ロボット装置の正常な挙動を表すパラメータのセットを、正常なデータから学習することを含む、プログラム。
  10. 請求項7に記載のプログラムであって、前記コンピュータに実行させる処理は、さらに、前記ロボット装置の異常又は正常状態の検出の出力と、第3の異常計算処理からの他の異常又は正常状態の検出の出力とを集約し、前記集約に基づいてアラートを生成することを含む、プログラム。
  11. 請求項7に記載のプログラムであって、前記一つの動作は、前記ロボット装置によって実行されるように構成されたジョブである、プログラム。
  12. 請求項7に記載のプログラムであって、前記ロボット装置はロボットアームである、プログラム。
  13. ロボット装置を管理する装置であって、
    1以上のプロセッサを含み、
    前記1以上のプロセッサは、
    予め設定された複数の動作から一つの動作を実行するように構成されたロボット装置に関連付けられたセンサから、振動センサデータを受信し、
    前記ロボット装置が実行している動作を決定するために、前記振動センサデータのクラスタリングを行い、
    前記振動センサデータについて第1の異常計算処理を実行し、
    前記第1の異常計算処理は、時間範囲を規定する予め設定された時間窓での前記振動センサデータにおける異なるサンプルセットの各サンプルセットについて、
    前記各サンプルセットの移動平均に応じた前記各サンプルセットの平滑化に基づいて、前記各サンプルセットの各サンプルの変動成分を取得し、
    前記クラスタリングから決定された前記各サンプルセットの対応クラスタに基づく閾値を取得し、
    前記変動成分が前記閾値を超える前記各サンプルセット内のサンプルの割合に基づいて、前記各サンプルセットの第1の異常スコアを、生成し、
    前記第1の異常スコアの第1のセットを第2の異常計算処理に与え、
    前記第2の異常計算処理は、
    前記第1の異常スコアの第1のセットに基づき前記ロボット装置が実行している動作において異常を検出するように構成され、
    前記第1の異常スコアを前記クラスタリングから決定された対応クラスタで分割し、
    閾値を超える前記対応クラスタのそれぞれにおける前記第1の異常スコアの割合に基づいて、前記対応クラスタのそれぞれについての第2の異常スコアを計算し、
    前記第2の異常スコアに基づいて、前記ロボット装置の異常又は正常状態の検出を出力する、装置。
JP2020155289A 2019-09-19 2020-09-16 ロボット装置の異常を検出する方法 Active JP6993483B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/576,429 US20210086361A1 (en) 2019-09-19 2019-09-19 Anomaly detection for robotic arms using vibration data
US16/576,429 2019-09-19

Publications (2)

Publication Number Publication Date
JP2021047183A JP2021047183A (ja) 2021-03-25
JP6993483B2 true JP6993483B2 (ja) 2022-01-13

Family

ID=72521404

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020155289A Active JP6993483B2 (ja) 2019-09-19 2020-09-16 ロボット装置の異常を検出する方法

Country Status (3)

Country Link
US (1) US20210086361A1 (ja)
EP (1) EP3796115B1 (ja)
JP (1) JP6993483B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220234202A1 (en) * 2021-01-22 2022-07-28 Aquila Engineering LLC Systems and methods for manipulating control panels using robotic arms based on control system data analytics
JPWO2022230532A1 (ja) * 2021-04-26 2022-11-03
CN113139259B (zh) * 2021-05-17 2022-10-18 国网甘肃省电力公司电力科学研究院 一种用于电网动态等值的风电场分群建模方法
CN116277161B (zh) * 2023-05-25 2023-12-08 山东理工职业学院 一种基于三维模型坐标的机械臂动态偏移监测系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017220176A (ja) 2016-06-10 2017-12-14 富士通株式会社 判定装置、判定方法、および判定プログラム
JP2019146421A (ja) 2018-02-22 2019-08-29 ファナック株式会社 故障予測装置及び機械学習装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5251151A (en) * 1988-05-27 1993-10-05 Research Foundation Of State Univ. Of N.Y. Method and apparatus for diagnosing the state of a machine
JP5301310B2 (ja) * 2009-02-17 2013-09-25 株式会社日立製作所 異常検知方法及び異常検知システム
KR20170121869A (ko) * 2016-04-26 2017-11-03 시그널링크 주식회사 가공로봇의 3차원 가공 진동 모니터링 시스템 및 방법
US10695907B2 (en) * 2017-09-29 2020-06-30 Intel Corporation Methods and apparatus for monitoring robot health in manufacturing environments
JP7051045B2 (ja) * 2017-11-08 2022-04-11 オムロン株式会社 移動式マニピュレータ、移動式マニピュレータの制御方法及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017220176A (ja) 2016-06-10 2017-12-14 富士通株式会社 判定装置、判定方法、および判定プログラム
JP2019146421A (ja) 2018-02-22 2019-08-29 ファナック株式会社 故障予測装置及び機械学習装置

Also Published As

Publication number Publication date
US20210086361A1 (en) 2021-03-25
EP3796115B1 (en) 2022-11-09
EP3796115A1 (en) 2021-03-24
JP2021047183A (ja) 2021-03-25

Similar Documents

Publication Publication Date Title
JP6993483B2 (ja) ロボット装置の異常を検出する方法
WO2021098634A1 (en) Non-intrusive data analytics system for adaptive intelligent condition monitoring of lifts
JP7042315B2 (ja) 可動装置を予測保全する方法
Langarica et al. An industrial internet application for real-time fault diagnosis in industrial motors
EP3671466B1 (en) Unsupervised anomaly detection for arbitrary time series
JP2020009411A (ja) 多次元時系列におけるスパース・ニューラル・ネットワーク・ベース異常検出
JP2016085704A (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム
WO2017087440A1 (en) Anomaly fusion on temporal casuality graphs
US20230176562A1 (en) Providing an alarm relating to anomaly scores assigned to input data method and system
JP2022554302A (ja) 製造プロセスのためのシステム、方法、および媒体
US20220067526A1 (en) Hardware accelerator extension to transfer learning - extending/finishing training to the edge
JP2018528511A (ja) 生産システムにおける出力効率の最適化
CN115769235A (zh) 提供与训练函数的准确度有关的警报的方法和系统
WO2020152741A1 (ja) 異常要因推定装置、異常要因推定方法、及びプログラム
EP4018399A1 (en) Modeling human behavior in work environments using neural networks
WO2021110388A1 (en) System, device and method for model based analytics
de Oliveira et al. Non-invasive embedded system hardware/firmware anomaly detection based on the electric current signature
EP4141679A1 (en) Management of an app, especially testing the deployability of an app comprising a trained function using a virtual test environment, method and system
US20210279597A1 (en) System for predictive maintenance using discriminant generative adversarial networks
US20230104028A1 (en) System for failure prediction for industrial systems with scarce failures and sensor time series of arbitrary granularity using functional generative adversarial networks
JP2021524644A (ja) マルチレベル・パターン認識に基づく複雑な動作システムにおけるコンディションの評価のためのシステム及び方法
Rudakova et al. Research of Acoustic Signals Digital Processing Methods Application Efficiency for the Electromechanical System Functional Diagnostics
EP3730910B1 (en) Adaptive acoustic sensing method and system
US20230222322A1 (en) Vibration data analysis with functional neural network for predictive maintenance
JP7450517B2 (ja) 加工面判定装置、加工面判定プログラム、加工面判定方法、及び、加工システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210629

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210830

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211209

R150 Certificate of patent or registration of utility model

Ref document number: 6993483

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150