WO2024007456A1 - 储能系统 - Google Patents

储能系统 Download PDF

Info

Publication number
WO2024007456A1
WO2024007456A1 PCT/CN2022/120877 CN2022120877W WO2024007456A1 WO 2024007456 A1 WO2024007456 A1 WO 2024007456A1 CN 2022120877 W CN2022120877 W CN 2022120877W WO 2024007456 A1 WO2024007456 A1 WO 2024007456A1
Authority
WO
WIPO (PCT)
Prior art keywords
controller
control software
upgrade
version number
data
Prior art date
Application number
PCT/CN2022/120877
Other languages
English (en)
French (fr)
Inventor
刘雄江
司修利
朱嵩华
孙丽艳
江思伟
王嘉玲
Original Assignee
沃太能源股份有限公司
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 沃太能源股份有限公司 filed Critical 沃太能源股份有限公司
Publication of WO2024007456A1 publication Critical patent/WO2024007456A1/zh

Links

Images

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
    • H01ELECTRIC ELEMENTS
    • H01MPROCESSES OR MEANS, e.g. BATTERIES, FOR THE DIRECT CONVERSION OF CHEMICAL ENERGY INTO ELECTRICAL ENERGY
    • H01M10/00Secondary cells; Manufacture thereof
    • H01M10/42Methods or arrangements for servicing or maintenance of secondary cells or secondary half-cells
    • H01M10/4207Methods or arrangements for servicing or maintenance of secondary cells or secondary half-cells for several batteries or cells simultaneously or sequentially
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01MPROCESSES OR MEANS, e.g. BATTERIES, FOR THE DIRECT CONVERSION OF CHEMICAL ENERGY INTO ELECTRICAL ENERGY
    • H01M10/00Secondary cells; Manufacture thereof
    • H01M10/42Methods or arrangements for servicing or maintenance of secondary cells or secondary half-cells
    • H01M10/425Structural combination with electronic components, e.g. electronic circuits integrated to the outside of the casing
    • H01M2010/4271Battery management systems including electronic circuits, e.g. control of current or voltage to keep battery in healthy state, cell balancing

Definitions

  • the present invention relates to the technical field of energy storage, and in particular to an energy storage system.
  • the energy storage system is equipped with multiple energy storage batteries, and each energy storage battery is equipped with a controller.
  • the controller can run a control software to control the energy storage battery. It can be understood that in practice, In the application, the control software may need to be upgraded.
  • the object of the present invention is to provide an energy storage system.
  • an embodiment of the present invention provides an energy storage system, including: M energy storage batteries and communication links.
  • Each energy storage battery is provided with a controller.
  • the controller The corresponding energy storage battery is controlled by executing the control software; all M controllers can perform data communication through the communication link; the control software corresponds to a version number, and the newer the control software, the higher the version number ; M is a natural number, M ⁇ 2; each controller is used to: obtain the first version number of the control software corresponding to this controller, and send the first version number to the remaining M-1 controllers based on the communication link version number, and receive the second version number sent by the remaining M-1 controllers; select the highest target version number from the first version number and M-1 second version numbers, and obtain the target corresponding to the target version number Controller; when the first version number of the control software corresponding to this controller is lower than the target version number, this controller is the controller to be upgraded; the controller to be upgraded is used to: send messages to the target through the
  • the "receiving upgrade data” specifically includes: receiving the upgrade data and verification data; the “upgrading the control software corresponding to the controller based on the upgrade data” specifically The method includes: based on the verification algorithm and verification data, when it is determined that the upgrade data passes the verification, upgrading the control software corresponding to the controller based on the upgrade data.
  • the check data is a CRC check code of the upgrade data
  • the check algorithm is a CRC check algorithm
  • the "generating the upgrade data of the control software between the version number corresponding to the controller to be upgraded and the target version number" specifically includes: generating the version number of the control software corresponding to the controller to be upgraded. and the difference data between the target version number.
  • the "sending an upgrade request instruction to the target controller through the communication link” specifically includes: sending an upgrade request instruction to the target controller through the communication link,
  • the upgrade request instruction includes the first control software corresponding to the controller to be upgraded;
  • the difference data between the target version number and the target version number specifically includes: receiving the corresponding first control software from the controller to be upgraded, obtaining the second control software corresponding to the target version number, and generating the second control software relative to the first control software.
  • the following steps are also included: when "the length of the data block D i ⁇ E i -B i +1", an alarm is issued and the upgrade is stopped.
  • the "sending the first version number to the remaining M-1 controllers based on the communication link, and receiving the second version number sent by the remaining M-1 controllers” Specifically includes: sending the first version number and the serial number of the energy storage battery corresponding to this controller to the remaining M-1 controllers based on the communication link, and receiving the first version number sent by the remaining M-1 controllers.
  • Two version numbers and serial numbers; the "obtaining the target controller corresponding to the target version number” specifically includes: when the target version number corresponds to multiple controllers, selecting the one with the highest serial number from the multiple controllers as the target controller.
  • the communication link is a CAN communication link.
  • the "upgrading the control software corresponding to this controller based on the upgrade data" specifically includes: copying the third control software corresponding to this controller to be upgraded to the backup area, Based on the upgrade data, the control software in the backup area is upgraded to the upgraded fourth control software; during restart, the fourth control software overwrites the third control software.
  • the "sending an upgrade request instruction to the target controller through the communication link” specifically includes: after receiving the upgrade instruction sent by the target controller, sending an upgrade request instruction through the communication link. Send an upgrade request instruction to the target controller.
  • the present invention provides an energy storage system, which includes: multiple energy storage batteries and communication links.
  • Each energy storage battery is provided with a controller corresponding to the controller.
  • the control software in each controller can be upgraded simply and conveniently.
  • Figure 1 is a structural diagram of an energy storage system in an embodiment of the present invention.
  • Embodiment 1 of the present invention provides an energy storage system, as shown in Figure 1, including:
  • Each energy storage battery 1 is provided with a controller 2.
  • the controller 2 controls the corresponding energy storage battery 1 by executing control software; M controls Both devices 2 can perform data communication through the communication link 3; the control software corresponds to a version number, and the newer the control software, the higher the version number; M is a natural number, M ⁇ 2; here, the energy storage battery 1 may contain multiple cells, which are connected in series or in parallel to form the energy storage battery 1.
  • the energy storage battery 1 may be a nickel metal hydride battery, a nickel cadmium battery, a lithium battery, etc.
  • the controller 2 may be Single chip microcomputer, etc., the communication link can be Ethernet, optical fiber network, CAN (Controller Area Network), etc.; the controller 2 charges, discharges, and discharges the corresponding energy storage battery 1 by executing the control software. Controls such as access to the energy storage system or bypass from the energy storage system.
  • Each controller 2 is usually provided with a storage device, and the control software is stored in the storage device.
  • control software may include executable software parts, configuration information, etc.
  • Each controller 2 is used to: obtain the first version number of the control software corresponding to this controller, send the first version number to the remaining M-1 controllers 2 based on the communication link, and receive the remaining M -1 second version number sent by controller 2; select the highest target version number from the first version number and M-1 second version numbers, and obtain the target controller corresponding to the target version number; when this control When the first version number of the control software corresponding to the controller is lower than the target version number, this controller is the controller to be upgraded; in practice, when a controller 2 is running, then the controller 2 is the "this controller" device".
  • each controller 2 since each controller 2 will send its version number to the other M-1 controllers 2, each controller 2 can receive the version number sent by the other M-1 controllers 2.
  • Each control software has a corresponding version number, and the newer the control software, the higher the version number.
  • the version number has a fixed format, for example, V1.0, V1.1, V1.2, V1.21, etc. Therefore, based on the predetermined format, the version number can be compared. For example, V1.0 ⁇ V1.1 ⁇ V1.2 ⁇ V1.21.
  • M controllers 2 can all communicate data through the communication link 3, and each controller 2 has a unique communication address. Therefore, after receiving the version number sent by a certain controller 2, it can also After obtaining the communication address of the controller 2, a corresponding relationship can be established between the version number and the communication address, that is, the communication address is used to mark the controller 2. In addition, a unique identifier can also be set for each controller 2. When this controller sends version numbers to the other M-1 controllers 2, the identifier of this controller will also be sent at the same time. Therefore, Each controller 2 can establish a corresponding relationship between the version number and the identifier. In addition, as long as the identifier of a certain controller 2 is known, data can be sent to the controller 2 based on the identifier.
  • the number of controllers 2 corresponding to the target version number may be multiple, and one of them may be selected as the target controller.
  • the controller to be upgraded is configured to: send an upgrade request instruction to the target controller through the communication link 3, and when receiving the upgrade data, upgrade the corresponding control software based on the upgrade data; when the third
  • the version number is lower than the target version number, it means that the control software corresponding to this controller is older than the control software of the target controller. Therefore, it can be upgraded, that is, downloading the latest upgrade from the target controller. data to upgrade the local older control software.
  • the target controller is configured to: receive an upgrade request instruction from the controller to be upgraded through the communication link 3, and generate upgrade data of the control software between the version number corresponding to the controller to be upgraded and the target version number, and pass The communication link 3 sends the upgrade data to the controller to be upgraded.
  • the upgrade process can be actively initiated by the target controller or the controller to be upgraded, that is: 1.
  • the target controller actively initiates the upgrade process, and the target controller can initiate the upgrade process according to the The status of the energy storage system determines whether to initiate the upgrade process. For example: if the energy storage system is working, it is not recommended to initiate the upgrade process. If it is idle, it is recommended to initiate the upgrade process; if it is decided to initiate the upgrade process, then the target controller can send an upgrade instruction to the remaining M-controllers 2.
  • the upgrade instruction at least includes the target version number. Therefore, when a controller 2 determines that it is the controller to be upgraded, the target controller 2 starts the upgrade instruction. Upgrade process; 2. When a controller 2 determines that it is the controller to be upgraded, it will automatically establish a data transmission channel with the target controller and start the upgrade process.
  • the target software needs to be backed up. For example: it is necessary to set up a backup area in the storage device. First, copy the control software to the backup area. Then, the operation "upgrade the corresponding control software based on the upgrade data" specifically includes: based on the upgrade data, The control software in the backup area is upgraded to the control software corresponding to the target version number; then the controller is restarted, and after restarting, the control software in the backup area is executed, and then the control software in the backup area is used to overwrite the original control software.
  • the controller to be upgraded also performs the following operations: after receiving the restart command sent by the target controller, restarts, and then executes the upgraded control software.
  • the upgrade data may be: the complete software data corresponding to the target version number, or the difference data between the first version number and the target version number of the control software.
  • the difference between the control software before the upgrade and the control software after the upgrade can be stored.
  • the target controller upgrades its control software, it will also store the control software before the upgrade.
  • the difference between the control software and the upgraded control software Therefore, if there is a data difference between the first version number and the target version number in the target controller, it can be sent directly to this controller.
  • the "receiving upgrade data” specifically includes: receiving the upgrade data and verification data; the “upgrading the corresponding control software based on the upgrade data” specifically includes: based on the verification algorithm and Verify the data.
  • the corresponding control software is upgraded based on the upgrade data.
  • the upgrade data is transmitted on the communication link 3, data errors may occur. Therefore, verification data needs to be set to ensure the correctness and integrity of the upgrade data.
  • the check data is a CRC (Cyclic Redundancy Check) check code of the upgrade data
  • the check algorithm is a CRC check algorithm
  • the "generating the upgrade data of the control software between the version number corresponding to the controller to be upgraded and the target version number" specifically includes: generating the control software between the version number corresponding to the controller to be upgraded and the target version number. difference data between.
  • the target controller when the target controller receives the control software corresponding to the first version number, it can learn which parts of the control software have been modified between the first version number and the target version number, so that it is possible to first The difference data between the target version number and the first version number is calculated and then sent to the controller.
  • the "sending an upgrade request instruction to the target controller through the communication link 3" specifically includes: sending an upgrade request instruction to the target controller through the communication link 3.
  • the upgrade The request instruction includes the first control software corresponding to the controller to be upgraded; here, the first control software may be the entire control software or part of the control software. For example, executable software parts or configuration information, etc.
  • the "receive the upgrade request instruction from the controller to be upgraded through the communication link 3, and generate the difference data between the version number of the control software corresponding to the controller to be upgraded and the target version number” specifically includes: from the controller to be upgraded
  • the above upgrade data contains N triples C i ;
  • the second control software is compared with the first control software, so that improvement data of the second control software relative to the first control software can be obtained.
  • the following comparison methods can be used:
  • the second control software and the first control software can be compared bit by bit or bit by bit, so that several improved data blocks D can be obtained; here, when the length of the second control software ⁇ the length of the first control software , that is, at the end of the first control software, if some part needs to be cut off, it needs to contain a triplet C.
  • the content of the data block is empty or the character "NULL", etc., that is, the triplet Part of the data from the start address to the end address in group C needs to be truncated; when the length of the second control software > the length of the first control software, that is, part of the data needs to be added to the end of the first control software, it needs to include a three Tuple C.
  • the content of the data block is the data that needs to be added, that is, the starting address in triplet C is the end address of the first control software + 1;
  • control software usually contains multiple files. Some files are executable binary files, and some files are character files. Therefore, when comparing the second control software with the first control software, these files can be extracted first. , and then compare file by file; optionally, if it is a binary file, when there are differences between the two binary files, the newer binary file in the second control software can be sent back using triples; and if is a character file.
  • the two character files can be compared character by character, so that several improved data blocks D can be obtained; here, when the length of the new character file ⁇ the length of the old character file, that is, the length of the old character file At the end, if some characters need to be truncated, a triplet C needs to be included.
  • the content of the data block is empty or the character "NULL", etc., that is, the start of the triplet C Part of the data from the address to the end address needs to be truncated; when the length of the new character file > the length of the old character file, that is, some characters need to be added to the end of the old character file, a triplet C needs to be included.
  • the content of the data block is the string that needs to be added, that is, the starting address in triplet C is the end address of the old character file + 1.
  • the "sending the first version number to the remaining M-1 controllers 2 based on the communication link, and receiving the second version number sent by the remaining M-1 controllers 2" specifically includes : Based on the communication link, send the first version number and the serial number of the energy storage battery 1 corresponding to this controller to the remaining M-1 controllers 2, and receive the first version number sent by the remaining M-1 controllers 2.
  • Two version numbers and serial numbers; the "obtaining the target controller corresponding to the target version number” specifically includes: when the target version number corresponds to multiple controllers 2, select the one with the highest serial number from the multiple controllers 2 as a target controller.
  • the communication link 3 is a CAN (Controller Area Network) communication link 3.
  • the "upgrade the corresponding control software based on the upgrade data" specifically includes: copying the third control software to be upgraded corresponding to the controller to the backup area, and based on the upgrade data, The control software in the backup area is upgraded to the upgraded fourth control software; when restarting, the fourth control software overwrites the third control software.
  • sending an upgrade request instruction to the target controller through the communication link 3 specifically includes: after receiving the upgrade instruction sent by the target controller, sending an upgrade request instruction to the target controller through the communication link 3.
  • the target controller sends an upgrade request command.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Manufacturing & Machinery (AREA)
  • Chemical & Material Sciences (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Electrochemistry (AREA)
  • General Chemical & Material Sciences (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种储能系统,包括:多个储能电池和通讯链路,每个储能电池均对应设置有一个控制器,控制器通过执行控制软件从而对对应的储能电池进行控制;在执行时,每个控制器均向其余控制器发送其控制软件的版本号,并选择最高版本号对应的控制器为目标控制器,其余的控制器全部从目标控制器获取控制软件的升级数据,并完成控制软件的升级。综上所述,可以简单方便的对每个控制器中的控制软件进行升级。

Description

储能系统
本申请要求了申请日为2022年07月08日,申请号为202210815498.1,发明名称为“储能系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明涉及储能技术领域,尤其涉及一种储能系统。
背景技术
随着新能源汽车的普及,以及“碳中和”,“碳达峰”等目标的提出,整个社会的能源结构在向电能转变,其中,新能源汽车中需要设置有储能系统,在光伏发电、风力发电中,也会需要设置有储能系统。
该储能系统中设置有多个储能电池,每个储能电池中都设置有一个控制器,该控制器能够运行一个控制软件从而对该储能电池进行控制,可以理解的是,在实际应用中,有可能需要对该控制软件进行升级。
因此,如何简单方便的对每个控制器中的控制软件进行升级,就成为一个亟待解决的问题。
发明内容
本发明的目的在于提供一种储能系统。
为了实现上述发明目的之一,本发明一实施方式提供了一种储能系统,包括:M个储能电池和通讯链路,每个储能电池均对应设置有一个控制器,所述控制器通过执行控制软件从而对对应的储能电池进行控制;M个控制器均能够通过所述通讯链路进行数据通信;所述控制软件对应有版本号,且控制软件越新,则版本号越高;M为自然数,M≥2;每个控制器均用于:获取本控制器对应的控制软件的第一版本号,并基于所述通信链路向其余M-1个控制器都发送第一版本号,并接收其余M-1个控制器所发送的第二版本号;从第一版本号和M-1个第二版本号中选择最高的目标版本号,并获取目标版本号对应的目标控制器;当本控制器对应的控制软件的第一版本号低于目标版本号时,本控制器为待升级控制器;所述待升级控制器用于:通过所述通讯链路向所述目标控制器发送升级请求指令,且在接收到升级数据时,基于所述升级数据,对本控制器对应的控制软件进行升级;所述目标控制器用于:通过所述通讯链路从待升级控制器接收到升级请求指令,并生成控制软件在待升级控制器对应的版本号和目标版本号之间的升级数据,并通过所述通讯链路将升级数据发送给待升级控制器。
作为本发明一实施方式的进一步改进,所述“接收到升级数据”具体包括:接收到升级数据 和校验数据;所述“基于所述升级数据,对本控制器对应的控制软件进行升级”具体包括:基于校验算法和校验数据,确定所述升级数据通过校验时,基于所述升级数据对本控制器对应的控制软件进行升级。
作为本发明一实施方式的进一步改进,所述校验数据为所述升级数据的CRC校验码,所述校验算法为CRC校验算法。
作为本发明一实施方式的进一步改进,所述“生成控制软件在待升级控制器对应的版本号和目标版本号之间的升级数据”具体包括:生成控制软件在待升级控制器对应的版本号和目标版本号之间的差异数据。
作为本发明一实施方式的进一步改进,所述“通过所述通讯链路向所述目标控制器发送升级请求指令”具体包括:通过所述通讯链路向所述目标控制器发送升级请求指令,所述升级请求指令包含有待升级控制器对应的第一控制软件;所述“通过所述通讯链路从待升级控制器接收到升级请求指令,并生成控制软件在待升级控制器对应的版本号和目标版本号之间的差异数据”具体包括:从待升级控制器接收其对应的第一控制软件,获取目标版本号对应的第二控制软件,生成第二控制软件相对于第一控制软件的若干改进的数据块D,从而得到N个三元组C i[数据块D i的起始地址B i,数据块D i的结束地址E i,数据块D i],所述升级数据包含有N个三元组C i;所述“基于所述升级数据,对本控制器对应的控制软件进行升级”具体包括:对每个三元组C i[数据块D i的起始地址B i,数据块D i的结束地址E i,数据块D i]均执行以下操作:当数据块D i为空时,将本控制器对应的控制软件中的在地址B i至E i的数据清空;当数据块D i不为空且“数据块D i的长度=E i-B i+1”时,将本控制器对应的控制软件中的在地址B i至E i的数据替换为据块D i
作为本发明一实施方式的进一步改进,还包括以下步骤:当“数据块D i的长度≠E i-B i+1”时,发出报警,停止升级。
作为本发明一实施方式的进一步改进,所述“基于所述通信链路向其余M-1个控制器都发送第一版本号,并接收其余M-1个控制器所发送的第二版本号”具体包括:基于所述通信链路向其余M-1个控制器都发送第一版本号和本控制器对应的储能电池的序列号,并接收其余M-1个控制器所发送的第二版本号和序列号;所述“获取目标版本号对应的目标控制器”具体包括:当目标版本号对应多个控制器时,从所述多个控制器中、选择序列号最高的作为目标控制器。
作为本发明一实施方式的进一步改进,所述通讯链路为CAN通讯链路。
作为本发明一实施方式的进一步改进,所述“基于所述升级数据,对本控制器对应的控制软件进行升级”具体包括:将本控制器对应的待升级的第三控制软件拷贝至备份区,基于所述升级数据,将备份区中的控制软件升级为升级之后的第四控制软件;在重启时,将第四控制软件覆盖 第三控制软件。
作为本发明一实施方式的进一步改进,所述“通过所述通讯链路向所述目标控制器发送升级请求指令”具体包括:在接收到目标控制器发送的升级指令之后,通过所述通讯链路向所述目标控制器发送升级请求指令。
相对于现有技术,本发明的技术效果在于:本发明提供一种储能系统,包括:多个储能电池和通讯链路,每个储能电池均对应设置有一个控制器,控制器通过执行控制软件从而对对应的储能电池进行控制;在执行时,每个控制器均向其余控制器发送其控制软件的版本号,并选择最高版本号对应的控制器为目标控制器,其余的控制器全部从目标控制器获取控制软件的升级数据,并完成控制软件的升级。综上所述,可以简单方便的对每个控制器中的控制软件进行升级。
附图说明
图1是本发明实施例中的储能系统的结构图。
具体实施方式
以下将结合附图所示的各实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
本文使用的例如“上”、“上方”、“下”、“下方”等表示空间相对位置的术语是出于便于说明的目的来描述如附图中所示的一个单元或特征相对于另一个单元或特征的关系。空间相对位置的术语可以旨在包括设备在使用或工作中除了图中所示方位以外的不同方位。例如,如果将图中的设备翻转,则被描述为位于其他单元或特征“下方”或“之下”的单元将位于其他单元或特征“上方”。因此,示例性术语“下方”可以囊括上方和下方这两种方位。设备可以以其他方式被定向(旋转90度或其他朝向),并相应地解释本文使用的与空间相关的描述语。
本发明实施例一提供了一种储能系统,如图1所示,包括:
M个储能电池1和通讯链路3,每个储能电池1均对应设置有一个控制器2,所述控制器2通过执行控制软件从而对对应的储能电池1进行控制;M个控制器2均能够通过所述通讯链路3进行数据通信;所述控制软件对应有版本号,且控制软件越新,则版本号越高;M为自然数,M≥2;这里,该储能电池1中可以包含有多个电芯,这些电芯串联或并联从而构成了该储能电池1,该储能电池1可以为镍氢电池、镍镉电池和锂电池等,该控制器2可以为单片机等,该通信链路可以为以太网,光纤网络,CAN(Controller Area Network,控制器域网)等;所述控制器2通过执行控制软件从而对对应的储能电池1进行充电、放电、接入该储能系统中或从该储能系 统中旁路等控制。每个控制器2中通常会设置有一个存储装置,在该存储装置中存储有该控制软件。
这里,该控制软件可以包含有可执行软件部分,配置信息等。
每个控制器2均用于:获取本控制器对应的控制软件的第一版本号,并基于所述通信链路向其余M-1个控制器2都发送第一版本号,并接收其余M-1个控制器2所发送的第二版本号;从第一版本号和M-1个第二版本号中选择最高的目标版本号,并获取目标版本号对应的目标控制器;当本控制器对应的控制软件的第一版本号低于目标版本号时,本控制器为待升级控制器;在实际中,当某个控制器2在运行时,则该控制器2即为“本控制器”。
这里,由于每个控制器2均会向其余M-1个控制器2发送其版本号,因此,每个控制器2均能够接收到其余M-1个控制器2所发送的版本号,每个控制软件都对应有版本号,且控制软件越新,则版本号越高。此外,该版本号具有一个固定的格式,例如,V1.0,V1.1,V1.2,V1.21等,因此,基于预定的格式,就可以对版本号比较高低。例如,V1.0<V1.1<V1.2<V1.21。
M个控制器2都能够通过所述通讯链路3进行数据通信,则每个控制器2都具有唯一的通信地址,因此,当接收到某个控制器2所发送的版本号之后,还可以得到该控制器2的通信地址,于是,就可以在该版本号与通信地址之间建立对应关系,即使用通信地址来标记该控制器2。此外,还可以为每个控制器2都设置一个唯一的标识符,在本控制器向其余M-1个控制器2都发送版本号时,也会同时发送本控制器的标识符,于是,每个控制器2就可以在版本号与标识符之间建立对应关系,此外,只要获知某个控制器2的标识符,就可以基于该标识符向该控制器2发送数据。
这里,当多个控制器2对应的控制软件的版本号一样,且都是最高的,则目标版本号对应的控制器2的数量可能为多个,则可以从中选择出一个作为目标控制器。
所述待升级控制器用于:通过所述通讯链路3向所述目标控制器发送升级请求指令,且在接收到升级数据时,基于所述升级数据,将对应的控制软件进行升级;当第一版本号低于目标版本号时,则表明本控制器对应的控制软件相对于目标控制器的控制软件是比较旧的,因此,就可以进行升级了,即从目标控制器中下载最新的升级数据,来对本地的较旧的控制软件进行升级。
所述目标控制器用于:通过所述通讯链路3从待升级控制器接收到升级请求指令,并生成控制软件在待升级控制器对应的版本号和目标版本号之间的升级数据,并通过所述通讯链路3将升级数据发送给待升级控制器。
这里,在该储能系统中,该升级过程可以由目标控制器主动发起、还可以由待升级控制器主动发起,即:1、由目标控制器主动发起该升级过程,目标控制器可以根据该储能系统的状况来 决定是否发起该升级过程,比如:如果该储能系统时处于工作中,则不建议发起该升级过程,如果处于空闲中,则建议发起该升级过程;如果决定发起该升级过程,则该目标控制器可以向其余的M-个控制器2都发送升级指令,该升级指令至少包括目标版本号,于是,当某个控制器2确定其为待升级控制器时,开启该升级过程;2、当某个控制器2确定其为待升级控制器时,会自动与目标控制器建立起数据传输通道,并开启该升级过程。
综上所述,在储能系统中,只要一个储能电池1的控制软件升级了,其余的储能电池1会主动的进行升级,非常的简单方便。
这里,可以理解的是,在执行该升级操作时,不能百分之百的确保控制软件的升级一定成功,因此,在对控制软件进行升级之前,需要将该目标软件进行备份。例如:在存储装置中需要设置一个备份区,首先将该控制软件拷贝到备份区,然后,操作“基于所述升级数据,将对应的控制软件进行升级”具体包括:基于所述升级数据,将备份区中的控制软件升级为所述目标版本号对应的控制软件;然后本控制器重启,再重启之后,执行备份区中的控制软件,然后,使用备份区中的控制软件来覆盖原先的控制软件。
可选的,该待升级控制器还执行以下操作:在接收到目标控制器发送的重启指令之后,重启,然后执行升级后的控制软件。
这里,升级数据可以为:目标版本号所对应的完整软件数据,或者,该控制软件在第一版本号与目标版本号之间的差异数据。
这里,在每个控制器2进行升级的过程中,可以存储有升级前的控制软件和升级后的控制软件之间的差异,目标控制器在升级其控制软件的时候,也会存储升级前的控制软件和升级后的控制软件之间的差异,因此,如果目标控制器存在第一版本号和目标版本号之间的数据差异,可以直接发给本控制器。
本实施例中,所述“接收到升级数据”具体包括:接收到升级数据和校验数据;所述“基于所述升级数据,将对应的控制软件进行升级”具体包括:基于校验算法和校验数据,确定所述升级数据通过校验时,基于所述升级数据将对应的控制软件进行升级。这里,在该通讯链路3上传输升级数据的时候,有可能会发生数据错误,因此,需要设置有校验数据,从而确保升级数据的正确性和完整性。
本实施例中,所述校验数据为所述升级数据的CRC(Cyclic Redundancy Check,循环冗余校验)校验码,所述校验算法为CRC校验算法
本实施例中,所述“生成控制软件在待升级控制器对应的版本号和目标版本号之间的升级数据”具体包括:生成控制软件在待升级控制器对应的版本号和目标版本号之间的差异数据。
这里,当目标控制器接收到第一版本号对应的控制软件之后,就可以获知在第一版本号和目标版本号之间,该控制软件到底在哪些部分被修改了,从而就有可能先将目标版本号和第一版本号之间的差异数据给计算出来,然后再发送给本控制器。
本实施例中,所述“通过所述通讯链路3向所述目标控制器发送升级请求指令”具体包括:通过所述通讯链路3向所述目标控制器发送升级请求指令,所述升级请求指令包含有待升级控制器对应的第一控制软件;这里,第一控制软件可以为该控制软件的全部,也可以为该控制软件的部分。例如,可执行软件部分或配置信息等。
所述“通过所述通讯链路3从待升级控制器接收到升级请求指令,并生成控制软件在待升级控制器对应的版本号和目标版本号之间的差异数据”具体包括:从待升级控制器接收其对应的第一控制软件,获取目标版本号对应的第二控制软件,生成第二控制软件相对于第一控制软件的若干改进的数据块D,从而得到N个三元组C i[数据块D i的起始地址B i,数据块D i的结束地址E i,数据块D i],其中,N和i均为自然数,i=1,2,...,N,所述升级数据包含有N个三元组C i
这里,将第二控制软件和第一控制软件进行比较,从而就可以得到第二控制软件相对于第一控制软件之间的改进数据。可以使用以下比较方法:
方法一、可以将第二控制软件和第一控制软件进行逐位或逐比特的比较,从而就可以得到若干改进的数据块D;这里,当第二控制软件的长度<第一控制软件的长度,即第一控制软件的末尾,有部分需要被截掉,则需要包含有一个三元组C,在该三元组C中,数据块的内容为空或字符“NULL”等,即三元组C中的起始地址至结束地址的部分数据需要截掉;当第二控制软件的长度>第一控制软件的长度,即第一控制软件的末尾需要增加部分数据,则需要包含有一个三元组C,在该三元组C中,数据块的内容为需要增加的数据,即三元组C中的起始地址为第一控制软件的末尾的地址+1;
在实际中,控制软件通常都会包含有多个文件,有些文件是可执行的二进制文件,有些文件是字符文件,因此,第二控制软件和第一控制软件进行比较时,可以首先提取出这些文件,然后进行比较逐文件进行比较;可选的,如果是二进制文件,则当两个二进制文件存在差异时,可以将第二控制软件中的较新的二进制文件利用三元组发回;而如果是字符文件,可以将两个字符文件进行逐字符的比较,从而就可以得到若干改进的数据块D;这里,当新的字符文件的长度<旧的字符文件的长度,即旧的字符文件的末尾,有部分字符需要被截掉,则需要包含有一个三元组C,在该三元组C中,数据块的内容为空或字符“NULL”等,即三元组C中的起始地址至结束地址的部分数据需要截掉;当新的字符文件的长度>旧的字符文件的长度,即旧的字符文件的末尾需要增加部分字符,则需要包含有一个三元组C,在该三元组C中,数据块的内容为需要增加的 字符串,即三元组C中的起始地址为旧的字符文件的末尾的地址+1。
所述“基于所述升级数据,将对应的控制软件进行升级”具体包括:对每个三元组C i[数据块D i的起始地址B i,数据块D i的结束地址E i,数据块D i]均执行以下操作:当数据块D i为空时,将本控制器对应的控制软件中的在地址B i至E i的数据清空;当数据块D i不为空且“数据块D i的长度=E i-B i+1”时,将本控制器对应的控制软件中的在地址B i至E i的数据替换为据块D i
本实施例中,还包括以下步骤:当“数据块D i的长度≠E i-B i+1”时,发出报警,停止升级。
本实施例中,所述“基于所述通信链路向其余M-1个控制器2都发送第一版本号,并接收其余M-1个控制器2所发送的第二版本号”具体包括:基于所述通信链路向其余M-1个控制器2都发送第一版本号和本控制器对应的储能电池1的序列号,并接收其余M-1个控制器2所发送的第二版本号和序列号;所述“获取目标版本号对应的目标控制器”具体包括:当目标版本号对应多个控制器2时,从所述多个控制器2中、选择序列号最高的作为目标控制器。
本实施例中,所述通讯链路3为CAN(Controller Area Network,控制器局域网络)通讯链路3。
本实施例中,所述“基于所述升级数据,将对应的控制软件进行升级”具体包括:将本控制器对应的待升级的第三控制软件拷贝至备份区,基于所述升级数据,将备份区中的控制软件升级为升级之后的第四控制软件;在重启时,将第四控制软件覆盖第三控制软件。
本实施例中,所述“通过所述通讯链路3向所述目标控制器发送升级请求指令”具体包括:在接收到目标控制器发送的升级指令之后,通过所述通讯链路3向所述目标控制器发送升级请求指令。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。

Claims (10)

  1. 一种储能系统,其特征在于,包括:
    M个储能电池(1)和通讯链路(3),每个储能电池(1)均对应设置有一个控制器(2),所述控制器(2)通过执行控制软件从而对对应的储能电池(1)进行控制;M个控制器(2)均能够通过所述通讯链路(3)进行数据通信;所述控制软件对应有版本号,且控制软件越新,则版本号越高;M为自然数,M≥2;
    每个控制器(2)均用于:获取本控制器对应的控制软件的第一版本号,并基于所述通信链路向其余M-1个控制器(2)都发送第一版本号,并接收其余M-1个控制器(2)所发送的第二版本号;从第一版本号和M-1个第二版本号中选择最高的目标版本号,并获取目标版本号对应的目标控制器;当本控制器对应的控制软件的第一版本号低于目标版本号时,本控制器为待升级控制器;
    所述待升级控制器用于:通过所述通讯链路(3)向所述目标控制器发送升级请求指令,且在接收到升级数据时,基于所述升级数据,将对应的控制软件进行升级;
    所述目标控制器用于:通过所述通讯链路(3)从待升级控制器接收到升级请求指令,并生成控制软件在待升级控制器对应的版本号和目标版本号之间的升级数据,并通过所述通讯链路(3)将升级数据发送给待升级控制器。
  2. 根据权利要求1所述的储能系统,其特征在于,
    所述“接收到升级数据”具体包括:接收到升级数据和校验数据;
    所述“基于所述升级数据,将对应的控制软件进行升级”具体包括:基于校验算法和校验数据,确定所述升级数据通过校验时,基于所述升级数据将对应的控制软件进行升级。
  3. 根据权利要求2所述的储能系统,其特征在于,
    所述校验数据为所述升级数据的CRC校验码,所述校验算法为CRC校验算法。
  4. 根据权利要求1所述的储能系统,其特征在于,
    所述“生成控制软件在待升级控制器对应的版本号和目标版本号之间的升级数据”具体包括:生成控制软件在待升级控制器对应的版本号和目标版本号之间的差异数据。
  5. 根据权利要求4所述的储能系统,其特征在于,
    所述“通过所述通讯链路(3)向所述目标控制器发送升级请求指令”具体包括:
    通过所述通讯链路(3)向所述目标控制器发送升级请求指令,所述升级请求指令包含有待升级控制器对应的第一控制软件;
    所述“通过所述通讯链路(3)从待升级控制器接收到升级请求指令,并生成控制软件在待升级控制器对应的版本号和目标版本号之间的差异数据”具体包括:从待升级控制器接收其对应的第一控制软件,获取目标版本号对应的第二控制软件,生成第二控制软件相对于第一控制软件的若干改进的数据块D,从而得到N个三元组C i[数据块D i的起始地址B i,数据块D i的结束地址E i,数据块D i],其中,N和i均为自然数,i=1,2,...,N,所述升级数据包含有N个三元组C i
    所述“基于所述升级数据,将对应的控制软件进行升级”具体包括:对每个三元组C i[数据块D i的起始地址B i,数据块D i的结束地址E i,数据块D i]均执行以下操作:当数据块D i为空时,将本控制器对应的控制软件中的在地址B i至E i的数据清空;当数据块D i不为空且“数据块D i的长度=E i-B i+1”时,将本控制器对应的控制软件中的在地址B i至E i的数据替换为据块D i
  6. 根据权利要求5所述的储能系统,其特征在于,还包括以下步骤:
    当“数据块D i的长度≠E i-B i+1”时,发出报警,停止升级。
  7. 根据权利要求1所述的储能系统,其特征在于,
    所述“基于所述通信链路向其余M-1个控制器(2)都发送第一版本号,并接收其余M-1个控制器(2)所发送的第二版本号”具体包括:基于所述通信链路向其余M-1个控制器(2)都发送第一版本号和本控制器对应的储能电池(1)的序列号,并接收其余M-1个控制器(2)所发送的第二版本号和序列号;
    所述“获取目标版本号对应的目标控制器”具体包括:
    当目标版本号对应多个控制器(2)时,从所述多个控制器(2)中、选择序列号最高的作为目标控制器。
  8. 根据权利要求1所述的储能系统,其特征在于:
    所述通讯链路(3)为CAN通讯链路(3)。
  9. 根据权利要求1所述的储能系统,其特征在于,
    所述“基于所述升级数据,将对应的控制软件进行升级”具体包括:将本控制器对应的待升级的第三控制软件拷贝至备份区,基于所述升级数据,将备份区中的控制软件升级为升级之后的第四控制软件;在重启时,将第四控制软件覆盖第三控制软件。
  10. 根据权利要求1所述的储能系统,其特征在于,
    所述“通过所述通讯链路(3)向所述目标控制器发送升级请求指令”具体包括:在接收到目标控制器发送的升级指令之后,通过所述通讯链路(3)向所述目标控制器发送升级请求指令。
PCT/CN2022/120877 2022-07-08 2022-09-23 储能系统 WO2024007456A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210815498.1 2022-07-08
CN202210815498.1A CN115220763A (zh) 2022-07-08 2022-07-08 储能系统

Publications (1)

Publication Number Publication Date
WO2024007456A1 true WO2024007456A1 (zh) 2024-01-11

Family

ID=83612001

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/120877 WO2024007456A1 (zh) 2022-07-08 2022-09-23 储能系统

Country Status (2)

Country Link
CN (1) CN115220763A (zh)
WO (1) WO2024007456A1 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150288556A1 (en) * 2014-04-07 2015-10-08 International Business Machines Corporation Controller maintenance in a network-attached storage system
CN106254496A (zh) * 2016-08-19 2016-12-21 江苏天合储能有限公司 户用光伏储能设备的远程升级系统及其方法
CN109857435A (zh) * 2019-01-16 2019-06-07 浙江天地人科技有限公司 一种线下设备间扩散式软件升级方法
CN110532011A (zh) * 2019-09-02 2019-12-03 珠海格力电器股份有限公司 数据转换器版本升级方法、装置及数据通信系统
CN112506538A (zh) * 2020-11-25 2021-03-16 珠海格力电器股份有限公司 一种版本升级方法、装置和空调系统
CN114115976A (zh) * 2021-10-25 2022-03-01 广汽埃安新能源汽车有限公司 一种车载控制器软件版本校验方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150288556A1 (en) * 2014-04-07 2015-10-08 International Business Machines Corporation Controller maintenance in a network-attached storage system
CN106254496A (zh) * 2016-08-19 2016-12-21 江苏天合储能有限公司 户用光伏储能设备的远程升级系统及其方法
CN109857435A (zh) * 2019-01-16 2019-06-07 浙江天地人科技有限公司 一种线下设备间扩散式软件升级方法
CN110532011A (zh) * 2019-09-02 2019-12-03 珠海格力电器股份有限公司 数据转换器版本升级方法、装置及数据通信系统
CN112506538A (zh) * 2020-11-25 2021-03-16 珠海格力电器股份有限公司 一种版本升级方法、装置和空调系统
CN114115976A (zh) * 2021-10-25 2022-03-01 广汽埃安新能源汽车有限公司 一种车载控制器软件版本校验方法及系统

Also Published As

Publication number Publication date
CN115220763A (zh) 2022-10-21

Similar Documents

Publication Publication Date Title
ES2371995T3 (es) Actualización del firmware de un dispositivo electrónico.
WO2021083244A1 (zh) 一种mesh网络设备的多设备批量固件升级的方法
CN105183515A (zh) 云台固件升级的方法及装置
CN100525206C (zh) 自动恢复设备故障的实现方法及系统
JP2006216047A (ja) ファームウェアコンポーネントのステータスの発行およびファームウェアコンポーネントのアップデート
CN104899116B (zh) 数据备份的方法、源服务器、目标服务器及系统
CN109062598A (zh) 一种安全的ota升级方法及系统
US20240070026A1 (en) Method For Remote Upgrade and Rollback of Unmanned Aerial Vehicle (UAV) Software
CN111182033B (zh) 一种交换机还原的方法和设备
WO2011088701A1 (zh) 一种跨平台版本在线升级的方法及装置
CN107566169A (zh) 一种基于openwrt的固件升级方法及路由器
CN113905039A (zh) 系统升级文件传输方法、装置及系统
EP3809259B1 (en) Network node firmware update
WO2024007456A1 (zh) 储能系统
CN109597639B (zh) 一种软件升级方法、装置、设备及介质
CN107436778A (zh) 一种无人系统的高可靠性升级方法
EP4075309A1 (en) Secure boot device
JP2000315157A (ja) プログラム更新/回復方法
CN115357336A (zh) 容器组的在线扩容方法、装置、终端设备与介质
CN113885907A (zh) 一种固件升级系统及方法
KR102384966B1 (ko) 충전기 메모리의 이원화를 통한 전기자동차 충전기 고속 부팅 및 업그레이드 방법
JPH11353187A (ja) リモートインストールのエラー処理方式
GB2432020A (en) Update package format and method for grouping and sequencing update payloads
CN116088913B (zh) 整车升级软件的集成设备、方法和计算机程序产品
CN115437674B (zh) 一种固件升级方法、装置、介质及电子设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22950017

Country of ref document: EP

Kind code of ref document: A1