CN111158724B - 基于dali总线的软件自动升级方法及系统 - Google Patents

基于dali总线的软件自动升级方法及系统 Download PDF

Info

Publication number
CN111158724B
CN111158724B CN201911403619.6A CN201911403619A CN111158724B CN 111158724 B CN111158724 B CN 111158724B CN 201911403619 A CN201911403619 A CN 201911403619A CN 111158724 B CN111158724 B CN 111158724B
Authority
CN
China
Prior art keywords
software
control device
upgrading
upgrade
new version
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
Application number
CN201911403619.6A
Other languages
English (en)
Other versions
CN111158724A (zh
Inventor
陈恒
胡炎申
陈洁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SHENZHEN MOSO POWER ELECTRONICS TECHNOLOGY CO LTD
Original Assignee
SHENZHEN MOSO POWER ELECTRONICS TECHNOLOGY CO LTD
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SHENZHEN MOSO POWER ELECTRONICS TECHNOLOGY CO LTD filed Critical SHENZHEN MOSO POWER ELECTRONICS TECHNOLOGY CO LTD
Priority to CN201911403619.6A priority Critical patent/CN111158724B/zh
Publication of CN111158724A publication Critical patent/CN111158724A/zh
Application granted granted Critical
Publication of CN111158724B publication Critical patent/CN111158724B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02BCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO BUILDINGS, e.g. HOUSING, HOUSE APPLIANCES OR RELATED END-USER APPLICATIONS
    • Y02B20/00Energy efficient lighting technologies, e.g. halogen lamps or gas discharge lamps
    • Y02B20/40Control techniques providing energy savings, e.g. smart controller or presence detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种基于DALI总线的软件自动升级方法及系统。所述方法包括:若检测到软件升级服务器更新了新版本软件,软件升级网关从软件升级服务器下载新版本软件的升级包,将新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知,以通知控制装置软件升级服务器更新了新版本软件;控制装置根据升级通知判断是否需要升级软件;若是,控制装置设置需要升级标志;软件升级网关检测控制装置是否需要升级软件;若是,软件升级网关通过DALI总线向控制装置广播新版本软件的升级包;控制装置接收新版本软件的升级包,并根据新版本软件的升级包升级软件,从而控制装置可以实现在线自动升级软件,解决软件问题时无需召回控制装置,节约人力物力。

Description

基于DALI总线的软件自动升级方法及系统
技术领域
本发明涉及互联网技术领域,尤其涉及一种基于DALI总线的软件自动升级方法及系统。
背景技术
DALI(Digital addressable lighting interface,数字可寻址照明协议)是一种适用于照明控制系统的低价位、易操作、易推广的照明系统协议规范,将其应用于照明控制,可实现对众多灯具的可寻址调光控制,是实现照明集中控制的基础。
目前DALI控制装置不能自动通过DALI总线升级软件,为了更新DALI控制装置中的软件,通常需要召回DALI控制装置,拆开它,并通过编程器下载新软件到DALI控制装置。以上方法费时费力,效率低下。
发明内容
本发明实施例提供了一种基于DALI总线的软件自动升级方法及系统,旨在解决现有DALI控制装置中软件升级费时费力的问题。
第一方面,本发明实施例提供了一种基于DALI总线的软件自动升级方法,所述基于DALI总线的软件自动升级方法应用于软件自动升级系统中,所述软件自动升级系统包括终端、软件升级服务器、软件升级网关以及控制装置,软件升级网关通过DALI总线与控制装置连接,所述基于DALI总线的软件自动升级方法包括:
若检测到软件升级服务器更新了新版本软件,软件升级网关从软件升级服务器下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知,以通知控制装置软件升级服务器更新了新版本软件;
控制装置根据所述升级通知判断是否需要升级软件;
若需要升级软件,控制装置设置需要升级标志;
软件升级网关检测控制装置是否需要升级软件;
若检测到控制装置需要升级软件,软件升级网关通过DALI总线向控制装置广播所述新版本软件的升级包;
控制装置接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件。
第二方面,本发明实施例还提供了一种软件自动升级系统,所述软件自动升级系统包括终端、软件升级服务器、软件升级网关以及控制装置,软件升级网关通过DALI总线与控制装置连接,所述控制装置包括软件升级模块,其中:
软件升级网关用于若检测到软件升级服务器更新了新版本软件,从软件升级服务器下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知,以通知控制装置软件升级服务器更新了新版本软件;检测控制装置是否需要升级软件;以及若检测到控制装置需要升级软件,通过DALI总线向控制装置广播所述新版本软件的升级包;
控制装置的软件升级模块用于根据所述升级通知判断是否需要升级软件;若需要升级软件,设置需要升级标志;以及接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件。
本发明实施例提供了一种基于DALI总线的软件自动升级方法及系统。所述方法包括:若检测到软件升级服务器更新了新版本软件,软件升级网关从软件升级服务器下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知,以通知控制装置软件升级服务器更新了新版本软件;控制装置根据所述升级通知判断是否需要升级软件;若需要升级软件,控制装置设置需要升级标志;软件升级网关检测控制装置是否需要升级软件;若检测到控制装置需要升级软件,软件升级网关通过DALI总线向控制装置广播所述新版本软件的升级包;控制装置接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件。通过应用本发明实施例提出的技术方案,控制装置可以在线自动升级软件,解决控制装置的软件问题无需召回控制装置,节约人力物力。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于DALI总线的软件自动升级方法的流程示意图;
图2为本发明实施例提供的一种基于DALI总线的软件自动升级方法的子流程示意图;
图3为本发明实施例提供的一种基于DALI总线的软件自动升级方法的子流程示意图;
图4为本发明另一实施例提供的一种基于DALI总线的软件自动升级方法的流程示意图;
图5为本发明实施例提供的一种软件自动升级系统的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
请参阅图1,图1是本发明实施例提供的一种基于DALI总线的软件自动升级方法的流程示意图。所述基于DALI总线的软件自动升级方法应用于软件自动升级系统中,所述软件自动升级系统包括终端、软件升级服务器、软件升级网关以及控制装置,软件升级网关通过DALI总线与控制装置连接,如图所示,该基于DALI总线的软件自动升级方法包括以下步骤S1-S5。
S1,若检测到软件升级服务器更新了新版本软件,软件升级网关从软件升级服务器下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知,以通知控制装置软件升级服务器更新了新版本软件。
具体实施中,软件升级网关定期检测如果检测软件升级服务器是否有新的软件版本更新。如果检测到软件升级服务器更新了新版本软件,软件升级网关从软件升级服务器下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知。升级通知用以通知控制装置软件升级服务器更新了新版本软件。
在一实施例中,以上步骤软件升级网关通过DALI总线向控制装置广播升级通知,包括:软件升级网关通过DALI总线向控制装置广播所述新版本软件的软件信息表,所述软件信息表包含硬件标识。
具体实施中,所述新版本软件的升级包包括软件信息表。软件升级网关通过DALI总线向控制装置广播所述新版本软件的软件信息表,所述软件信息表包含硬件标识。
例如,在本实施例中,软件信息表的结构如下所示:
Figure BDA0002348051600000041
Figure BDA0002348051600000051
软件信息表各符号的注释如下表1所示。
符号 名字 参考值 占字节数 注释
tag 标识 C9 1 软件信息表标识
len 长度 5 1 软件信息表数据长度
hwid 硬件标识 1 控制装置硬件标识
swid 软件标识 1 控制装置软件标识
tnum 表个数 250 1 软件数据表个数
dblen 块长度 128~250 1 软件数据表数据块长度
crc 校验 1 软件信息表校验字节
表1软件信息表注释表
需要说明的是,硬件标识hwid是控制装置是否可以正常运行该软件的标识,是控制装置判断是否可以升级的依据。软件标识swid用于标识软件版本。根据控制装置可用内存大小选择适当软件数据表数据块长度dblen值,如选128。如果软件长度是dblen的整数倍,则tnum=软件长度/dblen,否则tnum=软件长度/dblen+1。表序号tsn取值从0到tnum,tsn*dlen代表该表中软件数据块在整个软件中的开始位置。加密标识enid表示软件数据块密文的加密方式。控制装置按对应的方法解密。如果dblen=250,tnum=250,那么可升级软件的长度为61KB,可以满足控制装置软件升级需要。软件打包工具根据软件信息表、软件数据表结构将升级软件分表打包生成升级软件包。软件升级包包括软件信息表文件、软件数据表文件。
进一步地,在本实施例中,软件升级网关通过DALI总线发软件信息表的前向帧如下表2所示。
Figure BDA0002348051600000061
表2软件升级网关通过DALI总线发软件信息表的前向帧的内容表
S2,控制装置根据所述升级通知判断是否需要升级软件。
具体实施中,控制装置根据所述升级通知判断是否需要升级软件。
在一实施例中,参见图2,以上步骤控制装置根据所述升级通知判断是否需要升级软件,包括如下步骤S21-S22。
S21,控制装置判断所述软件信息表包含硬件标识是否与控制装置的硬件标识相同。
具体实施中,控制装置判断所述软件信息表包含硬件标识是否与控制装置的硬件标识相同。
S22,若所述软件信息表包含硬件标识与控制装置的硬件标识相同,控制装置判定需要升级软件。
如果所述软件信息表包含硬件标识与控制装置的硬件标识相同,控制装置判定需要升级软件。
如果所述软件信息表包含硬件标识与控制装置的硬件标识不相同,控制装置判定不需要升级软件。
S3,若需要升级软件,控制装置设置需要升级标志。
具体实施中,如果需要升级软件,控制装置设置需要升级标志,以此告知软件升级网关控制装置需要升级软件。如果不需要升级软件,控制装置设置不需要升级标志,以此告知软件升级网关控制装置不需要升级软件。
控制装置的接收信息表结构如下所示:
Figure BDA0002348051600000062
Figure BDA0002348051600000071
接收信息表各符号的注释如下表3所示。
Figure BDA0002348051600000072
表3控制装置的接收信息表的注释表
在一实施例中,软件升级网关通过DALI总线查询控制装置接收信息表的前向帧和后向帧如下表4所示。
Figure BDA0002348051600000073
表4软件升级网关通过DALI总线查询接收信息表的前向帧和后向帧
S4,软件升级网关检测控制装置是否需要升级软件。
具体实施中,软件升级网关检测控制装置是否需要升级软件。具体地,查询控制装置的接收信息表,从而确定控制装置是否需要升级软件。
S5,若检测到控制装置需要升级软件,软件升级网关通过DALI总线向控制装置广播所述新版本软件的升级包。
具体实施中,如果检测到控制装置需要升级软件,软件升级网关通过DALI总线向控制装置广播所述新版本软件的升级包。
如果检测到控制装置不需要升级软件,软件升级网关不向控制装置广播所述新版本软件的升级包。
在一实施例中,以上步骤软件升级网关通过DALI总线向控制装置广播所述新版本软件的升级包,包括:软件升级网关通过DALI总线依次向控制装置广播所述新版本软件的升级包的软件数据表。
所述新版本软件的升级包还包括软件数据表,且一般为多个软件数据表。在本实施例中,软件升级网关通过DALI总线依次向控制装置广播所述新版本软件的升级包的软件数据表。
在一实施例中,软件数据表的结构如下所示:
Figure BDA0002348051600000081
软件数据表各符号的注释如下表5所示。
Figure BDA0002348051600000082
Figure BDA0002348051600000091
表5软件数据表注释表
需要说明的是,硬件标识hwid是控制装置是否可以正常运行该软件的标识,是控制装置判断是否可以升级的依据。软件标识swid用于标识软件版本。根据控制装置可用内存大小选择适当软件数据表数据块长度dblen值,如选128。如果软件长度是dblen的整数倍,则tnum=软件长度/dblen,否则tnum=软件长度/dblen+1。表序号tsn取值从0到tnum,tsn*dlen代表该表中软件数据块在整个软件中的开始位置。加密标识enid表示软件数据块密文的加密方式。控制装置按对应的方法解密。如果dblen=250,tnum=250,那么可升级软件的长度为61KB,可以满足控制装置软件升级需要。软件打包工具根据软件信息表、软件数据表结构将升级软件分表打包生成升级软件包。软件升级包包括软件信息表文件、软件数据表文件。
进一步地,在本实施例中,软件升级网关通过DALI总线发软件数据表的前向帧如下表6所示。
Figure BDA0002348051600000092
Figure BDA0002348051600000101
表6软件升级网关通过DALI总线发软件数据表的前向帧的内容表
S6,控制装置接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件。
具体实施中,控制装置接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件。
在一实施例中,参见图3,以上步骤控制装置接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件,包括如下步骤S31-S34。
S31,控制装置依次接收所述新版本软件的升级包的软件数据表,并对所述新版本软件的升级包的软件数据表进行数据校验。
具体实施中,控制装置依次接收所述新版本软件的升级包的软件数据表,并对所述新版本软件的升级包的软件数据表进行数据校验,用以校验软件数据表是否完整有效。
S32,若所述新版本软件的升级包的软件数据表通过数据校验,控制装置将软件数据表中软件代码密文解密为软件代码明文,并将所述软件代码明文写到控制装置中所述软件数据表指定的存储位置。
具体实施中,如果所述新版本软件的升级包的软件数据表通过数据校验,即软件数据表是完整有效的。控制装置将软件数据表中软件代码密文解密为软件代码明文,并将所述软件代码明文写到控制装置中,所述软件数据表指定的存储位置。
具体地,软件数据表的加密标识enid表示软件数据块密文的加密方式。控制装置根据加密标识enid确定加密方式,并采用相对应的解密方式进行解密。
S33,控制装置将控制装置的启动跳转地址指向所述新版本软件的启动地址。
具体地,控制装置将控制装置的启动跳转地址指向所述新版本软件的启动地址。
S34,控制装置重新启动,并运行所述新版本软件。
具体地,控制装置重新启动,并运行所述新版本软件,以完成升级过程。
通过应用本发明实施例提出的技术方案,控制装置可以在线自动升级软件,解决控制装置的软件问题无需召回控制装置,节约人力物力。
图4是本发明另一实施例提供的一种基于DALI总线的软件自动升级方法的流程示意图。如图4所示,本实施例的基于DALI总线的软件自动升级方法包括步骤S41-S413。
S41,终端通过软件打包工具将新软件版本打包生成升级包。
具体实施中,终端通过软件打包工具将新软件版本打包生成升级包。升级包中包含软件信息表以及软件数据表。
S42,终端将新软件版本的升级包上传到服务器。
具体实施中,终端将新软件版本的升级包上传到服务器。
S43,若检测到软件升级服务器更新了新版本软件,软件升级网关从软件升级服务器下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知,以通知控制装置软件升级服务器更新了新版本软件。
S44,控制装置根据所述升级通知判断是否需要升级软件。
S45,若需要升级软件,控制装置设置需要升级标志。
S46,软件升级网关检测控制装置是否需要升级软件。
S47,若检测到控制装置需要升级软件,软件升级网关通过DALI总线向控制装置广播所述新版本软件的升级包。
S48,控制装置接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件。
S49,控制装置设置升级完成标志。
具体实施中,在升级完成之后,控制装置设置升级完成标志。
S410,软件升级网关检测控制装置是否升级完成。
具体实施中,软件升级网关通过DALI总线查询控制装置的接收信息表判断控制装置是否完成升级。在控制装置为多个时,软件升级网关检测是否全部控制装置均完成升级。
S411,若检测到控制装置升级完成,软件升级网关停止向控制装置广播所述新版本软件的升级包。
具体实施中,如果检测到所有的控制装置升级完成,软件升级网关停止向控制装置广播所述新版本软件的升级包。
S412,软件升级网关向软件升级服务器上传控制装置的软件升级信息。
具体实施中,软件升级网关向软件升级服务器上传控制装置的软件升级信息,以便于用户查询控制装置的软件升级信息。
S413,若接收到终端发送的软件升级信息查询请求,软件升级服务器向终端发送控制装置的软件升级信息。
具体实施中,如果接收到终端发送的软件升级信息查询请求,软件升级服务器向终端发送控制装置的软件升级信息。
图5是本发明实施例提供的一种软件自动升级系统的示意性框图。如图5所示,对应于以上基于DALI总线的软件自动升级方法,本发明还提供一种软件自动升级系统。具体地,请参阅图5,所述软件自动升级系统包括终端10、软件升级服务器20、软件升级网关30以及控制装置40,软件升级网关30通过DALI总线与控制装置40连接,所述控制装置40包括软件升级模块,其中:
软件升级网关30用于若检测到软件升级服务器20更新了新版本软件,从软件升级服务器20下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置40广播升级通知,以通知控制装置40软件升级服务器20更新了新版本软件;检测控制装置40是否需要升级软件;以及若检测到控制装置40需要升级软件,通过DALI总线向控制装置40广播所述新版本软件的升级包;
控制装置40的软件升级模块用于根据所述升级通知判断是否需要升级软件;若需要升级软件,设置需要升级标志;以及接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件。
在一实施例中,所述通过DALI总线向控制装置40广播升级通知,包括:
通过DALI总线向控制装置40广播所述新版本软件的软件信息表,所述软件信息表包含硬件标识;
所述根据所述升级通知判断是否需要升级软件,包括:
判断所述软件信息表包含硬件标识是否与控制装置40的硬件标识相同;
若所述软件信息表包含硬件标识与控制装置40的硬件标识相同,判定需要升级软件。
在一实施例中,所述通过DALI总线向控制装置40广播所述新版本软件的升级包,包括:
通过DALI总线依次向控制装置40广播所述新版本软件的升级包的软件数据表;
所述接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件,包括:
依次接收所述新版本软件的升级包的软件数据表,并对所述新版本软件的升级包的软件数据表进行数据校验;
若所述新版本软件的升级包的软件数据表通过数据校验,将软件数据表中软件代码密文解密为软件代码明文,并将所述软件代码明文写到控制装置40中所述软件数据表指定的存储位置;
将控制装置40的启动跳转地址指向所述新版本软件的启动地址;
将控制装置40重新启动,并运行所述新版本软件。
在一实施例中,所述接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件之后,控制装置40的软件升级模块还用于:设置升级完成标志;
软件升级网关30还用于:检测控制装置40是否升级完成;若检测到控制装置40升级完成,停止向控制装置40广播所述新版本软件的升级包;以及向软件升级服务器20上传控制装置40的软件升级信息。
在一实施例中,终端10用于通过软件打包工具将新软件版本打包生成升级包;以及将新软件版本的升级包上传到服务器;
软件升级服务器20用于若接收到终端10发送的软件升级信息查询请求,向终端10发送控制装置40的软件升级信息。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述软件自动升级系统的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,尚且本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种基于DALI总线的软件自动升级方法,其特征在于,所述基于DALI总线的软件自动升级方法应用于软件自动升级系统中,所述软件自动升级系统包括终端、软件升级服务器、软件升级网关以及控制装置,软件升级网关通过DALI总线与控制装置连接,所述基于DALI总线的软件自动升级方法包括:
若检测到软件升级服务器更新了新版本软件,软件升级网关从软件升级服务器下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知,以通知控制装置软件升级服务器更新了新版本软件;
控制装置根据所述升级通知判断是否需要升级软件;
若需要升级软件,控制装置设置需要升级标志;
软件升级网关检测控制装置是否需要升级软件;
若检测到控制装置需要升级软件,软件升级网关通过DALI总线依次向控制装置广播所述新版本软件的升级包的软件数据表;
控制装置依次接收所述新版本软件的升级包的软件数据表,并对所述新版本软件的升级包的软件数据表进行数据校验;
若所述新版本软件的升级包的软件数据表通过数据校验,控制装置将软件数据表中软件代码密文解密为软件代码明文,并将所述软件代码明文写到控制装置中所述软件数据表指定的存储位置;
控制装置将控制装置的启动跳转地址指向所述新版本软件的启动地址;
控制装置重新启动,并运行所述新版本软件。
2.根据权利要求1所述的基于DALI总线的软件自动升级方法,其特征在于,所述软件升级网关通过DALI总线向控制装置广播升级通知,包括:
软件升级网关通过DALI总线向控制装置广播所述新版本软件的软件信息表,所述软件信息表包含硬件标识;
所述控制装置根据所述升级通知判断是否需要升级软件,包括:
控制装置判断所述软件信息表包含硬件标识是否与控制装置的硬件标识相同;
若所述软件信息表包含硬件标识与控制装置的硬件标识相同,控制装置判定需要升级软件。
3.根据权利要求1所述的基于DALI总线的软件自动升级方法,其特征在于,所述控制装置接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件之后,所述方法还包括:
控制装置设置升级完成标志;
软件升级网关检测控制装置是否升级完成;
若检测到控制装置升级完成,软件升级网关停止向控制装置广播所述新版本软件的升级包;
软件升级网关向软件升级服务器上传控制装置的软件升级信息。
4.根据权利要求1所述的基于DALI总线的软件自动升级方法,其特征在于,所述方法还包括:
终端通过软件打包工具将新软件版本打包生成升级包;终端将新软件版本的升级包上传到服务器;
若接收到终端发送的软件升级信息查询请求,软件升级服务器向终端发送控制装置的软件升级信息。
5.一种软件自动升级系统,其特征在于,所述软件自动升级系统包括终端、软件升级服务器、软件升级网关以及控制装置,软件升级网关通过DALI总线与控制装置连接,所述控制装置包括软件升级模块,其中:
软件升级网关用于若检测到软件升级服务器更新了新版本软件,从软件升级服务器下载所述新版本软件的升级包,将所述新版本软件的升级包缓存,并通过DALI总线向控制装置广播升级通知,以通知控制装置软件升级服务器更新了新版本软件;检测控制装置是否需要升级软件;以及若检测到控制装置需要升级软件,通过DALI总线依次向控制装置广播所述新版本软件的升级包的软件数据表;
控制装置的软件升级模块用于根据所述升级通知判断是否需要升级软件;若需要升级软件,设置需要升级标志;以及依次接收所述新版本软件的升级包的软件数据表,并对所述新版本软件的升级包的软件数据表进行数据校验;
若所述新版本软件的升级包的软件数据表通过数据校验,将软件数据表中软件代码密文解密为软件代码明文,并将所述软件代码明文写到控制装置中所述软件数据表指定的存储位置;
将控制装置的启动跳转地址指向所述新版本软件的启动地址;
将控制装置重新启动,并运行所述新版本软件。
6.根据权利要求5所述的软件自动升级系统,其特征在于,所述通过DALI总线向控制装置广播升级通知,包括:
通过DALI总线向控制装置广播所述新版本软件的软件信息表,所述软件信息表包含硬件标识;
所述根据所述升级通知判断是否需要升级软件,包括:
判断所述软件信息表包含硬件标识是否与控制装置的硬件标识相同;
若所述软件信息表包含硬件标识与控制装置的硬件标识相同,判定需要升级软件。
7.根据权利要求5所述的软件自动升级系统,其特征在于,所述接收所述新版本软件的升级包,并根据所述新版本软件的升级包升级软件之后,控制装置的软件升级模块还用于:设置升级完成标志;
软件升级网关还用于:检测控制装置是否升级完成;若检测到控制装置升级完成,停止向控制装置广播所述新版本软件的升级包;以及向软件升级服务器上传控制装置的软件升级信息。
8.根据权利要求5所述的软件自动升级系统,其特征在于,终端用于通过软件打包工具将新软件版本打包生成升级包;以及将新软件版本的升级包上传到服务器;
软件升级服务器用于若接收到终端发送的软件升级信息查询请求,向终端发送控制装置的软件升级信息。
CN201911403619.6A 2019-12-30 2019-12-30 基于dali总线的软件自动升级方法及系统 Active CN111158724B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911403619.6A CN111158724B (zh) 2019-12-30 2019-12-30 基于dali总线的软件自动升级方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911403619.6A CN111158724B (zh) 2019-12-30 2019-12-30 基于dali总线的软件自动升级方法及系统

Publications (2)

Publication Number Publication Date
CN111158724A CN111158724A (zh) 2020-05-15
CN111158724B true CN111158724B (zh) 2023-05-05

Family

ID=70559523

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911403619.6A Active CN111158724B (zh) 2019-12-30 2019-12-30 基于dali总线的软件自动升级方法及系统

Country Status (1)

Country Link
CN (1) CN111158724B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112073211B (zh) * 2020-07-10 2022-10-11 佛山市华全电气照明有限公司 Dali在线升级方法、系统、计算机设备及可读存储介质
CN114151933B (zh) * 2021-12-07 2023-04-07 青岛海信日立空调系统有限公司 多联机空调机组升级系统、升级控制器及升级方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104219836A (zh) * 2014-08-26 2014-12-17 华南理工大学 一种照明控制系统
EP3166038A1 (en) * 2015-11-04 2017-05-10 Helvar Oy Ab Method and arrangements for updating memory spaces in distributed devices of a house automation system
CN107360030A (zh) * 2017-07-14 2017-11-17 陕西科技大学 一种dali智能照明扩展系统及扩展方法
CN107710878A (zh) * 2015-04-30 2018-02-16 飞利浦照明控股有限公司 升级光源

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150084547A1 (en) * 2013-09-26 2015-03-26 Verified Energy, Llc DALI commissioning tools and methods for implementing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104219836A (zh) * 2014-08-26 2014-12-17 华南理工大学 一种照明控制系统
CN107710878A (zh) * 2015-04-30 2018-02-16 飞利浦照明控股有限公司 升级光源
EP3166038A1 (en) * 2015-11-04 2017-05-10 Helvar Oy Ab Method and arrangements for updating memory spaces in distributed devices of a house automation system
CN107360030A (zh) * 2017-07-14 2017-11-17 陕西科技大学 一种dali智能照明扩展系统及扩展方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
双模机顶盒在线升级方案设计与实现;韩洪波等;《微计算机信息》;20100825(第24期);全文 *
智能家居中KNX/DALI网关的实现;朱莉;《通讯世界》;20170425(第08期);全文 *

Also Published As

Publication number Publication date
CN111158724A (zh) 2020-05-15

Similar Documents

Publication Publication Date Title
CN111158724B (zh) 基于dali总线的软件自动升级方法及系统
CN107391143B (zh) 一种T-Box远程升级方法
KR101036694B1 (ko) 네트워크 환경에서 서비스 통지를 제공하기 위한 방법 및 장치
WO2017113080A1 (zh) 一种从站固件更新的方法、系统、主站及从站
US20140282487A1 (en) Software update for a wireless communication device
EP2957052B1 (en) Media delivery service protocol to support large numbers of client with error failover processes
EP2919440B1 (en) Advertisement processing method and device
WO2022095199A1 (zh) 一种嵌入式设备的差分升级方法及相关组件
US20040068721A1 (en) Network for updating firmware and / or software in wireless communication devices
CN104503745B (zh) 一种生成应用渠道包的方法和装置
CN109039779B (zh) 设备升级方法、数据传输单元、控制器局域网络设备和网络
CN104778057A (zh) 终端系统升级方法、装置及服务器
CN104346167A (zh) 生成应用渠道包的方法及装置
CN104123149B (zh) 软件升级方法、装置、客户端及系统
CN109391673A (zh) 一种管理更新文件的方法、系统及终端设备
CN105812435A (zh) 应用升级数据包处理方法、装置、电子设备及系统
CN104144466A (zh) 物联网中传感器接入方法、物联网系统和服务器
JP6793667B2 (ja) アプリケーションダウンロード方法及び装置
CN104754062A (zh) 基于互联网的信息推广方法、服务器及用户终端
CN103026661B (zh) 设备调试和替换
JP2017517934A (ja) ソフトウェアアップグレード方法及び装置、並びにデバイス
CN105227673A (zh) 防劫持的数据下载方法、客户端、服务器及系统
CN104077152A (zh) 一种嵌入式系统批量升级的方法及装置
CN112653729B (zh) 物联网终端的共享升级方法、装置、物联网终端及介质
WO2018032573A1 (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