版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 第 页 共 页目 次1 引言 11.1 AutoCAD应用 11.2 AutoCAD二次开发 11.3 ActiveX Automation技术 31.4 本课题研究内容安排 42 零部件参数化设计 43 齿轮的参数化设计 43.1 齿轮的机械设计方法 43.2 系统的工作流程 53.3 系统的用户界面 53.4 创建对AutoCAD部件对象的引用 63.5 程序中强度的计算与校验 73.6 用户界面中各个模块的实现 83.7 零件图的绘制 113.8 应用实例 134 轴的参数化设计 144.1 系统的用户界面 144.2 应用实例 15结论 18致谢 19参考文献20附录A 齿轮参数化设
2、计程序 21附录B 轴的参数化设计程序 471 引言AutoCAD是当前应用最广泛的CAD图形支撑平台但缺少参数化设计功能,因而不能完成零部件的自动设计与绘图,设计效率难以提高。本文主要研究减速器计算机辅助设计软件的开发,阐述应用VB语言对AutoCAD进行二次开发,以实现减速器关键零部件的参数化设计。11 AutoCAD应用CAD是一种利用计算机强大的图形处理和数值计算能力,辅助人们进行工程或产品的设计与分析,以达到理想的目的并取得创新成果的一种技术。现阶段由于人们对软件的开发产生了许多以CAD技术为基础的应用软件。在这些软件中,应用人数最多、最具影响力的当属AutoCAD。AutoCAD具
3、有良好的用户界面,通过交互菜单或命令行方式便可以进行各种操作。它的多文档设计环境,让非计算机专业人员也能很快地学会使用。在不断实践的过程中更好地掌握它的各种应用和开发技巧,从而不断提高工作效率。AutoCAD还具有广泛的适应性,它可以在各种操作系统支持的微型计算机和工作站上运行,并支持40多种分辨率由320200到20481024的各种图形显示设备,以及30多种数字仪和鼠标器,数十种绘图仪和打印机,这就为AutoCAD的普及创造了条件1-3。然而在许多方面,AutoCAD还是无法达到预计的目的,如参数化设计等,因此,人们又对AutoCAD进行了进一步开发,使AutoCAD能适应更多的软件支持。
4、这就是所谓的AutoCAD二次开发。12 AutoCAD二次开发121 系统的二次开发功能AutoCAD不仅能够胜任二、三维绘图工作,而且还是一个良好的CAD二次开发平台,系统提供的主要开发功能有:(1)用户能自定义屏幕菜单、下拉式菜单、图标菜单、图形输入板菜单和按钮菜单。(2)用户能定义与图形有关的一些属性,如线型、剖面线图案、文本字体、符号、样板图形等。(3)建立命令组文件,自动执行预定义的命令序列。(4)通过DXF或IGES等规范的图形数据转换接口,与其他CAD系统或应用程序进行数据交换,以实现不同系统之间的集成。(5)提供了一个完全集成在AutoCAD内部的Visual LISP编程开
5、发环境,用户可使LISP语言定义新命令,开发新应用,迅速而方便地建立自己的高效解决方案。编译后的Visual LISP代码是二进制的,从而有助于保护软件算法和知识产权。(6)具有一个功能强大的编程接口Object ARX,提供了对AutoCAD进行二次开发的C语言编程环境与接口。用户可以用从Object ARX AcDb的基本类中导出AutoCAD的所有对象,因此,用户自定义的对象可以完全建立在已有的AutoCAD对象库上。(7)配备了更加丰富的ActiveX对象用于定义和编程。应用AutoCAD ActiveX技术,可以从AutoCAD内部或外部应用程序控制编程。(8)熟悉Visual Ba
6、sic的用户还可以用VBA进行开发,这也是一个面向对象的编程环境,它具有与VB类似的特点,语法简单、功能强大4。122 AutoCAD二次开发工具(1)Visual LISP(VLISP)VLISP是新一代的AutoCAD LISP语言。VLISP对语言进行了扩展,可以通过Microsoft ActiveX Automation接口与对象交互。同时,通过实现反应器函数,还扩展AutoLISP响应事件的能力。作为开发工具,VLISP提供了一个完整的集成开发环境(IDE),包括编译器、调试器和其他工具,可以提高二次开发的效率 。另外,VLISP还提供了工具用于发布独立的应用程序。(2)ARXObj
7、ectARX应用程序以C+为基本开发语言,具有面向对象编程方式的数据可封装性、可继承性及多态性的特点,用其开发的CAD软件具有模块性好、独立性强、连接简单、使用方便、内部功能高效实现以及代码可重用性强等特点,并且支持MFC基本类库,能简洁高效地实现许多复杂功能。(3) 基于ActiveX Automation技术的VBA等开发工具ActiveX Automation是一套微软标准,该标准允许通过外显的对象由一个Windows应用程序控制另一个Windows应用程序,这也是面向对象编程技术的精髓所在。ActiveX Automation服务器应用程序是通过自身对象的属性、方法、事件外显其功能。对
8、象是服务器应用程序的简单而抽象的代表。不管是用VB、VC、OFFICE VBA等从外部,还是用AutoCAD VBA从内部对AutoCAD进行二次开发,都是通过调用AutoCAD的对象体系结构来进行的。ActiveX Automation技术的完全面向对象化编程的特点,使其开发环境具备了强大的开发能力和简单易用的优良特点,开发工具的选择也具有很大的灵活性。所以,利用ActiveX Automation技术,是极具潜力的一种开发手段5-15。对于减速器辅助设计关键零部件的参数化设计,就需要用到AutoCAD的这一二次开发。利用ActiveX Automation技术,对减速器的零部件进行分析,以
9、达到参数化设计。13 ActiveX Automation技术ActiveX Automation的使用方法(1)Application对象如果在计算机系统上安装了AutoCAD,则Windows会自动将其所有的信息注册到系统注册表里。那么在启动Visual Basic后,用户可以象调用VB自己的对象一样调用AutoCAD所提供的ActiveX。(2)Preferences与Document对象与AutoCAD中的Preferences对话框的作用相同,通过Preferences对象可以读取或设置AutoCAD的一些基本设置。Preferences对象通过Application的Prefere
10、nces属性返回。(3)创建、查询与修改AutoCAD图形对象在创建AutoCAD图形对象之前,首先必须定义并创建ModelSpace与PaperSpace集合对象。这两个对象可通过Document对象的ModelSpace属性与PaperSpace属性返回。(4)非图形对象除了ModelSpace与PaperSpace集合,Document对象中另外12个集合中的对象都是非图形对象,如Layers集合包含了AutoCAD当前文档中所有的层,而Linetypes和TextStyles则分别为线型对象与字符型对象的集合。(5)用户输入Document对象中还包含有一个很重要的子对象Utility
11、,Utility对象提供了一些其它的实用功能,如用户输入控制(user-input)。user-input方法可以在AutoCAD的命令提示行中提示用户输入,并显示相应的输入数据类型。这种类型的输入对于屏幕坐标系,实体选择,短字符与数字的输入有着极为重要的应用。AutoCAD 的ActiveX Automation技术的出现,标志着AutoCAD 的二次开发技术取得了历史性转折。首先,它首次完全实现了OLE Automation,使得其他软件可以方便地访问AutoCAD;其次,AutoCAD 首次实现了面向对象的开发技术,用户可以操纵它提供所有的AutoCAD 对象;最后,基于ActiveX
12、Automation开发技术的开发工具得到空前的膨胀,已不再局限于C及C+系列语言,用Visual Basic, Delphi等工具都可以进行开发。ActiveX Automation技术大大地提高了系统开发的效率、健壮性及易维护性。14 本课题研究内容安排选好课题后,在开学期间充分利用学校图书馆、数字图书馆进行文献搜索。然后根据检索来的文献,按照任务书要求完成方案设计、开题报告、外文翻译。初期任务在前4周内全部做完。由于该课题需要运用到程序语言来进行编程,在中期需要学习一种程序语言,并能够运用该语言编写出一些具有代表性的程序。同时学习和掌握齿轮类零件的参数化设计基本方法,然后利用AutoCA
13、D的二次开发,运用VB语言对程序进行编制,开发一个原型软件系统,对参数化设计进行验证。最后,结合实际工作,完成毕业设计说明书的撰写。2 零部件参数化设计零部件参数化设计模块完成减速器中关键零部件(如齿轮、轴等)的参数化设计功能,如对于齿轮零件,系统能够根据所输入的已知参数(如齿轮的传递功率、主动齿轮转速、传动比、主动齿轮齿数等),自动完成齿轮的结构设计,并输出二维工程图。下面主要以标准直齿圆柱齿轮为例,阐述零部件参数化设计的实现方法。3 齿轮的参数化设计31 齿轮的机械设计方法齿轮在工程中应用极其广泛。考虑到常用齿轮减速器中的齿轮通常为闭式传动的实际情况,故齿轮的设计计算可分为2种形式1:(1
14、)软齿面闭式齿轮传动。齿轮的主要失效形式是齿面疲劳点蚀,设计时应先按齿面接触疲劳强度计算出小齿轮直径,再利用齿根弯曲疲劳强度进行校核。(2)硬齿面闭式齿轮传动。齿轮的主要失效形式是齿根弯曲折断,设计时应先按齿根弯曲疲劳强度计算出模数,再用齿面接触疲劳强度进行校核。32 系统的工作流程根据齿轮设计步骤,本系统按图1所示的流程完成齿轮的参数化设计。图1 齿轮参数化设计系统工作流程33 系统的用户界面为方便用户与系统的交互,系统具有如图2所示的用户交互界面5。“初始设计条件”功能模块,采用“文本库”形式供用户输入已知参数,包括传递功率、转速、齿数、传动比等;采用“组合框”控件,列出常用齿轮材料、热处
15、理方式及硬度,方便用户选择。根据用户选择的材料及齿轮的硬度,通过“齿面接触疲劳强度设计”和“齿根弯曲疲劳强度设计”2个功能模块,分别实现对软齿面齿轮和硬齿面齿轮的设计。“几何尺寸”功能模块,输出主动齿轮和从动齿轮的基本尺寸参数。图2 齿轮参数化设计用户界面单击“绘图”按钮,自动创建AutoCAD文件,并输出齿轮的二维工程图。34 创建对AutoCAD部件对象的引用 此处省略NNNNNNNNNNNN字。如需要完整说明书和设计图纸等.请联系扣扣:九七一九二零八零零 另提供全套机械毕业设计下载!该论文已经通过答辩35 程序中强度的计算与校验由于齿轮有软齿面和硬齿面之分,故在计算中可分别按齿面接触疲劳
16、强度和齿根弯曲疲劳强度计算,而在验算时则需按照齿根弯曲疲劳强度和齿面接触疲劳强度进行校核1,7,11。若按齿面接触疲劳强度计算,根据设计计算公式进行计算。式中,为齿轮1分度圆直径,为传递功率,为载荷集中系数,为泊松比, 为齿宽系数,为齿轮2许用接触应力。程序代码中与之相对应的语句是d1 = Kd * (InputTorque * 1000 * Factor_LoadConcentration1 * (PoissonRatio + 1) / Factor_GearWidth / PoissonRatio / AllowableStress_contact2 / AllowableStress_c
17、ontact2) (1 / 3),其中,定义AllowableStress_contact2为齿轮2许用接触应力,定义PoissonRatio为泊松比,定义InputTorque为传递功率,定义Factor_LoadConcentration1为接触强度时的载荷集中系数,定义Kd为公式系数,定义Factor_GearWidth为齿宽系数。根据此公式,计算出齿轮1的分度圆直径,进而通过已知条件,分别计算出齿轮的齿顶圆直径、齿根圆直径、齿轮宽度、模数等量。再而对其进行齿根弯曲疲劳强度校核,需要用到公式进行验算。式中,为许用弯曲应力,为载荷集中系数,为传递扭矩,为齿形系数,为应力校正系数,为重合度系
18、数,为模数,为齿宽系数,为齿轮1齿数。其程序代码中相对应的语句:AllowableStress_bend3 = 2 * Factor_LoadConcentration2 * TorqueInput * Factor * Factor_contactRatio / Factor_GearWidth / z1 2 / m 3,其中,定义TorqueInput为传递扭矩,定义Factor为齿形系数与应力校正系数的乘积,定义UltimateStress_bend3为校核齿轮1时的弯曲极限应力,定义Factor_LoadConcentration2为弯曲强度时的载荷集中系数,定义Factor_cont
19、actRatio为重合度系数。根据此公式,检验齿轮是否符合弯曲强度要求。若按齿根弯曲疲劳强度计算,根据公式进行计算,而程序中的语句为m = (2 * Factor_LoadConcentration2 * TorqueInput * Factor * Factor_contactRatio / Factor_GearWidth / z1 2 / AllowableStress_bend1) (1 / 3),对以上为出现的量进行定义,定义AllowableStress_bend1为齿轮1许用弯曲应力。则可计算出齿轮的模数,进而可得齿轮的其他参数,如齿顶圆直径、齿根圆直径、分度圆直径、齿轮宽度等。
20、待算出以上量后,需对齿轮进行齿面接触疲劳强度校核,可根据公式进行验算,与之对应的程序中的语句为AllowableStress_contact3 = Sqr(Kd 3 * InputTorque * 1000 * Factor_LoadConcentration1 * (PoissonRatio + 1) / Factor_GearWidth / PoissonRatio / d1 3),对以上为出现的量进行定义,定义AllowableStress_contact3为校核齿轮1时的需用接触应力。从而检验齿轮是否满足接触强度要求。36 用户界面中各个模块的实现由图2可看出,用户界面可分为“初始设计
21、条件”、“按齿面接触疲劳强度设计”、“按齿根弯曲疲劳强度设计”和“几何尺寸”四大模块。361 初始设计模块此模块是对程序设计初始条件的设置,故使用文本框的形式显示,以便用户输入已知条件。传递功率、输入转速、传动比这3个文本框的内容可由主界面获取,实现代码如下:txtInputTorque.Text = frmMain.lblTorQueInput_axis1.CaptiontxtInputRotate.Text = frmMain.lblRotate_Axis1.CaptiontxtI.Text = frmMain.lblI1.Caption在窗口被装载时,这些文本框可直接获取已知量,但由于此
22、程序未对主界面进行设置,所以此3个已知量可由用户直接输入。输入齿轮齿数这一文本框的内容是由用户预想输入的,可根据以上3个已知量估算出输入齿轮的的齿数,输入齿轮的齿数对一下计算起着关键性的作用,若齿数取的不对,则对齿轮的校验就可能失败。主动齿轮轴径、平键尺寸、平键尺寸这三个文本框的内容是绘图的必要参数,用户可对其自行设置,一般可在计算出几何尺寸后进行设置,以防输入的数据不符合计算出的参数数据。在这一模块中,还采用了两个组合框控件,可供用户选择,选择好齿轮的材料、热处理方式和硬度,这些资料可在窗口装载时载入,语句说明如下: cboRigidity_InputGear.AddItem 45钢 调质
23、=350HBS cboRigidity_InputGear.AddItem 40Cr 表面淬火 4056HRC cboRigidity_InputGear.AddItem 40Cr 调质 =350HBS cboRigidity_OutputGear.AddItem 45钢 调质 =350HBS cboRigidity_OutputGear.AddItem 40Cr 表面淬火 4056HRCcboRigidity_OutputGear.AddItem 40Cr 调质 = 0 And Mid(s, j, 1) = 0 And Mid(s, j, 1) = 9 s1 = Mid(s, j, 1) s
24、2 = s2 & s1 j = j + 1 Loop Rigidity_Gear2 = Val(s2) Debug.Print Rigidity_Gear2 End SubPrivate Sub cmdContact_Calculation1_Click() Dim time As Long 定义变量,齿轮工作时间 Dim RotateSpeed1 As Double 定义变量,齿轮1的转速 Dim RotateSpeed2 As Double 定义变量,齿轮2的转速 Dim Number_StressCycle1 As Double 定义变量,齿轮1应力循环次数 Dim Number_Str
25、essCycle2 As Double 定义变量,齿轮2应力循环次数 Dim BaseNumber_Cycle1 As Double 定义变量,齿轮1循环基数 Dim BaseNumber_Cycle2 As Double 定义变量,齿轮2循环基数 Dim Factor_safety As Double 定义变量,安全系数 Factor_safety = 1 计算输入/出齿轮的齿面接触极限应力 Select Case cboRigidity_InputGear.ListIndex Case 0, 2 UltimateStress_contact1 = 2 * Rigidity_Gear1 +
26、69 Case 1 UltimateStress_contact1 = 17 * Rigidity_Gear1 + 20 End Select Select Case cboRigidity_OutputGear.ListIndex Case 0, 2 UltimateStress_contact2 = 2 * Rigidity_Gear2 + 69 Case 1 UltimateStress_contact2 = 17 * Rigidity_Gear2 + 20 End Select lblUltimateStress_contact1.Caption = UltimateStress_contact1 lblUltimateStress_contact2.Caption = UltimateStress_contact2 读取传动比 i1 = Val(txtI.Text) Dim Vert2(0 To 7) As Double Vert2(0) = Center1(0) - l / 2 + b / 2 Vert2(1) = Center1(1) + b / 2 Vert2(2) = Vert2(0) Vert2(3) = Center1(1) - b / 2 Vert2(4) = Cent
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度离婚房产交易资金监管与安全保障协议3篇
- 矿山工程合同范本安全
- 主题乐园景观栈桥安装合同
- 建筑装饰劳务合同范本
- 药品实验室药品研发
- 编辑出版人员工作手册
- 2025版生态农业用地房地产抵押典当合同范本3篇
- 大型机场设备安装龙门吊租赁协议
- 知识产权服务授权书招投标
- 广告公司创意人才聘用合同范例
- 华东师大版科学七年级上册期末测试卷2
- 危机管理与应急响应
- 《安全生产法》宣传周活动宣贯课件
- 2024-2025学年北师版八年级物理上册期末考试综合测试卷
- 【MOOC】国际商务-暨南大学 中国大学慕课MOOC答案
- 人教版八年级英语上册期末专项复习-完形填空和阅读理解(含答案)
- GB/T 44592-2024红树林生态保护修复技术规程
- 2024新版有限空间作业安全大培训
- 2023-2024学年广东省广州市白云区八年级(上)期末数学试卷及答案解析
- 2024年中邮保险公司招聘笔试参考题库含答案解析
- 云南工商学院应聘登记表
评论
0/150
提交评论