(57)【要約】【課題】ワークの加工位置の誤差を補正するとともに、ワーク上の複数の位置においてそれぞれ異なる大きさの誤差が生じている場合でもそれらの各誤差を全体的に小さくする補正を行えるようにする。【解決手段】補正マトリクス導出装置２０では、演算部２６は、仮補正マトリクスにより第１補正変換した後の座標に基づいて選出した第１最大離間基準点の重み係数Ｇを所定の増加分ｇ１だけ増加した値に再設定する第１重み係数再設定と、その後、各基準点１００ａの基準座標を補正変換するための補正マトリクスであって、各基準点１００ａの基準座標を当該補正マトリクスによって補正変換した後の座標と対応する計測座標との間の距離の二乗の値にその各基準点１００ａの重み係数Ｇを掛けた値を全ての基準点１００ａの分足し合わせた値が極小となるような補正マトリクスを最小二乗法によって算出する第２補正マトリクス算出演算とを行う。【選択図】図２
2012035399.tif 000002
【特許請求の範囲】
【請求項１】
ワークとそのワークを加工するための工具とのうち少なくとも一方を基準座標軸上の移動ベクトルで表される加工指令に従って移動させることにより前記工具によるワークの加工を実行する駆動装置を備えた工作機械でのワークの実際の加工時に生じる加工位置の誤差を補正するように前記加工指令を変換するための補正マトリクスを導出する補正マトリクス導出装置であって、
前記基準座標軸上における座標がそれぞれ与えられたワーク上の複数の基準点についてそれらの実際の座標をそれぞれ計測する計測装置と、
前記複数の基準点に与えられた座標である基準座標と前記計測装置によって計測された前記複数の基準点の実際の座標である計測座標とに基づいて前記補正マトリクスを算出するための演算を行う演算部とを備え、
前記演算部は、前記各基準点の前記基準座標を補正変換するための仮補正マトリクスであって、前記各基準点の前記基準座標を当該仮補正マトリクスによって補正変換した後の座標と対応する前記計測座標との間の距離の二乗の値を全ての基準点の分足し合わせた値が極小となるような仮補正マトリクスを最小二乗法によって算出する第１補正マトリクス算出演算と、その第１補正マトリクス算出演算によって算出された前記仮補正マトリクスにより前記各基準点の前記基準座標を補正変換する第１補正変換と、前記各基準点について等しい重み係数をそれぞれ設定する第１重み係数設定と、前記各基準点のうち前記基準座標を前記第１補正変換した後の座標と対応する前記計測座標との間の距離が最も大きい基準点である第１最大離間基準点を選出する第１選出と、その選出した前記第１最大離間基準点の前記重み係数を所定の増加分だけ増加した値に再設定する第１重み係数再設定と、その第１重み係数再設定の後、前記各基準点の前記基準座標を補正変換するための補正マトリクスであって、前記各基準点の前記基準座標を当該補正マトリクスによって補正変換した後の座標と対応する前記計測座標との間の距離の二乗の値にその各基準点について設定されている前記重み係数を掛けた値を全ての基準点の分足し合わせた値が極小となるような補正マトリクスを最小二乗法によって算出する第２補正マトリクス算出演算とを行う、補正マトリクス導出装置。
【請求項２】
前記演算部は、前記第２補正マトリクス算出演算によって算出した前記補正マトリクスにより前記各基準点の前記基準座標を補正変換する第２補正変換と、前記各基準点のうち前記基準座標を前記第２補正変換した後の座標と対応する前記計測座標との間の距離が最も大きい基準点である第２最大離間基準点を選出する第２選出と、前記第２補正変換後の前記各基準点の座標と対応する前記計測座標との間の距離である補正後離間距離の算出と、その各基準点についての補正後離間距離の平均値である補正後離間距離平均値の算出と、今回の前記第２補正マトリクス算出演算に伴って算出した前記第２最大離間基準点についての前記補正後離間距離がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも大きいという第１条件が満たされているかの判断と、今回の前記第２補正マトリクス算出演算に伴って算出した前記補正後離間距離平均値がその１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値よりも大きいという第２条件が満たされているかの判断とを行い、前記第１条件と前記第２条件の両方が満たされたと判断した場合には、前記１つ前の回の補正マトリクス算出演算で算出した補正マトリクスを最終の算出結果とし、前記第１条件と前記第２条件のうち少なくとも一方が満たされていないと判断した場合には、前記第２最大離間基準点の前記重み係数を所定の増加分だけ増加した値に再設定する第２重み係数再設定と、その第２重み係数再設定の後、前記各基準点の前記基準座標を補正変換するための補正マトリクスであって、前記各基準点の前記基準座標を当該補正マトリクスによって補正変換した後の座標と対応する前記計測座標との間の距離の二乗の値にその各基準点について設定されている前記重み係数を掛けた値を全ての基準点の分足し合わせた値が極小となるような補正マトリクスを最小二乗法によって算出する次回の第２補正マトリクス算出演算を行う、求項１に記載の補正マトリクス導出装置。
【請求項３】
前記演算部は、前記第２補正マトリクス算出演算によって算出した前記補正マトリクスにより前記各基準点の前記基準座標を補正変換する第２補正変換と、前記各基準点のうち前記基準座標を前記第２補正変換した後の座標と対応する前記計測座標との間の距離が最も大きい基準点である第２最大離間基準点を選出する第２選出と、前記第２補正変換後の前記各基準点の座標と対応する前記計測座標との間の距離である補正後離間距離の算出と、その各基準点についての補正後離間距離の平均値である補正後離間距離平均値の算出と、今回の前記第２補正マトリクス算出演算に伴って算出した前記第２最大離間基準点についての前記補正後離間距離がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも大きいという第１条件、及び、今回の前記第２補正マトリクス算出演算に伴って算出した前記補正後離間距離平均値がその１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値よりも大きいという第２条件が満たされているかの判断と、今回の前記第２補正マトリクス算出演算に伴って算出した前記第２最大離間基準点についての前記補正後離間距離がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも小さいという第３条件、及び、今回の前記第２補正マトリクス算出演算に伴って算出した前記第２最大離間基準点についての前記補正後離間距離から今回の前記第２補正マトリクス算出演算に伴って算出した前記補正後離間距離平均値を減じた値がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離から当該１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値を減じた値よりも大きいという第４条件が満たされているかの判断とを行い、前記第１条件と前記第２条件の両方が満たされたか、又は、前記第３条件と前記第４条件の両方が満たされたと判断した場合には、前記１つ前の回の補正マトリクス算出演算で算出した補正マトリクスを最終の算出結果とし、それ以外の場合には、前記第２最大離間基準点の前記重み係数を所定の増加分だけ増加した値に再設定する第２重み係数再設定と、その第２重み係数再設定の後、前記各基準点の前記基準座標を補正変換するための補正マトリクスであって、前記各基準点の前記基準座標を当該補正マトリクスによって補正変換した後の座標と対応する前記計測座標との間の距離の二乗の値にその各基準点について設定されている前記重み係数を掛けた値を全ての基準点の分足し合わせた値が極小となるような補正マトリクスを最小二乗法によって算出する次回の第２補正マトリクス算出演算を行う、請求項１に記載の補正マトリクス導出装置。
【請求項４】
前記演算部は、前記第１補正マトリクス算出演算に先立って温度によるワークの膨張収縮率を表すスケーリング倍率の導出を行い、前記第１補正マトリクス算出演算では、前記スケーリング倍率を含む前記仮補正マトリクスで前記各基準点の前記基準座標を補正変換した場合について前記仮補正マトリクスの算出を行い、前記第２補正マトリクス算出演算では、前記スケーリング倍率を含む前記補正マトリクスで前記各基準点の前記基準座標を補正変換した場合について前記補正マトリクスの算出を行う、請求項１〜３のいずれか１項に記載の補正マトリクス導出装置。
【請求項５】
ワークとそのワークを加工するための工具とのうち少なくとも一方を基準座標軸上の移動ベクトルで表される加工指令に従って移動させることにより前記工具によるワークの加工を実行する駆動装置を備えた工作機械に設けられ、ワークの実際の加工時に生じる加工位置の誤差を補正するための誤差補正装置であって、
請求項１〜４のいずれか１項に記載の補正マトリクス導出装置と、
その補正マトリクス導出装置によって導出された前記補正マトリクスを用いて前記加工指令を補正変換する加工指令補正変換部とを備えた、誤差補正装置。
【請求項６】
ワークを加工するための工作機械であって、
ワークとそのワークを加工するための工具とのうち少なくとも一方を基準座標軸上の移動ベクトルで表される加工指令に従って移動させることにより前記工具によるワークの加工を実行する駆動装置と、
請求項５に記載の誤差補正装置と、
その誤差補正装置によって補正変換された加工指令に従って前記駆動装置にワークと前記工具のうち少なくとも一方の移動を実行させてワークを加工させる制御装置とを備えた、工作機械。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、補正マトリクス導出装置、誤差補正装置及び工作機械に関するものである。
【背景技術】
【０００２】
従来、工作機械において、様々な要因によりワークの加工位置にずれが生じるため、その加工位置のずれを補正することが行われている。例えば、下記特許文献１には、このようなワークの加工位置のずれを補正するための工作機械の基準位置補正装置が開示されている。
【０００３】
特許文献１に示された工作機械の基準位置補正装置は、工作機械の構成部材の熱変形に起因して発生するワークの加工誤差を補正するものである。この基準位置補正装置は、工作機械のワーク支持用のテーブルに固定され、第１基準穴と第２基準穴が設けられた治具と、ワーク加工用の工具が取り付けられて回転させられる工作機械の主軸に工具の代わりに取り付けられたタッチセンサとを有しており、そのタッチセンサを用いて前記治具の両基準穴の位置を検出するようになっている。具体的には、タッチセンサを水平軸方向に移動させて各基準穴の水平軸方向の中心位置を検出するとともにタッチセンサを垂直軸方向に移動させて各基準穴の垂直軸方向の中心位置を検出し、それら検出した両中心位置から各基準穴の中心位置間の距離を求める。そして、工作機械の構成部材が常温の時の前記両基準穴の中心位置間の距離を予め計測しておき、その常温時の両基準穴の中心位置間の距離に対する今回計測した両基準穴の中心位置間の距離の変化量を算出する。そして、この基準位置補正装置では、第１基準穴の中心位置を基準位置として、前記算出した距離の変化量の分、主軸とテーブルとの相対位置を補正するようになっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２５１６２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記特許文献１の基準位置補正装置は、あくまで、装置側の熱変形に起因する主軸とテーブルとの相対位置の誤差を補正するものであり、ワークに各種要因による変形が生じたり、テーブルへのワークの設置位置にずれが生じたりした場合における加工位置の誤差を補正することはできず、さらに、ワーク上の複数の位置においてそれぞれ異なる加工位置の誤差が生じている場合には、それらの誤差が全体的に小さくなるような補正を行うことはできない。
【０００６】
本発明は、上記の課題を解決するためになされたものであり、その目的は、ワークの変形や設置位置のずれに起因するワークの加工位置の誤差を補正できるようにするとともに、ワーク上の複数の位置においてそれぞれ異なる大きさの誤差が生じている場合でもそれらの各誤差を全体的に小さくする補正を行えるようにすることである。
【課題を解決するための手段】
【０００７】
本願発明者は、上記目的を達成するために、基準座標軸上における座標が既知であるワーク上の複数の基準点について実際の座標（計測座標）を計測し、各基準点の基準座標軸上における既知の座標である基準座標を補正変換した場合にその補正変換後の各基準点の座標と対応する計測座標との間の距離の二乗の値を全ての基準点の分足し合わせた値が極小となるように各基準点の基準座標を補正変換可能な補正マトリクスを最小二乗法によって算出し、その補正マトリクスによりワークの加工指令を補正変換することを思いついた。
【０００８】
この誤差補正の技術によれば、ワークの基準点の基準座標と計測座標との距離（誤差）に基づいてワークの加工指令を補正することになるので、ワークの変形や設置位置のずれに起因するワークの加工位置の誤差を補正できるようになる。また、この誤差補正では、前記補正マトリクスにより、前記補正変換後の各基準点の基準座標と対応する計測座標との間の距離の二乗和が極小となるようにワークの加工指令を補正変換することが可能であるので、ワーク上の複数の位置においてそれぞれ異なる大きさの誤差が生じている場合でもそれらの各誤差を全体的に小さくすることができる。
【０００９】
ところで、機械加工の分野では、計測したワーク上の各基準点の全てにおいてその誤差が許容値以下になることを保証する必要がある場合が多いが、上記の誤差補正の技術では、ワーク上の複数の基準点の中に計測座標が基準座標から著しく変位している少数の基準点が含まれている場合には、その基準点の誤差を許容値以下になるような補正ができない虞がある。
【００１０】
具体的には、上記の誤差補正の技術では、前記複数の基準点の中に計測座標が基準座標から著しく変位している少数の基準点が含まれていても、その基準点以外の基準点の誤差が補正マトリクスの算出に影響を与える要素として大きな比重を占める。このため、算出される補正マトリクスによって全基準点の基準座標の補正を行うと、前記著しく変位した基準点以外の基準点の誤差については許容値以下に補正されるものの、前記著しく変位した基準点の誤差については十分な補正ではなく、補正後も許容値よりも大きい誤差が残ってしまう場合がある。
【００１１】
そこで、本願発明者は、このような著しく変位した基準点の誤差を最小化しつつ、全ての基準点の誤差を全体的に小さくする補正を行うために、以下のような構成の補正マトリックス導出装置、誤差補正装置及び工作機械を発明した。
【００１２】
すなわち、本発明による補正マトリクス導出装置は、ワークとそのワークを加工するための工具とのうち少なくとも一方を基準座標軸上の移動ベクトルで表される加工指令に従って移動させることにより前記工具によるワークの加工を実行する駆動装置を備えた工作機械でのワークの実際の加工時に生じる加工位置の誤差を補正するように前記加工指令を変換するための補正マトリクスを導出する補正マトリクス導出装置であって、前記基準座標軸上における座標がそれぞれ与えられたワーク上の複数の基準点についてそれらの実際の座標をそれぞれ計測する計測装置と、前記複数の基準点に与えられた座標である基準座標と前記計測装置によって計測された前記複数の基準点の実際の座標である計測座標とに基づいて前記補正マトリクスを算出するための演算を行う演算部とを備え、前記演算部は、前記各基準点の前記基準座標を補正変換するための仮補正マトリクスであって、前記各基準点の前記基準座標を当該仮補正マトリクスによって補正変換した後の座標と対応する前記計測座標との間の距離の二乗の値を全ての基準点の分足し合わせた値が極小となるような仮補正マトリクスを最小二乗法によって算出する第１補正マトリクス算出演算と、その第１補正マトリクス算出演算によって算出された前記仮補正マトリクスにより前記各基準点の前記基準座標を補正変換する第１補正変換と、前記各基準点について等しい重み係数をそれぞれ設定する第１重み係数設定と、前記各基準点のうち前記基準座標を前記第１補正変換した後の座標と対応する前記計測座標との間の距離が最も大きい基準点である第１最大離間基準点を選出する第１選出と、その選出した前記第１最大離間基準点の前記重み係数を所定の増加分だけ増加した値に再設定する第１重み係数再設定と、その第１重み係数再設定の後、前記各基準点の前記基準座標を補正変換するための補正マトリクスであって、前記各基準点の前記基準座標を当該補正マトリクスによって補正変換した後の座標と対応する前記計測座標との間の距離の二乗の値にその各基準点について設定されている前記重み係数を掛けた値を全ての基準点の分足し合わせた値が極小となるような補正マトリクスを最小二乗法によって算出する第２補正マトリクス算出演算とを行う。
【００１３】
この補正マトリクス導出装置では、演算部が、第１最大離間基準点の重み係数を所定の増加分だけ増加した値に再設定した後、各基準点の基準座標の補正変換後の座標と対応する計測座標との間の距離の二乗の値にその各基準点について設定されている重み係数を掛けた値を全ての基準点の分足し合わせた値が極小となるように各基準点の基準座標を補正変換可能な補正マトリクスを最小二乗法によって算出するため、単に各基準点の基準座標と計測座標との間の距離の二乗和が極小となるように各基準点の基準座標を補正変換可能な補正マトリクスを求める場合に比べて、各基準点のうち第１最大離間基準点の基準座標からの実際の座標の誤差を大きく加味した補正マトリクスを算出することができる。従って、この算出した補正マトリクスによってワークの加工指令を補正変換すれば、計測座標が基準座標から最大に変位した基準点、すなわち、計測座標が基準座標から著しく変位した基準点の誤差を最小化しつつ、全ての基準点の誤差を全体的に小さくする補正を行うことができる。
【００１４】
上記補正マトリクス導出装置において、前記演算部は、前記第２補正マトリクス算出演算によって算出した前記補正マトリクスにより前記各基準点の前記基準座標を補正変換する第２補正変換と、前記各基準点のうち前記基準座標を前記第２補正変換した後の座標と対応する前記計測座標との間の距離が最も大きい基準点である第２最大離間基準点を選出する第２選出と、前記第２補正変換後の前記各基準点の座標と対応する前記計測座標との間の距離である補正後離間距離の算出と、その各基準点についての補正後離間距離の平均値である補正後離間距離平均値の算出と、今回の前記第２補正マトリクス算出演算に伴って算出した前記第２最大離間基準点についての前記補正後離間距離がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも大きいという第１条件が満たされているかの判断と、今回の前記第２補正マトリクス算出演算に伴って算出した前記補正後離間距離平均値がその１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値よりも大きいという第２条件が満たされているかの判断とを行い、前記第１条件と前記第２条件の両方が満たされたと判断した場合には、前記１つ前の回の補正マトリクス算出演算で算出した補正マトリクスを最終の算出結果とし、前記第１条件と前記第２条件のうち少なくとも一方が満たされていないと判断した場合には、前記第２最大離間基準点の前記重み係数を所定の増加分だけ増加した値に再設定する第２重み係数再設定と、その第２重み係数再設定の後、前記各基準点の前記基準座標を補正変換するための補正マトリクスであって、前記各基準点の前記基準座標を当該補正マトリクスによって補正変換した後の座標と対応する前記計測座標との間の距離の二乗の値にその各基準点について設定されている前記重み係数を掛けた値を全ての基準点の分足し合わせた値が極小となるような補正マトリクスを最小二乗法によって算出する次回の第２補正マトリクス算出演算を行ってもよい。
【００１５】
この構成では、演算部が、今回の第２補正マトリクス算出演算に伴って算出した第２最大離間基準点についての補正後離間距離が前回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも大きくなり、かつ、今回の第２補正マトリクス算出演算に伴って算出した補正後離間距離平均値が前回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値よりも大きくなるまで、第２最大離間基準点の選出と、その選出した第２最大離間基準点の補正後離間距離の二乗の値に所定の増加分だけ増加させた重み係数を掛けて行う第２補正マトリクス算出演算とを行うことになるため、計測座標が基準座標から著しく変位した基準点の誤差を良好に小さくしつつ、全ての基準点の誤差を全体的に良好に小さくする補正を行うことが可能な補正マトリクスを算出することができる。
【００１６】
上記補正マトリクス導出装置において、前記演算部は、前記第２補正マトリクス算出演算によって算出した前記補正マトリクスにより前記各基準点の前記基準座標を補正変換する第２補正変換と、前記各基準点のうち前記基準座標を前記第２補正変換した後の座標と対応する前記計測座標との間の距離が最も大きい基準点である第２最大離間基準点を選出する第２選出と、前記第２補正変換後の前記各基準点の座標と対応する前記計測座標との間の距離である補正後離間距離の算出と、その各基準点についての補正後離間距離の平均値である補正後離間距離平均値の算出と、今回の前記第２補正マトリクス算出演算に伴って算出した前記第２最大離間基準点についての前記補正後離間距離がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも大きいという第１条件、及び、今回の前記第２補正マトリクス算出演算に伴って算出した前記補正後離間距離平均値がその１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値よりも大きいという第２条件が満たされているかの判断と、今回の前記第２補正マトリクス算出演算に伴って算出した前記第２最大離間基準点についての前記補正後離間距離がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも小さいという第３条件、及び、今回の前記第２補正マトリクス算出演算に伴って算出した前記第２最大離間基準点についての前記補正後離間距離から今回の前記第２補正マトリクス算出演算に伴って算出した前記補正後離間距離平均値を減じた値がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離から当該１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値を減じた値よりも大きいという第４条件が満たされているかの判断とを行い、前記第１条件と前記第２条件の両方が満たされたか、又は、前記第３条件と前記第４条件の両方が満たされたと判断した場合には、前記１つ前の回の補正マトリクス算出演算で算出した補正マトリクスを最終の算出結果とし、それ以外の場合には、前記第２最大離間基準点の前記重み係数を所定の増加分だけ増加した値に再設定する第２重み係数再設定と、その第２重み係数再設定の後、前記各基準点の前記基準座標を補正変換するための補正マトリクスであって、前記各基準点の前記基準座標を当該補正マトリクスによって補正変換した後の座標と対応する前記計測座標との間の距離の二乗の値にその各基準点について設定されている前記重み係数を掛けた値を全ての基準点の分足し合わせた値が極小となるような補正マトリクスを最小二乗法によって算出する次回の第２補正マトリクス算出演算を行ってもよい。
【００１７】
この構成では、前回の補正マトリクス算出演算に伴って算出された最大離間基準点についての補正後離間距離に比べて今回の第２補正マトリクス算出演算に伴って算出された第２最大離間基準点についての補正後離間距離が減少している場合でも、最大離間基準点についての補正後離間距離に対する補正後離間距離平均値の差が前回の補正マトリクス算出演算の場合に比べて今回の第２補正マトリクス算出演算の場合の方が増加すれば、それ以降の回の第２補正マトリクス算出演算は行われず、前回の補正マトリクス算出演算で算出した補正マトリクスが最終の算出結果となる。すなわち、この構成では、計測座標が基準座標から著しく変位した基準点（最大離間基準点）の基準座標に対する誤差を小さくしつつ、そのような最大離間基準点の誤差が全基準点の誤差の平均値に近づくような補正を行うことが可能な補正マトリクスを算出することができる。
【００１８】
上記補正マトリクス導出装置において、前記演算部は、前記第１補正マトリクス算出演算に先立って温度によるワークの膨張収縮率を表すスケーリング倍率の導出を行い、前記第１補正マトリクス算出演算では、前記スケーリング倍率を含む前記仮補正マトリクスで前記各基準点の前記基準座標を補正変換した場合について前記仮補正マトリクスの算出を行い、前記第２補正マトリクス算出演算では、前記スケーリング倍率を含む前記補正マトリクスで前記各基準点の前記基準座標を補正変換した場合について前記補正マトリクスの算出を行うことが好ましい。
【００１９】
この構成では、温度によるワークの膨張収縮率を表すスケーリング倍率の要素を加えた最小二乗法による演算で前記仮補正マトリクス及び前記補正マトリクスが算出されるため、ワークの温度による膨張収縮に起因する誤差を加味した補正マトリクスを得ることができる。このため、その補正マトリクスによってワークの加工指令を補正変換すれば、ワークの温度による膨張収縮に起因する誤差を補正することができる。
【００２０】
本発明による誤差補正装置は、ワークとそのワークを加工するための工具とのうち少なくとも一方を基準座標軸上の移動ベクトルで表される加工指令に従って移動させることにより前記工具によるワークの加工を実行する駆動装置を備えた工作機械に設けられ、ワークの実際の加工時に生じる加工位置の誤差を補正するための誤差補正装置であって、上記補正マトリクス導出装置と、その補正マトリクス導出装置によって導出された前記補正マトリクスを用いて前記加工指令を補正変換する加工指令補正変換部とを備えている。
【００２１】
この誤差補正装置では、加工指令補正変換部が上記補正マトリクス導出装置によって導出された補正マトリクスを用いてワークの加工指令を補正変換するため、ワークの各基準点の中で基準座標から最大に変位した基準点に対応する部位の加工誤差を最小化しつつ、ワークの全ての基準点に対応する部位の加工誤差を全体的に小さくする補正を行うことができる。
【００２２】
本発明による工作機械は、ワークを加工するための工作機械であって、ワークとそのワークを加工するための工具とのうち少なくとも一方を基準座標軸上の移動ベクトルで表される加工指令に従って移動させることにより前記工具によるワークの加工を実行する駆動装置と、上記誤差補正装置と、その誤差補正装置によって補正変換された加工指令に従って前記駆動装置にワークと前記工具のうち少なくとも一方の移動を実行させてワークを加工させる制御装置とを備えている。
【００２３】
この工作機械では、制御装置が、上記誤差補正装置によって補正変換された加工指令に従って駆動装置にワークと工具のうち少なくとも一方の移動を実行させてワークを加工させるため、ワークの各基準点の中で基準座標から最大に変位した基準点に対応する部位の加工誤差を最小化しつつ、ワークの全ての基準点に対応する部位の加工誤差を全体的に小さくすることができる。
【発明の効果】
【００２４】
以上説明したように、本発明によれば、ワークの各基準点のうち計測座標が基準座標から著しく変位した基準点の誤差を最小化しつつ、全ての基準点の誤差を全体的に小さくする補正を行うことができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の一実施形態による工作機械の概略的な斜視図である。
【図２】本発明の一実施形態による工作機械の機能ブロック図である。
【図３】本発明の一実施形態の工作機械によるワークの加工プロセスを示すフローチャートである。
【図４】本発明の一実施形態の工作機械におけるキャリブレーションの方法を説明するための図である。
【図５】本発明の一実施形態の工作機械におけるスケーリング倍率導出時の基準バーの測定方法を説明するための図である。
【図６】ワーク上に配置された基準球の状態を示す斜視図である。
【図７】本発明の一実施形態の工作機械における基準点の計測座標の計測方法を説明するための図である。
【図８】本発明の一実施形態の補正マトリクス導出装置による補正マトリクスの算出プロセスを示すフローチャートのうち第１最大離間基準点の選出までのプロセスを示す図である。
【図９】本発明の一実施形態の補正マトリクス導出装置による補正マトリクスの算出プロセスを示すフローチャートのうち第２補正マトリクス算出演算以降のプロセスを示す図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態を図面を参照して説明する。
【００２７】
まず、図１及び図２を参照して、本発明の一実施形態による工作機械の構成について説明する。
【００２８】
本実施形態による工作機械は、加工対象物であるワークＷを加工するためのものであって、基準座標軸上の移動ベクトルで表される加工指令に従ってワークＷと工具５を移動させることにより、その工具５によるワークＷの加工を行うものである。
【００２９】
具体的には、本実施形態の工作機械は、駆動装置２と、工具５と、誤差補正装置６（図２参照）と、制御装置７（図２参照）とを備えている。
【００３０】
駆動装置２は、ワークＷとそのワークＷを加工するための工具５を加工指令に従って移動させることにより工具５によるワークＷの加工を実行する装置である。この駆動装置２は、ワーク駆動装置３と、工具駆動装置４とを備えている。
【００３１】
ワーク駆動装置３は、加工指令に従ってワークＷを水平方向であるＸ軸方向に移動させるものである。このワーク駆動装置３は、設置面上に固定されたベッド３ａ上において前記Ｘ軸方向にテーブル３ｂを移動させることにより、そのテーブル３ｂ上に載置されたワークＷをＸ軸方向に移動させる。このワーク駆動装置３は、テーブル３ｂをＸ軸方向に移動させるための駆動源として図略のサーボモータを備えている。
【００３２】
工具駆動装置４は、加工指令に従って、水平方向で前記Ｘ軸方向に直交するＹ軸方向と、Ｘ軸及びＹ軸の両方に直交するＺ軸方向（鉛直方向）とに工具５を移動させるものである。
【００３３】
具体的には、工具駆動装置４は、一対のコラム８と、クロスレール１０と、水平移動装置１２と、垂直移動装置１４と、主軸装置１６とを備えている。
【００３４】
一対のコラム８は、ベッド３ａの幅方向（Ｙ軸方向）においてそのベッド３ａの両側に分かれて立設されている。
【００３５】
クロスレール１０は、ベッド３ａの上方においてＹ軸方向に延びるように配置されており、一対のコラム８によって上下方向に移動可能に支持されている。そして、このクロスレール１０は、図略の駆動機構によりコラム８に沿って上下方向に移動させられるようになっている。
【００３６】
水平移動装置１２は、クロスレール１０によってＹ軸方向（クロスレール１０の長手方向）に移動可能に支持されている。水平移動装置１２は、図略のサーボモータを備えており、そのサーボモータの駆動力によってクロスレール１０に沿ってＹ軸方向に移動するようになっている。
【００３７】
垂直移動装置１４は、水平移動装置１２に搭載されている。この垂直移動装置１４は、図略のサーボモータを備えており、そのサーボモータの駆動力によって水平移動装置１２に対してＺ軸方向に移動するようになっている。
【００３８】
主軸装置１６は、垂直移動装置１４によって支持されている。この主軸装置１６は、工具５を保持し、その工具５をＺ軸方向に延びる軸心回りに回転させる。この主軸装置１６によって回転させられた工具５によりワークＷが切削加工される。
【００３９】
そして、Ｙ軸方向への水平移動装置１２の移動とＺ軸方向への垂直移動装置１４の移動とにより、工具５がＹ軸方向及びＺ軸方向に移動させられ、この工具５のＹ軸方向及びＺ軸方向への移動とワーク駆動装置３によるワークＷのＸ軸方向への移動との組み合わせにより工具５をワークＷに対して相対的に加工パスに従って移動させ、ワークＷを所定の形状に加工するようになっている。
【００４０】
誤差補正装置６は、ワークＷの実際の加工時に生じる加工位置の誤差を補正するためのものである。具体的には、誤差補正装置６は、図２に示すように、補正マトリクス導出装置２０と、加工指令補正変換部２２とを有する。
【００４１】
補正マトリクス導出装置２０は、ワークＷの実際の加工時に生じる加工位置の誤差を補正するように加工指令を補正変換するための補正マトリクスを導出するものである。ワークＷの実際の加工時に生じる加工位置の誤差は、加工指令で指示されるワークＷ上の加工位置と実際に工具５によって切削加工されるワークＷ上の位置との間で生じる誤差のことであり、温度によるワークＷの膨張収縮、ワークＷの捩れ、ワークＷの重力変形、その他、ワークＷの設置位置のずれ等に起因して生じるものである。
【００４２】
補正マトリクス導出装置２０は、計測装置２４と、演算部２６と、記憶部２８とを有する。
【００４３】
計測装置２４は、計測対象物の座標を計測するものである。この計測装置２４は、基準座標軸上における座標がそれぞれ与えられたワークＷ上の複数の基準点１００ａについてそれらの実際の座標をそれぞれ計測する。具体的には、ワークＷには、図６に示すように、複数の基準球１００が設けられている。この複数の基準球１００は、平板状のワークＷの上面から突出するように設けられており、互いに離間して設置されている。そして、この各基準球１００の中心点がそれぞれ基準点１００ａとなっている。計測装置２４は、図２に示すように、測定プローブ３４と、座標取得部３６と、座標算出部３８と、座標記憶部４０とを有する。
【００４４】
測定プローブ３４（図４参照）は、直線的に延びる軸部３４ａと、その軸部３４ａの先端（下端）に設けられた球状のセンサ部３４ｂとを有するタッチセンサである。この測定プローブ３４は、工具５の代わりに主軸装置１６に取り付けられる。この際、測定プローブ３４は、Ｚ軸方向に延びる姿勢で主軸装置１６に保持され、その軸心が主軸装置１６に保持される工具５の軸心（回転軸）の位置と一致するように主軸装置１６に保持される。測定プローブ３４は、その先端のセンサ部３４ｂが対象物に接触することによって、座標取得部３６へ信号を送るように構成されている。
【００４５】
座標取得部３６は、ワーク駆動装置３からＸ軸方向の移動座標のデータを、工具駆動装置４の水平移動装置１２からＹ軸方向の移動座標のデータを、工具駆動装置４の垂直移動装置１４からＺ軸方向の移動座標のデータをそれぞれ得ており、測定プローブ３４のセンサ部３４ｂが対象物に接触して測定プローブ３４から信号が送られてくるのに応じてそのときのセンサ部３４ｂが接触した部位の座標を前記各移動座標のデータから求める。
【００４６】
座標算出部３８は、測定プローブ３４のセンサ部３４ｂがワークＷ上の各基準球１００の外面にＸＹＺ軸の各方向から接触して座標取得部３６がその接触部位の座標を取得した場合に、その座標取得部３６の取得した前記接触部位の座標から各基準球１００の中心に位置する基準点１００ａの座標を算出する。当該計測装置２４の測定プローブ３４、座標取得部３６及び座標算出部３８によるワークＷ上の各基準点１００ａの座標の詳細な導出プロセスについては、後述する。
【００４７】
座標記憶部４０は、座標算出部３８によって算出された各基準点１００ａの座標を記憶する。なお、座標取得部３６、座標算出部３８及び座標記憶部４０は、工作機械に設けられた演算装置に組み込まれている。
【００４８】
演算部２６は、ワークＷ上の複数の基準点１００ａに与えられた基準座標と計測装置２４によって計測された複数の基準点１００ａの実際の座標である計測座標とに基づいて補正マトリクスを算出するための演算や、その他各種演算、判断等を行う。補正マトリクスは、オイラー角と平行移動ベクトルとによって表され、ワークＷ上の複数の基準点１００ａの基準座標を計測座標に近づけるためにその複数の基準点１００ａの基準座標をどのように回転させて平行移動させるかを表す。この演算部２６が補正マトリクスの算出のために行う各種演算や判断等の詳細な内容については、後述する。
【００４９】
記憶部２８は、ワークＷの加工指令（ＮＣプログラム）、キャリブレーションによって算出された補正値、スケーリング倍率、ワークＷ上の各基準点１００ａの基準座標、計測装置２４によって計測されたワークＷ上の各基準点１００ａの計測座標、第１補正マトリクス算出演算によって算出される仮補正マトリクスのデータ、第２補正マトリクス算出演算によって算出される補正マトリクスのデータ、補正マトリクスによって補正変換された後の加工指令、その他、各種データを保存する。
【００５０】
加工指令補正変換部２２は、補正マトリクス導出装置２０の演算部２６によって導出され、記憶部２８に保存された補正マトリクスを用いて加工指令を補正変換するものである。
【００５１】
制御装置７は、ワーク駆動装置３の駆動及び工具駆動装置４の駆動を制御するものである。この制御装置７は、加工指令補正変換部２２によって補正変換された加工指令に従ってワーク駆動装置３にワークＷの移動を実行させるとともに工具駆動装置４の水平移動装置１２及び垂直移動装置１４に工具５の移動を実行させてワークＷを加工させる。
【００５２】
次に、本実施形態の工作機械によるワークＷの加工プロセスについて説明する。
【００５３】
本実施形態による工作機械では、ワークＷの加工を行うに当たって、図３に示すように、まず、キャリブレーションを行う（ステップＳ１）。このキャリブレーションは、図４に示すような基準治具１０２を用いて行われる。具体的には、基準治具１０２は、工作機械のテーブル３ｂ上に設置される基部１０２ａと、その基部１０２ａから延びる脚部１０２ｂと、その脚部１０２ｂの先端に設けられた球体１０２ｃとを有する。そして、このキャリブレーションは、主軸装置１６に測定プローブ３４を取り付け、その測定プローブ３４で前記球体１０２ｃの外面の複数箇所の座標を検出することによって行う。詳細には、ワーク駆動装置３と工具駆動装置４の駆動によって、測定プローブ３４のセンサ部３４ｂを図４中の矢印で示すように前記球体１０２ｃの外面の複数箇所に対して接触させる。これにより、球体１０２ｃのうちセンサ部３４ｂが接触した各箇所の座標が座標取得部３６によって取得される。そして、演算部２６が、座標取得部３６によって取得された座標とセンサ部３４ｂが球体１０２ｃに接触すべき本来の座標とのずれを算出するとともに、そのずれを補正するための補正値を算出し、その算出した補正値の分だけワークＷの加工指令（ＮＣプログラム）を補正する。このキャリブレーションによる補正後の加工指令は、記憶部２８に保存される。
【００５４】
次に、基準バー１０４の計測及びその計測結果に基づくスケーリング倍率ｍの算出が行われる（ステップＳ２）。基準バー１０４としては、図５に示すような形状で捩れや歪み等の変形がなく、ワークＷと同じ材質からなり、常温での長さが既知のものを用いる。この基準バー１０４の常温での長さのデータは、記憶部２８に保存されている。そして、この基準バー１０４の測定では、まず、基準バー１０４をテーブル３ｂ上にＹ軸方向に延びるようにセットする。その後、工具駆動装置４によって測定プローブ３４が移動させられ、計測装置２４により基準バー１０４の両端の座標がそれぞれ計測される。そして、演算部２６が、計測装置２４によって計測された基準バー１０４の両端の座標から基準バー１０４の実際の長さを算出し、その算出した実際の長さを記憶部２８に保存された基準バー１０４の常温での長さによって除することにより基準バー１０４の常温での長さに対する前記実際の長さの倍率を算出する。この倍率がスケーリング倍率ｍとなる。この算出されたスケーリング倍率ｍのデータは、記憶部２８に保存される。
【００５５】
次に、ワークＷがテーブル３ｂ上にセットされ、ワークＷ上の各基準点１００ａの実際の座標の計測が行われる（ステップＳ３）。基準点１００ａの実際の座標の計測時には、ワーク駆動装置３により測定プローブ３４が図７に示す矢印ｉ方向から基準球１００に対して相対的に接近させられてセンサ部３４ｂが基準球１００に接触し、その接触した部位の座標が座標取得部３６によって取得される。次に、ワーク駆動装置３及び工具駆動装置４により、前記矢印ｉ方向と反対の矢印ｉｉ方向から基準球１００に対して測定プローブ３４が接近させられてセンサ部３４ｂが基準球１００に接触し、その接触した部位の座標が座標取得部３６によって取得される。そして、これらＸ軸方向において取得された２つの部位の座標の間の中心の座標が、座標算出部３８によって算出される。この算出された座標は、座標記憶部４０に記憶される。
【００５６】
その後、ワーク駆動装置３及び工具駆動装置４により、座標算出部３８によって算出された前記ｉ方向における基準球１００に対するセンサ部３４ｂの接触部位と前記ｉｉ方向における基準球１００に対するセンサ部３４ｂの接触部位との中点の座標を通るとともにＹ軸方向に延びる直線上において、基準球１００の一方側に測定プローブ３４のセンサ部３４ｂが配置され、そのセンサ部３４ｂが図７中の矢印ｉｉｉ方向から基準球１００に接触させられてその接触した部位の座標が座標取得部３６によって取得される。次に、工具駆動装置４により、前記矢印ｉｉｉ方向と反対の矢印ｉｖ方向から基準球１００に対して測定プローブ３４が接触させられてその接触した部位の座標が座標取得部３６によって取得される。そして、これらＹ軸方向において取得された２つの部位の座標の間の中心の座標が、座標算出部３８によって算出される。このようにして、Ｙ軸方向における基準球１００の中心の座標が求められる。この算出された基準球１００のＹ軸方向の中心の座標は、座標記憶部４０に記憶される。
【００５７】
次に、ワーク駆動装置３及び工具駆動装置４により、座標算出部３８によって算出された基準球１００のＹ軸方向の中心の座標を通るとともにＸ軸方向に延びる直線上において、基準球１００の一方側に測定プローブ３４のセンサ部３４ｂが配置され、そのセンサ部３４ｂが矢印ｖ方向から基準球１００に接触させられてその接触した部位の座標が座標取得部３６によって取得される。その後、工具駆動装置４により、前記矢印ｖ方向と反対の矢印ｖｉ方向から基準球１００に対して測定プローブ３４が接近させられてセンサ部３４ｂが基準球１００に接触し、その接触した部位の座標が座標取得部３６によって取得される。そして、これらＸ軸方向において取得された２つの部位の座標の間の中心の座標が、座標算出部３８によって算出される。このようにして、基準球１００のＸ軸方向の中心の座標が求められる。この算出された基準球１００のＸ軸方向の中心の座標は、座標記憶部４０に記憶される。
【００５８】
次に、ワーク駆動装置３及び工具駆動装置４により、上記のようにして求められた基準球１００のＸ軸方向及びＹ軸方向の中心の座標を通るとともにＺ軸方向に延びる直線上において、測定プローブ３４のセンサ部３４ｂが基準球１００の上側に配置され、そのＺ軸方向においてセンサ部３４ｂが基準球１００に上側から接触させられ、その接触した部位の座標が座標取得部３６によって取得される。そして、その座標取得部３６によって取得されたＺ軸方向におけるセンサ部３４ｂの接触部位の座標と記憶部２８に保存された基準球１００の半径のデータとから、座標算出部３８が、基準球１００のＺ軸方向の中心の座標を算出する。この算出された基準球１００のＺ軸方向の中心の座標は、座標記憶部４０に記憶される。
【００５９】
以上のようにして、Ｘ，Ｙ，Ｚ軸方向における基準球１００の中心点（基準点１００ａ）の実際の座標（計測座標）が求められる。なお、座標算出部３８によって求められた基準球１００の中心点の計測座標は、座標記憶部４０に加えて記憶部２８にも記憶される。そして、このような基準点の実際の座標の計測は、全ての基準点１００ａ（基準球１００）についてそれぞれ行われ、計測された全ての基準点１００ａの計測座標のデータが記憶部２８に保存される。
【００６０】
次に、補正マトリクス導出装置２０の演算部２６による補正マトリクスの算出が行われる（ステップＳ４）。
【００６１】
この補正マトリクスの算出は、図８及び図９に示すフローチャートに基づいて行われる。具体的には、まず、演算部２６が初期値計算を行う（図８のステップＳ１１）。
【００６２】
この初期値計算では、演算部２６は、補正マトリクスを算出可能な最小の個数の基準点１００ａの組合せを選択する。本実施形態では、基準点１００ａが全部でｎ個あり、このｎ個の基準点１００ａの中から補正マトリクスを算出可能な最小の個数の基準点１００ａとして例えば３個の基準点１００ａが選択される。そして、演算部２６は、その選択した基準点１００ａ（以下、選択基準点という）の基準座標を対応する計測座標に近づくように変換するためのマトリクスを構成する初期値ｔ０［ｊ］を求める。この初期値ｔ０［ｊ］には、前記選択基準点の基準座標を対応する計測座標に近づくように変換するためのオイラー角及び平行移動ベクトルと、前記ステップＳ２において求められたスケーリング倍率ｍとが含まれる。具体的には、初期値ｔ０［ｊ］には、前記平行移動ベクトルとしての（ｔ０［０］，ｔ０［１］，ｔ０［２］）と、前記オイラー角としての（ｔ０［３］，ｔ０［４］，ｔ０［５］）と、前記スケーリング倍率ｍとしてのｔ０［６］とが含まれる。
【００６３】
そして、初期値ｔ０［ｊ］に含まれるオイラー角及び平行移動ベクトルは、例えば、選択基準点の基準座標によって平面が構成される場合には、その基準座標によって構成される平面が選択基準点の計測座標によって構成される平面に重なるように前記基準座標を変換するために必要なオイラー角及び平行移動ベクトルであって、各選択基準点の基準座標を変換した後の座標のうち少なくとも１つの座標がその選択基準点の計測座標に一致するようなオイラー角及び平行移動ベクトルである。
【００６４】
次に、演算部２６は、各基準点１００ａの基準座標を補正変換するための仮補正マトリクスを算出する第１補正マトリクス算出演算を行う（ステップＳ１３）。この際、演算部２６は、各基準点１００ａの基準座標を当該補正マトリクスによって補正変換した後の座標と対応する計測座標との間の距離の二乗の値を全ての基準点１００ａの分足し合わせた値が極小となるような仮補正マトリクスを最小二乗法によって算出する。
【００６５】
具体的には、まず、基準点１００ａの計測座標をＰｉ＝（Ｘｉ，Ｙｉ，Ｚｉ）、基準点１００ａの基準座標をｐｉ＝（ｘｉ，ｙｉ，ｚｉ）、計測座標Ｐｉと基準座標ｐｉとの間の距離をＬｉ、計測座標Ｐｉと基準座標ｐｉとの間の距離Ｌｉの二乗の値をＦｉとする。ここで、ｉ＝０，１，２，・・・，ｎ−１である。
【００６６】
演算部２６は、前記Ｆｉを全ての基準点１００ａの分足し合わせた値Ｆ＝Σ（Ｆｉ）を最小とする解ｔ［ｊ］を次の非線形連立方程式（１）を満たす解として求める。この解ｔ［ｊ］が仮補正マトリクスを構成する要素となる。
【００６７】
∂Ｆ／∂ｔ［ｊ］＝０・・・（１）
【００６８】
上記非線形連立方程式（１）は、解析的には解けないため、演算部２６は、この方程式（１）を漸近法を使用して解く。この際、最初に用いる解ｔ［ｊ］として、前記初期値計算で求めた初期値ｔ０［ｊ］を用いる。演算部２６は、各基準点の基準座標ｐｉ＝（ｘｉ，ｙｉ，ｚｉ）を初期値ｔ０［ｊ］で構成されるマトリクスによってそれぞれ補正変換する。この補正変換後の座標（ｘ，ｙ，ｚ）は、以下の式（２）〜（４）で求められる。
【００６９】
ｘ＝ｍ×［｛ｃｏｓ（ａ）・ｃｏｓ（ｃ）−ｓｉｎ（ａ）・ｃｏｓ（ｂ）・ｓｉｎ（ｃ）｝×ｘｉ−｛ｃｏｓ（ａ）・ｓｉｎ（ｃ）＋ｓｉｎ（ａ）・ｃｏｓ（ｂ）・ｃｏｓ（ｃ）｝×ｙｉ＋｛ｓｉｎ（ａ）・ｓｉｎ（ｂ）｝×ｚｉ＋ｕ］・・・（２）
ｙ＝ｍ×［｛ｓｉｎ（ａ）・ｃｏｓ（ｃ）＋ｃｏｓ（ａ）・ｃｏｓ（ｂ）・ｓｉｎ（ｃ）｝×ｘｉ＋｛−ｓｉｎ（ａ）・ｓｉｎ（ｃ）＋ｃｏｓ（ａ）・ｃｏｓ（ｂ）・ｃｏｓ（ｃ）｝×ｙｉ＋｛−ｃｏｓ（ａ）・ｓｉｎ（ｂ）｝×ｚｉ＋ｖ］・・・（３）
ｚ＝ｍ×｛ｓｉｎ（ｂ）・ｓｉｎ（ｃ）×ｘｉ＋ｓｉｎ（ｂ）・ｃｏｓ（ｃ）・ｙｉ＋ｃｏｓ（ｂ）×ｚｉ＋ｗ｝・・・（４）
【００７０】
ここで、ｕ＝ｔ０［０］，ｖ＝ｔ０［１］，ｗ＝ｔ０［２］，ａ＝ｔ０［３］，ｂ＝ｔ０［４］，ｃ＝ｔ０［５］，ｍ＝ｔ０［６］である。
【００７１】
そして、演算部２６は、以下の式（５）により、各基準点１００ａについて補正変換後の座標（ｘ，ｙ，ｚ）と対応する計測座標Ｐｉ＝（Ｘｉ，Ｙｉ，Ｚｉ）との間の距離の二乗の値Ｅをそれぞれ算出する。
【００７２】
Ｅ＝（ｘ−Ｘｉ）２＋（ｙ−Ｙｉ）２＋（ｚ−Ｚｉ）２・・・（５）
【００７３】
さらに、演算部２６は、以下の式（６）に示すように、上記式（５）で求めた距離の二乗の値Ｅを全ての基準点１００ａ（ｉ＝０〜ｎ−１までの基準点１００ａ）の分足し合わせた値Ｆを算出する。
【００７４】
Ｆ＝ΣＥ・・・（６）
【００７５】
そして、演算部２６は、以下の式（７）で表されるｄＦ［ｊ］を求める。
【００７６】
ｄＦ［ｊ］＝Σ（∂Ｅ／∂ｔ［ｊ］）＝Σ（ｄＥ［ｊ］）・・・（７）
【００７７】
なお、ｊ＝０，１，２，３，４，５であり、ここでは、ｔ［ｊ］として前記初期値ｔ０［１］〜ｔ０［５］が用いられる。すなわち、演算部２６は、前記Ｅを前記初期値ｔ０［１］〜ｔ０［５］でそれぞれ偏微分した値を全て足し合わせた値ｄＦ［ｊ］を求める。
【００７８】
そして、ｄＥ［ｊ］は、以下の式（８）で表される。
【００７９】
ｄＥ［ｊ］＝２×｛（ｘ−Ｘｉ）・ｄＸ［ｊ］＋（ｙ−Ｙｉ）・ｄＹ［ｊ］＋（ｚ−Ｚｉ）・ｄＺ［ｊ］｝・・・（８）
【００８０】
なお、ｄＸ［ｊ］、ｄＹ［ｊ］、ｄＺ［ｊ］は、各基準点１００ａの補正変換後の座標（ｘ，ｙ，ｚ）の各座標値をそれぞれｔ［ｊ］（ここでは、前記初期値ｔ０［１］〜ｔ０［５］）で偏微分した値である。すなわち、ｄＸ［ｊ］＝∂ｘ／∂ｔ［ｊ］であり、ｄＹ［ｊ］＝∂ｙ／∂ｔ［ｊ］であり、ｄＺ［ｊ］＝∂ｚ／∂ｔ［ｊ］である。
【００８１】
そして、演算部２６は、以下の式（９）で表されるａａ［ｊ］［ｋ］を求める。
【００８２】
ａａ［ｊ］［ｋ］＝Σ（∂（∂Ｅ／∂ｔ［ｊ］）／∂ｔ［ｋ］）＝Σ（ｄＥＥ［ｊ］［ｋ］）・・・（９）
【００８３】
なお、ｋ＝０，１，２，３，４，５であり、ここでは、ｔ［ｋ］として前記初期値ｔ０［１］〜ｔ０［５］が用いられる。すなわち、演算部２６は、上記式（９）により、前記ｄＦ［ｊ］を前記初期値ｔ０［１］〜ｔ０［５］でそれぞれ偏微分した値を全て足し合わせた値ａａ［ｊ］［ｋ］を求める。
【００８４】
ここで、ｄＥＥ［ｊ］［ｋ］は、以下の式（１０）で表される。
【００８５】
ｄＥＥ［ｊ］［ｋ］＝２×Ｇ×｛ｄＸ［ｋ］・ｄＸ［ｊ］＋（ｘ−Ｘｉ）・ｄＸＸ［ｊ］［ｋ］＋ｄＹ［ｋ］×ｄＹ［ｊ］＋（ｙ−Ｙｉ）・ｄＹＹ［ｊ］［ｋ］＋ｄＺ［ｋ］・ｄＺ［ｊ］＋（ｚ−Ｚｉ）・ｄＺＺ［ｊ］［ｋ］｝・・・（１０）
【００８６】
なお、ｄＸＸ［ｊ］［ｋ］は、ｄＸ［ｊ］をｔ［ｋ］で偏微分した値であり、ｄＹＹ［ｊ］［ｋ］は、ｄＹ［ｊ］をｔ［ｋ］で偏微分した値であり、ｄＺＺ［ｊ］［ｋ］は、ｄＺ［ｊ］をｔ［ｋ］で偏微分した値である。なお、ここでは、ｔ［ｋ］として前記初期値ｔ０［１］〜ｔ０［５］が用いられる。
【００８７】
そして、演算部２６は、∂Ｆ／∂ｔ［ｊ］＝０を漸近展開した以下の線形連立方程式（１１）を解いて、漸近解ｔ［ｊ］、すなわち、ｔ［０］〜ｔ［５］を求める。
【００８８】
ａａ［ｊ］［０］×ｔ［０］＋ａａ［ｊ］［１］×ｔ［１］＋・・・＋ａａ［ｊ］［５］×ｔ［５］＝ｓ［ｊ］＋ｄＦ［ｊ］・・・（１１）
【００８９】
なお、ｓ［ｊ］は、偏微分によって生じる定数部分の合計である。
【００９０】
この線形連立方程式（１１）を解く際には、前記式（７）で求めたｄＦ［ｊ］及び前記式（９）で求めたａａ［ｊ］［ｋ］を用いる。
【００９１】
演算部２６は、このような前記式（２）〜（１１）に係る漸近解ｔ［ｊ］を求めるための演算を、得られた漸近解ｔ［ｊ］が収束するか、又は、演算回数が予め設定された特定の設定回数に達するまで行う。演算部２６は、演算を繰り返し行う場合には、１つの回の前記式（２）〜（１１）に係る演算によって得られた漸近解ｔ［ｊ］を次回の演算で初期値として用いて同様の演算を繰り返し行う。
【００９２】
そして、演算部２６は、前記漸近解ｔ［ｊ］が収束したか否かについての判断を行う（ステップＳ１５）。この際、演算部２６は、ｄＦ［０］＋ｄＦ［１］＋・・・＋ｄＦ［５］の値が設定値を下回ることを前記漸近解ｔ［ｊ］の収束条件とする。具体的には、演算部２６は、ｄＦ［０］＋ｄＦ［１］＋・・・＋ｄＦ［５］の値が設定値を下回った場合には、前記漸近解ｔ［ｊ］が収束したと判断し、ｄＦ［０］＋ｄＦ［１］＋・・・＋ｄＦ［５］の値が設定値以上である場合には、前記漸近解ｔ［ｊ］が収束していないと判断する。
【００９３】
そして、演算部２６は、前記漸近解ｔ［ｊ］が収束していないと判断した場合には、初期値計算において選択すべき選択基準点の組み合わせが他にないか否かを判断する（ステップＳ１７）。ここで、演算部２６は、初期値計算において選択すべき選択基準点の組み合わせが他にはないと判断した場合には、エラー表示を図略のディスプレイに出力する。一方、演算部２６は、初期値計算において選択すべき選択基準点の組合せが他にもあると判断した場合には、新たな選択基準点を選択して前記ステップＳ１１以降の処理を再度行う。
【００９４】
また、前記ステップＳ１５の判断において、演算部２６は、前記漸近解ｔ［ｊ］が収束したと判断した場合には、その収束した漸近解ｔ［ｊ］によって構成されるマトリクスを仮補正マトリクスとして記憶部２８に保存させる（ステップＳ１９）。
【００９５】
そして、演算部２６は、その仮補正マトリクスを用いて各基準点１００ａの基準座標の補正変換（第１補正変換）を行う（ステップＳ２１）。
【００９６】
その後、演算部２６は、前記ステップＳ２１で仮補正マトリクスにより補正変換した後の各基準点１００ａの座標と対応する計測座標との間の距離である補正後離間距離の算出と、その各基準点１００ａの補正後離間距離の平均値である補正後離間距離平均値の算出とを行う（ステップＳ２２）。
【００９７】
次に、演算部２６は、重み係数付与計算の回数Ｎ１，Ｎ２の初期設定と、重み係数Ｇの初期設定（第１重み係数設定）とを行う（ステップＳ２３）。ここで、重み係数Ｇは、後述する第２補正マトリクス算出演算において各基準点１００ａの補正変換した後の座標と対応する計測座標との間の距離の二乗の値をどの程度の重みをもって反映させるかを表す値であり、全ての基準点１００ａに対して個別に重み係数Ｇがそれぞれ用意される。そして、ここでは、演算部２６は、各基準点１００ａについての重み係数Ｇを等しい値（１．０）に初期設定する。なお、この重み係数Ｇの初期設定値は、１よりも大きい任意の値に設定変更することも可能である。また、後述の第２補正マトリクス算出演算を繰り返し行う場合には、その演算毎に対応して選出される最大離間基準点の重み係数Ｇが再設定されるが、前記重み係数付与計算の回数Ｎ１，Ｎ２は、その重み係数Ｇの設定回数に相当する。ここでは、演算部２６は、重み係数付与計算回数Ｎ１，Ｎ２を共に１に初期設定する。なお、Ｎ１は、重み係数Ｇの全ての設定回数に相当し、Ｎ２は、後述の第２補正マトリクス算出演算において漸近解ｔ［ｊ］が収束しない場合に重み係数Ｇを再設定する際の重み係数Ｇの設定回数に相当する。
【００９８】
次に、演算部２６は、各基準点１００ａのうち前記ステップＳ２１で基準座標を仮補正マトリクスにより補正変換した後の座標と対応する計測座標との間の距離が最も大きい基準点である第１最大離間基準点の選出（第１選出）を行う（ステップＳ２５）。
【００９９】
次に、演算部２６は、選出した第１最大離間基準点の重み係数Ｇを予め設定された所定の増加分ｇ１だけ増加した値に再設定（第１重み係数再設定）する（ステップＳ２６）。なお、重み係数Ｇの増加分ｇ１は、予め任意の値に設定可能であり、記憶部２８に保存されている。
【０１００】
次に、演算部２６は、各基準点１００ａの基準座標を補正変換するための補正マトリクスを算出する第２補正マトリクス算出演算を行う（図９のステップＳ２７）。この際、演算部２６は、各基準点１００ａの基準座標を当該補正マトリクスによって補正変換した後の座標と対応する計測座標との間の距離の二乗の値にその各基準点１００ａについてそれぞれ設定されている重み係数Ｇを掛けた値を全ての基準点１００ａの分足し合わせた値が極小となるような補正マトリクスを最小二乗法によって算出する。
【０１０１】
具体的には、演算部２６は、第２補正マトリクス算出演算において基本的に前記第１補正マトリクス算出演算と同様の演算を行う。ただし、この１回目の第２補正マトリクス算出演算では、非線形連立方程式∂Ｆ／∂ｔ［ｊ］＝０を漸近法を使用して解く際に最初に用いる解として、前記初期値ｔ０［ｊ］の代わりに前記仮補正マトリクスを構成する前記漸近解ｔ［ｊ］を用いる。
【０１０２】
そして、演算部２６は、この第２補正マトリクス算出演算では、上記式（５）の代わりに次式（１３）を用いて各基準点１００ａについてのＥの値を算出する。
【０１０３】
Ｅ＝Ｇ×｛（ｘ−Ｘｉ）２＋（ｙ−Ｙｉ）２＋（ｚ−Ｚｉ）２｝・・・（１３）
【０１０４】
ここで、第１最大離間基準点については、前記ステップＳ２６において重み係数Ｇが増加されているので、他の基準点に比べて第１最大離間基準点についてのＥの値が大きくなる。演算部２６は、この第２補正マトリクス算出演算において上記以外は第１補正マトリクス算出演算と同様にして補正マトリクスを構成する漸近解ｔ［ｊ］を求める。従って、当該第２補正マトリクス算出演算では、第１最大離間基準点の補正後離間距離の二乗の値が他の基準点の補正後離間距離の二乗の値に比べて大きく反映された補正マトリクスが求められる。
【０１０５】
次に、演算部２６は、前記第２補正マトリクス算出演算で求めた漸近解ｔ［ｊ］が収束したか否かを判断する（ステップＳ２９）。この際、演算部２６は、前記ステップＳ１５と同様にして収束判断を行う。
【０１０６】
そして、演算部２６は、第２補正マトリクス算出演算で求めた漸近解ｔ［ｊ］が収束していないと判断した場合には、その後、重み係数付与計算回数Ｎ２が予め設定された最大値を超えるか否かを判断する（ステップＳ３１）。なお、この重み係数付与計算回数Ｎ２の最大値は、予め任意の回数に設定可能であり、記憶部２８に保存される。
【０１０７】
そして、演算部２６は、重み係数付与計算回数Ｎ２が予め設定された最大値を超えたと判断した場合には、その時点で記憶部２８に保存されていた補正マトリクスのデータを最終の算出結果とする（ステップＳ３３）。一方、演算部２６は、重み係数付与計算回数Ｎ２が予め設定された最大値を超えていないと判断した場合には、その後、重み係数付与計算回数Ｎ１，Ｎ２のインクリメントと前記第１最大離間基準点の重み係数Ｇの再設定（ステップＳ３５）を行った後、次回の第２補正マトリクス算出演算（ステップＳ２７）とその第２補正マトリクス算出演算で算出される漸近解ｔ［ｊ］の収束判断（ステップＳ２９）を再度行う。
【０１０８】
なお、前記ステップＳ３５における重み係数付与計算回数Ｎ１，Ｎ２のインクリメントでは、演算部２６は、重み係数付与計算回数Ｎ１及びＮ２をそれぞれ１だけ増加させる。また、前記ステップＳ３５では、演算部２６は、第１最大離間基準点の重み係数Ｇを増加分ｇ１だけ増加させる。そして、次回の第２補正マトリクス算出演算では、演算部２６は、第１最大離間基準点について前記ステップＳ３５で再設定した重み係数Ｇを付与して漸近解ｔ［ｊ］（補正マトリクス）の算出を行う。
【０１０９】
そして、演算部２６は、第２補正マトリクス算出演算で求めた漸近解ｔ［ｊ］が収束したと前記ステップＳ２９において判断した場合には、その漸近解ｔ［ｊ］で構成される補正マトリクスを用いて各基準点１００ａの基準座標の補正変換（第２補正変換）を行う（ステップＳ３７）。
【０１１０】
その後、演算部２６は、前記ステップＳ３７で補正マトリクスにより補正変換した後の各基準点１００ａの座標と対応する計測座標との間の距離である補正後離間距離の算出と、その各基準点１００ａの補正後離間距離の平均値である補正後離間距離平均値の算出とを行う（ステップＳ３８）。
【０１１１】
次に、演算部２６は、各基準点１００ａのうち前記ステップＳ３７で基準座標を補正マトリクスにより補正変換した後の座標と対応する計測座標との間の距離（補正後離間距離）が最も大きい基準点である第２最大離間基準点の選出（第２選出）を行う（ステップＳ３９）。
【０１１２】
その後、演算部２６は、重み係数付与計算回数Ｎ１が予め設定された最大値を超えるか否かを判断する（ステップＳ４０）。なお、この重み係数付与計算回数Ｎ１の最大値は、予め任意の回数に設定可能であり、記憶部２８に保存される。
【０１１３】
そして、演算部２６は、重み係数付与計算の回数Ｎ１が予め設定された最大値を超えたと判断した場合には、次に、今回の第２補正変換後に前記ステップＳ３９で選出した第２最大離間基準点についての補正後離間距離が前回の補正変換後に選出した最大離間基準点についての補正後離間距離よりも小さいという条件が満たされたか否かを判断する（ステップＳ４１）。なお、１回目の第２補正マトリクス算出演算後における当該ステップＳ４１の判断では、前回の補正変換後に選出した最大離間基準点についての補正後離間距離として、前記第１最大離間基準点の基準座標を仮補正マトリクスで補正変換した座標と対応する計測座標との間の補正後離間距離を用いる。
【０１１４】
そして、演算部２６は、前記条件が満たされたと判断した場合には、前記ステップＳ２７で算出した漸近解ｔ［ｊ］によって構成されるマトリクスを補正マトリクスとして記憶部２８に保存させる（ステップＳ４２）。この際、先に記憶部２８に保存されていた補正マトリクス（仮補正マトリクス）のデータがある場合には、そのマトリクスのデータは、新しく保存する補正マトリクスのデータに更新される。その後、演算部２６は、記憶部２８に保存された補正マトリクスのデータを最終の算出結果とする（ステップＳ３３）。
【０１１５】
一方、演算部２６は、前記ステップＳ４１において前記条件が満たされていないと判断した場合には、前記ステップＳ３３の処理を行う。すなわち、その時点で記憶部２８に保存されていた補正マトリクスのデータを最終の算出結果とする。
【０１１６】
また、演算部２６は、前記ステップＳ４０において重み係数付与計算回数Ｎ１が予め設定された最大値を超えないと判断した場合には、次に、以下の第１条件と第２条件の両方が満たされているか、又は、以下の第３条件と第４条件の両方が満たされているかについて判断する（ステップＳ４５）。
【０１１７】
第１条件は、今回の第２補正マトリクス算出演算に伴って算出した第２最大離間基準点についての補正後離間距離がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも大きいという条件である。また、第２条件は、今回の第２補正マトリクス算出演算に伴って算出した補正後離間距離平均値（前記ステップＳ４３で算出した補正後離間距離平均値）がその１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値よりも大きいという条件である。また、第３条件は、今回の第２補正マトリクス算出演算に伴って算出した第２最大離間基準点についての補正後離間距離がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも小さいという条件である。また、第４条件は、今回の第２補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離から今回の第２補正マトリクス算出演算に伴って算出した補正後離間距離平均値を減じた値がその１つ前の回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離から当該１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値を減じた値よりも大きいという条件である。
【０１１８】
なお、１回目の第２補正マトリクス算出演算に伴う当該ステップＳ４５の判断では、１つ前の回の補正変換後に選出した最大離間基準点として、前記ステップＳ２５で選出した第１最大離間基準点を用い、１つ前の回の補正マトリクス算出演算に伴って算出した補正後離間距離及び補正後離間距離平均値として、第１補正マトリクス算出演算に伴って前記ステップＳ２２で算出した補正後離間距離及び補正後離間距離平均値を用いる。
【０１１９】
このステップＳ４５の判断において、演算部２６は、前記第１条件と前記第２条件の両方が満たされたか、又は、前記第３条件と前記第４条件の両方が満たされたと判断した場合には、前記ステップＳ３３の処理を行い、それ以外の場合には、前記ステップＳ４２の処理と同様に前記ステップＳ２７で算出した漸近解ｔ［ｊ］によって構成されるマトリクスを補正マトリクスとして記憶部２８に保存させる（ステップＳ４７）とともに、重み係数付与計算回数Ｎ１のインクリメント及び第２最大離間基準点の重み係数Ｇの再設定（第２重み係数再設定）を行った（ステップＳ４９）後、次回の第２補正マトリクス算出演算を行う。すなわち、この場合には、演算部２６は、ステップＳ２７，Ｓ２９，Ｓ３７，Ｓ３８，Ｓ３９，Ｓ４０，Ｓ４５，Ｓ４９からなるサイクルを繰り返し行う。
【０１２０】
なお、前記ステップＳ４９における重み係数付与計算回数Ｎ１のインクリメントでは、演算部２６は、重み係数付与計算回数Ｎ１を１だけ増加させる。また、前記ステップＳ４９では、演算部２６は、前記ステップＳ３９で選出した第２最大離間基準点の重み係数Ｇのみを増加分ｇ１だけ増加させ、他の基準点１００ａの重み係数Ｇは増加させない。
【０１２１】
そして、演算部２６は、次回の第２補正マトリクス算出演算において、前記ステップＳ２７で説明した第２補正マトリクス算出演算を第１最大離間基準点の代わりに前記ステップＳ３９で選出した第２最大離間基準点を用いて再度実行し、その際、前記ステップＳ３９で選出した第２最大離間基準点については前記ステップＳ４９で再設定した重み係数Ｇを用いて前記Ｅの値を算出し、その他の基準点１００ａについては各々の重み係数Ｇを用いて前記Ｅの値を算出する。
【０１２２】
また、演算部２６は、次回のサイクルの第２補正マトリクス算出演算において、非線形連立方程式∂Ｆ／∂ｔ［ｊ］＝０を漸近法を使用して解く際に最初に用いる解として、その１つ前のサイクルの第２補正マトリクス算出演算で算出した補正マトリクスを構成する漸近解ｔ［ｊ］を用いる。
【０１２３】
また、演算部２６は、次回のサイクルのステップＳ４１の判断では、前回の補正後離間距離として１つ前のサイクルのステップＳ３９で選出した第２最大離間基準点についての補正後離間距離を用いる。
【０１２４】
そして、演算部２６が以上のようにして補正マトリクスを算出した後、加工指令補正変換部２２がその算出された補正マトリクスを用いて加工指令（ＮＣプログラム）の補正変換を行う（ステップＳ５）。
【０１２５】
その後、制御装置７が、加工指令補正変換部２２によって補正変換された加工指令に従ってワーク駆動装置３にワークＷの移動を実行させるとともに工具駆動装置４に工具５の移動を実行させてワークＷを加工させる。
【０１２６】
以上説明したように、本実施形態では、演算部２６が、最大離間基準点の重み係数Ｇを所定の増加分ｇ１だけ増加した値に再設定した後、各基準点１００ａの基準座標の補正変換後の座標と対応する計測座標との間の距離の二乗の値にその各基準点１００ａについて設定されている重み係数Ｇを掛けた値を全ての基準点１００ａの分足し合わせた値が極小となるように各基準点１００ａの基準座標を補正変換可能な補正マトリクスを最小二乗法によって算出するため、単に各基準点の基準座標と計測座標との間の距離の二乗和が極小となるように各基準点の基準座標を補正変換可能な補正マトリクスを求める場合に比べて、各基準点１００ａのうち最大離間基準点の基準座標に対する実際の座標の誤差を大きく加味した補正マトリクスを算出することができる。従って、この算出した補正マトリクスによってワークＷの加工指令を補正変換することにより、計測座標が基準座標から最大に変位した基準点、すなわち、計測座標が基準座標から著しく変位した基準点の誤差を最小化しつつ、全ての基準点の誤差を全体的に小さくする補正を行うことができる。
【０１２７】
また、本実施形態では、演算部２６が、今回の第２補正マトリクス算出演算に伴って算出した第２最大離間基準点についての補正後離間距離が前回の補正マトリクス算出演算に伴って算出した最大離間基準点についての補正後離間距離よりも大きくなり、かつ、今回の第２補正マトリクス算出演算に伴って算出した補正後離間距離平均値が前回の補正マトリクス算出演算に伴って算出した補正後離間距離平均値よりも大きくなるまで、第２最大離間基準点の選出と、その選出した第２最大離間基準点の補正後離間距離の二乗の値に所定の増加分ｇ１だけ増加させた重み係数Ｇを掛けて行う第２補正マトリクス算出演算とを行うため、計測座標が基準座標から著しく変位した基準点の誤差を良好に小さくしつつ、全ての基準点の誤差を全体的に良好に小さくする補正を行うことが可能な補正マトリクスを算出することができる。
【０１２８】
また、本実施形態では、前回の補正マトリクス算出演算に伴って算出された最大離間基準点についての補正後離間距離に比べて今回の第２補正マトリクス算出演算に伴って算出された第２最大離間基準点についての補正後離間距離が減少している場合でも、最大離間基準点についての補正後離間距離に対する補正後離間距離平均値の差が前回の補正マトリクス算出演算の場合に比べて今回の第２補正マトリクス算出演算の場合の方が増加すれば、それ以降の回の第２補正マトリクス算出演算は行われず、前回の補正マトリクス算出演算で算出した補正マトリクスが最終の算出結果となる。すなわち、本実施形態では、計測座標が基準座標から著しく変位した基準点（最大離間基準点）の基準座標に対する誤差を小さくしつつ、そのような最大離間基準点の誤差が全基準点の誤差の平均値に近づくような補正を行うことが可能な補正マトリクスを算出することができる。
【０１２９】
また、本実施形態では、温度によるワークＷの膨張収縮率を表すスケーリング倍率ｍの要素を加えた最小二乗法による演算で仮補正マトリクス及び補正マトリクスが算出されるため、ワークＷの温度による膨張収縮に起因する誤差を加味した補正マトリクスを得ることができる。このため、その補正マトリクスによってワークＷの加工指令を補正変換することにより、ワークＷの温度による膨張収縮に起因する誤差を補正することができる。
【０１３０】
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれる。
【０１３１】
例えば、本発明による補正マトリクス導出装置及び誤差補正装置は、上記実施形態で示したような工作機械以外の工作機械に適用してもよい。
【０１３２】
また、演算部２６、記憶部２８及び加工指令補正変換部２２は、工作機械に組み込まれていなくてもよい。例えば、これら演算部２６、記憶部２８及び加工指令補正変換部２２は、パーソナルコンピュータ等の外部端末に組み込まれていて、その外部端末で演算処理して補正変換した加工指令のデータを工作機械の制御装置７に出力するようにしてもよい。
【０１３３】
また、前記ステップＳ４５の判断において、第１条件と第２条件の両方を満たすか否かの判断のみを行い、第１条件と第２条件の両方を満たす場合には、ステップＳ３３の処理を行い、それ以外の場合には、ステップＳ４７及びＳ４９を経て次回の第２補正マトリクス算出演算を行うようにしてもよい。
【０１３４】
また、スケーリング倍率の導出方法は、上記実施形態で示した方法に限定されない。例えば、工作機械にワークＷの温度を検出する検出装置を設置しておくとともに、予め測定した温度とワークＷのスケーリング倍率との相関関係を記憶部２８に登録しておいて、前記検出装置によって検出されたワークＷの温度と前記相関関係とに基づいてその温度のときのワークＷのスケーリング倍率を演算部２６が求めるようにしてもよい。
【符号の説明】
【０１３５】
４  工具駆動装置
５  工具
７  制御装置
２０  補正マトリクス導出装置
２２  加工指令補正変換部
２４  計測装置
２６  演算部
Ｗ  ワーク
【図１】
2012035399.tif 000003
【図２】
2012035399.tif 000004
【図３】
2012035399.tif 000005
【図４】
2012035399.tif 000006
【図５】
2012035399.tif 000007
【図６】
2012035399.tif 000008
【図７】
2012035399.tif 000009
【図８】
2012035399.tif 000010
【図９】
2012035399.tif 000011