劉助春,張 丹*
(湖南汽車工程職業(yè)學(xué)院,湖南 株洲 412001)
目前,CAE 技術(shù)被國內(nèi)外學(xué)術(shù)界和眾多企業(yè)采用,模擬產(chǎn)品在特定工況下的運(yùn)行情況,分析產(chǎn)品結(jié)構(gòu)的性能,利用數(shù)學(xué)優(yōu)化算法對產(chǎn)品結(jié)構(gòu)進(jìn)行優(yōu)化,從而提高產(chǎn)品性能,縮短產(chǎn)品開發(fā)周期。然而,雖然CAE 技術(shù)的應(yīng)用在一定程度上縮短了產(chǎn)品開發(fā)周期,降低了開發(fā)成本,但目前CAE 技術(shù)的應(yīng)用主要還是基于人工使用計(jì)算機(jī)重復(fù)實(shí)際測試過程,每次分析都需要一個(gè)研究人員來做,迭代有限元建模成為一個(gè)繁瑣且耗時(shí)的過程,實(shí)際產(chǎn)品的設(shè)計(jì)往往需要重復(fù)有限元分析,完全手動的建模分析費(fèi)時(shí)費(fèi)力,結(jié)構(gòu)優(yōu)化效率低下。在有限元建模分析過程中,引入CAE 參數(shù)化設(shè)計(jì)思想和批處理技術(shù),可解決結(jié)構(gòu)優(yōu)化中迭代建模帶來的人工迭代工作量大的問題,大幅度提高結(jié)構(gòu)優(yōu)化效率。
參考文獻(xiàn)[1]開發(fā)了基于ANSYS 二次開發(fā)功能的電梯設(shè)計(jì)參數(shù)化有限元分析軟件。參考文獻(xiàn)[2]以ANSYS 為軟件開發(fā)平臺,利用UG 幾何完成CST 部件有限元模塊的開發(fā),解決了非標(biāo)螺桿裝置部件的有限元模型無法自動創(chuàng)建設(shè)備吸收線切割能量的問題。參考文獻(xiàn)[3]介紹了材料成形計(jì)算模擬中的參數(shù)化有限元方法。參考文獻(xiàn)[4]介紹了基于幾何建模的有限元參數(shù)化建模,基于滿足形狀優(yōu)化問題的應(yīng)用需求,提出了一種有限元模型參數(shù)化建模方法。參考文獻(xiàn)[5]進(jìn)行了CAD 軟件的二次開發(fā),提出了完整的吸收建模模型,模型除了傳統(tǒng)的幾何模型外,還包含材料、等級等模型結(jié)構(gòu)信息,刪除了模型無關(guān)的設(shè)計(jì)信息和其他信息。參考文獻(xiàn)[6]開發(fā)了一種基于Solidworks 的橋式起重機(jī)參數(shù)化設(shè)計(jì)軟件,解決工程圖自動生成過程中位置偏移、焊縫符號缺失等問題。文獻(xiàn)[7]開發(fā)了一種可用于吸能導(dǎo)向結(jié)構(gòu)多目標(biāo)優(yōu)化的參數(shù)化建模優(yōu)化軟件。文獻(xiàn)[8]在合理簡化刀架系統(tǒng)和盤面主次結(jié)構(gòu)的基礎(chǔ)上,選取51 個(gè)結(jié)構(gòu)特征設(shè)置參量將板材有限元模型與滾齒刀盤系統(tǒng)相結(jié)合,開發(fā)了基于ANSYS 使用的APDL 語言的TBM 切削系統(tǒng)有限元參數(shù)建模程序。
目前實(shí)現(xiàn)有限元分析過程參數(shù)化主要有兩種方法:
一種是使用參數(shù)化編程語言開發(fā)有限元分析軟件,通過后臺編程直接建立參數(shù)化有限元模型,其具體流程見圖1。
另一種是在有限元分析軟件中將預(yù)處理和后處理過程以“指令流”的形式進(jìn)行編程,以二次開發(fā)有限元軟件。但是,雖然無論是基于有限元軟件的二次開發(fā),還是直接使用CAE 軟件提供的參數(shù)化設(shè)計(jì)語言建立有限元模型,都可以實(shí)現(xiàn)有限元建模的參數(shù)化和結(jié)構(gòu)優(yōu)化的效率的提升,但是兩種方法各有利弊。
通過參數(shù)化編程語言創(chuàng)建參數(shù)化有限元模型,并完成其他有限元分析步驟,實(shí)現(xiàn)參數(shù)化建模分析的方法,不再需要開發(fā)專門的程序來控制不同程序的接口交換和數(shù)據(jù)交互,過程更加簡潔,但是由于該方法中的有限元模型是直接通過編程語言定義節(jié)點(diǎn)和元素、前后處理過程,而不是在軟件中建立幾何模型,然后將其劃分為網(wǎng)格構(gòu)建有限元模型。因此,很難構(gòu)建復(fù)雜的3D 模型,這種方法也對研究人員的編程水平提出了更高的要求,要求研究人員直接使用參數(shù)化設(shè)計(jì)語言編輯相關(guān)的有限元預(yù)處理指令,而不是修改“指令流”進(jìn)行編程,需要有限元軟件開發(fā)的工作背景和對網(wǎng)格生成的深入了解,這導(dǎo)致該方法的應(yīng)用人群較少,現(xiàn)在越來越多的學(xué)者通過有限元軟件的二次開發(fā)來進(jìn)行參數(shù)化建模。
本研究綜合采納現(xiàn)有的有限元參數(shù)化建模方法的優(yōu)點(diǎn),摒棄其缺點(diǎn),利用CAD 軟件建立幾何模型,然后利用CAE 軟件進(jìn)行網(wǎng)格分割等預(yù)處理,完成第一個(gè)原始有限元模型的構(gòu)建。有限元模型的批量化構(gòu)建是通過用Fortran 語言編寫的外部程序根據(jù)給出的實(shí)驗(yàn)參數(shù)直接修改有限元模型文件中相應(yīng)節(jié)點(diǎn)的坐標(biāo)來實(shí)現(xiàn)的,整體流程見圖2。該方法可以充分利用CAD 軟件和CAE 軟件自身在三維建模與有限元模型處理上的優(yōu)勢,同時(shí)通過在參數(shù)化建模過程中直接由外部程序修改有限元模型文件,免去了重復(fù)調(diào)用CAD和CAE 軟件的麻煩,因此,不會出現(xiàn)不同軟件系統(tǒng)因需要進(jìn)行數(shù)據(jù)交互而出現(xiàn)的軟件兼容性問題。
3D 模型的尺寸變化在微觀上表現(xiàn)為線條或表面的移動,在CAD 軟件中調(diào)整模型大小也是通過使用特定平面作為參考平面移動由點(diǎn)組成的其他線和曲面來完成的。由于移動一條線或曲面本質(zhì)上是移動公共坐標(biāo)中的一些節(jié)點(diǎn)(x、y 和z 坐標(biāo)中的一個(gè)或兩個(gè)坐標(biāo)相同),因此在調(diào)整有限元模型時(shí),既可以先使用CAD 軟件修改模型的大小,也可以直接修改元模型文件中有限的模型節(jié)點(diǎn)信息。首先需要讀取節(jié)點(diǎn)的坐標(biāo)信息,通過節(jié)點(diǎn)的坐標(biāo)來識別和控制節(jié)點(diǎn),選擇參考點(diǎn)的坐標(biāo),找出坐標(biāo)變換值之間關(guān)系和變換值。利用曲面或直線上的節(jié)點(diǎn)有共同坐標(biāo)的性質(zhì),同一曲面或直線上的節(jié)點(diǎn)受共同坐標(biāo)控制,坐標(biāo)變換值和模型大小根據(jù)節(jié)點(diǎn)之間的差異轉(zhuǎn)換值,這樣就不必使用節(jié)點(diǎn)編號來單獨(dú)控制每個(gè)節(jié)點(diǎn)的變化,從而可以通過修改節(jié)點(diǎn)的坐標(biāo)來修改模型大小。
圖3 為簡支梁有限元模型圖,模型長寬高均為400 mm×200 mm×200 mm,模型長寬高減少10 mm(長寬高換算值為-10 mm)。首先,我們通過選擇基點(diǎn)坐標(biāo)為(200,-100,-250)并變換模型的x,y,z 坐標(biāo)來改變模型的大小。
模型長度(Y 方向):模型長度在Y 方向網(wǎng)格數(shù)為20,如果網(wǎng)格數(shù)量保持原樣,整體長度減少10 mm,則每個(gè)網(wǎng)格減少10/20=0.5 mm。在y 方向移動的距離L(一個(gè)節(jié)點(diǎn)的y 坐標(biāo)必須增加或減少L),其他節(jié)點(diǎn)變化的距離不同,與到基點(diǎn)的距離有關(guān)。
式中:Li是節(jié)點(diǎn)i 必須經(jīng)過的距離;yi是節(jié)點(diǎn)i 的y 坐標(biāo)。新節(jié)點(diǎn)坐標(biāo)等于原節(jié)點(diǎn)坐標(biāo)減去節(jié)點(diǎn)行進(jìn)距離L,等于原節(jié)點(diǎn)坐標(biāo)加上節(jié)點(diǎn)變換值。
程序?qū)δP凸?jié)點(diǎn)坐標(biāo)進(jìn)行變換后,將修改后的有限元模型文件導(dǎo)入有限元軟件,觀察尺寸,觀察后變換后的模型尺寸為390×190×190 mm,說明模型已修改,并通過程序使節(jié)點(diǎn)坐標(biāo)成功地達(dá)到了模型長、寬、高減少10 mm 的目的,表明可以通過變換模型節(jié)點(diǎn)的坐標(biāo)來改變模型的大小。
將節(jié)點(diǎn)在模型長、寬、高三個(gè)方向上的運(yùn)動規(guī)律排列,得到節(jié)點(diǎn)坐標(biāo)變換量與尺寸變換值的關(guān)系,得到常用的坐標(biāo)變換方程,如下:
式中:c 為尺寸變換值;l 為待移動節(jié)點(diǎn)與參考點(diǎn)在移動方向上的最大距離,節(jié)點(diǎn)原坐標(biāo)為x原,節(jié)點(diǎn)新坐標(biāo)為x新?;c(diǎn)坐標(biāo)為x基。
變換原理見圖4。圖中a 型的網(wǎng)孔尺寸為10 mm,全長為100 mm。以最左邊的節(jié)點(diǎn)A 為參考點(diǎn),設(shè)置尺寸參數(shù)c 為10 mm,按照上式變換模型a 中除基點(diǎn)外的其他節(jié)點(diǎn)坐標(biāo),則其他節(jié)點(diǎn)依次向右移動1、2.....10 mm,形成新的模型b,新模型b 的每個(gè)網(wǎng)格尺寸為11 mm,總長度為110 mm。
在子程序中編輯變換公式,作為本參數(shù)化建模方法的坐標(biāo)變換基礎(chǔ)工具。根據(jù)具體模型情況,可以根據(jù)需要調(diào)用進(jìn)主程序進(jìn)行參數(shù)化建模。由于不同的模型有不同的變換尺寸,輸入子程序的基點(diǎn)坐標(biāo)、需變化節(jié)點(diǎn)移動坐標(biāo)、移動節(jié)點(diǎn)到基點(diǎn)的最大距離、尺寸參數(shù)都是不同的。
根據(jù)模型的實(shí)際尺寸參數(shù)修改節(jié)點(diǎn)坐標(biāo)后,模型更新。此時(shí)只需按照原件的格式和順序依次填寫公共預(yù)處理信息,修改節(jié)點(diǎn)坐標(biāo)信息,建立新的有限元模型文件new.dyn,完成模型修改。最后將該模塊進(jìn)行封裝,作為子程序由進(jìn)行優(yōu)化的主程序根據(jù)實(shí)驗(yàn)安排表進(jìn)行周期性調(diào)用,根據(jù)實(shí)驗(yàn)?zāi)P妥詣痈掠邢拊P?,?shí)現(xiàn)有限元模型的參數(shù)化優(yōu)化。
在本研究中,筆者通過結(jié)合當(dāng)前兩種主要參數(shù)化建模方法的優(yōu)點(diǎn)并考慮到每種方法的缺點(diǎn),提出了一種新的參數(shù)化建模方法。與參數(shù)化設(shè)計(jì)語言構(gòu)建參數(shù)化有限元模型相比,該方法的建模過程更容易實(shí)現(xiàn),可以處理更復(fù)雜的模型。對于開發(fā)人員在有限元方面的理論至少要求也相對較低,開發(fā)者只需學(xué)習(xí)一門適用于大規(guī)模數(shù)值運(yùn)算處理的面向過程的編程語言,即可將本方法應(yīng)用于相關(guān)產(chǎn)品的參數(shù)化有限元建模軟件的開發(fā),具有較為廣泛的應(yīng)用范圍。