-
Die Erfindung betrifft die Ermittlung einer Trajektorie für ein erstes Fahrzeug unter Berücksichtigung des Fahrverhaltens eines zweiten Fahrzeugs, wobei das zweite Fahrzeug vor dem ersten Fahrzeug fährt. Beansprucht werden in diesem Zusammenhang insbesondere eine Prozessoreinheit, ein Fahrerassistenzsystem, ein Fahrzeug, ein Verfahren sowie ein Computerprogrammprodukt.
-
Es ist bekannt, bei Abstandsregeltempomaten (im Englischen: Adaptive Cruise Control; abgekürzt: ACC) auch Effizienzkriterien bei der Planung von Geschwindigkeitstrajektorien zu berücksichtigen. Ein stark wachsender Ansatz hierbei ist die Trajektorien-Planung mit Hilfe eines sogenannten MPC-Solvers. Bei diesem Ansatz wird eine Vielzahl möglicher Trajektorien über einem virtuellen Horizont hinsichtlich Ihrer Gesamteffizienz bewertet. Hierbei können auch andere Verkehrsteilnehmer einen Einfluss auf die Gesamteffizienz der letztendlich ausgewählten Trajektorie ausüben. Dies ist beispielsweise der Fall, wenn ein vorwegfahrendes Fahrzeug einen Bremsvorgang einleitet oder langsamer fährt und dadurch den Lösungsraum des MPC-Solvers des Ego-Fahrzeugs verkleinert, weswegen das Ego()-Fahrzeug auf eine weniger optimale Trajektorie gezwungen wird. Ein grundlegendes Problem hierbei ist, dass dem Ego-Fahrzeug in der Regel nicht bekannt ist, wie sich ein vorwegfahrendes Fahrzeug verhalten wird.
-
Eine Aufgabe der vorliegenden Erfindung kann darin gesehen werden, eine MPC-Regelung für ein erstes Kraftfahrzeug bereitzustellen, wobei das Verhalten eines zweiten Kraftfahrzeugs berücksichtigt wird, welches vor dem ersten Fahrzeug fährt.
-
Die Aufgabe wird gelöst durch die Gegenstände der unabhängigen Patentansprüche. Vorteilhafte Ausführungsformen sind Gegenstand der Unteransprüche, der folgenden Beschreibung sowie der Figuren.
-
Die vorliegende Erfindung schlägt ein Profilieren eines vorwegfahrenden Fahrzeugs hinsichtlich dessen Fahrverhaltens und eine anschließende Verwendung des Fahrerprofils zur Umsetzung einer Fahrassistenzfunktion vor. Eine solche Profilierungslogik für vorwegfahrende Fahrzeuge kann mit einer MPC-basierten Fahrstrategie kombiniert werden. Dabei kann ein Profilieren eines vorwegfahrenden Fahrzeugs an Hand von Radardaten erfolgen und anschließend kann das Fahrerprofil zur Optimierung einer longitudinal-automatisierten Fahrassistenzfunktion verwendet werden. Die vorliegende Erfindung ermöglicht somit eine Vorhersage hinsichtlich des Verhaltens des vorwegfahrenden Fahrzeugs.
-
In diesem Sinne wird gemäß einem ersten Aspekt der Erfindung eine Prozessoreinheit für ein erstes Fahrzeugs bereitgestellt. Die Prozessoreinheit ist dazu eingerichtet, eine Trajektorie für ein erstes Fahrzeug unter Berücksichtigung des Fahrverhaltens eines zweiten Fahrzeugs zu ermitteln, wobei das zweite Fahrzeug vor dem ersten Fahrzeug (Ego-Fahrzeug) fährt. Bei dem zweiten Fahrzeug handelt es sich somit um ein vorwegfahrendes Fahrzeug in Bezug auf das erste Fahrzeug. Unter dem Merkmal „Trajektorie für das erste Fahrzeug“ kann ein Pfad verstanden werden, welchem das erste Fahrzeug zukünftig, z.B. innerhalb der nächsten Sekunden, folgen soll. Dem Pfad kann dabei ein Geschwindigkeitsprofil zugeordnet sein, wobei das Geschwindigkeitsprofil für jeden Punkt entlang des Pfades eine Sollgeschwindigkeit für das erste Fahrzeug vorgeben kann. Diese Zuordnung aus Pfad und Geschwindigkeit ergibt die Geschwindigkeitstrajektorie des ersten Fahrzeugs.
-
Die Prozessoreinheit ist dazu eingerichtet, auf Geschwindigkeitsdaten des zweiten Fahrzeugs zuzugreifen, wobei die Geschwindigkeitsdaten von einem Sensor des ersten Fahrzeugs generiert worden sind. Die Geschwindigkeitsdaten beschreiben wenigstens eine Geschwindigkeit, mit welchem sich das zweite Fahrzeug fortbewegt. Bei der Geschwindigkeit kann es sich um einen zeitlichen Verlauf der Geschwindigkeit handeln, mit welcher sich das zweite Fahrzeug in einem bestimmbaren Zeitraum fortbewegt. Der Sensor des ersten Fahrzeugs ist insbesondere dazu eingerichtet, die Geschwindigkeit des zweiten Fahrzeugs zu erfassen. Bei dem Sensor kann es sich beispielsweise um einen Radarsensor handeln.
-
Mit den gesammelten Informationen kann ein Profil des Fahrverhaltens des zweiten Fahrzeugs erstellt werden. Beispielsweise können Fahrzeuge, die sich im Mittel deutlich unter einer rechtlich erlaubten Höchstgeschwindigkeit aufhalten, als weniger aggressive Verkehrsteilnehmer profiliert werden. In diesem Sinne ist die Prozessoreinheit dazu eingerichtet, ein Fahrverhaltensprofil des zweiten Fahrzeugs basierend auf den Geschwindigkeitsdaten zu erstellen.
-
Gemäß der vorliegenden Erfindung wird das Fahrverhaltensprofil des zweiten Fahrzeugs zur Erstellung einer Fahrvorhersage des profilierten Fahrzeugs verwendet. In diesem Sinne ist die Prozessoreinheit dazu eingerichtet, eine auf dem Fahrverhaltensprofil des zweiten Fahrzeugs basierende Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs zu treffen.
-
Die erstellte Vorhersage kann an eine MPC-Logik zur Planung einer optimalen Fahrttrajektorie des ersten Fahrzeugs weitergegeben werden. Die MPC-Logik plant unter Betrachtung der Routentopologie, des Verkehrs sowie weiterer Umweltinformationen eine optimale Geschwindigkeitstrajektorie für das erste Fahrzeug für den vorausliegenden Streckenabschnitt. Diese Geschwindigkeitstrajektorie kann nun unter Betrachtung der Vorhersage hinsichtlich des vorwegfahrenden Fahrzeugs verfeinert und dadurch verbessert werden. Auf diese Weise ist auch eine integrierte Optimierung verschiedener Freiheitsgrade möglich, was zu einem gesamtheitlich optimalen Fahrverhalten führt. Die Vorhersage hinsichtlich des vorwegfahrenden Fahrzeugs kann der MPC-Logik als harte Nebenbedingung vorgegeben werden. Unter einer harten Nebenbedingung kann eine Nebenbedingung verstanden werden, welche bei der Ermittlung der Trajektorie für das erste Fahrzeug zwingend eingehalten werden muss. In diesem Sinne ist die Prozessoreinheit ferner dazu eingerichtet, durch Ausführen eines MPC-Algorithmus', welcher ein Längsdynamikmodell des ersten Fahrzeugs und eine zu minimierende Kostenfunktion enthält, eine Trajektorie für das erste Fahrzeug zu ermitteln, sodass die Kostenfunktion minimiert wird, wobei bei der Ermittlung der Trajektorie die Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs als Nebenbedingung berücksichtigt wird.
-
Die Methode der modelbasierten prädiktiven Regelung (MPC) ermöglicht, in jeder Situation unter gegebenen Randbedingungen und Beschränkungen eine optimale Lösung für eine sogenannte „Driving Efficiency“ Fahrfunktion zu finden, welche eine effiziente Fahrweise bereitstellt. Die MPC-Methode basiert auf einem Systemmodell, in der vorliegenden Erfindung auf einem Längsdynamikmodell des ersten Fahrzeugs, welches das Verhalten des Systems beschreibt. Weiterhin basiert die MPC-Methode auf einer Zielfunktion bzw. auf einer Kostenfunktion, die ein Optimierungsproblem beschreibt und bestimmt, welche Zustandsgrößen minimiert werden sollen.
-
Das Längsdynamikmodell kann einen Antriebsstrangs des Kraftfahrzeugs abbilden und ein Fahrzeugmodell mit Fahrzeugparametern und Antriebsstrangverlusten (z.T. approximierte Kennfelder) umfassen. In das Längsdynamikmodell des Antriebsstrangs können weiterhin Kenntnisse über vorausliegende Streckentopografien (z.B. Kurven und Steigungen) einfließen. Weiterhin können auch Kenntnisse über Geschwindigkeitslimits auf der vorausliegenden Strecke in das Dynamikmodell des Antriebsstrangs einfließen. Der MPC-Algorithmus kann einen MPC-Solver in Form eines Software-Moduls umfassen. Der MPC-Solver kann Anweisungen oder Programmcode enthalten, wodurch die Prozessoreinheit angewiesen wird, in Abhängigkeit von dem Längsdynamikmodell des ersten Fahrzeugs die Trajektorie des ersten Fahrzeugs derart zu ermitteln, dass die Kostenfunktion minimiert wird.
-
Die Prozessoreinheit kann die optimierte Trajektorie des ersten Fahrzeugs an ein Softwaremodul („Target Generator“) weitergeben. Mittels dieses Software-Moduls kann die Prozessoreinheit die mathematisch-optimale Beplanung aller zur Verfügung stehenden Freiheitsgrade in tatsächlich verwertbare Komponentensignale konvertieren. Als Beispiel kann durch die MPC-Regelung eine Geschwindigkeitstrajektorie des ersten Fahrzeugs für die nächsten 5000m optimal geplant werden. In diesem Fall würde der Target Generator den ersten (=aktuell benötigten) Geschwindigkeitswert dieser Trajektorie beispielsweise in ein Bedarfsdrehmoment einer elektrischen Maschine (als eine effizienzrelevante Komponente) des ersten Fahrzeugs „übersetzen“. Mit diesem Wert kann die Komponentensoftware dann arbeiten und die gewollte Geschwindigkeit einregeln.
-
Gemäß einer weiteren Ausführungsform enthält ein erster Term der Kostenfunktion eine mit einem ersten Gewichtungsfaktor gewichtete und gemäß dem Dynamikmodell prädizierte elektrische Energie, welche innerhalb eines Prädiktionshorizonts von einer Batterie des Antriebsstrangs des ersten Fahrzeugs zum Antrieb der elektrischen Maschine bereitgestellt wird. Weiterhin kann die Kostenfunktion als zweiten Term eine mit einem zweiten Gewichtungsfaktor gewichtete und gemäß dem Längsdynamikmodell prädizierte Fahrzeit enthalten, welche das erste Fahrzeug zum Zurücklegen der gesamten innerhalb des Prädiktionshorizonts prädizierten Wegstrecke benötigt. Die Prozessoreinheit kann dazu eingerichtet sein, durch Ausführen des MPC-Algorithmus' in Abhängigkeit von dem ersten Term und in Abhängigkeit von dem zweiten Term eine Eingangsgröße für die elektrische Maschine zu ermitteln, sodass die Kostenfunktion minimiert wird.
-
Die Zustandsgrößen für die Driving Efficiency Fahrfunktion können somit beispielsweise die Fahrzeuggeschwindigkeit bzw. die kinetische Energie, die verbleibende Energie in der Batterie und die Fahrzeit sein. Die Optimierung von Energieverbrauch und Fahrtzeit kann beispielsweise auf Basis der Steigung der vorausliegenden Strecke und Beschränkungen für Geschwindigkeit und Antriebskraft erfolgen, sowie auf Basis des aktuellen Systemzustands. Mittels der Zielfunktion bzw. mittels der Kostenfunktion der Driving Efficiency Fahrstrategie kann zusätzlich zum Gesamtverlust oder Energieverbrauch auch die Fahrzeit minimiert werden. Dies führt dazu, dass je nach Wahl der Gewichtungsfaktoren eine geringe Geschwindigkeit nicht immer als optimal bewertet wird und so nicht mehr das Problem besteht, dass die resultierende Geschwindigkeit immer am unteren Rand der erlaubten Geschwindigkeit liegt. Es wird ermöglicht, dass der Fahrereinfluss nicht länger relevant für den Energieverbrauch und die Fahrzeit des ersten Fahrzeugs ist, weil die elektrische Maschine durch die Prozessoreinheit basierend auf der Eingangsgröße gesteuert werden kann, die durch Ausführen des MPC-Algorithmus ermittelt wird. Mittels der Eingangsgröße kann insbesondere ein optimaler Motorbetriebspunkt der elektrischen Maschine eingestellt werden. Dadurch kann eine direkte Einregelung der optimalen Geschwindigkeit des ersten Fahrzeugs erfolgen.
-
Die Kostenfunktion kann insbesondere ausschließlich lineare und quadratische Terme aufweisen. Dadurch hat das Gesamtproblem die Form einer quadratischen Optimierung mit linearen Nebenbedingungen und es ergibt sich ein konvexes Problem, welches gut und schnell gelöst werden kann. Die Zielfunktion bzw. die Kostenfunktion kann mit einer Gewichtung (Gewichtungsfaktoren) aufgestellt werden, wobei insbesondere eine Energieeffizienz, eine Fahrtzeit und ein Fahrkomfort berechnet und gewichtet werden. Eine energieoptimale Geschwindigkeitstrajektorie kann für einen vorausliegenden Horizont auf der Prozessoreinheit online berechnet werden, die insbesondere ein Bestandteil eines Zentral-Steuergeräts des ersten Fahrzeugs bilden kann. Durch Nutzung der MPC-Methode kann weiterhin eine zyklische Neuberechnung der Soll-Geschwindigkeit des ersten Fahrzeugs auf Basis des aktuellen Fahrzustands und der vorausliegenden Streckeninformationen erfolgen.
-
Aktuelle Zustandsgrößen können gemessen, entsprechende Daten können aufgenommen und dem MPC-Algorithmus zugeführt werden. So können Streckendaten aus einer elektronischen Karte für einen Vorausschauhorizont bzw. Prädiktionshorizont (z.B. 400 m) vor dem ersten Fahrzeug insbesondere zyklisch upgedated bzw. aktualisiert werden. Die Streckendaten können beispielsweise Steigungsinformationen, Kurveninformationen, und Informationen über Geschwindigkeitslimits beinhalten. Des Weiteren kann eine Kurvenkrümmung über eine maximal zulässige Querbeschleunigung in ein Geschwindigkeitslimit für das erste Fahrzeug umgerechnet werden. Außerdem kann eine Ortung des ersten Fahrzeugs erfolgen, insbesondere über ein GNSS-Signal zur genauen Lokalisierung auf der elektronischen Karte.
-
Die Geschwindigkeitsdaten des zweiten Fahrzeugs können einen durch den Sensor des ersten Fahrzeugs ermittelten zeitlichen Verlauf von Ist-Geschwindigkeiten des zweiten Fahrzeugs umfassen. Über eine Funktion kann dabei ein Durchschnitt der relativen bzw. prozentualen Abweichung von einer Geschwindigkeitsbegrenzung (unter Betrachtung der Fahrsituation) berechnet werden. Diese mittlere Abweichung kann auf eine vorausliegende Höchstgeschwindigkeit des zweiten Fahrzeugs angewandt werden.
-
So kann in einer Ausführungsform die Prozessoreinheit dazu eingerichtet sein, auf einen ersten Geschwindigkeitsbegrenzungswert zuzugreifen, welcher für einen ersten Streckenabschnitt gilt, auf welchem das zweite Fahrzeug fährt, und auf einen zweiten Geschwindigkeitsbegrenzungswert zuzugreifen, welcher für einen zweiten Streckenabschnitt gilt, auf welchem das zweite Fahrzeug zukünftig fahren wird. Der Geschwindigkeitsbeschränkungswert, z.B. angegeben in km/h (Kilometer pro Stunde) ist eine rechtlich zulässige oder erlaubte Höchstgeschwindigkeit für Fahrzeuge auf einem Streckenabschnitt. Der Geschwindigkeitsbeschränkungswert ist ein verbindlicher Grenzwert für die Geschwindigkeit eines Fahrzeugs, der nicht überschritten werden darf. Umgangssprachlich ist in diesem Zusammenhang auch der Begriff „Tempolimit“ gebräuchlich. Der Geschwindigkeitsbeschränkungswert kann generell per Verordnung festgelegt und durch Verkehrszeichen gekennzeichnet sein und gilt für bestimmte Fahrzeuge, Beförderung bestimmter Güter oder auf bestimmten Streckenabschnitten von Straßen, Schienen- oder Wasserwegen sowie vereinzelt auch im Luftraum.
-
Die Prozessoreinheit kann dazu eingerichtet sein, aus dem zeitlichen Verlauf der Ist-Geschwindigkeit des zweiten Fahrzeugs eine zeitliche Funktion einer relativen Geschwindigkeitsabweichung der Ist-Geschwindigkeit des zweiten Fahrzeugs von dem ersten Geschwindigkeitsbegrenzungswert zu generieren. Unter der „zeitlichen Funktion“ kann eine mathematische Funktion verstanden werden, welche den Verlauf der relativen Geschwindigkeitsabweichung der Ist-Geschwindigkeit des zweiten Fahrzeugs von dem ersten Geschwindigkeitsbegrenzungswert in Abhängigkeit von der Zeit beschreibt.
-
Die Prozessoreinheit kann weiterhin dazu eingerichtet sein, eine mittlere relative Geschwindigkeitsabweichung aus der zeitlichen Funktion der relativen Geschwindigkeitsabweichung zu ermitteln, das Fahrverhaltensprofil des zweiten Fahrzeugs basierend auf der mittleren relativen Geschwindigkeitsabweichung zu erstellen, und die Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs basierend auf dem Fahrverhaltensprofil des zweiten Fahrzeugs zu treffen, indem eine zukünftige Geschwindigkeit des zweiten Fahrzeugs auf dem zweiten Streckenabschnitt in Abhängigkeit von der mittleren relativen Geschwindigkeitsabweichung und dem zweiten Geschwindigkeitsbegrenzungswert ermittelt wird.
-
In einem einfachen Beispiel kann auf einem ersten Streckenabschnitt eine konstante erste Geschwindigkeitsbegrenzung von 100 km/h vorliegen, wobei sich das betrachtete zweite Fahrzeug beispielsweise über eine komplette Betrachtungsdauer, z.B. 30 s, mit 80 km/h auf dem ersten Streckenabschnitt vor dem ersten Fahrzeug fortbewegt. In diesem Fall ergibt sich auch im Mittel eine Abweichung von -20% zu der ersten Geschwindigkeitsbegrenzung. Wenn sich nun auf dem vorausschauenden Fahrthorizont eine neue zweite Geschwindigkeitsbegrenzung (z.B. 50 km/h) ergibt, so kann die Voraussage gemacht werden, dass sich (nachdem der Prozess der Geschwindigkeitsanpassung abgeschlossen ist) eine vorhergesagte Geschwindigkeit von 40 km/h für das zweite Fahrzeug einstellt (50km/h * (100% - 20%) = 40kmh).
-
In einer weiteren Ausführungsform ist die Prozessoreinheit dazu eingerichtet, für einen festgelegten Zeitraum zeitdiskrete relative Geschwindigkeitsabweichungen der Ist-Geschwindigkeit des zweiten Fahrzeugs von dem ersten Geschwindigkeitsbegrenzungswert chronologisch in einem Datensatz zu speichern, und aus den zeitdiskreten, chronologisch gespeicherten relativen Geschwindigkeitsabweichungen die zeitliche Funktion der relativen Geschwindigkeitsabweichung der Ist-Geschwindigkeit des zweiten Fahrzeugs von dem ersten Geschwindigkeitsbegrenzungswert zu generieren.
-
Beispielsweise kann die Ist-Geschwindigkeit v
detected des vorwegfahrenden zweiten Fahrzeugs an Hand verfügbarer Radarinformationen ermittelt werden. Anschließend kann die relative Abweichung Δv
rel der Ist-Geschwindigkeit v
detected des vorwegfahrenden zweiten Fahrzeugs von dem ersten Geschwindigkeitsbegrenzungswert v
limit1 erfolgen. Die relative Geschwindigkeitsabweichung kann wie folgt berechnet werden: Δv
rel = (v
limit1 - V
detected)/V
limit1 oder Δv
rel = (Vdetected - V
limit1)/V
limit1 Die errechnete relative bzw. prozentuale Abweichung kann in dem Datensatz gespeichert werden, insbesondere in einem First-in-First-out (FIFO) Vektor, wobei der Datensatz eine voreingestellte Speicherdauer aufweisen kann, z.B. 30s. Der Datensatz, insbesondere der FIFO-Vektor, kann als ein Daten-Array wie folgt beschrieben werden:
-
Hierbei stellen die einzelnen Werte Δνrel(t1) bis Δνrel(tn) die berechneten prozentualen Abweichungen zu den jeweiligen Zeitpunkten t1 bis tn dar, wobei t1 der erste Zeitpunkt während einer voreingestellten Speicherdauer (z.B. 30s; „festgelegter Zeitraum“) ist, und wobei tn der letzte Zeitpunkt während der voreingestellten Speicherdauer ist. Das Speichern in dem Datensatz, insbesondere in dem FIFO-Vektor, ermöglicht, den Verlauf der prozentualen Abweichung der Ist-Geschwindigkeit des vorwegfahrenden zweiten Fahrzeugs von dem ersten Geschwindigkeitsbegrenzungswert abzubilden. Dazu werden die Werte Δνrel(t1) bis Δνrel(tn) in chronologischer Reihenfolge innerhalb des Datensatzes, insbesondere innerhalb des FIFO-Vektors, gespeichert. Basierend auf den zeitdiskreten Werten Δνrel(t1) bis Δνrel(tn) kann eine Funktion generiert werden, welche die relative Geschwindigkeitsdifferenz über der Zeit beschreibt. Diese Funktion kann zweimal abgeleitet werden, wobei die erste Ableitung dann einen zeitlichen Verlauf der Beschleunigung des zweiten Fahrzeugs beschreibt, und wobei die zweite Ableitung einen zeitlichen Verlauf des Rucks des zweiten Fahrzeugs beschreibt.
-
In einer weiteren Ausführungsform ist die Prozessoreinheit dazu eingerichtet, aus der ersten Ableitung der zeitlichen Funktion der Geschwindigkeitsabweichung nach der Zeit eine mittlere Beschleunigung des zweiten Fahrzeugs zu ermitteln und das Fahrverhaltensprofil des zweiten Fahrzeugs basierend auf der mittleren Beschleunigung des zweiten Fahrzeugs zu erstellen. Beispielsweise können Fahrzeuge, die im Mittel nur kleine Beschleunigungen aufweisen, als weniger aggressive Verkehrsteilnehmer profiliert werden.
-
Die Informationen bezüglich der mittleren Beschleunigung kann auf Beschleunigungs- und Bremsmanöver des zweiten Fahrzeugs angewandt werden. Beschleunigungs- und Bremsmanöver ergeben sich insbesondere bei Sprüngen der erlaubten Höchstgeschwindigkeit, vor Ampeln oder Kreuzungen. Ähnlich wie bei der vorstehend beschriebenen Vorhersage der Geschwindigkeit des zweiten Fahrzeugs, wird auch hier ein mittlerer (=charakteristischer) Wert für die Beschleunigung berechnet, z.B. bei Geschwindigkeitsbegrenzungswert-Übergangen. Die Prozessoreinheit kann in diesem Sinne dazu eingerichtet sein, die Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs basierend auf dem Fahrverhaltensprofil des zweiten Fahrzeugs zu treffen, indem eine zukünftige Beschleunigung des zweiten Fahrzeugs, insbesondere auf dem ersten Streckenabschnitt, in Abhängigkeit von der mittleren Beschleunigung, der mittleren relativen Geschwindigkeitsabweichung und dem zweiten Geschwindigkeitsbegrenzungswert ermittelt wird.
-
Beispielsweise kann für die mittlere Beschleunigung der Wert -1m/s2 berechnet werden, d.h. das zweite Fahrzeug bremst im Mittel mit diesem negativen Beschleunigungswert (Bremsmanöver). Wenn sich auf dem Horizont jetzt eine Änderung des Geschwindigkeitsbegrenzungswerts ergibt (z.B. von 100 km/h als erster Geschwindigkeitsbegrenzungswert auf 50km/h als zweiten Geschwindigkeitsbegrenzungswert), so kann die mittlere bzw. die charakteristische Beschleunigung zur Vorhersage genutzt werden. Hierbei kann insbesondere die Annahme gelten, dass das zweite Fahrzeug zu Beginn des neuen zweiten Geschwindigkeitsbegrenzungswerts seine Zielgeschwindigkeit erreicht haben wird, die wie vorstehend beschrieben in Abhängigkeit von der mittleren relativen Geschwindigkeitsabweichung und dem zweiten Geschwindigkeitsbegrenzungswert ermittelt werden kann. Ausgehend von diesem Wegpunkt (der Übergang zwischen dem ersten Streckenabschnitt, für den der erste Geschwindigkeitsbegrenzungswert gilt, und dem zweiten Streckenabschnitt, für den der zweite Geschwindigkeitsbegrenzungswert gilt) kann dann zurück gerechnet werden, wann und wo das Bremsmanöver beginnt.
-
Ein charakteristischer Ruck des zweiten Fahrzeugs kann auf ähnliche Weise dazu verwendet werden, um einen Beschleunigungsübergang des zweiten Fahrzeugs vorherzusagen. In diesem Sinne kann die Prozessoreinheit dazu eingerichtet sein, aus der zweiten Ableitung der zeitlichen Funktion der Geschwindigkeitsabweichung nach der Zeit einen mittleren Ruck des zweiten Fahrzeugs zu ermitteln und das Fahrverhaltensprofil des zweiten Fahrzeugs basierend auf dem mittleren Ruck des zweiten Fahrzeugs zu erstellen. Beispielsweise können Fahrzeuge, die im Mittel nur einen geringen Ruck aufweisen, als weniger aggressive Verkehrsteilnehmer profiliert werden. Die Prozessoreinheit kann weiterhin dazu eingerichtet sein, die Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs basierend auf dem Fahrverhaltensprofil des zweiten Fahrzeugs zu treffen, indem ein zukünftiger Ruck des zweiten Fahrzeugs, insbesondere auf dem ersten Streckenabschnitt, in Abhängigkeit von dem mittleren Ruck, der mittleren Beschleunigung, der mittleren relativen Geschwindigkeitsabweichung und dem zweiten Geschwindigkeitsbegrenzungswert ermittelt wird. Beispielsweise kann für den mittleren Ruck ein Wert von -1m/s3 ermittelt werden. In diesem Falle würde bei dem weiter oben beschriebenen Bremsmanöver beispielsweise ein Übergang der Beschleunigung von 0 m/s2 auf -1m/s2 eine Sekunde dauern. Hierdurch kann die Dauer des Übergangs zwischen keiner Bremspedalstellung und der charakteristischen Bremspedalstellung vorausgesagt werden. Der Ruck ist für die Länge dieses Übergangs gleichbleibend.
-
Die Maximalwerte für Ruck und Beschleunigung können weiterhin genutzt werden, um die Möglichkeit einer Notbremsung zu detektieren. In diesem Sinne kann die Prozessoreinheit dazu eingerichtet sein, aus der ersten Ableitung der zeitlichen Funktion der Geschwindigkeitsabweichung nach der Zeit eine maximale Beschleunigung des zweiten Fahrzeugs zu ermitteln, und aus der zweiten Ableitung der zeitlichen Funktion der Geschwindigkeitsabweichung nach der Zeit einen maximalen Ruck des zweiten Fahrzeugs zu ermitteln sowie das Fahrverhaltensprofil des zweiten Fahrzeugs basierend auf der maximalen Beschleunigung und basierend auf dem maximalen Ruck des zweiten Fahrzeugs zu erstellen. Weiterhin kann die Prozessoreinheit dazu eingerichtet sein, die Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs basierend auf dem Fahrverhaltensprofil des zweiten Fahrzeugs zu treffen, indem eine Notbremsung des zweiten Fahrzeugs in Abhängigkeit von der maximalen Beschleunigung und dem maximalen Ruck detektiert wird.
-
Die vorstehend beschriebenen Funktionalitäten bzw. Schritte können im Rahmen eines MPC-Ansatzes in jedem Berechnungsschritt (i.d.R. alle 10ms) ausgeführt werden. In diesem Sinne kann die Prozessoreinheit dazu eingerichtet sein, für jede Ausführung des MPC-Algorithmus zur Ermittlung der Trajektorie für das erste Fahrzeug eine Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs zu treffen.
-
Gemäß einem zweiten Aspekt der Erfindung wird ein Fahrerassistenzsystem zur Ausführung einer Fahrerassistenzfunktion eines ersten Fahrzeugs unter Berücksichtigung des Fahrverhaltens eines zweiten Fahrzeugs bereitgestellt, wobei das zweite Fahrzeug vor dem ersten Fahrzeug fährt. Das Fahrerassistenzsystem ist dazu eingerichtet, insbesondere mittels einer Kommunikations-Schnittstelle auf eine von einer Prozessoreinheit gemäß dem ersten Aspekt der Erfindung ermittelte Trajektorie für das erste Fahrzeug zuzugreifen und insbesondere mittels einer Prozessoreinheit eine Fahrerassistenzfunktion des ersten Fahrzeugs unter Verwendung der Trajektorie für das erste Fahrzeug auszuführen.
-
Die Fahrerassistenzfunktion beinhaltet eine autonome oder eine teilautonome Fahrfunktion. Die autonome Fahrfunktion ermöglicht, dass das Fahrzeug selbstständig fährt, d.h. ohne, dass ein Fahrzeuginsasse das Fahrzeug steuert. Der Fahrer hat die Kontrolle über das Fahrzeug an das Fahrerassistenzsystem abgegeben. So umfasst die autonome Fahrfunktion, dass das Fahrzeug - insbesondere mittels der Prozessoreinheit zur Ermittlung der Trajektorie des Fahrzeugs oder der Prozessoreinheit des Fahrerassistenzsystems - dazu eingerichtet ist, beispielsweise Lenk-, Blink-, Beschleunigungs- und Bremsmanöver ohne menschliches Eingreifen durchzuführen sowie insbesondere Außenlicht und Signalgebung wie Blinker des Fahrzeugs zu steuern. Unter der teilautonomen Fahrfunktionen kann eine Fahrfunktionen verstanden werden, die einen Fahrer des Fahrzeugs bei der Steuerung des Fahrzeugs unterstützt, insbesondere bei Lenk-, Blink-, Beschleunigungs- und Bremsmanövern, wobei der Fahrer weiterhin die Kontrolle über das Fahrzeug hat.
-
Gemäß einem dritten Aspekt der Erfindung wird ein erstes Fahrzeug bereitgestellt. Das erste Fahrzeug umfasst einen Sensor, insbesondere einen Radarsensor. Der Sensor ist dazu eingerichtet, Geschwindigkeitsdaten eines zweiten Fahrzeugs zu generieren, welches vor dem ersten Fahrzeug fährt. Weiterhin umfasst das erste Fahrzeug eine Prozessoreinheit gemäß dem ersten Aspekt der Erfindung und ein Fahrerassistenzsystem gemäß dem zweiten Aspekt der Erfindung.
-
Bei dem ersten Fahrzeug handelt es sich insbesondere um ein Kraftfahrzeug, beispielsweise um ein Automobil (z.B. ein Personenkraftfahrwagen mit einem Gewicht von weniger als 3,5 t), Motorrad, Motorroller, Moped, Fahrrad, E-Bike, Bus oder Lastkraftwagen (z.B. mit einem Gewicht von über 3,5 t), oder aber auch um ein Schienenfahrzeug, ein Schiff, ein Luftfahrzeug wie Helikopter oder Flugzeug. Auch in kleinen, leichten elektrischen Kraftfahrzeugen der Mikromobilität kann die Erfindung eingesetzt werden, wobei diese Kraftfahrzeuge insbesondere im städtischen Verkehr und für die erste und letzte Meile im ländlichen Raum genutzt werden. Unter der ersten und letzten Meile können alle Strecken und Wege verstanden werden, die sich im ersten und letzten Glied einer Mobilitätskette befinden. Das ist zum Beispiel der Weg von Zuhause zum Bahnhof oder die Strecke vom Bahnhof zum Arbeitsplatz. Mit anderen Worten ist die Erfindung in allen Bereichen des Transportwesens wie Automotive, Aviation, Nautik, Astronautik etc. einsetzbar.
-
Gemäß einem vierten Aspekt der Erfindung wird ein Verfahren zur Ermittlung einer Trajektorie für ein erstes Fahrzeug unter Berücksichtigung des Fahrverhaltens eines zweiten Fahrzeugs bereitgestellt, wobei das zweite Fahrzeug vor dem ersten Fahrzeug fährt. Das Verfahren umfasst die folgenden Schritte:
- - Generieren von Geschwindigkeitsdaten des zweiten Fahrzeugs,
- - Erstellen eines Fahrverhaltensprofils des zweiten Fahrzeugs basierend auf den Geschwindigkeitsdaten,
- - Treffen einer auf dem Fahrverhaltensprofil des zweiten Fahrzeugs basierenden Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs und
- - Ermitteln einer Trajektorie für das erste Fahrzeug durch Ausführen eines MPC-AIgorithmus', welcher ein Längsdynamikmodell des ersten Fahrzeugs und eine zu minimierende Kostenfunktion enthält, sodass die Kostenfunktion minimiert wird, wobei bei der Ermittlung der Trajektorie die Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs als Nebenbedingung berücksichtigt wird.
-
Gemäß einem fünften Aspekt der Erfindung wird ein Computerprogrammprodukt zur Ermittlung einer Trajektorie für ein erstes Fahrzeug unter Berücksichtigung des Fahrverhaltens eines zweiten Fahrzeugs bereitgestellt, wobei das zweite Fahrzeug vor dem ersten Fahrzeug fährt. Das Computerprogrammprodukt leitet, wenn es auf einer Prozessoreinheit ausgeführt wird, die Prozessoreinheit an,
- - auf Geschwindigkeitsdaten des zweiten Fahrzeugs zuzugreifen, wobei die Geschwindigkeitsdaten von einem Sensor des ersten Fahrzeugs generiert worden sind,
- - ein Fahrverhaltensprofil des zweiten Fahrzeugs basierend auf den Geschwindigkeitsdaten zu erstellen,
- - eine auf dem Fahrverhaltensprofil des zweiten Fahrzeugs basierende Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs zu treffen und
- - durch Ausführen eines MPC-Algorithmus', welcher ein Längsdynamikmodell des ersten Fahrzeugs und eine zu minimierende Kostenfunktion enthält, eine Trajektorie für das erste Fahrzeug zu ermitteln, sodass die Kostenfunktion minimiert wird, wobei bei der Ermittlung der Trajektorie die Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs als Nebenbedingung berücksichtigt wird. Der MPC-Algorithmus kann als Softwarecode einen Bestandteil des Computerprogrammprodukts bilden.
-
Die Ausführungen im Zusammenhang mit der Prozessoreinheit gemäß dem ersten Aspekt der Erfindung gelten sinngemäß auch für das Fahrerassistenzsystem gemäß dem zweiten Aspekt der Erfindung, für das erste Fahrzeug gemäß dem dritten Aspekt der Erfindung, für das Verfahren gemäß dem vierten Aspekt der Erfindung und für das Computerprogrammprodukt gemäß dem fünften Aspekt der Erfindung.
-
Im Folgenden werden Ausführungsbeispiele der Erfindung anhand der schematischen Zeichnung näher erläutert, wobei gleiche oder ähnliche Elemente mit dem gleichen Bezugszeichen versehen sind. Hierbei zeigt
- 1 eine schematische Darstellung eines ersten Fahrzeugs und
- 2 ein zweites Fahrzeug, welches vor dem ersten Fahrzeug nach 2 auf einem ersten Streckenabschnitt einer Straße fährt.
-
1 zeigt ein erstes Fahrzeug 1. In dem gezeigten Ausführungsbeispiel handelt es sich bei dem ersten Fahrzeug um ein Kraftfahrzeug, z.B. um einen Personenkraftfahrwagen. Das Kraftahrzeug 1 umfasst ein MPC-System 2 zur Ermittlung einer Trajektorie für das erste Kraftfahrzeug 1 unter Berücksichtigung des Fahrverhaltens eines durch 2 gezeigten zweiten Fahrzeugs 18, wobei das zweite Fahrzeug 18 vor dem ersten Kraftfahrzeug 1 fährt. Auch bei dem zweiten Fahrzeug 18 handelt es sich in dem gezeigten Ausführungsbeispiel um ein Kraftfahrzeug, z.B. ebenfalls um einen Personenkraftfahrwagen. Das erste Kraftfahrzeug 1 umfasst weiterhin ein Fahrerassistenzsystem 16 mit einer Prozessoreinheit und mit einer Kommunikationsschnittstelle 20.
-
Das MPC-System 2 umfasst in dem gezeigten Ausführungsbeispiel eine Prozessoreinheit 3, eine Speichereinheit 4, eine Kommunikations-Schnittstelle 5 und eine Erfassungseinheit 6, insbesondere zur Ermittlung der Geschwindigkeit eines vorausfahrenden Fahrzeugs (in dem durch 2 gezeigten Beispiel des zweiten Kraftfahrzeugs 18) sowie zur Erfassung von weiteren das Kraftfahrzeug 1 betreffenden Umgebungsdaten und Zustandsdaten. Das Kraftfahrzeug 1 umfasst weiterhin einen Antriebsstrang 7, der beispielsweise eine elektrische Maschine 8, die als Motor und als Generator betrieben werden kann, eine Batterie 9 und ein Getriebe 10 umfassen kann. Die elektrische Maschine 8 kann im Motorbetrieb Räder des Kraftfahrzeugs 1 über das Getriebe 10 antreiben, das beispielsweise eine konstante Übersetzung aufweisen kann. Die dazu notwendige elektrische Energie kann die Batterie 9 bereitstellen. Die Batterie 9 kann durch die elektrische Maschine 8 aufgeladen werden, wenn die elektrische Maschine 8 im Generatorbetrieb betrieben wird (Rekuperation). Die Batterie 9 kann optional auch an einer externen Ladestation aufgeladen werden. Ebenfalls kann der Antriebsstrang des Kraftfahrzeugs 1 optional einen Verbrennungskraftmotor 17 aufweisen, welcher alternativ oder zusätzlich zu der elektrischen Maschine 8 das Kraftfahrzeug 1 antreiben kann. Der Verbrennungskraftmotor 17 kann auch die elektrische Maschine 8 antreiben, um die Batterie 9 aufzuladen.
-
Auf der Speichereinheit 4 kann ein Computerprogrammprodukt 11 gespeichert sein. Das Computerprogrammprodukt 11 kann auf der Prozessoreinheit 3 ausgeführt werden, wozu die Prozessoreinheit 3 und die Speichereinheit 4 mittels der Kommunikations-Schnittstelle 5 miteinander verbunden sind. Wenn das Computerprogrammprodukt 11 auf der Prozessoreinheit 3 ausgeführt wird, leitet es die Prozessoreinheit 3 an, die im Zusammenhang mit der Zeichnung beschriebenen Funktionen zu erfüllen bzw. Verfahrensschritte auszuführen.
-
Das Computerprogrammprodukt 11 enthält einen MPC-Algorithmus 13. Der MPC-AIgorithmus 13 wiederum enthält ein Längsdynamikmodell 14 des Antriebsstrangs 7 des Kraftfahrzeugs 1. Weiterhin enthält der MPC-Algorithmus 13 eine zu minimierende Kostenfunktion 15. Die Prozessoreinheit 3 führt den MPC-Algorithmus 13 aus und ermittelt dabei eine optimale Geschwindigkeitstrajektorie des ersten Kraftfahrzeugs 1 basierend auf dem Längsdynamikmodell 14, sodass die Kostenfunktion 15 minimiert wird.
-
Als Output der Optimierung durch den MPC-Algorithmus 13 können sich weiterhin eine optimale Drehzahl und ein optimales Drehmoment der elektrischen Maschine 8 für berechnete Punkte im Vorausschauhorizont ergeben. Die Prozessoreinheit 3 kann dazu eine Eingangsgröße für die elektrische Maschine 8 ermitteln, sodass sich die optimale Drehzahl und das optimale Drehmoment einstellen. Die Prozessoreinheit 3 kann die elektrische Maschine 8 basierend auf der ermittelten Eingangsgröße steuern. Weiterhin kann dies jedoch auch durch das Fahrerassistenzsystem 16 erfolgen.
-
Die Erfassungseinheit 6 kann aktuelle Zustandsgrößen des ersten Kraftfahrzeugs 1 messen, entsprechende Daten aufnehmen und dem MPC-Algorithmus 13 zuführen. Weiterhin können Streckendaten aus einer elektronischen Karte für einen Vorausschauhorizont bzw. Prädiktionshorizont (z.B. 400 m) vor dem Kraftfahrzeug 1 insbesondere zyklisch upgedated bzw. aktualisiert werden. Die Streckendaten können beispielsweise Steigungsinformationen, Kurveninformationen, und Informationen über Geschwindigkeitslimits beinhalten. Des Weiteren kann eine Kurvenkrümmung über eine maximal zulässige Querbeschleunigung in ein Geschwindigkeitslimit für das Kraftfahrzeug 1 umgerechnet werden. Außerdem kann mittels der Erfassungseinheit 6 eine Ortung des ersten Kraftfahrzeugs 1 erfolgen, insbesondere über ein von einem GNSS-Sensor 12 generiertes Signal zur genauen Lokalisierung auf der elektronischen Karte. Ferner weist die Erfassungseinheit 6 insbesondere zur Ermittlung der Geschwindigkeit von vorausfahrenden Fahrzeugen 18 (2) einen Radar-Sensor 24 auf. Die Prozessoreinheit 3 kann auf Informationen der genannten Elemente beispielsweise über die Kommunikations-Schnittstelle 5 zugreifen. Diese Informationen können in das Längsmodell 14 des Kraftfahrzeugs 1 einfließen, insbesondere als Beschränkungen oder Nebenbedingungen.
-
Das stark vereinfachte Beispiel nach 2 zeigt das erste Kraftfahrzeug 1 auf einem ersten Streckenabschnitt 22 einer Straße 21. Das erste Kraftfahrzeug 1 fährt unterstützt durch die vorstehend beschriebene Fahrerassistenzfunktion autonom mit einer ersten Geschwindigkeit v1 in einer ersten Fahrtrichtung x1 . Das zweite Kraftfahrzeug 18 befindet sich vor dem ersten Kraftfahrzeug 1 ebenfalls auf dem ersten Streckenabschnitt 22 der Straße 21. Das zweite Kraftfahrzeug 1 fährt vor dem ersten Kraftfahrzeug 1 mit einer zweiten Geschwindigkeit v2 in einer zweiten Fahrtrichtung x1 . In dem gezeigten Ausführungsbeispiel verläuft der erste Streckenabschnitt 22 gerade und die erste Fahrtrichtung x1 des ersten Kraftfahrzeugs 1 entspricht der zweiten Fahrtrichtung x2 des zweiten Kraftfahrzeugs 18. Dies ist jedoch rein beispielhaft und nicht zwingend. Die erste Geschwindigkeit v1 des ersten Kraftfahrzeugs 1 kann der zweiten Geschwindigkeit v2 des zweiten Kraftfahrzeugs 18 entsprechen (v1 = v2), was jedoch ebenfalls rein beispielhaft und nicht zwingend ist. Die erste Geschwindigkeit v1 des ersten Kraftfahrzeugs 1 kann auch von der zweiten Geschwindigkeit v2 des zweiten Kraftfahrzeugs 18 abweichen (v1 ≠ v2).
-
Auf dem ersten Streckenabschnitt 22 gilt eine erste rechtliche Geschwindigkeitsbegrenzung, die beispielsweise auf einen ersten Geschwindigkeitsbegrenzungswert von vlimit1 = 100 km/h festgelegt sein kann. Das zweite Kraftfahrzeug 18 fährt dem ersten Kraftfahrzeug voraus in Richtung eines zweiten Streckenabschnitts 23, auf dem das zweite Kraftfahrzeug 2 voraussichtlich zukünftig fahren wird. Das erste Kraftfahrzeug 1 folgt dem zweiten Kraftfahrzeug 18 in Richtung des zweiten Streckenabschnitts 23. Auf dem zweiten Streckenabschnitt 23 gilt eine zweite rechtliche Geschwindigkeitsbegrenzung, die beispielsweise auf einen zweiten Geschwindigkeitsbegrenzungswert von vlimit2 = 50 km/h festgelegt sein kann.
-
Der erste Geschwindigkeitsbegrenzungswert vlimit1 und der zweite Geschwindigkeitsbegrenzungswert vlimit2 können beispielsweise in einer Karte eines Navigationssystems des ersten Kraftfahrzeugs 1 hinterlegt sein. Die Prozessoreinheit 3 des MPC-Systems 2 kann mittels der Kommunikationsschnittstelle 5 auf den ersten Geschwindigkeitsbegrenzungswert vlimit1 und auf den zweiten Geschwindigkeitsbegrenzungswert vlimit2 zugreifen.
-
Der Radarsensor 24 generiert Geschwindigkeitsdaten des zweiten Kraftfahrzeugs 18. Die Prozessoreinheit 3 des MPC-Systems 2 kann mittels der Kommunikationsschnittstelle 5 auf die Geschwindigkeitsdaten zugreifen. In dem gezeigten Ausführungsbeispiel ermittelt der Radarsensor 24 zu diskreten Zeitpunkten t1 bis tn jeweils eine Ist-Geschwindigkeit vdetected(t1) bis vdetected(tn) des zweiten Kraftfahrzeugs 18, wodurch der zeitliche Verlauf der Geschwindigkeit v1 des zweiten Kraftfahrzeugs 18 beschrieben werden kann.
-
Basierend auf den ermittelten Ist-Geschwindigkeiten v
detected(t
1) bis v
detected(t
n) des zweiten Kraftfahrzeugs
18 und dem ersten Geschwindigkeitsbegrenzungswert v
limit1 ermittelt die Prozessoreinheit
3 zeitdiskrete relative Geschwindigkeitsabweichungen Δν
rel(t
1) bis Δν
rel(t
n) der Ist-Geschwindigkeiten v
detected(t
1) bis Vdetected(tn) des zweiten Fahrzeugs
18 von dem ersten Geschwindigkeitsbegrenzungswert v
limit1. Die relativen Geschwindigkeitsabweichungen Lν
rel(t
1) bis Δν
rel(t
n) können beispielsweise wie folgt berechnet werden:
für alle i von 1 bis n.
-
Die relativen Geschwindigkeitsabweichungen Lν
rel(t
1) bis Δν
rel(t
n) können in einem Datensatz gespeichert werden, in dem gezeigten Beispiel in einem First-in-First-out (FIFO)-Vektor, wobei der FIFO-Vektor eine voreingestellte Speicherdauer aufweisen kann, z.B. 30s. Der FIFO-Vektor kann als ein Daten-Array wie folgt beschrieben werden:
-
Hierbei stellen die einzelnen Werte Δν
rel(t
1) bis Δν
rel(t
n) die berechneten prozentualen Abweichungen zu den jeweiligen Zeitpunkten t
1 bis t
n dar, wobei t
1 der erste Zeitpunkt während der voreingestellten Speicherdauer (z.B. 30s) ist, und wobei t
n der letzte Zeitpunkt während der voreingestellten Speicherdauer ist. Das Speichern in dem FIFO-Vektor ermöglicht, den Verlauf der prozentualen Abweichung der Ist-Geschwindigkeit des vorwegfahrenden zweiten Fahrzeugs
18 von dem ersten Geschwindigkeitsbegrenzungswert v
limit1 abzubilden. Dazu werden die Werte Lν
rel(t
1) bis Δν
rel(t
n) in chronologischer Reihenfolge innerhalb des FIFO-Vektors gespeichert. Basierend auf den zeitdiskreten Werten Lν
rel(t
1) bis Δν
rel(t
n) kann die Prozessoreinheit
3 eine Funktion Δν
rel(t) generieren, welche die relative Geschwindigkeitsdifferenz Δv
rel über der Zeit t beschreibt. Diese Funktion kann durch die Prozessoreinheit
3 zweimal abgeleitet werden, wobei die erste Ableitung
dann einen zeitlichen Verlauf der Beschleunigung a des zweiten Fahrzeugs
18 beschreibt, und wobei die zweite Ableitung
einen zeitlichen Verlauf des Rucks j des zweiten Fahrzeugs
18 beschreibt.
-
Die Prozessoreinheit 3 ermittelt folgende Werte:
- - eine mittlere relative Geschwindigkeitsabweichung Δvrel average des zweiten Fahrzeugs 18 aus der Funktion Δvrel(t), welche die relative Geschwindigkeitsdifferenz Δvrel über der Zeit t beschreibt,
- - eine mittlere Beschleunigung aaverage des zweiten Fahrzeugs 18 aus der ersten zeitlichen Ableitung
der Funktion Δvrel(t), welche die relative Geschwindigkeitsdifferenz Δvrel über der Zeit t beschreibt,
- - eine maximale Beschleunigung amax des zweiten Fahrzeugs 18 aus der ersten zeitlichen Ableitung
der Funktion Δvrel(t), welche die relative Geschwindigkeitsdifferenz Δvrel über der Zeit t beschreibt,
- - einen mittleren Ruck javerage des zweiten Fahrzeugs 18 aus der zweiten zeitlichen Ableitung
der Funktion Δvrel(t), welche die relative Geschwindigkeitsdifferenz Δvrel über der Zeit t beschreibt, und
- - einen maximalen Ruck jmax des zweiten Fahrzeugs 18 aus der zweiten zeitlichen Ableitung
der Funktion Δvrel(t), welche die relative Geschwindigkeitsdifferenz Δvrel über der Zeit t beschreibt.
-
Basierend auf wenigstens einem dieser Werte Δvrel average, aaverage, amax, javerage und jmax erstellt die Prozessoreinheit 3 ein Profil, welches das Fahrverhalten des zweiten Kraftfahrzeugs 18 beschreibt („Fahrverhaltensprofil“). Wenn sich das zweite Kraftfahrzeug 18 beispielsweise im Mittel deutlich unter der Höchstgeschwindigkeit vlimit1 aufhält und im Mittel nur kleine Beschleunigungen a und Rücke j aufweist, so kann das zweite Kraftfahrzeug 18 beispielsweise als ein weniger aggressiver Verkehrsteilnehmer profiliert werden. Basierend auf dem Fahrverhaltensprofil des zweiten Fahrzeugs 18 trifft die Prozessoreinheit 3 eine Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs 18.
-
Wie bereits erwähnt, gilt auf dem ersten Streckenabschnitt 22 ein Geschwindigkeitsbegrenzungswert vlimit1 = 100 km/h. Das zweite Fahrzeug 18 kann sich beispielsweise über eine komplette Betrachtungsdauer, z.B. 30s, mit einer Ist-Geschwindigkeit vdetected von 80 km/h auf dem ersten Streckenabschnitt 22 vor dem ersten Fahrzeug 1 fortbewegen. In diesem Fall ergibt sich eine mittlere relative Geschwindigkeitsabweichung Δvrel average von -20% zu dem ersten Geschwindigkeitsbegrenzungswert vlimit1. Auf dem vorausschauenden Fahrthorizont ergibt sich für den zweiten Streckenabschnitt 23 der zweite Geschwindigkeitsbegrenzungswert von 50 km/h. Die Prozessoreinheit 3 trifft in diesem Fall die Voraussage, dass sich (nachdem der Prozess der Geschwindigkeitsanpassung abgeschlossen ist) das zweite Kraftfahrzeug 18 auf dem zweiten Streckenabschnitt 23 mit einer Geschwindigkeit von 40 km/h fortbewegen wird (50km/h * (100% - 20%) = 40kmh).
-
Beispielsweise kann für die mittlere Beschleunigung der Wert -1m/s2 berechnet werden, d.h. das zweite Fahrzeug 18 bremst im Mittel mit diesem negativen Beschleunigungswert (Bremsmanöver). Wenn sich auf dem Horizont jetzt die Änderung des Geschwindigkeitsbegrenzungswerts von 100 km/h auf 50km/h ergibt, so kann die mittlere Beschleunigung aaverage zur Vorhersage des Fahrverhaltens des zweiten Kraftfahrzeugs 18 genutzt werden. Hierbei kann insbesondere die Annahme gelten, dass das zweite Fahrzeug 18 zu Beginn des zweiten Geschwindigkeitsbegrenzungswerts vlimit2 seine Zielgeschwindigkeit (40 km/h) erreicht haben wird, die wie vorstehend beschrieben in Abhängigkeit von der mittleren relativen Geschwindigkeitsabweichung Δvrel average und dem zweiten Geschwindigkeitsbegrenzungswert vlimit2 ermittelt werden kann. Ausgehend von diesem Wegpunkt (der Übergang zwischen dem ersten Streckenabschnitt 22 und dem zweiten Streckenabschnitt 23) kann dann zurück gerechnet werden, wann und wo das Bremsmanöver des zweiten Kraftfahrzeugs 18 beginnt.
-
Der mittler Ruck javerage des zweiten Fahrzeugs 18 kann auf ähnliche Weise dazu verwendet werden, um einen Beschleunigungsübergang des zweiten Fahrzeugs 18 vorherzusagen. Beispielsweise kann für den mittleren Ruck javerage ein Wert von -1m/s3 ermittelt werden. In diesem Falle würde bei dem vorstehend beschriebenen Bremsmanöver beispielsweise ein Übergang der Beschleunigung von 0 m/s2 auf -1m/s2 eine Sekunde dauern. Hierdurch kann die Dauer des Übergangs zwischen keiner Bremspedalstellung und der charakteristischen Bremspedalstellung vorausgesagt werden. Der Ruck j ist für die Länge dieses Übergangs gleichbleibend. Die Maximalwerte amax und jmax für Beschleunigung und Ruck können weiterhin genutzt werden, um die Möglichkeit einer Notbremsung zu detektieren.
-
Die Prozessoreinheit 3 ermittelt durch Ausführen des MPC-Algorithmus' 13 eine Trajektorie für das erste Kraftfahrzeug 1, sodass die Kostenfunktion 15 minimiert wird, wobei bei der Ermittlung der Trajektorie die Vorhersage über das zukünftige Fahrverhalten des zweiten Fahrzeugs 18 als Nebenbedingung berücksichtigt wird. Weiterhin werden insbesondere eine Routentopologie, der Verkehrs sowie weiterer Umweltinformationen miteinbezogen, um die optimale Geschwindigkeitstrajektorie für das erste Fahrzeug 1 für den vorausliegenden Streckenabschnitt zu ermitteln.
-
Die Prozessoreinheit 19 des Fahrerassistenzsystems 16 greift mittels der Kommunikationsschnittstelle 20 auf die von einer Prozessoreinheit 3 des MPC-Systems 2 ermittelte Trajektorie für das erste Kraftfahrzeug 1 zu und führt die autonome Fahrfunktion des ersten Kraftfahrzeugs 1 unter Verwendung der Trajektorie für das erste Kraftfahrzeug 1 aus. Alternativ kann auch die Prozessoreinheit 3 des MPC-Systems 2 die autonome Fahrfunktion des ersten Kraftfahrzeugs 1 unter Verwendung der Trajektorie für das erste Kraftfahrzeug 1 ausführen. In diesem Falle ist das Fahrerassistenzsystem 16 in das MPC-System 2 integriert bzw. das MPC-System 2 bildet das Fahrerassistenzsystem 16.
-
Im Folgenden werden mögliche Ausführungsformen des Längsdynamikmodells 14 und der Kostenfunktion 15 näher beschrieben, welche Bestandteile des MPC-Algorithmus' 13 zur Ermittlung der Trajektorie für das erste Kraftfahrzeug 1 sind.
-
So kann das Längsdynamikmodell
14 des Kraftfahrzeugs
1 mathematisch wie folgt ausgedrückt werden:
- Hierbei sind:
- v
- die Geschwindigkeit des Kraftfahrzeugs;
- Ftrac
- Traktionskraft, die durch den Motor oder die Bremsen auf die Räder des Kraftfahrzeugs ausgeübt wird,
- Fr
- die Rollwiderstandskraft, welche ein Effekt der Verformung der Reifen beim Rollen ist und von der Belastung der Räder (der Normalkraft zwischen Rad und Straße) und damit vom Neigungswinkel der Straße abhängt;
- Fgr
- die Steigungswiderstandskraft, welche eine Längskomponente der Schwerkraft beschreibt, die auf das Kraftfahrzeug im Bergauf- oder Bergabfahrbetrieb wirkt, abhängig von der Neigung der Fahrbahn;
- Fd
- die Luftwiderstandskraft des Kraftfahrzeugs; und
- meq
- die äquivalente Masse des Kraftfahrzeugs; die äquivalente Masse beinhaltet insbesondere die Trägheit der Drehteile des Antriebsstrangs, welche der Beschleunigung des Kraftfahrzeugs ausgesetzt sind (Motor, Getriebeantriebswellen, Räder).
-
Durch Umwandlung von Zeitabhängigkeit in Wegabhängigkeit
und Koordinatentransformation zur Eliminierung des quadratischen Geschwindigkeits-Terms im Luftwiderstand mit
folgt
-
Damit das Problem durch den MPC-Algorithmus 13 schnell und einfach lösbar ist, kann die Dynamikgleichung des Längsdynamikmodells 14 linearisiert werden, indem die Geschwindigkeit durch Koordinatentransformation durch kinetische Energie dekin ausgedrückt wird. Dadurch wird der quadratische Term zur Berechnung des Luftwiderstands Fd durch einen linearen Term ersetzt und gleichzeitig ist das Längsdynamikmodell 14 des Kraftfahrzeugs 1 nicht mehr wie üblich in Abhängigkeit von der Zeit beschrieben, sondern in Abhängigkeit von dem Weg. Dies passt insofern gut zum Optimierungsproblem, da die Vorausschauinformationen des elektrischen Horizonts wegbasiert vorliegen.
-
Neben der kinetischen Energie gibt es zwei weitere Zustandsgrößen, welche im Sinne eines einfachen Optimierungsproblems ebenfalls linear und wegabhängig beschrieben werden können. Zum einen ist der elektrische Energieverbrauch des Antriebsstrangs 7 üblicherweise in Form eines Kennfeldes in Abhängigkeit von Drehmoment und Motordrehzahl beschrieben. In dem gezeigten Ausführungsbeispiel weist das Kraftfahrzeug 1 eine feste Übersetzung zwischen der elektrischen Maschine 8 und der Straße auf, auf welcher sich das Kraftfahrzeug 1 bewegt. Dadurch lässt sich die Drehzahl der elektrischen Maschine 8 direkt in eine Geschwindigkeit des Kraftfahrzeugs 1 oder eben in eine kinetische Energie des Kraftfahrzeugs 1 umrechnen. Weiterhin lässt sich die elektrische Leistung der elektrischen Maschine 8 durch Teilen durch die entsprechende Geschwindigkeit in Energieverbrauch pro Meter umrechnen. Um ein dementsprechendes Kennfeld für die Optimierung verwenden zu können, wird es linear approximiert: EnergyperMeter ≥ ai * ekin + bi * Ftrac für alle i.
-
Die zu minimierende Kostenfunktion
15 kann mathematisch beispielsweise wie folgt ausgedrückt werden:
- Hierbei ist:
- WBat
- Gewichtungsfaktor für den Energieverbrauch der Batterie
- EBat
- Energieverbrauch der Batterie
- S
- Wegstrecke
- SE-1
- Wegstrecke einen Zeitschritt vor Ende des Prädiktionshorizonts
- FA
- Antriebskraft, welche durch die elektrische Maschine bereitgestellt wird, durch ein Getriebe konstant übersetzt wird und an einem Rad des Kraftfahrzeugs anliegt
- WTem
- Gewichtungsfaktor für Drehmomentgradienten
- WTemStart
- Gewichtungsfaktor für Momentensprünge
- T
- Zeit, welche das Fahrzeug benötigt, um die gesamte innerhalb des Prädiktionshorizonts prädizierte Wegstrecke zurückzulegen
- wTime
- Gewichtungsfaktor für die Zeit T
- SE
- Wegstrecke zum Ende des Horizonts
- wSlack
- Gewichtungsfaktor für die Slack-Variable
- VarSlack
- Slack-Variable
-
Die Kostenfunktion 15 besitzt in dem gezeigten Ausführungsbeispiel ausschließlich lineare und quadratische Terme. Dadurch hat das Gesamtproblem die Form einer quadratischen Optimierung mit linearen Nebenbedingungen und es ergibt sich ein konvexes Problem, welches gut und schnell gelöst werden kann.
-
Die Kostenfunktion 15 enthält als einen ersten Term eine mit einem ersten Gewichtungsfaktor wBat gewichtete und gemäß dem Längsdynamikmodell prädizierte elektrische Energie EBat, welche innerhalb eines Prädiktionshorizonts von der Batterie 9 des Antriebsstrangs 7 zum Antrieb der elektrischen Maschine 8 bereitgestellt wird.
-
Die Kostenfunktion 15 enthält als weiteren Term eine mit einem zweiten Gewichtungsfaktor WTime gewichtete und gemäß dem Längsdynamikmodell 14 prädizierte Fahrzeit T, welche das Kraftfahrzeug 1 benötigt, um die prädizierte Wegstrecke zurückzulegen. Dies führt dazu, dass je nach Wahl der Gewichtungsfaktoren eine geringe Geschwindigkeit nicht immer als optimal bewertet wird und so nicht mehr das Problem besteht, dass die resultierende Geschwindigkeit immer am unteren Rand der erlaubten Geschwindigkeit liegt.
-
Der Energieverbrauch und die Fahrzeit können jeweils am Ende des Horizonts ausgewertet und gewichtet werden. Diese Terme sind dann also nur für den letzten Punkt des Horizonts aktiv.
-
Zu hohe Drehmomentgradienten innerhalb des Horizonts sind unvorteilhaft. Daher werden Drehmomentgradienten bereits in der Kostenfunktion
15 bestraft, nämlich durch den Term
Die quadratische Abweichung der Antriebskraft je Meter wird mit einem Gewichtungsfaktor W
Tem gewichtet und in der Kostenfunktion minimiert. Alternativ zu der Antriebskraft F
A je Meter kann auch das durch die elektrische Maschine
8 bereitgestellte Drehmoment M
EM genutzt und mit dem Gewichtungsfaktor W
Tem gewichtet werden, sodass sich der alternative Term
ergibt. Durch die konstante Übersetzung des Getriebes
10 sind die Antriebskraft und das Drehmoment direkt proportional zueinander.
-
Um ein komfortables Fahren sicher zu stellen, wird in der Kostenfunktion 15 ein weiterer Term zur Bestrafung von Momentensprüngen eingeführt, nämlich WTemStart · (FA(s1) - FA(s0)) 2 . Alternativ zu der Antriebskraft FA kann auch hier das durch die elektrische Maschine 8 bereitgestellte Drehmoment MEM genutzt werden, sodass sich der alternative Term WTemStart · (MEM(s1) - MEM(s0))2 ergibt. Für den ersten Punkt im Prädiktionshorizont wird die Abweichung zum zuletzt gestellten Moment negativ bewertet und mit einem Gewichtungsfaktor WTemStart gewichtet, um sicher zu stellen, dass es einen nahtlosen und ruckfreien Übergang beim Umschalten zwischen alter und neuer Trajektorie gibt.
-
Geschwindigkeitslimits sind für die Optimierung harte Grenzen, die nicht überschritten werden dürfen. Eine leichte Überschreitung der Geschwindigkeitsgrenzen ist in der Realität immer zulässig und vor allem bei Übergängen von einer Geschwindigkeitszone in eine zweite Zone eher der Normalfall. In dynamischen Umgebungen, wo sich von einem Rechenzyklus zum nächsten Rechenzyklus Geschwindigkeitslimits verschieben, kann es passieren, dass bei ganz harten Grenzen keine gültige Lösung für einen Geschwindigkeitsverlauf mehr gefunden werden kann. Um die Stabilität des Rechenalgorithmus zu erhöhen, wird eine weiche Beschränkung („soft constraint“) in die Kostenfunktion 15 eingeführt. Dabei wird eine mit einem Gewichtungsfaktor WSlack gewichtete Slack-Variable VarSlack in einem vorgegebenen schmalen Bereich aktiv, bevor das harte Geschwindigkeitslimit erreicht wird. Lösungen, die sehr nah an diesem Geschwindigkeitslimit liegen, werden schlechter bewertet, also Lösungen deren Geschwindigkeitstrajektorie einen gewissen Abstand zur harten Grenze einhalten.
-
Bezugszeichenliste
-
- v1
- Geschwindigkeit des ersten Kraftfahrzeugs
- x1
- Fahrtrichtung des ersten Kraftfahrzeugs
- v2
- Geschwindigkeit des zweiten Kraftfahrzeugs
- x2
- Fahrtrichtung des zweiten Kraftfahrzeugs
- 1
- erstes Kraftfahrzeug
- 2
- MPC-System
- 3
- Prozessoreinheit
- 4
- Speichereinheit
- 5
- Kommunikations-Schnittstelle
- 6
- Erfassungseinheit
- 7
- Antriebsstrang
- 8
- elektrische Maschine
- 9
- Batterie
- 10
- Getriebe
- 11
- Computerprogrammprodukt
- 12
- GNSS-Sensor
- 13
- MPC-Algorithmus
- 14
- Längsdynamikmodell
- 15
- Kostenfunktion
- 16
- Fahrerassistenzsystem
- 17
- Verbrennungskraftmotor
- 18
- zweites Kraftfahrzeug
- 19
- Prozessoreinheit des Fahrerassistenzsystems
- 20
- Kommunikationsschnittstelle des Fahrerassistenzsystems
- 21
- Straße
- 22
- erster Streckenabschnitt
- 23
- zweiter Streckenabschnitt
- 24
- Radarsensor