JP5073065B2 - 衝突判定装置および衝突判定プログラム - Google Patents

衝突判定装置および衝突判定プログラム Download PDF

Info

Publication number
JP5073065B2
JP5073065B2 JP2010546541A JP2010546541A JP5073065B2 JP 5073065 B2 JP5073065 B2 JP 5073065B2 JP 2010546541 A JP2010546541 A JP 2010546541A JP 2010546541 A JP2010546541 A JP 2010546541A JP 5073065 B2 JP5073065 B2 JP 5073065B2
Authority
JP
Japan
Prior art keywords
determination
collision
cell
curve
boundary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010546541A
Other languages
English (en)
Other versions
JPWO2010082378A1 (ja
Inventor
宮田  亮
宣行 高橋
俊博 東
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2010546541A priority Critical patent/JP5073065B2/ja
Publication of JPWO2010082378A1 publication Critical patent/JPWO2010082378A1/ja
Application granted granted Critical
Publication of JP5073065B2 publication Critical patent/JP5073065B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4061Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40442Voxel map, 3-D grid map
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49143Obstacle, collision avoiding control, move so that no collision occurs
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49157Limitation, collision, interference, forbidden zones, avoid obstacles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Numerical Control (AREA)

Description

この発明は、二次元または三次元の空間内を移動する物体間の衝突の有無を判定する衝突判定装置および衝突判定プログラムに係り、特に工作機械による切削加工のシミュレーション装置において、工作機械の機構部品とワークとの間の衝突を検出する衝突判定装置および衝突判定プログラムに関するものである。
移動する物体間の衝突事象を扱う際、それぞれの物体がともに移動する場合は、一方の物体から見た他方の物体の相対移動を考え、静止物体と移動物体との間の衝突事象に帰着させることができる。本明細書においても、以下、静止物体と移動物体との間の衝突事象として取り扱う。
このような物体間の衝突を検出する手法として、移動物体側の形状をその移動軌跡に沿ってスイープさせたスイープ形状を作成して、スイープ形状と静止物体側の形状との間で交差の有無を判定する方法(以下、スイープ法)がある。また、移動の開始から終了までを適当な間隔で分割した瞬間ごとの移動物体および静止物体の形状間の交差の有無を判定する方法(以下、時分割法)がある。両手法の基本的違いは、物体移動という時間軸に沿った連続的な事象を、連続のまま扱うか、離散化して扱うか、という点にある。
しかしながら、スイープ法は、任意形状の任意移動によるスイープ形状を作成すること、特に、位置変化だけでなく姿勢変化も伴う一般の剛体移動に対するスイープ形状を作成することに汎用的かつ効率的な手法がない。すなわち、スイープ法は、移動物体側の形状の種類や移動の種類を限定した特定ケースでなければ、適用しにくいという問題がある。また、複雑な形状となったスイープ形状と静止物体形状との交差判定の計算コストも高くなりやすく、あまり実用には供されていない。
時分割法は、スイープ法よりは概して計算コストが低いと言われているが、分割の間隔を細かく取ると、交差判定の回数が増え、全体の計算コストが無視できないものとなる。一方、分割の間隔を粗く取ると、すり抜けによって衝突検出漏れの可能性が高くなってしまうという問題がある。
そこで従来は、時分割法をベースとし、1回当たりの交差判定の計算コストを抑えることに注力され、そのような方法の一つに例えば特許文献1に記載された方法がある。
特開2007−114866号公報
特許文献1に記載の方法では、時分割法をベースとしているため、上述した粗い分割でのすり抜けによる衝突検出漏れや密な分割での全体計算コストの増大の問題は依然として解消されていない。また、判定対象となる両物体の形状は、ともに空間格子モデルの形式で定義されるため、コンピュータでの処理にあたり大きなメモリ量を必要とする。この問題は特に三次元形状を扱う場合に深刻となる。
工作機械の切削加工シミュレーション分野では、衝突判定対象の一方の物体であるワークは加工の進行とともに形状が変化し加工途中段階では複雑な形状を呈するため、位相構造の制約条件がないボクセルモデルなどの空間格子モデルでワークの形状を表現しておくことが多い。しかしながら、衝突判定対象のもう一方の物体である工作機械の機構部品は、衝突判定のためだけに空間格子モデルで表現するのは、上記メモリ量のペナルティが大きすぎて実用には適さない。
本発明は、上記に鑑みてなされたものであって、衝突検出漏れのおそれを減らしつつ、計算コストの高い処理を不要とし、少ないデータメモリ量の下で高速かつ確実な衝突判定を行うことのできる衝突判定装置および衝突判定プログラムを提供することを目的としている。
上記課題を解決するために本発明の衝突判定装置は、第一の物体の形状を第一の物体に固定した座標系で定義されるボクセルモデルで表現したボクセルモデルデータと、第二の物体の形状を第二の物体に固定した座標系で定義される境界表現モデルで表現した境界表現モデルデータと、を格納する形状データ記憶部と、ボクセルモデルを構成するセルから、衝突判定を行う着目セルを指定する着目セル指定部と、着目セルについて、衝突判定のための判定対象点群を発生させる判定対象点発生部と、第一の物体の第二の物体に対する相対的な剛体移動を判定対象点群のそれぞれに適用して判定対象点の移動軌跡曲線である空間曲線を生成する空間曲線生成部と、境界表現モデルの各境界要素と空間曲線との間の交差の有無を判定する曲線交差判定部と、曲線交差判定部による判定の結果、空間曲線がいずれの境界要素とも交差しない場合は、境界表現モデルの境界面に対する空間曲線の最近接距離を算出する距離算出部と、曲線交差判定部による判定結果と、距離算出部による算出結果に基づき両物体間の衝突の可能性を判定する衝突判定部と、を備えることを特徴とする。
本発明の衝突判定装置では、物体間の衝突の可能性の判定を、境界表現モデルの境界要素と判定対象点の移動軌跡曲線との交差判定によって行うことで、物体の移動という時間軸に沿った連続的な事象をそのまま扱うため、時分割法に見られるすり抜けによる衝突検出漏れの可能性を排除することができるという効果を奏する。また、移動物体のスイープ形状を作成する必要がないことと、上記の移動曲線に対する交差判定は曲線パラメータに関する一元の方程式に帰着させて扱えることから演算量を少なくすることができ、高速な衝突判定が可能になる。さらに、衝突判定の対象となる一方の物体の形状は境界表現モデルで表現されるため、機械部品のような少数の構成面から成る形状の場合は、少ないデータ量で衝突判定が行えるという効果を奏する。
図1は、本発明の衝突判定装置の実施の形態の構成図である。 図2は、本発明の衝突判定方法の基本原理を説明するための図である。 図3は、本発明の衝突判定手順を説明するためのフローチャートである。 図4は、本発明の衝突判定手順をさらに補足説明するためのフローチャートである。
実施の形態1.
以下に、本発明にかかる衝突判定装置および衝突判定プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
図1は、本発明にかかる衝突判定装置の概略構成を示すブロック図である。図1において、衝突判定装置100は、衝突判定制御部101、形状データ記憶部102、判定対象点発生部103、空間曲線生成部104、曲線交差判定部105と、を有して構成されている。形状データ記憶部102には、衝突判定対象となる第一の物体の形状を、第一の物体に固定した座標系で定義したボクセルモデルで表現したボクセルモデルデータ106が格納される。また、形状データ記憶部102には、衝突判定対象となる第二の物体の形状を、第二の物体に固定した座標系で定義した境界表現モデルで表現した境界表現モデルデータ107が格納保持される。また、第一の物体の第二の物体に対する相対的な剛体移動を表す剛体移動データ108が、衝突判定装置100の外部で準備され空間曲線生成部104に入力される。
ここで、本発明にいうボクセルモデルとは、二次元または三次元の空間領域で、一様間隔に取った格子またはクワッド分割やオクト分割などの階層ツリー管理された格子の各格子点での物理量を表現したモデルである。形状を表現する場合には、表現対象形状に対する格子点での内外識別情報や表現対象形状の境界までの符号付き距離などの情報を物理量として含むモデルを指す。また、ボクセルモデルにおいて、所定の間隔で隣接する格子点をコーナー点とする正方形または立方体領域を「セル」と呼び、階層ツリー管理されたボクセルモデルにおいては最下層の最小セルを「末端セル」、中間階層のセルを「中間ノードセル」と呼ぶことにする。
また、本発明にいう境界表現モデルとは、一般にBoundary-RepresentationモデルまたはB-Repsモデルと呼ばれ、形状を向き付けされた境界要素の集合体とそれら間の隣接位相構造で表すことを基本とした形状表現モデルである。境界要素は、二次元形状においては境界線を構成する辺、三次元形状においては境界面を構成する面を指す。
なお、本実施の形態1では、形状データ記憶部102に格納保持されるボクセルモデルデータ106として、Frisken他による「Adaptively Sampled Distance Fields: A General Representation of Shape for Computer Graphics」、Proc.SIGGRAPH2000,pp.249〜254,2000において述べられている適応的サンプル距離フィールドを採用する。適応的サンプル距離フィールドは、形状表現対象物が置かれた空間をスカラー場の一種である距離フィールド(距離場、きょりば、とも言われる)として表現する手法および表現モデルの一種で、空間の次元に応じてクワッド分割またはオクト分割で階層ツリー管理された格子点で表現対象形状の境界までの符号付き距離をサンプリングし、サンプリング点以外の任意の空間座標点での距離フィールドの値を補間等の方法によって復元できるようにしたものである。
以下、各部の動作について説明する。なお、本発明は衝突判定対象となる物体の形状が二次元であるか三次元であるかを問わないが、記述を簡潔にするため本実施の形態1では、三次元の形状を念頭に置いて説明する。
衝突判定制御部101は、衝突判定装置100外部からの衝突判定リクエストを受け、第二の物体との衝突判定の候補となる候補セル群をボクセルモデルデータ106から特定する。衝突判定制御部101は、候補セル群の個々のセルについて、判定対象点発生部103、空間曲線生成部104、曲線交差判定部105の各部を順に指令し、交差判定を行わせる。衝突判定制御部101は、曲線交差判定部105で行われた交差判定結果に基づき、第一の物体と第二の物体との間の衝突の可能性を判定し、所定の許容マージンの下で衝突の有無が確定するまでこれら各部に指令する処理を繰り返す。すなわち、衝突判定制御部101は、両物体の衝突の可能性を判定する衝突判定部としても機能する。なお、その詳細な動作内容については後述する。
判定対象点発生部103は、衝突判定制御部101からの指令を受けて動作する。本実施の形態1においては、判定対象点発生部103は、衝突判定制御部101から指定された個々のセルのコーナーに位置する点を判定対象点として発生させる。また、本実施の形態1においては、判定対象点発生部103は、末端セルに対して、その占有立方領域を再帰的にオクト分割した部分立方領域のコーナーおよび中心に位置する点も判定対象点として発生させるように構成されている。なお、セルの中心に判定対象点を発生させてもよい。
空間曲線生成部104は、判定対象点発生部103が発生させた判定対象点と剛体移動データ108とから、剛体移動データ108に基づいて判定対象点を移動させてできる移動軌跡曲線を表す空間曲線を生成する。剛体移動データ108は、一般的な剛体移動に対しては、時刻または時刻に等価なパラメータ(sとする)を変数とする回転移動と並進移動の組み合わせで表現したデータで、具体的には、各成分がパラメータsの関数となる3×3の回転行列R(s)と並進ベクトルT(s)のペアで記述される。生成される空間曲線データは、判定対象点をPとするとき、C(s)=[Cx(s),Cy(s),Cz(s)]=R(s)・P+T(s)、として記述される。なお、剛体移動データ108を、4×4の同次座標変換行列M(s)や、これらパラメトリックな表現が導出可能な任意の形式であってもよい。
曲線交差判定部105は、空間曲線生成部104が生成した空間曲線と境界表現モデルデータ107の各構成面の曲面データとから、稜線で囲まれた領域内で空間曲線と構成面とが交差するか否かを判定する。具体的には、構成面の曲面データがu、vを2変数とするパラメトリックな表現:S(u,v)=[Sx(u,v),Sy(u,v),Sz(u,v)]で与えられる場合は、三元連立方程式:S(u,v)=C(s)が曲線パラメータsの定義域内と構成面の領域内で解を持つかどうかを調べればよい。一方、曲面データが陰関数:F(X,Y,Z)=0で与えられる場合は、一元の方程式:F(Cx(s),Cy(s),Cz(s))=0が曲線パラメータsの定義域内と構成面の領域内で解を持つかどうかを調べればよい。
曲線交差判定部105は、さらに、上記交差判定で空間曲線が境界表現モデルデータ107のいずれの構成面とも交差しない場合には、境界表現モデルデータ107の境界面に対する空間曲線の最近接距離を計算する処理を行う。また、本実施の形態1においては、曲線交差判定部105は、さらに、上記交差判定で空間曲線が境界表現モデルデータ107のいずれかの構成面と交差する場合には、衝突判定制御部101の要求に応じて、境界表現モデルデータ107の境界面に対して空間曲線が奥になる地点での境界面までの距離である最奥距離を計算するように構成されている。すなわち、曲線交差判定部105は、最近接距離および最奥距離を算出する距離算出部としても機能する。
ここで、最近接距離および最奥距離は、点と境界面との間の最短距離を、形状外部を正、内部を負とする符号付き距離で考えた場合に、空間曲線上で符号付き距離が最小となる地点での距離として求められる。
次に、衝突判定制御101における動作の詳細について説明する。まず、本発明における衝突判定方法の基本原理について説明する。図2は、衝突判定方法の基本原理を説明するための図である。図2(a)において、ボクセルモデル201を構成するセル群のうち、セル202のようにボクセルモデル201の境界面がセル内を横切るものは境界セルと呼ばれる。衝突の有無が判定されるセルを着目セルと呼ぶ。着目セルは、衝突判定制御部101によって指定される。すなわち、衝突判定制御部101は、着目セル指定部としても機能する。
以下、セル202を着目セルとした場合の衝突の有無の判定を説明する。図2(b)に示したセル202の拡大図において、白丸で示した外部コーナー点204はボクセルモデル201の外部に位置し、黒丸で示した内部コーナー点205はボクセルモデル201の内部に位置する。なお、境界表現モデル203は、衝突判定対象となる第二の物体の形状である。
ボクセルモデル201が境界表現モデル203から見て相対移動する場合、これらコーナー点は図2(b)の矢印206および矢印207のような軌跡を描く。これらの移動軌跡曲線が空間曲線として表されている。そして、移動軌跡曲線と境界表現モデルの構成面との間の交差状況を調べることにより、ボクセルモデル201と境界表現モデル203とがセル202の領域で衝突する可能性があるか否かを、以下の条件にしたがって判定することができる。
条件1:セル202のいずれかの内部コーナー点の移動軌跡曲線(たとえば、内部コーナー点205の移動軌跡曲線207)が境界表現モデル203の構成面のいずれかと交差する場合は、セル202の全コーナー点についての構成面との交差判定結果を待たずとも、ボクセルモデル201はセル202の領域で境界表現モデル203と明らかに衝突する。
条件2:内部コーナー点か外部コーナー点かを問わず、セル202のいずれかのコーナー点の移動軌跡曲線が、境界表現モデル203のいずれの構成面とも交差せず、かつ、境界表現モデル203の境界面に対する移動軌跡曲線の最近接距離が後述する基準値よりも長い場合は、セル202の全コーナー点についての構成面との交差判定結果を待たずとも、ボクセルモデル201はセル202の領域で境界表現モデル203と明らかに衝突しない。
条件3:セル202のいずれかの外部コーナー点の移動軌跡曲線(たとえば、外部コーナー点204の移動軌跡曲線206)が境界表現モデル203の構成面のいずれかと交差し、かつ、境界表現モデル203の境界面に対する移動軌跡曲線の最奥距離が後述する基準値よりも長い場合は、セル202の全コーナー点についての構成面との交差判定結果を待たずとも、ボクセルモデル形状はセル202の領域で境界表現モデル203と明らかに衝突する。
上記条件1〜3のいずれにも合致しない場合は、衝突の有無が判断できない場合となる。この場合、セル202が中間ノードセルであれば、一階層下の子セルを着目セルとして、再帰的に上記条件に基づく判定を繰り返せばよい。セル202が末端セルの場合は、本実施の形態1のように適応的サンプル距離フィールドを採用したボクセルモデルであればセル内の任意の点での距離フィールド値の符号から点の内外を識別できるため、末端セルの占有立方領域を再帰的にオクト分割した部分立方領域のコーナー点を発生させて、上記条件に基づく判定を繰り返せばよい。
上記条件2および3における距離の基準値としては、着目セルの対角長を用いることができる。より厳密には、条件2における距離の基準値は、着目セルの着目コーナー点から最も離れた位置にある着目セル内でのボクセルモデル形状内部または境界面上の点までの距離を下界とする任意の値である。コーナー点を中心とし、上記距離を半径とする球を考えると、球内にはボクセルモデル側の形状の一部が必ず存在するが、条件2によれば、球が剛体移動中のどの時点においても境界表現モデル側の形状とは交差しないと言えるからである。また、条件3における距離の基準値は、着目外部コーナー点から、着目セル内で最もそのコーナー点に近い位置にあるボクセル形状境界面までの距離を下界とする任意の値である。着目外部コーナー点はボクセルモデル側の形状の外部にあるが、コーナー点を中心とし上記距離を半径とする球を考えると、球内にはボクセルモデル側の形状の一部が必ず存在し、条件3によって、剛体移動中の球内に含まれるボクセルモデル側の部分形状が境界表現モデル側の形状といずれかの時点で交差すると言えるからである。なお、上記条件2に対する判定は、着目セル内の任意の点に対して行なってもよい。例えば、セルの中心点に対しては、距離の基準値を着目セルの対角長の半分とすることができる。ここで、基準値として、着目セルの対角長を用いる場合に比べて、コーナー点と境界面上の点との距離を用いたほうが、衝突の有無の判定が早期に確定されやすく、より高速な処理を行うことができる。
また、本実施の形態1のように適応的サンプル距離フィールドを採用したボクセルモデルでは、上記条件3の判定において、コーナー点での距離フィールド値を基準値とすることができる。さらに、着目セル内の任意の点の内外を距離フィールド値の符号から調べて、上記条件1および3に対する判定を行うこともできる。
なお、上記条件1〜3に基づく判定は、ボクセルモデル201の境界セルに対してのみ行なえばよい。表現対象形状の外部にある外部セルの場合は明らかに物体間の衝突はありえず、また、衝突が発生していない状態から衝突が発生する状態に至る過程では必ず境界セルの領域での衝突があるため、表現対象形状の内部にある内部セルに対する判定は不要であるからである。
衝突判定制御部101は、上記の判定の基本原理に基づき物体間の衝突判定を行う。図3は、衝突判定の処理フローを示した図である。本処理では、ボクセルモデル形状1のツリー階層を最上位セルから始めて深さ優先順で巡回する。
まず、ボクセルモデルデータ106の最上位セルを着目セルとする(ステップS1)。次に、着目セルが第二の物体との衝突判定の候補セルとなるか判定する(ステップS2)。これは、例えば、剛体移動データ108とは逆の関係となる第二の物体の第一の物体に対する相対的な剛体移動に基づき、第一の物体の座標系における第二の物体のおおよその可動範囲を含むバウンディングボックスを予め求めておき、着目セルがバウンディングボックス内にあるか否かで判断する。
着目セルが候補セルである場合は、判定対象点発生部103に指令して着目セルの判定対象点群を発生させ、空間曲線生成部104に指令して判定対象点群のそれぞれについて移動軌跡曲線群を生成し、曲線交差判定部105に指令して移動軌跡曲線と境界表現モデルデータ107の各境界要素との交差判定を行う(ステップS3)。ステップS4では上記条件1〜3に基づく判定を行う(ステップS4)。
判定の結果、明らかに衝突する場合は、「衝突あり」であると確定として処理を終える。明らかに衝突しない場合は、着目セルの未処理の兄弟セル、なければ、その上位いずれかの階層のセルの未処理の兄弟セルを次の着目セルとする(ステップS5〜S6)。次の着目セルがなければ「衝突なし」であると確定して処理を終える。
衝突の有無が判断できない場合は、中間ノードセルに対しては直下の子セルを着目セルとする(ステップS7〜S8)。末端セルに対しては、セルの占有立方領域を再帰的にオクト分割するモードに遷移し着目セル内での衝突の有無を判定し、衝突があれば「衝突あり」であると確定して処理を終え、衝突がなければステップS5に合流して処理を継続する(ステップS9〜S10)。
図4は、図3のステップS9において末端セルの占有立方領域を再帰的にオクト分割するオクト分割モードでの衝突判定の処理フローを示した図である。ステップS91で、末端セルの占有立方領域を一段階だけオクト分割した部分領域の一つを着目領域(分割された着目セル)とする。
次に、着目領域が第二の物体との衝突判定の候補領域となるかを判定する(ステップS92)。これは上述のステップS2と同様の方法で判断する。着目領域が候補領域である場合は、判定対象点発生部103に指令して着目領域の判定対象点群を発生させ、空間曲線生成部104に指令して判定対象点群のそれぞれについて移動軌跡曲線を生成し、曲線交差判定部105に指令して交差判定を行う(ステップS93)。
続いて、上記条件1〜3に基づく判定を行う(ステップS94)。判定の結果、明らかに衝突する場合は「衝突あり」であると確定して本モードの処理を終える。明らかに衝突しない場合は、着目領域の未処理の兄弟領域、なければ、その上位階層の領域の未処理の兄弟領域を次の着目領域とする(ステップS95〜S96)。次の着目領域がなければ「衝突なし」であるとして本モードの処理を終える。
衝突の有無が判断できない場合は、着目領域を一段階だけオクト分割した部分領域の一つを次の着目領域とする(ステップS97)。なお、より現実的には、上記オクト分割モードでは、着目領域のサイズが予め決めておいた許容マージンよりも小さくなった時点で分割を打ち切るように分割の上限を定めておき、上限を超えて分割が行われる場合には、安全を見込んで「衝突あり」とみなして処理を終えることが望ましい。
以上のように、本実施の形態1によれば、時分割法に見られるすり抜けによる衝突検出漏れのおそれがなく、曲線と曲面の交差判定に帰着させた演算量の少ない方法で物体間の高速な衝突判定が可能になる。また、衝突判定対象の一方の物体の形状を境界表現モデルで表現することにより、少ないデータ量で衝突判定が行える。
本実施の形態1で説明した衝突判定装置100による一連の処理は、予め用意された衝突制御プログラムに基づいて行われる。本実施の形態1に係る衝突判定装置で実行される衝突判定プログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVD等、コンピュータで読み取り可能な記録媒体に記録されていてもよい。また、衝突判定プログラムは、インターネットなどの通信網を介して提供・配布可能となっていてもよい。
なお、上述したような一連の処理を行わせる衝突判定プログラムによって、第一の物体と第二の物体との衝突の可能性の有無を判定できる構成であればよく、衝突判定制御部101等の各処理部の構成は本実施の形態1の構成に限られない。例えば、本実施の形態1では、衝突判定制御部101に衝突判定部としての機能や着目セル指定部としての機能を持たせたが、これらを別々に構成してもよい。また、曲線交差判定部105に、距離算出部としての機能を持たせたが、これらを別々に構成してもよい。
実施の形態2.
実施の形態2の構成は実施の形態1と同様に図1のブロック図で表される。本実施の形態2では、曲線交差判定部105は、空間曲線と境界表現モデルデータ107の構成面との交差判定および最近接距離もしくは最奥距離の算出を行なうほかに、さらに、交差がある場合に交差位置での曲線のパラメータを算出するように構成される。これは、空間曲線の曲線式と構成面の曲面式を連立させた方程式を解くことで得られる。
また、図3および図4に示した衝突判定制御部101の処理フローにおいて、「衝突あり」と確定した場合に、処理を終えずに次の着目セルまたは着目領域に対する判定処理を継続して行い、上記交差位置での曲線パラメータのうち時刻に換算して最も早期の時刻に対応する値を求めるように構成される。これにより、第一の物体と第二の物体との間の衝突の時刻を検出することができる。
以上のように、この発明に係る衝突判定装置は、二次元または三次元の空間内を移動する物体間の衝突の有無を判定するのに適している。
100 衝突判定装置
101 衝突判定制御部
102 形状データ記憶部
103 判定対象点発生部
104 空間曲線生成部
105 曲線交差判定部
106 ボクセルモデルデータ
107 境界表現モデルデータ
108 剛体移動データ
201 ボクセルモデル
202 セル
203 境界表現モデル
204 外部コーナー点
205 内部コーナー点
206,207 矢印

Claims (8)

  1. 第一の物体に固定した座標系で定義されるボクセルモデルで前記第一の物体の形状を表現したボクセルモデルデータと、第二の物体に固定した座標系で定義される境界表現モデルで前記第二の物体の形状を表現した境界表現モデルデータと、を格納する形状データ記憶部と、
    前記ボクセルモデルを構成するセルから、衝突判定を行う着目セルを指定する着目セル指定部と、
    前記着目セルについて、衝突判定のための判定対象点群を発生させる判定対象点発生部と、
    前記第一の物体の前記第二の物体に対する相対的な剛体移動を前記判定対象点群のそれぞれに適用して該判定対象点の移動軌跡曲線である空間曲線を生成する空間曲線生成部と、
    前記境界表現モデルの各境界要素と前記空間曲線との間の交差の有無を判定する曲線交差判定部と、
    前記曲線交差判定部による判定の結果、前記空間曲線がいずれの境界要素とも交差しない場合は、前記境界表現モデルの境界面に対する前記空間曲線の最近接距離を算出する距離算出部と、
    前記曲線交差判定部による判定結果と、前記距離算出部による算出結果に基づき両物体間の衝突の可能性を判定する衝突判定部と、を備えることを特徴とする衝突判定装置。
  2. 前記衝突判定部は、前記曲線交差判定部による判定結果および前記距離算出部による算出結果に加えて、前記判定対象点群のそれぞれの判定対象点の情報と、前記着目セルまたは前記判定対象点群の情報から決定される距離基準値とに基づき両物体間の衝突の可能性を判定することを特徴とする請求項1に記載の衝突判定装置。
  3. 前記距離算出部は、前記曲線交差判定部による判定の結果、前記空間曲線と前記境界表現モデルのいずれかの境界要素とが交差する場合には、前記空間曲線の前記境界表現モデルに対する最奥距離を算出することを特徴とする請求項1または2に記載の衝突判定装置。
  4. 前記曲線交差判定部は、前記空間曲線と前記境界表現モデルのいずれかの境界要素とが交差する場合には、交差位置に対応する空間曲線のパラメータを算出することを特徴とする請求項1〜3のいずれか1つに記載の衝突判定装置。
  5. 前記ボクセルモデルデータは、ツリー階層による空間分割格子の各格子点をサンプル点とし、各サンプル点の第一の物体の形状の境界までの符号付き距離に基づいて形状を表現する適応的サンプル距離フィールドを用いて表現され、
    前記判定対象点発生部は、前記着目セルのコーナーに位置する格子点または中心に位置する格子点を前記判定対象点群として発生させ、
    前記衝突判定部は、曲線交差判定部による判定結果、前記距離算出部による算出結果、および前記判定対象点の距離フィールドの値に基づいて衝突の可能性を判定し、
    前記着目セル指定部は、前記着目セルの衝突の可能性を判定できない場合は、より下位階層のセルを新たな着目セルに指定することを特徴とする請求項1〜のいずれか1つに記載の衝突判定装置。
  6. 前記ツリー階層の最下層の末端セルを着目セルとしても衝突の可能性を判定できない場合に、前記末端セルを前記ボクセルモデルの次元に応じてオクト分割またはクワッド分割し、分割された着目セルについて、前記衝突判定部に衝突の可能性を判定させる衝突判定制御部をさらに備えることを特徴とする請求項に記載の衝突判定装置。
  7. 前記衝突判定制御部は、前記衝突判定部が衝突の可能性を判定できるまで、前記着目セルの分割を繰り返し、分割された着目セルが所定の許容マージンよりも小さくなった時点で前記着目セルの分割を打ち切り、
    前記衝突判定部は、前記着目セルの分割が打ち切られた場合には、衝突の可能性ありと判定することを特徴とする請求項に記載の衝突判定装置。
  8. 第一の物体に固定した座標系で定義され、前記第一の物体の形状を表現するボクセルモデルを構成するセルから、衝突判定を行う着目セルを指定するステップと、
    前記着目セルについて、衝突判定のための判定対象点群を発生させるステップと、
    前記第一の物体の第二の物体に対する相対的な剛体移動を前記判定対象点群のそれぞれに適用して該判定対象点の移動軌跡曲線である空間曲線を生成するステップと、
    第二の物体に固定した座標系で定義され、前記第二の物体の形状を表現する境界表現モデルの各境界要素と前記空間曲線との間の交差の有無を判定するステップと、
    前記曲線交差判定部による判定の結果、前記空間曲線がいずれの境界要素とも交差しない場合は、前記境界表現モデルの境界面に対する前記空間曲線の最近接距離を算出するステップと、
    前記曲線交差判定部による判定結果と、前記距離算出部による算出結果に基づき両物体間の衝突の可能性を判定するステップと、をコンピュータに実行させることを特徴とする衝突判定プログラム。
JP2010546541A 2009-01-15 2009-09-10 衝突判定装置および衝突判定プログラム Active JP5073065B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010546541A JP5073065B2 (ja) 2009-01-15 2009-09-10 衝突判定装置および衝突判定プログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009006840 2009-01-15
JP2009006840 2009-01-15
PCT/JP2009/065860 WO2010082378A1 (ja) 2009-01-15 2009-09-10 衝突判定装置および衝突判定プログラム
JP2010546541A JP5073065B2 (ja) 2009-01-15 2009-09-10 衝突判定装置および衝突判定プログラム

Publications (2)

Publication Number Publication Date
JPWO2010082378A1 JPWO2010082378A1 (ja) 2012-06-28
JP5073065B2 true JP5073065B2 (ja) 2012-11-14

Family

ID=42339642

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010546541A Active JP5073065B2 (ja) 2009-01-15 2009-09-10 衝突判定装置および衝突判定プログラム

Country Status (6)

Country Link
US (1) US9530246B2 (ja)
JP (1) JP5073065B2 (ja)
CN (1) CN102282561B (ja)
DE (1) DE112009004371T5 (ja)
TW (1) TWI428778B (ja)
WO (1) WO2010082378A1 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110202327A1 (en) * 2010-02-18 2011-08-18 Jiun-Der Yu Finite Difference Particulate Fluid Flow Algorithm Based on the Level Set Projection Framework
EP2590142B1 (en) 2011-11-03 2018-03-14 Dassault Systèmes Designing a modeled volume represented by dexels
EP2590143B1 (en) * 2011-11-03 2018-10-24 Dassault Systèmes Simulation of the machining of a workpiece
EP2590144B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Designing a modeled volume represented by dexels
KR101607586B1 (ko) * 2012-04-17 2016-03-30 마키노 밀링 머신 주식회사 공작기계의 간섭판정방법 및 간섭판정장치
US20150127295A1 (en) * 2012-06-13 2015-05-07 Nec Corporation Moving-body-abnormal-nearing detection system and moving-body-abnormal-nearing detection method
US9046888B2 (en) * 2012-06-27 2015-06-02 Mitsubishi Electric Research Laboratories, Inc. Method and system for detouring around features cut from sheet materials with a laser cutter according to a pattern
JP6069923B2 (ja) * 2012-07-20 2017-02-01 セイコーエプソン株式会社 ロボットシステム、ロボット、ロボット制御装置
DE102013015234A1 (de) * 2013-09-13 2015-03-19 Liebherr-Verzahntechnik Gmbh Verfahren zur Steuerung einer Verzahnmaschine sowie Verzahnmaschine
JP2015184874A (ja) * 2014-03-24 2015-10-22 株式会社東芝 移動体操作支援装置、移動体操作支援方法、および移動体操作支援プログラム
AT515719A1 (de) * 2014-05-09 2015-11-15 Keba Ag Bedieneinrichtung und Steuersystem
CN104391481B (zh) * 2014-10-29 2018-01-23 北京配天技术有限公司 机器加工运动轨迹空间检测方法、装置及数控机床
EP3040797B1 (en) * 2014-12-31 2020-10-28 Dassault Systèmes Simulating the machining of a workpiece
JP6094933B1 (ja) * 2015-10-02 2017-03-15 株式会社ミスミ 設計支援システム、設計支援プログラム及び設計支援方法
CN105512377B (zh) 2015-11-30 2017-12-12 腾讯科技(深圳)有限公司 实时虚拟场景中圆柱碰撞体与凸体碰撞探测的方法和***
CN106313047B (zh) * 2016-09-28 2018-08-21 华中科技大学 一种基于Bezier样条的机器人实时拐角过渡方法
US11279023B2 (en) 2017-02-28 2022-03-22 Siemens Industry Software Inc. System and method for determining grasping positions for two-handed grasps of industrial objects
DE102017215519A1 (de) * 2017-09-05 2019-03-07 Robert Bosch Gmbh Verfahren und Vorrichtung zur Kollisionserkennung für ein Fahrzeug
CN108492882B (zh) * 2018-03-06 2021-08-31 东软医疗***股份有限公司 一种碰撞检测方法及装置
CN114615486B (zh) 2018-08-06 2024-05-07 苹果公司 用于生成合成流的方法、***和计算机可读存储介质
JP6863945B2 (ja) * 2018-10-24 2021-04-21 ファナック株式会社 ロボットの制御方法
CN109920057B (zh) * 2019-03-06 2022-12-09 珠海金山数字网络科技有限公司 一种视点变换方法及装置、计算设备及存储介质
TWI716849B (zh) * 2019-04-10 2021-01-21 財團法人工業技術研究院 預先檢測加工路徑碰撞方法及系統
US11794107B2 (en) * 2020-12-30 2023-10-24 Activision Publishing, Inc. Systems and methods for improved collision detection in video games
CN113119108B (zh) * 2021-03-15 2022-07-05 广州大学 一种二指机械臂抓取方法、***、装置及存储介质
CN113641948B (zh) * 2021-10-18 2022-02-15 南京瀚海星宇信息技术有限公司 一种空间轨迹冲突监测方法、装置、设备、介质
CN114851187B (zh) * 2022-03-25 2023-07-07 华南理工大学 一种避障机械臂抓取方法、***、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1074215A (ja) * 1996-05-22 1998-03-17 Fujitsu Ltd 物体間距離演算装置および物体間距離演算プログラム記憶媒体
JP2002329215A (ja) * 2001-03-16 2002-11-15 Mitsubishi Electric Research Laboratories Inc オブジェクトの適応的サンプル距離フィールドを生成する方法
JP2003346186A (ja) * 2002-03-19 2003-12-05 Sony Corp 画像処理装置および方法、並びにプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5548694A (en) 1995-01-31 1996-08-20 Mitsubishi Electric Information Technology Center America, Inc. Collision avoidance system for voxel-based object representation
JP3490535B2 (ja) * 1995-04-13 2004-01-26 新日本製鐵株式会社 溶射装置の溶射バーナ、ランスの挿入方法
US5761391A (en) 1996-05-22 1998-06-02 Fujitsu Ltd. Arithmetic unit for calculating distance between objects
US6538655B1 (en) * 1997-08-29 2003-03-25 Kabushiki Kaisha Sega Enterprises Image processing system and image processing method
US6396492B1 (en) 1999-08-06 2002-05-28 Mitsubishi Electric Research Laboratories, Inc Detail-directed hierarchical distance fields
US6714213B1 (en) 1999-10-08 2004-03-30 General Electric Company System and method for providing interactive haptic collision detection
US7136786B2 (en) * 2001-04-12 2006-11-14 Mitsubishi Electric Research Laboratories, Inc. Method and system for modeling interaction of objects
US7191104B2 (en) * 2002-07-11 2007-03-13 Ford Global Technologies, Llc Method of real-time collision detection between solid geometric models
JP4335160B2 (ja) * 2005-03-02 2009-09-30 任天堂株式会社 衝突判定プログラムおよび衝突判定装置
JP2007114866A (ja) 2005-10-18 2007-05-10 Canon Inc 接触判定方式
DE102006059829A1 (de) 2006-12-15 2008-06-19 Slawomir Suchy Universalcomputer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1074215A (ja) * 1996-05-22 1998-03-17 Fujitsu Ltd 物体間距離演算装置および物体間距離演算プログラム記憶媒体
JP2002329215A (ja) * 2001-03-16 2002-11-15 Mitsubishi Electric Research Laboratories Inc オブジェクトの適応的サンプル距離フィールドを生成する方法
JP2003346186A (ja) * 2002-03-19 2003-12-05 Sony Corp 画像処理装置および方法、並びにプログラム

Also Published As

Publication number Publication date
CN102282561B (zh) 2014-11-12
US9530246B2 (en) 2016-12-27
CN102282561A (zh) 2011-12-14
US20110295576A1 (en) 2011-12-01
TW201032082A (en) 2010-09-01
WO2010082378A1 (ja) 2010-07-22
JPWO2010082378A1 (ja) 2012-06-28
TWI428778B (zh) 2014-03-01
DE112009004371T5 (de) 2012-08-02

Similar Documents

Publication Publication Date Title
JP5073065B2 (ja) 衝突判定装置および衝突判定プログラム
CN108099203B (zh) 用于3d打印的真实对象的定向
EP3040797B1 (en) Simulating the machining of a workpiece
JP6036662B2 (ja) ロボットシミュレーション装置、プログラム、記録媒体及び方法
JP6282798B2 (ja) 工作物の機械加工のシミュレーション
JP7343963B2 (ja) 画像を入力とする関数を学習するためのデータセット
KR100707841B1 (ko) 3차원 목표곡선을 이용한 곡면 변형 장치 및 그 방법
EP3038060B1 (en) 3D modeled object defined by a grid of control points
EP3051446A1 (en) Engraving a 2D image on a subdivision surface
JP2010277585A (ja) サンプル点において掃引容積の距離場を再構成する方法
CN110033519A (zh) 基于隐式函数的三维建模方法、装置、***及存储介质
Petrik et al. Reinforcement learning and optimization based path planning for thin-walled structures in wire arc additive manufacturing
JP2003029833A (ja) 移動体の自律走行経路の生成法
JP7256005B2 (ja) 実オブジェクトのスキンを表すファセットの集合の決定
Nagata et al. Generation of triangulated patches smoothed from original point cloud data with noise and its application to robotic machining
Yang et al. Topologically enhanced slicing of MLS surfaces
CN112802151B (zh) 一种墙线绘制方法、电子设备、存储介质
Zhang et al. A novel contour generation algorithm for surface reconstruction from dexel data
CN117274537B (zh) 基于边界问题的网格生成方法、装置、终端设备和介质
US20240029353A1 (en) Automatic creation of three-dimensional (3d) variable resolution region geometries
JP2023160791A (ja) 画像からの3d再構成
CN117313256A (zh) Cad特征树优化
CN117313257A (zh) Cad特征树生成
CN116894279A (zh) 基于梯度的cad模型优化
Himmelstein et al. Swept Volume Computation of Malformed Objects in PLM

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120724

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120821

R150 Certificate of patent or registration of utility model

Ref document number: 5073065

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150831

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250