IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ブラザー工業株式会社の特許一覧

特開2024-137262数値制御装置、制御方法、プログラム及び記憶媒体
<>
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図1
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図2
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図3
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図4
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図5
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図6
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図7
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図8
  • 特開-数値制御装置、制御方法、プログラム及び記憶媒体 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024137262
(43)【公開日】2024-10-07
(54)【発明の名称】数値制御装置、制御方法、プログラム及び記憶媒体
(51)【国際特許分類】
   G05B 19/18 20060101AFI20240927BHJP
   B23Q 15/18 20060101ALI20240927BHJP
   G05B 19/404 20060101ALI20240927BHJP
【FI】
G05B19/18 X
B23Q15/18
G05B19/404 K
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2023048717
(22)【出願日】2023-03-24
(71)【出願人】
【識別番号】000005267
【氏名又は名称】ブラザー工業株式会社
(74)【代理人】
【識別番号】100104178
【弁理士】
【氏名又は名称】山本 尚
(72)【発明者】
【氏名】倉橋 優伍
【テーマコード(参考)】
3C001
3C269
【Fターム(参考)】
3C001KA05
3C001KB04
3C001TA04
3C269AB05
3C269BB11
3C269CC02
3C269EF10
3C269EF14
3C269EF39
3C269PP02
3C269PP15
(57)【要約】
【課題】工具交換を正しく行えない可能性がある場合に工具交換を実行しないように制御できる数値制御装置、制御方法、プログラム及び記憶媒体を提供する。
【解決手段】ATC動作を実行する場合において、数値制御装置のCPUは、X軸に対する熱変位補正を行う設定となっている場合(S51:YES)、X軸の熱変位補正量がX軸下限値以上且つX軸上限値以下でなければ(S52:NO)、ATC動作の実行を不可(ATC実行=NG)に設定する(S53)。CPUは、Z軸及びY軸に対する熱変位補正を行う場合においても同様に、ATC動作の実行の可不可を判断する。ATC動作の実行を不可(禁止)とする場合、CPUはアラームによる報知を行う。
【選択図】図8
【特許請求の範囲】
【請求項1】
工具を装着可能な主軸と、前記主軸を回転可能に支持する主軸ヘッドと、前記工具で切削加工を行う被削材を保持するテーブルに対する前記主軸ヘッドの相対的な移動に用いられ、互いに交差する三軸方向に延びる複数の螺子軸と、前記主軸に装着する前記工具の工具交換を行う工具交換装置とを備えた工作機械を、制御指令を有する複数のブロックで構成したNCプログラムに基づき制御する上で、前記複数の螺子軸のうちの少なくとも一つの螺子軸の軸方向における熱変位量の演算結果に基づく前記主軸ヘッドの移動量の補正を行う数値制御装置において、
前記螺子軸の軸方向における前記主軸ヘッドの移動量の補正を指示する熱変位補正指令による指示が有効であるか否かを判断する熱補正判断部と、
前記NCプログラムに従い実行する指令が前記工具の交換を指示する工具交換指令か否かを判断する工具交換判断部と、
実行する指令が前記工具交換指令であると前記工具交換判断部が判断し、且つ前記熱補正判断部が前記熱変位補正指令による指示が有効であると判断した場合に、前記工具交換指令に基づく工具交換動作の実行を禁止する禁止部と
を備えたことを特徴とする数値制御装置。
【請求項2】
前記禁止部は、
前記熱変位補正指令が補正対象とする前記螺子軸の前記軸方向への前記主軸ヘッドの移動量の補正値である熱変位補正量が、所定の限界補正量の範囲内であるか否かを判断する限界判断部を含み、
実行する指令が前記工具交換指令であると前記工具交換判断部が判断し、且つ前記熱補正判断部が前記熱変位補正指令による指示が有効であると判断し、更に前記限界判断部が前記限界補正量の範囲を超えると判断した場合に、前記工具交換指令に基づく工具交換動作の実行を禁止すること
を特徴とする請求項1に記載の数値制御装置。
【請求項3】
前記禁止部が前記工具交換指令に基づく工具交換動作の実行を禁止した場合に、禁止したことを報知する報知部を備えたこと
を特徴とする請求項2に記載の数値制御装置。
【請求項4】
前記主軸ヘッドは、工具交換時に、前記工具による前記被削材の加工終了後に移動する位置であり前記工具が前記被削材に衝突しない復帰位置から、前記工具交換装置が前記主軸に保持する前記工具を次に使用する工具である次工具と交換する位置である交換位置へ移動する過程で、前記主軸ヘッドが前記工具を前記工具交換装置の工具保持部に保持させるため移動する方向である交換方向とは反対の方向において前記交換位置から離れた位置である準備位置を経由する移動を行い、
前記工具交換指令は、
前記主軸ヘッドを前記復帰位置から前記準備位置へ移動する指令である第一移動指令と、
前記主軸ヘッドを前記準備位置から前記交換位置へ移動する指令である第二移動指令と
を含み、
前記工具交換判断部は、実行中の指令が前記第二移動指令であるか否かに基づいて、実行する指令が前記工具交換指令であるか否かを判断すること
を特徴とする請求項3に記載の数値制御装置。
【請求項5】
前記工具交換判断部は、実行を開始する指令が前記第二移動指令であるか否かに基づいて、実行する指令が前記工具交換指令であるか否かを判断すること
を特徴とする請求項4に記載の数値制御装置。
【請求項6】
前記限界判断部は、
前記主軸ヘッドが前記準備位置に位置する場合の前記交換方向に沿う方向における前記熱変位補正量が前記限界補正量の範囲内であるか否かを判断すること
を特徴とする請求項5に記載の数値制御装置。
【請求項7】
工具を装着可能な主軸と、前記主軸を回転可能に支持する主軸ヘッドと、前記工具で切削加工を行う被削材を保持するテーブルに対する前記主軸ヘッドの相対的な移動に用いられ、互いに交差する三軸方向に延びる複数の螺子軸と、前記主軸に装着する前記工具の工具交換を行う工具交換装置とを備えた工作機械を、制御指令を有する複数のブロックで構成したNCプログラムに基づき制御する上で、前記複数の螺子軸のうちの少なくとも一つの螺子軸の軸方向における熱変位量の演算結果に基づく前記主軸ヘッドの移動量の補正を行う数値制御装置の制御方法において、
前記螺子軸の軸方向における前記主軸ヘッドの移動量の補正を指示する熱変位補正指令による指示が有効であるか否かを判断する熱補正判断ステップと、
前記NCプログラムに従い実行する指令が前記工具の交換を指示する工具交換指令か否かを判断する工具交換判断ステップと、
実行する指令が前記工具交換指令であると前記工具交換判断ステップにおいて判断され、且つ前記熱補正判断ステップにおいて前記熱変位補正指令による指示が有効であると判断された場合に、前記工具交換指令に基づく工具交換動作の実行を禁止する禁止ステップと
を備えたことを特徴とする制御方法。
【請求項8】
工具を装着可能な主軸と、前記主軸を回転可能に支持する主軸ヘッドと、前記工具で切削加工を行う被削材を保持するテーブルに対する前記主軸ヘッドの相対的な移動に用いられ、互いに交差する三軸方向に延びる複数の螺子軸と、前記主軸に装着する前記工具の工具交換を行う工具交換装置とを備えた工作機械を、制御指令を有する複数のブロックで構成したNCプログラムに基づき制御する上で、前記複数の螺子軸のうちの少なくとも一つの螺子軸の軸方向における熱変位量の演算結果に基づく前記主軸ヘッドの移動量の補正を行う数値制御装置を機能させるプログラムにおいて、
コンピュータに、
前記螺子軸の軸方向における前記主軸ヘッドの移動量の補正を指示する熱変位補正指令による指示が有効であるか否かを判断する熱補正判断ステップと、
前記NCプログラムに従い実行する指令が前記工具の交換を指示する工具交換指令か否かを判断する工具交換判断ステップと、
実行する指令が前記工具交換指令であると前記工具交換判断ステップにおいて判断され、且つ前記熱補正判断ステップにおいて前記熱変位補正指令による指示が有効であると判断された場合に、前記工具交換指令に基づく工具交換動作の実行を禁止する禁止ステップと
を実行させることを特徴とするプログラム。
【請求項9】
工具を装着可能な主軸と、前記主軸を回転可能に支持する主軸ヘッドと、前記工具で切削加工を行う被削材を保持するテーブルに対する前記主軸ヘッドの相対的な移動に用いられ、互いに交差する三軸方向に延びる複数の螺子軸と、前記主軸に装着する前記工具の工具交換を行う工具交換装置とを備えた工作機械を、制御指令を有する複数のブロックで構成したNCプログラムに基づき制御する上で、前記複数の螺子軸のうちの少なくとも一つの螺子軸の軸方向における熱変位量の演算結果に基づく前記主軸ヘッドの移動量の補正を行う数値制御装置を機能させるプログラムにおいて、
コンピュータに、
前記螺子軸の軸方向における前記主軸ヘッドの移動量の補正を指示する熱変位補正指令による指示が有効であるか否かを判断する熱補正判断ステップと、
前記NCプログラムに従い実行する指令が前記工具の交換を指示する工具交換指令か否かを判断する工具交換判断ステップと、
実行する指令が前記工具交換指令であると前記工具交換判断ステップにおいて判断され、且つ前記熱補正判断ステップにおいて前記熱変位補正指令による指示が有効であると判断された場合に、前記工具交換指令に基づく工具交換動作の実行を禁止する禁止ステップと
を実行させるプログラム
を記憶することを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、数値制御装置、制御方法、プログラム及び記憶媒体に関する。
【背景技術】
【0002】
工作機械は、工具を装着する主軸を回転可能に保持する主軸ヘッドと、主軸ヘッドに連結するナットと、転動体を介してナットに螺合する螺子軸を備える。モータの駆動により螺子軸が回転することで、主軸は螺子軸に沿って移動する。駆動時、螺子軸とナットとの間で生ずる摩擦熱及びモータの駆動によって生ずる熱により螺子軸が延びると、主軸の移動位置が変位する。引用文献1に記載の工作機械の数値制御装置は、螺子軸の発熱量と、螺子軸に連結したモータの発熱量とに基づいて、螺子軸の熱変位量を演算する。数値制御装置は演算結果に基づいて螺子軸を駆動し、補正後の位置へ主軸を移動する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第6582522号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
熱変位量に応じた主軸の移動位置の補正を行って被削材の加工を行う場合において、プログラムで指定した加工位置と、実際に加工される位置との間にずれが生じた場合に、ユーザは、主軸の移動位置に対して調整を行う場合がある。特許文献1の数値制御装置は、軸移動の動作パターン等から推測に基づく演算によって熱変位量を演算するため、特に環境温度等の使用環境の影響を受けた場合に、熱変位量に推測誤差が含まれる。このため、ユーザが調整を誤って設定してしまった場合や、熱変位量の推定誤差分の移動量が加えられると、加工位置だけでなく工具交換を行う位置がずれてしまい、工具交換を正しく行えない可能性がある。
【0005】
本発明の目的は、工具交換を正しく行えない可能性がある場合に工具交換を実行しないように制御できる数値制御装置、制御方法、プログラム及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の第一態様によれば、工具を装着可能な主軸と、前記主軸を回転可能に支持する主軸ヘッドと、前記工具で切削加工を行う被削材を保持するテーブルに対する前記主軸ヘッドの相対的な移動に用いられ、互いに交差する三軸方向に延びる複数の螺子軸と、前記主軸に装着する前記工具の工具交換を行う工具交換装置とを備えた工作機械を、制御指令を有する複数のブロックで構成したNCプログラムに基づき制御する上で、前記複数の螺子軸のうちの少なくとも一つの螺子軸の軸方向における熱変位量の演算結果に基づく前記主軸ヘッドの移動量の補正を行う数値制御装置において、前記螺子軸の軸方向における前記主軸ヘッドの移動量の補正を指示する熱変位補正指令による指示が有効であるか否かを判断する熱補正判断部と、前記NCプログラムに従い実行する指令が前記工具の交換を指示する工具交換指令か否かを判断する工具交換判断部と、実行する指令が前記工具交換指令であると前記工具交換判断部が判断し、且つ前記熱補正判断部が前記熱変位補正指令による指示が有効であると判断した場合に、前記工具交換指令に基づく工具交換動作の実行を禁止する禁止部とを備えたことを特徴とする数値制御装置が提供される。数値制御装置は、工具交換指令を実行する場合に、主軸ヘッドの移動量を補正する熱変位補正指令による指示が有効であれば、工具交換動作を実行しない。故に数値制御装置は、熱変位量の演算結果に基づく補正量に含まれる推測誤差と、ユーザによる主軸ヘッドの移動量の調整によって、主軸ヘッドの移動位置が、仮に、工具交換装置による工具交換の位置に対して大きくずれていたとしても、工具交換動作の実行を禁止すれば、工具交換装置を破損することはない。
【0007】
第一態様の前記禁止部は、前記熱変位補正指令が補正対象とする前記螺子軸の前記軸方向への前記主軸ヘッドの移動量の補正値である熱変位補正量が、所定の限界補正量の範囲内であるか否かを判断する限界判断部を含み、実行する指令が前記工具交換指令であると前記工具交換判断部が判断し、且つ前記熱補正判断部が前記熱変位補正指令による指示が有効であると判断し、更に前記限界判断部が前記限界補正量の範囲を超えると判断した場合に、前記工具交換指令に基づく工具交換動作の実行を禁止してもよい。工具交換装置は、工具交換の位置に対する主軸ヘッドの移動位置のずれに対して許容し得る機械的なずれの範囲を有する。数値制御装置は、工具交換指令を実行する場合に、主軸ヘッドの移動量を補正する熱変位補正指令による指示が有効であっても、熱変位補正量が許容量である限界補正量の範囲内に納まれば、工具交換動作を実行する。即ち数値制御装置は、主軸ヘッドの移動位置が、工具交換装置による工具交換の位置に対して限界補正量の範囲を超えてずれていれば、工具交換動作の実行を禁止するので、工具交換装置を破損することはない。
【0008】
第一態様において、前記禁止部が前記工具交換指令に基づく工具交換動作の実行を禁止した場合に、禁止したことを報知する報知部を備えてもよい。数値制御装置は、工具交換動作の実行を禁止した場合、その旨の報知を行う。故にユーザは、主軸ヘッドの移動位置がずれていることを認識し、工具交換を正しく行えるように調整する作業を行うことができる。
【0009】
第一態様の前記主軸ヘッドは、工具交換時に、前記工具による前記被削材の加工終了後に移動する位置であり前記工具が前記被削材に衝突しない復帰位置から、前記工具交換装置が前記主軸に保持する前記工具を次に使用する工具である次工具と交換する位置である交換位置へ移動する過程で、前記主軸ヘッドが前記工具を前記工具交換装置の工具保持部に保持させるため移動する方向である交換方向とは反対の方向において前記交換位置から離れた位置である準備位置を経由する移動を行い、前記工具交換指令は、前記主軸ヘッドを前記復帰位置から前記準備位置へ移動する指令である第一移動指令と、前記主軸ヘッドを前記準備位置から前記交換位置へ移動する指令である第二移動指令とを含み、前記工具交換判断部は、実行中の指令が前記第二移動指令であるか否かに基づいて、実行する指令が前記工具交換指令であるか否かを判断してもよい。数値制御装置は、主軸ヘッドの準備位置から交換位置への移動中に、工具交換動作の実行を禁止するか否かを判断する。よって数値制御装置は、復帰位置から準備位置への主軸ヘッドの移動を制限なく行うことができる。
【0010】
第一態様の前記工具交換判断部は、実行を開始する指令が前記第二移動指令であるか否かに基づいて、実行する指令が前記工具交換指令であるか否かを判断してもよい。数値制御装置は、主軸ヘッドが準備位置から交換位置への移動を開始する場合に、工具交換動作の実行を禁止するか否かを判断する。よって数値制御装置は、復帰位置から準備位置への主軸ヘッドの移動を制限なく行うことができる。
【0011】
第一態様の前記限界判断部は、前記主軸ヘッドが前記準備位置に位置する場合の前記交換方向に沿う方向における前記熱変位補正量が前記限界補正量の範囲内であるか否かを判断してもよい。準備位置は、主軸ヘッドが交換位置に移動する直前に経由する位置である。故に数値制御装置は、交換位置に近いため熱変位補正量の誤差がより小さい準備位置における熱変位補正量を用い、限界補正量の範囲内であるか否かを判断することができる。
【0012】
本発明の第二態様によれば、工具を装着可能な主軸と、前記主軸を回転可能に支持する主軸ヘッドと、前記工具で切削加工を行う被削材を保持するテーブルに対する前記主軸ヘッドの相対的な移動に用いられ、互いに交差する三軸方向に延びる複数の螺子軸と、前記主軸に装着する前記工具の工具交換を行う工具交換装置とを備えた工作機械を、制御指令を有する複数のブロックで構成したNCプログラムに基づき制御する上で、前記複数の螺子軸のうちの少なくとも一つの螺子軸の軸方向における熱変位量の演算結果に基づく前記主軸ヘッドの移動量の補正を行う数値制御装置の制御方法において、前記螺子軸の軸方向における前記主軸ヘッドの移動量の補正を指示する熱変位補正指令による指示が有効であるか否かを判断する熱補正判断ステップと、前記NCプログラムに従い実行する指令が前記工具の交換を指示する工具交換指令か否かを判断する工具交換判断ステップと、実行する指令が前記工具交換指令であると前記工具交換判断ステップにおいて判断され、且つ前記熱補正判断ステップにおいて前記熱変位補正指令による指示が有効であると判断された場合に、前記工具交換指令に基づく工具交換動作の実行を禁止する禁止ステップとを備えたことを特徴とする制御方法が提供される。故に第二態様は、第一態様と同様の効果を奏する。
【0013】
本発明の第三態様によれば、工具を装着可能な主軸と、前記主軸を回転可能に支持する主軸ヘッドと、前記工具で切削加工を行う被削材を保持するテーブルに対する前記主軸ヘッドの相対的な移動に用いられ、互いに交差する三軸方向に延びる複数の螺子軸と、前記主軸に装着する前記工具の工具交換を行う工具交換装置とを備えた工作機械を、制御指令を有する複数のブロックで構成したNCプログラムに基づき制御する上で、前記複数の螺子軸のうちの少なくとも一つの螺子軸の軸方向における熱変位量の演算結果に基づく前記主軸ヘッドの移動量の補正を行う数値制御装置を機能させるプログラムにおいて、コンピュータに、前記螺子軸の軸方向における前記主軸ヘッドの移動量の補正を指示する熱変位補正指令による指示が有効であるか否かを判断する熱補正判断ステップと、前記NCプログラムに従い実行する指令が前記工具の交換を指示する工具交換指令か否かを判断する工具交換判断ステップと、実行する指令が前記工具交換指令であると前記工具交換判断ステップにおいて判断され、且つ前記熱補正判断ステップにおいて前記熱変位補正指令による指示が有効であると判断された場合に、前記工具交換指令に基づく工具交換動作の実行を禁止する禁止ステップとを実行させることを特徴とするプログラムが提供される。故に第三態様は、第一態様と同様の効果を奏する。
【0014】
本発明の第四態様によれば、工具を装着可能な主軸と、前記主軸を回転可能に支持する主軸ヘッドと、前記工具で切削加工を行う被削材を保持するテーブルに対する前記主軸ヘッドの相対的な移動に用いられ、互いに交差する三軸方向に延びる複数の螺子軸と、前記主軸に装着する前記工具の工具交換を行う工具交換装置とを備えた工作機械を、制御指令を有する複数のブロックで構成したNCプログラムに基づき制御する上で、前記複数の螺子軸のうちの少なくとも一つの螺子軸の軸方向における熱変位量の演算結果に基づく前記主軸ヘッドの移動量の補正を行う数値制御装置を機能させるプログラムにおいて、コンピュータに、前記螺子軸の軸方向における前記主軸ヘッドの移動量の補正を指示する熱変位補正指令による指示が有効であるか否かを判断する熱補正判断ステップと、前記NCプログラムに従い実行する指令が前記工具の交換を指示する工具交換指令か否かを判断する工具交換判断ステップと、実行する指令が前記工具交換指令であると前記工具交換判断ステップにおいて判断され、且つ前記熱補正判断ステップにおいて前記熱変位補正指令による指示が有効であると判断された場合に、前記工具交換指令に基づく工具交換動作の実行を禁止する禁止ステップとを実行させるプログラムを記憶することを特徴とする記憶媒体が提供される。故に第四態様は、第一態様と同様の効果を奏する。
【図面の簡単な説明】
【0015】
図1】後方右上方から見た工作機械1の斜視図である。
図2】工作機械1の右側面図である。
図3】X軸移動機構11、Z軸移動機構12、Y軸移動機構13を模式的に示す斜視図である。
図4】グリップアーム35の斜視図である。
図5】加工領域、ATC領域、各基準点を示す図である。
図6】工作機械1の電気的構成を示すブロック図である。
図7】NC制御処理(自動)のフローチャートである。
図8】ATC実行確認処理のフローチャートである。
図9】NC制御処理(手動)のフローチャートである。
【発明を実施するための形態】
【0016】
本発明の一実施形態を説明する。以下説明は図中に矢印で示す左右、前後、上下を使用する。工作機械1の左右方向、上下方向、前後方向は夫々、工作機械1のX軸方向、Y軸方向、Z軸方向である。図1に示す工作機械1は、主軸7が前後方向(Z軸方向)に延びる横形であり、コラム5がX軸方向とZ軸方向に移動するコラムトラバース型の工作機械である。本実施形態に記載する「ATC」とは「Automatic Tool Changer」の略称である。また、本実施形態に記載する「NC」とは「Numerical Control」の略称である。
【0017】
工作機械1の構造を説明する。図1図2に示すように、工作機械1は基台2、コラム5、X軸移動機構11、Z軸移動機構12、Y軸移動機構13(図3参照)、主軸ヘッド6、主軸7、制御箱8、回転テーブル9、ATC装置30等を備える。
【0018】
基台2はZ軸方向に長い略直方体状の鉄製土台である。X軸移動機構11は基台2上面後部に設け、移動体15をX軸方向に移動可能に支持する。Z軸移動機構12は移動体15上面に設ける。Z軸移動機構12はコラム5をZ軸方向に移動可能に支持する。コラム5は上下方向に延びる立柱である。コラム5は前面に縦長矩形状の貫通口5Aを備える。貫通口5Aはコラム5を前後方向に貫通する。Y軸移動機構13はコラム5前面に設け、主軸ヘッド6をY軸方向に移動可能に支持する。
【0019】
図3に示すように、X軸移動機構11、Z軸移動機構12、Y軸移動機構13はボール螺子駆動系の機構である。図3は、図1に示すX軸移動機構11、Z軸移動機構12、Y軸移動機構13夫々の主要部分を簡略化して図示する。X軸移動機構11は、基台2の上面に、一対のX軸リニアガイド11A、X軸ボール螺子11B、X軸モータ62を備える。X軸リニアガイド11AはX軸方向に延出し、移動体15をX軸方向に案内する。X軸ボール螺子11BはX軸方向に延び、一対のX軸リニアガイド11Aの間に配置する。移動体15は下面にナット(図示略)を備える。ナットはX軸ボール螺子11Bに螺合する。X軸モータ62はX軸ボール螺子11Bを正逆方向に回転する。故に移動体15はナットと共にX軸方向に移動する。
【0020】
Z軸移動機構12は、移動体15の上面に、一対のZ軸リニアガイド12A、Z軸ボール螺子12B、Z軸モータ63を備える。Z軸リニアガイド12AはZ軸方向に延出し、コラム5をZ軸方向に案内する。Z軸ボール螺子12BはZ軸方向に延び、一対のZ軸リニアガイド12Aの間に配置する。コラム5は下面にナット(図示略)を備える。ナットはZ軸ボール螺子12Bに螺合する。Z軸モータ63はZ軸ボール螺子12Bを正逆方向に回転する。故にコラム5はナットと共にZ軸方向に移動し、更に移動体15を介してX軸方向にも移動する。Y軸移動機構13は、コラム5に、Y軸ボール螺子13B、Y軸モータ64を備える。Y軸ボール螺子13BはY軸方向に延び、コラム5の前面に配置する。主軸ヘッド6は貫通口5A内に位置する。主軸ヘッド6はナット(図示略)を備える。ナットはY軸ボール螺子13Bに螺合する。Y軸モータ64はY軸ボール螺子13Bを正逆方向に回転する。故に主軸ヘッド6はナットと共にY軸方向に移動し、更に、コラム5及び移動体15を介してZ軸方向及びX軸方向にも移動する。
【0021】
図1図2に示すように、主軸ヘッド6はZ軸方向に延び、Y軸移動機構13によりコラム5前面に沿ってY軸方向に移動可能に設ける。主軸ヘッド6はY軸方向において加工領域と工具交換領域(以下「ATC領域」という。図2参照)の間を移動可能である。加工領域はY軸原点よりも基台2側(下側)の空間に設けられる。Y軸原点はY軸の機械座標が0の位置(Y=0mm)である。加工領域は回転テーブル9に固定された被削材(ワーク)の加工を行う領域である。ATC領域は、Y軸原点に対して加工領域とは反対側(上側)の空間であり、Z軸方向にて加工領域と重なる位置に設けられる。ATC領域はATC装置30による工具交換を行う領域である。工作機械1は主軸ヘッド6を上下動させることで、主軸7を加工領域とATC領域の夫々に移動できる。
【0022】
主軸7は主軸ヘッド6内にて主軸ヘッド6と同軸上に設ける。主軸ヘッド6は主軸7を回転可能に支持する。主軸ヘッド6後部にはモータ保持箱29を固定する。モータ保持箱29は主軸ヘッド6後部から後方に延び、主軸モータ61(図3参照)を内側に保持する。モータ保持箱29はコラム5の貫通口5Aから後方に突出する。主軸モータ61の出力軸は前方に延び、主軸7の後端部と同軸上に連結する。
【0023】
主軸7は工具装着穴38、ホルダ保持部材19(図2参照)を備える。工具装着穴38は主軸7先端部(前端部)に設ける。工具装着穴38は主軸7の先端部に向けて略円錐状に拡径する。ホルダ保持部材19は工具装着穴38の奥側に設ける。工具装着穴38には、工具ホルダ90(図2参照)が着脱自在に装着する。工具ホルダ90は被把持部94、テーパ部92、プルスタッド93(図2参照)を備える。被把持部94は工具ホルダ90の一端側に円筒状に形成し、内部に工具91を保持する。被把持部94は、外周面を一周する溝部95を有する。溝部95の側壁部分はテーパ状である。被把持部94は、後述するグリップアーム35の把持部358に把持される部位である。溝部95の幅は、グリップアーム35のローラ部356,357(後述)の幅よりも大きい。工具ホルダ90は他端側にテーパ部92とプルスタッド93(図2参照)を備える。テーパ部92は略円錐状であり、主軸7の工具装着穴38に密着する。プルスタッド93はテーパ部92の頂上部から後方に突出する。工具装着穴38にテーパ部92を装着すると、ホルダ保持部材19はプルスタッド93を保持し、工具91を保持する工具ホルダ90を主軸7に装着する。
【0024】
基台2後部には一対の支持部材17,18を設ける。支持部材17,18は左右方向に互いに離間し且つ上方に延び、制御箱8を下方から支持する。制御箱8は内部に制御盤(図示略)を収納する。制御盤は工作機械1の動作を制御する。基台2上面前側には固定台16を回転可能に設ける。回転テーブル9は固定台16に固定する。回転テーブル9は主軸ヘッド6の前方に位置する。回転テーブル9は上面にワークを治具(図示略)で固定し、Y軸方向に平行な回転軸を中心に360度回転可能である。
【0025】
基台2上面前側で且つ左右両側には一対の支持柱21,22を設ける。支持柱21と22の互いに対向する夫々の上部の間には連結板23(図1参照)を固定する。ATC装置30は連結板23前面に固定する。故にATC装置30は支持柱21,22により、コラム5と回転テーブル9の間で且つ主軸ヘッド6上方に位置する。ATC装置30は工具マガジン31、減速機32、マガジンモータ33等を備える。工具マガジン31はマガジンベース37と複数のグリップアーム35を備える。マガジンベース37は略円盤状であり、前後方向に延び前側が後側に対して下方に傾斜する旋回軸(図示略)を中心に連結板23前面にて回転可能に支持する。減速機32とマガジンモータ33は工具マガジン31に取り付ける。マガジンモータ33の出力軸(図示略)は減速機32を介してマガジンベース37の旋回軸に噛合する。マガジンモータ33の動力は減速機32を介してマガジンベース37の旋回軸に伝達する。
【0026】
複数のグリップアーム35はマガジンベース37の外周部に沿って並んで設け、径方向外側に向けて放射状に延びる。グリップアーム35は、工具ホルダ90を水平に寝かせた姿勢で、工具ホルダ90に直交するY軸方向から工具ホルダ90を把持する。図4に示すように、グリップアーム35は、基台351、一対の爪部材352,353、バネ部材355を備える。基台351は上下方向に延びる。基台351の上端部はマガジンベース37の外周部に複数の螺子で固定する。基台351の下端部には係合部354を形成する。係合部354は工具ホルダ90の溝部95内に上方から係合する部分である。
【0027】
一対の爪部材352,353は上下方向に延び、左右方向に並べて配置する。爪部材352,353は夫々、上下方向略中央において、前後方向を回転軸として回動可能に基台351に支持する。爪部材352,353の下端部は前後方向を回転軸とするローラ部356,357を備える。バネ部材355は爪部材352,353の夫々の上端部間に配置し、ローラ部356とローラ部357とが互いに接近する方向に付勢する。
【0028】
係合部354と一対の爪部材352,353は、工具ホルダ90を把持する把持部358である。把持部358は、工具ホルダ90の被把持部94の溝部95内に係合部354を係合させ、一対の爪部材352,353のローラ部356,357を溝部95内に配置して、付勢力によって被把持部94を挟み込むことで被把持部94を把持する。主軸7と工具交換を行うグリップアーム35は、工具マガジン31のATC位置(後述)に移動する。ATC位置は工具マガジン31の最下部の位置である。ATC位置において、グリップアーム35の上下方向、左右方向、前後方向は夫々、工作機械1のY軸方向、X軸方向、Z軸方向に配置する。
【0029】
熱の影響により、グリップアーム35の工具受渡位置に対する主軸7のATC位置にずれが生ずると、工具ホルダ90の被把持部94は、グリップアーム35の把持部358に対して位置がずれる。Z軸方向において、グリップアーム35は、ローラ部356,357が工具ホルダ90の溝部95のテーパ状の側壁部分から底壁部分に案内されることで、Z軸方向のずれを機械的に補正できる。X軸方向において、グリップアーム35は、工具ホルダ90の溝部95をローラ部356,357で夫々+X方向,-X方向に押圧し、押圧力が釣り合うことで、X軸方向のずれを機械的に補正できる。Y軸方向において、グリップアーム35は、工具ホルダ90の溝部95をローラ部356,357でY軸方向に押圧し、係合部354に対して押し付けることで、Y軸方向のずれを機械的に補正できる。
【0030】
図1図2に示すように、支持柱21,22の夫々の上部の前面には、マガジンカバー(図示略)を固定する。マガジンカバーは箱状であり工具マガジン31の周囲を覆う。マガジンカバーは切粉と切削液の飛沫が工具マガジン31に付着するのを防止する。マガジンカバーの底壁には開口部(図示略)を設ける。開口部は底面視矩形状であり、工具マガジン31の最下部であるATC位置の直下に位置する。開口部にはシャッタ(図示略)を設ける。シャッタは制御盤の制御により開口部を開閉する。シャッタの開放時、主軸7は開口部を通過し、ATC位置に移動することができる。
【0031】
図5を参照し、機械原点、及びATC領域に設定される複数の基準点について説明する。工作機械1の機械原点は、X軸とY軸の夫々の機械座標が0の位置で且つZ軸の機械座標が加工領域の後端位置であり、工作機械1の構造に応じて決まる。X軸の機械原点はX軸原点(X=0mm)、Y軸の機械原点はY軸原点(Y=0mm)、Z軸の機械原点はZ軸原点(Z=後端位置)である。なお、機械原点は工作機械1の構造によって位置が変わるので、その機械原点を基準に設定される加工領域とATC領域の大きさも工作機械1の構造によって変わる。
【0032】
ATC領域には、工具交換位置(以下「ATC位置」という)、ATC原点、ATC準備位置が設定される。これらATC位置、ATC原点、ATC準備位置は、工具交換動作(以下「ATC動作」という)を行うときに、主軸7を移動して位置決めする基準点である。ATC位置は、工具マガジン31における工具受渡位置に割出されたグリップアーム35との間で工具を受け渡しする位置である。ATC原点は、ATC位置からZ軸+方向(後方)に移動した位置であり、ATC領域の後端の位置である。ATC原点は、グリップアーム35が把持する工具と主軸7が干渉せずに工具マガジン31が旋回可能な位置である。ATC準備位置は、ATC位置からY軸-方向(下方)に移動した位置であり、加工領域とATC領域の境界の位置である。ATC準備位置は、ATC位置とZ軸方向において同一座標の位置である。
【0033】
上記3つの基準点に基づき、ATC領域には、工具交換経路51,52が設定される。工具交換経路51,52は逆L字状の経路を形成する。工具交換経路51は、ATC準備位置からATC位置までY軸+方向に(上方)に延びる経路である。工具交換経路52は、ATC位置からATC原点までZ軸+方向(後方)に延びる経路である。工具交換経路51,52は、ATC動作時に主軸ヘッド6を移動させる経路である。本実施形態では原則、ATC領域において、主軸7は工具交換経路51,52上のみ移動でき、それ以外は移動できないように動作制限がかけられている。
【0034】
工作機械1のATC動作の一例を説明する。本実施形態はATC動作中における主軸7の位置を説明する為、主軸ヘッド6の移動を「主軸7の移動」と表現して説明する。また、以下説明において、X軸におけるATC位置をATC位置X軸、Y軸におけるATC位置をATC位置Y軸、Z軸におけるATC位置をATC位置Z軸という。
【0035】
ワーク加工終了時、主軸7は例えば加工領域内のP0点に位置する。このとき、マガジンカバーのシャッタは閉じた状態である。主軸7は工具91を保持する工具ホルダ90を工具装着穴38に装着する(図2参照)。主軸7のホルダ保持部材19は工具ホルダ90のプルスタッド93を保持する。
【0036】
工作機械1は、P0点に位置する主軸7のZ軸をZ軸原点に向けて後退しつつ(矢印A1参照)、主軸7のオリエント動作を行う。オリエント動作とは、主軸7の角度を基準位置(例えば0度)に戻す動作である。主軸7はP1点に到達する。次いで、マガジンカバーのシャッタを開き、P1点に位置する主軸7のX軸をATC位置X軸まで移動しつつY軸をY軸原点(Y=0mm)まで移動する(矢印A2参照)。主軸7はP2点に到達する。次いで、P2点に位置する主軸7のZ軸をATC位置Z軸まで前進する(矢印A3参照)。主軸7はATC準備位置に到達する。
【0037】
次いで、主軸7をATC準備位置から工具交換経路51に沿って上昇させる(矢印A4参照)。このとき、マガジンカバーの開口部を介して、工具受渡位置に割出されたグリップアーム35が下方に向けて露出する。主軸7の上昇により、主軸7に装着された工具ホルダ90はマガジンカバーの開口部を通過し、グリップアーム35に対して下方から押し込まれる。主軸7がATC位置に到達すると、主軸7に装着された工具ホルダ90がグリップアーム35に係合して把持される。これと同時に、主軸7内のホルダ保持部材19はプルスタッド93の保持を解除する。これで、工具ホルダ90は主軸7から取り外し可能となる。
【0038】
工作機械1は、グリップアーム35が主軸7に装着する工具ホルダ90を挟持した状態で、主軸7をATC位置から工具交換経路52に沿って後退させる(矢印A5参照)。主軸7がATC原点に到達すると、主軸7から工具ホルダ90が抜ける。次いで、ATC装置30は工具マガジン31を時計回り方向(正転)又は反時計回り方向(逆転)に旋回し、次に装着する工具(以下「次工具」という)の工具ホルダを保持するグリップアーム35を工具受渡位置に割り出す(旋回する矢印A61(正転),A62(逆転)参照)。これにより、次工具の工具ホルダはZ軸方向において主軸7の前方に配置される。
【0039】
次いで、工作機械1は、主軸7をATC原点から工具交換経路52に沿って前進させる(矢印A7参照)。これにより、次工具の工具ホルダが主軸7に挿入される。ATC位置に到達すると同時に、次工具の工具ホルダが主軸7に装着される。主軸7内のホルダ保持部材19は工具ホルダのプルスタッド93を保持する。
【0040】
次いで、工作機械1は、次工具の工具ホルダが装着された主軸7をATC位置から工具交換経路51に沿って下降させ、ATC準備位置に位置決めする(矢印A8参照)。これで主軸7のATC動作が完了する。工作機械1はワーク加工を引き続き行う為、次工具の工具ホルダが装着された主軸7をATC準備位置から加工領域内の次の指令点に向けて移動させる。指令点とは、ATC動作完了後に主軸7を移動させる目標位置であり、例えばNCプログラムの制御コマンドで設定してもよい。
【0041】
なお、上記の例では、P0点に位置する主軸7のZ軸をZ軸原点まで後退させたが、例えば主軸7に装着された工具91が回転テーブル9上のワーク及び治具に接触しないR点(復帰点)を設定し、そのR点まで後退させてもよい。この場合、R点はATC位置Z軸(Z軸におけるATC位置)よりも前方に位置してもよい。R点がATC位置Z軸よりも前方に位置する場合、主軸7は、R点からATC準備位置へP2点を経由せずに移動してもよい。
【0042】
図6を参照し、工作機械1の電気的構成について説明する。工作機械1は、数値制御装置40、主軸モータ61、X軸モータ62、Z軸モータ63、Y軸モータ64、マガジンモータ33、駆動回路71~75、エンコーダ61A,62A,63A,64A,33A、操作パネル25、スピーカ28等を備える。
【0043】
数値制御装置40はCPU41、ROM42、RAM43、記憶装置44、通信I/45、入出力インターフェイス46等を備える。CPU41は数値制御装置40を統括制御する。ROM42は、NC制御プログラム等の各種プログラム等を記憶する。NC制御プログラムは、後述のNC制御処理(図7参照)を実行するものである。RAM43は各種処理実行中の各種データを記憶する。記憶装置44は不揮発性メモリであり、例えば加工するためのNCプログラムの他、各種データを記憶する。通信I/F45は、有線又は無線で端末(図示略)と接続可能である。入出力インターフェイス46は操作パネル25とスピーカ28と駆動回路71~75に接続する。
【0044】
記憶装置44には、X軸、Z軸、Y軸の夫々に対する熱変位補正量の許容範囲に対する設定値と、ユーザによる熱変位補正量の調整値とが記憶される。許容範囲の設定値は、工具受渡位置に割出されたグリップアーム35が工具ホルダ90を把持する場合における把持部358と被把持部94とのずれに対する機械的な許容量である。Z軸方向の許容範囲は、工具ホルダ90の溝部95の幅の範囲に基づく。X軸方向の許容範囲は、グリップアーム35の一対の爪部材352,353の回動可能な範囲に基づく。Y軸方向の許容範囲は、グリップアーム35の一対の爪部材352,353の回動可能な範囲に基づく。許容範囲の設定値は、+X方向、-X方向、+Z方向、-Z方向、+Y方向、-Y方向の夫々において、0.000~9.999mmの範囲で、グリップアーム35及び工具ホルダ90の仕様に基づきユーザが設定可能である。調整値は、熱変位補正量の誤差によるグリップアーム35の工具受渡位置と主軸7のATC位置とのずれに対し、ユーザが補正を行う場合に設定する調整量であり、熱変位補正量に対して乗算する効き具合(%)が設定される。
【0045】
主軸モータ61は工具を装着した主軸7を回転する。X軸モータ62、Z軸モータ63、Y軸モータ64は、ワークと主軸7をX軸、Z軸、Y軸方向に相対的に移動する。マガジンモータ33は工具マガジン31を回転する。主軸モータ61、X軸モータ62、Z軸モータ63、Y軸モータ64、マガジンモータ33はサーボモータである。駆動回路71はCPU41からの制御信号に基づき主軸モータ61を制御する。駆動回路72はCPU41からの制御信号に基づきX軸モータ62を制御する。駆動回路73はCPU41からの制御信号に基づきZ軸モータ63を制御する。駆動回路74はCPU41からの制御信号に基づきY軸モータ64を制御する。駆動回路75はCPU41からの制御信号に基づきマガジンモータ33を制御する。
【0046】
エンコーダ61Aは主軸モータ61の回転位置を検出し、該検出信号を駆動回路71に送信する。駆動回路71は検出信号に基づき主軸モータ61のフィードバック制御を行い、回転位置に応じた主軸7の回転角度をCPU41に出力する。エンコーダ62AはX軸モータ62の回転位置を検出し、該検出信号を駆動回路72に送信する。駆動回路72は検出信号に基づきX軸モータ62のフィードバック制御を行い、回転位置に応じたX軸方向における主軸7の位置をCPU41に出力する。エンコーダ63AはZ軸モータ63の回転位置を検出し、該検出信号を駆動回路73に送信する。駆動回路73は検出信号に基づきZ軸モータ63のフィードバック制御を行い、回転位置に応じたZ軸方向における主軸7の位置をCPU41に出力する。エンコーダ64AはY軸モータ64の回転位置を検出し、該検出信号を駆動回路74に送信する。駆動回路74は検出信号に基づきY軸モータ64のフィードバック制御を行う。エンコーダ33Aはマガジンモータ33の回転位置を検出し、該検出信号を駆動回路75に送信する。駆動回路75は検出信号に基づきマガジンモータ33のフィードバック制御を行う。CPU41は駆動回路75から受信したエンコーダ33Aの検出信号に基づき工具マガジン31の旋回位置を検出する。操作パネル25は表示部26と操作部27を備える。表示部26はタッチパネルであり、CPU41からの制御信号に基づき各種情報を表示すると共に各種入力を受付けてCPU41に送信する。操作部27は例えば物理的な押下キー(図示略)を複数備え、各種操作を受付けてCPU41に送信する。スピーカ28は、各種音声を出力する。
【0047】
ATC動作の指令形式について説明する。ATC動作は、NCプログラムの制御指令で設定できる。指令形式は、例えば、G100やM06等のコマンドを使用できる。指令点の座標値、P1点又はR点のZ軸の座標値は、工具交換指令に含めて指定される。G100とM06の具体例は以下の通りである。
・G100T_L_X_Y_Z_R_
・M06T_L_X_Y_Z_R_
T、L、X、Y、Z、Rはアドレスである。Tは工具番号、ポット番号、又はグループ番号である。LはG100後のTモーダル値を指定する。Tモーダル値は以降の工具交換指令において、交換する工具番号又はポット番号を示す。X、Y、Zは指令点の座標値である。RはP1点又はR点のZ軸の座標値であって、工具がテーブル上のワーク及び治具に接触しない位置の座標値である。また、P1点又はR点への主軸7の位置決めについて、CPU41は工具長オフセットをかけて動作する。工具長オフセットとは、工具の先端が基準点になるように、Z軸の座標値を補正することである。工具長オフセット値は、例えば、工具を工具ホルダ90に保持し、工具ホルダ90を主軸7に装着した状態で、工具の先端の位置と主軸7の機械座標の位置との間のZ軸方向の長さを予め計測した値である。工具オフセット値は、上記のように、工具交換指令に含めて指定してもよいし、あるいは、予めユーザがパラメータとして設定し、工具番号と関連付けて記憶装置44に記憶させてもよい。
【0048】
また、指令形式は、M353及びM355のコマンドを使用できる。M353のコマンドはX軸、Z軸、Y軸の夫々に対する熱変位補正の実行を許可する指令である。X軸ボール螺子11B、Z軸ボール螺子12B、Y軸ボール螺子13Bの各螺子軸は、X軸モータ62、Z軸モータ63、Y軸モータ64の各モータの駆動によって生ずる熱と、各螺子軸と各ナットとの間で生ずる摩擦熱の影響を受けて延び、主軸7の移動先は変位する。熱変位補正は、熱の影響によって生じた各軸の変位を補正するための処理である。
【0049】
熱変位補正については公知であるので詳細な説明は省略するが、概略的には以下の通りに熱変位補正量の演算が行われる。CPU41は、各モータ側で各螺子軸を支持するベアリングの発熱量と、各モータとは反対側で各螺子軸を支持するベアリングの発熱量と、各螺子軸において各ナットが移動する範囲(ベアリング間)を複数の区間に分割した分割区間ごとの発熱量とを算出する。CPU41は、各分割区間の発熱量、各ベアリングの発熱量、各螺子軸の長さ、径等の機械構造に関するパラメータ、密度、比熱等の物理的性質に関するパラメータに基づいて、各螺子軸の温度分布を算出する。そしてCPU41は、算出した各螺子軸の温度分布に基づき、各分割区間の熱変位量を夫々算出する。CPU41は、各分割区間の熱変位量に基づいて、各螺子軸における各ナットの移動元の位置に対する移動先の位置の熱変位量を熱変位補正量として算出する。なお、ユーザによる調整値が設定されている場合、熱変位補正量には調整値(効き具合(%))が乗算される。M353のコマンドは、G100又はM06のコマンドの実行前に実行される。M353のコマンドが実行されると、続くG100又はM06のコマンドによる主軸7の移動は、チェック位置の座標に対する熱変位補正がなされた座標に対して行われる。また、M355のコマンドは、熱変位補正の実行をキャンセルする指令である。M355のコマンドも、G100又はM06のコマンドの実行前に実行される。M355のコマンドが実行されると、続くG100又はM06のコマンドによる主軸7の移動は、チェック位置の座標に対する熱変位補正をキャンセルした状態で(熱変位補正を実行せずに)行われる。
【0050】
図7図9を参照し、NC制御処理について説明する。CPU41は、数値制御装置40の電源がオンになるとNC制御プログラムをROM42から読み出し、NC制御処理を実行する。なお、NC制御処理では、熱変位補正フラグ及びATC実行フラグが使用される。熱変位補正フラグ及びATC実行フラグはRAM43に記憶されている。熱変位補正フラグは、主軸7の移動において、X軸、Z軸、Y軸の夫々に対する熱変位補正の実行の有無についての判断に用いられる。ATC実行フラグは、ATC動作の実行の可否についての判断に用いられる。NC制御処理において、ユーザは操作パネル25でNCプログラムを選択する。CPU41は、操作パネル25で選択されたNCプログラムの実行の操作を受付けると、ROM42からNCプログラムを読み出し、本処理を実行する。なお、図7のフローは、NC制御を自動で実行する場合のフローである。
【0051】
図7に示すように、CPU41は選択されたNCプログラムを記憶装置44から読み込む(S11)。CPU41は読み込んだNCプログラムの先頭行から1ブロック解釈する(S12)。CPU41は解釈したブロックの制御指令がM30(終了コマンド)か否か判断する(S13)。解釈した制御指令がM30でなかった場合(S13:NO)、CPU41は解釈した制御指令がM353であるか否か判断する(S14)。解釈した制御指令がM353でない場合(S14:NO)、CPU41は処理をS21に移行する。解釈した制御指令がM353であった場合(S14:YES)、CPU41は、RAM43に記憶した熱変位補正フラグをオンする(S16)。熱変位補正フラグがオン(図7では熱変位補正=OK)の場合、G100又はM06のコマンドにおいてX軸、Z軸、Y軸の夫々に対し熱変位補正を行った上での主軸7の移動を行うことを示す。CPU41はチェック位置における熱変位補正量を、X軸、Z軸、Y軸の夫々について演算する(S17)。チェック位置はATC準備位置であり、即ち(X,Z,Y=ATC位置X軸,ATC位置Z軸,0)の位置である。CPU41はX軸、Z軸、Y軸夫々の熱変位補正量をRAM43に記憶し(S18)、熱変位補正(S19)を行う。CPU41は、チェック位置の各座標に対して熱変位補正量を加算し、調整値が設定されている場合は調整値(効き具合)を乗算することによって、チェック位置の座標を補正する。CPU41は次ブロックに移動し(S32)、S12に戻って上記処理を繰り返す。
【0052】
CPU41は解釈した制御指令がM355であるか否か判断する(S21)。解釈した制御指令がM355でない場合(S21:NO)、CPU41は処理をS26に移行する。解釈した制御指令がM355であった場合(21:YES)、CPU41は、RAM43に記憶した熱変位補正フラグをオフする(S22)。熱変位補正フラグがオフ(図7では熱変位補正=NG)の場合、G100又はM06のコマンドにおいてX軸、Z軸、Y軸の夫々に対する熱変位補正をキャンセルすることを示す。CPU41は、熱変位補正をキャンセルする処理を行う(S23)。CPU41は、チェック位置の各座標に対して補正しない座標に設定する。CPU41は次ブロックに移動し(S32)、S12に戻って上記処理を繰り返す。
【0053】
CPU41は解釈した制御指令がG100若しくはM06であるか否か判断する(S26)。G100及びM06の何れでもない場合(S26:NO)、CPU41は解釈した制御指令を実行する(S31)。CPU41は次ブロックに移動し(S32)、S12に戻って上記処理を繰り返す。解釈したブロックの制御指令がG100若しくはM06であった場合(S26:YES)、CPU41は、ATC実行確認処理を実行する(S27)。
【0054】
図8を参照し、ATC実行確認処理について説明する。ATC実行確認処理が実行される時、CPU41は、RAM43に記憶したATC実行フラグをオン(図8ではATC実行=OK)する(S50)。CPU41は、S22の処理でX軸に対する熱変位補正をキャンセルする旨(X軸の熱変位補正=NG)がRAM43に記憶されている場合は(S51:NO)、処理をS56に移行する。S16の処理でX軸に対する熱変位補正を行った上での主軸7の移動を行う旨(X軸の熱変位補正=OK)がRAM43に記憶されている場合(S51:YES)、CPU41は、RAM43に記憶するX軸の熱変位補正量が、-X方向における許容範囲の設定値(以下「X軸下限値」という)以上であり、且つ+X方向における許容範囲の設定値(以下「X軸上限値」という)以下であるか否か判断する(S52)。CPU41は、X軸の熱変位補正量がX軸下限値以上且つX軸上限値以下である場合(S52:YES)、処理をS56に移行する。CPU41は、X軸の熱変位補正量がX軸下限値より小さい場合、又はX軸の熱変位補正量がX軸上限値より大きい場合(S52:NO)、RAM43に記憶したATC実行フラグをオフ(図8ではATC実行=NG)し(S53)、処理をS56に移行する。ATC実行フラグはオンの場合はATC動作の実行を許可することを示し、オフの場合はATC動作の実行を不可(禁止)とすることを示す。
【0055】
CPU41は、S22の処理でZ軸に対する熱変位補正をキャンセルする旨(Z軸の熱変位補正=NG)がRAM43に記憶されている場合は(S56:NO)、処理をS61に移行する。S16の処理でZ軸に対する熱変位補正を行った上での主軸7の移動を行う旨(Z軸の熱変位補正=OK)がRAM43に記憶されている場合(S56:YES)、CPU41は、RAM43に記憶するZ軸の熱変位補正量が、-Z方向における許容範囲の設定値(以下「Z軸下限値」という)以上であり、且つ+Z方向における許容範囲の設定値(以下「Z軸上限値」という)以下であるか否か判断する(S57)。CPU41は、Z軸の熱変位補正量がZ軸下限値以上且つZ軸上限値以下である場合(S57:YES)、処理をS61に移行する。CPU41は、Z軸の熱変位補正量がZ軸下限値より小さい場合、又はZ軸の熱変位補正量がZ軸上限値より大きい場合(S57:NO)、RAM43に記憶したATC実行フラグをオフ(図8ではATC実行=NG)し(S58)、、処理をS61に移行する。
【0056】
CPU41は、S22の処理でY軸に対する熱変位補正をキャンセルする旨(Y軸の熱変位補正=NG)がRAM43に記憶されている場合は(S61:NO)、処理をS66に移行する。S16の処理でY軸に対する熱変位補正を行った上での主軸7の移動を行う旨(Y軸の熱変位補正=OK)がRAM43に記憶されている場合(S61:YES)、CPU41は、RAM43に記憶するY軸の熱変位補正量が、-Y方向における許容範囲の設定値(以下「Y軸下限値」という)以上であり、且つ+Y方向における許容範囲の設定値(以下「Y軸上限値」という)以下であるか否か判断する(S62)。CPU41は、Y軸の熱変位補正量がY軸下限値以上且つY軸上限値以下である場合(S62:YES)、処理をS66に移行する。CPU41は、Y軸の熱変位補正量がY軸下限値より小さい場合、又はY軸の熱変位補正量がY軸上限値より大きい場合(S62:NO)、RAM43に記憶したATC実行フラグをオフ(図8ではATC実行=NG)し(S63)、処理をS66に移行する。
【0057】
ATC動作の実行が不可(禁止)である場合(S66:YES)、CPU41は、アラーム報知を行う(S67)。CPU41は、スピーカ28から警告音を発音し、表示部26にエラー内容及び復旧方法を表示することよりアラーム報知を行う。エラー内容の表示は、例えば「熱変位自動補正量がATC時の補正限界値を超えました。」等の表示である。復旧方法の表示は、例えば「[リセット]を押してアラームを解除してください。その後、メモリ運転でM355/動作呼出し355を実行し熱変位補正量をキャンセルしてください。」、「ユーザパラメータ(熱変位自動補正)を誤って設定している可能性があります。パラメータを確認してください。」、「運転条件(各軸の移動が極端に多くないか)を見直してください。」、「ロードモニタで各軸停止中の負荷を確認し、干渉などがないか確認してください。」、「メモリ運転時に頻発する場合、工具交換指令の前にM355/動作呼出し355(熱変位補正量キャンセル)を追加してください。」等である。CPU41はNCプログラムの実行を終了する。ユーザは、メモリ運転において表示された復旧方法に従い、エラーを解消する。
【0058】
S66の判断でATC動作の実行が許可されている場合(S66:NO)、CPU41は、処理をS28に移行する。図7のフローに戻り、CPU41は上記したATC動作を開始し(S28)、ATC動作の終了を待機する(S29:NO)。CPU41はG100又はM06の一連のATC動作が終了すると(S29:YES)、次ブロックに移動し(S32)、その次ブロックについて解釈する(S12)。解釈した次ブロックがM30であった場合(S13:YES)、CPU41はNCプログラムの実行を終了する。S66において、CPU41はATC動作の実行が許可されているか否かはRAM43に記憶されているATC実行フラグがオンかオフかで判断する。
【0059】
次に、ユーザの操作に従ってNC制御処理を実行する場合について説明する。ユーザは操作パネル25でNCプログラムを選択する。CPU41は、操作パネル25で選択されたNCプログラムの実行の操作を受付けると、ROM42からNCプログラムを読み出し、本処理を実行する。なお、図9のフローは、NC制御を手動で実行する場合のフローである。
【0060】
図9に示すように、CPU41は操作部27のタッチパネルにおいてユーザによるキーの操作を受付ける(S81)。CPU41は、キー操作が行われるまで待機する(S82:NO)。キー操作があった場合(S81:YES)、CPU41は、操作されたキーの内容が、[工具交換単動]、[マガジン正転]及び[マガジン逆転]の何れかの操作であるか否かを判断する(S83)。操作されたキーの内容が、[工具交換単動]、[マガジン正転]及び[マガジン逆転]の何れでもない場合(S83:NO)、[終了]の操作であれば(S88:YES)、CPU41はNCプログラムの実行を終了する。操作されたキーの内容が、[工具交換単動]、[マガジン正転]、[マガジン逆転]及び[終了]の何れでもない場合(S88:NO)、CPU41は、操作されたキーに対応する動作を実行する(S89)。動作実行後、CPU41はS81に戻ってユーザによるキー操作を受付ける。
【0061】
操作されたキーの内容が、[工具交換単動]、[マガジン正転]及び[マガジン逆転]の何れかの操作である場合(S83:YES)、動作パターンを決定する(S91)。[工具交換単動]の操作の場合、CPU41は、P0点からP1点又はR点へ移動する動作(図5のA1)、P1点又はR点からATC準備位置、ATC位置を経由し、ATC原点へ移動する動作(図5のA2,A3,A4,A5)、ATC原点からATC位置を経由してATC準備位置へ移動する動作(図5のA7,A8)に応じた動作パターンを決定する。[マガジン正転]又は[マガジン逆転]の操作の場合、CPU41は、工具マガジン31を旋回する場合(図5のA61又はA62)に工具マガジン31と主軸7との干渉を避けるための主軸7の動作に応じた動作パターンを決定する。
【0062】
CPU41は、決定した動作パターンがATC領域内の動作を含むか否かを判断する(S96)。P0点からP1点又はR点へ移動する動作(図5のA1)は、ATC領域内の動作が含まれないので(S96:NO)、CPU41は、動作パターンを実行し、主軸7を移動する(S98)。CPU41はS81に戻ってユーザによるキー操作を受付ける。
【0063】
P0点又はR点からATC準備位置、ATC位置を経由し、ATC原点へ移動する動作(図5のA2,A3,A4,A5)、ATC原点からATC位置を経由してATC準備位置へ移動する動作(図5のA7,A8)は、ATC領域内の動作を含むので(S96:YES)、CPU41は、最初に、前述したATC実行確認処理を実行する(S97)。なお、事前に実行されたNCプログラムにおいてM353コマンドが実行されていれば、RAM43に「熱変位補正=OK」が記憶されている。この場合、熱変位補正量が許容範囲内であればATC動作の実行は許可され、熱変位補正量が許容範囲外であればATC動作の実行は不可(禁止)とされる。また、事前に実行されたNCプログラムにおいてM355コマンドが実行されていれば、RAM43に「熱変位補正=NG」が記憶されており、ATC動作の実行は許可される。ATC実行確認処理を終えると、CPU41は動作パターンを実行し、主軸7を移動する(S98)。CPU41はS81に戻ってユーザによるキー操作を受付ける。
【0064】
以上説明したように、数値制御装置40は、G100又はM06コマンドを実行する場合に、M353コマンドによって熱変位補正を実行した上で主軸7の移動を行う旨がRAM43に記憶されていれば、ATC動作を実行しない。故に数値制御装置40は、熱変位量の演算結果に基づく補正量に含まれる推測誤差と、ユーザによる主軸ヘッド6の移動量の調整によって、主軸ヘッド6の移動位置が、仮に、ATC装置30による工具交換の位置に対して大きくずれていたとしても、ATC動作の実行を禁止すれば、ATC装置30を破損することはない。
【0065】
ATC装置30は、工具交換の位置に対する主軸ヘッド6の移動位置のずれに対して許容し得る機械的なずれの範囲を有する。数値制御装置40は、G100又はM06コマンドを実行する場合に、M353コマンドによって熱変位補正を実行した上で主軸7の移動を行う旨がRAM43に記憶されていても、熱変位補正量が許容範囲の設定値の範囲(X軸下限値以上且つX軸上限値以下である範囲、Z軸下限値以上且つZ軸上限値以下である範囲、及びY軸下限値以上且つY軸上限値以下である範囲の何れかの範囲)内であれば、ATC動作を実行する。即ち数値制御装置40は、主軸ヘッド6の移動位置が、ATC装置30による工具交換の位置に対して許容範囲の設定値の範囲を超えてずれていれば、ATC動作の実行を禁止するので、ATC装置30を破損することはない。
【0066】
数値制御装置40は、ATC動作の実行を禁止した場合、その旨の報知を行う。故にユーザは、主軸ヘッド6の移動位置がずれていることを認識し、工具交換を正しく行えるように調整する作業を行うことができる。
【0067】
ATC準備位置は、主軸ヘッド6がATC位置に移動する直前に経由する位置である。故に数値制御装置40は、ATC位置に近いため熱変位補正量の誤差がより小さいATC準備位置をチェック位置として、ATC準備位置における熱変位補正量を用い、熱変位補正量が許容範囲の設定値の範囲内であるか否かを判断することができる。
【0068】
上記説明において、X軸ボール螺子11B,Z軸ボール螺子12B,Y軸ボール螺子13Bは、本発明の「複数の螺子軸」の一例である。ATC装置30は、本発明の「工具交換装置」の一例である。M353コマンドは、本発明の「熱変位補正指令」の一例である。X軸、Z軸、Y軸のうちの少なくとも一軸に対し熱変位補正を行った上での主軸7の移動を行う旨(熱変位補正=OK)がRAM43に記憶されている状態が、本発明の「熱変位補正指令による指示が有効」である状態の一例である。S51,S56,S61の処理を実行するCPU41は、本発明の「熱補正判断部」の一例である。G100又はM06コマンドは、本発明の「工具交換指令」の一例である。S26の処理を実行するCPU41は、本発明の「工具交換判断部」の一例である。S53,S58,S63の処理を実行するCPU41は、本発明の「禁止部」の一例である。X軸下限値以上且つX軸上限値以下である範囲、Z軸下限値以上且つZ軸上限値以下である範囲、Y軸下限値以上且つY軸上限値以下である範囲が、本発明「限界補正量の範囲」の一例である。S52,S57,S62の処理を実行するCPU41は、本発明の「限界判断部」の一例である。S67の処理を実行するCPU41は、本発明の「報知部」の一例である。P1点又はR点は、本発明の「復帰位置」の一例である。ATC位置は、本発明の「交換位置」の一例である。グリップアーム35は、本発明の「工具保持部」の一例である。ATC準備位置は、本発明の「準備位置」の一例である。
【0069】
本発明は上記実施形態に限定されず、種々の変更を加えることができる。工作機械1は、コラム5をX軸方向、主軸7をZ軸方向、主軸7をY軸方向に移動することで、ワークと工具91を相対的にX軸、Y軸、Z軸に移動するが、これ以外の構造であってもよく、例えば、コラム5をX軸方向とZ軸方向の2軸方向に移動し、主軸7をY軸方向に移動するようにしてもよい。
【0070】
NC制御処理(手動)における[工具交換単動]の動作パターンのうち、P1点又はR点からATC準備位置、ATC位置を経由し、ATC原点へ移動する動作(図5のA2,A3,A4,A5)は、P0点又はR点からATC準備位置へ移動する動作と(図5のA2,A3)、ATC準備位置からATC位置を経由してATC原点へ移動する動作(図5のA4,A5)とに分けた動作パターンとしてもよい。数値制御装置40は、主軸7がATC準備位置からATC位置への移動を開始する場合(最初)に、ATC動作の実行を禁止するか否かを判断するので、P1点又はR点からATC準備位置への主軸ヘッド6の移動を制限なく行うことができる。
【0071】
上記の場合において、更に、P0点又はR点からATC準備位置へ移動する動作と(図5のA2,A3)、ATC準備位置からATC位置へ移動する動作(図5のA4)と、ATC位置からATC原点へ移動する動作(図5のA5)とに分けた動作パターンとしてもよい。また、ATC原点からATC位置を経由してATC準備位置へ移動する動作(図5のA7,A8)は、ATC原点からATC位置へ移動する動作(図5のA7)と、ATC位置からATC準備位置へ移動する動作(図5のA8)とに分けた動作パターンとしてもよい。
【0072】
数値制御装置40は、主軸7のATC準備位置からATC位置への移動の開始時に限らず、移動中に、ATC実行確認処理を行って、ATC動作の実行を禁止するか否かを判断してもよい。この場合においても、数値制御装置40は、P1点又はR点からATC準備位置への主軸ヘッド6の移動を制限なく行うことができる。工作機械1は、主軸の軸方向が上下方向である立形の工作機械であってもよい。立形の工作機械の場合、NC制御処理(自動)におけるATC実行確認処理は、G100コマンドを実行する場合に、最初の処理として実行すればよい。また、例えば特公平7-80109号公報に記載されるような立形の工作機械の場合、上下方向に延びるZ軸ボール螺子のみがATC動作における主軸7の移動に関与する。故に、チェック位置は、Z軸における「Z=機械原点」の位置とし、X軸、Y軸については、ATC実行確認処理における熱変位補正の実行の有無を確認する対象としなくてもよい。また、NC制御処理(手動)におけるATC実行確認処理は、動作パターンがATC領域内に含まれるか否かによって判断し、動作パターンの最初に実行すればよい。即ち、主軸7が加工終了位置からZ軸機械原点に移動する動作の動作パターンの場合はATC実行確認処理の対象とせず、主軸7がZ軸機械原点からATC原点に移動する動作、マガジンを旋回する動作、及びATC原点からZ軸機械原点に移動する動作の動作パターンにおいて、ATC実行確認処理の対象とすればよい。
【0073】
工作機械1は、立形ダブルアーム式の工作機械であってもよい。立形ダブルアーム式の工作機械の場合においても、NC制御処理(自動)におけるATC実行確認処理は、G100コマンドを実行する場合に、最初の処理として実行すればよい。なお、立形ダブルアーム式の工作機械の場合、チェック位置は、「X,Z,Y=0,Z軸機械原点,0」の位置である。また、NC制御処理(手動)におけるATC実行確認処理は、動作パターンがATC領域内に含まれるか否かによって判断し、動作パターンの最初に実行すればよい。即ち、主軸7が加工終了位置からZ軸ATC原点に移動する動作、主軸7がZ軸ATC原点からATC原点に移動する動作、主軸7に装着した工具を交換する動作、主軸7がATC原点からZ軸機械原点に移動する動作の何れの動作パターンも、ATC実行確認処理の対象とすればよい。
【符号の説明】
【0074】
1 工作機械
6 主軸ヘッド
7 主軸
9 回転テーブル
11B X軸ボール螺子
12B Z軸ボール螺子
13B Y軸ボール螺子
30 ATC装置
35 グリップアーム
40 数値制御装置
41 CPU
91 工具
図1
図2
図3
図4
図5
図6
図7
図8
図9