产品数据管理(product data management,PDM)技术的应用基本上解决了企业内部CAD/CAPP/CAM等系统集成的问题,但不同的PDM在产品数据信息模型表示上有差异,使不同企业的PDM系统集成起来有一定的难度。PDM要求以具体产品结构为中心组织产品数据,以管理与产品相关的信息和过程,要求建立起的各个应用系统之间有统一的共享产品信息模型,此模型要求将不同的应用系统统一起来,各个应用系统对模型中的产品信息数据有准确和惟一的解释;消除语义上的误解和分歧,避免产品数据的不一致现象,使得不同企业的应用系统之间可以在统一的产品信息模型下相互交换和共享设计的产品数据。由此可见,建立全局产品信息模型在整个PDM实施过程中占据着极其重要的地位。
STEP/PDMschema是CAD/CAPP/CAM/CAE中关于PDM的一个交集,是一套标准的数据交换规范,STEP/PDMschema提供了包含各个不同应用系统间统一的全局产品信息模型,使得产品信息在不同的应用系统之间共享时是准确、完全和惟一的,消除了语义上的分歧,避免了产品数据的冗余和不一致现象,为企业部门间以及企业间的应用系统在产品的各个阶段共享一个公共的产品信息模型数据提供了技术基础。
本研究主要对STEP/PDMschema中的产品结构信息模型进行了详细探讨。讨论了STEP/PDMschema的产品信息模型组织方法,并在产品结构信息模型基础上通过建立具体产品的实例应用,为企业间的数据共享提供有力保证。
1 STEP/PDMschema
STEP/PDMschema是一个正在研究和开发之中的标准提案。ISO TCl84/SC4的STEP标准为PDM系统管理的产品数据定义了标准的表达形式。STEP/PDMschema信息模型是CAD/CAPP/CAM/CAE中关于PDM的一个交集。通过该技术,可以有效地实现数据在产品整个生命周期内交换与共享。
2 STEP/PDMschema中的产品信息模型组织方法
在产品数据之间的关系中以产品结构最为重要,因为它们反映了产品的基本结构信息和组成。通过产品之间的装配关系可以将各种产品数据组织起来,使用户能够方便地沿着“产品一部件一零件”的路线访问到所需要的数据。因此,将STEEP/PDMschema中产品结构信息建模分为两个模型:产品定义模型、产品配置实体模型。产品定义模型是以产品几何信息为基础,产品配置实体模型是以产品的配置关系为基础。
2.1 产品定义模型
产品定义包括标志不同应用领域产品的属性(如几何信息、公差表示和管理数据等)。产品定义实体关系的EXPRESS-G图如图1所示。图1中给出了产品定义实体模型的主要实体,实线框表示STEP实体,虚线框为STEP实体属性类型,粗实线表示父类实体和子类实体之间的继承关系,细实线表示属性与实体之间组成关系或实体之间的引用关系,每个实体都有一个或多个属性;以下图示的说明与此相同。
(1)实体product。
实体product是对产品信息的抽象,描述了与具体应用领域和应用环节无关的最基本信息,不包括几何、拓扑等细节信息。它的属性包括id,name,description和frame_of_reference。其中id是对product实例的通用标识,即使是在不同的计算机系统中,对于同一个product实例,id总是惟一的;name给出了某一产品的名称属性;description存储对产品的简单描述;frame_of_reference是product_context的聚合类,它依赖于产品的应用领域。frame_of_reference可以是电子、机械等应用领域。
图1 产品定义实体关系
(2)实体product_definition_formation。
实体product_definition_formation描述了一个产品的特定版本信息。product_definition_formation的属性包括id,description和of_product。其中id是产品模型中产品版本的惟一标识;description是对产品版本的简单描述;of_product用来指出此版本与哪个产品实例相对应,一个产品(product)至少可以与一个或多个product_definition_formation相关联。
(3)实体product_definition_formation_with_specifled_source。
实体product_definition_formation_with_specified_source是实体product_definition_formation的子类,继承了product_definition_formation的所有属性,并增加了属性make_or_buy来说明该产品版本是自制件还是采购件。
(4)实体product_definition。
产品与产品相关信息之间的关系是产品结构信息模型中的核心,为了支持一个产品同其相关信息连接(如产品零部件间的装配关系等),PDMschema中定义了product_definition。实体product_definition定义了产品描述的一个特殊类型。它能够建立许多重要关系(如:装配结构和特性(包括几何特性)),是连接零部件与产品信息的核心元素。它的属性包括id,description,formation和frame_of_reference。其中formation是产品某一版本的产品定义,frame-of-reference定义了产品定义的应用领域。
2.2 产品配置实体模型
产品模型中定义的产品配置关系,是product_definition_relationship的子实体。产品配置模型实体间的关系的EXPRESS-G图如图2所示。
2.2.1 实体product_definition_relationship
实体product_definition_relationship是一个抽象实体,不产生任何实例。它用来描述两个不同product_definition实体实例之间所存在的约束或关系情况,但并不说明关系的细节。由于实体实例之间关系的复杂性和多样性,对于某一方面的特殊关系必须由更具体的子类实体来说明。
2.2.2 实体product_definition_usage
实体product_definition_usage是product_definition_relationship的子类,它定义了一个产品实例作为另一个产品实例组成部分的情况,即定义了一个父装配与子装配或零件之间的组成与被组成关系。这里需要指出的是,这种组成与被组成关系并不一定是直接装配关系,如父装配A由子装配B1和零件B2组成,而子装配B1由零件C1,C2,C3组成,则A与Bl、A与C1、B1与C3等之间的关系均为实体product_definition_usage的实例。实体product_definition_usage在两个product_definition实体间还定义了两种特殊的子实体(made_from_usage_option和assembly_component_US_age)以描述两种产品的结构关系。
实体made_from_usage_option表示一个产品是由其他产品制成时,该产品与其他产品间的关系。如:从坯料加工出产品零件,那么坯料与加工出来的产品零件之间的关系就可以通过实体made_from_usage_option来描述。
实体assembly_component_usage表示一个产品与比它低的零部件间的装配关系。两个product_definition实体实例之间的产品结构关系可以是made_from_usage_option或者是assembly_component_usage,但是不能同时是这两种。这种类型的关系是通过product_definition_usage中的ONEOF来说明的。
2.2.3 实体made_from_usage_option
实体made_from_usage_option表示一个产品是由其他产品通过加工过程制成的。这个实体可以用来描述产品和其原材料之间的关系。如从原材料加工为产品,那么原材料被认为是该产品的子产品。made_from_usage_option继承了实体product_definition_usage的属性related_product definition和relating_product_deftnition,并增加了属性ranking、ranking_rationale和quantity。属性ranking和ranking_rationale指出了related_product_definition和relating_product_definition的优先权和合理性。值越小优先权越高。Quantity属性表示一个单元的related_product_definition可以制造多少数目的relating_product_definition。
2.2.4 实体assembly_component_usage
实体assembly_component_usage描述了两个产品之间的装配关系。该实体一般不实例化,而是通过它的子实体next_assembly_usage_occurrence,promissory_usage_occurrence,specified_higer_usage_occurrence和quantified_assembly_component_usage来进一步确定不同的装配关系。
(1)实体next_assembly_usage_occurrence。
实体next_assembly_usage_occurrence在产品结构中指出了父装配和子装配(或子部件)之间的直接关系。这个实体可以通过另一个next_assembly_usage_occurrence来分组以便形成单层的BOM结构。可以用next_assembly_usage_occurrence来表示每个部件和它的父产品之间的直接装配关系。一个多层的BOM结构可以通过连接next_assembly_usage_occurrence所有的实例层次来构建。
(2)实体promissory_usage_occurrence。
实体promissory_usage_occurrence表示一个组件或装配体在产品中的使用情况,但与前面两个实体不同,它是在设计人员对某个组件或装配体的具体使用情况还没有确定的情况下,通过该实体来表达产品与部件之间的一种概念上的、初步的结构关系。
(3)实体quantified_assembly_component_usage。
实体quantified_assembly_component_usage描述了一个装配中需要多少部件。实体quantified_assembly_component usage建立了父装配和其部件之一的关系。一般地,要从生产计划和材料计划考虑。数量是装配和部件之间关系的一个重要元素。典型的例子就是飞机和用于连接整个飞机结构的铆钉数目。
它继承了实体product_definition_relationship的所有属性,并增加了属性quantitity。属性quantitity描述了一个装配中需要某一部件的数目。
(4)实体specified_higher_usage_occurrence。
实体specified_higher_usage_occurrence描述了高层父装配件和底层零部件中任一子部件之间的装配关系。例如,1个轮轴组件由1根轴和2个轮子(前轮和后轮)组成。相应地,1个高层底盘装配件由2个轮轴(前轮轴和后轮轴)组件组成,这样,1个底盘装配件就有4个轮子,分别处在左前、左后、右前、右后的位置,描述底盘装配件与轮子的4次不同装配,就用实体specified_higher_usage_occurrence来描述。实体specifled_higher_usage_occuffence的属性relating_product_definition用来指明高层父装配件,related_product_definition用来指明底层零部件。属性next_usage指向一个next_assembly_usage_occurrence实体。这个next_assembly_usage_occurrence表达了底层零部件与其紧邻父装配件的装配关系。属性upper_usage指向assembly_component_usage实体,可以用它来描述高层父装配体与底层零部件直接父装配体之间的关系。
3 实例应用
产品结构树建立的原理是:根据STEP/PDM模式中产品定义模型和产品配置定义模型中所描述的实体来构建产品结构树。产品信息模型中,next_assembly_usage_occurrence描述了父装配和子装配之间的直接关系。那么,在STEP中性文件中,整个产品的产品结构树可以通过将所有的产品连接所有的next_assembly__usage_occurrence的实体实例来构建。在产品的装配关系中,产品信息模型中主要涉及的实体及其关系如图3所示。next_assembly_usage_occurrence描述了工程装配中的一级装配关系,属性relating_product_definition指向父装配体,属性related_product_definition指向子装配体,一个产品的装配结构示意图如图4所示。
CIO之家 www.ciozj.com 公众号:imciow