-
Die Erfindung bezieht sich auf eine Vorrichtung zur Fehleranalyse eines Systems, insbesondere eines Kraftfahrzeugs. Die Erfindung bezieht sich des Weiteren auf ein Kraftfahrzeug mit einer solchen Vorrichtung.
-
In vielen Systemen, beispielsweise in Kraftfahrzeugen, werden Zustandsdaten gesammelt. Diese Zustandsdaten zeigen Zustände von Einheiten oder Geräten in einem solchen System. Die Zustandsdaten können dabei als mehrdimensionaler Zustandsdatenstrom vorliegen, der mehrere Signale aufweist. Jedes Signal zeigt dabei den Status einer Einheit, in einem Kraftfahrzeug beispielsweise eines Radios oder eines Scheibenwischers, bzw. Zustände der Einheiten, die aus einer Kommunikation der Einheit mit anderen Einheiten des Systems und/oder einem Funktionsablauf der Einheit hervorgehen (im Falle eines Scheibenwischers beispielsweise das Signal „Status Wischer links“ oder das Signal „Steuerung Wischer links“). Die Signale können ihren Zustand wechseln, was eine Veränderung der jeweiligen Einheit oder Vorrichtung anzeigt. Beispielsweise kann sich bei einem Radio ein solcher Zustandswechsel auf ein Einschalten oder Ausschalten des Radios beziehen.
-
Treten in einem solchen System Fehler auf, müssen die Zustandsdaten untersucht werden, um einen Fehler und eine Fehlerursache ermitteln zu können. Bislang werden hierzu manuelle Inspektionstools und Statistiken verwendet. Je nach Menge der Zustandsdaten ist es daher schwierig, den Fehler und seine Ursache schnell und zuverlässig zu bestimmen.
-
Es ist daher eine Aufgabe der vorliegenden Erfindung, eine automatisierte Fehleranalyse eines Systems unter Verwendung von Zustandsdatenströmen zu ermöglichen.
-
Diese Aufgabe wird durch eine Vorrichtung gemäß Patentanspruch 1 sowie ein Kraftfahrzeug gemäß Patentanspruch 10 gelöst.
-
Die Vorrichtung zur Fehleranalyse eines Systems, insbesondere eines Kraftfahrzeugs, weist eine Empfangseinheit zum Empfangen eines mehrdimensionalen Zustandsdatenstroms des Systems auf. Der mehrdimensionale Zustandsdatenstrom weist mehrere Signale und zugehörige Zustände auf. Die Signale kennzeichnen dabei jeweils den Zustandsverlauf einer Einheit oder eines Geräts bzw. einen Funktionsablauf in dem System.
-
Um eine automatisierte Fehleranalyse des Systems zu ermöglichen, weist die Vorrichtung eine Verarbeitungseinheit auf, die dazu eingerichtet ist, den Zustandsdatenstrom zu gruppieren und unter Verwendung der Gruppierung ein Modell zu erstellen. Zur Gruppierung können existierende Segmentierungs- und Clustering-Algorithmen verwendet werden. Das Modell kann beispielsweise ein Prozessmodell, zum Beispiel ein Petrinetz sein, wobei die Zustandswechsel der Signale als Ereignisse betrachtet und als Knoten in dem Modell modelliert werden.
-
Insbesondere kann ein solches Modell Zusammenhänge zwischen dem Auftreten von verschiedenen Signalen bzw. Zuständen erlernen. Das Lernen kann unter Verwendung von bekannten Verfahren aus den Bereichen Machine Learning oder Process Mining, wie beispielsweise neuronalen Netzen oder Bayesnetzen, erfolgen. Insbesondere kann die Modellierung dieser Zusammenhänge als dynamisches Bayesnetz eines Prozesses erfolgen, bei dem jede Zustandsänderung eines Signals eine Zufallsvariable ist, und die Zustandswechsel, die ein Signal annehmen kann, die Knoten des Modells sind.
-
Die Vorrichtung ist des Weiteren dazu eingerichtet, eine Fehleranalyse des Systems unter Verwendung des Modells durchzuführen. Da das Modell die Zusammenhänge zwischen den einzelnen Signalen oder den Zuständen in einem Signal oder der Signale zueinander darstellt, kann die Verarbeitungseinheit auf einfache Weise eine Fehleranalyse des Systems durchführen, ohne den Zustandsdatenstrom an sich untersuchen zu müssen. Die Fehleranalyse kann dabei beispielsweise mittels Suchen von wahrscheinlichen oder häufigen Pfaden erfolgen oder im Falle von neuronalen Netzen über Inspektion von Kantengewichten.
-
Die Vorrichtung kann des Weiteren eine Ausgabeeinheit aufweisen, die dazu eingerichtet ist, das Ergebnis der Fehleranalyse auszugeben. Dieses Ergebnis kann in dem System, beispielsweise dem Kraftfahrzeug, durch weitere Vorrichtungen oder Einheiten verwendet werden, um einen Fehler in dem System zu beheben. Des Weiteren kann unter Umständen bereits vor Auftreten eines Fehlers erkannt werden, dass ein Fehler auftreten wird, wenn sich bei der Fehleranalyse ergeben hat, dass ein bestimmtes Muster mit hoher Wahrscheinlichkeit zu einem Fehler führen wird. Auf diese Weise wird nicht nur die Fehlerbehebung vereinfacht, sondern bereits die Verhinderung des Auftretens von Fehlern.
-
Gemäß einer Ausführungsform ist die Verarbeitungseinheit dazu eingerichtet, einen Fehler des Systems als einen Zustand eines Signals des Zustandsdatenstroms zu erkennen. Insbesondere kann hierbei ein bereits bekannter Fehler zum Zweck der Fehleranalyse betrachtet werden. Um diesen Fehler genauer betrachten zu können, kann die Verarbeitungseinheit ein oder mehrere Datenabschnitte des Signals vor dem Fehler auswählen und zu einer Gruppierung zusammenfassen. Mit dieser Ausführungsform ist es insbesondere möglich, die Ursache für einen Fehler zu finden. Wird ein Fehler in dem Zustandsdatenstrom an einer oder mehreren Stellen beobachtet, werden die Datenabschnitte, die vor dem erkannten Fehler liegen, ausgewählt. Die Datenabschnitte können dabei an einer oder mehreren Stellen des Signals oder, wenn der Fehler in mehreren Signalen auftritt, in unterschiedlichen Signalen vorhanden sein. Diese Datenabschnitte können dann ausgewählt und zu einer Gruppierung zusammengefasst werden.
-
Die ausgewählten Datenabschnitte können durch die Verarbeitungseinheit verwendet werden, um das Modell zu erstellen, wobei das Modell einen Zusammenhang zwischen den Zuständen der Signale darstellt. Hierbei werden Zustandswechsel der Signale als Ereignisse betrachtet und als Knoten in dem Modell modelliert. Der Fehlerauftritt stellt dabei den letzten Knoten in dem Modell dar.
-
Um nun eine Fehlerursache zu bestimmen, ist die Verarbeitungseinheit gemäß einer Ausführungsform dazu eingerichtet, einen oder mehrere Pfade in dem Modell zu ermitteln, die zu einem Fehlerzustand führen. In dem Fall von Bayesnetzen können insbesondere wahrscheinliche Belegungen der Zufallsvariablen ermittelt werden. Beispielsweise können bei der Erstellung des Modells Wahrscheinlichkeiten für das Auftreten von Zuständen vergeben werden. Anhand dieser Wahrscheinlichkeiten oder durch Ermittlung von häufigen Pfaden können diejenigen Pfade in dem Modell ermittelt werden, die mit hoher Wahrscheinlichkeit darstellen, was einen Fehler verursacht hat. Die Verarbeitungseinheit kann somit eine wahrscheinliche Verkettung von Zuständen vor dem Fehlerereignis ermitteln.
-
Das Modell kann verwendet werden, um Fehlerpfade zu ermitteln, oder andere Analysen durchzuführen. Zum Beispiel können Pfade mit bestimmten Zuständen der Signale gesucht werden, oder Pfade ausgegeben werden, die häufiger vorkommen als gewünscht ist. Insbesondere kann jedoch das Modell verwendet werden, um eine Liste an Zustandsketten und deren Auftrittshäufigkeit zu erkennen. Diese Informationen können verwendet werden, um direkte Abläufe vor einem Fehler sowie Systemzustände zu einem bestimmten Fehlerzeitpunkt abzulesen.
-
Gemäß einer weiteren Ausführungsform ist die Verarbeitungseinheit dazu eingerichtet, den Zustandsdatenstrom zu gruppieren, indem Signale des Zustandsdatenstroms basierend auf Funktionen in Segmente unterteilt werden. Des Weiteren kann die Verarbeitungseinheit dazu eingerichtet sein, alle Segmente einer Funktion zu einer Funktionsgruppe zu gruppieren. Diese Segmente können dabei sowohl in einem Signal als auch signalübergreifend auftreten.
-
Zu einer Funktionsgruppe können dabei eine bestimmte Funktion bzw. Abläufe von Funktionen sowie Varianten dieser Funktion zählen. Das Gruppieren zu einer Funktionsgruppe kann mit einer sehr feinen Granularität erfolgen, wobei in diesem Fall nur die Segmente einer Funktion zu einer Funktionsgruppe hinzugefügt werden, die exakt gleich ablaufen. Wird eine gröbere Granularität verwendet, können auch Segmente einer Funktion, die kleine Abweichungen zeigen, zu einer einzelnen Funktionsgruppe zusammengefasst werden.
-
In dem ersten Fall könnten beispielsweise eine Scheibenwischeraktivierung bei fahrendem oder bei parkendem Fahrzeug jeweils einer eigenen Funktionsgruppe zugeordnet werden. In dem zweiten Fall können hingegen die Scheibenwischeraktivierungen sowohl bei fahrendem als auch parkendem Fahrzeug derselben Funktionsgruppe zugeordnet werden. Insbesondere bei ersterem Fall können gewollte oder häufige Funktionsabläufe abgebildet werden (z.B. alles, was den Scheibenwischer aktiviert hat). Bei letzterem Fall kann die Verarbeitungseinheit dagegen einen bestimmten Ablauf und deren leichte Abweichungen lernen (d.h. auch Varianten des Funktionsablaufs oder fehlerhafte Konstellationen, die evtl. Fehlerverläufe sein können).
-
Gemäß einer weiteren Ausführungsform ist die Verarbeitungseinheit dazu eingerichtet, das Modell unter Verwendung einer Funktionsgruppe, insbesondere mehreren Funktionsgruppen bzw. mehreren aufgezeichneten Abläufen, zu erstellen, wobei das Modell einen Zusammenhang zwischen Zuständen der Signale einer Funktionsgruppe, und insbesondere zwischen Varianten von Abläufen, darstellt. Des Weiteren kann die Verarbeitungseinheit dazu eingerichtet sein, das Modell als funktionsübergreifendes Modell unter Verwendung von Modellen mehrerer Funktionsgruppen zu erstellen, wobei das Modell einen Zusammenhang zwischen den Zuständen der Signale von mehreren Funktionsgruppen darstellt.
-
In dem ersten Fall kann ein Modell pro Funktionsgruppe erstellt werden, wobei jedes Modell verwendet werden kann, um einen Fehler in der jeweiligen Funktionsgruppe zu definieren. Insbesondere kann hierbei die Verarbeitungseinheit dazu eingerichtet sein, eine Fehleranalyse durch einen Vergleich der Segmente einer Funktionsgruppe durchzuführen. Treten zwischen den Segmenten Abweichungen auf, die im Modell abgebildet wären, kann dies auf einen Fehler hindeuten.
-
In dem zweiten Fall können auf einer erhöhten Abstraktionsebene insbesondere Zusammenhänge zwischen Abläufen von Funktionsgruppen erkannt werden. Insbesondere kann dadurch ein Fehlermuster, ein gewolltes Verhalten des Systems und/oder Zusammenhänge zwischen Funktionen erkannt werden, das zwischen Funktionsgruppen auftritt. Beispielsweise kann dadurch ermittelt werden, ob ein Fehler im Zusammenhang mit dem Auftreten von anderen Funktionen bzw. Zustandsänderungen dieser Funktionen auftritt. Dieses Modell stellt damit eine sehr umfassende Möglichkeit einer Fehleranalyse bereit.
-
Gemäß einem weiteren Aspekt wird ein Kraftfahrzeug mit einer Vorrichtung zur Fehleranalyse des Kraftfahrzeugs, wie sie oben beschrieben ist, vorgeschlagen. Das Kraftfahrzeug kann eine Verarbeitungseinheit aufweisen, die dazu eingerichtet ist, Zustände von Einheiten des Kraftfahrzeugs zu überwachen, und diese in einem mehrdimensionalen Zustandsdatenstrom an die Vorrichtung zu übertragen.
-
Gemäß einem weiteren Aspekt wird ein Verfahren zur Fehleranalyse eines Systems, insbesondere eines Kraftfahrzeugs, vorgeschlagen. Das Verfahren weist die folgende Schritte auf: Empfangen eines mehrdimensionalen Zustandsdatenstroms des Systems, wobei der mehrdimensionale Zustandsdatenstrom mehrere Signale und zugehörige Zustände aufweist, Gruppierung des Zustandsdatenstroms, Erstellen eines Modells unter Verwendung der Gruppierung, Durchführen einer Fehleranalyse des Systems unter Verwendung des Modells, und Ausgeben eines Ergebnisses der Fehleranalyse, beispielsweise über automatisierte Inference-Algorithmen auf den Modellen.
-
Die für die vorgeschlagene Vorrichtung beschriebenen Ausführungsformen und Merkmale gelten für das vorgeschlagene Verfahren entsprechend.
-
Weiterhin wird ein Computerprogrammprodukt vorgeschlagen, welches einen Programmcode aufweist, der dazu ausgebildet ist, auf einem Computer die Durchführung des wie oben erläuterten Verfahrens zu veranlassen.
-
Ein Computerprogrammprodukt, wie z.B. ein Computerprogramm-Mittel, kann beispielsweise als Speichermedium, wie z.B. Speicherkarte, USB-Stick, CD-ROM, DVD, oder auch in Form einer herunterladbaren Datei von einem Server in einem Netzwerk bereitgestellt oder geliefert werden. Dies kann zum Beispiel in einem drahtlosen Kommunikationsnetzwerk durch die Übertragung einer entsprechenden Datei mit dem Computerprogrammprodukt oder dem Computerprogramm-Mittel erfolgen.
-
Weitere mögliche Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmale oder Ausführungsformen. Dabei wird der Fachmann auch Einzelaspekte als Verbesserungen oder Ergänzungen zu der jeweiligen Grundform der Erfindung hinzufügen.
-
Weitere Vorteile und vorteilhafte Ausführungsformen sind in der Beschreibung, den Zeichnungen und den Ansprüchen angegeben. Dabei sind insbesondere die in der Beschreibung und in den Zeichnungen angegebenen Kombinationen der Merkmale rein exemplarisch, so dass die Merkmale auch einzeln oder anders kombiniert vorliegen können.
-
Im Folgenden soll die Erfindung anhand von in den Zeichnungen dargestellten Ausführungsbeispielen näher beschrieben werden. Dabei sind die Ausführungsbeispiele und die in den Ausführungsbeispielen gezeigten Kombinationen rein exemplarisch und sollen nicht den Schutzbereich der Erfindung festlegen. Dieser wird allein durch die anhängigen Ansprüche definiert.
-
Es zeigen:
- 1: ein schematisches Blockdiagramm einer Vorrichtung zur Fehleranalyse eines Kraftfahrzeugs;
- 2: eine erste Ausführungsform einer Gruppierung eines Zustandsdatenstroms von 1 und die Erzeugung eines Modells; und
- 3: eine zweite Ausführungsform der Gruppierung eines Zustandsdatenstroms von 1 und die Erzeugung eines Modells.
-
Im Folgenden werden gleiche oder funktionell gleichwirkende Elemente mit denselben Bezugszeichen gekennzeichnet.
-
1 zeigt eine Vorrichtung 1 zur Fehleranalyse eines Systems, in diesem Fall eines Kraftfahrzeugs 8. Die Vorrichtung 1 weist eine Empfangseinheit 2 zum Empfangen eines mehrdimensionalen Zustandsdatenstroms des Kraftfahrzeugs 8 auf. Der mehrdimensionale Zustandsdatenstrom weist mehrere Signale 12 sowie Zustände 22 in diesen Signalen 12 auf. Die Zustände 22 stellen dabei Zustandsänderungen der jeweiligen Signale 12 dar. Beispielsweise kann es sich bei einem Signal 12 um den Zustand eines Radios handeln und die Zustände 22 stellen dabei die Zustände „Radio an“ oder „Radio aus“ dar.
-
Um eine Fehleranalyse des Kraftfahrzeugs 8 durchführen zu können, weist die Vorrichtung 1 eine Verarbeitungseinheit 4 auf. Die Verarbeitungseinheit 4 ist dazu eingerichtet, den Zustandsdatenstrom 10 zu gruppieren und unter Verwendung der Gruppierung ein Modell 20 zu erstellen. Nach Erstellung des Modells 20 kann die Verarbeitungseinheit 4 eine Fehleranalyse des Kraftfahrzeugs 8 durchführen, wie detaillierter im Zusammenhang mit 2 und 3 erläutert wird.
-
Nach der Durchführung der Fehleranalyse des Kraftfahrzeugs 8 kann eine Ausgabeeinheit 6 der Vorrichtung 1 das Ergebnis der Fehleranalyse ausgeben. Dieses Ergebnis kann beispielsweise in dem Kraftfahrzeug 8 zur Fehlerbehebung verwendet werden.
-
2 zeigt eine erste Ausführungsform einer Gruppierung des Zustandsdatenstroms. In diesem Fall erfolgt eine Gruppierung für ein einzelnes Signal 12 des Zugangsdatenstroms 10. Die Verarbeitungseinheit 4 erkennt den Auftritt eines Fehlers 14 und gruppiert den Zustandsdatenstrom 10 bzw. das entsprechende Signal 12, indem ein oder mehrere Datenabschnitte, die jeweils vor dem Fehler 14 liegen, zu einer Gruppe 16 zusammengefasst werden. Aus diesen Datenabschnittsgruppen 16 wird ein Modell 20 erstellt.
-
Das Modell 20 kann ein Prozessmodell, zum Beispiel ein Petrinetz sein, oder kann, wie hier dargestellt, ein Bayesnetz sein, wobei jeder Knoten 22 einen Zustandsübergang des Signals 12 darstellt. Der Abschlussknoten des Modells 20 entspricht dem aufgetretenen Fehler 14.
-
Dieses Modell 20 kann auf verschiedene Arten analysiert werden. Zum einen kann untersucht werden, ob eine bestimmte Folge an Knoten 22, die in dem Modell auftritt, nicht erlaubt ist. Des Weiteren kann mittels eines Algorithmus extrahiert werden, ob eine Liste an Pfaden bzw. Signalen häufig vorkommt und daher potenziell die Fehlerursache ist. Des Weiteren kann durch das Modell 20 eine Sequenz von Signalauftritten ermittelt werden, die zu dem Fehler 14 führen. Beispielsweise kann dabei erkannt werden, dass die Sequenz der Signalauftritte: „Sitzverstellung = aktiv“ und „Fahrzustand = fahren“, gefolgt von „Klimaanlage aktiviert“ und „Start-Stop-Taste betätigt“ zu dem Auftreten des Fehlers 14 führt. Diese Erkenntnis kann durch die Verarbeitungseinheit 4 genutzt werden, um zum einen den Fehler selbst sowie den Pfad, der potenziell zu dem Fehler geführt hat, auszugeben.
-
Alternativ oder zusätzlich kann die Verarbeitungseinheit 4 bereits im Voraus in Signalen 12 eine solche Sequenz an Zuständen 22 erkennen und daher bereits vor dem Auftreten des Fehlers 14 ein entsprechendes Warnsignal ausgeben.
-
Eine zweite Ausführungsform einer möglichen Gruppierung des Zustandsdatenstroms 10 ist in 3 dargestellt. In diesem Fall wird der Zustandsdatenstrom 10 basierend auf Funktionen in verschiedene Segmente 24, 26, 28 unterteilt. Beispielsweise können die Segmente 24 eine automatische Fernlichtaktivierung im Tunnel bedeuten, die Segmente 26 können sich auf alle Abläufe der Scheibenwischermotorik beziehen und die Segmente 28 können sich auf die Aktivierung des Scheibenwischers beziehen.
-
Diese Segmente, in der gezeigten Variante die Segmente 26, können dann einer Funktionsgruppe 30 zugeordnet werden. Basierend auf der Funktionsgruppe 30 kann ein Modell 20 erstellt werden, wie es im Zusammenhang mit 2 beschrieben ist. In diesem Fall kann anhand des Modells 20 nicht nur der Fehler 14 analysiert werden, sondern zusätzlich alle Varianten an Funktionsverhalten aus dem Modell 20 extrahiert werden.
-
Das bedeutet, dass durch das Modell 20 sowohl ein Fehlermuster, aber auch allgemeine Zusammenhänge zwischen den Funktionen bestimmt werden können. Es ist auch möglich, nicht nur die Segmente 24, 26, 28 einer einzelnen Funktion 26 zu einer Funktionsgruppe 30 zusammenzusetzen, sondern es können auch Segmente 24, 26, 28 unterschiedlicher Funktionen, beispielsweise der Funktionen 24 und 28, zu der Funktionsgruppe 30 hinzugefügt werden. Werden die Funktionsgruppen 30 entsprechend erweitert, ist eine allgemeinere Analyse des Kraftfahrzeugs 8 möglich.
-
Durch die hier vorgeschlagene Vorrichtung ist es somit auf einfache Weise möglich, einen Zustandsdatenstrom zu analysieren und eine automatisierte Fehleranalyse basierend auf einer Gruppierung des Zustandsdatenstroms bereitzustellen. Mit der vorgeschlagenen Vorrichtung ist daher keine manuelle Untersuchung des Zustandsdatenstroms erforderlich.
-
Bezugszeichenliste
-
- 1
- Vorrichtung
- 2
- Empfangseinheit
- 4
- Verarbeitungseinheiten
- 6
- Ausgabeeinheit
- 8
- Kraftfahrzeug
- 10
- Zustandsdatenstrom
- 12
- Signal
- 14
- Fehler
- 16
- Datenabschnitt
- 20
- Modell
- 22
- Zustand
- 24, 26, 28
- Segment
- 30
- Funktionsgruppe