沈 波,陳 雙,任 琛,任金虎,張蕊珠
(金航數(shù)碼科技有限責(zé)任公司,北京 100028)
關(guān)鍵字:仿真數(shù)據(jù)管理;工具集成;仿真知識管理;仿真APP
仿真數(shù)據(jù)管理(SPDM)平臺是在線協(xié)作式仿真研發(fā)平臺,可用于管理仿真數(shù)據(jù)和仿真流程,相關(guān)技術(shù)可以支撐不同學(xué)科仿真分析中的常用流程的功能封裝和復(fù)用。在傳統(tǒng)CAE領(lǐng)域的結(jié)構(gòu)仿真分析中,采用的流程、方法、工具基本一致,例如流程通常分為前處理、求解和后處理,方法一般采用有限元法,工具一般采用Patran/Nastran、ABAQUS軟件等。CAE技術(shù)的應(yīng)用極大地提高了機械結(jié)構(gòu)的優(yōu)化設(shè)計能力,但是在仿真過程中逐漸暴露出操作煩瑣、知識復(fù)用不便等問題,例如重復(fù)性地設(shè)置載荷、邊界條件和重復(fù)性交互選擇提取數(shù)據(jù)等,特別是在大量模型或工況需要仿真計算的情況下,會顯著增加仿真工程師的工作量,不利于開展創(chuàng)新研究。因此需要對常用的仿真流程進行集成及管理,形成仿真APP以提高仿真分析的效率。
將服務(wù)部署在統(tǒng)一環(huán)境,通過仿真軟件集成的方式進行APP的建設(shè)和管理,在CAE領(lǐng)域中已開展了相關(guān)研究。GE于2013年推出了Predix平臺,開始了依托工業(yè)互聯(lián)網(wǎng)技術(shù)進行工業(yè)APP開發(fā)的預(yù)先研究及應(yīng)用。崔羽飛等闡述了工業(yè)互聯(lián)網(wǎng)云邊協(xié)同過程中存在的問題,并基于數(shù)據(jù)協(xié)同和模型協(xié)同進行實踐。董長青等研究了以微服務(wù)框架和Docker框架為核心的應(yīng)用云平臺架構(gòu),通過集成方式進行了工業(yè)APP的部署和使用。侯慶坤等針對汽車行業(yè)工業(yè)APP云平臺建設(shè)進行了研究和架構(gòu)規(guī)劃。劉蘇杰等建立一個涉及四個學(xué)科的分布式集成設(shè)計平臺,并完成了多學(xué)科復(fù)雜系統(tǒng)的設(shè)計、仿真和優(yōu)化。其他研究者還研究及應(yīng)用仿真流程集成的相關(guān)技術(shù)解決了工程問題。但大多數(shù)研究側(cè)重IT層面的架構(gòu)規(guī)劃,或側(cè)重解決特定仿真問題,還需要提出一條通用性的解決仿真流程與數(shù)據(jù)管理應(yīng)用的技術(shù)路線,使得設(shè)計師在仿真過程中避免面臨前述業(yè)務(wù)問題的困擾。因此,需要在現(xiàn)有研究的基礎(chǔ)上總結(jié)出常規(guī)仿真APP建設(shè)的范式。
本文探討利用仿真數(shù)據(jù)管理平臺的流程封裝技術(shù)完成結(jié)構(gòu)仿真APP的開發(fā),固化其中需要人工煩瑣操作的過程,形成結(jié)構(gòu)仿真APP,通過固化、規(guī)范化結(jié)構(gòu)仿真的技術(shù)知識,部署在統(tǒng)一的仿真數(shù)據(jù)管理平臺服務(wù)端供工程師使用,實現(xiàn)APP的便捷調(diào)用和計算資源統(tǒng)一管理,進而提高仿真分析效率。
結(jié)構(gòu)仿真APP是指基于互聯(lián)網(wǎng)絡(luò),承載結(jié)構(gòu)仿真知識和經(jīng)驗,滿足結(jié)構(gòu)仿真用戶特定需求的應(yīng)用軟件,即面向工業(yè)產(chǎn)品全生命周期業(yè)務(wù)的需求,將工業(yè)產(chǎn)品及結(jié)構(gòu)仿真過程中的知識、最佳實踐及技術(shù)訣竅封裝而成的應(yīng)用軟件。結(jié)構(gòu)仿真APP的依托平臺是仿真數(shù)據(jù)管理(SPDM)平臺,適用于多人在線協(xié)同工作,可對仿真流程進行集成和管理。如圖1所示,SPDM平臺采用C/S、B/S架構(gòu)的軟件通過開發(fā)的接口進行軟件的封裝,可以驅(qū)動仿真流程的持續(xù)運行,其中的計算調(diào)度服務(wù)器可以實現(xiàn)仿真入口的統(tǒng)一管理,將仿真流程中的不同軟件放在不同的機器中,實現(xiàn)計算資源的整合。
圖1 基于SPDM的APP云部署IT架構(gòu)
軟件封裝將隱性的知識、仿真的經(jīng)驗流程等方法固化在軟件中或應(yīng)用程序中,將成熟的仿真流程封裝為模板即為仿真APP,在進行仿真分析時對仿真APP進行實例化來實現(xiàn)仿真分析流程的復(fù)用,保證仿真分析流程的規(guī)范化,如圖2所示。
圖2 仿真APP創(chuàng)建及應(yīng)用流程
仿真APP中的流程主要是構(gòu)建各個專業(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接口進行集成調(diào)用,形成的結(jié)果可以自動生成報告;在前端界面,依據(jù)用戶的需求進行界面化定制,以方便仿真運行時操作以及結(jié)果查看。將以上過程封裝為具有通用性質(zhì)的模板,即可稱之為仿真APP。
通用的仿真APP的流程內(nèi)容及描述如圖3所示。
圖3 仿真APP的流程內(nèi)容示意圖
仿真APP以仿真流程集成為基礎(chǔ),通過文件解析、數(shù)據(jù)映射、求解調(diào)用、結(jié)果后處理等方式實現(xiàn)數(shù)據(jù)流和文件流的傳遞,通過仿真數(shù)據(jù)管理實現(xiàn)仿真數(shù)據(jù)和文檔的存儲,通過仿真工具集成實現(xiàn)CAE分析的基本功能。
(1)結(jié)構(gòu)仿真APP的建設(shè)
在某結(jié)構(gòu)的隨機分析及后處理APP建設(shè)中,為了實現(xiàn)結(jié)構(gòu)隨機分析與結(jié)果后處理,自動獲取結(jié)果文件,并進行結(jié)果曲線繪制的功能。通過規(guī)范化使用APP的搭建與封裝流程,完成APP的創(chuàng)建,在實例化的用戶界面輸入變量的類型、加速度轉(zhuǎn)換系數(shù)、節(jié)點的編號、方向和軟件版本等內(nèi)容,最終獲取結(jié)果文件中的數(shù)據(jù)和曲線。
隨機分析及后處理APP的后端仿真流程分為兩個相對獨立的活動,分別是結(jié)果提取和結(jié)果后處理,結(jié)果提取活動用于生成各節(jié)點的隨機分析結(jié)果文件,結(jié)果后處理活動用于處理前一步生成的結(jié)果文件并繪制后處理結(jié)果曲線。隨機分析及后處理APP流程中的各基本組件功能詳細(xì)介紹如圖4所示。
圖4 隨機分析及后處理APP的后端仿真流程
APP中的數(shù)據(jù)和參數(shù)描述如下:
輸入?yún)?shù):定義輸出變量的類型、加速度轉(zhuǎn)換系數(shù)、輸出節(jié)點的編號、變量方向和軟件版本。在曲線繪制區(qū),輸入需要繪制曲線的節(jié)點編號、曲線的縱軸標(biāo)簽以及Matlab版本。
輸入文件:頻響分析模型文件FreResp.bdf、結(jié)果文件FreResp.xdb文件和PSD功率譜密度文件。
輸出文件:各所選節(jié)點的RMS結(jié)果文件(.txt格式)、單個節(jié)點的隨機響應(yīng)曲線(.png及.fig格式)。
在后端流程創(chuàng)建完成后,搭建前端的用戶使用UI頁面,定制如圖5所示的使用頁面,頁面中各輸入?yún)^(qū)分別對應(yīng)了APP中暴露出的各參數(shù)。
圖5 隨機分析及后處理流程模板
用戶使用頁面的信息如下:
1)基本信息:“名稱”為顯示該次仿真的名稱,“描述”為針對此次仿真的任務(wù)描述。
2)輸入:“檢索頻響分析模型文件”、“檢索頻響分析結(jié)果文件”為在界面通過搜索獲取頻響分析模型文件(.bdf格式)、結(jié)果文件(.xdb格式);“選擇輸出變量類型”為輸出變量的類型,“變量方向”為輸出變量的方向;“節(jié)點編號”為需要輸出結(jié)果文件的節(jié)點編號,“加速度轉(zhuǎn)換系數(shù)”為公制單位和英制單位之間的轉(zhuǎn)換選項,“Patran版本”為對應(yīng)的Patran軟件安裝路徑;“PSD功率譜密度文件”為上傳PSD功率譜密度文件(.md格式)。
3)輸出:“節(jié)點結(jié)果文件RMS值”為輸出隨機分析及后處理節(jié)點的結(jié)果文件;“繪制曲線的節(jié)點編號”為需要繪制曲線的節(jié)點編號,“曲線縱軸標(biāo)簽”為作曲線圖時縱軸的標(biāo)簽,“Matlab版本”為Matlab軟件的安裝路徑;“曲線預(yù)覽”為隨機分析曲線的預(yù)覽圖片。
4)運行:可分段運行仿真流程,“生成節(jié)點結(jié)果文件”為觸發(fā)自動輸出隨機分析及后處理結(jié)果文件流程運行;“繪制節(jié)點曲線”為可觸發(fā)自動輸出隨機分析曲線圖片流程運行。
(2)結(jié)構(gòu)仿真APP的應(yīng)用
通過將APP實例化,可以形成新的仿真流程。在基本信息區(qū),可輸入或修改顯示的APP名稱和描述。
在輸入?yún)^(qū),通過搜索獲取頻響分析模型文件FreResp.bdf、結(jié)果文件FreResp.xdb文件,上傳PSD功率譜密度文件。定義輸出變量的類型、加速度轉(zhuǎn)換系數(shù)、節(jié)點編號、變量方向和Patran版本。
在使用仿真流程時,在個人使用端進行操作,上傳或在數(shù)據(jù)庫中檢索新的模型,在頁面上選擇不同的輸出變量類型、變量方向、節(jié)點編號和PSD功率譜密度文件,然后在運行區(qū)提交運行,協(xié)同服務(wù)器將計算指令下發(fā)給計算調(diào)度服務(wù)器,計算調(diào)度服務(wù)器選擇對應(yīng)的超算或工作站進行求解作業(yè),在求解完成后,將預(yù)先定義的關(guān)鍵結(jié)果上傳到仿真流程中進行統(tǒng)一管理。
在輸出區(qū),獲取各個節(jié)點的RMS文件和隨機響應(yīng)結(jié)果曲線,輸入不同的節(jié)點編號、曲線的縱軸標(biāo)簽以及Matlab的版本,通過“繪制節(jié)點曲線”按鈕觸發(fā)后處理執(zhí)行生成新的曲線,并將關(guān)鍵結(jié)果顯示在頁面中,供使用者查看或下載。輸出的曲線和結(jié)果文件可下載到本地進行查看或再次加工處理。仿真結(jié)果的離線查看如圖6所示。
圖6 仿真結(jié)果的離線查看
以上仿真的操作步驟可以在頁面上再次修改設(shè)置,進行快速的結(jié)果重新生成,對于結(jié)果提取的效率有極大地提高。
(3)仿真數(shù)據(jù)的查看
在計算完成后,除了在用戶頁面上查看關(guān)鍵仿真結(jié)果,也可以在平臺中查看詳細(xì)的仿真數(shù)據(jù),其中包括了輸入文件、腳本、中間文件及輸出文件等。仿真流程的數(shù)據(jù)存儲及查看如圖7所示。
圖7 仿真流程的數(shù)據(jù)存儲及查看
1)通過隨機分析及后處理這一結(jié)構(gòu)仿真APP的建設(shè)及界面封裝,實現(xiàn)成熟操作流程的便捷化應(yīng)用,實現(xiàn)了通過APP高效完成隨機響應(yīng)分析及后處理的仿真過程;通過與傳統(tǒng)的線下手動處理的設(shè)置過程和求解對比,驗證了該APP具有應(yīng)用方便、操作簡潔、數(shù)據(jù)準(zhǔn)確度高的特點。
2)基于SPDM的仿真APP不僅可以在結(jié)構(gòu)仿真中進行廣泛的推廣與應(yīng)用,其他相關(guān)專業(yè)和學(xué)科的仿真APP技術(shù)路線都可以應(yīng)用于具有類似場景的仿真業(yè)務(wù)活動中。
3)通過創(chuàng)建仿真APP,借助SPDM的流程集成功能將經(jīng)驗知識、數(shù)據(jù)、工具整合和固化,不僅避免了由于人員流失造成的知識損失,更重要的是消除了人為因素導(dǎo)致的產(chǎn)品性能驗證方法多變、結(jié)果變化較大的情況,為企業(yè)形成可靠統(tǒng)一的仿真流程積累仿真經(jīng)驗。企業(yè)將成熟的仿真流程固化為知識資產(chǎn),同時也促進知識的學(xué)習(xí)、共享、復(fù)用和創(chuàng)新。