基于ANSYS的VB計(jì)算程序開(kāi)發(fā)

基于ANSYSVB計(jì)算程序開(kāi)發(fā)

1 概述

Visual Basic適用性較強(qiáng),能夠與很多軟件進(jìn)行對(duì)接,通過(guò)VB設(shè)計(jì)GUI界面結(jié)合相關(guān)計(jì)算軟件能夠?qū)崿F(xiàn)某些計(jì)算的重復(fù)進(jìn)行,相比修改計(jì)算源程序而言工作量減少很多,對(duì)工程設(shè)計(jì)尤其方便。某一類相同的結(jié)構(gòu),當(dāng)結(jié)構(gòu)尺寸不同,載荷大小不同,只需要通過(guò)設(shè)計(jì)的程序稍作參數(shù)修改就可以再次計(jì)算。

本次采用VB程序語(yǔ)言,結(jié)合大型通用有限元計(jì)算軟件ANSYS,開(kāi)發(fā)一個(gè)簡(jiǎn)單的計(jì)算程序,設(shè)計(jì)時(shí)盡量讓程序界面清晰。最終實(shí)現(xiàn)的界面如圖1所示。

3.1.png

1 程序界面

2 需求

如圖1中所示,界面中的圖表示將要進(jìn)行計(jì)算的兩根垂直的梁結(jié)構(gòu),長(zhǎng)度分別為ab,梁的截面為矩形,尺寸為h×w,在水平梁的左端承受集中載荷f的作用,需要求解梁的剪力和彎矩,該問(wèn)題屬于典型的材料力學(xué)問(wèn)題,采用經(jīng)典材料力學(xué)就可以求解,在這里采用有限元的方法進(jìn)行計(jì)算。

 開(kāi)發(fā)的程序主要有5個(gè)部分:基本設(shè)置(包括項(xiàng)目名稱和工作目錄,也就是計(jì)算后的文件保存的位置)、材料和載荷參數(shù)的設(shè)置、幾何尺寸的設(shè)置、示意圖以及求解。

3 方法

針對(duì)設(shè)計(jì)需求,先利用VB設(shè)計(jì)程序的GUI部分。

1)從VB控件庫(kù)里添加三個(gè)GroupBox、一個(gè)Button和一個(gè)PictureBox,如圖2所示。

3.2.png

2 基本控件

2)設(shè)置各容器組件的名稱,并分別添加Label標(biāo)簽和Textbox對(duì)話框,用于參數(shù)設(shè)置。如圖3所示,分別設(shè)置Label的名稱和Textbox的名稱。

3.3.png

3 控件屬性設(shè)置

3)設(shè)置PictureBox的圖片。在PictureBox控件屬性選項(xiàng)了點(diǎn)擊image選項(xiàng),彈出如圖4所示的界面,點(diǎn)擊import即可選取需要加載的圖片。完成前面步驟之后的界面便如圖1所示。

3.4.png

4 圖片加載

4)完成程序界面設(shè)計(jì)之后,需要將界面與語(yǔ)言進(jìn)行綁定。該次程序主要的功能是通過(guò)自動(dòng)讀取界面的參數(shù)實(shí)行ANSYS的自動(dòng)運(yùn)行,因而主要功能使通過(guò)按鈕button完成的。雙擊Button(計(jì)算)按鈕,進(jìn)入vb代碼界面,如圖5所示,該段代碼為VB自動(dòng)加載的,為一個(gè)函數(shù),點(diǎn)擊計(jì)算按鈕之后便運(yùn)行此函數(shù)。

3.5.png

5 VB自動(dòng)生成的代碼

5)編寫(xiě)計(jì)算按鈕的程序。VB調(diào)用ANSYS采用的使shell函數(shù),通過(guò)shell函數(shù)啟動(dòng)ANSYS后,ANSYS自動(dòng)讀入批處理文件,然后進(jìn)行批處理計(jì)算。而批處理文件需要先生成。VB采用PrintLine函數(shù)向打開(kāi)的文件里面逐行輸出APDL命令,具體實(shí)現(xiàn)代碼如圖6所示,在此段代碼中需要借助界面輸入的參數(shù)需要進(jìn)行替換,如圖中黑色字體部分所示。其中FileOpen函數(shù)用于打開(kāi)一個(gè)txt文件。

3.6.png

6 VB輸出批處理文件代碼

6)程序運(yùn)行。程序編寫(xiě)完成之后,即可運(yùn)行測(cè)試。點(diǎn)擊Start,在彈出的程序界面輸入?yún)?shù),如圖7所示。

3.7.png

7 參數(shù)設(shè)置

7)運(yùn)行結(jié)果。參數(shù)設(shè)置完畢,點(diǎn)擊“計(jì)算”,發(fā)現(xiàn)ANSYS啟動(dòng)了一個(gè)黑色的框,直到計(jì)算完畢,黑框關(guān)閉,設(shè)置的工作目錄下生產(chǎn)結(jié)果文件,如圖8所示。

3.8.png

8 生成的結(jié)果文件

打開(kāi)其中的db文件,即可顯示計(jì)算結(jié)果如圖9所示。其實(shí)計(jì)算結(jié)果可以在VB編寫(xiě)的程序界面顯示,此次僅就計(jì)算進(jìn)行設(shè)計(jì)。

3.9.png

9 ANSYS計(jì)算結(jié)果

登錄后免費(fèi)查看全文
立即登錄
App下載
技術(shù)鄰APP
工程師必備
  • 項(xiàng)目客服
  • 培訓(xùn)客服
  • 平臺(tái)客服

TOP

3
2
1