版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 PAGE67 / NUMPAGES71摘要在机械加工中,孔加工占机械加工的比例在30%以上,特别是在汽车与航空等行业中麻花钻的应用极为广泛。由于长期以来,麻花钻的设计大多是靠工程师的经验来进行,在设计过程中,难免会出现重复性的工作,从而降低了设计效率。同时通常的设计都是在二维图纸上进行设计,不能得到可视化的麻花钻三维造型,这就阻碍了麻花钻的数控刃磨加工与利用一些分析软件对麻花钻的钻削过程进行分析。在UG中利用麻花钻参数表达式绘制麻花钻实体模型,实现麻花钻在UG的参数化设计。从而实现产品的快速设计。UG/Open二次开发模块是UG软件的二次开发工具集,利用该模块可对UG系统进行用户化开发,可满
2、足用户进行各种二次开发的需求。学习了UG二次开发的各种工具,了解了各种工具的特点和适用围。选择 UG/Open API编程语言,结合使用UG/Open Menu Script和UG/Open UI Styler开发工具,实现了基于UG二次开发工具的直齿圆柱齿轮、斜齿轮、直齿锥齿轮的参数化设计。关键词:麻花钻,二次开发,参数化,APIKey Words:parameter,gear,UG/Open,API目录第 1 章 绪论11.1课题的研究背景11.2课题的研究容和解决方法2第 2 章 UG二次开发的研究421 UG软件概述42.1.1 UG软件的功能介绍42.1.2 UG功能模块52.2 U
3、G二次开发相关工具概述52.2.1 UG/OPEN GRIP62.2.2 UG/OPEN API72.2.3 UG/OPEN MenuScript72.2.4 UG/OPEN UIStyler92.2.5 User Tools工具9第 3 章 二次开发方案的选择1131列举可行的方案1132 方案的选择1333利用二次开发工具制作系统菜单143.3.1 设置系统环境变量143.3.2制作菜单15第 4 章齿轮常用的齿形曲线渐开线1841渐开线的形成原理1842渐开线的数学模型1943 渐开线齿廓的绘制20第 5 章 直齿圆柱齿轮的参数化设计2251 数学模型2252 齿轮三维建模23第 6章
4、斜齿轮的参数化设计2661 数学模型2662 齿轮三维建模27第 7 章 直齿锥齿轮的参数化设计2871 数学模型2872 齿轮三维建模29第 8 章 程序设计308.1 总体方案设计308.2 对话框设计318.3 程序设计36第 9 章 结论48致50参考文献51附录52第1章 绪论11课题的研究背景齿轮机构用于传递空间任意两轴之间的运动和动力,具有质量小、体积小、传动比大和效率高等优点,已广泛应用于汽车、船舶、机床、矿山冶金等领域,它几乎适用于一切功率和转速围,是现代机械中应用最广泛的一种传动机构。目前齿轮传动技术已成为世界各国机械传动发展的重点之一。齿轮设计在齿轮制造应用过程中占有重要
5、地位。传统的齿轮设计过程繁冗,效率低,采用传统的设计方法设计一组较为合理的齿轮副要反复修正参数、多次校核计算,花费很长时间才能实现。另外,齿轮类零件的绘图工作(包括几何绘图、标注、参数表填写等容)也是一项繁杂而费时的工作1。但齿轮类零件大部分具有相似的结构和形状,在新产品的设计和图纸绘制过程中,不可避免地要多次反复修改,进行零件形状、尺寸的综合协调和优化.这时寻求一种简便、合理的设计方法,提高设计工作效率,是齿轮设计工作者的迫切愿望。因此,借助CAD技术实现其绘图过程的参数化和自动化,对于提高设计效率和保证设计质量具有重要意义2。因此,现代齿轮机构的设计建模技术有着广泛的工程应用背景和研究意义
6、 。随着计算机技术和现代设计理论与方法的迅速发展,三维设计软件尤其是Unigraphics 在机械零件和产品设计中的日益普与,齿轮实体在三维软件特别是在UG中的绘制变得越来越重要。但基于UG的齿轮设计系统一般都局限于齿轮二维轮廓的绘制或三维实体建模,齿轮参数的设计计算难以与CAD 系统很好地集成, 给齿轮的CAD/ CAM 带来不利影响3。建模技术是CAD的核心技术,参数化造型技术和特征造型技术是新一代继承化CAD系统应用研究的热点理论4。目前国外对二维图形参数化和简单三维实体的参数化造型较为成熟。对复杂的三维实体的参数化造型尚不多见,特别是齿轮这类形状复杂、精确齿形的三维实体参数化造型设计更
7、少。这有多方面原因:一方面齿轮二维图形参数化设计能够满足传统的齿轮加工要求;另一方面运用低级CAD软件对复杂的三维实体很难实现参数化虚拟造型设计。随着塑料齿轮的广泛应用和快速成型与虚拟制造技术的迅速发展,传统的二维图形已不能满足现在的设计、加工要求5。因此,在三维软件上绘制齿轮实体变得十分重要。但是,由于齿轮形状复杂,且齿形曲线有一定的规律,绘制齿形曲线较复杂。并且齿轮各参数间都有严格的函数关系,再加上随着当代机械制造业的不断发展,齿轮的精度要求也越来越高,齿轮实体的绘制较为麻烦。齿轮并不是一个标准件,它的各个参数随着设计要求的不同而不同。如果每设计一个齿轮都要画一个对应的实体部件的话,那不仅
8、增加了设计者的劳动量,还大大降低了设计效率,阻碍了企业的生产和发展。参数化设计是新一代智能化、集成化CAD系统的核心容,也是当前CAD技术的研究热点6。用大型的三维软件实现齿轮的参数化造型已成为设计者的迫切需求,齿轮体参数化造型有重要的意义:(1)齿轮传动的参数化设计与建模系统是CAD技术与齿轮设计相结合的产物,也是两者发展的趋势所在。(2)实现设计过程自动化避免了设计人员手动查阅大量的数据,也避免了手工取点造型的复杂过程,该系统的开发,可以将手算设计的工作人员从繁琐、低效的工作中解放了出来。(3)实现齿轮的参数化设计以与渐开线齿廓的精确造型,可以将设计计算、三维造型与绘制工程图的无缝结合,同
9、时为齿轮的有限元分析、机构仿真和数控加工等工作奠定基础。(4)采用建立原始齿轮结构模型并驱动其特征参数,为其它复杂曲面的造型提供了有益的参考。本课题利用UG的二次开发技术,为解决齿轮参数化设计问题提供了可行的方法,通过直接输入齿轮设计条件,利用计算得出的有关设计参数(模数、齿数、压力角、变位系数、齿顶高系数、顶隙系数等) 进行实体建模,实现齿轮的参数化设计,提高齿轮设计的效率和准确性。12课题的研究容和解决方法本课题利用大型软件UGNX4.0来实现齿轮的三维参数化造型,通过改变齿轮的一些基本参数,生成其相应齿轮。要达到相应的设计要求,首先要知道如何在UG中绘制齿轮部件,要绘制齿轮必然要知道齿轮
10、的啮合原理与各个参数间的关系,还应熟知渐开线的数学模型,精确画出渐开线。画出齿轮模型后,还应知道UG二次开发的知识,灵活运用UG系统提供的二次开发工具,在模型的基础上编制相应的程序,最后完成齿轮参数化设计模块的开发。具体容和步骤如下:(1) 研究直齿、斜齿圆柱齿轮与直齿锥齿轮的基本啮合理论和各参数间的关系并建立数学模型;(2)渐开线数学模型的建立,通过对齿轮的啮合原理的深入研究,建立渐开线数学模型,得到渐开线方程;(3) 深入掌握UG二次开发的各种方法,并熟练运用UG/OPEN 开发工具,在建立直齿圆柱齿轮、斜齿轮和直齿锥齿轮的数学模型的基础上,对各齿轮实现三维参数化造型;(4) 在构建齿轮模
11、块框架的基础上,深入研究菜单的制作技术以确定本课题应采用的最佳菜单制作技术。UG 软件是集CAD/CAM/CAE一体化的三维参数化软件,是当今世界上最为先进的计算机辅助设计、制造和分析软件,在国使用相当广泛。另外它所提供的二次开发语言模块UG/OpenAPI、UG/OpenGRIP和辅助开发模块UG/OpenMenuscript与UG/Open UI Styler与其良好的高级语言接口,使UG的图形功能和计算功能有机的结合起来,便于用户去开发各种基于自身需要的专用CAD系统。使用UG/OpenAPI和UG/OpenGRIP中任何一个模块都能实现UG的二次开发,再结合辅助模块,就能开发出UG界面
12、的应用模块。因此,合理利用UG的二次开发语言模块和辅助模块,就可以实现在UG环境下对齿轮进行参数化设计。第二章 UG二次开发的研究 Unigraphics(简称UG)是当前世界上最先进和紧密集成的、面向制造行业的CAID/CAD/CAE/CAM高端软件。它为制造业产品开发的全过程提供解决方案,主要功能包括:概念设计、工程设计、性能分析和制造。此外,UG软件还提供了CAD/CAE/CAM业界最先进的编程工具集,以满足用户二次开发的需要。本章先讨论UG软件的主要功能,然后简单介绍二次开发各功能模块的特点和应用。21 UG软件概述211 UG软件的功能介绍 UG是知识驱动自动化技术领域中的领先者。它
13、实现了设计优化技术与基于产品和过程的知识工程的组合,显著地改进了如汽车、航天航空、机械、消费产品、医疗仪器和工具等工业的生产率。它为各种规模的企业递交可测量的价值;更快地递交产品到市场;使复杂产品的设计简化;减少产品成本和增加企业的竞争实力 7。 NX是一个交互的计算机辅助设计、计算机辅助制造和辅助工程(CAD/CAE/CAM)系统。CAD功能自动化是在今天制造公司中见到的一般工程、设计和制图能力;CAM功能利用NX描述完成零件的设计模型,为现代机床提供NC编程;CAE功能横越一广的工程学科,提供许多的产品、装配和零件的性能防真能力。NX是一个全三维、双精度系统,它允许用户精确地描述几乎任一几
14、何形状。通过组合这些形状,用户可以设计、分析产品和建立他们的工程图。一但设计完成,制造应用允许用户选择描述零件的几何体,加入制造信息,如刀具直径并自动生成一刀具位置,源文件(CLSF),它可用来驱动大多数NC机床8。目前UGS公司已经推出NX5产品,本次设计中使用的是NX4版本的软件。NX4的特点是:1、为了数字化产品开发集成的自动化;2、在所有开发学科中的新能力,包括工业设计、防真、工装、加工和管理;3、在一个全面的产品生命周期管理(PLM)解决力案的领先前沿的CAD、CAE和CAM技术。212 UG功能模块 利用NX,可以建立、存储、恢复和操纵设计与制造信息,典型地通过建立描述一零件的几何
15、体开始工作。NX功能被划分成共同功能的一系列“应用(Application)”共18个模块,各模块分别为:1、入口(Gateway):对所有其他交互应用的首要必备的应用;2、建模(Modeling):包括实体、特征、自由形状、钣金特征建模和用户定义特征;3、装配(Assembilies):支持装配建模;4、几何公差模块(Geometric Tolerancing Module):让用户捕捉公差;5、产品和制造信息(PMI Introduction):可用于在三维环境中对产品形成文档说明;6、分析(Analysis):包括注塑模流动分析、运动应用和ICAD;7、制图(Drafting):可将三维
16、模型生成二维视图;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装配的装配;
17、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 Menuscr
18、ip开发工具,对UG软件操作界面进行用户化开发,无须编程即可对UG标准菜单进行添加、重组、剪裁或在UG软件中集成用户自己的软件功能;UG/Open UIStyler开发工具是一个可视化编辑器,用于创建类似UG的交互界面,利用该工具,用户可为UG/Open应用程序开发独立于硬件平台的交互界面;UG/Open API开发工具提供了UG软件直接编程接口,支持C、C+、Fortran和Java等主要高级语言;UG/Open GRIP开发工具是一个类似API的UG部开发语言,利用该工具用户可生成 NC自动化或自动建模等用户的特殊应用9。利用UG/Open提供的应用程序和开发工具,用户可以在其提供的平台上
19、开发出适合自己需要的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)的
20、缩写,用于访问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编程语言是面向
21、工程师的语言,具有简单、易学、易用的特点,但是所编写的程序长、复杂。要考虑程序的各个细节问题。因此,GRIP语言常用于开发一些规模比较小的程序,例如,同类零件建模、计算和分析、数据访问等程序。与GRIP语言相比较,用API函数编程则可实现功能复杂的操作10。2.2.2 UG/Open API 作为UG NX4.0与外部应用程序之间的接口,UG/Open API是一系列函数的集合。通过UG/Open API的编程,用户几乎能够实现所有的UG NX4.0功能。开发人员可以通过用C+语言编程来调用这些函数,从而实现用户的需要。对UG part文件与相应模型进行操作,包括建立UG NX4.0模型、查询
22、模型对象、建立并遍历装配体,以与创建工程图等。在UG NX4.0中创建交互式程序界面。创建并管理用户定义对象等。应用函数时应注意所有的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_terminat
23、e()来释放执行许可。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提供了函数用于打印机或绘图仪输出,也可以
24、输出为CGM文件等其他数据文件11。2.2.3 UG/Open MenuScript UG/Open MenuScript不仅可以使用户利用ASC文件来编辑UG的菜单,也可以以一种无缝集成的方式为用户开发的应用程序创建菜单。MenuScript同时也提供了一个菜单栏报告工具,以帮助用户查看定制的菜单,诊断错误。对于菜单的自定义大致可以分为如下三个层次。(1)自定义菜单 该级别的自定义允许单个用户或者管理员重新安排UG的功能,去除在其产品开发过程中不需要的功能。这种级别的自定义不需要编程实现。(2)自定义UG功能 该级别的自定义允许单个用户或者管理员取代或增加标准的UG功能,并添加其自己定义的功
25、能。(3)添加自定义应用 该级别的自定义其目的在于使用户或第三方开发商开发的应用程序完全集成在UG中。该级别的自定义需要编程实现。 UG的菜单文件是扩展名为.men的文本文件,可以使用Windows 的记事本进行编辑。UG/Open MenuScript提供了一套用于定义UG菜单的脚本语言。实际上,UG系统的菜单文件也是用该脚本语言编写的。UG为主菜单栏、快捷菜单栏提供了丰富的系统菜单文件,这些菜单文件默认情况下都保存在UG_BASE_DIR/ug/menus文件夹下12。 使用UG/Open MenuScript自定义UG菜单可以有两种方法,分别是使用Add-on菜单文件和复制和编辑系统菜单
26、文件。使用Add-on菜单方法是添加编辑量很小的菜单文件到菜单文件的目录中,使用Add-on菜单可以移出用户不需要的菜单项;添加新的菜单和菜单项;重新组织UG的菜单;修改菜单和菜单项的标题;为已经存在的应用按钮添加动态库和菜单文件。复制和编辑系统菜单文件是指复制、编辑系统菜单文件并将其放置在特定的目录下,覆盖原始菜单文件。系统推荐使用Add-on菜单文件方法,该方法不仅编辑起来比较方便、易于维护,而且其功能也相当强大,基本可以满足应用开发的所有需求。使用Add-on菜单文件的另一个优点在于它可以被UG很方便地自动加载。对于与具体应用模式无关的菜单文件放置在startup文件夹下,与具体应用模式
27、相关的菜单文件放置在相应的application文件夹下,通过使用MENU_FILES声明,即可将菜单名与应用模式按钮相关联,点击该应用模式按钮后即可自动加载与其相关联的菜单文件。复制和编辑系统菜单文件方法不推荐使用,这主要是由于其编辑起来相当复杂,特别是对于像ug_main.men这样大型的菜单文件,其维护也非常麻烦。2.2.4 UG/Open UIStyler UIStyler是开发UG对话框的可视化工具,生成的对话框能与UG集成,让用户更方便、更高效地与UG进行交互操作。UG/Open UI Styler模块提供了强大的制作UG风格窗口的功能,其主要功能如下:(1) 提供了让开发人员建造
28、UG风格对话框的可视化环境,并能生成UG/Open UI Styler文件和C代码,从而使用户在使用UG/Open UIStyler产生的对话框时,不必考虑图形用户界面(Graphical User Interface缩写为GUI )的实现。(2) 利用可视化环境快速生成UG风格对话框,从而减少开发时间。(3) 通过选取和放置控件,从而能实现所见即所得。(4) 可以在对话框中实现用户自定义位图。(5) 提供了属性编辑器,从而允许开发人员设置和修改控件属性。(6) UIStyelr产生的对话框可以在MenuScript中被调用,因此可以实现在UG菜单项上调用UIStyler产生的对话框,从而将用
29、户应用程序和UG软件完全融合。应用UIStyler这一工具可以使开发人员方便、快速地设计出与UG界面风格一致的对话框,避免其他复杂的编程。而且可以和用其他开发工具开发出的结果进行集成。UG/Open UIStyler工具和UG/Open MenuScript工具一样,都只具有某一方面的功能:UG/Open UIStyler用于对话框的开发,UG/Open MenuScript用于菜单的开发。2.2.5 UserTools工具 UG软件为用户提供了一个调用二次开发结果的交互式接口:User Tools。它的功能是生成弹出式对话框或工具条,其界面风格与UG界面风格一致。通过执行对话框或工具条,操作
30、相应的控件就可运行菜单文件、宏文件、UG/Open GRIP程序、UG/Open API程序和其他二次开发文件。例如,执行齿轮生成的程序集,可以用User Tools工具产生两个对话框分别为直齿轮和斜齿轮,然后在相应的对话框上进行操作就生成相应种类的齿轮。通过编写对话框定义文件(*.utd)来实现User Tool工具的功能。编写文件完成以后,在UG 中执行ToolsCustomizeUser ToolsLoad选择所编写的*.utd文件即可弹出需要的对话框或工具条。*.utd这个文件是文本文件,可用 Windows中的记事本进行编写和编辑。一种比较简单的实现方法:拷贝UG中的模板文件User
31、too1.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对话框
32、或者工具条中,一个程序对应一个控件,通过操作控件来调用程序,使用起来就非常方便。第三章 二次开发方案的选择31可行方案UG软件为用户提供的二次开发工具不但可以独立使用,而且可以相互调用其它工具开发的结果,这就大大扩展了工具本身所具有的功能,方便用户进行二次开发。它们之间的关系如下附图所示:MenuScript所开发的菜单可以与User Tools开发的对话框相互调用;MenuScript所开发的菜单与User Tools开发的对话框可以调用UIStyler开发的对话框;MenuScript、User Tools和UIStyler开发的对话框均可以调用GRIP程序和API程序。GRIP程序和AP
33、I程序之间也可以相互调用。另外,使用UG二次开发工具必须要设置相应的环境变量,这样系统才能找到这些开发文件,执行相应的程序。UIStyler DialogUser ToolsAPIGRIPMenuScript图3-1 二次开发工具关系图 本课题的目的是以UG为平台,使用UG二次开发工具,实现齿轮的参数化设计。在UG界面中就是实现在对话框中输入齿轮的各个参数,确定后UG系统自动生成对应的实体模型。要达到设计要求,首先必须自定义一个菜单,制作相对应的对话框,使设计者能调用对应的对话框并输入所需齿轮的参数。之后更重要的是编写一定的程序,程序的作用是读取对话框中的参数并自动生成所需的实体模型。通过对U
34、G系统中各个二次开发工具的性能和特点的分析,要实现设计要求有以下几种方案:(1)在菜单和对话框的基础上使用GRIP语言编写生成齿轮实体的程序。由二次开发工具之间的关系我们知道,UG对话框可以调用GRIP程序。只要能编写出一个生成齿轮实体的程序,我们就可以用编制好的对话框调用该程序,生成齿轮实体,满足设计要求。在UG/Open GRIP 工具中中拥有丰富的函数,可实现几何体的生成、数据的存取和分析、变换等一系列功能。因此,使用GRIP完全能编写出生成齿轮实体程序,程序编写好后使用User Tool工具对程序进行编译连接,最后生成可被对话框调用的可执行程序。将可执行程序放在对应的文件夹里就可实现对
35、话框对程序的调用,执行程序,满足设计要求。(2)在菜单和对话框的基础上使用API语言编写生成齿轮实体的程序。同样,对话框也能实现对API程序的调用。只要能编写出实现齿轮建模的API程序,就能实现设计要求。API与GRIP一样,也具有丰富的函数。运用该语言可以实现对部件保存、打开等基本操作、对表达式的操作、装配体操作、工程图的生成和控制等功能,可以满足生成齿轮实体的程序的编写。此外,API语言借助C+来编写程序,借助C+强大的编程功能,编写API程序比GRIP更加灵活、更加的简单使用,还能满足更多的编程要求。在C+中编写好相应的程序后编译程序,将生成的可执行程序(.dll)放在对应的文件夹下,就
36、可以实现对话框对程序的调用和执行,满足设计要求。(3)基于三维模型的参数化程序设计。该方法采用三维模型与程序控制相结合的方式,在创建好三维模型的基础上,根据部件的设计要求建立一组可以完全控制三维模型形状和大小的设计参数。参数化程序针对该部件的设计参数进行编程,实现设计参数的查询、修改,根据新的参数值更新模型从而实现设计变更。其中程序的编写是使用API语言的表达式功能。在本课题中,采用这种方案具体方法是先新建一个部件,在建模模块下写好表达式,然后使用表达式绘出齿轮的三维实体,并确保实体模型应随着表达式的值变化而变化。建好模型后,编写菜单和对话框,然后在C+上用API语言进行编程,程序应把对话框和
37、模型联系起来,将对话框中输入的值传递到模型的表达式中,并更新程序。这样,当在对话框中输入齿轮的设计参数后,运行程序,原来的齿轮部件就会按新的表达式数据重生成模型,这样就得到了设计所需要的齿轮实体模型。将新生成的部件另存,保留原部件,这样就可以随时生成需要的齿轮了。 UG二次开发工具的功能非常强大,要实现本课题目的应还有其他方案,在这里只列举了这三个常用方案。32 方案选择 比较上述三个方案,有一个共同点就是都使用了菜单技术和对话框技术。这是为了在设计齿轮时设计者能在UG界面下直接输入对应的参数,使该模块更加直观,方便设计者使用。这三个方案中,前两个都是使用编写程序来绘制齿轮实体,程序比较复杂;
38、最后一个是建立模型后将对话框中数值传递到表达式,程序较简单。齿轮是较复杂的实体部件,精度要求也比较高,要创建齿轮实体比较麻烦。前两种方案中,都是用程序来编写整个齿轮实体创建过程,这要涉与到的函数非常多,程序烦琐,出现错误时不容易修改和维护。此外,在画齿轮轮廓过程中需要修剪、变换许多曲线,这在程序中很难做到。如果要使用前两种方案,需要深入学习GRIP和API这两种语言,需要花费很多时间。而第三种方案是直接在UG界面上画实体模型,可以直接对各种特征进行编辑、修改曲线,相对于前两种方案来说更直观、更容易。不过要注意的是在第三种方案中,在画齿轮实体过程中要注意应保证所画出的实体模型应能随着表达式中的值
39、的变化而变化。不过在UG界面下比程序中绘制参数化齿轮模型要直观、容易的多。在编写程序方面,最后一种方案只需写一些数值的传递的程序,使用的函数少,程序简单,易于发现错误和修改调试。同时,如果能够实现,前两种方案所得的齿轮设计模块使用起来要比第三种方案方便。由于毕业设计时间不长,而且之前没有接触过有关二次开发的知识,在短时间无法深入学习GRIP和API的知识,前两种方案很难实现。第三种方案最为简单,也最有可能在规定时间完成设计任务,达到设计目的。综合比较这三种方案,最终选择第三种方案作为本次设计方案。33利用二次开发工具制作系统菜单3.3.1 设置系统环境变量 虽然各种菜单的制作方法,在结构、容和
40、开发过程上有一定的差异,但是在整个构建过程中有其共性和一样的部分,就是菜单制作之前应先设置系统环境变量。设置了系统环境变量,UG才能找到开发容所在目录。系统环境变量设置方法有以下两种:方法一:打开$UG_BASE_DIR/ugii目录下的ugii_env.dat文件(该文件包含Unigraphics系统的全部环境变量与系统路径定义),找到下面两条语句:#UG_VENDOR_DIR=$UGALLIANCE_DIR/vendor和#UG_ SITE_DIR=$UGALLIANCE_DIR/site。将它们前面的注释符号“#”删除,以使它们起作用。这两条语句其实指明了供用户放置二次开发文件的目录。在
41、Unigraphics初始安装时,它们不起作用,当删除了“#”号后,UG/OPEN才能从这些目录下得到二次开发的功能扩展。这两个目录的功能和结构是完全一样的,下面都有startup和application两个目录。其中startup存放Unigraphics启动时需载入的动态共享库(以ufsta()为入口的.dl1)与菜单脚本文件(.men);application目录存放具体的功能扩展程序文件(如应用模块的功能扩展共享库( .dl1)与对话框资源文件( .dlg)。Unigraphics下设置的这两个目录是为不同等级的开发者提供的,vendor目录下放置Unigraphics指定的开发商的二
42、次产品,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
43、_dirs.dat(用记事本打开),在文件最后添加开发的文件夹的绝对路径。在添加的文件里建立两个子目录:startup和application ,分别用来放置开发的各种文本文件(.men文件)、动态库文件和对话框文件。 上述两种方法中第二种方法较简单方便,本课题采用第二种方法。打开UG安装目录UG_BASE_DIR UGmenus下的custom_dirs.dat,在文件最后添加开发的文件夹的绝对路径E:gearsopen。在E:gearsopen文件夹下建立startup和application两个子目录。3.3.2制作菜单 本课题涉与到三个齿轮的参数化设计,因此应在一个主菜单下建立三个子菜
44、单。在E:gearsopenstartup下建立文件gearsopen.men,代码如下:VERSION 120 /菜单脚本文件的版本信息EDIT UG_GATEWAY_MAIN_MENUBAR /编辑UG系统菜单文件BEFORE UG_HELP /定义菜单位于“帮助”菜单前CASCADE_BUTTON GEARS /主菜单按钮名LABEL 齿轮参数化设计 /主菜单标题END_OF_BEFORE /结束BEFORE定义MENU GEARS /定义主菜单BUTTON SPUR_GEAR /第一个子菜单名LABEL 直齿圆柱齿轮 /第一个子菜单标题ACTIONS SPUR_GEAR /第一个子菜单
45、的IDBUTTON HELICAL_GEAR /第二个子菜单名LABEL 斜齿轮 /第二个子菜单标题ACTIONS HELICAL_GEAR /第二个子菜单的IDBUTTON STRAIGHT_BEVEL_GEAR /第三个子菜单名LABEL 直齿锥齿轮 /第三个子菜单标题ACTIONS STRAIGHT_BEVEL_GEAR /第三个子菜单的IDEND_OF_MENU /结束菜单的定义运行结果如图3-2所示: 图3-2 菜单运行效果图在菜单的基础上,可以制作工具栏,这样可以在工具栏点相对应的工具来直接调用对话框。工具栏是一种快速激活相关命令的工具按钮的集合。在UG中,使用菜单工具可以制作工具
46、栏。工具栏文件是以.tbr为后缀名的文本文件,每个工具栏按钮名称应与菜单文件中相应按钮的名称一样,工具栏按钮图标所对应的位图文件,应放置在相应的application文件夹下。工具栏文件写好后,应放在对应的stratup文件夹中。编写的工具栏文件如下:TITLE 齿轮 /工具栏标题VERSION 160 /工具栏文件的版本信息DOCK NO /工具栏导入时是浮动的BUTTON SPUR_GEAR /直齿轮对应按钮的名称LABEL 直齿圆柱齿轮 /工具栏按钮的标题BITMAP zhichi.bmp /直齿轮对应按钮图标BUTTON HELICAL_GEAR /斜齿轮对应按钮的名称LABEL 斜齿
47、轮 /工具栏按钮的标题BITMAP xiechi.bmp /斜齿轮对应按钮图标BUTTON STRAIGHT_BEVEL_GEAR /锥齿轮对应按钮的名称LABEL 直齿锥齿轮 /工具栏按钮的标题BITMAP zhuichi.bmp /锥齿轮对应按钮图标运行效果如图3-3所示:图3-2 工具栏效果图第四章 齿轮常用的齿形曲线渐开线从理论上讲,只要给出一条齿廓曲线,就可以根据齿廓啮合的基本定律(用图解法或解析法)求出与其共轭的另一条齿廓曲线。因而,作共轭齿廓的曲线是很多的。生产实际中。结合设计、制造、安装和使用方面的诸多要求(如强度、效率、磨损、寿命、互换性),通常选用的定传动比齿廓曲线有渐开线
48、、摆线和圆弧。由于渐开线齿廓具有制造容易、便于安装、互换性好等多方面优点,所以目前大部分齿轮采用渐开线齿廓。41渐开线的形成原理 如下图所示,任一直线BK沿基圆的圆周作纯滚动时,直线上任意一点K的轨迹AK称为该圆的渐开线。其中, rb为为基圆半径,k是渐开线上K点的展角 ,rK是渐开线上K点的向径,K为渐开线K点的压力角。图4-1,渐开线形成图 渐开线的性质为:(1)发生线沿基圆滚过的长度等于基圆上被滚过的弧长,即直线BK与弧 AB的长度相等;(2)当发生线沿基圆作纯滚动时,切点B为其速度瞬心, 因此KB必垂直于渐开线上K点的切线,即发生线为渐开线在K点的法线,渐开线上任一点的法线恒与基圆相切
49、; (3)发生线与基圆的切点B也是渐开线在K点处的曲率中心,线段BK是相应的曲率半径。渐开线离基圆愈远(rK愈大),曲率半径愈大,渐开线越平直。K点在基圆上起点处的曲率半径为零。 (4)渐开线的形状取决于基圆的大小,即由不同大小的基圆所形成的渐开线,在相等展角处的曲率半径的大小随基圆半径rb的增大而增大,当基圆半径为无穷大时,其渐开线AK将成为垂直于发生线NK的直线,故齿条的渐开线齿廓曲线为直线。 (5)基圆以无渐开线。 基于渐开线的上述性质,用渐开线作为齿廓的齿轮有以下优点: (1) 渐开线齿廓能满足定传动比传动保证了机器运转的平稳性; (2) 渐开线齿廓之间的正压力方向不变有利于齿廓传动的
50、平稳性; (3) 渐开线齿廓具有传动可分性对齿轮制造和安装十分有利。42渐开线的数学模型 以上讨论了渐开线的一些性质,但在渐开线齿轮三维参数化造型的过程中,还需要进一步知道轮齿渐开线齿形的各点坐标值。 由图4-1,根据渐开线的性质,可得 连立上述两式即得渐开线的极坐标参数方程式: 在UG里画渐开线时,使用的是直角坐标系,因此,我们应把渐开线方程转化成直角坐标系的形式。转化后公式为:其中43 渐开线齿廓的绘制使用UG画渐开线过采用表达式生成法。UG的表达式是算术或条件语句,它可以用来控制同一个零件上的不同特征间的关系。利用UG的表达式并利用渐开线方程的计算公式,建立表达式生成渐开线曲线。具体过程
51、如下:(1)、新建一个部件,进入建模模块,在表达式窗口中添加下列表达式:m=5; / 模数z=19; / 齿数a=20; / 压力角h=1; / 齿顶高系数c=0.25; / 顶隙系数B=9; / 齿轮厚度d=m*z; / 分度圆直径db=m*z*cos(a); / 基圆直径da=(z+2)*m; / 齿顶圆直径df=(z-2.5)*m; / 齿根圆直径t=1; / 系统参数al=45*t; / 角变量xt=0.5*db*cos(al)+(al*pi()/360)*db*sin(al); / 渐开线在x方向的参数方程yt=0.5*db*sin(al)-(al*pi()/360)*db*cos(
52、al); / 渐开线在y方向的参数方程zt=0; / 渐开线在y方向的参数方程 (2)选择“插入曲线规律曲线”菜单或单击曲线工具栏中的“规律曲线”按钮,出现“规律函数”对话框,选择其中的“根据方程”选择按钮并确定,如下图所示14。图4-2选择规律曲线方式(3)以t为系统参数定义x轴、y轴、z轴的参数并依据方程xt、yt、zt的值,选择原点为基圆的圆心,绘制出如下渐开线。如下图所示。图4-3 渐开线第五章 直齿圆柱齿轮的参数化设计51 数学模型直齿圆柱齿轮的端面齿廓(垂直于轴线的剖面中的齿形)是渐开线齿廓。直齿轮的轮齿方向(齿向)与其轴线是平行的,如果在垂直于轴线作无数的剖面,则这些剖面与直齿相
53、交,得到无数薄片的轮齿,其齿形都是渐开线,而且形成过程完全一样,因此具有一样的形状。这些无数薄片轮齿的渐开线齿形沿着轴线排列所组成的齿面称作渐开线齿面。直齿轮的渐开线齿面常称为渐开面。渐开线直齿圆柱齿轮是渐开线齿轮中结构最简单的齿轮,实现直齿圆柱齿轮的参数化精确建模是实现其他齿轮建模的基础。 渐开线直齿圆柱齿轮的重要的基本参数有:模数m、齿数z、分度圆压力角、齿顶高系数h*、顶隙系数c*。另外齿轮齿宽B也是齿轮的一个重要参数。现简要介绍齿轮各基本参数与对其他尺寸的影响。模数 齿轮分度圆圆周长为,则 式中含有无理数,为了计算方便,人们人为地将比值p/取为一有理数列,并称该比值为模数,用m 表示,
54、单位为mm。为了设计、制造、检验与使用方便,齿轮的模数已经标准化。齿数一样的齿轮,模数愈大,尺寸就越大。(2)分度圆压力角 有渐开线的形成原理 ,对于同一渐开线齿廓,不同圆周上的压力角是不同的,基圆上的压力角为零,离基圆越远的圆,半径越大,该圆上的压力角也越大。模数和齿数一样的齿轮,分度圆大小一样,但其压力角可以不同,基圆大小也随之不同,则渐开线齿廓也就不同。因此压力角是决定渐开线齿廓形状的一个基本参数。为了设计、制造、检验与使用的方便,GB1356-88规定分度圆压力角的标准值为20,在某些场合也用14.5、15、22.5、25等齿轮。(3)齿数z 齿轮的大小和渐开线齿廓的形状均与齿数有关。
55、(4)齿顶高系数h*、顶隙系数c* 齿顶高系数和顶隙系数决定齿顶高和齿根高的尺寸。GB1356-88规定其标准值为h*=1 c*=0.25,有时也采用非标准的短齿h*=0.8,c*=0.315。 直齿齿轮的其他参数还有分度圆直径d、齿顶圆直径da、齿根圆直径df、基圆直径db和变位系数x,各参数间的关系如下:直齿圆柱齿轮的几何特征相对简单,其中的参数化建模重点与难点应该在端面渐开线轮齿齿廓的参数化创建,渐开线齿廓的的形状取决于基圆的大小,而基圆的大小取决于齿轮的齿数z、模数m、和压力角。这三个参数一经确定,渐开线齿廓的形状也随之确定。52 直齿轮三维建模 直齿圆柱齿轮的的建模,其重点和难点是渐
56、开线齿廓的绘制,在解决了渐开线的绘制之后,建立齿轮模型就较简单了。常用的建立齿轮模型的方法有以下两种方法: 方法一:画出渐开线和各个圆,镜像渐开线,将多余的线剪去,留下一个轮齿的轮廓曲线,轮齿的两边都留半个齿根曲线。所剩下的曲线的圆心角等于一个齿距所对应的圆心角。将该曲线按齿数环行阵列,即为一个齿轮的外轮廓线,拉伸该轮廓线,即得到一个齿轮。 方法二:画出渐开线、各个圆、齿轮毛坯,镜像渐开线,将多余的线剪去,留下一个齿槽轮廓曲线。将齿槽轮廓线拉伸成实体,用齿坯与生成的齿槽实体做差,在齿坯中就切出了一个齿槽。环行阵列z个齿槽特征,就得到一个齿轮。 上述两种方法都能画出齿轮实体,但用这两种方法很难使
57、齿轮参数化。方法一中用来做镜像和修剪曲线的直线在变换后无法实现参数话,此种方法只可用于画单个齿轮或者用程序来画齿轮实体。齿轮中的齿根圆和基圆的大小随齿轮基本参数的变化而变化,有时齿根圆大于基圆,有时基圆大于齿根圆。基圆较大时,渐开线和齿根圆之间应该有圆弧过渡;齿根圆较大时,应把多余的那段渐开线剪去。因此,方法二只能实现与画齿轮实体时的情况一样时的齿轮的参数化。为了避免出现这个问题,在本课题中使用先画出轮齿实体,并将轮齿底端的余量留的大些,然后将轮齿实体与齿根圆柱体做并操作。具体操作如下: (1) 建立渐开线齿廓曲线新建部件,在建模模块下输入相关的表达式,按前面介绍的方法画出渐开线。选择XOY为
58、基准面作草图,画出齿顶圆、齿根圆和基圆,画出一条直线,该直线与X轴所成的角为分度圆上半齿厚处的点与坐标原点的连线与正X方向的夹角。应注意的是应将该直线的端点固定约束在原点上。连接渐开线尾部和基圆上与渐开线同一侧上任一点,再将该点与渐开线起始点连接。如下图5-1所示:图5-1 草图建立的结果建立齿轮的基本齿形拉伸齿根圆建立齿根圆柱实体,拉伸高度为齿轮的齿宽。以原点为起点在Z轴建立一条直线,通过该直线与刚在草图中作的与X轴成一定角度的连线做基准平面1。将在草图中作的与渐开线连接的两条直线和渐开线连接起来,并以这三条线为轮廓拉伸实体,拉伸方向为Z轴负方向,拉伸厚度不定,只要把它拉伸成实体就可。继续拉
59、伸,将刚拉伸的实体中靠近原点的一个面拉伸,拉伸厚度是db/2-df/2+0.5,将拉伸好的实体与原实体进行合并。该步做法是为了在基圆大于齿根圆的情况下能使轮齿与齿根圆柱实体相交。以平面1为参考平面,修剪上述实体,留下渐开线起始点那一侧。将修剪后的实体用平面1做镜像,再将镜像后的实体进行合并。合并后就得到轮齿的基本齿形,如图5-2所示:图5-2 齿轮的基本齿形 接着做一个基准平面2,该平面与XOY平面平行,且在Z轴正方向上与XOY平面的距离为齿宽的一半。以基准平面2为参考平面镜像齿轮的基本齿形。齿轮的建立以图5-1中的右端点为起点,绘制一条与Z轴平行的直线,该直线作为被投影曲线。选择齿根圆柱实体
60、作为投影面,生成投影曲线。然后利用生成的投影曲线为引导线,建立齿轮的一个基本齿形。对该齿形和齿根圆柱实体进行求和特征操作,然后进行环行阵列,最后利用拉伸齿顶圆进行修剪即得到一个齿轮。第六章 斜齿轮的参数化设计在生产中广泛用到斜齿轮,虽然使用斜齿轮传递动力时会产生轴向力,但与直齿轮相比,有明显的优点:(1)啮合性能好:斜齿圆柱齿轮轮齿之间是一种逐渐啮合过程,轮齿上的受力也是逐渐由小到大,再由大到小;因此斜齿轮啮合较为平稳,冲击和噪声小,适用于高速、大功率传动。(2)重合度大:在同等条件下,斜齿轮的啮合过程比直齿轮长,即重合度较大,这就降低了每对齿轮的载荷,从而提高了齿轮的承载能力,延长了齿轮的使
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论