1 基于ProE的紧固件二次开发
1 基于ProE的紧固件二次开发,基于,proe,紧固,二次开发
=MICROSOFT 基础类库: example1 项目概述=应用程序向导已为您创建了此 example1 DLL。此 DLL 不仅演示 Microsoft 基础类的基本使用方法,还可作为您编写 DLL 的起点。本文件概要介绍组成 example1 DLL 的每个文件的内容。example1.vcproj这是使用应用程序向导生成的 VC+ 项目的主项目文件。 它包含生成该文件的 Visual C+ 的版本信息,以及有关使用应用程序向导选择的平台、配置和项目功能的信息。example1.h这是 DLL 的主头文件。它声明了 Cexample1App 类。example1.cpp这是主 DLL 源文件。它包含 Cexample1App 类。example1.rc这是程序使用的所有 Microsoft Windows 资源的列表。它包括 RES 子目录中存储的图标、位图和光标。此文件可以直接在 Microsoft Visual C+ 中进行编辑。resexample1.rc2此文件包含不在 Microsoft Visual C+ 中进行编辑的资源。您应该将不可由资源编辑器编辑的所有资源放在此文件中。example1.def此文件包含为在 Microsoft Windows 中运行 DLL 必须提供的 DLL 的有关信息。它定义了如 DLL 的名称和说明等参数。它还从 DLL 导出函数。/其他标准文件:StdAfx.h, StdAfx.cpp这些文件用于生成名为 example1.pch 的 编 头 (PCH) 文件和名为 StdAfx.obj 的 编 类 文件。Resource.h这是标准头文件,它定义 的资源 ID。Microsoft Visual C+ 此文件。/其他 :应用程序向导使用 TODO:” 示应 定义的源 。/湘潭大学毕业论文(设计)任务书(填写模版及要求)论文(设计)题目: 学号:2007008012 姓名:张山 专业: 物理学 指导教师:签名 系主任:签名 一、主要内容及基本要求 是对学生论文(设计)的要求,包括主要技术指标要求、图表数量及质量要求、论文内容及形式的要求、字数要求等。 (指导教师填写,在毕业论文或设计开始前,下发给相应学生 ) 二、重点研究的问题明确本选题(论文)重点要研究的问题。 (指导教师填写) 三、进度安排序号 各阶段完成的内容 举例: 完成时间1 查阅资料、调研 (指导教师填写)2 开题报告、制订设计方案3 实验(设计)4 分析、调试等5 写出初稿6 修改,写出第二稿7 写出正式稿8 答辩 2010 年 6 月四、应收集的资料及主要参考文献介绍一些与课题相关的资料及主要参考文献 (指导教师填写) 1图书 著者书名M出版地:出版者,出版年:页码 2期刊 作者篇名J刊名,出版年份,卷号(期号):页码 3报纸 作者篇名N报纸名称,日期,版次. 湘潭大学毕业论文题 目: 基于 Pro/E 的紧固件二次开发 专 业:机械设计制造及其自动化 学 号: 2007183801 姓 名: 曹峰 指导教师: 毛美姣 完成日期: 2011 年 6 月 湘潭大学毕业设计说明书题 目: 专 业: 学 号: 姓 名: 指导教师: 完成日期: 湘潭大学毕业论文(设计)任务书论文(设计)题目: 基于 Pro/E 的紧固件二次开发设计 学号: 2007183801 姓名: 曹峰 专业: 机械设计制造及其自动化 指导教师: 毛美姣 系主任: 一、主要内容及基本要求要求使用 Visual studio 2005 软件,基于 Pro/E 的开发工具包 Pro/TOOLKIT,对紧固件模型库进行二次开发。具体设计内容: 1、利用 Pro/ENGINEER 创建销、键、螺栓、螺钉等常用紧固件的参数化模型; 2、运用 Visual studio 2005 及 Pro/TOOLKIT 函数编制自定义菜单、紧固件参数对话框; 3、运用 Visual studio 2005 及 Pro/TOOLKIT 函数编写紧固件参数化程序; 4、完成所建自定义菜单和对话框与 Pro/ENGINEER 的连接; 5、撰写毕业设计说明书一份,字数要求在 8000 字以上; 6、翻译 3000 字以上的外文文献。 二、重点研究的问题1、在 Pro/ENGINEER 平台上建立各种紧固件的参数化模型; 2、运用 Visual studio 2005 及 Pro/TOOLKIT 编制自定义菜单及对话框; 3、在软件设计过程中,实现开发程序菜单及对话框与 Pro/ENGINEER 的连接。 三、进度安排序号 各阶段完成的内容 完成时间1 查阅相关资料 2010 年 2 月 20 日 3 月 5 日2 总体方案设计 2010 年 3 月 6 日 3 月 20 日3 利用 Pro/ENGINEER 进行紧固件参数化建模 2010 年 3 月 21 日 4 月 10 日4 Pro/TOOLKIT 菜单及对话框的设计 2010 年 4 月 11 日 4 月 25 日5运用 Visual studio 2005 及 Pro/TOOLKIT 函数编译紧固件参数化程序 2010 年 4 月 26 日 5 月 15 日6 撰写毕业设计说明书(包括外文文献翻译) 2010 年 5 月 16 日 5 月 25 日7 整理资料,答辩 2010 年 5 月 26 日 6 月 7 日四、应收集的资料及主要参考文献1 李世国.Pro/TOOLKIT 程序设计M.北京:机械工业出版社,2003.6:1299. 2源清,肖文.CAD 技术发展历程概览.计算机辅助设计与制造,2000(3):34-36. 3 刘文剑.CAD/CAM 集成技术.哈尔滨:哈尔滨工业大学出版社,2000.51-58. 4 廖敏.基于图形元素特征参数的参数化设计方法.四川工业学院学报, 2001(3);5-7. 5姚英学,蔡颖.计算机辅助设计与制造.北京:机械工业教育出版社,2002.231-237. I目 录第一章 绪论 .11.1 国内外参数化技术研究现状 .11.1.1 国外发展现状 .11.1.2 国内发展现状 .21.2 Pro/Engineer 二次开发现状 .21.3 设计的目的、意义及内容 .31.3.1 设计目的、意义 .31.3.2 设计内容 .31.4 系统开发工具介绍 .51.4.1 Pro/Engineer 的简介 .51.4.2 应用程序开发工具 .61.5 所采用的关键技术 .61.5.1 参数化设计的概念和优点及优势 .61.5.2 Pro/Engineer 的二次开发工具 .71.6 本章小结 .8第二章 系统的总体设计方案 .92.1 开发环境 .92.1.1 Pro/ENGINEER 中自动建模的方法 .92.1.2 Pro/TOOLKIT 应用简介 .92.1.3 DLL 基本理论 .112.2 系统总体设计 .122.3 本章小结 .12第三章 应用程序接口 .143.1 Pro/TOOLKIT 的工作原理 .143.1.1 同步模式 .143.1.2 异步模式 .143.2 Pro/TOOLKIT 应用程序基础 .153.2.1 对象和动作 .153.2.2 对象句柄 .153.2.3 选择对象 .163.2.4 访问函数 .173.3 宽字符串 .173.4 本章小结 .18第四章 应用程序的开发 .194.1 应用程序开发的基本过程 .194.1.1 编译和连接应用程序 .194.1.2 应用程序注册 .194.1.3 应用程序的解锁 .20II4.2 应用程序的结构 .204.2.1 应用程序包含的头文件 .204.2.2 Pro/TOOLKIT 的核心 .215.2.3 菜单技术的添加和信息文件 .214.3 本章小结 .23第五章 紧固件的参数化建模 .245.1 紧固件的参数化建模 .245.1.1 Program 中参数和关系的确定 .245.1.2 紧固件的参数模型建立 .255.2 销的参数化建模 .265.3 螺钉的参数化建模 .355.4 螺栓的参数化建模 .415.5 键的参数化建模 .465.6 挡圈的参数化建模 .505.7 垫片的参数化建模 .555.8 本章小结 .59第六章 利用 Protoolkit 开发紧固件的参数化系统 .606.1 创建参数化的实体模型 .606.2 对话框设计 .606.3 系统运行界面 .606.4 本章小结 .62结论 .63致谢 .64参考文献 .65附录 I 外文翻译 .66附录 II 外文文献原文 .71I基于 pro/e 的紧固件的二次开发摘要:当前, Pro/ENGINEER 软件在我国日益普及和推广,但是在同类产品的设计中,往往一两个性能参数值发生变化时,会引起整个产品图纸联动修改。其中,标准件和通用件的重复使用更为频繁。基于这些,本文利用 Pro/ENGINEER 提供的二次开发工具Pro/Toolkit 和 VS2005 对 Pro/ENGINEER 进行二次开发,开发出符合我国标准的销、螺钉、螺栓、键、弹性挡圈、垫片等紧固件系统。关键词:参数化设计,紧固件,Pro/Toolkit,二次开发Based on pro/e of the secondary development of fastenersAbstract:At present, Pro/ENGINEER software is popularized day by day in our country, but in the design of such product, the change of few parameter values can cause whole product drawing to be changed. Especially the use of standard and common components are more frequent. Because of these reasons, this paper utilizes Pro/Toolkit that Pro/ENGINEER offers and VS2005 to carry on the development for Pro/ENGINEER. The purpose is to develop the storehouse system according with our countrys standard,such as the pin, screws, bolts, key, elastic gaskets and other fasteners system.KeyWords: Parametric design, fasteners, Pro/Toolkit, Secondary development1第一章 绪论1.1 国内外参数化技术研究现状自从 PTC 公司于 1985 年推出参数化 CAD 系统 Pro /Engineer 以来,参数化设计技术才真正受到工程技术界和学术界的重视,各大计算机软件公司相继推出自己的参数化 CAD 系统或在原有系统上增加参数化功能,展开激烈的竞争。目前,我国 CAD 市场上有两大类参数化 CAD 系统:国外开发的大型全参数化 CAD系统;国内的二维参数化 CAD 系统。1.1.1 国外发展现状国外开发的具备参数化功能的 CAD 系统:(1) Pro/Engineer 是美国参数技术公司的机械设计自动化软件产品。它是第一个具有参数化功能的 CAD 系统。它通过记录设计历史来捕捉设计意图,设计历史的操作顺序可以修改,同时引入全局设计参数来实现整体的设计修改。Pro/Enginee 具有在系统中作动态修改的能力,是一个以功能为主的参数化实体造型系统,它提供双向数据关联,设计的修改能自动更新到出图、分析、制造以及其它 CAD/CAM 领域,并具有强大的装配功能。但其中的几何体都必须是完全约束,进行设计要求预先考虑好整个产品的控制参数以及操作顺序,对一个没参加创建的设计者来说,不太容易搞清如何对该项设计进行修改。(2) CADS5 CV 公司的 CADS5 通过一个草图生成工具 Design View 来实现参数化绘图。Design View 提供了广泛的基于约束的造型功能,包括支持零件之间的约束、曲面参数约束、代数约束的逻辑分支以及欠约束模型。采用变量几何技术,约束的顺序不会影响到它的求解结果。界面友好,采用一个灵巧光标动态捕捉图中约束,能够很方便地显示、增加和删除约束。用户可直观地控制图形当前状态。工程约束与几何约束融合起来联立求解,是一个优秀的参数化绘图工具。(3) DPD (Design Post Drafting)是美国 CV 公司采用 Pelotas 平台技术开发的最新产品,运行于 windows 环境中,具有强大的参数化设计及绘图功能。其参数化功能的主要特点是:参数化设计与绘图功能;设计变量的方程式管理;同时支持参数化与非参数化的混合建模能力;较强的草图设计能力。(4) SIGRAPH-DESIG 是德国 SIMENS NIXDORIF 公司的一个智能 2D-CAD 系统。它与其它的 CAD 系统的主要区别在于数据结构。它不仅可以定义和处理数据元素,而且可以定义和处理数据元素之间的关系,支持从最初的概念设计到详细工程图绘制的全过程,真正实现变量设计。(5) VGX 技术是美国 SDRC 公司新近推出一种叫做 VGX(变量几何技术)的新型核心技术。VGX 的最大好处在于,对基于构造过程的参数化方法进行改进,使原有的参数化基于特征的实体模型在可编辑性及易编辑性方面得到了极大的改善和提高。当用户打算做预期的模型修改时,再也不用费心去理解和查询设计历程。基于 VGX 的变量化特征允许 CAD 用户通过相同零件的特征在 3D 中动态捕捉各种关系,历程树顺序不影响关系的有效性。VGX 功能扩展了检验产品的约束推理能力,构图器在已有几何体的某作图面上构图时,自动推断画出的线与己有几何体的相对位置关系,检测并动态地以预增亮方式显示出所有可能产生2的约束,这项新技术可能成为今后参数化发展的新方向。1.1.2 国内发展现状国内开发的具备参数化功能的 CAD 系统:(1) GH-InteCAD 是高华计算机公司的集成智能化微机机械 CAD 系统,基本上代表了目前国内微机版具有自主版权的 CAD 系统的最高水平。其参数化功能主要体现在自动参数化设计和参数化图素拼装上。它采用基于人工智能的几何推理参数化设计方法。系统具有草图规整功能,并可识别多视图联动,对于标准件、常用件可通过参数化图库中的图素进行拼装。(2) PICAD-2D 是中科院北京软件工程研制中心开发的微机参数化集成工程设计系统。其参数化功能的主要特点是提供了交互式参量图符设计功能,能进行固定图符和可变图符的嵌套。(3)开目 CAD 是华中理工大学开发的。它采用局部求解的参数化设计方法实现参数化设计,在用户绘图过程中自动记录约束关系,可以通过约束管理器显示、增加和删除约束,支持达 20 余种约束。其驱动过程明了,速度快,能驱动较为复杂的图形,同时可以方便地指示出过约束、欠约束情形,给用户明确的指示,且在此情况下仍能正确驱动。另外还有西湖电子信息工程公司的 ZDDS,浙江大学的基于结构化变分几何的 HvCAD 变参设计系统等。这些国内的参数化 CAD 系统硬件要求低,适合我国国情,但其参数化功能尚有不足:参数化速度慢,效率低,复杂图形难以有效处理。参数化系统的柔性和灵活性有待提高。无法利用现有的非参数化系统的图形。无参数化建库和参数化图形管理功能。1.2 Pro/Engineer 二次开发现状由于 Pro/Engineer 在 CAD/CAM 领域的优秀表现,它在各个大中型企业中的使用率越来越高。但是这同时也带来了另外一个问题,那就是怎样对通用软件进行本地化的问题。因为通用的 CAD 软件在设计的时候不可能考虑到每个企业的特殊情况,要想充分发挥 CAD 软件的功能,为企业创造更大的效益,企业必须跟据自身的特点,对软件进行本地化的工作,即二次开发。这也是所有 CAD 软件都留有开发接口的原因。Pro/Engineer 的开发从实现方法上大致可以分为两类:一类主要是对 Pro/Engineer 中使用的标准(如:公差符号、尺寸标注样式等)进行符合企业标准的改造。这类开发只需要根据 Pro/Engineer 的开发工具Pro/Toolkit 文档进行相应配置的设置就可以了;另一类是需要开发出人性化的界面以方便用户的使用,以及进行数据库的连接。这一类一般是在比较大型的系统中出现,因为操作复杂必须要有友好界面。由于 Pro/Toolkit 开发界面的功能很弱,而且根本没有连接数据库的功能,所以必须借助于其它的开发工具来实现。而这就涉及了开发工具和 Pro/Toolkit 的兼容性问题。这个问题长期以来一直困扰着开发人员,没有得到很好的解决。这也是使得人们认为Pro/Engineer 难于开发的原因之一。31.3 设计的目的、意义及内容1.3.1 设计目的、意义本论文是在紧固件的基础上,针对设计过程中所遇到的问题而做的部分工作。机械设计领域里传统的二维设计最终将被三维设计所取代。而如何更好地利用三维软件进行产品设计存在着以下值得研究的问题。因此,本论文在于解决以下关键问题:(1)参数化建模参数化技术是当前 CAD 技术重要的研究领域之一。参数化设计一般是指设计对象的结构比较定型,可以用一组参数来约定尺寸关系。参数的求解较简单,参数与设计对象的控制尺寸有显式的对应,设计结果的修改受到尺寸驱动。参数化设计技术以其强有力的草图设计、尺寸驱动修改图形功能,成为初始设计、产品建模及修改系列设计、多方案比较和动态设计的有效手段。因此,如何充分地运用参数化技术进行零件的参数化建模来提高各种零件的建模效率是本文研究的重点。运用参数化建模可以完全零件的自动化建模,而所要提供的只是一些基本的设计参数。从而减少设计过程中的大量重复性的工作,大大提高工作效率。(2)模板的开发定制采用 Pro/Engineer 进行三维建模中,模板是建模的基础,它能将相关的信息传递给根据模板创建的文件。通过模板创建的文件具有统一的界面、格式,符合相同的标准,如系统单位、零件精度、模型文件的参数及参数值等。在一定程度上可以提高设计效率。(3)通用零件库的创建在机械设计中标准件的数量日益增多,这主要是因为采用标准件给产品的设计、制造、装配带来了很大的方便。设计人员如果能从 CAD 系统的标准件库中获得满足设计要求的标准件,则可大大减少重复劳动,提高设计效率,从而缩短新产品的研制周期,所以,提供标准件库或者提供开发标准件库的工具是CAD 系统的一个重要组成部分,也是评价 CAD 系统的一个重要指标。在设计过程中,如果缺少标准件库,在调用每一个标准件时,就需要像别的非标零件一样,重新建模。而标准件的频繁调用,大大降低了装配效率,造成了时间和精力上的浪费。本论文通过充分利用三维建模软件 Pro/Engineer 及其所提供的二次开发工具 Pro/Program, Pro/Toolkit 进行三维参数化设计及通用零件库的建库工作。参数化设计的方法大提高了建模效率,给各种产品的自动化、快速设计提供了一定的参考依据。通过对模板的开发定制,建立统一的模板来提高设计效率。通过在 Pro/Engineer 中创建三维标准零件库,并实现标准件库与Pro/Engineer 的集成。专门应用领域的用户可用文中所提到的方法来扩充自己所需的标准件和通用件,既可减少开发费用,又可提高开发效率和质量。41.3.2 设计内容本论文的主要工作有:(1)利用 Pro/Engineer 的二次开发工具 Pro/Program 实现各种销、螺钉、螺栓、键、弹性挡圈、垫片等通用件的自动化建模。(2)解决 Pro/Engineer 与 VS2005 的接口问题。(3)利用 Pro/Enginee:的二次开发工具 Pro/Toolkit 及 VC+2005 进行二次开发,设计出人机交互式的界面,开发出参数化的销、螺钉、螺栓、键、弹性挡圈、垫片系统。(4)利用 Pro/Engineer 的二次开发工具 Pro/Toolkit 创建三维的标准零件库并实现零件库与 Pro/Engineer 的集成。(5)调试、运行程序。51.4 系统开发工具介绍1.4.1 Pro/Engineer 的简介Pro/Engineer 软件系统是美国参数化技术公司 PTC (Parametric TechnologyCorporation)的优秀产品,提供了集成产品的三维造型设计、加工、分析及绘图等功能的完整的 CAD/CAE/CAM 解决方案。该软件以使用方便、参数化造型和系统的全相关性而著称。目前 Pro/Engineer 软件在我国的机械、电子、家电、塑料模具、工业设计、汽车、自行车、航天、家电、玩具等行业取得了广泛的应用,该软件在国内的应用数量大大超过了同类型的其它国外产品。Pro/Engineer 可谓是个全方位的 3D 产品开发软件,集合了零件设计、产品组合、模具开发、NC 加工、饭金件设计、铸造件设计、造型设计、逆向工程、自动测量、机构仿真、应力分析、产品数据管理于一体,其模块众多。主要由以下六大主模块组成:工业设计(CAID)模块、机械设计(CAD)模块、功能仿真(CAE)模块、制造(CAM)模块、数据管理(PDM)模块和数据交换(Geometry Translator)模块。这里将介绍一下 Pro/Engineer 的主要特性:(1)相关性(Full Associativity)相关性是指所有的 Pro/Engineer 的功能都相互关联。这就意味着在产品开发过程中,用户任何时候所作的变更,都会扩展到整个设计中,同时自动更新所有工程文档如部件、加工以及产品信息管理等。全相关性鼓励在开发周期的任一点进行修改却没有任何损失一并使并行工程成为可能,所以能够使开发后期的一些功能提前发挥作用。Pro/Engineer 系统开发环境最突出的特点就在于它能够支持并行工程,通过一系列足以表现外形、装配性能的全相关性的解决方案,可以让用户同时在几个技术领域处理一个产品模型。这些能力包括造型设计、机械设计、功能设计、加工以及产品信息管理等。Pro/Engineer 提供的参数化设计的最大的特点就是单一数据库(SingleDatabase)。 Pro/Engineer 配合单一数据库,所有设计过程所使用的尺寸(参数)都存在数据库中,修改 CAD 模型及工程图不再是一件难事,设计者只需更改3D零件的尺寸,则 2D 工程图就会依照尺寸的修改做几何形状的变化,同样修改2D工程图的尺寸其相关的 3D 实体模型也会自动修改,同时装配、制造等相关设计也会自动修改,这样可确保数据的正确性,达到设计修改工作的一致性,避免发生人为改图的疏漏情形,且减少许多人为改图的时间和精力的消耗。也正因为有参数式设计,用户才可以运用强大的数学运算方式,建立各尺寸参数间的关系式使得模型可自动计算出应有的外型,减少尺寸逐一修改的繁琐费时,并减少错误发生。(2)基于特征的参数化建模(Feature-based Parametric Modeling)参数式设计就是将零件尺寸的设计用参数来描述,并在设计修改时通过修6改参数的数值来更改零件的外形。参数化设计的思想在工业界传播了许多年,1988年,Pro/Engineer 以参数式设计的思想问世以后,业内人士即对参数式设计CAD/CAM 的思想翘首以待。Pro/Engineer 对于传统机械设计工作来说,有相当大的帮助作用,因为 Pro/Engineer 中参数不只代表设计对象的外观相关尺寸,并且具有实质上的物理意义。例如我们可以运用系统参数(System parameters,如体积、表面积、重心、三维坐标等),或用户依设计流程所定义的用户定义参数(User defined parameters,如密度、厚度等具有设计意义的物理量或字符串)加入设计构思中来表达设计思想。这项参数化设计的功能不但改变了设计的概念,并且将设计的便捷性推进了一大步。(3)数据管理(Data Management)为了在最短的时间内完成最多的开发工作,必须允许多个学科的工程师同时对同一产品进行开发。Pro/Engineer 数据管理功能可以管理并行工程所要求的并行作业程序,并通过全相关性达到并行工程的目的。(4)装配管理(拟 sembly Management)Pro/Engineer 能够让用户使用贴合(Mate)、插入(Insert)、对齐(Align)等直觉式指令,轻松装配零部件,保持设计意图,达到设计目的。而高级的功能则支持大型复杂装配体的创建与管理,并且零件数目不受限制。(5)工程数据库重用(Engineering Date Reuse, EDR)工程数据库重用就是为了达到大幅提高生产力、降低成本的目的,而以标准、公认的设计作为新产品设计的基础,它能够让用户快速开发整个产品系列。Pro/Engineer 的基本结构使 EDR 易于实现。随着将来几代产品的创建,会发现从 Pro/Engineer 中获得的益处将大大超过最初的投资。(6)易用性(Ease of Use)Pro/Engineer 独有的自动导引菜单为用户提供了使用方便的选项,也可以预先选定最常用的功能。此外,系统还提供了简短的功能菜单说明和完整的在线帮助。这些都使得 Pro/Engineer 具有非常好的易用性。(7)硬件独立性(Hardware Independence)Pro/Engineer 可以在 UNIX 和 Windows98/2000NT/XP 平台下运行,并在每个系统中都维持相同的界面,使用的感觉也一样。用户可以根据自己的需求,选购最经济的硬件配置,再混用或搭配任何一种平台组合。由于 Pro/Engineer 可以运行在不同环境中,具有独特的数据结构模式,因此可以方便地让信息在不同平台的机器之间相互转换。1.4.2 应用程序开发工具系统程序模块的设计选择 Visual studio 2005 作为开发平台。Visual studio 2005 是运行于 Windows 上的交互式可视化集成开发环境,是美国Microsoft Visual Studio 的一部分。像其它的可视化开发环境(如 Visual 7Basic, Delphi, C+ Builder)一样,VC+2005 集程序的代码编辑、编译、连接调试等于一体,给编程人员提供了一个完整而又方便的开发界面和许多有效的辅助开发工具。VC+2005 的应用程序向导(App Wizard)可以为很大一部分类型的程序提供框架代码,用户不需要书写代码,只需要几个按钮就可以生成一个完整的可以运行的程序。1.5 所采用的关键技术1.5.1 参数化设计的概念和优点及优势参数化设计模型是以约束来表达产品模型的形状特征,以一组参数来控制设计结果,从而能通过变换一组参数值方便地创建一系列形状相似的零件。参数化设计的基本手段有程序驱动与尺寸驱动。程序驱动法是通过分析图形几何模型的特点,确定模型的主参数以及各尺寸间的数学关系,将这种关系输入程序中,进而在零件设计时只要输入几个参始值就可生成所要求的模型。尺寸驱动是对程序驱动的扩展,它的基本思想是由应用程序生成所涉及的基图,该图的尺寸有一系列的标识,这些尺寸由用户在编程时输入或交互式输入,从而生成用户的模型。传统的 CAD 绘图技术都用固定的尺寸值定义几何元素,输入的每一条线都有确定的位置,要想修改图面内容,只有删除原有的线条后重画。而新产品的开发设计需要多次反复修改,进行零件形状和尺寸的综合协调和优化。对于定型产品的设计,需要形成系列化,以便针对用户的生产特点提供不同功率、规格的产品型号,参数化设计可使产品的设计随着某些结构尺寸修改和使用环境的变化而自动修改图形。参数化的实现大致如下:利用草图技术生成二维轮廓(Profile),这个轮廓的准确位置和尺寸都不必在草图输入时给出,可以在以后的参数设计过程中得到。再利用系统的拉伸和旋转等手段来生成三维特征。有了这个基础,再加上一个记录造型过程的 CSG 树,就可以完成模型的参数设计。需要强调的是这里的参数并不是最后模型的设计参数,而是完成造型过程的造型参数。参数化设计技术以其强有力的尺寸驱动,修改图形功能,为初始产品设计、产品建模、修改系列产品设计提供了有效的手段,能够充分满足设计具有相同或相近几何拓扑结构的工程系列产品及相关工艺装备的需要。参数化技术以约束为核心,是一种比约束自由造型技术更新颖、更好的造型技术。该技术将复杂的设计过程分解为三个子过程,即草图设计、对草图施加约束以及约束求解。参数化技术具有以下三方面的优点:(1)设计人员的初始设计要求低。无须精确绘图,只须勾绘草图即可,然后可通过适当的约束得到所需精确图形。(2)便于系列化设计。一次设计成型后,可通过尺寸的修改得到同种规格零8件的不同尺寸系列。(3)便于编辑、修改,能满足反复设计需要。当在设计中发现有不适当的部分时,设计者可通过修改约束而方便地得到新的设计。这些优点使得参数化技术非常适合于对整个设计过程的支持。因为设计的目的是为了满足一定的功能需求,而这些功能需求往往可以转化为适当的设计约束。设计者通过对一设计约束的控制可以方便灵活地实现产品的功能。Pro/Engineer 系统最典型的特点是参数化。体现参数化除使用尺寸参数控制模型外,还在尺寸之间建立数学关系式,使它们始终保持相对的大小、位置或约束条件。在零件模式下,系统允许建立特征之间的关系式,使得零件中的不同特征产生关联,此时创建的参数关系式成为零件关系式。同时在零件与装配模式中,系统还允许在阵列特征或阵列元件间建立参数关系式。1.5.2 Pro/Engineer 的二次开发工具Pro/Engineer 是一个功能强大的三维产品设计软件。它融入了单一数据库、参数化、基于特征、全相关的设计概念河以将设计至生产全过程集成到一起,让所有的用户能够同时进行同一产品的设计制造工作,即实现所谓的并行工程。Pro/Engineer 在提供强大的设计、分析、制造功能的同时,也为用户提供了多种二次开发工具。常用的二次开发工具有:族表(Family Table)、用户定义特征(UDF),Pro/Program, J-link, Pro/toolkit 等。(1)族表(Family Table)族表是一个用表格来驱动模型的工具,通过族表可以方便地管理具有相同或相近结构的零件,特别适用于标准零件的管理。族表可以将事先定义好的模型(称为“GENERIC”的零件)中可供驱动的尺寸参数、特征、模型参数等放入表格中,通在表格中输入参数值就可创建一个新的零件(称为“INSTANCE”的零件)。族表的产生过程是,首先建立一个具有代表性的零件,此零件称为通用零件或原始零件(GENERIC PART)。然后,根据可变情况编辑族表项目,可变项目可以是:尺寸(Dimension)、参数(Parameter)、特征(Feature)、与组件(Component)等。完成族表内容后,需进行校验,然后系统会自动一一再生,从而生成若干子零件(Instance Part)。(2)用户定义特征(UDF)用户定义特征是将若干个系统特征融合为一个自定义特征,使用时作为一个整体出现。系统将 UDF 特征以 gph 文件保存。UDF 适用特定产品中的特定结构,有利于设计者根据产品特征快速生成几何模型。(3) Pro/Program在零件的设计过程中,如果零件的外形具有高度的重复性,那么经常重复同样的步骤便显得不具效率。为了提高工作效率,Pro/Engineer 提供了一个可程序化的工具Pro/Program。在 Pro/Engineer 系统中,每建立一个模型,都会有一个宏文件记录模型的产生过程,如果能够对这个宏文件进行修改,则可以控制模型的建立过程,从而控制所生成的模型。这个宏文件是由类似 Basic的高级语言构成的,用户可以根据设计需要来编辑模型的 Program,使其作为9一个程序来工作。通过运行该程序,系统通过人机交互的方法来控制系统参数、特征出现与否和特征的具体尺寸。利用此工具可以将某些经常要更改的步骤或尺寸,事先以语句的方式写入,使得每个使用这些零件的普通人员也能明白如何操作,在使用当中只需输入关键的参数。便可直接生成零件,从而大大地提高了零件设计效率。(4) J-MinkJ-Mink 是 Pro/Engineer 中自带的基于 JAVA 语言的二次开发工具。用户通过 JAVA 编程实现在软件 Pro/Engineer 中添加功能。(5) Pro/toolkit Pro/toolkit 同 Mink 一样也是 Pro/Engineer 中自带的二次开发工具。不过它是基于 C 语言的。Pro/toolkit 能实现与 Pro/Engineer 的无缝集成,是 Pro/Engineer 自带的功能最强大的二次开发工具。1.6 本章小结介绍了系统的开发工具,重点阐述了 Pro/E 软件、参数化设计以及二次开发的关键技术。同时分析了 Pro/ENGINEER 三维软件的二次开发方法,为论文的进一步展开奠定了基础。10第二章 系统的总体设计方案2.1 开发环境在利用 Pro/TOOLKIT 进行 Pro/ENGINEER 的二次开发时,由于 PTC 公司只提供了 MS-DOS 命令行来编译生成应用程序,而并没有提供任何其它的相关资料。源程序需要在不同的环境中进行编辑、编译。这是一个相当繁琐的工作,开发效率极其低下,并且相对比较困难,特别是初学者在开发应用程序的过程中会感到很吃力,所以目前国内利用 Pro/TOOLKIT 来开发 Pro/ENGINEER 的应用程序并不多。必须寻求其它的解决方法。我们可先编辑 makefile 模板文件,再以Microsoft 公司的软件开发平台 VS2005 作为 Pro/TOOLKIT 应用程序的集成开发和编译环境,就可以圆满地解决这个问题。采用 VC 作为应用程序的开发和编译环境,可以同时满足 DLL 模式和多进程模式(Multi-Process Mode)两者的开发需求。我们可以用 VC 的 MFC 动态连接库编程向导(MFCAppWizard(dll))来编写 DLL 模式的应用程序,利用 VC 的Win32 控制台程序模块(Win32 ConsoleApplication)来编写多进程模式的应用程序。但是无论采用哪种开发模式,都需要在 VC 中引入 Pro/TOOLKIT 内的一些专门的库文件和头文件,如Prodev_dll.lib、Protk_dll.lib、libc.lib、wsock32.lib、mpr.lib 等。并且需要指定它们的存放路径。否则,应用程序的编译不会成功。打开 VC 按照下面步骤设置选项:在 Project 下拉菜单里,点击 Setting,在弹出的 Project Setting 对话框里单击 Link 选项卡,再在 Object/library modules 编辑框中输入这些库文件和头文件名即可加入。再点击 Tools 下拉菜单里的 Options 菜单项,在出现的对话框中,选择 Directories TAB 下的 Directories 输入框,在其中加入头文件路径和库文件的路径。2.1.1 Pro/ENGINEER 中自动建模的方法程序自动建模即是指系统根据用户输入的参数或根据运用 CAD 系统进行设计产生的数据结果,可以动态地、自动地生成所需产品的模型。对于几何特征的自动建模,Pro/ENGINEER 为用户提供了下述 5 种二次开发方法,即第二章已经介绍:族表(Family Table) 、用户自定义特征用户自定义特征(User Define Feature UDF) 、Pro/Program、关系式(Relations )以及特征元素树(Feature Element Tree) 。上述的 5 种二次开发方法,前 4 种均可在交互模式下操作,特征元素树则只能通过 Pro/TOOLKIT 包编程实现;可以将上述 5 种方法结合,开发出用户需要的应用程序。在 5 种二次开发方法中,用户自定义特征法(UDF)比其他方法编程更为容易,且工作量及存储量都相对较少,本系统将用户自定义特征法和关系式结合使用来实现各标准件的自动建摸。2.1.2 Pro/TOOLKIT 应用简介Pro/TOOLKIT 是参数技术公司(PTC)为用户定制的二次开发工具,该工具箱帮助用户程序或第三方程序实现和 Pro/ENGINEER 的无缝连接,以扩展Pro/ENGINEER 的功能。Pro/TOOLKIT 提供了大型的具有自身特色的 C 函数库供外部应用程序调用,它们可以使用 Pro/ENGINEER 的数据库和应用程序。在11Pro/TOOLKIT 中的数据都经过封装和隐藏,所以它和系统之间传递信息的数据结构对应用程序而言是不可见的,这些数据结构只有 Pro/TOOLKIT 的函数可以访问。因此,Pro/TOOLKIT 可以说是 PTC 应用程序开发者的用户接口。Pro/TOOLKIT 有属于自身的编程风格、基本概念和函数命名。Pro/TOOLKIT 使用面向对象(object-oriented)的编程风格,其最基本的概念是对象和动作(Object andAction) 。Pro/TOOLKIT 库函数针对每个具体的对象(Objects)执行一个动作(Actions) ,从而完成相应的功能。在 Pro/TOOLKIT 的函数命名中,首先定义对象类型,其次是动作,Pro/TOOLKIT 中函数命名规则为:Pro对象名针对对象的动作如:ProSelectionLocationGet()一个 Pro/TOOLKIT 对象是一个明确定义和独立的、可以完成对象相关动作的 C 数据结构。大部分对象都是 Pro/ENGINEER 数据库中的项目,如特征,表面等;其它对象类型要么是抽象的,要么是临时的,如一个选择动作选择的临时项目。在 Pro/TOOLKIT 中,每种对象都有一个包含“Pro” 、加上一个以大写字母开头的描叙对象的词的名字,均对应数据库中的一个项目,如 ProFeature-特征、ProSolid-描叙零件和装配件。Pro/TOOLKIT 为引用对象的变量和参数提供了对象的 C 类型定义。对象的等级反应了数据库的层次,如一个ProFeature 对象可以包含一个 ProSurface 类型的对象,如图 3.1 所示。图 3.1 对象之间等级和关系每个 Pro/TOOLKIT 函数都有一个 ANSI 函数原型(Pro/TOOLKIT 提供了至少一种函数原型检索) 。某个特定的 Pro/TOOLKIT 对象的所有函数原型都存于针对该对象命名的头文件中。如函数 ProEdgeLengthEval()的函数原型在 ProEdge.h中。为了确保在应用程序中包含对应的头文件,我们最好使用函数原型。大多数 Pro/TOOLKIT 函数的返回值类型是 ProError。ProError 是一枚举型对象,无论 Pro/TOOLKIT 函数调用是成功或失败,都会返回一个该类型的对象,指明函数调用的结果。ProError 定义如下:Typedef enum ProErrorsPRO_TK_NO_ERROR=0,PRO_TK_GENERAL_ERROR=-1,PRO_TK_BAD_I
收藏
编号:145018
类型:共享资源
大小:13.33MB
格式:RAR
上传时间:2017-10-26
10
积分
- 关 键 词:
-
基于
proe
紧固
二次开发
- 资源描述:
-
1 基于ProE的紧固件二次开发,基于,proe,紧固,二次开发
展开阅读全文
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
装配图网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。