(57)【要約】  主軸の実際の回転方向と工具が実際に切削可能な主軸回転方向とが不一致である場合などの切削可能でない場合にも、ワークと工具の干渉チェックを実施するため、シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較し、この比較結果に基づいて工具刃先とワークの干渉チェックの要否を判断して、前記のステップで干渉チェック不要と判断した場合、工具刃先とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具刃先とワークの干渉チェックを行って、干渉があれば異常とみなすようにした。
2010073296.tif 000002
【特許請求の範囲】
【請求項１】
工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするNC工作機械のシミュレーション方法において、
シミュレーション実行前に、工具毎に切削可能な主軸回転方向または切削不能な主軸回転方向を予め決定するステップと、
シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較し、この比較結果に基づいて工具とワークの干渉チェックの要否を判断するステップと、
前記のステップで干渉チェック不要と判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなすステップと、
を有することを特徴とするNC工作機械のシミュレーション方法。
【請求項２】
工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするNC工作機械のシミュレーション方法において、
シミュレーション実行前に、工具毎に切削可能な主軸回転方向及び切削可能な送り軸方向、または工具毎に切削不能な主軸回転方向及び切削不能な送り軸方向を予め決定するステップと、
シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較し、工具とワークの干渉チェックの要否を判断するステップと、
シミュレーション実行中に、選択されている工具の前記切削可能な送り軸方向または切削不能な送り軸方向と、工作機械の刻々の送り軸方向とを比較し、この比較結果に基づいて工具とワークの干渉チェックの要否を判断するステップと、
前記の各ステップで干渉チェック不要であると判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなすステップと、
を有することを特徴とするNC工作機械のシミュレーション方法。
【請求項３】
前記切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向は、工具データに予め設定された工具の勝手データから決定することを特徴とする請求項２に記載のNC工作機械のシミュレーション方法。
【請求項４】
前記切削可能な主軸回転方向または切削不能な主軸回転方向は、工具データに格納された工具毎のデータに各々関連付けられている工具形状データに付した切削可能な主軸回転方向ベクトルまたは切削不能な主軸回転方向ベクトルで表現したものであることを特徴とする請求項１に記載のNC工作機械のシミュレーション方法。
【請求項５】
前記切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向は、工具データに格納された工具毎のデータに各々関連付けられている工具形状データに付した切削可能な主軸回転方向ベクトルと切削可能な送り軸方向ベクトル、または切削不能な主軸回転方向ベクトルと切削不能な送り軸方向ベクトルで表現したものであることを特徴とする請求項２または３に記載のNC工作機械のシミュレーション方法。
【請求項６】
工具データが保有する切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を工具形状データに付したベクトルで表現し、さらにこれらのベクトルからのずれをある範囲で許容できる工具の場合には、その許容できる角度を付したものであることを特徴とする請求項２または３に記載のNC工作機械のシミュレーション方法。
【請求項７】
工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするNC工作機械のシミュレーション装置において、
工具毎に切削可能な主軸回転方向または切削不能な主軸回転方向を記憶する記憶部と、
シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較し、この比較結果に基づいて工具とワークの干渉チェックの要否を判断する干渉チェック条件判定・更新部と、
前記干渉チェック条件判定・更新部が干渉チェック不要であると判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなす工作機械シミュレーション部と、
を備えてなるNC工作機械のシミュレーション装置。
【請求項８】
工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするNC工作機械のシミュレーション装置において、
工具毎に、切削可能な主軸回転方向及び切削可能な送り軸方向、または切削不能な主軸回転方向及び切削不能な送り軸方向を記憶する記憶部と、
シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較するとともに、選択されている工具の前記切削可能な送り軸方向または切削不能な送り軸方向と、工作機械の刻々の送り軸方向とを比較し、これらの比較結果に基づいて工具とワークの干渉チェックの要否を判断する干渉チェック条件判定・更新部と、
前記干渉チェック条件判定・更新部が干渉チェック不要であると判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなす工作機械シミュレーション部と、
を備えてなるNC工作機械のシミュレーション装置。
【請求項９】
工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするNC工作機械のシミュレーション装置において、
工具毎に、工具の勝手データを記憶する記憶部と、
前記工具の勝手データに基づいて切削可能な主軸回転方向または切削不能な主軸回転方向と、切削可能な送り軸方向または切削不能な送り軸方向を決定し、シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較するとともに、選択されている工具の前記切削可能な送り軸方向または切削不能な送り軸方向と、工作機械の刻々の送り軸方向とを比較し、これらの比較結果に基づいて工具とワークの干渉チェックの要否を判断する干渉チェック条件判定・更新部と、
前記干渉チェック条件判定・更新部が干渉チェック不要であると判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなす工作機械シミュレーション部と、
を備えてなるNC工作機械のシミュレーション装置。
【請求項１０】
前記切削可能な主軸回転方向または切削不能な主軸回転方向は、工具データに格納された工具毎のデータに各々関連付けられている工具形状データに付した切削可能な主軸回転方向ベクトルまたは切削不能な主軸回転方向ベクトルで表現したものであることを特徴とする請求項７に記載のNC工作機械のシミュレーション装置。
【請求項１１】
前記切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向は、工具データに格納された工具毎のデータに各々関連付けられている工具形状データに付した切削可能な主軸回転方向ベクトルと切削可能な送り軸方向ベクトル、または切削不能な主軸回転方向ベクトルと切削不能な送り軸方向ベクトルで表現したものであることを特徴とする請求項８または９に記載のNC工作機械のシミュレーション装置。
【請求項１２】
工具データが保有する切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を工具形状データに付したベクトルで表現し、さらにこれらのベクトルからのずれをある範囲で許容できる工具の場合には、その許容できる角度を付したものであることを特徴とする請求項８または９に記載のNC工作機械のシミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、数値制御（Numerical Control；以下ＮＣという）装置によって制御されるＮＣ工作機械のシミュレーション方法及びその装置に係り、特に干渉チェックの正確さの向上に関するものである。
【背景技術】
【０００２】
近年はＮＣ工作機械が多軸・多系統化してきて運転が難しくなったことから、ＮＣ装置は衝突を防止する機能を備えるようになってきている（特許文献１参照）。【０００３】
ところでＮＣ工作機械は、そもそも工具をワークに接触させて所望の形に削ることを目的としているため、ＮＣ工作機械の衝突防止機能およびＮＣ工作機械のシミュレーションにおいては、工具とワークの組合せが干渉チェックの対象から除外されるのが一般的である。
しかし工具としてドリルなどの回転工具を使用するＮＣ工作機械における実際の使用状況では、次の（１）〜（３）に記載の場面の場合は、ワークと工具が接触してはいけない場合であるとして、工具とワークとの干渉チェックを行うことが提案されている（特許文献２参照）。
（１）主軸の回転が停止している場合（回転工具の回転が停止しているとき）、
（２）ワークに対する工具の相対送り速度である切削送り速度がワークの材質に応じた設定最大切削送り速度を超えた場合、
（３）ドリル（またはタップ）を、ドリル（またはタップ）の切削可能軸方向であるＺ軸と直行するＸ軸、Ｙ軸方向に移動させて、このドリル（またはタップ）を穴加工位置へ位置決め移動させる場合。【０００４】
【特許文献１】特開２００４-２２７０４７号公報
【特許文献２】特開２００８-２７０４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
以上の通り、従来のＮＣ工作機械における衝突防止機能およびＮＣ工作機械のシミュレーションにおいては、ＮＣ工作機械の送り軸の移動を対象とした干渉や加工異常のチェックが実施されている。
しかし、従来のものは、加工時の主軸の回転方向と工具が実際に切削可能な主軸回転方向とが不一致であることが原因で、工具やワークを損傷するような異常を検出できない。
例えば、図１３に示すように、旋削バイトにはバイトの1面だけに刃があり、刃のある面だけが切削可能となっているものが多い。このような工具の場合には、旋削主軸の回転方向と向き合うように工具の切削可能な面が位置しなければ、正常に切削することができない（工具のすくい面が図１３に示すように図の左側方向を向いており、且つ主軸が図１３に示すような反時計回りの回転をする場合には、ワークを正常に切削することができない）。特に、旋削機能とミリング機能の両方を有する複合加工機ではミル主軸に旋削工具を装着することができ、しかもこのミル主軸周りに旋削工具を所定の角度、例えば対向主軸の場合には180度回転させて、第2旋削主軸側に段取りされているワークを加工できるように構成されているものがある。このようなＮＣ工作機械の運転は殊更に注意を要する。 【０００６】
一方、図１４に示すような回転工具の場合、大抵の工具は主軸正転用を使用することが多いが、例えば逆タップ工具のように通常とは逆の主軸回転を必要とする工具がある。したがって、回転工具においても工具として切削可能な送り軸方向と、加工時の機械の主軸の回転方向が一致しなければ正常な加工ができない場合がある。
従って、送り軸方向が正しいか否かといった判定だけ、あるいは、主軸が回転しているか否か（ＯＮかＯＦＦか）の判断だけでは、工具が切削できない状態においてワークが接触し、工具やワークを損傷してしまうといった異常状態を検知できない場合が生じてしまう。【０００７】
この発明は上記従来の種々の課題を解決するためになされたもので、加工時の機械の主軸の回転方向と工具が実際に切削可能な主軸回転方向とが不一致である場合などの切削不能である場合にも、ワークと工具の干渉チェックを実施することができるＮＣ工作機械のシミュレーション方法及びその装置を提供しようとするものである。
【課題を解決するための手段】
【０００８】
この発明は上記課題を解決するためになされたもので、工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするＮＣ工作機械のシミュレーション方法において、シミュレーション実行前に、工具毎に切削可能な主軸回転方向または切削不能な主軸回転方向を予め決定するステップと、シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較し、この比較結果に基づいて工具とワークの干渉チェックの要否を判断するステップと、前記のステップで干渉チェック不要と判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなすステップと、を有するものである。【０００９】
またこの発明のＮＣ工作機械のシミュレーション方法は、工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするＮＣ工作機械のシミュレーション方法において、シミュレーション実行前に、工具毎に切削可能な主軸回転方向及び切削可能な送り軸方向、または工具毎に切削不能な主軸回転方向及び切削不能な送り軸方向を予め決定するステップと、シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較し、工具とワークの干渉チェックの要否を判断するステップと、シミュレーション実行中に、選択されている工具の前記切削可能な送り軸方向または切削不能な送り軸方向と、工作機械の刻々の送り軸方向とを比較し、この比較結果に基づいて工具とワークの干渉チェックの要否を判断するステップと、前記の各ステップで干渉チェック不要であると判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなすステップと、を有するものである。【００１０】
またこの発明のＮＣ工作機械のシミュレーション方法は、前記切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を、工具データに予め設定された工具の勝手データから決定することを特徴とするものである。【００１１】
またこの発明のＮＣ工作機械のシミュレーション方法は、前記切削可能な主軸回転方向または切削不能な主軸回転方向を、工具データに格納された工具毎のデータに各々関連付けられている工具形状データに付した切削可能な主軸回転方向ベクトルまたは切削不能な主軸回転方向ベクトルで表現したものであることを特徴とするものである。【００１２】
またこの発明のＮＣ工作機械のシミュレーション方法は、前記切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を、工具データに格納された工具毎のデータに各々関連付けられている工具形状データに付した切削可能な主軸回転方向ベクトルと切削可能な送り軸方向ベクトル、または切削不能な主軸回転方向ベクトルと切削不能な送り軸方向ベクトルで表現したものであることを特徴とするものである。【００１３】
またこの発明のＮＣ工作機械のシミュレーション方法は、工具データが保有する切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を工具形状データに付したベクトルで表現し、さらにこれらのベクトルからのずれをある範囲で許容できる工具の場合には、その許容できる角度を付したものであることを特徴とするものである。【００１４】
またこの発明のＮＣ工作機械のシミュレーション装置は、工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするＮＣ工作機械のシミュレーション装置において、工具毎に切削可能な主軸回転方向または切削不能な主軸回転方向を記憶する記憶部と、シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較し、この比較結果に基づいて工具とワークの干渉チェックの要否を判断する干渉チェック条件判定・更新部と、前記干渉チェック条件判定・更新部が干渉チェック不要であると判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなす工作機械シミュレーション部と、を備えてなるものである。【００１５】
またこの発明のＮＣ工作機械のシミュレーション装置は、工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするＮＣ工作機械のシミュレーション装置において、工具毎に、切削可能な主軸回転方向及び切削可能な送り軸方向、または切削不能な主軸回転方向及び切削不能な送り軸方向を記憶する記憶部と、シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較するとともに、選択されている工具の前記切削可能な送り軸方向または切削不能な送り軸方向と、工作機械の刻々の送り軸方向とを比較し、これらの比較結果に基づいて工具とワークの干渉チェックの要否を判断する干渉チェック条件判定・更新部と、前記干渉チェック条件判定・更新部が干渉チェック不要であると判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなす工作機械シミュレーション部と、を備えてなるものである。【００１６】
またこの発明のＮＣ工作機械のシミュレーション装置は、工具やワークの形状を用いてワークが加工される様子や機械の動きをシミュレーションするＮＣ工作機械のシミュレーション装置において、工具毎に、工具の勝手データを記憶する記憶部と、前記工具の勝手データに基づいて切削可能な主軸回転方向または切削不能な主軸回転方向と、切削可能な送り軸方向または切削不能な送り軸方向を決定し、シミュレーション実行中に、選択されている工具の前記切削可能な主軸回転方向または切削不能な主軸回転方向と、工作機械の刻々の主軸回転方向とを比較するとともに、選択されている工具の前記切削可能な送り軸方向または切削不能な送り軸方向と、工作機械の刻々の送り軸方向とを比較し、これらの比較結果に基づいて工具とワークの干渉チェックの要否を判断する干渉チェック条件判定・更新部と、前記干渉チェック条件判定・更新部が干渉チェック不要であると判断した場合、工具とワークの干渉チェックを行わず、干渉チェック要と判断した場合、工具とワークの干渉チェックを行って、干渉があれば異常とみなす工作機械シミュレーション部と、を備えてなるものである。【００１７】
またこの発明のＮＣ工作機械のシミュレーション装置は、前記切削可能な主軸回転方向または切削不能な主軸回転方向を、工具データに格納された工具毎のデータに各々関連付けられている工具形状データに付した切削可能な主軸回転方向ベクトルまたは切削不能な主軸回転方向ベクトルで表現したものであることを特徴とするものである。【００１８】
またこの発明のＮＣ工作機械のシミュレーション装置は、前記切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を、工具データに格納された工具毎のデータに各々関連付けられている工具形状データに付した切削可能な主軸回転方向ベクトルと切削可能な送り軸方向ベクトル、または切削不能な主軸回転方向ベクトルと切削不能な送り軸方向ベクトルで表現したものであることを特徴とするものである。【００１９】
またこの発明のＮＣ工作機械のシミュレーション装置は、工具データが保有する切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を工具形状データに付したベクトルで表現し、さらにこれらのベクトルからのずれをある範囲で許容できる工具の場合には、その許容できる角度を付したものであることを特徴とするものである。
【発明の効果】
【００２０】
この発明によれば、加工時の機械の主軸の回転方向と工具が実際に切削可能な主軸回転方向とが不一致である場合などの切削不能である場合にも、ワークと工具の干渉チェックを実施することが可能となり、よってワークと工具の干渉チェックを除外する経路が少なくなり、異常な状態をより多く検出できるようになるという効果がある。【００２１】
またこの発明によれば、旋削バイトの工具データが保有する切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を、工具データに予め設定された工具の勝手のデータから決定するようにしたので、干渉チェック用の工具データ設定の手間が省けるようになるという効果がある。【００２２】
またこの発明によれば、工具データが保有する切削可能な送り軸方向と切削可能な主軸回転方向、または切削不能な送り軸方向と切削不能な主軸回転方向を、工具データに予め設定された工具の形状データに保有するベクトルで表現し、複数の部品からなる工具の場合、最終的に組み上げられた時のベクトルの最終的な向きで、仮想のＮＣ工作機械の送り軸方向や主軸回転方向のベクトルと比較し、干渉チェック条件の判定と更新を実施するようにしたので、常に正しい干渉チェックの要否判定が行えるという効果がある。【００２３】
更にまたこの発明によれば、工具データが保有する切削可能な主軸回転方向と切削可能な送り軸方向、または切削不能な主軸回転方向と切削不能な送り軸方向を工具形状データに付したベクトルで表現し、更にこれらのベクトルからのずれをある範囲で許容できる工具の場合には、その許容できる角度を付し、許容する角度を持って干渉チェック条件の判定と更新を実施するようにしたので、干渉チェック条件の判定と更新がより実用に即した結果になるという効果がある。
【図面の簡単な説明】
【００２４】
【図１】この発明の実施の形態１に係るシミュレーション装置の要部を示すブロック図である。
【図２】この発明の実施の形態１に係るシミュレーション装置の工具データを示す図である。
【図３】この発明の実施の形態１に係るシミュレーション装置の全体動作を示すフローチャートである。
【図４】この発明の実施の形態１に係るシミュレーション装置の干渉チェック条件判定・更新部の動作を示すフローチャートである。
【図５】この発明の実施の形態１に係るシミュレーション装置の動作を説明するための工具データを示す図である。
【図６】この発明の実施の形態１に係るシミュレーション装置の動作を説明するための他の工具データを示す図である。
【図７】この発明の実施の形態１に係る工具データの他の例を示す図である。
【図８】この発明の実施の形態２に係る工具形状例を示す図である。
【図９】この発明の実施の形態２に係るシミュレーション装置の干渉チェック条件判定・更新部の動作を示すフローチャートである。
【図１０】この発明の実施の形態２に係るシミュレーション装置の動作を説明するためのベクトルを示す図である。
【図１１】この発明の実施の形態２に係るシミュレーション装置の効果を説明するための旋削工具と工具ホルダを示す図である。
【図１２】この発明の実施の形態２に係るシミュレーション装置の効果を説明するための、対向主軸を有する工作機械を示す図である。
【図１３】従来の課題を説明するための、旋削工具とワークの回転方向との関係を示す図である。
【図１４】従来の課題を説明するための、回転工具の回転方向・送り軸方向とワークとの関係を示す図である。
【符号の説明】
【００２５】
１  ＮＣプログラム
２  入力デバイス
３  工具データ記憶部
４  ＮＣ装置エミュレーション部
５  干渉チェック条件判定・更新部
６  工作機械シミュレーション部
７  形状データ記憶部
８  表示デバイス
【発明を実施するための最良の形態】
【００２６】
実施の形態１．
以下、この発明の実施の形態1を図１〜図７を用いて説明する。
図１は、この発明の実施の形態１に係る、パーソナルコンピュータなどの計算機上に搭載したＮＣ工作機械のシミュレーション装置を示すブロック図であり、１は所望の加工を行うための移動指令や送り速度、主軸回転指令などが記述されているＮＣプログラム、２は工具データの設定、表示デバイス８を通して表示されている画面の操作、シミュレーションの始動・終了、工作機械シミュレーション部６の設定、直接に移動指令供給等を行うための入力デバイス、３は図２に示すような工具に関する情報（工具データ）を工具毎に記憶した工具データ記憶部であり、この工具データは工具毎に、工具タイプ、工具径、切込み角、刃先角、勝手、形状データと関連付けるための形状データ番号、切削可能な送り軸方向（工具の切削可能な送り軸方向）、切削可能な主軸回転方向等のデータから構成されている。【００２７】
４はＮＣプログラム１を読み込んで、工作機械シミュレーション部６および干渉チェック条件判定・更新部５に、移動指令や、工具交換指令や、主軸回転指令等の各種指令や、現在装着している工具番号や、現在の主軸回転方向等の、現在の状態を供給するＮＣ装置エミュレーション部、５はＮＣ装置エミュレーション部４が供給する各種の指令と現在の各種状態を受信し、また現在シミュレーション装置内部で装着されている工具に対応する工具データを工具データ記憶部３より読込み、この読込んだ工具データが保有する、切削可能な主軸回転方向、切削可能な送り軸方向と、ＮＣ装置エミュレーション部４が供給する刻々の移動指令（送り軸方向指令）、刻々の主軸回転方向とを比較し、ワークと工具刃先の干渉チェックを有効にするか、無効にするかを決定する干渉チェック条件判定・更新部、６はＮＣ装置エミュレーション部４が供給する各種の指令及び形状データ記憶部７の形状データを用いて、ワーク、工具、治具、機械などの形状データを動かしたり、変更したりするなどしてＮＣ工作機械の動作やワークの切削の様子を模擬する工作機械シミュレーション部、７はワーク、工具、治具、機械などの形状データを記憶する形状データ記憶部、８は実行中の座標値、実行中のプログラムライン、モーダル等のＮＣに関するデータや、工作機械シミュレーション部６で実行している機械の動作やワークの切削の様子を表示する表示デバイスである。
なお、ＮＣ装置エミュレーション部４、干渉チェック条件判定・更新部５、工作機械シミュレーション部６は、ソフトウエアにより構成される。【００２８】
次に図１の構成によるＮＣ工作機械のシミュレーション装置の動作について、主に図３を用いて説明する。
まずシミュレーションを開始する前に、入力デバイス２より、シミュレーション対象のワーク、工具、治具、機械などの形状データを入力して形状データ記憶部７に保持し、ＮＣプログラム１も計算機内に保持しておく。
また、図２に示すように工具データ記憶部３に、入力デバイス２より、工具に切削可能な送り軸方向や切削可能な主軸回転方向に関する制限がある場合には、工具データに対して、切削可能な送り軸方向として「Ｚ−」「Ｚ＋」「Ｚ停止」等の軸名称や軸番号とその方向を設定し、切削可能な主軸回転方向として一定のルール、例えば旋削主軸の場合、チャック端面から旋削主軸に沿って眺めたときに時計回りを「CW」、反時計回りを「CCW」とし、停止しているときは「停止」を設定する。回転工具の場合には、工具先端から工具の根元側に工具軸に沿って眺めたときの「CW」、「CCW」、「停止」を設定するようにする。これらの何れかに制限がない場合には、制限がない箇所を空としておく。
なお、ここでＺ方向とは、旋削加工において回転するワークの軸線方向と同方向を指す。【００２９】
また、旋削バイト工具（図２のＮＯ.６，７のもの）には、切削可能な送り軸方向が実質的に特定された形状の工具があり、この形状の違いは「勝手」と呼ばれて区別される。勝手の区別は、すくい面がある側を自分に向けて工具の刃が下、シャンクが上になるように見たときに、主切れ刃が右にあるものを右勝手、左側にあるものを左勝手と呼んで区別される。旋削バイトの場合には、図２に示すように、勝手は工具データ記憶部３に設定されているが、切削可能な送り軸方向と切削可能な主軸回転方向とが工具データ記憶部３に設定されていない場合があり、この場合には、この切削可能な送り軸方向と切削可能な主軸回転方向をこの勝手の情報から定める。例えばある旋削バイトの工具データで、工具データの切削可能な送り軸方向及び切削可能な主軸回転方向が指定されておらず、勝手データとして右勝手が設定されていれば、切削可能な送り軸方向として「Z−」、切削可能な主軸回転方向として「CCW」をセットし、また左勝手が設定されている場合には、切削可能な送り軸方向として「Ｚ−」、切削可能な主軸回転方向として「CW」をセットするようにする。
なお、図２において、切削可能な送り軸方向の欄及び切削可能な主軸回転方向の欄に記載の丸括弧内のデータ（Ｚ−，ＣＷ、ＣＣＷ）は、当初  切削可能な送り軸方向と切削可能な主軸回転方向が設定されていなかったが、勝手が設定されていたため（設定されたため）、この勝手に基づいて設定されたことを示している。【００３０】
シミュレーションを開始すると（ＳＴ１）、ＮＣ装置エミュレーション部４は、ＮＣプログラム１による自動運転をシミュレーションする際にはＮＣプログラム４を読み出し、入力デバイス２からの直接指令がある場合にはその指令を読み出す。
指令があるときには（ＳＴ２）、自身の管理する現在の工具番号、現在位置、送り速度、主軸回転速度、主軸回転方向、制御モードなどの内部状態を更新する（ＳＴ３）と共に、工作機械シミュレーション部６および干渉チェック条件判定・更新部５に、移動指令、工具交換指令、主軸回転指令等の各種指令と、現在装着している工具番号、現在の主軸回転方向等の現在の状態を出力する（ＳＴ４）。
ＳＴ２にて指令がない場合には、シミュレーションを終了する（ＳＴ８）。
干渉チェック条件判定・更新部５は、後述する処理フロー（図４参照）によって、現在装着している工具が有する切削可能な送り軸方向と現在の移動指令の送り軸方向の比較、切削可能な主軸回転方向と現在の主軸回転方向の比較を行い、ワークと工具刃先の干渉チェックを有効に設定するか（ワークと工具刃先の干渉チェックを行うように設定するか）、無効に設定するか（ワークと工具刃先の干渉チェックを行わないように設定するか）を決定する（ＳＴ５）。
なお、工具の各部位のうち、工具刃先以外の部位は、そもそもワークを削ることができない部位であるので、常に干渉チェックの対象とする。
また、例えば特開２００８-２７０４５号公報に開示の干渉チェックも、干渉チェック対象とすることも可能である。【００３１】
工作機械シミュレーション部６は、ＮＣ装置エミュレーション部４から供給された移動指令、形状データ記憶部７より読込んだ形状データ等を用いて例えば工具がワークを削る様子を模擬したり、工作機械の工具交換挙動を模擬したり、各軸の移動によって工作機械の各部位が動く様子を模擬したりして、工作機械の様々な挙動をシミュレーションし、干渉チェック条件判定・更新部５が決定した干渉チェック条件に従って干渉チェックを実施する（ＳＴ６）。
なお、干渉チェックの具体的な手法に関しては数多の公知技術があり、そのうちの何れを用いてもよく、また、何をもって「干渉」と判断するかについて、例えば、工作機械内の各部位が一定の距離以下となったときに干渉とみなすか、あるいはニアミスとみなすかなどは自由であり、干渉チェックの手法（干渉を検知するアルゴリズム）や干渉とみなす範囲はこの発明の特徴とするところになんら影響を与えない。
工作機械シミュレーション部６で干渉を検知した場合には、例えばシミュレーションを一時停止し、表示デバイス８で、干渉部位を強調表示したり、アラーム内容を文字列で表示したりといった通知処理を行う（ＳＴ７）。【００３２】
ここで、干渉チェック条件判定・更新部５の詳細な処理フローを、図４を元に説明する。
まず、工具データ記憶部３から工具データを読込んで、ＮＣ装置エミュレーション部４から供給された現在装着している工具の番号に相当する工具データを特定し、工具に切削可能な送り軸方向データを有しているかを確認する（ＳＴ５−１）。
ＳＴ５−１の結果がｙｅｓの場合、工具の切削可能な送り軸方向と、ＮＣ装置シミュレータ部４から供給された現在の送り軸方向と一致しているかを確認する（ＳＴ５−２）。
ＳＴ５−１の結果がｎｏの場合、次に説明するＳＴ５−４に遷移する。
ＳＴ５−２の結果がｙｅｓの場合、工具データ記憶部３から工具データを読込んで、ＮＣ装置エミュレーション部４から供給された現在装着している工具の番号に相当する工具データを特定し、工具に切削可能な主軸回転方向を有しているかを確認する（ＳＴ５−４）。
ＳＴ５−２の結果がｎｏの場合、ワークと工具刃先の干渉チェックを有効化し（ＳＴ５−３）、終了する。
ＳＴ５−４の結果がｙｅｓの場合、工具の切削可能な主軸回転方向と、ＮＣ装置エミュレーション部４から供給された現在の主軸回転方向が一致しているかを確認する（ＳＴ５−５）。
ＳＴ５−４の結果がｎｏの場合、ワークと工具刃先の干渉チェックを無効化し（ＳＴ５−６）、終了する。
ＳＴ５−５の結果がｙｅｓの場合、ＳＴ５−６に遷移し、ワークと工具刃先の干渉チェックを無効化し、処理を終了する。
ＳＴ５−５の結果がｎｏの場合、ＳＴ５−３に遷移し、ワークと工具刃先の干渉チェックを有効化し、処理を終了する。【００３３】
このフローに従えば、例えば図５の「工具データ」に対応する工具が装着されている際には、ＮＣ工作機械の状態に応じて工具刃先とワークの干渉チェックの有効・無効が、図５の「刃先の干渉チェック」欄のように設定される。
ここで、図５の「刃先の干渉チェック」の欄で○が記されているケースは工具刃先とワークの干渉チェックを行う設定、×が記されているケースは工具刃先とワークの干渉チェックを行わない設定である。【００３４】
なお、工具データとして、例えば図６の「工具データ」の列に示すように、工具データの切削可能な送り軸方向として複数の方向（Ｚ−／Ｚ停止）を設定したり、あるいは切削可能な主軸回転方向として複数設定したりしてもよく、この場合も同様に、ＮＣ工作機械の状態に応じて工具刃先とワークの干渉チェックの有効・無効が、図６の「刃先の干渉チェック」欄のように設定される。
また、工具データとして、図７のように、切削可能な送り軸方向と切削可能な主軸回転方向を一対にして、複数の対で設定するようにしても良い。 【００３５】
また、この実施の形態１によれば、工具データ記憶部３に、切削可能な送り軸方向と切削可能な主軸回転方向とを、記憶させるようにしたが、切削不能な送り軸方向と切削不能な主軸回転方向とを、記憶させるようにしてもよい。
この場合、干渉チェック条件判定・更新部５は、切削不能な送り軸方向と現在の送り方向とが一致するとき干渉チェックを有効にし、また不一致であるとき干渉チェックを無効にすることになる。また切削不能な主軸回転方向と現在の主軸回転方向とが一致するとき干渉チェックを有効にし、また不一致であるとき干渉チェックを無効にすることになる。【００３６】
以上説明したように、この実施の形態１によれば、工具毎に切削可能な送り軸方向（または切削不能な送り軸方向）、切削可能な主軸回転方向（または切削不能な主軸回転方向）を有するようにし、シミュレーション実行中に仮想のＮＣ工作機械の送り軸方向、主軸回転方向と比較して切削可能か否かを判定し、切削可能でないと判定した場合には、ワークと工具の干渉チェックを実施するようにしたので、ワークと工具の干渉チェックを除外する経路が少なくなり、異常な状態を従来手法より多く検出できるようになる。【００３７】
なお、本実施の形態１では、ＮＣの挙動を模擬するものとして、計算機上に搭載したＮＣ工作機械のシミュレーション装置について説明したが、ＮＣ工作機械に搭載されているＮＣ装置内にシミュレーション装置を搭載し、実際の工作機械を制御しているＮＣ装置をＮＣ装置エミュレーション部４と置き換えても良い。
また、実際の機械を運転している最中に干渉をチェックして未然に工作機械の可動領域内に存在する各部位の衝突を防止する機能を備えたＮＣ装置に、本シミュレーション装置を搭載してもよい。例えば特開２００８-１２９９９４号公報に示されている数値制御システムの「衝突検知部」として干渉チェック条件判定・更新部５と工作機械シミュレーション部６を搭載し、実際の工作機械を制御しているＮＣ装置をＮＣ装置エミュレーション部４と置き換えても良い。これらの構成の違いは、この発明の特徴とするところになんら影響するものではない。【００３８】
実施の形態２.
本実施の形態２は、基本的な動作は実施の形態１と同じであるが、実施の形態１のＮＣ工作機械のシミュレーションの動作を示した図３のうちの干渉チェック条件判定・更新の処理ＳＴ５が異なり、また切削可能な送り軸方向や切削可能な主軸回転方向を、形状データ記憶部７に保存されている工具の形状データにベクトルとして付しておき、それによって判断するようにしたものである。
以下では、実施の形態１とは異なる処理についてのみ説明する。
図８は本実施の形態２における工具の形状データの例を示すもので、同一の旋削バイトに対して、図８（Ａ）はすくい面を上にして眺めたもの、図８（Ｂ）は図８（Ａ）を紙面左側に９０度回して横から眺めたものである。
本実施の形態２における工具の形状データには、図８（Ａ）に示す切削可能な送り軸方向と、図８（Ｂ）に示す切削可能な主軸回転方向を、各々ベクトルで有している。さらに切削可能な主軸回転方向ベクトルに対して許容角度が付されている。【００３９】
このような工具の形状データを用いてワークと工具刃先の干渉チェックを行うか否かを判定する処理について説明する。図９は、干渉チェック条件判定・更新処理の別形態の処理フローを示したものである。
まず、工具データ記憶部３から工具データを読込んで、ＮＣ装置エミュレーション部４から供給された現在装着している工具の番号に相当する工具データを特定し、さらに形状データ記憶部７から形状データを読込んで、工具形状データを特定し、切削可能な送り軸方向ベクトルを有しているかを確認する（ＳＴ５−Ａ）。
ＳＴ５−Ａの結果がｙｅｓの場合、工具の切削可能な送り軸方向ベクトルと、ＮＣ装置エミュレーション部４から供給された現在の送り軸方向をベクトルで表現し、両者が一致しているかを確認する（ＳＴ５−Ｂ）。
ＳＴ５−Ａの結果がｎｏの場合、次に説明するＳＴ５−Ｄに遷移する。
ＳＴ５−Ｂの結果がｙｅｓの場合、形状データ記憶部７から形状データを読込んで、工具の切削可能な主軸回転方向ベクトルを有しているかを確認する（ＳＴ５−Ｄ）。
ＳＴ５−Ｂの結果がｎｏの場合、ワークと工具刃先の干渉チェックを有効化し（ＳＴ５−Ｃ）、終了する。【００４０】
ＳＴ５−Ｄの結果がｙｅｓの場合、主軸回転中心から工具刃先点までの距離を半径とする円の、工具刃先点における、ＮＣ装置エミュレーション部４から供給された現在の主軸回転方向の接線ベクトルを求めてそれを現在の主軸回転方向ベクトルとし（ＳＴ５−Ｅ）、次のＳＴ５−Ｆで、工具の切削可能な主軸回転方向ベクトルとＳＴ５−Ｅで求めた工具の切削可能な主軸回転方向ベクトルのなす角が、工具の有する、主軸回転方向ベクトルに対する許容角度内になるかを確認する（ＳＴ５−Ｆ）。
ＳＴ５−Ｄの結果がｎｏの場合、ワークと工具刃先の干渉チェックを無効化し（ＳＴ５−Ｇ）、終了する。
ＳＴ５−Ｆの結果がｙｅｓの場合、ＳＴ５−Ｇに遷移し、ワークと工具刃先の干渉チェックを無効化し、処理を終了する。
ＳＴ５−Ｆの結果がｎｏの場合、ＳＴ５−Ｃに遷移し、ワークと工具刃先の干渉チェックを有効化し、処理を終了する。【００４１】
このフローに従えば、例えばシミュレーション実行途中のある時点において図８（Ａ）、（Ｂ)に示した工具が装着されており、工具の切削可能な送り軸の方向とＮＣ工作機械の現在の送り軸方向が一致している状態において、図１０（Ａ）のようにＮＣ工作機械の旋削主軸の回転方向ベクトルと工具の切削可能な主軸回転方向ベクトルのなす角が許容角度内にあれば正しい切削が行えるためワークと工具刃先の干渉チェックを無効化し、反対に図１０（Ｂ）のようにＮＣ工作機械の旋削主軸の回転方向ベクトルと工具の切削可能な主軸回転方向ベクトルのなす角が許容角度外にある場合、正しい切削を行うことはできないので、ワークと工具刃先の干渉チェックを有効化する。【００４２】
なお、実施の形態２において、形状データ記憶部７に、切削可能な送り軸方向ベクトルと切削可能な主軸回転方向ベクトルとを、記憶させるようにしたが、切削不能な送り軸方向ベクトルと切削不能な主軸回転方向ベクトルとを、記憶させるようにしてもよい。
この場合、干渉チェック条件判定・更新部５は、切削不能な送り軸方向ベクトルと現在の送り方向ベクトルとが一致するとき干渉チェックを有効にし、また不一致であるとき干渉チェックを無効にすることになる。また切削不能な主軸回転方向ベクトルと現在の主軸回転方向ベクトルとが一致するとき干渉チェックを有効にし、また不一致であるとき干渉チェックを無効にすることになる。【００４３】
以上説明したように、この実施の形態２によれば、次のような効果が得られる。
一般的に、1本の工具は複数の部品から構成されている。例えば、図１１は複合加工機でよく使用されるミル主軸に装着するタイプの旋削工具を示したもので、ホルダ、シャンク、チップ（刃先）で構成される。このような工具の場合、最終的な工具のすくい面の向きは、ミル主軸の回転角度、ホルダの対応勝手、シャンクの勝手によって定まる。なお、図１１（Ａ）は、すくい面を上にして眺めたもの、図１１（Ｂ）は図１１（Ａ）を紙面左側に９０度回して横から眺めたものである。
この工具を使ってシミュレーションを行う際には、これらの3つの部品を各々ＣＡＤデータやモデリング言語などで定義しておき、それらを３次元空間で組み合わせることで1本の工具とする。切削可能な主軸回転方向と切削可能な送り軸方向をシャンクの形状データに対して固定のベクトルで設定しておけば、ホルダに組みこんでも最終的な切削可能な方向が決定されるので、わざわざ工具データにこれらの情報を作業者が手で入力する必要が無くなる。
さらに、図１２に示すように、この工具が第1旋削主軸と向かい合って位置する第2旋削主軸にあるワークを加工するために工具軸周りに180度回転した時、形状に付されている切削可能な主軸回転方向のベクトルと切削可能な送り軸方向のベクトルが工具の回転に追従して回転するため、工具の切削可能な主軸回転方向と切削可能な送り軸方向は常に正しい向きを示し、正しい判定が行えるようになる。
さらに、工具毎に切削可能な送り軸方向、切削可能な主軸回転方向をベクトルで有するようにした上でシミュレーション実行中に仮想のＮＣ工作機械の送り軸方向、主軸回転方向を、許容角度を持って比較して切削可能か否かを判定するようにしたことで、より正確に干渉チェック条件の判定ができるようになる。
【産業上の利用可能性】
【００４４】
この発明に係るＮＣ工作機械のシミュレーション方法及びその装置は、ＮＣにより工作機械を制御してワークを加工する際、工具刃先とワークの干渉チェックを、事前にチェックするのに適している。
【図１】
2010073296.tif 000003
【図２】
2010073296.tif 000004
【図３】
2010073296.tif 000005
【図４】
2010073296.tif 000006
【図５】
2010073296.tif 000007
【図６】
2010073296.tif 000008
【図７】
2010073296.tif 000009
【図８】
2010073296.tif 000010
【図９】
2010073296.tif 000011
【図１０】
2010073296.tif 000012
【図１１】
2010073296.tif 000013
【図１２】
2010073296.tif 000014
【図１３】
2010073296.tif 000015
【図１４】
2010073296.tif 000016
【国際調査報告】
2010073296.tif 000017
2010073296.tif 000018
2010073296.tif 000019
2010073296.tif 000020