楊創戰,劉 杰,王 魁,蘆 靜(火箭軍工程大學理學院,西安 710025)
基于VB和ANSYS有限元分析系統的設計與研究
楊創戰,劉 杰,王 魁,蘆 靜
(火箭軍工程大學理學院,西安 710025)
介紹了ANSYS二次開發相關知識和技巧,以及如何實現Visual Basic6.0和ANSYS的連接,借助Visual Basic6.0開發友好、方便、易用的人機交互界面,對難以理解和掌握的ANSYS命令流進行后臺封裝,開發出參數化的有限元分析系統,極大的減小了復雜構件研究和設計的工作量,提高了工程設計的效率。
Visual Basic6.0;ANSYS;有限元分析
有限元法,也叫有限單元法,它的基本思想是將一個結構或者連續體的求解域離散為若干個域(單元),并通過其邊界上的節點相互連接成為組合體。有限元分析是求解偏微分方程的一種數值方法,是一種高效能、常用的計算方法。隨著信息技術在各領域的迅速發展,CAD/CAM/CAE技術已得到了廣泛的應用,從根本上改變了傳統的設計、生產、組織模式,對推動現有企業的技術改造、帶動整個產業結構的變革、發展新興技術、促進經濟增長都具有十分重要的意義。現在工程技術的發展要求計算能力的不斷提高,應用大型的商業通用軟件也是提高計算能力的一種途徑。
ANSYS是一個功能強大、簡單易學,是最通用和高效的通用有限元分析軟件之一,擁有全球最大的用戶群,它融結構、傳熱學、流體、電磁、聲學和爆破分析于一體,具有強大的前后處理及計算分析能力。命令流是ANSYS軟件的一大特色,功能強大且使用方便,APDL命令流是參數化有限元分析、優化設計的基礎,為二次開發提供了可能。Visual Basic6.0軟件是一種面向對象的程序化設計語言,易于開發友好的人機互動界面。因此本文就將Visual Basic6.0和ANSYS有機結合起來,開發出針對復雜部件的有限元分析系統,使得普通的設計開發人員,就可以很方便的進行復雜構件的有限元分析,極大的提高了產品開發設計的效率。
ANSYS典型的分析過程一般由前處理,加載求解和后處理三部分組成。前處理過程主要是由實體建模和網格劃分兩部分。ANSYS的實體建模功能非常強大,可以自頂而下,也可以自下而上,除此還具備布爾運算、延伸、旋轉等一系列建模輔助功能。也可以通過其他三維建模軟件建立模型,然后導入到ANSYS中進行分析。在ANSYS中還具有自適應網格劃分功能,可以進行高質量的單元網格劃分。加載與求解過程主要就是進行載荷類型,邊界條件的定義,是構件的受力狀態接近于實際情況。后處理過程更多的就是將前面的分析結果調用出來,以圖形或者曲線的方式展現出來。
ANSYS具有良好的二次開發環境,這為ANSYS的功能完善優化提供了可能,同時也為非專業人員輕松使用ANSYS進行有限元分析提供了可能。參數化設計語言(APDL)可以在ANSYS中實現參數化建模,參數化網格劃分,參數化加載求解等操作,這樣的參數化分析常應用于模型頻繁修改的狀況,極大的方便了設計人員。尤其對于復雜構件應用參數化的設計思想更為方便快捷。
有限元分析系統設計思想主要是:利用Visual Basic6.0軟件編寫良好的用戶界面,主要用來輸入復雜構件的載荷參數和分析參數;利用參數化設計語言APDL編寫命令流文件,以實現ANSYS分析程序的封裝,用戶看到的只是良好的人機交互界面,復雜的分析處理過程都在后臺完成,這樣使得非專業人員無需進行大量的培訓學習也可以輕松完成對復雜構件的有限元分析。分析系統最后展現在用戶面前的只是分析得到的圖形或者曲線。極大的體現了分析系統的方便快捷。
參數化有限元分析系統實現過程:工程技術人員在用戶界面下,第一步是輸入基本分析參數;第二步則是根據用戶輸入參數形成APDL命令流文件;第三步是利用Visual Basic6.0調用ANSYS分析軟件進行后臺批處理操作;第四步是查看分析結果。
分析系統中對于復雜構件參數的輸入,主要利用VB中的“Label”和“TextBox”控件編寫參數輸入界面,輸入基本分析參數和載荷參數,基本分析參數相對固定,這個很容易實現,載荷參數則比較多,為了體現本有限元分析系統的通用性,需要具體研究構件參數的代表性;APDL命令流的形成可以先采用菜單方式對復雜構件進行靜力學或者動態分析,分析結束后就會在ANSYS中自動形成的*.log文件,我們對其進行簡單的編輯修改就可得到所需要的命令流文件。這種方法相對比較簡單,對開發者要求也比較低,不用很熟練的掌握APDL語言,但是這種方法生成的命令流文件相對比較冗余,尤其對于復雜構件,修改起來要耗費大量的工作量;要形成有限元分析系統的APDL動態命令流文件,就必須在輸入參數后生成的可傳輸的動態數據文件,格式一般為*.txt,我們主要利用‘print’命令直接將命令流逐條形成,然后把它插入到提前編寫的分析計算命令流文件中,最終就形成了已讀入參數的命令流文件;然后利用Visual Basic6.0調用ANSYS軟件,在Visual Basic 6.0中它的實現方法是通過Visual Basic 6.0中的窗口函數shell()來實現的,這一過程體現了用Visual Basic 6.0對ANSYS進行封裝,ANSYS的整個分析處理都是在后臺進行的,用戶無法看到復雜的求解處理過程,只展現良好的人機交互界面;除了正常的調用外,我們還需要在VB里,用計時器Timer1每隔一段時間來檢查一次,來判斷ANSYS后臺運行是否結束。具體的方法開發者在界面中添加Timer控件;ANSYS在進行完后臺批處理后,用戶要想看到分析得到的圖形或者曲線時,主要是添加一個Image1控件,并添加相應的代碼,這樣就可以輕松實現了。
ANSYS分析功能十分強大,但要熟練掌握并精通復雜構件的有限元分析,這對非專業人士來說就要花費大量的精力和時間,我們將VB和ANSYS二次開發相結合,開發出針對某一種復雜構件的專業的該方式可以有效的考慮到不均中所可能需要的管道敷設間的協調作用,靈活度更高。而通過系統的有效開發應用,也有效的提升管路優化不均的實際效果。
船舶管路綜合布局優化是一項復雜而繁瑣的工作,涉趣的面比較廣,要考慮的細節也比較泛,團隊協作時要保持情報共享、步調一致,對于不同的管種要考慮好空間的分布情況,盡量避免錯綜復雜,這樣會增加安裝的難度,不利于船廠的成本控制以及后期維護的難度。
總而言之,良好的管路布局對提高船舶管系設計質量,縮短船舶總體設計周期,提高船舶設計建造效益等意義重大。
[1]王晨勇,薛繼,崔健等.基于維修性的船舶管路布局優化研究[J].農家科技(下旬刊),2014,(1):235-235.
[2]范晶晶,汪烏日娜,王晨勇等.船舶管路布局優化方法及應用研究[J].農家科技(下旬刊),2014,(2):235-235.
[3]王運龍,王晨,韓洋等.船舶管路智能布局優化設計[J].上海交通大學學報,2015,49(4):513-518.
10.16640/j.cnki.37-1222/t.2016.18.255