基于SolidWorks的参数化设计在转子造形中的应用

2013/11/19 12:35:04      点击:

一、参数化设计技术概述
参数化设计是一种基于约束的设计方法,用一组参数来定义几何图形(体素)尺寸数值并约定尺寸关系,提供给设计者进行几何造型使用,当几何图形尺寸变动时自动更新图形。参数的求解较简单,参数与设计对象的控制尺寸有显式的对应关系,设计结果的修改受到尺寸驱动(Dime曲nDriven)。生产中常用于设计对象的结构形状比较定型的产品(实例),系列化标准件就是属于这一类型。参数设计系统的原理如图1所示。计算方程组中的方程是根据设计对象的工程原理而建立的求解参数的方程式,例如,根据齿轮组的齿数与模数计算中心距等。
图1参数设计系统原理框图
参数化设计(Parametric Design,也叫尺寸驱动——璜m即si∞Driven)是CAD技术在实际应用中提出的课题,它不仅可使CAD系统具有交互式绘图功能,还具有自动绘图的功能。参数化设计目前己成为CAD中最为热门应用技术之一,能否实现参数化已成为评价CAD系统优劣的重要技术指标。因为它更为符合和贴近现代CAD中概念设计以及并行设计的思想,设计开始工程设计人员可快捷草拟产品的零件图,通过对产品的形状及大小的约束最后精确成图。同一系列产品的第二次设计可直接通过修改第一次设计实现,设计参数不但可以驱动设计结果,而且影响产品的整个开发周期,设计参数也可以来自于其它系统。除此之外,参数化设计还能够使设计人员在设计的同时实现参数化建库,极大地方便后继设计工作。总之,参数化设计以及建库工具的研究对进一步提高设计和绘图的效率及柔性具有十分重要的意义,利用参数化设计技术开发的专用产品设计系统,可使设计人员从大量繁重而琐碎的绘图工作中解脱出来,可以大大提高设计速度,并减少信息的存储量。
自从以PTC公司的Pro/Engineer为代表的基于特征造型的参数化设计(Parametric Design)系统问世以来,在此基础上实现机械设计的自动化已经变得切实可行。参数化设计技术是计算机辅助设计技术的一次巨大的飞跃,它也是实现特征造型技术、全相关和系列化设计的基础。目前先进的基于特征的三维CAD造型软件,如Solidworks、SolidEdge、UG等系统大部分实现了参数化设计。

二、基于SolidWorks的参数化设计
三维模型的参数化设计是通过改动图形的某一部分或某几部分的尺寸,或修改己定义好的零件参数,自动完成对图形中相关部分的改动,从而实现对图形的驱动。它以约束造型为核心,以尺寸驱动为特征。在SolidWorks中实现参数化设计归纳起来有两类方法:
1、SolidWorks软件本身提供的参数化造型方法
SolidWorks软件本身提供的参数化造型方法包括方程式驱动,系列零件设计表,配置,库特征这些功能。下面分别介绍如下:
1)库特征
SolidWorks系统将常用的、具有典型几何特征的模型预定义20多个library feature,如圆孔、键槽、螺母等,将它们放在系统的palettefeatures文件夹中供用户使用,用户还可以根据需要自已定义Libraryfeature。Libraryfeature是带有属性的几何模型,用户可将libraryfeature插入零件中。将libraryfeature插入零件后,可使用与编辑任何SolidWorks特征的相同方法来编辑库特征,也可以通过修改定位尺寸将库特征移动到目标零件上的另一位置。
2)方程式驱动
零件或装配体的所有尺寸有唯一的名称,方程式驱动就是使用尺寸名称作为变量,在同一零件或不同零件的相关尺寸之间生成方程式,若某一尺寸变动之后,与之相关的尺寸都会根据方程式作相应的变动。在建立标准件库时合理使用该功能可以减少尺寸数量,从而减少数据库的数据量,同时使数据更加准确,不易出错。
3)系列零件设计表
对于同一类标准件,使用系列零件设计表功能,只需建立一个原始零件,然后该零件的其他形式便可利用该功能来制作。也就是使用该功能可建立零件的不同配置,实现参数化,双击任意配置名,都会得到一个拓扑结构相同而规格不同的零件。
4)配置
在实际设计工作中,经常用到标准件,如果把这些标准件逐个设计后保存,工作量大,管理起来方便。SolidWorks软件在零件设计模块中提供了一个非常好的配置功能,这个功能允许在单一的文件中对零件或装配体生成多个设计变化;使用时只需选择其中任意一个配置,就可以得到想要的零件或装配体。配置提供了简便的方法来开发与管理一组有着不同尺寸、零部件、或其他参数的模型。
2、利用SolidWorks提供的API函数进行参数化设计
SolidWorks提供了丰富的API函数用以二次开发,开发者通过编程建立用户界面,系统通过用户界面接受用户的参数输入与指令输入,通过API函数实现零件造型,尺寸驱动等一系列自动化工作,使用一种交互的,程序的方式实现参数化设计。
根据模型的复杂程度,又可将二次开发方法分为以下两类:
1)尺寸驱动
对于较为简单的模型,参数定义关系较为简单,可以首先在三维设计软件中模板,将主要的驱动尺寸以参数的形式存入数据库。这样,我们在设计相似件时,只需要选定相应的标准件模板模型,然后给定设计参数,由程序打开模板文件,调用三维设计软件API函数将用户输入的驱动尺寸值替换模板文件中的原始尺寸,重建模型函数即可得到用户所需的标准件。如图1所示程序流程图显示了在SolidWorks下尺寸驱动的流程。
图1尺寸驱动流程图
由于目前基本上所有的商业CAD软件本身均带有这种功能,因此,单独对于某个零件采用尺寸驱动法进行二次开发的意义不大,目前主要是在针对某类系统的开发(如模具设计系统)上,为保持系统的整体性而使用这种开发方式。
2)程序建模
对于复杂的零件,其模型是建立在复杂的数学模型基础上的,模型中特征的创建需要进行较为复杂的运算,很难用有限个驱动尺寸来驱动整个模型,显然这样的模型不适合使用尺寸驱动的方式进行二次开发。
因此,对于复杂模型的建立,并不能采用尺寸驱动,仅仅通过参数的改变而创建新的零件模型,而是在二次开发程序中根据需要调用三维设计软件中相应的特征绘制函数,通过程序代码来实现特征的创建,从而得到需要的模型。以下为创建一个特征的主要流程:
(1)获得ISldWorks接口指针。
(2)创建新的模型文档,获得IModelDoc2接口指针。
(3)获得IFeatureManager接口指针。
(4)选择绘图平面,调用IModelDoc2接口方法创建草图轮廓。
(5)调用IFeatttreManager接口方法创建需要的特征。

三、利用VB对SolidWorks进行二次开发
为了方便用户进行二次开发,SolidWorks提供了几百个API(Application Program Interface,应用程序接口)函数,这些API函数是SolidWorks的OLE(ObjectLinkingand Embedding,对象的嵌入与链接)或COM(Component ObjectModel,组成对象模型)接口,用户可以使用VB\VBA\VC、13elphi等高级语言对SolidWorks进行二次开发,建立适合用户需要的、专用的SolidWorks功能模块。M SolidWorks支持OLE标准,完全实现了OLE自动化。作为一个OLE服务器,SoHdWorks提供了大量的OLE对象,以及这些对象所拥有的方法、属性和事件,用户通过在应用程序中对这些OLE对象及其方法和属性的操作,可以在自己开发的应用软件中实现诸如生成直线、构造实体、检查曲面参数等几乎所有的SolidWorks软件的功能。以下图2所示是SolidWorks All的部分对象。
图2 SolidWorksAPl对象梗概
任何支持OLE(对象的链接与嵌入)和COM(组件对象模型)的编程语言都可以作为SolidWorks的开发工具。SolidWorks二次开发分两种,一种是基于自动化技术的,此种技术只能开发EXE形式的程序;另一种开发是基于COM的,这种技术可以使用最多的SolidWorksAPI(运用程序界面)。
SolidWorks提供了一个非常有用的工具,那就是宏录制。宏是一系列命令的集合,相当于DOS下的批处理及AutoCAD中的脚本文件。设计者可以先录制在SolidWorks中执行的操作,其中宏所包含的调用相当于使用用户界面执行操作时,对API的调用。
通过记录宏和交互式的执行任务,可以在所需的代码上获得命令和语法上的飞跃。在写任何代码前,都是记录宏来用作程序的基础。即当向程序添加功能时,返回到SolidWorks,记录添加的宏。然后剪贴和粘贴记录的宏到代码中,这样做,即使对最先进的程序也是有益的。
由于宏录制下来的是VBA代码,其与VB语法基本一致,因此可以稍作修改就可CoPY到VB中程序中直接使用。而如果选用VC或别的编程工具,还需先进行语法上的转换才能使用。这是利用VisuaiBasic对SolidWorks进行二次开发的天然优势,因此本文选用Visual Basic作为系统的开发语言。
用VB进行二次开发时,首先应用记录宏(【工具】一【宏录制】一【工具】)来获得程序头部和应用程序的代码,将这些源代码COPY到VB开发环境中,然后在这些代码基础上做必要的修改以达到预期功能的目的。在任何情况下,开发者写的代码都应该类似于由SolidWorks的宏工具所产生的代码。


////////////////////////////////////////////////////////////
力华转子泵网
电话:0575-83539901
传真:0575-83534469


友情链接:    彩票登陆   万游彩票公司   彩票登陆网址   彩票登陆计划   彩票登陆