Beschreibung Titel
Verfahren zur automatischen Erkennung von Steuergeräten in
Batteriemanagementsystemen
Stand der Technik
Elektronische Steuergeräte werden im automobilen Umfeld heutzutage in zunehmender Zahl eingesetzt. Sie finden ihre Verwendung in modernen Kraftfahrzeugen als Motorsteuergeräte, Steuergeräte für das ABS-System, für die Auslösung des Airbags usw.. Bei in Entwicklung befindlichen elektrisch angetriebenen Fahrzeugen ist die Entwicklung von Batteriepacks mit einem zugehörigen Batteriemanagementsystem erforderlich. Beim
Batteriemanagementsystem handelt es sich um Steuergeräte mit Software zur Bewachung der Batteriefunktionalität. Abhängig von den Anforderungen des jeweiligen Kunden oder vorhandenen Bauräumen im Kraftfahrzeug, sind die Topologien von Batteriepacks bezogen auf die Anzahl von Batteriezellen, Batteriemodulen, Sensoren oder dergleichen sehr vielfältig.
Typische Batteriemanagementsysteme gewährleisten im allgemeinen die sichere und zuverlässige Funktion der Batteriezellen und der Batteriepacks. Sie überwachen und steuern Ströme, Spannungen, Temperaturen, Isolationswiderstände und andere Größen für die Batteriezellen und den ganzen Batteriepack. Mit Hilfe dieser Größen lassen sich
Managementfunktionen realisieren, die die Lebensdauer, die Zuverlässigkeit und die
Sicherheit des Batteriesystems erheblich steigern können.
In der Regel umfassen Batteriemanagementsysteme eine Vielzahl von Steuergeräten, auf denen unterschiedliche implementierte Softwarefunktionalitäten ablaufen. Abhängig von der Anzahl der Batteriezellen, von der Anzahl der Sensoren und der Verteilung der
Batteriemodule auf verschiedene Bauräume am Fahrzeug ergibt sich eine
Steuergerätetopologie mit einem Hauptsteuergerät (BCU = Battery Control Unit) und einer Anzahl mehrerer untergeordneter Sensorsteuergeräte für die Erfassung von Messdaten. Bei den zu erfassenden Messdaten handelt es sich insbesondere um Spannungen,
Temperaturen und Ströme, die direkt an den einzelnen Batteriemodulen gemessen werden. Die erfassten Messdaten werden im Allgemeinen zwischen den einzelnen Steuergeräten, d.h. den Sensorsteuergeräten und dem Hauptsteuergerät über einen Kommunikationsbus, bei dem es sich insbesondere um ein CAN-Bus handeln kann, ausgetauscht.
Aus DE 10 2006 048 555 A1 ist ein Steuergerät bekannt. Das Steuergerät umfasst einen ersten integrierten Schaltkreis, der einen Mikrocontroller und einen programmierbaren Speicher aufweist, ferner mindestens einen weiteren integrierten Schaltkreis, wobei der weitere integrierte Schaltkreis eine feste programmierte Identifikationsinformation aufweist. Der programmierbare Speicher des ersten integrierten Schaltkreises enthält eine
Kontrollinformation, die eine Überprüfung der Identifikationsinformation erlaubt.
Da zwar identische Sensorsteuergeräte in verschiedenen Projekten eingesetzt werden, jedoch abhängig von den Projektparametern mit anderen Daten versehen werden, was die Spannungs- und Stromgrenzen abhängig von den Leistungsdaten der verwendeten
Batteriezellen betrifft, ist sicherzustellen, dass Sensorsteuergeräte ohne Erkennung durch das Hauptsteuergerät (BCU) des Batteriemanagementsystems ausgetauscht werden können. Durch den Einbau eines neuen Sensorsteuergerätes, welches für leistungsfähigere Batterien ausgelegt ist, kann die Batterie unerlaubterweise außerhalb der Spezifikation betrieben werden, was zum Beispiel ein„Tuning" durch den Endkunden ermöglichen würde. Aus Sicherheitsgründen und insbesondere aus Gewährleistungsgründen muss ein derartiger Austausch erkannt und verhindert werden. Das Batteriemanagementsystem kann bei Erkennung eines unerlaubten Austausches eines Steuergerätes, insbesondere eines Sensorsteuergerätes, die Verwendung des betreffenden Batteriepacks, innerhalb dessen der Austausch stattgefunden hat, sperren.
Darstellung der Erfindung
Erfindungsgemäß wird ein Verfahren zur Erkennung eines Austausches mindestens eines Steuergerätes in einem Batteriesystem vorgeschlagen, bei dem für alle innerhalb des Batteriemanagementsystems eingesetzten Steuergeräte eine Einwegfunktion f(x,y) -»■ z definiert wird, welche folgende Eigenschaften aufweist:
Einerseits ist der Funktionswert z der Einwegfunktion einfach zu berechnen, andererseits jedoch die Umkehrung der Funktion sehr aufwendig durchführbar. Für das erfindungsgemäß
vorgeschlagene Verfahren in Frage kommende Einwegfunktionen finden sich in der
Kryptographie, so beispielsweise als Hash-Funktionen und eine Funktion zur Multiplikation von Primzahlen und dergleichen mehr. Die Einwegfunktion wird in allen innerhalb des Batteriemanagements verwendeten
Steuergeräten implementiert. Die Steuergeräte, in denen die Einwegfunktionen implementiert sind, werden von einem Hauptsteuergerät des Batteriemanagementsystems gesteuert. Der Wert y in der Einwegfunktion ist insbesondere eine eindeutige Sensor-Identifikation
(SensorJD), beispielsweise eine 32-Bit-Zahl des Sensorsteuergerätes. Durch den
Parameter y wird sichergestellt, dass gleiche Einwegfunktionen in unterschiedlichen
Steuergeräten unterschiedliche Ergebnisse liefern.
Dem erfindungsgemäß vorgeschlagenen Verfahren folgend erfolgt, beispielsweise werkseitig ein einmaliges Initialisieren der Steuergeräte. Dies erfolgt dadurch, dass jedes innerhalb des Batteriemanagementsystem eingesetzte Steuergerät bei der ersten Verwendung vom Hauptsteuergerät eine individuelle SensorJD erhält, zum Beispiel die oben stehend bereits erwähnte 32-Bit-Zahl. Bei dieser individuellen SensorJD kann es sich beispielsweise um eine Zufallszahl handeln. Diese Zufallszahl bestimmt die Einwegfunktion für die später durchzuführende Verifikation. Unter diesem Vorgang wird das Initialisieren der Steuergeräte verstanden. Die SensorJD wird, unabhängig davon, ob sie durch Bestimmung einer
Zufallszahl oder durch Festlegung einer SensorJD durch das Hauptsteuergerät entstanden ist, dauerhaft im Steuergerät, insbesondere im Sensorsteuergerät gespeichert.
Zusätzlich speichert das Hauptsteuergerät (BCU) des Batteriemanagementsystems alle innerhalb eines Batteriepacks aus mehreren Batteriezellen mit mehreren Steuergeräten vergebene SensorJD's. Somit hat jedes der eingesetzten Steuergeräte, insbesondere jedes Sensorsteuergerät eine eigene SensorJD und alle Steuergeräte unterschiedliche
Einwegfunktionen, da der Parameter y der Einwegfunktion f(x,y) von Steuergerät zu
Steuergerät variiert. Die Zuteilung der Zufallszahl, d.h. der SensorJD erfolgt beispielsweise auf dem gleichen Kommunikationsweg wie später ein Austausch von Messdaten. Bei dem Kommunikationsweg kann es sich beispielsweise um ein Fahrzeugdatenbus, insbesondere um einen CAN-Datenbus eines Fahrzeugs handeln.
Dem erfindungsgemäß vorgeschlagenen Verfahren folgend, erfolgt eine Verifikation der Steuergeräte dadurch, dass das Hauptsteuergerät (BCU) des Batteriemanagementsystems
bei jedem Systemstart eine Zufallszahl erzeugt. Die Zufallszahl wird an das erste Sensorsteuergerät über den Datenbus, beispielsweise den CAN-Bus übermittelt. Dort geht die Zufallszahl als Eingabewert in die Einwegfunktion des Steuergerätes ein, wobei das Ergebnis der Einwegfunktion abhängig von der SensorJD dieses Steuergerätes ist. Das erhaltene Ergebnis wird an das zweite Sensorsteuergerät übermittelt. Hier findet die
Berechnung mittels der Einwegfunktion statt, die am zweiten Steuergerät implementiert ist. Dieses Verfahren der Weitergabe der Ergebnisse von einem Steuergerät, insbesondere eines Sensorsteuergerätes, an das nächste findet solange statt, bis das letzte Steuergerät, insbesondere Sensorsteuergerät, in der Kette sein Ergebnis an das Hauptsteuergerät (BCU) des Batteriemanagementsystems versendet.
Im Hauptsteuergerät (BCU) des Batteriemanagementsystems sind alle SenorJD's bekannt, so dass somit sämtliche Einwegfunktionen der einzelnen Steuergeräte, insbesondere Sensorsteuergeräte, im Hauptsteuergerät (BCU) des Batteriemanagementsystems bestimmt werden können. Die anfangs erzeugte Zufallszahl wird im Hauptsteuergerät (BCU) sequentiell in alle Einwegfunktionen eingegeben. Wenn die im Hauptsteuergerät (BCU) des Batteriemanagementsystem berechnete ID mit der vom letzten Steuergerät, insbesondere vom letzten Sensorsteuergerät übermittelten ID übereinstimmt, befinden sich alle original eingebauten Sensorsteuergeräte, insbesondere Sensorsteuergeräte in der Kette. Andernfalls wurde eine Sensorsteuergerät ausgetauscht.
Durch das erfindungsgemäß vorgeschlagene Verfahren besteht eine Sicherheit vor
Missbrauch. Falls nämlich jemand unerlaubterweise ein Steuergerät, insbesondere ein Sensorsteuergerät des Batteriemanagementsystems austauschen möchte, muss er erst die SensorJD des auszutauschenden Steuergerätes kennen und in das neue Steuergerät programmieren, um das Hauptsteuergerät (BCU) zu täuschen. Nach und nach ist nachfolgend der ganze Wertebereich der SensorJD's in das neue Steuergerät zu programmieren und zu vergleichen, ob in beiden Steuergeräten, dem alten, d.h. dem ausgebauten und dem neuen, dem einzubauenden die gleiche Einwegfunktion vorhanden ist. Zwar kann durch das erfindungsgemäße vorgeschlagene Verfahren nicht gänzlich verhindert werden, dass ein neues einzusetzendes Steuergerät, insbesondere ein neu einzusetzendes Sensorsteuergerät, so programmiert wird, dass es die Verifikation beim Hochfahren des Batteriemanagementsystems besteht; jedoch ist dieser Vorgang durch Wahl der Einwegfunktion extrem aufwendig und gestaltet sich als nicht lohnenswert
nachvollziehbar.
Vorteile der Erfindung
Mit dem erfindungsgemäß vorgeschlagenen Verfahren zur automatischen Erkennung eines Austausches von Steuergeräten in einem Batteriemanagementsystems kann insbesondere erkannt werden, wenn ein Steuergerät ausgetauscht wurde. Durch die Initialisierung des erfindungsgemäß vorgeschlagenen Verfahrens bei einem jeden Systemneustart, d.h. bei einem jeden Start des Batteriemanagementsystems, lässt sich die Detektion relativ schnell durchführen. Zur Durchführung des Verfahrens ist ein vergleichsweise geringes
Datenaufkommen bei einer Verifikation der Steuergeräte erforderlich, ferner wird das Hauptsteuergerät (BCU) des Batteriemanagementsystems durch den erforderlichen
Abgleich, der bei der Verifikation durchgeführt wird, nur sehr gering belastet.
Das erfindungsgemäß vorgeschlagene Verfahren zeichnet sich durch eine relativ hohe Sicherheit gegen Missbrauch vor, da ein jedes der Steuergeräte durch Verwendung der SensorJD als Funktionsparameter unterschiedliche Einwegfunktionen vorweist. Ferner ist darauf hinzuweisen, dass die Einwegfunktion nicht mittels Analysen der Kommunikation umkehrbar sind. Dies bedeutet, dass das Versehen eines getauschten Steuergerätes mit der passenden ID zur Täuschung des Hauptsteuergerätes fast ausgeschlossen werden kann.
Bei dem erfindungsgemäß vorgeschlagenen Verfahren tritt keine Verzögerung des
Hochfahrvorgangs des Batteriemanagementsystems auf, da ein Abgleich der ID's parallel zur restlichen Kommunikation durchgeführt werden kann und der Datenbus, insbesondere der CAN-Datenbus des Batteriemanagementsystems nur gering belastet wird.
Mittels des vorgeschlagenen Verfahrens ist eine einfache implementierende Einwegfunktion möglich. Alle Sensorsteuergeräte verfügen über ein- und dieselbe Implementierung der Einwegfunktion, erst der Parameter SensorJD macht die Einwegfunktion zur Identifikation unterschiedlicher Steuergeräte, insbesondere unterschiedlicher Sensorsteuergeräte im Batteriepack eindeutig. Da die per Einwegfunktion berechneten Werte von Steuergerät zu Steuergerät geschickt werden und im empfangenden Steuergerät als Eingangswerte dienen, wird das Umkehren der Einwegfunktion zusätzlich erschwert.
Kurze Beschreibung der Zeichnungen
Anhand der Zeichnung wird die Erfindung nachstehend eingehender erläutert. Es zeigt:
Figur 1 den Aufbau eines Batteriemanagementsystems,
Figur 2 ein Initialisieren von Steuergeräten, insbesondere Sensorsteuergeräten durch ein
Hauptsteuergerät (BCU) eines Batteriemanagementsystems, und
Figur 3 die Durchführung einer Verifikation angeschlossener Steuergeräte, insbesondere
Sensorsteuergeräte durch ein Hauptsteuergerät (BCU) eines
Batteriemanagementsystems.
Ausführungsvarianten
Figur 1 zeigt ein Batteriemanagementsystem 10 mit seinen wichtigsten Komponenten. Ein Batteriemanagementsystem 10 gemäß der schematischen Darstellung in Figur 1 umfasst einen Daten-Bus 12, bei dem es sich im Allgemeinen bei Automobilanwendungen um einen CAN-Bus handelt. Das Batteriemanagementsystem 10 umfasst ein Hauptsteuergerät 14 (BCU = Battery Control Unit), welches eine Anzahl von Sensorsteuergeräten 18, 22, 26 steuert.
Das Hauptsteuergerät 14 (BCU) und ein erstes Sensorsteuergerät 18, ein zweites
Sensorsteuergerät 22 und ein n-tes Sensorsteuergerät 26 kommunizieren über den Daten- Bus 12 miteinander. Das erste Sensorsteuergerät 18 steuert und/oder überwacht ein erstes Batteriemodul 16, welches eine Anzahl von elektrisch miteinander verschalteten
Batteriezellen umfasst. Analog steuert und/oder überwacht das zweite Sensorsteuergerät 22 ein zweites Batteriemodul 20, welches ebenfalls eine Anzahl elektrisch miteinander verschalteter Batteriezellen umfasst. Ein n-tes Sensorsteuergerät 26 steuert und/oder überwacht ein n-tes Batteriemodul 24, welches ebenfalls mit einer Anzahl von elektrisch miteinander verschalteten Batteriezellen umfasst. Die hier dargestellten 1 bis n
Batteriemodule 16, 20, 24 stellen ein Batteriepack dar, welches als Traktionsbatterie für ein Hybrid- oder für ein Elektrofahrzeug eingesetzt werden kann.
Figur 2 zeigt Sensorsteuergeräte 14, 18, 26 eines Batteriemanagementsystems, welche mit initialen SensorJD's durch ein Hauptsteuergerät des Batteriemanagementsystems initialisiert werden.
Figur 2 zeigt, dass im Hauptsteuergerät 14 des Batteriemanagementsystems mehrere Erzeuger 28 vorgesehen sind, die SensorJD's für die einzelnen Sensorsteuergeräte 18, 26 generieren. Vorzugsweise sind dabei für n Sensorsteuergeräte 18, 22, 26 n Erzeuger 28 vorgesehen. Damit umfasst das Hauptsteuergerät 14 n Erzeuger 28, die jeweils mit einem Sensorsteuergerät 18, 22, 26 in Verbindung stehen. Über eine Kommunikationsverbindung 30 zwischen dem Hauptsteuergerät 14 und dem zweiten Sensorsteuergerät 18 wird eine SensorJD, die für das zweite Sensorsteuergeräte 18 bestimmt ist und dieses eindeutig identifiziert. Die für das zweite Sensorsteuergerät 18 bestimmte SensorJD wird im zweiten Sensorsteuergerät 18 in einem Speicher 32 abgelegt, dort dauerhaft gespeichert und darf nicht verändert werden.
Die im Hauptsteuergerät 14 vorgesehenen Erzeuger 28 generiert so viele SensorJD's wie Sensorsteuergeräte 18, 22, 26 im Batteriepack verbaut sind. Schließlich generiert der n-te Erzeuger 28 die SensorJD für das n-te Sensorsteuergerät 26. Über eine
Kommunikationsverbindung 34 zwischen dem n-ten Erzeuger 28 und dem n-ten
Sensorsteuergerät 26 wird die SensorJD für das n-te Sensorsteuergerät 26 an einen Speicher 36 für die SensorJD des n-ten Sensorsteuergerätes 26 übertragen, und im Speicher 36 des n-ten Sensorsteuergerätes 26 dauerhaft abgelegt. Bei der SensorJD handelt es sich beispielsweise um eine 32-Bit-Zahl.
In der Darstellung gemäß Figur 2 ist eine Initialisierung der SensorJDs für die einzelnen Sensorteuergeräte 18, 22, 26 dargestellt. Die durch das Hauptsteuergerät 14 an jedes der Sensorsteuergeräte 18, 22, 26 individuell vergebene SensorJD bestimmt eine
Einwegfunktion f(x,y) -»■ z. Diese Einwegfunktionen sind sowohl im Hauptsteuergerät 14 implementiert, als auch individuell in einem jeden der Sensorsteuergeräte 18, 22 und 26, die in entsprechender Anzahl, abhängig von der Anzahl der zu überwachenden Batteriemodule im Batteriemanagementsystem 10, vorgesehen sind.
Figur 3 zeigt einen Verifikationsvorgang, der durch das erfindungsgemäß vorgeschlagene Verfahren durchgeführt wird und sich an das in Figur 2 dargestellte Initialisieren gemäß des
erfindungsgemäß vorgeschlagenen Verfahrens für die Sensorsteuergeräte 18, 22, 26 anschließt.
Ausgehend von der Darstellung gemäß Figur 2 in der ein Initialisierungsprozess der
Sensorsteuergeräte 18, 22, 26 dargestellt ist, erhält jedes der Sensorsteuergeräte 18, 22, 26 bei der ersten Verwendung vom Hauptsteuergerät 14 eine individuelle SensorJD, bei der es sich beispielsweise um eine 32-Bit-Zahl handelt. Diese Zufallszahl bestimmt die
Einwegfunktionen f(x,y) -»■ z, die in den Einheiten 42, 44, 46 der Sensorsteuergeräte 18, 22, 26 implementiert ist. Die Einwegfunktionen werden in den Einheiten 42, 44, 46 der beteiligten Sensorsteuergeräte 18, 22, 26 implementiert. Die Variable y in der Funktion f(x,y) -»■ z stellt eine eindeutige SensorJD des jeweiligen Sensorsteuergerätes 18, 22, 26 dar. Durch die Variable y, d.h. durch die eindeutige SensorJD wird sichergestellt, dass gleiche
Einwegfunktionen, die jedoch in unterschiedlichen Einheiten 42, 44, 46 der
Sensorsteuergeräte 18, 22, 26 implementiert werden, jeweils unterschiedliche Ergebnisse liefern.
Der in Figur 2 dargestellte Initialisierungsvorgang der einzelnen Sensorsteuergeräte 18, 22, 26 wird nur bei der ersten Inbetriebnahme eines Batteriepacks werkseitig vorgenommen. Das Hauptsteuergerät 14 erzeugt für jedes der Sensorsteuergeräte 18, 22, 26 die SensorJD und übermittelt diese an die jeweiligen Sensorsteuergeräte 18, 22, 26 über den Datenbus 12, der insbesondere als CAN-Bus ausgebildet ist. In diesem werden die SensorJD's dauerhaft gespeichert und dienen als Variablen für die in den Einheiten 42, 44, 46 der jeweiligen Sensorsteuergeräte 18, 22, 26 implementierten Einwegfunktionen. Zusätzlich werden die SensorJD's im Hauptsteuergerät 14 gespeichert. Beim Initialisierungsvorgang handelt es sich um einen einmaligen Vorgang, der in gesicherter Umgebung im Werk stattfindet. Es ist sicherzustellen, dass dieser Vorgang nicht von Unbefugten protokolliert wird. Der
Initialisierungsvorgang stellt die einzige Möglichkeit dar, genaue Kenntnisse über die einzelnen Einwegfunktionen zu erhalten. Die in Figur 3 dargestellte Verifizierung innerhalb des Batteriemanagements 10 an das
Hauptsteuergerät 14 angeschlossener Sensorsteuergeräte 18, 22, 26, wird bei einem jeden Start des Batteriemanagementsystems 10 durchgeführt. Dazu generiert das
Hauptsteuergerät 14 eine Zufallszahl. Die Zufallszahl wird in mindestens einem Erzeuger 40 des Hauptsteuergerätes 14 (BCU) erzeugt. Des Weiteren umfasst das Hauptsteuergerät 14 gemäß der Darstellung in Figur 3 Speicher 48, 50, 52. Im ersten Speicher 48 ist die
Sensor_ID für das erste Sensorsteuergerät 18 gespeichert, während im zweiten Speicher 50 die SensorJD für das zweite Sensorsteuergerät 22 hinterlegt ist. Schließlich umfasst das Hauptsteuergerät 14 einen n-ten Speicher 52, in dem die SensorJD für das n-te
Sensorsteuergerät 26 hinterlegt ist. Des Weiteren sind im Hauptsteuergerät 14 des
Batteriemanagementsystems 10 sämtliche in den Einheiten 42, 44, 46 implementierten Einwegfunktionen für die jeweils angeschlossenen Sensorsteuergeräte 18, 22, 26 bekannt. Des Weiteren umfasst das Sensorsteuergerät eine Rechenkapazität, die eine endgültige ID, vergleiche Position 54 bestimmt sowie eine Vergleichsstufe 56. Die Funktion der
Vergleichsstufe 56 wird nachstehend noch beschrieben.
Zur Verifikation der einzelnen Sensorsteuergeräte 18, 22, 26 wird die im Erzeuger 40 erzeugte Zufallszahl an einen Eingang 62 des ersten Sensorsteuergerätes 18 und an eine Einheit 42, die die Variablen x und yi gemäß der Einwegfunktion (f(x,yi) = z-ι) transformiert, übermittelt. Das erste Sensorsteuergerät 18 empfängt die Zufallszahl vom Hauptsteuergerät 14. Diese Zufallszahl stellt die Variable x der im ersten Sensorsteuergeräte in der Einheit 42 implementierten Einwegfunktion (f(x,yi) = z-ι) dar. Die beim Initialisierungsvorgang gemäß der Darstellung in Figur 2 an das erste Sensorsteuergerät 18 übermittelte SensorJD ist im Speicher 32 des ersten Sensorsteuergerätes 18 bekannt und stellt die Variable yi des ersten Sensorsteuergerätes 18 dar. Aus der Einwegfunktion f(xi,yi) = z-ι wird das Ergebnis z-i errechnet. Dies erfolgt in der Berechnungsstufe 64. Von dieser aus wird das errechnete Ergebnis z-ι an einen Eingang 66 eines nachfolgenden Sensorsteuergeräts 26 übermittelt.
In Figur 3 ist durch den punktierten Pfeil zwischen dem in Figur 3 dargestellten ersten Sensorsteuergerät 18 und dem n-ten Sensorsteuergerät 26 angedeutet, dass es sich um eine Vielzahl von mit dem Hauptsteuergerät 14 verbundener Sensorsteuergeräte handeln kann.
Bei einem in Figur 3 nicht dargestellten weiteren Sensorsteuergerät verhielte es sich so, dass dieses das Ergebnis des ersten Sensorsteuergerätes 18 erhält und aus diesem Ergebnis, d.h. der Zahl z-i, die die Variable x der Einwegfunktion 44 des zweiten
Sensorsteuergerätes darstellt, der eigenen SensorJD, y2 und der Einwegfunktion f(x(x = Zi , y2 = SensorJD Sensorsteuergeräte 2) das Ergebnis z2 berechnet. Das Ergebnis z2 würde an ein in Figur 3 ebenfalls nicht dargestelltes drittes Sensorsteuergerät gesendet und dort verarbeitet. Das in Figur 3 dargestellte n-te Sensorsteuergerät 26 empfängt das Ergebnis vom vorhergehenden Sensorsteuergerät n-1 und berechnet aus diesem Ergebnis z(n-1 ),
welche der Variablen x für die n-te Einwegfunktion 46 des n-ten Sensorsteuergerätes 26 den Eingangswert der eigenen SensorJD yN bildet und das Ergebnis zN liefert. Die Berechnung erfolgt in der Berechnungsstufe 68 des n-ten Sensorsteuergerätes 26 gemäß der Darstellung in Figur 3.
Aus der Darstellung gemäß Figur 3 geht hervor, dass dieses Ergebnis zN am Ausgang 70 zurück zum Hauptsteuergerät 14 gesendet wird und das Ergebnis zN an einen zweiten Eingang 60 der Vergleichsstufe 56 gesendet wird. Parallel zu diesem Verifikationsvorgang der an den mit dem Hauptsteuergerät 14
verbundenen Sensorsteuergeräte 18, 22, 26 erfolgt, werden im Hauptsteuergerät 14 (BCU) parallel die gleichen Berechnungen durchgeführt:
Aus der in dem Erzeuger 40 generierten Zufallszahl und der SensorJD für das erste Sensorsteuergerät 18 wird über die Einheit 42, in der die erste Einwegfunktion implementiert ist, das Ergebnis z-ι erhalten, z-ι stellt die x-Variable der nachfolgenden, zweiten
Einwegfunktion 44 des zweiten Sensorsteuergerätes dar, welches anhand der Funktion f (x = z-i , SensorJD für das zweite Sensorsteuergerät =y2) das Ergebnis z2 berechnet. Das Ergebnis z2 des zweiten Sensorsteuergerätes wiederum stellt den Eingangswert für das nachfolgende dritte Sensorsteuergerät dar, dessen Einwegfunktion gemäß der Beziehung f(z2 SensorJD für das dritte Sensorsteuergerät y3) das Ergebnis z3 berechnet, und so fort. Im n-ten Sensorsteuergerät schließlich wird gemäß der Beziehung f(n-i , SensorJD, yN) das Ergebnis zN bestimmt. Aus dem über den Ausgang 70 vom n-ten Sensorsteuergerät 26 zurückgemeldeten Ergebnis zN, welches in der Berechnungsstufe 68 des n-ten Sensorsteuergerätes 26 bestimmt wird und welches am zweiten Eingang 60 des Hauptsteuergerätes 14 anliegt und der im
Hauptsteuergerät 14 berechneten endgültigen ID 54, erfolgt ein Vergleich in der
Vergleichsstufe 56. Stimmen die erhaltenen Zahlen überein, wurde keines der
Sensorsteuergeräte 18, 22, 26 im Batteriemanagementsystem 10 ausgetauscht. Stimmen die Zahlen hingegen nicht überein, so wurde mindestens eines der Sensorsteuergeräte 18, 22, 26 getauscht.
Für den Fall, dass eines der Sensorsteuergeräte 18, 22, 26 unzulässigerweise ausgetauscht wurde, stehen folgende Reaktionsmöglichkeiten zur Verfügung:
Das Hauptsteuergerät 14 sperrt den Betrieb des Batteriepacks, umfassend die Batteriemodule 16, 20, 24, da nicht mehr alle Sensorsteuergeräte 18, 22, und 26 im
Originalzustand sind.
Weiterhin kann das Hauptsteuergerät 14 (BCU) derart konfiguriert sein, dass dieses im vorliegenden Fall nur einen eingeschränkten Betrieb zulässt, da nicht mehr alle
Sensorsteuergeräte 18, 22, 26 im Originalzustand sind.
Des Weiteren besteht die Möglichkeit, im Hauptsteuergerät 14 im detektierten Fehlerfalle eine Abfrage einzelner Sensorsteuergeräte 18, 22, und 26 zu implementieren. Diese Abfrage kann beispielsweise darauf gerichtet sein, dass abgefragt wird, welches der
Sensorsteuergeräte 18, 22, 26 das ausgetauschte Sensorsteuergerät ist. Aufgrund des Umstandes, dass die einzelnen SensorJD's der einzelnen Sensorsteuergeräte 18, 22, 26 (im Originalzustand) im Hauptsteuergerät 14 gespeichert sind, kann durch einen auf sequentiellem Wege erfolgenden Abgleich der Einwegfunktionen, wie sie in den Einheiten 42, 44, 46 der Sensorsteuergeräte 18, 22, 26 implementiert sind, das Ausgetauschte der Sensorsteuergeräte 18, 22, 26 identifiziert werden.
Des Weiteren besteht die Möglichkeit, im Falle eines Austausche eines defekten
Sensorsteuergerätes 18, 22, 26 das neue Sensorsteuergerät anzulernen. Dieser
Initialisierungsvorgang, vergleiche Darstellung und Beschreibung zu Figur 2 gemäß dem Vorstehenden, sollte beispielsweise nur in einer Werkstatt möglich sein und gesondert abgesichert werden, zum Beispiel durch ein bereits existierendes
Verschlüsselungsverfahren.
Wird hingegen das Hauptsteuergerät 14 (BCU) ausgetauscht, stehen folgende
Reaktionsmöglichkeiten zur Verfügung:
Es kann ein neuer Initialisierungsvorgang für alle Sensorsteuergeräte (vergleiche Darstellung gemäß Figur 2) erfolgen, der durch ein bereits existierendes Verschlüsselungsverfahren abgesichert sein kann. Alternativ besteht die Möglichkeit, die im defekten Hauptsteuergerät 14 gespeicherten SensorJD's in das neue Hauptsteuergerät, welches in das
Batteriemanagementsystem integriert wird, zu übernehmen, falls diese Übernahme auf abgesichertem Wege möglich ist.