文档简介
I C S 2 5 . 0 4 0 . 4 0一一N 。i中 华 人 民 共 和 国 国 家 标 准 G B / T 1 9 7 6 9 . 1 -2 0 0 5 工业过程测量和控制系统用功能块 第 1 部分: 结构 F u n c t i o n b l o c k s f o r i n d u s t r i a l - p r o c e s s m e a s u r e me n t a n d c o n t r o l s y s t e m- P a r t 1 : A r c h i t e c t u r e2 0 0 5 - 0 5 - 1 8发布2 0 0 5 - 1 2 - 0 1 实施 串 督留 瞥 臀 瓣 譬 蓬 瞥臀暴 发 “ G B / T 1 9 7 6 9 . 1 -2 0 0 5 盆 L曰 日 州 月 叨胃 G B / T 1 9 7 6 9 工业过程测量和控制系统用功能块 分为如下几部分 : 第 1 部分 : 结构 ; 第2 部分: 软件工具要求; 第3 部分: 应用指南; 一 第 4 部分: 一致性行规指南。 本部分为G B / T 1 9 7 6 9 的第1 部分。 本部分参考I E C / C D 6 1 4 9 9 - 1 : 2 0 0 3 工业过程测量和控制系统用功能块第1 部分: 结构) 。 本部分的附录 A、 附录 B 、 附录 H 为规范性附录, 附录 C 、 附录 D 、 附录 E 、 附录 F 、 附录 G 、 附录 I 和附录 J 均为资料性附录。 本部分由中国机械工业联合会提出。 本部分由全国工业过程测量和控制标准化技术委员会第二分技术委员会归口。 本部分负责起草单位: 西南师范大学。 本部分参加起草单位: 机械工业仪器仪表综合技术经济研究所 、 中国四联仪器仪表集团、 浙江大学、北京机械工业 自动化研究所。 本部分主要起草人 : 黄伟 、 刘枫 、 吕静、 张渝。 本部分参加起草人: 冯晓升、 刘进、 冯冬芹、 谢兵兵。标准下载网() GB / T 1 9 7 6 9 . 1 -2 0 0 5 工业过程测量和控制系统用功能块 第 1 部分 : 结构1 一 般要 求1 . 1 范围 G B / T 1 9 7 6 9 的本部分定义了分布式工业过程测量和控制系统( I P MC S ) 的通用结构, 并且给出了功能块的使用指南。按照可实现的参考模型、 文本语法和图示的表示法来给出这一结构。这些模型、 表示法和语法适用于: 功能块类型的规范和标准化 ; 系统元素的功能性规范和标准化; 与实现无关的分布式 I P MC S的规范 、 分析和验证 ; 分布式I P MC S的配置、 实现、 操作和维护; 实现上述功能的软件工具间的信息交换。 注: 本部分并不限制或指定 I P M C S 或它们的系统元素的功能性, 除非使用本部分定义的元素来表示这些功能性。 G B / T 1 9 7 6 9 . 4的有关一致性的章节陈述了扩展到本部分定义的元素, 可能会受一致性系统、 子系统和设备的 功能性约束。 本部分的目的之一是为在其他支持系统生命周期的标准中使用功能块提供参考模型 。系统生命周期包括系统规划、 设计、 实现、 验证、 运行和维护。本部分所给出的模型是通用的、 不受范围约束的, 并可扩展到在其他标准、 特定应用、 特定应用领域中功能块的定义和使用。其目的是使按照本部分给出的规则所制定的规范简洁 、 可实现、 完整、 无歧义和一致。 注 1 : 单靠本部分提供的规则并不能充分保证不同设备生产商的设备的互操作性。遵守本部分的其他标准可规定 其他条款来保证这种互操作性。 注 2 : 遵守本部分的其他标准可规定其他条款来提高系统、 设备、 资源和应用管理功能的性能。 G B / T 1 9 7 6 9 包含四部分: 第 1 部分( 本部分) 包括 : 1 ) 一般要求, 包括前言、 范围、 规范性引用文件、 定义和参考模型; 2 ) 功能块类型的声 明规则和所声明的类型的实例行为规则 ; 3 ) 分布式工业过程测量和控制系统( I P MC S ) 的配置中, 功能块的使用规则; 4 ) 为满足分布式 I P MC S的通信要求 , 功能块的使用规则; 5 ) 分布式 I P MC S的应用 、 资源和设备的管理 中功能块的使用规则 ; 6 ) 一致性系统和标准应当满足的要求 。 第 2 部分定义软件工具的要求 , 以支持本部分 1 . 1 中列举的下列系统工程任务 : 1 ) 功能块类型的规范; 2 ) 资源类型和设备类型的功能性规范; 3 ) 分布式 I P MC S 的规范 、 分析和验证 ; 4 ) 分布式 I P MC S 的配置、 实现 、 运行和维护 ; 5 ) 软件工具间的信息交换。 第3 部分的目的是提高对I P MC S结构和满足其他部分要求的软件工具的可理解性、 可接受 性 、 通用性和专用性, 通过提供 : 1 ) 关于G B / T 1 9 7 6 9 的常见问题的解答; 2 ) 使用G B / T 1 9 7 6 9 的结构来解决控制和自动化工程中常见问题的示例。标准下载网()G B / T 1 9 7 6 9 . 1 -2 0 0 5 第4 部分定义了一致性行规的开发规则, 这些规则规定本部分和G B / T 1 9 7 6 9 . 2应实现的特 性, 以发挥基于G B / T 1 9 7 6 9的系统、 设备和软件工具的以下属性: 1 ) 来自不同供应商的设备的互操作性; 2 ) 在不同供应商的软件工具之间软件的可移植性; 3 ) 用不同供应商的软件工具对来 自 不同生产商的设备的可配置性 。1 . 2 规范性引用文件 下列文件中的条款通过G B / T 1 9 7 6 9 的本部分的引用而成为本部分的条款。凡是注日期的引用文件, 其随后所有的修改单( 不包括勘误的内容) 或修订版均不适用于本部分, 然而, 鼓励根据本部分达成协议 的各方研究是否可使用这些文件的最新版本。凡是不注 日期 的引用 文件 , 其最新版本适用于本部分。 G B / T 2 9 0 0 . 5 6 -2 0 0 2 电Z术语自动控制 ( I E C 6 0 0 5 0 - 3 5 1 : 1 9 9 8 , I n t e r n a t i o n a l E l e c t r o t e c h n i -c a l V o c a b u l a r y C h a p t e r 3 5 1 : A u t o m a t i c C o n t r o l ( 2 d . E d . ) , I D T ) G B / T 4 7 2 8 . 1 2 -1 9 9 6 电气简图用图形符号第1 2 部分: 二进制逻辑元件( i d t I E C 6 1 7 - 1 2 : 1 9 9 1 G B / T 5 2 7 1 ( 所有版本的所有部分) 信息技术 词汇 G B / T 7 4 0 8 -1 9 9 4 数据元和交换格式信息交换日 期和时间表示法( e q v I S O 8 6 0 1 : 1 9 8 8 ) G B / T 9 3 8 7 . 1 -1 9 9 8 信息技术开放系统互连 基本参考模型第 1 部分 : 基本模型( i d t I S O /I E C 7 4 9 8 - 1 : 1 9 9 4) G B 1 3 0 0 0 . 1 -1 9 9 3 信息技术通用多八位位组编码字符集( U C S )第一部分 : 体系结构与基本多文种平面( i d t I S O / I E C 1 0 6 4 6 . 1 : 1 9 9 3 ) G B / T 1 5 1 2 9 -1 9 9 4 信息处理系统 开放系统互连服务约定( i d t I S O / T R 8 5 0 9 : 1 9 8 7 ) G B / T 1 5 9 6 9 . 3 -1 9 9 5 可编程序控制器 第3 部分: 编程语言 G B / T 1 6 2 6 2 -1 9 9 6 信息处理系统开放系统互连抽象语法记法一( A S N . 1 ) 规范( id t I S O8 8 2 4 : 1 9 9 0 ) G B / T 1 6 2 6 3 -1 9 9 6 信息处理系统开放系统互连抽象语法记法一( A S N . 1 ) 基本编码规则规范( I S O 8 8 2 5 : 1 9 9 0 , I D T ) G B / T 1 7 1 4 2 -1 9 9 7 信息技术开放系统互连系统管理综述( i d t I S O / I E C 1 0 0 4 0 : 1 9 9 2 ) G B / T 1 7 9 6 6 -2 0 0 0 微处理器系统的二进制浮点运算( id t I E C 5 5 9 : 1 9 8 9 ) I S O / A F N O R计算机科学字典, 1 9 8 9 , I S B N 2 - 1 2 - 4 8 6 9 1 1 1 - 61 . 3 术语和定义 在本部分中, 使用 了 I S O / A F N O R确定的和以下列出的术语和定义。1 3 . 1 接受器 a c c e p t o r 提供所定义适配器接口类型的插座适配器的功能块实例。1 . 3 . 2 访问路径 a c c e s s p a t h 为了开放通信的目的, 符号名和一个变量的结合。1 . 3 . 3 适配器连接 a d a p t e r c o n n e c t i o n 从插头适配器到同一适配器接口类型的插座适配器 的连接 , 传送 由适配器接 口类型定义的数据和事件流。1 . 3 . 4 适配器接口类型a d a p t e r i n t e r f a c e t y p e 由一组事件输人、 事件输 出、 数据输人和数据输出的定义所组成的一种类型。它的实例是插头适配器和插座适配器。标准下载网() G B J T 1 9 7 6 9 . 1 -2 0 0 51 . 3 . 5 算法a l g o r i t h m 按一定操作步数解决问题的一组明确规定的有限规则 。1 3 . 6 应用a p p l i c a t i o n 为解决工业过程测量和控制中的问题的特定软件功能单元。 注: 一个应用可以分布在多个资源中, 并可与其他应用通信。1 , 3 . 7 属性a t t r i b u t e 实体的特性或特征。例如, 功能块类型规范的版本标识。1 3 . 8 基本功能 块类型 b a s i c f u n c t io n b lo c k t y p e 不能分解为其他功能块的功能块类型, 使用执行控制图表( F C C ) 来控制其算法的执行。1 3 . 9 双向事务b i d r e c t i o n a l t r a n s a c t i o n 请求和可能的数据从请求者传到响应者, 以及响应和可能的数据从响应者传回到请求者的事务 。1 . 3 . 1 0 字符c h a r a c t e r 用于表达、 组织或控制数据的一组元素中的一员。 I 5 O i A F N O R: 1 9 8 9 1 3 . 1 1 通信连接c o m m u n i c a t i o n c o n n e c t i o n 为了传送信息, 利用一个或多个资源的“ 通信映射功能”的连接。1 . 3 . 1 2 通信功能块c o m mu n i c a t i o n f u n c t io n b l o c k 表示应用和资源“ 通信映射功能” 之间的接 口的服务接 口功能块 。1 3 . 1 3 通信功能块类型c o m m u n i c a t io n f u n c t i o n b lo c k t y p e 其实例是通信功能块的功能块类型。1 . 3 . 1 4 组件功能块c o m p o n e n t f u n c t i o n b l o c k 用于复合功能块类型的算法规范的功能块实例。 注: 组件功能块可以是基本、 复合或者服务接口 类型。1 . 3 . 1 5 组件子应用c o m p o n e n t s u b a p p l i c a t io n 用于子应用类型规范的子应用实例。1 3 . 1 6 复合功能块类型 c o m p o s i t e f u n c t io n b lo c k t y p e 其算法和执行控制完全按照互连的组件功能块, 事件和变量来表示的功能块类型。1 3 . 1 7 并发c o n c u r r e n t 与在公用的时间周期内执行并且在此期间内可能交替共享公共资源的算法有关。1 3 . 1 8 配置( 系 统或设备) c o n f i g u r a t i o n ( o f a s y s t e m o r d e v i c e ) 选择功能单元、 指定它们的位置并且定义它们的互连。标准下载网()GB / T 1 9 7 6 9 . 1 -2 0 0 51 . 3 . 1 9 配置( 可编程控制器系统) c o n f i g u r a t i o n ( o f a p r o g r a m m a b l e c o n t r o l l e r s y s t e m ) 与G B / T 1 5 9 6 9 . 1 中定义的可编程控制系统相对应的语言元素。1 3 . 2 0 配置参数c o n f i g u r a t i o n p a r a m e t e r 与系统 、 设备和资源配置相关的参数。1 3 . 21 证实原语c o n f i r m p r i mi t i v e 表示一种交互的服务原语, 其资源指示先前由请求原语表示的交互所调用的算法已完成。1 3 . 2 2 连接c o n n e c t i o n 功能单元之间为传递信息建立起来的联系。 I S O / A F N O R: 1 9 8 9 1 . 3 . 2 3 临界区c r i t i c a l r e g i o n 在锁定对象的互斥控制下执行的一种操作或操作序列。操作在锁定对象的相关数据上执行。1 3 . 2 4 数据d a t a 信息的可解释的形式化表示, 以使用于通信 、 解释或处理。 仁 G B / T 5 2 7 1 . 1 0 1 . 0 1 . 0 2 1 . 3 . 2 5 数据连接 d a t a c o n n e c t i o n 为了传递数据 , 在两个功能块之间的联系。1 3 . 2 6 数据输入d a t a i n p u t 从数据连接接收数据的功能块接 口。1 3 . 2 7 数据输出 d a t a o u t p u t 提供数据给数据连接的功能块接 口。1 3 . 2 8 数据类型 d a t a t y p e 值的集合及其允许的操作的集合。 G B / T 5 2 7 1 . 1 5 1 5 . 0 4 . 0 1 1 . 3 . 2 9 声明d e c l a r a t i o n 建立实体的定义的机制 。 注: 声明可包括, 给实体附加标识符, 分配属性, 如它的数据类型和算法。1 3 . 3 0 设备d e v i c e 独立的物理实体。具有在特定环境中执行一个和多个规定功能的能力, 并 由其接 口分隔开。 注: G B / T 1 5 9 6 9 . 1 中定 义的 可编程控制器系统是一 种设备。1 . 3 . 3 1 设备管理应用d e v i c e m a n a g e m e n t a p p l i c a t io n 其基本功能是管理设备内多个资源的应用。 GB / T 1 9 7 6 9 . 1 -2 0 0 51 3 . 3 2 实体e n t i t y 特定的事物 , 如: 一个人、 地点、 过程、 对象、 概念、 联系或事件 。1 . 3 . 3 3 事件e v e n t 瞬时发生的事情 , 对算法执行的调度有意义。 注: 算法的执行可以使用与事件相关的变量。1 3 . 3 4 事件连接 e v e n t c o n n e c t i o n 功能块之间为了传送事件的联系。1 3 . 3 5 事件输入 e v e n t i n p u t 可从事件连接接收事件的功能块接 口。1 3 . 3 6 事件输入变A( E I 变f) e v e n t in p u t v a r i a b l e 与一个事件输人相对应的布尔变量 。1 . 3 . 3 7 事件输出e v e n t o u t p u t 可发出事件到事件连接的功能块接 口。1 . 3 . 3 8 事件输出变皿( E O变f) e v e n t o u t p u t v a r i a b l e 与一个事件输出相对应的布尔变量。1 . 3 . 3 9 异常e x c e p t i o n 导致正常执行中止的事件 。1 3 . 4 0 执行e x e c u t i o n 完成算法规定操作序列的过程。 注: 被执行的操作序列随功能块实例调用的不同而不同, 取决于功能块算法规定的规则和功能块数据结构中变量 的当前值。1 3 . 41 执行控制动作( E C 动作) e x e c u t io n c o n t r o l a c t i o n 与执行控制状态相关的元素, 标识要执行的算法和该算法执行完成后要发出的事件。1 3 . 4 2 执行控制图表( E C C ) e x e c u t io n c o n t r o l c h a r t 使用执行控制状态, 执行控制转换和执行控制活动来表示功能块事件输人 、 事件输出上的事件与功能块算法执行之间的因果关系的图形或文字表达。1 , 3 . 4 3 执行控制初始状态( E C初始状态) e x e c u t io n c o n t r o l i n it i a l s t a t e 执行控制图表初始化时处于活动的执行控制状态。1 . 3 . 4 4 执行控制状态( E C状态)e x e c u t i o n c o n t r o l s t a t e 基本功能块的行为状况, 其变量由具有一组规定的执行控制活动的算法所确定。G B / T 1 9 7 6 9 . 1 -2 0 0 51 . 3 . 4 5 执行控制转变( E C转变) e x e c u t i o n c o n t r o l t r a n s i t i o n 指控制从前一种执行控制状态转到下一种执行控制状态。1 3 . 4 6 故障f a u l t 导致功能单元实现其规定功能的能力减少或失去的异常条件。 I E C 6 1 5 0 8 - 4 : 1 9 9 8 1 3 . 4 7 功能f u n c t i o n 实体的特定目的或它的特有活动。1 3 . 4 8 功能块f u n c t i o n b l o c k 功能块实例f u n c t i o n b lo c k i n s t a n c e 由功能块类型规定的数据结构的一个独立的、 已命名的副本和相关操作所组成的软件功能单元。 注 1 : 功能块典型的操作包括在相关数据结构中数据值的修改。 注2 : G B / T 1 5 9 6 9 . 3 中定义的功能块实例和它相应的功能块类型是具有不同特征的编程语言元素。1 . 3 . 4 9 功能块网络f u n c t i o n b l o c k n e t w o r k 其节点是功能块或子应用及它们的参数 、 其分支是数据连接和事件连接的网络。 注: 这是 G B / T 1 5 9 6 9 . 3 中定义的功能块图的推广。1 3 . 5 0 功能单元f u n c t i o n a l u n i t 能够完成特定任务的硬件实体, 软件实体, 或硬件实体和软件实体。 G B / T 5 2 7 1 . 1 0 1 . 0 1 . 4 0 1 . 3 . 5 1 硬件h a r d w a r e 相对于程序、 过程、 规则和相关文档的物理设备 。 I S O / A F N O R : 1 9 8 9 1 . 3 . 5 2 标识符id e n t i f i e r 用来命名实体的一个或多个字符。1 . 3 . 5 3 实现i m p l e m e n t a t i o n 使系统的硬件和软件成为可操作的开发阶段。1 , 3 . 5 4 指示原语 i n d i c a t io n p r i m i t i v e 表示一种交互的服务原语 , 其资源指示 : 在 自身的初始化时已经调用了某些算法; 或某个算法 已被对等的应用调用。1 3 . 5 5 信 息i n f o r ma t i o n 通过施加于该数据上的某些约定 , 当前赋予这些数据的特定含义。 仁 I S O / A F N O R : 1 9 8 9 G B / T 1 9 7 6 9 . 1 -2 0 0 51 3 . 5 6 输入变f i n p u t v a r i b l e 由数据输人提供其值的一种变量, 可在功能块的一个或多个操作中使用。 注: G B / T 1 5 9 6 9 . 3 中定义的功能块输人参数是输人变量。1 . 3 . 5 7 实例i n s t a n c e 由带有所定义类型的属性的独立、 有名实体组成的功能单元。1 . 3 . 5 8 实例名i n s t a n c e n a m e 与实例相联系, 并标明该实例的标识符 。1 . 3 . 5 9 实例化in s t a n t i a t i o n 规定类型的实例的创建。1 3 . 6 0 接 口i n t e r f a c e 两个功能单元之间共享的边界, 由功能特征、 信号特征或其他适当特征来定义。 G B / /T 2 9 0 0 . 5 6 11 . 3 . 6 1 内部操作( 功能块) i n t e r n a l o p e r a t io n s ( o f a f u n c t i o n b l o c k ) 与功能块算法相关的操作 , 带有其执行控制或相关资源的功能性。1 . 3 . 6 2 内部变11 i n t e r n a l v a r i a b l e 值由功能块的一个或多个操作使用或修改, 但不由数据输人提供也不提供给数据输出的一种变量。1 . 3 . 6 3 调用i n v o c a t i o n 启动算法所规定的操作序列执行的过程。1 3 . 6 4 文字值l i t e r a l 直接表示一个值的文字单元。1 3 . 6 5 管理功能块m a n a g e m e n t f u n c t i o n b l o c k 基本功能是管理资源中的应用的功能块。1 3 . 6 6 管理资源m a n a g e m e n t r e s o u r c e 基本功能是管理其他资源的资源。1 3 . 6 7 映射m a p p i n g 已定义的特征或属性的集合 , 与另一集合的成员相对应。1 3 . 6 8 报文m e s s a g e 用于传递信息的有序字符列。 仁 G B / T 5 2 7 1 . 1 6 1 6 . 0 2 . 0 1 G B / T 1 9 7 6 9 . 1 -2 0 0 51 3 . 6 9 报文宿m e s s a g e s i n k 通信系统中的接收报文的那一部分 。 仁 G B / T 5 2 7 1 . 1 6 1 6 . 0 2 . 0 3 1 3 . 7 0 报文源m e s s a g e s o u r c e 通信系统中发出报文的那一部分。 G B / T 5 2 7 1 . 1 6 1 6 . 0 2 . 0 2 1 3 . 7 1 模型m o d e l 真实世界中过程 、 设备或概念的表示。1 3 . 7 2 多任务m u l t it a s k i n g 提供两个或多个算法并发执行的操作模式。1 3 . 7 3 网络n e t w o r k 节点和互联分支 的一种安排。 G B / T 5 2 7 1 . 1 0 1 . 0 1 . 4 4 1 3 . 7 4 操作o p e r a t i o n 一种完全明确的动作, 该动作作用于任何已知实体的允许组合时, 产生一个新的实体。 仁 G B / T 5 2 7 1 . 2 0 2 . 1 0 . 0 1 1 3 . 7 5 输出变f o u t p u t v a r i a b l e 其值由功能块的一个或多个操作建立并提供给数据输出的变量。 注: G B / T 1 5 9 6 9 . 3 中 定义的功能块的 输出 参数是输出 变量。1 3 . 7 6 参数p a r a m e t e r 一种变量 , 为每一特定应用赋予一个常数值, 也可用它来标志应用。 G B / T 5 2 7 1 . 2 0 2 . 0 2 . 0 4 1 3 . 7 7 插头适配器p l u g a d a p t e r 为来 自提供者功能块的一个适配器连接提供起始点的适配器接 口类型的实例 。1 3 . 7 8 提供者p r o v id e r 提供已定义适配器接 口类型的插头适配器的功能块实例 。1 3 . 7 9 请求原语r e q u e s t p r imi t i v e 表示一种交互的服务原语。其应用调用服务提供的某些算法。1 . 3 . 8 0 请求者 r e q u e s t e r 通过请求原语发起一个事务的功能单元。 G B / T 1 9 7 6 9 . 1 - 2 0 0 51 3 . 8 1 资源r e s o u r c e 一种有独立的操作控制的功能单元 , 为应用提供多种服务, 包括算法的调度和执行 。 注 1 : G B / T 1 5 9 6 9 . 3 中定义的 R E S O U R C E是一种编程语言元素, 与上述定义的资源相对应。 注 2 : 一个设备包含一个或多个资源。1 . 3 . 8 2 资源管理应用r e s o u r c e m a n a g e m e n t a p p l i c a t io n 主要功能是管理单个资源的应用 。1 3 . 8 3 响应者r e s p o n d e r 通过响应原语结束一个事务的功能单元 。1 3 . 8 4 响应原语 r e s p o n s e p r im it i v e 表示一种交互的服务原语 , 其应用指示它已经完成 了先前 由一个指示原语表示的交互所调用的某些算法。1 3 . 8 5 采样s a m p le 为以后使用而检测和保持变量的瞬时值。1 . 3 . 8 6 调度功能 s c h e d u l i n g f u n c t i o n 选择要执行的算法和操作并启动和终止其执行的功能。1 . 3 . 8 7 服务s e r v i c e 资源可使用的功能性, 可以用服务原语序列来模型化。1 . 3 . 8 8 服务接口功能块s e r v i c e i n t e r f a c e f u n c t i o n b l o c k 基于服务原语对功能块的事件输人、 事件输出、 数据输入和数据输出的映射, 为应用提供一个或多个服务的功能块。1 3 . 8 9 服务原语 s e r v ic e p r i m i t i v e 应用和资源之间交互的抽象且与实现无关 的表示 。1 . 3 . 9 0 插座适配器 s o c k e t a d a p t e r 为到接受器功能块的适配器连接提供端点 的适配器接 口类型的实例 。1 . 3 . 9 1 软件s o f t w a r e 知识产物, 包含与系统操作有关的程序、 过程、 规则、 配置以及任何相关的文档。1 . 3 . 9 2 软件工具s o f t w a r e t o o l 用来制作 、 检查和分析其他软件的软件。1 3 . 9 3 子应用实例 s u b a p p l ic a t i o n i n s t a n c e 在应用或子应用类型中的子应用类型的实例。G B / T 1 9 7 6 9 . 1 -2 0 0 5 注: 一个子应用实例可以分布在多个资源中。如, 它的组件功能块或者组件子应用的内容可以分配给不同的资源。1 3 . 9 4 子应用类型s u b a p p l i c a t io n t y p e 其主体由互连的组件功能块或者组件子应用构成的功能单元。 注: 子应用类型允许以自相类似的层次结构的形式建立应用的子结构。1 3 . 9 5 系统s y s t e m 在所定义的范围内被视为整体且与其环境相分离的相关元素的集合。 仁 G B / T 2 9 0 0 . 5 6 注 1 : 这些元素可以是物质对象和概念及其结果( 如: 组织形式、 数学方法以及编程语言) 。 注 2 : 系统被看作是由一个假设的界面将其与环境和其他外部系统分开的, 该界面可以切断该系统和环境及其他外 部系统的连接。1 3 . 9 6 事务t r a n s a c t io n 将来 自 请求者的请求或可能的数据传送到响应者并且也可将来 自 响应者的响应或可能的数据传 回到请求者的服务单元。1 3 . 9 7 类型t y p e 规定所有该类型实例所共享的公共属性的软件元素 。1 3 . 9 8 类型名t y p e n a m e 与类型相联系, 并标明该类型的标识符 。1 . 3 . 9 9 单向事务u n i d i r e c t io n a l t r a n s a c t io n 将来 自请求者的请求或可能的数据传送到响应者, 但不能将来 自响应者的响应传 回到请求者的一种事务。1 3 . 1 0 0 变f v a r i a b l e 在不同时间可具有不同值的软件实体 。 注 1 : 变量的值通常限于某种数据类型。 注 2 : 变量可分为输人变量、 输出变量和内部变量。1 . 4 参考模型1 . 4 . 1 系统模型 在本部分中, 工业过程测量和控制系统 ( I P MC S ) 被模型化 。如图 1 所示, 该模型是相互连接并通过一个或多个通信网络相互通信的设备的集合。这些网络可用分层方式来组织。 G B / T 1 9 7 6 9 . 1 -2 0 0 5 通信网络下J.i 3 4il Bd 注: 被控过程不是该测量和控制系统的一部分。 图 1 系统模型 I P MC S 所执行的一个功能被模型化为一个应用, 该应用可驻留在单个设备中, 如图1 中的应用C ,也可分布在多个设备中, 如图 1 中的应用 A和 B 。例如 , 一个应用可由一个和多个控制 回路组成, 其中,输人采样在一个设备中执行 , 控制过程在另一个设备中执行 , 而输出转换则在第三个设备中执行。1 . 4 . 2 设备模型 如图 2 所示, 一个设备至少包含一个接 口, 即过程接 口或通信接 口, 并且包含零个或多个资源。 注 1 : 按照本部分第 4 章中的规定来定义, 设备被视为是相应设备类型的实例。 注 2 : 不包含资源的设备被视为在功能上等同于 1 . 4 . 3 中定义的资源。 “ 过程接口” 提供物理过程( 模拟量测量、 离散 1 / 0等) 和资源之间的映射。与物理过程交换的信息以数据、 事件或者两者都有的形式提交给资源。 通信接 口 提供资源和经过通信网络交换的信息之间的映射 。通信接 口可以提供的服务包括: 把通信信息以数据、 事件或者两者都有的形式提交给资源; 支持编程、 配置 、 诊断等的其他服务 。1止口 被控过程 图 2 设备模型 ( 例如 : 图 1 中的设备 2 )G B / T 1 9 7 6 9 . 1 -2 0 0 51 . 4 . 3 资源模型 本部分中, 资源被视为功能单元。资源包含在设备中, 有独立的操作控制。可以建立、 配置、 参数化、 启动、 删除等, 而不影响设备中的其他资源。 注 1 : 按照本部分第 4 章的规定来定义, 资源被视为是对应资源类型的实例。 注 2 : 尽管资源有独立的操作控制, 但为了安装、 测试等目的, 它的运行状态可能需要与其他资源的运行状态进行 协调 。 资源的功能是接受来 自过程和 或通信接 口的数据和 或事件、 处理数据和 或事件、 并返回数据和或事件到过程和 或通信接口, 如应用使用资源所规定的那样。 注 3 : 资源其他方面的考虑超出了本部分的范围。 如图3 所示, 通过以下方面使资源模型化: 一个或多个“ 本地应用” ( 或者分布式应用的本地部分) 。这部分处理的变量和事件是应用执行 所需操作的功能块 的输人和输出变量和事件输人和事件输 出上的事件 。 一个“ 过程映射” 部分 , 其功能是执行应用和过程接 口之间的数据和事件的映射 。如图 3 所示 , 这一映射可 以通过特定的服务接口功能块来模型化。 一个“ 通信映射” 部分, 其功能是执行应用和通信接口之间的数据和事件的映射。如图3 所示, 这一映射可通过特定的服务接 口功能块来模型化 。 一个调度功能。按照所确定的时序要求, 影响应用中功能块的执行和功能块间的数据传送。 时序要求 由以下条件决定 : 1 ) 事件的发生; 2 ) 功能块互连 ; 3 ) 周期、 优先级等调度信息。 获得传统调度功能的方法, 如功能块网络的周期执行, 在G B / T 1 9 7 6 9 . 3中描述。位氢 注 1 : 本图仅作说明, 图示或功能块的位置并不作为标准。 注 2 : 在资源之间可能会共享通信和过程接口。 图 3 资源模型1 . 4 . 4 应用模型 本部分中, 一个应用由一个功能块网络组成。其节点是功能块或子应用及它们的参数 , 其分支是数据连接和事件连接。 G B / T 1 9 7 6 9 . 1 -2 0 0 5 子应用是子应用类型的实例, 子应用跟应用由功能块网络所组成一样。应用名 、 子应用和功能块的实例名可用来建立标识符的分级结构, 可唯一地标识系统中的每个功能块实例。 一个应用可分布在同一设备或不同设备的几个资源中。资源使用由应用指定的因果关系来决定对事件作出适当的响应。事件可以由通信和过程接口或者资源的其他功能所引起 。这些响应包括: 算法的调度和执行; 变量的修改; 其他事件的产生 ; 与通信和过程接 口的交互。 本部分上下文中, 应用通过指定功能块或子应用实例中的事件和数据流的功能块网络来定义, 如图4 所示。根据第2 章给出的规则, 事件流通过每一功能块算法指定操作的相关资源来决定调度和执行 。 遵从本部分的标准 、 组件和系统可以指定执行调度的替代方法。这些替代方法应该使用本部分所定义的元素来完整地规定。一咬一 注 1 : “ ! ” 表示功能块或子应用实例。 注 2 : 本图仅用作说明, 其图形表示并不作为标准。 图 4 应用模型1 . 4 . 5 功能块模型 功能块( 功能块实例) 是一种软件功能单元, 由功能块类型所指定的数据结构的单独的、 已命名的副本组成, 在功能块的一次调用到下一次调用期间持续存在。功能块实例的特征在 1 . 4 . 5 . 1中描述。功能块类型规范在1 . 4 . 5 . 2中描述。1 . 4 . 5 . 1 功能块实例的特征 功能块实例有以下特征, 如图5 所示: 类型名和实例名: 一组事件输人 , 每个都可以从事件连接接收事件 , 这些事件可能影响一个或多个算法的执行; 一组事件输出, 每个都可以向事件连接发出事件 , 这些事件的发 出取决于算法的执行或功能块 所在资源的其他功能性; 一组数据输人 , 可被映射到相应的输入变量 ; 一组数据输出, 可被映射到相应的输出变量; 内部数据 , 可被映射到一组内部变量 ; 通过把内部数据或状态信息或两者与一组算法、 相关资源的功能性 、 或者两者结合来 决定功 能特征, 这些功能特征在功能块的类型规范中定义。 注 1 : 内部状态信息可通过内部变量或者一个执行控制状态机的内部表示来表示。G B / T 1 9 7 6 9 . 1 -2 0 0 5 事件物入事件物出 实例名I 事件 流一 门I二 一I r 一事件 流 数据流l lL 袱,1 1数据 流 数 据 , 入 据 , 出 资源能力 ( 调度、 通信映射、过程映射) 注: 本图仅作说明, 其图形表示并不作为标准。 图5 功能块的特征 功能块包含的算法原则上对于功能块的外部是不可见的, 除非功能块的提供者提供了正式或非正式的描述。此外, 功能块可以包含内部变量或者状态信息或者两者。它们在功能块算法的调用之间一直存在 , 但通过来 自功能块外部的数据流连接不能访问它们 。 注 2 : 相关资源的其他功能性可提供对功能块实例的内部变量和状态信息的访问, 如图 2 3 一图 2 6 所示。 在事件输入、 事件输出和算法执行中对因果关系的规定方法在本部分第2 章和第3 章中定义。1 . 4 . 5 . 2 功能块类型规范 功能块类型是一种软件元素, 规定了该类型所有实例的特征, 包括: 类型名; 事件输人、 事件输出的编号、 名字、 类型名和顺序; 输人、 输出和内部变量的编号、 名字 、 数据类型和顺序 。 这些特征的声明机制在2 . 2 . 1 中定义。 另外, 功能块类型规范定义了该类型实例的功能性。这些功能性描述如下: 对于基本功能块类型, 2 . 2 . 1 . 2中提供 了算法规范的声明机制 , 算法对输入变量、 输出变量和 内部变量的值进行操作, 产生输出变量和内部变量的新值。使用2 . 2 . 1 . 3 中定义的声明机制, 按照执行控制图表( E C C ) 来 表示算法 的调用 和事 件输人和事件输 出上发生 的事件之间的 联 系 ; 复合功能块类型或子应用类型实例的功能性, 分别使用2 . 3 . 1 和2 . 4 . 1 中定义的机制, 按照在 它的组件功能块或者子应用中的数据连接和事件连接以及复合功能块或者子应用的事件、 数 据的输人、 输出来声 明。 服务接 口功能块类型实例的功能性, 使用 3 . 1中定义的声明机制 , 通过服务原语到事件输人、 事件输出、 数据输人和数据输出的映射来描述。 其他方法, 例如可用 自 然语言文字来描述功能块类型的功能性 ; 但这类方法的规范超出了本部 分的范围。 G B T 1 9 7 6 9 . 1 -2 0 0 51 . 4 . 5 . 3 基本功能块的执行模型 如图6 所示, 通过响应事件输人上的事件的功能块实例的执行控制部分来调用基本功能块的算法的执行 。这种调用采用请求相关资源的调度功能来调度算法操作的执行。一旦算法执行完成 , 执行控制在适当的事件输出上产生零个或多个事件 。 注 1 : 通过连接到其他功能块实例或者同一功能块实例的事件输出来提供在事件输人上的事件。这些事件输出上 的事件可通过以下方面来产生: 以上所述的执行控制; 资源的“ 通信映射” 、 “ 过程映射” 、 “ 调度” 或其他功能性。 注 2 : 复合功能块中的执行控制通过该功能块内的事件流获取。 对于单个的事件输人、 单个的算法和单个的事件输 出相互关联的情况 , 图 6 描述了事件和算法执行的顺序。图中有关时间定义如下: t , : 相关输人变量的值( 例如, 那些通过2 . 2 . 1 . 1 中定义的WI T H限定词与事件输人联系在一起的 输人变量值) 变为可用 ; t 2 : 事件输人上事件的发生; t 3 : 执行控制功能通知资源调度功能去调度一个算法的执行 ; t 4 : 算法执行开始 ; t 5 : 通过2 . 2 . 1 . 1中定义的WI T H限定词将输出变量与事件输出联系在一起, 算法完成了值的建立; t 6 : 通知资源调度功能, 算法的执行已经结束; t 7 : 调度功能调用执行控制功能 ; t 8 : 执行控制功能在事件输出上发出一个事件。 如图 7 所示 , 应用设计 中所关心的重要的延时有 : T s etu p - t 2 一t i ; T s tar t - t 4 - t 2 ( 从事件输人上的事件产生到算法执行开始的时间) ; T . IR = t 6 - t 4 ( 算法执行的时间) ; T tttti, 6 = t 8 - i s ( 从算法执行结束到在事件输出上事件产生的时间) 。z fir #,ii3 i 4 ii 注: 本图仅作说明, 图示并不作为标准。 图 6 执行模型G B / T 1 9 7 6 9 . 1 -2 0 0 5 T- 1 Tx.n 口暇 、脚曰1 TFa.a曰 1 2 3 4 5 6 7 8 注: 图中横坐标的标记 1 , 2 , 二 分别对应前面所述的 t j , t 2 . . . . 圈 7 执行时序 通常情况( 包含以上情况) 下的功能块执行控制规范的标准化要求在本部分的第 2 章中定义。 注 1 : 带有算法执行的输人变量值的同步, 可能存在不同的要求, 取决于要解决的问题。例如, 这些要求可能包括: 确保算法所 使用的变 量的 值在算法执行期间 保持不变; 确保 算法 使用的 变量的 值与引起调度算法执 行的 事件输人上事 件发 生时的 数据一致; 确保功能块中所有被调度执行的算法所使用的变量值与事件输人上事件发生时的数据一致, 该事件引起 第一个算法的调度执行。 本部分的使用者应当意识到如果这些要求不能满足, 算法执行的结果是不可预测的。 本部分的附录 I 描述了满足以上要求的机制。 注 2 : 在多任务的情况下, 资源可能需要调度算法的执行。附录J 中描述了利于实现这种调度的属性规范。1 . 4 . 6 分布式模型 通过分配其功能块实例到一个或多个设备中的不同资源中, 一个应用或子应用可以成为分布式的。由于功能块的内部细节对于使用它的任何应用或子应用都是隐藏的, 因此功能块必须形成一个分布的基本单元 。即, 一个给定功能块实例包含的所有元素必须包含在 同一资源 中。应用或子应用的功能块之间的功能关系应不受其分布的影响。然而, 与限定在单个资源中的一个应用或子应用相比, 通信功能的时序和可靠性将影响分布式应用或子应用的时序和可靠性。 当应用或子应用分布在多个资源中时, 本部分的下列章节适用: 对于多个应用或子应用分布在多个资源和设备中的情况, 本部分的第4 章定义了相应的要求; 为了支持在多个设备中应用或子应用的分布 , 本部分的第 3 章定义了通信服务的要求。1 . 4 . 7 管理模型 图8 给出了 资源和设备管理的示意图。图8 a ) 描述了一个管理资源为在一个设备中的 其他资源的管理提供共享设施的 情况, 而图8 b ) 描述了在一个设备内资源之间管理服务的分布。管理应用可使用与实现相关的服务接口 功能块和通信功能块来模型化。 注 1 : 为了应用的管理, 3 . 3 定义了服务接日功能块类型。附录G给出了它们的使用示例。 注 2 : 为了设备或资源参数的查询或修改, 管理应用可包含表示设备或资源实例的服务接口功能块实例。 G B / T 1 9 7 6 9 . 1 -2 0 0 5 通信链接1aQNits %my iM*,ffAA)u A M B9FilyVINAM & 10 Czhjc z$# Q 受控过程 。 ) 共享的 通信链接 ritll 通信接 口巨 If Ax If尊 受控过程 b ) 分布的 图 8 管理模型1 . 4 . 8 操作状态模型 任何系统都必须被设计 、 调试 、 运行和维护 。这可用系统“ 生命周期” 概念来模型化。换言之 , 一个系统由几个功能单元组成 , 如设备 、 资源和应用 , 每个都有 自己的生命周期。 要在生命周期的每一阶段支持功能单元 , 必须执行不 同的动作。为了描述可以完成哪些动作和维护功能单元的整体性, 必须定义“ 操作状态” , 如“ O P E R A T I O N A L , C O N F I G U R A B L E , L O A D -E D , S T O P P E D , 等。 功能单元的每个操作状态规定了允许的动作以及预期的行为。 通过某些功能单元拥有或取得修改其他功能单元操作状态的权力的方法来组织一个系统 。 操作状态的使用示例: 在“ R U N N I N G ” 状态下, 即处于执行中的功能单元不能接收下载动作; 分布式功能单元可能需要在它的组件之间保持一致的操作状态, 并开发一个策略以在其组件之间传播操作状态的改变。 3 . 3 . 3中为受管功能块实例定义了操作状态。G B / T 1 9 7 6 9 . 1 - 2 0 0 52 功能块和子应用类型规范2 . 1 概 述 如图 9 所示 , 本章定义了三种块的类型规范方法 : 如图9 a ) 所示, 2 . 2 定义了规定和决定基本功能块类型实例行为的方法。在这一功能块类型中, 执行控制由执行控制图表( E C C ) 规定, 将要执行的算法按 I E C / P A S 6 1 4 9 9 - 4 : 2 0 0 2 定义的一致性标准中所规定的方法来声明。 如图9 b ) 所示, 2 . 3 定义了规定复合功能块类型的方法。在这一功能块类型中, 算法和它们的执行控制通过在一个或多个功能块网络中的事件和数据连接来确定。 如图9 c ) 所示, 2 . 4 定义了规定子应用类型的方法。在这种块类型中, 算法和它们的执行控制如同复合功能块类型那样规定 , 但子应用的组件功能块具有特定属性 , 可以分布在多个资源 中。子应用可以嵌套, 因此子应用也可以包含组件子应用。 E I 变量E O 变量E l 变量E O 变量- Affnoi i-y : t*1 rS I 翰入变量翰出变量输入变量物出变量 a ) 基本功能块 ( 见 2 . 2 ) b ) 复合功能块( 见 2 . 3 ) 事件愉入事件输出 阿 数据愉入数据愉出 c ) 子应用( 见 2 . 4 ) 注: 本图仅作说明, 其图形表示并不作为标准。 图 9 功能块和子应用类型 G B / T 1 9 7 6 9 . 1 -2 0 0 5 其他方法也可用于描述功能块类型实例的行为。这些方法的规范超出了本部分的范围; 因此, 当使用这些方法时, 应当给出其术语和概念与本部分对应的术语和概念之间的无歧义的映射。2 . 2 基本功能块 基本功能块使用执行控制图表( E C C ) 来控制它的算法的执行。2 . 2 . 1 类型声明 如图 1 0 所示 , 基本功能块类型可根据附录,B . 2中规定的语法以文本的形式来声明, 也可根据以下规则以图形的形式来声明: a ) 在主矩形块的顶部中央处给出功能块 的类型名 ; b ) 输人变量 、 输出变量的名称和类型声明分别在主矩形块的左、 右两边给出; c ) 功能块类型与事件的接口按本部分2 . 2 . 1 . 1 中的规定来声明; d ) 功能块类型相关的算法按本部分 2 . 2 . 1 . 2的规定来声明; e ) 相关算法的执行控制按本部分 2 . 2 . 1 . 3 的规定来声明。 I N I T F V F N T一一二习不而一一一一一代而畏几干I N I 丁E V E N T E V E N T一 王 正弓 E X E X O卜刊 一曰一 E V E N T BOOL -E H -1- -i HOL D XOL T /- - E 8 - B 一一R EAL R EAL R一 XI N I T I M E -E B - 位兰匕一一一口 注 1 : 本例的文字形式的声明见附录 Ho 注 2 : 本例仅作说明, 描述的细节并不作为标准。 图 1 0 基本功能块类型声明2 . 2 . 1 . 1 事件接口声明 如图 1 0 所示, 可根据附录 B . 2中给出的语法以文本形式来声明对事件的基本功能块类型的接 口,或者根据以下规则以图形 的形式来声明: a ) 事件接口位于块顶部的明显区域 , 该区域可具有如 G B / T 4 7 2 8 . 1 2 N O . 1 2 - 0 5 - 0 2 规定的公共控制块外形的形式; b ) 事件输人的名称在控制块的左边给出; c ) 事件输出的名称在控制块的右边给出 ; d ) 事件类型在控制块的外部、 靠近与之相关的事件输人或输出处给出。 注 1 : 如果没有给出事件输人或输出的事件类型 则视为默认的类型 E V E N T , 注2 : 一个类型 E V E N T的事件输出可以被连接到一个任何类型的事件输人一 个类型 E V E N T的事件输人可接收 一个任何类型的事件。 注 3 : 除E V E N T之外的任何类型的事件输出只能连接到一个相同类型或 E V E N T类型的事件输人。 注 4 : 通过其在事件声明中的使用, 事件类型被隐含地声明。 如图1 0 和附录H所示, WI T H限定词或者一个等效图符可用来规定相关事件输人或事件输出上事件发生时, 哪些输入变量或输出变量应被分别采样, 如 2 . 2 . 2 . 2中的描述。当配置本部分第 4 章 中所描述的分布式应用时 , 这种信息可用来决定所需要的通信服务。每个输人变量和输出变量至少在一个WI T H 子句或其等效图符 中出现。 注 5 : 对所有输人变量的采样 进行规定是以上要求的结果。 注 6 : 基本功能块执行模型的WI T H限定词的应用见 1 . 4 . 5 . 3 a 注 7 : 对决定通信服务要求的WI T H限定词的使用示例见 G I 3 ! T 1 9 7 6 9 . 3 的附录C . 3 0G B / T 1 9 7 6 9 . 1 - 2 0 0 52 . 2 . 1 . 2 算法声明 如附录H所示, 根据附录B给出的功能块类型声明规范的规则, 与基本功能块类型相关的算法可包含在功能块类型声明中。 其他方法也可用于算法标识符和主体部分的规范; 然而, 这些方法的规范超出了本部分的范围。2 . 2 . 1 . 3 算法执行控制的声明 基本功能块类型的算法调用顺序可在功能块类型规范中进行声明。如果一个基本功能块类型的算法按2 . 2 . 1 . 2 规定的( 或其他等同的方法) 那样来定义, 则这一功能块的算法调用顺序可具有执行控制图表( E C C ) 的形式。E C C包含E C状态、 E C转变和E C动作。这些元素说明和解释如下: a ) E C C包含在功能块类型声明的一个执行控制块的段中, 由控制块结构来封装; b ) E C C应该确切包含一个E C初始状态, 使用含有相关标识符的双线边框矩形来表示; E C初始 状态应没有相关的 E C动作 。 c ) E C C应该包含一个或多个E C状态, 每一个都使用含有相关标识符的单线边框矩形来表示。 d ) E C C可以使用( 但不能修改) 与控制块事件输人同名的事件输人( E l ) 变量; 与事件输入相关的 这些变量应按 2 . 2 . 2 中的方法来定义。 e ) E C C可以使用和 或修改与控制块事件输出同名的事件输出( E O ) 变量; 与事件输出相关的这 些变量应按 2 . 2 . 2 中的方法来定义。 f ) E C C可使用但不能修改在功能块类型规范中声明的变量。 9 ) 一个E C状态可有零个或多个相关的E C动作, E C动作与E C状态的联系可用图形或文本的 形式来表示。 h ) 与一个E C动作相关的算法( 如果有) 以及在该算法完成后发出的事件( 如果有) 应以图形或文 本形式来表示 。 i ) 一个E C转变应使用图示或文本的形式来表示, 从一个E C状态直接连接到另一个( 或同一个) E C状 态 。 l ) 每个 E C转变应有一个相关布尔条件 , 等效于使用功能块的一个或多个事件输人变量 、 输入变 量 、 输出变量或内部变量的布尔表达式。 图1 1 描述了一个E C C的元素。附录H中给出了使用附录B . 2中的语法的等效文本声明。 注 1 : 根据 2 . 2 . 2 给出的模型, 与先前 E C状态相关的算法完成其执行之前, 不能对 E C转变条件进行计算。例如, 跟随在 E C状态 I N I T和 M A I N之后的 E C转变 1 等效于分别使用 I N I T O和 E X O的情况。 注 2 : 在此限定范围内, 因为符号的引用可从它的用法轻易推出, 所以相同的符号( A Q , I N I T ) 可用来表示一个 E C状 态和算法名。 某 EE C VlMtkigC VMSEC1INIT EX 1 EC IfINIT H INIT I INITO I MAIN MAIN EXO事件 E C 状态算法 图 1 1 E C C示例 注 3 ; 斜体文字不是 E C C的组成部分。 注 4 : 如本图所示 , 算法与事件的一对一的关系是常见的, 但不是唯一可用的用法。其他用法的示例见表 A . 1 , 如 E S P L I T 块表示两个事件输出和一个状态的关系, 而不是和算法的关系; EME R G E表示一个输出事件, 而不 是算法, 和两个事件输入的关系; E D E MU X表示几个算法中的任何一个和单个的输人事件关系等等。 G B / T 1 9 7 6 9 . 1 - 2 0 0 52 . 2 . 2 实例行为2 . 2 . 2 . 1 初始化 通过资源, 初始化基本功能块实例在功能上应等效于以下过程 : a ) 每个输人、 输出和内部变量的值应该初始化为功能块类型规范中给出的相应初值 , 如果没有定 义这种初值, 变量的值应该初始化为变量数据类型定义的默认初值。 b ) 所有 E l 和 E O变量的值应重置为 F A L S E ( 0 ) o c ) 任何其他算法指定的初始化应该被执行, 例如: 所有G B / T 1 5 9 6 9 . 3 顺序功能图( S F C ) 的初始 步骤应被激活 , 而其他步骤被停活。 d ) 功能块执行控制图表( F C C ) 的 E C初始状态应被激活 , 所有其他 E C状态被停活。 注: 资源应执行的这些初始化的条件与实现相关。 功能块类型也可规定在适当事件发生时要执行的初始化算法, 例如图 1 1中所示的 I N I T算法。应用可规定这一算法执行的条件, 例如, 通过连接附录A中定义的E - R E S T A R T类型实例的一个输出到一个适当的事件输人, 如图1 0 中所示的I N I T输人。2 . 2 . 2 . 2 算法调用 通过请求资源调度功能调度算法操作的执行, 来调用与功能块实例相关算法的执行 。 注 1 : 由于功能块内部状态的改变, 算法执行的操作可能跟下一次执行的操作有所不同, 即使功能块只有一个算法 并且只有一个事件输 人来触发它的执行。 通过功能上等效于执行控制图表( F C C ) 的操作, 来完成基本功能块类型实例的算法调用。F C C的操作应该遵循 以下规则: a ) 资源应为每个事件输入保持一个 E l 变量及存储单元, 它表现了图 1 2 和表 I 中的状态机所定 义的行为; b ) F C C的操作应表现图 1 3 和表 2中的状态机所定义的行为; c ) 在与先前的 E C状态相关的算法完成它们的执行之前, E C转变条件的判定被禁止 。 注 2 : 这一模型会导致在同一事件输人上一个事件的多次发生可能在图 1 2 中的转变 t : 处丢失。这种丢失的检测和 处理( 如在 2 . 6 中描述的异常和故障) 是与实现相关的。 so r0r, r,s1 r2 图 1 2 事件输入状态机 表 1 事件输入状态机的状态和转变点洲一台G B / T 1 9 7 6 9 . 1 -2 0 0 5 育 图 1 3 E C C操作状态机 表2 E C C操作状态机的状态和转变书布二一于典于 育息注: 软件工具可提供确定其顺序的方法, 跟随活动 E C状态之后的 E C转变通过这种方法来计算。盲“ 资源在收到采自 图1 2 和表1 中 规定的 一个或多个事件输人状态机的一个或多个“ E C C 调用 请求” 后, 在一盲鲁个与实现相关的时间发出该条件。鲁盲 b该操作由 两部分组成: 将相应的E l 输人变量的值赋为T R U E ( 1 ) , 并按2 . 2 . 1 . 1 中的 描述对用W I T H声明鲁的与该事件输人相关的输人变量进行采样。对每一事件及其相关输人变量, 采样应当用临界区的方法来 实现 。三 “ 该操作 由发 出“ 输 人被 映射” 的证实到该功能块 的所有事件输人状态机所组成。二一 d该操作由 计算活动E C 状态 之后的 所有E C 转变的条 件和 为了 建立一个T R U E 条件而清除 第一个E C 转变言( 如果有的话) 所组成。“ 清除 E C转变” 由停活其先前的 E C状态和激活其后继的 E C状态所组成。鲁“ 该操作的组成为: 对于其相关 E O变量的值为 T R U E ( 1 )的每一事件输出, 按 2 . 2 . 1 . 1 中描述的用 WI T H鲁声明的与该事件输出相关的每一输出变量进行采样, 然后通过重置相关 E O变量的值为 F A L S E ( 0 ) 之后,鲁在事件输出上发出一个事件。该采样应当用临界区的方法来实现。鬓 f该操作由 请求资 源去调度执行与活动E C状 态相 关的E C 动作中被 命名的 算法所组 成。吕 s 该条件 由与活动 E C状态相关的所有算法的执行完成所组成 ( 对于没有相关算法的 E C状态, 总是 为戛育TR UE ) 。盲 h该 操 作由 把 计 算 先 前 清 除 的 转 变 的 转 变 条 件中 使 用 的 所 有E l 变 量的 值 重 置 为F A L S E ( 0 ) 所 组 成。一 该 操 作 由 把 活 动E C 状 态 的E C 动 作 块 中 被 命 名 的E ( ) 变 量 的 值 赋 为 T R U E 0 ) 组 成 。鲁 G B / T 1 9 7 6 9 . 1 -2 0 0 52 . 2 . 2 . 3 算法执行 基本功能块中算法的执行应 由一组有限的操作序列的执行所组成 , 该操作序列由与实现相关 的规则确定, 这些规则适用于编写算法的语言、 算法执行所需的资源以及算法应用的领域。该序列的最后一个操作执行后, 算法的执行终止。 如果一个算法实现一个状态机 , 算法的重复执行需要识别或执行状态 的改变。通常在这些状态的改变和算法的完成之间没有联系。这类联系必须通过 2 . 2 . 2 . 2中描述的事件输出产生功能来建立。 注: 对一个资源所期望的响应的最低必要条件是: 从一个服务接 口 功能块输出上的事件到达开始 , 所有算法的最大 执行时间必须小于所有这些事件的最小内部事件到达时间的二分之一。可能还要求其他的限制, 这取决于应 用和资源的特性。2 . 3 复合功能块2 . 3 . 1 类型规范 复合功能块类型声明应遵循 2 . 2 . 1 给出的规则, 但通过组件功能块 的事件输入和事件输出与复合功能块的事件输人和事件输出互连来表示功能块调用的顺序和因果关系的情况除外。这一用法应遵循以下规则 : a ) 复合功能块的每一事件输人应连接到一个确切组件功能块的一个确切 的事件输入, 或连接到 该复合功能块的一个确切事件输出。图A . 1 中给出的事件分割图示的使用是个例外。 b ) 组件功能块的每一事件输人应连接到确切的另一组件功能块的至多一个事件输出, 或连接到 该复合功能块的至多一个的事件输人 。图 A . 1中给出的事件合并图示的使用是个例外 。 。 ) 组件功能块的每一事件输出应该连接到确切的另一组件功能块 的至多一个事 件输入 , 或连接 到该复合功能块的至多一个的事件输出。图A . 1中给出的事件分割图示的使用是个例外。 d ) 复合功能块的每个事件输出应该与一个确切组件功能块的一个确切事件输 出连接 , 或从该复 合功能块的一个确切事件输人连接。图 A . 1 中给出的事件合并图示是个例外。 e ) 复合功能块类型的事件输人和事件输出的声明应使用 WI T H 限定词。WI T H 限定词的使用 可导致相关数据输入和输出的采样 , 就象基本或接 口服务功能块那样。 注 1 : 软件工具可提供在实现阶段消除多余的采样的方法。 f ) 2 . 4 中 定义的子应用类型实例不能用于复合功能块类型规范。 组件功能块的数据输入和数据输出可 以与复合功能块的事件输人和事件输 出互连, 以表示复合功能块内的数据流。这一用法应遵循以下规则: a ) 复合功能块的每一数据输人可连接到零个或多个组件功能块的零个或多个数据输人 , 或者连 接到复合功能块的零个或多个数据输 出, 或连接到两者。 b ) 组件功能块的每一数据输人可连接到确切的另一组件功能块 的至多一个的数据输出, 或连接 到复合功能块的至多一个的数据输入 。 c ) 组件功能块的每一数据输出可连接到零个或多个组件功能块的零个或多个数据输人 , 或连接 到复合功能块的零个或多个数据输出, 或连接到两者。 d ) 复合功能块的每一数据输出应从一个确切组件功能块的一个确切数据输出连接, 或从复合功 能块的一个确切数据输人连接。 注 2 : 如果在 V A R - I N P U T 二E N D - V A R或 V A R O U T P U T . . . E N D V A R结构中, 通过 WI T H结构声明的元素 分别与输人或输出事件相关, 这将导致分别创建相关的输人或输出变量, 如同基本功能块类型那样。如果该 元素与输人或输出事件不相关 , 则相关数据流经过以上描述的连接直接流人或流出组件功能块。 图 1 4 描述了这些规则对 P I - R E A L功能块示例的应用。图 1 4 a ) 给 出了外部接 口的图示, 图 1 4 b )给出了其本体结构的图示。图1 5 给出了P I R E A L示例本体中使用的P I D _ C A L C功能块类型的接口和执行控制。G B / T 1 9 7 6 9 . 1 -2 0 0 5 E V E N T 一一 习下 不,一 下而而仁只一一 E V E N T E V E N T - 4多月 E X E X O卜 一 十 石 于 E V E N T P I REAL!I B O O L 一日 日 H O L D X O U T一毛卜曰卜一 R E A L R E A L一 一王 十一P V R E A L 一H牙S P R E A L一一仁卜K P R E A L一 一仁卜K I T I M E - 曰一 C Y C L E a ) 外部接口乙 b ) 图示本体 图 1 4 复合功能块的 PI-REAL示例 注 3 : 附录 H中给出了这一功能块类型的完整的文本声明。 注 4 : 本例仅作说明, 描述的细节并不作为标准。 E V E N T 一 F IN- I T一一 IN ITO 一一 E V E N T E V E N Tee esee F R - i P R E P R E O 1- i-. 一 E V E N T EVE NT 一4 - P OS T P 01, T 门 !司司不4 EVE NT RE AL 斗-$ -1 P V ET E RM I- I -E 9-f - RE AI R E A L叫一田曰 S P X O U T卜曰一一曰一 一 R E A L RE AL - - : * , Kr I RE AL - - rR KI I RE AL - 一 十口B - - I TD I R EAL一 -F R - - - 叫 闷 ITE RM I R E A L - - - u- 匕竺生一一习 a ) 外部接口 图 巧P I D es C A L C基本功能块的示例 G B T 1 9 7 6 9 . 1 -2 0 0 5 蕊 INIT INIT INITOINIT IPOST START PRE1 IPOST POST POSTO PRE E RE PREO b ) 执行控制 图 1 5( 续) 注 5 : 附录 H中给出了这一功能块类型的完整的文本声明。 注 6 : 本例仅作说明, 描述的细节并不作为标准。( 以上内容需同样更改)2 . 3 . 2 实例行为 复合功能块中组件功能块 的调用和执行应按如下所述来完成: a ) 如果复合功能块的一个事件输人连接到这一功能块的一个事件输出上, 则事件输人上一个事 件的发生将引起与之相关的事件输出上一个事件的产生; b ) 如果复合功能块的一个事件输人连接到组件功能块的一个事件输人, 则复合功能块事件输人 上一个事件的发生 , 通过该组件功能块相关的事件输入上一个事件的发生, 应引起该组件功能 块执行控制功能一个调用的调度 ; c ) 如果一个组件功能块的一个事件输出连接到第二个组件功能块的一个事件输入, 则第一块事 件输出上一个事件的发生, 通过引起第二块相关事件输入上一个事件的发生, 应引起对第二块 的执行控制功能一个调用的调度 ; d ) 如果组件功能块的一个事件输出连接到复合功能块的一个事件输 出, 则组件功能块事件输出 上一个事件的发生应引起复合功能块相关事件输出上一个事件的发生。 复合功能块实例的初始化应等效于按照前述 2 . 2 . 2 . 1 的规定对其组件功能块 的初始化。2 . 4 子应用2 . 4 . 1 类型规范 子应用类型的声明与 2 . 2 . 1 中定义的复合功能块的声明相似, 不 同之处在于它使用的定界关键词应为S U B A P P L I C A T I O N . . . E N D S U B A P P L I C A T I O N。这一用法应遵循以下规则: a ) WI T H限定词不能用于子应用类型的事件输人和事件输 出的声明, 因为只对功能块实例提供 输人和输出的采样 , 而不对子应用实例提供; b ) 子应用的每一事件输入应当连接到一个确切 的组件功能块或组件子应用 的一个确切的事件 输人, 或者连接到该子应用 的一个确切事件输出; c ) 组件功能块或者组件子应用的每一事件输人连接到确切的另一组件功能块或者组件子应用的 至多一个事件输出, 或者连接到子应用至多一个事件输入 ; d ) 组件功能块或组件子应用的每一事件输出连接到确切的另一组件功能块或者组件子应用的 至多一个事件输人 , 或者连接到子应用至多一个事件输出; e ) 子应用的每一事件输出从一个确切的组件功能块或组件子应用的一个确切事件输出上连接, 或从子应用的一个确切的事件输入上连接 。 注 1 : 组件功能块可包含附录 A中定义的事件处理块的实例。例如, 使用等效的图形方式, 用 E - S P L I T块实例来 “ 分割” 事件; 用 E ME R G E块实例来“ 合并” 事件; 或两种都有。 组件功能块或组件子应用的数据输人和数据输出可与子应用的数据输人和数据输 出互连 , 以表示该子应用内的数据流。这一用法应遵循以下规则 :G B / T 1 9 7 6 9 . 1 -2 0 0 5 a ) 子应用的每个数据输入可以连接到零个或多个组件功能块或组件子应用的零个或多个数据输 入, 或者连接到子应用的零个或多个数据输出, 或者连接到两者; b ) 组件功能块或组件子应用的每个数据输入可以连接到其他另一组件功能块或组件子应用的 至多一个的数据输 出, 或者连接到子应用的至多一个的数据输人 ; 。 ) 组件功能块或组件子应用的每个事件输出可以连接到零个或多个组件功能块或组件子应用的 零个或多个数据输人 , 或者连接到子应用的零个或多个数据输出, 或者连接到两者; d ) 子应用的每一数据输出应该从一个确切组件功能块或组件子应用的一个确切数据输出连接, 或者从子应用的一个确切数据输人连接。 注 2 : 虽然使用 V A R I N P U T . . . E N D V A R和V A R O U T P U T 二E N D V A R结构来声明子应用类型的数据输人 和数据输出, 但这并不导致创建输人和输出变量。通过以上描述的连接, 数据流流到组件功能块或组件子 应用 。 示例: 图 1 6 描述了将这些规则对 P I R E A I , A P P L 子应用示例的应用。图 1 6 a ) 给出了外部接 口的图示, 图 1 6 b ) 给出了本体的图形结构。P I R E A L A P P L子应用示例的本体使用了来 自2 . 3 . 1 中复合功能块示例的功能块类型 P I DC AL C, 如图 1 5所示。 E V E N T 川丽万一一而布仁E V E N T E VENT - 1F X F XO I - - EVE NT B OOL - 1 HOL D XOUT 一 一R EAL R EAL - - - i P V I RE A L -i5 P I RE AL - I KP! RE AL -i KI I T I M E 一坦卫二一一习 a ) 外部接 口 户 b ) 图示本体 图 1 6 子应用的示例 P I _ R E A L A P P L 注3 : 附录 H中给出了该子应用的完整的文本声明。 注4 : 本例仅作说明, 描述的细节并不作为标准。2 . 4 . 2 实例行为 子应用 内组件功能块或组件子应用的操作调用应按如下所述来完成 : G B T 1 9 7 6 9 . 1 -2 0 0 5 a ) 如果子应用的一个事件输入连接到块的事件输出, 则该事件输入上一个事件的发生将 引起相 关事件输出上一个事件的产生。 b ) 如果子应用的一个事件输人连接到一个组件功能块或组件子应用 的一个事件输人, 则子应用 事件输人上一个事件的发生, 通过组件功能块或组件子应用相关事件输入上一个事件 的发生, 应引起组件功能块或组件子应用执行控制功能一个调用的调度。 。 ) 如果组件功能块或组件子应用的一个事件输出连接到第二个组件功能块或组件子应用的一个 事件输人上 , 则第一个块的事件输出上一个事件的发生, 通过引起第二个块的相关事件输入上 一个事件的发生, 应引起第二个块的执行控制功能一个调用的调度 。 d ) 如果一个组件功能块或组件子应用的一个事件输出连接到子应用的一个事件输 出上 , 则组件 功能块事件输出上一个事件的发生应引起该子应用相关事件输出上一个事件的产生。 由于子应用并不显式地创建变量, 所以没有特定的初始化过程可应用于子应用实例。2 . 5 适配器接口 适配器接口可用于提供事件和数据流的一个特定集合的简洁表示。如图 1 7 所示 , 适配器接 口 类型提供了一种方法, 来定义提供者功能块的一个输人和输出的子集( 插头适配器) , 该子集可以插人到接受者功能块对应的输出和输人的一个与之匹配的子集( 插座适配器) 里。所以, 适配器接 口表示 了事件和数据的路径 , 通过这些路径 , 提供者给接受者提供服务 , 反之亦然, 这取决于提供者 接受者交互 的模式 ,可通过 3 . 1 . 2 中描述的服务原语序列来表示。 注: 一个给定的功能块类型在功能上可以是一个提供者、 或一个接受者、 或两者都是、 或两者都不是, 可以含有一个 或多个适配器接口 类型的多于一个的插头或插座实例。 ACI ACI 少 P R T 一提供者类型, P R I - - 提供者实例 A C T 一接受者 类型, A C I 一接受者实例; A D T 一适配器类型, P L I 一插头实例, S K I -插座实例 图 1 7 适配器接 口 一 概念模型 注: 本图仅作说明, 图形表示并不作为标准。2 . 5 . 1 类型规范 适配器接 口类型声明应该定义唯一 的接 口类 型名 和它所包含的事件和数据接 口。这些应该象2 . 2 . 1 和2 . 2 . 1 . 1 开始部分定义基本功能块类型的类型名、 事件接口和数据接口那样以图形或文本的方式来定义。不同之处在于, 在文本类型声明的开始和结束处应使用 A D A P T E R . . . E N D A D A P T E R关G B / T 1 9 7 6 9 . 1 -2 0 0 5键字 。附录 B . 7中给出了适配器接 口声明的文本语法。 示例 : 图 1 8 中描述的适配器接口表示了传送一个工作件的操作。该操作将插头适配器提供者所表示的传送设备的一个“ 上游” 件传送到对应插座适配器接受者所表示的设备的一个“ 下游” 件。如图 1 8 b ) 所示, 这种交互的典型操作由以下序列组成: a ) 上游设备中的一个事件, 如卸载处一个工作件的到达, 引起一个将被送到下游设备的 L D事件, 典型地解释为 l o a d ” 命令。与此事件相关的是一个传感器值 WO, 指示要传送的工作件是否实际存在, 以及一些测量属性或 工作件属性集合, 如工作件的颜色。 b ) 下游设备中随后的事件, 如加载设置的完成, 引起一个将被送到上游设备的 U N L D事件, 典型地解释为释放工 作件的命令。 c ) 随后的一个 C N F事件, 典型地解释为工作件释放的证实, 将从上游传送到下游设备来完成该操作。此时, WO 输出典型为 F A L S E , WK P C输出的值无效。 n o r m a l o p e r a t i o n P L UG S OCKE 7 E V E N T 月 U N L D L D日 . 一一E V E N T L D一叭 I C N F卜 叶一日卜 E V E N T抽一 一L D I I I I一 一 UNLD I一一I I!U NL D ,侧 I WO H 田E BOOL I W K P C k 6 -6 - C O L O R C N F 卜一 一 CNF a ) 接口b ) 标准操作 ( 见 3 . 1 . 2 ) 图 1 8 适配器类型声明 一 圈形示例 注 1 : 附录 H中给出了该适配器类型的完整的文本声明。 注 2 : 本例仅作说明, 描述的细节并不作为标准。2 . 5 . 2 用法 适配器接 口类型和实例的使用应遵循以下规则 : a ) 在功能块类型实例中作为插头使用的适配器接口实例应在P L U G S . . . E N D _ P L G U S块的类型 声明中进行声明, 为每一插头声明实例名和适配器接口类型。在功能块类型和实例的图示中, 插头应以带有特定文本或图示的输出变量来表示, 表明它不是普通的输出变量。 b ) 在功能块类型实例中 作为插座使用的适配器接口 实例应在S O C K E T S . . . E N D - S O C K E T S 块 的类型声明中进行声明, 为每一插座声 明实例名和适配器接 口类型。在功能块类型和实例的 图示中, 插座应以带有特定文本或图示 的输人变量来表示, 表明它不是普通的输人变量。 c ) 插头的输人和输出应按照与功能块的输人和输 出相同的方法 , 在其功能块类型声明中使用。 d ) 插座 的输入和输出应分别按照与功能块 中的输 出和输人相 同的方法 , 在其功能块类型声 明中 使用。 e ) 插头插人到插座应在分别含有提供者和接受者实例的资源类型、 资源实例或复合功能块类型 声明的 A D A P T E 凡 C O N N E C T I O N S . . . E N 几 C O N N E C T I O N S 块中予以规定。 f ) 在一个复合功能块类型本体中, 一个插座表示为一个功能块, 具有与相应适配器接 口类型相同 的引线。同样 , 一个插头表示为一个功能块, 具有与相应适配器接 口 类型相反的输人和输出。 g ) 插头插人到插座应受以下限制的约束: 1 ) 一个插头只能插人到一个相同适配器类型的插座中; 2 ) 一个插头一次只能插入到零个或一个插座中; 3 ) 一个插座一次只能接受零个或一个插头 ; 4 ) 如果两者在同一资源或应用中, 一个插头只能插入到一个插座中。 G B / T 1 9 7 6 9 . 1 -2 0 0 5 h ) 3 . 3 中描述的管理功能块提供了动态创建、 删除和查询适配器连接的功能。 示例 1 : 图 1 9 描述的 X B A R MV C A类型实例同时充当插头接 口提供者 ( L D U _ P L G ) 和插座接口接受者 ( L D U _S K T ) 。这样, 它将服务于抽象和封装的、 带有“ 上游” 和“ 下游” 功能单元的 X B A R MV C类型实例的交互。 E一 EVEN丁 一瑟 MVCINIT INIT FNITO INITOLOAD LOADEDLDU SKT GAD ADVANCE LDU PLG I NT - 1 B VFL DU P LG;F 一一L D UNLD I -I一一 ,r- -1 - 曰I VF一VF 曰VR 一 VR 曰I DT L- DT L I I I D T- DT I!B KGD一 BKGD I wees - eseses i L E N一 L EN DI A 一 DI A DI R一 DI R a ) 接口b ) 本体 图 1 9 提供者和接受者功能块类型声明的图示 注 1 : 本例完整的文本声明在附录 H中给出。 注2 : 本例仅为描述, 描述的细节并不作为标准。 注 3 : 尽管本例表示的仅是一个复合类型, 但提供者和接受者功能块类型可以是基本的也可以是复合的。 示例 2 : 图 2 0 描述了图 1 9 中描述的含有两个 X B A R M V C A类型实例的资源配置。S U P P L Y实例充当 H MI 块的接受者( “ 下游单元” ) 和 B O R E块的提供者( “ 上游单元” ) , 而 T A K E O F F实例分别履行相应的B O R E块和 U N L O A D块的角色 。HMI SPOUTINIT INITO TOOL INIT INITOINIT INITOLOAD HMI REQ IND UNLOADXSPACE INIT INITOLD_PLG IN COLOR STARTSPIN I QI QO COLD D HMIINIT R1IT0 WARM ;LD SKTOUT BORE.TOOL STOPXSPACE E RESTARTSUPPLY BOREINIT INITO INIT INITO TAKEOFF-j NIT INITOX BAR MVCA BORING MVCA;LDU SKT LDU PLG; ;LDU SKT LDU PLG; XBAR MVCA;LDU SKT LDU PLG;E 图 2 0 适配器 连接 的图示G B / T 1 9 7 6 9 . 1 -2 0 0 5 注 1 : 本例仅为描述, 描述的细节并不作为标准。 注2 : 本图中为了清晰起见, 省略了参数连接。 注 3 : 除了 X B A R MV C A类型外, 块的类型声明没有在附录 H中给出。2 . 6 异常和故障处理 资源可提供预防、 识别和处理异常和故障的功能。这些功能可模型化为服务接口功能块。异常和故障的预防、 识别和处理的特定功能块类型的定义超出了本部分的范围。但是服务接口功能块的I NI T - , C N F 一 和 I N D - 输 出及相关的 S T A T U S值可用来指示异常和故障的发生和类型, 参见 3 . 1 . 2 ,3 服务接 口功能块 本章为服务接口功能块的类型规范和实例行为以及服务接 口功能块的两种特定类型, 即通信功能块和管理功能块 , 定义了一般原则。3 . 1 一般原则 基于服务原语到功能块的事件输人、 事件输出、 数据输人和数据输出的映射, 服务接口功能块为应用提供一个或多个服务 。 服务接 口功能块类型的外部接 口具有与基本功能块相 同的外观, 但服务接 口功能块类型的输人和输出具有特殊的语义 , 并且这些类型实例的行为通过服务原语序列的特定图形表示法来定义。 注: 服务接口功能块的内部操作规范超出了本部分的范围。3 . 1 . 1 类型规范 服务接口功能块类型的声明可使用表3 列出的标准事件输入、 事件输出、 数据输人和数据输出, 以适合于提供特定的服务 。当使用时, 它们的语义应跟本章中定义的一样。功能块类型的名字应表 明所提供的服务。 示例 : 图2 1 a ) 和 b 给出了服务接口功能块的示例, 其主要的交互分别由应用和资源发起。 注: 在同一服务接口功能块中, 某些服务既可提供资源发起交互又可提供应用发起交互。 表 3 服务接 口功能块的标准输入和输出一一#z#Ci fJ# G B / T 1 9 7 6 9 . 1 - 2 0 0 5 表 3( 续)一 E 二N T 一玉日陈石一一一IN I母 - E V E N T E 二N 丁 一 习 不而,一一赢司,母- E 二N T E V E N T - 日 一 十 刁R E Q C N F 卜1 E 3 E V E N T E V E N T 一 两 声 寸 州 R S P I N D 卜 十t o -E V E N T B O O L - 9 3 - M - Q I 0 0 F - d - E1 B O O L B O O L - P - EP - i Q I Q 0 1 - -Q 3 - P - B O O L A N Y 一 一 也刁P A R A M S S T A T U S MA N Y A N Y 一十 否 月P A R A M S S T A T U S 卜 兽命 一 一A N Y A N Y E S D I R D! I一 一 4 一 一A N Y A N Y 一 一$ 一 曰 S D I R D 1 (- $ 一 一 A N Y A N Y - 一0 州巴 m 一一 R D n一 A N Y A N Y 一 巴 一 S D m一一R D n 1一 E 9 一 A N Y a ) 应用发起的交互b ) 资源发起的交互 图 2 1 服务接 口功能块的示例 注 1 : R E Q U E S T E R和 R E S P O N D E R表示由功能块类型实例提供的特定服务。 注 2 : 这里描述的一般功能块类型的具体实现中, S D _ 1 , - - - , S D _ n 输人和R D _ 1 , - - R D _ m输出的数据类型通常固定 为 某些特定的数据 类型, 如, I N T 或 W O R D o 注 3 : 这些功能块的完整的文本声明见附录 Ho3 . 1 . 2 实例行为 服务接口功能块的实例行为应在相应功能块类型规范中定义。这种规范可以使用G B / T 1 5 1 2 9中描述的时间一 顺序图。当使用这种图表时, 应遵循 以下规则 :G B / T 1 9 7 6 9 . 1 -2 0 0 5 a ) 应使用标准的G B / T 1 5 1 2 9 语义, 即: 1 ) 时间向下增加 ; 2 ) 在资源之间或资源内, 将顺序相关的事件连在一起 ; 3 ) 如果事件之间没有特定的关系, 由于在一个有限时间段内两个都要发生, 但无法预测哪一 个事件将先发生, 这时应使用“ ” 符号或相似的文本符号。 b ) 服务由单个服务接 口功能块来表示的情况下 , 应使用一条单竖线将图表分为两部分 。如 图 2 2 所示 : 1 ) 在服务主要由应用发起 的交互作用提供 的情况下 , 应用应在左边 , 资源应在右边 。如图 2 2 a ) 所示; 2 ) 在服务主要由资源发起 的交互作用提供 的情况下 , 资源应在左边 , 应用应在右边 。如图 2 2 b ) 所示 。 c ) 服务由两个或多个服务接 口功能块表示的情况下 , 应使用 G B / T 1 5 1 2 9图 3 a ) 的表示法, 如附 录 F . 2中的描述 。 d ) 服务原语应由横向箭头来指示 , 如 G B / T 1 5 1 2 9中那样。表示服务原语的事件的名字应写在 箭头旁边, 并应提供决定输人和 或输出变量的名字的方法 , 输人和 或输出变量表示与该原语 相关的数据。 e ) 在功能块类型定义中存在Q I 输入时, 应使用后缀“ 十” 来跟一个事件输人名结合, 以指示相关 事件发生时Q I 输人值为T R UE , 应使用后缀“ 一 ” 来指示值为F A L S E , f ) 在功能块类型定义中存在 Q O输出时, 应使用后缀“ ” 来跟一个事件输出名结合 , 以指示相关 事件发生时Q O输出值为T R UE , 应使用后缀“ 一 ” 来指示值为F A L S E . g ) “ ” 和“ 一 ” 事件的标准语义应按表 4 的规定。 图 2 2 描述了服务初始化 、 数据传送和服务终止的标准顺序。服务接 口功能块类型规范可以使用类似的图表来规定服务原语的所有相关序列以及正常和异常条件下它们的相关数据。 n o r ma l e s t a b l i s h me n t 川, “ 份一 书, 一 梦 :n o r ma l e s t a b l i s h me n t R E Q U E S T E R R E S O U R C E R E SO U R C E! R E S PO N D E R IN IT + 一 , 一甲 11 一 一 一 一 IN IT + IN IT O + - 一 一 甲 个一 IN IT O + n o r ma l d a t a tr a n s f e r n o r ma l d a t a t r a n s f e r R E Q U E S T E R R E S O U R C E R E S O U R C E R E S P O N D E R RF 门 咔一扭I I日一I ND十 C N F + 一 一 卞 , 一 一R S P + a p p li c a t i o n i n i t i a t e d t e r m in a t i o n a p p l i c a t i o n - i n i t ia t e d es te r m in a t i o n R E O U E S T E R R E S O U R C E R E S O U R C E R E S P O N D E R I N I T 一 一 , 佃 1 用 叫 一 I N I 丁 一 IN I T O - , 一一 节 !Illr - IN IT O - a ) 应用发起( 请求 证实) 的交互图6 资源发起( 指示 相应) 的交互图 图 2 2 时间一 顺序图示例 cB / T 1 9 7 6 9 . 1 -2 0 0 5 表 4 服务原语语义二il SC1A61rE A6i9rA-k nf9:14 AR 3k4m#9rJA- f91*1 fiirA-)fl *o-3 . 2 通信功能块 通信功能块提供应用和 1 . 4 . 3中定义的资源的“ 通信映射” 功能之间的接 口。因此 , 它们是 3 . 1 中定义的服务接 口功能块 。 如其他服务接口功能块一样, 通信功能块可以是基本类型或复合类型, 只要它的操作可以通过服务原语到功能块的事件输人 、 事件输出、 数据输入和数据输出的映射来表示 。 本条提供通信功能块类型的声明规则和该功能块类型实例的行为规则。附录F . 2为单向和双向事务定义了通用通信功能块类型, 并给出了这些类型与用户实现相关的规则。3 . 2 . 1 类型规范 通信功能块类型声明应使用3 . 1 定义的服务接口功能块类型的声明方法和表5 给出的输人和输出变量的特定语义。 表 5 通信功能块变f的语义一导到G B / T 1 9 7 6 9 . 1 -2 0 0 53 . 2 . 2 实例行为 如附录F . 2 描述, 通信功能块类型的实例行为应在对应的通信功能块类型声明中定义, 使用3 . 1中为服务接 口功能块规定的方法 , 并结合表 6 给出的特定服务原语语义 。这种规范应包含下列服务原语序列 : 通信连接的正常和异常的建立与释放 ; 正常和异常的数据传送。 表 6 通信功能块的服务原语语义 原语语义 I N I T 请求建立通信连接 I N I T 一请求释放通信连接 I N I T O 十指示通信连接建立 I N I T O 一拒绝建立通信连接请求或指示通信连接释放 R E Q 正常请求数据传送 R E Q 一禁止请求数据传送 C N F 正常证实数据传送 C N F 一指示数据传送异常 I N D 指示正常数据到达 I N D 一指示异常数据到达 R S P 应用对数据到达的正常响应 R S P 一应用对数据到达的异常响应3 . 3 管理功能块 本条定义了应用管理的功能块类型和要求 , 以及在管理功能块控制下的功能块行为。3 . 3 . 1 要求 将 G B / T 9 3 8 7 . 1 8 . 3 . 2 中“ 应用管理” 的功能要求扩展到本部分的分布式应用模型 , 需要 I P MC S中对资源和应用的管理服务应能执行以下功能 : a ) 在资源中, 创建、 初始化、 启动、 停止、 删除、 查询以下内容的存在和属性, 并提供以下内容的可 用性和状态的改变通知: 1 ) 数据类型; 2 ) 功能块类型和实例; 3 ) 功能块实例间的连接。 b ) 在设备中, 创建、 初始化、 启动、 停止、 删除、 查询资源的存在和属性, 并提供资源的可用性和状 态的改变通知。 注 1 : 本条的条款并不是用来满足G B / T 9 3 8 7 . 4 和G B / T 1 7 1 4 2 中所述的系统管理的要求, 除非这些要求被以上所 列功能所陈述。 注 2 : 本条只处理以上的 a ) 款, 即资源中应用的管理。附录G中描述了设备管理的框架。 注 3 : 资源、 应用和功能块实例之间的联系在 4 . 2 描述的系统配置中定义。 注4 : 启动和终止一个分布式应用由一个合适的软件工具执行。3 . 3 . 2 类型规范 图 2 3 描述了管理功能块类型的一般形式。这些管理功能块类型的实例满足以上定义 的应用管理要求。 G B / T 1 9 7 6 9 . 1 - 2 0 0 5 E V E N T一 a - 1N IT 一一六品翻 一E V E N T EV ENT-mod - - t - 1 R EO C NF I - -F- 沙eseses EVE NT BOOLeses 咬牡咬妙we 门 01 W F - w - w -BOOL WS TRI NG -Iee M 日 P AR AMS S T AT US - M E B一一 UI NT U I NT eseseses E P一 一 C MD R E S U L T卜一一 曰 B Y T E 5 1 2 1 B Y T E 5 1 2 丹一 O B J E C 上一一习 图2 3 一般管理功能块类型 注 1 : 在特定的实现中, 类型名( 本例中的 MA N A G E R ) 可以表示受管资源的类型。 注2 : 对于这些功能块类型, 规定的C MD和 O B J E C T输人和 R E S U L T输出代替了 3 . 1中所述的通用的 SD-1和 S D - 2输人和 R D - 1 输出。 注3 : MI T和P A R A M S 输人和I N I T O 输出在特 定的 实现中可以存在也可以不 存在。 注4 : 当P A R A M S 输人 存在 时, 其 类型和 值是资源类型与实 现相 关的 参数。 管理功能块类型的实例行为和输人 输出语义, 应遵循 3 . 1中为具有由应用发起的交互作用的服务接 口功能块类型给出的规则 , 并具有图 2 4中为失败服务初始化和请求给出的其他行为。 u n s u c c e s s f u l e s ta b l i s h me n t c o mma n d e r r o r M A N A r3 P R , 二n l,r 。 。M A N A G E R r e s o u rc e I N I T 一一 一一 一一 叔I R E Q + - 一I 1 卜 i n it M a n a g e m e n t卜 p e r f o r m C o m m a n d IN IT O 一一 一 一 I C N F 一一一一甲 图 2 4 失败服务的服务原语序列 注 5 : 附录 H给出了包括所有服务序列的这一功能块类型的完整文本规范。 要执行的管理操作应该按照表7 中定义的语义, 用管理功能块的C MD输人值来表示。 表 7 C MD输入值和语义一州 管理功能块S T A T U S输出的值和相应语义如表8 所述, 表示指定命令的执行结果。G B / T 1 9 7 6 9 . 1 -2 0 0 5 表 8 S T A T U S的输出值和语义一 一 言 管理功能块实例O B J E C T输人和R E S UL T输出的实际长度应是与实现相关的。 按照C MD输人, O B J E C T输人应指定要操作的对象。如果成功, R E S UL T输出应含有由操作产生的对象的描述。这些串应由附录B中定义为非终结符, 并被表9引用的与实现相关的对象编码组成。这 些编码可使用本部分的F B M G T抽象语法和附录F . 3 中定义的编码规则。 这些B Y T E 数组的实际长度取决于特定的对象及提供的编码。 注 6 : O B J E C T输人和 R E S U L T输出允许的最大长度是一个与实现相关的参数; 图2 3 中给出的值 5 1 2只是举例 说明。 表9 命令语法万理 G B J T 1 9 7 6 9 . 1 -2 0 0 5 表 9( 续)CMD OBJECTKILL fb instance referenceall-data-typesall_fb_typesdata-type-namefb_type_nameQUERY fb instance referenceconnection-start-pointapplication nameaccess-path-nameREAD access-path-nameWRITE access- path datait 1: -jj P;1 .1;Jr 1u u 0 CMD A RT Qh 7.t 2: READ fa WRITE 0ft&,dZWT -Mj) ralM; Atj7Jil7o 川 如果一个 C R E A T E命令试图进行以下操作 时, 将会产生一个错误, 导致一个 I N VA L I D - O B J E C T的 S TAT US码 : 同一资源中, 创建实例名与已有功能块的实例名相同的功能块 ; 创建连到一个数据输人的重复连接; 创建连到一个数据输人的多个连接 。 以上规则唯一的例外是, 一个 C R E A T E命令可以用一个新的参数连接替换一个参数到一个数据输人的连接。 如果一个C R E A T E命令试图创建管理功能块未知类型的功能块实例或参数, 将产生一个错误, 导致一个 U N S U P P O R T E D T Y P E的 S T A T U S 码 。 如果一个D E L E T E命令试图删除受管资源的类型规范中所定义的功能块类型、 功能块实例、 数据类型或连接, 将产生一个错误, 导致一个 I N V A L I D - O P E R A T I O N的S T A T US 码。 S T A R T和 S T O P命令的语义如下 : a ) 功能块实例的 S T A R T和 S T O P应按 3 . 3 . 3 中那样定义 ; b ) 应用的 S T A R T和 S T O P应分别等效于包含受管资源中该应用中的所有功能块实例的 S T AR T 和 S TO P; c ) 管理功能块实例的S T O P应等效于受管资源中所有功能块实例的S T O P ; d ) 管理功能块实例的 S T A R T应等效于受管资源中所有功能块实例的 S T A R T。如果受管资源 先前已被停止 , 则应接着在附录 A中定义的 E - R E S E T功能块类型的每一实例相应的输出上 发出一个事件。如果因为先前的S T O P命令停止了资源, 则这些事件应发生在E - R E S T A R T 块的 WA R M 输出上 , 否则发生在 C O L D输出上。 Q U E R Y命令的特定语义应如下: a ) 当 O B E J E C输人规定了事件输人、 事件输出或数据输出时 , R E S U L T输 出应含有零个或多个 相对端点 ;G B / T 1 9 7 6 9 . 1 -2 0 0 5 b ) 当O B E J E C输人规定了数据输人时, R E S UL T输出应列出零个或多个相对端点; c ) 当O B E J E C输入规定了应用的名字时, R E S U L T输出应列出受管资源中应用包含的所有功能 块的名字。3 . 3 . 3 受管功能块的行为 管理功能块控制下的功能块的操作行为应等效于图 2 5 的状态转换图表所示的操作行为, 遵循 以下规则 : a ) 图2 5 中大写的转换条件指, 在一个R E Q 十服务原语发生时, 管理功能块的C MD输人的值, 这 些值在表 7中规定。 b ) MA N A G E R功能块类型的c o m ma n d e r r o r 原语序列在以下条件下应该发生, 并带有表8中 定义的S T A T US 输出的指示值: 1 ) U NS U P P O R T E D _ C MD: 对指定的C MD值, 图2 5 中不存在具有转变条件的状态; 2 ) I N V A L I D _ S T A T E : 对指定的 C MD值, 当前活动状态没有转变条件 ; 3 ) UN S U P P O R T E D - T Y P E : C MD的值为C R E A T E , 并且功能块实例不存在, 而且功能块 类型对于MA NA G E R实例是未知的, 即保护条件 t y p e - d e f i n e d为F A L S E ; 4 ) I N V A L I D - O P E R A T I O N: C MD的值为D E L E T E , 并且功能块实例处于S T O P P E D或 K I L L E D状态, 但在设 备或资源类 型规范中声明 了该 功能块 实例 , 即保 护条件 i s d e l e t a b l e 为 F AL S E, 。 ) 为 MA N A G E R功能块类型给出的原语的 n o r ma l - c o mm a n d - s e q u e n c e 应在所有其他条件下跟 在一个 C MD 服务原语后面, 带有表 8中定义的 S T A T U S 输 出的 R D Y值和表 9中定义的 R E S UL T输出的对应值。 d ) 图 2 5中给出的活动的语义应如下 : 1 ) r u n E C i n p u t s : 当包含该活动的状态处于活动时, 图1 2 中给出的状态机操作对所有事件输 人是可用的。如果受管功能块是服务接 口, 则通过事件输人上的事件, 服务原语的调用是 允许的。 2 ) r u n E C C : 当包含该活动的状态处于活动时, 图1 3中给出的E C C状态机操作是允许的。 如果受管功能块是服务接口, 则事件输人上对应于服务原语的事件的产生是允许的。 3 ) s t o p A l g o r it h m: 当前活动算法( 如果有) 的执行被立刻终止。如果受管功能块是服务接 口, 则服务操作立刻被终止。 4 ) c o m p l e t e A l g o r i t h m: 允许完成当前活动算法( 如果有) 的执行。如果受管功能块是服务接 口, 则允许完成当前的活动服务原语 。 5 ) i n i t ia l i z e : 强行将所有事件输人和执行控制图表( E C C ) 状态机置为各自的初态( s o ) 。所有 变量初始化为 2 . 2 . 2 . 1中定义的初始值。如果受管功能块是服务接 口, 则将服务置于一 个状态中, 在此状态中它可执行一个正常初始化序列, 响应3 . 1 . 2 中描述的一个 I N I T 十 原语 。 e ) 先前规则描述的活动递推应用到受管复合功能块的所有组件功能块。 注 1 : 不在管理功能块控制下的功能块行为超出了本部分的范围。 注 2 : 在掉电和恢复条件下的受管功能块行为的规范超出了本部分的范围。这些行为可由兼容设备制造商来规定, 例如, 通过引用相应的标准。 注 3 : 应用可使用附录 A中描述的 E - R E S T A R T实例来产生事件, 这些事件可用于掉电和恢复时触发相应的 算法。 如 2 . 4 . 2 所述 , 子应用中的执行控制被完整地提交给它们的组件功能块和组件子应用 的执行控制机制。但是 , 2 . 3 . 2 为复合功能块类型实例行为给出的规则没有明确地规定输人变量的采样时间和组件功能块执行控制之间的关系。这可能导致在这些块 中操作的不确定性 , 特别是当它们含有作为组件 G B / T 1 9 7 6 9 . 1 -2 0 0 5功能块的服务接 口功能块的时候 。 将图2 5中的R UN N I N G状态替换为图2 6 中的R UN N I N G状态可避免这种不确定性。表 1 0 给出了图中状态和转变的解释。 , C R E A T E typ e d e f i n e d RE一 图 2 5 受管功能块运行状态机 育 图 2 6 复合功能块的 R U N N I N G状态G B / T 1 9 7 6 9 . 1 -2 0 0 5 表 1 0 图 2 6 的子状态、 转变和活动币攀4 功能单元和系统配置 根据以下模型 , 本章含有工业过程测量和控制系统( I P MC S ) 的配置规则 : a ) 由互连设备组成的 I P MC S ; b ) 设备是相应设备类型的实例; c ) 根据其相关资源来描述设备类型的功能性; d ) 资源是相应资源类型的实例; e ) 在资源类型所有的实例中, 使用可被实例化的功能块类型和存在的特定功能块实例, 来描述资 源类型的功能性。 I P MC S的配置被看作由其相关设备和应用的配置组成, 包括每个应用中的功能块实例到相关设备的资源的分配。为支持这一过程, 本章定义了以下系列规则: -4 . 1 定义了资源类型和设备类型的功能性规范的规则; -4 . 2 通过其相关设备和应用 , 定义了 I P MC S配置的规则。4 . 1 资源和设备类型的功能性规范4 . 1 . 1 资源类型的功能性规范 资源类型的功能性规范包含 : a ) 资源类型名 ; b ) 实例名 、 数据类型和每个资源参数的初始化 ; c ) 数据类型的声明和能够实例化 的资源类型的每一实例的功能块类型的声明; d ) 可在资源类型实例中存在的数据连接和事件连接的最大数量; e ) 在每一资源类型实例中始终存在的任何功能块实例的实例名、 类型和初始值; f ) 在每一资源类型实例 中始终存在的任何数据连接和事件连接 ; 9; ) 在每一资源类型实例中始终存在的任何访问路径。 注 z : 资源类型规范可提供其他信息, 包括: 一 一 资源实例中指定类型的功能块的每一算法执行所需要的时间( 图 7 中用“ T e ,g ” 标识) ; 每一资源实例中可存在的具有指定功能块类型的实例的最大数量; 功能块实例间的交替使用。例如, 功能块类型“ A ”的两个实例是否可以与类型 B ” 的一个实例交替使 G B J T 1 9 7 6 9 . 1 - 2 0 0 5 用, 等等。 注2 : 资源的通信和过程接口的功能性规范, 包括与适用标准的一致性类别和程度, 超出了本部分的范围, 除非这些 接口用服务接口功能块来表示。4 . 1 . 2 设备类型的功能性规范 设备类型的功能性规范包括: a ) 设备类型名 。 b ) 实例名、 数据类型和每一设备参数的初始化。 c ) 每一设备类型的实例中始终存在的每一功能块实例的实例名、 类型名和初始化。 d ) 每一设备类型的实例中始终存在的任何数据连接和事件连接。 e ) 每一设备类型的实例 中存在的资源实例声明。每一种声明应包含: 1 ) 资源实例名和类型名; 2 ) 每一设备类 型实例 的资源实例 中, 始终存在的每一功能块实例 的实例名、 类 型名 和初 始化 ; 3 ) 每一设备类型实例的资源实例中, 始终存在的任何数据连接和事件连接; 4 ) 每一设备类型实例的资源实例中, 始终存在的任何访问路径。 注 1 : 以上 2 ) , 3 ) , 4 ) 项被认为是 4 . 1 . 1 中定义的资源类型规范中声明的相应元素的补充。 注 2 : 设备的通信和过程接口的功能性规范, 包括与适用标准的一致性类别和程度, 超出了本部分的范围, 除非这些 接口 用服务接口功能块来表示。 注 3 : 仅当设备类型被认为是只由一个( 未声明的) 资源组成时, 该设备类型可以包含一个功能块网络。在这种情况 下该设备类型不应含有任何资源实例声明。4 . 2 配置要求 本条为工业过程测量和控制系统、 设备、 资源和应用的配置定义了规则。4 . 2 . 1 系统配置 系统配置包括: a ) 系统名 ; b ) 系统中每一应用的规范 , 如 4 . 2 . 2中的规定; c ) 每一设备及相关资源的配置, 如4 . 2 . 3 中的规定。4 . 2 . 2 应用规范 应用规范包括: a ) 标识符形式的名字; b ) 应用中每一功能块和子应用的实例名、 类型名 、 数据连接和事件连接和适配器连接。 如果在系统范围内一个应用的名字不是唯一的, 则产生一个错误。4 . 2 . 3 设备和资源的配置 设备的配置包括 : a ) 设备的实例名和类型名。 b ) 设备参数的特定配置值。 c ) 除了那些为设备类型规定的以外 , 设备实例支持的资源类型。 d ) 除了那些为设备类型定义的以外 , 在设备实例中存在的每一功能块实例的实例名和类型名。 e ) 除了那些为设备类型定义的以外, 在设备实例中存在的任何数据连接和事件连接。 f ) 设备中每一资源的配置。这些由设备类型规范中定义的任何资源实例组成, 加上与该特定设 备实例相关的任何其他资源。 注: 仅当设备实例被认为是只由一个( 未声明的) 资源组成时, 该设备实例可以包含一个功能块网络。在这种情况 下该设备实例不应含有任何资源实例声明。 如果在系统范围内每一设备的实例名不是惟一的, 则产生一个错误 。G B / T 1 9 7 6 9 . 1 -2 0 0 5 资源的配置包括 : a ) 实例名和类型名。 b ) 资源实例支持的数据类型和功能块类型。 。 ) 资源实例中存在的每一功能块实例的实例名、 类型名和初始化。 d ) 资源实例中存在的任何数据连接、 事件连接和适配器连接。 e ) 资源实例中存在的任何访问路径 。 资源配置遵循 以下规则 : 从应用分配到资源的功能块实例的名称, 应由该应用名连接该功能块的实例名所组成, 应用名 的后面用“ ” 号, 如, A P P 1 . F B 2 。如果在应用中的子应用被实例化, 则子应用的一个实例名 ( 或多个 , 如果嵌套了多于一个的子应用) 应分别在功能块实例名之前插人到这一连续 串中。 以上的b ) , c ) , d ) 和e ) 项被认为是分别按4 . 1 . 2 和4 . 1 . 1 中的定义, 在该设备类型和资源类型 规范中声明的相应元素的补充。 。 ) 和 d ) 项包含功能块实例 、 数据连接 和事件连接, 这些来 自于分配到该资源的应用的那些 部分。 c ) 和d ) 项包含通信功能块、 数据连接、 事件连接和适配器连接。这些是为任何相关应用建立 和保持数据和事件流所必须的。 作为4 . 1 . 1 中描述的类型定义的结果, c ) 项中的各项可包含应用中功能块实例对存在于其资 源中的功能块实例的映射 。 如果下列情况发生, 将产生一个错误 : 1 ) 在含有资源的实例名的设备范围内, 该资源的实例名不是唯一的; 2 ) 应用中任何功能块实例不能被分配到一个确切的资源中。 可提供 自动的方法来满足上述要求。这些方法的提供者应提供用来决定它们的操作 的明确规则,或者提供一些手段 , 通过这种手段 , 这些方法的应用结果应能被检查和修改。 G B T 1 9 7 6 9 . 1 -2 0 0 5 附录A ( 规范性附录) 事件功能块 表 A . 1 给出的功能块类型的实例可用来产生和处理: 复合功能块中的事件 ; 子应用中的事件 ; 资源和设备的类型定义中的事件; 应用、 资源和设备的配置中的事件。 本附录给出的使用执行控制图表的功能块类型都是基本功能块类型。在此, 为这些功能块类型给出了算法的文本声明。使用 的语言是 G B / T 1 5 9 6 9 . 3中定义的结构化文本(( S T ) 语言 。 本附录的一些功能块类型的参考实现以复合功能块类型定义的形式给出。只有在一致性实现的功能行为等效于那些参考实现的功能行为的情况下, 这些实现才是规范性的。以下考虑应用于1 . 4 . 5 . 3中定义的时序参数: 在参考实现中, 所有组件功能块的T se tu p t T SIE rt 和T a t,is6 参数被视为0 ; 在参考实现中, T 8 1, 参数被视为等效于用作组件功能块的E _ D E L A Y类型的所有实例的D T参数, 并且所有其他组件功能块的T at: 参数被视为0 a 本附录给出的所有其他功能块类型都是服务接 口功能块类型。 表 A . 1 事件功能块万G B / T 1 9 7 6 9 . 1 -2 0 0 5 表 A . 1 ( 续)口 G B T 1 9 7 6 9 . 1 -2 0 0 5 表 A . 1( 续)耳G B / T 1 9 7 6 9 . 1 -2 0 0 5 表 A . 1 ( 续)二 G B J T 1 9 7 6 9 . 1 -2 0 0 5 表 A . 1( 续)一G B / T 1 9 7 6 9 . 1 -2 0 0 5 表 A . 1 ( 续)共 注: 附录 H中给出了表中所有功能块类型的完整的文本规范。 G B J T 1 9 7 6 9 . 1 -2 0 0 5 图形速记符号可以替代表A . 1中定义的E _ S P L I T和EME R G E块。例如, 图A . 1 b ) 中的速记( 隐式) 表示等效于图 A . 1 a ) 中的显式表示。灭Ell EOE12 MERGEU a ) 显式表示b ) 隐式表示 注: 上图中省略了不相关的细节。 图A . 1 事件分创和合并G B / T 1 9 7 6 9 . 1 -2 0 0 5 附录B ( 规范性附录) 文本语法B . 1 语法规范方法 本附录中的文本结构是按语法来规定, 该语法规定了可用于定义程序的符号 的允许组合 , 以及一组语义, 该语义规定了由语法定义的符号组合的含意。B . 1 . 1 语法 语法由程序规范使用的一组终结符、 按照终结符定义的一组非终结符和规定其定义的一组生成规则来定义。B . 1 . 1 . 1 终结符 本部分定义实体的文本部分的终结符由“ G B 1 3 0 0 0 I R V, 中的( 如G B 1 3 0 0 0 T a b l e - R o w 0 0给出的) 字符组合构成 。 本部分中, 文本终结符由在成对单引号或双引号中的适当字符串构成。例如, 表示A B C字符串的终结符可以使用” A B C ” 或 A B C 来表示。 允许含有单引号或双引号的字符 串的表示 ; 例如 , 包含双引号的终结符使用 ” 来表示。这种语法中一个特殊终结符是“ 空串” , 即, 不含有字符的串。可以通过N I L终结符来表示。B . 1 . 1 . 2 非终结符 使用小写字母、 数字和下划线( ) 并且以小写字母开头的字符串来表示非终结文本符号。例如,n o n t e r ml 和n o n - t e r m - 2 字符串是有效的非终结符。而字符串3 n o n t e r m和 n o n t e r m 4不是合法的非终结符。B . 1 . 1 . 3 生成规则 本部分给出的生成规则形成一种可扩展文法 , 每个规则都具有如下形式 : n o n - t e r m i n a l - s y m b o l : : e x t e n d e d - s t r u c t u r e 该规则可被解释为“ 非终结符 由可扩展结构组成” 。 可扩展结构可通过 以下规则来构成 : a ) 空串N I L是一种可扩展结构; b ) 终结符是一种可扩展结构; c ) 非终结符是一种可扩展结构; d ) 如果 S是一种可扩展结构, 则以下表示也是可扩展结构 : ( S ) , 表示S 本身; S , 闭包 , 表示零个或多个 S 的串联 ; S , 选项 , 表示 S出现零次或一次。 e ) 如果S 1 和S 2 是可扩展结构, 则以下表示也是可扩展结构: S 2 S 2 , 交替, 表示选择 S i 或者 S 2 ; S 1 S 2 , 串联, 表示 S 2 接在 S 1 的后面。 f ) 串联优先于交替, 即, S i S 2 S 3 等效于S 1 I ( S 2 S 3 ) , S l S 2 I S 3 等效于( S 1 S 2 ) S a oB . 1 . 2 语义 本部分中的语义通过适当的自然语言文本来定义并带有生成规则 , 参考相关章节提供的描述。适用于用户和销售商的标准选项通过这些语义来规定。 G B / T 1 9 7 6 9 . 1 -2 0 0 5 某些情况下, 将语义信息嵌人到可扩展结构中会更方便 。这种情况下, 这种信息被括在成对的尖括号内。例如, nB . 2 功能块和子应用类型规范B . 2 . 1 功能块类型规范 通过本部分第 2 章和第 3 章中给出的规则 , 本条定义的语法可用于功能块类型的文本规范。 语 法 :f b _ t y p e _ d e c l a r a t i o n: : F U N C T I O N - B L O C K f b _ t y p e _ n a m e f b i n t e r f a c e l i s t f b _ i n t e r n a l_ v a r ia b l e _ li s t f b _ in s t a n c e _ l i s t p l u g - l i s t s o c k e t l i s t f b _ c o n n e c t i o n _ l is t f b _ e c c _ d e c la r a t io n f b _ a l g o r i t h m _ d e c l a r a t i o n f b _ s e r v i c e _ d e c l a r a t i o n E N D - F U N C T I O N - B L O C K f b _ i n t e r f a c e _ li s t : : e v e n t - i n p u t - l is t e v e n t - o u t p u t - l i s t i n p u t- v a r ia b l e - l i s t o u t p u t - v a r i a b l e - l i s t e v e n t - i n p u t - li s t: : E V E N T I N P UT e v e n t - i n p u t - d e c l a r a t io n ) E N 几E V E N T e v e n t - o u t p u t - li s t : : E V E N T O U T P UT e v e n t - o u t p u t - d e c l a r a t i o n ) E N 几 E V E N T event-input-declaration: : e v e n t - i n p u t - n a m e : e v e n t - t y p e WI T H i n p u t - v a r i a b l e - n a m e , i n p u t - v a r i a b l e - n a m e ) ; e v e n t - o u t p u t d e c l a r a t i o n: : e v e n t ou t p u t _ n a m e : e v e n t - t y p e WI T H o u t p u t - v a r i a b l e - n a m e , o u t p u t - v a r i a b l e - n a m e ) ; i n p u t - v a r ia b le - l i s t: : G B / T 1 9 7 6 9 . 1 -2 0 0 5 V A R - I N P U T i n p u t _ v a r _ d e c l a r a t io n ; E N D _ V A R o u t p u t - v a r i a b l e - l i s t : : 片 V A R O U T P U T o u t p u t - v a r d e c la r a t i o n ; E N D V A R f b i n t e r n a l v a r i a b l e l i s t: : V A R in t e r n a l_ v a r _ d e c l a r a t io n ; E N D V A R i n p u t _ v a r _ d e c l a r a t i o n: : 片 i n p u t - v a r i a b l e - n a m e , in p u t - v a r ia b l e - n a m e : v a r _ s p e c _ i n i to u t p u t _ v a r _ d e c l a r a t io n: : o u t p u t - v a r i a b l e - n a m e ( , o u t p u t - v a r i a b l e - n a m e : v a r _ s p e c _ i n i ti n t e r n a l v a r d e c l a r a t i o n: : i n t e r n a l - v a r i a b l e - n a me , internal-variable-name : v a r _ s p e c _ i n i tv a r _ s p e c _ i n i t : : l o c a t e d _ v a r _ s p e c _ i n i t f b _ i n s t a ri c e _ l i s t : : F B S ( f b i n s t a n ce d e f i n i t io n ; E N D F B S f 6 i n s t a n c e d e f i ni t io n: : f b i n s t a n c e n a m e : f b - t y p e - n a m ep l u g - li s t : : 二 P L U G S p l u g - n a m e , p l u g - n a m e ) : a d a p t e r - t y p e - n a m e ; E N D P L UG S s o c k e t - l i s t: : S O C K E T S s o c k e t n a m e , s o c k e t - n a m e ) : a d a p t e r - t y p e - n a m e ; E N D S O C K E T S f b c o n n e c t io n l i s t : : 仁 e v e n t _ c o n n _ l is t d a t a _ c o n n _ l i s t a d a p t e r _ c o n n _ li s t e v e n t c o n n li s t : : E V E N T - C O N N E C T I O N S e v e n t c o n n E N D es C O N NE C T I O N S G B / T 1 9 7 6 9 . 1 -2 0 0 5e v e n t c orn : : ( ( f b _ i n s t a n c e _ n a m e , e v e n t - o u t p u t - n a m e ) I ( p l u g - n a m e e v e n t - i n p u t n a m e ) ) / T O ( ( f b _ i n s t a n c e _ n a m e 。 e v e n t - i n p u t - n a m e ) ( p l u g - n a me e v e n t - o u t p u t - n a m e ) ) ; e v e n t - in p u t - n a m e T O ( ( f b _ in s t a n c e _ n a m e e v e n t - i n p u t - n a m e ) ( p l u g - n a m e e v e n t - o u t p u t - n a m e ) ) ; ( ( f b _ i n s t a n c e _ n a m e e v e n t - o u t p u t - n a m e ) I ( p l u g - n a m e e v e n t - i n p u t - n a m e ) ) T O e v e n t - o u t p u t - n a me ; d a t a _ c o n n _ l i s t: : D A T A - C O N N E C T I O N S d a t a - c o r m ) E N D - C O N N E C T I O N S d a t a c o n e: : ( f b i n s t a n c e n a m e o u t p u t - v a r i a b l e - n a m e p l u g - n a m e i n p u t - v a r i a b le - n a m e i n p u t - v a r i a b l e _ n a m e c o n s t a n t ) T O ( ( f b _ i n s t a n c e _ n a m e i n p u t _ v a r i a b le _ n a m e ) ! ( p l u g - n a me o u t p u t - v a r ia b le - n a m e ) ) ; 1 ( ( f b _ i n s t a n c e _ n a me o u t p u t - v a r i a b l e - n a m e ) ( p l u g - n a m e i n p u t - v a r i a b l e - n a me ) ) T O o u t p u t - v a r ia b l e - n a m e ; a d a p t e r - c o rm - l i s t : : A D A P T E R - C O N N E C T I O N S a d a p t e r _ c o n n ) E N 几 C O N N E C T I O N S a d a p t e r - c o rm : : ( ( f b _ i n s t a n c e _ n a m e p l u g - n a m e )I s o c k e t - n a m e ) T O ( ( f b _ i n s t a n c e _ n a m e s o c k e t - n a m e ) p l u g - n a m e ) ; f b e c c d e c l a r a t i o n: : E C S TAT E S e c _ s t a t e f i r s t s t a t e i s in i t i a l s t a t e E N 几S T A T E S E 几T R A N S I T I O N S e c _ t r a n s i t i o n E N D T R A N S I T I O N S G B / T 1 9 7 6 9 . 1 -2 0 0 5e c ee s t a t e : : e c _s t a t e _na me : e c _ a c t i o n , e c _ a c t i o n ) ; e c _ a c t i o n: : a l g o r i t h m - n a m e 一 e v e n t - o u t p u t - n a m e I a l g o r it h m n a m e 一 e v e n t - o u t p u t - n a m ee c _ t r a n s i t i o n; : e c s t a t e n a me T O e c s t a t e n a m e : e c t r a n s it i o n c o n d i t io n ; e c _ t r a n s i t i o n _ c o n d i t i o n : : 二 f b _ a l g o r i t h m _ d e c l a r a t i o n: : A L G O R I T H M a l g o r i t h m - n a m e I N l a n g u a g e - t y p e : a l g o r i t h m - b o d y E N D A L G O R I T H Ma l g o r i t h m - b o d y: : f b s e r v i c e d e c la r a t i o n: : S E R VI C E s e r v i c e - i n t e r f a c e - n a m e s e r v i c e - i n t e r f a c e - n a m e s e r v i c e _ s e q u e n c e ) E N 几S E R V I C E s e r v i c e - i n t e r f a c e - n a me: : f b _ t y p e _ n a m e R E S O U R C E s e r vi c e -s e q u e nc e : : S E Q U E N C E s e q u e n c e - n a m e s e r v i c e t r a n s a c t i o n ; E N D - S E Q UE N C E s e r v i c e - t r a n s a c t i o n : : 牛 i n p u t _ s e r v i c e _ p r i m it i v e 一 o u t p u t - s e r v i c e - p r im i t i v e 一 o u t p u t - s e r v i c e - p r i m i t i v e i n p u t - s e r v i c e - p r i m i t i v e: : s e r v i c e - i n t e r f a c e - n a me ( p l u g - n a m e 门 e v e n t - in p u t - n a m e s o c k e t n a m e e v e n t - o u t p u t - n a m e ) , 1 一 , ( i n p u t v a r i a b l e _ n a m e , in p u t - v a r i a b l e - n a m e ) G B / T 1 9 7 6 9 . 1 -2 0 0 5o u t p u t _ s e r v i c e _ p r imit i v e: : s e r v i c e _ i n t e r f a c e - n a m e ( N UL L ( p l u g n a m e 门 e v e n t - o u t p u t - n a m e s o c k e t n a m e e v e n t - in p u t - n a m e ) 1 一 , ( o u t p u t - v a r i a b le - n a m e , o u t p u t - v a r ia b l e - n a m e ) ) )a l g o r i t b m _ n a m e: : i d e n t i f ie re c _ s t a t e _ n a me: : i d e n t i f i e re v e n t - i n p u t - n a m e: : i d e n t i f i e re v e n t - o u t p u t - n a m e: : i d e n t i f i e re v e n t - t y p e: : i d e n t if i e r#b-instance-name: : i d e n t i f i e rf b _ t y p e _ n a m e: : i d e n t i f i e rin p u t - v a r i a b l e - n a m e: : i d e n t if ie ri n t e r n a l - v a r i a b l e - n a me: : i d e n t i f i e rl a n g u a g e - t y p e: : i d e n t i f ie ro u t p u t - v a r i a b l e - n a m e: : i d e n t i f ie rp l u g - n a me: : id e n t if i e rs e q u e n c e n a m e: : i d e n t i f i e rs o c k e t - n a me: : i d e n t i f i e rB . 2 . 2 子应用类型规范 通过本部分的第2 章中给出的规则, 本条定义的语法可用于子应用类型的文本规范。 B . 2 . 1 中给出的生成语法也适用于本条。 语法 :s u b a p p l i c a t i o n _ t y p e _ d e c l a r a t i o n: : S U B A P P L I C A T I O N s u b a p p - t y p e - n a m e s u b a p p _ i n t e r f a c e _ l i s t f b _ i n s t a n c e _ l i s t 仁 s u b a p p - in s t a n c e - l i s t s u b a p p _ c o n n e c t i o n _ l is t E N D _ S U B A P P L I C A T I O N s u b a p p _ i n t e r f a c e _ l i s t : : s u b a p p - e v e n t - i n p u t - l i s t I s u b a p p _ e v e n t _ o u t p u t - l is t 仁 i n p u t - v a r i a b l e - l i s t I o u t p u t _ v a r i a b l e _ l i s t s u b a p p _ e v e n t _ i n p u t _ l i s t: : E V E N T I N P U T s u b a p p _ e v e n t _ i n p u t _ d e c l a r a t i o n ) E N D E V E N T G B / T 1 9 7 6 .9 . 1 -2 0 0 5s u b a p p _ e v e n t _ o u t p u t _ l i s t: : E V E N T - O UT P U T s u b a p p _ e v e n t _ o u t p u t _ d e c l a r a t i o n ) E N D E V E N T s u b a p p _ e v e n t _ i n p u t _ d e c l a r a t i o n: : e v e n t - i n p u t - n a m e : e v e n t - t y p e ; s u b a p p e v e n t o u t p u t d e c l a r a t i o n: : e v e n t _ o u t p u t _ n a m e : e v e n t - t y p e ; s u b a p p _ i n s t a n c e _ l i s t: : S U B A P P S s u b a p p _ i n s t a n c e _ d e f i mt i o n ; E N D _ S U B A P P S s u b a p p _ i n s t a n c e _ d e f i n i t i o n: : s u b a p p _ i n s t a n c e n a m e : s u b a p p _ t y p e _ n a m es u b a p p _ c o n n e c t i o n _ l i s t: : I s u b a p p _ e v e n t _ c o n n _ l is t s u b a p p _ d a t a _ c o n n _ l i s t s u b a p p e v e n t c o n n _ l i s t : : E V E N T - C O N N E C T I O N S s u b a p p _ e v e n t _ c o n n ) E N 几 C O N N E C T I O N S s u b a p p _ e v e n t _ c o n n: : 今 ( f b _ s u b a p p n a me e v e n t - o u t p u t - n a m e T O f b _ s u b a p p _ n a m e e v e n t - i n p u t - n a m e ; ) I ( e v e n t - i n p u t - n a m e T O f b _ s u b a p p _ n a m e 。 e v e n t - in p u t - n a m e ; ) ( f b _ s u b a p p _ n a m e e v e n t - o u t p u t - n a m e T O e v e n t - o u t p u t - n a m e ; )f b _ s u b a p p _ n a m e: : f b _ i n s t a n c e _ n a m e I s u b a p p - i n s t a n c e - n a m es u b a p p _ d a t a _ c o n n _ l i s t: : D A T A - C O N N E C T I O N S s u b a p p _ d a t a _ c o n n ) E N D _ C O N N E C T I O N S s u b a p p _ d a t a _ c o n n: : ( ( ( f b _ s u b a p p _ n a m e o u t p u t v a r i a b le - n a m e ) i n p u t _ v a r i a b l e _ n a me c o n s t a n t ) G B / T 1 9 7 6 9 . 1 -2 0 0 5 T O f b _ s u b a p p _ n a m e in p u t - v a r ia b l e - n a m e ; ) ( ( f b _ s u b a p p _ n a m e 。 o u t p u t - v a r i a b l e - n a m e ) T O o u t p u t - v a r i a b l e - n a m e ; )s u b a p p _ t y p e _ n a me: : i d e n t i f i e rs u b a p p _ i n s t a n c e _ n a m e: : i d e n t i f ie rB . 3 配置元素 通过本部分第4章中给出的规则, 本条定义的语法可用于资源类型、 设备类型、 应用和系统配置的文本规范。 B . 2 中定义的生成语法也适用于本条。语法:a p p l i c a t io n - c o n f i g u r a t io n: : A P P L I C A T I O N a p p l i c a t io n - n a me f b _ i n s t a n c e _ l i s t s u b a p p _ i n s t a n c e _ l i s t s u b a p p _ c o n n e c t io n _ l i s t E N D - A P P L I C A T I O N s y s t e m - c o n f i g u r a t i o n: : S Y S T E M s y s t e m n a me 弋 a p p l i c a t io n - c o n f i g u r a t i o n ) d e v ic e c o n f i g u r a t i o n d e v i c e - c o n f i g u r a t i o n ) d e v i c e _ p a r a m _ l i s t m a p p i n g s E ND S Y S T E Md e v i c e - c o n f ig u r a t i o n: : D E V I C E d e v i c e n a m e : d e v i c e - t y p e - n a m e r e s o u r c e - t y p e - l i s t r e s o u r c e - c o n f i g u r a t io n ) f b _ in s t a n c e _ l i s t d e v t y p e _ c o n n e c t i o n _ l i s t E N D D E V I C E d e v i c e _ p a r a m _ l i s t : : D A T A C O N N E C T I O N S d e v i c e _ p a r a m _ c o n n ) E N 几C O N N E C T I O N S d e v i c e _ p a r a m _ c o n n: : c o n s t a n t T O d e v i c e - n a m e i n p u t - v a r i a b le - n a m e ; r e s o u r c e - t y p e - l i s t: : R E S O U R C E - T Y P E S r e s o u r c e - t y p e - n a m e ; E N D - R E S O UR C E - T Y P E S G B / T 1 9 7 6 9 . 1 -2 0 0 5r e s o u r c e _ c o n f i g u r a t i o n: : R E S O U R C E r e s o u r c e - i n s t a n c e - n a m e : r e s o u r c e - t y p e - n a m e f b _ t y p e _ l i s t c o n f ig _ f b _ i n s t a n c e _ l i s t c o n f ig _ c o n n e c t i o n _ h s t a c c e s s p a t h s E N D _ R E S O U R C E f b _ t y p e _ l i s t : : TB - T Y P E S f b _ t y p e _ n a m e ; E N D F B T Y P E S c o n f i g _ c o n n e c t i o n _ l i s t: : 二 I c o n f i g _ e v e n t - c o n n _ l i s t c o n f i g _ d a t a _ c o n n _ l i s t c o n f i g _ a d a p t e r - c o n n _ l i s t c o n f ig _ e v e n t c o n n _ l i s t: : E V E NT - C O N N E C T I O N S c o n f i g _ e v e n t _ c o n n ) E N D _ C O N N E C T I O N S c o n f i g _ e v e n t _ c o n n: : 二f b _ i n s t a n c e _ r e f e r e n c e 。 e v e n t - o u t p u t - n a m e T O f b _ i n s t a n c e _ r e f e r e n c e e v e n t - i n p u t - n a me ; c o n f i g _ d a t a _ c o n n _ l i s t: : D A T A - C O N N E C T I O N S c o n f i g _ d a t a _ c o n n ) E N 几C O N N E C T I O N S c o n f i g _ d a t a _ c o n n: : ( ( f b _ i n s t a n c e _ r e f e r e n c e o u t p u t - v a r i a b l e - n a me ) I c o n s t a n t ) T O f b _ i n s t a n c e _ r e f e r e n c e i n p u t - v a r ia b le - n a m e , c o n f i g _ a d a p t e r _ c o n n _ l i s t : : A D A P T E R C O N N E C T I O N S c o n f i g _ a d a p t e r _ c o n n ) E N 几 C O N N E C T I O N S c o n f i g _ a d a p t e r _ c o n n: : f b _ i n s t a n c e _ r e f e r e n c e 。 p l u g - n a m e T O f b i n s t a n c e r e f e r e n c e s o c k e t n a m e ; a c c e s s - p a t h s: : V A R A C C E S S a c c e s s - p a t h - d e c la r a t i o n a c c e s s - p a t h - d e c l a r a t io n ) E ND VAR a c c e s s - p a t h - d e c l a r a t i o n: : a c c e s s - p a t h - n a m e : a c c e s s - p a t h a c c e s s - d i r e c t io n ; G B / T 1 9 7 6 9 . 1 -2 0 0 5a c c e s s - p a t h: : f b _ i n s t a n c e _ r e f e r e n c e f b i n s t a n c e n a m e ) s y mb o l ic v a r i a b l e f b _ i n s t a n c e _ r e f e r e n c e: : a p p - h i e r a r c h y - n a m e f b - i n s t a n c e - n a mea p p - h i e r a r c h y - n a m e : a p p l i c a t io n - n a m e s u b a p p _ in s t a n c e _ n a m e )a c c e s s - d i r e c t i o n: : R E A D - O N L Y R E A D WR I T E d e v i c e - t y p e s p e c if i c a t io n: : D E V I C E - T Y P E d e v i c e - t y p e - n a m e in p u t - v a r ia b l e - l i s t r e s o u r c e - t y p e - l i s t r e s o u r c e _ i n s t a n c e ) 仁 f b _ i n s t a n c e _ li s t d e v t y p e _ c o n n e c t i o n _ l i s t d e v t y p e _ a c c e s s _ p a t h s E N 几 D E V I C E T Y P E d e v t y p e _ c o n n e c t io n _ l i s t : : d e v t y p e _ e v e n t _ c o n n _ l i s t d e v t y p e _ d a t a _ c o n n _ li s t 仁 d e v t y p e _ a d a p t e r _ c o n n _ l i s t d e v t y p e _ e v e n t c o n n _ l i s t : : E V E N T - C O N N E C T I O N S d e v t y p e _ e v e n t _ c o n n ) E N D C O N N E C T I O N S d e v t y p e _ e v e n t c o n n: : f b i n s t a n c e n a m e e v e n t - o u t p u t - n a m e T O f b _ i n s t a n c e _ n a m e e v e n t - i n p u t - n a m e ; d e v t y p e _ d a t a _ c o n n _ l i s t : : D A T A C O N N E C T I O N S d e v t y p e _ d a t a _ c o n n ) E N 几 C O N N E C T I O N S d e v t y p e _ d a t a _ c o n n: : ( f b _ i n s t a n c e _ n a m e o u t p u t - v a r ia b l e - n a m eG B / T 1 9 7 6 9 . 1 -2 0 0 5 I i n p u t - v a r i a b l e - n a me c o n s t a n t ) T O f b _ i n s t a n c e _ n a m e i n p u t _ v a r i a b l e _ n a me ; d e v t y p e _ a d a p t e r _ c o n n _ l i s t : : A D A P T E R C O N N E C T I O N S d e v t y p e _ a d a p t e r _ c o n n ) E N D C O N N E C T I O N S d e v t y p e _ a d a p t e r _ c o n n: : f b _ i n s t a n c e _ n a m e p l u g - n a m e T O f b i n s t a n c e n a m e s o c k e t - n a m e ; d e v t y p e _ a c c e s s _ p a t h s: : V A R A C C E S S ( d e v t y p e _ a c c e s s _ p a t h _ d e c la r a t io n ) E N D es V A R d e v t y p e _ a c c e s s _ p a t h _ d e c la r a t i o n: : a c c e s s - p a t h - n a m e : d e v t y p e _ a c c e s s _ p a t h a c c e s s - d i r e c t io n ; d e v t y p e _ a c c e s s _ p a t h: : f b _ i n s t a n c e _ n a me f b _ i n s t a n c e _ n a m e s y m b o l i c - v a r i a b l e r e s o u r c e -i ns t a nc e : : 今 R E S O U R C E r e s o u r c e - i n s t a n c e - n a me : r e s o u r c e - t y p e - n a m e f b _ i n s t a n c e _ l i s t d e v t y p e _ c o n n e c t i o n - l i s t d e v t y p e _ a c c e s s _ p a t h s E N 几 R E S O U R C E r e s o u r c e - t y p e - s p e c i f i c a t i o n: : 一 R E S O U R C E - T Y P E r e s o u r c e - t y p e - n a m e i n p u t - v a r ia b l e - l i s t f b _ t y p e _ l i s t f b _ i n s t a n c e _ l i s t d e v t y p e _ c o n n e c t i o n _ l i s t d e v t y p e _ a c c e s s _ p a t h s E N 几R E S O U R C E - T Y P E m a p p i n g s : : 一 MA P P I N G S m a p p i n g m a p p in g E N D - M A P P I N G S m a p p i n g: : f b _ i n s t a n c e _ r e f e r e n c e O N f b _ r e s o u r c e _ r e f e r e n c e ; f b r e s o u r c e r e f e r e n c er e s o u r c e - h i e r a r c h y , f b _ i n s t a n c e _ n a m er e s o u r c e - h ie r a r c h y: : 二 d e v ic e - n a m e r e s o u r c e - i n s t a n c e - n a me s y s t e m - n a m e: : id e n t i f i e rd e v i c e n a me : : i d e n t i f i e rd e v i c e - t y p e - n a m e : : i d e n t i f i e r G B / T 1 9 7 6 9 . 1 -2 0 0 5a p p l i c a t i o n - n a m e: : id e n t if i e rr e s o u r c e - i n s t a n c e - n a me : : i d e n t i f i e rr e s o u r c e _ t y p e _ n a me : : id e n t i f i e ra c c e s s - p a t h - n a m e: : i d e n t i f ie rB . 4 公用元素 本 附录中没有为非终结符给出语法生成。应使用 G B / T 1 5 9 6 9 . 3 附录 B中给出的语法生成和相应语义。B . 5 管理命令的生成支持 表 9引用了本条定义的语法。 语 法 :d a t a - t y p e - l i s t : : 一 D A T A T Y P E S d a t a - t y p e - n a m e ; E N D - D A T A - T Y P E S c o n n e c t i o n d e f i n i t i o n: : c o n n e c t io n - s t a r t - p o in t “c o n n e c t i o n - e n d - p o in tc o n n e c t i o n - s t a r t - p o i n t: : f b _ i n s t a n c e _ r e f e r e n c e a t t a c h m e n t - p o i n tc o n n e c t i o n - e n d - p o i n t s: : c o n n e c t io n - e n d - p o in t , c o n n e c t i o n - e n d - p o i n t c o n n e c t i o n - e n d - p o i n t: : f b _ i n s t a n c e _ r e f e r e n c e a t t a c h m e n t - p o i n ta t t a c h m e n t - p o i n t : : i d e n t i f i e ra c c e s s - p a t h - d a t a: : a c c e s s - p a t h - n a m e : a c c e s s e d d a t aa c c e s s e d - d a t a: : d a t a - e l e m e n t , d a t a - e l e m e n t )d a t a - e l e m e n t : : c o n s t a n t e n u m e r a t e d - v a l u e s t r u c t u r e - in i t i a l i z a t i o n I a r r a y - i n i t i a l iz a t i o na l l- d a t a - t y p e s : : A L L - D A T A - T Y P E S a l l _ f b _ t y p e s : : 二 A L L _ F B _ T Y P E S f b s t a t u s: : I D L E R UN N I N G S T O P P E D K I L L E D B . 6 带标签的数据类型语法:t a g g e d - t y p e - d e c l a r a t i o n: : T YP E a s n l _ t a g t y p e - d e c l a r a t i o n ; G B / T 1 9 7 6 9 . 1 -2 0 0 5 a s n l t a g t y p e - d e c la r a t io n ; E N D T Y P E a s n l _ t a g: : A P P L I C A T I O N I P R I V A T E ( i n t e g e r I h e x - i n t e g e r ) 语 义 : 这些生成应被用于将G B / T 1 6 2 6 2 中定义的标签赋予本附录和附录E中规定的派生数据类型。如G B / T 1 6 2 6 2中定义, 除了只能在特定上下文关 系标记中使用的类型之外 , 应使用 A P P L I C A T I O N 和P R I V A T E类标签 。B . 7 适配器接口类型语法 :a d a p t e r - t y p e - d e c l a r a t i o n: : A D A P T E R a d a p t e r - t y p e - n a m e f b i n t e r f a c e l i s t E N 几 A D A P T E R a d a p t e r - t y p e - n a m e: : id e n t if i e r语义: 参见 2 . 5 . G B / T 1 9 7 6 9 . 1 -2 0 0 5 附录C ( 资料性附录) 对 象模 型 本附录给出了一些类的对象模型, 这些类可用于工程支持系统( E S S ) , 以支持按照本部分定义的结构所构造的工业过程测量和控制系统( I P MC S ) 的设计 、 实现 、 调试和操作 。 本附录中 使用的符号是统一建模语言( U ML ) 。统一资源定位器( U R L ) 为h t t p : / / w w w . r a t i o n a l .c o m / u m l / 的英特网上有大量的这种符号的参考资料。 注 : 本附录中 , 表 C . 2 . 1中使用 的对象类串用于建立与实现相关 的对象的模型 , 如数据和事件连接的来源地和 目的 地, 模型可以按照串来实现, 也可不按照串来实现。C . 1 E S S 模型 图 C . 1 给出了工业过程测量和控制系统( I P MC S ) 的 E S S ( 工程支持系统) 中主要类 的概述 , 以及I P MC S中与对象相应的类的概述。表 C . 1 中给出了图 C . 1 中的类的描述。 黔 LibraryElementDeclaration 1 1 . supplier:String 0. 1 Repository. version:String 1. 1Tool Editor SysternManagerTester 图 C . 1 E S S 概述 表 C . 1 E S S 类描述Declaration Af乖绮州G B / T 1 9 7 6 9 . 1 -2 0 0 5C . 1 . 1 库元素 图C . 2中给出了库元素( L i b r a r y E l e m e n t ) 的子类。本部分的附录B中的语法生成对应的每个子类在表 C . 2中列出。夏 FBTypeDeclarationSubapplication TypeDeclaration AdapterTypeDeclarationData TypeDeclaration LibraryElement SystemConfigurationResource Type Declaration Device TypeDeclaration 图C . 2 库元素 表 C . 2 库元紊的语法生成DataTypeDeclarationFBTypeDeclarationAdapterTypeDeclarationResourceTypeDeclarationDeviceTypeDeclarationSystemConfiguration 价川C . 1 . 2 声明 图 C . 3 给出了可用软件工具来操作 的声明( D e c l a r a t i o n s ) 的类层次结构。本部分的附录 B中的语法生成对应的子类在表C . 3中列出。 注: D e c la r a t io n s 类及它的子 类的f r o m S t r in g ( ) 和 t o S t r i n g ( ) 操 作分 别表示: 按照本部分附录B 规定的 语法, 从字 符 串中得出对应类的新实例的语法分析; 按照相应的语法, 产生表示实例的字符串。 G B / T 1 9 7 6 9 . 1 - 2 0 0 5Declaration*toStringO6fromStringO7-F- 7-NamedDeclaration ConnectionDeclarationVo name:String src:Stning getNameO dst: StringsetNameODataConnectionDeclaration EventConnectionDeclaration DeviceConfigurationEventDeclaration AlgorithmDeclaration LibraryElementResourceConfiguration type: String DataTypeDmlamtion FBTypeDeclarationEventlnputDeclarationEventOutputDeclaration VariableDeclaration FBInstanceDeclarationInputVadableDeclaration OutputVanableDeclaration lnternatVariableDeclarationI l 图 C . 3 声明 表C . 3 D e c l a r a t i o n s 的语法生成一幸iff?Atda)rithm declaration)nn.Configuration-onnnput_declarationDutput_declarationance definitionvar declaration1_var_declarationvar declaration.e instanceG B / T 1 9 7 6 9 . 1 -2 0 0 5C . 1 . 3 功能块网络声明 图 C . 4 给出了功能块 网络声明( d e c la r a t i o n s ) 元素之间的关系。图中类的定义参见 C . 1 . 2 o 匡 FBNetworkDeclaration1 11DataConnectionDeclaration BventConnectionDeclarationFBInstanceDeclaration ; FBTypeDeclaration 图 C . 4 功能块 网络声明C . 1 . 4 功能块类型声明 图C . 5 给出了功能块类型声明( d e c l a r a t i o n s ) 元素之间的关系。 表C . 3 给出了E v e n t I n p u t D e c l a r a -t i o n , E v e n t O u t p u t D e c l a r a t io n , I n p u t V a r i a b l e D e c l a r a t i o n , O u t p u t V a r ia b l e D e c l a r a t i o n , I n t e r n a l V a r i a b le -D e c l a r a t i o n 类的语法生成, 和F B N e t w o r k D e c l a r a t io n组件类的语法生成。本部分的附录B . 2中的f b _e c c d e c l a r a t i o n和 f b s e r v i c e d e c l a r a t io n的语法生成分别对应于 E C C D e c l a r a t i o n和 S e r v i c e D e c l a r a t io n的语法生成 。 注 1 : 子应用的声明用 B a s i c F B T y p e D e c l a r a t i o n 类的实例来表示。 B a s i c F B T y p e D e c l a r a t i o n类没有包含通过 WI T H 与数据关联的事件。 注2 ; N a m e d D e c l a r a t io n 是具有名 称的 声明( d e c la r a t io n s ) 的 抽象超类。 如, 类型名 称或 实例名称。二 图 C . 5 功能块类型声明 G B T 1 9 7 6 9 . 1 -2 0 0 5C . 2 I P MC S 模型 图 C . 6 给出了工业过程测量和控制系统( I P MC S ) 中主要类的概要。表 C . 4给出了图 C . 6 中类和在工程支持系统( E S S ) 中它们的相应对象的描述 。System 1 I. Device 1 1x Resource1FBManager1.query SystemManagerManagedObject create- - - fromESSdelete*startIkstopskillManagedConnection NamedObjectsrc:String uV name:Stringdst: StringFBType FBinstance Data Type 图 C . 6 I P MC S概要 表 C . 4 I P MC S 类拼 刃 图 C . 7 给出了功能块实例和其相关功能块类型的元素之间的关系。图 C . 7中类的实例表示本部分中相同名称的对象。G B / T 1 9 7 6 9 . 1 -2 0 0 5一布 一 卜 兰 兰 主主 巨兰兰到巨兰兰甘一“ 图 C . 7 功能块类型和实例 G B / T 1 9 7 6 9 . 1 -2 0 0 5 附录D ( 资料性附录) 与 G B / T 1 5 9 6 9 . 3 的关系 G B / T 1 5 9 6 9 . 3中定义的功能和功能块可用于本部分第 2章指定的基本功能块类型中算法的声明。为了在应用和资源类型规范中使用, 附录D . 1 定义了把G B / T 1 5 9 6 9 . 3 的功能和功能块类型转换为简单功能块类型的规则, 附录 D . 2 定义了 G B / T 1 5 9 6 9 . 3 的功能和功能块的事件驱动版本 。D . 1 “ 简单” 功能块 如图D . 1 所述, G B / T 1 5 9 6 9 . 3 的功能和功能块可以 通过以 下规则转换为“ 简单” 功能块: a ) 如图2 1 ( a ) 所示, 简单功能块被表示为应用发起交互作用的服务接口功能块; b ) 简单功能块的类型名由所转换 的 G B / T 1 5 9 6 9 . 3 功能或功能块的类型名加上前缀 F B 组成 ( 例如, 图 D . 1中的 F B _ A D D _ I N T ) ; c ) 输入和输出变量及它们相应的数据类型与所转换的 G B / T 1 5 9 6 9 . 3 功能和功能块类型相应的 输人和输出变量相同; d ) I N I T事件输入和I N I T O事件输出与从G B / T 1 5 9 6 9 . 3 功能块类型转换来的简单功能块类型 一起使用, 但不与从G B / T 1 5 9 6 9 . 3 功能转换来的简单功能块类型一起使用。 E V E N T 月 于 R E O 一 C N P 母一 E V E N T BOOL -.- - 1 OI 00 I-田一BOOL I NT -. - - I I N I S TA T US 卜 出 一U I NT IN T 一 E 3 1 IN 2 一 O U T 丹一 I N T 图 D . 1 “ 简单” 功能块类型的示例 注: 附录 H中给出了这种功能块类型的完整的文本声明。 简单功能块类型的实例行为应符合以下规则: a ) 变量的初始化按照 G B / T 1 5 9 6 9 . 3 2 . 4 . 2 规 定, 顺序 功能图表 ( S F C ) 的初始 化按 照 G B / T 1 5 9 6 9 . 3 2 . 6 规定。 b ) I N I T 十服务原语的发生等同于以上提及的G B / T 1 5 9 6 9 . 3的条款中定义的“ 冷启动” 初始化, 并跟随一个 S T A T U S 值为 0的 I N I T O 十服务原语 。 c ) I N I T 一 或 R E Q 一 服务原语的发生 , 除 了分别引起带有 S T A T U S值为 1的 I N I T O 一 或者 C N F 一 服 务原语以外 , 没有作用。 d ) R E Q 十服务原语的发生引起功能块本体规定的算法的执行。算法按照 G B / T 1 5 9 6 9 . 3 为编程 语言给出的规则来编写。 e ) 响应 R E Q原语 的算法的成功执行导致一个 S T A T US 值为 。的 C N F 原语。 f ) 如果在算法的执行期间发生了错误, 导致一个S T A T U S 值由表D . 1 决定的C N F 一 原语。G B / T 1 9 7 6 9 . 1 -2 0 0 5 表 D . 1 S T A T U S 值的语义二 弓一D . 2 事件驱动功能和功能块 D . 1 给出的规则通过以下修改后, 可 以将 G B / T 1 5 9 6 9 . 3的功能转换为功能块 以便在事件驱动系统中有效使用 : a ) 事件驱动功能块类型的类型名由被转换的G B / T 1 5 9 6 9 . 3的功能的名字加上前缀E 组成, 如, E _ A D D _ I N T . b ) C N F 或者C N F - 原语不跟在算法的执行后面, 除非这种执行导致了该功能输出的值的改变。 注: 如果 C N F输出到 R E Q输人的“ 菊花链” 被用来实现计算的序列, 则序列会停止在输出值没有改变的第一点。 一般来说, 因为G B / T 1 5 9 6 9 . 3 功能块具有内部状态信息, 这种功能块必须被特别转换以便在事件驱动系统中使用。例如 , 表 A . 1 给出的 E _ D E L A Y功能块可用于许多 G B / T 1 5 9 6 9 . 3的定时功能块所提供的延时功能。表 A . 1 的 1 8 给出了 G B / T 1 5 9 6 9 . 3 C T U功能块转换的一个示例 。D . 3 与G B / T 1 5 9 6 9 . 3 的一致性 本部分的实现应与 1 . 5 . 1 , 2 . 1 , 2 . 2 , 2 . 3 和 2 . 4以及 G B / T 1 5 9 6 9 . 3 附录 B用于公共元素文本表示的语义和语法的相关元素的要求相一致, 并具有以下注明的例外和扩展。 本部分附录 B没有为非终结符给 出语法生成。应使用 G B / T 1 5 9 6 9 . 3附录 B给 出的相应语法生成。D . 4 例外 本部分的实现不应使用G B / T 1 5 9 6 9 . 3的2 . 4 . 1 . 1 中定义的直接表示变量表示法和其他条款中的相关特性。但是, S T R I N G或 WS T R I N G类型的文字 , 包含语法和语义对应于直接表示变量表示法的字符串, 可以用作提供访问其对应变量的服务接 口功能块参数 。 G B J T 1 9 7 6 9 . 1 - 2 0 0 5 附录E ( 资料性附录) 修改建 议E . 1 WI T H结构的语义( 建议标准化) 已提出将输人和输出数据的采样作为功能块类型的程序员或提供者 的一种选项, 而不是作为一种系统需求。例如, 通过E . 5所示的S A MP L E设计模式。WI T H结构的语义建议如下: a ) 如果一个输人变量的值发生了变化, 则功能块类型提供者需要在与 WI T H子句相关的一个或 多个事件输人上产生一个事件 ; b ) 如果一个功能块算法的执行改变了输出变量的值, 则功能块的实现者应该保证在与 WI T H子 句相关的一个或多个事件输 出上产生一个事件 。E . 2 输入事件锁存的清除( 建议标准化) 为了防止功能块内状态的增殖, 这些状态除了E C C状态以外, 还包含事件输入状态机和E I , E O变量的状态。推荐删除图 1 2 中给出的输人事件状态机以及 E I , E O变量的定义和引用。应通过尽可能接近所描述的 相应的H a r e l 状态图表来修改E C C状态机的操作, 例如, B . P . D o u g l a s s , R e a l- T i m e U ML -D e v e l o p i n g E f f i c i e n t O b j e c t s f o r E m b e d d e d S y s t e m s 。E . 3 E C转换条件的语法( 建议标准化) 对于 E C转换条件建议采用简化语法 , 使它们对应于熟悉的状态图表表示法 。如以上引用的 H a r e l状态图表。建议语法修改如下:C H A N GE t h e d e f i n i t i o n o f e c _ t r a n s i t i o n _ c o n d i t i o n t o :e c t r a n s i t i o n c o n d it i o n: : e v e n t _ i n p u t n a m e g u a r d - c o n d i t io n e v e n t i n p u t n a m e ( A N D )( g u a r d - v a r i a b le ( g u a r d - c o n d i t i o n ) )A D D t h e f o l l o wi n g d e f i n i t i o n s :g u a r d - v a r i a b l e: : i n p u t v a r i a b le _ n a m e o u t p u t v a r i a b l e _ n a m e i n t e r n a l v a r i a b l e n a m eg u a r d - c o n d i t i o n: : e x p r e s s i o na s d e f i n e d i n I E C 6 1 1 3 1 - 3 - B . 3 . 1 E . 4 有历史节点的分级 E C C ( 建议标准化) 建议允许 E C C具有历史的分级状态 , 如 E . 2 中所引用的 Ha r e l 状态图表。E . 5 第 2 章的改写和澄清( 建议标准化) 目前, 附录 B . 2 . 1 中给出的基本功能块类型定义的语法允许定义有“ 空” 主体的类型 , 或仅有一个G B / T 1 9 7 6 9 . 1 -2 0 0 5E C C的主体的类型。建议在现有的2 . 1 和2 . 2中澄清这些条款, 以便清楚地指出一个基本功能块类型可以用内部“ h i d d e n ( 隐含) ” 的方式提供, 这可以通过本部分以外的其他方法来描述。 为了使这种条文变得容易 , 建议在单独的 2 . 2 中定义这些所有功能块类型公用的声明元素( 如, 接口规范) , 并相应改变随后章节的措词和编号 。 府 舔 利 R E O 一压 茄 而 砰 月 孤 丽 司 E V E N - B 月 R E O C N F 卜 日 一 E V E N T N O T F I R S T A N D N O T C H A N G E D I ( S AMP LE 21 】尸一 曰f -n F I RS T OR CH ANGE D A N Y 一一翻月I N I O U T ( 卜 舟- A N Y , -I 一一 ANY- . -IIN2 OUT21-. - - AN Y一 一SAM PLED CNF a ) 接口b ) E C C V A R F L R S T: B O O I : 1 ; ( * F i r s t s a m p l e *) C H AN G E D : B O O L ; ( ,A t l e a s t o n e v a r i a b l e c h a n g e d * ) END VAR AL GO RI THM S AMP L E I N S T: C HAN GE D: ( OUTI I NI ) OR ( OUT 2 I N 2 ) ; I F CHANGED THEN OUT( : =I N1; OUT 2 : =I N2 ; F I R S T: = f a l s e ; C HAN GE D: =f a l s e ; EN 几 AL GOR I THM c ) 内部变量和算法 图E . 1 S A MP L E - 2功能块类型示例E . 6 S A MP L E设计模式( 建议为资料) 本章为 E . 1 中所引用的 S A MP L E设计模式的使用提供解释和基本原理。 如果在算法执行中算法所使用的变量值可以不可预知地改变, 则可能导致不可预测的行为。当实现 2 . 2 . 2 . 2中定义的执行控制模型时 , 在功能块网络编程中( 程序员手工编程或 由软件工具 自动编程) ,强制执行2 . 2 . 1 . 1 中定义的WI T H语义, 则变量值不可预知的改变只能发生在: a ) 当前运行环境允许一个执行线程被其他线程 中断, 并且这种中断将导致在以下情况下数据被 改变 : b ) 管理服务的操作 , 如 WR I T E , 或者 c ) 功能块中一个算法的中断线程的执行改变了功能块一个输出的值, 连接到功能块的一个输入 , 被 中断的算法包含在这一功能块中, 并且被中断的算法所使用。 在变量值改变以前, 只需简单的要求管理服务获得一个在功能块实例上的监控锁, 就可以避免条件b ) 的情况。因为通过 2 . 2 . 2 . 2中的模型, 执行算法的线程拥有在它的功能块实例上的一个监控锁。通过插人一个S AMP L E _ x功能块类型的实例来避免条件。 ) 的情况( 例如, 图E . 1中描述的S A MP L E - 2类型, 在包含潜在中断算法的功能块和包含潜在被中断算法 的功能块之间) 。现在 , “ 下游” 算法输入值不能被在中断线程中的“ 上游” 算法不可预知地改变。因为被中断的“ 下游” 算法执行的线程仍然拥有在符合 2 . 2 . 2 . 2 执行控制模型的 S A MP L E _ x 实例上的监控锁。 G B / T 1 9 7 6 9 . 1 -2 0 0 5注 1 : 好的设计实践要求“ 下游” 算法不要“ 贪吃” 。例如, 比“ 上游” 算法最坏情况下的中断时间消耗更多的执行 时间。注 2 : 再一次强调, 当实现 2 . 2 . 2 . 2 中定义的执行控制模型的时候, 2 . 2 . 1 . 1 中定义的WI T H语义是强制性的, 这一 采样类型只在运行环境允许优先占有执行线程的中断情况下需要。即使在这种情况下, 通过在单独的资源中 运行不同优先级的线程可以避免采样 。G B / T 1 9 7 6 9 . 1 -2 0 0 5 附录F ( 资料性附录) 信息交换 注: 因为要求其他标准规定与本附录条文的一致性, 本附录的内容可被认为是标准性的。遵从这些条文的工业过 程测量和控制系统和设备可以声称具有这种一致性。F . 1 应用层设施的使用 注: 本 条中 使用的 但未在本部分中 定义的 术语参见G B / T 9 3 8 7 . 1 0 G B / T 9 3 8 7 . 1 的7 . 1 . 3 . 2 确定了很多应用实体( 如应用层中的实体) 提供的设施, 以使应用进程能够交换信息。为了提供这些设施 , 应用实体使用了应用协议和表示服务。这些设施 由资源的通信映射功能提供 。本条讨论 , 当应用实体提供合适的设施时, 通信功能块可使用这些设施的方法 。 注 1 : 资源是 G B / T 9 3 8 7 . 1 中定义的一种应用进程。 注 2 : 以下列出的许多设施不是工业过程测量和控制系统的应用实体提供的。这种情况下, 通信功能块必须实现等 效的设施, 以提供所要求的服务。 注 3 : 特别地, 表示服务通常不由I P M C S的应用实体提供。因此, 为了易于由通信功能块实现这些服务, 本部分为 附录 F . 3 的信息传送和应用管理定义了传送语法。 a ) 信息传送。 b ) 协作应用的同步 通信功能块使用应用实体提供的 信息传送设施来提供由R E Q , C N F , I N D和R S P 事件表示的 同步, 以传送由 S D输人和 R D输出表示的数据。 。 ) 期望通信 的各方的标识。 d ) 可接受的服务质量的确定。 e ) 负责差错恢复的协定。 f ) 安全方面的协定。 9 ) 抽象语法的 标识 在由 I N I T和 I N I T O事件表示 的服务初始化期间, 可以使用这些设施 , 必要时使用 P A R A MS 数据结构元素。 h ) 对话方式的选择 特定功能块类型可以使用这些设施。例如, S U B S C R I B E R可以使用这些设施以确保和P U B - L I S H E R进行正确地交互 。F . 2 通信功能块类型 本条定义了单向和双向事务的一般通信功能块类型。这些类型与实现相关的用户化应坚持以下规则 : 实现应规定每个功能块类型的数据输入和数据输出的值的数据类型和语义; 实现应规定异常数据传送的处理方法 ; 实现应规定这种功能块类型实例的行为和本条规定的行为之间的任何差别。F . 2 . 1 单向事务功能块 图F . 1 图F . 4 提供了在通信连接上提供单向事务的功能块的类型声明和典型服务原语序列。这种连接 由一个 P U B L I S H类型实例和一个或多个 S U B S C R I B E类型实例组成。 注: 这些功能块类型的完整的文本规范参见附录 Ho G B / T 1 9 7 6 9 . 1 -2 0 0 5 E V E N T - -日I N IT 一一六N I石I - Q - E V E N T E V E N T - - - 6 - -F IN- IT一一 IN IT O 队卜一 E V E N T E V E N T- - B- - I R E O C N F 1一 一M- E V E N T E V E N T -L O - - - R S P I NDl ee we 日we E V E N T B O O L 一 一 18 月 O I。 。E 9 9 3 一 B O O L B O O L 一 一 白 - l 9 月 0 1。 一曰- B - B O O L ANY一日曰 P ARAMS S T A T US se F 3 M 一一 ANY ANY 一 一一州口月 P ARAMS S T A T US 一日王李-ANY ANY 曰 se E 9 - -I S D 1 I R D t - B - -ANY A N Y -旧 一 S D m一一一匕 一一 一R D in - E3 - A N Y 图F . 1 单向事务的类型规范注 1 : P A R A M S 输人和S T A T U S 输出的数据类型和语义与实现相关。注 2 : 接收到的R 几 1 , - - - , R 几 m数据的编号和类型对应于传输的 S 几1 , 一, S 几 m数据的编号和类型。 n o r ma l e s t a b l i s h me n tPUBLISHINIT+INITO+ +-t井publisher rejected一 establishment subscriber rejected establishmentPUBLISH SUBSCRIBE PUBLISH SUBSCRIBEINIT+ INIT+INITO- INITO- 图 F . 2 单向事务连接的建立注 3 : 通信连接建立的方法超出了本部分的范围。注4 : 为了 确定R D _ 1 , - - , R D _ m是否满足图F . 1 注 2 的限制, 可要求进行数据传送。注5 : F . 3 中定义的传送语法可用于以上描述的确定。 n o r ma l d a t a t r a n s f e r P U B L IS H S U B S C R IB E RE ( 十一口 反I I w 一 一 一一 I ND+ C N F 十 门 一一一一州I 叶一一 R S P + 图F . 3 正常的单向数据传送注 s : 异常数据传送的处理与实现相关。 p u b l i s h e r i n i t ia t e d - d i s c o n n e c t I I s u b s c r ib e r i n i t i a t e d d i s c o n n e c t P U B L IS HI S U B S C R IB E P U B L I S H I S U B S C R I B E N I T一 一I I I I一】 NI T ( ) 一I I I N IT O 一 甲 I s y s t e m pu b l i s h e r _ d i s c o n n e c t P U B L IS H I I S U B S C R IB E sy stem sub scrib er d isco nn ect I I P UBL I S H 1 I S UBS CRI BE I NI T O一阅一一月!1 I I I I已一 . - I NI T O一 叶一 I N I T O - 图F . 4 单向数据传送的连接释放G B / T 1 9 7 6 9 . 1 -2 0 0 5F . 2 . 2 双向事务功能块 图 F . 5 一图 F . 8 提供了在通信连接上提供双向事务的功能块的类型声明和服务原语序列 。这种连接由一个 C L I E N T类型实例和一个 S E R V E R类型实例组成 。 注 1 : 这些功能块类型的完整文本部分参见附录 H, E V E N T 一 母 1N IT IN I T O曰曰 E V E N T E V E N T 一 IN I T IN IT O一 一E V E N T E VE NT - M 十月 R EQ CNP 0 0 1:0 E VE NT E VENT - L i - 1 RS P I ND2 - U-E VE NT BOOLraes W 曰 OI O( )卜 十任闷卜一一B OOL B OOLeses B- 8曰 QI 00 -E R - E Swe-B OOL S T RI NG -寸叶纷月I D S T AT US I 叫巴咔粉-S T RI NG S TRI NG- f3曰 I D S T AT US E 3 Wwe S T RI NG ANYweeseses出- S D 1 RD I卜一w -ANY ANY-Ef - S D I R D I - - - w -ANY A N Y 一H卜 S D _ 几 L r- . - A N Y A N Y - - - - E - 州S D n R I7 _ m - F3 - A N Y 图 F . 5 双向事务类型规范 注 2 : P A R A MS 输人和 S T A T U S 输出的数据类型和语义与实现相关。 注 3 : 接收到的 R P - 1 , - - - , R D _ m数据的编号和类型对应于传输的 S D - 1 , 二S D _ m数据的编号和类型。 注 4 : 接收到的 R 几 1 , - - , R 几 n 数据的编号和类型对应于传输的 S 几 1 , 二S l 工n 数据的编号和类型。 n o r ma l e s t a b l i s h me n t :于server rejecCLIENT r e mo t e e s t a b l i s h me n t r e j e c t i o n c l i e n t r e j e c t e d e s t a b l i s h me n t1 I I CL I E NT 1 I S E R VER CLI E NT I I S ER VE R! I I I NI T + 一I I NI T十 一一 一,叫I!I IN IT O 一 与 / I - N U L L IN IT O - 一 尹 图F . 6 双向事务连接的建立 注 5 : 为了确定 R D - 1 , 二, R D _ m 和 RD-l, , R D _ n 是杏满足图 E . 5 注 2 和注3的限制, 可要求进行数据传送。 注6 : 附录F . 3 中定义的传送 语法 用于以 上描述的确定。 n o r ma l d a t a tra n s f e r C L IE N T S E R V E R RE O十 一一 ,叫 I I 一 一 I ND+ I 一RS P + C N F 十 , 一 尹 图F . 7 双向数据传送 注7 : 异常数 据传送的 处理与实 现相关。 G B / T 1 9 7 6 9 . 1 -2 0 0 5 c l ie n t i n i t i a t e d es d i s c o n n e c t s e r v e r in i t i a t e d d is c o n n e c t s y s te m in i t i a t e d d i s c o n n e c t C L I: 二 S E R V E R C L IE N 丁 S E R V E R C L IE N 丁1 ! S E R V E R IN I T 一一一 抽日一I N I I , 一I N I T O 一1 一 一 钾 丫一一 N U L L IN I T O - 一 一 r 呼 一 一IN IT O - IN IT O - 一 尹!19 一 一N IT O - a ) 客户发起b ) 服务器发起c ) 系统发起 图 F . $ 双向数据传送的连接释放F . 3 传送语法 注 1 : 因为一致性标准和系统可规定一个上下文关系, 本条的内容被认为是规范性的, 在这个上下文关系中应该使 用规定的传送语法。 注2 : F . 3 . 1 . 1 和 F . 3 . 1 . 2的开始部分分别给出了这些传送语法使用的推荐的上下文关系。 传送语法按照一种描述将要传送的数据类型的抽象语法和一组表示所定义的数据类型实例的编码规则来定义。本附录使用G B / T 1 6 2 6 2中定义的抽象语法记法( A S N . 1 ) 来定义两种抽象语法: 正常数据传送的本部分的F B D A T A和应用管理数据传送的本部分的F B MG T o 本附录给出了两组编码规则: a ) 附录 F . 3 . 1 定义了 B A S I C编码规则 ; b ) 附录 F . 3 . 2 使用本部分的 F B D A T A语法 中特殊 的数据类型特性, 以通过以下原则获得一组 C O MP A C T编码规则: 1 ) “ 内容八位位组” 数 目固定的地方, 不能在编码中使用“ 长度八位位组” ; 2 ) 使用特殊编码来最小化八位位组的数 目和固定长度类型所要求的编码 译码工作 ; 3 ) “ 标识符八位位组” 不用于S T R U C T和A R R A Y数据类型的单个元素, 因为在相应的类 型声明中每个元素的类型是固定 的。F . 3 . 1 抽象语法F . 3 . 1 . 1 本部分的 F B D A T A F . 3 . 2 . 2 中 的C O M P A C T编码规则应用于本条中的 抽象语法所得到的传送语法被推荐用于: a ) 传送通信功能块的S D输人值到通信连接另一端的通信功能块的R D输出值; b ) 确定在 S D输人和 R D输出之间变量的相应数 目和类型是否满足图 F . 1 和图 F . 5的注释 中的 限制。 为了传送文字表示的数据和变量的值, 本条中定义的抽象语法的使用应遵循 以下语义规则 : 妇模块( 如, B O O L ) 中数据类型的名称对应于 G B / T 1 5 9 6 9 . 3中定义的数据类型的名称。这种类 型定义是为相应G B / T 1 5 9 6 9 . 3 数据类型的数据传送给出的。 b ) D A T E和T I ME - O F - D A Y数据类型的“ 可见串” 值限于G B / T 1 5 9 6 9 . 3中定义的这些数据类 型的文本语法 。 c ) 符号 t y p e I D 隐含了数据标签由按照 F . 3 . 1 . 2规定建立的相应派生数据类型的类型定义的 t y p e I D字段的值组成。 d ) E n u m e r a t e d D a t a 项的值由按照F . 3 . 1 . 2 规定建立的相应E n u m e r a t e d T y p e 定义的标识符序 列中的相应标识符的首要位置( 从 。 开始) 组成。这些数据类型的语义与G B / T 1 5 9 6 9 . 3中 e n u m e r a t e d d a t a t y p e s 规定的 一样。 e ) S u b r a n g e D a t a项的特定类型在按照F . 3 . 1 . 2 规定建立的S u b r a n g e T y p e 中规定。这些数据类 型的语义与 G B / T 1 5 9 6 9 . 3中的 s u b r a n g e d a t a t y p e s 规定的一样 。 f ) A R R A Y数据项的元素类型在按照F . 3 . 1 . 2 规定建立的A r r a y T y p e中规定。这些数据类型 的语义与 G B / T 1 5 9 6 9 . 3 中的 a r r a y d a t a t y p e s 规定的一样。G B / T 1 9 7 6 9 . 1 -2 0 0 5 g ) S T R U C T数据项的元素类型在F . 3 . 1 . 2中定义的S t r u c t u r e d T y p e 中规定。这些数据类型的 语义与G B / T 1 5 9 6 9 . 3 中的s t r u c t u r e d d a t a t y p e s 规定的一样。A S N. 1 MODUL E本部分的 F B D A T A D E F I N I T I O N S: : BE GI N E X P O R T S F B D a t a S e q u e n c e , F B D a t a ,E le m e n t a r y D a t a , B O O L , F i x e d L e n g t h I n t e g e r , F i x e d - L e n g t h R e a l , T I ME , A n y D a t e , A n y S t r i n g , F i x e d L e n g t h B i t S t r i n g , S i g n e d I n t e g e r , U n s i g n e d I n t e - g e t , R E A L , L R E A L , D A T E , T I ME - O F - D A Y, D A T E - A N D - T I ME , S T R I N G, WS T R I N G, B Y T E , WO R D, D WO R D, L WO R D, D i r e c t l y D e r i v e d D a t a , E n u m e r a t e d D a t a , S u b r a n g e D a t a , ARR AY, S TR UC T; F B D a t a S e q u e n c e: : A P P L I C A T I O N 2 2 I MP L I C I T S E Q UE N C E O F F B D a t a F B D a t a: : C H O I C E E le m e n t a r y D a t a , D e r i v e d D a t a ) E l e me n t a r y D a t a: : C HO I C E B OOL, F i x e d L e n g t h I n t e g e r , F i x e d L e n g t h R e a l , T I ME , A n y D a t e , A n y S t r i n g , F i x e d L e n g t h B i t S t r i n g F i x e d L e n g t h I n t e g e r: : C HO I C E S i g n e d I n t e g e r , U n s i g n e d I n t e g e r S i g n e d I n t e g e r: : C HO I C E S I NT , I N T, D I N T , L I N T Un s i g n e d I n t e g e r: : C HO I C E ( U S I N T, D I N T, U D I N T, U L I N T ) F i x e d L e n g t h R e a l : : C H O I C E R E AL , L R E A L A n y D a t e: : C HO I C E D A T E , T I ME - O F - D AY, D A T E - A N 几T I ME A n y S t r i n g: : C H O I C E S T R I N G, WS T R I N G F i x e d L e n g t h B i t S t r i n g: : C HO I C E B Y T E , WO R D , D WO R D , L WO R D ) B O O L : : C H O I C E B O O L 4 , B O O L 1 G B / T 1 9 7 6 9 . 1 -2 0 0 5B O O L O: : A P P L I C A T I O N 0 I MP L I C I T N U L LB O O L l: : A P P L I C A T I O N 1 I MP L I C I T N U L LS I N T: : A P P L I C A T I O N 2 I MP L I C I T I N T E G E R ( 一 1 2 8 . 1 2 7 )I N T : : A P P L I C A T I O N 3 1 I MP L I C I T I N T E G E R ( - 3 2 7 6 8 . . 3 2 7 6 7 )D I N T: : A P P L I C A T I O N 4 I MP L I C I T I N T E G E R ( - 2 1 4 7 4 8 3 6 4 8 二2 1 4 7 4 8 3 6 4 7 )L I N T: : A P P L I C A T I O N 5 I MP L I C I T I NT E GE R( - 9 2 2 3 3 7 2 0 3 6 8 5 4 7 7 5 8 0 8 二9 2 2 3 3 7 2 0 3 6 8 5 4 7 7 5 8 0 7 )U D I N T: : A P P L I C A T I O N 6 I MP L I C I T I N T E G E R ( 0 二2 5 5 )U I N T: : A P P L I C A T I O N 7 I MP L I C I T I N T E G E R ( 0 二6 5 5 3 5 )U D I N T : : A P P L I C A T I O N 8 I MP L I C I T I N T E G E R ( 0 二4 2 9 4 9 6 7 2 9 6 )U L I N T: : A P P L I C A T I O N 9 I MP L I C I T I N T E G E R ( 0 . 。 1 8 4 4 6 7 4 4 0 7 3 7 0 9 5 5 1 6 1 5 )R E A L: : 仁 A P P L I C A T I O N 1 0 I MP L I C I T O C T E T S T R I N G ( S I Z E ( 4 ) )L R E A L: : A P P L I C A T I O N 1 1 I MP L I C I T O C T E T S T R I N G ( S I Z E ( 8 ) )T I M E: : A P P L I C A T I O N 1 2 I M P L I C I T L I N T一D u r a t i o n i n l l s u n it sD A T E: : A P P L I C A T I O N 1 3 I MP L I C I T U L I N T一S e e T a b l e F . 3 . 2 . 2 .T I ME - O F - D A Y: : 二 A P P L I C A T I O N 1 4 I MP L I C I T U L I N T一S e e T a b l e F . 3 . 2 . 2 .D A T E _ A N D L T I ME : : A P P L I C A T I O N 1 5 I MP L I C I T UL I N T一S e e T a b l e F . 3 . 2 . 2 .S T R I N G: : A P P L I C A T I O N 1 6 I MP L I C I T O C T E T S T R I N G一1 o c t e t / c h a rB Y T E : : 二 A P P L I C A T I O N 1 7 口I MP L I C I T B I T S T R I N G ( S I Z E ( 8 ) )WO R D : : A P P L I C A T I O N 1 8 I MP L I C I T B I T S T R I N G ( S I Z E ( 1 6 ) )D WO R D : : A P P L I C A T I O N 1 9 I MP L I C I T B I T S T R I N G ( S I Z E ( 3 2 ) )L W O R D : : A P P L I C A T I O N 2 0 I MP L I C I T B I T S T R I N G ( S I Z E ( 6 4 ) )G B / T 1 9 7 6 9 . 1 -2 0 0 5 WS T R I N G: : A P P L I C A T I O N 2 1 I MP L I C I T O C T E T S T R I N G一2 o c t e t s / c h a r D e r i v e d D a t a: : CHOI C E D ir e c t l y D e r iv e d D a t a , E n u me r a t e d Da t a , S u b r a n g e D a t a , AR R AY, S TR UC T ) D i r e c t l y D e r i v e d D a t a: : t y p e I D I MP L I C I T E le m e n t a r y D a t a E n u m e r a t e d D a t a: : t y p e I D I MP L I C I T D I N T S u b r a n g e D a t a: : t y p e I D I MP L I C I T F i x e d L e n g t h l n t e g e r A R R A Y: : t y p e I D I MP L I C I T S E Q UE N C E O F E l e me n t a r y D a t a 一s a m e t y p e S T R U C T: : t y p e I D I MP L I C I T S E Q U E N C E一d i f f e r e n t t y p e s ENDF . 3 . 1 . 2 本部分的 F B MG T F . 3 . 2 . 1 中描述的B A S I C编码应用于本条中的抽象语法所得到的传送语法被推荐用于3 . 3 . 2中定义的 MA N A G E R功能块类型实例的 O B J E C T输入和 R E S UL T输出的标准编码 。 为了对附录B和附录E规定的文本语法中声明的实体进行编码, 表F . 1 给出了本条中定义的抽象数据类型的推荐用法。 表 F . 1 本部分的 F B MG T类型的使用丁 一吕 G B J T 1 9 7 6 9 . 1 -2 0 0 5 以下给出的A S N . 1 MO D UL E I E C 6 1 4 9 9 - F B MG T D E F I N I T I O N S定义的抽象语法遵循以下的语义规则 : a ) 对于派生类型, 每一元素的基本类型和初始值与相应 “ i n i t i a l V a l u e ” 元素的类型和值相同; b ) 附录E引用的数组初始化的规则, 包括初始值不完全集合的规则, 用于A r r a y T y p e 的初始值 和A R R A Y变量的值的使用。AS N. 1 MOD ULE 本部分的 F B MG T D E F I N I T I O N S: : BEGI N I MP O R T S F B D a t a , E n u m e r a t e d D a t a , F i x e d L e n g t h I n t e g e r F R O M I E C 6 1 4 9 9 - F B D A T A; F B C o mm a n d O b j e c t; ; C H O I C E d a t a T y p e D e f in i t i o n仁 0 I MP L I C I T D a t a T y p e D e f i n i t i o n , f u n c t i o n B l o c k T y p e D e f i n i t i o n 1 I MP L I C I T F u n c t io n B l o c k T y p e D e f i n i t io n , f u n c t i o n B l o c k I n s t a n c e D e f i n i t io n 2 I MP L I C I T F u n c t i o n B l o c k n s t a n c e De f i n i t i o n , c o n n e c t i o n D e f i n i t i o n 3 I MP L I C I T C o n n e c t i o n D e f i n i t i o n , d a t a T y p e N a m e 4 I MP L I C I T I d e n t if i e r , f u n c t i o n B l o c k T y p e N a m e 5 I MP L I C I T I d e n t i f ie r , f u n c t i o n B l o c k I n s t a n c e R e f e r e n c e 6 I MP L I C I T F u n c t io n B l o c k l n s t a n c e R e f e r e n c e , a p p l i c a t io n N a rn e 7 I MP L I C I T I d e n t i f ie r , a l lD a t a T y p e s 8 I MP L I C I T N UL L , a l lF u n c t io n B l o c k T y p e s 9 I MP L I C I T N U L L , c o n n e c t i o n E n d P o i n t 1 0 I MP L I C I T C o n n e c t i o n E n d P o i n t , a c c e s s P a t h D e f i n i t i o n 1 1 I MP L I C I T A c c e s s P a t h D e f in i t i o n , a c c e s s P a t h N a me 1 2 I MP L I C I T I d e n t i f i e r , a c c e s s P a t h D a t a 1 3 I MP L I C I T A c c e s s P a t h D a t a ) F B C o mma n d R e s u l t: : C HOI C E d a t a T y p e N a m e 0 I MP L I C I T I d e n t i f ie r , f u n c t i o n B lo c k T y p e N a m e 1 I MP L I C I T I d e n t i f i e r , f u n c t i o n B lo c k I n s t a n c e R e f e r e n c e 仁 2 I MP L I C I T F u n c t io n B l o c k I n s t a n c e R e f e r e n c e , c o n n e c t i o n D e f i n i t i o n 3 I MP L I C I T C o n n e c t i o n D e f i n i t i o n , a p p l i c a t i o n N a rne 4 习I MP L I C I T I d e n t i f i e r , d a t a T y p e L i s t 5 I MP L I C I T S E Q UE N C E O F I d e n t i f i e r , f u n c t io n B l o c k T y p e L i s t 6 I MP L I C I T S E Q U E N C E O F I d e n t if i e r , d a t a T y p e D e f i n i t io n 7 I MP L I C I T D a t a T y p e D e f i n i t i o n ,G B / T 1 9 7 6 9 . 1 - 2 0 0 5 f u n c t i o n B l o c k T y p e D e f in i t io n 8 I MP L I C I T F u n c t i o n B l o c k T y p e D e f in i t i o n , f u n c t i o n B l o c k S t a t u s 9 I MP L I C I T F u n c t i o n B l o c k S t a t u s , c o n n e c t i o n E n d P o i n t s 1 0 I MP L I C I T S E Q U E N C E O F C o n n e c t i o n E n d P o i n t , f u n c t io n B l o c k I n s t a n c e R e f e r e n c e s 1 1 I MP L I C I T S E QUE NC E OF F u n c t i o n B l o c k I n s t a n c e R e f e r e n c e , a c c e s s P a t h D e f i n i t io n 1 2 I MP L I C I T A c c e s s P a t h D e f i n i t i o n , a c c e s s P a t h N a m e 1 3 I MP L I C I T I d e n t i f i e r , a c c e s s e d Da t a F B Da t a I d e n t if i e r: : V i s ib l e S t r i n g一S y n t a x p e r i d e n t i f i e r i n B . 4 . 1 D a t a T y p e D e f i n i t i o n: : S E T t y p e N a m e 仁 。 I MP L I C I T I d e n t i f i e r , t y p e I D仁 1 I MP L I C I T T y p e I D , t y p e S p e c D a t a T y p e S p e c i f ic a t i o n , d e s c r i p t io n仁 2 I MP L I C I T V i s i b l e S t r i n g O P T I O NA L T y p e I D : : O C T E T S T R I N G一I S O 8 8 2 5 e n c o d e d t a g v a l u e D a t a T y p e S p e c i f i c a t i o n: : C HO I C E d i r e c t l y D e r i v e d T y p e F B D a t a , 0 I MP L I C I T E n u m e r a t e d T y p e , 1 I MP L I C I T S u b r a n g e T y p e , 2 I MP L I C I T A r r a y T y p e , 3 I MP L I C I T S t r u c t u r e d T y p e E n u me r a t e d T y p e: : S E Q UE N C E v a l u e s 0 I MP L I C I T S E Q U E N C E O F I d e n t if i e r , i n i t i a l V a l u e 1 习 I MP L I C I T E n u m e r a t e d D a t a ) S u b r a n g e T y p e: : S E Q U E N C E m i n V a l u e F ix e d L e n g t h I n t e g e r , m a x V a l u e F i x e d L e n g t h I n t e g e r , i n i t i a l V a l u e F i x e d L e n g t h I n t e g e r 一A l l o f s a m e t y p e Ar r a y T y p e: : S E Q UE N C E l i m i t s 0 I MP L I C I T S E Q UE N C E O F S u b s c r i p t L im i t s , i n i t i a lV a l u e 1 I MP L I C I T A R R A Y S u b s c r i p t L i m i t s: : S E Q UE N C E m i n S u b s c r ip t F i x e d L e n g t h I n t e g e r , m a x S u b s c r i p t F i x e d L e n g t h I n t e g e r ) S t r u c t u r e d T y p e: : S E Q UE N C E O F V a r i a b l e D e f i n i t i o n G B / T 1 9 7 6 9 . 1 -2 0 0 5V a r i a b l e D e f i n i t i o n: : S E Q UE N C E n a me I d e n t i f i e r , i n i t i a l Va l u e F B D a t a , d e s c r i p t io n V i s i b l e S t r i n g O P T I O N A L F u n c t i o n B l o c k T y p e D e f i n i t i o n: : S E QU E N C E n a me I d e n t i f i e r , e v e n t I n p u t s S E Q U E N C E O F E v e n t S p e c i f ic a t i o n , e v e n t O u t p u t s S E Q UE N C E O F E v e n t S p e c i f i c a t i o n , d a t a I n p u t s S E Q UE N C E O F V a r ia b l e D e f i n i t io n , d a t a O u t p u t s S E Q U E N C E O F V a r i a b le D e f i n i t i o n , b o d y O C T E T S T R I N G O P T I O N A L E v e n t S p e c i f i c a t io n: : S E Q UE N C E n a me I d e n t i f i e r , w i t h L i s t S E Q U E N C E O F I d e n t i f ie r F u n c t i o n B l o c k I n s t a n c e De f i n i t i o n : : S E QUE NC E a p p li c a t io n N a m e I d e n t i f i e r , i n s t a n c e Na me I d e n t i f i e r , t y p e N a m e I d e n t i f i e r F u n c t i o n B l o c k l n s t a n c e R e f e r e n c e: : S E Q U E N C E a p p l i c a t io n N a m e I d e n t i f i e r , i n s t a n c e Na me I d e n t i f i e r F u n c t i o n B l o c k S t a t u s: : E N UME R ATE D n o n - e x i s t e n t ( 0 ) , u n r u n n a b l e( 1 ) , i d l e ( 2 ) , r u n n i n g ( 3 ) , s t o p p e d ( 4 ) , s t o p p i n g ( 6 ) C o n n e c t io n D e f i n i t i o n: : S E Q UE N C E s o u r c e C o n n e c t i o n S t a r t P o i n t , d e s t in a t i o n s S E Q U E N C E O F C o n n e c t i o n E n d P o i n t C o n n e c t i o n S t a r t P o i n t: : C HOI C E e n d P o in t 0 I MP L I C I T C o n n e c t io n E n d P o i n t , p a r a me t e r 仁 1 F B D a t a )C o n n e c t i o n E n d P o i n t: : S E QUE NC E a p p l i c a t io n N a m e I d e n t i f i e r , f b l n s t a n c e Na me I d e n t i f i e r , a t t a c h me n t P o i n t I d e n t i f i e r )A c c e s s P a t h D e f in i t i o n: : S E Q U E N C E a c c e s s P a t h N a me I d e n t i f i e r ,G B / T 1 9 7 6 9 . 1 -2 0 0 5 a c c e s s P a t h S T R I N G 一p e r B . 3 s y n t a x Ac c e s s P a t h D a t a: : S E QUE NC E a c c e s s P a t h Na me I d e n t i f i e r , d a t a F B D a t a ) ENDF . 3 . 2 编码规则F . 3 . 2 . 1 B A S I C编码 这种编码是 G B / T 1 6 2 6 3 的 B A S I C编码规则应用于附录 F . 3 . 1 中所定义类型的变量的结果 。F . 3 . 2 . 2 C O MP A C T编码 这种编码应是修改 F . 3 . 2 . 1 中给出的 B A S I C编码规则的结果 , 如下 : a ) 表F . 2中给出的数据类型的值的编码中应不包括“ 长度八位位组” ; b ) G B / T 1 6 2 6 3中描述的“ 内容八位位组” 的长度( 单位为八位位组) 和编码应与表F . 2 定义的数 据类型的值一样 ; c ) T I ME , D i r e c t l y D e r i v e d D a t a , E n u m e r a t e d D a t a 或者S u b r a n g e D a t a 类型变量的编码应遵循基本 类型的编码规则 ; d ) 除B O O L类型元素的编码外, A R R A Y或S T R U C T类型的单个元素编码中应不包括“ 类型八 位 位 组 ” ; e ) S T R I N G和WS T R I N G类型的 值的编码应该是简单的。 表 F . 2 固定长度数据类型的 C O MP A C T编码下 G B T 1 9 7 6 9 . 1 -2 0 0 5 表 F . 2( 续)乡G B / T 1 9 7 6 9 . 1 -2 0 0 5 附录G ( 资料性附录) 设备和资源管理G . 1 设备管理 为了管理设备中的其他资源, 设备可提供管理资源。该资源可包含具有与设备相同的实例名的设备管理应用, 包括 : 提供设备管理功能的管理功能块; 为管理功能块的C MD和O B J E C T输入以及 S T A T US和R E S U L T输出的传递提供双向事 务服务的通信功能块; 为了通信和管理功能的建立和维护, 与实现相关的逻辑。 G . 3 中描述了满足这些要求的配置。G . 2 资源管理 如果设备包含管理资源, 则设备内资源的管理可通过以下规则获得 : a ) 对于相应设备中包含的每一其他资源 , 管理资源包含一个管理功能块 ; b ) 每一资源管理功能块与G . 3 . 1中描述的通信功能块互连; c ) 资源管理设施可包含在资源设备类型规范中, 这些资源构成 了设备类型的一部分, 或者可通过 使用C R E A T E 和D E L E T E命令动态创建和删除3 . 3 描述的设备管理功能块; d ) 当创建和系统初始化时, 每个资源的状态为“ s t o p p e d , 即, 每个资源必须在创建或系统初始化 以后, 使用 S T A R T命令来启动。 G . 3 . 2中描述了满足这些要求的配置。 如果设备不包含管理资源, 则每一资源的管理设施必须由资源自身来提供。这些设施可包含在资源类型规范中, 或包含在含有相关资源类型实例的设备类型规范中。 注: 为了应用的本地或远程管理, 资源可包含其他管理功能块。G . 3 管理功能块应用 本章提供了分别满足G . 1 和G . 2 中给出的设备和资源管理要求的应用示例。G . 3 . 1 设备管理 图G . 1 描述了S E R V E R通信功能块的使用。该S E R VE R通信功能块提供了G . 1中描述的设备管理要求的通信。 G B / T 1 9 7 6 9 . 1 -2 0 0 5 DE VI C E MANAGE R 一 图 G . 1 远程设备管理应用G . 3 . 2 资源管理 为了满足系统唯一性要求 , 资源管理应用的实例名可 由设备和资源实例名的串联组成 , 通过一个下划线分开。例如, 名为“ MO T O R S ” 的设 备中 , 名 为“ D R I V E ” 的资源 的管理应 用 的实例名应有 “ MO -T O R 5 D R I V E , 的实例名。如图F . I 描述, S E R V E R通信功能块可用来提供要求的通信功能。该功能块合适的名为“ R E S O U R C E oG B / T 1 9 7 6 9 . 1 -2 0 0 5 附录H ( 规范性 附录) 文本规范 对于本部分描述的所有功能块和适配器类型 , 按照附录 B中定义的语法 , 本附录提供了文本规范。在本部分中, 每一这种功能块类型的描述中定义的范围内, 本附录的内容是规范性的。 注: 规范以类型名的字母顺序列出。F U N C T I O N - B L O C K C L I E N T ( D a t a E x c h a n g e C l i e n t I n t e r f a c e)E VE NT es I NP UT I NI T WI TH QI ,I D ;( , S e r v i c e I n i t i a l i z a t i o n ) R E Q WI T H Q I , S P - 1 , S D _ m ;( S e r v i c e R e q u e s t)E NQ _ E VE NTE VE NT - O UT P UT I NI T O WI TH QO, S TA TUS ;( I n i t i a l i z a t i o n C o n f i r m ,) C NF WI TH QO, S TATUS , R D - 1 ,R D _ n;( S e r v i c e C o n f i r ma t i o n ,)ENDes EVENTVAR - I NP UT Q I : B O O L;( E v e n t I n p u t Q u a l i f i e r, ) I D : S T RI NG ;( , C o n n e c t i o n I d e n t i f i e r) S D - 1: ANY ;( D a t a t o s e n d 二) S D - m :A NY ;( D a t a t o s e n d ,)E ND VARVAR O UTP UT Q O : B O O L;( E v e n t O u t p u t Qu a l if i e r *) S TAT US:S TR I NG ; ( * S e r v i c e S t a t u s,) RD - 1:AN Y ;( , R e c e i v e d D a t a,) RD - n : ANY ;( R e c e i v e d D a t a,)E N D es VARS E R VI C E C L I E N T/ S E R VE R ( * S e e S E R VE R )E ND - S E RVI C EE N D - F UN C TI ON- B L O C K, , , , , 舀舀 舀石 二 二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二二 二二 二 二一二 二 二竺竺二竺 竺 一一 一 一 , , , 甲,思 一F U N C T I O N - B L O C K E _ C T U ( E v e n t - D r i v e n U p C o u n t e r )E VE NT I NP UT C U WI T H P V; ( C o u n t U p) R ;( 二 Re s e t)E ND es E VE NTE VE NT O UT P UT G B / T 1 9 7 6 9 . 1 -2 0 0 5 C U O WI T H Q, C V;( * C o u n t U p O u t p u t E v e n t二) R O WI T H Q, C V; ( R e s e t O u t p u t E v e n t二 )E ND 一 E VE NTVAR I NP UT P V :UI N T;( 二 P r e s e t Va l u e,)E ND we VA RVAR - OUT P UT Q : B O OL ;( 二 C V P V ) C V : UI NT ;E ND ee V ARE C S T ATE S S TA RT; C U:C U 一 C UO ; NUL L; R: R一 R O ;E ND L S T ATE SE C T R ANS I T I O NS S T A R T T O C U : C U ( C V P V ) ; NUL L T O S T AR T : I ; S TAR T T O R : R; R TO S TART : 1 ;E ND es T R ANS I T I O NSA L G O R I T HM C U I N S T: ( C o u n t U p) C V : 二 C V十 I ; Q : ( C V P V) ;E ND AL GO RI THMAL GO RI THM R I N S T:( , R e s e t,) CV : 0 ; Q : 0 ;E ND AL GO RI THME ND - F UNC T I O N- B L O C KF U N C T I O N - B L O C K E _ C Y C L E( P e r i o d i c ( c y c li c ) G e n e r a t i o n o f a n E v e n t )E VE NT I NP UT S TAR T WI TH D T; S TO P;END EVENTE VE NT OUTP UT E O; ( P e r io d i c e v e n t a t p e r io d D T , s t a r t i n g a t D T a f t e r G O )E N D ee E V E NTVAR I NP UTG B / T 1 9 7 6 9 . 1 -2 0 0 5 D T : T I ME ; ( * P e r i o d b e t w e e n e v e n t s )E N D _ VARFBS DL Y : E - DE L AY ;E N D ee F B SE VE NT -s C ONNE C TI ONS S TAR T TO D L Y. S T AR T ; S T OP T O D L Y. S TO P ; D L Y. E O T O DL Y. S TAR T ; D L Y. E O T O E O ;E NQ _ C ONNE C TI ONSD ATA - C ON NE C T I ONS D T TO D L Y. D T ;E ND ee C ONNE C TI O NSE ND - F UNC T I ON - B L OC KF U N C T I O N - B L O C K E _ D _ F F( E v e n t - d r iv e n D a t a ( D ) L a t c h )E VE NT 一 I NP UT CL K WI TH D ;( * Da t a C l o c k ,)E ND ee E VE NTE VE NT - OUT P UT E O WI T H Q; ( O u t p u t E v e n t w h e n Q o u t p u t c h a n g e s )E ND es E VE NTVA R I NP UT D :B OOL; E N D - VAR ( 二 D a t a I n p u t)V A R - O U T P U T Q : B O O L ; E N D _ V A R ( ,L a t c h e d D a t a )E C - S TAT E S QO ;( , Q i s F AL S E 二) R E S E T : L AT CH 一 E O ;( Re s e t Q a n d i s s u e E O ) Q 1 ; ( Q i s T R U E , ) NUL L;( No a c t i o n wh e n Q i s T RUE ,) S E T : L A T C H一 E O ; ( L a t c h a n d i s s u e E O * ) NUL O;( No a c t i o n wh e n Q i s F AL S E)E N D es S T ATE SE C T R ANS I T I ONS Q O T O NU L O: 二C L K乙N O T D; NUL O T O QO: 1 ; Q O T O S E T: C L KD ; S E T T O Q l: 1 ; Q l T O N U L L: C L K 衣 D; NUI . l T O Q1: 1 ; Q l T O R E S E T: C L KN O T D ; RE S E T T O QO: 1;E N D 一 TR ANS I T I O NS G B / T 1 9 7 6 9 . 1 -2 0 0 5AL GOR I THM L AT C H I N S T : Q : D ;E N D - AL GOR I THME N D L F UN C TI ON _ B L OC KF UNC T I ON - B L O C K E _ DE L AY ( * D e l a y e d p r o p a g a t i o n o f a n e v e n t 一 C a n c e l l a b l e * )E VE NT we I NP UTS T A R T WI T H D T ; ( B e g i n D e la y) S T O P;( * C a n c e l D e l a y, )END-EVENTE VE NT OUTP UT E O ;( D e l a y e d E v e n t)END EVENTVAR I NP UT D T : T I ME ;( * D e l a y T i m e *)E ND we VARS E R V I C E E _ D E L A Y / R E S O U R C ES E Q UE N C E e v e n t - d e l a y E _ D E L AY. S T AR T( D T)一 E _ D E L AY. E O( ) ;E N D L S E QUE NC ES E Q U E N C E d e l a y - c a n c e l e d E _ D E L A Y . S T A R T ( D T ); E _ D E L A Y . S T O P O ;END-SEQUENCES E Q U E N C E n o - m u lt i p l e d e la y E _ D E L A Y . S T A R T ( D T ); E _ D E L AY. S TAR T( D T); 一 E _ D E L AY . E O( ) ;E N D - S E Q U E N C EEND S ERVI CEE ND 一 F UNC T I O N B L O C KF U N C T I O N - B L O C K E _ D E MU X( E v e n t d e mu l t i p l e x e r,)E VE NT I NP UT E l WI T H K ; ( , E v e n t t o d e mu l t i p l e x)E ND se E VE NTE VE NT O UTP UT E 0 0 ; E Ol ; E 02 ; E 0 3 ; ( N u m b e r o f o u t p u t s i s i m p l e me n t a t i o n d e p e n d e n t )G B / T 1 9 7 6 9 . 1 -2 0 0 5E ND es E VE NTVA R - I NP UT K : U I N T; ( , E v e n t i n d e x , m a x i mu m i s i mp l e me n t a t i o n d e p e n d e n t)E N D VARE C ee S TAT E S S TAR T;( , I n i t i a l S t a t e ,) T R I G GE RE D;( , I n t e r me d i a t e s t a t e a f t e r E l a r r i v e s) E 0 0 : 一 E OO ; E 0 1 : 一 E 01 ; E 0 2 : 一 E 02 ;E 03 : 一 E 0 3 ;E ND - S TAT E SE C - T RANS I TI ONS S T ART T O TR I G GE R E D : E l ; T RI GGE R E D TO E 0 0 : ( K二0 ) ; T RI G GE R E D T O E 01: ( K二1 ) ; T RI G GE R E D T O E 02: 二 ( K二2 ) ; T RI G GE R E D T O E 03: ( K=3 ) ; T RI G GE R E D T O S TAR T : 二 ( K3 ) ; E 0 0 TO S T ART : 1 ; E 01 TO S T ART : 二 1 ; E 02 TO S T ART : 1 ; E 03 TO S T ART : 1 ;E ND we T RANS I TI ONSE ND - F UNC TI O N- B L O C KF U N C T I O N - B L O C K E _ F _ T R I G ( , B o o l e a n f a l li n g e d g e d e t e c t i o n )E VE NT I NP UT E l WI T H Q I ; ( , E v e n t I n p u t)E ND se E VE N TE VE NT - OUTP UT E O ; ( E v e n t O u t p u t )E N D ee E V E N TVAR es I NP UT Q I : B O O L; ( B o o l e a n i n p u t f o r f a l l i n g e d g e d e t e c t i o n )E ND ee VARF BS D : E _ D _ F F# S W : E - S WI T C H ;E ND _ F B SE V E N T C O N N E C T I O N S E l TO D . C L K ; D. E O T O S W. EI; G B J T 1 9 7 6 9 . 1 -2 0 0 5 S W . E00 TO EO ;E ND - C ONNE C TI ONSDA TA - C O NNE C TI O NS QI TO D . D ; D . Q T O S W. G ;E N D es C O NNE C TI O NSE N D - F UNC T I ON - B L OC KF U N C T I O N B L O C K E ME R G E( Me r g e ( O R ) o f mu l t i p l e e v e n t s)EVENT I NPUT E l l ; ( * F i r s t in p u t e v e n t)E 1 2 ; ( S e c o n d i n p u t e v e n t ) E ND se E VE NTE VE NT - O UTP UT E O;( Ou t p u t E v e n t *)E ND E VENTE C S TA TE S S TA RT; ( I n i t i a l S t a t e ,) E O:( 二 I s s u e E O E v e n t) 一 E O;END S TATESE C T RA NS I T I ON S S TA RT TO E O : E l l; S TA RT TO E O : E 1 2; E O TO S TA RT : 1 ;E ND TR ANS I TI ONSE ND L F UNC T I ON _ B L OC KF U N C T I O N - B L O C K E _ N _ T A B L E ( G e n e r a t io n o f a f in i t e t r a in o f s e p a r a t e e v e n t s , t a b l e d r i v e n )EVE NT I NPUT E l WI TH D T, N;END EVE NTEVE NT OUTP UT E O 1 ;( N e v e n t s a t p e r io d s D T , s t a r t in g a t D T 1 a f t e r E l ) E 0 2 ; E 0 3 ;( E x t e n s i b l e)E ND 一 E VE NTVAR I NP UT D T: T I ME 仁 3 ; ( ,P e r i o d s b e t w e e n e v e n t s) N: UI N T; ( * N u m b e r o f e v e n t s t o g e n e r a t e( 3 i n t h is e x a m p l e ))E N D 一 VA RS E R VI C E E _ N _ T AB L E / RE S OUR C ES E Q U E N C E t y p ic a l- o p e r a t i o n E _ N_ TAB L E . E I ( D T, N)一 E _ N _ T AB L E . E OI ( ) 一 E _ N T AB L E . E 0 2 ) 一 E N TAB L E .G B / T 1 9 7 6 9 . 1 -2 0 0 5E 03 ) ;E ND - S E QUE NC EE ND ee S E RVI C EE ND- F UNC T I O N- B L O C K二 二: 二 二二竺 二二二 二二: 二 二 二二 二二二 二二二 二二二 巴巴 :巴 巴三 巴 巴 二二 二二 二二二 二二 二二二 二二二 二二巴 巴巴二 巴竺二 二二 二 二 : ;二 二 : 二二 二二二: 二二巴巴巴 巴巴二 巴二二二 巴二二 ;二二 二二 二 二: 二二 二 二二巴巴二二 巴士昌 二二 二 吕二 二二二 二二二 二二二巴 二 :巴巴 三巴 二二 二二: 二二二二 二留 二二巴 巴巴 巴 巴巴 巴巴巴 里写里二 绍 二 二 二二 二盆 二二留 巴 巴二 巴 巴巴 巴 巴二巴 二二; 二二二 ;二二 二忿 巴二 巴巴巴巴 巴F UN C T I O N B L O C K E _ P E R MI T ( ,P e r m i s s i v e p r o p a g a t i o n o f a n e v e n t, )E V E N T - I N P UT E l WI T H P E R MI T; ( * E v e n t in p u t)E ND es E VE NTE V E N T - O UT P UT E O; ( , E v e n t o u t p u t *)E ND ee E VE NTVAR - I NP UT P E RMI T: B OOL; E ND _ VARE C - S T ATE S S T A R T; ( I n i t i a l S t a t e, ) E O:( , I s s u e E O E v e n t,) 一 E O; N U L L ;( D o n o t h in g i f P E R MI T F AL S E * )E ND 一 S T ATE SE C TR ANS I T I ONS S T A R T T O E O: E l P E R MI T; E O TO S TAR T : 1 ; S T A R T T O N UL L: E I N O T P E R MI T; NUL L T O S TAR T : 1 ;E ND ee TR ANS I T I ONSE ND es F UNC T I ON B L OC KF U N C T I O N - B L O C K E _ R _ T R I G( B o o l e a n r i s in g e d g e d e t e c t io n )E VE NT se I NP UT E l WI T H Q I ;( , E v e n t I n p u t)E ND es E VE NTE VE NT - OUT P UT E O; ( * E v e n t O u t p u t *)E ND ee E VE NTVAR I NP UT Q I : B O O L ; ( B o o l e a n i n p u t f o r r is i n g e d g e d e t e c t i o n,)E ND - VARF BS D : E ee D ee F F ; S W :E _ S WI TC H ;E ND _ F B SE VE NT - C ONNE C T I O NS E l TO D . C L K ; D. E O T O S W. E l; S W. E OI T O E O ; G B J T 1 9 7 6 9 . 1 -2 0 0 5E ND - C O NNE C TI O NS ,D AT A- C ONNE C TI ONS QI T O D. D ; D. Q TO S W. G ;E ND es C ONNE C TI ONSE ND - F UNC TI ON - B L O C KF UNC T I ON B L O C K E - R E ND ( R e n d e z v o u s o f t wo e v e n t s )E VE NT I NP UT E l l ; ( , F i r s t E v e n t I n p u t二) E 1 2 ; ( S e c o n d E v e n t I n p u t ) R;( , R e s e t E v e n t)E ND ee E VE NTE VE NT ee OUTP UT E O; ( R e n d e z v o u s O u t p u t E v e n t )E ND ee E VE NTE C ee S TAT E S S TAR T;( * I n i t i a l S t a t e二) R;( * D o n o t h i n g if R a r r i v e s w h e n n o t a w a i t i n g r e n d e z v o u s ) R l ;( ,D o n o t h i n g i f E l l a r r i v e s a g a i n w h i l e a w a i t i n g E 1 2 ) E l l ;( * E l l h a s a r r i v e d , w a i t f o r E 1 2 o r R *) E O:( I s s u e r e n d e z v o u s e v e n t) 一 E O; E 1 2 ;( * E 1 2 h a s a r r i v e d , w a i t f o r E l l o r R ,) R 2 ;( ,D o n o t h i n g i f E 1 2 a r r i v e s a g a in w h i l e a w a i t i n g E l l)E ND se S TAT E SE C T RA NS I T I ONS S TAR T T O R : R ; R TO S TAR T : “ 1 ; S TA RT T O E l l: E l l; E l l TO S T AR T : R; S TAR T T O E 1 2: E 1 2; E 1 2 T O S T AR T : R; E l l T O Rl: E l l ; R1 T O E l l: 1 , E 1 2 T O R 2: E 1 2 ; R2 TO E 1 2: 1 ; E l l T O E O : E 1 2 ; E 1 2 T O E O : 二 E l l ; E O TO S TAR T : 1 ;E ND es T R ANS I TI ONSE ND - F UNC T I O N- B L O C KG B / T 1 9 7 6 9 . 1 -2 0 0 5F UN C T I O N - B L O C K E _ R E S T A R T( , G e n e r a t io n o f R e s t a r t E v e n t s )E VE NT - OUT P UT C OL D;( 二 C o l d Re s t a r t) WARM ;( Wa r m R e s t a r t)E N D we E VE NTS E RV I C E RE S OURC E / E _ R E S TAR TS E Q UE N C E c o l d - r e s t a r t 一 E _ R E S T A R T . C O L D ( ) ; E N D - S E Q U E N C ES E Q UE N C E w a r m - r e s t a r t 一 E _ R E S T A R T . WA R M( ) ; E N D - S E Q U E N C EEND S E RVI CEE ND - F UNC T I O N- B L O C KF UN C TI O N- B L O C K E _ RS( , E v e n t - d r i v e n b i s t a b l e , Re s e t d o mi n a n t)E VE NT ee I NP UTS ;( , S e t E v e n t,) R; ( ,R e s e t E v e n t二 )E NI ) 一 E VE NTE VE NT OUT P UT E O WI T H Q;( Ou t p u t E v e n t)E N D se E VE NTV A R - O U T P U T Q; B O O L ; ( * C u r r e n t O u t p u t S t a t e, )E N D ee VARE C ee S T A T E S Q O ; ( , Q i s F A L S E ) R E S E T : R E S E T一 E O ;( 二 R e s e t Q a n d i s s u e E O ) Q 1 ;( Q i s T R U E ) NU L L; ( ,N o a c t io n w h e n Q i s T R U E ) S E T : S E T 一 E O ;( , S e t Q a n d i s s u e E O ) NUL O ; ( No a c t i o n w h e n Q i s F AL S E ,)E ND S TAT E SE C - TR ANS I TI ONS Q O T O N U L O: R( S O R N O T S ); NUL O TO QO: 1 ; Q O T O S E T: S & N O T R; S E T TO Ql: 1 ; Ql T O N U L l: 二 SN O T R ; NUL 1 TO Ql: 1 ; Ql T O R E S E T: R( S O R N O T S ) ; RE S E T TO Q O : 1;E ND - TR ANS I T I ON SAL GOR I THM S E T I N S T :( S e t Q ) Q : T RUE ;E N D se AL G OR I THM G B T 1 9 7 6 9 . 1 -2 0 0 5AL GO RI THM R E S E T I N S T :( , Re s e t Q ,) Q: F A L S E;E N几 A L GO R I THME ND - F UNC T I O N- B L O C KF UNC TI O N- B L OC K E _ S E L E C T ( , S e l e c t i o n b e t w e e n t w o e v e n t s二)E VE N T ee I NP UT E I O WI T H G; ( I n p u t e v e n t , s e l e c t e d w h e n G 二0, ) E l l WI T H G; ( , I n p u t e v e n t , s e l e c t e d w h e n G二1, )E ND - E VE NTE V E N T - O U T P U T E O ; ( O u t p u t E v e n t, )E ND ee E VE NTVAR - I NP UT G: B O OL;( , S e l e c t E I O wh e n G=O , E l l wh e n G二1,)E ND _ VARE C - S TAT E S S T AR T;( , I n i t i a l S t a t e,) E O: 一 E O ; ( ,I s s u e O u t p u t E v e n t) E I O;( 二 E I O a r r i v e d ,) E l l;( E l l a r r i v e d ,)E N D 一 S T AT E SE C se TR ANS I TI O NS S TAR T T O E I O: E I O; S TAR T T O E l l: E l l; E I O T O E O : NOT G ; E I O T O S T AR T : 二 G ; E l l TO E O : G ; E l l TO S TA RT : NO T G ; E O T O S T AR T : 1 ;E ND - T R ANS I T I O NSE N D - F UNC TI ON - B L OC KF UN C T I O N - B L O C K E _ S P L I T( ,S p l i t a n e v e n t )EVENT I NPUT E l ; ( I n p u t e v e n t )END EVE NTE VE N T OUT P UT E O 1 ;( , F i r s t o u t p u t e v e n t * ) E 0 2 ; ( S e c o n d o u t p u t e v e n t , e t c , )E N I 一 E VE NTE C S TAT E S S T A R T ; ( 二I n i t i a l S t a t e *) E O: ( 二E x t e n s i b l e,)GB / T 1 9 7 6 9 . 1 - 2 0 0 5 一 E O I , ( * O u t p u t f ir s t e v e n t ) 一 E 0 2 ; ( * O u t p u t s e c o n d e v e n t , e t c . *)E ND ee S T ATE SE C - TR ANS I T I ONS S TART TO EO : El; E O TO S TAR T : 1 ;E ND - T RANS I TI O NSE ND- F UNC T I ON - B L OC KF UN C T I O N - B L O C K E _ S R ( 二E v e n t - d r i v e n b i s t a b le , S e t d o m i n a n t *)E VE NT 一 I NP UT S ;( , S e t E v e n t) R ; ( , R e s e t E v e n t *)E ND we E VE NTE VE NT es OUT P UT E O WI T H Q; ( , O u t p u t E v e n t )E ND ee E VE NTVA R - O U T P U T Q; B O O L ; ( ,C u r r e n t O u t p u t S t a t e,)E ND ee VARE C es S TAT E S Q O ;( Q i s F AL S E , ) R E S E T : RE S E T 一 E O ;( R e s e t Q a n d i s s u e E O ,) Q l ;( Q is T R U E 二) NUL 1;( 二 No a c t i o n wh e n Q i s T RUE ) S E T : S E T一 E O ;( 二S e t Q a n d i s s u e E O 二 ) NU L O;( ,N o a c t io n w h e n Q i s F A L S E ,)E ND - S TAT E SE C - T RANS I TI O NS Q O T O N U L O: R N O T S; NUL O TO QO: 1 ; Q O T O S E T: = S( R O R N O T R ) ; S E T TO Ql: 1 ; Ql T O N U L l: S( R O R N O T R ) ; NUL 1 TO Ql: 1 ; Ql T O R E S E T: 二RN O T S ; RE S E T TO QO: 1;E ND - TR ANS I TI ONSA L G O R I T HM S E T I N S T : ( S e t Q ) Q: T R U E;E ND _ AL G ORI THMAL GOR I THM RE S E T I N S T :( 二 R e s e t Q ,) Q: F A L S E;E N D - A L G O R I T HM GB T 1 9 7 6 9 . 1 -2 0 0 5E ND - F UNC TI ON - B L OC KF U N C T I O N - B L O C K E _ S WI T C H ( S w i t c h ( d e mu l t i p l e x ) a n e v e n t *)E V E N T I N P U T E l WI TH G; ( E v e n t I n p u t )E ND ee E VE NTE VE NT O UT P UT E O O ;( O u t p u t , s w i t c h e d f r o m E l w h e n G=0 ) E O I ; ( * O u t p u t , s w i t c h e d f r o m E l w h e n G=1 * )E ND E VENTVA R _ I N P UT G: B OOL;( , S wi t c h E I t o E I O wh e n G=0 , t o E l l w h e n G= I *)END VARE C S TA TE S S T AR T;( , I n i t i a l S t a t e *) G O :( I s s u e E 0 0 wh e n E l a r r i v e s wi t h G=0 二) 一 E O O ; G1 :( * I s s u e E OI wh e n E l a r r i v e s wi t h G= I *) 一 E 01 ;E N D we S T ATE SE C we T R ANS I T I O NS S T A R T T O G O: E l 乙 N O T G; G O TO S TAR T : 二 1 ; S T A R T T O G1: E l 乙 G; GI TO S TAR T : 二 1 ;E ND se TR ANS I T I ONSE ND - F UNC T I O N- B L OC K二巴 留巴 二F UNC T I ON - B L OC K E _ TA B L E ( 二 G e n e r a t i o n o f a f i n i t e t r a i n o f e v e n t s ,t a b l e d r i v e n 二)E VE NT I NP UT S T ART WI TH DT, N; S T OP ;( , C a n c e l二)E ND ee E VE NTE VE NT O UTP UT E O WI T H C V; ( 二N e v e n t s a t p e r i o d s D T , s t a r t in g a t D T 0 a f t e r S T A R T,)E N D es E VE NTVA R I NP UT D T: T I ME 仁 4 ; ( P e r i o d s b e t w e e n e v e n t s二 ) N: UI N T; ( N u m b e r o f e v e n t s t o g e n e r a t e)E N D es VARVAR - OUT P UT C V :UI N T;( , C u r r e n t e v e n t i n d e x , 0 . . N- 1 )E N D es VARFB S C T RL : E 一 TA B L E C TR L ;G B / T 1 9 7 6 9 . 1 -2 0 0 5 DL Y : E - D EL AY ;E ND _ F B SE VE NT es C ONNE C T I ON S S TAR T T O C TRL . I NI T ; C TR L . C L KO T O DL Y. S T ART ; DL Y . E O T O E O ; DL Y . E O T O C T RL . C L K ; S TOP T O DL Y. S T OP ;E ND ee C ONNE C T I ONSDAT A C ONNE C TI O NS D T TO C TR L . D T ; N TO C TR L . N ; C TR L . D TO TO D L Y . D T ; C T R L . C V TO C V ;E N D we C O NNE C T I ONSE ND - F UNC T I O N- B L O C KF UN C T I O N - B L O C K E _ T A B L 凡 C T R L( C o n t r o l f o r E _ T A B L E , )EVE NT I NP UT I NI T WI TH D T, N ; C L K ;E ND es E VE NTE VE NTee OUT P UT C L KO WI TH D T O, C V ;END EVENTVAR - I NP UT D T: T I ME 4 ; ( A r r a y l e n g t h i s i mp l e m e n t a t i o n d e p e n d e n t, ) N : U I N T ;( 二A c t u a l n u m b e r o f t i m e s t e p s二 )END VARVAR - OUT P UT D T O : T I ME;( * C u r r e n t d e la y i n t e r v a l ) C V : UI NT ;( , C u r r e n t e v e n t i n d e x , 0 . . N - 1 )E ND se VARE C S TATES S TAR T; I NI T O :I NI T ; I NI T1 : 一 C l - KO ; C L OC KE D; S TE P :S TE P一 C l - KO ;E ND S T ATE SE C TR ANS I T I ONS S TAR T TO I NI T O : I NI T ; I NI T O TO I N I TI: NO; G B / T 1 9 7 6 9 . 1 -2 0 0 5 I N I T O T O S T A R T: N=O; ( 二D o n t r u n i f N=0, ) I NI T1 T O S TAR T : 1; S TA RT T O C L O C KE D : 二 C L K ; C L O C K E D T O S T E P : C V MI N( 3 , N - 1 ) ; ( 二C V m u s t n o t e x c e e d D T a r r a y s i z e, ) C L OC KE D T O S TAR T : 二 C V MI N( 3 , N - 1 ) ; S TEP TO S TART : 1 ;E ND - T RANS I TI ONSAL GOR I THM S T E P I N S T: C V : C V+l ; D T O : D T C V ;E N D L AL GO RI T HMAL GO RI THM I NI T I N S T: C V : 0; D T O: D T 0 ;E ND - AL GO RI THME ND _ F UNC T I O N- B L O C KF UNC T I ON - B L O C K E _ TR AI N ( , Ge n e r a t i o n o f a f i n i t e t r a i n o f e v e n t s *)E VE NT I NP UT S T AR T WI TH DT, N;S TO P ;E ND ee E VE NTE VE NT OUT P UT E O WI T H C V ; ( , N e v e n t s a t p e r i o d D T, s t a r t i n g a t D T a f t e r S T A R T)END EVENTVAR I NP UT D T: T I ME ; ( P e r i o d b e t w e e n e v e n t s) N: U I N T ; ( ,N u m b e r o f e v e n t s t o g e n e r a t e )END VARVAR OUT P UT C V : UI NT ;( * E O i n d e x ( 0 . 。 N- 1 ) ,)END VARF BS C TR : E C T U ; GATE :E_ S W I TCH ; DL Y : E - D E L AY ;E N D se F B SE VE NT C ONNE C TI ONS S TA RT T O C T R . R ; S TO P T O DL Y. S T OP ; DL Y. E O T O E O ; DL Y. EO TO CTR. CU ; C T R . C UO TO GAT E . E l;G B / T 1 9 7 6 9 . 1 -2 0 0 5 C TR . RO T O GAT E . E l; GATE . E OO T O DL Y. S TA R T ;E N D _ C O NNE C T I ONSD AT A- C ONNE C TI O NS DT T O DL Y. DT ; N T O C TR . P V ; C TR . Q T O GAT E . G , C TR . C V T O C V ;E N D es C ON NE C TI ONSE ND F UNC T I O N B L O C KF UNC T I ON - B L O C K F B _ AD D _ I NT ( , I N T A d d i t i o n ,)E VE NT we I NP U T R E Q WI TH QI , I N1 ,I N2;E ND ee E VE NTE VE NT - O UTP UT C N F WI T H Q O, S T A T U S , O U T;E ND 一 E VE NTVAR ee I NP UT Q I : B O O L;( ,E v e n t Q u a l i f ie r ) I N 1: I N T ;( , A u g e n d , ) I N2 : I NT ;( , Ad d e n d *)END VARVAR - OUTP UT Q O: B O O L;( O u t p u t Q u a l if i e r) S T A T U S: U I N T ; ( * O p e r a t io n S t a t u s, ) OUT : I NT ;( , S u m 二)E N D es VARVAR R E S UL T : DI NT ;E N D es VARE C es S TATE S S TAR T ; R E Q : R E Q 一 C NF ;E N D - S T ATE SE C T R ANS I TI ONS S TAR T TO R E Q : RE Q ; R E Q TO S T AR T : 1;E N D _ T RANS I TI O NSAL GOR I THM RE Q I N S T : Q O: Q I ; I F QI THE N G B J T 1 9 7 6 9 . 1 -2 0 0 5 S TAT US : 0; R E S UL T : 二 I NT _ TO _ D I N TGNI ) I NT _ T O _ D I NT( I N2 ); I F ( RE S UL T 3 2 7 6 7 ) OR ( RE S UL T - 3 2 7 6 8 ) THE N Q O F A L S E; S TATUS 3 ; I F ( R E S UL T 3 2 7 6 7 ) THE N OUT : 3 2 7 6 7; E L S E OUT : - 3 2 7 6 8; E ND I F ; E L S E O UT : RE S UL T ; E ND es I F ; E L S E S T AT US 1 ; E ND - I F ;E ND _ AL G OR I THME ND - F UNC T I ON- B L O C KF UNC T I ON - B L OC K I NT E G RAL _ RE A LE VE NT ee I NP UT I NI T : I NI T E VE NT WI TH C YC L E ; E X W I TH HOL D, X I N ;END EVENTE VE NT - OUTP UT I N I T O : I N I T _ E V E N T WI T H X O U T; E X O WI TH X OUT ;E ND ee E VE NTVAR I NP UT HO L D : B O O L; ( 0 R u n , 1 H o l d) X I N : R E A L; ( 二I n t e g r a n d ) C Y C L E: T I ME; ( 二S a mp l i n g p e r i o d)E ND es VARVAR - OUTP UT X O U T : R E A L; ( ,I n t e g r a t e d o u t p u t)E ND ee VARVAR DT : RE AL ;E ND VARE C S T ATE S S T A R T ;( , E C I n i t ia l s t a t e ) I N I T: I N I T一 I N I T O;( , E C S t a t e w it h A l g o r it h m a n d E C A c t i o n ) MA I N:MAI N 一 E X O;E ND we S TAT E SE C ee T RANS I T I ON S S T A R T T O I N I T : I N I T ; ( * A n E C T r a n s it io n) S T ART TO MAI N : E X; I NI T T O S T AR T : I ; MAI N TO S T AR T : 1 ;G B / T 1 9 7 6 9 . 1 -2 0 0 5E ND es T RANS I TI ONSAL GO RI THM I NI T I N S T: XOUT : 0 . 0; DT : T I ME - TO - R E AL ( C YC L E );E ND- AL GOR I THMAL GO RI THM MAI N I N S T: I F NOT HOL D T HE N X OUT : X OUT X I N , D T ; E ND es I F ;E ND- AL GOR I THME ND - F UN C TI ON- B L OC KA D A P T E R L D _ UN L D( L O A D / U N L O A D A d a p t e r I n t e r f a c e )E VE NT 一 I N P UT UNL D ;( UNL OAD R e q u e s t)E ND 一 E VE NTE VE NT ee OUT P UT L D WI T H WO, WK P C ; ( * L O A D R e q u e s t) C NF WI TH WO, WKP C;( UNL D C o n f i r m ,)E ND - E VE NTVAR OUT P UT WO: B O O L ;( Wo r k p i e c e p r e s e n t,) WK P C: C O L O R ;( Wo r k p i e c e C o l o r)E ND 一 VA RS E R VI C E P L UG/ S O C KE TS E Q UE N C E n o r m a l- o p e r a t i o n P L UG . L D( W O, WKP C)一 S OC KE T. L D( WO, WKP C ) ; S OC K E T. UNL D( ) 一 P L UG. UNL D( ) ; P L UG . C NF ( )一 S OC KE T . C NF ( ) ;E ND - S E QUE NC EE ND we S E R VI C EE ND ee ADAP T E RF U N C T I O N - B L O C K L O O P - D I S P L A Y ( * C o n t r o l L o o p O p e r a t o r I n t e r f a c e, )E VE NT - I NP UT I N I T WI T H P A R A MS ;( ,D i s p l a y I n i t i a l i z a t i o n 二 ) R S P WI T H P V, X O U T;( * R e s p o n s e w i t h d a t a)E ND es E VE NTE VE NT - OUTP UT I N I TO;( I n i t i a l i z a t i o n C o n f i r m ,) I N D WI T H S P ;( D i s p l a y Up d a t e I n d ic a t i o n )E N D ee E VE NT G B / T 1 9 7 6 9 . 1 -2 0 0 5VAR I NP UT P A R A MS : A N Y ; ( D i s p la y P a r a m e t e r s) P V: RE AL ;( , P r o c e s s Va r i a b l e v a l u e,) X O U T: R E AL; ( P I O u t p u t v a l u e二 )E ND 一 VARV AR O UT P UT S P : A N Y ;( * R e c e i v e d d a t a , e x t e n s i b l e, )END VARS E RVI C E P I - DI S P L AY/ AP P L I C ATI O NS E QUE N C E n o r ma l - e s t a b l i s h me n t A P P L I C AT I ON. I N I T( P ARA MS )一 A P P L I C ATI ON. I NI T O( ) ;E N D L S E QUE NC ES E Q U E N C E n o r ma l- o p e r a t io n 一 AP P L I C AT I ON. I N D( S P ) ; A P P L I C AT I ON. R S P ( P V, X OUT);E ND - S E QUE N C EE ND es S E R VI C EE ND - F UNC T I ON- B L OC KF U N C T I O N B L O C K MA N A G E R ( Ma n a g e m e n t S e r v ic e I n t e r f a c e二 )E VE NT - I NP UT I NI T WI TH Q I ,P AR AMS ; ( S e r v i c e I n i t i a l i z a t i o n ,) R E Q WI T H Q I , C MD , O B J E C T ; ( , S e r v i c e R e q u e s t二 )E N D es E VE NTE V E NT O UT P UT I NI T O WI T H Q O, S T A T U S ; ( ,I n it i a l iz a t i o n C o n f i r m 二) C N F WI T H Q O, S T A T U S , R E S U L T ; ( , S e r v i c e C o n f i r ma t i o n )E ND 一 E VE NTVAR I NPUT Q 1: B O O L ; ( * E v e n t I n p u t Q u a l i f i e r, ) P A RAMS : WS T R I NG;( * S e r v i c e P a r a me t e r s) C MD : D I N T; ( E n u m e r a t e d C o m m a n d ) O B J E C T: B Y T E 5 1 2 ; ( 二C o m m a n d O b j e c t)E ND se VARVAR - OUTP UT Q O : B O O L ; ( E v e n t O u t p u t Q u a l i f ie r ) S T ATUS:UI N T;( , S e r v i c e S t a t u s二) R E S U L T : B Y T E 5 1 2 ; ( R e s u l t O b j e c t )END VARS E RV I C E MAN AGE R/ r e s o u r c eS E Q U E N C E n o r m a l- e s t a b l i s h m e n t MA N A G E R . I N I T + ( P A R A MS ) 一 r e s o u r c e . in i t Ma n a g e m e n t ( ) 一 MA N A G E R . I N I T O +( ) ;E ND - S E QUE NC EG B / T 1 9 7 6 9 . 1 -2 0 0 5S E QUE N C E u n s u c c e s s f u l - e s t a b l i s h me n t MA N A G E R . I N I T +( P A R A MS ) 一 r e s o u r c e . i n i t Ma n a g e m e n t ( P A R A MS ) 一 MAN AGE R . I NI T O- ( S TAT US ) ;E ND - S E QUE NC ES E Q U E N C E n o r m a l- c o m ma n d - s e q u e n c e MA N A G E R . R E Q ( C MD , O B J E C T)一 r e s o u r c e . p e r f o r mC o m m a n d ( C MD , O B J E C T)一 MANA GE R . C NF + ( S T ATUS , R E S UL T) ;E ND _ S E QUE NC ES E QUE NC E c o m ma n d - e r r o r MA N A G E R . R E Q ( C MD , O B J E C T)一 r e s o u r c e . p e r f o r m C o m m a n d ( C MD , O B J E C T)一 MANAG E R . I ND - ( S TA TUS ) ;E ND - S E QUE NC ES E Q U E N C E a p p l i c a t i o n - i n i t i a t e d - t e r m i n a t i o n MA N A G E R . N I T - ( ) 一 r e s o u r c e . t e r m i n a t e S e r v i c e ( ) 一 MA N A G E R . I N I T O - ( S T A T U S ) ;E ND - S E QUE NC ES E QUE NC E r e s o u r c e _ i n i t i a t e d _ t e r mi n a t i o n r e s o u r c e . s e r v i c e T e r m i n a t e d ( S T A T U S ) 一 MA N A G E R . I N I T O - ( S T A T U S ) ;E ND - S E QUE NC EE ND we S E R VI C EE ND - F UNC T I ON - B L OC KF UNC T I ON - B L OC K P I - R E ALE VE NT es I NP UT I NI T ; E X W I TH HOL D, P V, S P, KP, KI , C YC L E ;E ND - E VE NTE VE NT - O UT P UT I NI T O WI TH X OUT ; E X O WI TH X OUT ;E ND es E VE NTVAR - I NP UT HOL D: B O OL;( * Ho l d wh e n TR UE ,) P V :R E AL ;( P r o c e s s v a r i a b l e ,) S P : RE AL .;( , S e t p o i n t) K P: R E AL;( * P r o p o r t i o n a li t y c o n s t a n t ) K I : R E A L ;( I n t e g r a l c o n s t a n t , 1 / s e c ) C Y C L E : T I ME ;( S a mp l i n g p e r io d )END VARVAR - O UT P UT X OUT : R E AL; E ND _ V ARF BS C AL C : P I D _ C A L C; I N T E G R A L T E R M : I N T E G R A L - R E A L ;E N D es F B S G B / T 1 9 7 6 9 . 1 -2 0 0 5E VE NT - C ONNE C TI ONS I NI TT O C AL C . I NI T; E X TO C AL C . P R E; C A L C . P OS T O TO E XO; I NTE G R AL - TE RM. I NI T O TO I NI TO; C AL C . I N I TO T O I NT E GR AL - T E R M. I NI T; C AL C . P R E O TO I NTE GR AL - TE RM. E X; I NTE GR AL - T E R M. E X O TO C AL C . P OS T;E ND L C ON NE C T I ON SD ATA - C O NNE C TI O NS HOL D TO I N TE GR AL _ TE R M. HOL D; P V TO C AL C . P V; S P T O C AL C . S P; KP T O C AL C . KP; KI TO C A L C . KI ; C YC L E TO I NTE GR AL - T E RM. C Y C L E; C AL C . XO UT TO X OUT; C AL C . E T E R M TO I NT E GRA L - TE RM. XI N; I NT E G RAL _ TE R M. XO UT TO C AL C . I TE RM; 0 . 0 T O C AL C . TD; 0 . 0 T O C AL C . D TE R M ;E ND L C ONNE C TI ONSE ND es F UNC T I O N B L O C KS U B A P P L I C A T I O N P I _ R E A L _ A P P L( A S u b a p p l i c a t io n)E VE NT ee I NP UT I NI T ; E X ;E ND se E VE NTE VE NT - OUTP UT I NI TO ; E X O ;END EVENTV AR I NP UT HOL D: B OOL ;( , Ho l d wh e n TR UE ) P V : R E A L; ( * P r o c e s s v a r i a b le) S P: R E A L; ( * S e t p o in t) K P: R E A L; ( * P r o p o r t io n a l g a i n,) K I : R E A L ; ( I n t e g r a l g a i n S a m p l e p e r i o d / R e s e t t ime) X 0: R E A L; ( ,I n i t i a l in t e g r a t o r o u t p u t )E ND es VARV A R - O U T P U T X O U T : R E A L ; E N D _ V A RFB SG B / T 1 9 7 6 9 . 1 -2 0 0 5 E T E R M : F B S U B R E A L ; I NTE GRA TOR : AC C UM_ RE A L ; C AL C : P I _ C AL C ;E N D F B SE V E NT ee C O NNE C T I ONS I NI T TO I NT E GR AT OR . I NI T ; I NT E GR AT OR . I NI TO TO I NI T O; E X T O E T E RM. RE Q ; E T E RM. C NF T O I NTE GR ATOR . E X ; I NT E GR AT OR. E XO T O C AL C . E X ; C AL C . E XO T O E XO ;E N D - C ON NE C TI ONSD ATA C ONNE C TI ONS X O TO I NTE G RAT OR . X O; HOL D TO I N TE G RAT OR . HOL D; P V T O E TE R M. I N1; S P T O E TE RM. I N2; KP T O C AL C . KP ; KI TO C AL C . KI; E T E RM. OUT TO I NT E GR AT OR . X I N ; E TE RM. OUT TO C AL C . E TE R M ; I N T E G R A 士 O R . X O U T T O C A L C . I T E R M; C AL C . X OUT T O X OUT ; 1 T O E TE R M. QI;E ND = - C ONNE C TI ONSE ND _ S UB AP P L I C AT I ONF UNC T I ON - B L O C K P I D _ C AL CE VE NT ee I NP UT I NI T ; P R E WI T H P V, S P , K P , K I , T D ; P OS T W I TH I T E RM , D T E RM ;E N D es E VE NTE VE NT- OUTP UT I NI TO WI TH XOUT ; P R E O WI TH E T E RM ; P OS TO WI TH X OUT ;E N D es E VE NTV A R I N P UT P V : R E AL;( P r o c e s s v a r i a b le, ) S P: R E A L;( * S e t p o in t) K P: R E A L;( 二P r o p o r t i o n a l i t y c o n s t a n t二) K I: R E AL;( , I n t e g r a t io n c o n s t a n t , I J s e c,) TD : RE AL ;( * D e r i v a t i v e t i me , s e c二) G B / T 1 9 7 6 9 . 1 -2 0 0 5 I T E R M : R E A L; ( I n t e g r a l o f ( E T E R M) d t ) D T E R M : R E A L;( d ( E T E R M) / d t)END VARVAR OUTP UT E T E R M : R E AL ; X OUT: R E AL;E N D es VARE C - S TAT E S S TA RT;( * I n i t i a l S t a t e 二) I NI T , I NI T 一 I NI T O;( 二 I n i t i a l i z a t i o n) P R E ; P R E一 P R E O;( P r e - i n t e g r a t i o n c a l c u l a t i o n s ) P O S T; P O S T一 P O S T O; ( P o s t - i n t e g r a t io n c a l c u l a t i o n s)E N D se S T AT E SE C es TR ANS I TI ONS S TA RT T O I NI T : I NI T; I NI T T O S T AR T : 1 ; S TA RT T O P RE : P RE ; P R E TO S TAR T : 1 ; S TA RT TO P OS T : P O S T; P O S T T O S TA RT : 1 ;E ND T R ANS I TI O NSAL GO RI THM I NI T I N S T : XO UT : 0 . 0;E ND es A L GO RI THMAL GO R I THM P R E I N S T: E TE R M : S P一 P V ;E ND es A L GO RI THMAL GO RI THM P O S T I N S T: XO UT : ( E T E RM KI ,I T E R M TD * D TE RM) * K P ;E ND AL GO R I THME ND L F UNC T I O N_ B L OC K二二二 二: 二二二 二二二 二二 二二 二二 二二 二: 二二二二二 二二二二 二二 二二二 二二巴: 二 二二 二 二二 二二二 二 二二二: 二二二二 二二 二二巴二 二二 二二巴 二二 二二二 二二 二;二 二二二 二:二 巴巴巴巴 巴二二二: 二;二二盆 二巴 巴巴巴巴 二二二 二二二 二二 二二 二 二二 二:二二二 竺竺 二二 二 二二二 二二二 二二二 二二二 二: 二二二二巴二二 二二二 二 二二 二 二二二二 二二巴之 二二二 二巴 巴二二二二 二二F UNC T I O N B L OC K P UB L I S H ( D a t a P u b l i c a t i o n S e r v i c e I n t e r f a c e)E VE NT I NP UT I NI T WI TH QI ,P AR AMS ;( S e r v i c e I n i t i a l i z a t i o n ) R E Q WI T H Q I , S D _ I , SD-m;( S e r v i c e R e q u e s t )END EVENTE VE NT OUT P UT I NI TO WI T H QO,S TAT US ;( * I n i t i a l i z a t i o n C o n f i r m 二) C NF WI TH QO, S T ATUS ;( S e r v i c e C o n f i r ma t i o n )END E VENTVAR I NP UT Q I : B O O L;( E v e n t I n p u t Q u a l i f i e r )G B / T 1 9 7 6 9 . 1 -2 0 0 5 P ARA MS:ANY ;( * S e r v i c e P a r a me t e r s) S D _ 1: ANY ;( * D a t a t o s e n d , e x t e n s i b l e *) S D - m :ANY ;( , L a s t d a t a i t e m t o s e n d ,)E ND _ VA RVAR O UT P UT Q O : B O O L;( E v e n t O u t p u t Q u a l i f i e r ) S TAT US : ANY ;( * S e r v i c e S t a t u s,)E ND ee VARS E R VI C E P UB L I S H/ S UB S C R I B E ( D a t a P u b l i c a t i o n S e r v i c e ,)S E Q UE N C E n o r ma l- e s t a b l i s h m e n t P U B L I S H . I N I T 十( P A R A MS ) 一 P U B L I S H. I N I T O 十( ); S UB S C R I B E . I NI T十( P ARAMS )一 S UB S C R I B E . I NI T O+ ( );E ND - S E QUE NC ES E Q U E N C E p u b l i s h e r r e j e c t e d e s t a b l i s h m e n t P UB L I S H. I NI T+ ( P AR AMS )一 P UB L I S H. I NI T O- ( S TAT US );E ND =- S E QUE NC ES E Q U E N C E s u b s c r i b e r - r e j e c t e d - e s t a b l i s h m e n t S UB S C R I B E . I NI T十( P AR AMS ) 一 S UB S C RI B E . I NI TO - ( S T ATUS );E ND _ S E Q UE NC ES E QUE NC E n o r ma l - d a t a - t r a n s f e r P U B L I S H. R E Q+( S D _ l , , S D _ m) 一 S U B S C R I B E . I N D + ( R D _ 1 , , R D _ m); 一 P UB L I S H. C NF + ( ); S UB S C R I B E . R S P + ( );E ND - S E QUE NC ES E Q U E N C E d a t a - t r a n s f e r - e r r o r P UB L I S H. RE Q+ ( S D _ 1 , 。 二, S D _ m)一 S UB S C R I B E . I ND - ( S TAT US ); 一 P UB L I S H. C NF +( );END-SEQUENCES E Q U E N C E p u b l i s h e r - i n i t i a t e 走d i s c o n n e c t P UB L I S H. I NI T - ( )一 S UB S C RI B E . I N I TO - ( S T ATUS ); 一 P UB L I S H. I NI T O - ( S TA TUS ) ;E ND _ S E QUE NC ES E Q U E N C E s u b s c r i b e r _ i n it i a t e d _ d i s c o n n e c t S U B S C R I B E . I N I T - ( ) 一 S UB S C R I B E . I N I T O - ( S T A T U S );E ND L S E QUE N C ES E Q U E N C E system-publisher-disconnect 一 P UB L I S H. I NI TO- ( S T AT US ) ; 一 S UB S C R I B E . I NI TO - ( S TAT US );E ND - S E Q UE N C ES E Q U E N C E s y s t e m - s u b s c r i b e r - d is c o n n e c t 一 S UB S C R I B E . I NI TO - ( S T ATUS );E N D _ S E QUE NC E G B / T 1 9 7 6 9 . 1 -2 0 0 5END S E RVI CEE N D - F UN C TI ON- B L OC KF UNC TI O N - B L OC K R E QUE S T E R ( ,S e r v i c e R e q u e s t e r I n t e r f a c e *)E VE NT se I NP UT I NI T WI TH QI , P AR AMS ;( S e r v i c e I n i t i a l i z a t i o n ,) R E Q WI T H Q I , S D = _ 1 , SD-m;( S e r v i c e R e q u e s t, )E N D we E VE NTE VE NT - OUTP UT I NI TO WI TH QO, S TA TUS ;( I n i t i a l i z a t i o n C o n f i r m ) C N F WI T H Q O, S T A T U S , R D - 1 , R D - n ; ( S e r v i c e C o n f i r m a t io n,)E N D we E VE NTVAR I NP UT Q 1 : B O O L;( E v e n t I n p u t Q u a l i f i e r ) P AR AMS: ANY ;( 二 S e r v i c e P a r a me t e r s二) S D _ 1: ANY ;( * Da t a t o t r a n s f e r , e x t e n s i b l e) S D - M : ANY ;( 二 L a s t d a t a i t e m t o t r a n s f e r,)E ND es VA RVAR O UT P UT Q O: B O O L;( E v e n t O u t p u t Q u a l i f i e r ) S T ATUS:AN Y ; ( * S e r v i c e S t a t u s *) R D - 1: ANY ;( , R e c e i v e d d a t a , e x t e n s i b l e二) R I ) - n: ANY ;( , L a s t r e c e i v e d d a t a i t e m )E ND we VA RS E R V I C E R E Q U E S T E R / R E S O U R C ES E QUE NC E n o r ma l - e s t a b l i s h me n t R E Q UE S T E R . I N I T +( P A R A MS ) 一 R E Q U E S T E R . I N I T O +( ) ;E ND - S E QUE NC ES E QUE NC E u n s u c c e s s f u l - e s t a b l i s h me n t R E Q UE S T E R . I NI T + ( P A R A MS ) 一 R E Q U E S T E R . I N I T O - ( S T A T US );E ND _ S E QUE NC ES E QUE NC E n o r ma l - d a t a - t r a n s f e r R E Q U E S T E R . R E Q+( S D _ 1 , , S D _ m) 一 R E Q U E S T E R . C N F +( R D _ 1 , , R D _ n );E ND - S E Q UE N C ES E QUE NC E d a t a - t r a n s f e r - e r r o r R E Q U E S T E R . R E Q+ ( S D - 1 , 一 ,
评论
0/150
提交评论