(58)【調査した分野】(Int.Cl.,DB名)
前記インデックス比較部が、前記対象軸インデックスと一致する前記補正モデルインデックスを見つけられなかった場合に、対応する補正モデルがないことを報知する報知部、を有する請求項2記載の熱変位補正装置。
いずれかの系統の軸組合せに変更が生じたことを検出し、前記熱変位補正設定部の他の部に、前記補正モデルの再設定を指示する軸切り替え判定部、を有する請求項2記載の熱変位補正装置。
前記軸切り替え判定部が、軸制御情報生成部が生成する制御軸情報データに基づき、前記軸組合せに変更が生じたことを検出した場合、前記対象軸インデックス生成部は、対象軸インデックスを再度生成する請求項6記載の熱変位補正装置。
前記工作機械の動作状態を表す前記動作状態データを記憶し、前記動作状態データを前記熱変位補正部に供給する動作状態データ記憶部、を備える請求項8記載の数値制御装置。
【背景技術】
【0002】
従来、工作機械の仕様に応じた機械情報を読み取り可能にし、機械情報に基づいて、熱変位補正のための推定パラメータ(補正モデル)を選択する技術が提案されている(例えば、特許文献1)。
この技術では、仕様の数が多い工作機械でも、各仕様における工作機械の熱変位補正量を推定するための補正量推定装置や、パラメータ自動選択装置等を備えることによって、各仕様に応じた機械情報に基づき、データベースからその仕様に属するパラメータを選択することができる。選択されたパラメータより各機械部分における推定熱変位を演算し、その推定熱変位を合算する技術である。
【0003】
また、複数の熱変位の補正モデルを切り替える際の熱変位補正量の急激な変化をキャンセルする技術が提案されている(例えば、特許文献2)。
この技術では、熱変位補正モデルとして、第1補正モデルと第2補正モデルとを備え、これらモデルを切り替える(例えば第1から第2に切り替える)際に、補正量の差分と第二補正モデルの補正量を用いて指令値の補正量を決定する(補正量の補完)。したがって、補正量の急激な変化をキャンセルすることができる技術である。なお、補正モデルの切り替えは座標位置に基づいて実行される。
【0004】
また、工作機械の熱変位に対して熱変位補正モデルと温度データとから熱変位を推定し、熱変位分の補正量を軸移動量に加える、熱変位補正機能が提案されている(例えば、特許文献3)。
この技術では、例えば、機械学習を用いて熱変位モデルを作成し、補正モデルと動作状態データ(温度データ等)から補正量を算出する。そして、推定値と実測値と差が閾値以下でない場合は、再度補正モデルを計算するという技術である。
【0005】
この技術の説明図が
図12に示されている。まず、工作機械1には、温度センサ2、変位センサ3が設けられており、温度と変位とを検出することができる。なお、ここで、工作機械1は、種々の工作機械が含まれ、例えばマシニングセンタ(x軸、y軸、z軸を備える)、旋盤(x軸、z軸のみを備える)等が含まれる。
【0006】
検出した温度と変位とを学習用データ4として用いて(熱変位)補正モデル計算5が実行される。補正モデル計算5とは、機械学習により熱変位補正モデル5−3を決定する計算処理である。具体的には、学習ソフト5−1が、学習用データ4に基づき機械学習5−2を行い、熱変位補正モデル5−3を作成する計算処理となる。
このような機械学習によって熱変位補正モデルを作成する手法の一つが、特許文献3(特開2018-111145)に開示されている。特許文献3に記載されているような手法で、教師データを作成することが好適な方法の一つである。学習ソフト5−1は、所定のコンピュータ上で実行してよい。なお、学習
用データ4は、工作に先立って予め取得しておいたデータであってよい。
【0007】
次に、求められた熱変位補正モデル5−3を利用して、実際の工作過程において、補正量の計算・出力6が実行される。この補正量の計算・出力6は、例えばCNC(Computerized Numerical Control)装置6−2が実行してよい。CNC装置6−2は工作機械1への指示(軸移動量)を算出して出力するが、その際、熱変位補正モデル5−3を利用して補正量を計算し、軸移動量に加える。このようにして補正した軸移動量を工作機械1に出力する。これによって工作機械1は、補正6−3された軸移動量に従って動作を実行する。一方、工作機械1には、温度センサ2が備えられており、マルチセンサI/Oユニット6−1がこの温度センサ2から温度を読み取り、CNC装置6−2に供給する。CNC装置6−2は、供給されてきた温度に基づき熱変位補正モデル5−3を利用して補正量計算・出力6を実行する。以下、同様の処理が
繰り返される。これによって、熱の影響の受けにくい工作が可能となる。このような処理はすでにあり、例えばAI熱変位補正と呼ばれる場合もある。
【発明の概要】
【発明が解決しようとする課題】
【0009】
このような技術によって、熱の影響を受けにくい工作がすることができるとされている。
しかし、特許文献3に記載された技術では、系統内の軸組合せ毎に補正モデルを変更する必要があるため、どの系統(軸組合せ)にどの補正モデルを利用するか、ユーザが手動で対応付ける必要がある。
【0010】
すなわち、
(1)加工前に、使用する系統と補正モデルとの対応付けが必要であり、系統数が増えると、「誤設定の増大」、「ユーザ負担の増加」、が発生する恐れがある。
(2)加工中に軸切り替え制御等を行い、軸組合せが変更された際に、軸組合せに応じて自動的に補正モデルを切り替えることが困難である。
という問題点がある。
この様子が、
図13に示されている。
図13においては、補正モデル1(7−1)、補正モデル(7−2)、補正モデル3(7−3)、補正モデル(7−4)の4種類の補正モデルが準備されている例を示す。そして、系統1(8)は、X1軸10と、Z1軸11とがあることが示されており、系統2(9)は、X2軸12と、Z2軸13とがあることが示されている。
そして、加工処理を実行する前に、この系統1(8)のX1軸10とZ1軸11とに対して、補正モデルを対応付ける必要がある。同様に、加工処理を実行する前に、この系統2(9)のX2軸
12とZ
2軸
13とに対して、補正モデルを対応付ける必要がある。そして、加工中に軸の切り替え等があった場合には、ユーザが妥当な補正モデルを選択して切り替える必要があり、ユーザの負担は大きくなる傾向にあると考えられる。
【0011】
また、特許文献1、2、3に関してはいずれも、
(3)系統と軸組合せに応じて補正モデルを自動的に設定することは考慮されていない。
(4)工作機械の軸組合せ情報をリアルタイムに取得して加工中でも自動的に補正モデルの切り替えを行うことは想定されていない。
したがって、特許文献1、2、3によれば、ユーザの手による作業が多くユーザの負担は大である。
【0012】
本発明は、このような事情に鑑み、系統内の軸組合せにインデックスを設定し、このインデックスで適切な補正モデルを選択することができる熱変位補正装置を提供することを目的とする。また、係る熱変位補正装置を備えた数値制御装置を提供することを目的とする。
【課題を解決するための手段】
【0013】
本発明に係る熱変位補正装置
は、制御軸が識別可能な制御軸情報データから、
系統毎に熱変位補正の実行対象である軸組合せにインデックスを設定し、前記インデックスと一致する補正モデルのインデックスを見出すことによって、対応する補正モデルを選択する熱変位補正設定部(例えば、後述の熱変位補正設定部210)と、熱変位と相関を持つ動作状態データと補正モデルとから補正量を算出する熱変位補正部(例えば、後述の熱変位補正部220)と、を有する。
【0014】
前記熱変位補正設定部は、前記制御軸情報データに基づき、系統毎に軸組合せを示す対象軸インデックスを生成する対象軸インデックス生成部(例えば、後述の対象軸インデックス生成部210−1)と、補正モデルと、補正を行いたい軸組合せを示す補正モデルインデックスとのセットを記憶する補正モデルセット記憶部(例えば、後述の補正モデルセット記憶部210−2)と、前記生成された対象軸インデックスと、前記補正モデルインデックスとを比較するインデックス比較部(例えば、後述のインデックス比較部210−3)と、前記インデックス比較部が、前記対象軸インデックスと、前記補正モデルインデックスと、が一致した場合に、前記補正モデルインデックスにかかる前記補正モデルを、前記対象軸インデックスが生成された前記系統に対して設定する補正モデル設定部(例えば、後述の補正モデル設定部210−4)と、を有してよい。
【0015】
前記対象軸インデックスは、各軸を示す対象軸番号を、少なくとも系統内の軸の数だけ含むベクトルであり、前記対象軸番号は、系統番号と軸番号とから算出され、対応する軸を識別できる番号であってよい。
【0016】
前記補正モデルインデックスは、各軸を示す補正軸番号を、少なくとも系統内の軸の数だけ含むベクトルであり、前記補正軸番号は、系統番号と軸番号とから算出され、対応する軸を識別できる番号であってよい。
【0017】
前記インデックス比較部が、前記対象軸インデックスと一致する前記補正モデルインデックスを見つけられなかった場合に、対応する補正モデルがないことを報知する報知部、を有してもよい。
【0018】
いずれかの系統の軸組合せに変更が生じたことを検出し、前記熱変位補正設定部の他の部に、前記補正モデルの再設定を指示する軸切り替え判定部(例えば、後述の軸切り替え判定部210−5)を有してよい。
【0019】
前記軸切り替え判定部が、軸制御情報生成部が生成する制御軸情報データに基づき、前記軸組合せに変更が生じたことを検出した場合、前記対象軸インデックス生成部は、対象軸インデックスを再度生成してよい。
【0020】
また、工作機械に対して指令を出力する数値制御装置(例えば、後述の数値制御装置200)であって、これまで述べた熱変位補正装置
が算出する前記補正量を、前記指令に加え、補正された前記指令を工作機械に対して出力する軸制御部(例えば、後述の軸制御部250)、を有する数値制御装置であってよい。
【0021】
また、前記数値制御装置(例えば、後述の数値制御装置200)は、前記工作機械の動作状態を表す前記動作状態データを記憶し、前記動作状態データを前記熱変位補正部に供給する動作状態データ記憶部(例えば、後述の動作状態データ記憶部230)、を備えてよい。
【発明の効果】
【0022】
本発明によれば、系統内の軸組合せ毎に適切な補正モデルを自動的に設定することができる。また、加工中に軸切り替え制御で系統内の軸組合せが変更された場合に、軸組合せに応じて自動的に補正モデルを切り替えることができる。
【発明を実施するための形態】
【0024】
以下、本発明の実施形態を図面に基づいて説明する。
[原理]
図1は、本発明の原理図である。
(1)まず、学習ソフトが、各補正モデルに、補正したい系統と、補正したい軸組合せを示す「補正モデルインデックス」を付与する。具体的には、「系統」と「軸番号」に対応して補正モデルインデックスを作成して、各補正モデルに付与する。この様子が
図1の(1)に示されている。このような学習ソフトによる機械学習の仕組みは、例えば、上述した特許文献3(特開2018-111145号公報)に開示されている手法を用いてよい。
【0025】
図1の(1)では、ユーザが、学習ソフトを利用して各補正モデルに対して適用したい系統と軸番号とを入力する。なお、学習ソフトは所定のコンピュータ上で動作しているものとする。所定のコンピュータは、
図12でに示すように、数値制御装置とは別個のコンピュータであってよい。
ユーザが、補正モデルに対して、「系統番号」pと、「軸番号」a1、a2、a3とを入力すると、学習ソフトは、これら「系統」と、「軸番号」とから補正モデルインデックスを算出し、算出した補正モデルインデックスを補正モデルに付与する。
図1のAに示すように、補正モデルインデックスはベクトルで表され、補正モデルインデックス:Bは、
b1=100*p+a1
b2=100*p+a2
b3=100*p+a3
を用いて、(b1、b2、b3)と表される。このようにして、学習ソフトは、補正モデルインデックスを各補正モデル毎に算出して付与し、補正モデルのデータファイル100を作成する。この補正モデルのデータファイル100中には、
図1の例では、補正モデル1(100−1)として、補正を行うための補正パラメータと、補正モデルインデックスB1={b11、b21、b31}が示されている。また、補正モデル2(100−2)として、補正を行うための補正パラメータと、補正モデルインデックスB2={b12、b22、b32}が示されている。以下、補正モデルn(100−n)も同様である。
【0026】
このような補正モデルインデックスを各補正モデルに付与しているため、系統と軸
番号とに自動的に対応付けることが可能となったものである。
なお、ここでは、軸の数は「3」である場合を例にして説明したが、軸の数は何個でもよい。また、軸の数が少ない系統がある場合は、使用しない軸に相当する部分の上記インデックスは「0」としておいてもよい。
【0027】
(2)次に、数値制御装置側では、各系統の軸組合せに関する「対象軸インデックス」を作成する。具体的には、「系統」毎の制御軸番号の組合せを算出して、その軸組合せを示す「対象軸インデックス」を付与する。この様子が
図1の(2)に示されている。
図1の(2)では、数値制御装置側が、工作機械の系統毎の制御軸番号の組合せから、対象軸インデックスの算出を行う。なお、数値制御装置は、予め系統の軸番号に関する情報は取得しているものとする。
【0028】
具体的には、
図1のBに示すように、対象軸インデックスはベクトルで表され、対象軸インデックス:Dは、
d1=100*p+a1
d2=100*p+a2
d3=100*p+a3
を用いて、(d1、d2、d3)と表される。pや、a1、a2、a3の意味は、補正モデルインデックスの場合と同様である。このようにして数値制御装置側は、対象軸インデックスを系統毎に算出して付与し、系統毎の軸組合せに対する対象軸インデックスファイル101を作成する。この対象軸インデックスファイル101の中には、
図1の例では、系統1
の対象軸インデックス(101−1)として、
D1={d11、d21、d31}が示されている。また、系統2
の対象軸インデックス(101−2)として、
D2={d12、d22、d32}が示されている。以下、系統m
の対象軸インデックス(10
1−m)も同様である。
このような対象軸インデックスを各系統に付与しているため、補正モデルインデックスと比較しやすく、対応する補正モデルと比較を行いやすくなる。
【0029】
(3)次に、補正モデルインデックスと対象軸インデックスとを比較する。この比較は、例えば数値制御装置が実行してよい。数値制御装置が、補正モデルのデータファイル100の内容と、対象軸インデックスファイル101の内容と、を比較し、系統毎に一致する補正モデルインデックスを探す。
【0030】
(4)そして、系統毎に補正モデルインデックスが対象軸インデックスと一致した補正モデルを、当該系統に設定する。この処理は、数値制御装置が実行してよい。以降、数値制御装置は、設定された補正モデルに基づき工作機械の制御を実行する。
【0031】
[第1実施形態]
図2は、第1実施形態に係る数値制御装置200のブロック図である。
図3及び
図4は、工作機械の制御軸に関するパラメータから対象軸インデックスを作成する動作の説明図である。
図5及び
図6は、学習ソフトで設定した各補正モデルの補正モデルインデックスと、対象軸インデックスとを比較し、各系統に補正モデルを設定する動作の説明図である。
図7は第1実施形態の数値制御装置200の動作を表すフローチャートである。
【0032】
図2に示すように、第1実施形態に係る数値制御装置200は、熱変位補正設定部210、熱変位補正部220、動作状態データ記憶部230、軸制御情報生成部240、軸制御部250を備えている。
熱変位補正設定部210は、対象軸インデックスと、補正モデルインデックスとを比較し、その対象軸インデックスに対応した補正モデルを設定する。このような動作によって、熱変位補正設定部210は、制御軸が識別可能な制御軸情報データから熱変位補正を行いたい軸組合せに対応する補正モデルを選択していることになる。
また、熱変位補正設定部210は、対象軸インデックス生成部210−1と、補正モデルセット記憶部210−2と、インデックス比較部210−3と、補正モデル設定部210−4と、軸切り替え判定部210−5とを備えている
。
【0033】
対象軸インデックス生成部210−1は、これまで説明した対象軸インデックスを生成する。対象軸インデックス生成部210−1は、対象軸インデックスの生成に必要な情報である系統番号と軸番号とを、制御軸情報データから取得する。制御軸情報データは、後述する軸制御情報生成部240が生成するデータであって、制御軸が識別可能なデータである。
インデックス比較部210−3は、生成した対象軸インデックスと、補正モデルのセットとを比較し、合致する補正モデルを選択する。なお、補正モデルのセットは、補正モデルセット記憶部210−2が記憶しており、インデックス比較部210−3に供給する。
【0034】
インデックス比較部210−3は合致した補正モデルを補正モデル設定部210−4に送る。
補正モデル設定部210−4は、送られてきた補正モデルを受信し、当該数値制御装置200がその系統に対して使用する補正モデルとして設定する。設定は、例えば内部の記憶手段に補正モデルの内容を書き込んでおき、熱変位補正部22
0に提供する等の処理で実行される。補正モデル設定部210−4は、このような処理を実行する。
補正モデルセット記憶部210−2は、補正モデルセットを記憶し、インデックス比較部210−3に供給する。
軸切り替え判定部210−5は、加工中に軸が変更されたことを判定する。その詳細な動作は第2実施形態で説明する。
【0035】
熱変位補正部220は、設定された補正モデルに基づき、工作機械に供給される指令に、所定の補正を実行する。すなわち、熱変位補正部220は、熱変位と相関を持つ動作状態データと、補正モデルと、から補正量を算出し、この補正量を軸制御部250に供給する。これによって熱による変位の補正を実行することができる。ここで、動作状態データは、動作状態データ記憶部230から提供を受け、補正モデルは、上記補正モデル設定部210−4によって設定された補正モデルを使用する。
熱変位補正部220は、補正量算出部220−1と、補正実行部220−2と、を備える。
補正量算出部220−1は、動作状態データと、補正モデルとから、補正量を算出し、この補正量を補正実行部220−2に供給する。
【0036】
動作状態データ記憶部230は、系統(工作機械)がどのような動作状態(温度も含む)にあるのかを記憶するデータ記憶部である。この動作状態データ記憶部230は、動作状態データを、補正量算出部220−1に提供する。また、この動作状態データは、工作機械の動作状態を示すデータであるが、特に温度も含むデータであり、熱変位と相関を持つデータである。この温度に基づき、熱変位の補正を行うことができる。また、動作状態データは、温度以外の、軸のトルクや回転数、その他動作状態を示すデータであればどのようなデータを含んでいてもよい。
軸制御情報生成部240は、その系統がどのような軸を有するかに関する情報である制御軸情報データを生成する。制御軸情報データは、対象軸インデックス生成部210−1に供給され、対象軸インデックスを生成するのに利用される。また、制御軸情報データは、軸制御部250にも提供され、軸への指令の供給に利用される。
【0037】
軸制御部250は、工作機械への指令を出力する手段であり、基本的には、加工プログラムに基づく指令をその系統の工作機械に供給する。この際、その系統の軸制御情報を利用して実行する。また、温度による補正量を補正実行部
220−2から受信し、指令にその補正量を加えてから、工作機械へ指令を供給する。
【0038】
<熱変位補正装置と数値制御装置>
本文の実施形態では、少なくとも熱変位補正設定部210と熱変位補正部220とを含む部分であって、補正量を算出する構成を、熱変位補正装置と呼ぶ。この熱変位補正装置は、さまざまな用途に利用でき、工作機械に内蔵してもよいし、ロボットに搭載してもよい。
この熱変位補正装置を含み、工作機械への指令を出力する数値制御装置として構成することもできる。そのような構成の数値制御装置200が
図2のブロック図に示されている。
図2のブロック図によれば、熱変位補正装置の補正量を指令に加算する軸制御部250は、補正された指令を工作機械に出力し、数値制御装置として動作することができる。また、
図2のブロック図において、動作状態データ記憶部230は、工作機械の動作状態を動作状態データとして記憶し、この動作状態データを熱変位補正部220(の補正量算出部
220−1)に供給する。これによって、補正量をより正確に算出することができ、熱に対する性能が向上した数値制御装置200を提供することができる。
【0039】
<対象軸インデックスの作成>
対象軸インデックスの作成の説明図が
図3及び
図4に示されている。
図3に示すように、系統1(300)と、系統2(301)の2系統がある例を説明する。系統1(300)には、タレット1を移動させるX1軸302と、ワーク1を移動させるZ1軸303がある。系統2(301)には、タレット2を移動させるX2軸304と、ワーク2を移動させるZ2軸305がある。
【0040】
この状態において、各軸に対する、絶対系統番号と、相対軸番号とが
図4に示されている。
図4に示すように、例えばZ1軸は、絶対系統番号が1であり、相対軸番号が
2であることが示されている。他の軸に関しては
図3、
図4の通りである。対象軸インデックスの各数値dを、対象軸番号と呼べば、対象軸インデックスを、[第1対象軸番号、第2対象軸番号、第3対象軸番号]と表される。
【0041】
図1の通り、対象軸番号(d)=絶対系統番号×100+相対軸番号であるから、
図4の例によれば、
系統1の対象軸インデックス = [101、102、0]
系統2の対象軸インデックス = [201、202、0]
となる。なお、第3対象軸番号まで準備しているのは、マシニングセンタ等を考慮したものであり、3軸未満の場合は、上記の通り、0等をいれておいてよい。対象軸番号は、このように、(絶対)系統番号と(相対)軸番号とから算出される数であり、対応する軸を識別できる数である。
このように、第1実施形態においては、軸毎に絶対系統番号と、相対軸番号とが予め決定され、付与されているものとする。なお、ここで相対軸番号は、当該系統中で、何番目の軸かを表す順番であり、相対的なものである。一方、系統の番号は、絶対的な順番を表す。
【0042】
<補正モデルの設定>
次に、補正モデルの設定の説明図が
図5、
図6に示されている。上述したように学習ソフトで設定した各補正モデルの補正モデルインデックスと、上述した対象軸インデックスとを比較して、各系統に補正モデルを設定する。
図5に示すように、絶対系統番号と、相対軸番号と、から補正モデルが算出される。
図5の例では、補正モデル1(310−1)、補正モデル2(310−2)、補正モデル3(310−3)、補正モデル4(310−4)が示されており、それらを合わせて補正モデルセット310と呼ぶ。
【0043】
ここで、補正モデルインデックスの要素であるb(
図1参照)を、補正軸番号と呼び、補正モデルインデックス=[第1補正軸番号、第2歩正軸番号、第3補正軸番号]と規定すると、補正軸番号=絶対系統番号×100+相対軸番号であるから(
図1参照)、例えば、補正モデル1の補正モデルインデックスは、[101、102、0]と表される。以下、補正モデル2、補正モデル3、補正モデル4も同様に算出される。具体的な数値は
図5を参照されたい。
【0044】
なお、必ずしもすべての組合せについて補正モデル、補正モデルのインデックスを準備しなければいけないわけではない。事実上、実用に供することができるパターンが数種類だけであることもある。そのような場合は、実際に使用する可能性のある組合せについてのみ、補正モデル、補正モデルインデックスを算出しておいてもよい。このような補正モデル、補正モデルインデックスは、補正モデルセット記憶部210−2に記憶させておいてもよい。そして、インデックス比較部210−3において、対象軸インデックスと比較される。
【0045】
ここで、
図6に示すように、系統1(320)と、系統2(321)の2系統がある例を説明する。系統1(320)には、タレット1を移動させるX1+C11軸322と、ワーク1を移動させるZ1+C21軸323とがある。系統2(321)には、タレット2を移動させるX2+C12軸324と、ワーク2を移動させるZ2+C22軸
325とがある。
【0046】
なお、ここでC11、C21、C12、C22は、補正量算出部220−1が出力した補正量を表し、補正実行部220−2が「指示」中に加算するものである。
この状態において、系統1(320)の対象軸インデックスは、{101 102 0}である。また、系統2(321)の対象軸インデックスは、{201 202 0}である。これらと、補正モデルインデックスとを比較すれば、系統1(320)には、補正モデル1の補正モデルインデックス{101 102 0}(
図5参照)が合致し、系統2(321)には、補正モデル2の補正モデルインデックス{201 202 0}が合致することが理解されよう。この比較は、インデックス比較部210−3が実行する。
【0047】
この結果、系統1(320)には、補正モデル1(100−1)(310−1)が設定され、系統2(321)には、補正モデル(100−2)(310−2)が設定される。このような設定は、補正モデル設定部210−4が実行する。
【0048】
<数値制御装置の動作>
図7には、数値制御装置の動作例を示すフローチャートが示されている。
まず、ステップS1において、熱変位補正設定を開始する。これは、系統に対して使用する補正モデルの設定を開始するということである。
ステップS2において、初期値を設定する。系統番号を表すiが1であり、補正モデルを表すjも1に設定する。これは対象軸インデックスの生成に適用されるので、対象軸インデックス生成部210−1が設定する。
【0049】
ステップS3において、対象軸インデックス生成部210−1が、系統番号iの対象軸インデックスを生成(作成)し、インデックス比較部210−3に供給する。
ステップS4において、インデックス比較部210−3は、補正モデルjの補正モデルインデックスを補正モデルセット記憶部210−2から呼び出す。
【0050】
ステップS5において、インデックス比較部210−3は、供給された対象軸インデックスと、呼び出した補正モデルインデックスとが一致するか比較する。比較の結果、一致すればステップS6に移行し、一致しない場合はステップS11に移行する。
ステップS6において、インデックス比較部210−3は、一致したので、一致した補正モデルインデックスの補正モデルjを補正モデル設定部210−4に供給する。補正モデル設定部210−4は、供給された補正モデルをその系統iに設定する。
【0051】
ステップS7において、iが最大の系統数か否か検査され、YESであれば、ステップ
S8に移行する。NOであれば、再び処理を繰り返すために、ステップS9に移行する。
ステップS8において、すべての系統について補正モデルを設定したので、熱変位補正の設定を終了する。
【0052】
ステップS9において、iが+1され、jは1にリセットされる。これらの変数は対象軸インデックスの生成に適用されるので、対象軸インデックス生成部210−1が実行する。その後、ステップS3に移行し、再び対象軸インデックスの生成(作成)が実行される。
ステップS11において、インデックス比較部210−3が、jが最大補正モデル数であるか否かを検査する。検査の結果、最大モデル数である場合は、ステップS12に移行し、最大モデル数ではない場合は、ステップS10に移行する。
【0053】
ステップS12において、その系統iにおいては、補正モデルは未設定とする。つまり、補正モデル設定部210−4はその系統iに対して、補正モデルを設定しない。これは、合致する補正モデルが見いだせなかったためである。
この時、単に補正モデルを設定しないだけでもよいが、対応する補正モデルが見いだせなかったことをユーザ等に報知する報知部(不図示)を備えてもよい。このような報知部があれば、ユーザは補正モデルが足りないことを認識することができ、補正モデルを準備するモチベーションとなる。また、補正モデル設定部210−4が、報知部を兼ねてもよい。その後、ステップS7に移行し、(もしあれば)次の系統の処理に移行する。
【0054】
ステップS10において、jが+1される。この変数は対象軸インデックスの生成に適用されるので、対象軸インデックス生成部210−1が実行する。その後、ステップS4に移行し、別の補正モデルの呼び出しが実行される。
【0055】
以上のような処理によって、各系統に合致した補正モデルの設定を行うことができる。
【0056】
[第2実施形態]
図8は、第2実施形態に係る数値制御装置200が、加工中に軸切り替えが発生した場合の動作を説明する説明図である。
図9も、加工中に軸切り替えが発生した場合の動作の状況を説明する説明図である。
図10及び
図11は、第2実施形態に係る数値制御装置200の動作を表すフローチャートである。
【0057】
図8は、加工の途中で、軸が切り替わった場合の説明図である。
図8に示すように、ここでは、系統1(340)と、系統2(341)との2種の系統がある場合を説明する。加工開始時点では、系統1(340)にX1軸342、Z1軸343が存在した。また、系統2(341)にX2軸344、Z2軸345が存在した。
この状態の系統1の対象軸インデックスは、[101 102 0]であり、系統2の対象軸インデックスは、[201 202 0]である。
【0058】
加工の都合上、軸が入れ替わった例を説明する。
図8では上記のような軸構成から、X軸が入れ替わり、系統1(340)にX2軸344、Z1軸343が存在する。また、系統2(341)にX1軸342、Z2軸345が存在する。
この状態の系統1の対象軸インデックスは、[201 102 0]であり、系統2の対象軸インデックスは、[101 202 0]である。
つまり、X1軸とX2軸とが入れ替わったのである。該当する対象軸
番号も
入れ替えて対象軸インデックスを再作成する。
なお、補正モデルセットは変更されていない。上述した
図5と同様の補正モデルのままである。
このような入れ替えが発生した場合、新しい対象軸インデックスを再作成して、再び補正モデルインデックスとの比較を行えばよい。
その結果、新たに、
図9のような補正モデルの設定が行われる。
【0059】
<補正モデルの設定>
図9の系統1(360)は、X2+C12軸362と、Z1+C21軸363とを備えているので、対象軸インデックスは{201 102 0}となる。また、
図9の系統2(361)は、X1+C11軸364と、Z
2+C22軸365とを備えているので、対象軸インデックスは{101 202 0}となる。
この状態で、再び合致する補正モデルインデックスを探せば、系統1(360)には、補正モデル3(100−3)(310−3)が設定され、系統2(361)には、補正モデル4(100−4)(310−4)が設定される。このように、第2実施形態によれば、途中で軸が入れ替わったような場合でも、再度対象軸インデックスを
算出することによって、新たに合致する補正モデルを探すことができる。従って、加工の途中で軸の構成に変化があった場合でも、熱変位補正を実行することが可能である。
【0060】
<軸構成の変更があった場合の処理>
図10には、軸構成の変更が生じる場合を含めた、数値制御装置の処理動作を表すフローチャートが示されている。
まず、ステップS13において、ワークに対する加工が実行される。数値制御装置200が加工プログラムを読み取り、しかるべく指令を工作機械のサーボモータに出力することによって、加工が実行される。
【0061】
ステップS14において、軸構成の変更があったか否かが検査される。この検査は
図2の軸切り替え判定部210−5が実行する。軸切り替え判定部210−5は、軸制御情報生成部240の軸制御情報を監視することによって、軸切り替えがあったか否かを判定する。軸切り替えがあったことを検出した場合は、ステップS15に移行し、熱変位補正設定部210の他の部に、補正モデルの再設定を行うように促す。具体的には、補正モデルの設定動作を再度実行するように各部に指示(通知)する。一方、軸切り替えがなかった場合は、ステップS16に移行する。
【0062】
ステップS15においては、数値制御装置200が、軸構成の変更に対応するために又新たに設定をやり直す。その詳細は、
図11のフローチャートで説明する。
ステップS16において、加工の終了か否か確認される。終了である場合は、加工を終了し、終了ではない場合は、ステップS13に移行し、加工の続きをおこなう。
【0063】
<補正モデル再設定(ステップS15)の詳細>
図11には、
図10の補正モデルの再設定(ステップS15)の詳細な動作を表すフローチャートが示されている。
まず、ステップS17において、補正モデルの再設定が開始される。これは軸切り替え判定部210−5が軸の構成が変更された系統を検出したので、当該系統について補正モデルの再設定を行う処理である。したがって、系統は1種のみであるので、
図7と異なり、変数iは使用せずに、補正モデルを表すjのみを変数として用いている。
ステップS18において、変数
jを初期値1
にセットする。対象軸インデックス生成部210−1がこの処理を実行する。
【0064】
ステップS19において、対象軸インデックス生成部210−1が、対象となる系統について、対象軸インデックスを再作成する。つまり、軸切り替え判定部210−5が軸の構成が変更された系統を検出したので、この検出を契機として、対象軸インデックス生成部210−1が、対象となる系統について、対象軸インデックスを再度作成したものである。
ステップS20において、インデックス比較部210−3は、補正モデルセット記憶部210−2から補正モデルjを読み出す。
【0065】
ステップS21において、インデックス比較部210−3は、
読み出した補正モデルj
のインデックスと、再作成した対象軸インデックスと、を比較し、一致するか否か確認する。その結果、一致すればステップS22に移行し、一致しない場合は、ステップS25に移行する。
ステップS22においては、一致したので、当該補正モデルjをその系統に設定する。
【0066】
ステップS23においては、補正モデルの再設定が終了する。
ステップS25においては、jが補正モデルの最大数であるか否かが検査される。最大数であった場合は、ステップS26に移行する。最大数でなかった場合は、ステップS24に移行する。
ステップS26において、現在着目している系統では補正モデルが設定できないと判断し、ステップS23に移行し、処理を終了する。この時、ステップS12と同様に、ユーザ等に補正モデルが見いだせなかったことを報知する報知部が備えられてもよい。このような報知によれば、ユーザは補正モデルを準備しようとする契機となろう。
【0067】
なお、報知は、種々の方法で実行してよい、ディスプレイに表示して報知してもよい。また、音声で
報知してもよい。ブザー音や警告音で報知してもよい。これはステップS12でも同様である。
ステップS24においては、補正モデルを変えて比較するために、jを+1してから、ステップS20に移行し、新たに比較対象となる補正モデルの呼び出しを続行する。
このような処理によって、補正モデルを再設定することができる。
【0068】
<本実施形態の効果>
以上のように、本第1実施形態、第2実施形態によれば、補正モデルのインデックスと、対象軸インデックスとを比較して一致すれば、当該補正モデルをその系統に設定した。そのため、系統が多い場合でも、迅速に対応する補正モデルを設定することができる。また、第2実施形態でも説明したように、系統の軸の構成が変更された場合でも、軸切り替えに対応して、再び、合致する補正モデルを探して設定することができる。
【0069】
[その他の実施形態]
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
【0070】
[変形例1]
第1実施形態、第2実施形態では、熱変位補正設定部210を、数値制御装置200内に格納する例を示したが、数値制御装置200の筐体の外部に位置していてもよい。外部の付属装置として構成してもよいし、通信回線で遠隔地に設けてもよい。また、ネットワーク上に配置されていてもよく、クラウドを利用しても熱変位補正設定部210を構成してもよい。
工作機械を制御する機能をクラウドで共有するFog Computing(Fog Computingはシスコ社の登録商標)が知られており、そのようなシステムを用いてもよい。
また、このFog Computingを利用して工作機械やロボットをネットワーク化したシステムとしてField Systemが知られている(FIELDはファナック株式会社の登録商標)。本発明をこのようなシステム上に載せることも好適である。
【0071】
[変形例2]
第1実施形態、第2実施形態における数値制御装置200は、CPUを備えるコンピュータシステムとしてよい。その場合、CPUは、例えばROM等の記憶部に格納されたプログラムを読み出し、このプログラムに従って、コンピュータを、熱変位補正設定部210、熱変位補正部220、動作状態データ記憶部230、軸制御情報生成部240、軸制御部250として実行させることができる。
【0072】
[変形例3]
第1実施形態、第2実施形態においては工作機械を数値制御する数値制御装置200の例を説明したが、同様の処理動作を実行するものであれば、工作機械そのもので同様の処理動作を実現してもよい。また、工場全体を管理する管理コンピュータが統括して同様の処理動作を実現してもよい。