-
Die
Erfindung betrifft ein Verfahren und eine Installationsmanagementeinheit
zum Nutzen von Ressourcen in einem Steuergeräteverbund sowie ein Computerprogramm
und ein Computerprogrammprodukt.
-
Stand der Technik
-
Die
in Fahrzeugen zur Steuerung der Betriebsabläufe vorgesehenen Steuergeräte verfügen über Softwaremodule
bzw. -komponenten zur Durchführung
der zugeordneten Funktionen. Zum Laden dieser Software sind unterschiedliche
Verfahren bekannt.
-
In
der Druckschrift
DE
100 37 397 A1 ist bspw. ein Verfahren zum Laden von Software
in ein Zielgerät
eines Fahrzeugsteuergeräts
beschrieben. Hierbei ist vorgesehen, das Laden der Softwaremodule
in Teilaufgaben zu unterteilen und eine Durchführung der Teilaufgaben einem
Zielgerät,
Geräten und/oder
einem Leitgerät
außerhalb
des Fahrzeugsteuersystems zuzuweisen.
-
Die
Druckschrift
DE 101
58 991 A1 beschreibt ein Verfahren und eine Installation
von einem Softwaremodul in einem Gerät, auf dem ein Betriebssystem
und eine hardwareunabhängige
Softwareumgebung, wie bspw. eine Java-Umgebung, betrieben wird.
Zum Installieren wird eine Installationsschnittstelle zu einem Installationsmanager
genutzt, wobei über
die Installationsschnittstelle eine Datei übergeben wird.
-
In
vernetzten Systemen sind verschiedene Verfahren bekannt, einzelne
Softwarekomponenten zu verteilen. Solche Verfahren finden auch bei
aus mehreren Teilen bestehenden Software-Applikationen Anwendung. Dabei werden
bspw. in Rechnerverbünden
Software-Applikationen verschoben und/oder verteilt. Dazu dienen
einerseits sogenannte Middleware-Technologien, wie bspw. OSGi, Jini,
Corba, UpnP oder net, und andererseits plattformunabhängige Ausprägungen von
ausführbarem
Code, z.B. mit Hilfe spezieller Programmiersprachen wie Java oder
C#.
-
Es
sind weiterhin Verfahren zum Defragmentieren von Speicherstrukturen,
bspw. auf Festplatten, bekannt, bei denen die physikalische Anordnung
zusammenhängender
Daten hinsichtlich einer verbesserten Leistungsfähigkeit optimiert wird.
-
Offenbarung der Erfindung
-
Das
erfindungsgemäße Verfahren
dient zum Nutzen der Ressourcen in einem Steuergeräteverbund,
der eine Anzahl Steuergeräte
umfasst, und sieht vor, dass eine Installationsmanagementeinheit Softwarekomponenten
deren Ressourcen entsprechend auf die Steuergeräte in dem Steuergeräteverbund
aufteilt.
-
Das
erfindungsgemäße Verfahren
ermöglicht
somit eine optimierte Nutzung der in einem Systemverbund aus verschiedenen
vernetzten Steuergeräten
zu Verfügung
stehenden Ressourcen, wie bspw. Speicher, Rechenleistung, Kommunikationsdatenrate
und Energieverbrauch, und einen kostenoptimierten Aufbau einer Steuergeräte-Architektur
in einem Kraftfahrzeug.
-
Das
Verfahren kommt bspw. bei einer Erweiterung durch ein neues Steuergerät in dem
Steuergeräteverbund
und/oder bei einer Installation einer neuen Softwarekomponente zum
Einsatz. Somit wird die nachträgliche
Integration neuer, durch Software realisierter Funktionen in das
Fahrzeug erleichtert und die Ausnutzung vorhandener Ressourcen im
Fahrzeug optimiert. Dadurch wird zum einen die Zukunftssicherheit
der Steuergeräte
hinsichtlich künftiger
Entwicklungen verbessert und des weiteren werden durch bessere Ausnutzung
der Ressourcen die Kosten für
die im Fahrzeug vorgesehenen Steuergeräte gesenkt. Diese dynamische
Installation neuer Softwarekomponenten, bei der regelmäßig Softwarekomponenten
in dem Steuergeräteverbund
verschoben werden, ist nicht mehr, wie bisher bekannt ist, darauf
beschränkt,
dass bei der Installation neuer Software die benötigten Ressourcen von genau
einem Steuergerät
bereitgestellt werden.
-
Bei
dem vorgestellten Verfahren kann die Installation bzw. Verschiebung
von Komponenten zur Laufzeit, d.h. im Betrieb des Steuergeräteverbunds, erfolgen.
-
Zusätzlich zu
dem zu erwartenden Ressourcenbedarf kann die Installationsmanagementeinheit ausgewählte Eigenschaften,
wie bspw. Speicherbedarf, Rechenleistungsbedarf, Datenratenbedarf
oder Energiebedarf, berücksichtigen.
-
In
Ausgestaltung ist vorgesehen, dass die Installationsmanagementeinheit
Abhängigkeiten
zu steuergerätespezifischen
Schnittstellen der Softwarekomponenten, wie bspw. Aktor- oder Sensoranschlüsse, berücksichtigt.
-
Weiterhin
kann die Installationsmanagementeinheit Umgebungsbedingungen, z.B.
andere notwendigerweise lokale Softwarefunktionen, berücksichtigt.
-
Die
Erfindung betrifft weiterhin eine Installationsmanagementeinheit
zur Durchführung
des beschriebenen Verfahrens in einem Steuergeräteverbund, die hierzu regelmäßig eine
Recheneinheit aufweist. Die Installationsmanagementeinheit kann
somit als Hardwareeinheit vorliegen oder alternativ in Software
implementiert sein und in diesem Fall bspw. auf einer Recheneinheit
eines Steuergeräts
in einem Steuergeräteverbund
zur Ausführung
kommen.
-
Weiterhin
wird ein Steuergerät
mit einer Speichereinheit zur Aufnahme von Softwarekomponenten beschrieben,
das zum Einsatz in einem Steuergeräteverbund ausgelegt ist und
mit einer vorstehend beschriebenen Installationsmanagementeinheit
kommunizieren kann. Auf diese Weise werden Informationen zu Ressourcenbedarf,
ausgewählten Eigenschaften,
Umgebungsbedingungen und Abhängigkeiten
zu steuergerätespezifischen
physikalischen Schnittstellen übermittelt.
-
Die
Erfindung betrifft weiterhin ein Computerprogramm und ein Computerprogrammprodukt
zur Durchführung
des vorgestellten Verfahrens.
-
Weitere
Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der
Beschreibung und der beiliegenden Zeichnungen.
-
Es
versteht sich, dass die voranstehend genannten und die nachstehend
noch zu erläuternden Merkmale
nicht nur in der jeweils angegebenen Kombination, sondern auch in
anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne
den Rahmen der vorliegenden Erfindung zu verlassen.
-
Kurze Beschreibung der Zeichnungen
-
1 zeigt
in schematischer Darstellung einen Steuergeräteverbund und eine Ausführungsform einer
erfindungsgemäßen Installationsmanagementeinheit.
-
2 verdeutlicht
eine Ausführung
des erfindungsgemäßen Verfahrens.
-
3 verdeutlicht
eine weitere Ausführung des
erfindungsgemäßen Verfahrens.
-
Die
Erfindung ist anhand von Ausführungsbeispielen
in den Zeichnungen schematisch dargestellt und wird im folgenden
unter Bezugnahme auf die Zeichnungen ausführlich beschrieben.
-
Ausführungsformen der Erfindung
-
In 1 sind
in schematischer Darstellung eine Informationsmanagementeinheit 10 und
ein Steuergeräteverbund 12 mit
vier Steuergeräten 14, die
jeweils eine Speichereinheit 15 aufweisen, dargestellt.
Dabei sind die Steuergeräte 14 über einen
gemeinsamen Datenbus 16 untereinander und mit der separaten
Informationsmanagementeinheit 10, die eine Recheneinheit 18 aufweist,
verbunden. Über diese
Verbindung erfolgt der Austausch der zur Durchführung des Verfahrens benötigten Daten.
-
In 2 sind
zur Verdeutlichung des erfindungsgemäßen Verfahrens drei Steuergeräte 20, 22 und 24 dargestellt,
die wiederum über
einen Datenbus 25 miteinander verbunden sind. Das Verfahren basiert
auf einem Steuergeräteverbund
mit den Steuergeräten 20, 22, 24 und
ermöglicht
die nachträgliche Installation
von Softwarekomponenten. Für
eine zu installierende Komponente 26 wird zusätzlich ihr
zu erwartender Ressourcenbedarf hinsichtlich ausgewählter Eigenschaften,
wie bspw. Speicherbedarf, Rechenleistungsbedarf, Datenratenbedarf
oder Energiebedarf, und ihre Abhängigkeiten,
bspw. Aktor- oder Sensoranschlüsse,
an einen Installationsmanager 28 übermittelt.
-
Der
Installationsmanager 28 kennt die verfügbaren Ressourcen und den aktuellen
Belegungsstatus der Steuergeräte 20, 22, 24 im
Verbund. Die neu zu installierende Komponente 26 wird hinsichtlich
ihres Ressourcenbedarfs und ihrer sonstigen Abhängigkeiten im Systemverbund
plaziert. Wenn dabei die geforderten Ressourcen auf dem Steuergerät 20 nicht
mehr zur Verfügung
stehen, verschiebt der Installationsmanager 28 andere,
bereits im Systemverbund existierende Komponenten 30, 32 so
auf die weiteren Steuergeräte 22 und 24,
dass für
die neue Komponente 26 ausreichende Ressourcen zur Verfügung stehen.
-
Werden
während
der nachträglichen
Installation von Softwarekomponenten Funktionen innerhalb des Fahrzeugs
auf andere Steuergeräte
verschoben, wie bspw. durch gezieltes Deaktivieren einzelner Steuergeräte, wird
eine Funktion dann jeweils bei unterschiedlicher Konfiguration ausfallen.
-
In 3 ist
die dynamische Installation von Softwarekomponenten im Steuergeräteverbund
verdeutlicht. Das Verfahren ist durchführbar, selbst wenn die benötigten Ressourcen
von genau einem Steuergerät
nicht bereitgestellt werden können.
In der Darstellung sind belegte Bereiche schraffiert dargestellt.
-
Der
Ablauf erfolgt nach dem erfindungsgemäßen Verfahren wie folgt: Für eine zu
installierende Komponente 40 wird zusätzlich ihr zu erwartender Ressourcenbedarf
hinsichtlich ausgewählter
Eigenschaften wie Speicherbedarf, Rechenleistungsbedarf, Datenratenbedarf
oder Energiebedarf sowie ihre Abhängigkeiten zu steuergerätespezifischen physikalischen
Schnittstellen (Aktor- oder Sensoranschlüsse) oder bestimmten Umgebungsbedingungen,
wie bspw. andere notwendigerweise lokale Software-Funktionen, an
einen Installationsmanager 42 übermittelt. Der Installationsmanager 42 kennt
die verfügbaren
Ressourcen und den aktuellen Belegungsstatus der Steuergeräte im Verbund.
Die neu zu installierende Komponente 40 wird hinsichtlich
ihres Ressourcenbedarfs und ihrer sonstigen Abhängigkeiten im Systemverbund
plaziert. Wenn dabei die geforderten Ressourcen auf einem Steuergerät 44 nicht
mehr zur Verfügung
stehen, verschiebt der Installationsmanager 42 andere,
bereits im Systemverbund existierende Komponenten 46, 48 so
auf weitere Steuergeräte 52, 54,
dass für
die neue Komponente 40 und für die bereits abgelegten Komponenten 46, 48 ausreichende
Ressourcen zur Verfügung
stehen.
-
Die
Darstellung zeigt die Speicherbelegung im Steuergeräteverbund
vor (oben) und nach (unten) der Installation der neuen Komponente 40.
In diesem Beispiel ist angenommen, dass die Komponente 42 einen
zusätzlichen
Speicherbedarf besitzt, der in der bestehenden Konfiguration (oben)
von keinem Steuergerät
in einem Block gedeckt werden kann. Der Installationsmanager 42 errechnet
auf Basis der Speicherbedarfe der Komponenten 40, 46 und 48 eine
neue Verteilung der Software auf die Steuergeräte. Vor der Installation der
Softwarekomponente 40 werden dann die kleineren Komponenten 46 und 48 von
dem Steuergerät 44 auf
die Steuergeräte 52 bzw. 54 verschoben,
die jeweils Speicherplatz für
die kleineren Komponenten 46 und 48 bereitstellen
können. Nach
dieser Umstellung ist auf dem Steuergerät 44 ausreichend Speicherplatz
freigesetzt worden, dass die Komponente 40 installiert
werden kann.
-
Im
beschriebenen Beispiel ist der Installationsmanager 42 zur
Vereinfachung lediglich auf das Kriterium des Speicherplatzes fokussiert.
Daneben sind noch weitere Kriterien zu beachten, die bereits oben
geschildert worden sind. Hierzu gehören der gesamte Ressourcenbedarf
der Komponenten, wie bspw. Speicherbedarf, Rechenleistungsbedarf,
Datenratenbedarf oder Energiebedarf, sowie physikalische und logische
Abhängigkeiten
(Aktor- oder Sensoranschlüsse).
-
Für die Verteilung
der Software lassen sich, je nach Anforderungen des Zielsystems,
verschiedene Algorithmen entwickeln. Sie basieren auf folgenden
Grundgedanken:
- • Ein Steuergerät stellt
eine gewisse Ressourcenmenge für
durch Software realisierte Funktionen zur Verfügung. Welche Größen genau
zur Ressourcenmenge gehören,
hängt von
den Systemeigenschaften ab. Hierbei kann es sich um Speicher, CPU-Zeit,
garantierte Reaktionszeiten, Datenraten zu einem Bus, Aktor-/Sensorschnittstellen
usw. handeln. Diese sind typischerweise im Vorfeld zu definieren
und in einer geeigneten Terminologie zu beschreiben.
- • Eine
während
der Laufzeit nicht mehr teilbare Softwarefunktion hat einen in dieser
Terminologie definierten Ressourcenbedarf. Sie benötigt z.B. eine
bestimmte Menge Speicher, eine bestimmte Menge Rechenleistung, Zugriff
auf eine bestimmte Sensorschnittstelle usw.
- • Verteilte
Softwarekomponenten müssen
miteinander kommunizieren. Diese Kommunikationslast muss durch entsprechende
Medien bereitgestellt werden.
-
Daraus
folgt:
Softwarefunktionen lassen sich im Steuergeräteverbund
verschieben, solange folgende Bedingungen für alle Steuergeräte eingehalten
werden:
- • die
Summe aller durch die Softwarefunktionen in einem Steuergerät benötigten Ressourcen
darf die von dem Steuergerät
bereitgestellte Ressourcenmenge nicht überschreiten,
- • das
Kommunikationsaufkommen zwischen den Steuergeräten/Softwarefunktionen muss
durch die vorhandenen Kommunikationsmedien gedeckt werden.
-
Für eine Menge
von Softwarefunktionen gibt es eine optimale Verteilung innerhalb
des Steuergeräteverbundes,
die im Rahmen des beschriebenen Spielraums liegt und abhängt von
- • dem
unteilbaren (d.h. nur innerhalb eines Steuergerätes zu deckenden) Ressourcenbedarf
der jeweiligen Softwarefunktionen,
- • quantisierten
Ressourcen in den Steuergeräten
- • der
Kapazität
der Vernetzung der Steuergeräte
-
Mit
dem beschriebenen Verfahren werden die bestehenden Ressourcen optimal
ausgenutzt, d.h. unteilbare Ressourcenbedarfe durch Softwarefunktionen
werden optimal auf durch die Steuergeräte bereitgestellte "quantisierte" Ressourcenblöcke abgebildet.
Ein weiterer Vorteil des Verfahrens wird sichtbar, sobald das System
nicht nur Software, sondern auch um Ressourcen in Form von Steuergeräten erweitert
werden soll. Auch in diesem Fall wird die Informationsmanagementeinheit
die Software optimal auf den neu gebildeten Steuergeräteverbund verteilen.