(57)【要約】【課題】工作機械における主軸の誤差や変形を原因とした変位を簡便に検出して補正することができる工作機械を提供する。【解決手段】工作機械において、主軸モータの負荷を測定する軸負荷測定手段を備え、主軸モータの測定負荷が予め決められた値を超えたことによって、工具がワークに接触したことを判定し、工具がワークに接触するまでの時間を、基準時と実測定時とで比較して、主軸の熱変位の検出、補正を行うため、熱変位量の検出のためにセンサを設ける必要がなく、信頼性や保守性が向上する。また、主軸の負荷からのフィードバックにより、加工精度のよい加工動作を記憶するため、機械の設置された環境の変化に対応することができる。【選択図】図４
2015003375.tif 000002
【特許請求の範囲】
【請求項１】
工具が取り付けられた主軸を移動させる主軸直線移動軸とテーブルを移動させる２つ以上のテーブル直線移動軸と、前記主軸直線移動軸及び前記テーブル直線移動軸とを制御する数値制御装置を備えた数値制御工作機械において、
前記主軸直線移動軸を駆動する主軸モータの負荷を測定する軸負荷測定手段と、
前記工具が前記テーブルに配置されたワークに接触していない所定の位置から前記主軸の移動及び時間の計測を開始して、前記軸負荷測定手段が測定した前記主軸モータの負荷が予め決められた値を超えて前記工具が前記ワークに接触したと判定するまでの時間を基準接触時間として記憶する基準接触時間記憶手段と、
前記基準接触時間記憶後の加工において、前記工具が前記テーブルに配置されたワークに接触していない所定の位置から前記主軸の移動及び時間の計測を開始して、前記軸負荷測定手段が測定した前記主軸モータの負荷が予め決められた値を超えて前記工具が前記ワークに接触したと判定するまでの時間を実接触時間として記憶する実接触時間記憶手段と、
前記基準接触時間と前記実接触時間との時間差が予め設定された時間を超えたとき、前記主軸の送り速度と前記時間差から熱変位量を算出する熱変位量算出手段と、
前記熱変位量算出手段によって算出された熱変位量に基づき、前記主軸直線移動軸の移動量を補正する熱変位補正手段と、
を有することを特徴とする熱変位量補正機能を有する工作機械。
【請求項２】
工具が取り付けられた主軸を移動させる主軸直線移動軸とテーブルを移動させる２つ以上のテーブル直線移動軸と、前記主軸直線移動軸及び前記テーブル直線移動軸とを制御する数値制御装置を備えた数値制御工作機械において、
前記主軸直線移動軸を駆動する主軸モータの負荷を測定する軸負荷測定手段と、
前記軸負荷測定手段が測定した前記主軸モータの負荷が予め決められた値を超えて前記工具が前記ワークに接触したと判定したときの座標を基準接触座標として記憶する基準接触座標記憶手段と、
前記基準接触座標記憶後の加工において、前記軸負荷測定手段が測定した前記主軸モータの負荷が予め決められた値を超えて前記工具が前記ワークに接触したときの座標を実接触座標として記憶する実接触座標記憶手段と、
前記基準接触座標と前記実接触座標との差が予め設定された値を超えたとき、この値を熱変位量として算出する熱変位量算出手段と、
前記熱変位量算出手段によって算出された熱変位量に基づき、前記主軸直線移動軸の移動量を補正する熱変位補正手段と、
を有することを特徴とする熱変位量補正機能を有する工作機械。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は工作機械に関し、特に熱変位量補正機能を有する工作機械に関するものである。
【背景技術】
【０００２】
従来、ある直線移動軸に固定された主軸と、２軸以上の直線移動軸を有するテーブルと、テーブル上に設置された回転軸を有する加工ワークを固定するための回転テーブルを備え、これらの主軸とテーブルを制御する数値制御装置を備える数値制御工作機械が用いられている。これらの数値制御工作機械においては出荷時に加工精度を保証しているが、その後の使用によっては、主軸がモータや軸受けなど発熱源からの発熱によって熱変位が生じる。加工精度を維持する上で、このような熱変位を補正することは非常に重要である。熱変位は、特に主軸が、モータや軸受けの発熱により主軸の前後進方向に大きく変位することがあるが、この場合、主軸の前後進方向の加工量に誤差が発生し、加工精度が落ちてしまうことがある。
【０００３】
このような熱変位を補正するために、以下の特許文献に開示されているような技術がある。
特許文献１には、これらの問題を解決する手段として、工作機械の各構成要素の温度を測定して得られた計測温度と刃先位置の座標に基づき、熱変位量を推定する技術が開示されている。
特許文献２には、主軸の負荷や回転数、前回の熱変位量に基づいて演算を行い、熱変位量を計算する技術が開示されている。
特許文献３には、暖気運転の時間をなくすか短縮するために、検出部の検出に基づいて、第一の接触検出時の座標と第二の検出時の座標との差から補正量を決定するという技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第４３５９５７３号公報
【特許文献２】特許第４２９９７６１号公報
【特許文献３】特開２０１３−８２０２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示されている技術は、工作機械の各構成要素の温度を測定するために、工作機械の機内の各箇所に温度計測用のセンサを取り付ける必要があるため、取り付けられたセンサの故障の可能性が増大し、コストアップにつながることも考えられる。
特許文献２に開示されている技術は、主軸の負荷や回転数に基づいて演算を行っているために、機械が設置されている環境などの機械の動作以外の要因を織り込んで予測することが難しい場合がある。
特許文献３に開示されている技術は、接触検出にあたって、接触センサを用いて検出を行っているため、センサの信頼性によっては適切な検出を行うことができなかったり、センサの保守点検の労力が発生するおそれがある。
【０００６】
そこで本発明は、工作機械における主軸の誤差や変形を原因とした変位を簡便に検出して補正することができる工作機械を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願の請求項１に係る発明では、工具が取り付けられた主軸を移動させる主軸直線移動軸とテーブルを移動させる２つ以上のテーブル直線移動軸と、前記主軸直線移動軸及び前記テーブル直線移動軸とを制御する数値制御装置を備えた数値制御工作機械において、前記主軸直線移動軸を駆動する主軸モータの負荷を測定する軸負荷測定手段と、前記工具が前記テーブルに配置されたワークに接触していない所定の位置から前記主軸の移動及び時間の計測を開始して、前記軸負荷測定手段が測定した前記主軸モータの負荷が予め決められた値を超えて前記工具が前記ワークに接触したと判定するまでの時間を基準接触時間として記憶する基準接触時間記憶手段と、前記基準接触時間記憶後の加工において、前記工具が前記テーブルに配置されたワークに接触していない所定の位置から前記主軸の移動及び時間の計測を開始して、前記軸負荷測定手段が測定した前記主軸モータの負荷が予め決められた値を超えて前記工具が前記ワークに接触したと判定するまでの時間を実接触時間として記憶する実接触時間記憶手段と、前記基準接触時間と前記実接触時間との時間差が予め設定された時間を超えたとき、前記主軸の送り速度と前記時間差から熱変位量を算出する熱変位量算出手段と、前記熱変位量算出手段によって算出された熱変位量に基づき、前記主軸直線移動軸の移動量を補正する熱変位補正手段と、を有することを特徴とする熱変位量補正機能を有する工作機械が提供される。
【０００８】
すなわち、請求項１に係る発明では、工具がワークに接触したことを測定負荷が予め決められた値を超えたことによって判定し、工具がワークに接触するまでの時間を、基準時と実測定時とで比較して、主軸の熱変位の検出、補正を行うため、熱変位量の検出のためにセンサを設ける必要がなく、信頼性や保守性が向上する。また、主軸の負荷からのフィードバックにより、加工精度のよい加工動作を記憶するため、機械の設置された環境の変化に対応することができる。
【０００９】
本願の請求項２に係る発明では、工具が取り付けられた主軸を移動させる主軸直線移動軸とテーブルを移動させる２つ以上のテーブル直線移動軸と、前記主軸直線移動軸及び前記テーブル直線移動軸とを制御する数値制御装置を備えた数値制御工作機械において、前記主軸直線移動軸を駆動する主軸モータの負荷を測定する軸負荷測定手段と、前記軸負荷測定手段が測定した前記主軸モータの負荷が予め決められた値を超えて前記工具が前記ワークに接触したと判定したときの座標を基準接触座標として記憶する基準接触座標記憶手段と、前記基準接触座標記憶後の加工において、前記軸負荷測定手段が測定した前記主軸モータの負荷が予め決められた値を超えて前記工具が前記ワークに接触したときの座標を実接触座標として記憶する実接触座標記憶手段と、前記基準接触座標と前記実接触座標との差が予め設定された値を超えたとき、この値を熱変位量として算出する熱変位量算出手段と、前記熱変位量算出手段によって算出された熱変位量に基づき、前記主軸直線移動軸の移動量を補正する熱変位補正手段と、を有することを特徴とする熱変位量補正機能を有する工作機械が提供される。
【００１０】
すなわち、請求項２に係る発明では、工具がワークに接触したことを測定負荷が予め決められた値を超えたことによって判定し、工具がワークに接触したときの座標を、基準時と実測定時とで比較して、主軸の熱変位の検出、補正を行うため、熱変位量の検出のためにセンサを設ける必要がなく、信頼性や保守性が向上する。また、主軸の負荷からのフィードバックにより、加工精度のよい加工動作を記憶するため、機械の設置された環境の変化に対応することができる。
【発明の効果】
【００１１】
本発明により、工作機械における主軸の誤差や変形を原因とした変位を簡便に検出して補正することができる工作機械を提供することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の数値制御工作機械の概略図である。
【図２】本発明の主軸、工具及びワークの関係を示す模式図である。
【図３】変位前と変位後における工具とワークとの接触時間の変位を示した図である。
【図４】第１の実施形態における熱変位の補正の概略図である。
【図５】第１の実施形態における基準時間設定の流れを示すフローチャートである。
【図６】第１の実施形態における熱変位補正の流れを示すフローチャートである。
【図７】第２の実施形態における基準時間設定の流れを示すフローチャートである。
【図８】第２の実施形態における熱変位補正の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
図１は、本発明の数値制御工作機械の概略図を示している。本発明の数値制御工作機械１０は、ベッド１２、コラム１４、主軸１６、主軸ヘッド１８、テーブル２０等から構成されている。最下部にはベッド１２が設けられており、ベッド１２上にはコラム１４とテーブル２０が備えられている。テーブル２０の下部には、Ｘ軸モータ２４とＹ軸モータ２６が設けられており、Ｘ軸モータ２４とＹ軸モータ２６との駆動により、テーブル２０を平面上を駆動させることが可能である。また、コラム１４には、主軸ヘッド１８が備えられており、同じくコラム１４に設けられているＺ軸モータ２８によって上下方向（Ｚ軸方向）に駆動可能である。Ｘ軸モータ２４、Ｙ軸モータ２６、Ｚ軸モータ２８は、いずれもサーボモータにより構成されている。
【００１４】
主軸ヘッド１８のコラム１４と反対側の端部には主軸１６が取り付けられており、また、主軸ヘッド１８の上には、主軸１６を駆動する主軸モータ２２が取り付けられている。さらに、主軸１６の下部には工具３０が取り付けられている。
このような構成により、Ｘ軸モータ２４及びＹ軸モータ２６によってテーブル２０をＸＹ平面に沿って移動させつつ、主軸１６をＺ軸モータ２８によってＺ軸方向に前後進させて、主軸１６に取り付けられている工具３０によって、テーブル２０上に設置されている図示しないワークの加工を行っている。
【００１５】
図２及び図３は、本発明の基本原理を示した図である。図２は、本発明の主軸１６、工具３０及びワーク３２の関係の模式図を示しており、図２（ａ）は変位前の理想状態を示した図、図２（ｂ）は変位後の状態を示した図である。図２（ａ）の変位前の理想状態と比較して、図２（ｂ）においては、モータの発熱等によって主軸１６や工具３０が変位して下方に伸びたような状態となっている。本発明では、主軸１６がモータの発熱などによって変位した際に、変位前の理想状態と比較して、工具３０が移動開始してから、ワーク３２に接触するまでの時間、又は、ワーク３２に接触するまでの工具３０の距離が変化することを利用して、変位量を検出している。また、工具３０とワーク３２との接触の検出にあたっては、別途検出のためのセンサを設けることなく、主軸モータ２２にかかる負荷を監視することで行っている。
【００１６】
図３は、変位前の理想状態と、変位後の状態における工具３０とワーク３２とが接触するまでの時間に差が生じることを示したグラフである。図２において、図２（ａ）と比較して図２（ｂ）の工具が下方に伸びたような状態となっていることによって、図３に示されているように、接触判定がされるまでの時間が変位後の方が短いものとなっている。この時間差と工具３０の送り速度から変位量を計算して、補正を行っている。
【００１７】
＜第１の実施形態＞
以下、図面に基づいて本発明の実施形態について説明する。
本実施形態においては、図４（ａ）に示されているように、まず第一ステップとして機械の温度が理想的な状態で１回目の一連の加工プログラムを動作させ、加工プログラムの動作開始と同時に計時を開始し、その後工具３０が被加工物（ワーク３２）に接触する瞬間の時間をＡ（１）、Ａ（２）・・・と順番に記録する。工具の接触判定については主軸負荷を監視し、回転している工具３０がワーク３２に接触した瞬間にある一定以上の主軸負荷を検出し、かつ主軸モータ２２の回転数を変化させる指令を直前に出していないときに主軸接触判定を出すものとする。
【００１８】
次に、図４（ｂ）に示されているように、第二ステップとして第一ステップと全く同じ加工プログラムを動作させ、第一ステップと同様に、加工プログラム開始と同時に主軸負荷の監視を行って計時を開始し、工具がワークに接触するまでの時間をそれぞれ計測し、主軸接触判定が出た時間と１回目で記録したその時間とを比較する。２つの時間を比較した際に、図４（ｂ）におけるＡ（１）とＢ（１）に見られるように、ある閾値以上の時間の差が存在する場合に、次回以降のＺ軸原点を修正し、次の加工動作に進む。この原点の修正により、Ａ（２）とＢ（２）点に見られるように、両者の時間差が閾値以内に低減されることが期待できる。この一連の流れを繰り返すことによって、加工に理想的な環境が維持できなくても、理想的な状態における加工精度を維持することができる。
【００１９】
次に本実施形態の熱変位の補正の流れを、図５及び図６に示されたフローチャートも用いて説明する。
まずは第一ステップとして、各加工動作における加工動作開始から工具接触までの基準となる時間を設定するために一連の加工プログラムを動作させる。このステップを行う際には、工作機械の置かれた環境（機械温度や機外温度など）が理想的な状態（一例として、機械が十分に冷えた状態や、機外温度が２５℃程度に保たれている）といった状態で行うことが望ましい。
【００２０】
加工プログラム動作開始から主軸負荷を監視し、加工プログラム動作開始から工具が接触するまでの時間を数値制御装置の記憶媒体に保存する。第一ステップにおける加工プログラム中のｎ回目の主軸工具接触時間をＡ（ｎ）とする。主軸負荷の監視については図３のように所定値以上の負荷が主軸に加えられ、かつ負荷を加える時点よりΔｔ[msec]以内に主軸回転数を変化させる指令がない場合に接触と判定する。Δｔ[msec]は主軸の回転数を変化させるのにかかる時間より長い時間を設けるものとする。
【００２１】
これらの基準時間の取得の流れを、図５に示されたフローチャートでステップごとに説明すると、以下のとおりである。
・（ステップＳＡ１）加工プログラムを開始し、主軸負荷の監視及び計時を開始する。ｎ＝１に設定する。
・（ステップＳＡ２）主軸負荷が所定値を超え、かつ主軸回転数を直前に変えていないかどうかを判定する。いずれも満たしている場合（ＹＥＳ）は、ステップＳＡ３に進み、いずれかを満たしていない場合（ＮＯ）は、ステップＳＡ２を繰り返し行っていずれも満たすのを待つ。
【００２２】
・（ステップＳＡ３）工具がワークに接触したと判定し、接触したときの時間の値を基準接触時間として記録して番号を割り振り、Ａ（ｎ）に記憶させる。
・（ステップＳＡ４）加工プログラムが終了したかどうかを判定する。プログラムが終了した場合（ＹＥＳ）は終了し、終了していない場合はステップＳＡ５に進む。
・（ステップＳＡ５）ｎの値に１を加えて、ステップＳＡ２に戻る。
これにより、加工プログラム中に何度か生じる工具とワークとの接触時間を、接触順番ごとに基準接触時間として記憶しておくことができる。
【００２３】
次に、第二ステップとして新しいワークを取り付け、第一ステップとまったく同じ加工プログラムを動作させる。第一ステップと同様に加工プログラム動作開始から主軸負荷の監視を始め、まずは加工プログラム動作開始から工具接触までの時間Ｂ（１）を計測する。第二ステップにおける加工プログラム中のｎ回目の加工プログラム動作開始から工具接触までの時間をＢ（ｎ）とする。
計測した時間Ｂ（１）を第一ステップで記憶させた１つ目の加工動作の時間Ａ（１）と比較する。Ａ（１）とＢ（１）を比較した際、Ｂ（１）がＡ（１）よりある許容値（ｋ[msec]）以上の差をもって小さかった場合、外気温の変化などによって主軸が許容値以上に変位しており、補正が必要であるものとする。
【００２４】
その変位量Ｚｍは
Ｚｍ=Ｘ[msec]×Ｙ[mm/sec]
Ｘ：Ｂ（ｎ）とＡ（ｎ）（この場合はｎ＝１）の時間差
Ｙ：Ａ（ｎ）（この場合はｎ＝１）接触時のＺ軸の送り速度
で表すことができる。なお、第一ステップと第二ステップでは同じ加工プログラムを動作させているため、各接触時のＺ軸送り速度が同じである。
その後の加工動作においてはＺ軸原点Ｚ０を以下のように更新する（Ａｎ＜Ｂｎの場合）。
Ｚ０’＝Ｚ０＋Ｚｍ
Ｚ０’：更新後のＺ軸原点
Ｚ０  ：更新前のＺ軸原点
Ｚ軸原点の更新後、２つ目の加工動作においても同様に加工動作開始から工具接触までの時間Ｂ（２）を計測してＡ（２）と比較を行い、補正が必要か否かを判定し、補正が必要な場合は補正を行う。
この繰り返しを加工プログラムが終了するまで行う。
【００２５】
これらの熱変位の補正の流れを、図６に示されたフローチャートでステップごとに説明すると、以下のとおりである。
・（ステップＳＢ１）加工プログラムを開始し、主軸負荷の監視及び計時を開始する。ｎ＝１に設定する。
・（ステップＳＢ２）主軸負荷が所定値を超え、かつ主軸回転数を直前に変えていないかどうかを判定する。主軸負荷が所定値を超え、かつ主軸回転数を直前に変えていない場合（ＹＥＳ）は、ステップＳＢ３に進み、それ以外の場合（ＮＯ）は、ステップＳＢ２を繰り返し行っていずれの条件も満たすのを待つ。
【００２６】
・（ステップＳＢ３）工具がワークに接触したと判定し、接触したときの時間の値を実接触時間として記録して番号を割り振り、Ｂ（ｎ）に記憶させる。
・（ステップＳＢ４）Ａ（ｎ）とＢ（ｎ）との差の絶対値が許容値であるｋより大きいかどうかを判定する。大きい場合（ＹＥＳ）はステップＳＢ６に進み、差がｋ以下の場合はステップＳＢ５に進む。
・（ステップＳＢ５）ｎの値に１を加えて、ステップＳＢ２に戻る。
【００２７】
・（ステップＳＢ６）Ａ（ｎ）とＢ（ｎ）の値を比較して、Ａ（ｎ）の方が大きいかどうかを判定する。Ａ（ｎ）の方が大きい場合（ＹＥＳ）は、ステップＳＢ７に進み、逆にＢ（ｎ）の方が大きい場合（ＮＯ）は、ステップＳＢ８に進む。
・（ステップＳＢ７）次回以降のプログラムコードにおいて、Ｚ軸原点をＺ０’＝Ｚ０−Ｚｍに補正し、ステップＳＢ９に進む。
・（ステップＳＢ８）次回以降のプログラムコードにおいて、Ｚ軸原点をＺ０’＝Ｚ０＋Ｚｍに補正し、ステップＳＢ９に進む。
・（ステップＳＢ９）加工プログラムが終了したかどうかを判定する。プログラムが終了した場合（ＹＥＳ）は終了し、終了していない場合はステップＳＢ５に戻る。
【００２８】
＜第２の実施形態＞
本実施形態においては、第１の実施形態における接触時間の比較に代えて、工具３０が被加工物（ワーク３２）に接触した際の工具３０の座標を比較する点が異なっている。
なお、本実施形態における「座標」は、工作機械固有の座標としている。
本実施形態の熱変位の補正の流れを、図７及び図８に示されたフローチャートも用いて説明する。
まずは第一ステップとして、各加工動作における工具接触までの基準となる座標を設定するために一連の加工プログラムを動作させる。このステップを行う際には、工作機械の置かれた環境（機械温度や機外温度など）が理想的な状態（一例として、機械が十分に冷えた状態や、機外温度が２５℃程度に保たれている）といった状態で行うことが望ましい。
【００２９】
加工プログラム動作開始から主軸負荷を監視し、各加工動作において、工具が接触するときの座標を数値制御装置の記憶媒体に保存する。第一ステップにおける加工プログラム中のｎ回目の主軸工具接触座標をＡ（ｎ）とする。主軸負荷の監視については図３のように所定値以上の負荷が主軸に加えられ、かつ負荷を加える時点よりΔｔ[msec]以内に主軸回転数を変化させる指令がない場合に接触と判定する。Δｔ[msec]は主軸の回転数を変化させるのにかかる時間より長い時間を設けるものとする。
【００３０】
これらの基準時間の取得の流れを、図７に示されたフローチャートでステップごとに説明すると、以下のとおりである。
・（ステップＳＣ１）加工プログラムを開始し、主軸負荷の監視を開始する。ｎ＝１に設定する。
・（ステップＳＣ２）主軸負荷が所定値を超え、かつ主軸回転数を直前に変えていないかどうかを判定する。いずれも満たしている場合（ＹＥＳ）は、ステップＳＣ３に進み、いずれかを満たしていない場合（ＮＯ）は、ステップＳＣ２を繰り返し行っていずれも満たすのを待つ。
【００３１】
・（ステップＳＣ３）工具がワークに接触したと判定し、接触したときの座標の値を基準接触座標として記録して番号を割り振り、Ａ（ｎ）に記憶させる。
・（ステップＳＣ４）加工プログラムが終了したかどうかを判定する。プログラムが終了した場合（ＹＥＳ）は終了し、終了していない場合はステップＳＣ５に進む。
・（ステップＳＣ５）ｎの値に１を加えて、ステップＳＣ２に戻る。
これにより、加工プログラム中に何度か生じる工具とワークとの接触座標を、接触順番ごとに基準接触座標として記憶しておくことができる。
【００３２】
次に、第二ステップとして新しいワークを取り付け、第一ステップとまったく同じ加工プログラムを動作させる。第一ステップと同様に各加工動作における加工動作開始から主軸負荷の監視を始め、工具接触の際の座標Ｂ（１）を計測する。第二ステップにおける加工プログラム中のｎ回目の工具接触の際の座標をＢ（ｎ）とする。
計測した時間Ｂ（１）を第一ステップで記憶させた１つ目の加工動作の座標Ａ（１）と比較する。Ａ（１）とＢ（１）を比較した際、Ｂ（１）がＡ（１）との差の絶対値が許容値（ｋ[mm]）以上である場合、外気温の変化などによって主軸が許容値以上に変位しており、補正が必要であるものとする。
【００３３】
その変位量Ｚｍは
Ｚｍ＝Ｂ（ｎ）−Ａ（ｎ）
で表すことができる。
その後の加工動作においては変位量Ｚｍを用いて、Ｚ軸原点Ｚ０を以下のように更新する。
Ｚ０’＝Ｚ０＋Ｚｍ
Ｚ０’：更新後のＺ軸原点
Ｚ０  ：更新前のＺ軸原点
Ｚ軸原点の更新後、２つ目の加工動作においても同様に加工動作開始から工具接触までの時間Ｂ（２）を計測してＡ（２）と比較を行い、補正が必要か否かを判定し、補正が必要な場合は補正を行う。
この繰り返しを加工プログラムが終了するまで行う。
【００３４】
これらの熱変位の補正の流れを、図８に示されたフローチャートでステップごとに説明すると、以下のとおりである。
・（ステップＳＤ１）加工プログラムを開始し、主軸負荷の監視を開始する。ｎ＝１に設定する。
・（ステップＳＤ２）主軸負荷が所定値を超え、かつ主軸回転数を直前に変えていないかどうかを判定する。主軸負荷が所定値を超え、かつ主軸回転数を直前に変えていない場合（ＹＥＳ）は、ステップＳＤ３に進み、それ以外の場合（ＮＯ）は、ステップＳＤ２を繰り返し行っていずれの条件も満たすのを待つ。
【００３５】
・（ステップＳＤ３）工具がワークに接触したと判定し、接触したときの座標の値を実接触座標として記録して番号を割り振り、Ｂ（ｎ）に記憶させる。
・（ステップＳＤ４）Ａ（ｎ）とＢ（ｎ）との差の絶対値が許容値であるｋより大きいかどうかを判定する。大きい場合（ＹＥＳ）はステップＳＤ６に進み、差がｋ以下の場合はステップＳＤ５に進む。
・（ステップＳＤ５）ｎの値に１を加えて、ステップＳＤ２に戻る。
【００３６】
・（ステップＳＤ６）Ａ（ｎ）とＢ（ｎ）の値を比較して、Ａ（ｎ）の方が大きいかどうかを判定する。Ａ（ｎ）の方が大きい場合（ＹＥＳ）は、ステップＳＤ７に進み、逆にＢ（ｎ）の方が大きい場合（ＮＯ）は、ステップＳＤ８に進む。
・（ステップＳＤ７）次回以降のプログラムコードにおいて、Ｚ軸原点をＺ０’＝Ｚ０−Ｚｍに補正し、ステップＳＤ９に進む。
・（ステップＳＤ８）次回以降のプログラムコードにおいて、Ｚ軸原点をＺ０’＝Ｚ０＋Ｚｍに補正し、ステップＳＤ９に進む。
・（ステップＳＤ９）加工プログラムが終了したかどうかを判定する。プログラムが終了した場合（ＹＥＳ）は終了し、終了していない場合はステップＳＤ５に戻る。
【符号の説明】
【００３７】
１０  数値制御工作機械
１２  ベッド
１４  コラム
１６  主軸
１８  主軸ヘッド
２０  テーブル
２２  主軸モータ
２４  Ｘ軸モータ
２６  Ｙ軸モータ
２８  Ｚ軸モータ
３０  工具
３２  ワーク
【図４】
2015003375.tif 000003
【図５】
2015003375.tif 000004
【図６】
2015003375.tif 000005
【図７】
2015003375.tif 000006
【図８】
2015003375.tif 000007
【図１】
2015003375.tif 000008
【図２】
2015003375.tif 000009
【図３】
2015003375.tif 000010