-
Die vorliegende Erfindung betrifft allgemein Systeme, die über ein Kommunikationsnetzwerk miteinander verbundene Hardware-Einrichtungen enthalten, sowie Verfahren zum automatischen Erkennen einer verbundenen Einrichtung und zum Konfigurieren der Einrichtung mit der richtigen Software für einen optimalen Betrieb des Systems. Insbesondere betrifft die Erfindung Systeme und Verfahren zum Feststellen Problemen hinsichtlich der Hardware- und/oder Software-Kompatibilität und zum automatischen Konfigurieren von von der Position abhängigen, miteinander verbundenen Hardware-Einrichtungen in Steuersystem-Netzwerken.
-
In den letzten Jahren wurde viel Aufwand betrieben, um eine elektronische „Plug-and-Play”-Technik für die Verwendung in unterschiedlichen Anwendungen zu entwickeln. Diese Technik sieht eine relativ einfache Schnittstelle zwischen verschiedenen Hardware-Einrichtungen gewöhnlich über eine mit einem Stecker versehene Verbindungsschnittstelle vor. Die Technik ermöglicht eine weitgehend automatische Kommunikation zwischen zwei verbundenen Einrichtungen, sodass der Benutzer lediglich einen minimalen Aufwand betreiben muss, um die Funktionen der verschiedenen Hardware-Einrichtungen miteinander zu kombinieren. Diese Eigenschaften sind sowohl für die Anbieter von Hardware- und Software-Produkten als auch für die Endbenutzer äußerst vorteilhaft.
-
Die bestehende Plug-and-Play-Technik funktioniert meistens sehr gut, wobei dennoch Probleme auftreten können. Zum Beispiel ist der volle Funktionsumfang der Plug-and-Play-Einrichtungen allgemein von der Hardware- und Software-Kompatibilität der miteinander verbundenen Einrichtungen abhängig. Viele Endbenutzer von Einrichtungen tun sich jedoch schwer, die Kompatibilität von Hardware oder Software zu beurteilen, sodass sie häufig falsche Kombinationen von Hardware oder Software wählen. Dies ist insbesondere dann der Fall, wenn die Funktion von ansonsten ähnlichen Einrichtungen von der Position der miteinander verbundenen Einrichtungen in einem Netzwerk abhängig ist und verschiedene Einrichtungen verwechselt werden können. Wenn die miteinander vernetzten Einrichtungen im Rahmen einer Wartung getrennt, erneut verbunden oder ersetzt werden, können Hardware- und Software-Inkompatibilitäten auftreten, die einen korrekten Betrieb des Netzwerks verhindern. Derartige Hardware- und Software-Inkompatibilitäten können in bestimmten Anwendungen wie etwa elektronischen Steuersystemen für Fahrzeuge schwer festzustellen und zu analysieren sein, sodass hier ein Bedarf für Verbesserungen besteht.
-
1 ist eine vereinfachte, schematische Darstellung eines beispielhaften Systemnetzwerks, das eine Anzahl von miteinander verbundenen Steuereinrichtungen sowie eingebettete Identifikations- und Konfigurationsschlüssel für die Steuereinrichtungen umfasst.
-
2 zeigt beispielhafte Daten für die Steuereinrichtungen und Schlüssel von 1.
-
3 ist ein Flussdiagramm zu beispielhaften Prozessen, die in dem System von 1 mit dem Datenaufbau von 2 ausgeführt werden.
-
Im Folgenden werden beispielhafte Ausführungsformen von Steuersystemen und Verfahren beschrieben, die zahlreiche Nachteile aus dem Stand der Technik beseitigen. Um das Konzept der Erfindung zu verdeutlichen, ist die folgende Beschreibung in verschiedene Abschnitte unterteilt, wobei zuerst die Probleme der bestehenden Plug-and-Play-Technik in bestimmten Anwendungen erläutert werden und anschließend beispielhafte Systeme und Verfahren zum Überwinden dieser Probleme beschrieben werden.
-
Wie weiter oben genannt, kann es unter Umständen schwierig sein, inkompatible Hardware und Software von in einem Netzwerk miteinander verbundenen Einrichtungen zu erfassen. Wenn Probleme hinsichtlich der Hardware- und Software-Kompatibilität bestehen, kann dies zu einer funktionsunfähigen Kombination von Einrichtungen führen. Wenn die Benutzer gewünschte Funktionen nicht ausführen können, ist die Inkompatibilität für die Benutzer offensichtlich. Die Benutzer bemerken also rasch, dass die Einrichtungen nicht korrekt funktionieren und versuchen, das Problem zu beheben.
-
Eine problematischere Situation ergibt sich, wenn Hardware- und Software-Kompatibilitätsprobleme zwischen miteinander verbundenen Einrichtungen auftreten, die aber nicht unmittelbar für die Endbenutzer oder Bediener eines die Einrichtungen enthaltenden Systems erkennbar sind. Es kann zum Beispiel aussehen, als ob das System und/oder die miteinander verbundenen Einrichtungen korrekt miteinander kommunizieren und funktionieren würden, obwohl dies nicht der Fall ist. Zum Beispiel kann ein nicht-optimalen Betrieb der miteinander vernetzten Einrichtungen verursacht werden, ohne dass der Benutzer dies bemerkt. In einigen Anwendungen können die damit verbundenen Implikationen unerwünscht, aber wenigstens nicht schwerwiegend sein. In anderen Anwendungen können die Auswirkungen aber durchaus bedeutend sein.
-
Eine Anwendung, bei der eine Inkompatibilität zwischen den miteinander vernetzten Hardware- und Software-Einheiten schwerwiegende Konsequenzen haben kann, sind elektronische Steuersysteme. Elektronische Steuersysteme werden in weiter Verbreitung eingesetzt, zum Beispiel in Steuersystemen mit offenem oder geschlossenem Regelgreis für verschiedene Anwendungen wie etwa die Überwachung und den Betrieb von Maschinen, Anlagen, Industrieprozessen und Fahrzeugen verschiedener Typen.
-
Der korrekte Betrieb eines Steuersystems für diese beispielhaften Anwendungen kann durch inkompatible Hardware-Einrichtungen und/oder Software-Kompatibilitätsprobleme, die durch miteinander verbundene Steuereinrichtungen in dem Steuersystem bedingt werden, beeinträchtigt werden. Steuerungen mit offenem oder geschlossenem Regelkreis können dabei unter Umständen nicht korrekt betrieben werden und einen nicht-optimalen Betrieb der assoziierten Maschinen oder Einrichtungen zur Folge haben. Unter anderem können unerwünschte Leistungsprobleme auftreten, die zu wirtschaftlichen Verlusten oder möglicherweise sogar zu Schäden an den mit dem Steuersystem assoziierten Komponenten führen können. Unter Umständen kann dies sogar zu gefährlichen Situationen führen.
-
Moderne Fahrzeuge werden durch komplexe elektronische Steuersysteme mit einer Vielzahl von elektronischen Steuereinheiten (ECUS) gesteuert, die über ein Netzwerkprotokoll wie etwa CAN (Controller Area Network) miteinander verbunden sind. In einigen Fahrzeug-Netzwerken führt jede ECU in dem System eine oder mehrere spezifische Aufgaben zum Überwachen oder Steuern eines Subsystems des Fahrzeugs und bestimmter Komponenten oder Betriebsaspekte aus. Die durch die ECU ausgeführten Aufgaben hängen von der korrekten Platzierung und dem Typ der ECU sowie von der korrekten Platzierung und dem Typ der verbundenen Fahrzeugkomponenten für jede ECU ab. Damit die ECUs die erforderlichen Aufgaben erfüllen, muss jede ECU in dem Netzwerk entsprechend konfiguriert sein und muss die richtige Anwendungssoftware in die ECU geladen sein.
-
Die ECUs in einem bestimmten Netzwerk werden gewöhnlich durch den Originalhersteller auf einer anwendungsspezifischen Basis programmiert, um eine korrekte Kommunikation zwischen den ECUs und dem Betrieb des Fahrzeugs sicherzustellen. Dazu wird gewöhnlich jede ECU in dem Netzwerk mit einer Hardware-Kennzeichnung versehen, die ihre gewöhnlich als Knoten bezeichnete Position in dem Fahrzeug angibt. Die Hardware-Kennzeichnung sieht eine Basis für die Installation der geeigneten Software für jede ECU vor. Herkömmlich werden Knotenkennzeichnungen manuell durch die Einstellung von Drahtbrücken oder DIP-Schaltern zugewiesen, wobei die vernetzten ECUs unter Verwendung von speziellen Einrichtungen wie etwa einem PC, einem Kabel oder einer speziellen Softwareanwendung vorprogrammiert werden. Natürlich können dabei versehentlich falsche Hardware-Kennzeichnungen oder Knotenkennzeichnungen für eine bestimmte ECU gewählt werden. Bei den zunehmend komplexen Steuersystemen, die eine große Anzahl von ECUs und Knoten umfassen, treten derartige Fehler mit einer größeren Wahrscheinlichkeit auf als früher und sind auch schwieriger festzustellen. Zum Beispiel kann ein modernes Fahrzeug in der Originalausstattung Steuersysteme mit zehn oder mehr ECUs enthalten. Eine effektive Verwaltung einer großen Anzahl von ECUs bringt praktische Probleme mit sich und stellt die Originalhersteller vor große Herausforderungen.
-
Später können dann in Verbindung mit Reparatur- und Wartungsprozeduren eine oder mehrere der ECUS falsch installiert werden können oder kann eine vorhandene ECU versehentlich durch eine hinsichtlich der Hardware oder Software inkompatible ECU ersetzt werden. Zum Beispiel kann im Verlauf von Wartungs- oder Reparaturarbeiten an einem Fahrzeug versehentlich eine hinsichtlich der Hardware oder der Software inkompatible ECU mit dem Netzwerk verbunden werden. Wie zuvor bemerkt, können die dadurch verursachten Konsequenzen unter Umständen nicht unmittelbar für einen Techniker deutlich sein, sondern langfristige Probleme für den Betrieb des Fahrzeugs zur Folge haben. Weiterhin können in Verbindung mit dem Einbau von Zubehör oder anderen optionalen Funktionen und Einrichtungen, die durch andere Anbieter als den Fahrzeughersteller angeboten werden, inkompatible ECUs in das System eingeführt werden.
-
Mit der Zunahme von ECUs in Fahrzeugen und anderen Systemen werden vermehrt auch Plug-and-Play-Einrichtungen eingesetzt. Dabei können Fahrzeug-Subsysteme durch verschiedene Hersteller für die Nachrüstung in einem Fahrzeug entweder durch den Originalhersteller oder durch einen anderen Anbieter bereitgestellt werden. Je größer jedoch die Anzahl der ECUs in einem Fahrzeug wird, desto größer ist die Gefahr von falschen oder inkompatiblen ECUs. In einigen Fahrzeug-Subsystemen wie etwa Motorsteuerungen sind die Netzwerke häufig derart beschaffen, dass keine Rückmeldung für einen menschlichen Bediener vorgesehen wird. Der menschliche Bediener ist bei derartigen Systemen kaum in der Lage, Hardware- oder Software-Inkompatibilitäten festzustellen. Und auch wenn sich die Techniker bemühen, sicherzustellen, dass ECUs des korrekten Typs ersetzt oder neu eingeführt werden, korrekt programmiert werden und korrekt im Netzwerk identifiziert werden, können trotzdem Fehler mit den weiter oben genannten Folgen auftreten.
-
Um menschliche Fehler bei der Installation von ECUs wenigstens teilweise zu vermeiden, wurde die Verwendung von so genannten generischen ECUS für die Nutzung in generischen Steuernetzwerken vorgeschlagen. In einem vorgeschlagenen generischen Netzwerk dieses Typs kann eine voll funktionstüchtige Anwendung in jedem der Module des Netzwerks gespeichert werden. Die vollständig funktionstüchtige Anwendung umfasst ausführbare Befehle für jede ECU in dem Netzwerk. Jede ECU überträgt ein Signal über das Netzwerk, damit ihre Konfiguration beim Hochfahren bestimmt werden kann. Wenn eine Ersatz-ECU installiert wird, kann die Ersatz-ECU über ein derartiges Signal erkannt werden. Und wenn die Ersatz-ECU noch keine entsprechende Software enthält, kann die Ersatz-ECU entsprechende Software-Befehle von einer der vorhandenen ECUs in dem Netzwerk herunterladen. Derartige Systeme sind vorteilhaft, weil die Techniker sich nicht selbst um die spezifische Programmierung einer einzelnen ECU kümmern müssen.
-
Wenn derartige generische ECUS verwendet werden, muss jedoch weiterhin die Position oder der Knoten der Ersatz-ECU in dem Netzwerk korrekt identifiziert werden, weil der Betrieb der Ersatz-ECU in dem vernetzten System von der Position abhängig ist. Es ist also in allen generischen ECUs eine vollständig funktionstüchtige Anwendung enthalten, wobei die verschiedenen ECUs in dem Netzwerk jeweils verschiedene Teile der Anwendung ausführen. Der durch eine bestimmte Ersatz-ECU auszuführende Teil der Software ist davon abhängig, wo die Ersatz-ECU in dem Netzwerk installiert wird. In Netzwerken mit einer Vielzahl von möglichen ECU-Positionen oder Knoten können die korrekte Identifikation der Position oder des Knotens der Ersatz-ECU in dem Netzwerk einerseits und die Auswahl der entsprechenden Eingaben zum Identifizieren der Position oder des Knotens der Ersatz-ECU andererseits unter Umständen sehr schwierig sein. Menschliche Fehler bei der Wartung, Reparatur oder Modifikation von vernetzten Systemen mit darin enthaltenen generischen ECUs können also weiterhin nicht ausgeschlossen werden.
-
Im Folgenden werden beispielhafte Netzwerke, Systeme und Verfahren für elektronische Steuersysteme beschrieben, in denen mögliche menschliche Fehler bei der Installation und Wartung von Netzwerken mit darin verbundenen Steuereinrichtungen weitgehend oder sogar vollständig vermieden werden. Die Systeme und Verfahren umfassen eindeutige Identifikations- und Konfigurationsschlüssel, die an bestimmten Positionen in dem Netzwerk eingebettet sind. Die Schlüssel vereinfachen eine automatische Identifikation von spezifischen Positionen oder Knoten der verbundenen Hardware-Einrichtungen wie etwa der elektronischen Steuereinheiten (ECUs) in einem größeren Steuernetzwerk. Die in dem Netzwerk eingebetteten Identifikationsschlüssel unterstützen auch eine automatische Konfiguration von mit dem Netzwerk zu verbindenden Einrichtungen sowie automatische Softwareaktualisierungen für neu erkannte Einrichtungen, um eine Software-Kompatibilität und einen korrekten Systembetrieb in Verbindung mit der Position der Einrichtung in dem Netzwerk sicherzustellen, wobei es sich zum Beispiel um Fahrzeugfunktionen in Entsprechung zu den ECU-Positionen handeln kann.
-
1 ist eine vereinfachte, schematische Darstellung eines Steuernetzwerks 100, das eine Anzahl von miteinander verbundenen Steuereinrichtungen wie etwa elektronischen Steuereinheiten (ECUs) 102, 104, 106 in einer beispielhaften Umgebung umfasst. Die ECUs werden gelegentlich auch als „Steuereinheiten” oder „Steuermodule” bezeichnet. Die ECUs in den beispielhaften Ausführungsformen sind jeweils programmierbare, Prozessor-basierte Einrichtungen, die einen Speicher enthalten, in dem Befehle und Daten gespeichert werden können. In anderen Ausführungsformen können die Steuereinrichtungen aber auch von einem anderen Typ sein, der allgemein als Controller oder Mikrocontroller bezeichnet wird, wobei es sich aber auch um eine andere Prozessor-basierte Einrichtung für die Verwendung in verschiedenen Steuerungen und Systemen für andere Anwendungen als in einem Fahrzeug handeln kann.
-
In einer Ausführungsform ist die ECU 102 eine Master- oder Manager-ECU, während die ECUs 104 und 106 Slave-Einrichtungen in einem dem Fachmann bekannten verteilten Steuersystem sind. In anderen Ausführungsformen können auch andere Anordnungen von Steuereinrichtungen verwendet werden, wobei in einer Ausführungsform zum Beispiel jede der ECUs 102, 104 und 106 als Master oder Slave funktionieren kann. Es sind hier der Einfachheit halber drei ECUs 102, 104 und 106 gezeigt, wobei jedoch auch mehr oder weniger ECUs verwendet werden können. In einer typischen Anwendung sind viel mehr als nur drei ECUs vorgesehen. Das Netzwerk 100 kann ECUs enthalten, die mit 1 bis N nummeriert sind, wobei N eine Variable ist. Gewöhnlich ist N um so höher, je größer die Komplexität des Netzwerks 100 und/oder des gesteuerten Systems (z. B. des Fahrzeugs) ist. Praktischen Grenzen für die Anzahl N von miteinander verbundenen Einrichtungen in dem Netzwerk 100 sind lediglich durch die Speicherkapazität der Steuereinrichtungen zum Speichern der für alle Steuereinrichtungen in dem Netzwerk 100 benötigten Anwendungsbefehle gegeben, wobei Netzwerkkommunikations-Leistungsprobleme auftreten können, wenn größere Anzahlen von Steuereinrichtungen vorhanden sind.
-
Das Netzwerk 100 kann auch erweitert werden, indem während einer Nachrüstung weitere ECUS eingeführt werden. Die Anzahl N der Steuereinrichtungen in dem Netzwerk 100 kann sich also über die Zeit ändern.
-
Die Vorteile der hier beschriebenen Systeme und Verfahren der Erfindung sind um so größer, je größer die Anzahl N von ECUs in dem Netzwerk 100 ist (wie weiter oben genannt, kann ein modernes Fahrzeug in seiner Originalausstattung ungefähr 80 ECUS oder mehr enthalten), wobei die Systeme und Verfahren aber auch in einer Ausführungsform mit nur zwei Steuereinrichtungen effektiv implementiert werden können. Außerdem können die ECUs 102, 104 und 106 auch nach Bedarf und Wunsch aus dem Netzwerk 100 entfernt oder ausgetauscht werden. In einer beispielhaften Ausführungsform werden die ECUs in dem ursprünglichen Aufbau des Netzwerks 100 als im wesentlichen identische Hardware-Einrichtungen vorgesehen, die alle dieselbe Software und denselben Datenaufbau aufweisen, sodass die ECUs 102, 104 und 106 allgemein miteinander ausgetauscht werden können. Wenn jedoch eine oder mehrere der ursprünglich vorgesehenen ECUs hinsichtlich der Hardware oder der Software inkompatibel sind, kann die Inkompatibilität wie weiter unten erläutert festgestellt werden.
-
Die ECUs 102, 104, 106 können in einer beispielhaften Ausführungsform wie gezeigt über einen Kommunikationsbus 108 miteinander verbunden sein, wobei in anderen Ausführungsformen aber auch andere Kommunikationsverbindungen verwendet werden können. Die ECUs 102, 104, 106 können über ein Netzwerkkommunikationsprotokoll wie etwa das bekannte Controller Area Network (CAN) miteinander kommunizieren, wobei aber auch andere aus dem Stand der Technik bekannte Kommunikationsprotokolle für die Kommunikation der ECUs 102, 104, 106 verwendet werden können. In dem gezeigten beispielhaften Steuernetzwerk 100 führt jede ECU 102, 104, 106 spezifische Aufgaben aus, die mit spezifischen Komponenten assoziiert sind. Die durch jede ECU 102, 104, 106 ausgeführten spezifischen Aufgaben unterscheiden sich gewöhnlich voneinander, wobei die durch jede ECU 102, 104, 106 ausgeführten Aufgaben von der physikalischen Position der entsprechenden ECUs 102, 104, 106 in dem Netzwerk, von dem Typ der mit jeder ECU verbundenen Komponenten und den durch jede ECU zu steuernden Funktionen abhängen. Damit die ECUs 102, 104, 106 die entsprechenden Aufgaben ausführen können, muss jede der ECUs 102, 104, 106 entsprechend konfiguriert sein und muss die richtige Anwendungssoftware in die ECUs 102, 104, 106 geladen sein.
-
In einer beispielhaften Ausführungsform sind die ECUs 102, 104 und 106 vorgesehen, um verschiedene Aspekte eines Fahrzeugs 110 (in 1 durch Strichlinien angegeben) zu überwachen und zu steuern. Das Fahrzeug 110 kann in verschiedenen Ausführungsformen ein Personenfahrzeug (z. B. ein Motorrad, Auto, Lastwagen oder Bus für die Nutzung auf Straßen), ein Nutzfahrzeug (z. B. eine Zugmaschine, ein Postauto, ein Lieferwagen, ein Müllwagen oder ein Gabelstapler), ein Baufahrzeug (z. B. ein Bagger, ein Bulldozer, eine Planiermaschine, eine Walze oder ein Muldenkipper), ein Militärfahrzeug, ein Geländefahrzeug (z. B. ein Traktor, ein Allradfahrzeug, ein Sportfahrzeug, ein Geländemotorrad, ein Strandbuggy, ein Rock-Crawler, ein Sandrail, ein Schneemobil oder ein Golfcart), ein Wasserfahrzeug (z. B. ein Schiff, ein Boot oder ein U-Boot), ein Luftfahrzeug (z. B. ein Flugzeug oder ein Hubschrauber), ein Raumfahrzeug (z. B. eine Rakete, ein Satellit oder ein Shuttle), ein Freizeitfahrzeug (z. B. ein Wohnmobil oder ein Wohnwagenanhänger) oder ein anderes Fahrzeug zum Transportieren von Personen oder Gegenständen sein, das durch mechanische, elektrische oder andere Systeme und Subsysteme angetrieben und betrieben wird.
-
Weiterhin können die das Steuernetzwerk 100 enthaltenden beispielhaften Fahrzeuge bemannt (d. h. wenigstens teilweise durch Menschen an Bord des Fahrzeugs betrieben oder gesteuert werden), unbemannt sein (d. h. ohne menschliche Mithilfe betrieben oder gesteuert werden) oder ein Kombination aus diesen beiden Typen sein. Das Netzwerk 100 und die ECUs 102, 104 und 106 sind gewöhnlich in den Aufbau des Netzwerks eingebettet oder integriert und werden im Fahrzeug mitgeführt, wobei aber auch möglich ist, dass ein Teil des Steuernetzwerks 100 in einer Entfernung zu dem Fahrzeug angeordnet ist.
-
Das Netzwerk 100 ist insbesondere vorteilhaft für Fahrzeug-Steuersysteme, wobei aber ähnliche Vorteile auch für Steuersysteme in nicht-Fahrzeuganwendungen erzielt werden können. Ähnliche Netzwerke können auch in verschiedenen Maschinen und Industrieanlagen für verschiedenste Anwendungen eingesetzt werden, etwa um Industrieprozesse verschiedener Arten zu überwachen und zu steuern. Die hier beschriebene Anwendung in einer Fahrzeugumgebung ist also lediglich beispielhaft und keinesfalls einschränkend aufzufassen, wobei die hier beschriebenen erfinderischen Konzepte nicht auf eine bestimmte Anwendung beschränkt sind, außer wenn dies eigens so in den Ansprüchen definiert ist.
-
Jede ECU 102, 104, 106 ist mit einer Anzahl von Eingabe/Ausgabe-Einrichtungen (E/A-Einrichtungen) verbunden, die in einer beispielhaften Ausführungsform verwendet werden, um verschiedene Funktionen des Fahrzeugs 110 zu steuern. In dem gezeigten Beispiel ist die ECU 102 mit E/A-Einrichtungen wie etwa einer Anzeigeleuchte 112, einem Solenoid 114, einem elektronisch gesteuerten Fluidventil 116 oder einem Schalter 118 in einem ersten Subsystem 120 des Fahrzeugs 100 verbunden. Die ECU 104 ist mit E/A-Einrichtungen wie etwa einer Anzeigeleuchte 122, einem Solenoid 124, einem elektronisch gesteuerten Fluidventil 126 und einem Schalter 128 in einem zweiten Subsystem 130 des Fahrzeugs 100 verbunden. Die ECU 106 ist mit E/A-Einrichtungen wie etwa einer Anzeigeleuchte 132, einem Solenoid 134, einem elektronisch gesteuerten Fluidventil 136 und einem Schalter 138 in einem dritten Subsystem 140 des Fahrzeugs 100 verbunden. Die Subsysteme 120, 130, 140 enthalten in der gezeigten Ausführungsform jeweils ähnliche E/A-Einrichtungen, werden aber unabhängig voneinander betrieben und können verschiedene Funktionen erfüllen. Zum Beispiel können die Anzeigeleuchten 112, 122 und 132 in den verschiedenen Subsystemen zu unterschiedlichen Zwecken leuchten. Entsprechend können die Solenoide 114, 124 und 134 zu unterschiedlichen Zwecken betrieben werden. Die Fluidventile 116, 126 und 138 können verschiedene Fluide steuern, und die Schalter 118, 128 und 138 können Leistung zu verschiedenen Schaltungen zuführen. Der Betrieb der verbundenen E/A-Einrichtungen in jedem Subsystem 120, 130, 140 (oder die Reaktion der ECUS 102, 104, 106 darauf) hängt von der Konfiguration jeder ECU 102, 104, 106 und der in die ECU 102, 104 und 106 geladenen Software ab. In einer Fahrzeugumgebung werden viele der ECUs in einem geschlossenen Regelkreis von den verbundenen Komponenten aus betrieben, wobei aber auch eine Steueranordnung mit einem offenen Regelkreis möglich ist.
-
Es werden hier beispielhafte E/A-Einrichtungen für die Subsysteme 120, 130 und 140 gezeigt, wobei jedoch deutlich sein sollte, dass auch andere bekannte E/A-Einrichtungen in Kombination mit oder anstelle von den hier gezeigten E/A-Einrichtungen verwendet werden können, wobei es sich etwa um Sensoren oder Messfühler handeln kann, die die Beschleunigung, die Geschwindigkeit, die Temperatur, den Druck, die Spannung oder andere Aspekte des Fahrzeugs und der verwendeten Subsystem-Komponenten angeben. Einige der Steuereinrichtungen können über digitale Kommunikationsschnittstellen wie etwa CAN-, LIN- 1-Wire®- oder andere bekannte Schnittstellen miteinander verbunden sein. Außerdem können Bedienereingaben wie etwa Drossel-, Brems- und Lenkeingaben mit einer oder mehreren der ECUS ausgetauscht werden.
-
Es sind hier drei Subsystem 120, 130 und 140 gezeigt, wobei jedoch zu beachten ist, dass in einem modernen Fahrzeug gewöhnlich viele weitere Subsysteme verwendet werden. Typische Subsysteme für ein Auto können zum Beispiel ein Motorsteuerungs-Subsystem, ein Getriebesteuerungs-Subsystem, ein Antriebssteuerungs-Subsystem, ein ABS-Subsystem, ein Airbag-Subsystem, ein Kommunikationssteuerungs-Subsystem, ein Mensch-Maschine-Schnittstellen-Subsystem, ein Fahrzeugraumsteuerungs-Subsystem (Türschlösser, elektrische Fenster, Sonnenblenden usw.), ein Türsteuerungs-Subsystem, ein Sitzsteuerungs-Subsystem, ein Klimasteuerungs-Subsystem, ein Geschwindigkeitssteuerungs-Subsystem, ein Reifendrucküberwachungs-Subsystem, ein Komfortsteuerungs-Subsystem und ein Unterhaltungs-Subsystem sein.
-
Andere Fahrzeuge können weitere Subsysteme in Kombination mit oder anstelle der oben genannten Subsysteme in Abhängigkeit von den benötigten Funktionen des Fahrzeugs und seines Einsatzzwecks enthalten. Beispiele für derartige weitere Subsysteme sind etwa Hub-Subsysteme für Nutzfahrzeuge und Zugmaschinen, Ausleger-Subsysteme für Feuerwehrautos, Kühlsysteme für Anhänger und elektromechanische Subsysteme für spezielle Fahrzeuge und Anlagen, wobei es sich etwa um Landwirtschaftsfahrzeuge, Schneepflüge, Rasenpflegefahrzeuge usw. handeln kann. Außerdem sind nachrüstbare Zubehörvorrichtungen und Subsysteme einschließlich verschiedener ECUs für verschiedenste Fahrzeugtypen erhältlich, sodass die Fahrzeuge für verschiedene Zwecke angepasst werden können. Der Anzahl und den Typen von Subsystemen für die Verwendung in einer bestimmten Implementierung sind praktisch keine Grenzen gesetzt.
-
Für das beispielhafte Fahrzeugsystem lädt der Fahrzeughersteller gewöhnlich die entsprechende Softwareanwendung in die ECUs 102, 104 und 106 und verbindet die ECUs 102, 104 und 106 mit den entsprechenden Positionen oder Knoten 142, 144 und 146 in dem Netzwerk 100. Jeder Knoten 142, 144, 146 gibt eine spezifische Position in dem Fahrzeug und in dem Netzwerk an, an der die Komponenten der Fahrzeugsysteme 120, 130 und 140 angeordnet sind. Sobald die ECU-Konfigurationen und die Software auf einen korrekten Betrieb getestet wurden, kann das Fahrzeug 100 an einen Endbenutzer ausgeliefert werden. Wie zuvor genannt, ist der Betrieb jeder ECU 102, 104 und 106 von der Position in dem Netzwerk abhängig. Die Eingaben, die Ausgaben und die durch die ECUs 102, 104 und 106 ausgeführten Softwareteile variieren mit den besonderen Subsystemen, die mit jeder ECU assoziiert sind, und sind deshalb in den verschiedenen ECUs des Netzwerks 100 jeweils unterschiedlich.
-
Wenn in einem herkömmlichen Netzwerk dieses Typs eine der ECUs 102, 104 und 106 nach der ursprünglichen Installation ausfällt, muss sie durch eine kompatible Hardware-Einrichtung ersetzt werden (z. B. durch eine andere ECU mit einer identischen oder kompatiblen Konfiguration in der hier beschriebenen Fahrzeuganwendung) und muss die entsprechende Software in die neue Hardware-Einrichtung geladen werden, entweder vor Ort während der Wartung oder bereits durch den Hersteller der neuen Hardware-Einrichtung. Wie weiter oben erläutert, können dabei verschiedene Fehler gemacht werden, wobei etwa eine ECU mit einer inkompatiblen Hardware, eine ECU mit einer inkompatiblen Software oder der Verbindungsknoten/die Position für eine ansonsten kompatible ECU falsch gewählt werden können. Alle diese Fehler sind aus den weiter oben erläuterten Gründen problematisch und sollten vermieden werden.
-
Um menschliche Fehler und Probleme bei der Installation und Wartung des Netzwerks 100 zu vermeiden, ist jede ECU 102, 104, 106 mit einem eindeutigen Identifikationsschlüssel 150, 152, 154 versehen, anhand dem automatisch festgestellt werden kann, wo eine ursprünglich vorgesehene oder ausgetauschte ECU in dem Netzwerk verbunden ist. Die Identifikationsschlüssel 150, 152, 154 stellen eine automatische Konfiguration für ausgetauschte ECUS sicher und sorgen dafür, dass Software-Updates für die ECUs einen optimalen Betrieb des Fahrzeugs sichern. Der Identifikationsschlüssel 150, 152, 154 werden in 1 durch das Präfix UID für jede der ECUS 1 bis N in einer bestimmten Implementierung angegeben und verwendet, um Informationen zu der Position und Konfiguration jeder ECU in dem Fahrzeug zu speichern.
-
In einer beispielhaften Ausführungsform sind die Kenzeichnungsschlüssel 150, 152, 154 einfache und robuste elektronische Hardware-Einrichtungen, die in einem Kabelstrang 156, 158, 160 installiert sind, der jeweils mit den ECUs 102, 104, 106 assoziiert ist. Die Identifikationsschlüssel 150, 152, 154 werden mit den Kabelsträngen gekoppelt und bleiben an ihrer Position in dem Netzwerk 100 auch dann eingebettet, wenn die ECUs entfernt werden. In einer Ausführungsform können die Kabelstränge 156, 158 und 160 einen Teil des Kommunikationsbusses 108 für die ECUS 102, 104, 106 definieren. In einer anderen Ausführungsform können die Kabelstränge 156, 158 und 160 mit einem oder mehreren der Eingänge der ECUS 102, 104, 106 für die Komponenten in den entsprechenden Subsystemen 120, 130, 140 assoziiert sein. In weiteren Ausführungsformen können die Identifikationsschlüssel 150, 152, 154 an einer von den Kabelsträngen 156, 158 und 160 gesonderten Position in dem Netzwerk installiert sein, aber dennoch eine ähnliche Funktion erfüllen.
-
Die Identifikationsschlüssel 150, 152, 154 können digitale Halbleiterchip-Einrichtungen wie etwa 1-Wire®-ICs von Dallas Semiconductor sein, die für die Speicherung von Informationen verwendet werden. Alternativ hierzu können andere bekannte Einrichtungen zum Speichern und Identifizieren verwendet werden, wie etwa EEPROM-Einrichtungen. Die Identifikationsschlüssel 150, 152, 154 können in Steckerelementen der Kabelbäume installiert werden, die verwendet werden, um Steckerverbindungen in den entsprechenden ECUs 102, 104, 106 herzustellen. Die Installation der Identifikationsschlüssel 150, 152, 154 an einer mehr oder weniger permanent eingebetteten Position in dem Netzwerk 100 wie etwa in den Kabelbäumen 156, 158 und 160 stellt sicher, dass die Positionen der ECUS bei der Installation in dem Fahrzeug eindeutig festgestellt werden können. Weil die Identifikationsschlüssel 150, 152, 154 an einer fixen und praktisch permanenten Position in dem Netzwerk angeordnet werden, können die Positionen/Knoten automatisch durch die ECUs festgestellt werden, wenn diese installiert werden. Deshalb müssen Service- oder Reparaturtechniker die Positionen/Knoten nicht manuell feststellen, wenn ECUs ausgetauscht werden. Dadurch werden Fehler bei der Identifizierung von Knoten vermieden.
-
In einer beispielhaften Ausführungsform identifizieren die Identifikationsschlüssel 150, 152, 154 die Positionen der mit den ECUs verbundenen Knoten 142, 144, 146 in dem Netzwerk durch einmalige Identifikationsnummern. Zum Beispiel kann eine 64-Bit-ID-Seriennummer verwendet werden, um jeden einzelnen Knoten in einer großen Anzahl von Netzwerken und Fahrzeugen eindeutig zu identifizieren.
-
Außerdem können Konfigurationsdaten in den Identifikationsschlüsseln 150, 152, 154 für jeden Knoten/jede Position in dem Fahrzeugnetzwerk 100 gespeichert werden. Die Konfigurationsdaten können Netzwerkkommunikationsparameter wie etwa einen Netzwerknamen, eine Baud-Rate und andere Informationen enthalten.
-
Um die Hardware-Kompatibilität sicherzustellen, kann eine Hardwareversion mit einer Mindestkompatibilität für jede Position/jeden Knoten in dem Netzwerk 100 in den Identifikationsschlüsseln 150, 152, 154 gespeichert werden.
-
Um eine Software-Kompatibilität sicherzustellen, kann eine Softwareversion mit einer Mindestkompatibilität für jede Position/jeden Knoten in dem Netzwerk 100 in den Identifikationsschlüsseln 150, 152, 154 gespeichert werden.
-
Als weiterer Vorteil kann ein Wert für eine zyklische Redundanzprüfung in den Identifikationsschlüsseln 150, 152, 154 gespeichert werden, um zu bestimmen, ob eine Datenkorruption aufgetreten ist.
-
Die eingebetteten Identifikationsschlüssel 150, 152 und 154 können in einer Ausführungsform durch den Fahrzeughersteller mit entsprechenden Informationen versehen werden. In einer anderen Ausführungsform kann ein bestehendes Fahrzeug mit eingebetteten Identifikationselementen nachgerüstet werden, wenn die entsprechenden Konfigurationsinformationen bekannt oder verfügbar sind.
-
2 zeigt einen beispielhaften Datenaufbau 200 für die Hardware-Einrichtungen in dem Netzwerk 100 von 1. Insbesondere zeigt 2 eine datenzentrische Ansicht der in den ECUs 102, 104 und 106 gespeicherten Informationen und der entsprechenden Identifikationsschlüssel 150, 152 und 154. Jede ECU 102, 104 und 106 hält einen Datenaufbau in dem Speicher aufrecht, und jeder Identifikationsschlüssel 150, 152, 154 enthält einen entsprechenden Datenaufbau. Die Datenaufbauten der ECUs und der Identifikationsschlüssel 150, 152 und 154 gestatten eine von der Position abhängige Konfiguration jedes Identifikationselements, das mit dem in der entsprechenden ECU gespeicherten internen Datenaufbau verglichen werden soll. Indem ein derartiger Datenaufbau in dem Dateisystem jeder ECU 102, 104 und 106 vorgesehen wird, kann jede ECU beim Starten wie im Folgenden beschrieben bestimmen, ob eine korrekte Entsprechung zwischen den in den entsprechenden Identifikationsschlüsseln gespeicherten Daten und den jeweiligen ECUs vorliegt.
-
In der beispielhaften Ausführungsform von 2 enthält jede der ECUs 102, 104, 106 denselben Datenaufbau, sodass die ECUs 102, 104 und 106 allgemein untereinander austauschbar sind und an mehreren Positionen/Knoten in dem oben beschriebenen Netzwerk 100 verwendet werden können. Weil die Datenaufbauten für die ECUs 102, 104 und 106 gleich sind, wird im Folgenden nur der Datenaufbau für eine der ECUs, nämlich für die ECU 106, stellvertretend auch für den Datenaufbau der ECUs 102 und 104 beschrieben.
-
Der Datenaufbau der ECU 106 kann wie in 2 gezeigt Subaufbauten einschließlich eines ersten Konfigurations-Subaufbaus 202, eines zweiten Konfigurations-Subaufbaus 204, eines dritten Konfigurations-Subaufbaus 206 und einer Konfigurations-CRC 208 aufweisen.
-
Der erste Konfigurations-Subaufbau 202 umfasst Identifikationsschlüsseldaten 210, Hardwareversionsdaten 212, Softwareversionsdaten 214, die einen Urlader enthalten können, und Konfigurationsdaten 216. Die Konfigurationsdaten 216 können Knotenkennzeichnungsdaten, Netzwerknamensdaten, Einrichtungsbeschreibungsdaten, Einrichtungsmodusdaten und Datenrateninformationen für Netzwerkkommunikationszwecke enthalten. Die Konfigurationsdaten können auch den Code, die Algorithmen, die Daten und die Informationen enthalten, die die ECU 106 benötigt, um das in 1 gezeigte erste Fahrzeug-Subsystem 120 effektiv zu überwachen und zu steuern, wenn dieses verbunden ist. Alternativ hierzu können der Code, die Algorithmen, die Daten und die Informationen auch an einer anderen Stelle in der ECU gespeichert werden, wobei die Konfigurationsdaten 216 eine Basis für das Aufrufen und Ausführen von entsprechenden Teilen des Codes für das Überwachen und Steuern des ersten Fahrzeug-Subsystems 120 vorsieht.
-
Der zweite Konfigurations-Subaufbau 204 enthält Identifikationsschlüsseldaten 220, Hardwareversionsdaten 222, Softwareversionsdaten 224 und Konfigurationsdaten 226. Die Konfigurationsdaten 226 gestatten, dass die ECU 106 das in 1 gezeigte zweite Fahrzeug-Subsystem 130 von 1 effektiv überwacht und steuert, wenn es verbunden ist.
-
Der dritte Konfigurations-Subaufbau 206 enthält Identifikationsschlüsseldaten 230, Hardwareversionsdaten 232, Softwareversionsdaten 234 und Konfigurationsdaten 236. Die Konfigurationsdaten 236 gestatten, dass die ECU 106 das in 1 gezeigte dritte Fahrzeug-Subsystem 140 von 1 effektiv überwacht und steuert, wenn es verbunden ist.
-
Die Konfigurations-CRC 208 ist ein Code, der für den gesamten Datenaufbau in dem Dateisystem der ECU 106 erzeugt wurde und den ersten, den zweiten und den dritten Konfigurations-Subaufbau 202, 204, 208 enthält. Es sind drei Konfigurations-Subaufbauten 202, 204 und 206 gezeigt, die jeweils einer der drei ECU-Positionen von 1 entsprechen, wobei jedoch zu beachten ist, dass auch eine größere oder kleinere Anzahl von Konfigurations-Subaufbauten in Entsprechung zu der Anzahl N der tatsächlich verwendeten Steuereinrichtungen vorgesehen sein kann.
-
Der Datenaufbau für die Identifikationsschlüssel 150, 152 und 154 ist in einer beispielhaften Ausführungsform für jeden Schlüssel identisch. In dem gezeigten Beispiel enthält der Datenaufbau für den Identifikationsschlüssel 154 Identifikationsschlüsseldaten 240, Hardwareversionsdaten 242, Softwareversionsdaten 244, Konfigurationsdaten 246, eine Konfigurations-CRC 248 und ECU-Master/Slave-Daten 250.
-
Die Hardwareversionsdaten 242, die Softwareversionsdaten 244 und die Konfigurationsdaten 246 in jedem Identifikationsschlüssel 150, 152, 154 entsprechen einem der Konfigurationsaufbauten 202, 204, 206 in den entsprechenden ECUs 102, 104 und 106. Wenn also die Daten in den Identifikationsschlüsseln 150, 152, 154 durch die ECUs 102, 104 und 106 gelesen werden, können die entsprechenden ECUs bestimmen, welche der Konfigurations-Subaufbauten 202, 204, 206 an dem Verbindungspunkt gilt. Alternativ hierzu kann die ECU nach Empfang der in dem Identifikationsschlüssel empfangenen Informationen ihre spezifische Position in dem Netzwerk bestimmen und sich selbst für das Ausführen der entsprechenden Algorithmen für das besondere Subsystem in dem Steuernetzwerk 100, mit dem es verbunden wurde, konfigurieren. Jede ECU kann also an mehreren Positionen/Knoten in dem Netzwerk installiert werden, wobei sie den Verbindungspunkt automatisch erkennen und sich selbst für den Betrieb konfigurieren kann. Ein mit der Installation oder einer Wartung beschäftigter Techniker muss also über kein spezifisches Wissen zu dem Steuernetzwerk 100 verfügen und muss die Verbindungspositionen/-knoten nicht unterscheiden können, wenn er die ECUS in dem Netzwerk installiert oder wartet. Auf diese Weise wird eine fehlerhafte Identifikation der Position/des Knotens vermieden.
-
Außerdem können die Datenaufbauten in den ECUS 102, 104 und 106 und die Identifikationsschlüssel 150, 152, 154 verwendet werden, um eine Hardware- und Software-Kompatibilität der ECUs in dem Netzwerk sicherzustellen, indem ein oder mehrere Aspekte der Datenaufbauten in den ECUs und entsprechende Identifikationsschlüssel miteinander verglichen werden.
-
Das Flussdiagramm von 3 zeigt ein beispielhaftes Verfahren mit beispielhaften Prozessen 300, die durch die Steuereinrichtungen von 1 mit dem Datenaufbau von 2 verwendet werden können. In den einleitenden Schritten 302 und 304 werden die ECUs und die Identifikationsschlüssel vorgesehen.
-
In Schritt 306 liest jede ECU die in dem entsprechenden Identifikationsschlüssel gespeicherten Informationen. In Schritt 308 vergleicht jede ECU 102, 104 und 106 einen Parameter des Schlüssels mit der ECU, wobei es sich zum Beispiel um die Konfigurations-CRC handeln kann. Das heißt, in einer Ausführungsform vergleicht die ECU die in dem Dateisystem der ECU gespeicherte Konfigurations-CRC mit der in dem entsprechenden Identifikationsschlüssel 150, 152 und 154 (siehe 2) gespeicherten Konfigurations-CRC, um zu bestimmen, ob die ECU mit der eigenen Position in dem Netzwerk kompatibel ist und/oder mit anderen mit dem Netzwerk 100 verbundenen ECUS kompatibel ist.
-
Wenn in Schritt 310 die Konfigurations-CRC in dem Identifikationsschlüssel mit der in dem ECU-Dateisystem gespeicherten CRC übereinstimmt, dann tritt die ECU in Schritt 312 in einen normalen Betriebsmodus ein und beginnt damit, die entsprechende in die ECU geladene Software auszuführen. Die Knotenkennzeichnung aus dem Schlüssel gibt die Verbindungsposition der ECU für die Ausführung der entsprechenden Teile der in die ECU geladenen Softwareanwendung zum Betreiben, Überwachen und Steuern eines der Subsysteme an. Außerdem wird die Knotenkennzeichnung durch die ECU verwendet, um Netzwerkmitteilungen einschließlich von Paketkennzeichnungen in dem richtigen Protokoll zu erzeugen, das durch die anderen verbundenen Einrichtungen empfangen und verstanden werden kann.
-
Wenn in Schritt 310 die Konfigurations-CRC in dem Identifikationsschlüssel nicht mit der in dem Dateisystem der ECU gespeicherten CRC übereinstimmt, macht die ECU in Schritt 314 den darin gespeicherten Datenaufbau ungültig. In Schritt 316 vergleicht die ECU dann die Hardwareversionsdaten 242 (2) und die Software-Minimum-Urladeversionsdaten 244 (2) des Identifikationsschlüssels mit den in dem ECU-Dateisystem gespeicherten Hardwareversionsdaten 212 und den Softwareversionsdaten 214. Wenn in Schritt 318 weder die Hardwareversionsdaten 242, 212 noch die Softwareversionsdaten 244, 214 übereinstimmen, tritt die ECU nicht in den Betriebsmodus ein und signalisiert in Schritt 320 einen Hardware/Urlader-Übereinstimmungsfehler für diese Position in dem Netzwerk. Die Fehlerbedingung gibt an, dass inkompatible ECU-Einrichtungen installiert wurden. Es können verschiedene Fehlertypen erzeugt werden, wobei die Fehlersignale Informationen zu dem erfassten Fehlertyp enthalten können (z. B. Informationen zu einer Software- oder Hardware-Inkompatibilität), sodass die Probleme sofort erkannt werden können, bevor das Fahrzeug gestartet wird. Auf diese Weise bleibt das Fahrzeug in einem sicheren Standzustand, bis die Probleme des Steuernetzwerks gelöst wurden.
-
Wenn in Schritt 318 die Hardware-Versionsdaten 242, 212 und/oder die Software-Minimum-Urlader-Version 244, 214 nicht übereinstimmen, dass sendet die ECU in Schritt 322 eine Anforderung an eine der anderen mit dem Netzwerk verbundenen ECUs, damit diese ihre korrekte Softwareanwendungsdatei und Konfiguration sendet. Die ECU lädt die korrekte Softwareanwendungsdatei und die Konfigurationsdaten nach dem Empfang in Schritt 324 in den Datenaufbau und tritt dann in Schritt 326 in den normalen Betriebsmodus ein.
-
Solange wenigstens eine ECU mit einer gültigen Konfiguration und der richtigen Software in dem Netzwerk vorhanden ist, können Ersatz-ECUs installiert werden und sich selbst mit der richtigen Software konfigurieren, sofern ihre Hardware kompatibel ist. Das Dateisystem in jeder ECU in dem Netzwerk enthält nämlich die Anwendungssoftware für ihre eigene ECU und alle anderen ECUs in dem Netzwerk. Wenn eine mangelnde Softwareübereinstimmung für neu eingeführte ECUs festgestellt wird, gibt die ECU mit der Master-Konfiguration die Konfiguration und Softwareanwendung an die ECUs mit ungültigen Konfigurationen. Wenn kein Master vorhanden ist, dann übernimmt die ECU, die die höchste Knotenkennzeichnung aufweist und eine gültige Konfiguration enthält, vorübergehend die Rolle eines Master/Managers (Flying-Masters) und stellt die Software- und Konfigurationsaktualisierung bereit.
-
Es wurden hier beispielhafte Prozesse beschrieben, wobei jedoch zu beachten ist, dass viele Variationen auf der Grundlage des vorstehend beschriebenen Ansatzes mit gleichen Effekten verwendet werden können. Zum Beispiel kann ein anderer Parameter als ein CRC-Wert verwendet werden, um eine Übereinstimmung zwischen einer ECU und einem Identifikationsschlüssel zu bestimmen. Entsprechend können Vergleiche von anderen Parametern als den Hardwareversionen und den Software-Bootlader-Versionen vorgenommen werden, um Fehlerbedingungen festzustellen. In einem weiteren Beispiel kann eine ECU die erforderlichen Daten für die Konfiguration aus dem entsprechenden Schlüssel und nicht aus einer anderen ECU erhalten.
-
Die Vorteile der hier beschriebenen Systeme und Verfahren sind vielfältig. So wird zum Beispiel eine Kostenreduktion ermöglicht, weil die Installation und Wartung von Steuernetzwerken vereinfacht wird. Probleme hinsichtlich der Inkompatibilität der Hardware und Software können rechtzeitig erfasst und gelöst werden. Gesteuerte Einheiten wie etwa Fahrzeuge mit darin enthaltenen Steuernetzwerken können mit einer größeren Sicherheit bei optimalen Leistungspegeln und möglicherweise über eine längere Lebensdauer betrieben werden. Die Steuereinrichtungen können ohne detailliertes Vorwissen zu der Systemkonfiguration installiert und ausgetauscht werden, sodass menschliche Fehler und deren unerwünschte Folgen vermieden werden können.
-
Es wurde eine beispielhafte Ausführungsform eines Steuersystemnetzwerks beschrieben, das umfasst: eine Kommunikationsverbindung; eine Vielzahl von untereinander austauschbaren und ersetzbaren Steuereinrichtungen, die jeweils mit der Kommunikationsverbindung verbunden sind und operativ mit wenigstens einer Eingabe-/Ausgabeeinrichtung eines gesteuerten Systems verbunden werden können; und Identifikationsschlüssel, die jeweils mit einer Steuereinrichtung assoziiert sind, wobei jeder Identifikationsschlüssel Konfigurationsdaten für die entsprechende Steuereinrichtung enthält und durch eine der Steuereinrichtungen bei der Einführung in das Netzwerk elektronisch gelesen werden kann.
-
Optional sind die miteinander verbundenen Einrichtungen elektronische Steuereinheiten. Jede der elektronischen Steuereinheiten kann mit einem entsprechenden Subsystem der Eingabe-/Ausgabeeinrichtungen des gesteuerten Systems assoziiert sein. Jede der elektronischen Steuereinheiten kann konfiguriert sein, um ein entsprechendes Subsystem zu betreiben. Die Kommunikationsverbindung kann einen Bus umfassen. Der Identifikationsschlüssel kann an einer fixen Position in dem Netzwerk eingebettet sein. Das Steuersystem kann wenigstens einen Kabelstrang umfassen, wobei wenigstens einer der Identifikationsschlüssel in dem Kabelstrang integriert ist. Jeder der miteinander verbundenen Einrichtungen kann wenigstens eine spezifische Aufgabe erfüllen, wobei die spezifische Aufgabe von der Verbindungsposition in dem Steuersystem abhängig ist.
-
Optional kann jeder Identifikationsschlüssel einen ersten Datenaufbau mit Konfigurationsdaten und Informationen enthalten und kann weiterhin in jeder Steuereinrichtung ein zweiter Datenaufbau mit Daten und Informationen gespeichert sein, wobei jede Steuereinrichtung konfiguriert ist, um die Informationen aus dem ersten Datenaufbau mit den Informationen in dem zweiten Datenaufbau zu vergleichen und die Kompatibilität der Steuereinrichtung mit dem Netzwerk zu bestimmen. Der erste Datenaufbau kann einen ersten Code für eine zyklische Redundanzprüfung (CRC) enthalten, und der zweite Datenaufbau kann einen zweiten Code für eine zyklische Redundanzprüfung (CRC) enthalten, wobei jede Steuereinrichtung konfiguriert ist, um die erste CRC mit der zweiten CRC zu vergleichen und die Kompatibilität der Steuereinrichtung zu bestimmen, wenn sie in das Netzwerk eingeführt wird. Der erste und der zweite Datenaufbau können Konfigurationsdaten für die Steuereinrichtungen enthalten. Und wenn bei der Einführung einer Steuereinrichtung in das Netzwerk die Informationen aus dem ersten Datenaufbau nicht mit den Informationen aus dem zweiten Datenaufbau übereinstimmen, kann die Steuereinrichtung konfiguriert sein, um die Informationen in dem zweiten Datenaufbau ungültig zu machen und korrekte Konfigurationsdaten und Software von einer anderen Steuereinrichtung in dem Netzwerk anzufordern. Wenn bei der Einführung einer Steuereinrichtung die Informationen aus dem ersten Datenaufbau den Informationen aus dem zweiten Datenaufbau entsprechen, kann die Steuereinrichtung konfiguriert sein, um in einen normalen Betriebsmodus einzutreten.
-
Es wurde ein beispielhaftes Verfahren zum Erfassen der Kompatibilität einer in ein Steuersystemnetzwerk eingeführten Steuereinrichtung beschrieben. In der eingeführten Steuereinrichtung sind erste Konfigurationsdaten gespeichert, wobei das Verfahren umfasst: Vorsehen eines Identifikationsschlüssels an einer eingebetteten Position in dem Netzwerk, wobei der Identifikationsschlüssel zweite Konfigurationsdaten für eine an der eingebetteten Position eingeführte Steuereinrichtung enthält; Lesen der zweiten Konfigurationsdaten aus dem Identifikationsschlüssel durch die eingeführte Steuereinrichtung; Vergleichen eines ersten Parameters aus den ersten Konfigurationsdaten mit wenigstens einem zweiten Parameter aus den zweiten Konfigurationsdaten durch die eingeführte Steuereinrichtung; und wenn der erste Parameter aus den ersten Konfigurationsdaten mit dem zweiten Parameter aus den zweiten Konfigurationsdaten übereinstimmt, Eintreten der eingeführten Steuereinrichtung in einen normalen Betriebsmodus.
-
Optional umfasst das Vergleichen eines ersten Parameters aus den ersten Konfigurationsdaten mit wenigstens einem zweiten Parameter aus den zweiten Konfigurationsdaten das Vergleichen eines ersten Werts für eine zyklische Redundanzprüfung (CRC) aus den ersten Konfigurationsdaten mit einem zweiten Wert für eine zyklische Redundanzprüfung (CRC) aus den zweiten Konfigurationsdaten. Wenn der erste Parameter aus den ersten Konfigurationsdaten nicht mit dem zweiten Parameter aus den zweiten Konfigurationsdaten übereinstimmt, kann die eingeführte Steuereinrichtung Hardware- und Software-Parameter aus den ersten Konfigurationsdaten mit Hardware- und Software-Parametern aus den zweiten Konfigurationsdaten vergleichen. Wenn einer der Hardware- und Software-Parameter aus den ersten Konfigurationsdaten mit einem der Hardware- und Software-Parameter aus den zweiten Konfigurationsdaten übereinstimmt, macht die eingeführte Steuereinrichtung die darin gespeicherten Daten ungültig.
-
Optional kann das Verfahren umfassen, dass die eingeführte Steuereinrichtung Software von einer anderen Steuereinrichtung in dem Netzwerk anfordert, wobei die eingeführte Steuereinrichtung dann in einen normalen Betriebsmodus eintritt. In dem normalen Betriebsmodus kann die Steuereinrichtung derart funktionieren, um ein Subsystem eines Fahrzeugs zu steuern.
-
Wenn keiner der Hardware- und Software-Parameter aus den ersten Konfigurationsdaten mit den Hardware- und Software-Parametern aus den zweiten Konfigurationsdaten übereinstimmt, tritt die eingeführte Steuereinrichtung optional in einen Fehlermodus ein.
-
Das Vorsehen eines Identifikationsschlüssels an einer eingebetteten Position in dem Netzwerk kann optional das Anbringen des Identifikationsschlüssels an einem Kabelstrang umfassen.
-
Die eingeführte Steuereinrichtung kann Anwendungssoftware enthalten, wobei das Verfahren optional umfassen kann, dass die eingeführte Steuereinrichtung einen Teil der Software in Entsprechung zu der installierten Position in dem Netzwerk ausführt. Das Netzwerk kann eine Vielzahl von Verbindungsknoten umfassen, wobei die eingeführte Steuereinrichtung an jedem aus der Vielzahl von Verbindungsknoten betrieben werden kann, und wobei das Verfahren weiterhin umfassen kann, dass die eingeführte Steuereinrichtung einen entsprechenden Knoten, mit dem die Steuereinrichtung verbunden wurde, auf der Basis der zweiten Konfigurationsdaten aus den Identifikationsschlüssel bestimmt.
-
Es wurde ein beispielhaftes Steuersystem beschrieben, das umfasst: eine Vielzahl von untereinander austauschbaren und ersetzbaren Steuereinrichtungen, die operativ mit wenigsten einer Eingabe-/Ausgabeeinrichtung eines gesteuerten Subsystems an einem Verbindungsknoten verbunden werden können; und eine Kommunikationsverbindung, die eine Kommunikation zwischen wenigstens zwei aus der Vielzahl von Steuereinrichtungen ermöglicht. Eine Vielzahl von Identifikationsschlüsseln sind jeweils mit den entsprechenden Steuereinrichtungen assoziiert. Jeder Identifikationsschlüssel enthält Konfigurationsdaten für einen der Verbindungsknoten und kann durch eine der Steuereinrichtungen bei der Einführung in das Netzwerk elektronisch gelesen werden. Jede aus der Vielzahl von Steuereinrichtungen bestimmt auf der Basis des gelesenen assoziierten Identifikationsschlüssels die Hardware- und Software-Kompatibilität mit dem Netzwerk. Wenn die Steuereinrichtung eine Kompatibilität bestimmt, bestimmt sie weiterhin den Verbindungsknoten, an dem sie installiert wurde, und führt von der Position abhängige Softwareroutinen zum Steuern des mit dem Knoten, an dem sie installiert wurde, assoziierten Subsystems aus.
-
Optional kann das gesteuerte Subsystem ein Fahrzeug-Subsystem sein, wobei die Vielzahl von Steuereinrichtungen elektronische Steuereinrichtungen (ECUS) sein können. Jede der ECUs kann sich selbst mit der aktuellen Anwendungssoftware für den Verbindungsknoten, an dem sie installiert wurde, konfigurieren. Die Identifikationsschlüssel können an fixen Positionen in Nachbarschaft zu den Verbindungsknoten eingebettet sein. Die Identifikationsschlüssel können an Drahtsträngen angebracht sein. Jede ECU kann einen Datenaufbau mit mehreren Abschnitten umfassen, und jeder der Identifikationsschlüssel kann einen Datenaufbau in Entsprechung zu einem der Abschnitte jeder ECU umfassen.
-
In der vorstehenden Beschreibung wird auf Beispiele Bezug genommen, um die Erfindung anhand einer bevorzugten Ausführungsform zu verdeutlichen, damit der Fachmann die Erfindung einschließlich der Vorrichtungen, Systeme und Verfahren umsetzen kann. Der Erfindungsumfang wird durch die Ansprüche definiert und kann durch den Fachmann in verschiedenen Ausführungsformen realisiert werden, ohne dass deshalb der Erfindungsumfang verlassen wird.