2.7 AML建模的最佳实践建议 Best practice recommendations for AML modelling
除了AutomationML标准,AutomationML协会还根据工业经验的反馈制定并发布了一些最佳实践建议[BookLink@]。大部分的最佳实践建议是为AML Ed. 1编写的,并且已经在AML Ed. 2. 本节概述了对正则表达式和属性单元建模的建议。
2.7.1 正则表达式的建模 Modelling of Regular Expressions
2.7.1.1 Motivation
想象一下,我们想对一个属性进行建模,这个属性应该满足一定的格式、名称含义或复杂规则。例如,信号名称必须以数字开头,或者库存编号必须符合xxxx-yyyy-zzzz的惯例。在许多应用中,字符串必须遵循某些构造规则。
2.7.1.2 建模规则 Modelling principles
这些规则的描述可以用正则表达式进行建模。建模规则是:
- 正则表达式是根据[PCR20@]遵循标准Perl兼容正则表达式PCRE的字符串。
- 正则表达式必须被建模为相应属性的CAEX约束。
- 该约束的类型必须是 “未知类型”“UnknownType”。
- 该约束的名称必须是 “aml-RegExp”。
- 该约束的子属性Requirement的值包含正则表达式。
2.7.1.3 例子 Example
例如,我们想建立一个属性零件号的模型,它应该符合以下格式化规则:
- 第一个字母必须是 “F”。
- 后面是10位数字。
- 后面是一个"-"。
- 后面是一个大写字母。
- 最后一个字符是一个数字。
命名规则的正则表达式是:
^F[0-9]{10}-[A-Z][0-9]$
相应的AML模型如图2-108所示,可在[BookLink@]上查阅。
2.7.2 物理单位的建模 Modelling of Units
2.7.2.1 动机 Motivation
工程过程中的数据交换的一个重要方面是数量的交换。一个数量由一个数字number(例如,作为测量的结果)和一个测量单位unit组成。单位起着重要的作用,因为它们提供了数字必须被解释的背景。本节总结了最佳实践建议[BPR Units@]。
有不同的单位系统,它们对一组基本单位以及派生单位进行了标准化。IEC 62714-1 Ed. 2推荐使用国际单位制(SI)。首先,它只提供语义上的定义,而不是语法上的定义。但是,为了以机器可读的方式毫不含糊地表示一个单位,语法是需要的。
其次,国际单位制(SI)有时并不足以满足AutomationML的范围。销售、包装、航运、运输或信息技术单位没有被考虑:例如,无尺寸的数量,如件、批或箱。
为了克服这两个问题,本最佳实践建议使用UNECE建议N°20 “国际贸易中使用的计量单位的代码”
2.7.2.2 建模原则 Modelling principles
UNECE建议N°20 “国际贸易中使用的计量单位代码”[UNECE 10@]提供了一套全面的数量。此外,每个数量都有一个明确的标识符,称为 “通用代码”。AutomationML的建模建议是:
- 应使用公共代码,而不是使用单位本身。
- 通用代码必须存储在CAEX属性的标准属性 "单位 Unit"中。
- 本规范适用于IEC 62714第一版和第二版。
2.8 结论和总结 Conclusion and summary
本章介绍面向对象的建模语言CAEX 3.0作为AutomationML的子模型的基础知识和基本要素。它与图2-110所示的四层概念中的第一层相对应:它建立在XML第0层之上,但不提供第二层的全面领域模型。
第二章是开发基于XML的面向对象的领域模型的基础,这是工业应用的基础。
接下来的第三章专门讨论几何学和运动学的建模。