-
STAND DER TECHNIK
-
Fahrzeuge halten während des Betriebs an. Dieses Anhalten kann sanft, kontrolliert oder aggressiv sein. Das Anhalten kann bei irgendeiner Geschwindigkeit oder Beschleunigung (positiv oder negativ) des Fahrzeugs erforderlich sein. Um ein Fahrzeug zum Anhalten zu bringen, ist ein spezifischer Bremsweg und/oder eine spezifische Zeit zum Anhalten erforderlich, und es kann auch von anderen Faktoren (zum Beispiel Straßenreibung) abhängig sein. Aber halte, die innerhalb kurzer Abstände oder kurzer Zeit gemacht werden, können viel Rucken auf Fahrzeuginsassen übertragen.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist eine Skizze eines beispielhaften Systems zum Bestimmen eines Bremswegs.
-
2 ist eine Grafik einer beispielhaften Bahn basierend auf der Anhaltedistanz.
-
3 ist eine Grafik einer anderen beispielhaften Bahn mit einem positiven Geschwindigkeitssegment.
-
4 ist eine Skizze eines Verfahrens zum Bestimmen einer Bahn zum Anhalten eines Fahrzeugs an dem Haltepunkt.
-
5 ist ein Blockschaltbild eines Prozesses zum Betätigen eines Fahrzeugbauteils basierend auf der Bahn.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Bei einem autonomen Fahrzeug kann ein virtueller Bediener einen Abstand zum Anhalten beurteilen, um eine Fahrzeugbahn zum Anhalten des Fahrzeugs an einem geforderten Haltepunkt für die zu bestimmen, während das Rucken und Insassen minimiert wird. Diese Anhaltedistanz teilt die Bahn in eine Vielzahl von Segmenten, die jeweils eine Beschleunigung oder einen Ruck vorschreiben die es einer Rechenvorrichtung erlauben, einen Fahrzeugantrieb und/oder eine Bremse zu betätigen, um das Fahrzeug in einer Initiierung und/oder einem Hochfahren und/oder einer Beschleunigung und/oder einem Herunterfahren und/oder einer abschließenden Verlangsamung zu betreiben. Die Bahn kann längere Segmente für das Hochfahren und die Verlangsamung als Segmente für das Herunterfahren und die abschließende Verlangsamung aufweisen, um das Verhalten eines menschlichen Bedieners nachzuahmen. Die Bahn kann zu dem Herunterfahrsegment übergehen, wenn das Fahrzeug eine Schwellengeschwindigkeit erreicht.
-
1 veranschaulicht ein beispielhaftes System 100 zum Bestimmen einer Bahn aus eine Anhaltedistanz und zum Betreiben des Fahrzeugs 101 bis zu einem kompletten Anhalten. Die Rechenvorrichtung 105 ist programmiert, um gesammelte Daten 115 von einem oder mehreren Datensammlern 110 zu empfangen, zum Beispiel Sensoren des Fahrzeugs 101, die mit dem Betrieb des Fahrzeugs 101 zusammenhängen. Die Daten 115 können zum Beispiel eine Basis zum Bestimmen einer Geschwindigkeit des Fahrzeugs 101, einer Beschleunigung und/oder Verlangsamung des Fahrzeugs 101, Daten in Zusammenhang mit dem Weg oder Lenken des Fahrzeugs 101 usw. aufweisen und/oder bereitstellen, darunter seitliche Beschleunigung, Straßenkrümmung, biometrische Daten in Zusammenhang mit dem Bediener des Fahrzeugs 101, zum Beispiel Pulsschlag, Atmung, Pupillenerweiterung, Körpertemperatur, Bewusstseinszustand usw. Weitere Beispiele für Daten 115 können Messungen der Systeme und Bauteile des Fahrzeugs 101 aufweisen (zum Beispiel ein Lenksystem, einen Antriebsstrang, ein Bremssystem, interne Erfassung, externe Erfassung usw.). Die Rechenvorrichtung 105 kann programmiert sein, um Daten 115 von dem Fahrzeug 101, in dem sie installiert ist, gelegentlich „Host-Fahrzeug” genannt, zu sammeln und/oder kann programmiert sein, um Daten 115, zum Beispiel über DSRC (Dedicated Short Range Communications, dedizierte Kurzstreckenkommunikationen) oder dergleichen, über und/oder von einem zweiten Fahrzeug zu sammeln, das heißt einem anderen Fahrzeug als das Fahrzeug 101, zum Beispiel ein „Zielfahrzeug”.
-
Die Rechenvorrichtung 105 ist im Allgemeinen für Kommunikationen auf einem Steuergerätenetz(CAN)-Bus oder dergleichen konfiguriert. Die Rechenvorrichtung 105 kann auch eine Verbindung zu einem On-Board-Diagnosestecker (OBD-II) haben. Über den CAN-Bus, OBD-II und/oder andere verdrahtete oder drahtlose Mechanismen kann die Rechenvorrichtung 105 Nachrichten zu diversen Geräten in einem Fahrzeug übertragen und/oder Nachrichten von den diversen Geräten, zum Beispiel von Steuervorrichtungen, Stellantrieben, Sensoren usw., inklusive Datensammler 110, empfangen. Alternativ oder zusätzlich, in Fällen, in welchen die Rechenvorrichtung 105 tatsächlich mehrere Vorrichtungen aufweist, kann der CAN-Bus oder dergleichen für Kommunikation zwischen Vorrichtungen, die in dieser Offenbarung als die Rechenvorrichtung 105 dargestellt sind, verwendet werden. Zusätzlich kann die Rechenvorrichtung 105 programmiert sein, um mit dem Netzwerk 120 zu kommunizieren, das, wie unten beschrieben, unterschiedliche verdrahtete und/oder drahtlose Netzwerktechnologien, zum Beispiel Mobilfunk, Bluetooth, verdrahtete und/oder drahtlose Paketnetze aufweisen kann.
-
Der Datenspeicher 106 kann irgendeines bekannten Typs sein, zum Beispiel Festplatten, Festkörperlaufwerke, Server, oder kann irgendein flüchtiges oder nicht flüchtiges Medium sein. Der Datenspeicher 106 kann die gesammelten Daten 115, die von den Datensammlern 110 gesendet werden, speichern.
-
Das Fahrzeug 101 kann eine Vielzahl von Subsystemen 107 aufweisen. Die Subsysteme 107 weisen typischerweise zum Beispiel ein Antriebssubystem 107 (zum Beispiel eine Drossel für eine Brennkraftmaschine), ein Lenksubsystem 107 und ein Bremssubsystem 107 auf, und weisen ferner oft andere Subsysteme 107 auf, wie zum Beispiel ein Klimasteuersubsystem 107, ein Unterhaltungssubsystem 107, ein Navigationssubsystem 107 usw. Die Rechenvorrichtung 105 kann programmiert sein, um eines oder alle der Subsysteme 107 mit begrenzter oder keiner Eingabe von einem menschlichen Bediener, das heißt autonom, zu betreiben. Solch eine Programmierung kann als „virtueller Bediener” bezeichnet werden. Der virtuelle Bediener weist Programmierungen zum Überwachen und/oder Steuern eines oder mehrerer Subsysteme 107 auf, zum Beispiel um Anweisungen, zum Beispiel über einen Kommunikationsbus des Fahrzeugs 101 und/oder an elektronische Steuereinheiten (ECUs) wie bekannt, bereitzustellen, um Fahrzeugkomponenten zu betätigen, zum Beispiel, um die Bremsen anzulegen, einen Lenkradwinkel zu ändern usw. Wenn die Rechenvorrichtung 105 ein Subsystem 107 autonom betreibt, bedeutet das, dass die Rechenvorrichtung 105 mindestens einige Eingaben von dem menschlichen Bediener in Bezug auf das Subsystem/die Subsysteme 107, die zur Steuerung durch den virtuellen Bediener ausgewählt werden, ignoriert. Falls der menschliche Bediener zum Beispiel versucht, ein Gaspedal während Antriebsbetrieb des virtuellen Bedieners zu drücken, kann die Rechenvorrichtung 105 den vom Menschen eingegebenen Befehl zum Erhöhen der Drossel und Beschleunigen des Fahrzeugs 101 gemäß ihrer Programmierung ignorieren.
-
Die Datensammler 110 können eine Vielfalt von Vorrichtungen aufweisen. Unterschiedliche Steuervorrichtungen können zum Beispiel in einem Fahrzeug als Datensammler 110 arbeiten, um Daten 115 über den CAN-Bus zu liefern, zum Beispiel Daten 115 in Zusammenhang mit der Geschwindigkeit, Beschleunigung des Fahrzeugs 101, System- und/oder Bauteilfunktionalität. Zusätzlich zum Bereitstellen von Daten 115, die ein Hostfahrzeug 101 betreffen, können die Datensammler 110 Daten 115 in Zusammenhang mit einem oder mehreren zweiten (Ziel)-Fahrzeugen bereitstellen. Ferner können Sensoren oder dergleichen, Global Positioning System(GPS)-Ausstattungen usw., in einem Fahrzeug enthalten und als Datensammler 110 konfiguriert sein, um Daten direkt zu dem Computer 105, zum Beispiel über eine verdrahtete oder drahtlose Verbindung, zu liefern. Sensordatensammler 110 könnten Mechanismen aufweisen, wie zum Beispiel RADAR, LIDAR, Sonar usw., Sensoren, die eingesetzt werden könnten, um Umgebungsdaten zu bestimmen, zum Beispiel zum Messen eines Abstands zwischen dem Fahrzeug 101 und anderen Fahrzeugen oder Objekten, zum Bestimmen der Arten von Objekten nahe der Bahn des Fahrzeugs 101, der Straßenzustände, Positionen von Straßen und Verkehrsschildern usw. Noch andere Sensordatensammler 110 könnten Kameras, Alkoholtestgeräte, Bewegungsdetektoren usw. aufweisen, das heißt Datensammler 110, um Daten 115 zum Beurteilen einer Bedingung oder eines Zustands eines Bedieners eines Fahrzeugs 101 bereitzustellen.
-
Die gesammelten Daten 115 können eine Vielfalt von Daten, die in einem Fahrzeug 101 gesammelt werden, enthalten. Beispiele für gesammelte Daten 115 sind oben bereitgestellt, und die Daten 115 werden außerdem im Allgemeinen unter Verwendung eines oder mehrerer Datensammler 110 gesammelt und können zusätzlich Daten aufweisen, die daraus in dem Computer 105 und/oder an dem Server 125 berechnet werden. Im Allgemeinen können gesammelte Daten 115 irgendwelche Daten aufweisen, die von den Datensammlern 110 gesammelt und/oder aus solchen Daten berechnet werden.
-
Das System 100 kann ferner ein Netzwerk 120 aufweisen, das mit einem Server 125 und einem Datenspeicher 130 verbunden ist. Der Computer 105 kann ferner programmiert sein, um mit einem oder mehreren entfernten Standorten zu kommunizieren, wie zum Beispiel mit dem Server 125 über ein Netzwerk 120, wobei ein solcher entfernter Standort möglicherweise einen Datenspeicher 130 aufweist. Das Netzwerk 120 stellt einen oder mehrere Mechanismen dar, durch die ein Fahrzeugcomputer 105 mit einem entfernten Server 125 kommunizieren kann. Das Netzwerk 120 kann folglich ein oder mehrere diverse verdrahtete oder drahtlose Kommunikationsmechanismen sein, darunter jede gewünschte Kombination verdrahteter (zum Beispiel Kabel und Glasfaser) und/oder drahtloser (zum Beispiel mobil, drahtlos, Satellit, Mikrowellen und Funkfrequenz) Kommunikationsmechanismen und irgendeine gewünschte Netzwerktopologie (oder Topologien, wenn mehrere Kommunikationsmechanismen verwendet werden). Zu beispielhaften Kommunikationsnetzwerken gehören drahtlose Kommunikationsnetzwerke (zum Beispiel, die Bluetooth, IEEE 802.11 usw. verwenden), Local Area Netzwerke (LAN) und/oder Wide Area Netzwerke (WAN), darunter Internet, die Datenkommunikationsdienste bieten.
-
Der Server 125 kann programmiert sein, um eine geeignete Aktion für ein oder mehrere Fahrzeuge 101 zu bestimmen und Anweisung zu einem oder mehreren Computern 105 des jeweiligen Fahrzeugs 101 bereitzustellen, um entsprechend vorzugehen. Der Server 125 kann ein oder mehrere Computerserver sein, wobei jeder im Allgemeinen mindestens einen Prozessor und mindestens einen Speicher aufweist, wobei der Speicher Anweisungen speichert, die von dem Prozessor ausgeführt werden können, darunter Anweisungen zum Ausführen unterschiedlicher Schritte und Prozesse, die hier beschrieben sind. Der Server 125 kann einen Datenspeicher 130 aufweisen oder in Kommunikation mit ihm gekoppelt sein, um gesammelte Daten 115 zu speichern, zum Beispiel Aufzeichnungen in Zusammenhang mit potentiellen Vorfällen, die wie hier beschrieben erzeugt werden, Spurwechselprofile usw. Ferner kann der Server 125 Informationen in Zusammenhang mit dem bestimmten Fahrzeug 101 speichern und zusätzlich in Zusammenhang mit einem oder mehreren anderen Fahrzeugen 101, die in einem geographischen Bereich, bei Verkehrszuständen, Wetterzuständen usw. innerhalb eines geographischen Bereichs, in Bezug zu einer besonderen Straße, Stadt usw. betrieben werden. Der Server 125 könnte programmiert sein, um Warnungen zu einem bestimmten Fahrzeug 101 und/oder anderen Fahrzeugen 101 bereitzustellen.
-
2 veranschaulicht eine beispielhafte Beschleunigungsplotterdarstellung 200 für eine Anhaltedistanz. Die Plotterdarstellung 200 zeigt die Beschleunigung des Fahrzeugs 101 auf ihrer vertikalen Achse und die Zeit auf ihrer horizontalen Achse, wobei die Beschleunigung eines Fahrzeugs 101 während einer Zeitspanne dargestellt wird. Die Beschleunigungsplotterdarstellung 200 weist fünf Beschleunigungssegmente auf: ein Initiierungssegment 205, ein Hochfahrsegment 210, ein Verlangsamungssegment 215, ein Herunterfahrsegment 220 und ein abschließendes Verlangsamungssegment 230. Der Begriff „konstant” bedeutet hier „im Wesentlichen während des Segments gleich”, zum Beispiel kann das Fahrzeug 101 in dem Initiierungssegment 205 eine konstante Geschwindigkeit halten, und die Rechenvorrichtung 105 stellt das Brems- und/oder Antriebssubsystem 107 ein, um im Wesentlichen dieselbe Geschwindigkeit wie in dem Initiierungssegment 205 vorgeschrieben zu halten.
-
Die Rechenvorrichtung 105 kann eine Plotterdarstellung der Bahn basierend auf der geforderten Anhaltedistanz anlegen, die eine vorhergesagte verstrichene Gesamtzeit für die Bahn basierend auf der aktuellen Geschwindigkeit des Fahrzeugs 101 aufweist. Die Bahn weist typischerweise mindestens vier der fünf Beschleunigungssegmente auf, wobei jedes Segment eine vorgeschriebene Beschleunigung oder einen Ruck darstellt und einen vorgegebenen Abschnitts der vorhergesagten verstrichenen Zeit dauert. Die Segmente stellen Anweisungen dar, die die Rechenvorrichtung 105 verwendet, um das Antriebs- und/oder Bremssubsystem 107 zu betätigen, um die vorgegebene Beschleunigung oder den Ruck während der spezifizierten Zeit zu halten. Die Bahn der Plotterdarstellung 200 ist in fünf Segmente, wie oben beschrieben, unterteilt, um dem Insassen des Fahrzeugs 101 einen bequemen Übergang von der Bewegung des Fahrzeugs 101 zu einem Stillstand bereitzustellen. Die Bahn kann in irgendeine Anzahl von Segmenten mit jeweiligen vorgeschriebenen Beschleunigungen oder Rucken geteilt sein, um für den Insassen des Fahrzeugs 101 einen bequemen, zum Beispiel als sanft empfundenen, Übergang zum Stillstand bereitzustellen.
-
Die Plotterdarstellung 200 startet typischerweise mit dem Initiierungssegment 205. Das Segment 205 ist als das Segment definiert, in dem die Beschleunigung des Fahrzeugs 101 vor dem Beginn der Verlangsamung des Fahrzeugs 101 mit vorgegebenen Beschleunigungen der anderen Segmente null ist, das heißt der Zustand des Fahrzeugs 101 vor dem Verlangsamen. Die Zeit, die dem Initiierungssegment 205 zugewiesen ist, ist als tIN angegeben. In dem Initiierungssegment 205 hält die Rechenvorrichtung 105 die Geschwindigkeit und Beschleunigung, die das Fahrzeug 101 vor der Anhalteanfrage hatte. Bei diesem Beispiel fuhr das Fahrzeug 101 mit einer konstanten Geschwindigkeit, so dass für das Initiierungssegment 205 zum Halten dieser konstanten Geschwindigkeit die Beschleunigung gleich null ist. Die Zeit tIN, die dem Initiierungssegment 205 zugewiesen ist, kann durch die Rechenvorrichtung 105 basierend auf der geforderten Anhaltedistanz bestimmt werden. Für das Initiierungssegment 205 stellt die Zeit tIN die Zeitspanne dar, während der die Rechenvorrichtung 105 das Antriebs- und/oder Bremssubsystem 107 betätigt, um das Fahrzeug 101 bei der vorhergehenden Geschwindigkeit und Beschleunigung, die durch das Initiierungssegment 205 vorgeschrieben sind, zu halten. In bestimmten Situationen erfordert die Anhaltedistanz ein sofortiges Verlangsamen, und die Plotterdarstellung 200 kann das Initiierungssegment 205 weglassen und mit dem Hochfahrsegment 210 beginnen.
-
Die Plotterdarstellung 200 geht von dem Initiierungssegment 205 zu dem Hochfahrsegment 210 über. Das Segment 210 ist als das Segment der Bahn definiert, in dem das Fahrzeug 101 seine Beschleunigung auf einen Beschleunigungswert verringert, der die Geschwindigkeit des Fahrzeugs 101 auf einen vorbestimmten Geschwindigkeitsschwellenwert innerhalb einer vorbestimmten Zeitspanne verringert, typischerweise durch Vorgeben eines negativen Rucks. Die Zeit tRI, die dem Hochfahrsegment 210 zugewiesen ist, kann durch die Rechenvorrichtung 105 basierend auf dem geforderten Anhaltabstand bestimmt werden und stellt die Zeitspanne dar, während der die Rechenvorrichtung 105 das Antriebs- und/oder Bremssubsystem 107 betätigt, um das Rucken beizubehalten, das in dem Hochfahrsegment 210 vorgeschrieben ist. Bei diesem Beispiel hält das Hochfahrsegment einen konstanten negativen Ruck, und die Beschleunigung des Fahrzeugs 101 ist zum Verringern mit einer konstanten Rate vorgeschrieben, das heißt, der Ruck ist eine negative Konstante. Der Ruck kann durch ein vorbestimmtes negatives Rucklimit jRI begrenzt sein, um die Menge an Ruck zu begrenzen, die das Fahrzeug 101 erfährt. Das negative Rucklimit jRI kann es dem Fahrzeug 101 erlauben, sanfter zu entschleunigen. Das Hochfahrsegment 210 kann einen positiven Ruck haben, falls zum Beispiel das Fahrzeug 101 schneller in dem Initiierungssegment 205 entschleunigt als ein Verlangsamungsziel aDC, das in dem Verlangsamungssegment 215 verwendet wird.
-
Die Plotterdarstellung 200 geht von dem Hochfahrsegment 210 zu dem Verlangsamungssegment 215 über. Das Verlangsamungssegment 215 ist als das Segment der Bahn definiert, in dem das Fahrzeug 101 seine Geschwindigkeit durch Halten einer negativen Beschleunigung verringert, bis die Geschwindigkeit des Fahrzeugs 101 einen vorbestimmten Geschwindigkeitsschwellenwert erreicht, typischerweise durch Vorgeben einer konstanten negativen Beschleunigung. Das Verlangsamungssegment 215 verringert typischerweise die Geschwindigkeit des Fahrzeugs 101 am meisten über die Bahn. Die Zeit tDC, die dem Verlangsamungssegment 215 zugewiesen ist, kann durch die Rechenvorrichtung 105 basierend auf der geforderten Anhaltedistanz und/oder einem Geschwindigkeitsschwellenwert vRO bestimmt werden und stellt die Zeitspanne dar, während der die Rechenvorrichtung 105 das Antriebs- und/oder Bremssubsystem 107 betätigt, um die Verlangsamung zu halten, die in dem Verlangsamungssegment 215 vorgeschrieben ist. Bei diesem Beispiel ist die Verlangsamung konstant, das heißt der Ruck ist null und die Beschleunigung ist auf einen konstanten negativen Wert vorgegeben, der eine konstante Verlangsamung der Geschwindigkeit des Fahrzeugs 101 bereitstellt. Die Beschleunigung kann durch ein Verlangsamungsziel aDC begrenzt sein.
-
Die Plotterdarstellung 200 geht von dem Beschleunigungssegment 215 zu dem Herunterfahrsegment 220 über. Das Herunterfahrsegment 220 ist als das Segment der Bahn definiert, in dem die Beschleunigung des Fahrzeugs 101 von einer Beschleunigung, die in dem Verlangsamungssegment 215 vorgegeben ist, zu einer Beschleunigung zunimmt, die in dem abschließenden Segment 225 typischerweise durch Vorgeben eines positiven Rucks vorgegeben ist. Die Zeit tRO, die dem Herunterfahrsegment 220 zugewiesen ist, kann durch die Rechenvorrichtung 105 basierend auf der geforderten Anhaltedistanz bestimmt werden. Das Herunterfahrsegment 220 beginnt, wenn die vorhergesagte Geschwindigkeit des Fahrzeugs 101 den Schwellenwert vRO erreicht, das heißt, wenn die Plotterdarstellung 200 zu dem Herunterfahrsegment 220 übergeht, wenn die Rechenvorrichtung 105 vorhersagt, dass das Fahrzeug 101 den Geschwindigkeitsschwellenwert vRO erreicht. Typischerweise ist das Herunterfahrsegment 220 das vorletzte Segment der Bahn 200, das heißt das Segment, das dem abschließenden Segment der Bahn 200 unmittelbar vorausgeht. In dem Herunterfahrsegment 220 schreibt die Bahn eine zunehmende Beschleunigung vor, das heißt, der Ruck ist positiv. Bei diesem Beispiel ist der Ruck eine positive Konstante, die eine konstant zunehmende Beschleunigung erzeugt, aber der Ruck kann alternativ entweder auf eine zunehmende oder abnehmende Art zunehmen. Die Rechenvorrichtung 105 kann das Fahrzeugantriebs- und/oder Bremssystem 107 betätigen, um den Ruck beizubehalten. Der Ruck kann durch ein vorbestimmtes positives Rucklimit jRO, um die Menge an Ruck, die das Fahrzeug 101 erfährt, zu begrenzen, begrenzt sein. Die Rucklimits jRI, jRO können vorausbestimmt und in dem Datenspeicher 106 gespeichert und/oder von dem Server 125 empfangen werden. Die Rucklimits jRI, jRO können im Absolutwert gleich sein, das heißt, dass die Größe des negativen Rucklimits jRI gleich der Größe des positiven Rucklimits jRO sein kann: jRO = –jRI; |jRO| = |jRI|
-
Die Plotterdarstellung 200 geht von dem Herunterfahrsegment 220 zu dem abschließenden Verlangsamungssegment 225 über. Das abschließende Verlangsamungssegment 225 ist als das Segment der Bahn definiert, in dem das Fahrzeug 101 bis zum Stillstand entschleunigt, typischerweise durch Vorschreiben einer Verlangsamung, und es ist das abschließende Segment der Bahn. Die Zeit tFD, die dem abschließenden Verlangsamungssegment 225 zugewiesen ist, kann durch die Rechenvorrichtung 105 basierend auf der geforderten Anhaltedistanz bestimmt werden. Bei diesem Beispiel schreibt die Bahn eine konstante Verlangsamung aFD vor, das heißt, dass der Ruck null ist und dass die Beschleunigung ein konstanter negativer Wert ist, bis die Geschwindigkeit des Fahrzeugs 101 zu einem kompletten Anhalten, das heißt einem Stillstand, abnimmt. Die Bahn kann jedoch irgendeine geeignete Verlangsamung vorschreiben, das heißt eine exponentiell abnehmende Beschleunigung, eine linear abnehmende Beschleunigung usw. Das Herunterfahrsegment 220 und das abschließende Verlangsamungssegment 225 können eine sanftere Verlangsamung bis zum Stillstand bereitstellen als zum Beispiel das Halten der negativen Beschleunigung des Verlangsamungssegments 215 bis zum Stillstand. Die Rechenvorrichtung 105 kann das Fahrzeugantriebs- und/oder Bremssystem 107 betätigen, um die konstante Beschleunigung zu halten.
-
3 veranschaulicht eine beispielhafte Beschleunigungsplotterdarstellung 300 für eine Anhaltedistanz, wenn eine positive Beschleunigung erforderlich ist, zum Beispiel, wenn die geforderte Anhaltedistanz länger ist als die Distanz, bis zu der das Fahrzeug 101 anhalten würde, falls es von der aktuellen Geschwindigkeit des Fahrzeugs 101 ausgehend langsamer wird. Bei diesen Situationen erfordert die Bahn ein positives Beschleunigungssegment, damit das Fahrzeug 101 über die geforderte Anhaltedistanz angetrieben wird. Falls das Fahrzeug 101 zum Beispiel stillsteht, zum Beispiel an einem Stoppschild, kann das Fahrzeug 101 die geforderte Distanz nicht erreichen und muss aus dem Stillstand positiv beschleunigen. Zusätzlich zu Segmenten, die denjenigen, die in der Plotterdarstellung 200 gezeigt sind, entsprechen, weist die Plotterdarstellung 300 daher ein zusätzliches Segment, ein positives Beschleunigungssegment 305 auf, um es der Rechenvorrichtung 105 zu erlauben, die Subsysteme 107 zu betätigen, um diesen Antrieb bereitzustellen. Die Plotterdarstellung 300 zeigt die Beschleunigung des Fahrzeugs 101 auf ihrer vertikalen Achse und die Zeit auf ihrer horizontalen Achse.
-
Die Plotterdarstellung 300 beginnt mit dem positiven Beschleunigungssegment 305. Das positive Beschleunigungssegment 305 ist als das Segment der Bahn definiert, in dem das Fahrzeug 101 eine positive Beschleunigung hält, um das Fahrzeug 101 vorwärts anzutreiben, um den Haltepunkt zu erreichen. Die Zeit tAC, die dem positiven Beschleunigungssegment 305 zugewiesen ist, kann durch die Rechenvorrichtung 105 basierend auf der geforderten Anhaltedistanz und der Geschwindigkeit, die zum Erreichen des Haltepunktes vorausgesagt wird, bestimmt werden. Bei diesem Beispiel beschreibt die Bahn eine konstante Beschleunigung aAC, die es der Rechenvorrichtung 105 erlaubt, die Subsysteme 107 zu betätigen, um eine zunehmende Geschwindigkeit des Fahrzeugs 101 bereitzustellen, um es dem Fahrzeugs 101 zu erlauben, die geforderte Anhaltedistanz zu erreichen. Die Bahn kann irgendeine geeignete Beschleunigung vorschreiben, zum Beispiel eine linear zunehmende oder abnehmende positive Beschleunigung, eine exponentiell zunehmende oder abnehmende positive Beschleunigung usw.
-
Dann geht die Plotterdarstellung 300 von dem positiven Beschleunigungssegment 305 zu einem Initiierungssegment 310 über. Wie für das Initiierungssegment 205 in dem Beispiel der 2 oben beschrieben, verringert die Bahn die Beschleunigung auf null, indem eine konstante Geschwindigkeit für eine Zeit tIN vorgeschrieben wird, die von der Rechenvorrichtung 105, die die Subsysteme 107 betätigt, zu halten ist. Die Zeit tCS, die dem Segment 310 mit konstanter Geschwindigkeit zugewiesen ist, kann durch die Rechenvorrichtung 105 basierend auf der geforderten Anhaltedistanz bestimmt werden.
-
Die Plotterdarstellung 300 geht von dem Initiierungssegment 310 zu dem Hochfahrsegment 315 über. Wie für das Hochfahrsegment 210 oben beschrieben, schreibt die Bahn eine Verlangsamung vor, hier einen konstanten negativen Ruck, während einer Zeit tRI. Der Ruck kann durch ein vorbestimmtes negatives Rucklimit jRI begrenzt sein, um die Menge an Ruck zu begrenzen, die das Fahrzeug 101 erfährt. Das negative Rucklimit kann es dem Fahrzeug 101 erlauben, sanfter zu entschleunigen.
-
Die Plotterdarstellung 300 geht dann von dem Hochfahrsegment 315 zu dem Herunterfahrsegment 320 über. Wie für das Verlangsamungssegment 215 oben beschrieben, schreibt die Bahn eine negative Beschleunigung vor, hier eine konstante negative Beschleunigung, das heißt, der Ruck ist gleich null. Die Zeit tDC, die dem Verlangsamungssegment 320 zugewiesen ist, kann durch die Rechenvorrichtung 105 basierend auf der geforderten Anhaltedistanz und/oder einem Geschwindigkeitsschwellenwert vRO bestimmt werden. Bei diesem Beispiel ist der Ruck gleich null, und die Beschleunigung ist ein vorgeschriebener konstanter negativer Wert, der es der Rechenvorrichtung 105 erlaubt, die Subsysteme 107 zu betätigen, um eine Verringerung der Geschwindigkeit des Fahrzeugs 101 bereitzustellen. Die Beschleunigung kann durch ein Verlangsamungsziel aDC begrenzt sein.
-
Danach geht die Plotterdarstellung 300 von dem Verlangsamungssegment 320 zu dem Herunterfahrsegment 325 über. Wie oben für das Herunterfahrsegment 200 in dem Beispiel der 2 beschrieben, schreibt die Bahn eine zunehmende Beschleunigung, das heißt, der Ruck ist positiv, für eine Zeit tRO vor. Die Bahn kann dann zu dem Herunterfahrsegment 325 übergehen, wenn die vorhergesagte Geschwindigkeit des Fahrzeugs 101 den Geschwindigkeitsschwellenwert vRO erreicht. Typischerweise ist das Herunterfahrsegment 325 das vorletzte Segment, das heißt das Segment unmittelbar vor dem abschließenden Segment der Bahn 300. Der Ruck kann durch ein vorbestimmtes positives Rucklimit jRO begrenzt sein, um die Menge an Ruck zu begrenzen, die das Fahrzeug 101 erfährt. Wie oben, können die Rucklimits jRI, jRO im Absolutwert gleich sein, das heißt, dass die Größe des negativen Rucklimits jRI gleich der Größe des positiven Rucklimits sein kann: jRO = –jRI; |jRO| = |jRI|
-
Danach geht die Plotterdarstellung 300 von dem Herunterfahrsegment 325 zu dem abschließenden Verlangsamungssegment 330 über. Wie oben für das abschließende Verlangsamungssegment 225 beschrieben, schreibt die Bahn eine negative Beschleunigung aFD während einer Zeit tFD vor, das heißt, bis das Fahrzeug 101 einen Stillstand erreicht und der geforderte Haltepunkt erreicht wird. Die negative Beschleunigung kann eine konstante negative Beschleunigung, eine linear zunehmende oder abnehmende negative Beschleunigung, eine exponentiell zunehmende oder abnehmende negative Beschleunigung sein, oder irgendeine geeignete Beschleunigungskurve, damit das Fahrzeug 101 die Anhaltedistanz erreicht. Das abschließende Verlangsamungssegment 330 ist das abschließende Segment der Bahn 300, und die Bahn 300 endet, wenn die Verlangsamung das Fahrzeug 101 zu einem Stillstand bringt.
-
4 veranschaulicht einen beispielhaften Prozess 400 zum Bestimmen einer Bahn zum Anhalten des Fahrzeug 101 an dem Haltepunkt. Der Prozess 400 beginnt in einem Block 405, in dem die Rechenvorrichtung 105 zum Beispiel basierend auf Daten 115 ein Objekt erfasst, das ein Anhalten erfordert, zum Beispiel ein Stoppschild, ein anderes Fahrzeug 101 usw., und die Rechenvorrichtung 105 anweist, die Anhaltedistanz basierend auf dem Objekt zu bestimmen.
-
Dann bestimmt die Rechenvorrichtung 105 in einem Block 410 eine Verlangsamung, die erforderlich ist, um an dem Haltepunkt anzuhalten. Die Rechenvorrichtung 105 empfängt eine vorhergesagte Anhalteabstand basierend auf der aktuellen Geschwindigkeit des Fahrzeugs 101 und der Beschleunigung, zum Beispiel von einem Datensammler 110, dem Server 125 usw. Die Rechenvorrichtung 105 bestimmt dann die konstante Verlangsamung, die erforderlich ist, um die Anhaltedistanz zu erreichen. Das Fahrzeug 101 kann sich mit einer Geschwindigkeit fortbewegen, die, ohne zusätzlichen Antrieb, bis zu einem Anhalten vor dem Haltepunkt abnehmen würde. Das Fahrzeug 101 kann zum Beispiel an einem Stoppschild angehalten sein, und die Anhaltedistanz kann die Distanz zu dem nächsten Stoppschild sein. In dieser Situation erfordert die Bahn mindestens ein positives Beschleunigungssegment, um die Anhaltedistanz zu erreichen. Alternativ kann die vorhergesagte Anhalteabstand sehr gering sein, was ein sofortiges Anhalten und hohe Verlangsamung erfordert.
-
Dann vergleicht die Rechenvorrichtung 105 in einem Block 415 die Verlangsamung mit einem vorbestimmten Verlangsamungsschwellenwert. Falls die konstante Verlangsamung den vorbestimmten Schwellenwert überschreitet, erfordert die Bahn kein Initiierungssegment 205, 310, und der Prozess 400 setzt mit dem Block 425 fort. Anderenfalls setzt der Prozess 400 mit einem Block 420 fort.
-
In dem Block
420 bestimmt die Rechenvorrichtung eine Bahn des Fahrzeugs
101 basierend auf der Anhaltedistanz und einer Kostenfunktion. Die Rechenvorrichtung
105 initialisiert zuerst eine Bahn, die ein konstantes Beschleunigungssegment und ein konstantes Geschwindigkeitssegment enthält. Die Rechenvorrichtung
105 berechnet dann eine Kostenfunktion J. Die Kostenfunktion J kann wie folgt sein:
wobei a
rms das quadratische Mittel der Beschleunigung des Fahrzeugs
101 über die Bahn ist, wie bekannt, t
cs die zugewiesene Dauer des konstanten Geschwindigkeitssegments ist, t
total die gesamte Anhaltedauer ist, und P
1, P
2, P
3 vorbestimmte abstimmbare Konstanten sind. Die Rechenvorrichtung
105 minimiert dann die Kostenfunktion J unter Verwenden bekannter Kostenfunktion-Optimierungsverfahren. Die Rechenvorrichtung
105 kann zum Beispiel eine Bahn basierend auf einer initialisierten Verlangsamung aDC, die eine Komponente der quadratischen Mittelwert-Beschleunigung a
rms ist, berechnen. Die Rechenvorrichtung
105 kann dann eine andere Bahn mit einer Verlangsamung aDC berechnen, die um einen Beschleunigungsschritt ΔaDC verringert ist, das heißt aDC
new = aDC – ΔaDC. Falls die Kostenfunktion J der neuen Bahn (unter Verwenden von aDC
new) niedriger ist als die Kostenfunktion J der aktuellen Bahn, wird die neue Bahn gespeichert und eine andere neue Bahn wird basierend auf einer konstanten Verlangsamung aDC verringert um einen weiteren Schritt ΔaDC berechnet. Die Rechenvorrichtung
105 setzt das Berechnen von Bahnen und Kostenfunktionen für diese Bahnen für eine Vielzahl konstanter Verlangsamungen aDC fort, indem die Verlangsamungen jedes Mal um den Schritt ΔaDC dekrementiert werden. Wenn die Bahn das Beschleunigungssegment
305 erfordert, kann die Kostenfunktion J die Beschleunigung während des positiven Beschleunigungssegments aAC aufweisen und die Geschwindigkeit während des Initiierungssegments
310 vIN. Die Rechenvorrichtung
105 kann dann die Bahn auswählen, die die niedrigste Kostenfunktion J hat und diese Bahn verwenden, um das Brems- und/oder Antriebssubsystem
107 zu betätigen. Der Prozess
400 endet im Anschluss an den Block
430.
-
In dem Block 425 bestimmt die Rechenvorrichtung 105 eine Bahn des Fahrzeugs 101 basierend auf der Anhaltedistanz ohne Initiierungssegment 205, 310. Die Bahn weist daher Segmente jeweils für Hochfahren, Verlangsamung, Herunterfahren und abschließende Verlangsamung auf. Die Rechenvorrichtung 105 bestimmt die Bahn basierend auf einem unteren Geschwindigkeitsschwellenwert, der in die Anhaltedistanz eingegeben wird. Rucklimits jRO, jRI werden basierend auf der minimalen negativen Beschleunigung ausgewählt, das heißt aDC. Insbesondere wird die Anhaltedistanz beurteilt, um eine Bahn basierend auf einem initialisierten Geschwindigkeitsschwellenwert vRO zu bestimmen. Die Bahn weist eine Zeitspanne auf, die einem Hochfahrsegment tRI, einem Verlangsamungssegment tDC, einem Herunterfahrsegment tRO und einem abschließenden Verlangsamungssegment tSD, zugeordnet ist. Falls die Zeitspanne, die dem Hochfahr- und dem Verlangsamungssegment zugewiesen ist, weniger beträgt als die Zeitspanne, die dem Herunterfahr- und dem abschließenden Verlangsamungssegment zugewiesen ist, das heißt (tRI + tDC) < (tRO + tFD), wird der Geschwindigkeitsschwellenwert um einen Schritt ΔvRO verringert, nämlich vROnew = vRO – ΔvRO. Die Rechenvorrichtung 105 berechnet dann die Bahn basierend auf vROnew, wiederholt mit neuen Werten von vRO, verringert um den Schritt ΔvRO, bis (tRI + tDC) ≥ (tRO + tFD), an welchem Punkt die Rechenvorrichtung 105 die aktuelle Bahn speichert. Im Allgemeinen kann die Zeit, die der gesamten Bahn zugewiesen ist, ttotal, in vier Segmente basierend auf der aktuellen Geschwindigkeit des Fahrzeugs 101, den Rucklimits jRI, jRO, dem Verlangsamungsziel aDC und dem Geschwindigkeitsschwellenwert vRO geteilt werden, um eine Zeitspanne, die jedem Segment zugewiesen wird, zu bestimmen. Der Prozess 400 geht dann zu einem Block 430 weiter.
-
Bei dem Block 430 passt die Rechenvorrichtung 105 eine Bremse und/oder einen Antrieb 107 basierend auf der Bahn an, und der Prozess 400 endet. Die Rechenvorrichtung 105 kann zum Beispiel die Bremse betätigen, um den erforderlichen negativen Ruck für das konstante negative Rucksegment zu erzeugen. Bei einem anderen Beispiel kann die Vorrichtung 105 den Antrieb betätigen, um die konstante Geschwindigkeit während des konstanten Geschwindigkeitssegments zu halten. Die beispielhaften Bahnen 200, 300 veranschaulichen strikte Übergänge zwischen den vorgeschriebenen Beschleunigungen und dem Ruck zwischen den Segmenten, und das Fahrzeugsystem 107 kann sanft von der vorgeschriebenen Beschleunigung und dem vorgeschriebenen Ruck eines Segments zu der vorgeschriebenen Beschleunigung und dem vorgeschriebenen Ruck eines anderen Segments übergehen. Die Bahnen 200, 300 veranschaulichen somit eine idealisierte Beschleunigungskurve, während sich das Fahrzeugsubsystem 107 den Bahnen so weit wie möglich nähert.
-
5 veranschaulicht einen Prozess 500 zum Betätigen eines Fahrzeugsubsystems 107 basierend auf der Bahn. Der Prozess 500 sendet eine Geschwindigkeitsreferenz der Bahn und der aktuellen Geschwindigkeit des Fahrzeugs 101 zu einem ersten Summierpunkt 505, wo die aktuelle Geschwindigkeit des Fahrzeugs 101 von der Referenzgeschwindigkeit abgezogen wird, um die Änderungsmenge der Geschwindigkeit zu bestimmen, die erforderlich ist, um mit der Bahn übereinzustimmen. Der Unterschied wird durch eine Proportional-Integralkontrolle PI gesendet, die einen Beschleunigungsbefehl zu einem zweiten Summierpunkt 510 ausgibt.
-
Eine Referenzbeschleunigung der Bahn wird durch eine Feedforward-Steuerung FF wie bekannt gesendet und dann zu dem zweiten Summierpunkt 510 gesendet. Hier werden der Beschleunigungsbefehl und die Feedforward-Steuerung an dem Summierpunkt 510 summiert und zu einem Drehmomentnachfrage-Wandler 515 gesendet.
-
Der Drehmomentnachfrage-Wandler 515 nimmt das Resultat von dem zweiten Summierpunkt 510 und wandelt den Wert in eine Anweisung wie bekannt um, um ein Fahrzeugsubsystem 107, zum Beispiel einen Antrieb, eine Bremse, einen Antriebsstrang usw., anzupassen. Die Anweisung wird dann zu der Rechenvorrichtung 105 gesendet, die die Fahrzeugsubsysteme 107 gemäß der Anweisung anpasst und eine aktuelle Geschwindigkeit des Fahrzeugs 101 zu dem ersten Summierpunkt 505 zurückgesendet, um mit dem nächsten Teil der Bahn verglichen zu werden. Der Prozess 500 setzt dann fort, bis die Bahn abgeschlossen ist.
-
Wie hier verwendet, bedeutet der Ausdruck „im Wesentlichen”, der ein Adjektiv abändert, dass eine Form, Struktur, Messung, Berechnung, ein Wert, usw. von einer exakten beschriebenen Geometrie, Entfernung, Messung, Berechnung, von einem exakt beschriebenen Wert usw. aufgrund von Perfektionsmängeln in Materialien, Bearbeitung, Herstellung, Sensormessungen, Berechnungen, Verarbeitungszeit, Kommunikationszeit usw. abweichen können.
-
Computervorrichtungen 105 weisen im Allgemeinen Anweisungen auf, die von einer oder mehreren Computervorrichtungen wie die oben definierten, und zum Ausführen von Blöcken oder Schritten von Prozessen, die oben beschrieben sind, ausgeführt werden können. Computerausführbare Anweisungen können aus Computerprogrammen kompiliert oder ausgelegt werden, die eine Vielfalt von Programmiersprachen und/oder Technologien verwenden, darunter und uneingeschränkt, allein oder kombiniert JavaTM, C, C++, Visual Basic, Java Script, Perl, HTML usw. Im Allgemeinen empfängt ein Prozessor (zum Beispiel ein Mikroprozessor) Anweisungen von einem Speicher, einem computerlesbaren Medium usw., und führt diese Anweisungen aus, wodurch ein oder mehrere Prozesse, darunter ein oder mehrere der hier beschriebenen Prozesse, ausgeführt werden. Solche Anweisungen und andere Daten können unter Verwendung einer Vielfalt computerlesbarer Medien gespeichert und übertragen werden. Eine Datei in der Computervorrichtung 105 ist im Allgemeinen eine Sammlung von Daten, die auf einem computerlesbaren Medium gespeichert ist, wie zum Beispiel auf einem Speichermedium, auf einem Schreib-Lese-Speicher usw.
-
Ein computerlesbares Medium weist irgendein Medium auf, das an der Bereitstellung von Daten (zum Beispiel Anweisungen), die von einem Computer gelesen werden können, beteiligt ist. Ein solches Medium kann irgendeine Form annehmen, darunter, ohne aber darauf beschränkt zu sein, nichtflüchtige Medien, flüchtige Medien usw. Nichtflüchtige Medien enthalten zum Beispiel optische oder magnetische Festplatten und andere dauerhafte Speicher. Flüchtige Medien können dynamische Schreib-/Lesespeicher (Dynamic Random Access Memory – DRAM) aufweisen, die typischerweise einen Hauptspeicher bilden. Herkömmliche Formen computerlesbarer Medien sind zum Beispiel eine Floppy-Diskette, eine flexible Diskette, eine Festplatte, ein Magnetband, irgendein anderes magnetisches Medium, eine CD-ROM, eine DVD, irgendein anderes optisches Medium, Lochkarten, Papierband, irgendwelche andere physische Medien mit Lochmustern, ein RAM, PROM, EPROM, FLASH-EEPROM, irgendwelche andere Speicherchips oder -patronen oder irgendein anderes Medium, von dem ein Computer lesen kann.
-
Was die Medien, Prozesse, Systeme, Verfahren usw., die hier beschrieben sind, betrifft, muss man verstehen, dass, obwohl die Schritte solcher Prozesse usw. als in einer bestimmten geordneten Sequenz auftretend beschrieben wurden, solche Prozesse unter Ausführung der beschriebenen Schritte in einer anderen als der hier beschriebenen Reihenfolge umgesetzt werden könnten. Ferner muss man verstehen, dass bestimmte Schritte gleichzeitig ausgeführt werden könnten, dass andere Schritte hinzugefügt oder bestimmte Schritte, die hier beschrieben sind, weggelassen werden könnten. Bei dem Prozess 400 könnten zum Beispiel ein oder mehrere der Schritte weggelassen werden, oder die Schritte könnten in einer unterschiedlichen Reihenfolge als in 4 gezeigt ausgeführt werden. Mit anderen Worten werden die Beschreibungen von Systemen und/oder Vorgängen hier zum Zweck der Veranschaulichung bestimmter Ausführungsformen bereitgestellt und sollten nicht als den offenbarten Gegenstand einschränkend ausgelegt werden.
-
Folglich muss man verstehen, dass die vorliegende Offenbarung, inklusive die oben stehende Beschreibung und die begleitenden Zeichnungen und unten stehenden Ansprüche, als veranschaulichend und nicht einschränkend zu verstehen ist. Viele Ausführungsformen und Anwendungen, die anders sind als die bereitgestellten Beispiele, könnten sich für den Fachmann aus der Lektüre der oben stehenden Beschreibung ergeben. Der Geltungsbereich der Erfindung sollte nicht unter Bezugnahme auf die oben stehende Beschreibung bestimmt werden, sondern stattdessen unter Bezugnahme auf Ansprüche, die hier angefügt sind und/oder in einer nicht vorläufigen Patentanmeldung, die darauf basiert, enthalten sind, gemeinsam mit dem vollen Umfang der Äquivalente, auf die solche Ansprüche Anspruch haben. Es wird vorweggenommen und beabsichtigt, dass zukünftige Entwicklungen in den hier besprochenen Technologien auftreten, und dass die offenbarten Systeme und Verfahren in solche zukünftige Ausführungsformen eingebaut werden. Zusammengefasst sollte man verstehen, dass der offenbarte Gegenstand Änderungen und Variationen erfahren kann.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Nicht-Patentliteratur
-