陳蔚,章志兵,柳玉起
(華中科技大學材料成形與模具技術國家重點實驗室,武漢 430074)
干涉是汽車模具設計中遇到的一個關鍵性難題。模具中的干涉分為兩大類,即靜態干涉和動態干涉[1]。文中主要對模具中的靜態干涉進行分析。汽車覆蓋件模具中的靜態干涉主要分為以下幾種。
1)硬干渉。2個對象相交,有公共的部分;
2)軟干涉。2個對象間的最小距離小于合理間隙,但不接觸;
3)接觸干涉。2個對象相互接觸;
4)包容干涉。一個實體被另一個實體完全包含。
在模具的生產過程中,由于鑄造偏差,需要在型面上留出一定的加工余量用于后續工序的NC加工。由于鑄造工藝的限制,鑄造體各表面之間的距離有一定的限制,這就使得實際的模具尺寸與理論上的模具尺寸存在偏差[2]。即使設計在NX平臺上沒有干涉,在實際生產中依然可能會產生干涉。此外NX自身提供的干涉檢查模塊在設定間隙時需要對相關實體兩兩設置,太過繁瑣,檢查報告也不直觀。
設計一套能在干涉檢查時考慮鑄造面與鑄造面、鑄造面與NC加工型面、NC加工型面與NC加工型面之間的加工余量,并提供直觀的干涉檢查分析軟件,對檢查汽車車身模具之間的干涉,提高模具的設計效率和準確性具有重要意義。
在汽車覆蓋件模具設計中,模具的表面一般劃分為鑄造面以及NC加工面,類型相同的面用同一種顏色進行標識。此外,一般在同一套模具中,鑄造面與鑄造面、鑄造面與NC加工面、NC加工面與NC加工面之間的間隙值是固定的,為在程序中根據面的顏色自動設置干涉檢查間隙值提供了依據。

圖1 軟件界面Fig.1 Software interface
開發的干涉檢查模塊界面如圖1所示。先選擇需要進行干涉檢查的部件,根據顏色確定部件中的鑄造面,并在參數設定欄中設置鑄造面與鑄造面、鑄造面與NC加工面、NC加工面與NC加工面之間的間隙值。完成參數設定后,提交計算,最后顯示計算結果。
干涉檢查算法主要分以下幾個步驟進行,先將實體表面離散成三角形面片,將實體之間的位置關系計算轉換為面片組之間的位置關系計算。

圖2 干涉原理Fig.2 Interference checking principle
如圖2所示,根據三角形單元沿法向平移所需要的余量間隙d可得到三棱柱ABC-A'B'C',同樣可得到三棱柱P1P2P3-P1'P2'P3'。通過2個三棱柱是否有交集可知2個三角形單元是否有干涉。
為了將問題簡化,程序通過將三角形單元的節點坐標進行坐標轉換,以基準三角形ABC的法向為z方向,AB為x方向,點A為原點新建一個坐標系,將2個三角形的節點坐標均轉換成新坐標系中的坐標,如圖3所示。同時得到目標三角形P1P2P3在x'Oy'上的投影P1'P2'P3'。這就將三維空間的干涉檢查問題轉換為了平面三角形是否有交集的問題,而目標三角形單元P1P2P3到基準三角形ABC的距離可以直接通過目標三角形單元節點的z坐標得到。

圖3 局部坐標系Fig.3 Local coordinator system diagram

圖4 三角形投影關系Fig.4 Triangle projection relationship
對于平面上2個三角形的位置關系,有如圖4所示的幾種可能關系:沒有交集;一個三角形被另一個三角形完全包含;交集由三角形頂點和線段交點組成;交集由線段交點構成。程序只需要對三角形有交集的情況進行分析,判斷交集區域點的z坐標是否滿足間隙要求,即可判斷2個三角形單元是否產生干涉。
據此可知,如目標三角形單元P1P2P3的投影與基準三角形ABC有相交的部分,同時P1P2P3三角形的最小z坐標小于設定的間隙值,則2個三角形單元產生了干涉。
在面片間位置關系判斷時,很大一部分計算用于搜索一定范圍之內的鄰近單元。為了提高計算效率,采用了空間格索引方法。
先求得整體的包容盒,將該包容盒微量放大取整后進行空間格的劃分。空間格的尺寸由鑄造面-鑄造面間隙值d決定(如圖5所示)。設定該值為空間格尺寸的目的是在進行干涉檢查計算時,對每一個三角形單元來說,只用將其所在空間格的周邊空間格內的單元與其進行干涉檢查計算即可。
進行空間格劃分時,假設在x,y,z方向分別分了 Nx,Ny,Nz份,整體包容盒的最下角坐標為 xmin,ymin,zmin,最上角坐標為 xmax,ymax,zmax,然后對空間格進行序號排布,假設按照先x方向,其次y方向,最后z方向進行排號,則包容盒中任一點所在的空間格號碼可以通過式(1)計算出來[3]:

圖5 單元格劃分Fig.5 Division of spatial grid

其中[]表示取整運算。空間格的總數N=Nx×Ny×Nz。根據公式(1),對于剖分得到的每一個三角形單元,根據三角形單元的節點坐標將其定位在某一空間格中。對于每個三角形單元,通過節點所在空間格序號計算得到其周圍的空間格序號,獲得周圍空間格中的單元面片。這種類似數據結構的Hash算法,將空間搜索問題轉換成為了計算問題,提高了計算效率。
汽車覆蓋件模具整體干涉基礎計算量較大。對于一套中等規模的汽車覆蓋件修邊模,離散的三角形面片數量會達到百萬級[4]。如果再加上每個單元之間的循環計算,計算量很大。需要對干涉檢查過程進行優化,
具體干涉檢查過程如下。
1)若模具是基于實體設計的(如圖1中實體選項),則將用戶所選的所有實體按照順序編號;若模具是基于小裝配設計的,則將屬于同一個部件的實體編上相同的序號。在進行干涉檢查時,只需對編號不同的實體之間進行求解計算。根據設計規則,在小裝配中,同一個部件中要么只有一個實體,要么就是標準件,而標準件是不需要進行內部干涉檢查的。
2)對于2個編號不相同的實體,首先根據它們自身的包容盒進行判斷。由于在干涉檢查中最大的間隙距離是鑄造面與鑄造面之間的間隙。如果2個實體的包容盒在x,y或z方向上的最小距離都大于這個間隙,則這2個實體不可能產生干涉,不需要進行干涉檢查。
3)如果2個實體包容盒可能產生干涉,則對于基準實體中的每一個單元,應計算目標實體中的所有單元是否與其產生干涉。在計算之前,進行第2次判斷,即目標實體中單元所在的空間格是否與基準實體中單元所在的空間格相交。因為根據之前空間格的劃分方式,與某一單元可能產生干涉的單元所在的空間格應當與該單元所在的空間格相鄰。

圖6 干涉檢查流程Fig.6 Interference checking flow

圖7 模具典型結構Fig.7 Mold typical structure diagram
汽車模具沖孔結構如圖7所示。為了保證沖頭(標準件)與壓件器(鑄造件)之間不產生干涉,需保證二者之間的距離d不小于10 mm。如果d<10 mm,則需要對沖頭固定座側壁進行加工,防止實際生產中出現干涉。
應用開發的模塊對模具該部分進行干涉檢查。沖頭處的剖面圖如圖8所示,壓件器表面為深色表明該處間隙值小于設定的10 mm,會產生軟干涉,而在模具中實際測得沖頭與壓件器最大距離d=8 mm,表明程序的計算結果是正確的。

圖8 干涉區域剖面圖Fig.8 Interference zone diagram
在NX平臺下開發了汽車模具干涉檢查模塊。采用空間格對實體網格數據進行標記并對網格節點進行重構排序,在計算之前對計算量做了優化,并將距離計算問題轉換為空間數學求交問題,有效地減少了干涉檢查的計算量。對計算結果采用直觀的顏色標記,直觀地了解模具中存在的干涉,提高了設計效率。
[1]周瑾喻,王華昌,李建軍.基于UG的注射模干涉檢查功能開發[J].模具工業,2011,37(2):6 -10.
[2]韓華偉,張俊華,李春植.虛擬環境下車身焊裝夾具干涉的研究[J].機械科學與技術,2007,26(3):394-398.
[3]楊光,劉玉琳.曲面網格修復中的一種快速搜索方法[J].計算機應用研究,2006(4):143 -145.
[4]江洪,侯劍波,丁家翔,等.干涉檢驗優化算法及其在車輛電磁制動器虛擬裝配系統中的實現[J].機械工程學報,2007,43(12):59 -63.