带轮的参数化设计论文_第1页
带轮的参数化设计论文_第2页
带轮的参数化设计论文_第3页
带轮的参数化设计论文_第4页
带轮的参数化设计论文_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

武汉工业学院 毕 业 论 文 毕 业设计 题目 : 带轮的参数化设计 姓 名 学 号 院 (系) 机械工程系 专 业 指导教师 2007 年 6 月武汉工业学院毕业设计 I 摘 要 本论文研究的主要目的是为了有效利用 CAD 技术,实现零件的参数化设计,从而提高生产效率。介绍了利用 Pro/E 的二次开发工具包 Pro/Toolkit 和 VC+相结合对Pro/E 进行二次开发,采用动态连接库方式实现三者之间的信息传递,从而完成带轮的设计计算、应用模块之间的调用以及设计图样的生成显示。设计过程中探讨了设计资料程序化处理、带轮设计计算、模型驱动、三维参数化建模等技术问题。在完成系统开发和注册后,只要输入带轮设计的驱动参数,系统就会自动完成带轮的设计以及带轮零件实体图形的生成。这种方法的整个设计界面友好,且便于操作,设计的零件能够很好的满足设计精度和强度要求。 关键词 : Pro/E;二次开发;参数化;带轮 武汉工业学院毕业设计 II Abstract In this study, the main purpose is to the effective use of CAD technology, the parts of parametric design, thereby enhancing production efficiency. Introduced to the use of Pro/E of the Second Development Kit Pro/Toolkit and VC + + combination of Pro/E for the second development, dynamic link library achieved between the transmission of information, thus completing the pulley design, application module between the call and the production design drawings show. The design process of design information processing procedures, pulley design, model-driven, 3D parametric modeling, and other technical issues. The completion of systems development and registration, as long as the importation of the driving pulley design parameters, system will automatically complete the design and pulley pulley parts of the entities generated graphics. This method of the entire design interface is friendly and easy to operate. designed components can be designed to meet very good accuracy and strength requirement. Keywords: Pro/E; Secondary Development; Parametric; Pulley 武汉工业学院毕业设计 III 目 录 摘 要 - I 英文摘要 - 错误 !未定义书签。 第一章 绪 论 - 1 1.1 选题的意义 - 1 1.2 CAD 技术概述 - 2 1.2.1 CAD 技术的概念 - 2 1.2.2 CAD 技术在机械工业中的应用 - 2 1.2.3 CAD 技术的发展现状及发展趋势 - 3 1.3 本论文主要工作 - 4 第二章 系统开发环境分析 - 5 2.1 Visual C+基础知识 - 5 2.1.1 Visual C+简介 - 5 2.1.2 MFC 简介 - 5 2.1.3 VC+动态链接库 - 5 2.2 面向对象的基础知识 - 6 2.2.1 面向对象方法简介 - 6 2.2.2 面向对象方法中基本概念 - 6 2.2.3 面向对象的软件开发技术 - 7 2.3 Pro/ENGINEER 基础知识 - 8 2.3.1 Pro/ENGINEER 简介 - 8 2.3.2 Pro/TOOLKIT 基础知识 - 9 2.3.3 参数化设计技术 - 10 第三章 带轮结构的确定 - 12 3.1 带轮简介 - 12 3.2 确定带轮的基本结构尺寸 - 12 3.2.1 带轮的基本参数及其意义 - 12 3.2.2 带轮设计的驱动尺寸确定及其输入 - 12 3.2.3 确定带轮的结构尺寸 - 13 第四章 参数化设计的方法和步骤 - 16 4.1 Pro/TOOKIT 的安装 - 16 武汉工业学院毕业设计 IV 4.2 VC.net 环境设置 - 16 4.2.1 创建 DLL 工程 - 16 4.2.2 设置包含头文件 - 16 4.2.3 设置库文件环境 - 17 4.2.4 设置库文件路径 - 17 4.3 Pro/TOOLKIT 应用程序设计(编写源文件) - 17 4.3.1 编写资源文件 - 17 4.3.2 编写程序源文件主框架 - 18 4.4 创建并调用参数输入对话框 - 19 4.4.1 创建对话框过程 - 19 4.4.2 编辑用户界面应用程序 - 20 4.4.3 添加一个数据接口文件 - 20 4.5 应用程序注册与运行 - 21 4.5.1 注册文件的编写 - 21 4.5.2 应用程序的注册 - 21 4.5.3 应用程序的运行 - 22 结 论 - 25 谢 辞 - 26 参考文献 - 27 附表 1: V 带轮的基准直径系列及其对应外径 - 28 附表 2: 带轮键槽尺寸的确定 - 29 附录 3: GUIINTERFACE.CPP 程序 - 30 附录 4: PARAMDLG.CPP 程序 - 30 附录 5: MODELVIEW.CPP 程序 - 31 武汉工业学院毕业设计 1 第一章 绪 论 1.1 选题的意义 当今任何一个国家,若要在综合国力上取得优势地位,就必须在科学技术上取得优势。 90年代以来,随着以计算机技术为支柱的信息技术的发展,世界经济格局发生了巨大的变化,逐步形成了一个统一的一体化市场,经济循环加大、加快,市场竞争日趋激烈。同时,工业产品由传统的机械产品向机电一体化产品、信息电子产品方向发展,技术含量大为增高。这种趋势促使企业在着手进行新产品开发时把面向产品的创新性、外观造型、人机工程等 设计理念提高到了一个新的高度,从而也迫切要求对产品设计的研究能有进一步的突破,以提高企业形象、产品设计水平和市场竞争力。正因如此,对于工业设计领域的研究逐渐受到了国内外学者的关注。特别是近几年来,随着计算机软硬件技术的日新月异,计算机图形学、计算机辅助设计、多媒体等技术的发展,日益激烈的市场竞争要求现代化企业必须低成本高效率的开发新产品。同时,新产品的更新换代周期不断缩短,这样产品的设计过程在产品的整个生命周期中占据了越来越重要的地位。企业对产品的设计要求程序化,可视化。正应如此, CAD(计算机辅助设计 ), CAM(计算机辅助制造 )、 CAE(计算机辅助工程 )等技术得到迅速普及和发展。 美国评出的最具影响的十大技术中 ,CAD/CAM/CAE技术榜上有名,在为数众多的 CAD软件界,由美国 PTC公司的软件产品 Pro/ENGINEER是世界上最成功的参数化设计软件之一 1。其软件的总体设计思想体现了 MDA(Mechanical Design Autom- ation)软件的新发展,在机械设计自动化 (MDA)方面 ,Pro/ENGINEER通过一种独特的、参数化的以及面向零件的 3D实体模型设计制作技术 ,彻底改变了传统的设 计理念,为工程设计提供了一条革命性的途径。 在机械设计过程中 ,将大量复杂而繁琐的设计计算、图表查询等任务交给计算机去完成是机械 CAD系统要完成的主要工作之一。过去 ,这种 CAD系统的开发采用面向过程的建模方法 ,这种建模过程是一种顺序的线性过程,这种模型强调开发中的每一过程的完整性和独立性 ,后一过程必须在前一过程之后才能进行,这显然不符合人们认识世界是一个渐进往复的过程这一客观规律。在带轮的传统设计中,原有的几何模型是设计者利用固定的尺寸值得到的,零件的结构形状不能灵活的改变 ,一旦零件尺寸发生变化 ,必须重新绘制 其对应的几何模型。为了能够更直观、更全面地反映设计意图,可借助参数化设计软件 Pro/ENGINEER建立相应的带轮三维实体模型库,用 Pro/ENGINEER自带的二次开发工具包 Pro/TOOLKIT在三维模型的基础上进行参数传递 ,关系修改 ,零件装配、干涉检查等高级的计算机武汉工业学院毕业设计 2 辅助设计及制造工作 2。 在这种背景下,本论文将以带轮设计为契机 ,开展带轮的参数化设计的学位论文研究。在 VC+6.0的集成开发环境下,对带轮进行参数化设计,通过利用 Pro/ENGINEER自带的开发工具 Pro/TOOLKIT对 Pro/ENGINEER进行二次开发,并在 Pro/ENGINEER环境下进行带轮结构的三维参数化设计,将零件的实体模型展现在用户的面前。该系统的开发将大大的方便用户进行带轮的结构设计,不仅可以提高设计效率和质量,缩短产品的开发周期,而且对产品的有限元分析及后续加工具有一定的实用价值和参考意义,同时也符合现代技术的发展要求。 1.2 CAD 技术概述 1.2.1 CAD 技术的概念 计算机辅助设计 (Computer Aided Design简称 CAD)是指工程技术人员以计算机为工具进行设计活动的全过程 :包括资料检索、方 案构思、分析计算、工程绘图和编制技术文件等 ,是随着计算机、外围设备及软件的发展而形成的一门综合性很高的新技术。广义的 CAD包括设计和分析两个方面。设计是指构造零件的几何形状、选择零件的材料 ,以及为保证整个设计的统一性而对零件提出的功能要求等。分析是指运用数学造型技术 ,如有限元分析法、优化设计方法等 ,从理论上对产品的性能进行模拟、分析和测试 ,以保证产品设计的可靠性。 CAD技术本身是一项综合性的、技术复杂的系统工程,涉及许多学科领域,如计算机科学和工程、计算数学、几何造型、计算机图形显示、数据结构和数据库、仿 真、数控、机器人和人工智能学科和技术以及与产品设计和制造有关的专业知识等。 CAD技术可以承担产品设计中的零件设计、装配设计、模具设计、机构设计与分析、有限元分析、数控加工与仿真等环节的关键工作 3,与传统的设计内容和方式相比产生了根本性的变革。 如今 ,CAD技术己广泛应用于航空航天、电子、机械、建筑、轻纺、化工、交通、影视、教育等各个领域,并取得了明显的经济效益和社会效益。 1.2.2 CAD 技术在机械工业中的应用 CAD技术在机械工业中的应用已经越来越广泛,其主要应用有以下几方面 6: 1.二维、三维 绘图这是最普遍最广泛的一种应用,用来代替传统的手工绘图; 2.图形及符号库将复杂图形分解成许多简单图形及符号 ,先存入库中 ,需要时调出 ,经编辑修改后插入到另一图形中去 ,从而使图形设计工作更加方便; 武汉工业学院毕业设计 3 3.参数化设计标准化或系列化的零部件具有相似结构,但尺寸需经常改变,采用参数化设计的方法建立图形程序库,调出后赋以一组新的尺寸参数就能生成一个新的图形; 4.三维造型采用实体造型设计零部件结构,经消隐及着色等处理后显示物体的真实形状,还可作装配及运动仿真,以便观察有无干涉等; 5.工程分析常见的有有限元分析、优化设 计、运动学及动力学分析等。此外针对某个具体设计对象还有它们自己的工程分析问题,如注塑模设计中要进行塑流分析、冷却分析、变形分析等; 6.设计文档或生成报表许多技术属性需要制成文档说明或输出报表,有些设计参数需要用直方图、饼图或曲线图等来表达。 1.2.3 CAD 技术的发展现状及发展趋势 CAD概念是 50年代末由麻省理工学院首次明确提出的, 60年代研制成功试验CAD系统、 70年代, CAD开始实用化,从二维的电路设计发展到三维的飞机、造船、汽车等设计。 80年代,由于解决了三维几何造型、仿真等问题,应用范围不断扩大,大中型系统向微型化发展,出现了应用极广的微机 CAD系统和性能优良的工作站 CAD系统。 90年代后随着 CAD技术的发展,其系统性能提高、价格降低, CAD开始在设计领域全面普及,成为必不可少的设计工具。 CAD之所以在短短的 30年内发展如此迅速,是因为它是人类在 20世纪取得的重大科技成就之一,它几乎推动了一切领域的设计革命,彻底改变了传统的手工设计绘图方式,极大的提高了产品开发的速度和精度,使得科技人员的智慧和能力得到了延伸。应用 CAD技术来进行产品设计,能使设计、生产、维修工作快速而高效地进行,所带来的经济效 益是十分明显的。 CAD技术的发展与应用水平已成为和衡量一个国家的科学技术现代化和工业现代化的重要标志。 近几年来,随着计算机技术的飞速发展, CAD 技术己经由发达国家向发展中国家扩展,而且发展的势头非常迅猛。因为当今世界工业产品的市场竞争,归根结底是设计手段和设计水平的竞争,发展中国家的工业产品要在世界市场占有一席之地,就必须采用 CAD)技术。 我国 CAD技术研究和开发起步相对较晚,自 80年代开始, CAD技术应用工作才逐步得到了开展。国家逐步认识到开展 CAD应用工程的必要性和可靠性,并在全国各个行业大力推广 CAD技术,同时展开 CAD技术的开发和研制工作,如清华大学和华中理工大学共同开发的高华 CAD,中科院软件工程研制中心的 PICAD4等。 CAD技术随着不段研究、开发和广泛使用,工业生产也对 CAD技术提出了越来越高的新要求。 CAD技术将朝着集成化、智能化和标准化的方向发展。 武汉工业学院毕业设计 4 1.3 本论文主要工作 采用 Pro/ENGINEER 提供的二次开发工具 Pro/TOOLKIT 用编程方法,实现带轮参数化设计。开发时,需建立实例带轮模型库。在输入驱动参数后,通过程序的调用,系统从库中寻找该参数驱动下的带轮模型,以实现不 同基准直径、基准宽度、轮槽数、配合轴直径等参数的带轮设计,从而提高设计的效率和质量。 用 Pro/TOOLKIT可以开发出具有 Pro/ENGINEER风格的对话框 ,能向用户提供人机交互界面 ,进行简单的人机交互。但是目前这种方法还不太完善 ,功能有限 ,而且对话框资源编写起来繁琐 ,一个简单的对话框资源就会用去很多的时间 ,对于稍 微 复杂的对话框更是无能为力。 MFC 具有强大的编制对话框能力 ,编制简单 ,但 Pro/TOOLKIT 并不提供对 MFC 的支持 ,所以 在 Pro/TOOLKIT 中并不能直接应用MFC 对话框。本文通过动态连接 库开发了 Pro/TOOLKIT 与 MFC 的接口 ,利用 MFC强大的功能实现对话框的开发 ,在 Pro/ENGINEER 环境中生成 MFC 对话框 ,方便、自然、快捷地进行人机交互 。 因此本文主要解决好以下几方面工作: 1.结构设计 :通过优化方案数据,确定最佳带轮设计的驱动尺寸,然后利用驱动尺寸,根据设计手册相关公式及数据确定带轮的基本结构尺寸; 2. 结构设计 :在 Pro/Engineer WILDFIRE环境下,建立带轮模型库,并给模型零件设置编码参数; 3.编写 VC和 Pro/E接口程序 :以 VC+6.0集成开发环境下编 写调用 Pro/E的接口程序,调用 Pro/E二次开发包 Pro/TOOLKIT来实现系统的参数传递和修改; 4.利用 Pro/ENGINEER WILDFIRE三维参数化设计平台上利用 Pro/TOOLKIT开发工具添加用户菜单,调用模型库,实现带轮模型的参数化显示、修改和分析。 武汉工业学院毕业设计 5 第二章 系统开发环境分析 本文以 Pro/ ENGINEER 2.0为开发平台,利用其二次开发工具包 Pro/TOOLKIT,以 VC+6.0 为编程语言,以动态链接库的方式对带轮进行了参数化设计。在这个过程中我们利用的设计软件是 Pro/ ENGINEER 2.0 和 VC+6.0,二次开发的工具是 Pro/TOOLKIT 工具包,通信方式是动态链接库的方式,程序设计的方法的面向对象方法。所以在设计进行之前,我们必须对这些方法和环境进行必要的了解。 2.1 Visual C+基础知识 2.1.1 Visual C+简介 Visual C+是 Microsoft 公司推出的基于 C/C+的集成开发工具,自诞生以来它一直是 Windows 环境下最主要的应用开发系统之一。它不仅是 C+语言的集成开发环境,而且与 Win32 紧密相连 5,所以,利用 Visual C+开发系统可以完成各种各样的应用程序开发,实现从底层软件直到上层直接面向用户的软件,而且 Visual C+强大的调试功能也为大型复杂软件的开发提供了有效的排错手段。 2.1.2 MFC 简介 MFC 是用来编写 Windows 应用程序的 C+类库,该类库集以层次结构组织起来,其中封装了大部分 Windows API 函数和 Windows 控件,它所包含的功能设计到整个 Windows 操作系统。 MFC 不仅为用户提供了 Windows 图形环境下应用程序的框架,而且还提供了创建应用程序的组件 6。使用 MFC 类库和 Visual C+提供的高度可视的应用程序开发工具,可使应用程序开发变得更简单,开发周期极大地缩短,提高代码的可靠性和可重用性。 MFC 封装了一个程序操作的每一个方面。在 MFC 程序中,程序员很少需要直接调用 Windows API 函数,而是通过定义 MFC 类的对象并通过调用对象的成员函数来实现相应的功能。 2.1.3 VC+动态链接库 ( 1) COM 标准及库文件 为了实现按组件化程序设计思想把复杂的应用程序设计成一些小的、功能单一的组件模块,并且它们可以运行在不同的机器上等要求,微软提出了 COM( Component Object Model)标准。 COM 组件技术的核心思想是将软件实现与接武汉工业学院毕业设计 6 口的分离,减少与系统其其他部分的耦合程度 7。接口部分提供所定义功能的使用方法,所有能够获得接口信息的应用程序都能通过接口使用组件提供的功能。COM 的主要实现方式之一就是库文件,有两种库文件形式:静态链接库和动态链接库。静态链接库将目标代码嵌入到应用程序中,应用程序可独立运行,而动态链接库还必须给应用程序提供动态链接库文件。 ( 2) 动态链接库 动态链接库是一个可执行模块,其包含的函数可以有 Windows 应用程序调用以执行一些功能。动态链接库 还包含了其所提供函数的目标代码。程序在运行中连接动态链接库中的函数时,简单地记录了函数的位置信息,这就可以让程序在执行时很快找到执行代码。只在执行时才做到真正的连接。提供函数在动态链接库中位置的信息存放在一个独立的后缀为 .lib 的文件中。 2.2 面向对象的基础知识 2.2.1面向对象方法简介 首先将数据及对数据的操作方法放在一起,作为一个相互依存、不可分割的整体 -对象。对同类型对象抽象出其共性,形成类。类中的大多数数据只能用本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通 过消息进行通信。这就是面向对象的方法。 2.2.2 面向对象方法中基本概念 面向对象的核心是数据(结构)抽象及操作行为的抽象,封装机制使二者集为一体,形成类或对象 8。继承是面向对象的另一个抽象手段,反映“一般 特殊“关系抽象,通过子类对父类的继承,可使子类享有父类的数据及操作行为,子类也可定义新的数据或新的操作或覆盖原有操作,这种性质叫做多态性。 1. 对象 面向对象方法中的 对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。 属性是用来描述对象静态特征的数据项,行为是用来描述动态特征的操作序列 。 2. 类 面向对象方法中的类是指具有相同属性和服务的一组对象的集合。它为属于该类的全部对象提供抽象描述,其内部包括属性和行为两个主要部分。类与对象的关系犹如模具与铸件之间的关系,一个属于某类的对象称为该类的一个事例。 3. 封装 武汉工业学院毕业设计 7 封装是面向对象方法中的一个重要原则,就是把对象的属性和服务结合成意义个独立的系统单位,并尽可能隐藏对象的内部细节。这一种有两个含义:第一个含义是把对象的全部属性和服务结合在一起,形成一个不可分割的独立单位;第二个含义也称为“信息隐藏”,即尽可能隐藏对性的内部细节,对外形成一个边界(或者说一 道屏障),只保留有限的对外接口使之与外部发生联系。 4. 继承 特殊类的对象拥有其一般类的全部属性和服务,称为特殊类对一般类的继承。继承是面向对象技术能够提高软件开发效率的重要原因之一。它可以将开发好的类作为构件放到构件库中,在开发新系统时便可以直接使用或继承使用。 5. 多态性 对象的多态性是指在一般类中定义的属性或服务被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。这使得同一个属性或服务在一般类及其各个特殊类中具有不同的语义。 2.2.3 面向对象的软件开发技术 面向对象从根本上改变了传统的软件设计思想 ,面向对象的开发是一种系统分解基于对象概念的软件设计方法。目前,面向对象技术趋向于成为一种集分析( OOA)、设计( OOD)、编程( OOP)于一体的系统化技术 9。 使用面向对象的方法,可以使产品设计在较高的层次上进行,在实际设计过程中,经常有大量的反复使用的结构,这些结构在拓扑形状基本上已经确定,而只是在具体的尺寸上有所变化,因此,面向对象的概念是极为有利的。结合本文,我们也不难发现,带轮的设计正好符合这一特点,所以,我们选择面向对象的设计方法是非常合适的。 面向对象程序设计是一种试图模仿人们建立现实世界 模型的程序设计方法,它的着眼点是数据而不是功能。它的设计思路是从确定表征客观实体的对象开始,建立对象之间的层次结构,确定反映对象状态的属性及施加于这些属性之上的操作,对象之间通过消息互相作用和联系,从而形成软件结构。这种方式符合人们对客观世界的认识过程。按此方法开发软件可克服传统 CAD 的一些缺陷。 面向对象方法采用对象建模观点,其主要思想 10如下 : (1)客观世界是由许许多多的对象所组成的,每种对象都有其自身的状态和改变其状态的运动规律;(2)面向对象利用“抽象数据类型”对客观世界进行拟合,在对象 (模块 )中,用数据来描述现实世界中对象的状态,用处理过程 (操作 )来描述其状态的改变规律,相似的对象抽象为类,类由数据和操作组成,对象由类来生成并自动拥有类所定义的特性; (3)对象之间相互通讯的唯一方式是消息传递。换句话说,系统武汉工业学院毕业设计 8 内各要素(对象 )之间的联系是通过消息通讯方式进行的,这不仅真实地模拟了现实世界,而且使得软件系统呈柔性,是真正的藕合系统。 面向对象方法以识别“对象”和“对象的功能”为出发点,通过把问题域作为一系列相互作用的实体进行建模,把整个开发阶段的每个过程看作是互相交迭的不断深化的过程,从而使得问题空 间和求解空间保持一致。相比较而言,“对 象”要稳定得多,即使个别对象发生变化,对全局造成的影响也小得多,因此,用面向对象的方法开发出的软件,系统易于扩充和维护。 2.3 Pro/ENGINEER 基础知识 2.3.1 Pro/ENGINEER 简介 Pro/Engineer 系统是美国 PTC 公司的三维 CAD/CAM 系统,它提出了真正的全相关性 (任何地方的修改都会 自动反映到所有相关地方 )、单一的数据库 (整个 Pro/Engineer 系统建立在统一的数据库上,具有完整而统一的模型,提供了所谓双向关联性的功能,符合现代产品中 “并行工程”概念 11,为产品的同开发提供了可能 )、基于特征的参数化造型 (Pro/Engineer 使对象特征成为产品几何模型的构造要素 )等概念,已成为当今世界机械领域的新标准。 另外, Pro/ENGINEER 目前有 80多个专用模板,涉及工业设计、机械设计、功能仿真、加工制造等方面,为用户提供全套解决方案。同时, Pro/ENGINEER系统用户界面简洁,概念清晰,符合工程人员的设计思想与习惯。整个系统建立在统一的数据库上,具有完整而统一的模型。又 Pro/ENGINEER 建立在工作站上,系统独立于硬件,便于移 植。更重要的是它还具有开放的体系结构和优秀的二次开发工具,并且参数化设计是其最重要的特征。这里将主要介绍 Pro/ENGINEER的主要特征 12。 1.3D实体模型 (Solid model) 3D实体模型除了可以将用户的设计思想以最真实的模型在计算机上表现之外,借助于系统参数 (System parameters),用户还可以随时计算出产品的体积、面积、重心、惯性大小等,以了解产品的真实性,并补足传统的面结构、线结构的不足。用户在产品设计过程中,可以随时掌握以上情况,设计物理参数,并减少许多人为计算时间。 2.单一数据库 (Singled atabase) Pro/ENGINEER可随时修改由 3D实体模型产生 2D工程图,而且自动标注工程图尺寸。不论在 3D还是 2D图形上作尺寸修改,其相关的 2D图形或者 3D实体模型均自动修改,同时组合、制造等相关设计也会自动修改,这样可确保数据的正确性,武汉工业学院毕业设计 9 并避免反复修正的耗时性。由于采用单一数据库,提供了所谓双向关联性的功能,这种功能也正符合了现代产业中所谓的同步工程 (Concurrent engineering). 3.以特征作为设计的单位 (Feature-based design) Pro/ENGINEER以最自然的思考方式从事设计工作,如孔 (Hole),开槽 (Slot)、倒圆角 (Round)等均被视为零件设计的基本特征,可随时对特征做合理、不违反JL何的顺序调整 (Reorder)、插入 (Insert),删除 (Delete)、重新定义 (Redefine)等修正动作。 4.参数化设计 (Parametric design) 参数化设计技术将在后面 2.3.3中作详细介绍,在这里将就不做具体讲解了。正因为 Pro/Engineer有了以上优秀的特征,该软件越来越 广泛地用于机械、汽车、航天、电 子和工程机械等行业,是当今世界上应用最广泛的三维 CAD软件之一。 2.3.2 Pro/TOOLKIT 基础知识 ( 1) Pro/Toolkit 简介 Pro/Toolkit是 PTC公司为 Pro/Engineer软件提供的开发工具包,即应用程序 接口 (API)。其主要目的是让用户或第三方通过 C程序代码扩充 Pro/Engineer 系统的功能,开发基于 Pro/Engineer系统的应用程序模块,从而满足用户的特殊要求。它提供了大量的 C语言库函数,能够使外部应用程序 (客户应用程序 )安全有效地访问 Pro/Enginee的数据库和应用程序 13。通过和第三方能够Pro/Engineer系统中添加所需要的功能。不仅如此,还可以利用 Pro/Toolkit提供的 UI对话框、菜单以及 VC的可视化界面技术,设计出方便实用的人机界面,从而大大提高系统的使用效率。 Pro/Toolkit工具包提供了开发 Pro/Engineer所需的函数库文件和头文件,使用户编写的应用程序能够完全地控制和访问 Pro/Engineer,并可以实现应用程序模块与 Pro/Engineer系统的无缝集成。 Pro /Toolkit应用程序有两种工作模式,分别 是同步模式和异步模式。同步模式又有两种形式,即动态连接库模式 (DLL模式 )和多进程模式,分述如下 :动态连接模式是将 Pro/Toolkit应用程序集成到 Pro/Engineer中的标准方法。用户编译 C应用程序,与 Pro/Toolkit库连接,这种方法又称为 DLL模式。 DLL模式具有代码简单、执行速度快等优点,所以本文选择该模式作为 Pro /Toolkit开发发应用程序工作模式。 ( 2) Pro/Toolkit的开发 Pro/Toolkit应用程序开发采用目前最先进的面向对象技术的程序开发方法。它能直接利用 VC+6.0的应用程序设计向导和类向导进行程序的设计、创建和调武汉工业学院毕业设计 10 试。 Pro/Toolkit典型程序开发包括源程序 (Pro/Toolkit C程序源程序、菜单资源文件、窗口信息资源文件、对话框资源文件等 )的编写、源程序的编译和连接,参数化模板库的建立、注册文件及程序的注册和运行。 Pro/Toolkit典型开发结构如图 1所示。 。 图 1: Pro/Toolkit典型开发结构图 2.3.3 参数化设计技术 1. 参数化设计的概念 参数化设计 (也叫尺寸驱动, Dimension Driven)是目前 CAD 应用技术中最重要的 技术之一,作为产品建模的一个重要手段,在系列化产品设计中得到较好的应用。它是以约束来表达产品模型的形状特征,以一组参数来控制设计结果,从而能通过变换设计参数来实现产品模型的更改或相似产品模型的创建 14。Pro/Engineer 的参数化是指将表示零件或组件的形状和拓扑关系由赋予它们的特征值来控制,这些特征值可能与其它特征值相关联。在齿轮、轴等旋转体结构比较简单的产品方面基于 Pro/Engineer 的参数化得到了很好的应用和推广 。 2. 参数化设计的实现过程 基于 Pro/Toolkit 三维参数化设计的开发方法有 两种:一是应用特征描述法,利用 Pro/Toolkit 提供的底层函数完成特征建模,并建立人机对话框,实现三维参数化设计,此方法程序设计繁琐,对于形状复杂的产品来说,用程序来生成三维模型非常困难。二是采用三维模型与程序控制相结合的方式,基本过程为在Pro/Engineer 环境下利用交互方式生成三维模型 ,然后在已创建的零件三维模型的基础上,根据零件的设计要求建立一组可以完全控制三维模型形状和大小的设计参数。 武汉工业学院毕业设计 11 文中采用结合二者的优势来实现参数化零件设计的二次开发,即采用三维参数化模型与程序控制相结合,实现将零件 模型用 Pro/Engineer 交互方式创建其三维基本模型,建立相应的设计参数和约束关系,并保存到零部件基本数据库作为基准零部件模型;然后由 Pro/Toolkit 程序检索基准零部件模型的设计参数供用户编辑修改,最后按照新的设计参数更新,设计出新的零部件模型,实现快速设计。采用这种方式,可以方便地实现产品的系列化 和变形设计,其实现过程如图 2所示。 图 2:基于三维模型的参数化设计实现过程 基于 Pro/Toolkit 二次开发的参数化程序设计的基本原理是:采用三维模型与程序控制相结合的方式,根据零件或组件的 设计要求,建立一组能控制三维模型形状和拓扑关系的设计参数,参数化程序通过对零件或组件的设计参数编程,来实现设计参数的检索、修改以及三维模型的再生。有关参数化设计二次开发流程 15请参见图 3。 图 3:参数化设计二次开发流程图 武汉工业学院毕业设计 12 第三章 带轮结构的确定 3.1 带轮简介 带轮作为机械传动系统中一种常见的传动件, 具有结构简单、传动平稳、造价低廉以及缓冲吸振等优点,因而 被广泛的应用于各种工农业生产中。 带轮的设计应满足的要求有:质量小; 结构工艺性好;无过大的铸造内应力;质量分布均匀,转速高时要经过动平衡;轮槽工作要精细加工(表面粗糙度一般应为 3.2),以减少带的磨损;各槽的尺寸和角度应保持一定的精度,以使载荷分布较为均匀 16。带轮的轮槽槽型有 Y、 Z( SPZ)、 A( SPA)、 B( SPB)、 C( SPC)、 D和 E几种。这主要决定于带轮的基准宽度。带轮的结构形式主要有以下几种 (见图4):( a)实心式;( b)腹板式;( c)孔板式; (d)椭圆轮辐式。当带轮的基准直径 dd 2.5d(d为配合轴的直径 )时,可采用实心式;当 dd 300mm时,可 采用腹板式(当 D1-d1 100mm时,可采用孔板式);当 dd 300mm时,可采用轮辐式。 图 4:带轮的结构形式 3.2 确定带轮的基本结构尺寸 3.2.1 带轮的基本参数及其意义 (1)轮槽节宽 bd V 带轮的轮槽与配用 V 带节宽相等处的槽宽 bd (2)基准直径 dd V带轮在轮槽节宽 bd处的直径称为基准直径 dd。 3.2.2 带轮设计的驱动尺寸确定及其输入 ( 1) 确定带轮设计的驱动尺寸 武汉工业学院毕业设计 13 在实际生产中,带轮的设计是根据带轮的工作条件和工作场合来进行合适设计的。也就是说在给定工作条件的情况下,自行 确定带轮的相关参数。而带轮的工作条件的信息主要有以下几个:电动机的型号、额定功率、转速、传动比以及工作运转时间。我们根据以上参数可以由设计经验和计算公式可以得到传动带的带型(带轮的槽型)、主从动带轮的基准直径 dd、带轮配合轴的直径 d 以及带的根数(带轮的轮槽数 z)。在知道以上参数的情况下,我们再进行的带轮的结构设计。又由于在进行带轮参数化设计过程中,为了保证我们程序设计的简单和方便并能够识别,我们将带轮的槽型用带轮的基准宽度来表示具有同样的效果。因为带轮我每一个槽型都对应于一个固定的基准宽度 bd。 结合以上的 分析,我们将带轮的基准宽度 bd、基准直径 dd、轮槽数 z和配合轴的直径 d作为带轮设计的驱动参数。 ( 2)参数的输入 参数化设计的运行前需要在人机交互界面上输入一定参数,才可以得到其他结构尺寸和三维实体结构图,这个过程我们可以称之为参数驱动 17。对于输入的参数我们称之为驱动参数。程序的运行就是将这些参数作为自变量经过一系列运算得到其他的结构尺寸。结合带轮的设计过程,我们前面已经确定其驱动尺寸有四个。这四个尺寸就是我们在人机交互界面上需要输入的参数。四个参数的数型及位数必须满足一定的要求才可能使设计存在意义, 也就是说也只有符合条件的参数才会被系统所识别,具体参数条件参见表 1。 表 1:基本输入参数 3.2.3 确定带轮的结构尺寸 带轮的结构尺寸主要包括两部分:带轮的轮槽尺寸、带轮的基本外形尺寸和键槽的配合尺寸。 我们将由前面确定的四个基本驱动参数来确定带轮的所有外形尺寸。 ( 1) 确定带轮的轮槽尺寸 我们要确定的轮槽结构尺寸及其意义见图 5。轮槽尺寸主要有 基准宽度 bd、基准 线上槽深 ha、 基准线 下 槽深 hf、 槽间距 e、 槽边距 f、 轮缘厚 、 轮槽角 等。它们都可以根据表 2 由基准宽度来确定 18。 参数名称 轮槽数 基准宽度 基准直径 配合轴直径 参数符号 z bd dd d 参数类型 整型 实型 整型 整型 参数位数 1 2 3 3 武汉工业学院毕业设计 14 图 5:轮槽结构图 表 2: 基准带宽制 V 带轮轮槽尺寸 mm (GB/T 13575.1-92) ( 2) 确定带轮的外型尺寸 实心式带轮的结构图如图 6 所示,由图我们可以知道要确定的实心式带轮外形尺寸主要有:带轮的外径直径 da、基准直径 dd、带轮轮缘宽 B、轮毂孔直径 d、轮毅长 L 和端面直径 d1。其中基准直径 dd和轮毂孔直径 d 作为驱动参数是已知的,那么确定其它参数的计算公式如下:B=(z-1)e+2f; d1=(1.8 2.0)d; L=( 1.5 2.0) d; da=dd + 2ha; 项 目 符 号 槽 型 Y Z,SPZ A,SPA B,SPB C,SPC D E 基准宽度 bd 5.3 8.5 11 14 19 27 32 基准线上槽深 hamin 1.6 2 2.75 3.5 4.8 8.1 9.6 基准线下槽深 hfmin 4.7 7 9 8.7 11 10.8 14 14.3 19 19.9 23.4 槽间距 e 80.3 120.3 150.3 190.4 25.50.5 370.6 44.50.7 槽边距 fmin 6 7 9 11.5 16 23 28 最小轮缘厚 min 5 5.5 6 7.5 10 12 15 带轮宽 B B=(z-1)e+2f; z 轮槽数 外径 da da=dd+2ha 轮槽角 32 相应的 基准直 径 dd 60 34 80 118 190 315 36 60 475 600 38 80 118 190 315 475 600 偏差 1 0.5 武汉工业学院毕业设计 15 图 6:实心带轮结构图 其中,又为了使我们的计算更加方便快捷,带轮的外径可以由附表 1根据基准直径的值和槽型对应查得;轮缘宽 B和轮毂长 L也可以根据 GB10412-89 查得。例如:若带轮的槽型为 Z、基准直径为 80mm、轮槽数为 3,则可查得其外径 da=84mm、轮缘宽为 B=40mm 和轮毂长为 L=40mm。那么带轮的所有参数都可以根据驱动参数进行相关计算查表得到了。 ( 3) 确定带轮的键槽尺寸 带轮的键 槽尺寸主要是根据轮毂孔尺寸来查阅国家标准来确定 19。其结构及相关参数确定见附表 2。 ( 4)小结 根据以上分析,我们可以发现根据前面所选择的的四个驱动参数可以得到带轮的所有结构尺寸,因此选择他们作为驱动参数是满足设计要求的。这四个驱动尺寸为:带轮的轮槽数 z、带轮的基准宽度、带轮的基准直径 dd和带轮配合轴的直径 d。 武汉工业学院毕业设计 16 第四章 参数化设计的方法和步骤 4.1 Pro/TOOKIT 的安装 Pro/TOOKIT 工具包是随 Pro/ENGINEER Wildfire 安装盘一起提供的,所以不需要专门购买。 当用 Pro/SETUP 安装 Pro/ENGINEER Wildfire 时,其中有一个可选项“ API Tookits”。它包括 Pro/TOOKIT、 Pro/Web.lib 和 Pro/J。 link。选择“ Pro/TOOKIT”选项,在 Pro/ENGINEER 安装目录下自动创建子目录Pro/TOOKIT。 Pro/TOOKIT 包含了全部头文件、库文件、应用程序示例等。当中有四个子目录: i486_nt、 include、 protk_appls 和 protk.doc。头文件位于 include 目录。库文件位于 i486_nt 目录 20。这两种类型文件是用 VC+开发 Pro/ENGINEER 应用程序必不可少的支持文件。 4.2 VC.net 环境设置 VC的集成开发环境采用工程( PROJECT)来管理所有 C+源程序、头文件、库文件和各种资源,程序的设计、编译、连接和调试均十分方便。 VC作为 Pro/TOOLKIT开发应用程序工具时需要进行相应的环境设置 。 4.2.1 创建 DLL 工程 启动 VC+,点击菜单栏中的“文件”按钮,在下拉菜单中选择“新建”。这时会弹出“新建”对话框,点击“工程”选项,选择 MFC AppWizard(dll)方式。 指定工程名称及存放路径。 然后点击下面的“确定”按钮,后面的接受缺省设置。那么我们就 利用 VC 向导新建一个共享 MFC 的常规动态链接库框架工程。该框架提供建立 DLL 应用程序所需的必要文件支持,这是一个空的框架,不能实现任何功能,主要是为了满足 Windows 操作系统要求。 4.2.2 设置包含头文件 在 VC+中菜单栏中的“工具”里点击“选择”按钮。在弹出的“选择”对话框里点击“目录”,选择“ Win32”平台,“显示目录为”中选择“ include file”,“路径”选择“ C: PROGRAM FILESPROEWILDFIREPROTOOLKITINCLUDES” 。然后点击“确定”按钮。 武汉工业学院毕业设计 17 4.2.3设置库文件环境 在 VC+中菜单栏中的“工程”中选择“设置”,弹出“ Project Settings”对话框中左边的 ” Settings For” 中选择“ Win32 Unicode Release” ,在右边按钮中选择” Link”在“分类”中选择“ Input” ,在“对象 /库模块”中输入:protk_dll.lib prodev_dll.lib mpr.lib wsock32.lib,设置 Ignore libraries: msvcrt.lib 然后点击“确定”按钮。 4.2.4设置库文件路径 在 VC+中菜单栏中的“工具”里点击“选择”按钮。在弹出的“选择”对话框里点击“目录”,选择“ Win32”平台,“显示目录为”选择“ Library files” , “路径”选择 C: PROGRAM FILESPROWILDFIRREPROTOOLKIT1486 NTOBJ” 。然后点击“确定”按钮。 通过在这个 DLL 工程界面中 选择 FileView,我们可以看到打开 VC 应用程序向导自动生成的程序文件。 VC 应用程序设计向导在 FileView 中自动加入了ReadMe、 StdAfx.cpp 和以工程文件名为前缀的 cpp 源文件、 def 模块定义文件以及 rc 资源文件等。 那么,经过以上的操作我们就完成了 Pro/TOOLKIT 二次开发环境下的 VC的环境设置, 也就使其符合创建 Pro/TOOLKIT 应用程序的基本条件。 4.3 Pro/TOOLKIT 应用程序设计 -编写源文件 使用 VC向导生成 MFC DLL工程并完成环境设置之后,必须 添加必要的函数代码、增加新的 CPP源程序以及新的资源, 才可以 构成一个完整的 Pro/TOOLKIT应用程序体系 ,这些文件就组成了 源文件,也就是与 工程文件名同名的 CPP文件。源文件包括资源文件和程序源文件 21。 4.3.1 编写资源文件 程序中用到的菜单信息资源文件应保存在 PTC 目录下的 textusascii 中 。 因此我们 在 text 下添加 usascii 子文件夹,同时创建 usermsg.txt 文件, 它是通过记事本编写的文件格式文件。 4 行为一组,每组对应一个菜单项。这个文件就是带轮参数化设计的菜单资源文件, 内容如下: USER Menu0 参数化设计 武汉工业学院毕业设计 18 # # USER Menu1 带轮设计 # # USER Menu1 help 参数化设计帮助 # # USER Menu2 help 带轮设计帮助 # # 2 5 4.3.2 编写程序源文件主框架 Pro/TOOLKIT应用程序源文件整体上包含 3部分:头文件部分、用户初始化函数和终止函数。初始函数 user_initialize()和终止函数 user_terminate()是每个同步模式所必须添加的。程序源文件可以将菜单文件载入,实现菜单载入、菜单注册和动作定义等任务。 在本文中,该源文件全部内 容及其分析见附录 1中的ModelView.cpp程序。 ( 1)添加头文件 头文件包含部分是指应用程序所使用对象函数的原型部分,每个应用程序都必须包含的头文件是“ Pro/TOOLKIT.h”,因为它定义了 因为它定义了值 wchar_t,其类型为宽字符串。 使用一个特定的 Pro/TOOLKIT对象函数时应包括有其函数原形的头文件( .h)文件。否则在编译该文件时,会出现编译器不能对函数参数类型进行检查的错误。 ( 2) 编写 user.initialize()函数 初始化函数主要是用来设置需要添加的菜单,以及其它的一些初 始值设置,这个函数相当于 C+类的构造函数或 C语言中的 main()函数。 user.initialize()函数在编写时必须注意到其至少应包含一个 Pro/TOOLKIT 的 API 调用 22。否则就会导致 Pro/TOOLKIT 应用程序失败,且返回 PRO_TK_GENERAL_ERROR。典型的定义格式为: extern“ C” int user_initialize(int argc,char *argv,char*version,char*build, 武汉工业学院毕业设计 19 wchar_t errbuf) ProError status; /用户添加的接口程序部分 return status; ( 3) 编写 user_terminate()函数 user_terminate()作用是结束应用程序的执行(退出 Pro/ENGINEER 将终止应用程序的运行)。该函数由用户定义,其中可以不执行任何动作。 如下结构: user_terminate() ( 4) 添加菜单和菜单响应函数。 菜单响应函数中需要使用三个函数 23( ProMenubarMenuAdd、 ProCmdAcTi- onAdd、 ProMenubarmenuPushbuttonAdd),这三个函数定义了菜单内容和菜单动作等。 为 Clytaper 加载菜单文件 ,在 Help 菜单后 ProMenubarMenuAdd (Menu0, USER Menu0,Help, PRO_B_TRUE, mf); 在 Gear 菜单组中定义新的按钮按钮及其响应函数 Taper() ProCmdActionAdd(uiCmdCmdActFn) GetModel,uiCmdPrioDefault,UserAccessTe-stMenu, PRO_B_TRUE, PRO_B_TRUE, &cmd_id); 在该 Pro/TOOLKITS 应用程序中 ,最为关键的函数就是菜单响应函数Taper,在该函数中载入 MFC 对话框资源 ,获得用户的输入信息 ,创建 旋转 特征 , 生成 三 维实体 效果图 。 ( 5) 创建带轮实体模型库 要使程序在运行后能够很好地调出三维实体图,必须建立图形库,并存在xiazhengwei/text 目录下。建立三维图的方法主要就是在 Pro/E 界面下,利用旋转特征产生。 4.4 创建并调用参数输入对话框 4.4.1创建对话框过程 24 ( 1)打开前面创建的 DLL 工程 ( 2)在应用程序界面 的主菜单中,选择“插入”菜单中“资源”选项,弹出“插武汉工业学院毕业设计 20 入资源”对话框。 ( 3)在“资源类型”区域中选中“ Dialog”选项,然后单击”新建“命令按钮,弹出” Dialog”对话框。 ( 4)在对话框中单击鼠标右键,从弹出的菜单的对话框中选择“属性”选项,得到“ Dialog Properties”对话框。在” General”选项卡中,按要求改变对话框的ID 和标题名称。 ( 5)同上步操作类似,改变“ Styles”选项。然后使用“控件调色板”来设计对话框。最后得到如图 7 所示的对话框图。 图 7:对话框创建效果图 4.4.2编辑 用户界面 应用程序 利用 MFC AppWizard (dll) ,工程类型选用 MFC 的常规 DLL (Regular DLL using shared MFC DLL) ,生成一个 DLL 工程 ,加入对话框资源 ,通过 MFC ClassWizard 生成从 CDialog 继承出来的 CParamDlg 类,它负责处理用户界面上的数据输入,同时通过 MFC ClassWizard 在这个类中添加成员变量,并编写相应的消息处理函数和代码,具体代码见附录中的 paramDlg.cpp 文件。 4.4.3添加一个数据接口文件 为 了得到界面上输入的参数,在工程中需要添加一个数据接口文件interface.cpp,定义 声明导出变量和导出函数 。该接口文件内容如下: #ifndef GUIINTERFACE_H #define GUIINTERFACE_H _declspec(dllexport) float m_basicDiameter,m_axisDiameter,m_basicWidth; _declspec(dllexport) int m_teethNum; 武汉工业学院毕业设计 21 extern C _declspec(dllexport) BOOL LoadDialog(); extern C _declspec(dllexport) float GetBasicDiameter(); extern C _declspec(dllexport) float GetBasicWidth(); extern C _declspec(dllexport) float GetaxisDiameter(); extern C _declspec(dllexport) int GetTeethNum(); #endif 并对该项目下的工程文 件进行 编译 ,生成 股 gui. Dll。其编译实现代码见附录中的 paramDlg.cpp 文件。 4.5 应用程序注册与运行 要使 Pro/TOOLKIT应用程序加载到 Pro/ENGINEER 环境中,并在其中运行,首先要制作一个名为 protk.dat 的注册文件。通过这个文件向 Pro/ENGINEER 提供 Pro/TOOLKIT 应用程序的有关信息,也就是告诉 Pro/ENGINEER 此应用程序的可执行文件在哪里;菜单资源文件和对话框资源文件在哪里;以及此程序所依据的 Pro/TOOLKIT的版本信息。 4.5.1 注册文件的编写 注册文件是一个文本文件,每一行都有一个预先定义的关键词。该文件的内容如下: NAME beltwheel EXEC_FILE F:xiazheweidllclytaper.dll TEXT_DIR F:xiazheweitext STARTUP dll REVISION 2007.1 ALLOW_STOP TRUE END 4.5.2 应用程序的注册 编写好上面的注册文件后,就可以利用此注册文件进行 Pro/TOOLKIT应用程序的注册,共有两种注册方式:自动注册 和人工注册。 ( 1) 自动注册 自动注册是指将文件放到 Pro/ENGINEER 的启动目录下,在运行Pro/ENGINEER 时, Pro/ENGINEER 自动启动注册文件里所有的 Pro/TOOLKIT应武汉工业学院毕业设计 22 用程序。 ( 2) 人工注册 采用这种方式时,注册文件不在启动目录下启动应用程序。本文将采用人工注册方式对应用程序进行程序注册。下面将介绍人工注册的具体步骤: ( a) 在 Pro/ENGINEER 环境下,单击“工具”主菜单下的“ 辅助应用程序”子菜单,弹出如图示 8所示对话框。 ( b) 单击如图所示对话框中的“注册”按钮,弹出如图 9 所示的“登记 辅助应用程序”对话框,选择所建立的 protk.dat 文件。 ( c) 在“登记辅助应用程序”对话框中,单击“打开”按钮,弹出对话框,单击“启动”按钮,应用程序开始运行。 这时就可以看到 Pro/ENGINEER的菜单项中多了一个“带轮设计 ” 按钮。 图 8:应用程序注册图 图 9:“登记辅助应用程序”对话框 4.5.3 应用程序的运行 注册完毕后, 我们就可以看到 Pro/ENGINEER 的菜单项中多了一个“带轮设计 ” 按钮(如图 10)。点击该按钮,我们就可以进入程序 的运行,出现一个带轮设计参数输入的对话框。在该对话框输入相关的设计驱动参数点击“确定”按钮,就会自动生成在该参数下的带轮三维实体模型图。假使输入轮槽数 3、基准直径80、轴孔直径 36、基准宽度 8.5等参数(如图 11),确定运行就可以产生编码为385080036带轮的实体图( 如图 12所示)。再次调用带轮设计对话框,输入轮槽数4、基准直径 180、轴孔直径 45、基准宽度 14等参数(如图 13),运行后就可以产生编码为 414180045带轮的实体图(如图 14)。通过以上调试,我们发现该程序可以平稳快速的正常运行。 武汉工业学院毕业设计 23 图 10:注册后运行菜单 图 11: 385080036 参数输入对话框图 图 12: :编码 385080036 实体图 图 13: 414180045 参数输入对话框 图 14:编码 414180045 实体图 武汉工业学院毕业设计 24 在得到带轮实体图后,可以继续利用 PRO/E 强大的图形变换功能,将三维实体图转换成二维平面投影图,从而形成生产车间工程用图。同时,也可以将此图转入AutoCAD 中进行绘制修改等。编码 385080036 的带轮转化为二维图的效果图见图 15。 图 15:编码 385080036 三维图转化维二维的效果图 武汉工业学院毕业设计 25 结 论 在 Pro/Engineer三维模型的基础上进行参数化设计系统的开发,是一种非常实用和高效的 CAD/CAM 应用软件系统的开发方法。由应用程序检索和处理不同驱动参数下的特征约束参数,调出模型库中的对应三维实体图,完全可实现零件快速设计的要求,从而提高设计效率和质量 。总的来说有以 下几个优点和特色: ( 1)在 VC+6.0集成开发环境下编写调用 Pro/E的接口程序,调用 Pro/E二次开发包Pro/TOOLKIT很好地实现系统的参数传递和修改。 ( 2)利用 Pro/ENGINEER WILDFIRE 三维参数化设计平台上利用 Pro/TOOLKIT 开发工具添加用户菜单,调用模型库,实现带轮模型的参数化显示、修改和分析。 ( 3) 用户可以结合自己实际情况定制个性化的 Pro/ENGINEER 系统 ,做到 真正的全相关性,做到任何地方的修改都会自动反映到所有相关地方,做到管理并发进程、实现并行工程的能力 。 ( 4)本平台设计界面友好,操作简单 ,符合工程人员的设计思想,只需输入几个参数,利用参数驱动,就可生成所需的零件实体三维图,能够很好地提高设计效率。 本论文只是将本平台运用于带轮并且没有通过自定义特征来建模,所以其有很好的利用发展前景。在此作以下展望: ( 1)用户自定义特征建模,利用约束特征定义,可以更大更广泛地实现带轮的设计,从而实现真正的参数化。 ( 2)本平台同样可以发展称为其他零部件的设计系统,主要是对相关程序参数和模型库等进行一定修改就可以实现零件的参数化设计。 ( 3) Pro/ENGINEER 提供 的二次开发工具 Pro/TOOLKIT 可以比较容易地实现由程序动态地、自动地进行特征建模的功能,并且所建模型能由程序自动加入较为丰富的非几何特征,并存入模型统一的数据库、特征库中,为 CAD/CAM/CAE/CAPP 系统的集成打下良好基础,这是本设计将来需要扩展的一个重要方向。 武汉工业学院毕业设计 26 谢 辞 为期三个月的毕业设计即将结束,在整个毕业设计过程中,让我熟悉参数化设计方法的实现过程。这种设计方法可以很好地实现零 部件的设计。由于参数化设计方法涉及到的知识面很广,所以在设计过程中遇到了很到困难,令我庆幸的是在整个过程中得到了很多老师同学的帮助和鼓励。 首先感谢学校能够提供很好的毕业设计的环境,从实验室、 CAD 机房到图书管等都免费对我们开放。其次要感谢我的指导老师叶老师,叶老师为我们毕业设计制定了周密的计划,从一开始的翻译到三维实体图实现到编程到论文的修改等过程中都一一教我。我的每一步设计的实现都得益于叶老师的耐心指导。同时,叶老师严谨的治学态度和正直的为人精神,都将对我产生深远的影响。另外,在设计过程中,得到了诸多 同学的帮助,在此一并表示感谢。 最后,再此感谢母校四年的培育,感谢四年来给我知识和思想的恩师! 武汉工业学院毕业设计 27 参 考 文 献 1管耀文 . Pro/E机械设计实例课堂 M.北京:人民邮电出版社, 2006年 2月 . 2吴卓 ,赵国霞 ,丁志磊 .基于 PRO/E二次开发技术参数化技术的研究与应用 J. 工程机械 , 2006( 6) : 4-6. 3戴同 CAD/CAM/CAPP基本教程 M北京:机械工业出版社, l997. 4董晓英 ,李秀莲 .现代 CAD技术的发展 J.农机化研究, 2004( 6): 15-16. 5黄维通 .VC+面向对象与可视化程序设计 .北京:清华大学出版社, 2003. 6C+程序设计(第三版) .北京:清华大学出版社, 2003. 7刘玲 ,周旭东 .VC+对 Pro/E二次开发参数化的研究 J.机械, 2004( 9):39-41. 8王晓林,唐良宝 .Pro/Toolkit的二次开发方法研究与实例分析 J. 机械研究与应用 , 2006,19( 12) :97-100. 9二代龙震工作室 . Pro/Toolkit插件设计 M.北京:电子工业出版社, 2005. 10杨青等 .基于 Pro/E的三维零件模型的参数化设计 J.机械设计 ,2006年月 , 23(9):53-56. 11林清安 . Pro/Engineer零件设计 M.北京:北京大学出版社, 2001. 12黄恒星 . Pro/Engineer模型参数分析 M.北京:人民邮电出版社, 2005. 13蒋素清 ,周如俊 ,蒋红平 .基于 Pro/E参数化造型技术的研究与应用 J. 邢台职业技术学院学报 , 2006,23(10):43-45. 14沈斌等 .Pro/E技术在零件参数化设计系统中的应用 J.机电 产品开发与创新 ,2006,19(1): 73-75. 15王晓林,唐良宝 .Pro/Toolkit的二次开发方法研究与实例分析 J. 机械研究与应用 , 2006,19( 12) :97-100. 16武汉工业学院机械基础教研室 .机械设计课程设计 . 17钟启 ,李潇波 ,邱清盈 .基于 Pro/Engineer二次开发带传动参数化 CADJ. 轻工机械, 2006, 24( 1) :62-64. 18徐幜 .机械设计手册 33.北京:机械工业出版社, 1988. 19濮良贵 纪名刚 .机械设计 M.北京:高等 教育出版社, 2001. 20Pro/Engineer数控加工及二次开发技术 M.北京:机械工业出版社, 2005. 21曹淼龙等 .使用 VC开发 Pro/TOOLKIT应用程序 J.模具工程 ,2006,61(4):53-56. 22徐军民 ,王艳霞 .基于 Pro/E的三维参数化零件设计 J.浙江科技学院报 , 2005, 17(l):18-20. 23李世国 Pro/Toolkit程序计 M北京:机械工业出版社, 2003 24张继春二次开发实用教程 M北京:北京大学出版社, 2003. 武汉工业学院毕业设计 28 附表 1: V 带轮的基准直径系列及其对应外径 基准直径 dd 带型 Y Z( SPZ) A( SPA) B( SPB) C( SPC) D E 外径 da 50 53.2 54 63 66.2 67 71 74.2 75 75 79 80.5 80 83.2 8844 85.5 85 90.5 90 93.2 94 95.5 95 100.5 100 103.2 104 105.5 106 111.5 112 115.2 116 117.5 118 123.5 125 128.2 129 130.5 132 132 136 137.5 139 139 140 144 145.5 147 150 154 155.5 157 160 164 165.5 167 170 177 180 184 185.5 187 200 204 205.5 207 209.6 212 219 221.6 224 228 229.5 231 233.6 236 243 245.6 250 254 255.5 257 259.6 265 274.6 280 284 285.5 287 289.6 315 319 320.5 322 324.6 355 359 360.5 362 364.6 371.2 375 391.2 400 404 405.5 407 409.6 416.2 425 441.2 450 455.5 457 459.6 466.2 475 491.2 500 504 505.5 507 509 516.2 519.2 武汉工业学院毕业设计 29 附表 2: 带轮键槽尺寸的确定 毂孔径 d b h t2 6-8 2 2 1 8-10 3 3 1.4 10-12 4 4 1.8 12-17 5 5 23 17-22 6 6 2.8 30-38 10 8 3.3 38-44 12 8 3.3 44-50 14 9 3.8 50-58 16 10 5.3 58-65 18 11 4.4 65-75 20 12 4.9 75-85 22 14 5.4 85-95 25 14 5.4 95-110 28 16 6.4 110-130 32 18 7.4 130-150 36 20 8.4 150-170 40 22 9.4 170-200 45 25 10.5 200-230 50 28 11.4 230-260 56 32 12.4 260-290 63 32 12.4 290-330 70 36 14.4 330-380 80 40 15.4 380-440 90 45 17.4 440-500 100 50 19.5 武汉工业学院毕业设计 30 附录 3: GuiInterface.cpp 程序 #include StdAfx.h #include paramdlg.h #include guiinterface.h extern C _declspec(dllexport) BOOL LoadDialog() AFX_MANAGE_STATE(AfxGetStaticModuleState(); CParamDlg paramDlg; if(paramDlg.DoModal() = IDOK) m_teethNum = paramDlg.m_teethNum; m_basicDiameter = paramDlg.m_basicDiameter; m_axisDiameter=paramDlg.m_axisDiameter; m_basicWidth= paramDlg.m_basicWidth; return TRUE; return FALSE; extern C _declspec(dllexport) float GetBasicDiameter() return m_basicDiameter; extern C _declspec(dllexport) float GetBasicWidth() return m_basicWidth; extern C _declspec(dllexport) float GetAxisDiameter() return m_axisDiameter; extern C _declspec(dllexport) int GetTeethNum() return m_teethNum; 附录 4: ParamDlg.cpp 程序 / ParamDlg.cpp : implementation file / #include stdafx.h #include gui.h #include ParamDlg.h #ifdef _DEBUG #define new DEBUG_NEW 武汉工业学院毕业设计 31 #undef THIS_FILE static char THIS_FILE = _FILE_; #endif / / CParamDlg dialog CParamDlg:CParamDlg(CWnd* pParent /*=NULL*/) : CDialog(CParamDlg:IDD, pParent) /AFX_DATA_INIT(CParamDlg); m_teethNum = 0; m_basicDiameter = 0.0f; m_axisDiameter = 0.0f; m_basicWidth = 0.0f; /AFX_DATA_INIT void CParamDlg:DoDataExchange(CDataExchange* pDX) CDialog:DoDataExchange(pDX); /AFX_DATA_MAP(CParamDlg) DDX_Text(pDX, IDC_BIGNUM, m_teethNum); DDX_Text(pDX, IDC_BASICDIA, m_basicDiameter); DDX_Text(pDX, IDC_AXISDIA, m_axisDiameter); D

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论