Method for automatically recognizing controllers in battery management systems
10017070 ยท 2018-07-10
Assignee
Inventors
Cpc classification
Y02T10/70
GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
B60L58/21
PERFORMING OPERATIONS; TRANSPORTING
B60R16/03
PERFORMING OPERATIONS; TRANSPORTING
International classification
H02J7/00
ELECTRICITY
B60R16/023
PERFORMING OPERATIONS; TRANSPORTING
Abstract
A method for automatically detecting a replacement of a control unit in a battery management system including a battery control unit includes allocating a one-way function to each control unit. The one-way function uses x and y to output z. The input y is a sensor_ID that uniquely identifies the control unit concerned. The method further includes providing a random number generated by the battery control unit to the first control unit at every system start-up as input x. The result z from the first control unit is used as the input x for the subsequent one-way function of the subsequent, second control unit until the nth control unit. The result z of the nth control unit is transmitted to the battery control unit. The method further includes generating a final ID and comparing the final ID with the result z of the nth control unit.
Claims
1. A method for detecting a replacement of a sensor control unit in a battery management system, the method comprising: allocating, with a battery control unit connected to each sensor control unit in a plurality of sensor control units in the battery management system, a one-way function in a plurality of one-way functions to each sensor control unit in the plurality of sensor control units, each one-way function in the plurality of one-way functions using inputs (i) a variable x and (ii) a variable y to output a result z and the input variable y being a sensor_ID that uniquely identifies each sensor control unit in the plurality of sensor control units; transmitting, with the battery control unit, a random number generated with a random number generator in the battery control unit to a first sensor control unit in the plurality of sensor control units during a start-up of the battery management system, the random number being input as the variable x to a first one-way function in the plurality of one-way functions of the first sensor control unit, the result z from the one-way function of the first sensor control unit being used as the input variable x for a second one-way function in the plurality of one-way functions of a subsequent, second sensor control unit in the plurality of sensor control units, and determining the result z of at least one subsequent sensor control unit in the plurality of sensor control units until an nth sensor control unit in the plurality of sensor control units, wherein the plurality of sensor control units includes n sensor control units; transmitting, with the nth sensor control unit, the result z of the nth sensor control unit to the battery control unit; defining, with the battery control unit, the plurality of one-way functions of of the plurality of sensor control units in the battery control unit using the sensor_IDs of the plurality of sensor control units; applying, with the battery control unit, the random number generated in the battery control unit to each one-way function in the plurality of one-way functions allocated to the plurality of sensor control units to generate a final ID in the battery control unit; detecting, with the battery control unit, a replacement of at least one sensor control unit in the plurality of the sensor control units in response to a comparison of the final ID generated in the battery control unit with the result z of the nth sensor control unit not matching; and inhibiting or limiting, with the battery control unit, operation of at least one battery module connected to the battery management system in response to the detecting of the replacement of the at least one sensor control unit.
2. The method as claimed in claim 1, further comprising: providing with the battery control unit, an individual sensor_ID to each sensor control unit in the plurality of sensor control units at a time of first use.
3. The method as claimed in claim 1, further comprising: storing each sensor_ID allocated to the plurality of sensor control units in a memory of a sensor control unit in the plurality of sensor control units that corresponds to each sensor_ID and storing each sensor_ID in a memory of the battery control unit.
4. The method as claimed in claim 1, further comprising: storing, with the battery control unit, each sensor_ID allocated to the plurality of sensor control units in a memory of the battery control unit.
5. The method as claimed in claim 1, wherein the battery control unit allocates each sensor control unit in the plurality of sensor control units with a different one-way function in the plurality of one-way functions by virtue of the sensor_IDs used as the input variable y of each one-way function of each of the sensor control units.
6. The method as claimed in claim 1, the transmitting of the random number further comprising: transmitting, with the battery control unit, the random number to the first sensor control unit using a data bus wherein the first sensor control unit also transmits measurement data measured from the at least one battery module to the battery control unit using the data bus.
7. The method as claimed in claim 1, further comprising: applying, with the battery control unit, the random number generated in the battery control unit sequentially to each one-way function in the plurality of one-way functions allocated to the plurality of sensor control units.
8. The method as claimed in claim 1, further comprising: selecting, with the battery control unit, the plurality of one-way functions from a group of cryptographic functions, hash functions and prime-number multiplication functions.
9. The method as claimed in claim 1, further comprising: enabling, with the battery control unit, operation of the at least one battery module in the battery management system in response to determining that each sensor control unit in the plurality of sensor control units is configured in an original state in the battery management system if the final ID determined in the battery control unit matches the output result z transmitted by the nth sensor control unit.
10. The method as claimed in claim 1, wherein the sensor_ID is a 32 bit number.
11. The method as claimed in claim 6, wherein the data bus is a controller area network (CAN) bus.
12. The method as claimed in claim 6, wherein the measurement data are battery-cell voltages, currents and temperature.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) The disclosure is explained in greater detail below with reference to the drawing, in which:
(2)
(3)
(4)
EMBODIMENT VARIANTS
(5)
(6) The battery control unit 14 (BCU) and a first sensor control unit 18, a second sensor control unit 22 and an nth sensor control unit 26 communicate with one another via the data bus 12. The first sensor control unit 18 controls and/or monitors a first battery module 16, which comprises a number of electrically interconnected battery cells. Similarly, the second sensor control unit 22 controls and/or monitors a second battery module 20, which likewise comprises a number of electrically interconnected battery cells. An nth sensor control unit 26 controls and/or monitors an nth battery module 24, which likewise comprises a number of electrically interconnected battery cells. The 1 to n battery modules 16, 20, 24 shown here constitute a battery pack, which can be used as a traction battery for a hybrid vehicle or for an electric vehicle.
(7)
(8)
(9) The generators 28 provided in the battery control unit 14 generate as many sensor_IDs as there are sensor control units 18, 22, 26 installed in the battery pack. The nth generator 28 finally generates the sensor_ID for the nth sensor control unit 26. The sensor_ID for the nth sensor control unit 26 is transmitted to a memory 36 for the sensor_ID of the nth sensor control unit 26 via a communications connection 34 between the nth generator 28 and the nth sensor control unit 26, and permanently stored in the memory 36 of the nth sensor control unit 26. The sensor_ID is a 32-bit number for instance.
(10) The diagram of
(11)
(12) Based on the diagram of
(13) The initialization process shown in
(14) The verification shown in
(15) For the purpose of verifying the individual sensor control units 18, 22, 26, the random number generated in the generator 40 is transmitted to an input 62 of the first sensor control unit 18 and to a unit 42, which transforms the variables x and y.sub.1 in accordance with the one-way function (f(x,y.sub.1)=z.sub.1). The first sensor control unit 18 receives the random number from the battery control unit 14. This random number constitutes the variable x in the one-way function (f(x,y.sub.1)=z.sub.1) implemented in the first sensor control unit in the unit 42. The sensor_ID transmitted to the first sensor control unit 18 in the initialization process shown in the diagram in
(16) In
(17) The behavior in a further sensor control unit, which is not shown in
(18) It is clear from the diagram in
(19) The same calculations are performed in parallel in the battery control unit 14 (BCU), in parallel with this verification process for the sensor control units 18, 22, 26 connected to the battery control unit 14:
(20) The result z.sub.1 is obtained via the unit 42, in which the first one-way function is implemented, from the random number generated in the generator 40 and from the sensor_ID for the first sensor control unit 18. z.sub.1 constitutes the x-variable of the subsequent, second one-way function 44 of the second sensor control unit, which calculates the result z.sub.2 using the function f (x=z.sub.1, sensor_ID for the second sensor control unit=y.sub.2). The result z.sub.2 from the second sensor control unit in turn constitutes the input value for the subsequent, third sensor control unit, the one-way function of which calculates the result z.sub.3 according to the relationship f(z.sub.2 sensor_ID for the third sensor control unit y.sub.3), and so forth. Finally in the nth sensor control unit, the result z.sub.N is determined according to the relationship f(n.sub.1, sensor_ID, y.sub.N).
(21) In the comparison stage 56, a comparison is performed from the result z.sub.N fed back via the output 70 from the nth sensor control unit 26, which result is determined in the calculation stage 68 of the nth sensor control unit 26 and is applied to the second input 60 of the battery control unit 14, and from the final ID 54 calculated in the battery control unit 14. If the numbers obtained match, none of the sensor control units 18, 22, 26 have been replaced in the battery management system 10. If, on the other hand, the numbers do not match, then at least one of the sensor control units 18, 22, 26 has been swapped.
(22) In the event that one of the sensor control units 18, 22, 26 has been replaced illicitly, the following response options are available:
(23) The battery control unit 14 inhibits operation of the battery pack comprising the battery modules 16, 20, 24 because not all of the sensor control units 18, 22 and 26 are still in the original state.
(24) In addition, the battery control unit 14 (BCU) can be configured such that in this case it permits only limited operation because not all the sensor control units 18, 22, 26 are still in the original state.
(25) There is also the option for the battery control unit 14 to interrogate individual sensor control units 18, 22 and 26 in the event of an error being detected. For instance the aim of this interrogation may be to query which of the sensor control units 18, 22, 26 is the replaced sensor control unit. The fact that the individual sensor_IDs of the individual sensor control units 18, 22, 26 (in the original state) are stored in the battery control unit 14 means that it is possible to identify the replaced unit amongst the sensor control units 18, 22, 26 by a sequential comparison of the one-way functions, as implemented in the units 42, 44, 46 of the sensor control units 18, 22, 26.
(26) In the case of a faulty sensor control unit 18, 22, 26 being replaced, there is also the option of training the new sensor control unit. This initialization process (see the diagram in
(27) If, however, the battery control unit 14 (BCU) has been replaced, the following response options are available:
(28) A new initialization process can be performed for all the sensor control units (see the diagram in