以下に、図面を参照して本発明の実施形態について説明する。
まず、本発明の実施形態を説明する前に、図2及び図3を参照して、特許請求の範囲における、あらかじめ設定した基準位置、光線の遮光位置、工作機械の座標位置、工具の長さ方向または径方向の刃先位置、工具長について定義しておく。
あらかじめ設定した基準位置とは、工具Tにより光学式の非接触センサ13の光線13aを遮光したときに変位量ΔZを求める基準となる光学式の非接触センサ13の基準位置を指し、投光部13bから受光部13cに向けて照射される光線13aの検出範囲内にあらかじめ任意に設定される(図2及び図3のOs)。
光線の遮光位置とは、工具Tを光学式の非接触センサ13の検出範囲内に移動させ、工具Tにより光学式の非接触センサ13の光線13aを遮光したときに生じる変位量ΔZだけ上方または下方の位置を指す。
工作機械の座標位置とは、工具Tにより光学式の非接触センサ13の光線13aを遮光したときに変位量ΔZが生じたときのNC工作機械1のX、Y、Zの各送り軸の機械座標系の位置を指す(図2におけるMz)。
工具の長さ方向の刃先位置とは、主軸3に工具Tを装着したときゲージラインと呼ばれる主軸3の基準位置から最も離れた工具Tの刃先位置を指す(図2におけるTs1)。また、工具の径方向の刃先位置とは、主軸3に工具Tを装着したとき主軸3の回転軸線から最も離れた工具Tの刃先位置を指す(図3におけるTs2)。
工具長とは、ゲージラインと呼ばれる主軸3の基準位置と工具Tの長さ方向の刃先位置との距離を指す(図2におけるL)。
図2に示すように、NC工作機械1のX,Y,Zの各送り軸が機械座標系の基準位置にあるとき、主軸3の基準位置をOmとする。あらかじめ設定した光学式の非接触センサ13の基準位置をOsとする。主軸3に既知長のマスタ工具を装着して、マスタ工具の先端部をあらかじめ設定した光学式の非接触センサ13の基準位置Osに移動すると、マスタ工具は既知長であるから、NC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omに対する光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Z軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hが求められる。
そして、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内に移動させ、工具Tにより光学式の非接触センサ13の基準位置OsからΔZだけ上方で光線13aを遮光したとすると、工具Tの長さ方向の刃先位置Ts1は、Ts1=H−ΔZで求められる。また、工具Tにより光線13aを遮光したときのNC工作機械1の機械座標系のZ軸位置をMzとすると、工具長Lは、L=H−Mz−ΔZで求められる。
主軸3に装着した工具Tの径方向の刃先位置を求める場合は、図3に示すように、光線13aの変位量検出方向と工具Tの軸線とが垂直になるよう光学式の非接触センサ13を配置する。
図3に示すように、NC工作機械1のX,Y,Zの各送り軸が機械座標系の基準位置にあるとき、主軸3の基準位置をOmとする。あらかじめ設定した光学式の非接触センサ13の基準位置をOsとする。上述のようにして、NC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omに対する光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Z軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hを求める。
そして、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内に移動させ、工具Tにより光学式の非接触センサ13の基準位置OsからΔZだけ光線13aを遮光したとすると、工具Tの径方向の刃先位置Ts2は、Ts2=H−ΔZで求められる。
図1を参照して、本発明による工具測定機能を備えたNC工作機械1の要部構成を説明する。
NC工作機械1は、主軸3を回転支持する主軸頭5と、ワーク(図示せず)を載置するテーブル7とを備え、NC装置9からの移動指令に基づいて、X軸送りモータMx、Y軸送りモータMy、Z軸送りモータMzにより、主軸3とテーブル7とをX、Y、Zの直交3軸方向に相対移動可能に構成されている。主軸3には工具Tが装着され、工具Tを回転させながら主軸3とテーブル7とを相対移動させることにより工具TとワークとをX、Y、Z軸方向に相対移動させて、ワークを所望形状に加工する。X、Y軸は主軸3の回転軸線と垂直な平面内の直交する2つの方向を指し、Z軸は主軸3の回転軸線と平行な軸方向を指す。X、Y、Zの送り軸の構成はこれに限定されるものではない。
NC装置9は、加工プログラムや測定プログラム等の各種プログラムが入力、格納され、各種プログラムを解析し、解析したプログラムに従って逐次移動指令を生成し、生成した移動指令に従ってX軸送りモータMx、Y軸送りモータMy、Z軸送りモータMzを駆動する。測定プログラムは、NC工作機械1の主軸3に装着した工具Tの正確な刃先位置及び工具長を求めるのに際して、主軸3とテーブル7とを相対移動させ、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内に移動させるよう生成される。
また、NC工作機械1は、任意の瞬間のX、Y、Zの各送り軸の座標位置を読み取る位置読取手段11が設けられている。図1の実施形態では、位置読取手段11として、デジタルスケールを使用しているが、X軸送りモータMx、Y軸送りモータMy、Z軸送りモータMzにそれぞれ取り付けられたエンコーダ等の手段(図示せず)を使用することも可能である。図1には、Z軸の位置読取手段11のみが示されている。
さらに、NC工作機械1は、テーブル7上の加工の妨げとならない位置に、光学式の非接触センサ13が設けられており、工具Tの長さ方向または径方向の刃先位置や工具長を求める必要性が生じたときに、主軸3とテーブル7とを相対移動させて、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内に移動させる。
図1に示されている光学式の非接触センサ13は、光線13aの変位量検出方向と工具Tの回転軸線とが平行になるよう主軸3に対して相対移動可能なテーブル7に設けられている。工具Tの径方向の刃先位置を求める場合は、光線13aの変位量検出方向と工具Tの軸線とが垂直になるよう主軸3に対して相対移動可能なテーブル7に設けられる。
光学式の非接触センサ13は、光線13aを発する投光部13bと、主軸3の回転軸線方向に互いに直列に配置された複数の受光素子を有し、投光部13bと対向配置されている受光部13cとを備え、投光部13bと受光部13cとの間には、主軸3の回転軸線に水平方向に帯状に広がる検出範囲が形成されている。工具Tの長さ方向または径方向の刃先位置や工具長を求める際には、投光部13bと受光部13cとが工具Tの回転軸線に対して互いに反対側に配置され、検出範囲が工具Tの回転軸線を含む平面に沿って投光部13bと受光部13cとの間に形成されるように、工具Tが配置される。そして、光線13aが工具Tによって遮光された検出範囲を受光部13cで特定することにより、あらかじめ設定した基準位置に対する光線13aの遮光位置を検出する。
光学式の非接触センサ13の検出範囲に直線状に配置された複数の受光素子のそれぞれについて、投光部13bから発せられる光線13aを受光しているか否かに関する受光情報を収集し、各受光素子の受光情報をその位置と対応させることにより、あらかじめ設定した基準位置に対する光線13aの遮光位置を検出できる。
光学式の非接触センサ13の投光部13bは、帯状の検出範囲を有していれば任意の構造をとることができる。例えば投光部13bの1つの光源から帯状の光線13aを発することにより帯状の検出範囲を形成してもよく、投光部13bにおいて工具Tの回転軸線方向に併設された複数の光源からそれぞれ糸状の一条光線を発することにより帯状の検出範囲を形成してもよい。
光学式の非接触センサ13は、工具Tの回転軸線を含む平面に沿って広がる帯状の検出範囲を有しているので、あらかじめ定められた位置に配置された主軸3に装着した工具Tの長さが変化しても、工具Tの先端部を検出できる。従って主軸3をあらかじめ定められた位置に配置したときに、工具Tの形状の差や欠損等による工具Tの長さの変化を検出範囲における工具Tの刃先位置の変化として認識することが可能である。
図1に示すように、帯状の検出範囲を有し、光線13aの遮光位置をあらかじめ設定した基準位置からの変位量として検出できる光学式の非接触センサ13でなく、別の構造の光学式の非接触センサを採用してもよい。例えば光線13aの遮光状態をあらかじめ設定した基準位置からの2次元の複数の遮光位置データとして検出できる光学式の非接触センサ、すなわちマトリックス状に光線13aを投光部13bから受光部13cに向けて照射する光学式の非接触センサであってもよい。
NC工作機械1は、主軸3に装着した工具Tの長さ方向の刃先位置Ts1または径方向の刃先位置Ts2や工具長Lを演算する手段を具備している。上記手段は、遮光位置検出手段15、工具最突出位置演算手段17、工具刃先位置演算手段19、基準位置記憶手段21、機械座標位置検出手段23、工具長演算手段25、工具補正量演算手段27、工具補正手段29、遮光位置記憶手段31、機械座標位置記憶手段33、工具輪郭形状認識手段35、工具輪郭形状記憶手段37、工具異常検出手段39、工具判定手段41で成る。
基準位置記憶手段21は、光学式の非接触センサ13の投光部13bから照射される光線13aの検出範囲内の上方または下方にあらかじめ任意に設定した光学式の非接触センサ13の基準位置Osを記憶する。このとき、NC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hを求め、基準位置入力手段(図示せず)により基準位置記憶手段21に入力すればよい。
遮光位置検出手段15は、主軸3とテーブル7とを相対移動させ、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内に移動させ、工具Tにより非接触センサ13の光線13aを遮光したときに、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Osに対する光線13aの遮光位置ΔZを検出する。
工具刃先位置演算手段19は、遮光位置検出手段15で検出した光線13aの遮光位置ΔZと基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから主軸3に装着した工具Tの長さ方向の刃先位置Ts1(図2参照)または径方向の刃先位置Ts2(図3参照)を求める。
機械座標位置検出手段23は、遮光位置検出手段15で工具Tにより光学式の非接触センサ13の光線13aの遮光位置を検出したときに、NC工作機械1の座標位置Mzを検出する。
NC工作機械1の座標位置Mzは、NC工作機械1のX、Y、Zの各送り軸の機械座標系の位置を指し、X、Y、Z軸にそれぞれ設けられた位置読取手段11で、任意の瞬間のX、Y、Zの各送り軸の現在位置を読み取ることにより検出すればよい。また、NC装置9からX軸送りモータMx、Y軸送りモータMy、Z軸送りモータMzにそれぞれ指令されるNC指令値を読み取り検出するようにしてもよい。また、NC指令値にX、Y、Zの各送り軸の位置偏差を加味した位置を検出するようにしてもよい。
光線13aの遮光位置をあらかじめ設定した基準位置からの変位量として検出する光学式の非接触センサ13を使用する場合は、工具最突出位置演算手段17は、遮光位置検出手段15で検出した光線13aの遮光位置ΔZの最大値ΔZmaxまたは最小値ΔZminに基づいて工具Tの最突出位置ΔZmaxまたはΔZminを求める(図5及び図6参照)。
工具刃先位置演算手段19は、工具最突出位置演算手段17で求めた工具Tの最突出位置ΔZmaxまたはΔZminと基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Z軸の各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから主軸3に装着した工具Tの長さ方向の刃先位置Ts1(図2参照)または径方向の刃先位置Ts2(図3参照)を求める。
工具長演算手段25は、工具最突出位置演算手段17で求めた工具Tの最突出位置ΔZmaxまたはΔZmin、機械座標位置検出手段23で検出したNC工作機械1の座標位置Mz、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Z軸の各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから主軸3に装着した工具Tの工具長Lを求める(図2参照)。
光線13aの遮光状態をあらかじめ設定した基準位置からの2次元の複数の遮光位置データとして検出する光学式の非接触センサを使用する場合は、工具最突出位置演算手段17は、遮光位置検出手段15で検出した2次元の遮光位置データの基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Osに対する工具Tの軸線方向の光線13aの遮光位置ΔZの最大値ΔZmaxまたは最小値ΔZminに基づいて工具Tの最突出位置ΔZmaxまたはΔZminを求める。
工具刃先位置演算手段19は、工具最突出位置演算手段17で求めた工具Tの最突出位置ΔZmaxまたはΔZminと基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから主軸3に装着した工具Tの長さ方向の刃先位置Ts1(図2参照)または径方向の刃先位置Ts2(図3参照)を求める。
工具長演算手段25は、工具最突出位置演算手段17で求めた工具Tの最突出位置ΔZmaxまたはΔZmin、機械座標位置検出手段33で検出したNC工作機械1の座標位置Mz、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから主軸3に装着した工具Tの工具長L(図2参照)を求める。
工具補正量演算手段27は、工具Tの先端部の輪郭形状に応じてあらかじめ定めた補正テーブルから補正量を求めるまたは演算により補正量を求める、すなわち主軸3に装着した工具Tの長さ方向の刃先位置Ts1の工具Tの先端部の輪郭形状に応じた補正量を求める。
工具補正手段29は、工具刃先位置演算手段19で求めた主軸3に装着した工具Tの長さ方向の刃先位置Ts1を、工具補正量演算手段27で求めた補正量により補正するようNC装置19に指令する。このとき、補正後の工具長LをNC装置9の工具オフセットメモリに記憶するのが望ましい。
遮光位置記憶手段31は、遮光位置検出手段15で検出した基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hに対する光線13aの遮光位置ΔZを記憶する。
機械座標位置記憶手段33は、遮光位置検出手段15で工具Tにより光学式の非接触センサ13の光線13aの遮光位置を検出したときに、機械座標位置検出手段23で検出したNC工作機械1の座標位置Mzを記憶する。
光線13aの遮光位置をあらかじめ設定した基準位置からの変位量として検出する光学式の非接触センサ13を使用する場合は、工具輪郭形状認識手段35は、遮光位置記憶手段31で記憶した光線13aの遮光位置ΔZ及び機械座標位置記憶手段33で記憶したNC工作機械1の座標位置Mzに基づいて工具Tの先端部の輪郭形状を認識する。このとき、主軸3に装着した工具Tの刃先位置近傍の光学式の非接触センサ13の光線幅の範囲内のデータに基づいて工具Tの先端部の輪郭形状を認識するようにしてもよい。
光線13aの遮光状態をあらかじめ設定した基準位置からの2次元の複数の遮光位置データとして検出する光学式の非接触センサを使用する場合は、工具輪郭形状認識手段35は、遮光位置検出手段15で検出してあらかじめ設定した基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hからの2次元の遮光位置データに基づいて工具Tの先端部の輪郭形状を認識する。このとき、主軸3に装着した工具Tの刃先位置近傍の光学式の非接触センサ13の光線幅の範囲のデータに基づいて工具Tの先端部の輪郭形状を認識するようにしてもよい。
工具輪郭形状認識手段35は、工具輪郭形状記憶手段37で記憶した工具Tの先端部の輪郭形状データにより当該工具Tの先端部の輪郭形状を認識することもできる。あらかじめ与えられた工具Tの先端部の輪郭形状データを入力する工具輪郭形状入力手段(図示せず)を設け、入力した工具Tの先端部の輪郭形状データを工具輪郭形状記憶手段37に記憶するようにしてもよい。
工具異常検出手段39は、工具輪郭形状認識手段35で認識した工具Tの先端部の輪郭形状と工具輪郭形状記憶手段37にあらかじめ記憶した工具Tの先端部の輪郭形状データとを比較することにより、主軸3に装着した工具Tの破損、欠損、異物付着等の異常を検出する。
工具判定手段41は、工具輪郭形状認識手段35で認識した工具Tの先端部の輪郭形状と工具輪郭形状記憶手段37にあらかじめ記憶した工具Tの先端部の輪郭形状データとを比較することにより、主軸3に装着した工具Tが加工に使用するべき工具Tが否かを判定する。
光学式の非接触センサ13の光線13aの回折による誤差を考慮して、主軸3に装着した工具Tの正確な長さ方向の刃先位置を求める場合は、工具刃先位置演算手段19は、光学式の非接触センサ13の光軸上の少なくとも2つの位置で主軸3に装着した工具Tの刃先位置を求める。工具補正量演算手段27は、各測定位置間の距離及び工具刃先位置演算手段19で求めた各位置における主軸3に装着した工具Tの刃先位置の差に基づいて、光線13aの回折による補正量を求める。工具補正手段29は、工具刃先位置演算手段19で求めた主軸3に装着した工具Tの刃先位置を工具補正量演算手段27で求めた補正量により補正する。
図4を参照して、本発明の第1の実施形態の工具測定方法を説明する。
まず、NC工作機械1の主軸3に装着した工具Tの長さ方向の刃先位置Ts1を求める場合について説明する。
測定プログラムに従ってX軸送りモータMx及びY軸送りモータMyを駆動して、主軸3とテーブル7とを相対移動させ、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲の上方に移動させ、測定開始位置に位置決めする(ステップS1)。
主軸3に装着した工具Tを下方へ移動させ光学式の非接触センサ13の検出範囲内に移動させる(ステップS2)。工具Tにより非接触センサ13の光線13aを遮光したときに、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Osに対する光線13aの遮光位置ΔZ、すなわち基準位置Osからの変位量ΔZを遮光位置検出手段15により検出する(ステップS3)。
基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hを読み込む(ステップS4)。光学式の非接触センサ13の基準位置Osは、投光部13bから照射される光線13aの上方または下方にあらかじめ任意に設定し、基準位置記憶手段21に記憶しておく。
主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲の上方に移動させる動作と主軸3に装着した工具Tを下方へ移動させ光学式の非接触センサ13の検出範囲内に移動させる動作とを同時に行わせるようにしてもよい。要は、非接触センサ13の光線13aを主軸3に装着した工具Tで上方から遮光できればよい。
光学式の非接触センサ13は、工具Tの回転軸線を含む平面に沿って広がる帯状の検出範囲を有し、光線13aの遮光位置をあらかじめ設定した基準位置からの変位量として検出できるものが望ましい。
遮光位置検出手段15で検出した光線13aの遮光位置ΔZと、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから、工具刃先位置演算手段19で主軸3に装着した工具Tの長さ方向の刃先位置Ts1をTs1=H−ΔZにより求める(ステップS5)。
主軸3に装着した工具Tを使用する回転速度で回転させ、光学式の非接触センサ13の検出範囲内に向けて移動して光学式の非接触センサ13の基準位置Osに対する光線13aの遮光位置ΔZを検出するようにすれば、主軸3に装着した工具Tの実際の使用条件下における工具Tの長さ方向の刃先位置Ts1を求めることができる。もちろん、主軸3に装着した工具Tを回転させずに、光学式の非接触センサ13の基準位置Osに対する光線13aの遮光位置ΔZを検出してもよいことは言うまでもない。
主軸3に装着した工具Tの径方向の刃先位置Ts2を求める場合は、図3に示すように、光線13aの変位量検出方向と工具Tの軸線とが垂直になるよう光学式の非接触センサ13を配置する。
X軸送りモータMxまたはY軸送りモータMyを駆動して、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内に移動させ、工具Tにより非接触センサ13の光線13aを遮光したときに、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Osに対する光線13aの遮光位置ΔZ、すなわち基準位置Osからの変位量ΔZを遮光位置検出手段15により検出する。
そして、遮光位置検出手段15で検出した光線13aの遮光位置ΔZと、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから、工具刃先位置演算手段19で主軸3に装着した工具Tの径方向の刃先位置Ts2をTs2=H−ΔZにより求める。
また、主軸3に装着した工具Tの工具長Lを求める場合には、遮光位置検出手段15で光線13aの遮光位置を検出したときに、機械座標位置検出手段23によりNC工作機械1の座標位置Mzを検出する(ステップS6)。
遮光位置検出手段15により検出した光線13aの遮光位置ΔZと、機械座標位置検出手段23により検出したNC工作機械1の座標位置Mzと、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから、工具長演算手段25で主軸3に装着した工具Tの工具長LをL=H−Mz−ΔZにより求める(ステップS7)。求めた工具長LはNC装置9に送出され、工具オフセットメモリに記憶される。
図5、図6、図7を参照して、本発明の第2の実施形態の工具測定方法を説明する。
第1の実施形態の工具測定方法は、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内に上方から移動させるものであるが、第2の実施形態の工具測定方法は、図5,6に示すように、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内を垂直に横切るように移動させて、遮光位置検出手段15により基準位置Osからの遮光位置ΔZの最小値ΔZminまたは最大値ΔZmaxを検出し、工具Tの最突出位置とするものである。
このとき、図6に示すように、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内を横切ったときに、遮光位置検出手段15により基準位置Osからの遮光位置ΔZをΔZ1、ΔZ2、…、ΔZnのように逐次検出し、そのうちの最小値ΔZminまたは最大値ΔZmaxを読み取るようにすればよい。また、遮光位置検出手段15により遮光位置ΔZ1、ΔZ2、…ΔZnを検出したときの工作機械の座標位置Mzは測定開始時のZ軸位置として検出され、機械座標位置記憶手段33に記憶される。
ここで、光線13aの遮光位置ΔZの最大値ΔZmaxまたは最小値ΔZminに基づいて工具Tの最突出位置を求めるのは、あらかじめ設定した光学式の非接触センサ13の基準位置Osが光線13aのどの位置にあるか、すなわち光学式の非接触センサ13の検出範囲内の上方にあるか下方にあるかにより、遮光位置検出手段15により検出される光線13aの遮光位置ΔZが最大値ΔZmaxまたは最小値ΔZminを採るためである。
以下、図7を参照して、光線13aの遮光位置ΔZが最小値ΔZminを取る場合について説明する。
測定プログラムに従ってX軸送りモータMx、Y軸送りモータMy、Z軸送りモータMzを駆動して、主軸3とテーブル7とを相対移動させ、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲の側方に移動させ、測定開始位置に位置決めする(ステップS101)。このときのZ軸位置が工作機械の座標位置Mzとなる。
X軸送りモータMxまたはY軸送りモータMyを駆動して主軸3に装着した工具Tを水平方向へ移動させ、工具Tにより光学式の非接触センサ13の光線13aの検出範囲内を横切らせる(ステップS102)。このとき、光学式の非接触センサ13の帯状の検出範囲内を横断するように、検出範囲のなす面に対して直角方向に工具TをX、Y軸方向に微少量ずつ移動させる。
工具Tにより非接触センサ13の光線13aを遮光したときに、光学式の非接触センサ13のあらかじめ設定した基準位置Osに対する光線13aの遮光位置ΔZ、すなわちあらかじめ設定した基準位置Osからの変位量ΔZを遮光位置検出手段15により検出する(ステップS103)。
主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲の側方に移動させる動作と主軸3に装着した工具Tを水平方向へ移動させ光学式の非接触センサ13の光線13aの検出範囲内を横切らせる動作とを同時に行わせるようにしてもよい。要は、非接触センサ13の光線13aを主軸3に装着した工具Tで横切って遮光できればよい。
工具最突出位置演算手段17は、遮光位置検出手段15により今回検出した光線13aの遮光位置ΔZと前回検出した光線13aの遮光位置ΔZとを比較し(ステップS104)、今回検出した光線13aの遮光位置ΔZの方が小さい場合(ステップS104のYES)、その遮光位置ΔZを最小値ΔZmin、すなわち工具Tの最突出位置として求め、遮光位置記憶手段31に記憶する(ステップS105)。今回検出した光線13aの遮光位置ΔZの方が大きい場合(ステップS104のNO)、光線13aの遮光位置ΔZの最小値ΔZminが検出されていないとして、光線13aの検出範囲内に対する工具Tの横切り動作が完了しているかどうか判断する(ステップS106)。横切り動作が完了していない場合(ステップS106)、光線13aの遮光位置ΔZの最小値ΔZminが見つかるよう光線13aの遮光位置ΔZの検出を繰り返す。
横切り動作が完了し、工具最突出位置演算手段17が、光線13aの遮光位置ΔZの最小値ΔZminを求め、工具Tの最突出位置として遮光位置記憶手段31に記憶した場合(ステップS106のYES)、遮光位置記憶手段31から光線13aの遮光位置ΔZの最小値ΔZmin、すなわち工具Tの最突出位置を読み取る(ステップS107)。
基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Om、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hを読み込む(ステップS108)。
工具最突出位置演算手段17により求めた工具Tの最突出位置、すなわち光線13aの遮光位置ΔZの最小値ΔZminと、あらかじめ設定した基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから、工具刃先位置演算手段19で主軸3に装着した工具Tの長さ方向の刃先位置Ts1をTs1=H−ΔZminにより求める(ステップS109)。
なお、第2の実施形態において、主軸3に装着した工具Tの径方向の刃先位置Ts2を求める方法は、第1の実施形態と同じであるので、ここでは説明を省略する。
また、主軸3に装着した工具Tの工具長Lを求める場合には、測定開始時のZ軸位置をNC工作機械1の座標位置Mzとして検出する(ステップS110)。
工具最突出位置演算手段17により求めた工具Tの最突出位置、すなわち光線13aの遮光位置ΔZの最小値ΔZminと、機械座標位置検出手段23により検出したNC工作機械1の座標位置Mz、あらかじめ設定した基準位置Om、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから、工具長演算手段25で主軸3に装着した工具Tの工具長LをL=H−Mz−ΔZminにより求める(ステップS111)。
図8,図9、図10を参照して、本発明の第3の実施形態の工具測定方法を説明する。
第3の実施形態の工具測定方法では、光線13aの遮光状態をあらかじめ設定した基準位置からの2次元の複数の遮光位置データとして検出する光学式の非接触センサを使用する。
図8、図9に示すように、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲内に移動したときに、遮光位置検出手段15により基準位置Osからの遮光位置ΔZをΔZ1、ΔZ2、ΔZ3、…、ΔZnのように検出し、そのうちの最小値ΔZminまたは最大値ΔZmaxを読み取るようにすればよい。また、遮光位置検出手段15により遮光位置ΔZ1、ΔZ2、ΔZ3、…ΔZnを検出したときの工作機械の座標位置Mzは検出範囲内に移動したときのZ軸位置として検出され、機械座標位置記憶手段33に記憶される。
ここで、光線13aの遮光位置ΔZの最大値ΔZmaxまたは最小値ΔZminに基づいて工具Tの最突出位置を求めるのは、あらかじめ設定した光学式の非接触センサ13の基準位置Osが光線13aのどの位置にあるか、すなわち光学式の非接触センサ13の検出範囲内の上方にあるか下方にあるかにより、遮光位置検出手段15により検出される光線13aの遮光位置ΔZが最大値ΔZmaxまたは最小値ΔZminを採るためである。
以下、図10を参照して、光線13aの遮光位置ΔZが最小値ΔZminを取る場合について説明する。
測定プログラムに従ってX軸送りモータMx、Y軸送りモータMy、Z軸送りモータMzを駆動して、主軸3とテーブル7とを相対移動させ、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲の上方または側方に移動させる(ステップS201)。
ここで、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲の上方に移動させる動作と主軸3に装着した工具Tを下方へ移動させ光学式の非接触センサ13の検出範囲内に移動させる動作とを同時に行わせるようにしてもよい。また、主軸3に装着した工具Tを光学式の非接触センサ13の検出範囲の側方に移動させる動作と主軸3に装着した工具Tを水平方向へ移動させ光学式の非接触センサ13の検出範囲内に移動させる動作とを同時に行わせるようにしてもよい。
主軸3に装着した工具Tを下方または水平方向へ移動させ光学式の非接触センサ13の検出範囲内に移動させ(ステップS202)、工具Tにより光線13aを遮光したときに、遮光位置検出手段15により2次元の遮光位置データP1、P2、P3、…、Pnを検出し、工具最突出位置演算手段17に読み込み、記憶する(ステップS203)。
工具最突出位置演算手段17は、記憶した2次元の遮光位置データP1、P2、P3、…、Pnから、あらかじめ設定した基準位置Osに対する工具Tの軸線方向の光線13aの遮光位置ΔZに基づいて工具Tの最突出位置、すなわち光線13aの遮光位置ΔZの最小値ΔZminを求める(ステップS204)。
基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hを読み込む(ステップS205)。
工具最突出位置演算手段17により求めた工具Tの最突出位置、すなわち光線13aの遮光位置ΔZの最小値ΔZminと、あらかじめ設定した基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから、工具刃先位置演算手段19で主軸3に装着した工具Tの長さ方向の刃先位置Ts1をTs1=H−ΔZminにより求める(ステップS206)。
なお、第3の実施形態において、主軸3に装着した工具Tの径方向の刃先位置Ts2を求めるようにしてもよい。
また、主軸3に装着した工具Tの工具長Lを求める場合には、測定開始時のZ軸位置をNC工作機械1の座標位置Mzとして検出する(ステップS207)。
工具最突出位置演算手段17により求めた工具Tの最突出位置、すなわち光線13aの遮光位置ΔZの最小値ΔZminと、機械座標位置検出手段23により検出したNC工作機械1の座標位置Mz、あらかじめ設定した基準位置Os、すなわちNC工作機械1のX,Y,Zの各送り軸の機械座標系の基準位置Omと光学式の非接触センサ13の基準位置Osとの距離Hとから、工具長演算手段25で主軸3に装着した工具Tの工具長LをL=H−Mz−ΔZminにより求める(ステップS208)。
ところで、遮光位置検出手段15により検出された光学式の非接触センサ13のあらかじめ設定した基準位置Osに対する光線13aの遮光位置ΔZ、すなわち基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Osからの変位量ΔZは、従来の技術で述べたように、ボールエンドミルやドリル等の工具種類や工具径等の工具Tの先端部の形状や寸法によりその検出結果に悪影響を及ぼしてしまう。
そこで、工具種類や工具径等が工具Tの先端部の形状や寸法により特定されることに着目して、基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Osに対する光線13aの遮光位置ΔZの検出とは別に、工具Tの先端部の形状または寸法を表すデータに基づいて工具刃先位置演算手段19で求めた主軸3に装着した工具Tの長さ方向の刃先位置Ts1と工具Tの実際の長さ方向の刃先位置とのずれ量を求め、主軸3に装着した工具Tの長さ方向の刃先位置Ts1を補正することが望ましい。
図11を参照して、本発明の第4実施形態として、工具Tの先端部の形状または寸法等の輪郭形状に基づいて、主軸3に装着した工具Tの長さ方向の刃先位置Ts1を補正する方法を説明する。
前もって、工具Tの先端部の形状や寸法等の輪郭形状に応じてあらかじめ定めた補正値テーブルを用意して工具補正量演算手段27に登録しておく。補正値テーブルは、あらかじめ各種工具Tの刃先位置及び補正量を実際に求めることにより、工具Tの種類や工具径等の輪郭形状に対応させて補正量を記憶すればよい。
また、工具刃先位置演算手段19により求めた工具Tの刃先位置と工具Tの実際の刃先位置とのずれ量、すなわち補正量をコンピュータ等を使用して演算することもできる。
まず、主軸3に装着した工具Tの刃先部の輪郭形状を求める(ステップS301)。
光線13aの遮光位置をあらかじめ設定した基準位置からの変位量として検出する光学式の非接触センサ13を使用する場合は、例えば遮光位置検出手段15で検出したあらかじめ設定した基準位置Osに対する光線13aの遮光位置ΔZをΔZ1、ΔZ2、…、ΔZnのように逐次検出して、遮光位置記憶手段31に記憶する。
そして、遮光位置検出手段15により遮光位置ΔZ1、ΔZ2、…ΔZnを検出したときの機械座標位置検出手段23で検出した工作機械の座標位置MzをP1、P2、…、Pnのように逐次検出して、機械座標位置記憶手段33に記憶する。
遮光位置記憶手段31で記憶した光線13aの遮光位置ΔZ1、ΔZ2、…ΔZn及び機械座標位置記憶手段33で記憶したNC工作機械1の座標位置P1、P2、…、Pnに基づいて工具Tの先端部の輪郭形状を工具輪郭形状認識手段35により認識すればよい。
光学式の非接触センサ13の光線13aの検出範囲内を通過させることにより、工具Tの回転軸線を挟んで工具Tの一方の側から他方の側まで、その一方の側からの距離情報と共に工具Tの最下点の位置の情報を取得するので、工具Tの先端部の輪郭を求めるために必要なデータを取得したことになる。各位置において取得した位置に関する情報に基づいて、工具Tの先端部の輪郭形状を求める。
このように、帯状の検出範囲を有した光学式の非接触センサ13を用いて、工具Tを工具Tの回転軸線と垂直な方向に移動させていくことにより、工具Tの先端部の形状又は寸法を求めることができる。また、光学式の非接触センサ13の帯状の検出範囲を工具Tの回転軸線と垂直に配置し、光学式の非接触センサ13と工具TとをZ軸方向にのみ移動させるようにしてもよい。
図12に示すように、主軸3に装着した工具Tの先端部の全体的な輪郭形状を認識するのではなく、主軸3に装着した工具Tの刃先位置近傍の光学式の非接触センサ13の光線幅の範囲内のデータに基づいて、主軸3に装着した工具Tの先端部の部分的な輪郭形状を工具輪郭形状認識手段35により認識するようにしてもよい。
また、光線13aの遮光状態をあらかじめ設定した基準位置からの2次元の複数の遮光位置データとして検出する光学式の非接触センサを使用する場合は、遮光位置検出手段15で検出した基準位置記憶手段21にあらかじめ記憶した光学式の非接触センサ13の基準位置Osからの2次元の遮光位置データP1、P2、P3、…、Pnに基づいて工具Tの先端部の輪郭形状を工具輪郭形状認識手段35により認識すればよい。この場合は、工具Tを光線13aの検出範囲に移動するだけで、工具Tの先端部の輪郭形状を認識するデータが得られる。
さらに、あらかじめ与えられた工具Tの先端部の輪郭形状データを工具輪郭形状記憶手段37に記憶しておき、工具輪郭形状記憶手段37で記憶した工具Tの先端部の輪郭形状データにより当該工具Tの先端部の輪郭形状を工具輪郭形状認識手段35により認識することもできる。
上述のいずれかの方法で、主軸3装着した工具Tの先端部の輪郭形状を求め、その輪郭形状に対応する補正量を工具補正量演算手段27の補正テーブルから求める、または演算により求める(ステップS302)。
工具補正手段29により工具刃先位置演算手段19により求めた主軸3に装着した工具Tの長さ方向の刃先位置Ts1を補正する(ステップS303)。このとき、補正量は工具補正手段29からNC装置9に送出される。このようにすれば正確な工具Tの長さ方向の刃先位置を得ることができる。
工具Tの実際の刃先位置を求めるために認識された工具Tの先端部の形状または寸法等の輪郭形状データは、他の用途に利用することができる。
例えば工具輪郭形状認識手段35で認識した工具Tの先端部の輪郭形状と工具輪郭形状記憶手段37にあらかじめ記憶した工具Tの先端部の輪郭形状データとを比較することにより、主軸3に装着した工具Tが加工に使用するべき工具Tが否かを判定することができる。また、工具輪郭形状認識手段35で認識した工具Tの先端部の輪郭形状と工具輪郭形状記憶手段37にあらかじめ記憶した工具Tの先端部の輪郭形状データとを比較することにより、主軸3に装着した工具Tの破損、欠損、異物付着等の異常を検出することができる。
図13を参照して、上記内容を具体的に、本発明の第5実施形態の工具測定方法として説明する。
図11のステップS301と同様にして、工具輪郭形状認識手段35により主軸3に装着した工具Tの先端部の輪郭形状を認識する(ステップS401)。
工具輪郭形状記憶手段37にあらかじめ記憶した工具Tの先端部の輪郭形状データ、すなわち工具Tの先端部の寸法や形状を読み込む(ステップS402)。
工具判定手段41により、工具輪郭形状認識手段35で認識した工具Tの先端部の輪郭形状と工具輪郭形状記憶手段37にあらかじめ記憶した工具Tの先端部の輪郭形状データとを比較し(ステップS403)、主軸3に装着した工具Tが加工に使用するべき工具Tか否かを判定する(ステップS404)。両者が一致していなければ(ステップS404でNO)、使用するべき工具Tではないとして、アラームを発するか判定する(ステップS405)。アラームを発する場合は(ステップS405のYES)、NC装置9に加工停止指令を発する。そのときにアラーム表示するようにしてもよい。アラームを発しない場合は(ステップS405のNO)、工具マガジンから加工に使用するべき工具Tをサーチして(ステップS406)、再度工具Tの先端部の輪郭形状を認識する。
工具判定手段41により、主軸3に装着した工具Tが加工に使用するべき工具Tと判定した場合(ステップS404でYES)には、工具異常検出手段39により工具輪郭形状認識手段35で認識した工具Tの先端部の輪郭形状と工具輪郭形状記憶手段37にあらかじめ記憶した工具Tの先端部の輪郭形状データとを比較することにより、主軸3に装着した工具Tの破損、欠損、異物付着等の異常を検出する(ステップS407)。
両者が一致していれば(ステップS407でNO)、工具Tは使用するべき工具Tであり、異常もないと判定され、加工が続行される。
両者が一致せず、あらかじめ定められた許容範囲を越える差異が検出されると、主軸3に装着した工具Tに異常があると判定する(ステップS407のYES)。工具Tのクリーニングの可否を判定し(ステップS408)、クリーニングが行われていなければ(ステップS408のNO)、異物付着が考えられるとして、工具Tのクリーニング指令を発し(ステップS409)、クリーニング後に再度工具Tの先端部の輪郭形状の認識を行う。工具Tのクリーニングが行われていれば(ステップS408のYES)、工具Tの欠損、またはクリーニング等で回復できない異常と判定され、NC装置9に予備工具交換指令を発する(ステップS410)。
このようにして、工具Tを主軸に装着した状態で、工具Tの異常の検出や、指定された工具Tと主軸3に装着した工具Tとの一致、不一致の検出を行うことができる。
ここでは、主軸3に装着した工具Tの異常検出や加工に使用するべき工具Tか否かの判定を行うものとして説明したが、工具マガジンの各収納位置に収納された工具Tがその位置に収納されているはずの工具T、すなわち使用するべき工具Tが各収納位置に収納されているか否か、工具マガジンの各収納位置に収納された工具Tの異常を検査することもできる。
ここで、工具Tの異常を検出するのみで、工具Tが使用するべき工具Tか否かの判断を行う必要がなければ、省略することも可能である。もちろん工具Tの異常を検出することを省略することもできる。
図14に示すように、非接触式の工具先端位置検出方法を行う場合、光線13aを遮光したときには、光線13aの回折、すなわち光線13aが障害物である工具Tの先端部を通過するときに、工具Tの後方の影の部分に回り込み侵入する現象が原理的に発生する。この現象により、工具Tの長さ方向の刃先位置Ts1に誤差が発生してしまう。
図14、図15を参照して、非接触センサ13の光線13aの回折による誤差を考慮して、主軸3に装着した工具Tの長さ方向の刃先位置Ts1を求める方法として、本発明の第6実施形態の工具測定方法について説明する。
測定プログラムに従ってX軸送りモータMx、Y軸送りモータMy、Z軸送りモータMzを駆動して、主軸3とテーブル7とを相対移動させ、主軸3に装着した工具Tを非接触センサ13の光軸上の受光部13cから距離Dだけ離れた第1の位置P1の上方または側方に移動させる(ステップS501)。
図4のステップS1〜ステップS5、図7のステップS101〜109のようにして、主軸3に装着した工具Tの第1の位置P1における長さ方向の刃先位置Ts11を求める(ステップS502)。
測定プログラムに従ってX軸送りモータMx、Y軸送りモータMy、Z軸送りモータMzを駆動して、主軸3とテーブル7とを相対移動させ、主軸3に装着した工具Tを非接触センサ13の光軸上の第2の位置P2の上方または側方に移動させる(ステップS503)。
図4のステップS1〜ステップS5、図7のステップS101〜109のようにして、主軸3に装着した工具Tの第2の位置P2における長さ方向の刃先位置Ts12を求める(ステップS504)。
第1の位置P1における主軸3に装着した工具Tの長さ方向の刃先位置Ts11と第2の位置P2における主軸3に装着した工具Tの長さ方向の刃先位置Ts12との差ΔTsを求める(ステップS505)。
第1の位置P1と第2の位置P2との距離ΔDを求める(ステップS506)。
第1の位置P1と第2の位置P2との距離ΔD、第1の位置P1と第2の位置P2における主軸3に装着した工具Tの長さ方向の刃先位置の差ΔTsに基づいて、非接触センサ13の光線13aの回折角θを求め、光線13aの回折による主軸3に装着した工具Tの長さ方向の刃先位置の補正量ZcをZc=D・tanθ=D・tan(ΔTs/ΔD)により求める(ステップS507)。ステップS505〜ステップS507は工具補正量演算手段27で行われる。
工具補正手段29により第1の位置P1における主軸3に装着した工具Tの長さ方向の刃先位置Ts11を補正量Zcで補正することにより、主軸3に装着した工具Tの正確な長さ方向の刃先位置を得ることができる(ステップS508)。
上記説明は、非接触センサ13の検出範囲の2つの位置における工具Tの長さ方向の刃先位置に基づいて、非接触センサ13の光線13aの回折による誤差を考慮した主軸3に装着した工具Tの正確な長さ方向の刃先位置を求めるようにしているが、非接触センサ13の検出範囲の3つ以上の位置における工具Tの長さ方向の刃先位置に基づいて、主軸3に装着した工具Tの正確な長さ方向の刃先位置を求めることも可能である。