当前位置: 首页 > 专利查询>浙江大学专利>正文

一种用于物联网设备的空中固件升级方法及系统技术方案

技术编号:24334016 阅读:83 留言:0更新日期:2020-05-29 21:18
本发明专利技术公开了一种用于物联网设备的空中固件升级方法及系统,物联网设备终端通过中继联网单元与升级服务器进行网络通信,升级服务器用于实现对大规模物联网设备终端的接入控制管理以及固件包的生成与下发,私有云数据库用于实现多版本固件包存储。本发明专利技术可以实现物联网设备的快速迭代升级与维护,设备固件版本的统一化管理,可以有效解决物联网设备固件升级过程中的流量与资源占用问题,实现具有多种升级方式、断点续传、固件版本回滚的升级解决方案,提高了升级成功率,改善了用户使用体验。

An air firmware upgrade method and system for Internet of things devices

【技术实现步骤摘要】
一种用于物联网设备的空中固件升级方法及系统
本专利技术涉及物联网领域,具体涉及一种用于物联网设备的空中固件升级方法及系统。
技术介绍
随着物联网技术的快速发展,物联网设备也在不断地增多,一般而言,一台物联网设备在投入市场使用以前,需要经历尽可能多的检测来保障其功能稳定可靠。然而,随着物联网技术的迭代进步、用户需求的不断变化,物联网设备的上线时间以及测试周期都被大幅度缩减,因此如何确保已经投入市场的物联网设备具有持续可更新性成为一个亟待解决的问题。空中固件升级技术是一种利用特定的网络通信协议下载远程固件更新包,从而实现对已经部署的物联网设备进行固件更新的技术。综上所述,本专利技术基于空中固件升级技术,提出一种用于物联网设备的空中固件升级方法及系统,对当前物联网设备的空中固件升级方式进行优化,并自适应的选择适合本设备的升级方式。
技术实现思路
本专利技术的目的在于针对现有技术的不足,提出一种用于物联网设备的空中固件升级方法及系统;本专利技术可以实现物联网设备的快速迭代升级与维护,设备固件版本的统一化管理,可以有效解决物联本文档来自技高网...

【技术保护点】
1.一种用于物联网设备的空中固件升级方法,其特征在于,该方法包括以下步骤:/n步骤1,研发人员修改软件代码后生成新版本固件,通过网络将该新版本固件上传至升级服务器,升级服务器为当前新版本固件设定唯一版本号码,并将该固件存储于私有云数据库。/n步骤2,升级服务器确定针对物联网设备终端采用的固件升级方式,包括整包升级方式以及差分升级方式。/n步骤3,物联网设备终端连接升级服务器,获取固件升级包,并进行固件升级包的完整性与唯一性校验,校验通过后,利用步骤2中确定的固件升级方法对物联网设备终端软件进行固件升级,将软件版本由旧固件版本升级到目标版本。/n步骤4,物联网设备终端升级完成后,向升级服务器发送...

【技术特征摘要】
1.一种用于物联网设备的空中固件升级方法,其特征在于,该方法包括以下步骤:
步骤1,研发人员修改软件代码后生成新版本固件,通过网络将该新版本固件上传至升级服务器,升级服务器为当前新版本固件设定唯一版本号码,并将该固件存储于私有云数据库。
步骤2,升级服务器确定针对物联网设备终端采用的固件升级方式,包括整包升级方式以及差分升级方式。
步骤3,物联网设备终端连接升级服务器,获取固件升级包,并进行固件升级包的完整性与唯一性校验,校验通过后,利用步骤2中确定的固件升级方法对物联网设备终端软件进行固件升级,将软件版本由旧固件版本升级到目标版本。
步骤4,物联网设备终端升级完成后,向升级服务器发送升级完成通知,升级服务器将升级日志存储至私有云数据库。


2.根据权利要求1所述的一种用于物联网设备的空中固件升级方法,其特征在于,所述升级服务器利用设备固件更新资源评价方法确定针对物联网设备终端采用的固件升级方式,具体为:综合设备端与固件升级过程中涉及到的各项参数,计算当前物联网设备终端的固件更新资源参数θ:



式中:r表示当前物联网设备终端具有的空闲RAM资源、f表示当前物联网设备终端具有的FLASH存储资源、c表示当前网络信号强度、k表示当前网络通信速度,n表示新版本固件大小,o表示旧版本固件大小,t表示当前物联网设备升级最大时间限制,d表示新旧固件差分包大小;
由上述公式首先计算出差分压缩效率P,如果差分压缩效率P小于系统预定压缩比P1,则采用整包升级方式,否则计算固件网络传输时间T,固件网络传输时间T为新固件包传输的时间与升级最大时间限制比值,如果该值大于1,则采用差分升级方式,否则根据固件更新资源参数θ进行选择,如果θ大于系统预定参数θ1,则采用差分升级方式,否则,采用整包升级方式。


3.根据权利要求1所述的一种用于物联网设备的空中固件升级方法,其特征在于,所述整包升级方式通过将完整新版本固件包下发到物联网设备端完成固件升级操作,具体步骤流程如下:
(1)升级服务器按照设备端资源限制将新版本固件包统一划分为N个数据包,所有数据包大小及格式均相同,同时为每个数据包计算MD5值,用于进行数据完整性校验,并启动升级流程,将每个数据包的MD5值下发到物联网设备端;
(2)物联网设备端下载第i(1≤i≤N)数据包,并通过计算当前数据包的MD5值与升级服务器下发MD5值比对;
(3)如果MD5值相同,说明数据包完整,转到步骤(2)获取下一个数据包,并将当前已经获取的数据包编号存储至FLASH;如果MD5值不同,说明数据传输出现错误,转到步骤(2)重新获取当前数据包;
(4)如果已经获得第N个数据包,说明新版本固件包获取完成,将该新版本固件包安装到备份存储区域,并设置新版本固件包安装完成标记,然后进行设备重启操作;
(5)设备重启后首先判断固件安装完成标记是否设置,如果没有设置,则读取FLASH中已获得的固件编号,并转到步骤(2)中继续获取下一个固件数据包;如果固件安装完成标记已经设置,则通过引导加载程序跳转到备份存储区域并进行新版本固件功能测试;
(6)如果功能测试成功,设备将备份存储区域设置为当前活动分区,并上报升级成功信息;如果功能测试失败,则重新跳转回原当前活动分区(原版本固件代码所在存储区域)并上报升级失败信息。


4.根据权利要求1所述的一种用于物联网设备的空中固件升级方法,其特征在于,所述差分升级方式利用新旧版本固件之间的相似性产生固件差分包,并在设备端利用差分还原技术完成固件升级操作,差分升级方法具体步骤流程...

【专利技术属性】
技术研发人员:刘波陈积明史治国贺诗波李传武
申请(专利权)人:浙江大学瑞立集团瑞安汽车零部件有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1