[工学]基于UG的皮带轮参数化设计.doc_第1页
[工学]基于UG的皮带轮参数化设计.doc_第2页
[工学]基于UG的皮带轮参数化设计.doc_第3页
[工学]基于UG的皮带轮参数化设计.doc_第4页
[工学]基于UG的皮带轮参数化设计.doc_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

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

文档简介

摘要皮带传动是机械设备中最常用的传动装置,在机械设计中皮带轮的设计占有相当大的比重。传统的设计方法是对每次的设计需要单独的建立V带轮结构,但轮体结构方面有轮辐式、腹板式、孔板式、实心式之分,而且这些结构形式之间差别很大。为此利用UG软件建立皮带轮的模板,当皮带轮参数改变时更新模型非常方便、快捷。提高了工作效率以及繁杂重复的设计任务。基于皮带轮各参数间的关系,在UG中利用皮带轮参数表达式绘制皮带轮实体模型,实现皮带轮在UG中的参数化设计。UG/Open二次开发模块是UG软件的二次开发工具集,利用该模块可对UG系统进行用户化开发,可满足用户进行各种二次开发的需求。学习了UG二次开发的各种工具,了解了各种工具的特点和适用范围。选择 UG/Open API编程语言,结合使用UG/Open Menu Script和UG/Open UI Styler开发工具,实现了基于UG二次开发工具的实心式皮带轮、腹板式皮带轮、孔板式皮带轮以及椭圆轮辐式皮带轮的参数化设计。关键词:皮带轮;二次开发;参数化;UG/Open APIAbstractABSTRACTMachinery and equipment belt transmission is the most commonly used pulley in mechanical design in the design of pulley occupy a large proportion. Traditional design method is the design of the needs of each individual to establish V pulley structure, but have a round structure Spoke, abdominal plate, hole plate, solid type of points, and these structural differences between forms. To this end the establishment of the use of UG software template pulley, when the pulley change and updating the model parameters is very convenient, fast. Enhance the work efficiency as well as the complexity of the design task to repeat. Based on the relationship of the pulley parameters, draw pulley solid model use expression in UG NX, achieve parameters design in UGNX. UG/Open module is the open tools in UG, using the tools we can empolder our UG system as we need, users can almost satisfy all kinds of secondary development needs by use the tools. Understand the characteristics and scope of application of all the tools of UG/Open after studying each kind of tools. Select UG/Open API programming language,a combination of UG/Open Menu Script and UG/Open UI Styler development tools. Achieve parameters design of solid type pulley,ventral-plate pulley, hole-plate pulley,spoke-elliptical pulley base on the UG/Open tools. Key Words:pulley;parameter;pulley;UG/Open API目录目 录第1章 绪论11.1 课题的研究背景11.2 课题的研究内容和解决方法2第2章 UG二次开发的研究5 2.1 UG软件概述52.1.1 UG软件的功能介绍52.1.2 UG功能模块5 2.2 UG二次开发相关工具概述62.2.1 UG/OPEN GRIP62.2.2 UG/OPEN API72.2.3 UG/OPEN Menu Script72.2.4 UG/OPEN UI Styler82.2.5 User Tools工具9第 3 章 二次开发方案的选择113.1可行方案113.2 方案选择123.3 利用二次开发工具制作系统菜单133.3.1 设置系统环境变量133.3.2制作菜单13第 4 章 实心式带轮的参数化设计174.1 数学模型174.2 实心式带轮三维建模17第 5章 腹板式带轮的参数化设计235.1 数学模型235.2 腹板式带轮三维建模23第 6 章 孔板式带轮的参数化设计256.1 数学模型256.2 孔板式带轮三维建模25第7 章 椭圆轮辐式带轮的参数化设计29第 8 章 程序设计318.1 总体方案设计318.2 对话框设计328.3 程序设计38第 9 章 结论与展望49参考文献51致谢52附录535757基于UG的皮带轮参数化设计第1章 绪论1.1 课题的研究背景皮带传动是一种依靠摩擦力来传递运动和动力的机械传动。它的特点主要表现在:皮带有良好的弹性,在工作中能缓和冲击和振动,运动平稳无噪音。载荷过大时皮带在轮上打滑,因而可以防止其他零件损坏,起安全保护作用。皮带是中间零件。它可以在一定范围内根据需要来选定长度,以适应中心距要求较大的工作条件。结构简单制造容易,安装和维修方便,成本较低。故而皮带传动在机械传动中占有重要的地位。皮带轮设计在皮带轮制造应用过程中占有重要地位。传统的皮带轮设计过程繁冗,效率低,采用传统的设计方法设计较为合理的皮带轮要反复修正参数、多次校核计算,花费很长时间才能实现。另外,皮带轮类零件的绘图工作(包括几何绘图、标注、参数表填写等内容)也是一项繁杂而费时的工作1。但皮带轮类零件大部分具有相似的结构和形状,在新产品的设计和图纸绘制过程中,不可避免地要多次反复修改,进行零件形状、尺寸的综合协调和优化,这时寻求一种简便、合理的设计方法,提高设计工作效率,是皮带轮设计工作者的迫切愿望。因此,借助CAD技术实现其绘图过程的参数化和自动化,对于提高设计效率和保证设计质量具有重要意义2。因此,现代皮带轮机构的设计建模技术有着广泛的工程应用背景和研究意义 。随着计算机技术和现代设计理论与方法的迅速发展,三维设计软件尤其是Unigraphics 在机械零件和产品设计中的日益普及,皮带轮实体在三维软件特别是在UG中的绘制变得越来越重要。但基于UG的皮带轮设计系统一般都局限于皮带轮二维轮廓的绘制或三维实体建模,皮带轮参数的设计计算难以与CAD 系统很好地集成, 给皮带轮的CAD/ CAM 带来不利影响3。建模技术是CAD的核心技术,参数化造型技术和特征造型技术是新一代继承化CAD系统应用研究的热点理论4。目前国内外对二维图形参数化和简单三维实体的参数化造型较为成熟。对复杂的三维实体的参数化造型尚不多见,特别是皮带轮这类形状复杂、种类繁多的三维实体参数化造型设计更少。这有多方面原因:一方面皮带轮二维图形参数化设计能够满足传统的皮带轮加工要求;另一方面运用低级CAD软件对复杂的三维实体很难实现参数化虚拟造型设计。随着塑料皮带轮的广泛应用和快速成型与虚拟制造技术的迅速发展,传统的二维图形已不能满足现在的设计、加工要求5。因此,在三维软件上绘制皮带轮实体变得十分重要。但是,由于皮带轮形状复杂,给设计、绘图带来很大不便。并且皮带轮各参数间都有严格的函数关系,再加上随着当代机械制造业的不断发展,皮带轮的精度要求也越来越高,皮带轮实体的绘制较为麻烦。皮带轮并不是一个标准件,它的各个参数随着设计要求的不同而不同。如果每设计一个皮带轮都要画一个对应的实体部件的话,那不仅增加了设计者的劳动量,还大大降低了设计效率,阻碍了企业的生产和发展。参数化设计是新一代智能化、集成化CAD系统的核心内容,也是当前CAD技术的研究热点6。用大型的三维软件实现皮带轮的参数化造型已成为设计者的迫切需求,皮带轮参数化造型有重要的意义:(1)皮带传动的参数化设计与建模系统是CAD技术与皮带轮设计相结合的产物,也是两者发展的趋势所在。(2)实现设计过程自动化避免了设计人员手动查阅大量的数据,也避免了手工取点造型的复杂过程,该系统的开发,可以将手算设计的工作人员从繁琐、低效的工作中解放了出来。(3)实现皮带轮的参数化设计以及精确造型,可以将设计计算、三维造型与绘制工程图的无缝结合,同时为皮带轮的有限元分析、机构仿真和数控加工等工作奠定基础。(4)采用建立原始皮带轮结构模型并驱动其特征参数,为其它复杂曲面的造型提供了有益的参考。本课题利用UG的二次开发技术,为解决皮带轮参数化设计问题提供了可行的方法,通过直接输入皮带轮的设计条件,利用计算得出的有关设计参数(如V带根数、基准直径、安装配合的轴直径等) 进行实体建模,实现皮带轮的参数化设计,提高皮带轮设计的效率和准确性。1.2 课题的研究内容和解决方法本课题利用大型软件UG NX4.0来实现皮带轮的三维参数化造型,通过改变皮带轮的一些基本参数,生成其相应的皮带轮。要达到相应的设计要求,首先要知道如何在UG中绘制皮带轮部件,要绘制皮带轮必然要知道皮带轮的各个参数间的关系,精确知道皮带轮的三维模型。画出皮带轮模型后,还应知道UG二次开发的知识,灵活运用UG系统提供的二次开发工具,在模型的基础上编制相应的程序,最后完成皮带轮参数化设计模块的开发。具体内容和步骤如下:(1) 分析皮带轮产品,设计其基型:考虑产品的零部件尺寸约束及几何约束,基于模型驱动技术,构建三维参数化模型库,然后提取变形参数。(2) 利用UG二次开发工具创建交互式程序界面,通过用户菜单以及皮带轮参数设计对话框的设计,使用户通过输入参数即可在UG中实现皮带轮的自动生成。UG 软件是集CAD/CAM/CAE一体化的三维参数化软件,是当今世界上最为先进的计算机辅助设计、制造和分析软件,在国内外使用相当广泛。另外它所提供的二次开发语言模块UG/Open API、UG/Open GRIP和辅助开发模块UG/Open Menu Script与UG/Open UI Styler及其良好的高级语言接口,使UG的图形功能和计算功能有机的结合起来,便于用户去开发各种基于自身需要的专用CAD系统。使用UG/Open API和UG/Open GRIP中任何一个模块都能实现UG的二次开发,再结合辅助模块,就能开发出UG界面的应用模块。因此,合理利用UG的二次开发语言模块和辅助模块,就可以实现在UG环境下对皮带轮进行参数化设计。第2章 UG二次开发的研究Unigraphics(简称UG)是当前世界上最先进和紧密集成的、面向制造行业的CAID/CAD/CAE/CAM高端软件。它为制造业产品开发的全过程提供解决方案,主要功能包括:概念设计、工程设计、性能分析和制造。此外,UG软件还提供了CAD/CAE/CAM业界最先进的编程工具集,以满足用户二次开发的需要。本章先讨论UG软件的主要功能,然后简单介绍二次开发各功能模块的特点和应用。2.1 UG软件概述2.1.1 UG软件的功能介绍UG是知识驱动自动化技术领域中的领先者。它实现了设计优化技术与基于产品和过程的知识工程的组合,显著地改进了如汽车、航天航空、机械、消费产品、医疗仪器和工具等工业的生产率。它为各种规模的企业递交可测量的价值,更快地递交产品到市场,使复杂产品的设计简化,减少产品成本和增加企业的竞争实力 7。NX是一个交互的计算机辅助设计、计算机辅助制造和辅助工程(CAD/CAE/CAM)系统。CAD功能自动化是在今天制造公司中见到的一般工程、设计和制图能力;CAM功能利用NX描述完成零件的设计模型,为现代机床提供NC编程;CAE功能横越一广范的工程学科,提供许多的产品、装配和零件的性能防真能力。NX是一个全三维、双精度系统,它允许用户精确地描述几乎任一几何形状。通过组合这些形状,用户可以设计、分析产品和建立他们的工程图。一但设计完成,制造应用允许用户选择描述零件的几何体,加入制造信息,如刀具直径并自动生成一刀具位置,源文件(CLSF),它可用来驱动大多数NC机床8。目前UGS公司已经推出NX5产品,本次设计中使用的是NX4版本的软件。NX4的特点是:1、为了数字化产品开发集成的自动化;2、在所有开发学科中的新能力,包括工业设计、防真、工装、加工和管理;3、在一个全面的产品生命周期管理(PLM)解决力案内的领先前沿的CAD、CAE和CAM技术。2.1.2 UG功能模块利用NX,可以建立、存储、恢复和操纵设计与制造信息,典型地通过建立描述一零件的几何体开始工作。NX功能被划分成共同功能的一系列“应用(Application)”共18个模块,各模块分别为:1、入口(Gateway):对所有其他交互应用的首要必备的应用;2、建模(Modeling):包括实体、特征、自由形状、钣金特征建模和用户定义特征;3、装配(Assembilies):支持装配建模;4、几何公差模块(Geometric Tolerancing Module):让用户捕捉公差;5、产品和制造信息(PMI Introduction):可用于在三维环境中对产品形成文档说明;6、分析(Analysis):包括注塑模流动分析、运动应用和ICAD;7、制图(Drafting):可将三维模型生成二维视图;8、高质量图像(High Quality Image):生成逼真照片的图像;9、知识熔接(Knowledge Fusion):允许用户应用工程知识驱动规则和设计意图到NX中的几何模型和装配;10、制造(Manufacturing):可进行虚拟加工和自动加工编程;11、开放的用户界面设计(Open User Interface Styler):允许用户和第三方开发商生成NX对话框;12、编程语言(Programming Languages):包括GRIP和API;13、质量控制(Quallity Control);14、走线(Routing):定义围绕和通过其他NX装配的装配;15、钣金(Sheet Metal):包括钣金设计、冲压和多零件加工的栅格;16、电子表格(Spreadsheet):提供一在Xess或者电子表格应用和NX间的智能界面;17、Web Express;18、Wire Harness:可在用于描述产品机械装配的同一三维空间建立电气布线的表示。2.2 UG二次开发相关工具概述UG软件提供了CAD/CAE/CAM业界最先进的编程工具集,以满足用户二次开发的需要,这组工具集称之为UG/Open,是一系列UG开发工具的总称,它们随UG一起发布,以开放性架构面向不同的软件平台提供灵活的开发支持。UG/Open包括以下几个部分:UG/Open Menu scrip开发工具,对UG软件操作界面进行用户化开发,无须编程即可对UG标准菜单进行添加、重组、剪裁或在UG软件中集成用户自己的软件功能;UG/Open UI Styler开发工具是一个可视化编辑器,用于创建类似UG的交互界面,利用该工具,用户可为UG/Open应用程序开发独立于硬件平台的交互界面;UG/Open API开发工具提供了UG软件直接编程接口,支持C、C+、Fortran和Java等主要高级语言;UG/Open GRIP开发工具是一个类似API的UG内部开发语言,利用该工具用户可生成 NC自动化或自动建模等用户的特殊应用9。利用UG/Open提供的应用程序和开发工具,用户可以在其提供的平台上开发出适合自己需要的CAD产品。2.2.1 UG/Open GRIP UG/Open GRIP(Graphics Interactive Programming)是一种专用的图形交互编程语言。这种语言与UG系统集成,实现UG下的绝大多数的操作。GRIP语言与一般的通用语言一样,有其自身的语法结构,程序结构,内部函数,以及与其他通用语言程序相互调用的接口。一个GRIP语句是由一个或几个GRIP命令组成,GRIP命令是GRIP语言的基本组成部分。GRIP命令有三种表示格式:a)陈述格式。主要用于生成和编辑实体。b)GPA符号格式。GPA是全局参数存取(Global Parameter Access)的缩写,用于访问UG 系统中各种对象的状态和参数。c)EDA符号格式。EDA是实体数据存取(Entity Data Access)的缩写,用于访问UG数据库,能够访问各种对象的功能性数据。例如在属性、绘图和尺寸标注以及几何体等领域与UG进行交互操作时,其参数可用EDA格式的命令取得。用GRIP语言编写GRIP源程序,可以在windows的记事本中进行,记为*.grs;或者在GRIP高级开发环境(GRAD-Grip Advanced Development Environment)中编写。执行GRIP程序必需进入UG环境中,运行FileExecute UG/OpenGrip。GRIP编程语言是面向工程师的语言,具有简单、易学、易用的特点,但是所编写的程序长、复杂。要考虑程序的各个细节问题。因此,GRIP语言常用于开发一些规模比较小的程序,例如,同类零件建模、计算和分析、数据访问等程序。与GRIP语言相比较,用API函数编程则可实现功能复杂的操作10。2.2.2 UG/Open API作为UG NX4.0与外部应用程序之间的接口,UG/Open API是一系列函数的集合。通过UG/Open API的编程,用户几乎能够实现所有的UG NX4.0功能。开发人员可以通过用C+语言编程来调用这些函数,从而实现用户的需要。(1)对UG part文件及相应模型进行操作,包括建立UG NX4.0模型、查询模型对象、建立并建立装配体,以及创建工程图等。(2)在UG NX4.0中创建交互式程序界面。(3)创建并管理用户定义对象等。应用函数时应注意所有的UG/Open API应用必须及时进行初始化和终止,以确保获取或者释放UG/Open API的执行许可权限。初始化函数是UF_ initialize (),当开始调用UG/Open API的函数时应先调用UF_ initialize()来获取执行许可权限。一般来说,我们在变量声明完成后,第1个调用UG/Open API的函数就是UF_ initialize()。终止函数是UF_ terminate(),当不再调用UG/Open API的函数时必须调用UF_ terminate()来释放执行许可。UG/Open API程序能在两种不同环境(依赖于程序的连接方式)下运行,即Internal环境(也称为“Internal开发模式”)和External模式。其中Internal环境下的程序只能在UG NX4.0的界面环境(session)下运行,在运行这些程序时他们被加载到UG NX4.0的运行空间中(UG NX4.0分配的内存);External模式开发的程序能在操作系统(Windows NT/2000/XP及UNIX)下运行,不在UG NX4.0环境中或作为UG NX4.0的子进程运行。尽管没有图形显示,但UG/Open API提供了函数用于打印机或绘图仪输出,也可以输出为CGM文件等其他数据文件11。2.2.3 UG/Open Menu Script UG/Open Menu Script不仅可以使用户利用ASC文件来编辑UG的菜单,也可以以一种无缝集成的方式为用户开发的应用程序创建菜单。Menu Script同时也提供了一个菜单栏报告工具,以帮助用户查看定制的菜单,诊断错误。对于菜单的自定义大致可以分为如下三个层次。(1)自定义菜单 该级别的自定义允许单个用户或者管理员重新安排UG的功能,去除在其产品开发过程中不需要的功能。这种级别的自定义不需要编程实现。(2)自定义UG功能 该级别的自定义允许单个用户或者管理员取代或增加标准的UG功能,并添加其自己定义的功能。(3)添加自定义应用 该级别的自定义其目的在于使用户或第三方开发商开发的应用程序完全集成在UG中。该级别的自定义需要编程实现。 UG的菜单文件是扩展名为.men的文本文件,可以使用Windows 的记事本进行编辑。UG/Open Menu Script提供了一套用于定义UG菜单的脚本语言。实际上,UG系统的菜单文件也是用该脚本语言编写的。UG为主菜单栏、快捷菜单栏提供了丰富的系统菜单文件,这些菜单文件默认情况下都保存在UG_BASE_DIR/UG/menus文件夹下12。 使用UG/Open Menu Script自定义UG菜单可以有两种方法,分别是使用Add-on菜单文件和复制和编辑系统菜单文件。使用Add-on菜单方法是添加编辑量很小的菜单文件到菜单文件的目录中,使用Add-on菜单可以移出用户不需要的菜单项;添加新的菜单和菜单项;重新组织UG的菜单;修改菜单和菜单项的标题;为已经存在的应用按钮添加动态库和菜单文件。复制和编辑系统菜单文件是指复制、编辑系统菜单文件并将其放置在特定的目录下,覆盖原始菜单文件。系统推荐使用Add-on菜单文件方法,该方法不仅编辑起来比较方便、易于维护,而且其功能也相当强大,基本可以满足应用开发的所有需求。使用Add-on菜单文件的另一个优点在于它可以被UG很方便地自动加载。对于与具体应用模式无关的菜单文件放置在startup文件夹下,与具体应用模式相关的菜单文件放置在相应的application文件夹下,通过使用MENU_FILES声明,即可将菜单名与应用模式按钮相关联,点击该应用模式按钮后即可自动加载与其相关联的菜单文件。复制和编辑系统菜单文件方法不推荐使用,这主要是由于其编辑起来相当复杂,特别是对于像ug_main.men这样大型的菜单文件,其维护也非常麻烦。2.2.4 UG/Open UI Styler UI Styler是开发UG对话框的可视化工具,生成的对话框能与UG集成,让用户更方便、更高效地与UG进行交互操作。UG/Open UI Styler模块提供了强大的制作UG风格窗口的功能,其主要功能如下:(1) 提供了让开发人员建造UG风格对话框的可视化环境,并能生成UG/Open UI Styler文件和C代码,从而使用户在使用UG/Open UI Styler产生的对话框时,不必考虑图形用户界面(Graphical User Interface缩写为GUI )的实现。(2) 利用可视化环境快速生成UG风格对话框,从而减少开发时间。(3) 通过选取和放置控件,从而能实现所见即所得。(4) 可以在对话框中实现用户自定义位图。(5) 提供了属性编辑器,从而允许开发人员设置和修改控件属性。(6) UI Styelr产生的对话框可以在Menu Script中被调用,因此可以实现在UG菜单项上调用UI Styler产生的对话框,从而将用户应用程序和UG软件完全融合。应用UI Styler这一工具可以使开发人员方便、快速地设计出与UG界面风格一致的对话框,避免其他复杂的编程。而且可以和用其他开发工具开发出的结果进行集成。UG/Open UI Styler工具和UG/Open Menu Script工具一样,都只具有某一方面的功能:UG/Open UI Styler用于对话框的开发,UG/Open Menu Script用于菜单的开发。2.2.5 User Tools工具 UG软件为用户提供了一个调用二次开发结果的交互式接口:User Tools。它的功能是生成弹出式对话框或工具条,其界面风格与UG界面风格一致。通过执行对话框或工具条,操作相应的控件就可运行菜单文件、宏文件、UG/Open GRIP程序、UG/Open API程序和其他二次开发文件。例如,执行皮带轮生成的程序集,可以用User Tools工具产生两个对话框分别为实心式皮带轮和腹板式皮带轮,然后在相应的对话框上进行操作就生成相应种类的皮带轮。通过编写对话框定义文件(*.utd)来实现User Tool工具的功能。编写文件完成以后,在UG 中执行ToolsCustomizeUser ToolsLoad选择所编写的*.utd文件即可弹出需要的对话框或工具条。*.utd这个文件是文本文件,可用 Windows中的记事本进行编写和编辑。一种比较简单的实现方法:拷贝UG中的模板文件Usertoo1.utd到UG启动目录下,然后编辑模板文件,实现所需要的功能。在以前较早版本中例如V13,运用User Tools工具必须编写两个文件:菜单定义文件(*.utm)和对话框定义文件(*.utd),然后通过执行菜单项弹出相应的对话框或工具条。现在,较高的UG版本已经省略产生菜单这一步,操作同上所述。在UG 界面中应用File Execute UG/Open菜单执行UG/Open API程序或UG/Open GRIP程序,操作一次只能执行一个程序,而且必须找到程序所在的路径。若利用User Tools这个工具,用户可以将多个GRIP或API函数所编写的程序集成到一个User Tools对话框或者工具条中,一个程序对应一个控件,通过操作控件来调用程序,使用起来就非常方便。第3章 二次开发方案的选择3.1 可行方案UG软件为用户提供的二次开发工具不但可以独立使用,而且可以相互调用其它工具开发的结果,这就大大扩展了工具本身所具有的功能,方便用户进行二次开发。它们之间的关系如下附图所示:Menu Script所开发的菜单可以与User Tools开发的对话框相互调用;Menu Script所开发的菜单与User Tools开发的对话框可以调用UI Styler开发的对话框;Menu Script、User Tools和UI Styler开发的对话框均可以调用GRIP程序和API程序。GRIP程序和API程序之间也可以相互调用。另外,使用UG二次开发工具必须要设置相应的环境变量,这样系统才能找到这些开发文件,执行相应的程序。UIStyler DialogUser ToolsAPIGRIPMenuScript图3-1 二次开发工具关系图 本课题的目的是以UG为平台,使用UG二次开发工具,实现皮带轮的参数化设计。在UG界面中就是实现在对话框中输入皮带轮的各个参数,确定后UG系统自动生成对应的实体模型。要达到设计要求,首先必须自定义一个菜单,制作相对应的对话框,使设计者能调用对应的对话框并输入所需皮带轮的参数。之后更重要的是编写一定的程序,程序的作用是读取对话框中的参数并自动生成所需的实体模型。通过对UG系统中各个二次开发工具的性能和特点的分析,要实现设计要求有以下几种方案:(1)在菜单和对话框的基础上使用GRIP语言编写生成皮带轮实体的程序。由二次开发工具之间的关系我们知道,UG对话框可以调用GRIP程序。只要能编写出一个生成皮带轮实体的程序,我们就可以用编制好的对话框调用该程序,生成皮带轮实体,满足设计要求。在UG/Open GRIP 工具中中拥有丰富的函数,可实现几何体的生成、数据的存取和分析、变换等一系列功能。因此,使用GRIP完全能编写出生成皮带轮实体程序,程序编写好后使用User Tool工具对程序进行编译连接,最后生成可被对话框调用的可执行程序。将可执行程序放在对应的文件夹里就可实现对话框对程序的调用,执行程序,满足设计要求。(2)在菜单和对话框的基础上使用API语言编写生成皮带轮实体的程序。同样,对话框也能实现对API程序的调用。只要能编写出实现皮带轮建模的API程序,就能实现设计要求。API与GRIP一样,也具有丰富的函数。运用该语言可以实现对部件保存、打开等基本操作、对表达式的操作、装配体操作、工程图的生成和控制等功能,可以满足生成皮带轮实体的程序的编写。此外,API语言借助C+来编写程序,借助C+强大的编程功能,编写API程序比GRIP更加灵活、更加的简单使用,还能满足更多的编程要求。在C+中编写好相应的程序后编译程序,将生成的可执行程序(.dll)放在对应的文件夹下,就可以实现对话框对程序的调用和执行,满足设计要求。(3)基于三维模型的参数化程序设计。该方法采用三维模型与程序控制相结合的方式,在创建好三维模型的基础上,根据部件的设计要求建立一组可以完全控制三维模型形状和大小的设计参数。参数化程序针对该部件的设计参数进行编程,实现设计参数的查询、修改,根据新的参数值更新模型从而实现设计变更。其中程序的编写是使用API语言的表达式功能。在本课题中,采用这种方案具体方法是先新建一个部件,在建模模块下写好表达式,然后使用表达式绘出皮带轮的三维实体,并确保实体模型应随着表达式的值变化而变化。建好模型后,编写菜单和对话框,然后在C+上用API语言进行编程,程序应把对话框和模型联系起来,将对话框中输入的值传递到模型的表达式中,并更新程序。这样,当在对话框中输入皮带轮的设计参数后,运行程序,原来的皮带轮部件就会按新的表达式数据重生成模型,这样就得到了设计所需要的皮带轮实体模型。将新生成的部件另存,保留原部件,这样就可以随时生成需要的皮带轮了。 UG二次开发工具的功能非常强大,要实现本课题目的应还有其他方案,在这里只列举了这三个常用方案。3.2 方案选择 比较上述三个方案,有一个共同点就是都使用了菜单技术和对话框技术。这是为了在设计皮带轮时设计者能在UG界面下直接输入对应的参数,使该模块更加直观,方便设计者使用。这三个方案中,前两个都是使用编写程序来绘制皮带轮实体,程序比较复杂;最后一个是建立模型后将对话框中数值传递到表达式,程序较简单。皮带轮是较复杂的实体部件,精度要求也比较高,要创建皮带轮实体比较麻烦。前两种方案中,都是用程序来编写整个皮带轮实体创建过程,这要涉及到的函数非常多,程序烦琐,出现错误时不容易修改和维护。此外,在画皮带轮过程中需要修剪、变换许多曲线,这在程序中很难做到。如果要使用前两种方案,需要深入学习GRIP和API这两种语言,需要花费很多时间。而第三种方案是直接在UG界面上画实体模型,可以直接对各种特征进行编辑、修改曲线,相对于前两种方案来说更直观、更容易。不过要注意的是在第三种方案中,在画皮带轮实体过程中要注意应保证所画出的实体模型应能随着表达式中的值的变化而变化。不过在UG界面下比程序中绘制参数化皮带轮模型要直观、容易的多。在编写程序方面,最后一种方案只需写一些数值的传递的程序,使用的函数少,程序简单,易于发现错误和修改调试。同时,如果能够实现,前两种方案所得的皮带轮设计模块使用起来要比第三种方案方便。由于毕业设计时间不长,而且之前没有接触过有关二次开发的知识,在短时间内无法深入学习GRIP和API的知识,前两种方案很难实现。第三种方案最为简单,也最有可能在规定时间内完成设计任务,达到设计目的。综合比较这三种方案,最终选择第三种方案作为本次设计方案。3.3 利用二次开发工具制作系统菜单3.3.1 设置系统环境变量 虽然各种菜单的制作方法,在结构、内容和开发过程上有一定的差异,但是在整个构建过程中有其共性和相同的部分,就是菜单制作之前应先设置系统环境变量。设置了系统环境变量,UG才能找到开发内容所在目录。系统环境变量设置方法有以下两种:方法一:打开$UG_BASE_DIR/ugii目录下的ugii_env.dat文件(该文件包含Unigraphics系统的全部环境变量及系统路径定义),找到下面两条语句:#UG_VENDOR_DIR=$UGALLIANCE_DIR/vendor和#UG_SITE_DIR= $UGALLIANCE_DIR/site。将它们前面的注释符号“#”删除,以使它们起作用。这两条语句其实指明了供用户放置二次开发文件的目录。在Unigraphics初始安装时,它们不起作用,当删除了“#”号后,UG/OPEN才能从这些目录下得到二次开发的功能扩展。这两个目录的功能和结构是完全相同的,下面都有startup和application两个目录。其中startup存放Unigraphics启动时需载入的动态共享库(以ufsta()为入口的.dl1)及菜单脚本文件(.men);application目录存放具体的功能扩展程序文件(如应用模块的功能扩展共享库( .dl1)及对话框资源文件( .dlg)。Unigraphics下设置的这两个目录是为不同等级的开发者提供的,vendor目录下放置Unigraphics指定的开发商的二次产品,site目录下存放其余开发者的产品。因此vendor目录下同类内容的文件要比site目录下的优先载入。此外,在ugii_env.dat文件中还有一条语句,是用来设置用户自己二次开发内容的目录:#UG_USER_DIR =$HOME,同样将其前面的“#”号删除,并在其后使用用户自己的目录替换$HOME。例如,UG_USER_DIR=E:ugapi,在此目录下也必须建立目录startup和application,存放的内容和site及vendor下的startup、application一样,不过它的优先级更低13。 方法二:打开UG安装目录UG_BASE_DIR UGmenus下的custom_dirs.dat(用记事本打开),在文件最后添加开发的文件夹的绝对路径。在添加的文件里建立两个子目录:startup和application ,分别用来放置开发的各种文本文件(.men文件)、动态库文件和对话框文件。 上述两种方法中第二种方法较简单方便,本课题采用第二种方法。打开UG安装目录UG_BASE_DIR UGmenus下的custom_dirs.dat,在文件最后添加开发的文件夹的绝对路径E:pidailun。在E:pidailun文件夹下建立startup和application两个子目录。3.3.2 制作菜单 本课题涉及到三个皮带轮的参数化设计,因此应在一个主菜单下建立四个子菜单。在F:pidailunstartup下建立文件pidailun.men,代码如下:VERSION 120 /菜单脚本文件的版本信息EDIT UG_GATEWAY_MAIN_MENUBAR /编辑UG系统菜单文件BEFORE UG_HELP /定义菜单位于“帮助”菜单前CASCADE_BUTTON PIDAILUN /主菜单按钮名LABEL 皮带轮参数化设计 /主菜单标题END_OF_BEFORE /结束BEFORE定义MENU PIDAILUN /定义主菜单BUTTON SHIXIN_PIDAILUN /第一个子菜单名LABEL 实心式皮带轮 /第一个子菜单标题ACTIONS shixin_pidailun.dlg /第一个子菜单的响应BUTTON FUBAN_PIDAILUN /第二个子菜单名LABEL 腹板式皮带轮 /第二个子菜单标题ACTIONS fuban_pidailun.dlg /第二个子菜单的响应BUTTON KONGBAN_PIDAILUN /第三个子菜单名LABEL 孔板式皮带轮 /第三个子菜单标题ACTIONS kongban_pidailun.dlg /第三个的子菜单响应BUTTON TUOYUANLUNFU_PIDAILUN /第四个子菜单名LABEL 椭圆轮辐式皮带轮 /第四个子菜单标题ACTIONS tuoyuan_pidailun.dlg /第四个子菜单的响应END_OF_MENU /结束菜单的定义运行结果如图3-2所示:在菜单的基础上,可以制作工具栏,这样可以在工具栏点相对应的工具来直接调用对话框。工具栏是一种快速激活相关命令的工具按钮的集合。在UG中,使用菜单工具可以制作工具栏。工具栏文件是以.tbr为后缀名的文本文件,每个工具栏按钮名称应与菜单文件中相应按钮的名称相同,工具栏按钮图标所对应的位图文件,应放置在相应的application文件夹下。工具栏文件写好后,应放在对应的stratup文件夹中。编写的工具栏文件如下:TITLE 皮带轮 /工具栏标题VERSION 160 /工具栏文件的版本信息DOCK NO /工具栏导入时是浮动的BUTTON SHIXIN_PIDAILUN /实心皮带轮对应按钮的名称LABEL 实心皮带轮 /工具栏按钮的标题BITMAP shixin.bmp /实心皮带轮对应按钮图标BUTTON FUBAN_PIDAILUN /腹板皮带轮对应按钮的名称LABEL 腹板皮带轮 /工具栏按钮的标题BITMAP fuban.bmp /腹板皮带轮对应按钮图标BUTTON KONGBAN_PIDAILUN /孔板皮带轮对应按钮的名称LABEL 孔板皮带轮 /工具栏按钮的标题BITMAP kongban.bmp /孔板皮带轮对应按钮图标BUTTON TUOYUANLUNFU_PIDAILUN /椭圆轮辐皮带轮对应按钮的名称LABEL 椭圆轮辐皮带轮 /工具栏按钮的标题BITMAP tuoyuanlunfu.bmp /椭圆轮辐皮带轮对应按钮图标生成的工具栏调用后的效果图如下:第4章 实心皮带轮的参数化设计4.1 数学模型实心式皮带轮是较为规则的一类关于其中

温馨提示

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

评论

0/150

提交评论