基于ProE二次开发的直齿圆柱齿轮二级减速器参数化设计毕业论文.docx
《基于ProE二次开发的直齿圆柱齿轮二级减速器参数化设计毕业论文.docx》由会员分享,可在线阅读,更多相关《基于ProE二次开发的直齿圆柱齿轮二级减速器参数化设计毕业论文.docx(53页珍藏版)》请在冰豆网上搜索。
基于ProE二次开发的直齿圆柱齿轮二级减速器参数化设计毕业论文
毕业论文
基于Pro/E二次开发的直齿圆柱齿轮二级减速器参数化设计
摘要
基于Pro/E的参数化建模及单一数据库技术,建立了齿轮、轴、箱体及减速器传动系统的参数化模型。
主要参数化对象包括:
齿数、模数、齿轮外形尺寸参数;轴段长度、直径、倒角等参数;轴承内径、外径和宽度等参数;以及箱体底座和上盖模型的90%以上的结构参数,基本实现了整个减速器模型的参数化设计。
以VisualC++和Pro/E的二次开发工具Pro/TOOLKIT为平台,通过动态链接库方式,开发了减速器参数化设计的主菜单及用户界面,通过对话框可方便直观的控制减速器模型各参数,在Pro/EWildfire5.0平台上成功实现了减速器参数化设计系统的二次开发。
在机构仿真模块中对减速器传动系统进行了运动学仿真分析;绘制了相关零件图和装配图。
关键词:
减速器;参数化设计;二次开发;Pro/E;Pro/TOOLKIT;VisualC++
Abstract
Thisdesignaccomplishedtheparameterizedmodelingofgear,shaft,boxandthetransmissionsystemofreducerbasedontheparameterizedmodelingandsingledatabasetechnologyofPro/E.Themainparameterizedobjectsincludethefollowingaspects:
thenumberofteeth,module,dimensionalparameterofthegear'sshape;thelength,diameter,chamferandotherparametersofapartofshaft;bearing’sinternalandouterdiameter,widthandsoon;atlast,morethan90%structureparametersofthemodelwhichbasedonbox’sbaseandtopcap.Basically,thispaperachievedtheparameterizeddesignofthewholereducermodel.
BasedontheVisualC++andPro/TOOLKIT,thesecondarydevelopmenttoolofPro/E,havingdevelopedthemainmenuanduserinterfaceofthereducer’sparameterizeddesignthroughtheDynamicLickLibrary.Eachparameterofthereducermodelcanbecontrolledeasilyandvisuallywiththedialogbox.Thesecondarydevelopmentofthereducer’sparameterizeddesignsystemwasaccomplishedontheplatformofPro/EWildfire5.0.Kinematicssimulationofthereducerrotatingsystemwasanalyzedintheorganizationalsimulationmodule,aswellastherelatedpartandassemblydrawingsweredrew.
Keywords:
reducer;parametricdesign;secondarydevelopment;Pro/E;Pro/TOOLKIT;VisualC++
符号说明
齿数
模数
压力角
齿顶圆直径
齿根圆直径
基圆直径
分度圆直径
齿顶高
齿根高
齿顶高系数
变位系数
1绪论
1.1课题研究背景及意义
减速器,又名减速机,减速箱,主要用于在原动机和工作机或执行机构之间起匹配转速和传递转矩的作用。
减速器主要由传动零件(齿轮或涡轮蜗杆)、轴、轴承、箱体以及其他附件所组成,在现代机械中应用极为广泛,从大动力的传输工作到小负荷、精确角度的传输都要用到减速器。
直齿圆柱齿轮二级减速器是传动零件由两对互相啮合的直齿圆柱齿轮组成的二级减速传动装置,能够实现较大的传动速度和力矩的转换。
减速器的传统设计效率低,尤其是齿轮的齿形设计,其设计过程繁琐而且容易出错。
参数化设计是提高设计效率的有效途径,在参数化设计的基础上,能够实现各组成零件以及整个传动系统各尺寸及参数的自动变换,给设计工作带来很大方便。
Pro/E软件有着强大的参数化设计功能,其基于单一数据库的自顶向下设计以及全参数化相关设计理念,可以方便、快捷地对减速器进行参数化设计,包括齿轮、传动轴及整个传动系统的参数化设计。
运用机械设计等知识完成对减速器齿轮、轴等结构设计之后,再用Pro/E进行参数化设计和运动仿真,使得减速器的设计直观、快捷、高效。
Pro/E在提供强大的设计、分析功能的同时,也为用户提供了多种二次开发工具。
常用的二次开发工具有:
族表(FamilyTable)、用户自定义特征(UDF)、Pro/PROGRAM、J—Link和Pro/TOOLKIT等。
Pro/TOOLKIT是美国PTC公司为Pro/E软件提供的开发工具包,其主要目的是让用户通过C程序代码扩充Pro/E的系统功能,开发基于Pro/E系统的应用程序模块,从而满足用户的特殊要求。
Pro/TOOLKIT功能极其强大,库函数丰富,是进行Pro/E二次开发最理想的工具。
此外,Pro/TOOLKIT支持完全面向对象的编程,利用其提供的菜单以及VisualC++的可视化界面设计技术,可以设计出方便实用的人机交互界面,应用程序易于修改,可重用性高,可以快速实现设计者的设计意图。
1.2国内外研究现状
1.2.1减速器的研究现状
目前,国内各类通用减速器的标准系列已达数百个,基本可满足各行业对通用减速器的需求。
在第一代通用硬齿面齿轮减速器及圆弧圆柱蜗杆减速器系列产品的基础上,已经开发并完成了标准化的新一代圆柱齿轮减速器,圆锥—圆柱齿轮减速器及圆弧圆柱蜗杆减速器,并已投放市场。
新一代减速器不仅在产品性能参数上进一步进行于优化,而且在系列设计上完全遵从模块化的设计原则,产品造型更加美观,更宜于组织批量生产,更适应现代工业不断发展而对基础件产品提出的愈来愈高的配套要求。
但总体而言,国内减速器系列产品的开发及更新工作近几年进展缓慢,与国外同行在此方面的差距较大,而且与市场的需求也很不适应。
为保持行业的健康可持续发展,在充分肯定行业不断发展、进步的同时,更应看到存在的问题,并积极研究对策,采取措施,力争在较短时间内能有所进展。
20世纪70年代末以来,国外减速器技术有了很大发展。
产品发展的总趋势是小型化、高速化、低噪声和高可靠性。
技术发展中最引人注目的是硬齿面技术、功率分支技术和模块化设计技术。
到80年代,国外硬齿面技术已日趋成熟。
采用优质合金钢锻件、渗碳淬火磨齿的硬齿面齿轮,精度不低于ISO1328-1975的6级,综合承载能力为中硬齿面调质齿轮的3~4倍,软齿面齿轮的4~5倍。
一个中等规格的硬齿面减速器的重量仅为中硬齿面减速器的1/3左右,且噪声低、效率高、可靠性高。
1.2.2CAD技术研究现状及发展趋势
由于国外CAD/CAM软件出现得较早,开发和应用的时间也较长,CAD技术已经得到充分的发展和广泛的应用,并取得了明显的经济效益,现在基本上已经占领了国际市场。
近几年来,随着计算机技术的飞速发展,CAD技术已经由发达国家向发展中国家扩展,而且发展的势头非常迅猛。
因为当今世界工业产品的市场竞争,归根结底是设计手段和设计水平的竞争,发展中国家的工业产品要在世界市场占有一席之地,就必须采用CAD技术。
我国CAD技术的研究和开发工作起步相对较晚,CAD/CAM软件不管是从产品开发水平还是从商品化、市场化程度都与发达国家有不小的差距,所以,我国CAD/CAM软件前景不容乐观。
但是,我们也应该看清自己的优势,比如了解本国市场、提供技术支持方便、价格便宜等。
在这些前提下,我们不仅要跟踪国际最新动态,更要立足国内,开发出有自己特色,符合中国人习惯的CAD/CAM软件。
从CAD技术的发展趋势,可以看出,CAD正经历着由传统技术向现代技术的转变,为此,提出“现代CAD技术”的概念。
如今,CAD技术己广泛应用十航空航天、电子、机械、建筑、轻纺、化工、交通、影视、教育等各个领域,并取得了明显的经济效益和社会效益。
成为衡量一个国家的科学技术现代化和工业现代化的重要标志。
1.3本文主要研究内容
本课题在深入研究参数化设计思想及方法的基础上,以直齿圆柱齿轮二级减速器参数化设计为核心,着重研究了基于Pro/E的产品参数化建模和CAD系统的建立以及与其相关的Pro/E二次开发技术(Pro/TOOLKIT和Pro/PROGRAM编程、菜单、对话框设计技术等),以及产品参数化CAD系统的开发步骤,并详细介绍了该系统的研究开发和实施过程。
其主要研究内容如下:
a.减速器零件模型的建立基于特征的参数化设计方法,在Pro/E环境下建立减速器常用件及标准件模型,附加相应参数和关系式,以实现模型与参数化驱动机制的结合。
b.系统程序设计及界面设计利用VisualStudio2008和Pro/TOOLKIT开发工具编写系统接口应用程序,开发系统的用户界面。
c.Pro/E二次开发及接口技术的研究和应用。
d.模型装配及机构仿真利用Pro/E组件模块下的装配工具为各零件添加合理的装配约束,再利用其机构模块下的齿轮装配工具添加齿轮约束。
e.动态分析利用Pro/E机构模块的测量工具生成曲线分析结果;利用“Mechanic”模块生成模态阵型图。
2
减速器零件的参数化建模及装配
2.1齿轮的参数化建模
齿轮是一个常用的传动零部件之一,其型号、规格多种多样,在实际的设计生产过程中,一般需要根据客户的具体要求进行设计的。
齿轮的设计计算工作量又比较大,其精度直接影响到齿轮的啮合与传动。
这就需要设计者根据一些基本信息设计出相应的齿轮。
对于不同规格的齿轮,其形状基本相似,只是尺寸有些差异,为此,可以首先建立一个模型样板,通过改变模型中的一些基本参数得到新的参数化模型。
本文利用Pro/E的参数化功能实现直齿圆柱齿轮三维实体建模。
为了能够方便进行参数化设计,首先对齿轮进行三维参数化建模,建立齿轮的模型样板,并在模型样板的基础上进行参数化控制。
2.1.1齿轮的几何参数
对于标准直齿圆柱齿轮,描述齿轮基本几何尺寸的参数为:
齿数、模数、压力角、齿宽、齿顶高系数、顶隙系数;对于变位齿轮,额外增加变位系数。
齿轮的其他参数计算公式可按表2.1进行计算。
表2.1标准直齿圆柱齿轮参数计算公式
参数
计算公式
分度圆直径
基圆直径
齿顶圆直径
齿根圆直径
2.1.2模型的建立
a.打开Pro/E软件,选取零件模块,新建名为“zhichilun”的文件,选取“mmns_part_solid”模板,单击确定按钮进入零件模块。
b.添加表2.2所列主要参数,并依据表2.1所列公式建立相应参数间的关系,然后利用拉伸、旋转等命令建立如图2.1所示的两种类型的齿轮。
表2.2齿轮初始参数
参数
高速级大齿轮
低速级小齿轮
低速级大齿轮
齿数
50
17
50
模数
3.5
5
5
压力角
20
20
20
齿顶高系数
1
1
1
顶隙系数
0.25
0.25
0.25
变位系数
0
0
0
齿顶圆直径
182
100
237.5
齿根圆直径
166.25
77.5
260
基圆直径
164.45
84.57
234.92
分度圆直径
175
90
250
齿顶高
3.5
5
5
齿根高
4.38
6.25
6.25
齿宽
55
67
67
图2.1直齿圆柱齿轮
2.2轴的参数化建模
2.2.1阶梯轴
新建零件文件,依据相应参数,利用旋转命令画出阶梯轴,然后在相应轴段拉伸出键槽,再进行必要的倒角操作,低速轴如图2.2所示,主要初始参数见表2.2;中间轴如图2.3所示,主要初始参数见表2.3。
表2.2低速轴主要初始参数
阶数
长度
直径
1
67
60
2
65
70
3
30
80
4
52
70
5
65
60
6
30
50
7
60
40
注:
阶数顺序在下图中从左向右。
图2.2低速轴模型
表2.3中轴主要初始参数
阶数
长度
直径
1
50
40
2
65
50
3
27
60
4
53
50
5
62
40
注:
阶数顺序在下图中从左向右。
图2.3中间轴
2.2.2齿轮轴
依据相关设计知识,由于减速器高速级齿轮的齿数和模数偏小,所以高速轴应选用齿轮轴,即在轴上直接加工出轮齿,以保证轮齿有足够的强度。
新建零件文件,先利用旋转命令建立阶梯轴,然后利用建立齿轮模型的方法在相应轴段画出轮齿,最终模型如图2.4所示。
图2.4齿轮轴模型
2.3轴承及其他附件的参数化建模
2.3.1轴承模型的建立
由于轴承是标准零件,建模时可看做一个整体,因此可将整个轴承当做一个零件来建立,方法是新建零件模块后,先利用旋转的命令画出轴承的内外圈,然后仍然利用旋转命令画出滚珠,最后加入内径、外径、宽度、倒圆角的参数,保存模型,轴承模型如图2.5所示。
图2.5轴承模型
2.3.2螺栓、螺母及其他附件模型的建立
在零件模块下,依据国标规定的标准画法的参数关系,利用相应工具建立螺栓、螺母模型,再建立出挡油盘、油标尺以及其他附件的模型。
2.4箱体、箱盖及端盖的模型设计
依据相关图片资料,在Pro/E的零件模块下分别建立箱体、箱盖及端盖的模型,然后再设置合理的参数和相应关系控制模型尺寸,结果如图2.6、2.7、2.8所示。
图2.6箱盖
图2.7箱体
图2.8端盖
2.5减速器零件的装配关系
Pro/E软件提供了非常齐全的装配工具,有对齐、配对、插入等多种固定约束以及销钉、滑动杆、圆柱体等各种可动约束,基本能够满足各种常见的装配需要。
而减速器的整体装配则需要结合固定约束和可动约束以及齿轮副约束等共同完成。
2.5.1轴装配
新建组件文件,首先添加挡油盘零件,装配类型为“缺省”,然后利用“轴对齐”、“配对”约束装配另一面的挡油盘和两个轴承,再利用“轴对齐”、“配对”约束装配齿轮轴,对齐一端,通过加入参数关系式控制轴的长度以使装配合理,尺寸关系设置完毕后点击“再生”命令,结果如图2.9所示。
图2.9低速轴装配体
用与装配高速轴相似的方法分别装配中轴和低速轴,完成后如图2.10、2.11所示。
图2.10中轴装配体
图2.11低速轴装配体
2.5.2端盖装配
新建组件文件,用合适的固定装配约束分别装配端盖各零件,通过加入合理的参数关系式控制各零件尺寸参数,模型如图2.12所示。
图2.12端盖装配体
2.5.3箱体装配
新建组件文件,首先添加箱体零件,约束类型为“缺省”,用销钉约束分别添加齿轮轴、中间轴和低速轴,然后用“对齐”、“配对”约束装配箱盖和端盖的组件模型,最后添加螺栓、螺母及定位销等其他附件,并添加合理的关系式以使装配合理,装配完成后如图2.13、2.14所示。
图2.13减速器模型的内部结构
图2.14减速器模型的整体外形
3
Pro/E的二次开发技术
虽然Pro/E软件功能强大,通用性好,但在具体的使用过程中很难满足具体产品的设计需要,因此,以Pro/E软件为平台进行二次开发,并结合参数化技术,开发出适合具体模型的设计系统,具有重要的现实意义,也是Pro/E软件应用过程中的一项重要工作。
3.1VisualStudio2008编译连接环境设置
VisualStudio是微软公司推出的开发环境。
是目前最流行的Windows平台应用程序开发环境,它可以用来开发多种Windows下的软件项目,包括Windows应用程序、动态链接库、Windows服务、Web服务、网页开发、Office集成开发、数据库项目开发等。
3.1.1运行模式的确定
Pro/TOOLKIT应用程序有两种工作模式:
同步模式和异步模式。
异步模式,无需启动Pro/E就能单独运行Pro/TOOLKIT应用程序的方式。
异步模式实现了两个程序的并行运行,可以只在程序需要调用Pro/E功能时才启动Pro/E。
但由于异步模式具有代码复杂、执行速度慢等缺点,因此一般不采用异步模式。
同步模式下,Pro/TOOLKIT应用程序必须与Pro/E系统同步运行。
同步模式又分为两种模式,即:
动态连接模式(DLL模式)和多进程模式(MultiprocessMode)。
动态连接模式是将用户编写的C程序编译成一个DLL文件,使Pro/TOOLKIT应用程序和Pro/E运行在同一进程中,通过直接调用函数实现信息交换。
多进程模式是将用户的C程序编译成一个可执行文件,Pro/TOOLKIT应用程序和Pro/E运行在各自的进程中,它们之间的信息交换是由消息系统来完成的。
由于DLL模式的运行速度快,是应用程序开发首选的模式,因此本文选择同步模式下的动态连接模式。
3.1.2开发环境设置
a.选择新建项目类型:
DLL,模板:
MFCDLL,并输入项目名称。
b.指定DLL规则:
使用共享MFCDLL规则的DLL,点击完成按钮完成项目创建。
c.设置包含文件:
选择菜单栏【工具】→【选项】,在“项目和解决方案”结点下选择“VC++目录”,并在“显示以下内容的目录”下拉列表框中选择“包含文件”,添加以下头文件,如图3.1所示.
G:
\ProgramFiles\PTC\proeWildfire5.0\protoolkit\includes
G:
\ProgramFiles\PTC\proeWildfire5.0\protoolkit\protk_appls\includes
G:
\ProgramFiles\PTC\proeWildfire5.0\prodevelop\includes
G:
\ProgramFiles\PTC\proeWildfire5.0\prodevelop\prodev_appls\includes
图3.1添加包含文件
d.设置库文件:
在“显示以下内容的目录”下拉列表框中选择“库文件”,添加以下库文件:
G:
\ProgramFiles\PTC\proeWildfire5.0\protoolkit\i486_nt\obj
G:
\ProgramFiles\PTC\proeWildfire5.0\prodevelop\i486_nt\obj
e.设置项目属性:
在菜单栏【项目】→【属性】弹出的属性页对话框左边的列表框下选择“链接器”节点下的“输入”,在“附加依赖项”中添加库文件netapi32.lib、wsock32.lib、mpr.lib、psapi.lib、protk_dllmd.lib、prodev_dllmd.lib,如图3.2所示。
图3.2添加附加依赖项
3.2菜单栏开发技术
菜单是Pro/E的主要用户界面,Pro/TOOLKIT提供了一系列菜单操作函数,允许应用程序创建和管理菜单。
3.2.1定义初始化函数和结束函数
user_initialize()是Pro/TOOLKIT应用程序的初始化函数,主要用来对同步模式的函数进行初始化,任何同步模式的应用程序要在Pro/E系统中加载都必须包含该函数,典型的定义格式为:
extern"C"intuserinitialize()
{
ProErrorstatus;
//用户添加的接口程序部分
……
returnstatus;
}
user_terminate()函数在Pro/E终止同步模式的Pro/TOOLKIT应用程序时调用,该函数由用户定义,典型格式为:
extern"C"voiduser_terminate()
{
//用户添加的终止代码
}
3.2.2向菜单栏中添加菜单条
菜单条是菜单体系的最顶层菜单,在Pro/E主界面中添加设计菜单按钮及菜单按钮调用的动作(如显示对话框)需要通过Pro/TOOLKIT函数和一个相应的消息文件(MessageFile)共同完成,消息文件主要用来定义菜单项、菜单项提示等信息。
本程序菜单创建过程中使用的命令如下:
a.ProMenubarMenuAdd("menu","menu","Utilities",PRO_B_TRUE,MsgFile);
其功能是在Pro/E原有菜单中创建新菜单,其中第一个"menu"为菜单项名,第二个为菜单标签名;"Utilities"为相邻菜单名,是指Pro/E菜单中的“工具”菜单栏,PRO_B_TRUE指创建的新菜单栏位于"Utilities"右侧;MsgFile为菜单信息文件名。
b.ProMenubarmenuMenuAdd("menu","menu1","menu1",NULL,PRO_B_TRUE,MsgFile);
功能是在Pro/E新创建的菜单中添加下级子菜单,其中"menu"为,父菜单名;前一个"menu1"是菜单名,后一个是菜单标签名;NULL处本来指相邻菜单名,若为第一个菜单,则设置为NULL。
c.ProCmdActionAdd("menu2",(uiCmdCmdActFn)reductor_start,uiCmdPrioDefault,NULL,PRO_B_TRUE,PRO_B_TRUE,&cmd_id);
功能是设置菜单项的动作,"menu2"是使用的动作命令名;(uiCmdCmdActFn)reductor_start激活菜单时用的动作函数名;uiCmdPrioDefault是设置正常的优先级;NULL确定菜单可选,若设置不可选用AccessDefault代替;前一个PRO_B_TRUE是否在非激活窗口显示该菜单项的布尔值;后一个是是否在附属窗口显示该菜单项的布尔值;&cmd_id是动作函数的命令标识号。
d.ProMenubarmenuPushbuttonAdd("menu","menu2","menu2","button",NULL,PRO_B_TRUE,cmd_id,MsgFile);
功能是在菜单中添加菜单按钮,"menu"是父菜单名;第一个"menu2"是菜单名;第二个是菜单标签名;"button"是菜单提示文本;NULL代表相邻菜单名;PRO_B_TRUE表示位于相邻菜单之后。
程序添加完毕后点击【生成】→【编译】命令,在输出栏显示如图3.3所示的无错误提示后,再选择【生成】。
图3.3输出提示
设置信息文件:
信息文件是一种文本文件,用来定义