Clash Detection
eryar@163.com
Abstract. Clash detection is used for the model collision check. The paper introduce the clash detection in PDMS, and also about how to set the piping component for the operation space clash check.
Key Word. Clash Detection, Collision Detection
1. Introduction
碰撞檢查是PDMS中一個用于模型檢查的輔助功能。三維模型已經(jīng)很直觀,但是僅憑直觀并不能保證模型完全沒有干涉。通過碰撞檢查,可以實現(xiàn)模型完全無碰撞,優(yōu)化設計。
精確碰撞檢查算法的實現(xiàn)較為復雜,簡單的碰撞檢查實現(xiàn)起來較為簡單。即將待檢查的模型的層次包圍盒(BVH)生成,直接將包圍盒進行碰撞檢查。如果包圍盒都沒有碰撞,則模型就沒有碰撞。如果包圍盒之間存在碰撞,則需要再進一步分析了。精確的算法會根據(jù)模型的幾何參數(shù)表示來計算,粗略的處理是將模型離散后的網(wǎng)格數(shù)據(jù)進行分析,兩種處理方法各有利弊。如下圖所示兩個幾何體的包圍盒是碰撞了,但是實際上因為有個開孔是沒有碰撞的。
Figure 1.1 Clash Detection demo
Open CASCADE也提供了碰撞檢測的功能模塊Collision Detection,不過不是開源免費的。沒有用過,不知道性能如何。關(guān)于Collision Detection模塊更多介紹,可參考:http://www.opencascade.com/content/collision-detection
本文對PDMS中的Clash Detection進行介紹,并說明如何定義管件Piping Component,使其能夠進行操作空間的碰撞檢查。
2. Obstruction Levels
PDMS的Design模塊中的碰撞檢查Clash Detection功能可以用來檢查模型中指定部分的模型的干涉Interferences情況。碰撞檢查的結(jié)果取決于以下兩個因素:
v Obstruction Levels
v Touch and Clearance
2.1 Obstruction Level
PDMS所有設計數(shù)據(jù)庫(Design Database)和部件庫數(shù)據(jù)庫(Catalogue Database)中的基本幾何體都有個屬性:Obstruction,其取值范圍是0到2,意義如下:
v OBST 0 :None,不占空間,即不參考碰撞檢查;
v OBST 1 :Soft,軟占有,用來對操作空間等作碰撞檢查;
v OBST 2 :Hard,硬占有,表示碰撞檢查;
Figure 2.1 Obstruction Levels in Design and Paragon module
2.2 Touch and Clearance
除了Obstruction Level以外,還有這些精度設置直接影響碰撞檢查的結(jié)果,他們是Touch Gap, Overlap, Clearnace ,如下圖所示:
Figure 2.2 Tolerances for the Clasher
當Overlap設值為5, Touch為2,Clearance為8時,碰撞檢查時的意義如下圖所示:
Figure 2.3 Physical Clash, Touches and Clearances
v 當兩個幾何體之間的重疊部分超過5mm時,就會報告一個物理的碰撞Clash;
v 當兩個幾何體之間的重疊部分小于5mm,就會報告一個接觸Touch;
v 當兩個幾何體之間沒有重疊,但是接觸間隙小于2mm,也會報告一個接觸;
v 當兩個幾何體之間沒有重疊,但是間距大于2小于8mm,會報告一個Clearance;
v 當兩個幾何體之間間距大于8mm,即沒有干涉發(fā)生。
3.Operating Space Check
對于一些管件如閥門或溫度計之類,有個操作空間Operating Space。不滿足這個操作空間,管件的安裝或操作都有些不便之處。所以需要對管件的操作空間進行檢測。管件的外形都是在部件庫中使用多個基本幾何體進行定義的。每個基本幾何體都可以指定Obstruction Level,即None, Soft和Hard。假設一個閥門的操作空間如下圖所示:
Figuer 3.1 Operating Space for a Valve
將部件定義中的幾何體的Represent指定為Piping Reserved時,會自動設置此幾何體的Obstruction Level為Soft(1),即將此幾何體做為操作空間進行碰撞檢測。當將幾何體指定為Piping Reserved時,在模型空間中并不會顯示,但是在碰撞檢查時會報告與其碰撞的模型。
如下圖所示:
Figure 3.2 Operating Space Clash
雖然閥門和設備并沒有接觸,但是設備與閥門的操作空間碰撞了,依然做為一種碰撞進行報告。
4.Conclusion
PDMS設計模塊中的碰撞檢查是進行優(yōu)化設計的一種輔助功能。通過使用碰撞檢查,可以做到零干涉,使設計更合理。
通過指定Obstruction Level不僅可以用來檢測直接的物理碰撞,還可以用來進行操作空間的檢查。
通過在軟件中使用碰撞檢查功能,可以理解此功能的意義。對于想深究此功能實現(xiàn)算法的讀者,可以更有的放矢。OPEN CASCADE中也提供了碰撞檢查的功能模塊Collision Detection,只不過要收費。由此可見,此功能有實際應用價值。
5. References
1. AVEVA. DEISGN Reference Manual Utilities.
2. OPEN CASCADE. Collision Detection. http://www.opencascade.com/content/collision-detection