标准概述
多年来,人们提出了许多解决方案。其中最成功的方案已经标准化用于数据的交换。第一批是由欧美国家组织的,把重点放在在几何图形的数据交换,包括如法国的SET格式、德国的VDAFS格式和美国的IGES格式(inITial graphics exchange specification)。之后在国际标准组织(ISO)的领导下,为了产生一个技术产品数据全方面的国际标准,人们做出了大量的努力,诞生了产品模型数据标准:STEP(standard for the exchange of product model data,产品模型数据交换标准)。
随着工业自动化和计算机技术的不断发展,工业界迫切需要综合性强、可靠性高的信息交换机制实现计算机辅助工程(CAx)系统之间的有效集成。STEP标准既是一种产品信息建模技术,又是一种基于面向对象思想方法的软件实施技术。它支持产品从设计到分析、制造、质量控制、测试、生产、使用、维护到废弃整个生命周期的信息交换与信息共享,目的在于提供一种独立于任何具体系统而又能完整描述产品数据信息的表示机制和实施的方法与技术。在设计和制造中,许多系统过去常常要处理技术产品数据。每个系统有它自己的数据格式,所以相同的信息必然在多个系统中多次存储,这会导致了信息的冗馀和错误。这个问题不是制造业所特有,只不过在制造业表现地更为突出,因为复杂的数据和三维数据让使用者们引起误解,和误差的扩大。据美国国家标准协会估计,数据不兼容的问题对于制造业意味着一个900亿元的损失…。
关键技术
STEP-NC自1997年的研发以来,制造业中关于STEP的应用已经成为工业化国家中的热点研究对象。在所有的热点研究课题中,美国有Super Model项目、欧洲有MATRAS计划和OPTIMAL、日本有Digital Master项目、韩国有STEP-NC项目,这些都是十分有代表性的项目。而上述热点研究国家主要都是集中在数据库、标准以及STEP-NC的控制器这三个方面的研究。
数据库的研究。对于STEP-NC所涵盖的特殊定义、几何模型、工艺流程、公差定义等等这些信息都是必须通过一个相同的智能接口,才能完整地被集成到一个产品模型的数据库中。在数据库的研究当中,STEP Tools公司是最具代表性的,主要因为该公司于新世纪两千年开始了“超级模型”——Super Model的项目研究。“超级模型”项目的英文全称是Model Driven Intelligent Control of Manufacturing,该项目主要是为了建立一个包含可直接驱动数据铣床、零件所有制造特征的数据库,之后再向PDM、数控车削等目标的扩展。STEP Tools公司最终在“超级模型”项目中开发了两项新技术,分别是EXPRESS-X和STEP/XML,由于这两项技术的应用中,数控编程都是被简化了的,因此,给CNC可以在因特网上直接查找产品数据奠定了坚实的基础。
标准的研究。当前已经制定的关于STEP和STEP-NC的标准,涉及的行业通常是汽车、飞机、造船业、机械设计、电子电路等。关于STEP-NC已经制定的标准草案(ISO-DIS-14649),它包括通用数据、基本概念及规则、铣削刀具、数控铣削加工等。目前正在制定中的STEP-NC标准有:放电加工、数控车削加工、监控、玻璃木材的铣削等等。
STEP-NC控制器。目前的STEP Tools公司正在研制机床控制器的软件,这款软件是用于直接读取Super Model的。此外,还有POHANG科技大学(韩国)、Siemens公司(德国)等都在致力于控制器的积极研究。而在无数不少的研究当中,Siemens公司取得了丰硕的成果。
标准描述
STEP标准不是一项标准,而是一组标准的总称,STEP把产品信息的表达和数据交换的实现方法区分成六类:
1、描述方法(Description Methods);
2、实现方法(Conformance Testing);
3、集成资源(Implementation Methods):分一般资源和应用资源;
4、应用协议(Application Protocols);
5、一致性测试方法论和框架(Conformance Testing);
6、抽象测试集(Abstract Test Suites)。
STEP标准也可划分为两部分:STEP标准的数据模型和工具。数据模型包括通用集成资源、应用集成资源、应用协议;工具包括描述方法、实现方法、一致性测试方法和抽象测试套件。其中资源信息模型定义了开发应用协议基础的数据信息,包括通用的模型和支持特定应用的模型。产品数据的描述格式独立于应用,并且通过应用协议进行实施。应用协议定义了支持特定功能的资源信息模型,明确规定了特定应用领域所需的信息和信息交换方法,提供一致性测试的需求和测试目的。
几乎每一个主要的CAD/CAM系统包含由一个STEP应用协议(application protocols,AP’s)定义的一个读写数据的模块。在美国最普遍实现的协议称为AP-203。这个协议用来交换描述实体模型以及实体模型装配体的数据。在欧洲,一个非常相似的协议称为AP-214,完成的是相同的功能。
其中,构成核心体系的关键语言有:
1、描述语言:EXPRESS语言是STEP标准开发的面向对象的信息模型描述语言(ISO10303—11),用以描述集成资源和应用协议,即是记录产品数据的建模语言,在STEP技术中处于基础和核心的地位。
2、实现语言:鉴于EXPRESS本身不是一种实现语言,STEP规定了若干通过映射关系来实现EXPRESS的语言。主要有:
(1)STEPp21文件(ISO10303—21):p21文件采用自由格式的物理结构,基于ASCII编码,不依赖于列的信息(IGES有列的概念),且无二义性,便于软件处理。p21文件格式是信息交换与共享的基础之一。其常用扩展名有stp、step、p21,因此常常被称作STEP文件或者p21文件。
(2)SDAI接口——Standard Data Access Interface (ISO10303—22):是STEP中规定的标准数据存取接口,提供访问和操作STEP模型数据的操作集,为应用程序开发员提供统一的EXPRESS实体实例的编程接口需求规范。可用于更高层的数据库实现和知识库实现。
(3)STEP data in XMI(ISO10303—28):提供STEP文件到XML的映射,XML是为Internet上传输信息而设计的一种中性的数据交换语言,是Internet/Intranet间存储和提取产品数据的主要语言T具。
3、应用协议(AP):STEP利用应用协议(AP)来保证语义的一致性。应用协议指定了在某一应用领域巾,共享信息模型结构所需遵循的特定应用协议所规定的模型结构。通过应用协议,建立一种中性机制解决不同CAx系统之间的数据交换。已制订或正在制订的有关工程设计与制造方面的STEP应用协议有38个(AP-201~AP-238)。
2004年6月的STEP应用协议如下:
第201部分Explicit Drafting显式绘图;
第202部分Associative Drafting相关绘图;
第203部分Configuration Controlled Design配置控制设计;
第204部分Mechanical Design Using Boundary Representation用边界表达的机械设计;
第205部分Mechanical Design Using Surface Representation用曲面表达的机械设计;
第206部分Mechanical Design Using Wireframe Representation使用线框表达的机械设计;
第207部分Sheet Metal Dies and Blocks片金属的冲模和成块;
第208部分Life Cycle Product Change Process生命周期管理更改管理;
第209部分Design Through Analysis of Composite and Metallic Structures通过合成体和金属结构的分析进行设计;
第210部分Electronic Printed Circuit Assembly,Design and Manufacturing电子的印刷线路装配,设计和制造;
第211部分Electronics Test Diagnostics and Remanufacture电子测试诊断和再造;
第212部分E1ectrotechnical Plants电子技术设备;
第213部分Numerical Control Process Plans for Machined Parts加工件的数控处理规划;
第214部分Core Data for Automotive Mechanical Design Processes汽车机械设计处理的核心数据;
第215部分Ship Arrangement船的布置;
第216部分Ship Molded Forms船的模型形式;
第217部分Ship Piping船的管道;
第218部分Ship Structures船的结构;
第2I9部分Dimensional Inspection Process Planning for CMMs对CMMs进行空间的检验处理规划;
第220部分Printed Circuit Assembly Manufacturing Planning印刷电路的装配制造规划;
第221部分Functional Data and Schematic Representation for Process Plans工艺规划的功能数据和它的模式表达;
第222部分Design Engineering to Manufacturing for Composite Structures组合结构的设计工程学到式制造;
第223部分Exchange of Design and Manufacturing DPD for Composites复合结构的产品数据交换;
第224部分Mechanica1ProductDefinitionforProcessPlanning处理规划的机械产品定义;
第225部分Structural Building Element Using Explicit Shape Rep使用显式形状Rep的结构建筑元素;
第226部分Ship building Mechanical Systems造船机械系统;
第227部分Plant Spatial Configuration工厂空间配置;
第228部分Building Services建筑服务;
第229部分Design and Manufacturing Information for Forged Parts铸造部件的设计和制造信息;
第230部分Building Structure frame steelwork建筑结构框架:钢结构;
第231部分Process Engineering Data工艺工程数据;
第232部分Technical Data Packaging技术数据的打包信息;
第233部分Systems Engineering Data Representation系统工程数据表示;
第234部分Ship Operational logs,records and messages船的操作日志、记录和信息;
第235部分Materials Information for products产品的材料信息;
第236部分Furniture product and project家具的生产和设计;
第237部分Computational Fluid Dynamics计算流体动力学;
第238部分Integrated CNC Machining集成CNC加工;
第239部分Product Life Cycle Support产品生命周期维护;
第240部分Process Planning工艺规划。
层次概念
整个STEP系统分为三个层次:应用层、逻辑层和物理层。
最上层是应用层,包括应用协议及对象的抽象测试集,这是面向具体应用的一个层次。第二层是逻辑层,包括集成通用资源和集成应用资源及由这些资源建造的一个完整的产品信息模型。它从实际应用中抽象出来,并与具体实现无关。它总结了不同应用领域中的信息相似性,使STEP标准的不同应用间具有可重用性,达到最小化的数据冗馀。最低层是物理层,包括实现方法,用于实际应用标准的软件的开发,给出具体在计算机上的实现形式。
三层中所对应的标准由三个不同的委员会负责制定。每一层采用了不同的信息建模工具,应用层采用了IDEF0,IDEF1X,NIAM,EXPRESS;表达层则采用了EXPRESS。
EXPRESS
EXPRESS是一种面向对象的非编程语言,用于信息建模,既能为人所理解,又能被计算机处理(通过EXPRESS编译程序)。EXPRESS主要用来描述应用协议或集成资源中的产品数据,使描述规范化,它是STEP中数据模型的形式化描述工具。EXPRESS语言采用模式(schema)作为描述数据模型的基础。标准中每个应用协议,每种资源构件都由若干个模式组成。
每个模式内包含类型(type)说明、实体(entity)定义、规则(rule)、函数(function)和过程(procedure)。实体是重点,实体由数据(data)和行为(behavior)定义,数据说明实体的性质,行为表示约束与操作。
作为一种形式化描述语言,EXPRESS吸收了Ada,C,C++,Modula 2,Pascal,PL/1,SQL多种语言的功能,有强大的描述信息模型的能力,但又不同于编程语言,不具有输入与输出语句。
简述如下:
1)丰富的数据类型
EXPRESS规定了丰富的数据类型,常见的有:
·简单数据类型。包括NUMBER,REAL,INTEGER,STRING,BOOLEAN,LOGICAL,BINARY。
·聚合数据类型。有数组(ARRAY)、表(LIST)、集合(SET)和包(BAG)。
·命名数据类型。由用户定义,包括实体(ENTITY)和类型(TYPE)。
·构造数据类型。包括枚举(ENUMERATION)和选择(SELECT)。
2)模式中的各种说明
模式(schema)是EXPRESS描述对象的主体,也即概念模式,所以首先进行模式说明,然后在模式中再通过各种说明来进行描述,这些说明包括类型说明、实体说明、常数说明、函数说明、过程说明、规则说明,这些说明是相互并列的,其中重要的是对实体的说明。
一个实体说明的结构如下:
ENTITY实体标识符;
[子类,超类说明]:
[显式属性];
[导出属性];
[逆向属性];
[惟一性规则];
[值域约束];
END-ENTITY;
【例1】定义圆为实体,使用了导出属性。
ENTITY circle;
center:point;
radius:REAL;
DERIVE
area:REAL:=PI*radius**2;
END-ENTITY;
【例2】定义单位向量为实体,使用值域约束,即单位向量长度必须为1。
ENTlTY Unit-vector;
a,b,e:REAL;
WHERE
length:a**2+b**2+c**2=1.0;
END-ENTITY;
【例3】定义实体A2及它的超类B2,C2
ENTITY A2;
SUPERTYPE OF(B2,C2);
END-ENTITY;
3)表达式
可进行算术运算(加、减、乘、除、乘方、取模等),关系运算(等于、小于、大于等),BINARY运算(索引与连接),逻辑运算(逻辑与、或、非、异或),字符串运算(比较、索引、连接),聚合运算(索引、交、和、差、子集、超集等),实体运算(关系比较、属性访问、组访问、复杂实体构成等)。
4)执行语句
如赋值、case、if-then-else、ESCAPE、过程调用、REPEAT、RETURN和SKIP语句等,和一般程序设计语言一样丰富。
5)各种内部常量、函数和过程
如常量PI,SELF,函数SIN,COS,…,EXITS,HIINDEX,SIZEOF,TYPEOF等,过程INSERT等。
6)接口语句
常用语句有USE FROM,即使用另一模式中的类型或实体名,效果等于在本模式中说明一样;还有REFERENCE FROM,即引用另一模式中的实体、类型等,但在本模式内它们不能独立地实例化。
STEP的三层组织结构、参考模型及形式化定义语言EXPRESS,一起构成了STEP方法学。
标准优点
STEP标准具有简便、可兼容性、寿命周期长和可扩展性的优点,能够很好的解决信息集成问题,实现资源的最优组合,实现信息的无缝连接。