1、目 录第一章 绪论111课题研究背景和意义11.1.1 设计手段11.1.2 分析理论21.1.3 外观造形21.1.4 液压部件CAD系统的意义21.2 CAD技术的特点及应用41.2.1 CAD技术的特点41.2.2 CAD(算机辅助设计)应用51.3 CADCAM技术的发展概述71.4 SolidWorks软件简介及应用101.4.1SolidWorks软件主要有以下基本功能:10第二章 SolidWorks二次开发132.1 SolidWorks二次开发简介142.2 SolidWorks二次开发的两种基本方式142.2.1 基于OLE自动化技术142.2.2 基于COM规范152.3
2、 SolidWorks的二次开发工具152.4 SolidWorks宏简介162.5 SolidWorks二次开发方法比较182.6 SolidWorks二次开发的基本原理192.7 本系统的具体开发方案20第三章 数据库213.1 数据库的简介213.1.1 数据库结构及应用213.1.2 数据库技术的应用223.3数据库接口技术(Access数据库引擎)22第四章 Visual Basic 6.0254.1 Visual Basic 6.0简介254.1.2 Visual Basic 6.0的新特点264.2 VB开发液压阀标准件库的实例284.2.1 分析结构特征,建立DV节流截止阀和单
3、向节流截止阀体模型294.3 用开发人机交互界面及运行结果30结论44致谢45参考文献46基于VB的DV节流截止阀和单向节流截止阀SolidWorks的二次开发 060606415 马冶 指导教师: 高长银 教授第一章 绪论11课题研究背景和意义液压部件因具有结构简单、工艺适应性强、环境污染小等其他设备不可替代的性能特点,被广 泛应用于汽车制造、航空航天、国防、电力电子、塑料、机械、冶金和轻工等国民经济的各个领域。据不完全统计,目前我国以液压部件为主要产品的设计部门和生产厂已达百家之多, 但CAD的应用情况却令人失望。液压部件设计与制造业的整体技术水平远远落后于工业发达国家,使国际市场的激烈竞
4、争和我国落后的设计水平这一矛盾日趋尖锐。具体表现在以下几方面:1.1.1 设计手段国内液压部件的主要设计单位,包括占主导地位的第一重型机械集团公司设计院在内的一些大型设计院所,其设计工作仍然是以图板作业为主,设计工作的好与坏完全取决于设计人员的技术素质和工作状态。因此,设计质量(包括结构设计的合理性、设计数据的准确性等)和 设计效率低、设计周期长。同时,落后的设计手段也给报价工作带来了许多不便,如报价书 编制时间长、报价偏差大等。所有这些,都在不同程度上影响着一个企业的竞争能力。1.1.2 分析理论近十几年来,虽然在某些有条件的设计院所,对液压系统的关键零部件也能作一些有限元结构分析,但是由于
5、设计手段落后,这些分析结果在设计中未能起到应有的作用。所以,液压部件设计中的强度、刚度以及整体工作性能分析,仍然是以材料力学为依据,甚至仅凭经验和直觉。用材料力学解决这样复杂的实际问题,不得不把空间问题简化为平面问题,这样就极大地偏离了实际情况。为此,人们不得不把材料的许用强度降低,以牺牲结构的合理性来换取结构的安全性。由于科技含量相对低,所以与日本同类产品比较,就显得结构庞大、笨重,同样能力的设备,其重量一般都要高出1020。且其成本竞争力也完全处于劣势。1.1.3 外观造形设备外观造形问题,只是在最近几年才引起人们的重视,刚刚在设计人员的头脑中形成了一 种意识。由于缺乏造形手段,这种意识最
6、终也只能变成一种设计人员的个人行为。设计者各自为阵,各行其是,根本就谈不上以此来塑造一个企业的风格和特征。产品的外观造形缺少 科学与艺术方面的考虑,也是产品缺乏竞争能力的一个重要因素。1.1.4 液压部件CAD系统的意义随着机械行业CAD推广应用工作的深化,绝大多数液压机械设计院所及制造厂家在这方面也作了大量的工作,为实现真正意义上的CAD奠定了基础。不过就目前的CAD应用情况来看,尚存以下两个问题:其一,CAD工作进展缓慢,成果零散,难以发挥优势。几个大院所从国外购 买的软件主要用于有限元分析,作为CAD平台开展二次开发工作的极少,开发的软件水平也 不高,针对性太强,应用局限性很大。其二,现
7、有的大多数CAD软件在用户界面方面存在着 交互困难、操作不便的问题,极大地限制了CAD技术的推广应用。面向二十一世纪,企业要生存和发展,就必须有效地掌握先进的生产力,树立强烈的市场、 成本和效益意识。开发和设计产品,也必须满足用户对品种、批量、时间和质量等诸方面的 要求。所以,根据工艺用途、制造成本、机器性能等技术经济指标,能够灵活修改设计方案 ,适时分析结构性能,准确评价整机或关键部分的功能和性态,优化结构参数,为制造提供 高质量、高水平的成套技术资料,是现阶段机械制造行业孜孜追求的目标,是促进CAD技术 蓬勃发展的动力源泉。今天,是否掌握CAD应用技术已经成为衡量一个企业能否迈入信息时 代
8、的重要标志。CAD已经被公认为是提高企业参与竞争能力的有效技术和方法之一。融合专家系统(ES)的CAD技术,依赖专家的知识和经验、以人类专家的水平解决本领域中 的技术设计问题,使设计过程智能化,无疑是对设计方法的一次革命。尽管把专家系统引入 机械设计也只有短短十几年的历史,但是由于机械设计专家系统(MDES)可为现代化的机械 设计提供详实、可靠、规范、高效的设计依据,所以已经激发了大批企业的应用热情。基于专家系统、面向微机的液压部件CAD系统,可望把我国液压机本体设计技术从落后的图板作业水平提高到现代设计的先进水平。开发这项先进的技术,对于改善我国液压机设计 与制造业的落后局面,促进民族工业的
9、进步,实现液压机产品的优化设计,缩短设计和开发 周期,提高质量,增强企业在国际市场上的竞争能力,使我国液压机制造业逐步实现CAD/CAM一体化,具有极其重要的意义。1.2 CAD技术的特点及应用1.2.1 CAD技术的特点CAD技术是一项综合性的,集计算机图形学、数据库、网络通讯等计算机及其它领域知识于一体的高新技术;是先进制造技术的重要组成部分;也是提高设计水平、缩短产品开发周期、增强行业竞争能力的一项关键技术。CAD能够提高产品的设计质量,缩短科研和新产品开发周期,降低消耗,提高新产品的可信度,大幅度提高劳动生产率,实现脑力劳动自动化。总体来讲,CAD系统具有以下优点:缩短产品开发周期:由
10、于计算机运算速度及数据查询速度极快,用户根据设计目标向计算机发出指令,计算机则根据人的意图做出反应。对特定的产品,利用专门的软件或程序,设计速度可以提高几十倍。由于计算机能够直观地将设计结果展示出来,设计者根据计算机的显示可以做出快速的反应。在计算机上修改设计比在图纸上修改要容易得多,而且计算机能提供复制、查询等功能。因此采用CAD系统能够极大地提高设计效率。提高产品设计质量:由于计算精度高和便于优化设计,设计人员在具备专业知识的基础上,利用CAD手段可以完成更高质量的设计。设计人员利用实体造型可以直观地在计算机中将产品制作出来。采用先进的参数化设计、全相关数据库技术可以最大限度地避免设计上的
11、疏忽。降低生产成本:由于CAD能够缩短设计、加工和装配的时间,降低废品率,减少库存,所以将大大降低企业的生产成本。提高管理水平:CAD系统所生成的设计结果主要是计算机数据,保存和检索都比较容易。在已经建立企业内部网的前提下,采用产品数据管理技术易于实现全局性的管理,提高企业的管理水平。尽管CAD系统功能非常强大,但如果没有人能够正确地操作和使用,CAD系统根本不可能产生经济效益。CAD对操作者的专业知识、外语能力和计算机水平要求较高。技术人员一般需要较长的时间熟悉CAD,了解其功能和用法。因此培养优秀的CAD系统使用人员是当务之急。1.2.2 CAD(算机辅助设计)应用计算机辅助设计开始用于机
12、械行业,到现在CAD已是一个包括范围很广的概念。概括来说,CAD的设计对象有两大类,一类是机械、电气、电子、轻工和纺织产品;另一类是工程建筑。而如今,CAD技术的应用范围已经延伸到艺术、电影、动画、广告和娱乐等领域,产生了巨大的经济及社会效益,有着广泛的应用前景。CAD在机械制造行业的应用最早,也最为广泛。采用CAD技术进行产品设计不但可以使设计人员“甩掉图板”,更新传统的设计思想,实现设计自动化,降低产品的成本,提高企业及其产品在市场上的竞争能力;还可以使企业由原来的串行式作业转变为并行作业,建立一种全新的设计和生产技术管理体制,缩短产品的开发周期,提高劳动生产率。如今世界各大航空、航天及汽
13、车等制造业巨头不但广泛采用CAD/CAM技术进行产品设计,而且投入大量的人力物力及资金进行CAD/CAM软件的开发,以保持自己技术上的领先地位和国际市场上的优势。计算机辅助建筑设计(Computer Aided Architecture Design,简称CAAD)是CAD在建筑方面的应用,它为建筑设计带来了一场真正的革命。随着CAAD软件从最初的二维通用绘图软件发展到如今的三维建筑模型软件,CAAD技术已开始被广为采用,这不但可以提高设计质量,缩短工程周期,还可以节约2%至5%的建设投资,而近几年来我国每年的基本建设投资都有几千亿元之多,如果全国大小近万个工程设计单位都采用CAAD技术,则可
14、以大大提高基本建设的投资效益。CAD技术还被用于轻纺及服装行业中。以前我国纺织品及服装的花样设计、图案的协调、色彩的变化、图案的分色、描稿及配色等均由人工完成,速度慢、效率低,而目前国际市场上对纺织品及服装的要求是批量小、花色多、质量高、交货要迅速,这使得我国纺织产品在国际市场上的竞争力不强。采用CAD技术以后,大大加快了我国纺织及服装企业走向国际市场的步伐。如今,CAD技术已进入到人们的日常生活中,在电影、动画、广告和娱乐等领域大显身手。电影拍摄中利用CAD技术已有十余年的历史。动画和广告制作中也充分利用了计算机造型技术,实质上也是一种虚拟现实技术。虚拟现实技术还被用于各种模拟器及景物的实时
15、漫游、娱乐游戏中。近十年来,在CIMS工程和CAD应用工程的推动下,我国计算机辅助设计技术应用越来越普遍,越来越多的设计单位和企业采用这一技术来提高设计效率、产品质量和改善劳动条件。目前,我国从国外引进的CAD软件有好几十种,国内的一些科研机构、高校和软件公司也都立足于国内,开发出了自己的CAD软件,并投放市场,我国的CAD技术应用呈现出一片欣欣向荣的景象。1.3 CADCAM技术的发展概述 CADCAM技术诞生至今已经约有40年的历史了,这项技术工程已经成为 当今世界设计、制造和管理领域内重大的新兴技术工程,备受世人的瞩目。该技 术应用的范围及其广泛,它可以应用于航空航天、船舶、海洋工程、汽
16、车、电子、 医学等诸多领域。它的广泛使用使得产品的开发周期大幅度的缩减,推动了各行业的快速发展。 CADCAM技术的发展经历了三代。第一代CADCAM软件的开发开始于 二十世纪60年代中期,是以交互式图形生成技术为基础而建立的应用技术系统, 公司的CADl,美国航空空间协会(AIA)的APT、APTII和APTIII。但第一 代产品的共同缺点是以二维绘图为主、规模庞大、价格昂贵。 第二代CADCAM系统软件的开发是在二十世纪70年代,这一时期以小型 三维绘图和数据加工;线框、曲面、和实体建模;有限元分析等,属于多数据库和分散数据结构、顺序设计过程的系统,但是其缺点是:难以实现系统的真正集 成、
17、数据分散、缺乏管理,三维技术不成熟。 现再次推动了CADCAM技术的快速发展。工作站,是以个人计算环境和分布 有较高的响应速度,其功能已超过了小型的CADCAM系统。这一代的主要特 点是:使用单一数据库和统一的数据结构,实现了系统的集成和各分系统的全关联,提供了数据管理功能。 CADCAM技术发展至今,也已经研发了诸多的软件系统,其中应用较为广泛的CADCAM软件有:AutoDesk公司的AutoCAD、3DMax;SolidWorks公 司的SolidWorks;CV公司的CADDS Personal Designer;ProE软件;Micro-CADAM软件、Intergraph公司的So
18、lidEdge软件等。 二十世纪70年代末,我国开始引进CADCAM技术,并且最早在机械行业开始应用。近40年来,经过“六五”探索、“七五”技术攻关、“八五普及推 广、“九五”深化应用的促进,CADCAM技术已经取得了长足的发展,亦为我 国社会主义现代化建设作出来突出的贡献。但是,我国企业CADCAM技术应 用方面,在很长的一段时期内主要停留在二维绘图水平上,只是在近几年三维技术才有了较为迅速的发展。随着三维CAD技术的日趋完善,微机的普及及其性价比的提高,工数据库管理系统(Engineering Database Management System,EDBMS)的在工程绘图中应用,从长远发展
19、观点三维绘图技术必将替代二维绘图技术。 经过近几十年的发展,我国CAD/CAM技术有了长足发展,已被广泛用于我国企业;我国CAD/CAM软件的开发水平也逐渐接近国外先进水平。但是整体来说,我国目前CAD/CAM软件不管是从产品开发水平还是从商品化、市场化程度都与发达国家尚有不小差距。例如:不少企业对CAD的认识还仅停留在绘图阶段,从而使CAD产生的效益尚未充分发挥;CAD/CAM软件应用人员参差不齐,CAD软件不能得到高效率应用;缺少既适合教学又满足企业需求的软件及教学平台。CAD/CAM技术水平还处于向高技术集成和向产业化商品化过渡的时期,还没有针对性的软件,一般都是使用通用性软件。虽在微机
20、平台上开发CAD/CAM软件方面我国与国外起点差不多,但对引进的CAD/CAM系统的二次开发却跟不上,致使引进软件的效率不能完全发挥。针对21世纪机械制造行业的基本特征,CAD/CAM技术的发展趋势也呈现出以下几个特征:标准化、集成化技术、智能化技术、网络技术的应用、多学科多功能综合产品设计技术等。当然,我们也要看到我们的优势,那就是:了解本国市场,便于提供技术支持,相对价格便宜等。国际和国内的理论和实践给我们提供了很好的方法和理念,拓展了我们更多的发展空间。在这些前提下,我国CAD/CAM产业只要紧跟时代潮流,跟踪国际最新动态,遵守国际规范,形成自己独特的优势,并且立足国内、结合国情、面向国
21、内经济建设的需要,一定能够开发出有特色的符合中国人习惯的CAD/CAM软件,为我国制造业的发展插上腾飞的翅膀。1.4 SolidWorks软件简介及应用SolidWorks软件是在总结和继承了大型机械CAD软件的基础上,在Windows环境下实现的全参数化三维实体造型软件,它具有强大的零件设计、钣金设计、管理设计、绘制二维工程图、支持异地协同工作等功能,能使零件设计、装配设计和工程图保持时刻的全相关和同步。同时 SolidWorks具有良好的开放性和兼容性,可以和多种软件集成。SolidWorks是目前机械制造业应用非常广泛的基于windows平台的三维CAD软件。它是一套基于windows平
22、台CAD/CAM/CAE/PDM桌面集成系统。它是设计数据100可以编程,尺寸、相互关系和几何轮廓形状可以随时修改;具有特征管理器,复杂零部件的细节和布局设计清楚明了,操作简单;全关于技术使得零部件之间和零部件与图纸之间的更新安全同步;自动进行动态约束检查,具有强劲的复杂曲面造型功能;既可以直接设计也可以按零件的三维立体图形进行设计。由于采用了特征建模技术和设计工程的全相关技术,而且为用户提供了功能强大的应用程序API接口,是目前进行阀体等二次开发的一个非常理想的工具。用户可通过对SolidWorks的二次开发,设计制造出自己独特的产品,以满足不同企业对不同产品的工艺设计要求,由于以上特点,S
23、olidWorks成为目前微机平台上的主流三维设计软件1.4.1SolidWorks软件主要有以下基本功能:(1)易用性及对传统数据格式的支持SolidWorks完全采用了Microsoft windows的标准技术,如菜单、工具条、组件技术、结构化存取、内嵌VB(VBA)技术等。设计者在进行三维设计的过程中可享受Windows系统的便捷与优势。SolidWorks将目前市场几乎所有的机械CAD软件集成到设计环境中。支持DWGDXF文件的输入与输出,方便与AutoCAD软件进行数据交换。SolidWorks还提供了各种三维软件数据接口格式,可输入Parasolid、UG II、ProE、Sol
24、idEdge、Inventor等格式的零件和装配体的支持,还可输出VRML、Tiff、Jpg等格式文件。(2)草图功能基于几何关系建立草图绘制方法,使草图的绘制快捷而简单。SolidWorks使用三维设计方法。设计零件时,从初始草图开始,创建一个模型,并且用这个模型可建立二维工程图和三维装配体。(3)特征一般可用草图建立一个基本特征,然后附加上更多的特征,最终建立零件模型。在此过程中可通过对特征的增减、改变或调动来自由地重定义设计。以拉伸、旋转、扫描、放样等方式生成三维实体,并通过圆角、抽壳、倒角、变形、分割等操作对生成的实体进行加工。模拟机械加工方式,使用户在设计制作零件、装配体或产品时更加
25、直观。同时SolidWorks是一种尺寸驱动系统。可指定尺寸和各实体之间的关系,改变零件的大小和形状,并保留原有的设计意图。(3)装配功能SolidWorks提供了完善的产品缓步装配功能,以便创建和记录装配体设计过程,同时还支持大型装配体模式,拥有干涉检查、产品的简单运动仿真、编辑零件装配体透明度等功能。(4)工程图SolidWorks模型由零件、装配体和工程图组成,并且三者具有联动功能。零件、装配体和工程图之间的联动关系,保证了一个视图上的改变自动地反映到其它视图,且可在设计过程中的任何时候生成工程图和装配体。可以从零件装配直接生成工程图,或者新建工程图后将零件装配体视图插入工程图。实体模型
26、、图纸和装配能自动相关地更新。可以允许二维工程图暂时与三维模型脱离关系,所有标注可以在没有三维模型的状态下添加,同时用户又可随时将二维工程图与三维模型同步,从而大大加速工程图的生成过程。(5)钣金设计功能SolidWorks具有强大的钣金设计功能,或以制作企业内部的钣金特征库,钣金零件库。钣金设计方法与零件设计完全相同,而且还可以在装配环境下进行关联设计,自动修改与其它零部件的关联关系。(6)曲面功能SolidWorks提供了众多的曲面创建和修改工具,而且是完全参数化的,设计者可以方便快捷地设计出具有复杂外形的产品(7)用户化开发尽管SolidWorks有众多优点,但毕竟只是针对整个机械制造行
27、业的通用软件,不是针对具体企业和行业所设计,不可能够满足所有用户某些方面的具体要求。这就需要企业或用户结合自身的实际需求,进行对通用软件进行程度不同的用户化的二次开发,实现对某一个产品的参数化设计,建立应用绘图系统和数据库,形成具有本企业特色的产品设计CAD系统。为方便软件在某些特定方面的功能延伸,提供了完整的免费的开发工具API(Application Programming Interface应用程序编程接口),提供应用程序与开发人员基于该软件进行本地化的二次开发。用户可以用支持OLE或COM的编程语言如VB、C”等建立自己的应用程序,为本企业服务。有效的二次开发是发挥软件效能的关键环节。
28、只有实现了产品参数化设计,才能真正提高产品的设计速度,实现设计产品的虚拟装配和干涉检查,最大限度地缩短产品研发周期,适应现代市场需求。虽然SolidWorks所提供的功能非常强大,但SolidWorks是一个通用的三维设计软件,尚不能完全满足国内工程设计的特殊要求,例如,它没有适合我国国标的标准件库。而在工程设计中,无论是结构强度分析还是施工图设计均要涉及到标准零部件的绘制(3D/2D)。为了充分发挥SolidWorks在软件设计中的作用,使一些常用的或重复的任务自动化,提高设计效率,缩短产品的开发周期,就必须对其进行有针对性的二次开发。本文以在液压设备中常用的标准件DV节流截止阀和单向节流截
29、止阀为例,详细分析和说明了利用对SolidWorks进行二次开发的参数绘图过程。第二章 SolidWorks二次开发2.1 SolidWorks二次开发简介SolidWorks具有良好的开放性接口SolidWorks API(Application Programming Interface应用程序编程接口)和功能扩充性,它支持0LE(0bject Linking and Embedding对象的链接与嵌入)技术标准和采用COM(Component 0bject Model组件对象模型)技术标准,任何支持COM和OLE的编程语言如Visual Basic,VBA,C,Visual C”,C”,
30、Delphi等等都可以成作为SolidWorks的开发工具。2.2 SolidWorks二次开发的两种基本方式作为一个COMOLE服务器,SolidWorks提供了COM规范和基于OLE自动化技术两种不同的二次开发方式。2.2.1 基于OLE自动化技术OLE技术是Microsoft公司同计算机界合作并发展起来的产品规范,它允许在一个应用程序内部操作另一个应用程序提供的对象,即使得应用程序之间能够共享数据。SolidWorks支持OLE标准,完全实现了OLE自动化。作为一个OLE服务器,SolidWorks提供了大量的OLE对象,以及这些对象所拥有的方法和属性,用户通过在客户应用程序中对这些OL
31、E对象及其方法和属性的操作,可以在自己开发的应用软件中实现诸如创建直线、构造实体、检查曲面表面参数等几乎所有的SolidWorks软件功能。SolidWorks系统提供数据操纵接口函数API,专门读写三维零件数据,并提供了一系列的Automation接口(包括对象、属性和方法),使用户进行二次开发更加容易。运用OLE Automation技术使得在应用程序中驱动三维CAD系统中的零件变得可能而且容易。2.2.2 基于COM规范组件对象模型(COM)是微软公司为了使计算机工业的软件生产更加符合人类的行为方式而开发的一种新的软件开发技术。在COM构架下,人们可以开发出各种各样的功能专一的组件,然后
32、将它们按照需要组合起来,构成复杂的应用系统。由此带来的好处有:可以将系统中的组件用新的替换掉,以便随时进行系统升级和定制;可以在多个应用系统中重复利用同一个组件;可以方便地将应用系统扩展到网络环境下;COM与语言和平台无关的特性使所有程序员在编写组件模块均可充分发挥自己的才智与专长。COM是开发软件组件的一种方法。组件实际上是一些小的二进制可执行程序,它们可以给应用程序、操作系统和其他组件提供服务。开发自定义的COM组件就如同开发动态的、面向对象的API。多个COM对象可以连接起来形成应用程序或组件系统。并且组件可以在运行时刻,在不被重新链接或编译应用程序的情况下被卸下或替换掉。SolidWo
33、rks的API对象同样可以在基于COM方式的应用程序中被调用,以实现相应的功能。2.3 SolidWorks的二次开发工具任何支持OLE和COM的编程语言都可以作为SolidWorks的开发工具最简单的二次开发工具是VBA,在涉及Excel是用VBA最为方便,VBA常用于录制宏,得到基本程序框架。易学易用的高级开发语言是VB,但功能有限。功能强大的语言是Visual C+,但是入门较难。Delphi集中了VB和Visual C+两者的优点,学习过程中很容易上手,而且功能也非常强大,尤其在界面设计、数据库编程和网络编程方面更具有独特之处,但遗憾的是SolidWorks常常不支持Delphi+OL
34、E。总之,各种软件都有各自的特点与不足,如果能将它们的优点集中起来,必将达到更好的效果,一般设计中考虑采用VB开发SolidWorks。使用VB进行二次开发的优势在于容易使用、上手快。在VB中引入了控件的概念,在Windows中控件的身影无处不在,各种各样的按钮、文本框、无线钮都是控件的种类,VB把这些控件模式化,并且每个控件都有若干属性来控制控件的外观和工作方法。这样就可以像在画板上一样,随意单击几下鼠标、一个按钮就完成了,这些在以前的编程语言下是要经过相当复杂工作的。利用VB,即使是初学者也可以编写出漂亮的应用程序,况且其开发周期短,代码效率高。所以,本例采用VisualBasic6.0语
35、言作为开发工具,根据国家标准中的尺寸数据开发标准DC平衡阀,有效地实现了对SolidWorks的二次开发。2.4 SolidWorks宏简介计算机科学里的宏是一种抽象,它根据一系列预定义的规则替换一定的文本模式。能自动执行某种操作的命令统称为“宏”。“宏也是一种操作命令,它和菜单操作命令都是一样的。可以录制使用SolidWorks用户界面执行的操作,然后使用SolidWorks宏重新执行这些操作。其所包含的调用相当于使用用户界面执行操作时对API函数的调用。可以记录鼠标单击、菜单选择和键击,以便以后执行。开始SolidWorks编程的最快捷的方式就是录制宏。宏可以记录用户的操作将其记录为一系列
36、SolidWorks API函数调用。在SolidWorks“工具”菜单“宏中有运行、录制、新建、编辑等选项。宏录制功能为VBA环境,与Visual Basic语法规则完全一致,再将其复制添加到主程序的相应部分,然后编辑修改调试以达到程序要求。但直接录制的宏程序的可用性很差,需要对它进行一些合理的优化,清理多余的语句,所以在录制完成后需要编辑宏。保存并退出宏编辑,返回SolidWorks环境。指定“宏”操作在SolidWorks中可以指定宏命令的文件位置,并定制工具栏,将所执行的宏操作按钮添加到指定的位置上。利用“宏”在SolidWorks界面中添加指定的应用程序,如同SolidWorks调用
37、了自身的功能一样便捷。本课题将节流阀三维造型过程录制成特定的宏,并分析宏文件,提取节流阀三维建模关键参数将其设置为变量,提取出完成这些动作所需要的API函数,再使用SolidWorks宏重新执行这些操作,从而实现齿轮的三维参数化设计。用VB技术和SolidWorks二次开发接口API开发的应用程序有两种运行方式:一种方式是将应用程序作为可执行文件直接运行,由程序控制SolidWorks的调入和退出。另一种方式是将程序作为一条宏命令嵌入到SolidWorks中。2.5 SolidWorks二次开发方法比较对于SolidWorks进行二次开发,如果采用Visual Basic或者Visual Ba
38、sicNET作为编程语言,可以采用一种简单实用的方法SolidWorks的宏录制。完全编程法和尺寸驱动法和两种都可以使用宏录制来简化编程任务,但两者存在不同。(1)简化程度不同完全编程法进行在三维造型同时,使用宏将造型的整个过程全部录制下来,然后再对所录制的宏代码进行修改,将有关的常量换成变量。该方法虽然不必由开发者对整个造型过程全部编程,使编程简化,却有存在一个很大的缺点。即使用宏录制造型的过程中,并不能将造型过程全部的录制下来,对于被遗漏的部分,需要开发者自行查询并使用SolidWorks API函数补全这部分代码,而无论对于初学者还是有经验的开发者,都比较困难。使用尺寸驱动法,不必录制整
39、个造型的具体过程,而是在零件造型完成后,修改零件模型需要参数化的尺寸,用宏录制修改尺寸的过程,产生程序代码。这种方法不必虑模型的造型过程,只关心对造型参数化尺寸的修改,涉及到的API函数相对少,比较适用于初学者和非计算机专业的开发人员。(2)系统的执行效率和可靠性不同从系统的可靠性、执行效率考虑,尺寸驱动法比较比较简单。编程法需要从头到尾重新建立模型的过程,尺寸驱动只需改变改变已有模型的尺寸即可,可以节省图形的更新速度。编程法VB程序调试过程中,经常会出现SolidWorks绘制图形的某一步骤没有任何的反应,也不出现任何出错的提示信息,这需要耐心地查找程序中存在的错误。本文选择尺寸驱动功能完成
40、对SolidWorks的二次开发。2.6 SolidWorks二次开发的基本原理对SolidWorks的二次开发主要通过软件内嵌的API接口,该接口提供了大量0LE对象以及这些对象所拥有的方法和属性。通过调用这些API,我们可以将SolidWorks中一些重复单调或者规则明确的操作使用程序语言描述,通过简单的人机交互,让计算机自己来完成此类工作,以提高工作效率。用户通过SolidWorks API,借助支持0LE编程的高级编程语言作开发平台,设计系统界面,编制应用程序,通过在程序中调用API对象访问和操作SolidWorks,对SolidWorks进行二次开发,建立起适于自己需要的、专用的So
41、lidWorks功能模块。如生成和编辑零件草图、构造三维实体、检测曲面、建立标准标准零件库、自动生成工程图并进行尺寸标注等几乎所有我们需要的参数化设计功能。如下图所示图1 DV节流截止阀和单向节流截止阀三维实体图这些专用功能模块可通过生成DLL文件作为插件挂接在SolidWorks的菜单下,也可置于用户开发的工具条中,或者独立于SolidWorks之外使用。在所有对象中,ModelDoc2对象是最为常用的,代表SolidWorks的文档。SolidWorks有三种最基本的文件格式:零件、装配体、工程图。ModeIDoc2对象可以直接对这三类文件进行操作。ModelDoc2又包含了很多子对象,其
42、中PartDoc,AssemblyDoc和DrawingDoc分别属于零件、装配体和工程图的API对象,使用它们来操作相应类型的文件。SolidWorks API每种对象都有自己特定的对象来表示,但是SolidWorks设定了些通用的方法和属性来操作这些对象。通过设置各自对象方法各属性等就可以诸如视图设置、轮廓线修改、参数控制、对象选择、打开保存文档、生成编辑特征参数等与实体模型相关的各种操作,完成对应文件类型的相关二次开发。2.7 本系统的具体开发方案选定开发方法后,就要制定本系统具体开发方案。选定一个DV节流截止阀和单向节流截止阀,按正确的设计关系在SolidWorks环境中绘制其三维标准
43、模型图并保存,根据用户需要分析并确定模型的变量化参数,如节流截止阀阀体的长度、螺纹大小、直径等参数,然后通过Visual Basic等编程环境设计操作界面,在程序中调用API对象获取并修改标准模型中的相关约束变量参数值,使模型的几何或拓扑信息发生改变,从而完成参数化的DV节流截止阀和单向节流截止阀零件建模。最后将程序置于SolidWorks的的菜单或工具条中。由于DV节流截止阀和单向节流截止阀系列的参数较多,基于Access等建立变量参数数据库,并在Visual Basic中通过ADO数据控件实现对数据的调用。 第三章 数据库3.1 数据库的简介数据库是应数据管理任务的需求而产生的,从五十年代
44、以来,随着计 算机软硬件的飞速发展,数据管理技术已经经历了人工管理、文件管理和数据 库系统三个阶段。20世纪年60代术,软硬件技术的发展,为数据库技术的发展提供了良好的基础,数据库管理系统取代了传统的文件管理系统,在各个领域获得了广泛的应用。 数据库系统(Database System,简称DBS)是由数据库、数据库管理系统、应用系统、数据库管理员和用户构成的人机系统。数据库(Data Base,简称DB)是长期存储在计算机上的、有结构的、可共享的数据集合。数据库管理系统(Data Base Management System,简称DBMS)是科学地组织和存储数据、有效获取和维护数据的系统软件
45、。它是位于用户和操作系统之间的一层数 据管理软件。 3.1.1 数据库结构及应用 1层次模型(Hierarchal Model)用树结构表示实体之间的联系,树有结点 和连线组成,节点表示实体集,连线表示相连两实体之间的关系,这种关系只能是l:N关系。 2网状模型(Network Model)这种模型允许有零个或多个节点而无父节点,它可直接表示M:N关系。 3关系模型(Relation Model)关系模型由关系、关系上定义的操作和对关系的完整性的规则组成。它的二位表由两部分组成一是表格的名字和属性的名字,二是具体的数值。关系模型和层次模型、网状模型的区别在于它通过表格数据而不是通过指针连接来表
46、示和实现两实体问的关系。以关系模型为基础的数据库就是关系数据库,具有数据结构简单、符合工程习惯、数据独立性高及数学基础严密等优点,是目前数据库应用的主流。3.1.2 数据库技术的应用数据库技术应用到CADCAM系统中,人们希望能够利用数据库技术有效的管理工程应用中所涉及的图形、图像、声音等更加自然的信息形式,因此工程数据库应运而生。工程数据库是指能满足人们工程活动中对数据处理要求的数据库。它不但要能够处理常规的表格数据、曲线数据等,还必须能够处理图形数据。图形数据既有满足工程绘图的二维数据,又有产品造型所需要的三维设计数据。图形数据一般是网状关系的层次结构,同一种实体可能在不同的使用阶段使用几
47、种不同的表示方法,并且须实现不同表示方法之间的相互转换。在工程数据库管理系统EDBMS(Engineering Data Base Management System)中,数据的表现形式不再是单一的实际参数,由含参数的过程子程序生成产品商数据也是一种必不可少的表现形式。3.3数据库接口技术(Access数据库引擎) Visual Basic所编写的数据库应用程序,负责的是与用户的交互。用该程 序可以选择数据库中的数据项,并把所选择的数据项按用户的要求显示出来。数据库系统被称为后台系统,通常是关系表的集合。这时就涉及到一个问题,应用程序如何与后台的数据库建立联系呢? 首先,数据库要能支持用户的访
48、问,其次,用户的Visual Basic程序可以访问这些数据库,这两点很关键。数据库有三种方式支持应用程序的访问,即通过Access数据库引擎、 Microsoft ODBC驱动程序、第三方ODBC驱动程序。 Visual Basic 6.0应用程序中支持多DBMS来开发数据库,这种方法称作ODBC,ODBC是Microsofts Window的开放式服务体系结构数据库部分,是一个用于访问多种数据库的统一的界面标准。ODBC实际是一个数据库访问库,但是只提供一个统一的应用程序接口(API)。这样利用ODBC可以避免应用程序随数据库的改变而改变。ODBC通过使用数据库驱动程序获得数据库的独立性,驱动程序所提供的标准接口允许应用程序开发者和驱动程序提供者在应用程序之间传递数据。对VB而言,其内置为Microsoft Access数据库,可以提供不逊色于专业数据库软件的支持,可以进行完整的数据库维护、操作及事务处理