-
Stand der Technik
-
Elektronische Steuerungs- und Regelsysteme, wie sie z.B. in Maschinen, Fahrzeugen und Geräten zum Einsatz kommen, bestehen üblicherweise aus Eingabevorrichtungen wie z.B. Sensoren oder Bedienelementen, einer Steuerungs- bzw. Regellogik sowie Ausgabevorrichtungen wie z.B. Aktuatoren oder Anzeigen. In elektronisch programmierbaren Systemen wird die Logik in der Regel durch Software-Applikationen dargestellt, die als Funktionssoftware auf Rechengeräten ausgeführt wird und von einer Basissoftware der Rechengeräte zu unterscheiden ist.
-
Software-Applikationen können auf einem einzelnen Steuergerät laufen oder auf einem Verbund von Steuergeräten (E/E-Architektur), wie sie z.B. bei Fahrzeugen Verwendung finden, verteilt sein und über Kommunikationssysteme, wie z.B. Datenbusse, miteinander kommunizieren.
-
Um ein Fehlverhalten von Ausgabevorrichtungen zu erkennen sind unterschiedliche Verfahren bekannt.
US 2003/0093727 A1 beschreibt eine Buswächtereinheit auf einem zentralen Knoten eines Datenbussystems, die bei einer Fehlkommunikation bzgl. festgelegter Zeitmuster auf dem Datenbus den verursachenden Teilnehmer für eine Kommunikation auf dem Datenbus zumindest zeitweise sperren kann oder dessen durch die Störeinflüsse ausgelöste Fehlkommunikation kompensiert.
-
EP 3 437 261 B1 beschreibt eine Vorrichtung zur Filterung des Datentransfers von sicherheitsrelevanten Eingriffen von einer Kommunikationseinheit zu einer anderen mit einer Steuereinheit. Die Filterung basiert auf Parametern von einer weiteren Kommunikationseinheit und kann zu einer vollständigen Unterbrechung oder teilweisen Filterung des Datentransfers führen.
-
Bei der Zuordnung von Software-Applikationen auf elektronische Rechengeräte müssen das Rechengerät und die Applikation eine geeignete Sicherheitsintegrität aufweisen. In modernen E/E-Architekturen kommen Rechengeräte und Software-Applikationen mit unterschiedlicher Sicherheitsintegrität zum Einsatz. Für den Zugriff von Software-Applikationen mit keiner oder geringer Sicherheitsintegrität auf Steuergeräte mit Ausgabevorrichtungen mit höherer Sicherheitsintegrität sind Zusatzmaßnahmen bzw. Überwachungsvorrichtungen erforderlich. Dies ist beispielsweise erforderlich in folgenden Fällen:
- - Software-Applikationen, für die kein Nachweis vorliegt, dass sie nach einem Sicherheitsstandard entwickelt wurden, z.B. s.g. „legacy code“, „off-the-shelf“-Produkte.
- - Software-Applikationen, die an sich nicht sicherheitsrelevant sind und daher nach keinem Sicherheitsstandard entwickelt wurden, aber auf sicherheitsrelevante Ausgabevorrichtungen zugreifen und deshalb im Sinne der Sicherheitsstandards keine Sicherheitsintegrität besitzen bzw. als „nicht-vertrauenswürdig“ gelten.
- - Bei der bewussten Trennung von Software-Applikationen in „vertrauenswürdige“ und „nicht-vertrauenswürdige“ (Teil-) Funktionen, um die Sicherheitslast von „nicht-vertrauenswürdigen“ Funktionen zu nehmen und diese mit geringerem Aufwand entwickeln zu können. Dies kann auch die Unterscheidung von homologierungs-relevanten und nicht-homologierungs-relevanten Software-Applikationen einschließen.
- - Die Verlagerung einer Software-Applikation bzw. Teilen einer Software-Applikation in neuen E/E-Architekturen.
-
Einrichtungen zur Überwachung von Applikations-Schnittstellen sollen dabei sicherstellen, dass Daten über Schnittstellen von nicht-vertrauenswürdigen Software-Applikationen in sämtlichen Betriebs-Situationen des Systems, beispielsweise einem Fahrzeug, zu keinen Fehlfunktionen durch eine Ausgabevorrichtung führen.
-
Offenbarung der Erfindung
-
Das erfindungsgemäße Verfahren zum Ermitteln von Regeln für eine Überwachungsvorrichtung, die eine Service-Anfrage und/oder Soll-Größe, die von einer Software-Applikation an ein Steuergerät, das eine Ausgabevorrichtung ansteuert, gesendet wird, wobei die Service-Anfrage und/oder Soll-Größe ausgehend von den Regeln überprüft wird, hat den Vorteil, dass für jede Schnittstelle zwischen der Software-Applikation und dem Steuergerät eine Risikoanalyse durchgeführt wird, bei der ermittelt wird, für welche Service-Anfragen und/oder Soll-Größen ein sicherere Betrieb des Steuergeräts gewährleistet ist, wobei im Rahmen der Risikoanalyse die Regeln ermittelt werden.
-
Bei Regeln kann es sich, beispielsweise bei einer Anwendung des erfindungsgemäßen Verfahrens auf eine Wischersteuerung eines Fahrzeugs, um eine Vorgabe für eine zulässige Winkelposition eines Wischers handeln. Hierbei kann beispielsweise vorgegeben sein, dass eine bestimmte Winkelposition nur dann angefahren werden darf, wenn eine Motorhaube des Fahrzeugs geschlossen ist („Motorhaube geschlossen“) und zusätzlich ein Signal vorliegt, das angibt, dass der Wischer sich nicht im Wischbetrieb („Wischer aus“) befindet. Bevorzugterweise wird das erfindungsgemäße Verfahren in Kraftfahrzeugen, beispielsweise der Wischersteuerung von Kraftfahrzeugen angewendet.
-
Mit anderen Worten ist die Überwachungsvorrichtung so angeordnet, dass eine Kommunikationsverbindung zwischen der Software-Applikation und der Überwachungsvorrichtung sowie eine Kommunikationsverbindung zwischen der Überwachungsvorrichtung und dem Steuergerät besteht, sodass eine Service-Anfrage und/oder Soll-Größe von der Software-Applikation über die Überwachungsvorrichtung an das Steuergerät geleitet wird, sofern die Überwachungsvorrichtung die Weiterleitung der Service-Anfrage und/oder Soll-Größe nicht blockiert. In vorteilhafter Ausgestaltung ist die Überwachungsvorrichtung so angeordnet, dass eine Service-Anfrage und/oder Soll-Größe, die von der Software-Applikation an das Steuergerät gesendet werden soll, über die Überwachungsvorrichtung geleitet werden muss, da keine alternative Kommunikationsverbindung zwischen Software-Applikation und Steuergerät unter Umgehung der Überwachungsvorrichtung vorhanden ist.
-
Die Überwachungsvorrichtung kann in Hardware, in Software oder einer Kombination aus Hard- und Software realisiert sein.
-
Unter einer Service-Anfrage kann beispielsweise eine Ansteuerung der Ausgabevorrichtung verstanden werden, die einen zu erzielenden Effekt beschreibt, aber kein konkretes Ansteuersignal für die Ausgabevorrichtung festlegt, sodass das konkrete Ansteuersignal unter Verwendung der Service-Anfrage von dem Steuergerät gebildet wird. Ein Beispiel für eine Service-Anfrage im Zusammenhang mit einem Fahrzeug kann daher die Aufforderung „Nebelschlussleuchte Ein“ sein. Ein weiteres Beispiel für eine Service-Anfrage ist die Aufforderung, mit dem Wischer eines Fahrzeugs eine bestimmte Winkelposition anzufahren.
-
Unter einem Soll-Wert kann beispielsweise eine Vorgabe eines Wertes verstanden werden, den die Ausgabevorrichtung, insbesondere ein Aktuator stellen soll. Ein Beispiel für einen Soll-Wert im Zusammenhang mit einem Fahrzeug kann daher die Vorgabe eines zu erzeugenden Drehmoments an eine elektrische Maschine sein.
-
Vorteilhaft ist, dass im Rahmen der Risikoanalyse zusätzlich Modi ermittelt werden und die Regeln in Abhängigkeit der Modi gebildet werden. Bei den Modi kann es sich bei einer Anwendung des erfindungsgemäßen Verfahrens in einem Fahrzeug beispielsweise um die Modi „Fahren“, „Parken“ und „Stillstand“ handeln. Die Modi wiederum können in vorteilhafter Weiterbildung aus Zustandsgrößen wie z.B. „Parkstellung“, beispielsweise bereitgestellt von einem Getriebesteuergerät, „Fahrzeuggeschwindigkeit“ oder „Motordrehzahl“ abgeleitet werden.
-
Vorteilhaft ist, dass die Regeln ausgehend von gesetzlichen Vorgaben und/oder einem Zustand der Ausgabevorrichtung und/oder einem Betriebszustand eines Gesamtsystems, insbesondere eines Fahrzeugs, das das Steuergerät umfasst, ermittelt werden.
-
Vorteilhafterweise können die Modi über Eingabegrößen und/oder Zustandsgrö-ßen gebildet werden, die der Überwachungsvorrichtung zugeführt werden. Bei den Zustandsgrößen kann es sich insbesondere um Größen handeln, die den Zustand eines technischen Systems, beispielsweise eines Fahrzeugs, beschreiben. Bei dem Zustand des technischen Systems kann es sich insbesondere um einen Betriebszustand handeln. Beispiele für Zustandsgrößen bei Anwendung des erfindungsgemäßen Verfahrens in einem Fahrzeug sind unter anderem eine Information über den Zustand „Motorhaube geschlossen“ oder die Geschwindigkeit des Fahrzeugs.
-
Vorteilhaft ist, dass die Modi ausgehend von gesetzlichen Vorgaben und/oder einem Zustand der Ausgabevorrichtung und/oder einem Betriebszustand eines Gesamtsystems, insbesondere eines Fahrzeugs, das das Steuergerät umfasst, ermittelt werden.
-
Vorteilhaft ist, dass eine Prüfung auf Vollständigkeit der Modi erfolgt.
-
Vorteilhaft ist, dass die Regeln und Modi auf Widerspruchsfreiheit geprüft werden.
-
Vorteilhaft ist, dass die Regeln und Modi verifiziert werden.
-
Vorteilhaft ist, dass die Regeln für jede Schnittstelle zwischen Software-Applikation und Steuergerät auf Interferenz geprüft und gegebenenfalls zu Gesamtregeln verändert werden.
-
Vorteilhafterweise können die Regeln und Modi von Zustandsgrößen und/oder Eingabegrößen abhängen.
-
Bei den Eingabegrößen kann es sich insbesondere um über eine Eingabeeinheit, insbesondere eine Mensch-Maschine-Schnittstelle, eingegebene Größen handeln, beispielsweise um eine über einen Lenkstockhebel vorgegebene Wischeransteuerung wie beispielsweise eine Auswahl des Betriebs „Intervallwischen“ durch eine entsprechende Stellung des Lenkstockhebels. Alternativ oder zusätzlich können die Eingabegrößen aber auch von weiteren Steuergeräten, beispielsweise bei Anwendung des erfindungsgemäßen Verfahrens in einem Fahrzeug, stammen. Hier kann es sich beispielsweise um einen Regensensor handeln, der eine Eingabegröße „Wischer ein“ oder „Wischer Stufe 1“ oder „Intervall-Wischen“ übermittelt.
-
Vorteilhaft sind außerdem eine Vorrichtung sowie ein Computerprogramm, die zur Durchführung des erfindungsgemäßen Verfahrens eingerichtet sind, sowie ein Speichermedium, auf dem das Computerprogramm gespeichert ist.
-
Nachfolgend wird ein Ausführungsbeispiel der vorliegenden Erfindung mit Anwendung in einem Fahrzeug, insbesondere im Zusammenhang mit einer Wischersteuerung, anhand der beiliegenden Zeichnungen näher erläutert. Dabei zeigen:
-
Kurze Beschreibung der Zeichnungen
-
- 1 eine schematische Darstellung einer Überwachung von Service-Anfragen und/oder Soll-Größen durch eine Überwachungsvorrichtung;
- 2 eine schematische Darstellung einer Überwachung von Service-Anfragen und/oder Soll-Größen durch eine Überwachungsvorrichtung, die eine Priorisierung umfasst;
- 3 eine schematische Darstellung einer Überwachungsvorrichtung;
- 4 eine schematische Darstellung eines Ablaufs eines Ausführungsbeispiels des erfindungsgemäßen Verfahrens.
-
1 zeigt eine schematische Darstellung einer Überwachung von Service-Anfragen und/oder Soll-Größen durch eine Überwachungsvorrichtung (16). Eine nicht vertrauenswürdige Software-Applikation (14) sendet eine Service-Anfrage und/oder Soll-Größe an die Überwachungsvorrichtung (16), wo die Service-Anfrage und/oder Soll-Größe anhand von Regeln und Modi überprüft wird. Ist die Service-Anfrage und/oder Soll-Größe zulässig, wird die Service-Anfrage und/oder Soll-Größe an ein Steuergerät mit Ausgabevorrichtung (18) weitergeleitet, wo die Umsetzung der Service-Anfrage und/oder Soll-Größe erfolgt. Eine Vorrichtung zum Bereitstellen von Eingabegrößen (10), beispielsweise ein Lenkstockhebel, übermittelt Eingabegrößen, beispielsweise eine Stellung eines Lenkstockhebels zur Steuerung eines Wischers, an die Software-Applikation (14), die Überwachungsvorrichtung (16) und das Steuergerät mit Ausgabevorrichtung (18). Eine Vorrichtung zur Bereitstellung von Zustandsgrößen (12) übermittelt Zustandsgrößen, Beispielsweise die Zustandsgrößen „Stillstand“, „Fahren“ und/oder „Parken“ an die Software-Applikation (14) und die Überwachungsvorrichtung (16). Das Steuergerät mit Ausgabevorrichtung (18) kann Informationen an die Vorrichtung zum Bereitstellen von Zustandsgrößen (12) übermitteln, die dort zur Bildung weiterer bzw. aktualisierter Zustandsgrößen verwendet werden können.
-
2 zeigt eine schematische Darstellung einer Überwachung von Service-Anfragen und/oder Soll-Größen durch eine Überwachungsvorrichtung (16), die eine Priorisierung umfasst. Eine erste, vertrauenswürdige Software-Applikation (21), die auf einem erstes Rechengerät (20), das als vertrauenswürdig eingestuft ist, ausgeführt wird, sendet Service-Anfragen und/oder Soll-Größen an die Überwachungsvorrichtung (16). Eine zweite, nicht vertrauenswürdige Software-Applikation (23), die auf einem zweiten Rechengerät (22), das als nicht vertrauenswürdig eingestuft ist, ausgeführt wird, sendet Service-Anfragen und/oder Soll-Größen an die Überwachungsvorrichtung (16). Die erste Software-Applikation (21), die zweite Software-Applikation (23) und die Überwachungsvorrichtung (16) empfangen je Eingabegrößen und Zustandsgrößen (symbolisiert durch die entsprechenden Pfeile). Die Überwachungsvorrichtung (16) umfasst eine erste Filter- und Priorisierungseinheit (27), der die Service-Anfragen und/oder Soll-Größen der ersten Software-Applikation (21) zugeführt werden sowie eine zweite Filter- und Priorisierungseinheit (25), der die Service-Anfragen und/oder Soll-Größen der zweiten Software-Applikation (23) zugeführt werden. Die durch die zweite Filter- und Priorisierungseinheit gefilterten und priorisierten Service-Anfragen und/oder Soll-Größen werden ebenfalls der ersten Filter- und Priorisierungseinheit (27) zugeführt, sodass die erste Filter- und Priorisierungseinheit (27) eine Filterung und Priorisierung, der durch die zweite Filter- und Priorisierungseinheit (25) gefilterten und priorisierten Service-Anfragen und/oder Soll-Größen und der von der ersten Software-Applikation (21) übermittelten Service-Anfragen und/oder Soll-Größen vornimmt.
-
Service-Anfragen und/oder Sollgrößen der ersten Software-Applikation (21) werden folglich durch die Überwachungsvorrichtung (16) nur einmal gefiltert, während die Service-Anfragen und/oder Soll-Größen der (nicht vertrauenswürdigen) zweiten Software-Applikation zweimal gefiltert und priorisiert werden. Durch die hierarchische Priorisierung können die Service-Anfragen und/oder Soll-Größen der ersten Software-Applikation (21) gegenüber den Service-Anfragen und/oder Soll-Größen der zweiten Software-Applikation (23) stehts höher priorisiert werden. Die erste Filter- und Priorisierungseinheit (27) stellt gefilterte und priorisierte Service-Anfragen und/oder Soll-Größen bereit, die außerhalb der Überwachungsvorrichtung (16) weiterverarbeitet werden bzw. an Steuergeräte, wie im Zusammenhang mit 1 beschrieben, weitergegeben werden können.
-
3 zeigt eine schematische Darstellung einer Überwachungsvorrichtung (16). Bei den Überwachungsvorrichtungen, wie im Zusammenhang mit 1 und 2 beschrieben, kann es sich insbesondere um die Überwachungsvorrichtung (16) aus 3 handeln.
-
Die Überwachungsvorrichtung (16) umfasst einen Zustandsautomaten (31), dem Eingabegrößen und Zustandsgrößen zugeführt werden, sowie einen Soll-Größen-Filter (33), der wiederum Regeln (32) zum Filtern von Service-Anfragen und/oder Soll-Grö-ßen umfasst. Der Zustandsautomat (31) ist eingerichtet, ausgehend von den Eingabegrößen und Zustandsgrößen Modi zu bilden und diese an den Soll-Größen-Filter (33) weiterzuleiten. Die Regeln (32) können bevorzugt unter Verwendung der Modi gebildet werden. Anhand der Regeln und Modi werden Service-Anfragen und/oder Soll-Größen, die an den Soll-Größen-Filter (33) der Überwachungsvorrichtung (16) gesendet werden, gefiltert. Die gefilterten (und ggf. priorisierten) Service-Anfragen und/oder Soll-Größen werden von der Überwachungsvorrichtung (16) ausgegeben.
-
4 zeigt eine schematische Darstellung eines Ablaufs eines Ausführungsbeispiels des erfindungsgemäßen Verfahrens. Das Ausführungsbeispiel des erfindungsgemäßen Verfahrens startet in Schritt 100. In Schritt 100 werden die Schnittstellen zwischen der Software-Applikation und dem Steuergerät definiert. Als Ergebnis wird eine Schnittstellenspezifikation des Steuergeräts mit Ausgabevorrichtung erhalten. Im Anschluss an Schritt 100 folgt Schritt 110.
-
In Schritt 110 wird überprüft ob bereits für alle Schnittstellen eine Risikoanalyse durchgeführt wurde, bei der ermittelt wurde, für welche Service-Anfragen und/oder Soll-Grö-ßen ein sicherere Betrieb des Steuergeräts gewährleistet ist. Sind bereits alle Schnittstellen analysiert, folgt Schritt 160 im Anschluss an Schritt 110. Sind noch nicht alle Schnittstellen analysiert folgt Schritt 120 im Anschluss an Schritt 110.
-
In Schritt 120 erfolgt eine Risikoanalyse für eine in Schritt 110 ausgewählte Schnittstelle, bei der ermittelt wird, für welche Service-Anfragen und/oder Soll-Größen ein sicherere Betrieb des Steuergeräts gewährleistet ist. Hierfür können insbesondere gesetzliche Vorgaben verwendet werden. Im Rahmen von Schritt 120 werden Regeln und Modi ermittelt, anhand derer zu einem späteren Zeitpunkt wie weiter oben beschrieben überprüft werden kann, ob eine Service-Anfrage und/oder Soll-Größe, die über die Schnittstelle von der Software-Applikation an das Steuergerät gesendet wird, zulässig ist. Bei den Regeln und Modi handelt es sich insbesondere um Grenzen für zulässige Service-Anfragen und/oder Soll-Größen. Im Anschluss an Schritt 120 folgt Schritt 130.
-
In Schritt 130 erfolgt eine Prüfung auf Vollständigkeit der Modi. Hierbei kann insbesondere überprüft werden, ob im Rahmen von Schritt 120 alle Modi aus einer zuvor festgelegten Liste abgeleitet wurden. Diese Liste kann beispielsweise die Modi „Fahren“, „Stillstand“ und „Parken“ umfassen. Im Anschluss an Schritt 130 folgt Schritt 140.
-
In Schritt 140 werden die Regeln und Modi auf Widerspruchsfreiheit geprüft. Sind die Regeln und Modi widerspruchsfrei folgt Schritt 150 im Anschluss an Schritt 140, andernfalls wird Schritt 120 wiederholt.
-
In Schritt 150 werden die Regeln und Modi, für die in Schritt 120 ausgewählte Schnittstelle verifiziert. Nach erfolgreicher Verifikation wird ein Satz von Regeln und Modi für die ausgewählte Schnittstelle gebildet, der anschließend für die Überprüfung von Service-Anfragen und/oder Soll-Größen durch ein Überwachungsmodul (16) verwendet werden kann. Im Anschluss an Schritt 150 folgt erneut Schritt 110.
-
In Schritt 160 wird eine Risikoanalyse einer Kombination aller Schnittstellen zwischen Software-Applikation und Steuergerät durchgeführt. Hierbei werden Gesamtregeln gebildet, die eine Interferenz zwischen den unterschiedlichen Schnittstellen berücksichtigen. Im Anschluss an Schritt 160 folgt Schritt 170.
-
In Schritt 170 werden alle ermittelten Regeln und Modi, einschließlich der in Schritt 160 gebildeten Gesamtregeln auf Vollständigkeit und Widerspruchsfreiheit überprüft. Sind alle Regeln und Modi, einschließlich der in Schritt 160 gebildeten Gesamtregeln, vollständig und widerspruchsfrei, folgt Schritt 180. Andernfalls wird Schritt 160 wiederholt.
-
In Schritt 180 werden die Regeln und Modi konsolidiert. Anschließend folgt Schritt 190.
-
In Schritt 190 werden die konsolidierten Modi und Regeln verifiziert und validiert, um so einen Satz an konsolidierten Regeln und Modi für alle Schnittstellen zwischen der Software-Applikation und dem Steuergerät zu erhalten. Anschließend kann die Überwachungsvorrichtung (16) mit dem Satz an konsolidierten Regeln und Modi betrieben werden.
-
Bevorzugt werden mit dem vorgestellten Verfahren Regeln und Modi für den Betrieb eines Fahrzeugs, insbesondere den Wischer eines Fahrzeugs, bestimmt.
-
Das vorgestellte Verfahren zum Ermitteln von Regeln ermöglicht eine sichere Ausführung von nicht vertrauenswürdigen Software-Anwendungen, deren Service-Anfragen und/oder Soll-Größen von einem Steuergerät mit Ausgabevorrichtung, insbesondere einem Aktuator, umgesetzt werden. Somit wird ein hohes Maß an Flexibilität für E/E-Architekturen, insbesondere von Fahrzeugen, ermöglicht.
-
Eine bevorzugte Anwendung des erfindungsgemäßen Verfahrens steht im Zusammenhang mit der Ansteuerung eines Wischers eines Fahrzeugs. Eine Service-Anfrage wie z.B. „Ansteuerung der Winkelposition 20°“ kann durch die Überwachungsvorrichtung gefiltert und mit den Regeln verglichen werden. Die Regeln können dabei z.B. vorsehen, dass Winkelpositionen größer als 10° nur dann angefahren werden dürfen, wenn der Modus des Fahrzeugs „Fahren“ ist und gleichzeitig eine Zustandsgröße des Fahrzeugs „Motorhaube geschlossen“ vorliegt.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- US 20030093727 A1 [0003]
- EP 3437261 B1 [0004]