王興晨 ,路春光 ,趙 震 ,劉佳鑫 ,2
(1.華北理工大學(xué) 機(jī)械工程學(xué)院,河北 唐山 063009;2.華中科技大學(xué) 能源與動力工程學(xué)院,湖北 武漢 430074)
逆向工程(Reverse Engineering,簡稱RE)也稱為反求工程。RE是一種產(chǎn)品設(shè)計過程再現(xiàn)技術(shù),通過對獲取的已有產(chǎn)品數(shù)字模型,進(jìn)行逆向研究和分析并通過改進(jìn)得到新產(chǎn)品,以三維軟件Geomagic Studio、UG為處理手段,并與CAD/CAM系統(tǒng)相結(jié)合,已發(fā)展成為一個相對完善的技術(shù)領(lǐng)域[1]。
逆向建模由最初的掃描已有實體模型,然后在3D環(huán)境中重塑外形的逆向設(shè)計開始,其建模的方法與實際也在不斷變化。文獻(xiàn)[2]認(rèn)為,逆向建模不應(yīng)只是對已有模型的簡單復(fù)制,更應(yīng)該考究產(chǎn)品設(shè)計概念,分析出設(shè)計者的原始設(shè)計理念?;谶@一理念,許多國內(nèi)外專家、學(xué)者進(jìn)行了大量的研究。文獻(xiàn)[3]提出基于特征的參數(shù)化匹配建模方法,并將其應(yīng)用到人體臉部的整體輪廓建模中;文獻(xiàn)[4]通過對特征截面數(shù)據(jù)進(jìn)行除噪、擬合處理的設(shè)計點云數(shù)據(jù)預(yù)處理算法。近年來國內(nèi)一些院校對反求工程進(jìn)行了大量研究工作,并圍繞特征建模,提出了一系列基于特征的CAD建模方法。文獻(xiàn)[5]提出基于點云特征提取與分割算法。文獻(xiàn)[6]對特征反求工程中的優(yōu)化約束問題進(jìn)行了研究,并提出了優(yōu)化約束算法和區(qū)域分塊算法。文獻(xiàn)[7]提出基于最小二乘擬合算法的二次曲面提取技術(shù)。文獻(xiàn)[8]重點研究基于反求工程的純自由曲面建模方法,并提出B樣條曲面協(xié)調(diào)設(shè)計。主要提出逆向特征提取與參數(shù)化相結(jié)合建模方法。以電動汽車的車頭模型為例,采用專業(yè)掃描儀,對車頭模型進(jìn)行掃描,獲取車頭模型點云數(shù)據(jù),導(dǎo)入GeomagicStudio軟件進(jìn)行點云數(shù)據(jù)優(yōu)化,提取特征截面曲線以及關(guān)鍵點,最后通過VisualBasic對CATIA軟件進(jìn)行二次開發(fā),完成對車頭造型參數(shù)化設(shè)計。
由于掃描精度越高,獲得數(shù)據(jù)質(zhì)量越高,故此次數(shù)據(jù)掃描采用的工具為FARO Focus3D X330手持掃描儀,該掃描儀具有快速校準(zhǔn)程序,掃描范圍大,掃描速度快,能夠獲得較高質(zhì)量的點云數(shù)據(jù)。Focus3D X330掃描儀的得到的點云數(shù)據(jù),在Focus3D X330軟件中生成sproj格式的文件,將文件另存為OBJ格式的文件導(dǎo)入到Geomagic Studio軟件中進(jìn)行數(shù)據(jù)處理。Geomagic Studio軟件主要數(shù)據(jù)處理工具包括:Reduce Noise(減少噪點)、Data Compacting(數(shù)據(jù)精簡)、Create By Boundary(創(chuàng)建邊界)、Create By Section(截面創(chuàng)建)Curve?Fitting(曲線擬合)、Fair Surface(光順曲面)和Variance Analysis(偏差分析)等[9]。經(jīng)過優(yōu)化的電動汽車車頭點云數(shù)據(jù),如圖1所示。
圖1 車頭點云數(shù)據(jù)預(yù)處理模型Fig.1 Car Point Cloud Data Preprocessing Model
特征數(shù)據(jù)是對產(chǎn)品設(shè)計理念與造型特征的充分體現(xiàn),特征輪廓曲線與截面曲線即可得基于特征表達(dá)的三維模型。結(jié)合逆向工程在特征建模方面的應(yīng)用,總結(jié)得出逆向工程與特征提取CAD建模流程,如圖2所示。
圖2 逆向工程與特征提取CAD建模流程Fig.2 Based on Reverse Engineering CAD Modeling Process and Characteristics Section
3.1 特征截面選取
截面的選取要遵循一些原則,首先分析點云數(shù)據(jù)特征,確定曲面生成方式,確定特征截面插入位置,然后插入截面。對于形狀規(guī)則可以通過一個拉伸二維截面命令,就能生成原實體的模型,截面的基準(zhǔn)面位置應(yīng)該選取模型中央位置。而對于形狀不規(guī)則的自由曲面,截面的選取,要觀察模型曲面之間的銜接位置,如邊界由直線變?yōu)榍€的拐點位置。通過對車頭模型的特征分析,界面的選取,如圖3所示。以面1為基準(zhǔn)面,選擇平行于面1的邊界直線與曲線交接點(拐點1和拐點2位置),為截面所在位置。
圖3 特征截面選取Fig.3 Characteristics of Cross Section Selection
3.2 特征截面提取
在獲得特征截面的點云數(shù)據(jù)后,對特征曲線重建時,既要滿足與原始點云數(shù)據(jù)的逼近精度要求,同時還要滿足互相之間的各種幾何約束和工程約束。通過Geomagic Studio對提取的特征數(shù)據(jù)進(jìn)行全局優(yōu)化及擬合質(zhì)量檢測,可得到高精度特征截面曲線。
特征截面提取最關(guān)鍵步驟為特征數(shù)據(jù)數(shù)學(xué)模型的建立與求解,假定:(1)用Si(i=1,…,n)表示特征截面數(shù)據(jù)中各段數(shù)據(jù)所對應(yīng)的目標(biāo)曲線,點Qik表示第i段數(shù)據(jù)段中的第k個測量數(shù)據(jù)點(k=1,…,m),測量數(shù)據(jù)點Qik到目標(biāo)曲線Si的距離為d(Qik,Si);(2)這 n 段曲線的 s維向量用表示 X={x1,x2,…,xs},其集合了 n段曲線的所有參數(shù);(3)這n段曲線之間滿足約束集Cj(X)=0,j=1,…,l約束優(yōu)化模型為:
先用拉格朗日乘數(shù)法將該優(yōu)化模型轉(zhuǎn)化成無約束優(yōu)化問題,再用非線性最小二乘算法中的列文伯格-馬奈爾特法求解。特征截面曲線提取過程,如圖4所示。
圖4 截面曲線特征提取Fig.4 Cross Section Curve Feature Extraction
3.3 曲率分析和特征點的拾取
曲率分析遵循一定規(guī)律,根據(jù)曲線連續(xù)階將曲線變化點分為端點(曲線末端點)、曲率極值點(一般為曲率極大值)、拐點、尖點(切矢不連續(xù)點)和折痕點(曲率不連續(xù))并統(tǒng)稱為特征點,如圖5所示。
圖5 平面曲線特征點Fig.5 Characteristic Point of the Family of Plane Curves
曲率計算,利用NURBS曲線插值算法[10]對每一層片數(shù)據(jù)進(jìn)行B樣條曲線插值,構(gòu)造非均勻B樣條曲線。B樣條曲線表達(dá)式一般為 x=x(t),則曲率為
通過Geomagic Studio提取特征曲線,并把特征曲線導(dǎo)入到CATIA軟件中,進(jìn)行曲率分析,將曲率以曲率梳的形式顯示,通過判斷曲率梳變化情況選取曲率最高處為特征點位置,并用測量工具確定特征點三維坐標(biāo),如圖6所示。
圖6 曲率分析與特征點的確立Fig.6 The Establishment of Curvature Analysis and Feature Points
3.4 曲面重構(gòu)
曲面重構(gòu)采用參數(shù)變量分段有理多項式定義的NURBS曲面:
控制頂點{di,j},(i=0,1,…,m;j=0,1,…,n),為拓?fù)渚匦侮嚵?。{wi,j}是與{di,j}聯(lián)系的權(quán)因子,且四角頂點為正權(quán)因子即w0,0,wm,0,w0,n,wm,n>0,wi,j≥0;Ni,k(u)(0,1,…,m)和Nj,l(v)(0,1,…,m)分別為u向k次和v向l次的規(guī)范B樣條基函數(shù)。它們分別由u向與 v 向的節(jié)點矢量U=[u0,u1,…,um+k+1]與 V=[v0,v1,…,vm+k+1]決定。重構(gòu)曲面采用雙三次NURBS曲面,假設(shè)節(jié)點矢量u=[u0,u1,u2,u3,u4,u5,u6],值 u,u∈[0,u4-u3],則三次 B 樣條基函數(shù)一般表達(dá)式為:
NURBS曲面插值算法,先沿u向(即切片方向)把切片數(shù)據(jù)換算為帶權(quán)型值點,再以B-樣條的邊界條件及反算公式進(jìn)行反算,求得{di,j}[11],即可利用上式進(jìn)行曲面重構(gòu)。
4.1 CATIA軟件二次開發(fā)技術(shù)的應(yīng)用
4.1.1 在VB中引用CATIA類型
運(yùn)用Visual Basic連接CATIA。首先,啟動VB程序,新建“Standard EXE”工程,在頂部工具欄中選擇“Project”,然后在下拉工具欄選項中點擊“References”選項,選取所有以“CATIA V5”開頭的選項,如圖7所示。點擊“OK”完成VisualBasic對CATIA軟件內(nèi)部命令的連接。
4.1.2 通過VB啟動CATIA
用VB或VBA訪問CATIA時,采用GetObject和CreateObject方法,即可實現(xiàn)VB對CATIA的連接。實際運(yùn)行當(dāng)中,無法判斷CATIA是否已經(jīng)運(yùn)行,實際編程當(dāng)中把CAITA運(yùn)行與未運(yùn)行的啟動方法結(jié)合在一起,即利用下面的程序代碼,這樣訪問CATIA時就不會出問題[13]。(具體程序略)。
4.1.3 設(shè)計步驟及關(guān)鍵代碼
進(jìn)入零件(part)設(shè)計界面,創(chuàng)建文檔(Documents)對象,在混合形狀設(shè)計(hybridShapeFactor)模式下,輸入關(guān)鍵點坐標(biāo)(iX,iY,iZ),添加特征點(AddNewPointCoord)[14],特征點創(chuàng)建完成。(具體程序略)。
對特征點三維坐標(biāo)賦予字符串SubCreatepoint(iXAsInteger,iY As Integer,iZ As Integer);調(diào)用交互界面三維坐標(biāo)文本輸入框中的字符Createpoint Val(txtX.Text),Val(txtY.Text),Val(txtZ.Text)。
依次輸入特征點坐標(biāo),生成模型基本輪廓,如圖8所示。用樣條曲線(HybridShapeSpline)依次連接特征點,生成特征截面以及邊界曲線,如圖9所示。(具體程序略)。
圖8 特征點輸入Fig.8 Feature Point Input
圖9 生成樣條曲線Fig.9 Getcurve
用蒙皮法,依次填充(HybridShapeFill)封閉樣條曲線[15],生成車頭模型原始自由曲面,如圖10所示。關(guān)閉編輯命令,并對零件進(jìn)行更新Update(具體程序略)。再經(jīng)過正向設(shè)計凹槽、拉伸,拔模命令可得車頭最終模型,如圖11所示。
圖10 生成曲面Fig.10 SurfaceCreation
圖11 最終模型Fig.11 Final Model
運(yùn)用Geomagic Studio對車頭點云數(shù)據(jù)預(yù)處理,通過對模型特征分析,選取合適位置插入截面,擬合獲取了較好的特征輪廓線;再進(jìn)行曲率分析,提取特征點坐標(biāo)數(shù)據(jù);最后,以特征點數(shù)據(jù)為參數(shù),借助CATIA軟件進(jìn)行參數(shù)化設(shè)計,自動生成特征輪廓曲線,完成曲面重構(gòu)從而得到充分表達(dá)的曲面模型。這種基于逆向工程特征點的自由曲面參數(shù)化建模方式,不僅操作簡便提高了模型重建的效率,同時有助于節(jié)約研發(fā)成本和產(chǎn)品創(chuàng)新設(shè)計。
[1]Daschbach J M,Abella R J,Wang C.CAD/CAM:Reverse Engineering Applications[C].University Programs in Computer-Aided Engineering,Design,and Manufacturing.ASCE,2015.
[2]Várady T:Reverse engineering of geometric models :An introduction[J].Computer-Aided Design.1997,29(4):255-268.
[3]Gregory T D,Warren N W J,Henry J L.Feature based models for data fitting[J].Computer-Aided Design,1995,27(2):139-146.
[4]Ai Chingchih,Huang M ingchih:The p rocessing of data points basing ondesign intent in reverse engineering[J].International Journal of M achine Tools&M anufacture,2000,40(12):1913-1927.
[5]柯映林,劉云峰,范樹遷.基于特征的反求工程建模系統(tǒng)RE-SOFT[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2004,16(6):799-811.(Ke Ying-lin,Liu Yun-feng,F(xiàn)an Shu-qian.Based on the characteristics of the reverse engineering modeling system RE-SOFT[J].Journal of computer aided design and graphics,2004,16(6):799-811.)
[6]單東日,柯映林.反求工程中點云數(shù)據(jù)的二次曲面特征提取技術(shù)[J].計算輔助設(shè)計與圖形學(xué)學(xué)報,2003,15(12):1497-1501.(Shan Dong-ri.Reverse engineering point cloud data of quadric surface feature extraction technology[J].Journal of Computer-aided Design and Computer Graphics,2003,15(12):1497-1501.)
[7]Ke Ying-lin,Sun Qing,Lu Zhen.Least-square method based feature fitting and extraction in reverse engineering[J].Chinese Journal of Meehanical Engineering:English Edition,2003,16(2):163-166.
[8]賈明,呂震,李永青.基于B樣條曲面裁剪計算的局部協(xié)調(diào)設(shè)計[J].機(jī)械工程學(xué)報,2003,39(2):74-78.(Jia Ming,Lv Zhen,Li Yong-qing.Based on b-spline surface cutting calculation of local coordination design[J].Journal of Mechanical Engineering,2003,39(2):74-78.)
[9]蔡敏,成思源,楊雪榮.基于Geomagic Studio的特征建模技術(shù)研究[J].機(jī)床與液壓,2014(21):142-145.(Cai Min,Cheng Shi-yuan,Yang Xue-rong.Based on the Geomagic Studio feature modeling technology research [J].Machine with hydraulic,2014(21):142-145.)
[10]施法中.計算機(jī)輔助設(shè)計與非均勻有理B樣條[M].北京:高等教育出版社,2001.(Shi Fa-zhong.Computer Aided Design and Non-Uniform Rational B-spline[M].Beijing:Higher Education Press,2001.)
[11]朱心雄.自由曲線曲面造型技術(shù)[M].北京:科學(xué)出版社,2000:88-196.(Zhu Xin-xiong.Free Curve Surface Modeling Technology[M].Beijing:Science Press,2000:88-196.)
[12]Xiao J C.A Method of surface reconstruction in reverse engineering based on CATIA VBA[J].Journal of Xian Technological University,2010.
[13]周桂生,陸文龍.CATIA二次開發(fā)技術(shù)研究與應(yīng)用[J].機(jī)械設(shè)計與制造,2010,1(81).(Zhou Gui-sheng.Lu Wen-long.CATIA secondary development technology research andapplication[J].MechanicalDesignandManufacturing,2010,1(81).)
[14]胡挺,吳立軍.CATIA二次開發(fā)技術(shù)基礎(chǔ)[M].電子工業(yè),2006.(Hu Ting,Wu Li-jun.CATIA Secondary Development Technology Base[M].The Electronics Industry,2006.)
[15]袁允偉,王勤易.基于VS.NET的CATIA二次開發(fā)的自由曲面設(shè)計[J].機(jī)電一體化,2011,17(3):87-91.(Yuan Yun-wei,Wang Qing-yi.The secondary development of CATIA based on VS.NET free surface design[J].Mechanical and Electrical Integration,2011,17(3):87-91.)