虚拟环境:虚拟环境下的产品快速装配建模
内容提要:本文提出了虚拟环境中“堆积木”式的快速产品装配建模方法,使设计人员可以方便地进行结构设计、修改,专注于产品功能的实现。与此方法相适应,本文随后介绍了配合约束的识别方法,提出了“零件偏置体”的概念以便提高识别效率,并以关系图的方式记录识别到的配合约束关系,最终形成约束驱动的产品装配模型,从而有力地支持Top-down设计过程中装配体的演化。
0.引言
装配模型是新兴的虚拟产品开发研究中的重要内容。据报道,波音777的开发完全是在虚拟环境下进行的。零件的详细设计固然重要,但是如果没有强大的装配模型和装配建模工龄的支持,就不可能一次设计、制造成功一个具有几十万个零部件的庞然大物,并且极大地缩短开发周期和节约开发成本。
然而,现有的CAD系统中只有为数不多的具有一定的装配功能。它们能够支持零件详细设计后的零件装配,Bottom-up设计过程,并能完成一些相关的操作,如干涉检查、装配体爆炸图生成等等。但它们都或多或少有一些缺陷,除了不能支持自顶而下(Top-down)的设计过程以外,它们所支持的装配建模也都需要设计人员交互的给定配合构件之间的配合约束关系(如图1所示),然后由系统自动计算构件的转移矩阵,并实现虚拟装配。然而,交互给定构件之间的配合约束关系不仅费事,并且当构件之间的配合较多时,也十分枯燥,倒不如象“堆积木”那样直接、方便。并且“堆积木”方式的建模也符合设计初期的状况。因为在设计初期,零件的大致形状虽然可以确定,但尺寸等参数还需依赖装配情况而定。因此零件的设计是按其装配状态进行的(这与装配图的设计过程是类似的)。这时如果还要把配合零件分离开以便给定配合关系,未免太不方便。并且在约束指定过程中也可能出错,结果也可能并非想象,如出现多解情形。现有的CAD软件大多支持“堆积木”方式,即支持相对于目标对象的平移、旋转操作,且勿需指定数值。此外,虚拟现实技术的出现和逐步成熟,使得在虚拟环境下可以采用直接3D操作技术,轻松实现产品的虚拟装配。
但是,“堆积木”方式或“直接3D操作”生成的“装配体”由于构件之间不是以配合约束关系联系在一起的,因而不支持设计后的约束驱动修改。本文的目的是对上述的装配建模过程予以支持,在设计人员“堆积木”的同时,由系统完成配合约束的识别,并以约束关系图的方式记录,且在Top-down设计演化的过程中动态地维护该约束图,使设计人员可以随心所欲地直接操纵装配体,从而有力地支持虚拟环境中的产品快速开发。
图1 装配建模中的约束指定
1.配合约束关系的识别
各种文献给出了多种配合约束的分类,但通过对实际装配体设计的考察,可以概括出如下三类基本的装配约束:面贴合(mate)及等距偏离(mate offset)、对齐(align)及等距对齐(offset)、定向(orient)。值得指出的是,上述三类基本配合约束中,以“贴合”最为常见。
上述约束关系是面向工程设计习惯的,本质上可以归结为点、线、面之间的关系。要识别约束,首先要对约束对象进行数学表达。作为最基本的对象,点用X、Y、Z三个坐标表达;线则用基点和方向矢量表达(方向矢量代表的方向为线的正方向);平面用基点、指向实体外部的法失及边界表达;圆柱面用基点、直径、轴矢及高度表达。
由于贴合是装配体中常用的约束类型,故下面以贴合关系为例探讨配合约束的识别算法。
平面贴合约束判定可以分为三个过程,即(1)面的类型判别,(2)平面的共面判别,及(3)平面的重叠判别。由于在零件信息中存有面的类型信息,因此面的类型判别只是面的属性匹配而已。
如图2所示,设两个平面的单位法失分别为n1、n2、p1、p2分别为两个平面的基点,则共面判别可通过检查下列两式实现:
n1=-n2 (1)
n1· p1p2=0 (2)
平面的重叠判别有现成的算法,在此不再多述。
对于圆柱面的贴合关系,可类似地识别。其它配合关系的识别较麻烦,暂无有效算法。
约束识别中有两个主要问题,一是如何提高算法的效率;二是约束有效性的判别。
为了减少装配约束识别过程中待检查的零件个数,本文提出“构件偏置体”(component offset volume)的概念。“构件偏置体”相当于构件空间的一个领域,它是将构件的每个表面沿其法线方向偏置而得到的实体。偏置在很多3维建模软件中均可轻松实现(如UG)。这样,只有当前工作区中与构件偏置体相交的零件才列入检查范围,因此在零件数量较多时可以大幅度地减少计算量。显然偏置距离越小效果越好,但需大于建模误差。
约束结果有效性的判别问题的存在原因如下:
(1)同一约束在某些条件下有可能形成多个配合结果,如果对于同一约束多次定义,会导致过约束现象(零件参数修改时);
(2)约束识别是事后进行的,因此当装配体结构较为复杂时,则难免会有误识别,把偶然因素造成的配合当成设计者的意图;
如图1所示,由
于结构设计上的偶然因素,可能会使得在给定零件P1的两个圆柱与零件P2的孔配合的同时,零件P1上的面f12与零件P2上的面f22有实际上的对齐(align)关系。此外,当设计中偶然使f11和f21接触时,本文的算法也会识别到该“贴合”的存在,显然这也不是设计本意。这些识别结果均予以剔除。
为解决这一问题,本文采用动态的识别、维护策略,即若用户没有在规定时间或在某一阶段性设计过程中移动构件而引起约束的改变,则系统保持这些约束识别结果不动;反之,则说明识别结果并非设计意图或设计意图发生改变,需在约束网络图上删除。如果一个约束识别结果对构件的剩余自由度没有影响,则不予记录。这一问题的彻底解决可采用人机交互和约束、自由度分析相结合的方法。
图2 平面贴合判别
2.约束关系的维护
Top-down的装配建模过程是个由粗入精的过程。建模过程中识别到的约束也需要有一种与此相适应的方法予以记录和维护。本文认为关系图有内在的层次性和可扩展性,因而用来记录和维护约束集是十分恰当的。为了能够方便后续的装配规划等过程,本文对关系图中表示构件之间的配合关系的连线上附加相对自由度的信息。图的节点所表示的对象可以是单个的零部件、子装配体,甚至可以是一些有逻辑联系的构件的实例(instance)集,当然也可以指深入到零件内部的特征。连线表示零件之间的配合关系,当然也可记录其它关系,如功能关系、特征附着关系等等。此外,我们还在连线上附加了相对自由度的信息,以便进行干涉检查、装配规划、爆炸图生成等等。
装配模型中的装配约束关系从总体上体现了产品的功能,而且约束下层零构件的结构设计,如参数确定等。由于其内在的层次性和可扩展性,因而能够支持Top-down设计过程中零件结构的演化。装配体的约束图形成之后还可以直接用于装配体的推理和分析。但是,毕竟图表示有许多缺点,直接应用图表示进行分析,其算法会十分费时。因此,在各种后期应用中,还是应该将图表示转换为树表示。
本文在以UG为虚拟平台的模具快速装配建模原型系统中已初步实现了其功能。
3.结论
本文为了适应产品快速建模的要求提出了虚拟环境下“堆积木”式的装配建模方式,并提出了相应的配合约束识别方法。这种方法得到的约束模型肯定是有解的,且解也符合设计意图。从要求用户给出构件的转移矩阵,到用户给出约束由计算机计算出转移矩阵,一直到本文的用户“堆积木”的同时系统识别约束,装配建模研究的发展使得建模方法对用户越来越友好。但是应该指出的是,约束识别毕竟有一定的难度,且较适用于配合关系多为“贴合”的特定场合,如模具等,因此完整的建模环境应该能够同时支持多种方式。随着虚拟现实技术的进一步研究和应用,装配建模技术定会受到更大影响。
--------------------------------------------------------------------------------
主要参考文献
[1]. Sankar Jayaram, Hugh I. Connacher and Kevin W. Lyons, Virtual assembly using virtual reality techniques, CAD, Vol. 29, No. 8, 1997, pp.575-584.
[2].Kunwoo Lee, DAVID C Gossard. A hierarchical data structure for repressenting assemblies: part 1, CAD, Vol. 17 No. 1, 1985, pp15-19.
[3].Ram Anantha, Glenn A Kramer, Richard H Crawford. Assembly modeling by geometric constraint satisfaction, CAD, Vol. 28 No. 9, 1996, pp707-722.
[4].Roy, C R Liu. Establishment of functional relationships between Product Components in assembly database, CAD, Vol. 20 No. 10, 1988, pp570-580.
[5].Jin-Kang Gui, Martti Mantyla. Functional understanding of assembly modeling, CAD, Vol. 26 No. 6, 1994, pp435-450.
[6].DAVID Neville Rocheleau, Kunwoo Lee. System for interactive assembly modeling, CAD, Vol. 19 No. 2, 1987, pp65-72.
[7].Kunwoo Lee, Guy Andrews. Inference of the positions of components in an assembly: part 2, CAD, Vol. 17 No. 1, 1985, pp20-24.
上一页12