トップ :: G 物理学 :: G05 制御;調整




【発明の名称】 数値制御加工における加工不能領域の検出方法、数値制御加工用形状データの作成方法、計算機プログラム及びプログラム記憶媒体
【発明者】 【氏名】大槻 正樹
【住所又は居所】東京都千代田区丸の内3丁目2番3号 株式会社ニコン内

【要約】 【課題】加工形状データから加工ツール径よりも狭い加工不能領域を検出する方法を提供する。

【解決手段】加工領域を示すボクセル11aと、加工領域外を示すボクセル11bが(a)に示すように初期状態として与えられる。ボクセル値が1であるボクセル(1画素ボクセル)について、ボクセル値が0であるボクセル(0画素ボクセル)からの距離の最小値を格納する(距離変換)(b)。ついで、この最小距離が所定量よりも小さいボクセルを0画素ボクセルとする(縮小処理)(c)。次に、全てのボクセルの1と0を反転させる(d)。そして、前述の距離変換、縮小処理を行った後、再びボクセルの1と0を反転させる(e)。最後に、最後に(a)に示されている最初のボクセルデータと(e)に示している拡大後のボクセルデータの差分を取る。残った1画素ボクセルが加工不能領域を示す(f)。
【特許請求の範囲】
【請求項1】 与えられた加工形状データと工具情報に基づいて数値制御加工用データを作成するに際し、前記加工形状データを、加工領域側方向に所定量縮小(オフセット)させた縮小形状を求め、続いて前記縮小形状を加工領域側と反対方向に前記所定量だけ拡大(オフセット)させた拡大形状を求め、さらに、前記加工形状データと前記拡大形状のデータの差分をとることにより、加工不能な領域を検出する方法であって、前記縮小形状、拡大形状、及び前記加工形状データと前記拡大形状のデータの差分を、2値化ボクセルデータを使用して求めることを特徴とする数値制御加工における加工不能領域の検出方法。
【請求項2】 前記拡大形状を求めるに際し、ボクセルデータの値を反転させ、反転させたデータを、加工領域側と反対方向に前記所定量だけ縮小し、さらにボクセルデータの値を反転させるとことにより拡大形状を求めることを特徴とする請求項1に記載の数値制御加工における加工不能領域の検出方法。
【請求項3】 加工形状データからそのボクセルデータを求めるに際し、三次元形状表示に使用されるZバッファ法のデータを用いることを特徴とする請求項1又は請求項2に記載の数値制御加工における加工不能領域の検出方法。
【請求項4】 前記所定量が、工具の半径と同じか工具の半径より大きいことを特徴とする請求項1から請求項3に記載の数値制御加工における加工不能領域の検出方法。
【請求項5】 請求項1から請求項4のうちいずれか1項に記載の数値制御加工における加工不能領域の検出方法を用いて加工不能領域を検出した後、当初の加工形状データを、前記加工不能領域が加工可能なように変形することを特徴とする数値制御加工用データの作成方法。
【請求項6】 請求項1から請求項4のうちいずれか1項に記載の数値制御加工における加工不能領域の検出方法又は、請求項5に記載の数値制御加工用データの作成方法を記述した計算機プログラム。
【請求項7】 請求項6に記載の計算機プログラムを記憶したプログラム記憶媒体。
【発明の詳細な説明】【0001】
【発明の属する技術分野】本発明は、与えられた加工形状データと工具情報に基づいて数値制御加工用データを作成するに際し、当該工具で加工不能な領域を検出する方法、この加工不能な領域を加工可能とするような数値制御加工用形状データの作成方法、これらの方法を記述した計算機プログラム、及びこの計算機プログラムを記憶したプログラム記憶媒体に関するものである。
【0002】
【従来の技術】例えば、虫歯の部分を削り取って残った支台歯に歯冠を被せることにより治療を行う場合、残った支台歯の先端部の形状を石膏で型どりし、それを3次元形状計測装置により計測して形状を求め、正常な歯形の外形を有し、内側には残った支台歯に嵌り合う形状の穴が加工された歯冠をNC装置により加工し、この歯冠を、支台歯に嵌合させて接着材により固定する技術が注目され始めている。
【0003】このように、所定の形状を有する穴加工をNC装置により行うためには、目的とする3次元形状を記載した加工形状データが与えられ、計算機により、そのような形状を加工するための工具の姿勢、軌跡が求められて、加工データ(数値制御加工用データ)としてNC装置に与えられ、それに従ってNC装置の制御が行われるのが普通である。
【0004】
【発明が解決しようとする課題】ところが、歯冠のように小さな被加工物の場合、加工しようとしている穴の形状が小さく、かつ複雑な形状をしているので、与えられた加工形状データを用いて加工を行おうとすると、加工しようとする大きさが工具の寸法より小さくなる部分が発生する。すなわち、この部分を加工しようとすると、加工が行われないとされたはずの部分まで加工が行われてしまうことになる。通常のNC装置に与える加工データを計算するプログラムでは、このような場合、その部分を加工不能な部分として残すような加工を行うように加工データを作成するようになっている。
【0005】この様子を図7に示す。図7は歯冠の内側加工面と工具との関係を示す図であり、図7において31は歯冠の内側の加工面を一つの面(工具の軸に平行な面)で切断したものを表し、32が切断面との交線を示す。切断された部分から工具33が見えている。この図に示すように、加工面31で囲まれ、工具33が入り込む穴の寸法は図の上部に行くにしたがって小さくなっており、工具33が図に示される位置で、工具33の外面と加工面31が接し、工具33をどちらの方向に移動させても、工具33の外面が加工面31を貫くようになっている。従って、これ以上の加工ができず、図中で34で示される部分が加工不能な未加工部分として残されることになる。
【0006】しかしながら、歯冠の穴のように、嵌合する相手がある場合は、未加工部分が残ると、その部分に相手の凸部が嵌り込まず、嵌合が十分に行われないという問題点が生じる。このような場合には、未加工部分を残さずに加工を行う必要がある。未加工部分が残らないようにすると、当初加工される部分とされていなかった部分が加工されることになる。すなわち、相手に嵌合させたときに隙間ができることになるが、この部分は接着材で埋まるので問題は生じない。
【0007】よって、このような場合、従来は、三次元形状測定装置によって測定された形状から、人間が未加工部分になると推定される部分を探し出し、未加工部分が無くなるように、CADにより加工形状データを修正していた。しかしながら、この処理には手間がかかる。特に加工形状が数式で表されない自由曲面などで構成されていた場合、未加工部分になるかどうかの判断が難しく、まだできたとしても多くの時間を要する。
【0008】本発明はこのような事情に鑑みてなされたもので、加工形状データから加工ツール径よりも狭い部分(加工不能領域と呼ぶ)を検出する方法、加工不能領域を加工可能とするように数値制御加工用形状データを作成する方法、及びこれらの方法を記述した計算機プログラム、さらにはこの計算機プログラムを記憶したプログラム記憶媒体を提供することを課題とする。
【0009】
【課題を解決するための手段】前記課題を解決するための第1の手段は、与えられた加工形状データと工具情報に基づいて数値制御加工用データを作成するに際し、前記加工形状データを、加工領域側方向に所定量縮小(オフセット)させた縮小形状を求め、続いて前記縮小形状を加工領域側と反対方向に前記所定量だけ拡大(オフセット)させた拡大形状を求め、さらに、前記加工形状データと前記拡大形状のデータの差分をとることにより、加工不能な領域を検出する方法であって、前記縮小形状、拡大形状、及び前記加工形状データと前記拡大形状のデータの差分を、2値化ボクセルデータを使用して求めることを特徴とする数値制御加工における加工不能領域の検出方法(請求項1)である。
【0010】本手段においては、まず、前記加工形状データを、加工領域側方向に所定量縮小(オフセット)させた縮小形状を求める。この所定量とは工具との関係で決まる量であり、これにより、加工すべき領域以外の領域を加工しないような加工を行う工具の動きの範囲を表す形状が縮小形状として求まる。次に、前記縮小形状を加工領域側と反対方向に前記所定量だけ拡大(オフセット)させた拡大形状を求める。この拡大形状は、前記縮小形状で決まる工具の動きに対応して実際に加工される領域に対応する。よって、前記加工形状データと前記拡大形状のデータの差分をとることにより、未加工部分を抽出することができる。
【0011】本手段においては、これらの一連の演算を2値化ボクセルデータを使用して行っている。ボクセルデータは三次元空間を縦・横・高さで等間隔に区切ることで表現したデータであり、第i行j列k段のボクセルをfijk(1≦i≦L、1≦j≦M、1≦k≦N)とあらわす。本手段においては、これらのうち2値化されたデータを使用して加工面の内外を表す。例えば加工すべき領域内では値が1となり、加工すべき領域の外では値が0となるようなボクセルデータを使用する。
【0012】この場合、まず、加工形状データから、加工すべき領域内では値が1となり、加工すべき領域外では値が0となるようなボクセルデータを作成する。そして、このボクセルデータの値が1であるボクセルのうち、ボクセルデータの値が0であるボクセルからの距離の最小値が前記所定値以下であるボクセルのデータ値を0に変えることによって前記縮小形状を求める。次に、この縮小形状において、ボクセルデータの値が0であるボクセルのうち、ボクセルデータの値が1であるボクセルからの距離の最小値が前記所定値以下であるボクセルのデータ値を1に変えることによって前記拡大形状を求める。
【0013】そして、加工形状データに対応するボクセルデータのうち値が1であるボクセルであって、拡大形状に対応するボクセルデータでも値が1であるボクセルの値を0に変えることによって、差分を求める。この差分でボクセルデータが1となっているボクセルが、加工不能領域に対応する。このようにボクセルデータを使用して計算を行うことにより、計算が著しく簡単になる。
【0014】前記課題を解決する第2の手段は、前記第1の手段であって、前記拡大形状を求めるに際し、ボクセルデータの値を反転させ、反転させたデータを、加工領域側と反対方向に前記所定量だけ縮小し、さらにボクセルデータの値を反転させるとにより拡大形状を求めることを特徴とするもの(請求項2)である。
【0015】前記第1の手段の例の説明においては、前記拡大形状を求めるに際し、ボクセルデータの値が0であるボクセルのうち、ボクセルデータの値が1であるボクセルからの距離の最小値が前記所定値以下であるボクセルのデータ値を1に変えることによって前記拡大形状を求めていた。これに対し、本手段においては、ボクセルデータの値を反転させてから縮小処理を行い、その上でボクセルデータの値を再反転させることにより拡大形状を求めるようにしている。よって、それに先立つ縮小処理と同じ処理により拡大処理を行うことができるので、計算処理を共用することができ、計算機処理を行う場合には、プログラムの共用化を図ることができる。
【0016】前記課題を解決するための第3の手段は、前記第1の手段又は第2の手段であって、加工形状データからそのボクセルデータ(加工領域に対応)を求めるに際し、三次元形状表示に使用されるZバッファ法のデータを用いることを特徴とするもの(請求項3)である。
【0017】Zバッファ法は、3次元の形状データを2次元平面である表示装置に表示する公知の方法であり、3次元形状を有する物体をある方向からみた場合、その3次元形状を、表示装置の画面をx−y平面とするx−y−z直交座標系で表し、座標(x,y)が同じ要素についてはzの値を比較し、zの値が最小のものが一番手前にあるとしてその要素を画面に表示するものである。
【0018】すなわち、Zバッファ法においては、どの方向から見た場合にも、表示装置の画面をx−y平面とするx−y−z直交座標系での3次元形状の3次元座標を計算する機能が含まれている。
【0019】本手段ではこの公知で一般的に使用されている手段を、2値化ボクセルデータを求めるのに使用する。すなわち、加工形状データで表される形状をある方向から見た場合、x−y平面である表示画面に表示される形状の各画素に対応するボクセルのz値を読み取る。いま、これらのデータが(x,y,z)であったとすると、(x,y)の座標を有するボクセルのうち、z≧zのボクセルのボクセル値を全て1とする。この操作を、加工形状データを見る方向を変えて、繰り返す。そして、全ての方向から見た場合についてボクセル値が1となっているボクセルを、加工形状で囲まれた部分、すなわち加工領域とする。このようにして、加工形状データから既存のプログラムを利用して容易にそのボクセルデータを求めることができる。
【0020】通常Zバッファ法による三次元データの表示は非常に高速に行えるため、本発明におけるこの処理も短時間で終了する。また、本手段においては、実際に表示画面に加工形状を表示させる必要はなく、単にデータ処理を行えばよいことはいうまでもない。
【0021】前記課題を解決するための第4の手段は、前記第1の手段から第3の手段のいずれかであって、前記所定量が、工具の半径と同じか工具の半径より大きいことを特徴とするもの(請求項4)である。
【0022】工具には円筒状又は回転軸を対象とした回転対称なものが多く、このような工具の場合、一方向への加工代は工具の半径となる。よって、前記所定量を工具の半径に一致させるかこれより大きくしておくことにより、このような工具を使用した場合の、加工不能領域を確実に求めることができる。
【0023】前記課題を解決するための第5の手段は、前記第1の手段から第4の手段のいずれかを用いて加工不能領域を検出した後、当初の加工形状データを、前記加工不能領域が加工可能なように変形することを特徴とする数値制御加工用データの作成方法(請求項5)である。
【0024】本手段においては、確実に加工不能領域を自動的に検出することができるので、当初の加工形状データを、前記加工不能領域が加工可能なように変形することにより、加工不能領域を確実に無くすることができる。
【0025】前記課題を解決するための第6の手段は、前記第1の手段から第5の手段のいずれかを記述した計算機プログラム(請求項6)である。
【0026】前記課題を解決するための第7の手段は、前記第6の手段である計算機プログラムを記憶したプログラム記憶媒体(請求項7)である。
【0027】
【発明の実施の形態】以下、図面を参照して本発明の好ましい実施の形態について説明する。まず、本発明の実施の形態である数値制御加工における加工不能領域の検出方法及び数値制御加工用形状データの作成方法を実行する装置構成例を図1に示す。この装置はコンピュータ本体1と、ディスプレイ2と、マウス3と、キーボード4を有する。コンピュータ本体1には本発明に係る設計方法を実行するプログラムやデータを格納するメモリ等が含まれる。具体的には、MS-Windows NT(登録商標)をOSとしているが、本発明はこれに限定されるものではない。またここでは歯冠の加工を例に挙げるが、本発明は歯冠の加工に限定されるものではない。
【0028】例えば前歯の歯冠を設計することを考える。通常前歯支台歯は薄いため、前述の図7に示したように加工ツールが入らないほど狭い形状であることが多い。そこで加工ツールが入るように加工領域を広げる必要がある。
【0029】コンピュータ本体1のメモリには、図1に写真で示したような加工形状データがロードされている。この加工形状データは例えば特開平9−178440号公報に記載された三次元計測機などで実際の歯牙模型を三次元計測して入力されている。
【0030】この加工形状データをボクセルで表現するために、まずボクセルデータベースを、コンピュータ1を構成するメモリ上に構築する。図2に示すように、各ボクセルには設計データ内あるいは外を示す1あるいは0の値と距離変換した距離値を格納できる構造となっており、このボクセルが加工形状データを完全に覆うように、L行M列N段用意する。ボクセルの大きさはボクセルの数や利用できるコンピュータ本体1のメモリの量にもよるが、歯牙形状データの場合、一辺0.1mm程度がよい。図2において11はボクセルを示し、12は加工形状データを示している。
【0031】なお、この処理を含め以下の処理も全て3次元処理であるが、図においては3次元で表現することが困難であるため、2次元で表現している。この2次元での表現を見て、それに対応する3次元処理を推考することは当業者には容易である。
【0032】以下、ディスプレイ2の表示面をx−y平面として考える。コンピュータ本体1にはZバッファ(図示せず)が用意されている。コンピュータ本体1に加工形状データを表示すると、その奥行き情報(すなわち表示されている加工形状のz方向位置)がZバッファに格納される。そこでボクセル各画素をディスプレイに表示した場合のディスプレイ上の位置(x,y)を計算し、その位置におけるZバッファ5に格納されている奥行き情報を参照する。参照された奥行きの値とボクセルのディスプレイ上での奥行きの値を比較し、ボクセルの方が奥にあればボクセルに1を、手前であれば0を格納する。
【0033】同様にして表示する方向を変えながら同じ処理を繰り返す。2度目以降はすでに1が格納されているボクセルのみ計算すると、処理の効率化を図ることができる。そして、全ての表示する方向について1が格納されているボクセルを、加工形状の内部にあるボクセル、すなわち加工領域を示すボクセルとする。以上の処理により加工形状の内部にあるボクセルに1が設定され、図4(a)に示すようにボクセルデータが得られる。歯冠形状データの場合、表示する方向は上、前後左右からの計5方向程度で十分である。
【0034】得られたボクセルデータから加工不能領域を抽出する処理の手順を図3、図4を使用して説明する図3は処理の手順を示すフローチャート、図4は処理の各段階におけるボクセルデータを示す図である。
【0035】まず、前述の処理により、加工領域を示すボクセル11aと、加工領域外を示すボクセル11bが図4(a)に示すように初期状態として与えられる。図4においては、値が1であるボクセルを灰色の塗り潰しで、値が0であるボクセルを白抜きで表す。まず、図3におけるステップS11で距離変換を施す。これは、加工領域を示すボクセル、すなわちボクセル値が1であるボクセル(「1画素ボクセル」ということがある)について、ボクセル値が0であるボクセル(「0画素ボクセル」ということがある)からの距離を計算し、その最小値を格納する処理である。
【0036】第i行j列k段のボクセルをfijk(1≦i≦L、1≦j≦M、1≦k≦N)とあらわす。また三次元空間全体をF={fijk}と書く。三次元空間F={fijk}の距離変換をD={dijk}とするとき、dijkは三次元空間Fの全0画素ボクセルから(i,j、k)までの距離値の最小値である。すなわち【0037】
【数1】

【0038】
pqr=0、1≦p≦L、1≦q≦M、1≦r≦N。
【0039】この距離変換により1画素ボクセルには0画素ボクセルからの最短距離が格納される。この様子を図4(b)に示す。1画素ボクセルに記入されている数字は規格化された最短距離である。
【0040】距離変換を実現する手法の例としては、電子情報通信学会論文誌Vol.J76-D-IINo.3 pp.445-453等がある。
【0041】次に、図3のステップS12において縮小処理を行う。これは、前記最短距離dijkが縮小させたい量よりも小さいボクセルを0画素のボクセルとすることで、容易に行うことができる。図4(c)に前記最短距離が2以下のボクセルを0画素のボクセルとすることで縮小処理を行った結果を示す。ここで1画素ボクセルに対応する領域は、加工領域以外を加工しないという条件の下で工具が移動できる領域を示す。
【0042】回転する工具で加工を行う場合、縮小させる距離はその工具の半径と同一とするか、余裕を見て、その工具の半径より大きな距離とする。この場合、縮小処理の結果残った1画素のボクセルは、加工領域以外を加工しないという条件の下で工具の中心先端部が移動できる空間に対応する。
【0043】次に、拡大処理に入るが、本実施の形態においては、拡大処理を、縮小処理に変換することにより実施している。まず、図3のステップS13において、全てのボクセルの1と0を反転させる。反転させた結果を図4(d)に示す。そして、この反転後のボクセルについて、図3のステップS14において、前述の距離変換、縮小処理を行った後、再びボクセルの1と0を反転させる。この際、縮小処理に用いる縮小させたい距離は、ステップS12の縮小処理に用いた縮小させたい距離と同一とする。これらの一連の処理を行った結果を図4(e)に示す。図4(e)において1画素ボクセルで示される領域は、加工領域以外を加工しないという条件の下で工具が移動した場合に実際に加工される領域を示す。
【0044】最後に、図4(a)に示されている最初のボクセルデータと図4(e)に示している拡大後のボクセルデータの差分を取る。すなわち、前者の1画素ボクセルのうち、後者の1画素ボクセルでもあるものを0画素ボクセルに変える。その結果を図4(f)に示す。残った1画素ボクセルが加工不能領域を示す。このようにして、単純な方法により、加工不能領域を抽出することができる。
【0045】次に図4(f)の残された1画素ボクセルを利用して、加工ツールが入るように加工形状データを変形させる例を図5(a)、(b)に示す。図5(a)において、加工不能領域としてボクセル11c〜11gに対応する領域が残されているものとする。また、工具は13に示すように、軸14を中心とする円筒形状で、先端部が半球状になったもので、下側から垂直に上側に向かって加工を行うものであるとする。
【0046】この工具と同じ形状の工具形状データ35をコンピュータ本体1のメモリ上に用意しておく。そして、ボクセル11c〜11gのうち一番上(すなわち加工側から見て最も奥)にあるボクセルに最も近い加工形状データ上の点Pでこの工具形状データが加工形状データに接するように配置し、その内部にある加工形状データを全て工具形状データの位置(すなわち工具の表面を表す位置)まで移動する。残りのボクセル(すなわち、ボクセル11c〜11gの全て)についても全て同様の処理を行う。
【0047】以上の処理により、加工不能領域は無くなるので、このような変形を行った後の加工形状データに基づいて、加工データを作成すれば、必要な領域が加工されずに残ることを防止できる。図5(b)は、このような加工形状データの変換後のデータ図を2次元的に示している。
【0048】図6(a)は、より複雑な加工形状データの変形を行う前のデータ図を、図6(b)は変形を行った後のデータ図を3次元的に示している。中央部分の角のとがった部分(内側から見れば隙間が狭くなっている部分)が、変形によりふくらんでいるのが分かる。すなわち、内側から見れば、加工領域が広がり、加工したい部分が残らないような加工形状とされている。このように、本実施の形態では、変形の結果を、ディスプレイ2に表示することにより、効果を確認することができる。
【0049】
【発明の効果】以上説明したように、本発明によれば、数値制御で切削加工する際に加工ツールよりも狭い為に加工できない加工不能領域を自動的に検出することが可能となり、また、これに基づいて、自動的に加工領域を広げ、加工不能領域を無くすることが可能となる。
【出願人】 【識別番号】000004112
【氏名又は名称】株式会社ニコン
【住所又は居所】東京都千代田区丸の内3丁目2番3号
【出願日】 平成13年8月29日(2001.8.29)
【代理人】 【識別番号】100094846
【弁理士】
【氏名又は名称】細江 利昭
【公開番号】 特開2003−67018(P2003−67018A)
【公開日】 平成15年3月7日(2003.3.7)
【出願番号】 特願2001−258945(P2001−258945)