-
ALLGEMEINER STAND DER TECHNIK
-
Eine Fahrzeugkomponente, wie etwa ein Aktor, ein Sensor, eine Steuerung usw., kann den Betrieb einstellen, was einen Fahrzeugbetrieb beeinträchtigen oder verhindern kann. Fahrzeugcomputer können einen Diagnosevorgang durchführen, um einen Fehler oder eine Störung einer Fahrzeugkomponente zu detektieren. Ein Fahrzeugcomputer kann zudem dazu programmiert sein, das Fahrzeug zu betreiben, z. B. in einem autonomen Modus; sobald jedoch ein Fehler detektiert wird, stellt das Bestimmen, ob und wie das Fahrzeug zu betreiben ist, ein Problem dar.
-
Figurenliste
-
- 1 ist ein Diagramm eines beispielhaften Fahrzeugsystems.
- Die 2A-2B bilden ein Ablaufdiagramm eines beispielhaften Prozesses zum Steuern eines Fahrzeugs mit einem Fehlerzustand.
- 3 ist ein Ablaufdiagramm eines beispielhaften Prozesses zum Steuern mehrerer Fahrzeuge aus der Ferne.
-
TECHNISCHES GEBIET
-
Die Erfindung betrifft ein System, das eine Einrichtung zum Identifizieren einer Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (diagnostic trouble code - DTC) und einer Betriebsbedingung in einem Fahrzeug, eine Einrichtung zum Bestimmen einer Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung und eine Einrichtung zum Navigieren des Fahrzeugs auf Grundlage der Anweisung beinhaltet.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Ein System, das eine Einrichtung zum Identifizieren einer Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug, eine Einrichtung zum Bestimmen einer Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung und eine Einrichtung zum Navigieren des Fahrzeugs auf Grundlage der Anweisung beinhaltet.
-
Die bestimmte Anweisung kann mindestens eines von Planen einer Route zu einer Werkstatt, Absagen einer nächsten Fahrt, Navigieren des Fahrzeugs zu einem nächstgelegenen Straßenrand und Anhalten des Fahrzeugs in einem aktuellen Fahrstreifen beinhalten.
-
Die Einrichtung zum Identifizieren der Risikobedingung kann außerdem eine Einrichtung zum Bestimmen einer erwarteten Zeit zum Beheben der Risikobedingung auf Grundlage der identifizierten Risikobedingung beinhalten.
-
Das System kann außerdem eine Einrichtung zum Aktualisieren der Risikobedingung auf Grundlage eines zweiten DTC und eine Einrichtung zum Aktualisieren der Anweisung auf Grundlage der aktualisierten Risikobedingung beinhalten.
-
Das System kann außerdem eine Einrichtung zum Bestimmen einer aktualisierten erwarteten Zeit zum Beheben der Risikobedingung beinhalten, wobei es sich bei der aktualisierten erwarteten Zeit zum Beheben der Risikobedingung um eine kürzeste einer ersten erwarteten Zeit zum Beheben der dem DTC zugeordneten Risikobedingung und einer zweiten erwarteten Zeit zum Beheben der dem zweiten DTC zugeordneten Risikobedingung handelt.
-
Die Einrichtung zum Identifizieren der Risikobedingung kann einen Fahrzeugcomputer beinhalten und die Einrichtung zum Bestimmen der Anweisung beinhaltet einen entfernten Computer, der drahtlos mit dem Fahrzeugcomputer kommuniziert.
-
Bei der Einrichtung zum Navigieren des Fahrzeugs kann es sich um einen Fahrzeugcomputer handeln.
-
Das System kann außerdem eine Einrichtung zum Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors und eines Beschleunigungssensors empfangen werden, beinhalten.
-
Die Fahrzeugbetriebsbedingung kann außerdem eine Außentemperatur, eine Niederschlagsrate und einen Straßenbelagszustand beinhalten.
-
Das System kann außerdem eine Einrichtung zum Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle beinhalten, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.
-
Das System kann außerdem eine Einrichtung zum Entsenden eines zweiten Fahrzeugs zu einem Standort des Fahrzeugs auf Grundlage der Risikobedingung des Fahrzeugs beinhalten.
-
Das System kann außerdem eine Einrichtung zum Bestimmen der Risikobedingung auf Grundlage der Fahrzeugbetriebsbedingung und einer Vielzahl von Fahrzeugbetriebsschwellenwerten, einschließlich mindestens eines von einem Temperaturschwellenwert, einem Geschwindigkeitsschwellenwert und einem Beschleunigungsschwellenwert, beinhalten.
-
Ein System, das einen Prozessor und einen Speicher beinhaltet, wobei im Speicher Anweisungen gespeichert sind, die durch den Prozessor ausgeführt werden können, um eine Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug zu identifizieren, eine Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung zu bestimmen und das Fahrzeug auf Grundlage der Anweisung zu navigieren.
-
Die bestimmte Anweisung kann mindestens eines von Planen einer Route zu einer Werkstatt, Absagen einer nächsten Fahrt, Navigieren des Fahrzeugs zu einem nächstgelegenen Straßenrand und Anhalten des Fahrzeugs in einem aktuellen Fahrstreifen beinhalten.
-
Die Anweisungen zum Identifizieren der Risikobedingung können außerdem ein Bestimmen einer erwarteten Zeit zum Beheben der Risikobedingung auf Grundlage der identifizierten Risikobedingung beinhalten.
-
Die Anweisungen können weitere Anweisungen zum Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors, eines Beschleunigungssensors empfangen werden, einer Außentemperatur, einer Niederschlagsrate und einem Straßenbelagszustand beinhalten.
-
Die Anweisungen können weitere Anweisungen zum Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle beinhalten, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.
-
Ein Verfahren, das ein Identifizieren einer Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug, ein Bestimmen einer Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung und ein Navigieren des Fahrzeugs auf Grundlage der Anweisung beinhaltet.
-
Das Verfahren kann außerdem ein Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors, eines Beschleunigungssensors empfangen werden, einer Außentemperatur, einer Niederschlagsrate und einem Straßenbelagszustand beinhalten.
-
Das Verfahren kann außerdem ein Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle beinhalten, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.
-
DETAILLIERTE BESCHREIBUNG
-
EINLEITUNG
-
In dieser Schrift wird ein System offenbart, das eine Einrichtung zum Identifizieren einer Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug, eine Einrichtung zum Bestimmen einer Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung und eine Einrichtung zum Navigieren des Fahrzeugs auf Grundlage der Anweisung beinhaltet.
-
Die bestimmte Anweisung kann mindestens eines von Planen einer Route zu einer Werkstatt, Absagen einer nächsten Fahrt, Navigieren des Fahrzeugs zu einem nächstgelegenen Straßenrand und Anhalten des Fahrzeugs in einem aktuellen Fahrstreifen beinhalten.
-
Die Einrichtung zum Identifizieren der Risikobedingung kann außerdem eine Einrichtung zum Bestimmen einer erwarteten Zeit zum Beheben der Risikobedingung auf Grundlage der identifizierten Risikobedingung beinhalten.
-
Das System kann außerdem eine Einrichtung zum Aktualisieren der Risikobedingung auf Grundlage eines zweiten DTC und eine Einrichtung zum Aktualisieren der Anweisung auf Grundlage der aktualisierten Risikobedingung beinhalten.
-
Das System kann außerdem eine Einrichtung zum Bestimmen einer aktualisierten erwarteten Zeit zum Beheben der Risikobedingung beinhalten, wobei es sich bei der aktualisierten erwarteten Zeit zum Beheben der Risikobedingung um eine kürzeste einer ersten erwarteten Zeit zum Beheben der dem DTC zugeordneten Risikobedingung und einer zweiten erwarteten Zeit zum Beheben der dem zweiten DTC zugeordneten Risikobedingung handelt.
-
Die Einrichtung zum Identifizieren der Risikobedingung kann einen Fahrzeugcomputer beinhalten und die Einrichtung zum Bestimmen der Anweisung beinhaltet einen entfernten Computer, der drahtlos mit dem Fahrzeugcomputer kommuniziert.
-
Bei der Einrichtung zum Navigieren des Fahrzeugs kann es sich um einen Fahrzeugcomputer handeln.
-
Das System kann außerdem eine Einrichtung zum Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors und eines Beschleunigungssensors empfangen werden, beinhalten.
-
Die Fahrzeugbetriebsbedingung kann außerdem eine Außentemperatur, eine Niederschlagsrate und einen Straßenbelagszustand beinhalten.
-
Das System kann außerdem eine Einrichtung zum Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle beinhalten, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.
-
Das System kann außerdem eine Einrichtung zum Entsenden eines zweiten Fahrzeugs zu einem Standort des Fahrzeugs auf Grundlage der Risikobedingung des Fahrzeugs beinhalten.
-
Das System kann außerdem eine Einrichtung zum Bestimmen der Risikobedingung auf Grundlage der Fahrzeugbetriebsbedingung und einer Vielzahl von Fahrzeugbetriebsschwellenwerten, einschließlich mindestens eines von einem Temperaturschwellenwert, einem Geschwindigkeitsschwellenwert und einem Beschleunigungsschwellenwert, beinhalten.
-
Außerdem wird in dieser Schrift ein System offenbart, das einen Prozessor und einen Speicher beinhaltet. Im Speicher sind Anweisungen gespeichert, die durch den Prozessor ausgeführt werden können, um eine Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug zu identifizieren, eine Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung zu bestimmen und das Fahrzeug auf Grundlage der Anweisung zu navigieren.
-
Die bestimmte Anweisung kann mindestens eines von Planen einer Route zu einer Werkstatt, Absagen einer nächsten Fahrt, Navigieren des Fahrzeugs zu einem nächstgelegenen Straßenrand und Anhalten des Fahrzeugs in einem aktuellen Fahrstreifen beinhalten.
-
Die Anweisungen zum Identifizieren der Risikobedingung können außerdem ein Bestimmen einer erwarteten Zeit zum Beheben der Risikobedingung auf Grundlage der identifizierten Risikobedingung beinhalten.
-
Die Anweisungen können weitere Anweisungen zum Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors, eines Beschleunigungssensors empfangen werden, einer Außentemperatur, einer Niederschlagsrate und einem Straßenbelagszustand beinhalten.
-
Die Anweisungen können weitere Anweisungen zum Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle beinhalten, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.
-
Außerdem wird in dieser Schrift ein Verfahren offenbart, das ein Identifizieren einer Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug, ein Bestimmen einer Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung und ein Navigieren des Fahrzeugs auf Grundlage der Anweisung beinhaltet.
-
Das Verfahren kann außerdem ein Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors, eines Beschleunigungssensors empfangen werden, einer Außentemperatur, einer Niederschlagsrate und einem Straßenbelagszustand beinhalten.
-
Das Verfahren kann außerdem ein Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle beinhalten, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.
-
Außerdem wird eine Rechenvorrichtung offenbart, die dazu programmiert ist, beliebige der vorstehenden Verfahrensschritte auszuführen. Darüber hinaus wird ein Fahrzeug offenbart, das die Rechenvorrichtung umfasst.
-
Darüber hinaus wird ein Computerprogrammprodukt offenbart, das ein computerlesbares Medium umfasst, auf dem Anweisungen gespeichert sind, die durch einen Computerprozessor ausgeführt werden können, um beliebige der vorstehenden Verfahrensschritte auszuführen.
-
SYSTEMELEMENTE
-
1 ist ein Blockdiagramm eines Fahrzeugs 100. Das Fahrzeug 100 kann auf eine Vielzahl von bekannten Weisen angetrieben werden, z. B. mithilfe eines Elektromotors und/oder einer Brennkraftmaschine. Das Fahrzeug 100 kann (einen) Computer 110, (einen) Aktor(en) 120, (einen) Sensor(en) 130 (eine) Steuerung(en) 150 und eine Mensch-Maschine-Schnittstelle (human machine interface - HMI) 140 beinhalten, die jeweils nachfolgend ausführlicher erörtert werden.
-
Der Computer 110 beinhaltet einen Prozessor und einen Speicher, wie sie bekannt sind. Der Speicher beinhaltet eine oder mehrere Formen computerlesbarer Medien und speichert Anweisungen, die durch den Computer 110 ausgeführt werden können, um verschiedene Vorgänge durchzuführen, einschließlich der hierin offenbarten.
-
Der Computer 110 kann Programmierung zum Betreiben eines oder mehrerer von Bremsen, Antrieb (z. B. Steuerung der Beschleunigung in dem Fahrzeug durch Steuern eines oder mehrerer von einer Brennkraftmaschine, einem Elektromotor, einem Hybridmotor usw.), Lenkung, Klimasteuerung, Innen- und/oder Außenbeleuchtung usw. des Fahrzeugs und zum Bestimmen, ob und wann der Computer 110 im Gegensatz zu einem menschlichen Bediener derartige Vorgänge steuern soll, beinhalten.
-
Der Computer 110 kann ein Fahrzeug 100 in einem autonomen, einem halbautonomen oder einem nicht autonomen (oder manuellen) Modus betreiben. Zum Zwecke dieser Offenbarung ist ein autonomer Modus als einer definiert, bei dem jedes von Antrieb, Bremsen und Lenken des Fahrzeugs 100 durch den Computer 110 gesteuert wird; in einem halbautonomen Modus steuert der Computer 110 eines oder zwei von Antrieb, Bremsen und Lenken des Fahrzeugs 100; in einem nicht autonomen Modus steuert ein menschlicher Bediener jedes von Antrieb, Bremsen und Lenken des Fahrzeugs 100.
-
Der Computer 110 ist im Allgemeinen für Kommunikationen in einem Fahrzeugkommunikationsnetzwerk angeordnet, das z. B. einen Kommunikationsbus beinhaltet, wie etwa ein Controller Area Network (CAN) oder dergleichen. Der Computer 110 kann mehr als einen Prozessor beinhalten, z. B. Steuerungen 150 oder dergleichen, die zum Überwachen und/oder Steuern verschiedener Teilsysteme, wie etwa eines Antriebsstrangs, einer Bremse, einer Lenkung usw., in dem Fahrzeug enthalten sind, oder kommunikativ mit diesen gekoppelt sein, z. B. über einen Fahrzeugkommunikationsbus, wie nachstehend genauer beschrieben.
-
Über das Fahrzeugnetzwerk kann der Computer 110 Nachrichten an verschiedene Vorrichtungen im Fahrzeug 100 übertragen und/oder Nachrichten von den verschiedenen Vorrichtungen empfangen, z. B. Steuerungen 150, Aktoren 120, Sensoren 130 usw. Alternativ oder zusätzlich kann in Fällen, bei denen der Computer 110 tatsächlich mehrere Vorrichtungen umfasst, das Fahrzeugkommunikationsnetzwerkwerk für Kommunikationen zwischen Vorrichtungen verwendet werden, die in dieser Offenbarung als der Computer 110 wiedergegeben sind. Außerdem können, wie nachstehend erwähnt, verschiedene Steuerungen 150 und/oder Sensoren 130 dem Computer 110 über das Fahrzeugkommunikationsnetzwerk Daten bereitstellen.
-
Des Weiteren kann der Computer 110 zur Kommunikation durch eine drahtlose Kommunikationsschnittstelle mit einem entfernten Computer 160 über ein drahtloses Kommunikationsnetzwerk 170 konfiguriert sein. Bei dem Kommunikationsnetzwerk kann es sich um einen oder mehrere von drahtlosen Kommunikationsmechanismen handeln, einschließlich jeder beliebigen gewünschten Kombination aus drahtlosen (z. B. Mobilfunk, drahtlos, Satellit, Mikrowelle und Funkfrequenz) Kommunikationsmechanismen und jeder beliebigen gewünschten Netzwerktopologie (oder -topologien, wenn mehrere Kommunikationsmechanismen genutzt werden). Beispielhafte F-zu-F-Kommunikationsnetzwerke beinhalten Mobilfunk-, Bluetooth-, IEEE 802.11-, dedizierte Nahbereichskommunikations(dedicated short range communications - DSRC)- und/oder Weitverkehrsnetzwerke (wide area networks - WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
-
Zu den Sensoren 130 können vielfältige Vorrichtungen gehören, die bekanntlich Daten über den Fahrzeugkommunikationsbus, einen privaten Kommunikationsbus, ein Fahrzeug-Ethernet, FPD-Link III, ein LIN (local interconnect network), Maxim-GMSL2 oder eine festverdrahtete analoge Verbindung bereitstellen. Beispielsweise können die Sensoren 130 eine oder mehrere Kamera-, Radar- und/oder Light-Detection-and-Ranging(LIDAR)-Sensoren beinhalten, die in dem Fahrzeug 100 angeordnet sind und Daten bereitstellen, die zumindest einen Teil des Innen- und/oder Außenbereichs des Fahrzeugs abdecken.
-
Die Aktoren 120 beinhalten üblicherweise Schaltungen, Chips oder andere elektronische Komponenten, die unterschiedliche Fahrzeugteilsysteme in Übereinstimmung mit geeigneten Steuersignalen wie bekannt betätigen können. Beispielsweise können die Aktoren 120 ein/en oder mehrere Relais, Servomotoren usw. beinhalten. Die Aktoren 120 können somit verwendet werden, um Bremsung, Beschleunigung, Lenkung, Innenbeleuchtung, Außenbeleuchtung, Hupe usw. des Fahrzeugs 100 zu steuern. Die Steuersignale, die zum Steuern der Aktoren 120 verwendet werden, können durch den Computer 110, eine im Fahrzeug 100 angeordnete Steuereinheit, z. B. die Bremssteuerung 150, usw. erzeugt werden. Das Fahrzeug 100 kann verschiedene Komponenten oder Teilsysteme beinhalten, die jeweils einen oder mehrere Sensoren 130, Aktoren 120, Steuerungen 150 usw. beinhalten. Beispielsweise kann das Fahrzeug 100 eine Bremskomponente beinhalten, die Bremssensoren 130, Bremsaktoren 120 und/oder andere elektronische, mechanische usw. Elemente beinhaltet, die das Fahrzeug 100 auf Grundlage von Befehlen anhalten, die von einer Steuerung 150 empfangen werden. Als ein weiteres Beispiel kann das Fahrzeug 100 eine Antriebsstrangkomponente oder ein Antriebsstrangteilsystem beinhalten, die/das zusätzlich zu einem Motor, Elektromotor und/oder einem Getriebe einen oder mehrere Aktoren 120, Sensoren 130 usw. beinhalten kann.
-
Die HMI 140 kann dazu konfiguriert sein, eine Benutzereingabe zu empfangen, z. B. während des Betriebs des Fahrzeugs 100. Als ein Beispiel kann eine HMI 140 Touchscreens, Tasten, Knöpfe, Tastenfelder, ein Mikrofon und so weiter zum Empfangen von Informationen von einem Benutzer beinhalten. Außerdem kann eine HMI 140 verschiedene Schnittstellen, wie etwa eine Touchscreen-Anzeige, ein Smartphone, externe Anzeigen usw., zum Empfangen von Informationen von einem Benutzer und/oder zum Ausgeben von Informationen an den Benutzer beinhalten.
-
Eine Komponente des Fahrzeugs 100, z. B. ein Aktor 120, ein Sensor 130, eine HMI 140, eine elektronische Steuerung 150, die in einer Komponente beinhaltet ist, usw. kann einen Fehler aufweisen. Bei einem Fehler handelt es sich um einen Zustand, in dem eine Komponente den Betrieb einstellt oder außerhalb eines oder mehrerer vordefinierter Parameter betrieben wird; bei einem vordefinierten Parameter könnte es sich z. B. um eine physikalische Größe handeln, wie etwa eine Temperatur, ein Drehmoment, Umdrehungen pro Minute, einen Druck usw. Demnach könnte ein Betrieb außerhalb eines vordefinierten Parameters beinhalten, dass das Fahrzeug 100 und/oder eine Komponente nicht arbeitet, über und/oder unter einem bestimmten Wert oder Bereich arbeitet, z. B. über einer bestimmten Raddrehzahl, außerhalb eines bestimmten Temperaturbereichs usw. Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, auf Grundlage von Daten, die z. B. von verschiedenen Sensoren 130, Aktoren 120, Steuerungen 150 usw. des Fahrzeugs 100 empfangen werden, zu bestimmen, ob sich eine Komponente des Fahrzeugs 100, z. B. ein Antrieb, eine Bremsung, eine Lenkung usw., in einem Fehlerzustand befindet. Beispielsweise kann ein Fehler durch einen Diagnosevorgang bestimmt werden, d. h. der Computer 110 kann dazu programmiert sein, eine Komponente des Fahrzeugs 100 zu überwachen und zu bestimmen, ob ein Fehlerzustand aufgetreten ist, z. B., ob sich eine physikalische Größe außerhalb eines vordefinierten Bereichs befindet.
-
Der Computer 110 und/oder die Steuerungen 150 können regelmäßig miteinander kommunizieren. Beispielsweise kann eine Bremssteuerung 150 regelmäßig eine Statusnachricht an den Computer 110 übertragen, die Betriebsinformationen der Bremssteuerung 150 beinhaltet. Ein Ausbleiben des Empfangs einer regelmäßigen Nachricht kann als ein Fehlerzustand in einem Fahrzeug 100 identifiziert werden. Der Computer 110 kann dazu programmiert sein, zu bestimmen, ob eine erwartete Nachricht von z. B. einer Steuerung 150, einem zweiten Computer 110 usw., fehlt, d. h. nicht empfangen wurde, wenn bestimmt wird, dass die Nachricht nicht innerhalb einer erwarteten Zeit, z. B. 100 Millisekunden (ms), seit dem Anschalten einer Zündung des Fahrzeugs 100 und/oder seit einer zuvor empfangenen Nachricht empfangen wurde. Wenn bestimmt wird, dass eine Nachricht von z. B. einer Bremssteuerung 150 fehlt, kann der Computer 110 einen DTC (Diagnose-Fehlercode), z. B. gekennzeichnet als „keine Kommunikation mit der Bremssteuerung 150“, in einem Speicher des Computers 110 speichern.
-
In einem Beispiel kann der Computer 110 während eines Betriebs des Fahrzeugs 100 in einem autonomen Modus dazu programmiert sein, eine oder mehrere Steuerungen 150 so zu betätigen, dass sie die Diagnosedaten regelmäßig und/oder bei einer bestimmten Änderung, z. B. eines DTC-Status von einem inaktiven Zustand zu einem aktiven Zustand, überträgt. Anders ausgedrückt kann dieser Prozess als „Abfragen“ bezeichnet werden. Dadurch kann vorteilhafterweise eine Zeit zum Detektieren eines Fehlerzustands in dem Computer 110 des Fahrzeugs 100 im Vergleich zu einer allein regelmäßigen Übertragung von Diagnosedaten, z. B. des DTC-Status, reduziert werden.
-
Der Computer 110 und/oder eine beliebige der Steuerungen 150 des Fahrzeugs 100 kann dazu programmiert sein, einen Diagnosevorgang durchzuführen, indem geprüft wird, ob ein Fehlerzustand vorliegt. Beispielsweise kann von einem Motor ein Mindestausgabedrehmoment erwartet werden, nachdem der Motor eine Schwellenwerttemperatur erreicht hat. Bei dem Fehlerzustand kann es sich um „die Motordrehmomentausgabe ist geringer als der erwartete Drehmomentschwellenwert“ handeln. Der Diagnosevorgang kann außerdem ein Aktualisieren eines Diagnosestatus beinhalten, wenn bestimmt wird, dass ein Fehlerzustand vorliegt und/oder ein zuvor vorliegender Fehlerzustand behoben wurde, d. h. der Fehlerzustand nicht mehr vorliegt, z. B. ein fehlerhaftes Teil des Fahrzeugs 100 ausgetauscht wurde.
-
Der Diagnosevorgang kann außerdem ein Aufzeichnen des Diagnosestatus beinhalten, z. B. in einem Speicher des Computers 110. Jeder Diagnosevorgang kann durch einen Diagnosefehlercode (DTC) identifiziert werden, bei dem es sich üblicherweise um einen eindeutigen numerischen Code handelt, der einen bestimmten Fehlerzustand angibt, den der Computer 110 über ein Netzwerk des Fahrzeugs 100 empfangen kann, wie etwa einen Controller-Area-Network(CAN)-Kommunikationsbus. Es versteht sich, dass DTCs in dieser Schrift in beispielhafter Weise und nicht in einschränkender Weise erörtert werden; andere Fehleridentifikatoren oder -deskriptoren könnten im Kontext der vorliegenden Offenbarung verwendet werden. Ein Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, verschiedene Diagnosevorgänge durchzuführen, die verschiedenen Komponenten des Fahrzeugs 100 zugeordnet sind. Ein Status eines DTC beinhaltet üblicherweise entweder „aktiv“ oder „inaktiv“. Zusätzlich oder alternativ kann der Status eines DTC andere Zustände, wie etwa „derzeit inaktiv und zuvor aufgezeichnet“ usw., beinhalten. „Aktiv“ bedeutet der DTC ist aufgezeichnet. „Inaktiv“ bedeutet der DTC ist nicht aufgezeichnet (z. B. wurde kein Defizit bestimmt oder ein aufgezeichnetes Defizit wurde aus dem Speicher des Computers 110 gelöscht), während „inaktiv, aber zuvor aufgezeichnet“ bedeutet, dass ein Defizitl bestimmt und aufgezeichnet wurde, das Defizit jedoch derzeit nicht aktiv ist. Der Computer 110 und/oder eine Steuerung 150 können dazu programmiert sein, einen Diagnosestatus, der einem jeweiligen der Diagnosevorgänge zugeordnet ist, in einem Speicher des Computers 110 zu aktualisieren und zu speichern und/oder den Diagnosestatus über das Kommunikationsnetzwerk des Fahrzeugs 100 an einen anderen Computer, z. B. ein Diagnosetestgerät, zu übertragen. Jeder DTC identifiziert üblicherweise einen Fehlerzustand einer spezifischen Komponente des Fahrzeugs 100, die z. B. einem Antrieb, einer Lenkung, einer Bremsung usw. des Fahrzeugs 100 zugeordnet ist.
-
Wie vorstehend erörtert, kann der Computer 110 dazu programmiert sein, verschiedene Diagnosevorgänge durchzuführen (was z. B. zum Festlegen eines Status eines oder mehrerer DTCs führt), die jeweils einer oder mehreren Komponenten und/oder Vorgängen des Fahrzeugs 100 zugeordnet sind. Eine Diagnosebedingung kann auf Grundlage einer spezifischen Komponente des Fahrzeugs 100 angegeben werden. Beispielsweise kann jede Steuerung 150 dazu programmiert sein, einen Diagnosevorgang/Diagnosevorgänge durchzuführen, der/die dem Betrieb der jeweiligen Steuerung 150 zugeordnet ist/sind. Der Computer 110 kann dazu programmiert sein, Statusdaten von DCTs von den Steuerungen 150 zu empfangen, z. B. über das Kommunikationsnetzwerk des Fahrzeugs 100.
-
Wie vorstehend erörtert, kann ein Fehlerzustand einen Betrieb des Fahrzeugs 100 und/oder einen Betrieb einer Steuerung 150 beeinträchtigen oder verhindern. Der Computer 110 des Fahrzeugs 100, ein entfernter Computer 160 und/oder eine Kombination daraus kann dazu programmiert sein, eine Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in dem Fahrzeug 100 zu identifizieren, eine Anweisung für das Fahrzeug 100 auf Grundlage der identifizierten Risikobedingung zu bestimmen und das Fahrzeug 100 auf Grundlage der Anweisung zu navigieren.
-
In der vorliegenden Offenbarung handelt es sich bei einer „Betriebsbedingung“ um einen Satz einer Vielzahl von Daten, die physische Parameter des Fahrzeugs 100 angeben, einschließlich Geschwindigkeit, Beschleunigung, Gierrate, Schwingungen usw., und unter Umständen zudem Daten bezüglich der Umgebung des Fahrzeugs 100, wie etwa Wetterdaten, einschließlich Niederschlagsrate, Außentemperatur, Straßenbelagszustand usw., und/oder Routendaten des Fahrzeugs 100, einschließlich Straßenhöhe, Straßenneigung usw. In einem Beispiel kann der Computer 110 des Fahrzeugs 100 Daten bezüglich der Betriebsbedingung des Fahrzeugs 100 von den Sensoren 130 des Fahrzeugs 100, z. B. einem Geschwindigkeitssensor 130, einem Kamerasensor 130, einem Beschleunigungssensor 130 usw., und/oder dem entfernten Computer 160 empfangen. Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, Betriebsbedingungsdaten, z. B. Daten der Sensoren 130 des Fahrzeugs 100, über ein drahtloses Kommunikationsnetzwerk 170 an den entfernten Computer 160 zu übertragen.
-
Eine Risikobedingung oder „minimale Risikobedingung“ (minimal risk condition - MRC) gibt im hier verwendeten Sinne eine Vielzahl einer oder mehrerer Einschränkungen für einen oder mehrere Vorgänge des Fahrzeugs 100 gemäß einem oder mehreren Fehlerzuständen an, z. B. DTCs mit derzeit aktivem Status, DCTs, die zuvor einen aktiven Status aufwiesen, usw. Anders ausgedrückt, gibt die MRC an, welche Maßnahmen ergriffen werden sollten, um ein Risiko einzudämmen oder zu minimieren, das sich aus einem Fehlerzustand in dem Fahrzeug 100 ergeben kann. Ein Risiko kann beispielsweise eine Gefahr eines Aufpralls des Fahrzeugs 100 auf ein anderes Fahrzeug, eine Gefahr eines Verlusts der Kontrolle über den Betrieb des Fahrzeugs 100, z. B. fehlender Bremsbetrieb, usw. beinhalten. Eine Einschränkung beinhaltet im vorliegenden Kontext mindestens eines von (i) Begrenzen eines Bereichs eines einem physischen Attribut des Fahrzeugs 100 zugeordneten Werts, z. B. Begrenzen der Geschwindigkeit des Fahrzeugs 100 auf weniger als 30 Kilometer pro Stunde (km/h), (ii) Aktivieren, Deaktivieren und/oder Konfigurieren eines Betriebsmodus des Fahrzeugs 100, z. B. Deaktivieren eines autonomen Modus des Fahrzeugs 100, und (iii) Anwenden von Einschränkungen auf die Routenführung des Fahrzeugs 100, z. B. Geofencing, Umleiten, Lenken an einen Straßenrand usw. Die Einschränkungen werden jeweils nachstehend unter Bezugnahme auf die Tabellen 1-2 erörtert.
-
Eine MRC kann durch eine Kennziffer identifiziert werden, z. B. „MRC1“, „MRC2“ und „MRC3“, wie in Tabelle 1 gezeigt. Ein Fehlerzustand, z. B. ein aktiver DTC, kann dazu führen, dass ein oder mehrere Vorgänge des Fahrzeugs 100 beeinträchtigt oder nicht verfügbar sind. Daher kann ein MRC auf Grundlage eines verfügbaren Vorgangs/verfügbarer Vorgänge des Fahrzeugs 100 identifiziert werden. Tabelle 1 zeigt eine beispielhafte Zuordnung eines verfügbaren Vorgangs/verfügbarer Vorgänge des Fahrzeugs 100 zu jeweiligen MRCs. Der Schweregrad eines Fehlerzustands kann angeben, in welchem Ausmaß ein Fehlerzustand einen Vorgang/Vorgänge des Fahrzeugs 100 beeinträchtigt (oder nicht verfügbar macht). Der Schweregrad des Fehlers kann auf einer beispielhaften Skala von „gering“, „mittel“ und „hoch“ bestimmt werden. Beispielsweise wird, wenn bei einem Fehlerzustand der Antrieb, die Lenkung und/oder die Bremsung des Fahrzeugs 100 verfügbar sind, der Schweregrad des Fehlerzustands als „gering“ eingestuft. Wenn beispielsweise ein Fehlerzustand einen Antriebsverlust hervorruft, die Lenkung und Bremsung jedoch verfügbar sind, wird der Schweregrad als „mittel“ eingestuft, wohingegen der Schweregrad als „hoch“ eingestuft wird, wenn sowohl Antrieb als auch Lenkung nicht verfügbar sind. Zusätzlich oder alternativ kann ein Schweregrad eines Fehlerzustands anhand einer numerischen Einheit eingestuft werden, wie etwa einem Prozentsatz, z. B. 0 % (null) als geringster Schweregrad und 100 % als höchste Schweregradstufe, und/oder mithilfe anderer Zuordnungen zu einem verfügbaren Vorgang/verfügbarer Vorgängen des Fahrzeugs 100 definiert werden.
-
Tabelle 1 zeigt beispielhafte MRCs (MRC
1, MRC
2 und MRC
3), denen jeweils eine der Schweregradstufen des Fehlerzustands zugeordnet ist. Wie vorstehend erörtert, erlegt jede MRC den Vorgängen des Fahrzeugs
100 und/oder zusätzlichen Handlungen, z. B. Datenerfassung, Angaben an andere Verkehrsteilnehmer usw., Einschränkungen auf. MRC
1 ist einem Fehlerzustand/Fehlerzuständen zugeordnet, bei dem/denen der Grundbetrieb des Fahrzeugs
100 zum Navigieren des Fahrzeugs
100, z. B. Antrieb, Bremsung und/oder Lenkung, verfügbar ist. Es versteht sich, dass MRCs in dieser Schrift in beispielhafter Weise und nicht in einschränkender Weise erörtert werden; andere Identifikatoren oder Deskriptoren könnten im Kontext der vorliegenden Offenbarung verwendet werden. Tabelle 1 zeigt Beispiele für unterschiedliche Fehlerzustände, die jeweils einer MRC zugeordnet sind. Beispielsweise kann ein Multimedia-Fehlerzustand, der keines von Antrieb, Lenkung, Bremsung und Beleuchtung des Fahrzeugs
100 beeinträchtigt, MRC
1 zugeordnet sein.
Tabelle 1
| MRC1 | MRC2 | MRC3 |
Erwartete Zeit zum Beheben der MRC | Bei Rückkehr zum Endpunkt | 120 Sekunden | 20 Sekunden |
Schweregrad des Fehlerzustands | Gering | Mittel | Hoch |
| - Antrieb | - Bremsung | - Bremsung |
Verfügbare | - Bremsung | - Lenkung | - Warnblinklicht |
Fahrzeugvorgänge | - Lenkung | - Warnblinklicht | |
| - Beleuchtung | - Blinker | |
| - Leiten zum Endpunkt nach Abschluss der aktuellen Fahrt | - Navigieren zum nächstgelegenen Straßenrand zum Anhalten | - Anhalten im aktuellen Fahrstreifen |
Einschränkungen | - Potentielle Begrenzung der Geschwindigkeit und/oder Beschleunigung | - Datenerfassung |
| - Datenerfassung | |
| - Datenerfassung | | |
Beispiel | Multimedia-Fehlerzustand | Verlust des Antriebbetriebs | Verlust des Lenkbetriebs |
-
Wie in Tabelle 1 gezeigt, kann jeder MRC eine erwartete Zeit zum Beheben der jeweiligen MRC zugeordnet sein. Die erwartete Zeit zum Beheben der MRC ist ein maximaler Zeitschwellenwert zum Erfüllen der Einschränkungen einer MRC, nachdem die MRC auf Grundlage des detektierten Fehlerzustands identifiziert wurde. Der Computer 110 kann dazu programmiert sein, die erwartete Zeit zum Beheben der Risikobedingung auf Grundlage der identifizierten Risikobedingung zu bestimmen, z. B. auf Grundlage einer im Speicher des Computers 110 gespeicherten Tabelle, wie etwa Tabelle 1.
-
Tabelle 1 zeigt beispielhafte Einschränkungen, die jeweils einer der MRCs zugeordnet sind. Wie nachstehend unter Bezugnahme auf Tabelle 2 erörtert, können der Computer
110 des Fahrzeugs
100 und/oder der entfernte Computer
160 dazu programmiert sein, das Fahrzeug
100 auf Grundlage der MRCs, d. h. auf Grundlage der durch die zugehörige MRC auferlegten Einschränkungen, zu betreiben.
Tabelle 2
Nr. | Fehlerzustand | Fahrzeugbetriebsbedingung | Zugehörige MRC |
1 | Fehlerzustand der Lenksteuerung | Keine | MRC3 |
2 | Verlust des Betriebs des Antiblockiersystems | Temperatur > 7 Grad Celsius | MRC2 |
3 | Verlust des Betriebs des Antiblockiersystems | Temperatur <7 Grad Celsius oder rutschiger Straßenzustand detektiert | MRC3 |
4 | Bremssignal-Plausibilitätsfehler | Keine | MRC1 |
5 | Defektes Rücklicht | Keine | MRC1 |
-
Tabelle 2 zeigt beispielhafte Fehlerzustände des Fahrzeugs 100. Der Computer 110 und/oder der entfernte Computer 160 können dazu programmiert sein, die MRC z. B. auf Grundlage von Daten zu bestimmen, wie sie in Tabelle 2 gezeigt sind, einschließlich einer Vielzahl von Beziehungen zwischen (i) den MRCs und (ii) dem Fehlerzustand (z. B. DTC) und der Betriebsbedingung des Fahrzeugs 100.
-
Unter Bezugnahme auf Beispiel Nummer 1 aus Tabelle 2 kann der Computer 110 dazu programmiert sein, einen Fehlerzustand der Lenksteuerung 150 zu detektieren, der z. B. auf Grundlage eines DTC der Lenksteuerung 150 bestimmt wird und zu einem Verlust des Lenkbetriebs des Fahrzeugs 100 führt, während Antriebs- und Bremsbetrieb verfügbar sind.
-
Somit kann der Computer 110 dazu programmiert sein, auf Grundlage des bestimmten Fehlerzustands die MRC3 zu bestimmen.
-
Wie vorstehend erörtert, können die Betriebsbedingungen des Fahrzeugs 100 Daten der Sensoren 130 des Fahrzeugs 100, von dem entfernten Computer 160 empfangene Daten, z. B. Wetterdaten, usw. beinhalten. Der Computer 110 kann dazu programmiert sein, die MRC auf Grundlage der Betriebsbedingung des Fahrzeugs 100 und Fahrzeugbetriebsschwellenwerten, z. B. eines Temperaturschwellenwerts, eines Geschwindigkeitsschwellenwerts und/oder eines Beschleunigungsschwellenwerts, zu bestimmen. Beispielsweise kann der Computer 110 unter Bezugnahme auf Beispiel 2 aus Tabelle 2 dazu programmiert sein, auf Grundlage des detektierten Fehlerzustands eines Antiblockiersystems (ABS) und einer Außentemperatur, die 7 Grad Celsius überschreitet, MRC2 zu bestimmen, wohingegen der Computer 110 unter Bezugnahme auf Beispiel 3 dazu programmiert sein, auf Grundlage des gleichen detektierten Fehlers und eines detektierten rutschigen Straßenzustands, z. B. auf Grundlage von Daten eines Kamerasensors 130 des Fahrzeugs 100, MRC3 zu bestimmen. Die Beispiele 4 und 5 aus Tabelle 2 zeigen andere Beispiele für Fehlerzustände, die ohne Berücksichtigung von Betriebsbedingungen des Fahrzeugs 100 MRC1 zugeordnet sind.
-
Unter Bezugnahme auf 1 kann der Computer 110, der entfernte Computer 160, der mit dem Computer 110 kommuniziert, oder eine Kombination daraus zum Identifizieren der MRC programmiert sein. In der vorliegenden Offenbarung kann jede hier erörterte Programmierung durch den Computer 110, den entfernten Computer 160 und/oder eine Kombination daraus ausführbar sein. Der Computer 110 kann dazu programmiert sein, auf Grundlage der identifizierten MRCs eine oder mehrere Anweisungen zu identifizieren und auf Grundlage der identifizierten Anweisungen eine oder mehrere Handlungen durchzuführen. In einem Beispiel kann der entfernte Computer 160 dazu programmiert sein, die Anweisung(en) zu identifizieren und der Computer 110 kann dazu programmiert sein, die Anweisungen von dem entfernten Computer 160 zu empfangen und die Handlungen auf Grundlage der empfangenen Anweisungen auszuführen, z. B. Betätigen eines oder mehrerer Aktoren 120 des Fahrzeugs 100. Beispielsweise kann der entfernte Computer 160 dazu programmiert sein, Informationen von einem anderen entfernten Computer zu empfangen, die eine Cybersicherheitsattacke angeben, auf Grundlage der empfangenen Informationen Anweisungen zu bestimmen und die Anweisungen an das Fahrzeug 100 zu übertragen.
-
Wie vorstehend unter Bezugnahme auf Tabelle 1 erörtert, kann eine maximale erwartete Zeit zum Beheben einer jeweiligen MRC bestimmt werden, z. B. 20 Sekunden für MRC3. Somit können die identifizierten Anweisungen zumindest teilweise auf der maximalen erwarteten Zeit zum Beheben der identifizierten MRC beruhen. Der Computer 110 kann dazu programmiert sein, eine Route des Fahrzeugs 100 zu einer Werkstatt zu planen, z. B. für eine Reparatur, eine nächste Fahrt des Fahrzeugs 100 abzusagen, das Fahrzeug 100 zu einem nächstgelegenen Straßenrand zu navigieren und/oder das Fahrzeug 100 in einem aktuellen Fahrstreifen anzuhalten. In einem Beispiel kann der Computer 110 dazu programmiert sein, eine Anweisung zum Anhalten des Fahrzeugs 100 im Fahrstreifen zu identifizieren, wenn eine erwartete Zeit, z. B. 20 Sekunden, zum Beheben einer MRC3 identifiziert wird. In einem anderen Beispiel kann der Computer 110 dazu programmiert sein, auf Grundlage einer erwarteten Zeit, z. B. 120 Sekunden, zum Beheben einer MRC2 eine Anweisung zum Navigieren des Fahrzeugs 100 zu einem nächstgelegenen Straßenrand und zum Anhalten des Fahrzeugs 100 bei der Ankunft am Straßenrand zu identifizieren. Zusätzlich oder alternativ kann der Computer 110 dazu programmiert sein, eine nächste Fahrt des Fahrzeugs 100 abzusagen und/oder das Fahrzeug 100 zu einer Werkstatt zu navigieren, wenn eine MRC1 ohne Begrenzung einer erwarteten Zeit zum Beheben der MRC1 identifiziert wird.
-
Zusätzlich oder alternativ kann der entfernte Computer 160 dazu programmiert sein, auf Grundlage der MRC des Fahrzeugs 100 ein zweites Fahrzeug zu einem Standort des Fahrzeugs 100 zu entsenden. Beispielsweise kann der entfernte Computer 160 dazu programmiert sein, ein zweites Fahrzeug zum Standort des Fahrzeugs 100 zu entsenden, wenn eine MRC2 oder MRC3 für das Fahrzeug 100 identifiziert wird, die zu einem Anhalten des Fahrzeugs 100 führt.
-
Ein Fahrzeug 100 kann mehrere Fehlerzustände gleichzeitig aufweisen. Der Computer 110 kann dazu programmiert sein, die MRC des Fahrzeugs 100 auf Grundlage dessen zu aktualisieren, dass ein zweiter DTC detektiert wird, und die Anweisung auf Grundlage der aktualisierten MRC zu aktualisieren. Der Computer 110 kann dazu programmiert sein, die MRC zu aktualisieren, indem eine dem jeweiligen der DTCs zugeordnete MRC identifiziert wird, und die MRC auszuwählen, der ein höherer Schweregrad zugeordnet ist. Beispielsweise kann der Computer 110, wenn ein zweiter DTC detektiert wird, der zu einer MRC3 führt, während ein erster DTC zu einer MRC2 geführt hat, dazu programmiert sein, die dem Fahrzeug zugeordnete MRC auf MRC3 zu aktualisieren. In einem anderen Beispiel kann der Computer 110, wenn ein zweiter DTC detektiert wird, der zu einer MRC2 führt, während ein erster DTC zu einer MRC3 geführt hat, dazu programmiert sein, die dem Fahrzeug zugeordnete MRC bei MRC3 zu belassen.
-
Der Computer 110 kann dazu programmiert sein, eine aktualisierte erwartete Zeit zum Beheben der MRC derart zu bestimmen, dass die aktualisierte erwartete Zeit zum Beheben der Risikobedingung eine kürzeste einer erwarteten Zeit zum Beheben der einem ersten DTC zugeordneten Risikobedingung und einer zweiten erwarteten Zeit zum Beheben der dem zweiten DTC zugeordneten Risikobedingung ist.
-
VERARBEITUNG
-
Die 2A-2B bilden ein Ablaufdiagramm eines beispielhaften Prozesses 200 zum Steuern eines Fahrzeugs mit einem Fehlerzustand. Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, die Blöcke des Prozesses 200 auszuführen.
-
Unter Bezugnahme auf 2A beginnt der Prozess 200 bei einem Entscheidungsblock 205, bei dem der Computer 110 bestimmt, ob eine Nachricht von z. B. einer Steuerung 150, einem zweiten Computer 110 usw. fehlt. Wenn der Computer 110 bestimmt, dass eine Nachricht fehlt, dann geht der Prozess 200 zu einem Block 210 über; andernfalls geht der Prozess 200 zu einem Entscheidungsblock 215 über.
-
Bei Block 210 zeichnet der Computer 110, z. B. in einem Speicher des Computers 110, einen DTC auf Grundlage der bestimmten fehlenden Nachricht auf. Beispielsweise kann in dem Speicher des Computers 110 ein DTC gespeichert werden, der einen Fehlerzustand der Steuerung 150 angibt, von der erwartet wird, dass sie die fehlende Nachricht, z. B. über ein Kommunikationsnetzwerk des Fahrzeugs 100, überträgt. Im Anschluss an Block 210 geht der Prozess 200 zu Entscheidungsblock 215 über.
-
Bei Entscheidungsblock 215 bestimmt der Computer 110, ob das Fahrzeug 100 in einem autonomen Modus betrieben wird (z. B. ob ein autonomer Modus des Fahrzeugs 100 aktiv ist). Beispielsweise könnte der Computer 110 bestimmen, dass er oder ein anderer Computer 110 des Fahrzeugs 100 derzeit jedes von Antrieb, Lenkung und Bremsung des Fahrzeugs 100 betreibt. Wenn der Computer 110 bestimmt, dass das Fahrzeug 100 im autonomen Modus betrieben wird, dann geht der Prozess 200 zu einem Block 225 über; andernfalls geht der Prozess 200 zu einem Block 220 über.
-
Bei Block 220 empfängt der Computer 110 Diagnosedaten, z. B. von (einer) Steuerung(en) 150, anderen Computern 110 usw. In einem Beispiel kann der Computer 110 einen Status jedes DTC jeder Steuerung 150 und/oder jedes anderen Computers 110 über das Kommunikationsnetzwerk des Fahrzeugs 100 empfangen.
-
Als nächstes überträgt der Computer 110 bei einem Block 230 die Diagnosedaten des Fahrzeugs 100 an einen entfernten Computer 160, z. B. über ein drahtloses Kommunikationsnetzwerk 170. Im Anschluss an Block 230 endet der Prozess 200 oder kehrt alternativ zu Entscheidungsblock 205 zurück, auch wenn dies in 2A nicht gezeigt ist.
-
Bei Block 225 fordert der Computer 110 eine regelmäßige und/oder ereignisgesteuerte Diagnoseaktualisierung an. Beispielsweise kann der Computer 110 dazu programmiert sein, jede der Steuerungen 150 des Fahrzeugs 100 so zu betätigen, dass sie regelmäßig, z. B. alle 50 ms, und/oder bei einer etwaigen Änderung, z. B. bei einer Statusänderung von einem inaktiven zu einem aktiven Status, einen Status für jeden der DTCs überträgt.
-
Als Nächstes bestimmt der Computer 110 bei einem Entscheidungsblock 235, ob ein neuer DTC detektiert wird. Anders ausgedrückt, bestimmt der Computer 110, ob sich ein Status eines DTC einer Steuerung 150 und/oder eines DTC des Computers 110 von inaktiv zu aktiv geändert hat. Wenn der Computer 110 bestimmt, dass ein neuer DTC detektiert wird, dann geht der Prozess 200 zu einem Block 240 über (siehe 2B); andernfalls kehrt der Prozess 200 zu Entscheidungsblock 225 zurück.
-
Unter Bezugnahme auf 2B empfängt bei Block 240 der Computer 110 Daten des Fahrzeugs 100.
-
Als Nächstes empfängt der Computer 110 bei einem Block 245 Umgebungsdaten.
-
Als Nächstes bestimmt der Computer 110 bei einem Block 250 auf Grundlage der empfangenen Daten eine MRC. Der Computer 110 kann dazu programmiert sein, die MRC auf Grundlage des detektierten DTC und der Betriebsdaten des Fahrzeugs 100, z. B. der empfangen Daten des Fahrzeugs 100, der empfangenen Umgebungsdaten usw., zu bestimmen. Der Computer 110 kann dazu programmiert sein, die MRC auf Grundlage einer Tabelle, z. B. Tabelle 2, zu bestimmen, die Beziehungen zwischen (i) den MRCs und (ii) den DTCs und den Betriebsdaten des Fahrzeugs 100 beinhaltet.
-
Als Nächstes bestimmt der Computer 110 bei einem Entscheidungsblock 255, ob eine Anweisung von einem entfernten Computer 160 empfangen wird. Eine empfangene Anweisung kann beispielsweise eine Absage einer zuvor geplanten Fahrt, ein Umleiten des Fahrzeugs 100 zu einem neuen Ziel, z. B. einer Werkstatt, usw. beinhalten. Wenn der Computer 110 bestimmt, dass die Anweisung von dem entfernten Computer 160 empfangen wird, dann geht der Prozess 200 zu einem Block 260 über; andernfalls geht der Prozess 200 zu einem Block 265 über.
-
Bei Block 260 bestimmt der Computer 110 (eine) Handlung(en) auf Grundlage der identifizierten MRC und der empfangenen Anweisung. In einem Beispiel kann der Computer 110 dazu programmiert sein, Standortkoordinaten eines Werkstattstandorts von dem entfernten Computer 160 zu empfangen und Handlungen, z. B. Reduzieren der Geschwindigkeit, Anschalten des Wamblinklichts und Umleiten zur Werkstatt, auf Grundlage der MRC und der empfangenen Standortkoordinaten der Werkstatt zu bestimmen.
-
Bei Block 265 bestimmt der Computer 110 (eine) Handlung(en) auf Grundlage der identifizierten MRC. Beispielsweise kann der Computer 110 dazu programmiert sein, Handlungen auf Grundlagen von Einschränkungen zu identifizieren, die der identifizierten MRC zugeordnet sind, wie in den Beispielen aus Tabelle 1 gezeigt.
-
Im Anschluss an die Blöcke 260 und 265 führt der Computer 110 bei einem Block 270 die bestimmten Handlungen durch. Der Computer 110 kann dazu programmiert sein, die Handlungen durch Betätigen von Aktoren 120 des Fahrzeugs 100, einschließlich Antrieb, Lenkung, Bremsung, Beleuchtung usw., durchzuführen.
-
Im Anschluss an Block 270 endet der Prozess 200 oder kehrt alternativ zu Entscheidungsblock 205 zurück, auch wenn dies in den 2A-2B nicht gezeigt ist.
-
3 ist ein Ablaufdiagramm eines beispielhaften Prozesses 300 zum Betreiben mehrerer Fahrzeuge aus der Ferne. Der entfernte Computer 160 kann dazu programmiert sein, die Blöcke des Prozesses 300 auszuführen.
-
Der Prozess 300 beginnt bei einem Block 305, bei dem der entfernte Computer 160 Diagnosedaten und Daten von Sensoren 130 von einem oder mehreren Fahrzeugen 100 empfängt. Der entfernte Computer 160 kann dazu programmiert sein, die Diagnosedaten der Fahrzeuge 100, z. B. Statusänderung eines DTC, und die Daten von den Sensoren 130 der Fahrzeuge 100, z. B. einem Beschleunigungssensor 130, einem Geschwindigkeitssensor 130 usw., regelmäßig, z. B. alle 50 ms, zu empfangen.
-
Als Nächstes empfängt der entfernte Computer 160 bei einem Block 310 Umgebungsdaten, z. B. von einer Wetterstation, die über ein drahtgebundenes und/oder drahtloses Kommunikationsnetzwerk 170 mit dem entfernten Computer 160 kommuniziert. Die empfangenen Umgebungsdaten können Niederschlagsrate, Temperatur usw. beinhalten.
-
Als Nächstes bestimmt der entfernte Computer 160 bei einem Entscheidungsblock 315, ob ein oder mehrere DCTs aktiv sind (d. h. ein Status des DTC aktiv ist). Wenn der entfernte Computer 160 bestimmt, dass ein DTC aktiv ist, geht der Prozess 300 zu einem Block 320 über; andernfalls kehrt der Prozess 300 zu Entscheidungsblock 315 zurück.
-
Bei Block 320 identifiziert der entfernte Computer 160 eine dem Fahrzeug 100 mit aktiven DTCs zugeordnete MRC. Der Computer 160 kann dazu programmiert sein, die MRC auf Grundlage des detektierten DTC, der empfangenen Umgebungsdaten und/oder der empfangenen Daten der Sensoren 130 des Fahrzeugs 100 zu bestimmen, z. B. unter Verwendung von in einer Tabelle, wie etwa Tabelle 2, gespeicherten Beziehungen.
-
Als Nächstes bestimmt der entfernte Computer 160 bei einem Block 325 eine Handlung auf Grundlage der identifizierten MRC. Der entfernte Computer 160 kann dazu programmiert sein, Handlungen zu bestimmen, denen eine Kennung eines Fahrzeugs 100 zugeordnet ist. Beispielsweise kann der entfernte Computer 160 dazu programmiert sein, eine erste Handlung für ein erstes Fahrzeug 100 mit einer ersten Risikobedingung und eine zweite Handlung für ein zweites Fahrzeug 100 mit einer zweiten Risikobedingung zu bestimmen. Zusätzlich oder alternativ kann der entfernte Computer 160 dazu programmiert sein, eine Handlung zu bestimmen, die ein zweites Fahrzeug 100 ohne Fehlerzustand zu einem Standort eines ersten Fahrzeugs 100 mit einem Fehlerzustand entsendet. Beispielsweise kann der entfernte Computer 160 dazu programmiert sein, ein zweites Fahrzeug 100 zu entsenden, wenn bestimmt wird, dass das erste Fahrzeug 100 eine MRC2 oder MRC3 aufweist, die zu einem Anhalten an einem Straßenrand führt.
-
Als Nächstes überträgt der entfernte Computer 160 bei einem Block 330 Anweisungen zum Ausführen der bestimmten Handlung(en) an das Fahrzeug 100. Der entfernte Computer 160 kann dazu programmiert sein, die Anweisung einschließlich einer Kennung des Fahrzeugs 100 zu übertragen, von dem erwartet wird, dass es die empfangene Anweisung ausführt. Im Anschluss an Block 330 endet der Prozess 300 oder kehrt alternativ zu Block 305 zurück, auch wenn dies in 3 nicht gezeigt ist.
-
Sofern nicht ausdrücklich das Gegenteil angegeben ist, bedeutet „auf Grundlage von“ „zumindest teilweise auf Grundlage von“ und/oder „vollständig auf Grundlage von“. Rechenvorrichtungen, wie sie in dieser Schrift erörtert werden, beinhalten im Allgemeinen jeweils Anweisungen, die durch eine oder mehrere Rechenvorrichtungen, wie etwa die vorstehend identifizierten, und zum Ausführen von Blöcken oder Schritten vorstehend beschriebener Prozesse ausgeführt werden können. Computerausführbare Anweisungen können von Computerprogrammen zusammengestellt oder ausgewertet werden, die unter Verwendung vielfältiger Programmiersprachen und/oder -technologien erstellt wurden, einschließlich unter anderem und entweder für sich oder in Kombination Java™, C, C++, Visual Basic, Java Script, Perl, HTML usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen, z. B. von einem Speicher, einem computerlesbaren Medium usw., und führt diese Anweisungen aus, wodurch einer oder mehrere Prozesse, einschließlich eines oder mehrerer der in dieser Schrift beschriebenen Prozesse, durchgeführt werden. Derartige Anweisungen und andere Daten können unter Verwendung einer Vielfalt an computerlesbaren Medien gespeichert und übertragen werden. Eine Datei in der Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die auf einem computerlesbaren Medium, wie etwa einem Speichermedium, einem Direktzugriffsspeicher usw., gespeichert ist.
-
Ein computerlesbares Medium beinhaltet ein beliebiges Medium, das am Bereitstellen von Daten (z. B. Anweisungen) beteiligt ist, die durch einen Computer ausgelesen werden können. Ein derartiges Medium kann viele Formen annehmen, einschließlich unter anderem nichtflüchtiger Medien, flüchtiger Medien usw. Nichtflüchtige Medien beinhalten beispielsweise optische und Magnetplatten und anderen dauerhaften Speicher. Flüchtige Medien beinhalten dynamischen Direktzugriffsspeicher (dynamic random access memory - DRAM), der typischerweise einen Hauptspeicher darstellt. Gängige Formen computerlesbarer Medien beinhalten beispielsweise eine Diskette, eine Folienspeicherplatte, eine Festplatte, ein Magnetband, ein beliebiges anderes magnetisches Medium, eine CD-ROM, eine DVD, ein beliebiges anderes optisches Medium, Lochkarten, Lochstreifen, ein beliebiges anderes physisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH, einen EEPROM, einen beliebigen anderen Speicherchip oder eine beliebige andere Speicherkassette oder ein beliebiges anderes Medium, das ein Computer auslesen kann.
-
Hinsichtlich der in dieser Schrift beschriebenen Medien, Prozesse, Systeme, Verfahren usw. versteht es sich, dass die Schritte derartiger Prozesse usw. zwar als gemäß einer bestimmten Abfolge erfolgend beschrieben worden sind, derartige Prozesse jedoch so umgesetzt werden könnten, dass die beschriebenen Schritte in einer anderen Reihenfolge als der in dieser Schrift beschriebenen Reihenfolge durchgeführt werden. Es versteht sich außerdem, dass bestimmte Schritte gleichzeitig durchgeführt, andere Schritte hinzugefügt oder bestimmte in dieser Schrift beschriebene Schritte weggelassen werden könnten. Anders ausgedrückt, sind die Beschreibungen von Systemen und/oder Prozessen in der vorliegenden Schrift zum Zwecke der Veranschaulichung bestimmter Ausführungsformen bereitgestellt und sollten keinesfalls dahingehend ausgelegt werden, dass sie den offenbarten Gegenstand einschränken.
-
Dementsprechend versteht es sich, dass die vorliegende Offenbarung, einschließlich der vorstehenden Beschreibung und der beigefügten Figuren und nachstehenden Patentansprüche, veranschaulichend und nicht einschränkend sein soll. Viele Ausführungsformen und Anwendungen, bei denen es sich nicht um die bereitgestellten Beispiele handelt, werden dem Fachmann beim Lesen der vorstehenden Beschreibung ersichtlich. Der Schutzumfang der Erfindung sollte nicht unter Bezugnahme auf die vorstehende Beschreibung bestimmt werden, sondern stattdessen unter Bezugnahme auf Patentansprüche, die hier beigefügt sind und/oder in einer hierauf beruhenden, nicht vorläufigen Patentanmeldung enthalten sind, gemeinsam mit dem vollständigen Schutzumfang von Äquivalenten, zu denen derartige Patentansprüche berechtigt sind. Es wird erwartet und ist beabsichtigt, dass es hinsichtlich der in dieser Schrift erörterten Fachgebiete künftige Entwicklungen geben wird und dass die offenbarten Systeme und Verfahren in derartige künftige Ausführungsformen aufgenommen werden. Insgesamt versteht es sich, dass der offenbarte Gegenstand modifiziert und variiert werden kann.
-
Gemäß der vorliegenden Erfindung wird ein System bereitgestellt, das Folgendes aufweist: eine Einrichtung zum Identifizieren einer Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug; eine Einrichtung zum Bestimmen einer Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung; und eine Einrichtung zum Navigieren des Fahrzeugs auf Grundlage der Anweisung.
-
Gemäß einer Ausführungsform beinhaltet die bestimmte Anweisung mindestens eines von Planen einer Route zu einer Werkstatt, Absagen einer nächsten Fahrt, Navigieren des Fahrzeugs zu einem nächstgelegenen Straßenrand und Anhalten des Fahrzeugs in einem aktuellen Fahrstreifen.
-
Gemäß einer Ausführungsform beinhaltet die Einrichtung zum Identifizieren der Risikobedingung außerdem eine Einrichtung zum Bestimmen einer erwarteten Zeit zum Beheben der Risikobedingung auf Grundlage der identifizierten Risikobedingung.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem durch Folgendes gekennzeichnet: eine Einrichtung zum Aktualisieren der Risikobedingung auf Grundlage eines zweiten DTC; und eine Einrichtung zum Aktualisieren der Anweisung auf Grundlage der aktualisierten Risikobedingung.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem gekennzeichnet durch eine Einrichtung zum Bestimmen einer aktualisierten erwarteten Zeit zum Beheben der Risikobedingung, wobei es sich bei der aktualisierten erwarteten Zeit zum Beheben der Risikobedingung um eine kürzeste einer ersten erwarteten Zeit zum Beheben der dem DTC zugeordneten Risikobedingung und einer zweiten erwarteten Zeit zum Beheben der dem zweiten DTC zugeordneten Risikobedingung handelt.
-
Gemäß einer Ausführungsform beinhaltet die Einrichtung zum Identifizieren der Risikobedingung einen Fahrzeugcomputer und die Einrichtung zum Bestimmen der Anweisung beinhaltet einen entfernten Computer, der drahtlos mit dem Fahrzeugcomputer kommuniziert.
-
Gemäß einer Ausführungsform handelt es sich bei der Einrichtung zum Navigieren des Fahrzeugs um einen Fahrzeugcomputer.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem gekennzeichnet durch eine Einrichtung zum Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors und eines Beschleunigungssensors empfangen werden.
-
Gemäß einer Ausführungsform beinhaltet die Fahrzeugbetriebsbedingung außerdem eine Außentemperatur, eine Niederschlagsrate und einen Straßenbelagszustand.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem gekennzeichnet durch eine Einrichtung zum Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem gekennzeichnet durch eine Einrichtung zum Entsenden eines zweiten Fahrzeugs zu einem Standort des Fahrzeugs auf Grundlage der Risikobedingung des Fahrzeugs.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem gekennzeichnet durch eine Einrichtung zum Bestimmen der Risikobedingung auf Grundlage der Fahrzeugbetriebsbedingung und einer Vielzahl von Fahrzeugbetriebsschwellenwerten, einschließlich mindestens eines von einem Temperaturschwellenwert, einem Geschwindigkeitsschwellenwert und einem Beschleunigungsschwellenwert.
-
Gemäß der vorliegenden Erfindung wird ein System bereitgestellt, das einen Prozessor und einen Speicher aufweist, wobei im Speicher Anweisungen gespeichert sind, die durch den Prozessor ausgeführt werden können, um: eine Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug zu identifizieren, eine Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung zu bestimmen; und das Fahrzeug auf Grundlage der Anweisung zu navigieren.
-
Gemäß einer Ausführungsform beinhaltet die bestimmte Anweisung mindestens eines von Planen einer Route zu einer Werkstatt, Absagen einer nächsten Fahrt, Navigieren des Fahrzeugs zu einem nächstgelegenen Straßenrand und Anhalten des Fahrzeugs in einem aktuellen Fahrstreifen.
-
Gemäß einer Ausführungsform beinhalten die Anweisungen zum Identifizieren der Risikobedingung außerdem ein Bestimmen einer erwarteten Zeit zum Beheben der Risikobedingung auf Grundlage der identifizierten Risikobedingung.
-
Gemäß einer Ausführungsform beinhalten die Anweisungen weitere Anweisungen zum Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors, eines Beschleunigungssensors empfangen werden, einer Außentemperatur, einer Niederschlagsrate und einem Straßenbelagszustand.
-
Gemäß einer Ausführungsform beinhalten die Anweisungen weitere Anweisungen zum Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.
-
Gemäß der vorliegenden Erfindung wird ein Verfahren, bereitgestellt, das Folgendes aufweist: Identifizieren einer Risikobedingung auf Grundlage eines Diagnose-Fehlercodes (DTC) und einer Betriebsbedingung in einem Fahrzeug; Bestimmen einer Anweisung für das Fahrzeug auf Grundlage der identifizierten Risikobedingung; und Navigieren des Fahrzeugs auf Grundlage der Anweisung.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem gekennzeichnet durch ein Bestimmen der Fahrzeugbetriebsbedingung auf Grundlage von Daten, die von mindestens einem eines Fahrzeuggeschwindigkeitssensors, eines Kamerasensors, eines Beschleunigungssensors empfangen werden, einer Außentemperatur, einer Niederschlagsrate und einem Straßenbelagszustand.
-
Gemäß einer Ausführungsform ist die Erfindung außerdem gekennzeichnet durch ein Bestimmen der Risikobedingung zumindest teilweise auf Grundlage einer Tabelle, die eine Vielzahl von Beziehungen zwischen (i) der Risikobedingung und (ii) dem DTC und der Fahrzeugbetriebsbedingung beinhaltet.