(57)【要約】【課題】  従来のものより少ない情報量で多様な加工領域形状を定義することができる自動プログラミング装置を提供すること。【解決手段】  データを取り込む入力装置１１１と、データを記憶する記憶装置と、記憶装置に記憶された底面形状の輪郭を構成する一連の稜線の稜線データ、及びこの稜線に関連した側面形状を特定する稜線の属性データにより、底面形状を定義する底面形状定義処理部１３１と、底面形状の稜線データ及び属性データとから特定される面を側面形状として生成する側面形状生成処理部１３２と、底面形状定義処理部１３１により定義された底面形状、及び側面形状生成処理部により生成された側面形状に基づいて加工領域形状を生成して記憶装置に記憶する加工領域形状生成処理部１３４と、を備えている。【選択図】  図１
2010262528.tif 000002
【特許請求の範囲】
【請求項１】
ＮＣ自動プログラムを生成する自動プログラミング装置において、
データを取り込む入力装置と、
データを記憶する記憶装置と、
前記記憶装置に記憶された底面形状の輪郭を構成する一連の稜線の稜線データ、及び該稜線に関連した側面形状を特定する稜線の属性データにより、底面形状を定義する底面形状定義処理部、
前記底面形状の稜線データ及び属性データとから特定される面を側面形状として生成する側面形状生成処理部、及び
前記底面形状定義処理部により定義された底面形状、及び前記側面形状生成処理部により生成された側面形状に基づいて加工領域形状を生成して前記記憶装置に記憶する加工領域形状生成処理部を含む加工領域定義部と、を備えた
ことを特徴とする自動プログラミング装置。
【請求項２】
前記底面形状定義処理部は、底面形状に関連した側面形状として、底面形状のそれぞれの稜線に対して、該稜線を含む側面形状を特定するに必要なデータを該稜線の属性データとして定義し、
前記側面形状生成処理部は、底面形状のそれぞれの稜線データに対して、該稜線を含み、かつ該稜線の属性データから特定される面を生成して側面形状とする、
ことを特徴とする請求項１に記載の自動プログラミング装置。
【請求項３】
前記底面形状定義処理部は、底面形状に関連した側面形状として、底面形状のそれぞれの稜線に対して、側面形状を特定するに必要なデータを該稜線の属性データとして定義する際に、底面形状を含む平面を基準とした側面形状の傾斜角度を属性データの一つとすることを特徴とする請求項２に記載の自動プログラミング装置。
【請求項４】
前記底面形状定義処理部は、底面形状に関連した側面形状として、底面形状のそれぞれの稜線に対して、側面形状を特定するに必要なデータを該稜線の属性データとして定義する際に、側面形状の面の種類を属性データの一つとする
ことを特徴とする請求項２に記載の自動プログラミング装置。
【請求項５】
前記底面形状定義処理部は、底面形状に関連した側面形状として、底面形状のそれぞれの稜線に対して、側面形状を特定するに必要なデータを該稜線の属性データとして定義する際に、底面形状の稜線を側面形状が共有するか否かの識別子を属性データの一つとすることを特徴とする請求項２に記載の自動プログラミング装置。
【請求項６】
前記底面形状定義処理部は、底面形状に関連した側面形状として、底面形状のそれぞれの稜線に対して、側面形状を特定するに必要なデータを該稜線の属性データとして定義する際に、第１の稜線と該第１の稜線に隣接する第２の稜線が滑らかに繋がる場合に、前記第１の稜線及び第２の稜線に各々対応する側面形状どうしも滑らかに繋がるように属性データを自動的に定義する
ことを特徴とする請求項２に記載の自動プログラミング装置。
【請求項７】
前記底面形状定義処理部は、底面形状に関連した側面形状として、底面形状のそれぞれの稜線に対して、側面形状を特定するに必要なデータを該稜線の属性データとして定義する際に、第１の稜線と該第１の稜線に隣接する第２の稜線が滑らかに繋がる場合に、前記第１の稜線及び第２の稜線に各々対応する側面形状どうしが滑らかに繋がるように形状を変形するために必要な属性データを定義できるようにされている
ことを特徴とする請求項２に記載の自動プログラミング装置。
【請求項８】
前記加工領域定義部は、前記底面形状の稜線データ及び属性データとから特定される面を上面形状として生成する上面形状生成処理部をさらに含み、
前記加工領域形状生成処理部は、前記底面形状定義処理部により定義された底面形状、前記側面形状生成処理部により生成された側面形状、及び前記上面形状生成処理部により生成された上面形状に基づいて前記加工領域形状を生成する
ことを特徴とする請求項１から７のいずれか１項に記載の自動プログラミング装置。
【請求項９】
表示装置と、
データを設定することにより、形状が不正となったり他のデータとの関連性に矛盾が生じたりする場合に、表示装置にアラームメッセージを表示したり、不正形状や矛盾を含む形状が生じないための適切な値の範囲を表示したりする表示処理部と、をさらに備えた
ことを特徴とする請求項１から８のいずれか１項に記載の自動プログラミング装置。
【請求項１０】
請求項１から９のいずれか１項に記載の自動プログラミング装置を動作させる動作プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＮＣ工作機械の動作を制御するＮＣ自動プログラムを効率的に生成するための自動プログラミング装置及びその動作プログラムに関するものである。
【背景技術】
【０００２】
上記のようなＮＣ工作機械用の自動プログラミング装置では、従来、加工領域を定義する際に、以下のような方法を採用していた。すなわち、加工領域を定義する際に輪郭形状を用い、同一寸法の丸み付け円弧または面取り形状を挿入する際には、所定範囲内のコーナの１つ１つを指定していた。そして、このようにしてコーナを指定した後も、寸法を入力する設問文に対して同じ数値を１つ１つ入力しなければならず、コーナ部形状の挿入操作に多大の時間を要するという問題があった。
【０００３】
この問題を解決する方法としては、輪郭形状を特定するためのパートプログラムを予め作成しておき、そのパートプログラムから得られる形状を画面に表示し、タブレット装置を用いて、画面上でコーナ指定したい所定範囲内の形状を複数ピックし、さらに丸み付けの寸法とコーナの角度範囲を一括して入力するという方法が従来提案されている（例えば、特許文献１）。
【０００４】
しかし、この方法においても問題を有しており、その問題は、加工領域を輪郭形状のみで定義しているため、加工領域形状としてはその輪郭形状を指定経路に沿って押出した、指定経路に垂直な断面が同一形状であり、また上面と下面が同一形状であるような押出し形状しか定義できないことである。
【０００５】
さらに特許文献１に開示の方法については、事前に所望の輪郭形状を特定するための形状を定義し、そのパートプログラムを作成したうえで改めて所望の輪郭形状を定義しなければならない、といった問題や、コーナ部形状の挿入操作にはタブレット装置が必要である、といった問題もある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平２−５９８０３号公報（図３〜図７）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
このように、従来の自動プログラミング装置における加工領域定義方法では、加工領域を輪郭形状のみで定義しているため、加工領域形状としてはその輪郭形状を指定経路に沿って押出した、指定経路に垂直な断面が同一形状であるような押出し形状しか定義できないという問題点があった。
【０００８】
この発明は、上記のような問題点を解決するためになされたものであり、操作者の手間を軽減し、従来のものより少ない情報量で多様な加工領域形状を定義することができる自動プログラミング装置及びその動作プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明の自動プログラミング装置は、データを取り込む入力装置と、データを記憶する記憶装置と、記憶装置に記憶された底面形状の輪郭を構成する一連の稜線の稜線データ、及び稜線に関連した側面形状を特定する稜線の属性データにより、底面形状を定義する底面形状定義処理部、底面形状の稜線データ及び属性データとから特定される面を側面形状として生成する側面形状生成処理部、及び底面形状定義処理部により定義された底面形状、及び側面形状生成処理部により生成された側面形状に基づいて加工領域形状を生成して記憶装置に記憶する加工領域形状生成処理部を含む加工領域定義部と、を備えたことを特徴とする。
【発明の効果】
【００１０】
この発明の自動プログラミング装置によれば、底面形状だけでなく側面形状の形状幾何データを定義できることから、従来の加工領域形状として生成される押出し形状のように指定経路に垂直な断面が同じとなるような形状以外の形状も定義でき、所望の加工に適した多様な形状を加工領域形状として定義できるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】図１は、本発明にかかる自動プログラミング装置の装置構成をデータ処理の流れに沿って示すブロック図である。
【図２】図２は、一例として示す製品形状の斜視図である。
【図３−１】図３−１は、図２の加工除去領域の底面形状を定義する稜線定義表を示す図である。
【図３−２】図３−２は、図３−１の稜線定義表に定義された底面形状の詳細を示す図である。
【図４】図４は、稜線定義表で定義された側面形状を説明するための図である。
【図５】図５は、稜線定義表で定義される加工領域形状を説明するための図である。
【図６−１】図６−１は、側面形状に関する属性データが装置により自動的に設定される様子を示す図のうち、所定の稜線に対して次の稜線が接線連続である一例を示す図である。
【図６−２】図６−２は、同じく、所定の稜線に対して次の稜線が接線連続である他の例を示す図である。
【図６−３】図６−３は、所定の稜線とこれに隣接する次の稜線の稜線定義表を示す図である。
【図６−４】図６−４は、同一Ｒチェックボタンの正面図である。
【図７−１】図７−１は、側面形状に関する属性データを設定する様子を示す図のうち、隣接する稜線間のコーナ部を滑らかにするために形状修正を行う様子を説明するための図である。
【図７−２】図７−２は、図７−１に示す稜線の稜線定義表を示す図である。
【図７−３】図７−３は、形状判定ボタンの正面図である。
【図８】図８は、不正形状を説明するための縦断面図である。
【図９−１】図９−１は、図８に示す不正形状の稜線定義表である。
【図９−２】図９−２は、表示装置の画面にアラーム表示する様子を示す図である。
【図１０−１】図１０−１は、実施の形態２の製品形状及び加工領域形状を示す斜視図である。
【図１０−２】図１０−２は、図１０−１の加工領域形状を含む部分の断面図である。
【発明を実施するための形態】
【００１２】
以下に、本発明にかかる自動プログラミング装置の実施の形態を図面に基づいて詳細に説明する。なお、本発明は以下の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【００１３】
実施の形態１．
図１は、本発明にかかる自動プログラミング装置の装置構成をデータ処理の流れに沿って示すブロック図である。図中矢印はデータの流れを示す。図１において、自動プログラミング装置１０１は、入力装置１１１、対話式操作処理部１２１、加工領域定義部１３０、及びＮＣプログラム生成部１４０から構成されている。さらに加工領域定義部１３０は、底面形状定義処理部１３１、側面形状生成処理部１３２、上面形状生成処理部１３３、及び加工領域形状生成処理部１３４から構成されている。また、ＮＣプログラム生成部１４０は、加工工程分割処理部１４１、加工ユニット定義処理部１４２、及びＮＣプログラム生成処理部１４３から構成されている。
【００１４】
自動プログラミング装置１０１は、入力装置１１１及び表示装置１１２に加えて、図１には示さないが、演算装置（ＣＰＵ）や記憶装置といったハードウェアを備えている。そして、上記各処理部は、実際には所定のプログラムが記憶装置に記憶された状態で装置に搭載されている。つまり、各処理部の動作は、演算装置によって動作する所定のプログラム動作と考えてよい。
【００１５】
自動プログラミング装置１０１は、入力装置１１１から、製品形状、素材形状や材質、工具データ、加工条件データ、加工領域を定義するための底面形状データなどＮＣプログラム生成に関するデータを取り込み、必要に応じて記憶装置にこれらデータを記憶させながら、対話式操作処理部１２１において、操作者との対話方式による編集を行って、これらの取り込んだ各種データを用いて素材から製品を機械加工するためのＮＣプログラムを生成する。
【００１６】
なお、図１の自動プログラミング装置１０１により生成されたＮＣプログラムは、ＮＣプログラム解析処理部１５１により解析され、ＮＣ装置を動作させるＮＣ指令としてＮＣ装置１０２に渡され、ＮＣ指令に基づいた処理が実行される。
【００１７】
このように本実施の形態の自動プログラミング装置１０１においては、入力装置１１１から取り込まれた各種データを基に、対話式操作処理部１２１により対話形式でデータを編集・生成し、加工領域形状の底面形状データのように加工領域に関するデータは加工領域定義部１３０に、一方、工具データ、加工条件データなどのようにＮＣプログラム生成に関するデータはＮＣプログラム生成部１４０に渡される。
【００１８】
そして、加工領域定義部１３０では、対話式操作処理部１２１より渡された加工領域に関するデータから、素材から製品を得るために素材から除去される領域である加工除去領域を含む、加工の対象となる加工領域を定義する。
【００１９】
〈底面形状定義処理部〉
底面形状定義処理部１３１では、対話式操作処理部１２１から渡された、底面形状の輪郭を構成する一連の稜線データである以下のデータにより、まず、底面形状の基準となる輪郭形状を生成する。すなわち、
・底面形状を構成する稜線の種類（直線、円弧、など）、
・稜線の領域範囲（直線の場合は始点と終点の座標値、円弧の場合は始点と終点と中心点の座標値と半径値、など）、
・生成される側面形状と上面形状のチェックのための製品形状、
・各々の稜線に関連した形状変形のためのデータ（隣接する稜線のコーナ部を滑らかに繋げたい場合に挿入する丸み形状データ）、
・側面形状を特定するためのデータ（面の種類、傾き、など）、
・上面形状を特定するためのデータ（面の種類、底面形状との距離、など）、
が設定された稜線の属性データ、
により、底面形状の基準となる輪郭形状を生成する。
【００２０】
底面形状の稜線データの設定においては、ある稜線を設定するときに既に設定された稜線のうちで隣接する稜線（第１の稜線と第２の稜線）がある場合に、これら第１の稜線と第２の稜線が接線連続であるか否かを判断し、接線連続であれば、ある稜線の属性データには隣接稜線の側面形状に関する属性データと同じ内容が自動的に設定され、さらに、２つの稜線を滑らかに繋げるためにコーナ部を形状変形するための丸み形状のデータが設定できないようにする。これにより、所望の加工領域形状に適した側面形状を容易に生成できる。
【００２１】
〈対話式操作処理部及び同一属性データの設定〉
底面形状のコーナ部の形状変形を全てのコーナ部に同じように適用したい場合には、対話式操作処理部１２１からの操作により、同一コーナ設定を例えばボタンにより選択すれば、底面形状を構成する全てのコーナ部に関連する稜線の属性データに反映される。また、側面形状の傾斜を全て同じにしたい場合には、同様にして対話式操作処理部１２１から同一傾き設定を選択すれば、底面形状を構成する稜線の属性データに反映される。これにより、所望の加工領域形状に適した側面形状をさらに容易に生成できる。
【００２２】
〈表示装置及びアラームメッセージ〉
なお、これらのデータから特定される側面形状や上面形状が、以下に説明するような不正形状である場合には、表示処理部１３５により表示装置１１２に不正形状である旨のアラームメッセージや不正形状を回避するための適切な値が提示される。そのため、操作者は提示された内容に基づいて、入力を取りやめたり、適切な情報を入力し直したりすることができる。このデータ入力操作は、対話式操作処理部１２１を介して適切な情報となるまで反復可能とされている。
【００２３】
〈不正形状〉
不正形状とは、生成される加工領域形状が幾何学的に矛盾していたり製品形状領域と干渉したりするなど実際に加工する加工形状として正しくないときのことを言い、例えば、側面形状の場合にあっては、側面形状に関する属性データとして、設定された面の種類や傾きにより生成されうる側面形状が、製品形状領域の内部と干渉するかどうかを判断する。そして、もし干渉する場合は実際に加工した際、削りすぎとなってしまう。このように形状が、加工形状として正しくないとき、不正形状と判断する。
【００２４】
〈側面形状生成処理部〉
側面形状生成処理部１３２は、関連する底面形状の稜線データとその属性データから側面形状を生成する。具体的には、稜線を含み、かつ、属性データに設定されている面の種類であり、傾斜角度が設定されている場合には、底面形状の法線ベクトルを基準にして傾斜角度だけ傾いた面を生成し、側面形状とする。さらに、関連する稜線データの属性に丸み形状データが設定されている場合には、隣接する稜線に関連する隣接側面との境界部分に円錐形状を挿入する。
【００２５】
〈上面形状生成処理部〉
上面形状生成処理部１３３においても、関連する底面形状の稜線データとその属性データから上面形状を生成する。上面形状の生成においては、底面形状の稜線から構成される輪郭形状を含む面を基準として、設定されている種類の面であり、加工領域側（底面の法線ベクトルの正の向き）に、設定された位置に面を生成し、上面形状とする。
【００２６】
〈加工領域形状生成処理部〉
加工領域形状生成処理部１３４においては、底面形状定義処理部１３１、側面形状生成処理部１３２、上面形状生成処理部１３３から得られた、底面形状、側面形状、上面形状データにより、加工領域形状を生成する。なお、本実施の形態において、上面形状生成処理部１３３は省略することができる。上面形状生成処理部１３３が省略された場合、加工領域形状生成処理部１３４は、上面形状データを得ることができない。このようなとき、加工領域形状生成処理部１３４は、上面形状生成処理部１３３に替わって、底面形状の稜線から構成される輪郭形状を含む面を基準として、加工領域側に、設定された距離だけ離れた面を生成し、上面形状とする。
【００２７】
上記のように、上記各処理部は、具体的には演算装置（ＣＰＵ）によって動作する所定のプログラム動作により実現される。そして、特に加工領域定義部１３０を構成する、底面形状定義処理部１３１、側面形状生成処理部１３２、上面形状生成処理部１３３、及び加工領域形状生成処理部１３４は、プログラミング言語にて記載されたプログラムであり、これらプログラムは、自動プログラミング装置１０１を動作させるためのプログラムを構成している。
【００２８】
〈ＮＣプログラム生成部〉
一方、ＮＣプログラム生成部１４０では、対話式操作処理部１２１より渡されたＮＣプログラム生成に関するデータと加工領域定義部１３０で定義された加工領域からＮＣプログラムを生成する。
【００２９】
〈加工工程分割処理部〉
加工工程分割処理部１４１は、例えば、工作機械がメイン主軸とサブ主軸を有する場合に、メイン主軸で行う第１工程およびサブ主軸で行う第２工程のように主軸ごとに加工工程を分割し、メイン主軸のみを有する場合には、メイン主軸が把持する素材の箇所により工程を分割する。
【００３０】
〈加工ユニット定義処理部〉
加工ユニット定義処理部１４２は、加工工程分割処理部１４１で定義された各加工工程に対して、加工モードと呼ばれる旋削加工、点加工、面加工、面取り加工などで構成される加工作業を連続的な加工が行われる加工単位（以下、加工ユニットという）に定義する。
【００３１】
〈ＮＣプログラム生成処理部〉
ＮＣプログラム生成処理部１４３においては、加工ユニット定義処理部１４２で定義された各加工ユニットに対してＮＣプログラムを生成し、さらに必要ならばＮＣ装置の動作がスムーズに行われるように生成したプログラムを編集する。
【００３２】
〈稜線定義表〉
図２は、一例として示す製品形状の斜視図であり、直方体状の被工作物に対して図２中上方から概略四角錐台形状の穴を削る所謂ポケット形状の加工領域形状として、加工除去領域Ｒ１０を定義する加工領域形状を例として説明する。本実施の形態では、加工領域形状の定義データを設定する際には表形式で行う。この表を本明細書では稜線定義表と呼ぶ。
【００３３】
図３−１は、加工除去領域Ｒ１０の底面形状を定義する稜線定義表の定義例を示す図である。図３−２は、図３−１の稜線定義表に定義された底面形状の詳細を示す図である。図３−１及び図３−２において、
・稜線定義表の１段目のデータが表す点（Ｐｘ１１、Ｐｙ１１、Ｚ０）を点Ｐ１１、
・稜線定義表の２段目のデータが表す点（Ｐｘ１２、Ｐｙ１２、Ｚ０）を点Ｐ１２、
・稜線定義表の３段目のデータが表す点（Ｐｘ１３、Ｐｙ１３、Ｚ０）を点Ｐ１３、
・稜線定義表の４段目のデータが表す点（Ｐｘ１４、Ｐｙ１４、Ｚ０）を点Ｐ１４、
・点Ｐ１１と点Ｐ１２からなる直線をＥ１１、
・点Ｐ１２と点Ｐ１３からなる直線をＥ１２、
・点Ｐ１３と点Ｐ１４からなる直線をＥ１３、
・点Ｐ１４と点Ｐ１１からなる直線をＥ１４、
・稜線Ｅ１１に関連する側面形状を定義する面形状が平面であり、底面形状を含む平面の法線ベクトルに対する傾きの大きさがＴ１１、同様に、
・稜線Ｅ１２に関連する側面形状が平面であり傾きがＴ１２、
・稜線Ｅ１３に関連する側面形状が平面であり傾きがＴ１３、
・稜線Ｅ１４に関連する側面形状が平面であり傾きがＴ１４、
であり、これら側面形状を定義する面形状のデータはそれぞれの稜線の属性データとして設定される。
【００３４】
図４は、底面形状を含む平面ＳＢ１に対して傾きがＴ１１である側面ＳＳ１１を表した図である。図５は底面形状を含む平面ＳＢ１に対して平行、かつ加工領域側（底面の法線ベクトルの正の向き）にＬ０の距離だけ離れた位置にある、面の種類が平面であるような上面形状ＳＴ１の説明図であり、さらに、斜線部分の領域は、本例での加工除去領域Ｒ１０に相当する加工領域形状に相当する。図５に矢印で示す取り代Ｌ０は加工深さ方向及び加工深さの大きさを示し、底面形状に対する上面形状の位置により定義され、図５の例では底面形状と上面形状の距離に相当し、上面形状を定義する面形状のデータとして稜線の属性データに含まれる。
【００３５】
〈自動的に設定される側面形状に関する属性データ〉
図６は、側面形状に関する属性データが装置により自動的に設定される様子を説明する図であり、そのうち、図６−１は、稜線Ｅ４１に対して次の稜線Ｅ４２が接線連続である一例を示す図である。図６−２は、稜線Ｅ４１に対して次の稜線Ｅ４２が接線連続である他の例を示す図である。図６−３は、稜線Ｅ４１と稜線Ｅ４２の属性データの稜線定義表を示す図である。図６−４は、同一Ｒチェックボタンの正面図である。
【００３６】
所望の加工領域形状が隣接する側面形状の境界部分に丸みがついているような場合は、図６−３に示すように、表中のＣＮＲ列である底面形状を構成する形状要素のコーナ部の丸み・面取り設定欄により丸み設定を行う。また、全てのコーナ部に同じ大きさの丸みをつけたい場合には、図６−４に示す同一Ｒチェックボタンを操作することにより、同一Ｒチェック欄をＯＮにすれば、表中の１段目の形状要素データの丸み設定欄に設定されているＲの大きさが全ての形状要素の丸み設定欄に反映される。
【００３７】
所望の加工領域形状の側面形状の傾きを設定するさいには、表中の所定の属性情報として側面形状の傾き設定欄により傾き設定を行うが、全ての側面形状において同じ傾きを設定したい場合には、図６−４に示す同一Ｒチェックボタンと同種の同一傾きチェックボタン（図示せず）を操作することにより、同一傾きチェック欄をＯＮにすれば、表中の１段目の形状要素データの傾き設定欄に設定されている傾きの大きさが全ての形状要素データの傾き設定欄に反映される。
【００３８】
〈隣接する稜線の接線連続〉
さらに、図６−１及び図６−２の例に示すように、底面形状を構成する稜線を定義する際に、ひとつ前に定義した稜線Ｅ４１に対して隣接する次の稜線Ｅ４２が接線連続であるか否かを判断する。稜線Ｅ４１に対して次の稜線Ｅ４２が接線連続であるか否かは、例えば、稜線Ｅ４１と稜線Ｅ４２との交点における稜線Ｅ４１、稜線Ｅ４２の接線が一致すれば稜線Ｅ４１と稜線Ｅ４２は接線連続であるとする判断する。
【００３９】
稜線Ｅ４１と稜線Ｅ４２とが接線連続である場合には、稜線Ｅ４１、稜線Ｅ４２に関連する側面形状どうしも滑らかに繋がることが好ましく、そのためにはそれぞれの側面形状の面の傾きが同じになるのが望ましい。よって、稜線定義表中で稜線Ｅ４１の属性データとしてＴＰＲ列である側面形状の傾き設定欄に傾きＴ４１が設定されているならば、次の稜線である稜線Ｅ４２の設定では、傾き設定欄には自動的にＴ４１が設定される。
【００４０】
〈隣接する稜線間のコーナ部を滑らかにするために形状修正〉
図７−１は、側面形状に関する属性データを設定する様子を説明するための図であり、特に隣接する稜線間のコーナ部を滑らかにするために形状修正を行う様子を説明するための図である。図７−２は、図７−１に示す稜線の稜線定義表を示す図である。図７−３は、形状判定ボタンの正面図である。
【００４１】
ここでは、隣接する稜線間のコーナ部を滑らかにするために形状修正を行う動作について説明する。底面形状を構成する稜線を稜線定義表から定義する際に、隣接する稜線Ｅ５１と稜線Ｅ５２が接線連続であるか否かを例えば前述の方法で判断する。稜線Ｅ５１と稜線Ｅ５２と接線連続であるか否かの判定は、例えば操作者が図７−３に示す形状判定ボタンを押すことにより実行される。
【００４２】
図７−１の例に示すように、稜線Ｅ５１と稜線Ｅ５２が滑らかでない場合に丸み形状を挿入できるようにされている。具体的には、図７−２に示す稜線定義表のＣＮＲ列の該当するコーナ部の丸みデータ設定欄に、丸みデータであるＲの半径値を設定する。
【００４３】
なお、図６の例に示すように、稜線Ｅ４１と稜線Ｅ４２が滑らかである場合には、丸み形状を施す必要がないので、稜線定義表のＣＮＲ列の該当するコーナ部の丸みデータ設定欄に対して、値を設定できないようにする。このとき、既に設定されている場合には、アラームメッセージを表示して操作者に修正を促す。
【００４４】
〈不正形状によるアラームメッセージ〉
図８は、不正形状を説明するための縦断面図である。図９−１は、図８に示す不正形状の稜線定義表である。図９−２は、表示装置の画面にアラーム表示する様子を示す図である。底面形状を構成する稜線を定義する際に、属性データの傾きによって側面形状を定義するが、図８の例に示すように、設定された傾きの大きさＴ６１によっては側面形状ＳＳ６１が製品形状Ｒ６１の内部に入り込んだ所謂削りすぎと呼ばれるような加工となってしまう加工領域形状となる場合がある。
【００４５】
このような不適切な加工領域形状を生成しないようにするために、図９−１に示す稜線定義表の稜線の属性データとしてＴＰＲ列である側面形状の傾き設定欄に設定された傾きが、製品形状と干渉するような側面形状を生成するような場合には、図９−２に示すように、表示装置の画面にアラームメッセージを表示して操作者に修正を促したり、干渉しない傾き値の範囲をガイド値として表示したりする。これにより、不正形状や矛盾を含む形状の生成を未然に防ぐことができ、適切な形状を生成するための適切な値がガイド値として示されるので、操作者の負荷も軽減される。
【００４６】
なお、隣接する稜線が接線連続であるか否かという判断や、稜線に関連する側面形状が製品形状と干渉するか否かという判断するタイミングは、稜線定義表に値が設定されるタイミング毎に判断してもよいし、或いはまた、稜線定義表への設定が全て完了したタイミングで形状全体に関して判断してもよい。
【００４７】
以上のように、本実施の形態の自動プログラミング装置によれば、底面形状だけでなく側面形状や上面形状の形状幾何データを定義できることから、従来の加工領域形状として生成される押出し形状のように指定経路に垂直な断面が同じとなるような形状以外の形状も容易に定義することができ、これにより、所望の加工に適した多様な形状を加工領域形状として定義できる。
【００４８】
そのため、従来の課題であった、同一寸法の丸み付け円弧または面取り形状を挿入するコーナ部形状の挿入操作に多大の時間を要するという問題点や、その問題を解決する例えば特許文献１に記載された方法における問題点、すなわち、事前に所望の輪郭形状を特定するための形状を定義し、そのパートプログラムを作成したうえで改めて所望の輪郭形状を定義しなければならないという問題点を解消することができる。さらには、従来の課題であった、コーナ部形状の挿入操作に、タブレット装置が必要という問題点も解消することができる。
【００４９】
また、本実施の形態の自動プログラミング装置によれば、底面形状と関連して側面形状や上面形状が特定されることから、定義する加工領域形状における底面形状と側面形状や上面形状の関係を特定するデータを別に持つ必要がないという特徴や、側面形状や上面形状の定義データとして底面形状のデータを利用することができるという特徴により、より少ない情報で加工領域形状を容易に定義できる、といった従来にない効果を得ることができる。
【００５０】
さらには、底面形状定義処理部は、底面形状に関連した側面形状として、底面形状のそれぞれの稜線に対して、側面形状を特定するに必要なデータをこの稜線の属性データとして定義する際に、底面形状を含む平面を基準とした側面形状の傾斜角度を属性データの一つとするので、傾斜角度を属性データとして含む側面形状を定義することができる。
【００５１】
また、側面形状の面の種類も属性データの一つとするので、面の種類を属性データとして含む側面形状を定義することができ、さらにまた、底面形状の稜線を側面形状が共有するか否かを表す識別子も属性データの一つとするので、稜線を側面形状が共有するか否かを属性データとして定義することができ、これら属性データの定義により、さらに少ない情報で加工領域形状を容易に定義できる。さらに、底面形状の稜線の属性データとして、それらの稜線に関連した上面形状を特定するデータを加えてもよく、底面形状、側面形状に加えて、上面形状も定義することにより、加工領域形状をさらに詳細に定義できる。
【００５２】
実施の形態２．
図１０−１は、実施の形態２の製品形状及びその加工領域形状を示す斜視図である。図１０−２は、図１０−１の加工領域形状を含む部分の断面図である。上記実施の形態１の例で示したポケット形状のような場合は、実際の加工除去領域の側面部分は製品形状に囲まれているため、加工領域形状が加工除去領域よりも大きくなると製品形状と干渉することとなる。そのため、加工領域形状の側面部分は、加工除去領域の側面（内面）部分と一致する場合が多い。
【００５３】
しかしながら、図１０−１、図１０−２の例に示すような製品形状の場合には、底面形状ＢＳ８を構成する稜線Ｅ８１〜Ｅ８４のうち、稜線Ｅ８１に関連する側面形状ＳＳ８１のみ製品形状に囲まれているため、この側面形状ＳＳ８１と製品形状との干渉のみを確認すればよい。そして、加工領域形状を定義するための底面形状ＳＢ８、及び側面形状ＳＳ８１〜ＳＳ８４は、図１０−１、図１０−２の例に示すように定義してもよい。
【００５４】
このような構成の自動プログラミング装置によれば、さらに多様な加工領域形状を定義することができるとともに、不要な部分の干渉の確認を容易に削減することができ、演算部の負荷を容易に軽減することができる。
【００５５】
実施の形態３．
上記実施の形態１にて説明したように、上面形状生成処理部は省略可能である。このような、上面形状生成処理部を備えていない自動プログラミング装置の場合においては、図１の構成において、加工領域形状生成処理部１３４は上面形状生成処理部１３３に替わって、底面形状の稜線から構成される輪郭形状を含む面を基準として、加工領域側に向けて、設定された距離（加工深さだけ離れた距離）だけ離れた平面を生成し、上面形状とする。このような構成の自動プログラミング装置によれば、上面形状生成処理部を備えていないものにおいても、問題なく上面形状を定義することができ、そのような装置においても多様な加工領域形状を定義することができるとともに、不要な部分の干渉の確認を容易に削減することができる。
【００５６】
なお、本発明は、上述の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で、各構成要素を変形して具体化できる。また、上述の実施の形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を構成できる。例えば、上述の実施の形態に開示される全構成要素から幾つかの構成要素を削除してもよいし、異なる実施の形態の構成要素を適宜組み合わせてもよい。
【００５７】
さらなる効果や変形例は、当業者によって容易に導き出すことができる。よって、本発明のより広範な態様は、以上のように表わしかつ記述した特定の詳細および代表的な実施形態に限定されるものではない。したがって、添付のクレームおよびその均等物によって定義される総括的な発明の概念の精神または範囲から逸脱することなく、様々な変更が可能である。
【産業上の利用可能性】
【００５８】
以上のように、本発明にかかる自動プログラミング装置は、ＮＣ工作機械の動作を制御するＮＣ自動プログラムを生成するための自動プログラミング装置に有用であり、特により少ない情報量で多様な加工領域形状を定義することが要求される自動プログラミング装置に適用して好適なものである。
【符号の説明】
【００５９】
１０１  自動プログラミング装置
１０２  ＮＣ装置
１１１  入力装置
１１２  表示装置
１２１  対話式操作処理部
１３０  加工領域定義部
１３１  底面形状定義処理部
１３２  側面形状生成処理部
１３３  上面形状生成処理部
１３４  加工領域形状生成処理部
１３５  表示処理部
１４０  ＮＣプログラム生成部
１４１  加工工程分割処理部
１４２  加工ユニット定義処理部
１４３  ＮＣプログラム生成処理部
１５１  ＮＣプログラム解析処理部
Ｒ１０  加工除去領域
Ｅ１１〜Ｅ１４  底面形状を定義する稜線
Ｐ１１〜Ｐ１４  稜線Ｅ１１〜Ｅ１４を定義する点
Ｔ１１〜Ｔ１４  稜線Ｅ１１〜Ｅ１４に関連する側面形状の傾き
ＳＳ１１〜ＳＳ１４  稜線Ｅ１１〜Ｅ１４に関連する側面形状
ＳＢ１  底面形状を含む平面
ＳＳ１  底面形状に関連する上面形状
Ｌ０  加工深さ
Ｅ４１、Ｅ４２  底面形状を定義する稜線
Ｔ４１  稜線Ｅ４１に関連する側面形状の傾き
Ｅ５１、Ｅ５２  底面形状を定義する稜線
Ｅ５３  接線連続でないＥ５１、Ｅ５２のコーナ部についた丸み形状
Ｅ８１〜Ｅ８４  底面形状を定義する稜線
ＳＳ８１〜ＳＳ８４  稜線Ｅ８１〜Ｅ８４に関連する側面形状
【図１】
2010262528.tif 000003
【図２】
2010262528.tif 000004
【図３−１】
2010262528.tif 000005
【図３−２】
2010262528.tif 000006
【図４】
2010262528.tif 000007
【図５】
2010262528.tif 000008
【図６−１】
2010262528.tif 000009
【図６−２】
2010262528.tif 000010
【図６−３】
2010262528.tif 000011
【図６−４】
2010262528.tif 000012
【図７−１】
2010262528.tif 000013
【図７−２】
2010262528.tif 000014
【図７−３】
2010262528.tif 000015
【図８】
2010262528.tif 000016
【図９−１】
2010262528.tif 000017
【図９−２】
2010262528.tif 000018
【図１０−１】
2010262528.tif 000019
【図１０−２】
2010262528.tif 000020