您现在的位置: 论文网 >> 计算机论文 >> 计算机应用论文 >> Pro/Engineer二次开发关键技术研究论文

Pro/Engineer二次开发关键技术研究

作者:黄安贻 吴海涛
出处:论文网
时间:2007-01-18
摘 要:对Pro/Engineer的CAD二次开发技术进行探讨,深入研究Pro/Engineer的几种二次开发工具,并通过对Pro/TOOLKIT二次开发工具包的研究和分析,提出了基于三维模型的用户自定义参数设计,最后利用Pro/TOOLKIT开发模块和Visual C++完成建立齿轮参数化设计。

关键词:二次开发 Pro/TOOLKIT开发工具 参数化设计
一、引言

在CAD技术日益普及的今天,传统的二维CAD软件正逐渐被三维CAD软件所替代。在众多软件中,PTC公司的Pro/Engineer是具有代表性的优秀软件之一。自从面世以来,它以尺寸驱动、基于特征、单一全关联的数据库等优点深受用户好评。企业根据产品对象的不同,在使用CAD软件时也各有侧重。企业要想最大效率的发挥出软件的功效,必须根据企业的产品特征和企业状况对软件进行二次开发。本文列举了在软件Pro/Engineer中常用的二次开发工具与方法,并着重介绍了用Pro/TOOLKIT对Pro/Engineer进行开发时的步骤。最后通过“齿轮快速设计系统”的开发实例进一步说明开发时的技巧。

二、开发工具

Pro/Engineer为用户提供了丰富的二次开发工具。常用的有Pro/Program、簇表(Family Table)、用户自定义特征(UDF)、J-Link和Pro/Toolkit等。为了防止混淆,以下特别对这几种开发工具进行比较和说明。

1.Pro/Program

Pro/Engineer对每个零件或组件模型都有一个主要的设计步骤和参数列表,那就是Pro/Program。它是零件与组件自动化设计的一种有效工具。设计人员可使用类似BASIC的高级语言,根据需要来编写该模型的Program。包括:控制特征的出现与否、尺寸的大小、零件与组件的出现与否、零件与组件的个数等。然而,Pro/Engineer就可以通过运行该程序来读取此零件或组件,并通过人机交互的方法得到不同的几何形状,以满足产品设计的需要。

2.簇表(Family Table)

簇表可用于管理具有相同或相近结构的零件,特别适用于标准零件的管理。它是通过建立基础零件为父零件,然后在簇表中定义各个控制参数来控制模型的形状及大小。这样,就可通过改变各个参数的值来控制派生的各种子零件。

3.用户自定义特征(UDF)

设计人员在使用Pro/Engineer进行零件设计时,经常会遇到一些重复出现的特征。例如,螺钉的座孔等,因此设计人员就要花费许多时间进行这种重复性的操作。用户自定义特征则能将同一特征用于不同的零件上,或将若干个系统特征融合为一个自定义特征,使用时作为一个全局出现。这样,设计人员就可以建立自己的用户自定义特征库,根据产品特征快速生成几何模型,从而极大地提高了设计人员的工作效率。

4.Pro/TOOLKIT

Pro/TOOLKIT是PTC为Pro/Engineer制定的开发工具包,它提供了应用程序接口(API),使客户或第三方厂商具有扩展Pro/Engineer功能的能力。Pro/TOOLKIT使用面向对象风格C编程,且提供一个庞大、用于底层资源调用的C语言函数和头文件,外部应用程序可借此访问Pro/Engineer的数据库和应用程序。

三、Pro/TOOLKIT的运作方式

Pro/TOOLKIT应用程序代码集成进入Pro/Engineer的标准方法是通过“动态链接库”(Dynamical Linked Libraries, DLLs)完成的。当编译Pro/TOOLKIT应用程序的C代码,并将其链接至Pro/TOOLKIT库文件时,就创建了一个可链接至Pro/Engineer可执行文件的对象库文件,这个可执行文件将在Pro/Engineer启动时被执行。这种方法称为“DLL模式”。

此外,Pro/TOOLKIT还支持第二种方法的集成,即“多进程”(Multiprocess),或称为“衍生模式”(Spawned Mode)。在这种模式下,Pro/TOOLKIT应用程序将被编译和链接,从而形成一个独立的执行文件。这个可执行文件将是Pro/Engineer的衍生,并作为Pro/Engineer工作任务的一个子程序来运行。

在DLL模式中,Pro/TOOLKIT应用程序与Pro/Engineer之间的信息交换,是通过直接函数调用完成的。而在多进程模式下,内部进程信息系统会传递必要的信息,以确定两进程间的函数及其所需参数来模拟直接函数调用,以实现和DLL模式中相同的效果。

四、创建齿轮参数设计应用程序的基本方法

1.利用VC向导创建齿轮参数设计应用程序

程序设计的主要工作在三个方面:1)编写下拉菜单的(. txt)文件和对话框的(.res)资源文件;2)按Pro/TOOLKIT应用程序Pro/Engineer环境运行的要求设计接口与程序运行结束时的终止程序;3)根据功能需求设计Pro/TOOLKIT应用程序主体部分。

其程序部分的主体结构如下:

int user_initialize( nt argc, char * argv[ ] ) //其功能相当于C语言中的main( )函数

{ //调用函数

  … …(该部分是用来初始化Pro/TOOLKIT应用程序且创建图形窗口,这部分包括了应用程序的所有初始化进程)

return(0)

} void user_terminate( )

{ … …(该部分是用来结束Pro/TOOLKIT应用程序)

return;

}func( )

(该部分是主要添加要完成预定功能的一个或多个的C语言代码)

编辑完源代码后要用Visual C++ 6.0进行编译,首先要设置好编译环境:一是设置好包含头文件的路径;二是设置好连接所需库文件的路径。

 [1] [2] 下一页

论文搜索
关键字:Pro/Engineer 二次开发 技术
最新计算机应用论文
基于网络信息安全技术管理的计算机应用研究
浅析人工智能体系建设
抖音短视频平台视频推荐模式研究
应用电子技术中可编程控制器的应用探讨
用友NC信息系统的实施应用实践研究
基于校园一卡通数据系统的学生行为分析研究
云环境下基于蚁群算法的动态容错技术研究
自拍图像中的记忆痕迹
抖音短视频用户使用动机研究
基于创新扩散理论的Vlog传播
热门计算机应用论文
学生成绩管理系统的设计与实现
浅析计算机病毒及防范的措施
学籍管理系统软件
对计算科学与计算机发展的思考
计算机应用型人才的培养模式研究
物资管理信息系统开发
计算机信息管理在第三方物流中的应用
嵌入式系统数字图像采集接口电路设计
基于B/S体系结构开发应用系统
项目管理在软件中的应用