面向公差自动生成的装配信息提取与表示方法

2019-09-10 15:10黎泉兰自勉
河南科技 2019年23期

黎泉 兰自勉

摘 要:为了满足公差建模以及公差类型自动生成等公差设计的要求,需要从CAD造型系统中提取装配体的相关装配信息并进行表示。由此,本文提出了一种在SolidWorks软件中提取装配体的零件装配要素表面和装配约束的方法,用装配要素约束图和矩阵图表示零件之间或者装配要素表面之间的约束关系,并以集合形式表示装配要素表面和装配约束。最后结合实例进行分析,结果表明,该方法能正确提取和表示装配体的装配要素表面和装配约束。

关键词:公差自动生成;装配要素表面;装配约束;提取与表示

中图分类号:TP391.7 文献标识码:A 文章编号:1003-5168(2019)23-0011-04

The Extract and Represent Method of Assembly Information

Oriented to Tolerance Automatically Generate

LI Quan LAN Zimian

(Department of Physics and Mechanical & Electronic Engineering, Hechi University,Hechi Guangxi 546300)

Abstract: In order to meet the requirements of tolerance modeling and tolerance type automatic generation, the relational assembly information must be extracted from the CAD modeling system and represented. In this paper, a method of extracting assembly element surface and assembly constraint of assembly parts in SolidWorks software was proposed. The constraint relationship between parts or assembly element surface was expressed by assembly element constraint graph and matrix graph, and assembly element surface and assembly constraint are expressed by set form. Finally, an example was given to show that the method could extract and represent the assembly element surface and assembly constraints correctly.

Keywords: tolerance automatically generate;assembly feature faces;assembly constraints;extraction and representation

机械产品设计包括子装配体、部件和零件相互之间的装配。在装配过程中,装配体的公差设计不仅决定了机械产品的可装配性和装配质量,而且会影响产品的制造成本和使用周期。公差设计一直是制约计算机辅助设计/制造(CAD/CAM)集成的瓶颈[1],国际生产工程学会CIRP原主席Weill曾指出,CAD/CAM集成主要是公差信息的集成,如不加以解决,CAD/CAM将难以实现[2]。实现公差信息集成的前提条件是从CAD系统中提取必需的装配信息并进行表示,以使其满足公差建模及后续的公差类型自动生成等公差设计研究工作的需求。本文试图提出一种面向公差设计的装配信息提取与表示方法。

1 面向公差设计的装配信息

根据新一代几何产品规范(Geometrical Product Specifications,GPS)的分类,一个机械装配体可递归定义为子装配体、部件和零件相互之间的装配,而子装配体和部件又可进一步分解为零件。零件以其表面要素作为边界,而装配体中所有零件的要素又由零件之间的约束规定其状况[3]。对于同一个机械装配体,产品的功能要求不完全一样,不同的设计者根据自身的经验和要求,可能会将其分解为不同的零件,但无论如何分解,零件表面的几何要素都不會变化,即具有唯一性[4]。因此,公差建模和公差类型自动生成等公差设计中需要提取的装配信息主要包括零件装配要素表面和装配约束等。

2 装配信息的提取

机械装配体中部件和零件的实体模型可以在现今商业CAD造型系统中建立,本节主要研究用SolidWorks软件提取装配信息。SolidWorks是参数化三维CAD系统,其虚拟装配功能极其强大,通过定义零件要素与要素之间的关系来确定装配体零件之间的配合关系和自由度[5]。这种关系的定义简单、易于操作,用户完成对零件要素间关系的定义后,系统自动对零件进行装配,形成装配体,各个装配体又可以看作子装配体,再进一步装配成部件。

装配要素表面是一个零件模型和其他零件模型有着配合关系的几何表面,一个零件由多个面组成,但并非所有表面都与其他零件具有配合关系。零件的每个装配要素表面与其他零件的装配要素表面进行配合,彼此间存在装配约束,将相互之间存在装配约束关系的两个装配要素表面及其之间的装配约束定义为一个装配要素树。以图1的简单装配体为例,当建立起装配体所有零件之间的装配约束关系后,所有装配的要素树如图2所示。

大部分CAD系统采用零件之间的装配约束关系来表示装配,当所有零件在CAD系统中装配完毕后,使用API接口功能访问装配要素树则可获取所需的装配信息,采用Visual Basic与SolidWorks的API联合编程,可提取装配体的装配要素表面和装配约束,并存储在数据库文件中。

3 装配信息表示

联络图可以描述装配体零件之间的逻辑和物理接触关系。联络图是一个二元组:

[G=P,L]                                     (1)

式中,[P]为零件或装配要素表面结点的集合;[L]为零件之间装配约束关系的边的集合。

图的表示难以在计算机中进行处理,但使用图的矩阵形式则可以很容易处理这个问题。矩阵图可以用来表示零件之间的接触关系。为了使矩阵图中的相关信息能在计算机中进行表示和推理,在此定义,如果两个零件或者装配要素表面之间存在约束关系,则以1表示,否则以0表示。

在Kandikjan、Rachuri、Wang和Ameta等人研究的基础上,本文提出采用装配要素约束图、矩阵图和集合形式来表示零件之间或者装配要素表面之间的约束关系。

图3为一个包含4个零件[PA={Pi|i=1,…,4}]([P]表示组成装配体的零件中的一个)的简单装配实例(在本例中将机架D也当作一个零件)。首先,装配体被分解成4个零件,如图3(b)所示,接着用装配信息提取算法提取4个零件间的装配约束关系,获得的装配约束关系用装配要素约束图表示,如图3(c)所示,[ci(j)(i,j=1,…,4 但i≠j)]表示零件[Pi]和[Pj]之间的装配约束关系。通过分析可知,[ci(j)=cj(i)]。一般情况下,零件之间的装配约束关系为一对一、一对多或多对多等约束关系,这与机械装配的实际情况是一致的。

为了便于在计算机中实现装配体的公差建模与公差指标自动生成等,4个零件之间的装配关系用矩阵表示,如表1所示。

基于集合论,零件[Pi]的装配约束关系表示为:

[EACR(Pi)=∨j=14ci(j)/i∈(1,…,4)  ,  i≠j]          (2)

例如,零件P2的装配约束关系可以表示为:

[EACR(P3)=P1,P3]                                 (3)

机械产品的装配最终通过零件几何要素表面之间的配合来实现。为了建立各装配要素表面间的装配约束关系,零件需要进一步分解,可以明显看到,每个零件都包含一定数量的几何要素表面。本文只关注与其他零件存在配合关系的几何要素表面,并将其从零件模型中提取,表示如下:

[Pj=∨i=1mFi(Pj)/j=1,2,…,n]                       (4)

式中,[Pj∈PA];[Fi(Pj)]是零件[Pj]的第[i]個装配要素表面;[m]是零件[Pj]总的装配要素表面数。两个零件间的装配约束关系可以进一步分解为两个零件的装配要素表面之间的约束关系,表示如下:

[CPi(Pj)=∨k=1e(Fm(Pi),Fn(Pj))k/Pi,Pj∈PA,m,n  and  e∈(1,2,…,q)](5)

式中,([Fm(Pi),Fn(Pj)])表示零件[Pi]的第[m]个装配要素表面[Fm(Pi)]和零件[Pj]的第[n]个装配要素表面[Fn(Pj)]的装配约束关系;[k]表示两个零件装配要素表面之间的装配约束关系总数。

从式(3)可知,和零件[P2]存在装配约束关系的零件是[P1]和[P3]。将这三个零件分解获取装配要素表面,如图4(a)所示。

每个零件都是一个装配要素表面的集合,如式(6)至式(9)所示。

[P1=F1(P1),F2(P1)]                                    (6)

[P2=F1(P2),F2(P2),F3(P2),F4(P2)]               (7)

[P3=F1(P3),F2(P3)]                          (8)

[P4=F1(P4),F2(P4)]                             (9)

各个零件相互接触的装配要素表面的装配约束关系如图4(b)所示,从图中可建立起零件[P2]装配要素表面的约束关系矩阵图,如表2所示。

从表2的约束关系矩阵图可知,零件[P2]和[P1]的装配要素表面存在两对装配约束关系,同时零件[P2]和[P3]也存在两对装配约束关系。零件[P2]装配要素表面的装配约束关系可以表示为:

[CP2(P1)=(F1(P2),F2(P1))1,(F2(P2),F2(P1))2]                    (10)

[CP2(P1)=(F3(P2),F2(P3))1,(F4(P2),F2(P3))2]                     (11)

用上述方法获取装配体的装配要素表面和装配约束关系之后,可在计算机中存储并用于公差建模和公差指标的自动生成等公差设计研究中。

4 结论

通过研究CAD系统中装配体的装配要素表面和装配约束等装配信息的构成特点,提出采用Visual Basic与SolidWorks的API联合编程来提取装配信息,并给出装配要素表面和装配约束提取算法,结合前人的研究,提出采用装配要素约束图和集合形式来表示零件之间或者装配要素表面之间的约束关系。实例分析表明,所提出的方法能正确提取和表示装配体的装配要素表面和装配约束,所提取的装配信息可以在后续的公差建模及公差类型自动生成等公差设计研究工作中使用,为公差信息与CAD/CAM的无缝集成打下基础。

参考文献:

[1]曹衍龙.面向制造环境的公差稳健设计方法与技术的研究[D].杭州:浙江大学,2003.

[2]刘玉生,杨将新,吴昭同,等.CAD系统中公差信息建模技术综述[J].计算机辅助设计与图形学学报,2001(11):1048-1055.

[3]蒋向前.新一代GPS标准理论与应用[M].北京:高等教育出版社,2007.

[4]黎泉.装配体公差类型自动生成关键技术研究[D].桂林:桂林电子科技大学,2015.

[5]王哲兴.三维CAD系统中装配尺寸链提取及其实现技术的研究[D].杭州:浙江大学,2004.