梁 雋,張文斌
(中船澄西船舶修造有限公司,江蘇 江陰 214433)
Ship Product Design(SPD)系統是基于OpenGL圖形庫進行開發的造船CAD設計軟件,能滿足船體結構、管系、風管、電氣、鐵舾件、涂裝等專業三維全數字化設計的需求[1]。采用SPD軟件,建立數字化設計平臺,助力各船型生產設計,能夠取得良好的應用效果。但是,在使用過程中發現電氣設計模塊相比其他專業模塊,存在數據準備時間較長、軟件數據輸出較粗略的問題。本文以SPD5.0版本為研究對象,對電氣模塊的參數化部件、內碼表、設備小樣、電纜標準、舾裝區域定義、顏色配置等功能進行優化,并利用C#語言進行二次開發,完善出圖系統。
SPD-E電氣設計系統涵蓋了從電氣標準、電氣原理、三維模型到生產圖紙和表冊輸出的全部過程,提供了電氣設備、電氣基座、電纜通道、電氣導架、電纜貫穿件、電纜拉放、生產用表等一系列與電氣生產設計有關的建模和管理功能[2]。SPD5.0電氣模塊具體功能描述見表1。

表1 主要功能描述表
SPD軟件中PpdL程序是一個可以幫助用戶設計參數化部件的程序,用編寫參數代碼來增加、修改組件[3]。在“參數化部件”設計界面下,用戶通過“查詢/導出”按鈕可對所有參數化部件進行查詢、引用及批量導出;通過“參數定義”按鈕可直接對部件參數缺省值進行修改;通過“引用定義”按鈕可查詢該部件的組成,并對子部件數據進行修改。
由于SPD5.0軟件內置的參數化部件不能完全適用于生產設計,根據實際需求對電舾件進行參數化部件開發,共涵蓋4個方面:電纜支承件、電纜貫穿件、墊板、電氣設備基座, 主要步驟如下:
(1)提高電氣生產設計的準確率,制定舾裝件標準化圖冊。
(2)簡單的電舾件依舊使用內置的參數化部件,通過新建部件號對電舾件的材料、材質、重量等數據進行完善。
(3)根據電舾件標準化圖冊進行參數化部件開發,實現復雜電舾件的設計。
參數化建模支持搭積木式嵌套疊加引用,將復雜部件拆分為若干簡單部件,最終通過引用方式將復雜部件搭建起來[4]。以圖1新建的MS06P壁式組合單層直導架為例,該參數化部件共引用了8個小部件:組合導板(600)、左角鋼吊腳、右角鋼吊腳、長方體(即導板面)及4個三角復板。通過對不同部件的參數化部件開發并引用,從而實現了該部件的開發。

圖1 MS06P壁式組合單層直導架構成圖
在該托架“變量定義”代碼部分,需對各層級的參數化部件材料、規格、數量、重量、內碼等變量數據進行編制,并一一對應,以保證后期二次開發程序抽取材料的準確性,見表2。

表2 MS06P壁式組合單層直導架的變量定義
針對電氣專業特點,整理近年來各系列船型電氣、輪機、舾裝涉及的設備廠家,通過EXCEL表格進行分類匯總。通過優化,將內碼表優化成3大類:電氣中型設備、燈具和電氣通用設備。其中:電氣中型設備內碼表包含駕控臺、集控臺、電力分電箱3類;電氣燈具包括艙室燈具和航行燈、信號燈2小類;電氣通用設備則根據全船電氣系統建立部件小類。
以上所有小類共建立236個內碼。以設備廠家為單位,每一個內碼($MCODE$)對應一個廠家名稱(即代碼名稱$MNAME$),以便后期區分及維護,格式為:XT-CJ,XT表示系統名稱,CJ表示廠家名稱。
SPD5.0中提供了三維小樣及實體小樣的建模功能。通過各種實體建立的電氣設備,簡稱設備小樣。根據統計,常規一型散貨船設計準備階段全船需建立約400個電氣設備小樣。以優化后的內碼表為載體,在SPD5.0中新建模板工程,對常用廠家涉及的電氣設備實體數據、連接點數據進行預建模。每一個新項目前期小樣建模時,可根據實際需求提取模板工程中的設備小樣數據庫。流程如下:
(1)判斷相關系統的設備廠家與模板工程中的是否為同一廠家,并在本工程下建立相同內碼。
(2)通過“數據管理”中“合并數據庫”功能對模板工程中的部件進行復制。
(3)檢查設備小樣各數據準確性,包括設備外形、電氣設備標準底盤、電纜連接點及電纜余量等。
(4)在“舾裝標準”中通過“從VOL批量生成”按鈕生成部件定義。
根據近年來采用的電纜廠家樣本手冊,整理匯編電纜標準表格,新項目電纜原理輸入前僅需導入相關廠家的電纜表格即可完成電纜參數的定義。
在生產設計過程中,電氣設備、電纜通道、電氣設備基座、電纜支承件、電纜都要歸屬某個艙室,在設計準備初期需在“舾裝區域”中定義甲板、區域、艙室,其層次結構為甲板-區域-艙室。根據《分段、總段代碼規定》《舾裝區域代碼規定》,在SPD5.0“設計管理”中,以各甲板英文簡稱建立“甲板代碼”(一般取2英文字符),“甲板簡稱”取其首字母;“區域代碼”分別以“P000Q”“E000Q”“D000Q”“F000Q”代表“上建”“機艙”“貨艙”“艏部”區域, 通過第2位數字的不同來劃分不同的區域。
經過多船的試用,對電纜通道類別及顏色定義標準化,見表3。定義如下:

表3 電纜通道類別和顏色標準定義
(1)將電纜通道分為7類,并明確每一類通道敷設電纜的類別。
(2)為了和其他專業模型顏色類別進行區分,解決本專業部分電纜分開敷設時的電纜通道顏色不明顯的缺點,調整電纜通道顏色。
利用C#語言對SPD 5.0進行二次開發出的桌面應用程序具有4個功能:電纜支承件抽取、電纜貫穿件抽取、設備基座抽取和設備基座制作圖。功能結構見圖2。

圖2 電氣二次開發軟件功能
SPD5.0 提供SpdCustomization.dll和SpdArxCustomization.dll等文件作為查詢二次開發接口[5],前者可有效提取標準部件的各類屬性。其中:Mddrec模型記錄基類的派生類,MddCabTray Class記錄電氣導架模型,MddCabpen Class記錄電纜貫穿件模型,MddElecPed Class記錄電氣基座模型。
在SPD5.0的三維模型中,首先選擇電舾零件進入托盤管理表,然后通過二次開發軟件創建基于模型文件的樹:模型文件-托盤-電舾件,選中托盤后對電舾件即可進行抽取。
電纜支承件、電纜貫穿件、設備基座材料抽取原理相同,在參數化部件編制過程中,已對各變量數據進行定義。通過數據接口ParaComponent類提取數據,輸出物量如下:
SubQualityCodes:材料名稱;SubSpecs:材料規格;SubMainCodes:材質;SubSpecLength:組件規格長度;SubSpecNums:組件數量;SubWeights:組件重量。
電纜支承件主要包括扁鋼和電纜托架。扁鋼包含普通電纜綁扎扁鋼、單個電纜綁扎扁鋼、橋型不銹鋼電纜綁扎扁鋼、電纜綁扎長扁鋼。電纜托架根據托架托板型式的不同,分為角鋼型托板的托架和槽鋼型托板的托架;根據托架的層數不同,分為單層、雙層和三層的托架;根據托架的長度不同,分為單托和組合托架及可變長度的托架和不可變長度的托架[6]。這些支承件種類繁多,每一類下又包含多種參數化部件。制作托盤輸出步驟如下:
(1)在服務器端新制托盤表模板,除了常規輸出支承件代號、名稱、數量、單位、墊板之外,還增加了電纜托架撐腳腳高、螺絲螺母套數的數據輸出,并明確電舾件的表面處理、安裝階段。
(2)因不同的電纜支承件代碼對應不同的中文名稱,制作托盤中應包括相關支承件代號所對應的中文名稱。
(3)針對電纜綁扎扁鋼、電纜托架托盤輸出格式不同的特點,通過代碼對入托的支撐件進行多條件判斷輸出:扁鋼無需輸出支撐腳及螺栓螺母,通過限定扁鋼所在的參數化部件號(ParaCompNum)范圍直接輸出數據;由于不同形式的電纜托架制作材料不同,通過部件內碼(MainCode)或者ParaCompNum判斷電纜托架類型并輸出撐腳高度(MddCabTray.legpairHeight)及SubSpecNums,螺絲螺母、墊板型號或者規格則通過參數值列表(ParaValues)提取。
之所以采取這一做法,主要就是因為:“由人身自由價值的重要性決定,人身自由罰作為一種處罰方法,只有用于對犯罪的刑事制裁才能具有相當性和合理性。”[40]也正是基于此,美國法哲學家博登海默明確指出,“人們賦予自由的那種價值為這樣一個事實所證實,即監禁在任何地方都是作為一種刑事制裁手段加以使用的。”[41]因而,在輕罪范圍拓展的限度標準上,“如果我們從定罪轉向刑罰實施,我們可利用剝奪自由這一實際的或潛在的監禁判決所固有的天然標準。”[42]
電纜貫穿件主要分為穿線管和電纜護圈2大類別。由于不同的貫穿件數字代表了不同的含義,因而給生產制作及集配帶來了不便。以YK圓形穿線管為例,介紹其編碼結構和規格提取方法。YK圓形穿線管編碼說明見圖3。

圖3 YK圓形穿線管代碼說明
由于穿線管外徑、厚度、長度不同的數字代表不同值,通過標準鐵舾件模型(MddSstru Class)提取參數值(ParaValues)。在YK貫穿件的參數化代碼中,已按照順序對外徑(DW)、壁厚(T)、內徑(B)、長度(L)、貫穿件偏移值(H)代碼進行編譯。
首先為保證輸出的基座編號在全船工程中具有唯一性,需在工程配置文件(Proj.ini)的[Elec]節對中型基座(MPedDsm)和小型基座(SPedDsm)設置規則如下:
MPedDsm=$PLT$-$SNAME$-$Sn$
SPedDsm=$PLT$-$SNAME$-$Sn$
RenDsmOnPedUpdate = 1
電氣設備基座制作托盤生成原理是:通過電氣設備模型類(MddElecDev)獲取設備基座編號,自動提取連接電氣設備基座的電氣設備名稱及代號,通過PartComponent屬性輸出“基座重量”,“數量”“單位”“表面處理”取默認值。
電氣設備基座進行開發步驟如下:
(1)根據近年來各系列船型生產設計經驗積累,羅列常用的電氣中小型設備基座清單,形成標準化統一,在AutoCAD軟件中對這些基座進行三視圖的設繪,并對一些參數值進行定義,如基座安裝尺寸、安裝孔大小、基座高度等數據。
(2)根據電氣設備基座形式對基座進行參數化開發,并在模板工程中進行調試應用。
(3)在服務器模板目錄(TemplateTables)下新建設備基座的EXCEL模板。首先通過BetterWMF軟件將CAD圖形轉換成圖片格式,其次將所有需輸出的數據在工作表單元格中定義。
(4)基于C#語言對參數化基座的參數值進行提取,輸出到EXCEL制作圖中。
(1)根據自身實際需求,對SPD5.0部分功能進行標準化定義,建立和完善了設計標準體系。
(2)通過對SPD5.0的二次開發,提升了電舾托盤、制作圖的輸出效率,滿足了設計、生產和管理的需求。