(57)【要約】【課題】複数の穴が交差する場合の穴加工用ＮＣプログラム作成装置を提供する。【解決手段】穴領域抽出手段１２０により、製品形状三次元ＣＡＤデータ２０において加工すべき複数の穴領域Ｇ１，Ｇ２，Ｇ３を抽出する。交差穴領域抽出手段１３０により、複数の穴領域Ｇ１，Ｇ２，Ｇ３の中から相互に交差する二つの穴領域Ｇ２，Ｇ３を抽出する。加工工程決定手段１６０により、相互に交差する二つの穴領域Ｇ２，Ｇ３のうち先に加工する一方の穴領域Ｇ２に対して尖ドリルＴ２により加工し、後に加工する他方の穴領域Ｇ３に対して少なくとも交差部を平ドリルＴ３により加工し、交差部より奥側を尖ドリルＴ２により加工するように加工工程を決定する。この加工工程に基づいて、ＮＣプログラム作成手段１７０がＮＣプログラムを作成する。【選択図】図２
2012035332.tif 000002
【特許請求の範囲】
【請求項１】
製品形状三次元ＣＡＤデータを取得して加工すべき複数の穴領域を抽出する穴領域抽出手段と、
複数の前記穴領域の中から相互に交差する複数の前記穴領域を抽出する交差穴領域抽出手段と、
相互に交差する二つの前記穴領域のうち先に加工する一方の前記穴領域に対して尖ドリルにより加工し、後に加工する他方の前記穴領域に対して少なくとも交差部を平ドリルにより加工し、前記交差部より奥側を尖ドリルにより加工するように加工工程を決定する加工工程決定手段と、
前記加工工程に基づいてＮＣプログラムを作成するＮＣプログラム作成手段と、
を備える穴加工用ＮＣプログラム作成装置。
【請求項２】
請求項１において、
前記穴加工用ＮＣプログラム作成装置は、前記交差穴領域抽出手段により抽出された二つの前記穴領域のそれぞれについて、穴開口位置から前記交差部までの深さを算出する交差部深さ算出手段を備え、
前記加工工程決定手段は、前記深さが浅い方を先に加工する前記一方の穴領域として加工し、前記深さが深い方を後に加工する前記他方の穴領域として加工するように前記加工工程を決定する穴加工用ＮＣプログラム作成装置。
【請求項３】
請求項１または２において、
前記穴加工用ＮＣプログラム作成装置は、前記交差穴領域抽出手段により抽出された二つの前記穴領域の中心軸ベクトルのなす角度を算出するなす角度算出手段を備え、
前記加工工程決定手段は、前記なす角度が予め設定された閾値より小さい場合に、後に加工する前記他方の穴領域に対して少なくとも交差部を平ドリルにより加工し、前記交差部より奥側を尖ドリルにより加工するように加工工程を決定する穴加工用ＮＣプログラム作成装置。
【請求項４】
請求項３において、
前記穴加工用ＮＣプログラム作成装置は、前記交差穴領域抽出手段により抽出された二つの前記穴領域のそれぞれについて、穴開口位置から前記交差部までの深さを算出する交差部深さ算出手段を備え、
前記加工工程決定手段は、前記深さに応じて設定された前記閾値を用いて前記加工工程を決定する穴加工用ＮＣプログラム作成装置。
【請求項５】
請求項１〜４の何れか一項において、
前記穴領域抽出手段により抽出された前記穴領域には、前記穴の稜線に関する情報が含まれ、
前記交差穴領域抽出手段は、二つの前記穴領域の前記稜線が共通する場合に当該二つの前記穴領域が相互に交差する二つの前記穴領域であると判定する穴加工用ＮＣプログラム作成装置。
【請求項６】
請求項１〜５の何れか一項において、
前記加工工程決定手段は、前記他方の穴領域に対して前記交差部の手前までを尖ドリルにより加工し、後に加工する他方の前記穴領域に対して少なくとも交差部を平ドリルにより加工し、前記交差部より奥側を尖ドリルにより加工するように前記加工工程を決定する穴加工用ＮＣプログラム作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、穴を有する製品形状三次元ＣＡＤデータを用いて、穴加工用のＮＣプログラムを作成する穴加工用ＮＣプログラム作成装置に関するものである。
【背景技術】
【０００２】
穴加工用ＮＣプログラム作成装置として、例えば、特開２００８−１４９３８２号公報（特許文献１）に記載されたものがある。特許文献１には、ＣＡＤ上で作成された製品の穴形状データに基づいてドリルの選択およびドリルの動作の決定を自動的に行って、ＮＣプログラムを作成することが記載されている。
【０００３】
また、交差穴の加工方法について、特開平１１−３３８０７号（特許文献２）に記載されている。特許文献２には、二つの穴の交差部に生じるバリを除去する加工方法について記載されている。また、傾斜面に穴加工するための加工方法について、特開２００７−２１６３３４号公報（特許文献３）および特開２００９−４５６８０号公報（特許文献４）に記載されている。特許文献３，４には、穴の開口部をエンドミルにて加工することが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１４９３８２号公報
【特許文献２】特開平１１−３３８０７号公報
【特許文献３】特開２００７−２１６３３４号公報
【特許文献４】特開２００９−４５６８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１には、一つの穴加工用のＮＣプログラムを作成することが記載されている。ところで、加工対象によっては、複数の穴が交差する場合がある。このような場合には、後の穴を尖ドリルにより加工する際に、交差部に進入する際および当該交差部からさらに奧へ向かって加工する際に、尖ドリルの先端が尖ドリルの径方向に移動することによって、尖ドリルが折損するおそれがある。このような加工対象について、工具が折損しないようなＮＣプログラムを作成することが求められる。
【０００６】
なお、特許文献２には、ＮＣプログラムの作成について記載されていない上に、上述したような交差部の後の穴を加工する際については何ら記載されていない。また、特許文献３，４には、ＮＣプログラムの作成について記載されておらず、複数の穴の交差部に関するものではない。
【０００７】
本発明は、このような事情に鑑みてなされたものであり、複数の穴が交差する場合の穴加工用ＮＣプログラム作成装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
（請求項１）本発明の穴加工用ＮＣプログラム作成装置は、製品形状三次元ＣＡＤデータを取得して加工すべき複数の穴領域を抽出する穴領域抽出手段と、複数の前記穴領域の中から相互に交差する複数の前記穴領域を抽出する交差穴領域抽出手段と、相互に交差する二つの前記穴領域のうち先に加工する一方の前記穴領域に対して尖ドリルにより加工し、後に加工する他方の前記穴領域に対して少なくとも交差部を平ドリルにより加工し、前記交差部より奥側を尖ドリルにより加工するように加工工程を決定する加工工程決定手段と、前記加工工程に基づいてＮＣプログラムを作成するＮＣプログラム作成手段とを備える。
【０００９】
（請求項２）また、本発明において、前記穴加工用ＮＣプログラム作成装置は、前記交差穴領域抽出手段により抽出された二つの前記穴領域のそれぞれについて、穴開口位置から前記交差部までの深さを算出する交差部深さ算出手段を備え、前記加工工程決定手段は、前記深さが浅い方を先に加工する前記一方の穴領域として加工し、前記深さが深い方を後に加工する前記他方の穴領域として加工するように前記加工工程を決定するようにしてもよい。
【００１０】
（請求項３）また、本発明において、前記穴加工用ＮＣプログラム作成装置は、前記交差穴領域抽出手段により抽出された二つの前記穴領域の中心軸ベクトルのなす角度を算出するなす角度算出手段を備え、前記加工工程決定手段は、前記なす角度が予め設定された閾値より小さい場合に、後に加工する前記他方の穴領域に対して少なくとも交差部を平ドリルにより加工し、前記交差部より奥側を尖ドリルにより加工するように加工工程を決定するようにしてもよい。
【００１１】
（請求項４）また、本発明において、前記穴加工用ＮＣプログラム作成装置は、前記交差穴領域抽出手段により抽出された二つの前記穴領域のそれぞれについて、穴開口位置から前記交差部までの深さを算出する交差部深さ算出手段を備え、前記加工工程決定手段は、前記深さに応じて設定された前記閾値を用いて前記加工工程を決定するようにしてもよい。
【００１２】
（請求項５）また、本発明において、前記穴領域抽出手段により抽出された前記穴領域には、前記穴の稜線に関する情報が含まれ、前記交差穴領域抽出手段は、二つの前記穴領域の前記稜線が共通する場合に当該二つの前記穴領域が相互に交差する二つの前記穴領域であると判定するようにしてもよい。
【００１３】
（請求項６）また、本発明において、前記加工工程決定手段は、前記他方の穴領域に対して前記交差部の手前までを尖ドリルにより加工し、後に加工する他方の前記穴領域に対して少なくとも交差部を平ドリルにより加工し、前記交差部より奥側を尖ドリルにより加工するように前記加工工程を決定するようにしてもよい。
【発明の効果】
【００１４】
（請求項１）本発明によれば、複数の穴領域の交差部を平ドリルで加工するように加工工程を決定している。ここで、平ドリルは、先端がドリル軸方向に直交するように形成されており、先端で加工ができるドリルである。従って、交差部に進入する際に平ドリルにかかる径方向の負荷が変動することによって、平ドリルに対して径方向に力が作用したとしても、平ドリルの先端面で加工することができるため、平ドリルがドリル軸の径方向に倒れることが抑制される。さらに、平ドリルの先端が交差部に進入した後に交差部を通過する際においても、平ドリルにかかる径方向の負荷が変動することによって、平ドリルに対して径方向に力が作用する。特に、平ドリルの先端が先に加工された穴領域のうち後に加工する穴領域の穴開口側とは反対側（奧側）の面を加工する際には、その負荷変動が大きくなる。しかし、この場合にも、平ドリルの先端面で交差部を加工することができるため、平ドリルがドリル軸の径方向に倒れることが抑制される。従って、二つの穴領域の交差部において、ドリルが折損しないようなＮＣプログラムを自動的に作成することができる。
【００１５】
（請求項２）本発明によれば、二つの穴領域のうち交差部までの深さが浅い方を先に加工し、深い方を後に加工するようなＮＣプログラムを作成している。ここで、ドリルが穴に進入している長さが長いほど、ドリルが倒れるおそれが低くなる。つまり、交差部までの深さが深い方を後に加工するようなＮＣプログラムとすることで、後に加工する穴の交差部を加工する際には、ドリルの穴への進入長さが長くできる。従って、平ドリルが倒れることをより抑制できる。その結果、平ドリルによって交差部を加工する際に、平ドリルが折損することをより確実に防止できるようなＮＣプログラムを作成できる。
【００１６】
（請求項３）本発明によれば、二つの穴領域の中心軸のなす角度が小さいほど、尖ドリルを用いて交差部を加工すると、尖ドリルが倒れるおそれが高い。そこで、なす角度が閾値より小さい場合に、交差部において平ドリルを用いて加工するようなＮＣプログラムを作成することにしている。これにより、適切に平ドリルを用いるようなＮＣプログラムを作成することができる。なお、なす角度が閾値以上の場合には、平ドリルを用いるのではなく、尖ドリルを用いたＮＣプログラムとするとよい。つまり、なす角度が閾値以上の場合には、尖ドリルを用いて、穴開口部から交差部を通過して、最終位置まで加工するようなＮＣプログラムとする。そうすることで、途中で工具を変更することなく加工を行うことができるため、加工時間を短縮することができる。
【００１７】
（請求項４）本発明によれば、交差部までの深さが深いほど、ドリルが倒れるおそれが低い。そこで、平ドリルを用いる加工工程を採用する否かの閾値を、交差部までの深さに応じて変化させるようにすることで、より適切に平ドリルを用いる場合を判定できる。
【００１８】
（請求項５）本発明によれば、稜線が共通するか否かによって、交差部を有するか否かを判定している。これにより、製品形状三次元ＣＡＤデータから確実に交差部を有する穴領域を抽出することができる。
【００１９】
（請求項６）本発明によれば、交差部の手前までは尖ドリルを用いたＮＣプログラムとしている。ここで、尖ドリルは、平ドリルに比べて、高速な加工を実現できる。従って、本発明によれば、加工時間の短縮を図ることができる。
【図面の簡単な説明】
【００２０】
【図１】製品形状三次元ＣＡＤデータを示す図である。
【図２】交差穴の加工工程の順序を示す図である。
【図３】ＮＣプログラム作成装置の機能ブロック図である。
【図４】（ａ）は第一ＮＣプログラムによる第一回目の段取を示す図であり、（ｂ）は第二ＮＣプログラムによる第二回目の段取を示す図である。
【図５】ＮＣプログラム毎の加工部位を示す図である。
【図６】（ａ）は第一穴領域の稜線を示す図であり（ｂ）は交差穴の一方である第二穴領域の稜線を示す図であり、（ｃ）は交差穴の他方である第三穴領域の稜線を示す図である。
【図７】交差穴領域抽出手段による交差穴領域抽出処理を示すフローチャートである。
【図８】深さ，角度算出手段による深さ，角度算出処理を示すフローチャートである。
【図９】判定手段による判定処理を示すフローチャートである。
【図１０】加工工程決定手段による加工工程決定処理を示すフローチャートである。
【発明を実施するための形態】
【００２１】
（ＮＣプログラム作成装置により実行される穴の加工工程の説明）
本実施形態のＮＣプログラム作成装置により作成されるＮＣプログラムにより、加工される穴の加工工程について図１および図２を参照して説明する。その後に、ＮＣプログラム作成装置の詳細について説明するものとする。
【００２２】
三次元ＣＡＤ装置によって予め作成された製品形状三次元ＣＡＤデータ２０（以下、「製品データ」と称する）は、図１に示すとおりである。すなわち、製品データ２０は、第一〜第五製品面２１〜２５によって五角形形状に形成されており、第二製品面２２が第一製品面２１および第三製品面２３に対して傾斜している。また、製品データ２０は、図１に示すように、第一〜第三製品面２１，２２，２３のそれぞれに、第一穴Ｇ１，第二穴Ｇ２および第三穴Ｇ３が形成されている。
【００２３】
特に、第二穴Ｇ２および第三穴Ｇ３は、途中で交差している。ここで、第二穴Ｇ２の軸方向ベクトルと第三穴Ｇ３の軸方向ベクトルとのなす角度は、αである。また、第二穴Ｇ２のうち第三穴Ｇ３との交差部までの穴開口側の深さをＤｂ１とし、第二穴Ｇ２のうち第三穴Ｇ３との交差部までの穴奥側の深さをＤｂ２とし、第三穴Ｇ３のうち第二穴Ｇ２との交差部までの穴開口側の深さをＤａ１とし、第三穴Ｇ３のうち第二穴Ｇ２との交差部までの穴奥側の深さをＤａ２とする。
【００２４】
次に、本発明は、特に、交差穴を加工するためのＮＣプログラムを作成することが特徴的であるため、図１に示す製品データ２０のうち、第二穴Ｇ２と第三穴Ｇ３との加工工程について図２を参照して説明する。加工工程が、図２（ａ）〜図２（ｆ）の順に進むようにされる。図２において、第二穴Ｇ２および第三穴Ｇ３について、加工済みの部分は実線にて示し、加工前の部分は破線にて示す。ここで、本実施形態においては、第二穴Ｇ２を第三穴Ｇ３よりも先に加工するものとしている。これは、第二穴Ｇ２のうち第三穴Ｇ３との交差部までの深さ（Ｄａ１，Ｄａ２）と、第三穴Ｇ３のうち第二穴Ｇ２との交差部までの深さ（Ｄｂ１，Ｄｂ２）とのうち、浅い方を先に加工するようにしたためである。以下、図２（ａ）から図２（ｆ）まで、順に説明する。
【００２５】
まず、図２（ａ）に示すように、穴Ｇ２に対するセンタもみ加工をセンタドリルＴ１によって行う。続いて、図２（ｂ）に示すように、尖ドリルＴ２によって、穴Ｇ２を最後まで穴開け加工を行う。この尖ドリルＴ２とは、先端が尖っているドリルである。つまり、尖ドリルＴ２の先端は、側面から見た場合に、二等辺三角形状となる。続いて、図２（ｃ）に示すように、第三穴Ｇ３に対するセンタもみ加工をセンタドリルＴ１によって行う。続いて、図２（ｄ）に示すように、尖ドリルＴ２によって、第三穴Ｇ３の穴開け加工を行う。ただし、このときの穴開け加工は、尖ドリルＴ２の先端が、既に加工されている第二穴Ｇ２に達しない位置で停止させる。つまり、尖ドリルＴ２の先端が、第三穴Ｇ３のうち第二穴Ｇ２との交差部までの穴開口側の深さをＤａ１付近に位置するまで、穴開け加工を行う。
【００２６】
続いて、図２（ｅ）に示すように、平ドリルＴ３によって第三穴Ｇ３のうち第二穴Ｇ２との交差部を加工する。具体的には、平ドリルＴ３によって、第三穴Ｇ３のうち第二穴Ｇ２に到達する加工を行うと共に、第三穴Ｇ３のうち第二穴Ｇ２からさらに奥深くまで加工を行う。平ドリルＴ３による加工は、平ドリルＴ３の先端が、第三穴Ｇ３のうち第二穴Ｇ２との交差部までの穴奥側の深さＤａ２より僅かに穴奥側の位置で停止させる。そして、最後に、図２（ｆ）に示すように、尖ドリルＴ２によって、第三穴Ｇ３のうち第二穴Ｇ２との交差部よりも穴奥側の加工を行う。ここで、平ドリルＴ３とは、先端が尖っておらず、側面から見た場合に平坦になっているドリルである。つまり、平ドリルＴ３は、尖ドリルＴ２の先端をドリル軸方向に直交するように形成されており、先端で加工ができるドリルである。また、平ドリルＴ３は、エンドミルを含む意味でも用いている。
【００２７】
このように、第二穴Ｇ２と第三穴Ｇ３との交差部を平ドリルＴ３で加工するように加工工程を決定している。ここで、後に加工する第三穴Ｇ３を加工する際に、第三穴Ｇ３のうち第二穴Ｇ２との交差部に進入する際に平ドリルＴ３にかかる径方向の負荷が変動することによって、平ドリルＴ３に対して径方向に力が作用する。しかし、平ドリルＴ３の先端面で加工することができるため、平ドリルＴ３がドリル軸の径方向に倒れることが抑制される。さらに、平ドリルＴ３の先端が第三穴Ｇ３のうち第二穴Ｇ２との交差部に進入した後に交差部を通過する際においても、平ドリルＴ３にかかる径方向の負荷が変動することによって、平ドリルＴ３に対して径方向に力が作用する。特に、平ドリルＴ３の先端が先に加工された第二穴Ｇ２のうち後に加工する第三穴Ｇ３の穴開口側とは反対側（奧側）の面を加工する際には、その負荷変動が大きくなる。しかし、この場合にも、平ドリルＴ３の先端面で交差部を加工することができるため、平ドリルＴ３がドリル軸の径方向に倒れることが抑制される。従って、第二穴Ｇ２と第三穴Ｇ３との交差部において、尖ドリルＴ２が折損しないようなＮＣプログラムを自動的に作成することができる。
【００２８】
（ＮＣプログラム作成装置の詳細構成）
次に、上述したような穴加工工程を実行できるＮＣプログラムを作成するＮＣプログラム作成について、図３〜図１０を参照して説明する。図３に示すように、ＮＣプログラム作成装置は、３Ｄ（三次元）データ記憶部１１０と、穴領域抽出手段１２０と、交差穴領域抽出手段１３０と、深さ，角度算出手段１４０と、判定手段１５０と、加工工程決定手段１６０と、ＮＣプログラム作成手段１７０とを備えて構成される。
【００２９】
このＮＣプログラム作成装置は、それぞれの段取毎に少なくとも一つのＮＣプログラムを作成する。例えば、第一回目の段取は、図４（ａ）に示すように、テーブル３０の上面に製品データ２０の面２４を設置した状態とする。また、第二回目の段取は、図４（ｂ）に示すように、テーブル３０の上面に製品データ２０の面２５を設置した状態とする。このとき、図５の上段に示すように、第一回目の段取において実行する第一ＮＣプログラムは、図１に示す第一穴Ｇ１および第二穴Ｇ２を加工するプログラムであるとする。また、図５の下段に示すように、第二回目の段取において実行する第二ＮＣプログラムは、図１に示す第三穴Ｇ３を加工するプログラムであるとする。つまり、本実施形態のＮＣプログラム作成装置は、第一ＮＣプログラムと第二ＮＣプログラムを作成するものとする。
【００３０】
図３に戻り説明する。図３に示す３Ｄ（三次元）データ記憶部１１０は、三次元ＣＡＤ装置により予め作成された図１に示す製品データ２０を記憶する。製品データ２０は、ソリッドモデルとして記憶されている。ここでは、ソリッドモデルとしての製品データ２０は、面、その面を構成するための稜線、複数の稜線の交点である点に関する情報を有している。
【００３１】
穴領域抽出手段１２０は、製品データ２０を取得して、加工すべき複数の穴領域Ｇ１、・・・、Ｇｎを抽出する。それぞれの穴領域Ｇｎの記号ｎは、穴領域固有のＩＤ番号である。本実施形態においては、穴領域抽出手段１２０は、第一穴領域Ｇ１、第二穴領域Ｇ２および第三穴領域Ｇ３を抽出する。ここで、三次元形状データとしての穴を表す場合に「穴領域」と称し、実際に被加工物に加工される穴を表す場合には、単に「穴」と称する。つまり、以下は、ＮＣプログラムを作成する段階における説明であるため、「穴領域」と称する。
【００３２】
抽出された第一，第二，第三穴領域Ｇ１，Ｇ２，Ｇ３は、図６（ａ）（ｂ）（ｃ）のそれぞれに示すような面、稜線および点に関する情報、並びに、それらの位置情報を有している。例えば、第二穴領域Ｇ２は、図６（ｂ）に示すように、稜線Ｇ２１，Ｇ２２を有している。また、第三穴領域Ｇ３は、図６（ｃ）に示すように、稜線Ｇ３１，Ｇ３２を有している。ここで、第二穴領域Ｇ２の稜線Ｇ２１は、第三穴領域Ｇ３の稜線Ｇ３１と共通する。また、第二穴領域Ｇ２の稜線Ｇ２２は、第三穴領域Ｇ３の稜線Ｇ３２と共通する。
【００３３】
図３に示す交差穴領域抽出手段１３０は、複数の穴領域Ｇ１、・・・、Ｇｎの中から相互に交差する複数の穴領域の組を抽出する。以下において、穴領域の組をＰｋ（カウンタｋ＝１〜ｋｍａｘ）と記載する。本実施形態においては、交差穴領域抽出手段１３０は、穴領域抽出手段１２０にて抽出された第一，第二，第三穴領域Ｇ１，Ｇ２，Ｇ３の中から、相互に交差する第二，第三穴領域Ｇ２，Ｇ３の組Ｐ１を抽出する。
【００３４】
この交差穴領域抽出手段１３０による交差穴領域抽出処理について、図７を参照して説明する。図７に示すように、現段取対象カウンタｉを１にセットし（ステップＳ１）、全カウンタｊを１にセットする（ステップＳ２）。現段取対象カウンタｉとは、現在の段取において加工対象となる穴領域ＧｉのＩＤ番号ｉに相当するカウンタである。つまり、図５（ａ）に示す第一回目の段取においては、第一穴領域Ｇ１および第二穴領域Ｇ２が対象となる。また、全カウンタｊとは、穴領域抽出手段１２０により抽出された全ての穴領域ＧｊのＩＤ番号ｊに相当するカウンタである。
【００３５】
続いて、穴領域Ｇｉ，Ｇｊに共通する稜線が有るか否かを判定する（ステップＳ３）。ただし、二つの穴領域Ｇｉ，Ｇｊの全ての稜線が共通する場合、つまり、同じ穴領域の場合は判定対象から除外する。例えば、ｉ＝１、ｊ＝２の場合には、第一穴領域Ｇ１と第二穴領域Ｇ２とは全ての稜線が共通しない。一方、ｉ＝２、ｊ＝３の場合には、第二穴領域Ｇ２と第三穴領域Ｇ３とは、図６（ｂ）（ｃ）に示すように、一部において稜線が共通する。
【００３６】
続いて、穴領域Ｇｉ，Ｇｊに共通する稜線が有る場合には（ステップＳ３：Ｙ）、当該穴領域Ｇｉ，Ｇｊは交差穴として設定される（ステップＳ４）。つまり、第二穴領域Ｇ２と第三穴領域Ｇ３とは、交差穴として設定される。一方、穴領域Ｇｉ，Ｇｊに共通する稜線がない場合には（ステップＳ３：Ｎ）、次のステップＳ５へ進む。このように、交差穴であるか否かの判定を、それぞれの穴領域Ｇｉ，Ｇｊの稜線が共通するか否かによって行っている。これにより、製品データ２０から確実に交差穴を確実に抽出することができる。
【００３７】
続いて、全カウンタｊが最大値ｊｍａｘであるか否かを判定し（ステップＳ５）、最大値ｊｍａｘでない場合には１加算して（ステップＳ６）、ステップＳ３から繰り返す。一方、全カウンタｊが最大値ｊｍａｘに達した場合には（ステップＳ５：Ｙ）、現段取対象カウンタｉが最大値ｉｍａｘであるか否かを判定し（ステップＳ７）、最大値ｉｍａｘでない場合には１加算して（ステップＳ８）、ステップＳ２から繰り返す。一方、現段取対象カウンタｉが最大値ｉｍａｘに達した場合には（ステップＳ７：Ｙ）、処理を終了する。つまり、現段取対象の穴領域Ｇｉのそれぞれに対して、全ての穴領域Ｇｊと共通する稜線が有るか否か比較することにより、現段取対象の穴領域Ｇｉの中に交差穴であるか否かを判定する。つまり、第一回目の段取では、第二穴領域Ｇ２が交差穴として抽出され、交差対象は第三穴領域Ｇ３として設定される。また、第二回目の段取では、第三穴領域Ｇ３が交差穴として抽出され、交差対象は第二穴領域Ｇ２として設定される。
【００３８】
図３に示す深さ，角度算出手段１４０は、交差穴領域抽出手段１３０により抽出された二つの穴領域の組Ｐ１，・・・，Ｐｋｍａｘのそれぞれについて、穴開口位置から交差部までの深さを算出する。本実施形態においては、図４（ａ）に示すような、第二穴領域Ｇ２のうち第三穴領域Ｇ３との交差部までの穴開口側の深さＤｂ１、第二穴領域Ｇ２のうち第三穴領域Ｇ３との交差部までの穴奥側の深さＤｂ２、第三穴領域Ｇ３のうち第二穴領域Ｇ２との交差部までの穴開口側の深さＤａ１、第三穴領域Ｇ３のうち第二穴領域Ｇ２との交差部までの穴奥側の深さＤａ２を算出する。さらに、深さ，角度算出手段１４０は、交差穴領域抽出手段１３０により抽出された二つの穴領域の組Ｐ１，・・・，Ｐｋｍａｘの中心軸ベクトルのなす角度を算出する。本実施形態においては、図４（ａ）に示すように、第二穴領域Ｇ２の中心軸ベクトルと第三穴領域Ｇ３の中心軸ベクトルのなす角度αを算出する。
【００３９】
この深さ，角度算出手段１４０による深さ，角度算出処理について、図８を参照して説明する。図８に示すように、交差穴組カウンタｋを１にセットする（ステップＳ１１）。続いて、交差穴領域抽出手段１３０により抽出された交差穴領域の組Ｐｋを取得する。本実施形態においては、相互に交差する第二穴領域Ｇ２と第三穴領域Ｇ３の組Ｐ１を取得する。
【００４０】
続いて、交差する穴領域のうち一方の穴領域に加工済フラグが有るか否かを判定する（ステップＳ１３）。加工済フラグとは、今回実行する段取より前の段取にて、既に加工されている穴領域に付されているフラグである。この加工済フラグは、後述する加工工程決定処理におけるステップＳ３５にてセットされる。つまり、本ステップでは、前の段取において、一方の穴領域が加工済みであるか否かを判定するものである。
【００４１】
続いて、一方の穴領域に加工済フラグが有る場合には、加工済フラグの穴領域を改めて取得する（ステップＳ１４）。ステップＳ１３において一方の穴領域に加工済フラグがない場合には、交差する穴領域の加工順序を決定する処理を実行する（ステップＳ１５）。この処理は、例えば、交差穴の穴開口側の深さ（Ｄａ１，Ｄｂ１）または交差穴の穴奥側の深さ（Ｄａ２，Ｄｂ２）を比較して、浅い方を先に加工するものとする。この他に、操作者によって任意に決定することもでき、ランダムに決定するようにしてもよい。加工順序が決定されると、後に加工する穴領域を取得する（ステップＳ１６）。本実施形態において、第二穴領域Ｇ２が第一回目の段取にて既に加工済フラグが付されているとすると、第三穴領域Ｇ３がステップＳ１４にて取得される穴領域となる。仮に、同じ段取にて第二穴領域Ｇ２と第三穴領域Ｇ３とを加工するとした場合には、交差部までの深さが浅い第二穴領域Ｇ２を先に加工し、第三穴領域Ｇ３を後に加工するものとして、ステップＳ１５にて加工順序が決定される。そうすると、ステップＳ１６においては、後に加工するとされる第三穴領域Ｇ３が取得される。
【００４２】
続いて、ステップＳ１４またはステップＳ１６にて取得した穴領域と、それに交差する穴領域との中心軸ベクトルのなす角度αを算出する。本実施形態においては、図４（ａ）に示すように、第二穴領域Ｇ２と第三穴領域Ｇ３との中心軸ベクトルのなす角度αが算出される。続いて、ステップＳ１７にて取得した第三穴領域Ｇ３について、交差部までの深さ（Ｄａ１，Ｄａ２）を算出する（ステップＳ１８）。深さＤａ１は、上述したように、第三穴Ｇ３のうち第二穴Ｇ２との交差部までの穴開口側の深さであり、深さＤａ２は、第三穴Ｇ３のうち第二穴Ｇ２との交差部までの穴奥側の深さである。
【００４３】
続いて、交差穴組カウンタｋが最大値ｋｍａｘであるか否かを判定し（ステップＳ１９）、最大値ｋｍａｘでない場合には１加算して（ステップＳ２０）、ステップＳ１２から繰り返す。一方、交差穴組カウンタｋが最大値ｋｍａｘに達した場合には（ステップＳ１９：Ｙ）、処理を終了する。
【００４４】
図３に示す判定手段１５０は、深さ，角度算出手段１４０により算出された後に加工する穴領域Ｇｎにおいて、交差部までの深さＤａ１，Ｄａ２および角度αを用いて、特殊加工を実行するか否かを判定する。ここで、特殊加工とは、図２（ｃ）〜図２（ｆ）に示した加工方法のことを意味する。つまり、穴の交差部において、平ドリルＴ３を用いる加工である。
【００４５】
例えば、交差穴のなす角度αが９０°の場合には、交差穴のうち後に加工する穴を尖ドリルＴ２により加工する場合、交差部に進入する際および当該交差部を通過する際に、尖ドリルＴ２の先端は尖ドリルＴ２の径方向に移動することはほとんどない。これに対して、交差穴のなす角度αが０°に近くなるほど、または、交差穴のなす角度αが１８０°に近くなるほど、交差穴のうち後に加工する穴を尖ドリルＴ２により加工する場合、交差部に進入する際および当該交差部を通過する際に、尖ドリルＴ２の先端は尖ドリルＴ２の径方向に移動する。この移動する力が大きいほど、尖ドリルＴ２が折損する可能性が高くなる。このように、交差穴のなす角度αによって、尖ドリルＴ２が折損するか否かが異なる。
【００４６】
また、交差穴のうち後に加工する穴を尖ドリルＴ２により加工する場合、交差部までの深さが深いほど、尖ドリルＴ２が支持される剛性が大きくなるため、尖ドリルＴ２が折損しにくくなる。このように交差穴の深さによって、尖ドリルＴ２が折損するか否かが異なる。
【００４７】
そこで、判定手段１５０による判定処理にて、尖ドリルＴ２を用いた穴加工の場合に尖ドリルＴ２が折損するか否かを判定することとする。すなわち、図９に示すように、まず、交差穴組カウンタｋを１にセットする（ステップＳ２１）。続いて、深さ，角度算出手段１４０により算出された交差穴領域の組Ｐｋのうち一方の穴領域Ｇｎ（第三穴領域Ｇ３）の交差部までの深さ（Ｄａ１，Ｄａ２）およびなす角度αを取得する（ステップＳ２２）。
【００４８】
続いて、交差部までの深さ（Ｄａ１，Ｄａ２）と閾値Ｔｈとの関係を予め設定したマップと、ステップＳ２２にて取得した交差部までの深さ（Ｄａ１，Ｄａ２）とにより、閾値Ｔｈを算出する（ステップＳ２３）。この閾値Ｔｈは、なす角度に相当する閾値である。続いて、ステップＳ２２にて取得したなす角度αが、閾値Ｔｈ未満であるか否かを判定する（ステップＳ２４）。
【００４９】
そして、取得したなす角度αが閾値Ｔｈ未満である場合には、当該交差穴の組Ｐｋを特殊加工に変更すべき加工工程として設定する（ステップＳ２５）。一方、取得したなす角度αが閾値Ｔｈ以上である場合には、当該交差穴の組Ｐｋは基本的な加工工程とするため、何ら設定することなく次のステップＳ２６へ進む。
【００５０】
続いて、交差穴組カウンタｋが最大値ｋｍａｘであるか否かを判定し（ステップＳ２６）、最大値ｋｍａｘでない場合には１加算して（ステップＳ２７）、ステップＳ２２から繰り返す。一方、交差穴組カウンタｋが最大値ｋｍａｘに達した場合には（ステップＳ２６：Ｙ）、処理を終了する。
【００５１】
図３に示す加工工程決定手段１６０は、相互に交差する複数の穴領域の組Ｐｋのうち先に加工する一方の穴領域Ｇｎに対して尖ドリルＴ２により加工し、後に加工する他方の穴領域Ｇｎに対して少なくとも交差部を平ドリルＴ３により加工し、交差部より奥側を尖ドリルＴ２により加工するように加工工程を決定する。本実施形態においては、図２（ａ）（ｂ）に示すように、交差穴のうち先に加工する第二穴領域Ｇ２は、センタドリルＴ１によりセンタもみ加工を行った後、尖ドリルＴ２により穴の最後までドリル加工を行っている。一方、図２（ｃ）〜図２（ｆ）に示すように、交差穴のうち後に加工する第三穴領域Ｇ３は、センタドリルＴ１によりセンタもみ加工を行い、尖ドリルＴ２により交差部の手前までドリル加工を行い、続いて、平ドリルＴ３により交差部の前後をドリル加工して、最後に尖ドリルにて交差部の奥側をドリル加工する。つまり、このような加工工程となるように決定する。
【００５２】
具体的には、図１０に示すように、製品データ２０を取得する（ステップＳ３１）。続いて、基本設定された加工工程決定演算を行う（ステップＳ３２）。ここで演算される加工工程は、予め設定された基本的な加工工程を用いるものとして演算する。穴加工であれば、まずセンタもみ加工を行い、穴の最奥形状に応じた尖ドリルにより最奥までドリル加工を行うものとなる。つまり、この段階では、全ての穴がセンタもみ加工の後に、尖ドリルにより最奥までドリル加工を行うものとして、加工工程が得られる。また、穴によっては、タップが形成される場合もあり、タップ穴については、尖ドリルＴ２により下穴加工としてドリル加工を行った後に、タップ加工を行うように、基本的な加工工程が得られる。
【００５３】
続いて、判定手段１５０により特殊加工に変更すべき加工工程として設定されたものが有るか否かを判定する（ステップＳ３３）。そして、特殊加工に変更すべき加工工程として設定されたものが有る場合には、ステップＳ３２にて得られた加工工程のうち対応する加工工程を、特殊加工に変更するように設定する（ステップＳ３４）。つまり、該当する加工工程を図２（ｃ）〜図２（ｆ）に示す加工工程となるように設定する。一方、特殊加工に変更すべき加工工程として設定されたものがない場合には、次のステップＳ３５に進む。続いて、当該加工工程に含まれる穴領域Ｇｎは、加工済フラグをセットする（ステップＳ３５）。
【００５４】
ここで、加工工程を決定する際に、サイクルタイムを短縮するために、各加工工程をどの順序で実行するかを演算することがある。例えば、図２（ａ）のセンタもみ加工と図２（ｃ）のセンタもみ加工を連続して行うことで、工具交換回数を低減することができる。また、図２（ｂ）（ｄ）（ｆ）は、尖ドリルＴ２によるドリル加工を行っている。つまり、共通する工具は連続して加工を行うようにすると、図２（ｅ）の平ドリルＴ３によるドリル加工を行うことができなくなってしまう。このようなことにならないように、交差穴の交差部を平ドリルＴ３にて加工するドリル加工とその奥側を加工する尖ドリルＴ２によるドリル加工は、一体的なものとして取り扱われる。従って、図２（ｂ）（ｄ）は、連続して加工を行うように変更可能であるが、図２（ｅ）（ｆ）は、加工工程の順序が変更されないようになる。
【００５５】
図３に示すＮＣプログラム作成手段１７０は、加工工程決定手段１６０により決定された加工工程に基づいて、ＮＣプログラムを作成する。このとき、切削条件および工具軌跡などを算出した上で、ＮＣプログラムを作成する。このＮＣプログラムの作成処理は、公知の技術であるため説明を省略する。
【００５６】
以上より、本実施形態によれば、上述の「ＮＣプログラム作成装置により実行される穴の加工工程の説明」欄にて説明したように、複数の穴領域Ｇｎの交差部において、尖ドリルＴ２が折損しないようなＮＣプログラムを自動的に作成することができる。そして、交差部の手前までは尖ドリルＴ２を用いたＮＣプログラムとしている。ここで、尖ドリルＴ２は、平ドリルＴ３に比べて、高速な加工を実現できる。従って、加工時間の短縮を図ることができる。
【００５７】
また、ステップＳ１５において、複数の穴領域Ｇｎのうち交差部までの深さが浅い方を先に加工し、深い方を後に加工するように加工順序を決定している。つまり、同じ段取において、複数の穴領域Ｇｎのうち交差部までの深さが浅い方を先に加工し、深い方を後に加工するようなＮＣプログラムを作成している。ここで、尖ドリルＴ２および平ドリルＴ３が穴に進入している長さが長いほど、尖ドリルＴ２および平ドリルＴ３が倒れるおそれが低くなる。つまり、交差穴Ｇｎの交差部までの深さが深い方を後に加工するようなＮＣプログラムとすることで、後に加工する交差穴Ｇｎの交差部を加工する際には、平ドリルＴ３の穴への進入長さが長くできる。従って、平ドリルＴ３が倒れることをより抑制できる。その結果、平ドリルＴ３によって交差穴Ｇｎの交差部を加工する際に、平ドリルＴ３が折損することをより確実に防止できるようなＮＣプログラムを作成できる。
【００５８】
また、二つの穴領域Ｇｎの中心軸のなす角度αが小さいほど、尖ドリルＴ２を用いて交差部を加工すると、尖ドリルＴ２が倒れるおそれが高い。そこで、なす角度αが閾値Ｔｈより小さい場合に、交差部において平ドリルＴ３を用いて加工するようなＮＣプログラムを作成することにしている。これにより、適切に平ドリルＴ３を用いるようなＮＣプログラムを作成することができる。なお、なす角度αが閾値Ｔｈ以上の場合には、平ドリルＴ３を用いるのではなく、図２（ｂ）に示すような尖ドリルＴ２を用いたＮＣプログラムとしている。つまり、なす角度αが閾値Ｔｈ以上の場合には、尖ドリルＴ２を用いて、穴開口部から交差部を通過して、最終位置まで加工するようなＮＣプログラムとする。そうすることで、途中で工具を変更することなく加工を行うことができるため、加工時間を短縮することができる。
【００５９】
また、交差穴Ｇｎの交差部までの深さが深いほど、ドリルが倒れるおそれが低い。そこで、平ドリルＴ３を用いる加工工程を採用する否かの閾値Ｔｈを、交差部までの深さに応じて変化させるようにすることで、より適切に平ドリルＴ３を用いる場合を判定できる。これにより、平ドリルＴ３が倒れることをより抑制することができる。
【符号の説明】
【００６０】
２０：製品形状三次元ＣＡＤデータ
Ｇ１：第一穴領域、  Ｇ２：第二穴領域、  Ｇ３：第三穴領域
Ｇ２１，Ｇ２２，Ｇ３１，Ｇ３２：稜線
３０：テーブル
Ｔ１：センタドリル、  Ｔ２：尖ドリル、  Ｔ３：平ドリル
【図１】
2012035332.tif 000003
【図２】
2012035332.tif 000004
【図３】
2012035332.tif 000005
【図４】
2012035332.tif 000006
【図５】
2012035332.tif 000007
【図６】
2012035332.tif 000008
【図７】
2012035332.tif 000009
【図８】
2012035332.tif 000010
【図９】
2012035332.tif 000011
【図１０】
2012035332.tif 000012