CN104717252B - 一种电力线载波远程升级方法和终端 - Google Patents
一种电力线载波远程升级方法和终端 Download PDFInfo
- Publication number
- CN104717252B CN104717252B CN201310686818.9A CN201310686818A CN104717252B CN 104717252 B CN104717252 B CN 104717252B CN 201310686818 A CN201310686818 A CN 201310686818A CN 104717252 B CN104717252 B CN 104717252B
- Authority
- CN
- China
- Prior art keywords
- program
- upgrading
- bag
- instruction
- upgrade
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000005540 biological transmission Effects 0.000 claims abstract description 26
- 230000008569 process Effects 0.000 claims description 6
- 235000013399 edible fruits Nutrition 0.000 claims description 3
- 239000000047 product Substances 0.000 description 14
- 238000004891 communication Methods 0.000 description 9
- 230000008520 organization Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 230000006855 networking Effects 0.000 description 4
- 238000009792 diffusion process Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44536—Selecting among different versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B3/00—Line transmission systems
- H04B3/54—Systems for transmission via power distribution lines
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种电力线载波远程升级方法和终端,其中,该方法包括:自集中器接收包含广播发送次数的广播升级指令,如果采集终端的程序升级次数未达到集中器设定的广播发送次数,则判断采集终端是否需要升级;如果需要升级,则自集中器接收第一单包指令,判断第一单包指令内程序包是否升级完成;如果有未成功升级的程序包,则采集终端接收包含未成功升级程序包的第二单包指令,对未成功升级的程序包进行点对点升级。本发明的载波远程升级方法和终端,利用洪泛算法传输进行升级,对待升级的终端进行广播升级,若广播升级未成功,还可对未成功的程序包进行点对点升级,提高了升级成功率。
Description
技术领域
本发明涉及电力通信领域,具体地,涉及一种电力线载波远程升级方法和终端。
背景技术
电力线载波(Power Line Carrier,以下简称PLC)是目前国内用电信息采集系统建设的主要通信手段,在用电信息采集系统中,利用该手段主要完成居民用户到配电变压器之间的通信,完成数据采集和费用控制等功能应用。目前在电力载波通信产品的使用过程中,一般存在以下问题:
(1)载波通信产品的设计很难做到尽善尽美,尤其是软件部分,由于其灵活性较大,是容易出错的地方,因此在使用过程中,往往发现系统中存在某种可以修复的“BUG”,即仅通过软件的修改就可以达到目的。
(2)虽然产品推出时软硬件都没有问题,但产品长时间使用后,可能用户提出了更高的需求的改变,或是产品程序设计上的缺陷慢慢显现,要求对载波通信产品系统程序进行升级。
(3)目前载波通信产品普遍存在适应电网变化能力不强,不能完全满足各省公司的实用化要求,对应用环境和不同省市具体情况不能兼容等问题,在产品跨区域推广时可能需要对产品进行改进升级。
如果直接对采集终端进行现场升级,需要大量的人员去现场维护,不但浪费了人力、财力,同时也浪费了宝贵的时间。
目前,远程批量采集器终端升级方法如下:(1)通过PC机转换后485端口与采集器终端的485端口连接,升级采集器终端软件,缺点是只能通过人工到现场点对点进行升级,接线麻烦,工作量大,响应速度慢等;(2)通过PC机网口连接宽带电力载波对采集器终端升级软件,缺点是只能单一升级,工作量大,只能对宽带电力载波适用,窄带电力载波就失去升级软件意义等;(3)PC机通过烧录器直接对采集器终端的处理芯片升级软件,缺点是只能单一升级,拆开外壳(施工现场一般不允许),操作麻烦,工作量大,响应速度慢等。对于上述三种采集器终端升级软件的方法,都是只能通过人工到现场点对点进行升级,操作麻烦,效率比较低。
发明内容
本发明是为了克服现有技术中无法对采集终端进行有效远程升级的问题,根据本发明的一个方面,提出一种电力线载波远程升级的方法。
根据本发明实施例的电力线载波远程升级的方法,包括:
自集中器接收包含广播发送次数的广播升级指令,判断程序升级次数是否达到该广播发送次数,如果未达到,则判断采集终端是否需要升级;
如果需要升级,则自集中器接收第一单包指令,将第一单包指令的程序包写入程序更新区,判断第一单包指令内程序包是否升级完成;
如果第一单包指令内程序包升级完成,则判断是否所有程序包升级成功;
如果有未成功升级的程序包,则接收包含未成功升级程序包的第二单包指令,对未成功升级的程序包进行点对点升级。
本发明是为了克服现有技术中无法对采集终端进行有效远程升级的问题,根据本发明的另一个方面,提出一种电力线载波远程升级终端。
根据本发明实施例的电力线载波远程升级终端,包括:
广播判断模块,用于自集中器接收包含广播发送次数的广播升级指令,判断程序升级次数是否达到广播发送次数,如果未达到,则判断采集终端是否需要升级;
第一升级判断模块,用于自集中器接收第一单包指令,将第一单包指令的程序包写入程序更新区,判断第一单包指令内程序包是否升级完成;
第二升级判断模块,用于当第一单包指令内程序包升级完成,则判断是否所有程序包升级成功;
单点升级模块,用于接收包含未成功升级程序包的第二单包指令,对未成功升级的程序包进行点对点升级。
本发明的电力线载波远程升级方法和终端,集中器发起抄收命令,发出的信息逐级向外扩散,节点在满足同帧单次转发限制和上行帧转发限制的要求下最终遍历全网,实现全网信息覆盖。集中器收到控制系统的升级命令后,提取升级程序内容,进行分包,并利用洪泛算法传输升级指令,对待升级的采集终端进行程序升级,若广播升级未成功,针对未成功程序包点对点进行升级,提高了程序升级成功率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例的洪泛组网算法中集中器向1级节点发起抄收命令的示意图;
图2为本发明实施例的洪泛组网算法中收到指令的1级节点转发指令的示意图;
图3为本发明实施例的洪泛组网算法中收到转发指令的2级节点继续转发指令的示意图;
图4为本发明实施例的采集终端内部Flash(闪存)的分区示意图;
图5为本发明实施例的采集终端Bootloader区程序设计流程图;
图6为本发明实施例的采集终端准备进行升级的示意图;
图7为本发明实施例的采集终端对第一单包指令的程序包进行升级的工作流程图;
图8为本发明实施例的采集终端对升级未成功的程序包进行点对点升级的工作流程图;
图9为本发明实施例的电力线载波远程升级终端的结构示意图。
具体实施方式
为了方便产品维护升级,降低产品规模化推广过程中存在的风险,全面支撑用电信息采集系统通信规模化建设,本发明在采集终端模块化设计的基础上,在不添加任何硬件资源的情况下,基于洪泛组网算法,提供了一种电力线载波远程升级方法,可以选择性的对采集终端进行升级,以解决现有技术中存在的无法对采集终端进行有效远程升级的问题。
下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。
根据本发明的电力线载波远程升级方法,提供了一种用于远程升级的限制性有序洪泛算法,采用涟漪泛波方式,使单点发出的信息逐级向外扩散,最终遍历全网,实现信息覆盖。洪泛组网算法是一种高效动态组网方式,一种适合于低压电力线载波抄表系统的网络技术,能够保证升级的可靠性。高效动态组网技术是一种分布式的组网方式,和以往传统的集中器发起自组网的集中式主从组网原理上存在本质区别。全动态组网技术网络建立过程的一个简单示意图参见图1-图3,假定了1个2级的动态组网网络。如图1所示为集中器发起抄收指令,如图2所示为收到该指令的第1级节点全部去转发该指令,如图3所示为收到该指令的2级节点全部去转发该指令,直至到达目的节点,具体工作流程如下:
步骤101:集中器向相邻的第1级节点发出抄收指令;
步骤102:收到集中器发出指令的第1级节点向相邻的第2级节点转发该指令;
步骤103:收到该指令的第2级节点继续转发该指令,直至到达目的节点,停止转发。
在上述过程中,数据包的传递像波浪一样一层层的逐级传递,直至到达目标,这种简历路径的算法叫做“洪泛”。数据在传递过程中完全依靠节点来承担并完成,集中器只需要发起指令,不需要作出任何运算,也无需记忆任何路径;网络中的所有非目标节点只负责转发,也无需记忆路径。同理目的节点向集中器发起的上行应答包也按此方式逐级转发,直至到达集中器。
根据本发明的电力线载波远程升级方法,提出了一种采集终端MCU内部flash(全称为Flash EEPROM Memory,闪存)划分方法,包括:
采集终端内部flash划分成BootLoader区(程序启动引导区)、Program区(程序运行区)和Update区(程序更新区)三个区,各区安排及大小如图4所示,各区详细说明如下:
(1)Bootloader区是放置Bootloader程序的区域,Bootloader程序是独立于应用程序的一个小程序,位于Flash起始位置,用于初始化硬件,为调用操作系统内核准备好环境,芯片复位后从Bootloader区启动。Bootloader程序负责检查Program区和Update区程序合法性,决定是“更新Program区”,还是“跳转到Program区运行”,或是“等待串口的升级指令,完成程序升级”。Bootloader程序设计流程如图5所示,具体如下:
步骤501:判断读保护是否使能,如果是,则转入步骤502;如果否,则使能读保护复位系统,返回重新进行判断。
步骤502:等待接收RS485端口下发的升级命令。
步骤503:判断是否5秒超时,如果是,则转入步骤504;如果否,则返回步骤501。
步骤504:判断应用程序是否更新,如果否,则转入步骤505;如果是,则判断应用区是否写保护,如果写保护,则解除应用区写保护系统,如果未写保护,则更新应用程序,转入步骤505。
步骤505:判断应用程序是否合法,如果不合法,则返回步骤501;如果合法,则转入步骤506。
步骤506:判断应用区是否写保护,如果是,则跳到应用区程序运行;如果否,则使能应用区写保护系统,返回步骤501。
(2)Program区是放置应用程序的区域,应用程序完成产品应用的全部功能。
(3)Update区是放置新应用程序的区域,用于存储最新应用程序数据。
其中Program区和Update区结构如表1所示,
表1
具体说明如下:
(1)升级状态字—0x0F表示程序升级中、0x07表示升级完成、0x03表示当前运行程序、0x01表示前一版程序、其它值表示无效程序。
(2)程序包数—指整个程序占用的总包数,每包尺寸依据不同具体产品会有不同定义。
(3)程序CRC(循环冗余校验码,Cyclic Redundancy Check)—指整个程序代码(包括最后一包补充0xFF)的CRC16校验值。CRC是通信领域常用的校验码,对通信的可靠性检查就需要“校验”,校验是从数据本身进行检查,它依靠某种数学上约定的形式进行检查,校验的结果是可靠或不可靠,如果可靠就对数据进行处理,如果不可靠,就丢弃重发或者进行修复。
(4)升级进度标志—是升级程序包的指示位图,用于指示目前接收到的程序包情况,每一位代表固定程序包号的一包程序码,为1时代表还未收到这一包程序,为0时代表已收到这一包程序,升级进度标志位图的大小会因不同产品而有所不同。
采集终端中的Bootloader区、Program区、Update区的安全操作的权限如表2所示,具体说明如下:
(1)Bootloader区放置Bootloader程序,由程序烧写器在出厂前写入,写入后对所有Flash区加读出保护,确保代码安全。应用程序不对Bootloader区进行读、写或擦除操作。
(2)Program区放置应用程序区,由Bootloader程序负责擦除和写入。应用程序本身不对Program区进行擦除和写入操作。
(3)Update区放置最新应用程序数据,由Bootloader或应用程序负责擦除和写入。
表2
根据本发明的电力线载波远程升级方法,如图6所示为采集终端进行程序升级前的准备过程,具体包括:
步骤601:集中器设定启动升级指令的广播发送次数,选择待升级的模块(电表模块或采集器模块,以下统称为采集终端),采用洪泛组网算法向相邻节点发送广播,直至到达待升级采集终端。
步骤602:采集终端收到广播后,判断程序升级次数是否已经达到步骤601中设定的广播发送次数,若达到,则结束广播升级;
若未达到,则转入步骤603。
步骤603:集中器向采集终端发送启动升级指令。
步骤604:判断启动升级指令中的第一CRC校验码与采集终端program区的CRC校验码是否相等,若两者相等,则说明该升级指令是正确的升级指令,转入步骤605;
若两者不相等,则说明该升级指令不是正确的升级指令,转入步骤602。
步骤605:判断该升级指令中的第二CRC校验码与采集终端中update区的CRC校验码是否相等,若两者不相等,则说明待升级采集终端中update区的程序不是最新的程序,转入步骤606进行update区程序升级准备;
若两者相等,则查看采集终端中update区的升级状态字是否处于升级中或刚完成升级状态,如果不是升级中或者刚完成升级,则转入步骤606进行update区程序升级准备;
若是,则转入步骤602。
步骤606:采集终端准备进行程序升级。
根据本发明的电力线载波远程升级方法,如图7所示,采集终端程序升级流程如下:
步骤701:集中器采用洪泛组网算法向采集终端下发第一单包指令,采集终端将该第一单包指令中的程序包写入update区;
步骤702:判断该第一单包指令中的第三CRC校验码与update区的CRC校验码是否相等,若两者相等,则说明update区程序已经升级,转入步骤703;
若两者不相等,则update区程序CRC校验码可能已被复位擦除,转入步骤706;
步骤703:判断采集终端update区的升级状态字是否为正在升级中,若是,则转入步骤704;
若不是,则update区升级状态字可能已被复位擦除,转入步骤706;
步骤704:判断update区的升级进度标志是否为0,若为0,则说明采集终端已收到该第一单包指令,转入步骤705;
若不为0,则update区升级进度标志可能已被复位擦除,转入步骤706;
步骤705:采集终端完成本包程序的升级;
步骤706:检查是否所有单包指令内的程序包标志为已写,若是,则说明已经收到所有单包指令中的程序包,转入步骤707;
若不是,则说明采集终端尚有程序包没有收到,转入步骤701,继续接受其他单包指令,进行程序包升级;
步骤707:比较采集终端中program区的CRC校验码与第一单包指令中的第四CRC校验码是否相等,若两者相等,则说明采集终端已将所有程序包升级完成,转入步骤708;
若两者不相等,说明升级错误。
步骤708:将采集终端program区升级状态字置为程序升级完成,完成本次升级。
根据本发明的电力线载波远程升级方法,广播升级完成后检查是否所有程序包均完成升级(升级状态字为已写),当所有程序包数据成功升级后,置上新程序准备好标志,等待程序复位;若有未升级成功程序包,则开始对该程序包进行点对点程序升级,如图8所示,具体流程如下:
步骤801:集中器采用洪泛组网算法向采集终端下发第二单包指令;
步骤802:采集终端判断该第二单包指令中的第五CRC校验码与采集终端中update区的CRC校验码是否相等,若两者相等,则说明采集终端已经开始升级,转入步骤803;
若两者不相等,则update区程序CRC校验码已被复位擦除,转入步骤801继续接收其他单包指令;
步骤803:判断update区的升级状态字是否为升级中,若是,则说明采集终端正在对该升级指令进行升级,转入步骤804;
若不是,则update区升级状态字已被复位擦除,转入步骤801继续接收其他单包指令;
步骤804:判断update区的升级进度标志是否为0,若为0,说明采集终端已收到该单包指令,转入步骤805;
若不为0,则update区升级进度标志已被复位擦除,转入步骤801继续接收其他单包指令。
步骤805:第二单包指令中的程序包升级完成。
根据本发明的另一实施例,提出了一种电力线载波远程升级的终端,如图9所示,包括:
广播判断模块10,用于自集中器接收包含广播发送次数的广播升级指令,判断程序升级次数是否达到集中器设定的广播发送次数,如果未达到,则判断采集终端是否需要升级;
第一升级判断模块20,用于自集中器接收第一单包指令,将第一单包指令的程序包写入程序更新区,判断第一单包指令内程序包是否升级完成;
第二升级判断模块30,用于当第一单包指令内程序包升级完成,则判断是否所有程序包升级成功;
单点升级模块40,用于接收包含未成功升级程序包的第二单包指令,对未成功升级的程序包进行点对点升级。
其中,广播判断模块10还用于如果达到集中器设定的广播发送次数,则结束广播升级,具体包括:指令判断子模块101、程序判断子模块102,指令判断子模块101用于判断升级指令是否是正确的升级指令;程序判断子模块102用于判断采集终端的程序更新区的程序是否是最新程序。
指令判断子模块101具体用于判断升级指令的第一CRC校验码与采集终端的程序运行区的CRC校验码是否相等,如果相等,则升级指令是正确的升级指令;
如果不相等,则返回判断采集终端的程序升级次数是否达到集中器设定的广播发送次数。
程序判断子模块102具体用于判断升级指令的第二CRC校验码与采集终端的程序更新区CRC校验码是否相等,如果不相等,则准备进行程序升级;
如果相等,则判断程序更新区的升级状态是否为升级中/刚完成升级,如果是,则返回判断采集终端的程序升级次数是否达到集中器设定的广播发送次数;如果不是,则准备进行程序升级。
其中,第一升级判断模块20包括:第一程序判断子模块201、第二程序判断子模块202、第一指令判断子模块203,第一程序判断子模块201用于判断程序更新区是否已经升级;第二程序判断子模块202用于判断程序更新区是否正在升级;第一指令判断子模块203用于判断采集终端是否收到第一单包指令。
第一程序判断子模块201具体用于判断第一单包指令的第三CRC校验码与程序更新区的CRC校验码是否相等,如果相等,则进行判断程序更新区是否正在升级的步骤;
如果不相等,则判断是否所有程序包升级成功。
第二程序判断子模块202具体用于判断程序更新区的升级状态字是否为升级中,如果是,则进行判断采集终端是否收到第一单包指令的步骤;
如果不是,则判断是否所有程序包升级成功。
第一指令判断子模块203具体用于检查程序更新区的升级进度标志是否为0,如果为0,则采集终端已经收到第一单包指令的程序包,升级完成;
如果为1,则判断是否所有程序包升级成功。
其中,第二升级判断模块30包括:程序接收判断子模块301、程序升级判断子模块302,程序接收判断子模块301用于判断是否已接收所有程序包;程序升级判断子模块302用于判断是否所有程序包已升级。
程序接收判断子模块301具体用于检查所有程序包标志是否为已写过,如果为已写过,则进行判断是否所有程序包已升级的步骤;
如果为未写过,则返回继续接收单包指令。
程序升级判断子模块302具体用于判断程序运行区的CRC校验码与全部单包指令的第四校验码是否相等,如果相等,则将程序运行区升级状态字置为程序升级完成;
如果不相等,则升级过程发生错误,结束升级。
其中,单点升级模块40包括:第三程序判断子模块401、第四程序判断子模块402、第二指令判断子模块403,第三程序判断子模块401用于判断程序更新区是否已经升级;第四程序判断子模块402用于判断程序更新区是否正在升级;第二指令判断子模块403用于判断采集终端是否收到第二单包指令。
第三程序判断模子块401具体用于判断第二单包指令的第五CRC校验码与程序更新区的CRC校验码是否相等,如果相等,则进行判断程序更新区是否正在升级的步骤;
如果不相等,则继续接收其他单包指令。
第四程序判断子模块402具体用于判断程序更新区的升级状态字是否为已写,如果为已写,则进行判断采集终端是否收到第二单包指令的步骤;
如果为未写,则继续接收其他单包指令。
第二指令判断子模块403具体用于判断程序更新区的升级进度标志是否为0,如果为0,则第二单包指令的程序包升级完成;
如果不为0,则继续接收其他单包指令。
本发明的电力线载波远程升级方法和终端,集中器发起抄收命令,发出的信息逐级向外扩散,节点在满足同帧单次转发限制和上行帧转发限制的要求下最终遍历全网,实现全网信息覆盖。集中器收到控制系统的升级命令后,提取升级程序内容,进行分包,并利用洪泛算法传输升级指令,对待升级的采集终端进行程序升级,若广播升级未成功,针对未成功程序包点对点进行升级,提高了程序升级成功率。
本发明能有多种不同形式的具体实施方式,上面以图1-图9为例结合附图对本发明的技术方案作举例说明,这并不意味着本发明所应用的具体实例只能局限在特定的流程或实施例结构中,本领域的普通技术人员应当了解,上文所提供的具体实施方案只是多种优选用法中的一些示例,任何体现本发明权利要求的实施方式均应在本发明技术方案所要求保护的范围之内。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (32)
1.一种电力线载波远程升级方法,其特征在于,包括:
自集中器接收包含广播发送次数的升级指令,判断程序升级次数是否达到所述广播发送次数,如果未达到,则判断采集终端是否需要升级;
如果需要升级,则自所述集中器接收第一单包指令,将所述第一单包指令的程序包写入程序更新区,判断所述第一单包指令内的所述程序包是否升级完成;
如果所述第一单包指令内的所述程序包升级完成,则判断是否所有程序包升级成功;
如果有未成功升级的程序包,则接收包含所述未成功升级程序包的第二单包指令,对所述未成功升级的程序包进行点对点升级。
2.根据权利要求1所述的方法,其特征在于,所述判断程序升级次数是否达到所述广播发送次数还包括:如果达到所述广播发送次数,则结束广播升级。
3.根据权利要求1所述的方法,其特征在于,所述判断采集终端是否需要升级包括:
判断所述升级指令是否是正确的升级指令的步骤;
判断所述采集终端的程序更新区的程序是否是最新程序的步骤。
4.根据权利要求3所述的方法,其特征在于,所述判断升级指令是否是正确的升级指令的步骤具体包括:
判断所述升级指令的第一CRC校验码与所述采集终端的程序运行区的CRC校验码是否相等,如果相等,则所述升级指令是正确的升级指令;
如果不相等,则返回判断所述程序升级次数是否达到所述广播发送次数。
5.根据权利要求3所述的方法,其特征在于,所述判断采集终端的程序更新区的程序是否是最新程序的步骤具体包括:
判断所述升级指令的第二CRC校验码与所述程序更新区的CRC校验码是否相等,如果不相等,则准备进行程序升级;
如果相等,则判断所述程序更新区的升级状态是否为升级中/刚完成升级,如果是,则返回判断所述程序升级次数是否达到所述广播发送次数;如果不是,则准备进行程序升级。
6.根据权利要求1所述的方法,其特征在于,所述判断第一单包指令内的所述程序包是否升级完成包括:
判断所述程序更新区是否已经升级的步骤;
判断所述程序更新区是否正在升级的步骤;
判断所述采集终端是否收到所述第一单包指令的步骤。
7.根据权利要求6所述的方法,其特征在于,所述判断程序更新区是否已经升级的步骤具体包括:
判断所述第一单包指令的第三CRC校验码与所述程序更新区的CRC校验码是否相等,如果相等,则进行判断所述程序更新区是否正在升级的步骤;
如果不相等,则判断是否所述所有程序包升级成功。
8.根据权利要求6所述的方法,其特征在于,所述判断程序更新区是否正在升级的步骤具体包括:
判断所述程序更新区的升级状态字是否为升级中,如果是,则进行判断所述采集终端是否收到所述第一单包指令的步骤;
如果不是,则判断是否所述所有程序包升级成功。
9.根据权利要求6所述的方法,其特征在于,所述判断采集终端是否收到所述第一单包指令的步骤具体包括:
检查所述程序更新区的升级进度标志是否为0,如果为0,则所述采集终端已经收到所述第一单包指令的所述程序包,升级完成;
如果为1,则判断是否所述所有程序包升级成功。
10.根据权利要求1所述的方法,其特征在于,所述判断是否所有程序包升级成功包括:
判断是否已接收所述所有程序包的步骤;
判断是否所述所有程序包已升级的步骤。
11.根据权利要求10所述的方法,其特征在于,所述判断是否已接收所述所有程序包的步骤具体包括:
检查所有程序包标志是否为已写过,如果为已写过,则进行判断是否所述所有程序包已升级的步骤;
如果为未写过,则返回继续接收单包指令。
12.根据权利要求10所述的方法,其特征在于,所述判断是否所有程序包已升级的步骤具体包括:
判断所述程序运行区的CRC校验码与全部单包指令的第四校验码是否相等,如果相等,则将所述程序运行区升级状态字置为程序升级完成;
如果不相等,则升级过程发生错误,结束升级。
13.根据权利要求1所述的方法,其特征在于,所述接收第二单包指令,对所述未成功升级的程序包进行点对点升级包括:
判断所述程序更新区是否已经升级的步骤;
判断所述程序更新区是否正在升级的步骤;
判断所述采集终端是否收到所述第二单包指令的步骤。
14.根据权利要求13所述的方法,其特征在于,所述判断程序更新区是否已经升级的步骤具体包括:
判断所述第二单包指令的第五CRC校验码与所述程序更新区的CRC校验码是否相等,如果相等,则进行判断所述程序更新区是否正在升级的步骤;
如果不相等,则继续接收其他单包指令。
15.根据权利要求13所述的方法,其特征在于,所述判断程序更新区是否正在升级的步骤具体包括:
判断所述程序更新区的升级状态字是否为已写,如果为已写,则进行判断所述采集终端是否收到所述第二单包指令的步骤;
如果为未写,则继续接收其他单包指令。
16.根据权利要求13所述的方法,其特征在于,所述判断采集终端是否收到所述第二单包指令的步骤具体包括:
判断所述程序更新区的升级进度标志是否为0,如果为0,则所述第二单包指令的程序包升级完成;
如果不为0,则继续接收其他单包指令。
17.一种电力线载波远程升级的终端,其特征在于,包括:
广播判断模块,用于自集中器接收包含广播发送次数的升级指令,判断程序升级次数是否达到所述广播发送次数,如果未达到,则判断采集终端是否需要升级;
第一升级判断模块,用于自所述集中器接收第一单包指令,将所述第一单包指令的程序包写入程序更新区,判断所述第一单包指令内的所述程序包是否升级完成;
第二升级判断模块,用于当所述第一单包指令内程序包升级完成,则判断是否所有程序包升级成功;
单点升级模块,用于接收包含未成功升级程序包的第二单包指令,对所述未成功升级的程序包进行点对点升级。
18.根据权利要求17所述的终端,其特征在于,所述广播判断模块还用于如果达到所述广播发送次数,则结束广播升级。
19.根据权利要求17所述的终端,其特征在于,所述广播判断模块包括指令判断子模块、程序判断子模块:
所述指令判断子模块用于判断所述升级指令是否是正确的升级指令;
所述程序判断子模块用于判断所述采集终端的程序更新区的程序是否是最新程序。
20.根据权利要求19所述的终端,其特征在于,所述指令判断子模块具体用于判断所述升级指令的第一CRC校验码与所述采集终端的程序运行区的CRC校验码是否相等,如果相等,则所述升级指令是正确的升级指令;
如果不相等,则返回判断所述采集终端的程序升级次数是否达到所述广播发送次数。
21.根据权利要求19所述的终端,其特征在于,所述程序判断子模块具体用于判断所述升级指令的第二CRC校验码与所述程序更新区的CRC校验码是否相等,如果不相等,则准备进行程序升级;
如果相等,则判断所述程序更新区的升级状态是否为升级中/刚完成升级,如果是,则返回判断所述采集终端的程序升级次数是否达到所述广播发送次数;如果不是,则准备进行程序升级。
22.根据权利要求17所述的终端,其特征在于,所述第一升级判断模块包括第一程序判断子模块、第二程序判断子模块、第一指令判断子模块:
所述第一程序判断子模块用于判断所述程序更新区是否已经升级;
所述第二程序判断子模块用于判断所述程序更新区是否正在升级;
所述第一指令判断子模块用于判断所述采集终端是否收到所述第一单包指令。
23.根据权利要求22所述的终端,其特征在于,所述第一程序判断子模块具体用于判断所述第一单包指令的第三CRC校验码与所述程序更新区的CRC校验码是否相等,如果相等,则进行判断所述程序更新区是否正在升级的步骤;
如果不相等,则判断是否所述所有程序包升级成功。
24.根据权利要求22所述的终端,其特征在于,所述第二程序判断子模块具体用于判断所述程序更新区的升级状态字是否为升级中,如果是,则进行判断所述采集终端是否收到所述第一单包指令的步骤;
如果不是,则判断是否所述所有程序包升级成功。
25.根据权利要求22所述的终端,其特征在于,所述第一指令判断子模块具体用于检查所述程序更新区的升级进度标志是否为0,如果为0,则所述采集终端已经收到所述第一单包指令的程序包,升级完成;
如果为1,则判断是否所述所有程序包升级成功。
26.根据权利要求17所述的终端,其特征在于,所述第二升级判断模块包括程序接收判断子模块、程序升级判断子模块:
所述程序接收判断子模块用于判断是否已接收所述所有程序包;
所述程序升级判断子模块用于判断是否所述所有程序包已升级。
27.根据权利要求26所述的终端,其特征在于,所述程序接收判断子模块具体用于检查所述所有程序包标志是否为已写过,如果为已写过,则进行判断是否所述所有程序包已升级的步骤;
如果为未写过,则返回继续接收单包指令。
28.根据权利要求26所述的终端,其特征在于,所述程序升级判断子模块具体用于判断所述程序运行区的CRC校验码与全部单包指令的第四校验码是否相等,如果相等,则将所述程序运行区升级状态字置为程序升级完成;
如果不相等,则升级过程发生错误,结束升级。
29.根据权利要求17所述的终端,所述单点升级模块包括第三程序判断子模块、第四程序判断子模块、第二指令判断子模块:
所述第三程序判断子模块用于判断所述程序更新区是否已经升级;
所述第四程序判断子模块用于判断所述程序更新区是否正在升级;
所述第二指令判断子模块用于判断所述采集终端是否收到所述第二单包指令。
30.根据权利要求29所述的终端,其特征在于,所述第三程序判断模子块具体用于判断所述第二单包指令的第五CRC校验码与所述程序更新区的CRC校验码是否相等,如果相等,则进行判断所述程序更新区是否正在升级的步骤;
如果不相等,则继续接收其他单包指令。
31.根据权利要求29所述的终端,其特征在于,所述第四程序判断子模块具体用于判断所述程序更新区的升级状态字是否为已写,如果为已写,则进行判断所述采集终端是否收到所述第二单包指令的步骤;
如果为未写,则继续接收其他单包指令。
32.根据权利要求29所述的终端,其特征在于,所述第二指令判断子模块具体用于判断所述程序更新区的升级进度标志是否为0,如果为0,则所述第二单包指令的程序包升级完成;
如果不为0,则继续接收其他单包指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310686818.9A CN104717252B (zh) | 2013-12-16 | 2013-12-16 | 一种电力线载波远程升级方法和终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310686818.9A CN104717252B (zh) | 2013-12-16 | 2013-12-16 | 一种电力线载波远程升级方法和终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104717252A CN104717252A (zh) | 2015-06-17 |
CN104717252B true CN104717252B (zh) | 2018-02-13 |
Family
ID=53416211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310686818.9A Active CN104717252B (zh) | 2013-12-16 | 2013-12-16 | 一种电力线载波远程升级方法和终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104717252B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104951341A (zh) * | 2015-06-18 | 2015-09-30 | 烟台东方威思顿电气股份有限公司 | 一种采集器的远程升级方法 |
CN107273158B (zh) * | 2017-06-08 | 2021-10-26 | 广东美的暖通设备有限公司 | 程序升级方法及装置、主机、从机和多联机空调系统 |
CN108011655A (zh) * | 2018-01-08 | 2018-05-08 | 上海德澜电气集团有限公司 | 一种基于电力线载波通信的iap方法 |
CN108510727A (zh) * | 2018-04-03 | 2018-09-07 | 杭州炬华科技股份有限公司 | 基于dlms的宽带载波通讯及采集模块的远程升级方法 |
CN109445824B (zh) * | 2018-11-08 | 2022-03-01 | 国网河北省电力有限公司电力科学研究院 | 一种测控装置的更新方法、系统及终端设备 |
CN109639507B (zh) * | 2019-01-14 | 2021-11-23 | 南京杰思微电子技术有限公司 | 一种宽带电力线载波通信网络升级方法 |
CN112015442B (zh) * | 2019-05-31 | 2024-04-02 | 南京理控物联技术有限公司 | 一种非公网通信的单灯控制器批量远程升级软件的方法 |
CN110764801B (zh) * | 2019-09-29 | 2024-02-27 | 国网湖南省电力有限公司 | 一种高速电力线载波远程升级方法及装置 |
CN112732306A (zh) * | 2019-10-28 | 2021-04-30 | 上海铁路通信有限公司 | 一种室外采集设备远程软件升级方法及系统 |
CN111190624A (zh) * | 2019-12-29 | 2020-05-22 | 珠海市京澳特电子有限公司 | 一种矿灯充电柜采充板通过广播方式进行升级的方法 |
CN111258616B (zh) * | 2020-01-09 | 2023-09-08 | 深圳市东深电子股份有限公司 | 基于lora通信的水利rtu采集功能升级方法 |
CN112688942B (zh) * | 2020-12-23 | 2022-02-11 | 南方电网电力科技股份有限公司 | 基于esam的电能表固件程序升级方法、装置、介质及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1953376A (zh) * | 2005-10-18 | 2007-04-25 | 河南省863软件孵化器有限公司 | 无线终端设备远程软件升级的系统和方法 |
CN101146291A (zh) * | 2007-10-10 | 2008-03-19 | 深圳华强信息产业有限公司 | 车载gps终端远程无线升级方法 |
CN101610604A (zh) * | 2009-06-18 | 2009-12-23 | 中兴通讯股份有限公司 | 一种软件升级方法及系统 |
CN102722383A (zh) * | 2012-05-22 | 2012-10-10 | 航天数字传媒有限公司 | 软件升级方法和数字发行终端 |
CN102799454A (zh) * | 2012-07-13 | 2012-11-28 | 中广传播集团有限公司 | 一种终端软件空中升级与加载的方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4576130B2 (ja) * | 2004-02-12 | 2010-11-04 | パイオニア株式会社 | 通信系アプリケーションプログラムのバージョン更新方法及びそのプログラム |
US20070282458A1 (en) * | 2006-05-30 | 2007-12-06 | Takahiro Yamada | Control apparatus, control method and monitoring control system |
-
2013
- 2013-12-16 CN CN201310686818.9A patent/CN104717252B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1953376A (zh) * | 2005-10-18 | 2007-04-25 | 河南省863软件孵化器有限公司 | 无线终端设备远程软件升级的系统和方法 |
CN101146291A (zh) * | 2007-10-10 | 2008-03-19 | 深圳华强信息产业有限公司 | 车载gps终端远程无线升级方法 |
CN101610604A (zh) * | 2009-06-18 | 2009-12-23 | 中兴通讯股份有限公司 | 一种软件升级方法及系统 |
CN102722383A (zh) * | 2012-05-22 | 2012-10-10 | 航天数字传媒有限公司 | 软件升级方法和数字发行终端 |
CN102799454A (zh) * | 2012-07-13 | 2012-11-28 | 中广传播集团有限公司 | 一种终端软件空中升级与加载的方法 |
Non-Patent Citations (2)
Title |
---|
《一种电力线载波路由远程升级方法》;陈艳等;《计算机科学》;20131015;第40卷(第10期);第87页-第91页 * |
《基于电力线载波与GPRS相结合的远程抄表系统》;李楠等;《电测与仪表》;20070925;第44卷(第501期);第33-37页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104717252A (zh) | 2015-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104717252B (zh) | 一种电力线载波远程升级方法和终端 | |
CN103646214B (zh) | 一种在配电终端中建立可信环境的方法 | |
CN105786567A (zh) | 用于轻应用与主应用信息交互的中间件及iOS应用子模块动态升级方法 | |
CN109992571B (zh) | 一种智能变电站配置文件在线闭环校验系统及校验方法 | |
CN102486749B (zh) | 数据驱动测试方法及系统 | |
CN106707848A (zh) | 一种控制系统的控制程序组织结构和下载方法 | |
CN105354070A (zh) | 一种通过i2c升级设备固件的方法 | |
CN103926592B (zh) | 一种北斗rd通信虚拟指挥机的实现方法 | |
CN110096685A (zh) | 一种设备标识生成方法及装置 | |
CN103024074A (zh) | 基于gprs的dsp远程无线升级方法 | |
CN106444568A (zh) | 一种数据更新方法及装置 | |
CN103841119B (zh) | 基于Home‑IOT云关实现设备接入认证的方法及系统 | |
CN108649691A (zh) | 一种适用于app动态加载的配电终端即插即用方法 | |
CN106487575A (zh) | 一种基于电力线通信的通信模块批量升级方法 | |
CN107329738A (zh) | 组件更新方法及装置 | |
CN109951842A (zh) | 一种蓝牙固件升级中保留ble名称及mac地址的方法 | |
CN104750531A (zh) | 一种嵌入式系统在线刷新程序的方法 | |
CN105760194A (zh) | 一种dsp控制系统软件升级方法及装置 | |
CN107621943A (zh) | 一种fpga动态批量烧写系统及方法 | |
CN107134124A (zh) | 宽带载波通信模块载波芯片抄表接口统一管理控制方法 | |
CN107168750A (zh) | 一种固件升级保护方法及系统 | |
CN105930177A (zh) | 一种应用安装方法及装置 | |
CN101551769B (zh) | 可配置固件的烧结方法及装置 | |
CN111679849A (zh) | 一种多层拓扑管理结构的设备升级方法及充电桩系统 | |
CN106998481A (zh) | 一种在直播间列表页面中固定直播间位置的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |