(57)【特許請求の範囲】
【請求項１】
機械の動作または機械の各部位の温度から熱変位量を予測し、該予測した熱変位量を打ち消すために、送り軸の位置指令値に加算することにより熱変位を補正する熱変位補正量を算出する熱変位補正部と、計測手段により機械の実位置情報を取得し、前記熱変位補正量を調整値により調整する熱変位補正量調整部とを備えた工作機械の熱変位補正装置において、
前記機械を駆動した際に算出した前記熱変位補正量、前記計測手段により測定した前記機械の前記実位置情報、および前記熱変位補正量と前記調整値との関係を表す近似式に基づいて、前記調整値を算出するための前記機械に依存する係数を算出する機械依存係数算出手段と、
加工プログラムに基づいてワークを加工した際に算出した前記熱変位補正量、前記計測手段により測定して取得した前記機械の前記実位置情報、および前記熱変位補正量と前記調整値との関係を表す前記近似式に基づいて、前記調整値を算出するための加工条件に依存する係数を算出する加工条件依存係数算出手段と、
前記機械依存係数算出手段により算出された係数と前記加工条件依存係数算出手段により算出された係数とを含む前記近似式から算出した前記熱変位補正量に対応する前記調整値を算出する算出手段と、
前記熱変位補正量調整部は前記算出手段で算出した前記調整値により前記熱変位補正量を補正することを特徴とする工作機械の熱変位補正装置。
【請求項２】
前記近似式は、
加工実験データより、予め機械に保存することを特徴とする請求項１に記載の工作機械の熱変位補正装置。
【請求項３】
前記近似式はＥ＝ａ＋ｋ｜Ｆ｜（Ｅは調整値、ａは加工条件に依存する係数、ｋは機械に依存する係数、Ｆは熱変位補正量）であることを特徴とする請求項１または２に記載の熱変位補正装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械に装備され、その工作機械で発生する熱変位量を補正する熱変位補正装置に関する。
【背景技術】
【０００２】
工作機械において、送りねじや主軸はモータによって駆動されることから、モータの発熱、軸受けの回転による摩擦熱、送りねじのボールネジとボールナットの係合部の摩擦熱によって、主軸や送りねじは膨脹し機械位置が変位する。すなわち、位置決めすべきワークと工具の相対位置関係にずれが生じる。この熱による機械位置の変動は、精度の高い加工を行なう場合に問題となる。
【０００３】
この熱による機械位置の変位を除去する方法として、従来、冷却装置を設けたり、送りねじのボールネジに初期張力を与え、熱による膨脹の影響を受けないような構造としたり、変位センサや温度センサを設け、検出変位や検出温度に基づいて、指令位置を補正する方法が採用されている。
【０００４】
工作機械の動作や各部位の温度等から熱変位量を算出し補正する機能において、熱変位量を正確に算出する事ができず、熱変位補正量と実際の熱変位量の差（補正誤差）が大きくなり、正しく補正ができないことがある。このような場合、一般的に熱変位補正量を増減することで調整を行い、補正精度を向上させる。
【０００５】
従来技術における熱変位補正量の調整方法の例として特許文献１には、加工の時、計測機器を使用し、実変位量を計測し、熱変位補正量と比較して、調整値を求める。算出した熱変位補正量に求められた調整値を加算もしくは減算することにより、前記熱変位補正量を変更し調整する方法が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第３２９２４５４号公報
【特許文献２】特許第３４０５９６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載されている熱変位補正量の調整方法では、調整時に加工点の実変位量の計測が必要であり手間がかかる。また、特許文献１において最大変位量と平均移動距離の対応関係を提供しているが、機械特性や加工環境により、この対応関係に大きな偏差が生じる場合がある。
【０００８】
従来方法では、熱変位補正値を調整する調整値は予め設定した後や実変位量の測定後は一定値である。その後、外部環境や加工状況により調整値を変更する必要が生じることがある。この場合、このため加工サイクルを中断し、熱変位補正量を実変位量に合わせるために、複数回の手動設定や測定を行わないと、適切に調整値の変更ができない問題がある。
【０００９】
図８は従来技術を説明する図である。（１）熱変位量と主軸移動の対応関連データについて、これは予め熱変位の実験を実施することにより、機械の熱変位量と主軸回転の移動量の対応関連データを求め、このデータを機械（を制御する数値制御装置のメモリ）に保存する。しかし、従来方法の特許文献１には、熱変位の実験に関する関連データについて、この関連データを機械のユーザが変更することはできないし、さらに、一種類の機械と主軸に限定的なものである。（２）実測定は、補正値（熱変位補正量に調整値を掛けた値）と実変位値に一定値以上の差がある場合、複数回実測定を行って補正値を補正するために調整値を変更する必要がある。
【００１０】
図９は、従来技術では、外部環境や加工状況により調整値を変更するため、加工サイクルを中断し、計測することが必要なことを説明する図である。図９では、計測１、計測２の時点で２回の計測を行うことが示されている。計測１の時点において、熱変位補正量と実変位量との差が大きくなったことから、調整値の変更を行う。同様に、計測２の時点において、熱変位補正量と実変位量との差が大きくなったことから、再度、調整値の変更を行う。従来技術では、計測後に調整値は一定数値に設定されるため、熱変位量の補正の精度を向上するには再度計測を実施し、熱変位量を調整する構成量を適切な値に変更する必要があり、計測を行うために加工サイクルが中断される問題があった。
【００１１】
そこで、本発明の目的は、少ない計測回数で適切な調整をリアルタイムで行うことができ、熱変位補正量と実変位量が大きな偏差がある場合、再計測しなくても偏差が少なく、計測によるサイクルの中断を減らすことが可能な工作機械の熱変位補正装置を提供することである。
【課題を解決するための手段】
【００１２】
本発明は、換算係数を予め設定、もしくは一回計測することにより設定しており、その後加工状況の変化に対して、調整値を自動的に変更することができる。加工サイクルの中断することを減らすことができる。
【００１３】
本発明は、既知のいずれかの手段により算出した熱変位補正量と、所定の箇所を計測して求めた測定値とから実際の熱変位量を求め、適切な調整値を算出して、正しい傾向に熱変位補正量を調整するものである。  
調整値の算出について、既知のいずれかの手段により算出した熱変位補正量と実際の変位量情報より、熱変位補正量と調整値の関連関数（近似式）を求める。熱変位補正量の変化より、この関連関数（近似式）によって調整値を変更する。具体的には後述する２つのステップで実施する。
【００１４】
そして、本願の請求項１に係る発明は、機械の動作または機械の各部位の温度から熱変位量を予測し、該予測した熱変位量を打ち消すために、送り軸の位置指令値に加算することにより熱変位を補正する熱変位補正量を算出する熱変位補正部と、計測手段により機械の実位置情報を取得し、前記熱変位補正量を調整値により調整する熱変位補正量調整部とを備えた工作機械の熱変位補正装置において、前記機械を駆動した際に算出した前記熱変位補正量、前記計測手段により測定した前記機械の前記実位置情報、および前記熱変位補正量と前記調整値との関係を表す近似式に基づいて、前記調整値を算出するための前記機械に依存する係数を算出する機械依存係数算出手段と、加工プログラムに基づいてワークを加工した際に算出した前記熱変位補正量、前記計測手段により測定して取得した前記機械の前記実位置情報、および前記熱変位補正量と前記調整値との関係を表す前記近似式に基づいて、前記調整値を算出するための加工条件に依存する係数を算出する加工条件依存係数算出手段と、前記機械依存係数算出手段により算出された係数と前記加工条件依存係数算出手段により算出された係数とを含む前記近似式から算出した前記熱変位補正量に対応する前記調整値を算出する算出手段と、前記熱変位補正量調整部は前記算出手段で算出した前記調整値により前記熱変位補正量を補正することを特徴とする工作機械の熱変位補正装置である。  
請求項２に係る発明は、前記近似式は、加工実験データより、予め機械に保存することを特徴とする請求項１に記載の工作機械の熱変位補正装置である。  
請求項３に係る発明は、前記近似式はＥ＝ａ＋ｋ｜Ｆ｜（Ｅは調整値、ａは加工条件に依存する係数、ｋは機械に依存する係数、Ｆは熱変位補正量）であることを特徴とする請求項１または２に記載の熱変位補正装置である。
【発明の効果】
【００１５】
本発明は、少ない計測回数で適切な調整をリアルタイムで行うことができる。従来技術は計測後熱変位補正量と実際変位量が大きな偏差がある場合、再び計測が必要になるが、本発明は再計測しなくても偏差が少なく、計測によるサイクルの中断を減らすことができる。
【図面の簡単な説明】
【００１６】
【図１】本発明を説明する図である。
【図２】本発明では、熱変位補正量に加算または減算する調整値をリアルタイムで変更することを説明する図である。
【図３】本発明の原理を説明する図である。
【図４】本発明に係る処理の全体のフローチャートである。
【図５】第１ステップのフローチャートである。
【図６】第２ステップのフローチャートである。
【図７】工作機械を制御する数値制御装置の概要を説明するブロック図である。
【図８】従来技術を説明する図である。
【図９】従来技術では、外部環境や加工状況により調整値を変更するため、加工サイクルを中断し、計測するが必要なこと説明する図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態を図面と共に説明する。
図１は本発明を説明する図である。図２は本発明では、熱変位補正量に加算または減算する調整値をリアルタイムで変更することを説明する図である。図３は本発明の原理を説明する図である。
（１）第１ステップは、機械仕様（機械構造、制御部など）に依存するため、機械仕様の変更がない限り、原則として一度だけ実施すればよい。従って、工作機械メーカが予め第１ステップを実施して換算係数ｋを決定してメモリに保存しておけば、ユーザは行う必要はない。加工プログラムについて説明すると、機械の熱変位量が発生する可能性のある範囲をカバーするプログラムを選択する。つまり、機械が熱変位を発生していない状態から加工プログラムを運転し、熱変位量が安定する状態で、機械の各動作方向の熱変位量が最大程度と最小程度に発生するような前記加工プログラムを選択する。
（２）第２ステップは、加工環境（加工状況）に変更がある場合は、少なくとも１回の計測を実施する必要がある。その後、調整値をリアルタイムで変更し、補正に反映する。補正値（熱変位補正量と調整値とをかけた値）と実変位値の差が大きくなったことから実測定を行う。実測定により調整値を変更することで、補正値を補正する。
【００１８】
本発明は、熱変位量を予測し、熱変位補正を行う工作機械の制御装置に備わった機能において、少ない測定回数で、熱変位補正量と実際の熱変位量の関係を把握し、常に適切な調整値を求めることができる。
【００１９】
複数の加工プログラムを選択し実際に運転して得られる、熱変位補正量Ｆ、実際の熱変位量Ｄ、調整値Ｅには、数１式、数２式の関係がある。なお、数２式は数１式を変形した式である。なお、熱変位補正量Ｆ、実際の熱変位量Ｄは、これらの量を測定する際の基準となる位置の決め方によって、熱変位補正量Ｆ、実際の熱変位量Ｄは正または負の数値を取りうる。
【００２０】
Ｅ・Ｆ＝Ｄ                      （数１式）
Ｅ＝Ｄ／Ｆ（Ｆは０ではない、ＤとＦは同じ符号である。）    （数２式）
ここで、次のような仮定をする。  
仮定１）  
Ｄを定数とする、つまり、上記の関数を上図のグラフに表示する。短い期間において実際の熱変位量Ｄは一定である。  
仮定２）  
Ｅの計算範囲は（Ｅｍｉｎ〜Ｅｍａｘ）、一般的な調整係数はＥｍｉｎ＝０．０１、Ｅｍａｘ＝１０が限界とする。
【００２１】
上記Ｅの計算範囲で、最小二乗法より、近似関数ｙ＝ａ＋ｋｘ（数３式）を求める。つまり、Ｅ＝ａ＋ｋ｜Ｆ｜（数４式）をもとめる。
【００２２】
更に、Ｄが変化しても（破線の曲線、曲率が変化する場合）、上記近似関数のｋの値はあまり変化しない。このため、加工に対して、一般的に実際の熱変位量Ｄの最大値と最小値に対するｋの値はほぼ一定である。なお、ａは加工プログラムに応じて特定される数値である。
【００２３】
図４は本発明に係る全体のフローチャートである。  
まず、後述の第１ステップを実施し、Ｅ＝ａ＋ｋ｜Ｆ｜（数４式）の係数ｋを決定する。この係数ｋは、機械仕様（機械構造、制御部など）に依存するため、機械仕様の変更がない限り、原則として第１ステップは一度だけ実施すればよい。従って、工作機械メーカが予め第１ステップを実施して係数ｋを決定して工作機械を制御する数値制御装置のメモリに保存しておけば、ユーザが行う必要はない。  
次に、実際の加工にあたり、係数ａが未設定の場合は、後述の第２ステップを実施して、係数ａを設定する。係数ａは、同一の加工プログラムに対しては再度算出する必要はない。  
係数ｋとａを予め決定したら、以下の手順で熱変位補正の調整を行う。
以下、各ステップに従って説明する。  
（ステップＳＡ０１）  
熱変位補正手段を有効にし、加工プログラムの運転を開始する。なお、熱変位補正手段は、従来公知の手段を用いることができる。  
（ステップＳＡ０２）  
熱変位補正量Ｆを算出する。熱変位補正量Ｆの算出方法は従来公知の方法を用いることができる。
（ステップＳＡ０３）
Ｅ＝ａ＋ｋ｜Ｆ｜（数４式）より、調整値Ｅを算出する。
（ステップＳＡ０４）
調整後の熱変位補正量Ｆ´＝Ｅ×Ｆ（数５式）を算出し、熱変位補正手段に送る。
【００２４】
図５は第１ステップのフローチャートである。  
予めいくつかの加工プログラムを用意し、各加工プログラムに対して以下の手順で換算係数ｋを求める。なお、熱変位補正手段を有効にした上で、熱変位が発生していない状態（停止状態で十分放置した状態）から加工プログラムの運転を開始し、以下の手順を実行する。熱変位補正手段は、公知のものを使用できる。また、下記の手順を実行する回数と実行する時間間隔を予め決めておく。
【００２５】
以下、各ステップに従って説明する。  
（ステップＳＢ０１）
機械の予め決めた測定箇所の実変位値を測定し、結果（測定値）をＡｉとして保存する。（ｉは実行回数を表す。ｉ＝１，２，３，…。以下同様。）測定方法はどのような方法でもよい。前述のとおり、Ａｉは熱変位補正手段がＯＮの状態で測定した値である。
（ステップＳＢ０２）
熱変位補正量をＦｉとして保存する。
（ステップＳＢ０３）
実測した測定値Ａｉと熱変位補正量Ｆｉから、実際の熱変位量Ｄｉを算出する（Ｄｉ＝Ａｉ＋Ｆｉ）。厳密に説明すると、実際の熱変位量Ｄｉは補正機能ＯＦＦでの熱変位量に相当する。
（ステップＳＢ０４）
実際の熱変位量Ｄｉと熱変位補正量Ｆｉとの比を算出する（ｒｉ＝Ｄｉ／Ｆｉ）。ただし、Ｆｉ＝０の場合は、この処理をスキップする。
【００２６】
上記の処理を所定の回数、実行したら、比ｒｉと熱変位補正量Ｆｉから、最小二乗法により関数ｙ＝ａ＋ｋｘを求める、この時、ｒｉ＜０のデータを外すことが望ましい。他の加工プログラムについても、同様に上記の処理を実行し、関数ｙ＝ａ＋ｋｘを求める。複数求めた関数ｙ＝ａ＋ｋｘの係数ｋの平均値を算出し、それをあらためてｋとする。係数ａを求めるため、加工プログラム運転中に予め決めた測定箇所より、実際の熱変位量を測定する。なお、同じ加工環境と加工プログラムに対して既に係数ａが求められていれば、第２ステップを実施する必要がない。
【００２７】
ここで、２つの加工プログラムＯ０００１とＯ０００２を用いてより具体的に説明する。それぞれの加工プログラムのサイクルタイムは約３０分とする。
１．  機械が停止状態から加工プログラムＯ０００１を運転する。熱変位補正機能をＯＮして、１分毎に計測を実施する。  
２．  計測により、測定結果Ａ１〜Ａ３０、補正機能により熱変位補正値Ｆ１〜Ｆ３０を取得する。Ｄｉ＝Ａｉ＋ＦｉよりＤ１〜Ｄ３０を計算する。
３．  ｒｉ＝Ｄｉ／Ｆｉより、ｒ１〜ｒ３０を計算する。ｒ１〜ｒ３０と｜Ｆ１｜〜｜Ｆ３０｜のプロットを作成する。ｒｉ＜０のデータを外す。
４．  最小二乗法により、前記プロットからｙ＝ａ＋ｋ１・ｘを求める。
５．  機械を停止する。
６．  機械が停止状態から加工プログラムＯ０００２を運転して、ステップ１．〜ステップ４．の手順を実行して、ｙ＝ａ＋ｋ２・ｘを求める。
７．  この機械のｋ係数をｋ＝（ｋ１＋ｋ２）／２と設定する。ｋは、各加工プログラムを実行することにより求められる係数の平均値である。
【００２８】
図６は第２ステップのフローチャートである。
（ステップＳＣ０１）  
加工プログラム運転開始、予め機械の調整値Ｅを設定する。この調整値は加工プログラムに対して適当な数値を選ぶ、適当な数値が分からない場合Ｅ＝１に設定する。  
（ステップＳＣ０２）  
予め決めた測定箇所を測定し、結果（測定値）をＡとして保存する。測定方法はどのような方法でもよい。  
（ステップＳＣ０３）  
熱変位補正量をＦとして保存する。
（ステップＳＣ０４）
実測した測定値Ａと熱変位補正量Ｆから、実際の熱変位量Ｄを算出する（Ｄ＝Ａ＋Ｆ）。
（ステップＳＣ０５）
実際の熱変位量Ｄと熱変位補正量Ｆとの比を算出する（ｒ  ＝  Ｄ／Ｆ）。
ただし、Ｆ＝０の場合は、ｒ＝Ｅとする。Ｅはこの計測時刻の既存熱変位の調整値
（ステップＳＣ０６）
ｒ＝ａ＋ｋ｜Ｆ｜より、係数ａを算出。（ｋは前記第１ステップで算出した係数）
算出した係数ａを加工プログラムに関連付けて記憶しておく。
【００２９】
図７は工作機械を制御する数値制御装置の概要を説明するブロック図である。本発明に係る工作機械の熱変位補正装置は工作機械を制御する数値制御装置１０によって構成される。数値制御装置１０のプロセッサ（ＣＰＵ）１１は、数値制御装置１０を全体的に制御するプロセッサである。プロセッサ１１は、ＲＯＭ１２に格納されたシステムプログラムを、バス２１を介して読み出し、このシステムプログラムに従って数値制御装置１０を全体的に制御する。ＬＣＤ／ＭＤＩユニット７０は表示装置付き手動入力装置である。なお、ＬＣＤは液晶表示装置を意味する。ＲＡＭ１３には一時的な計算データや表示データ及びＬＣＤ／ＭＤＩユニット７０を介してオペレータが入力した各種データ等が格納される。
【００３０】
ＳＲＡＭ１４は図示しないバッテリでバックアップされ、数値制御装置１０の電源がオフされても記憶状態が保持される不揮発性メモリとして構成され、初期位置を測定するプログラムや工作機械の熱変位補正を行うプログラム、インタフェース１５を介して読み込まれた後述する加工プログラム、ＬＣＤ／ＭＤＩユニット７０を介して入力された加工プログラム等が記憶される。また、ＲＯＭ１２には、加工プログラムの作成及び編集のために必要とされる編集モードの処理や自動運転のための処理を実施するための各種のシステムプログラムがあらかじめ書き込まれている。
【００３１】
インタフェース１５は数値制御装置１０に接続可能な外部機器のためのインタフェースであり、外部記憶装置などの外部機器７２が接続される。外部記憶装置からは加工プログラム、熱変位測定プログラムなどが読み込まれる。ＰＭＣ（プログラマブル・マシン・コントローラ）１６は、数値制御装置１０に内蔵されたシーケンスプログラムで工作機械側の補助装置等を制御する。すなわち、加工プログラムで指令されたＭ機能、Ｓ機能及びＴ機能に従って、これらシーケンスプログラムにより補助装置側で必要な信号を変換し、Ｉ／Ｏユニット１７から補助装置側に出力する。この出力信号により各種アクチュエータ等の補助装置が作動する。また、工作機械の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な処理をしてプロセッサ１１に渡す。
【００３２】
工作機械の各軸の現在位置、アラーム、パラメータ、画像データ等の画像信号はＬＣＤ／ＭＤＩユニット７０に送られ、そのディスプレイに表示される。ＬＣＤ／ＭＤＩユニット７０はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース１８はＬＣＤ／ＭＤＩユニット７０のキーボードからデータを受けてプロセッサ１１に渡す。
【００３３】
インタフェース１９は手動パルス発生器７１に接続され、手動パルス発生器７１は工作機械の操作盤に実装され、手動操作に基づく分配パルスによる各軸制御で工作機械の可動部を精密に位置決めするために使用される。工作機械のテーブルＴを移動させるＸ，Ｙ軸の軸制御回路及びＺ軸の制御回路３０〜３２はプロセッサ１１からの各軸の移動指令を受けて、各軸の指令をサーボアンプ４０〜４２に出力する。サーボアンプ４０〜４２はこの指令を受けて工作機械の各軸のサーボモータ５０〜５２を駆動する。各軸のサーボモータ５０〜５２には位置検出用のパルスコーダが内蔵されており、このパルスコーダからの位置信号がパルス列としてフィードバックされる。
【００３４】
スピンドル制御回路６０は、工作機械への主軸回転指令を受け、スピンドルアンプ６１にスピンドル速度信号を出力する。スピンドルアンプ６１はこのスピンドル速度信号を受けて、工作機械の主軸モータ６２を指令された回転速度で回転させ、工具を駆動する。主軸モータ６２には歯車あるいはベルト等でポジションコーダ６３が結合され、ポジションコーダ６３が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはインタフェース２０を経由してプロセッサ１１によって読み取られる。６５は現在時刻に同期するように調整された時計装置である。
【００３５】
数値制御装置１０は、例えば特許文献１や特許文献２に開示される機械の動作または機械の各部位の温度から熱変位量を予測し、該予測した熱変位量を打ち消す熱変位補正量を送り軸の位置指令値に加算することにより熱変位を補正する熱変位補正部を有する。前記熱変位補正部は例えば特許文献１や特許文献２に開示されるように従来公知であるので詳述しない。数値制御装置１０は特許文献１（段落「００３２」、図１参照）に開示される計測を備えており、機械の実位置を計測することができる。そして、数値制御装置１０は、図４、図５、図６に示されるフローチャートの処理を実行するソフトウェアを備えることにより、本発明の熱変位補正装置が構成される。
【符号の説明】
【００３６】
１０  数値制御装置
１１  プロセッサ（ＣＰＵ）
１２  ＲＯＭ
１３  ＲＡＭ
１４  ＳＲＡＭ
１５  インタフェース
１６  ＰＭＣ（プログラマブル・マシン・コントローラ）
１７  Ｉ／Ｏユニット
１８  インタフェース
１９  インタフェース
２０  インタフェース
２１  バス
３０，３１，３２  制御回路
４０，４１，４２  サーボアンプ
５０，５１，５２  サーボモータ
６０  スピンドル制御回路
６１  スピンドルアンプ
６２  主軸モータ
６３  ポジションコーダ
６５  時計装置
７０  ＬＣＤ／ＭＤＩユニット
７１  手動パルス発生器
７２  外部機器
【図１】
0006042917.tif 000002
【図２】
0006042917.tif 000003
【図３】
0006042917.tif 000004
【図４】
0006042917.tif 000005
【図５】
0006042917.tif 000006
【図６】
0006042917.tif 000007
【図７】
0006042917.tif 000008
【図８】
0006042917.tif 000009
【図９】
0006042917.tif 000010