System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种工业控制器的基础算法和控制逻辑程序在线更新方法及系统技术方案_技高网

一种工业控制器的基础算法和控制逻辑程序在线更新方法及系统技术方案

技术编号:40544077 阅读:8 留言:0更新日期:2024-03-05 19:00
本发明专利技术公开了一种工业控制器的基础算法和控制逻辑程序在线更新方法及系统,控制器在线接收下发需更新的功能块程序,首先将功能块程序中基础算法程序部分动态加载到内存,然后根据功能块程序中控制逻辑程序部分将基础算法程序动态实例化,最后更新系统中功能块任务的调度序列,并在下一个任务调度周期直接生效使用,实现了工业控制器功能块程序的动态更新和在线生效执行。

【技术实现步骤摘要】

本专利技术属于工业控制器,具体为一种工业控制器的基础算法和控制逻辑程序在线更新方法及系统


技术介绍

1、工业控制器是控制工业生产过程、运行特定逻辑和算法程序的处理器系统,对可靠性和实时性都有很高的要求。工业控制器一般包括数据采集、逻辑和算法计算和控制输出等主要模块。为了满足某些工控领域的强实时要求,通常要求从数据采集到生产设备受到控制作用的时间尽可能短,这就对工业控制器的控制响应周期提出硬指标,例如毫秒级控制响应。同时,工业控制器通常控制着工业过程的运行,如果控制器自身发生故障,轻则使生产停顿,重者可能产生灾难性的后果,所以一般工业控制器均配置双机冗余系统,提高控制器系统的可靠性。

2、工业控制器自身运行程序存在更新需求,一方面不同工业应用场景,根据被控对象的过程特点,工业控制器的逻辑和算法程序需要量身定做,比如需要开发新的基础算法程序;另一方面,即使面对同一工业场景和被控对象,当被控对象的运行模式发生改变时,工业控制器需要调整运行控制逻辑以适应新的控制策略。一般地,面向大型分布式控制系统的工业控制器大多采用功能块编程语言,即控制器基础算法和控制逻辑对应程序中功能块,故工业控制器的运行程序更新需求即为控制器的功能块程序更新需求。

3、工业控制器的功能块程序更新过程对更新时间存在要求,一般要求尽量缩短程序更新时间、减少控制器退出运行时间,保证控制器双机冗余的可用性。同时对更新的影响范围也存在要求,当单个控制器同时控制多个被控对象时,要求更新单个被控对象的逻辑算法时不影响其它被控对象的算法运行。

>4、申请号为201610878434.0的中国专利申请,公开了一种用于对正在控制工业过程的控制程序进行更新的系统,可以更新的是依赖于操作系统的可加载库和内联代码的任何控制器行为(包括指令)。通过对不同的部件打补丁过程,如库打补丁和内联打补丁,在不同控制器程序版本之间进行更新。

5、申请号为201710369592.8的中国专利申请,公开了一种通过网络在线更新程序的工业控制板及其更新方法,该方法通过网络将应用程序下装到工业控制器,直接替换控制器程序存储区域中应用程序目标文件,并自动重启控制器。控制器上电后从程序存储区域中加载更新后的应用程序,实现通过网络远程操作更新工业控制器应用程序、断电重启后生效。

6、申请号为201910968572.1的中国专利申请,公开了一种基于组态差异识别的dcs控制器组态更新系统及方法,该方法通过组态配置文件定义功能块之间的组合逻辑关系,支持下发组态配置文件到工业控制器,控制器解析并使用新的组态配置文件,改变控制器中功能块程序的执行流程,达到控制器控制逻辑在线更新的效果。

7、上述公开的更新方法或系统存在以下缺点:

8、(1)申请号为201610878434.0的中国专利申请,采用操作系统的动态库装载机制实现更新库程序的在线更新,因为操作系统任务调度时机的不确定性以及不同优先级任务之间相互抢占问题,一般基于通用操作系统的任务调度周期达100ms级别,且不能保证严格等间隔周期调度功能块程序执行,无法满足强实时工业控制场景要求。

9、(2)申请号为201710369592.8的中国专利申请,通过更新控制器中固化存储的应用程序,控制器需断电重启才能实现应用程序更新生效,因设备上电初始化的时间达到秒级甚至数十秒级,在更新期间,工业控制器必须退出双机冗余运行模式,极大地增加了在控制器程序更新期间如果出现单机故障可能导致被控系统失去保护,不能正常工作的风险。

10、(3)申请号为201910968572.1的中国专利申请,通过更新组态配置文件,改变已有控制块程序之间的逻辑关系和执行时序实现控制器程序更新,无法实现基础算法程序对应的控制块自身程序的更新,不能满足因运行故障需升级已有控制块自身程序,或者需扩展控制器中基础算法程序的应用场景。


技术实现思路

1、专利技术目的:为解决应用于强实时控制场景的工业控制器功能块程序无法实现在线更新的问题,本专利技术提出一种工业控制器的基础算法和控制逻辑程序在线更新方法及系统,控制器在线接收下发需更新的功能块程序,首先将功能块程序中基础算法程序部分动态加载到内存,然后根据功能块程序中控制逻辑程序部分将基础算法程序动态实例化,最后更新系统中功能块任务的调度序列,并在下一个任务调度周期直接生效使用,实现了工业控制器功能块程序的动态更新和在线生效执行。

2、技术方案:一种工业控制器的基础算法程序在线更新方法,每个所述基础算法程序都唯一对应一个功能块库;

3、所述功能块库包括多个功能块,每个所述功能块均包括功能块模板名、功能块对外数据、对数据的处理函数,所述对外数据包括:输入信息、输出信息、参数信息和控制信息,所述对数据的处理函数包括:构造函数和任务函数,所述构造函数用于功能块数据的内存分配,以及对应算法的内部数据的初始化处理,实现功能块自身的实例化;所述任务函数用于功能块具体算法逻辑的执行;

4、所述基础算法程序包括功能块数量、每个功能块的描述信息和可执行指令数据;每个所述功能块的描述信息包括功能块模板名、可执行指令数据区的长度、构造任务在可执行指令数据区中的相对偏移地址、运行任务在可执行指令数据区中的相对偏移地址;所述可执行指令数据为至少包括构造任务、运行任务对应函数的二进制可执行代码;

5、基础算法程序在线更新方法包括以下步骤:

6、步骤1:解析更新下发的基础算法程序,得到基础算法程序对应功能块库的功能块;

7、步骤2:根据每个功能块的可执行指令数据区的长度和在基础算法程序中的相对偏移地址,将可执行指令数据区以功能块为单位加载到指定内存空间,得到可执行指令数据区中构造任务和运行任务的加载偏移首地址;

8、步骤3:根据构造任务和运行任务在可执行指令数据区中的相对偏移地址,结合加载偏移首地址,修正功能块的构造任务和运行任务的内存调用地址;

9、步骤4:根据功能块模板名,得到该功能块的构造任务和运行任务的符号名称,将构造任务和运行任务的符号名称和内存调用地址添加到系统符号地址映射表;

10、步骤5:重复步骤2到步骤4,直到所有功能块中的构造任务和运行任务的符号名称和内存调用地址均添加到系统符号地址映射表,完成基础算法程序在线更新,功能块中的运行任务对应的可执行指令数据可在线被调用执行。

11、进一步的,所述输入信息包括:通道序号、通道名称、数据类型;

12、所述输出信息包括:通道序号、通道名称、数据类型;

13、所述参数信息包括:通道序号、参数名称、数据类型;

14、所述控制信息包括:通道序号、控制名称、数据类型。

15、进一步的,所述功能块按照以下编程规范编译得到:

16、编程规范一、功能块之间不能相互直接调用函数;

17、编程规范二、功能块之间不能相互直接引用对方的变量;

18、本文档来自技高网...

【技术保护点】

1.一种工业控制器的基础算法程序在线更新方法,其特征在于:

2.根据权利要求1所述的一种工业控制器的基础算法程序在线更新方法,其特征在于:所述输入信息包括:通道序号、通道名称、数据类型;

3.根据权利要求1所述的一种工业控制器的基础算法程序在线更新方法,其特征在于:所述功能块按照以下编程规范编译得到:

4.一种工业控制器的基础算法程序在线更新系统,其特征在于:包括:

5.一种工业控制器的控制逻辑程序在线更新方法,其特征在于:

6.根据权利要求5所述的一种工业控制器的控制逻辑程序在线更新方法,其特征在于:每条连线的输出信号索引、输入信号索引的格式为:控制逻辑程序的序号+功能块序号+输出/输入通道序号;

7.根据权利要求5所述的一种工业控制器的控制逻辑程序在线更新方法,其特征在于:所述系统任务调度序列包括任务调度等级、子任务调度序列数目和每个子任务调度序列信息;

8.一种工业控制器的控制逻辑程序在线更新系统,其特征在于:包括:

9.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至3任意一项所述的一种工业控制器的基础算法程序在线更新方法的步骤或实现权利要求5至7任意一项所述的一种工业控制器的控制逻辑程序在线更新方法的步骤。

10.一种存储介质,其特征在于,所述存储介质存储有程序在线更新程序,所述程序在线更新程序被至少一个处理器执行时实现权利要求1至3任意一项所述的一种工业控制器的基础算法程序在线更新方法的步骤或实现权利要求5至7任意一项所述的一种工业控制器的控制逻辑程序在线更新方法的步骤。

...

【技术特征摘要】

1.一种工业控制器的基础算法程序在线更新方法,其特征在于:

2.根据权利要求1所述的一种工业控制器的基础算法程序在线更新方法,其特征在于:所述输入信息包括:通道序号、通道名称、数据类型;

3.根据权利要求1所述的一种工业控制器的基础算法程序在线更新方法,其特征在于:所述功能块按照以下编程规范编译得到:

4.一种工业控制器的基础算法程序在线更新系统,其特征在于:包括:

5.一种工业控制器的控制逻辑程序在线更新方法,其特征在于:

6.根据权利要求5所述的一种工业控制器的控制逻辑程序在线更新方法,其特征在于:每条连线的输出信号索引、输入信号索引的格式为:控制逻辑程序的序号+功能块序号+输出/输入通道序号;

7.根据权利要求5所述的一种工业控制器的控制逻辑程序在线更新方法,其特征...

【专利技术属性】
技术研发人员:戴欣欣易开楠巴超张卯安张连生顾益庆朱彬彬张成彬彭文才
申请(专利权)人:国电南瑞南京控制系统有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1