(57)【特許請求の範囲】
【請求項１】
対象物を加工する対象装置の加工履歴に関するコンテキスト情報を取得する第１の取得部と、
前記対象装置の動作状況に応じて変化する物理量の検知情報を取得する第２の取得部と、
前記コンテキスト情報から、前記対象装置に設けられた工具が対象物を加工した累積加工量を特定する第１の特定部と、
前記工具の摩耗実測値と、未摩耗の状態から前記摩耗実測値まで摩耗した前記工具を備えた前記対象装置の前記物理量の検知実測値と、を対応づけた第１のモデルにおける、前記検知情報に応じた前記検知実測値に対応する前記摩耗実測値を、前記工具の摩耗値として特定する第２の特定部と、
前記累積加工量と前記摩耗値とに基づいて、前記工具の残り寿命を演算する演算部と、
を備える、情報処理装置。
【請求項２】
前記演算部は、
前記工具の摩耗実測値と、未摩耗の状態から前記摩耗実測値まで摩耗した前記工具が対象物を加工した累積加工量実測値と、を対応づけた第２のモデルにおける、前記摩耗値に応じた前記摩耗実測値に対応する前記累積加工量実測値を演算する第１の演算部と、
前記累積加工量を前記累積加工量実測値で除算した除算値に、前記摩耗値から特定した理論上の理論工具寿命を乗算した乗算値を、前記工具の工具寿命として演算する第２の演算部と、
前記工具寿命から前記累積加工量を減算した減算値を、前記工具の残り寿命として演算する第３の演算部と、
を含む、請求項１に記載の情報処理装置。
【請求項３】
前記検知情報は、前記工具の振動を示す振動データである、請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記検知情報は、前記工具の振動により発生した音を示す、音データまたは音波データである、請求項３に記載の情報処理装置。
【請求項５】
前記累積加工量は、累積切削距離または累積切削時間の少なくとも一方を示す、請求項１〜請求項４の何れか１項に記載の情報処理装置。
【請求項６】
前記工具の残り寿命を表示部に表示する表示制御部を備える、請求項１〜請求項５の何れか１項に記載の情報処理装置。
【請求項７】
前記表示制御部は、前記工具の残り寿命と、前記工具を示す情報と、を前記表示部に表示する、請求項６に記載の情報処理装置。
【請求項８】
日時情報の指定を受付ける受付部を備え、
前記表示制御部は、受付けた前記日時情報によって示される日時と現在の日時との差を前記表示部に表示する、請求項６または請求項７に記載の情報処理装置。
【請求項９】
前記検知情報と前記コンテキスト情報と、に基づいて前記対象装置の動作が正常であるか異常であるかを判定する判定部を備え、
前記第１の特定部は、異常の判定に用いた前記コンテキスト情報から、前記対象装置に設けられた工具が対象物を加工した累積加工量を特定し、
前記第２の特定部は、前記第１のモデルにおける、異常の判定に用いた前記検知情報に応じた前記検知実測値に対応する前記摩耗実測値を、前記工具の摩耗値として特定する、
請求項１〜請求項８の何れか１項に記載の情報処理装置。
【請求項１０】
対象物を加工する対象装置の加工履歴に関するコンテキスト情報を取得するステップと、
前記対象装置の動作状況に応じて変化する物理量の検知情報を取得するステップと、
前記コンテキスト情報から、前記対象装置に設けられた工具が対象物を加工した累積加工量を特定するステップと、
前記工具の摩耗実測値と、未摩耗の状態から前記摩耗実測値まで摩耗した前記工具を備えた前記対象装置の前記物理量の検知実測値と、を対応づけた第１のモデルにおける、前記検知情報に応じた前記検知実測値に対応する前記摩耗実測値を、前記工具の摩耗値として特定するステップと、
前記累積加工量と前記摩耗値とに基づいて、前記工具の残り寿命を演算するステップと、
を含む情報処理方法。
【請求項１１】
対象物を加工する対象装置の加工履歴に関するコンテキスト情報を取得するステップと、
前記対象装置の動作状況に応じて変化する物理量の検知情報を取得するステップと、
前記コンテキスト情報から、前記対象装置に設けられた工具が対象物を加工した累積加工量を特定するステップと、
前記工具の摩耗実測値と、未摩耗の状態から前記摩耗実測値まで摩耗した前記工具を備えた前記対象装置の前記物理量の検知実測値と、を対応づけた第１のモデルにおける、前記検知情報に応じた前記検知実測値に対応する前記摩耗実測値を、前記工具の摩耗値として特定するステップと、
前記累積加工量と前記摩耗値とに基づいて、前記工具の残り寿命を演算するステップと、
をコンピュータに実行させるための情報処理プログラム。
【請求項１２】
情報処理装置と、対象装置と、を備える情報処理システムであって、
前記情報処理装置は、
対象物を加工する対象装置の加工履歴に関するコンテキスト情報を取得する第１の取得部と、
前記対象装置の動作状況に応じて変化する物理量の検知情報を取得する第２の取得部と、
前記コンテキスト情報から、前記対象装置に設けられた工具が対象物を加工した累積加工量を特定する第１の特定部と、
前記工具の摩耗実測値と、未摩耗の状態から前記摩耗実測値まで摩耗した前記工具を備えた前記対象装置の前記物理量の検知実測値と、を対応づけた第１のモデルにおける、前記検知情報に応じた前記検知実測値に対応する前記摩耗実測値を、前記工具の摩耗値として特定する第２の特定部と、
前記累積加工量と前記摩耗値とに基づいて、前記工具の残り寿命を演算する演算部と、
を備え、
前記対象装置は、
前記物理量を検知する検知部と、
検知された前記物理量を前記情報処理装置に送信する送信部と、
を備える、情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、情報処理プログラム、および情報処理システムに関する。
【背景技術】
【０００２】
各種の加工を行う工作機械における工具の残り寿命を推測する技術が知られている。
【０００３】
例えば、特許文献１には、主軸モータに駆動電流を与える回路に設けられた電流計を用いて、工具に作用する負荷を検出することが開示されている。そして、特許文献１には、検出した負荷の統計から負荷の変化の近似式を作成し、近似式を用いて、残り何個加工可能であるかを予測することが開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、工具の種類によっては、工具の摩耗状態が変化しても、駆動電流の電流値に変化が生じない場合がある。このため、従来の方法では、工具の残り寿命を精度良く求めることは困難であった。
【０００５】
本発明は、上記に鑑みてなされたものであって、対象装置に備えられた工具の残り寿命を精度良く求めることができる、情報処理装置、情報処理方法、情報処理プログラム、および情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、情報処理装置は、対象物を加工する対象装置の加工履歴に関するコンテキスト情報を取得する第１の取得部と、前記対象装置の動作状況に応じて変化する物理量の検知情報を取得する第２の取得部と、前記コンテキスト情報から、前記対象装置に設けられた工具が対象物を加工した累積加工量を特定する第１の特定部と、前記工具の摩耗実測値と、未摩耗の状態から前記摩耗実測値まで摩耗した前記工具を備えた前記対象装置の前記物理量の検知実測値と、を対応づけた第１のモデルにおける、前記検知情報に応じた前記検知実測値に対応する前記摩耗実測値を、前記工具の摩耗値として特定する第２の特定部と、前記累積加工量と前記摩耗値とに基づいて、前記工具の残り寿命を演算する演算部と、を備える。
【発明の効果】
【０００７】
本発明によれば、対象装置に備えられた工具の残り寿命を精度良く求めることができる、という効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、情報処理システムの構成例の概要を示す模式図である。
【図２】図２は、加工機のハードウェア構成の一例を示すブロック図である。
【図３】図３は、診断装置のハードウェア構成の一例を示すブロック図である。
【図４】図４は、加工機および診断装置の各々の、機能構成の一例を示すブロック図である。
【図５】図５は、検知モデルおよび加工量モデルのデータ構成の一例を示す模式図である。
【図６】図６は、演算部による演算の説明図である。
【図７】図７は、表示画面の一例を示す模式図である。
【図８】図８は、情報処理の一例を示すフローチャートである。
【図９】図９は、情報処理システムの機能構成の一例を示すブロック図である。
【図１０】図１０は、情報処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、情報処理装置、情報処理方法、情報処理プログラム、および情報処理システムの一実施形態を詳細に説明する。なお、本実施の形態では、情報処理装置を、診断装置に適用した形態を一例として説明する。
【００１０】
（第１の実施の形態）
図１は、本実施の形態の情報処理システム１０００の構成例の概要を示す模式図である。
【００１１】
情報処理システム１０００は、加工機２０と、診断装置１０と、を備える。診断装置１０と加工機２０とは、通信可能に接続されている。加工機２０と診断装置１０は、どのような接続形態で接続されてもよい。例えば加工機２０と診断装置１０とは、専用の接続線、有線ＬＡＮ（ローカルエリアネットワーク）などの有線ネットワーク、および、無線ネットワークなどにより接続される。
【００１２】
加工機２０は、診断装置１０による診断の対象となる対象装置の一例である。加工機２０には、工作機械２３が設けられている。工作機械２３は、加工対象を加工する機械である。工作機械２３には、工具５９が設けられており、工具５９を用いて対象物を加工する。工具５９は、例えば、対象物を切削する切削部材や、対象物を研磨する研磨部材などである。具体的には、工具５９は、ドリル、およびカッタなどである。
【００１３】
診断装置１０は、加工機２０を診断する装置である。本実施の形態では、診断装置１０は、加工機２０に設けられた工具５９の残り寿命を診断（演算）する。
【００１４】
図２は、加工機２０のハードウェア構成の一例を示すブロック図である。図２に示すように、加工機２０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）５２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５３と、通信Ｉ／Ｆ（インタフェース）５４と、駆動制御回路５５と、モータ５６と、センサ５７とが、バス５８で接続された構成となっている。
【００１５】
ＣＰＵ５１は、加工機２０の全体を制御する。ＣＰＵ５１は、例えばＲＡＭ５３をワークエリア（作業領域）としてＲＯＭ５２等に格納されたプログラムを実行することで、加工機２０全体の動作を制御し、加工機能を実現する。
【００１６】
通信Ｉ／Ｆ５４は、診断装置１０などの外部装置と通信するためのインタフェースである。駆動制御回路５５は、モータ５６の駆動を制御する回路である。モータ５６は、工具５９を駆動する。
【００１７】
図３は、診断装置１０のハードウェア構成の一例を示すブロック図である。図３に示すように、診断装置１０は、ＣＰＵ６１と、ＲＯＭ６２と、ＲＡＭ６３と、通信Ｉ／Ｆ６４と、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）６５と、操作パネル６７と、が、バス６６で接続された構成となっている。操作パネル６７は、表示装置６７Ａと、操作装置６７Ｂと、を含む。表示装置６７Ａは、例えば、液晶パネルや有機ＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅ）パネルなどである。操作装置６７Ｂは、例えば、キーボードやマウスである。なお、操作パネル６７は、表示装置６７Ａと操作装置６７Ｂとを一体的に構成したタッチパネルであってもよい。
【００１８】
ＣＰＵ６１は、診断装置１０の全体を制御する。ＣＰＵ６１は、例えばＲＡＭ６３をワークエリア（作業領域）としてＲＯＭ６２等に格納されたプログラムを実行することで、診断装置１０全体の動作を制御し、診断機能を実現する。通信Ｉ／Ｆ６４は、加工機２０などの外部装置と通信するためのインタフェースである。ＨＤＤ６５は、診断装置１０の設定情報、加工機２０から受信された検知情報などの情報を記憶する。ＨＤＤ６５に代えて、または、ＨＤＤ６５とともに、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）またはＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などの不揮発性の記憶手段を備えてもよい。
【００１９】
図４は、情報処理システム１０００に設けられた加工機２０および診断装置１０の各々の、機能構成の一例を示すブロック図である。
【００２０】
加工機２０は、数値制御部２１と、通信制御部２２と、工作機械２３と、を備える。
【００２１】
工作機械２３は、数値制御部２１の制御によって駆動し、加工対象の対象物を加工する機械である。工作機械２３は、センサ２５と、駆動部２４と、工具５９と、を備える。
【００２２】
駆動部２４は、数値制御部２１の制御によって工具５９を駆動させる。工具５９の駆動によって対象物が加工される。駆動部２４は、例えば、モータ５６で実現する（図２参照）。なお、駆動部２４は、加工に用いられ、数値制御の対象となるものであればどのようなものであってもよい。また、工作機械２３は、複数の駆動部２４を備えていてもよい。
【００２３】
なお、加工機２０では、一度に動作する工具５９は１つであるであるものとして説明する。すなわち、工作機械２３が複数の工具５９を備えた構成であっても、一度に動作する工具５９は１つであるものとして説明する。
【００２４】
センサ２５は、加工機２０の動作状況に応じて変化する物理量を検知する検知部である。センサ２５は、物理量を検知した検知情報（センサデータ）を、診断装置１０へ送信する。センサ２５は、例えば図２のセンサ５７に相当する。
【００２５】
物理量は、本実施の形態では、加工機２０（詳細には工作機械２３）の振動を示すデータであればよい。振動を示すデータは、振動そのものを示す振動データ、振動により発生する音の音データ、振動により発生する音波の音波データ（ＡＥ波データ）、振動により発生する加速度の加速度データなどである。センサ２５は、例えば、マイク、振動センサ、加速度センサ、ＡＥ（アコースティックエミッション）センサ、などである。
【００２６】
例えば、工具５９が１または複数の対象物の加工を行うことで、工具５９には摩耗が生じる。すると、工作機械２３において対象物を加工するときに発生する振動（音、加速度、音波など）は、異なるものとなる。本実施の形態では、診断装置１０は、検知情報を工具５９の残り寿命の判断に用いる（詳細後述）。
【００２７】
なお、加工機２０が備えるセンサ２５の数は限定されない。すなわち、加工機２０は、１つのセンサ２５を備えた構成であってもよいし、同一の物理量を検知する複数のセンサ２５を備えた構成であってもよいし、互いに異なる物理量を検知する複数のセンサ２５を備えた構成であってもよい。
【００２８】
数値制御部２１は、工作機械２３を数値制御（Ｎｕｍｅｒｉｃａｌ  Ｃｏｎｔｒｏｌ）する。数値制御部２１は、駆動部２４の動作を制御するための制御データを生成し、駆動部２４へ出力する。また、数値制御部２１は、駆動部２４の現在の動作状態に関するコンテキスト情報を、診断装置１０へ送信する。すなわち、数値制御部２１は、駆動部２４に現在送信する（または直前に送信した）制御データに示される動作状態に関するコンテキスト情報を、診断装置１０へ送信する。
【００２９】
コンテキスト情報は、工作機械２３の動作状態情報と、加工履歴情報と、を含む。本実施の形態では、コンテキスト情報は、加工機２０（具体的には工作機械２３）が行う動作の種類（加工の種類）ごとに定まる情報である。
【００３０】
動作状態情報は、駆動部２４の動作状態を示す情報であり、駆動部２４を制御するための制御データに示される、駆動部２４の動作状態を示す情報である。動作状態情報は、例えば、加工に用いる工具５９の識別情報（以下、工具ＩＤと称する場合がある）、該工具５９を駆動する駆動部２４の識別情報、駆動部２４の回転数、駆動部２４の回転速度、駆動部２４にかかる負荷、駆動部２４の大きさ、などを含む。
【００３１】
加工履歴情報は、加工機２０の加工履歴に関する情報である。具体的には、加工履歴情報は、該加工履歴情報を含むコンテキスト情報に含まれる、工具ＩＤによって識別される工具５９の、加工履歴に関する情報である。加工履歴情報は、加工履歴に関する情報として、累積加工量、および、累積加工量を特定可能な情報、の少なくとも一方を含む。
【００３２】
累積加工量は、工具５９が対象物を加工した加工量の累積値である。言い換えると、累積加工量は、ある工具５９が、１または複数種類の対象物を加工した加工量の累積値である。加工量は、加工した量を示す情報であればよい。コンテキスト情報に含まれる累積加工量は、具体的には、コンテキスト情報に含まれる工具ＩＤによって識別される工具５９が対象物を加工した累積加工量である。加工量は、具体的には、切削距離や切削時間を示す。このため、累積加工量は、累積切削距離や累積切削時間を示す。
【００３３】
累積加工量を特定可能な情報は、コンテキスト情報に含まれる工具ＩＤによって識別される工具５９が対象物を加工した、累積加工量を特定可能な情報であればよい。累積加工量を特定可能な情報は、例えば、１回の加工あたりの切削距離と加工回数、１回の加工あたりの切削時間と加工回数、１回の加工あたりの主軸回転数と加工回数、１回の加工当りの送り量と加工回数、加工対象の対象物のサイズと加工した対象物の数、等である。
【００３４】
数値制御部２１は、予め設定された加工工程の実行順などに応じて、各加工工程に対応する動作の種類（加工の種類）に応じた制御データを生成し、駆動部２４へ出力する。これにより、駆動部２４は、制御データに示される動作状態に応じた動作を実行し、工具５９を加工する。また、数値制御部２１は、該動作状態の動作状態情報および加工履歴情報を含むコンテキスト情報を、診断装置１０へ送信する。
【００３５】
数値制御部２１が、診断装置１０へ送信するコンテキスト情報には、加工履歴に関する加工履歴情報（累積加工量、および、累積加工量を特定可能な情報、の少なくとも一方を含む）が含まれる。なお、数値制御部２１は、現在の動作状態情報および加工履歴情報を含むコンテキスト情報を、診断装置１０へ出力してもよい。
【００３６】
本実施の形態では、数値制御部２１は、現在の動作状態情報および加工履歴情報を含むコンテキスト情報を、診断装置１０へ出力する形態を説明する。現在の動作状態情報は、数値制御部２１が直前に工作機械２３へ送信した制御データによって示される動作状態を示す動作状態情報である。また、数値制御部２１が診断装置１０へ送信するコンテキスト情報に含まれる加工履歴情報は、該送信時（すなわち現在）における、工具５９の累積加工量、および、該累積加工量を特定可能な情報、の少なくとも一方である。
【００３７】
通信制御部２２は、診断装置１０などの外部装置との間の通信を制御する。例えば通信制御部２２は、数値制御部２１から受付けたコンテキスト情報を診断装置１０に送信する。
【００３８】
なお、数値制御部２１は、診断装置１０からのコンテキスト情報の取得要求に応じて、コンテキスト情報を診断装置１０へ出力してもよいし、所定タイミングごとにコンテキスト情報を診断装置１０へ出力してもよい。例えば、数値制御部２１は、各加工工程に対応する動作の種類（加工の種類）に応じた動作状態情報を含むコンテキスト情報に対応する制御データを、駆動部２４へ出力する毎に、該動作状態情報および現在の加工履歴情報を含むコンテキスト情報を、診断装置１０へ送信してもよい。
【００３９】
次に、診断装置１０の機能的構成を説明する。診断装置１０は、制御部３０と、記憶部３２と、操作部３６と、表示部３４と、を含む。制御部３０と、記憶部３２、表示部３４、および操作部３６と、は、データは信号を授受可能に接続されている。
【００４０】
記憶部３２は、各種情報を記憶する。記憶部３２は、例えば、図３のＨＤＤ６５で実現する。記憶部３２は、例えば、検知モデル（第１のモデル）３２Ａ、加工量モデル（第２のモデル）３２Ｂと、を記憶する。
【００４１】
検知モデル３２Ａは、第１のモデルに相当する。検知モデル３２Ａは、工具５９の摩耗実測値と、検知実測値と、の関係を示すモデルである。本実施の形態では、検知モデル３２Ａは、工具５９の摩耗実測値と、検知実測値と、を対応づけたデータベースである場合を一例として説明する。なお、本実施の形態では、実測値とは、実際の測定によって得られた値を示す。具体的には、実測値とは、演算によって得られた値ではなく、直接測定した値を示すものとする。
【００４２】
図５は、検知モデル３２Ａおよび加工量モデル３２Ｂのデータ構成の一例を示す模式図である。図５（Ａ）は、検知モデル３２Ａのデータ構成の一例を示す模式図である。検知モデル３２Ａは、工具ＩＤと、摩耗実測値と、検知実測値と、を対応づけたものである。
【００４３】
摩耗実測値は、工具ＩＤによって識別される工具５９の摩耗値を実測した値である。摩耗値とは、工具５９の摩耗の度合いを示す値である。摩耗値は、例えば、工具５９の摩耗量（長さ）や、工具５９の摩耗した重量などである。詳細には、摩耗値は、未摩耗の状態の工具５９を基準とした、摩耗量や摩耗した重量を示す。検知実測値は、対応する工具ＩＤによって識別される工具５９であって、対応する摩耗実測値まで摩耗した工具５９を備えた加工機２０の、センサ２５によって検知された物理量の実測値である。
【００４４】
すなわち、検知モデル３２Ａは、１つの工具５９を工作機械２３に搭載し、該工具５９で１または複数の対象物の加工を行った時の、該工具５９の摩耗値と、該加工時に工作機械２３のセンサ２５で検知された検知情報と、の各々を実測した実測結果である。検知モデル３２Ａは、診断対象の加工機２０を用いて予め計測し、予め作成すればよい。
【００４５】
加工量モデル３２Ｂは、第２のモデルに相当する。加工量モデル３２Ｂは、工具５９の摩耗実測値と、累積加工実測値と、の関係を示すモデルである。本実施の形態では、加工量モデル３２Ｂは、工具５９の摩耗実測値と、累積加工実測値と、を対応づけたデータベースである場合を一例として説明する。
【００４６】
図５（Ｂ）は、加工量モデル３２Ｂのデータ構成の一例を示す模式図である。加工量モデル３２Ｂは、工具ＩＤと、摩耗実測値と、累積加工実測値と、を対応づけたものである。
【００４７】
摩耗実測値は、上記と同様である。累積加工実測値は、対応する工具ＩＤによって識別される工具５９であって、未摩耗の状態から対応する摩耗実測値まで摩耗した工具５９が対象物を加工した累積加工量の実測値である。
【００４８】
すなわち、加工量モデル３２Ｂは、１つの工具５９を工作機械２３に搭載し、該工具５９で１または複数の対象物の加工を行った時の、該工具５９の摩耗値と、該工具５９が対象物を加工した加工量の累積値（合計値）と、の各々を実測した実測結果である。加工量モデル３２Ｂは、診断対象の加工機２０を用いて摩耗実測値および累積加工実測値を予め計測することで、予め作成すればよい。
【００４９】
図４に戻り、本実施の形態では、記憶部３２は、検知モデル３２Ａおよび加工量モデル３２Ｂを予め記憶する。
【００５０】
表示部３４は、各種画像を表示する。表示部３４は、例えば、表示装置６７Ａ（図３参照）で実現する。操作部３６は、ユーザによって操作される。操作部３６は、例えば、操作装置６７Ｂ（図３参照）で実現する。なお、表示部３４および操作部３６を一体的に構成し、タッチパネルとしてもよい。
【００５１】
次に、診断装置１０の制御部３０について説明する。
【００５２】
制御部３０は、診断装置１０を制御する。制御部３０は、通信制御部３０Ａ、第１の特定部３０Ｆ、第２の特定部３０Ｇ、演算部３０Ｈ、受付部３０Ｍ、および表示制御部３０Ｌを含む。通信制御部３０Ａは、送信部３０Ｂと、取得部３０Ｃと、を含む。取得部３０Ｃは、第１の取得部３０Ｄと第２の取得部３０Ｅとを含む。演算部３０Ｈは第１の演算部３０Ｉと、第２の演算部３０Ｊと、第３の演算部３０Ｋと、を含む。
【００５３】
通信制御部３０Ａ、送信部３０Ｂ、取得部３０Ｃ、第１の取得部３０Ｄ、第２の取得部３０Ｅ、第１の特定部３０Ｆ、第２の特定部３０Ｇ、演算部３０Ｈ、第１の演算部３０Ｉ、第２の演算部３０Ｊ、第３の演算部３０Ｋ、表示制御部３０Ｌ、および受付部３０Ｍの一部または全ては、例えば、ＣＰＵなどの処理装置にプログラムを実行させること（すなわちソフトウェア）により実現してもよいし、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などのハードウェアにより実現してもよいし、併用して実現してもよい。
【００５４】
通信制御部３０Ａは、加工機２０などの外部装置との間の通信を制御する。通信制御部３０Ａは、送信部３０Ｂと、取得部３０Ｃと、を含む。
【００５５】
送信部３０Ｂは、各種要求や信号を加工機２０へ送信する。例えば、送信部３０Ｂは、コンテキスト情報の取得要求を加工機２０へ送信する。
【００５６】
取得部３０Ｃは、加工機２０から各種情報や信号を取得する。本実施の形態では、取得部３０Ｃは、第１の取得部３０Ｄと第２の取得部３０Ｅとを含む。
【００５７】
第１の取得部３０Ｄは、加工機２０からコンテキスト情報を取得する。第２の取得部３０Ｅは、加工機２０のセンサ２５から検知情報を取得する。なお、第２の取得部３０Ｅは、第１の取得部３０Ｄがコンテキスト情報を取得したタイミング、または、送信部３０Ｂが該コンテキスト情報の取得要求を加工機２０へ送信したタイミングを含む期間の検知情報を、加工機２０のセンサ２５から取得することが好ましい。
【００５８】
受付部３０Ｍは、操作部３６からユーザの操作指示を受付ける。本実施の形態では、受付部３０Ｍは、ユーザ所望の日時を示す日時情報の指定を受付ける。ユーザ所望の日時情報は、現在より後の日時を示す情報である。ユーザ所望の日時情報は、例えば、加工機２０のメンテナンス予定の日時や、加工機２０に設けられた工具５９の交換予定の日時などである。
【００５９】
また、受付部３０Ｍは、加工機２０から取得するコンテキスト情報とは異なるコンテキスト情報の入力を受付けてもよい。例えば、受付部３０Ｍは、加工履歴情報を含むコンテキスト情報の入力を受付けてもよい。この場合、加工履歴情報は、上記と同様に、累積加工量（累積切削距離や累積切削時間）や累積加工量を特定可能な情報であればよい。また、受付部３０Ｍは、工具５９の仕様を示す情報（工具ＩＤ、刃の直径、刃数、材質、工具にコーティングが施されているか否か、型番、工具のイメージ画像など）や、加工対象の対象物の仕様を示す情報（材質、大きさなど）を更に含む、コンテキスト情報を受付けてもよい。
【００６０】
この場合、第１の取得部３０Ｄは、受付部３０Ｍからコンテキスト情報を取得してもよいし、受付部３０Ｍおよび加工機２０の双方から、コンテキスト情報を取得してもよい。なお、第１の取得部３０Ｄは、サーバ装置などの外部装置から、通信回線を介してコンテキスト情報を取得してもよい。
【００６１】
第１の特定部３０Ｆは、第１の取得部３０Ｄで取得されたコンテキスト情報から、加工機２０に設けられた工具５９が対象物を加工した累積加工量を特定する。
【００６２】
上述したように、加工機２０が診断装置１０へ送信するコンテキスト情報には、工作機械２３の動作状態情報と、加工履歴情報と、が含まれる。また、コンテキスト情報は、加工履歴情報として、累積加工量を含む場合と、累積加工量を特定可能な情報を含む場合と、がある。
【００６３】
第１の取得部３０Ｄが取得したコンテキスト情報に含まれる加工履歴情報が累積加工量（累積切削距離、累積切削時間）を示す場合、第１の特定部３０Ｆは、該コンテキスト情報から累積加工量（累積切削距離および累積切削時間の少なくとも一方）を抽出することで、累積加工量を特定する。
【００６４】
第１の取得部３０Ｄで取得したコンテキスト情報に含まれる加工履歴情報が、累積加工量を特定可能な情報である場合、第１の特定部３０Ｆは、該情報から累積加工量を特定すればよい。具体的には、コンテキスト情報が加工履歴情報として、１回の加工あたりの切削距離と加工回数、１回の加工あたりの切削時間と加工回数、１回の加工あたりの主軸回転数と加工回数、１回の加工当りの送り量と加工回数、および、加工対象の対象物のサイズと加工した対象物の数、の少なくとも１つを含むと仮定する。この場合、第１の特定部３０Ｆは、これらの情報から累積加工量を算出することによって、累積加工量を特定すればよい。
【００６５】
第２の特定部３０Ｇは、第２の取得部３０Ｅで取得した検知情報を用いて、工具５９の摩耗値を特定する。
【００６６】
まず、第２の特定部３０Ｇは、第１の取得部３０Ｄで取得した検知情報に応じた検知実測値に対応する摩耗実測値を、検知モデル３２Ａ（図５（Ａ）参照）から読取る。すなわち、第２の特定部３０Ｇは、第１の取得部３０Ｄで取得した検知情報の示す値（具体的には、音データの示す波形や、振動データを示す波形）に一致または最も類似する検知実測値を、検知モデル３２Ａから特定する。そして、第２の特定部３０Ｇは、特定した検知実測値に対応する摩耗実測値を、検知モデル３２Ａから読取る。
【００６７】
このとき、第１の取得部３０Ｄで取得したコンテキスト情報に、工具５９の工具ＩＤが含まれる場合には、第２の特定部３０Ｇは、該工具ＩＤと、第１の取得部３０Ｄで取得した検知情報に応じた検知実測値と、に対応する摩耗実測値を、検知モデル３２Ａから読取ればよい。
【００６８】
そして、第２の特定部３０Ｇは、読取った摩耗実測値の示す値を、工具５９の摩耗値として特定すればよい。
【００６９】
次に、演算部３０Ｈについて説明する。演算部３０Ｈは、第１の特定部３０Ｆで特定した累積加工量と、第２の特定部３０Ｇで特定した摩耗値と、に基づいて、工具５９の残り寿命を演算する。すなわち、演算部３０Ｈは、第１の取得部３０Ｄで取得したコンテキスト情報に含まれる、工具ＩＤによって識別される工具５９の、残り寿命を演算する。
【００７０】
演算部３０Ｈは、第１の演算部３０Ｉと、第２の演算部３０Ｊと、第３の演算部３０Ｋと、を含む。図６は、演算部３０Ｈによる演算の説明図である。
【００７１】
第１の演算部３０Ｉは、第２の特定部３０Ｇで特定した摩耗値と、加工量モデル３２Ｂと、を用いて、累積加工量実測値を演算する。
【００７２】
第１の演算部３０Ｉは、加工量モデル３２Ｂ（図５（Ｂ）参照）における、第２の特定部３０Ｇで特定した摩耗値と一致または摩耗値に最も近い値の摩耗実測値を特定する。そして、第１の演算部３０Ｉは、加工量モデル３２Ｂにおける、特定した摩耗実測値に対応する累積加工実測値を加工量モデル３２Ｂから読取ることで、累積加工実測値を演算する。
【００７３】
すなわち、第１の演算部３０Ｉは、検知情報から特定された摩耗値（図６中、摩耗値Ｍ参照）を用いて、図６における、累積加工量実測値Ａを特定する。
【００７４】
なお、第１の取得部３０Ｄで取得したコンテキスト情報に、工具５９の工具ＩＤが含まれる場合には、第１の演算部３０Ｉは、該工具ＩＤと、第２の特定部３０Ｇで特定した摩耗値と一致または摩耗値に最も近い値の摩耗実測値と、に対応する累積加工実測値を、加工量モデル３２Ｂから読取ればよい。
【００７５】
第２の演算部３０Ｊは、第１の特定部３０Ｆで特定した累積加工量を、第１の演算部３０Ｉで演算した累積加工量実測値で除算する。
【００７６】
例えば、コンテキスト情報に基づいて第１の特定部３０Ｆで特定した累積加工量が、図６中の累積加工量Ａ’であったとする。この場合、第２の演算部３０Ｊは、この累積加工量Ａ’を、累積加工量実測値Ａで除算する（累積加工量Ａ’／累積加工量実測値Ａ）。すなわち、第２の演算部３０Ｊは、第１の特定部３０Ｆでコンテキスト情報から特定された累積加工量Ａ’を、第２の特定部３０Ｇで検知情報から特定された摩耗値を用いて特定された累積加工量実測値Ａで除算する。
【００７７】
また、第２の演算部３０Ｊは、検知情報から第２の特定部３０Ｇで特定された摩耗値から、工具５９の理論上の寿命である理論工具寿命を演算する。工具寿命を、加工可能な累積加工量で表すと仮定すると、第２の演算部３０Ｊは、図６中の累積加工量実測値Ａから、理論工具寿命としての累積加工量Ｃを特定する。
【００７８】
例えば、第２の演算部３０Ｊは、検知モデル３２Ａ（図５（Ａ）参照）を、工具ＩＤによって識別される工具５９の理論上の寿命である理論工具寿命に対応づけて予め記憶部３２に記憶する。
【００７９】
そして、第２の演算部３０Ｊは、第２の特定部３０Ｇで検知情報から特定された摩耗値と一致する摩耗実測値と、該検知情報に一致する検知実測値と、を対応づけている工具ＩＤに対応する理論工具寿命を、記憶部３２から読取る。これによって、第２の演算部３０Ｊは、検知情報に基づいて理論工具寿命としての累積加工量Ｃ’を特定する。すなわち、第２の演算部３０Ｊは、検知情報に基づいて、理論工具寿命（図６では累積加工量Ｃ）を特定する。
【００８０】
なお、第２の演算部３０Ｊは、加工モデル３２Ｂ（図５（Ｂ）参照）から、理論工具寿命としての累積加工量Ｃを導出してもよい。この場合、第２の演算部３０Ｊは、まず、加工モデル３２Ｂにおける、コンテキスト情報に含まれる工具ＩＤに対応する摩耗実測値を読取る。そして、第２の演算部３０Ｊは、加工モデル３２Ｂにおける、読取った摩耗実測値の内の最大の摩耗実測値（すなわち、工具５９が全て摩耗したときの摩耗実測値）に対応する累積加工実測値を、累積加工量Ｃとして用いてもよい。
【００８１】
次に、第２の演算部３０Ｊは、累積加工量Ａ’を累積加工量実測値Ａで除算した除算値（除算結果、すなわち（累積加工量Ａ’／累積加工量実測値Ａ）に、特定した理論工具寿命としての累積加工量Ｃを乗算する（（累積加工量Ａ’／累積加工量実測値Ａ）×累積加工量Ｃ））。第２の演算部３０Ｊは、この乗算によって得た乗算値を、工具寿命として演算する。すなわち、下記式（１）が成り立つ。
【００８２】
（累積加工量Ａ’／累積加工量実測値Ａ）×累積加工量Ｃ＝工具寿命としての累積加工量Ｃ’・・式（１）
【００８３】
言い換えると、第２の演算部３０Ｊは、検知情報に基づいて求めた累積加工量実測値Ａと、コンテキスト情報に基づいて求めた累積加工量Ａ’と、を用いて、検知情報に基づいて求めた理論上の工具寿命としての累積加工量Ｃから、現実の工具５９の工具寿命である累積加工量Ｃ’を演算する。
【００８４】
そして、第３の演算部３０Ｋは、第２の演算部３０Ｊで演算した工具寿命（累積加工量Ｃ’）から、第１の特定部３０Ｆで特定した累積加工量Ａ’を減算した減算値を、工具５９の残り寿命として演算する。図６に示す例では、第３の演算部３０Ｋは、累積加工量Ｃ’から累積加工量Ａ’を減算した残り寿命Ｂを演算する。
【００８５】
表示制御部３０Ｌは、第２の特定部３０Ｇが特定した、工具５９の残り寿命（図６中の残り寿命Ｂ）を、表示部３４に表示する。
【００８６】
本実施の形態では、表示制御部３０Ｌは、工具５９の残り寿命を示す表示画面を作成し、表示部３４へ表示する。図７は、表示画面８０の一例を示す模式図である。
【００８７】
図７に示す例では、表示画面８０は、工具５９の残り寿命を示すグラフ８０Ａを含む。グラフ８０Ａは、横軸を累積切削距離とし、縦軸を摩耗値としたグラフである。
【００８８】
なお、グラフ８０Ａの形態は図７に示す例に限定されない。例えば、横軸を累積切削時間としてもよい。なお、図７中、点ａは、工具５９の現在の累積切削距離と、現在の摩耗値と、の交点に相当するプロットの一例である。現在の累積切削距離および現在の摩耗値とは、第１の特定部３０Ｆおよび第２の特定部３０Ｇの各々によって直前に特定された、累積切削距離および摩耗値の各々を示す。
【００８９】
また、グラフ８０Ａには、工具５９の残り寿命を示す矢印画像Ｅが表示されている。また、グラフ８０Ａには、点ａの位置から、工具５９の寿命までの、累積切削距離と摩耗値との関係の推移を予測した予測線ｂが表示される。
【００９０】
また、表示画面８０は、詳細情報８０Ｂを含む。詳細情報８０Ｂは、表示している残り寿命に対応する工具５９を示す情報や、現在の摩耗値、現在の累積切削距離、残り寿命（ここでは、残り切削距離）を含む。
【００９１】
詳細情報８０Ｂに含まれる、工具５９を示す情報は、工具５９の仕様を示す情報（工具ＩＤ、刃の直径、刃数、材質、工具にコーティングが施されているか否か、型番、工具のイメージ画像など）や、加工対象の対象物の仕様を示す情報（材質、大きさなど）の少なくとも１つを含むものであればよい。
【００９２】
表示制御部３０Ｌは、図７に示すような表示画面８０を作成し、表示部３４へ表示する。このため、ユーザは、表示部３４を視認することで、加工機２０に設けられている工具５９の残り寿命や、工具５９の現在の状況を示す情報を、容易に確認することができる。
【００９３】
なお、上述したように、受付部３０Ｍが、ユーザ所望の日時情報を受付ける場合がある。すなわち、受付部３０Ｍは、加工機２０のメンテナンス予定の日時や、加工機２０に設けられた工具５９の交換予定の日時などの、日時情報を受付ける場合がある。
【００９４】
この場合、表示制御部３０Ｌは、現在の日時と、受付けた日時情報に示される日時と、の差を示す情報（例えば、あと３０日、あと１０時間、など）を特定する。そして、表示制御部３０Ｌは、特定した情報を含む表示画面８０を、表示部３４へ表示してもよい。
【００９５】
この場合、図７に示すように、表示画面８０には、「メンテナンス予定日まであと２日」などの文字情報８０Ｃが表示される。
【００９６】
さらに、受付部３０Ｍは、工具５９の交換タイミングの判断に用いる摩耗値の閾値（以下、摩耗閾値と称する）を、受け付けてもよい。この場合、表示制御部３０Ｌは、現在の工具５９の摩耗閾値と、受付けた摩耗閾値との差が、予め定めた差以下となったときに、工具５９の交換を促す情報を表示部３４へ表示してもよい。また、表示制御部３０Ｌは、交換を促す情報を含む表示画面８０を、表示部３４へ表示してもよい。
【００９７】
また、受付部３０Ｍは、残り寿命の表示対象の工具５９の工具ＩＤの指定を受付けてもよい。この場合、表示制御部３０Ｌは、指定を受付けた工具ＩＤによって識別される工具５９に対応する残り寿命を示す表示画面を作成し、表示部３４へ表示すればよい。また、複数の工具ＩＤの指定を受付けた場合、表示制御部３０Ｌは、受付けた複数の工具ＩＤの各々に対応する残り寿命を示す表示画面を、対応する工具５９ごとに作成し、表示部３４へ表示してもよい。この場合、表示部３４には、例えば、工具５９の残り寿命を示す複数のグラフが表示される。
【００９８】
次に、診断装置１０で実行する情報処理の流れの一例を説明する。図８は、診断装置１０で実行する情報処理の流れの一例を示すフローチャートである。
【００９９】
まず、第１の取得部３０Ｄが、加工機２０からコンテキスト情報を取得する（ステップＳ１００）。次に、第２の取得部３０Ｅが、加工機２０のセンサ２５から検知情報を取得する（ステップＳ１０２）。
【０１００】
次に、第１の特定部３０Ｆが、ステップＳ１００で取得されたコンテキスト情報から、加工機２０に設けられた工具５９が対象物を加工した累積加工量を特定する（ステップＳ１０４）。次に、第２の特定部３０Ｇが、ステップＳ１０２で取得した検知情報を用いて、工具５９の摩耗値を特定する（ステップＳ１０６）。
【０１０１】
次に、第１の演算部３０Ｉが、ステップＳ１０６で特定した摩耗値と、加工量モデル３２Ｂと、を用いて、累積加工量実測値を演算する（ステップＳ１０８）。
【０１０２】
次に、第２の演算部３０Ｊが、ステップＳ１０４で特定した累積加工量を、ステップＳ
１０８で演算した累積加工量実測値で除算した除算値をステップＳ１０６で特定した摩耗値から特定した理論上の理論工具寿命に乗算した乗算値を、工具５９の工具寿命として演算する（ステップＳ１１０）。
【０１０３】
次に、第３の演算部３０Ｋが、ステップＳ１１０で演算した工具寿命（累積加工量）から、ステップＳ１０４で特定した累積加工量を減算した減算値を、工具５９の残り寿命として演算する（ステップＳ１１２）。
【０１０４】
次に、表示制御部３０Ｌが、残り寿命を演算した該工具５９を示す情報を読取る（ステップＳ１１４）。次に、表示制御部３０Ｌは、受付部３０Ｍが日時情報の指定を受付けたか否かを判断する（ステップＳ１１６）。
【０１０５】
日時情報の指定を受付けた場合（ステップＳ１１６：Ｙｅｓ）、ステップＳ１１８へ進む。ステップＳ１１８では、表示制御部３０Ｌは、現在の日時と、ステップＳ１１６で受付けた日時情報に示される日時と、の差（例えば、あと３０日、あと１０時間、など）を特定する（ステップＳ１１８）。
【０１０６】
次に、表示制御部３０Ｌは、工具５９の残り寿命の表示画面８０を生成する（ステップＳ１２０）。ステップＳ１２０では、表示制御部３０Ｌは、工具５９を示す情報と、ステップＳ１１８で特定した日時の差を示す情報と、を含む表示画面８０を生成する。そして、ステップＳ１２４へ進む。
【０１０７】
一方、ステップＳ１１６で否定判断すると（ステップＳ１１６：Ｎｏ）、ステップＳ１２２へ進む。ステップＳ１２２では、表示制御部３０Ｌは、工具５９の残り寿命の表示画面８０を生成する（ステップＳ１２２）。ステップＳ１２２では、表示制御部３０Ｌは、工具５９を示す情報を含む表示画面８０を生成する。そして、ステップＳ１２４へ進む。
【０１０８】
ステップＳ１２４では、ステップＳ１２０またはステップＳ１２２で生成した表示画面８０を、表示部３４へ表示する（ステップＳ１２４）。そして、本ルーチンを終了する。
【０１０９】
以上説明したように、本実施の形態の診断装置１０（情報処理装置）は、第１の取得部３０Ｄと、第２の取得部３０Ｅと、第１の特定部３０Ｆと、第２の特定部３０Ｇと、演算部３０Ｈと、を備える。第１の取得部３０Ｄは、対象物を加工する対象装置（加工機２０）の加工履歴に関するコンテキスト情報を取得する。第２の取得部３０Ｅは、対象装置（加工機２０）の動作状況に応じて変化する物理量の検知情報を取得する。第１の特定部３０Ｆは、取得したコンテキスト情報から、対象装置に設けられた工具５９が対象物を加工した累積加工量を特定する。第２の特定部３０Ｇは、工具５９の摩耗実測値と、未摩耗の状態から摩耗実測値まで摩耗した工具５９を備えた対象装置の物理量の検知実測値と、を対応づけた検知モデル３２Ａ（第１のモデル）における、取得した検知情報に応じた検知実測値に対応する摩耗実測値を、工具５９の摩耗値として特定する。演算部３０Ｈは、累積加工量と摩耗値とに基づいて、工具５９の残り寿命を演算する。
【０１１０】
このように、本実施の形態の診断装置１０は、コンテキスト情報と検知情報とを用いて、工具５９の残り寿命を特定する。このため、摩耗状態が変化しても駆動するモータの駆動電流に変化の生じない工具５９が残り寿命の特定対象であった場合も、精度良く工具５９の残り寿命を演算することができる。
【０１１１】
従って、本実施の形態の診断装置１０では、工具５９の残り寿命を精度良く求めることができる。
【０１１２】
また、演算部３０Ｈは、第１の演算部３０Ｉと、第２の演算部３０Ｊと、第３の演算部３０Ｋと、を含む。第１の演算部３０Ｉは、工具５９の摩耗実測値と、未摩耗の状態から摩耗実装値摩耗した工具５９が対象物を加工した累積加工量実測値と、を対応づけた加工量モデル３２Ｂ（第２のモデル）における、摩耗値に応じた摩耗実測値に対応する累積加工量実測値を演算する。第２の演算部３０Ｊは、累積加工量を累積加工量実測値で除算した除算値に、摩耗値から特定した理論上の理論工具寿命を乗算した乗算値を、工具５９の工具寿命として演算する。第３の演算部３０Ｋは、工具寿命から累積加工量を減算した減算値を、工具５９の残り寿命として演算する。
【０１１３】
検知情報は、工具５９の振動を示す振動データである。検知情報は、工具５９の振動により発生した音を示す、音データまたは音波データである。累積加工量は、累積切削距離または累積切削時間の少なくとも一方を示す。
【０１１４】
表示制御部３０Ｌは、工具５９の残り寿命を表示部３４に表示する。表示制御部３０Ｌは、工具５９の残り寿命と、工具５９を示す情報と、を表示部３４に表示する。
【０１１５】
受付部３０Ｍは、日付情報の指定を受付ける。表示制御部３０Ｌは、受付けた日時情報によって示される日時と現在の日時との差を表示部３４に表示する。
【０１１６】
また、本実施の形態の情報処理システム１０００の加工機２０（対象装置）は、物理量を検知するセンサ２５（検知部、センサ５７）と、検知された物理量を診断装置１０（情報処理装置）に送信する送信部（センサ２５）と、を備える。
【０１１７】
（第２の実施の形態）
本実施の形態では、加工機２０の動作が正常であるか異常であるかを判定し、異常であると判定されたときに、工具５９の残り寿命を求める形態を説明する。
【０１１８】
加工機２０の動作の異常には、加工機２０に設けられている何等かの部品（工具５９を含む）や駆動の不具合や、制御エラーや、加工機２０の工具５９の残り寿命が加工に影響を与える程度に短くなっている場合などが含まれる。そこで、本実施の形態では、加工機２０の動作が異常であると判定した場合に、工具５９の残り寿命を求める形態を説明する。
【０１１９】
図９は、本実施の形態の情報処理システム１０００Ａの機能構成の一例を示すブロック図である。情報処理システム１０００Ａは、加工機２０と、診断装置１０Ａと、を備える。加工機２０と診断装置１０Ａとは、データや信号授受可能に接続されている。なお、加工機２０は、第１の実施の形態と同様である。また、診断装置１０Ａのハードウェア構成は、図３に示す構成であり、診断装置１０と同様である。
【０１２０】
診断装置１０Ａの機能的構成について説明する。診断装置１０Ａは、制御部３１と、記憶部３３と、操作部３６と、表示部３４と、を備える。制御部３１と、記憶部３３、表示部３４、および操作部３６と、は、データや信号を授受可能に接続されている。表示部３４および操作部３６は、第１の実施の形態と同様である。
【０１２１】
記憶部３３は、各種情報を記憶する。記憶部３３は、例えば、図３のＨＤＤ６５で実現する。記憶部３３は、検知モデル（第１のモデル）３２Ａ、加工量モデル（第２のモデル）３２Ｂ、および診断モデル３２Ｃを予め記憶する。検知モデル３２Ａおよび加工量モデル３２Ｂは、第１の実施の形態と同様である。
【０１２２】
診断モデル３２Ｃは、コンテキスト情報ごとに生成される。診断モデル３２Ｃは、コンテキスト情報に含まれる動作条件情報に示される動作条件で加工機２０が正常に動作しているときに検知される、検知情報を規定したものである。
【０１２３】
制御部３１では、加工機２０が正常に動作しているときに検知された検知情報と、該検知情報の検知時に数値制御部２１から駆動部２４へ出力された制御データのもととなるコンテキスト情報と、を用いて、コンテキスト情報ごとに診断モデル３２Ｃを生成する。制御部３１は、学習により、診断モデル３２Ｃを生成する。学習方法、および、学習する診断モデル３２Ｃの形式は、どのような方法および形式であってもよい。例えば、ＧＭＭ（ガウス混合モデル）、および、ＨＭＭ（隠れマルコフモデル）などのモデルおよび対応するモデル学習方法を適用できる。記憶部３３には、コンテキスト情報に対応するモデルが対応づけて記憶される。
【０１２４】
制御部３１は、診断装置１０Ａを制御する。制御部３１は、通信制御部３０Ａ、第１の特定部３１Ｆ、第２の特定部３１Ｇ、演算部３０Ｈ、受付部３０Ｍ、表示制御部３０Ｌ、特徴抽出部３０Ｐ、および判定部３０Ｒを含む。
【０１２５】
通信制御部３０Ａ、送信部３０Ｂ、取得部３０Ｃ、第１の取得部３０Ｄ、第２の取得部３０Ｅ、第１の特定部３１Ｆ、第２の特定部３１Ｇ、演算部３０Ｈ、第１の演算部３０Ｉ、第２の演算部３０Ｊ、第３の演算部３０Ｋ、表示制御部３０Ｌ、受付部３０Ｍ、特徴抽出部３０Ｐ、および判定部３０Ｒ、の一部または全ては、例えば、ＣＰＵなどの処理装置にプログラムを実行させること（すなわちソフトウェア）により実現してもよいし、ＩＣなどのハードウェアにより実現してもよいし、併用して実現してもよい。
【０１２６】
なお、通信制御部３０Ａ（送信部３０Ｂ、取得部３０Ｃ、第１の取得部３０Ｄ、第２の取得部３０Ｅ）、演算部３０Ｈ（第１の演算部３０Ｉ、第２の演算部３０Ｊ、第３の演算部３０Ｋ）、受付部３０Ｍ、および表示制御部３０Ｌは、第１の実施の形態と同様である。
【０１２７】
特徴抽出部３０Ｐは、判定部３０Ｒの判定で用いる特徴情報（特徴量）を、第２の取得部３０Ｅで取得した検知情報から抽出する。特徴情報は、検知情報の特徴を示す情報であればどのような情報であってもよい。例えば検知情報がセンサ２５としてのマイクにより集音された音データである場合、特徴抽出部３０Ｐは、エネルギー、周波数スペクトル、および、ＭＦＣＣ（メル周波数ケプストラム係数）などの特徴量を抽出してもよい。
【０１２８】
判定部３０Ｒは、第１の取得部３０Ｄで取得したコンテキスト情報と、第２の取得部３０Ｅで取得した検知情報と、に基づいて、加工機２０の動作が正常であるか異常であるかを判定する。本実施の形態では、制御部３１は、第１の取得部３０Ｄで取得したコンテキスト情報に対応する診断モデル３２Ｃと、第２の取得部３０Ｅで取得した検知情報と、を用いて、加工機２０の動作が正常であるか異常であるかを判定する。
【０１２９】
例えば、判定部３０Ｒは、特徴抽出部３０Ｐに対して検知情報からの特徴情報の抽出を依頼する。制御部３０は、検知情報から抽出された特徴情報が正常であることの尤もらしさを示す尤度を、対応する診断モデル３２Ｃを用いて特定する。制御部３０は、尤度と、予め定められた閾値とを比較し、例えば尤度が閾値以上である場合に、加工機２０の動作は正常であると判定する。また、判定部３０Ｒは、尤度が閾値未満である場合に、加工機２０の動作は異常であると判定する。
【０１３０】
正常か否かの判定方法はこれに限られるものではなく、検知情報と診断モデル３２Ｃとを用いて、正常か否かを判定できる方法であればどのような方法であってもよい。例えば、尤度の値を直接閾値と比較する代わりに、尤度の変動を示す値と閾値とを比較してもよい。
【０１３１】
そして、判定部３０Ｒは、異常と判定した場合に、第１の特定部３１Ｆおよび第２の特定部３１Ｇの各々へ、異常の判定に用いたコンテキスト情報および検知情報の各々を出力する。
【０１３２】
第１の特定部３１Ｆは、判定部３０Ｒにおける異常との判定に用いたコンテキスト情報から、累積加工量を特定する。このため、本実施の形態では、第１の特定部３１Ｆは、加工機２０の動作が異常であると判定された場合に、コンテキスト情報から累積加工量を特定する。なお、累積加工量の特定に用いるコンテキスト情報が、判定部３０Ｒで異常との判定に用いたコンテキスト情報である以外は、第１の特定部３１Ｆによる累積加工量の特定方法は、第１の実施の形態の第１の特定部３０Ｆと同様である。
【０１３３】
第２の特定部３１Ｇは、判定部３０Ｒにおける異常との判定に用いた検知情報から、工具５９の摩耗値を特定する。このため、本実施の形態では、第２の特定部３１Ｇは、加工機２０の動作が異常であると判定された場合に、検知情報から摩耗値を特定する。なお、摩耗値の特定に用いる検知情報が、判定部３０Ｒで異常との判定に用いた検知情報である以外は、第１の特定部３１Ｆによる摩耗値の特定方法は、第１の実施の形態の第２の特定部３０Ｇと同様である。
【０１３４】
次に、診断装置１０Ａで実行する情報処理の流れの一例を説明する。図１０は、診断装置１０Ａで実行する情報処理の流れの一例を示すフローチャートである。
【０１３５】
まず、第１の取得部３０Ｄが、加工機２０からコンテキスト情報を取得する（ステップＳ２００）。次に、第２の取得部３０Ｅが、加工機２０のセンサ２５から検知情報を取得する（ステップＳ２０２）。
【０１３６】
次に、特徴抽出部３０Ｐが、ステップＳ２０２で取得した検知情報から、特徴情報を抽出する（ステップＳ２０４）。次に、判定部３０Ｒが、ステップＳ２００で取得したコンテキスト情報に対応する診断モデル３２Ｃと、ステップＳ２０２で取得した検知情報と、に基づいて、加工機２０の動作が正常であるか異常であるかを判定する（ステップＳ２０６）。
【０１３７】
そして、判定部３０Ｒが異常と判定した場合（ステップＳ２０８：Ｙｅｓ）、ステップＳ２１０へ進む。ステップＳ２１０では、第１の特定部３１Ｆが、ステップＳ２００で取得されたコンテキスト情報から、加工機２０に設けられた工具５９が対象物を加工した累積加工量を特定する（ステップＳ２１０）。次に、第２の特定部３１Ｇが、ステップＳ２０２で取得した検知情報を用いて、工具５９の摩耗値を特定する（ステップＳ２１２）。
【０１３８】
次に、第１の演算部３０Ｉが、ステップＳ２１２で特定した摩耗値と、加工量モデル３２Ｂと、を用いて、累積加工量実測値を演算する（ステップＳ２１４）。
【０１３９】
次に、第２の演算部３０Ｊが、ステップＳ２１０で特定した累積加工量を、ステップＳ２１４で演算した累積加工量実測値で除算した除算値をステップＳ２１２で特定した摩耗値から特定した理論上の理論工具寿命に乗算した乗算値を、工具５９の工具寿命として演算する（ステップＳ２１６）。
【０１４０】
次に、第３の演算部３０Ｋが、ステップＳ２１６で演算した工具寿命（累積加工量）から、ステップＳ２１０で特定した累積加工量を減算した減算値を、工具５９の残り寿命として演算する（ステップＳ２１８）。
【０１４１】
次に、表示制御部３０Ｌが、残り寿命を演算した該工具５９を示す情報を読取る（ステップＳ２２０）。次に、表示制御部３０Ｌは、受付部３０Ｍが日時情報の指定を受付けたか否かを判断する（ステップＳ２２２）。
【０１４２】
日時情報の指定を受付けた場合（ステップＳ２２２：Ｙｅｓ）、ステップＳ２２４へ進む。ステップＳ２２４では、表示制御部３０Ｌは、現在の日時と、ステップＳ２２２で受付けた日時情報に示される日時と、の差（例えば、あと３０日、あと１０時間、など）を特定する（ステップＳ２２４）。
【０１４３】
次に、表示制御部３０Ｌは、工具５９の残り寿命の表示画面８０を生成する（ステップＳ２２６）。ステップＳ２２６では、表示制御部３０Ｌは、工具５９を示す情報と、ステップＳ２２４で特定した日時の差を示す情報と、を含む表示画面８０を生成する。そして、ステップＳ２３０へ進む。
【０１４４】
一方、ステップＳ２２２で否定判断すると（ステップＳ２２２：Ｎｏ）、ステップＳ２２８へ進む。ステップＳ２２８では、表示制御部３０Ｌは、工具５９の残り寿命の表示画面８０を生成する（ステップＳ２２８）。ステップＳ２２８では、表示制御部３０Ｌは、工具５９を示す情報を含む表示画面８０を生成する。そして、ステップＳ２３０へ進む。
【０１４５】
ステップＳ２３０では、ステップＳ２２６またはステップＳ２２８で生成した表示画面８０を、表示部３４へ表示する（ステップＳ２３０）。そして、本ルーチンを終了する。
【０１４６】
以上説明したように、本実施の形態の診断装置１０Ａ（情報処理装置）は、判定部３０Ｒを備える。判定部３０Ｒは、検知情報とコンテキスト情報とに基づいて加工機２０（対象装置）の動作が正常であるか異常であるかを判定する。第１の特定部３１Ｆは、異常の判定に用いたコンテキスト情報から、加工機２０に設けられた工具５９が対象物を加工した累積加工量を特定する。第２の特定部３１Ｇは、加工量モデル３２Ｂにおける、異常の判定に用いた検知情報に応じた検知実測値に対応する摩耗実測値を、工具５９の摩耗値として特定する。そして、演算部３０Ｈは、該累積加工量と該摩耗値とに基づいて、工具５９の残り寿命を演算する。
【０１４７】
このように、本実施の形態の診断装置１０Ａでは、判定部３０Ｒによって加工機２０の動作が異常と判定されたときに、加工機２０の工具５９の残り寿命を演算する。このため、工具５９の残り寿命が加工機２０の動作に影響を与える程度になっていると推定されるタイミング、すなわち、加工機２０の動作異常と判定される程度に工具５９の残り寿命が短くなっていると推定されるタイミングで、工具５９の残り寿命を演算することができる。
【０１４８】
従って、本実施の形態の診断装置１０Ａは、上記第１の実施の形態の効果に加えて、工具５９の残り寿命を、適確なタイミングで、精度良く求めることができる。
【０１４９】
なお、上記実施の形態の診断装置１０および診断装置１０Ａで実行されるプログラムは、ＲＯＭ等に予め組み込まれて提供される。
【０１５０】
上記実施の形態の診断装置１０および診断装置１０Ａで実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録してコンピュータ・プログラム・プロダクトとして提供するように構成してもよい。
【０１５１】
さらに、上記実施の形態の診断装置１０及び診断装置１０Ａで実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上記実施の形態の診断装置１０および診断装置１０Ａで実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１５２】
上記実施の形態の診断装置１０および診断装置１０Ａで実行されるプログラムは、上述した各部（通信制御部、判定部など）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記ＲＯＭからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各部が主記憶装置上に生成されるようになっている。
【０１５３】
なお、上記には、実施の形態を説明したが、上記実施の形態は、例として提示したものであり、発明の範囲を限定することは意図していない。上記新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。上記実施の形態および変形例は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１５４】
１０、１０Ａ  診断装置
２０  加工機
３０Ｄ  第１の取得部
３０Ｅ  第２の取得部
３０Ｆ、３１Ｆ  第１の特定部
３０Ｇ、３１Ｇ  第２の特定部
３０Ｈ  演算部
３０Ｉ  第１の演算部
３０Ｊ  第２の演算部
３０Ｋ  第３の演算部
３０Ｍ  受付部
３０Ｌ  表示制御部
３０Ｒ  判定部
３４  表示部
１０００  情報処理システム
【先行技術文献】
【特許文献】
【０１５５】
【特許文献１】特許第４９２３４０９号公報
【図１】
0006673002.tif 000002
【図２】
0006673002.tif 000003
【図３】
0006673002.tif 000004
【図４】
0006673002.tif 000005
【図５】
0006673002.tif 000006
【図６】
0006673002.tif 000007
【図７】
0006673002.tif 000008
【図８】
0006673002.tif 000009
【図９】
0006673002.tif 000010
【図１０】
0006673002.tif 000011