Battery management device and method for operating battery management device
The battery management device ensures compatible BMS software operation by reading and comparing setting values, preventing malfunctions and ensuring safety and efficiency in battery packs and energy storage systems.
Patent Information
- Application Number
- PCT/KR2025/001798
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-28
- Filing Date
- 2025-02-07
- Publication Date
- 2025-12-04
AI Technical Summary
Battery management systems (BMS) can malfunction if BMS configuration information is not defined or does not correspond to the current software version, leading to safety and operational inefficiencies in battery packs and energy storage systems.
A battery management device and method that includes a processor and memory to read, compare, and determine the compatibility of BMS software-related setting values with update-related values, preventing malfunction by ensuring correct software operation through a BMS setting value input mode when incompatibilities are detected.
Prevents BMS malfunctions by ensuring proper software operation, even when configuration information is missing or outdated, thereby maintaining safety and efficiency in battery packs and energy storage systems.
Smart Images

Figure KR2025001798_04122025_PF_FP_ABST
Abstract
Description
Battery management device and method of operation of the battery management device
[0001] This application claims the benefit of Korean Patent Application No. 10-2024-0068946 filed with the Korean Intellectual Property Office on May 28, 2024, the entire contents of which are incorporated herein by reference.
[0002] The present invention relates to a battery management device and an operating method of the battery management device, and more particularly, to an operating method of the battery management device related to setting information of the battery management device and BMS software.
[0003] Secondary batteries, which can be recharged and reused after use, are manufactured into battery modules or packs by connecting multiple battery cells in series, depending on the output capacity required by the device. These batteries serve as power sources for various devices. These batteries are used in a wide range of applications, from small, high-tech electronic devices like smartphones to electric bicycles, electric vehicles, and even energy storage systems (ESS).
[0004] A battery pack is a structure composed of multiple battery cells. If any of the cells experience overvoltage, overcurrent, or overheating, this can compromise the safety and operational efficiency of the battery pack. Therefore, a means of detecting these issues is essential. Therefore, battery packs are equipped with a Battery Management System (BMS), which measures the voltage of each battery cell and monitors and controls the voltage status of the cells based on these measurements.
[0005] Meanwhile, energy storage systems that connect renewable energy sources, batteries, and power grids also have battery management systems (BMS) installed to monitor battery voltage, current, temperature, and other conditions. These BMS processors utilize software to perform related operations, and the BMS configuration information required for the BMS software to operate must be defined.
[0006] However, if BMS configuration information is not defined within the battery management device or configuration information that does not correspond to the current BMS software version is stored within the battery management device, the battery management device may malfunction.
[0007] The purpose of the present invention to solve the above problems is to provide a battery management device.
[0008] Another object of the present invention to solve the above problems is to provide an operating method of a battery management device related to setting information of BMS software.
[0009] According to one embodiment of the present invention for achieving the above object, a battery management device may include a processor; and a memory for storing at least one command executed through the processor, wherein the at least one command may include a command for reading, at boot time, update information of BMS (Battery Management System) software-related setting values among BMS software-related data stored in a non-volatile memory; a command for comparing the update information of the BMS software-related setting values with update-related values defined in BMS software; and a command for determining that BMS operation is impossible when the update information of the BMS software-related setting values does not match the update-related values defined in the software.
[0010] The update-related values defined in the above BMS software can be set as constant values in the above BMS software code.
[0011] The at least one command may further include a command to cause the battery management device to perform normal operation when the update information of the BMS software-related setting values matches the update-related values defined in the software.
[0012] The command for performing normal operation of the battery management device may include a command for reading one or more BMS software-related setting values stored in the non-volatile memory; and a command for reading one or more BMS software-related setting values according to a MAP of the BMS software.
[0013] Meanwhile, the at least one command may further include a command to sequentially record the BMS software-related setting values in a non-volatile memory in a BMS setting value input mode; and a command to record an update-related value defined in the BMS software as update information of the BMS software-related setting values in the non-volatile memory when normal recording is completed at least once for all addresses of the non-volatile memory.
[0014] Meanwhile, the non-volatile memory may further include a first non-volatile memory that stores the BMS software and the update-related values, and the first non-volatile memory may be located inside the processor.
[0015] Additionally, the non-volatile memory may further include a second non-volatile memory that stores update information of the BMS software-related setting values and one or more BMS software-related setting values, and the second non-volatile memory may be located outside the processor.
[0016]
[0017] According to an embodiment of the present invention for achieving the above-described other object, a method for operating a battery management device may include a step of reading, when booting the battery management device, update information of BMS (Battery Management System) software-related setting values among BMS software-related data stored in a non-volatile memory of the battery management device; a step of comparing the update information of the BMS software-related setting values with update-related values defined in the BMS software; and a step of determining that the BMS is inoperable if the update information of the BMS software-related setting values does not match the update-related values defined in the software.
[0018] The update-related values defined in the above BMS software can be set as constant values in the above BMS software code.
[0019] The operating method of the battery management device may further include a step of performing normal operation of the battery management device when the update information of the BMS software-related setting values matches the update-related values defined in the software.
[0020] The step of performing normal operation of the above battery management device may include the step of reading one or more BMS software-related setting values stored in the non-volatile memory; and the step of reading the one or more BMS software-related setting values according to the MAP of the BMS software.
[0021] The operating method of the battery management device may further include a step of entering a BMS setting value input mode when the battery management device is determined to be in a BMS inoperable state; a step of sequentially recording the BMS software-related setting values in a non-volatile memory; and a step of recording an update-related value defined in the BMS software as update information of the BMS software-related setting values in the non-volatile memory when normal recording is completed at least once for all addresses of the non-volatile memory.
[0022] Meanwhile, the non-volatile memory may further include a first non-volatile memory that stores the BMS software and the update-related values, and the first non-volatile memory may be located inside the processor.
[0023] Additionally, the non-volatile memory may further include a second non-volatile memory that stores update information of the BMS software-related setting values and one or more BMS software-related setting values, and the second non-volatile memory may be located outside the processor.
[0024] According to the above-described embodiment of the present invention, even if BMS setting information is not defined in the battery management device or setting information that does not correspond to the current BMS software version is stored in the battery management device, it is possible to prevent malfunction of the battery management device by determining whether the battery management device is operating normally using update information of BMS software-related setting values.
[0025] Figure 1 shows an example of a battery system structure to which the present invention can be applied.
[0026] Figure 2 shows a block diagram of a battery management device for explaining a BMS software update.
[0027] Figure 3 shows an example of a data recognition error that may occur during a typical BMS software update process.
[0028] FIG. 4 is a diagram showing an example of a BMS operation concept in a software update process according to an embodiment of the present invention.
[0029] FIG. 5 illustrates an operation sequence when a battery management device generally boots up according to one embodiment of the present invention.
[0030] FIG. 6 shows an operation sequence when a battery management device operates in a BMS setting value input mode according to an embodiment of the present invention.
[0031] Figure 7 is a block diagram of a battery management device according to an embodiment of the present invention.
[0032] 100: Battery
[0033] 200: Battery management device
[0034] 210: Control Unit
[0035] 211: First Memory
[0036] 222: Second Memory
[0037] 250: Communications Department
[0038] 270: User Interface
[0039] The present invention is susceptible to various modifications and embodiments. Specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, but rather to encompass all modifications, equivalents, and alternatives falling within the spirit and technical scope of the present invention. Throughout the description of each drawing, similar reference numerals have been used to designate similar components.
[0040] Terms such as "first," "second," "A," and "B" may be used to describe various components, but these components should not be limited by these terms. These terms are used solely to distinguish one component from another. For example, without departing from the scope of the present invention, the first component could be referred to as the "second component," and similarly, the second component could also be referred to as the "first component." The term "and / or" includes any combination of multiple related items listed or any one of multiple related items listed.
[0041] When a component is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components intervening. Conversely, when a component is referred to as being "directly connected" or "connected" to another component, it should be understood that there are no other components intervening.
[0042] The terminology used in this application is only used to describe specific embodiments and is not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly indicates otherwise. In this application, it should be understood that the terms "comprise" or "have" indicate the presence of a feature, number, step, operation, component, part, or combination thereof described in the specification, but do not exclude in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts, or combinations thereof.
[0043] Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. Terms defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant technology, and shall not be interpreted in an idealized or overly formal sense unless explicitly defined herein.
[0044]
[0045] Some terms used in this specification are defined as follows:
[0046] A battery cell is the smallest unit that stores electricity, and a battery pack is a collection of multiple battery cells that are electrically connected.
[0047] A battery rack is a single-structure system that electrically connects module units set by a battery manufacturer and can be monitored and controlled through a BMS (Battery Management System), and can be configured to include multiple battery packs (or battery modules) and a BPU or protection device.
[0048] A battery bank can refer to a large-scale battery rack system comprised of multiple battery racks connected in parallel. A battery bank-level BMS can monitor and control the rack BMS (RBMS) at the battery rack level.
[0049]
[0050] Hereinafter, a preferred embodiment according to the present invention will be described in detail with reference to the attached drawings.
[0051]
[0052] Figure 1 shows an example of a battery system structure to which the present invention can be applied.
[0053] In the battery system of Fig. 1, a plurality of battery packs constitute a battery rack, and a plurality of battery racks constitute a battery bank. The battery system illustrated in Fig. 1 may constitute part of an energy storage system.
[0054] At this time, a battery management system (BMS) may be installed in each of the battery packs, battery racks, and battery banks. In Fig. 1, the battery pack may be configured to include multiple battery cells connected in series. The battery cells are connected to a load through positive and negative terminals and can perform charge / discharge operations. The most commonly used battery cells are lithium-ion (Li-Ion) battery cells. Each of these battery packs may be installed with a battery management system (BMS).
[0055] The pack BMS monitors the current, voltage, and temperature of each battery pack it manages. Based on the monitoring results, it calculates the State of Charge (SOC) and controls charging and discharging. Here, SOC represents the battery's current state of charge expressed as a percentage (%).
[0056] To perform these operations, a BMS may include various components such as fuses, current sensing elements, thermistors, switches, and balancers. Most of them include an MCU (Micro Controller Unit) or BMIC (Battery Monitoring Integrated Chip) to interface and control these. Here, the BMIC may be an IC-type component located inside the BMS and measures information such as voltage, temperature, and current of the battery cell / module.
[0057] Meanwhile, each Rack BMS (RBMS) manages each battery rack, and the Bank BMS (BBMS) can control the battery bank including these battery racks as a whole. Each RBMS can monitor current, voltage, and temperature from each battery rack, calculate the SOC based on the monitoring results, and control charging and discharging. Multiple rack BMSs are connected to a Battery System Controller (BSC), and the Battery System Controller can manage and control the entire battery system. In the embodiment of FIG. 1, the Bank BMS (BBMS) is shown as performing the same function as the BSC, and may be referred to as either a BBMS or a BSC depending on the system.
[0058] The BMS also monitors battery cells, reads cell voltages, and relays these data to other systems connected to the battery. To achieve this, the BMS includes a communication module for communicating with other systems within the device, including the battery system. The BMS's communication module can communicate with other systems within the device using the Controller Area Network (CAN). In this case, components, modules, or systems within the BMS can be interconnected via the CAN bus.
[0059] A battery management system (BMS) according to an embodiment of the present invention may be one of a BSC (battery system controller) / BBMS that manages a battery bank, a rack BMS that is connected to the BSC / BBMS and manages each battery rack, and a pack BMS that is connected to the rack BMS and manages each battery pack.
[0060]
[0061] Figure 2 shows a block diagram of a battery management device for explaining a BMS software update.
[0062] As previously discussed with reference to FIG. 1, the battery management device (200) monitors and manages the battery (100). Here, the battery may refer to various types of battery assemblies, such as a battery pack (module), a battery rack, and a battery bank. The battery management device (200) may include a processor (210) and a memory (211, 222), and may additionally include various components and circuits, such as a battery monitoring circuit (e.g., a BMIC (Battery Monitoring Integrated Chip)), although not illustrated for convenience.
[0063] Meanwhile, the battery management device (200) may include a non-volatile memory (internal memory) (211) within the processor (210). In one embodiment, the internal memory (211) of the processor (210) may be a flash memory. Software (e.g., an application) for the operation of the battery management device (200) may be stored in the internal memory (211) of the processor (210). A bootloader may also be stored in the internal memory (211) of the processor (210) for booting the battery management system (200).
[0064] The battery management device (200) may include a separate external memory (222), for example, a non-volatile memory, in addition to the internal memory (210) within the control unit (210). The external memory (222) may store BMS setting values that determine the operation of the software, for example, the number of battery packs, diagnostic thresholds, fault occurrence history, etc. The external memory (222) may also store quality assurance data.
[0065] Meanwhile, battery management devices require software updates for various reasons, such as functional improvements and the addition of new features. In the present invention, software updates may encompass software upgrades and downgrades. The processor (210) may receive software update commands and new software from an external device. In one embodiment, the external device may receive new software from a computing device connected via a network.
[0066] In response to a software update command, the processor (210) may overwrite an area of the internal memory (211) where existing software is stored with new software (222). In one embodiment, the processor may erase the existing software from the internal memory (211) and write the new software. In some embodiments, the processor may perform a reset and jump to a bootloader to write the new software to the internal memory (211). Accordingly, the existing software is deleted from the internal memory (210) and the new software is written, thereby enabling the software to be updated.
[0067] When booting using new software, the processor (210) loads and operates the setting values that determine the operation of the software stored in the external memory (222). The processor (210) can interpret the BMS setting value-related data (e.g., binary data) stored in the external memory (222) using the software MAP that defines the setting (NV (Non-Volatile)) values. Meanwhile, the BMS software MAP can be stored together with the BMS software within the software.
[0068]
[0069] Figure 3 shows an example of a data recognition error that may occur during a typical BMS software update process.
[0070] In a battery management device having the configuration of FIG. 2, when a general software update is performed, the battery management device starts up and performs battery management operations according to the new software recorded in the internal memory (211).
[0071] At this time, the processor (210) can interpret the setting values that determine the operation of the BMS software using the software MAP and perform related operations. Here, the BMS software-related setting values (35) that determine the operation of the software may include, for example, the number of battery packs, a diagnostic threshold, a fault occurrence history, etc.
[0072] Referring to the example of Fig. 3, if the software version (30) before the update is 1.0.0.0, it can be seen that the MAP (33) according to version 1.0.0.0 is defined in the order of "Pack count (unit8_t), "OVF (Over Voltage Fault) Detect (unit16_t)", "OVF Release (unit16_t)", "UVF (Under Voltage Fault) Detect (unit16_t)", and "UVF Release (unit16_t)".
[0073] In addition, the BMS software related setting values (33) stored in the external non-volatile memory are "Pack count = 16", "OVF (Over Voltage Fault) Detect = 38000", "OVF Release = 36000", "UVF (Under Voltage Fault) Detect = 29000", and "UVF Release = 29500". The processor can interpret the BMS software related setting values (35) according to the defined MAP (33). Here, the BMS software related setting values (35) can be stored in a bundle by category (Voltage diagnosis related, Current diagnosis related, etc.) for each data in the external non-volatile memory (222) area.
[0074] Meanwhile, when an update is performed as shown in FIG. 3 and the new software version (30) is changed to 1.0.0.1, the new software interprets the values set in the external memory according to the software MAP (33-1) defined according to version 1.0.0.1. That is, the processor (210) obtains the same binary data as before the software update, but interprets the data according to the MAP according to the new software, and thus obtains an interpretation result that is completely different from before the update.
[0075] Referring to the data interpretation after the update of Fig. 3, the MAP (33-1) according to the new software defines related data in the order of "Fan Type", "Pack count", "OVF (Over Voltage Fault) Detect", "OVF Release", and "UVF (Under Voltage Fault) Detect". Therefore, it can be seen that if the binary data related to the BMS software settings previously stored in the non-volatile memory is interpreted according to the order, data distortion (35') will occur.
[0076] In order to solve this problem, the present invention records information on the number of times information recorded in non-volatile memory is updated in the case of software updates, etc., and uses this to prevent data distortion and block malfunction of the BMS.
[0077]
[0078] FIG. 4 is a diagram showing an example of a BMS operation concept in a software update process according to an embodiment of the present invention.
[0079] In the example of Fig. 4, when the software version (30) before the update is 1.0.0.0, it can be seen that the MAP (33) according to the version (30) 1.0.0.0 is defined in the order of "Pack count (unit8_t), "OVF (Over Voltage Fault) Detect (unit16_t)", "OVF Release (unit16_t)", "UVF (Under Voltage Fault) Detect (unit16_t)", and "UVF Release (unit16_t)".
[0080] The processor of the battery management device according to an embodiment of the present invention can interpret BMS software-related setting values (35) according to a predefined MAP (33). Additionally, in the present invention, update information (NV revision) (410) of BMS software-related setting values can be stored in a memory. Here, the update information of BMS software-related setting values can mean the number of times the BMS software-related setting values have been updated and recorded. Here, according to one embodiment, the update information (NV revision) (410) of BMS software-related setting values can be stored in an external memory (222).
[0081] Meanwhile, according to an embodiment of the present invention, setting value update information (310) defined as a constant value within the BMS software may be included in the form of a constant value. The constant value defined in such software may be understood as a literal value (fixed in the source code) that is definitively defined in the software code. For example, a software developer may change and set the constant value (increasing it proportionally to the version) whenever a new software is developed.
[0082] For example, if it was initially produced at the factory and the settings were recorded once, the update information (410) may be recorded as “1 (Ox01)” as shown in FIG. 4. Afterwards, if a software update is performed as shown in FIG. 4 and the software version (30) is changed to 1.0.0.1, it can be seen that the update information (310') defined as a constant in the changed software has also been changed to “Ox02”.
[0083] However, even though new software has been stored in the internal memory according to the software update command, there has been no change to the existing settings recorded / saved for the BMS software operation. Accordingly, it can be seen that the update information (NV revision) (410) of the BMS software-related settings stored in the non-volatile memory is still maintained as "1 (Ox01)".
[0084] According to the present invention, in such a case, that is, when a value (Ox01) different from the update constant (Ox02) defined in the software is recorded in the non-volatile memory as update information of the BMS software-related setting value, the processor of the battery management device can determine the value as a value not intended by the user and process it as BMS inoperability.
[0085]
[0086] FIG. 5 illustrates an operation sequence when a battery management device generally boots up according to one embodiment of the present invention.
[0087] During a typical booting of a battery management device, for example, during booting of a battery management device deployed at an ESS site and starting operation, a processor (210) reads (Read) (S510) update information on BMS (Battery Management System) software settings stored in nonvolatile memory. Here, the nonvolatile memory may be a memory located outside of the processor (210). The nonvolatile memory may also be a flash memory.
[0088] According to one embodiment, the process of the processor (210) reading update information of BMS software-related setting values stored in the nonvolatile memory may include a detailed process of reading all data stored in the nonvolatile memory and extracting update information of BMS software-related setting values from the data. Meanwhile, according to another embodiment, the processor (210) may first read only the data of the address where the update information (written in a designated area in the memory) is stored among the data stored in the nonvolatile memory. In this case, the update information of the BMS software-related setting values stored in the nonvolatile memory may be stored in the memory of the earliest address among all data stored in the nonvolatile memory.
[0089] The processor compares the update information (NV Data on Flash) of BMS software-related settings recorded in non-volatile memory with the update constant (SW Defined constant) defined in the software to determine whether the two values are identical (S520). Here, the update-related values defined in the BMS software can be set as constant values in the BMS software code.
[0090] If the two values are identical, the processor can perform normal operation according to the BMS software (S530). During normal operation of the battery management device, one or more BMS software-related setting values stored in non-volatile memory can be read, and the one or more BMS software-related setting values can be read according to the MAP of the BMS software.
[0091] Meanwhile, if the update information of the BMS software-related setting values recorded in the non-volatile memory is different from the update constant defined in the software, the processor determines that a value not intended by the user is stored in the non-volatile memory and processes it as BMS inoperability (S540).
[0092] More specifically, during normal operation (S540), the battery management device can perform overall functional operations of the BMS, such as current data update, diagnosis, cell balancing, and charging / discharging of the battery pack (module).
[0093] On the other hand, if the BMS operation is processed as inoperable (S540), the battery management device can enter the BMS setting value input mode (e.g., factory mode). The battery management device can perform normal BMS operation after performing the process of recording the BMS setting value in non-volatile memory through the BMS setting value input mode.
[0094]
[0095] FIG. 6 shows an operation sequence when a battery management device operates in a BMS setting value input mode according to an embodiment of the present invention.
[0096] In the BMS setup value input mode (e.g., factory mode), setup values such as "Pack count", "OVF (Over Voltage Fault) Detect", "OVF Release", "UVF (Under Voltage Fault) Detect", and "UVF Release" can be sequentially written to the non-volatile memory. The BMS software setup values written to the non-volatile memory can be defined in such a way that, for example, NV_Value[0] represents the setup value for the pack count, NV_Value[1] represents the OVF detection value, and NV_Value[2] represents the OVF release value.
[0097] Referring to Fig. 6, the variable i related to the BMS setting value is initialized to "0" as a pre-task (S610). Thereafter, the NV values of the NV_Value[i] category are written to non-volatile memory (S620), and the corresponding NV values are validated (SET) (S630). It is checked whether the NV values of the NV_Value[i] category are valid (S640), and if they are invalid (No in S640), re-tasks for writing and validation are performed.
[0098] If the corresponding NV_Value[i] category value is valid, the variable i value is increased (S651), and a write (S620) and a validate (SET) operation (S630) for each category is performed. The write (S620) and validate (SET) operation (S630) for each category is performed until the last set value to be written is reached (S650).
[0099] When one or more normal writes are completed for an address of all non-volatile memories, the processor can write a value equal to an update constant defined in software (SW Defined constant) to the update information (NV Data on Flash) of the BMS software-related settings of the non-volatile memory (S660).
[0100]
[0101] Figure 7 is a block diagram of a battery management device according to an embodiment of the present invention.
[0102] A battery management device (200) according to an embodiment of the present invention may include a control unit (210); and a memory that stores at least one command executed by the processor. In this case, the memory may include one or more of the first memory (211) and the second memory (222) of FIG. 7.
[0103] Here, the at least one command may include a command to read, at boot time, update information of BMS (Battery Management System) software-related settings from among BMS software-related data stored in non-volatile memory; a command to compare the update information of the BMS software-related settings with update-related values defined in the BMS software; and a command to determine that the BMS is inoperable if the update information of the BMS software-related settings does not match the update-related values defined in the software.
[0104] The update-related values defined in the above BMS software can be set as constant values in the above BMS software code.
[0105] The at least one command may further include a command to cause the battery management device to perform normal operation when the update information of the BMS software-related setting values matches the update-related values defined in the software.
[0106] The command for performing normal operation of the battery management device may include a command for reading one or more BMS software-related setting values stored in the non-volatile memory; and a command for reading one or more BMS software-related setting values according to a MAP of the BMS software.
[0107] Meanwhile, the at least one command may further include a command to sequentially record the BMS software-related setting values in a non-volatile memory in a BMS setting value input mode; and a command to record an update-related value defined in the BMS software as update information of the BMS software-related setting values in the non-volatile memory when normal recording is completed at least once for all addresses of the non-volatile memory.
[0108] Meanwhile, the non-volatile memory may include a first non-volatile memory that stores the BMS software and the update-related values. Here, the first non-volatile memory may be located inside the control unit, such as the first memory (211) illustrated in FIG. 7. In one embodiment, the internal memory (211) of the control unit (210) may be a programmable ROM or flash memory. Software (e.g., an application) for the operation of the battery management device (200) may be stored in the internal memory (211) of the control unit (210). A bootloader may also be stored in the internal memory (211) of the control unit (210) for booting the battery management system (200).
[0109] In another embodiment, the internal memory (211) of the control unit (210) may be a programmable read-only memory (ROM). The programmable ROM may be, for example, an Electrically Erasable Programmable ROM (EEPROM).
[0110] In addition, the non-volatile memory may further include a second non-volatile memory that stores update information of the BMS software-related setting values and one or more BMS software-related setting values. Here, the second non-volatile memory may be located outside the control unit (210), such as the second memory (222) illustrated in FIG. 7.
[0111] In one embodiment, the external memory (222) may be a programmable ROM or flash memory. The external memory (222) may store configuration values that determine the operation of the software, such as the number of battery packs, diagnostic thresholds, and fault occurrence history. The external memory (222) may also store warranty data.
[0112] According to an embodiment, the control unit (210) may be referred to as a processor, a controller, an MCU (Micro Controller Unit), etc. in this specification, and may also mean a dedicated processor in which methods according to embodiments of the present invention are performed.
[0113] Meanwhile, the battery management device (200) may further include a communication unit (250), a user interface (270) including an input / output interface, etc. The communication unit (250) of the battery management device may communicate with internal components as well as other systems within the device using a Controller Area Network (CAN). In this case, components, modules, or systems within the BMS may be interconnected via the CAN bus.
[0114]
[0115] According to the embodiment of the present invention as described above, even if BMS setting information is not defined in the battery management device or setting information that does not correspond to the current BMS software version is stored in the battery management device, it is possible to prevent malfunction of the battery management device by determining whether the battery management device is operating normally using update information of BMS software-related setting values.
[0116]
[0117] The operations of the method according to an embodiment of the present invention can be implemented as a computer-readable program or code on a computer-readable recording medium. A computer-readable recording medium includes any type of recording device that stores data readable by a computer system. Furthermore, a computer-readable recording medium can be distributed across network-connected computer systems, allowing the computer-readable program or code to be stored and executed in a distributed manner.
[0118] Additionally, the computer-readable recording medium may include hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. The program instructions may include not only machine language codes produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter, etc.
[0119] While some aspects of the present invention have been described in the context of a device, they may also represent a description of a corresponding method, wherein a block or device corresponds to a method step or a feature of a method step. Similarly, aspects described in the context of a method may also be described as a corresponding block or item or a feature of a corresponding device. Some or all of the method steps may be performed by (or using) a hardware device, such as, for example, a microprocessor, a programmable computer, or an electronic circuit. In some embodiments, one or more of the most significant method steps may be performed by such a device.
[0120] Although the present invention has been described with reference to preferred embodiments thereof, it will be understood by those skilled in the art that various modifications and changes may be made to the present invention without departing from the spirit and scope of the present invention as set forth in the claims below.
Claims
1. Processor; and A battery management device comprising a memory storing at least one command executed through the processor, At least one of the above commands, A command to read (Read) update information on BMS (Battery Management System) software settings stored in the non-volatile memory of the battery management device at boot time; A command to compare the update information of the above BMS software related settings with the update related values defined in the BMS software; and A battery management device including a command that determines that the BMS is inoperable if the update information of the BMS software-related setting values does not match the update-related values defined in the software.
2. In claim 1, A battery management device, wherein the update-related values defined in the above BMS software are set as constant values in the BMS software code.
3. In claim 1, At least one of the above commands, A battery management device further comprising a command for performing normal operation of the battery management device when the update information of the BMS software-related setting values matches the update-related values defined in the software.
4. In claim 3, The command to perform normal operation of the above battery management device is: A command to read one or more BMS software related settings stored in the non-volatile memory; and A battery management device comprising a command to read one or more BMS software related setting values according to a MAP of the BMS software.
5. In claim 1, At least one of the above commands, In the BMS setting value input mode, a command to sequentially record the BMS software related setting values in non-volatile memory; and A battery management device further comprising a command to record an update-related value defined in the BMS software as update information of a BMS software-related setting value of the nonvolatile memory when normal recording is completed at least once for all addresses of the nonvolatile memory.
6. In claim 1, The above non-volatile memory is, Includes a first non-volatile memory storing the BMS software and the update-related values, A battery management device, wherein the first non-volatile memory is located inside the processor.
7. In claim 6, The above non-volatile memory is, Further comprising a second non-volatile memory storing update information of the BMS software-related setting values and one or more BMS software-related setting values, A battery management device, wherein the second non-volatile memory is located external to the processor.
8. When booting the battery management device, a step of reading (Read) update information of BMS software-related settings from among BMS (Battery Management System) software-related data stored in the non-volatile memory of the battery management device; A step of comparing the update information of the above BMS software related settings with the update related values defined in the BMS software; and An operating method of a battery management device, comprising a step of determining that BMS operation is impossible if the update information of the BMS software-related setting values does not match the update-related values defined in the software.
9. In claim 8, An operating method of a battery management device, wherein the update-related values defined in the above BMS software are set as constant values in the above BMS software code.
10. In claim 8, An operating method of a battery management device, further comprising a step of performing normal operation of the battery management device when the update information of the BMS software-related setting values matches the update-related values defined in the software.
11. In claim 10, The steps for performing normal operation of the above battery management device are: A step of reading one or more BMS software related setting values stored in the non-volatile memory; and A method of operating a battery management device, comprising a step of reading one or more BMS software-related setting values according to a MAP of the BMS software.
12. In claim 8, When the above battery management device is determined to be in a BMS non-operational state, a step of entering the BMS setting value input mode; A step of sequentially recording the above BMS software related settings in non-volatile memory; and An operating method of a battery management device, further comprising a step of recording an update-related value defined in the BMS software as update information of a BMS software-related setting value of the nonvolatile memory, when normal recording is completed at least once for all addresses of the nonvolatile memory.
13. In claim 8, The above non-volatile memory is, Includes a first non-volatile memory storing the BMS software and the update-related values, A method of operating a battery management device, wherein the first non-volatile memory is located inside a processor of the battery management device.
14. In claim 13, The above non-volatile memory is, Further comprising a second non-volatile memory storing update information of the BMS software-related setting values and one or more BMS software-related setting values, A method of operating a battery management device, wherein the second non-volatile memory is located outside the processor.
Citation Information
Patent Citations
Battery management apparatus and operation method thereof
KR1020250170187A
Fault detection device, method, program, and recording medium
JP2006350955A
Electronic apparatus and system
JP2017187963A
Method for writing firmware for battery management system using bluetooth and smartphone
KR1020140082319A
Method for manufacturing evaporation casing set for use of household ice machine of auger type and evaporation casing set produced by the method
KR1020230110843A