JP6949284B1 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
JP6949284B1
JP6949284B1 JP2021531611A JP2021531611A JP6949284B1 JP 6949284 B1 JP6949284 B1 JP 6949284B1 JP 2021531611 A JP2021531611 A JP 2021531611A JP 2021531611 A JP2021531611 A JP 2021531611A JP 6949284 B1 JP6949284 B1 JP 6949284B1
Authority
JP
Japan
Prior art keywords
torque
machine learning
control device
numerical control
motor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021531611A
Other languages
English (en)
Other versions
JPWO2022162740A1 (ja
Inventor
健二 西脇
健二 西脇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6949284B1 publication Critical patent/JP6949284B1/ja
Publication of JPWO2022162740A1 publication Critical patent/JPWO2022162740A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/33Director till display
    • G05B2219/33034Online learning, training
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37355Cutting, milling, machining force
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40293Gantry, portal
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45094Milling robot

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Evolutionary Computation (AREA)
  • Manufacturing & Machinery (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Numerical Control (AREA)

Abstract

数値制御装置(100)は、モータの状態を観測した結果を示すモータ状態信号を出力するモータ状態観測部(1)と、工作機械が切削を行っているか否かを示す切削状態信号を出力する切削状態観測部(5)と、モータ状態信号および工作機械の物理モデルパラメータに基づき、モータのトルクの推定値である第一の推定トルクと第一の推定トルクの成分である物理状態変数とを出力する第一のトルク推定部(21)と、第一の推定トルクと物理状態変数とモータ状態信号との少なくとも一つ、および切削状態信号から特徴量を生成する特徴量生成部(3)と、特徴量および機械学習モデルパラメータから機械学習補正量を算出し、算出した機械学習補正量がモータ状態信号に含まれる実トルクと第一の推定トルクとの差分に近づくように機械学習モデルパラメータを学習し、学習した機械学習モデルパラメータを記憶する機械学習モデル計算部(4)と、を備える。

Description

本開示は、制御対象を模したモデルを生成する数値制御装置に関する。
工作機械を制御対象とする数値制御装置に対して、高速かつ高精度な制御手法および故障検知手法が求められている。これらの性能向上には、制御対象を正確に模したモデルが必要不可欠である。しかしながら、実際の数値制御装置の動作においては、制御対象における配線、主軸、工具またはワークなどの取り付けによる質量、重心位置、慣性テンソルおよび伸縮カバーの摩擦などといった物理モデルパラメータの誤差が無視できず、また、振動、摩擦などモータ速度に対して非線形な成分も多く含まれる。そのため、予めこれらを高精度に再現可能なモデルを与えることは困難であった。
近年、このようなモデルにおける力およびトルクの推定誤差を抑制するための制御方式が提案されている。例えば、特許文献1には、電動機の制御装置が、M系列または正弦波状の指令を取得し、トルク推定誤差が最小となるように、慣性テンソル、摩擦係数、およびばね定数をサンプリング周期毎に修正することにより、物理モデルパラメータの初期値に含まれる誤差を動作中に修正する技術が開示されている。
特開2013−128387号公報
しかしながら、特許文献1に記載の技術では、電動機の制御装置の運動が、慣性テンソル、摩擦、およびばねからのトルクでモデル化できると仮定されており、モデルとして考慮されていない外乱が表現できない、という問題があった。また、摩擦のモデルについても簡略化されているため、ストライベック効果、ヒステリシスなどといった非線形性の強い複雑な現象に対する表現能力を持たない、という問題があった。
本開示は、上記に鑑みてなされたものであって、非線形性が強い現象に対する高精度なトルク推定を可能とする数値制御装置を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本開示にかかる数値制御装置は、ワークを切削する工作機械のモータを制御する数値制御装置である。本開示にかかる数値制御装置は、モータの状態を観測した結果を示すモータ状態信号を出力するモータ状態観測部と、工作機械が切削を行っているか否かを示す切削状態信号を出力する切削状態観測部と、モータ状態信号および工作機械の物理モデルパラメータに基づき、モータのトルクの推定値である第一の推定トルクと第一の推定トルクの成分である物理状態変数とを出力する第一のトルク推定部と、第一の推定トルクと物理状態変数とモータ状態信号との少なくとも一つ、および切削状態信号から特徴量を生成し出力する特徴量生成部と、特徴量および機械学習モデルパラメータから機械学習補正量を算出し、算出した機械学習補正量がモータ状態信号に含まれる実トルクと第一の推定トルクとの差分に近づくように機械学習モデルパラメータを学習し、学習した機械学習モデルパラメータを記憶する機械学習モデル計算部と、を備える。
本開示に係る数値制御装置は、非線形性が強い現象に対する高精度なトルク推定が可能となる、という効果を奏する。
実施の形態1に係る数値制御装置の構成例を示すブロック図 実施の形態1に係る数値制御装置による制御対象である対象機械を示す模式図 実施の形態1に係る物理モデル記憶部で推定される物理モデルパラメータである非線形摩擦モデルの例を示す図 実施の形態1に係る特徴量生成部および機械学習モデル計算部の構成例を示すブロック図 実施の形態1に係る特徴量生成部および機械学習モデル計算部の構成において自己回帰項を示す図 実施の形態1に係る数値制御装置における物理モデルパラメータおよび機械学習モデルパラメータの学習の流れを示すフローチャート 実施の形態1に係る数値制御装置の制御対象である対象機械の動作を表すモータ速度、数値制御装置で推定される第一の推定トルク、および数値制御装置で推定される第二の推定トルクを示す図 実施の形態1における数値制御装置による異常検知について説明するための図 実施の形態2における数値制御装置による切削負荷の検知について説明するための図 実施の形態3における数値制御装置による工具の摩耗または欠損の検知について説明するための図 実施の形態1から3に係る数値制御装置が備える処理回路をプロセッサおよびメモリで構成する場合の例を示す図 実施の形態1から3に係る数値制御装置が備える処理回路を専用のハードウェアで構成する場合の例を示す図
以下に、実施の形態に係る数値制御装置を図面に基づいて詳細に説明する。
実施の形態1.
図1は、実施の形態1に係る数値制御装置100の構成例を示すブロック図である。数値制御装置100は、工作機械である対象機械10のモータを制御する。数値制御装置100は、モータ状態観測部1と、物理モデル計算部2と、特徴量生成部3と、機械学習モデル計算部4と、切削状態観測部5と、を備える。物理モデル計算部2は、第一のトルク推定部21と、物理モデル記憶部22と、を備える。機械学習モデル計算部4は、第二のトルク推定部41と、機械学習モデル記憶部42と、を備える。
数値制御装置100による制御対象である対象機械10について説明する。図2は、実施の形態1に係る数値制御装置100による制御対象である対象機械10を示す模式図である。対象機械10は、ワーク15に対して工具14を相対的に移動させることによってワーク15の切削加工を行う工作機械である。ここでは、対象機械10として、マシニングセンタを例にして説明する。
対象機械10は、コラム11と、主軸ヘッド12と、テーブル13と、工具14と、から構成されている。工具14は、主軸モータが発生する駆動力を受けて回転する。コラム11および主軸ヘッド12、またはテーブル13は、サーボモータが発生する駆動力を受けて直進駆動する。主軸モータおよびサーボモータの図示は省略する。数値制御装置100は、ワーク15に対する工具14の位置および向きを制御する。
実施の形態1では、対象機械10として、移動軸が3軸であるマシニングセンタを例示したが、対象機械10である工作機械は3軸のマシニングセンタに限定されない。数値制御装置100は、モータにより駆動する工作機械に広く適用することができる。対象機械10である工作機械の例としては、さらに、5軸マシニングセンタ、タッピングセンタ、旋盤、および複合旋盤などの工作機械、実装機などを挙げることができる。
モータ状態観測部1は、対象機械10のモータの状態を観測し、観測結果を示すモータ状態信号を出力する。具体的には、モータ状態観測部1は、移動軸である第1軸、第2軸および第3軸と主軸とに対応する各アクチュエータの位置、速度、加速度の少なくとも一つと、主軸モータおよびサーボモータの各トルクである実トルクとをモータ状態信号として出力する。
実トルクとしては、センサによってモータから直接計測された値を用いてもよく、アクチュエータから取得された入力電流値の換算値を用いてもよい。モータ状態信号は、各アクチュエータの位置、速度、加速度、および実トルクの信号のみに限定されない。モータ状態信号は、対象機械10の各軸または規定された個所に設けられた内界センサもしくは外界センサのセンシングデータ、例えば、各軸のアクチュエータの温度データ、赤外線センサ、超音波センサなどのセンサから得られた距離データ、ビジョンセンサから得られた動画像データ、およびそれらを画像処理して得られた特徴量データ、などの値を含んでもよい。
第一のトルク推定部21は、モータ状態観測部1の出力であるモータ状態信号と、物理モデル記憶部22の出力である後述する物理モデルパラメータとを入力として、実トルクの推定値である第一の推定トルクを運動方程式により算出する。すなわち、第一のトルク推定部21は、モータ状態信号および対象機械10の物理モデルパラメータに基づき、運動方程式を用いてモータのトルクの推定値である第一の推定トルクを推定する。第一のトルク推定部21は、第一の推定トルクと、第一の推定トルクの成分である物理状態変数とを出力する。
物理状態変数には、慣性項、遠心力の項、コリオリ力の項、重力項だけでなく、クーロン摩擦の項、粘性摩擦の項、アームの振動の項、弾性たわみの項に加えて、後述する非線形摩擦モデルのような、第一の推定トルクを算出する上で何らかの物理現象を模擬して導入された関数の項が含まれてもよい。物理状態変数に摩擦推定値を含むことにより、数値制御装置100は、摩擦モデルの不確かさおよび実トルクの摩擦成分に対する摩擦推定値の誤差を、機械学習モデル計算部4で補正することを可能にする。
運動方程式において用いられるモータ状態信号および物理モデルパラメータは、それぞれ、各アクチュエータの位置、速度、加速度と、各リンクの質量、重心位置、慣性テンソルとに対応している。すなわち、物理モデルパラメータには、対象機械10のリンク機構における質量、対象機械10のリンク機構における重心位置、および対象機械10のリンク機構における慣性テンソルが含まれる。これにより、数値制御装置100は、対象機械10の既知の機構に関する情報を利用する逆動力学において、係数の質量、重心位置、慣性テンソルを物理モデルパラメータとして学習し実トルクに対する第一の推定トルクの推定精度を向上させることができる。また、数値制御装置100は、機械学習モデル計算部4における補正値が相対的に小さくなり、第二の推定トルクの汎化性能を向上させることができる。ここで、運動方程式としては、例えば、ニュートンオイラー法、ラグランジュの運動方程式などを用いることができる。
第一のトルク推定部21は、モータ状態信号により求まるモータの速度を入力として、トルクの摩擦成分の推定値を出力する連続かつ滑らかな摩擦モデルを含む運動方程式を用いる。後述するように機械学習モデル計算部4はニューラルネットワークを用いるが、ニューラルネットワークが計算できるのは入力に対して連続な関数であるため、特徴量および特徴量生成部3への入力は連続であることが望ましい。そのため、数値制御装置100は、速度ゼロ付近も含めて連続となる摩擦モデルを定義することで、物理モデル記憶部22内で学習しきれない摩擦成分についてもニューラルネットワークを用いて学習および補正することが可能となる。
物理モデル記憶部22は、対象機械10の状態が非切削状態であるときにおいて対象機械10を一定期間動作させた際のモータ状態信号を教師データとし、モータ状態信号に含まれる実トルクと第一の推定トルクとの差分を低減するよう物理モデルパラメータを学習する。物理モデル記憶部22は、学習した物理モデルパラメータを記憶する。数値制御装置100は、物理モデルパラメータを学習することで、センサ、配線類の取り付け、加工誤差、組み立て誤差などによる物性の変化を補正し、実トルクの推定精度を向上させることができる。また、一般的に、物理モデルパラメータは、諸元表、CAD(Computer Aided Design)データなどからおおよその値が算出可能であるため、これらの値を学習時の初期値として与えることにより学習の速度、収束性などを向上させることが可能である。ただし、これらの値が未知もしくは算出が困難な場合は、任意の定数で初期化してもよい。
物理モデル記憶部22での物理モデルパラメータの学習には、上述の運動方程式を変形し、物理モデルパラメータのみを分離した優決定系の線形方程式を用いる。ニュートンの運動方程式、オイラーの運動方程式、およびラグランジュの運動方程式は、いずれも位置、速度、加速度に対して非線形な項を考慮しない場合、質量、重心位置、慣性テンソルからなる定数係数と、位置、速度、加速度からなる変数との積の線形結合で表現できる。すなわち、実トルクに対する動力学計算の誤差をΔfとおくと、各軸の運動方程式は、質量、重心位置、慣性テンソルからなる物理モデルパラメータw、および速度vと加速度aからなる係数行列A(v,a)を用いて式(1)のように変数分離した形で記述できる。
Δf=A(v,a)w …(1)
よって、物理モデル記憶部22は、式(1)を最小二乗法により軸毎にwについて解くことで、各軸の物理モデルパラメータを算出できる。また、物理モデル記憶部22は、5軸の工作機械のように軸間干渉を生じうる駆動機械に対しては、各軸のwに関する式(1)を一つの線形方程式にまとめて同時に解くことにより、物理モデル計算部2全体としてより尤もらしい解を得ることができる。物理モデル記憶部22は、物理モデルパラメータwの同定手法に関して、最小二乗法以外にも正則化最小二乗法、カルマンフィルタに加えて、ベイズ推定、遺伝的アルゴリズム、ニューラルネットワークなどを用いても良い。
なお、物理モデル記憶部22は、運動方程式において摩擦の影響を考慮する際、次に示すクーロン摩擦および粘性摩擦からなる摩擦モデルである線形摩擦モデルなど、速度の関数と摩擦係数との線形結合で表現される摩擦係数が分離可能な式で摩擦を表現することで、摩擦係数についても式(1)と同様に物理モデルパラメータとして同時に推定が可能となる。物理モデル記憶部22で推定される摩擦係数を式(2)で示す。なお、イメージで取り込まれる式(2)および後述の式(3)ではqiの上部にドットが付与されているが、これを説明部分で表現できない。そのため、説明部分では、qiの上部にドットが付与されているものを単にqiと表記する。
Figure 0006949284
ここで、速度qiで動作する軸iの摩擦モデルFiに対して、rFC,iはクーロン摩擦係数、rFV,iは粘性摩擦係数である。ただし、工作機械をはじめとする多軸機構の動作においては、粘性摩擦が速度に対して完全に線形な関係とならず、特にアクチュエータの高速動作時においては、線形と仮定した場合の値と比べて小さくなることがしばしば確認される。そのような場合は、速度に対する非線形性を考慮したより自由度の高い摩擦モデルを用いて摩擦を推定し、実トルクと第一の推定トルクの差分における摩擦成分を除去した上で、その他の物理モデルパラメータを推定することが望ましい。このような摩擦モデルである非線形摩擦モデルとして、式(3)で示される以下に示すような関数が一例として挙げられる。
Figure 0006949284
ここで、ωlsは低速動作の境界速度であり、ωhsは高速動作の境界速度であり、rST,iは摩擦の飽和係数である。非線形摩擦モデルのグラフを図3に示す。図3は、実施の形態1に係る物理モデル記憶部22で推定される物理モデルパラメータである非線形摩擦モデルの例を示す図である。図3において、横軸はモータ速度を示し、縦軸は摩擦を示す。
非線形摩擦モデルは、クーロン摩擦係数rFC,iおよび粘性摩擦係数rFV,iに加えて計4つのパラメータを持ち、速度qiに対して非線形な関数であるため、これらは実トルクと第一の推定トルクとの差分から非線形最小二乗法であるLevenberg−Marquardt法を用いて求める。Levenberg−Marquardt法は、初期値依存性を持つため、一度摩擦に線形性を仮定してクーロン摩擦係数rFC,iおよび粘性摩擦係数rFV,iを物理モデルパラメータwに加え、上述の式(1)により各摩擦係数を算出した後、それらを初期値とすることで初期値依存性による推定の失敗を防ぐことができる。すなわち、物理モデル記憶部22は、物理モデルパラメータの学習において、最小二乗法、正則化最小二乗法、非線形最小二乗法、またはカルマンフィルタなどを用いることができる。数値制御装置100は、最小二乗法、非線形最小二乗法、非線形最小二乗法、またはカルマンフィルタを用いることで、対象機械10の運動方程式および状態方程式における未知の係数を動作データから推定することが可能となる。動作データは、例えば、モータ状態信号に含まれるデータである。
物理モデル記憶部22は、ここで得られた非線形摩擦モデルの係数を物理モデルパラメータとして記憶し、各時刻の非線形摩擦モデルの出力を物理状態変数に追加する。数値制御装置100は、摩擦モデルの係数を物理モデルパラメータとして物理モデル記憶部22で記憶しておくことにより、経年劣化、異常などによる粘性摩擦、またクーロン摩擦の変化を検知することができる。物理モデル記憶部22は、例えば、物理モデルパラメータの学習において、非線形摩擦モデルの係数および他の物理モデルパラメータを交互に推定する。数値制御装置100は、摩擦モデルの係数およびその他の物理モデルパラメータを交互に推定することで、摩擦モデルをより複雑かつ詳細に設計することができる。また、数値制御装置100は、その他の物理モデルパラメータの推定についても摩擦の影響をほとんど除去した状態で行えるため、物理モデルパラメータをより高精度に学習することが可能となる。
ただし、非線形摩擦モデルについては、速度の関数に限らず、位置、加速度、モータ温度などにも依存する多変数関数であってもよく、非線形摩擦モデルの各係数はGauss−Newton法、最急降下法、拡張カルマンフィルタ、無香カルマンフィルタなどによって同定しても良い。また、非線形摩擦モデルとして、サポートベクター回帰モデル、回帰木、ランダムフォレスト、多変量適応型回帰スプラインモデル、ニューラルネットワークなど機械学習アルゴリズムに基づいたモデル生成手法を用いても良いが、後述の機械学習モデル計算部4において、ニューラルネットワークをはじめとする機械学習部411により第一の推定トルクの補正を行うため、非線形摩擦モデルは摩擦の静的な特性に着目したマクロな影響のみを除去できれば良く、陽に与えられる速度のみの関数として考慮すれば十分である。
切削状態観測部5は、対象機械10による切削状態を観測し、観測結果を示す切削状態信号を出力する。切削状態信号は、対象機械10が切削を行っているか否かを示す信号である。切削状態観測部5は、対象機械10から加工プログラムを取得し、加工プログラムの内容を基に、切削状態を観測する。
特徴量生成部3には、モータ状態観測部1の出力であるモータ状態信号と、第一のトルク推定部21の出力である第一の推定トルクおよび物理状態変数と、切削状態観測部5の出力である切削状態信号とが入力される。特徴量生成部3は、第一の推定トルクと、物理状態変数と、モータ状態信号と、切削状態信号とを入力とし、機械学習部411への入力である特徴量を出力する。
切削負荷を推定する場合などには、工具情報と、加工情報と、アプリケーション判定情報とが、特徴量生成部3への入力に追加される。工具情報は、工具14の種別および形状についての情報である。工具情報は、工具径、工具長、工具形状、工具14の刃数の情報または工具14の突き出し長さの情報を含む。また、工具14が、旋削加工に使用される工具14である場合、工具情報は、工具14のチップ形状の情報または工具14の逃げ角の情報を含んでも良い。加工情報は、対象機械10における加工条件についての情報である。加工情報は、送り速度または送り幅といった加工条件についての情報を含む。
アプリケーション判定は、切削における異常の検知と、切削における負荷の検知と、工具14の摩耗または欠損の検知との各々についての判定である。アプリケーション判定情報は、異常検知、切削負荷検知、および、摩耗または欠損の検知の各々についての判定のうちいずれを行うかを示す。すなわち、アプリケーション判定情報は、加工において生じ得る複数の事象の各々についての判定のうちいずれを行うかを示す情報である。
アプリケーション判定情報は、対象機械10のユーザによって特徴量生成部3へ入力される。ユーザは、「異常検知」と、「切削負荷検知」と、「工具の摩耗または欠損の検知」との中から、アプリケーション判定の対象を選択し、選択された対象を示すアプリケーション判定情報を特徴量生成部3へ入力する。アプリケーション判定の対象には、内部処理に「異常検知」、「切削負荷検知」または「工具の摩耗または欠損の検知」が用いられる機能も含まれる。かかる機能の例は、切削負荷制御のように、パラメータによって切削負荷量を直接ユーザが指定する機能、FSW(Friction Stir Welding)のように、ユーザが負荷量を指定しないが加工条件によって負荷量を制御する機能などである。これら各機能では、内部処理によって「切削負荷検知」が行われる。なお、数値制御装置100が、異常検知と、切削負荷検知と、摩耗または欠損の検知とのいずれかのみを行う場合、アプリケーション判定情報は固定値でも良い。または、アプリケーション判定情報は、特徴量生成部3へ入力されなくても良い。
特徴量生成部3は、「異常検知」と、「切削負荷検知」と、「工具の摩耗または欠損の検知」とのうちいずれのアプリケーション判定を行うかを、入力されたアプリケーション判定情報から判断する。特徴量生成部3は、切削が行われているときの学習による機械学習モデルパラメータと、切削が行われていないときの学習による機械学習モデルパラメータとのどちらを用いて第2の推定トルクを推定するかを、かかる判断の結果に基づいて決定する。また、特徴量生成部3は、実トルクから第2の推定トルクを差し引く演算において、切削が行われているときに取得された実トルクと、切削が行われていないときに取得された実トルクとのどちらを用いるかを、かかる判断の結果に基づいて決定する。特徴量生成部3は、決定された事項についての情報を含めた特徴量を出力する。
これらの特徴量生成部3の入力および推定対象である実トルクは、時系列的に変化する値である。機械学習モデル記憶部42は、それぞれ時間軸方向の相関についても考慮する必要があるため、特徴量も過去の一定期間の値も同時に含むベクトルとして与える。また、実施の形態1で対象とする工作機械のような多軸機構においては、軸間の相互干渉の影響が小さくないため、それぞれの軸に対応する入力の値についても同時に含むベクトルとすることが望ましい。ただし、特徴量におけるトルク成分に関しては、実トルクと第一の推定トルクとの差分として与え、推定対象とする実トルクに対して過去の値のみを用いるものとする。
図4は、実施の形態1に係る特徴量生成部3および機械学習モデル計算部4の構成例を示すブロック図である。図4において、zは単位遅延演算子であり、Ndは遅延の単位時刻数を示す0以上の整数である。図4に示す単位遅延演算子は、特徴量生成部3に備えられた記憶装置ともいえる。すなわち、特徴量生成部3は、第一の推定トルクと、物理状態変数と、モータ状態信号と、切削状態信号と、工具情報と、加工情報と、アプリケーション判定情報とを記憶する記憶装置を有する。
特徴量生成部3は、記憶装置に記憶された情報の中から特徴量とする情報を抽出する。数値制御装置100は、物理状態変数およびモータ状態信号に関する時系列変化の情報を入力として特徴量に含むことで、機械学習モデル計算部4が対象機械10の動作をより詳細に予測できる。これにより、数値制御装置100は、実トルクに対する第二の推定トルクの推定精度を向上させることができる。
特徴量生成部3は、特徴量の生成において、第一の推定トルク、物理状態変数、モータ状態信号、切削状態信号、工具情報、加工情報およびアプリケーション判定情報の全てを必ずしも使用しなくても良い。特徴量生成部3は、第一の推定トルク、物理状態変数、モータ状態信号、切削状態信号、工具情報、加工情報およびアプリケーション判定情報のうちの一部のみを使用して特徴量を生成しても良い。特徴量生成部3は、第一の推定トルクと物理状態変数とモータ状態信号との少なくとも一つ、および切削状態信号から特徴量を生成し出力しても良い。
第二のトルク推定部41は、機械学習部411を備える。第二のトルク推定部41は、特徴量生成部3で生成された特徴量と、第一のトルク推定部21の出力である第一の推定トルクと、機械学習モデル記憶部42の出力である機械学習モデルパラメータとを入力とし、特徴量および機械学習モデルパラメータを用いた機械学習部411の機械学習に基づいて機械学習補正量を算出する。第二のトルク推定部41は、第一の推定トルクに機械学習補正量を加算したものを第二の推定トルクとして出力する。
機械学習部411は、特徴量生成部3で生成された特徴量と機械学習モデル記憶部42の出力である機械学習モデルパラメータとを入力とし、実トルクに対する第二の推定トルクの誤差が最小となるよう、機械学習補正量を出力するニューラルネットワークから構成される。すなわち、出力の機械学習補正量の理想的な値は実トルクと第一の推定トルクとの差分と一致し、入力である特徴量に遅延した過去の実トルクと第一の推定トルクとの差分を含むため、機械学習部411は、図5に示すような入出力関係に自己回帰項を持つ。
図5は、実施の形態1に係る特徴量生成部3および機械学習モデル計算部4の構成において自己回帰項を示す図である。図5は、図4から自己回帰項に関連する部分を抽出したものである。ここで、機械学習モデルパラメータは、ニューラルネットワークにおける重み行列およびバイアスベクトルを指す。また、ニューラルネットワークの種類として、中間層の入出力関係に再帰的な構造を持つ、リカレントニューラルネットワーク、LSTM(Long Short Term Memory)、GRU(Gated Recurrent Unit)といったリカレント型と呼ばれるニューラルネットワークを用いることも、このような時系列データに対する予測精度を向上する上で有効な手段である。
また、学習負荷および計算量を削減するため、ニューラルネットワークの代わりに多項式モデル、重回帰モデル、サポートベクター回帰モデル、回帰木、ランダムフォレスト、多変量適応型回帰スプラインモデルなどを用いても良いし、軸間の相互干渉を無視してよい場合などは、軸毎に独立に機械学習部411を適用しても良い。
ただし、ニューラルネットワークをはじめとする機械学習部411で用いた汎用的な関数近似モデルは、一般的に不連続関数の近似に適していない。そのため、第一の推定トルクにおいて式(2)の線形摩擦モデルによって摩擦分のトルクの近似および補正を行うと、実トルクと第一の推定トルクとの差分が不連続なジャンプを起こし、これらの値を入出力に含み自己回帰項を形成する機械学習部411の機械学習モデルパラメータの学習結果および機械学習補正量の算出結果が著しく悪化する可能性がある。さらに、実際の工作機械においては、粘着と滑りとが交互に起こって発生するスティックスリップ現象、ストライベック曲線で表わされるような潤滑に関する摩擦などが影響し、速度ゼロ付近および低速動作時の摩擦は非線形性が強いため、これらのモデルを陽に与えることは非常に困難である。
そこで、式(3)で示した非線形摩擦モデルように、速度ゼロ付近を連続かつ滑らかに接続した摩擦モデルを用いることで、第一の推定トルクおよび特徴量の各値がそれぞれ連続となる。これにより、上述のような第一の推定トルクおよび非線形摩擦モデルで再現が困難な摩擦成分についても、機械学習補正量を加えることによって高精度に推定が可能となる。さらに、特徴量は、過去の一定期間の速度、非線形摩擦モデルの出力などを同時に含むベクトルである。そのため、機械学習部411は、摩擦のヒステリシス特性など直前の状態に依存して変化する推定誤差要因についても学習し、機械学習補正量として補正することが可能となる。
このように、第二のトルク推定部41は、入出力関係に自己回帰項を含む機械学習を用いて特徴量および機械学習モデルパラメータから機械学習補正量を算出する。第二のトルク推定部41は、算出した機械学習補正量を第一の推定トルクに加算して第二の推定トルクを出力する。また、第二のトルク推定部41は、入出力関係に自己回帰項を含む機械学習としてニューラルネットワークを用いた機械学習を用いても良い。数値制御装置100は、機械学習の手法としてニューラルネットワークを利用することで、運動方程式上で表現が困難なトルク成分を非線形多自由度モデルとして学習し保存することが可能となる。
第二のトルク推定部41は、機械学習補正量を算出するための機械学習において、入出力関係に含まれる自己回帰項として、実トルクと第一の推定トルクとの差分を用いてもよい。実トルクと第一の推定トルクとの差分が第一の推定トルクに対する補正量の目標値である。補正量の目標値は、対象機械10のモータの動作に伴い時系列的に変化する。このため、数値制御装置100は、次の時刻の最適な補正量を推定する際、過去の補正量の目標値を入力に含む自己回帰項を備えることで、より高精度に推定することが可能となる。
機械学習モデル記憶部42は、物理モデル記憶部22における物理モデルパラメータの学習後に、対象機械10を一定期間動作させた際の特徴量、および実トルクと第一の推定トルクとの差分をそれぞれ入出力の教師データとして、実トルクと第一の推定トルクとの差分に対する機械学習補正量の誤差が低減するよう機械学習モデルパラメータを学習する。すなわち、機械学習モデル記憶部42は、機械学習補正量が実トルクと第一の推定トルクとの差分に近づくように機械学習モデルパラメータを教師あり学習により学習する。機械学習モデル記憶部42は、学習した機械学習モデルパラメータを記憶する。
学習開始時の機械学習モデルパラメータは任意の定数で初期化して良いが、特にニューラルネットワークで表現される機械学習部411は、機械学習モデルパラメータである重み行列、バイアスなどに対して初期値依存性を持つ。そのため、機械学習部411では、重み行列について、一様分布、通常の正規分布に加えて、切断正規分布、Heの正規分布、Glorotの正規分布など、正規分布に由来した確率分布で初期化することが一般的である。
また、機械学習モデル記憶部42は、学習手法としてミニバッチ勾配降下法および誤差逆伝搬法を利用し、重み行列およびバイアスベクトルで表わされる機械学習モデルパラメータをバッチ毎に更新する。すなわち、機械学習モデル記憶部42は、機械学習モデルパラメータの学習時に用いる教師あり学習手法として誤差逆伝搬法を用いても良い。ただし、教師データが十分な量だけ用意できない場合などは、機械学習モデル記憶部42は、ミニバッチ勾配降下法の代わりに通常の勾配降下法、確率的勾配降下法などを用いても良い。
また、機械学習モデル記憶部42は、機械学習部411におけるニューラルネットワークの汎化性能を向上させるため、学習の際にニューロンをランダムに除外するdropout、エポック毎に誤差を監視して学習を早く打ち切るearly stoppingといった手法を用いるのも有効である。機械学習モデル記憶部42は、学習時にdropoutを適用した際は、機械学習補正量の推論時にdropout確率を重み行列に適用する必要があるので、このようなハイパーパラメータについても機械学習モデルパラメータとして追加し保存する。
ここまでの物理モデルパラメータおよび機械学習モデルパラメータの学習の流れを、フローチャートを用いて説明する。図6は、実施の形態1に係る数値制御装置100における物理モデルパラメータおよび機械学習モデルパラメータの学習の流れを示すフローチャートである。
物理モデル記憶部22は、諸元表の値から各リンクの物理モデルパラメータである質量、重心位置、および慣性テンソルの初期値を設定する(ステップS1)。モータ状態観測部1は、対象機械10のモータ状態信号である実トルク、位置、速度、および加速度の時系列データを教師データとして出力する(ステップS2)。
第一のトルク推定部21は、位置、速度、および加速度に対して、動力学計算により第一の推定トルクを算出する(ステップS3)。第一のトルク推定部21は、動力学方程式に線形摩擦モデルの項を追加する(ステップS4)。物理モデル記憶部22は、物理モデルパラメータにクーロン摩擦係数および粘性摩擦係数を追加する(ステップS5)。物理モデル記憶部22は、実トルクと第一の推定トルクとの差分から、線形方程式に変形した動力学方程式および最小二乗法を用いて、物理モデルパラメータを同定する(ステップS6)。
物理モデル記憶部22は、同定した物理モデルパラメータにおけるクーロン摩擦係数および粘性摩擦係数を初期値とし、Levenberg−Marquardt法で非線形摩擦モデルを同定し、得られた各係数を物理モデルパラメータに追加する(ステップS7)。物理モデル記憶部22は、実トルクから第一の推定トルクおよび非線形摩擦モデルの値を引いた結果に対し、摩擦モデルの項を除去し線形方程式に変形した動力学方程式および最小二乗法を用いて、摩擦係数以外の物理モデルパラメータを再び同定する(ステップS8)。第一のトルク推定部21は、動力学方程式に非線形摩擦モデルの項を追加し、学習した物理モデルパラメータを用いて、第一の推定トルクを再び算出する(ステップS9)。
特徴量生成部3は、第一の推定トルク、物理状態変数、モータ状態信号、切削状態情報、加工情報、工具情報およびアプリケーション判定情報を入力として、それらを過去の一定期間の値も同時に含むベクトルにまとめ、特徴量として出力する(ステップS10)。機械学習モデル記憶部42は、機械学習モデルパラメータである重み行列、およびバイアスに対し、重み行列を正規分布で、バイアスを定数で初期化する(ステップS11)。
機械学習モデル記憶部42は、学習時の条件として、early stopping、dropoutなどのハイパーパラメータを設定し、それらの値を機械学習モデルパラメータへ追加する(ステップS12)。第二のトルク推定部41は、入力を特徴量、出力を実トルクと第一の推定トルクとの差分である機械学習補正量の理想値とし、機械学習モデルパラメータにおける学習時の条件に従って、誤差逆伝搬法により機械学習モデルパラメータの重み行列およびバイアスを学習する(ステップS13)。
ここで、第二の推定トルクの汎化性能の向上については、上述の通り、事前に物理モデル記憶部22において物理モデルパラメータの学習を行い、第一の推定トルクに対する機械学習補正量を自己回帰項として、機械学習モデル記憶部42において機械学習モデルパラメータの学習を行うことによる寄与が大きい。なぜなら、数値制御装置100は、物理モデルパラメータと機械学習モデルパラメータとを区別することで、それぞれ運動方程式においてモデル化が容易な既知の物理現象に起因したトルク推定誤差成分と、運動方程式においてモデル化が困難なトルク推定誤差成分とを分けて学習することができ、機械学習部411の出力である機械学習補正量の絶対値が小さくなるためである。言い換えれば、陽に与えられるトルク推定誤差成分が機械学習補正量に含まれないため、数値制御装置100は、機械学習モデルパラメータに含まれるパラメータ数も少なくすることができ、結果として機械学習モデル記憶部42における学習の過学習の防止と高速化、さらに学習に用いる教師データの削減も可能となる。
機械学習補正量に関する自己回帰項についても同様に、実トルクと物理モデルパラメータに初期値を用いた運動方程式による算出結果の差分を機械学習モデル計算部4で学習し機械学習補正量とする構成、または、物理モデルパラメータに初期値を用いた運動方程式による算出結果を特徴量に含み第二の推定トルクを直接機械学習部411の出力として機械学習モデルパラメータを学習する構成に比べ、機械学習補正量の絶対値が小さくなりニューラルネットワークなどによるトルク推定誤差範囲を抑えることができる。さらに、自己回帰項を用いるメリットとして、モータ特性に依存するコギングトルク、トルクリップル、ギア間のトルク伝達におけるバックラッシュの影響など、運動方程式の式中に与えることが困難な時間軸方向に周期的に変化する推定誤差要因を学習しやすい点などが挙げられる。
実際に、物理モデルパラメータを学習した後の第一の推定トルク、さらに実トルクと第一の推定トルクとの差分から機械学習モデルパラメータを学習した第二の推定トルクを図7に示す。図7は、実施の形態1に係る数値制御装置100の制御対象である対象機械10の動作を表すモータ速度、数値制御装置100で推定される第一の推定トルク、および数値制御装置100で推定される第二の推定トルクを示す図である。各項目において、横軸は時間を示している。図7に示すように、第二の推定トルクの方が、第一の推定トルクよりも実トルクに近似している。
また、機械学習部411にニューラルネットワークを用いた場合、特徴量に含まれるどのパラメータが機械学習補正量にどの程度影響したかが明らかでなく、機械学習モデルパラメータの変化から対象機械10の物性の変化を推測することは非常に困難である。しかしながら、物理モデルパラメータの学習ではそれら物性の各値を直接確認できる実施の形態1では、数値制御装置100は、物理モデルパラメータと機械学習モデルパラメータとを区別して学習するため、異常検知に適した構成といえる。
学習を行った物理モデル計算部2および機械学習モデル計算部4を用いた異常検知の例として、主に実トルクと第二の推定トルクとの差分を監視する手法が考えられる。数値制御装置100は、実トルクと第二の推定トルクとの差分を監視することで、観測値がほぼゼロ付近に集中し、絶対値をそのまま実トルクの異常度と捉えられるためである。具体的な異常検知手法としては、実トルクと第二の推定トルクとの差分の絶対値があらかじめ設定された閾値を超えるか否かによって検知を行う単純なものでもよい。その他、特徴量および実トルクと第二の推定トルクとの差分を入力とした正常、異常の2クラス分類問題として、ラベル付けを行った教師データを用意し、ロジスティック回帰、サポートベクターマシン、決定木、ニューラルネットワークなどを用いて判別してもよい。
数値制御装置100は、教師データである異常時の動作データが集めにくい場合、SMOTE(Synthetic Minority Over−sampling TEchnique)、ADASYN(ADAptive SYNthetic)などを用いて取得された異常時の動作データに対するオーバーサンプリングを行っても良いし、K−means法、自己組織化マップなど教師なし学習により正常、異常で分かれる2クラスタに分類しても良い。また、数値制御装置100において、クラス数およびクラスタ数は正常、異常の二つに限定されず、異常度の度合いに合わせてより細かく段階的に設定しても良いし、実トルクと第二の推定トルクとの差分の絶対値以外の異常度を任意に設定しても良い。
図1の破線で示した、物理モデル記憶部22における物理モデルパラメータ、および機械学習モデル記憶部42における機械学習モデルパラメータの学習のタイミングについて、故障検知を目的とした用途を想定すると、出荷段階の試験運転時など数値制御装置100が劣化度合いの比較対象として理想的な状態となる環境で実行することが望ましい。ただし、工作機械は、主軸と工具14とが先端に取り付けられ、テーブル13に置かれたワーク15を切削するため、その場合、各リンクの質量、重心位置、慣性テンソルといった物性が変化する。このため、数値制御装置100は、各状態で物理モデルパラメータおよび機械学習モデルパラメータをどちらも学習し直すなど、ワーク15の質量を考慮する必要がある。
一般的にワーク15を設置した際、これらの物理モデルパラメータへの影響を数値制御装置100などによって設定する手間が発生していた。これに対し、実施の形態1では、物理モデル記憶部22において、対象機械10を一定期間動作させた際のモータ状態信号からそれらを学習することで、この設定の過程についても自動化することが可能となっている。また、物理モデルパラメータの値が正しく設定されていることで、サイクルタイム、軌跡ずれ、衝突時の押しつけ力などが減少するといった利点もあり、位置制御、速度制御などに加えて、力制御、インピーダンス制御の高速化、高精度化にも応用可能な技術であり、上述の手法の用途は異常検知に限定されるものではない。
機械学習モデル記憶部42は、対象機械10による切削が行われているときにおける教師あり学習と、対象機械10による切削が行われていないときにおける教師あり学習とを個別に行う。機械学習モデル記憶部42は、切削が行われているときにおける入出力に基づいた学習による機械学習モデルパラメータと、切削が行われていないときにおける入出力に基づいた学習による機械学習モデルパラメータとを記憶する。機械学習モデル計算部4は、切削状態信号とアプリケーション判定情報とを含む特徴量が入力されることによって、切削時についての学習と非切削時についての学習とを切り換えて実行することができる。
図8は、実施の形態1における数値制御装置100による異常検知について説明するための図である。図8には、実トルクと、数値制御装置100で推定される第二の推定トルクとを示す。横軸は時間を示す。ここで説明する処理は、アプリケーション判定情報が、異常を検知するための判定を示す場合に実行される。
実施の形態1において、機械学習モデル計算部4は、異常検知を示すアプリケーション判定情報が特徴量として入力された場合、実トルクと機械学習モデル計算部4によって計算された第二の推定トルクとの差分を第二のトルク推定部41において監視する。第二のトルク推定部41は、切削が行われていないときにおける入出力に基づいた学習による機械学習モデルパラメータから第二の推定トルクを算出し、実トルクと算出された第二の推定トルクとの差分を監視する。第二のトルク推定部41は、差分がある一定の値以上になった場合に異常の発生を検知する。異常とは、モータのトルク異常である。
数値制御装置100は、切削状態信号が非切削を示す場合において、非切削時についての学習モデルを使用した計算を機械学習モデル計算部4が行うことによって、トルクの異常を検知することができる。数値制御装置100は、異常が検知された場合、実トルクと第二の推定トルクとの差分が上記一定の値以下になるように加工条件のパラメータを調整する。例を挙げると、数値制御装置100は、送り速度を下げる調整を行う。数値制御装置100は、異常が検知された場合、異常が検知されたことを示すアラームを出力しても良い。
実施の形態2.
実施の形態2では、数値制御装置100において切削負荷を検知する場合について説明する。実施の形態2では、上記の実施の形態1と同一の構成要素には同一の符号を付し、実施の形態1と重複する説明を省略する。図9は、実施の形態2における数値制御装置100による切削負荷の検知について説明するための図である。図9には、実トルクと、数値制御装置100で推定される第二の推定トルクとを示す。横軸は時間を示す。
実施の形態2における処理は、アプリケーション判定情報が、切削負荷を検知するための判定を示す場合に実行される。切削状態信号が非切削を示す場合において、第一のトルク推定部21は、動力方程式に非線形摩擦モデルの項を追加し、学習した物理モデルパラメータを用いて第一の推定トルクを算出する。特徴量生成部3は、第一の推定トルクと、物理状態変数と、モータ状態信号と、切削状態信号と、工具情報と、加工情報と、アプリケーション判定情報とを入力とし、機械学習部411への入力である特徴量を出力する。
機械学習モデル記憶部42は、切削負荷検知を示すアプリケーション判定情報と非切削を示す切削状態信号とが特徴量として入力された場合に、機械学習モデルパラメータの重み行列を機械学習モデル記憶部42に記憶する。第二のトルク推定部41は、入力を特徴量、出力を実トルクと第一の推定トルクとの差分である機械学習補正量の理想値とし、機械学習モデルパラメータにおける学習時の条件に従って、誤差逆伝搬法により機械学習モデルパラメータの重み行列およびバイアスを学習する。
切削状態信号が非切削を示す場合における入出力に基づいた学習による学習モデルにおいて、第二のトルク推定部41で計算される第二の推定トルクは、対象機械10を動作させる実トルクに近似する。しかし、切削状態信号が切削を示す場合、対象機械10が実際にワーク15を切削する際の実トルクとしては、対象機械10を動作させるトルクとワーク15を切削するためのトルクとを合算したトルクが計測される。そのため、数値制御装置100は、計測された実トルクから第二の推定トルクを差し引くことによって、対象機械10がワーク15を切削する際に必要なトルクである切削負荷トルクを求めることができる。切削負荷検知とは、切削負荷トルクを求めることを指す。
実施の形態2において、機械学習モデル計算部4は、切削負荷を検知するための判定を示すアプリケーション判定情報が特徴量として入力された場合、実トルクと機械学習モデル計算部4によって計算された第二の推定トルクとの差分である切削負荷トルクを、第二のトルク推定部41において求める。第二のトルク推定部41は、切削が行われていないときにおける入出力に基づいた学習による機械学習モデルパラメータから第二の推定トルクを算出し、実トルクと算出された第二の推定トルクとの差分である切削負荷トルクを求める。数値制御装置100は、切削状態信号が非切削を示す場合において、非切削時についての学習モデルを使用した計算を機械学習モデル計算部4が行うことによって、切削負荷を検知することができる。
実施の形態3.
実施の形態3では、数値制御装置100において工具14の摩耗または欠損を検知する場合について説明する。実施の形態3では、上記の実施の形態1または2と同一の構成要素には同一の符号を付し、実施の形態1または2と重複する説明を省略する。図10は、実施の形態3における数値制御装置100による工具14の摩耗または欠損の検知について説明するための図である。図10には、実トルクと、数値制御装置100で推定される第二の推定トルクとを示す。横軸は時間を示す。
実施の形態3における処理は、アプリケーション判定情報が、工具14の摩耗または欠損を検知するための判定を示す場合に実行される。切削状態信号が切削を示す場合において、第一のトルク推定部21は、動力方程式に非線形摩擦モデルの項を追加し、学習した物理モデルパラメータを用いて第一の推定トルクを算出する。特徴量生成部3は、第一の推定トルクと、物理状態変数と、モータ状態信号と、切削状態信号と、工具情報と、加工情報と、アプリケーション判定情報とを入力とし、機械学習部411への入力である特徴量を出力する。
機械学習モデル記憶部42は、工具14の摩耗または欠損を検知するための判定を示すアプリケーション判定情報と切削を示す切削状態信号とが特徴量として入力された場合に、機械学習モデルパラメータの重み行列を機械学習モデル記憶部42に記憶する。第二のトルク推定部41は、入力を特徴量、出力を実トルクと第一の推定トルクとの差分である機械学習補正量の理想値とし、機械学習モデルパラメータにおける学習時の条件に従って、誤差逆伝搬法により機械学習モデルパラメータの重み行列およびバイアスを学習する。
切削状態信号が切削を示す場合における入出力に基づいた学習による学習モデルにおいて、第二のトルク推定部41で計算される第二の推定トルクは、対象機械10を動作させる実トルクと切削負荷トルクとの合算である実トルクと推定できる。アプリケーション判定情報が工具14の摩耗または欠損を検知するための判定を示す場合において、数値制御装置100は、第二の推定トルクから計測された実トルクを差し引くことによって、工具14の摩耗によって上昇した切削負荷トルクを求めることができる。そのため、数値制御装置100は、第二の推定トルクと計測された実トルクとの差分である切削負荷トルクから、工具14の摩耗の度合いを検知することができる。また、アプリケーション判定情報が工具14の摩耗または欠損を検知するための判定を示す場合において、数値制御装置100は、計測される第二の推定トルクが、対象機械10を動作させる実トルクのみである場合、工具14の欠損を検知することができる。
実施の形態3において、機械学習モデル計算部4は、工具14の摩耗または欠損を検知するための判定を示すアプリケーション判定情報が特徴量として入力された場合、実トルクと機械学習モデル計算部4によって計算された第二の推定トルクとの差分を第二のトルク推定部41において監視する。第二のトルク推定部41は、切削が行われているときにおける入出力に基づいた学習による機械学習モデルパラメータから第二の推定トルクを算出し、実トルクと算出された第二の推定トルクとの差分を監視する。
第二のトルク推定部41は、第二の推定トルクよりも計測された実トルクが大きい場合、第二の推定トルクと計測された実トルクとの差分の上昇分を、工具14の摩耗による切削負荷トルクの上昇分と推定する。第二のトルク推定部41は、切削負荷トルクの上昇分に基づいて、工具14の摩耗の度合いを検知する。また、第二のトルク推定部41は、第二の推定トルクよりも計測された実トルクが小さいか、または第二の推定トルクよりも計測された実トルクが極端に小さい場合、工具14が欠損したことを検知する。
数値制御装置100は、切削状態信号が切削を示す場合において、切削時についての学習モデルを使用した計算を機械学習モデル計算部4が行うことによって、工具14の摩耗または欠損を検知することができる。数値制御装置100は、工具14の摩耗または欠損が検知された場合、対象機械10を減速および停止させる。数値制御装置100は、工具14の摩耗または欠損が検知された場合、工具14の摩耗または欠損が検知されたことを示すアラームを出力しても良い。
次に、実施の形態1から3に係る数値制御装置100のハードウェア構成について説明する。数値制御装置100において、モータ状態観測部1、物理モデル計算部2、特徴量生成部3、機械学習モデル計算部4および切削状態観測部5は、処理回路により実現される。処理回路は、メモリに格納されるプログラムを実行するプロセッサおよびメモリであっても良いし、専用のハードウェアであっても良い。
図11は、実施の形態1から3に係る数値制御装置100が備える処理回路をプロセッサ91およびメモリ92で構成する場合の例を示す図である。処理回路がプロセッサ91およびメモリ92で構成される場合、数値制御装置100の処理回路の各機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ92に格納される。処理回路では、メモリ92に記憶されたプログラムをプロセッサ91が読み出して実行することにより、各機能を実現する。すなわち、処理回路は、数値制御装置100の処理が結果的に実行されることになるプログラムを格納するためのメモリ92を備える。また、これらのプログラムは、数値制御装置100の手順および方法をコンピュータに実行させるものであるともいえる。
プロセッサ91は、CPU(Central Processing Unit)、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、またはDSP(Digital Signal Processor)などであってもよい。また、メモリ92には、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)などの、不揮発性または揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、またはDVD(Digital Versatile Disc)などが該当する。
図12は、実施の形態1から3に係る数値制御装置100が備える処理回路を専用のハードウェアで構成する場合の例を示す図である。処理回路が専用のハードウェアで構成される場合、図12に示す処理回路93は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせたものが該当する。数値制御装置100の各機能を機能別に処理回路93で実現しても良いし、各機能をまとめて処理回路93で実現しても良い。
なお、数値制御装置100の各機能について、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。このように、処理回路は、専用のハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
以上説明したように、実施の形態1から3では、数値制御装置100のモデルを、対象機械10の力学的物性と運動方程式上で陽に与えられる物理現象の情報を利用してトルクの推定を行う物理モデル計算部2と、物理モデル計算部2の推定トルクに対する補正量を自己回帰項として含み、運動方程式上で表現が困難な非線形性の強いトルク成分の推定を行う機械学習モデル計算部4の組み合わせで表現する。数値制御装置100は、これらを順に学習することで、実トルクに対するトルク推定精度および汎化性能が高い対象機械10のモデルを、少量の動作データから高速に学習することができる。また、数値制御装置100は、実トルクとトルク推定値とを比較する、すなわち実機と学習したモデルとを比較することで、軽微な異常についても検知が可能となる。
すなわち、数値制御装置100は、物理モデルパラメータと機械学習モデルパラメータとを順に学習することで、それぞれ対象機械10の力学的物性、運動方程式上で陽に与えられる物理現象によるトルク成分と、運動方程式上で表現が困難な非線形性の強いトルク成分とを区別して学習し、推定することができる。これにより、数値制御装置100は、学習全体にかかる時間を短縮し、機械学習補正量の絶対値が物理モデルパラメータの学習により小さくなるので、実トルクに対する第二の推定トルクの汎化性能を向上させることができる。また、数値制御装置100は、第二のトルク推定部41において、入出力関係の自己回帰項により時間軸方向の特徴量間の相関を効率的に学習させることで、第二の推定トルクの推定精度を向上させることができる。以上により、数値制御装置100は、非線形性が強い複雑な現象に対しても、高精度なトルク推定が可能となるという効果を奏する。
なお、実施の形態1から3では、工作機械である対象機械10を数値制御装置100による制御対象としたが、数値制御装置100は、機械の軸数、関節の直動、回転の機構によらず適用が可能である。数値制御装置100は、ロボットなどによる切削制御、実装機などにも適用することができる。
以上の各実施の形態に示した構成は、本開示の内容の一例を示すものである。各実施の形態の構成は、別の公知の技術と組み合わせることが可能である。各実施の形態の構成同士が適宜組み合わせられても良い。本開示の要旨を逸脱しない範囲で、各実施の形態の構成の一部を省略または変更することが可能である。
1 モータ状態観測部、2 物理モデル計算部、3 特徴量生成部、4 機械学習モデル計算部、5 切削状態観測部、10 対象機械、11 コラム、12 主軸ヘッド、13 テーブル、14 工具、15 ワーク、21 第一のトルク推定部、22 物理モデル記憶部、41 第二のトルク推定部、42 機械学習モデル記憶部、91 プロセッサ、92 メモリ、93 処理回路、100 数値制御装置、411 機械学習部。

Claims (19)

  1. ワークを切削する工作機械のモータを制御する数値制御装置であって、
    前記モータの状態を観測した結果を示すモータ状態信号を出力するモータ状態観測部と、
    前記工作機械が切削を行っているか否かを示す切削状態信号を出力する切削状態観測部と、
    前記モータ状態信号および前記工作機械の物理モデルパラメータに基づき、前記モータのトルクの推定値である第一の推定トルクと前記第一の推定トルクの成分である物理状態変数とを出力する第一のトルク推定部と、
    前記第一の推定トルクと前記物理状態変数と前記モータ状態信号との少なくとも一つ、および前記切削状態信号から特徴量を生成し出力する特徴量生成部と、
    前記特徴量および機械学習モデルパラメータから機械学習補正量を算出し、算出した前記機械学習補正量が前記モータ状態信号に含まれる実トルクと前記第一の推定トルクとの差分に近づくように前記機械学習モデルパラメータを学習し、学習した前記機械学習モデルパラメータを記憶する機械学習モデル計算部と、
    を備えることを特徴とする数値制御装置。
  2. 前記特徴量生成部は、前記第一の推定トルクと、前記物理状態変数と、前記モータ状態信号と、前記切削状態信号と、前記工作機械に使用される工具についての情報である工具情報と、前記工作機械における加工条件についての情報である加工情報とを記憶する記憶装置を有し、前記記憶装置に記憶された情報の中から前記特徴量とする情報を抽出する、
    ことを特徴とする請求項1に記載の数値制御装置。
  3. 前記機械学習モデル計算部は、前記切削が行われているときにおける入出力に基づいた学習による前記機械学習モデルパラメータと、前記切削が行われていないときにおける入出力に基づいた学習による前記機械学習モデルパラメータとを記憶する、
    ことを特徴とする請求項2に記載の数値制御装置。
  4. 前記機械学習モデル計算部は、前記切削が行われていないときにおける入出力に基づいた学習による前記機械学習モデルパラメータから算出した前記機械学習補正量を前記第一の推定トルクに加算することによって第二の推定トルクを算出し、前記実トルクと算出された前記第二の推定トルクとの差分を監視し、前記差分に基づいて異常を検知する、
    ことを特徴とする請求項3に記載の数値制御装置。
  5. 前記機械学習モデル計算部は、前記切削が行われていないときにおける入出力に基づいた学習による前記機械学習モデルパラメータから算出した前記機械学習補正量を前記第一の推定トルクに加算することによって第二の推定トルクを算出し、前記実トルクと算出された前記第二の推定トルクとの差分である切削負荷トルクを求める、
    ことを特徴とする請求項3に記載の数値制御装置。
  6. 前記機械学習モデル計算部は、前記切削が行われているときにおける入出力に基づいた学習による前記機械学習モデルパラメータから算出した前記機械学習補正量を前記第一の推定トルクに加算することによって第二の推定トルクを算出し、前記実トルクと算出された前記第二の推定トルクとの差分を監視し、前記差分に基づいて前記工具の摩耗または欠損を検知する、
    ことを特徴とする請求項3に記載の数値制御装置。
  7. 前記記憶装置は、加工における複数の事象の各々を検知するための判定のいずれを行うかを示す判定情報をさらに記憶する、
    ことを特徴とする請求項2から6のいずれか一つに記載の数値制御装置。
  8. 前記工具情報は、前記工具の刃数の情報または前記工具の突き出し長さの情報を含むことを特徴とする請求項2から7のいずれか一つに記載の数値制御装置。
  9. 前記工具は、旋削加工に使用される工具であって、
    前記工具情報は、前記工具のチップ形状の情報または前記工具の逃げ角の情報を含むことを特徴とする請求項2から7のいずれか一つに記載の数値制御装置。
  10. 前記機械学習モデル計算部は、入出力関係に自己回帰項を含む機械学習としてニューラルネットワークを用いて前記機械学習補正量を算出し、かつ、前記機械学習モデルパラメータの学習時に誤差逆伝搬法を用いる、
    ことを特徴とする請求項1から9のいずれか一つに記載の数値制御装置。
  11. 前記機械学習モデル計算部は、前記自己回帰項として前記実トルクと前記第一の推定トルクとの差分を用いる、
    ことを特徴とする請求項10に記載の数値制御装置。
  12. 前記第一のトルク推定部は、前記モータ状態信号および前記物理モデルパラメータに基づき、運動方程式を用いて前記第一の推定トルクと前記物理状態変数とを出力する、
    ことを特徴とする請求項1から11のいずれか一つに記載の数値制御装置。
  13. 前記運動方程式は、前記モータ状態信号により求まる前記モータの速度を入力としてトルクの摩擦成分の推定値を出力する連続かつ滑らかな摩擦モデルを含む、
    ことを特徴とする請求項12に記載の数値制御装置。
  14. 前記実トルクと前記第一の推定トルクとの差分を低減するよう前記物理モデルパラメータを学習し記憶する物理モデル計算部
    をさらに備えることを特徴とする請求項1から11のいずれか一つに記載の数値制御装置。
  15. 前記第一のトルク推定部は、前記モータ状態信号および前記物理モデルパラメータに基づき、運動方程式を用いて前記第一の推定トルクと前記物理状態変数とを出力し、
    前記運動方程式は、前記モータ状態信号により求まる前記モータの速度を入力としてトルクの摩擦成分の推定値を出力する連続かつ滑らかな摩擦モデルを含み、
    前記物理モデル計算部は、前記摩擦モデルの係数を前記物理モデルパラメータとして学習し記憶する、
    ことを特徴とする請求項14に記載の数値制御装置。
  16. 前記物理状態変数に、前記摩擦モデルが含まれる、
    ことを特徴とする請求項15に記載の数値制御装置。
  17. 前記物理モデル計算部は、前記物理モデルパラメータの学習において、前記摩擦モデルの係数および他の前記物理モデルパラメータを交互に推定する、
    ことを特徴とする請求項16に記載の数値制御装置。
  18. 前記物理モデル計算部は、前記物理モデルパラメータの学習において、最小二乗法、正則化最小二乗法、非線形最小二乗法、またはカルマンフィルタを用いる、
    ことを特徴とする請求項16または17に記載の数値制御装置。
  19. ワークを切削する工作機械のモータを制御する数値制御装置であって、
    前記モータの状態を観測した結果を示すモータ状態信号を出力するモータ状態観測部と、
    前記工作機械が切削を行っているか否かを示す切削状態信号を出力する切削状態観測部と、
    前記モータ状態信号および前記工作機械の物理モデルパラメータに基づき、前記モータのトルクの推定値である第一の推定トルクと前記第一の推定トルクの成分である物理状態変数とを出力する第一のトルク推定部と、
    前記第一の推定トルクと前記物理状態変数と前記モータ状態信号との少なくとも一つ、および前記切削状態信号から特徴量を生成し出力する特徴量生成部と、
    前記特徴量および機械学習モデルパラメータから前記モータ状態信号に含まれる実トルクと前記第一の推定トルクとの差分に近づくように算出された機械学習補正量を前記第一の推定トルクに加算して第二の推定トルクを出力する第二のトルク推定部と、
    を備えることを特徴とする数値制御装置。
JP2021531611A 2021-01-26 2021-01-26 数値制御装置 Active JP6949284B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/002683 WO2022162740A1 (ja) 2021-01-26 2021-01-26 数値制御装置

Publications (2)

Publication Number Publication Date
JP6949284B1 true JP6949284B1 (ja) 2021-10-13
JPWO2022162740A1 JPWO2022162740A1 (ja) 2022-08-04

Family

ID=78001457

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021531611A Active JP6949284B1 (ja) 2021-01-26 2021-01-26 数値制御装置

Country Status (4)

Country Link
JP (1) JP6949284B1 (ja)
CN (1) CN116635802A (ja)
DE (1) DE112021006961T5 (ja)
WO (1) WO2022162740A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7343735B1 (ja) * 2023-04-07 2023-09-12 ファナック株式会社 加工シミュレーション装置及び加工シミュレーション方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014002461A (ja) * 2012-06-15 2014-01-09 Mitsubishi Electric Corp 数値制御装置
JP2017177255A (ja) * 2016-03-29 2017-10-05 ソニー株式会社 制御装置及び制御方法
JP2019000942A (ja) * 2017-06-15 2019-01-10 ファナック株式会社 学習装置、制御装置及び制御システム
WO2020213062A1 (ja) * 2019-04-16 2020-10-22 三菱電機株式会社 モータ制御装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5209810B1 (ja) 2011-07-27 2013-06-12 ファナック株式会社 イナーシャと摩擦係数とばね定数を同時に推定する機能を備える電動機の制御装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014002461A (ja) * 2012-06-15 2014-01-09 Mitsubishi Electric Corp 数値制御装置
JP2017177255A (ja) * 2016-03-29 2017-10-05 ソニー株式会社 制御装置及び制御方法
JP2019000942A (ja) * 2017-06-15 2019-01-10 ファナック株式会社 学習装置、制御装置及び制御システム
WO2020213062A1 (ja) * 2019-04-16 2020-10-22 三菱電機株式会社 モータ制御装置

Also Published As

Publication number Publication date
CN116635802A (zh) 2023-08-22
JPWO2022162740A1 (ja) 2022-08-04
DE112021006961T5 (de) 2023-11-30
WO2022162740A1 (ja) 2022-08-04

Similar Documents

Publication Publication Date Title
CN113748597B (zh) 电动机控制装置
JP6411380B2 (ja) ロボットとその環境との衝突の検出を改善する方法、同方法を実施するシステムおよびコンピュータプログラム製品
Bona et al. Friction compensation in robotics: an overview
Eski et al. Fault detection on robot manipulators using artificial neural networks
JP6567205B1 (ja) 機械学習装置、補正パラメータ調整装置および機械学習方法
JP6443311B2 (ja) 制御装置、制御プログラムおよび記録媒体
JP6324641B1 (ja) 異常診断装置及び異常診断方法
US20120022690A1 (en) Robot control apparatus
Makarov et al. Adaptive filtering for robust proprioceptive robot impact detection under model uncertainties
CN113365788B (zh) 作业判别装置及作业判别方法
CN111347421A (zh) 用于扭矩估计的方法和装置
KR102113544B1 (ko) 로봇 및 로봇 운영 방법
US10962957B2 (en) Collision position estimation device and machine learning device
Sotoudehnejad et al. Counteracting modeling errors for sensitive observer-based manipulator collision detection
JP6949284B1 (ja) 数値制御装置
CN112109080A (zh) 调整辅助装置
CN114080304B (zh) 控制装置、控制方法及控制程序
US11579000B2 (en) Measurement operation parameter adjustment apparatus, machine learning device, and system
Zhang et al. Model-based design of the vehicle dynamics control for an omnidirectional automated guided vehicle (AGV)
JP6906711B1 (ja) 摩擦補償装置、衝突検知装置、トルクフィードフォワード演算装置およびロボット制御装置並びに摩擦補償方法
CN114800525A (zh) 机器人碰撞检测方法、系统、计算机及可读存储介质
CN115847420A (zh) 一种针对运动目标的机械臂视觉跟踪控制方法及系统
JP7505695B2 (ja) モータ制御装置
Sorrentino et al. UKF-Based Sensor Fusion for Joint-Torque Sensorless Humanoid Robots
US20230286150A1 (en) Robot control device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210602

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210602

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210824

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210921

R150 Certificate of patent or registration of utility model

Ref document number: 6949284

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250