Communication delay measurement in BMS communication chain

By using a single-time message and response to measure communication delay in the battery management system, the problem of inconsistent auxiliary controller actions in the daisy chain configuration is solved, and the synchronous operation of the auxiliary controller is realized, simplifying the delay measurement process.

CN119155218APending Publication Date: 2024-12-17NXP USA INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410234983.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-06-15
Filing Date
2024-03-01
Publication Date
2024-12-17

AI Technical Summary

Technical Problem

In a daisy-chain-configured battery management system, the message delivery delay between auxiliary controllers is difficult to synchronize, resulting in inconsistent actions. The existing methods require multiple messages and responses to determine the delay, and the complexity increases with the number of controllers.

Method used

Communication delay is measured by using a single timing message and response between the battery management unit and the auxiliary controller and applied to synchronizing the auxiliary controller's actions.

Benefits of technology

The delay measurement process is simplified and complexity is reduced, allowing the auxiliary controller to act synchronously under the command of the main controller, independent of the number of controllers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119155218A_ABST
    Figure CN119155218A_ABST
Patent Text Reader

Abstract

Disclosed are a communication chain and a method of operation thereof, the communication chain comprising a battery management unit (BMU) and a plurality of battery cell controllers (BCCs), the method comprising: a longest BCC sending a message towards the BMU and starting a local clock counter; each other BCC receives and forwards the message towards the BMU, and starts a corresponding local clock counter; receiving the message by the BMU, starting a BMU clock counter, sending another message and stopping the BMU clock counter to determine a BMU interval count, receiving and forwarding a second message by each other BCC, and stopping the respective local clock counter to determine a respective local interval count; the longest one of the BCCs receives the further message and stops a longest local clock counter to determine its local interval count; the BMU broadcasts the BMU interval count, and the BCC determines its respective communication delay.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to communication systems arranged in a daisy chain configuration, and in particular, to a battery management system and method of operating the same. Background Art

[0002] A battery management system including a main controller, also known as a battery management unit (BMU) or master node, and an auxiliary controller, also known as a battery cell controller (BCC), is an example of a communication system that can be conveniently and efficiently configured in a daisy chain arrangement. In a daisy chain arrangement, which can also be referred to as a communication chain, the main controller communicates directly with only one of the auxiliary controllers. The auxiliary controller communicates with the main controller and an adjacent auxiliary controller, which in turn communicates with the next auxiliary controller, and so on in a chain arrangement. In order for the main controller to communicate with all controllers, messages must be transmitted along the chain, with each auxiliary controller receiving the message and then forwarding the message to its neighbors. Similarly, in order for a response to be received by the main controller from a remote auxiliary controller, the response must be sent to the neighbor of the remote controller and forwarded back along the chain.

[0003] It is immediately apparent that in such a system, careful coordination is required in situations where all secondary controllers are to perform an action simultaneously. In situations where a primary controller sends a message to a secondary controller to perform an action, there will be varying delays as the message is transmitted down the chain. If each secondary controller implements the action immediately upon receiving the message, then no synchronicity will occur. In order to perform actions synchronously or simultaneously, the secondary controllers must wait until the most remote controller receives the message. Therefore, it may be desirable to be able to determine the delay, specifically, the communication delay, between the primary controller sending the message and any particular secondary controller receiving the message. This can be achieved by the primary controller sending a message and requesting each secondary controller to provide a timestamp associated with the receipt of the message in order to calculate the corresponding delay; however, such an approach typically requires multiple messages and responses to and from each secondary controller. Summary of the invention

[0004] According to a first aspect of the present disclosure, a method for operating a battery management system is provided, wherein the battery management system includes a communication chain, the communication chain includes a battery management unit (BMU) and a plurality of battery cell controllers (BCCs), the most remote BCC in the BCCs sends a message toward the BMU and starts a local clock counter; each BCC in the rest of the BCCs receives the message, forwards the message toward the BMU, and starts a corresponding local clock counter; the BMU receives the message and starts a BMU clock counter; the BMU sends another message toward the most remote BCC in the BCCs, and stops the BMU clock counter. counter to determine a BMU interval count; each BCC in the remaining portion of the BCC receives the additional message, forwards the additional message toward the most remote BCC in the BCC, and stops the corresponding local clock counter to determine a corresponding local interval count; the most remote BCC in the BCC receives the additional message and stops the most remote local clock counter to determine its local interval count; the BMU sends the BMU interval count to each of the plurality of BCCs in the BCC; and each of the plurality of BCCs determines a corresponding communication delay from its corresponding local interval count and the BMU interval count. By initiating a timed transmission from the most remote BCC, a single pair of transmissions can be used to determine the delay of each of the BCCs, and complexity does not need to increase as the number of BCCs in the chain increases.

[0005] In one or more embodiments, the most remote BCC in the BCC sends a message toward the BMU in response to the BMU sending an initial message. This can be useful for ensuring timely operation of the method. Therefore, although the present disclosure is not limited to such embodiments, some embodiments of the present disclosure are directly compatible with the initiator-responder scheme (also referred to as the master-slave scheme) that is extremely common, especially for simple communication protocols. The BMU is a communication initiator and the BCC is a communication responder. Only the BMU can initiate communication by request, and if indicated in the request, the BCC can respond to the request. This is also a simple scheme for a half-duplex communication system, meaning that only one side can send at a time, otherwise a conflict will occur on the communication medium. Therefore, in an initiator-responder system, there is a central node that controls communication and starts delay measurement.

[0006] In one or more embodiments, the BMU clock counter and the corresponding local clock counter each operate at the same speed. In other embodiments, the clock and the clock counter may run at different speeds. It will be appreciated by those skilled in the art that in order to determine the delay in such other embodiments, the ratio of the clock counters should be used to "normalize" the corresponding time intervals.

[0007] In one or more embodiments, each of the plurality of BCCs determines a respective communication delay as half of the difference between its respective local interval count and the BMU interval count. In such embodiments, the delay may be considered as a numerical clock count (that is, the time unit is a clock cycle). To determine the delay in microseconds, the delay must be divided by the clock speed.

[0008] In one or more embodiments, starting the corresponding local clock counter occurs at the beginning of the corresponding forwarding of the message, and stopping the corresponding local clock counter occurs at the beginning of the corresponding forwarding of the other message. In one or more other embodiments, starting the corresponding local clock counter occurs at the end of the corresponding forwarding of the message, and stopping the corresponding local clock counter occurs at the end of the corresponding forwarding of the other message. The beginning of the forwarding of the message, in particular, the "message start" symbol or indicator, can be easily identified. Similarly, the end of the message can be easily identified. In other embodiments, different reference points associated with the message can be selected to trigger the clock counter. This may depend on the communication protocol of the specific application or implementation. In particular, it should be understood by those skilled in the art that if the end of message (EOM) is used, it is possible for the most remote BCC to initiate the delay measurement, and the BCC on the chain can immediately receive and switch to the delay measurement mode, but in general, this will only be feasible in applications where the communication system is not an initiator-responder scheme.

[0009] In one or more embodiments, the method further comprises synchronizing the actions of the plurality of BCCs.The determination of the communication delay for each of the BCCs may thus enable synchronization or simultaneity of the actions of the BCCs under command from the BMU.

[0010] In one or more such embodiments, synchronizing the actions of the multiple BCCs includes each of the BCCs receiving a command and implementing the command after a delay equal to a default delay, the default delay being less than its corresponding communication delay. In one or more such embodiments, the default delay is the maximum of the corresponding communication delay and the communication delay of the most remote BCC. In other embodiments, the default delay may be selected to be greater than the maximum of the retrospective communication delay and the communication delay of the most remote BCC. Specifically, in applications where two or more chains exist in parallel, the default delay may be the maximum of the delays of each of the most remote BCCs in all chains. In embodiments where there are two or more parallel chains, some of the chains may include sub-controllers between the BCC and the BMU. Alternatively, but not limiting, each chain may have its own BMU.

[0011] According to a second aspect of the present disclosure, a battery management system (BMS) is provided, comprising: a battery management unit (BMU); and a plurality of battery cell controllers (BCCs), which are in a communication chain configuration with the BMU and include a most remote BCC; wherein the most remote BCC is configured to: send a message toward the BMU and start a most remote clock counter; and receive a second message, stop the most remote clock counter to determine its local interval measurement value; wherein each BCC in the rest of the BCC is configured to: receive the message, forward the message toward the BMU and start a corresponding local clock counter; and receive the second message, forwarding the second message toward a most remote BCC among the BCCs and stopping the corresponding local clock counter to determine a corresponding local interval measurement value; wherein the BMU is configured to: receive the message and start a BMU clock counter; send an additional message toward the most remote BCC among the BCCs and stop the BMU clock counter to determine a BMU interval measurement value; and send the BMU interval measurement value to each of the plurality of BCCs; and wherein each of the plurality of BCCs is further configured to determine a corresponding communication delay as half of a difference between its corresponding local interval measurement value and the BMU interval measurement value.

[0012] In one or more embodiments, the BMU clock counter and the corresponding local clock counter are each configured to operate at the same speed. In one or more such embodiments, the corresponding communication delay of each of the plurality of BCCs is half the difference between its corresponding local interval count and the BMU interval count.

[0013] In one or more embodiments, starting the respective local clock counter occurs at the beginning of the respective forwarding of the message, and stopping the respective local clock counter occurs at the beginning of the respective forwarding of the further message.

[0014] In one or more embodiments, the system is further configured to synchronize the actions of the plurality of BCCs. In one or more such embodiments, each of the BCCs is configured to receive a command and implement the command after a delay equal to a default delay that is less than its corresponding communication delay.

[0015] In one or more embodiments, the default delay is the maximum of the corresponding communication delay and the communication delay of the most remote BCC.

[0016] According to a third aspect of the present disclosure, there is provided a method for operating a battery management system, the battery management system comprising a battery management unit (BMU) connected to a daisy chain of first to Nth battery cell controllers (BCCs), the method comprising: sending a message from the Nth BCC toward the BMU, the message being sent forward by each of the (N-1)th to the first BCCs, each of the BCCs starting a corresponding local clock after sending the message, and the BMU starting the BMU clock upon receiving the message; in response to the message, sending a second message from the BMU to the Nth BCC, the second message being sent forward by each of the first to (N-1)th BCCs, the BMU stopping the BMU clock after sending the second message, thereby determining a BMU interval, and each of the first to (N-1)th BCCs stopping its corresponding local clock after sending the second message, thereby determining a corresponding BCC interval, and each of the BCCs determining a corresponding communication delay according to half of the difference between its BCC interval and the BMU interval.

[0017] These and other aspects of the invention will be apparent from and elucidated with reference to the embodiments described hereinafter. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Embodiments will now be described by way of example with reference to the accompanying drawings, in which:

[0019] Figure 1 A battery management system BMS100 to which the present disclosure is applicable is shown;

[0020] Figure 2 Schematically illustrating a method according to an embodiment of the present disclosure;

[0021] Figure 3 A BMS showing more details of a master node and a BCC according to one or more embodiments;

[0022] Figure 4 A flowchart showing one or more embodiments of the present disclosure; and

[0023] Figure 5 A method of ensuring simultaneous operation of multiple BCCs using communication delays determined according to an embodiment of the present disclosure is schematically illustrated.

[0024] It should be noted that the figures are diagrammatic and not drawn to scale. For clarity and convenience in the figures, the relative sizes and proportions of the parts of these figures have been shown by being enlarged or reduced in size. The same reference numerals are generally used to refer to corresponding or similar features in modified and different embodiments. DETAILED DESCRIPTION

[0025] Figure 1 A battery management system BMS100 to which the present disclosure may be applied is shown. The BMS100 includes a battery management unit (BMU) 110 and a plurality of battery cell controllers (BCCs). In the example shown, there are three battery cell controllers 120, 130, and 140, but it should be understood that in an actual system, there may be more controllers. The BMU and the BCC are arranged in a communication chain configuration, which may also be referred to as a daisy chain. That is, the BMU 110 communicates directly only with the nearest BCC 120. The nearest BCC 120 communicates with the BMU and with an adjacent BCC (in this case, BCC 130). The adjacent BCC 130 communicates with the nearest BCC 120 and with another BCC, which in this case is BCC 140. In the example shown in which there are three BCCs, the other BCC 140 is also the BCC farthest from the BMU 110. The BMU 110 includes a local clock 112. For the BCCs shown, each BCC includes its own local clock 122, 132, 142, respectively. In the following description, it will be assumed that the clocks of the BMU and the BCC are running at the same speed, but the present disclosure is not limited to this. In embodiments where the clock speeds are different, delay and interval calculations can be generally considered by normalizing the clock counts, such as by dividing the counts by the clock speed. In addition, the BMU includes a transceiver 114. The transceiver 114 can be implemented as a separate transmitter and receiver. In addition, each BCC includes its own transceiver, which is transceiver 124, 134 and 144 in the example shown. Adjacent BCCs share a communication link, which generally includes one or more wires. As shown, there is a direct connection 126 or link between the nearest BCC 120 and the adjacent BCC 130, and there is another direct connection 136 between the adjacent BCC 130 and the other BCC1 140. In addition, a direct link between the BMU 110 and the first BCC 120 is shown, which can generally be a wired link.

[0026] As already mentioned, the BMU 110 communicates directly only with the first BCC 120. In order for the BMU 110 to send a message to a neighboring BCC, the message is first sent to the first BCC 120 and then onward to the neighboring BCC 130. Similarly, in order for the BMU 110 to send a message to another BCC 140, the message must first be sent to the first BCC 120, then retransmitted or forwarded to the neighboring BCC 130, and then retransmitted or forwarded again to the other sender 140. The transmission of the message takes a finite amount of time, as the message is usually processed in any BCC along the chain before the message is retransmitted. Therefore, the message from the BMU to all BCCs is not received by the BCCs synchronously or simultaneously, but with a delay, which increases further along the chain. This is problematic in the case where the BCCs are instructed to perform operations or actions simultaneously. The problem can be solved by determining the transmission delay between each BCC and the BMU. The operation or action can then be postponed by each BCC, for example, for a delay period corresponding to its respective transmission delay.

[0027] The transmission delay of any BCC may be determined by the BMU by sending a message from the BMU to the BCC requesting an immediate response. The time interval between sending the message and receiving the response is the sum of the transmission delay in the message arriving at the BCC, any processing time within the BCC, and the transmission interval for the response to arrive at the BMU. However, in general, such solutions are not scalable and become increasingly time consuming as the number of BCCs increases, since a separate message and response is typically required to determine the transmission interval for each BCC. It would be desirable to provide a method that is relatively independent of the number of BCCs.

[0028] Figure 2A method according to an embodiment of the present disclosure is schematically illustrated. The figure shows a timing diagram for various communications between a master node 110 and a plurality of BCCs. In the illustrated example, there are three BCCs: BCC1 120, BCC2 130, and BCC3 140. BCC3 140 is farthest from a BMU 110, which may also be referred to as a master node. Instead of initiating a timing measurement by a message from a BMU, a measurement is initiated from the most remote BCC 140. The communication delay between the most remote BCC 140 and the BMU 110 is determined based on a round trip time measurement starting from the most remote BCC 140. To this end, as shown at 250, the most remote BCC 140 sends a message toward the BMU and starts a counter using its local clock 142. The message from the most remote BCC 140 is not received directly by the BMU. Instead, the message is received by a neighboring BCC (in this case, the neighboring BCC 130), as shown at 252. The neighboring BCC 130 receives the message and forwards the message onward toward the BMU or retransmits the message. The neighboring BCC 130 may also process the message before or in parallel with forwarding the message. This is repeated by each of the BCCs in the chain. In the example shown where there are only three BCCs, the message from the neighboring BCC 130 is received by BCC1 120, which receives the message, may process the message, and forward the message to the BMU 110. As each BCC in the chain forwards the message, the BCC starts a counter using its own local clock. In this case, BCC2 130 starts a counter using its local clock 132 when forwarding the message, and BCC1 120 starts its own counter using its own clock 122 only when it forwards the message to the BMU 110. Those skilled in the art will appreciate that although in Figure 2 In the main part of FIG. 250 , the message is shown as being transmitted directly through the auxiliary controller 130 , in fact it should be understood that there may be a short delay. This is shown in the details called out at 215 , where the message is received by the BCC 120 at a first time 214 , processed, and then forwarded or retransmitted at a later time 216 .

[0029] When a BMU receives a message, it starts a counter using its local clock 112. After receiving the message, the BMU then sends a further message 260 towards the most remote BCC 140. When the BMU sends this further message, the BMU stops the counter of its clock. The resulting BMU interval count, that is, the counter value at the time it was stopped assuming the counter started at zero, or more generally, the difference between the start value and the stop value, thus indicates the "turnaround time", that is, the time between receiving the message from the most remote BCC and sending the further message at the BMU.

[0030] Sequentially along the chain, each of the BCCs receives the further message 260, stops its own local clock counter, and forwards the further message towards the most remote of the BCCs, except for the most remote BCC 140. Each of the BCCs thus determines a respective local interval count.

[0031] The BMU then sends the BMU interval count to each of the plurality of BCCs, as shown at 230. For each of the plurality of BCCs, since the total time interval between starting its clock and stopping its clock corresponds to twice the communication delay (that is, a first instance of delay when sending a message, and a second instance of delay when sending another message) together with the turnaround time at the BMU, each of the plurality of BCCs is then able to determine a respective communication delay corresponding to half of the difference between its respective local interval count and the BMU interval count. It should be appreciated that the above analysis assumes that data transmission has the same delay in both directions, and thus the direction-independent delay of "half the difference" is correct. While this is not always completely true, any direction-dependent differences tend to average out over the entire chain. Furthermore, if the dependency between the transmission delay and the direction is known, ratios other than "half" may also be used.

[0032] Figure 3A BMS including more details of a master node and BCCs according to one or more embodiments is shown. Each of the BMU 110 and the BCCs, which in the illustrated case are BCC1 120, BCC2 130 and BCC3 140, includes a clock or clock counter 112, 122, 132 and 142, respectively. The BMU 110 includes an analog transceiver TPLANA 316, and a symbol decoder and encoder TPLTXRX 318. Each of the BCCs 120, 130 and 140 includes a pair of analog transceivers (328a and 328b, 338a and 338b, and 348a and 348b, respectively), each connected to an adjacent BCC via one of the links 126 and 136, or to the BMU via the link 116 in the case where the BCC is closest to the BMU. One or more of the transceivers may be implemented as separate receivers and transmitters. Each of the analog transceivers of the BCC is logically connected to an associated symbol decoder and encoder TPLTXRX (respectively 326a and 326b, 336a and 336b, and 346a and 346b). It should be appreciated that in any BCC, the same circuitry may be used for the pair of symbol decoders and encoders, such as 326a and 326b. In addition, each BCC includes forwarding logic between transceivers, which is shown as 324, 334, and 336 of BCCs 120, 130, and 140, respectively. The forwarding logic is bidirectional in the sense that it forwards messages received by its first transceiver to its second transceiver and forwards messages received by its second transceiver to its first transceiver. Thus, for example, forwarding logic 324 forwards messages received by transceiver 326b to transceiver 328a and forwards messages received by transceiver 326a to transceiver 328b.

[0033] According to an embodiment of the present disclosure, when a BCC (e.g., BCC1 120) retransmits a message from its neighbor (in this example, BCC2 130) to the BMU 110, the BCC starts the clock counter 122 according to its clock. This is shown by instruction 322a "SOM.Tx". In addition, when the BCC receives another message from the BMU, the BCC stops the clock counter 112 according to its clock. This is shown by instruction 322b "SOM.Rx" in the figure. It is also apparent from the figure that the BCC is "symmetrical", that is, transceiver 326a corresponds to transceiver 326b, transceiver 328a corresponds to transceiver 328b, and so on. Thus, for different configurations of the chain (e.g., if the master node 110 is on the right end of the chain, the SOM.Tx instructions 322a and SOM.Rx instructions 322b and the like may come from the "other" corresponding transceiver, namely 336b, 338b, rather than 336a, 338a as shown.

[0034] The difference between the start value and the stop value of the counter ( Figure 2 Tmeasured[1], shown at 222 in , indicates the sum of the communication interval between BCC 120 and BMU 110, the time for the BMU to receive a message, process a message, and send another message, and the communication interval between BMU 110 and BCC 120. Since the communication between BMU 110 and BCC 120 is generally the same as the communication interval between BCC 120 and BMU 110, it is possible to determine the communication interval if the time at which the BMU receives a message, processes the message, and begins to send another message can be determined. The time at which the BMU receives a message, processes the message, and sends another message can be determined by its clock counter 112. Specifically, when the BMU begins to receive a message, the symbol decoder and encoder 318 initiates or starts the counter, shown as sending instruction 312a ("SOM.Rx"). And when the BMU begins to send a message, the BMU stops the counter, as shown by instruction 312b ("SOM.Tx"). The resulting interval ( ) is subtracted from Tmeasured[1]. Figure 2 ), and the result is halved to produce the communication interval between the BMU 110 and the BCC 120.

[0035] Since each of the BCCs (BCC1, BCC2, BCC3) starts its respective clock counter when it sends or forwards a message and stops its clock counter when it receives another message, each BCC can thereby determine the time intervals Tmeasured[1] 222, Tmeasured[1] 232, and Tmeasured[1] 242, and by subtracting Tmeasured[main] and halving the result, the communication interval between the BMU 110 and itself (BCC1, BCC2, BCC3, respectively) can be determined.

[0036] It will be appreciated that, independent of the number of BCCs in the chain, only one message and one further message are required to determine the communication intervals for all BCCs.

[0037] Typically, only the BMU can initiate a message to which one or more of the BCCs can respond, and in this case, the initial message may need to be sent from the BMU to all BCCs. Figure 2 This is graphically illustrated in the example of message 270 "Request to read BCC3" or "Request a response from BCC3". Figure 2As shown at 280 in , an earlier message ("Request WriteAll ComPathMeasurement Mode") may be sent by the BMU. This is a request to inform all BCCs in the chain that delay measurement is about to start. This may be useful because it enables the BCC to know in advance that delay measurement is about to start, or that delay mode should be entered; this will enable the BCC to be ready to start its local clock counter under SOM.Tx before it receives and processes the entire response message from BCC3. Depending on the protocol used, it is possible to combine this message with message 270 "Request Read BCC3".

[0038] As mentioned above, each of the BCCs instructs its corresponding clock counter to start (or stop) when it sends (or receives) a message (or another message). It will be appreciated that sending or receiving a message takes a finite amount of time. Therefore, instructions are sent at a specific reference point in the message. As shown, a convenient reference point may be a "start of message" (SOM) symbol or indicator. Alternatively, the reference may be selected to be an "end of message" (EOM) symbol or indicator. Those skilled in the art will appreciate that the options mentioned above are not exclusive, and other convenient reference points within or associated with the sending of a message may be selected, and may depend on the specific communication protocol used. It will be appreciated that the present disclosure is not limited to any specific communication protocol.

[0039] Now consider Figure 4, which shows a flow chart according to one or more embodiments of the present disclosure. According to a first aspect, the method begins at step 410 by sending a message, which may also be referred to as a response, by the most remote BCC (in this case BCC 3) and starting its clock counter. At step 415, the immediately adjacent BCC (in this case BCC 2) forwards the response and starts its own clock counter. The message is forwarded in sequence through any intermediate BCCs (not shown) until, at step 420, the BCC closest to the BMU (in this case BCC 1 closest to the master node) forwards the response and starts its own clock counter. At step 425, the master node (that is, the BMU) receives the response and starts its own clock counter. Once the BMU receives the response, it initiates another message, which in this case is a no operation (NOP) request. It will be appreciated by those skilled in the art that the message need not be a NOP message; in fact, the message can be any message, for example, a message that is not related to measurement because only the SOM, not the message content, is used for measurement. At step 430, the BMU sends this request and stops its clock counter. At step 435, the immediately adjacent BCC (that is, BCC1 in this example) forwards the request and stops its clock counter. The request is received and forwarded by any intermediate BCCs (not shown) until the request reaches the second to last BCC. At step 440, BCC 2 forwards the request and stops its clock counter. The most remote BCC, in this case BCC 3, receives the request, which at step 445 receives the request and stops its own clock counter. With just these two timing messages, the communication delay between the BMU (that is, the master node) and any BCC can be calculated.

[0040] In a further step 450, the BMU master node may send the value of Tmeasured[master] to all BCCs. Furthermore, before the most remote BCC sends a message also referred to as a response, the BMU master node may send a corresponding request, for example, "Send Read BCC 3anyReg" as shown at 405. Furthermore, this message from the master node may be preceded by another message, such as "WriteAllComPathMeasurment" discussed above with reference to message 280, as shown at step 400.

[0041] It should be understood that Figure 4As shown in the flowchart, the method steps taken by any individual module or unit (such as BMU (master node) or BCC1) have been positioned in the same horizontal row in the figure. Therefore, the flowchart does not flow from the top of the figure to the bottom of the figure as in a common flowchart. In addition, in the case of optional steps such as 405 ("Master node: send read BCC 3any rag"), the message is not transmitted directly to the BCC, but as shown by process flow line 407, the message is transmitted along the communication chain (that is, in this example, through BCC1, BCC2, and thus transmitted to BCC3).

[0042] Figure 5 Schematically illustrates a method of ensuring simultaneous operation of multiple BCCs (in this example, three BCC1, BCC 2, and BCC 3) using communication delays determined according to an embodiment of the present disclosure. The passage of time is indicated along the horizontal line, and values ​​associated with BCC1 are shown at the top of the figure, values ​​associated with BCC2 are shown in the middle section, and values ​​associated with BCC3 are shown in the bottom section. The "turnaround time" Tmeasured[main] of the BMU calculated as described above is shown separately at 510, and the interval counts Tmeasured[1], Tmeasured[2], and Tmeasured[3] of each BCC are shown at 520, 530, and 540, respectively. By subtracting Tmeasured[main] and halving the result, the communication delay for each BCC is calculated, as depicted by TCD1, TCD2, and TCD3 at 522, 532, and 542, respectively. Next, time Tmax 550 is selected, preferably such that Tmax is greater than or equal to the maximum of TCD1, TCD2, and TCD3. In the present example, since BCC3 is the most remote BCC, TCD3 is the maximum of these values, and time Tmax 550 is selected to be greater than TCD3.

[0043] The instruction may then be sent from the BMU at time 560. For operations at a future time, it is limited by Tmax. The instruction is in turn received by each of BCC 1, BCC 2, and BCC 3 at the end of their respective communication delays TCD1 522, TCD2 532, and TCD3 542. Upon receiving the instruction, BCC1 delays the execution of the instruction by the time delay shown at 524, which is equal to Tmax minus TCD1. Similarly, upon receiving the instruction, BCC2 delays the execution of the instruction by the time delay shown at 524 equal to Tmax minus TCD2, and upon receiving the instruction, BCC3 delays the execution of the instruction by the time delay shown at 524 equal to Tmax minus TCD3. As can be seen from the figure, the execution of the instruction by each of the BCCs then occurs simultaneously at the time shown at 570.

[0044] like Figure 5 As shown in , each BCC may postpone or delay the implementation of the command by a corresponding calculated delay in order to synchronize the corresponding actions of the BCCs. Alternatively and without limitation, the communication delay TComDelay calculated for each BCC may be used to mathematically correct the measurement result of the action (e.g., by correcting the phase of the measured signal by the delay).

[0045] From reading this disclosure, other variations and modifications will be apparent to the skilled person.Such variations and modifications may involve equivalent and other features which are already known in the art of battery management systems and which may be used as alternatives or supplements to the features already described herein.

[0046] Although the attached claims refer to specific combinations of features, it should be understood that the scope of the disclosure of the present invention also includes any novel feature or any novel combination of features or any generalized form thereof disclosed explicitly or implicitly herein, regardless of whether it relates to the same invention currently claimed in any claim or whether it alleviates any or all technical problems that are the same as the technical problems alleviated by the present invention.

[0047] It should be noted that one or more of the above embodiments have been described with reference to different subject matters. Specifically, some embodiments may be described with reference to method-type claims, while other embodiments may be described with reference to apparatus-type claims. However, those skilled in the art should understand from the above that, unless otherwise indicated, any combination of features related to different subject matters (specifically, a combination of features of a method-type claim with features of an apparatus-type claim) in addition to any combination of features belonging to one type of subject matter is also considered to be disclosed with this document.

[0048] Features described in the context of separate embodiments may be provided in combination in a single embodiment. Conversely, various features that are, for brevity, described in the context of a single embodiment may also be provided separately or in any suitable subcombination.

[0049] For the sake of completeness, it is also stipulated that the term "comprising" does not exclude other elements or steps, the term "a" or "an" does not exclude that a plurality, a single processor or other unit can realize the functions of several components described in the claims [delete if not relevant], and the reference numerals in the claims should not be interpreted as limiting the scope of the claims. In addition, the word "may" is used in a permissive sense (i.e., meaning having the possibility of...) rather than a mandatory sense (i.e., meaning must). Similarly, the words "include / including / includes" mean including but not limited to.

Claims

1. A method for operating a battery management system, characterized in that: The battery management system comprises a communication chain, wherein the communication chain comprises a battery management unit BMU and a plurality of battery cell controllers BCC, The method comprises: The most remote BCC among the BCCs sends a message toward the BMU and starts a local clock counter; Each BCC in the rest of the BCC receives the message, forwards the message toward the BMU, and starts a corresponding local clock counter; The BMU receives the message and starts a BMU clock counter; The BMU sends a further message towards the most remote of the BCCs and stops the BMU clock counter to determine a BMU interval count; each BCC in the remaining portion of the BCCs receives the further message, forwards the further message towards the most remote BCC in the BCCs, and stops the respective local clock counter to determine a respective local interval count; The most remote of the BCCs receives the further message and stops the most remote local clock counter to determine its local interval count; The BMU sends the BMU interval count to each of the plurality of BCCs in the BCC; and Each of the plurality of BCCs determines a respective communication delay from its respective local interval count and the BMU interval count.

2. The method according to claim 1, characterized in that: The most remote of the BCCs sending a message toward the BMU is in response to the BMU sending an initial message.

3. The method according to claim 1 or 2, characterized in that: The BMU clock counter and the corresponding local clock counter each operate at the same speed.

4. The method according to claim 3, characterized in that The respective communication delay of each of the plurality of BCCs is half of a difference between its respective local interval count and the BMU interval count.

5. A method according to any of the preceding claims, characterised in that Starting the respective local clock counter occurs at the beginning of the respective forwarding of the message, and stopping the respective local clock counter occurs at the beginning of the respective forwarding of the further message.

6. The method according to any one of claims 1 to 4, characterized in that Starting the respective local clock counter occurs at the end of the respective forwarding of the message, and stopping the respective local clock counter occurs at the end of the respective forwarding of the further message.

7. A method according to any of the preceding claims, characterised in that Starting the respective local clock counter is triggered by a reference associated with the message, wherein the reference depends on the communication protocol used.

8. A method according to any of the preceding claims, characterised in that Further included synchronizing actions of the plurality of BCCs.

9. The method according to claim 8, characterized in that Synchronizing the actions of the plurality of BCCs includes each of the BCCs receiving a command and implementing the command after a delay equal to a default delay that is less than its respective communication delay.

10. A battery management system BMS, characterized in that: include: Battery management unit BMU; and a plurality of battery cell controllers (BCCs) configured in a communication chain with the BMU and including a most remote BCC; The most remote BCC is configured as follows: Sending a message towards the BMU and starting a most remote clock counter; and receiving a second message, stopping said most remote clock counter to determine its local interval measurement; Wherein each BCC in the rest of the BCC is configured as: receiving the message, forwarding the message toward the BMU and starting a corresponding local clock counter; and receiving the second message, forwarding the second message toward the most remote BCC of the BCCs, and stopping the corresponding local clock counter to determine a corresponding local interval measurement value; The BMU is configured as follows: Receive the message and start the BMU clock counter; sending a further message towards the most remote of the BCCs and stopping the BMU clock counter to determine a BMU interval measurement; and sending the BMU interval measurement to each of the plurality of BCCs; And wherein each of the plurality of BCCs is further configured to determine a respective communication delay as half of a difference between its respective local interval measurement value and the BMU interval measurement value.