林輝 許鋒
摘 要:在起落架設(shè)計與分析過程中,設(shè)計人員通常需要以手動的方式建立起落架的CATIA模型,建模過程增加了設(shè)計人員的工作量。文章首先確定起落架的簡化模型及其零件組成,隨后選用自動化對象編程的方法對CATIA進行二次開發(fā),將基本操作代碼與宏腳本文件代碼相結(jié)合,得到各零件的參數(shù)化建模代碼,開發(fā)出起落架快速建模軟件,最終實現(xiàn)對起落架各零件的參數(shù)化設(shè)計與快速建模功能。借助該軟件,能夠提高建模效率,縮短建模時間。
關(guān)鍵詞:CATIA;二次開發(fā);起落架;快速建模
引言
在完成初步的起落架設(shè)計工作之后,需要對起落架進行諸如著陸性能分析、擺震性能分析等一系列計算分析工作,通常情況下在此類分析計算工作之前,需要設(shè)計人員首先建立起落架的CATIA模型,手動建模的過程耗費了設(shè)計人員一定的時間與精力。若能在保證所獲取的模型滿足計算分析需求的前提之下,將這一建模過程簡化,便可在一定程度上減少設(shè)計人員的實際工作量,提高設(shè)計效率。
1 CATIA的二次開發(fā)方式與選用
CATIA V5是Dassualt Systems公司與IBM公司合作共同推出的CAD/CAE/CAM一體化軟件,是目前應(yīng)用范圍最廣、影響最大的CAD軟件。CATIA具有超群的功能、人性化的界面、智能型的功能操作和極為全面的組合分析功能,其優(yōu)異的性能使得CATIA在航空航天業(yè)內(nèi)的也得到了極為廣泛的應(yīng)用。隨著用戶對CATIA軟件功能和性能要求的不斷提高,對與軟件個性化服務(wù)的要求也日益凸顯。作為實現(xiàn)軟件的專業(yè)化和用戶化的有效手段,二次開發(fā)能夠為用戶提供更好、更個性化的服務(wù),能夠有效地提高工作效率和工作質(zhì)量。CATIA二次開發(fā)主要有以下兩種方法: (1)通過開放的基于構(gòu)建的應(yīng)用編程接口,使用組件應(yīng)用架構(gòu)開發(fā)環(huán)境CAA-RADE對CATIA進行二次開發(fā);(2) 采用自動化對象編程對CATIA進行二次開發(fā)。CATIA軟件提供了Automation API用于VBScript對CATIA軟件的二次開發(fā), Automation API本身便具備與任何OLE所兼容的平臺通信的能力??紤]到針對起落架部件的設(shè)計需求,本文以Visual Basic 6.0 為編程工具,使用自動化對象編程對CATIA進行二次開發(fā)[1]。
2 簡化模型
起落架結(jié)構(gòu)較為復(fù)雜,所構(gòu)成的部件也較多,通常情形下在不影響仿真分析的前提之下,均需對起落架模型進行一定程度的簡化[2]。本文略去收放機構(gòu)、剎車機構(gòu)以及一些附屬部件與連接部件,最終簡化后的模型概述如下:支柱起落架簡化為七個零件,分別為緩沖支柱上部、緩沖支柱中部、緩沖支柱下部(含輪叉)、扭力臂、固定銷、輪轂、輪胎;搖臂式起落架簡化為七個零件,分別為緩沖支柱上部、緩沖支柱中部、緩沖支柱下部、搖臂、固定銷、輪轂、輪胎;其中緩沖支柱中部僅在起落架裝備雙腔油氣式緩沖器時使用。
3 軟件結(jié)構(gòu)與簡化模型總覽模塊
起落架快速建模軟件主要由模型總覽模塊與零件設(shè)計與建模模塊兩部分構(gòu)成,其結(jié)構(gòu)如圖1所示。
系統(tǒng)分別為支柱式起落架、搖臂式起落架提供各自的簡化模型總覽模塊,分別如圖2所示。在簡化模型總覽模塊中,提供給用戶各零件的模型圖以及設(shè)計與建模模塊的快速鏈接,用戶可直接調(diào)用進入相應(yīng)零件的設(shè)計與建模模塊。
4 零件設(shè)計與建模模塊
4.1 環(huán)境設(shè)置
在VB的工程引用選擇框中選定所有涉及CATIA軟件的類庫聲明;對于多個不同的CATIA版本共存的情況,需要設(shè)置程序自動調(diào)用相應(yīng)版本的CATIA:開啟命令行窗口,轉(zhuǎn)到默認的CATIA版本目錄,其中Bx為CATIA的版本號,輸入cnext/unregserve,再轉(zhuǎn)至所需版本的CATIA版本安裝目錄中,輸入cnext/regserve[3];對于CATIA軟件,還需要將語言設(shè)置為英語。設(shè)置完成后,VB連接至CATIA的環(huán)境設(shè)置工作便全部結(jié)束。
4.2 模塊開發(fā)
4.2.1 連接與啟動CATIA代碼
Dim CATIA As Object
On Error Resume Next
Set CATIA=GetObject(,"CATIA.Application")
If Err.Number<>0 Then
Set CATIA=CrectObject("CATIA.Application")
CATIA.Visible=True
End If
On Error GoTo 0
4.2.2 操作代碼
建模操作代碼是以基本的操作代碼和手動建模的操作代碼記錄為基礎(chǔ),經(jīng)分析、調(diào)整、綜合、調(diào)試之后獲得[4]。對于操作記錄代碼,首先在CATIA內(nèi)通過對所有的零件進行手動建模,通過宏腳本文件來獲取操作記錄代碼,隨后再對記錄代碼進行深入分析并做出如下修改:剔除不必要的冗余代碼,得到程序執(zhí)行的核心代碼;若有對象變量在宏腳本代碼中使用了以數(shù)組為參數(shù)的函數(shù),則需要注釋掉這一對象變量的類型聲明;分析并分段拆解代碼,將特征變量的代碼提取出來并加以標(biāo)示;修改變量的形式以使其更加簡潔明了;根據(jù)程序需要對核心代碼進行修改調(diào)整。完成以上功能工作之后,再將所獲得代碼與基本操作代碼進行分析、調(diào)整、綜合、調(diào)試[5]。
4.3功能實現(xiàn)
支柱式起落架、搖臂式起落架各零件的設(shè)計與建模模塊,分別如圖4、圖5所示。起落架各零件的設(shè)計與建模模塊為用戶提供零件的設(shè)計視圖展示與設(shè)計數(shù)據(jù)輸入功能,用戶可參照模型的視圖自行輸入并調(diào)整相關(guān)的設(shè)計尺寸;點擊模型生成按鈕后,系統(tǒng)調(diào)用CATIA軟件并自動生成依據(jù)相應(yīng)的設(shè)計尺寸而得到的零件模型,完成模型的初步獲取,用戶可在CATIA軟件內(nèi)對模型做進一步的調(diào)整,以獲取最終符合設(shè)計預(yù)期的零件模型。
5 結(jié)束語
起落架快速建模軟件分為模型總覽模塊與零件的設(shè)計與建模模塊兩部分,本文確定了起落架的簡化模型及其零件組成,分析了CATIA二次開發(fā)的不同方法及其特點,選用自動化對象編程的方法對CATIA進行了二次開發(fā),得到了各零件的參數(shù)化建模代碼,完成了模型總覽模塊與零件設(shè)計與建模模塊的界面設(shè)計,開發(fā)出起落架快速建模軟件,最終實現(xiàn)了對起落架各零件模型的參數(shù)化設(shè)計與快速建模功能。
參考文獻
[1]董伊鑫,席平.基于CATIA的界面二次開發(fā)[J].航空制造技術(shù),2006,(12):83-86.
[2]《飛機設(shè)計手冊》總編委會編.飛機著陸系統(tǒng)設(shè)計[M].北京:航空工業(yè)出版社,2002.
[3]胡挺,吳立軍.CATIA二次開發(fā)技術(shù)基礎(chǔ)[M].電子工業(yè)出版社,2006.
[4]胡添元,余雄慶.基于CATIA二次開發(fā)的飛翼外形參數(shù)化建模.飛機設(shè)計,2007,27(6):10-13.
[5]孟令濤,劉莉,龍騰,謝倫旭.基于CATIA的參數(shù)化機翼模型在CFD中的應(yīng)用.彈箭與制導(dǎo)學(xué)報,2008,28(5):161-164.
作者簡介:林輝(1989.1-),男(漢族),山東日照,碩士研究生,主要研究方向:飛行器結(jié)構(gòu)設(shè)計