(57)【要約】      （修正有）【課題】新たに産業機械を導入する際に、該産業機械と特性の近い個体のモデルを選択して動作の診断に用いる手法を提供する。【解決手段】診断装置１は、予め複数の機械のそれぞれの動作時に観測される物理量を機械学習して生成された複数の学習モデルを記憶する学習モデル記憶部１３０と、複数の機械とは異なる他の機械の動作時に観測された物理量を取得するデータ取得部３４と、取得された他の機械の動作に係る物理量と、学習モデルとを用いて、他の機械と、複数の機械のそれぞれとの特性差を計算する特性差計算部３８と、計算した特性差に基づいて、他の機械の動作の診断に用いる学習モデルを選択する学習モデル選択部１２５と、選択した学習モデルを用いて他の機械の動作を診断する診断部１２０と、を備える。【選択図】図２
2020204937.tif 000002
【特許請求の範囲】
【請求項１】
機械の動作を診断する診断装置であって、
予め複数の機械のそれぞれの動作時に観測される物理量を機械学習して生成された複数の学習モデルを記憶する学習モデル記憶部と、
前記複数の機械とは異なる他の機械の動作時に観測された物理量を取得するデータ取得部と、
前記データ取得部により取得された前記他の機械の動作に係る物理量と、前記学習モデル記憶部に記憶された学習モデルとを用いて、前記他の機械と、前記複数の機械のそれぞれとの特性差を計算する特性差計算部と、
前記特性差計算部が計算した前記特性差に基づいて、前記他の機械の動作の診断に用いる学習モデルを選択する学習モデル選択部と、
前記学習モデル選択部が選択した学習モデルを用いて前記他の機械の動作を診断する診断部と、
を備える診断装置。
【請求項２】
前記診断部は、前記他の機械の正常状態又は異常状態を診断する、
請求項１に記載の診断装置。
【請求項３】
前記データ取得部により取得された前記他の機械の動作に係る物理量に基づいて、前記学習モデル選択部が選択した学習モデルを前記他の機械の動作の診断に適するように調整する学習モデル調整部を更に備える、
請求項１に記載の診断装置。
【請求項４】
前記他の機械の動作モードを判断する動作モード判断部を更に有し、
前記学習モデル記憶部には、予め複数の機械のそれぞれについて、前記動作モード毎に動作時に観測される物理量を機械学習して生成された動作モード毎の複数の学習モデルが記憶されており、
前記特性差計算部は、前記動作モード判断部が判断した動作モードと同じ動作モードで生成された学習モデルを用いて特性差を計算する、
請求項１に記載の診断装置。
【請求項５】
機械の動作を診断する診断方法であって、
第１の機械の動作時に観測された物理量を取得するステップと、
前記取得するステップで取得された前記第１の機械の動作に係る物理量と、前記第１の機械とは異なる複数の機械のそれぞれの動作時に観測される物理量を機械学習して予め生成された複数の学習モデルとを用いて、前記第１の機械と、前記複数の機械のそれぞれとの特性差を計算するステップと、
前記計算するステップで計算した前記特性差に基づいて、前記第１の機械の動作の診断に用いる学習モデルを選択するステップと、
前記選択するステップで選択した学習モデルを用いて前記第１の機械の動作を診断するステップと、
を実行する診断方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、診断装置及び診断方法に関する。
【背景技術】
【０００２】
工作機械やロボット等の産業機械の状態を診断する方法として、各々の産業機械毎に所定の診断に用いるモデルを作成し、作成したモデルを用いて産業機械から取得されたデータに基づいた診断を行う方法が知られている（例えば、特許文献１等）。この方法は、産業機械の動作時に取得されるデータに基づいて構築されたモデルに各産業機械の個体毎のバラツキを反映できるため、当該産業機械の診断において精度を向上させることができるという利点がある。その一方で、精度良く産業機械の状態を診断することができるモデルを作成するためには、十分な量のデータ（学習データ）が必要であり、データの収集頻度によっては１〜２ヶ月以上かかる場合もある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−０３３５２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
産業機械が設置される工場等の現場では、産業機械が導入された直後から該産業機械を用いた作業が行われる。しかしながら、産業機械に関する診断のモデルが構築される前の段階、即ちモデルの構築に用いられる学習データが十分に取得される前の段階では、該産業機械の動作を診断することができない。このような課題に対して、新たに導入した産業機械と同型の他の産業機械のモデルが存在する場合には、該モデルを用いて新たに導入した産業機械の動作を診断するというやり方がある。しかしながら、同型の産業機械であっても、個体毎の特性のバラつきがあるため、他の産業機械のために構築されたモデルを流用したとしても、その産業機械と新たに導入した産業機械との特性差が大きいと、所定の精度を保ちながら産業機械の動作を診断することが難しい。
そこで、新たに産業機械を導入する際に、該産業機械と特性の近い個体のモデルを選択して動作の診断に用いる手法が望まれている。
【課題を解決するための手段】
【０００５】
本発明の一態様による診断装置では、予め複数の産業機械について学習モデルを作成して記憶部に保持し、作成した学習モデルを用いて産業機械間の特性の差を算出しておく。そして、新たに産業機械が導入された際に、該産業機械と最も特性差が小さい他の産業機械の学習モデルを該産業機械の動作の診断に用いるようにすることで、上記課題を解決する。
【０００６】
そして本発明の一態様は、機械の動作を診断する診断装置であって、予め複数の機械のそれぞれの動作時に観測される物理量を機械学習して生成された複数の学習モデルを記憶する学習モデル記憶部と、前記複数の機械とは異なる他の機械の動作時に観測された物理量を取得するデータ取得部と、前記データ取得部により取得された前記他の機械の動作に係る物理量と、前記学習モデル記憶部に記憶された学習モデルとを用いて、前記他の機械と、前記複数の機械のそれぞれとの特性差を計算する特性差計算部と、前記特性差計算部が計算した前記特性差に基づいて、前記他の機械の動作の診断に用いる学習モデルを選択する学習モデル選択部と、前記学習モデル選択部が選択した学習モデルを用いて前記他の機械の動作を診断する診断部と、を備える診断装置である。
【０００７】
本発明の他の態様は、機械の動作を診断する診断方法であって、第１の機械の動作時に観測された物理量を取得するステップと、前記取得するステップで取得された前記第１の機械の動作に係る物理量と、前記第１の機械とは異なる複数の機械のそれぞれの動作時に観測される物理量を機械学習して予め生成された複数の学習モデルとを用いて、前記第１の機械と、前記複数の機械のそれぞれとの特性差を計算するステップと、前記計算するステップで計算した前記特性差に基づいて、前記第１の機械の動作の診断に用いる学習モデルを選択するステップと、前記選択するステップで選択した学習モデルを用いて前記第１の機械の動作を診断するステップと、を実行する診断方法である。
【発明の効果】
【０００８】
本発明の一態様によれば、診断用に作成した学習モデルを用いることで、個体ごとの特性差を考慮しながら産業機械の動作状態を低コストに診断可能となる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態による診断装置の概略的なハードウェア構成図である。
【図２】第１実施形態による制御装置の概略的な機能ブロック図である。
【図３】学習モデル記憶部に記憶される学習モデルについて説明する図である。
【図４】工作機械２から取得されたデータに基づいて工作機械２の動作状態を診断する例を示す図である。
【図５】第２実施形態による診断装置の概略的な機能ブロック図である。
【図６】それぞれの工作機械のベンチマーク動作時に取得されたデータを示す図である。
【図７】平行移動行列の作成方法について説明する図である。
【図８】拡大縮小行列の作成方法について説明する図である。
【図９】第３実施形態による診断装置の概略的な機能ブロック図である。
【図１０】クラウドサーバ、フォグコンピュータ、エッジコンピュータを含む３階層構造のシステムの例を示す図である。
【図１１】コンピュータ上に実装した形態での診断装置の概略的なハードウェア構成図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態を図面と共に説明する。
図１は一実施形態による機械学習装置を備えた診断装置の要部を示す概略的なハードウェア構成図である。本実施形態の診断装置１は、例えば工作機械等の産業機械を制御する制御装置上に実装することができる。また、本実施形態の診断装置１は、産業機械を制御する制御装置と併設されたパソコンや、該制御装置と有線／無線のネットワークを介して接続された管理装置、エッジコンピュータ、フォグコンピュータ、クラウドサーバ等のコンピュータとして実装することができる。本実施形態では、診断装置１を、工作機械を制御する制御装置上に実装した場合の例を示す。また、本実施形態では、工作機械の異常を診断する診断装置１の例を示す。
【００１１】
本実施形態による診断装置１が備えるＣＰＵ１１は、診断装置１を全体的に制御するプロセッサである。ＣＰＵ１１は、ＲＯＭ１２に格納されたシステム・プログラムをバス２０を介して読み出し、該システム・プログラムに従って診断装置１の全体を制御する。ＲＡＭ１３には一時的な計算データや表示データ、図示しない入力部を介してオペレータが入力した各種データ等が一時的に格納される。
【００１２】
不揮発性メモリ１４は、例えば図示しないバッテリでバックアップされるなどして、診断装置１の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ１４には、インタフェース１５を介して外部機器７２から読み込まれたプログラムや表示器／ＭＤＩユニット７０を介して入力されたプログラム、診断装置１の各部や工作機械、センサ３等から取得された各種データ（例えば、工具に係る情報、主軸回転数、送り速度、切り込み量等の切削条件に係る情報、ワーク材質、ワーク形状等のワークに係る情報、各モータで消費される電力、センサ３で測定された振動、音、工作機械の各部の温度等）が記憶される。不揮発性メモリ１４に記憶されたプログラムや各種データは、実行時／利用時にはＲＡＭ１３に展開されても良い。また、ＲＯＭ１２には、公知の解析プログラムなどの各種のシステム・プログラム（後述する機械学習装置１００とのやりとりを制御するためのシステム・プログラムを含む）があらかじめ書き込まれている。
【００１３】
インタフェース１５は、診断装置１とアダプタ等の外部機器７２と接続するためのインタフェースである。外部機器７２側からはプログラムや各種パラメータ等が読み込まれる。また、診断装置１内で編集したプログラムや各種パラメータ等は、外部機器７２を介して外部記憶手段に記憶させることができる。ＰＭＣ（プログラマブル・マシン・コントローラ）１６は、診断装置１に内蔵されたシーケンス・プログラムで工作機械やロボット、該工作機械や該ロボットに取り付けられたセンサ３等のような装置との間でＩ／Ｏユニット１７を介して信号の入出力を行い制御する。
【００１４】
診断装置１は、工作機械によるワークの加工において用いられる加速度センサ（振動センサ）、音検知センサ、温度センサ等のセンサ３と接続される。センサ３は、工作機械の動作時に発生する振動や音、工作機械の各部の温度等を計測するために用いられる。
【００１５】
表示器／ＭＤＩユニット７０はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース１８は表示器／ＭＤＩユニット７０のキーボードからの指令，データを受けてＣＰＵ１１に渡す。インタフェース１９は各軸を手動で駆動させる際に用いる手動パルス発生器等を備えた操作盤７１に接続されている。
【００１６】
工作機械の各軸を制御するための軸制御回路３０はＣＰＵ１１からの軸の移動指令量を受けて、軸の指令をサーボアンプ４０に出力する。サーボアンプ４０はこの指令を受けて、工作機械が備える軸を移動させるサーボモータ５０を駆動する。軸のサーボモータ５０は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路３０にフィードバックし、位置・速度のフィードバック制御を行う。なお、図１のハードウェア構成図では軸制御回路３０、サーボアンプ４０、サーボモータ５０は１つずつしか示されていないが、実際には制御対象となる工作機械に備えられた軸の数（例えば、直線３軸を備えた工作機械であれば３つ、５軸加工機であれば５つ）だけ用意される。
【００１７】
スピンドル制御回路６０は、工作機械の主軸への主軸回転指令を受け、スピンドルアンプ６１にスピンドル速度信号を出力する。スピンドルアンプ６１はこのスピンドル速度信号を受けて、主軸のスピンドルモータ６２を指令された回転速度で回転させ、工具を駆動する。スピンドルモータ６２にはポジションコーダ６３が結合され、ポジションコーダ６３が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはＣＰＵ１１によって読み取られる。
【００１８】
インタフェース２１は、バス２０と機械学習装置１００とを接続するためのインタフェースである。機械学習装置１００は、機械学習装置１００全体を統御するプロセッサ１０１と、システム・プログラム等を記憶したＲＯＭ１０２、機械学習に係る各処理における一時的な記憶を行うためのＲＡＭ１０３、及び学習モデル等の記憶に用いられる不揮発性メモリ１０４を備える。機械学習装置１００は、インタフェース２１を介して診断装置１で取得可能な各情報（例えば、工具に係る情報、主軸回転数、送り速度、切り込み量等の切削条件に係る情報、ワーク材質、ワーク形状等のワークに係る情報、各モータで消費される電力、センサ３で測定された振動、音、工作機械の各部の温度等）を観測することができる。また、診断装置１は、機械学習装置１００から出力される情報を用いて、工作機械の制御、表示器／ＭＤＩユニット７０への表示、図示しないネットワークを介した他の装置に対する情報の送信等を行う。
【００１９】
図２は、第１実施形態による診断装置１と機械学習装置１００の概略的な機能ブロック図である。本実施形態の診断装置１は、機械学習装置１００が工作機械の動作状態を診断する場合に必要とされる構成を備えている（診断モード）。図２に示した各機能ブロックは、図１に示した診断装置１が備えるＣＰＵ１１、及び機械学習装置１００のプロセッサ１０１が、それぞれのシステム・プログラムを実行し、診断装置１及び機械学習装置１００の各部の動作を制御することにより実現される。
【００２０】
本実施形態の診断装置１は、制御部３２、データ取得部３４、前処理部３６、特性差計算部３８を備え、診断装置１が備える機械学習装置１００は、診断部１２０、学習モデル選択部１２５を備えている。また、図１で示した不揮発性メモリ１４上には、工作機械２、センサ３等から取得されたデータが記憶される取得データ記憶部５２が設けられており、図１で示した機械学習装置１００の不揮発性メモリ１０４上には、学習部１１０による機械学習により構築された学習モデルを記憶する学習モデル記憶部１３０が設けられている。
【００２１】
制御部３２は、図１に示した診断装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１によるＲＡＭ１３、不揮発性メモリ１４を用いた演算処理と、軸制御回路３０、スピンドル制御回路６０、及びＰＭＣ１６を介した工作機械２及びセンサ３の制御処理が行われることで実現される。制御部３２は、図１で示した不揮発性メモリ１４に記憶された制御用プログラム５４に基づいて、工作機械２の動作及びセンサ３による計測動作を制御する機能手段である。制御部３２は、制御用プログラム５４により工作機械２が備える各軸を駆動するサーボモータ５０（図１）、スピンドルモータ（図１）に対して制御周期毎に移動指令を出力する等といったように、工作機械２の各部の動作を制御するために必要とされる一般的な制御のための機能を備える。また、制御部３２は、センサ３に対して計測動作をするように指令を出力する。更に、制御部３２は、工作機械２及びセンサ３から、工作機械２の動作状態に係るデータを受け取り、データ取得部３４に対して出力する。制御部３２が、工作機械２及びセンサ３から取得し、データ取得部３４に出力するデータは、例えば、工具に係る情報、主軸回転数、送り速度、切り込み量等の切削条件に係る情報、ワーク材質、ワーク形状等のワークに係る情報、各モータで消費される電力、センサ３で測定された振動、音、工作機械の各部の温度等が挙げられる。
【００２２】
データ取得部３４は、図１に示した診断装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１がＲＡＭ１３、不揮発性メモリ１４を用いた演算処理を行うことで実現される。データ取得部３４は、制御部３２から入力された工作機械２の動作状態に係るデータ等を取得データ記憶部５２に対して記憶する機能手段である。データ取得部３４は、制御部３２から入力された工作機械２の動作状態に係るデータ等を関連付けて、取得データとして取得データ記憶部５２に記憶する。
【００２３】
前処理部３６は、図１に示した診断装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１がＲＡＭ１３、不揮発性メモリ１４を用いた演算処理を行うことで実現される。前処理部３６は、データ取得部３４が取得したデータに基づいて、機械学習装置１００による工作機械２の状態の診断に用いられるデータを作成する機能手段である。前処理部３６は、データ取得部３４が取得した（そして、取得データ記憶部５２に記憶された）データを機械学習装置１００において扱われる統一的な形式へと変換（数値化、サンプリング等）したデータを作成して、作成したデータを機械学習装置１００へ出力する。例えば、前処理部３６は、機械学習装置１００が工作機械２の動作状態の診断をする場合においては、該学習における所定の形式の状態データＳを作成する。
【００２４】
特性差計算部３８は、図１に示した診断装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１がＲＡＭ１３、不揮発性メモリ１４を用いた演算処理を行うことで実現される。特性差計算部３８は、データ取得部３４が取得したデータと、学習モデル記憶部１３０に記憶される複数の学習モデルとに基づいて、工作機械２と、それぞれの学習モデルに対応する工作機械との間の特性差を計算する機能手段である。特性差計算部３８は、例えば工作機械２に所定のベンチマーク動作を行わせるように制御部３２に対して指令し、該ベンチマーク動作を行った際に工作機械２及びセンサ３から取得したデータを用いて、工作機械２とそれぞれの学習モデルに対応する工作機械との間の特性差を計算する。
【００２５】
特性差計算部３８は、例えば、工作機械２及びセンサ３から取得されたデータに基づいて、学習モデル記憶部１３０に記憶されたそれぞれの学習モデルを用いた工作機械２の動作状態の診断を行うように診断部１２０に対して指令し、その診断結果に基づいて、工作機械２と、それぞれの学習モデルに対応する工作機械との間の特性差を計算するようにしても良い。また、特性差計算部３８は、例えば、工作機械２及びセンサ３から取得されたデータと、学習モデル記憶部１３０に記憶されたそれぞれの学習モデルを構成するデータとの間で所定の演算を行い、該演算の結果に基づいて、工作機械２と、それぞれの学習モデルに対応する工作機械との間の特性差を計算するようにしても良い。特性差計算部３８は、必要に応じて工作機械２及びセンサ３から取得されたデータを前処理部３６により前処理するようにしても良い。
【００２６】
診断部１２０は、図１に示した診断装置１が備えるプロセッサ１０１がＲＯＭ１０２から読み出したシステム・プログラムを実行し、主としてプロセッサ１０１がＲＡＭ１０３、不揮発性メモリ１０４を用いた演算処理を行うことで実現される。診断部１２０は、前処理部３６が作成した状態データＳに基づいて、学習モデル記憶部１３０に記憶された学習モデルを用いた工作機械２の状態の診断を行う機能手段である。本実施形態の診断部１２０は、例えば前処理部３６から入力された状態データＳと学習モデルとの関係を所定の演算により求めることで、工作機械２の動作状態を診断して出力する。診断部１２０が診断した結果は、例えば不揮発性メモリ１４に対して記憶したり、表示器／ＭＤＩユニット７０に対して表示出力される。また、診断部１２０は、特性差計算部３８からの指令された時、前処理部３６から入力された状態データＳと、学習モデル記憶部に記憶された複数の学習モデルのそれぞれとの間で、工作機械２の動作状態を診断する処理を実行する。この場合、診断部１２０が診断した結果は、特性差計算部３８に出力される。
【００２７】
学習モデル選択部１２５は、図１に示した診断装置１が備えるプロセッサ１０１がＲＯＭ１０２から読み出したシステム・プログラムを実行し、主としてプロセッサ１０１がＲＡＭ１０３、不揮発性メモリ１０４を用いた演算処理を行うことで実現される。本実施形態による学習モデル選択部１０５は、特性差計算部３８が計算した、工作機械２とそれぞれの学習モデルに対応する工作機械との間の特性差に基づいて、工作機械２の動作状態の診断に用いる学習モデルを選択する機能手段である。学習モデル選択部１２５は、工作機械２との特性差が最も小さい工作機械のための学習モデルを、工作機械２の動作状態の診断に用いる学習モデルとして選択する。選択された学習モデルは、診断部１２０により工作機械２の動作状態の診断に用いられる。
【００２８】
以下では、学習モデル記憶部１３０に記憶される学習モデル、診断部１２０による診断処理、特性差計算部３８による特性差の計算処理、及び学習モデル選択部１２５による学習モデルの選択処理の例を、図を用いて説明する。
図３は、本実施形態による診断装置１における学習モデル記憶部１３０に記憶される学習モデルの例を示している。図３の例では、工作機械の正常動作時に取得された物理量を示すデータの集合を学習モデルとしており、黒丸は工作機械ａの正常動作時に取得されたデータを、楕円はデータ集合の境界を示している。なお、図３では説明を簡単にするために、学習モデルを構成する物理量のデータとしてモータの速度及び工作機械に生じる振動を示しているが、実際にはより多くの物理量のデータを用いたデータ集合として学習モデルが構築される。
【００２９】
図４は、図３に例示される学習モデルを用いて、工作機械２から取得されたデータに基づいて工作機械２の動作状態を診断する例を示している。図３に例示される学習モデルを工作機械２の動作状態の診断に用いる場合、例えば診断部１２０は、工作機械２及びセンサ３から取得されたデータが、学習モデルとしてのデータ集合の中心位置からどちらの方向にどれだけ離れているのかを算出し、その算出値をスコアとして工作機械の異常度を算出する。この時、データ集合の中心位置からどちらの方向に離れているかにより算出するスコアの重みを変化させるようにしても良い。そして、算出された異常度が予め定めた所定の第１閾値を超えた場合に、工作機械の動作が異常であると診断する。
また、他の例では、診断部１２０は、工作機械２及びセンサ３から取得されたデータの位置における、学習モデルとしてのデータ集合のデータ密度を算出し、その算出値をスコアとして工作機械の正常度を算出するようにしても良い。このようにする場合、算出された正常度が、予め定めた所定の第２閾値よりも小さい場合に、工作機械の動作が異常であると診断すれば良い。
更に、他の異常度（正常度）の算出手法を採用しても良い。診断部１２０は、用意された学習モデルを用いて異常度（正常度）として所定の比較可能な値を算出可能なものであれば、どのような手法を工作機械２の動作状態の診断に用いるように構成しても良い。
【００３０】
図３，４に例示される学習モデル及び診断方法を用いる場合、特性差計算部３８は、工作機械２のベンチマーク動作時に取得されたデータに基づいて、学習モデル記憶部１３０に記憶された複数の学習モデルのそれぞれを用いて、工作機械２の動作状態を診断するように診断部１２０に対して指令する。そして、診断部１２０が算出した異常度（正常度）を示すスコアに基づいて、工作機械２と各学習モデルに対応する工作機械との特性差を計算する。特性差計算部３８は、診断部１２０が算出するスコア値をそのまま工作機械２と各学習モデルに対応する工作機械との特性差として用いるようにしても良い。また、特性差計算部３８は、ベンチマーク動作として複数の動作を工作機械２に行わせて複数のデータを取得し、それぞれのデータに基づく診断部１２０の診断結果として得られた複数のスコア値に対して統計的な演算（例えば、平均値の算出等）を行い、算出した統計値を工作機械２と各学習モデルに対応する工作機械との特性差として用いるようにしても良い。
【００３１】
そして、学習モデル選択部１２５は、特性差計算部３８が計算した工作機械２と各学習モデルに対応する工作機械との特性差に基づいて、特性差が最も小さい工作機械の学習モデルを、工作機械２の動作状態の診断に用いる学習モデルとして選択する。
【００３２】
上記した構成を備えた本実施形態による診断装置１は、工作機械２から取得されたデータと、予め構築済みの複数の学習モデルとを用いて、工作機械２とそれぞれの学習モデルに対応する工作機械との特性差を算出し、その特性差に基づいて工作機械２に最も近い工作機械のための学習モデルを選択し、工作機械２の動作状態の診断に用いる事ができるようになる。そのため、新たに工作機械２を導入した際に、該工作機械２のための学習モデルを構築する前の段階であっても、特性差の小さい工作機械のための学習モデルを用いて所定の精度で動作状態の診断を行うことができるようになり、学習モデル構築のコストを低減させることができる。
【００３３】
本実施形態による診断装置１の一変形例として、特性差計算部３８は、工作機械２及びセンサ３から取得されたデータに基づく診断部１２０による診断結果に代えて、所定のベンチマーク動作を行わせた場合に工作機械２から取得されたデータと、所定のベンチマーク動作を行わせた場合に各工作機械から取得されたデータとの差分の大きさに基づいて、工作機械２と、それぞれの学習モデルに対応する工作機械との間の特性差を計算するようにしても良い。この場合、予めそれぞれの工作機械において所定のベンチマーク動作を行わせ、その時に取得されたデータを学習モデルの一部として（または学習モデルと共に）記憶しておく必要があるが、この作業は、各工作機械のための学習モデルを生成する過程において事前に行っておけば良い。特性差計算部３８は、各々のデータ値の差分平均値を特性差を示す値として算出してもよく、また、各データに対して重みを持たせて特性差を算出するようにしても良い。
【００３４】
図５は、第２実施形態による診断装置１と機械学習装置１００の概略的な機能ブロック図である。本実施形態による診断装置１は、機械学習装置１００が工作機械の動作状態を診断する場合に必要とされる構成を備えている（診断モード）。図５に示した各機能ブロックは、図１に示した診断装置１が備えるＣＰＵ１１、及び機械学習装置１００のプロセッサ１０１が、それぞれのシステム・プログラムを実行し、診断装置１及び機械学習装置１００の各部の動作を制御することにより実現される。
【００３５】
本実施形態の診断装置１は、第１実施形態による診断装置１が備える各機能手段に加えて、学習モデル調整部１２８を備える。本実施形態による診断装置１が備える制御部３２、データ取得部３４、前処理部３６、特性差計算部３８、及び診断装置１が備える機械学習装置１００が備える、診断部１２０、学習モデル選択部１２５は、第１実施形態において説明した各機能手段と同様の機能を備える。
【００３６】
学習モデル調整部１２８は、図１に示した診断装置１が備えるプロセッサ１０１がＲＯＭ１０２から読み出したシステム・プログラムを実行し、主としてプロセッサ１０１がＲＡＭ１０３、不揮発性メモリ１０４を用いた演算処理を行うことで実現される。学習モデル調整部１２８は、学習モデル選択部１２５が選択した学習モデルを、工作機械２の動作状態を診断するために調整する機能手段である。学習モデル調整部１２８は、工作機械２の動作状態を示すデータに基づいて、学習モデル選択部１２５が選択した学習モデルを、工作機械２の動作状態の診断により適した学習モデルへと調整する。
【００３７】
図６は、工作機械２から取得されたデータに基づいて選択された学習モデルを調整する例を示している。図６において、黒丸は工作機械ａの正常動作時に取得されたデータを示しており、黒三角は所定のベンチマーク動作時に工作機械ａから取得されたデータを、白三角は所定のベンチマーク動作時に工作機械２から取得されたデータを、それぞれ示している。このようなデータが取得されている時、学習モデル選択部１２５が工作機械２の動作状態の診断用に工作機械ａの学習モデルを選択すると、学習モデル調整部１２８は、同様のベンチマーク動作時に工作機械ａから取得されたデータと、工作機械２から取得されたデータとを比較し、それぞれのデータ間の距離を最も小さくすることができるように、工作機械ａのデータ集合のデータ値を変換する変換行列を算出する。
【００３８】
学習モデル調整部１２８は、例えば各ベンチマーク動作時に取得されたデータの差分を最も小さくできるような平行移動行列を変換行列として算出するようにしても良い。この場合、例えば図７に例示されるように、各ベンチマーク動作時に工作機械ａから取得されたデータと工作機械２から取得されたデータとの差分をデータ軸毎に算出し、算出した差分の平均値分だけそれぞれのデータ軸毎に移動させる変換行列を算出すれば良い。図７の例では、ベンチマーク動作時に工作機械ａ，工作機械２のそれぞれから取得された振動のデータ値の差分ｄa2-1，ｄa2-2，ｄa2-3をそれぞれ求める。他のデータ軸についても同様にデータ値の差分平均を求め、各データ軸について算出した差分平均分だけ移動させる変換行列を算出すれば良い。
【００３９】
また、学習モデル調整部１２８は、例えば各ベンチマーク動作時に取得されたデータの差分を最も小さくできるような拡大縮小行列を変換行列として算出するようにしても良い。この場合、例えば図８に例示されるように、各ベンチマーク動作時に工作機械ａから取得されたデータの最大値及び最小値の差分（データ幅）と工作機械２から取得されたデータの最大値及び最小値の差分とをデータ軸毎に算出し、算出した差分の比率の分だけ拡大乃至縮小する変換行列を算出すれば良い。図８の例では、ベンチマーク動作時に工作機械ａから取得されたデータの最大値及び最小値の差分ｌaと工作機械２から取得されたデータの最大値及び最小値の差分ｌ2との比率ｌ2／ｌaを求める。他のデータ軸についても同様にデータ幅の比率を求め、各データ軸について算出した比率分だけ拡大乃至縮小させる変換行列を算出すれば良い。
【００４０】
変換行列は、平行移動行列と拡大縮小行列を組み合わせたものとしても良い。このようにする場合には、先に拡大縮小行列を求めた上で、該拡大縮小行列で学習モデルの調整を行い、調整を行った学習モデルに対して更に平行移動行列を求めるようにすれば良い。
【００４１】
そして、学習モデル調整部１２８は、算出された変換行列を用いて、工作機械ａの学習モデルを構成する各データの値を変換することで、該学習モデルを工作機械２用の学習モデルへと調整する。学習モデル調整部１２８の調整処理を行うために、予めそれぞれの工作機械において所定のベンチマーク動作を行わせ、その時に取得されたデータをベンチマーク時のデータとして記憶しておく必要がある。この作業は、各工作機械のための学習モデルを生成する過程において事前に行っておけば良く、学習モデル記憶部１３０に記憶される各学習モデルと関連付けて記憶しておけば良い。
【００４２】
上記した構成を備えた本実施形態による診断装置１は、工作機械２から取得されたデータと、予め構築済みの複数の学習モデルとを用いて、工作機械２とそれぞれの学習モデルに対応する工作機械との特性差を算出し、その特性差に基づいて工作機械２に最も近い工作機械のための学習モデルを選択する。そして、選択した学習モデルを、工作機械２の動作状態の診断により適したものへと調整する。そのため、新たに工作機械２を導入した際に、該工作機械２のための学習モデルを構築する前の段階であっても、特性差の小さい工作機械のための学習モデルを用いて所定の精度で動作状態の診断を行うことができるようになる。
【００４３】
図９は、第３実施形態による診断装置１と機械学習装置１００の概略的な機能ブロック図である。本実施形態による診断装置１は、機械学習装置１００が工作機械の動作状態を診断する場合に必要とされる構成を備えている（診断モード）。図９に示した各機能ブロックは、図１に示した診断装置１が備えるＣＰＵ１１、及び機械学習装置１００のプロセッサ１０１が、それぞれのシステム・プログラムを実行し、診断装置１及び機械学習装置１００の各部の動作を制御することにより実現される。
【００４４】
本実施形態の診断装置１は、第１実施形態による診断装置１が備える各機能手段に加えて、動作モード判断部３９を備える。本実施形態による診断装置１が備える制御部３２、データ取得部３４、前処理部３６、及び診断装置１が備える機械学習装置１００が備える、診断部１２０、学習モデル選択部１２５は、第１実施形態において説明した各機能手段と同様の機能を備える。また、学習モデル記憶部１３０には、予め各工作機械の動作モード毎に構築された学習モデルが記憶されている。
【００４５】
動作モード判断部３９は、図１に示した診断装置１が備えるＣＰＵ１１がＲＯＭ１２から読み出したシステム・プログラムを実行し、主としてＣＰＵ１１がＲＡＭ１３、不揮発性メモリ１４を用いた演算処理を行うことで実現される。動作モード判断部３９は、制御部３２から取得された工作機械２及びセンサ３の動作状態に係るデータに基づいて、工作機械２の動作モードを判断し、学習モデル選択部１２５が選択した学習モデルを、工作機械２の動作状態を診断するために調整する機能手段である。本実施形態において、動作モードは例えば工作機械２の用途に応じた動作傾向を示す。動作モードの例として、例えば高速加工モードや精密加工モード等が挙げられる。また、動作モードは、工作機械２が動作する環境の傾向を示すものであっても良い。この場合、動作モードの例として、例えば高温環境や高振動環境等が挙げられる。動作モード判断部３９は、不揮発性メモリ１４の設定領域に設定された工作機械２の制御に係る設定や、制御用プログラム５４の指令により設定された工作機械２の制御に係る設定、センサ３等により検出される工作機械２の動作環境に係る検出値等に基づいて工作機械２の動作モードを決定し、決定された動作モードを特性差計算部３８へと出力する。
【００４６】
本実施形態による特性差計算部３８は、動作モード判断部３９から入力された動作モードに応じて、学習モデル記憶部１３０に記憶された複数の学習モデルの中から、当該動作モードにおいて作成された学習モデルのみを特性差の計算対象とする。本実施形態による特性差計算部３８は、動作モードを考慮する点を除けば、第１実施形態による診断装置１が備える特性差計算部３８と同様の機能を備える。
【００４７】
上記した構成を備えた本実施形態による診断装置１は、所定の動作モードにおいて工作機械２から取得されたデータと、予め構築済みの複数の該動作モード毎の学習モデルとを用いて、工作機械２とそれぞれの学習モデルに対応する工作機械との特性差を算出し、その特性差に基づいて工作機械２に最も近い工作機械のための学習モデルを選択する。そのため、新たに工作機械２を導入した際に、該工作機械２の所定の動作モードにおける学習モデルを構築する前の段階であっても、特性差の小さい工作機械のための所定の動作モード学習モデルを用いて所定の精度で動作状態の診断を行うことができるようになる。
【００４８】
以下の第４〜８実施形態では、第１〜３実施形態による診断装置１が備える構成が、クラウドサーバやホストコンピュータ、フォグコンピュータ、エッジコンピュータ（ロボットコントローラ、制御装置等）を含む複数の装置上に分散して配置されるシステムとして実装されている実施形態について説明する。図１０に例示されるように、以下の第４〜８実施形態では、複数の装置のそれぞれがネットワークに接続された状態でクラウドサーバ６等を含む層、フォグコンピュータ７等を含む層、エッジコンピュータ８（セル９に含まれるロボットコントローラ、制御装置等）等を含む層の、３つの階層に論理的に分けて構成されているシステムを想定する。この様なシステムに於いて、本発明による一態様による診断装置１は、クラウドサーバ６、フォグコンピュータ７、エッジコンピュータ８のいずれの上にも実装することが可能である。図１０に例示されるシステムにおいて、セル９は各地の工場にそれぞれ複数設けられ、それぞれのセル９を所定の単位（工場単位、同じ製造業者の複数の工場単位等）で上位層のフォグコンピュータ７が管理する。そして、これらフォグコンピュータ７が収集、解析したデータを、更に上位層のクラウドサーバ６で収集、解析等を行い、その結果として得られた情報を各々のエッジコンピュータ８における制御等に活用することができる。
【００４９】
図１１はクラウドサーバ、フォグコンピュータ等のコンピュータ上に診断装置１’が実装された場合の概略的なハードウェア構成図である。
本実施形態によるコンピュータ上に実装された診断装置１’が備えるＣＰＵ３１１は、診断装置１’を全体的に制御するプロセッサである。ＣＰＵ３１１は、ＲＯＭ３１２に格納されたシステム・プログラムをバス３２０を介して読み出し、該システム・プログラムに従って診断装置１’の全体を制御する。ＲＡＭ３１３には一時的な計算データや表示データ、図示しない入力部を介してオペレータが入力した各種データ等が一時的に格納される。
【００５０】
不揮発性メモリ３１４は、例えば図示しないバッテリでバックアップされるなどして、診断装置１’の電源がオフされても記憶状態が保持されるメモリとして構成される。不揮発性メモリ３１４には、入力装置３７１を介して入力されたプログラム、診断装置１’の各部やネットワーク５を介して工作機械２’（及びセンサ３）等から取得された各種データが記憶されている。不揮発性メモリ３１４に記憶されたプログラムや各種データは、実行時／利用時にはＲＡＭ３１３に展開されても良い。また、ＲＯＭ３１２には、公知の解析プログラムなどの各種のシステム・プログラム（後述する機械学習装置１００とのやりとりを制御するためのシステム・プログラムを含む）があらかじめ書き込まれている。
【００５１】
診断装置１’は、インタフェース３１９を介して有線／無線のネットワーク５と接続されている。ネットワーク５には、少なくとも１つの工作機械２’（制御装置を備えた工作機械）や、他の診断装置１、エッジコンピュータ８、フォグコンピュータ７、クラウドサーバ６等が接続され、診断装置１’との間で相互にデータのやり取りを行っている。
【００５２】
表示装置３７０には、メモリ上に読み込まれた各データ、プログラム等が実行された結果として得られたデータ等がインタフェース３１７を介して出力されて表示される。また、キーボードやポインティングデバイス等から構成される入力装置３７１は、作業者による操作に基づく指令，データ等をインタフェース３１８を介してＣＰＵ３１１に渡す。
【００５３】
インタフェース３２１は、ＣＰＵ３１１と機械学習装置１００とを接続するためのインタフェースである。機械学習装置１００については、図１で説明したものと同様の構成を備える。
【００５４】
この様に、クラウドサーバ、フォグコンピュータ等のコンピュータ上に診断装置１’を実装する場合、工作機械２’及びセンサ３との間の情報のやり取りが、ネットワーク５を介して行われる点を除けば、診断装置１’が備える機能については第１〜第３実施形態で説明したものと同様のものとなる。この時、工作機械２’は制御装置を備えているため、診断装置１’が備える制御部３２は、工作機械２’の制御は行わず、工作機械２’が備える制御装置から該工作機械２’の動作状態に係る情報の取得を行う。また、診断装置１’が備える制御部３２は、工作機械２’が備える制御装置を介したセンサ３の間接的な制御を行うと共に、工作機械２’が備える制御装置を介したセンサ３による計測値の取得を行う。
【００５５】
そして、診断装置１’は、ネットワークを介して接続される工作機械２’の動作状態を診断するのに適した学習モデルを、予め学習モデル記憶部１３０に記憶された複数の学習モデルの中から選択し、該学習モデルを用いた工作機械２’の動作状態の診断を行う。診断装置１’は、複数の工作機械２’の動作状態の診断をネットワークを介して行うことが可能なため、各工作機械２’を制御する制御装置に対して機械学習装置１００を設ける必要がないため、各工作機械２’についてコストを下げる事が可能となる。
【００５６】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、上記した実施形態では診断装置１と機械学習装置１００が異なるＣＰＵ（プロセッサ）を有する装置として説明しているが、機械学習装置１００は診断装置１が備えるＣＰＵ１１と、ＲＯＭ１２に記憶されるシステム・プログラムにより実現するようにしても良い。
【００５７】
また、上記した実施形態では、機械学習装置１００の上に複数の学習モデルを記憶する学習モデル記憶部１３０を設けた実施例を示したが、例えば学習モデル記憶部１３０を診断装置１，１’上に設けずに、上位のフォグコンピュータ７やクラウドサーバ６上に設けて、複数の診断装置１，１’で共有するように構成しても良い。このようにすることで、製造業者のホストコンピュータや、工作機械の製造メーカが運営するクラウドサーバ上で学習モデルを管理し、診断装置１，１’を導入する業者が共有して活用することで、システム全体の運用コストを下げることも可能となる。
【００５８】
更に、上記した実施形態では工作機械の正常／異常の状態を診断する診断装置の例を示したが、本願発明はこれに限定されず、産業機械に関して所定の診断を行う実施例に適宜適用することができる。例えば、産業機械としては工作機械以外にも、放電加工機、射出成形機、搬送ロボット、塗装ロボット等への適用が可能である。また、例えば産業機械の熱変位状態の診断等への応用も可能であり、この場合、例えばベンチマーク動作として所定の動作を行わせた場合の各部の熱変位状態を状態データＳとして取得し、学習モデルとして記憶されている各産業機械をベンチマーク動作させた場合における状態データとの差位に基づいて特性差を算出するようにすれば良い。
【符号の説明】
【００５９】
１，１’  診断装置
２  工作機械
３  センサ
５  ネットワーク
６  クラウドサーバ
７  フォグコンピュータ
８  エッジコンピュータ
９  セル
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  不揮発性メモリ
１５，１８，１９  インタフェース
１７  Ｉ／Ｏユニット
２０  バス
２１  インタフェース
３０  軸制御回路
３２  制御部
３４  データ取得部
３６  前処理部
３８  特性差計算部
３９  動作モード判断部
４０  サーボアンプ
５０  サーボモータ
６０  スピンドル制御回路
６１  スピンドルアンプ
６２  スピンドルモータ
６３  ポジションコーダ
５２  取得データ記憶部
５４  制御用プログラム
７０  表示器／ＭＤＩユニット
１００  機械学習装置
１０１  プロセッサ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  不揮発性メモリ
１０５  学習モデル選択部
１２０  診断部
１２５  学習モデル選択部
１２８  学習モデル調整部
１３０  学習モデル記憶部
【図１】
2020204937.tif 000003
【図２】
2020204937.tif 000004
【図３】
2020204937.tif 000005
【図４】
2020204937.tif 000006
【図５】
2020204937.tif 000007
【図６】
2020204937.tif 000008
【図７】
2020204937.tif 000009
【図８】
2020204937.tif 000010
【図９】
2020204937.tif 000011
【図１０】
2020204937.tif 000012
【図１１】
2020204937.tif 000013