[发明专利]控制系统及控制方法在审
申请号: | 202210201679.5 | 申请日: | 2022-03-03 |
公开(公告)号: | CN114661291A | 公开(公告)日: | 2022-06-24 |
发明(设计)人: | 李响;陈宏君;文继锋;张磊;周强;徐卫峰;曾凯;熊蕙 | 申请(专利权)人: | 南京南瑞继保电气有限公司;南京南瑞继保工程技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/65;G06F8/70;G06F12/02 |
代理公司: | 北京律和信知识产权代理事务所(普通合伙) 11446 | 代理人: | 何春晖;张莎莎 |
地址: | 211102 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 控制系统 控制 方法 | ||
本发明提供了一种控制系统,所述控制系统的程序存储区分为两个分区,所述控制系统包括:编译单元,配置成对待更新的子程序进行编译,并发送下载请求及所述子程序的标识信息;通信单元,与所述编译单元相通信,配置成接收到所述下载请求后,根据所述子程序的标识信息确定所述子程序当前运行的分区,将编译后的子程序存储到另一分区,并在所述另一分区加载所述编译后的子程序,发送可更新信号;实时任务单元,与所述通信单元相通信,配置成实时执行控制程序,并在接收到所述可更新信号后,切换所述控制程序的指针地址。本发明所提供的控制系统,实现了在不中断实时任务执行的同时,完成待更新子程序的存储、加载和更新,提高了控制系统的运维效率。
技术领域
本申请涉及嵌入式控制器技术领域,尤其涉及一种包括可编程控制器的控制系统及应用可编程控制器进行工业控制的方法。
背景技术
目前,符合IEC61131-3标准的语言已经在工业控制领域广泛使用,目前有解释执行和编译执行两种运行方案。解释执行可移植性强,已有文献提出了解释型文本在线更新方案,但由于运行效率低,不适用于实时性高的场景。编译执行运行效率高,也有文献提出了转换为C语言编译,采用组件加载的方案,但是嵌入式Linux操作系统提供的组件加载、卸载函数不支持内存方式更新,只支持文件方式更新,并且组件在运行过程中,不能替换,必须先关闭卸载运行的组件文件,再更新加载,由于加载卸载组件的系统服务耗时长,无法在1个短实时周期任务内完成,需要暂停当前运行的任务,而实时控制系统往往需要在线不停机运行。
发明内容
有鉴于现有技术的至少一个缺陷,本发明提供了一种控制系统,包括:
程序存储区,包括至少两个分区;
编译单元,配置成对待更新的子程序进行编译,并发送下载请求及所述子程序的标识信息;
通信单元,与所述编译单元相通信,配置成接收到所述下载请求后,根据所述子程序的标识信息确定所述子程序当前运行的分区,将编译后的子程序存储到在所述至少两个分区中与所述当前运行的分区不同的另一分区,并在所述另一分区加载所述编译后的子程序,发送可更新信号;
实时任务单元,与所述通信单元相通信,配置成实时执行控制程序,并在接收到所述可更新信号后,切换所述控制程序的指针地址。
根据本发明的一个方面,其中所述实时任务单元在接收到所述可更新信号后,被配置为:
切换调用所述子程序的函数指针地址;
切换所述子程序的数据存储区指针地址;
其中,所述控制系统的数据存储区根据所述控制程序的子程序的需求进行分配。
根据本发明的一个方面,其中所述实时任务单元进一步配置成:
当更新前后的所述子程序对数据存储区的需求相同时,将所述编译后的子程序的数据存储区指针地址更改为原子程序的数据存储区指针地址。
根据本发明的一个方面,其中所述实时任务单元进一步配置成:
当更新前后的所述子程序对数据存储区的需求不同时,将原子程序的数据存储区存储的有效数据复制至所述编译后的子程序的数据存储区。
根据本发明的一个方面,其中所述实时任务单元进一步配置成:
完成切换所述控制程序的指针地址后,发送指针地址切换完成信号,所述通信单元进一步配置成:
接收到所述指针地址切换完成信号后,重新标记所述子程序当前运行的分区,释放原子程序的句柄,并将所述编译后的子程序复制到原运行分区。
根据本发明的一个方面,其中所述编译单元进一步配置成:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京南瑞继保电气有限公司;南京南瑞继保工程技术有限公司,未经南京南瑞继保电气有限公司;南京南瑞继保工程技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210201679.5/2.html,转载请声明来源钻瓜专利网。