作者:馮祖軍,朱冒冒,郭建華,鞠魯粵
在產(chǎn)品的設(shè)計和開發(fā)中利用逆向工程可以極大地縮短產(chǎn)品的開發(fā)周期和開發(fā)費(fèi)用,尤其是我國的汽車行業(yè),許多覆蓋件模具均是從國外直接進(jìn)口,這些模具的設(shè)計資料比較匱乏。轎車覆蓋件改型或國產(chǎn)化,采用逆向工程不失為一種快捷有效的方法。
逆向工程一般可分為四個階段:(1)零件原形的數(shù)字化。通常采用三坐標(biāo)測量機(jī)(CMM)或激光掃描等測量裝置來獲取零件原形表面點(diǎn)的三維坐標(biāo)值。 (2)從測量數(shù)據(jù)中提取零件原形的幾何特征。按測量數(shù)據(jù)的幾何屬性對其進(jìn)行分割,采用幾何特征匹配與識別的方法來獲取零件原形所具有的設(shè)計與加工特征。(3)零件原形CAD模型的重建。將分割后的三維數(shù)據(jù)在相應(yīng)軟件系統(tǒng)中分別做表面模型的擬合,并通過各表面片的求交與拼接獲取零件原形表面的CAD模型。(4)重建CAD模型的檢驗(yàn)與修正。采用根據(jù)獲得的CAD模型重新測量和加工出樣品的方法來檢驗(yàn)重建的CAD模型是否滿足精度或其他試驗(yàn)性能指標(biāo)的要求,對不滿足要求者重復(fù)以上過程,直至達(dá)到零件的設(shè)計要求。而其中實(shí)物幾何特征的識別和提取是整個過程中的重點(diǎn)和難點(diǎn)。
在逆向工程中,因?yàn)榇蟛糠謱?shí)物的形狀比較復(fù)雜,特別是存在大量自由曲面特征,通常無法用單一整張曲面來擬合所有數(shù)據(jù)點(diǎn)。這就需要提取曲面特征,將點(diǎn)云分成許多有意義的區(qū)域來單獨(dú)處理,分別用不同的方法擬合出不同的曲面;然后通過求交、裁剪,用過渡曲面將曲面連接起來,最后形成整張光順的曲面模型。曲面的劃分直接影響曲面的構(gòu)造方法、曲面的拼接、曲面的縫合及實(shí)體模型的建立。所構(gòu)造的曲面能否反映原來實(shí)物的特征,很大程度上取決于分片質(zhì)量的好壞。
在現(xiàn)行使用的曲面構(gòu)型軟件中,數(shù)據(jù)分片一般都采用交互式方法進(jìn)行:即由用戶通過對原始數(shù)據(jù)點(diǎn)云 的觀察,分析某一數(shù)據(jù)集合,從中找出各個特征,交互式對其邊界進(jìn)行定義,然后對所得數(shù)據(jù)片分別采用相應(yīng)的曲面重構(gòu)方法完成單個曲面的重構(gòu)。再通過公共的邊界線或過渡曲面將各個構(gòu)型曲面連接起來。這種方法實(shí)現(xiàn)比較直觀,目前很多商用軟件都采用這種方式。如surfacer。雖然方法直觀,簡便,卻存在很大不足。采用用戶交互式的數(shù)據(jù)區(qū)間定義,在實(shí)際過程中存在很大的隨意性。確定的邊界比較模糊,通常先是對數(shù)據(jù)進(jìn)行一個大致的劃分,然后根據(jù)對擬合曲面情況的觀察和誤差、光順性的檢測結(jié)果進(jìn)行反復(fù)的修改、刪除甚至重構(gòu)。這種做法費(fèi)時,效率比較低,并且修改觀察時因人不同產(chǎn)生的結(jié)果可能不同,這需要有一定的實(shí)際經(jīng)驗(yàn)和幾何構(gòu)型水平,是一種摸索和嘗試的過程。曲面原有特征也得不到很好的保護(hù)和體現(xiàn),所取得效果未必能達(dá)到用戶的要求。因此,實(shí)現(xiàn)原形特征的自動提取來劃分?jǐn)?shù)據(jù)一直以來是人們追求的目標(biāo)。
國內(nèi)外有很多人對實(shí)物原型特征識別和曲面的自動分片進(jìn)行了研究,但多數(shù)算法比較復(fù)雜,實(shí)現(xiàn)起來比較困難,有些主要針對規(guī)則數(shù)據(jù)點(diǎn)云的,且都沒有真正達(dá)到分片的自動化。
通過提取散亂數(shù)據(jù)點(diǎn)的拓?fù)浣Y(jié)構(gòu),完成數(shù)據(jù)點(diǎn)的三角網(wǎng)格化;然后進(jìn)行數(shù)據(jù)精簡,估算精簡后各測點(diǎn)的法矢和曲率,把曲率極值點(diǎn)作為邊界特征候選點(diǎn);最后連邊界點(diǎn)組成邊界線。該算法被用于上海大眾公司SAN模具數(shù)字化項(xiàng)目,取得了較好效果。
1 建立三角網(wǎng)格模型
用光學(xué)設(shè)備測得的數(shù)據(jù)點(diǎn)云數(shù)據(jù)量大,數(shù)據(jù)排列無明顯的組織結(jié)構(gòu),對這樣的點(diǎn)我們采用Riemann圖建立散亂數(shù)據(jù)點(diǎn)間的鄰接關(guān)系,然后采用最小內(nèi)角最大化原理完成數(shù)據(jù)點(diǎn)的三角網(wǎng)絡(luò)化。
2 曲面法矢及曲率求解
對于給定的多面體,在某頂點(diǎn)Pi處的法矢量npi,通常用與之相鄰的所有平面單位法矢ni的加權(quán)組合來計算。
在實(shí)際的應(yīng)用中,權(quán)值λi通常有以下幾種取法:
實(shí)際上,這種算法是最簡單的算法。各有關(guān)平面對公共頂點(diǎn)法矢的貢獻(xiàn)是相等的,類似于在平面情況下的計算公式。其優(yōu)點(diǎn)是計算非常簡單,但沒有明顯的幾何意義。
其中Ai表示相關(guān)的三角形的面積,面積越大,該平面法矢在式中對公共頂點(diǎn)法矢的貢獻(xiàn)越小。
其中l(wèi)i為有關(guān)的邊長,可以看出三角平面的兩個相關(guān)的邊越長,該平面法矢在式中對公共頂點(diǎn)法矢的貢獻(xiàn)越小。
在此,采用三角形面積作為權(quán)因子,用該點(diǎn)周圍的若干三角形法矢的加權(quán)平均來計算該點(diǎn)法矢。數(shù)據(jù)點(diǎn)三角網(wǎng)絡(luò)化后,在點(diǎn)P0周圍有m個點(diǎn)Pi(I=1,2,。..m)與之相鄰接,稱為點(diǎn)P0的鄰域點(diǎn)集,m個三角形所在的各平面有m個單位法矢n1,n2,…nm。由P0,Pi,Pi+1所組成的三角形的法矢為ni:
用這種方法估算法矢簡單適用。在編制程序時,除可以估算各點(diǎn)法矢外,還允許各點(diǎn)自帶法矢,以提高數(shù)據(jù)處理的靈活性。
在獲得鄰域點(diǎn)集在P0點(diǎn)的法矢后,就可以對鄰域點(diǎn)集進(jìn)行局部參數(shù)化。由于要估算該點(diǎn)的曲率值,所以局部參數(shù)化曲面一般采用二次或二次以上的曲面。經(jīng)實(shí)踐總結(jié),對空間散亂分布的數(shù)據(jù)采用局部拋物面的擬合方法比較好。在參數(shù)化的過程中,選擇P0點(diǎn)為坐標(biāo)原點(diǎn),則對它進(jìn)行局部參數(shù)擬合的曲面方程可表示為h(u,v)=au2+buv+cv2,并選取h坐標(biāo)軸與曲面在P0點(diǎn)的法矢nP0的方向相同,另兩個坐標(biāo)軸向量u,v位于P0點(diǎn)的切平面內(nèi)。則由三者構(gòu)成的標(biāo)架為δ=(u, v, nP0)。它們組成的坐標(biāo)系是一個仿射系。如u,v 為P0點(diǎn)的主方向,其對應(yīng)的主曲率為k1,k2(見圖1)。
根據(jù)法矢nP0、則過矢量點(diǎn)P0的切平面方程為:
完成鄰域點(diǎn)集的坐標(biāo)局部參數(shù)化后,便可以應(yīng)用加權(quán)最小二乘原理對鄰域點(diǎn)集進(jìn)行曲面擬合。然后利用高斯-亞當(dāng)消元法求得該問題的最佳參數(shù)估計a*,b*,c*。于是可得鄰域點(diǎn)集的逼近曲面為h(u,v)=a*u2+b*uv+c*v2。由此可推導(dǎo)出該點(diǎn)的逼近主曲率和主方向。
對應(yīng)的主方向?yàn)椋?/p>
在獲得各點(diǎn)的曲率后,取曲率極值點(diǎn)作為特征點(diǎn)的候選點(diǎn)。
3 邊界點(diǎn)的提取
一條曲線上的邊界點(diǎn)可分為階躍邊界(高度不連續(xù))、褶皺邊界(切矢不連續(xù))和光滑邊界(曲率不連續(xù))。
取曲率極值點(diǎn)或零交叉點(diǎn)(對第一種邊界線來講)作為離散曲面的邊界點(diǎn)。基本思想如下:
(1)先選取一候選邊界點(diǎn)P, 在該點(diǎn)兩邊沿主方向m1取最近的兩鄰近點(diǎn)T1,T2,求它們沿m1方向上的曲率KT1,KT2。如果k1大于KT1、KT2則該點(diǎn)為最大曲率極值點(diǎn)。
(2)同理選定主方向m2,在P點(diǎn)兩邊沿主方向取鄰近點(diǎn)T3、T4,求他們沿m2方向上的曲率KT3、KT4,如果k2小于KT3、KT4,則該點(diǎn)為最小曲率極值點(diǎn)。
(3)對所有候選點(diǎn)進(jìn)行上述操作,就可得到所需的全部邊界點(diǎn)。
在數(shù)據(jù)點(diǎn)的界點(diǎn)提取之后,可對界點(diǎn)進(jìn)行組織,去除偽界點(diǎn),采用鄰邊編碼鏈表算法形成一個有序的實(shí)體邊界輪廓圖。實(shí)際反求時,封閉邊界的提取可分為兩步進(jìn)行。首先是單邊界的提取;其次是對單邊界按序追蹤,形成封閉邊界。該算法可進(jìn)一步實(shí)現(xiàn)邊界特征提取的自動程度。但在汽車覆蓋件模具的逆向設(shè)計中,過渡曲面一般為光滑過渡,曲率變化不十分明顯。用這種算法產(chǎn)生的邊界輪廓并不能真正完成點(diǎn)云的較準(zhǔn)確劃分。因此,文中在特征點(diǎn)提取后,采用人機(jī)交互的方式,來生成封閉的邊界輪廓特征。這樣既避免了上面提到的單純靠人機(jī)交互實(shí)現(xiàn)分片的缺點(diǎn),又克服了單純自動提出過程中對偏差不便調(diào)整的弊端。
4 實(shí)例和結(jié)論
該算法借鑒了文獻(xiàn)中所提的方法,并進(jìn)行了改進(jìn)。文中所提算法不僅可用于規(guī)則數(shù)據(jù)點(diǎn)的特征點(diǎn)的提取,而且通過對散亂數(shù)據(jù)點(diǎn)的簡化及三角網(wǎng)格化,可對其進(jìn)行特征點(diǎn)的提取。本算法的優(yōu)點(diǎn)是結(jié)構(gòu)明晰,實(shí)現(xiàn)起來簡單,相對單純?nèi)藱C(jī)交互的方式,提高了精度,避免了大量嘗試重構(gòu)過程,相對自動算法提高了算法的靈活性。文中所提算法通過MFC和OpenGL 結(jié)合編程在上海大眾汽車公司SAN2000前圍模具設(shè)計中得到應(yīng)用,取得了很好的效果,圖2和圖3為SAN2000前圍模具采用此方法的實(shí)例 。首先采用德國GOM公司生產(chǎn)的ATOS(Advanced Topometric Sensor )非接觸式結(jié)構(gòu)光測量儀,取得模具的數(shù)據(jù)點(diǎn)。借助surfacer軟件完成對數(shù)據(jù)的預(yù)處理。然后利用文中的算法計算各數(shù)據(jù)點(diǎn)的法矢和曲率估算,提取邊界特征點(diǎn),完成數(shù)據(jù)分片。當(dāng)然該算法也有比較大的局限性,對光滑過渡特征還不能很好地獲得其完整邊界,需通過人工交互進(jìn)行調(diào)整。這還有待于在今后的研究中發(fā)現(xiàn)更好的方法。
責(zé)任編輯:gt
-
汽車電子
+關(guān)注
關(guān)注
3026文章
7955瀏覽量
167046 -
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7033瀏覽量
89040
發(fā)布評論請先 登錄
相關(guān)推薦
評論