,
(大連理工大學(xué) 船舶工程學(xué)院,遼寧 大連 116024)
在三維參數(shù)化總布置設(shè)計(jì)中,需要引入大量的設(shè)備模型單元,進(jìn)行艙室及甲板的布置工作。在以往的二維總布置設(shè)計(jì)中,是將設(shè)備單元制成圖塊,然后以塊為單位插入對設(shè)備圖元的引用。這種設(shè)備圖元模型不僅不能根據(jù)不同的參數(shù)而得到相應(yīng)的定制性設(shè)備,而且欠缺有序的管理和維護(hù)機(jī)制?;诙S圖塊的設(shè)備模型單元,通常存儲(chǔ)在圖文件中,不同圖文件間,乃至不同建模工作站之間,都無法便捷地調(diào)用同一個(gè)設(shè)備模型庫,往往需要每次重新繪制,導(dǎo)致設(shè)備模型單元使用效率低、一致性差、更新困難。為了提高設(shè)計(jì)建模的效率與質(zhì)量,本文提出一種針對船舶三維總布置設(shè)計(jì)特點(diǎn)的三維參數(shù)化設(shè)備模型庫技術(shù),并開發(fā)了實(shí)現(xiàn)該技術(shù)的原型系統(tǒng)。
在通用的機(jī)械產(chǎn)品設(shè)計(jì)建模中,為提高建模效率,減少重復(fù)建模,引入了標(biāo)準(zhǔn)件庫的技術(shù),而船舶三維參數(shù)化設(shè)備模型庫的基本思想與此標(biāo)準(zhǔn)件庫類似,但將標(biāo)準(zhǔn)件概念拓展成普遍意義下的船載設(shè)備單元。船載設(shè)備單元模型自身的特殊性導(dǎo)致僅限于標(biāo)準(zhǔn)件庫的思想將無法滿足船舶設(shè)計(jì)建模的具體要求,因此船舶設(shè)備模型庫還需具備以下特點(diǎn)。
1)設(shè)備模型庫應(yīng)能直觀地描述設(shè)備模型的形狀參數(shù)。由于設(shè)備模型比標(biāo)準(zhǔn)件模型要復(fù)雜得多,故其描述參數(shù)要比標(biāo)準(zhǔn)件多,且尺寸命名沒有統(tǒng)一的規(guī)則,這就要求設(shè)備庫能直觀地描述出設(shè)備模型中各幾何元素由哪些參數(shù)控制,便于用戶定制使用。故需在設(shè)備模型庫中引用工程圖示標(biāo)明各幾何元素的控制參數(shù),使用戶準(zhǔn)確了解此設(shè)備模型各定義參數(shù)的意義。
2)設(shè)備模型應(yīng)具有良好的可擴(kuò)展性及更新性。同一類設(shè)備的型號較多,且不像標(biāo)準(zhǔn)件那樣型號尺寸有系列標(biāo)準(zhǔn),甚至在船舶的布置當(dāng)中經(jīng)常會(huì)遇到根據(jù)實(shí)際需求訂做的設(shè)備。故在使用設(shè)備庫添加設(shè)備的時(shí)候,遇到在設(shè)備庫中沒有所需設(shè)備型號的情況要遠(yuǎn)多于標(biāo)準(zhǔn)件庫。所以設(shè)備模型庫應(yīng)具有更好的可擴(kuò)展性及更新性,即設(shè)計(jì)者能夠在設(shè)計(jì)中方便地向設(shè)備庫中添加新型號的設(shè)備模型,也可添加新設(shè)備類型。且添加完就可立即引用該型號的設(shè)備模型。而CATIA自帶的標(biāo)準(zhǔn)庫不能根據(jù)設(shè)計(jì)需求方便地添加新的設(shè)備,并實(shí)時(shí)使用。
3)設(shè)備庫應(yīng)存儲(chǔ)管理設(shè)備模型的被引用記錄。設(shè)計(jì)完成后根據(jù)設(shè)備的引用記錄,可以方便地統(tǒng)計(jì)出該船的設(shè)備列表。此外更重要的是通過此方法,可以以組為單位更改設(shè)備模型的尺寸大小,即若要更改多個(gè)同型號的設(shè)備模型的參數(shù),只要在引用的時(shí)候?qū)⑵浞诺揭粋€(gè)組中,更改其中任何一個(gè)模型的參數(shù),其它模型也會(huì)自動(dòng)更改,而通過CATIA標(biāo)準(zhǔn)件庫插入的構(gòu)件之間是相互獨(dú)立的,無法實(shí)現(xiàn)聯(lián)動(dòng)修改。
4)設(shè)備模型單元附屬信息的管理和使用。參數(shù)化設(shè)備庫可存儲(chǔ)船載設(shè)備的物理屬性、重量、重心、材料、供貨方、制作廠家等相關(guān)信息,方便用戶在使用設(shè)備模型時(shí)查看。
CATIA V5具有強(qiáng)大的知識(shí)工程和參數(shù)化建模的功能,其雖允許用戶建立和使用標(biāo)準(zhǔn)件庫,但是其更新性差,模型數(shù)據(jù)容易產(chǎn)生冗余,操作較為復(fù)雜,而且標(biāo)準(zhǔn)件庫格式為CATIA自定義的專用格式,通用性較差。除此以外也不能針對設(shè)備庫特點(diǎn)而創(chuàng)建更適合設(shè)備模型存儲(chǔ)及引用的設(shè)備模型庫。
目前常用的數(shù)據(jù)庫有Access、SQL Server、Oracle等,本文采用SQL Server數(shù)據(jù)庫。該數(shù)據(jù)庫在處理海量數(shù)據(jù)的效率,后臺(tái)開發(fā)的靈活性,可擴(kuò)展性等方面比較強(qiáng)大。SQL Server還有更多的擴(kuò)展,可以用存儲(chǔ)過程,數(shù)據(jù)庫大小無極限限制,可存儲(chǔ)大量的數(shù)據(jù),使得模型數(shù)據(jù)庫資源得到很好地共享,且可對模型數(shù)據(jù)庫進(jìn)行不斷擴(kuò)充。
采用VB.NET對CAITA進(jìn)行二次開發(fā),利用SQL Server數(shù)據(jù)庫來存儲(chǔ)參數(shù)化模型、設(shè)計(jì)參數(shù)表、尺寸示意圖等相關(guān)文件。應(yīng)用VB.NET開發(fā)了三維參數(shù)化設(shè)備模型庫原型系統(tǒng),實(shí)現(xiàn)對設(shè)備模型的查看、添加及修改并最終可將設(shè)備模型按用戶設(shè)定的設(shè)備參數(shù)插入到用戶所選定的產(chǎn)品目錄(product)下。CATIA的參數(shù)化設(shè)備庫系統(tǒng)流程見圖 1。
圖1 設(shè)備庫系統(tǒng)流程
在建立構(gòu)件庫之前,首先需要?jiǎng)?chuàng)建設(shè)備的三維參數(shù)化模型,CATIA提供了參數(shù)化建模的功能。所謂參數(shù)化建模,即利用參數(shù)控制模型的幾何尺寸,從而達(dá)到控制幾何模型的目的。在進(jìn)行實(shí)體建模的過程中要根據(jù)實(shí)體的外形尺寸(長度、寬度、高度等)選擇適當(dāng)?shù)膮?shù)變量[1]。
同時(shí),CATIA中的設(shè)計(jì)參數(shù)表提供了一種創(chuàng)建和管理部件族模型的方法和工具,部件族一般是指結(jié)構(gòu)相似而參數(shù)值不同的一系列部件。而同一類設(shè)備的不同型號間的區(qū)別可能僅僅在于它們的結(jié)構(gòu)參數(shù)值不同。通過建立匹配關(guān)系,由用戶指定CATIA文檔參數(shù)與設(shè)計(jì)表的欄目之間的關(guān)系,應(yīng)用設(shè)計(jì)表可以通過外部變量驅(qū)動(dòng)CATIA中設(shè)備模型的參數(shù)。設(shè)計(jì)表中,可以針對該設(shè)備模型有盡可能多的參數(shù)配置行。設(shè)計(jì)表中相關(guān)參數(shù)組的一組值稱為一個(gè)配置(configuration),以行的形式存儲(chǔ)[2]。
以創(chuàng)建系纜樁參數(shù)化設(shè)備模型為例,首先創(chuàng)建出系纜樁的幾何模型,再用Formula功能創(chuàng)建參數(shù)[3],如系纜樁直徑D,系纜樁兩柱間距A,系纜樁高度H1等。然后通過公式把這些參數(shù)與系纜樁幾何模型中相應(yīng)的特征創(chuàng)建對應(yīng)關(guān)系。
圖2為參數(shù)化的系纜樁模型, 圖中公式即為參數(shù)和幾何特征的對應(yīng)關(guān)系。此時(shí),若要對模型進(jìn)行修改,只需修改參數(shù)的數(shù)值,模型的對應(yīng)尺寸就會(huì)做相應(yīng)的更改。因此在參數(shù)化設(shè)備模型的基礎(chǔ)上,用戶可以通過修改參數(shù)的方法得到該設(shè)備各種型號的模型。為有序管理設(shè)備的型號,可將系纜樁不同型號的參數(shù)存儲(chǔ)在設(shè)計(jì)參數(shù)表中,如圖 3為程序中系纜樁設(shè)備的設(shè)計(jì)表界面。表中第一行為參數(shù)變量的定義。其每一行的一組參數(shù)代表該設(shè)備的一個(gè)型號。
設(shè)計(jì)表共有三種工作模式:加載時(shí)自動(dòng)同步;加載時(shí)交互同步;手動(dòng)同步。本文應(yīng)用第一種工作模式,加載時(shí)自動(dòng)同步,即當(dāng)加載一個(gè)包含用戶創(chuàng)建的設(shè)計(jì)表的模型時(shí),若設(shè)計(jì)表文件被修改,并且模型中包含外部文件的數(shù)據(jù),設(shè)計(jì)表將自動(dòng)同步,模型的相關(guān)參數(shù)也會(huì)隨之修改。因此,可以通過對設(shè)計(jì)參數(shù)表參數(shù)的修改實(shí)現(xiàn)對CATIA中相應(yīng)設(shè)備模型參數(shù)的修改。
CATIA可以作為一個(gè)OLE自動(dòng)化服務(wù)器,外部程序通過COM接口即可訪問CATIA內(nèi)部對象。用VB.NET引用CATIA的類庫對象即可通過程序?qū)ATIA進(jìn)行相關(guān)操作[4]。以插入系纜樁設(shè)備模型為例簡要介紹三維設(shè)備庫的使用流程。
用戶通打開 “三維參數(shù)化船舶設(shè)備庫”程序界面,程序?qū)⒆詣?dòng)連接到SQL數(shù)據(jù)庫讀取數(shù)據(jù)庫中所存儲(chǔ)的設(shè)備模型并顯示在程序界面中。
圖2 參數(shù)化系纜樁模型
圖3 系纜樁設(shè)備的設(shè)計(jì)表界面
若“設(shè)備列表”中有符合要求的設(shè)備型號,可通過程序右上角的“插入設(shè)備”功能導(dǎo)入新的設(shè)備模型,此處需選擇所要上傳的CATIA模型文件、該模型對應(yīng)的設(shè)計(jì)參數(shù)表以及模型尺寸示意圖。單擊“文件導(dǎo)入”即可將該設(shè)備模型導(dǎo)入SQL數(shù)據(jù)庫中。此時(shí)我們通過單擊“設(shè)備列表”中的該設(shè)備名稱,可查看其詳細(xì)信息,同時(shí)程序?qū)?yīng)設(shè)備的CATIA模型文件、設(shè)計(jì)參數(shù)表、幾何參數(shù)示意圖從數(shù)據(jù)庫中讀取至本地計(jì)算機(jī)工作目錄中。
若“設(shè)備詳細(xì)尺寸參數(shù)”中沒有所需插入的系纜樁的型號,用戶可單擊“添加”銨鈕為系纜樁添加一個(gè)新的設(shè)備型號。單擊“提交更改至數(shù)據(jù)庫”銨鈕,可將已經(jīng)修改的系纜樁模型的設(shè)計(jì)參數(shù)表存儲(chǔ)到數(shù)據(jù)庫中。
用戶點(diǎn)擊“插入設(shè)備”銨鈕,程序?qū)⒆詣?dòng)跳轉(zhuǎn)到當(dāng)前正在編輯的CATIA文檔中,讓用戶選擇插入該設(shè)備的位置(通常將設(shè)備插入到Product下),選擇“完成”后,程序?qū)凑諗?shù)據(jù)表中所選的參數(shù)插入設(shè)備,例如若選擇第二行配置,則插入配置為configuration=2的系纜樁設(shè)備模型。
該模塊還提供了按組插入設(shè)備模型的功能,插入設(shè)備模型時(shí)可將多個(gè)同樣的模型納入一個(gè)分組,修改模型時(shí)則可以組為單位進(jìn)行修改,不必一一對設(shè)備模型的尺寸進(jìn)行修改,大大提高了修改的效率。因?yàn)樵趹?yīng)用CATIA裝配功能的時(shí)候,“插入現(xiàn)有組件”是對現(xiàn)有Part文件的引用,可多次插入同一個(gè)組件,其都是對一個(gè)Part文件的引用,是對該P(yáng)art文件的多次實(shí)例化[5]。例如船舶甲板上有4個(gè)系纜樁的尺寸相同,若在插入這4個(gè)系纜樁的時(shí)候選擇了“成組引用”,則這4個(gè)系纜樁則引用同一個(gè)Part文件,因此若要修改這4個(gè)系纜樁尺寸的時(shí)候,只需要修改其中的一個(gè)即可,其它3個(gè)也會(huì)自動(dòng)做相應(yīng)的修改。若按默認(rèn)選項(xiàng)“單獨(dú)引用”則4個(gè)系纜樁分別引用4個(gè)Part文件,修改其中的任意一個(gè)系纜樁的參數(shù),不會(huì)對其他3個(gè)系纜樁的尺寸產(chǎn)生影響。
三維參數(shù)化設(shè)備庫的開發(fā)研究解決了船舶三維總布置設(shè)計(jì)中大量設(shè)備的快速、準(zhǔn)確查詢與使用,克服了傳統(tǒng)二維總布置設(shè)計(jì)中,設(shè)備模型通用性差,數(shù)據(jù)冗余,無法共享等問題,并可通過網(wǎng)絡(luò)使設(shè)備庫資源得到最大限度的共享,大大提高了三維船舶總布置設(shè)計(jì)的效率。
[1] 胡國強(qiáng),賈 輝.基于CATIA V5的三維標(biāo)準(zhǔn)件庫的創(chuàng)建與使用[J].輕型汽車技術(shù),2010(10):34-37.
[2] 王智明,楊 旭,平海濤.知識(shí)工程及專家系統(tǒng)[M].北京:化學(xué)工業(yè)出版社,2006.
[3] 劉 冰,魯墨武.基于CATIA的三維標(biāo)準(zhǔn)件庫開發(fā)[J].沈陽航空工業(yè)學(xué)院學(xué)報(bào),2005(10):30-32.
[4] 胡 挺,吳立軍.CATIA二次開發(fā)技術(shù)基礎(chǔ)[M].北京:電子工業(yè)出版社,2006.
[5] 上海江達(dá)科技發(fā)展有限公司,CATIA V5基礎(chǔ)教程[M].北京:機(jī)械工業(yè)出版社,2008.