AUTOCAD二次开发轴承图素库的设计.docx
- 文档编号:24511377
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:14
- 大小:142.55KB
AUTOCAD二次开发轴承图素库的设计.docx
《AUTOCAD二次开发轴承图素库的设计.docx》由会员分享,可在线阅读,更多相关《AUTOCAD二次开发轴承图素库的设计.docx(14页珍藏版)》请在冰豆网上搜索。
AUTOCAD二次开发轴承图素库的设计
轴承图素库的设计
目录
摘要…………………………………………………………………………1
一.引言……………………………………………………………………5
二.AutoCAD二次开发语言及工具介绍…………………………………5
三.基于三维图素的零件详细设计…………………………………………7
1.轴承图素库的功能及特点…………………………………………7
2.轴承图素库的制作方法……………………………………………8
3.轴承实体的生成………………………………………………………9
四.轴图素库应用实例……………………………………………………10
五.本课题的特色和创新之处………………………………………12
六.结论……………………………………………………………………13
七.今后工作展望…………………………………………………………13
致谢…………………………………………………………………………15
参考文献……………………………………………………………………16
翻译…………………………………………………………………………17
开题报告……………………………………………………………………2
一.课题的来源………………………………………………………………2
二.本课题研究的意义……………………………………………………2
三.工作量及工作进度安排………………………………………………3
开题报告
一.课题的来源
设计是一项复杂的创造性工作,也正由于它的复杂性,迄今为止,人们对设计规律尚无成熟的认识,还没有形成严格的理论体系。
由于计算机技术、信息技术的发展,基于计算机的设计理论与方法学,显得异常活跃,例如并行设计、协同设计、虚拟设计、大规模定制设计(MassCustomizationDesign)、分形设计(FractalDesign)等[7]。
AutoCAD可以绘制任意二维和三维图形,并且同传统的手工绘图相比,用AutoCAD绘图速度更快、精度更高、而且便于个性,它已经在航空航天、造船、建筑、机械、电子、化工、美工、轻纺等很多领域得到了广泛应用,并取得了丰硕的成果和巨大的经济效益。
AutoCAD荣登全球绘图软件的龙头宝座,主要是因为它具有开放的体系结构。
它允许用户和开发者采用高级编程语言对其进行扩充和修改,即二次开发,能最大限度地满足用户的特殊要求。
目前大家广泛使用的是AutoCADR14,最新版本是AutoCAD2004,其二次开发语言及工具也在不断地涌现。
制作图素库实际上是构造程序库,即编制每一种图素的参数化绘图程序库。
从库的结构上看,各个图素的参数化绘图程序是平行的。
每个图素都由以下模块组成:
图素调用模块,特征尺寸输入模块和交互绘图模块。
利用给程序制作的图素库包含有画轴用的各种图素。
用户只需在对话框中点选各种轴图素并交互式的输入参数,便可以进行轴的绘制,整个拼绘过程是自动的。
对于用户要画的下一段轴,系统会根据上一轴段自动的定位,并自动对中和参照上一轴段的尺寸给出缺省尺寸。
绘一根普通的轴,一般只需几分钟便可完成。
二.本课题研究的意义
随着AutoCAD的发展,由于其具有开放的体系结构,它允许用户和开发者采用高级编程语言对其进行扩充和修改,其一次开发已日见完善的同时,AutoCAD的二次开发已越来越成为软件开发人员研究的重点。
随着AutoCAD二次开发语言及工具不断地涌现,使得用户的特殊要求能最大限度地得到满足。
根据机械零件的结构特征建立参数化的图素库,是提高交互绘图效率的重要手段之一。
机械CAD过程中有许多具有相同结构特征的绘图元素。
如一根轴,不管其结构再复杂,也不过由常用的十几个基本元素(轴段)所组成。
如果每设计一根轴都要一条线一条线的去画,不仅效率低而且精度也很难保证。
轴图素库就是在这样一种背景下应运而生的。
轴图素库是将具有相同结构特征的绘图元素,组合的一起形成绘图元素的集合,以后在绘制类似这种结构特征的零件时变可从图素库中调用某一图素,输入图素的特征尺寸,在屏幕上边自动绘出此图素的图形。
三.工作量及工作进度安排
1.工作量包括绘图和软件的开发两部分;
2.工作进度安排如下表所示:
起止日期
课题阶段工作进程
1-----2周
3----6周
7-----16周
17周
18周
收集资料、翻译外文资料;
熟悉AutoCAD2000、VisualC++、ObjectARX2000等;
绘制一定工作量的图纸,编制程序;
撰写论文;
论文答辩。
本设计来自:
完美毕业设计网
在毕业设计网注册后联系客服均可获赠您要求的毕业设计资料
客服QQ:
8191040
摘要
中文摘要:
在机械产品的装配图中,含有大量的标准件,如螺栓,螺母,轴承等。
由于这些部件的数量很大,结构形式多,不仅绘图非常烦琐,而且还要反复查手册找数据。
因此,机械CAD很需要一种直观方便、快速准确的绘制标准件的方法,使用户能很灵活地拼和所需要的图形。
机械CAD过程中有许多具有相同结构特征的绘图元素,轴承库是将具相同结构特征的绘图元素,组合到一起形成绘图元素的集合,以后在绘制类似这种结构特征的零件时,便可以从轴承库中输入特征尺寸,在屏幕上便自动绘出此图形。
根据机械零件的结构特征建立参数化的轴承库,是提高交互绘图效率的重要手段之一。
关键词:
装配图;标准件;轴承库;
英文摘要(Abstract):
Intheinstallationdiagramoftheengineeringgoods,itcontainsalargeamountofstandardcomponentssuchasthebolt,thenut,thebearing,etc.Becausethequantityofthesepartissoheavyandthestructureformissomanythatthedrawingisnotmerelytedious,anditwillcheckthemanualrepeatedlytolookforthedata.So,mechanicalCADneedsthemethodofakindofocularandconvenientwhichisfastandaccuratetodrawthestandardcomponent.Itcanenabletheusertopiecetogetherthefiguresneededveryflexibly.TherearealotofelementsofdrawingwiththesamestructurecharacteristicinmechanicalCADcourse.Thebearingstorehouseisadrawingelementthathavethesamestructurecharacteristictomakeuptothesetofformingthedrawingelementtogether.Wheninputtingthesizeofcharacteristicinthebearingstorehousewhiledrawingthepartofthiskindofstructurecharacteristicsimilarlyafterwards,itcandrawthisfigureautomaticallyonthescreen.Settingupbearingstorehouseofparameteraccordingtostructurecharacteristicofmachinecomponentsisoneoftheimportantmeanstoimprovemutualdrawingefficiency.
Keywords:
installationdiagram;standardcomponents;bearingstorehouse.
一.引言:
机械产品的设计总体上可以分为概念设计和详细设计两个阶段。
产品的概念设计是产品设计中的重要阶段,它对产品的成本、性能、可靠性、安全性等诸多因素起着决定性的作用。
由于设计阶段决定了产品成本的70%以上,其中尤以概念设计的影响最大;又由于上游设计的失误将以1:
10比例向下游逐级放大,因此在设计早期就应考虑产品整个生命周期内的各种因素,如制造、装配、测试、成本等等。
产品概念设计所做的错误决策,在产品的详细设计中无论如何也难以弥补其缺陷。
同时产品的概念设计是极富创造性的设计阶段,在该阶段孕育了产品的新原理和新的结构,是产品设计的创新阶段,它对产品的全生命期起着决定性的作用。
然而,概念设计也是一个十分复杂的问题,它涉及到设计者的知识水平、经验、灵感、情绪、想象力等等。
正因为如此,产品的概念设计得到了国内外学者的广泛重视,取得了许多研究成果。
近年来,CAD技术的应用相当广泛,但计算机在辅助概念设计方面进展甚微,其主要原因是人们对设计思维活动的规律和原理方案设计的合理进程了解不深。
由于概念设计的复杂性、设计信息的残缺性,以及人们对概念设计的本质认识还不完全,在产品生命设计的早期阶段,设计者对产品的需求和约束的了解程度往往是不精确的、大约和模糊的。
计算机辅助机械产品概念设计尝处于研究阶段,还没有成熟的工具软件可供设计师使用。
本文在文献的基础上,从概念设计过程的实际情况出发,把概念设计划分为三个阶段,相应地提出了基于动态规划评价的结构模块求解和基于设计目录的运动方案设计以及基于预定义构件和约束转化的装配建模。
把概念设计分为三个阶段,符合人类设计的思维规律,可以简化概念设计的复杂程度。
二.AutoCAD二次开发语言及工具介绍
AutoCAD荣登全球绘图软件的龙头宝座,主要是因为它具有开放的体系结构。
它允许用户和开发者采用高级编程语言对其进行扩充和修改,即二次开发,能最大限度地满足用户的特殊要求。
目前大家广泛使用的是AutoCADR14,最新版本是AutoCAD2004,其二次开发语言及工具也在不断地涌现。
本文做一些简单的介绍。
1.AutoLISP
AutoLISP的全名是LISTProcessingLanguage,她出现于1985年推出的AutoCADR2.18中,是一种嵌入在AutoCAD内部的编程语言,是LISP原版的一个子集,她一直是低版本AutoCAD的首选编程语言。
它是一种表处理语言,是被解释执行的,任何一个语句键入后就能马上执行,它对于交互式的程序开发非常方便。
其缺点是继承了LISP语言的编程规则而导致繁多的括号。
2.ADS
ADS的全名是AutoCADDevelopmentSystem,即AutoCAD开发系统,它是AutoCAD的C语言开发系统,ADS本质上是一组可以用C语言编写AutoCAD应用程序的头文件和目标库,它直接利用用户熟悉的各种流行的C语言编译器,将应用程序编译成可执行的文件在AutoCAD环境下运行,这种可以在AutoCAD环境中直接运行的可执行文件叫做ADS应用程序。
ADS除可以使用普遍C语言的函数外,又附加了一组专用于对AutoCAD进行操作的函数。
ADS具有C的一切优点,因而它是一个开发AutoCAD的应用程序的最主要的工具。
用C写就的ADS程序,可在所有支持AutoCAD的平台(如DOS、WINDOS、UNIX等)上运行。
大多数ADS程序在源代码级是可移植的。
ADS由于其速度快,又采用结构化的编程体系,因而很适合于高强度的数据处理,如二次开发的机械设计CAD、工程分析CAD、建筑结构CAD、土木工程CAD、化学工程CAD、电气工程CAD等。
3.ObjectARX
ObjectARX是一种崭新的开发AutoCAD应用程序的工具,她以C++为编程语言,采用先进的面向对象的编程原理,提供可与AutoCAD直接交互的开发环境,能使用户方便快捷地开发出高效简洁的AutoCAD应用程序。
ObjectARX并没有包含在AutoCAD中,可在AutoDESK公司网站中去下载,其最新版本是ObjectARXforAutoCAD2000,它能够对AutoCAD的所有事务进行完整的、先进的、面向对象的设计与开发,并且开发的应用程序速度更快、集成度更高、稳定性更强。
ObjectARX从本质上讲,是一种特定的C++编程环境,她包括一组动态链接库(DLL),这些库与AutoCAD在同一地址空间运行并能直接利用AutoCAD核心数据结构和代码,库中包含一组通用工具,使得二次开发者可以充分利用AutoCAD的开放结构,直接访问AutoCAD数据库结构、图形系统以及CAD几何造型核心,以便能在运行期间实时扩展AutoCAD的功能,创建能全面享受AutoCAD固有命令的新命令。
ObjectARX的核心是两组关键的API,即AcDb(AutoCAD数据库)和AcEd(AutoCAD编译器),另外还有其它的一些重要库组件,如AcRX(AutoCAD实时扩展)、AcGi(AutoCAD图形接口)、AcGe(AutoCAD几何库)、ADSRX(AutoCAD开发系统实时扩展)。
ObjectARX还可以按需要加载应用程序;使用ObjectARX进行应用开发还可以在同一水平上与Windows系统集成,并与其它Windows应用程序实现交互操作。
4.VisualLISP
VisualLISP已经被完整地集成到AutoCAD2000中,她为开发者提供了崭新的、增强的集成开发环境,一改过去在AutoCAD中内嵌AtuoLISP运行引擎的机制,这样开发者可以直接使用AutoCAD中的对象和反应器,进行更底层的开发。
其特点为自身是AutoCAD2000中默认的代码编辑工具;用它开发AutoLISP程序的时间被大大地缩短,原始代码能被保密,以防盗版和被更改;能帮助大家使用ActiveX对象及其事件;使用了流行的有色代码编辑器和完善的调试工具,使大家很容易创建和分析LISP程序的运行情况。
在VisualLISP中新增了一些函数:
如基于AutoLISP的ActiveX/COM自动化操作接口;用于执行基于AutoCAD内部事件的LISP程序的对象反应器;新增了能够对操作系统文件进行操作的函数。
5.VBA
VBA即Mcrosoftoffice中的VisualBasicforApplications,它被集成到AutoCAD2000中。
VBA为开发者提供了一种新的选择,也为用户访问AutoCAD2000中丰富的技术框架打开一条新的通道。
VBA和AutoCAD2000中强大的ActiveX自动化对象模型的结合,代表了一种新型的定制AutoCAD的模式构架。
通过VBA,我们可以操作AutoCAD,控制ActiveX和其它一些应用程序,使之相互之间发生互易活动。
6.VisualJava
Java是最早由Sun公司创建的一种颇具魅力的程序设计语言,她是针对嵌入系统而设计的。
像许多开发语言一样,Java是一组实时库的集合,可为软件开发者提供多种工具来创建软件,管理用户接口,进行网络通讯、发布应用程序等。
对AutoCAD用户和开发者而言,Java代表着新一代的编程语言,它主要用于开发出全新的优秀产品。
AutoCAD为我们提供了完整的、高性能的、面向对象的CAD程序开发环境,为用户和开发者提供了多种新的选择,使得对AutoCAD二次开发和定制变得轻松而容易。
三.基于三维图素的零件详细设计
图1基于三维图素的零件详细设计的思路
1.轴承图素库的功能及特点
轴承图素库的设计应针对最终用户,它具有如下功能:
(1)完全摆脱设计手册(手册上的标准数据要全部录入轴承库中);
(2)既允许采用国标数据又允许使用自定义数据;
(3)轴承的位置和方向应允许动态调整;
(4)对不同线型应分层或分颜色绘制,以便于绘图机输出.
轴承图素库的技术特点:
从技术角度看,轴承库应该具有一下特点:
(1)具有模块化的分层结构:
每种类型的标准件都应具有基本输入模块。
数据检索模块和图形绘制模块;
(2)具有独立的数据结构:
数据应独立于程序,在管理方式上可采用数据库、数据文件或内存数据变量等多种方法;
(3)图元参数化:
一般情况下,不应把图元做成BLOCK类,而应做成参数化的绘图程序;
(4)资源的开放性:
不同类型的标准件在标准件中处于平行地位,应允许卸调不用的标准件子库或装入其他的标准件子库;
(5)界面形象直观:
操作界面应使用对话框,做到图文并茂,用户在众多的标准件中准确快速的挑选出自己所希望的结果;
(6)能函数化:
在不同种类的标准件或同一种类但不同规格的标准件中,往往具有许多相同或相近的功能,如选择集操作、对话框常用栏的处理、绘图环境的设置等等,都应使用通用函数的形式来完成。
2.图素库的制作方法
制作图素库实际上是构造程序库,即编制每一种图素的参数化绘图程序库。
从库的结构上看,各个图素的参数化绘图程序是平行的。
每个图素都由以下模块组成:
图素调用模块,特征尺寸输入模块和交互绘图模块。
图素调用模块的作用主要是从图素对话框中引导图素的参数化绘图程序,一般将整个库中各个图素的调用模块做在一起,由统一的对话框来管理。
特征尺寸输入模块一般是与图素一对一的,但若多个图素有相同的或接近的特征尺寸,也可将多个图素的特征尺寸输入模块做在一起。
特征尺寸输入模块除了接收用户的输入信息外,还要负责处理各信息之间的关联关系,如当前图素与上一次使用的图素之间的关系,包括位置关系,形状关系等等。
交互绘图模块主要是完成图素图形的绘制。
当然,在绘制过程中,还配合输入模块好用户的输入信息。
在设计某一具体的元素符号时,一般是划分成基本输入模块、数据处理模块和绘图模块分编程序,三个模块相对独立,相互之间的数据是通过各模块的输入输出参数传递的。
只要参数的个数、类型和作用不变,模块内部的修改不会影响其他模块,故维护和扩充都比较方便。
图2示出了三个模块与数据之间的关系。
99999999
图素库内含有大量的数据,必须有专门数据管理系统。
在AutoCAD的ADS程序中对数据进行管理的方法有三种:
数据库方法、数据文件方法和内存变量方法。
数据库方法适用于数据量很大的场合,数据的维护很方便,但编程量较大。
数据文件的方法适合于维护中等数据量的场合,相对于数据库方法来讲,编程量较小,但对数据的维护不方便。
而内存变量方法数据量较小的场合,优点示编程简单,运行速度快,但随着数据量的增大则需要较大的内存开销。
因此,采用数据库的方法对图素库进行管理比较理想。
输入模块的设计:
输入模块主要负责数据的输入。
一般是借助对话框实现交互操作。
输入模块的重点是界面。
对话框界面一般有四个区域组成:
(1)数据输入区:
让用户输入查询条件,这部分一般是由编辑栏和列表组成;
(2)环境设置区:
用于线性选择、视图选择等,一般由radio按钮和select组成;
(3)图像区:
用于直观的显示标准件的结构示意图,这样可以省去很多文字说明,图像区显示的是幻灯片文件。
需提前为图素库制作结构示意图的幻灯片文件;
(4)错误提示区:
数据处理模块发现用户输入的数据有错误时,应及时返回到输入模块,并在本区内显示错误信息。
数据处理模块的设计:
数据处理模块主要负责数据检索及数据加工。
数据检索的方法是:
根据轴承的主参数在数据库中查找对应项,查找的方法可采用顺序查找、折半查找等。
考虑到一个型号的轴承的数据项一般不太多,所以采用顺序查找是完全可行的,速度基本无影响,编程较简单。
数据加工的目的主要是检查数据的正确性,为下一步绘图模块提供有用的数据。
如果数据加工发现输入的数据有错,则要返回到数据输入模块,并带回错误信息。
绘图模块的设计:
绘图模块的任务是绘制标准件。
在该模块中,一般首先要用户给出标准件的插入点及方向,有时还需给出插入比例。
然后据此进行绘图计算,并按绘制结果绘制图形。
在本模块中为了让用户直观地了解不同位置和方向下的绘图结果,可使用选择集技术,在屏幕上动态的调整。
图2.轴承实体生成示意图
首先,作平面图如图2所示,p[0]—p[11]分别是各特殊点的坐标,其中,p[0]p[11]是轴承的轴线,然后将此图形绕轴线旋转一周即生成轴承实体。
以下是各点坐标在MicrosoftVisualC++6.0下的计算公式:
Spoint(p[1],p[0][X],D/2.0-temp,0.0);
Spoint(p[2],p[0][X],D/2.0-r,0.0);
Spoint(p[3],r,D/2.0,0.0);
Spoint(p[4],B-r,p[3][Y],0.0);
Spoint(p[5],B,p[2][Y],0.0);
Spoint(p[6],p[5][X],p[1][Y],0.0);
Spoint(p[8],p[1][X]+B/3.0,p[1][Y],0.0);
Spoint(p[7],p[1][X]+2.0*B/3.0,p[1][Y],0.0);
Spoint(p[9],p[0][X]+B/2.0,(D+d)/4.0,0.0);
Spoint(p[10],p[9][X]+1.0,p[9][Y],0.0);
Spoint(p[11],p[9][X],p[0][Y],0.0);
r1=acutDistance(p[7],p[9]);
其中的几何参数的意义为:
d---------------------轴承壁内侧圆直径
D---------------------轴承壁外侧圆直径
B---------------------轴承宽度
r---------------------滚珠的直径
temp------------------轴承材料厚度
零件
field1
field2
field3
field4
field5
field6
field7
field8
field9
field10
field11
轴承GB276-82
d
D
B
r
D1
D3
轴承GB292-83
d
D
B
Tmax
Tmin
r
r1
a
D1
D2
rg
表1预定义构件的几何参数
四.轴图素库应用实例
例如,现假定用轴图素库绘制图3所示的轴承。
图中尺寸可酌情定出。
将C程序AXLE.C编译成可执行文件调入AutoCAD。
然后在AutoCAD对话框菜单中点击“开发”,在下拉菜单中选择“轴承”。
显示图2所示的对话框。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AUTOCAD 二次开发 轴承 图素库 设计