(57)【特許請求の範囲】
【請求項１】
加工プログラムに従いモータを駆動して主軸と送りねじを可動させる工作機械を制御する制御装置であって、
前記工作機械を分割して各区間で発生している熱変位状態を算出する熱変位状態算出手段と、
あらかじめ前記加工プログラムに基づいて前記工作機械を動作させた時の前記工作機械の熱変位が飽和した状態における熱変位状態を目標熱変位状態として記憶している記憶手段と、
前記目標熱変位状態に近づくように、前記各区間で発生している熱変位状態をもとにモータの暖機運転動作パターンを決定する暖機運転動作決定手段と、
前記暖機運転動作決定手段により決定された前記暖機運転動作パターンに従い前記モータを駆動するモータ駆動手段と、
所定の周期ごとに前記工作機械の熱変位状態を前記熱変位状態算出手段により算出して、前記目標熱変位状態と比較し、前記算出した熱変位状態と前記目標熱変位状態との差が所定の閾値以内である場合に、前記モータ駆動手段を停止するモータ停止手段と、
を備えたことを特徴とする工作機械の制御装置。
【請求項２】
前記熱変位状態算出手段は、
主軸部を複数の区間に分割したモデルとして捉え、各区間について温度を推定する温度分布推定手段と、
前記温度分布推定手段から熱変位量を推定する主軸熱変位量推定手段とを備え、
前記暖機運転動作決定手段は、前記温度分布推定手段が推定した各区間の温度情報をもとに、主軸を駆動する暖機運転動作パターンを決定し、
前記モータ停止手段は、前記温度分布推定手段により算出された温度と、前記目標熱変位状態における温度との差が所定の閾値以内である場合に、前記モータ駆動手段を停止する、
ことを特徴とする請求項１に記載の工作機械の制御装置。
【請求項３】
前記熱変位状態算出手段は、
送りねじを複数の区間に分割し、各区間について熱変位量を推定する送りねじ区間熱変位量推定手段と、
前記熱変位量を足し合わせることで送りねじ全体での熱変位量を推定する送りねじ熱変位量推定手段とを備え、
前記暖機運転動作決定手段は、前記送りねじ区間熱変位量推定手段が推定した各区間の熱変位量情報をもとに、送りねじを駆動する暖機運転動作パターンを決定し、
前記モータ停止手段は、前記送りねじ熱変位量推定手段により算出された送りねじの熱変位量と、前記目標熱変位状態における送りねじの熱変位量との差が所定の閾値以内である場合に、前記モータ駆動手段を停止する、
ことを特徴とする請求項１に記載の工作機械の制御装置。
【請求項４】
前記制御装置は、
前記モータ駆動手段を停止した後も熱変位量を前記熱変位状態算出手段により算出し、算出した熱変位状態が前記目標熱変位状態と一致しない場合、前記モータ駆動手段によるモータの駆動を再開する、
ことを特徴とする請求項１に記載の工作機械の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械の制御装置に関し、特に熱変位が飽和した時点での熱変位状態に基づいた効率的な暖機運転制御を行う工作機械の制御装置に関する。
【背景技術】
【０００２】
工作機械において、送りねじや主軸はモータによって駆動されることから、モータの発熱、軸受の回転による摩擦熱、送りねじのボールネジとボールナットの接触部の摩擦熱によって、主軸や送りねじは膨張し機械位置が変化する。すなわち、位置決めすべきワークと工具の相対位置関係にずれが生じる。この熱による機械位置の変化は、精度の高い加工を行う場合に問題となる。
【０００３】
熱による機械位置の変位を除去するため、変位センサや温度センサで計測した検出変位や検出温度に基づいて指令位置を補正する技術（熱変位補正）や、送りねじに初期張力を与えて熱による膨張の影響を受けないようにする手法、ワークの加工前に機械を運転して精度を安定させる暖機運転が用いられている。
【０００４】
暖機運転では、実際のワークの加工に使用する回転数で主軸を回転させたり、ワークを取り付けずに加工プログラムを運転する空運転を繰り返す。工作機械の熱変位が安定するまで空運転を行うことで、加工精度を安定させることが可能だが、空運転の内容や時間は熟練作業者の経験や勘に基づいたものであり、無駄な暖機運転時間を生じる可能性がある。そこで、暖機運転の終了タイミングを判断する方法や、効率よく暖機運転を行う方法が考えられている（例えば、特許文献１〜３）。
【０００５】
特許文献１に記載の工作機械は、朝一番の動作では油圧アクチュエータの動きが通常に比べて悪く、暖機運転中に各種異常検出に引っかかってしまうことに着目し、暖気運転モード選択時には、油圧サーボ系の位置許容値、位置到達時間の設定値を大きくし、ワーク検出スイッチの検出信号を無視するなど所定の動作を省略することで、無駄な動作停止を生じることなく、暖気運転を円滑に行うことができるようにするものである。
【０００６】
特許文献２に記載の工作機械は、主軸の暖機運転中に工具の刃先位置を検出し、その工具刃先位置の変化が予め設定された許容範囲内に収まれば、暖機運転の必要がなくなったと判断することで、無駄な暖機運転を行わないように制御し、暖機運転時間の短縮を可能にしている。
【０００７】
特許文献３に記載の工作機械は、あらかじめ実際の加工に使用する回転数で主軸を回転させ、熱変位が飽和した時点での熱変位量を測定しておき、実際の暖機運転動作では、測定値と同じ熱変位量に達するまで、より回転数の高い予備加熱回転数で主軸を回転させ、その後、実際の加工に使用する回転数に戻し、発生した熱変位量分だけ相対位置を補正して加工を開始することで、熱変位が安定するまで待って加工を開始する場合と同程度の高い加工精度が得られるとともに、暖機運転時間の短縮を可能にしている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平０７―１２４８４６号公報
【特許文献２】特開２００４−２６１９３４号公報
【特許文献３】特開平０８−２１５９８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、従来技術には以下に示す問題がある。
すなわち、特許文献１に記載の工作機械は、無駄な動作停止をなくすことにより暖機運転時間を短縮しているが、空運転する加工プログラムは実際の加工に使用しているものであり、暖機運転としては、例えば、加工中に指令されるドウェルや、低速の加工動作、工具交換動作などの無駄な動作が多く、その分余計に時間がかかってしまう。
【００１０】
特許文献２に記載の工作機械は、暖機運転を終了するタイミングを判断することはできるものの、暖機運転の効率自体は変わらないので、暖機運転時間の短縮には限界がある。また、暖機運転の対象が主軸に限られ、ボールネジの暖機運転については述べられていない。
【００１１】
特許文献３に記載の工作機械は、熱変位が飽和した状態での熱変位量と現在の熱変位量を比較することで暖機運転を終了するタイミングを判断しているが、主軸の熱変位量には主軸取付台やコラムの変形も含まれ、単純に増加せず複雑に変化するため、暖機運転を終了するタイミングを誤る場合がある。また、特許文献３においては、一定の予備加熱回転数で暖機運転を行うことが述べられているのみであり、主軸の加減速などを考慮した効率的な暖機運転については述べられておらず、更に、暖機運転の対象が主軸に限られ、ボールネジの暖機運転については述べられていない。
【００１２】
そこで、本発明の目的は、無駄な動作を省いた暖機運転を行うことで、暖機運転時間の短縮を行うことができることを特徴とする工作機械の制御装置を提供することである。
【課題を解決するための手段】
【００１３】
本願の請求項１に係る発明は、加工プログラムに従いモータを駆動して主軸と送りねじを可動させる工作機械を制御する制御装置であって、前記工作機械を分割して各区間で発生している熱変位状態を算出する熱変位状態算出手段と、あらかじめ前記加工プログラムに基づいて前記工作機械を動作させた時の前記工作機械の熱変位が飽和した状態における熱変位状態を目標熱変位状態として記憶している記憶手段と、前記目標熱変位状態に近づくように、前記各区間で発生している熱変位状態をもとにモータの暖機運転動作パターンを決定する暖機運転動作決定手段と、前記暖機運転動作決定手段により決定された前記暖機運転動作パターンに従い前記モータを駆動するモータ駆動手段と、所定の周期ごとに前記工作機械の熱変位状態を前記熱変位状態算出手段により算出して、前記目標熱変位状態と比較し、前記算出した熱変位状態と前記目標熱変位状態との差が所定の閾値以内である場合に、前記モータ駆動手段を停止するモータ停止手段と、を備えたことを特徴とする工作機械の制御装置である。
【００１４】
本願の請求項２に係る発明は、前記熱変位状態算出手段は、主軸部を複数の区間に分割したモデルとして捉え、各区間について温度を推定する温度分布推定手段と、前記温度分布推定手段から熱変位量を推定する主軸熱変位量推定手段とを備え、前記暖機運転動作決定手段は、前記温度分布推定手段が推定した各区間の温度情報をもとに、主軸を駆動する暖機運転動作パターンを決定し、前記モータ停止手段は、前記温度分布推定手段により算出された温度と、前記目標熱変位状態における温度との差が所定の閾値以内である場合に、前記モータ駆動手段を停止する、ことを特徴とする請求項１に記載の工作機械の制御装置である。
【００１５】
本願の請求項３に係る発明は、前記熱変位状態算出手段は、送りねじを複数の区間に分割し、各区間について熱変位量を推定する送りねじ区間熱変位量推定手段と、前記熱変位量を足し合わせることで送りねじ全体での熱変位量を推定する送りねじ熱変位量推定手段とを備え、前記暖機運転動作決定手段は、前記送りねじ区間熱変位量推定手段が推定した各区間の熱変位量情報をもとに、送りねじを駆動する暖機運転動作パターンを決定し、前記モータ停止手段は、前記送りねじ熱変位量推定手段により算出された送りねじの熱変位量と、前記目標熱変位状態における送りねじの熱変位量との差が所定の閾値以内である場合に、前記モータ駆動手段を停止する、ことを特徴とする請求項１に記載の工作機械の制御装置である。
【００１６】
本願の請求項４に係る発明は、前記制御装置は、前記モータ駆動手段を停止した後も熱変位量を前記熱変位状態算出手段により算出し、算出した熱変位状態が前記目標熱変位状態と一致しない場合、前記モータ駆動手段によるモータの駆動を再開する、ことを特徴とする請求項１に記載の工作機械の制御装置である。
【発明の効果】
【００１７】
このように構成された本発明では、熱変位が飽和した時点での熱変位状態と一致するように送りねじや主軸を駆動することで、無駄な動作を省いた暖機運転を行い、暖機運転時間を短縮することができる。主軸については実際のワークの加工以上の回転数で断続的に加減速を行い、送りねじについては部分的に発熱するように、一定区間で往復運動を行うことで効率的な暖機運転を可能にしている。
また、熱変位が飽和した時点での熱変位状態と現在の熱変位状態を比較して暖機運転を終了するタイミングを判断することで、無駄な暖機運転時間をなくすことができ、さらに暖機運転時間を短縮することができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施の形態における数値制御装置のブロック図である。
【図２】本発明の実施の形態における主軸の二次元モデルを示す図である。
【図３】本発明の実施の形態における主軸上の熱量の移動を示す模式図である。
【図４】本発明の実施の形態における送りねじの一次元モデルを示す図である。
【図５】本発明の実施の形態における送りねじ上の熱量の移動を示す模式図である。
【図６】本発明の実施の形態における暖機運転動作の処理手順を示すフローチャートである。
【図７】本発明の実施の形態における主軸の暖機運転プログラムの例を示す図である。
【図８】本発明の実施の形態における主軸の暖機運転動作パターンを決定する処理のフローチャートである。
【図９】本発明の実施の形態における送りねじの暖機運転プログラムの例を示す図である。
【図１０】本発明の実施の形態における送りねじの暖機運転動作パターンを決定する処理のフローチャートである。
【図１１】本発明の実施の形態における送りねじの暖機運転動作パターンにおける折り返し地点の算出方法を説明する図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態を図面と共に説明する。 
図１は工作機械を制御する数値制御装置の概要を説明するブロック図である。本発明に係る工作機械の熱変位補正装置は工作機械を制御する数値制御装置１０によって構成される。数値制御装置１０のプロセッサ（ＣＰＵ）１１は、数値制御装置１０を全体的に制御するプロセッサである。プロセッサ１１は、ＲＯＭ１２に格納されたシステムプログラムを、バス２１を介して読み出し、このシステムプログラムに従って数値制御装置１０を全体的に制御する。なお、ＬＣＤは液晶表示装置を意味する。ＲＡＭ１３には一時的な計算データや表示データ及びＬＣＤ／ＭＤＩユニット７０を介してオペレータが入力した各種データ等が格納される。
【００２０】
ＳＲＡＭ１４は図示しないバッテリでバックアップされ、数値制御装置１０の電源がオフされても記憶状態が保持される不揮発性メモリとして構成され、初期位置を測定するプログラムや工作機械の熱変位補正を行うプログラム、インタフェース１５を介して読み込まれた後述する加工プログラム、ＬＣＤ／ＭＤＩユニット７０を介して入力された加工プログラム等が記憶される。また、ＲＯＭ１２には、加工プログラムの作成及び編集のために必要とされる編集モードの処理や自動運転のための処理を実施するための各種のシステムプログラムがあらかじめ書き込まれている。
【００２１】
インタフェース１５は数値制御装置１０に接続可能な外部機器のためのインタフェースであり、外部記憶装置などの外部機器７２が接続される。外部記憶装置からは加工プログラム、熱変位測定プログラムなどが読み込まれる。ＰＭＣ（プログラマブル・マシン・コントローラ）１６は、数値制御装置１０に内蔵されたシーケンスプログラムで工作機械側の補助装置等を制御する。すなわち、加工プログラムで指令されたＭ機能、Ｓ機能及びＴ機能に従って、これらシーケンスプログラムにより補助装置側で必要な信号を変換し、Ｉ／Ｏユニット１７から補助装置側に出力する。この出力信号により各種アクチュエータ等の補助装置が作動する。また、工作機械の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な処理をしてプロセッサ１１に渡す。
【００２２】
工作機械の各軸の現在位置、アラーム、パラメータ、画像データ等の画像信号はＬＣＤ／ＭＤＩユニット７０に送られ、そのディスプレイに表示される。ＬＣＤ／ＭＤＩユニット７０はディスプレイやキーボード等を備えた手動データ入力装置であり、インタフェース１８はＬＣＤ／ＭＤＩユニット７０のキーボードからデータを受けてプロセッサ１１に渡す。
【００２３】
インタフェース１９は手動パルス発生器７１に接続され、手動パルス発生器７１は工作機械の操作盤に実装され、手動操作に基づく分配パルスによる各軸制御で工作機械の可動部を精密に位置決めするために使用される。工作機械のテーブルＴを移動させるＸ，Ｙ軸の軸制御回路及びＺ軸の制御回路３０〜３２はプロセッサ１１からの各軸の移動指令を受けて、各軸の指令をサーボアンプ４０〜４２に出力する。サーボアンプ４０〜４２はこの指令を受けて工作機械の各軸のサーボモータ５０〜５２を駆動する。各軸のサーボモータ５０〜５２には位置検出用のパルスコーダが内蔵されており、このパルスコーダからの位置信号がパルス列としてフィードバックされる。
【００２４】
スピンドル制御回路６０は、工作機械への主軸回転指令を受け、スピンドルアンプ６１にスピンドル速度信号を出力する。スピンドルアンプ６１はこのスピンドル速度信号を受けて、工作機械の主軸モータ６２を指令された回転速度で回転させ、工具を駆動する。主軸モータ６２には歯車あるいはベルト等でポジションコーダ６３が結合され、ポジションコーダ６３が主軸の回転に同期して帰還パルスを出力し、その帰還パルスはインタフェース２０を経由してプロセッサ１１によって読み取られる。６５は現在時刻に同期するように調整された時計装置である。
【００２５】
以下、上記数値制御装置１０において実行される本発明に係る各処理について説明する。
＜１．熱変位状態の算出＞
最初に、本発明の一実施の形態における熱変位状態の算出手法について説明する。熱変位状態は、主軸や送りねじなどの工作機械の構成要素の熱変位量や熱変位の分布、温度分布などを示すものである。
＜１．１  主軸熱変位状態の算出＞
本発明の一実施の形態における主軸の熱変位状態の算出する手法の一例として、工作機械の駆動状態から主軸系の熱変位状態を推定する手法がある。例えば図２に示すように、主軸８０と主軸取付台８１とコラム８２からなる構造体（主軸系）を平面状の二次元モデルとして捉え、複数の区間（１〜９）に分割し、熱の受け渡しを表現した計算式から各区間の温度を算出する。区間１と区間２や、区間２と区間３のような、隣接した区間では熱伝導が発生するため、所定周期ごとに熱伝導の計算を行う。
発熱源として主軸の摩擦やスピンドルモータを想定し、それらが隣接した区間に対して熱を与える計算を行う。また、各区間は大気中に放熱を行うので、各区間から熱を奪う計算も行う。これらの計算を組み合わせることで、各区間の温度分布を推定する。
【００２６】
図３は、区間１における熱量Ｑの移動を示した模式図である。区間１は区間２，区間３と接するとともに、外気と接している。また、隣接する熱源としてはスピンドルモータと主軸自体の摩擦熱がある。この場合において、区間１と外部との間で交換される熱量Ｑ1は数１式により表される。
【００２７】
【数１】
0006285297.tif 000002
【００２８】
なお、熱量Ｑ21、熱量Ｑ31は、それぞれ区間２、区間３と、区間１とで交換される熱量であり、熱量Ｑairは区間１と外気との間で交換される熱量である。また、熱量ＱSM、熱量ＱSPは、それぞれ熱源であるスピンドルモータ、主軸から区間１に与えられる熱量である。
ここで、熱量Ｑ21、熱量Ｑ31は、それぞれの区間の間の温度差により求めることができ、数２式により表される。
【００２９】
【数２】
0006285297.tif 000003
【００３０】
なお、数２式中の温度Ｔ1，Ｔ2，Ｔ3は、それぞれ区間１，２，３の温度である。また、ｋ21、ｋ31は、それぞれ区間２と区間１、区間３と区間１の間の熱伝達係数であり、例えばあらかじめ実験などによって算出しておきメモリに格納しておく。
また、熱量Ｑairは区間１の温度と外気温との差により求めることができ、数３式により表される。
【００３１】
【数３】
0006285297.tif 000004
【００３２】
なお、数３式中のｆ1は外気への放熱状態を表す関数であり、例えばあらかじめ実験などにより区間毎に関数またはテーブルの形で求めておき、メモリなどに格納しておく。
更に、熱量ＱSM、熱量ＱSPについては、スピンドルモータの巻線温度や主軸の回転数などのパラメータと与えられる熱量ＱSM、熱量ＱSPの関係を、例えばあらかじめ実験などによりテーブルの形で求めておき、メモリなどに格納しておく。
熱交換が行われたことによる区間１における温度変化ΔＴ1は、前記熱量Ｑ1を区間１の熱容量ｑ1で除することによって求めることができる。
【００３３】
【数４】
0006285297.tif 000005
【００３４】
このようにして、所定周期毎に区間１についてΔＴ1を算出し、区間１の温度Ｔ1に加算することで区間１の温度Ｔ1を求めることができる。
【００３５】
【数５】
0006285297.tif 000006
【００３６】
上述したものは図２の二次元モデルにおける区間１の温度推定のための算出式であるが、他の区間についても同様に、二次元モデルにおける区間の隣接状態を考慮して区間毎に算出式を作成することで、各区間の温度Ｔiを推定することができる。そして、このようにして推定した温度Ｔiから、各区間の伸び縮みを推定し、主軸の伸びや傾きを計算する。温度変化による各区間の伸び縮みの推定手法については、例えばあらかじめ実験などにより温度変化による各区間の変化量を計測しておきテーブルなどに記憶しておくか、あるいは周知の熱膨張シミュレーションなどにより算出すればよい。この手法を用いることで、熱変位量と温度分布とを同時に推定することができる。
なお、図２の区間の分割方法は一例であり、本発明において主軸の熱変位状態の推定方法は前記の方法に限定されない。
【００３７】
また、熱変位状態を推定するのではなく、位置センサを用いて熱変位量や熱変位の分布の実測値を求めてもよいし、温度センサを用いて温度分布の実測値を求めてもよい。両者を組み合わせて、一部の熱変位状態の実測値を求め、そこから残りの部分の熱変位状態を推定してもよい。
【００３８】
＜１．２  送りねじ熱変位状態の算出＞
本発明の一実施の形態における送りねじの熱変位状態の算出する手法の一例として、工作機械の駆動状態から送りねじの熱変位状態を推定する手法がある。例えば図４に示すように、送りねじ９０の全ストロークを一次元モデルとして捉え、複数の区間（１〜Ｘ）に分割し、熱の受け渡しを表現した計算式から各区間の温度を算出する。区間Ｉと区間（Ｉ−１）、区間Ｉと区間（Ｉ＋１）のような、隣接した区間では熱伝導が発生するため、所定周期ごとに熱伝導の計算を行う。
発熱源として、軸移動による送りねじ９０とボールナット９１との間の摩擦熱を想定し、それらが隣接した区間に対して熱を与える計算を行う。また、各区間は大気中に放熱を行うので、各区間から熱を奪う計算も行う。これらの計算を組み合わせることで、各区間の温度分布を推定する。
【００３９】
図５は、区間Ｉにおける熱量Ｑの移動を示した模式図である。区間Ｉは区間（Ｉ−１），（Ｉ＋１）と接するとともに、外気と接している。また、隣接する熱源としてはボールナットとの摩擦熱がある。この場合において、区間Ｉと外部との間で交換される熱量ＱIは数６式により表される。
【００４０】
【数６】
0006285297.tif 000007
【００４１】
なお、熱量ＱI-1、熱量ＱI+1は、それぞれ区間（Ｉ−１）、区間（Ｉ＋１）と、区間Ｉとで交換される熱量であり、熱量Ｑairは区間Ｉと外気との間で交換される熱量である。  また、熱量ＱBNはボールナットとの摩擦熱により区間Ｉに与えられる熱量である。
ここで、熱量ＱI-1、熱量ＱI+1は、それぞれの区間の間の温度差により求めることができ、数７式により表される。
【００４２】
【数７】
0006285297.tif 000008
【００４３】
なお、数７式中の温度ＴI，ＴI-1，ＴI+1は、それぞれ区間Ｉ、区間（Ｉ−１）、区間（Ｉ＋１）の温度である。また、ｋIは、区間Ｉと区間（Ｉ−１）、区間（Ｉ＋１）との間の熱伝達係数であり、例えばあらかじめ実験などによって算出しておきメモリに格納しておく。
また、Ｑairは区間Ｉの温度と外気温との差により求めることができ、数８式により表される。
【００４４】
【数８】
0006285297.tif 000009
【００４５】
なお、数８式中のｇIは外気への放熱状態を表す関数であり、例えばあらかじめ実験などにより区間毎に関数またはテーブルの形で求めておき、メモリなどに格納しておく。
更に、熱量ＱBNについては、ボールナット９１の移動速度と熱量ＱBNの関係を、例えばあらかじめ実験などによりテーブルの形で求めておき、メモリなどに格納しておく。
【００４６】
数６式に示した熱交換が行われたことによる区間Ｉにおける温度変化ΔＴIは、前記熱量ＱIを区間Ｉの熱容量ｑIで除することによって求めることができる。
【００４７】
【数９】
0006285297.tif 000010
【００４８】
このようにして、所定周期毎に区間ＩについてΔＴIを算出し、区間Ｉの温度ＴIに加算することで区間Ｉの温度ＴIを求めることができる。
【００４９】
【数１０】
0006285297.tif 000011
【００５０】
なお、算出対象となる周期においてボールナット９１が区間Ｉと接していない場合には、数６式の熱量ＱBNの項は熱量０として扱う。
そして、このようにして推定した温度ＴIから、各区間の伸び縮みを推定し、送りねじの伸びを計算する。各区間（区間０〜区間Ｘ）の熱変位量δnIは推定された温度ＴIから数１１式により推定される。
【００５１】
【数１１】
0006285297.tif 000012
【００５２】
数１１式において、Ｔ0は初期温度、ＷIは区間Ｉの長さ、αIは線膨張係数である。
また、送りねじの各位置における熱変位の分布ＬnIは数１２式により推定される。
【００５３】
【数１２】
0006285297.tif 000013
【００５４】
このような手法により、熱変位量と熱変位の分布を同時に推定することができる。なお、本発明において送りねじの熱変位状態の推定方法は上で述べた手法に限定されず、例えば特開平２００２−０１８６７７号公報などにより公知の手法を用いて推定することもできる。
【００５５】
また、熱変位状態を推定するのではなく、位置センサを用いて熱変位量や熱変位の分布の実測値を求めてもよいし、温度センサを用いて温度分布の実測値を求めてもよい。両者を組み合わせて、一部の熱変位状態の実測値を求め、そこから残りの部分の熱変位状態を推定してもよい。
【００５６】
＜２．暖機運転動作の全体の流れ＞
次に、本発明の一実施の形態における暖機運転動作の全体の流れについて説明する。
図６は、暖機運転動作の処理手順を示すフローチャートである。本発明の一実施の形態における暖機運転動作の流れは、あらかじめ通常通りの運転を行い必要なデータを記録する工程（図６（ａ））と、記録されたデータに基づいて実際に効率的な暖機運転を行う工程（図６（ｂ））とから成る。
【００５７】
図６（ａ）の工程は、熱変位が飽和する時点まで工作機械を運転し、熱変位が飽和した状態における熱変位状態をメモリなどに記録する工程である。本工程は、運転開始前に毎日必ず実行する必要があるわけではなく、加工プログラムや加工間のインターバルが変わらない限りは最初に一度だけ実行するようにすればよい。
【００５８】
●［ステップＳＡ０１］工作機械の熱変位が飽和するまで、実際のワークの加工と同じ動作で運転する。工作機械の熱変位が飽和したか否かについては、実際のワークの加工と同じ動作で運転している最中に所定周期毎に各送りねじと主軸の変位を計測するなどして、変位が安定した段階で熱変位が飽和したものと判断すればよい。
●［ステップＳＡ０２］工作機械の熱変位が飽和した段階での、工作機械の駆動状態から各送りねじと主軸の熱変位状態を算出する。本実施の形態では、例えば＜１．熱変位状態の算出＞で説明した手法などにより熱変位状態を算出する。
●［ステップＳＡ０３］ステップＳＡ０２で算出した熱変位状態をメモリに記憶し、各送りねじや主軸の暖機運転動作パターンを決定する。暖機運転動作パターンの決定方法については後述する。
【００５９】
図６（ｂ）の工程は、図６（ａ）のステップＳＡ０３においてメモリに記憶された熱変位状態に基づいて、決定された暖機運転動作パターンに従って暖機運転制御を実行する工程である。本工程は、例えば毎日の運転開始前に実行される。
●［ステップＳＢ０１］ステップＳＡ０３で決定した暖機運転動作パターンに従って暖機運転制御を繰り返す。
●［ステップＳＢ０２］暖機運転動作中に算出された現在の各送りねじと主軸の熱変位状態と、ステップＳＡ０３にて記憶した熱変位が飽和した時点における各送りねじと主軸の熱変位状態とを比較する。現在の熱変位状態と、工作機械の熱変位が飽和した時点における熱変位状態との差が所定の閾値よりも大きい場合はＳＢ０１に移行し、所定の閾値以下になった場合は、ＳＢ０３に移行する。
●［ステップＳＢ０３］暖機運転動作を終了する。
【００６０】
＜３．暖機運転動作パターンの決定方法＞
次に、本発明の一実施の形態における暖機運転動作パターンの決定方法について説明する。
本実施の形態においては、実際のワークの加工に使用する加工プログラムは暖機運転には利用せず、暖機運転プログラムを使用する。暖機運転プログラム中には各送りねじと主軸の暖機運転動作パターンが記載されており、パラメータを変更することで、各送りねじと主軸のそれぞれを個別に稼動、停止させることができる。
【００６１】
＜３．１  主軸の暖機運転動作パターンの決定＞
熱変位が飽和した状態を再現する暖機運転動作パターンを決定するにあたり、主軸の部分的な温度だけでなく、主軸系全体の温度分布を再現することが望ましい。主軸系の温度分布によって主軸取付台やコラムの変形が異なり、主軸の傾きに起因する熱変位量が変化するからである。
【００６２】
主軸は一般的に、低回転よりも高回転の方が暖まりやすい。また、主軸は連続して回転させると、スピンドルモータと主軸が緩やかに温度上昇し、主軸に近い区間では温度が高く、離れた区間では温度が下がるような、緩やかな温度分布になる。しかし、回転と停止を繰り返して断続的に回転させると、特にスピンドルモータが暖まりやすい。スピンドルモータが急激に暖まると、隣接した区間が急激に温度上昇し、激しい温度分布になる。暖機運転によって、これらの緩急のついた温度分布を再現できるように、暖機運転動作パターンを決定する。
【００６３】
本実施の形態における暖機運転動作パターンでは、主軸回転数ＲSと周波数ｆをパラメータとする。主軸は周波数ｆで回転と停止を繰り返し、回転時には主軸回転数ＲSが指令される。例えば図７のようなプログラムが使用される。ここでは周期ｆは１分間中の加減速する回数とする。
【００６４】
図８に示すフローチャートに基づいて、暖機運転動作パターンを決定する。図８に示すフローチャートを各ステップに従って説明する。
なお、本処理を実行する前に、温度の合計値ＴSUM、温度差の平均値ＴDIFと、主軸回転数ＲS、主軸回転周波数ｆとの関係を、あらかじめ実験などにより計測しておき、これら各値を関連付けたテーブルを、データベースとして数値制御装置のＳＲＡＭ１４などのメモリに記憶しておき、後述するステップＳＣ０３、ステップＳＣ０４で当該テーブルを使って主軸回転数ＲS、主軸回転周波数ｆを求める。実験においては、例えば主軸回転数ＲS・主軸回転周波数ｆで断続的に主軸を回転させた際の熱変位が飽和した時点の温度の合計値ＴSUM、温度差の平均値ＴDIFを記録する。
【００６５】
●［ステップＳＣ０１］熱変位が飽和した時点における主軸系の全区間の温度の合計値ＴSUMを算出する。ＴIが区間Ｉの温度とすると、図２に示す二次元モデルでは、温度の合計値ＴSUMは数１３式で表される。
【００６６】
【数１３】
0006285297.tif 000014
【００６７】
●［ステップＳＣ０２］熱変位が飽和した時点における主軸系の隣接区間の温度差の平均値ＴDIFを算出する。図２に示す二次元モデルでは、温度差の平均値ＴDIFは数１４式で表される。
【００６８】
【数１４】
0006285297.tif 000015
【００６９】
●［ステップＳＣ０３］主軸回転数と温度の合計値ＴSUMに関するデータをもとに、温度の合計値ＴSUMに対応する主軸回転数ＲSを決定する。温度の合計値ＴSUMが大きい場合は高い主軸回転数ＲS、温度の合計値ＴSUMが小さい場合は低い主軸回転数ＲSが決定される。
●［ステップＳＣ０４］ＳＣ０３で決定した主軸回転数ＲＳにおける、主軸回転数と温度差の平均値ＴDIFに関するデータをもとに、温度差の平均値ＴDIFに対応する主軸回転周波数ｆを決定する。温度差の平均値ＴDIFが大きい場合は短い周波数ｆ、温度差の平均値ＴDIFが小さい場合は長い周波数ｆが決定される。
●［ステップＳＣ０５］主軸回転数ＲSと主軸回転周波数ｆから、主軸の暖機運転動作パターンを決定し、決定された暖機運転動作パターンに基づいた暖機運転プログラムを生成する。
【００７０】
＜３．２  送りねじの暖機運転動作パターンの決定＞
熱変位が飽和した状態を再現する暖機運転動作パターンを決定するにあたり、送りねじ全体での熱変位量を一致させるだけでなく、実際のワークの加工の動作によって発熱する範囲も再現することが望ましい。一般的に送りねじは均等に発熱せず、ボールナットの移動した箇所が局所的に発熱するため、熱変位の大きい位置と熱変位の少ない位置が存在するからである。
【００７１】
送りねじは一般的に、低速よりも高速で移動した方が、摩擦が大きいために暖まりやすい。そしてボールナットと接していた箇所が発熱し、熱は時間と共に送りねじの端へ伝播する。暖機運転によって、これらの熱変位の分布を再現できるように、暖機運転動作パターンを決定する。
【００７２】
本実施の形態における暖機運転動作パターンでは、折り返し地点Ｒ1、Ｒ2と送り速度ＦBをパラメータとする。送り速度ＦBでテーブルを折り返し地点Ｒ1とＲ2の間で往復運動させる。例えば図９のようなプログラムが使用される。ここではＸ軸の送り速度をＦBX、折り返し地点をＲX1とＲX2、Ｙ軸の送り速度をＦBY、折り返し地点をＲY1とＲY2、Ｚ軸の送り速度をＦBZ、折り返し地点をＲZ1とＲZ2と表現している。
【００７３】
図１０に示すフローチャートに基づいて、暖機運転動作パターンを決定する。図１０に示すフローチャートを各ステップに従って説明する。
なお、本処理を実行する前に、ステップＳＤ０１で述べる熱変位量の合計値ＬnXと送り速度の関係を、あらかじめ実験などにより計測しておき、これら各値を関連付けたテーブルをデータベースとして数値制御装置のＳＲＡＭ１４などのメモリに格納しておき、後述するステップＳＤ０３で当該テーブルを使って熱変位量の合計値ＬnXから送り速度ＦＢを求める。例えば、送り速度ＦBでテーブルを往復運動させた際の、熱変位が飽和した時点での熱変位量の合計値ＬnXを記録する。また、送りねじの熱伝導の特性によって定まるオフセット量αも決定しておく。
【００７４】
●［ステップＳＤ０１］数１５式を用いて、熱変位量の合計値ＬnXを算出する。
【００７５】
【数１５】
0006285297.tif 000016
【００７６】
●［ステップＳＤ０２］折り返し地点Ｒ1、Ｒ2を算出する。折り返し地点Ｒ1、Ｒ2の算出処理を、図８を用いて説明する。まず、グラフＡに表されるように、送りねじの隣接する区間の熱変位量δnIを繋いでグラフとして表現する。このグラフとＸ軸の交わる範囲は、送りねじの発熱した範囲を表している。次に、グラフＢに表されるように、あらかじめ設定したオフセット量αだけ、変位量が小さくなる方向にグラフＡをオフセットする。そしてグラフＢとＸ軸が交わる点、もしくは送りねじの端を折り返し地点Ｒ1、Ｒ2として算出する。熱伝導により、送りねじはボールナットが移動した範囲よりも広い範囲で熱変位を生じる。そのため、オフセット量αによりグラフＡよりも小さくした範囲を折り返し地点Ｒ1、Ｒ2とする。加工プログラムによっては折り返し地点が２個以上存在する場合も考えられるので、その場合は、定期的に往復する範囲を変更する暖機運転動作パターンを作成することで、熱変位の分布を表現する。
●［ステップＳＤ０３］送り速度と熱変位量の合計値ＬnXに関するデータをもとに、熱変位量の合計値ＬnXに対応する送り速度ＦBを決定する。熱変位量の合計値ＬnXが大きい場合は速い送り速度ＦB、熱変位量の合計値ＬnXが小さい場合は遅い送り速度ＦBが決定される。
●［ステップＳＤ０４］折り返し地点Ｒ1、Ｒ2と送り速度ＦBら、送りねじの暖機運転動作パターンを決定し、決定された暖機運転動作パターンに基づいた暖機運転プログラムを生成する。
【００７７】
なお、周囲環境の温度変化などの影響を低減するため、暖機運転中の温度や熱変位量の算出結果から、リアルタイムで暖機運転動作パターンを切り替えてもよい。
【００７８】
＜４．暖機運転の終了判定＞
次に、暖機運転の終了を判定する手段について説明する。
＜４．１  主軸の暖機運転の終了判定＞
暖機運転を行いながら、所定の周期ごとに主軸の熱変位状態の算出を行う。ステップＳＡ０２で算出した各区間の温度と現在の温度を比較し、全区間において、差があらかじめ設定された閾値以下になったら、パラメータを変更することで、主軸の暖機運転を停止する。
【００７９】
＜４．２  送りねじの暖機運転の終了判定＞
暖機運転を行いながら、所定の周期ごとに各送りねじの熱変位状態の算出を行う。ステップＳＡ０２で算出した熱変位量と現在の熱変位量δnIを全区間０〜Ｘに渡って比較し、差があらかじめ設定された閾値以下になったら、パラメータを変更することで、該当する送りねじの暖機運転を停止する。
【符号の説明】
【００８０】
１０    数値制御装置
１１    プロセッサ（ＣＰＵ）
１２    ＲＯＭ
１３    ＲＡＭ
１４    ＳＲＡＭ
１５，１８，１９，２０    インタフェース
１６    ＰＭＣ
１７    Ｉ／Ｏユニット
２１    バス
３０〜３２    軸制御回路
４０〜４２    サーボアンプ
５０〜５２    サーボモータ
６０    スピンドル制御回路
６１    スピンドルアンプ
６２    スピンドルモータ
６３    ポジションコーダ
７０    ＬＣＤ／ＭＤＩユニット
７１    手動パルス発生器
７２    外部機器
【図１】
0006285297.tif 000017
【図２】
0006285297.tif 000018
【図３】
0006285297.tif 000019
【図４】
0006285297.tif 000020
【図５】
0006285297.tif 000021
【図６】
0006285297.tif 000022
【図７】
0006285297.tif 000023
【図８】
0006285297.tif 000024
【図９】
0006285297.tif 000025
【図１０】
0006285297.tif 000026
【図１１】
0006285297.tif 000027