一种WorldFIP分布式智能控制网络的调度方法

文档序号:7701819阅读:211来源:国知局
专利名称:一种WorldFIP分布式智能控制网络的调度方法
技术领域
本发明属于自动控制技术领域,尤其涉及一种WorldFIP分布式智能控制 网络的调度方法。
背景技术
近年来,现场总线技术、分布式智能网络在过程控制领域中得到了曰益广泛的应用。随着被控过程的不断复杂化和容量的不断扩大,对控制系统的可靠性有了更高的、更苛刻的要求。绝大部分现场总线技术中,现场级无冗 余这一事实成为现场总线技术应用中限制控制系统现场级可靠性提高的主要障碍。WorldFIP (World Factory Instrumentation Protocol)是国际现场总线标准之一,是一种面向工业控制的现场总线,其独特的双总线冗余体系是其他类型的现场总线无法比拟的,具有前瞻性和历史性的意义,使其非常适用于高可靠性过程控制领域,也为上述问题提供了理想的解决方案,在过程控制领域得到了越来越广泛的重视和应用。WorldFIP现场总线技术在中国岭奥核电厂、军粮城电厂等电站控制系统中都得到了非常成功的应用,显现出了强劲的发展趋势。目前,国际上基于WorldFIP技术开发出的产品和系统在层次上仍处于控制级以上,还未实现基于现场智能节点的全分布式智能控制网络。基于现场智能节点和现场级通信,功能块和功能块应用是分布式智能控制网络实现分布式过程控制的一种最重要的方式,是分布式智能控制网络实现的核心问题。发明内容本发明的目的在于,针对上述问题提出一种WorldFIP分布式智能控制网 络的调度方法,用以实现基于现场智能节点的全分布式智能控制网络。该方法 以功能块应用模型为基础,功能块应用模型包括现场级智能节点中的数据分区 模型和网络通信中的协议用户层数据模型。本发明的技术方案是, 一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述方法包括下列步骤步骤l:在控制系统启动运行前,在链路调度器上建立对应于各个基本 节点消费变量的生产变量;步骤2:将强制数据CD写入到所述生产变量中;步骤3:将变量交换的调度条目添加到总线调度表中;步骤4:当网络启动以后,按照调度表规定的时序,在网络上产生各个 基本节点的变量交换;步骤5:基本节点在从消费变量中收到强制数据CD后,执行指令区指 针当前指向的当前指令,执行完毕后指向下一条指令。所述基本节点包括功能块,所述功能块划分成4个区,分别是指令区、 输入端区、输出端区、内含参数区;其中,所述指令区用于存储所有指令;所 述输入端区用于存储所有输入端数据;所述输出端区用于存储所有输出端数 据;所述内含参数区用于存储所有内含参数。所述指令包括功能块指令,其结构中包含5个字段,分别是指令标志、功 能块类型、功能块输入端数据在该功能块输入端区内的起点索引值、功能块输 出端数据在该功能块输出端区内的起点索引值和功能块的内含参数在该功能 块内含参数区内的起点字节偏移量。所述指令包括连接指令,其结构中包含4个字段,分别是连接指令标志、 起点功能块在该功能块输出端区内的起点索引值、终点功能块所在的基本节点的地址和终点功能块在该功能块输入端区内的起点索引值。所述输入端区和输出端区都使用4个字节作为数据存储单元。 所述内含参数使用字节作为数据存储单元,多个参数之间相邻排列,以偏移量和数据长度来识别各个参数。所述功能块指令和连接指令在指令区内是等量混合存储的。 所述当前指令为功能块指令时,所述步骤5包括下列步骤 步骤51:基本节点按功能块指令中该功能块输入端数据在该功能块输入端区内的起点索引值,从输入端区中取出所有输入端数据;步骤52:基本节点按功能块指令中该功能块的内含参数在该功能块内含参数区内的起点字节偏移量,从内含参数区取出的内含参数;步骤53:基本节点按功能块算法,使用输入端数据和内含参数计算得到输出端数据;步骤54:基本节点按功能块输出端数据在该功能块输出端区内的起点索引 值,将输出端数据写入到功能块输出端区中;步骤55:将功能块指令区的指令指针向后移动,指向功能块指令区的下一 条指令。所述当前指令为本地连接指令时,所述步骤5包括下列步骤步骤51,在连接指令中,根据起点功能块在该功能块输出端区内的起点索引值,获取起点功能块输出端区的输出端数据。步骤52':根据终点功能块在该功能块输入端区内的起点索引值,将起点功能块输出端区的输出端数据复制到终点功能块输入端区中;步骤53':将功能块指令区的指令指针向后移动,指向功能块指令区的下一条指令。所述当前指令为远程连接指令时,所述步骤5包括下列步骤步骤51":在连接指令中,根据起点功能块在其基本节点输出端区内的起点索引值,获取起点功能块输出端区的输出端数据;步骤52":将起点功能块输出端区的输出端数据写入到一个报文中,并打 包成报文帧;步骤53":将功能块指令区的指令指针向后移动,指向功能块指令区的下 一条指令;步骤54":网络调度节点向起点功能块的基本节点发送报文问询帧; 步骤55":起点功能块的基本节点将报文帧发送到网络上; 步骤56":终点功能块的基本节点收到报文帧后,将报文帧拆包,读取 报文帧中的报文,然后按报文中指明的终点功能块输入端区索引,将float型数 据写入到终点功能块输入端区中。所述报文帧中报文的格式包括三个字段,分别是分别是目的识别码、 输入端索引和float型数据;其中,目的识别码占用l个字节,输入端索引占用 2个字节,float型数据占用4个字节;输入端索引字段用于存储远程连接的终 点功能块在其基本结点的输入端索引;float型数据采用浮点类型的数据格 式,用于存储起点功能块在其基本节点的输出端区的输出端数据。 所述报文帧采用的是目的地址寻址的方式。本发明的效果在于,通过本发明提出一种WorldFIP分布式智能控制网络 的调度方法,有效地解决了现场级智能控制网络中基于功能块和功能块应用进 程的全分布式智能系统的设计和实现问题,进而实现高可靠性的实时全分布式 智能控制。


图l是基于强制数据的基本节点"被动式"调度示意图; 图2是基本节点中的功能块指令结构图; 图3是基本节点中的连接指令结构图;图4是基本节点功能块分区结构图;图5是单任务功能模块本地连接与调度示意图;其中,(a)为单任务功 能模块本地连接示意图,(b)为单任务功能模块本地连接调度示意图; 图6是WorldFIP报文帧格式; 图7是WorldFIP通信协议中的用户层数据模型;图8是单任务功能模块远程连接与调度示意图;其中,(a)为单任务功 能模块远程连接示意图,(b)为单任务功能模块远程连接调度示意图;图9是多任务功能模块本地连接与调度示意图;其中,(a)为多任务功 能模块本地连接示意图,(b)为多任务功能模块本地连接调度示意图;图IO是多任务功能模块远程连接与调度示意图;其中,(a)为多任务功 能模块远程连接示意图,(b)为多任务功能模块远程连接调度示意图。
具体实施方式
下面结合附图,对优选实施例作详细说明。应该强调的是,下述说明仅 仅是示例性的,而不是为了限制本发明的范围及其应用。在本发明所设计的应用进程调度算法中,借鉴了 FF现场总线功能块进 程调度算法,考虑到WorldFIP与FF现场总线在通信模型上的差异,采用 完全"被动式"的执行模式,区别于FF现场总线远程连接被动式和本地连 接主动式的调度算法。在该模式下,从链路调度器到基本节点间,只有强 制数据CD在传递,该CD数据可定义为一常值,基本节点的指令执行是全 部受链路调度器调度的,只有在收到来自链路调度器的强制数据CD后才能 执行由指令指针指示的当前指令,在执行完当前指令后等待再次被调度; 而在各个基本节点间传递的数据则是功能块应用进程内各个功能块间远程 或本地需交换的数据,不为常值。功能块执行是可重复的,每次重复为一 个宏周期,基本智能节点内的任何控制指令的执行都在宏周期内完全受调度的。
这种基于强制数据的"被动式"调度,其算法可描述为 网络链路调度器在调度表确定的时间点上以周期性变量交换的方式向
基本智能节点发送强制数据CD,基本节点收到该CD后,执行当前指令。
具体实现为-
步骤l:在控制系统启动运行前,在链路调度器上建立对应于各个基本 节点消费变量的生产变量。
图1是基于强制数据的基本节点"被动式"调度示意图。图1中,基本
节点N1的一个消费变量为0x0501,基本节点N2的一个消费变量为0x0502, 则在链路调度器上建立两个生产变量0x0501、 0x0502,分别对应两个基本 节点的消费变量。
本发明中的基本节点,是一种现场智能节点,包括功能块。功能块划分成 4个区,分别是指令区、输入端区、输出端区、内含参数区;其中,指令区 用于存储所有指令;输入端区用于存储所有功能块输入端数据;输出端区用于 存储所有功能块输出端数据;内含参数区用于存储所有功能块内含参数。功能 块输入端区和功能块输出端区都使用4个字节作为数据存储单元。
功能块指令区存储的指令包括功能块指令,图2是基本节点中的功能块指 令结构。图2中,功能块指令结构包含5个字段,其意义分别是
flag:指令标志;
FB—type:功能块类型;
in—index:该功能块输入端数据在该功能块输入端区内的起点索引值; outjndex:该功能块输出端数据在该功能块输出端区内的起点索引值; offset:该功能块的内含参数在该功能块内含参数区内的起点字节偏移量。
功能块内含参数使用字节作为数据存储单元,多个参数之间相邻排列,以偏移
量和数据长度来识别各个参数。功能块指令区存储的指令还包括连接指令,图3是基本节点中的连接指令
结构图。图3中,连接指令结构包含4个字段,其意义分别是 flag:连接指令标志;
outjndex:连接的起点功能块在功能块输出端区内的起点索引值; addr:连接的终点功能块所在基本节点的地址; in—index:连接的终点功能块在功能块输入端区内的起点索引值。 功能块指令和连接指令在功能块指令区内是等量混合存储的。 图4是基本节点功能块分区结构图。图4中,显示了功能块指令区41中 的一个功能块指令存储结构。功能块指令区41中存储的一个功能块指令结构 中,第一位和第二位分别是指令标志和功能块类型。第三位存储功能块输入端 数据在该功能块输入端区内的起点索引值,该索引值直接指向功能块输入端区 42的相应数据存储区(4个字节)。第四位存储功能块输出端数据在该功能块 输出端区内的起点索引值,该索引值直接指向功能块输出端区43的相应数据 存储区(4个字节)。第五位存储功能块的内含参数在该功能块内含参数区44 内的起点字节偏移量。
步骤2:将强制数据CD写入到存储与总线仲裁设备中的上述生产变
步骤3:将变量交换的调度条目(对于本例为(0x0501,H^DAT)、 {0x0502,ID—DAT})添加到总线调度表中;
步骤4:当网络启动以后,按照调度表规定的时序,在网络上产生各个 基本节点的变量交换;
步骤5:基本节点在从消费变量中收到强制数据CD后,执行指令区指 针当前指向的当前指令,执行完毕后指向下一条指令。
所述步骤5通过基本结点中的功能块实现。功能块应用分为单任务功能块 应用和多任务功能块应用。在单任务功能块应用中,整个应用进程仅包含一个从起点功能块到终点功能块的完整连接,在此称为一个"功能块应用任务", 无连接的功能块不视为功能块应用任务;在多任务功能块应用中,整个应用进 程包含两个以上的功能块应用任务,且各任务间具有并行性。完全"被动式" 的执行模式下的功能块应用进程调度算法分为单任务功能块应用的调度和多 任务功能块应用的调度。任何类型功能块应用总是可以分解为如下四种实施例 或其组合。
实施例一
图5是单任务功能模块本地连接与调度示意图;其中,(a)为单任务功
能模块本地连接示意图,(b)为单任务功能模块本地连接调度示意图。
图5(a)中,Nl代表基本结点,FBI和FB2分别代表基本节点内的起点 功能块和终点功能块,单任务功能模块本地连接是指基本节点内的起点功 能块和终点功能块的连接。
图5(b)中,CD(N1)代表向基本节点N1发送强制数据CD, FB1(N1)代 表执行起点功能块指令,LN(N1)代表执行连接指令,FB2(N1)代表执行终点 功能块指令;横轴代表调度时间,横轴上的刻度代表时间单位, 一个时间单 位可以为5毫秒,也可以为10毫秒,这取决于总线调度设备。结合图5(b), 本发明步骤5具体通过下述实施例实现
101:在调度时间开始时刻(时间横轴0点处),总线网络上的调度节点向 该基本节点Nl发送一个强制数据CD,即CD(N1);
102:在调度时间第二个时刻(时间横轴20点处),基本节点N1收到强制 数据CD后,执行当前指令。当前指令为功能块指令,即FB1(N1)时,具体执 行过程是
1021:基本节点N1按功能块指令中的该功能块输入端在该功能块输入端 区内的起点索引值,从输入端区中取出所有输入端数据。1022:基本节点按功能块指令中的该功能块的内含参数在该功能块内含参 数区内的起点字节偏移量,从内含参数区取出的内含参数。
1023:基本节点按功能块算法,使用输入端数据和内含参数计算得到输出 端数据。
1024:基本节点按该功能块输出端在该功能块输出端区内的起点索引值,
将输出端数据写入到功能块输出端区中。
1025:将功能块指令区的指令指针向后移动,指向功能块指令区的下一条指令。
103:在调度时间的下一个时刻(时间横轴60点处),FB1(N1)起点功能 块指令执行完毕,总线网络再向该基本节点N1发送一个强制数据CD。
104:在调度时间的下一个时刻(时间横轴80点处),基本节点N1收到强 制数据CD后,开始执行新的当前指令,即LN1(N1)。如果新的当前指令是本 地连接指令,则其具体执行过程是
1041:在连接指令中,根据起点功能块在该功能块输出端区内的起点索引
值,获取起点功能块输出端区的输出端数据。
1042:将起点功能块输出端区的输出端数据复制到终点功能块输入端区 中;将功能块指令区的指令指针向后移动,指向功能块指令区的十—一条指令。
105:在调度时间的下一个时刻(时间横轴100点处),连接指令LN1(N1) 已经执行完毕,此时链路调度再次向基本节点N1发送强制数据CD,驱使其执 行下一指令。
106:在调度时间的下一个时刻(时间横轴100点处)到来时,基本节点 Nl开始执行当前指令,当前指令又是一个功能块指令,即FB2(N1),其执行过 程与FB1(N1)的执行过程相同,可参见步骤1021-1025。
图5中白色空心箭头所示为非周期变量交换或报文通信的调度。实施例二
当节点采用价格相对低廉的MiCH)FIP通信芯片时,各基本节点间的数 据交换无法通过周期性变量交换直接进行,只能通过链路调度设备中转, 造成通信效率的降低。在本发明中,为解决这个问题,采用了节点间的周 期性报文交换方式,将要传输的数据包装在报文帧中传输,即保证了数据 可在节点间直接交换又保证了通信的实时性。
WorldFIP现场总线技术其参考模型也采用了 ISO/OSI参考模型七层中 的物理层、数据链路层和应用层,每层都遵循WorldFIP标准。
WorldFIP网络通信协议是一种主从式的通信协议。网络上采用两种数 据传输交换方式基于变量交换式的数据传输和基于物理寻址的报文式的 数据传输。在WorldFIP网络上,使用如下类型的帧进行数据交换。
基于变量交换的
ID—DAT:由总线仲裁器发出,用于启动一次基于变量交换的数据传 输过程;
RP—DAT:由从设备发出,用于响应H^DAT,实现基于变量交换的数 据传输;
基于报文传输的
ID一MSG:由总线仲裁器发出,用于启动一次基于报文的数据传输过程; RP_MSG:由从设备发出,用于响应ID—MSG,实现基于报文的数据传
输;
RP—MSG_ACK:由总线仲裁器发出,用于告知从设备报文已收到; RP_FIN:由从设备发出,用于响应FO^MSG—ACK,完成一次基于报 文的数据传输。
在本发明中,鉴于WorldFIP总线具有极高的传输可靠性,为提高通信效 率,基于报文的数据传输过程中采用了最简洁的"问询+回答"的会话形式,不再使用有确认(RP—MSG—ACK)的会话形式。
图6是WorldFIP报文帧格式。在图6的WorldFIP帧格式中,除"报 文"外的其他字段都是WorldFIP通信协议指定的,与用户层无关;用户能 够控制和自由使用的是"报文"字段。虽然WorldFIP现场总线通信参考模 型在物理层、数据链路层和应用层上都是标准化的,但值得注意的是, WorldFIP通信模型中目前还没有用户层的概念,缺乏用户层标准,报文帧 中由应用层所包装的用户数据还没有形成一个统一的数据规范,目前国内 外在针对这一问题的研究上处于起步阶段。在此针对图6中的"报文"字 段,以过程控制为应用目标提出一种WorldFIP现场总线通信协议中的用户 层数据模型。
图7是WoridFIP通信协议中的用户层数据模型。图7事实上就是本发明 提出的报文的格式。图7中,报文帧中报文的格式包括三个字段,分别是目 的识别码、输入端索引和float型数据;其中,目的识别码占用l个字节,输入 端索引占用2个字节,float型数据占用4个字节;输入端索引字段用于存储远 程连接的终点功能块在其基本结点的输入端索引;float型数据采用浮点类 型的数据格式,用于存储起点功能块在其基本节点的输出端区的输出端数据。
图8是单任务功能模块远程连接与调度示意图;其中,(a)为单任务功 能模块远程连接示意图,(b)为单任务功能模块远程连接调度示意图。
图8(a)中,Nl和N2分别代表基本结点,FBI和FB2分别代表基本节 点Nl和基本节点N2内的起点功能块和终点功能块,单任务功能模块远程 连接是指基本节点N1内的起点功能块和基本节点N2内终点功能块的连接。
图8(b)中,CD(N1)代表向基本节点N1发送强制数据CD, FB1(N1)代 表执行起点功能块指令,LN(N1)代表执行远程连接指令,ID一MSG(N1)表示 向基本节点N1发送报文问询帧,!U^MSG(N1-N2)代表将已打包好的报文帧 RP一MSG发送到网络上,FB2(N1)代表执行终点功能块指令;横轴代表调度时间,横轴上的刻度代表时间单位, 一个时间单位可以为5毫秒,也可以为
IO毫秒,这取决于总线调度设备。结合图8(b),本发明步骤5具体通过下述
实施例实现
201:在调度时间开始时刻(时间横轴0点处),总线网络上的调度节点向
该基本节点Nl发送一个强制数据CD,即CD(N1);
202:在调度时间第二个时刻(时间横轴20点处),基本节点N1收到强制 数据CD后,执行当前指令。当前指令为功能块指令,即FB1(N1)时,具体执 行过程与步骤1021-1025相同。
203:在调度时间的下一个时刻(时间横轴60点处),FB1(N1)起点功能 块指令执行完毕,总线网络再向该基本节点Nl发送一个强制数据CD。
204:在调度时间的下一个时刻(时间横轴80点处),基本节点N1收到强 制数据CD后,开始执行新的当前指令,即LN1(N1)。此时,新的当前指令是 远程连接指令,则其具体执行过程是
2041:在连接指令中,根据起点功能块在其基本节点N1输出端区内的起
点索引值,获取起点功能块输出端区的输出端数据。
2042:将起点功能块输出端区的输出端数据写入到一个报文中,并打包成 报文帧。报文的格式参照图7指明的报文格式。报文帧参照图6指明的 WorldFIP报文帧格式。
2043:将起点功能块指令区的指令指针向后移动,指向功能块指令区的下 一条指令。
2044:在调度时间的下一个时刻(时间横轴100点处),调度节点向起点 功能块的基本节点Nl发送报文问询帧ID—MSG(N1)。
2045:在调度时间的下一个时刻(时间横轴120点处),起点功能块的基 本节点N1将报文帧发送到网络上。
2046:由于报文发送采用的是目的地址寻址的方式,所以发送结束后,基本节点N2就收到了该报文帧,然后拆包,读取报文中的float型数据,按报 文中指明的终点功能块输入端区的索引地址,将float型数据写入到终点功能块 输入端区中,即写入到基本结点N2的功能块输入端区中。
205:在调度时间的下一个时刻(时间横轴140点处),链路调度向基本节 点N2发送强制数据CD,驱使其执行下一指令。
206:在调度时间的下一个时刻(时间横轴160点处)到来时,基本节点 N2开始执行当前指令,当前指令又是一个功能块指令,即FB2(N2),其执行过 程与FB1(N1)的执行过程相同,可参见步骤1021-1025。
图8中白色空心箭头所示为非周期变量交换或报文通信的调度。
实施例三
图9是多任务功能模块本地连接与调度示意图;其中,(a)为多任务功 能模块本地连接示意图,(b)为多任务功能模块本地连接调度示意图。
图9(a)中,Nl代表基本结点,FBI和FB2分别代表基本节点Nl内的 一组起点功能块和终点功能块,FB3和FB4分别代表基本节点Nl内的另一 组起点功能块和终点功能块,多任务功能模块本地连接是指基本节点内的 两组或者两组以上起点功能块和终点功能块的连接。
图9(b)中,CD(N1)代表向基本节点Nl发送强制数据CD, FB1(N1) 和FB3(N1)代表执行起点功能块指令,LN1(N1)和LN2(N1)代表执行连接 指令,FB2(N1)和FB4(N1)代表执行终点功能块指令;横轴代表调度时间, 横轴上的刻度代表时间单位, 一个时间单位可以为5毫秒,也可以为10毫 秒,这取决于总线调度设备。结合图9(b),本发明步骤5具体通过下述实 施例实现
301:总线调度节点向N1发送强制数据CD。
302:基本节点N1收到强制数据CD后,执行当前功能块指令FB1;具体过程同1021-1025。
303:总线调度节点向N1发送强制数据CD;
304:基本节点N1收到强制数据CD后,执行当前功能块指令FB3; 具体过程同1021-1025。
305:总线调度节点向N1发送强制数据CD;
306:基本节点Nl收到强制数据CD后,执行当前连接指令LN1; 具体过程同1041-1042。
307:总线调度节点向N1发送强制数据CD;
308:基本节点Nl收到强制数据CD后,执行当前连接指令LN2; 具体过程同1041-1042。
309:总线调度节点向N1发送强制数据CD。
310:基本节点N1收到强制数据CD后,执行当前功能块指令FB2; 具体过程同1021-1025。
311:总线调度节点向N1发送强制数据CD;
312:基本节点N1收到强制数据CD后,执行当前功能块指令FB4; 具体过程同1021-1025。
实施例四
图IO是多任务功能模块远程连接与调度示意图;其中,(a)为多任务
功能模块远程连接示意图,(b)为多任务功能模块远程连接调度示意图。
图10(a)中,Nl、 N2、 N3和N4代表基本结点,FBI和FB2分别代表 基本节点N1、 N2内的一组起点功能块和终点功能块,FB3和FB4分别代 表基本节点N3、 N4内的另一组起点功能块和终点功能块,多任务功能模块 远程连接是指两组或者两组以上基本节点的起点功能块和终点功能块的连 接。图10(b)中,CD(N1)代表向基本节点N1发送强制数据CD, FB1(N1) 和FB3(N3)代表执行起点功能块指令,LN1(N1)和LN2(N3)代表执行连接 指令,FB2(N2)和FB4(N4)代表执行终点功能块指令;横轴代表调度时间, 横轴上的刻度代表时间单位, 一个时间单位可以为5毫秒,也可以为10毫 秒,这取决于总线调度设备。结合图10(b),本发明步骤5具体通过下述实 施例实现
401:总线上的调度节点向基本节点N1发送强制数据CD。 402:总线上的调度节点向基本节点N3发送强制数据CD。 403:基本节点N1收到强制数据CD后,执行功能块指令FB1;具体过 程同1021-1025。
404:基本节点N3收到强制数据CD后,执行功能块指令FB3;具体过程 同1021-1025。
这里,CD(N3)和FB1(N1)可并行调度和执行,因为CD(N3)是基于总线的 数据通信,而FB1(N1)则是基于节点Nl内部的指令执行,与总线通信无关, 故二者可并行调度,从而提高调度效率,缩短总调度的周期。
405:总线上的调度节点向基本节点Nl发送强制数据CD。
406:基本节点N1收到强制数据CD后,执行远程连接指令LN1,具体过 程同2041-2046。
407:总线上的调度节点向基本节点N3发送强制数据CD。
这时CD(N3)和LN1(N1)可并行调度和执行,因为CD(N3)是基于总线的 数据通信,而LN1(N1)则是基于节点Nl内部的指令执行,与总线通信无关, 故二者可并行调度。
408:基本节点N3收到强制数据CD后,执行远程连接指令LN2,具体过 程同2041-2046。
409:总线上的调度节点向基本节点N2发送强制数据CD。410:总线上的调度节点向基本节点N4发送强制数据CD。 411:基本节点N2收到强制数据CD后,执行功能块指令FB2;具体过 程同1021-1025。
这时CD(N4)和FB2(N2)可并行调度和执行,因为CD(N4)是基于总线 的数据通信,而FB2(N2)则是基于节点N2内部的指令执行,与总线通信无 关,故二者可并行调度。
412:基本节点N4收到强制数据CD后,执行功能块指令FB4;具体过 程同1021-1025。
本发明提出了现场级智能节点的数据分区结构,定义了 WorldFIP通信协 议中的用户层数据子模型,给出了适用于WorldFIP现场总线控制网络的分布 式功能块应用模型的网络调度算法。本发明有效地解决了现场级智能控制网 络中基于功能块和功能块应用进程的全分布式智能系统的设计和实现问题, 进而实现高可靠性的实时全分布式智能控制,该模型易于实现,具有强的控 制实时性、确定性和较好的可移植性。
以上所述,仅为本发明较佳的具体实施方式
,但本发明的保护范围并不 局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可 轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明 的保护范围应该以权利要求的保护范围为准。
权利要求
1.一种WorldFIP分布式智能控制网络的调度方法,其特征是所述方法包括下列步骤步骤1在控制系统启动运行前,在链路调度器上建立对应于各个基本节点消费变量的生产变量;步骤2将强制数据CD写入到所述生产变量中;步骤3将变量交换的调度条目添加到总线调度表中;步骤4当网络启动以后,按照调度表规定的时序,在网络上产生各个基本节点的变量交换;步骤5基本节点在从消费变量中收到强制数据CD后,执行指令区指针当前指向的当前指令,执行完毕后指向下一条指令。
2. 根据权利要求1所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述基本节点包括功能块,所述功能块划分成4个区,.分别是指令区、 输入端区、输出端区、内含参数区;其中,所述指令区用于存储所有指令;所述 输入端区用于存储所有输入端数据;所述输出端区用于存储所有输出端数据;所 述内含参数区用于存储所有内含参数。
3. 根据权利要求2所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述指令包括功能块指令,其结构中包含5个字段,分别是指令标志、 功能块类型、功能块输入端数据在该功能块输入端区内的起点索引值、功能块输 出端数据在该功能块输出端区内的起点索引值和功能块的内含参数在该功能块 内含参数区内的起点字节偏移量。
4. 根据权利要求2所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述指令包括连接指令,其结构中包含4个字段,分别是连接指令标志、起点功能块在该功能块输出端区内的起点索引值、终点功能块所在的基本节点的 地址和终点功能块在该功能块输入端区内的起点索引值。
5. 根据权利要求1所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述输入端区和输出端区都使用4个字节作为数据存储单元。
6. 根据权利要求1所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述内含参数使用字节作为数据存储单元,多个参数之间相邻排列,以 偏移量和数据长度来识别各个参数。
7. 根据权利要求3或4所述的一种WorldFIP分布式智能控制网络的调度方 法,其特征是所述功能块指令和连接指令在指令区内是等量混合存储的。
8. 根据权利要求1所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述当前指令为功能块指令时,所述步骤5包括下列步骤步骤51:基本节点按功能块指令中该功能块输入端数据在该功能块输入端区 内的起点索引值,从输入端区中取出所有输入端数据;步骤52:基本节点按功能块指令中该功能块的内含参数在该功能块内含参数 区内的起点字节偏移量,从内含参数区取出的内含参数;步骤53:基本节点按功能块算法,使用输入端数据和内含参数计算得到输出 端数据;步骤54:基本节点按功能块输出端数据在该功能块输出端区内的起点索引 值,将输出端数据写入到功能块输出端区中;步骤55:将功能块指令区的指令指针向后移动,指向功能块指令区的下一条 指令。
9. 根据权利要求1所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述当前指令为本地连接指令时,所述步骤5包括下列步骤步骤51':在连接指令中,根据起点功能块在该功能块输出端区内的起点索引值,获取起点功能块输出端区的输出端数据。步骤52':根据终点功能块在该功能块输入端区内的起点索引值,将起点功 能块输出端区的输出端数据复制到终点功能块输入端区中;步骤53':将功能块指令区的指令指针向后移动,指向功能块指令区的下一 条指令。
10. 根据权利要求1所述的一种WorldFIP分布式智能控制网络的调度方法,其特征是所述当前指令为远程连接指令时,所述步骤5包括下列步骤步骤51":在连接指令中,根据起点功能块在其基本节点输出端区内的起点索引值,获取起点功能块输出端区的输出端数据;步骤52":将起点功能块输出端区的输出端数据写入到一个报文中,并打包成报文帧; 步骤53":将功能块指令区的指令指针向后移动,指向功能块指令区的下一 条指令;步骤54":网络调度节点向起点功能块的基本节点发送报文问询帧;步骤55":起点功能块的基本节点将报文帧发送到网络上;步骤56":终点功能块的基本节点收到报文帧后,将报文帧拆包,读取报文帧中的报文,然后按报文中指明的终点功能块输入端区索引,将float型数据写入到终点功能块输入端区中。
11. 根据权利要求1所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述报文帧中报文的格式包括三个字段,分别是目的识别码、输入端 索引和float型数据;其中,目的识别码占用l个字节,输入端索引占用2个字 节,float型数据占用4个字节;输入端索引字段用于存储远程连接的终点功能 块在其基本结点的输入端索引;float型数据用于存储起点功能块在其基本节点 的输出端区的输出端数据。
12. 根据权利要求1所述的一种WorldFIP分布式智能控制网络的调度方法, 其特征是所述报文帧采用的是目的地址寻址的方式。
全文摘要
本发明公开了自动控制技术领域中的一种WorldFIP分布式智能控制网络的调度方法。所述调度方法包括在控制系统启动运行前,在链路调度器上建立对应于各个基本节点消费变量的生产变量;将强制数据CD写入到所述生产变量中;将变量交换的调度条目添加到总线调度表中;当网络启动以后,按照调度表规定的时序,在网络上产生各个基本节点的变量交换;基本节点在从消费变量中收到强制数据CD后,执行指令区指针当前指向的当前指令,执行完毕后指向下一条指令。本发明解决了现场级智能控制网络中基于功能块和功能块应用进程的全分布式智能系统的设计和实现问题,实现了高可靠性的实时全分布式智能控制。
文档编号H04L12/28GK101616047SQ20091008994
公开日2009年12月30日 申请日期2009年7月28日 优先权日2009年7月28日
发明者文 李, 杨国田, 庚 梁, 焰 白 申请人:华北电力大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1