(57)【要約】【課題】機械学習により工作機械の熱変位補正を行う場合において、工作機械の個体差や経年変化により生じる予測値のズレを補正することが可能な数値制御装置を提供する。【解決手段】工作機械の熱変位量の推定値を補正する数値制御装置１００は、工作機械の温度に関する情報と熱変位に関する情報との相関関係を学習した学習モデルを有し、工作機械から温度に関する情報を取得し、温度に関する情報と前記学習モデルとに基づいて熱変位の推定値を算出する推定部１１０と、工作機械から位置決め情報を取得する補正条件取得部１２０と、熱変位の推定値を位置決め情報に基づいて補正する補正部１３０と、を有する。【選択図】図１
2019025552.tif 000002
【特許請求の範囲】
【請求項１】
工作機械の熱変位量の推定値を補正する数値制御装置であって、
前記工作機械の温度に関する情報と熱変位に関する情報との相関関係を学習した学習モデルを有し、前記工作機械から温度に関する情報を取得し、前記温度に関する情報と前記学習モデルとに基づいて熱変位の推定値を算出する推定部と、
前記工作機械から位置決め情報を取得する補正条件取得部と、
前記熱変位の推定値を前記位置決め情報に基づいて補正する補正部と、を有する
数値制御装置。
【請求項２】
前記補正部は、前記工作機械から取得した位置決め情報と、位置決め情報の比較基準値と、の差分を、前記熱変位の推定値に対して加算すること又は前記熱変位の推定値から減算することにより、前記補正を行う
請求項１記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は数値制御装置に関し、特に機械学習により工作機械の熱変位補正を行う場合において、工作機械の個体差や経年変化により生じる予測値のズレを補正することが可能な数値制御装置に関する。
【背景技術】
【０００２】
工作機械がワークを加工する際に発生する熱により、工作機械各部には熱変位が発生する。例えばスピンドルモータの発熱により、主軸や送り軸に熱変位が発生する。特許文献１には、工作機械の温度と熱変位との相関についてニューラルネットワークによる機械学習を行い、その学習モデルを用いて動作中の工作機械における熱変位を予測して動作を補正する数値制御装置が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平０６−００８１０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、工作機械の個体差や各部の経年劣化等が原因となり、当初作成した学習モデルによる熱変位の予測値と、稼働中の工作機械における実際の熱変位量と、の間に差異が生じることがある。すなわち学習モデルによる予測精度が低下し得る。そこで従来は、随時、学習をやり直したり、追加学習を行ったりすることによって学習モデル自体を更新し、予測精度を維持していた。
【０００５】
ところが、学習モデルを更新するには、温度データと熱変位量を取得し、学習モデルを構築するための工数と情報処理リソースが必要となる。こうした工数の増加は工場の生産性を低下させる要因となる。また、学習モデルの構築処理は多大な情報処理リソースを必要とするため、処理性能の低い数値制御装置では当該処理を実施することが困難である。
【０００６】
本発明はこのような問題点を解決するためになされたものであって、機械学習により工作機械の熱変位補正を行う場合において、工作機械の個体差や経年変化により生じる予測値のズレを補正することが可能な数値制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一実施の形態にかかる数値制御装置は、工作機械の熱変位量の推定値を補正する数値制御装置であって、前記工作機械の温度に関する情報と熱変位に関する情報との相関関係を学習した学習モデルを有し、前記工作機械から温度に関する情報を取得し、前記温度に関する情報と前記学習モデルとに基づいて熱変位の推定値を算出する推定部と、前記工作機械から位置決め情報を取得する補正条件取得部と、前記熱変位の推定値を前記位置決め情報に基づいて補正する補正部と、を有する。
本発明の一実施の形態にかかる数値制御装置は、前記補正部は、前記工作機械から取得した位置決め情報と、位置決め情報の比較基準値と、の差分を、前記熱変位の推定値に対して加算すること又は前記熱変位の推定値から減算することにより、前記補正を行う。
【発明の効果】
【０００８】
本発明によれば、機械学習により工作機械の熱変位補正を行う場合において、工作機械の個体差や経年変化により生じる予測値のズレを補正することが可能な数値制御装置を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】数値制御装置１００の構成を示すブロック図である。
【図２】位置決め情報の取得方法の一例を示す図である。
【図３】数値制御装置１００の動作を示すフローチャートである。
【図４】情報処理装置２００の構成を示すブロック図である。
【図５】熱変位補正装置１の構成を示すブロック図である。
【図６】熱変位補正装置１の構成を示すブロック図である。
【図７Ａ】ニューロンを説明する図である。
【図７Ｂ】ニューラルネットワークを説明する図である。
【発明を実施するための形態】
【００１０】
本発明の実施の形態について、図面を用いて説明する。
図１は、本発明の実施の形態にかかる数値制御装置１００の機能構成を示すブロック図である。数値制御装置１００は、典型的には中央処理装置（ＣＰＵ）、記憶装置、入出力装置等を有するコンピュータである。ＣＰＵが記憶装置に格納されたプログラムを読み出して実行することにより、後述の各処理部が論理的に実現される。数値制御装置１００は処理部として推定部１１０、補正条件取得部１２０、補正部１３０を有する。
【００１１】
推定部１１０は、情報処理装置２００により予め作成された学習モデルを用いて、工作機械各部の温度に基づき熱変位量を推定する。情報処理装置２００は、数値制御装置１００であっても良く、数値制御装置１００の外部の情報処理装置であっても良い。情報処理装置２００による学習モデルの作成方法については後述する。推定部１１０は情報処理装置２００が備える機械学習装置３００を推定モードで使用することにより、工作機械の温度に基づく熱変位量の予測値を得る。
【００１２】
補正条件取得部１２０は、工作機械各部の変位量を取得する。ここで補正条件取得部１２０が取得する変位量は、加工に伴う熱に起因するものでなく、工作機械の個体差や経年劣化に起因するものである。補正条件取得部１２０は、例えばタッチプローブを有する。タッチプローブは、所定のタイミングで、テーブル上に予め定められた位置決め点を接触し、機械座標系から見た位置決め点の座標を出力する。補正条件取得部１２０は、この座標を、学習モデルにより推定される熱変位量の補正条件として取得する。
【００１３】
図２を用いて、位置決め点の取得についてさらに説明する。工作機械の主軸の先端にはタッチプローブが取り付けられる。タッチプローブは接触点の座標を外部に出力する。ここで出力される座標は、機械座標系から見た接触点の座標である。例えば工作機械は、加工開始前に、テーブル上などに予め定められた基準点をタッチプローブにより測定する。この測定を位置決め、位置決めにより取得される情報を位置決め情報と称する。位置決めにより取得される座標は加工開始前のものであるので、加工に伴う熱変位の影響を受けない。一方、位置決めによる基準点の測定結果は機械座標系から見た座標として表されるので、例えば工作機械やの個体差や経年劣化の影響を受けて変化し得る。本実施の形態では、補正条件取得部１２０は、位置決めにより測定された基準点の座標を、工作機械の個体差や経年劣化の影響を補正するための情報として取得する。
【００１４】
補正部１３０は、補正条件取得部１２０が取得した補正条件を用いて、推定部１１０の学習モデルが推定した熱変位量を補正する。すなわち補正部１３０は、推定部１１０の学習モデル自体を更新することなく、学習モデルによる予測値を補正することで、工作機械の個体差や経年変化により生じる予測値のズレを修正する。
【００１５】
ここで、本発明の理解を容易にするため、本発明の背景技術である情報処理装置２００による学習モデルの作成方法の一例について説明する。その後、本発明の実施の形態にかかる数値制御装置１００の動作についてより具体的に説明する。
【００１６】
図４は情報処理装置２００の要部を示す概略的なハードウェア構成図である。ＣＰＵ１１は、情報処理装置２００を全体的に制御するプロセッサである。ＣＰＵ１１は、ＲＯＭ１２に格納されたシステム・プログラムをバス２０を介して読み出し、該システム・プログラムに従って情報処理装置２００全体を制御する。ＲＡＭ１３には一時的な計算データや表示データ及び外部から入力された各種データ等が一時的に格納される。
【００１７】
不揮発性メモリ１４は、例えば図示しないバッテリでバックアップされるなどして、情報処理装置２００の電源がオフされても記憶状態が保持されるメモリとして構成される。図示しないインタフェースを介して入力された各種プログラムやデータが記憶されている。不揮発性メモリ１４に記憶されたプログラムやデータは、実行時／利用時にはＲＡＭ１３に展開されても良い。また、ＲＯＭ１２には、各種のシステム・プログラムがあらかじめ書き込まれている。
【００１８】
温度測定装置６０は、工作機械の各部の温度を計測する。温度測定装置６０は、例えば温度センサやサーモグラフィである。情報処理装置２００は、インタフェース１８を介して温度測定装置６０から温度データ（温度の測定値やサーモグラフィによる出力画像等）を受信し、ＣＰＵ１１に渡す。
【００１９】
形状測定装置７０は、工作機械の各部の形状を測定する。形状測定装置７０は、例えばマイクロメータ、変位センサである。情報処理装置２００は、インタフェース１９を介して形状測定装置７０から形状データ（工作機械の所定箇所の長さや座標値の変位量等）を受信し、ＣＰＵ１１に渡す。
【００２０】
インタフェース２１は、情報処理装置２００と機械学習装置３００とを接続するためのインタフェースである。機械学習装置３００は、機械学習装置３００全体を統御するプロセッサ３０１と、システム・プログラム等を記憶したＲＯＭ３０２、機械学習に係る各処理における一時的な記憶を行うためのＲＡＭ３０３、及び学習モデル等の記憶に用いられる不揮発性メモリ３０４を備える。機械学習装置３００は、インタフェース２１を介して情報処理装置２００で取得可能な各情報（温度データ、形状データ等）を観測することができる。
【００２１】
図５は、情報処理装置２００と機械学習装置３００の概略的な機能ブロック図である。機械学習装置３００は、工作機械の各部の温度データに対する、工作機械各部の形状データを、いわゆる機械学習により自ら学習するためのソフトウェア（学習アルゴリズム等）及びハードウェア（プロセッサ３０１等）を含む。情報処理装置２００が備える機械学習装置３００が学習するものは、温度データと形状データとの相関性を表すモデル構造に相当する。
【００２２】
図５に機能ブロックで示すように、情報処理装置２００が備える機械学習装置３００は、温度データを環境の現在状態を表す状態変数Ｓとして観測する状態観測部３０６と、形状データを判定データＤとして取得する判定データ取得部３０８と、状態変数Ｓと判定データＤとを用いて、温度データに形状データを関連付けて学習する学習部３１０とを備える。
【００２３】
状態観測部３０６は、例えばプロセッサ３０１の一機能として構成できる。或いは状態観測部３０６は、例えばプロセッサ３０１を機能させるためのＲＯＭ３０２に記憶されたソフトウェアとして構成できる。状態観測部３０６が観測する状態変数Ｓすなわち温度データは、温度測定装置６０が出力するものを取得することができる。温度測定装置６０は、典型的にはサーモグラフィである。サーモグラフィは、予め定められた１方向から撮影した画像データを出力しても良いし、ロボット等を用いて多方向から撮影した画像データのセットを出力しても良い。あるいは、温度測定装置６０は接触式又は非接触式温度計等であっても良い。
【００２４】
判定データ取得部３０８は、例えばプロセッサ３０１の一機能として構成できる。或いは判定データ取得部３０８は、例えばプロセッサ３０１を機能させるためのＲＯＭ３０２に記憶されたソフトウェアとして構成できる。判定データ取得部３０８が観測する判定データＤすなわち形状データは、形状測定装置７０が出力するものを取得することができる。形状測定装置７０は、典型的にはマイクロメータである。マイクロメータは工作機械の各部に設定され、例えば加工の度に計測値（長さ）を出力する。
【００２５】
学習部３１０は、例えばプロセッサ３０１の一機能として構成できる。或いは学習部３１０は、例えばプロセッサ３０１を機能させるためのＲＯＭ３０２に記憶されたソフトウェアとして構成できる。学習部３１０は、機械学習と総称される任意の学習アルゴリズムに従い、温度データと形状データとの相関関係を学習する。学習部３１０は、前述した状態変数Ｓと判定データＤとを含むデータ集合に基づく学習を反復実行することができる。
【００２６】
このような学習サイクルを繰り返すことにより、学習部３１０は温度データと形状データとの相関性を暗示する特徴を自動的に識別することができる。学習アルゴリズムの開始時には温度データと形状データとの相関性は実質的に未知であるが、学習部３１０は、学習を進めるに従い徐々に特徴を識別して相関性を解釈する。温度データと形状データとの相関性が、ある程度信頼できる水準まで解釈されると、学習部３１０が反復出力する学習結果は、現在状態（温度データ）に対して、形状データがどのようなものとなるべきかという推定を行うために使用できるものとなる。つまり学習部３１０は、学習アルゴリズムの進行に伴い、温度データと形状データとの相関性を最適解に徐々に近づけることができる。
【００２７】
上記したように、情報処理装置２００が備える機械学習装置３００は、状態観測部３０６が観測した状態変数Ｓと判定データ取得部３０８が取得した判定データＤとを用いて、学習部３１０が機械学習アルゴリズムに従い、形状データを学習するものである。状態変数Ｓは外乱の影響を受け難いデータで構成され、また判定データＤは一義的に求められる。したがって、情報処理装置２００が備える機械学習装置３００によれば、学習部３１０の学習結果を用いることで、温度データに対応する形状データを、演算や目算によらずに自動的に、しかも正確に求めることができるようになる。
【００２８】
上記構成を有する機械学習装置３００では、学習部３１０が実行する学習アルゴリズムは特に限定されず、機械学習として公知の学習アルゴリズムを採用できる。図６は、図５に示す情報処理装置２００の一形態であって、学習アルゴリズムの一例として教師あり学習を実行する学習部３１０を備えた構成を示す。教師あり学習は、入力とそれに対応する出力との既知のデータセット（教師データと称する）が予め大量に与えられ、それら教師データから入力と出力との相関性を暗示する特徴を識別することで、新たな入力に対する所要の出力（温度データに対する形状データ）を推定するための相関性モデルを学習する手法である。
【００２９】
図６に示す情報処理装置２００が備える機械学習装置３００において、学習部３１０は、状態変数Ｓから形状データを導く相関性モデルＭと予め用意された教師データＴから識別される相関性特徴との誤差Ｅを計算する誤差計算部３１１と、誤差Ｅを縮小するように相関性モデルＭを更新するモデル更新部３１２とを備える。学習部３１０は、モデル更新部３１２が相関性モデルＭの更新を繰り返すことによって温度データと形状データとの相関関係を学習する。
【００３０】
相関性モデルＭは、回帰分析、強化学習、深層学習などで構築することができる。相関性モデルＭの初期値は、例えば、状態変数Ｓと形状データとの相関性を単純化して表現したものとして、教師あり学習の開始前に学習部３１０に与えられる。教師データＴは、例えば、過去の温度データと形状データとの対応関係を記録することで蓄積された経験値（温度データと形状データとの既知のデータセット）によって構成でき、教師あり学習の開始前に学習部３１０に与えられる。誤差計算部３１１は、学習部３１０に与えられた大量の教師データＴから温度データと形状データとの相関性を暗示する相関性特徴を識別し、この相関性特徴と、現在状態における状態変数Ｓに対応する相関性モデルＭとの誤差Ｅを求める。モデル更新部３１２は、例えば予め定めた更新ルールに従い、誤差Ｅが小さくなる方向へ相関性モデルＭを更新する。
【００３１】
次の学習サイクルでは、誤差計算部３１１は、更新後の相関性モデルＭに従ってワークの加工行程及び検査行程を実行することにより得られた状態変数Ｓ及び判定データＤを用いて、それら状態変数Ｓ及び判定データＤに対応する相関性モデルＭに関し誤差Ｅを求め、モデル更新部３１２が再び相関性モデルＭを更新する。このようにして、未知であった環境の現在状態（温度データ）とそれに対応する状態（形状データ）との相関性が徐々に明らかになる。つまり相関性モデルＭの更新により、温度データと形状データとの関係が、最適解に徐々に近づけられる。
【００３２】
前述した教師あり学習を進める際に、例えばニューラルネットワークを用いることができる。図７Ａは、ニューロンのモデルを模式的に示す。図７Ｂは、図７Ａに示すニューロンを組み合わせて構成した三層のニューラルネットワークのモデルを模式的に示す。ニューラルネットワークは、例えば、ニューロンのモデルを模した演算装置や記憶装置等によって構成できる。
【００３３】
図７Ａに示すニューロンは、複数の入力ｘ（ここでは一例として、入力ｘ1〜入力ｘ3）に対する結果ｙを出力するものである。各入力ｘ1〜ｘ3には、この入力ｘに対応する重みｗ（ｗ1〜ｗ3）が掛けられる。これにより、ニューロンは、次の数１式により表現される出力ｙを出力する。なお、数２式において、入力ｘ、出力ｙ及び重みｗは、すべてベクトルである。また、θはバイアスであり、ｆkは活性化関数である。
【００３４】
【数１】
2019025552.tif 000003
【００３５】
図７Ｂに示す三層のニューラルネットワークは、左側から複数の入力ｘ（ここでは一例として、入力ｘ１〜入力ｘ３）が入力され、右側から結果ｙ（ここでは一例として、結果ｙ１〜結果ｙ３）が出力される。図示の例では、入力ｘ１、ｘ２、ｘ３のそれぞれに対応の重み（総称してｗ１で表す）が乗算されて、個々の入力ｘ１、ｘ２、ｘ３がいずれも３つのニューロンＮ１１、Ｎ１２、Ｎ１３に入力されている。
【００３６】
図７Ｂでは、ニューロンＮ１１〜Ｎ１３の各々の出力を、総称してｚ１で表す。ｚ１は、入カベクトルの特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルｚ１のそれぞれに対応の重み（総称してＷ２で表す）が乗算されて、個々の特徴ベクトルｚ１がいずれも２つのニューロンＮ２１、Ｎ２２に入力されている。特徴ベクトルｚ１は、重みＷ１と重みＷ２との間の特徴を表す。
【００３７】
図７Ｂでは、ニューロンＮ２１〜Ｎ２２の各々の出力を、総称してｚ２で表す。ｚ２は、特徴ベクトルｚ１の特徴量を抽出した特徴ベクトルと見なすことができる。図示の例では、特徴ベクトルｚ２のそれぞれに対応の重み（総称してＷ３で表す）が乗算されて、個々の特徴ベクトルｚ２がいずれも３つのニューロンＮ３１、Ｎ３２、Ｎ３３に入力されている。特徴ベクトルｚ２は、重みＷ２と重みＷ３との間の特徴を表す。最後にニューロンＮ３１〜Ｎ３３は、それぞれ結果ｙ１〜ｙ３を出力する。
【００３８】
情報処理装置２００が備える機械学習装置３００においては、状態変数Ｓを入力ｘとして、学習部３１０が上記したニューラルネットワークに従う多層構造の演算を行うことで、形状データを推定値（結果ｙ）として出力することができる。なおニューラルネットワークの動作モードには、学習モードと判定モードとがあり、例えば学習モードで学習データセットを用いて重みＷを学習し、学習した重みＷを用いて判定モードで形状データの判定を行うことができる。なお判定モードでは、検出、分類、推論等を行うこともできる。
【００３９】
このように、情報処理装置２００が作成する学習モデルによれば、信頼性の高い形状データ、すなわち熱変位量の予測値を得ることができる。一方で、情報処理装置２００による学習モデルを生成するには、多大な情報処理リソースが必要である。また、状態データＳ及び判定データＤの取得には多くの工数を要する。従来は、工作機械の個体差や経年劣化による予測精度の低下に対応するためには、個体を識別する情報や時間経過に関する情報を状態データＳとして入力して学習モデルを作成したり、オンライン追加学習により学習モデルを更新したりすることが必要であった。これは、学習モデルの作成に情報処理リソースを継続的に割く必要があり、現実的ではなかった。そこで本発明の実施の形態にかかる数値制御装置１００は、当初作成した学習モデルには手を加えることなく、学習モデルが出力する予測値を修正するというアプローチにより、必要な情報処理リソースを抑制する。
【００４０】
続いて、図３のフローチャートを用いて、本発明の実施の形態にかかる数値制御装置１００の動作について具体的に説明する。
Ｓ１：情報処理装置２００が、温度データと形状データとの相関関係を示す学習モデルを作成する。例えば情報処理装置２００は、工作機械の導入時又は製造時等にワークの加工を試行するなどして、十分な数の温度データと形状データとを取得し、これを状態変数Ｓ及び判定データＤとして機械学習装置３００に入力することで学習モデルを得る。
なおこの際、補正条件取得部１２０は一度位置決めを行い、その際の基準点の座標を取得し、位置決め情報の比較基準値として保存しておくと良い。
【００４１】
Ｓ２：数値制御装置１００の補正条件取得部１２０が、補正条件を取得する。例えば補正条件取得部１２０は、加工開始前に位置決めを行い、基準点の座標を取得する。
【００４２】
Ｓ３：推定部１１０が、情報処理装置２００により作成された学習モデルを用いて熱変位量を推定する。換言すれば、推定部１１０は、情報処理装置２００の機械学習装置３００を使用して、温度データに対応する形状データの推定値を得る。このときの機械学習装置３００の動作は以下の通りである。
工作機械の各部に設けられた温度測定装置６０から、機械学習装置３００の状態観測部３０６に、温度データが状態変数Ｓとして入力される。機械学習装置３００の学習部３１０は、予め作成された学習モデルに状態変数Ｓを入力し、状態変数Ｓに対応する形状データの推定値を出力する。ここで出力される形状データの内容は、温度変化に伴う工作機械各部の長さ又は座標の変位量である。
【００４３】
Ｓ４：補正部１３０が、推定部１１０が出力する形状データの推定値と、補正条件取得部１２０が出力する補正条件に基づいて、熱変位量を算出する。例えば、補正部１３０は、学習モデル作成時（典型的には工作機械の導入又は製造時）における基準点の座標を比較基準値として保持しており、この学習モデル作成時の基準点の座標と、現在（最近の加工開始前）に位置決めを行った際の基準点の座標との差分を算出して、補正量を計算する。そして、推定部１１０が出力する形状データの推定値に上記補正量を加算又は減算することで、補正後の推定値を算出する。
【００４４】
本実施の形態によれば、補正部１３０が、推定部１１０が出力する熱変位量の推定値を、補正条件取得部１２０が位置決め情報を用いて補正する。これにより、工作機械の個体差や経年変化により生じる熱変位量の予測値のズレを、多大な工数や情報処理リソースを要することなく、簡易、高速かつ正確に補正することができる。
【００４５】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例のみに限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
【００４６】
例えば上述の実施の形態では、補正条件取得部１２０が補正条件を取得するために立ち居プローブルを用いたが、本発明はこれに限定されず、工作機械の各部の個体差や経年劣化による変位を測定可能な種々の接触又は非接触センサ（レーザ、光、渦電流、磁気等）を用いることが可能である。
【符号の説明】
【００４７】
１００  数値制御装置
１１０  推定部
１２０  補正条件取得部
１３０  補正部
２００  情報処理装置
１１  ＣＰＵ
１２  ＲＯＭ
１３  ＲＡＭ
１４  不揮発性メモリ
１８，１９，２１  インタフェース
２０  バス
６０  温度測定装置
７０  形状測定装置
３００  機械学習装置
３０１  プロセッサ
３０２  ＲＯＭ
３０３  ＲＡＭ
３０４  不揮発性メモリ
３０６  状態観測部
３０８  判定データ取得部
３１０  学習部
３１１  誤差計算部
３１２  モデル更新部
３２０  判定出力部
３３０  データ取得部
【図１】
2019025552.tif 000004
【図２】
2019025552.tif 000005
【図３】
2019025552.tif 000006
【図４】
2019025552.tif 000007
【図５】
2019025552.tif 000008
【図６】
2019025552.tif 000009
【図７Ａ】
2019025552.tif 000010
【図７Ｂ】
2019025552.tif 000011