CN116541047A - 固件升级方法、装置、计算机设备及计算机可读存储介质 - Google Patents

固件升级方法、装置、计算机设备及计算机可读存储介质 Download PDF

Info

Publication number
CN116541047A
CN116541047A CN202310816782.5A CN202310816782A CN116541047A CN 116541047 A CN116541047 A CN 116541047A CN 202310816782 A CN202310816782 A CN 202310816782A CN 116541047 A CN116541047 A CN 116541047A
Authority
CN
China
Prior art keywords
upgrade
firmware
upgrade package
slave
data
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.)
Pending
Application number
CN202310816782.5A
Other languages
English (en)
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.)
Guangzhou Rimsea Technology Co ltd
Original Assignee
Guangzhou Rimsea 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 Guangzhou Rimsea Technology Co ltd filed Critical Guangzhou Rimsea Technology Co ltd
Priority to CN202310816782.5A priority Critical patent/CN116541047A/zh
Publication of CN116541047A publication Critical patent/CN116541047A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • 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
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/10Energy storage using batteries

Abstract

本申请涉及一种固件升级方法、装置、计算机设备及可读存储介质,应用于储能系统的主机设备,所述储能系统还包括多个从机设备,所述主机设备与各从机设备通信连接,所述方法包括:根据终端设备发送的升级命令,识别各从机设备的实时运行状态;若各所述从机设备的实时运行状态均为第一运行状态,获取升级包数据;根据所述升级包数据,确定目标从机设备;将所述升级包数据发送至对应的目标从机设备进行固件升级。本申请通过根据从机设备的实时运行状态向其发送相应的升级包数据,能够精准、高效的完成对多个从机设备的固件更新,节省人力资源。

Description

固件升级方法、装置、计算机设备及计算机可读存储介质
技术领域
本申请涉及储能系统通信技术领域,特别是涉及一种固件升级方法、装置、计算机设备及可读存储介质。
背景技术
当前储能系统需要对固件版本进行迭代或者拓展时,需要专业的售后人员携带相应的移动设备以及数据传输线才能对储能系统的不同产品进行固件升级。随着储能系统迭代的加快以及业务的正常,储能系统的固件升级也越来越频繁,采用传统的固件升级方案需要耗费大量的人力资源。
因此,亟需一种能够提升对储能系统进行固件升级的效率的固件升级方案。
发明内容
为了解决上述技术问题,本申请提供一种固件升级方法、装置、计算机设备及可读存储介质,具体方案如下:
第一方面,本申请实施例提供了一种固件升级方法,应用于储能系统的主机设备,所述储能系统还包括多个从机设备,所述主机设备与各从机设备通信连接,所述方法包括:
根据终端设备发送的升级命令,识别各从机设备的实时运行状态;
若各所述从机设备的实时运行状态均为第一运行状态,获取升级包数据;
根据所述升级包数据,确定目标从机设备;
将所述升级包数据发送至对应的目标从机设备进行固件升级。
在其中一个实施例中,所述根据终端设备发送的升级命令,识别各从机设备的实时运行状态之后,还包括:
若任一所述从机设备的实时运行状态为第二运行状态,等待所述从机设备的实时运行状态切换为第一运行状态,以执行所述获取升级包数据的步骤。
在其中一个实施例中,所述根据终端设备发送的升级命令,识别各从机设备的实时运行状态,包括:
根据终端设备发送的升级命令,向各所述从机设备下发所述升级指令,以记录各从机设备的实时运行状态;
若从机设备已关闭充放电功能,则确定所述从机设备处于第一运行状态;
若从机设备未关闭充放电功能,则确定所述从机设备处于第二运行状态。
在其中一个实施例中,所述获取升级包数据,包括:
接收固件升级包信息;其中,所述固件升级包信息包括固件版本号;
比对所述固件升级包信息中的固件版本号与对应的从机设备的当前固件版本号;
若所述固件升级包信息中的固件版本号与所述当前固件版本号不同,则获取所述固件升级包信息中的固件版本号对应的升级包数据。
在其中一个实施例中,所述将所述升级包数据发送至对应的目标从机设备进行固件升级,包括:
与所述目标从机设备握手;
若握手成功,将所述升级包数据传输至所述目标从机设备,以使所述目标从机设备进行固件升级。
在其中一个实施例中,所述将所述升级包数据传输至所述目标从机设备,包括:
逐帧将所述升级包数据传输至所述目标从机设备,其中,同一帧升级包数据包括第一遍发送数据和第二遍发送数据,所述第一遍发送数据的功能码类型为第一类型,所述第二遍发送数据的功能码类型为第二类型。
在其中一个实施例中,所述获取升级包数据,包括:
识别每一帧所述升级包数据的功能码类型,其中,同一帧升级包数据包括第一遍接收数据和第二遍接收数据;
若所述功能码类型为第一类型,不反馈校验数据;
若所述功能码类型为第二类型,比对所述第一遍接收数据和所述第二遍接收数据;
若所述第一遍接收数据和所述第二遍接收数据相同,则反馈校验成功;
若所述第二遍接收数据和所述第二遍接收数据不同,则反馈校验失败。
在其中一个实施例中,所述等待所述从机设备的实时运行状态切换为第一运行状态,以执行所述获取升级包数据的步骤,包括:
若等待时间大于或等于预设时间阈值,所述从机设备的实时运行状态仍为第二运行状态,获取所述从机设备的设备类型和地址;
将所述从机设备的设备类型和地址以及拒绝升级信息发送至终端设备;
若等待时间小于所述预设时间阈值,且所述从机设备的实时运行状态切换为第一运行状态,执行所述获取升级包数据的步骤。
在其中一个实施例中,所述方法还包括:
当所述目标从机设备完成固件升级后,控制所述目标从机设备恢复升级前的运行状态。
第二方面,本申请实施例还提供了一种固件升级装置,应用于储能系统的主机设备,所述储能系统还包括多个从机设备,所述主机设备与各从机设备通信连接,所述装置包括:
识别模块,用于根据终端设备发送的升级命令,识别各从机设备的实时运行状态;
获取模块,用于若各所述从机设备的实时运行状态均为第一运行状态,获取升级包数据;
确定模块,用于根据所述升级包数据,确定目标从机设备;
升级模块,用于将所述升级包数据发送至对应的目标从机设备进行固件升级。
第三方面,本申请实施例提供了一种计算机设备,包括处理器和存储器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现第一方面所述的固件升级方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面所述的固件升级方法的步骤。
综上,本申请实施例提供了一种固件升级方法、装置、计算机设备及可读存储介质,应用于储能系统的主机设备,所述储能系统还包括多个从机设备,所述主机设备与各从机设备通信连接,所述方法包括:根据终端设备发送的升级命令,识别各从机设备的实时运行状态;若各所述从机设备的实时运行状态均为第一运行状态,获取升级包数据;根据所述升级包数据,确定目标从机设备;将所述升级包数据发送至对应的目标从机设备进行固件升级。本申请通过根据从机设备的实时运行状态向其发送相应的升级包数据,能够精准、高效的完成对多个从机设备的固件更新,节省人力资源。
附图说明
图1为本申请一个实施例的固件升级方法的应用场景示意图;
图2为本申请一个实施例的固件升级方法的方法流程示意图;
图3为本申请另一个实施例的固件升级方法的方法流程示意图;
图4为本申请一个实施例中识别各从机设备的实时运行状态步骤的流程示意图;
图5为本申请一个实施例中获取升级包数据步骤的流程示意图;
图6为本申请一个实施例的固件升级装置的装置模块示意图;
图7本申请一个实施例的计算机设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一电阻称为第二电阻,且类似地,可将第二电阻称为第一电阻。第一电阻和第二电阻两者都是电阻,但其不是同一电阻。
可以理解,以下实施例中的“连接”,如果被连接的电路、装置、单元等相互之间具有电信号或数据的传递,则应理解为“电连接”、“通信连接”等。
在此使用时,单数形式的“一”、“一个”和“所述/该”也可以包括复数形式,除非上下文清楚指出另外的方式。还应当理解的是,术语“包括/包含”或“具有”等指定所陈述的特征、整体、步骤、操作、组件、部分或它们的组合的存在,但是不排除存在或添加一个或更多个其他特征、整体、步骤、操作、组件、部分或它们的组合的可能性。
在一个实施例中,提供了一种固件升级方法,应用于如图1所示的应用环境中。如图1所示,储能系统包括主机设备和多个从机设备,主机设备与各从机设备通信连接。
其中,储能系统的主机设备还与终端设备进行通信连接,用于从终端设备获取固件升级程序,以对主机设备及各从机设备进行固件升级。主机设备与终端设备之间的通信连接方式可以为蓝牙连接,也可以为WIFI连接,本实施例对此不作具体限定。终端设备包括但不限于手机、个人电脑、机器人或者智能可穿戴设备等。
具体的,如图1所示,从机设备包括从机设备a、从机设备b、从机设备c和从机设备d等4个从机设备,各从机设备均可以控制独立的储能模块。需知的,从机设备的数量可以根据实际应用场景进行设置,此处仅作为示例说明,不作具体限定。
主机设备与从机设备之间可以基于控制器局域网总线(Controller AreaNetwork,简称CAN)通信协议进行数据通信,也可以采用其它通信协议进行通信,本实施例对此不作具体限定。
在实际应用过程中,终端设备与云端之间进行通信交互,云端按照预设协议打包固件升级程序,预设协议的类型可以根据实际应用场景进行自适应选择。其中,云端也可以称为云端服务器或云计算平台,云端用于基于硬件资源和软件资源的服务,提供计算、网络和存储能力。
在对主机设备或从机设备进行固件升级前,终端设备会通过主机设备获取主机设备的设备类型、从机设备的设备类型、主机设备的固件版本信息以及从机设备的固件版本信息,其中,固件版本信息包括固件版本号、固件大小以及固件循环冗余校验(Cyclicredundancy check,简称CRC)等信息。
终端设备实时接收云端发送的最新固件的版本信息,并比对最新固件的版本信息与主机设备及从机设备的当前固件的版本信息,并在最新固件的版本信息与当前固件的版本信息不同时,使主机设备及各从机设备开始进行固件升级处理。
在一个实施例中,如图2所示,提供了一种固件升级方法,以该方法应用于图1中的应用环境为例进行说明,包括以下步骤:
S201,根据终端设备发送的升级命令,识别各从机设备的实时运行状态。
具体地,主机设备接收终端设备发送的升级命令后,采集并记录各从机设备的实时运行状态,以确认多个从机设备是否均处于第一运行状态。
其中,从机设备的实时运行状态包括第一运行状态和第二运行状态,第一运行状态指从机设备关闭充放电功能后的运行状态,第二运行状态指从机设备未关闭充放电功能时的运行状态。
S202,若全部从机设备的实时运行状态均为第一运行状态,获取升级包数据。
具体地,当确认全部从机设备的实时运行状态均处于第一运行状态时,从终端设备或云端中获取升级包数据,举例来说,升级包数据的格式如下表1所示:
表1
根据上述表1可知,升级包数据包括固件版本号、固件大小以及固件循环冗余校验(Cyclic redundancy check,简称CRC)等内容。需知的,固件版本号包括固件版本号高字节和固件版本号低字节,其中,固件版本号低字节可以为主版本号,也可以为修订版本号,固件版本号高字节可以为修订版本号,也可以为主版本号,固件版本号高字节和固件版本号低字节的定义可以根据通信协议进行自适应设置,本实施例对此不作限定。
优选的,本实施例中的CAN通信协议采用29位标识符的扩展格式进行升级包数据的传输,在终端设备和主机设备之间、主机设备和从机设备之间的数据传输采用大端模式,高字节在前,低字节在后。
在具体执行过程中,在进行升级包数据的传输过程中,均会升级包数据进行CRC校验,其中,CRC校验的计算结果为2个字节,CRC校验的校验内容包括由从机设备地址开始到CRC校验码前的所有数据。CRC校验也采用高字节在前,低字节在后的传输方式。
在CRC校验过程中,从机设备复算CRC校验数据,并比较CRC校验数据和接收数据流中的校验值,以此来判断接收数据的有效性。CRC校验数据为两字节16位的二进制值数据。
升级包数据的数据大小可以根据实际应用场景进行自适应设置,并不限定于表1中的4字节,本实施例对此不作限定。
S203,根据升级包数据,确定目标从机设备。
具体的,在实际应用过程中,不同从机设备的固件版本号不一定相同。主机设备在获取升级包数据后,根据升级包数据中的固件版本号匹配对应的从机设备,在确定从机设备的地址后,将相应的升级包数据转发至从机设备,以使从机设备根据升级包数据进行空中下载技术(Over-the-Air Technology,简称OTA)升级。
本实施例提供的固件升级方法能够在获取升级包数据后,精确定位待升级的从机设备,从而能够应用在具有多个从机设备的储能系统中,提升储能系统进行固件升级的效率。
S204,将升级包数据发送至对应的目标从机设备进行固件升级。
在具体实施例中,目标从机设备接收升级包数据后开始自动进行固件升级。
在其中一个实施例中,如图3所示,根据终端设备发送的升级命令,识别各从机设备的实时运行状态之后,还包括:
S205,若任一从机设备的实时运行状态为第二运行状态,等待从机设备的实时运行状态切换为第一运行状态,以执行获取升级包数据的步骤。
具体的,若从机设备中还包括未关闭充放电功能的设备,主机设备将等待从机设备全部关闭充放电功能后,再执行升级步骤。
需知的,主机设备等待从机设备全部关闭充放电功能的等待时间具有时间限制,当主机设备的等待时间达到预设时间阈值时,主机设备将直接控制储能系统停止升级。其中,预设时间阈值可以根据实际应用场景进行自适应设置,此处不作限定。
在其中一个实施例中,等待从机设备的实时运行状态切换为第一运行状态,以执行获取升级包数据的步骤,包括:
若等待时间大于或等于预设时间阈值,从机设备的实时运行状态仍为第二运行状态,获取从机设备的设备类型和地址;
将从机设备的设备类型和地址以及拒绝升级信息发送至终端设备;
若等待时间小于预设时间阈值,且从机设备的实时运行状态切换为第一运行状态,执行获取升级包数据的步骤。
在具体实施例中,当主机设备等待从机设备切换运行状态的时间大于或等于预设时间阈值,主机设备将会向终端设备发送仍处于第二运行状态的从机设备的设备类型信息和地址信息,并向终端设备发送拒绝升级信息,以指示用户根据从机设备的设备类型信息和地址信息进行后续的调整处理。
本实施例通过发送相关信息至终端设备,有效提升了技术人员对储能系统进行检修的效率。
在其中一个实施例中,如图4所示,根据终端设备发送的升级命令,识别各从机设备的实时运行状态,包括:
S2011,根据终端设备发送的升级命令,向各从机设备下发升级指令,以记录各从机设备的实时运行状态;
S2012,若从机设备已关闭充放电功能,则确定从机设备处于第一运行状态;
S2013,若从机设备未关闭充放电功能,则确定从机设备处于第二运行状态。
在具体实施例中,主机设备通过向从机设备发送升级指令的方式,检测从机设备的充放电状态的开启状态和关闭状态,若从机设备的充放电状态处于关闭状态,则记录从机设备处于第一运行状态;若从机设备的充放电状态处于开启状态,则记录从机设备处于第二运行状态。
在实际应用场景中,主机设备也可以根据预设程序指令监测从机设备的各模块功能的运行状态,包括但不限于充放电功能。
在具体实施过程中,第一运行状态也可以为空闲状态,第二运行状态也可以为忙碌状态,第一运行状态和第二运行状态的具体定义可以根据实际应用场景进行自适应替换。
在其中一个实施例中,如图5所示,获取升级包数据,包括:
S2021,接收固件升级包信息;其中,固件升级包信息包括固件版本号;
S2022,比对固件升级包信息中的固件版本号与对应的从机设备的当前固件版本号;
S2023,若固件升级包信息中的固件版本号与当前固件版本号不同,则获取固件升级包信息中的固件版本号对应的升级包数据。
在具体实施例中,主机设备实时获取从机设备的固件版本信息,并将主机设备的固件版本信息以及从机设备的固件版本信息发送至终端设备。终端设备接收云端发送的最新的固件版本信息,并比较最新的固件版本信息与对应的从机设备的固件版本信息或对应的主机设备的固件版本信息,以判断是否向主机设备发送升级指令。
主机设备接收升级指令后,接收终端设备发送的固件升级包信息,主机设备先比对升级包信息中的固件版本号和对应从机设备的当前固件版本号,若当前固件版本号与升级包信息中的固件版本号不同,说明当前固件版本号尚未更新,则获取对应固件版本号的全部升级包数据,并将升级包数据转发至对应的从机设备中。
本实施例中的主机设备能够提前根据固件版本号确定对应的目标从机设备,能够有效保证从机设备接收固件升级包的准确性,主机设备能够同时为多个目标从机设备传输对应的固件升级包。
本实施例中的主机设备或从机设备在获取升级包数据时,可以采用并行接收模式也可以采用串行接收模式。采用并行接收模式时,不同帧数升级包数据的接收情况不会相互影响,在接收完全部升级包数据后,根据不同帧数据的帧序号进行排列重组,能够确保获取升级包数据的完整性。由于本申请实施例中的主机设备或从机设备在接收升级包数据时,均需要对每帧数据进行校验,因此,采用并行接收模式进行数据传输,能够进一步提升升级包数据的整体接收效率,不会因为某一帧数据校验失败需要重复校验而延误升级包数据的接收。
在其中一个实施例中,将升级包数据发送至对应的目标从机设备进行固件升级,包括:
与目标从机设备握手;
若握手成功,将升级包数据传输至目标从机设备,以使目标从机设备进行固件升级。
在具体实施例中,主机设备向从机设备发送数据前均需要与从机设备握手连接,以确定数据通信协议。具体的,本实施例中的主机设备与从机设备之间采用控制器局域网总线通信协议。
若主机设备与从机设备之间握手失败,则需重新进行与目标从机设备的握手连接。若失败次数超过预设次数阈值,主机设备向终端设备发送目标从机设备的设备类型及地址,以便于用户通过终端设备查看导致握手失败的问题设备。
在其中一个实施例中,获取升级包数据,包括:
识别每一帧升级包数据的功能码类型,其中,同一帧升级包数据包括第一遍接收数据和第二遍接收数据;
若功能码类型为第一类型,不反馈校验数据;
若功能码类型为第二类型,比对第一遍接收数据和第二遍接收数据;
若第一遍接收数据和第二遍接收数据相同,则反馈校验成功;
若第二遍接收数据和第二遍接收数据不同,则反馈校验失败。
在具体实施例中,主机设备或从机设备在接收升级包数据的过程中,对于每一帧升级包数据,均包括两遍接收步骤。在第一遍接收步骤中,主机设备或从机设备接收第一遍接收数据,主机设备或从机设备在接收第一遍接收数据后不进行比对步骤。在第二遍接收步骤中,主机设备或从机设备接收第二遍接收数据,主机设备或从机设备在接收第二遍接收数据后,根据第一遍接收数据和第二遍接收数据进行比对步骤。
具体的,比对步骤包括:比较第一遍接收数据和第二遍接收数据的预设数据内容,若第一遍接收数据和第二遍接收数据的预设数据内容相同,则反馈校验成功;若第一遍接收数据和第二遍接收数据的预设数据内容不同,则反馈校验失败。其中,预设数据内容包括帧序号、数据长度以及CRC。
当主机设备或从机设备反馈校验失败时,主机设备或从机设备重新进入接收步骤,接收重新发送的第一遍接收数据和第二遍接收数据,并进行新一轮的比对步骤。
另外,若主机设备或从机设备反馈校验失败的次数大于或等于预设次数时,主机设备将生成升级重启信号,并跳转执行S202中获取升级包数据的步骤,以重新执行对主机设备或从机设备的固件升级过程。
若主机设备生成升级重启信号的次数大于或等于预设次数时,主机设备将判定固件升级失败,并将固件升级失败信息发送至终端设备,以便于用户根据终端设备获取固件升级失败信息,并快速处理储能系统升级故障。
在具体实施例中,第一遍接收数据和第二遍接收数据的数据格式可以如表2所示:
表2
其中,第一遍接收数据和第二遍接收数据的功能码不同,第一遍接收数据的功能码用于指示主机设备或从机设备开始接收数据,第二遍接收数据的功能码用于指示主机设备或从机设备执行比对步骤。
举例来说,功能码为0x56时表示主机设备或从机设备开始接收数据,功能码为0x60时表示主机设备或从机设备执行比对步骤。需知的,功能码的具体定义可以根据实际应用场景进行自适应配置,此处仅用于示例说明。
在具体实施例中,主机设备或从机设备通过识别升级包数据的功能码,判断是否执行比对步骤。
在其中一个实施例中,将升级包数据传输至目标从机设备,包括:
逐帧将升级包数据传输至目标从机设备,其中,同一帧升级包数据包括第一遍发送数据和第二遍发送数据,第一遍发送数据的功能码类型为第一类型,第二遍发送数据的功能码类型为第二类型。
在具体实施例中,终端设备向主机设备发送升级包数据时,或主机设备向目标从机设备发送升级包数据时,对于每一帧升级包数据,均采用两遍发送方式。在第一遍发送步骤中,向目标从机设备发送第一遍发送数据,第一遍发送数据的功能码用于指示目标从机设备开始接收数据。在第二遍发送步骤中,向目标从机设备发送第二遍发送数据,第二遍发送数据的功能码用于指示目标从机设备执行比对步骤。
在其中一个实施例中,方法还包括:
当各目标从机设备完成固件升级后,控制对应的目标从机设备恢复升级前的运行状态。
在具体实施例中,从机设备完成固件升级后,将生成一个升级完成信号,并反馈至主机设备。主机设备在接收到升级完成信号后,则控制对应的目标从机设备恢复至升级前的运行状态。
举例来说,若目标从机设备升级前的运行状态为供电状态,那么目标从机设备在接收到升级指令后关停了充放电功能,并开始执行固件升级步骤,在完成固件升级后,目标从机设备将重新启动充放电功能,以恢复供电状态。
综上,本申请实施例提出了一种固件升级方法,主机设备接收终端设备发送的升级指令后,能够根据从机设备的类型与地址匹配相应版本号的固件升级包,从而为不同的从机设备发送对应的固件升级包,无需通过复杂通信过程采集从机设备的信息,有效提升了储能系统的固件升级效率。另外,主机设备和从机设备在接收升级包数据的过程中,对于每一帧升级包数据均会采用进行校验,以确保主机设备或从机设备完整的获取了升级包数据,避免升级包数据在传输过程中因损坏而使固件升级过程延误,进一步提升了储能系统进行固件升级的效率。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的子步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的固件升级方法的固件升级装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方法相似,故下面所提供的一个或多个固件升级装置实施例中的具体限定可以参见上文对于固件升级方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种固件升级装置600,应用于储能系统的主机设备,储能系统还包括多个从机设备,主机设备与各从机设备通信连接,固件升级装置600包括:
识别模块610,用于根据终端设备发送的升级命令,识别各从机设备的实时运行状态;
获取模块620,用于若全部从机设备的实时运行状态均为第一运行状态,获取升级包数据;
确定模块630,用于根据升级包数据,确定目标从机设备;
升级模块640,用于将升级包数据发送至对应的目标从机设备进行固件升级。
在其中一个实施例中,固件升级装置600还包括:
暂停模块,用于若任一从机设备的实时运行状态为第二运行状态,等待从机设备的实时运行状态切换为第一运行状态,以执行获取升级包数据的步骤。
在其中一个实施例中,识别模块610,具体用于向各从机设备下发升级命令,以记录各从机设备的实时运行状态;若从机设备已关闭充放电功能,则确定从机设备处于第一运行状态;若从机设备未关闭充放电功能,则确定从机设备处于第二运行状态。
在其中一个实施例中,获取模块620,具体用于接收固件升级包信息,其中,固件升级包信息包括固件版本号;比对固件版本号与对应的从机设备的当前固件版本号;若固件版本号与当前固件版本号不同,则获取固件版本号对应的升级包数据。
在其中一个实施例中,升级模块640,具体用于与目标从机设备握手;若握手成功,将升级包数据传输至目标从机设备,以使目标从机设备进行固件升级。
在其中一个实施例中,升级模块640,还用于逐帧将升级包数据传输至目标从机设备,其中,同一帧升级包数据包括第一遍发送数据和第二遍发送数据,第一遍发送数据的功能码类型为第一类型,第二遍发送数据的功能码类型为第二类型。
在其中一个实施例中,获取模块620,还用于识别每一帧升级包数据的功能码类型,其中,同一帧升级包数据包括第一遍接收数据和第二遍接收数据;若功能码类型为第一类型,不反馈校验数据;若功能码类型为第二类型,比对第一遍接收数据和第二遍接收数据;若第一遍接收数据和第二遍接收数据相同,则反馈校验成功;若第二遍接收数据和第二遍接收数据不同,则反馈校验失败。
在其中一个实施例中,暂停模块,具体用于若等待时间大于或等于预设时间阈值,获取从机设备的设备类型和地址;将从机设备的设备类型和地址以及拒绝升级信息发送至终端设备。
在其中一个实施例中,固件升级装置600,还包括:
恢复模块,用于当各目标从机设备完成固件升级后,控制对应的目标从机设备恢复升级前的运行状态。
综上,本申请实施例提供了一种固件升级装置,主机设备接收终端设备发送的升级指令后,能够根据从机设备的类型与地址匹配相应版本号的固件升级包,从而为不同的从机设备发送对应的固件升级包,无需通过复杂通信过程采集从机设备的信息,有效提升了储能系统的固件升级效率。另外,主机设备和从机设备在接收升级包数据的过程中,对于每一帧升级包数据均会采用进行校验,以确保主机设备或从机设备完整的获取了升级包数据,避免升级包数据在传输过程中因损坏而使固件升级过程延误,进一步提升了储能系统进行固件升级的效率。
另外,参考图7,本申请实施例提供了一种计算机设备,包括处理器和存储器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
根据终端设备发送的升级命令,识别各从机设备的实时运行状态;
若各从机设备的实时运行状态均为第一运行状态,获取升级包数据;
根据升级包数据,确定目标从机设备;
将升级包数据发送至对应的目标从机设备进行固件升级。
在具体实时过程中,计算机设备可以为储能设备或属于储能系统中的任一控制设备,本实施例对此不作限定。
本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
根据终端设备发送的升级命令,识别各从机设备的实时运行状态;
若各从机设备的实时运行状态均为第一运行状态,获取升级包数据;
根据升级包数据,确定目标从机设备;
将升级包数据发送至对应的目标从机设备进行固件升级。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random AccessMemory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种固件升级方法,其特征在于,应用于储能系统的主机设备,所述储能系统还包括多个从机设备,所述主机设备与各从机设备通信连接,所述方法包括:
根据终端设备发送的升级命令,识别各从机设备的实时运行状态;
若各所述从机设备的实时运行状态均为第一运行状态,获取升级包数据;
根据所述升级包数据,确定目标从机设备;
将所述升级包数据发送至对应的目标从机设备进行固件升级。
2.根据权利要求1所述的方法,其特征在于,所述根据终端设备发送的升级命令,识别各从机设备的实时运行状态之后,还包括:
若任一所述从机设备的实时运行状态为第二运行状态,等待所述从机设备的实时运行状态切换为第一运行状态,以执行所述获取升级包数据的步骤。
3.根据权利要求1所述的方法,其特征在于,所述根据终端设备发送的升级命令,识别各从机设备的实时运行状态,包括:
根据终端设备发送的升级命令,向各所述从机设备下发升级指令,以记录各从机设备的实时运行状态;
若从机设备已关闭充放电功能,则确定所述从机设备处于第一运行状态;
若从机设备未关闭充放电功能,则确定所述从机设备处于第二运行状态。
4.根据权利要求1所述的方法,其特征在于,所述获取升级包数据,包括:
接收固件升级包信息;其中,所述固件升级包信息包括固件版本号;
比对所述固件升级包信息中的固件版本号与对应的从机设备的当前固件版本号;
若所述固件升级包信息中的固件版本号与所述当前固件版本号不同,则获取所述固件升级包信息中的固件版本号对应的升级包数据。
5.根据权利要求1所述的方法,其特征在于,所述将所述升级包数据发送至对应的目标从机设备进行固件升级,包括:
与所述目标从机设备握手;
若握手成功,将所述升级包数据传输至所述目标从机设备,以使所述目标从机设备进行固件升级。
6.根据权利要求5所述的方法,其特征在于,所述将所述升级包数据传输至所述目标从机设备,包括:
逐帧将所述升级包数据传输至所述目标从机设备,其中,同一帧升级包数据包括第一遍发送数据和第二遍发送数据,所述第一遍发送数据的功能码类型为第一类型,所述第二遍发送数据的功能码类型为第二类型。
7.根据权利要求1所述的方法,其特征在于,所述获取升级包数据,包括:
识别每一帧所述升级包数据的功能码类型,其中,同一帧升级包数据包括第一遍接收数据和第二遍接收数据;
若所述功能码类型为第一类型,不反馈校验数据;
若所述功能码类型为第二类型,比对所述第一遍接收数据和所述第二遍接收数据;
若所述第一遍接收数据和所述第二遍接收数据相同,则反馈校验成功;
若所述第二遍接收数据和所述第二遍接收数据不同,则反馈校验失败。
8.根据权利要求2所述的方法,其特征在于,所述等待所述从机设备的实时运行状态切换为第一运行状态,以执行所述获取升级包数据的步骤,包括:
若等待时间大于或等于预设时间阈值,所述从机设备的实时运行状态仍为第二运行状态,获取所述从机设备的设备类型和地址;
将所述从机设备的设备类型和地址以及拒绝升级信息发送至终端设备;
若等待时间小于所述预设时间阈值,且所述从机设备的实时运行状态切换为第一运行状态,以执行所述获取升级包数据的步骤。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述目标从机设备完成固件升级后,控制所述目标从机设备恢复升级前的运行状态。
10.一种固件升级装置,其特征在于,应用于储能系统的主机设备,所述储能系统还包括多个从机设备,所述主机设备与各从机设备通信连接,所述装置包括:
识别模块,用于根据终端设备发送的升级命令,识别各从机设备的实时运行状态;
获取模块,用于若全部从机设备的实时运行状态均为第一运行状态,获取升级包数据;
确定模块,用于根据所述升级包数据,确定目标从机设备;
升级模块,用于将所述升级包数据发送至对应的目标从机设备进行固件升级。
11.一种计算机设备,包括处理器和存储器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9中任一项所述的固件升级方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9中任一项所述的固件升级方法的步骤。
CN202310816782.5A 2023-07-05 2023-07-05 固件升级方法、装置、计算机设备及计算机可读存储介质 Pending CN116541047A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310816782.5A CN116541047A (zh) 2023-07-05 2023-07-05 固件升级方法、装置、计算机设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310816782.5A CN116541047A (zh) 2023-07-05 2023-07-05 固件升级方法、装置、计算机设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN116541047A true CN116541047A (zh) 2023-08-04

Family

ID=87458157

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310816782.5A Pending CN116541047A (zh) 2023-07-05 2023-07-05 固件升级方法、装置、计算机设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN116541047A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117032579A (zh) * 2023-08-21 2023-11-10 上海合芯数字科技有限公司 一种从机启动方法、装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110515637A (zh) * 2019-07-12 2019-11-29 湖南新云网科技有限公司 一种程序升级方法、系统及终端设备
CN112130877A (zh) * 2020-09-08 2020-12-25 深圳市共进电子股份有限公司 路由器固件升级方法、装置、路由器和可读存储介质
CN114185576A (zh) * 2021-12-15 2022-03-15 深圳市有方科技股份有限公司 嵌入式设备升级方法、装置、计算机设备和存储介质
CN114866525A (zh) * 2022-05-19 2022-08-05 深圳市艾迪思特信息技术有限公司 一种一主多从模式嵌入式设备远程在线固件升级方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110515637A (zh) * 2019-07-12 2019-11-29 湖南新云网科技有限公司 一种程序升级方法、系统及终端设备
CN112130877A (zh) * 2020-09-08 2020-12-25 深圳市共进电子股份有限公司 路由器固件升级方法、装置、路由器和可读存储介质
CN114185576A (zh) * 2021-12-15 2022-03-15 深圳市有方科技股份有限公司 嵌入式设备升级方法、装置、计算机设备和存储介质
CN114866525A (zh) * 2022-05-19 2022-08-05 深圳市艾迪思特信息技术有限公司 一种一主多从模式嵌入式设备远程在线固件升级方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117032579A (zh) * 2023-08-21 2023-11-10 上海合芯数字科技有限公司 一种从机启动方法、装置及存储介质

Similar Documents

Publication Publication Date Title
US20170206079A1 (en) Method and Device for Upgrading Software
CN109144559B (zh) 一种更新数据包的推送方法及服务器
CN104461654A (zh) 一种obd设备功能单元及固件分类可选升级方法
WO2020000700A1 (zh) 一种无人机系统中的模块升级方法和无人机系统
CN116541047A (zh) 固件升级方法、装置、计算机设备及计算机可读存储介质
US20200193027A1 (en) Firmware upgrade method, slave station of robot, and machine readable storage medium
EP3291086A1 (en) Method and device for downloading software version, and storage medium
CN105760245A (zh) 一种存储数据的方法及装置
CN113672270A (zh) 升级方法,计算机系统和远端升级设备
CN102866900B (zh) 更新fpga控制单元的配置程序的方法及系统
CN109348434A (zh) 一种场景信息的发送方法、发送装置及终端设备
CN104461589A (zh) 单片机升级方法及升级系统
CN105607940A (zh) 一种arm平台中bdk向uefi bios传递信息的方法
CN103457748A (zh) 数据传输方法、系统和设备
CN109445973A (zh) 定位应用程序崩溃的方法及装置
CN110769411B (zh) 稳定实现终端设备的批量ota升级方法、装置、设备及系统
CN110308916B (zh) 基于lorawan协议的OTA升级方法、装置、设备、系统及存储介质
CN111045703A (zh) 一种电池管理单元软件升级方法及系统
CN114895933A (zh) 系统升级方法、网络设备、介质和电子设备
CN111708558B (zh) 一种高并发终端固件更新方法及更新系统
CN112135286A (zh) 一种基于蓝牙固件升级传输效率提升的方法及装置
CN113141267B (zh) 固件升级、信息处理方法、装置及设备
CN103685552A (zh) 一种小内存设备的软件升级方法
CN114442765A (zh) 计算机设备的风扇控制方法、基板管理控制器及存储介质
CN114328080A (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