欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 一种用于嵌入式设备集群的固件静默升级方法及装置独创技术24018字

一种用于嵌入式设备集群的固件静默升级方法及装置

2021-02-27 19:01:19

一种用于嵌入式设备集群的固件静默升级方法及装置

  技术领域

  本发明涉及嵌入式设备技术领域,尤其是涉及一种用于嵌入式设备集群的固件静默升级方法及装置。

  背景技术

  随着物联网技术的发展,越来越多的低功耗嵌入式设备涌现,而这些嵌入式设备也面临着固件升级的问题,尤其是对于嵌入式设备集群,如何能够快速升级固件且减少占用资源,已经成为研发嵌入式设备时必须解决的技术难题。目前嵌入式设备集群的固件升级方法一般采用的是嵌入式设备空中固件升级技术(Over-the-Air Technology)。

  但是,在对现有技术的研究与实践过程中,本发明的发明人发现,现有技术是在逐个嵌入式设备从服务器下载固件后进行升级,但在升级全程用户无法使用设备,并且对于没有网络功能的嵌入式设备无法进行固件升级。另外,当多个不同的嵌入式设备组成一个嵌入式集群时,逐个设备下载固件存在逐一更新速度慢、网络带宽压力大、同一固件重复下载等问题,在设备固件升级时容易受网络带宽影响,例如带宽低时下载时间长,导致用户长时间无法使用设备,造成固件升级效率低下和用户使用体验感差的问题。因此,亟需一种能够克服上述缺陷的嵌入式设备集群固件升级方法。

  发明内容

  本发明实施例所要解决的技术问题在于,提供一种用于嵌入式设备集群的固件静默升级方法及装置,只需要一个具有网络功能设备即可实现集群内所有设备的固件静默升级,并且在固件下载和升级过程中不影响用户的正常使用。

  为解决上述问题,本发明的一个实施例提供了一种用于嵌入式设备集群的固件静默升级方法,至少包括如下步骤:

  在嵌入式设备集群中预先选取一台具有网络连接功能的设备作为主设备,其余的嵌入式设备作为从设备,所述主设备分别与所述从设备连接;

  通过所述主设备与升级服务器连接,接收所述升级服务器推送的固件升级通知;

  在所述主设备接收固件升级通知且同意升级后,通过所述主设备检测当前从设备的接入情况,并从所述升级服务器上下载升级固件;

  在所述主设备完成升级固件的下载后,通过所述主设备检测当前从设备的使用状态,若检测到当前用户未在使用任何设备,则通过所述主设备搭建tftp服务器,将已下载的升级固件分别发送至对应的从设备;

  所述从设备在接收对应的升级固件后,对升级固件的格式进行检查,若检查格式正确,则所述从设备将当前的固件版号保存后开始进行固件升级;

  当若干个所述从设备均固件升级成功后,所述主设备开始固件升级,并在完成固件升级后通过界面提示用户升级后的固件版本号。

  作为优选方案,所述用于嵌入式设备集群的固件静默升级方法,还包括:

  在所述主设备首次开机时,设置是否加入固件升级计划以及是否允许自动更新固件。

  作为优选方案,所述用于嵌入式设备集群的固件静默升级方法,还包括:

  将升级后的固件版本号与所述从设备保存的固件版本号进行对比,验证是否升级成功;

  若升级成功,则通过所述从设备通知所述主设备已升级成功;

  若升级失败,则通过所述主设备重新向所述从设备推送升级流程。

  作为优选方案,所述用于嵌入式设备集群的固件静默升级方法,还包括:

  所述从设备通过搜寻预设网关查找所述主设备,发送接入集群请求。

  作为优选方案,在通过所述主设备检测当前从设备的使用状态后,还包括:

  将保持连接且在工作状态的从设备添加至到固件升级设备列表中。

  本发明的一个实施例还提供了一种用于嵌入式设备集群的固件静默升级装置,包括:

  集群设置模块,用于在嵌入式设备集群中预先选取一台具有网络连接功能的设备作为主设备,其余的嵌入式设备作为从设备,所述主设备分别与所述从设备连接;

  升级推送模块,用于通过所述主设备与升级服务器连接,接收所述升级服务器推送的固件升级通知;

  固件下载模块,用于在所述主设备接收固件升级通知且同意升级后,通过所述主设备检测当前从设备的接入情况,并从所述升级服务器上下载升级固件;

  固件分发模块,用于在所述主设备完成升级固件的下载后,通过所述主设备检测当前从设备的使用状态,若检测到当前用户未在使用任何设备,则通过所述主设备搭建tftp服务器,将已下载的升级固件分别发送至对应的从设备;

  从设备固件升级模块,用于所述从设备在接收对应的升级固件后,对升级固件的格式进行检查,若检查格式正确,则所述从设备将当前的固件版号保存后开始进行固件升级;

  主设备固件升级模块,用于当若干个所述从设备均固件升级成功后,所述主设备开始固件升级,并在完成固件升级后通过界面提示用户升级后的固件版本号。

  作为优选方案,所述用于嵌入式设备集群的固件静默升级装置,还包括:

  固件升级设置模块,用于在所述主设备首次开机时,设置是否加入固件升级计划以及是否允许自动更新固件。

  作为优选方案,所述从设备固件升级模块,还用于:

  将升级后的固件版本号与所述从设备保存的固件版本号进行对比,验证是否升级成功;

  若升级成功,则通过所述从设备通知所述主设备已升级成功;

  若升级失败,则通过所述主设备重新向所述从设备推送升级流程。

  本发明的一个实施例提供了一种用于嵌入式设备集群的固件静默升级的终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述的用于嵌入式设备集群的固件静默升级方法。

  本发明的一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上述的用于嵌入式设备集群的固件静默升级方法。

  实施本发明实施例,具有如下有益效果:

  本发明实施例提供的一种用于嵌入式设备集群的固件静默升级方法及装置,所述方法包括:在嵌入式设备集群中预先选取一台具有网络连接功能的设备作为主设备,其余的嵌入式设备作为从设备,所述主设备分别与所述从设备连接;通过所述主设备与升级服务器连接,接收所述升级服务器推送的固件升级通知;在所述主设备接收固件升级通知且同意升级后,通过所述主设备检测当前从设备的接入情况,并从所述升级服务器上下载升级固件;在所述主设备完成升级固件的下载后,通过所述主设备检测当前从设备的使用状态,若检测到当前用户未在使用任何设备,则通过所述主设备搭建tftp服务器,将已下载的升级固件分别发送至对应的从设备;所述从设备在接收对应的升级固件后,对升级固件的格式进行检查,若检查格式正确,则所述从设备将当前的固件版号保存后开始进行固件升级;当若干个所述从设备均固件升级成功后,所述主设备开始固件升级,并在完成固件升级后通过界面提示用户升级后的固件版本号。

  与现有技术相比,本发明提供的一种用于嵌入式设备集群的固件静默升级方法及装置,只需要通过一个具有网络功能的设备,即可完成集群内所有设备的固件静默升级,并且在固件下载和升级过程中,都不会影响用户的正常使用,缩短了用户等待升级的事件,减少了网络带宽的占用,提升用户的使用体验;用户还能够在升级服务器后台快速查询整个嵌入式集群的固件版本号。

  附图说明

  图1为本发明第一实施例提供的一种用于嵌入式设备集群的固件静默升级方法的流程示意图;

  图2为本发明第一实施例提供的嵌入式设备集群的结构示意图;

  图3为本发明第一实施例提供的另一种用于嵌入式设备集群的固件静默升级方法的流程示意图;

  图4为本发明第二实施例提供的一种用于嵌入式设备集群的固件静默升级装置的结构示意图。

  具体实施方式

  下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

  在本申请的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。

  首先介绍本发明可以提供的应用场景,如嵌入式设备集群的固件静默升级。

  本发明第一实施例:

  请参阅图1-3。

  如图1所示,本实施例提供了一种用于嵌入式设备集群的固件静默升级方法,至少包括如下步骤:

  S101、在嵌入式设备集群中预先选取一台具有网络连接功能的设备作为主设备,其余的嵌入式设备作为从设备,所述主设备分别与所述从设备连接;

  S102、通过所述主设备与升级服务器连接,接收所述升级服务器推送的固件升级通知;

  具体的,对于步骤S101和S102,如图2所示,在嵌入式设备集群中由1台有网络连接的设备作为主设备,其余设备作为从设备。主设备和升级服务器连接,当服务器有新固件时向主设备推送通知。所述嵌入式设备集群包括1台主设备,以及若干个从设备。

  S103、在所述主设备接收固件升级通知且同意升级后,通过所述主设备检测当前从设备的接入情况,并从所述升级服务器上下载升级固件;

  具体的,对于步骤S103,如果主设备同意升级,就开始检测当前从设备的接入情况。从升级服务器上下载主设备及所有类型从设备的固件到主设备的存储中。下载过程中不影响用户的正常使用,用户无感。

  S104、在所述主设备完成升级固件的下载后,通过所述主设备检测当前从设备的使用状态,若检测到当前用户未在使用任何设备,则通过所述主设备搭建tftp服务器,将已下载的升级固件分别发送至对应的从设备;

  具体的,对于步骤S104,在升级固件下载完成后,主设备检测到用户未在使用任何设备,通知所有从设备准备升级固件。其中,主设备作为tftp服务器,从设备作为tftp客户端向主设备请求下载固件。主设备将本地对应的从设备固件包分别传输给对应的从设备。此时开始所有设备全屏提示正在固件升级,用户无法使用。若检测到用户正在使用其中的设备,则不进行通知升级,等待设备状态为空闲时再进行通知升级。

  S105、所述从设备在接收对应的升级固件后,对升级固件的格式进行检查,若检查格式正确,则所述从设备将当前的固件版号保存后开始进行固件升级;

  具体的,对于步骤S105,从设备接收完固件包,检查固件格式正确后,将当前的固件版本号保存到文件中,开始固件升级。此时所有从设备同时升级且不需要网络,没有网络带宽压力。同时升级可以节省整体的时间。从设备更新成功后分别向主设备通知该设备升级成功。

  S106、当若干个所述从设备均固件升级成功后,所述主设备开始固件升级,并在完成固件升级后通过界面提示用户升级后的固件版本号。

  具体的,对于步骤S106,从设备向主设备通知该设备是否升级成功,如果从设备升级失败,重新向从设备推送升级流程。当所有从设备都升级成功后,主设备进入固件升级过程。主设备升级成功后界面提示用户升级后的版本号,以及当前已是最新版本。

  在优选的实施例中,所述用于嵌入式设备集群的固件静默升级方法,还包括:

  在所述主设备首次开机时,设置是否加入固件升级计划以及是否允许自动更新固件。

  具体的,在主设备初次开机使由用户设备是否加入固件升级计划,及允许自动更新。后续使用过程中用户可以更改此设置。

  在优选的实施例中,所述用于嵌入式设备集群的固件静默升级方法,还包括:

  将升级后的固件版本号与所述从设备保存的固件版本号进行对比,验证是否升级成功;

  若升级成功,则通过所述从设备通知所述主设备已升级成功;

  若升级失败,则通过所述主设备重新向所述从设备推送升级流程。

  具体的,在从设备升级固件后,还需要进行固件版本升级验证,将当前固件版本号和文件中记录的上一次的版本号进行对比,版本号相同则说明升级失败,重新向从设备推送升级流程;版本号不同则说明升级成功,从设备向主设备通知该设备升级成功。

  在优选的实施例中,所述用于嵌入式设备集群的固件静默升级方法,还包括:

  所述从设备通过搜寻预设网关查找所述主设备,发送接入集群请求。

  具体的,主设备作为集群管理者,从设备根据网络或者蓝牙等通讯方式,搜寻同一网关或者可以配对到的设备,查找主设备并请求接入集群。

  在优选的实施例中,在通过所述主设备检测当前从设备的使用状态后,还包括:

  将保持连接且在工作状态的从设备添加至到固件升级设备列表中。

  具体的,在固件升级前,主设备向已加入集群的从设备用相同的通讯方式查询从设备是否仍在工作状态,将保持连接且在工作状态的从设备加入到本次的固件更新设备列表中。

  具体的,如图3所示,本实施例还提供了另一种用于嵌入式设备集群的固件静默升级方法,包括如下步骤:通过主设备分别与升级服务器和从设备连接,升级服务器通知主设备有新固件,主设备检测所有接入的从设备,主设备从升级服务器上下载主设备以及所有从设备的固件,下载完成后,主设备搭建tftp服务器,发送固件升级通知至从设备,并传输固件包至对应的从设备,在从设备通知传输完成后开始升级,从设备固件升级成功后,发送升级成功通知至主设备,失败则重新升级;主设备固件进行升级后,通过界面提示用户升级成功以及当前的新版本号。

  本实施例提供的一种用于嵌入式设备集群的固件静默升级方法,包括:在嵌入式设备集群中预先选取一台具有网络连接功能的设备作为主设备,其余的嵌入式设备作为从设备,所述主设备分别与所述从设备连接;通过所述主设备与升级服务器连接,接收所述升级服务器推送的固件升级通知;在所述主设备接收固件升级通知且同意升级后,通过所述主设备检测当前从设备的接入情况,并从所述升级服务器上下载升级固件;在所述主设备完成升级固件的下载后,通过所述主设备检测当前从设备的使用状态,若检测到当前用户未在使用任何设备,则通过所述主设备搭建tftp服务器,将已下载的升级固件分别发送至对应的从设备;所述从设备在接收对应的升级固件后,对升级固件的格式进行检查,若检查格式正确,则所述从设备将当前的固件版号保存后开始进行固件升级;当若干个所述从设备均固件升级成功后,所述主设备开始固件升级,并在完成固件升级后通过界面提示用户升级后的固件版本号。

  与现有技术相比,本实施例提供的一种用于嵌入式设备集群的固件静默升级方法及装置,具有以下有益效果:

  1、嵌入式集群中只要有一个设备有网络功能,所有设备都可以进行OTA空中固件升级。

  2、集群中同一个固件只会下载一次,从设备升级过程中不占用网络带宽。

  3、固件下载过程中不影响用户的正常使用。固件升级过程中下载的时间最长,且受网络带宽影响,此方案缩短了用户等待升级的时间,减小了网络带宽的占用,极大提升了用户的使用体验。

  4、由主设备管理从设备,再由主设备连接升级服务器,在升级服务器后台方便查询整个嵌入式集群的固件版本。保证整个集群所有设备都可以固件升级且能够成功。

  本发明第二实施例:

  请参阅图4。

  如图4所示,本实施例提供了一种用于嵌入式设备集群的固件静默升级装置,包括:

  集群设置模块100,用于在嵌入式设备集群中预先选取一台具有网络连接功能的设备作为主设备,其余的嵌入式设备作为从设备,所述主设备分别与所述从设备连接;

  升级推送模块200,用于通过所述主设备与升级服务器连接,接收所述升级服务器推送的固件升级通知;

  固件下载模块300,用于在所述主设备接收固件升级通知且同意升级后,通过所述主设备检测当前从设备的接入情况,并从所述升级服务器上下载升级固件;

  固件分发模块400,用于在所述主设备完成升级固件的下载后,通过所述主设备检测当前从设备的使用状态,若检测到当前用户未在使用任何设备,则通过所述主设备搭建tftp服务器,将已下载的升级固件分别发送至对应的从设备;

  从设备固件升级模块500,用于所述从设备在接收对应的升级固件后,对升级固件的格式进行检查,若检查格式正确,则所述从设备将当前的固件版号保存后开始进行固件升级;

  主设备固件升级模块600,用于当若干个所述从设备均固件升级成功后,所述主设备开始固件升级,并在完成固件升级后通过界面提示用户升级后的固件版本号。

  在优选的实施例中,所述用于嵌入式设备集群的固件静默升级装置,还包括:

  固件升级设置模块,用于在所述主设备首次开机时,设置是否加入固件升级计划以及是否允许自动更新固件。

  在优选的实施例中,所述从设备固件升级模块,还用于:

  将升级后的固件版本号与所述从设备保存的固件版本号进行对比,验证是否升级成功;

  若升级成功,则通过所述从设备通知所述主设备已升级成功;

  若升级失败,则通过所述主设备重新向所述从设备推送升级流程。

  本发明实施例提供的一种用于嵌入式设备集群的固件静默升级装置,包括集群设置模块100、升级推送模块200、固件下载模块300、固件分发模块400、从设备固件升级模块500和主设备固件升级模块600,与现有技术相比,本实施例提供的一种用于嵌入式设备集群的固件静默升级装置,只需要通过一个具有网络功能的设备,即可完成集群内所有设备的固件静默升级,并且在固件下载和升级过程中,都不会影响用户的正常使用,缩短了用户等待升级的事件,减少了网络带宽的占用,提升用户的使用体验;用户还能够在升级服务器后台快速查询整个嵌入式集群的固件版本号。

  本发明的一个实施例提供了一种用于嵌入式设备集群的固件静默升级的终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述的用于嵌入式设备集群的固件静默升级方法。

  本发明的一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上述的用于嵌入式设备集群的固件静默升级方法。

  在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

  在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述模块的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

  所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

  另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

  以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和变形,这些改进和变形也视为本发明的保护范围。

  本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。

《一种用于嵌入式设备集群的固件静默升级方法及装置.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)