(大連中遠(yuǎn)船務(wù)工程有限公司,遼寧大連 116113)
隨著科學(xué)技術(shù)的發(fā)展,計(jì)算機(jī)輔助設(shè)計(jì)得到了迅速發(fā)展和廣泛普及,目前為止絕大部分船舶設(shè)計(jì)都會采用三維輔助設(shè)計(jì)軟件。計(jì)算機(jī)輔助設(shè)計(jì)最早是將設(shè)計(jì)人員的工作環(huán)境從圖板上移到計(jì)算機(jī)上以提高他們的制圖效率和質(zhì)量,而現(xiàn)階段三維輔助設(shè)計(jì)已經(jīng)廣泛應(yīng)用于各個船廠,用于顯示的外圍設(shè)備也不僅僅局限于顯示器,新的顯示設(shè)備包括數(shù)據(jù)頭盔和三維立體屏幕。所有的改進(jìn)都旨在服務(wù)于設(shè)計(jì)工程師,減少他們在設(shè)計(jì)工作中的簡單重復(fù)勞動,幫助他們把頭腦中產(chǎn)生的設(shè)計(jì)形象迅速、準(zhǔn)確、真實(shí)地在計(jì)算機(jī)反映出來,使其將注意力集中于富有創(chuàng)造性的設(shè)計(jì)活動中,從而提高設(shè)計(jì)的效率和質(zhì)量[1]。
AVEVA Marine軟件(簡稱AM)是將Tribon M3軟件和PDMS軟件融合為一個海事工業(yè)軟件。AM充分吸收了兩款軟件的優(yōu)點(diǎn),軟件發(fā)布近10年都在不斷地融合和更新。AM具有解決復(fù)雜工程設(shè)計(jì)和管理的能力,可提高工程項(xiàng)目設(shè)計(jì)效率和數(shù)據(jù)質(zhì)量、增強(qiáng)數(shù)據(jù)安全性、改進(jìn)項(xiàng)目業(yè)務(wù)協(xié)調(diào)的效率等特征。為了滿足客戶化需求,AM提供了強(qiáng)大的二次開發(fā)功能,用戶可以根據(jù)實(shí)際情況選擇適合自己的開發(fā)語言。
AM提供了多種客戶化的開發(fā)工具,主要有PML和.NET兩種手段,除此之外還提供了 C++和 Fortran訪問數(shù)據(jù)庫的方法,這兩種方法只能讀取屬于 PDMS的屬性,對于船體部分只能讀取少部分屬性,因此本文主要使用PML和.NET進(jìn)行二次開發(fā)。
PML是AVEVA提供的程序宏語言,可以通過記事本或者文本編輯器來編輯,AVEVA官網(wǎng)上提供了可視化編輯器AVEVA PML Studio,但目前還無法使用。PML語言相對簡單、容易上手,是一種接近面向?qū)ο蟮恼Z言,除了繼承以外,它提供了面向?qū)ο蟮拇蟛糠止δ埽峁┝藘?nèi)置的、系統(tǒng)自定義的和用戶定義的對象類型,其中對象都有自己的變量和自己的方法[2]。
AM引入了Microsoft .NET技術(shù),.NET API提供了對AM的許多方面的訪問,包括圖形用戶界面、數(shù)據(jù)庫和幾何模型。AM提供了通用程序框架接口、數(shù)據(jù)庫接口、幾何模型接口、pdms共享接口、公用接口和圖形操作接口,有了這些接口就可以訪問AM的數(shù)據(jù)庫,并對其進(jìn)行操作[3]。.NET開發(fā)對于二維圖紙操作更加便捷靈活,因此主要用于圖紙操作,對于早期版本Tribon的數(shù)據(jù)抽取也可以用.NET來實(shí)現(xiàn)[4]。
PML語言也可以對數(shù)據(jù)庫進(jìn)行訪問,但主要是提供了與AM三維模型交互的方法,例如點(diǎn)選模型或者拾取模型點(diǎn);.NET更側(cè)重于二維圖紙操作,沒有提供操作三維模型的接口,這就決定了不能用一種語言實(shí)現(xiàn)拾取三維模型,并抽取三維模型數(shù)據(jù),.NET二次開發(fā)功能的引入使其可以與現(xiàn)有的基于PML的二次開發(fā)一起使用。通過使用PML.NET,可以實(shí)現(xiàn)PML的增強(qiáng)功能,允許PML程序調(diào)用.NET代碼,利用.NET編譯代碼和PML的優(yōu)勢進(jìn)行定制。因此,需要三維交互時(shí)使用PML;涉及到一些復(fù)雜的算法或者是抽取船體數(shù)據(jù)時(shí)用.NET[5-10]。
為了保障船上人員的生命和財(cái)產(chǎn)安全,SOLAS公約已經(jīng)明確了各個防火等級的要求,艙室絕緣可以有效地阻止、控制火災(zāi)和火勢的蔓延,還可以起到隔音、隔振、防結(jié)露和保溫的作用。用于艙室的絕緣材料主要有巖棉和陶瓷棉,在隔熱、隔音區(qū)域選擇巖棉,在A-60等級處選用陶瓷棉。艙室鋼圍壁上的絕緣和水平方向的甲板敷料將艙室單獨(dú)分隔出來,火災(zāi)發(fā)生時(shí)在一定時(shí)間內(nèi)可以有效防止火勢的蔓延。
三維設(shè)計(jì)可以讓設(shè)計(jì)更直觀,方便不同專業(yè)之間協(xié)同工作。因?yàn)榫幼^(qū)艙室都有防火要求,都需要敷設(shè)絕緣,以往的設(shè)計(jì)由于工作量大,很少進(jìn)行絕緣的三維建模,導(dǎo)致管路布置、設(shè)備安放和電纜拉放等工作沒有考慮絕緣占據(jù)的位置,現(xiàn)場安裝時(shí)發(fā)生閥門無法打開或者設(shè)備無法安裝等問題,從而引起了一系列的修改。如果在前期建模時(shí)將絕緣建模,一些干涉問題在建模階段提前發(fā)現(xiàn),就會避免上述問題的發(fā)生,減少不必要的損失。所以在三維建模階段建立絕緣模型不僅能夠提高生產(chǎn)的準(zhǔn)確性,也可以提高材料預(yù)估的準(zhǔn)確性。
艙室的絕緣模型主要包括平面絕緣、曲面絕緣和型材上的絕緣。以往的絕緣建模是通過PANEL建立的,在整個鋼圍壁上建立一整塊絕緣,沒有按照實(shí)際工程尺寸進(jìn)行建模,因此無法統(tǒng)計(jì)材料用量。型材的絕緣需要先知道型材的尺寸,然后通過參數(shù)化建立型材的絕緣,由于一個板架上有許多型材,因此建模工作量大。絕緣自動建模是為了能夠快速建立模型,平面上的絕緣只要按照給定的尺寸就可以實(shí)現(xiàn)。型材的尺寸可以通過數(shù)據(jù)抽取得到,通過抽取到的數(shù)據(jù)可以實(shí)現(xiàn)型材的自動建模。
自動建模的思路是通過順時(shí)針選取船體平面的四個點(diǎn),由這四個點(diǎn)形成一個平面,將這四個點(diǎn)與平面法線方向形成 BOX。然后在BOX內(nèi)搜索型材,對于搜索到的型材通過Data Extraction接口抽取型材尺寸,判斷面板朝向,最終建立平面和型材的絕緣。創(chuàng)建絕緣流程如圖1所示。
在搜索型材時(shí),會搜索到所有與BOX有交集的型材,只有型材的起點(diǎn)和終點(diǎn)都在BOX內(nèi)的才是目標(biāo)對象,需對這些型材進(jìn)行絕緣布置。對于型材而言,有POSS和POSE兩個屬性可以提取型材的開始點(diǎn)和結(jié)束點(diǎn),但在實(shí)際工程中這兩個屬性為空,無法得到開始點(diǎn)和終點(diǎn),因此采取模型抽取的方法得到型材的開始點(diǎn)和結(jié)束點(diǎn)。AM 船體模型數(shù)據(jù)的抽取依然延續(xù)了Tribon的模式,只有部分屬性數(shù)據(jù)與PDMS一致,因此還是通過船體數(shù)據(jù)抽取的方法 Data Extraction來抽取型材的位置。Data Extraction按照給定的語法規(guī)則來抽取數(shù)據(jù),所要抽取的數(shù)據(jù)由模型對象類型、模型名字和模型屬性組合而成,用分隔符“.”來確定層級關(guān)系。型材的位置坐標(biāo)用以下語法抽取數(shù)據(jù):HULL.PANEL(s).STIFFENER(i).END(i).POI,其中PANEL是型材所在板架名,STIFFENER是型材的序號,END是型材的兩個端點(diǎn)。通過數(shù)據(jù)抽取的方法得到的是型材二維平面坐標(biāo),需要轉(zhuǎn)換成三維坐標(biāo)后才能使用。在AM中每個部件都有CSGBOX的屬性,通過DbElement的GetDoubleArray方法得到CSGBOX的屬性值,該方法得到一個長度為 6的數(shù)組,前三位和后三位分別是BOX的對角點(diǎn)坐標(biāo),再將對角點(diǎn)坐標(biāo)與之前抽取的二維坐標(biāo)進(jìn)行判斷可以計(jì)算出型材的三維坐標(biāo)和型材面板的朝向,然后進(jìn)行型材絕緣的創(chuàng)建。
圖1 創(chuàng)建絕緣流程
圖2所示是創(chuàng)建絕緣的界面,該界面用PML語言編寫,程序中定義了每塊平面絕緣和型材絕緣的尺寸,設(shè)計(jì)人員可以根據(jù)實(shí)際情況進(jìn)行修改。型材絕緣有兩種形式,一種是 n字形,另一種是幾字形,根據(jù)需求選擇型材的絕緣形式。點(diǎn)擊選擇平面點(diǎn)圖標(biāo)可以與三維模型交互,平面點(diǎn)選擇完成后點(diǎn)擊 OK按鈕就會按照指定的區(qū)域建立平面絕緣和型材絕緣,建模效果如圖3所示。
圖2 絕緣建模
圖3 建模效果
根據(jù)絕緣數(shù)量的統(tǒng)計(jì)向絕緣廠家進(jìn)行訂貨,統(tǒng)計(jì)的準(zhǔn)確性直接影響了整個船舶的造價(jià)。以往在CAD上進(jìn)行統(tǒng)計(jì)的方法不夠直觀,預(yù)估量不夠準(zhǔn)確,往往需要給出 30%的余量,這就造成了不必要的損失。通過三維建模后的絕緣模型能給出較為準(zhǔn)確的數(shù)量,通過程序直接將絕緣安裝分類進(jìn)行統(tǒng)計(jì),包括數(shù)量和面積。圖4所示對已經(jīng)建立的絕緣模型進(jìn)行數(shù)量統(tǒng)計(jì),并求取面積。
綜上所述,AM為客戶化開發(fā)提供了豐富的接口,使得用戶能夠根據(jù)自身需求開發(fā)所需功能。艙室絕緣布置的開發(fā)能夠幫助設(shè)計(jì)人員快速準(zhǔn)確地建立絕緣模型,并為絕緣訂貨提供依據(jù)。目前的開發(fā)還有缺陷,沒有考慮門窗開孔位置絕緣的處理,后續(xù)會進(jìn)一步完善使絕緣布置更加準(zhǔn)確。
圖4 統(tǒng)計(jì)結(jié)果
[1] 欒豐一, 陳佳名, 潘秋艷.AM 軟件功能研究及實(shí)船設(shè)計(jì)應(yīng)用[C]//CAD/CAM學(xué)術(shù)交流會議.2011.
[2] 姚競爭.TRIBON模型的數(shù)據(jù)抽取及二次開發(fā)[D].哈爾濱: 哈爾濱工程大學(xué), 2006.
[3] 肖貴英.TRIBON與CATIA船體模型交互技術(shù)研究[D].哈爾濱: 哈爾濱工程大學(xué), 2009.
[4] 李慧蕾.TRIBON模型的數(shù)據(jù)提取方法及艦船規(guī)范測試應(yīng)用研究[D].江蘇鎮(zhèn)江: 江蘇科技大學(xué),2012.
[5] 朱胤逵.基于 TRIBON多平臺數(shù)據(jù)交換技術(shù)研究[D].遼寧大連: 大連理工大學(xué), 2015.
[6] 徐輝.TRIBON與 CATIA船體數(shù)據(jù)交換研究[D].哈爾濱: 哈爾濱工程大學(xué), 2008.
[7] SON M J, KANG H, KIM T W.AVEVA Marine Scheme-based Modeling for Reuse of Ship Hull Block Model[J].CAD/CAM, 2014, 19(1).
[8] 韓韡.TRIBON與CATIA間船體模型數(shù)據(jù)交換技術(shù)研究[D].上海: 上海交通大學(xué), 2013.
[9] 胡可一.數(shù)字化技術(shù)在造船業(yè)中的應(yīng)用[J].上海造船, 2011(1): 31-36.
[10] 胡懷建, 林偉, 鐘克焱, 等.淺談型材二次開發(fā)自動套料研究和應(yīng)用[J].船舶標(biāo)準(zhǔn)化工程師, 2016,49(6): 22-24.