CN107992323A - 一种集中器升级方法和*** - Google Patents
一种集中器升级方法和*** Download PDFInfo
- Publication number
- CN107992323A CN107992323A CN201711439792.2A CN201711439792A CN107992323A CN 107992323 A CN107992323 A CN 107992323A CN 201711439792 A CN201711439792 A CN 201711439792A CN 107992323 A CN107992323 A CN 107992323A
- Authority
- CN
- China
- Prior art keywords
- code
- transmission frame
- concentrator
- run
- storage
- 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.)
- Pending
Links
Landscapes
- Communication Control (AREA)
Abstract
本发明公开了一种集中器升级方法和***,方法包括:将升级文件分成若干分解文件,基于分解文件与旧程序的差异数据生成传输帧;存储所述传输帧;当运行旧程序时,引导其使用存储的传输帧的代码。***用于执行对应方法。本发明通过将升级文件分解成小文件,将小文件与旧程序的差异生成传输帧以降低传输数据的量,通过引导集中器使用存储的传输帧以实现旧程序的更新。
Description
技术领域
本发明涉及电力***程序升级领域,尤其涉及一种集中器升级方法和***。
背景技术
现有集中器升级方式,均是采用完整的程序升级,也就是说程序有多大的容量,升级时就需要将多大的文件进行分帧拆分,然后逐一发送。而受到目前传输技术的限制,无论是有线方式还是无线方式,都不能一次性将文件传输到要升级的设备中进行再处理。传统的方式,是规定每次传输帧的字节数都在200字节左右,而文件的大小基本是以千或兆字节为单位,那么要将一个完整的文件进行传输,就必须分很多帧,而程序升级成功是建立在每次传输收发都必须成功有效的基础之上。从目前的现状,有线传输的技术能保证这种传输方式无差错,但无线传输技术的不完善,目前全球尚没有保证一次传输率做到完整无差错。而有线传输技术又涉及到传输距离有限的制约,很多环境还是依托无线传输进行通讯。而况即便是有线方式传输,也涉及到一个时效性问题,根据完整传输的法则,升级用时和文件大小成正比,影响升级的效率。
发明内容
为了解决上述问题,本发明提供一种集中器升级方法和***。
本发明采用的技术方案一方面为一种集中器升级方法,用于更新旧程序,包括:将升级文件分成若干分解文件,基于分解文件与旧程序的差异数据生成传输帧;存储所述传输帧;当运行旧程序时,引导其使用存储的传输帧的代码。
优选地,引导其使用存储的传输帧的代码的步骤包括:解析传输帧以获取地址索引号和代码长度,该地址索引号用于指示待更新的代码的地址;当集中器将要运行待更新的代码时,引导其使用存储的传输帧的代码。
优选地,引导其使用存储的传输帧的代码的步骤还包括:解析传输帧以获取不运行标记,该不运行标记用于指示忽略代码的地址和忽略代码的长度;当集中器将要运行所述忽略代码时,引导其不运行所述忽略代码。
优选地,引导其使用存储的传输帧的代码的步骤还包括:解析传输帧以获取额外运行标记和额外代码,该额外运行标记用于指示需要运行额外代码的地址。
优选地,还包括获取旧程序的版本号,根据版本号获取对应旧程序,基于分解文件与旧程序的差异数据生成传输帧。
本发明采用的技术方案另一方面为一种集中器升级***,包括:更新端,用于将升级文件分成若干分解文件,基于分解文件与旧程序的差异数据生成传输帧;集中器存储端,用于存储所述传输帧;集中器运行端,用于当运行旧程序时,引导其使用存储的传输帧的代码。
优选地,引导其使用存储的传输帧的代码的步骤包括:解析传输帧以获取地址索引号和代码长度,该地址索引号用于指示待更新的代码的地址;当集中器将要运行待更新的代码时,引导其使用存储的传输帧的代码。
优选地,引导其使用存储的传输帧的代码的步骤还包括:解析传输帧以获取不运行标记,该不运行标记用于指示忽略代码的地址和忽略代码的长度;当集中器将要运行所述忽略代码时,引导其不运行所述忽略代码。
优选地,引导其使用存储的传输帧的代码的步骤还包括:解析传输帧以获取额外运行标记和额外代码,该额外运行标记用于指示需要运行额外代码的地址。
优选地,更新端还用于获取旧程序的版本号,根据版本号获取对应旧程序,基于分解文件与旧程序的差异数据生成传输帧。
本发明的有益效果为通过将升级文件分解成小文件,将小文件与旧程序的差异生成传输帧以降低传输数据的量,通过引导集中器使用存储的传输帧以实现旧程序的更新。
附图说明
图1所示为基于本发明实施例的一种集中器升级方法的示意图。
具体实施方式
以下结合实施例对本发明进行说明。
基于发明的实施例,如图1所示的一种集中器升级方法,用于更新旧程序,包括:将升级文件分成若干分解文件,基于分解文件与旧程序的差异数据生成传输帧;存储所述传输帧;当运行旧程序时,引导其使用存储的传输帧的代码。
引导其使用存储的传输帧的代码的步骤包括:解析传输帧以获取地址索引号和代码长度,该地址索引号用于指示待更新的代码的地址;当集中器将要运行待更新的代码时,引导其使用存储的传输帧的代码。
引导其使用存储的传输帧的代码的步骤还包括:解析传输帧以获取不运行标记,该不运行标记用于指示忽略代码的地址和忽略代码的长度;
当集中器将要运行所述忽略代码时,引导其不运行所述忽略代码。
引导其使用存储的传输帧的代码的步骤还包括:解析传输帧以获取额外运行标记和额外代码,该额外代码不属于旧代码,该额外运行标记用于指示需要运行额外代码的地址。
还包括获取旧程序的版本号,根据版本号获取对应旧程序,基于分解文件与旧程序的差异数据生成传输帧。
基于发明的实施例一种集中器升级***,包括:更新端,用于将升级文件分成若干分解文件,基于分解文件与旧程序的差异数据生成传输帧;集中器存储端,用于存储所述传输帧;集中器运行端,用于当运行旧程序时,引导其使用存储的传输帧的代码。
引导其使用存储的传输帧的代码的步骤包括:解析传输帧以获取地址索引号和代码长度,该地址索引号用于指示待更新的代码的地址;当集中器将要运行待更新的代码时,引导其使用存储的传输帧的代码。
引导其使用存储的传输帧的代码的步骤还包括:解析传输帧以获取不运行标记,该不运行标记用于指示忽略代码的地址和忽略代码的长度;
当集中器将要运行所述忽略代码时,引导其不运行所述忽略代码。
引导其使用存储的传输帧的代码的步骤还包括:解析传输帧以获取额外运行标记和额外代码,该额外代码不属于旧代码,该额外运行标记用于指示需要运行额外代码的地址。
更新端还用于获取旧程序的版本号,根据版本号获取对应旧程序,基于分解文件与旧程序的差异数据生成传输帧。
实施例的进一步改进,众所周知,芯片运行的程序是执行代码,它是源程序的编译执行的结果,而通常情况,升级程序改动量很小,很多时候只是芯片某种功能和片段的修改,最终表现的只是执行代码很小范围的变化。
在集中器中保存并记录芯片下载程序的二进制执行文件(BIN文件或HEX文件)及其版本号;预先在集中器的芯片中固化一个程序,该程序的功能用于后续芯片接收到外部升级通讯帧(即传输帧)时能管理该帧;该程序具体功能:A、分析芯片存储空间的容量和位置(用于安排传输帧的存储位置);B、解析通讯帧的索引号,获取包括自己的索引号和前面一帧的索引号,这些索引号(即地址索引号)决定了该帧将来要替换哪些旧程序的代码片段;C、记录被升级片段程序(即待更新的代码)的地址索引和代码长度;D、集中器上电工作时,将存储空间的程序片段按照地址索引长度和索引号完整找出,取出代码部分,供集中器运行。
运行在PC端有一个用于比较、分解和组合待升级文件的程序,该程序的具体功能:
A1、通过获取集中器芯片正在运行程序(即旧程序)的版本号,找到预存的旧程序对应的二进制文件(即代码);
B1、对比新二进制文件和老二进制文件的差别;
C1、对差异部分进行提取和组帧(生成传输帧),该帧包含被替换掉帧的帧序号、前面一帧和后面一帧的帧序号。
具体的替换过程包括:
第一种情况,以前文件(旧程序)有100帧,而现有的文件也是100帧,那么只要对比当前的帧号便可替换,比如PC端软件确定需要更换的是32帧,65-67帧,在芯片固化程序的引导下只要替换这三帧即可。
第二种情况,以前文件有100帧,而现有的文件小于100帧,那么只要知道前后帧的序号和当前位置的序号,也能容易替换,固化程序当收到不需要运行的代码的序号之后,可清除以前程序的冗余部分(即不运行这部分的代码或者覆盖这部分的代码)。
第三种情况,以前文件有100帧,而现有的文件大于100帧,那么只要知道前后帧的序号和当前位置的序号,就可以实现替换,当帧的索引号已经超过以前文件的最大索引号时固化程序分析集中器的存储器容量空间,为新帧(即额外代码)寻找存放位置(注:每帧的存放位置,是按照地址索引方式,也就是计算机的链表方式,存储首字节地理位置和帧的长度)。
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,都应属于本发明的保护范围。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。
Claims (10)
1.一种集中器升级方法,用于更新旧程序,其特征在于,包括:
将升级文件分成若干分解文件,基于分解文件与旧程序的差异数据生成传输帧;
存储所述传输帧;
当运行旧程序时,引导其使用存储的传输帧的代码。
2.根据权利要求1所述的一种集中器升级方法,其特征在于,引导其使用存储的传输帧的代码的步骤包括:
解析传输帧以获取地址索引号和代码长度,该地址索引号用于指示待更新的代码的地址;
当集中器将要运行待更新的代码时,引导其使用存储的传输帧的代码。
3.根据权利要求1所述的一种集中器升级方法,其特征在于,引导其使用存储的传输帧的代码的步骤还包括:
解析传输帧以获取不运行标记,该不运行标记用于指示忽略代码的地址和忽略代码的长度;
当集中器将要运行所述忽略代码时,引导其不运行所述忽略代码。
4.根据权利要求1所述的一种集中器升级方法,其特征在于,引导其使用存储的传输帧的代码的步骤还包括:
解析传输帧以获取额外运行标记和额外代码,该额外运行标记用于指示需要运行额外代码的地址。
5.根据权利要求1所述的一种集中器升级方法,其特征在于,还包括获取旧程序的版本号,根据版本号获取对应旧程序,基于分解文件与旧程序的差异数据生成传输帧。
6.一种集中器升级***,其特征在于,包括:
更新端,用于将升级文件分成若干分解文件,基于分解文件与旧程序的差异数据生成传输帧;
集中器存储端,用于存储所述传输帧;
集中器运行端,用于当运行旧程序时,引导其使用存储的传输帧的代码。
7.根据权利要求5所述的一种集中器升级***,其特征在于,引导其使用存储的传输帧的代码的步骤包括:
解析传输帧以获取地址索引号和代码长度,该地址索引号用于指示待更新的代码的地址;
当集中器将要运行待更新的代码时,引导其使用存储的传输帧的代码。
8.根据权利要求5所述的一种集中器升级***,其特征在于,引导其使用存储的传输帧的代码的步骤还包括:
解析传输帧以获取不运行标记,该不运行标记用于指示忽略代码的地址和忽略代码的长度;
当集中器将要运行所述忽略代码时,引导其不运行所述忽略代码。
9.根据权利要求5所述的一种集中器升级***,其特征在于,引导其使用存储的传输帧的代码的步骤还包括:
解析传输帧以获取额外运行标记和额外代码,该额外运行标记用于指示需要运行额外代码的地址。
10.根据权利要求5所述的一种集中器升级***,其特征在于,所述更新端还用于获取旧程序的版本号,根据版本号获取对应旧程序,基于分解文件与旧程序的差异数据生成传输帧。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711439792.2A CN107992323A (zh) | 2017-12-27 | 2017-12-27 | 一种集中器升级方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711439792.2A CN107992323A (zh) | 2017-12-27 | 2017-12-27 | 一种集中器升级方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107992323A true CN107992323A (zh) | 2018-05-04 |
Family
ID=62042323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711439792.2A Pending CN107992323A (zh) | 2017-12-27 | 2017-12-27 | 一种集中器升级方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107992323A (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1570878A (zh) * | 2003-07-11 | 2005-01-26 | 上海广电(集团)有限公司中央研究院 | 信息家电软件升级方法及其升级数据的编码解码方法 |
US20060106888A1 (en) * | 2002-10-31 | 2006-05-18 | Kentarou Iida | Data update system, differential data creating device and program for data update system, updated file restoring device and program |
CN101002406A (zh) * | 2004-06-10 | 2007-07-18 | 三星电子株式会社 | 高效生成用于无线网络中的空中下载升级的增量文件的装置和方法 |
CN101025690A (zh) * | 2006-02-20 | 2007-08-29 | 广西申能达智能技术有限公司 | 感应式智能卡终端机的无线升级*** |
CN101232516A (zh) * | 2008-01-31 | 2008-07-30 | 北京航空航天大学 | 无线传感器网络应用中使用差分压缩的低功耗***更新方法 |
CN101930375A (zh) * | 2010-08-26 | 2010-12-29 | 深圳市共进电子有限公司 | 单用户光网络单元中内存空间自适应的程序数据升级方法 |
CN102314369A (zh) * | 2011-10-09 | 2012-01-11 | 杭州先锋电子技术股份有限公司 | 一种远程在线监控***中设备自升级方法 |
CN103885807A (zh) * | 2014-04-03 | 2014-06-25 | 四川九成信息技术有限公司 | 设备程序更新方法 |
CN106302753A (zh) * | 2016-08-18 | 2017-01-04 | 福建天泉教育科技有限公司 | 客户端程序增量更新的方法及*** |
CN106789373A (zh) * | 2017-03-02 | 2017-05-31 | 国电南瑞科技股份有限公司 | 一种对集中器进行远程升级的方法 |
CN107453891A (zh) * | 2016-06-01 | 2017-12-08 | 艾默生环境优化技术(苏州)有限公司 | 维护设备、现场设备以及用于维护和更新现场设备的方法 |
-
2017
- 2017-12-27 CN CN201711439792.2A patent/CN107992323A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060106888A1 (en) * | 2002-10-31 | 2006-05-18 | Kentarou Iida | Data update system, differential data creating device and program for data update system, updated file restoring device and program |
CN1570878A (zh) * | 2003-07-11 | 2005-01-26 | 上海广电(集团)有限公司中央研究院 | 信息家电软件升级方法及其升级数据的编码解码方法 |
CN101002406A (zh) * | 2004-06-10 | 2007-07-18 | 三星电子株式会社 | 高效生成用于无线网络中的空中下载升级的增量文件的装置和方法 |
CN101025690A (zh) * | 2006-02-20 | 2007-08-29 | 广西申能达智能技术有限公司 | 感应式智能卡终端机的无线升级*** |
CN101232516A (zh) * | 2008-01-31 | 2008-07-30 | 北京航空航天大学 | 无线传感器网络应用中使用差分压缩的低功耗***更新方法 |
CN101930375A (zh) * | 2010-08-26 | 2010-12-29 | 深圳市共进电子有限公司 | 单用户光网络单元中内存空间自适应的程序数据升级方法 |
CN102314369A (zh) * | 2011-10-09 | 2012-01-11 | 杭州先锋电子技术股份有限公司 | 一种远程在线监控***中设备自升级方法 |
CN103885807A (zh) * | 2014-04-03 | 2014-06-25 | 四川九成信息技术有限公司 | 设备程序更新方法 |
CN107453891A (zh) * | 2016-06-01 | 2017-12-08 | 艾默生环境优化技术(苏州)有限公司 | 维护设备、现场设备以及用于维护和更新现场设备的方法 |
CN106302753A (zh) * | 2016-08-18 | 2017-01-04 | 福建天泉教育科技有限公司 | 客户端程序增量更新的方法及*** |
CN106789373A (zh) * | 2017-03-02 | 2017-05-31 | 国电南瑞科技股份有限公司 | 一种对集中器进行远程升级的方法 |
Non-Patent Citations (2)
Title |
---|
王海军: "《程序设计入门与提高》", 31 August 2008, 黄河出版社 * |
赵金龙: "集中器远程物联升级", 《信息***工程》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7089270B2 (en) | Processing software images for use in generating difference files | |
CN103902342B (zh) | 一种封闭环境下***更新升级方法及*** | |
CN110597500B (zh) | 消息结构的序列化和反序列化方法及装置 | |
US20050010870A1 (en) | Post-processing algorithm for byte-level file differencing | |
CN104391728A (zh) | 软件升级差量包获取方法和相应的升级方法以及装置 | |
CN105590051A (zh) | 用于可信执行环境的可信应用生成及安装方法 | |
CN104932909A (zh) | 一种终端软件升级方法及装置 | |
CN105808273A (zh) | 软件升级方法和软件升级装置 | |
CN102591685B (zh) | 一种实现应用程序自动在线更新的方法及装置 | |
CN109800005A (zh) | 一种客户端热更新方法及装置 | |
CN103997760B (zh) | 一种用户用电信息采集***的数据打包采集方法 | |
CN104579748A (zh) | Scd在线校核的网络分析方法及*** | |
CN104881274B (zh) | 识别无用代码的方法 | |
CN112286565A (zh) | 一种基于存储容器的嵌入式***差分升级方法 | |
CN108446132A (zh) | 一种基于tftp远程更新电力采集终端软件的方法 | |
CN105740298A (zh) | 文件处理方法、装置及服务端设备 | |
CN103139298B (zh) | 一种传输网络数据的方法和装置 | |
CN107992323A (zh) | 一种集中器升级方法和*** | |
CN102063416B (zh) | 向pdf文件内嵌双字节字体的方法及其*** | |
CN112579141A (zh) | 一种嵌入式***的固件更新方法、装置、设备及存储介质 | |
US20130039252A1 (en) | Preprocessor for file updating | |
CN104298521A (zh) | 一种窗口更新方法及装置 | |
CN102609482A (zh) | 一种json数据格式的封装方法 | |
CN111158716A (zh) | 版本升级调用方法、装置、计算机***及可读存储介质 | |
CN103488617A (zh) | 一种数据截取的方法和装置 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180504 |