基于VB的ANSYS二次開發(fā)在起重機(jī)設(shè)計中的應(yīng)用
2013-06-17 by:廣州有限元分析、培訓(xùn)中心-1CAE.COM 來源:仿真在線
ANSYS是一個廣泛應(yīng)用于眾多工業(yè)領(lǐng)域,集多學(xué)科于一體以有限元為基礎(chǔ)的大型通用CAE:分析軟件.ANSYS軟件的標(biāo)準(zhǔn)分析過程包括:建立分析模型并施加邊界條件、求解計算和結(jié)果分析3個步驟。若要修改結(jié)果,就必須重新建模并重復(fù)上述步驟,當(dāng)模型較復(fù)雜或修改較多時,就相當(dāng)繁雜、費時。而且利用ANSYS對實際工程進(jìn)行分析計算,要求操作人員對所用到的ANSYS模塊比較熟悉,對力學(xué)和有限元的理論知識有比較高的要求。在起重機(jī)設(shè)律過程中,采用ANSYS軟件對其結(jié)構(gòu)進(jìn)行數(shù)值仿真的場合多,計算過程復(fù)雜,涉及ANSYS建模和后處理中的多項高級技術(shù),尤其是起重機(jī)載荷工況計算、強(qiáng)度校核過程復(fù)雜,一般工程技術(shù)人員難于掌握。本文以輪胎式集裝箱龍門起重機(jī)輪叉結(jié)構(gòu)設(shè)計為例,利用ANSYS軟件的二次開發(fā)功能,以VB6.0為工具,運用APDL語言,對ANSYS進(jìn)行二次開發(fā),編制起重機(jī)輪叉結(jié)構(gòu)分析程序。該程序設(shè)計可讓即使從未認(rèn)真學(xué)習(xí)過ANSYS軟件的工程設(shè)計人員也能很好地借助本系統(tǒng)進(jìn)行起重機(jī)輪叉結(jié)構(gòu)有限元分析,具有重要的研究意義。
1 ANSYS實用的二次開發(fā)工具
ANSYS除了具有較為完善的分析功能外,同時還為用戶進(jìn)行二次開發(fā)提供了多種實用工具。如宏(Marco)、參數(shù)設(shè)計語言(APDL)、用戶界面設(shè)計語言(UIDL )及用戶編程特性(UPFs ),其中APDL是一種非常類似于Fortran77的參數(shù)化設(shè)計解釋性語言,其核心內(nèi)容為宏、參數(shù)、循環(huán)命令和條件語句,可以通過建立參數(shù)化模型來自動完成一些通用性強(qiáng)的任務(wù);UIDL是ANSYS為用戶提供專門進(jìn)行程序界面設(shè)計的語言,允許用戶改變ANSYS的圖形用戶界面(GUI)中的一些組項,提供了一種允許用戶靈活使用、按個人喜好來組織設(shè)計ANSYS圖形用戶界面的強(qiáng)有力工具;UPFs提供了一套Fortran77函數(shù)和例程以擴(kuò)展或修改程序的功能,該項技術(shù)充分顯示了ANSYS的開放體系,用戶不僅可以采用它將ANSYS程序剪裁成符合自己所需的任何組織形式(如可以定義1種新的材料,1個新的單元或者給出1種新的屈服準(zhǔn)則),而且還可以編寫自己的優(yōu)化算法,通過將整個ANSYS作為一個子程序調(diào)用的方式實現(xiàn)。
2 基于VB的ANSYS二次開發(fā)在輪叉設(shè)計中的應(yīng)用
針對某一實際工程問題,ANSYS所提供的APDL語言可對ANSYS軟件進(jìn)行封裝。使用APDL語言可以更加有效地進(jìn)行分析計算,可以輕松地進(jìn)行自動化工作(循環(huán)、分支、宏等結(jié)構(gòu)),而且,它是一種高效的參數(shù)化建模手段。使用APDL語言進(jìn)行封裝的系統(tǒng)可以只要求操作人員輸人前處理參數(shù),然后自動運行ANSYS進(jìn)行求解。但完全用APDL編寫的宏還存在弱點。比如用APDL語言較難控制程序的進(jìn)程,雖然它提供了循環(huán)語句和條件判斷語句,但總的來說還是難以用來編寫結(jié)構(gòu)清晰的程序。它雖然提供了參數(shù)的界面輸人,但功能還不是太強(qiáng),交互性不夠流暢。基于VB的ANSYS輪叉有限元分析程序利用VB6.0對ANSYS進(jìn)行封裝。用VR6.0對ANSYS模擬起重機(jī)輪叉結(jié)構(gòu)受力進(jìn)行二次開發(fā),用戶只需輸人諸如輪壓、板厚、管厚等物理性能參數(shù),系統(tǒng)就能自動調(diào)用ANSYS計算程序,自動進(jìn)行網(wǎng)格劃分、受力加載以及自動求解。該系統(tǒng)由于前臺開發(fā)友好、方便、易用的人機(jī)交互界面,對復(fù)雜的、難于理解和掌握的ANSYS命令流進(jìn)行后臺封裝。
2.1程序系統(tǒng)結(jié)構(gòu)
圖1是對ANSYS利用VB6.0進(jìn)行二次開發(fā)系統(tǒng)的結(jié)構(gòu)圖。用戶輸人計算參數(shù),即可調(diào)用后臺的ANSYS命令進(jìn)行計算,ANSYS把計算結(jié)果返回給用戶。進(jìn)行后處理。
2.2 程序系統(tǒng)功能
(1)允許用戶可以根據(jù)實際計算工況,輸入特定的計算參數(shù),包括輪壓、板厚、管厚等。
(2)用戶在輸人各種參數(shù)以后、進(jìn)行計算之前可以對輸入的數(shù)據(jù)進(jìn)行修改、添加和刪除操作,以保證輸入正確的參數(shù)。
(3)用戶通過界面調(diào)用后臺的ANSYS命令流進(jìn)行計算,能夠得到最后的計算結(jié)果文件,供用戶進(jìn)行后處理和結(jié)果分析。
2.3程序的主要子程序和設(shè)計
程序的主要組成有:用戶界面程序、VB調(diào)用接口程序及VB后處理程序。
(1) VB調(diào)用接口程序
VB調(diào)用接口程序在該系統(tǒng)中起著接受用戶界面的輸入、創(chuàng)建進(jìn)程調(diào)用ANSYS模塊、將生成的宏命令文件提交給ANSYS程序進(jìn)行批處理操作的重要作用。
(2) VB后處理程序
VB后處理程序主要是提取計算結(jié)果數(shù)據(jù),經(jīng)過必要的處理,與相應(yīng)的標(biāo)準(zhǔn)值對比,得出該結(jié)構(gòu)設(shè)計是否合理的結(jié)論。
(3)用戶界面程序
用戶界面程序主要完成系統(tǒng)和用戶的交互。用戶界面模塊包括計算參數(shù)輸人和編寫APDL的后處理命令流2部分。用戶點擊編制程序按鈕,系統(tǒng)就會彈出對話框提醒用戶輸人參數(shù),當(dāng)所有的參數(shù)輸入完畢,系統(tǒng)將自動生成用APDL語言進(jìn)行二次開發(fā)的ANSYS計算命令流并以文檔的格式存在指定的目錄下。通過以上思路和步驟,作者成功地開發(fā)出基于VB的ANSYS輪叉有限元分析程序。該程序交互界面如圖2所示。假設(shè)設(shè)計工程師所設(shè)計的輪叉最大輪壓為50t,設(shè)計工程師只要輸入自己選擇的輪叉基本參數(shù)及結(jié)構(gòu)選用的材料(如圖2所示),程序就能計算出最大變形和最大應(yīng)力,并得出設(shè)計工程師的方案是否可行。
3 結(jié)束語
本程序基于VB,通過接口程序調(diào)用ANSYS,讀入編寫的后處理命令流,讀取ANSYS計算的結(jié)果數(shù)據(jù)庫,生成各變量的結(jié)果文件,然后用本程序的后處理程序進(jìn)行強(qiáng)度判斷,進(jìn)而得出結(jié)構(gòu)設(shè)計是否合理的結(jié)論。實踐證明,該程序方便、易用,一般工程技術(shù)人員也能利用本程序進(jìn)行起重機(jī)輪叉結(jié)構(gòu)有限元分析,從而大大減少工程設(shè)計人員的設(shè)計時間,提高設(shè)計質(zhì)量。
相關(guān)標(biāo)簽搜索:基于VB的ANSYS二次開發(fā)在起重機(jī)設(shè)計中的應(yīng)用 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓(xùn) Abaqus培訓(xùn) Autoform培訓(xùn) 有限元培訓(xùn) Solidworks培訓(xùn) UG模具培訓(xùn) PROE培訓(xùn) 運動仿真