0 前言
基于二次開(kāi)發(fā),將有限元建模過(guò)程抽取出來(lái),編寫(xiě)成規(guī)范化的程序,可以極大地提高建模的效率,節(jié)省人力成本,縮短開(kāi)發(fā)周期,同時(shí)減少乃至避免模型錯(cuò)誤,提高模型的規(guī)范化以及極大地便于后期模型的維護(hù)、更新以及優(yōu)化。本文以在HyperMesh的前處理環(huán)境下,基于TCL/TK,討論前處理建模二次開(kāi)發(fā)的可能性以及優(yōu)越性。
1 基于TCL/TK的手機(jī)整機(jī)跌落分析的二次開(kāi)發(fā)
1.1模型描述
一部手機(jī)的模型規(guī)模大致在200-300個(gè)部件之間(有限元模型模擬要求),完成整機(jī)的模型網(wǎng)格化后,就需要通過(guò)BOM表建立部件的材料、屬性以及邊界條件。在HypeMesh(Abaqus Template)中,部件(Component)、屬性(Property)、材料(Material)三者的連接關(guān)系如下:
圖1 部件、屬性與材料的連接關(guān)系
在整機(jī)跌落分析中,我們需要建立的邊界條件是,在規(guī)定的特定的規(guī)范下,例如1.5m高度自由跌落,通過(guò)跌落高度,計(jì)算出整機(jī)快要接觸地面時(shí)的初始速度。計(jì)算公式為:
公式一 手機(jī)跌落分析初始速度計(jì)算公式
此外,地面簡(jiǎn)化為剛體,并且約束地面所有自由度。
1.2二次開(kāi)發(fā)思路
首先,我們需要建立標(biāo)準(zhǔn)的材料庫(kù),以便于我們?cè)诤笃谧詣?dòng)調(diào)用。
通過(guò)對(duì)于跌落模型的分析,我們可以通過(guò)BOM表中的材料與部件的對(duì)應(yīng)關(guān)系,通過(guò)編程,針對(duì)模型中的每一個(gè)部件去BOM表中查找對(duì)應(yīng)的材料信息,然后循環(huán)調(diào)用,導(dǎo)入我們模型中所需要的材料信息以及厚度信息。然后通過(guò)單元類(lèi)型綜合厚度信息,建立與之對(duì)應(yīng)的屬性并且將屬性賦予部件。
實(shí)際上,根據(jù)分析和經(jīng)驗(yàn),建立屬性和導(dǎo)入材料是在這個(gè)過(guò)程中是最繁重的工作內(nèi)容,通過(guò)這樣一個(gè)循環(huán)調(diào)用的過(guò)程,則可以在無(wú)人干預(yù)的情況下,快速自動(dòng)并且無(wú)差錯(cuò)的完成這項(xiàng)耗時(shí)耗力的工作。
1.3代碼實(shí)現(xiàn)
代碼實(shí)現(xiàn)分為兩個(gè)部分:GUI部分以及過(guò)程實(shí)現(xiàn)部分。
其中,GUI部分如下圖所示:
圖2 GUI部分
通過(guò)上圖,將整個(gè)的整機(jī)跌落建模過(guò)程固化的一個(gè)面板中,可以極大地提高建模效率,簡(jiǎn)化操作。
1.4建模示例
以某整機(jī)跌落分析為例,模型網(wǎng)格化后模型情況如下圖所示:
圖3 手機(jī)跌落分析有限元模型
其簡(jiǎn)單的BOM表如下:
圖4 手機(jī)零部件BOM表
材料庫(kù)如下圖所示:
圖5 材料庫(kù)清單
通過(guò)以上二次開(kāi)發(fā)插件完成后的模型如下圖所示:
圖6 通過(guò)TCL二次開(kāi)發(fā)后的界面
1.5小結(jié)
通過(guò)以上建模示例可以看出,通過(guò)二次開(kāi)發(fā)插件建模,在極大地提高建模效率的同時(shí),所建立出來(lái)的模型是標(biāo)準(zhǔn)化的、規(guī)劃化的,這種方法建模,可以完全解決不同的工程師在建模習(xí)慣上的差異性。
2 二次開(kāi)發(fā)在汽車(chē)整車(chē)結(jié)構(gòu)有限元模型中的應(yīng)用
通過(guò)以上二次開(kāi)發(fā)在手機(jī)跌落建模過(guò)程中的應(yīng)用,其優(yōu)越性是顯而易見(jiàn)的。不言自明的是,同樣的,二次開(kāi)發(fā)在汽車(chē)整車(chē)有限元模型的建立過(guò)程中也大有用武之地。
筆者在工作過(guò)程中,已經(jīng)將汽車(chē)開(kāi)閉件的抗凹性分析流程化?拱挤治龅睦щy性在于測(cè)試點(diǎn)比較的多,當(dāng)你建好某一個(gè)測(cè)試點(diǎn)的模型時(shí),在做其他的測(cè)試點(diǎn)則需要手動(dòng)去移動(dòng)壓頭,重新建立局部坐標(biāo)系,更新載荷方向。如果一個(gè)開(kāi)閉件的測(cè)試點(diǎn)達(dá)到七八個(gè)乃至十幾個(gè),那么,四門(mén)兩蓋總共加起來(lái)就有五六十個(gè)測(cè)試點(diǎn)需要單獨(dú)建模,工作量可想而知。同時(shí),由于是隱式分析(Abaqus),不同的建模差異,其模型的收斂性也是一個(gè)比較大的考驗(yàn)。通過(guò)二次開(kāi)發(fā),可以很方便的解決上述問(wèn)題。
其二次開(kāi)發(fā)思路與上述手機(jī)整機(jī)跌落類(lèi)似,上述建立屬性和材料信息的代碼可以再這里重用。其他的部分,同樣也需要建立標(biāo)準(zhǔn)的壓頭庫(kù),通過(guò)代碼編寫(xiě),自動(dòng)在壓頭庫(kù)中選擇需要的壓頭并導(dǎo)入到現(xiàn)有模型中,然后只需要在目標(biāo)測(cè)試點(diǎn)出選擇關(guān)鍵的一個(gè)單元,插件即可以自動(dòng)完成包括重新定位、局部坐標(biāo)系、接觸關(guān)系以及載荷加載、分析步的建立,根本不需要去手動(dòng)干預(yù)。
這樣建立出來(lái)的模型,除了測(cè)試點(diǎn)不同外,模型的其他部分完全相同,通過(guò)調(diào)節(jié)好壓頭的接觸關(guān)系,所建立出來(lái)的模型在收斂性上也是非常好的。
二次開(kāi)發(fā)在汽車(chē)建模中的另一個(gè)應(yīng)用是在懸架建模中。由于懸架的結(jié)構(gòu)比較的復(fù)雜,模型中包含很多的連接單元(connector單元),如彈簧單元、減震器、導(dǎo)向單元等等,連接單元的建立比較復(fù)雜,并且類(lèi)型眾多,同時(shí)很多類(lèi)型的連接單元都需要建立局部坐標(biāo)系。如此復(fù)雜的模型,很容易建出差異巨大的模型和收斂性不好甚至的結(jié)果不準(zhǔn)確的模型。所以,通過(guò)將懸架的建模過(guò)程流程化是很有必要的。
在懸架的二次開(kāi)發(fā)方面,只需要知道一些必要的硬點(diǎn)信息,同時(shí)將連接單元的類(lèi)型信息賦予到節(jié)點(diǎn)編號(hào)當(dāng)中,然后通過(guò)代碼,解析出節(jié)點(diǎn)編號(hào)中所攜帶的信息,就可以自動(dòng)化完成懸架其他所有的建模過(guò)程。
3 二次開(kāi)發(fā)在其他可能的應(yīng)用場(chǎng)景中的應(yīng)用
當(dāng)然,二次開(kāi)發(fā)的應(yīng)用場(chǎng)景絕不僅僅只限于以上過(guò)程當(dāng)中,二次開(kāi)發(fā)在提高工程師的建模效率和準(zhǔn)確率上是有不可替代的地位的。例如,在用RigidBody做螺栓連接時(shí),可能需要手動(dòng)去一個(gè)一個(gè)選擇螺栓孔上的節(jié)點(diǎn),通過(guò)簡(jiǎn)單的二次開(kāi)發(fā),可以快速的只去選擇螺栓孔上的單一節(jié)點(diǎn)就完成整個(gè)RigidBody的建立。其思路是通過(guò)所選擇的螺栓孔上的節(jié)點(diǎn)信息,得到螺栓孔的自由邊,然后通過(guò)自由邊反過(guò)來(lái)得到螺栓孔上所有的節(jié)點(diǎn),建立RigidBody;在比如對(duì)于CAD數(shù)據(jù)的處理,由于設(shè)計(jì)部門(mén)過(guò)來(lái)的幾何數(shù)據(jù)可能每個(gè)部件的名稱(chēng)比較的凌亂,通過(guò)二次開(kāi)發(fā),去解析部件所在的Assembly,將部件的名稱(chēng)修改為正確的名稱(chēng);另一個(gè)例子在整個(gè)汽車(chē)碰撞模型與結(jié)構(gòu)剛強(qiáng)度模型的轉(zhuǎn)化上。由于整車(chē)碰撞模型與結(jié)構(gòu)剛強(qiáng)度所使用的求解器不同或者其建模要求存在差異,所以在一些建模方法上也就存在相當(dāng)大的差異,可以通過(guò)二次開(kāi)發(fā)的方法,很方便的將碰撞模型的建模轉(zhuǎn)化為剛強(qiáng)度分析中所要求的建模方法。比如對(duì)于白車(chē)身RigidBody的轉(zhuǎn)化,可能在碰撞模型當(dāng)中,RigidBody的independent node是建立在螺栓孔上的節(jié)點(diǎn),而剛強(qiáng)度中RigidBody的independent node則要求建立螺栓孔的中心處,如果在拿到碰撞模型中的白車(chē)身部分的時(shí)候,需要轉(zhuǎn)化RigidBody。而白車(chē)身的螺栓連接何其多,大約有上千個(gè),如果手動(dòng)的一個(gè)一個(gè)去手動(dòng)重建,其工作量可想而知,同時(shí)非常容易就會(huì)漏掉一些螺栓連接。通過(guò)二次開(kāi)發(fā)可以非?旖莶⑶液敛贿z漏的轉(zhuǎn)化這些RigidBody。
4 總結(jié)
通過(guò)以上種種的簡(jiǎn)單的討論,我們可以看出來(lái)二次開(kāi)發(fā)對(duì)于有限元模型建模的重要性。它不僅可以極大地提高工程師的工作效率,將工程師從繁重單調(diào)的建模工作中解放出來(lái),減少工程建模出錯(cuò)的概率。另一個(gè)更加重要的好處就是,將建模的過(guò)程流程化后,所建立出來(lái)的模型不會(huì)因?yàn)椴煌墓こ處煛⒉煌捻?xiàng)目、不同的時(shí)間而存在很大的差異,便于我們對(duì)于模型進(jìn)行排錯(cuò)、調(diào)試、維護(hù)以及更新。同時(shí),在開(kāi)發(fā)的不同階段,設(shè)計(jì)部門(mén)可能會(huì)對(duì)部件結(jié)構(gòu)進(jìn)行優(yōu)化改進(jìn),而通過(guò)二次開(kāi)發(fā)出來(lái)的模型更加有利于工程師對(duì)于之前自己所做模型的可讀性。
當(dāng)然,二次開(kāi)發(fā)是一個(gè)很大的概念,這里只是在筆者常用的工作環(huán)境下加以了簡(jiǎn)單且粗略的討論。比如在其他的很多領(lǐng)域也會(huì)用到二次開(kāi)發(fā),比如Abaqus中利用二次開(kāi)發(fā)對(duì)于模型結(jié)果進(jìn)行后處理,通過(guò)二次開(kāi)發(fā)建立自己所需要的本構(gòu)模型等等。
實(shí)際上,二次開(kāi)發(fā)都是在一定的平臺(tái)上實(shí)現(xiàn)的,它是軟件開(kāi)發(fā)商在其自身的軟件功能上,給用戶提供的一個(gè)很好的擴(kuò)展和定制化功能,絕大部分的軟件都會(huì)提供類(lèi)似的擴(kuò)展接口,比如Abaqus提供的Python接口,用戶子程序需要用到的Fortran接口,Ansa提供的C接口等等,其目的就是為了更好的為工程師的工作提供更大的想象空間以及便利性。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴(lài)品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:2014產(chǎn)品創(chuàng)新數(shù)字化征文:基于TCL二次開(kāi)發(fā)有限元建模的流程化