电能表嵌入式软件远程差异化升级方法及升级系统
技术领域
本发明属于电能仪表技术领域,尤其涉及一种电能表嵌入式软件远程差异化升级方法及升级系统。
背景技术
随着电网自动化水平的不断提高,电能表从机械表转变为电子式智能电能表,该电子式智能电能表不仅可以作为电费计量器具,而且还具有电网检测、电网事件记录、负荷控制等多种功能。
同时,国家电网以及中国南网电网公司对电能表技术要求做出了统一化规范,但是,省、市地方局电力公司还是存在一定的差异化需求。因此,需要批量升级电能表程序。
现有的电能表程序的升级方法主要是拆开电能表上盖,然后通过编程器接口烧写新程序。然而,现有的电能表程序的升级方法存在以下几个方面的问题:
第一:需要人工通过编程器烧写程序,因此,对工作人员的需求量多且专业技术要求高,从而增加的了人工成本。
第二:需要人工对每一个电能表进行拆盖、烧写程序等处理,因此,存在升级速度低的技术问题。
第三:批量拆卸电能表上盖后,很容易造成上盖的混淆,导致升级处理完成后,上盖与电能表表体不对应的技术问题的发生。
综上所述,如何针对电能表的现有版本与新版本的差异,进行差异化升级处理,解决现有的电能表程序的升级方法存在的升级速度低,且人工成本高等技术问题,是当前亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种电能表嵌入式软件远程差异化升级方法及升级系统,解决现有的电能表程序的升级方法存在的升级速度低,且人工成本高等技术问题。
为实现上述目的,本发明提供了一种电能表嵌入式软件远程差异化升级方法,其包括如下步骤:
客户端获取电能表的软件版本信息,并将所述软件版本信息与所述客户端的最新软件版本信息进行比对,获得差异化数据信息。
所述客户端生成切换升级命令,并将所述切换升级命令发送至所述电能表,所述电能表包括应用区和更新加载区。
所述电能表将执行所述切换升级命令生成的切换操作结果信息发送至所述客户端,所述切换升级命令为从应用区切换到更新加载区执行命令。
若所述切换操作结果信息为切换成功时,所述客户端遍历计算最新软件版本信息的应用代码的第一CRC校验和。
所述客户端将所述差异化数据信息发送至所述电能表,以及发送完成所述差异化数据信息后,将根据所述第一CRC校验和生成的升级完成命令发送至所述电能表。
所述电能表根据所述差异化数据信息和所述升级完成命令进行升级处理。
优选地,所述客户端生成切换升级命令,并将所述切换升级命令发送至所述电能表的步骤,包括:
所述客户端生成切换升级命令。
所述客户端对所述切换升级命令进行加密处理。
所述客户端将加密处理后的切换升级命令发送至所述电能表。
优选地,所述电能表将执行所述切换升级命令生成的切换操作结果信息发送至所述客户端,所述切换升级命令为从应用区切换到更新加载区执行命令的步骤,包括:
电能表接收切换升级命令,所述电能表还包括系统复位区和备份区。
所述电能表将所述更新加载区的更新加载中断向量数据帧存储至所述系统复位区。
所述电能表将所述应用区的应用中断向量数据帧存储至所述备份区。
所述电能表执行所述切换升级命令后,生成切换操作结果信息,所述切换升级命令为从应用区切换到更新加载区执行命令。
所述电能表将所述切换操作结果信息发送至所述客户端。
优选地,所述电能表根据所述差异化数据信息和所述升级完成命令进行升级处理的步骤之后,包括:
所述电能表根据所述差异化数据信息和所述升级完成命令进行升级处理的过程中出现中断,以致升级处理中止。
所述电能表重启后,所述电能表根据所述系统复位区的所述更新加载中断向量数据帧继续升级处理。
优选地,所述客户端将所述差异化数据信息发送至所述电能表,以及发送完成所述差异化数据信息后,将根据所述第一CRC校验和生成的升级完成命令发送至所述电能表的步骤,包括:
所述客户端采用错误反馈机制的数据重传方法将所述差异化数据信息发送至所述电能表。
所述客户端发送完成所述差异化数据信息后,根据所述第一CRC校验和生成升级完成命令。
所述客户端将所述升级完成命令发送至所述电能表。
优选地,所述电能表根据所述差异化数据信息和所述升级完成命令进行升级处理的步骤,包括:
电能表接收到的是所述差异化数据信息,所述差异化数据信息包括应用数据帧和应用中断向量数据帧。
所述电能表判断所述差异化数据信息的数据类型。
若为所述应用中断向量数据帧,电能表将所述应用中断向量数据帧存储至备份区。
若为所述应用数据帧,所述应用数据帧包括存储地址信息,所述电能表将所述应用数据帧存储至所述存储地址信息对应的位置。
优选地,所述电能表根据所述差异化数据信息和所述升级完成命令进行升级处理的步骤,还包括:
所述电能表接收到的是所述升级完成命令,所述电能表遍历计算所述应用区和所述备用区的代码的第二CRC校验和,所述升级完成命令包括所述第一CRC校验和。
所述电能表比对所述第一CRC校验和与所述第二CRC检验和是否相等。
若相等,将所述备份区中的所述应用中断向量数据帧存储至所述系统复位区,且所述电能表根据差异化数据信息进行升级处理,升级完成后,所述电能表执行复位操作。
若不相等,所述电能表继续接收所述客户端的差异化数据信息。
此外,为实现上述目的,本发明还提供了一种远程差异化升级系统,其包括相互通信连接的客户端和电能表。
所述客户端,用于获取所述电能表的软件版本信息;还用于比对所述软件版本信息与最新软件版本信息,获得差异化数据信息;还用于生成切换升级命令;还用于遍历计算最新软件版本信息的应用代码的第一CRC校验和;以及还用于根据所述第一CRC校验和生成升级完成命令。
所述电能表,用于执行所述切换升级命令;还用于生成切换操作结果信息;还用于根据所述差异化数据信息和所述升级完成命令进行升级处理。
优选地,所述客户端包括获取模块、客户端处理模块、切换升级命令生成模块和客户端通信模块。
获取模块,用于获取所述电能表的软件版本信息。
客户端处理模块,用于比对所述软件版本信息与最新软件版本信息,获得差异化数据信息;还用于遍历计算最新软件版本信息的应用代码的第一CRC校验和;还用于根据所述第一CRC校验和生成升级完成命令;以及还用于对所述切换升级命令进行加密处理。
切换升级命令生成模块,用于生成切换升级命令。
客户端通信模块,用于发送切换升级命令、所述差异化数据信息和所述升级完成命令至电能表,还用于接收电能表发送的切换操作结果信息。
优选地,所述电能表包括电能表处理模块和电能表通信模块。
所述电能表处理模块,用于根据所述切换升级命令执行切换操作,还用于生成切换操作结果信息,还用于计算应用区和备份区里面代码的第二CRC校验和,还用于比对第一CRC校验和与第二CRC校验和,以及用于根据所述差异化数据信息和所述升级完成命令进行升级处理。
所述电能表通信模块,用于将所述切换操作结果信息发送至所述客户端,还用于接收客户端发送的切换升级命令以及差异化数据信息和升级完成命令。
本发明通过客户端负责电能表程序的升级,不需要工作人员到安装电能表的现场去拆卸电能表,以及通过编程器烧写程序,减少了工作人员的需求量,从而,达到了降低人工成本的技术效果。
本发明通过客户端获取电能表的软件版本信息,比对该软件版本信息与最新软件版本信息,以致获得差异化数据信息。因此,不需要工作人员针对不同的电能表烧写不同的程序,降低了对工作人员的专业技术要求,从而,达到了进一步的降低了人工成本的技术效果。
本发明的电能表根据该差异化数据信息进行升级处理,因此,客户端与电能表之间也只需要传输差异化数据信息,从而,达到了减少升级数据信息的传输时间的技术效果。
同时,电能表也只需要存储差异化数据信息,从而,达到了降低对电能表的存储空间容量需求的技术效果。
最后,电能表只需要针对软件版本之间的差异,利用差异化数据进行升级便可,从而,达到了提高电能表的升级速度的技术效果。
说明书附图
图1为本发明电能表嵌入式软件远程差异化升级方法实施例1的流程示意图;
图2为本发明电能表嵌入式软件远程差异化升级方法实施例2的流程示意图;
图3为本发明电能表嵌入式软件远程差异化升级方法实施例3的流程示意图;
图4为本发明电能表嵌入式软件远程差异化升级方法实施例4的流程示意图;
图5为本发明电能表嵌入式软件远程差异化升级方法实施例5的流程示意图;
图6为本发明电能表嵌入式软件远程差异化升级方法实施例6的流程示意图;
图7为本发明电能表嵌入式软件远程差异化升级方法实施例7的流程示意图;
图8为本发明远程差异化升级系统实施例8的方框示意图;
图9为本发明远程差异化升级系统中客户端实施例9的功能模块示意图;
图10为本发明远程差异化升级系统中电能表实施例10的功能模块示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用来限定本发明。
实施例1
参见图1,图1为本发明电能表嵌入式软件远程差异化升级方法实施例1的流程示意图。
为实现上述目的,在实施例1中,本发明提供了一种电能表嵌入式软件远程差异化升级方法,其包括如下步骤:
步骤S10,客户端获取电能表的软件版本信息,并将所述软件版本信息与所述客户端的最新软件版本信息进行比对,获得差异化数据信息。
客户端与电能表通过无线或有线网络通信连接,客户端通过网络获取与之通信连接的电能表的软件版本信息。
客户端存储有最新软件版本信息,该最新软件版本信息可以为电能表软件的最新版本,也可以为省、市局电力公司根据自己的需求更新的软件版本。
客户端将获取的软件版本信息与最新软件版本信息进行比对。
若比对成功时,客户端不需要对该电能表进行差异化升级处理,则对下一个电能表的是否需要进行差异化升级进行判定。
若比对不成功时,客户端获得获取的软件版本信息与最新软件版本信息之间的差异化数据信息。
步骤S11,所述客户端生成切换升级命令,并将所述切换升级命令发送至所述电能表,所述电能表包括应用区和更新加载区。
当客户端获得差异化数据信息后,客户端生成切换升级命令,并将该切换升级命令发送至电能表。
电能表的存储器包括应用区和更新加载区。电能表在接收到该切换升级命令之前,执行应用区的应用代码。
步骤S12,所述电能表将执行所述切换升级命令生成的切换操作结果信息发送至所述客户端,所述切换升级命令为从应用区切换到更新加载区执行命令。
电能表接收到客户端发送的切换升级命令,执行该切换升级命令,以致电能表从应用区切换到执行更新加载区的代码。
电能表在执行该切换升级命令时,生成切换操作结果信息。
若切换操作结果信息为电能表从应用区切换到更新加载区没有成功时,电能表将该切换操作结果信息发送至客户端。
客户端再次发送切换升级命令至电能表,以致电能表从应用区切换到更新加载区成功。
步骤S13,若所述切换操作结果信息为切换成功时,所述客户端遍历计算最新软件版本信息的应用代码的第一CRC校验和。
当客户端接收到电能表发送的切换操作结果信息为切换成功时,客户端遍历计算最新软件版本信息的应用代码的第一CRC(Cyclic RedundancyCheck)校验和。
步骤S14,所述客户端将所述差异化数据信息发送至所述电能表,以及发送完成所述差异化数据信息后,将根据所述第一CRC校验和生成的升级完成命令发送至所述电能表。
客户端将获得的差异化数据信息,通过数据帧的形式发送至电能表。
当客户端将差异化数据信息的所有的数据帧发送至电能表时,客户端根据该第一CRC校验和生成升级完成命令,即该升级完成命令包括该第一CRC校验和。
客户端将该升级完成命令发送至电能表。
步骤S15,所述电能表根据所述差异化数据信息和所述升级完成命令进行升级处理。
本发明改进电能表Flash存储器的软件架构,用来解决本发明的技术问题,改进的电能表Flash存储器的软件架构包括如下两种:
1、第一种为:
2、第二种为:
由于电能表的MCU(Micro Control Unit)微控制单元上电复位,默认从OX00000000地址运行,所以,留取预设固定大小的空间,用于存储系统复位中断向量数据帧。
该系统复位区后面的软件架构如下:
若电能表的MCU的RAM(random access memory)随机存取存储器足够大时,上述两种软件架构下的备份区放置于RAM上,电能表的Flash存储器不必预留备份区。
电能表接收客户端发送的差异化数据信息的数据帧,并对数据帧进行存储,直至接收到升级完成命令。
电能表接收到升级完成命令后,利用接收到的差异化数据信息进行升级处理。
本发明通过客户端负责电能表程序的升级,不需要工作人员到安装电能表的现场去拆卸电能表,以及通过编程器烧写程序,减少了工作人员的需求量,从而,达到了降低人工成本的技术效果。
本发明通过客户端获取电能表的软件版本信息,比对该软件版本信息与最新软件版本信息,以致获得差异化数据信息。因此,不需要工作人员针对不同的电能表烧写不同的程序,降低了对工作人员的专业技术要求,从而,达到了进一步的降低了人工成本的技术效果。
本发明的电能表根据该差异化数据信息进行升级处理,因此,客户端与电能表之间也只需要传输差异化数据信息,从而,达到了减少升级数据信息的传输时间的技术效果。
同时,电能表也只需要存储差异化数据信息,从而,达到了降低对电能表的存储空间容量需求的技术效果。
最后,电能表只需要针对软件版本之间的差异,利用差异化数据进行升级便可,从而,达到了提高电能表的升级速度的技术效果。
实施例2
参见图2,图2为本发明电能表嵌入式软件远程差异化升级方法实施例2的流程示意图。
在实施例2中,与上述实施例1的步骤基本相同,不同之处在于,所述步骤S11,包括:
步骤S20,所述客户端生成切换升级命令。
客户端获得差异化数据信息后,客户端生成切换升级命令。
步骤S21,所述客户端对所述切换升级命令进行加密处理。
客户端对该切换升级命令进行加密处理。
需要说明的是,现有的所有的加密算法均能够用来加密切换升级命令。
步骤S22,所述客户端将加密处理后的切换升级命令发送至所述电能表。
客户端对切换升级命令加密完成后,将加密处理后的切换升级命令
本发明中的网络通信数据均采用密文形式,电能表接收到密文后,需要将该密文解密成明文后,才能执行明文指令。
本发明通过对切换升级命令进行加密处理,达到了增强系统的安全性的技术效果。
实施例3
参见图3,图3为本发明电能表嵌入式软件远程差异化升级方法实施例3的流程示意图。
在实施例3中,与上述实施例1的步骤基本相同,不同之处在于,所述步骤S12,包括:
步骤S30,电能表接收切换升级命令,所述电能表还包括系统复位区和备份区。
电能表接收客户端发送过来的切换升级命令。
步骤S31,所述电能表将所述更新加载区的更新加载中断向量数据帧存储至所述系统复位区。
电能表切换成功后,电能表会生成一个更新加载中断向量数据帧,便于升级过程中出现了中断后,能够根据该更新加载中断向量数据帧继续进行升级处理。
电能表将该更新加载中断向量数据帧存储至系统复位区,便于电能表再次重启的时候,继续进行上次未进行完成的升级处理。
步骤S32,所述电能表将所述应用区的应用中断向量数据帧存储至所述备份区。
电能表切换成功后,执行当前的应用代码会产生一个应用中断向量数据帧,便于差异化升级完成后,电能表根据该应用中断向量继续执行该应用代码。
步骤S33,所述电能表执行所述切换升级命令后,生成切换操作结果信息,所述切换升级命令为从应用区切换到更新加载区执行命令。
电能表的上述相关数据存储后,强制关闭当前应用程序以及外部设备后,电能表执行该切换升级命令后,生成切换操作结果信息。
步骤S34,所述电能表将所述切换操作结果信息发送至所述客户端。
切换操作结果信息为切换成功或者是切换不成功两种信息。电能表将切换操作结果信息发送至客户端,便于客户端根据该切换操作结果信息,了解电能表是否已经切换成功。
本发明通过将切换过程中的相关数据信息进行存储后,便于升级过程中出现中断后,电能表能够在重启之后,继续前面未进行完成的升级操作,达到了加快升级速度的技术效果。
同时,本发明通过将当前应用程序的中断信息进行存储之后,便于差异化升级处理完成后,继续执行该应用程序。
实施例4
参见图4,图4为本发明电能表嵌入式软件远程差异化升级方法实施例4的流程示意图。
在实施例4中,与上述实施例3的步骤基本相同,不同之处在于,所述步骤S15之后,包括:
步骤S40,所述电能表根据所述差异化数据信息和所述升级完成命令进行升级处理的过程中出现中断,以致升级处理中止。
电能表接收到客户端发送的差异化数据信息和升级完成命令,根据该差异化数据信息进行差异化升级,在差异化升级过程中,电能表由于各种原因(譬如:电能表断电等)导致差异化升级出现中断,以致差异化升级中止。
步骤S41,所述电能表重启后,所述电能表根据所述系统复位区的所述更新加载中断向量数据帧继续升级处理。
电能表出现中断后,再次重启,根据系统复位区的更新加载中断向量数据帧继续进行差异化升级处理。
本发明通过事先存储了更新加载中断向量数据帧,以致电能表在差异化升级过程中出现了中断,能够在重启后,继续进行差异化升级,达到了加快升级速度的技术效果。
实施例5
参见图5,图5为本发明电能表嵌入式软件远程差异化升级方法实施例5的流程示意图。
在实施例5中,与上述实施例1的步骤基本相同,不同之处在于,所述步骤S14,包括:
步骤S50,所述客户端采用错误反馈机制的数据重传方法将所述差异化数据信息发送至所述电能表。
差异化数据信息包括多个数据帧。客户端采用错误反馈机制的数据重传方法将数据帧发送至电能表。
当客户端发送一个数据帧的过程中出现错误,客户端会再一次将该数据帧发送至电能表。
步骤S51,所述客户端发送完成所述差异化数据信息后,根据所述第一CRC校验和生成升级完成命令。
客户端将差异化数据信息包括的所有的数据帧发送完成后,客户端根据该第一CRC校验和生成升级完成命令,即该升级完成命令包括第一CRC校验和。
步骤S52,所述客户端将所述升级完成命令发送至所述电能表。
客户端在发送完成差异化数据信息包括的所有的数据帧后,将生成的升级完成命令发送至电能表。
本发明的客户端通过用错误反馈机制的数据重传方法,确保了发送至电能表的差异化数据信息的完整性,确保了电能表能够根据接收的差异化数据信息进行差异化升级,达到了保证差异化升级的正常运行。
实施例6
参见图6,图6为本发明电能表嵌入式软件远程差异化升级方法实施例6的流程示意图。
在实施例6中,与上述实施例1的步骤基本相同,不同之处在于,所述步骤S15,包括:
步骤S60,电能表接收到的是所述差异化数据信息,所述差异化数据信息包括应用数据帧和应用中断向量数据帧。
电能表接收客户端发送的差异化数据信息的数据帧,该差异化数据信息包括应用数据帧和应用中断向量数据帧。
步骤S61,所述电能表判断所述差异化数据信息的数据类型。
电能表判断差异化数据信息的数据帧为应用数据帧还是应用中断向量数据帧。
步骤S62,若为所述应用中断向量数据帧,电能表将所述应用中断向量数据帧存储至备份区。
当差异化数据信息的数据帧为应用中断向量数据帧时,电能表将该应用中断向量数据帧存储至备份区。
步骤S63,若为所述应用数据帧,所述应用数据帧包括存储地址信息,所述电能表将所述应用数据帧存储至所述存储地址信息对应的位置。
当差异化数据信息的数据帧为应用数据帧时,而该应用数据帧包括存储地址信息,电能表将该应用数据帧存储至该存储地址信息对应的存储空间。
本发明通过将差异化数据信息的应用数据帧和应用中断向量数据帧分开进行处理,使得差异化升级处理操作有序的进行,进一步地加快了升级速度。
实施例7
参见图7,图7为本发明电能表嵌入式软件远程差异化升级方法实施例7的流程示意图。
在实施例7中,与上述实施例1的步骤基本相同,不同之处在于,所述步骤S15,还包括:
步骤S70,所述电能表接收到的是所述升级完成命令,所述电能表遍历计算所述应用区和所述备用区的代码的第二CRC校验和,所述升级完成命令包括所述第一CRC校验和。
当电能表接收到客户端发送的升级完成命令时,电能表遍历计算应用区和备份区的代码的第二CRC校验和。
步骤S71,所述电能表比对所述第一CRC校验和与所述第二CRC检验和是否相等。
电能表比对升级完成命令中的第一CRC校验和与上述获得的第二CRC检验和,判断两者是否相等。
步骤S72,若相等,将所述备份区中的所述应用中断向量数据帧存储至所述系统复位区,且所述电能表根据差异化数据信息进行升级处理,升级完成后,所述电能表执行复位操作。
当两者相等时,电能表将备份区的应用中断向量数据帧存储至系统复位区,便于电能表复位后,执行切换操作执行前的应用程序,达到了不影响切换操作进行的应用程序的继续进行的技术效果。
由于客户端已经通过用错误反馈机制的数据重传方法将差异化数据信息发送完成,所以,当电能表接收到客户端的升级完成命令后,表明电能表已经接收完整的差异化数据信息。
步骤S73,若不相等,所述电能表继续接收所述客户端的差异化数据信息。
当两者不相等时,电能表继续接收客户端的差异化数据信息。
本发明通过比对第一CRC校验和第二CRC检验和,达到了进一步确定电能表已经接收到完整的差异化数据信息的所有的数据帧,确保了电能表能够根据接收到的差异化数据信息完成差异化升级,达到了保证差异化升级的无差错进行的技术效果。
实施例8
参见图8,图8为本发明远程差异化升级系统实施例8的方框示意图。
为实现上述目的,本发明实施例8还提供了一种远程差异化升级系统,其包括相互通信连接的客户端1和电能表2。
所述客户端1,用于获取所述电能表的软件版本信息;还用于比对所述软件版本信息与最新软件版本信息,获得差异化数据信息;还用于生成切换升级命令;还用于遍历计算最新软件版本信息的应用代码的第一CRC校验和;以及还用于根据所述第一CRC校验和生成升级完成命令。
所述电能表2,用于执行所述切换升级命令;还用于生成切换操作结果信息;还用于根据所述差异化数据信息和所述升级完成命令进行升级处理。
客户端1与电能表2通过无线或有线网络通信连接,客户端1通过网络获取与之通信连接的电能表2的软件版本信息。
客户端1存储有最新软件版本信息,该最新软件版本信息可以为电能表2软件的最新版本,也可以为省、市局电力公司根据自己的需求更新的软件版本。
客户端1将获取的软件版本信息与最新软件版本信息进行比对。
若比对成功时,客户端1不需要对该电能表2进行差异化升级处理,则对下一个电能表2的是否需要进行差异化升级进行判定。
若比对不成功时,客户端1获得获取的软件版本信息与最新软件版本信息之间的差异化数据信息。
当客户端1获得差异化数据信息后,客户端1生成切换升级命令,并将该切换升级命令发送至电能表2。
电能表2的存储器包括应用区和更新加载区。电能表2在接收到该切换升级命令之前,执行应用区的应用代码。
电能表2接收到客户端1发送的切换升级命令,执行该切换升级命令,以致电能表2从应用区切换到执行更新加载区的代码。
电能表2在执行该切换升级命令时,生成切换操作结果信息。
若切换操作结果信息为电能表2从应用区切换到更新加载区没有成功时,电能表2将该切换操作结果信息发送至客户端1。
客户端1再次发送切换升级命令至电能表2,以致电能表2从应用区切换到更新加载区成功。
当客户端1接收到电能表2发送的切换操作结果信息为切换成功时,客户端1遍历计算最新软件版本信息的应用代码的第一CRC(CyclicRedundancy Check)校验和。
客户端1将获得的差异化数据信息,通过数据帧的形式发送至电能表2。
当客户端1将差异化数据信息的所有的数据帧发送至电能表2时,客户端1根据该第一CRC校验和生成升级完成命令,即该升级完成命令包括该第一CRC校验和。
客户端1将该升级完成命令发送至电能表2。
所述电能表2根据所述差异化数据信息和所述升级完成命令进行升级处理。
本发明通过客户端1负责电能表2程序的升级,不需要工作人员到安装电能表2的现场去拆卸电能表2,以及通过编程器烧写程序,减少了工作人员的需求量,从而,达到了降低人工成本的技术效果。
本发明通过客户端1获取电能表2的软件版本信息,比对该软件版本信息与最新软件版本信息,以致获得差异化数据信息。因此,不需要工作人员针对不同的电能表2烧写不同的程序,降低了对工作人员的专业技术要求,从而,达到了进一步的降低了人工成本的技术效果。
本发明的电能表2根据该差异化数据信息进行升级处理,因此,客户端1与电能表2之间也只需要传输差异化数据信息,从而,达到了减少升级数据信息的传输时间的技术效果。
同时,电能表2也只需要存储差异化数据信息,从而,达到了降低对电能表2的存储空间容量需求的技术效果。
最后,电能表2只需要针对软件版本之间的差异,利用差异化数据进行升级便可,从而,达到了提高电能表2的升级速度的技术效果。
实施例9
参见图9,图9为本发明远程差异化升级系统中客户端实施例9的功能模块示意图。
在实施例9中,与上述实施例8的结构基本相同,不同之处在于,所述客户端1包括获取模块11、客户端处理模块13、切换升级命令生成模块12和客户端通信模块14。
获取模块11,用于获取所述电能表的软件版本信息。
客户端1与电能表建立通信连接后,客户端1的获取模块11获取电能表的软件版本信息。
客户端处理模块13,用于比对所述软件版本信息与最新软件版本信息,获得差异化数据信息;还用于遍历计算最新软件版本信息的应用代码的第一CRC校验和;还用于根据所述第一CRC校验和生成升级完成命令;以及还用于对所述切换升级命令进行加密处理。
客户端处理模块比对获取的软件版本信息与客户端存储的最新软件版本信息。判断两者是否相同。
若相同,客户端1判断下一个电能表是否需要进行差异化升级。
若不相同,获得获取的软件版本信息与客户端1存储的最新软件版本信息两者之间的差异化数据信息。
切换升级命令生成模块12,用于生成切换升级命令。
客户端1的切换升级命令生成模块12在客户端处理模块获得差异化数据信息之后,生成切换升级命令。
客户端通信模块14,用于发送切换升级命令、所述差异化数据信息和所述升级完成命令至电能表,接收电能表发送的切换操作结果信息。
客户端通信模块14将切换升级命令通过网络发送至电能表。
电能表接收到切换升级命令后,进行切换操作,并反馈切换操作结果信息给客户端。
客户端1的客户端处理模块13接收到电能表发送的切换操作结果信息。
若客户端处理模块13根据该切换操作结果信息判断切换不成功时,客户端通信模块14再次将切换升级命令通过网络发送至电能表。
若客户端处理模块13根据该切换操作结果信息判断切换成功时,客户端处理模块13遍历计算最新软件版本信息的应用代码的第一CRC校验和,客户端通信模块14将差异化数据信息以数据帧的形式发送至电能表。
当差异化数据信息的数据帧发送完成之后,客户端发送升级完成命令发送至电能表。
实施例10
参见图10,图10为本发明远程差异化升级系统中电能表实施例10的功能模块示意图。
在实施例10中,与上述实施例8的结构基本相同,不同之处在于,所述电能表2包括电能表处理模块和电能表通信模块;
所述电能表处理模块,用于根据所述切换升级命令执行切换操作,还用于生成切换操作结果信息,还用于计算应用区和备份区里面代码的第二CRC校验和,还用于比对第一CRC校验和与第二CRC校验和、以及用于根据所述差异化数据信息和所述升级完成命令进行升级处理;
所述电能表通信模块,用于将所述切换操作结果信息发送至所述客户端,接收客户端发送的切换升级命令以及差异化数据信息和升级完成命令。
电能表的电能表通信模块接收到客户端的切换升级命令,电能表的电能表处理模块执行该切换升级命令,以致电能表从应用区跳转到更新加载区执行应用程序。
电能表处理模块生成切换操作结果信息,客户端根据该切换操作结果信息判定电能表切换到更新加载区执行命令时,电能表通信模块接收客户端发送的差异化数据信息。
当接收完成差异化数据信息后,电能表通信模块接收到客户端发送的升级完成命令。
电能表处理模块计算应用区和备份区里面代码的第二CRC校验和,并将该第二CRC校验和与升级完成命令中包含的第一CRC校验和进行比对。
若比对相等时,电能表处理模块根据该差异化数据信息进行差异化升级处理。
若比对不相等时,电能表通信模块继续接收客户端的差异化数据信息。
以上对发明的具体实施方式进行了详细说明,但其只作为范例,本发明并不限制与以上描述的具体实施方式。对于本领域的技术人员而言,任何对该发明进行的等同修改或替代也都在本发明的范畴之中,因此,在不脱离本发明的精神和原则范围下所作的均等变换和修改、改进等,都应涵盖在本发明的范围内。