(57)【特許請求の範囲】
【請求項１】
工具による工作物の機械加工をシミュレートする方法であって、
前記工作物に関連する前記工具の動きを表す掃引容積の内部の空間を、１組のレイによって埋めるステップであって、前記レイは、互いに平行であり、かつ前記掃引容積のシルエットによって制約されているものと、
前記工作物との少なくとも幾つかのレイの交差を求めるステップと、
前記交差に従って前記レイをクリッピングして、該レイの内部セグメントを求めるステップであって、前記レイの内部セグメントは、前記掃引容積および前記工作物の内部にあるものと、
前記レイの内部セグメントに基づいて、前記掃引容積によって前記工作物から除去された容積を求めるステップと、
を含み、
該方法の前記ステップはプロセッサによって実行される、工具による工作物の機械加工をシミュレートする方法。
【請求項２】
前記工具の経路のセグメントに対して前記掃引容積を生成することであって、前記セグメントは、シミュレーション中の前記工具の先行する位置から該工具の次の位置までの動きを定義することと、
前記工具が前記シミュレートの最終位置に達するまで該方法の前記ステップを反復的に実行することと、
を更に含む、請求項１に記載の方法。
【請求項３】
前記内部セグメントの数、該内部セグメントの間の距離、該内部セグメントの長さ及び該内部セグメントの厚さのうちの少なくとも幾つかに基づいて、前記除去容積を求めること、
を更に含む、請求項１に記載の方法。
【請求項４】
前記除去容積の幾何学的特性を求めること、
を更に含む、請求項１に記載の方法。
【請求項５】
前記除去容積に基づいて、前記動きによって除去された材料の特性を求めることであって、該特性が、前記材料の質量、該材料の容積、該材料の質量中心、該材料の幅、厚さ、長さ、該材料の慣性のうちの少なくとも１つを含むこと、
を更に含む、請求項１に記載の方法。
【請求項６】
サンプリングパターンに従って前記１組のレイで前記掃引容積を埋めること、
を更に含む、請求項１に記載の方法。
【請求項７】
前記掃引容積から先行する位置における前記工具の容積を減算することにより、前記埋めることの前に前記掃引容積を更新すること、
を更に含む、請求項１に記載の方法。
【請求項８】
前記サンプリングパターンは、デカルト座標系において前記１組のレイを含み、該レイは、工具経路ベクトルに対して垂直な軸において等しく間隔が空けられている、請求項６に記載の方法。
【請求項９】
前記サンプリングパターンは、角度に沿って等しく間隔が空けられかつ前記工具の経路の方向を指す前記１組のレイを含む、請求項６に記載の方法。
【請求項１０】
工具による工作物の機械加工をシミュレートする方法であって、前記工作物は工作物距離場によって表され、前記工具は工具距離場によって表され、前記工作物に対する前記工具の動きは掃引容積距離場によって表され、該方法は、
前記掃引容積内で１組のレイをキャストするステップであって、前記レイは、互いに平行であり、かつ前記掃引容積のシルエットによって制約されているものと、
前記掃引容積距離場及び前記工作物距離場の対応するゼロ値をもたらす少なくとも幾つかのレイにおける点に基づいて、前記レイの内部セグメントを求めるステップであって、前記レイの内部セグメントは、前記掃引容積および前記工作物の内部にあるものと、
前記内部セグメントの数、該内部セグメントの間の距離、該内部セグメントの長さ及び該内部セグメントの厚さのうちの少なくとも幾つかに基づいて、前記内部セグメントを組み合わせて除去容積を求めるステップと、
を含み、
該方法のステップはプロセッサによって実行される、工具による工作物の機械加工をシミュレートする方法。
【請求項１１】
前記除去容積の幾何学的特性を求めること、
を更に含む、請求項１０に記載の方法。
【請求項１２】
前記除去容積に基づいて、前記工具の前記動きによって除去された材料の特性を求めること、
を更に含む、請求項１０に記載の方法。
【請求項１３】
工具による工作物の機械加工をシミュレートするシステムであって、前記工作物は工作物距離場によって表され、前記工具は工具距離場によって表され、前記工作物に対する前記工具の動きは掃引容積距離場によって表され、該システムは、
前記掃引容積の内部の空間に１組のレイをキャストし、前記掃引容積および前記工作物の内部にある前記レイの内部セグメントを生成しながら、前記掃引容積距離場及び前記工作物距離場のゼロ値をもたらす少なくとも幾つかのレイにおける点に基づいて除去容積を求めるプロセッサ、
を備え、
前記レイは、互いに平行であり、かつ前記掃引容積のシルエットによって制約されている
工具による工作物の機械加工をシミュレートするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的には、工作物と交差する工具によって除去された容積を解析することに関し、より詳細には、工具による工作物の機械加工のシミュレーション中に工作物から除去された容積の幾何学的特性を求めることに関する。
【背景技術】
【０００２】
ＮＣフライス加工
数値制御（ＮＣ：Ｎｕｍｅｒｉｃａｌｌｙ  Ｃｏｎｔｒｏｌｌｅｄ）フライス加工の工程をシミュレートすることは、コンピューター支援設計（ＣＡＤ：Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）及びコンピューター支援製造（ＣＡＭ：Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ）において根本的に重要である。シミュレーション中に、工作物のコンピューターモデルが、ＮＣフライス加工工具のコンピューター表現及び１組のＮＣフライス加工工具運動を用いて編集され、フライス加工工程がシミュレートされる。
【０００３】
工作物モデル及び工具表現を、シミュレーション中に可視化して、工作物及び工具ホルダーのような部品間の潜在的な衝突を検出することができ、シミュレーション後に、工作物の最終的な形状を検証することができる。
【０００４】
工作物の最終的な形状は、工具及び工具運動の選択によって影響を及ぼされる。これらの運動を制御するための命令が通常は、ＣＡＭシステムを用いて、工作物の所望の最終的な形状のグラフィック表現から生成される。それらの運動は通常、準備コード（ｐｒｅｐａｒａｔｏｒｙ  ｃｏｄｅ）又はＧコードとしても知られている、数値制御プログラミング言語を用いて実現される。例えば標準規格ＲＳ２７４Ｄ及びＤＩＮ  ６６０２５／ＩＳＯ  ６９８３を参照されたい。
【０００５】
ＣＡＭシステムによって生成されるＧコードは、所望の形状の正確な複製物を製造しない場合がある。さらに、ＮＣ工具の動きは、ＮＣフライス盤の作動部によって支配されるが、その速度、運動範囲、並びに加速及び減速能力は限られている。したがって、実際の工具運動は、ＮＣ機械命令に厳密には従わない場合がある。
【０００６】
工作物の最終的な形状と、工作物の所望の形状との間の不一致は極めて小さい場合がある。状況によっては、これらの不一致の結果として、工作物の最終的な形状の表面に、サイズが概ね数マイクロメートルの深さ及び幅、数十マイクロメートルの長さにわたる望ましくない溝状の傷（ｇｏｕｇｅ）又は欠け目（ｎｉｃｋ）が生じる可能性がある。
【０００７】
通常、所望の部品をフライス加工する前に、より軟質で安価な材料から形成される試験工作物をフライス加工することによって、１組のＮＣ機械命令が試験される。その試験工作物の目視検査によって、試験工作物において望ましくない不一致が見つかった場合には、それに応じて、ＮＣ機械命令を変更することができる。
【０００８】
この手動試験は、時間及びコストがかかる。単一の試験工作物を加工するための時間は概ね数時間かかる場合があり、許容できる１組のＮＣ機械命令が得られるまでに、何度か繰り返すことが必要な場合がある。したがって、コンピューターに基づくシミュレーション及びレンダリングを用いて、これらの不一致を試験することが望ましい。しかしながら、概ね１メートルの寸法を有する場合がある工作物に対して、概ね数マイクロメートルの寸法で不一致を検出するには、極めて正確なコンピューターモデルが必要とされる。本発明の目的は、フライス加工シミュレーションのためにそのような高精度のモデルを表現し、レンダリングするための空間及び時間効率の良い方法を提供することである。
【０００９】
掃引容積
フライス加工中に、本明細書において工具経路と呼ばれる所定の工具運動に従って、工具が工作物に対して動く。工具経路は工作物に対する工具の相対的な位置、向き及び他の形状データについての情報を含むことができる。
【００１０】
工具が工具経路に沿って動くとき、工具は「掃引容積」を切り出す。フライス加工中に、工具が工具経路に沿って動くとき、掃引容積によって横切られる工作物の部分が除去される。この材料除去は、コンピューターにおいて、空間領域構成法（ＣＳＧ：ｃｏｎｓｔｒｕｃｔｉｖｅ  ｓｏｌｉｄ  ｇｅｏｍｅｔｒｙ）差分演算としてモデル化することができ、その演算によれば、工作物からの掃引容積のＣＳＧ減算演算を用いて、工作物のその部分が工作物から除去される。
【００１１】
用途の一例としてＮＣフライス加工シミュレーションが用いられるが、掃引容積は、科学、工学、エンターテインメント及びコンピューターグラフィックスの数多くの分野において用途を有する。幾つかの具体的な用途は、数例を挙げると、コンピューター支援設計、フリーフォーム設計、コンピューターを利用した製図、アニメーション、立体モデリング、ロボット光学、製造自動化及び可視化を含む。以下の説明は、掃引容積の正確な表現が必要とされるか、又は望まれる全ての分野に当てはまる。
【００１２】
ここでは３次元座標系を重点的に取り扱うが、用語「掃引容積」は、より一般的には、Ｎ次元座標系に拡張することができる。詳細には、以下の説明は、２次元空間内の経路に沿って動く１次元又は２次元の形状によって掃出される面積に、又はそれよりも高次元の系内の経路又は表面にわたって動く形状によって掃出される超体積にも当てはまる。
【００１３】
掃引容積研究の重要性及び課題の概説が、非特許文献１において提示されている。彼らは、ソフトウエアを用いて掃引容積の複雑な数学的定式化を実施するのが難しいことによって、この分野における研究が制限されること、並びに掃引容積の境界を計算するには難問が未解決であり、より良好な可視化ツール、及びより正確な方法が必要とされることを結論として述べている。
【００１４】
特許文献１に記述されているように、単純な経路に沿って動く単純な形状の掃引容積は、解析的に表現することができることがある。しかしながら、それらの方法は、複雑な形状及び複雑な工具経路まで一般化しない。
【００１５】
幾つかの方法が、多角形の形状の掃引容積を近似する。非特許文献２の場合のようにＣＳＧ演算を介して効率的に編集するために、又は特許文献２の場合のように効率的に衝突検出するために、多角形の形状のモデルを空間的な階層内に符号化することができる。多角形の物体の掃引容積を近似する方法は、非特許文献３にも記述されている。
【００１６】
特許文献３は、掃引容積の多角形モデルに関するＣＳＧ演算を用いて機械加工をシミュレートする方法を記述している。その方法では、工作物の境界が１組のセルの中に入れられ、各セルは、そのセルを横切る掃引容積多角形への参照を含む。工作物と特定のセル内の掃引容積多角形との間の交差部分を要求に応じて処理して、狭い対象領域においてフライス加工される表面の高精度のレンダリングを生成することができる。しかしながら、全体モデルを高精度で可視化するには、非常に時間がかかる。
【００１７】
特許文献４は、物体を多面体として表すことを記述している。その物体は、一連の変換を用いて、離散的な時間ステップにおいて、その経路に沿って配置される。掃引容積の境界に位置する多面体表現の辺及び面が各時間ステップにおいて求められ、互いに接続されて、その掃引容積の多面体近似が生成される。
【００１８】
これらの多角形法のそれぞれの精度は、物体モデルの多角形表現によって制限される。特に曲率半径が小さい場合には、複雑な工具の曲面を正確に表現するのに、数十億もの多角形が必要とされる場合がある。したがって、それらの方法は、精度が限られているか、若しくは掃引容積の高精度のモデルを生成するのに法外な処理時間及びメモリ要件を要するかのいずれか、又はその両方である。加えて、掃引容積を一連の離散的な時間ステップとして近似する方法では、時間ステップ間の精度が限られており、エイリアシングアーティファクトを受けやすい。
【００１９】
フライス加工シミュレーションのための別の一般的な表現はＺバッファー又はＤｅｘｅｌ法として知られている。その手法は非特許文献４において記述されている。特許文献５は、同じような方法を記述しており、その方法では、工作物が、全てｚ方向内にある直線の格子によってモデル化され、フライス加工シミュレーションは、その格子にわたって工具モデルを動かし、その工具によって横切られる工作物を表す線の高さを変更することによって実行される。
【００２０】
Ｄｅｘｅｌ法は通常、ｚ軸と一致しない方向において特に、分解能が限られるという難点があり、掃引容積の高精度のモデルを生成するのに適していない。Ｄｅｘｅｌ表現はボクセルベース表現に関連する。非特許文献５において、Ｋａｕｆｍａｎはボクセルベース表現、及びボクセルベース表現をレンダリングし、処理する方法を記述する。非特許文献６及び非特許文献７はいずれも、物体のボクセルベース表現に関するＣＳＧ演算を用いてスカルプティング（ｓｃｕｌｐｔｉｎｇ）をシミュレートする。
【００２１】
２値ボクセルを用いて掃引容積を表現する方法は、特許文献６並びに非特許文献８及び非特許文献９を含む。これらの方法は、掃引容積を表すために用いられる最小ボクセルのサイズによって精度が制限される。
【００２２】
距離場
特許文献７、特許文献８、特許文献９及び特許文献１０において記述されているように、距離場が、形状をレンダリングし、編集するための有効な表現である。
【００２３】
距離場は、物体を表す陰関数の一形態である。距離場は、空間内の任意の点から物体の表面への最短距離を与えるスカラー場である。距離場がゼロとなる点は、物体の表面上にある。物体の表面上の１組の点は集合的に、ｄ＝０等値面（ｉｓｏｓｕｒｆａｃｅ）としても知られる物体の境界を表す。一般に、物体の距離場は、物体の内側の点について正であり、物体の外側の点について負であるが、この正負符号は逆にすることができる。
【００２４】
距離場は、掃引容積を表現し、レンダリングするために用いられている。非特許文献１０は、陰関数に関して掃引容積の包絡線を定義するための理論的基礎を記述した。非特許文献１１において、Ｓｏｕｒｉｎ及びＰａｓｋｏは、陰表面を用いて掃引容積を表現した。しかしながら、陰表面はレンダリングするのが困難である可能性があり、任意の複雑な工具形状に関して適した陰表現を定義するのは難しい。
【００２５】
物体の距離場を計算するための手法は距離場関数と呼ばれる。平面、球体、又は円柱等の非常に単純な物体の場合、距離場関数は閉形式を有する解析関数とすることができる。より複雑な物体の場合、解析関数は不可能である場合がある。しかしながら、数値的手法は依然として可能とすることができる。例えば、特許文献１１は、掃引フライス加工工具等の掃引物体の距離場を求めるための数値的手法を記載している。
【００２６】
適応的にサンプリングされる距離場（ＡＤＦ：Ａｄａｐｔｉｖｅｌｙ  Ｓａｍｐｌｅｄ  Ｄｉｓｔａｎｃｅ  Ｆｉｅｌｄｓ）は、ディテール指向サンプリング（ｄｅｔａｉｌ−ｄｉｒｅｃｔｅｄ  ｓａｍｐｌｉｎｇ）を用いて、規則的にサンプリングされる距離場を用いて得られるよりも距離場の空間及び時間的にはるかに効率の良い表現を提供する。ＡＤＦは、空間的なセルの階層として距離場を格納する。各セルは距離データと、そのセルに関連する距離場の部分を再構成するための再構成法とを含む。距離データは、距離場の値と、距離場の勾配及び偏導関数とを含むことができる。メモリ及び計算複雑度を低減するために、セル内の距離場は必要とされるときにのみ再構成することができる。
【００２７】
ＣＳＧ演算を用いて編集をシミュレートするために、ＡＤＦを用いることができる。編集されるモデル及び編集ツールは、距離関数、規則的にサンプリングされる距離場、又はＡＤＦとして表すことができる。その編集過程は、例えば、そのモデルのＡＤＦを変更することによって、編集される形状のＡＤＦを明示的に生成することができる。
【００２８】
代替的には、編集される形状は、複合ＡＤＦ（ＣＡＤＦ：Ｃｏｍｐｏｓｉｔｅ  ＡＤＦ）として暗黙的に表すことができる。ＣＡＤＦは、物体を表すように生成され、ここで、ＣＡＤＦは空間階層内に配列された１組のセルを含む。ＣＡＤＦ内の各セルは、１組の幾何学的要素距離場関数のサブセットと、その幾何学的要素距離場関数のサブセットを組み合わせて、セルによって表わされる物体の一部分の複合距離場を再構成するための再構成方法とを含む。距離場のサブセット内の各距離場は、複合境界と呼ばれる、セル内の物体の境界の一部を形成する。
【００２９】
ＣＡＤＦは、非常に高い精度で、フライス加工された物体の距離場を再構成することができる。１組の幾何学的要素の距離場関数は、解析的方法又は数値的方法によって高精度で計算することができ、距離場関数の値は高精度で結合することができる。結果として得られる表面は、表面特徴について非常に詳細であり、約１立方メートルのシミュレートされた物体の場合、表面特徴は１ミクロン（マイクロメートル）未満とすることができる。
【００３０】
除去容積の幾何学的特性
フライス加工中、工具が工具経路に沿って動くと、工具は工作物と接触することができる。工具が工作物に対して動くと、工具は掃引容積を切り出す。掃引容積が交差する工作物の一部分は取り除かれ、これは「除去容積（ｒｅｍｏｖｅｄ  ｖｏｌｕｍｅ）」である。この除去容積によって更新される工作物は「加工中の工作物」である。
【００３１】
フライス加工のシミュレーションは、フライス加工工具によって各工具の移動に起因して除去される材料の正確なモデル化を必要とする。したがって、除去容積又は除去容積の正確な幾何学的表現を求めることが必要である。
【００３２】
現在、工具経路情報を生成するコンピューター支援設計（ＣＡＤ）／コンピューター支援製造（ＣＡＭ）システムは、シミュレーションのパラメーターを選択するために幾何学的容積解析を使用する。平均フライス加工力は、任意の特定の瞬間の間の材料除去率（ＭＲＲ：Ｍａｔｅｒｉａｌ  Ｒｅｍｏｖａｌ  Ｒａｔｅ）に比例すると想定される。除去容積をフライス加工工具の刃通過頻度で割ることにより、各工具移動に対する平均ＭＲＲが求められ、刃通過頻度は、刃が工作物と係合する頻度であり、フライス加工工具の刃の数とスピンドル速度とを乗ずることによって得られる。
【００３３】
平均フライス加工力は、除去容積から求められたＭＲＲを用いて解析され、材料をフライス加工するために必要な電力は、ＭＲＲに比例する。機械加工の性能を増大させるために、単位容積の材料を除去する際に消費されるスピンドル電力及び特定のエネルギーも使用することができる。除去容積を計算することに加えて、質量、質量中心、表面積、慣性モーメント、長さ、幅及び厚さ等、除去容積の他の幾何学的特性もまた、プロセス解析で使用するように計算することができる。除去容積の慣性モーメントは、フライス加工工具によって工作物に加えられる応力を推定し、後に、機械加工面に対して残された残留応力を推定するために使用される。
【００３４】
立体の容積計算は、多くの幾何学的用途に対して基本である。容積計算における重要性及び難題の概要は、非特許文献１２に記載されている。工具経路に沿ってフライス加工工具によって除去された立体の正確なモーメント及び容積を求めることは、湾曲自由面が存在するために困難である。したがって、容積は、現在、非特許文献１３に記載されているように、市販のソフトウェアによって、まず表面を評価して平面充填し、平面充填された物体の容積を計算することにより、計算されている。
【００３５】
容積計算の別の一般的な方法は、発散定理を用いることにより体積積分を面積分に変換することである。その手法は、非特許文献１４に記載されている。多面体近似は、多面体近似を介して湾曲物体の積分特性の正確な評価に、多数の面を有する多面体の使用が必要である可能性があることを示す。数値積分技法を用いて、所与の多面体近似に対して面積分が評価される。しかしながら、主な限界のうちの１つは、結果の精度を保証するための平面充填のレベルである。
【００３６】
規則的な又は８分木（オクトリー）分割を使用することによるセル近似は、ボクセルベース表現に関連し、これらの方法は、精度及びメモリが、除去容積を表現するために使用される最小ボクセルのサイズによって制限される。例えば、一方法は、非特許文献１５において記載されているように、再帰分割面を使用する。その方法は、異常点の近くの局所凸包の容積を推定することによって容積を計算する。しかしながら、陰関数（ｉｍｐｌｉｃｉｔ）形式、陽関数（ｅｘｐｌｉｃｉｔ）形式又はパラメーター形式の閉形式表現は、特にＮＣフライス加工の場合、常に利用可能であるとは限らない。
【００３７】
幾つかの方法は、非一様有利Ｂ−スプライン（ＮＵＲＢＳ：Ｎｏｎ−Ｕｎｉｆｏｒｍ  Ｒａｔｉｏｎａｌ  Ｂ−Ｓｐｌｉｎｅ）面によって表現される立体に対し、グラフィック処理ユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を使用して立体の幾何学的特性を求める。それらの方法は、非特許文献１６に記載されている方法と、非特許文献１７に記載されている方法とを含む。ＮＵＲＢＳ面は、滑らかな微分連続性を含む自由度の高いモデル化に対して使用されるが、使用されたブール演算は、ＮＣフライス加工シミュレーションシステムに対して正確な結果を提供しない。
【００３８】
このため、工具によって工作物を機械加工するシミュレーションに使用される除去容積を求め解析する方法が必要とされている。
【先行技術文献】
【特許文献】
【００３９】
【特許文献１】米国特許第４，８３３，６１７号
【特許文献２】米国特許第６，０９９，５７３号
【特許文献３】米国特許第６，８６２，５６０号
【特許文献４】米国特許第６，９９３，４６１号
【特許文献５】米国特許第７，１４９，６６８号
【特許文献６】米国特許第６，０４４，３０６号
【特許文献７】米国特許第６，３９６，４９２号
【特許文献８】米国特許第６，７２４，３９３号
【特許文献９】米国特許第６，８２６，０２４号
【特許文献１０】米国特許第７，０４２，４５８号
【特許文献１１】米国特許出願公開第２０１０／０２９８９６７号
【非特許文献】
【００４０】
【非特許文献１】Ａｂｄｅｌ−Ｍａｌｅｋ、Ｂｌａｃｋｍｏｒｅ、及びＪｏｙ「Ｓｗｅｐｔ  Ｖｏｌｕｍｅｓ：  Ｆｏｕｎｄａｔｉｏｎｓ，  Ｐｅｒｓｐｅｃｔｉｖｅｓ，  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ」Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｓｈａｐｅ  Ｍｏｄｅｌｉｎｇ，  ２００６
【非特許文献２】Ｂｕｔｃｈｅｒ「Ｉｎｔｅｒａｃｔｉｖｅ  ＣＳＧ」Ｐｒｏｃｅｅｄｉｎｇｓ，  Ｔｅｃｈｎｉｃａｌ  Ｓｋｅｔｃｈｅｓ，  ＳＩＧＧＲＡＰＨ，  １９９９
【非特許文献３】Ａｂｒａｍｓ及びＡｌｌｅｎ「Ｃｏｍｐｕｔｉｎｇ  Ｓｗｅｐｔ  Ｖｏｌｕｍｅｓ」Ｊｏｕｒｎａｌ  ｏｆ  Ｖｉｓｕａｌｉｚａｔｉｏｎ  ａｎｄ  Ａｎｉｍａｔｉｏｎ，  ２０００
【非特許文献４】ｖａｎ  Ｈｏｏｋ「Ｒｅａｌ−ｔｉｍｅ  Ｓｈａｄｅｄ  ＮＣ  Ｍｉｌｌｉｎｇ  Ｄｉｓｐｌａｙ」Ｐｒｏｃｅｅｄｉｎｇｓ，  ＳＩＧＧＲＡＰＨ  １９８６
【非特許文献５】Ｋａｕｆｍａｎ「Ｖｏｌｕｍｅ  Ｖｉｓｕａｌｉｚａｔｉｏｎ」ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ  Ｓｏｃｉｅｔｙ  Ｐｒｅｓｓ，  １９９１
【非特許文献６】Ｇａｌｙｅａｎ及びＨｕｇｈｅｓ「Ｓｃｕｌｐｔｉｎｇ：  ａｎ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｖｏｌｕｍｅｔｒｉｃ  Ｍｏｄｅｌｉｎｇ  Ｔｅｃｈｎｉｑｕｅ」Ｐｒｏｃｅｅｄｉｎｇｓ，  ＳＩＧＧＲＡＰＨ  １９９１
【非特許文献７】Ｗａｎｇ及びＫａｕｆｍａｎ「Ｖｏｌｕｍｅ  Ｓｃｕｌｐｔｉｎｇ：」Ｐｒｏｃｅｅｄｉｎｇｓ，  ＳＩＧＧＲＡＰＨ  １９９５
【非特許文献８】Ｅｒｄｉｍ及びＩｌｉｅｓ「Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｓｈａｐｉｎｇ  Ｇｅｏｍｅｔｒｉｃ  Ｓｈａｐｅｓ」Ｐｒｏｃｅｅｄｉｎｇｓ，  ＴＭＣＥ，  ２００８
【非特許文献９】Ｅｒｄｉｍ及びＩｌｉｅｓ「Ｏｃｔｒｅｅ−ｂａｓｅｄ  Ｂｏｕｎｄａｒｙ  Ｅｖａｌｕａｔｉｏｎ  ｆｏｒ  Ｇｅｎｅｒａｌ  Ｓｗｅｅｐｓ」Ｐｒｏｃｅｅｄｉｎｇｓ，  ＴＭＣＥ，  ２００８
【非特許文献１０】Ｍａｒｔｉｎ及びＳｔｅｐｈｅｎｓｏｎ「Ｓｗｅｅｐｉｎｇ  ｏｆ  Ｔｈｒｅｅ  Ｄｉｍｅｎｓｉｏｎａｌ  Ｏｂｊｅｃｔｓ」Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ，  ２０（４），  １９９０
【非特許文献１１】Ｓｏｕｒｉｎ及びＰａｓｋｏ「Ｆｕｎｃｔｉｏｎ  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ  ｆｏｒ  Ｓｗｅｅｐｉｎｇ  ｂｙ  ａ  Ｍｏｖｉｎｇ  Ｓｏｌｉｄ」Ｐｒｏｃｅｅｄｉｎｇｓ，  Ｓｏｌｉｄ  Ｍｏｄｅｌｉｎｇ，  １９９５
【非特許文献１２】Ｌｅｅ及びＲｅｑｕｉｃｈａ「Ａｌｇｏｒｉｔｈｍｓ  ｆｏｒ  ｃｏｍｐｕｔｉｎｇ  ｔｈｅ  ｖｏｌｕｍｅ  ａｎｄ  ｏｔｈｅｒ  ｉｎｔｅｇｒａｌ  ｐｒｏｐｅｒｔｉｅｓ  ｏｆ  ｓｏｌｉｄｓ．  Ｉ．  Ｋｎｏｗｎ  ｍｅｔｈｏｄｓ  ａｎｄ  ｏｐｅｎ  ｉｓｓｕｅｓ」Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  ｏｆ  ｔｈｅ  ＡＣＭ，  １９８２
【非特許文献１３】「ＡＣＩＳ  Ｇｅｏｍｅｔｒｉｃ  Ｍｏｄｅｌｅｒ：  Ｕｓｅｒ  Ｇｕｉｄｅ  ｖ２０．０」２００９，  Ｓｐａｔｉａｌ  Ｃｏｒｐｏｒａｔｉｏｎ
【非特許文献１４】Ｇｏｎｚａｌｅｚ−Ｏｃｈｏａ、ＭｃＣａｍｍｏｎ及びＰｅｔｅｒｓ「Ｃｏｍｐｕｔｉｎｇ  ｍｏｍｅｎｔｓ  ｏｆ  ｏｂｊｅｃｔｓ  ｅｎｃｌｏｓｅｄ  ｂｙ  ｐｉｅｃｅｗｉｓｅ  ｐｏｌｙｎｏｍｉａｌ  ｓｕｒｆａｃｅｓ」Ｊｏｕｒｎａｌ  ＡＣＭ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｇｒａｐｈｉｃｓ，  １９９８
【非特許文献１５】Ｐｅｔｅｒｓ及びＮａｓｒｉ「Ｃｏｍｐｕｔｉｎｇ  Ｖｏｌｕｍｅｓ  ｏｆ  Ｓｏｌｉｄｓ  Ｅｎｃｌｏｓｅｄ  ｂｙ  Ｒｅｃｕｒｓｉｖｅ  Ｓｕｂｄｉｖｉｓｉｏｎ  Ｓｕｒｆａｃｅｓ」ＥＵＲＯＧＲＡＰＨＩＣＳ  １９９７
【非特許文献１６】「Ｋｉｍ、Ｋｉｍ、Ｋｏ及びＴｅｒｚｏｐｏｕｌｏｓ  Ｆａｓｔ  ＧＰＵ  ｃｏｍｐｕｔａｔｉｏｎ  ｏｆ  ｔｈｅ  ｍａｓｓ  ｐｒｏｐｅｒｔｉｅｓ  ｏｆ  ａ  ｇｅｎｅｒａｌ  ｓｈａｐｅ  ａｎｄ  ｉｔｓ  ａｐｐｌｉｃａｔｉｏｎ  ｔｏ  ｂｕｏｙａｎｃｙ  ｓｉｍｕｌａｔｉｏｎ」Ｔｈｅ  Ｖｉｓｕａｌ  Ｃｏｍｐｕｔｅｒ：  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ，  ２００６
【非特許文献１７】Ｋｒｉｓｈｎａｍｕｒｔｈｙ及びＭｃＭａｉｎｓ「Ａｃｃｕｒａｔｅ  ＧＰＵ−ａｃｃｅｌｅｒａｔｅｄ  ｓｕｒｆａｃｅ  ｉｎｔｅｇｒａｌｓ  ｆｏｒ  ｍｏｍｅｎｔ  ｃｏｍｐｕｔａｔｉｏｎ」Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ  Ｊｏｕｒｎａｌ，  ２０１１
【発明の概要】
【発明が解決しようとする課題】
【００４１】
本発明の様々な実施の形態の目的は、工具によって工作物を機械加工するシミュレーション中に工具によって除去される容積を求めるシステム及び方法を提供することである。幾つかの実施の形態の別の目的は、除去容積の幾何学的特性を求めることである。幾つかの実施の形態の別の目的は、任意の工具経路に沿って移動する任意の工具で使用されるために適している除去容積を求めることである。
【００４２】
幾つかの実施の形態の別の目的は、微細機械部品及び広範囲の材料の微細特徴を含む部品の製造の確立されたプロセスとなっている、微細フライス加工（ｍｉｃｒｏ−ｍｉｌｌｉｎｇ）のシミュレーションで使用される除去容積を求め解析するシステム及び方法を提供することである。フライス加工の様々な条件のばらつきにより、除去されたチップの幅、厚さ、長さ及び容積が変動することになるため、微細フライス加工におけるチップ形成の解析が強く必要とされている。
【課題を解決するための手段】
【００４３】
本発明の様々な実施の形態は、機械加工シミュレーション中に生成される掃引容積があり得る最大の除去容積に対応するという理解に基づく。このため、実際の除去容積を求めるために、様々な実施の形態は、例えば掃引容積の内部に定義される空間を試験する。幾つかの実施の形態では、内部空間は、掃引容積のシルエットを含む。例えば、本発明の幾つかの実施の形態は、掃引容積の内部の空間を１組のレイ（ｒａｙ：射線）で埋め（ｐｏｐｕｌａｔｅ）、工作物とのレイの交差に基づいて除去容積を求める。
【００４４】
したがって、本発明の実施の形態は、工具による工作物の機械加工をシミュレートする方法を開示する。本方法は、前記工作物に関連する前記工具の動きを表す掃引容積を、１組のレイによって埋めることと、前記工作物との少なくとも幾つかのレイの交差に基づいて、前記掃引容積によって前記工作物から除去された容積を求めることとを含む。前記工作物のモデルは、前記除去容積に基づいて変更される。本方法のステップはプロセッサによって実行される。
【００４５】
別の実施の形態は、工具による工作物の機械加工をシミュレートする方法を開示し、前記工作物は工作物距離場によって表され、前記工具は工具距離場によって表され、前記工作物に対する前記工具の動きは掃引容積距離場によって表される。本該方法は、前記掃引容積内で１組のレイをキャストすることと、前記掃引容積距離場及び前記工作物距離場の対応するゼロ値をもたらす少なくとも幾つかのレイにおける点に基づいて、前記レイの内部セグメントを求めることと、前記内部セグメントを組み合わせて除去容積を求めることを含む。本方法のステップはプロセッサによって実行される。
【００４６】
更に別の実施の形態は、工具による工作物の機械加工をシミュレートするシステムを開示し、前記工作物は工作物距離場によって表され、前記工具は工具距離場によって表され、前記工作物に対する前記工具の動きは掃引容積距離場によって表される。本システムは、前記掃引容積の内部の空間に１組のレイをキャストし、前記掃引容積距離場及び前記工作物距離場のゼロ値をもたらす少なくとも幾つかのレイにおける点に基づいて除去容積を求めるプロセッサを備える。
【図面の簡単な説明】
【００４７】
【図１】本発明の実施の形態による、ＮＣフライス盤、並びにＮＣフライス加工をシミュレートするシステム及び方法の流れ図である。
【図２Ａ】フライス加工のために用いられる通常の工具、及び或る経路に沿ってそのような工具を動かすことによって行われる工作物における通常の編集の図である。
【図２Ｂ】曲線経路に沿って２Ｄ形状を掃引することによって求められる掃引容積の概略図である。
【図３Ａ】工具の直線経路の図である。
【図３Ｂ】工具軸が経路に沿って変化する、工具の弧状経路の図である。
【図３Ｃ】工具の曲線経路の図である。
【図４Ａ】連続した工具インスタンスの間の掃引容積を生成する図である。
【図４Ｂ】本発明の実施の形態による、フライス加工工具と加工中の工作物との間の除去容積を求める方法の図である。
【図４Ｃ】本発明の実施の形態による、工具による工作物の機械加工をシミュレートする方法のブロック図である。
【図５】本発明の実施の形態による、１組のＧコード又はＮＣ機械命令を用いて或る工具形状による工作物のフライス加工をシミュレートする方法の流れ図である。
【図６】サンプル点において掃引容積の距離場を再構成する方法の流れ図である。
【図７】本発明の実施の形態による、除去容積及びその幾何学的特性を求める方法の流れ図である。
【図８Ａ】フラットエンドミル工具の経路のセグメントの図である。
【図８Ｂ】例示的なサンプリングパターンによる、レイで埋められた掃引容積の上面の図である。
【図８Ｃ】例示的なサンプリングパターンによる、レイで埋められた掃引容積の上面の図である。
【図９Ａ】工作物及び工具経路に沿って移動するフラットエンドミル工具の図である。
【図９Ｂ】工具経路セグメントに対応する掃引容積境界内のサンプリングされたレイの図である。
【図９Ｃ】フラットエンドミル工具によって実行されるフライス加工の状態を示す加工中の工作物及び工具インスタンスの図である。
【図９Ｄ】図９Ｃに対応する断面の上面図である。
【図１０Ａ】工作物の境界とのレイの交差の２次元概略図である。
【図１０Ｂ】本発明の実施の形態による、工作物と交差する掃引容積の距離場表現に基づいて内部セグメントを求める方法のブロック図である。
【発明を実施するための形態】
【００４８】
システム及び方法の概説
図１はＮＣフライス加工システム１００、及び数値制御（ＮＣ）フライス加工シミュレーションシステム１５０を示す。ＮＣフライス加工システム１００では、コンピューター支援設計（ＣＡＤ）モデル１０２がコンピューター支援製造（ＣＡＭ）システム１０４に入力され、ＣＡＭシステム１０４は、ＮＣフライス盤を制御するためのＧコード１０６を生成する。ＮＣフライス加工中に、ＧコードはＮＣフライス加工入力インターフェース１０８に入力され、入力インターフェース１０８は各Ｇコードを処理して、対応する１組のＮＣ機械命令１１０を生成する。ＮＣ機械命令はＮＣコントローラー１１２に入力され、ＮＣコントローラー１１２は、工作物をフライス加工するために、工作物１１８に対して工具１１６を動かす１組のモーター制御信号１１４を生成する。
【００４９】
シミュレーションシステム１５０は、入力として、コンピューター支援製造システム１０４によって生成されるＧコード１０６、又はＮＣコンソール１０８によって生成されるＮＣ機械命令１１０を取り込むことができる。シミュレーションシステムへの入力はコンピュータープロセッサ１５２によって読み取られ、コンピュータープロセッサ１５２は工作物の機械加工をシミュレートし、シミュレートされたモデル１５４を出力し、モデル１５４はコンピューターメモリ１５６に格納することができる。プロセッサ１５２は、格納されるシミュレートされたモデル１５４をレンダリングして、レンダリングされた画像１５８を生成することができ、画像１５８は表示デバイス１６０に出力することができる。表示された画像１６２をコンピューター支援設計モデル１０２と比較して、工作物の実際のＮＣフライス加工を実行する前に、Ｇコード１０６又はＮＣ機械命令１１０を検証することができる。
【００５０】
工具
図２Ａは、ＮＣフライス加工において用いられる１組の通常の工具形状２０２、２０４、２０６及び２０８を示す。工具が工作物２１０に対して動かされるとき、その工具は工作物から材料を削り出す。ここで、工具２０２、２０４、２０６及び２０８は工作物から、表面２１２、２１４、２１６及び２１８に対応する材料を除去する。各工具によって除去される材料の形状は、工具形状、及び工作物に対する工具の経路によって決定される。除去される材料の形状は、工具が経路に沿って動くときの、工作物と工具の掃引容積との交差部分である。
【００５１】
本明細書においてＮＣフライス加工シミュレーションを重点的に取り扱うが、掃引容積は、コンピューター支援設計、フリーフォーム設計、立体モデリング、ロボティックス、製造自動化及び可視化を含む、科学、工学、及びコンピューターグラフィックスの多くの分野において用途を有する。
【００５２】
掃引容積
図２Ｂは、経路２５２に沿って動かされる工具の形状２５０の掃引容積２６０を示す。経路２５２は、形状２５０の特定の点の位置を時間の関数として規定する。その経路は、その形状の向き２５６、２５７及び２５８を時間の関数として規定することができる。また、その経路は、その形状のスケール、又はその形状の任意の変換を時間の関数として規定することもできる。図２Ｂでは、形状２５０の元の位置、向き及び幾何学的形状が、その形状が経路に沿って動くのに応じて、形状２５４の最終的な位置、向き及び幾何学的形状に変換される。
【００５３】
工具経路
工作物に対する工具の経路は数多くの形において規定することができる。
【００５４】
図３Ａは直線経路を示しており、工具３０２が直線３０４に沿って動かされる。
【００５５】
図３Ｂは円弧状経路を示しており、工具３０２の先端３１０が円弧３１２に沿って動かされ、その経路の終点において、工具の元の軸方向３１４が最終的な軸方向３１６に変換される。
【００５６】
図３Ｃは曲線経路を示しており、工具３０２の先端３１０が曲線３２０に沿って動かされる。
【００５７】
他の取り得る経路形状は、数例を挙げると、工具を或る点に位置決めすること、ポリラインとして知られている一連の線に沿って工具を動かすこと、渦巻又は螺旋形の曲線に沿って工具を動かすこと、２次ベジエ曲線若しくは３次ベジエ曲線、又は区分的多項式曲線として知られている一連の多項式曲線のような、多項式曲線に沿って工具を動かすことを含む。工作物の形状又は材料組成によって影響を及ぼされる経路のような、或る手順によって定義される経路を含む、シミュレートすることができる任意の形の経路を考えることができる。
【００５８】
除去容積
図４Ａ〜図４Ｃは、本発明の様々な実施の形態による機械加工シミュレーション中に求められた除去容積を示す。
【００５９】
図４Ａは、シミュレーション中の工具の経路４０５を示す。経路は、工具と工作物との間の相対運動を定義する。例えば、開始時点ｔＳ４０２における工具は、先行する位置４０１から、経路４０５に沿って終了時点ｔＥ４０４における次の位置４０３まで動かされ、結果として掃引容積４０６が得られる。様々な実施の形態において、経路４０５は、任意のタイプ、例えば直線又は曲線とすることができる。また、工具の先行する位置及び次の位置は、シミュレーション中の工具の経路全体を表すことができ、又はその経路のセグメントを表すことができる。
【００６０】
図４Ｂは、工作物４０７と掃引容積４０６との間の正規化された論理積演算４０８又は正規化された論理差演算４０９を実行することによる、加工中の工作物４１１及び除去容積４１０の生成の例を示している。正規化されたブール演算によって、立体の対が組み合わさると常に複数の立体が得られることが確実になる。
【００６１】
掃引容積４０６が生成されると、掃引容積に対して、工作物４０７の立体モデルと論理積をとることにより、除去容積４１０が得られる。実際には、除去容積をまた工作物の初期モデルから減算することにより、完成した工作物が得られる。
【００６２】
本発明の様々な実施の形態は、掃引容積があり得る最大の除去容積に対応し、そのため、実際の除去容積を求めるために、実施の形態は、例えば掃引容積の内部に定義された空間を試験する、という理解に基づく。例えば、本発明の様々な実施の形態は、掃引容積の内部の空間を１組のレイで埋め、掃引容積内部の工作物とのレイの交差に基づいて除去容積を求める。容積をレイで埋めることを、後により詳細に記載するように、様々なコンピューターグラフィック技法を用いてかつ様々なサンプリングパターンに従って行うことができる。
【００６３】
図４Ｃは、本発明の幾つかの実施の形態による、工具による工作物の機械加工をシミュレートする方法のブロック図を示す。本方法は、工作物に関連する工具の動きを表す掃引容積４３５を生成する（４３０）。工具の動きを、機械加工のシミュレーションに対して求められた経路のセグメント４２０に従ってシミュレートすることができる。次に、掃引容積が、１組のレイ４４５によって埋められる（４４０）。工作物とのレイの交差が解析される（４５０）ことにより、工作物の内部のレイ４５５のセグメントが求められる。工作物から除去された容積４６５は、工作物との少なくとも幾分かのレイの交差に基づいて求められる（４６０）。例えば、レイの内部セグメント４５５は除去容積を形成し、除去容積を、内部セグメントの数、内部セグメント間の距離、及び内部セグメントの対応する長さ及び厚さに基づいて求めることができる。工作物は、機械加工がシミュレートされるように、容積に基づいて変更される（４７０）。本方法のステップは、プロセッサ４２１によって実行される。
【００６４】
陰関数表現は、所与の点が特定の曲線又は表面にあるか否かを判断するために有利である。これにより、除去容積を求めるために距離場及びレイ−表面交差の使用が促進される。さらに、レイキャスティングの使用により、レイが表面と交差するまでレイに沿った各点に対して距離を計算することができる。特に、距離場は、その正負符号情報により、点が掃引容積内にあるか否かを識別する。幾つかの実施の形態では、容積は、工具経路に沿った連続的な幾何学的表面によって表される。しかしながら、表面のサンプリングは、特に容積の断面が動きに沿って急峻に変化する場合、困難である可能性がある。代わりに、より低次元の幾何学エンティティ、すなわちレイによって表される線を用いて、除去容積が形成され、したがって表面のサンプリングが回避される。
【００６５】
本明細書では、ＮＣフライス加工シミュレーションが一例として用いられるが、掃引容積及び除去容積の量を求めることは、運動学、製造、ロボティックス、設計及び人間工学の様々な問題で発生する。幾つかの特定の実際的用途としては、プランジ放電加工（ＥＤＭ：Ｅｌｅｃｔｒｉｃ  Ｄｉｓｃｈａｒｇｅ  Ｍａｃｈｉｎｉｎｇ）プロセス用の速度値及び電圧値等のプロセスパラメーターを調節するために、除去容積の量を計算することが挙げられる。
【００６６】
経路に沿って移動する工具によって掃引される容積により、形状の作業空間が求められる。到達可能空間としても知られる作業空間は、ロボットに対して重要であり、ロボットが到達することができる全ての場所を定義する。作業空間解析を使用して、例えば、ロボティックス、設計及び人間工学においてあり得る衝突及び干渉の量を計算することができる。現記載は、掃引容積の正確な表現が必要であるか又は望まれる全ての分野に適用され、本発明の範囲は、フライス加工用途によって限定されない。
【００６７】
フライス加工シミュレーション
図５は、シミュレーションプロセッサ５００を用いて或る工具形状による工作物のフライス加工をシミュレートし、フライス加工される工作物の表現をメモリ５４０に格納し、レンダリングプロセッサ５６０を用いて、フライス加工される工作物の表現を表示デバイス５８０にレンダリングする方法を示す。フライス加工のシミュレーションは、説明の目的のみで与えられる。様々な実施の形態はドリル加工、フライス加工等の様々なタイプの機械加工シミュレーションを用いる。工作物は、シミュレーションを受ける任意の物体とすることができる。
【００６８】
工作物形状、及び１組の距離場５０４から複合距離場を再構成する方法を用いて、複合ＡＤＦ５４４が生成され、メモリ５４０に格納される場合がある。工作物形状は、工作物の幾何学的形状５０２によって規定され、１組の幾何学的要素を含む。
【００６９】
工作物の幾何学的形状の各幾何学的要素は、１組の幾何学的要素距離場を規定する距離場表現に変換される。各幾何学的要素距離場は、数例を挙げると、解析距離関数、陰距離関数、規則的にサンプリングされる距離場、ＡＤＦ、距離関数の合成、又は手順のうちの１つとして表すことができる。
【００７０】
１つの実施の形態では、複合ＡＤＦが８分木としてメモリに格納され、８分木は、工作物形状のバウンディングボックスを取り囲む根セルで開始してトップダウンで生成される。工作物の幾何学的形状５０２内の各特定の幾何学的要素の距離場表現が、複合ＡＤＦの葉セルに追加され、葉セルの距離場は特定の幾何学的要素によって影響を及ぼされる。レンダリング及び処理中に、複合距離場再構成法５０４を用いて葉セル内の距離場を合成することによって、サンプル点において特定の葉セルの距離場を再構成することができる。
【００７１】
様々な合成方法が可能であり、当該技術分野において知られている。１つの実施の形態では、その合成はブール減算演算子を用いて、工具によって掃引される容積による工作物からの材料の除去をシミュレートする。
【００７２】
ＡＤＦ生成中に、規定された最大数よりも多くの距離場を含む葉セルが細分され、各葉セル内の距離場が複雑になるのを制限する。したがって、複合ＡＤＦはディテール指向である；少ない距離場によって影響を及ぼされる工作物の領域ほど、大きなセルが生じ、多くの距離場によって影響を及ぼされる工作物の領域ほど、小さなセルが生じる。
【００７３】
フライス加工シミュレーション法は、工具形状５０８から形状距離場５１２を定義し（５１０）、形状距離場５１２は、数例を挙げると、解析距離関数、陰距離関数、規則的にサンプリングされる距離場、ＡＤＦ、距離関数の合成、又は手順のうちの１つとすることができる。
【００７４】
ＮＣ機械命令５１４、又は代わりに、Ｇコード５１６を用いて、工具の運動に対応するパラメトリック経路関数５２０を定義する。工具運動ごとに、形状距離場５１２及びパラメトリック経路関数５２０を用いて、工具運動に対応する工具の掃引容積を表す掃引容積距離場５２４を定義する（５２２）。
【００７５】
工具運動による工作物のフライス加工をシミュレートするために、複合ＡＤＦ５４４が、掃引容積距離場５２４を用いて編集される（５２６）。編集中に、掃引容積距離場が、工具の掃引容積によって横切られる複合ＡＤＦのセルに追加され、それによって横切られたセル内のＡＤＦが再生される。
【００７６】
複合ＡＤＦを用いて、レンダリングモデル要素から成るレンダリングモデル５６４を生成することができ（５６２）、表示デバイス５８０にレンダリングすることができる（５６６）。ポイントレンダリング、三角形レンダリング及びレイトレーシングのような、当該技術分野において知られているレンダリング法を用いて、レンダリングモデル５６４を生成し、レンダリングすることができる。
【００７７】
距離場は物理的なシミュレーションにおいて数多くの利点を有する。フライス加工シミュレーションのための代替の実施の形態は、距離場を用いて、ＮＣフライス加工工程を検証する。例えば、フライス加工シミュレータ５００によって生成される複合ＡＤＦ５４４を、コンピューター支援設計モデル１０２の距離場表現と比較することができる。その比較は、表示デバイス５８０を用いて外観検査によって行うことができる。
【００７８】
掃引容積の距離場の再構成
図６は、プロセッサ６００を用いたシミュレーションのサンプル時点において掃引容積の距離場を再構成する方法を示す。形状距離場６０４及びパラメトリック経路関数６０６が、上記のように、工具及び工具運動を規定する。サンプル点６０２を所与として、掃引容積再構成法６１０は、そのサンプル点６０２において距離場を再構成するために、そのサンプル点における距離データを求める。その方法は、経路に沿った工具の最適な配置を「連続的に」求める（６１２）ことができる。
【００７９】
最適な１組のパラメーターを求めている（６１２）最中に、その経路に沿った工具形状の初期配置を定義する１組の初期パラメーターが選択される。実施の形態では、その経路は単一のパラメーターｔによってパラメーター化され、パラメーターｔは、その経路に沿って工具が移動する時間に対応し、ｔの初期値が選択される（６１４）。形状距離場は、その経路に沿って時刻ｔにおいて工具の形状を配置するように変換され（６１６）、サンプル点６０２において形状距離場が再構成される（６１８）。
【００８０】
サンプル点において再構成される距離データは、数例を挙げると、サンプル点から変換された形状までの距離、距離場の勾配、及び距離場の偏導関数を含むことができる。
【００８１】
その形状を経路に沿ってサンプリング点に近い配置に動かすために、再構成された距離を用いて、パラメーター値ｔを繰返し変更する（６２０）。その変更は連続的に行うことができ、すなわち、所定の１組の離散値からｔを選択するのではなく、パラメーターｔは、その経路に沿った形状の位置を改善する方向に任意の量だけ繰返し変更される。その変更は、最適なｔが求められるまで、又は繰り返しているうちにｔの変化がｔの或る最小変化未満になるまで、又は最大数の繰返しが行われるまで繰り返される。最適なｔが求められると、その形状は、対応する最適な配置に変換され（６３０）、変換された形状から距離データが再構成されて（６４０）、サンプル点６０２において距離データが求められる（６１０）。
【００８２】
距離場を用いて、各工具運動によって除去される材料の或る特定の幾何学的特性及び物理特性を測定することができる。本発明において、特定の工具運動について、工具経路に沿った特定の工具インスタンスに応じて、工具と加工中の工作物との間の交差部である係合面が求められる。
【００８３】
除去容積の解析
図７は、複合ＡＤＦに基づくフライス加工シミュレーションを使用することにより、工具経路に沿って移動する工具によって除去される材料の容積を求め解析する方法７００の流れ図を示す。工作物モデル７０１、工具形状７０２及び工具経路７１０が本方法に対する入力である。初期工作物を再構成するために複合ＡＤＦが生成される（７２０）。工具経路インデックス７２１が検査され（７２２）、現工具インスタンスがシミュレーションを終了する（７１９）工具経路の最終インスタンスであるか否かが判断される。最終インスタンスでない場合、サンプリングパターン７２４を使用して、掃引容積７２３のサブセットがレイによって埋められるか又はサンプリングされる（７２５）。
【００８４】
幾つかの実施の形態では、工作物は、工作物の表面を定義する物体距離場を含む工作物のモデルによって表され、工具は、工具の表面を定義する工具距離場を含む工具のモデルによって表され、動きは、掃引容積の表面を定義する掃引容積距離場を含む少なくとも１つの掃引容積によって表され、経路は、パラメトリック関数によって表される。
【００８５】
掃引容積の生成は、掃引容積距離場によって連続的に行われる。経路のセグメントに対応する現掃引容積は、レイの組によってサンプリングされる（７２５）。実施の形態では、掃引容積は、掃引容積から先行する工具インスタンスのブール論理差をとることによって変更される。
【００８６】
工作物と交差する（７２６）レイは、除去容積７２７の形成に関与する。特に、レイは、交差試験に従って工作物に対してクリッピングされ、除去容積を形成する内部セグメントが求められる。レイの内部セグメントは、対応する厚さ及び長さを有し、組み合わせされて除去容積を近似することができる。幾つかの実施の形態では、内部セグメントの集まりが処理され（７２８）、特定の工具運動によって除去される材料の様々な特性、その質量、容積、質量中心、幅、厚さ、長さ、慣性テンソル又は慣性モーメント等が求められる。これらの特性を、除去容積の境界を求めることによって評価することができる。
【００８７】
一般的なフライス加工の場合、所与の工具経路セグメントに対する各除去容積は、複数の容積要素からなることができる。例えば、除去容積の境界を、これらの内部セグメントから抽出して、面積分及び慣性モーメントを計算することができる。除去容積の長さを、内部セグメントの長さに基づいて、例えば最大長に基づいて求めることができる。除去容積の幅を、内部セグメントのスライスの幅に基づいて求めることができる。除去された材料の容積は、その幅、厚さ及び長さとともに工具摩耗に影響を与え、さらに工具摩耗は、表面粗さに著しく影響を与える。
【００８８】
各工具経路セグメントに対して除去容積を求めた後、工具動きにより工作物のフライス加工をシミュレートするように、複合ＡＤＦ７２０が掃引容積距離場７２９によって編集される（７３０）。編集中、初期工作物７２０は掃引容積距離場によって更新され、加工中工作物が得られる（７３０）。
【００８９】
図８Ａは、開始時点ｔＳ８０１におけるフライス加工工具８００が初期位置から終了時点８０５における最終位置８０４まで動かされる、平面における線形工具経路８０３を示す。図８Ｂは、図８Ａのフラットエンドミル工具及び工具経路に対応する掃引容積の上面図を示す。
【００９０】
概して、工具の剛的動作によって掃引される領域を、掃引の先行するインスタンス及び次のインスタンスにおける工具の境界とともに、掃引方向における工具のシルエット縁によって掃引される表面によって囲まれるものとして解釈することができる。除去容積を、掃引容積から先行する位置における工具の容積のブール論理差をとることによって得られる掃引容積のサブセットに含めることができる。したがって、実施の形態では、容積のこのサブセットのみがレイによってサンプリングされ、それにより計算効率が向上する。
【００９１】
図８Ｃは、様々な実施の形態による、掃引容積を埋めるために使用される種々のサンプリングパターン７２４を示す。サンプリングパターンは、例えば、デカルト座標系において１組の規則的に間隔が空けられたレイ８１１を含むことができ、そこでは、レイが工具経路ベクトルに対して垂直な軸において等しく間隔が空けられている。レイはまた、工具経路ベクトルに沿った工具経路の長さにおいても等しく間隔を空けることができる（８１２）。代替的に、レイを円柱座標系で記載することができ、そこでは、レイ８１３は、等しい角度で間隔が空けられている。別のサンプリングパターン８１４は、等しい角度で配置されている点から発生し工具の経路の方向を指しているレイを配置するものとすることができる。
【００９２】
図９Ａは、時計回り方向９０２に回転しているフラットエンドミル工具９０１をシミュレートする実施の形態を示す。工具９０１は、直線工具経路９０３に沿って移動し、工作物９００から幾分かの材料を除去する。図９Ｂは、掃引容積とこの容積内のサンプリングされたレイ９０５とを示す。図９Ｃは、加工中の工作物９０６と工具９０４の最終インスタンスとを示す。掃引容積内のサンプリングされたレイ９０５は、加工中の工作物に対して交差されクリッピングされる。交差試験に従って工作物の内側のレイの内部セグメントが求められた後、或る特定の厚さ及び高さを有する更新されたレイセグメントが合計されて除去容積が構成される。
【００９３】
フライス加工の深さ値９０７及び９０８の所与の深さに対して、図９Ｄにおいて、加工中の工作物９１０及び９２０の断面がそれぞれ示されている。所与の切断深さ値に対して、除去容積のスライスに対応する内部セグメント９１２及び９２２が示されている。この工具及び工作物に対する除去容積は一片であるが、除去容積スライス９２２は切断された複数の切片を有している。
【００９４】
サンプリングパターンは、フライス加工工具及び工具経路の形状に応じて一定の脆弱性及び強度を有することができる。例えば、レイが工具経路ベクトルの長さにおいて等しく間隔が空けられている、デカルト座標系におけるフラットエンドミルの掃引容積をサンプリングすることは、掃引容積の端部に近い領域をアンダーサンプリングする。実施の形態は、工具経路方向に沿って角度が等しく配置されている点から発生するレイをキャスト（ｃａｓｔ：投射）することにより、除去容積を正確に表す。この実施の形態によるレイは、より均一に分散される。
【００９５】
本発明の代替実施の形態では、自己交差を用いて掃引容積を求める。例えば、工具半径が円形経路半径より大きい場合、掃引容積内で自己交差が発生する。この方法に対する変更は、これらの特別な場合に対して、自己交差する不規則な掃引容積内でレイをサンプリングするように展開された。
【００９６】
レイの交差
図１０Ａは、工作物の複合ＡＤＦのセルの境界とのレイの交差の２次元（２Ｄ）図を示す。例えば、レイ１００８は、点１００９から発生し、掃引容積の境界１０１７内を直線で伝播する。レイは、点１０１３において掃引容積の境界に達し、点１０１１において工作物の境界１００２と交差する。工作物の境界は、表面１００２を更新し加工中の工作物１０００を形成するように、掃引容積の境界によって変更される。交点の間のレイ１０６０のセグメントは、レイの内部セグメントである。幾つかの実施の形態では、交点を求めることは、レイの様々な点における距離場の値に基づく。
【００９７】
掃引容積の境界とのレイの交点は、掃引容積の距離場のゼロ値をもたらす値ｓによって特定され、すなわちｄ（Ｒ（ｓ））＝０である。同様に、工作物の境界とのレイの交点は、工作物の距離場のゼロ値によって特定される。交点を求める問題を、求根問題として公式化することができる。本発明の実施の形態では、交差を解析的に求める。別の実施の形態は、ニュートン法及び／又は挟み撃ち法等の反復手順を使用して、レイと掃引容積又は工作物の境界との交点を求める。別の実施の形態は、球キャスティング（ｓｐｈｅｒｅ  ｃａｓｔｉｎｇ）を使用して交点を求める。
【００９８】
図１０Ｂは、工作物と交差する掃引容積の距離場表現に基づいて内部セグメントを求める方法のブロック図である。対応する距離場１０５１及びレイの組１０５５が、本方法に対する入力である。
【００９９】
レイの組からの各レイ１０５２は、原点及び伝播方向によって特定される。レイの組は、それらのレイが掃引容積の実質的に空間全体の内部でありかつそれを埋めるように求められる（１０５４）。幾つかの実施の形態では、レイの組は、サンプリングパターンに基づいて求められる。
【０１００】
レイの組の各レイ１０５２に対して、実施の形態は、上述した解析的及び／又は反復的方法を用いて、レイと境界１０５１との間の１組の交点１０７５を求める（１０７０）。点を、メモリ１０６１に格納することができる。内部セグメントは、交点に基づいて求められ（１０８０）、除去容積１０５９の表面を記述する距離場１０８５を用いて表すことができる。例えば、内部セグメントを、掃引容積の距離場及び工作物の距離場の対応するゼロ値をもたらすレイの一対の点に基づいて求めることができる。レイの組の全てのレイが処理された後、除去容積が求められる。
【０１０１】
動作環境
本発明の様々な実施の形態は、数多くの汎用又は専用コンピューティングシステム環境又は構成によって動作することができる。本発明とともに用いるのに適している既知のコンピューティングシステム、環境及び／又は構成の例は、限定はしないが、パーソナルコンピューター、サーバーコンピューター、ハンドヘルドデバイス又はラップトップデバイス、マルチプロセッサ又はマルチコアシステム、グラフィックス処理ユニット（ＧＰＵ）、特定用途向け集積回路（ＡＳＩＣ：Ａｐｐｌｉｃａｔｉｏｎ−Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ），フィールドプログラマブルゲートアレイ（ＦＰＧＡ：Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、マイクロコントローラーベースシステム、ネットワークＰＣ、メインフレームコンピューター、上記のシステム又はデバイスのうちの任意のものを含む分散コンピューティング環境等、すなわち、一般的にはプロセッサを含む。
【０１０２】
例えば、実施の形態は、ハードウェア、ソフトウェア又はそれらの組合せを用いて実施することができる。ソフトウェアで実施される場合、ソフトウェアコードは、単一のコンピューターに設けられるのか又は複数のコンピューター間に分散されるのかにかかわらず、任意の適したプロセッサ又はプロセッサの集合体において実行することができる。そのようなプロセッサは、１つ又は複数のプロセッサを集積回路部品に有する集積回路として実装することができる。ただし、プロセッサは、任意の適したフォーマットの回路類を用いて実装することができる。モニター又は他のタイプの表示デバイス１６０が上記のシステムのうちの任意のものに接続され、本発明の視覚化１６２を可能にする。
【０１０３】
さらに、コンピューターは、ラックマウント型コンピューター、デスクトップコンピューター、ラップトップコンピューター、ミニコンピューター又はタブレットコンピューター等の複数の形態のいずれにおいても実現できることが理解されるべきである。そのようなコンピューターは、ローカルエリアネットワーク又はワイドエリアネットワークとしてエンタープライズネットワーク又はインターネット等を含む１つ又は複数のネットワークによって任意の適した形態で相互接続することができる。そのようなネットワークは、任意の適した技術に基づくことができ、任意の適したプロトコルに従って動作することができ、無線ネットワーク、有線ネットワーク又は光ファイバーネットワークを含むことができる。
【０１０４】
また、本明細書において概説される様々な方法又はプロセスは、様々なオペレーティングシステム又はプラットフォームのうちの任意のものを用いる１つ又は複数のプロセッサ上で実行可能なソフトウェアとして符号化することができる。加えて、そのようなソフトウェアは、複数の適切なプログラミング言語及び／又はプログラミングツール若しくはスクリプティングツールのうちの任意のものを用いて書くことができ、フレームワーク又は仮想マシン上で実行される実行可能な機械語コード又は中間コードとしてコンパイルすることもできる。
【０１０５】
これに関して、本発明は、単数又は複数の非一時的なコンピューター可読媒体、例えばコンピューターメモリ、コンパクトディスク（ＣＤ）、光ディスク、デジタルビデオディスク（ＤＶＤ）、磁気テープ、及びフラッシュメモリとして実現することができる。「プログラム」又は「ソフトウェア」という用語は、本明細書において、一般的な意味で、上記で論考したような本発明の様々な態様を実施するようにコンピューター又は他のプロセッサをプログラムするのに用いることができる任意のタイプのコンピューターコード又はコンピューター実行可能命令のセットを指すように用いられる。
【０１０６】
コンピューター実行可能命令は、１つ若しくは複数のコンピューター又は他のデバイスによって実行された、プログラムモジュール等の多くの形式をとることができる。一般に、プログラムモジュールは、特定のタスクを実行するか又は特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造を含む。通常、プログラムモジュールの機能は、様々な実施の形態において所望に応じて組み合わせることも分散させることもできる。
【０１０７】
また、本発明の実施の形態は、例が提供された方法として実施することができる。この方法の一部として実行される動作は、任意の適切な方法で順序付けすることができる。したがって、動作が示したものと異なる順序で実行される実施の形態を構築することができ、これには、例示の実施の形態では一連の動作として示されたにもかかわらず、幾つかの動作を同時に実行することを含めることもできる。
【図１】
0005805328.tif 000002
【図２Ａ】
0005805328.tif 000003
【図２Ｂ】
0005805328.tif 000004
【図３Ａ】
0005805328.tif 000005
【図３Ｂ】
0005805328.tif 000006
【図３Ｃ】
0005805328.tif 000007
【図４Ａ】
0005805328.tif 000008
【図４Ｂ】
0005805328.tif 000009
【図４Ｃ】
0005805328.tif 000010
【図５】
0005805328.tif 000011
【図６】
0005805328.tif 000012
【図７】
0005805328.tif 000013
【図８Ａ】
0005805328.tif 000014
【図８Ｂ】
0005805328.tif 000015
【図８Ｃ】
0005805328.tif 000016
【図９Ａ】
0005805328.tif 000017
【図９Ｂ】
0005805328.tif 000018
【図９Ｃ】
0005805328.tif 000019
【図９Ｄ】
0005805328.tif 000020
【図１０Ａ】
0005805328.tif 000021
【図１０Ｂ】
0005805328.tif 000022