楊 駿,王 堯,張紅偉,王 杰,朱明華
(江南造船(集團)有限責任公司,上海 201913)
當前,隨著造船業信息化發展的不斷深入,船舶科研院所、總裝廠等開發或引進了各式各樣的CAX軟件系統,包括CATIA和TRIBON等CAD建模軟件,PATRAN/NASTRAN和ABAQUS等CAE分析軟件,以及NX、DELMIA和EXNEST 等CAM 軟件。通過使用此類軟件系統,使得我國在數字化造船領域取得了長足進步。
在船舶設計建造過程中,企業往往根據不同生產階段的要求選擇不同的軟件,由于生產廠商不同,各軟件是相互獨立的系統,經常需進行重復性的建模工作,會浪費大量的人力資源。針對該問題,軟件廠商根據市面上主流的軟件開放了大量通用數據接口,可通過此類接口進行不同軟件之間的模型傳遞,有效提升船舶設計建造效率。
三維模型作為船舶設計建造過程的數字源頭,在整個設計建造環節起著至關重要的作用。傳統的船舶建模CAD軟件主要是基于TRIBON軟件開發的,TRIBON 作為一款“二維半”的CAD 軟件,與行業軟件的交互性較差,若以此為建模工具,則后續的分析和模擬等都需重新開展建模工作,效率非常低。基于此,國內船舶企業開展了基于達索系統全新一代三維體驗平臺(3D Experience Platform,3DEXP)的船舶設計建造流程研究,以單一數據源三維模型貫穿始終,通過其強大的三維建模功能和友好的數據接口實現三維模型設計制造的全流程應用。
為更好地實現基于單一數據源的船舶設計、分析和建造一體化,固化模型數據傳遞方法,減少人員手動操作的工作量,實現對船舶設計軟件的高效統一集中管理和使用,本文以3DEXP為依托,通過將船舶設計建造過程中常用的幾款CAE分析軟件集成于該平臺中,以通用中間格式文件為媒介,通過3DEXP CAA(Component Application Architecture)二次開發模塊,結合CAE 分析軟件的二次開發功能,實現船舶三維模型一鍵快速導出和導入CAE分析軟件,簡化設計人員操作流程,提升設計效率。
對常用的CAE軟件進行調研,其快速導入模型的方式主要有3 種:
1)修改軟件啟動文件;
2)腳本命令,并通過Windows指令直接調用;
3)錄制宏命令,在軟件內部一鍵調用。
綜合上述CAE軟件的特性,選擇3 款典型的CAE軟件作為此次研究的集成軟件對象。
1)MSC.PATRAN:集成的并行框架式有限元前后處理系統,主要功能包括幾何模型創建、網格劃分、載荷及邊界條件施加和結果后處理等。
2)ABAQUS:功能強大的工程模擬有限元求解軟件,可解決簡單的線性分析和復雜的非線性分析問題,可用于分析船舶及其輔機的振動、抗沖擊特性和材料成型工藝等。原則上來說,3DEXP 深度內嵌了SIMULIA-ABAQUS模塊,但該模塊與原版ABAQUS 相比在功能上有一定的欠缺,因此本文選擇原版ABAQUS軟件。
3)FLOEFD:高度工程化的通用流體流動與傳熱分析軟件,具有豐富的流體流動和傳熱模型,可用于解決船舶艙室(機艙、住艙和工作艙)內部的流場和溫度場問題。
CAE分析軟件可接收三維幾何模型,在此基礎上通過網格劃分生成計算模型。3DEXP支持導出目前市面上主流的大部分幾何通用中間格式文件,如IGES、STEP 和STL 等,根據CAE 軟件的要求自行選擇即可。此外,CAE分析軟件還可直接接收通用有限元求解文件,該文件包含有計算模型信息,如網格信息和載荷信息等,此時可不用再進行網格劃分,而是直接對網格進行一定的修改之后提交計算,目前3DEXP支持導出的求解文件格式為BDF格式和INP格式。
通過對所選3 款CAE軟件進行研究可知,PATRAN和ABAQUS可通過讀取有限元求解文件導入計算模型,其中:PATRAN采用BDF格式文件導入,這是有限元文件導入PATRAN 的標準格式;ABAQUS 通過INP格式文件導入,這是模型導入ABAQUS的標準格式。
FLOEFD的網格劃分模式比較特殊,無法接收求解文件,因此采用讀取幾何文件的方式實現模型導入。由于FLOEFD在求解時需以三維實體模型為依托,而常用的IGES和STL等均為面片模型,因此選擇STEP格式的幾何格式文件實現模型導入。各軟件所需模型文件格式匯總見表1。

表1 各軟件所需模型文件格式匯總
從開發的角度看,首先需進行架構設計。集成平臺總體部署為界面展示層、數據接口層和業務處理層等3 層。
1)界面展示層為人機操作界面,該界面集成于3DEXP內部,可在基本界面下調用啟動,主要包括待轉換模型選擇和輸出軟件選擇等;
2)數據接口層通過CAA開發直接調用3DEXP內部的API轉換函數,將已選模型轉化為對應設計軟件指定的中間格式并導出;
3)業務處理層基于對應設計軟件本身的二次開發功能,實現模型快速導入。
整個平臺系統的架構見圖1。

圖1 平臺系統架構
此次船舶設計軟件集成基于3DEXP進行二次開發。3DEXP 是法國達索公司開發的新一代業務體驗平臺,該平臺基于協作、交互環境下的3D設計軟件開發,擁有統一且易于使用的界面,可供設計人員開展多專業并行設計,其單一數據源模型可用于設計后續的計算分析工作。CAA是3DEXP的一整套C ++函數庫,用戶可通過RADE(Rapid Application Development Environment)模塊,在VS環境下開展編程工作,并實時與3DEXP進行交互調試,實現二次開發。相比VBA 和EKL,CAA的功能更強大,可滿足更加復雜的開發需求,因此本文基于CAA開展開發工作。
在使用該集成平臺時,設計人員主要關注需輸出的三維模型和對應的接收軟件,系統會根據選擇的軟件給出數據模型格式的可選擇列表,圖2 為該集成平臺的人機交互界面,設計人員選擇模型節點和對應軟件之后,后臺會自動轉化和輸出模型的中間格式、打開對應設計軟件并輸入模型,設計人員無需進行復雜的導入和導出操作,能有效節省工作時間,提升工作效率。

圖2 平臺的人機交互界面
3DEXP提供了模型手動轉換和輸出功能,設計人員可進行相關模型的導出操作,但操作相對比較繁瑣。該集成平臺通過調用后臺API函數,可實現模型自動轉換和輸出,具體的實現流程見圖3。

圖3 模型轉換和輸出實現流程
模型轉換完成之后,模型文件將自動存入指定的路徑中,后續設計軟件通過相同的路徑讀取該模型文件。
完成模型數據轉換和輸出之后,需將該模型導入指定的軟件中。此次研究針對3 種軟件各自的特點,采取不同的導入策略,實現模型導入方案定制化開發。
軟件的啟動模式可分為應用程序直接啟動和Windows腳本命令(.bat)啟動2 種,其中后者可實現軟件在啟動時自動加載相關預定義腳本。3DEXP提供的ExecuteShell函數可實現軟件應用程序和Windows腳本命令自動啟動,同時可使用C ++的標準函數WinExec實現該功能。
4.3.1 PATRAN模型導入
PATRAN在其安裝目錄下存在一個配置文件p3patran.pcl,每次啟動時PATRAN都會加載該文件內的代碼,這也是每次打開PATRAN時自動加載二次開發功能的方法。
PATRAN從啟動到導入模型需進行3 步操作,即:
1)創建新數據庫文件;
2)指定路徑;
3)導入模型文件。
這些步驟均有對應的pcl函數代碼實現,通過手動操作打開PATRAN的日志文件可獲取相應代碼,并對其進行適當的修改,將其中的可變參數(如文件名稱、路徑地址等)固化。
集成平臺在啟動PATRAN之前,可通過文件寫入功能實現自動修改配置文件,啟動軟件時會加載配置文件內的代碼,從而實現模型文件的自動導入。模型導入完成之后,需將配置文件恢復成原始狀態,以免影響后續軟件的使用。PATRAN模型自動導入流程見圖4。

圖4 PATRAN 模型自動導入流程
4.3.2 ABAQUS模型導入
ABAQUS內置有Python解釋器,其前后處理的所有操作指令(包括幾何模型建立和導入、單元屬性建立、網格劃分、加載和結果后處理等)都可用Python代碼實現,因此只需獲取其中關于模型導入的腳本代碼,并將其編寫成一個Python腳本文件,同時令ABAQUS啟動時自動加載該Python腳本文件即可。腳本代碼的獲取方式同PATRAN 一樣,通過查找ABAQUS 的日志文件即可獲得,在此基礎上進行適當的修改,固化可變參數。此外,通過編寫Windows批處理文件(.bat),可實現ABAQUS自動啟動并加載腳本文件的功能。具體的ABAQUS模型自動導入流程見圖5。

圖5 ABAQUS模型自動導入流程
4.3.3 FLOEFD模型導入
FLOEFD軟件基于SOLIDWORKS 引擎開發,因此其二次開發語言為SOLIDWORKS VBA,類似于PATRAN 和ABAQUS,通過錄制宏命令可獲得FLOEFD關于模型導入的VBA代碼,進行適當的修改之后即可實現模型的快速導入。本文通過創建快捷工具實現STP格式模型快速導入FLOEFD。具體的FLOEFD模型自動導入流程見圖6。

圖6 FLOEFD模型自動導入流程
以某液化石油氣(Liquefied Petroleum Gas,LPG)船平行中體部分左舷結構為例,在3DEXP中建立結構模型并進行網格劃分,結果見圖7。

圖7 3DEXP船體結構有限元模型
將該模型輸出至有限元軟件PATRAN 中進行加載和計算,得到應力云圖見圖8,其運算結果與在PATRAN中創建的模型的計算結果基本一致。軟件應用結果表明,通過此種方式得到的計算模型能滿足相關的求解需求,模型在自動導出過程中不會出現信息丟失等現象。

圖8 導入PATRAN/NASTRAN有限元計算結果
本文針對當前船舶設計軟件種類較多、缺乏有效集成的特點,結合常用的CAE分析軟件,對基于3DEXP的船舶設計軟件接口集成技術進行了研究。借助3DEXP 二次開發模塊CAA,以及PATRAN PCL、Python、DOS和VBA等二次開發語言,實現了PATRAN、ABAQUS和FLOEFD等3 款常用CAE設計軟件與3DEXP的接口集成,研究結果表明:
1)集成平臺將多種船舶設計軟件接口與3DEXP結合在一體,充分利用了3DEXP的單一數據源模型,避免了設計人員針對不同分析對象進行多次重復建模,提升了設計效率。
2)實現了對不同類型船舶設計軟件的統一化管理,固化了模型數據轉化流程,充分運用了計算機輔助設計功能,實現了模型的轉化、導出和導入等操作一鍵式完成,簡化了操作流程,使設計人員更專注于設計,提升了公司的核心競爭力,同時實現了對各類船舶設計軟件的高效統一集中管理和使用。
3)通過某船體結構有限元分析實例可知,通過本文所得模型傳遞方式得到的計算模型能滿足相關求解需求,該模型在導出過程中不會出現信息丟失等現象。