基于Zigbee的设备升级方法及控制装置与流程

文档序号:25542899发布日期:2021-06-18 20:39阅读:74来源:国知局
基于Zigbee的设备升级方法及控制装置与流程

本发明涉及智能家居技术领域,尤其涉及一种基于zigbee的设备升级方法及控制装置。



背景技术:

zigbee是一种低速短距离传输的无线网上协议,底层是采用ieee802.15.4标准规范的媒体访问层与物理层。主要特色有低速、低耗电、低成本、支持大量网上节点、支持多种网上拓扑、低复杂度、快速、可靠、安全。

智能家居通过物联网技术将各种终端设备(如、照明设备、窗帘控制设备、空调控制设备、安防设备等)连接到一起,实现照明控制、暖通控制、防盗报警等多种功能。

目前,基于zigbee构建的智能家居系统,应用较广。然而,实践发现,因业务逻辑逐渐丰富,zigbee设备升级镜像包大小普遍超过200k,因传输效率影响,在不考虑功耗情况下,仅文件传输耗时已超过10分钟;若为低功耗类设备,因通讯机制影响(为数据请求形式,且射频接收机不能长期打开,以及电池放电效应等),预计耗时超过25分钟,使得zigbee设备空中升级尤其费时费力。

可见,如何使得更加高效地基于zigbee而实现设备升级,是亟需解决的技术问题。



技术实现要素:

本发明所要解决的技术问题在于,提供一种基于zigbee的设备升级方法及装置,有利于更加高效地基于zigbee而实现设备升级。

为了解决上述技术问题,本发明第一方面公开了一种基于zigbee的设备升级方法,应用场景中设置有网关以及与该网关基于zigbee通信连接的若干终端设备,所述设备升级方法包括:

所述网关获取待升级的目标终端设备的当前应用文件的第一镜像文件;

所述网关获取用于对所述目标终端设备升级的目标应用文件的第二镜像文件;

所述网关根据所述第一镜像文件和所述第二镜像文件,生成差分镜像文件;

所述网关基于哈夫曼树,对所述差分镜像文件进行压缩处理,生成压缩镜像数据包;

所述网关将所述压缩镜像数据包发送至所述目标终端设备,以使得所述目标终端设备运行所述压缩镜像数据包而实现设备升级。

可见,本发明第一方面中,该网关根据第一镜像文件和第二镜像文件,生成差分镜像文件,并基于哈夫曼树,将该差分镜像文件进行压缩而生成压缩镜像数据包,该压缩镜像数据包发送至目标终端设备,以使得该目标终端设备运行该压缩数据包而实现设备升级,这有利于大大降低用于目标终端设备升级的数据包的数据量,从而有利于减少目标终端设备在进行空中升级所需的时间,另外,该压缩数据包是由差分镜像文件基于哈夫曼树结构而进行压缩而成的,相当于进行了加密处理,与网关直接向目标终端设备传输用于升级的文件的明文相比,通过采用该压缩数据包的形式传输升级的相关文件,有利于该空中升级过程的数据安全性,又进一步的,由于该基于zigbee的设备升级方法的步骤中,差分镜像文件的生成的步骤以及压缩镜像数据包的生成的步骤,在网关中执行,有利于降低目标终端设备在进行空中升级的过程中的数据存储量,从而有利于降低目标终端设备在此期间的损耗。

作为一种可选的实施方式,本发明第一方面中,所述网关获取待升级的目标终端设备的当前应用文件的第一镜像文件,具体包括:

所述网关获取待升级的目标终端设备的当前应用文件的第一版本信息;

所述网关根据所述第一版本信息,从存储于所述网关的、针对所述网关与所述目标终端设备的文件传输历史记录中,调取所述当前应用文件的第一镜像文件。

作为一种可选的实施方式,本发明第一方面中,所述应用场景中还设置有用于管理终端设备的管理平台,所述网关获取用于对所述目标终端设备升级的目标应用文件的第二镜像文件,具体包括:

所述网关与所述管理平台建立通信连接;

所述网关从所述管理平台获取用于对所述目标终端设备升级的目标应用文件的第二镜像文件。

作为一种可选的实施方式,本发明第一方面中,所述网关根据所述第一镜像文件和所述第二镜像文件,生成差分镜像文件,具体包括:

所述网关将所述第一镜像文件,转换成十六进制的第一镜像数据文件;

所述网关将所述第二镜像文件,转换成十六进制的第二镜像数据文件;

所述网关将所述第一镜像数据文件与所述第二镜像数据文件进行对比;

所述网关根据所述第一镜像数据文件与所述第二镜像数据文件的对比结果,生成差分镜像文件。

作为一种可选的实施方式,本发明第一方面中,所述网关根据所述第一镜像数据文件与所述第二镜像数据文件的对比结果,生成差分镜像文件,具体包括:

所述网关获取所述第一镜像数据文件与所述第二镜像数据文件的对比结果;

所述网关根据所述对比结果,确定数据相同项,其中,所述数据相同项用于表示所述第一镜像数据文件与所述第二镜像数据文件之间的相同的数据项;

所述网关将所述数据相同项对应的第一对比结果执行跳过操作,根据第二对比结果,生成差分镜像文件,其中,第二对比结果为除去所述第一对比结果的、部分的所述对比结果。

作为一种可选的实施方式,本发明第一方面中,所述网关根据所述第一镜像数据文件与所述第二镜像数据文件的对比结果,生成差分镜像文件,具体包括:

所述网关获取所述第一镜像数据文件与所述第二镜像数据文件的对比结果;

所述网关根据所述对比结果,确定数据差异项,其中,所述数据差异项用于表示所述第一镜像数据文件与所述第二镜像数据文件之间的差异的数据项;

所述网关根据所述数据差异项,生成差分镜像文件。

作为一种可选的实施方式,本发明第一方面中,所述网关根据所述第一镜像数据文件与所述第二镜像数据文件的对比结果,生成差分镜像文件,具体包括:

所述网关获取所述第一镜像数据文件与所述第二镜像数据文件的对比结果;

所述网关根据所述对比结果,确定待生成的差分镜像文件的属性信息以及偏移量信息,其中,所述属性信息包括待生成的差分镜像文件的第二版本信息、对应的终端设备的固件类型和差异条目数量当中的其中一种或者多种的组合,所述偏移量信息包括待生成的差分镜像文件的偏移量起始位置以及截止长度;

所述网关根据所述属性信息,生成差分镜像文件的文件头;

所述网关根据所述偏移量信息,生成差分镜像文件的文件尾。

本发明第二方面公开了一种基于zigbee的设备升级的控制装置,应用场景中设置有网关以及与该网关基于zigbee通信连接的若干终端设备,所述控制装置设置在所述网关中,所述控制装置包括获取模块、生成模块和发送模块,其中:

所述获取模块,用于获取待升级的目标终端设备的当前应用文件的第一镜像文件;

所述获取模块,还用于对所述目标终端设备升级的目标应用文件的第二镜像文件;

所述生成模块,用于根据所述第一镜像文件和所述第二镜像文件,生成差分镜像文件;

所述生成模块,还用于基于哈夫曼树,对所述差分镜像文件进行压缩处理,生成压缩镜像数据包;

所述发送模块,用于将所述压缩镜像数据包发送至所述目标终端设备,以使得所述目标终端设备运行所述压缩镜像数据包而实现设备升级。

本发明第三方面公开了另一种基于zigbee的设备升级装置,所述装置包括:

存储有可执行程序代码的存储器;

与所述存储器耦合的处理器;

所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的基于zigbee的设备升级方法的步骤。

本发明第四方面公开了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明第一方面公开的基于zigbee的设备升级方法的步骤。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例的一种智能家居系统的结构示意图;

图2是本发明实施例的一种基于zigbee的设备升级方法的流程示意图;

图3是本发明实施例的一种基于zigbee的设备升级的控制装置的结构示意图;

图4是本发明实施例的一种基于zigbee的设备升级装置的结构示意图。

具体实施方式

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

本发明的说明书和权利要求书中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

为了更好的理解本发明所描述的基于zigbee的设备升级方法及装置,首先对基于zigbee的设备升级方法的智能家居系统加以描述,具体的,该智能家居系统的结构示意图可以如图1所示。如图1所示,该智能家居系统包括若干终端设备(图1中以终端设备ⅰ、终端设备ⅱ、终端设备ⅲ为例)、网关和管理平台,该网关分别与管理平台以及终端设备通信连接。其中,终端设备可以是设置在使用者的住宅的各种智能设备,具体地,可以是生活电器(如电饭煲、电视机、咖啡机等)、照明灯具、安防设备(如智能门窗、监控设备、智能报警器等)等其中的一种或多种。网关与应用场景中的住宅相对应设置,具体地,一个住宅中可以设置一个网关,或者一个住宅中可以设置若干个关联的网关。管理平台,可以与应用场景中的社区相对应设置,具体地,可以根据需要,在一个社区中设置一个管理平台,也可以在一个社区中设置若干个关联的管理平台。服务终端可以作为与应用场景的人机交互终端使用,具体地,可以设置供业主使用的业主服务终端,也可以设置供物业管理者使用的物业服务终端,还可以根据需要,设置供检修人员使用的系统维护服务终端。

进一步的,终端设备与网关的通信连接可以是无线通信连接,具体地,终端设备可以与网关通过zigbee协议实现无线通信连接。

又进一步的,管理平台可以选用linux操作系统。

又进一步的,管理平台与网关的通信可以基于tcp/ip协议实现。

又进一步的,该智能家居系统还可以包括与管理平台通信连接的云端服务器。

又进一步的,管理平台可以基于http协议和/或mqtt协议实现与云端服务器的通信连接。

又进一步的,服务终端还可以与云端服务器通信连接。

需要说明的是,图1所示的智能家居系统结构示意图只是为了表示基于zigbee的设备升级方法及装置所对应的智能家居系统,涉及到的器件只是示意性展现,具体的结构/尺寸/形状/所在的位置/所安装的方式等可根据实际场景进行适应性调整,图1所示的结构示意图对此不作限定。

下面对基于zigbee的设备升级方法及控制装置进行详细的描述。

请参阅图2,图2是本发明第一方面实施例公开的一种基于zigbee的设备升级方法的流程示意图。其中,图2所描述的基于zigbee的设备升级方法适用于图1所描述的智能家居系统中。具体地,该应用场景中,设置有基于zigbee通信的网关以及与该网关通信连接的终端设备。如图2所示,该基于zigbee的设备升级方法可以包括以下操作:

101、网关获取待升级的目标终端设备的当前应用文件的第一镜像文件。

本发明实施例中,目标终端设备为待升级的终端设备。可选的,网关可以向该目标终端设备发送关于获取当前应用文件的第一镜像文件的请求,以使得该目标终端设备向该网关发送当前应用文件的第一镜像文件。

作为一种可选的实施方式,网关获取待升级的目标终端设备的当前应用文件的第一镜像文件的步骤,可以包括以下操作:

网关获取待升级的目标终端设备的当前应用文件的第一版本信息;

网关根据第一版本信息,从存储于网关的、针对网关与目标终端设备的文件传输历史记录中,调取当前应用文件的第一镜像文件。

可见,在网关内部,通过第一版本信息,从文件传输历史记录中调取该目标终端设备的当前应用文件的第一镜像文件,相比与网关需要跟外界进行通信而获取第一镜像文件,上述可选的实施方式能够更加高效地完成获取待升级的目标终端设备的当前应用文件的第一镜像文件的步骤。

102、网关获取用于对目标终端设备升级的目标应用文件的第二镜像文件。

本发明实施例中,可选的,应用场景中还可以设置有用于管理终端设备的管理平台,网关获取用于对目标终端设备升级的目标应用文件的第二镜像文件的步骤,可以包括以下操作:

网关与管理平台建立通信连接;

网关从管理平台获取用于对目标终端设备升级的目标应用文件的第二镜像文件。

103、网关根据第一镜像文件和第二镜像文件,生成差分镜像文件。

104、网关基于哈夫曼树,对差分镜像文件进行压缩处理,生成压缩镜像数据包。

105、网关将压缩镜像数据包发送至目标终端设备,以使得目标终端设备运行压缩镜像数据包而实现设备升级。

可见,本发明第一方面实施例中,该网关根据第一镜像文件和第二镜像文件,生成差分镜像文件,并基于哈夫曼树,将该差分镜像文件进行压缩而生成压缩镜像数据包,该压缩镜像数据包发送至目标终端设备,以使得该目标终端设备运行该压缩数据包而实现设备升级,这有利于大大降低用于目标终端设备升级的数据包的数据量,从而有利于减少目标终端设备在进行空中升级所需的时间,另外,该压缩数据包是由差分镜像文件基于哈夫曼树结构而进行压缩而成的,相当于进行了加密处理,与网关直接向目标终端设备传输用于升级的文件的明文相比,通过采用该压缩数据包的形式传输升级的相关文件,有利于该空中升级过程的数据安全性,又进一步的,由于该基于zigbee的设备升级方法的步骤中,差分镜像文件的生成的步骤以及压缩镜像数据包的生成的步骤,在网关中执行,有利于降低目标终端设备在进行空中升级的过程中的数据存储量,从而有利于降低目标终端设备在此期间的损耗。

在本发明的一些具体实施例中,网关根据第一镜像文件和第二镜像文件,生成差分镜像文件的步骤,可以包括以下操作:

网关将第一镜像文件,转换成十六进制的第一镜像数据文件;

网关将第二镜像文件,转换成十六进制的第二镜像数据文件;

网关将第一镜像数据文件与第二镜像数据文件进行对比;

网关根据第一镜像数据文件与第二镜像数据文件的对比结果,生成差分镜像文件。

可见,该实施例中,通过将第一镜像文件、第二镜像文件分别转换成第一镜像数据文件、第二镜像数据文件,通过改变数据形式,有利于更加高效地将上述两者进行对比,从而生成差分镜像文件。

该实施例中,可选的,网关根据第一镜像数据文件与第二镜像数据文件的对比结果,生成差分镜像文件的步骤,可以包括以下操作:

网关获取第一镜像数据文件与第二镜像数据文件的对比结果;

网关根据对比结果,确定数据相同项,其中,数据相同项用于表示第一镜像数据文件与第二镜像数据文件之间的相同的数据项;

网关将数据相同项对应的第一对比结果执行跳过操作,根据第二对比结果,生成差分镜像文件,其中,第二对比结果为除去第一对比结果的、部分的对比结果。

可见,该实施例还可以通过对数据相同项所对应的第一对比结果进行跳过操作,而根据第二对比结果,生成差分镜像文件,这有利于生成差分镜像文件的高效性。

该实施例中,可选的,网关根据第一镜像数据文件与第二镜像数据文件的对比结果,生成差分镜像文件的步骤,可以包括以下操作:

网关获取第一镜像数据文件与第二镜像数据文件的对比结果;

网关根据对比结果,确定数据差异项,其中,数据差异项用于表示第一镜像数据文件与第二镜像数据文件之间的差异的数据项;

网关根据数据差异项,生成差分镜像文件。

可见,该实施例还可以根据数据差异项,生成差分镜像文件,这有利于生成差分镜像文件的高效性。

该实施例中,可选的,网关根据第一镜像数据文件与第二镜像数据文件的对比结果,生成差分镜像文件的步骤,可以包括以下操作:

网关获取第一镜像数据文件与第二镜像数据文件的对比结果;

网关根据对比结果,确定待生成的差分镜像文件的属性信息以及偏移量信息,其中,属性信息包括待生成的差分镜像文件的第二版本信息、对应的终端设备的固件类型和差异条目数量当中的其中一种或者多种的组合,偏移量信息包括待生成的差分镜像文件的偏移量起始位置以及截止长度;

网关根据属性信息,生成差分镜像文件的文件头;

网关根据偏移量信息,生成差分镜像文件的文件尾。

可见,该实施例中,差分镜像文件的文件头根据属性信息生成,而差分镜像文件的文件尾根据偏移量信息生成,有利于将关键信息写入差分镜像文件,从而使得文件头、文件尾可以作为该差分镜像文件的标志位,从而有利于在网关内部基于该标志位,区分不同的差分镜像文件,进而有利于提高该空中升级过程的高效性。

请参阅图3,图3是本发明第二方面实施例公开的一种基于zigbee的设备升级的控制装置的结构示意图。其中,图3所描述的基于zigbee的设备升级的控制装置适用于图1所描述的智能家居系统中。具体地,该应用场景中,设置有基于zigbee通信的网关以及与该网关通信连接的终端设备,该控制装置设置在该网关中。如图3所示,该控制装置包括获取模块301、生成模块302和发送模块303,其中:

获取模块301,用于获取待升级的目标终端设备的当前应用文件的第一镜像文件;

获取模块301,还用于对目标终端设备升级的目标应用文件的第二镜像文件;

生成模块302,用于根据第一镜像文件和第二镜像文件,生成差分镜像文件;

生成模块302,还用于基于哈夫曼树,对差分镜像文件进行压缩处理,生成压缩镜像数据包;

发送模块303,用于将压缩镜像数据包发送至目标终端设备,以使得目标终端设备运行压缩镜像数据包而实现设备升级。

可见,本发明第二方面实施例中,该网关根据第一镜像文件和第二镜像文件,生成差分镜像文件,并基于哈夫曼树,将该差分镜像文件进行压缩而生成压缩镜像数据包,该压缩镜像数据包发送至目标终端设备,以使得该目标终端设备运行该压缩数据包而实现设备升级,这有利于大大降低用于目标终端设备升级的数据包的数据量,从而有利于减少目标终端设备在进行空中升级所需的时间,另外,该压缩数据包是由差分镜像文件基于哈夫曼树结构而进行压缩而成的,相当于进行了加密处理,与网关直接向目标终端设备传输用于升级的文件的明文相比,通过采用该压缩数据包的形式传输升级的相关文件,有利于该空中升级过程的数据安全性,又进一步的,由于该基于zigbee的设备升级方法的步骤中,差分镜像文件的生成的步骤以及压缩镜像数据包的生成的步骤,在网关中执行,有利于降低目标终端设备在进行空中升级的过程中的数据存储量,从而有利于降低目标终端设备在此期间的损耗。

请参阅图4,图4是本发明第三方面实施例公开的一种基于zigbee的设备升级装置的结构示意图。其中,图4所描述的基于zigbee的设备升级装置适用于图1所描述的智能家居系统中。具体地,该应用场景中,设置有基于zigbee通信的网关以及与该网关通信连接的终端设备,该设备升级装置设置在该网关中。如图4所示,该设备升级装置:

存储有可执行程序代码的存储器401;

与存储器401耦合的处理器402;

进一步的,还可以包括与处理器402耦合的输入接口403和输出接口404;

其中,处理器402调用存储器401中存储的可执行程序代码,用于执行本发明第一方面实施例所描述的基于zigbee的设备升级方法的步骤。

本发明第四方面实施例公开了一种计算机可读存储介质,其存储用于电子数据交换的计算机程序,其中,该计算机程序使得计算机执行本发明第一方面实施例所描述的基于zigbee的设备升级方法的步骤。

本发明第五方面实施例公开了一种计算机程序产品,该计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,且该计算机程序可操作来使计算机执行本发明第一方面实施例所描述的基于zigbee的设备升级方法的步骤。

以上所描述的装置实施例仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施例的具体描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,存储介质包括只读存储器(read-onlymemory,rom)、随机存储器(randomaccessmemory,ram)、可编程只读存储器(programmableread-onlymemory,prom)、可擦除可编程只读存储器(erasableprogrammablereadonlymemory,eprom)、一次可编程只读存储器(one-timeprogrammableread-onlymemory,otprom)、电子抹除式可复写只读存储器(electrically-erasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。

最后应说明的是:本发明实施例公开的一种基于zigbee的设备升级方法及控制装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述的实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明的实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1