AM中使用PML語言標註船體結構

摘要:

Aveva Marine是Aveva公司收購Tribon公司之後,整合了M3和PDMS兩大模塊。現在AM解決方案在船舶和海洋工程行業應用日趨成熟,這得益於M3在船體結構方面的成熟市場,和PDMS在舾裝管系方面的強大。

 

1.前言

    M3在船舶生產設計中已經被普遍使用,並且得到行業中的一致認可。由於M3是基於歐洲的造船工藝開發,在國內十幾年的引進使用中,也進行了大量的二次開發。M3的二次開發主要基於Vitesse接口,一種基於Python語言的腳本程序。PDMS原先應用於虛擬工廠,石油管道佈置等行業。對於這些行業PDMS有一套成熟的解決方案。PDMS內部提供了PML一種宏語言,來爲客戶提供二次開發的接口。

由於M3是被PDMS廠商進行收購,組合形成了AvevaMarine。在多年的使用軟件和軟件更新中,發現Aveva公司努力把M3中的數據結構,轉變到PDMS的體系結構中。爲了更好的使用和拓展AM軟件,所以,作爲船體設計者很有必要對新的數據變化進行研究。

2.PML語言

    PML語言是Aveva公司自己開發的一種宏語言。目前,新的語言版本是 PML2,是一種面向對象的語言。相比其他語言PML有如下優勢

優勢1:語言是腳本語言,可以用記事本直接編寫。而且不用編譯,可以做到邊編寫,邊調試。

優勢2:PML語言具有很強的訪問數據結構的能力,只需簡單的一句話,就能獲得需要得到的數據。

優勢3:PML2是一種面向對象的語言,能夠直接調用.net開發的接口函數。大大增強了PML的能力

3.船體結構標註

    船體結構主要有板厚,筋,肘板等,對這些結構進行進行名稱,材質,規格等信息標註是船體生產設計的主要工作內容。M3對標註提供接口有ConfigNote.py和Drafting中的note_new。這兩個接口函數可調整的範圍比較小,出來的結果也遠不能滿足設計上面的要求。其中ConfigNote.py本身就存在錯誤的接口,導致很多功能都無法實現。在實際設計中,也被用的比較少。我見過的很多開發標註程序,基本都是在圖面繪製文字和線型。雖然能夠滿足出圖要求,但是,標註信息與模型關聯度不夠。總覺得還差那麼一點點。

4.利用PML對船體結構進行標註

4.1   PDMS中的GLAB和SLAB節點

    節點Element在PDMS是一種帶屬性的數據結構。這些結構通過Explorer瀏覽器進行瀏覽。M3雖然也有節點的概念,但是是底層的數據結構存儲模式,並不對設計員和開發者開放。而PDMS卻是完全開放的。

GLAB和船體中的Note類似,是一種單行的標註方式,可以通過設置BTEXT屬性值,匹配船體模型中的信息。如#FLNM() 顯示模型元素的內部名。

SLAB是一種自定義的標註方式,通過自定義一種Symbol Library,在標註時就能夠按照模板對結構進行標註。標註樣式就是我們的模板樣式。在這裏我們使用SLAB進行出圖標註。

4.2 利用PML對板材進行標註

第一步,我們需要建立一個SYTM爲節點的符號模板。這個模板中使用#PrtIDl來匹配板材模型的零件名,#Thickn來匹配零件的厚度,#QuaTxt來匹配零件的材質。

第二步,選中View節點,新建一個Laye節點,在Laye節點下新建一個SLAB節點。

第三步,對SLAB節點進行屬性設置

DDNM屬性值設置爲需要匹配的板材結構Ref

TMRF屬性值設置爲SYTM符號模板的Ref

這樣一個SLAB就創建了,爲了更好的自動化,在上面思路的基礎上,我們也利用PMl進行了客戶端開發。

5.小結

    利用PML創建的SLAB來標註船體結構,能夠自定義模板,並且標註的信息與模型直接相關聯。在使用也發現PML開發相比Vitesse對船體模型進行開發,具有更大的優勢。其中,Vitesse讀取一個船體信息需要使用Keyword,這種方式非常死板,深度開發的解決方案都不是很好。而利用PMl讀取模型信息,就方便了許多許多。

目前,PML開發船體插件,實際使用還是比較少得。這和歷史原因有關。但是隨着科技的發展,已經船廠對數字化設計要求的提高。我相信基於PML語言的船體插件將被更多的開發出來。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章