沈 波,陳 雙,任 琛,任金虎,張蕊珠
(金航數(shù)碼科技有限責(zé)任公司,北京 100028)
關(guān)鍵字:仿真數(shù)據(jù)管理;工具集成;仿真知識(shí)管理;仿真APP
仿真數(shù)據(jù)管理(SPDM)平臺(tái)是在線協(xié)作式仿真研發(fā)平臺(tái),可用于管理仿真數(shù)據(jù)和仿真流程,相關(guān)技術(shù)可以支撐不同學(xué)科仿真分析中的常用流程的功能封裝和復(fù)用。在傳統(tǒng)CAE領(lǐng)域的結(jié)構(gòu)仿真分析中,采用的流程、方法、工具基本一致,例如流程通常分為前處理、求解和后處理,方法一般采用有限元法,工具一般采用Patran/Nastran、ABAQUS軟件等。CAE技術(shù)的應(yīng)用極大地提高了機(jī)械結(jié)構(gòu)的優(yōu)化設(shè)計(jì)能力,但是在仿真過(guò)程中逐漸暴露出操作煩瑣、知識(shí)復(fù)用不便等問(wèn)題,例如重復(fù)性地設(shè)置載荷、邊界條件和重復(fù)性交互選擇提取數(shù)據(jù)等,特別是在大量模型或工況需要仿真計(jì)算的情況下,會(huì)顯著增加仿真工程師的工作量,不利于開(kāi)展創(chuàng)新研究。因此需要對(duì)常用的仿真流程進(jìn)行集成及管理,形成仿真APP以提高仿真分析的效率。
將服務(wù)部署在統(tǒng)一環(huán)境,通過(guò)仿真軟件集成的方式進(jìn)行APP的建設(shè)和管理,在CAE領(lǐng)域中已開(kāi)展了相關(guān)研究。GE于2013年推出了Predix平臺(tái),開(kāi)始了依托工業(yè)互聯(lián)網(wǎng)技術(shù)進(jìn)行工業(yè)APP開(kāi)發(fā)的預(yù)先研究及應(yīng)用。崔羽飛等闡述了工業(yè)互聯(lián)網(wǎng)云邊協(xié)同過(guò)程中存在的問(wèn)題,并基于數(shù)據(jù)協(xié)同和模型協(xié)同進(jìn)行實(shí)踐。董長(zhǎng)青等研究了以微服務(wù)框架和Docker框架為核心的應(yīng)用云平臺(tái)架構(gòu),通過(guò)集成方式進(jìn)行了工業(yè)APP的部署和使用。侯慶坤等針對(duì)汽車(chē)行業(yè)工業(yè)APP云平臺(tái)建設(shè)進(jìn)行了研究和架構(gòu)規(guī)劃。劉蘇杰等建立一個(gè)涉及四個(gè)學(xué)科的分布式集成設(shè)計(jì)平臺(tái),并完成了多學(xué)科復(fù)雜系統(tǒng)的設(shè)計(jì)、仿真和優(yōu)化。其他研究者還研究及應(yīng)用仿真流程集成的相關(guān)技術(shù)解決了工程問(wèn)題。但大多數(shù)研究側(cè)重IT層面的架構(gòu)規(guī)劃,或側(cè)重解決特定仿真問(wèn)題,還需要提出一條通用性的解決仿真流程與數(shù)據(jù)管理應(yīng)用的技術(shù)路線,使得設(shè)計(jì)師在仿真過(guò)程中避免面臨前述業(yè)務(wù)問(wèn)題的困擾。因此,需要在現(xiàn)有研究的基礎(chǔ)上總結(jié)出常規(guī)仿真APP建設(shè)的范式。
本文探討利用仿真數(shù)據(jù)管理平臺(tái)的流程封裝技術(shù)完成結(jié)構(gòu)仿真APP的開(kāi)發(fā),固化其中需要人工煩瑣操作的過(guò)程,形成結(jié)構(gòu)仿真APP,通過(guò)固化、規(guī)范化結(jié)構(gòu)仿真的技術(shù)知識(shí),部署在統(tǒng)一的仿真數(shù)據(jù)管理平臺(tái)服務(wù)端供工程師使用,實(shí)現(xiàn)APP的便捷調(diào)用和計(jì)算資源統(tǒng)一管理,進(jìn)而提高仿真分析效率。
結(jié)構(gòu)仿真APP是指基于互聯(lián)網(wǎng)絡(luò),承載結(jié)構(gòu)仿真知識(shí)和經(jīng)驗(yàn),滿足結(jié)構(gòu)仿真用戶特定需求的應(yīng)用軟件,即面向工業(yè)產(chǎn)品全生命周期業(yè)務(wù)的需求,將工業(yè)產(chǎn)品及結(jié)構(gòu)仿真過(guò)程中的知識(shí)、最佳實(shí)踐及技術(shù)訣竅封裝而成的應(yīng)用軟件。結(jié)構(gòu)仿真APP的依托平臺(tái)是仿真數(shù)據(jù)管理(SPDM)平臺(tái),適用于多人在線協(xié)同工作,可對(duì)仿真流程進(jìn)行集成和管理。如圖1所示,SPDM平臺(tái)采用C/S、B/S架構(gòu)的軟件通過(guò)開(kāi)發(fā)的接口進(jìn)行軟件的封裝,可以驅(qū)動(dòng)仿真流程的持續(xù)運(yùn)行,其中的計(jì)算調(diào)度服務(wù)器可以實(shí)現(xiàn)仿真入口的統(tǒng)一管理,將仿真流程中的不同軟件放在不同的機(jī)器中,實(shí)現(xiàn)計(jì)算資源的整合。

圖1 基于SPDM的APP云部署IT架構(gòu)
軟件封裝將隱性的知識(shí)、仿真的經(jīng)驗(yàn)流程等方法固化在軟件中或應(yīng)用程序中,將成熟的仿真流程封裝為模板即為仿真APP,在進(jìn)行仿真分析時(shí)對(duì)仿真APP進(jìn)行實(shí)例化來(lái)實(shí)現(xiàn)仿真分析流程的復(fù)用,保證仿真分析流程的規(guī)范化,如圖2所示。

圖2 仿真APP創(chuàng)建及應(yīng)用流程
仿真APP中的流程主要是構(gòu)建各個(gè)專(zhuān)業(yè)及學(xué)科的分析流程,規(guī)范仿真分析的步驟,確定不同的仿真分析步驟之間的數(shù)據(jù)傳遞關(guān)系及影響關(guān)系,統(tǒng)一仿真分析的工具,共享仿真分析流程所產(chǎn)生的數(shù)據(jù);在后端流程中,仿真APP的搭建基于各軟件工具的接口及windows命令行等IT基礎(chǔ),依據(jù)仿真業(yè)務(wù)的需求,集成相應(yīng)的軟件工具、腳本,搭建完成仿真流程,設(shè)置各軟件工具的接口文件、參數(shù)的傳遞關(guān)系,并根據(jù)各工具的API接口進(jìn)行集成調(diào)用,形成的結(jié)果可以自動(dòng)生成報(bào)告;在前端界面,依據(jù)用戶的需求進(jìn)行界面化定制,以方便仿真運(yùn)行時(shí)操作以及結(jié)果查看。將以上過(guò)程封裝為具有通用性質(zhì)的模板,即可稱(chēng)之為仿真APP。
通用的仿真APP的流程內(nèi)容及描述如圖3所示。

圖3 仿真APP的流程內(nèi)容示意圖
仿真APP以仿真流程集成為基礎(chǔ),通過(guò)文件解析、數(shù)據(jù)映射、求解調(diào)用、結(jié)果后處理等方式實(shí)現(xiàn)數(shù)據(jù)流和文件流的傳遞,通過(guò)仿真數(shù)據(jù)管理實(shí)現(xiàn)仿真數(shù)據(jù)和文檔的存儲(chǔ),通過(guò)仿真工具集成實(shí)現(xiàn)CAE分析的基本功能。
(1)結(jié)構(gòu)仿真APP的建設(shè)
在某結(jié)構(gòu)的隨機(jī)分析及后處理APP建設(shè)中,為了實(shí)現(xiàn)結(jié)構(gòu)隨機(jī)分析與結(jié)果后處理,自動(dòng)獲取結(jié)果文件,并進(jìn)行結(jié)果曲線繪制的功能。通過(guò)規(guī)范化使用APP的搭建與封裝流程,完成APP的創(chuàng)建,在實(shí)例化的用戶界面輸入變量的類(lèi)型、加速度轉(zhuǎn)換系數(shù)、節(jié)點(diǎn)的編號(hào)、方向和軟件版本等內(nèi)容,最終獲取結(jié)果文件中的數(shù)據(jù)和曲線。
隨機(jī)分析及后處理APP的后端仿真流程分為兩個(gè)相對(duì)獨(dú)立的活動(dòng),分別是結(jié)果提取和結(jié)果后處理,結(jié)果提取活動(dòng)用于生成各節(jié)點(diǎn)的隨機(jī)分析結(jié)果文件,結(jié)果后處理活動(dòng)用于處理前一步生成的結(jié)果文件并繪制后處理結(jié)果曲線。隨機(jī)分析及后處理APP流程中的各基本組件功能詳細(xì)介紹如圖4所示。

圖4 隨機(jī)分析及后處理APP的后端仿真流程
APP中的數(shù)據(jù)和參數(shù)描述如下:
輸入?yún)?shù):定義輸出變量的類(lèi)型、加速度轉(zhuǎn)換系數(shù)、輸出節(jié)點(diǎn)的編號(hào)、變量方向和軟件版本。在曲線繪制區(qū),輸入需要繪制曲線的節(jié)點(diǎn)編號(hào)、曲線的縱軸標(biāo)簽以及Matlab版本。
輸入文件:頻響分析模型文件FreResp.bdf、結(jié)果文件FreResp.xdb文件和PSD功率譜密度文件。
輸出文件:各所選節(jié)點(diǎn)的RMS結(jié)果文件(.txt格式)、單個(gè)節(jié)點(diǎn)的隨機(jī)響應(yīng)曲線(.png及.fig格式)。
在后端流程創(chuàng)建完成后,搭建前端的用戶使用UI頁(yè)面,定制如圖5所示的使用頁(yè)面,頁(yè)面中各輸入?yún)^(qū)分別對(duì)應(yīng)了APP中暴露出的各參數(shù)。

圖5 隨機(jī)分析及后處理流程模板
用戶使用頁(yè)面的信息如下:
1)基本信息:“名稱(chēng)”為顯示該次仿真的名稱(chēng),“描述”為針對(duì)此次仿真的任務(wù)描述。
2)輸入:“檢索頻響分析模型文件”、“檢索頻響分析結(jié)果文件”為在界面通過(guò)搜索獲取頻響分析模型文件(.bdf格式)、結(jié)果文件(.xdb格式);“選擇輸出變量類(lèi)型”為輸出變量的類(lèi)型,“變量方向”為輸出變量的方向;“節(jié)點(diǎn)編號(hào)”為需要輸出結(jié)果文件的節(jié)點(diǎn)編號(hào),“加速度轉(zhuǎn)換系數(shù)”為公制單位和英制單位之間的轉(zhuǎn)換選項(xiàng),“Patran版本”為對(duì)應(yīng)的Patran軟件安裝路徑;“PSD功率譜密度文件”為上傳PSD功率譜密度文件(.md格式)。
3)輸出:“節(jié)點(diǎn)結(jié)果文件RMS值”為輸出隨機(jī)分析及后處理節(jié)點(diǎn)的結(jié)果文件;“繪制曲線的節(jié)點(diǎn)編號(hào)”為需要繪制曲線的節(jié)點(diǎn)編號(hào),“曲線縱軸標(biāo)簽”為作曲線圖時(shí)縱軸的標(biāo)簽,“Matlab版本”為Matlab軟件的安裝路徑;“曲線預(yù)覽”為隨機(jī)分析曲線的預(yù)覽圖片。
4)運(yùn)行:可分段運(yùn)行仿真流程,“生成節(jié)點(diǎn)結(jié)果文件”為觸發(fā)自動(dòng)輸出隨機(jī)分析及后處理結(jié)果文件流程運(yùn)行;“繪制節(jié)點(diǎn)曲線”為可觸發(fā)自動(dòng)輸出隨機(jī)分析曲線圖片流程運(yùn)行。
(2)結(jié)構(gòu)仿真APP的應(yīng)用
通過(guò)將APP實(shí)例化,可以形成新的仿真流程。在基本信息區(qū),可輸入或修改顯示的APP名稱(chēng)和描述。
在輸入?yún)^(qū),通過(guò)搜索獲取頻響分析模型文件FreResp.bdf、結(jié)果文件FreResp.xdb文件,上傳PSD功率譜密度文件。定義輸出變量的類(lèi)型、加速度轉(zhuǎn)換系數(shù)、節(jié)點(diǎn)編號(hào)、變量方向和Patran版本。
在使用仿真流程時(shí),在個(gè)人使用端進(jìn)行操作,上傳或在數(shù)據(jù)庫(kù)中檢索新的模型,在頁(yè)面上選擇不同的輸出變量類(lèi)型、變量方向、節(jié)點(diǎn)編號(hào)和PSD功率譜密度文件,然后在運(yùn)行區(qū)提交運(yùn)行,協(xié)同服務(wù)器將計(jì)算指令下發(fā)給計(jì)算調(diào)度服務(wù)器,計(jì)算調(diào)度服務(wù)器選擇對(duì)應(yīng)的超算或工作站進(jìn)行求解作業(yè),在求解完成后,將預(yù)先定義的關(guān)鍵結(jié)果上傳到仿真流程中進(jìn)行統(tǒng)一管理。
在輸出區(qū),獲取各個(gè)節(jié)點(diǎn)的RMS文件和隨機(jī)響應(yīng)結(jié)果曲線,輸入不同的節(jié)點(diǎn)編號(hào)、曲線的縱軸標(biāo)簽以及Matlab的版本,通過(guò)“繪制節(jié)點(diǎn)曲線”按鈕觸發(fā)后處理執(zhí)行生成新的曲線,并將關(guān)鍵結(jié)果顯示在頁(yè)面中,供使用者查看或下載。輸出的曲線和結(jié)果文件可下載到本地進(jìn)行查看或再次加工處理。仿真結(jié)果的離線查看如圖6所示。

圖6 仿真結(jié)果的離線查看
以上仿真的操作步驟可以在頁(yè)面上再次修改設(shè)置,進(jìn)行快速的結(jié)果重新生成,對(duì)于結(jié)果提取的效率有極大地提高。
(3)仿真數(shù)據(jù)的查看
在計(jì)算完成后,除了在用戶頁(yè)面上查看關(guān)鍵仿真結(jié)果,也可以在平臺(tái)中查看詳細(xì)的仿真數(shù)據(jù),其中包括了輸入文件、腳本、中間文件及輸出文件等。仿真流程的數(shù)據(jù)存儲(chǔ)及查看如圖7所示。

圖7 仿真流程的數(shù)據(jù)存儲(chǔ)及查看
1)通過(guò)隨機(jī)分析及后處理這一結(jié)構(gòu)仿真APP的建設(shè)及界面封裝,實(shí)現(xiàn)成熟操作流程的便捷化應(yīng)用,實(shí)現(xiàn)了通過(guò)APP高效完成隨機(jī)響應(yīng)分析及后處理的仿真過(guò)程;通過(guò)與傳統(tǒng)的線下手動(dòng)處理的設(shè)置過(guò)程和求解對(duì)比,驗(yàn)證了該APP具有應(yīng)用方便、操作簡(jiǎn)潔、數(shù)據(jù)準(zhǔn)確度高的特點(diǎn)。
2)基于SPDM的仿真APP不僅可以在結(jié)構(gòu)仿真中進(jìn)行廣泛的推廣與應(yīng)用,其他相關(guān)專(zhuān)業(yè)和學(xué)科的仿真APP技術(shù)路線都可以應(yīng)用于具有類(lèi)似場(chǎng)景的仿真業(yè)務(wù)活動(dòng)中。
3)通過(guò)創(chuàng)建仿真APP,借助SPDM的流程集成功能將經(jīng)驗(yàn)知識(shí)、數(shù)據(jù)、工具整合和固化,不僅避免了由于人員流失造成的知識(shí)損失,更重要的是消除了人為因素導(dǎo)致的產(chǎn)品性能驗(yàn)證方法多變、結(jié)果變化較大的情況,為企業(yè)形成可靠統(tǒng)一的仿真流程積累仿真經(jīng)驗(yàn)。企業(yè)將成熟的仿真流程固化為知識(shí)資產(chǎn),同時(shí)也促進(jìn)知識(shí)的學(xué)習(xí)、共享、復(fù)用和創(chuàng)新。