VB为ANSYS应用的自动化提供了可视化操作平台,可用于参数化编程等应用。
其基本原理是,VB通过其内部函数shell()函数实现对Windows应用程序的调用。利用VB向打开的ANSYS程序写入APDL文件,实现对ANSYS的控制。
对ANSYS调用的具体代码及注释:
Option Explicit
‘变量强制定义控制语句
Private Sub Command1_Click()
‘进入Command1_Click()事件过程
Dim aa
‘定义一变量,用来存放shell()函数的返回值,shell带括号时必须有‘变量存放其返回值,不带参数是不需要
aa=
Shell("C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ANSYS.exe -b -p ane3fl -i shi.txt -o sh.log", 1)
‘shell函数调用ANSYS的语句,最关键语句,详解见下文
Timer1.Enabled = True
‘使用Timer控件,实现对调用结果的检测
End Sub
Private Sub Timer1_Timer()
If Dir(App.Path & "\file.err") <> "" Then
‘App.Path为当前目录路径,语句功能:如果有file.err文件产生,
‘则说明VB的shell函数对ANSYS的调用成功。
MsgBox ("ANSYS运行完毕!")
End If
Timer1.Enabled = False
End Sub
*对语句shell(……,1)的说明:
Shell("C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ANSYS.exe -b -p ane3fl -i shi.txt -o sh.log", 1)
说明:
* 变量aa只是用来存放shell函数的返回值
* C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ANSYS.exe 为ANSYS的安装目录。此处为绝对路径,下文中的shi.txt和sh.log均为相对路径,其相对路径为:
(1)不设置-dir参数时,其相对路径是当前VB工程目录路径;
(2)设置-dir参数时,其相对路径是-dir参数所设置的路径。
!!!!!!!!下面的参数设置均与ANSYS Product Launcher 中的设置一一对应。
* -b为设置ANSYS的Simulation Environment为ANSYS Batch
* -p 为设置ANSYS的License为对应的Product/Feature Names(ANSYS不同模块的产品特征代码,参见Ansys-product-feature.wps文档),本文用的是ane3fl,为Multiphsics模块的特征代码。即为 -p ane3fl (-p ANE3FL)。
图1 ANSYS Product Launcher界面
图2 设置Simulation Environment为ANSYS Batch
* -i (Input File)对应于ANSYS的Input File栏的设置,即所输入的APDL文档(txt文本文件或dat,此处用txt文本文件),见图1。
图3 ANSYS Batch选项下的设置栏
* -o (Output File)对应于ANSYS的Output File栏的设置,为输出的文档,一般为*.log文件。
* shell(……,1)参见shell函数的说明。
Shell("C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ANSYS.exe -b -p ane3fl -j nnnn -i shi.txt -o sh.log", 1)
此段代码与上面的代码相比,只加了一个设置代码:-j nnnn 。-j代表对ANSYS工程文件的Job name 的设置。此处设置的ANSYS的工程文件名为nnnn,则将会在工程目录下产生名为nnnn.db的ANSYS文件。
*设置工作路径,即ANSYS结果文件的存放路径:
图4 代码图
Shell("C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ANSYS.exe -b -p ane3fl -dir G:\ANSYS建模 -j nnnn -i shi.txt -o sh.log", 1)
此段代码与上面的代码相比,只加了一个设置代码:-dir G:\ANSYS建模 。-dir 代表对ANSYS计算结果文件的保存路径进行设置,设置路径为其后跟的路径,此处为 “G:\ANSYS建模”。
注意,此时shi.txt和sh.log文件的相对路径指的就是“G:\ANSYS建模”了,而不是原来的VB工程文件的目录了。
1、代码编辑及窗体设计
图5 代码编辑和窗体设计
2、APDL文件编写
熟练的人可以直接写ANSYS工程的APDL文件,不熟悉的人可以先在ANSYS中操作,然后在保存的.log文件中提取APDL命令流。
图6
3、运行程序
图7
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删