您的位置:网站首页 > CAD新闻

SOLID EDGE平台下的零件库设计方法及其应用

时间:2011-02-25 10:06:15 来源:

  1. 引言

  计算机辅助设计即CAD技术已经成为企业提高创新能力,提高产品开发能力,增强企业竞争能力的一项关键技术。大力推广应用CAD技术、开展“CAD应用工程”是我国“八五”和“九五”期间的重要项目。通过多年的推广和应用,目前工程技术人员和设计人员正在积极从二维CAD向三维CAD转变。为此我们开展了自然科学基金项目《基于Solid Edge面向先进制造的机械产品开发与设计技术研究》的研究,试图在三维CAD软件Solid Edge[1][2]的基础上进行二次开发,为中小型制造企业提供经过实践检验的机械产品开发与设计技术。研究中我们发现,在应用三维CAD技术进行机械产品设计时,往往将大量的时间和精力花在大量标准件、通用件、外购件以及企业内部系列化产品等的设计上,其工作重复而繁琐,大大延缓了产品开发周期,不能充分体现CAD技术的优越性。为此本文在Solid Edge的基础上,就如何对标准件、通用件等设计参数化零件库,作了一定的研究,并提出了几种不同的实现方法和策略。

  2. 零件库设计方法

  基于Solid Edge的零件库设计方法主要有以下几种:①采用Solid Edge本身的零件族功能;②采用Excel VBA技术操纵Solid Edge的变量表;③采用VB、VC编程技术操纵Solid Edge的变量表;④采用VB、VC编程技术操纵Solid Edge的特征造型过程。在设计零件库时,应根据零件的复杂程度,零件的相似性、零件库零件数量等因素选择不同的方法,下面就不同设计方法的特点、关键技术及其应用情况等作对比分析。

  2.1 采用Solid Edge本身的零件族功能

  采用Solid Edge本身的零件族功能设计零件库,就是通过手工操作Solid Edge设计零件库。其一般步骤是:①找出一个能集中零件库中不同零件所有功能要素的复合零件,并运用Solid Edge参数化特征造型技术建立该零件的三维模型;②打开复合零件的变量表和复合零件的特征管理器(EdgeBar),在特征管理器中,打开零件族功能(Family of Parts),并点击新建(New)、输入零件库零件名称;③在变量表中选择需要控制的特征尺寸变量,并在零件族对话框的变量(Variables)栏中点击“添加变量”(Add Variables)将所选变量的名称和数值都加入到零件库中,并修改尺寸;④用鼠标在实体零件中选取要抑制的特征,在零件族中的“被抑制特征(suppressed features)”栏点击“添加特征(Add Feature)”按钮,将需要抑制的特征抑制(隐藏)。⑤如此反复操作,得到一系列零件,并保存,如图1所示;⑥以后需要调用零件库中不同零件时,只需打开该复合零件,并零件族对话框中选择不同的零件名即可[3]。

  

  图1 采用Solid Edge零件族功能设计零件库

  在Solid Edge中利用零件族功能设计零件库,用户无须编程,即可得到一个简单的零件库。但是该方法操作较为烦琐、设计数据较为散乱、设计效率低。

  该方法一般用于零件库中零件数量较少、零件结构较为复杂、控制变量的数量较少,且各变量之间的关系较为简单的场合,如企业中某几种变型产品零件库的设计。

  2.2 采用Excel VBA技术操纵Solid Edge的变量表

  为了便于零件库中各个零件数据的集中管理,简化零件库的手工操作,提高设计效率,这时可采用该方法来设计零件库。其一般步骤是:①运用Solid Edge参数化特征造型技术建立复合零件的三维模型,并整理其变量表,建立变量之间的约束关系,确定主控变量;②用Microsoft Excel创建复合零件数据表用于记录复合零件模型中用到的变量及其不同的取值组合,每一行数据就是零件库中某一个零件各尺寸参数的值。当用户选定该主控尺寸值所在的行,则其它尺寸的值即可确定,如图2所示;③在Excel VBA编程环境中,新建一个Excel宏,编写VBA程序代码来驱动Solid Edge变量表。涉及到的主要程序代码有:用Set Sel = Application.ActiveCell及SelRow = Sel.Row获得当前Excel的激活行SelRow;用Set “变量值”=Sheets("Excel表名").Cells(SelRow,n).Value方法获取当前Excel激活行SelRow的第n列数据;用Set objApp = GetObject(, "SolidEdge.Application")函数来调用Solid Edge对象objApp;用Set objvars = objApp.ActiveDocument.Variables方法获取该复合零件变量表中的所有设计变量;用Call objvars.Edit("变量名", 变量值)方法修改变量表中相应变量的值,Solid Edge便会自动更新复合零件的三维模型;④使用时,先打开Solid Edge复合零件,打开相应的Excel数据表并选择其中某一行数据,然后运行Excel宏,这时Solid Edge就按指定的尺寸数据更新复合零件三维模型得到零件库中的某一个零件,如图2所示为我们所设计的夹具元件库。

  

  图2 采用Excel VBA技术设计零件库

  该方法通过Excel VBA技术来驱动Solid Edge变量表,无需设计专门的数据管理程序,零件库数据管理方便,程序设计简单清晰,但是使用时需要同时运行Excel,零件库的运行、管理、维护不方便。该方法一般用于零件库中零件数量较多、零件结构复杂、零件数据较多的场合,如企业通用件库的设计。

  2.3采用VB或VC编程技术操纵Solid Edge的变量表

  为了便于零件库中各个零件数据的集中管理,减少零件库的手工操作,提高设计效率,这时可采用该方法来设计零件库。其一般步骤是:①运用Solid Edge参数化特征造型技术建立复合零件的三维模型,并整理其变量表,建立变量之间的约束关系,确定主控变量;②用VB或VC编程,获取复合零件的各个变量。以VB程序为例,一般采用Set objApp = GetObject(, "SolidEdge.Application")或Set objApp = CreateObject("SolidEdge.Application")函数来调用或创建Solid Edge对象objApp,并采用Call objApp.Documents.Open(FileName:=“复合零件文件名”)方法打开复合零件的三维模型,用Set objvars = objApp.ActiveDocument.Variables方法获取该复合零件变量表中的所有设计变量;③设计清晰友好的用户图形界面,管理零件库中各个零件的设计数据,如图3为某法兰盘类零件库界面;④在程序中用Call objvars.Edit("变量名", 变量值)方法修改变量表中相应变量的值,Solid Edge便会自动更新复合零件的三维模型[4][5]。

  

  图3 采用VB操纵Solid Edge变量表设计零件库

  该方法通过VB或VC来驱动Solid Edge变量表,程序设计简单清晰,用户界面友好,便于设计数据的管理,但所能控制的主控变量不能太多,否则会引起

  三维模型的异变。该方法一般用于零件库中零件数量较多、零件结构复杂、控制变量的数量较少,且各变量之间的关系较为简单的场合,如组合机床通用件库(多轴箱、主轴等)的设计。

  2.4 采用VB、VC等编程技术操纵Solid Edge的特征造型过程

  上述几种方法在设计零件库时均需要事先设计复合零件的三维模型,使得零件库运行时的独立性较差,如果复合零件的三维模型设计不当,当改变数据时会引起零件三维模型的异变,零件库中零件变化不能太大,数量较少。如果零件库中零件数量较大,且零件的结构不太复杂,这时可采用VB、VC等编程技术操纵Solid Edge的特征造型过程,形成一个独立的零件库软件。通过该方法设计零件库的一般步骤是:①仔细分析零件库中各零件的结构特征,优化零件在Solid Edge环境中的造型方法;②运用VB或VC设计零件库的图形用户界面;③用VB或VC编程对零件库数据进行管理;④用VB或VC编程,根据零件库零件数据控制Solid Edge的特征造型过程,从而在Solid Edge中得到所需零件[6]。例如图4为我们所设计的紧固件标准零件库的一部分。

  

  图4 紧固件标准零件库

  该方法通过VB或VC来控制Solid Edge特征造型过程,不需事先建立复合零件,零件库的独立性较高,便于零件库的运行、维护,但程序设计较为复杂,一般用于零件库中零件数量较多、零件结构较为简单的场合,如标准零件库的设计。

  3. 设计零件库的几个关键技术

  3.1 复合零件的特征造型

  在采用上述前三种方法设计零件库时,最为关键的是复合零件的三维造型问题,在复合零件造型时必须考虑一定的造型策略,否则在改变参数时会引起三维模型的异变,一般应注意以下几点:①三维CAD软件Solid Edge在进行特征造型和特征修改时都必须有一个基本特征,其它特征都是在该特征的基础上通过填料或除料来实现的,所以该基本特征是不能被删除或隐藏的,否则其它特征就无法存在。因此,在复合零件造型时,必需合理选择基本特征,一般应选择零件库中每个零件都具备的特征。②在复合零件的变量表中,应对每个变量之间的关系通过变量表公式加以确定,尽量减少主控变量的个数。③在Solid Edge中进行特征造型时,尽可能做到关联造型。为此,在特征造型时,基本特征的基准可选择Solid Edge的基准参考面,而其它特征在造型时均应以基本特征或相关特征的特征面、相切面、平行面等相对基准作为特征造型基准,如图5所示。

  

  图5 基准面的选取

  3.2零件库的数据管理

  在设计零件库时需要对零件库的零件参数进行管理,其方法主要有以下几种:①零件数量较少(5~8个以下),可直接保存在上述的Solid Edge零件族中;②零件数量较少(5~20个),数据结构简单,可通过编程在VB的下拉式列表框中保存零件库数据,如图2所示,也可在VB程序界面中插入DataGrid对象来管理零件库数据,如图6所示为我们设计的组合机床轴类通用件库数据管理界面,还可采用上述直接用Excel驱动变量表的方法管理零件库数据;③零件数量较多(20个以上),且数据结构较为复杂,这时可采用数据库技术管理零件库数据。例如在我们设计的紧固件标准件库中,采用了与VB的结合比较紧密Microsoft Access建立零件数据库,在VB中通过ADO(Microsoft ActiveX Data Objets)控件采用Jet数据引擎,即Micrisoft.Jet.OLEDB.4.0来链接数据库,从而实现VB程序对数据库数据的读取。

  

  图6 组合机床轴类通用件库

  4. 结论

  本文在Solid Edge的基础上,以实例提出了几种不同的零件库设计方法及其关键技术,它有助于解决大量标准件、通用件、外购件以及企业内部系列化产品等的三维设计问题,有助于提高企业的设计效率和设计水平。