TWI428778B - 碰撞判定裝置及碰撞判定程式 - Google Patents

碰撞判定裝置及碰撞判定程式 Download PDF

Info

Publication number
TWI428778B
TWI428778B TW099101020A TW99101020A TWI428778B TW I428778 B TWI428778 B TW I428778B TW 099101020 A TW099101020 A TW 099101020A TW 99101020 A TW99101020 A TW 99101020A TW I428778 B TWI428778 B TW I428778B
Authority
TW
Taiwan
Prior art keywords
unit
determination
collision
curve
boundary
Prior art date
Application number
TW099101020A
Other languages
English (en)
Other versions
TW201032082A (en
Inventor
Akira Miyata
Nobuyuki Takahashi
Toshihiro Azuma
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
Publication of TW201032082A publication Critical patent/TW201032082A/zh
Application granted granted Critical
Publication of TWI428778B publication Critical patent/TWI428778B/zh

Links

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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Automation & Control Theory (AREA)
  • Processing Or Creating Images (AREA)
  • Numerical Control (AREA)
  • Image Generation (AREA)

Description

碰撞判定裝置及碰撞判定程式
本發明係有關於用來判定在二次元或三次元之空間內移動之物體間之碰撞之有無之碰撞判定裝置及碰撞判定程式,尤其有關於在利用工具機進行切削加工之模擬裝置中,用以檢測工具機之機構零件和工件之間之碰撞之碰撞判定裝置及碰撞判定程式。
在處理移動之物體間之碰撞現象時,在各個物體均進行移動之情況,視為從一方之物體看到另外一方之物體之相對移動而可以歸結為靜止物體和移動物體之間之碰撞現象。在本說明書中,以下作為靜止物體和移動物體之間之碰撞現象來處理。
就檢測此種物體間之碰撞之手法而言,有使移動物體側之形狀沿著其移動軌跡進行掃描(sweep)而作成掃描形狀,判定掃描形狀和靜止物體側之形狀之間有無交叉之方法(以下稱為掃描法)。另外,還有以適當之間隔分割從移動之開始至結束之期間,判定每一個分割之瞬間之移動物體和靜止物體的形狀間之交叉之有無之方法(以下稱為分時法)。兩個手法之基本差異在於:針對物體移動這種沿著時間軸之連續性現象,前者為以連續的原樣進行處理,後者為進行離散化再處理。
但是,在作成任意形狀之任意移動的掃描形狀,特別是在對不只有位置變化還伴隨有姿勢變化之一般之剛體移動作成掃描形狀方面,掃描法並沒有通用而且有效率之手法。亦即,假如不是移動體側之形狀之種類或移動之種類受到限制之特定情況,掃描法便有難以適用的問題。另外,成為複雜形狀之掃描形狀和靜止物體形狀之交叉判定之計算成本亦容易變高,在實用上不常使用。
分時法一般而言計算成本比掃描法低,但是當分割間隔採用較細密時,交叉判定之次數會增加,整體之計算成本便變成無法忽視。另外一方面,當分割間隔採用較寬鬆時,有由於疏漏導致碰撞檢測遺漏之可能性變高為其問題。
因此先前技術以分時法作為基礎,致力於抑制每一次之交叉判定之計算成本,此種方法之一有例如被記載在下述之專利文獻1之方法。
[先前技術文獻]
[專利文獻]
[專利文獻1]日本特開2007-114866號公報
在專利文獻1所記載之方法中,因為是以分時法作為基礎,所以上述之寬分割之疏漏所導致的碰撞檢測遺漏或密分割之使整體計算成本增大之問題依然並未消除。另外,成為判定對象之兩物體之形狀,因為均以空間格子模型的形式定義,所以在利用電腦處理時需要很大之記憶體容量。此問題在處理三次元形狀之情況時特別嚴重。
在工具機之切削加工模擬領域,屬於碰撞判定對象之一方之物體之工件因為形狀隨著加工之進行而變化,在加工中途階段呈現複雜之形狀,所以大多以沒有相位構造之限制條件之三維像素模型(Voxel model)等空間格子模型來表現工件之形狀。但是,屬於碰撞判定對象之另外一方之物體之工具機之機構零件只是為了碰撞判定而以空間格子模型來表現,造成上述記憶體容量之使用量太大所以實用上不適合。
本發明乃針對上述之問題而研創者,其目的是提供一種碰撞判定裝置和碰撞判定程式,可以減少碰撞檢測遺漏之問題,且不需要高計算成本之處理,可以在較少資料記憶體容量之條件下進行高速而且確實之碰撞判定。
為了解決上述問題,本發明之碰撞判定裝置係具備有:形狀資料記憶部,用來儲存以固定在第一物體之座標系定義之三維像素模型來表現第一物體之形狀之三維像素模型資料,和以固定在第二物體之座標系定義之邊界表現模型來表現第二物體之形狀之邊界表現模型資料;注目單元指定部,從構成三維像素模型之單元中,指定進行碰撞判定之注目單元;判定對象點產生部,對於注目單元,產生碰撞判定用之判定對象點群;空間曲線生成部,將第一物體對第二物體之相對性剛體移動適用在判定對象點群之各個,產生屬於判定對象點之移動軌跡曲線之空間曲線;曲線交叉判定部,用來判定邊界表現模型之各個邊界元件和空間曲線之間之交叉之有無;距離算出部,依照曲線交叉判定部之判定之結果,當空間曲線與所有邊界元件皆沒有交叉時,算出空間曲線對邊界表現模型之邊界面之最接近距離;和碰撞判定部,根據曲線交叉判定部之判定結果、距離算出部之算出結果、判定對象點群之各個之判定對象點之資訊、和從注目單元或判定對象點之資訊決定之距離基準值,判定兩物體間之碰撞之可能性。
在本發明之碰撞判定裝置中,利用邊界表現模型之邊界元件和判定對象點之移動軌跡曲線之交叉判定來進行物體間之碰撞之可能性之判定,藉以直接處理物體之移動這種沿著時間軸之連續性現象,所以可以達到排除分時法中所看到之由於疏漏導致碰撞檢測遺漏之可能性之效果。另外,因為不需要作成移動物體之掃描形狀,且使對於上述之移動曲線之交叉判定歸結到相關於曲線參數之一元方程式來處理,所以可以使演算量減少,成為可以進行高速之碰撞判定。另外,成為碰撞判定之對象之一方之物體之形狀因為是以邊界表現模型表現,所以在如同機械零件之由少數構成面構成之形狀之情況時,可以達到以較少之資料量進行碰撞判定之效果。
實施形態1
以下根據圖式詳細說明本發明之碰撞判定裝置及碰撞判定程式之實施形態。另外,本發明並不只限於此實施形態。
第1圖是用來表示本發明之碰撞判定裝置之概略構造之方塊圖。在第1圖中,碰撞判定裝置100構成為具有碰撞判定控制部101、形狀資料記憶部102、判定對象點產生部103、空間曲線生成部104、和曲線交叉判定部105。在形狀資料記憶部102儲存有三維像素模型資料106,該三維像素模型資料106係以固定在第一物體之座標系定義之三維像素模型表現成為碰撞判定對象之第一物體之形狀者。另外,在形狀資料記憶部102儲存保持有邊界表現模型資料107,該邊界表現模型資料107係以固定在第二物體之座標系定義之邊界表現模型表現成為碰撞判定對象之第二物體之形狀者。另外,表示第一物體之對第二物體之相對性剛體移動之剛體移動資料108係在碰撞判定裝置100之外部備妥,並輸入到空間曲線生成部104。
在此,本發明中所言之三維像素模型是指用來表現在二次元或三次元之空間區域,取一樣間隔之格子,或以四分割或八分割等階層樹狀管理之格子之各個格子點之物理量之模型。在表現形狀之情況時,該模型是指以包含表現對象形狀之格子點之內外識別資訊,或至表現對象形狀之邊界為止之具有正負符號之距離等資訊作為物理量之模型。另外,在三維像素模型,將以預定之間隔鄰接之格子點作為角(corner)點之正方形或立方體區域稱為「單元(cell)」,在階層樹狀管理之三維像素模型中,最下層之最小單元稱為「終端單元」,中間階層之單元稱為「中間節點(node)單元」。
另外,本發明中之邊界表現模型一般稱為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中所述之適應的取樣距離場。適應的取樣距離場是將形狀表現對象物所配置之空間以屬於純量(scalar)場之一種的距離場來表現之表現手法和表現模型之一種,乃是對依照空間之次元而以四分割或八分割進行階層樹狀管理之格子點,取樣至表現對象物形狀之邊界為止之具有正負符號之距離,且利用內插等方法而可以使取樣點以外之任意之空間座標點之距離場之值復原。
以下說明各部之動作。另外,本發明雖是成為碰撞判定對象之物體之形狀不論屬二次元或三次元均可,但是為著使說明簡潔故在本實施形態1中,以三次元之形狀之觀念進行說明。
碰撞判定控制部101接受來自碰撞判定裝置100外部之碰撞判定要求,從三維像素模型資料106特定成為與第二物體之碰撞判定之候補之候補單元群。碰撞判定控制部101針對候補單元群之各個單元,依序對判定對象點產生部103、空間曲線生成部104、和曲線交叉判定部105各部發出指令,進行交叉判定。碰撞判定控制部101根據在曲線交叉判定部105進行之交叉判定結果來判定第一物體和第二物體之間之碰撞之可能性,在預定之容許餘裕(margin)下,直到碰撞之有無確定為止重複對該等各部發出指令之處理。亦即,碰撞判定控制部101亦具有作為碰撞判定部之功能,用來判定兩個物體之碰撞之可能性。另外,對於其詳細之動作內容將於後面說明。
判定對象點產生部103接受來自碰撞判定控制部101之指令而進行動作。在本實施形態1中,判定對象點產生部103產生位於從碰撞判定控制部101指定之各個單元之角(corner)之點,作為判定對象點。另外,在本實施形態1中,判定對象點產生部103可以構成為對於終端單元,亦產生以位於再歸式八分割其佔有立方區域之部分立方區域之角部和中心之點,作為判定對象點。另外,亦可以在單元之中心產生判定對象點。
空間曲線生成部104利用判定對象點產生部103所產生之判定對象點和剛體移動資料108,根據剛體移動資料108產生空間曲線用以表示可以使判定對象點移動之移動軌跡曲線。剛體移動資料108對於一般之剛體移動,乃為由以時刻或與時刻等效之參數(設為s)作為變數的旋轉移動和平移移動之組合來表現之資料,具體而言,以各個成分成為參數s之函數之3×3的旋轉矩陣R(s)和平移向量T(s)之對予以記述。所產生之空間曲線資料,當以判定對象點為P時,記述成為C(s)=[Cx(s),Cy(s),Cz(s)]T =R(s)‧P+T(s)。另外,亦可以使剛體移動資料108成為4×4的同次座標轉換矩陣M(s),或可以導出該等之參數(parametric)表現之任意之形式。
曲線交叉判定部105利用空間曲線生成部104所產生之空間曲線和邊界表現模型資料107之各構成面之曲面資料,判定稜線所包圍之區域內,空間曲線和構成面是否交叉。具體而言,當構成面之曲面資料給出為以u、v作為2個變數的參數表現:S(u,v)=[Sx(u,vs),Sy(u,v),Sz(u,v)]T 之情況時,只要檢查三元聯立方程式: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成為相反關係之第二物體之對第一物體之相對之剛體移動,預先求得包含第一物體之座標系之第二物體之大致可動範圍之邊界框(bounding box),判斷注目單元是否在邊界框內。
在注目單元為候補單元之情況時,對判定對象點產生部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...箭頭
第1圖是本發明之碰撞判定裝置之實施形態之構造圖。
第2圖(a)及(b)是用來說明本發明之碰撞判定方法之基本原理之圖。
第3圖是用來說明本發明之碰撞判定步驟之流程圖。
第4圖是用來更進一步補充說明本發明之碰撞判定步驟之流程圖。
100...碰撞判定裝置
101...碰撞判定控制部
102...形狀資料記憶部
103...判定對象點產生部
104...空間曲線生成部
105...曲線交叉判定部
106...三維像素模型資料
107...邊界表現模型資料
108...剛體移動資料

Claims (7)

  1. 一種碰撞判定裝置,係具備有:形狀資料記憶部,用來儲存以固定在第一物體之座標系定義之三維像素模型來表現上述第一物體之形狀之三維像素模型資料、及以固定在第二物體之座標系定義之邊界表現模型來表現上述第二物體之形狀之邊界表現模型資料;注目單元指定部,從構成上述三維像素模型之單元中,指定進行碰撞判定之注目單元;判定對象點產生部,對於上述注目單元,產生碰撞判定用之判定對象點群;空間曲線生成部,將上述第一物體對上述第二物體之相對性剛體移動適用在上述判定對象點群之各個,產生屬於該判定對象點之移動軌跡曲線之空間曲線;曲線交叉判定部,用來判定上述邊界表現模型之各個邊界元件和上述空間曲線之間之交叉之有無;距離算出部,依照上述曲線交叉判定部之判定結果,當上述空間曲線與所有邊界元件皆沒有交叉時,算出上述空間曲線對上述邊界表現模型之邊界面之最接近距離;以及碰撞判定部,根據上述曲線交叉判定部之判定結果、上述距離算出部之算出結果、上述判定對象點群之各個之判定對象點之資訊、及從上述注目單元或上述判定對象點之資訊所決定之距離基準值,判定兩物體間之 碰撞之可能性。
  2. 如申請專利範圍第1項之碰撞判定裝置,其中,上述距離算出部依照上述曲線交叉判定部之判定結果,在上述空間曲線和上述邊界表現模型之任一邊界元件有交叉時,算出上述空間曲線對上述邊界表現模型之最深距離。
  3. 如申請專利範圍第1項之碰撞判定裝置,其中,上述曲線交叉判定部在上述空間曲線和上述邊界表現模型之任一邊界元件有交叉時,算出與交叉位置對應之空間曲線之參數。
  4. 如申請專利範圍第1至3項中任一項之碰撞判定裝置,其中,上述三維像素模型資料係使用適應的取樣距離場而加以表現,該適應的取樣距離場係以樹狀階層之空間分割格子之各個格子點為取樣點而根據各個取樣點之至第一物體之形狀之邊界為止之具有正負符號之距離來表現形狀;上述判定對象點產生部產生位於上述注目單元之角之格子點或位於中心之格子點,作為上述判定對象點群;上述碰撞判定部根據曲線交叉判定部之判定結果、上述距離算出部之算出結果、及上述判定對象點之距離場之值,判定碰撞之可能性;上述注目單元指定部在無法判定上述注目單元之碰撞之可能性時,指定更下位階層之單元作為新的注目 單元。
  5. 如申請專利範圍第4項之碰撞判定裝置,復具備有碰撞判定控制部,當即使以上述樹狀階層之最下層之終端單元作為注目單元亦無法判定碰撞之可能性時,依照上述三維像素模型之次元對上述終端單元進行八分割或四分割,對於被分割之注目單元令上述碰撞判定部判定碰撞之可能性。
  6. 如申請專利範圍第5項之碰撞判定裝置,其中,上述碰撞判定控制部重複進行上述注目單元之分割直至上述碰撞判定部能夠判定碰撞之可能性為止,在被分割之注目單元變成小於預定之容許餘裕之時點停止上述注目單元之分割;上述碰撞判定部在停止上述注目單元之分割時,判定為有碰撞之可能性。
  7. 一種碰撞判定程式,係使電腦執行下述步驟:從以固定在第一物體之座標系定義且構成表現上述第一物體之形狀之三維像素模型之單元中,指定進行碰撞判定之注目單元之步驟;對於上述注目單元,產生碰撞判定用之判定對象點群之步驟;將上述第一物體對第二物體之相對性剛體移動適用在上述判定對象點群之各個,產生屬於該判定對象點之移動軌跡曲線之空間曲線之步驟;判定以固定在第二物體之座標系定義且表現上述 第二物體之形狀之邊界表現模型之各個邊界元件和上述空間曲線之間之交叉之有無之曲線交叉判定步驟;依照上述曲線交叉判定步驟之判定結果,當上述空間曲線與所有邊界元件皆沒有交叉時,算出上述空間曲線對上述邊界表現模型之邊界面之最接近距離之距離算出步驟;以及根據上述曲線交叉判定步驟之判定結果、上述距離算出步驟之算出結果、上述判定對象點群之各個之判定對象點之資訊、和從上述注目單元或上述判定對象點之資訊決定之距離基準值,判定兩物體間之碰撞之可能性之步驟。
TW099101020A 2009-01-15 2010-01-15 碰撞判定裝置及碰撞判定程式 TWI428778B (zh)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
TW201032082A TW201032082A (en) 2010-09-01
TWI428778B true TWI428778B (zh) 2014-03-01

Family

ID=42339642

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099101020A TWI428778B (zh) 2009-01-15 2010-01-15 碰撞判定裝置及碰撞判定程式

Country Status (6)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI716849B (zh) * 2019-04-10 2021-01-21 財團法人工業技術研究院 預先檢測加工路徑碰撞方法及系統

Families Citing this family (26)

* 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
EP2590144B1 (en) 2011-11-03 2018-10-24 Dassault Systèmes Designing a modeled volume represented by dexels
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
KR101607586B1 (ko) * 2012-04-17 2016-03-30 마키노 밀링 머신 주식회사 공작기계의 간섭판정방법 및 간섭판정장치
JP6256332B2 (ja) * 2012-06-13 2018-01-10 日本電気株式会社 移動体異常接近検知システムおよび移動体異常接近検知方法
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 珠海金山数字网络科技有限公司 一种视点变换方法及装置、计算设备及存储介质
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 华南理工大学 一种避障机械臂抓取方法、***、装置及存储介质

Family Cites Families (14)

* 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
JP3391657B2 (ja) * 1996-05-22 2003-03-31 富士通株式会社 物体間距離演算装置および物体間距離演算プログラム記憶媒体
KR100584706B1 (ko) * 1997-08-29 2006-05-30 가부시키가이샤 세가 화상 처리 시스템 및 화상 처리 방법
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
US7002570B2 (en) * 2001-03-16 2006-02-21 Mitsubishi Electric Research Laboratories, Inc. System and method for generating adaptively sampled distance fields with bounded distance trees
US7136786B2 (en) * 2001-04-12 2006-11-14 Mitsubishi Electric Research Laboratories, Inc. Method and system for modeling interaction of objects
JP2003346186A (ja) 2002-03-19 2003-12-05 Sony Corp 画像処理装置および方法、並びにプログラム
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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI716849B (zh) * 2019-04-10 2021-01-21 財團法人工業技術研究院 預先檢測加工路徑碰撞方法及系統
US11407112B2 (en) 2019-04-10 2022-08-09 Industrial Technology Research Institute Method and system for predicting collision of machining path

Also Published As

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

Similar Documents

Publication Publication Date Title
TWI428778B (zh) 碰撞判定裝置及碰撞判定程式
CN105740497B (zh) 对工件的加工进行仿真
USRE48940E1 (en) Simulation of the machining of a workpiece
CN108099203B (zh) 用于3d打印的真实对象的定向
JP6036662B2 (ja) ロボットシミュレーション装置、プログラム、記録媒体及び方法
JP5430456B2 (ja) 幾何特徴抽出装置、幾何特徴抽出方法、及びプログラム、三次元計測装置、物体認識装置
JP2019179544A (ja) フライス作業によって製造可能な部品の設計
US20080034023A1 (en) Contact geometry calculation device, contact geometry calculation method, and computer program product
CN105096381A (zh) 一种运动中船舶三维模型在航道中的碰撞检测方法
US9117300B2 (en) Designing a modeled volume represented by dexels
EP3825956A1 (en) Processing a 3d signal of a shape attribute over a real object
CN114861500A (zh) 基于三维点云自动生成隧道结构有限元模型的方法及***
EP4195086A1 (en) Computer aided generative design with feature thickness control to facilitate manufacturing and structural performance
EP3675064B1 (en) Generation of a structured 3d model from a raw mesh
EP4092557A1 (en) Parameterization of digital irregular freeform geometries
EP3502929A1 (en) Determining a set of facets that represents a skin of a real object
JP2020115341A (ja) 弱型定義を用いるフレキシブルモデリング
Chou et al. Real-time and accurate multiple contact detection between general curved objects
JP2023160791A (ja) 画像からの3d再構成
JP2007293435A (ja) 設計支援装置、設計支援方法、およびプログラム
Kaiser et al. Octree-based, multiresolution environment mapping for efficient calculation of collision-free paths for industrial robots
Tengler et al. Ways of uneven road surface modelling used in the vehicle dynamics analysis
JP2010134669A (ja) 3次元物体照合装置及び3次元物体照合方法
Mukherjee A Computation Optimization Method in Computer Mediated Teleoperation
Texeira et al. Virtuscade-A FEM Preprocessor Tool Base on Parametric Surfaces