-
TECHNISCHES GEBIET
-
Dieses Dokument offenbart eine Steueranordnung und ein Verfahren. Insbesondere werden eine Steueranordnung und ein Verfahren bereitgestellt für die Bewegungsplanung eines autonomen Fahrzeuges, welches einen Bodenabschnitt passiert, wie einen Straßenbereich, einen Parkplatz oder eine ähnliche befahrbare Oberfläche.
-
HINTERGRUND
-
Autonome Systeme, von denen Fahrzeuge ein Teil sind, folgen oft einer Architektur mit einer Erkennungs-Planungs-Steuerung. Das Planungsmodul dient dem Auffinden einer geeigneten Sequenz von Fahrzeugzuständen, denen das Fahrzeug folgen soll. Diese Sequenz könnte entweder ein mehrdimensionaler Pfad (z.B. eine Sequenz von Fahrzeugzuständen im Raum) oder eine Trajektorie (Bewegungsbahn) sein (das heißt ein Pfad, dem ein Geschwindigkeitsprofil zugeordnet ist). Pfade und Trajektorien, die durch das Planungsmodul erzeugt sind, bestimmen, wie sich das Fahrzeug in der Umgebung bewegt.
-
Die Steuerung dient dann dazu, diese Datenausgabe des Planungsmoduls in Operationsbefehle umzusetzen. Die Steuerung kann dabei Teil des Planungsmoduls sein oder sie kann ein separates Modul sein.
-
Das Steuerungsmodul ist zuständig dafür, dass das autonome Fahrzeug der Sequenz von Zuständen folgt, welche durch das Planungsmodul geplant sind. Hierzu steuert das Steuerungsmodul direkt die Aktoren des Fahrzeuges, wie die Steuerung, das Bremssystem, den Motor und das Getriebe.
-
Die Algorithmen, welche eingesetzt werden zum Lösen von Aufgaben der Planungs- und Steuerungsmodule sind häufig sehr rechenaufwändig. Dieses Problem wird noch verschärft durch den Umstand, dass häufig die in autonomen Fahrzeugen zur Verfügung stehende Rechenleistung begrenzt ist und dass die zum Berechnen neuer Bewegungen zur Verfügung stehende Zeit recht kurz ist (typischerweise zwischen 50 und 500 ms).
-
Das Dokument
WO2018091373 beschreibt ein Verfahren zur Bewegungsplanung eines Fahrzeuges. Dieses Dokument wählt eine Lösung, bei der anfängliche Schätzungen für eine Bewegungsplanung in einer Cloud/einem Speicher abgespeichert und während der Fahrt zum Fahrzeug übertragen werden. Diese anfänglichen Schätzungen beschleunigen die Algorithmen der Bewegungsplanung indem sie diesen eine möglicherweise gute Näherung bieten.
-
Häufig müssen solche anfänglichen Lösungen/Abschätzungen optimiert werden. Das Dokument beschreibt allerdings nicht und gibt auch keine Hinweise dafür, wie eine weitere Optimierung durchgeführt werden kann/oder wie Zeit und Rechenkapazität des Fahrzeuges eingespart werden könnte.
-
Das Dokument
WO2017214581 beschreibt das Problem aufwändiger Berechnungen eines Fahrzeuges und schlägt vor, einen geplanten Graphen für einen späteren Einsatz in einem Speicher abzulegen. Durch die Ausführung von Vorabberechnungen mehrerer Bewegungen, die zusammengeführt werden können zum Erzeugen eines Bewegungsplanes, kann die Rechengeschwindigkeit erhöht werden.
-
Diesem Verfahren sind aber auch Grenzen gesetzt, da eine sehr große Computer-Speicherkapazität erforderlich ist zum Speichern der Vielzahl von Vorabberechnungen für alle Straßen, die bei der Fahrt zu passieren sind.
-
Das Dokument
US20180164822 beschreibt ein Verfahren zum Reduzieren des Rechenaufwandes in Verbindung mit der Routenplanung bei autonomen Fahrzeugen. Fahrzeug-Bewegungspläne werden an Bord generiert. Das Dokument beschreibt einige Möglichkeiten, wie Rechenzeiten verkürzt werden können, wie etwa die Wiederverwendung von Lösungen, die in vorhergehenden Planungszyklen berechnet worden sind, und auch durch die Ausführung von entkoppelter Lateral- und Longitudinalplanung.
-
Das beschriebene Verfahren sollte allerdings nur eine sehr begrenzte Einsparung an Rechenzeit bringen.
-
Es ergibt sich, dass weitere Entwicklungen erforderlich sind zum Reduzieren der Rechenzeiten bei der Bewegungsplanung für autonome Fahrzeuge.
-
KURZBESCHREIBUNG
-
Es ist deshalb Ziel dieser Erfindung, zumindest einige der obigen Probleme zu lösen und die Trajektorienplanung für ein autonomes Fahrzeug zu verbessern.
-
Gemäß einer ersten Ausführung der Erfindung wird dieses Ziel erreicht durch ein Verfahren für die Bewegungsplanung eines autonomen Fahrzeuges, welches einen Bodenabschnitt passiert, wie einen Straßenbereich, eine Passage, einen Parkplatz oder eine ähnliche Oberfläche. Das Verfahren beinhaltet: eine Bestimmung geografischer Koordinaten des Fahrzeuges bei Annäherung an den Bodenabschnitt oder an einen Straßen/Fahrbahn/Wege/Parkplatz-Identifizierer bezüglich des Bodenabschnittes, wenn sich das Fahrzeug diesem nähert. Das Verfahren beinhaltet weiterhin eine Gewinnung von vorab berechneten Prozeduren, die dem Bodenabschnitt bei den ermittelten geografischen Koordinaten oder dem Straßen/Fahrbahn/Wege/Parkplatz-Identifizierer zugeordnet sind. Weiterhin beinhaltet das Verfahren Bewegungsplanungen für das Fahrzeug beim Passieren des Bodenabschnittes auf Basis der gewonnenen, vorab berechneten Prozeduren.
-
Gemäß einer zweiten Ausführung der Erfindung wird das Ziel erreicht durch eine Steueranordnung. Die Steueranordnung dient einer Bewegungsplanung eines autonomen Fahrzeuges, welches einen Bodenabschnitt passiert. Die Steueranordnung ist eingerichtet zum Bestimmen geografischer Koordinaten des Fahrzeuges bei Annäherung an den Bodenabschnitt oder an einen Straßen/Fahrbahn/Wege/Parkplatz-Identifizierer für den Bodenabschnitt, wenn das Fahrzeug sich diesem nähert. Weiterhin ist die Steueranordnung eingerichtet, vorab berechnete Prozeduren zu gewinnen, die dem Bodenabschnitt bei den ermittelten geografischen Koordinaten oder dem Straßen/Fahrbahn/Wege/Parkplatz-Identifizierer zugeordnet sind. Die Steueranordnung ist weiterhin eingerichtet, Bewegungen des Fahrzeuges beim Passieren des Bodenabschnittes zu planen auf Basis der gewonnenen, vorab berechneten Prozeduren.
-
Die vorab berechneten Prozeduren, die dem Bodenabschnitt zugeordnet sind, können beispielsweise vorab berechnete Trajektorien, vorab berechnete Pfade, vorab berechnete Gitter, vorab berechnete Gradienten, vorab berechnete ausgewählte Neigungen, vorab berechnete Vorschläge für die Vermeidung von Hindernissen und/oder vorab berechnete Vorschläge für Beschleunigung/Abbremsung sein, jeweils als Beispiel.
-
Aufgrund der Vorabberechnung und Abspeicherung von einer oder von mehreren Prozeduren kann die erforderliche Zeitspanne für die Ausführung der Bewegungsplanung und/oder Durchrechnung von verschiedenen Steueralgorithmen reduziert werden. Damit wird der Rechenaufwand für das autonome Fahren an Bord des Fahrzeuges reduziert.
-
Weitere Vorteile und neue Merkmale werden noch deutlicher aus der nachfolgenden Beschreibung von Einzelheiten.
-
Figurenliste
-
Ausführungsbeispiele der Erfindung werden nun mit weiteren Einzelheiten näher beschrieben unter Bezug auf die begleitenden Figuren:
- 1 zeigt ein Ausführungsbeispiel für ein Fahrzeug in Seitenansicht;
- 2 zeigt ein Ausführungsbeispiel eines Gitters und drei hervorgehobene Bewegungsgrundstrukturen eines Fahrzeuges gemäß einem Ausführungsbeispiel;
- 3 zeigt ein Ausführungsbeispiel eines Gitters, welches erzeugt ist durch Berechnung mehrerer Bewegungsgrundstrukturen, welche gemäß einem Ausführungsbeispiel den Satz von diskreten Zuständen entlang der Straße verbinden können;
- 4 zeigt ein Ausführungsbeispiel für eine geplante Trajektorie eines Fahrzeuges gemäß einem Ausführungsbeispiel;
- 5 zeigt das Innere eines Fahrzeuges gemäß einem Ausführungsbeispiel;
- 6 ist ein Flussdiagramm zur Erläuterung eines Ausführungsbeispieles des Verfahrens; und
- 7 zeigt ein System gemäß einem Ausführungsbeispiel.
-
BESCHREIBUNG VON EINZELHEITEN
-
Ausführungsbeispiele der hier beschriebenen Erfindung sind definiert als eine Steueranordnung und als ein Verfahren in einer Steueranordnung, welche mit den nachfolgend beschriebenen Ausführungsbeispielen umsetzbar sind. Diese Ausführungsbeispiele können allerdings in unterschiedlicher Weise realisiert werden und sind nicht auf die hier gegebenen Ausführungsformen beschränkt; vielmehr dienen die dargestellten Beispiele einer genauen und vollständigen Offenbarung.
-
Über die obigen Ziele und Merkmale hinaus können aus der nachfolgenden Beschreibung von Einzelheiten in Verbindung mit den begleitenden Figuren weitere Ziele und Merkmale deutlich werden. Es versteht sich jedoch, dass die Figuren nur dem Zweck der Erläuterung dienen und nicht als Festlegung von Grenzen der hier mitgeteilten möglichen Ausführungsformen, wozu auf die beigefügten Patentansprüche Bezug genommen wird. Auch sind die Figuren nicht notwendigerweise maßstabsgerecht und dienen, soweit nichts anderes angegeben ist, der Erläuterung der Strukturen und Prozeduren, wie sie hier beschrieben sind.
-
1 zeigt ein Fahrzeug 100, welches in Fahrtrichtung 105 auf einem Bodenabschnitt 110 fährt. Das Fahrzeug 100 kann Transportmittel im weitesten Sinne aufweisen, beispielsweise kann es sich um einen Lastkraftwagen, einen Personenkraftwagen, ein Motorrad, einen Anhänger, einen Bus, einen Motorroller, einen Zug, eine Bahn, ein Luftfahrzeug, ein Wasserfahrzeug, ein unbemanntes Unterwasserfahrzeug, eine Drohne, einen humanoiden Dienstroboter, ein Raumfahrzeug oder ein ähnliches bemanntes oder unbemanntes Vehikel für den Transport handeln, z.B. auf Rädern, auf/im Wasser, in Luft, oder in ähnlichen Medien.
-
Das Fahrzeug 100 kann bei einigen Ausführungsbeispielen autonom sein.
-
Der Bodenabschnitt 110 kann beispielsweise ein Straßenabschnitt, ein Parkplatz, eine Fahrbahn, eine Autobahn oder eine ähnliche befahrbare Oberfläche für ein Fahrzeug sein.
-
Das Fahrzeug 100 hat eine Steueranordnung 120. Die Steueranordnung 120 kann ihrerseits beispielsweise eine oder mehrere elektronische Steuereinheiten (ECU) aufweisen, typischerweise eine Mehrzahl von miteinander wechselwirkenden ECU. Die Steueranordnung 120 kann einen digitalen Rechner aufweisen, welcher ein oder mehrere elektrische Systeme steuert, oder auch elektrische Subsysteme, des Fahrzeuges 100 entsprechend beispielsweise Informationen, die aus Sensoren ausgelesen werden, welche an unterschiedlichen Stellen und in verschiedenen Komponenten des Fahrzeuges 100 angeordnet sind, oder auch außerhalb des Fahrzeuges 100. ECU ist ein umfassender Ausdruck, der häufig benutzt wird im Zusammenhang mit Fahrzeugelektronik für jedes eingebettete System, welches ein oder mehrere elektrische Systeme oder Subsysteme des Fahrzeuges 100 steuert. Die Steueranordnung 120 kann insbesondere eingerichtet sein eine Höhenabschätzung und Distanzmessungen zu implementieren auf Basis von Sensoreingaben und sie kann Parametervergleiche ausführen und Entscheidungen treffen entsprechend den Ergebnissen derartiger Vergleiche.
-
Das Fahrzeug 100 hat typischerweise einen oder mehrere nach vorne, zur Seite und/oder nach hinten gerichtete Sensoren 130, um Umgebungsinformationen zu sammeln zur Ausführung der autonomen Fahrt.
-
Ein Sensor 130 kann beispielsweise eine Kamera, eine Stereokamera, eine Infrarotkamera, eine Videokamera, eine Radareinrichtung, eine Lidareinrichtung, eine Ultraschalleinrichtung, eine Laufzeitkamera, oder eine ähnliche Einrichtung aufweisen, je nach Ausführungsbeispiel. Bei einigen Ausführungsbeispielen kann das Fahrzeug 100 mehrere Sensoren 130 aufweisen, die von gleicher Art oder von unterschiedlicher Art sein können, wie beispielsweise ein Radargerät und eine Kamera; ein Lidargerät und ein Radargerät etc.
-
Ein Sensor 130 kann beispielsweise verschiedene Indikatoren bezüglich der vorausliegenden Straßenform detektieren, wie Straßenlinien, Straßenbegrenzungen, die Position eines vorausfahrenden Fahrzeuges etc.
-
Autonome Fahranwendungen erfordern, dass die geplanten Trajektorien weitgehend frei sind von abrupten Änderungen. Gemäß hier beschriebenen Ausführungsbeispielen sind erfolgreich berechnete Pfade oder Trajektorien für das Fahrzeug 100 oder Merkmale und Verfahren oder Teilberechnungen eines Bewegungsplaners oder einer Steuerung, die für verschiedene Fahrzeuge und/oder Verkehrssituationen an bestimmten geografischen Orten gemeinsam bzw. gleich sind, in einer Datenbasis gespeichert. Die Datenbasis kann in Bezug auf das Fahrzeug extern sein und über drahtlose Kommunikation zugänglich sein.
-
Die Kommunikation kann erfolgen über eine drahtlose Kommunikationsschnittstelle, wie beispielsweise die Fahrzeug-Fahrzeug-Kommunikation (V2V), oder die Fahrzeugzu-Infrastruktur (V2I)-Kommunikation. Auch wird bisweilen der Ausdruck Fahrzeugzu-Allem (V2X) verwendet.
-
Bei einigen Ausführungsbeispielen kann die Kommunikation zwischen dem Fahrzeug 100 und der Datenbasis erfolgen über die V2V-Kommunikation, z.B. auf Basis von zweckbestimmten Kommunikationsmitteln für den Nahbereich (DSRC). DSRC arbeitet im 5,9 GHz-Band mit einer Bandbreite von 75 MHz und in einem Nahbereich von 1000 m.
-
Die drahtlose Kommunikation kann erfolgen entsprechend einem IEEE-Standard für die drahtlose Fahrzeugkommunikation, wie beispielsweise die spezielle Betriebsart IEEE 802.11 für Fahrzeug-Netzwerke, auch genannt Wireless Access in Vehicular Environments (WAVE). IEEE 802.11p ist eine Erweiterung des 802.11 Wireless LAN mit Spezifikationen auf Basis einer Medium Access Layer (MAC) und Physical Layer (PHY).
-
Eine derartige Schnittstelle für die drahtlose Kommunikation kann basieren auf oder zumindest angeregt sein durch die drahtlose Kommunikationstechnik, wie Wi-Fi, Ethernet, drahtlose lokale Netzwerke (WLAN), 3GPP LTE, LTE-Advanced oder ähnliche Techniken, um nur einige Möglichkeiten zu nennen für den Einsatz eines drahtlosen Kommunikationsnetzwerkes.
-
Die Datenbasis kann dann diese Informationen bereitstellen für jedes autonome Fahrzeug, welches dasselbe oder das gleiche besondere Straßensegment passiert. Dies ermöglicht, dass andere Fahrzeuge weniger Rechenleistung aufzubringen haben (Insbesondere müssen keine Rechnungen ausgeführt werden bezüglich des Ausgangs aus der Datenbasis). Die Informationen könnten auch in einer Karte abgespeichert werden oder sie könnten während der Fahrt zum Fahrzeug 100 übertragen werden.
-
Die abgespeicherten Informationen in der Fahrzeugkarte und/oder in der Datenbasis könnten auch zum Back-End-Rechner übertragen werden zusammen mit den Fahrzeugkonfigurationsparametern bezüglich des Fahrzeuges 100, welches die erfolgreichen Pfade oder Trajektorien berechnet hat. Dadurch kann dies anderen Fahrzeugen bereitgestellt werden, falls diese dies wünschen, wenn sie die neue Karte mit ihren Aktualisierungen gemäß einigen Ausführungsbeispielen herunterladen.
-
Rechenleistung ist eine knappe Ressource in autonomen Fahrzeugen und die hier beschriebene Problemlösung reduziert Rechenzeiten bezüglich sicherheitsrelevanter Komponenten bei der Bewegungsplanung für ein autonomes Fahrzeug 100. Diese Vorzüge können gemeinsam genutzt werden von beispielsweise allen (die Stelle) passierenden Fahrzeugen; Fahrzeugen einer bestimmten Marke; Fahrzeuge mit gleichem Eigentümer; Fahrzeuge, die für einen bestimmten Dienst angemeldet sind etc. Damit wird also Rechenzeit eingespart, was ermöglicht, dass weniger aufwändige (d.h. weniger kostspielige) Rechenmittel an Bord des Fahrzeuges 100 eingesetzt werden müssen. Durch die Einsparung von Rechenaufwand bezüglich RoutineBerechnungen wird Rechenkapazität freigestellt für die Bearbeitung von beispielsweise besonderen Notsituationen, die auftreten könnten. Damit wird die Verkehrssicherheit verbessert und der gerätetechnische Aufwand reduziert.
-
2 zeigt ein Beispiel für ein Gitter mit drei hervorgehobenen Bewegungsgrundstrukturen für die Planung einer Fahrzeugroute des Fahrzeuges 100. Dies kann bezeichnet werden als Gitterplanung. Vorab berechnete Gitter sind ein Beispiel für vorab berechnete Prozeduren.
-
Gitterplanungen sind eine bekannte Lösung für das Problem des Auffindens einer geeigneten Sequenz von Zuständen, die das Fahrzeug 100 einnimmt von seiner momentanen Position zur Zielposition, wobei dynamische Randbedingungen eingehalten sind.
-
Ein Gitter beinhaltet eine Diskretisierung des Planungsraumes, in dem das Fahrzeug 100 sich bewegen kann. Durch Auswahl eines endlichen Satzes von Zuständen in dieser Umgebung und durch Verbindung dieser Zustände miteinander unter Einsatz von Bewegungsgrundstrukturen kann ein Graph für mögliche Bewegungskombinationen erzeugt werden. Sodann kann eine Recherche ausgeführt werden bezüglich dieses Graphen, um Lösungen für das Planungsproblem zu finden.
-
Der Prozess der Erzeugung eines Gitters kann die Verrechnung von tausend oder mehr Bewegungsgrundstrukturen beinhalten und sodann die Ausführung einer Recherche bezüglich dieser Bewegungsgrundstrukturen. Die Erzeugung einer Bewegungsgrundstruktur ist ein rechnerisch sehr aufwändiger Prozess aufgrund der extrem hohen Anzahl von berechneten Grundstrukturen.
-
Mehrere Fahrzeuge können allerdings das gleiche Gitter verwenden, wenn sie sich auf derselben Strecke des Bodenabschnittes/der Straße 110 befinden. Deshalb ist es möglich, vorab Gitter zu berechnen und sie bestimmten Segmenten des Bodenabschnittes 110 zuzuordnen. Ein Gitter für einen gegebenen Bodenabschnitt 100 kann eingestellt werden, sobald ein Fahrzeug 100 auf dem Bodenabschnitt 110 fährt.
-
Dieses Gitter kann dann in einer Datenbasis abgespeichert werden und zu Fahrzeugen übermittelt werden, welche sich diesem besonderen Bodenabschnitt 110 nähern, wobei die Übermittlung über Cloud-basierte Wege erfolgen kann oder über V2X-Techniken.
-
Das Gitter wird nicht ungültig aufgrund der Anwesenheit von Hindernissen oder anderen Fahrzeugen auf dem Bodenabschnitt 110; vielmehr hängt das Gitter im Wesentlichen ab von der Geometrie des Bodenabschnittes 110, welcher in der Natur typischerweise unverändert bleibt.
-
3 zeigt einen Bodenabschnitt 110, wie beispielsweise einen Straßenabschnitt, und ein diesem zugeordnetes Gitter. Das Gitter kann einmal berechnet werden, in einer dem besonderen Bodenabschnitt 110 zugeordneten Datenbasis abgespeichert und gehalten werden und sodann an Fahrzeuge 100 geschickt werden, welche sich dem Bodenabschnitt 110 nähern und diesen dann passieren. Ein solches Fahrzeug 100 kann dann das Gitter einsetzen zur Planung eines Fahrzeug-Pfades, der erfolgreich Hindernisse vermeidet.
-
4 zeigt ein Beispiel, bei dem ein Fahrzeug 100 von dem bereitgestellten Verfahren Gebrauch macht, um bei der Ausführung der Bewegungsplanung die Rechenzeiten zu reduzieren. Das Fahrzeug 100 bestimmt und sendet seinen Ort in Bezug auf den Bodenabschnitt 110. In einer Datenbasis 410 können vorab berechnete Prozeduren abgespeichert sein, wie beispielsweise ein Straßengitter bezüglich des Bodenabschnittes 110 in Verknüpfung mit dem Ort/den Koordinaten. Dieses Straßengitter des Bodenabschnittes 110 wird extrahiert und dem Fahrzeug 100 übermittelt, welches das Gitter entsprechend dem momentanen Bodenabschnitt 110 empfängt und es für seine Routenplanung verwenden kann.
-
Damit wird die Notwendigkeit zum Ausführen von Rechnungen im eigenen Bordcomputer des Fahrzeuges 100 reduziert.
-
5 zeigt ein Beispiel für ein Szenario entsprechend der Darstellung in 4, wie es durch einen angenommenen Fahrer des Fahrzeuges 100 gesehen würde, wobei das Fahrzeug 100 auch autonom fahren kann, also ohne Fahrer.
-
Das Fahrzeug 100 kann eine Steueranordnung 120 aufweisen für die Trajektorienplanung des autonomen Fahrzeuges 100.
-
Weiterhin kann das Fahrzeug 100 verschiedene Aktoren 540 aufweisen oder Einstelleinrichtungen oder auch Funktionalitäten bezüglich der Antriebsräder für Quereinstellungen, und/oder bezüglich einer Bremse, eines Kupplungspedals, einer Beschleunigungseinrichtung und/oder eines Getriebes für eine Einstellung der Fahrzeugposition in Längsrichtung, entsprechend Befehlen seitens der Steueranordnung 120, um der bestimmten Trajektorie zu folgen.
-
Somit sind die Aktoren 540 oder die Einstelleinrichtungen eingerichtet, die Position des Fahrzeuges 100 auf dem Bodenabschnitt 110 entsprechend der ermittelten Trajektorie einzustellen und damit den Bodenabschnitt 110 zu befahren.
-
Die Aktoren/Einstelleinrichtung 540 in der Darstellung haben einen Aufbau, der eingerichtet ist für den Eingriff seitens eines Fahrers. Bei anderen Ausführungsbeispielen jedoch können die gleichen oder entsprechende Funktionalitäten bei einem autonomen Fahrzeug 100 eingesetzt werden, wobei der Aufbau entsprechend anders sein kann.
-
Die geografische Position des Fahrzeuges 100 kann bei einigen Ausführungsbeispielen, wenn zuverlässige Karten zur Verfügung stehen, bestimmt werden durch eine Positionierungseinheit 510 in dem Fahrzeug 100, welche auf einem Satelliten-Navigationssystem basieren kann, wie dem Navigation Signal Timing and Ranging (Navstar), dem Global Positioning System (GPS), dem Differential GPS (DGPS), Galileo, GLONASS, oder dergleichen; und auf Basis einer Datenbasis 520 mit Kartendaten.
-
Die geografische Position der Positionierungseinheit 510 (und damit auch des Fahrzeuges 100) kann kontinuierlich bestimmt werden gemäß vorgegebenen bestimmten, einstellbaren Zeitintervallen, je nach Ausführungsbeispielen.
-
Die Positionierung mit Satellitennavigation basiert auf Distanzmessungen mit Triangulation auf Basis einer Anzahl von Satelliten 530a, 530b, 530c, 530d. Beim gezeigten Beispiel sind vier Satelliten 530a, 530b, 530c, 530d dargestellt, jedoch ist dies nur beispielhaft. Mehr als vier Satelliten 530, a, 530b, 530c, 530d können eingesetzt werden, um die Präzision zu verbessern oder um Redundanz zu schaffen. Die Satelliten 530a, 530b, 530c, 530d übertragen kontinuierlich Informationen bezüglich Zeit und Datum (beispielsweise in codierter Form), Identität (welcher der Satelliten 530a, 530b, 530c, 530d gerade sendet), Zustand und Position des Satelliten 530a, 530b, 530c, 530d zu dem jeweiligen gegebenen Zeitpunkt. Die GPS-Satelliten 530a, 530b, 530c, 530d senden Informationen, die gemäß verschiedenen Codierungen codiert sind, beispielsweise, jedoch nicht notwendigerweise, auf Basis des Code Division Multiple Access (CDMA). Dies ermöglicht, Informationen von den einzelnen Satelliten 530a, 530b, 530c, 530d von anderen Informationen zu unterscheiden entsprechend dem jeweils eingesetzten einzigartigen Code für den jeweiligen Satelliten 530a, 530b, 530c, 530d. Diese Informationen können dann übertragen werden zum Empfang durch die entsprechend angepasste Positionierungseinrichtung in der Fahrzeug 100.
-
Die Distanzmessungen können gemäß einigen Ausführungsbeispielen beinhalten, dass die Zeitdifferenzen gemessen werden, die das von dem jeweiligen Satelliten gesendete Signal braucht, um die Positionierungseinheit 510 zu erreichen. Da Radiosignale sich mit Lichtgeschwindigkeit fortpflanzen, kann die Distanz zu dem jeweiligen Satelliten 530a, 530b, 530c, 530d berechnet werden durch Messen der SignalLaufzeit.
-
Die Positionen der Satelliten 530a, 530b, 530c, 530d sind bekannt, da sie kontinuierlich überwacht werden durch etwa 15-30 Bodenstationen, die hauptsächlich entlang dem Erdäquator angeordnet sind. Damit können die geografischen Positionen, d.h. Länge und Breite, des Fahrzeuges 100 berechnet werden durch Bestimmung der Distanz zu zumindest drei Satelliten 530a, 530b, 530c, 530d mittels Triangulation. Zur Bestimmung der Höhe können bei einigen Ausführungsbeispielen Signale von vier Satelliten 530a, 530b, 530c, 530d eingesetzt werden.
-
Die geografische Position des Fahrzeuges 100 kann andererseits auch bestimmt werden beispielsweise mit Transpondern, die an bekannten Positionen entlang der Route positioniert sind, und mit einem hierfür vorgesehenen Sensor im Fahrzeug 100 zum Erkennen der Transponder und damit zum Bestimmen der Position; dies kann erfolgen durch Detektion auf Basis von Wi-Fi-Netzwerken (WiFi-Netzwerke entlang der Route können in einer Datenbasis kartographiert sein entsprechend den jeweiligen geografischen Positionen); durch Empfang eines Bluetooth-Baken-Signals, welches der geografischen Position zugeordnet ist, oder durch andere Signalerkennungen oder drahtlose Signale, wie zum Beispiel Triangulationssignale, die von einer Mehrzahl von festen Basisstationen mit geografisch bekannten Positionen abgegeben werden.
-
Die verschiedenen Einrichtungen an Bord des Fahrzeuges 100 können miteinander kommunizieren, beispielsweise über einen verdrahteten oder drahtlosen Kommunikationsbus. Der Kommunikationsbus kann beispielsweise ein Controller Area Network (CAN)-Bus sein, ein Media Oriented Systems Transport (MOST)-Bus oder ähnliches. Andererseits kann die Kommunikation auch erfolgen über eine drahtlose Verbindung oder sie kann auch basieren auf einer der oben bereits genannten drahtlosen Kommu nikationstechni ken.
-
6 erläutert ein Beispiel eines Verfahrens 600 gemäß einem Ausführungsbeispiel. Das Flussdiagramm gemäß 6 zeigt das in einer Steueranordnung 120 ausgeführte Verfahren 600 für die Bewegungsplanung eines autonomen Fahrzeuges 100, welches einen Bodenabschnitt 110, wie einen Straßenabschnitt, eine Passage, einen Parkplatz oder eine ähnliche Oberfläche passieren soll.
-
Die Steueranbrdnung 120 kann in einer in Bezug auf das Fahrzeug externen Struktur angeordnet sein, wie in einem Überwachungsturm. Andererseits kann bei einigen Ausführungsbeispielen die Steueranordnung 120 auch im autonomen Fahrzeug 100 positioniert sein.
-
Um die Bewegungen des Fahrzeuges 100 korrekt zu planen, kann das Verfahren 600 die Anzahl von Schritten 601-605 aufweisen. Die beschriebenen Schritte 601-605 können in einer etwas abgewandelten zeitlichen Reihenfolge ausgeführt werden als die Nummerierung vorgibt. Einige der Verfahrensschritte können auch in etwas anderer Art ausgeführt werden. Das Verfahren 600 kann die nachfolgenden Schritte aufweisen:
- Schritt 601 beinhaltet die Bestimmung der geografischen Koordinaten des Fahrzeuges 100, wenn es sich dem Bodenabschnitt 110 oder einem Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierer des Bodenabschnittes 110 nähert.
-
Die geografischen Koordinaten des Fahrzeuges 100 können bestimmt werden mit einer Positionierungseinheit 510 an Bord des Fahrzeuges 100. Andererseits kann der Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierer aus einer Straßenkarte extrahiert werden und/oder durch einen Sensor an Bord des Fahrzeuges 100 erfasst werden. In weiteren abgewandelten Ausführungsbeispielen kann ein straßenseitiger Sensor, der dem Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierer des Bodenabschnittes 110 zugeordnet ist, die Annäherung des Fahrzeuges 100 erkennen.
-
Bei einigen Ausführungsbeispielen kann ein an Bord befindlicher Sensor 130 ein Bild eines Straßenzeichens aufnehmen, welches den Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierer gemäß einigen Ausführungsbeispielen aufweist. Der Sensor 130 kann andererseits auch ein Bild des Bodenabschnittes 110 aufnehmen, welches durch Bilderkennung/rechnergestütztes Sehen und Gegenstandserkennung identifizierbar ist.
-
Die Sensoren 130 können eine Steueranordnung 120 aufweisen oder mit einer solchen verbunden sein, die eingerichtet ist für eine Bilderkennung/computergestütztes Sehen und die Erkennung von Orientierungspunkten. Das computergestützte Sehen ist ein technisches Gebiet, welches Verfahren bereitstellt zum Gewinnen, Verarbeiten, Analysieren und Verstehen von Bildern und, allgemein gesprochen, hochdimensionalen Daten aus der Realwelt zur Erzeugung von numerischer oder symbolischer Information. Eine besondere Entwicklung in diesem Gebiet war die Duplizierung der Fähigkeiten des menschlichen Sehens durch elektronische Aufnahme und Verständnis eines Bildes. „Verstehen“ in diesem Zusammenhang bedeutet die Transformation von visuellen Bildern (also der Eingabe auf die Retina) in Beschreibungen der Welt, die in Verbindung gebracht werden können mit anderen Denkprozessen, um angemessene Aktionen abzuleiten. Ein derartiges Bildverständnis kann betrachtet werden als eine Entwirrung von symbolischen Informationen aus Bilddaten unter Verwendung von Modellen, die gebildet werden mit Hilfe von Geometrie, Physik, Statistik und Lerntheorie. Computergestütztes Sehen kann auch verstanden werden als ein Ansatz zum Automatisieren und Integrieren eines weiten Bereiches von Prozessen und visuellen Wahrnehmungen. Damit kann der relevante Bodenabschnitt 110 identifiziert werden.
-
Schritt 602, der nur bei einigen Ausführungsbeispielen auszuführen sein wird, beinhaltet eine Überführung der in Schritt 601 ermittelten geografischen Koordinaten oder des Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierers zu einer Datenbasis 410 mit vorab berechneten Prozeduren bezüglich des Bodenabschnittes 110.
-
Die vorab berechneten Prozeduren bezüglichen des Bodenabschnittes 110 können eine jegliche, d.h. eine oder mehrere der nachfolgenden Größen beinhalten: vorab berechnete Trajektorien, vorab berechnete Pfade, vorab berechnete Gitter, vorab berechnete Gradienten, vorab berechnete Neigungen und/oder vorab berechnete Vorschläge zur Vermeidung von Hindernissen und/oder vorab berechnete Vorschläge zum Beschleunigen/Abbremsen oder ähnliche Merkmale.
-
Vorab berechnete Prozeduren mit vorab berechneten Trajektorien können die Bewegungsplanung und die Ausführung von Steueralgorithmen verschiedener Art beschleunigen. Vorab berechnete Prozeduren mit vorab berechneten Gittern können die Bewegungsplanung und die Ausführung von Steueralgorithmen beschleunigen, welche auf Gittern beruhen. Vorab berechnete Prozeduren mit vorab berechneten Gradienten können die Bewegungsplanung und die Ausführung von Steueralgorithmen auf Basis von numerischer Optimierung beschleunigen. Vorab berechnete Prozeduren mit vorab berechneten Neigungen können die Bewegungsplanung und die Ausführung von Steueralgorithmen beschleunigen auf Basis von Ansätzen wie dem schnellen Baumklassifikator (RRT). Vorab berechnete Prozeduren mit Vorschlägen zur Vermeidung von vorab berechneten Hindernissen können beispielsweise die Umgebung eines Routenhindernisses links/rechts etc. beinhalten.
-
Schritt 603 beinhaltet die Gewinnung von vorab berechneten Prozeduren, die dem Bodenabschnitt 110 der in Schritt 602 ermittelten geografischen Koordinaten zugeordnet sind oder die dem Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierer zugeordnet sind.
-
Die vorab berechneten Prozeduren können gemäß einigen Ausführungsbeispielen aus der Datenbasis 410 gewonnen werden.
-
Bei einigen Ausführungsbeispielen können die vorab berechneten Prozeduren bezüglich des Bodenabschnittes 110 in einer Fahrzeugkarte abgespeichert werden und aus dieser gewonnen werden.
-
Schritt 604 beinhaltet die Bewegungsplanung für das Fahrzeug 100 beim Passieren des Bodenabschnittes 110 auf Basis der in Schritt 603 gewonnenen vorab berechneten Prozeduren.
-
Die Bewegungsplanung kann ausgeführt werden auf Basis der vorab berechneten Prozeduren entsprechend Eingaben seitens der Fahrzeugsensoren 130, beispielsweise bezüglich Hindernissen, die auf dem Bodenabschnitt 110 detektiert sind.
-
Durch Verwendung von bereits ausgeführten Routineberechnungen wird Rechenaufwand an Bord des Fahrzeuges 100 eingespart, was auch zu kürzeren Rechenzeiten bei der Bewegungsplanung führt.
-
Schritt 605, der bei nur einigen Ausführungsbeispielen auszuführen sein wird, beinhaltet die Bereitstellung von Rückmeldungen an die Datenbasis 410 betreffend den Erfolg von in Schritt 603 gewonnenen vorab berechneten Prozeduren bei der Planung des Fahrzeugpfades 310 in Schritt 604.
-
Dabei kann die Steuereinheit 120 unterrichtet werden über eine Differenz zwischen dem Bodenabschnitt 110 und den entsprechenden Werten der vorab berechneten Prozeduren, z.B. aufgrund von Änderungen des Bodenabschnittes 110 durch beispielsweise Straßenarbeiten oder andere Änderungen am Bodenabschnitt 110, oder auch bezüglich eines Fehlers bei den vorab berechneten Prozeduren etc. Somit wird eine verbesserte Zuverlässigkeit für die vorab berechneten Prozeduren erreicht.
-
Wird bei einigen Ausführungsbeispielen eine Ungültigkeit der in Schritt 603 vorab berechneten Prozeduren erkannt, kann die Steueranordnung 120 andere Prozeduren selbst berechnen und diese zurück an die Datenbasis 410 schicken, welche dann die in Schritt 603 vorab berechneten Prozeduren aktualisiert (korrigiert).
-
7 zeigt ein System 700 für die Bewegungsplanung für ein autonomes Fahrzeug 100.
-
Das System 700 hat eine Steueranordnung 120, welche in einer in Bezug auf das Fahrzeug externen Struktur enthalten sein kann, beispielsweise an einer Straße. Andererseits kann die Steueranordnung 120 aber auch im Fahrzeug 100 angeordnet sein.
-
Die Steueranordnung 120 kann konfiguriert sein zur Ausführung des beschriebenen Verfahrens 600 entsprechend zumindest einigen der oben beschriebenen Verfahrensschritte 601-605. Die Steueranordnung 120 ist eingerichtet zum Bestimmen geografischer Koordinaten des Fahrzeuges 100 bei Annäherung an den Bodenabschnitt 110 oder an einen Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierer bezüglich des Bodenabschnittes 110, wenn sich das Fahrzeug 100 diesem nähert. Weiterhin ist die Steueranordnung 120 eingerichtet, vorab berechnete Prozeduren zu gewinnen, die verknüpft sind mit dem Bodenabschnitt 110 entsprechend den ermittelten geografischen Koordinaten bzw. dem Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierer. Die Steueranordnung 120 kann weiterhin eingerichtet sein, Bewegungen des Fahrzeuges 100 zu planen während des Passierens des Bodenabschnittes 110 auf Basis der gewonnenen vorab berechneten Prozeduren.
-
Gemäß einigen Ausführungsbeispielen kann die Steueranordnung 120 auch eingerichtet sein, die ermittelten geografischen Koordinaten oder den Straßen-/Fahrbahn-/Wege-/Parkplatz-Identifizierer an die Datenbasis 410 zu übermitteln, welche vorab berechnete Prozeduren bezüglich des Bodenabschnittes 110 enthält. Die vorab berechneten Prozeduren können von der Datenbasis 410 gewonnen werden.
-
Die vorab berechneten Prozeduren bezüglich des Bodenabschnittes 110 können in einer Fahrzeugkarte abgespeichert werden und die vorab berechneten Prozeduren können von der Fahrzeugkarte gewonnen werden.
-
Weiterhin kann die Steueranordnung 120 eingerichtet sein, Rückmeldungen an die Datenbasis 410 zu geben betreffend den Erfolg der gewonnenen vorab berechneten Prozeduren bei der Planung des Fahrzeugpfades 310.
-
Die vorab berechneten Prozeduren bezüglich des Bodenabschnittes 110 können eine jede der nachfolgend genannten Größen aufweisen: vorab berechnete Trajektorien, vorab berechnete Pfade, vorab berechnete Gitter, vorab berechnete Gradienten, vorab berechnete Neigungen und/oder vorab berechnete Vorschläge zur Vermeidung von Hindernissen und/oder vorab berechnete Vorschläge für Beschleunigungen/Abbremsungen.
-
Das System 700 kann auch einen oder mehrere Sensoren 130 des Fahrzeuges 100 aufweisen. Ein Sensor 130 kann in Bezug auf das Fahrzeug 100 nach vorne gerichtet sein, also in Fahrtrichtung 105, oder in jede andere ausgewählte Richtung. Der Sensor 130 kann beispielsweise aufweisen: eine Kamera, eine Stereokamera, eine Infrarotkamera, eine Videokamera, eine Radareinrichtung, eine Lidareinrichtung, eine Ultraschalleinrichtung, eine Laufzeitkamera oder eine ähnliche Einrichtung, je nach Ausführungsbeispiel.
-
Bei einigen Ausführungsbeispielen kann das System 700 verschiedene Aktoren 540 oder Einstelleinrichtungen oder auch Funktionalitäten aufweisen entsprechend den Antriebsrädern zum Lenken und/oder bezüglich einer Bremse, eines Kupplungspedals, eines Beschleunigers und/oder eines Getriebes für die Einstellung von Positionen des Fahrzeuges in Längsrichtung gemäß Instruktionen seitens der Steueranordnung 120, um die Bewegungsplanung für das Fahrzeug 100 auszuführen.
-
Bei einigen Ausführungsbeispielen kann die Steueranordnung 120 weiterhin eine Eingabeeinheit 710 aufweisen, die eingerichtet ist, über eine drahtlose Kommunikationsschnittstelle Informationen zu erhalten von einer drahtlosen Kommunikationseinrichtung des Sensors 130 und/oder eines Aktors 540.
-
Die Steueranordnung 120 kann weiterhin eine Prozessorschaltung 720 aufweisen, die eingerichtet ist zum Ausführen von verschiedenen Berechnungen und Ermittlungen zur Ausführung des Verfahrens 600 entsprechend den oben beschriebenen Schritten 601-605.
-
Eine derartige Prozessorschaltung 720 kann einen oder mehrere Prozesseinheiten aufweisen, d.h. eine zentrale Prozessoreinheit (CPU), eine dezentrale Prozessoreinheit, einen Prozessor, eine anwendungsbezogene integrierte Schaltung (ASIC), einen Mikroprozessor oder eine andere Prozessorlogik, welche Befehle interpretieren und ausführen kann. Der hier verwendete Begriff „Prozessorschaltung“ beinhaltet somit auch eine Prozessorschaltung mit einer Mehrzahl von Einzelschaltungen, wie beispielsweise eine jede oder alle der oben Genannten.
-
Weiterhin kann die Steueranordnung 120 einen Speicher 725 bei einigen Ausführungsbeispielen aufweisen. Der optionale Speicher 725 kann eine physikalische Einrichtung sein zum Speichern von Daten oder Programmen, d.h. Sequenzen von Befehlen, sei es zeitweise oder permanent. Gemäß einigen Ausführungsbeispielen kann der Speicher 725 integrierte Schaltungen aufweisen mit Silizium-Transistoren. Der Speicher 725 kann beispielsweise aufweisen: eine Speicherkarte, einen Flash-Speicher, einen USB-Speicher, eine Festplatte oder eine andere ähnliche flüchtige oder nicht-flüchtige Speichereinrichtung zum Abspeichern von Daten, wie beispielsweise ein ROM (Lesespeicher), ein PROM (programmierbarer Lesespeicher), ein EPROM (löschbarer PROM), ein EEPROM (elektrisch löschbarer PROM) etc., je nach Ausführungsbeispiel.
-
Die Steueranordnung 120 kann weiterhin eine Ausgabeeinheit 730 aufweisen, die eingerichtet ist Informationen über eine drahtlose Kommunikationsschnittstelle an eine drahtlose Kommunikationseinrichtung des Aktors 540 auszugeben.
-
Die zuvor beschriebenen Verfahrensschritte 601-605 zur Ausführung in der Steueranordnung 120 können implementiert werden durch den einen oder die mehreren Prozessorschaltungen 720 in der Steueranordnung 120, zusammen mit einem Computerprogrammprodukt zur Ausführung von zumindest einigen der Funktionen gemäß den Verfahrensschritten 601-605. Somit kann ein Computerprogrammprodukt mit Befehlen zur Ausführung der Verfahrensschritte 601-605 in der Steueranordnung 120 das Verfahren 600 ausführen mit zumindest einigen der Verfahrensschritte 601-605 für die Trajektorienplanung eines autonomen Fahrzeuges, wenn das Computerprogramm in den einen oder die mehreren Prozessorschaltungen 720 der Steueranordnung 120 geladen ist. Die beschriebenen Verfahrensschritte 601-605 können somit durch einen Prozessor in der Steueranordnung 120 ausgeführt werden als ein Computer-Algorithmus, als ein maschinenausführbarer Code, auf Basis eines nichtflüchtigen, computerlesbaren Mediums in einer entsprechend eingerichteten Hardware oder auch als Softwarebefehle, die in geeigneter Weise logisch programmiert sind.
-
Das oben genannte Computerprogrammprodukt kann beispielsweise bereitgestellt werden mit einem Datenträger, der den Computerprogrammcode enthält zur Ausführung zumindest einiger der Verfahrensschritte 601-605 entsprechend einigen Ausführungsbeispielen bei Ladung in einen oder mehrere Prozessoren der Steueranordnung 120. Bei dem Datenträger kann es sich beispielsweise um eine Festplatte, eine CD-ROM, einen Speicher-Stick, eine optische Speichereinrichtung, eine magnetische Speichereinrichtung oder irgendeine andere passende Einrichtung handeln, wie eine Platte oder ein Band, welches maschinenlesbare Daten stabil speichert. Das Computerprogrammprodukt kann weiterhin als Computerprogrammcode auf einem Server bereitgestellt und in die Steueranordnung 120 heruntergeladen werden, beispielsweise über das Internet oder über eine Intranet-Verbindung.
-
Die für die Beschreibung der in den Figuren dargestellten Ausführungsbeispiele verwendete Terminologie ist nicht als einschränkend zu verstehen hinsichtlich des beschriebenen Verfahrens 600, der Steueranordnung 120, des Computerprogramms, des Systems 700 und/oder des Fahrzeuges 100. Verschiedene Änderungen, Austauschmittel und/oder Abwandlungen können ausgeführt werden, ohne von den Ausführungsformen der Erfindung, wie sie in den beigefügten Ansprüchen definiert ist, abzuweichen. Auch können die hier beschriebenen unterschiedlichen Ausführungsbeispiele gemäß den 1-7 kombiniert werden und ohne Einschränkung können Teile ausgetauscht werden entsprechend anderen Ausführungsbeispielen, innerhalb des Umfanges der unabhängigen Patentansprüche.
-
Der hier verwendete Begriff „und/oder“ beinhaltet eine jegliche und alle Kombinationen von einer oder von mehreren der hierzu aufgelisteten Größen. Der Begriff „oder“, wie er hier verwendet wird, ist zu verstehen im Sinne eines mathematischen OR, d.h. als inklusive Beziehung, nicht im Sinne eines mathematisch ausschließlichen OR (XOR), es sei denn, anderes ist ausdrücklich festgestellt. Auch die Einzahl-Formen „ein“, „eine“ und „der, die, das“ sind zu verstehen als „zumindest ein ...“, enthaltend somit auch gegebenenfalls eine Mehrzahl von Größen der gleichen Art, es sei denn, anderes ist ausdrücklich festgestellt. Weiterhin sind die Begriffe „enthält“, „weist auf“, „enthaltend“ und/oder „aufweisend“ so zu verstehen, dass sie das Vorliegen der festgestellten Merkmale, Aktionen, Größen, Schritte, Operationen, Elemente und/oder Komponenten angeben, jedoch nicht ausschließen, dass ein weiteres oder weitere der genannten Merkmale, Aktionen, Größen, Schritte, Operationen, Elemente, Komponenten und/oder Gruppen davon gegeben sind. Eine einzige Einheit, wie beispielsweise ein Prozessor, kann Funktionen mehrerer der in den Ansprüchen genannten Merkmale erfüllen. Der bloße Umstand, dass bestimmte Merkmale in voneinander verschiedenen abhängigen Ansprüchen angegeben sind, bedeutet nicht, dass eine Kombination dieser Merkmale nicht vorteilhaft einsetzbar wäre. Ein Computerprogramm kann abgespeichert werden/verteilt werden auf einem geeigneten Medium, wie einem optischen Speichermedium oder einem Festkörpermedium, welches zusammen ausgeliefert wird als Teil anderer Hardware, es kann jedoch auch verteilt werden in anderen Formen, wie beispielsweise über das Internet oder über andere verdrahtete oder drahtlose Kommunikationssysteme.
-
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 Patentliteratur
-
- WO 2018091373 [0006]
- WO 2017214581 [0008]
- US 20180164822 [0010]