(57)【特許請求の範囲】
【請求項１】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、  工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、
第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、  第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第一の判定の結果、衝突の可能性がある場合には、
工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、
第二の移動データの工具移動による工作物の形状変形を行い、
形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、
第二の判定の結果、衝突の可能性がない場合には、
衝突時刻を新たな移動開始時刻として、上記第一の移動データの作成に戻り、上記一連の処理を繰り返し、
第二の判定の結果、衝突の可能性がある場合には、衝突ありとする、
ことを特徴とする衝突判定装置。 
【請求項２】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、  工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、
第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、  第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第一の判定の結果、衝突の可能性がある場合には、
工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、
第二の移動データの工具移動による工作物の形状変形を行い、
工具移動開始時刻から工具移動終了時刻までの間の第三の移動データを作成し、
第三の移動データに基づいて上記形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、
第二の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第二の判定の結果、衝突の可能性がある場合には、
工作物形状変形前の衝突時刻と工作物形状変形後の衝突時刻とを比較し、
衝突時刻が異なる場合には、工作物形状変形前の衝突時刻を新たな移動開始時刻として、上記第二の移動データの作成に戻り、上記一連の処理を繰り返し、
衝突時刻が同じ場合には、衝突ありとする
ことを特徴とする衝突判定装置。 
【請求項３】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、  工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、
工具移動終了時刻での工作物形状を求め、同時に工作物形状の部分毎の変形開始時刻と変形終了時刻とを求め、
第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、  第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第一の判定の結果、衝突の可能性がある場合には、
衝突時刻と衝突箇所での変形開始時刻とを比較し、
衝突時刻が工作物の変形開始時刻より前の場合に衝突ありとし、
衝突時刻が工作物の変形開始時刻より後で変形終了時刻より前の場合に、
工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、
第二の移動データの工具移動による工作物の形状変形を行い、
工作物変形前の衝突時刻を記録し、
工具移動開始時刻から工具移動終了時刻までの間の第三の移動データを作成し、
第三の移動データに基づいて上記形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、
第二の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第二の判定の結果、衝突の可能性がある場合には、
工作物形状変形前の衝突時刻と工作物形状変形後の衝突時刻とを比較し、
衝突時刻が異なる場合には、
工作物変形前の衝突時刻を新たな移動開始時刻として、上記第二の移動データの作成に戻り、上記一連の処理を繰り返し、
衝突時刻が同じ場合には、衝突ありとし、
衝突時刻が工作物の変形終了時刻より後の場合に、
工具移動終了時刻での工作物形状を用いて工作機械部品と工作物とが衝突するか第三の判定を行い、
第三の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第三の判定の結果、衝突の可能性がある場合には、衝突ありとする
ことを特徴とする衝突判定装置。 
【請求項４】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、  工作物の形状を表現する工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する工具移動パラメータとを記憶し、
工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手段と、
与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを動作させて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに、衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手段と、
与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新する工作物形状変形手段と、
工具移動区間抽出手段と仮の衝突判定手段と工作物形状変形手段とを所定の順序で動作させる衝突判定制御手段と、を備え、
衝突判定制御手段は、
工具移動区間抽出手段を動作させて、
工具移動データから、指定の区間を抽出して着目区間として選択し、
仮の衝突判定手段を動作させて、
着目区間の開始時点の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、  仮の衝突判定手段による衝突の可能性の判定の結果、
衝突の可能性がないと判定された場合には、
工作物形状変形手段を動作させて、
着目区間の工具移動に基づき工作物形状データを更新し、
工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
工具移動区間抽出手段を動作させて、
着目区間の開始から仮の衝突発生時点までの区間を抽出し、
工作物形状変形手段を動作させて、
該抽出区間の工具移動に基づき工作物形状データを更新した上で、
仮の衝突判定手段を動作させて、
更新後の仮の衝突発生時点の工作物形状データを用いて、
該抽出区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、
仮の衝突判定手段による衝突可能性についての再判定の結果、
衝突の可能性があると判定された場合には、
工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、
衝突の可能性がないと判定された場合には、
該抽出区間の仮の衝突判定時点に続く区間を新たな着目区間として選択し、
最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返すことを特徴とする衝突判定装置。 
【請求項５】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、  工作物の形状を表現する工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する第一、第二の工具移動パラメータとを記憶し、
工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手段と、
与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手段と、
与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新する工作物形状変形手段と、
工具移動動作中のどの時点に対応するかを表現する二つの工具移動パラメータを比較して、工具移動中の前後関係を判定する工具移動パラメータ比較手段と、
工具移動区間抽出手段と仮の衝突判定手段と工作物形状変形手段と工具移動パラメータ比較手段とを所定の順序で動作させる衝突判定制御手段と、を備え、
衝突判定制御手段は、
工具移動区間抽出手段を動作させて、
工具移動データから、指定の区間を抽出して着目区間として選択し、
仮の衝突判定手段を動作させて、
着目区間の開始時点の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、  仮の衝突判定手段による衝突の可能性の判定の結果、
衝突の可能性がないと判定された場合には、
工作物形状変形手段を動作させて、
着目区間の工具移動に基づき工作物形状データを更新し、
工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
仮の衝突発生時点に対応する工具移動パラメータを、
第一の工具移動パラメータとして記録し、
工具移動区間抽出手段を動作させて、
着目区間の開始から仮の衝突発生時点までの区間を抽出し、
工作物形状変形手段を動作させて、
該抽出区間の工具移動に基づき工作物形状データを更新した上で、
工具移動区間抽出手段を動作させて、
着目区間の開始から着目区間の終了までの区間を抽出し、
仮の衝突判定手段を動作させて、
更新後の仮の衝突発生時点の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、
仮の衝突判定手段による衝突可能性についての再判定の結果、
衝突の可能性がないと判定された場合には、
工作物形状変形手段を動作させて、
着目区間の工具移動に基づき工作物形状データを更新し、
工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、      衝突の可能性があると判定された場合には、
仮の衝突発生時点に対応する工具移動パラメータを、
第二の工具移動パラメータとして記録し、
工具移動パラメータ比較手段を動作させ、
第一の工具移動パラメータに対応する時点と、
第二の工具移動パラメータに対応する時点との前後関係を比較し、
第二の工具移動パラメータに対応する時点が、
第一の工具移動パラメータに対応する時点より後でないと判定された場合には、          工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、
第二の工具移動パラメータに対応する時点が、
第一の工具移動パラメータに対応する時点より後であると判定された場合には、          第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、
第一の工具移動パラメータに対応する時点に続く区間を新たな着目区間として選択し、
最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返すことを特徴とする衝突判定装置。 
【請求項６】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、  工作物の形状を表現する第一の工作物形状データと、工作物の形状を表現する第二の工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する第一から第四の工具移動パラメータとを記憶し、
工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手段と、
与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手段と、
与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新し、同時に、工作物形状の変形開始時刻・変形終了時刻を算出する工作物形状変形手段と、
工具移動動作中のどの時点に対応するかを表現する二つの工具移動パラメータを比較して、工具移動中の前後関係を判定する工具移動パラメータ比較手段と、
工具移動区間抽出手段と仮の衝突判定手段と工作物形状変形手段と工具移動パラメータ比較手段とを所定の順序で動作させる衝突判定制御手段と、を備え、
衝突判定制御手段は、
工具移動区間抽出手段を動作させて、
工具移動データから、指定の区間を抽出して着目区間として選択し、
工作物形状変形手段を動作させて、
着目区間の工具移動に基づき第二の工作物形状データを更新した上で、
第三の工具移動パラメータに、
工作物変形開始時刻に対応する工具移動パラメータを記録し、
第四の工具移動パラメータに、
工作物変形終了時刻に対応する工具移動パラメータを記録し、
仮の衝突判定手段を動作させて、
着目区間の開始時点の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、
仮の衝突判定手段による衝突の可能性の判定の結果、
衝突の可能性がないと判定された場合には、
着目区間の工具移動に基づき既に作成されている第二の工作物形状データを用いて、    第一の工作物形状データを更新した上で、
工作機械部品と工作物とが、
着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
仮の衝突発生時点に対応する工具移動パラメータを、
第一の工具移動パラメータとして記録し、
工具移動パラメータ比較手段を動作させ、
第一の工具移動パラメータに対応する時点と、
第三の工具移動パラメータに対応する時点との前後関係を比較し、
第一の工具移動パラメータに対応する時点が、
第三の工具移動パラメータに対応する時点より前と判定された場合には、
工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、
第一の工具移動パラメータに対応する時点が、
第三の工具移動パラメータに対応する時点より後と判定された場合には、
工具移動パラメータ比較手段を動作させ、
第一の工具移動パラメータに対応する時点と、
第四の工具移動パラメータに対応する時点との前後関係を比較し、
第一の工具移動パラメータに対応する時点が、
第四の工具移動パラメータに対応する時点より後と判定された場合には、
仮の衝突判定手段を動作させて、
第二の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の
衝突の可能性を判定し、
衝突の可能性がないと判定された場合には、
第二の工作物形状データを用いて、第一の工作物形状データを更新し、
工作機械部品と工作物とが、
着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、
第一の工具移動パラメータに対応する時点が、
第四の工具移動パラメータに対応する時点より前と判定された場合には、
工具移動区間抽出手段を動作させて、
着目区間の開始から仮の衝突発生時点までの区間を抽出し、
工作物形状変形手段を動作させて、
該抽出区間の工具移動に基づき第一の工作物形状データを更新した上で、
工具移動区間抽出手段を動作させて、
着目区間の開始から着目区間の終了までの区間を抽出し、
仮の衝突判定手段を動作させて、
更新後の仮の衝突発生時点の第一の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の
衝突の可能性を再判定し、
仮の衝突判定手段による衝突可能性についての再判定の結果、
衝突の可能性がないと判定された場合には、
第二の工作物形状データを用いて、第一の工作物形状データを更新し、
工作機械部品と工作物とが、
着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
仮の衝突発生時点に対応する工具移動パラメータを、
第二の工具移動パラメータとして記録し、
工具移動パラメータ比較手段を動作させ、
第一の工具移動パラメータに対応する時点と、
第二の工具移動パラメータに対応する時点との前後関係を比較し、
第二の工具移動パラメータに対応する時点が、
第一の工具移動パラメータに対応する時点より後でないと、
判定された場合には、
工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、            第二の工具移動パラメータに対応する時点が、
第一の工具移動パラメータに対応する時点より後であると、
判定された場合には、
第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、
第一の工具移動パラメータに対応する時点に続く区間を
新たな着目区間として選択し、
最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返すことを特徴とする衝突判定装置。 
【請求項７】
一つの着目区間の判定を終えた場合に、新たな区間に着目し判定を繰り返すことで、
加工プログラム全体での衝突判定を行う
ことを特徴とする請求項４〜６のいずれか１項に記載の衝突判定装置。 
【請求項８】
工作物形状全体で判定を行わず、工作物形状の部分毎に判定を行う
ことを特徴とする請求項４〜７のいずれか１項に記載の衝突判定装置。 
【請求項９】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定方法であり、  第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、  第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第一の判定の結果、衝突の可能性がある場合には、
工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、
第二の移動データの工具移動による工作物の形状変形を行い、
形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、
第二の判定の結果、衝突の可能性がない場合には、
衝突時刻を新たな移動開始時刻として、上記第一の移動データの作成に戻り、上記一連の処理を繰り返し、
第二の判定の結果、衝突の可能性がある場合には、衝突ありとする、
ことを特徴とする衝突判定方法。 
【請求項１０】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定方法であり、  工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、
第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、  第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第一の判定の結果、衝突の可能性がある場合には、
工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、
第二の移動データの工具移動による工作物の形状変形を行い、
工具移動開始時刻から工具移動終了時刻までの間の第三の移動データを作成し、
第三の移動データに基づいて上記形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、
第二の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第二の判定の結果、衝突の可能性がある場合には、
工作物形状変形前の衝突時刻と工作物形状変形後の衝突時刻とを比較し、
衝突時刻が異なる場合には、工作物形状変形前の衝突時刻を新たな移動開始時刻として、上記第二の移動データの作成に戻り、上記一連の処理を繰り返し、
衝突時刻が同じ場合には、衝突ありとする
ことを特徴とする衝突判定方法。 
【請求項１１】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定方法であり、  工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、
工具移動終了時刻での工作物形状を求め、同時に工作物形状の部分毎の変形開始時刻と変形終了時刻とを求め、
第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、  第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第一の判定の結果、衝突の可能性がある場合には、
衝突時刻と衝突箇所での変形開始時刻とを比較し、
衝突時刻が工作物の変形開始時刻より前の場合に衝突ありとし、
衝突時刻が工作物の変形開始時刻より後で変形終了時刻より前の場合に、
工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、
第二の移動データの工具移動による工作物の形状変形を行い、
工作物変形前の衝突時刻を記録し、
工具移動開始時刻から工具移動終了時刻までの間の第三の移動データを作成し、
第三の移動データに基づいて上記形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、
第二の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第二の判定の結果、衝突の可能性がある場合には、
工作物形状変形前の衝突時刻と工作物形状変形後の衝突時刻とを比較し、
衝突時刻が異なる場合には、
工作物変形前の衝突時刻を新たな移動開始時刻として、上記第二の移動データの作成に戻り、上記一連の処理を繰り返し、
衝突時刻が同じ場合には、衝突ありとし、
衝突時刻が工作物の変形終了時刻より後の場合に、
工具移動終了時刻での工作物形状を用いて工作機械部品と工作物とが衝突するか第三の判定を行い、
第三の判定の結果、衝突の可能性がない場合には、衝突なしとし、
第三の判定の結果、衝突の可能性がある場合には、衝突ありとする
ことを特徴とする衝突判定方法。 
【請求項１２】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置用プログラムであり、
工作物の形状を表現する工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する工具移動パラメータと、を読み書き可能とされ、
工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手順と、
与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに、衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手順と、
与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新する工作物形状変形手順と、
工具移動区間抽出手順と仮の衝突判定手順と工作物形状変形手順とを所定の順序で動作させる衝突判定制御手順と、を有し、
衝突判定制御手順は、
工具移動区間抽出手順を動作させて、
工具移動データから、指定の区間を抽出して着目区間として選択し、
仮の衝突判定手順を動作させて、
着目区間の開始時点の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、  仮の衝突判定手順による衝突の可能性の判定の結果、
衝突の可能性がないと判定された場合には、
工作物形状変形手順を動作させて、
着目区間の工具移動に基づき工作物形状データを更新し、
工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
工具移動区間抽出手順を動作させて、
着目区間の開始から仮の衝突発生時点までの区間を抽出し、
工作物形状変形手順を動作させて、
該抽出区間の工具移動に基づき工作物形状データを更新した上で、
仮の衝突判定手順を動作させて、
更新後の仮の衝突発生時点の工作物形状データを用いて、
該抽出区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、
仮の衝突判定手順による衝突可能性についての再判定の結果、
衝突の可能性があると判定された場合には、
工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、
衝突の可能性がないと判定された場合には、
該抽出区間の仮の衝突判定時点に続く区間を新たな着目区間として選択し、
最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返す、
ことを特徴とするコンピュータで実行可能とされた衝突判定装置用プログラム。 
【請求項１３】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置用プログラムであり、
工作物の形状を表現する工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する第一、第二の工具移動パラメータと、を読み書き可能とされ、
工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手順と、
与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手順と、
与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新する工作物形状変形手順と、
工具移動動作中のどの時点に対応するかを表現する二つの工具移動パラメータを比較して、工具移動中の前後関係を判定する工具移動パラメータ比較手順と、
工具移動区間抽出手順と仮の衝突判定手順と工作物形状変形手順と工具移動パラメータ比較手順とを所定の順序で動作させる衝突判定制御手順と、を有し、
衝突判定制御手順は、
工具移動区間抽出手順を動作させて、
工具移動データから、指定の区間を抽出して着目区間として選択し、
仮の衝突判定手順を動作させて、
着目区間の開始時点の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、  仮の衝突判定手順による衝突の可能性の判定の結果、
衝突の可能性がないと判定された場合には、
工作物形状変形手順を動作させて、
着目区間の工具移動に基づき工作物形状データを更新し、
工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
仮の衝突発生時点に対応する工具移動パラメータを、
第一の工具移動パラメータとして記録し、
工具移動区間抽出手順を動作させて、
着目区間の開始から仮の衝突発生時点までの区間を抽出し、
工作物形状変形手順を動作させて、
該抽出区間の工具移動に基づき工作物形状データを更新した上で、
工具移動区間抽出手順を動作させて、
着目区間の開始から着目区間の終了までの区間を抽出し、
仮の衝突判定手順を動作させて、
更新後の仮の衝突発生時点の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、
仮の衝突判定手順による衝突可能性についての再判定の結果、
衝突の可能性がないと判定された場合には、
工作物形状変形手順を動作させて、
着目区間の工具移動に基づき工作物形状データを更新し、
工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、      衝突の可能性があると判定された場合には、
仮の衝突発生時点に対応する工具移動パラメータを、
第二の工具移動パラメータとして記録し、
工具移動パラメータ比較手順を動作させ、
第一の工具移動パラメータに対応する時点と、
第二の工具移動パラメータに対応する時点との前後関係を比較し、
第二の工具移動パラメータに対応する時点が、
第一の工具移動パラメータに対応する時点より後でないと判定された場合には、          工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、
第二の工具移動パラメータに対応する時点が、
第一の工具移動パラメータに対応する時点より後であると判定された場合には、          第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、
第一の工具移動パラメータに対応する時点に続く区間を新たな着目区間として選択し、
最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返す、
ことを特徴とするコンピュータで実行可能とされた衝突判定装置用プログラム。 
【請求項１４】
刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置用プログラムであり、
工作物の形状を表現する第一の工作物形状データと、工作物の形状を表現する第二の工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する第一から第四の工具移動パラメータと、を読み書き可能とされ、
工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手順と、
与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手順と、
与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新し、同時に、工作物形状の変形開始時刻・変形終了時刻を算出する工作物形状変形手順と、
工具移動動作中のどの時点に対応するかを表現する二つの工具移動パラメータを比較して、工具移動中の前後関係を判定する工具移動パラメータ比較手順と、
工具移動区間抽出手順と仮の衝突判定手順と工作物形状変形手順と工具移動パラメータ比較手順とを所定の順序で動作させる衝突判定制御手順と、を有し、
衝突判定制御手順は、
工具移動区間抽出手順を動作させて、
工具移動データから、指定の区間を抽出して着目区間として選択し、
工作物形状変形手順を動作させて、
着目区間の工具移動に基づき第二の工作物形状データを更新した上で、
第三の工具移動パラメータに、
工作物変形開始時刻に対応する工具移動パラメータを記録し、
第四の工具移動パラメータに、
工作物変形終了時刻に対応する工具移動パラメータを記録し、
仮の衝突判定手順を動作させて、
着目区間の開始時点の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、
仮の衝突判定手順による衝突の可能性の判定の結果、
衝突の可能性がないと判定された場合には、
着目区間の工具移動に基づき既に作成されている第二の工作物形状データを用いて、    第一の工作物形状データを更新した上で、
工作機械部品と工作物とが、
着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
仮の衝突発生時点に対応する工具移動パラメータを、
第一の工具移動パラメータとして記録し、
工具移動パラメータ比較手順を動作させ、
第一の工具移動パラメータに対応する時点と、
第三の工具移動パラメータに対応する時点との前後関係を比較し、
第一の工具移動パラメータに対応する時点が、
第三の工具移動パラメータに対応する時点より前と判定された場合には、
工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、
第一の工具移動パラメータに対応する時点が、
第三の工具移動パラメータに対応する時点より後と判定された場合には、
工具移動パラメータ比較手順を動作させ、
第一の工具移動パラメータに対応する時点と、
第四の工具移動パラメータに対応する時点との前後関係を比較し、
第一の工具移動パラメータに対応する時点が、
第四の工具移動パラメータに対応する時点より後と判定された場合には、
仮の衝突判定手順を動作させて、
第二の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の
衝突の可能性を判定し、
衝突の可能性がないと判定された場合には、
第二の工作物形状データを用いて、第一の工作物形状データを更新し、
工作機械部品と工作物とが、
着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、
第一の工具移動パラメータに対応する時点が、
第四の工具移動パラメータに対応する時点より前と判定された場合には、
工具移動区間抽出手順を動作させて、
着目区間の開始から仮の衝突発生時点までの区間を抽出し、
工作物形状変形手順を動作させて、
該抽出区間の工具移動に基づき第一の工作物形状データを更新した上で、
工具移動区間抽出手順を動作させて、
着目区間の開始から着目区間の終了までの区間を抽出し、
仮の衝突判定手順を動作させて、
更新後の仮の衝突発生時点の第一の工作物形状データを用いて、
着目区間の工具移動動作中の工作機械部品と工作物との間の
衝突の可能性を再判定し、
仮の衝突判定手順による衝突可能性についての再判定の結果、
衝突の可能性がないと判定された場合には、
第二の工作物形状データを用いて、第一の工作物形状データを更新し、
工作機械部品と工作物とが、
着目区間では衝突しないとして全体の判定処理を終え、
衝突の可能性があると判定された場合には、
仮の衝突発生時点に対応する工具移動パラメータを、
第二の工具移動パラメータとして記録し、
工具移動パラメータ比較手順を動作させ、
第一の工具移動パラメータに対応する時点と、
第二の工具移動パラメータに対応する時点との前後関係を比較し、
第二の工具移動パラメータに対応する時点が、
第一の工具移動パラメータに対応する時点より後でないと
判定された場合には、
工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、            第二の工具移動パラメータに対応する時点が、
第一の工具移動パラメータに対応する時点より後であると
判定された場合には、
第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、
第一の工具移動パラメータに対応する時点に続く区間を
新たな着目区間として選択し、
最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返す
ことを特徴とするコンピュータで実行可能とされた衝突判定装置用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ上での模擬によって二次元または三次元の空間を移動する物体間の衝突の有無を判定する装置およびプログラムに関するもので、工作機械による切削加工などの除去加工のシミュレーションをして、工作機械部品と工作物との間の衝突を検出する衝突判定装置、衝突判定方法および衝突判定装置用プログラムに関するものである。
【背景技術】
【０００２】
工作機械による切削加工などの、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具の刃先が工作物と接触することは問題ではないが、それ以外の部品、例えば工具のシャンク部や工具ホルダなど、が工作物と衝突すると、加工の結果生産される製品が不良品となってしまったり、工作機械が破損してしまったりすることがある。そこで、工作機械への動作指令である加工プログラムを事前にシミュレーションすることにより工作機械部品と工作物との衝突が発生するかを検証することが、広く行われている。
【０００３】
このようなシミュレーションにおいては、工作物の形状が加工の進行と共に変化するので、衝突を正確に検知するためには、工作物形状の変化を考慮する対策が必要である。そのような対策を実現した装置として、例えば特許文献１に記載されたものがある。
【０００４】
特許文献１に記載された衝突防止装置によれば、数値制御装置からの移動指令により各軸のモータを駆動して三次元自由曲面を有するワークを切削する工作機械において、センサにてワーク形状を計測しこの形状の座標を記憶するとともに、工具の形状と干渉を検知すべき機械の部位の形状とを記憶して、数値制御装置からの１ブロックの移動指令をもとにしたワークと工具及び干渉を検知すべき機械の部位の移動によりワーク形状と工具及び機械部位とが干渉するか否かをチェックする工程において、切削によるワーク形状の変化に伴い記憶されたワーク形状を更新することを行う。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第２８９５３１６号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、後述する理由のため、特許文献１に開示された技術では、工作物形状のうち、移動指令の途中で除去される箇所については、衝突を正確に判定できないという課題があった。
【０００７】
図１６において、工具移動前の素材形状１０３から、工具（図では刃先形状１０２）との干渉箇所１０６を除いて、工具移動後の素材形状１０８を得るので、工具移動途中の素材形状は不明である。このため、衝突を検知すべき工作機械部品（図ではホルダ形状１０１）と工作物との衝突を判定するには、工具移動前の素材形状１０３もしくは工具移動後の素材形状１０８を用いることになる。図１７に示すように、工具移動前の素材形状１０３を用いて衝突を判定する時は、本来はホルダ形状１０１が通過する前に刃先形状１０２が切削除去している、ホルダより先に接触する箇所１０９において、ホルダ形状１０１と工作物との干渉を過剰検出する可能性がある。図１８に示すように、工具移動後の素材形状１０８を用いて衝突を判定する時は、ホルダ形状１０１が刃先形状１０２より先に接触する箇所１１１で、衝突を見落とす可能性がある。つまり、移動前形状を用いる場合でも移動後形状を用いる場合でも、移動指令の途中で除去される箇所については、衝突を正確に判定できないといった問題があった。
【０００８】
上記例を始め、他の従来手法においても、工具移動途中の形状を得ることが出来ないために、移動指令の途中で除去される箇所について衝突を正確に判定することは困難であった。また、図１７および図１８の不具合が発生する確率を抑えるために、与えられた移動指令の全区間を移動させずに、移動区間を細かく区切り、それぞれで工作物形状の更新と衝突検知を行うことも可能だが、その場合、計算時間が大幅に増大してしまい、実用的ではなくなるといった問題もあった。
【０００９】
本発明は、上記に鑑みてなされたもので、工作物形状のうち、移動指令の途中で変形されるような箇所においても、過剰検出や衝突の見落としをせずに、正確な衝突判定を行うことのできる衝突判定装置、衝突判定方法および衝突判定装置用プログラムを提供することを目的としている。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、この発明に係る衝突判定装置は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、第一の判定の結果、衝突の可能性がある場合には、工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、第二の移動データの工具移動による工作物の形状変形を行い、形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、第二の判定の結果、衝突の可能性がない場合には、衝突時刻を新たな移動開始時刻として、上記第一の移動データの作成に戻り、上記一連の処理を繰り返し、第二の判定の結果、衝突の可能性がある場合には、衝突ありとすることを特徴とする。
【００１１】
この発明に係る他の衝突判定装置は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、第一の判定の結果、衝突の可能性がある場合には、工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、第二の移動データの工具移動による工作物の形状変形を行い、工具移動開始時刻から工具移動終了時刻までの間の第三の移動データを作成し、第三の移動データに基づいて上記形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、第二の判定の結果、衝突の可能性がない場合には、衝突なしとし、第二の判定の結果、衝突の可能性がある場合には、工作物形状変形前の衝突時刻と工作物形状変形後の衝突時刻とを比較し、衝突時刻が異なる場合には、工作物形状変形前の衝突時刻を新たな移動開始時刻として、上記第二の移動データの作成に戻り、上記一連の処理を繰り返し、衝突時刻が同じ場合には、衝突ありとすることを特徴とする。
【００１２】
この発明に係るさらに他の衝突判定装置は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、工具移動終了時刻での工作物形状を求め、同時に工作物形状の部分毎の変形開始時刻と変形終了時刻とを求め、第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、第一の判定の結果、衝突の可能性がある場合には、衝突時刻と衝突箇所での変形開始時刻とを比較し、衝突時刻が工作物の変形開始時刻より前の場合に衝突ありとし、衝突時刻が工作物の変形開始時刻より後で変形終了時刻より前の場合に、工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、第二の移動データの工具移動による工作物の形状変形を行い、工作物変形前の衝突時刻を記録し工具移動開始時刻から工具移動終了時刻までの間の第三の移動データを作成し、第三の移動データに基づいて上記形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、第二の判定の結果、衝突の可能性がない場合には、衝突なしとし、第二の判定の結果、衝突の可能性がある場合には、工作物形状変形前の衝突時刻と工作物形状変形後の衝突時刻とを比較し、衝突時刻が異なる場合には、工作物変形前の衝突時刻を新たな移動開始時刻として、上記第二の移動データの作成に戻り、上記一連の処理を繰り返し、衝突時刻が同じ場合には、衝突ありとし衝突時刻が工作物の変形終了時刻より後の場合に工具移動終了時刻での工作物形状を用いて工作機械部品と工作物とが衝突するか第三の判定を行い、第三の判定の結果、衝突の可能性がない場合には、衝突なしとし、第三の判定の結果、衝突の可能性がある場合には、衝突ありとすることを特徴とする。
【００１３】
この発明に係るさらに他の衝突判定装置は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、工作物の形状を表現する工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する工具移動パラメータとを記憶し、工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手段と、与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを動作させて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに、衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手段と、与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新する工作物形状変形手段と、工具移動区間抽出手段と仮の衝突判定手段と工作物形状変形手段とを所定の順序で動作させる衝突判定制御手段と、を備え、衝突判定制御手段は、工具移動区間抽出手段を動作させて、工具移動データから、指定の区間を抽出して着目区間として選択し、仮の衝突判定手段を動作させて、着目区間の開始時点の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、仮の衝突判定手段による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形手段を動作させて、着目区間の工具移動に基づき工作物形状データを更新し、工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、工具移動区間抽出手段を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し、工作物形状変形手段を動作させて、該抽出区間の工具移動に基づき工作物形状データを更新した上で、仮の衝突判定手段を動作させて、更新後の仮の衝突発生時点の工作物形状データを用いて、該抽出区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、仮の衝突判定手段による衝突可能性についての再判定の結果、衝突の可能性があると判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、衝突の可能性がないと判定された場合には、該抽出区間の仮の衝突判定時点に続く区間を新たな着目区間として選択し、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返すことを特徴とする。
【００１４】
この発明に係るさらに他の衝突判定装置は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、工作物の形状を表現する工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する第一、第二の工具移動パラメータとを記憶し、工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手段と、与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手段と、与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新する工作物形状変形手段と、工具移動動作中のどの時点に対応するかを表現する二つの工具移動パラメータを比較して、工具移動中の前後関係を判定する工具移動パラメータ比較手段と、工具移動区間抽出手段と仮の衝突判定手段と工作物形状変形手段と工具移動パラメータ比較手段とを所定の順序で動作させる衝突判定制御手段と、を備え、衝突判定制御手段は、工具移動区間抽出手段を動作させて、工具移動データから、指定の区間を抽出して着目区間として選択し、仮の衝突判定手段を動作させて、着目区間の開始時点の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、仮の衝突判定手段による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形手段を動作させて、着目区間の工具移動に基づき工作物形状データを更新し、工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第一の工具移動パラメータとして記録し、工具移動区間抽出手段を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し、工作物形状変形手段を動作させて、該抽出区間の工具移動に基づき工作物形状データを更新した上で、工具移動区間抽出手段を動作させて、着目区間の開始から着目区間の終了までの区間を抽出し、仮の衝突判定手段を動作させて、更新後の仮の衝突発生時点の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、仮の衝突判定手段による衝突可能性についての再判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形手段を動作させて、着目区間の工具移動に基づき工作物形状データを更新し、工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第二の工具移動パラメータとして記録し、工具移動パラメータ比較手段を動作させ、第一の工具移動パラメータに対応する時点と、第二の工具移動パラメータに対応する時点との前後関係を比較し第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後でないと判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後であると判定された場合には、第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、第一の工具移動パラメータに対応する時点に続く区間を新たな着目区間として選択し、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返すことを特徴とする。
【００１５】
この発明に係るさらに他の衝突判定装置は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置であり、工作物の形状を表現する第一の工作物形状データと、工作物の形状を表現する第二の工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する第一から第四の工具移動パラメータとを記憶し、工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手段と、与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手段と、与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新し、同時に、工作物形状の変形開始時刻・変形終了時刻を算出する工作物形状変形手段と、工具移動動作中のどの時点に対応するかを表現する二つの工具移動パラメータを比較して、工具移動中の前後関係を判定する工具移動パラメータ比較手段と、工具移動区間抽出手段と仮の衝突判定手段と工作物形状変形手段と工具移動パラメータ比較手段とを所定の順序で動作させる衝突判定制御手段と、を備え、衝突判定制御手段は、工具移動区間抽出手段を動作させて、工具移動データから、指定の区間を抽出して着目区間として選択し、工作物形状変形手段を動作させて、着目区間の工具移動に基づき第二の工作物形状データを更新した上で、第三の工具移動パラメータに、工作物変形開始時刻に対応する工具移動パラメータを記録し、第四の工具移動パラメータに、工作物変形終了時刻に対応する工具移動パラメータを記録し、仮の衝突判定手段を動作させて、着目区間の開始時点の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、仮の衝突判定手段による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、着目区間の工具移動に基づき既に作成されている第二の工作物形状データを用いて、第一の工作物形状データを更新した上で、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第一の工具移動パラメータとして記録し、工具移動パラメータ比較手段を動作させ、第一の工具移動パラメータに対応する時点と、第三の工具移動パラメータに対応する時点との前後関係を比較し、第一の工具移動パラメータに対応する時点が、第三の工具移動パラメータに対応する時点より後と判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、第一の工具移動パラメータに対応する時点が、第三の工具移動パラメータに対応する時点より前と判定された場合には、工具移動パラメータ比較手段を動作させ、第一の工具移動パラメータに対応する時点と、第四の工具移動パラメータに対応する時点との前後関係を比較し、第一の工具移動パラメータに対応する時点が、第四の工具移動パラメータに対応する時点より後と判定された場合には、仮の衝突判定手段を動作させて、第二の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、衝突の可能性がないと判定された場合には、第二の工作物形状データを用いて、第一の工作物形状データを更新し、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、第一の工具移動パラメータに対応する時点が、第四の工具移動パラメータに対応する時点より前と判定された場合には、工具移動区間抽出手段を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し、工作物形状変形手段を動作させて、該抽出区間の工具移動に基づき第一の工作物形状データを更新した上で、工具移動区間抽出手段を動作させて、着目区間の開始から着目区間の終了までの区間を抽出し、仮の衝突判定手段を動作させて、更新後の仮の衝突発生時点の第一の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、仮の衝突判定手段による衝突可能性についての再判定の結果、衝突の可能性がないと判定された場合には、第二の工作物形状データを用いて、第一の工作物形状データを更新し、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第二の工具移動パラメータとして記録し、工具移動パラメータ比較手段を動作させ、第一の工具移動パラメータに対応する時点と、第二の工具移動パラメータに対応する時点との前後関係を比較し第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後でないと判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後であると判定された場合には、第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、第一の工具移動パラメータに対応する時点に続く区間を新たな着目区間として選択し、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返すことを特徴とする。
【００１６】
また、この発明に係る衝突判定方法は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定方法であり、第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、第一の判定の結果、衝突の可能性がある場合には、工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、第二の移動データの工具移動による工作物の形状変形を行い、形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、第二の判定の結果、衝突の可能性がない場合には、衝突時刻を新たな移動開始時刻として、上記第一の移動データの作成に戻り、上記一連の処理を繰り返し、第二の判定の結果、衝突の可能性がある場合には、衝突ありとすることを特徴とする。
【００１７】
また、この発明に係る他の衝突判定方法は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定方法であり、工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、第一の判定の結果、衝突の可能性がある場合には、工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、第二の移動データの工具移動による工作物の形状変形を行い、工具移動開始時刻から工具移動終了時刻までの間の第三の移動データを作成し、第三の移動データに基づいて上記形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、第二の判定の結果、衝突の可能性がない場合には、衝突なしとし、第二の判定の結果、衝突の可能性がある場合には、工作物形状変形前の衝突時刻と工作物形状変形後の衝突時刻とを比較し、衝突時刻が異なる場合には、工作物形状変形前の衝突時刻を新たな移動開始時刻として、上記第二の移動データの作成に戻り、上記一連の処理を繰り返し、衝突時刻が同じ場合には、衝突ありとすることを特徴とする。
【００１８】
また、この発明に係るさらに他の衝突判定方法は、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定方法であり、工具移動開始時刻から工具移動終了時刻までの間の第一の移動データを作成し、工具移動終了時刻での工作物形状を求め、同時に工作物形状の部分毎の変形開始時刻と変形終了時刻とを求め、第一の移動データに基づいて工作物と工作機械部品とが衝突するか第一の判定を行い、第一の判定の結果、衝突の可能性がない場合には、衝突なしとし、第一の判定の結果、衝突の可能性がある場合には、衝突時刻と衝突箇所での変形開始時刻とを比較し、衝突時刻が工作物の変形開始時刻より前の場合に衝突ありとし、衝突時刻が工作物の変形開始時刻より後で変形終了時刻より前の場合に、工具移動開始時刻から衝突時刻までの間の第二の移動データを作成し、第二の移動データの工具移動による工作物の形状変形を行い、工作物変形前の衝突時刻を記録し工具移動開始時刻から工具移動終了時刻までの間の第三の移動データを作成し、第三の移動データに基づいて上記形状変形した工作物と工作機械部品とが衝突するか第二の判定を行い、第二の判定の結果、衝突の可能性がない場合には、衝突なしとし、第二の判定の結果、衝突の可能性がある場合には、工作物形状変形前の衝突時刻と工作物形状変形後の衝突時刻とを比較し、衝突時刻が異なる場合には、工作物変形前の衝突時刻を新たな移動開始時刻として、上記第二の移動データの作成に戻り、上記一連の処理を繰り返し、衝突時刻が同じ場合には、衝突ありとし衝突時刻が工作物の変形終了時刻より後の場合に工具移動終了時刻での工作物形状を用いて工作機械部品と工作物とが衝突するか第三の判定を行い、第三の判定の結果、衝突の可能性がない場合には、衝突なしとし、第三の判定の結果、衝突の可能性がある場合には、衝突ありとすることを特徴とする。
【００１９】
また、この発明に係る衝突判定装置用プログラムは、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置用プログラムであり、工作物の形状を表現する工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する工具移動パラメータと、を読み書き可能とされ、工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手順と、与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに、衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手順と、与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新する工作物形状変形手順と、工具移動区間抽出手順と仮の衝突判定手順と工作物形状変形手順とを所定の順序で動作させる衝突判定制御手順と、を有し、衝突判定制御手順は、工具移動区間抽出手順を動作させて、工具移動データから、指定の区間を抽出して着目区間として選択し、仮の衝突判定手順を動作させて、着目区間の開始時点の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、仮の衝突判定手順による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形手順を動作させて、着目区間の工具移動に基づき工作物形状データを更新し、工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、工具移動区間抽出手順を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し、工作物形状変形手順を動作させて、該抽出区間の工具移動に基づき工作物形状データを更新した上で、仮の衝突判定手順を動作させて、更新後の仮の衝突発生時点の工作物形状データを用いて、該抽出区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、仮の衝突判定手順による衝突可能性についての再判定の結果、衝突の可能性があると判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、衝突の可能性がないと判定された場合には、該抽出区間の仮の衝突判定時点に続く区間を新たな着目区間として選択し、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返すことを特徴とするコンピュータで実行可能とされている。
【００２０】
また、この発明に係る他の衝突判定装置用プログラムは、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置用プログラムであり、工作物の形状を表現する工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する第一、第二の工具移動パラメータと、を読み書き可能とされ、工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手順と、与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手順と、与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新する工作物形状変形手順と、工具移動動作中のどの時点に対応するかを表現する二つの工具移動パラメータを比較して、工具移動中の前後関係を判定する工具移動パラメータ比較手順と、工具移動区間抽出手順と仮の衝突判定手順と工作物形状変形手順と工具移動パラメータ比較手順とを所定の順序で動作させる衝突判定制御手順と、を有し、衝突判定制御手順は、工具移動区間抽出手順を動作させて、工具移動データから、指定の区間を抽出して着目区間として選択し、仮の衝突判定手順を動作させて、着目区間の開始時点の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、仮の衝突判定手順による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形手順を動作させて、着目区間の工具移動に基づき工作物形状データを更新し、工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第一の工具移動パラメータとして記録し、工具移動区間抽出手順を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し、工作物形状変形手順を動作させて、該抽出区間の工具移動に基づき工作物形状データを更新した上で、工具移動区間抽出手順を動作させて、着目区間の開始から着目区間の終了までの区間を抽出し、仮の衝突判定手順を動作させて、更新後の仮の衝突発生時点の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、仮の衝突判定手順による衝突可能性についての再判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形手順を動作させて、着目区間の工具移動に基づき工作物形状データを更新し、工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第二の工具移動パラメータとして記録し、工具移動パラメータ比較手順を動作させ、第一の工具移動パラメータに対応する時点と、第二の工具移動パラメータに対応する時点との前後関係を比較し第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後でないと判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後であると判定された場合には、第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、第一の工具移動パラメータに対応する時点に続く区間を新たな着目区間として選択し、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返す、ことを特徴としコンピュータで実行可能とされている。
【００２１】
また、この発明に係るさらに他の衝突判定装置用プログラムは、刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置用プログラムであり、工作物の形状を表現する第一の工作物形状データと、工作物の形状を表現する第二の工作物形状データと、工作機械部品の形状を表現する工作機械部品形状データと、工具の形状を表現する工具形状データと、工具の移動を記述した工具移動データと、工具移動データのうちの特定区間の工具移動データと、工具移動動作中のどの時点に対応するかを表現する第一から第四の工具移動パラメータと、を読み書き可能とされ、工具移動データから、指定の区間を特定区間工具移動データとして抽出する工具移動区間抽出手順と、与えられた特定区間工具移動データと工作物形状データと工作機械部品形状データとを用いて、特定区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定するとともに衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する仮の衝突判定手順と、与えられた特定区間工具移動データと工具形状データとを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データを更新し、同時に、工作物形状の変形開始時刻・変形終了時刻を算出する工作物形状変形手順と、工具移動動作中のどの時点に対応するかを表現する二つの工具移動パラメータを比較して、工具移動中の前後関係を判定する工具移動パラメータ比較手順と、工具移動区間抽出手順と仮の衝突判定手順と工作物形状変形手順と工具移動パラメータ比較手順とを所定の順序で動作させる衝突判定制御手順と、を有し、衝突判定制御手順は、工具移動区間抽出手順を動作させて、工具移動データから、指定の区間を抽出して着目区間として選択し、工作物形状変形手順を動作させて、着目区間の工具移動に基づき第二の工作物形状データを更新した上で、第三の工具移動パラメータに、工作物変形開始時刻に対応する工具移動パラメータを記録し、第四の工具移動パラメータに、工作物変形終了時刻に対応する工具移動パラメータを記録し、仮の衝突判定手順を動作させて、着目区間の開始時点の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、仮の衝突判定手順による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、着目区間の工具移動に基づき既に作成されている第二の工作物形状データを用いて、第一の工作物形状データを更新した上で、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第一の工具移動パラメータとして記録し、工具移動パラメータ比較手順を動作させ、第一の工具移動パラメータに対応する時点と、第三の工具移動パラメータに対応する時点との前後関係を比較し、第一の工具移動パラメータに対応する時点が、第三の工具移動パラメータに対応する時点より後と判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、第一の工具移動パラメータに対応する時点が、第三の工具移動パラメータに対応する時点より前と判定された場合には、工具移動パラメータ比較手順を動作させ、第一の工具移動パラメータに対応する時点と、第四の工具移動パラメータに対応する時点との前後関係を比較し、第一の工具移動パラメータに対応する時点が、第四の工具移動パラメータに対応する時点より後と判定された場合には、仮の衝突判定手順を動作させて、第二の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し、衝突の可能性がないと判定された場合には、第二の工作物形状データを用いて、第一の工作物形状データを更新し、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、第一の工具移動パラメータに対応する時点が、第四の工具移動パラメータに対応する時点より前と判定された場合には、工具移動区間抽出手順を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し、工作物形状変形手順を動作させて、該抽出区間の工具移動に基づき第一の工作物形状データを更新した上で、工具移動区間抽出手順を動作させて、着目区間の開始から着目区間の終了までの区間を抽出し、仮の衝突判定手順を動作させて、更新後の仮の衝突発生時点の第一の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定し、仮の衝突判定手順による衝突可能性についての再判定の結果、衝突の可能性がないと判定された場合には、第二の工作物形状データを用いて、第一の工作物形状データを更新し、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第二の工具移動パラメータとして記録し、工具移動パラメータ比較手順を動作させ、第一の工具移動パラメータに対応する時点と、第二の工具移動パラメータに対応する時点との前後関係を比較し第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後でないと判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終え、第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後であると判定された場合には、第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、第一の工具移動パラメータに対応する時点に続く区間を新たな着目区間として選択し、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返すことを特徴としコンピュータで実行可能とされている。
【発明の効果】
【００２２】
本発明によれば、工作物形状のうち移動指令の途中で除去される箇所に対しても、過剰検出や衝突見落としを起こさずに、正確に衝突判定を行うことができるという効果を奏する。
【図面の簡単な説明】
【００２３】
【図１】図１は、実施の形態１による衝突判定装置の構成図である。
【図２】図２は、実施の形態１による衝突判定装置の衝突判定処理手順を示すフローチャートである。
【図３】図３は、二度目の剛体間衝突判定で衝突が検出されなかった場合を説明する図である。
【図４】図４は、二度目の剛体間衝突判定で衝突が検出された場合を説明する図である。
【図５】図５は、実施の形態２による衝突判定装置の構成図である。
【図６】図６は、本実施の形態２による衝突判定装置の衝突判定処理手順を示すフローチャートである。
【図７】図７は、二度目の剛体間衝突判定で衝突が検出されなかった場合を説明する図である。
【図８】図８は、工作物とホルダとの真の衝突が発生しない場合を説明する図である。
【図９】図９は、工作物とホルダとの真の衝突が発生する場合を説明する図である。
【図１０】図１０は、実施の形態３による衝突判定装置の構成図である。
【図１１】図１１は、図１２とともに実施の形態１による衝突判定装置の衝突判定処理手順を示すフローチャートである。
【図１２】図１２は、図１１とともに実施の形態１による衝突判定装置の衝突判定処理手順を示すフローチャートである。
【図１３】図１３は、工作物とホルダとの真の衝突が発生する場合を説明する図である。
【図１４】図１４は、工作物とホルダとの真の衝突が疑われる場合を説明する図である。
【図１５】図１５は、工作物とホルダとの真の衝突が発生する場合を説明する図である。
【図１６】図１６は、従来の素材形状更新の様子を説明する図である。
【図１７】図１７は、従来の衝突判定における誤判定（過剰検出）の様子を説明する図である。
【図１８】図１８は、従来の衝突判定における誤判定（衝突見落とし）の様子を説明する図である。
【発明を実施するための形態】
【００２４】
以下に、本発明にかかる衝突判定装置、衝突判定方法および衝突判定装置用プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００２５】
実施の形態１．
まず、本実施の形態１による衝突判定装置の構成と各部の動作内容について説明する。図１は、本実施の形態１による衝突判定装置の構成図である。衝突判定装置は、衝突判定制御部（衝突判定制御手段、衝突判定制御手順）２０１、工具移動データ抽出部（工具移動区間抽出手段、工具移動区間抽出手順）２０２、工作物形状変形部（工作物形状変形手段、工作物形状変形手順）２０３、剛体間衝突判定部（仮の衝突判定手段、仮の衝突判定手順）２０４の各処理部と、工具移動データ２０５、刃先形状データ（工具形状データ）２０６、ホルダ形状データ（工作機械部品形状データ）２０７、工作物形状データ２０８、特定区間の工具移動データ２０９、工具移動開始時刻２１０、工具移動終了時刻２１１、仮の衝突時刻２１２の各データの格納部とから構成される。なお、これらの構成は、実際にはコンピュータにて実行可能なプログラムと、このプログラムから読み書き可能なデータにて構成されている。
【００２６】
衝突判定制御部２０１は、工具移動データ抽出部２０２、工作物形状変形部２０３、剛体間衝突判定部２０４の各処理部を用いて、着目する工具移動中の工作物とホルダとの間の衝突の有無を判定する。なお、ここでは、工作機械部品として、刃先（刃先）とホルダを考える。刃先は工具移動データ２０５に基づいて移動し、工作物に接触した時には工作物を切削して変形させる。ホルダは工具移動データ２０５に基づいて移動し、工作物に接触した時には工作物と衝突する。
【００２７】
工具移動データ抽出部２０２は、着目する工具移動開始時刻２１０から工具移動終了時刻２１１までの全区間の工具の移動軌跡を記述した工具移動データ２０５から、特定区間（の開始時刻から終了時刻まで）の工具移動データ２０９を抽出する。
【００２８】
工作物形状変形部２０３は、特定区間の工具移動データ２０９に基づいて工具が移動する時に、刃先形状データ２０６が通過する領域を工作物形状データ２０８から取り除くことによって、工作物形状データ２０８が切削後の形状となるよう工作物形状データ２０８を更新する。
【００２９】
剛体間衝突判定部２０４は、工作物形状データ２０８およびホルダ形状データ２０７を剛体として扱い、特定区間の工具移動データ２０９に記述された工具移動中の両剛体間の衝突の有無と、衝突検出時の衝突発生時刻を仮の衝突時刻２１２として出力する。
【００３０】
図２は、本実施の形態１による衝突判定装置の衝突判定処理手順を示すフローチャートである。以下、各処理部の動作の流れについて、図２に示したフローチャートに基づき説明する。
【００３１】
本フローチャートの動作開始時点では、工具移動開始時刻２１０、工具移動終了時刻２１１、および、工具移動データ２０５には、着目する工具移動の開始と終了の時刻、および、その間の工具の移動軌跡データが設定されている。また、工作物形状データ２０８には着目する工具移動の開始時刻における工作物の形状データが格納されている。
【００３２】
まず、衝突判定制御部２０１は、工具移動データ抽出部２０２を動作させて、着目する工具移動の開始から終了までの全区間における工具移動軌跡を、特定区間の工具移動データ２０９にセットする（ステップＳ１０１）。
【００３３】
ついで、剛体間衝突判定部２０４を動作させて、特定区間の工具移動データ２０９に基づき、その間の工作物形状データ２０８とホルダ形状データ２０７との衝突の有無を判定し、衝突があればその発生時刻を仮の衝突時刻２１２にセットする（ステップＳ１０２）。
【００３４】
衝突がなければ、工作物形状変形部２０３を動作させて、工作物形状データ２０８を工具移動終了時点の状態に変形した後（ステップＳ１０３）、「衝突なし」の結果とともに全体の判定処理を終了する。
【００３５】
衝突が発生した場合には、工具移動開始時刻２１０から仮の衝突時刻２１２までを特定区間として抽出し、工具移動データ抽出部２０２を動作させて、その区間の工具移動データ２０５を抽出して特定区間の工具移動データ２０９にセットし（ステップＳ１０４）、工作物形状変形部２０３を動作させて、工作物形状データを仮の衝突時点の状態に変形する（ステップＳ１０５）。そして、剛体間衝突判定部２０４を動作させて、その区間での工作物形状データ２０８とホルダ形状データ２０７との衝突を判定する（ステップＳ１０６）。
【００３６】
この二度目の剛体間衝突判定で再び衝突が検出された場合、「衝突あり」の結果とともに全体の判定処理を終了する。衝突が検出されなかった場合は、仮の衝突時刻２１２を新たな工具移動開始時刻２１０にセットし（ステップＳ１０７）、ステップＳ１０１からの処理を繰り返す。
【００３７】
以上のように、本実施の形態１によれば、工作機械の加工動作中に時々刻々と形状変化する工作物と工作機械部品との間の衝突を正しく判定することができる。
【００３８】
なお、本実施の形態１では、二度目の衝突判定（ステップＳ１０６）において、工具移動開始時刻２１０から仮の衝突時刻２１２までの特定区間の工具移動データ２０９を動作させて、衝突判定を行っているが、その代わりに、仮の衝突時刻２１２の位置でのホルダ形状データ２０７と工作物形状データ２０８との衝突を判定することでも、同じ効果が得られる。
【００３９】
［実施の形態１の補足説明］
本実施の形態１における衝突判定原理について補足説明する。着目する工具移動の開始と終了時刻をｔ０、ｔ１とし、この間の時刻ｔでの工作物形状をＳ（ｔ）で表記することにし、工具移動開始時点の工作物形状Ｓ（ｔ０）を形状変化しない剛体として扱い、区間ｔ０≦ｔ≦ｔ１の工具移動中の時刻ｔｃで剛体形状Ｓ（ｔ０）とホルダ形状とが衝突した場合を考える。ここで、ホルダ形状は時刻によって形状変化しない剛体形状である。
【００４０】
この仮の衝突時刻ｔｃでの工作物形状Ｓ（ｔｃ）を同様に剛体として扱い、区間ｔ０≦ｔ≦ｔｃの工具移動中の剛体形状Ｓ（ｔｃ）とホルダ形状との衝突の有無から、区間ｔ０≦ｔ≦ｔ１の工具移動中の時々刻々形状変化する工作物形状Ｓ（ｔ）とホルダ形状との間の真の衝突に関して以下のことが言える。
【００４１】
二度目の剛体間衝突判定で衝突が検出されなかった場合（図３：二度目の判定で衝突検出なし１１５）は、少なくとも、区間ｔ０≦ｔ≦ｔｃの工具移動中に工作物とホルダとの真の衝突は発生していない。すなわち、本事例は、図３に示すように、仮の衝突時点ｔｃでの衝突検出１１３が、区間ｔ０≦ｔ≦ｔｃの工具移動中に刃先が通過する領域１１４に含まれるので、二度目の衝突判定時には除去済みであり、真の衝突は発生しないことを意味する。
【００４２】
二度目の剛体間衝突判定で衝突が検出された場合（図４：二度目の判定で再び衝突検出あり１１６）は、区間ｔ０≦ｔ≦ｔｃ、したがって、区間ｔ０≦ｔ≦ｔ１の工具移動中に工作物とホルダとの間で真の衝突が発生している。すなわち、本事例は、図４に示すように、仮の衝突時点ｔｃでの衝突検出１１３が、区間ｔ０≦ｔ≦ｔｃの工具移動中に刃先が通過する領域１１４に含まれていないことを意味する。
【００４３】
図３に示す上記第一の事例では、残る区間ｔｃ≦ｔ≦ｔ１での真の衝突の有無については何も言えないが、ｔｃをあらためてｔ０とすれば上記判定原理をそのまま適用できる。
【００４４】
以上のように、本実施の形態１の衝突判定装置においては、工作物の形状を表現する工作物形状データ２０８と、ホルダの形状を表現するホルダ形状データ２０７と、工具の形状を表現する工具形状データ２０６と、工具の移動を記述した工具移動データ２０５と、工具移動データ２０５のうちの特定区間の工具移動データ２０９と、工具移動動作中のどの時点に対応するかを表現する工具移動パラメータとを記憶している。
【００４５】
また、工具移動データ２０５から、指定の区間を特定区間の工具移動データ２０９として抽出する工具移動データ抽出部２０２と、与えられた特定区間の工具移動データ２０９と工作物形状データ２０８とホルダ形状データ２０７とを動作させて、特定区間の工具移動動作中のホルダと工作物との間の衝突の可能性を判定するとともに、衝突の可能性があると判定した場合には衝突の発生が疑われる仮の衝突発生時点に対応する工具移動パラメータを算出する剛体間衝突判定部２０４と、与えられた特定区間の工具移動データ２０９と刃先形状データ２０６とを用いて、工作物の形状から該区間の工具移動により工具形状が通過する領域を除去するように工作物形状データ２０８を更新する工作物形状変形部２０３と、工具移動データ抽出部２０２と剛体間衝突判定部２０４とを所定の順序で動作させる衝突判定制御部２０１とを備えている。
【００４６】
［実施の形態１の詳細な動作］
そして、衝突判定制御部２０１は、工具移動データ抽出部２０２を動作させて、工具移動データ２０５から、指定の区間を抽出して着目区間として選択し（ステップＳ１０１）、剛体間衝突判定部２０４を動作させて、着目区間の開始時点の工作物形状データ２０８を用いて、着目区間の工具移動動作中のホルダと工作物との間の衝突の可能性を判定し（ステップＳ１０２）、剛体間衝突判定部２０４による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形部２０３を動作させて、着目区間の工具移動に基づき工作物形状データ２０８を更新し、ホルダと工作物とが着目区間では衝突しないとして全体の判定処理を終える（ステップＳ１０３）。
【００４７】
一方、衝突の可能性があると判定された場合には、工具移動データ抽出部２０２を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し（ステップＳ１０４）、工作物形状変形部２０３を動作させて、該抽出区間の工具移動に基づき工作物形状データ２０８を更新した上で（ステップＳ１０５）、剛体間衝突判定部２０４を動作させて、更新後の仮の衝突発生時点の工作物形状データ２０８を用いて、該抽出区間の工具移動動作中のホルダと工作物との間の衝突の可能性を再判定する（ステップＳ１０６）。
【００４８】
そして、剛体間衝突判定部２０４による衝突可能性についての再判定の結果、衝突の可能性があると判定された場合には、ホルダと工作物とが加工中に衝突するとして全体の判定処理を終え、衝突の可能性がないと判定された場合には、抽出区間の仮の衝突判定時点に続く区間を新たな着目区間として選択し（ステップＳ１０７）、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返す。
【００４９】
これにより、剛体間衝突判定部２０４により衝突の判定があると判定された場合には、仮の衝突発生時点までの工作物形状変形を行うことで、工作物形状のうち仮の衝突発生時点までの移動指令の途中で除去される箇所を除去した形状を作成し、その形状を用いて再び衝突を判定するので、工作物形状のうち移動指令の途中で除去される箇所に対しても、過剰検出や衝突見落としを起こさずに、正確に衝突判定を行うことが可能である。
【００５０】
なお、本実施の形態においては、工具移動動作中のどの時点に対応するかを表現する工具移動パラメータとして、時刻（時間）を用いているが、工具移動動作中のどの時点に対応するかを表現するものとしては、位置（移動開始地点からの距離）や、比率（移動距離に対して移動が完了した部分のパーセンテージ）などもよい。
【００５１】
また、工具を移動させて工作物の一部を除去する材料除去加工においては、実際には工具が移動し工作物が停止している場合、実際には工作物が移動し工具が停止している場合、工具と工作物の両方が移動する場合などがあるが、このとき「工具と共に移動する工作機械部品」とは、本実施の形態１のホルダや工具周囲の機械部品であり、工具に伴い移動する機械の部分のことである。
【００５２】
実施の形態２．
まず、本実施の形態２による衝突判定装置の構成と各部の動作内容について説明する。図５は、本実施の形態２による衝突判定装置の構成図である。衝突判定装置は、衝突判定制御部（衝突判定制御手段、衝突判定制御手順）３０１、工具移動データ抽出部（工具移動区間抽出手段、工具移動区間抽出手順）２０２、工作物形状変形部（工作物形状変形手段、工作物形状変形手順）２０３、剛体間衝突判定部（仮の衝突判定手段、仮の衝突判定手順）２０４、時刻比較部（工具移動パラメータ比較手段、工具移動パラメータ比較手順）３０２の各処理部と、工具移動データ２０５、刃先形状データ（工具形状データ）２０６、ホルダ形状データ（工作機械部品形状データ）２０７、工作物形状データ（工具形状データ）２０８、特定区間の工具移動データ２０９、工具移動開始時刻２１０、工具移動終了時刻２１１、第一の仮の衝突時刻３０３、第二の仮の衝突時刻３０４の各データの格納部とから構成される。なお、これらの構成は、実際にはコンピュータにて実行可能なプログラムと、このプログラムから読み書き可能なデータにて構成されている。
【００５３】
衝突判定制御部３０１は、工具移動データ抽出部２０２、工作物形状変形部２０３、剛体間衝突判定部２０４、時刻比較部３０２の各処理部を動作させて、着目する工具移動中の工作物とホルダとの間の衝突の有無を判定する。
【００５４】
工具移動データ抽出部２０２は、着目する工具移動開始時刻から工具移動終了時刻までの全区間の工具の移動軌跡を記述した工具移動データ２０５から、特定区間（の開始時刻から終了時刻までの）工具移動データ２０９を抽出する。
【００５５】
工作物形状変形部２０３は、特定区間の工具移動データ２０９に基づき、工具刃先による工作物の切削加工を模擬し、工作物形状データ２０８が切削後の形状となるよう工作物形状データ２０８を更新する。
【００５６】
剛体間衝突判定部２０４は、工作物形状データ２０８およびホルダ形状データ２０７を剛体として扱い、特定区間の工具移動データ２０９に記述された工具移動中の両剛体間の衝突の有無と、衝突検出時の衝突発生時刻を第一の仮の衝突時刻３０３として出力する。
【００５７】
時刻比較部３０２は、第一の仮の衝突時刻３０３と第二の仮の衝突時刻３０４を相互比較し、両事象の前後関係を判定する。ここで、第二の仮の衝突時刻３０４には、一つ前に実施した剛体間衝突判定でセットされた第一の仮の衝突時刻３０３が複製されてセットされている。
【００５８】
図６は、本実施の形態２による衝突判定装置の衝突判定処理手順を示すフローチャートである。以下、各処理部の動作の流れについて、図６に示したフローチャートに基づき説明する。
【００５９】
実施の形態１と同様に、本フローチャートの動作開始時点では、工具移動開始時刻２１０、工具移動終了時刻２１１、および、工具移動データ２０５には、着目する工具移動の開始と終了の時刻、および、その間の工具の移動軌跡データが設定されている。また、工作物形状データ２０８には着目する工具移動の開始時刻の形状データが格納されている。
【００６０】
まず、衝突判定制御部３０１は、工具移動データ抽出部２０２を動作させて、着目する工具移動の開始から終了までの全区間を特定区間とし、その区間の工具移動データ２０５を抽出して特定区間の工具移動データ２０９にセットする（ステップＳ２０１）。
【００６１】
ついで、剛体間衝突判定部２０４を動作させて、特定区間の工具移動データ２０９に基づき、その間の工作物形状データ２０８とホルダ形状データ２０７との衝突の有無を判定し、衝突があればその発生時刻を第一の仮の衝突時刻３０３にセットする（ステップＳ２０２）。
【００６２】
衝突がなければ、工作物形状変形部２０３を動作させて、工作物形状データ２０８を工具移動終了時点の状態に変形した後（ステップＳ２０３）、「衝突なし」の結果とともに全体の判定処理を終了する。
【００６３】
衝突が発生した場合には、工具移動開始時刻２１０から第一の仮の衝突時刻３０３までを特定区間とし、工具移動データ抽出部２０２を動作させて、その区間の工具移動データを抽出して特定区間の工具移動データ２０９にセットし（ステップＳ２０４）、工作物形状変形部２０３を動作させて、工作物形状データ２０８を第一の仮の衝突時点の状態に変形する（ステップＳ２０５）。そして、第一の仮の衝突時刻３０３を第二の仮の衝突時刻３０４にセットする（ステップＳ２０６）。
【００６４】
その後、あらためて、工具移動開始時刻２１０から工具移動終了時刻２１１までを特定区間とし、工具移動データ抽出部２０２を動作させて、その区間の工具移動データを抽出して特定区間の工具移動データ２０９にセットし（ステップＳ２０７）、剛体間衝突判定部２０４を動作させて、その区間での工作物形状データ２０８とホルダ形状データ２０７との衝突を判定する（ステップＳ２０８）。このとき、衝突があれば、その時刻を第一の仮の衝突時刻３０３にセットする。
【００６５】
この二度目の剛体間衝突判定で衝突が検出されなかった場合は、ステップＳ２０３に合流して、工作物形状変形部２０３を動作させて、工作物形状データ２０８を工具移動終了時点の状態に変形し、「衝突なし」の結果とともに全体の判定処理を終了する。
【００６６】
二度目の剛体間衝突判定で再び衝突が検出された場合は、時刻比較部３０２により、第一の仮の衝突時刻３０３と第二の仮の衝突時刻３０４を比較する（ステップＳ２０９）。この段階で、第二の仮の衝突時刻３０４には工具移動開始時刻２１０での工作物形状データ２０８を用いた剛体間衝突判定での衝突時刻が、第一の仮の衝突時刻３０３には第二の仮の衝突時刻３０４での工作物形状データ２０８を用いた二度目の剛体間衝突判定での衝突時刻が、それぞれセットされている。
【００６７】
両時刻が同一である場合には、「衝突あり」の結果とともに全体の判定処理を終了する。
【００６８】
第一の仮の衝突時刻３０３が第二の仮の衝突時刻３０４よりも後である場合には、第一の仮の衝突時刻３０３を新たな工具移動開始時刻２１０にセットし（ステップＳ２１０）、ステップＳ２０４からの処理を繰り返す。
【００６９】
本実施の形態２では、フローチャートに示した動作の流れの繰り返し処理において、
１つの繰り返しにつき１回の剛体間衝突判定を行えばよく、全体ではより少ない回数の剛体間衝突判定で実施の形態１と同じ判定結果を得ることができ、衝突判定に要する時間を短くすることができる。
【００７０】
なお、本実施の形態２では、二度目の衝突判定（ステップＳ２０８）において、工具移動開始時刻２１０から工具移動終了時刻２１１までの特定区間の工具移動データ２０９を動作させて、衝突判定を行っているが、その代わりに、仮の衝突時刻２１２から工具移動終了時刻２１１までの特定区間の工具移動データ２０９を用いた衝突判定でも、同じ効果が得られる。
【００７１】
［実施の形態２の補足説明］
実施の形態２における衝突判定原理について補足説明する。実施の形態１と同様、着目する工具移動の開始と終了の時刻をｔ０、ｔ１とし、この間の時刻ｔでの工作物の形状をＳ（ｔ）で表記することにし、工具移動開始時点での工作物形状Ｓ（ｔ０）を剛体として扱い、区間ｔ０≦ｔ≦ｔ１の工具移動中の時刻ｔｃ１で剛体形状Ｓ（ｔ０）とホルダ形状とが衝突した場合を考える。やはり、ここでもホルダ形状は剛体形状であるとする。
【００７２】
この仮の衝突時刻ｔｃ１の時点の工作物形状Ｓ（ｔｃ１）を同様に剛体として扱い、区間ｔ０≦ｔ≦ｔ１の工具移動中の剛体形状Ｓ（ｔｃ１）とホルダ形状との衝突の有無、および衝突時の衝突時刻ｔｃ２を動作させて、区間ｔ０≦ｔ≦ｔ１の工具移動中の時々刻々形状変化する工作物形状Ｓ（ｔ）とホルダ形状との間の真の衝突に関して以下のことが言える。ここで、二度目の剛体間衝突判定の対象区間が（ｔ０≦ｔ≦ｔｃではなく）ｔ０≦ｔ≦ｔ１であることと剛体間衝突時の衝突時刻ｔｃ２を用いることが実施の形態１の判定原理と異なっている点である。
【００７３】
二度目の剛体間衝突判定で衝突が検出されたなかった場合（図７：二度目の判定で衝突検出なし１１９）は、区間ｔ０≦ｔ≦ｔ１の全区間にわたって、工具移動中の工作物とホルダとの真の衝突は発生していない。すなわち、本事例は、図７に示すように、仮の衝突の時点ｔｃ１での衝突検出１１７が区間ｔ０≦ｔ≦ｔｃの工具移動中に刃先が通過する領域１１８に含まれており、かつ、残りの区間でも衝突が発生していないことを意味する。
【００７４】
ｔｃ１＜ｔｃ２の場合は、少なくとも区間ｔ０≦ｔ＜ｔｃ１では工具移動中の工作物とホルダとの真の衝突は発生しない（図８：：二度目の判定でｔｃ２（＞ｔｃ１）に衝突検出１２０）。すなわち、本事例は、図８に示すように、少なくとも、仮の衝突の時点ｔｃ１での衝突検出１１７が区間ｔ０≦ｔ≦ｔｃ１の工具移動中に刃先が通過する領域（時点ｔｃ１での切削）１１８に含まれていることを意味する。
【００７５】
ｔｃ２＝ｔｃ１の場合は、工作物とホルダとの間で真の衝突が発生している（図９：二度目の判定で時点ｔｃ１に再び衝突検出１２１）。すなわち、本事例は、図９に示すように、仮の衝突の時点ｔｃ１での衝突検出１１７が区間ｔ０≦ｔ≦ｔｃの工具移動中に刃先が通過する領域（時点ｔｃ１での切削）１１８に含まれていないことを意味する。
【００７６】
図８に示す上記の第二の事例では、残る区間ｔｃ１≦ｔ≦ｔ１での真の衝突の有無については何も言えないが、ｔｃ１をあらためてｔ０とすれば上記判定原理をそのまま適用できる。このとき、元のｔｃ２は新たなｔｃ１に対応する。
【００７７】
［実施の形態２の詳細な動作］
本実施の形態２の各処理部の動作の流れについて、図６に示したフローチャートに基づきさらに詳細に説明する。動作が開始すると、衝突判定制御部３０１は、工具移動データ抽出部２０２を動作させて、工具移動データ２０５から、指定の区間を抽出して着目区間として選択し（ステップＳ２０１）、剛体間衝突判定部２０４を動作させて、着目区間の開始時点の工作物形状データ２０８を用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定し（ステップＳ２０２）、剛体間衝突判定部２０４による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形部２０３を動作させて、着目区間の工具移動に基づき工作物形状データ２０８を更新し（ステップＳ２０３）、工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終える。
【００７８】
一方、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第一の工具移動パラメータ（第一の仮の衝突時刻）として記録し、工具移動データ抽出部２０２を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し（ステップＳ２０４）、工作物形状変形部２０３を動作させて、該抽出区間の工具移動に基づき工作物形状データ２０８を更新した上で（ステップＳ２０６）、工具移動データ抽出部２０２を動作させて、着目区間の開始から着目区間の終了までの区間を抽出し（ステップＳ２０７）、剛体間衝突判定部２０４を動作させて、変形後の仮の衝突発生時点の工作物形状データ２０８を用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定をする（ステップＳ２０８）。
【００７９】
剛体間衝突判定部２０４による衝突可能性についての再判定の結果、衝突の可能性がないと判定された場合には、工作物形状変形部２０３を動作させて、着目区間の工具移動に基づき工作物形状データ２０８を更新し（ステップＳ２０３）、工作機械部品と工作物とが着目区間では衝突しないとして全体の判定処理を終える。
【００８０】
一方、衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第二の工具移動パラメータ（第二の仮の衝突時刻）として記録し、時刻比較部３０２を動作させ、第一の工具移動パラメータに対応する時点と、第二の工具移動パラメータに対応する時点との前後関係を比較し（ステップＳ２０９）、第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後でないと判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終える。
【００８１】
一方、第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後であると判定された場合、第二の工具移動パラメータを、第一の工具移動パラメータとして記録して、第一の工具移動パラメータに対応する時点に続く区間を新たな着目区間として選択し（ステップＳ２１０）、ステップＳ２０４に戻り、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返す。
【００８２】
本実施の形態２においては、このような手順にて動作することにより、最初の仮の衝突判定で、仮の衝突が起こると判定がされた場合に、実施の形態１の方法では、着目区間を仮の衝突時間の前後で分割し、仮の衝突判定時点までの区間での衝突判定と仮の衝突判定時点より後の区間での衝突判定を別々に２回行うのに対し、本実施の形態２の方法では、着目区間を分割せずに、１回の衝突判定と工具移動パラメータの比較判定を行うので、計算時間のかかる衝突判定処理の回数を請求項１の方法より減らし、請求項１の方法と同じ判定結果をより短い時間で得ることが出来る。
【００８３】
実施の形態３．
まず、本実施の形態３による衝突判定装置の構成と各部の動作内容について説明する。図１０は、本実施の形態３による衝突判定装置の構成図である。衝突判定装置は、衝突判定制御部（衝突判定制御手段、衝突判定制御手順）４０１、工具移動データ抽出部（工具移動区間抽出手段、工具移動区間抽出手順）２０２、工作物形状変形部（工作物形状変形手段、工作物形状変形手順）４０２、剛体間衝突判定部（仮の衝突判定手段、仮の衝突判定手順）２０４、時刻比較部４０３の各処理部と、工具移動データ２０５、刃先形状データ（工具形状データ）２０６、ホルダ形状データ（工作機械部品形状データ）２０７、工作物形状データ２０８、工具移動終了時刻での工作物形状データ４０４、特定区間の工具移動データ２０９、工具移動開始時刻２１０、工具移動終了時刻２１１、第一の仮の衝突時刻３０３、第二の仮の衝突時刻３０４、工作物変形開始時刻４０５、工作物変形終了時刻４０６の各データの格納部とから構成される。なお、これらの構成は、実際にはコンピュータにて実行可能なプログラムと、このプログラムから読み書き可能なデータにて構成されている。
【００８４】
衝突判定制御部４０１は、工具移動データ抽出部２０２、工作物形状変形部４０２、剛体間衝突判定部２０４、時刻比較部４０３の各処理部を動作させて、着目する工具移動中の工作物とホルダとの間の衝突の有無を判定する。
【００８５】
工具移動データ抽出部２０２は、着目する工具移動の開始時刻から終了時刻までの全区間の工具の移動軌跡を記述した工具移動データ２０５から、特定区間（の開始時刻から終了時刻まで）の工具移動データ２０９を抽出する。
【００８６】
工作物形状変形部４０２は、特定区間の工具移動データ２０９に基づき、工具刃先による工作物の切削加工を模擬し、工作物形状データ２０８が切削後の形状となるよう工作物形状データを更新する。また、同時に工作物変形開始時刻４０５、工作物変形終了時刻４０６を算出する。
【００８７】
剛体間衝突判定部２０４は、工作物形状データ２０８およびホルダ形状データ２０７を剛体として扱い、特定区間の工具移動データ２０９に記述された工具移動中の両剛体間の衝突の有無と、衝突検出時の衝突発生時刻を第一の仮の衝突時刻３０３として出力する。
【００８８】
時刻比較部４０３は、第一の仮の衝突時刻３０３、第二の仮の衝突時刻３０４、工作物の変形開始時刻４０５、変形終了時刻４０６を相互比較し、これら事象の前後関係を判定する。ここで、実施の形態２と同様、第二の仮の衝突時刻３０４には、一つ前に実施した剛体間衝突判定でセットされた第一の仮の衝突時刻３０３が複製されてセットされている。
【００８９】
図１１、図１２は、本実施の形態３による衝突判定装置の衝突判定処理手順を示すフローチャートである。以下、各処理部の動作の流れについて、図１１、図１２に示したフローチャートに基づき説明する。
【００９０】
実施の形態１および２と同様、本フローチャートの動作開始時点では、工具移動開始時刻２１０、工具移動終了時刻２１１、および、工具移動データ２０５には、着目する工具移動の開始と終了の時刻、および、その間の工具の移動軌跡データが設定されている。また、工作物形状データ２０８には着目する工具移動の開始時刻の形状データが格納されている。
【００９１】
まず、衝突判定制御部４０１は、着目する工具移動開始時刻２１０から工具移動終了時刻２１１までの全区間を特定区間とし、工具移動データ抽出部２０２を動作させて、その特定区間の工具移動データを抽出して特定区間の工具移動データ２０９にセットする（ステップＳ３０１）。
【００９２】
次に、工作物形状変形部４０２を動作させて、工具移動終了時刻２１１での工作物形状を求め、工具移動終了時刻での工作物形状データ４０４にセットする（ステップＳ３０２）。この処理の過程で、工作物の変形の開始と終了の時刻も併せて求められ、それぞれ、工作物変形開始時刻４０５、工作物変形終了時刻４０６にセットされる。
【００９３】
ついで、剛体間衝突判定部２０４を動作させて、工作物形状データ２０８とホルダ形状２０７との衝突の有無を判定し、衝突があればその発生時刻を第一の仮の衝突時刻３０３にセットする（ステップＳ３０３）。
【００９４】
衝突がなければ、工作物形状データ２０８をステップＳ３０２で求めておいた工具移動終了時刻２１１の工作物形状データ４０４で置き換え（ステップＳ３０７）、「衝突なし」の結果とともに全体の判定処理を終了する。
【００９５】
衝突があれば、続いて、時刻比較部４０３を動作させて、第一の仮の衝突時刻３０３と工作物変形開始時刻４０５とを比較する（ステップＳ３０４）。第一の仮の衝突時刻３０３が工作物変形開始時刻４０５よりも前である場合には、「衝突あり」の結果とともに全体の判定処理を終了する。
【００９６】
第一の仮の衝突時刻３０３が工作物変形開始時刻４０５より後である場合には、さらに工作物変形終了時刻４０６との比較を行う（ステップＳ３０５）。第一の仮の衝突時刻３０３が工作物変形終了時刻４０６より後である場合には、剛体間衝突判定部２０４を動作させて、工具移動終了時刻での工作物形状データ４０４とホルダ形状２０７との衝突を判定する（ステップＳ３０６）。衝突があれば、「衝突あり」の結果とともに全体の判定処理を終了する。衝突がなければ、工作物形状データ２０８を工具移動終了時刻での工作物形状データ４０４で置き換え（ステップＳ３０７）、「衝突なし」の結果とともに全体の判定処理を終了する。
【００９７】
ステップＳ３０５の時刻比較の結果、第一の仮の衝突判定時刻３０３が工作物変形終了時刻４０６より前である場合には、実施の形態２に示した手順に準じた方法により、工作物とホルダとの真の衝突判定を行う。具体的には、図６に示したフローチャートのステップＳ２０４から処理を始める。ただし、同図で「衝突なし」として終了する直前に行う工作物の変形処理（ステップＳ２０３）はすでに工具移動終了時刻の工作物形状データ４０４が得られていることから、形状データの単なる置き換え処理となる。
【００９８】
本実施の形態３では、フローチャートに示した動作の流れの初期の段階で後半の繰り返し処理が必要となる機会を減らすため、全体ではより少ない繰り返し数で実施の形態２と同じ判定結果を得ることができ、衝突判定処理に要する時間を短くすることができる。
【００９９】
なお、本実施の形態では、工作物変形開始時刻４０５と工作物変形終了時刻４０６を工作物形状全体で求めておき、衝突時刻との比較に使っているが、工作物形状の部分毎に変形開始時刻と変形終了時刻を求めておき、仮の衝突が起こったと判定された際には、衝突発生箇所を含む部分での変形開始時刻と変形終了時刻を仮の衝突時刻との比較に用いることも出来る。この場合、部分毎の変形開始時刻と変形終了時刻の間隔が短くなるため、フローチャートの後半での繰り返し処理が必要になる機会をさらに減らし、衝突判定処理の時間をさらに短縮できる。
【０１００】
さらに、工作物形状変形と衝突判定についても、工作物形状の部分毎に実行することもできる。その場合、仮の衝突時刻までの形状変形が必要な部分でのみ形状変形を実行するため、工作物形状全体に対して形状変形を実行するよりも、衝突判定処理の時間をさらに短縮できる。
【０１０１】
［実施の形態３の補足説明］
実施の形態３における衝突判定原理について補足説明する。実施の形態１及び２と同様に、工具移動の開始と終了の時刻をｔ０、ｔ１とし、この間の時刻ｔでの工作物の形状をＳ（ｔ）で表記し、さらに、区間ｔ０≦ｔ≦ｔ１の工具移動中に工作物の変形が開始した時刻をｔｓ、変形が完了した時刻をｔｅと表記することにし、工作物の変形開始時点での工作物形状Ｓ（ｔｓ）を剛体として扱い、区間ｔ０≦ｔ≦ｔ１の工具移動中の時刻ｔｃで剛体形状Ｓ（ｔｓ）とホルダ形状とが衝突した場合を考える。
【０１０２】
このとき、時刻ｔｓ、ｔｅ、ｔｃの前後関係から、区間ｔ０≦ｔ≦ｔ１の工具移動中の時々刻々形状変化する工作物形状Ｓ（ｔ）とホルダ形状との間の真の衝突に関して以下のことが言える。
【０１０３】
ｔｃ≦ｔｓの場合は、工作物とホルダとの間で真の衝突が発生している。すなわち、図１３に示す本事例のタイムラインのように、時刻ｔｃで衝突検出１２４、時刻ｔｓで切削開始１２２、時刻ｔｅで切削終了１２３であり、仮の衝突時刻ｔｃが形状変形の開始ｔｓ以前であることから、明らかに真の衝突が発生していることを意味する。
【０１０４】
ｔｓ＜ｔｃ≦ｔｅの場合は、工作物の変形途中での工作物とホルダとの真の衝突が疑われる（図１４）。すなわち、本事例のタイムラインを図１４に示すように、時刻ｔｓで切削開始１２２、時刻ｔｃで衝突検出１２４、時刻ｔｅで切削終了１２３であり、仮の衝突時刻ｔｃが形状変形の開始ｔｓと形状変形の終了ｔｅの間であることから、ホルダと工作物の衝突箇所が刃先によってすでに除去されている可能性とまだ除去されていない可能性の両方がある。
【０１０５】
ｔｅ＜ｔｃの場合は、少なくとも区間ｔ０≦ｔ＜ｔｃでは工具移動中の工作物とホルダとの真の衝突は発生していない。すなわち、本事例のタイムラインを図１５に示すように、時刻ｔｓで切削開始１２２、時刻ｔｅで切削終了１２３、時刻ｔｃで衝突検出１２４、二度目の衝突判定を実施１２５であることから、形状変形完了ｔｅ以前に真の衝突がなく、完了後もｔｃの直前までは衝突がなかったことを意味する。上記の第二の事例については、ｔｓ、ｔｅをそれぞれｔ０、ｔ１として、実施の形態１または２の判定原理を適用すれば、工作物とホルダとの真の衝突の有無が判定できる。
【０１０６】
上記の第三の事例では、残る区間ｔｃ≦ｔ≦ｔ１での真の衝突の有無については何も言えないが、衝突発生が疑われる時点では既に工作物の変形は完了していることから、仮の衝突時点までの工作物変形を実行する必要はなく、変形完了時点での工作物形状Ｓ（ｔｅ）を仮の衝突時点での工作物形状の代わりに用いて、ホルダ形状との剛体間衝突判定を行えばよい。
【０１０７】
［実施の形態３の詳細な動作］
本実施の形態３の各処理部の動作の流れについて、図１１、１２に示したフローチャートに基づき更に詳細に説明する。図１１の「開始」から動作が開始すると、本実施の形態３の衝突判定制御部４０１は、各部を以下のように動作させる。すなわち、工具移動データ抽出部２０２を動作させて、工具移動データ２０５から、指定の区間を抽出して着目区間として選択する（ステップＳ３０１）。
【０１０８】
次いで、工作物形状変形部４０２を動作させて、着目区間の工具移動に基づき第二の工作物形状データ２０８を更新した上で、第三の工具移動パラメータに工作物変形開始時刻に対応する工具移動パラメータを記録し、第四の工具移動パラメータに工作物変形終了時刻に対応する工具移動パラメータを記録する（ステップＳ３０２）。そして、図１１の（１）から図１２の（１）へ移動する。
【０１０９】
剛体間衝突判定部２０４を動作させて、着目区間の開始時点の工作物形状データ２０８を用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定する（ステップＳ３０３）。
【０１１０】
剛体間衝突判定部２０４による衝突の可能性の判定の結果、衝突の可能性がないと判定された場合には、図１２の（２）から図１１の（２）へ移動し、着目区間の工具移動に基づき既に作成されている第二の工作物形状データを用いて、第一の工作物形状データ２０８を更新した上で（ステップＳ３０７）、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終える。
【０１１１】
衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第一の工具移動パラメータとして記録し、時刻比較部４０３を動作させ、第一の工具移動パラメータに対応する時点と、第三の工具移動パラメータに対応する時点との前後関係を比較する（ステップＳ３０４）。
【０１１２】
第三の工具移動パラメータに対応する時点（変形開始時刻）が、第一の工具移動パラメータに対応する時点（衝突時刻）より後と判定された場合には、図１１の（３）から図１２の（３）へ移動する。工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終える。
【０１１３】
第一の工具移動パラメータに対応する時点（衝突時刻）が、第三の工具移動パラメータ（変形開始時刻）に対応する時点より後と判定された場合には、時刻比較部４０３を動作させ、第一の工具移動パラメータに対応する時点と、第四の工具移動パラメータに対応する時点との前後関係を比較する（ステップＳ３０５）。
【０１１４】
そして、第一の工具移動パラメータに対応する時点（衝突時刻）が、第四の工具移動パラメータに対応する時点（変形終了時刻）より後と判定された場合には、剛体間衝突判定部２０４を動作させて、第二の工作物形状データを用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を判定しする（ステップＳ３０６）。
【０１１５】
そして、衝突の可能性がないと判定された場合には、図１２の（２）から図１１の（２）へ移動し、第二の工作物形状データを用いて、第一の工作物形状データ２０８を更新し（ステップＳ３０７）、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終え、衝突の可能性があると判定された場合には、図１２の（３）から図１１の（３）へ移動し、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終える。
【０１１６】
一方、ステップＳ３０５にて、第一の工具移動パラメータに対応する時点（衝突時刻）が、第四の工具移動パラメータに対応する時点（変形終了時刻）より前と判定された場合には、図１２の（４）から図１１の（４）へ移動し、工具移動データ抽出部２０２を動作させて、着目区間の開始から仮の衝突発生時点までの区間を抽出し（ステップＳ３０８）、工作物形状変形部４０２を動作させて、該抽出区間の工具移動に基づき第一の工作物形状データ２０８を更新した上（ステップＳ３０９，３１０）で、工具移動データ抽出部２０２を動作させて、着目区間の開始から着目区間の終了までの区間を抽出し（ステップＳ３１１）、剛体間衝突判定部２０４を動作させて、更新後の仮の衝突発生時点の第一の工作物形状データ２０８を用いて、着目区間の工具移動動作中の工作機械部品と工作物との間の衝突の可能性を再判定する（ステップＳ３１２）。
【０１１７】
剛体間衝突判定部２０４による衝突可能性についての再判定の結果、衝突の可能性がないと判定された場合には、第二の工作物形状データを用いて、第一の工作物形状データ２０８を更新し（ステップＳ３０７）、工作機械部品と工作物とが、着目区間では衝突しないとして全体の判定処理を終える。
【０１１８】
衝突の可能性があると判定された場合には、仮の衝突発生時点に対応する工具移動パラメータを、第二の工具移動パラメータとして記録し、時刻比較部４０３を動作させ、第一の工具移動パラメータに対応する時点と、第二の工具移動パラメータに対応する時点との前後関係を比較する（ステップＳ３０３）。
【０１１９】
第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後でないと判定された場合には、工作機械部品と工作物とが加工中に衝突するとして全体の判定処理を終える。
【０１２０】
第二の工具移動パラメータに対応する時点が、第一の工具移動パラメータに対応する時点より後であると判定された場合には、第二の工具移動パラメータを、第一の工具移動パラメータとして記録し、第一の工具移動パラメータに対応する時点に続く区間を新たな着目区間として選択し（ステップＳ３０４）、最初に指定された着目区間での衝突の有無が確定するまで、上記一連の処理を繰り返す。
【０１２１】
本実施の形態３においては、このような手順にて動作することにより、仮の衝突時点が変形開始時点より以前であれば、仮の衝突時点までの工作物変形処理を行った上で再度の衝突判定を行うまでもなく、衝突が発生することが明らかであり、仮の衝突時点が変形終了時点より後であれば、仮の衝突時点での工作物形状が変形終了時点の工作物形状と等しいため、二度目の衝突判定を行うために、仮の衝突時点までの工作物形状変形を実行する必要がないので、実施の形態２より衝突判定や工作物変形処理の回数を抑制でき、また、実施の形態２より短い処理時間で、同じ判定結果を得られる。
【産業上の利用可能性】
【０１２２】
以上のように、本発明にかかる衝突判定装置は、工作機械部品と工作物との間の衝突の有無をシミュレーションする衝突判定装置に有用であり、特に刃先を有する工具を移動させて工作物の一部を除去する材料除去加工において、工具と共に移動する工作機械部品と工作物との間の衝突の有無を判定する衝突判定装置に適している。
【符号の説明】
【０１２３】
１０１  ホルダ形状
１０２  刃先形状
１０３  工具移動前の素材形状
１０４  工具移動方向
１０５  移動前後での刃先通過領域
１０６  刃先との干渉箇所
１０７  切削箇所
１０８  工具移動後の素材形状
１０９  刃先がホルダより先に接触する箇所
１１０  ホルダが刃先より先に接触する箇所
（本来は切削除去されている箇所での衝突検出）
１１１  ホルダが刃先より先に接触する箇所
１１２  本来は素材がまだ残っている箇所での衝突見落とし
１１３  時刻ｔｃで衝突検出
１１４  時刻ｔｃまで切削
１１５  二度目の判定で衝突検出なし
１１６  二度目の判定で衝突検出あり
１１７  時刻ｔｃ１で衝突検出
１１８  時刻ｔｃ１まで切削
１１９  二度目の判定で衝突検出なし
１２０  二度目の判定で時刻ｔｃ２（＞  ｔｃ１）に衝突検出
１２１  二度目の判定で時刻ｔｃ１に再び衝突検出
１２２  時刻ｔｓで切削開始
１２３  時刻ｔｅで切削終了
１２４  時刻ｔｃで衝突検出
１２５  二度目の衝突判定を実施
１２６  時刻ｔｃでの素材形状として時刻ｔｅでの素材形状を利用
２０１  衝突判定制御部（衝突判定制御手段、衝突判定制御手順）
２０２  工具移動データ抽出部（工具移動区間抽出手段、工具移動区間抽出手順）
２０３  工作物形状変形部（工作物形状変形手段、工作物形状変形手順）
２０４  剛体間衝突判定部（仮の衝突判定手段、仮の衝突判定手順）
２０５  工具移動データ
２０６  刃先形状データ（工具形状データ）
２０７  ホルダ形状データ（工作機械部品）
２０８  工作物形状データ
２０９  特定区間の工具移動データ
２１０  工具移動開始時刻
２１１  工具移動終了時刻
２１２  仮の衝突時刻
３０１  衝突判定制御部（衝突判定制御手段、衝突判定制御手順）
３０２  時刻比較部（工具移動パラメータ比較手段、工具移動パラメータ比較手順）
３０３  第一の仮の衝突時刻
３０４  第二の仮の衝突時刻
４０１  衝突判定制御部（衝突判定制御手段、衝突判定制御手順）
４０２  工作物形状変形部（工作物形状変形手段、工作物形状変形手順）
４０３  時刻比較部（工具移動パラメータ比較手段、工具移動パラメータ比較手順）
４０４  工具移動終了時刻での工作物形状データ
４０５  工作物変形開始時刻
４０６  工作物変形終了時刻
【図１】
0005535059.tif 000002
【図２】
0005535059.tif 000003
【図３】
0005535059.tif 000004
【図４】
0005535059.tif 000005
【図５】
0005535059.tif 000006
【図６】
0005535059.tif 000007
【図７】
0005535059.tif 000008
【図８】
0005535059.tif 000009
【図９】
0005535059.tif 000010
【図１０】
0005535059.tif 000011
【図１１】
0005535059.tif 000012
【図１２】
0005535059.tif 000013
【図１３】
0005535059.tif 000014
【図１４】
0005535059.tif 000015
【図１５】
0005535059.tif 000016
【図１６】
0005535059.tif 000017
【図１７】
0005535059.tif 000018
【図１８】
0005535059.tif 000019