《基于UG的齿轮的参数化设计.doc》由会员分享,可在线阅读,更多相关《基于UG的齿轮的参数化设计.doc(53页珍藏版)》请在三一办公上搜索。
1、clearnuma=0【答案】LIST连续不分屏显示信息;DISPLAY采用分屏显示信息。11、用双绞线连接两台交换机,采用_交叉线_线。586B的标准线序是_白橙、橙、白绿、蓝、白蓝、绿、白棕、棕_。C. SELECT 职员号 FROM 订单A、100Mpbs B、200Mbps C、400Mpbs D、800Mpbs【答案】数据表名7已知数据表N_LIST.DBF只有一个数值型字段DATA,且目前数据表中无记录,试编写程序,从键盘上接受20个数据存放到该数据表中,然后利用索引排序的方式找出这20个数据中的最大数和最小数并显示输出。1、在计算机网络的定义中,一个计算机网络包含多台具有_自主_
2、功能的计算机;把众多计算机有机连接起来要遵循规定的约定和规则,即_通信协议_;计算机网络的最基本特征是_资源共享_。2)为表stud1.dbf中“获奖次数”在五次以上(含5次)的学生的总成绩加上5分,“获奖次数”在五次以下的学生的总成绩加上3分,可使用命令:目录引言- 1 -第一章 绪论- 2 -1.1 课题研究的背景- 2 -1.2 课题的研究内容和解决方法- 3 -第二章 UG二次开发的研究- 4 -2.1 UG软件概述- 4 -2.1.1 UG软件的功能介绍- 4 -2.1.2 UG功能模块- 5 -2.2 UG二次开发相关工具概述- 5 -2.2.1 UG/Open GRIP- 5 -
3、2.2.2 UG/Open API- 6 -2.2.3 UG/Open Menu Script- 6 -2.2.4 UG/Open UI Styler- 7 -2.2.5 User Tools工具- 8 -2.3 UG二次开发的意义- 8 -第三章 二次方案的选择- 9 -3.1 可行方案- 9 -3.2 方案的选择- 10 -3.3 利用二次开发工具制作系统菜单- 10 -3.3.1设置系统环境变量- 10 -3.3.2制作菜单- 11 -第四章 齿轮参数化设计- 13 -4.1 渐开线的形成原理- 13 -4.2渐开线的数学模型- 14 -4.3 渐开线轮廓的绘制- 14 -4.4 直齿圆
4、柱齿轮的参数化设计- 15 -4.4.1 数学模型- 15 -4.4.2 直齿圆柱齿轮的建模- 17 -4.5 斜齿轮的参数化设计- 18 -4.5.1 数学模型- 18 -4.5.2 斜齿轮的建模- 19 -第五章 程序设计- 21 -5.1 总体方案设计- 21 -5.2 对话框设计- 22 -5.3 程序设计- 24 -第六章 结论与展望- 30 -致谢- 31 -参考文献- 32 -附录- 33 -附录A 参考文献及其摘要- 33 -附录B外文文献及其翻译- 35 -附录C 部分程序代码- 42 -插图清单图3- 1二次开发工具关系图- 9 -图3- 2菜单运行效果图- 12 -图3-
5、 3工具栏效果图- 12 -图4- 1渐开线形成图- 13 -图4- 2选择规律曲线方式- 15 -图4- 3渐开线- 15 -图4- 4直齿圆柱齿轮表达式- 16 -图4- 5绘制渐开线- 16 -图4- 6修剪前齿形- 16 -图4- 7齿形- 16 -图4- 8齿根圆绘制拉伸- 18 -图4- 9齿形拉伸- 18 -图4- 10齿轮- 18 -图4- 11斜齿轮渐开线表达式- 20 -图4- 12建立渐开线- 20 -图4- 13齿槽形- 20 -图4- 14齿槽- 20 -图4- 15斜齿轮- 20 -图5- 1程序设计流程图- 21 -图5- 2 UGStyle 操作界面- 20 -
6、图5- 3编辑对话框属性界面- 20 -图5- 4选择选项- 23 -图5- 5回叫选项卡- 23 -图5- 6“实数”控件资源编辑器- 23 -图5- 7直齿轮对话框设计结果- 23 -图5- 8建立对话框- 24 -图5- 9步骤1对话框- 24 -图5- 10步骤2对话框- 25 -图5- 11确认对话框- 26 -图5- 12编译工程- 26 -图5- 13将对话框文件加入工程效果图- 26 -图5- 14错误提示对话框- 28 -图5- 15直齿轮运行结果图- 28 -图5- 16斜齿轮对话框设计结果- 29 -图5- 17斜齿轮运行结果图- 29 -表格清单表5- 1应用程序的加载
7、- 25 -表5- 2应用程序的卸载- 25 -引言中国齿轮工业在“十五”期间得到了快速发展:2005年齿轮行业的年产值由2000年的240亿元增加到683亿元,年复合增长率23.27%,已成为中国机械基础件中规模最大的行业。就市场需求与生产规模而言,中国齿轮行业在全球排名已超过意大利,居世界第四位。本课题的主要研究内容就是把斜齿轮进行参数化设计。利用参数化的设计原理及齿轮参数进行结构分析和参数化设计。本课题研究的渐开线斜齿轮的计算机辅助设计,解决了设计计算量大,求解困难的问题。同时也可给出各已知参数,实现了己知参数的渐开线斜齿轮设计。操作简单、形象直观,给设计人员提供了很大的方便。零件参数化
8、设计将零件模型的构造工作划分为几何约束、尺寸约束、确定尺寸值和模型生成四个基本任务。模型生成是一项工作量巨大、琐碎但有规律的工作,可以由计算机基于UG等三维CAD软件完成;形状约束、尺寸约束和尺寸值的确定是非规律性的创造性工作,右设计者根据设计要求设定,并建立零件特征之间的尺寸关联,用户修改零件模型时,只需输入一组新的特征尺寸值,或个别特征尺寸值,零件结构改变,而不需要从新设计,只需要更改某些特征参数即可。 渐开线斜齿轮的计算机辅助设计是一个比较复杂和困难的问题,本课题所设计的斜齿轮参数化设计分析软件中,既能对斜齿轮进行结构设计,省去了大量的计算时间,又能提高设计精度,从斜齿轮的基本参数出发,
9、建立斜齿轮结构的数学模型,所编制的计算程序可以对斜齿轮的结构参数进行分析,可以计算出精确的计算结果并保存在相应的文件中。使设计更加完美、精确和系统化,更加实用和人工智能化。第一章 绪论1.1 课题研究的背景齿轮机构用于传递空间任意两轴之间的运动和动力,具有质量小、体积小、传动比大和效率高等优点,已广泛应用于汽车、船舶、机床、矿山冶金等领域,它几乎适用于一切功率和转速范围,是现代机械中应用最广泛的一种传动机构。目前齿轮传动技术已成为世界各国机械传动发展的重点之一。齿轮设计在齿轮制造应用过程中占有重要地位。传统的齿轮设计过程繁冗,效率低,采用传统的设计方法设计一组较为合理的齿轮副要反复修正参数、多
10、次校核计算,花费很长时间才能实现。另外,齿轮类零件的绘图工作(包括几何绘图、标注、参数表填写等内容)也是一项繁杂而费时的工作1。但齿轮类零件大部分具有相似的结构和形状,在新产品的设计和图纸绘制过程中,不可避免地要多次反复修改,进行零件形状、尺寸的综合协调和优化.这时寻求一种简便、合理的设计方法,提高设计工作效率,是齿轮设计工作者的迫切愿望。因此,借助CAD技术实现其绘图过程的参数化和自动化,对于提高设计效率和保证设计质量具有重要意义2。因此,现代齿轮机构的设计建模技术有着广泛的工程应用背景和研究意义 。随着计算机技术和现代设计理论与方法的迅速发展,三维设计软件尤其是Unigraphics 在机
11、械零件和产品设计中的日益普及,齿轮实体在三维软件特别是在UG中的绘制变得越来越重要。但基于UG的齿轮设计系统一般都局限于齿轮二维轮廓的绘制或三维实体建模,齿轮参数的设计计算难以与CAD 系统很好地集成, 给齿轮的CAD/ CAM 带来不利影响3。建模技术是CAD的核心技术,参数化造型技术和特征造型技术是新一代继承化CAD系统应用研究的热点理论4。目前国内外对二维图形参数化和简单三维实体的参数化造型较为成熟。对复杂的三维实体的参数化造型尚不多见,特别是齿轮这类形状复杂、精确齿形的三维实体参数化造型设计更少。这有多方面原因:一方面齿轮二维图形参数化设计能够满足传统的齿轮加工要求;另一方面运用低级C
12、AD软件对复杂的三维实体很难实现参数化虚拟造型设计。随着塑料齿轮的广泛应用和快速成型与虚拟制造技术的迅速发展,传统的二维图形已不能满足现在的设计、加工要求5。因此,在三维软件上绘制齿轮实体变得十分重要。但是,由于齿轮形状复杂,且齿形曲线有一定的规律,绘制齿形曲线较复杂。并且齿轮各参数间都有严格的函数关系,再加上随着当代机械制造业的不断发展,齿轮的精度要求也越来越高,齿轮实体的绘制较为麻烦。齿轮并不是一个标准件,它的各个参数随着设计要求的不同而不同。如果每设计一个齿轮都要画一个对应的实体部件的话,那不仅增加了设计者的劳动量,还大大降低了设计效率,阻碍了企业的生产和发展。参数化设计是新一代智能化、
13、集成化CAD系统的核心内容,也是当前CAD技术的研究热点6。用大型的三维软件实现齿轮的参数化造型已成为设计者的迫切需求,齿轮体参数化造型有重要的意义:(1)齿轮传动的参数化设计与建模系统是CAD技术与齿轮设计相结合的产物,也是两者发展的趋势所在。(2)实现设计过程自动化避免了设计人员手动查阅大量的数据,也避免了手工取点造型的复杂过程,该系统的开发,可以将手算设计的工作人员从繁琐、低效的工作中解放了出来。(3)实现齿轮的参数化设计以及渐开线齿廓的精确造型,可以将设计计算、三维造型与绘制工程图的无缝结合,同时为齿轮的有限元分析、机构仿真和数控加工等工作奠定基础。(4)采用建立原始齿轮结构模型并驱动
14、其特征参数,为其它复杂曲面的造型提供了有益的参考。本课题利用UG的二次开发技术,为解决齿轮参数化设计问题提供了可行的方法,通过直接输入齿轮设计条件,利用计算得出的有关设计参数(模数、齿数、压力角、变位系数、齿顶高系数、顶隙系数等) 进行实体建模,实现齿轮的参数化设计,提高齿轮设计的效率和准确性。1.2 课题的研究内容和解决方法本课题利用大型软件UGNX4.0来实现齿轮的三维参数化造型,通过改变齿轮的一些基本参数,生成其相应齿轮。要达到相应的设计要求,首先要知道如何在UG中绘制齿轮部件,要绘制齿轮必然要知道齿轮的啮合原理及各个参数间的关系,还应熟知渐开线的数学模型,精确画出渐开线。画出齿轮模型后
15、,还应知道UG二次开发的知识,灵活运用UG系统提供的二次开发工具,在模型的基础上编制相应的程序,最后完成齿轮参数化设计模块的开发。具体内容和步骤如下:(1) 研究直齿和斜齿圆柱齿轮的基本啮合理论和各参数间的关系并建立数学模型;(2)渐开线数学模型的建立,通过对齿轮的啮合原理的深入研究,建立渐开线数学模型,得到渐开线方程;(3) 深入掌握UG二次开发的各种方法,并熟练运用UG/OPEN 开发工具,在建立直齿圆柱齿轮、斜齿轮和直齿锥齿轮的数学模型的基础上,对各齿轮实现三维参数化造型;(4) 在构建齿轮模块框架的基础上,深入研究菜单的制作技术以确定本课题应采用的最佳菜单制作技术。UG 软件是集CAD
16、/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环境下
17、对齿轮进行参数化设计。第二章 UG二次开发的研究Unigraphics(简称UG)是当前世界上最先进和紧密集成的、面向制造行业的CAID/CAD/CAE/CAM高端软件。它为制造业产品开发的全过程提供解决方案,主要功能包括:概念设计、工程设计、性能分析和制造。此外,UG软件还提供了CAD/CAE/CAM业界最先进的编程工具集,以满足用户二次开发的需要。本章先讨论UG软件的主要功能,然后简单介绍二次开发各功能模块的特点和应用。2.1 UG软件概述Unigraphics NX是EDS公司的一个产品工程解决方案,它为用户的产品设计及加工过程提供了数字化造型和验证手段。Unigraphics NX针对
18、用户的虚拟产品设计和工艺设计的需求,提供了经过实践验证的解决方案。Unigraphics NX为设计师和工程师提供了一个产品开发的崭新模式,它不仅对几何的操纵,更重要的是团队将能够根据工程需求进行产品开发。Unigraphics NX能够有效地捕捉、利用和共享数字化工程完整过程中的知识,事实证明为企业带来了战略性的收益。 来自 UGS PLM 的 NX 使企业能够通过新一代数字化产品开发系统实现向产品全生命周期管理转型的目标。 NX 包含了企业中应用最广泛的集成应用套件,用于产品设计、工程和制造全范围的开发过程。如今制造业所面临的挑战是,通过产品开发的技术创新,在持续的成本缩减以及收入和利润的
19、逐渐增加的要求之间取得平衡。为了真正地支持革新,必须评审更多的可选设计方案,而且在开发过程中必须根据以往经验中所获得的知识更早地做出关键性的决策。 NX 是 UGS PLM 新一代数字化产品开发系统,它可以通过过程变更来驱动产品革新。 NX 独特之处是其知识管理基础,它使得工程专业人员能够推动革新以创造出更大的利润。 NX 可以管理生产和系统性能知识,根据已知准则来确认每一设计决策。 NX 建立在为客户提供无与伦比的解决方案的成功经验基础之上,这些解决方案可以全面地改善设计过程的效率,削减成本,并缩短进入市场的时间。通过再一次将注意力集中于跨越整个产品生命周期的技术创新, NX 的成功已经得到
20、了充分的证实。这些目标使得 NX 通过无可匹敌的全范围产品检验应用和过程自动化工具,把产品制造早期的从概念到生产的过程都集成到一个实现数字化管理和协同的框架中。2.1.1 UG软件的功能介绍UG是知识驱动自动化技术领域中的领先者。它实现了设计优化技术与基于产品和过程的知识工程的组合,显著地改进了如汽车、航天航空、机械、消费产品、医疗仪器和工具等工业的生产率。它为各种规模的企业递交可测量的价值;更快地递交产品到市场;使复杂产品的设计简化;减少产品成本和增加企业的竞争实力 7。NX是一个交互的计算机辅助设计、计算机辅助制造和辅助工程(CAD/CAE/CAM)系统。CAD功能自动化是在今天制造公司中
21、见到的一般工程、设计和制图能力;CAM功能利用NX描述完成零件的设计模型,为现代机床提供NC编程;CAE功能横越一广范的工程学科,提供许多的产品、装配和零件的性能防真能力。NX是一个全三维、双精度系统,它允许用户精确地描述几乎任一几何形状。通过组合这些形状,用户可以设计、分析产品和建立他们的工程图。一但设计完成,制造应用允许用户选择描述零件的几何体,加入制造信息,如刀具直径并自动生成一刀具位置,源文件(CLSF),它可用来驱动大多数NC机床8。目前UGS公司已经推出NX5产品,本次设计中使用的是NX4版本的软件。NX4的特点是:1、为了数字化产品开发集成的自动化;2、在所有开发学科中的新能力,
22、包括工业设计、防真、工装、加工和管理;3、在一个全面的产品生命周期管理(PLM)解决力案内的领先前沿的CAD、CAE和CAM技术。2.1.2 UG功能模块利用NX,可以建立、存储、恢复和操纵设计与制造信息,典型地通过建立描述一零件的几何体开始工作。NX功能被划分成共同功能的一系列“应用(Application)”共18个模块,各模块分别为:1、入口(Gateway):对所有其他交互应用的首要必备的应用;2、建模(Modeling):包括实体、特征、自由形状、钣金特征建模和用户定义特征;3、装配(Assembilies):支持装配建模;4、几何公差模块(Geometric Tolerancing
23、 Module):让用户捕捉公差;5、产品和制造信息(PMI Introduction):可用于在三维环境中对产品形成文档说明;6、分析(Analysis):包括注塑模流动分析、运动应用和ICAD;7、制图(Drafting):可将三维模型生成二维视图;8、高质量图像(High Quality Image):生成逼真照片的图像;9、知识熔接(Knowledge Fusion):允许用户应用工程知识驱动规则和设计意图到NX中的几何模型和装配;10、制造(Manufacturing):可进行虚拟加工和自动加工编程;11、开放的用户界面设计(Open User Interface Styler):允
24、许用户和第三方开发商生成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业界最
25、先进的编程工具集,以满足用户二次开发的需要,这组工具集称之为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
26、+、Fortran和Java等主要高级语言;UG/Open GRIP开发工具是一个类似API的UG内部开发语言,利用该工具用户可生成 NC自动化或自动建模等用户的特殊应用9。利用UG/Open提供的应用程序和开发工具,用户可以在其提供的平台上开发出适合自己需要的CAD产品。2.2.1 UG/Open GRIPUG/Open GRIP(Graphics Interactive Programming)是一种专用的图形交互编程语言。这种语言与UG系统集成,实现UG下的绝大多数的操作。GRIP语言与一般的通用语言一样,有其自身的语法结构,程序结构,内部函数,以及与其他通用语言程序相互调用的接口。一个
27、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的记事本中进行,记为
28、*.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 A
29、PI是一系列函数的集合。通过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的函数时应先
30、调用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的运行空
31、间中(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 ScriptUG/Open Menu Script不仅可以使用户利用ASC文件来编辑UG的菜单,也可以以一种无缝集成的方式为用户开发的应用程序创建菜单。Menu Script同时也提供了一个菜单栏报告工具,以帮助用户查看定制的菜单,诊断错误。对于
32、菜单的自定义大致可以分为如下三个层次。(1)自定义菜单该级别的自定义允许单个用户或者管理员重新安排UG的功能,去除在其产品开发过程中不需要的功能。这种级别的自定义不需要编程实现。(2)自定义UG功能该级别的自定义允许单个用户或者管理员取代或增加标准的UG功能,并添加其自己定义的功能。(3)添加自定义应用该级别的自定义其目的在于使用户或第三方开发商开发的应用程序完全集成在UG中。该级别的自定义需要编程实现。UG的菜单文件是扩展名为.men的文本文件,可以使用Windows 的记事本进行编辑。UG/Open Menu Script提供了一套用于定义UG菜单的脚本语言。实际上,UG系统的菜单文件也是
33、用该脚本语言编写的。UG为主菜单栏、快捷菜单栏提供了丰富的系统菜单文件,这些菜单文件默认情况下都保存在UG_BASE_DIR/ug/menus文件夹下12。使用UG/Open Menu Script自定义UG菜单可以有两种方法,分别是使用Add-on菜单文件和复制和编辑系统菜单文件。使用Add-on菜单方法是添加编辑量很小的菜单文件到菜单文件的目录中,使用Add-on菜单可以移出用户不需要的菜单项;添加新的菜单和菜单项;重新组织UG的菜单;修改菜单和菜单项的标题;为已经存在的应用按钮添加动态库和菜单文件。复制和编辑系统菜单文件是指复制、编辑系统菜单文件并将其放置在特定的目录下,覆盖原始菜单文件
34、。系统推荐使用Add-on菜单文件方法,该方法不仅编辑起来比较方便、易于维护,而且其功能也相当强大,基本可以满足应用开发的所有需求。使用Add-on菜单文件的另一个优点在于它可以被UG很方便地自动加载。对于与具体应用模式无关的菜单文件放置在startup文件夹下,与具体应用模式相关的菜单文件放置在相应的application文件夹下,通过使用MENU_FILES声明,即可将菜单名与应用模式按钮相关联,点击该应用模式按钮后即可自动加载与其相关联的菜单文件。复制和编辑系统菜单文件方法不推荐使用,这主要是由于其编辑起来相当复杂,特别是对于像ug_main.men这样大型的菜单文件,其维护也非常麻烦。
35、2.2.4 UG/Open UI StylerUI 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) 通过
36、选取和放置控件,从而能实现所见即所得。(4) 可以在对话框中实现用户自定义位图。(5) 提供了属性编辑器,从而允许开发人员设置和修改控件属性。(6) UI Styelr产生的对话框可以在Menu Script中被调用,因此可以实现在UG菜单项上调用UI Styler产生的对话框,从而将用户应用程序和UG软件完全融合。应用UI Styler这一工具可以使开发人员方便、快速地设计出与UG界面风格一致的对话框,避免其他复杂的编程。而且可以和用其他开发工具开发出的结果进行集成。UG/Open UI Styler工具和UG/Open Menu Script工具一样,都只具有某一方面的功能:UG/Open
37、 UI Styler用于对话框的开发,UG/Open Menu Script用于菜单的开发。2.2.5 User Tools工具UG软件为用户提供了一个调用二次开发结果的交互式接口:User Tools。它的功能是生成弹出式对话框或工具条,其界面风格与UG界面风格一致。通过执行对话框或工具条,操作相应的控件就可运行菜单文件、宏文件、UG/Open GRIP程序、UG/Open API程序和其他二次开发文件。例如,执行齿轮生成的程序集,可以用User Tools工具产生两个对话框分别为直齿轮和斜齿轮,然后在相应的对话框上进行操作就生成相应种类的齿轮。通过编写对话框定义文件(*.utd)来实现Us
38、er Tool工具的功能。编写文件完成以后,在UG 中执行ToolsCustomizeUser ToolsLoad选择所编写的*.utd文件即可弹出需要的对话框或工具条。*.utd这个文件是文本文件,可用 Windows中的记事本进行编写和编辑。一种比较简单的实现方法:拷贝UG中的模板文件Usertoo1.utd到UG启动目录下,然后编辑模板文件,实现所需要的功能。在以前较早版本中例如V13,运用User Tools工具必须编写两个文件:菜单定义文件(*.utm)和对话框定义文件(*.utd),然后通过执行菜单项弹出相应的对话框或工具条。现在,较高的UG版本已经省略产生菜单这一步,操作同上所述
39、。在UG 界面中应用File Execute UG/Open菜单执行UG/Open API程序或UG/Open GRIP程序,操作一次只能执行一个程序,而且必须找到程序所在的路径。若利用User Tools这个工具,用户可以将多个GRIP或API函数所编写的程序集成到一个User Tools对话框或者工具条中,一个程序对应一个控件,通过操作控件来调用程序,使用起来就非常方便。2.3 UG二次开发的意义UG/Open二次开发模块为UG软件的二次开发工具集,便于用户进行二次开发工作,利用该模块可对UG系统进行用户化剪裁和开发,满足用户的开发需求。UG/Open包括以下几个部分:UG/Open Me
40、nuscript开发工具,对UG软件操作界面进行用户化开发,无须编程即可对UG标准菜单进行添加、重组、剪裁或在UG软件中集成用户自己开发的软件功能;UG/Open UIStyle开发工具是一个可视化编辑器,用于创建类似UG的交互界面,利用该工具,用户可为UG/Open应用程序开发独立于硬件平台的交互界面;UG/Open API开发工具,提供UG软件直接编程接口,支持C、C+、Fortran和Java等主要高级语言;UG/Open GRIP开发工具是一个类似APT的UG内部开发语言,利用该工具用户可生成NC自动化或自动建模等用户的特殊应用。就本课题而言,通过UG/Open二次开发队齿轮进行参数化
41、设计,可以大大提高齿轮模型的生成和修改的速度,在产品的系列设计、相似设计及专用CAD系统开发方面都具有较大的应用价值。第三章 二次方案的选择3.1 可行方案UG软件为用户提供的二次开发工具不但可以独立使用,而且可以相互调用其它工具开发的结果,这就大大扩展了工具本身所具有的功能,方便用户进行二次开发。它们之间的关系如下附图所示:Menu Script所开发的菜单可以与User Tools开发的对话框相互调用;Menu Script所开发的菜单与User Tools开发的对话框可以调用UI Styler开发的对话框;Menu Script、User Tools和UI Styler开发的对话框均可以
42、调用GRIP程序和API程序。GRIP程序和API程序之间也可以相互调用。另外,使用UG二次开发工具必须要设置相应的环境变量,这样系统才能找到这些开发文件,执行相应的程序。UIStyler DialogUser ToolsAPIGRIPMenuScript图3- 1二次开发工具关系图本课题的目的是以UG为平台,使用UG二次开发工具,实现齿轮的参数化设计。在UG界面中就是实现在对话框中输入齿轮的各个参数,确定后UG系统自动生成对应的实体模型。要达到设计要求,首先必须自定义一个菜单,制作相对应的对话框,使设计者能调用对应的对话框并输入所需齿轮的参数。之后更重要的是编写一定的程序,程序的作用是读取对
43、话框中的参数并自动生成所需的实体模型。通过对UG系统中各个二次开发工具的性能和特点的分析,要实现设计要求有以下几种方案:(1)在菜单和对话框的基础上使用GRIP语言编写生成齿轮实体的程序。由二次开发工具之间的关系我们知道,UG对话框可以调用GRIP程序。只要能编写出一个生成齿轮实体的程序,我们就可以用编制好的对话框调用该程序,生成齿轮实体,满足设计要求。在UG/Open GRIP 工具中中拥有丰富的函数,可实现几何体的生成、数据的存取和分析、变换等一系列功能。因此,使用GRIP完全能编写出生成齿轮实体程序,程序编写好后使用User Tool工具对程序进行编译连接,最后生成可被对话框调用的可执行
44、程序。将可执行程序放在对应的文件夹里就可实现对话框对程序的调用,执行程序,满足设计要求。(2)在菜单和对话框的基础上使用API语言编写生成齿轮实体的程序。同样,对话框也能实现对API程序的调用。只要能编写出实现齿轮建模的API程序,就能实现设计要求。API与GRIP一样,也具有丰富的函数。运用该语言可以实现对部件保存、打开等基本操作、对表达式的操作、装配体操作、工程图的生成和控制等功能,可以满足生成齿轮实体的程序的编写。此外,API语言借助C+来编写程序,借助C+强大的编程功能,编写API程序比GRIP更加灵活、更加的简单使用,还能满足更多的编程要求。在C+中编写好相应的程序后编译程序,将生成
45、的可执行程序(.dll)放在对应的文件夹下,就可以实现对话框对程序的调用和执行,满足设计要求。(3)基于三维模型的参数化程序设计。该方法采用三维模型与程序控制相结合的方式,在创建好三维模型的基础上,根据部件的设计要求建立一组可以完全控制三维模型形状和大小的设计参数。参数化程序针对该部件的设计参数进行编程,实现设计参数的查询、修改,根据新的参数值更新模型从而实现设计变更。其中程序的编写是使用API语言的表达式功能。在本课题中,采用这种方案具体方法是先新建一个部件,在建模模块下写好表达式,然后使用表达式绘出齿轮的三维实体,并确保实体模型应随着表达式的值变化而变化。建好模型后,编写菜单和对话框,然后
46、在C+上用API语言进行编程,程序应把对话框和模型联系起来,将对话框中输入的值传递到模型的表达式中,并更新程序。这样,当在对话框中输入齿轮的设计参数后,运行程序,原来的齿轮部件就会按新的表达式数据重生成模型,这样就得到了设计所需要的齿轮实体模型。将新生成的部件另存,保留原部件,这样就可以随时生成需要的齿轮了。UG二次开发工具的功能非常强大,要实现本课题目的应还有其他方案,在这里只列举了这三个常用方案。3.2 方案的选择比较上述三个方案,有一个共同点就是都使用了菜单技术和对话框技术。这是为了在设计齿轮时设计者能在UG界面下直接输入对应的参数,使该模块更加直观,方便设计者使用。这三个方案中,前两个
47、都是使用编写程序来绘制齿轮实体,程序比较复杂;最后一个是建立模型后将对话框中数值传递到表达式,程序较简单。齿轮是较复杂的实体部件,精度要求也比较高,要创建齿轮实体比较麻烦。前两种方案中,都是用程序来编写整个齿轮实体创建过程,这要涉及到的函数非常多,程序烦琐,出现错误时不容易修改和维护。此外,在画齿轮轮廓过程中需要修剪、变换许多曲线,这在程序中很难做到。如果要使用前两种方案,需要深入学习GRIP和API这两种语言,需要花费很多时间。而第三种方案是直接在UG界面上画实体模型,可以直接对各种特征进行编辑、修改曲线,相对于前两种方案来说更直观、更容易。不过要注意的是在第三种方案中,在画齿轮实体过程中要注意应保证所画出的实体模型应能随着表达式中的值的变化而变化。不过在UG界面下比程序中绘制参数化齿轮模型要直观、容易的多。在编写程序方面,最后一种方案只需写一些数值的传递的程序,使用的函数少,程序简单,易于发现错误和修改调试。同时,如果能够实现,前两种方案所得的齿轮设计模块使用起来要比第三种方案方便。由于毕业设计时间不长,而且之前没有接触过有关二次开发的知识,在短时间内无法深入
链接地址:https://www.31ppt.com/p-4263258.html