(57)【要約】【課題】装置の異常を診断する精度を保ちつつ、異常を診断するために使用する学習済みのモデルのデータ量を削減することができる診断装置、診断システム、診断方法およびプログラムを提供する。【解決手段】対象装置の動作の種類ごとに定められた複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報と、対象装置の動作に応じて変化する周波数成分を含む物理量の検知情報と、を対象装置から受信する受信部と、受信部により受信された検知情報から、その検知情報の周波数を、予め設定された基準周波数に変換して変換情報を得る第１前処理部と、第１前処理部により変換された変換情報と、１以上のコンテキスト情報それぞれに対して定められる１以上のモデルのうち受信部により受信されたコンテキスト情報に対応するモデルと、を用いて、対象装置の動作が正常であるか否かを判定する判定部と、を備える。【選択図】図４
2018004566.tif 000002
【特許請求の範囲】
【請求項１】
対象装置の動作の種類ごとに定められた複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報と、前記対象装置の動作に応じて変化する周波数成分を含む物理量の検知情報と、を前記対象装置から受信する受信部と、
前記受信部により受信された前記検知情報から、該検知情報の周波数を、予め設定された基準周波数に変換して変換情報を得る第１前処理部と、
前記第１前処理部により変換された前記変換情報と、１以上の前記コンテキスト情報それぞれに対して定められる１以上のモデルのうち前記受信部により受信された前記コンテキスト情報に対応するモデルと、を用いて、前記対象装置の動作が正常であるか否かを判定する判定部と、
を備えた診断装置。
【請求項２】
前記判定部は、前記受信部により受信された前記検知情報のうち、前記受信部により受信された前記コンテキスト情報で特定される期間の検知情報から前記第１前処理部により変換された前記変換情報と、前記受信部により受信された前記コンテキスト情報に対応するモデルと、を用いて、前記期間の前記対象装置の動作が正常であるか否かを判定する請求項１に記載の診断装置。
【請求項３】
前記受信部は、異なる物理量にそれぞれ対応する複数の検知情報を受信し、
前記第１前処理部は、複数の前記検知情報のうち、前記コンテキスト情報に応じて定められる前記検知情報から前記変換情報に変換し、
前記判定部は、複数の前記変換情報のうち、前記コンテキスト情報に応じて定められる前記変換情報と、前記受信部により受信された前記コンテキスト情報に対応するモデルとを用いて、前記対象装置の動作が正常であるか否かを判定する請求項１または２に記載の診断装置。
【請求項４】
前記基準周波数は、予め複数設定されており、
前記第１前処理部は、複数の前記基準周波数から、前記検知情報の周波数特性と前記変換情報の周波数特性との差が小さくなるような前記基準周波数を選択し、前記検知情報から、該検知情報の周波数を、選択した前記基準周波数に変換して前記変換情報を得る請求項１〜３のいずれか１項に記載の診断装置。
【請求項５】
前記第１前処理部は、複数の前記基準周波数から、前記受信部により受信された前記検知情報の周波数が前記基準周波数よりも小さい場合は該基準周波数に対する該周波数の割合を求め、前記検知情報の周波数が前記基準周波数よりも大きい場合は該周波数に対する該基準周波数の割合を求め、求めた前記割合が最も大きい基準周波数を選択する請求項４に記載の診断装置。
【請求項６】
前記受信部により受信された前記検知情報から、該検知情報の周波数と異なる１以上の前記基準周波数に変換する第２前処理部と、
前記第２前処理部により変換された情報を用いて、前記検知情報に対応する前記コンテキスト情報に対応するモデルを生成する生成部と、
をさらに備えた請求項１〜５のいずれか一項に記載の診断装置。
【請求項７】
前記受信部によりモデルが定められていないコンテキスト情報が受信された場合に、前記コンテキスト情報に対応する前記検知情報を用いて、モデルが定められていないコンテキスト情報に対するモデルを生成する生成部を、さらに備えた請求項１〜５のいずれか一項に記載の診断装置。
【請求項８】
前記第１前処理部は、前記受信部により受信されたコンテキスト情報から、該受信部により受信された前記検知情報の周波数を得る請求項１〜７のいずれか一項に記載の診断装置。
【請求項９】
前記第１前処理部は、前記受信部により受信された前記検知情報を解析して、該検知情報の周波数を得る請求項１〜７のいずれか一項に記載の診断装置。
【請求項１０】
前記受信部により前記コンテキスト情報が受信されない場合、該コンテキスト情報を入力する操作部を、さらに備えた請求項１〜９のいずれか一項に記載の診断装置。
【請求項１１】
前記判定部は、前記コンテキスト情報で特定される期間のうち、判定に用いる期間を、前記受信部により受信された前記検知情報に基づいて決定し、決定した期間に対応する前記検知情報と、前記モデルとを用いて、前記対象装置の動作が正常であるか否かを判定する請求項１〜１０のいずれか一項に記載の診断装置。
【請求項１２】
前記判定部は、前記受信部により受信された前記検知情報の前記モデルに対する尤度を求め、前記尤度、および、該尤度の変動を示す値のうち少なくとも一方と、閾値と、を比較することにより、前記対象装置の動作が正常であるか否かを判定する請求項１〜１１のいずれか一項に記載の診断装置。
【請求項１３】
請求項１〜１２のいずれか一項に記載の診断装置と、
前記物理量を前記検知情報として検知する検知部と、
を備えた診断システム。
【請求項１４】
対象装置の動作の種類ごとに定められた複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報と、前記対象装置の動作に応じて変化する周波数成分を含む物理量の検知情報と、を前記対象装置から受信する受信ステップと、
受信した前記検知情報から、該検知情報の周波数を、予め設定された基準周波数に変換して変換情報を得る前処理ステップと、
変換した前記変換情報と、１以上の前記コンテキスト情報それぞれに対して定められる１以上のモデルのうち受信した前記コンテキスト情報に対応するモデルと、を用いて、前記対象装置の動作が正常であるか否かを判定する判定ステップと、
を有する診断方法。
【請求項１５】
コンピュータを、
対象装置の動作の種類ごとに定められた複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報と、前記対象装置の動作に応じて変化する周波数成分を含む物理量の検知情報と、を前記対象装置から受信する受信部と、
前記受信部により受信された前記検知情報から、該検知情報の周波数を、予め設定された基準周波数に変換して変換情報を得る第１前処理部と、
前記第１前処理部により変換された前記変換情報と、１以上の前記コンテキスト情報それぞれに対して定められる１以上のモデルのうち前記受信部により受信された前記コンテキスト情報に対応するモデルと、を用いて、前記対象装置の動作が正常であるか否かを判定する判定部と、
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、診断装置、診断システム、診断方法およびプログラムに関する。
【背景技術】
【０００２】
ドリル等の回転体等を有する装置において、コンテキスト情報に基づく動作状態毎に、予め加速度センサ等で取得したセンサデータにより学習した学習済みのモデルを構築し、判定対象となるセンサデータに対して、モデルとの比較から異常の有無を判定する技術が既に知られている。
【０００３】
このように回転体等が発生するセンサデータ（例えば、収録した音）に対して異常の有無を判定する技術として、動作モード情報を基にして、異常音に起因する周波数成分を観測可能な周波数帯域への折り返しを考慮した上で、予め定められた異常指標に基づいて、正常音との比較によって異常が発生しているか否かを診断する技術が提案されている（特許文献１参照）。
【０００４】
また、予め用意したデータを基に、学習済みのモデルを構築して異常の有無を判定する技術が提案されている（特許文献２参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載された技術では、異常指標が予め定められていなければならず、異常指標の定義がうまくできない場合、正しく異常の有無の判定ができないという問題があった。
【０００６】
また、特許文献２に記載された技術では、予め用意されたデータを基に学習済みのモデルを構築し、異常指標を明確に定義する必要はないが、判定の基準になるモデルを予め多く用意しておく必要があり、例えば、加工機の加工具の劣化状態の推定等は異なる回転数ごとに学習済みのモデルを用意しなければならず、それらの多くのモデルを記憶する記憶装置の容量を圧迫するという問題があった。
【０００７】
本発明は、上述の課題に鑑みてなされたものであり、装置の異常を診断する精度を保ちつつ、異常を診断するために使用する学習済みのモデルのデータ量を削減することができる診断装置、診断システム、診断方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、対象装置の動作の種類ごとに定められた複数のコンテキスト情報のうち現在の動作に対応するコンテキスト情報と、対象装置の動作に応じて変化する周波数成分を含む物理量の検知情報と、を対象装置から受信する受信部と、受信部により受信された検知情報から、その検知情報の周波数を、予め設定された基準周波数に変換して変換情報を得る第１前処理部と、第１前処理部により変換された変換情報と、１以上のコンテキスト情報それぞれに対して定められる１以上のモデルのうち受信部により受信されたコンテキスト情報に対応するモデルと、を用いて、対象装置の動作が正常であるか否かを判定する判定部と、を備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、装置の異常を診断する精度を保ちつつ、異常を診断するために使用する学習済みのモデルのデータ量を削減することができる。
【図面の簡単な説明】
【００１０】
【図１】図１は、第１の実施形態に係る診断システムの構成例を示す図である。
【図２】図２は、第１の実施形態の加工機のハードウェア構成の一例を示す図である。
【図３】図３は、第１の実施形態に係る診断装置のハードウェア構成の一例を示す図である。
【図４】図４は、第１の実施形態に係る診断装置の機能ブロックの構成の一例を示す図である。
【図５】図５は、第１の実施形態における診断処理の一例を示すフローチャートである。
【図６−１】図６−１は、検知情報の生データの一例を示すグラフである。
【図６−２】図６−２は、検知情報を基準回転周波数に変換したデータの一例を示すグラフである。
【図７−１】図７−１は、検知情報の周波数スペクトルの一例を示すグラフである。
【図７−２】図７−２は、検知情報の周波数スペクトルの一例を示すグラフである。
【図７−３】図７−３は、検知情報を基準回転周波数に変換したデータの周波数スペクトルの一例を示すグラフである。
【図８】図８は、第１の実施形態におけるモデル生成処理の一例を示すフローチャートである。
【図９】図９は、第１の実施の形態におけるモデル生成処理および診断処理の具体例を説明する図である。
【図１０】図１０は、一部のコンテキスト情報についてモデル生成処理および診断処理を行う具体例を説明する図である。
【図１１】図１１は、共通のモデルを他の加工工程で使用する例を説明する図である。
【図１２】図１２は、累積使用時間をコンテキスト情報として利用する場合の例を説明する図である。
【図１３】図１３は、モデルが生成されていないコンテキスト情報が入力された場合にモデルを生成する動作を説明する図である。
【図１４】図１４は、第２の実施形態に係る診断装置の機能ブロックの構成の一例を示す図である。
【図１５】図１５は、駆動部によって異なる検知情報を判定対象とすることを説明する図である。
【図１６】図１６は、検知情報の決定に用いられる対応情報のデータ構造の一例を示す図である。
【図１７】図１７は、第３の実施形態に係る診断装置の機能ブロックの構成の一例を示す図である。
【図１８】図１８は、複数の基準回転周波数に変換した検知情報からモデルを生成する動作の一例を示す図である。
【図１９】図１９は、第４の実施形態に係る診断装置の機能ブロックの構成の一例を示す図である。
【図２０】図２０は、コンテキスト情報と加工区間との関係の一例を示す図である。
【図２１】図２１は、加工区間の特定方法の一例を示す図である。
【図２２】図２２は、尤度と判定値ｒ（ｋ）との関係の一例を示すグラフである。
【発明を実施するための形態】
【００１１】
以下に、図面を参照しながら、本発明に係る診断装置、診断システム、診断方法およびプログラムの実施の形態を詳細に説明する。また、以下の実施の形態によって本発明が限定されるものではなく、以下の実施の形態における構成要素には、当業者が容易に想到できるもの、実質的に同一のもの、およびいわゆる均等の範囲のものが含まれる。さらに、以下の実施の形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換、変更および組み合わせを行うことができる。
【００１２】
［第１の実施形態］
（診断システムの構成）
図１は、第１の実施形態に係る診断システムの構成例を示す図である。図１を参照しながら、本実施形態に係る診断システムの構成について説明する。
【００１３】
図１に示すように、診断システムは、加工機２００（対象装置の一例）と、診断装置１００と、を含む。加工機２００は、診断装置１００による診断の対象となる対象装置の一例である。  
【００１４】
加工機２００と診断装置１００とは、どのような接続形態で接続されてもよい。例えば、加工機２００と診断装置１００とは、専用線、有線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の有線ネットワーク、または、無線ネットワーク等により接続される。
【００１５】
加工機２００は、数値制御部２０１と、通信制御部２０２と、駆動制御部２０３と、駆動部２０４と、検知部２１１と、を備えている。なお、検知部２１１は、加工機２００に予め備えられている場合、または、完成機械である加工機２００に対して後から取り付けられる場合等がある。
【００１６】
加工機２００は、数値制御部２０１の制御に従い加工対象を加工する機械である。加工機２００は、数値制御部２０１の制御により動作する駆動部２０４を含む。駆動部２０４は、例えば、モータ等であり、加工に用いられ、数値制御の対象となるものであればどのようなものであってもよい。なお、駆動部２０４は、２以上備えられていてもよい。  
【００１７】
数値制御部２０１は、駆動部２０４による加工を数値制御（ＮＣ：Ｎｕｍｅｒｉｃａｌ  Ｃｏｎｔｒｏｌ）により実行する。例えば、数値制御部２０１は、駆動部２０４の動作を制御するための数値制御データを生成して出力する。また、数値制御部２０１は、コンテキスト情報を通信制御部２０２に出力する。ここで、コンテキスト情報とは、加工機２００の動作の種類ごとに複数定められる情報である。コンテキスト情報は、例えば、駆動部２０４を識別する情報、駆動部２０４の回転数、駆動部２０４の回転速度、駆動部２０４に係る負荷、駆動部２０４の大きさ、および、駆動部２０４の使用開始からの累積使用時間等を含む。  
【００１８】
数値制御部２０１は、例えば、現在の動作を示すコンテキスト情報を、通信制御部２０２を介して診断装置１００に送信する。数値制御部２０１は、加工対象を加工する際、加工の工程に応じて、駆動する駆動部２０４の種類、駆動部２０４の駆動状態（回転数、回転速度等）を変更する。数値制御部２０１は、動作の種類を変更するごとに、変更した動作の種類に対応するコンテキスト情報を、通信制御部２０２を介して診断装置１００に逐次送信する。  
【００１９】
通信制御部２０２は、診断装置１００等の外部装置との間の通信を制御する。例えば、通信制御部２０２は、現在の動作に対応するコンテキスト情報を診断装置１００に送信する。  
【００２０】
駆動制御部２０３は、数値制御部２０１により求められた数値制御データに基づいて、駆動部２０４を駆動制御する。
【００２１】
検知部２１１は、加工機２００の動作に応じて変化する物理量を検知し、検知情報（センサデータ）を出力する。なお、検知部２１１の種類、および、検知する物理量はどのようなものであってもよい。例えば、検知部２１１を、マイク、加速度センサ、または、ＡＥ（Ａｃｏｕｓｔｉｃ  Ｅｍｉｓｓｉｏｎ）センサとし、それぞれ、音響データ、加速度データ、振動データまたは、ＡＥ波を示すデータを検知情報としてもよい。また、検知部２１１の個数は任意であってよい。また、同一の物理量を検知する複数の検知部２１１を備えてもよいし、相互に異なる物理量を検知する複数の検知部２１１を備えてもよい。  
【００２２】
例えば、加工に用いる刃の折れ、および、刃のチッピング等が発生すると、加工時の音が変化する。このため、検知部２１１（マイク）で音響データを検知し、正常音を示すモデル等と比較することにより、加工機２００の動作の異常を検知可能となる。
【００２３】
診断装置１００は、通信制御部１０１と、判定部１０２と、を備えている。
【００２４】
通信制御部１０１は、加工機２００等の外部装置との間の通信を制御する。例えば、通信制御部１０１は、コンテキスト情報および検知情報を加工機２００から受信する。判定部１０２は、コンテキスト情報および検知情報を参照して、加工機２００の動作が正常であるか否かを判定する。各部の機能の詳細は後述する。  
【００２５】
（加工機のハードウェア構成）
図２は、第１の実施形態の加工機のハードウェア構成の一例を示す図である。図２を参照しながら、本実施形態の加工機２００のハードウェア構成について説明する。
【００２６】
図２に示すように、加工機２００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５３と、通信Ｉ／Ｆ（インターフェース）５４と、駆動制御回路５５と、モータ５６と、がバス５８で接続された構成となっている。
【００２７】
ＣＰＵ５１は、加工機２００の全体を制御する。ＣＰＵ５１は、例えば、ＲＡＭ５３をワークエリア（作業領域）としてＲＯＭ５２等に格納されたプログラムを実行することで、加工機２００全体の動作を制御し、加工機能を実現する。  
【００２８】
通信Ｉ／Ｆ５４は、診断装置１００等の外部装置と通信するためのインターフェースである。駆動制御回路５５は、モータ５６の駆動を制御する回路である。モータ５６は、ドリル、カッタ、および、テーブル等の加工に用いる工具を駆動する。モータ５６は、例えば、図１に示す駆動部２０４に相当する。センサ５７は、加工機２００の動作に応じて変化する物理量を検知し、検知情報を診断装置１００へ出力する。センサ５７は、例えば、図１に示す検知部２１１に相当する。  
【００２９】
なお、図１に示す数値制御部２０１および通信制御部２０２は、図２に示すＣＰＵ５１にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等のハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。  
【００３０】
（診断装置のハードウェア構成）
図３は、第１の実施形態に係る診断装置のハードウェア構成の一例を示す図である。図３を参照しながら、本実施形態に係る診断装置１００のハードウェア構成について説明する。
【００３１】
図３に示すように、診断装置１００は、ＣＰＵ６１と、ＲＯＭ６２と、ＲＡＭ６３と、通信Ｉ／Ｆ６４と、入出力Ｉ／Ｆ６５と、入力装置６６と、ディスプレイ６７と、補助記憶装置６８と、がバス６９で接続された構成となっている。  
【００３２】
ＣＰＵ６１は、診断装置１００の全体を制御する。ＣＰＵ６１は、例えば、ＲＡＭ６３をワークエリア（作業領域）としてＲＯＭ６２等に格納されたプログラムを実行することで、診断装置１００全体の動作を制御し、診断機能を実現する。
【００３３】
通信Ｉ／Ｆ６４は、加工機２００等の外部装置と通信するためのインターフェースである。
【００３４】
入出力Ｉ／Ｆ６５は、各種装置（例えば、入力装置６６およびディスプレイ６７）とバス６９とを接続するためのインターフェースである。
【００３５】
入力装置６６は、文字および数字等の入力、各種指示の選択、ならびにカーソルの移動等の操作を行うためのマウスまたはキーボード等の入力装置である。
【００３６】
ディスプレイ６７は、カーソル、メニュー、ウィンドウ、文字または画像等の各種情報を表示するＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、プラズマディスプレイ、または有機ＥＬ（Ｅｌｅｃｔｒｏ−Ｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ等の表示装置である。
【００３７】
補助記憶装置６８は、診断装置１００の設定情報、加工機２００から受信された検知情報、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、アプリケーションプログラム、および各種データを記憶するＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、またはＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の不揮発性の記憶装置である。なお、補助記憶装置６８は、診断装置１００が備えるものとしているが、これに限定されるものではなく、例えば、診断装置１００の外部に設置された記憶装置であってもよく、または、診断装置１００とデータ通信可能なサーバ装置が備えた記憶装置であってもよい。
【００３８】
（診断装置の機能ブロックの構成）
図４は、第１の実施形態に係る診断装置の機能ブロックの構成の一例を示す図である。図４を参照しながら、本実施形態に係る診断装置１００の機能ブロックの構成について説明する。
【００３９】
図４に示すように、診断装置１００は、上述の通信制御部１０１および判定部１０２に加え、受付部１０３と、特徴抽出部１０４と、生成部１０５と、前処理部１０６（第１前処理部）と、記憶部１１１と、を備えている。  
【００４０】
記憶部１１１は、診断装置１００による診断機能で必要な各種情報を記憶する。記憶部１１１は、例えば、図３のＲＡＭ６３および補助記憶装置６８等により実現できる。例えば、記憶部１１１は、異常の判定に用いる１以上のモデルを記憶する。  
【００４１】
モデルは、例えば、加工機２００が正常に動作しているときに検知部２１１により検知された検知情報を用いて、学習により生成される。学習方法、および、学習するモデルの形式は、どのような方法であってもよい。例えば、ＧＭＭ（ガウス混合モデル）、および、ＨＭＭ（隠れマルコフモデル）等のモデルおよび対応するモデル学習方法を適用できる。  
【００４２】
本実施形態では、モデルは、コンテキスト情報ごとに生成される。記憶部１１１は、例えば、コンテキスト情報と、当該コンテキスト情報に対応するモデルとを対応付けて記憶する。さらに、後述するが、記憶部１１１が記憶するあるコンテキスト情報に対応するモデルとして、上述の検知部２１１が検知する検知情報のうち特定の回転周波数である基準回転周波数の検知情報から生成されたモデルが記憶されている。
【００４３】
通信制御部１０１は、受信部１０１ａと、送信部１０１ｂと、を備えている。受信部１０１ａは、加工機２００等の外部装置から送信された各種情報を受信する。例えば、受信部１０１ａは、加工機２００の現在の動作に対応するコンテキスト情報と、検知部２１１により送信された検知情報と、を受信する。送信部１０１ｂは、外部装置に対して各種情報を送信する。  
【００４４】
前処理部１０６は、受信部１０１ａにより受信された検知情報を特徴抽出部１０４へ送信する前に、予め決められた基準に従って変換処理（前処理）をする。変換するための基準は複数あってもよく、例えば、検知情報が加工機２００のドリルで切削中の振動データだとすると、前処理部１０６は、コンテキスト情報から得られた加工中のドリルの回転周波数を予め決められた１以上の基準回転周波数のうち、元の振動データとの変化が少ない基準回転周波数となるようなデータ（以下、「変換情報」と称する場合がある）へ変換する。この際、モデル作成のための振動データを予め決められた基準回転周波数の学習データとして用意して、それを基にモデルを作成しておき、前処理部１０６は、判定の対象となる振動データの回転周波数を、用意した学習データの基準回転周波数に合わせるように変換する。なお、前処理部１０６は、コンテキスト情報から加工中のドリル等の回転周波数を得るものとしたが、これに限定されるものではなく、検知情報を解析して回転周波数を得るものとしてもよい。
【００４５】
特徴抽出部１０４は、モデルの生成で用いる特徴情報を検知情報から抽出し、判定部１０２による判定で用いる特徴情報を、前処理部１０６から受け取った変換情報から抽出する。特徴情報は、検知情報の特徴を示す情報であればどのような情報であってもよい。例えば、検知情報がマイクにより集音された音響データである場合、特徴抽出部１０４は、エネルギー、周波数スペクトル、および、ＭＦＣＣ（メル周波数ケプストラム係数）等を特徴情報として抽出してもよい。  
【００４６】
生成部１０５は、正常動作時の検知情報から抽出された特徴情報を用いた学習により、正常動作を判定するためのモデルを作成する。モデルを外部装置で生成する場合は、生成部１０５は備えなくてもよい。生成部１０５は、モデルが定められていないコンテキスト情報と、当該コンテキスト情報に対応する検知情報が入力された場合に、この検知情報から抽出された特徴情報を用いて、当該コンテキスト情報に対応するモデルを生成してもよい。  
【００４７】
判定部１０２は、前処理部１０６により検知情報から変換された変換情報と、受信部１０１ａにより受信されたコンテキスト情報、および検知情報を変換した基準回転周波数に対応するモデルと、を用いて、加工機２００の動作が正常であるか否かを判定する。例えば、判定部１０２は、特徴抽出部１０４に対して変換情報からの特徴情報の抽出を依頼する。判定部１０２は、変換情報から抽出された特徴情報が正常であることの尤もらしさを示す尤度を、対応するモデルを用いて算出する。判定部１０２は、尤度と、予め定められた閾値とを比較し、例えば尤度が閾値以上である場合に、加工機２００の動作は正常であると判定する。また、判定部１０２は、尤度が閾値未満である場合に、加工機２００の動作は異常であると判定する。  
【００４８】
なお、加工機２００の動作が正常か否かの判定方法はこれに限られるものではなく、変換情報とモデルとを用いて、加工機２００の動作が正常か否かを判定できる方法であればどのような方法であってもよい。例えば、尤度の値を直接閾値と比較する代わりに、尤度の変動を示す値と閾値とを比較してもよい。  
【００４９】
受付部１０３は、受信部１０１ａが加工機２００から受信するコンテキスト情報とは異なるコンテキスト情報の入力を受け付ける。例えば、累積使用時間は、加工機２００から取得するように構成できる。この場合、加工機２００は、例えば、工具を交換したときに累積使用時間をリセット（初期化）する機能を備えていてもよい。  
【００５０】
なお、累積使用時間を加工機２００から取得せず、受付部１０３が受け付けるように構成することもできる。受付部１０３は、例えば、キーボードおよびタッチパネル等の操作部から入力されたコンテキスト情報を受け付ける。受付部１０３で受け付けるコンテキスト情報は、累積使用時間に限らず、例えば、使用する工具の仕様の情報（刃の直径、刃数、材質、工具にコーティングが施されているか否か等）や、加工する材料の情報（材質等）の情報でもよい。受付部１０３が、サーバ装置およびＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等の外部装置からコンテキスト情報を受信するように構成してもよい。加工機２００以外からコンテキスト情報を受け付ける必要がない場合は、受付部１０３は備えなくてもよい。  
【００５１】
なお、図４の各部（通信制御部１０１、判定部１０２、受付部１０３、特徴抽出部１０４、生成部１０５、前処理部１０６）は、図３のＣＰＵ６１にプログラムを実行させること、すなわち、ソフトウェアにより実現してもよいし、ＩＣ等のハードウェアにより実現してもよいし、ソフトウェアおよびハードウェアを併用して実現してもよい。
【００５２】
また、図４に示した診断装置１００の各機能部（通信制御部１０１、受信部１０１ａ、送信部１０１ｂ、判定部１０２、受付部１０３、特徴抽出部１０４、生成部１０５、前処理部１０６、および記憶部１１１）は、機能を概念的に示したものであって、このような構成に限定されるものではない。例えば、図４で独立した機能部として図示した複数の機能部を、１つの機能部として構成してもよい。一方、図４の１つの機能部が有する機能を複数に分割し、複数の機能部として構成するものとしてもよい。
【００５３】
（診断装置による診断処理）
図５は、第１の実施形態における診断処理の一例を示すフローチャートである。図６−１は、検知情報の生データの一例を示すグラフである。図６−２は、検知情報を基準回転周波数に変換したデータの一例を示すグラフである。図７−１および図７−２は、検知情報の周波数スペクトルの一例を示すグラフである。図７−３は、検知情報を基準回転周波数に変換したデータの周波数スペクトルの一例を示すグラフである。図５、図６−１、図６−２、および図７−１〜図７−３を参照しながら、本実施形態に係る診断装置１００による診断処理について説明する。
【００５４】
上述のように、加工機２００の数値制御部２０１は、現在の動作を示すコンテキスト情報を逐次、診断装置１００に送信する。受信部１０１ａは、このようにして加工機２００から送信されたコンテキスト情報を受信する（ステップＳ１０１）。また加工機２００の検知部２１１は、加工時の検知情報を逐次出力する。受信部１０１ａは、このようにして加工機２００から送信された検知情報（センサデータ）を受信する（ステップＳ１０２）。  
【００５５】
前処理部１０６は、受信部１０１ａにより受信された検知情報を特徴抽出部１０４へ送信する前に、予め決められた基準に従って変換処理（前処理）をする。すなわち、前処理部１０６は、検知情報を、コンテキスト情報から得られた駆動部２０４の回転周波数を予め決められた１以上の基準回転周波数のうち、元の検知情報との変化が少ない基準回転周波数となるようなデータ（変換情報）へ変換する（ステップＳ１０３）。
【００５６】
ここで、図６−１に示すグラフは、受信部１０１ａにより受信された検知情報の生データを示している。このうち、図６−１（ａ）は、回転周波数が２５［Ｈｚ］の検知情報を示し、図６−１（ｂ）は、回転周波数が２．８［Ｈｚ］の検知情報を示している。そして、図６−２に示すグラフは、前処理部１０６によって、図６−１に示す検知情報を、基準回転周波数の一例である３［Ｈｚ］に変換した場合の変換情報を示している。このうち、図６−２（ａ）は、回転周波数が２５［Ｈｚ］の検知情報を、基準回転周波数である３［Ｈｚ］に変換した変換情報を示し、図６−２（ｂ）は、回転周波数が２．８［Ｈｚ］の検知情報を、基準回転周波数である３［Ｈｚ］に変換した変換情報を示す。すなわち、図６−２（ａ）に示す変換情報は、元の検知情報の回転周波数を下げるアップサンプリングした情報であり、図６−２（ｂ）に示す変換情報は、元の検知情報の回転周波数を上げるダウンサンプリングした情報であり、それぞれサンプリングレートを変えずに変換された情報である。また、図６−２に示す変換情報は、いずれも３［Ｈｚ］に変換された情報であるので、振動の周期がほぼ一致している。
【００５７】
また、図７−１〜図７−３は、それぞれ、２５［Ｈｚ］の生データである検知情報（図６−１（ａ））、２．８［Ｈｚ］の生データである検知情報（図６−１（ｂ））、および、２５［Ｈｚ］の検知情報から３［Ｈｚ］に変換した変換情報（図６−２（ａ））のパワースペクトル（周波数スペクトル）を示す。図７−３のパワースペクトルの縦軸のスケールが大きいのは、振幅に関して正規化を行っているためである。また、２５［Ｈｚ］の変換前のパワースペクトル（図７−１）より変換後のパワースペクトル（図７−３）の方が周期的な振幅を示す、くし状のスペクトルが現れており、傾向として図７−２の検知情報のパワースペクトルに近づいている。したがって、２５［Ｈｚ］の検知情報に対して、３［Ｈｚ］の基準回転周波数に対応したモデルを用いて、異常の判定を行うよりも、上述のように、２５［Ｈｚ］の検知情報を基準回転周波数の３［Ｈｚ］となるように変換した変換情報に対して、３［Ｈｚ］の基準回転周波数に対応したモデルを用いて、異常の判定を行う方が精度よく判定を行うことができる。
【００５８】
また、上述の例では、２５［Ｈｚ］の検知情報を変換して３［Ｈｚ］の変換情報としているため約８倍のアップサンプリングが行われている。しかし、元の２５［Ｈｚ］のセンサデータ（検知情報）には、駆動部２０４によって駆動される回転体等によらない振動成分も含まれているため、変換によって不自然な信号が得られる場合がある。そこで元のセンサデータ（検知情報）を大きく変化させるようなアップサンプリングおよびダウンサンプリングを行わないようにするために、複数の基準回転周波数を設定してもよく、前処理部１０６は、複数の基準回転周波数のうち、最も元の検知情報からの変化が小さい基準回転周波数へ変換を行うようにしてもよい。
【００５９】
例えば、複数の基準回転周波数として、予め５［Ｈｚ］、１０［Ｈｚ］、２０［Ｈｚ］および４０［Ｈｚ］の基準回転周波数が設定されているものとする。そして、前処理部１０６は、以下の式（１）で求まる指標値ｆ（ｘ，ｙ）（回転周波数の基準回転周波数に対する割合、または、基準回転周波数の回転周波数に対する割合）に基づいて、最適な基準回転周波数を選択する。
【００６０】
ｆ（ｘ，ｙ）＝ｘ／ｙ  （ｘ＜ｙの場合）
ｆ（ｘ，ｙ）＝ｙ／ｘ  （ｘ≧ｙの場合）                            ・・・（１）
【００６１】
この式（１）において、ｘは、受信部１０１ａにより受信された検知情報（センサデータ）の回転周波数であり、ｙは、基準回転周波数である。ここで、検知情報の回転周波数を２５［Ｈｚ］とした場合、上述の４つの基準回転周波数に対応する指標値ｆ（ｘ，ｙ）はそれぞれ、以下のように求まる。
【００６２】
ｆ（２５，５）＝５／２５＝０．２
ｆ（２５，１０）＝１０／２５＝０．４
ｆ（２５，２０）＝２０／２５＝０．８
ｆ（２５，４０）＝２５／４０＝０．６２５
【００６３】
このように算出された各基準回転周波数に対応する指標値のうち、最大となる指標値に対応する基準回転周波数を、変換する回転周波数として選択する。すなわち、このように選択された基準回転周波数によって変換され変換情報が、最も元の検知情報からの変化が小さいものと判断する。ここでは、指標値０．８が最大なので、前処理部１０６は、基準回転周波数２０［Ｈｚ］を選択し、検知情報の回転周波数をこの基準回転周波数となるように変換する。
【００６４】
なお、上述のように、式（１）に従う指標値に基づいて基準回転周波数を選択する方法以外に、例えば、単純に、検知情報の回転周波数に最も近い基準回転周波数を選択するものとしてもよい。
【００６５】
特徴抽出部１０４は、前処理部１０６により変換された変換情報から特徴情報を抽出する（ステップＳ１０４）。判定部１０２は、抽出された特徴情報と、受信されたコンテキスト情報、および検知情報を変換した変換情報の基準回転周波数に対応するモデルと、を用いて、加工機２００が正常に動作しているか否かを判定する（ステップＳ１０５）。判定部１０２は、判定結果を出力する（ステップＳ１０６）。判定結果の出力方法はどのような方法であってもよい。判定部１０２は、例えば、診断装置１００のディスプレイ６７に判定結果を表示してもよい。あるいは、判定部１０２が、サーバ装置およびＰＣ等の外部装置に判定結果を出力してもよい。  
【００６６】
なお、上述の回転周波数を変換する処理の対象となる検知情報の発生元は、ドリル、砥石、エンドミル、もしくはフライス等の工具でもよく、または、部材を加工する工具ではなく軸受け等の回転体であってもよい。
【００６７】
（診断装置によるモデル生成処理）
図８は、第１の実施形態におけるモデル生成処理の一例を示すフローチャートである。図８を参照しながら、本実施形態に係る診断装置１００によるモデル生成処理について説明する。なお、モデル生成処理は、例えば、診断処理の前に事前に実行される。あるいは、モデルが定められていないコンテキスト情報が入力された場合にモデル生成処理を実行するように構成してもよい。また、上述のようにモデルを外部で生成する場合は、モデル生成処理は実行されなくてもよい。
【００６８】
受信部１０１ａは、加工機２００から送信されたコンテキスト情報を受信する（ステップＳ２０１）。受信部１０１ａは、加工機２００から送信された検知情報（センサデータ）を受信する（ステップＳ２０２）。  
【００６９】
このように受信されたコンテキスト情報および検知情報が、モデルの生成に利用される。モデルは、コンテキスト情報ごと、かつ、基準回転周波数ごとに生成されるため、検知情報は、対応するコンテキスト情報および基準回転周波数に関連付けられる必要がある。すなわち、基準回転周波数に対応したモデルを生成するためには、受信部１０１ａは、回転周波数が基準回転周波数である検知情報を受信する必要がある。そのため、例えば、受信部１０１ａは、受信した検知情報を、同じタイミングで受信したコンテキスト情報と、基準回転周波数とに対応づけて記憶部１１１等に記憶させる。各情報を記憶部１１１等に一旦記憶し、正常時の情報であることを確認し、正常時の情報のみを用いてモデルを生成してもよい。すなわち、正常であるとラベルづけされた検知情報を用いてモデルを生成してもよい。
【００７０】
正常であるか否かの確認（ラベルづけ）は、情報を記憶部１１１等に記憶した後の任意のタイミングで実行してもよいし、加工機２００を動作させながらリアルタイムに実行してもよい。ラベルづけを実行せず、情報が正常であると仮定してモデルを生成してもよい。正常であると仮定した情報が実際は異常であった場合は、生成されたモデルにより正しく判定処理が実行されなくなる。異常と判定される頻度等によりこのような状況であるかを判断でき、誤って生成されたモデルを削除する等の対応を取ることができる。また、異常であった情報から生成されたモデルを、異常であることを判定するモデルとして利用してもよい。  
【００７１】
特徴抽出部１０４は、収集された検知情報から特徴情報を抽出する（ステップＳ２０３）。生成部１０５は、同じコンテキスト情報に対応づけられた検知情報から抽出された特徴情報を用いて、このコンテキスト情報についてのモデルを生成する（ステップＳ２０４）。この場合、生成部１０５は、生成したモデルに対して、ラベルデータを付与してもよい。例えば、ラベルデータとして、新品の工具からの検知情報によって生成されたモデルには「０」を付与し、摩耗が進んだ工具からの検知情報によって生成されたモデルには「１」を付与するものとしてもよい。
【００７２】
生成部１０５は、生成したモデルを、例えば、コンテキスト情報および基準回転周波数に対応付けて、記憶部１１１に記憶する（ステップＳ２０５）。
【００７３】
このように、基準回転周波数に調整された生データである検知情報を用いてモデルを生成しているので、誤差の混入を抑制したモデルを生成することができる。ただし、検知情報の回転周波数を基準回転周波数に調整して受信することが困難な環境である場合、受信した検知情報の回転周波数を、前処理部１０６により基準回転周波数に変換して、モデルを生成するものとしてもよい。これにより、モデルに誤差がある程度含まれるものの、上述のように、特定の基準回転周波数に変換された変換情報に対して、異なる回転周波数の検知情報で生成したモデルを用いて異常の判定を行うよりも、精度よく判定を行うことができる。
【００７４】
（モデル生成処理および診断処理の具体例）
図９は、第１の実施の形態におけるモデル生成処理および診断処理の具体例を説明する図である。図１０は、一部のコンテキスト情報についてモデル生成処理および診断処理を行う具体例を説明する図である。図１１は、共通のモデルを他の加工工程で使用する例を説明する図である。図１２は、累積使用時間をコンテキスト情報として利用する場合の例を説明する図である。図１３は、モデルが生成されていないコンテキスト情報が入力された場合にモデルを生成する動作を説明する図である。図９〜図１３を参照しながら、本実施形態に係る診断装置１００によるモデル生成処理および診断処理の具体例について説明する。
【００７５】
図９は、例えば、ある部品を加工する工程の一部についてのモデル生成処理、および、診断処理を示す。モデル生成処理では、コンテキスト情報７０１とともに受信された複数の検知情報（図９では、検知情報７１１ａ〜７１１ｃ）が利用される。なお、検知情報の個数は３に限られるものではなく、任意の個数とすることができる。
【００７６】
コンテキスト情報７０１は、加工工程が、４つのモータ（モータＡ、モータＢ、モータＣ、モータＤ）を駆動する動作を含むことを示している。特徴抽出部１０４は、受信された検知情報から特徴情報を抽出する。生成部１０５は、各モータに対応するコンテキスト情報ごと、かつ、設定された基準回転周波数ごとに、対応する検知情報から抽出された特徴情報を用いてモデルを生成する。生成されたモデルは、記憶部１１１等に記憶される。図９では、モータＢが駆動される場合のコンテキスト情報に対して生成された、各基準回転周波数ごとのモデル（「モータＢ」）が記憶部１１１に記憶された例が示されている。記憶されたモデルは、その後の診断処理で参照される。  
【００７７】
診断処理では、モデル生成処理と同様に、コンテキスト情報７０１とともに、検知情報７２１が受信される。コンテキスト情報が「モータＢが駆動されていること」を示す場合、前処理部１０６は、同じくコンテキスト情報が示す検知情報７２１の回転周波数を、１以上の基準回転周波数から上述の方法で選択した基準回転周波数に変換して変換情報を生成する。そして、判定部１０２は、例えば、このコンテキスト情報が受信された期間に受信された検知情報から変換された変換情報と、記憶部１１１に記憶されている、変換情報の基準回転周波数に対応するモデル「モータＢ」とを用いて、加工機２００の動作が正常であるか否かを判定する。  
【００７８】
他のコンテキスト情報が受信される場合も同様に、対応する検知情報から変換された変換情報と、その変換情報の基準回転周波数に対応するモデルとを用いて、判定部１０２による判定が実行される。
【００７９】
なお、すべてのコンテキスト情報に対して判定を実行する必要はない。例えば、図１０は、一部のコンテキスト情報に対して判定を実行する例を示す図である。  
【００８０】
図１０の例では、コンテキスト情報が「モータＢが駆動されていること」を示す場合のみモデルが生成される。また、診断処理は、「モータＢが駆動されていること」を示すコンテキスト情報７０１−２が受信された場合に実行される。これにより、異常の判定に有効な検知情報のみを用いて診断処理を実行することができる。例えば、検知情報として音響データを用いる場合、無音区間等判定する必要がない区間が加工工程に含まれる場合がある。このような不要な区間を判定対象から外すことによって、誤判定を減らすこと、および、計算コストを減らすことが可能となる。すなわち、診断処理の高精度化および効率化が実現可能となる。  
【００８１】
また、相互に異なる加工工程であっても、例えば、同一のモータ等を使用する場合は、対応するモデルを共通に利用して診断処理を実行してもよい。例えば、図１１は、共通のモデルを他の加工工程で使用する例を示す図である。  
【００８２】
図１１のコンテキスト情報９０１は、加工工程が、４つのモータ（モータＸ、モータＹ、モータＺ、モータＢ）を駆動する動作を含むことを示している。モータＢを使用する点は、例えば、図９に示す加工工程と共通する。このため、図１１の加工工程でも、判定部１０２は、同一のモデル「モータＢ」と、検知情報９２１が変換された変換情報とを用いて診断処理を実行できる。  
【００８３】
また、図１２は、累積使用時間をコンテキスト情報として利用する場合の例を示す図である。コンテキスト情報１００１は、各モータの累積使用時間を示す。図１２の例では、累積使用時間の範囲（０月〜６月、６月〜１２月、・・・等）ごと、モータの種類ごと、かつ、基準回転周波数ごとにモデルが生成される。例えば、記憶部１１１ａは、累積使用時間が０〜６月の各モータのモデルを記憶する。記憶部１１１ｂは、累積使用時間が６〜１２月の各モータのモデルを記憶する。記憶部１１１ｃは、累積使用時間が例えば１２月以上の各モータのモデルを記憶する。記憶部１１１ａ〜１１１ｃは、物理的に異なる記憶媒体で実現してもよいし、物理的に同一の記憶媒体（記憶部１１１）で実現してもよい。判定部１０２は、コンテキスト情報７０１とともに、コンテキスト情報１００１を用いて対応するモデルを特定し、特定したモデルを用いて診断処理を実行する。  
【００８４】
また、図１３は、モデルが定められていないコンテキスト情報が入力された場合にモデルを生成する例を示す図である。図１３のコンテキスト情報１１０１は、加工工程が、４つのモータ（モータＸ、モータＣ、モータＤ、モータＢ）を駆動する動作を含むことを示している。モータＸの駆動を示すコンテキスト情報に対して、モデルが生成されていないものとする。  
【００８５】
この場合、特徴抽出部１０４は、基準回転周波数を有する複数の検知情報（図１１では、検知情報１１１１ａ、１１１１ｂ、１１１１ｃ）それぞれについて、「モータＸが駆動されていること」を示すコンテキスト情報に対応する期間の検知情報から特徴情報を抽出する。生成部１０５は、抽出された特徴情報を用いて、「モータＸが駆動されていること」を示すコンテキスト情報に対応するモデル「モータＸ」を生成し、記憶部１１１に記憶する。これにより、今後モータＸを駆動する期間についても異常の判定が可能となる。  
【００８６】
このように、第１の実施形態では、検知部２１１から得られた検知情報を、所定の基準回転周波数のデータとなるように変換して変換情報とし、この変換情報に対し、当該基準回転周波数に対応したモデルを用いて異常を判定するものとしている。これによって、同じ回転周波数に対応する変換情報とモデルとの比較で異常の判定をするので、装置（例えば、加工機２００）の異常を診断する精度を維持または向上させることができる。さらに、記憶部１１１等に記憶させておくモデルとして、あらゆる回転周波数に対応したモデルを記憶させておく必要がなく、１以上の基準回転周波数に対応するモデルを記憶させておけばよいので、記憶部１１１に記憶させるモデルのデータ量を削減できる。
【００８７】
また、第１の実施形態では、現在の動作を示すコンテキスト情報を加工機２００から受信し、受信したコンテキスト情報に対応するモデルを用いて異常を判定できる。従って、動作する駆動部を高精度に特定し、異常をより高精度に診断可能となる。  
【００８８】
［第２の実施形態］
第１の実施形態では、１種類の検知情報を用いて正常か否かを判定していた。判定に用いる検知情報の個数は１に限られず、２以上であってもよい。第２の実施形態の診断システムは、複数の検知情報を用いて加工機２００の異常を判定する。  
【００８９】
（診断装置の機能ブロックの構成）
図１４は、第２の実施形態に係る診断装置の機能ブロックの構成の一例を示す図である。図１４を参照しながら、本実施形態に係る診断装置１００−２の機能ブロックの構成について説明する。
【００９０】
第２の実施形態の診断システムの構成は、第１の実施形態の構成を示す図１と同様であるため説明を省略する。図１４に示すように、診断装置１００−２は、通信制御部１０１と、判定部１０２−２と、受付部１０３と、特徴抽出部１０４と、生成部１０５と、前処理部１０６−２（第１前処理部）と、記憶部１１１と、を備えている。  
【００９１】
第２の実施形態では、判定部１０２−２および前処理部１０６−２の機能が第１の実施形態と異なっている。その他の構成および機能は、第１の実施形態に係る診断装置１００のブロック図である図４と同様であるので、同一符号を付し、ここでの説明は省略する。
【００９２】
前処理部１０６−２は、複数の検知情報それぞれを、コンテキスト情報に応じて、基準回転周波数に変換して変換情報を得る。この場合、基準回転周波数は、コンテキスト情報に対応したものであり、当該コンテキスト情報に対応する１以上の基準回転周波数からどの基準回転周波数を選択するかは、第１の実施形態で説明した通りである。
【００９３】
判定部１０２−２は、複数の検知情報からそれぞれ変換された変換情報を用いて加工機２００の動作が正常であるか否かを判定する。例えば、判定部１０２−２は、コンテキスト情報に応じて、判定に用いる変換情報を切り替える。  
【００９４】
（本実施形態による処理の具体例）
図１５は、駆動部によって異なる検知情報を判定対象とすることを説明する図である。図１６は、検知情報の決定に用いられる対応情報のデータ構造の一例を示す図である。図１５および図１６を参照しながら、本実施形態による処理の具体例を説明する。
【００９５】
図１５の例では、コンテキスト情報１２０１と、複数種類の検知情報１２２１ａ、１２２１ｂとが受信される。検知情報１２２１ａは、例えば、加速度データである。検知情報１２２１ｂは、例えば、音響データである。  
【００９６】
前処理部１０６−２は、コンテキスト情報が「モータＡが駆動されていること」を示す場合、検知情報１２２１ｂのうち、当該コンテキスト情報に対応する期間の検知情報１２２２ｂの回転周波数を、当該コンテキスト情報に対応する基準回転周波数に変換して変換情報を得る。また、前処理部１０６−２は、コンテキスト情報が「モータＢが駆動されていること」を示す場合、検知情報１２２１ａのうち、当該コンテキスト情報に対応する期間の検知情報１２２２ａの回転周波数を、当該コンテキスト情報に対応する基準回転周波数に変換して変換情報を得る。
【００９７】
判定部１０２−２は、コンテキスト情報が「モータＡが駆動されていること」を示す場合、検知情報１２２１ｂのうち、当該コンテキスト情報に対応する期間の検知情報１２２２ｂから変換された変換情報から抽出された特徴情報を用いて判定を実行する。このとき、判定部１０２−２は、当該コンテキスト情報、かつ、変換情報の基準回転周波数に対応するモデルを記憶部１１１ａ−２から読み出して使用する。また、判定部１０２−２は、コンテキスト情報が「モータＢが駆動されていること」を示す場合、検知情報１２２１ａのうち、当該コンテキスト情報に対応する期間の検知情報１２２２ａから変換された変換情報から抽出された特徴情報を用いて判定を実行する。このとき、判定部１０２−２は、当該コンテキスト情報、かつ、変換情報の基準回転周波数に対応するモデルを記憶部１１１ｂ−２から読み出して使用する。
【００９８】
コンテキスト情報に対応する検知情報は、例えば、記憶部１１１に記憶される対応情報を用いて決定されてもよい。図１６は、検知情報の決定に用いられる対応情報のデータ構造の一例を示す図である。対応情報は、例えば、センサデータと、コンテキスト情報と、を含む。前処理部１０６−２および判定部１０２−２は、このような対応情報を参照することにより、コンテキスト情報に対応する検知情報を決定することができる。  
【００９９】
［第３の実施形態］
第１の実施形態では、装置の異常の判定に用いる基準回転周波数に対応したモデルを生成する場合、回転周波数が基準回転周波数に調整された検知情報を受信して行っていた。第３の実施形態の診断システムは、モデルを生成する場合に受信した検知情報の回転周波数が、予め設定されている基準回転周波数のうち一致しないものがある場合、その一致しない基準回転周波数に変換して、その変換情報を用いて当該基準回転周波数に対応したモデルを生成する。
【０１００】
（診断装置の機能ブロックの構成）
図１７は、第３の実施形態に係る診断装置の機能ブロックの構成の一例を示す図である。図１７を参照しながら、本実施形態に係る診断装置１００−３の機能ブロックの構成について説明する。
【０１０１】
図１７に示すように、診断装置１００−３は、通信制御部１０１と、判定部１０２と、受付部１０３と、特徴抽出部１０４と、生成部１０５と、第１前処理部１０７と、第２前処理部１０７−２と、記憶部１１１と、を備えている。
【０１０２】
第３の実施形態では、第１前処理部１０７および第２前処理部１０７−２の構成が第１の実施形態と異なっている。その他の構成および機能は、第１の実施形態に係る診断装置１００のブロック図である図４と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１０３】
第１前処理部１０７は、第１の実施形態の前処理部１０６と同様の処理を行う。すなわち、第１前処理部１０７は、診断処理において、コンテキスト情報から得られた駆動部２０４の回転周波数を予め決められた１以上の基準回転周波数のうち、元の検知情報との変化が少ない基準回転周波数となるような変換情報へ変換する。ここで、１以上の基準回転周波数から１の基準回転周波数の選択方法は、第１の実施形態で説明した方法と同様である。
【０１０４】
第２前処理部１０７−２は、モデルを生成する場合に、設定された基準回転周波数の検知情報が得られない場合等に、受信部１０１ａにより受信された検知情報を、設定された基準回転周波数に変換して変換情報を得る。
【０１０５】
（本実施形態による処理の具体例）
図１８は、複数の基準回転周波数に変換した検知情報からモデルを生成する動作の一例を示す図である。図１８を参照しながら、本実施形態による処理の具体例を説明する。
【０１０６】
図１８の例では、例えば、受信部１０１ａにより受信可能な検知情報の回転周波数が２５［Ｈｚ］であり、設定された基準回転周波数が１０［Ｈｚ］および５［Ｈｚ］であるものとする。この場合、受信部１０１ａにより、１０［Ｈｚ］および５［Ｈｚ］の検知情報を受信することが困難である場合、それぞれの回転周波数（基準回転周波数）に対応したモデルを生成することができないことになる。そこで、第２前処理部１０７−２は、受信部１０１ａから受信された回転周波数が２５［Ｈｚ］の検知情報を、回転周波数がそれぞれ基準回転周波数１０［Ｈｚ］および５［Ｈｚ］となるように変換して変換情報を生成する。
【０１０７】
そして、特徴抽出部１０４は、第２前処理部１０７−２により変換された変換情報から特徴情報を抽出する。そして、生成部１０５は、同じコンテキスト情報に対応付けられた変換情報から抽出された特徴情報を用いて、このコンテキスト情報、および、当該変換情報の基準回転周波数についてのモデルを生成する。
【０１０８】
これによって、受信部１０１ａにより基準回転周波数とは異なる検知情報しか得られない状況でも、当該基準回転周波数に対応したモデルを生成することが可能となる。
【０１０９】
なお、受信部１０１ａにより受信される検知情報の回転周波数と、作成するモデルに対応する基準回転周波数とが一致する場合、第２前処理部１０７−２による変換処理は必要なく、特徴抽出部１０４は、受信部１０１ａにより受信された検知情報から直接、特徴情報を抽出するものとすればよい。
【０１１０】
［第４の実施形態］
第１の実施形態では、加工機２００と通信可能な診断装置１００が、加工機２００からコンテキスト情報を受信し、そのコンテキスト情報を用いて、モデル生成処理および診断処理を行っていた。第４の実施形態では、診断装置が加工機２００に接続されていない場合等により加工機２００と通信ができない場合に、手動でコンテキスト情報を診断装置に入力可能とする。
【０１１１】
（診断装置の機能ブロックの構成）
図１９は、第４の実施形態に係る診断装置の機能ブロックの構成の一例を示す図である。図１９を参照しながら、本実施形態に係る診断装置１００−４の機能ブロックの構成について説明する。
【０１１２】
図１９に示すように、診断装置１００−４は、通信制御部１０１と、判定部１０２と、受付部１０３と、特徴抽出部１０４と、生成部１０５と、前処理部１０６（第１前処理部）と、操作部１０８と、記憶部１１１と、を備えている。
【０１１３】
第４の実施形態では、第１の実施形態の構成に加えて、操作部１０８が加わっている。その他の構成および機能は、第１の実施形態に係る診断装置１００のブロック図である図４と同様であるので、同一符号を付し、ここでの説明は省略する。
【０１１４】
操作部１０８は、ユーザが、現在の加工機２００のコンテキスト情報（例えば、駆動部２０４の内容、および回転周波数等）等の必要な情報を入力するための機能部である。操作部１０８は、例えば、図３に示す入力装置６６により実現される。
【０１１５】
以上のような構成によって、診断対象となる装置と診断装置が物理的、または無線を用いたネットワークで接続されていない場等の場合のようにコンテキスト情報が使えない場合、または、コンテキスト情報に目的となる情報（例えば、回転周波数等）が含まれない場合、診断装置１００−４に対して手動で回転周波数等の必要な情報を入力することができ、このような場合でも、モデルの生成処理および診断処理が可能となる。
【０１１６】
次に、上述の各実施形態に適用可能な変形例について説明する。  
【０１１７】
［変形例１］
図２０は、コンテキスト情報と加工区間との関係の一例を示す図である。図２１は、加工区間の特定方法の一例を示す図である。
【０１１８】
コンテキスト情報は、ある駆動部２０４が駆動されている区間を示しているだけであり、例えば、この駆動部２０４により工具が回転し材料に当たって加工している、実際の加工区間を厳密に抽出できない場合がある。すなわち、異常判定の精度が悪くなる場合がある。  
【０１１９】
図２０では、コンテキスト情報１５０１は、モータＢが駆動されていることを示す。コンテキスト情報１５０１のみに基づくと、例えば、検知情報のうち波形区間１５１２に相当する検知情報が特定される。しかし、実際に材料を加工している区間は波形区間１５１１である。例えば、音響データを検知情報としている場合、波形区間１５１１は、工具が材料に接触して音が発生することにより検出される音響データの区間に相当する。  
【０１２０】
そこで、変形例１では、コンテキスト情報と検知情報とを組合せて、実際の加工区間を特定するように構成する。すなわち、判定部１０２は、受信されたコンテキスト情報で特定される期間のうち判定に用いる期間を、受信された検知情報に基づいて決定し、決定した期間の検知情報とモデルとを用いて判定を実行する。  
【０１２１】
例えば、判定部１０２は、検知情報の特徴が切り替わる時刻を特定することにより、加工区間を求める。図２１の例では、判定部１０２は、検知情報の振幅が予め定められた閾値（例えば「ａ」および「−ａ」）を超えるように切り替わった時刻１６０１と、その後、閾値を下回るように切り替わった時刻１６０２とを特定する。判定部１０２は、時刻１６０１と時刻１６０２の間の区間１６１１を抽出する。そして、判定部１０２は、区間１６１１の検知情報から抽出された特徴情報を用いて判定を実行する。これにより、実際の加工区間に相当する区間の検知情報を用いて、より高精度に判定を実行可能となる。  
【０１２２】
［変形例２］
図２２は、尤度と判定値ｒ（ｋ）との関係の一例を示すグラフである。
【０１２３】
上述のように、正常か否かを判定するとき、尤度の値自体を用いてもよいし、尤度の変動を示す値を用いてもよい。変形例２では、尤度の変動を示す値の例について説明する。尤度の変動を示す値として、例えば、尤度の分散を用いることができる。例えば、区間Ｘでの尤度の分散は、以下の式（２）により算出される。ｎＸは区間Ｘでのフレーム数、ｋはフレームのインデックス、ｘｉはフレームｉでの尤度（フレーム尤度）、μＸは区間Ｘでのフレーム尤度の平均、を表す。なお、フレームは、尤度を算出する単位区間に相当する。
【０１２４】
【数１】
2018004566.tif 000003
【０１２５】
さらに式（２）のような分散を元にスコア化した値を判定に用いてもよい。例えば、以下の式（３）に示すｒ（ｋ）を判定に用いてもよい。
【０１２６】
ｒ（ｋ）＝ＶＳ（ｋ）／ＶＬ（ｋ）                                ・・・（３）  
【０１２７】
Ｓ、Ｌは、区間Ｘの種類を表す。Ｓは、短い区間（Ｓｈｏｒｔ区間）を表し、Ｌは長い区間（Ｌｏｎｇ区間）を表す。ＶＳ（ｋ）は、短い区間に対して式（２）で算出される値を示す。ＶＬ（ｋ）は、長い区間に対して式（２）で算出される値を示す。ＳおよびＬのそれぞれに対して、ｎＸ、μＸに対応する値であるｎＳ、μＳ、および、ｎＬ、μＬが算出される。  
【０１２８】
例えば、図２２に示すように、尤度と閾値とを比較する判定方法では、閾値を０．９７とすると、２００〜３００フレームの間では正常と判定される。一方、判定値ｒ（ｋ）と閾値（例えば、１．０）とを比較する判定方法では、２００〜３００フレームの間での尤度の変動を検出し、異常と判定することが可能となる。  
【０１２９】
なお、上述の各実施形態および各変形例では、検知部２１１で検出される回転体等が発する検知情報の回転周波数および基準回転周波数を扱ったが、必ずしも、回転周波数に限定されるものではなく、振動データであれば振動周波数でもよく、周期的な信号成分を含む情報であればよい。この場合、回転周波数を単に「周波数」と呼称し、基準回転周波数を「基準周波数」を呼称するものとすればよい。
【０１３０】
なお、上述の各実施形態および各変形例の診断装置で実行されるプログラムは、ＲＯＭ等に予め組み込まれて提供される。  
【０１３１】
上述の各実施形態および各変形例の診断装置で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅｃｏｒｄａｂｌｅ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録してコンピュータ・プログラム・プロダクトとして提供するように構成してもよい。  
【０１３２】
さらに、上述の各実施形態および各変形例の診断装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の各実施形態および各変形例の診断装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。  
【０１３３】
上述の各実施形態および各変形例の診断装置で実行されるプログラムは、上述した各部（通信制御部、判定部等）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記ＲＯＭからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各部が主記憶装置上に生成されるようになっている。
【符号の説明】
【０１３４】
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
５４  通信Ｉ／Ｆ
５５  駆動制御回路
５６  モータ
５７  センサ
５８  バス
６１  ＣＰＵ
６２  ＲＯＭ
６３  ＲＡＭ
６４  通信Ｉ／Ｆ
６５  入出力Ｉ／Ｆ
６６  入力装置
６７  ディスプレイ
６８  補助記憶装置
６９  バス
１００、１００−２〜１００−４  診断装置
１０１  通信制御部
１０１ａ  受信部
１０１ｂ  送信部
１０２、１０２−２  判定部
１０３  受付部
１０４  特徴抽出部
１０５  生成部
１０６、１０６−２  前処理部
１０７  第１前処理部
１０７−２  第２前処理部
１０８  操作部
１１１、１１１ａ〜１１１ｃ  記憶部
１１１ａ−２、１１１ｂ−２  記憶部
２００  加工機
２０１  数値制御部
２０２  通信制御部
２０３  駆動制御部
２０４  駆動部
２１１  検知部
７０１、７０１−２  コンテキスト情報
７１１ａ〜７１１ｃ  検知情報
７２１  検知情報
９０１  コンテキスト情報
９２１  検知情報
１００１  コンテキスト情報
１１０１  コンテキスト情報
１１１１ａ〜１１１１ｃ  検知情報
１２０１  コンテキスト情報
１２２１ａ、１２２１ｂ  検知情報
１２２２ａ、１２２２ｂ  検知情報
１５０１  コンテキスト情報
１５１１、１５１２  波形区間
１６０１、１６０２  時刻
１６１１  区間
【先行技術文献】
【特許文献】
【０１３５】
【特許文献１】特開２０１５−０２１９０１号公報
【特許文献２】特許第３１００７５７号公報
【図１】
2018004566.tif 000004
【図２】
2018004566.tif 000005
【図３】
2018004566.tif 000006
【図４】
2018004566.tif 000007
【図５】
2018004566.tif 000008
【図６−１】
2018004566.tif 000009
【図６−２】
2018004566.tif 000010
【図７−１】
2018004566.tif 000011
【図７−２】
2018004566.tif 000012
【図７−３】
2018004566.tif 000013
【図８】
2018004566.tif 000014
【図９】
2018004566.tif 000015
【図１０】
2018004566.tif 000016
【図１１】
2018004566.tif 000017
【図１２】
2018004566.tif 000018
【図１３】
2018004566.tif 000019
【図１４】
2018004566.tif 000020
【図１５】
2018004566.tif 000021
【図１６】
2018004566.tif 000022
【図１７】
2018004566.tif 000023
【図１８】
2018004566.tif 000024
【図１９】
2018004566.tif 000025
【図２０】
2018004566.tif 000026
【図２１】
2018004566.tif 000027
【図２２】
2018004566.tif 000028