PDM平台上的三维CAD通用集成框架

时间:2022-04-06 08:45:13

PDM平台上的三维CAD通用集成框架

摘要:构建了PDM和三维CAD软件集成的基本模型和集成框架。该框架通过一致的数据模型,能够灵活地集成不同的三维CAD系统和PDM系统。在数据模型的袁达上,采用了XML这种流行的易于扩展的技术方法;在集成框架设计上,采用了抽象x-7等成熟的设计模式,并提供了标准化的接口定义来扩展集成框架的功能。文章对集成框架的功能和具体实现方法进行了论述。

关键词:产品数据管理;三维CAD;集成框架;设计模式

0 引言

PDM(产品数据管理)可理解为产品及其相关数据的管理和过程控制的平台。近年来,在产品设计的过程中,三维CAD的使用逐渐增多,其数据类型成为了PDM管理的主要内容。PDM数据模型和三维CAD的数据模型存在很多相似的地方,但由于系统目标的不同,也存在很多差异。市场上各种三维CAD软件很多,如何在一个统一的平台框架下集成这些三维CAD系统,屏蔽各类CAD系统的差异,并且在各类三维CAD和PDM之间进行数据模型的匹配,是当前PDM需要重点研究和解决的问题。

1 PDM中三维CAD的集成功能

1.1 PDM中关注的主要三维CAD特性

三维CAD软件通过对零部件的三维造型,直观地表达了零部件的形状、物理特征以及零部件问的装配关系;通过三维仿真还可以模拟装配和加工的过程。这些都使三维CAD软件在企业的产品设计中起着越来越大的作用。

在PDM中,主要关注的是CAD图纸中表达的零部件结构及其属性信息。对于三维CAD而言,它们基本都提供了基于特征参数的零部件族的设计方法。在这些方法中,特征参数被提取到模型上,通过模型上特征参数的变化驱动三维图形,产生不同的零部件族成员。零部件成员及其特征参数的取值形成了一张二维表,通常被称为参数表。参数表直观反映了多个成员的不同特性。

通过三维CAD的投影可产生二维工程图。二维工程图用来下发到生产部门指导实际的生产作业。二维工程图和三维模型的关系需要在PDM的管理中得到体现。

三维CAD的仿真、干涉检查以及有关图形的特性,PDM无需进行管理。PDM只需能够存储三维CAD的文件,并最终通过调用三维CAD软件本身来给用户使用即可。

1.2 PDM和三维CAD的主要集成功能

由上文可知,PDM做为三维CAD的管理平台,其功能只要有:

(1)三维CAD文件的管理:

(2)从三维CAD提取零部件信息产生PDM中的零部件对象,产生产品结构树,并保持产品结构树和三维CAD中相关信息的一致性;

(3)零部件族和参数表的管理;

这些功能在系统集成中主要体现在:

(1)数据在两个系统中保存并保持同样的关联关系;

(2)由于信息在PDM和三维CAD中是冗余的,需要保持两者的数据同步和逻辑完整性。

下面对这两个方面进行阐述。

2 集成框架结构及构建

目前国内外流行的三维CAD的种类较多,如UG、PROE、SolidWorks、SolidEdge、Catia、Inventor等。这些三维CAD软件的功能特色相差较大,概念、数据模型和存储方式也不尽相同。从PDM的角度出发,首先必须抽象出它们的共同特征,形成统一一致的数据模型。在此数据模型基础上,建立通用的集成框架。

2.1 PDM使用对象模型来表达三维CAD结构

在PDM和三维CAD的集成中,首先要能够根据PDM的需要获取三维CAD的相关信息。因此,必须在PDM中建立与三维CAD的数据模型相应的数据模型。

三维CAD的数据模型包括零部件的装配关系、零部件模型和零部件族成员之间的关系以及参数表等,在PDM中,通过面向对象的建模方法可以清晰地表达它们:

(1)三维零部件模型、零部件族成员在PDM中都使用零部件对象来表达,通过建立一个特殊的多元关联关系,可以表达零部件族模型和成员的包含关系;

(2)零部件的装配结构,可以通过零部件对象的聚合关系来表达。这种聚合关系可以做为零部件对象的属性保存在零部件对象中。产品结构最终通过零部件的层级聚合关系体现出来。

(3)三维CAD文档在PDM中可通过二元关联的方式和零部件对象建立关系。文件之间的关系可通过零部件的装配结构来表达。

(4)二维工程图和三维图纸对象可通过“组合”关系关联,这样,可保证三维图纸的更新反映到二维工程图上。

在数据模型的对应关系确立以后,就可以通过一个通用的集成框架来处理两者的集成关系了。

2.2 层次模型

如前所述,集成框架主要支持的功能就是PDM和三维CAD两种数据的相互转换的问题。但是,不同的三维CAD软件的数据模型存在一定差异,提供的接口API也形态各异,如果对每种CAD都在PDM中进行特别的处理,必然导致PDM程序体系的复杂和工作量的增大,我们建立集成框架的目的之一就是要通过一致的处理模型来实现PDM和三维CAD软件的良好集成。

要实现这样的集成框架,首先必须抽象出不同三维CAD的公共特征,然后根据PDM的需要构建统一的业务模型。技术实现上,以组件化的方式来开发相关集成功能,从而形成一个“即插即用”的集成框架。

一种常用的方法是使用中间层逻辑来屏蔽不同三维CAD软件的差异。为此,需要一种结构化的表达方法来映射三维CAD和PDM的逻辑结构。并且,这种结构化的表示对于程序员和用户应该是可理解的,以利于在两种不同的数据模型中提供灵活的功能。从这些特性来看,基于XML的表示方法是表达三维CAD零部件关系的合适的技术。

XML本身是一种结构化的语言,能够清晰地表达零部件的装配、参数表等各种复杂的关系;通过W3C定义的通用接口标准DOM(XML文档对象模型),又可以轻易地把XML文本分解为对象模型,从而在三维CAD和PDM间充当转换的桥梁。

从cAD到PDM的数据模型转换过程中,会存在数据模型的“不匹配”的情况。因此,需要在两种数据模型之间嵌入转换逻辑。显然,对于不同的三维CAD软件,甚至对于使用同一种三维软件的不同用户,其逻辑都是不同的。所以,在两种数据模型的转换过程中,必须提供灵活的二次开发的方法和手段来满足不同的用户要求。利用XML的开放性特征可以很容易实现这一点,通过对基于DOM或者SAX的API接口,可以使用户方便地实现自己的控制逻辑,满足用户的个性化需求。

图1表达了从三维CAD数据到PDM数据的变化过程。从PDM到三维CAD其过程正好是相反的。

2.3 集成框架结构

集成框架使用组件调度程序来统一控制框架的各种接口的类型、实例化、调用和销毁。组件调度程序是集成框架的神经中枢,接口依附于组件调度程序来实现其功能。接口根据上述数据流图中可划分为三个层次,从三维CAD到PDM依次为:

(1)基于不同三维软件的通用信息转换接口

该层接口提取了不同三维CAD软件的共同特征,成为一个通用的抽象接口(Abstract Interface)。该抽象接口被不同的组件实现以满足不同的三维CAD的要求。该层接口处理的结果为一种符合基本要求的原始XML文件。

该层接口的即插即用通过抽象工厂(Abstract Factory)的设计模式来实现。组件调度程序要求组件首先注册,注册时必须提供三维CAD软件的类型信息,这样,组件调度程序就可以正确地创建和调用该类型三维CAD的信息转换组件。

(2)基于用户个性需求的处理逻辑接口

原始的XML文件经过该层处理转变为标准的XML文件。该层接口具有最大的个性,用户可以任意实现该层的接口以完成自己的个性化需求。零部件族及其成员的关系、结构关系和属性的调整都在该层实现。

由于上述的特性,该层的设计方法可以有多种。典型的如设计的桥接模式(Bridge),可以在基于,net和Java的组件方法中实现,它们都可以通过反射(Reflect)机制来寻找组件的接口,从而实现一个具有更大开放性的接口层次。最简单的接口也可以是直接传送XML内存对象句柄给该层接口使用,这是一种共享内存的设计方法。

(3)基于PDM数据模型的标准操作接口

在标准XML的基础上,该层从PDM角度封装了三维数据模型的通用处理逻辑。由于PDM的数据模型是固定的,因此该层的接口最为丰富,但是其约束也更多。PDM通过该层接口实现自己的存储逻辑。

组件框架必须考虑到组件的易用性,这就要求组件以简单的方式提供简单和常用的接口,使程序员和用户方便使用;同时,也提供复杂的更为精细的控制接口供高级的开发人员使用,以实现更强大的功能。显然,外观(Facade)设计模式在这里是适用的,它为PDM的不同功能提供了适合的接口。

如图2所示为集成框架的一般结构。在这样的一个体系结构中,三维软件的编辑、浏览方法都可以统一到集成框架中。编辑、浏览的接口在各三维集成组件中实现,注册后由组件调度程序负责调用。对于PDM而言,只需要根据三维CAD的类型,准备好CAD文件后,向组件调度程序发送编辑或浏览请求即可。组件调度程序根据注册组件简单的重发该请求即可达到目的。

3 集成框架的实现

KMPDM是企业级的产品数据管理系统,使用了上述的通用集成框架来实现和三维CAD的集成。其功能主要包括:

(1)三维模型的批量导入;

(2)三维模型检入检出时的同步更新;

(3)零件族模型的自动生成与更新;

(4)三维模型和PDM数据一致性检查。

在KMPDM中,集成框架需要的配置文件统一存放在服务端上。系统通过对不同三维CAD定义不同的处理配置,来完成PDM数据到三维数据模型的映射,从而进行三维模型数据的提取、一致性检查、批量入库等处理。

图3显示了KMPDM中产品结构树和PROE三维模型结构的一致性。当KMPDM执行三维模型的检入操作时,通过集成框架判断三维模型类型,并根据配置调用相关组件和处理程序产生标准XML数据,然后更新PDM中相关产品结构和属性。基于通用集成框架KMPDM完全实现了三维软件的“即插即用”的集成,充分显示了集成框架的灵活性和可扩展性。

4 结束语

通过抽象CAD的公共特征可以建立统一的、可扩展的PDM和三维CAD软件通用集成框架。该框架易于扩展,三维CAD的软件类型的增加只需要增加相应的组件并注册即可,其他组件无需重新编译。该集成框架对于PDM来说是一种标准的形式,PDM可以根据自己的业务处理逻辑来进行扩展。由于中间层的存在,这种扩展不会影响到三维CAD的处理组件。实践证明,这种体系结构达到了一致性和多样性的统一。

上一篇:通用的精品课程网站的设计与开发 下一篇:校园网边界不良信息屏蔽系统设计