5.机械产品模型理论及常用建模技术 5.1 基本概念 工程问题是相当复杂的,涉及不同的物理系统、不同的领域,并且具有不同的目标。为了正确设计、分析工程问题,我们首先必须对实际工程问题进行简化描述,并利用已有的数学、物理等基本概念、原理和方法,描述工程问题。这个过程就是系统建模,即建立描述工程问题的物理模型和数学模型。 5.1.1 什么是模型 在机械产品设计中,我们将要设计的产品利用图纸的形式表示,并制造出来。图纸就是实际产品的一个抽象,是在二维空间中对产品实体的描述,是产品的一种图纸模型。我们利用CAD系统进行产品开发,CAD系统要产生实际图纸,在CAD系统中,我们必须建立模型描述这些代表实际产品的图纸,CAD系统中的模型是计算机内部模型,是计算机可以处理的对象。因此在计算机辅助机电产品设计中,存在两类模型: 外部模型 描述设计者头脑中或现实中实际存在的对象。如一个零件的外部模型是图纸表述的该零件的形状、技术参数要求等。在计算机辅助设计中,外部模型可以是一个实体对象,也可以指描述实体对象的图纸模型。 内部模型 为了便于对所研究对象进行处理而在计算机内部建立的描述外部模型的模型,这个模型表现为相关的数据结构和算法。 在CAD/CAM应用过程中,我们需要以计算机系统为辅助工具对所研究的对象的某些特性进行分析处理,例如要求在计算机屏幕或其他外部设备上输出某个物体的三维图像,并在计算机系统内对该物体进行网络分割、有限元分析等处理,这都需要建立该物体的计算机内部模型。 5.1.2 模型分类 在产品设计阶段,设计对象都是以模型的方式出现的,模型的种类很多,一般可以分为三种,即概念模型、数学模型和物理模型。 在设计初始阶段,设计者总是根据设计要求、目标和约束条件进行构思,形成一个初步的设计方案,它实际上是设计对象的一种高度概括,故称为概念模型。 数学模型是用数学符号和语言描述客观事物的一种模型,它反映了客观事物各主要因素之间的内在联系。如以几何形体的方式来具体地描述,则就是几何模型。 模型还可以根据其状态分为静态模型和动态模型。静态模型的数学描述中,没有时间参数,所反映的特性是不随时间而变化的静态特性。而动态特性则相反,其数学模型中有时间参数,所反映的特性则是随时间的变动而变化的动态特性。动态模型能更全面、更正确的反映设计或研究对象的特征,是CAD的有效工具。 根据系统的参数和控制方程式的形式和性质的不同,向系统输入输出信号的物理性质的不同,模型的分类如表5-1所示。 5.2 几何模型 如上所述,同一对象,针对不同的应用目的,可以建立各种不同的模型,对于机械产品的CAD/CAM来说,最重要的模型是几何模型。 几何模型是指用恰当的数据结构以计算机能理解和处理的形式,对所研究的物体(零件、部件以至整台机器)的集合特性进行准确定义。这个模型要存储物体的所有几何(包括形状大小等),它是三维的,其目的是供后继的分析、设计和制造各个阶段使用。以下介绍几何造型的有关基础知识。 5.2.1几何造型中的基本概念 形体在计算机内部通常用五层拓朴结构来定义,如果包括外壳在内则为如图5.1所示六层,并均定义在三维欧氏空间中。  图 5.1 形体的拓扑结构 (1) 体 体是由封闭表面围成的有效空间,一个形体是R3中非空、有界的封闭子集,其边界是有限个面的并集,而外壳是形体的最大边界。 (2) 面 面是形体表面的一部分,且具有方向性,它由一个外环和若干个内环界定其有效范围。面可以无内环,但必须有外环。面F是R3中非空、连续、共面且封闭的子集,其边界是有限条线段的并集。 (3) 环 环是有序、有向边组成的面的封闭边界,环中各条边不能自交,相邻两条边共享一个端点。环有内外环之分,确定面中内孔或凸台边界的环称为内环;确定面的最大外边界的环为外环。 (4) 边 边是形体中两个相邻面的交界,一条边只能有两个相邻的面。一条边有两个端点定界,分别称为该边的起点和终点。 (5) 点 点是边的端点,点不允许出现在边的内部,也不能孤立地存在于物体内、物体外或面内。顶点则是面中两条不共线线段的交点。 (6) 体素 体素是有限个尺寸参数定义的一个简单封闭空间,如圆锥、长方体、球、环等。 (7) 边界 所有实际形体都可看成是三维区域R3,其边界是一个封闭的表面。有些形体具有边界斜率不连续性,这些不连续性构成了物体的边、顶点。任何区域R都可以用完全在区域之中的点和在其边界上的全部点来定义。 (8) 几何信息 描述上述元素的几何性质和度量关系的数据。 (9) 拓朴信息 描述各元素之间的连接关系的数据。 (10) 布尔运算 布尔运算是一种正则集合运算,实体造型时通过布尔运算将一些基本体素组合成复杂形体,能保证运算后所得结果是有意义的,可进一步参加布尔运算。 常用布尔运算有并、交、差、补等,布尔运算中的关键问题是表面求交及拓朴信息的分类处理。 (11) 欧拉公式 欧拉公式常用于检验几何造型中所产生的形体的合法性和一致性。对于多面体,欧拉公式为: F + V - E= 2 + R - 2H 式中,F、V、E分别表示面、顶点、边的数目,R为多面体表面不相连通的内环数,H为通孔数。 (12) 几何造型的要求 一个形体是由点、边、面定义,在造型过程中,要求形体表面必须满足以下基本条件;①封闭;②有向;③非自交;④有界;⑤连接。 这是因为只有封闭表面才能保证平面立体的某些拓朴关系成立,每条边仅有两个邻面和两个端点,这样才能保证围绕任一面的边数和顶点数相等,围绕任一顶点的面数和边数相等。 为了确定多面体表面是否有向,可给多面体的面环设定相同方向。从形体外看表面环的方向是逆时针,则每条边有两个箭头,对应每个邻面的一个方向;若每条边在每个环内的箭头只有一个,则该表面是有向的。 除上述表面条件之外,形体还应满足刚性要求(即形体的形状与形体的位置、方向无关)、三维一致性(即形体没有悬面、悬边及孤立边界)、有限的描述表示以及边界确定等要求。 5.2.2几何造型中常用模型 几何造型技术经历了线框造型、表面造型、实体造型和特征造型等发展阶段,其造型理论和方法不断得到充实和完善。下面介绍几何造型中常用的几种模型。 1.线框模型(Wireframe Model) 线框模型是利用对象形体的棱边和顶点来表示其几何形状的一种模型,它易于理解,又是表面模型和实体模型的基础。 若以图5.2的立方体为例,它是利用12条棱边、8个顶点来表示,数据呈框架结构,计算机内部存贮的是顶点、线及其线间的拓朴关系。  图5.2线框模型数据结构 对于多面体,只要画出它的棱边与轮廓线,就能唯一地表示它,因而表示非常简单,且容易识别。然而对于像圆筒或球那样的形体,只画出棱边,不画出轮廓线就不能完整地表示这个形体,因而线框模型对于此类形体就显得不太自然。 线模型的主要特点是结构简单,易于处理,其输入可通过键盘输入线段两端点坐标来实现。线模型完全适用于从任何方向输出三视图和透视图等。 由于线模型是用棱边来代表形体的形状,因此,它只反映出三维形体的一部分形状信息,难以用线模型输出物体的剖面图、消除隐藏线及画出两个面的交线或轮廓线等。 目前线框模型主要用于二维绘图或作为其他造型方法的一种辅助手段。 2.表面模型(Surface Model) 表面模型是在线框模型的基础上发展起来的。它把线框模型中棱线所包围的部分定义成形体的表面,增加了面的有关信息及连接指针,然后利用形体表面的集合来描述形体的形状。 若以图5.3的立方体为例,它是利用8个顶点来定义12条棱边,再由12条棱边围成6个边界面,最后由这些边界面来定义封闭的形体空间。其数据结构呈树状,表面编号表示第几个表面,表面特征反映该表面是平面或曲面。  图5.3表面模型数据结构 由于表面模型描述了形体的各个面,故可处理与图形有关的大多数问题。如当两个平面相交时,可求出其交线以及隐藏线,也可求出形体的剖面线。 在表面模型中发展得较快的是自由曲面造型,人们对之从设计到数控加工进行了深入研究,使之广泛用于飞机、汽车、船舶和模具等复杂曲面的设计,较常用的曲面有贝塞尔曲面和B样条曲面等。 但是,由于表面模型仍不能完整全面地描述物体形状,例如没有明确定义形体存在侧,也没有给出表面间相互关系等拓朴信息,因而表面模型难以直接用于物性计算,并难以保证形体描述的一致性和有效性。 3.实体模型(Solid Model) 若要完整地描述一形体,除了应描述其几何信息之外,还应说明它的各部分之间的联系信息以及表面的那一侧存在实体等信息,实体模型就是基于这一思想发展起来的。 实体模型是由许多具有一定形状和体积的基本体素通过布尔运算组合而成。基本体素是由表面来定义,并说明了表面的那一侧存在实体。图5.4给出了表示表面某一侧存在实体的3种定义方法。其中(a)定义了一个表面外,再附加给出存在表面一侧的形体上一个点P;(b)以箭头指示实体存在的一侧;(c)是用具有方向的边界线的右螺旋前进方向表示形体所在一侧。 图5.9为实体造型过程的示意图,外部模型是一空间实体。首先通过参数构型由基本几何元素按一定拓朴关系构造若干简单形体,再由为数不多的简单形体经过布尔运算组合成空间实体的内部模型。  图5.4表面某一侧存在实体的定义方法  图5.5 实体造型过程 实体模型可全面完整地描述形体,可自动地计算物性,检测干涉,消除隐藏线和剖切形体等,因而能较好地满足CAD/CAM的要求,得到了广泛的应用。 在CAD造型时,常采用实体模型,但也不能一概而论,例如在某些应用领域用表面模型要比实体模型更合适。如在建筑物的造型中,要表示具有门窗的墙表面,以及具有材料特征的表面,此时用面模型要比实体模型更加方便,而且节省存贮空间和计算工作量。又如在有限元分析时经常采用线框模型。 5.2.3几何造型中常用表示模式 几何造型是利用计算机系统描述物体形状的技术。如何利用一种数据结构来表示形体,控制与处理数据,是几何造型中的关键问题。 形体的表示模式就是确定采用什么形式的抽象几何实体去代表实际实体。目前常用的形体表示模式有体素调用、空间点列、单元分解、扫描变换、构造的实体几何(CSG)和边界表示(B-Rrps)等6种,下面分别予以介绍,其中后两种模式使用最为普遍。 1.体素调用表示 这种表示模式采用规范化的几何形体及其形状参数来描述形体。如图5.6 所示通过对这些形体作变换或定义不同的参数值,将可产生不同的形体。  图5.6 体素调用表示 这种表示模式最初用于成组技术,以便按照零件的形状和性质分类,采用相应的制造工艺。通常,由于受到初始形状的限制,体素调用不能产生比较复杂的形体,因此它很少作为独立的表示模式使用,而是用于几何造型中定义体素。 2.空间点列表示 这种表示模式将形体所在空间分割成具有确定形状(如立方体),彼此相连的一系列单元,每个单元用其形心坐标(x、y、z)表示。通过记录形体对单元的占据状态来描述形体的几何形状。这种表示模式是坐标参数的有序集合,即空间点列。 用空间点列来表示形体,所需的存贮空间大,且各部分之间的关系不明确。图5.7为空间点列表示形体的例子。  图5.7 空间点列表示 3.单元分解表示 一个复杂的形体,总可以分解成若干容易描述的形状单元,这就是单元分解表示的基本思想。使用这种表示模式时,如图5.8 所示首先将形体分解为若干个单元,然后描述这些单元及其相互间的连接关系。 单元分解表示模式主要用于有限元的单元划分。用于其他应用场合时,由于表示不是唯一的,使用起来有些困难。  图5.8单元分解表示 4.扫描变换表示 扫描变换表示是通过将一个二维图形或一个形体沿某一路径扫描,产生新形体的一种表示模式。因此在使用时需要事先定义扫描图形或基体,还要规定基体的运动轨迹。 最常用的扫描方式有平移扫描和旋转扫描。平移扫描时轨迹为一直线,适用于描述具有平移对称性的形体;在旋转扫描中,其轨迹为圆或圆弧(见图5.9),可用于表示具有轴对称性的形体。  图5.9扫描变换表示的形体 5.构造的实体几何表示(CSG) 这是一种用若干简单形状的体素,经变换和布尔运算构成复杂形体的表示模式。 在这种表示模式中,采用二叉树结构来描述由体素构成的复杂的形体关系(见图5.10) 在图5.10中,树根表示定义的形体,叶为体素或变换量(平移量、旋转量),结点表示变换方式或布尔运算的算子。对体素施以变换,例如平移或旋转,可使之产生刚体运动,将定位于空间的某一位置。布尔算子可以是并、交、差等集合运算(分别用∪*、∩*、—*表示)。  图5.10 CSG的二又树结构 在CSG表示模式中,常用的体素有长方体、圆柱体、球、圆锥、圆环和锲块等。对这些体素都可用一组参数表示,如图5.11所示。 CSG表示无二义性,但表示不是唯一的,即一个形体可能有几种CSG表示,这种表示模式的优点是比较紧凑。但是,当要产生图形显示时就需要计算形体的边界,计算量较大。  图5.11常用体素 6.边界表示(B一reps) 边界表示模式是以形体表面的细节,即以顶点、边、面等几何元素及其相互间的连接关系表示形体。在边界表示模式中,边界表面必须是连续的,因此物体的边界是所有面的共集(见图5.12),每一个面又可通过边和顶点来表示,图5.13为一四棱雄的边界表示。  图 5. 12形体表面集 图 5. 13一个四棱锥的边界表示 由于边界表示模式详细记录了构成形体边界的所有几何元素的几何信息和拓朴信息,从而使得图形显示、有限元网格划分、表面积计算和数控加工等功能更易实现。 以上6种表示模式中,CSG和边界表示模式在几何造型系统中应用最为普遍。目前,国际上的一些著名的几何造型系统大都采用CSG/B-reps混合表示模式,以取长补短,使信息更加完善,操作更加方便。 5.3 特征造型 特征造型是CAD建模方法的一个新里程碑,它是在CAD/CAM技术的发展和应用达到一定水平,要求进一步提高生产组织集成化和自动化程度的产物。与前一代的几何造型相比,它具有以下特点: ① 过去CAD技术从二维绘图起步,经历了三维线框、曲面和实体造型发展阶段,着眼于完善产品的几何描述能力;而特征造型则着眼于更好表达产品的定义信息和生产管理信息,为建立产品的集成信息模型服务。它的目的是用计算机可以理解和处理的统一产品模型代替传统的产品设计和施工的成套图纸以及技术文档,使产品的生产准备各个环节可以并行展开,信息流畅通。 ② 它使产品设计工作能在更高的层次上进行,设计人员的操作对象不再是原始的线条和体素,而是产品的功能要素,像螺纹孔、定位孔、键槽等。特征的引用直接体现了设计意图,使得建立的产品模型容易为别人理解,方便组织生产,并使设计的图样更容易修改。 ③ 它有助于加强产品设计、分析、工艺准备、加工、检验各部门之间的联系,更好地将产品的设计意图贯彻到各个后续环节并且及时得到后者的意见反馈,为开发新一代的基于统一产品模型的CAD/CAPP/CAM集成系统奠定基础。 ④ 它有助于推动行业内的产品设计和工艺方法的规范化、标准化和系列化,使得产品设计中极早考虑制造要求;保证产品结构有更好的工艺性。 5.3.1 特征造型概述 1.什么是特征 所谓特征,指的是反映零件特点的,可按一定原则加以分类的产品描述信息。引入特征概念的目的在于增加 CAD/CAM系统中几何实体的工程意义。基于特征的造型把特征作为产品零件定义的基本单元,如利用孔、槽、凸台等来描述形体的形状,将产品零件描述为特征的集合,包括形状特征(具有一定工程意义的形状)、精度特征(尺寸公差、表面精度等)、材料特征和其他工艺特征(材料类型、材料性能、表面处理、工艺要求等),从而为工艺设计和制造过程的各个环节提供充分的信息。 2.特征分类 目前,特征的分类方法很多,主要有按几何形状分类、按功能分类、按制造方法分类和按产品定义数据的性质分类。若按产品定义数据的性质来分类,则产品的特征可分为形状特征、精度特征、工艺特征、材料特征和装配特征等。 在特征模型中,形状特征是其他非几何特征信息的载体,非几何特征信息一般是作为属性或约束附加在形状特征上。 3.特征的表达模式 特征表达模式主要分为集成模式和分离模式两种。前者是将特征模型和实体模型集成在同一内部数据结构中,后者则是将特征表达在附加的外部结构中,目前大都倾向于采用集成模式。 4.特征造型的方法 目前使用的特征造型方法可归纳为以下三类: ① 人工辅助特征标识 这种方法首先建立产品的几何模型,然后由用户直接通过图形来提取定义特征所需的几何要素,并将特征信息作为属性添加到特征模型中。 ② 自动特征识别 在建立几何模型后,通过启动专门的程序自动地处理几何数据库,搜索并提取特征信息,产生特征模型。 ③ 基于特征的设计 预先将一些标准的特征或用户自定义的特征存贮在特征库中,造型时以特征库中的特征为基本造型单元,建立特征模型。 5.特征识别 特征识别主要应用于以下两类情况,一是过去用通用CAD系统设计的零件只有低层次的几何和拓朴信息,不合特征定义;二是由于不同应用领域对特征有不同的定义方法,于是在相互转换时需要用到特征识别。 5.3.2 特征表示的几何模型 当前特征技术的研究基本上是在实体模型的基础上展开的,这是由于在当代的CAD系统中以实体造型的几何和拓朴处理功能最为完善,用它来为轴类和箱体类零件的CAD/CAPP/CAM集成应用建模,操作过程非常方便。但要形成特征造型的机制需要进行改造,主要体现在以下几方面: ① 特征造型为了体现产品的设计功能和CAPP、CAM的推理机制,需要在最终产生的零件上保留各个形素的原始定义相互依附关系,例如轴颈键槽,不只是一个长圆形凹槽,它需要与键配合,在它铣切时需要考虑整根轴在机床上的定位和装夹方法,要正确选取它的位置测量基准等。 ② 在机加工零件的特征模型中,面的作用非常突出,特征面有别于几何面,具有特定的语义信息,如配合面、支撑面、定位面、基准面等。这些面在加工、测量、计算工艺尺寸链和装配尺寸链时都要显式引用,必须容易检索到它们的定形和定位尺寸,为此需要合并使用CSG和边界表示。 ③ 特征造型应能方便地进行设计修改。特征本身是参数化的,它们之间的组装应该实现变量化,即用尺寸驱动。 ④ 特征模型需要引用基准点、中心线、局部坐标系等单元,这就要求在三维形体之外存在孤立的点、线和面,给予用户更多的操作灵活性。 图5.14表示用CSG和B-rep相结合的方法来表示一个简单的带槽方块的特征模型。 5.3.3 建立特征造型系统的技术要点 为了建立一个面向应用的特征造型系统需要掌握以下技术要领: 特征造型系统必须建立在通用几何造型的平台上,具备线框、曲面和实体等多种建模能力,同时需要针对应用目标建立专业特征库,库中的特征的定义是参数化的,每次调用时只要给各参数赋值,就能实时地生成所需的形体。 ② 特征形素之间的主要连接形式是贴合,相当于加工特征中的辅助特征是依附在主型面上。 ③ 特征造型的数据结构中应增加称之为连接面的新单元。连接面是指两个邻接形素间的共享面,在加工过程中它实际上是操作面。增加连接面后可以方便地从父特征出发迅速地找到它在某一面上所寄生的各个子特征。 ④ 在特征造型中,子特征在父特征连接面的局部坐标系中定位,某一特征定形或定位参数的修改可以用局部操作完成,从而自动保持形素间的连接关系不变。 ⑤ 特征造型系统往往配有三维尺寸标注功能,在操作形素的过程中自动地标注各个形素自身的定义尺寸和相对基准面的定位尺寸。这些尺寸都可以交互修改,实现尺寸驱动的参数化设计。 用特征造型系统来进行零件设计时,零件的信息模型可以采用以下数据结构: typedef struct part-list{ UWORD id;  图5.14 CSG和B-rep结合的方法 BYTE name[20]; Struct feature-list; Struct joint-list; Struct parameter-list Struct dimension-list Struct tolerance-list Struct material-list Struct administration-list Struct part-list } 5.4产品模型和STEP标准 CAD/CAM技术的应用已从产品设计和加工的局部环节扩展到整个企业的生产和经营活动,形成计算机集成制造系统(Computer Integrated Manufacture System),简称CIMS。在这样一个规模巨大的系统工程中必然要使用多种多样的计算机软件,这些软件之间必须相互交换产品信息,于是世界各国纷纷制订标准。在这方面影响较大的有美国的IGES(原始图形交换规范)、德国的VDA-FS(曲面定义标准)、法国的SET(交换和传输标准)等。以上标准都是针对产品的几何模型数字化而定义的,尚未覆盖产品投产时所需的全部信息,如材料、制造公差、表面粗糙度要求和生产管理信息等。 从1984年起,在美国国家标准和技术协会主持下,着手拟订产品数据交换规范(PDES),此后该规范又被ISO采纳为产品数据表达和交换国际标准(STEP)的主要组成部分。现在很多 CAD软件公司已着手开发基于 STEP标准的新一代 CAD/CAPP/CAM集成系统。 STEP标准总结了前一阶段各个工业发达国家在产品信息建模技术上所取得的最新研究成果,为CAD/CAM技术的进一步发展奠定了基础。 5.4.1产品模型概述 为了有效地用计算机来辅助设计和生产制造活动,有必要描述和交换对象产品的定义信息、与产品设计和制造有关的技术、管理信息等,这些数据统称为产品模型数据。 产品模型数据中既有形状数据,又有非形状数据,具体结构示意图见图5.15。 上述产品模型数据可以归纳为由几何模型和属性模型两大部分组成,它们之间具有连动性,其相互关系如图5.16所示。 产品开发时经常用到螺旋弹簧和板簧、齿轮等。如采用标准规格,则成本较低,容易采购,此时必要的不是几何模型,而是所谓的属性模型。又如标准齿轮,只要说明它的若干属性如齿数、模数,材料等等就可以了,如有齿轮产品目录,则只要说明其型号规格就可以了。对于标准齿轮,也没有必要画详细图纸及提供详细形状信息,这是一种属性模型的例子。此外在概念设计时要绘制产品功能的图表;在基本设计时要画出产品概略形状草图,并进行性能计算,此时使用的也是属性模型,是一种为了完成设计目标抽取的必要属性的模型。 模型之间存在有连动性。例如一张图作了设计更改,则与它相关的图纸的对应部分也应自动地更新,这就是图形间的连动性。又如形状与尺寸值的连动性,当尺寸值更改时,形状也应连动变形,参数化设计就包含有这种功能,需要有单向的或双向的连动。 图5.15 产品模型的基本数据  图5.16 几何模型和属性模型的关系 5.4.2 STEP标准 STEP的目标是为产品的整个生命周期定义各单元的物理和功能特性,这些定义必须完整、无异义,并能为计算机所接受和处理。STEP的框架结构如图5.17所示。其基本构成如下: 1.应用协议 应用协议反映了各行业专业领域的各种应用需求,像Part207是钣金模具的计划和设计,Part208是产品生命周期中的更改步骤,Part209是复合和金属结构的分析设计,Part 210是电子印刷电路的装配、设计和制造,Part214是汽车机械设计过程的核心数据等等。Part201—206是共性的应用协议,即201— 显式制图,202— 相关制图,203—具有构型控制的设计,204—使用边界表示的机械设计,205—使用的面表示的机械设计,206—使用线框的机械设计。  图5. 17 STEP的框架结构 应用协议相当于数据库组织中的外模式,反映不同用户对于数据模型的不同使用要求。 2.集成资源 从千变万化的应用协议中抽取最大限度的共性内容构成集成资源,集成资源可分为两个层次:Part 41等是最基础的通用资源,如 41—产品描述和支持基础,42—几何和拓朴表示,43 — 表示结构,44—产品结构配置,45— 材料,46— 图示方法(Visual Presentation)等。 Part101之后的称为集成应用资源,它们与应用更贴近,如101— 绘图,102— 船舶结构系统,104— 有限元分析等。 集成资源相当于数据库组织中的概念模式,将所有用户的需求归纳成严密、统一的逻辑模范。 3.产品数据共享实现方法 STEP提供了4个层次的产品数据共享实现方法,它们是ASCII码中性文件访问内存数据结构的应用程序界面,共享数据库以及共享知识库。 第一层次Part 21规定了STEP标准的物理文件格式。这是现阶段最容易实现的交换和共享产品数据的方法,但数据交换的效率也最低。 第二个层次是使应用系统通过软件界面访问产品数据,利用C、C++ 等通用程序设计语言调用内存缓冲区的共享数据,这种方法的存取速度最快,但是要求不同的应用系统采用相同的数据结构。 共享数据库是实现系统集成的理想途径,是近期的努力方向,而共享知识库是更高层次的系统集成,难度更大,有待于进一步开展研究。 4.描述语言 STEP中的数据描述采用EXPRESS语言,这是一种形式化数据描述语言,足以完整描述产品数据及其约束条件。它使用面向对象的概念,而且引入数据模式(Schema),所以很容易将它转换成数据库中的数据模型、数据描述语言、数据字典等元数据结构。 Part 11具体制定了EXPRESS的文本规范。目前EXPRESS还只是一种信息建模语言,不能用来编程,但今后将逐步扩充成具有面向对象编程语言的所有功能。 下面以圆为例说明STEP的数据结构。在STEP中,像圆那样的形状数据是用形参(对于圆来说是半径)和位置(圆心和形态)的组合来表示。如图5.18所示,用两种数据结构Circle(圆)和 Placement(配置)来表示。  图 5.18 STEP中圆的数据结构 用EXPRESS来定义上述数据结构则可写成如图5.19格式。  图3.19 EXPRESS定义实例 在EXPRESS中将相当于C语言中的一组结构数据称为实体(entity),例中它以第1行ENTITY开始,第7行 END-ENTITY结束。第 2行 SUBTYPEOF 是用对象指针来定义属性的继承关系。本例用称之Conic圆锥曲线来表示对象的Subtype,即全部继承Conic的实体属性。 第3、4行定义了这个数据结构的属性。说明Circle有两个属性:一是半径radius,其数据类型为Length-measure(长度类型);二是位置Position,其数据类型为Placement(指针类型)。 以第5行开始的部分称之为WHERE节,描述了对实体属性的约束条件。 本例中WR1表示附加约束条件的标志,要求radius的值必须受此限制。这种约束条件对于验证数据的匹配性是重要的,进行数据交换时必须进行检查。