(57)【要約】【課題】工作機械の加工異常を検出する異常検出装置を提供する。【解決手段】異常検出装置２は、所定の時間間隔で加工実行情報を収集する加工状態収集部２１１と、収集される加工実行情報を記憶部２２に記録する加工実行情報記録部２１２と、加工指令を複数回実行することで、複数個記録される加工実行情報の集合から、分析対象の加工ステップに対応して平均パターンを算出するために、加工実行情報の部分集合を選択する選択部２１３と、当該部分集合に基づいて、分析対象の加工ステップに対応する平均パターンを算出する平均パターン算出部２１４と、分析対象の加工ステップの加工実行情報を、当該平均パターンと比較して、分析対象の加工ステップの異常発生の有無を検出する異常検出部２１５と、を備える。【選択図】図１
2020191043.tif 000002
【特許請求の範囲】
【請求項１】
制御装置において実行される、１つ以上の加工ステップからなる加工指令における異常を検出するため、
前記加工指令の実行時に所定の時間間隔で取得される前記加工ステップにおける加工状態を示す物理量を、前記物理量を取得した時刻情報とともに、前記加工ステップの加工実行情報として収集する加工状態収集部と、 
前記加工状態収集部により収集される前記加工実行情報を記憶部に記録する加工実行情報記録部と、
任意の１つの前記加工ステップに対して、前記加工ステップと同一の加工ステップを複数回実行し、前記記憶部に複数回記録された前記加工ステップと同一の加工ステップの加工実行情報の集合から、前記任意の１つの前記加工ステップの加工実行情報の平均的な物理量の時間変化である平均パターンを算出するのに適切な前記加工ステップと同一の加工ステップの加工実行情報の部分集合を選択する選択部と、
前記選択部により選択された前記加工実行情報の部分集合に基づいて、前記任意の１つの前記加工ステップの加工実行情報の平均パターンを算出する平均パターン算出部と、
前記任意の１つの前記加工ステップを実行して取得される前記加工ステップの加工実行情報である対象加工実行情報を、前記平均パターン算出部により算出された前記平均パターンと比較して、前記任意の１つの前記加工ステップの実行時の異常を検出する異常検出部と、
を備える異常検出装置。
【請求項２】
前記異常検出部は、前記対象加工実行情報を前記平均パターンと比較して、予め設定した閾値以上の乖離の有無の検出に基づいて、前記任意の１つの前記加工ステップの異常を検出する、請求項１に記載の異常検出装置。
【請求項３】
前記異常検出部により、前記任意の１つの前記加工ステップの異常を検出した場合、前記異常を検出した物理量と前記物理量を取得した時刻を異常発生領域として識別する出力部を備える、請求項１又は請求項２に記載の異常検出装置。
【請求項４】
前記任意の１つの前記加工ステップを実行中に、前記加工状態収集部により収集される加工実行情報を前記対象加工実行情報とする、請求項１から請求項３のいずれか１項に記載の異常検出装置。
【請求項５】
前記任意の１つの前記加工ステップの実行後に、前記加工状態収集部により収集された加工実行情報を前記対象加工実行情報とする、請求項１から請求項３のいずれか１項に記載の異常検出装置。
【請求項６】
前記加工状態収集部は、さらに
前記加工ステップにおいて使用される工具の工具累積使用時間を収集し、
前記加工実行情報記録部は、さらに
前記加工ステップにおいて使用される工具の工具累積使用時間を前記加工ステップの加工実行情報に対応づけて前記記憶部に記録し、
前記選択部は、さらに
前記記憶部に複数回記録されたそれぞれの前記加工ステップのうち、前記工具累積使用時間が予め設定された指定範囲内に含まれる前記加工ステップの加工実行情報を選択する、請求項１から請求項５のいずれか１項に記載の異常検出装置。
【請求項７】
請求項１から請求項６のいずれかに記載の異常検出装置を備え、前記制御装置と通信接続された異常検出サーバ。
【請求項８】
制御装置において実行される、１つ以上の加工ステップからなる加工指令における異常を検出するため、
前記加工指令の実行時に所定の時間間隔で取得される前記加工ステップにおける加工状態を示す物理量を、前記物理量を取得した時刻情報とともに、前記加工ステップの加工実行情報として収集する加工状態収集ステップと、
前記加工状態収集ステップにおいて収集される加工実行情報を記憶部に記録する加工実行情報記録ステップと、 
任意の１つの前記加工ステップに対して、前記加工ステップと同一の加工ステップを複数回実行し、前記記憶部に複数回記録された前記加工ステップと同一の加工ステップの加工実行情報の集合から、前記任意の１つの前記加工ステップの加工実行情報の平均的な物理量の時間変化である平均パターンを算出するのに適切な前記加工ステップと同一の加工ステップの加工実行情報の部分集合を選択する選択ステップと、
前記選択ステップにおいて選択された前記加工実行情報の部分集合に基づいて、前記任意の１つの前記加工ステップの加工実行情報の平均パターンを算出する平均パターン算出ステップと、
前記任意の１つの前記加工ステップを実行して取得される前記加工ステップの加工実行情報である対象加工実行情報を、前記平均パターン算出ステップにおいて算出された前記平均パターンと比較して、前記任意の１つの前記加工ステップの実行時の異常を検出する異常検出ステップと、をコンピュータが実行する異常検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異常検出装置、異常検出サーバ及び異常検出方法に関する。
【背景技術】
【０００２】
従来、加工中に加工負荷が急に大きくなったり小さくなったりすることは正常加工時でもよくある。このため、加工中に加工負荷を表示するだけでは当該加工が加工異常か否かを判別することは難しい。
制御装置では、例えば加工負荷トルクを監視し、この加工負荷が一定以上になったとき、あるいは加工負荷と基準データとの差が一定以上となったときに、アラームを出力して、加工の中断、又は切削送り速度を下げて負荷を軽減させること等が知られている。
そうすることで、工具の損傷を防ぐとともに、ワークの加工不良を防止している。
このような加工負荷の監視方法を実施するために、予めワークの試切削を行って、その試切削での加工負荷のデータを一定時間ごとにサンプリングデータとして採取し、次に実切削時において、前記サンプリングデータである基準データと実測データとを一定時間ごとに比較して、加工負荷を監視する加工負荷監視方法が知られている。
なお、前述した従来の加工負荷監視方式においては、サンプリングデータである各試切削時における加工負荷は、その試切削時の工具、ワークのばらつき、切削油等のさまざまな要因により変化する可能性が高い。このため、基準データを一回の試切削により求める場合、かならずしも、該基準データが該切削における正確な加工負荷を表しているとは限らないため、加工負荷の監視のための基準データのばらつきにより、正確な判定ができない場合が生じる。
【０００３】
この点、特許文献１には、工作機械の加工負荷を監視する加工負荷監視方式において、試切削時の複数回の加工負荷のサンプリングデータから、加工負荷の基準データを平均値によって求めるとともに、その分散を求め、その分散の値を用いてサンプリングデータのばらつきに応じた閾値を設定し、基準データと加工負荷の実測データとを一定時間ごとに比較して、その差が閾値を超えたか否かを検出することで、加工負荷を監視する加工負荷監視方式が開示されている。
特許文献１に開示された加工負荷監視方式では、試切削時の複数回の加工負荷のサンプリングデータから求めた加工負荷の基準データに基づいて、実切削時における加工負荷を監視する監視方式が採用される。すなわち、複数のワークに対してそれぞれ同一の切削加工を繰り返し行う場合に、それぞれの切削加工時における加工負荷を同一の基準データと比較することがなされている。
しかしながら、複数のワークに対してそれぞれ同一の切削加工を繰り返し行う場合、最初のワークを切削加工したときの工作機械の状態（例えば、工具の摩耗状態）と、繰り返し切削加工を行った後に次のワークを切削加工するときの工作機械の状態と、が必ずしも同じ状態ではないことが推定される。そうすると、特許文献１に開示された基準データは、例えば、最初の方のワークを切削加工するときに得られる実測データとの比較には適しているが、繰り返し切削加工を行った後に、次のワークを切削加工するときに得られる実測データとの比較には、必ずしも適していない可能性がある。
また、特許文献１に開示された加工負荷監視方式では、例えば加工負荷が閾値を超えたことを検出した場合に、どのようにしてその事象をユーザに対して通知するのか、具体的に開示されていない。
また、特許文献１に開示された加工負荷監視方式では、例えば、外乱負荷トルクを推定するオブザーバにより推定される、加工負荷のみを監視するものであり、他の物理量についての観測について開示されていない。さらに、例えば、平均、分散等の統計値を算出するための期間についても、例えば、工具の摩耗状態を示す条件（例えば、工具の累積使用時間、工具の使用回数、工具の累積実切削時間等の条件）とは無関係に、一律に統計値を算出している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平７−１３２４４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば、複数のワークに対してそれぞれ同一の加工ステップを繰り返し行う場合、それぞれの加工状態に適した方式で、それぞれの加工ステップにおいて加工異常が発生したか否かを判別できることが望まれる。
【課題を解決するための手段】
【０００６】
（１）  本開示の一態様である異常検出装置は、制御装置において実行される、１つ以上の加工ステップからなる加工指令における異常を検出するため、前記加工指令の実行時に所定の時間間隔で取得される前記加工ステップにおける加工状態を示す物理量を、前記物理量を取得した時刻情報とともに、前記加工ステップの加工実行情報として収集する加工状態収集部と、前記加工状態収集部により収集される前記加工実行情報を記憶部に記録する加工実行情報記録部と、任意の１つの前記加工ステップに対して、前記加工ステップと同一の加工ステップを複数回実行し、前記記憶部に複数回記録された前記加工ステップと同一の加工ステップの加工実行情報の集合から、前記任意の１つの前記加工ステップの加工実行情報の平均的な物理量の時間変化である平均パターンを算出するのに適切な前記加工ステップと同一の加工ステップの加工実行情報の部分集合を選択する選択部と、前記選択部により選択された前記加工実行情報の部分集合に基づいて、前記任意の１つの前記加工ステップの加工実行情報の平均パターンを算出する平均パターン算出部と、前記任意の１つの前記加工ステップを実行して取得される前記加工ステップの加工実行情報である対象加工実行情報を、前記平均パターン算出部により算出された前記平均パターンと比較して、前記任意の１つの前記加工ステップの実行時の異常を検出する異常検出部と、を備える。
【０００７】
（２）  本開示の一態様である異常検出サーバは、（１）に記載の異常検出装置を備え、前記制御装置と通信接続される。
【０００８】
（３）  本開示の一態様である異常検出方法は、制御装置において実行される、１つ以上の加工ステップからなる加工指令における異常を検出するため、前記加工指令の実行時に所定の時間間隔で取得される前記加工ステップにおける加工状態を示す物理量を、前記物理量を取得した時刻情報とともに、前記加工ステップの加工実行情報として収集する加工状態収集ステップと、前記加工状態収集ステップにおいて収集される加工実行情報を記憶部に記録する加工実行情報記録ステップと、任意の１つの前記加工ステップに対して、前記加工ステップと同一の加工ステップを複数回実行し、前記記憶部に複数回記録された前記加工ステップと同一の加工ステップの加工実行情報の集合から、前記任意の１つの前記加工ステップの加工実行情報の平均的な物理量の時間変化である平均パターンを算出するのに適切な前記加工ステップと同一の加工ステップの加工実行情報の部分集合を選択する選択ステップと、前記選択ステップにおいて選択された前記加工実行情報の部分集合に基づいて、前記任意の１つの前記加工ステップの加工実行情報の平均パターンを算出する平均パターン算出ステップと、前記任意の１つの前記加工ステップを実行して取得される前記加工ステップの加工実行情報である対象加工実行情報を、前記平均パターン算出ステップにおいて算出された前記平均パターンと比較して、前記任意の１つの前記加工ステップの実行時の異常を検出する異常検出ステップと、をコンピュータが実行する。
【発明の効果】
【０００９】
一態様によれば、例えば、複数のワークに対してそれぞれ同一の加工ステップを繰り返し行う場合、それぞれの加工状態に適した方式で、それぞれの加工ステップにおいて加工異常が発生したか否かを判別できる異常検出装置を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】一実施形態に係る異常検出装置の要部のハードウェア構成を示すブロック図である。
【図２】一実施形態に係る数値制御装置の機能構成を示すブロック図である。
【図３Ａ】一実施形態に係る加工ステップに含まれる内容の例を示す図である。
【図３Ｂ】一実施形態に係る加工実行情報に含まれる内容の例を示す図である。
【図４Ａ】一実施形態に係る加工状態テーブルの一例を示す図である。
【図４Ｂ】一実施形態に係る加工状態テーブルの一例を示す図である。
【図５】一実施形態に係る同一の加工ステップに対して、複数件の物理量と加工時間を利用して平均パターンを算出する概要を示す図である。
【図６】一実施形態に係る同一の加工ステップに対して、所定の累積工具使用時間に係る条件を満たす、複数件の物理量と加工時間を利用して平均パターンを算出する概要を示す図である。
【図７Ａ】加工中の加工ステップに異常が発生したか否かを検知して、検知結果をリアルタイムにグラフ表示する例を示す図である。
【図７Ｂ】加工後に、加工ステップに異常がなかったか否かの分析をグラフ表示する例を示す図である。
【図８】加工指令に含まれる加工ステップの実行中に当該加工ステップに異常が発生したか否かを検知して、検知結果をリアルタイムにグラフ表示する場合の異常検出装置の動作を示すフローチャートである。
【図９】加工指令を実行後に、当該加工指令に含まれる各加工ステップに異常がなかったか否かの実績分析を行う場合の異常検出装置の動作を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態の一例について説明する。本実施形態では、工作機械の制御装置１として、数値制御装置１を例示する。なお、工作機械は、例えば５軸加工機を例示するが、これに限られない。例えば、３軸加工機でもよい。
また、本実施形態では、工作機械が切削加工機又は研削加工機の場合を例示しているが、これに限られない。工作機械が放電加工機である場合には例えば印可電圧又は電流に関する物理量を、レーザー加工機又はウォータージェット加工機である場合には例えばレーザー出力又は水圧に関する物理量を、射出成型機である場合には加熱温度又は射出圧力に関する物理量等を、それぞれ、各工作機械における、後述する加工実行情報として用いることで、同様に任意の１つの加工ステップ実行時に異常が発生したか否かを検出することができる。
【００１２】
本実施形態に係るシステムは、図１に示すように数値制御装置１と、異常検出装置２と、を含む。異常検出装置２は、１つ又は複数の加工ステップで構成される加工指令を実行する数値制御装置１において、任意の１つの加工ステップ実行時に異常が発生したか否かを加工後又は加工中に検出するものである。図１に示すように、数値制御装置１と、異常検出装置２と、は相互接続される。ここで、相互接続方式としては、異常検出装置２がインタフェース部（図示せず）を介して数値制御装置１に直接接続してもよい。また、異常検出装置２が、例えばネットワークを介して数値制御装置１に通信接続してもよい。あるいは、異常検出装置２が数値制御装置１に含まれるようにしてもよい。あるいは、異常検出装置２の備える、後述する機能ブロックの一部が数値制御装置１に含まれるようにしてもよい。
異常検出装置２を説明する前に、数値制御装置１について説明する。
【００１３】
図２は、本実施形態に係る数値制御装置１の要部のハードウェア構成を示すブロック図である。
数値制御装置１において、制御部としてのＣＰＵ１１は、数値制御装置１の全体を制御するプロセッサである。ＣＰＵ１１は、記憶部としてのＲＯＭ１２に格納されたシステムプログラムを、バス２０を介して読み出し、このシステムプログラムに従って数値制御装置１の全体を制御する。
記憶部としてのＲＡＭ１３には、一時的な計算データ、表示データ、及び表示器／ＭＤＩユニット７０を介してオペレータが入力した各種データが格納される。また、一般にＲＡＭへのアクセスはＲＯＭへのアクセスよりも高速であることから、ＣＰＵ１１は、ＲＯＭ１２に格納されたシステムプログラムを予めＲＡＭ１３上に展開しておき、ＲＡＭ１３からシステムプログラムを読み込んで実行してもよい。
記憶部としての不揮発性メモリ１４は、磁気記憶装置、フラッシュメモリ、ＭＲＡＭ、ＦＲＡＭ（登録商標）、ＥＥＰＲＯＭ、又はバッテリでバックアップされるＳＲＡＭ若しくはＤＲＡＭ等であり、数値制御装置１の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。不揮発性メモリ１４には、インタフェース１５、表示器／ＭＤＩユニット７０又は通信部２７を介して入力された加工プログラム等が記憶される。
【００１４】
ＲＯＭ１２には、加工プログラムの作成及び編集のために必要とされる編集モードの処理や自動運転のための処理を実施するための各種システムプログラムが予め書き込まれている。
各種加工プログラムは、インタフェース１５、表示器／ＭＤＩユニット７０又は通信部２７を介して入力され、不揮発性メモリ１４に格納される。
なお、ＲＯＭ１２、ＲＡＭ１３、及び不揮発性メモリ１４を記憶部ともいう。
インタフェース１５は、数値制御装置１と外部機器７２とを接続する。外部機器７２からは、加工プログラム及び各種パラメータ等が数値制御装置１に読み込まれる。また、数値制御装置１内で編集された加工プログラムは、外部機器７２を介して外部記憶手段に記憶させることができる。インタフェース１５の具体例としては、ＲＳ２３２Ｃ、ＵＳＢ、ＳＡＴＡ、ＰＣカードスロット、ＣＦカードスロット、ＳＤカードスロット、イーサネット（登録商標）、Ｗｉ−Ｆｉ等が挙げられる。インタフェース１５は、表示器／ＭＤＩユニット７０上に存在してもよい。外部機器７２の例としては、コンピュータ、ＵＳＢメモリ、ＣＦａｓｔ、ＣＦカード、ＳＤカード等が挙げられる。
【００１５】
ＰＭＣ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｍａｃｈｉｎｅ  Ｃｏｎｔｒｏｌｌｅｒ）１６は、数値制御装置１に内蔵されたシーケンスプログラムにより、工作機械の補助装置（例えば、工具交換用のロボットハンドといったアクチュエータを含む自動工具交換装置）にＩ／Ｏユニット１７を介して信号を出力し制御する。また、ＰＭＣ１６は、工作機械の本体に配備された操作盤７１の各種スイッチ等の信号を受け、必要な信号処理をした後、ＣＰＵ１１に渡す。なお、ＰＭＣ１６は、一般に、ＰＬＣ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｃｏｎｔｒｏｌｌｅｒ）とも呼ばれる。
操作盤７１は、ＰＭＣ１６に接続される。操作盤７１は、手動パルス発生器等を備えていてもよい。
表示部としての表示器／ＭＤＩユニット７０は、ディスプレイ７０１、及びキーボード若しくはタッチパネル７０２等の操作部を備えた手動データ入力装置である。インタフェース１８は表示用の画面データを表示器／ＭＤＩユニット７０のディスプレイ７０１に送るほか、表示器／ＭＤＩユニット７０の操作部からの指令及びデータを受けてＣＰＵ１１に渡す。
【００１６】
Ｘ、Ｙ、Ｚ、Ｂ、Ｃの各軸の軸制御回路３０〜３４は、プロセッサやメモリ等で構成され、ＣＰＵ１１からの各軸の移動指令量を受けて、各軸の指令をサーボアンプ４０〜４４に出力する。サーボアンプ４０〜４４はこの指令を受けて、Ｘ、Ｙ、Ｚ、Ｂ、Ｃの各軸のサーボモータ５０〜５４を駆動する。各軸のサーボモータ５０〜５４は位置検出用のパルスエンコーダを内蔵し、このパルスエンコーダからの位置信号がパルス列としてフィードバックされる。なお、位置検出器としてリニアスケールを用いてもよい。また、このパルス列をＦ／Ｖ（周波数／速度）変換することにより、速度フィードバック信号を生成することができる。そして、位置・速度フィードバック信号を軸制御回路３０〜３４にフィードバックすることで、プロセッサにより位置・速度のフィードバック制御が行われる。
【００１７】
主軸制御回路（「スピンドル制御回路」もいう）６０もプロセッサやメモリ等で構成され、ＣＰＵ１１からの主軸回転指令を受け、主軸アンプ（「スピンドルアンプ」ともいう）６１に主軸速度信号（「スピンドル速度信号」ともいう）を出力する。主軸アンプ６１は、この主軸速度信号を受けて、主軸モータ（「スピンドルモータ」ともいう）６２を指令された回転速度で回転させ、工具を駆動する。
主軸モータ６２には、歯車又はベルト等でパルスエンコーダが結合され、パルスエンコーダ６３が主軸の回転に同期して帰還パルスを主軸制御回路６０にフィードバックし、主軸制御回路６０のプロセッサは速度制御処理を行う。
【００１８】
異常検出装置２は、１つ又は複数の加工ステップで構成される加工指令を複数回実行する数値制御装置１において、任意の１つの加工ステップ実行時に異常が発生したか否かを加工後又は加工中に検出する。以下、異常が発生したか否かを検出する対象となる任意の１つの加工ステップを「異常検出対象の加工ステップ」又は「分析対象加工ステップ」ともいう。
このため、異常検出装置２は、数値制御装置１により実行される加工指令に含まれる任意の加工ステップにおいて、例えばセンシング手段により取得される加工実行情報である物理量と時刻情報とを当該加工ステップに紐づけて収集する機能、当該加工ステップと同じ加工形状及び同じ加工方法の加工ステップにおいて取得される加工実行情報を例えば、ある期間分収集して、加工ステップごとに収集した加工実行情報の集合から最適な部分集合を選択して、異常検出対象の加工ステップにおける異常の有無を判定するための平均的な物理量の時間変化である平均パターンを算出する機能、異常検出対象の加工ステップにおける加工実行情報と当該加工ステップの平均パターンとを比較する機能、比較結果が所定の閾値以上に乖離しているか否かを検出する機能、比較結果が所定の閾値以上に乖離している場合に当該加工ステップにおいて加工異常が発生したと判定する機能、及び異常が発生したと判定した場合に乖離している領域を識別表示する機能を含む、異常検出機能を備える。異常検出機能の詳細については、後述する。
【００１９】
異常検出機能について説明する前に、本実施形態における、加工形状、加工指令、加工ステップ、及び加工実行情報について説明する。
【００２０】
加工形状とは、例えばユーザによりＣＡＤ（Computer-Aided Design）を用いて設計される被加工物（「ワーク」ともいう）の加工後の形状を指す。
【００２１】
加工指令とは、例えばＣＡＤによって設計された加工形状データ等から、ユーザによりＣＡＭ（Computer-Aided Manufacturing）を用いて作成される、ワークを加工形状に加工するための加工指令情報を指す。加工指令は、例えば、加工形状、切削条件、ストラテジ、アプローチ方法、及びリトラクト方法等といった加工内容の設定等を含む。具体的には、加工指令は、後述するように、１種類の工具で１種類の加工形状を加工する単位を加工ステップとした場合における単数又は複数の加工ステップの情報（第１加工ステップから第Ｎ（Ｎは任意の自然数）加工ステップまでの情報）を含む。
【００２２】
図３Ａは、加工ステップに含まれる加工内容に係る情報の例を示す図である。前述したように、加工ステップとは、１種類の工具で１種類の加工形状を加工する単位であって、図３Ａを参照すると、加工ステップには、例えば加工ステップ番号、加工ステップ開始日時、加工ステップ終了日時、工具番号、加工形状、加工フィーチャ、被加工物の材質、切削条件、加工方法（例えばアプローチ方法、及びリトラクト方法）といった加工内容の設定、ＣＡＭトレランス、表面粗さ、幾何公差、及び寸法公差を含む加工要求情報等、が含まれる。なお、加工内容に係る情報はこれらに限られない。例えば、加工内容に係る情報として、主軸回転数、切削送り速度、１刃当たりの送り量、切込深さ、切削幅、及び工具パス等の情報が含まれてもよい。
このように、加工指令は１つ又は複数の加工ステップで構成されており、各加工ステップには加工形状と加工方法が記述されており、数値制御装置１は当該加工指令を実行することで工作機械に加工処理を行わせることができる。
【００２３】
図３Ｂは、加工実行情報に含まれるデータの例を示す図である。図３Ｂを参照すると、加工実行情報には、例えば、加工指令情報、工作機械番号、加工指令開始日時、加工指令終了日時等が含まれる。また、加工ステップごとに、数値制御装置１により工作機械で加工指令を実行させる都度、所定のサンプリングタイムごとに取得（又は測定）される、当該加工指令に基づいた加工実行時の加工状態とそのときの時刻情報とが含まれる。
具体的には、加工実行情報は、数値制御装置１により加工指令実行時に得られる工作機械における加工状態に係る情報、例えばサーボ情報、各種センサデータ情報、リソース情報（工具使用時間等）等を含む。
加工実行情報は、１種類の工具で１種類の加工形状を加工する加工ステップごとに対応づけることができる。そうすることで、同じ加工指令を実行する回数と同じ数の加工実行情報を同じ加工ステップ（すなわち、同じ工具で同じ加工形状を加工する加工ステップ）に対応づけることができる。前述したように、加工実行時の状態は、所定のサンプリング周期で取得されることから、同じ加工ステップの加工実行情報を、該加工ステップの開始時刻から終了時刻までの各サンプリング時刻における加工実行時の状態に基づいて統計処理をすることができる。
本実施形態に係る異常検出装置２は、以上のようにして取得される、一つの加工ステップを複数回実行した場合に、それぞれの実行に対応づけられる複数の加工実行情報から、異常検出対象となる加工ステップに基づいて、適切な部分集合を選択して、例えば当該加工ステップの平均パターンを算出し、この平均パターンと、異常検出対象となる加工ステップを実行した際に得られる当該加工ステップの加工実行情報と、を比較することを前提とする。
したがって、異常検出装置２により算出される加工ステップの平均パターンは、固定されたものではない。例えば、加工指令を複数回実行した場合に、加工指令に含まれる加工ステップも複数回実行される。この場合、ｉ回目（ｉ＞１）に実行される加工ステップ（ｉ）を異常検出対象とした場合に算出される平均パターン（ｉ）とｊ回目（ｊ＞ｉ）に実行される加工ステップ（ｊ）を異常検出対象とした場合に算出される平均パターン（ｊ）とは、必ずしも同じ値になるものではない。
【００２４】
＜加工実行情報＞
次に、本実施形態における加工実行情報の一例について説明する。以下では、加工実行情報に含まれる物理量として、センシング手段により取得される、主軸ロードメータ値、主軸トルク値、各軸サーボトルク値、各軸サーボ位置、及び加工した際のリソース情報（工具使用時間等）を例示する。
【００２５】
主軸ロードメータ値としては、例えば工作機械の運転時のあるモータ速度における出力を、モータに最大電流を供給したときの最大出力で除算した最大出力基準ロードメータ値、及び／又はモータを無限時間出力可能な連続定格出力で除算した連続定格出力基準ロードメータ値を測定するようにしてもよい。
【００２６】
主軸トルク値としては、例えば、主軸制御回路６０に外乱推定オブザーバ（図示せず）を組み込むことによって、主軸モータ６２にかかる主軸トルクを測定することができる。なお、主軸トルクの測定は、これに限られない。例えば、主軸モータ６２に流れる駆動電流によって主軸モータ６２にかかる主軸トルクを測定するようにしてもよい。さらには、特別にトルクセンサを追加して主軸トルクを測定するようにしてもよい。
【００２７】
同様に、各軸サーボトルク値（工具送り軸のＸ，Ｙ，Ｚ軸のサーボモータ５０〜５２にかかる各軸サーボトルク（各軸負荷トルク））についても、工具送り軸のＸ，Ｙ，Ｚ軸のサーボモータ５０〜５２を駆動制御する軸制御回路３０〜３２に外乱推定オブザーバ（図示せず）を組み込むことによって、このオブザーバによって各サーボモータ５０〜５２に加わる各軸サーボトルク（負荷トルク）を測定することができる。なお、工具送り軸のＸ，Ｙ，Ｚ軸の各サーボモータの駆動電流を測定し、この駆動電流によって各軸サーボトルクを推定してもよい。さらにはトルクセンサを付加して、各軸のサーボモータに加わる各軸サーボトルク（負荷トルク）を測定するようにしてもよい。
【００２８】
各軸のサーボ位置情報は、例えば各軸のサーボモータ５０〜５２の内蔵するパルスエンコーダからの位置フィードバック信号によって測定するようにしてもよい。
【００２９】
また、加工した際のリソース情報（工具使用時間等）としては、加工ステップごとに、使用された工具情報、及び工具使用時間を測定するようにしてもよい。
【００３０】
＜異常検出機能＞
次に、異常検出装置２の備える異常検出機能について説明する。
異常検出装置２は、制御部２１と、記憶部２２とを備え、さらに、各種の入出力及び通信デバイスを備えていてよい。
【００３１】
制御部２１は、異常検出装置２の全体を制御する部分であり、例えば記憶部２２に記憶されたソフトウェア（異常検出プログラム）を読み出して実行することにより、本実施形態における各種機能を実現する。制御部２１は、ＣＰＵであってよい。
また、制御部２１は、加工状態収集部２１１と、加工実行情報記録部２１２と、選択部２１３と、平均パターン算出部２１４と、異常検出部２１５と、出力部２１６と、を備える。
【００３２】
記憶部２２は、ハードウェア群を異常検出装置２として機能させるための各種プログラム、及び各種データ等の記憶領域であり、ＲＯＭ、ＲＡＭ、フラッシュメモリ又はハードディスクドライブ（ＨＤＤ）等であってよい。
図１は、制御部１１の機能構成を示すブロック図である。図１を参照すると、制御部２１は、加工状態収集部２１１と、加工実行情報記録部２１２と、選択部２１３と、平均パターン算出部２１４と、異常検出部２１５と、出力部２１６と、を備え、これらの各機能部により、異常検出対象の加工ステップ中に測定される加工実行情報から加工異常を検出した場合、加工異常を検出した時点及び／又は箇所を、ユーザが容易に把握することを可能とする。
【００３３】
＜加工状態収集部２１１＞
加工状態収集部２１１は、数値制御装置１が加工指令に含まれる１つ以上の各加工ステップを実行すると、例えばセンシング手段により所定の時間間隔（サンプリングタイム）で取得される各加工ステップにおける加工状態を示す物理量（例えば、前述の主軸ロードメータ値、主軸トルク値、各軸サーボトルク値、各軸サーボ位置等）を、取得した時刻情報（サンプリング時刻）とともに、当該加工ステップの加工実行情報として収集する。
なお、加工状態収集部１１１は、加工実行情報として、さらに各加工ステップにおけるリソース情報（例えば、前述の工具の工具番号及び当該工具の工具使用時間等）を取得するようにしてもよい。
【００３４】
＜加工実行情報記録部２１２＞
加工実行情報記録部２１２は、加工状態収集部１１１が加工ステップごとに収集する加工実行情報を、例えば当該加工ステップの加工ステップ番号に紐づけて記憶部２２に記録する。なお、当該加工ステップの実行が、例えば、通算何回目の実行であるか、回数を示す管理情報を記録してもよい。あるいは、当該加工ステップを実行した日時情報を記録するようにしてもよい。
加工実行情報記録部２１２は、さらに各加工ステップにおいて使用される工具の工具番号及び当該工具の使用時間を加工ステップの加工ステップ番号Ｃｎに紐づけて記憶部２２に記録することができる。なお、工具使用状態（工具使用中、又は工具不使用）を示すリソース使用情報を適宜（例えば、サンプリング時刻ごとに）記録するようにしてもよい。そうすることで、例えば、当該加工ステップに使用する工具の累積工具使用時間を記録することができる。
なお、後述するように、加工実行情報として、累積工具加工時間に換えて、例えば、累積切削エネルギー、累積実切削時間、切削負荷、工具の摩耗状態、また工具の使用回数等を記録するようにしてもよい。
【００３５】
図４Ａ及び図４Ｂは、加工実行情報を記録する加工状態テーブルの一例を示す図である。ここで、加工指令が１つ以上（Ｎ個）の加工ステップＣｎ（１≦ｎ≦Ｎ）を含み、各加工ステップＣｎの各サンプリング時刻Ｔｎ（ｉ）（１≦ｉ≦Ｍ）における１つの物理量をＤｎ（ｉ）、工具使用状態Ｏｎ（ｉ）とすると、図４Ａに示すように、１つの加工ステップＣｎ（１≦ｎ≦Ｎ）に対応して各サンプリング時刻Ｔｎ（ｉ）で収集される、加工状態を示す物理量Ｄｎ（ｉ）、及び工具使用状態を示すリソース使用情報Ｏｎ（ｉ）をテーブル形式により、例えば記憶部２２に記録することができる。
【００３６】
さらに、加工実行情報記録部２１２は、当該加工指令を複数回（Ｋ回：１＜Ｋ）実行することに伴い、（例えば、当該加工指令を実行すると、当該加工ステップを１回実行する場合）同一加工ステップＣｎに対して、Ｋ個の加工実行情報を紐づけることができる。
より具体的には、当該加工指令をｊ回目（１≦ｊ≦Ｋ）に実行して収集した、加工ステップＣｎの加工実行情報Ｃｎ（ｊ）は、図４Ｂに示すように、各サンプリング時刻Ｔｎ（ｉ）（１≦ｉ≦Ｍ）における１つの物理量をＤｎ（ｉ，ｊ）、工具使用状態Ｏｎ（ｉ，ｊ）と表すことができる。
このように、加工指令を複数回実行することに伴い、当該加工指令に含まれる加工ステップが複数回実行され、加工ステップが実行されるごとに、記憶部２２に当該加工ステップに係る加工実行情報が、実行された順に複数個記録される。このように記憶部２２には、同一の加工ステップに係る加工実行情報が、実行された順に複数個蓄積される。
【００３７】
＜選択部２１３＞
異常検出装置２は、異常検出対象となる加工ステップ（分析対象加工ステップ）の実行時において異常が発生したか否かを検出するために、後述する平均パターン算出部２１４により、当該加工ステップを評価するうえでの基準となる平均パターンを算出する。
このため、選択部２１３は、記憶部２２に実行された順に記録された、当該加工ステップに係る複数の加工実行情報の集合から、予め設定されたフィルタリング条件に基づいて当該加工ステップに係る加工実行情報の部分集合を選択する。
具体的には、加工実行情報の部分集合は、分析対象加工ステップを実行する際の加工条件、及び／又は加工状態等の類似するものが選択されるように、フィルタリング条件を設定することができる。
例えば、フィルタリング条件として、分析対象加工ステップの直近に実行された当該加工ステップに係る加工実行情報を所定の個数選択する条件を設定してもよい。
また、フィルタリング条件として、各加工ステップで使用された工具に係る累積工具使用時間が、分析対象加工ステップを加工する際の工具の状態と類似するように、累積工具時間の範囲を分析対象加工ステップに対応して設定するようにしてもよい。
なお、累積工具使用時間の範囲に換えて、前述したように、例えば、累積切削エネルギー量、累積実切削時間、切削負荷、工具の摩耗状態、また工具の使用回数等に基づいてフィルタリング条件を設定するようにしてもよい。
また、記憶部２２に実行された順に記録された、当該加工ステップに係る複数の加工実行情報の集合から、当該加工ステップに係る加工実行情報の部分集合を選択する際に、部分集合に含まれる加工ステップから、さらに異常の検出された加工ステップを除くようにしてもよい。
【００３８】
図５は分析対象加工ステップの直近に実行された加工ステップの加工実行情報からなる部分集合を選択するケースを示す図である。ここでは、例えば、毎日、加工ステップが１回実行される場合を例示する。例えば、分析対象加工ステップを２０１９年３月６日に実行する（又は実行された）場合、選択部２１３は、分析対象加工ステップ実行の直近の５件（具体的には、３月１日から３月５日に実行されて記憶部２２に記録された加工実行情報）を選択するようにフィルタリング条件が設定されている。
【００３９】
図６は、分析対象加工ステップの直近に実行された加工ステップであって、累積工具使用時間が４分±３分の範囲内となる条件を満たす部分集合を選択するようにフィルタリング条件が設定されたケースを例示する図である。この場合、累積工具使用時間は、加工ステップを実行するたびに増加することから、分析対象加工ステップにおける累積工具使用時間と類似するように、フィルタリング条件を設定する。
このように、選択部２１３は、分析対象加工ステップに対応して、予め設定されるフィルタリング条件に基づいて、適切な加工実行情報からなる部分集合を選択することができる。こうすることで、分析対象加工ステップにおいて異常が発生したか否かを検出するために、後述する平均パターン算出部２１４は適切な平均パターンを算出することができる。また、フィルタリング条件を適切に設定することで、後述する平均パターン算出部２１４は、場合に応じた平均パターンを作成できる。また後述する異常検出部２１５はその加工における特徴を踏まえたうえでの比較精度を行うことができる。
【００４０】
＜平均パターン算出部２１４＞
平均パターン算出部２１４は、前述したように、分析対象加工ステップに応じて、選択部２１３により選択された加工実行情報の部分集合に基づいて、分析対象加工ステップの実行時において異常が発生したか否かを検出するための基準となる平均パターンを算出する。
具体的には、平均パターン算出部２１４は、選択部２１３により選択された複数個の加工実行情報から、加工実行情報の収集された同一サンプリング周期ごとに、その物理量の平均値を算出するようにしてもよい。そして、平均パターン算出部２１４は、同一サンプリング周期ごとに算出された平均値に対して、例えばプラスＸパーセント（Ｘは予め設定される数）、及びマイナスＹパーセント（Ｙは予め設定される数）の範囲を許容範囲とする平均パターンを算出するようにしてもよい。また、具体的な上限値、下限値を各サンプリング周期に対応して設定するようにしてもよい。
図５及び図６には、許容範囲として、サンプリング周期ごとに平均値の２５％増を上限とし、平均値の２５％減を下限とする許容範囲を設定した平均パターンを例示する。
なお、許容範囲の設定方法は前述した例に限られない。例えば、各サンプリング周期における分散を利用して、範囲を設定するようにしてもよい。この外、任意の統計手法に基づいて、平均パターン（特に許容範囲）を算出するようにしてもよい。
以上のように、平均パターン算出部２１４は、分析対象加工ステップに応じて、適切な平均パターンを算出することができる。このため、後述する異常検出部２１５は、分析対象加工ステップにおいて異常が発生したか否かの検出の精度を高めることができる。
【００４１】
＜異常検出部２１５＞
異常検出部２１５は、加工指令を数値制御装置１により新たに実行する場合に、当該加工指令に含まれる分析対象加工ステップにおいて、所定の時間間隔（サンプリングタイム）で収集される物理量と、平均パターン算出部２１４により当該分析対象加工ステップに応じて算出された平均パターンと、を同一のサンプリング時刻ごとに比較することで、予め設定された所定の閾値以上の乖離の有無（すなわち、分析対象加工ステップにおいて、収集される物理量が各サンプリング時間において、許容範囲内にとどまっているか、又は許容範囲外に存在するか）を検出することができる。
【００４２】
後述する出力部２１６は、平均パターン算出部２１４により算出された平均パターンに許容範囲としての閾値を割合や値を入力することで、図５及び図６に示すように、分析対象加工ステップのサンプリング時刻における加工状態を示す物理量に対して、平均パターンの許容範囲を分析対象加工ステップの異常の発生を示す境界として強調表示することができる。そうすることで、異常検出部２１５は、分析対象加工ステップにおいて異常が検出された場合には、後述する出力部２１６を介してグラフ上で物理量が許容範囲を超えたことが直感的に把握できるように、強調表示させることができる。
【００４３】
＜加工中の異常検出リアルタイム処理＞
異常検出部２１５は、加工指令を数値制御装置１により実行中に、当該加工指令に含まれる任意の分析対象加工ステップの実行中に収集される、当該分析対象加工ステップのサンプリング時刻における物理量を、平均パターン算出部２１４により当該分析対象加工ステップに応じて算出された平均パターンにおける、当該サンプリング時刻における許容範囲内にとどまっているか、又は許容範囲外に存在するかを検出することができる。すなわち、異常検出部２１５は、当該分析対象加工ステップのサンプリング時刻における、加工状態を示す物理量が、予め設定された当該サンプリング時刻における所定の閾値以上の乖離の有無が発生しているか否かを検出する。
異常検出部２１５は、乖離を検出した場合に、当該分析対象加工ステップにおいて、加工異常が発生したと判定し、後述する出力部２１６を介して加工異常の発生した領域をリアルタイムに強調表示させる。こうすることで、ユーザに対して、加工指令を数値制御装置１により実行中に、当該加工指令に含まれる任意の分析対象加工ステップにおける加工異常を通知することができる。
これにより、ユーザは、例えば、加工中にリアルタイムに現加工の加工異常の判別ができ、当該加工の中断、又は切削速度を下げることによる負荷の軽減、また必要に応じて工具交換等の処理を行うことができる。
【００４４】
＜加工後の異常検出バッチ処理＞
異常検出部２１５は、加工指令を数値制御装置１により実行後に、当該加工指令に含まれる任意の分析対象加工ステップの実行中に収集された分析対象加工情報のそれぞれのサンプリング時刻における物理量が、平均パターン算出部２１４により当該分析対象加工ステップに応じて算出された平均パターンにおける当該サンプリング時刻における許容範囲内にとどまっているか、否かを検出することができる。
異常検出部２１５は、乖離を検出した場合に、当該分析対象加工ステップにおいて、加工異常が発生したと判定し、後述する出力部２１６を介して、許容範囲を超えている領域を強調表示することで、ユーザに対して、加工指令実行後に分析対象加工ステップにおいて発生した異常個所をまとめて通知することができる。
そうすることで、ユーザは、加工指令実行後に、例えば、加工実績に異常がなかったことの確認、又は分析対象加工ステップにおいて発生した異常個所をまとめて調査することが可能となる。それにより、ユーザは、当該加工指令における問題の発見、加工指令の改良に利用することができる。
【００４５】
＜出力部２１６＞
図５又は図６に示すように、出力部２１６は、平均パターン算出部２１４により分析対象加工ステップに応じて算出された平均パターン（すなわち、平均値及び許容範囲の領域）を、例えば表示器７０に表示する。前述したように、許容範囲を設定するための閾値は割合（％等）や実数（値）等で与えられる。
出力部２１６は、加工指令に含まれる分析対象加工ステップにおけるサンプリング時刻ごとに、表示器７０に表示された、当該分析対象加工ステップに応じて算出された平均パターンの領域に重ね合わせるように表示させることができる。
以下、加工中の異常検出リアルタイム表示処理及び加工後の異常検出表示処理について、説明する。
【００４６】
＜加工中の異常検出リアルタイム表示処理＞
前述したように、出力部２１６は、加工指令に含まれる任意の分析対象加工ステップの実行中に、分析対象加工ステップに応じて算出された平均パターン（すなわち、平均値及び許容範囲の領域）を、例えば表示器７０に表示する。出力部２１６は、当該加工処理に係る加工状態を示す物理量を、一定時間ごと（例えばサンプリング時刻）にプロットする。出力部２１６は、当該加工処理に係る加工状態を示す物理量が、当該分析対象加工ステップに応じて算出された平均パターンにおける許容範囲を外れているか否か（すなわち、所定の閾値以上の乖離の有無が発生しているか否か）をリアルタイムに表示する。
異常検出部２１５が乖離を検出した場合に、出力部２１６は、乖離の発生した領域をリアルタイムに強調表示する。例えば、出力部２１６は、ユーザへのアラーム、グラフの色変更等による強調表示、音、機械強制停止等により、ユーザに対して、加工異常を通知することができる。
【００４７】
図７Ａは、任意の分析対象加工ステップを実行中に異常検出部２１５により、主軸ロードメータ値について乖離が検出された場合に、リアルタイムに乖離している領域を表示器７０に識別表示する一例を示す図である。
図７Ａに示すように、任意の分析対象加工ステップを実行中に、表示器７０に表示された当該分析対象加工ステップに応じて算出された平均パターンとその許容範囲に対して、現在の加工状態を示す物理量が一定時間経過毎のサンプリング時刻にプロットされる。ここで、各サンプリング時刻における許容範囲を示す閾値は、例えば、各サンプリング時刻における平均値に対する割合（％等）や、実数値（値）により与えるようにしてもよい。
そうして、図７Ａに示すように、許容範囲を外れた場合に許容範囲を外れた領域をリアルタイムに強調表示することにより、ユーザは、容易に現加工（すなわち、分析対象加工ステップ）の加工異常の発生を認識することができる。
これにより、ユーザは、例えば、加工中にリアルタイムに当該加工の中断、又は切削速度を下げる等による負荷の軽減、また必要に応じて工具交換等の処理を行うことができる。
なお、出力部２１６は、前述した許容範囲を外れた場合に、加工異常が発生したことをユーザに対して通知する一例として、表示器７０上で許容範囲を外れた領域を強調表示するケースを例示したが、これに限られない。
例えば、出力部２１６は、ユーザへのアラーム、グラフの色変更等の強調表示、音、機械強制停止等により、加工異常が発生したことをユーザに対して通知するようにしてもよい。
【００４８】
＜加工後の異常検出表示処理＞
前述したように、異常検出部２１５は、加工指令を数値制御装置１により実行後に、当該加工指令に含まれる任意の分析対象加工ステップの全てのサンプリング時刻における、当該加工処理に係る加工状態を示す物理量が、当該分析対象加工ステップに応じて算出された平均パターンにおける当該サンプリング時刻における許容範囲内にとどまっているか、否かを検出することができる。
異常検出部２１５は、乖離を検出した場合に、出力部２１６に対して、当該分析対象加工ステップにおいて、許容範囲を超えている領域を強調表示することで、ユーザに対して、加工指令実行後に任意の分析対象加工ステップにおいて発生した異常個所をまとめて通知することができる。
【００４９】
図７Ｂは、任意の分析対象加工ステップの実行後に異常検出部２１５により、主軸ロードメータ値について乖離が検出された領域を表示器７０に識別表示する一例を示す図である。
図７Ｂに示すように、任意の分析対象加工ステップを実行後に、表示器７０に表示された当該分析対象加工ステップに応じて算出された平均パターンとその許容範囲に対して、当該加工ステップを開始してから終了するまでの加工状態を示す物理量が一定時間経過毎（例えば、サンプリング時刻）にプロットされる。ここで、各サンプリング時刻における許容範囲を示す閾値は、前述したように例えば、各サンプリング時刻における平均値に対する割合（％等）や、実数値（値）により与えるようにしてもよい。
出力部２１６は、加工指令を実行した際における任意の分析対象加工ステップごとの加工ステップ開始から加工ステップ終了するまでの間の加工状態を示す物理量が許容範囲を超えている領域をユーザに対してまとめて強調表示する。具体的には、例えば許容範囲を外れている場合にグラフの色変更等の強調表示を行うようにしてもよい。
そうすることで、任意の分析対象加工ステップにおける加工状態を示す物理量が許容範囲を超えている領域を横断的に調査分析することができる。それにより、当該加工処理に関する問題の発見や加工指令の改良等に利用することができる。
【００５０】
以上、本実施形態として例示した第１実施形態に係る数値制御装置１の各機能部の構成について説明した。
次に、異常検出装置２の異常検出処理に係る動作について説明する。図８は、異常検出対象となる任意の分析対象加工ステップを実行中に、当該加工ステップにおける異常をリアルタイムに検出する動作を示すフローチャートである。図９は、加工指令実行終了後に、異常検出対象となる任意の分析対象加工ステップの開始から終了までの間における異常検出調査を行う動作を示すフローチャートである。なお、以下の動作説明において、分析対象加工ステップ以前に実行された当該加工ステップに係る加工実行情報は、加工実行情報記録部２１２により記憶部２２に記録されているものとする。
【００５１】
最初に、図８のフローチャートを参照して、異常検出対象となる、加工指令に含まれる任意の分析対象加工ステップ（以下、「Ｃｎ＿ｔａｒｇｅｔ」ともいう）を実行中に、当該加工ステップにおける異常をリアルタイムに検出する処理フローについて説明する。
ステップＳ１１において、異常検出装置２（選択部２１３）は、数値制御装置１による加工実行に際して、分析対象加工ステップＣｎ＿ｔａｒｇｅｔの平均パターン（以下「Ｃｎ＿ａｖｅｒａｇｅ」ともいう）を算出するために、記憶部２２に記録された、当該加工ステップに係る複数の加工実行情報の集合から、予め設定されたフィルタリング条件に基づいて加工実行情報の部分集合を選択する。
【００５２】
ステップＳ１２において、異常検出装置２（平均パターン算出部２１４）は、選択された加工実行情報の部分集合に基づいて、分析対象加工ステップＣｎ＿ｔａｒｇｅｔに対する適切な平均パターンＣｎ＿ａｖｅｒａｇｅを算出する。
具体的には、平均パターン算出部２１４は、選択された加工実行情報の部分集合に基づいて、分析対象加工ステップＣｎ＿ｔａｒｇｅｔに対する、同一サンプリング時刻Ｔ（ｉ）ごとの物理量に係る統計量（例えば、平均値及び許容範囲）を算出し、分析対象加工ステップＣｎ＿ｔａｒｇｅｔの平均パターンＣｎ＿ａｖｅｒａｇｅを作成する。
【００５３】
ステップＳ１３において、数値制御装置１が加工指令の実行を開始する。
【００５４】
ステップＳ１４において、異常検出装置２（出力部２１６）は、分析対象加工ステップＣｎ＿ｔａｒｇｅｔの実行が開始される際に、例えば図７Ａに示すように、サンプリング時刻Ｔ（ｉ）順に分析対象加工ステップＣｎ＿ｔａｒｇｅｔの平均パターンのＣｎ＿ａｖｅｒａｇｅ（ｉ）と閾値の領域（許容範囲）とを予め出力する。
【００５５】
ステップＳ１５において、異常検出装置２（加工状態収集部２１１）は、当該分析対象加工ステップＣｎ＿ｔａｒｇｅｔのサンプリング時刻Ｔ（ｉ）における、加工状態を示す物理量（以下、「分析対象加工実行情報Ｃｎ＿ｔａｒｇｅｔ（ｉ）」という）を収集し、記憶部２２に記録するとともに、異常検出装置２（出力部２１６）は、加工状態収集部２１１により取得される、当該分析対象加工ステップＣｎ＿ｔａｒｇｅｔのサンプリング時刻Ｔ（ｉ）ごとに、分析対象加工実行情報Ｃｎ＿ｔａｒｇｅｔ（ｉ）を出力する。
【００５６】
ステップＳ１６において、異常検出装置２（異常検出部２１５）は、Ｃｎ＿ｔａｒｇｅｔ（ｉ）が、当該サンプリング時刻Ｔ（ｉ）における許容範囲内か否かを検出する。具体的には、異常検出装置２（異常検出部２１５）は、Ｃｎ＿ｔａｒｇｅｔ（ｉ）が平均パターンＣｎ＿ａｖｅｒａｇｅ（ｉ）の許容範囲内にあるか否かを判定する。許容範囲内にある場合（Ｙｅｓの場合）ステップＳ１８に移る。そうでない場合（Ｎｏの場合）、ステップＳ１７に移る。
【００５７】
ステップＳ１７において、異常検出装置２（出力部２１６）は、当該サンプリング時刻Ｔ（ｉ）に係る領域を強調して出力する。具体的には、例えば、図７Ａに示すように、表示器７０に強調表示してもよい。
【００５８】
ステップＳ１８において、制御部１１は、当該分析対象加工ステップＣｎ＿ｔａｒｇｅｔの実行が終了したか否かを判定する。分析対象加工ステップＣｎ＿ｔａｒｇｅｔの実行が終了していない場合（Ｎｏの場合）、ステップＳ１５に移る。分析対象加工ステップＣｎ＿ｔａｒｇｅｔ（ｉ）の実行が終了した場合（Ｙｅｓの場合）、ステップＳ１９に移る。
【００５９】
ステップＳ１９において、異常検出装置２は、加工指令の実行が終了したか否かを判定する。加工指令の実行が終了していない場合（Ｎｏの場合）、ステップＳ１４に移る。加工指令の実行が終了した場合（Ｙｅｓの場合）、処理を終了する。
なお、以上の説明において、ステップ順序は一例であって、これに限られない。例えば、分析対象加工ステップＣｎ＿ｔａｒｇｅｔに対する適切な平均パターンＣｎ＿ａｖｅｒａｇｅ（ｉ）の算出をステップＳ１４において分析対象加工ステップＣｎ＿ｔａｒｇｅｔの実行が開始される際に行うようにしてもよい。
また、ステップＳ１７の後、異常検出装置２は、ユーザからの指示により、当該加工ステップの中断、又は切削速度を下げる等の処理を行うようにしてもよい。
【００６０】
以上により、図７Ａに示すように、許容範囲を外れた場合に許容範囲を外れた領域をリアルタイムに強調表示することができる。これにより、ユーザは、容易に現加工ステップの加工異常の発生を認識することができる。ユーザは、加工異常の発生に対して、例えば当該加工ステップの中断、また必要に応じて工具交換等の処理、又は切削速度を下げる等による負荷の軽減等を行うことができる。
【００６１】
次に、図９のフローチャートを参照して、加工指令実施後に実績分析を行う場合における、異常検出機能部の処理について説明する。
以下の処理を行う前に、分析対象加工ステップＣｎ＿ｔａｒｇｅｔの加工実行情報、及び当該分析対象加工ステップＣｎ＿ｔａｒｇｅｔ以前に実行された当該加工ステップＣｎに係る加工実行情報は、記憶部２２に記録されているものとする。
【００６２】
図９を参照すると、ステップＳ２１において、異常検出装置２（選択部２１３）は、加工指令に含まれる加工ステップＣｎにおける加工異常調査を実行するに際して、分析対象加工ステップＣｎ＿ｔａｒｇｅｔの平均パターンＣｎ＿ａｖｅｒａｇｅを算出するために、記憶部２２に記録された、当該分析対象加工ステップＣｎ＿ｔａｒｇｅｔ以前に実行された当該加工ステップＣｎに係る複数の加工実行情報の集合から、予め設定されたフィルタリング条件に基づいて加工実行情報の部分集合を選択する。
【００６３】
ステップＳ２２において、異常検出装置２（平均パターン算出部２１４）は、選択された加工実行情報の部分集合に基づいて、分析対象加工ステップＣｎ＿ｔａｒｇｅｔに対する適切な平均パターンＣｎ＿ａｖｅｒａｇｅ（ｉ）を算出する。
【００６４】
ステップＳ２３において、異常検出装置２（異常検出部２１５）は、分析対象加工ステップＣｎ＿ｔａｒｇｅｔの分析対象加工実行情報Ｃｎ＿ｔａｒｇｅｔ（ｉ）を記憶部２２から入力（取得）する。
【００６５】
ステップＳ２４において、異常検出装置２（異常検出部２１５）は、Ｃｎ＿ｔａｒｇｅｔ（ｉ）が平均パターンＣｎ＿ａｖｅｒａｇｅ（ｉ）の許容範囲の領域外に位置するｉの部分集合｛ｉ：許容範囲外｝を求める。
【００６６】
ステップＳ２５において、異常検出装置２（出力部２１６）は、図７Ｂに示すように、分析対象加工ステップＣｎ＿ｔａｒｇｅｔの平均パターンＣｎ＿ｔａｒｇｅｔ（ｉ）の範囲領域（平均値と閾値（上限下限）の範囲領域）を出力するとともに、Ｃｎ＿ｔａｒｇｅｔ（ｉ）を出力する。
【００６７】
ステップＳ２６において、異常検出装置２（出力部２１６）は、さらに｛ｉ：許容範囲外｝の領域を、図７Ｂに示すように強調して出力する。なお、｛ｉ：許容範囲外｝が空集合の場合、異常なしと出力してもよい。
なお、異常検出装置２（出力部２１６）は、ファイルとして出力してもよい。なお、ファイルとして出力する場合は、ファイルを参照するための参照プログラムにより表示器７０等に出力するようにしてもよい。
【００６８】
ステップＳ２７において、異常検出装置２は、加工指令に含まれるすべての分析対象加工ステップＣｎ＿ｔａｒｇｅｔの異常検出処理が終了したか否かを判定する。処理が終了していない場合（Ｎｏの場合）、ステップＳ２１に移る。処理が終了した場合（Ｙｅｓの場合）、処理を終了する。
以上により、図７Ｂに示すように、加工指令実行後に加工指令に含まれる分析対象加工ステップＣｎ＿ｔａｒｇｅｔの開始から終了するまでの間の加工状態を示す物理量（分析対象加工実行情報Ｃｎ＿ｔａｒｇｅｔ（ｉ））が許容範囲を超えている領域をユーザに対してまとめて強調表示することができる。それにより、当該加工処理に関する問題の発見や加工指令の改良等に利用することができる。
以上、異常検出装置２の動作について説明した。
【００６９】
異常検出装置２に含まれる各構成部は、（電子回路等を含む）ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、コンピュータ（数値制御装置１）にインストールされる。また、これらのプログラムは、リムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。また、ハードウェアで構成する場合、上記の制御装置に含まれる各構成部の機能の一部又は全部を、例えば、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ゲートアレイ、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＣＰＬＤ（Ｃｏｍｐｌｅｘ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）等の集積回路（ＩＣ）で構成することができる。
【００７０】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
【００７１】
［変形例１］
上述した実施形態は、異常検出装置２が、異常検出機能に係るすべての機能部を含む構成を例示した。この場合、前述したように、異常検出装置２は、インタフェース部（図示せず）を介して制御装置１に直接接続してもよい。また、ネットワークを介して制御装置１に通信接続されるサーバ（異常検出サーバ）としてもよい。例えば、異常検出装置２を、各機械（エッジ）に通信可能に接続されるエッジサーバとしてもよい。また、異常検出装置２を、クラウド上の仮想サーバとして実現してもよい。また、異常検出装置２の機能部を、クラウド上でファンクションとして提供するようにしてもよい。
また、異常検出装置２が制御装置１に含まれるようにしてもよい。あるいは、異常検出装置２の備える機能ブロックが制御装置１に含まれる構成にしてもよい。
また、異常検出装置２の備える異常検出機能（加工状態収集部、加工実行情報記録部、選択部、平均パターン算出部、異常検出部、及び出力部）に係る一部の機能部を数値制御装置１が備える構成としてもよい。この場合、数値制御装置１と、残りの機能部を備える異常検出装置２と、は前述したように、インタフェース部（図示せず）を介して直接接続してもよい。また、ネットワークを介して通信可能に接続するようにしてもよい。
【００７２】
［変形例２］
上述した実施形態では、平均パターン算出部２１４は、各サンプリング時刻における許容範囲として、例えば、平均値のプラス２５％を上限閾値、マイナス２５％を下限閾値とする、平均値に比例するように作成した平均パターンを例示したが、これに限られない。
例えば、各サンプリング時刻における物理量の分散に応じて、許容範囲の閾値を設定するようにしてもよい。
【００７３】
＜本実施形態の効果＞
本実施形態によれば、例えば、以下の作用効果が得られる。
【００７４】
（１）  異常検出装置２は、制御装置１において実行される、１つ以上の加工ステップからなる加工指令における異常を検出するため、当該加工指令の実行時に所定の時間間隔で取得される加工ステップにおける加工状態を示す物理量を、物理量を取得した時刻情報とともに、当該加工ステップの加工実行情報として収集する加工状態収集部２１１と、加工状態収集部２１１により収集される加工実行情報を記憶部２２に記録する加工実行情報記録部２１２と、任意の１つの加工ステップに対して、当該加工ステップと同一の加工ステップを複数回実行し、記憶部２２に複数回記録された当該加工ステップと同一の加工ステップの加工実行情報の集合から、当該任意の１つの加工ステップの加工実行情報の平均的な物理量の時間変化である平均パターンを算出するのに適切な当該加工ステップと同一の加工ステップの加工実行情報の部分集合を選択する選択部２１３と、選択部２１３により選択された加工実行情報の部分集合に基づいて、当該任意の１つの加工ステップの加工実行情報の平均パターンを算出する平均パターン算出部２１４と、当該任意の１つの加工ステップを実行して取得される当該加工ステップの加工実行情報である対象加工実行情報を、平均パターン算出部２１４により算出された平均パターンと比較して、当該任意の１つの加工ステップの実行時の異常を検出する異常検出部２１５と、を備える。
これにより、例えば、複数のワークに対してそれぞれ同一の加工ステップを繰り返し行う場合、それぞれの加工状態に適した方式で、それぞれの加工ステップにおいて加工異常が発生したか否かを容易に判別できる。
【００７５】
（２）  （１）に記載の異常検出装置２において、異常検出部２１５は、対象加工実行情報を平均パターンと比較して、予め設定した閾値以上の乖離の有無の検出に基づいて、任意の１つの前記加工ステップの異常を検出するようにしてもよい。
これにより、例えば、複数のワークに対してそれぞれ同一の加工ステップを繰り返し行う場合に、予め閾値を設定することで、それぞれの加工ステップにおいて加工異常が発生したか否かを、容易に判別できる。
【００７６】
（３）  （１）又は（２）に記載の異常検出装置２において、異常検出部２１５により、任意の１つの加工ステップの異常を検出した場合、異常を検出した物理量と当該物理量を取得した時刻を異常発生領域として識別する出力部２１６を備えるようにしてもよい。
これにより、例えば、複数のワークに対してそれぞれ同一の加工ステップを繰り返し行う場合に、それぞれの加工ステップにおいて加工異常が発生したか否かを、その時の物理量及び時刻を容易に認識することができる。
【００７７】
（４）  （１）から（３）のいずれかに記載の異常検出装置２において、任意の１つの加工ステップを実行中に、加工状態収集部２１１により収集される加工実行情報を対象加工実行情報とするようにしてもよい。
これにより、加工中にリアルタイムに加工異常が発生したか否かの判別ができ、ユーザへの通知や加工の中断を行うことができる。
【００７８】
（５）  （１）から（３）のいずれかに記載の異常検出装置２において、任意の１つの加工ステップの実行後に、加工状態収集部２１１により収集された加工実行情報を対象加工実行情報とするようにしてもよい。
これにより、加工後に例えばバッチ処理により、加工の異常箇所を調査できる為、問題の発見や加工指令の改良に利用できることができる。
【００７９】
（６）  （１）から（５）のいずれかに記載の異常検出装置２において、加工状態収集部２１１は、さらに加工ステップにおいて使用される工具の工具累積使用時間を収集し、加工実行情報記録部２１２は、さらに加工ステップにおいて使用される工具の工具累積使用時間を加工ステップの加工実行情報に対応づけて記憶部２２に記録し、選択部２１３は、さらに記憶部２２に複数回記録されたそれぞれの加工ステップのうち、工具累積使用時間が予め設定された指定範囲内に含まれる加工ステップの加工実行情報を選択するようにしてもよい。
これにより、平均パターンを作成する際には、例えば、任意の１つの加工ステップにおける工具使用状態の類似した加工ステップを選択して、平均パターンを算出することができる。
【００８０】
（７）  異常検出サーバは、（１）から（６）のいずれかに記載の異常検出装置２を備え、制御装置１と通信接続するようにしてもよい。
これにより、異常検出サーバを、例えば５Ｇ等の高速かつ低遅延のネットワークを介して制御装置１に接続することにより、例えばクラウド上で提供されるサービスにより、加工指令実行時の加工異常の発生の有無を容易に検出することができる。
【００８１】
（８）コンピュータが実行する異常検出方法は、制御装置１において実行される、１つ以上の加工ステップからなる加工指令における異常を検出するため、当該加工指令の実行時に所定の時間間隔で取得される加工ステップにおける加工状態を示す物理量を、物理量を取得した時刻情報とともに、当該加工ステップの加工実行情報として収集する加工状態収集ステップと、前記加工状態収集ステップにおいて収集される加工実行情報を記憶部２２に記録する加工実行情報記録ステップと、任意の１つの加工ステップに対して、当該加工ステップと同一の加工ステップを複数回実行し、記憶部２２に複数回記録された当該加工ステップと同一の加工ステップの加工実行情報の集合から、当該任意の１つの加工ステップの加工実行情報の平均的な物理量の時間変化である平均パターンを算出するのに適切な当該加工ステップと同一の加工ステップの加工実行情報の部分集合を選択する選択ステップと、前記選択ステップにおいて選択された加工実行情報の部分集合に基づいて、当該任意の１つの加工ステップの加工実行情報の平均パターンを算出する平均パターン算出ステップと、当該任意の１つの加工ステップを実行して取得される当該加工ステップの加工実行情報である対象加工実行情報を、前記平均パターン算出ステップにおいて算出された前記平均パターンと比較して、当該任意の１つの加工ステップの実行時の異常を検出する異常検出ステップと、を備える。
これにより、（１）と同様の効果を奏することができる。
【符号の説明】
【００８２】
１  数値制御装置
２  異常検出装置
２１  制御部
２２  記憶部
２１１  加工状態収集部
２１２  加工実行情報記録部
２１３  選択部
２１４  平均パターン算出部
２１５  異常検出部
２１６  出力部
【図１】
2020191043.tif 000003
【図２】
2020191043.tif 000004
【図３Ａ】
2020191043.tif 000005
【図３Ｂ】
2020191043.tif 000006
【図４Ａ】
2020191043.tif 000007
【図４Ｂ】
2020191043.tif 000008
【図５】
2020191043.tif 000009
【図６】
2020191043.tif 000010
【図７Ａ】
2020191043.tif 000011
【図７Ｂ】
2020191043.tif 000012
【図８】
2020191043.tif 000013
【図９】
2020191043.tif 000014