説明

数値制御装置及び工作機械

【課題】機械構造の異なる各種工作機械における誤差補正システムの共通化を促進しつつ、互いに平行な移動軸を持つ複数の移動装置を含む工作機械でもその平行な移動軸を持つ各移動装置の動作の誤差補正を行えるようにすることである。
【解決手段】数値制御装置16は、数値制御プログラムからその数値制御プログラムが指示する対象物の移動位置である指令位置を読み取る指令位置読取り部26と、指令位置読取り部26によって読み取られた指令位置から機械軸毎の座標を算出する機械軸座標算出部28と、機械軸座標算出部28によって算出された機械軸毎の座標を誤差データ格納部22に格納された機械軸毎の誤差データに基づいて補正することにより機械軸毎の補正座標を算出する補正演算部30と、補正演算部30により算出された機械軸毎の補正座標に従って各駆動装置2c,6b,8b,10bに前記支持体を駆動させる駆動制御部32とを備えている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、数値制御装置及び工作機械に関するものである。
【背景技術】
【0002】
従来、各種工作機械において工具やワークを移動させる移動装置の数値制御(NC)が行われている。そして、このような数値制御では、各種要因により移動対象物の位置や姿勢に指令値からの誤差が生じることがあるため、その誤差補正が行われる。下記特許文献1及び2には、移動装置の数値制御に伴ってこのような誤差補正を行う数値制御装置の例が開示されている。
【0003】
特許文献1に開示された数値制御装置は、パラレルリンク機構を備えた工作機械に設けられており、工具を移動させるパラレルリンク機構の各ロッドの動作について誤差補正を行う。具体的には、この数値制御装置では、工具の位置及び姿勢を指示する当該工具の各移動軸毎の指令値の座標と当該工具の各移動軸毎の実測値の座標との誤差を特定の点毎に記録することにより誤差マップを予め作成しておく。この誤差マップは、ニューラルネットワークによって学習され、当該ニューラルネットワークは、加工指令値が入力されるとその指令値に応じた工具の移動軸毎の誤差値を出力する。数値制御装置では、ニューラルネットワークから出力された誤差値に基づいて加工指令値を補正した後、その補正後の指令値をパラレルリンク機構の各ロッドの機械軸毎の指令値に変換し、当該変換後の指令値に基づいてパラレルリンク機構の各駆動部に各ロッドを駆動させる。
【0004】
特許文献2に開示された数値制御装置は、5軸マシニングセンターに設けられており、工具を移動させる複数の移動装置の動作について誤差補正を行う。具体的には、この数値制御装置では、工具の位置及び姿勢についての誤差データが工具の移動軸毎に登録されたエラーマップが記憶手段に記憶されており、加工プログラムから求めた工具の移動軸毎の指令値に対応する誤差データを前記エラーマップに基づいて算出する。そして、この数値制御装置は、算出した誤差データに基づいて工具の各移動軸毎の補正データを算出し、その算出した補正データに基づいて移動軸毎の指令値の補正を行う。数値制御装置は、その補正後の指令値に基づいて各軸の移動装置を駆動させる。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平9−237112号公報
【特許文献2】特開2008−269316号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記特許文献1及び2に開示された数値制御装置による誤差補正のシステムは、その数値制御装置が適用された工作機械の機械構造に依存したものとなっている。このため、その数値制御装置を他の機械構造の工作機械に流用することが難しく、機械構造の異なる工作機械毎に数値制御装置のほぼ全部を構成し直す必要がある。
【0007】
具体的には、上記特許文献1のパラレルリンク機構の工作機械に適用された数値制御装置では、工具の位置及び姿勢についての誤差データを用いて指令値の補正を行っているが、このような工具の位置及び姿勢の形態は工作機械の機械構造によって様々である。このため、工作機械の機械構造が異なれば、上記特許文献1に開示された数値制御装置の誤差補正システムの殆どの部分が流用できなくなる。
【0008】
また、上記特許文献2の5軸マシニングセンターに用いられた数値制御装置でも、工具の位置及び姿勢に基づく誤差データを用いて加工時の工具の指令値を補正しているため、上記特許文献2の数値制御装置と同様、機械構造の異なる他の工作機械にはその誤差補正システムの殆どの部分が流用できない。
【0009】
また、上記特許文献1及び2に開示された数値制御装置は、工具等の移動対象物を移動させる複数の移動装置に互いに平行な移動軸を持つものが含まれているような工作機械には適用できない。すなわち、上記各数値制御装置では、対象物の位置及び姿勢に関する誤差データに基づいて対象物の指令値の座標を補正しているが、複数の移動装置の移動軸が互いに平行である場合には、対象物の位置及び姿勢の誤差データの中に平行な移動軸それぞれについての誤差が同じ方向の誤差として含まれるため、前記誤差データから互いに平行な移動軸それぞれについての補正量を算出することができない。このため、上記各数値制御装置では、互いに平行な移動軸を持つ移動装置の動作の誤差補正が不可能となる。
【0010】
本発明は、上記の課題を解決するためになされたものであり、その目的は、機械構造の異なる各種工作機械における誤差補正システムの共通化を促進しつつ、互いに平行な移動軸を持つ複数の移動装置を含む工作機械でもその平行な移動軸を持つ各移動装置の動作の誤差補正を行えるようにすることである。
【課題を解決するための手段】
【0011】
上記目的を達成するために、本発明による数値制御装置は、ワーク又はそのワークを加工する工具を対象物としてその対象物を移動させる複数の移動装置を備える工作機械であって、前記各移動装置は、前記対象物を支持する支持体と、その支持体を特定の機械軸方向に動かすことにより前記対象物を移動させる駆動装置とをそれぞれ有し、前記複数の移動装置には、前記対象物を移動させる移動軸が互いに平行な移動装置が含まれている工作機械に設けられ、前記各移動装置の数値制御を行う数値制御装置であって、前記対象物を特定の位置に配置する場合に前記各移動装置の前記駆動装置が示す前記機械軸の理論的な座標である理論的機械軸座標と前記対象物を前記特定の位置に実際に配置した場合に前記各移動装置の前記駆動装置が示す前記機械軸の座標である実測機械軸座標との差からなる誤差データを格納する誤差データ格納部と、前記各移動装置の前記駆動装置に前記支持体の移動を指示するための数値制御プログラムを記憶するプログラム記憶部と、前記プログラム記憶部に記憶された前記数値制御プログラムからその数値制御プログラムが指示する前記対象物の移動位置である指令位置を読み取る指令位置読取り部と、前記指令位置読取り部によって読み取られた前記指令位置から前記各移動装置に駆動を指示するための前記機械軸毎の座標を算出する機械軸座標算出部と、前記機械軸座標算出部によって算出された前記機械軸毎の座標を前記誤差データ格納部に格納された前記誤差データに基づいて補正することにより前記機械軸毎の補正座標を算出する補正演算部と、前記補正演算部により算出された前記機械軸毎の前記補正座標に従って前記各移動装置の前記駆動装置に前記支持体を駆動させる駆動制御部とを備えている。
【0012】
この数値制御装置では、機械構造の異なる各種工作機械における誤差補正システムの共通化を促進することができる。具体的には、この数値制御装置のうち誤差データ格納部、プログラム記憶部及び指令位置読取り部は、工作機械の機械構造に依存しない部分であるため、機械構造が異なる各種工作機械に共通して適用可能である。また、各種工作機械の機械構造が異なることに起因してその工作機械の移動装置が移動させる対象物の位置や姿勢の形態が異なる場合であっても、複数の移動装置の各駆動装置がそれぞれの機械軸で支持体を動かすことによって対象物を移動させるという構成は共通しているため、前記補正演算部と前記制御部は機械構造が異なる工作機械に共通して適用することが可能である。従って、この数値制御装置では、指令位置から各移動装置に駆動を指示するための機械軸毎の座標を算出する機械軸座標算出部のみが工作機械の機械構造に依存する部分であり、この機械軸座標算出部のみを各工作機械の機械構造に応じて構成し直せば、当該数値制御装置の誤差補正システムの大部分を機械構造の異なる各種工作機械に流用することができる。このため、この数値制御装置では、機械構造の異なる各種工作機械における誤差補正システムの共通化を促進することができる。
【0013】
また、この数値制御装置では、補正演算部が、各移動装置を構成する駆動装置の機械軸毎の誤差データに基づいて数値制御プログラムが指示する指令位置に対応する機械軸毎の座標を補正する。すなわち、対象物の位置や姿勢に基づく誤差データからは互いに平行な移動軸毎の誤差が判別不可能であることによりその平行な移動軸を持つ移動装置の動作を誤差補正できないが、この数値制御装置では、各移動装置による対象物の移動を実行するための駆動装置の駆動の誤差補正を各々の機械軸についての誤差データに基づいて行うため、そのような駆動装置の動作の誤差補正は、各移動装置の移動軸が互いに平行であるか否かに関係なく行うことができる。その結果、この数値制御装置では、移動装置の移動軸が互いに平行であっても、それらの移動装置の動作をそれぞれ誤差補正することができる。
【0014】
従って、この数値制御装置では、機械構造の異なる各種工作機械における誤差補正システムの共通化を促進しつつ、互いに平行な移動軸を持つ複数の移動装置を含む工作機械でもその平行な移動軸を持つ各移動装置の動作の誤差補正を行うことができる。
【0015】
上記数値制御装置において、当該数値制御装置は、前記対象物が特定の位置に位置決めされた時の前記実測機械軸座標からその特定の位置における前記理論的機械軸座標を減じることにより前記誤差データを算出する誤差演算部を備え、前記誤差データ格納部は、前記誤差演算部によって算出された誤差データを格納することが好ましい。
【0016】
この構成によれば、工作機械に設けられた数値制御装置内で誤差データの蓄積からその誤差データに基づく前記各機械軸毎の誤差補正に至る一連の誤差補正のプロセスを実施することができる。
【0017】
本発明の工作機械は、上記数値制御装置と、水平面内の特定方向にワークを移動させるワーク移動装置と、水平方向でかつ前記ワークの移動方向と直交する方向において前記ワーク移動装置から離間した位置に立設され、鉛直方向に延びるコラムと、ワークを加工するための工具と、前記工具をその軸回りに回転させる主軸ヘッドと、前記コラムに設けられ、前記主軸ヘッドを移動させるための鉛直移動装置、第1水平移動装置及び第2水平移動装置とを備え、前記ワーク移動装置は、ベースと、水平面内で特定方向に延びるワーク機械軸方向に移動可能に前記ベース上に設けられ、ワークを下から支持するワーク支持体と、そのワーク支持体を前記ワーク機械軸方向に動かすワーク駆動装置とを有し、前記鉛直移動装置は、前記コラムに沿って鉛直方向に延びる鉛直機械軸方向に移動可能に設けられ、前記第1水平移動装置を支持する鉛直支持体と、その鉛直支持体を前記鉛直機械軸方向に動かす鉛直駆動装置とを有し、前記第1水平移動装置は、前記ワーク機械軸と前記鉛直機械軸の両方に垂直な第1水平機械軸方向に移動可能に前記鉛直支持体に設けられ、前記第2水平移動装置を支持する第1水平支持体と、その第1水平支持体を前記第1水平機械軸方向に動かす第1水平駆動装置とを有し、前記第2水平移動装置は、前記第1水平機械軸と平行な第2水平機械軸方向に移動可能に前記第1水平支持体に設けられ、前記主軸ヘッドを当該主軸ヘッドによる工具の回転軸が前記第2水平機械軸と平行となるような姿勢で支持する第2水平支持体と、その第2水平支持体を前記第2水平機械軸方向に動かす第2水平駆動装置とを有し、前記数値制御装置は、数値制御プログラムが指示する工具又はワークの指令位置から得られる前記各機械軸毎の座標を前記各機械軸毎の誤差データに基づいて補正することにより前記機械軸毎の補正座標を算出し、その算出した前記機械軸毎の補正座標に従って前記各駆動装置の駆動を制御する。
【0018】
この工作機械では、例えば第1水平移動装置の第1水平支持体及び第2水平移動装置の第2水平支持体がワーク移動装置側へ張り出した場合に、工具、主軸ヘッド、第1水平支持体及び第2水平移動装置の重量によりコラムが撓み、それによって工具の指令位置に対して工具の実際の位置が誤差を生じる虞がある。しかし、このような場合でも、この工作機械では、前記数値制御装置が各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正を行うことによって、前記重量によるコラムの撓みに起因する工具位置の誤差を補正することができる。
【0019】
また、この工作機械では、第1水平支持体を動かす第1水平機械軸と第2水平支持体を動かす第2水平機械軸が互いに平行となっているが、前記数値制御装置により各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正が行われるため、その互いに平行な第1水平機械軸と第2水平機械軸について個別に補正量を求めることができ、工具位置の誤差補正を適切に行うことができる。
【0020】
また、本発明の工作機械は、上記数値制御装置と、水平面内の特定方向にワークを移動させるワーク移動装置と、水平方向でかつ前記ワークの移動方向と直交する方向において前記ワーク移動装置を挟んで互いに対向する位置にそれぞれ立設され、鉛直方向に延びるコラムと、ワークを加工するための工具と、前記工具をその軸回りに回転させる主軸ヘッドと、前記コラムに設けられ、前記主軸ヘッドを移動させるための第1鉛直移動装置、水平移動装置、第2鉛直移動装置、回転移動装置及び揺動装置とを備え、前記ワーク移動装置は、ベースと、水平面内で特定方向に延びるワーク機械軸方向に移動可能に前記ベース上に設けられ、ワークを下から支持するテーブルと、そのテーブルを前記ワーク機械軸方向に動かすテーブル駆動装置とを有し、前記第1鉛直移動装置は、前記テーブルの上方において前記ワーク移動装置の両側のコラム間に掛け渡されるとともにそのコラムに沿って鉛直方向に延びる第1鉛直機械軸方向に移動可能に設けられ、前記水平移動装置を支持するクロスレールと、そのクロスレールを前記第1鉛直機械軸方向に動かす第1鉛直駆動装置とを有し、前記水平移動装置は、前記ワーク機械軸と前記第1鉛直機械軸の両方に垂直な水平機械軸方向に移動可能に前記クロスレールに搭載され、前記第2鉛直移動装置を支持するサドルと、そのサドルを前記水平機械軸方向に動かす水平駆動装置とを有し、前記第2鉛直移動装置は、前記第1鉛直機械軸と平行な第2鉛直機械軸方向に移動可能に前記サドルに設けられ、前記回転移動装置を支持する鉛直支持体と、その鉛直支持体を前記第2鉛直機械軸方向に動かす第2鉛直駆動装置とを有し、前記回転移動装置は、鉛直軸回りの回転機械軸方向に回転可能に前記鉛直支持体に設けられ、前記揺動装置を支持する回転支持体と、その回転支持体を前記回転機械軸方向に回転させる回転駆動装置とを有し、前記揺動装置は、水平軸を中心とした揺動機械軸方向に揺動可能に前記回転支持体に設けられ、前記主軸ヘッドを当該主軸ヘッドによる工具の回転軸が前記水平軸に対して垂直となるように支持する揺動支持体と、その揺動支持体を前記揺動機械軸方向に揺動させる揺動駆動装置とを有し、前記数値制御装置は、数値制御プログラムが指示する工具又はワークの指令位置から得られる前記各機械軸毎の座標を前記各機械軸毎の誤差データに基づいて補正することにより前記機械軸毎の補正座標を算出し、その算出した前記機械軸毎の補正座標に従って前記各駆動装置の駆動を制御する。
【0021】
この工作機械では、コラムやクロスレールに生じる撓みに起因する誤差が本発明に係る数値制御装置によって有効に補正される。具体的には、コラムによって支持される各装置の重量により、コラムには水平方向の撓みが生じやすく、また、クロスレールに搭載された各装置の重量により、クロスレールに上下方向の撓みが生じやすく、これらの撓みは工具の指令位置に対する工具の実際の位置の誤差の要因となるが、前記数値制御装置が各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正を行うことによって、前記コラム及びクロスレールの撓みに起因する工具位置の誤差を補正することができる。
【0022】
また、この工作機械では、クロスレールを動かす第1鉛直機械軸と鉛直支持体を動かす第2鉛直機械軸が互いに平行となっているが、前記数値制御装置により各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正が行われるため、その互いに平行な第1鉛直機械軸と第2鉛直機械軸について個別に補正量を求めることができ、工具位置の誤差補正を適切に行うことができる。
【0023】
また、工具を所定の軸回りに回転移動させてその軸回りの工具の回転角度を変更する回転移動装置を備える工作機械では、工具の空間位置及び姿勢の誤差データに基づいて誤差補正を行う従来の数値制御装置によって、回転移動装置による前記軸回りの回転角度毎の工具の誤差補正を適切に行うことができない。すなわち、工具の空間位置及び姿勢の誤差データからは、工具の回転角度がどの角度でどのような誤差を生じるかを判別することができないため、従来の数値制御装置では工具の回転角度毎の誤差補正が不可能となる。本発明の工作機械でも、回転駆動装置により回転支持体を回転させて工具を回転機械軸方向に回転させるため、その回転機械軸における回転角度毎に異なった誤差が生じ得るが、前記数値制御装置が各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正を行うため、回転機械軸方向における回転角度毎に補正すべき誤差を求めることができる。その結果、この工作機械では、回転機械軸方向の回転角度毎に適切な誤差補正を行うことができる。
【0024】
また、本発明の工作機械は、上記数値制御装置と、ワークを加工するための工具と、前記工具をその軸回りに回転させる主軸ヘッドと、前記主軸ヘッドを当該主軸ヘッドによる工具の回転軸が水平方向に延びるような姿勢で支持し、その主軸ヘッドを平行移動させるパラレルリンク機構と、前記パラレルリンク機構全体を水平面内の特定方向へ移動させる水平移動装置とを備え、前記水平移動装置は、基台と、水平面内で特定方向に延びる水平機械軸方向に移動可能に前記基台上に設けられ、前記パラレルリンク機構を下から支持する水平支持体と、その水平支持体を前記水平機械軸方向に動かす水平駆動装置とを有し、前記パラレルリンク機構は、前記主軸ヘッドを支持するヘッド支持部と、一方向に延びる棒状に形成され、その一端部が前記ヘッド支持部に関節駆動可能なように接続されてそのヘッド支持部を支持するストラットと、前記水平支持体上に設置され、前記各ストラットをその前記一端部側が前記水平支持体上から張り出すような姿勢でそれぞれ支持するとともに、前記各ストラットをその長手方向に延びるストラット機械軸方向に移動可能にそれぞれ支持するストラット支持機構と、前記各ストラット毎に設けられ、前記ヘッド支持部に支持された前記主軸ヘッドが平行移動するように前記各ストラットを各々の前記ストラット機械軸方向に動かすストラット駆動装置とを有し、前記数値制御装置は、前記水平機械軸と平行な第1水平移動軸、鉛直方向に延びる鉛直移動軸及び前記第1水平移動軸と前記鉛直移動軸の両方に垂直な第2水平移動軸の各移動軸の座標からなる工具の指令位置から得られる前記各機械軸毎の座標を前記各機械軸毎の誤差データに基づいて補正することにより前記機械軸毎の補正座標を算出し、その算出した前記機械軸毎の補正座標に従って前記水平駆動装置及び前記各ストラット駆動装置の駆動を制御する。
【0025】
この工作機械では、各ストラットに生じる撓みに起因する誤差が、本発明に係る数値制御装置によって有効に補正される。具体的には、この工作機械では、水平支持体上から張り出すように設けられた各ストラットの端部にヘッド支持部が接続されているとともに、そのヘッド支持部によって主軸ヘッドが支持されているため、工具、主軸ヘッド及びヘッド支持部等の重量により各ストラットに上下方向の撓みが生じやすく、この撓みは工具の指令位置に対する工具の実際の位置の誤差の要因となるが、前記数値制御装置が各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正を行うことによって、前記各ストラットの撓みに起因する工具位置の誤差を補正することができる。
【0026】
また、この工作機械では、パラレルリンク機構全体を支持する水平支持体を移動させる水平機械軸と、工具の指令位置を構成する第1水平移動軸が互いに平行となっているが、前記数値制御装置により各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正が行われるため、前記第1水平移動軸と前記水平機械軸とが平行であっても、その水平機械軸を含む各機械軸毎の補正量を個別に求めることができ、工具位置の誤差を適切に補正することができる。
【発明の効果】
【0027】
以上説明したように、本発明によれば、機械構造の異なる各種工作機械における誤差補正システムの共通化を促進しつつ、互いに平行な移動軸を持つ複数の移動装置を含む工作機械でもその平行な移動軸を持つ各移動装置の動作の誤差補正を行うことができる。
【図面の簡単な説明】
【0028】
【図1】本発明の第1実施形態による工作機械の概略的な側面図である。
【図2】本発明の第1実施形態による数値制御装置の機能ブロック図である。
【図3】誤差データの取得のために用いる治具プレートの正面図である。
【図4】図3に示した治具プレートのIV−IV線に沿った断面図である。
【図5】本発明の第1実施形態の数値制御装置による誤差データ取得時のプロセスを示すフローチャートである。
【図6】本発明の第1実施形態の数値制御装置による工作機械の制御プロセスを示すフローチャートである。
【図7】本発明の第2実施形態による工作機械の概略的な斜視図である。
【図8】本発明の第2実施形態による数値制御装置の機能ブロック図である。
【図9】図7に示した工作機械において誤差データを取得する際の治具プレートの設置状態を示す図である。
【図10】本発明の第2実施形態の数値制御装置による誤差データ取得時のプロセスを示すフローチャートである。
【図11】本発明の第3実施形態による工作機械の概略的な斜視図である。
【図12】本発明の第3実施形態による数値制御装置の機能ブロック図である。
【図13】図11に示した工作機械において誤差データを取得する際の治具プレートの配置状態を正面から見た図である。
【図14】図11に示した工作機械において誤差データを取得する際の治具プレートの配置状態を側方から見た図である。
【図15】本発明の第3実施形態の数値制御装置による誤差データ取得時のプロセスを示すフローチャートである。
【発明を実施するための形態】
【0029】
以下、本発明の実施形態を図面を参照して説明する。
【0030】
(第1実施形態)
まず、図1を参照して、本発明の第1実施形態による工作機械の構成について説明する。
【0031】
この第1実施形態による工作機械は、被加工物であるワークを加工するための工具を回転させる主軸ヘッド12を当該主軸ヘッド12による工具の回転軸が水平方向に延びるように配置するとともに、当該主軸ヘッド12を回転軸の延びる方向に沿って進退移動させることによりワークに対して工具を側方から接離させるように構成されている。そして、この工作機械には、主軸ヘッド12をその回転軸の延びる方向へ移動させる移動装置が2つ設けられており、その2つの移動装置による工具の移動軸が互いに平行となっている。
【0032】
具体的には、この第1実施形態による工作機械は、ワーク移動装置2と、コラム4と、鉛直移動装置6と、第1水平移動装置8と、第2水平移動装置10と、主軸ヘッド12と、制御盤14とを備えている。コラム4、鉛直移動装置6、第1水平移動装置8及び第2水平移動装置10は、一体的にまとまって設けられており、それらに対してワーク移動装置2は、離間して配設されている。
【0033】
ワーク移動装置2は、ワークを移動させるための装置である。このワーク移動装置2は、所定の設置場所上に固設されるベース2aと、そのベース2a上に設けられるワーク支持体2bと、そのワーク支持体2bを動かすワーク駆動装置2c(図2参照)とを有する。
【0034】
ワーク支持体2bは、ワークを支持するものである。このワーク支持体2bは、図1において紙面に垂直な方向に延びるX軸方向に移動可能にベース2a上に設けられたテーブル2dと、そのテーブル2dのうち前記X軸方向と直交する方向において前記コラム4と反対側に位置する端部に設けられた背面支持部2eとを有する。ワークは、ワーク支持体2bのうちテーブル2d上に載置されるとともにその背面が背面支持部2eに接触するようにセットされる。ワーク駆動装置2cは、ベース2aに設けられ、ワーク支持体2bのテーブル2dをX軸方向に動かす。これにより、ワーク支持体2bにセットされたワークがX軸方向に移動するようになっている。すなわち、このワーク移動装置2では、ワーク駆動装置2cの機械軸がX軸であるとともに、移動対象物であるワークの移動軸も同じX軸となっている。
【0035】
コラム4は、前記ベース2aの設置場所から背面支持部2eと反対側に離間した設置場所に立設されており、鉛直方向に延びている。
【0036】
鉛直移動装置6は、コラム4に設けられている。この鉛直移動装置6は、鉛直支持体6aと、鉛直駆動装置6b(図2参照)とを有する。
【0037】
鉛直支持体6aは、鉛直方向に移動可能にコラム4に取り付けられている。すなわち鉛直支持体6aは、コラム4に沿って上下に移動可能となっている。この鉛直支持体6aは、第1水平移動装置8を支持している。第1水平移動装置8は、後述するように第2水平移動装置10及び主軸ヘッド12を介して工具を支持するため、鉛直支持体6aは間接的に工具を支持する。鉛直駆動装置6bは、コラム4に設けられており、鉛直支持体6aを鉛直方向に延びるY軸方向に動かす。これにより、鉛直駆動装置6bは、鉛直支持体6aとともに第1水平移動装置8、第2水平移動装置10、主軸ヘッド12及び工具をY軸方向に移動させる。すなわち、この鉛直移動装置6では、鉛直駆動装置6bの機械軸が鉛直方向に延びるY軸であるとともに、工具を移動させる移動軸も同じY軸となっている。
【0038】
第1水平移動装置8は、鉛直支持体6aに設けられている。この第1水平移動装置8は、第1水平支持体8aと、第1水平駆動装置8b(図2参照)とを有する。
【0039】
第1水平支持体8aは、前記X軸と前記Y軸の両方に対して垂直に延びるW軸方向に移動可能に鉛直支持体6aに設けられている。第1水平支持体8aは、第2水平移動装置10を支持しており、その第2水平移動装置10及び主軸ヘッド12を介して工具を支持する。第1水平駆動装置8bは、鉛直支持体6aに設けられており、第1水平支持体8aを前記W軸方向に進退移動させる。これにより、第1水平支持体8aとともに第2水平移動装置10、主軸ヘッド12及び工具がW軸方向において進退移動し、それによって、工具が水平方向に延びるW軸方向でワークに対して接離する。すなわち、この第1水平移動装置8では、第1水平駆動装置8bの機械軸がW軸であるとともに、工具を移動させる移動軸も同じW軸となっている。
【0040】
第2水平移動装置10は、第1水平支持体8aに設けられている。この第2水平移動装置10は、第1水平移動装置10による工具の移動軸であるW軸と平行なZ軸方向に工具を進退移動させるものである。第2水平移動装置10は、第2水平支持体10aと、第2水平駆動装置10b(図2参照)とを有する。
【0041】
第2水平支持体10aは、前記W軸と平行なZ軸方向に移動可能に第1水平支持体8aに設けられている。第2水平支持体10aは、主軸ヘッド12を支持しており、その主軸ヘッド12を介して工具を支持する。第2水平駆動装置10bは、第1水平支持体8aに設けられており、第2水平支持体10aを前記Z軸方向に進退移動させる。これにより、第2水平支持体10aとともに主軸ヘッド12及び工具がZ軸方向に進退移動し、それによって、工具が水平方向に延びるZ軸方向でワークに対して接離する。すなわち、この第2水平移動装置10では、第2水平駆動装置10bの機械軸がZ軸であるとともに、工具を移動させる移動軸も同じZ軸となっている。
【0042】
主軸ヘッド12は、その回転軸が前記W軸及び前記Z軸と平行となるように第2水平支持体10aに設けられている。この主軸ヘッド12は、工具を保持し、その工具を軸回りに回転させる。なお、工具は、その軸回りに回転された状態でその先端部がワークに当接されることによってワークに対して旋削等の加工を施与するものである。また、各機械軸毎の座標を算出する基準となる後述の主軸位置は、工具の基端の位置に相当する。
【0043】
制御盤14は、前記各移動装置2,6,8,10や、主軸ヘッド12、その他、工作機械の各部の制御及び操作を行うためのものである。この制御盤14は、前記各移動装置2,6,8,10の各駆動装置2c,6b,8b,10b及び主軸ヘッド12の駆動源と電気的に接続されている。
【0044】
制御盤14には、手動操作装置14aが設けられている。この手動操作装置14aは、操作者が手動で操作することにより前記各駆動装置2c,6b,8b,10bを個別に任意の駆動量だけ駆動させることができ、それによって前記各支持体2b,6a,8a,10aを個別に任意の移動量だけ動かせるように構成されている。また、制御盤14には、データ取得スイッチ14bが設けられている。このデータ取得スイッチ14bは、後述するように、操作者が押すことにより、前記各駆動装置2c,6b,8b,10bが示す各々の機械軸(X,Y,W,Z)の座標が後述する数値制御装置16の誤差データ取得部20の実測座標取得部20bによって取り込まれるように構成されている。
【0045】
そして、この制御盤14の中には、前記各移動装置2,6,8,10及び主軸ヘッド12の駆動部の数値制御を行う数値制御装置16(図2参照)が組み込まれている。
【0046】
次に、この第1実施形態による数値制御装置16の詳細な構成について説明する。
【0047】
数値制御装置16は、図2に示すように、誤差データ取得部20と、誤差データ格納部22と、メモリ24と、指令位置読取り部26と、機械軸座標算出部28と、補正演算部30と、駆動制御部32とを有する。
【0048】
誤差データ取得部20は、前記各移動装置2,6,8,10の各駆動装置2c,6b,8b,10bが示す対応する機械軸(X,Y,W,Z)毎の誤差データを取得するものである。すなわち、この誤差データ取得部20は、NCプログラムの指示する工具の指令位置に対応する理論的な各機械軸の座標から各種要因によって生じるそれら各機械軸の実際の座標の誤差を取得する。この誤差データ取得部20は、この誤差データ取得部20は、理論的座標取得部20aと、実測座標取得部20bと、誤差演算部20cと、カウンタ20dとを有する。
【0049】
理論的座標取得部20aは、移動対象物を特定の位置に配置する場合に各移動装置2,6,8,10の各駆動装置2c,6b,8b,10bが示す理論的な機械軸座標である理論的機械軸座標を取得するものである。具体的には、この理論的座標取得部20aは、操作者が手動操作装置14aを操作して各駆動装置2c,6b,8b,10bを駆動させることにより対象物を移動させる際、手動操作装置14aが指示する対象物の位置をNCプログラムに基づいて逆運動学変換することにより各機械軸毎の理論的機械軸座標を算出する。
【0050】
実測座標取得部20bは、移動対象物を特定の位置に実際に配置した場合に各移動装置2,6,8,10の各駆動装置2c,6b,8b,10bが示す機械軸座標である実測機械軸座標を取得するものである。この実測座標取得部20bは、前記データ取得スイッチ14bが押されることに応じて、前記各駆動装置2c,6b,8b,10bからそのときの各機械軸毎の実測機械軸座標を取り込む。
【0051】
誤差演算部20cは、前記各移動装置2,6,8,10の支持体2b,6a,8a,10aの対応する機械軸毎の誤差データを算出するものである。具体的には、この誤差演算部20cは、前記データ取得スイッチ14bが押されたことに応じて、前記実測座標取得部20bによって取得された実測機械軸座標から前記理論的座標取得部20aによって取得された理論的機械軸座標を減じることにより各機械軸毎の誤差データを算出する。
【0052】
カウンタ20dは、誤差データの取得プロセスにおいて、誤差データの取得サイクル毎に後述するi値及びj値をカウントするものである。
【0053】
誤差データ格納部22は、誤差演算部20cによって算出された誤差データを格納するものである。この誤差データ格納部22では、誤差データをX軸、Y軸、Z軸、W軸の各機械軸毎にその誤差データの取得位置に対応した配列で登録した誤差テーブルの形態で格納する。
【0054】
メモリ24は、NCプログラム(数値制御プログラム)や各種データを記憶するものであり、本発明のプログラム記憶部の概念に含まれるものである。NCプログラムは、ワークの加工時に所定のツールパスに従って工具を移動させるように前記駆動装置2c,6b,8b,10bに支持体2b,6a,8a,10aの駆動を指示するプログラムである。このメモリ24が記憶するNCプログラム以外のデータとしては、後述する、指令位置、その指令位置から変換された機械軸座標及び機械軸毎の補正座標等がある。
【0055】
指令位置読取り部26は、メモリ24に記憶されたNCプログラムからそのプログラムが指示する工具又はワークの移動位置である指令位置を読み取るものである。この指令位置読取り部26は、読み取った指令位置をメモリ24に記憶させる。
【0056】
機械軸座標算出部28は、指令位置読取り部26によって読み取られてメモリ24に記憶された工具の指令位置から各移動装置2,6,8,10の各駆動装置2c,6b,8b,10bに駆動を指示するための各機械軸毎の座標を算出するものである。具体的には、この機械軸座標算出部28は、前記指令位置の座標から、ワーク駆動装置2cがワーク支持体2bを移動させるX軸の座標、鉛直駆動装置6bが鉛直支持体6aを移動させるY軸の座標、第1水平駆動装置8bが第1水平支持体8aを移動させるW軸の座標及び第2水平駆動装置10bが第2水平支持体10aを移動させるZ軸の座標をそれぞれ算出する。この機械軸座標算出部28は、指令位置から主軸ヘッド12の主軸位置を算出する主軸位置算出部28aと、その主軸位置算出部28aによって算出された主軸位置を前記駆動装置2c,6b,8b,10bに駆動を指示するための各機械軸毎の座標に変換する座標変換部28bとを有する。座標変換部28bは、前記主軸位置から各機械軸の座標への変換を逆運動学関係式を用いて行う。座標変換部28bは、変換した後の各機械軸毎の座標をメモリ24に記憶させる。
【0057】
補正演算部30は、座標変換部28bによって変換されてメモリ24に記憶された変換後の機械軸座標を誤差データ格納部22に格納された誤差データに基づいて補正することにより機械軸毎の補正座標を算出する。そして、補正演算部30は、算出した補正座標をメモリ24に記憶させる。
【0058】
駆動制御部32は、補正演算部30により算出されてメモリ24に記憶された機械軸毎の補正座標に従って前記各移動装置2,6,8,10の各駆動装置2c,6b,8b,10bに各支持体2b,6a,8a,10aを駆動させる制御を行うものである。すなわち、駆動制御部32は、各支持体2b,6a,8a,10aを対応する機械軸毎に前記補正座標が示す位置へ移動させるように各駆動装置2c,6b,8b,10bを駆動する。
【0059】
数値制御装置16を構成する上記各部のうち機械軸座標算出部28は、工作機械の機械構造に依存する部分である。すなわち、工作機械のうち工具やワークを支持する部分から各駆動装置に至る機械構造は、工作機械によって様々であるため、NCプログラムが指示する工具又はワークの指令位置から各駆動装置毎に駆動を指示するための機械軸座標を算出する機械軸座標算出部28の機能は適用される工作機械の機械構造に応じて構成する必要がある。一方、数値制御装置16のうち機械軸座標算出部28以外の各部は、工作機械の機械構造に依存しないため、各種工作機械において流用可能である。
【0060】
次に、図5のフローチャートに沿って第1実施形態の数値制御装置16による誤差データの取得プロセスについて説明する。
【0061】
この第1実施形態による誤差データの取得に際しては、まず、図3及び図4に示すような治具プレート100をワーク支持体2bのテーブル2d上の初期位置にセットする(ステップS1)。
【0062】
治具プレート100は、この第1実施形態では正面から見て正方形の板材に9個の基準穴100aが形成されたものである。各基準穴100aは、後述するように基準工具102の先端を位置決めするために用いられるものであり、治具プレート100の板厚方向に貫通する円穴である。基準穴100aは、治具プレート100の縦横に3つずつ並ぶように配置されている。縦方向に並ぶ基準穴100aは、治具プレート100の縦方向に延びる辺に沿って直線上に配置され、横方向に並ぶ基準穴100aは、治具プレート100の横方向に延びる辺に沿って直線上に配置されている。そして、縦方向に隣り合う基準穴100a間の間隔と横方向に隣り合う基準穴100a間の間隔は、等しい間隔に設定されており、この第1実施形態では当該間隔は共に500mmとなっている。9個の基準穴100aのうちそれらの中央に位置する基準穴100aは、治具プレート100の中央に設けられている。治具プレート100をセットする初期位置は、テーブル2d上のうち背面支持部2eに治具プレート100の背面が接触する位置である。このように治具プレート100がセットされた状態では、前記縦方向に並ぶ基準穴100aはY軸方向に並び、前記横方向に並ぶ基準穴100aはX軸方向に並ぶ。
【0063】
次に、主軸ヘッド12に基準工具102を取り付ける(ステップS3)。
【0064】
基準工具102は、誤差データの取得において治具プレート100の基準穴100aに対する位置決めの基準となるものである。この基準工具102は、基準穴100aの内径よりも僅かに小径の円柱状に形成されている。当該ステップS3では、基準工具102の軸心と主軸ヘッド12の回転軸とが同軸となるように基準工具102を主軸ヘッド12に取り付ける。これにより、基準工具102は、主軸ヘッド12から水平方向で前記初期位置にセットされた治具プレート100側へ突出するように配置される。
【0065】
次に、治具プレート100の中央の基準穴100aに対応する機械軸座標(基準座標)の計測を行う(ステップS5)。
【0066】
具体的には、まず、操作者が手動操作装置14aを操作することにより各駆動装置2c,6b,8b,10bを駆動させて各支持体2b,6a,8a,10aを移動させ、それによって治具プレート100と基準工具102を移動させて基準工具102の先端が前記中央の基準穴100aと同軸となるとともに、その基準工具102の先端面の位置が治具プレート100の移動装置6,8,10側の面の位置に一致するように治具プレート100と基準工具102を配置する。そして、この状態で操作者がデータ取得スイッチ14bを押すことにより、実測座標取得部20bがそのときの各駆動装置2c,6b,8b,10bが示す機械軸座標を基準座標(X0,Y0,Z0,W0)として取得する。
【0067】
その後、前記取得された基準座標(X0,Y0,Z0,W0)に基づいて誤差データ格納部22に誤差テーブルの格子区切り座標が登録される(ステップS7)。この格子区切り座標は、X軸では(−500+X0,X0,500+X0)、Y軸では(−500+Y0,Y0,500+Y0)、Z軸では(Z0,500+Z0)、W軸では(W0,500+W0)となる。
【0068】
次に、カウンタ20dにおいて、第1水平駆動装置8bが示すW軸座標と第2水平駆動装置10bが示すZ軸座標とをどのような組み合わせで誤差データの取得を行うかを表すj値がj=0にリセットされる(ステップS9)。なお、j=0は(Z0,W0)の座標に対応し、j=1は(500+Z0,W0)の座標に対応し、j=2は(Z0,500+W0)の座標に対応し、j=3は(500+Z0,500+W0)の座標に対応する。
【0069】
次に、操作者が手動で治具プレート100のセット位置を調節して治具プレート100を前記j値に対応する位置に配置する(ステップS11)。この際、治具プレート100のうち移動装置6,8,10側の面の位置がj値に対応する位置となるように治具プレート100を配置する。なお、ここでは、前記ステップS9でj=0とされているため、その対応するZ軸座標とW軸座標は(Z0,W0)であるから、治具プレート100を先にセットした位置から移動させる必要はない。
【0070】
次に、操作者は、手動操作装置14aを操作して第1水平駆動装置8bが駆動する第1水平支持体8aのW軸座標をj値に対応する座標に位置決めする(ステップS13)。ここで、前記ステップS9でj=0とされていることから、第1水平支持体8aのW軸座標はそのj値に対応したW0とされるため、第1水平支持体8aを動かす必要はない。なお、j=1のときは、j=0のときと同様、第1水平支持体8aのW軸座標はW0とされ、j=2,3のときは、第1水平支持体8aのW軸座標は500+W0とされる。
【0071】
次に、カウンタ20dにおいて、治具プレート100の9個の基準穴100aのうちどれを用いるかを表すi値がi=0にリセットされる(ステップS15)。なお、i値は、例えば、テーブル2d上にセットされた治具プレート100を移動装置2,6,8,10側から見て図2に示すように各基準穴100aと対応付けされているものとする。
【0072】
次に、操作者が手動操作装置14aを用いてワーク駆動装置2cと鉛直駆動装置6bと第2水平駆動装置10bを駆動させ、基準工具102をi値に対応する基準穴100aに位置決めする(ステップS17)。
【0073】
この基準穴100aに対する基準工具102の位置決めは、前記ステップS5で行った位置決めと同様にして行う。そして、i値に対応する基準穴100aに基準工具102が位置決めされた時の各機械軸毎の理論的機械軸座標は、理論的座標取得部20aによって取得されている。
【0074】
次に、操作者がデータ取得スイッチ14bを押し、それに応じて、実測座標取得部20bがその時の各機械軸毎の実測機械軸座標を取得し、誤差演算部20cがこの時の理論的機械軸座標と実測機械軸座標との差である誤差データを算出する(ステップS19)。具体的には、誤差演算部20cは、各機械軸(X,Y,Z,W)毎の実測機械軸座標から対応する理論的機械軸座標を減じることにより誤差データを算出する。
【0075】
この後、誤差演算部20cは、算出した誤差データを誤差データ格納部22に格納させる(ステップS21)。この際、誤差データは、その取得された位置を表すインデックスと関連付けられ、誤差データ格納部22においてそのインデックスと対応する誤差テーブルの誤差配列の該当箇所に登録される。
【0076】
次に、カウンタ20dにおいてi値が+1だけカウントアップされる(ステップS23)。
【0077】
その後、誤差データ取得部20において、i値が9以上であるか否かが判断される(ステップS25)。この際、i値が9以上ではない、すなわちi値が8以下であると判断された場合には、前記ステップS17以降の処理が繰り返し行われる。具体的には、i=1以降にそれぞれ対応する基準穴100aに基準工具102が位置決めされ、その度に、誤差データの算出、誤差テーブルへの誤差データの登録が行われる。そして、i=8となるまで合計9個の基準穴100aに対応する9個の誤差データが誤差データ格納部22に格納される。
【0078】
そして、ステップS23でi値が9にカウントアップされ、その結果、ステップS25でi値が9以上であると判断されると、次に、カウンタ20dにおいて、j値が+1だけカウントアップされる(ステップS27)。
【0079】
その後、誤差データ取得部20において、j値が4以上であるか否かが判断される(ステップS29)。この際、j値が4以上ではない、すなわちj値が3以下であると判断した場合には、前記ステップS11以降の処理が繰り返し行われる。
【0080】
具体的には、治具プレート100のセット位置をj=0以降にそれぞれ対応する位置に調節する。j=1のときは(500+Z0,W0)の位置に対応し、j=2のときは(Z0,500+W0)の位置に対応するため、これらj=1,2のときは共にテーブル2d上において初期位置からZ軸(W軸)方向で+500mmだけ移動させた位置に治具プレート100をセットする。また、j=3のときは(500+Z0,500+W0)の位置に対応するため、治具プレート100をj=1,2のときよりもZ軸(W軸)方向でさらに+500mmだけ移動させた位置、すなわち初期位置からZ軸(W軸)方向で+1000mmだけ移動させた位置にセットする。そして、前記ステップS13の処理において、その各j値に対応するW軸の座標に第1水平駆動装置8bが駆動する第1水平支持体8aのW軸座標を設定する。すなわち、j=1のときにはW0、j=2,3のときには500+W0にそれぞれ前記W軸座標を設定する。そして、j=1〜3の各場合において、前記ステップS17〜S25からなる9個の基準穴100aに対応する誤差データの取得プロセスがそれぞれ行われる。
【0081】
そして、ステップS27において、カウンタ20dによりj=4にカウントアップされると、ステップS29において、誤差データ取得部20によりj値が4以上であると判断され、全ての誤差データ取得プロセスが終了する。
【0082】
次に、図6のフローチャートに沿って、第1実施形態の数値制御装置16による工作機械の数値制御プロセスについて説明する。
【0083】
この数値制御では、まず、指令位置読取り部26がメモリ24に記憶されたNCプログラム中のツールパスを読み取る(ステップS31)。このツールパスは、ワークの加工のために移動させる工具の先端の軌跡を表すものであり、時間単位もしくは距離単位で工具の先端の位置の変遷が示されている。
【0084】
その後、指令位置読取り部26は、読み取ったツールパスから工具の現在位置の次の時間単位後もしくは距離単位後の工具の先端位置(指令位置)を抽出する(ステップS33)。そして、指令位置読取り部26は、求めた工具の指令位置をメモリ24に記憶させる。
【0085】
次に、機械軸座標算出部28の主軸位置算出部28aが、前記工具の指令位置から主軸ヘッド12の主軸位置を算出する(ステップS35)。この際、主軸位置算出部28aは、工具の指令位置から工具の長さを減じることによって主軸位置を算出する。
【0086】
その後、座標変換部28bが、主軸位置算出部28aによって算出された主軸位置を逆運動学関係式を用いて各駆動装置2c,6b,8b,10bの各機械軸毎の座標に変換する(ステップS37)。そして、座標変換部28bは、変換した機械軸座標をメモリ24に記憶させる。
【0087】
次に、補正演算部30が、前記変換した機械軸座標が誤差データ格納部22に格納された誤差テーブルのうちのどの区間に属するかを求める(ステップS39)。
【0088】
具体的には、補正演算部30は、変換後の機械軸座標のX軸座標、Y軸座標、Z軸座標、W軸座標と、誤差テーブルの格子区切り座標(−500+X0,X0,500+X0)、(−500+Y0,Y0,500+Y0)、(Z0,500+Z0)、(W0,500+W0)とを比較して、そのX,Y,Z,W軸座標が対応する格子区切り座標に対してどの位置にあるかを求める。
【0089】
すなわち、X軸座標が−500+X0以下の区間、−500+X0よりも大きく、かつ、X0以下の区間、X0よりも大きく、かつ、500+X0以下の区間、又は、500+X0よりも大きい区間のいずれに属するかを判別する。また、Y軸座標が−500+Y0以下の区間、−500+Y0よりも大きく、かつ、Y0以下の区間、Y0よりも大きく、かつ、500+Y0以下の区間、又は、500+Y0よりも大きい区間のいずれに属するかを判別する。また、Z軸座標がZ0以下の区間、Z0よりも大きく、かつ、500+Z0以下の区間、又は、500+Z0よりも大きい区間のいずれに属するかを判別する。また、W軸座標がW0以下の区間、W0よりも大きく、かつ、500+W0以下の区間、又は、500+W0よりも大きい区間のいずれに属するかを判別する。
【0090】
次に、補正演算部30は、判別された属する区間と誤差テーブルの誤差データとに基づいて前記変換後の機械軸座標のX,Y,Z,W軸の各座標毎の誤差推定量を算出する(ステップS41)。
【0091】
具体的には、前記変換後の機械軸座標のX軸座標が−500+X0以下の区間に属する場合には、−500+X0の位置で取得された誤差データをそのままそのX軸座標に対応する誤差推定量とする。また、前記変換後の機械軸座標のX軸座標が−500+X0よりも大きく、かつ、X0以下の区間に属する場合には、−500+X0とX0との間のどの位置にX軸座標が位置しているかに応じて−500+X0の位置に対応する誤差データとX0の位置に対応する誤差データとから比例計算することにより、そのX軸座標に対応する誤差推定量を算出する。また、前記変換後の機械軸座標のX軸座標がX0よりも大きく、かつ、500+X0以下の区間に属する場合には、X0と500+X0との間のどの位置にX軸座標が位置しているかに応じてX0の位置に対応する誤差データと500+X0の位置に対応する誤差データとから比例計算することにより、そのX軸座標に対応する誤差推定量を算出する。また、前記変換後の機械軸座標のX軸座標が500+X0よりも大きい区間に属する場合には、500+X0の位置に対応する誤差データをそのままそのX軸座標に対応する誤差推定量とする。そして、前記変換後の機械軸座標のY軸座標、Z軸座標及びW軸座標についても前記X軸座標の場合と同様の方法によりそれぞれ誤差推定量を求める。
【0092】
その後、補正演算部30が、ステップS41で得られた各機械軸毎の誤差推定量を前記変換後の機械軸の対応する座標から減じることにより補正座標を算出する(ステップS43)。そして、補正演算部30は、算出した補正座標をメモリ24に記憶させる。
【0093】
次に、駆動制御部32は、前記補正座標へ各支持体2b,6a,8a,10aを移動させることを指示する移動指令を各駆動装置2c,6b,8b,10bへ出力することによりそれら駆動装置の駆動制御を行う(ステップS45)。これにより、各駆動装置2c,6b,8b,10bは、補正座標に従って各支持体2b,6a,8a,10aを移動させる。
【0094】
最後に、数値制御装置16は、NCプログラム中のツールパスが終了か否かを判断する(ステップS47)。ここで、ツールパスが終了ではないと判断された場合には、前記ステップS33以降の処理が繰り返し行われる。一方、ツールパスが終了であると判断された場合には、数値制御が終了する。以上のようにして、当該第1実施形態の数値制御装置16による工作機械の数値制御が行われる。
【0095】
以上説明したように、この第1実施形態では、数値制御装置16のうち誤差データ取得部20、誤差データ格納部22、メモリ24及び指令位置読取り部26は、工作機械の機械構造に依存しない部分であるため、機械構造が異なる各種工作機械に共通して適用可能である。また、各種工作機械の機械構造が異なることに起因してその工作機械の移動装置が移動させる対象物の位置や姿勢の形態が異なる場合であっても、複数の移動装置の各駆動装置がそれぞれの機械軸で支持体を動かすことによって対象物を移動させるという構成は共通しているため、補正演算部30と駆動制御部32は機械構造が異なる工作機械に共通して適用することが可能である。従って、第1実施形態の数値制御装置16では、指令位置から機械軸座標を算出する機械軸座標算出部28のみが工作機械の機械構造に依存する部分であり、この機械軸座標算出部28のみを各工作機械の機械構造に応じて構成し直せば、当該数値制御装置16の誤差補正システムの大部分を機械構造の異なる各種工作機械に流用することができる。このため、第1実施形態では、機械構造の異なる各種工作機械における誤差補正システムの共通化を促進することができる。
【0096】
また、第1実施形態の数値制御装置16では、補正演算部30が、各移動装置2,6,8,10を構成する駆動装置2c,6b,8b,10bの機械軸毎の誤差データに基づいて、数値制御プログラムが指示する指令位置に対応する機械軸毎の座標を補正する。すなわち、工具等の移動対象物の位置や姿勢に基づく誤差データからは互いに平行な移動軸毎の誤差が判別不可能であることによりその平行な移動軸を持つ移動装置の動作を誤差補正できないが、第1実施形態の数値制御装置16では、各移動装置2,6,8,10による対象物の移動を実行するための駆動装置2c,6b,8b,10bの駆動の誤差補正を各々の機械軸についての誤差データに基づいて行うため、そのような駆動装置2c,6b,8b,10bの動作の誤差補正は、各移動装置2,6,8,10の移動軸が互いに平行であるか否かに関係なく行うことができる。その結果、第1実施形態の数値制御装置16では、移動装置8,10の移動軸が互いに平行であっても、それらの移動装置8,10の動作をそれぞれ誤差補正することができる。
【0097】
従って、第1実施形態の数値制御装置16では、機械構造の異なる各種工作機械における誤差補正システムの共通化を促進しつつ、互いに平行な移動軸を持つ移動装置8,10を含む工作機械でもその移動装置8,10の動作の誤差補正を行うことができる。
【0098】
また、第1実施形態では、数値制御装置16が、移動対象物が特定の位置に位置決めされた時の実測機械軸座標からその特定の位置における理論的機械軸座標を減じることにより誤差データを算出する誤差演算部20cを備えるため、工作機械に設けられた数値制御装置16内で誤差データの蓄積からその誤差データに基づく各機械軸毎の誤差補正に至る一連の誤差補正のプロセスを実施することができる。
【0099】
また、第1実施形態では、第1水平支持体8a及び第2水平支持体10aがワーク移動装置2側へ張り出した状態で、工具、主軸ヘッド12、第1水平支持体8a及び第2水平移動装置10の重量によりコラム4が撓み、それによって工具の指令位置に対して工具の実際の位置が誤差を生じる虞がある。しかし、この第1実施形態では、数値制御装置16によって、前記重量によるコラム4の撓みに起因する工具位置の誤差を補正することができる。
【0100】
(第2実施形態)
次に、図7を参照して、本発明の第2実施形態による工作機械の構成について説明する。
【0101】
この第2実施形態による工作機械は、テーブル42b上に載置されたワーク上で工具を水平方向、鉛直方向、鉛直軸回りの回転方向、水平軸を中心とした揺動方向の各方向に移動させながらその工具でワークの加工を行うものである。そして、この工作機械では、工具を鉛直方向に移動させる2つの移動装置(第1鉛直移動装置46,第2鉛直移動装置50)が設けられており、その両移動装置の機械軸が互いに平行となっている。
【0102】
具体的には、この工作機械は、ワーク移動装置42と、複数本のコラム44と、図略の工具と、主軸ヘッド12と、第1鉛直移動装置46と、水平移動装置48と、第2鉛直移動装置50と、回転移動装置52と、揺動装置54と、制御ボックス56とを備える。これらのうち第1鉛直移動装置46、水平移動装置48、第2鉛直移動装置50、回転移動装置52及び揺動装置54は、主軸ヘッド12に保持された工具を各方向へ移動させるものである。
【0103】
ワーク移動装置42は、ワークを水平面内の特定方向に移動させる。このワーク移動装置42は、所定の設置場所に設置されたベッド42aと、そのベッド42a上に移動可能に設けられたテーブル42bと、そのテーブル42bを動かすテーブル駆動装置42c(図8参照)とを有する。テーブル42bは、ワークを下から支持するものである。すなわち、ワークは、テーブル上に載置される。そして、テーブル42bは、水平面内で特定方向に延びるX軸方向に移動可能にベッド42a上に搭載されている。X軸は、本発明のワーク機械軸の概念に含まれるものである。テーブル駆動装置42cは、ベッド42aに設けられており、テーブル42bをX軸方向に動かす。
【0104】
各コラム44は、ワーク移動装置42の幅方向においてそのワーク移動装置42を挟んで互いに対向する位置にそれぞれ立設されている。すなわち、コラム44は、水平方向でワークの移動方向と直交する方向においてワーク移動装置42を挟んで互いに対向する位置に立設されている。各コラム44は、鉛直方向に延びている。
【0105】
主軸ヘッド12は、上記第1実施形態と同様、工具を保持し、その工具を軸回りに回転させるものである。
【0106】
第1鉛直移動装置46は、クロスレール46aと、第1鉛直駆動装置46b(図8参照)とを有する。クロスレール46aは、ワーク移動装置42の両側のコラム44に水平姿勢で掛け渡されている。このクロスレール46aは、コラム44の前面で支持されている。そして、クロスレール46aは、コラム44によりそのコラム44に沿って鉛直方向に延びるW軸方向に移動可能に支持されている。なお、W軸は、本発明の第1鉛直機械軸の概念に含まれるものである。また、クロスレール46aは、水平移動装置48を支持している。
【0107】
第1鉛直駆動装置46bは、クロスレール46aをW軸方向に動かすものである。この第1鉛直駆動装置46bは、クロスレール46aの設けられた図略のモータと、各コラム44にそれぞれ沿うように付設された図略のボールねじと、前記モータの動力を前記各ボールねじに同期するように伝達する図略の伝達機構とを有している。各ボールねじは、クロスレール46aの長手方向における対応する端部と螺合しており、そのボールねじの回転駆動に応じてクロスレール46aがW軸方向に移動するようになっている。
【0108】
水平移動装置48は、サドル48aと、水平駆動装置48b(図8参照)とを有する。サドル48aは、前記X軸と前記W軸の両方に垂直なY軸方向に移動可能にクロスレール46aに搭載されている。すなわち、サドル48aは、テーブル42bの上方においてそのテーブル42bを幅方向に横切るようにクロスレール46aの長手方向に移動可能となっている。なお、前記Y軸は、本発明の水平機械軸の概念に含まれるものである。サドル48aは、第2鉛直移動装置50を支持している。水平駆動装置48bは、サドル48aをY軸方向に動かすものである。
【0109】
第2鉛直移動装置50は、鉛直支持体50aと、第2鉛直駆動装置50b(図8参照)とを有する。鉛直支持体50aは、前記W軸と平行なZ軸方向(鉛直方向)に移動可能にサドル48aに設けられている。なお、Z軸は、本発明の第2鉛直機械軸の概念に含まれるものである。鉛直支持体50aは、クロスレール46aよりも下側でかつワーク移動装置42の上方の位置において回転移動装置52を支持している。第2鉛直駆動装置50bは、鉛直支持体50aをZ軸方向に動かすものである。
【0110】
回転移動装置52は、回転支持体52aと、回転駆動装置52b(図8参照)とを有する。回転支持体52aは、鉛直軸回りのC軸方向に回転可能に鉛直支持体50aに設けられている。なお、C軸は、本発明の回転機械軸の概念に含まれるものである。回転支持体52aは、その下部において揺動装置54を支持している。回転駆動装置52bは、回転支持体52aをC軸方向に回転させるものである。
【0111】
揺動装置54は、揺動支持体54aと、揺動駆動装置54b(図8参照)とを有する。揺動支持体54aは、水平軸を中心としたA軸方向に揺動可能に回転支持体52aに設けられている。なお、A軸は、本発明の揺動機械軸の概念に含まれるものである。揺動支持体54aは、主軸ヘッド12をその主軸ヘッド12による工具の回転軸が当該揺動支持体54aの揺動中心である水平軸に対して垂直となるように支持している。揺動駆動装置54bは、揺動支持体54aをA軸方向に揺動させるものである。
【0112】
制御ボックス56は、上記第1実施形態の制御盤14と基本的に同様のものであり、前記各駆動装置42c,46b,48b,50b,52b,54bや、主軸ヘッド12、その他、工作機械の各部の制御及び操作を行う。この制御ボックス56には、上記第1実施形態の手動操作装置14a及びデータ取得スイッチ14bと同様の手動操作装置56a及びデータ取得スイッチ56bが設けられている。そして、この制御ボックス56内に数値制御装置58が組み込まれている。
【0113】
次に、図8を参照して、この第2実施形態による数値制御装置58の構成について説明する。
【0114】
この第2実施形態の数値制御装置58では、前記第1実施形態の数値制御装置16と機械軸座標算出部28に異なる部分がある。
【0115】
すなわち、この第2実施形態の数値制御装置58の機械軸座標算出部28は、指令位置から主軸ヘッド12の主軸位置を算出する主軸位置算出部28aと、その主軸位置算出部28aによって算出された主軸位置を前記各駆動装置42c,46b,48b,50b,52b,54bに駆動を指示するための各機械軸(X軸,W軸,Y軸,Z軸,C軸,A軸)毎の座標に変換する座標変換部28cとを有する。座標変換部28cは、前記主軸位置から前記各機械軸の座標への変換を逆運動学関係式を用いて行うが、この逆運動学関係式が上記第1実施形態の数値制御装置16の座標変換部28bが用いる逆運動学関係式と異なる。この第2実施形態では、当該第2実施形態の工作機械の機械構造、すなわち各移動装置42,46,48,50,52,54それぞれの構造やそれら各移動装置間の相対的な位置関係及び支持構造等に応じて、主軸位置の座標を各機械軸(X軸,W軸,Y軸,Z軸,C軸,A軸)の座標に適切に変換可能な関係式が作成されて座標変換部28cで用いられるようにプログラムされている。
【0116】
また、駆動制御部32は、補正座標に基づいて、上記第1実施形態の場合よりも多い6つの駆動装置42c,46b,48b,50b,52b,54bの駆動制御を行うようになっている。
【0117】
この第2実施形態による数値制御装置58の上記以外の構成は、上記第1実施形態による数値制御装置16の構成と同様である。
【0118】
次に、図10のフローチャートに沿って第2実施形態の数値制御装置58による誤差データの取得プロセスについて説明する。
【0119】
当該誤差データの取得プロセスでは、まず、図9に示すように、治具プレート100をワーク移動装置42のテーブル42b上の初期位置にセットする(ステップS1)。この際、用いる治具プレート100は、上記第1実施形態で用いた治具プレート100と同様のものである。この治具プレート100をテーブル42b上に寝かせた状態で載置し、揺動支持体54aの揺動角度が0度の状態(主軸ヘッド12の回転軸が鉛直方向に延びる状態)で治具プレート100の中央の基準穴100aの中心に主軸ヘッド12の回転軸の位置が一致するように治具プレート100を配置する。
【0120】
次に、上記第1実施形態で用いたのと同様の基準工具102を主軸ヘッド12に取り付ける(ステップS3)。この際、揺動装置54において、揺動支持体54aを揺動角度が0の姿勢、すなわち基準工具102の軸心が鉛直方向に延びる姿勢で固定しておく。
【0121】
その後、上記第1実施形態と同様にして治具プレート100の中央の基準穴100aに対応する機械軸座標(基準座標)を計測し(ステップS5)、その計測された基準座標に基づいて、数値制御装置58の誤差データ格納部22に誤差テーブルの格子区切り座標が登録される(ステップS7)。ここで、X軸、Y軸、Z軸、W軸については、第1実施形態と同様の格子区切り座標が登録される一方、それらに加えて、A軸について0度が格子区切り座標として登録され、C軸について(0度,90度,180度,270度,360度)が格子区切り座標として登録される。なお、A軸の格子区切り座標として0度が登録されるのは、本実施形態では、揺動支持体54aをA軸方向において0度、すなわち鉛直姿勢に固定した状態で誤差データを取得するためである。
【0122】
その後、ステップS9,S11,S13の各処理は、上記第1実施形態おけるステップS9,S11,S13の各処理と同様に行われる。
【0123】
次に、カウンタ20dにおいて、c値がc=0にリセットされる(ステップS15)。このc値は、誤差データを取得する際のC軸方向における回転支持体54aの回転角度に対応した値である。すなわち、c=0は回転支持体54aの回転角度を0度とすること、c=1は回転支持体54aの回転角度を90度とすること、c=2は回転支持体54aの回転角度を180度とすること、c=3は回転支持体54aの回転角度を270度とすること、c=4は回転支持体54aの回転角度を360度とすることをそれぞれ表す。
【0124】
次に、操作者が、手動操作装置56aを操作して回転支持体54aをc値に対応するC軸方向の回転角度に位置決めする(ステップS17)。ここで、前記ステップS15でc=0とされていることから、C軸方向の回転角度が0度となるように回転支持体54aを位置決めする。
【0125】
その後、ステップS19,S21,S23,S25,S27,S29の各処理は、上記第1実施形態におけるS15,S17,S19,S21,S23,S25の各処理とほぼ同様に行われる。ただし、ステップS23の誤差データの算出においては、X軸、Y軸、Z軸、W軸、A軸、C軸についての誤差データがそれぞれ算出される。
【0126】
次に、カウンタ20dにおいてc値が+1だけカウントアップされ(ステップS31)、その後、誤差データ取得部20においてc値が5以上であるか否かが判断される(ステップS33)。ここで、c値が5以上ではない、すなわちc値が4以下であると判断された場合には、ステップS17以降の処理が繰り返し行われる。具体的には、c=1以降のc値にそれぞれ対応するC軸方向の回転角度(90度,180度,270度,360度)に回転支持体54aがそれぞれ位置決めされ、その度に、治具プレート100の9個の基準穴100aに対応する誤差データの算出及びその誤差データの誤差テーブルへの登録が行われる。
【0127】
そして、ステップS31でc値が5にカウントアップされ、その結果、ステップS33でc値が5以上であると判断されると、次に、カウンタ20dにおいてj値が+1だけカウントアップされ(ステップS35)、その後、誤差データ取得部20においてj値が4以上であるか否かが判断される(ステップS37)。ここで、j値が4以上ではない、すなわちj値が3以下であると判断された場合には、ステップS11以降の処理が繰り返し行われる。この処理は、上記第1実施形態の場合と基本的に同様である。具体的には、この処理では、治具プレート100をj値に対応する各位置にそれぞれセットし、その度に、回転支持体54aをc=0〜4に対応する各回転角度にそれぞれ位置決めするとともに、その各回転角度毎に9個の基準穴100aに対応する誤差データをそれぞれ取得する。
【0128】
なお、治具プレート100のj=1以降の各値に対応する各位置へのセットの仕方は以下の通りである。
【0129】
すなわち、j=1の時には、図9に示すように、j=0の時にセットした治具プレート100のY軸方向における両端部の上に500mmの高さを有するスペーサ104をそれぞれ載置し、その上に2枚目の治具プレート100を積載する。この際、j=0の時に用いた1枚目の治具プレート100と2枚目の治具プレート100の外縁の4面に定規106を当てて1枚目の治具プレート100に対して2枚目の治具プレート100の位置を合わせることにより、j=0の時に用いた1枚目の治具プレート100に対して2枚目の治具プレート100を直上に配置する。j=1の時は、j=0の時に1枚目の治具プレート100を用いて誤差データを取得した方法と同様の方法で2枚目の治具プレート100の各基準穴100aに対して基準工具102を位置決めして誤差データを取得する。また、j=2の時は、j=1の時に用いた2枚目の治具プレート100を同様に用いて誤差データを取得する。そして、j=3の時には、2枚目の治具プレート100の上にさらに500mmの高さのスペーサ104を上記と同様に積み重ね、その上に3枚目の治具プレート100を同様に載置する。この場合も、定規106を用いて1枚目及び2枚目の治具プレート100の直上に3枚目の治具プレート100を配置する。そして、この3枚目の治具プレート100を用いてj=0〜2の時と同様にj=3の時の誤差データの取得を行う。
【0130】
この第2実施形態の数値制御装置58による誤差データの取得プロセスの上記以外の構成は、上記第1実施形態と同様である。
【0131】
次に、第2実施形態の数値制御装置58による工作機械の数値制御プロセスについて説明する。
【0132】
この第2実施形態における工作機械の数値制御プロセスは、基本的には上記第1実施形態における工作機械の数値制御プロセスと同様である。ただし、この第2実施形態では、工具の指令位置からX軸,Y軸,Z軸,W軸,A軸,C軸の各機械軸毎の座標を算出し、その各機械軸座標について誤差テーブルに基づいて上記第1実施形態と同様の手法で各機械軸毎の誤差推定量を算出する。なお、この際、A軸については、補間計算を行わず、当該A軸方向の揺動支持体54aの揺動角度は0度とされる。そして、算出された各機械軸毎の誤差推定量に基づいて前記各機械軸座標を補正することにより各機械軸毎の補正座標が算出され、その補正座標へテーブル42b、クロスレール46a、サドル48a、鉛直支持体50a、回転支持体52a及び揺動支持体54aを移動させるようにテーブル駆動装置42c、第1鉛直駆動装置46b、水平駆動装置48b、第2鉛直駆動装置50b、回転駆動装置52b及び揺動駆動装置54bの駆動が制御される。
【0133】
この第2実施形態による数値制御プロセスの上記以外の構成は、上記第1実施形態と同様である。
【0134】
この第2実施形態では、コラム44によって支持される各装置の重量によりコラム44に撓みが生じたり、クロスレール46aに搭載された各装置の重量によりクロスレールに撓みが生じたりすることがある。コラム44及びクロスレール46aに撓みが生じると、工具の指令位置に対して工具の実際の位置が誤差を生じる虞がある。しかし、この場合でも、数値制御装置58によって、コラム44及びクロスレール46aの撓みに起因する工具位置の誤差を補正することができる。
【0135】
また、この第2実施形態では、クロスレール46aを動かすW軸と鉛直支持体50aを動かすZ軸が互いに平行となっているが、数値制御装置58により各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正が行われるため、その互いに平行なW軸とZ軸について個別に補正量を求めることができ、工具位置の誤差補正を適切に行うことができる。
【0136】
また、この第2実施形態では、回転駆動装置52bにより回転支持体52aを回転させて工具をC軸方向に回転させるため、そのC軸方向における回転角度毎に異なった誤差が生じ得るが、数値制御装置58が各機械軸毎の誤差データに基づいて各機械軸毎の誤差補正を行うため、C軸方向における回転角度毎に補正すべき誤差を求めることができる。その結果、この第2実施形態では、C軸方向の回転角度毎に適切な誤差補正を行うことができる。
【0137】
この第2実施形態による上記以外の効果は、上記第1実施形態と同様である。
【0138】
(第3実施形態)
次に、図11を参照して、本発明の第3実施形態による工作機械の構成について説明する。
【0139】
この第3実施形態による工作機械は、パラレルリンク機構66を備えた工作機械である。そして、この工作機械では、パラレルリンク機構66全体を水平方向に移動させる水平移動装置64を備えており、その水平移動装置64による移動軸(U軸)と、パラレルリンク機構66が工具を移動させる複数の移動軸のうちの水平方向の移動軸(X軸)とが平行となっている。
【0140】
具体的には、この工作機械は、ワーク支持装置62と、図略の工具と、主軸ヘッド12と、水平移動装置64と、パラレルリンク機構66と、図略の制御盤とを備えている。
【0141】
ワーク支持装置62は、ワークを支持するための装置であり、所定の設置場所に設置されている。このワーク支持装置62は、鉛直面である支持面62aを有しており、この支持面62aにワークを接触させた状態でそのワークを支持する。
【0142】
主軸ヘッド12は、上記第1実施形態と同様、工具を保持し、その工具を軸回りに回転させるものである。
【0143】
水平移動装置64は、パラレルリンク機構66全体を水平面内においてワーク支持装置62の支持面62aに平行な方向に延びるU軸方向へ移動させるものである。なお、U軸は、本発明の水平機械軸の概念に含まれるものである。この水平移動装置64は、基台64aと、水平支持体64bと、水平駆動装置64c(図12参照)とを有する。
【0144】
基台64aは、支持面62aに垂直な方向においてワーク支持装置62から離間した場所に設置されている。
【0145】
水平支持体64bは、U軸方向に移動可能に基台64a上に設けられている。この水平支持体64bは、パラレルリンク機構66を下から支持している。具体的には、この水平支持体64bの上面は、略水平面となっており、この上面にパラレルリンク機構66の後述する支持脚78aが設置されている。
【0146】
水平駆動装置64cは、水平支持体64bをU軸方向に動かすものである。
【0147】
パラレルリンク機構66は、主軸ヘッド12を当該主軸ヘッド12による工具の回転軸が水平方向でかつワーク支持装置62の支持面62aに対して垂直な方向に延びるような姿勢で支持し、その姿勢の主軸ヘッド12を平行移動させるものである。このパラレルリンク機構66は、主軸ヘッド12とともに工具をX軸、Y軸、Z軸の各座標からなる指令位置に移動させる。なお、X軸は、前記U軸に平行な水平軸であり、Y軸は、鉛直軸である。Z軸は、X軸とY軸の両方に垂直な方向に延びる軸である。このパラレルリンク機構66は、ヘッド支持部68と、複数のストラット70〜75と、先端ジョイント76と、ストラット支持機構78と、複数のストラット駆動装置80〜85とを有する。
【0148】
ヘッド支持部68は、主軸ヘッド12を支持するものである。このヘッド支持部68は、主軸ヘッド12による工具の回転軸が当該ヘッド支持部68の軸心と同軸となるように主軸ヘッド12を支持する。また、ヘッド支持部68は、主軸ヘッド12が保持する工具の先端がワーク支持装置62の支持面62aに対向するとともにその支持面62aに対して垂直な水平方向に工具の回転軸が延びるように主軸ヘッド12を支持する。
【0149】
第1〜第6ストラット70〜75は、それぞれ、一方向に延びる棒状に形成されている。本実施形態では、6本のストラット70〜75が設けられている。各ストラット70〜75は、その一端部が先端ジョイント76を介してヘッド支持部68の基端部側(主軸ヘッド12を支持する側と反対側)に関節駆動可能なように接続されている。そして、第1〜第6ストラット70〜75は、このようにヘッド支持部68に接続されることによってヘッド支持部68を支持している。
【0150】
ストラット支持機構78は、水平移動装置64の水平支持体64b上に設置され、ストラット70〜75を支持するものである。このストラット支持機構78は、各ストラット70〜75をそのヘッド支持部68を支持する一端部側が水平支持体64b上からワーク支持装置62側へ張り出すような姿勢でそれぞれ支持する。そして、このストラット支持機構78は、各ストラット70〜75をその長手方向に延びるL軸方向に移動可能にそれぞれ支持する。なお、L軸は、本発明のストラット機械軸の概念に含まれるものである。
【0151】
具体的には、ストラット支持機構78は、水平支持体64b上に設置された支持脚78aと、その支持脚78によって支えられたストラット支持部78bとを有する。ストラット支持部78bは、ワーク支持装置62側から見て正三角形の各頂点に位置するように配設されている。各ストラット支持部78bは、ストラット70〜75を2本ずつ支持している。そして、各ストラット支持部78bは、ストラット70〜75のうち対応するものの長手方向の中間部分を支持している。各ストラット支持部78bは、2つの中間ジョイント78cをそれぞれ有しており、各中間ジョイント78cが1本のストラットと接続している。各中間ジョイント78cは、接続するストラットをその長手方向(L軸方向)に移動可能に支持している。
【0152】
第1〜第6ストラット駆動装置80〜85(図12参照)は、ヘッド支持部68に支持された主軸ヘッド12が平行移動するように第1〜第6ストラット70〜75を各々のL軸方向に動かすものである。すなわち、第1ストラット駆動装置80は第1ストラット70を、第2ストラット駆動装置81は第2ストラット71を、第3ストラット駆動装置82は第3ストラット72を、第4ストラット駆動装置83は第4ストラット73を、第5ストラット駆動装置84は第5ストラット74を、第6ストラット駆動装置85は第6ストラット75を、それぞれ各ストラットのL軸方向に動かす。
【0153】
図略の制御盤は、前記各駆動装置64c,80〜85や主軸ヘッド12、その他の駆動部の制御及び操作を行うためのものである。この制御盤には、上記第1実施形態の手動操作装置14a及びデータ取得スイッチ14bと同様の手動操作装置及びデータ取得スイッチが設けられている。この第3実施形態での手動操作装置は、水平駆動装置64c及び第1〜第6ストラット駆動装置80〜85を個別に任意の駆動量だけ駆動できるように構成されている。これにより、水平支持体64bと第1〜第6ストラット70〜75を個別に任意の移動量だけ動かせるようになっている。また、データ取得スイッチは、操作者が押すことにより、第1〜第6ストラット駆動装置80〜85が示す第1〜第6ストラット70〜75各々のL機座標が数値制御装置90の誤差データ取得部20の実測座標取得部20bによって取り込まれるようになっている。そして、制御盤内には、数値制御装置90が組み込まれている。
【0154】
次に、図12を参照して、この第3実施形態による数値制御装置90の構成について説明する。
【0155】
この第3実施形態の数値制御装置90は、機械軸座標算出部28の部分において、第1実施形態の数値制御装置16と異なっている。
【0156】
具体的には、この第3実施形態の数値制御装置90の機械軸座標算出部28は、工具の指令位置から主軸位置及び工具の姿勢ベクトルを算出する主軸位置算出部28aと、その主軸位置算出部28aによって算出された主軸位置及び姿勢ベクトルを前記各駆動装置64c,80〜85に駆動を指示するためのU軸及び各ストラット70〜75のL軸毎の座標に変換する座標変換部28dとを有する。
【0157】
座標変換部28dは、前記主軸位置からU軸及び各ストラット70〜75のL軸の座標への変換を逆運動学関係式を用いて行うが、この逆運動学関係式が上記第1実施形態の数値制御装置16の座標変換部28bが用いる逆運動学関係式と異なる。この第3実施形態では、当該第3実施形態の工作機械の機械構造、すなわち水平移動装置64及びパラレルリンク機構66の構造やそれらの相対的な位置関係等に応じて、主軸位置の座標をU軸及び各ストラット70〜75のL軸の座標に適切に変換可能な関係式が作成されて座標変換部28dで用いられるようにプログラムされている。また、駆動制御部32は、補正座標に基づいて、水平駆動装置64c及び第1〜第6ストラット駆動装置80〜85をそれぞれ駆動制御する。
【0158】
この第3実施形態による数値制御装置90の上記以外の構成は、上記第1実施形態による数値制御装置16の構成と同様である。
【0159】
次に、図15のフローチャートに沿って第3実施形態の数値制御装置90による誤差データの取得プロセスについて説明する。
【0160】
当該誤差データの取得プロセスでは、まず、治具プレート100を図13及び図14に示すワーク支持装置62における初期位置にセットする(ステップS1)。この際、用いる治具プレート100は、上記第1実施形態で用いた治具プレート100と同様のものである。
【0161】
次に、上記第1実施形態で用いたのと同様の基準工具102を主軸ヘッド12に取り付け(ステップS3)、その後、上記第1実施形態と同様にして治具プレート100の中央の基準穴100aに対応する基準座標(X0,Y0,Z0)を計測する(ステップS5)。
【0162】
そして、数値制御装置90の誤差データ格納部22に、計測された基準座標に基づいて誤差テーブルの格子区切り座標が登録される(ステップS7)。ここで、X軸、Y軸、Z軸については、第1実施形態と同様の格子区切り座標が登録される一方、それらに加えて、U軸について(0,1000,2000)が格子区切り座標として登録される。
【0163】
その後、カウンタ20dにおいて、j値がj=0にリセットされる(ステップS9)。なお、この第3実施形態では、j値は、治具プレート100をX軸(U軸)方向とX軸方向においてどの位置にセットして誤差データの取得を行うかを表す。具体的には、図13及び図14に示すように、j=0は、前記支持面62aに対向する状態でX軸(U軸)方向において左端寄りの位置でかつZ軸方向において支持面62a寄りの位置、すなわち初期位置と同じ位置に対応しており、j=1は、X軸方向においてj=0と同様の位置でかつZ軸方向においてj=0の位置から+200mm移動した位置に対応している。また、j=2は、j=0の位置からX軸方向において+1000mm移動した位置に対応しており、j=3は、j=2の位置からZ軸方向において+200mm移動した位置に対応している。また、j=4は、j=0の位置からX軸方向において+2000mm移動した位置に対応しており、j=5は、j=4の位置からZ軸方向に+200mm移動した位置に対応している。
【0164】
次に、操作者が、手動操作装置を操作して水平駆動装置64cが駆動する水平支持体64bのU軸座標をj値に対応する座標に位置決めする(ステップS13)。ここで、前記ステップS9でj=0とされていることから、水平支持体64bのU軸座標はそのj値に対応した0mmとされ、基準座標の計測時から水平支持体8aを動かす必要はない。なお、j=1のときは、j=0のときと同様、水平支持体64bのU軸座標は0mmとされ、j=2,3のときは、水平支持体64bのU軸座標は1000mmとされる。また、j=4,5のときは、水平支持体64bのU軸座標は2000mmとされる。
【0165】
次に、カウンタ20dにおいて、i値がi=0にリセットされ(ステップS15)、その後、操作者が手動操作装置を操作して基準工具102をi値に対応する基準穴100aにその基準工具102の姿勢を含めて位置決めする(ステップS17)。ここで、基準工具102の姿勢については、当該基準工具102の軸心がZ軸方向に延びるような姿勢となるように位置決めする。
【0166】
次に、操作者がデータ取得スイッチを押すことにより、実測座標取得部20bがその時の各ストラット70〜75のL軸についての実測機械軸座標を取得し、誤差演算部20cがこの時の実測機械軸座標と工具の理論的機械軸座標及び工具の姿勢に基づいて誤差データを算出する(ステップS19)。
【0167】
具体的には、誤差演算部20cは、前記理論的機械軸座標及び工具の姿勢からなるデータを逆運動学関係式を用いて各ストラット70〜75のL軸座標に変換する。そして、誤差演算部20cは、変換して得られた各ストラット70〜75のL軸座標から実測のL軸座標を減じることにより、各ストラット70〜75のL軸についての誤差データを算出する。なお、誤差演算部20cは、誤差データにU軸の誤差を0として含める。
【0168】
この後、上記第1実施形態のステップS21と同様の誤差データの格納が行われる(ステップS21)。この際、誤差データは、その取得された位置を表すX軸、Y軸、Z軸及びU軸についてのインデックスと関連付けられ、誤差データ格納部22においてそのインデックスと対応する誤差テーブルの誤差配列の該当箇所に登録される。その後、上記第1実施形態と同様のステップS23,S25の処理が行われる。これにより、治具プレート100の9個の基準穴100aのそれぞれについて誤差データの取得が行われる。
【0169】
次に、カウンタ20dにおいてj値が+1だけカウントアップされ(ステップS27)、その後、誤差データ取得部20においてj値が6以上であるか否かが判断される(ステップS29)。ここで、j値が6以上ではない、すなわちj値が5以下であると判断された場合には、ステップS11以降の処理が繰り返し行われる。この処理では、治具プレート100をj値に対応する各位置にそれぞれセットし、その度に、その各位置毎に9個の基準穴100aに対応する誤差データをそれぞれ取得する。
【0170】
この第3実施形態の数値制御装置90による誤差データの取得プロセスの上記以外の構成は、上記第1実施形態と同様である。
【0171】
次に、第3実施形態の数値制御装置90による工作機械の数値制御プロセスについて説明する。
【0172】
この第3実施形態における工作機械の数値制御プロセスは、基本的には上記第1実施形態における工作機械の数値制御プロセスと同様である。ただし、この第2実施形態では、主軸位置算出部28aが工具の指令位置から主軸位置のX軸,Y軸,Z軸の座標及び工具の姿勢ベクトルを算出し、座標変換部28dがその算出された主軸位置及び姿勢ベクトルから各ストラット70〜75のL軸座標及びU軸座標を算出する。この際、座標変換部28dは、主軸位置のX軸座標が500よりも大きい場合には、そのX軸座標から500を減じた値をU軸座標uとし、主軸位置のX軸座標が500以下の場合には、U軸座標uを0とする。そして、座標変換部28dは、主軸位置のX軸座標から前記U軸座標uを減じた値を変換前のX軸座標とし、それ以外のY軸座標、Z軸座標及び姿勢ベクトルは前記指令位置から求めた算出した値を用いて、それらの各座標(x−u,y,z)及び姿勢ベクトルを逆運動学変換することにより、各ストラット70〜75のL軸座標を算出する。
【0173】
そして、補正演算部30は、誤差テーブルの格子区切り座標と前記変換前の各座標(x−u,y,z)及びU軸座標uとを比較して、その座標(x−u,y,z,u)が誤差テーブル内のどの区間に位置するかを求め、その位置に応じて必要であれば補間計算を行うことにより、各ストラット70〜75のL軸及びU軸の誤差推定量を求める。この誤差推定量を求める手法は、上記第1実施形態で用いられた手法と同様である。そして、補正演算部30は、算出した各L軸及びU軸の誤差推定量に基づいて各ストラット70〜75のL軸座標及びU軸座標を補正することによりその各L軸及びU軸の補正座標を算出する。駆動制御部32は、算出された補正座標へ対応する各ストラット70〜75及び水平支持体64bを移動させるように第1〜第6ストラット駆動装置80〜85及び水平駆動装置64cの駆動を制御する。
【0174】
この第3実施形態による数値制御プロセスの上記以外の構成は、上記第1実施形態と同様である。
【0175】
この第3実施形態では、水平支持体64b上から張り出すように設けられた各ストラット70〜75の端部にヘッド支持部68が接続されているとともに、そのヘッド支持部68によって主軸ヘッド12が支持されているため、工具、主軸ヘッド12及びヘッド支持部68等の重量により各ストラット70〜75に撓みが生じ、それによって工具の指令位置に対して工具の実際の位置が誤差を生じる虞がある。しかし、この場合でも、数値制御装置90によって、各ストラット70〜75の撓みに起因する工具位置の誤差を補正することができる。
【0176】
また、この第3実施形態では、パラレルリンク機構66全体を支持する水平支持体64bを移動させるU軸と、工具の指令位置を構成するX軸が互いに平行となっているが、数値制御装置90により各ストラット70〜75のL軸及びU軸のそれぞれについての誤差データに基づいて各L軸及びU軸の誤差補正が行われるため、U軸とX軸とが平行であっても、そのU軸を含む各機械軸毎の補正量を個別に求めることができ、工具位置の誤差を適切に補正することができる。
【0177】
この第3実施形態による上記以外の効果は、上記第1実施形態と同様である。
【0178】
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれる。
【0179】
例えば、上記実施形態では、数値制御装置が誤差演算部を有する誤差データ取得部を備えているが、誤差データの取得は工作機械に組み込まれた数値制御装置とは別の誤差取得用の装置によって行い、その取得した誤差データを工作機械に設けられた数値制御装置に付与するようにしてもよい。
【0180】
また、本発明による数値制御装置は、上記各実施形態で示したような工作機械以外の工作機械に適用してもよい。この場合でも、その適用する工作機械の機械構造に応じて機械軸座標算出部を構成すればよく、数値制御装置のうち機械軸座標算出部以外の部分は流用可能である。
【符号の説明】
【0181】
2 ワーク移動装置
2a ベース
2b ワーク支持体
2c ワーク駆動装置
4 コラム
6 鉛直移動装置
6a 鉛直支持体
6b 鉛直駆動装置
8 第1水平移動装置
8a 第1水平支持体
8b 第1水平駆動装置
10 第2水平移動装置
10a 第2水平支持体
10b 第2水平駆動装置
12 主軸ヘッド
16 数値制御装置
20c 誤差演算部
22 誤差データ格納部
24 メモリ(プログラム記憶部)
26 指令位置読取り部
28 機械軸座標算出部
30 補正演算部
32 駆動制御部
42 ワーク移動装置
42a ベース
42b テーブル
42c テーブル駆動装置
44 コラム
46 第1鉛直移動装置
46a クロスレール
46b 第1鉛直駆動装置
48 水平移動装置
48a サドル
48b 水平駆動装置
50 第2鉛直移動装置
50a 鉛直支持体
50b 第2鉛直駆動装置
52 回転移動装置
52a 回転支持体
52b 回転駆動装置
54 揺動装置
54a 揺動支持体
54b 揺動駆動装置
64 水平移動装置
64a 基台
64b 水平支持体
64c 水平駆動装置
66 パラレルリンク機構
68 ヘッド支持部
70〜75 ストラット
78 ストラット支持機構
80〜85 ストラット駆動装置

【特許請求の範囲】
【請求項1】
ワーク又はそのワークを加工する工具を対象物としてその対象物を移動させる複数の移動装置を備える工作機械であって、前記各移動装置は、前記対象物を支持する支持体と、その支持体を特定の機械軸方向に動かすことにより前記対象物を移動させる駆動装置とをそれぞれ有し、前記複数の移動装置には、前記対象物を移動させる移動軸が互いに平行な移動装置が含まれている工作機械に設けられ、前記各移動装置の数値制御を行う数値制御装置であって、
前記対象物を特定の位置に配置する場合に前記各移動装置の前記駆動装置が示す前記機械軸の理論的な座標である理論的機械軸座標と前記対象物を前記特定の位置に実際に配置した場合に前記各移動装置の前記駆動装置が示す前記機械軸の座標である実測機械軸座標との差からなる誤差データを格納する誤差データ格納部と、
前記各移動装置の前記駆動装置に前記支持体の移動を指示するための数値制御プログラムを記憶するプログラム記憶部と、
前記プログラム記憶部に記憶された前記数値制御プログラムからその数値制御プログラムが指示する前記対象物の移動位置である指令位置を読み取る指令位置読取り部と、
前記指令位置読取り部によって読み取られた前記指令位置から前記各移動装置に駆動を指示するための前記機械軸毎の座標を算出する機械軸座標算出部と、
前記機械軸座標算出部によって算出された前記機械軸毎の座標を前記誤差データ格納部に格納された前記誤差データに基づいて補正することにより前記機械軸毎の補正座標を算出する補正演算部と、
前記補正演算部により算出された前記機械軸毎の前記補正座標に従って前記各移動装置の前記駆動装置に前記支持体を駆動させる駆動制御部とを備えた、数値制御装置。
【請求項2】
前記対象物が特定の位置に位置決めされた時の前記実測機械軸座標からその特定の位置における前記理論的機械軸座標を減じることにより前記誤差データを算出する誤差演算部を備え、
前記誤差データ格納部は、前記誤差演算部によって算出された誤差データを格納する、請求項1に記載の数値制御装置。
【請求項3】
請求項1又は2に記載の数値制御装置と、
水平面内の特定方向にワークを移動させるワーク移動装置と、
水平方向でかつ前記ワークの移動方向と直交する方向において前記ワーク移動装置から離間した位置に立設され、鉛直方向に延びるコラムと、
ワークを加工するための工具と、
前記工具をその軸回りに回転させる主軸ヘッドと、
前記コラムに設けられ、前記主軸ヘッドを移動させるための鉛直移動装置、第1水平移動装置及び第2水平移動装置とを備え、
前記ワーク移動装置は、ベースと、水平面内で特定方向に延びるワーク機械軸方向に移動可能に前記ベース上に設けられ、ワークを下から支持するワーク支持体と、そのワーク支持体を前記ワーク機械軸方向に動かすワーク駆動装置とを有し、
前記鉛直移動装置は、前記コラムに沿って鉛直方向に延びる鉛直機械軸方向に移動可能に設けられ、前記第1水平移動装置を支持する鉛直支持体と、その鉛直支持体を前記鉛直機械軸方向に動かす鉛直駆動装置とを有し、
前記第1水平移動装置は、前記ワーク機械軸と前記鉛直機械軸の両方に垂直な第1水平機械軸方向に移動可能に前記鉛直支持体に設けられ、前記第2水平移動装置を支持する第1水平支持体と、その第1水平支持体を前記第1水平機械軸方向に動かす第1水平駆動装置とを有し、
前記第2水平移動装置は、前記第1水平機械軸と平行な第2水平機械軸方向に移動可能に前記第1水平支持体に設けられ、前記主軸ヘッドを当該主軸ヘッドによる工具の回転軸が前記第2水平機械軸と平行となるような姿勢で支持する第2水平支持体と、その第2水平支持体を前記第2水平機械軸方向に動かす第2水平駆動装置とを有し、
前記数値制御装置は、数値制御プログラムが指示する工具又はワークの指令位置から得られる前記各機械軸毎の座標を前記各機械軸毎の誤差データに基づいて補正することにより前記機械軸毎の補正座標を算出し、その算出した前記機械軸毎の補正座標に従って前記各駆動装置の駆動を制御する、工作機械。
【請求項4】
請求項1又は2に記載の数値制御装置と、
水平面内の特定方向にワークを移動させるワーク移動装置と、
水平方向でかつ前記ワークの移動方向と直交する方向において前記ワーク移動装置を挟んで互いに対向する位置にそれぞれ立設され、鉛直方向に延びるコラムと、
ワークを加工するための工具と、
前記工具をその軸回りに回転させる主軸ヘッドと、
前記コラムに設けられ、前記主軸ヘッドを移動させるための第1鉛直移動装置、水平移動装置、第2鉛直移動装置、回転移動装置及び揺動装置とを備え、
前記ワーク移動装置は、ベースと、水平面内で特定方向に延びるワーク機械軸方向に移動可能に前記ベース上に設けられ、ワークを下から支持するテーブルと、そのテーブルを前記ワーク機械軸方向に動かすテーブル駆動装置とを有し、
前記第1鉛直移動装置は、前記テーブルの上方において前記ワーク移動装置の両側のコラム間に掛け渡されるとともにそのコラムに沿って鉛直方向に延びる第1鉛直機械軸方向に移動可能に設けられ、前記水平移動装置を支持するクロスレールと、そのクロスレールを前記第1鉛直機械軸方向に動かす第1鉛直駆動装置とを有し、
前記水平移動装置は、前記ワーク機械軸と前記第1鉛直機械軸の両方に垂直な水平機械軸方向に移動可能に前記クロスレールに搭載され、前記第2鉛直移動装置を支持するサドルと、そのサドルを前記水平機械軸方向に動かす水平駆動装置とを有し、
前記第2鉛直移動装置は、前記第1鉛直機械軸と平行な第2鉛直機械軸方向に移動可能に前記サドルに設けられ、前記回転移動装置を支持する鉛直支持体と、その鉛直支持体を前記第2鉛直機械軸方向に動かす第2鉛直駆動装置とを有し、
前記回転移動装置は、鉛直軸回りの回転機械軸方向に回転可能に前記鉛直支持体に設けられ、前記揺動装置を支持する回転支持体と、その回転支持体を前記回転機械軸方向に回転させる回転駆動装置とを有し、
前記揺動装置は、水平軸を中心とした揺動機械軸方向に揺動可能に前記回転支持体に設けられ、前記主軸ヘッドを当該主軸ヘッドによる工具の回転軸が前記水平軸に対して垂直となるように支持する揺動支持体と、その揺動支持体を前記揺動機械軸方向に揺動させる揺動駆動装置とを有し、
前記数値制御装置は、数値制御プログラムが指示する工具又はワークの指令位置から得られる前記各機械軸毎の座標を前記各機械軸毎の誤差データに基づいて補正することにより前記機械軸毎の補正座標を算出し、その算出した前記機械軸毎の補正座標に従って前記各駆動装置の駆動を制御する、工作機械。
【請求項5】
請求項1又は2に記載の数値制御装置と、
ワークを加工するための工具と、
前記工具をその軸回りに回転させる主軸ヘッドと、
前記主軸ヘッドを当該主軸ヘッドによる工具の回転軸が水平方向に延びるような姿勢で支持し、その主軸ヘッドを平行移動させるパラレルリンク機構と、
前記パラレルリンク機構全体を水平面内の特定方向へ移動させる水平移動装置とを備え、
前記水平移動装置は、基台と、水平面内で特定方向に延びる水平機械軸方向に移動可能に前記基台上に設けられ、前記パラレルリンク機構を下から支持する水平支持体と、その水平支持体を前記水平機械軸方向に動かす水平駆動装置とを有し、
前記パラレルリンク機構は、前記主軸ヘッドを支持するヘッド支持部と、一方向に延びる棒状に形成され、その一端部が前記ヘッド支持部に関節駆動可能なように接続されてそのヘッド支持部を支持するストラットと、前記水平支持体上に設置され、前記各ストラットをその前記一端部側が前記水平支持体上から張り出すような姿勢でそれぞれ支持するとともに、前記各ストラットをその長手方向に延びるストラット機械軸方向に移動可能にそれぞれ支持するストラット支持機構と、前記各ストラット毎に設けられ、前記ヘッド支持部に支持された前記主軸ヘッドが平行移動するように前記各ストラットを各々の前記ストラット機械軸方向に動かすストラット駆動装置とを有し、
前記数値制御装置は、前記水平機械軸と平行な第1水平移動軸、鉛直方向に延びる鉛直移動軸及び前記第1水平移動軸と前記鉛直移動軸の両方に垂直な第2水平移動軸の各移動軸の座標からなる工具の指令位置から得られる前記各機械軸毎の座標を前記各機械軸毎の誤差データに基づいて補正することにより前記機械軸毎の補正座標を算出し、その算出した前記機械軸毎の補正座標に従って前記水平駆動装置及び前記各ストラット駆動装置の駆動を制御する、工作機械。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2011−215798(P2011−215798A)
【公開日】平成23年10月27日(2011.10.27)
【国際特許分類】
【出願番号】特願2010−82449(P2010−82449)
【出願日】平成22年3月31日(2010.3.31)
【出願人】(000191180)新日本工機株式会社 (51)
【Fターム(参考)】