免费预览已结束,剩余22页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学号 密级 武汉大学东湖分校本科毕业论文 AUTOCAD二次开发齿轮参数化设计 院(系)名 称:工学院专 业 名 称 :机械设计制造及其自动化学 生 姓 名 :指 导 教 师 :熊义君 二一年五月 BACHELORS DEGREE THESIS OF DONGHU COLLEGE WUHAN UNIVERSITYThe Parametric design of AutoCAD secondary development for gearCollege :institute of technologySubject :machinery design,manufacturing and its automationName : CaoZhiquanDirected by :Xiong Yi Jun May 2010郑 重 声 明本人呈交的学位论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料真实可靠。尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。本学位论文的知识产权归属于培养单位。本人签名: 日期: 目 录摘 要IABSTRACTII第一章 引 言11.1 选题背景11.2 本课题研究的意义和目的1第二章 系统介绍32.1 AutoCAD简介32.2 AutoCAD的发展概述32.3 Auto Lisp语言简介42.4齿轮基本的介绍及其一般画法52.5范成法原理的介绍5第三章 AUTOCAD二次开发齿轮参数化设计63.1基本参数的确定63.2根据参数设计对话框63.3编写绘图程序73.4装载相关程序及绘制所需图形10结束语14参考文献15致 谢16附 录A(对话框程序)17附 录B(绘图程序)18武汉大学东湖分校本科毕业论文摘 要 在现代化制造企业中产品的设计离不开CAD软件,如何将通用的CAD软件开发成适合企业应用的专用软件成为机械工程师们研究的一个重要方面,利用专用软件进行设计能缩短设计周期,提高生产效率。本文通过对AutoLISP语言的分析与研究,探讨了基于AutoLISP的AutoCAD参数化绘图程序设计的基本步骤 。本文以齿轮的参数化绘图为例,应用AutoLISP语言编写工程图的参数化绘制程序。应用DCL语言创建人机交流的对话框。并且详细阐述了其实现过程。实践表明,与直接利用 AutoCAD命令相比。采用基于 AutoCAD内嵌的AutoLISP进行参数化绘图的方法,可以大大减少不必要的重复绘图劳动,明显提高了设计效率。此外,参数化绘图不仅仅是针对二维平面图, 对三维立体图也同样适应。关键词:AutoCAD;二次开发;AutoLISP;参数化设计- 21 -ABSTRACTThe product design can not be separated from the CAD software in the modern manufacturering enterprise . One important research aspect of mechanical engineers is how to develop the special software for enterprises from the common CAD software. It can shorten the design periods and heighten the production efficiency using the special software. By analyzing AutoLISP language, the basic steps of the program design of parametric drawing based on AutoLISP in AutoCAD is discussed in this dissertaionThis paper takes the parametric drawing of gear as the example which applies LISP language to compile parametric drawing programs DCL language creates a manmachine exchange dialogue frameMoreover its realizing process is p detailed. The result indicates that the function of AutoLISP language is powerful and easy to study and use. It is an important tool Of re-developments in AutoCADKey words: AutoCAD; Secondary Development; AutoLISP; Parametric Design第1章 引 言1.1 选题背景在世界经济全球化的影响下,市场竞争日趋激烈,市场需求瞬息万变,企业要在竞争中求得生存和发展,就必须提高快速响应市场需求的能力。因此,在原有的CAD(Computer Aided Design)软件的基础上根据企业自身需求进行二次开发的技术成为制造企业迫切需求的关键技术之一。任何通用的CAD软件,甚至面向某一类对象的专用的、商品化的CAD软件,都难以满足形形色色具体产品设计的需要。所以,一个企业欲全面开展CAD,并取得积极效果,应以引入的CAD系统为基础,根据企业的实际情况,进行程度不同的用户化、本地化的二次开发。AutoCAD是目前应用最为广泛的一种通用CAD软件,广泛应用于航空航天、造船、建筑、机械、电子、化工、美工、轻纺等很多领域,并取得了丰硕的成果和巨大的经济效益。AutoCAD使设计人员摆脱传统的纸、笔等绘图工具,降低了绘图工作量,把更多的精力放在产品的优化设计上,但由于其并非定位于某一专业领域,不可能完全满足各个行业使用者的要求,所以其提供了一系列二次开发工具,如AutoLIsP、ObjectARX、Activex等,供用户来开发满足本行业特殊需求的应用程序,使AutoCAD更高效地为用户服务。本次开发采用的是AutoLISP语言。1.2 本课题研究的意义和目的AutoCAD是一种通用CAD软件,故对某一专业领域来说,其并非高效快速的绘图设计软件。企业在不断发展过程中都会积累许多有用的宝贵数据、企业自身的标准以及一些特殊图形等参数资料。如果能把这些参数资料整理出来,然后再把这些参数资料挂靠在AutoCAD软件系统的主菜单上,即编译生成应用程序与AutoCAD软件系统进行无缝连接,这样一来,不但能提高设计人员的设计速度,对市场需求做出快速反应,设计出满足市场需求的产品,及时赢得市场的份额,而且还能够提高企业的生产能力和经济效益,由此可见对AutoCAD进行二次开发是必要的,具有很重要的实际意义。机械和仪器制造业中的互换性很重要,互换性生产可以减少修理机器的时间和费用。公差和配合是实现互换性生产的重要基础,合理地选用公差与配合,不但能更好地促进互换性生产,而且有利于提高产品质量、降低生产成本,所以公差的选择在机械设计中很重要。如果能通过计算机辅助选择正确的公差,那将对提高生产效率和产品质量有很大作用。表面结构也是促进互换性生产的一个重要因素,其选择的智能化也具有很重要的意义。因此,对Aut0CAD机械设计方面的功能进行二次开发具有很重要的意义,作为通用的交换式绘图软件,其在工程实际中存在许多不足,如果能够解决这些缺陷和不足,就可以提高绘图效率、产品的设计质量和效率,这对企业的发展也有着十分重要的意义。第2章 系统介绍2.1 AutoCAD简介CAD诞生于60年代,是美国麻省理工大学提出了交互式图形学的研究计划,由于当时硬件设施的昂贵,只有美国通用汽车公司和美国波音航空公司使用自行开发的交互式绘图系统.70年代,小型计算机费用下降,美国工业界才开始广泛使用交互式绘图系统。80年代,由于PC机的应用,CAD得以迅速发展,出现了专门从事CAD系统开发的公司。当时VersaCAD是专业的CAD制作公司,所开发的CAD软件功能强大,但由于其价格昂贵,故不能普遍应用。而当时的Autodesk公司是一个仅有员工数人的小公司,其开发的CAD系统虽然功能有限,但因其可免费拷贝,故在社会得以广泛应用。同时,由于该系统的开放性。因此,该CAD软件升级迅速. AutoCAD是美国AutoDesk公司推出的一种通用的计算机辅助设计和图形护理软件,具有易于掌握,使用方便,绘图精准和体系结构开放等优点。因此,自1982年问世以来深受广大设计人员的青睐,是CAD族群中使用最普遍的软件之一。如今,AutoCAD已广泛应用于机械,建筑,电子,航天,造船,冶金,纺织,轻工等领域,可见AutoCAD是一个通用的CAD软件。AutoCAD具有良好的用户界面,通过交互菜单或命令行方式便可以进行各种操作。它的多文档设计环境,让非计算机专业人员也能很快地学会使用。在不断实践的过程中更好地掌握它的各种应用和开发技巧,从而不断提高工作效率。AutoCAD具有广泛的适应性,它可以在各种操作系统支持的微型计算机和工作站上运行,并支持分辨率由320200到20481024的各种图形显示设备40多种,以及数字仪和鼠标器30多种,绘图仪和打印机数十种,这就为AutoCAD的普及创造了条件。2.2 AutoCAD的发展概述AutoCAD的发展过程可分为初级阶段、发展阶段、高级发展阶段、完善阶段和进一步完善阶段五个阶段。1. AutoCAD1.0:1982.11正式出版,容量为一张360Kb的软盘,无菜单,命令需要背,其执行方式类似DOS命令。2. AutoCADV1.3:1983.8,具备文字对齐及颜色定义功能,图形输出功能。3. AutoCADV2.0:1984.10,图形绘制及编辑功能增加,4. AutoCADV2.6:1986.11,新增3D功能,5. AutoCADR2.0:1984.11,尽管功能有所增强,但仅一个用于二维绘图的软件。6.AutoCADR3.0:1987.6,增加了三维绘图功能,并第一次增加了Auto Lisp汇编语言,提供了二次开发平台,用户可根据需要进行二次开发,扩充CAD的功能。7. AutoCADR10.0:1988.10,进一步完善R9.0, Autodesk公司已成为千人企业。8. AutoCADR14.0:1997.4,适应Pentium机型及Windows95/NT操作环境,实现与Internet网络连接,操作更方便,运行更快捷,无所不到的工具条,实现中文操作。9. AutoCAD2000(AutoCADR15.0):1999,提供了更开放的二次开发环境,出现了Vlisp独立编程环境.同时,3D绘图及编辑更方便。10.AutoCAD2005:2005.1提供了更为有效的方式来创建和管理包含在最终文档当中的项目信息。11.AUTOCAD2006:2006.3.19,推出最新功能:创建图形;动态图块的操作;选择多种图形的可见性;使用多个不同的插入点;贴齐到图中的图形;编辑图块几何图形;数据输入和对象选择12.AUTOCAD2007:2006,3,23,拥有强大直观的界面,可以轻松而快速的进行外观图形的创作和修改,07版致力于提高3D设计效率.2.3 Auto Lisp语言简介AutoLISP是由Autodesk公司开发的一种LISP程序语言(LISP是List Processor的缩写)。第一篇关于LISP的参考文献是由John McCarthy 在1960年4月的ACM通讯中发表的,并且已经成为人工智能(AI)的首选程序序言。 第一代开发工具AutoLISP1986年随是AutoCAD v2.18提供的二次开发工具。它是一种人工智能语言,是嵌入AutoCAD内部的COMMON LISP的一个子集。在AutoCAD的二次开发工具中,它是唯一的一种解释性语言。使用AutoLISP可以直接调用几乎所有的AutoCAD命令。AutoLISP语言最典型的应用之一是实现参数化绘图设计,包括尺寸驱动程序和鼠标拖动程序等。另一个典型应用就是驱动AutoCAD提供PDB模块构成DCL(Dialog Control Language)文件,创建自己的对话框。AutoLISP语言具有以下特点:(1)语言规则简单,功能比较单一,易学易用。(2)不退出AutoCAD,程序直接可以在AutoCAD的图形编辑状态下进行。(3)输入数据方便,当需要输入一个点时,既可以直接键入点的坐标,也可以用光标给出位置,还可以利用AutoCAD的捕捉功能捕捉已有实体上的特殊点。 (4)便于AutoCAD菜单管理,参数化绘图程序可在AutoCAD的菜单中调用。2.4齿轮基本的介绍及其一般画法齿轮的组成结构一般有轮齿、齿槽、端面、法面、齿顶圆、齿根圆、基圆、分度圆。齿轮可按其外形分为圆柱齿轮、锥齿轮、非圆齿轮、齿条、蜗杆蜗轮 ;按齿线形状分为直齿轮、斜齿轮、人字齿轮、曲线齿轮;按轮齿所在的表面分为外齿轮、内齿轮;按制造方法可分为铸造齿轮、切制齿轮、轧制齿轮、烧结齿轮等。本次设计选择的齿轮为直齿圆柱齿轮。齿轮的画法一般运用渐开线画法活着范成法。本次设计所运用的就是后者范成法画齿轮。2.5范成法原理的介绍 范成法/font亦称展成法,共轭发或包络法。是目前齿轮加工中最常用的一种方法。它根据一对齿轮啮合传动时,两轮的齿廓互为共轭曲线的原理来加工的。其刀具分齿轮型刀具(如齿轮插刀)和齿条型刀具(如齿条插刀和齿轮滚刀等)两大类。(本次设计论文运用的是齿条型刀具)切制加工过程:(a) 范成运动:插刀和轮坯按恒定的传动比i=刀/坯回转;(b) 切削运动:插刀沿轮坯轴线方向作往复切削运动;(c) 进给运动:插刀向轮坯中心作径向运动,以便切出齿轮的高度; (d) 让刀运动:防止刀具向上退刀时擦伤已加工好的面,损坏刀刃,轮坯作微小的径向让刀运动,刀刃再切削时,轮坯回位.。第3章 AUTOCAD二次开发齿轮参数化设计参数化绘图,是用户根据参数对话框的提示,输入相关的参数,就能生成所需的图样。为此就要进行相应的程序设计。对于一般的参数化绘图的程序设计,可以遵循以下步骤:1、分析结构特征,确定绘图参数 ;2、根据绘图参数,设计交流界面(对话框);3 、按照图形需要,编写绘图程序;4、装载相关程序,绘制所需图形。下面以直齿圆柱齿轮的参数化绘图为例,利用范成法画齿轮的原理,用DCL语言创建人机交流的对话框, 用LISP语言编写工程图的参数化绘制程序,并详细阐述其实现过程。3.1 基本参数的确定 程序设计中首先要输入关键的参数,这是编程的前期条件。根据对直齿圆柱齿轮的结构分析,确定了五个参数:模数(m)、齿数(z)、齿轮宽度(H)、齿轮轴径(ZJ)、轮辐厚度(LF)。然后再利用这五个基本的参数计算出其他,如:齿根圆半径rf=(Z-2.5)m/2;基圆半径rj=0.939693mz/2;分度圆半径r=zm/2;齿顶圆半径ra=(z+2)m/2;齿距tt=m等等,利用表的格式赋值函数“setq”把后面的计算式赋值给前面的字母。3.2 根据参数设计对话框对话框的设计要用DCL文件来描述。对话框中的元素,例如按钮和编辑框,都被认为是控件,每个控件的大小和功能都由控件的属性来完成。在创建对话框时,必须建立一个新的应用指定的DCL文件。本次设计的对话框的控件主要由五个编辑框和一个确定按钮组成。直齿圆柱齿轮程序的对话框子程序如下:geardcl:dialog label=请输入齿轮参数 ; :edit_box label=请输入齿轮模数 ; key=m ; edit_width=15; value=4 ; :edit_box label=请输入齿轮齿数 ; key=z; edit_width=15; value=24 ; :edit_box label=请输入齿轮宽度; key=H ; edit_width=15; value=6 ; :edit_box label=请输入齿轮轴径; key=zj ; edit_width=15; value=14 ; :edit_box label=请输入齿轮轮辐厚度; key=LF ;edit_width=15; value=8 ; ok_only; 3.3 编写绘图程序在上面用DCL语言定义好的对话框只是一个界面描述,它不能独立的显示,也不能完成任何用户想要执行的动作,需要用AutoLISP程序来驱动它,才能实现指定的功能。现在将关键程序叙述如下: (setq dcl_ia (load_dialog gear.dcl) (if (not (new_dialog geardcl dcl_ia) (exit) (action_tile m (setq m(atoi(get_tile $key) (action_tile z (setq z(atoi(get_tile $key) (action_tile H (setq h(atoi(get_tile $key) (action_tile zj (setq zj(atoi(get_tile $key) (action_tile LF (setq lf(atoi(get_tile $key) (start_dialog) (unload_dialog dcl_ia)在以上程序中,(setq dcl_ia (load_dialog gear.dcl)语句是将DCL文件加载到内存中,在(if (not (new_dialog geardcl dcl_ia) (exit)中的new_dialog函数是显示对话框,程序有对话框的返回值进行检查和控制。(action_tile m (setq m(atoi(get_tile $key)语句是从对话框中获取值,传入程序中,语句中的get_tile函数检索一个对话框的DCL值,也就是用户在对话框中输入值后,用此函数完成对话框值的调用,传到程序中以便后面程序的运算。对话框成功调用后,用setq定义以下除了五个基本参数之外参数,然后接下来就是绘图的过程,本次设计运用的是范成法,是齿条和圆的面域差集法画出的齿轮。所以要先绘制一个齿条,然后通过循环绘制出一个齿条。首先应该定义的7个点确定一个齿的形状,程序如下:pt0(list 200.0 30.0 0.0) pt1(polar pt0 0 (/ tt 4) pt2(polar pt0 pi (/ tt 4) pt3(polar pt1 (* 110 (/ pi 180) a) pt5(polar pt1 (* -70 (/ pi 180) a) pt4(polar pt2 (* 70 (/ pi 180) a) pt6(polar pt2 (* 250 (/ pi 180) a) pt7(polar pt6 (* -90 (/ pi 180) 2) ) (command layer m 11 c 1 layer m 12 c 2 layer m 13 c 252 layer s 13 pline pt7 pt6 pt4 pt3 pt5 )通过以上程序就可以先画出齿条的一个齿的形状,程序中利用了AutoLISP提供的一个系统内部函数“command”,利用这个函数就可以非常方便的调用几乎全部的AutoCAD命令。用“layer”建立了3个图层,用“pline”实现画多义线,连接了pt7 pt6 pt4 pt3 pt5这几个点形成一个基本齿的形状。再通过用循环语句绘制出一个完整的齿条,程序如下:(setq i 1) (while (= i 7) (setq pt6(polar pt6 0 tt) pt4(polar pt4 0 tt) pt3(polar pt3 0 tt) pt5(polar pt5 0 tt) ) (command pt6 pt4 pt3 pt5) (setq i(+ i 1) ) (setq pt8(polar pt5 (* -90 (/ pi 180) 2) (command pt8 c) (setq pt(polar pt0 (* 180 (/ pi 180) (* 4 tt) (command move l pt0 pt) (setq e0(entlast)程序执行到此会显示出一个完整的齿条,该齿条由原先的一个齿通过循环命令7次,最后可以得到一个齿数为8的齿条。并将该齿条建成一个齿条面,如图3.1所示。图3.1 齿条齿条画完后,为了建立一个圆面,要以齿顶圆半径ra为半径,P0点为圆心画圆,然后通过所画出的圆建立一个圆面,程序如下:(command layer s 11 ) (setq p0(polar pt0 (* 90 (/ pi 180) r) (command circle p0 ra) (command region l ) (setq e10 (entlast)复制齿条面,再通过布尔运算,用原齿条面与圆面相减,得到新的圆面,将新的圆面逆时针转动36/Z(Z为齿数)的角度。然后不断重复上一步骤,直至齿轮完全画出。具体程序如下:(command layer s 12 ) (setq j 1) (while (= j z) (setq i 1) (while ( h lf) (progn (setq gr(getreal输入轮毂端面半径:gr=) (setq yr(getreal输入轮缘端面半径:yr=) (setq s(/ (- h lf) 2) (setq l(- h s) ) ) (setq rf(/ (* (- z 2.5) m) 2) rj(/ (* m z 0.939693) 2) r (/ (* z m) 2) ra(/ (* (+ z 2) m) 2) tt(* m pi) pj(/ 36.0 z) a (/ (* 1.25 m) (cos (* 20 (/ pi 180) pt0(list 200.0 30.0 0.0) pt1(polar pt0 0 (/ tt 4) pt2(polar pt0 pi (/ tt 4) pt3(polar pt1 (* 110 (/ pi 180) a) pt5(polar pt1 (* -70 (/ pi 180) a) pt4(polar pt2 (* 70 (/ pi 180) a) pt6(polar pt2 (* 250 (/ pi 180) a) pt7(polar pt6 (* -90 (/ pi 180) 2) ) (command layer m 11 c 1 layer m 12 c 2 layer m 13 c 252 layer s 13 pline pt7 pt6 pt4 pt3 pt5 ) (setq i 1) (while (= i 7) (setq pt6(polar pt6 0 tt) pt4(polar pt4 0 tt) pt
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南省湘潭市2026-2027学年高二上学期第一次月考语文自编卷(统编版必修一、必修二、选必一1-2单元)(解析版)
- 2026年09月27日 东莞市松山湖考试中心 爱德万测试 芯片测试工程师 24人
- 陕西省安康市2025-2026学年高一上学期期末化学试题(含答案)
- 口腔局部麻醉总结
- 常见皮肤病防治与护理
- 骨科疾病常见护理
- 白癜风健康管理
- 吉林榆树市八号镇中学2026-2027学年度第一学期学情测试考试八年级道德与法治试卷(含答案)
- 2025-2026年人体生理学测试题
- 2025-2026年执业药师资格证考试药学综合知识与技能模拟试卷
- 国企临建和隧道工程现场施工标准化作业图集课件
- 人类的飞天梦课件
- DZ/T 0222-2006地质灾害防治工程监理规范
- 团体标准解读及临床应用-成人经鼻高流量湿化氧疗技术规范2025
- 成都文理就业协议书
- 惠尔顿网络安全审计系统使用手册V0
- 10千伏环网柜(箱)标准化设计方案 (2023 版)
- 《国际资本流动理论》课件
- 《贴片工艺培训》课件
- 介入治疗前后注意事项
- 康熙字典-繁体字笔画五行1-30
评论
0/150
提交评论