CN110609698A - 控制算法单元在线升级方法及装置 - Google Patents
控制算法单元在线升级方法及装置 Download PDFInfo
- Publication number
- CN110609698A CN110609698A CN201910730046.1A CN201910730046A CN110609698A CN 110609698 A CN110609698 A CN 110609698A CN 201910730046 A CN201910730046 A CN 201910730046A CN 110609698 A CN110609698 A CN 110609698A
- Authority
- CN
- China
- Prior art keywords
- control algorithm
- algorithm unit
- unit
- difference information
- data area
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种控制算法单元在线升级方法及装置,包括对控制算法单元的变化进行识别并记录;根据每一个控制算法单元,设置唯一的存储区;根据每次控制算法单元在被引用时,设置唯一的实例数据区,当控制算法单元数据空间发生变化时,为每个实例重新分配一片数据区,生成一张包含若干条控制算法单元差异信息条目的控制算法单元差异信息表;进入下载模式,判断是否有控制算法单元信息表需要下载。在本发明中提供的一种控制算法单元在线升级的方法,解决了现有技术中在线升级控制算法单元时,当控制算法单元数据空间发生变化时无法实现保持现有运行时数据不变的问题;保证现有运行时数据不变,不需要重新调节,无需整体下载。
Description
技术领域
本发明涉及算法控制技术领域,尤其涉及一种控制算法单元在线升级方法及装置。
背景技术
在工业控制领域,特别是过程控制领域中,用户通常使用控制系统厂商提供的组态软件和控制算法模块库,或者使用自己编写的特定控制算法模块,实现符合生产工艺要求的控制策略,下装到控制设备中运行。无论是系统厂商提供的控制算法模块或者用户自己编写的控制算法模块都有升级的需求,但是工业生产往往是一个连续的过程,这就对控制系统提出在线升级需求。
目前,大部分控制系统均宣称支持控制算法的在线升级,但是支持的程度不一样,在工程应用中有一定的限制。例如:要求控制算法模块的数据实例大小不变,输入输出的引脚个数不变等等。
当控制算法模块因为新增功能或者修复缺陷需要功能升级时,要求增加参数或者输入输出引脚,控制组态软件往往会标记出这些算法模块,然后对其进行整体下载,原先设置好的控制参数被初值覆盖,需要重新进行调节。
发明内容
本发明实施例提供一种控制算法单元在线升级方法及装置,解决了现有技术中在线升级控制算法单元时,当控制算法单元数据空间发生变化时无法实现保持现有运行时数据不变的问题。
本发明实施例第一方面提供了一种控制算法单元在线升级方法,可包括:
对控制算法单元的变化进行识别并记录;
根据每一个控制算法单元,设置唯一的存储区;根据每次控制算法单元在被引用时,设置唯一的实例数据区,当控制算法单元数据空间发生变化时,为每个实例重新分配一片数据区,并进行标记,并根据标记结果生成一张包含若干条控制算法单元差异信息条目的控制算法单元差异信息表;
进入下载模式,判断是否有控制算法单元信息表需要下载,若有,则将控制算法单元差异信息表下载到控制设备中,控制设备根据控制算法单元差异信息表执行升级程序。
进一步地,每条差异信息条目包含控制算法单元旧实例数据区地址、新实例数据区地址以及数据长度。
进一步地,对控制算法单元的变化进行识别并记录包括:
当控制算法单元或者用户自定义的控制算法单元升级后,通过控制算法单元描述文件的更新识别出数据空间发生变化的控制算法单元,并对发生变化的控制算法单元进行记录。
进一步地,当控制算法单元数据空间发生变化时,对每个实例重新分配一个实例数据区,并进行标记,并根据标记结果生成一张控制算法单元差异信息表。
进一步地,执行升级程序包括:执行一段控制算法单元升级程序,将控制算法单元旧实例数据区中现有的运行时数据拷贝至控制算法单元新实例数据区中。
本发明实施例第二方面提供了一种控制算法单元在线升级装置,包括:
接口单元,用于对控制算法单元的变化进行识别并记录;
存储区,与变化的控制算法单元一一相对应设置,用于产生包含若干条控制算法单元差异信息条目的控制算法单元差异信息表;
下载单元,根据控制算法单元差异信息表的内容进行对应升级程序下载;
更新单元,根据下载单元内的升级程序进行升级。
进一步地,控制算法单元在线升级装置还包括:
实例数据区,在每一个存储区内部设置有多个,由每次控制算法单元在被引用时生成。
进一步地,实例数据区在控制算法单元数据空间发生变化时会重新生成一个。
进一步地,新生成的实例数据区内置有标记,控制算法单元差异信息表根据内置有标记的实例数据区生成。
进一步地,每条差异信息条目包含控制算法单元旧实例数据区地址、新实例数据区地址以及数据长度。
在本发明中提供的一种控制算法单元在线升级的方法,解决了现有技术中在线升级控制算法单元时,当控制算法单元数据空间发生变化时无法实现保持现有运行时数据不变的问题;保证现有运行时数据不变,不需要重新调节,无需整体下载。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本装置的安装图;
图2是存储区内部的结构部;
图3是控制算法单元在线升级方法的流程图;
图4是控制算法单元差异信息表的示意图;
图5是控制算法单元差异信息条目示意图;
图6是下载模式下的流程示意图;
图7是控制算法单元升级前后的数据示意图;
图8是控制算法单元升级程序的升级流程图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。
在本发明的描述中,需要理解的是,术语“上”、“下”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
对本发明提供的控制算法单元在线升级方法所在的控制系统进行简要说明,参见图1所示,控制软件运行于人机接口装置上,用户根据生产工艺要求在人机接口装置上进行控制策略的搭建,并由控制软件负责将控制策略下装到控制设备中运行。
在所述控制设备中,包括一个控制算法单元运行区,用于保存控制算法单元实例的运行时数据。如图2所示,所述控制算法单元运行区中,包括若干种控制算法单元,每种控制算法单元若干个实例,每个实例对应一个数据区。
如图3-8所示,控制算法单元在线升级方法可以包括以下几个步骤:
S1、识别步骤:控制软件识别发生变化的控制算法单元。
可以理解的是,控制软件安装在接口装置上,当控制软件自带的控制算法单元或者用户自定义的控制算法单元升级后,控制软件通过控制算法单元描述文件的更新识别出数据空间发生变化的控制算法单元。
S2、设置步骤:为发生变化的控制算法单元设置存储区。
可以理解的是,控制设备中,为控制算法单元开辟了一片存储区,控制软件根据特定的算法为每个控制算法单元分配一个数据区。
一种控制算法单元在控制策略中可能被多次引用,每次引用,控制软件为其分配一个实例数据区。当控制算法单元数据空间发生变化时,控制软件为每个实例重新分配一片数据区,并进行标记,并根据标记结果生成一张控制算法单元差异信息表。
控制算法单元差异信息表包含若干条控制算法单元差异信息条目,如图4所示,每条差异信息条目包含控制算法单元旧实例数据区地址、新实例数据区地址以及数据长度,如图5所示。
S3、下载步骤:控制软件进入下载模式后,先判断是否有控制算法单元信息表需要下载,若有,则将控制算法单元差异信息表下载到控制设备,如图6所示。
S4、更新步骤:控制设备根据所述控制算法单元差异信息表,执行一段控制算法单元升级程序,将控制算法单元旧实例数据区中现有的运行时数据拷贝至控制算法单元新实例数据区中,如图7所示。
可以理解的是,控制算法单元升级程序仅在收到所述控制算法单元差异信息表后才运行一次,如图8所示。
下面对本发明实施例提供的控制算法单元在线升级装置进行介绍,可以包括接口单元101、存储区102、下载单元103和更新单元104。
接口单元101,用于对控制算法单元的变化进行识别并记录;
存储区102,与变化的控制算法单元一一相对应设置,用于产生包含若干条控制算法单元差异信息条目的控制算法单元差异信息表;
下载单元103,根据控制算法单元差异信息表的内容进行对应升级程序下载;
更新单元104,根据下载单元内的升级程序进行升级。
存储区102包括:
实例数据区1021,在每一个存储区内部设置有多个,由每次控制算法单元在被引用时生成。实例数据区1021在控制算法单元数据空间发生变化时会重新生成一个。新生成的所述实例数据区内置有标记,控制算法单元差异信息表根据内置有标记的实例数据区生成。
需要说明的是,上述装置将控制算法单元在线升级的过程与上述方法实施例中的描述一致,详细的介绍可以参见上述方法实施例,此处不再赘述。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种控制算法单元在线升级方法,其特征在于,
对控制算法单元的变化进行识别并记录;
根据每一个控制算法单元,设置唯一的存储区;根据每次控制算法单元在被引用时,设置唯一的实例数据区,当控制算法单元数据空间发生变化时,为每个实例重新分配一片数据区,并进行标记,并根据标记结果生成一张包含若干条控制算法单元差异信息条目的控制算法单元差异信息表;
进入下载模式,判断是否有控制算法单元信息表需要下载,若有,则将控制算法单元差异信息表下载到控制设备中,控制设备根据所述控制算法单元差异信息表执行升级程序。
2.根据权利要求1所述的控制算法单元在线升级方法,其特征在于,
每条差异信息条目包含控制算法单元旧实例数据区地址、新实例数据区地址以及数据长度。
3.根据权利要求1所述的控制算法单元在线升级方法,其特征在于,
所述对控制算法单元的变化进行识别并记录包括:
当控制算法单元或者用户自定义的控制算法单元升级后,通过控制算法单元描述文件的更新识别出数据空间发生变化的控制算法单元,并对发生变化的控制算法单元进行记录。
4.根据权利要求1所述的控制算法单元在线升级方法,其特征在于,
当控制算法单元数据空间发生变化时,对每个实例重新分配一个实例数据区,并进行标记,并根据标记结果生成一张控制算法单元差异信息表。
5.根据权利要求1所述的控制算法单元在线升级方法,其特征在于,
所述执行升级程序包括:执行一段控制算法单元升级程序,将控制算法单元旧实例数据区中现有的运行时数据拷贝至控制算法单元新实例数据区中。
6.一种控制算法单元在线升级装置,其特征在于,
所述控制算法单元在线升级装置包括:
接口单元,用于对控制算法单元的变化进行识别并记录;
存储区,与变化的控制算法单元一一相对应设置,用于产生包含若干条控制算法单元差异信息条目的控制算法单元差异信息表;
下载单元,根据控制算法单元差异信息表的内容进行对应升级程序下载;
更新单元,根据下载单元内的升级程序进行升级。
7.根据权利要求6所述的控制算法单元在线升级装置,其特征在于,
所述控制算法单元在线升级装置还包括:
实例数据区,在每一个存储区内部设置有多个,由每次控制算法单元在被引用时生成。
8.根据权利要求6所述的控制算法单元在线升级装置,其特征在于,
所述实例数据区在控制算法单元数据空间发生变化时会重新生成一个。
9.根据权利要求8所述的控制算法单元在线升级装置,其特征在于,
新生成的所述实例数据区内置有标记,所述控制算法单元差异信息表根据内置有标记的实例数据区生成。
10.根据权利要求6所述的控制算法单元在线升级装置,其特征在于,
所述每条差异信息条目包含控制算法单元旧实例数据区地址、新实例数据区地址以及数据长度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910730046.1A CN110609698B (zh) | 2019-08-08 | 2019-08-08 | 控制算法单元在线升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910730046.1A CN110609698B (zh) | 2019-08-08 | 2019-08-08 | 控制算法单元在线升级方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110609698A true CN110609698A (zh) | 2019-12-24 |
CN110609698B CN110609698B (zh) | 2023-03-24 |
Family
ID=68889795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910730046.1A Active CN110609698B (zh) | 2019-08-08 | 2019-08-08 | 控制算法单元在线升级方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110609698B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005038251A (ja) * | 2003-07-16 | 2005-02-10 | Mitsubishi Electric Corp | 分散制御システム、分散制御システム用ソフトウェア設計支援システム |
CN1588324A (zh) * | 2004-08-31 | 2005-03-02 | 浙江中控技术股份有限公司 | 基于控制系统实现在线更新数据的方法 |
WO2007071324A1 (en) * | 2005-12-20 | 2007-06-28 | Telefonaktiebolaget L M Ericsson (Publ) | Generating incremental program updates |
CN101006424A (zh) * | 2004-08-19 | 2007-07-25 | 艾利森电话股份有限公司 | 通用升级体系结构 |
CN101094229A (zh) * | 2007-07-24 | 2007-12-26 | 深圳市融合视讯科技有限公司 | 一种网络应用程序的增量升级系统及升级方法 |
US20100162226A1 (en) * | 2008-12-18 | 2010-06-24 | Lazar Borissov | Zero downtime mechanism for software upgrade of a distributed computer system |
CN102354165A (zh) * | 2011-05-30 | 2012-02-15 | 浙江中控技术股份有限公司 | 在线更新数据的方法、控制器和人机交互系统 |
US20120216183A1 (en) * | 2011-02-23 | 2012-08-23 | Amit Mahajan | Firmware updation in electronic devices |
CN102707690A (zh) * | 2012-05-30 | 2012-10-03 | 浙江中控技术股份有限公司 | 一种组态数据的下载方法和下载系统 |
CN103713932A (zh) * | 2014-01-21 | 2014-04-09 | 北京经纬恒润科技有限公司 | 一种电子控制单元中应用程序的更新方法及装置 |
CN104714811A (zh) * | 2013-12-13 | 2015-06-17 | 中兴通讯股份有限公司 | 差分升级包的制作方法及装置、系统差分升级方法及装置 |
JP2017199183A (ja) * | 2016-04-27 | 2017-11-02 | 日立オートモティブシステムズ株式会社 | 車両用電子制御装置、プログラム更新方法、サーバ装置 |
CN108683516A (zh) * | 2018-03-14 | 2018-10-19 | 聚好看科技股份有限公司 | 一种应用实例的升级方法、装置和系统 |
US20190049928A1 (en) * | 2017-08-09 | 2019-02-14 | Fisher-Rosemount Systems, Inc. | Reconciliation of run-time and configuration discrepancies |
CN109670805A (zh) * | 2018-11-29 | 2019-04-23 | 中国人民银行清算总中心 | 保持数据一致性的网银系统及业务报文处理方法 |
-
2019
- 2019-08-08 CN CN201910730046.1A patent/CN110609698B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005038251A (ja) * | 2003-07-16 | 2005-02-10 | Mitsubishi Electric Corp | 分散制御システム、分散制御システム用ソフトウェア設計支援システム |
CN101006424A (zh) * | 2004-08-19 | 2007-07-25 | 艾利森电话股份有限公司 | 通用升级体系结构 |
CN1588324A (zh) * | 2004-08-31 | 2005-03-02 | 浙江中控技术股份有限公司 | 基于控制系统实现在线更新数据的方法 |
WO2007071324A1 (en) * | 2005-12-20 | 2007-06-28 | Telefonaktiebolaget L M Ericsson (Publ) | Generating incremental program updates |
CN101094229A (zh) * | 2007-07-24 | 2007-12-26 | 深圳市融合视讯科技有限公司 | 一种网络应用程序的增量升级系统及升级方法 |
US20100162226A1 (en) * | 2008-12-18 | 2010-06-24 | Lazar Borissov | Zero downtime mechanism for software upgrade of a distributed computer system |
US20120216183A1 (en) * | 2011-02-23 | 2012-08-23 | Amit Mahajan | Firmware updation in electronic devices |
CN102354165A (zh) * | 2011-05-30 | 2012-02-15 | 浙江中控技术股份有限公司 | 在线更新数据的方法、控制器和人机交互系统 |
CN102707690A (zh) * | 2012-05-30 | 2012-10-03 | 浙江中控技术股份有限公司 | 一种组态数据的下载方法和下载系统 |
CN104714811A (zh) * | 2013-12-13 | 2015-06-17 | 中兴通讯股份有限公司 | 差分升级包的制作方法及装置、系统差分升级方法及装置 |
CN103713932A (zh) * | 2014-01-21 | 2014-04-09 | 北京经纬恒润科技有限公司 | 一种电子控制单元中应用程序的更新方法及装置 |
JP2017199183A (ja) * | 2016-04-27 | 2017-11-02 | 日立オートモティブシステムズ株式会社 | 車両用電子制御装置、プログラム更新方法、サーバ装置 |
US20190049928A1 (en) * | 2017-08-09 | 2019-02-14 | Fisher-Rosemount Systems, Inc. | Reconciliation of run-time and configuration discrepancies |
CN108683516A (zh) * | 2018-03-14 | 2018-10-19 | 聚好看科技股份有限公司 | 一种应用实例的升级方法、装置和系统 |
CN109670805A (zh) * | 2018-11-29 | 2019-04-23 | 中国人民银行清算总中心 | 保持数据一致性的网银系统及业务报文处理方法 |
Non-Patent Citations (1)
Title |
---|
裘坤等: "DCS组态在线下载技术分析与设计", 《自动化与仪表》 * |
Also Published As
Publication number | Publication date |
---|---|
CN110609698B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190196802A1 (en) | Script generation engine and mapping semantic models for target platform | |
JP5525240B2 (ja) | カスタマイズされた文書作成方法、装置、グラフィカルユーザインタフェース手段、及び機械アクセス可能媒体 | |
EP3336627B1 (en) | Support device, method, and recording medium whereon support program is stored | |
US8312446B2 (en) | Dependency management when upgrading application components | |
JP3960961B2 (ja) | ソフトウェアに修正情報を適用する装置および方法 | |
CN102713774A (zh) | 可编程控制器系统及开发系统 | |
US7536590B2 (en) | Programmable controller, programmable controller system, CPU unit and method of starting duplexed operation | |
JP4799114B2 (ja) | Nc工作機械の制御プログラムの更新方法及び装置 | |
JP2012234272A (ja) | プログラマブルコントローラ・システム、その支援装置 | |
EP3647942B1 (en) | Engineering apparatus, control method of engineering apparatus, and program | |
CN114791824A (zh) | 工业自动化多开发者控制代码同步 | |
CN112083971A (zh) | 组件处理方法、设备及存储介质 | |
CN115113914A (zh) | 具有里程碑回滚的工业自动化分布式项目控制 | |
JP2009157533A (ja) | プログラマブルコントローラシステム | |
CN115115325A (zh) | 来自工业自动化开发环境的通知 | |
CN110609698B (zh) | 控制算法单元在线升级方法及装置 | |
CN109933345B (zh) | 一种控制器的无扰下装方法及相关装置 | |
JP6520241B2 (ja) | 制御システム、その管理サーバ装置、支援装置 | |
CN105938337A (zh) | 微电脑控制器二次开发云平台与使用方法及配置更新方法 | |
CN116126379A (zh) | 一种bios固件升级方法、装置、设备及存储介质 | |
KR102094447B1 (ko) | Bms sw의 소스 코드를 생성하는 소스 코드 생성 장치 및 소스 코드 생성 방법 | |
CN115113851A (zh) | 系统模型智能对象配置 | |
CN100401256C (zh) | 在线单点数据的修改方法 | |
JP2015022511A (ja) | プログラマブルコントローラシステム、その支援装置、プログラム | |
WO2001093021A2 (en) | A virtual system configurator for client systems |
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 |