Pro/E二次开发在模型检查技术中的应用
近年来,人们运用CAD/CAE的先进设计方法,提高了产品的设计质量,获得了显著的经济效益,但也逐渐认识到了它在应用中出现的各种问题。在利用有限元法分析结构空间尺寸复杂的产品时,需要将建好的CAD模型转换输出到CAE系统中,但数据传递过程中往往会出现各种问题,耗费用户巨大的时间和精力。本文为了能够顺利地进行有限元分析计算,从研究CAD/CAE模型转换出发,基于VC平台对Pro/E二次开发技术做了一定的探索研究,成功实现了模型转换前CAD模型的预先检查。
1、引言
近年来,随着数值算法的研究深入和计算机软硬件技术的飞速发展,关于有限元CAE的研究也取得了很大的进展,人们通过运用CAD/CAE等的先进设计方法,提高了产品的设计质量,获得了显著的经济效益。与此同时,也逐渐认识到了它在应用中出现的各种问题。一般情况下,在利用有限元法分析结构空间尺寸复杂的产品时,首要的任务是根据设计想法构建CAD模型,适当地处理后通过接口转换输出到CAE系统中,通过各种有限元软件如ANSYS等在其基础上进行网格划分,再将获得了网格数据(节点和单元)的有限元模型进行分析计算。而分析的成功与否,直接取决于模型转换质量的好坏。
现在大量用户使用Pro/E建立实体模型,再导入ANSYS中进行分析计算。事实上在从Pro/E将数据传递给ANSYS的过程中往往会出现问题,比如零件模型自身有几何缺陷如尖角、小面造成划分网格困难或者数据丢失、装配间隙和干涉造成不能划分网格等。在ANSYS中划分网格出现问题时,大多数用户对弹出的出错提示都很茫然,不清楚到底是哪里出现了问题,就需要不停试着地去修改,这样不停的尝试耗费了用户巨大的时间和精力,而且取得不了显著的效果。这样就需要开发一些针对性较强的专用插件,能够预先在CAD软件中检查出模型哪些地方ANSYS分析时会出现问题并修改,提前解决掉大部分常见的问题,节省设计时间。
本文采用Pro/Engineer所自带的二次开发程序Pro/Toolkit结合Visual C++ 6.0来对Pro/Engineer进行零件几何检查,以及装配件间装配间隙检查的二次开发应用技术研究,旨为用户提供一个操作简单的模型检查模块,解决大部分在CAD/CAE模型转换中发现的常见问题。
2、Pro/ENGINEER二次开发简介
Pro/ENGINEER为用户提供了多种二次开发工具,其中Pro/TOOLKIT是PTC公司自行研发的功能强大的二次开发工具,它提供了应用程序接口(API),使客户或第三方厂商具有扩展Pro/ENGINEER功能的能力。要编写一个完整的二次开发程序需要经过编写源文件(Pro/TOOLKITC程序、菜单资源文件、信息资源文件、对话框资源文件),程序的编译和连接,程序的注册和运行等过程,流程如图1所示。
图1 开发流程
2.1、编写源文件
源文件包括资源文件和程序源文件,资源文件又包括菜单资源文件、信息资源文件和对话框资源文件(分别用来完成创建和修改Pro/Engineer菜单、窗口信息和对话框等功能)。
2.1.1、编写程序源文件
VC++源程序是整个程序源文件的核心部分,是进行二次开发的关键,其编写步骤如下:
1)打开VC,新建工程,选择动态链接库DLL方式。
2)VC++6.0应用程序与Pro/E的接口设置首先设置Selecting对话框:在工具/选项/目录中添加包含文件和库文件,将其设置到Pro/TOOLKIT的根目录下。然后进行工程设置如下:C/C++/预处理程序定义:_DEBUG,_WINDLL,WIN32,_WINDOWS,_MBCS,_USRDLL,PRO_USE_VAR_ARGS。连接/常规/对象/库模块:protk_dll.libprodev_dll.libwsock32.libmpr.libkerne132.libuser32.libodbc32.libodbccp32.lib。
3)在VC++应用程序设计向导创建的程序框架上添加初始化程序、终止程序,加入主菜单程序,设置菜单动作程序,菜单信息文本文件,对话框程序等。
2.1.2、编写资源文件
1)编写菜单资源文件菜单信息文本文件用来描述所添加菜单的一些属性,它的内容要和添加菜单函数中的一些参数相对应。
2)编写对话框资源文件
描述了对话框中全部结构的文本称为对话框资源文件。当Pro/TOOLKIT应用程序想向用户显示一个对话框时,第一步工作即是编写对话框资源文件。在资源文件中应该详细描述:对话框的完整属性、它所包含的组件的列表、组件本身的属性和组件间的相对位置以及当用户改变对话框尺寸时组件的布置规则。
3)编写注册文件
要使应用程序能够集成到Pro/E系统中运行,必须制作一个扩展名为.DAT的注册文件,用该文件进行应用程序的注册。注册文件(registryfile)的作用是向Pro/Engineer系统传递应用程序的信息。
2.2、程序的编译和连接
在VC++6.0中将MFC框架建立的工程文件的源码编译成目标码并存盘,若源码内有语法错误,编译器就会检查出来并向用户显示。编译完毕后利用一个连接器程序加进从函数库取用的函数,才变成一个.DLL文件(可运行文件)。
2.3、程序的注册与运行
启动Pro/Engineer,点击“工具/辅助应用程序”,“注册/启动”ProTK.dat文件,应用程序会自动执行。如果在注册文件中设置ALLOW_STOP为TRUE,则可以在需要的时候用手工来终止应用程序的运行。选择需要终止的应用程序,先选择“停止”按钮,再单击“删除”按钮,即可终止加载的程序,同时消息栏会出现相关的反馈信息。到此Pro/E二次开发的流程基本结束,下面重点叙述本文对二次开发的创新应用。
5、结论
激烈的市场竞争对企业产品的设计水平提出了越来越高的要求,CAD/CAE及其二次开发技术的应用,能帮助设计人员减少失误,提高产品的性能和质量,加快产品开发的步伐,增加企业在市场上的竞争力。本文不仅总结了Pro/E二次开发的技术特点,而且成功开发出了适用于有限元检查的Pro/E检查模块。