CN115102855B - 智能水表嵌入式软件在线升级方法及系统 - Google Patents
智能水表嵌入式软件在线升级方法及系统 Download PDFInfo
- Publication number
- CN115102855B CN115102855B CN202210227693.2A CN202210227693A CN115102855B CN 115102855 B CN115102855 B CN 115102855B CN 202210227693 A CN202210227693 A CN 202210227693A CN 115102855 B CN115102855 B CN 115102855B
- Authority
- CN
- China
- Prior art keywords
- upgrade
- program file
- water meter
- intelligent water
- file
- 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
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 title claims abstract description 129
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000012795 verification Methods 0.000 claims abstract description 5
- 230000005540 biological transmission Effects 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 4
- 238000004806 packaging method and process Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 5
- 230000006870 function Effects 0.000 description 5
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- 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/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Stored Programmes (AREA)
Abstract
本发明揭示了一种智能水表嵌入式软件在线升级方法及系统,所述在线升级方法包括:将加密的升级程序文件上传至服务器校验并存档;服务器将升级程序文件下发到智能水表;智能水表进行接收、校验、储存、备份及载入升级程序文件;应用程序把原有程序文件备份到外挂存储器芯片;应用程序强制重启MCU,重启MCU后进入引导程序升级;升级完成后将引导标志位标识为正常启动流程;重启MCU进入升级后的应用程序。本发明提出的智能水表嵌入式软件在线升级方法及系统,能够及时方便解决智能水表嵌入式软件程序可能存在的BUG,及时方便满足用户提出的要求,及时升级智能水表的技术,更好为用户服务。
Description
技术领域
本发明属于计量设备技术领域,涉及一种智能计量表,尤其涉及一种智能水表嵌入式软件在线升级方法及系统。
背景技术
随着技术的进步,越来越多的电表、水表等计量设备使用智能计量表。智能计量表终端存储有相应的软件;现有的软件预先设置于智能计量表中,通常无法更新。在需要对软件进行调整时,需要更换整个计量表或需要在现场打开外壳进行升级。
有鉴于此,如今迫切需要设计一种新的智能计量表,以便克服现有智能计量表存在的上述至少部分缺陷。
发明内容
本发明提供一种智能水表嵌入式软件在线升级方法及系统,能够及时方便解决智能水表嵌入式软件程序可能存在的BUG,及时方便满足用户提出的要求,及时升级智能水表的技术,更好为用户服务。
为解决上述技术问题,根据本发明的一个方面,采用如下技术方案:
一种智能水表嵌入式软件在线升级方法,所述嵌入式软件为智能水表内部电路上MCU所运行的程序,所述在线升级方法包括:
步骤S1、服务器通过无线网络连接智能水表内置无线远传数据电路;
步骤S2、在设定的时间/条件下,服务器将升级程序文件通过无线远程方式下发到智能水表;
步骤S3、智能水表进行接收升级所述应用程序文件后,通过覆盖原应用程序文件进行升级。
作为本发明的一种实施方式,所述在线升级方法包括:将加密的升级程序文件上传至服务器校验并存档;
所述步骤S3包括:智能水表进行接收、校验、储存、备份及载入升级程序文件,将升级程序文件准确有效的载入到智能水表电路中的外挂存储器芯片中保存;
当升级程序文件被保存后,应用程序把原有程序文件备份到外挂存储器芯片,然后将引导标志位标识为升级流程;
MCU内的应用程序强制重启MCU,重启MCU后进入引导程序;引导程序识别引导标志位为升级流程时,将保存在外挂存储器芯片内的升级程序文件解密后载入到MCU的外挂存储器芯片中覆盖原有的应用程序文件;完成后将引导标志位标识为正常启动流程;
重启MCU进入升级后的应用程序。
作为本发明的一种实施方式,所述升级程序文件以加密形式保存在所述服务器,所述升级程序文件以加密形式下发到智能水表;所述升级程序文件在被智能水表接收后,以加密形式保存在外挂存储器芯片中。
作为本发明的一种实施方式,所述升级程序文件在上传到所述服务器时,所述服务器通过识别所述升级程序文件的文件名、文件长度和文件后缀来检验所述升级程序文件的合法性;
所述升级程序文件在下载到智能水表的过程中,所述应用程序对所述升级程序文件的长度和CRC进行校验。
作为本发明的一种实施方式,所述升级程序文件在上传到所述服务器后,所述服务器对所述升级程序文件进行版本管理;
所述服务器向智能水表下发版本更新指令,指令内包含下发的版本号,所述应用程序通过识别所述升级程序文件的文件名及版本号,以确认达到升级条件;
所述升级条件包括:相同智能水表的所述升级程序文件的版本比现有所述应用程序的版本要高,或相同智能水表的所述升级通讯程序文件的版本比现有通讯程序文件的版本要高。
作为本发明的一种实施方式,所述升级程序文件在所述服务器下载到智能水表时,采用将所述升级程序文件进行分包的形式下载;若在下载过程中出现下载中断的情况,下一次下载时上次已下载所述升级程序文件的分包文件后,与已存入外挂存储器芯片内的所述升级程序文件的分包文件进行校验,校验成功后不用再次存入,若对比失败则从对比失败的所述升级程序文件的分包文件开始存入。
作为本发明的一种实施方式,所述外挂存储器芯片为外挂Flash芯片;智能水表MCU的外挂Flash芯片有两段各自独立的程序,分别是所述引导程序和所述应用程序,所述引导程序的作用为引导启动所述应用程序,及升级所述应用程序;
所述应用程序在本发明中的作用为从所述服务器接受所述升级程序文件,以及将所述升级程序文件转到外挂Flash芯片内。
作为本发明的一种实施方式,所述智能水表包括至少两个MCU,分别是测量部分和通讯部分,一个MCU为控制测量部分电路的运行,另一个MCU为控制无线远传数据电路的运行;这个二个部分都有所述引导程序和所述应用程序,能单独升级或一起升级。
根据本发明的另一个方面,采用如下技术方案:一种智能水表嵌入式软件在线升级系统,所述嵌入式软件为智能水表内部电路上MCU所运行的程序,所述在线升级系统包括:服务器及至少一智能水表;
所述服务器用以存储加密的升级程序文件,并将加密的升级程序文件校验并存档;在设定的时间/条件下,服务器将升级程序文件通过无线远程方式下发到智能水表;
所述智能水表用以接收、校验、储存、备份及载入升级程序文件,将升级程序文件准确有效的载入到智能水表电路中的外挂存储器芯片中保存;
所述智能水表包括MCU、外挂存储器芯片、引导程序及应用程序;
当升级程序文件被保存后,应用程序把原有程序文件备份到外挂存储器芯片,然后将引导标志位标识为升级流程;
应用程序强制重启MCU,重启MCU后进入引导程序;引导程序识别引导标志位为升级流程时,将保存在外挂存储器芯片内的升级程序文件解密后载入到MCU的外挂存储器芯片中覆盖原有的应用程序文件;完成后将引导标志位标识为正常启动流程;
所述智能水表在重启MCU后,进入升级后的应用程序。
作为本发明的一种实施方式,所述服务器还用以对所述升级程序文件进行版本管理;
所述服务器向智能水表下发版本更新指令,指令内包含下发的版本号,所述应用程序通过识别所述升级程序文件的文件名及版本号,以确认达到升级条件;
所述升级条件包括:相同智能水表的所述升级程序文件的版本比现有所述应用程序的版本要高,或相同智能水表的所述升级通讯程序文件的版本比现有通讯程序文件的版本要高。
作为本发明的一种实施方式,所述升级程序文件在上传到所述服务器时,所述服务器通过识别所述升级程序文件的文件名、文件长度和文件后缀来检验所述升级程序文件的合法性;
所述升级程序文件在下载到智能水表的过程中,所述应用程序对所述升级程序文件的长度和CRC进行校验。
本发明的有益效果在于:本发明提出的智能水表嵌入式软件在线升级方法及系统,可提高数据载入的安全性及精确度,同时可提高传送效率。
本发明能够及时方便解决智能水表嵌入式软件程序可能存在的BUG,及时方便满足用户提出的要求,及时升级智能水表的技术,更好为用户服务。
本发明方法中,数据的上传和下载采用了AES-128加密,进行密文传输,可保证网络传输的安全;Flash中储存的是加密包的数据,单片机采用锁定调试操作,保证了板载芯片的储存安全。
本发明方法包括数据上传时文件名规则的检验、数据下载时包数据的CRC校验、断传后文件名和已传数据的校验,载入程序时检验地址数据是否超限,任何校验的失败都会直接中断升级流程,并运行现有的应用代码,保证文件中数据在整个传输过程中的准确性。
附图说明
图1为本发明一实施例中在线升级系统的组成示意图。
图2为本发明一实施例中在线升级方法的流程图。
图3为本发明一实施例中在线升级方法中数据存入Flash的流程图。
图4为本发明一实施例中在线升级方法中应用程序升级流程图。
具体实施方式
下面结合附图详细说明本发明的优选实施例。
为了进一步理解本发明,下面结合实施例对本发明优选实施方案进行描述,但是应当理解,这些描述只是为进一步说明本发明的特征和优点,而不是对本发明权利要求的限制。
该部分的描述只针对几个典型的实施例,本发明并不仅局限于实施例描述的范围。相同或相近的现有技术手段与实施例中的一些技术特征进行相互替换也在本发明描述和保护的范围内。
说明书中各个实施例中的步骤的表述只是为了方便说明,本申请的实现方式不受步骤实现的顺序限制。说明书中的“连接”既包含直接连接,也包含间接连接。
本发明揭示一种智能水表嵌入式软件在线升级方法,所述嵌入式软件为智能水表内部电路上MCU所运行的程序,所述在线升级方法包括:服务器通过无线网络连接智能水表内置无线远传数据电路;在设定的时间/条件下,服务器将升级程序文件通过无线远程方式下发到智能水表;智能水表进行接收升级所述应用程序文件后,通过覆盖原应用程序文件进行升级。
在本发明的一种使用场景下,本发明通过将加密后的执行文件上传至服务器校验存档;在设定的时间或在智能水表需求下,将执行文件下发到智能水表;智能水表进行接收、校验、储存、备份和执行文件载入,将执行文件准确有效的载入到智能水表。
本发明将加密后的执行文件通过广域网上传至服务器(在一实施例中,本发明使用的是AES-128加密方案来加密执行文件,确保文件在广域网通路上的安全性),服务器通过识别该文件的文件名、文件长度和文件后缀来检验文件是否合法。服务器将合法的执行文件保存在服务器端,并通过版本信息进行版本管理。
在特定的时间或特定的条件下,服务器向设定智能水表下发版本更新指令,指令中包含下发版本的文件名;智能水表通过对文件名的识别以及版本的对比,以确认是否达到升级条件;在允许升级的情况下,智能水表向服务器发送下载请求,通过分包的方式将加密的执行文件发送至设定智能水表。
图3为本发明一实施例中在线升级方法中数据存入Flash的流程图;请参阅图3,在本发明的一实施例中,在下载加密执行文件过程中,智能水表将每一加密包进行长度及CRC的校验,通过校验的加密包会将整个包数据存入外挂Flash硬件中,存入加密包以确保外挂Flash中数据的安全性;在传输过程如果数据中断,下一次下载相同的加密文件,已存入的包数据只需和下传的加密包进行对比,对比成功无需反复存入,对比失败则从失败对应的扇区开始重新开始续传。
图4为本发明一实施例中在线升级方法中应用程序升级流程图;请参阅图4,在本发明的一实施例中,所述智能水表的代码执行区载有两段独立的执行代码,分别为引导代码和应用代码;引导代码的作用为引导启动应用代码和升级应用代码;应用代码负责一切功能实现包括空中下载文件到外挂Flash。
引导代码中会根据应用代码在引导标志位设置的标识来确认是启动应用代码还是升级应用代码。启动应用代码流程为:智能水表启动首先执行引导代码,引导代码会读取数据区(RAM)的一个引导标志位。当标志位标识为正常启动流程时,代码执行将跳转至应用代码区,应用代码启动。
在本发明的一实施例中,当应用代码接收完加密包并储存到外部Flash完成后,会将现运行的应用代码备份到外挂Flash的备份区域,以应对新版本程序无法注册联网;然后将引导标志位标识为升级流程。
执行重启进入引导代码,引导代码读取引导标志位为升级流程后,然后读取外部Flash的加密包,将内容解密后检验第一包数据中的地址数据是否超限,检验通过后逐包载入到应用代码区,完成后将引导标志位标识为正常启动流程,重启执行应用代码启动流程。当下载完成的加密包通过识别为引导执行文件的时候,那么就在完成下载后即时对加密包进行解密并更新引导执行代码。
图2为本发明一实施例中在线升级方法的流程图;请参阅图2,在本发明的一中使用场景中,所述在线升级方法包括如下步骤:
【步骤S1】将加密的升级程序文件上传至服务器校验并存档。
在本发明的一实施例中,所述升级程序文件以加密形式保存在所述服务器,所述升级程序文件以加密形式下发到智能水表;所述升级程序文件在被智能水表接收后,以加密形式保存在外挂存储器芯片中。
在本发明的一实施例中,所述升级程序文件在上传到所述服务器时,所述服务器通过识别所述升级程序文件的文件名、文件长度和文件后缀来检验所述升级程序文件的合法性。
【步骤S2】在设定的时间/条件下,服务器将升级程序文件通过无线远程方式下发到智能水表。
所述升级程序文件在下载到智能水表的过程中,所述应用程序对所述升级程序文件的长度和CRC进行校验。
在本发明的一实施例中,所述升级程序文件在上传到所述服务器后,所述服务器对所述升级程序文件进行版本管理。
所述服务器向智能水表下发版本更新指令,指令内包含下发的版本号,所述应用程序通过识别所述升级程序文件的文件名及版本号,以确认达到升级条件。所述升级条件可以包括:相同智能水表的所述升级程序文件的版本比现有所述应用程序的版本要高,或相同智能水表的所述升级通讯程序文件的版本比现有通讯程序文件的版本要高。
在一实施例中,所述升级程序文件在所述服务器下载到智能水表时,采用将所述升级程序文件进行分包的形式下载;若在下载过程中出现下载中断的情况,下一次下载时上次已下载所述升级程序文件的分包文件后,与已存入外挂存储器芯片内的所述升级程序文件的分包文件进行校验,校验成功后不用再次存入,若对比失败则从对比失败的所述升级程序文件的分包文件开始存入。
【步骤S3】智能水表进行接收、校验、储存、备份及载入升级程序文件,将升级程序文件准确有效的载入到智能水表电路中的外挂存储器芯片中保存。
图3为本发明一实施例中在线升级方法中数据存入Flash的流程图;请参阅图3,在本发明的一实施例中,所述外挂存储器芯片为外挂Flash芯片;智能水表MCU的外挂Flash芯片有两段各自独立的程序,分别是所述引导程序和所述应用程序,所述引导程序的作用为引导启动所述应用程序及升级所述应用程序。所述应用程序在本发明中的作用为从所述服务器接受所述升级程序文件,以及将所述升级程序文件转到外挂Flash芯片内。
此外,所述智能水表包括至少两个MCU,分别是测量部分和通讯部分,一个MCU为控制测量部分电路的运行,另一个MCU为控制无线远传数据电路的运行;这个二个部分都有所述引导程序和所述应用程序,能单独升级或一起升级。
【步骤S4】当升级程序文件被保存后,应用程序会把原有程序文件备份到外挂存储器芯片,然后将引导标志位标识为升级流程。图4为本发明一实施例中在线升级方法中应用程序升级流程图;可参阅图4。
【步骤S5】MCU内的应用程序强制重启MCU,重启MCU后进入引导程序;引导程序识别引导标志位为升级流程时,将保存在外挂存储器芯片内的升级程序文件解密后载入到MCU的外挂存储器芯片中覆盖原有的应用程序文件;完成后将引导标志位标识为正常启动流程。
【步骤S6】重启MCU进入升级后的应用程序。
本发明进一步揭示一种智能水表嵌入式软件在线升级系统,所述嵌入式软件为智能水表内部电路上MCU所运行的程序;图1为本发明一实施例中在线升级系统的组成示意图;请参阅图1,所述在线升级系统包括:服务器1及至少一智能水表2,所述服务器1可通过无线通信的方式与各智能水表2通信。
所述服务器1用以存储加密的升级程序文件,并将加密的升级程序文件校验并存档;在设定的时间下,服务器将升级程序文件通过无线远程方式下发到智能水表。
所述智能水表2用以接收、校验、储存、备份及载入升级程序文件,将升级程序文件准确有效的载入到智能水表电路中的外挂存储器芯片中保存。
所述智能水表包括MCU、外挂存储器芯片、引导程序及应用程序。当升级程序文件被保存后,应用程序把原有程序文件备份到外挂存储器芯片,然后将引导标志位标识为升级流程。
应用程序强制重启MCU,重启MCU后进入引导程序;引导程序识别引导标志位为升级流程时,将保存在外挂存储器芯片内的升级程序文件解密后载入到MCU的外挂存储器芯片中覆盖原有的应用程序文件;完成后将引导标志位标识为正常启动流程。所述智能水表在重启MCU后,进入升级后的应用程序。
在本发明的一实施例中,所述服务器还用以对所述升级程序文件进行版本管理。所述服务器向智能水表下发版本更新指令,指令内包含下发的版本号,所述应用程序通过识别所述升级程序文件的文件名及版本号,以确认达到升级条件。所述升级条件包括:相同智能水表的所述升级程序文件的版本比现有所述应用程序的版本要高,或相同智能水表的所述升级通讯程序文件的版本比现有通讯程序文件的版本要高。
在本发明的一实施例中,所述升级程序文件在上传到所述服务器时,所述服务器通过识别所述升级程序文件的文件名、文件长度和文件后缀来检验所述升级程序文件的合法性。服务器将合法的执行文件保存在服务器端,并通过版本信息进行版本管理。在特定的时间或特定的条件下,服务器向设定智能水表下发版本更新指令,指令中包含下发版本的文件名;智能水表通过对文件名的识别以及版本的对比,以确认是否达到升级条件;在允许升级的情况下,智能水表向服务器发送下载请求,通过分包的方式将加密的执行文件发送至设定智能水表。
所述升级程序文件在下载到智能水表的过程中,所述应用程序对所述升级程序文件的长度和CRC进行校验。通过校验的加密包会将整个包数据存入外挂Flash硬件中,存入加密包以确保外挂Flash中数据的安全性;在传输过程如果数据中断,下一次下载相同的加密文件,已存入的包数据只需和下传的加密包进行对比,对比成功无需反复存入,对比失败则从失败对应的扇区开始重新开始续传。
在本发明的一实施例中,所述智能水表的代码执行区载有两段独立的执行代码,分别为引导代码和应用代码;引导代码的作用为引导启动应用代码和升级应用代码;应用代码负责一切功能实现包括空中下载文件到外挂Flash芯片。引导代码中会根据应用代码在引导标志位设置的标识来确认是启动应用代码还是升级应用代码。启动应用代码流程为:智能水表启动首先执行引导代码,引导代码会读取数据区(RAM)的一个引导标志位。当标志位标识为正常启动流程时,代码执行将跳转至应用代码区,应用代码启动。
在本发明的一实施例中,当应用代码接收完加密包并储存到外部Flash完成后,会将现运行的应用代码备份到外挂Flash的备份区域,以应对新版本程序无法注册联网;然后将引导标志位标识为升级流程。执行重启进入引导代码,引导代码读取引导标志位为升级流程后,然后读取外部Flash的加密包,将内容解密后检验第一包数据中的地址数据是否超限,检验通过后逐包载入到应用代码区,完成后将引导标志位标识为正常启动流程,重启执行应用代码启动流程。当下载完成的加密包通过识别为引导执行文件的时候,那么就在完成下载后即时对加密包进行解密并更新引导执行代码。
综上所述,本发明提出的智能水表嵌入式软件在线升级方法及系统,可提高数据载入的安全性及精确度,同时可提高传送效率。
本发明能够及时方便解决智能水表嵌入式软件程序可能存在的BUG,及时方便满足用户提出的要求,及时升级智能水表的技术,更好为用户服务。
本发明方法中,数据的上传和下载采用了AES-128加密,进行密文传输,可保证网络传输的安全;Flash中储存的是加密包的数据,单片机采用锁定调试操作,保证了板载芯片的储存安全。
本发明方法包括数据上传时文件名规则的检验、数据下载时包数据的CRC校验、断传后文件名和已传数据的校验,载入程序时检验地址数据是否超限,任何校验的失败都会直接中断升级流程,并运行现有的应用代码,保证文件中数据在整个传输过程中的准确性。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施;例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中;例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现;例如,作为与处理器配合从而执行各个步骤或功能的电路。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
这里本发明的描述和应用是说明性的,并非想将本发明的范围限制在上述实施例中。实施例中所涉及的效果或优点可因多种因素干扰而可能不能在实施例中体现,对于效果或优点的描述不用于对实施例进行限制。这里所披露的实施例的变形和改变是可能的,对于那些本领域的普通技术人员来说实施例的替换和等效的各种部件是公知的。本领域技术人员应该清楚的是,在不脱离本发明的精神或本质特征的情况下,本发明可以以其它形式、结构、布置、比例,以及用其它组件、材料和部件来实现。在不脱离本发明范围和精神的情况下,可以对这里所披露的实施例进行其它变形和改变。
Claims (4)
1.一种智能水表嵌入式软件在线升级方法,其特征在于,所述嵌入式软件为智能水表内部电路上MCU所运行的程序,所述在线升级方法包括:
步骤S1、服务器通过无线网络连接智能水表内置无线远传数据电路;
步骤S2、在设定的时间/条件下,服务器将升级程序文件通过无线远程方式下发到智能水表;
步骤S3、智能水表进行接收所述升级程序文件后,通过覆盖原应用程序文件进行升级;
所述在线升级方法包括:将加密的升级程序文件上传至服务器校验并存档;
所述步骤S3包括:智能水表进行接收、校验、储存、备份及载入升级程序文件,将升级程序文件准确有效的载入到智能水表电路中的外挂存储器芯片中保存;
当升级程序文件被保存后,应用程序把原有程序文件备份到外挂存储器芯片,然后将引导标志位标识为升级流程;
MCU内的应用程序强制重启MCU,重启MCU后进入引导程序;引导程序识别引导标志位为升级流程时,将保存在外挂存储器芯片内的升级程序文件解密后载入到MCU的外挂存储器芯片中覆盖原有的应用程序文件;完成后将引导标志位标识为正常启动流程;
重启MCU进入升级后的应用程序;
所述升级程序文件在上传到所述服务器后,所述服务器对所述升级程序文件进行版本管理;
所述服务器向智能水表下发版本更新指令,指令内包含下发的版本号,所述应用程序通过识别所述升级程序文件的文件名及版本号,以确认达到升级条件;
所述升级条件包括:相同智能水表的所述升级程序文件的版本比现有所述应用程序的版本要高,或相同智能水表的升级通讯程序文件的版本比现有通讯程序文件的版本要高;
所述升级程序文件在所述服务器下载到智能水表时,采用将所述升级程序文件进行分包的形式下载;若在下载过程中出现下载中断的情况,下一次下载时上次已下载所述升级程序文件的分包文件后,与已存入外挂存储器芯片内的所述升级程序文件的分包文件进行校验,校验成功后不用再次存入,若对比失败则从对比失败的所述升级程序文件的分包文件开始存入;
所述外挂存储器芯片为外挂Flash芯片;
智能水表MCU的Flash芯片有两段各自独立的程序,分别是所述引导程序和所述应用程序,所述引导程序的作用为引导启动所述应用程序,及升级所述应用程序;
所述应用程序在本发明中的作用为从所述服务器接受所述升级程序文件,以及将所述升级程序文件转到外挂Flash芯片内;
所述智能水表包括至少两个MCU,分别是测量部分和通讯部分,一个MCU为控制测量部分电路的运行,另一个MCU为控制无线远传数据电路的运行;这个二个部分都有所述引导程序和所述应用程序,能单独升级或一起升级。
2.根据权利要求1所述的智能水表嵌入式软件在线升级方法,其特征在于:
所述升级程序文件以加密形式保存在所述服务器,所述升级程序文件以加密形式下发到智能水表;
所述升级程序文件在被智能水表接收后,以加密形式保存在外挂存储器芯片中;
所述引导程序在升级时,通过把保存在外挂储存器的所述升级程序文件进行解密后覆盖储存在MCU储存器内的原有应用程序文件。
3.根据权利要求1所述的智能水表嵌入式软件在线升级方法,其特征在于:
所述升级程序文件在上传到所述服务器时,所述服务器通过识别所述升级程序文件的文件名、文件长度和文件后缀来检验所述升级程序文件的合法性;
所述升级程序文件在下载到智能水表的过程中,所述应用程序对所述升级程序文件的长度和CRC进行校验。
4.一种使用权利要求1至3任一所述智能水表嵌入式软件在线升级方法的智能水表嵌入式软件在线升级系统,其特征在于,所述嵌入式软件为智能水表内部电路上MCU所运行的程序,所述在线升级系统包括:服务器及至少一智能水表;
所述服务器用以存储加密的升级程序文件,并将加密的升级程序文件校验并存档;在设定的时间/条件下,服务器将升级程序文件通过无线远程方式下发到智能水表;
所述智能水表用以接收、校验、储存、备份及载入升级程序文件,将升级程序文件准确有效的载入到智能水表电路中的外挂存储器芯片中保存;
所述智能水表包括MCU、外挂存储器芯片、引导程序及应用程序;
当升级程序文件被保存后,应用程序把原有程序文件备份到外挂存储器芯片,然后将引导标志位标识为升级流程;
应用程序强制重启MCU,重启MCU后进入引导程序;引导程序识别引导标志位为升级流程时,将保存在外挂存储器芯片内的升级程序文件解密后载入到MCU的外挂存储器芯片中覆盖原有的应用程序文件;完成后将引导标志位标识为正常启动流程;
所述智能水表在重启MCU后,进入升级后的应用程序;
所述服务器还用以对所述升级程序文件进行版本管理;
所述服务器向智能水表下发版本更新指令,指令内包含下发的版本号,所述应用程序通过识别所述升级程序文件的文件名及版本号,以确认达到升级条件;
所述升级条件包括:相同智能水表的所述升级程序文件的版本比现有所述应用程序的版本要高,或相同智能水表的所述升级通讯程序文件的版本比现有通讯程序文件的版本要高;
所述升级程序文件在上传到所述服务器时,所述服务器通过识别所述升级程序文件的文件名、文件长度和文件后缀来检验所述升级程序文件的合法性;
所述升级程序文件在下载到智能水表的过程中,所述应用程序对所述升级程序文件的长度和CRC进行校验。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210227693.2A CN115102855B (zh) | 2022-03-08 | 2022-03-08 | 智能水表嵌入式软件在线升级方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210227693.2A CN115102855B (zh) | 2022-03-08 | 2022-03-08 | 智能水表嵌入式软件在线升级方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115102855A CN115102855A (zh) | 2022-09-23 |
CN115102855B true CN115102855B (zh) | 2023-12-22 |
Family
ID=83287276
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210227693.2A Active CN115102855B (zh) | 2022-03-08 | 2022-03-08 | 智能水表嵌入式软件在线升级方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115102855B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116455884B (zh) * | 2023-04-04 | 2023-12-29 | 河南驰诚电气股份有限公司 | 一种无线级联方式远程调试和升级方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045201A (zh) * | 2010-12-27 | 2011-05-04 | 北京锐安科技有限公司 | 一种内网服务器集群自动升级方法及其系统 |
CN102364891A (zh) * | 2011-09-13 | 2012-02-29 | 杭州华三通信技术有限公司 | 嵌入式以太网设备升级软件的方法及嵌入式以太网设备 |
CN104572212A (zh) * | 2015-01-26 | 2015-04-29 | 易联众信息技术股份有限公司 | 一种终端更新系统及其更新方法 |
CN105404534A (zh) * | 2015-11-27 | 2016-03-16 | 北京京仪绿能电力系统工程有限公司 | 一种逆变器软件在线远程维护方法 |
WO2018045958A1 (zh) * | 2016-09-07 | 2018-03-15 | 深圳创维数字技术有限公司 | Wifi设备升级的方法及系统 |
CN109101261A (zh) * | 2018-08-06 | 2018-12-28 | 沈阳维尔环保工程有限公司 | 一种数据采集传输仪终端的远程在线升级方法及系统 |
CN110007941A (zh) * | 2019-03-05 | 2019-07-12 | 小黄狗环保科技有限公司 | 一种智能垃圾分类回收系统的mcu固件及升级方法 |
CN111651174A (zh) * | 2020-04-23 | 2020-09-11 | 威胜信息技术股份有限公司 | 一种mcu程序远程升级方法和系统 |
CN113542391A (zh) * | 2021-07-12 | 2021-10-22 | 一飞(海南)科技有限公司 | 编队飞机航点文件下载过滤相同文件的方法、系统、介质 |
-
2022
- 2022-03-08 CN CN202210227693.2A patent/CN115102855B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045201A (zh) * | 2010-12-27 | 2011-05-04 | 北京锐安科技有限公司 | 一种内网服务器集群自动升级方法及其系统 |
CN102364891A (zh) * | 2011-09-13 | 2012-02-29 | 杭州华三通信技术有限公司 | 嵌入式以太网设备升级软件的方法及嵌入式以太网设备 |
CN104572212A (zh) * | 2015-01-26 | 2015-04-29 | 易联众信息技术股份有限公司 | 一种终端更新系统及其更新方法 |
CN105404534A (zh) * | 2015-11-27 | 2016-03-16 | 北京京仪绿能电力系统工程有限公司 | 一种逆变器软件在线远程维护方法 |
WO2018045958A1 (zh) * | 2016-09-07 | 2018-03-15 | 深圳创维数字技术有限公司 | Wifi设备升级的方法及系统 |
CN109101261A (zh) * | 2018-08-06 | 2018-12-28 | 沈阳维尔环保工程有限公司 | 一种数据采集传输仪终端的远程在线升级方法及系统 |
CN110007941A (zh) * | 2019-03-05 | 2019-07-12 | 小黄狗环保科技有限公司 | 一种智能垃圾分类回收系统的mcu固件及升级方法 |
CN111651174A (zh) * | 2020-04-23 | 2020-09-11 | 威胜信息技术股份有限公司 | 一种mcu程序远程升级方法和系统 |
CN113542391A (zh) * | 2021-07-12 | 2021-10-22 | 一飞(海南)科技有限公司 | 编队飞机航点文件下载过滤相同文件的方法、系统、介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115102855A (zh) | 2022-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109542518B (zh) | 芯片和启动芯片的方法 | |
CN107179909B (zh) | 软件升级方法、装置及计算机可读存储介质 | |
US10162625B2 (en) | Vehicle control storage methods and systems | |
EP1519268B1 (en) | Communication terminal and communication network for partially updating software, software update method, and software creation device and method therefor | |
JP5385148B2 (ja) | セキュアブート端末、セキュアブート方法、セキュアブートプログラム、記録媒体及び集積回路 | |
US7747997B1 (en) | Firmware update in electronic devices employing SIM card for saving metadata information | |
US7991988B2 (en) | Communication device and firmware update method thereof | |
US6754828B1 (en) | Algorithm for non-volatile memory updates | |
CN109062598B (zh) | 一种安全的ota升级方法及系统 | |
CN102622253B (zh) | 一种单片机及其在线升级的方法 | |
US8972591B2 (en) | Method for downloading software | |
US20100058316A1 (en) | Updating Firmware with Multiple Processors | |
CN111813428A (zh) | 终端固件的升级方法、装置、电子设备及存储介质 | |
CN109240720B (zh) | 一种安卓系统的固件升级方法及一种存储设备 | |
CN102004657B (zh) | 一种电子设备及其升级方法 | |
WO2009157133A1 (ja) | 情報処理装置、情報処理方法、これらを実現するコンピュータプログラム及び集積回路 | |
JP2002099441A (ja) | 通信端末装置及び通信端末装置の動作方法 | |
US20140007176A1 (en) | System And Method For Upgrading A Multiprocessor Set-Top Box Device With A Monolithic Firmware Image | |
WO2010081323A1 (zh) | 一种单板应用版本的实现方法及系统 | |
CN115102855B (zh) | 智能水表嵌入式软件在线升级方法及系统 | |
CN114840242A (zh) | 一种电子设备的系统升级方法、装置及可读存储介质 | |
CN109542480A (zh) | 美甲打印装置的操作系统升级方法、装置和介质 | |
JP5017868B2 (ja) | Icカードのプログラム修正システム、プログラム、及びicカード | |
CN108153548A (zh) | 一种emmc固件升级方法和装置 | |
CN117056115B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |