圆体成形车刀工作部分设计模块毕业论文(41页).doc
-
资源ID:37037462
资源大小:414.50KB
全文页数:41页
- 资源格式: DOC
下载积分:15金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
圆体成形车刀工作部分设计模块毕业论文(41页).doc
-圆体成形车刀工作部分设计模块毕业论文-第 39 页 目录1. 绪论1.1 论文研究背景及意义11.2 CAD/CAM技术发展综述21.3 论文研究的主要内容52. 开发工具的选择2.1 开发平台的选择62.2 开发工具的选择63. 系统开发3.1系统总体设计113.2计算机辅助设计系统113.3工作部分设计模块123.3.1 参数画图133.3.2校准部193.3.3分屑槽203.3.4 容屑槽203.3.5尺寸标注自动生成模块223.4技术要求自动生成模块243.5.标题栏自动生成模块263.5.1标题栏自动生成原理及实现263.5.2标题栏的创建273.6 校核部分314. 应用实例5. 结论 5.1本文研究的主要结论.39 5.2本文研究展望.39参考文献40致谢41附录.42 毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日1. 绪论1.1 论文研究背景及意义 随着CAD技术的发展,工程师们已经习惯的二维设计正在被三维设计所取代,这一过程可称为设计方法的一场革命。工程师们将不再受从二维工程图开始设计并表现设计思想的束缚,可能在不久的将来由蒙日创立的画法几何将退出历史的舞台,尽管目前许多设计人员,特别是老一代的设计人员还难以放弃,但CAD技术的发展使设计人员不得不这样做。人们也不要惋惜,因为蒙日当时没有比用二维图纸并采用画法几何原理来记录和交流的设计思想更好的手段。那么这个工具将彻底使我们从前些年的二维CAD“甩图版”工程,提升到一个更高的层次,还设计的本来面目,真正体会到CAD带来的巨大进步。 拉削是利用多刀齿的拉刀对工件进行切屑加工。拉刀作为一种复杂、高效刀具,被广泛应用于大量生产和一些其它方法难以加工的特型面的生产中。拉刀性能和质量的优劣,将直接影响工作效率、加工精度和表面质量。但是长期以来拉刀的设计与管理仍然采用手工设计和人工管理,造成了大量的重复性劳动,标准化程度低、设计优化性差、周期长、难管理、易混乱,不能够有效的利用现代科学技术成果。随着计算机技术的发展,将其引入拉刀领域中来解决常规刀具设计所存在的一系列问题具有普遍意义。通过开发拉刀CAD系统,很大程度上提高了拉刀的设计效率,使拉刀设计、制造成本得到有效降低并较好地解决了常规拉刀设计所存在的周期长、标准化程度低、优化性差、难管理较混乱的局面,并为其它刀具系统开发奠定了基础,具有一定的指导意义,对工程实际应用也具有较好的借鉴和作用。1.2 CAD/CAM技术发展综述随着现代工业文明的发展,越来越多的企业对工业产品的外形和内部结构的要求越来越高,产品更新的速度越来越快,传统的手工制图已经不能满足现代企业的要求。计算机辅助设计技术的引进是近代工业史上的一次革命,它显著的提高了制图速度和制图的质量,缩短了新产品设计开发的时间。AutoCAD是计算机辅助设计工具的一种,它是美国Autodesk公司在1982年12月开发出来的AutoCAD软件是计算机辅助设计与绘图相结合的综合软件,从第一版 AutoCAD R1.0起,经历了若干次升级,现已达到AutoCAD2007。在AutoCAD 14版中,Autodesk首次包括了Microsoft的Visual Basic for Applications(VBA).将AutoCAD和Visual Basic的功能结合在一起,可以创建非常好的定制应用程序,从而在使用AutoCAD执行当前任务时,可以在很短的时间内创建出正常情况下需要好几个小时才能完成的图形。经过三十多年的发展,CAD技术得到了迅速普及,已成为电子信息技术的重要组成部分CAD技术使产品的内容和方式发生了根本性变革,这一技术已成为工业发达国家保持竞争优势,开拓市场的主要技术手段1989年,美国国家工程科学院将CAD技术评为人类25年间(19651989)当代十项最杰出工程技术成就之一。CAD技术之所以在短短的三十年发展如此迅速,是因为它几乎推动了一切领域的设计革命,彻底的改变了传统的手工绘图的方式,极大的提高了产品开发的速度,提高了设计精度这一新技术的应用将使人类的聪明才智和创造能力与计算机高速而精确的计算能力、大容量的储存和数据处理功能结合起来,是两者相得益彰。CAD技术的发展与应用水平成为衡量的科学技术现代化和工业现代化的重要标志之一。近几年来,随着计算机技术的飞速发展,CAD技术已由发达国家向发展中国家扩展,而且发展的势头非常迅猛我国政府部门十分重视这一技术,已经和科技界、工业界一起把CAD技术的应用推广当作一件大事来抓,如果国家科工委实施了CIMS工程和CAD应用工程,组建了全国性的CAD培训网络;机械工业部把1997年定位“AD推广年”将CAD推广工作作为重中之重项目,目前正在组织实施“AD应用1550工程”。很多大中型甚至小型企业都在努力引进这一新技术,以提高企业自身的技术素质,增强产品在国内外市场上的竞争能力另外,CAD教学也得到了个高校的普遍重视要想全面推广普及CAD技术,提高我国的整体技术水平为了拓宽AutoCAD的运用领域,从1993年夏季起,Autodesk公司已设计自动化为主题,相继推出了极具应用价值的软件群体,包括3D MAX、 AutoCAD、 Designer Auto surf AutoCAD、 Data Extension Auto、 Vision Animator Studio AutoCAD 、MAP Mechanical Desktop(MDT).这些将在AutoCAD中得到很好的发挥,AutoCAD也将会越来越强大。 为了适应21世纪的制造模式,CAD/CAM集成系统关键技术主要有: 1集成化技术 在过去制造系统中仅强调信息的集成,这是不够的,现在更强调技术、人和管理的集成。在开发制造系统时强调多集成的概念,即信息集成,智能集成,串并行工作机制集成,资源集成,过程集成,技术集成及人员集成,这更适合未来制造系统的需求。 2智能化技术 应用人工智能技术实现产品生命周期(包括产品设计、制造、发货、支持用户到产品报废)各个环节的智能化,支持生产过程(包括组织、管理、计划、调度、控制等)各个环节的智能化,也要实现人与制造系统的融合及人在其中的智能的充分发挥。 3网络技术 网络技术包括硬件与软件的实现,各种通信协议及制造自动化协议,信息通信接口,系统操作控制策略等,是实现各种制造系统自动化的基础,特别是在当前情况下要实现基于Internet的Tele-Design和Tele-Manufacturing(异地设计与异地制造)技术基础。 4分布式井行处理智能协同求解技术 该技术实现制造系统中各种问题的协同求解,获得系统的全局最优解,实现系统的最优决策。 5多学科多功能综合产品设计技术 机电产品的开发设计不仅用到机械科学的理论与知识(力学、材料、工艺等),而且还用到电磁学、光学、控制理论等,不仅要考虑技术因素,还要考虑经济、心理、环境、卫生及社会等方面因素。机电产品的开发要进行多目标全性能的优化设计,以追求机电产品动静热特性、效率、精度、使用寿命、可靠性、制造成本与制造周期的最佳组合,研究重点是:并行工程及CAD/CAPP/CAM/CAE一体化设计技术。面向制造/装配/市场销售的并行设计和“鲁棒性”设计技术,产品效益及风险的并行评估技术等。 6综合可视化技术 是利用虚拟现实技术、多媒体技术及计算机仿真技术实现产品设计制造过程中的几何仿真、物理仿真、制造过程仿真及使用过程仿真。采用多种介质来存储、表达、处理多种信息,融文字、语音、图像、动画于一体,给人一种真实感及身临其境感。 7人机环境系统技术 将人、机器和环境作为一个系统来研究,发挥系统的最佳效益。研究的重点是:人机环境的体系统结构及集成技术。人在系统中的作用及发挥,人机柔性交互式技术、人机智能接口技术,清洁制造等。 这些主要关键技术随着21世纪先进制造技术的发展及新的生产模式的出现,会不断地对CAD/CAM集成系统提出新的要求,其关键技术内容会产生某些变化,但集成化、智能化、网络化及可视化仍然为CAD/CAM系统的发展的主要方向。 8海量信息的存储,管理和检索技术 随着CAD技术应用的深入,所涉及的各种信息越来越多,如何快速,有效地对海量信息进行存储、管理和检索,成为人们关注的焦点,传统的关系型数据库已难以适应日益增长的数据管理的要求。 9计算机安全技术 计算机己渗透到产品开发的各个环节,人们对计算机的依赖性也越来越大,可以说,计算机内设计结果和数据已成为企业的宝贵财富,一旦企业的计算机系统遭遇到破坏,就可能导致企业或行业的瘫痪甚至会影响到整个社会,随着市场竞争的激烈和知识产权意识的增强,使产品的设计信息具有保密性,因此,如何保证计算机以及其中产品数据的安全,是CAD技术应用中日益被人们所关注的重要问题。1.3 论文研究的主要内容 通过对拉刀传统设计和制造技术分析,在对基于特征的参数化技术和交互式绘图技术的综合运用的基础上,采用面向对象的模块化编程技术对AUTOCAD进行二次开发实现拉刀辅助设计设计。并利用VBA软件对设计进行代码的编制,最终系统以宏的形式集成于AUTOCAD环境之下,在AUTOCAD平台下即可实现系统的设计、生成二维工程图,实现系统开发的自动化和交互化。 为了实现这个目标,本文围绕建立圆孔拉刀设计平台展开深入地研究,主要研究内容如下: 1分析拉刀工作部分的设计过程,选取相关数据并建立设计流程,实现拉刀工作部形分的结构尺寸设计计算自动化。 2根据拉刀工作部分的结构尺寸,在AUTOCAD的环境下生成拉刀的设计图形,以直观地反映设计结果,为评价和分析设计提供支持。 3研究利用VBA开发工具,实现由拉刀自动生成符合机械制图要求的二维工程技术图样的功能。2. 开发工具的选择 2.1 开发平台的选择 CAD系统软件包括CAD设计软件、CAE分析软件、CAM数控加工软件、CAPP工艺软件、PDM/PLM协同管理软件等。 目前,在我国市场上销售的各类CAD软件中,最有代表性的CAD系统是美国Autodesk公司开发的具有三维功能的通用二维CAD绘图软件AutoCAD,是当前最普及的二维CAD平台软件之一。此外,还有CATIA、UG(全称Unigraphics)、Pro/E(全称Pro/ENGINEER)、Solid Works、ANSYS、ADAMS等大型集成化的国外CAD软件以及具有自主知识产权的国产知名品牌软件CAXA。 同时,CAD又分为工作站式和微机式。工作站式的功能强大,更专业,但价格昂贵。微机式功能上稍显劣势,但现在高端配置的微机性能已远远超过原来的工作站,并已接近现在的低档工作站性能,微机已有很好的运算和图形处理能力,能胜任二维绘图工作和一般的三维CAD和CAE/CAPP/CAM工作,价格的低廉更是非常的适合个人实际使用。 所以在本次设计中,使用的设计平台选为微机式AutoCAD 平台。2.2 开发工具的选择 AutoCAD的二次开发主要涉及以下内容:(1)编写各种用户自定义函数并形成若干LISP、ARX、VLX或ADS文件,以及一些DCL文件。(2)建立符合自己要求的菜单文件,一般可在AutoCAD原菜单文件内添加自己的内容,对于AutoCAD2000版本还可增加部分菜单文件,然后经交互方式加入到系统中去。(3)在系统的AutoCAD.LSP或类似文件中加入某些内容以便进行各种初始化操作,如在启动时立即装入一些文件等。(4)通过系统对话框设置某些路径。这些操作在程序开发成功后向其它AutoCAD系统上安装应用,特别是需要大批安装时,需要进行很多文件检索、内容增删、子目录创建、文件拷贝、系统设置等繁琐工作,如能令上述工作全部自动进行,使整个二次开发程序在无人干预的情况下嵌入系统,将大大提高工作效率。 AutoCAD荣登全球绘图软件的龙头宝座,主要是因为它具有开放的体系结构。它允许用户和开发者采用高级编程语言对其进行扩充和修改,即二次开发,能最大限度地满足用户的特殊要求。AutoCAD第一版于1982年11月由AutoDESK公司推出,目前大家广泛使用的是AutoCAD 2000或2002,最新版本是AutoCAD 2004,其二次开发语言及工具也在不断地涌现 1 .AutoLISP AutoLISP的全名是LIST Processing Language,她出现于1985年推出的AutoCAD R2.18中,是一种嵌入在AutoCAD内部的编程语言,是LISP原版的一个子集,它一直是低版本AutoCAD的首选编程语言。它是一种表处理语言,是被解释执行的,任何一个语句键入后就能马上执行,它对于交互式的程序开发非常方便。其缺点是继承了LISP语言的编程规则而导致繁多的括号。 2 .ADS ADS的全名是AutoCAD Development System,它是AutoCAD的C语言开发系统,ADS本质上是一组可以用C语言编写AutoCAD应用程序的头文件和目标库,它直接利用用户熟悉的各种流行的C语言编译器,将应用程序编译成可执行的文件在AutoCAD环境下运行,这种可以在AutoCAD环境中直接运行的可执行文件叫做ADS应用程序。ADS由于其速度快,又采用结构化的编程体系,因而很适合于高强度的数据处理,如二次开发的机械设计CAD、工程分析CAD、建筑结构CAD、土木工程CAD、化学工程CAD、电气工程CAD等。 3 .ObjectARX ObjectARX是一种崭新的开发AutoCAD应用程序的工具,她以C+为编程语言,采用先进的面向对象的编程原理,提供可与AutoCAD直接交互的开发环境,能使用户方便快捷地开发出高效简洁的Auto CAD应用程序。ObjectARX并没有包含在AutoCAD中,可在AutoDESK公司网站中去下载,其最新版本是ObjectARX for AutoCAD 2000,它能够对AutoCAD的所有事务进行完整的、先进的、面向对象的设计与开发,并且开发的应用程序速度更快、集成度更高、稳定性更强。ObjectARX从本质上讲,是一种特定的C+编程环境,它包括一组动态链接库(DLL),这些库与AutoCAD在同一地址空间运行并能直接利用AutoCAD核心数据结构和代码,库中包含一组通用工具,使得二次开发者可以充分利用AutoCAD的开放结构,直接访问AutoCAD数据库结构、图形系统以及CAD几何造型核心,以便能在运行期间实时扩展AutoCAD的功能,创建能全面享受AutoCAD固有命令的新命令。ObjectARX的核心是两组关键的API,即AcDb(Auto CAD数据库)和AcEd(Auto CAD编译器),另外还有其它的一些重要库组件,如AcRX(Auto CAD实时扩展)、AcGi(Auto CAD图形接口)、AcGe(Auto CAD几何库)、ADSRX(Auto CAD开发系统实时扩展)。ObjectARX 还可以按需要加载应用程序;使用ObjectARX进行应用开发还可以在同一水平上与Windows系统集成,并与其它Windows应用程序实现交互操作。 4 .VisualLISP VisualLISP已经被完整地集成到AutoCAD 2000中,她为开发者提供了崭新的、增强的集成开发环境,一改过去在AutoCAD中内嵌AtuoLISP运行引擎的机制,这样开发者可以直接使用AutoCAD中的对象和反应器,进行更底层的开发。其特点为自身是AutoCAD 2000中默认的代码编辑工具;用它开发AutoLISP程序的时间被大大地缩短,原始代码能被保密,以防盗版和被更改;能帮助大家使用ActiveX对象及其事件;使用了流行的有色代码编辑器和完善的调试工具,使大家很容易创建和分析LISP程序的运行情况。在VisualLISP中新增了一些函数:如基于AutoLISP的ActiveX/COM自动化操作接口;用于执行基于Auto CAD内部事件的LISP程序的对象反应器;新增了能够对操作系统文件进行操作的函数。 5 .VBA VBA 即Mcrosoft office中的Visual Basic for Applications,它被集成到AutoCAD 2000中。VBA为开发者提供了一种新的选择,也为用户访问AutoCAD 2000中丰富的技术框架打开一条新的通道。VBA和AutoCAD 2000中强大的ActiveX自动化对象模型的结合,代表了一种新型的定制AutoCAD的模式构架。通过VBA,我们可以操作AutoCAD,控制ActiveX和其它一些应用程序,使之相互之间发生互易活动。 VBA是非常流行的应用程序开发语言VASUAL BASIC 的子集,VBA简单易学,但功能强大。利用AUTOCAD为设计平台,利用VBA对AUTOCAD进行二次开发。通过VBA的强大编程功能讲设计做成设计模块,并利用AUTOCAD的强大图形输出功能将拉刀设计图输出。 下面对各种开发工具的优缺点进行分析、比较:1 AutoLISP具有以下优点:(1)语言规则十分简单,易学易用;(2)直接针对AutoCAD,易于交互;(3)解释执行,立竿见影。 AutoLISP的缺点是:(1)功能单一,综合处理能力差;(2)解释执行,程序运行速度慢;(3)缺乏很好的保护机制,源程序保密性差;(4)LISP用表来描述一切,并不能很好地反映现实世界和过程,跟人的思维方式也不一致;(5)不能直接访问硬件设备、进行二进制文件的读写。 AutoLISP的这些特点,使其仅适合于有能力的终端用户完成一些自己的开发任务。2 ADS优越之处在于:(1)具备错综复杂的大规模处理能力;(2)编译成机器代码后执行速度快;(3)编译时可以检查出程序设计语言的逻辑错误;(4)程序源代码的可读性好于AutoLISP。 而其不便之处在于:(1)C语言比LISP语言难于掌握和熟练应用;(2)ADS程序的隐藏错误往往导致AutoCAD,乃至操作系统的崩溃;(3)需要编译才能运行,不易见到代码的效果;(4)同样功能ADS程序源代码比AutoLISP代码长很多。3 ARX 程序本质上Windows动态连接库(DLL)程序,与AutoCAD共享地址空间,直接调用AutoCAD的核心函数,可直接访问AutoCAD数据库的核心数据结构和代码,以便能够在运行期间扩展AutoCAD固有的类及其功能,创建能够全面享受AutoCAD固有命令特权的新命令。ARX程序与AutoCAD、Windows之间均采用Windows消息传递机制直接通讯。ARX的“暴露性”参数显示了用户编程错误的可能严重性。尽管ARX在速度、暴露性、功能和要求使用上最强有力的,它也具有产生严重编程错误的潜在性,如破坏AutoCAD数据结构等。4 VLISP是AutoLISP的换代产品。它与AutoLISP完全兼容,并提供它所有的功能,是新一代的AutoCAD LISP语言。VLISP对语言进行了扩展,可以通过Microsoft ActiveX Automation接口与对象交互。同时,通过实现反应器函数,还扩展AutoLISP响应事件的能力。作为开发工具,VLISP提供了一个完整的集成开发环境(IDE),包括编译器、调试器和其他工具,可以提高二次开发的效率 。另外,VLISP还提供了工具用于发布独立的应用程序。但它在速度、暴露性、功能和要求使用上比较弱,同时也存在编程错误的潜在性。5 VBA是基于ActiveX Automation技术。ActiveX Automation是一套微软标准,以前称为OLE Automation技术。该标准允许通过外显的对象由一个Windows应用程序控制另一个Windows应用程序,这也是面向对象编程技术的精髓所在。AutoCAD从R14开始增加了作为ActiveX Automation服务器应用程序的功能,使得许多面向对象编译语言和应用程序可以通过ActiveX与AutoCAD进行通信,并操纵AutoCAD的许多功能。所以VBA完全面向对象化编程的特点,使其开发环境具备了强大的开发能力和简单易用的优良特点,开发工具的选择也具有很大的灵活性。 经过上述个种工具的优缺点对比,选定VBA为本次二次开发设计的开发工具。VBA语言于VB语言较为相似,学习简单、容易掌握,同时可以很好的利用它的面向对象化编程特征,可以较好的完成本次设计。3. 系统开发3.1系统总体设计 本系统的总体功能目标是实现圆孔拉刀的参数化计算机辅助设计。为实现这一目标,基于特征的参数化技术和交互式绘图技术的综合运用,采用面向对象的模块化编程技术对VB进行二次开发,实现圆孔拉刀的二维参数化CAD系统,并对拉刀进行强度分析和计算,最终要完成系统的集成,建立实用的拉刀设计平台,为拉刀的设计生产提供支持。 该系统由拉刀工作部分设计模块、校核模块两个基本模块组成。各模块的功能相对独立。拉刀结构图如下图3.1: 图3.1拉刀结构图3.2计算机辅助设计系统 拉削是利用多刀齿的拉刀对工件进行切削加工。拉刀作为一种复杂、高效刀具,被广泛应用于大批量生产和一些其它方法难以加工的特型面的生产中。拉刀性能和质量的优劣,将直接影响加工效率、加工精度和表面质量。但其设计、制造难度较大,成本较高。且长期以来拉刀的设计和管理仍然采用手工设计和人工管理,造成了大量的重复性劳动,标准化程度低、设计优化性差、周期长、难管理、易混乱、不能有效地利用现在科学技术成果。为此,使用计算机辅助设计可以大大的提高它的设计效率,并能输出好的设计方案。随着计算机的发展和普及,使用计算机来进行辅助设计可以更好的促进刀具设计和机械设计的发展。针对拉刀的设计,本人设计一个拉刀设计系统。现把该系统的几个基本模块和几个关键技术作一个简介。 下图3.2为计算机辅助设计系统的组成,圆孔拉刀计算机辅助设计系统非工作部分设计模块 数据管理模块 图形输出模块 校 核 模 块工作部分设计模块 图3.2计算机辅助设计系统 设计的题目为工作部分的设计模块和校核模块,所以本设计中只涉及到这二个模块,其它的模块通过软件连接,组成一个完整的计算机绘图系统。3.3工作部分设计模块 拉刀的工作部分是拉刀的重要部分,工作部分设计模块分有以下输入框。数据输入框是用户输入数据的各种文本框,用户可以将已知的拉刀相关数据输入对应的栏目。数据输出框是将计算机计算的相关数据输入到对应的栏目。它通过代码将数据输入框中用户输入的拉刀各项相关数据带入相应的公式,得出其它的设计所需的相关数据,并将得出的数据通过数据输出框直接面对用户。使用时,将已知的拉刀相关数据输入对应的栏目,再点击确定按扭即可。 在参数化绘图模块中,其流程图如下图3.3: 开始 输入参数输入图幅标题等 填写技术要求 绘制图形输入的数据是否合理转错误处理是否 尺寸自动标注 结束图3.3拉刀设计流程图工作部分包括下列两部分 (1)切屑部 有若干刀齿,分粗切齿、过渡齿和精切齿,刀齿直径逐齿依次增大,它们起切屑作用,切去全部加工余量。 (2)校准部 有几个校准齿其直径都相同,基本上等于拉屑后的孔径,它们起校准与修光作用,并作为精切齿的后备齿。 拉刀总长度是拉刀所有组成部分长度的总和,一般拉刀总长度为 L=(3040)do 式中 do 拉刀直径。 确定拉刀总长度时应考虑拉床工作范围及拉刀制造的可能性,若设计的拉刀太长,可设成两把以上的成套拉刀。 圆孔拉刀两端做有带保护锥的中心孔,作为制造与重磨时的基准。3.3.1 参数画图 以下是是设计拉刀过程的图框。界面设计简单、明朗、雅观。让人看了一目了然。工作部分设计模块大量使用VBA中的控件。其中各页面大量使用拉TEXT和LABEL控件,通过LABERL控件来对数据说明,利用TEXT控件来进行数据的输入、输出,直观、简便。同时对控件的安放、大小进行拉精心的设计,使的界面也非常美观大方。数据计算按钮则采用拉COMMAND控件,编入适当代码使得计算准确,设计符合要求。用户只需按照提示输入相应的参数就即可。(1)以下为参数计算的一些程序代码。Dim l As SingleDim ac As SingleDim k As SingleDim dmax As SingleDim dmin As SingleDim As SingleDim u As SingleDim radius As SinglePrivate Sub CommandButton1_Click()pi = 3.1415926TextBox2.text = Val(TextBox1.text) / 100 * Sqr(l)Ze = l / Val(TextBox2.text) + 1TextBox4.text = Fix(Ze)TextBox5.text = Val(TextBox2.text)If P > 10 Then TextBox6.text = Val(TextBox2.text) * (TextBox7.text) / 10If P <= 10 Then TextBox6.text = Val(TextBox2.text)TextBox8.text = 1.13 * Sqr(k * ac * l)TextBox9.text = Val(TextBox8.text) 2 * pi / 4TextBox12.text = ac * l = dmax - dminTextBox19.text = TextBox22.text = - (g + j) / 2 * af + 1TextBox25.text = Val(TextBox22.text + TextBox23.text + TextBox24.text)If OptionButton1.Value = ture Then TextBox28.text = dmax - uIf OptionButton2.Value = ture Then TextBox28.text = dmax + uEnd Sub (2)在AutoCAD中,打开【VBA管理器】对话框,新建一个工程,保存在适当的位子上,进入VBA集成开发环境。选择【插入/用户窗体】菜单项,向程序中添加一个用户窗体,在窗体中放置控件。如图3.4所示。图3.4拉刀设计界面 (3)选择【插入/模块】菜单项,向程序中添加一个标准模块,在【属性】窗口中将其名称修改为calculate。 创建点的基本函数。这里要创建的函数包括根据相对直角坐标和极坐标计算点位置的函数,以及计算两点之间中点的函数。 Getpoint函数根据一点以及未知点的直角坐标,计算未知点的直角坐标,其实现代码为:Public Function getpoint(gpt As Variant, gx As Double, gy As Double) As Variant Dim pttarget(0 To 2) As Double pttarget(0) = gpt(0) + gx pttarget(1) = gpt(1) + gy pttarget(2) = 0 getpoint = pttargetEnd Function其中:gpt为已知一点,gx,gy分别为未知点相对已知点在X,Y方向的移动距离。函数的返回值为variant,在本系统中所有的程序中,均使用variant类型的变量在函数之间交换点的坐标数据。Getpointar函数根据一点以及未知点相对于已知点的极坐标,计算未知点的直角坐标,其实现代码为:Public Function getpointar(ByVal ptbase As Variant, ByVal angle As Double, ByVal length As Double) As Variant Dim pt(0 To 2) As Double pt(0) = ptbase(0) + length * Cos(angle) pt(1) = ptbase(1) + length * Sin(angle) pt(2) = 0 getpointar = ptEnd Function 其中:ptbase为已知的基点,length,angle为未知点相对于已知点的极坐标,length * Cos(angle)即为未知点相对于已知点在X方向移动的距离,length * Sin(angle)为未知点相对于已知点在Y方向移动的距离。Call ThisDrawing.ModelSpace.AddArc(ptcen, Rw, stang, enang)该函数为系统提供的addarc方法,已知圆心,半径,起点和终点,需要计算出起始角度和终止角度,调用基准函数,来创建圆弧。 pt(0) = -(Cos(af) * Rw - b) + 70 pt(1) = -(H + Tan(rf) * b) + 150 pt(2) = 0 pt为两直线的交点 addline ptst, pt addline pt, pten 调用了已知起点和终点画直线的基准函数addline。 Addline基准函数的创建为,在窗体模块中,选择【插入/过程】菜单项,系统会弹出如图3.5所示的【添加过程】对话框,选择【类型】为【函数】,【范围】为【公用的】,在【名称】文本框中输入Addline,单击【确定】按钮,就在窗体模块的通用段中添加了Addline函数。图3.5 添加过程对话框在该辅助设计系统中,基准函数就是与系统提供的方法参数一致的函数,其他的函数均调用基准函数创建对象,创建Addline基准函数代码为: Public Function addline(ByVal ptst As Variant, ByVal pten As Variant) As AcadLine '画直线 Set addline = ThisDrawing.ModelSpace.addline(ptst, pten)End Function Call ThisDrawing.ModelSpace.AddCircle(ptcen, rn)调用系统的AddCircle方法,已知圆心和半径来创建圆。(3)本程序所有的关键代码均在窗体的【OK】按钮单击事件中完成,下面是圆体成形车刀工作部分的一些程序代码。对程序中所需的变量及数组进行定义Dim rr1(0 To 2) As DoubleDim rr2(0 To 2) As DoubleDim rr3(0 To 2) As DoubleDim rr4(0 To 2) As DoubleDim rr5(0 To 2) As DoubleDim rr6(0 To 2) As DoubleDim rr7(0 To 2) As DoubleDim rr8(0 To 2) As DoubleDim rr9(0 To 2) As DoubleDim rr10(0 To 2) As DoubleDim rr11(0 To 2) As DoubleDim rr12(0 To 2) As DoubleDim rr13(0 To 2) As DoubleDim rr14(0 To 2) As DoubleDim rr15(0 To 2) As DoubleDim rr16(0 To 2) As DoubleDim rr17(0 To 2) As DoubleDim rr18(0 To 2) As DoubleDim rr19(0