Method for updating software by confirming hardware version information

CN116324713BActive Publication Date: 2026-10-13LG ENERGY SOLUTION LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202280006583.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-06-28
Filing Date
2022-06-10
Publication Date
2026-10-13
Estimated Expiration
2042-06-10

AI Technical Summary

Technical Problem

[0007]在这种情况下,由于硬件版本被直接输入并存储在启动加载程序代码中,可能由于不正确的进入而出现错误和故障

Benefits of technology

[0021]在本发明中,通过使用存储硬件版本信息的单独的硬件版本信息识别装置,可以防止在软件更新期间由于不正确的硬件版本输入而导致的错误。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116324713B_ABST
    Figure CN116324713B_ABST
Patent Text Reader

Abstract

The present invention is for identifying a hardware version that enables a software update to proceed, and enables information about the hardware version to be input into a microcontroller by a hardware version identification unit that stores BMS hardware version information, instead of storing the information in code. Furthermore, the apparatus and method enable the microcontroller to operate in both application mode and start-up mode to compensate for low lane utilization of the microcontroller when one microcontroller is used to update software.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to a method for verifying the hardware version for use in a BMS software update. This invention also relates to apparatus and methods for increasing channel utilization of a microcontroller while accurately identifying the hardware version. Background Technology

[0002] The hardware version varies depending on the application devices and circuitry that constitute the Battery Management System (BMS). To compensate for problems and deficiencies in previous versions, the hardware version is updated when a new BMS is manufactured by supplementing the PCB board manufacturing and application devices of the BMS. This can also be referred to as a hardware update.

[0003] Software version updates are performed based on updates to the digital controller design used for the control and protection circuitry operation of each application in the BMS. This can also be referred to as a software update.

[0004] There are hardware versions that can be used with certain software versions, and there are even hardware versions that can be used even when updating the software. Therefore, the hardware version should be checked when updating the software.

[0005] The prior art of this invention is described in Korean Patent No. 10-0624723 (September 8, 2006), which stores the hardware version in the bootloader code and checks the hardware version through the bootloader code.

[0006] Therefore, if you want to check the hardware version when updating software, you can do so by accessing and comparing the bootloader code, and then the software update will proceed.

[0007] In this situation, because the hardware version is directly entered and stored in the bootloader code, errors and malfunctions may occur due to incorrect entry.

[0008] (Patent Document 1) Korean Patent Registration 10-0624723 (September 8, 2006) Summary of the Invention

[0009] Technical issues

[0010] To address the above problems, the present invention provides the following apparatus and method for updating the software of a battery management system (BMS) using hardware version information stored in a separate hardware version information identification device, so as to prevent errors during hardware version identification.

[0011] Technical solution

[0012] To achieve the above objectives, the present invention provides a battery management device comprising: a hardware version identification unit including hardware version information of a battery management system (BMS) and configured to output the hardware version information; and a microcontroller including a plurality of input / output channels and configured to receive the hardware version information from the hardware version identification unit through at least one input / output channel, wherein the microcontroller receives updated software including a list of compatible hardware versions and compares the list of compatible hardware versions with the hardware version information of the BMS received from the hardware version identification unit to determine whether to continue the software update of the BMS.

[0013] In addition, at least one input / output channel of the microcontroller is configured as a designated channel, wherein the designated channel is simultaneously connected to a first switch connected at one end to a predetermined application execution unit and a second switch connected at one end to a hardware version identification unit, wherein each of the first and second switches has an on / off state set differently according to the control of the microcontroller.

[0014] Furthermore, when a software update instruction is available, the microcontroller turns on the second switch and turns off the first switch to receive hardware version information input from the hardware version identification unit through a designated channel.

[0015] In addition, the microcontroller is configured to include control terminals for outputting on / off control commands to a first switch and a second switch, wherein the control terminals output control signals for turning on the first switch and turning off the second switch in normal mode or application operation mode.

[0016] In addition, when an updated software is received, the microcontroller compares the list of compatible hardware versions included in the updated software with the hardware version information received from the hardware version identification unit, and controls the on / off state of the first and second switches based on the comparison result.

[0017] A control method for a battery management device according to the present invention includes: an update software receiving step: receiving update software for updating the BMS software; a hardware version information acquisition step: acquiring the hardware version information of the BMS stored in the hardware version identification unit of the BMS; a hardware version list checking step: comparing the acquired hardware version information with a list of compatible hardware versions included in the update software to determine whether to continue the software update; a startup mode start step: starting a startup mode for updating the software when the list of compatible hardware versions includes the hardware version information of the BMS; and a startup mode end step: exiting the startup mode when the software update is completed.

[0018] The hardware version information acquisition step is used to acquire the hardware version information stored in the hardware version identification unit by controlling the conduction of a second switch that connects the hardware version identification unit and the microcontroller to a designated channel and controlling the deactivation of a first switch that connects the designated channel and the predetermined application.

[0019] Additionally, if, as a result of the hardware version check step, the compatible hardware version list does not include BMS hardware version information, the first switch is turned on and the second switch is turned off to continue the application mode.

[0020] Beneficial effects

[0021] In this invention, by using a separate hardware version information identification device that stores hardware version information, errors caused by incorrect hardware version input during software updates can be prevented.

[0022] In addition, by setting a predetermined application channel as a designated channel and connecting application elements and elements with hardware version information to a designated channel, the following method and apparatus are provided: which eliminates the need to check the version through startup code during software updates, and eliminates the need for separate hardware version management when performing software update mode and application mode through a single channel. Attached Figure Description

[0023] Figure 1 A BMS board 100 according to a first embodiment of the present invention is shown.

[0024] Figure 2 A BMS board 200 according to a second embodiment of the present invention is shown.

[0025] Figure 3 This is a diagram showing a list of hardware versions compatible with the software update.

[0026] Figure 4 This is a flowchart of the software update process of the present invention. Detailed Implementation

[0027] In the following, embodiments of the invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can readily implement the invention. However, the invention can be implemented in various forms and is not limited to the embodiments described herein. In the drawings, parts irrelevant to the description have been omitted for clarity of the invention, and similar reference numerals refer to similar elements throughout the specification.

[0028] 1. Existing technology

[0029] The following describes in detail, for example, hardware version updates in a BMS system. A BMS system comprises multiple components that constitute temperature measurement devices, microcontrollers, protection circuits, and power converters, forming a circuit. At this point, improvements in the performance of each component or circuit configuration may lead to increased losses or stability issues in the BMS system. To address this problem, hardware changes are made as some components and circuits in the system are modified; this is known as a hardware version update.

[0030] The improvement of the switch control method and the code that drives the hardware system is called a software update.

[0031] Therefore, conventionally, for software updates, the hardware version is stored in the startup code (code is a general term for programming languages ​​that implement microcontroller functions) and in the microcontroller's flash memory. Since the hardware version is directly entered into and managed within the startup code, the hardware system may malfunction due to version errors, potentially leading to failure. Furthermore, because the hardware version is stored in the microcontroller's memory, it is difficult to check the hardware version at any time.

[0032] 2. The device for checking hardware version according to the present invention

[0033] Figure 1 The first embodiment of the present invention is shown, wherein, by improving the above-mentioned problems, information about the hardware version of the BMS is recorded in the hardware, and then the information is provided directly through the microcontroller channel during software updates.

[0034] The microcontroller (MCU) 110 is individually configured to receive hardware version information from the BMS from the hardware version identification unit 130 during software updates, and compare the received hardware version information with a list of compatible hardware versions included in the software update to determine whether to continue the software update. In other words, the hardware version list is a list of hardware versions for which the software should be processed.

[0035] The software update process follows the same procedure as the process described later in the second embodiment.

[0036] On the other hand, microcontrollers have a limited number of channels, and as the hardware version of the BMS is updated, more channels are needed. The simulation method of directly inputting the hardware version through the microcontroller only uses microcontroller channels in software update mode (or startup mode), thus resulting in low channel utilization.

[0037] To overcome the channel utilization problem, the second embodiment of the present invention has the following features: Figure 2 The circuit configuration shown.

[0038] Figure 2 The embodiments relate to a method for increasing channel utilization when receiving hardware version information through a microcontroller channel.

[0039] The present invention enables both hardware version identification in startup mode and application execution in application mode by installing two complementary switches 140 and 150 to a channel of a microcontroller and controlling the operation according to each mode.

[0040] According to the present invention, the battery management device includes a first switch for inputting and outputting information according to the operation of a microcontroller, an application execution unit, a hardware version identification unit, and a second switch for operating the hardware version identification unit, wherein the application execution unit will be described later.

[0041] 2.1 Microcontroller (MCU) 110

[0042] The microcontroller (MCU) 110 is an ultra-small computing device that receives and stores data such as battery current, voltage, and temperature detected by multiple sensors that check the state of charge (SOC) of the battery in the BMS, and enables protection circuit operation and battery switch on / off control.

[0043] Therefore, in order to improve the control function of the BMS, the software of the microcontroller 110 was updated.

[0044] Additionally, the microcontroller 110 is used to control the startup mode and application mode for software updates to the BMS. (Application mode is the mode of operation required for the normal operation of the BMS.)

[0045] The microcontroller 110 is a device that instructs the operation of application elements or transmits control signals to the control terminal 170 via a designated channel 111.

[0046] Additionally, when updating the software version, the microcontroller receives the software for the update. The software for the update includes a list of compatible hardware versions (also known as a compatible hardware version list). Figure 3 A list 300 of compatible hardware versions received by the microcontroller in this invention is shown.

[0047] After receiving hardware version information input via the hardware version identification unit 130 (described later) from the microcontroller through designated channel 111, the received hardware version information is compared with the hardware version list 300. The hardware version identification unit 130 stores hardware version information of the BMS of the microcontroller to be updated, and outputs the hardware version information to the microcontroller according to the conduction operation of the second switch (described later).

[0048] Therefore, if the hardware version input by the hardware version identification unit 130 is not found in the hardware version list 300, the software update will not proceed.

[0049] Conversely, if a hardware version is found in the hardware version list 300 as input by the hardware version identification unit 130, the software update continues.

[0050] The device that performs this processing is a microcontroller 110.

[0051] 2.2 Application Execution Unit 120

[0052] Application execution unit 120 is a device connected to microcontroller (MCU) 110 and operating application elements. Application execution unit 120 operates in application mode (or normal mode) and is a device that stops when a software update command is input and resumes operation when the software update is complete. Application execution unit 120 is connected to a first switch 140 to input information to the microcontroller or output operations to the microcontroller through designated channel 111.

[0053] 2.3 First switch 140

[0054] The first switch 140 is a switch for connecting a designated channel of the application execution unit and the microcontroller, and is a device that enables the application execution unit 120 and the microcontroller 110 to be connected in application mode (or normal mode), in which software updates are completed or not performed.

[0055] 2.4 Hardware Version Identification Unit 130

[0056] The hardware version identification unit 130 is a device that provides data about the hardware version to the microcontroller 110. The hardware version identification unit 130 stores the hardware information of the BMS and is connected to a second switch 150, which will be described later. When a software update command is input, the second switch 150 is turned on and the BMS hardware version information is provided to the microcontroller 110. The difference in the first embodiment is that the hardware version identification unit 130 directly outputs the hardware version information to the microcontroller through a separate channel, such as... Figure 1 As shown.

[0057] The hardware version identification unit 130 can input a combination of high or low signals encoded according to the hardware version information to the microcontroller 110, or input the hardware version information to the microcontroller 110 by changing the current value applied to the microcontroller 110.

[0058] The output of the hardware version identification unit 130 is connected to a channel of the microcontroller and outputs the BMS version to the microcontroller. Since the hardware version identification unit 130 is configured to occupy a separate channel and the version identification is only used for software updates in the first embodiment, in the second embodiment, the circuit is configured to share a channel of the microcontroller occupied by other applications in terms of channel resource utilization.

[0059] 2.5 Second switch 150

[0060] The second switch 150 is a switch that operates when a BMS software update command is applied from external or internal sources. The second switch 150 is electrically connected to a designated channel 111 of the microcontroller and the hardware version identification unit 130, and allows hardware version information applied from the hardware version identification unit 130 to be input to the microcontroller 110 only during a software update. The first switch 140 and the second switch 150 operate complementaryly to each other, and when the second switch 150 is on, the first switch 140 is off.

[0061] One end of the second switch 150 is connected to the hardware version identification unit 130, and the other end is connected to the connection component 160.

[0062] 2.6 Control Terminal 170

[0063] The control terminal 170 is used to control the first switch 140 and the second switch 150, and when a software update command is input from the microcontroller 110, a control signal for turning off the first switch 140 and turning on the second switch 150 is output through the control terminal 170.

[0064] Control terminal 170 is a terminal used to output a control signal for turning on the first switch 140 and turning off the second switch 150 during application mode operation.

[0065] 2.7 Connection component 160 for the first and second switches

[0066] One end of the first switch 140 and one end of the second switch 150 are respectively connected to the application execution unit 120 and the hardware version identification unit 130, and the other end of each of the first switch 140 and the second switch 150 is connected to one end of the connecting member 160.

[0067] The other end of the connecting component 160 is connected to a designated channel 111 of the microcontroller 110.

[0068] With this circuit configuration, one of the data from the application execution unit 120 and the data from the hardware version identification unit is selectively input to a channel 111 of the microcontroller 110 based on the on / off state of the first switch 140 and the second switch 150.

[0069] According to one embodiment of the invention, the switch is controlled such that: in the normal mode or application mode of the battery management device, the first switch 140 is controlled to be turned on and signals and information are input / output to the application execution unit 120 through the designated channel 111; and in the startup mode, the first switch 140 is controlled to be turned off and the second switch 150 is controlled to be turned on, and thus the hardware version information input by the hardware version identification unit 130 is input to the microcontroller 110 through the designated channel 111.

[0070] 3. The method for checking the hardware version of the present invention

[0071] This invention relates to a method for checking the hardware version when performing a software update on a microcontroller. Figure 4 An example of the method of the present invention is shown.

[0072] The mode used to perform software updates is called startup mode, and the mode in which each application operates as needed is called application mode (or normal mode).

[0073] 3.1 Application Mode Execution Steps S410

[0074] Application mode execution step S410 is achieved by conducting Figure 2 The first switch 140 inputs or outputs application information to execute application steps through the application execution unit.

[0075] The application mode execution step S410 is as follows: turn off the second switch so that the hardware version information provided by the hardware version identification unit is not transmitted to the microcontroller.

[0076] 3.2 Software update command input steps S420

[0077] The software update command input step S420 is a step where a command to continue the software update of the BMS is input from external or internal sources, and therefore, it is a step to prepare for startup mode operation. This step of inputting the software update command receives the software to be updated for the BMS; it is also referred to as the step of receiving the updated software.

[0078] The software update command input step S420 is the step of turning off the first switch 140 and turning on the second switch 150. The first and second switches are turned on / off via the control terminal 170 of the microcontroller.

[0079] Additionally, the software update command input step S420 involves receiving the hardware version list 300, which is to be updated along with the software update command. At this time, the hardware version list 300 (also referred to as the compatible hardware version list) is stored as an image file for easy access and management.

[0080] 3.3 Hardware Version Input Step S430

[0081] The hardware version input step S430 is the step of inputting the hardware version from the hardware version identification unit 130 to the microcontroller 110 when the second switch 150 is turned on. The hardware version input step S430 is the step of inputting the BMS hardware version information stored in the hardware version identification unit 130 to the microcontroller 110 through the designated channel 111. This hardware version input step is used to obtain the BMS hardware version information and is also referred to as the hardware version information acquisition step.

[0082] The hardware version identification method transmits the hardware identification signal to the microcontroller 110 by outputting high / low current or voltage and current value changes through the hardware version identification unit.

[0083] In the first embodiment, when the software update command is received, hardware version information is directly received from the channel connected to the hardware version identification unit 130.

[0084] 3.4 Hardware Version List Check Step S440

[0085] The hardware version list check step S440 is as follows: by comparing the BMS hardware version information entered into the designated channel 111 through the above hardware version input step with the hardware version list 300 included in the received software update file, it is determined whether to continue the software update.

[0086] The hardware version list 300 included in the software update file can be received in advance and stored as an image file in a designated area of ​​the microcontroller.

[0087] Startup mode begins when the hardware version information obtained in the hardware version input step or hardware version information acquisition step is present in the hardware version list.

[0088] If the hardware version information is not in the hardware version list, switch to application mode.

[0089] If a hardware version authorized through the specified channel 111 exists in the hardware version list 300, then a software update is performed.

[0090] In order to continue the software update, in the following startup mode start step, the first switch 140 remains off and the second switch 150 remains on.

[0091] If no hardware version information authorized via designated channel 111 is found in hardware version list 300, the software update is not performed. Therefore, the second switch 150 is turned off, and the first switch 140 is turned on to continue to application mode (or normal mode). Hardware version information is no longer transmitted to microcontroller 110.

[0092] 3.5 Startup Mode Switching

[0093] If the hardware version information obtained through the hardware version input step is present in the list of hardware versions to be updated, perform the software update.

[0094] 3.5.1 Startup Mode Startup Steps S450

[0095] The startup mode start step S450 is as follows: The BMS software and hardware are switched to a mode for software updates, and only the devices necessary for the software update are operated. Devices not needed for the software update are switched to hibernation mode (or shut down). Following this, the BMS software update process continues.

[0096] When information about starting the boot mode is entered in the boot mode start step S450, the microcontroller 110 switches modes according to the boot mode indicator. The first switch 140 is controlled to remain on and the second switch 150 is controlled to remain off via the control terminal 170. Additionally, other applications and software continue to boot into boot mode.

[0097] 3.5.2 Startup Mode End Step S460

[0098] The startup mode end step S460 is the step to stop the startup mode when a command indicating that the software update of the BMS is complete is input from the inside of the microcontroller 110.

[0099] By controlling terminal 170, the second switch 150 is turned off, and the first switch 140 is turned on.

[0100] 3.6 Application Mode Switching Step S470

[0101] After exiting the startup mode, the original application mode (or normal mode) begins. Therefore, the second switch 150 is turned off, and the designated channel 111 of the microcontroller is connected to the application execution unit 120 to input or output information required for application execution.

[0102] On the other hand, although the technical concept of the present invention has been specifically described with reference to the above embodiments, it should be noted that the above embodiments are for illustrative purposes and not for limitation. Furthermore, those skilled in the art will understand that various embodiments are possible within the spirit of the present invention.

[0103] The following are the names of the reference numerals used in the accompanying drawings applicable to this invention.

[0104] 100 standard BMS boards

[0105] 110 microcontroller

[0106] 111 Designated Channel

[0107] 120 Application Execution Unit

[0108] 130 Hardware Version Identification Unit

[0109] 140 First Switch

[0110] 150 Second Switch

[0111] 160 connecting parts

[0112] 170 control terminal

[0113] 200 The BMS board of the present invention

[0114] 300 Hardware Version List

Claims

1. A battery management device, comprising: A hardware version identification unit, which includes hardware version information of the battery management system and is configured to output the hardware version information; as well as The microcontroller includes multiple input / output channels and is configured to receive hardware version information from the hardware version identification unit through at least one input / output channel. Wherein, the microcontroller Receive updated software including a list of compatible hardware versions, and The list of compatible hardware versions is compared with the hardware version information of the battery management system received from the hardware version identification unit to determine whether to continue the software update of the battery management system. In this configuration, at least one input / output channel of the microcontroller is set as a designated channel. The designated channel is simultaneously connected to a first switch, one end of which is connected to a predetermined application execution unit, and a second switch, the other end of which is connected to the hardware version identification unit. Each of the first switch and the second switch has an on / off state that is set differently according to the control of the microcontroller; When a software update instruction is available, the microcontroller turns on the second switch and turns off the first switch to receive hardware version information input from the hardware version identification unit through the designated channel; and wherein, The microcontroller is configured such that if the hardware version information received through the designated channel does not exist in the list of compatible hardware versions, then no software update is performed, and the second switch is turned off while the first switch is turned on.

2. The battery management device according to claim 1, wherein, The microcontroller is configured to include control terminals for outputting on / off control commands to the first switch and the second switch. The control terminal outputs a control signal for turning on the first switch and turning off the second switch in normal mode or application mode.

3. The battery management device according to claim 1, wherein, When an updated software is received, the microcontroller compares the list of compatible hardware versions included in the updated software with the hardware version information received from the hardware version identification unit, and controls the on / off state of the first switch and the second switch according to the comparison result.

4. A control method for a battery management device, the method comprising: Update software receiving steps: Receive the update software used to update the battery management system software; Hardware version information acquisition steps: Acquire the hardware version information of the battery management system stored in the hardware version identification unit of the battery management system; Hardware version list check step: Compare the obtained hardware version information with the list of compatible hardware versions included in the updated software to determine whether to continue the software update; Startup mode initiation steps: A startup mode for updating software is initiated when the list of compatible hardware versions includes the hardware version information of the battery management system; wherein, the microcontroller of the battery management device includes at least one input / output channel configured as a designated channel. The designated channel is simultaneously connected to a first switch, one end of which is connected to a predetermined application execution unit, and a second switch, the other end of which is connected to the hardware version identification unit. Each of the first switch and the second switch has an on / off state that is set differently according to the control of the microcontroller; When a software update instruction is available, the method further includes turning on the second switch and turning off the first switch to receive hardware version information input from the hardware version identification unit through the designated channel; and wherein, If the hardware version list check step indicates that the hardware version information received through the designated channel does not exist in the compatible hardware version list, then no software update is performed, and the second switch is turned off and the first switch is turned on.

Citation Information

Patent Citations

  • Mobile communication terminal managing hardware versionand its operating method

    KR100624723B1

  • Display apparatus, upgrading apparatus, display system and control method thereof

    CN103188561A

  • Embedded device for managing battery, software installation device and method thereof

    KR1020130045508A