分散处理单元超实时计算方法转让专利
申请号 : CN202010220474.2
文献号 : CN111427318B
文献日 : 2021-06-18
发明人 : 苏烨 , 丁宁 , 周宇阳 , 郑可轲 , 孙坚栋 , 陈波 , 华丽云 , 叶泽民 , 叶凌
申请人 : 杭州意能电力技术有限公司 , 国网浙江省电力有限公司电力科学研究院 , 上海朴宜实业有限公司
摘要 :
权利要求 :
1.一种分散处理单元超实时计算方法,其特征在于,从分散处理单元的本位或者全局的实时计算频率着手,从分散处理单元的页面扫描周期、模块计算周期与循环的设定方面进行超实时计算改造,使得分散处理单元在计算机资源约束的条件下具有超实时计算能力;
所述全局是指整组频率,所述本位是指个别组的频率或者组内部分的频率;所述分散处理单元的页面扫描周期是指分散处理单元组态页面的实时计算频率;
所述分散处理单元的模块计算周期是指分散处理单元组态页面的实时计算频率;所述计算机资源约束条件,是指确保超实时的计算负荷在分散处理单元可接受的计算裕度之内;
上述的分散处理单元超实时计算方法,具体内容包括如下步骤:第一步,在分散处理单元中加入超实时指令信息,针对全局或者本位超实时计算以及是否并行计算定义关键字,当设定关键字后,所针对的分散处理单元即遵照全局或者本位超实时计算以及是否并行计算执行超实时配置处理;
所述超实时配置处理,针对全局超实时计算而言,是为整个分散处理单元均遵照频率可调的统一频率实行超实时计算;针对本位超实时计算而言,是为分散处理单元内的不同页面和不同模块具有各自频率可调的频率实行超实时计算;
第二步,对需要进行超实时计算的算法模块进行改造,使得算法模块具备超实时计算的能力;具体内容为:通过在模块计算中心建立计算循环Ci协调页面计算周期Tp和模块计算周期Tm,使得模块计算中心能够适应于实时与超实时计算的频率需求,当协调指令为1时为实时计算状态,当协调指令为0时进入超实时计算状态;
在模块计算中心建立计算循环Ci是指模块计算中心根据采集的协调指令和页面计算周期Tp以及模块计算周期Tm进行分析后所建立的计算循环,模块计算中心引导原计算流程在该计算循环内完成,通过计算循环完成模块积分时间与页面计算周期之间的匹配并且通过模块计算周期完成协调;
第三步,对分散控制系统组态软件进行调整,针对页面计算周期和模块计算周期对应地纳入或者扩充周期设定参数;具体内容为:在页面属性设置中在原有周期参数之外扩充一部分计算周期参数,扩充时为了保证兼容性令补充的计算周期在设置项的末尾。
2.根据权利要求1所述的分散处理单元超实时计算方法,其特征在于,当全局或者本位超实时配置不符合一致性原则时,分散处理单元自动进行越级调整,以使得一致性原则得到满足;所述一致性原则是指全局性超实时计算模式下整个分散处理单元均遵照频率可调的统一频率实行超实时计算,本位超实时计算模式下本位超实时组内的超实时具有全局超实时的特征。
3.根据权利要求1所述的分散处理单元超实时计算方法,其特征在于,模块计算中心接收到协调指令为1时判定处于实时计算模式,则令Ci=Max(Tp/Tm,1)且令Tp/Tm≥1并引导进入计算循环,其中Max为求取最大整数的函数,Tp为页面计算周期,Tm为模块计算周期;模块计算中心接收到协调指令为0时判定处于超实时计算模式,则令Ci=1,同时令Tm/Tp≥1,即Tp/Tm<1,计算循环自动蜕化为一次计算;模块计算中心给定模块积分时间为Tm/1000.0/
3600.0,所述积分时间为时域仿真转化为差分方程后的计算积分时间。
4.根据权利要求3所述的分散处理单元超实时计算方法,其特征在于,当页面计算周期Tp和模块计算周期Tm的手工设定不满足预置条件时,组态时由组态软件发出报警,计算过程中由分散处理单元发出报警,当设置严重失当时由分散处理单元的负荷中心发出错误信息,所述分散处理单元的负荷中心为分散处理单元监测自身运算负荷的部分,具有实时性的特征;当处于全局超实时状态时,模块本位计算中心的设定被超控替换;在本位超实时计算模式中,本位超实时计算所属模块的计算中心设定不符合一致性原则时也被超控替换,替换原则由分散控制系统设定。
5.根据权利要求1所述的分散处理单元超实时计算方法,其特征在于,页面计算周期的档位与模块计算周期的档位不仅存在一定的重合性,也存在使用有效区间,即便在模块计算中心内部通过计算循环进行时间的协调,也需要避开一些非合理区间,避免给超实时计算带来负担或者引发不正确的计算过程;当页面计算周期过大而模块计算周期过小,容易引导不必要的计算机等待时间导致浪费,与此同时模块计算中心也会判定设置失当进而给出警示;当页面计算周期过小而小于模块计算周期,会引发计算失序,并且也不符合计算由分散处理单元导入页面继而从页面导入模块的设计原则,计算中心也会判定设置失当进而给出警示。
说明书 :
分散处理单元超实时计算方法
技术领域
背景技术
标度变换、报警限值检查、操作记录与顺序事件记录、逻辑控制等方面能力较强,也具有一
定的计算能力,因此成为自动控制领域内承担计算任务的基本设备。出于分散处理单元定
时扫描与广播的特性,只能以墙钟时刻为单位部署逻辑运算任务,不能自由地设置超实时
计算周期。考虑到IO与通讯通道、以及扫描与汇总等任务的天然时延,分散处理单元最小扫
描周期一般不低于50ms,而智能应用往往需要在μs级内完成数个复杂计算,可见分散处理
单元的算力极度受限。此外,构建于平行系统基础上的智能应用,如平行控制、平行安全等,
需要进行大量的仿真计算,充分利用虚拟世界对真实世界进行模拟、演练、预测等,仿真计
算步长的固有特性与分散处理单元扫描周期的固有特性也产生矛盾。
题。
专利,例如专利《基于MPI的电网仿真实时并行计算平台及应用》(申请号
CN200910244247.7,授权号CN101794993B)引入实时操作系统RTLinux建立上层电网仿真应
用模块;专利《基于超实时仿真的电网在线稳定决策控制系统及控制方法》(申请号
CN201310035336.7,授权号CN103162219B)基于超实时仿真建立的电网在线稳定决策控制
系统;专利《一种电力系统混合仿真故障统一处理的方法》(申请号CN2015101319339.6,授
权号CN1048665843B)利用机电暂态超实时仿真程序TH‑SLBLT建立的一种电力系统混合仿
真。
加模型预测能力,从而使得平行控制、平行安全等工业控制智能应用可以基于分散处理单
元展开。
发明内容
行本位或全局的超实时的适应性改造,使得工业控制领域普遍应用的分散处理单元在计算
机资源约束的条件下具有超实时计算的能力,为基于分散处理单元展开的工业控制智能应
用提供技术支撑,使得诸如平行控制、平行安全等工业控制智能应用可以基于分散处理单
元部署并且展开。
面扫描周期、模块计算周期与循环的设定方面进行超实时计算改造,使得分散处理单元在
计算机资源约束的条件下具有超实时计算能力。
超实时完成计算任务。本发明可以使得分散处理单元能够适应平行控制、平行安全等工业
控制智能应用的超实时计算需求。
计算能力,分散处理单元的组态是由页面组成的,页面是由不同的功能性模块组成的。沿袭
传统的分散处理单元的定义为DPU,定义主控分散处理单元为MPU,定义进行并行计算部署
的分散处理单元为PPU。主控分散处理单元为MPU是执行主控任务的DPU,并行分散处理单元
PPU是执行并行计算任务的DPU。主控分散处理单元MPU与并行分散处理单元PPU都是分散处
理单元DPU的并行拓展。主控分散处理单元MPU可以有冗余的辅控节点,并行分散处理单元
PPU一般无冗余节点。
组根据分散处理单元不同功能需求而设置的频率,它是分散处理单元的生物钟,决定了各
种功能的实现周期,可以事先设定并且灵活修改。所述全局是指整组频率,所述本位是指个
别组的频率或者组内部分的频率。本发明中的全局超实时特指整个分散处理单元均遵照频
率可调的统一频率实行超实时计算,本发明中的本位超实时特指分散处理单元内的不同页
面和不同模块具有各自频率可调的频率实行超实时计算。全局超实时与本位超实时是按照
工业控制智能应用的需求而划定的,对于同构类型的计算需求一般采用全局超实时,对于
主从类型的计算需求一般采用本位超实时。在本位超实时计算模式中,组内的各个部分如
页面和模块等,也适用一致性原则,即本位超实时组内的超实时具有全局超实时的特征。
周期内页面依照定序被唤醒并且计算一次,所述计算包括前述数据采集、标度变换、报警限
值检查、操作记录与顺序事件记录、逻辑控制等功能。页面计算周期有5‑5000ms共12档配
置。本发明中扫描周期、计算周期、计算频率的概念类似,扫描周期侧重于分散处理单元的
调度,计算周期与计算频率侧重于页面或者模块自身的设定,周期与频率互为倒数。
期保持一致,每个组态页面被周期性唤醒后,其中的每个模块依照定序被唤醒并且计算一
次,所述计算包括前述数据采集、标度变换、报警限值检查、操作记录与顺序事件记录、逻辑
控制等功能。本发明中的模块计算周期可以自行定义,即模块具有自身的计算周期,当模块
被唤醒时按照自身的计算频率进行计算,从而加快模块自身的运算。页面内模块间的数值
传递仍然按照页面计算频率进行。模块计算周期有5μs‑500ms共20档配置,其中部分档位与
页面计算周期重合。
行循环计算,完成积分或者迭代等计算任务。
来压力,部分页面或者模块不能在给定的周期内完成计算并且输出,整体计算的准确性就
会受到难以估量的影响。为了保证分散处理单元整体计算能够顺利进行,必须对超实时的
极端负荷进行预测,确保超实时的计算负荷在分散处理单元可以接受的计算裕度之内,称
为计算机资源约束条件。
关键字后,所针对的分散处理单元即遵照全局或者本位超实时计算以及是否并行计算执行
超实时配置处理;
为分散处理单元内的不同页面和不同模块具有各自频率可调的频率实行超实时计算。
下整个分散处理单元均遵照频率可调的统一频率实行超实时计算,本位超实时计算模式下
本位超实时组内的超实时具有全局超实时的特征。
模块进行命令解析,接令后再进行处理。所述数据总线为分散处理单元的软件总线,通过端
口与网络通讯的方式在分散控制系统的网络上进行数据的分发与集成,为本领域的公知常
识。
求,当协调指令为1时为实时计算状态,当协调指令为0时进入超实时计算状态。
模块的每一个实例均有效,模块本位计算中心仅对模块的当前实例有效。模块全局计算中
心的设置对模块本位计算中心的设置有超控的作用,当处于全局超实时状态时通过这个超
控作用来对模块本位计算中心的设置进行强制修改。
引导原计算流程在该计算循环内完成,通过计算循环完成模块积分时间与页面计算周期之
间的匹配并且通过模块计算周期完成协调,使得模块计算既能满足实时计算的要求,也能
满足超实时计算的要求。由于亚实时计算的调度与此同理,同在本发明的技术框架之内,本
发明不作详细论述。
面计算周期,Tm为模块计算周期。具体地,模块计算中心接收到协调指令为0时判定处于超
实时计算模式,则令Ci=1,同时令Tm/Tp≥1,即Tp/Tm<1,计算循环自动蜕化为一次计算。具
体地,模块计算中心给定模块积分时间为Tm/1000.0/3600.0,所述积分时间为时域仿真转
化为差分方程后的计算积分时间。进一步地,当页面计算周期Tp和模块计算周期Tm的手工
设定不满足前述预置条件时,组态时由组态软件发出报警,计算过程中由分散处理单元发
出报警,当设置严重失当时由分散处理单元的负荷中心发出错误信息,所述分散处理单元
的负荷中心为分散处理单元监测自身运算负荷的部分,具有实时性的特征。更进一步地,当
处于全局超实时状态时,模块本位计算中心的设定被超控替换。更进一步地,在本位超实时
计算模式中,本位超实时计算所属模块的计算中心设定不符合一致性原则时也被超控替
换,替换原则由分散控制系统设定。
避开一些非合理区间,避免给超实时计算带来负担或者引发不正确的计算过程。具体地,当
页面计算周期过大而模块计算周期过小,容易引导不必要的计算机等待时间导致浪费,与
此同时模块计算中心也会判定设置失当进而给出警示。具体地,当页面计算周期过小而小
于模块计算周期,会引发计算失序,并且也不符合计算由分散处理单元导入页面继而从页
面导入模块的设计原则,计算中心也会判定设置失当进而给出警示。
数、内部参数、输出参数的设定,所述IPO参数的设定不变是指IPO参数的个数和排列顺序不
发生改变,在IPO参数的设定不变的前提下,组态页面中各个模块之间的连接关系不变,因
而组态在本身不受到影响的前提下实现了超实时计算功能。
一般为50‑5000ms共计8档周期,增设5、10、20、25ms等共计4档周期。具体地,在模块属性设
置中增加计算周期参数,典型地,模块计算周期为5μs‑500ms共计20档配置;更详尽地,针对
建成项目中的建成模块本身不具备周期参数设定的,通过算法模块预留特性项进行填写,
具体地如利用模块DWORD型参数高低位进行排列式综合使用等。
以及逻辑组态,兼容原有实时计算模式,分散处理单元可以在全局性或者本位性的超实时
计算模式下运行,提高了分散处理单元的计算效率,使得智慧能源技术的多种新兴智能应
用可以基于分散处理单元部署并且展开。
附图说明
具体实施方式
表、网络广播包等完整就位的基础上实施。
例提供的超实时计算调度流程示意图。
时完成计算任务。具体步骤如下:
关键字后,所针对的分散处理单元即遵照全局或者本位超实时计算以及是否并行计算执行
超实时配置处理;
于页面计算周期是分散处理单元调度的周期,为了确保页面内最复杂的计算能够顺利完
成,一般该周期不会设置过小,以免产生调度失效,更明确地,如果页面调度周期小于页面
中最复杂模块计算时间或者页面中所有模块的计算时间,那么下一个调度指令到达时上一
个调度尚未完成,下一次的计算起点为上一次的中间过程而非终点,容易产生不可预知的
计算结果。本发明增设5、10、20、25ms等共计4档周期,这个增设基本符合对当前工业控制智
能应用计算量的预期,未来随着计算机硬件能力增强以及工业控制智能应用在人工智能方
向的进一步深入,可以再行增加更快的页面计算周期。小结性地,分散处理单元具有5‑
5000ms共计12档页面计算周期,如图1中纵轴所示。
致,每个组态页面被周期性唤醒后,其中的每个模块依照定序被唤醒并且计算一次。本发明
中的模块计算周期可以自行定义,即模块具有自身的计算周期,当模块被唤醒时按照自身
的计算频率进行计算,从而加快模块自身的运算。进一步地,页面内模块间的数值传递仍然
按照页面计算频率进行。更明确地,本发明中扫描周期、计算周期、计算频率的概念类似,扫
描周期侧重于分散处理单元的调度,计算周期与计算频率侧重于页面或者模块自身的设
定,周期与频率互为倒数。
确保本位中所有计算频率一致时,超控设置会旁路人工选择。
速多维度攻防演练等功能需求,由于模块计算周期是模块计算中心完成指定计算的时间周
期,因此在模块计算周期的选择上必须确保模块计算能够顺利完成,以免产生调度失效,更
明确地,如果模块计算周期设置小于模块计算实际所需要的计算时间,那么下一个模块计
算调度指令到达时上一个调度尚未完成,下一次的计算起点为上一次的中间过程而非终
点,容易产生不可预知的计算结果。与此同时,模块计算周期也不宜设置自过大甚至超过页
面计算周期,否则与超实时计算的设计原则也不相符合。小结性地,分散处理单元具有5μs‑
500ms共计20档页面计算周期,如图1中横轴所示。
含在模型预测本身的算法设计中,不在本发明详述的范围内。
模块计算中心内部通过计算循环进行时间的协调,也需要避开一些非合理区间,避免给超
实时计算带来负担或者引发不正确的计算过程。
浪费;或者具体地将积分时间设置过小而引导计算中心进行特别微小步长的仿真积分,由
于页面扫描时间不与特别微小的模块计算时间同步而使得仿真中间过程并不对外披露,也
导致机时的浪费。具体地,模块计算中心会判定设置失当进而给出警示,如图1左上含x标识
的部分。
于页面中最复杂模块计算时间或者页面中所有模块的计算时间,那么下一个调度指令到达
时上一个调度尚未完成,下一次的计算起点为上一次的中间过程而非终点,容易产生不可
预知的计算结果,或具体如模块计算周期设置小于模块计算实际所需要的计算时间,那么
下一个模块计算调度指令到达时上一个调度尚未完成,下一次的计算起点为上一次的中间
过程而非终点,容易产生不可预知的计算结果。模块计算中心也会判定设置失当进而给出
警示,如图1右下含x标识的部分。
需要进行计算频率的估算,既要防止机时的浪费也要防止计算的失序,这些内容属于本发
明的延展性研究内容,不在本发明的叙述范围内。更具体地,图1中标识o和标识v的部分为
所述理论合理的页面计算时间与模块计算时间的有效搭配,其中标识o的部分页面计算时
间与模块计算时间相等,这意味着计算实质性地为实时计算,也可以看作是超实时计算的
特例。
程。当超实时计算开始后直到超实时计算的结束,过程中超实时计算可以被中断或者终止,
也可以被继续。中断、继续、终止等干预没有绘制在图2中。
个分散处理单元的基本信息如表述页面和表述模块的数据结构等。所述倍率是指基本设定
中规定了基本频率后,通过条件基本频率的倍数来获得实际需要的计算频率。进一步地,配
置信息初始存在于磁盘文件或者操作系统注册表中,读取过程完成后这些信息被赋值到分
散控制系统的指定变量中,通过改变这些变量的值可以改变配置信息,修改后的配置信息
可以被更新到磁盘文件或者操作系统注册表中。
常是分离的,一般不会出现两种性质的计算同时存在的应用需求,应该注意到在本位性超
实时计算中是包含部分全局性要求的,因此如果新的智能应用出现了综合性的超实时计算
需求,在本发明内容没有进一步升级的前提下,优先归类于本位性超实时计算模式。
线上挂载的所有分散处理单元进行逐个扫描,所述扫描为配置性扫描而非计算性扫描。所
有挂载的分散处理单元既包括分散处理单元的各个实体,也包括开设在空闲资源上的虚拟
分散处理单元。对冗余的分散处理单元一般以主控节点为对象,对并行部署的分散处理单
元由步骤320及其之后的步骤详述。
个扫描,所述扫描为配置性扫描而非计算性扫描。由于是非计算性扫描,一般不严格按照页
面的扫描顺序而是以逻辑顺序进行,作为扫描中的一个重要信息,页面的计算周期Tp在步
骤150中获取。所述页面计算周期即分散处理单元主导的页面扫描周期,在每个扫描周期内
页面依照定序被唤醒并且计算一次,包括数据采集、标度变换、报警限值检查、操作记录与
顺序事件记录、逻辑控制等功能。进一步地,本发明中扫描周期、计算周期、计算频率的概念
类似,扫描周期侧重于分散处理单元的调度,计算周期与计算频率侧重于页面或者模块自
身的设定,周期与频率互为倒数。进一步地,页面的计算时间是可以人工修改的,在没有越
级调整的情形下,人工修改所触发的提示信号会触发分散处理单元重新进行遍历工作。
扫描,所述扫描为配置性扫描而非计算性扫描。由于是非计算性扫描,一般不严格按照模块
的扫描顺序而是以逻辑顺序进行,模块的计算时间Tm被获取,作为一致性检查的重要依据。
所述模块计算周期即分散处理单元主导的模块扫描周期,在每个扫描周期内页面依照定序
被唤醒并且计算一次,包括数据采集、标度变换、报警限值检查、操作记录与顺序事件记录、
逻辑控制等功能。进一步地,模块的计算时间是可以人工修改的,在没有越级调整的情形
下,人工修改所触发的提示信号会触发分散处理单元重新进行遍历工作。
计算模式而言,整个分散处理单元均遵照频率可调的统一频率实行超实时计算,对于本位
超实时计算而言,分散处理单元内的不同页面和不同模块具有各自频率可调的频率实行超
实时计算。进一步地,全局超实时与本位超实时是按照工业控制智能应用的需求而划定的,
对于同构类型的计算需求一般采用全局超实时,对于主从类型的计算需求一般采用本位超
实时。进一步地,在本位超实时计算模式中,组内的各个部分如页面和模块等,也适用一致
性原则,即本位超实时组内的超实时具有全局超实时的特征。更具体地,一致性检查合格的
进入步骤190,否则进入步骤180。
所有计算频率一致时,超控设置旁路人工选择,将页面计算周期或者模块计算周期自动设
置到一致的计算频率。所述一致的计算频率是由配置信息初始预设的,也可以是在线修改
的,无论预设或者修改,配置信息具有唯一性。进一步地,当配置的计算频率被不合理配置
时,分散处理单元的负荷监测或者操作员站/工程师站的监控画面出现依据事先设定条件
触发的报警提示。
的计算模式可以在实时与超实时计算模式中准确地进行切换。
环节并无二致,所不同的是其中涉及到超实时计算的算法模块进行了超实时改造,此不详
述。
各自不同的计算周期,从而适应于不同的工业控制智能应用的需要。在本位超实时计算模
式中,并行计算是比较典型的模式,可以用来描述本发明的典型实施案例,其典型性在于并
行计算中存在主控节点与并行节点,并行节点属于典型的同构型计算模式,而主控节点与
并行节点的组合属于典型的主从型计算模式。
都有全局数据总线上唯一的节点号,用于标识该分散处理单元及其所属的测点。所述并行
节点状态是指被定义为并行节点的分散处理单元属性,包括该PPU的从属组别、在并行分组
中的序号、自有数据区等属性。所述并行节点状态是指并行节点的实际运行状态,包括计
算、闲置、中断、错误等。所述计算指并行节点处于运行过程,所述闲置指并行节点处于闲置
状态,所述中断指并行阶段的计算过程正在被暂停,暂停的原因包括计算输入的调整、计算
方式的调整、外部数据的比对和补充等,所述错误是指并行节点发生错误,包括宕机、死循
环、高负载、通讯断路、未知等非正常状态。
输出。所述扫描是由组态页面根据设定的模块扫描序号而有序进行的。
220、步骤380和步骤390)。
是指基本设定中规定了基本频率后,通过条件基本频率的倍数来获得实际需要的计算频
率。进一步地,本发明以一组并行计算单元为例进行实施例的阐述,当分散控制系统包含了
数组并行计算单元时,通知以组别的方式进行,其原理与单组并行计算单元相同;更进一步
地,后叙的并行单元超实时调度原理也相同,不再详述,本实施例中默认均指单组并行单元
的超实时计算。此外进一步地,主控节点对并行节点超实时倍率的通知是以系统消息的方
式进行的,各个并行节点接获系统消息后,经过解析获得本节点的指令。更进一步地,并行
节点超实时的调度倍率可以在线修改。
并行节点完成了前序计算任务,正处于待命的状态中。并行单元的待命状态集中反馈到主
控单元,由主控单元进行计算任务分配。当并行单元接获主控单元指令后发生异常情况如
中断、故障等,其反馈步骤380,可以刺激主控单元重新进行任务的分配,当并行单元由于死
机的原因不能发送反馈信息时,依赖于主控单元对并行单元的状态轮询来感知。如果并行
单元的状态正常,则进入步骤390执行计算任务。
告本轮并行计算结束。如若处于设计与调试阶段则将控制权交还给控制台,如若在线运行
阶段则等待下一次计算触发。
理和实质的前提下,可以对这些实施方式做出多种变更或修改,因此,本发明的保护范围由
所附录权利要求书限定。