多种CAD环境下的标准件参数化方法
2011-06-01郭静静杜宝江
郭静静,杜宝江,马 群,魏 雄
(上海理工大学虚拟制造技术研究院,上海 200093)
我国生产的机械产品中,有30% ~70%的零件,是标准件或者常用的非标准件,如螺栓、螺母、轴承、弹簧、齿轮等[1]。同种类型的标准件,通常都具有相似的形状,仅尺寸不一样。在设计过程中,若对这些标准件进行反复建模,就会造成人力物力的浪费。虽然在常用的三维 CAD 软件中,如 AutoCAD,UG,CATIA,Solidworks,Pro/Engineer都会自带标准件库,而这几种建模软件自带的标准件库有些只有少部分标准件如CATIA等,而有些则没有符合我国国标的标准件 Solidworks[2]。况且有些企业又有各自的公司标准。虽然各软件都具有一定自带的建立标准件库的方法,比如Pro/Engineer通常应用组表方法建立标准件库,UG应用部件族的方法,CATIA中的CATALOG库方法等[3]。但这些方法都是在特定的软件环境中使用,不具有通用性[4]。对于一些公司,在设计不同的机械产品需要根据实际情况应用不同的软件,而跟其它公司合作时,可能会根据对方提出的要求应用相应的软件。如果有一种建立标准件库的方法,能应用在多种三维CAD软件下,那么在产品设计中,就可以避免大量的重复劳动,从而可以缩短了设计的周期,同时节省了设计成本。
1 整体思想和功能框架
文中希望探索一种能建立一个标准件信息库和一种标准件对应一个系统应用程序的基础上,实现在不同种CAD软件下建立的标准件模型,通过网络调用公用信息库中的原有参数信息实现参数化的方法,以节省每个软件在应用标准件库时,都要建立标准件信息库,以满足目前企业对产品的快速设计需求。而且由于本系统具有一定的通用性,对于设计者来说,一些非标准的零部件的建模也适用[5]。
根据实际应用需求进行分析,开发了多种CAD环境下标准件参数化设计系统。系统具有以下功能模块,其中工程信息添加模块是对标准件相关信息的添加,可根据需要进行确定。
根据系统功能,给出相应技术实现与应用流程如图2所示。
2 基础模型和尺寸库的建立
2.1 基础模型库的建立
基础模型是在CAD软件下预先制作的三维模型,在制造基础模型前,把零件的驱动尺寸建立参数,如CATIA软件下的参数工具,在里面建立驱动尺寸的参数,然后在模型的制作过程中,把图形中的尺寸按照公式依次与驱动尺寸建立联系。基础模型建立完成后,按产品序列规定的图号文件储存在数据库中,设计人员可以在此基础上通过改变一定范围下的参数,生成新模型。标准件,按企业常用的零件标准大类建立基本模型库,按照标准件号进行索引分类[6]。
2.2 信息库的建立
零件模型中的尺寸,包括驱动尺寸,关联尺寸和辅助尺寸。
(1)驱动尺寸是指影响图形的主要特征的尺寸。在标准手册中,根据不同型号,有相应的数值,而且标准件的尺寸一般有特定的字符表示,在建立信息库,按照手册中给定的参数名称命名,此处,设驱动尺寸为Ai,0<i≤N在库中定义为字符串类型。
(2)关联尺寸Bj, 0<j≤M,它在模型的制作中已经定义它与驱动尺寸的方程公式。驱动尺寸发生改变时,它会随之发生改变,而且对于标准件,因为它的形状相似,一般驱动尺寸与关联尺寸的关系一定,所以在信息库中,就不再对关联尺寸建立相应的参数信息。
(3)辅助尺寸CS,0<S≤K指在图形设计中虽然不会影响图形的整体形状,但也不可缺少,比如在标准手册中未定义的倒角圆角尺寸,退刀槽尺寸等,在手册中未给定数值,同时没有必要随驱动尺寸而变化。辅助尺寸信息没必要建立在尺寸信息库中。零件的驱动尺寸在信息库中如表1所示,表中第一列代表这个类型零件的具体零件型号,如本表代表螺栓C040133具体的型号01220,它并与本行其他尺寸一一对应,除第一行,其他每一行,代表一组标准件的一组参数尺寸,相对应一个模型零件,具体构建如表1所示。
表1 信息表建立模式
3 零件参数化程序设计
在设计终端上使用零件参数化生成程序,使用采用面向对象编程语言Visual Basic编程,其功能由以下几个模块组成。
3.1 CAD软件连接程序
设计人员在Windows系统的终端上打开所使用的CAD软件,连接程序自动检测CAD软件,并建立参数化控制程序与CAD软件之间的连接关系,其流程图如图3所示。
图3 程序与软件连接流程图
图中,循环连接尝试,使用预先定义的i,常用的CAD软件在Windows系统中的注册表名称列表控制变量 CAD Reg[i],其中i=1,2,…,N,N表示系统可能运行的CAD软件的最大个数。通过Activity X连接机制依次做连接尝试。CADAPP=getobj(CADReg(i)),部分常用的CAD注册表项,如表2所示。
表2 常用CAD软件注册表名称
连接成功与否,可通过VB的ERR系统变量的值判断。
3.2 打开模型文件
连接CAD软件成功,并可打开模型窗口,程序根据提供基础模型号,在已有产品的目录树和输入式条件检查功能中找到模型库的基础模型。一旦查询到基础模型文件,便可以使用VB语句,调入到CAD软件中,并立即储存新模型文件。
3.3 参数化模型生成
基础图形被调入后,相应的驱动参数也被显示出来,表中的所有数据都能够在此图形上不改变结构的情况下可以改变的尺寸信息。然后程序根据名称连接到尺寸信息库中,查找该文件的尺寸信息表,信息表中每行代表一种可能的尺寸信息。通过选择所需的数据行来重构图形。需要对图形的尺寸进行识别,然后对尺寸变量进行赋值,最后通过更新来达到重构。
(1)模型尺寸变量的识别。
尺寸表第一行的字符,如表1所示,记录了每一个尺寸的名称,它与模型中的尺寸一一对应。一旦名称相同,就可以建立联系,以便进行进一步赋值。
(2)尺寸驱动与图形更新。
按尺寸信息库中的行,自左到右,依次给驱动尺寸L(i)进行赋值。
对于表格中的确切数值,驱动尺寸去掉第一个类别字符后,后面的数值即可直接赋值给尺寸变量。
对可改变数值的尺寸,比如一些模型的长度,可以根据范围和需求自定义,即类别码A后有“,”的,会自动弹出对话框,让用户输入尺寸值,并按“下限,上限”规定校验输入值的合法性。
(3)赋值完成后,应用Update语句更新图形元件即可。
3.4 工程信息的导入
工程信息表由选择图形的相同文件名相对应的工程表提供,设计者可选择相应的工程信息表格单元,数据被赋予给图形中的相应参数,如材质、重量等。
4 应用实例
利用上述技术和系统,对在CATIA中做出的螺栓模型进行了参数化。
(1)螺栓的二维图如图4所示,这个模型中的A,L,U,M,TD,A,B是主要尺寸零件手册都已给定了不同尺寸的参数。但对于尺寸E,U,R可以作为关联尺寸,既可以用驱动尺寸的公式表示也可以作为定值,作辅助尺寸处理。
图4 螺栓的二维图
(2)然后在信息库中建立数据信息表,驱动尺寸的数据录在给定的零件名称数据库中,如表1所示。
(3)打开CATIA软件,VB程序通过识别连接,打开模型窗口,并根据程序中提供的零件号,通过程序调出数据库中的数据信息表,利用程序段A.Value=Val(DataGridView1.Rows(i).Cells(“A”).Value.ToString().Trim())把表中的A尺寸赋给模型中的A,然后利用其它程序把表中驱动尺寸的值赋给模型并更新,即可得到新零件。
本项技术,已经应用到用UG软件中,用以建立印刷机虚拟样机中标准件,以及用CATIA建立的飞机标准件库。
5 结束语
通过对多种CAD环境下的标准件参数化系统的开发,为企业产品设计,节省了设计时间,缩短了设计周期,提高了设计效率,同时也为快速设计提供了新的思路新和方法。
[1]万久团.黄翔.基于UG的三维参数化标准件库的建立[J].机械制造与自动化,2002(6):82 -84.
[2]张信群,贾会星.在Solid Works平台下螺纹紧固件类标准件库的建立[J].现代机械,2010(4):63-66.
[3]杨雪春,王海彬,董懿琼.基于Pro/E建立标准件库的方法[J].机床与液压,2010,38(2):26 -28.
[4]侯守明,徐文鹏,刘永贤,等.三维参数化零部件库建模方法研究[J].计算机工程与应用,2010,46(29):221 -224.
[5]魏华峰,郝泳.基于GBORB平台三维通用机械零件库系统的开发[J].机械设计与制造,2009(9):85-87.
[6]郑芳圃.三维参数化标准件库的研究与实现[J].计算机辅助设计与图形学学报,1999,11(3):218-220.
[7]姜建国,刘鹏程.任意形状图形对称展开的算法设计与实现[J].电子科技,1997,10(3):41 -44.