黃夢(mèng)莉
(中航飛機(jī)西安飛機(jī)分公司,陜西 西安 710089)
目前,先進(jìn)的測(cè)量軟件可以利用CAD模型直接測(cè)量,但是由于其不具備 CAD軟件的造型、分析功能,對(duì)于飛機(jī)各類(lèi)零件和工裝的曲線(xiàn)、曲面的測(cè)量,根本不能構(gòu)造出符合企業(yè)質(zhì)量文件要求的測(cè)量點(diǎn),例如,沿某一方向的最高點(diǎn)、最低點(diǎn)或是切點(diǎn)、拐點(diǎn),并且在曲率大處加密采點(diǎn)。
CATIA V5是IBM/DS基于Windows核心開(kāi)發(fā)的高端CAD/CAE/CAM系統(tǒng),作為國(guó)內(nèi)外各大飛機(jī)制造企業(yè)的首選軟件,它具有統(tǒng)一的用戶(hù)界面、數(shù)據(jù)管理以及兼容的數(shù)據(jù)庫(kù)和應(yīng)用程序接口,并擁有20多個(gè)獨(dú)立的模塊。測(cè)量人員按照檢測(cè)計(jì)劃要求,依據(jù)相關(guān)質(zhì)量文件規(guī)定在CATIA V5下構(gòu)建測(cè)量點(diǎn),并提取輸出成標(biāo)準(zhǔn)格式,可供各種測(cè)量設(shè)備直接使用。
雖然應(yīng)用CATIA V5的線(xiàn)框和曲面設(shè)計(jì)功能模塊,可以構(gòu)建符合規(guī)則要求的測(cè)量點(diǎn),但是人工構(gòu)建測(cè)量點(diǎn)的過(guò)程是一件十分繁瑣的事情,對(duì)于1000多測(cè)量點(diǎn)的模胎,至少需要工作2 h,并且經(jīng)常出現(xiàn)多取點(diǎn)、少取點(diǎn)等現(xiàn)象。為了實(shí)現(xiàn)曲面測(cè)量的自動(dòng)采點(diǎn),必須開(kāi)發(fā)一套基于CATIA V5的測(cè)量理論數(shù)據(jù)自動(dòng)提取軟件,在確保工作質(zhì)量的同時(shí),最大程度地提高工作效率。
CATIA開(kāi)發(fā)接口是通過(guò)兩種方式與外部程序通信:進(jìn)程內(nèi)應(yīng)用程序 (In-process Application)方式和進(jìn)程外應(yīng)用程序 (Out-process Application)方式。由于進(jìn)程內(nèi)應(yīng)用程序是使用腳本開(kāi)發(fā),不利于程序功能的擴(kuò)展。本軟件采用進(jìn)程外應(yīng)用程序方式,利用CATIA V5提供的COM接口,用VC#進(jìn)行開(kāi)發(fā)實(shí)現(xiàn)。
本軟件將為測(cè)量理論數(shù)據(jù)的自動(dòng)提取與集中存儲(chǔ)提供解決方案。將每個(gè)產(chǎn)品的數(shù)據(jù)提取作為一項(xiàng)任務(wù)來(lái)處理,每個(gè)產(chǎn)品可能有多處部位需要檢測(cè),每個(gè)部位的測(cè)量理論數(shù)據(jù)作為單獨(dú)一個(gè)數(shù)據(jù)集管理,這樣可以形成一個(gè)結(jié)構(gòu)樹(shù)。其中任務(wù)管理具有新建、打開(kāi)、保存、打印、頁(yè)面設(shè)置、字體設(shè)置、打印內(nèi)容設(shè)置、發(fā)布等功能。通過(guò)將產(chǎn)品數(shù)模、測(cè)量理論數(shù)據(jù)、布點(diǎn)草圖等存儲(chǔ)在一個(gè)XML文件中,可以實(shí)現(xiàn)測(cè)量理論數(shù)據(jù)的集中管理,改變了以往數(shù)據(jù)、數(shù)模、打印草圖分散存儲(chǔ)的現(xiàn)狀,方便后續(xù)的數(shù)據(jù)管理工作。該軟件的主界面如圖1所示。
圖1 軟件主界面
本軟件按照測(cè)量理論數(shù)據(jù)提取工作流程,采用模塊化、參數(shù)化的方法進(jìn)行設(shè)計(jì),主要包括測(cè)量點(diǎn)分布、測(cè)量點(diǎn)排序、測(cè)量點(diǎn)提取等功能。為實(shí)現(xiàn)曲面測(cè)量理論數(shù)據(jù)的自動(dòng)提取,需要解決以下關(guān)鍵技術(shù):
1)針對(duì)不同曲面設(shè)計(jì)布點(diǎn)算法,實(shí)現(xiàn)在各類(lèi)曲面上的自動(dòng)布點(diǎn)。
2)控制測(cè)量點(diǎn)的構(gòu)建順序,保證與測(cè)量順序一致,避免后續(xù)人工排序。
3)通過(guò)三維空間幾何變換,實(shí)現(xiàn)測(cè)量數(shù)據(jù)從原始坐標(biāo)系到測(cè)量坐標(biāo)系的轉(zhuǎn)換,并且輸出成XYZIJK格式。
根據(jù)曲面類(lèi)型不同,可以采用三種布點(diǎn)方法。一是等參網(wǎng)格法;二是UV等分法;三是是等參截面法。其中等參網(wǎng)格法是目前被許多軟件采用的方法,包括CATIA,UG,PC-DMIS以及SA等軟件,它對(duì)于標(biāo)準(zhǔn)幾何體可以直接通過(guò)創(chuàng)建等參線(xiàn)的方式,在曲面上劃分網(wǎng)格,創(chuàng)建測(cè)量點(diǎn)。而對(duì)于非標(biāo)準(zhǔn)的幾何體或邊界不規(guī)則的曲面,只能采用UV等分法或截面法,其中UV等分法適用于曲率變化較小的光滑曲面,而截面法則適用于掃描面或拉深面。
2.1.1 等參網(wǎng)格法
等參網(wǎng)格法的用戶(hù)界面如圖2所示。首先分別沿兩個(gè)方向創(chuàng)建等參曲線(xiàn)網(wǎng)格,然后創(chuàng)建網(wǎng)格交點(diǎn)即為要測(cè)量的點(diǎn),這種方法適用于規(guī)則的零件外形測(cè)量。布點(diǎn)效果如圖3所示。
圖2 等參網(wǎng)格法界面
圖3 等參網(wǎng)格法布點(diǎn)效果圖
2.1.2 UV等分法。
UV等分法界面如圖4所示。首先分別沿U,V方向構(gòu)建等分平面,然后用等分平面對(duì)測(cè)量面劃分網(wǎng)格,網(wǎng)格的交點(diǎn)即為要測(cè)量的點(diǎn)。其中“縮進(jìn)”參數(shù)是指測(cè)量點(diǎn)偏離曲面邊緣的距離。可以點(diǎn)擊“U方向按鈕”改變U的正方向,同理可以改變V的正方向,通過(guò)改變U,V的正方向可以改變測(cè)量點(diǎn)的構(gòu)建順序,分析時(shí)按照測(cè)量點(diǎn)的構(gòu)建順序輸出。這種方法對(duì)于測(cè)量曲面變化不大的模胎比較適用。布點(diǎn)效果如圖5所示。
圖4 UV等分法界面
圖5 UV等分法布點(diǎn)效果圖
2.1.3 截面法
等參截面法的用戶(hù)界面如圖6所示。首先根據(jù)引導(dǎo)曲線(xiàn)的幾何特征和截面參數(shù)構(gòu)建平面,然后用平面與測(cè)量面相交構(gòu)建截面曲線(xiàn),最后根據(jù)截面曲線(xiàn)的幾何特征和取點(diǎn)參數(shù)構(gòu)建測(cè)量點(diǎn)。通過(guò)改變引導(dǎo)線(xiàn)的方向可以改變截面的構(gòu)建順序,在分析時(shí)通過(guò)改變各條截面曲線(xiàn)的采點(diǎn)方向,調(diào)整測(cè)量點(diǎn)的構(gòu)建順序,保證測(cè)量的順序與構(gòu)建點(diǎn)的順序一致。布點(diǎn)效果如圖7所示。
圖6 截面法界面
圖7 截面法自動(dòng)布點(diǎn)效果圖
在利用等參用格法、UV等分法及截面法構(gòu)造測(cè)量點(diǎn)時(shí),為方便測(cè)量必須控制測(cè)量點(diǎn)的順序,可先根據(jù)截面線(xiàn)進(jìn)行分組然后按最近確定測(cè)量點(diǎn)順序[3]?,F(xiàn)以截面法為例說(shuō)明測(cè)量點(diǎn)順序的規(guī)劃。利用截面法在被測(cè)面曲面上構(gòu)造截面曲線(xiàn),如圖8所示,可人為確定第一條曲線(xiàn)的起始方向,然后程序自動(dòng)按最近原則距離確定后續(xù)截面曲線(xiàn)及方向,構(gòu)建的測(cè)量點(diǎn)的效果如圖9所示。
圖8 截面法構(gòu)建曲線(xiàn)的順序
圖9 測(cè)量點(diǎn)規(guī)劃效果圖
通過(guò)三維空間幾何變換,實(shí)現(xiàn)測(cè)量數(shù)據(jù)從原始坐標(biāo)系到測(cè)量坐標(biāo)系的轉(zhuǎn)換,并且輸出成XYZIJK格式。CMM在測(cè)量零件時(shí),需要對(duì)測(cè)尖給一個(gè)球頭半徑的補(bǔ)償,而補(bǔ)償方向是支撐面上在該點(diǎn)處的法向,因此確定測(cè)量點(diǎn)不僅需要給出坐標(biāo)值,還需要給出支撐面在該點(diǎn)處的單位法向量[4]。通常原始坐標(biāo)系統(tǒng)OXYZ和測(cè)量坐標(biāo)系統(tǒng)TUVW不是同一坐標(biāo)系,可以通過(guò)三維圖形轉(zhuǎn)換方法,將測(cè)量點(diǎn)在原始坐標(biāo)系統(tǒng)的位置通過(guò)基本變換矩陣轉(zhuǎn)換到測(cè)量坐標(biāo)系統(tǒng)下[5],通過(guò)計(jì)算得到以下公式:
式中:T1為平移變換的變換矩陣;T2為旋轉(zhuǎn)變換的變換矩陣;X,Y,Z是測(cè)量點(diǎn)在OXYZ坐標(biāo)系下的坐標(biāo)值,I,J,K是該點(diǎn)處單位法向量的分量;X',Y',Z'是測(cè)量點(diǎn)在TUVW坐標(biāo)系下的坐標(biāo)值,I',J',K'是該點(diǎn)處單位法向量的分量;UX,UY,UZ表示 U軸在OXYZ坐標(biāo)系下的各分量 (一個(gè)單位投影),可通過(guò)AxisSystem對(duì)象的GetXAxis方法獲得;VX,VY,VZ表示V軸在OXYZ坐標(biāo)系下的各分量 (一個(gè)單位投影),可通過(guò) AxisSystem對(duì)象的 GetYAxis方法獲得;WX,WY,WZ表示W(wǎng)軸在OXYZ坐標(biāo)系下的各分量 (一個(gè)單位投影),可通過(guò)AxisSystem對(duì)象的GetZAxis方法獲得;TX,TY,TZ表示T點(diǎn)在OXYZ坐標(biāo)系下的位置,可通過(guò)AxisSystem對(duì)象的GetOrigin方法獲得。
在CATIA下生成每個(gè)測(cè)量點(diǎn)數(shù)據(jù)必須經(jīng)歷以下幾步:首先必須選擇被測(cè)曲面,用AddNewProject方法構(gòu)造測(cè)量點(diǎn)到該支撐面的法向投影點(diǎn),用AddNewLineNormal方法構(gòu)造支撐面在測(cè)量點(diǎn)處的法向直線(xiàn),對(duì)投影各點(diǎn)用GetCoordinates方法獲取點(diǎn)坐標(biāo),對(duì)法向直線(xiàn)用GetDirection方法獲取單位向量,最后選取測(cè)量坐標(biāo)系,將點(diǎn)坐標(biāo)和單位向量從原始坐標(biāo)系轉(zhuǎn)換到測(cè)量坐標(biāo)系輸出。
本文基于CATIA V5提供的COM接口,用VC#進(jìn)行二次開(kāi)發(fā),提出并實(shí)現(xiàn)了三種自由曲面自動(dòng)布點(diǎn)方法,并輸出成可供CMM檢測(cè)直接使用的XYZIJK格式,該軟件有效地解決了CMM測(cè)量時(shí)曲面自動(dòng)采點(diǎn)問(wèn)題,滿(mǎn)足了實(shí)際測(cè)量的需要,具有一定的實(shí)際意義和推廣使用價(jià)值。
[1]胡挺,吳立軍.CATIA二次開(kāi)發(fā)技術(shù)基礎(chǔ) [M].北京:電子工業(yè)出版社,2006.
[2]周保珍,平雪良,龔玉玲,等.基于CAD模型的復(fù)雜曲面三坐標(biāo)自動(dòng)測(cè)量 [J].機(jī)床與液壓,2008,36(4):125-127.
[3]宋春剛,蘭詩(shī)濤,王文.自由曲面的接觸式測(cè)量路徑規(guī)劃方法研究 [J].機(jī)電工程,2003,20(5):3-5.
[4]鄒剛,王亞平,李永剛.三坐標(biāo)測(cè)量機(jī)測(cè)量路徑自動(dòng)生成的研究 [J].計(jì)測(cè)技術(shù),2004,24(3):6 -7,21.
[5]徐麗麗,白萬(wàn)民.接觸式測(cè)頭測(cè)量中測(cè)頭半徑補(bǔ)償?shù)难芯縖J].機(jī)械工程與自動(dòng)化,2006(6):61-62,66.