陳蔚,章志兵,柳玉起
(華中科技大學(xué)材料成形與模具技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,武漢 430074)
干涉是汽車模具設(shè)計(jì)中遇到的一個(gè)關(guān)鍵性難題。模具中的干涉分為兩大類,即靜態(tài)干涉和動(dòng)態(tài)干涉[1]。文中主要對(duì)模具中的靜態(tài)干涉進(jìn)行分析。汽車覆蓋件模具中的靜態(tài)干涉主要分為以下幾種。
1)硬干渉。2個(gè)對(duì)象相交,有公共的部分;
2)軟干涉。2個(gè)對(duì)象間的最小距離小于合理間隙,但不接觸;
3)接觸干涉。2個(gè)對(duì)象相互接觸;
4)包容干涉。一個(gè)實(shí)體被另一個(gè)實(shí)體完全包含。
在模具的生產(chǎn)過(guò)程中,由于鑄造偏差,需要在型面上留出一定的加工余量用于后續(xù)工序的NC加工。由于鑄造工藝的限制,鑄造體各表面之間的距離有一定的限制,這就使得實(shí)際的模具尺寸與理論上的模具尺寸存在偏差[2]。即使設(shè)計(jì)在NX平臺(tái)上沒(méi)有干涉,在實(shí)際生產(chǎn)中依然可能會(huì)產(chǎn)生干涉。此外NX自身提供的干涉檢查模塊在設(shè)定間隙時(shí)需要對(duì)相關(guān)實(shí)體兩兩設(shè)置,太過(guò)繁瑣,檢查報(bào)告也不直觀。
設(shè)計(jì)一套能在干涉檢查時(shí)考慮鑄造面與鑄造面、鑄造面與NC加工型面、NC加工型面與NC加工型面之間的加工余量,并提供直觀的干涉檢查分析軟件,對(duì)檢查汽車車身模具之間的干涉,提高模具的設(shè)計(jì)效率和準(zhǔn)確性具有重要意義。
在汽車覆蓋件模具設(shè)計(jì)中,模具的表面一般劃分為鑄造面以及NC加工面,類型相同的面用同一種顏色進(jìn)行標(biāo)識(shí)。此外,一般在同一套模具中,鑄造面與鑄造面、鑄造面與NC加工面、NC加工面與NC加工面之間的間隙值是固定的,為在程序中根據(jù)面的顏色自動(dòng)設(shè)置干涉檢查間隙值提供了依據(jù)。
圖1 軟件界面Fig.1 Software interface
開(kāi)發(fā)的干涉檢查模塊界面如圖1所示。先選擇需要進(jìn)行干涉檢查的部件,根據(jù)顏色確定部件中的鑄造面,并在參數(shù)設(shè)定欄中設(shè)置鑄造面與鑄造面、鑄造面與NC加工面、NC加工面與NC加工面之間的間隙值。完成參數(shù)設(shè)定后,提交計(jì)算,最后顯示計(jì)算結(jié)果。
干涉檢查算法主要分以下幾個(gè)步驟進(jìn)行,先將實(shí)體表面離散成三角形面片,將實(shí)體之間的位置關(guān)系計(jì)算轉(zhuǎn)換為面片組之間的位置關(guān)系計(jì)算。
圖2 干涉原理Fig.2 Interference checking principle
如圖2所示,根據(jù)三角形單元沿法向平移所需要的余量間隙d可得到三棱柱ABC-A'B'C',同樣可得到三棱柱P1P2P3-P1'P2'P3'。通過(guò)2個(gè)三棱柱是否有交集可知2個(gè)三角形單元是否有干涉。
為了將問(wèn)題簡(jiǎn)化,程序通過(guò)將三角形單元的節(jié)點(diǎn)坐標(biāo)進(jìn)行坐標(biāo)轉(zhuǎn)換,以基準(zhǔn)三角形ABC的法向?yàn)閦方向,AB為x方向,點(diǎn)A為原點(diǎn)新建一個(gè)坐標(biāo)系,將2個(gè)三角形的節(jié)點(diǎn)坐標(biāo)均轉(zhuǎn)換成新坐標(biāo)系中的坐標(biāo),如圖3所示。同時(shí)得到目標(biāo)三角形P1P2P3在x'Oy'上的投影P1'P2'P3'。這就將三維空間的干涉檢查問(wèn)題轉(zhuǎn)換為了平面三角形是否有交集的問(wèn)題,而目標(biāo)三角形單元P1P2P3到基準(zhǔn)三角形ABC的距離可以直接通過(guò)目標(biāo)三角形單元節(jié)點(diǎn)的z坐標(biāo)得到。
圖3 局部坐標(biāo)系Fig.3 Local coordinator system diagram
圖4 三角形投影關(guān)系Fig.4 Triangle projection relationship
對(duì)于平面上2個(gè)三角形的位置關(guān)系,有如圖4所示的幾種可能關(guān)系:沒(méi)有交集;一個(gè)三角形被另一個(gè)三角形完全包含;交集由三角形頂點(diǎn)和線段交點(diǎn)組成;交集由線段交點(diǎn)構(gòu)成。程序只需要對(duì)三角形有交集的情況進(jìn)行分析,判斷交集區(qū)域點(diǎn)的z坐標(biāo)是否滿足間隙要求,即可判斷2個(gè)三角形單元是否產(chǎn)生干涉。
據(jù)此可知,如目標(biāo)三角形單元P1P2P3的投影與基準(zhǔn)三角形ABC有相交的部分,同時(shí)P1P2P3三角形的最小z坐標(biāo)小于設(shè)定的間隙值,則2個(gè)三角形單元產(chǎn)生了干涉。
在面片間位置關(guān)系判斷時(shí),很大一部分計(jì)算用于搜索一定范圍之內(nèi)的鄰近單元。為了提高計(jì)算效率,采用了空間格索引方法。
先求得整體的包容盒,將該包容盒微量放大取整后進(jìn)行空間格的劃分??臻g格的尺寸由鑄造面-鑄造面間隙值d決定(如圖5所示)。設(shè)定該值為空間格尺寸的目的是在進(jìn)行干涉檢查計(jì)算時(shí),對(duì)每一個(gè)三角形單元來(lái)說(shuō),只用將其所在空間格的周邊空間格內(nèi)的單元與其進(jìn)行干涉檢查計(jì)算即可。
進(jìn)行空間格劃分時(shí),假設(shè)在x,y,z方向分別分了 Nx,Ny,Nz份,整體包容盒的最下角坐標(biāo)為 xmin,ymin,zmin,最上角坐標(biāo)為 xmax,ymax,zmax,然后對(duì)空間格進(jìn)行序號(hào)排布,假設(shè)按照先x方向,其次y方向,最后z方向進(jìn)行排號(hào),則包容盒中任一點(diǎn)所在的空間格號(hào)碼可以通過(guò)式(1)計(jì)算出來(lái)[3]:
圖5 單元格劃分Fig.5 Division of spatial grid
其中[]表示取整運(yùn)算??臻g格的總數(shù)N=Nx×Ny×Nz。根據(jù)公式(1),對(duì)于剖分得到的每一個(gè)三角形單元,根據(jù)三角形單元的節(jié)點(diǎn)坐標(biāo)將其定位在某一空間格中。對(duì)于每個(gè)三角形單元,通過(guò)節(jié)點(diǎn)所在空間格序號(hào)計(jì)算得到其周圍的空間格序號(hào),獲得周圍空間格中的單元面片。這種類似數(shù)據(jù)結(jié)構(gòu)的Hash算法,將空間搜索問(wèn)題轉(zhuǎn)換成為了計(jì)算問(wèn)題,提高了計(jì)算效率。
汽車覆蓋件模具整體干涉基礎(chǔ)計(jì)算量較大。對(duì)于一套中等規(guī)模的汽車覆蓋件修邊模,離散的三角形面片數(shù)量會(huì)達(dá)到百萬(wàn)級(jí)[4]。如果再加上每個(gè)單元之間的循環(huán)計(jì)算,計(jì)算量很大。需要對(duì)干涉檢查過(guò)程進(jìn)行優(yōu)化,
具體干涉檢查過(guò)程如下。
1)若模具是基于實(shí)體設(shè)計(jì)的(如圖1中實(shí)體選項(xiàng)),則將用戶所選的所有實(shí)體按照順序編號(hào);若模具是基于小裝配設(shè)計(jì)的,則將屬于同一個(gè)部件的實(shí)體編上相同的序號(hào)。在進(jìn)行干涉檢查時(shí),只需對(duì)編號(hào)不同的實(shí)體之間進(jìn)行求解計(jì)算。根據(jù)設(shè)計(jì)規(guī)則,在小裝配中,同一個(gè)部件中要么只有一個(gè)實(shí)體,要么就是標(biāo)準(zhǔn)件,而標(biāo)準(zhǔn)件是不需要進(jìn)行內(nèi)部干涉檢查的。
2)對(duì)于2個(gè)編號(hào)不相同的實(shí)體,首先根據(jù)它們自身的包容盒進(jìn)行判斷。由于在干涉檢查中最大的間隙距離是鑄造面與鑄造面之間的間隙。如果2個(gè)實(shí)體的包容盒在x,y或z方向上的最小距離都大于這個(gè)間隙,則這2個(gè)實(shí)體不可能產(chǎn)生干涉,不需要進(jìn)行干涉檢查。
3)如果2個(gè)實(shí)體包容盒可能產(chǎn)生干涉,則對(duì)于基準(zhǔn)實(shí)體中的每一個(gè)單元,應(yīng)計(jì)算目標(biāo)實(shí)體中的所有單元是否與其產(chǎn)生干涉。在計(jì)算之前,進(jìn)行第2次判斷,即目標(biāo)實(shí)體中單元所在的空間格是否與基準(zhǔn)實(shí)體中單元所在的空間格相交。因?yàn)楦鶕?jù)之前空間格的劃分方式,與某一單元可能產(chǎn)生干涉的單元所在的空間格應(yīng)當(dāng)與該單元所在的空間格相鄰。
圖6 干涉檢查流程Fig.6 Interference checking flow
圖7 模具典型結(jié)構(gòu)Fig.7 Mold typical structure diagram
汽車模具沖孔結(jié)構(gòu)如圖7所示。為了保證沖頭(標(biāo)準(zhǔn)件)與壓件器(鑄造件)之間不產(chǎn)生干涉,需保證二者之間的距離d不小于10 mm。如果d<10 mm,則需要對(duì)沖頭固定座側(cè)壁進(jìn)行加工,防止實(shí)際生產(chǎn)中出現(xiàn)干涉。
應(yīng)用開(kāi)發(fā)的模塊對(duì)模具該部分進(jìn)行干涉檢查。沖頭處的剖面圖如圖8所示,壓件器表面為深色表明該處間隙值小于設(shè)定的10 mm,會(huì)產(chǎn)生軟干涉,而在模具中實(shí)際測(cè)得沖頭與壓件器最大距離d=8 mm,表明程序的計(jì)算結(jié)果是正確的。
圖8 干涉區(qū)域剖面圖Fig.8 Interference zone diagram
在NX平臺(tái)下開(kāi)發(fā)了汽車模具干涉檢查模塊。采用空間格對(duì)實(shí)體網(wǎng)格數(shù)據(jù)進(jìn)行標(biāo)記并對(duì)網(wǎng)格節(jié)點(diǎn)進(jìn)行重構(gòu)排序,在計(jì)算之前對(duì)計(jì)算量做了優(yōu)化,并將距離計(jì)算問(wèn)題轉(zhuǎn)換為空間數(shù)學(xué)求交問(wèn)題,有效地減少了干涉檢查的計(jì)算量。對(duì)計(jì)算結(jié)果采用直觀的顏色標(biāo)記,直觀地了解模具中存在的干涉,提高了設(shè)計(jì)效率。
[1]周瑾喻,王華昌,李建軍.基于UG的注射模干涉檢查功能開(kāi)發(fā)[J].模具工業(yè),2011,37(2):6 -10.
[2]韓華偉,張俊華,李春植.虛擬環(huán)境下車身焊裝夾具干涉的研究[J].機(jī)械科學(xué)與技術(shù),2007,26(3):394-398.
[3]楊光,劉玉琳.曲面網(wǎng)格修復(fù)中的一種快速搜索方法[J].計(jì)算機(jī)應(yīng)用研究,2006(4):143 -145.
[4]江洪,侯劍波,丁家翔,等.干涉檢驗(yàn)優(yōu)化算法及其在車輛電磁制動(dòng)器虛擬裝配系統(tǒng)中的實(shí)現(xiàn)[J].機(jī)械工程學(xué)報(bào),2007,43(12):59 -63.