责任编辑:
只要82分
时间:2021-01-29
来源:《技术邻》——长安CAE
责任编辑:
只要82分
时间:2021-01-29
来源:《技术邻》——长安CAE
基于ANSYS的VB计算程序开发
1 概述
Visual Basic适用性较强,能够与很多软件进行对接,通过VB设计GUI界面结合相关计算软件能够实现某些计算的重复进行,相比修改计算源程序而言工作量减少很多,对工程设计尤其方便。某一类相同的结构,当结构尺寸不同,载荷大小不同,只需要通过设计的程序稍作参数修改就可以再次计算。
本次采用VB程序语言,结合大型通用有限元计算软件ANSYS,开发一个简单的计算程序,设计时尽量让程序界面清晰。最终实现的界面如图1所示。
图1 程序界面
2 需求
如图1中所示,界面中的图表示将要进行计算的两根垂直的梁结构,长度分别为a和b,梁的截面为矩形,尺寸为h×w,在水平梁的左端承受集中载荷f的作用,需要求解梁的剪力和弯矩,该问题属于典型的材料力学问题,采用经典材料力学就可以求解,在这里采用有限元的方法进行计算。
开发的程序主要有5个部分:基本设置(包括项目名称和工作目录,也就是计算后的文件保存的位置)、材料和载荷参数的设置、几何尺寸的设置、示意图以及求解。
3 方法
针对设计需求,先利用VB设计程序的GUI部分。
(1)从VB控件库里添加三个GroupBox、一个Button和一个PictureBox,如图2所示。
图2 基本控件
(2)设置各容器组件的名称,并分别添加Label标签和Textbox对话框,用于参数设置。如图3所示,分别设置Label的名称和Textbox的名称。
图3 控件属性设置
(3)设置PictureBox的图片。在PictureBox控件属性选项了点击image选项,弹出如图4所示的界面,点击import即可选取需要加载的图片。完成前面步骤之后的界面便如图1所示。
图4 图片加载
(4)完成程序界面设计之后,需要将界面与语言进行绑定。该次程序主要的功能是通过自动读取界面的参数实行ANSYS的自动运行,因而主要功能使通过按钮button完成的。双击Button(计算)按钮,进入vb代码界面,如图5所示,该段代码为VB自动加载的,为一个函数,点击计算按钮之后便运行此函数。
图5 VB自动生成的代码
(5)编写计算按钮的程序。VB调用ANSYS采用的使shell函数,通过shell函数启动ANSYS后,ANSYS自动读入批处理文件,然后进行批处理计算。而批处理文件需要先生成。VB采用PrintLine函数向打开的文件里面逐行输出APDL命令,具体实现代码如图6所示,在此段代码中需要借助界面输入的参数需要进行替换,如图中黑色字体部分所示。其中FileOpen函数用于打开一个txt文件。
图6 VB输出批处理文件代码
(6)程序运行。程序编写完成之后,即可运行测试。点击Start,在弹出的程序界面输入参数,如图7所示。
图7 参数设置
(7)运行结果。参数设置完毕,点击“计算”,发现ANSYS启动了一个黑色的框,直到计算完毕,黑框关闭,设置的工作目录下生产结果文件,如图8所示。
图8 生成的结果文件
打开其中的db文件,即可显示计算结果如图9所示。其实计算结果可以在VB编写的程序界面显示,此次仅就计算进行设计。
图9 ANSYS计算结果