CN115134243A - 一种工业控制任务分布式部署方法及系统 - Google Patents

一种工业控制任务分布式部署方法及系统 Download PDF

Info

Publication number
CN115134243A
CN115134243A CN202211068566.9A CN202211068566A CN115134243A CN 115134243 A CN115134243 A CN 115134243A CN 202211068566 A CN202211068566 A CN 202211068566A CN 115134243 A CN115134243 A CN 115134243A
Authority
CN
China
Prior art keywords
node
task
tasks
nodes
cost
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211068566.9A
Other languages
English (en)
Other versions
CN115134243B (zh
Inventor
王健全
马彰超
向成峰
孙雷
李卫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Science and Technology Beijing USTB
Original Assignee
University of Science and Technology Beijing USTB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Science and Technology Beijing USTB filed Critical University of Science and Technology Beijing USTB
Priority to CN202211068566.9A priority Critical patent/CN115134243B/zh
Publication of CN115134243A publication Critical patent/CN115134243A/zh
Application granted granted Critical
Publication of CN115134243B publication Critical patent/CN115134243B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/0826Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for reduction of network costs
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/083Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

本发明提供一种工业控制任务分布式部署方法及系统,属于工业控制领域。所述方法包括:通过在多节点组成的工业控制网络中引入调度器,获取PLC计算任务和节点的性能参数,根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;依据得到的最优调度方案向各个节点下发可调度的任务。采用本发明,能够根据节点的算力、时延等特征得出综合计算性能和实时性的最优计算任务分配方案,从而提高分布式控制系统的实时性。

Description

一种工业控制任务分布式部署方法及系统
技术领域
本发明涉及工业控制领域,特别是指一种工业控制任务分布式部署方法及系统。
背景技术
传统的工业控制网络以PLC为核心,现场设备均连接到PLC上,后者集中接受信息并执行控制任务,多个PLC之间可进行低带宽地通信以完成部分简单的协作场景,而在许多的情况下,不同厂商之间的PLC不支持互操作。
为了应对复杂、庞大的控制场景,IEC-61499提出了分布式控制系统,将PLC任务以FB(Function Block,功能块)为最小单位拆分,并根据类型分为BFB(Basic FunctionBlock,基础功能块)、CFB(Composite Function Block,复合功能块)及SFB(ServiceFunction Block,服务功能块),并引入Resource(资源)承载计算任务,允许不同的FB运行在不同的设备上的资源中。为了方便讨论,在本发明中不考虑资源与设备的细节差异,而将不可拆分的单个硬件计算设备(如PLC、计算机)、或单个逻辑计算设备(如虚拟机)统称为计算节点,简称节点,而将现场的I/O设备及不可编程的伺服器、通信从站等设备统称为终端。也不考虑各种类型功能块的区别,将它们统称为任务,并将运行在资源或设备上的任务称为负载。更具体地说,“任务”是指为了完成生产、制造或其他工业流程,需要各个计算节点共同执行的程序、计算、逻辑分析或数据处理等工作的总和。“负载”是指某个节点上具体的任务量。
工业控制网络中常常包含多个计算节点,不同节点执行相同程度的负载的性能不相同,不同节点与工业终端或控制现场的时延也不相同;对于某一个或某一组计算任务,可以分配给网络中的多个节点,对于某个节点上执行的任务,可能会因为节点本身的性能限制导致任务执行性能受限,也可能因为节点与终端之间的时延过大从而使整体控制性能受限。IEC-61499标准中并未给出具体的任务分配方案,而现有的分布式控制系统中的任务分配主要依靠工程师手工调度任务,依赖于工程师自身的经验,存在主观性和人为不可靠性。
现有技术中提供的基于边缘计算的工业互联网任务调度研究,首先对任务进行聚类和分类预处理,避免任务调度陷入局部最优化问题;然后将任务调度问题转化为二部图匹配问题,构建任务调度利润矩阵;最后基于该矩阵进行最优二部图匹配,实现任务调度利润最大化和负载均衡,为工业互联网提供高效稳定的计算和资源管控能力。该研究针对边缘计算场景提出的工业互联网任务调度方案,以利润最大化和负载均衡作为目标,不足以应对工业控制场景所需要的强实时性要求;同时,该方案只给出了调度算法,未给出调度器各节点软件架构和流程,无法直接作为可实施方案。
发明内容
本发明实施例提供了工业控制任务分布式部署方法及系统,能够根据节点的算力、时延等特征得出综合计算性能和实时性的最优计算任务分配方案,从而提高分布式控制系统的实时性。所述技术方案如下:
一方面,提供了一种工业控制任务分布式部署方法,包括:
S101,调度器获取PLC计算任务,并对任务进行拆分;
S102,若拆分后,存在可调度的任务,则获取各个节点的性能参数;其中,节点为计算节点;
S103,根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;
S104,依据得到的最优调度方案向各个节点下发可调度的任务。
进一步地,所述调度器获取PLC计算任务,并对任务进行拆分包括:
调度器获取PLC计算任务,并根据任务的内容对获取到的任务进行拆分,形成不可调度的任务列表和可调度的任务列表;其中,
不可调度的任务列表为:
TASK1:ID1
TASK2:ID2
……
其中,TASK1:ID1表示任务1在ID1上运行,ID1表示设备1的编号;TASK2:ID2表示任务2在ID2上运行,ID2表示设备2的编号;
可调度的任务列表为:
TASKx{FB1,FB2,FB3…}:Bx
TASKy{FB1,FB2,FB3…}:By
……
其中,TASKx、TASKy分别表示任务x、任务y;FB1、FB2、FB3分别表示任务中能被拆分出的第1、2、3个最小单位,即:子任务;Bx、By分别表示任务x、任务y中所有FB的负载之和。
进一步地,在调度器获取PLC计算任务,并对任务进行拆分之后,所述方法还包括:
若拆分后,不存在可调度的任务,则向设备对应的节点下发不可调度的任务。
进一步地,所述获取各个节点的性能参数包括:
调度器向所有节点所在的网段广播调度请求,获取各节点的性能参数信息;其中,所述节点的性能参数信息包括:节点的CPU主频、CPU核心数或线程数、储存容量、内存大小以及该节点到工业现场的通信时延。
进一步地,在根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案之前,所述方法还包括:
调度器根据获取到的各个节点的性能参数,判断可用的节点的数目;
若没有可用的节点,则报错或显示警告;
若仅有一个可用的节点,则直接向该节点下发所有任务;
若可用的节点数≥2,则执行S103。
进一步地,任务部署的总成本
Figure 111951DEST_PATH_IMAGE001
表示为:
Figure 362935DEST_PATH_IMAGE002
其中,
Figure 845869DEST_PATH_IMAGE003
代表节点
Figure 131488DEST_PATH_IMAGE004
在计算任务负载
Figure 307254DEST_PATH_IMAGE005
下的计算成本,
Figure 42605DEST_PATH_IMAGE006
代表计算任务 负载
Figure 329229DEST_PATH_IMAGE007
部署在节点
Figure 734934DEST_PATH_IMAGE004
处由于存在时延而产生的通信成本,
Figure 81602DEST_PATH_IMAGE008
为节点的总数。
进一步地,若节点
Figure 838336DEST_PATH_IMAGE004
为线性节点,节点
Figure 944964DEST_PATH_IMAGE004
的计算成本为
Figure 188863DEST_PATH_IMAGE009
;其中,
Figure 454235DEST_PATH_IMAGE010
为比例系数;
若节点
Figure 291741DEST_PATH_IMAGE004
为非线性节点,节点
Figure 670901DEST_PATH_IMAGE004
的计算成本为
Figure 238148DEST_PATH_IMAGE011
;其中,
Figure 411772DEST_PATH_IMAGE012
表 示非线性度。
进一步地,对于所有节点,节点
Figure 657945DEST_PATH_IMAGE004
的通信成本为
Figure 775550DEST_PATH_IMAGE013
;其中,
Figure 994041DEST_PATH_IMAGE014
表示节 点
Figure 604145DEST_PATH_IMAGE004
到终端或工业现场的时延值。
一方面,提供了一种工业控制任务分布式部署系统, 包括:调度器和节点;其中,所述调度器包括:
任务获取模块,用于获取PLC计算任务,并对任务进行拆分;
参数获取模块,用于若拆分后,存在可调度的任务,则获取各个节点的性能参数;其中,节点为计算节点;
方案确定模块,用于根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;
任务下发模块,用于依据得到的最优调度方案向各个节点下发可调度的任务。
本发明实施例提供的技术方案带来的有益效果至少包括:
本发明实施例中,通过在多节点组成的工业控制网络中引入调度器,获取PLC计算任务和节点的性能参数,根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;依据得到的最优调度方案向各个节点下发可调度的任务;这样,通过引入任务部署的总成本,使得调度器能够根据节点的算力、时延等特征得出综合计算性能和实时性的最优计算任务分配方案,充分利用工业控制网络中各个节点的计算性能,提高分布式控制系统的实时性,减少手工分配消耗的人力资源和引起的人为不可靠因素。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的工业控制场景下的网络架构结构示意图;
图2为本发明实施例提供的工业控制任务分布式部署方法的流程示意图;
图3为本发明实施例提供的工业控制任务分布式部署方法的详细流程示意图;
图4为本发明实施例提供的调度过程时隙流程图示意图;
图5为本发明实施例提供的调度器、计算节点的组成结构及通信方式示意图;
图6为本发明实施例提供的工业控制任务分布式部署系统的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供的工业控制任务分布式部署方法,如图1所示,其场景中包含工业现场I/O设备和多个具备计算能力的节点,通常是PLC、PC、嵌入式设备或服务器,还包含至少一个调度器,调度器是一个逻辑实体,它能接受来自上方IDE或MES的PLC计算任务,同时能获取每个节点的性能参数,并向每个节点下发计算任务。场景中涉及的计算任务可以被拆分成多个子任务,各个子任务可以在任何节点上执行。任务执行效果仅取决于该节点的性能与节点到工业现场的通信质量。
如图2所示,本发明实施例提供的所述工业控制任务分布式部署方法,包括:
S101,调度器获取PLC计算任务,并对任务进行拆分;
如图3和图4所示,调度器接受来自IDE/MES等平台的PLC计算任务,具体的:计算任务通过IDE手工导入,或由MES向调度器下发。
如图3和图4所示,调度器根据任务的内容对获取到的任务进行拆分,形成不可调度的任务列表和可调度的任务列表,其中,
不可调度的任务列表为:
TASK1:ID1
TASK2:ID2
……
其中,TASK1:ID1表示任务1在ID1上运行,ID1表示设备1的编号;TASK2:ID2表示任务2在ID2上运行,ID2表示设备2的编号;
可调度的任务列表为:
TASKx{FB1,FB2,FB3…}:Bx
TASKy{FB1,FB2,FB3…}:By
……
其中,TASKx、TASKy分别表示任务x、任务y;FB1、FB2、FB3分别表示任务中能被拆分出的第1、2、3个最小单位,即:子任务;Bx、By分别表示任务x、任务y中所有FB的负载之和。
本实施例中,若拆分后,不存在可调度的任务,即:都是不可调度的任务,则直接向设备对应的节点下发不可调度的任务;否则,继续执行S102。
S102,若拆分后,存在可调度的任务,则获取各个节点的性能参数;其中,节点为计算节点;
本实施例中,调度器向所有节点所在的网段广播调度请求,例如,向各个节点发送Benchmark测试程序,以获取各节点的性能参数信息;其中,所述节点的性能参数信息包括:节点的CPU主频、CPU核心数或线程数、储存容量、内存大小以及该节点到工业现场的通信时延。
本实施例中,调度器根据获取到的各个节点的性能参数,判断可用的节点的数目;若没有可用的节点,则报错或显示警告;若仅有一个可用的节点,则直接向该节点下发所有任务;若可用的节点数≥2,则执行S103。
S103,根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;
本实施例中,为了得到最优调度方案,首先给定了一种任务部署的总成本,总成本 函数描述的是“计算成本”与“在其上部署的计算量”之间的关系,总成本函数
Figure 275298DEST_PATH_IMAGE001
表示为:
Figure 527419DEST_PATH_IMAGE002
其中,
Figure 803680DEST_PATH_IMAGE003
代表节点
Figure 99532DEST_PATH_IMAGE004
在计算任务负载
Figure 8713DEST_PATH_IMAGE007
下的计算成本,
Figure 985896DEST_PATH_IMAGE006
代表计算任务 负载
Figure 926783DEST_PATH_IMAGE007
部署在节点
Figure 331220DEST_PATH_IMAGE004
处由于存在时延而产生的通信成本,
Figure 976965DEST_PATH_IMAGE008
为节点的总数。
本实施例中,根据节点的具体属性将其归类为非线性节点或线性节点,其中,
对于线性节点
Figure 305309DEST_PATH_IMAGE004
,可令节点
Figure 556162DEST_PATH_IMAGE004
的计算成本为
Figure 944549DEST_PATH_IMAGE015
,其中,
Figure 77590DEST_PATH_IMAGE010
为比例系 数,其值与节点
Figure 944046DEST_PATH_IMAGE004
的性能有关,性能越高该值越小;
对于非线性节点
Figure 49405DEST_PATH_IMAGE004
,可令
Figure 857961DEST_PATH_IMAGE016
,其中,
Figure 960522DEST_PATH_IMAGE012
表示非线性度,其值反 映了计算成本上升随着负载持续增加时的显著程度,越显著值越大;
对于所有节点,可令节点的通信成本为
Figure 83199DEST_PATH_IMAGE013
;其中,
Figure 590534DEST_PATH_IMAGE014
表示节点
Figure 569992DEST_PATH_IMAGE004
到 终端或工业现场的时延值。
需要选取合适的计算方法,使得每个节点的成本函数能尽可能有效地反映“计算成本”与“在其上部署的计算量”之间的关系,实施思路包括:
1)根据节点的具体属性将其归类为非线性节点或线性节点,具体地说,线性节点通常里工业现场较远,允许被设计成大功率、不方便移动的PC或服务器,不考虑内存和储存空间方面的瓶颈,原因包括:①面是相对于工业应用而言,其内存和储存空间足够大,不足以成为瓶颈;②服务器可以便捷地通过加装硬件或增加虚拟化实例等方式增加内存和存储空间。因此,线性节点的计算成本应与负载成正比,且系数几乎只与CPU频率与核心数相关;
2)非线性节点通常靠近工业现场,存在一定的体积、功率、便携性、抗干扰性等方面的限制,当负载超过一定程度时,非线性节点的计算性能会随着负载的增加而显著下降,可能的原因包括:①CPU核心数量不足,在多个线程之间反复切换;②内存不足,调用硬盘作为虚拟内存导致性能下降等;
3)在同等CPU性能,负载非常小的情况下,单位负载使非线性节点的成本的增量应当与其使线性节点的成本的增量一致;
4)通信成本应当能够与计算成本共同衡量,例如,某计算时间为t的负载带来的成本可以等同于时延为t。通信成本应当与时延成正比,因此非线性节点在计算通信成本时可以当成线性节点处理;
5)任务与负载的计算方式为程序单个扫描周期内的CPU指令数(单位:10^6个)/扫描周期(单位:s),或总指令条数(单位:10^6个)*CPU占用率(单位:100%)/程序执行时间(单位:s)。考虑到在程序设计阶段通常以工程为单位配置扫描周期,典型值为5~50ms,绝大多数程序都会在扫描周期内被执行,因此负载可以也近似为程序CPU指令数(单位:10^6个)/10ms。又考虑到典型64位的x86架构下单条CPU指令长度为1~15Byte,负载可以近似为程序大小(单位:KB)/5Byte/10ms,并将其作为计算依据。
本实施例中,当可用的节点数≥2时,调度器根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,可以使用梯度下降法,确定最优调度方案。
S104,依据得到的最优调度方案向各个节点下发可调度的任务,这样,可使得工业控制网络的整体性能和成本最优。
本实施例中,为了更好地理解本发明,还对调度器、计算节点的组成结构及通信方式进行说明,其中,调度器包括:任务获取模块、参数获取模块、方案确定模块以及任务下发模块;
所述任务获取模块,用于获取PLC计算任务,并对任务进行拆分;
所述参数获取模块,用于若拆分后,存在可调度的任务,则获取各个节点的性能参数;其中,节点为计算节点;
所述方案确定模块,用于根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;
所述任务下发模块,用于依据得到的最优调度方案向各个节点下发可调度的任务。
如图5所示,对于由通用计算机(如X86架构的PC或服务器)构成的计算节点,将在其中部署有软PLC系统,包含参数上传模块、任务接收模块和PLC运行环境(PLC Runtime)等软件模块。对于由PLC而非通用计算机构成的计算节点,考虑其不便于接受来自调度器以文件传输接口下发的计算任务,因此设计了参数收集与上传装置和任务接受装置,可以通过嵌入式设备实现,前者收集PLC的型号信息联网查询其参数或提前录入PLC的性能参数或给PLC运行DEMO以测量其性能参数;后者通过文件传输协议接受来自调度器的任务,并通过PLC支持的pyro等协议下发给PLC。
如图5所示,调度器和计算节点之间的通信过程包括:
1.调度器接受来自IDE / MES等平台 的计算任务,并对其进行拆分;
2.接收到任务后,由“参数获取模块”发送广播请求;
3.向所有计算节点广播调度请求;
4.对于由传统PLC组成的节点,将通过参数收集与上传装置与PLC通信,收集PLC的型号和性能参数;
5.节点将参数上传给调度器中的参数获取模块;
6.调度器根据各节点的参数计算调度方案;
7.计算出的最优调度由任务下发模块下发;
8.任务下发模块将所有任务下发给对应的节点;
9.对于由传统PLC组成的节点,由任务接收装置接收,通过pyro或其他PLC支持的协议给PLC下发程序;
10.对于PC等通用计算节点,部署的软PLC中的任务接收模块接收任务,并调用PLCRuntime中的接口运行。
为了更好地理解本发明实施例提供的工业控制任务分布式部署方法,以基于云化 PLC的工业控制场景为例,衡量节点的计算成本和时延产生的通信成本,得到最优的任务调 度方案;其中,该工业控制场景包含一个由两个节点(N=2)构成的工业现场控制网络,有一 个调度器能与所有节点通信,获取任务、节点参数和下发任务。其中,节点1为离工业现场较 近的非线性节点,即
Figure 880887DEST_PATH_IMAGE017
Figure 433354DEST_PATH_IMAGE018
,节点2为远离工业现场的线性节点,即
Figure 310043DEST_PATH_IMAGE019
,具体可以包括以下步骤:
调度器首先接收到来自MES/IDE的PLC计算任务,对计算任务进行处理,计算出总负载或能被拆分的各个负载的大小B(KB)。
接着,调度器并向每个节点下发测试程序,以便从控制网络中获取节点参数;其中,
针对节点1,测试程序会读取该节点的内存大小R 1(Byte),储存容量E 1(KB),CPU核心或线程数X 1(个)和CPU主频F 1(MHz),节点和工业现场的通信时延T 1(ms)等特征;
针对节点2,同理。
然后,调度器计算最优分配方式
根据“实施思路1)-5)”,给出的其中一组计算公式为:
1.对于已知特征
Figure 208204DEST_PATH_IMAGE020
的线性节点
Figure 537554DEST_PATH_IMAGE021
的成本函数,有
Figure 736454DEST_PATH_IMAGE022
2.对于已知特征
Figure 218383DEST_PATH_IMAGE020
的非线性节点
Figure 539642DEST_PATH_IMAGE023
的成本函数,有
Figure 107021DEST_PATH_IMAGE024
3.对于已知特征R i X i F i 的非线性节点
Figure 171929DEST_PATH_IMAGE021
的成本函数,有
Figure 711626DEST_PATH_IMAGE025
Figure 203787DEST_PATH_IMAGE026
,其中,
Figure 710992DEST_PATH_IMAGE027
代表节点
Figure 350831DEST_PATH_IMAGE023
所能承受的最大负 载,计算方式为
Figure 994302DEST_PATH_IMAGE028
,更进一步地,可令
Figure 673676DEST_PATH_IMAGE029
Figure 199335DEST_PATH_IMAGE030
4. 对于已知特征
Figure 356778DEST_PATH_IMAGE031
的线性节点
Figure 120335DEST_PATH_IMAGE023
的通信成本函数,有
Figure 688720DEST_PATH_IMAGE032
Figure 983566DEST_PATH_IMAGE033
;而对于已知特征
Figure 928388DEST_PATH_IMAGE034
的非线性节点j,则有
Figure 294254DEST_PATH_IMAGE035
Figure 299119DEST_PATH_IMAGE036
5. 对于部署在节点
Figure 2633DEST_PATH_IMAGE023
上的大小为B的负载,有
Figure 501878DEST_PATH_IMAGE037
联立等式解得 成本函数
Figure 36765DEST_PATH_IMAGE038
Figure 166526DEST_PATH_IMAGE039
中的各项参数,解得
Figure 419653DEST_PATH_IMAGE040
进一步求得
Figure 457010DEST_PATH_IMAGE041
考虑到
Figure 49666DEST_PATH_IMAGE042
,可解出
Figure 661913DEST_PATH_IMAGE043
的取值范围,有
Figure 822242DEST_PATH_IMAGE044
,在 此区间内利用二分法或牛顿法即可求出
Figure 178137DEST_PATH_IMAGE038
中的参数。
若任务数量较少,可直接通过遍历法求出使得总成本函数C最小的
Figure 625299DEST_PATH_IMAGE045
。若任 务数量较多,遍历法求解太慢,则可用求导法,利用已知的各节点的成本函数,设定合适的
Figure 159180DEST_PATH_IMAGE045
的初值,计算C,并对负载求偏导,利用梯度下降法或其他方法求出使C最小的
Figure 636166DEST_PATH_IMAGE045
更进一步地,以求导法为例,假设节点上的负载可连续,有总成本
Figure 530173DEST_PATH_IMAGE046
将上述求解结果代入有
Figure 831841DEST_PATH_IMAGE047
由于需要将所有任务下发给所有节点,有
Figure 271044DEST_PATH_IMAGE048
,同时考虑到节点的性质, 则有
Figure 454901DEST_PATH_IMAGE049
Figure 900401DEST_PATH_IMAGE050
代入公式得到
Figure 118893DEST_PATH_IMAGE051
解得
Figure 932259DEST_PATH_IMAGE052
因为上述式子右边的字母都是已知量,所以能求出
Figure 603412DEST_PATH_IMAGE053
的数值,给节点1分配
Figure 589953DEST_PATH_IMAGE054
这么大的负载量,给节点2分配
Figure 866214DEST_PATH_IMAGE055
这么大的负载量,这种分配能使总成本值最小,即为最 优任务调度方式中的
Figure 896487DEST_PATH_IMAGE053
的结果。
生成形如以下格式的调度列表:
ID1:TASKa{FB2,FB5…}
ID2:TASKb{FB1,FB3…}
其中,ID1代表节点1的设备,ID2代表节点2的设备,以“ID1:TASKa{FB2,FB5…}”为例进行说明,“ID1:TASKa{FB2,FB5…}”代表调度器将FB2、FB5等子任务整合为TASKa,并计划将其下发给ID1对应的设备。
调整TASKa中的负载量使得总负载大小与L1相等;调整TASKb中的负载量使得总负载大小与L2相等即得到最优调度列表。
本实施例设计了计算节点性能和任务负载大小量化方式,包含CPU主频、内存大小、指令条数等指标,且提供的最优调度方案计算方法简单,有利于调度器快速计算出调度结果,节约调度时间。
本发明实施例所述的工业控制任务分布式部署方法,通过在多节点组成的工业控制网络中引入调度器,获取PLC计算任务和节点的性能参数,根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;依据得到的最优调度方案向各个节点下发可调度的任务;这样,通过引入任务部署的总成本,使得调度器能够根据节点的算力、时延等特征得出综合计算性能和实时性的最优计算任务分配方案,充分利用工业控制网络中各个节点的计算性能,提高分布式控制系统的实时性,减少手工分配消耗的人力资源和引起的人为不可靠因素。
实施例二
本发明还提供一种工业控制任务分布式部署系统的具体实施方式,由于本发明提供的工业控制任务分布式部署系统与前述工业控制任务分布式部署方法的具体实施方式相对应,该工业控制任务分布式部署系统可以通过执行上述方法具体实施方式中的流程步骤来实现本发明的目的,因此上述工业控制任务分布式部署方法具体实施方式中的解释说明,也适用于本发明提供的工业控制任务分布式部署系统的具体实施方式,在本发明以下的具体实施方式中将不再赘述。
如图6所示,本发明实施例还提供一种工业控制任务分布式部署系统,包括:包括:调度器11和节点12;其中,所述调度器11包括:
任务获取模块,用于获取PLC计算任务,并对任务进行拆分;
参数获取模块,用于若拆分后,存在可调度的任务,则获取各个节点的性能参数;其中,节点为计算节点;
方案确定模块,用于根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;
任务下发模块,用于依据得到的最优调度方案向各个节点下发可调度的任务。
本发明实施例所述的工业控制任务分布式部署系统,通过在多节点组成的工业控制网络中引入调度器,获取PLC计算任务和节点的性能参数,根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;依据得到的最优调度方案向各个节点下发可调度的任务;这样,通过引入任务部署的总成本,使得调度器能够根据节点的算力、时延等特征得出综合计算性能和实时性的最优计算任务分配方案,充分利用工业控制网络中各个节点的计算性能,提高分布式控制系统的实时性,减少手工分配消耗的人力资源和引起的人为不可靠因素。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种工业控制任务分布式部署方法,其特征在于,包括:
S101,调度器获取PLC计算任务,并对任务进行拆分;
S102,若拆分后,存在可调度的任务,则获取各个节点的性能参数;其中,节点为计算节点;
S103,根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;
S104,依据得到的最优调度方案向各个节点下发可调度的任务。
2.根据权利要求1所述的工业控制任务分布式部署方法,其特征在于,所述调度器获取PLC计算任务,并对任务进行拆分包括:
调度器获取PLC计算任务,并根据任务的内容对获取到的任务进行拆分,形成不可调度的任务列表和可调度的任务列表;其中,
不可调度的任务列表为:
TASK1:ID1
TASK2:ID2
……
其中,TASK1:ID1表示任务1在ID1上运行,ID1表示设备1的编号;TASK2:ID2表示任务2在ID2上运行,ID2表示设备2的编号;
可调度的任务列表为:
TASKx{FB1,FB2,FB3…}:Bx
TASKy{FB1,FB2,FB3…}:By
……
其中,TASKx、TASKy分别表示任务x、任务y;FB1、FB2、FB3分别表示任务中能被拆分出的第1、2、3个最小单位,即:子任务;Bx、By分别表示任务x、任务y中所有FB的负载之和。
3.根据权利要求1所述的工业控制任务分布式部署方法,其特征在于,在调度器获取PLC计算任务,并对任务进行拆分之后,所述方法还包括:
若拆分后,不存在可调度的任务,则向设备对应的节点下发不可调度的任务。
4.根据权利要求1所述的工业控制任务分布式部署方法,其特征在于,所述获取各个节点的性能参数包括:
调度器向所有节点所在的网段广播调度请求,获取各节点的性能参数信息;其中,所述节点的性能参数信息包括:节点的CPU主频、CPU核心数或线程数、储存容量、内存大小以及该节点到工业现场的通信时延。
5.根据权利要求1所述的工业控制任务分布式部署方法,其特征在于,在根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案之前,所述方法还包括:
调度器根据获取到的各个节点的性能参数,判断可用的节点的数目;
若没有可用的节点,则报错或显示警告;
若仅有一个可用的节点,则直接向该节点下发所有任务;
若可用的节点数≥2,则执行S103。
6.根据权利要求1所述的工业控制任务分布式部署方法,其特征在于,任务部署的总成 本
Figure 832051DEST_PATH_IMAGE001
表示为:
Figure 559966DEST_PATH_IMAGE002
其中,
Figure 18629DEST_PATH_IMAGE003
代表节点
Figure 423066DEST_PATH_IMAGE004
在计算任务负载
Figure 553964DEST_PATH_IMAGE005
下的计算成本,
Figure 676116DEST_PATH_IMAGE006
代表计算任务负载
Figure 254865DEST_PATH_IMAGE007
部署在节点
Figure 846515DEST_PATH_IMAGE004
处由于存在时延而产生的通信成本,
Figure 713977DEST_PATH_IMAGE008
为节点的总数。
7.根据权利要求6所述的工业控制任务分布式部署方法,其特征在于,若节点
Figure 32963DEST_PATH_IMAGE004
为线性节 点,节点
Figure 951371DEST_PATH_IMAGE004
的计算成本为
Figure 494348DEST_PATH_IMAGE009
;其中,
Figure 68680DEST_PATH_IMAGE010
为比例系数;
若节点
Figure 988094DEST_PATH_IMAGE004
为非线性节点,节点
Figure 213539DEST_PATH_IMAGE004
的计算成本为
Figure 940799DEST_PATH_IMAGE011
;其中,
Figure 986116DEST_PATH_IMAGE012
表示非 线性度。
8.根据权利要求6所述的工业控制任务分布式部署方法,其特征在于,对于所有节点, 节点
Figure 459954DEST_PATH_IMAGE004
的通信成本为
Figure 539905DEST_PATH_IMAGE013
;其中,
Figure 690264DEST_PATH_IMAGE014
表示节点
Figure 301505DEST_PATH_IMAGE004
到终端或工业现场的时延 值。
9.一种工业控制任务分布式部署系统,其特征在于,包括:调度器和节点;其中,所述调度器包括:
任务获取模块,用于获取PLC计算任务,并对任务进行拆分;
参数获取模块,用于若拆分后,存在可调度的任务,则获取各个节点的性能参数;其中,节点为计算节点;
方案确定模块,用于根据获取到的各个节点的性能参数,以任务部署的总成本最小为优化目标,确定最优调度方案;其中,总成本由节点的计算成本和时延产生的通信成本确定;
任务下发模块,用于依据得到的最优调度方案向各个节点下发可调度的任务。
CN202211068566.9A 2022-09-02 2022-09-02 一种工业控制任务分布式部署方法及系统 Active CN115134243B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211068566.9A CN115134243B (zh) 2022-09-02 2022-09-02 一种工业控制任务分布式部署方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211068566.9A CN115134243B (zh) 2022-09-02 2022-09-02 一种工业控制任务分布式部署方法及系统

Publications (2)

Publication Number Publication Date
CN115134243A true CN115134243A (zh) 2022-09-30
CN115134243B CN115134243B (zh) 2022-12-06

Family

ID=83387454

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211068566.9A Active CN115134243B (zh) 2022-09-02 2022-09-02 一种工业控制任务分布式部署方法及系统

Country Status (1)

Country Link
CN (1) CN115134243B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170255496A1 (en) * 2014-11-19 2017-09-07 Huawei Technologies Co., Ltd. Method for scheduling data flow task and apparatus
WO2020171234A1 (ja) * 2019-02-22 2020-08-27 日本電信電話株式会社 オフロードサーバのソフトウェア最適配置方法およびプログラム
CN112162837A (zh) * 2020-09-17 2021-01-01 中国科学院计算机网络信息中心 一种基于软件定义的边缘计算调度方法及系统
CN113115252A (zh) * 2021-03-04 2021-07-13 西安交通大学 延迟敏感任务分布式移动边缘计算资源调度方法及系统
CN113194096A (zh) * 2021-04-30 2021-07-30 焦点科技股份有限公司 一种基于分布式架构的任务调度实时追踪方法及系统
CN113366432A (zh) * 2019-02-01 2021-09-07 西门子股份公司 跨多个层动态部署mom模块
CN113891466A (zh) * 2021-09-07 2022-01-04 武汉大学 一种面向边缘无线网络中udl任务的在线调度系统及方法
CN113986562A (zh) * 2021-12-29 2022-01-28 中移(上海)信息通信科技有限公司 一种资源调度策略生成方法、装置及终端设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170255496A1 (en) * 2014-11-19 2017-09-07 Huawei Technologies Co., Ltd. Method for scheduling data flow task and apparatus
CN113366432A (zh) * 2019-02-01 2021-09-07 西门子股份公司 跨多个层动态部署mom模块
WO2020171234A1 (ja) * 2019-02-22 2020-08-27 日本電信電話株式会社 オフロードサーバのソフトウェア最適配置方法およびプログラム
CN112162837A (zh) * 2020-09-17 2021-01-01 中国科学院计算机网络信息中心 一种基于软件定义的边缘计算调度方法及系统
CN113115252A (zh) * 2021-03-04 2021-07-13 西安交通大学 延迟敏感任务分布式移动边缘计算资源调度方法及系统
CN113194096A (zh) * 2021-04-30 2021-07-30 焦点科技股份有限公司 一种基于分布式架构的任务调度实时追踪方法及系统
CN113891466A (zh) * 2021-09-07 2022-01-04 武汉大学 一种面向边缘无线网络中udl任务的在线调度系统及方法
CN113986562A (zh) * 2021-12-29 2022-01-28 中移(上海)信息通信科技有限公司 一种资源调度策略生成方法、装置及终端设备

Also Published As

Publication number Publication date
CN115134243B (zh) 2022-12-06

Similar Documents

Publication Publication Date Title
CN109491790B (zh) 基于容器的工业物联网边缘计算资源分配方法及系统
US9471390B2 (en) Scheduling mapreduce jobs in a cluster of dynamically available servers
US9201690B2 (en) Resource aware scheduling in a distributed computing environment
CN111026553B (zh) 离线混部作业的资源调度方法及服务器系统
WO2023125493A1 (zh) 资源管理方法、装置及资源管理平台
CN111861793B (zh) 基于云边协同计算架构的配用电业务分配方法及装置
CN104038540A (zh) 一种应用代理服务器自动选择方法及系统
CN109257399B (zh) 云平台应用程序管理方法及管理平台、存储介质
CN115408152A (zh) 一种自适应资源匹配获取方法及系统
CN116708451B (zh) 一种边云协同调度方法及系统
CN114666224A (zh) 业务资源容量动态分配方法、装置、设备及存储介质
CN115310954B (zh) 一种it业务运行维护方法及系统
CN115421930B (zh) 任务处理方法、系统、装置、设备及计算机可读存储介质
CN115134371A (zh) 包含边缘网络算力资源的调度方法、系统、设备及介质
WO2023179180A1 (zh) 一种网络虚拟化体系结构以及虚拟化方法
CN108132840A (zh) 一种分布式系统中的资源调度方法及装置
CN113010296B (zh) 基于形式化模型的任务解析与资源分配方法及系统
CN115134243B (zh) 一种工业控制任务分布式部署方法及系统
CN112584398B (zh) 数据处理方法、装置及存储介质
Chen et al. Data-driven task offloading method for resource-constrained terminals via unified resource model
CN111539863B (zh) 一种基于多源任务线的智能城市运行的方法和系统
CN113220400A (zh) 基于软件定义的云桌面系统质量控制方法
ZHANG et al. A dynamic feedback-based load balancing methodology
CN113485718B (zh) 面向边云协同系统中的上下文感知AIoT应用程序部署方法
Qu et al. IDEC: Intelligent distributed edge computing system architecture enabling deep learning across heterogeneous IoT devices

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant