-
EINLEITUNG
-
Die vorliegende Offenbarung bezieht sich auf das Schätzen des Zielschlupfes unter Verwendung sowohl eines Klassifikators des maschinellen Lernens als auch einer Interpolation, wenn ein Vertrauensniveauwert kleiner als ein Vertrauensniveau-Schwellenwert ist.
-
Die Werte der Reifenkraft werden geschätzt, weil die tatsächlichen Reifenkräfte typischerweise nicht bekannt sind. Eine Reifenkraft, die geschätzt werden kann, ist der Zielschlupf oder die Ziel-Griffigkeit. Der geschätzte Zielschlupf kann zur Steuerung der Fahrzeugstabilität verwendet werden. Herkömmliche Zielschlupf-Schätztechniken berücksichtigen jedoch nicht die sich dynamisch ändernden Fahrbedingungen, da ein typischer Klassifikator sowohl vorgegebene Werte als auch Werte mit niedrigem Vertrauensniveauwert bereitstellt, weshalb der Klassifikator den Zielschlupfwert nicht bestimmen kann.
-
ZUSAMMENFASSUNG
-
Ein System umfasst einen Computer, der einen Prozessor und einen Speicher enthält. Der Speicher enthält Anweisungen, so dass der Prozessor programmiert ist: bei einem trainierten Klassifikator des maschinellen Lernens einen Zielschlupfwert basierend auf einem vorhergesagten Schlupfanstieg und einer vorhergesagten Straßentextur vorherzusagen, wobei der vorhergesagte Schlupfanstieg und die vorhergesagte Straßentextur unter Verwendung von Sensordaten, die Reifenkräfte repräsentieren, bestimmt werden, und wenigstens eine Fahrzeughandlung basierend auf dem Zielschlupfwert zu modifizieren, wenn ein Vertrauensniveauwert, der dem Zielschlupfwert entspricht, größer als ein oder gleich einem Vertrauensniveau-Schwellenwert ist.
-
Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, den Zielschlupfwert über Interpolationsmodellierung zu bestimmen, wenn der Vertrauensniveauwert kleiner als der Vertrauensniveau-Schwellenwert ist.
-
Gemäß weiteren Merkmalen umfasst die Interpolationsmodellierung eine lineare Interpolationsmodellierung.
-
Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, die Sensordaten, die die Reifenkräfte repräsentieren, zu empfangen.
-
Gemäß weiteren Merkmalen umfassen die Reifenkräfte Messungen, die eine Radgeschwindigkeit eines Fahrzeugs repräsentieren.
-
Gemäß weiteren Merkmalen umfasst der trainierte Klassifikator des maschinellen Lernens einen Gauß-Prozess-Klassifikator.
-
Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, basierend auf dem Zielschlupfwert wenigstens eines eines Antiblockiersystems, einer Antriebsschlupfregelung oder eines elektronischen Stabilitätskontrollsystems zu modifizieren.
-
Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, die vorhergesagte Straßentextur basierend auf wenigstens einem eines Schlupfverhältnisses oder der Reifenkräfte zu bestimmen.
-
Gemäß weiteren Merkmalen ist der Prozessor ferner programmiert, auf eine Nachschlagetabelle zuzugreifen, die die Straßentextur mit dem wenigstens einen des Schlupfverhältnisses oder der Reifenkräfte in Beziehung setzt.
-
Gemäß weiteren Merkmalen erzeugt der trainierte Klassifikator des maschinellen Lernens den Vertrauensniveauwert.
-
Ein Verfahren enthält Vorhersagen, bei einem trainierten Klassifikator des maschinellen Lernens, eines Zielschlupfwertes basierend auf einem vorhergesagten Schlupfanstieg und einer vorhergesagten Straßentextur, wobei der vorhergesagte Schlupfanstieg und die vorhergesagte Straßentextur unter Verwendung von Sensordaten, die Reifenkräfte repräsentieren, bestimmt werden, und Modifizieren wenigstens einer Fahrzeughandlung basierend auf dem Zielschlupfwert, wenn ein Vertrauensniveauwert, der dem Zielschlupfwert entspricht, größer als ein oder gleich einem Vertrauensniveau-Schwellenwert ist.
-
Gemäß weiteren Merkmalen enthält das Verfahren ferner Bestimmen des Zielschlupfwerts über Interpolationsmodellierung, wenn der Vertrauensniveauwert kleiner als der Vertrauensniveau-Schwellenwert ist.
-
Gemäß weiteren Merkmalen umfasst die Interpolationsmodellierung eine lineare Interpolationsmodellierung.
-
Gemäß weiteren Merkmalen enthält das Verfahren ferner Empfangen der Sensordaten, die die Reifenkräfte repräsentieren.
-
Gemäß weiteren Merkmalen umfassen die Reifenkräfte Messungen, die eine Radgeschwindigkeit eines Fahrzeugs repräsentieren.
-
Gemäß weiteren Merkmalen umfasst der trainierte Klassifikator des maschinellen Lernens einen Gauß-Prozess-Klassifikator.
-
Gemäß weiteren Merkmalen enthält das Verfahren ferner Modifizieren wenigstens eines eines Antiblockiersystems, einer Antriebsschlupfregelung oder eines elektronischen Stabilitätskontrollsystems basierend auf dem Zielschlupfwert.
-
Gemäß weiteren Merkmalen enthält das Verfahren ferner Bestimmen der vorhergesagten Straßentextur basierend auf wenigstens einem eines Schlupfverhältnisses oder der Reifenkräfte.
-
Gemäß weiteren Merkmalen enthält das Verfahren ferner Zugreifen auf eine Nachschlagetabelle, die die Straßentextur mit dem wenigstens einen des Schlupfverhältnisses oder der Reifenkräfte in Beziehung setzt.
-
Gemäß weiteren Merkmalen erzeugt der trainierte Klassifikator des maschinellen Lernens den Vertrauensniveauwert.
-
Weitere Anwendungsbereiche werden aus der hier bereitgestellten Beschreibung offensichtlich. Es soll erkannt werden, dass die Beschreibung und die spezifischen Beispiele nur der Veranschaulichung dienen und den Schutzumfang der vorliegenden Offenbarung nicht einschränken sollen.
-
Figurenliste
-
Die hier beschriebenen Zeichnungen dienen nur der Veranschaulichung und sollen den Schutzumfang der vorliegenden Offenbarung in keiner Weise einschränken; es zeigen:
- 1 einen Blockschaltplan eines beispielhaften Systems, das ein Fahrzeug enthält;
- 2 einen Blockschaltplan eines beispielhaften Fahrzeugcomputers;
- 3 einen Blockschaltplan einer beispielhaften Rechenvorrichtung;
- 4 ein Diagramm, das die Straßentextur als eine Funktion des Schlupfanstiegs darstellt; und
- 5 einen Ablaufplan, der einen beispielhaften Prozess zum Schätzen eines Zielschlupfes und zum Steuern wenigstens einer Fahrzeughandlung basierend auf dem geschätzten Zielschlupf veranschaulicht.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Die folgende Beschreibung ist lediglich beispielhaft und soll die vorliegende Offenbarung, Anwendung oder Verwendungen nicht einschränken.
-
Der Zielschlupf kann als die Relativbewegung zwischen einem Reifen, wie z. B. einem Fahrzeugreifen, und einer Straßenoberfläche, auf der sich der Reifen bewegt, definiert sein. Gemäß einigen Beispielen kann der Zielschlupf durch die Drehzahl des Reifens, die größer als oder kleiner als die Freilaufdrehzahl ist, erzeugt werden. Wie hier erörtert wird, können die Zielschlüpfe, die für die maximale Reifen-Griffigkeit relevant sind, basierend auf den Reifenkräften geschätzt werden, die durch einen oder mehrere Fahrzeugsensoren gemessen werden, die verwendet werden können, um die Typen der Straßenoberfläche zu schätzen. Eine oder mehrere Fahrzeugkomponenten können eine Fahrzeughandlung einstellen, um basierend auf dem Zielschlupf die Reifen-Griffigkeit zu maximieren.
-
1 ist ein Blockschaltplan eines beispielhaften Fahrzeugsystems 100. Das System 100 enthält ein Fahrzeug 105, das ein Landfahrzeug, wie z. B. ein Personenkraftwagen, ein Lastkraftwagen usw., ein Luftfahrzeug und/oder ein Wasserfahrzeug umfassen kann. Das Fahrzeug 105 enthält einen Computer 110, die Fahrzeugsensoren 115, die Aktuatoren 120, um verschiedene Fahrzeugkomponenten 125 zu betätigen, und ein Fahrzeugkommunikationsmodul 130. Über ein Netz 135 ermöglicht das Kommunikationsmodul 130 dem Computer 110, mit einem Server 145 zu kommunizieren.
-
Der Computer 110 kann ein Fahrzeug 105 in einer autonomen, einer halbautonomen Betriebsart oder einer nicht autonomen (manuellen) Betriebsart betreiben. Für die Zwecke dieser Offenbarung ist eine autonome Betriebsart als eine Betriebsart definiert, in der jedes des Antriebs, des Bremsens und des Lenkens des Fahrzeugs 105 durch den Computer 110 gesteuert ist; wobei in einer halbautonomen Betriebsart der Computer 110 eines oder zwei des Antriebs, des Bremsens und des Lenkens der Fahrzeuge 105 steuert; während in einer nicht autonomen Betriebsart eine menschliche Bedienungsperson jedes des Antriebs, des Bremsens und des Lenkens des Fahrzeugs 105 steuert.
-
Der Computer 110 kann eine Programmierung enthalten, um sowohl eines oder mehreres der Bremsen, des Antriebs (z. B. die Steuerung der Beschleunigung des Fahrzeugs durch Steuern eines oder mehrerer einer Brennkraftmaschine, eines Elektromotors, einer Hybrid-Kraftmaschine usw.), der Lenkung, der Klimatisierung, der Innen- und/oder Außenbeleuchtung usw. des Fahrzeugs 105 zu steuern als auch zu bestimmen, ob und wann der Computer 110 im Gegensatz zu einer menschlichen Bedienungsperson derartige Operationen steuern soll. Zusätzlich kann der Computer 110 programmiert sein, zu bestimmen, ob und wann eine menschliche Bedienungsperson derartige Operationen steuern soll.
-
Der Computer 110 kann mehr als einen Prozessor enthalten oder mit diesen, z. B. über das Kommunikationsmodul 130 des Fahrzeugs 105, wie im Folgenden weiter beschrieben wird, kommunikationstechnisch gekoppelt sein, die z. B. in elektronischen Controller-Einheiten (ECUs) oder dergleichen enthalten sind, die in dem Fahrzeug 105 zum Überwachen und/oder Steuern verschiedener Fahrzeugkomponenten 125, z. B. eines Antriebsstrang-Controllers, eines Brems-Controllers, eines Lenkungs-Controllers usw., enthalten sind. Ferner kann der Computer 110 über das Kommunikationsmodul 130 des Fahrzeugs 105 mit einem Navigationssystem kommunizieren, das das Globale Positionierungssystem (GPS) verwendet. Als ein Beispiel kann der Computer 110 z. B. Ortsdaten des Fahrzeugs 105 anfordern und empfangen. Die Ortsdaten können sich in einer bekannten Form, z. B. Geokoordinaten (Breiten- und Längenkoordinaten), befinden.
-
Der Computer 110 ist im Allgemeinen für die Kommunikation mit dem Kommunikationsmodul 130 des Fahrzeugs 105 und außerdem mit einem internen drahtgebundenen und/oder drahtlosen Netz des Fahrzeugs 105, z. B. einem Bus oder dergleichen im Fahrzeug 105, wie z. B. einem Controller-Bereichsnetz (CAN) oder dergleichen, und/oder anderen drahtgebundenen und/oder drahtlosen Mechanismen ausgelegt.
-
Der Computer 110 kann über das Kommunikationsnetz des Fahrzeugs 105 Nachrichten an verschiedene Vorrichtungen im Fahrzeug 105 senden und/oder Nachrichten von den verschiedenen Vorrichtungen, z. B. den Fahrzeugsensoren 115, den Aktuatoren 120, den Fahrzeugkomponenten 125, einer Mensch-Maschine-Schnittstelle (HMI) usw., empfangen. Alternativ oder zusätzlich kann in den Fällen, in denen der Computer 110 tatsächlich mehrere Vorrichtungen umfasst, das Kommunikationsnetz des Fahrzeugs 105 für die Kommunikation zwischen den in dieser Offenbarung als der Computer 110 dargestellten Vorrichtungen verwendet werden. Ferner können, wie im Folgenden erwähnt wird, verschiedene Controller und/oder Fahrzeugsensoren 115 Daten dem Computer 110 bereitstellen. Das Kommunikationsnetz des Fahrzeugs 105 kann ein oder mehrere Gateway-Module enthalten, die die Zusammenarbeitsfähigkeit zwischen verschiedenen Netzen und Vorrichtungen innerhalb des Fahrzeugs 105, wie z. B. Protokollübersetzer, Impedanzanpasser, Ratenumsetzer und dergleichen, bereitstellen.
-
Die Fahrzeugsensoren 115 können verschiedene Vorrichtungen enthalten, wie sie z. B. bekannt sind, um dem Computer 110 Daten bereitzustellen. Die Fahrzeugsensoren 115 können z. B. Radsensoren enthalten, die die Reifenkräfte messen. Die Fahrzeugsensoren 115 können zudem einen Lichtdetektions- und -ortungssensor(en) (Lidar-Sensor(en)) 115 usw. enthalten, der (die) auf einer Oberseite des Fahrzeugs 105, hinter einer Front-Windschutzscheibe des Fahrzeugs 105, um das Fahrzeug 105 herum usw. angeordnet ist (sind), die relative Positionen, Grö-ßen und Formen von Objekten und/oder Bedingungen, die das Fahrzeug 105 umgeben, bereitstellen. Als ein weiteres Beispiel können ein oder mehrere Radarsensoren 115, die an den Stoßfängern des Fahrzeugs 105 befestigt sind, Daten bereitstellen, um die Geschwindigkeit von Objekten usw. bezüglich des Orts des Fahrzeugs 105 bereitzustellen und zu klassifizieren. Die Fahrzeugsensoren 115 können ferner Kamerasensor(en) 115 enthalten, z. B. Frontansicht, Seitenansicht, Rückansicht usw., die Bilder aus einem Sehfeld innerhalb und/oder außerhalb des Fahrzeugs 105 bereitstellen.
-
Die Aktuatoren 120 des Fahrzeugs 105 sind über Schaltungen, Chips, Motoren oder andere elektronische und/oder mechanische Komponenten implementiert, die verschiedene Fahrzeug-Teilsysteme gemäß geeigneten Steuersignalen betätigen können, wie bekannt ist. Die Aktuatoren 120 können verwendet werden, um die Komponenten 125, einschließlich des Bremsens, des Beschleunigens und des Lenkens eines Fahrzeugs 105, zu steuern.
-
Im Kontext der vorliegenden Offenbarung ist eine Fahrzeugkomponente 125 eine oder mehrere Hardware-Komponenten, die dafür ausgelegt sind, eine mechanische oder elektromechanische Funktion oder Operation - wie z. B. das Fahren des Fahrzeugs 105, das Verlangsamen oder Anhalten des Fahrzeugs 105, das Lenken des Fahrzeugs 105 usw. - auszuführen. Nicht einschränkende Beispiele der Komponenten 125 enthalten eine Antriebskomponente (die z. B. eine Brennkraftmaschine und/oder einen Elektromotor usw. enthält), eine Getriebekomponente, eine Lenkkomponente (die z. B. eines oder mehreres eines Lenkrads, einer Lenkzahnstange usw. enthalten kann), eine Einparkhilfekomponente, eine Komponente einer adaptiven Geschwindigkeitsregelung, eine Komponente einer adaptiven Lenkung, einen beweglichen Sitz, eine Antiblockiersystemkomponente (ABS-Komponente), eine Antriebsschlupfregelungskomponente (TCS-Komponente) oder eine Komponente eines elektronischen Stabilitätskontrollsystems.
-
Zusätzlich kann der Computer 110 konfiguriert sein, über ein Fahrzeug-zu-Fahrzeug-Kommunikationsmodul oder eine Fahrzeug-zu-Fahrzeug-Kommunikationsschnittstelle 130 mit Vorrichtungen außerhalb des Fahrzeugs 105, z. B. über eine drahtlose Fahrzeug-zu-Fahrzeug- (V2V-) oder Fahrzeug-zu-Infrastruktur- (V2X-) Kommunikation mit einem weiteren Fahrzeug, (typischerweise über das Netz 135) mit einem entfernten Server 145 zu kommunizieren. Das Modul 130 könnte einen oder mehrere Mechanismen, durch die der Computer 110 kommunizieren kann, einschließlich irgendeiner gewünschten Kombination von drahtlosen (z. B. Zellen-, drahtlosen, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und irgendeiner gewünschten Netztopologie (oder -topologien, wenn mehrere Kommunikationsmechanismen verwendet werden) enthalten. Beispielhafte Kommunikationen, die über das Modul 130 bereitgestellt werden, enthalten Zellen-, Bluetooth®-, IEEE 802.11-, dedizierte Kurzstreckenkommunikation (DSRC) und/oder Weitbereichsnetze (WAN) einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
-
Das Netz 135 kann einer oder mehrere von verschiedenen drahtgebundenen oder drahtlosen Kommunikationsmechanismen sein, einschließlich irgendeiner gewünschten Kombination von drahtgebundenen (z. B. Kabel und Glasfaser) und/oder drahtlosen (z. B. Zellen-, drahtlosen, Satelliten-, Mikrowellen- und Hochfrequenz-) Kommunikationsmechanismen und irgendeiner gewünschten Netztopologie (oder -topologien, wenn mehrere Kommunikationsmechanismen verwendet werden). Beispielhafte Kommunikationsnetze enthalten drahtlose Kommunikationsnetze (z. B. unter Verwendung von Bluetooth, Bluetooth Low Energy (BLE), IEEE 802.11, Fahrzeug-zu-Fahrzeug (V2V), wie z. B. dedizierte Nahbereichskommunikation (DSRC) usw.), lokale Netze (LAN) und/oder Weitverkehrsnetze (WAN) einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
-
2 veranschaulicht einen beispielhaften Computer 110, der ein Reifenschlupf-Klassifikationssystem 205 enthält. Wie gezeigt ist, enthält das Reifenschlupf-Klassifikationssystem 205 ein Klassifikatormodul 210, ein Speichermodul 215, das eine Datenbank 220 enthält, ein Beobachtermodul 225 und ein Interpolationsmodul 230. Das Klassifikatormodul 210 kann einen oder mehrere Klassifikatoren des maschinellen Lernens managen, warten, trainieren, implementieren, benutzen oder mit ihnen kommunizieren. Das Klassifikatormodul 210 kann z. B. mit dem Speichermodul 215 kommunizieren, um auf einen innerhalb der Datenbank 220 gespeicherten Klassifikator 235 des maschinellen Lernens zuzugreifen.
-
Der Klassifikator 235 des maschinellen Lernens kann auf dem Server 145 trainiert und über das Netz 130 dem Computer 110 bereitgestellt werden. Gemäß einer beispielhaften Implementierung umfasst der Klassifikator 235 des maschinellen Lernens einen probabilistischen überwachten Rahmen des maschinellen Lernens, wie z. B. einen Gauß-Prozess-Klassifikator, der Vorhersagen erzeugt und Unsicherheitsmaße, die den Vorhersagen entsprechen, d. h., Vertrauensniveauwerte bereitstellt. Die erzeugten Vorhersagen können vorheriges Wissen, d. h., Kernel, unter Verwendung einer oder mehrerer geeigneter Funktionen, wie z. B. einer quadrierten exponentiellen (SE) Kernelfunktion, einbeziehen.
-
Die Kernel können unter Verwendung einer Hyperparameter-Optimierung optimiert werden. Gemäß einer oder mehreren Implementierungen können die Hyperparameter für den (die) Kernel Kovarianzeigenschaften, eine Signalstandardabweichung und/oder eine Rauschstandardabweichung enthalten.
-
Während des Betriebs empfängt der Klassifikator 235 des maschinellen Lernens Daten von den Sensoren 115 und/oder dem Beobachtermodul 225, wie im Folgenden ausführlicher beschrieben wird, wobei er eine Vorhersage erzeugt, die den Zielschlupfwert zusammen mit entsprechenden Vertrauensniveauwerten repräsentiert. Falls der Vertrauensniveauwert kleiner als ein Vertrauensniveau-Schwellenwert ist, bestimmt das lineare Interpolationsmodul 230 den Zielschlupfwert basierend auf einem vorhergesagten Schlupfanstieg und einer vorhergesagten Straßentextur. Andernfalls kann die durch den Klassifikator 235 des maschinellen Lernens erzeugte Vorhersage des Zielschlupfwerts verwendet werden, um eine oder mehrere Fahrzeughandlungen über die Aktuatoren 120 und/oder die Komponenten 125 zu steuern.
-
Das Beobachtermodul 225 kann einen Schätzer umfassen, der einen Schlupfanstieg basierend auf einem oder mehreren Beschleunigungswerten, die einem Rad des Fahrzeugs 105 zugeordnet sind, schätzt. Die Beschleunigungswerte können unter Verwendung eines oder mehrerer Fahrzeugsensoren 115 gemessen werden. Unter Verwendung der gemessenen Beschleunigungswerte kann das Beobachtermodul 225 einen Schlupfanstieg gemäß Gleichung 1 schätzen:
wobei der Schlupfanstieg den geschätzten Schlupfanstieg umfasst, F
xx gemessene Reifenkräfte umfasst, σ(t) gemessene Kräfte umfasst, die nicht auf die gemessenen Reifenkräfte bezogen sind, und λ ein Schlupfverhältnis umfasst. Die gemessenen Reifenkräfte können die Hinterrad-Achsgeschwindigkeit, wie sie durch die Sensoren 115 gemessenen wird enthalten, sind aber nicht darauf eingeschränkt.
-
Ferner kann das Beobachtermodul 225 außerdem eine Straßentextur vorhersagen. Das Beobachtermodul 225 kann z. B. die Straßentextur basierend auf dem Schlupfverhältnis und/oder den gemessenen Reifenkräften vorhersagen. Die Stra-ßentextur kann eine schnee-/eisbedeckte Straßentextur, eine Schotterstraßentextur und/oder eine Asphaltstraßentextur enthalten, ist aber nicht darauf eingeschränkt. Gemäß einer beispielhaften Implementierung kann das Beobachtermodul 225 eine Nachschlagetabelle enthalten, die das Schlupfverhältnis und/oder die gemessenen Reifenkräfte mit der Straßentextur in Beziehung setzt.
-
Das Interpolationsmodul 230 verwendet einen oder mehrere geeignete lineare Interpolationsprozesse, um den Zielschlupfwert vorherzusagen, d. h., zu schätzen. Das Interpolationsmodul 230 kann z. B. von dem Beobachtermodul 225 Eingaben empfangen, die den vorhergesagten Schlupfanstieg und die vorhergesagte Stra-ßentextur repräsentieren. Das Interpolationsmodul 230 kann geeignete Kurvenanpassungsprozesse ausführen, um den Zielschlupfwert vorherzusagen.
-
3 veranschaulicht eine beispielhafte Rechenvorrichtung 300, d. h., einen Computer 110 und/oder einen (die) Server 145, die konfiguriert sein können, einen oder mehrere der hier beschriebenen Prozesse auszuführen. Wie gezeigt ist, kann die Rechenvorrichtung einen Prozessor 305, einen Speicher 310, eine Speichervorrichtung 315, eine E/A-Schnittstelle 320 und eine Kommunikationsschnittstelle 325 umfassen. Weiterhin kann die Rechenvorrichtung 300 eine Eingabevorrichtung, wie z. B. einen Berührungsschirm, eine Maus, eine Tastatur usw., enthalten. Gemäß bestimmten Implementierungen kann die Rechenvorrichtung 300 weniger oder mehr Komponenten als jene enthalten. die in 3 gezeigt sind.
-
Gemäß speziellen Implementierungen enthält der Prozessor (enthalten die Prozessoren) 305 Hardware zum Ausführen von Anweisungen, wie z. B. jener, die ein Computerprogramm bilden. Um Anweisungen auszuführen, kann der Prozessor (können die Prozessoren) 305 als ein Beispiel und nicht zur Einschränkung die Anweisungen aus einem internen Register, einem internen Cache, dem Speicher 310 oder einer Speichervorrichtung 315 wiedergewinnen (oder holen) und sie decodieren und ausführen.
-
Die Rechenvorrichtung 300 enthält einen Speicher 310, der an den (die) Prozessoren) 305 gekoppelt ist. Der Speicher 310 kann zum Speichern von Daten, Metadaten und Programmen zur Ausführung durch den (die) Prozessoren) verwendet werden. Der Speicher 310 kann einen oder mehrere flüchtige und nichtflüchtige Speicher enthalten, wie z. B. Schreib-Lese-Speicher („RAM“), Festwertspeicher („ROM“), eine Festkörperplatte („SSD“), Flash, Phasenwechsel-Speicher („PCM“) oder andere Typen von Datenspeichern. Der Speicher 310 kann ein interner oder verteilter Speicher sein.
-
Die Rechenvorrichtung 300 enthält eine Speichervorrichtung 315, die einen Speicher zum Speichern von Daten oder Anweisungen enthält. Die Speichervorrichtung 315 kann als ein Beispiel und nicht zur Einschränkung ein nicht transitorisches Speichermedium umfassen, wie oben beschrieben worden ist. Die Speichervorrichtung 315 kann ein Festplattenlaufwerk (HDD), einen Flash-Speicher, ein Laufwerk des universellen seriellen Busses (USB-Laufwerk) oder eine Kombination dieser oder anderer Speichervorrichtungen enthalten.
-
Die Rechenvorrichtung 300 enthält außerdem eine oder mehrere Eingabe- oder Ausgabe-Vorrichtungen/Schnittstellen („E/A“-Vorrichtungen/Schnittstellen) 320, die vorgesehen sind, es einem Anwender zu ermöglichen, eine Eingabe (wie z. B. Anwenderanschläge) in die Rechenvorrichtung 300 bereitzustellen, ein Ausgabe von der Rechenvorrichtung 300 zu empfangen und anderweitig Daten zu und von der Rechenvorrichtung 300 zu übertragen. Diese E/A-Vorrichtungen/Schnittstellen 320 können eine Maus, ein Tastenfeld oder eine Tastatur, einen Berührungsschirm, eine Kamera, einen optischen Scanner, eine Netzschnittstelle, ein Modem, andere bekannte E/A-Vorrichtungen oder eine Kombination derartiger E/A-Vorrichtungen/Schnittstellen 320 enthalten. Der Berührungsschirm kann mit einer Schreibvorrichtung oder einem Finger aktiviert werden.
-
Die E/A-Vorrichtungen/Schnittstellen 320 können eine oder mehrere Vorrichtungen zum Darstellen einer Ausgabe für einen Anwender enthalten, einschließlich einer Graphikmaschine, einer Anzeige (z. B. eines Anzeigeschirms), eines oder mehrerer Ausgabetreiber (z. B. Anzeigetreiber), eines oder mehrerer Lautsprecher und eines oder mehrerer Audiotreiber, sind aber nicht darauf eingeschränkt. Gemäß bestimmten Implementierungen sind die Vorrichtungen/Schnittstellen 320 konfiguriert, graphische Daten einer Anzeige zur Darstellung für einen Anwender bereitzustellen. Die graphischen Daten können eine oder mehrere graphische Anwenderschnittstellen und/oder anderen graphischen Inhalt darstellen, wie sie einer speziellen Implementierung dienen können.
-
Die Rechenvorrichtung 300 kann ferner eine Kommunikationsschnittstelle 325 enthalten. Die Kommunikationsschnittstelle 325 kann Hardware, Software oder beides enthalten. Die Kommunikationsschnittstelle 325 kann eine oder mehrere Schnittstellen für die Kommunikation (wie z. B. paketbasierte Kommunikation) zwischen der Rechenvorrichtung und einer oder mehreren anderen Rechenvorrichtungen 300 oder einem oder mehreren Netzen bereitstellen. Als Beispiel und nicht zur Einschränkung kann die Kommunikationsschnittstelle 325 einen Netzschnittstellen-Controller (NIC) oder einen Netzadapter zum Kommunizieren mit einem Ethernet- oder einem anderen drahtgebundenen Netz oder einen drahtlosen NIC (WNIC) oder einen drahtlosen Adapter zum Kommunizieren mit einem drahtlosen Netz, wie z. B. Wl-Fl, enthalten. Die Rechenvorrichtung 300 kann ferner einen Bus 330 enthalten. Der Bus 330 kann Hardware, Software oder beides umfassen, die die Komponenten der Rechenvorrichtung 300 aneinanderkoppeln.
-
4 veranschaulicht ein beispielhaftes Diagramm 400 des relevanten Schlupfanstiegs 405 gegen den entsprechenden Straßentyp 410. Wie gezeigt ist, können die Straßenoberflächentypen 410 Schlupfanstiegswerte enthalten, die den schnee-/eisbedeckten Straßenoberflächentypen 415, den Schotterstraßenoberflächentypen 420 und/oder den Asphaltstraßenoberflächentypen 425 entsprechen, sind aber nicht darauf eingeschränkt. Das Diagramm 400 ist für eine Interpolation zum Bestimmen einer Zielschlupfschätzung repräsentativ, wenn der Klassifikator 235 des maschinellen Lernens eine Zielschlupfschätzung erzeugt, die einen niedrigen Vertrauensniveauwert, d. h., kleiner als ein Vertrauensniveau-Schwellenwert aufweist, was im Folgenden ausführlicher erörtert wird. Der Computer 110 kann einen oder mehrere geeignete lineare Interpolationsmodellierungsprozesse verwenden, um basierend auf dem gemessenen Schlupfanstieg und den entsprechenden Straßenoberflächentypen geeignete lineare Polynome zu bestimmen.
-
5 veranschaulicht einen beispielhaften Prozess 500 zum Schätzen eines Zielschlupfs und zum Steuern einer oder mehrerer Fahrzeugkomponenten 125 basierend auf dem geschätzten Zielschlupf. Die Blöcke des Prozesses 500 können durch den Computer 110 ausgeführt werden. Im Block 505 werden Sensordaten von einem oder mehreren Fahrzeugsensoren 115 empfangen. Die Sensordaten können z. B. eine oder mehrere Reifenkraftmessungen umfassen, wie z. B. die Radgeschwindigkeit, die einer Hinterachse des Fahrzeugs 105 zugeordnet ist. Im Block 510 schätzt das Beobachtermodul 225 basierend auf Beschleunigungswerten einen Schlupfanstieg. Die Beschleunigungswerte können durch den Computer 110 unter Verwendung der Sensordaten abgeleitet werden. Im Block 515 sagt das Beobachtermodul 225 die Straßentextur vorher. Das Beobachtermodul 225 kann die Straßentextur unter Verwendung des Schlupfverhältnisses und/oder der gemessenen Reifenkräfte vorhersagen, wie oben erörtert worden ist.
-
Im Block 520 empfängt der trainierte Klassifikator 235 des maschinellen Lernens Eingangsdaten von den Sensoren 115 und/oder dem Beobachtermodul 225. Der trainierte Klassifikator 235 des maschinellen Lernens kann z. B. den vorhergesagten Schlupfanstieg und die vorhergesagte Straßentextur vom Beobachtermodul 225 empfangen. Außerdem kann der trainierte Klassifikator 235 des maschinellen Lernens das Schlupfverhältnis und/oder die Reifenkraftmessungen von den Sensoren 115 empfangen. Im Block 525 erzeugt der trainierte Klassifikator 235 des maschinellen Lernens basierend auf der empfangenen Eingabe eine Vorhersage, die den Zielschlupfwert repräsentiert.
-
Im Block 530 wird eine Bestimmung ausgeführt, ob der Vertrauensniveauwert für den Zielschlupfwert kleiner als ein Vertrauensniveau-Schwellenwert ist. Im Block 535 sagt das lineare Interpolationsmodul 230 den Zielschlupfwert basierend auf dem vorhergesagten Schlupfanstieg und der vorhergesagten Straßentextur vorher, wenn der Vertrauensniveauwert kleiner als ein Vertrauensniveau-Schwellenwert ist. Falls der Vertrauensniveauwert größer als der oder gleich dem Vertrauensniveau-Schwellenwert ist, geht der Prozess 500 zum Block 540 über.
-
Im Block 540 wird der vorhergesagte Zielschlupfwert den Fahrzeugaktuatoren 120 und/oder den Fahrzeugkomponenten 125, wie z. B. der Antiblockiersystemkomponente (ABS-Komponente), der Antriebsschlupfregelungskomponente (TCS-Komponente) und/oder der Komponente des elektronischen Stabilitätskontrollsystems, bereitgestellt. Der vorhergesagte Zielschlupfwert kann durch die Fahrzeugkomponenten 125 verwendet werden, um eine oder mehrere Handlungen des Fahrzeugs 105 zu modifizieren. Die Komponenten 125 können z. B. konfiguriert sein, eine oder mehrere Handlungen des Fahrzeugs 105 zu modifizieren, um die Reifen-Griffigkeit zu maximieren. Dann endet der Prozess 500.
-
Die Beschreibung der vorliegenden Offenbarung ist lediglich beispielhafter Art, wobei vorgesehen ist, dass sich Variationen, die nicht vom Hauptpunkt der vorliegenden Offenbarung abweichen, innerhalb des Schutzumfangs der vorliegenden Offenbarung befinden. Derartige Variationen sind nicht als Abweichung vom Erfindungsgedanken und Schutzumfang der vorliegenden Offenbarung zu betrachten.
-
Im Allgemeinen können die beschriebenen Rechensysteme und/oder -vorrichtungen irgendeines einer Anzahl von Computerbetriebssystemen, einschließlich, aber keineswegs eingeschränkt auf, Versionen und/oder Varianten des Microsoft Automotive®-Betriebssystems, des Microsoft Windows®-Betriebssystems, des Unix-Betriebssystems (z. B. des Betriebssystems Solaris®, das von der Oracle Corporation in Redwood Shores, Kalifornien, vertrieben wird), des UNIX-Betriebssystems AIX, das von International Business Machines in Armonk, New York, vertrieben wird, des Betriebssystems Linux, der Betriebssysteme Mac OSX und iOS, die von Apple Inc. in Cupertino, Kalifornien, vertrieben werden, des Betriebssystems BlackBerry OS, das von Blackberry, Ltd., in Waterloo, Kanada, vertrieben wird, des Betriebssystems Android, das von Google, Inc. und der Open Handset Alliance entwickelt wurde, oder der QNX® CAR Platform für Infotainment, die von QNX Software Systems angeboten wird, verwenden. Beispiele der Rechenvorrichtungen enthalten ohne Einschränkung einen Bordcomputer des Fahrzeugs, einen Computer-Arbeitsplatzrechner, einen Server, einen Desktop-, Notebook-, Laptop- oder Handheld-Computer oder irgendein anderes Rechensystem und/oder irgendeine andere Vorrichtung.
-
Die Computer und Rechenvorrichtungen enthalten im Allgemeinen computerausführbare Anweisungen, wobei die Anweisungen durch eine oder mehrere Rechenvorrichtungen, wie z. B. jene, die oben aufgeführt sind, ausgeführt werden können. Die computerausführbaren Anweisungen können aus Computerprogrammen, die unter Verwendung verschiedener Programmiersprachen und/oder -techniken erzeugt worden sind, einschließlich, ohne Einschränkung und entweder allein oder in Kombination, Java™, C, C++, Matlab, Simulink, Stateflow, Visual Basic, Java Script, Perl, HTML, usw., kompiliert oder interpretiert werden. Einige dieser Anwendungen können auf einer virtuellen Maschine, wie z. B. der Java Virtual Machine, der virtuellen Dalvik-Maschine oder dergleichen, kompiliert und ausgeführt werden. 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 ein oder mehrere Prozesse einschließlich eines oder mehrerer der hier beschriebenen Prozesse ausgeführt werden. Derartige Anweisungen und andere Daten können unter Verwendung verschiedener computerlesbaren Medien gespeichert und übertragen werden. Eine Datei in einer Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die in einem computerlesbaren Medium, wie z. B. einem Speichermedium, einem Schreib-Lese-Speicher usw., gespeichert sind.
-
Der Speicher kann ein computerlesbares Medium (das außerdem als ein prozessorlesbares Medium bezeichnet wird) enthalten, das irgendein nicht transitorisches (z. B. greifbares) Medium umfasst, das am Bereitstellen von Daten (z. B. Anweisungen) teilnimmt, die durch einen Computer (z. B. durch einen Prozessor eines Computers) gelesen werden können. Ein derartiges Medium kann viele Formen annehmen, wie z. B., aber nicht eingeschränkt auf, nichtflüchtige Medien und flüchtige Medien. Nichtflüchtige Medien können z. B. optische oder magnetische Platten und anderen permanenten Speicher enthalten. Flüchtige Medien können z. B. einen dynamischen Schreib-Lese-Speicher (DRAM) enthalten, der typischerweise einen Hauptspeicher bildet. Derartige Anweisungen können durch ein oder mehrere Übertragungsmedien, einschließlich Koaxialkabel, Kupferdraht und Faseroptik, einschließlich der Drähte, die einen an einen Prozessor einer ECU gekoppelten Systembus umfassen, übertragen werden. Übliche Formen der computerlesbaren Medien enthalten z. B. eine Diskette, eine flexible Platte, eine Festplatte, ein Magnetband, irgendein anderes magnetisches Medium, einen CD-ROM, eine DVD, irgendein anderes optisches Medium, Lochkarten, ein Papierband, irgendein anderes physisches Medium mit Lochmustern, einen RAM, einen PROM, einen EPROM, einen FLASH-EEPROM, irgendeinen anderen Speicherchip oder irgendeine andere Speicherkassette oder irgendein anderes Medium, von dem ein Computer lesen kann.
-
Die Datenbanken, Datendepots oder andere hier beschriebene Datenspeicher können verschiedene Arten von Mechanismen zum Speichern, Zugreifen und Wiedergewinnen verschiedener Arten von Daten einschließlich einer hierarchischen Datenbank, eines Satzes von Dateien in einem Dateisystem, einer Anwendungsdatenbank in einem proprietären Format, eines relationalen Datenbankmanagementsystems (RDBMS) usw. enthalten. Jeder derartige Datenspeicher ist im Allgemeinen innerhalb einer Rechenvorrichtung enthalten, die ein Computerbetriebssystem, wie z. B. eines von jenen, die oben erwähnt worden sind, verwendet, wobei auf sie über ein Netz in irgendeiner oder mehreren verschiedener Arten zugegriffen wird. Ein Dateisystem kann von einem Computerbetriebssystem zugänglich sein und kann Dateien enthalten, die in verschiedenen Formaten gespeichert sind. Ein RDBMS verwendet zusätzlich zu einer Sprache zum Erzeugen, Speichern, Bearbeiten und Ausführen gespeicherter Prozeduren, wie z. B. der obenerwähnten PL/SQL-Sprache, im Allgemeinen die strukturierte Abfragesprache (SQL).
-
Gemäß einigen Beispielen können die Systemelemente als computerlesbare Anweisungen (z. B. Software) auf einer oder mehreren Rechenvorrichtungen (z. B. Servern, Personalcomputern usw.) implementiert sein, die in den ihnen zugeordneten computerlesbaren Medien (z. B. Platten, Speichern usw.) gespeichert sind. Ein Computerprogrammprodukt kann derartige Anweisungen umfassen, die in computerlesbaren Medien gespeichert sind, um die hier beschriebenen Funktionen auszuführen.
-
In dieser Anmeldung einschließlich der folgenden Definitionen kann der Begriff „Modul“ oder der Begriff „Controller“ durch den Begriff „Schaltung“ ersetzt werden.
-
Der Begriff „Modul“ kann sich beziehen auf, Teil sein von oder enthalten: eine anwendungsspezifische integrierte Schaltung (ASIC); eine digitale, analoge oder gemischt analoge/digitale diskrete Schaltung; eine digitale, analoge oder gemischt analoge/digitale integrierte Schaltung; eine kombinatorische Logikschaltung; eine feldprogrammierbare Gatteranordnung (FPGA); eine Prozessorschaltung (gemeinsam benutzt, dediziert oder Gruppe), die Code ausführt; eine Speicherschaltung (gemeinsam benutzt, dediziert oder Gruppe), die den durch die Prozessorschaltung ausgeführten Code speichert; andere geeignete Hardware-Komponenten, die die beschriebene Funktionalität bereitstellen; oder eine Kombination aus einigen oder allen der Obigen, wie z. B. in einem System-auf-einem-Chip.
-
Das Modul kann eine oder mehrere Schnittstellenschaltungen enthalten. In einigen Beispielen können die Schnittstellenschaltungen drahtgebundene oder drahtlose Schnittstellen enthalten, die mit einem lokalen Netz (LAN), dem Internet, einem Weitbereichsnetz (WAN) oder Kombinationen davon verbunden sind. Die Funktionalität irgendeines gegebenen Moduls der vorliegenden Offenbarung kann zwischen mehreren Modulen verteilt sein, die über Schnittstellenschaltungen verbunden sind. Mehrere Module können z. B. einen Lastausgleich ermöglichen. In einem weiteren Beispiel kann ein Server-Modul (das außerdem als Fern- oder Cloud-Modul bekannt ist) etwas der Funktionalität im Auftrag eines Client-Moduls ausführen.
-
Hinsichtlich der hier beschriebenen Medien, Prozesse, Systeme, Verfahren, Heuristiken usw. sollte erkannt werden, dass, obwohl die Schritte derartiger Prozesse usw. als gemäß einer bestimmten geordneten Reihenfolge stattfindend beschrieben worden sind, derartige Prozesse mit den beschriebenen Schritten praktiziert werden können, die in einer anderen als der hier beschriebenen Reihenfolge ausgeführt werden. Es sollte ferner erkannt werden, dass bestimmte Schritte gleichzeitig ausgeführt werden können, dass andere Schritte hinzugefügt werden können oder dass bestimmte hier beschriebene Schritte weggelassen werden können. Mit anderen Worten, die Beschreibungen der Prozesse hier sind zum Veranschaulichen bestimmter Implementierungen vorgesehen und sollten keineswegs ausgelegt werden, um die Ansprüche einzuschränken.
-
Dementsprechend soll erkannt werden, dass die obige Beschreibung veranschaulichend und nicht einschränkend vorgesehen ist. Viele Implementierungen und Anwendungen mit Ausnahme der bereitgestellten Beispiele würden für die Fachleute auf dem Gebiet beim Lesen der obigen Beschreibung offensichtlich sein. Der Schutzumfang der Erfindung sollte nicht in Bezug auf die obige Beschreibung bestimmt werden, sondern sollte stattdessen in Bezug auf die beigefügten Ansprüche, zusammen mit dem vollen Schutzumfang der Äquivalente, zu denen derartige Ansprüche berechtigt sind, bestimmt werden. Es wird erwartet und ist beabsichtigt, dass zukünftige Entwicklungen in den hier erörterten Techniken stattfinden werden und dass die offenbarten Systeme und Verfahren in derartige zukünftige Implementierungen aufgenommen werden. Zusammenfassend sollte erkannt werden, dass die Erfindung modifizierbar und variierbar ist und nur durch die folgenden Ansprüche eingeschränkt ist.
-
Es ist vorgesehen, dass allen in den Ansprüchen verwendeten Begriffen ihre einfachen und gewöhnlichen Bedeutungen gegeben werden, wie sie durch die Fachleute auf dem Gebiet verstanden werden, wenn nicht hier explizit das Gegenteil angegeben ist. Insbesondere sollte die Verwendung der Artikel in der Einzahl, wie z. B. „ein/eine“, „der/die/das“, „besagter“ usw., so gelesen werden, dass sie eines oder mehrere der angegebenen Elemente darstellen, es sei denn, ein Anspruch stellt eine explizite Einschränkung auf das Gegenteil dar.