(57)【要約】【課題】本発明は、三次元測定機と同様の操作でＮＣ工作機械による機上測定が可能なＮＣ工作機械の制御方法等を提供する。【解決手段】本発明の実施形態に係る制御方法は、端末装置で発行される三次元測定機を制御するための測定機用命令に基づいて、当該三次元測定機とは異なるＮＣ工作機械を制御する制御方法であって、測定機用命令からＮＣ工作機械の動作の種類を指定するフラグ、並びに、当該動作の制御に用いる動作変数を生成するフラグ・動作変数生成処理と、フラグをフラグ記憶領域に記憶すると共に動作変数を動作変数記憶領域に記憶するフラグ・動作変数記憶処理と、フラグ記憶領域に記憶された値を参照してＮＣ工作機械に実行させる所定の動作を選択する動作選択処理と、動作変数記憶領域に記憶された値に基づいてＮＣ工作機械の選択した動作の制御を実行する動作実行処理とを備えることを特徴とする。【選択図】図１
2014002654.tif 000002
【特許請求の範囲】
【請求項１】
端末装置で発行される三次元測定機を制御するための測定機用命令に基づいて、当該三次元測定機とは異なるＮＣ工作機械を制御する制御方法であって、
前記測定機用命令から前記ＮＣ工作機械の動作の種類を指定するフラグ、並びに、当該動作の制御に用いる動作変数を生成するフラグ・動作変数生成処理と、
前記フラグをフラグ記憶領域に記憶すると共に前記動作変数を動作変数記憶領域に記憶するフラグ・動作変数記憶処理と、
前記フラグ記憶領域に記憶された値を参照して前記ＮＣ工作機械に実行させる所定の動作を選択する動作選択処理と、
前記動作変数記憶領域に記憶された値に基づいて前記ＮＣ工作機械の前記選択した動作の制御を実行する動作実行処理と
を備えることを特徴とする制御方法。
【請求項２】
前記ＮＣ工作機械の有するプローブの状態に応じて変化する状態データを取得し、当該状態データを状態データ記憶領域に記憶する状態データ記憶処理と、
前記状態データ記憶領域に記憶された値から前記端末装置で読み取り可能な測定機用データを生成する測定機用データ生成処理と
を備えることを特徴とする請求項１記載の制御方法。
【請求項３】
端末装置で発行される三次元測定機を制御するための測定機用命令に基づいて、制御装置に当該三次元測定機とは異なるＮＣ工作機械を制御させるための制御プログラムであって、
前記制御装置に、
前記測定機用命令から前記ＮＣ工作機械の動作の種類を指定するフラグ、並びに、当該動作の制御に用いる動作変数を生成するフラグ・動作変数生成処理と、
前記フラグをフラグ記憶領域に記憶すると共に前記動作変数を動作変数記憶領域に記憶するフラグ・動作変数記憶処理と、
前記フラグ記憶領域に記憶された値を参照して前記ＮＣ工作機械に実行させる所定の動作を選択する動作選択処理と、
前記動作変数記憶領域に記憶された値に基づいて前記ＮＣ工作機械の前記選択した動作の制御を実行する動作実行処理と
を実行させることを特徴とする制御プログラム。
【請求項４】
端末装置で発行される三次元測定機を制御するための測定機用命令に基づいて、制御装置に当該三次元測定機とは異なるＮＣ工作機械を制御する制御装置であって、
前記測定機用命令から前記ＮＣ工作機械の動作の種類を指定するフラグ、並びに、当該動作の制御に用いる動作変数を生成するフラグ・動作変数生成手段と、
前記フラグをフラグ記憶領域に記憶すると共に前記動作変数を動作変数記憶領域に記憶するフラグ・動作変数記憶手段と、
前記動作フラグ記憶領域に記憶された値を参照して前記ＮＣ工作機械に実行させる所定の動作を選択する動作選択手段と、
前記動作変数記憶領域に記憶された値に基づいて前記ＮＣ工作機械の前記選択した動作の制御を実行する動作実行手段と
を備えることを特徴とする制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＮＣ工作機械の制御方法、制御プログラム、及び制御装置に関する。
【背景技術】
【０００２】
ＮＣ工作機械に、三次元測定機で使用される測定プローブと同等のＮＣ工作機械用プローブを取り付けて機上測定を行う技術は、既に知られている（例えば特許文献１）。現在、ＮＣ工作機械用プローブを提供するいくつかのメーカは、プローブと共にこのプローブを使って取得した測定データに基づいて幾何計算等の演算処理を行うデータ処理ソフトも提供し、これらを組み合わせて使用することで、ＮＣ工作機械における機上計測機能を実現するシステムを提供している。一方、ＣＮＣ三次元測定機を提供するいくつかの測定機のメーカは、三次元測定機用のデータ処理プログラムを使い、ＣＮＣ三次元測定機における一連の測定動作、いわゆるパートプログラム等の測定プログラムを生成した上で、この測定プログラムを各ＮＣ工作機械のＮＣコントローラ用のＮＣプログラムに変換して、この変換されたＮＣプログラムを使って、ＮＣ工作機械上で測定を実行できるシステムを提供している。このような三次元測定機用に生成された測定プログラムをＮＣプログラムに変換するシステムは、ＣＡＭシステムにおいても広く実現されている。
【０００３】
しかしながら、上述した従来の方法は、パートプログラムのような一連の測定プログラムをバッチ処理によりＮＣプログラムに変換するようにしているため、部分的な測定を行ったり、インタラクティブな測定を行うことができず、測定の柔軟性が乏しかった。また、複雑な測定をする場合、大容量のＮＣプログラムデータが必要となり、不具合が発生しても、ＮＣプログラム上の不具合箇所を特定することが難しいため、対応するのに非常に時間がかかってしまい、メンテナンス性が悪い点も問題であった。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平５−２５３８００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、上述した問題点に鑑みてなされたもので、三次元測定機と同様の操作でＮＣ工作機械による機上測定が可能なＮＣ工作機械の制御方法、制御プログラム、及び制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の実施形態に係る制御方法は、端末装置で発行される三次元測定機を制御するための測定機用命令に基づいて、当該三次元測定機とは異なるＮＣ工作機械を制御する制御方法であって、前記測定機用命令から前記ＮＣ工作機械の動作の種類を指定するフラグ、並びに、当該動作の制御に用いる動作変数を生成するフラグ・動作変数生成処理と、前記フラグをフラグ記憶領域に記憶すると共に前記動作変数を動作変数記憶領域に記憶するフラグ・動作変数記憶処理と、前記フラグ記憶領域に記憶された値を参照して前記ＮＣ工作機械に実行させる所定の動作を選択する動作選択処理と、前記動作変数記憶領域に記憶された値に基づいて前記ＮＣ工作機械の前記選択した動作の制御を実行する動作実行処理とを備えることを特徴とする。
【０００７】
本発明の実施形態に係る制御プログラムは、端末装置で発行される三次元測定機を制御するための測定機用命令に基づいて、制御装置に当該三次元測定機とは異なるＮＣ工作機械を制御させるための制御プログラムであって、前記制御装置に、前記測定機用命令から前記ＮＣ工作機械の動作の種類を指定するフラグ、並びに、当該動作の制御に用いる動作変数を生成するフラグ・動作変数生成処理と、前記フラグをフラグ記憶領域に記憶すると共に前記動作変数を動作変数記憶領域に記憶するフラグ・動作変数記憶処理と、前記フラグ記憶領域に記憶された値を参照して前記ＮＣ工作機械に実行させる所定の動作を選択する動作選択処理と、前記動作変数記憶領域に記憶された値に基づいて前記ＮＣ工作機械の前記選択した動作の制御を実行する動作実行処理とを実行させることを特徴とする。
【０００８】
本発明の実施形態に係る制御装置は、端末装置で発行される三次元測定機を制御するための測定機用命令に基づいて、制御装置に当該三次元測定機とは異なるＮＣ工作機械を制御する制御装置であって、前記測定機用命令から前記ＮＣ工作機械の動作の種類を指定するフラグ、並びに、当該動作の制御に用いる動作変数を生成するフラグ・動作変数生成手段と、前記フラグをフラグ記憶領域に記憶すると共に前記動作変数を動作変数記憶領域に記憶するフラグ・動作変数記憶手段と、前記動作フラグ記憶領域に記憶された値を参照して前記ＮＣ工作機械に実行させる所定の動作を選択する動作選択手段と、前記動作変数記憶領域に記憶された値に基づいて前記ＮＣ工作機械の前記選択した動作の制御を実行する動作実行手段とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、三次元測定機と同様の操作でＮＣ工作機械による機上測定が可能なＮＣ工作機械の制御方法、制御プログラム、及び制御装置を提供することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係る三次元測定システムの概要を示す図である。
【図２】実施形態に係る三次元測定システムの動作概要を説明する図である。
【図３】実施形態に係るＮＣプログラムのフラグ及び動作変数の記憶領域の一例を示す図である。
【図４】実施形態に係るＮＣドライバ及びＮＣコントローラ内の処理の一例を示す図である。
【図５】実施形態に係るＮＣ工作機械及びＮＣコントローラにおけるブロックスキップ機能を説明する図である。
【図６】実施形態に係るＮＣプログラムのプログラムコードの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照しながら本発明の実施形態に係るＮＣ工作機械の制御方法、制御プログラム、及び制御装置について説明する。
【００１２】
［三次元測定システムの概要］
ここでは、本発明の実施形態に係る制御方法、制御プログラム、或いは制御装置を用いた三次元測定システムの概要について図１を用いて説明する。
【００１３】
この三次元測定システムは、ＮＣ工作機械１００、ＮＣ工作機械１００を制御するＮＣコントローラ２００、並びに、ユーザに対するインタフェースを提供し、ＮＣコントローラ２００との各種データの送受信を行う端末装置３００を備える。なお、このシステムは、ＮＣ工作機械１００の機上計測機能によってワークの三次元測定を行うため、ＮＣ工作機械１００には、測定用のプローブが装着されている。
【００１４】
端末装置３００は、三次元測定機用の操作コマンドを入力できるものであり、三次元測定機を制御するための命令（以下、「測定機用命令」と呼ぶ）を発行したり、三次元測定機からの測定結果（以下、「測定機用データ」と呼ぶ）を取得して画面に表示したりする測定機用データ処理部３２０を有する。また、本実施形態の端末装置３００には、三次元測定機の操作に用いる測定機用データ処理部３２０とＮＣ工作機械１００を制御するためのＮＣコントローラ２００とを連携させるためのＮＣドライバ３１０も有する。このＮＣドライバ３１０を有することで、後述のように、ＮＣ工作機械の知識を十分持たないユーザであっても、三次元測定機の場合と同様に、ＮＣ工作機械１００による機上計測を行うことができる。
【００１５】
なお、端末装置３００は、ＮＣコントローラ２００と物理的に離れた場所に設置しておきケーブル等を介して通信（例えば、ＲＳ−２３２Ｃ、ＴＣＰ／ＩＰ等）しても良い。また、ＮＣコントローラ２００にフロントエンド用の一般的な計算機と同様に構成された部分がある場合、この部分に測定器用データ処理部３２０である三次元測定機用データ処理プログラムとＮＣドライバ３１０を組み込み、ＡＰＩを介して内部的に通信しても良い。
【００１６】
［ＮＣドライバ及びＮＣプログラム］
ここでは、ＮＣドライバ３１０と、ＮＣコントローラ２００に含まれるＮＣプログラムについて説明する。
【００１７】
図２は、本実施形態に係る三次元測定システムの動作概要を説明する図である。図２には、端末装置３００の測定機用データ処理部３２０及びＮＣドライバ３１０と、ＮＣコントローラ２００のＮＣプログラムが示されている。
【００１８】
始めに、ステップＳ１０１では、ユーザが端末装置３００の画面等を操作する。これによって、測定機用データ処理部３２０は、測定機用命令をＮＣドライバ３１０に対して送信する。ここで測定機用命令には、プローブの移動といった単純な命令だけでなく、ワークの穴の自動測定など、三次元測定に便利な比較的複雑な命令まで含まれている。
【００１９】
続いて、ステップＳ１０２では、測定機用データ処理部３２０から測定機用命令を受けたＮＣドライバ２００が、測定機用命令を解析し、例えば、図２に示すような、ＮＣ工作機械１００が備える位置決め、測定、Ａ／Ｃ軸回転、Ｂ軸回転等の比較的簡単な動作に分解する。そして、この分解した動作毎に順次動作の種類を選択するフラグと、この動作の制御に用いる動作変数に変換する（フラグ・動作変数生成処理）。ここで変換される動作変数は、ＮＣ工作機械１００のメーカ毎に異なるＮＣコントローラ２００及びＮＣ工作機械１００の仕様に合わせた書式となる。
【００２０】
続いて、ステップＳ１０３では、ＮＣドライバ２００が、ＮＣプログラムが読み取り可能な所定のレジスタ等の記憶領域に、先のステップＳ１０２で生成されたフラグ及び動作変数を記憶する（フラグ・動作変数記憶処理）。
【００２１】
図３（Ａ）は、ＮＣプログラムで参照されるフラグ及び動作変数の記憶領域の一例を示す表である。以下において、フラグを記憶する領域をフラグ記憶領域、動作変数を記憶する領域を動作変数記憶領域と呼ぶこともある。
【００２２】
フラグ記憶領域及び動作変数記憶領域は、図３（Ａ）に示すように、各メーカが用意するＮＣプログラムの仕様によって異なる。例えば、Ａ社の場合、フラグ記憶領域は“ＶＣ１８０”、移動座標値の動作変数記憶領域は、“ＶＣ１８１”〜“ＶＣ１８３”で指定される。これに対し、Ｂ社の場合、フラグ記憶領域は“Ｒ８０”、移動座標値の動作変数記憶領域は、“Ｒ８１”〜“Ｒ８３”で指定される。
【００２３】
したがって、ＮＣドライバ３１０は、測定機用データ処理部３２０から受けた測定機用命令から生成したフラグ及び動作変数を、各メーカのＮＣプログラムの仕様に併せた適切なフラグ記憶領域、動作変数記憶領域に記憶させる必要がある。
【００２４】
なお、端末装置３００及びＮＣコントローラ２００間の通信は、例えば、ＴＣＰ／ＩＰやＲＳ２３２Ｃで行う。これは、各メーカのＮＣコントローラ２００の仕様による。ＮＣドライバ３１０は必要に応じて、各メーカが用意している通信用のＡＰＩやクラスモジュールを利用して、ＮＣコントローラ２００との通信を行う。
【００２５】
続いて、ステップＳ１０４では、ＮＣコントローラ２００のＮＣプログラムが、フラグ記憶領域の値（フラグ）を参照し、この値によってＮＣ工作機械１００に実行させる動作の種類を選択する（動作選択処理）。
【００２６】
図３（Ｂ）は、フラグの値と、動作の種類との対応例を示す表である。例えば、フラグが１の場合、動作の種類としてプローブの位置決めを選択し、動作フラグが２の場合、動作の種類としてワークの測定を選択する。
【００２７】
そして、ＮＣプログラムは、動作種類毎に用意した処理ルーチンによってＮＣ工作機械１００を、動作変数記憶領域に記憶された動作変数に用いて実行する（動作実行処理）。ここでの動作は、先に述べたように、プローブの位置決め、測定の実行、Ａ／Ｃ軸回転、Ｂ軸回転など比較的簡単且つ単発的なものであるため、ＮＣコントローラ２００のＮＣプログラムを単純且つ短くすることができる。これによって、測定パス全体を一気に実行させるバッチ処理的なＮＣプログラムが必要であった従来の場合と比べて、ＮＣプログラムのプログラミングの労力を大幅に低減させることができる。なお、ルーチン処理については、後で説明する。
【００２８】
ＮＣコントローラ２００は、ＮＣ工作機械１００の状態に応じて変化する状態データを、予め用意された状態データ記憶領域に随時記憶する（状態データ記憶処理）。
【００２９】
続いて、ステップＳ１０５では、ＮＣドライバ３１０が、ＮＣコントローラ２００の状態データ記憶領域を参照する。そして、ＮＣドライバ３１０は、状態データを適切な測定値に変換し、測定機用データ処理部が読み取り可能な測定機用データを生成し、測定機用データ処理部３２０に送信する（測定機用データ生成処理）。
【００３０】
最後に、ステップＳ１０６では、測定機用データ処理部３２０が、ＮＣドライバ３１０から受信したワークの各種測定値を計算処理し、これら計算処理結果を端末装置３００が備える画面等を介してユーザが利用可能な形で出力する。
【００３１】
次に、より詳細なＮＣドライバ３１０とＮＣプログラムの動作について具体例を示して説明する。図４は、図２に示すＣ社製のＮＣ工作機械を用いた三次元測定システムの例である。なお、ここからの説明は、主に、Ｃ社のＮＣ工作機械及びＮＣコントローラの仕様に基づいて説明するが、Ａ社、Ｂ社であっても、記憶領域の指定や、ＮＣコードが若干異なるだけであり、ＮＣドライバ及びＮＣプログラムについての基本的な構造は異なるものではない。
【００３２】
ＮＣコントローラ２００に用意するＮＣプログラムは、図４に示すように、ＮＣ工作機械に実行させる動作の種類を判別する動作フラグ処理部２１０と、その選択された動作を動作変数に応じて動作制御する動作実行部２２０を有する。
【００３３】
動作フラグ処理部２１０では、フラグの値の判定処理がループによって繰り返される。フラグの判定処理は、Ｃ社の場合、フラグ記憶領域である“＃９０３”の値と、動作の種類を表わす図３（Ｂ）に示す値とを比較する。そして、ここで判定された動作種類に応じて、動作実行部２２０にある動作種類毎の処理ルーチンに処理を移すのである。
【００３４】
次に、以上で説明したＮＣプログラムの動作の流れを順を追って説明する。ここで扱う動作種類は、測定の実行である。
【００３５】
始めに、ステップＳ２０１では、端末装置３００のユーザ操作によって測定機用データ処理部３２０から発行された測定機用命令が、ＮＣドライバ３１０によるフラグ・動作変数生成処理を受ける。
【００３６】
続いて、ステップＳ２０２では、ＮＣドライバ３１０が、測定を示すフラグの値２をフラグ記憶領域である“＃９０３”に記憶させると共に、動作変数であるＸ座標指令値、Ｙ座標指令値、Ｚ座標指令値を、動作変数領域である“＃９０１”、“＃９０２”、“＃９０３”に記憶させる（フラグ・動作変数記憶処理）。
【００３７】
続いて、ステップＳ２０３では、ＮＣプログラムの動作フラグ処理部２１０が、フラグ記憶領域である“＃９０３”を参照する。そして、“＃９０３”＝１の場合、つまり動作種類がプローブの位置決めであった場合、動作実行部３２０の位置決めの処理ルーチン２２０ａに処理を移す（ステップＳ２０３ａ）。同様に、“＃９０３”＝３の場合、つまり動作種類がＡ／Ｃ軸回転であった場合、動作実行部２２０のＡ／Ｃ軸回転の処理ルーチン２２０ｃに処理を移す（ステップＳ２０３ｃ）。図４の例では、“＃９０３”＝２であるため、動作実行部２２０の測定の実行の処理ルーチン２２０ｃに処理を移す（ステップＳ２０３ｂ）。
【００３８】
続いて、ステップＳ２０４では、動作実行部２２０の測定の処理ルーチン２２０ｃにおいて、測定に必要な工作機械用命令が発行される。図４の例では、通常、ＮＣ工作機械に用意されているブロックスキップ機能を利用して測定する。
【００３９】
ここで、ブロックスキップ機能について簡単に説明しておく。
ブロックスキップ機能は、プローブを所定の位置まで移動させ、その移動の途中で、プローブに何かが接触すると、プローブのその後の移動を中止し、次の処理に移す機能である。
【００４０】
図５は、ブロックスキップ機能の概略を説明する図である。この図は、プローブを位置Ｐ０から位置Ｐ１に移動させる途中で、位置Ｐ１´においてプローブとワークが接触した場合の例である。
【００４１】
ブロックスキップ機能の実行前、位置決めによってプローブを位置Ｐ０に移動させておく（ステップＳ３０１）。
【００４２】
この状態において、ＮＣプログラムからＮＣ工作機械１００に対してブロックスキップ機能の工作機械用命令である“Ｇ３１  Ｘ（ｘ１）  Ｙ（ｙ１）  Ｚ（ｚ１）”を発行する。ここで、Ｇ３１は、ブロックスキップ機能を表わすＮＣコードであり、（ｘ１）、（ｙ１）、（ｚ１）は、それぞれ位置Ｐ１を特定するためのＸ座標、Ｙ座標、Ｚ座標の値或いは変数名である。この工作機械用命令によって、プローブは、位置Ｐ０から位置Ｐ１に移動を開始する。
【００４３】
続いて、ステップＳ３０２において、位置Ｐ１´でプローブの先端（チップ）にワークが接触する。この瞬間、ＮＣ工作機械１００は、ＮＣコントローラ２００に対して、スキップ信号を発行すると共に（ステップＳ３０３）、位置Ｐ１´から位置Ｐ１へのプローブの移動をスキップする（ステップＳ３０４）。
【００４４】
その後は、ＮＣコントローラにおいて、次の処理を実行する（ステップＳ３０５）。
【００４５】
以上が、ブロックスキップ機能の概略である。ＮＣ工作機械１００で測定を行う場合、このブロックスキップ機能を利用し、ＮＣ工作機械からスキップ信号を発行された時の位置Ｐ１´の座標（状態データ）をＮＣコントローラ２００で処理することで簡単に実現することができる。
【００４６】
ここで、ＮＣドライバ３１０とＮＣプログラムの動作に戻る。
ステップＳ２０４では、動作実行部２２０の処理ルーチン２２０ｃからブロックスキップ機能の工作機械用命令が発行される。具体的には、“Ｇ３１  Ｘ＃９００  Ｙ＃９０１  Ｚ＃９０２”がこれにあたる。“＃９００”、“＃９０１”、“＃９０２”には、ステップＳ２０２で、ＮＣドライバ３１０によって、ｘ軸の移動座標値、ｙ軸の移動座標値、ｚ軸の移動座標値が既に記憶されているため、基本的には上記１行のプログラムによって、測定を実現することができる。
【００４７】
例えば、測定の処理ルーチン２２０ｃは、図６のような短いプログラムで実現できる。
【００４８】
この処理ルーチン２２０ｃは、図３に示すＣ社製のＮＣコントローラ２００の仕様に対応させたものである。図６中、“＃５０４１”〜“＃５０４３”は、プローブの現在の位置を格納する状態データ記憶領域である。また、“＃９９５”〜“＃９９７”は、プローブの移動開始点の座標を格納しておく状態データ記憶領域である。
【００４９】
Ｌ１０２〜Ｌ１０３では、現在のプローブの位置をブロックスキップ機能の移動開始点とするため、“＃５０４１”〜“＃５０４３”の値を、“＃９９５”〜“＃９９７”に記憶している。
【００５０】
Ｌ１０５では、“＃９９５”〜“＃９９７”で示される座標を移動開始点として、“＃９００”〜“＃９０２”で示される座標まで移動させるブロックスキップ機能を実行している。
【００５１】
Ｌ１０６〜Ｌ１１５については、プローブに予期せぬ衝突が発生した場合のエラー処理であり、詳細な説明は割愛する。
【００５２】
このように、測定の処理ルーチン２２０ｃは、図６の例の場合、エラー処理を含めても、たかだか２０行にも満たない簡単なものである。これは、移動やＡ／Ｃ軸回転といった他の動作の処理ルーチンについても同様である。つまり、ＮＣドライバ３１０を利用することで、ＮＣ工作機械１００の制御を十分に理解していない者であっても、三次元測定機に関する知識さえあれば、比較的容易にＮＣプログラムを開発することができる。
【００５３】
続いて、ブロックスキップ機能実行中のステップＳ２０５において、プローブがワークに接触すると、ＮＣ工作機械１００では、例えば、“＃５０６１”〜“＃５０６３”に座標位置（状態データ）を保持すると共に、ＮＣコントローラ２００に対してスキップ信号を発行する。ＮＣコントローラ２００は、スキップ信号を受信すると、“＃５０６１”〜“＃５０６３”に保持されたプローブの座標位置を状態データ記憶領域である“＃９０４”〜“＃９０６”に記憶させる（ステップS２０６）。
【００５４】
そして、ステップＳ２０７において、ＮＣドライバが、状態データ記憶領域である“＃９０４”〜“＃９０６”に格納された座標位置の状態データを、測定機用データ処理部で読み取り可能な座標値（測定機用データ）に変換して測定機用データ処理部に送信する。
【００５５】
なお、ＮＣプログラムの各動作の処理ルーチンが終了すると、フラグ処理部に処理が戻るが（ステップＳ２０９）、その前に、図６のＬ１１５に示すように、フラグ記憶領域である“＃９０３”に動作終了を示す値５が記憶される（ステップＳ２０８）。この場合、ＮＣドライバから１（プローブの位置決め）、２（測定）、３（Ａ／Ｃ軸回転）、４（Ｂ軸回転）、７（ＮＣプログラム終了）のいずれかの値が“＃９０３”に記憶されない限り、フラグ処理部におけるループ処理が繰り返されることになる。これによって、ＮＣプログラムは、常に、フラグの変化をチェックすることできる。そのため、本実施形態のＮＣドライバ３１０とＮＣプログラムを組み合わせることで、端末装置３００におけるユーザの操作に対し、リアルタイムで処理可能な三次元測定システムを実現することができる。
【００５６】
従来、始めに、三次元測定機用のデータ処理プログラムを使ってＮＣ工作機械に対応した三次元測定機用のデータ処理プログラムにおける測定パスのデータを生成し、更に、この測定パスのデータを各ＮＣ工作機械に対応したＮＣコントローラ用のＮＣプログラムに変換した上で、このＮＣプログラムを用いることで、ＮＣ工作機械による三次元測定を実現していた。
【００５７】
しかし、この場合、常に測定パス全体を実行しなくてはならず、例えば、ワークの一部だけを測定したい場合であっても、測定パスを部分的に実行することができないなど、柔軟な測定が困難であった。
【００５８】
また、ＮＣコントローラに対して、測定パス全体を処理するための複雑なＮＣプログラムを用意する必要があった。そのため、ＮＣプログラムの知識を十分に持たないユーザは元より、ＮＣプログラムに精通したユーザであっても、複雑なＮＣプログラムの開発には多大な時間と労力が必要である。
【００５９】
更に、従来の方法では、不具合が生じたとしても、大量のＮＣデータや複雑なＮＣプログラムから問題箇所を特定することは、容易ではなく、メンテナンス性が低いことが問題であった。
【００６０】
その点、実施形態の場合、ＮＣドライバ３１０によって、測定機データ処理部３２０から発行された測定機用命令が、ＮＣコントローラ２００の仕様に合ったフラグ・動作変数にその都度変換される。また、ＮＣプログラムでは、ループによってフラグの変化が常に監視され、フラグの変化に応じてその都度、ＮＣ工作機械１００が制御される。つまり、ユーザは、操作端末３００を操作することで、ほぼリアルタイムでＮＣ工作機械１００による三次元測定をすることができる。このように、本実施形態の場合、従来のように一連の測定パスを連続的に実行するバッチ的な処理方法とは異なり、ユーザ操作によるリアルタイム制御であるため、ユーザが意図する例外的な測定などに柔軟に対応することができる。
【００６１】
また、測定機用命令は、位置決めやブロックスキップ機能と言った簡単なＮＣコードの組み合わせだけで実現することができることから、簡単かつ短いＮＣプログラムを用意すれば良いため、従来に比べ、ＮＣプログラムの開発コストを大幅に削減することができる。
【００６２】
更に、ＮＣドライバ２００を利用することで、例えば、ユーザが従来から三次元測定機による三次元測定をする際に利用していた完成されたデータ処理プログラムをそのまま流用することができる。この場合、システムに不具合があったとしても、その不具合箇所を三次元測定機のデータ処理内で特定することができる。更に、上述の通り、ＮＣプログラム自体が簡素であるため、従来の場合と比べ、メンテナンス性を格段に向上させることができる。
【符号の説明】
【００６３】
１００・・・ＮＣ工作機械、２００・・・ＮＣコントローラ、３００・・・端末装置、３１０・・・ＮＣドライバ、３２０・・・測定機用データ処理部。
【図１】
2014002654.tif 000003
【図２】
2014002654.tif 000004
【図３】
2014002654.tif 000005
【図４】
2014002654.tif 000006
【図５】
2014002654.tif 000007
【図６】
2014002654.tif 000008