欢迎来到天天文库
浏览记录
ID:35995210
大小:69.00 KB
页数:6页
时间:2019-04-29
《autocad与ansys数据接口的开发研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、AutoCAD与Ansys数据接口的开发研究及在工程中的应用摘要:利用AUTOCAD中VBA语言进行二次开发,真正实现了在AutoCAD中建模,将数据导入到ansys进行计算分析的方法。通过淮河临淮岗拦河大坝主坝工程的有限元前处理工作表明,该方法可以快速完成有限元前处理工作,具有较强的实用价值。关键词:AutoCAD,ansys,VBA,二次开发1、问题的提出随着大型通用有限元分析软件Ansys在国内各领域的广泛应用,对Ansys的研究也越来越多。在工程计算领域,Ansys以其强大的结构分析功能,为复杂问题的研究提供了强有力的工具,越来越多的设计人员开始
2、利用ansys进行计算分析[1-3]。众所周知,在有限元分析中,建模的准确及有限元网格的质量对计算结果有着至关重要的影响[4]。在复杂问题有限元分析过程中,建模所花费的时间往往非常可观。尽管Ansys的建模技术很强大,但和专业绘图软件AutoCAD相比,其效率仍然相差很多。并且几乎所有的工程图纸都是在AutoCAD平台下绘制的,如果直接能够从AutoCAD中将图元信息导入到Ansys中,将是一个大大提高建模效率的手段。遗憾的是,尽管Ansys提供了和AutoCAD的接口(SAT文件)[5],但能够导入的图元很有限,仅限于面域和实体,并且不支持DXF格式的
3、文件的导入,对于稍复杂的工程问题,采用直接导入的方法根本无法实现。由于AutoCAD都有着良好的开放性,为用户提供了许多二次开发的工具。通过利用二次开发的手段实现AutoCAD向Ansys传递数据,成了解决问题的方向。AutoCAD下二次开发的语言很多[6]。如Autolisp、ADS、ARX、VISUALLISP、VBA等。无论用何种语言只要思路正确,都可以达到目标。但综合比较运行速度、界面生成、编程实现难易各方面因素,利用VBA语言无疑是最理想的途径。VBA语言[7]最早是建立在Office97中的标准宏语言,其全称是VisualBasicforAp
4、plication,它的魅力来自两个方面:1、它与visualbasic有着几乎相同的开发环境和语法,功能强大且易于掌握。2、在于它的for6application功能,即它的针对性非常强。它驻留在主程序的内部,使其结构精简,且代码运行效率非常高。AutoDesk公司自它的AutoCADR14.01版开始,内置了VBA开发工具,并且逐步加大了对VBA重视的力度,使得VBA在短时间内成为二次开发的利器。本文利用VBA语言,实现了在AutoCAD下将任意复杂的二维模型导入到ANSYS的方法,为ansys的快速建模提供了一个有效的途径。1、解决的思路及程序实现
5、大量的工程问题,不仅对结构部分需要计算,还要考虑结构部分和地基部分的共同作用。以水电站的地下厂房为例,对地下厂房的输水管等管线均需要划分超单元进行模拟,局部的地方需要手工加密,同时还要考虑断层、地层等因素的影响,对大型的工程而言,划分的平面超单元有上百个。这样,计算区域的建模,如果利用ansys来完成,工作十分繁重且很容易出错。然而,这项工作又必不可少,因为ANSYS网格生成功能再强大,也不会自动识别需要重点研究的区域。通过AutoCAD来完成计算区域的建模工作将大大提高效率。因为在AutoCAD中,有工程图纸作为底图,线段的绘制、修改都比ansys方便
6、得多。图1图2有限元前处理工作主要是获得结点坐标信息、单元信息及材料信息,在获得结点坐标信息时,通过查询AutoCAD下每一条线段属性的方法并不能得到全部结点坐标信息。因为在AutoCAD中,两条线段的交接大多属于图1的方式,这样在查询线段的属性时,无法得到交点的坐标信息,这样就少了一个有限元结点。如果将所有类似的交接打断重画,成为四条线段(图2),则耗时太多,效率反而更低,无疑是不可取的。所以,只能够通过查询所有交点的坐标才能够获取正确的结点坐标信息。在VBA语言中,有一个非常有用的函数Getpoint,充分对该函数进行利用,可以快速地将AutoCAD
7、6中将所需的结点信息、单元信息写入数据文件中。Getpoint函数作用是将用户在屏幕上选择点的坐标以三维坐标形式赋给变量。程序语句为:point1=ThisDrawing.Utility.GetPoint(,“enterapoint”)这样,用户点击屏幕上任意一点时,AutoCAD系统便将该点的坐标存放在变量point1中,如果在VBA程序中先引用Getpoint方法,再将这一变量写入一个文件,这样就可以将该点的坐标属性存入文件中了。为了能够对点击过的所有结点坐标快速存入数据文件中,其程序实现步骤如下:首先将打开文件的模式设定为append(添加),在程
8、序中利用循环功能,就可以实现将所有点击过的结点的坐标保存在同一个数据文件中。为了
此文档下载收益归作者所有