DE102018103916A1 - Kooperative Fahrzeugnavigation - Google Patents

Kooperative Fahrzeugnavigation Download PDF

Info

Publication number
DE102018103916A1
DE102018103916A1 DE102018103916.6A DE102018103916A DE102018103916A1 DE 102018103916 A1 DE102018103916 A1 DE 102018103916A1 DE 102018103916 A DE102018103916 A DE 102018103916A DE 102018103916 A1 DE102018103916 A1 DE 102018103916A1
Authority
DE
Germany
Prior art keywords
vehicle
computer
speed
course
programmed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102018103916.6A
Other languages
English (en)
Inventor
Jan Bremkens
Joseph Park
Lodewijk Wijffels
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102018103916A1 publication Critical patent/DE102018103916A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18163Lane change; Overtaking manoeuvres
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • B60W30/0956Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0289Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling with means for avoiding collisions between vehicles
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0965Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages responding to signals from another vehicle, e.g. emergency vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/09Arrangements for giving variable traffic instructions
    • G08G1/0962Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
    • G08G1/0968Systems involving transmission of navigation instructions to the vehicle
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/161Decentralised systems, e.g. inter-vehicle communication
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/161Decentralised systems, e.g. inter-vehicle communication
    • G08G1/163Decentralised systems, e.g. inter-vehicle communication involving continuous checking
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/16Anti-collision systems
    • G08G1/167Driving aids for lane monitoring, lane changing, e.g. blind spot detection
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/20Direction indicator values
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/404Characteristics
    • B60W2554/4041Position
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/80Spatial relation or speed relative to objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/80Spatial relation or speed relative to objects
    • B60W2554/804Relative longitudinal speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • B60W2556/50External transmission of data to or from the vehicle of positioning data, e.g. GPS [Global Positioning System] data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • B60W2556/65Data transmitted between vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2754/00Output or target parameters relating to objects
    • B60W2754/10Spatial relation or speed relative to objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2754/00Output or target parameters relating to objects
    • B60W2754/10Spatial relation or speed relative to objects
    • B60W2754/30Longitudinal distance
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2756/00Output or target parameters relating to data
    • B60W2756/10Involving external transmission of data to or from the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Abstract

Ein Computer ist dazu programmiert, einen Kurs eines ersten Fahrzeugs zu bestimmen. Der Computer ist dazu programmiert, zu bestimmen, ob ein zweites Fahrzeug den Kurs versperrt. Auf eine solche Bestimmung hin sendet der Computer eine Anweisung an das zweite Fahrzeug, die Geschwindigkeit des zweiten Fahrzeugs anzupassen. Der Computer ist dazu programmiert, die Anweisung auf Grundlage des bestimmten Kurses des ersten Fahrzeugs, einer Position des zweiten Fahrzeugs und einer Geschwindigkeit des zweiten Fahrzeugs zu bestimmen.

Description

  • STAND DER TECHNIK
  • Wenn ein Fahrzeug die Fahrspur wechselt, besteht oftmals ein Risiko einer Kollision mit einem Objekt, bspw. einem anderen Fahrzeug. Ein Fahrer des Fahrzeugs kann einen Spurwechsel veranlassen, ohne ein Kollisionsrisiko zu erkennen oder zu versuchen, dieses zu umgehen, bspw., wenn sich ein anderes Fahrzeug in einem toten Winkel des Fahrers befindet. In einem anderen Beispiel kann eine Vielzahl von Spurwechseln notwendig sein, bspw., wenn ein Fahrzeug beabsichtigt, von einer mehrspurigen Schnellstraße abzufahren, was im Vergleich zu einem einzelnen Spurwechsel ein Kollisionsrisiko erhöhen kann. Dichter Verkehr, bspw., wenn eine Vielzahl von Spurwechseln notwendig ist, kann sogar zu einem Abkommen von einer beabsichtigten Route, bspw. zum Verpassen einer Schnellstraßenausfahrt, führen.
  • Figurenliste
    • 1 ist ein Schema, das ein beispielhaftes Fahrzeugsystem darstellt.
    • 2A ist ein Schema, das ein Beispiel einer Vielzahl von Fahrzeugen zeigt, die auf einer Vielzahl von Spuren fahren.
    • 2B-2D sind Schemata, die unterschiedliche Spurwechselszenarios für ein Fahrzeug nach 2A zeigen.
    • 3 ist ein beispielhafter Graph, der eine Änderung einer Fahrzeuggeschwindigkeit im Zeitverlauf zeigt.
    • Die 4A-4C sind Ablaufdiagramme für einen beispielhaften Prozess, bei dem ein führendes Fahrzeug an ein anderes Fahrzeug Anweisungen zum Freigeben einer Bahn sendet.
    • 5 ist ein Ablaufdiagramm eines beispielhaften Prozesses, bei dem ein Client-Fahrzeug Anweisungen von einem Host-Fahrzeug empfängt.
  • DETAILLIERTE BESCHREIBUNG
  • EINLEITUNG
  • Vorliegend wird ein Computer 110 eines Fahrzeugs 100 offenbart, der dazu programmiert ist, einen Kurs 230 eines ersten Fahrzeugs 100 zu bestimmen, bspw., um von einer Spur 210a auf eine Spur 210c zu wechseln. Der Computer 110 ist dazu programmiert, zu bestimmen, ob ein zweites Fahrzeug 101 den bestimmten Kurs 230 des ersten Fahrzeugs 100 versperrt. Auf eine solche Bestimmung hin sendet der Computer 110 eine Anweisung an das zweite Fahrzeug 101, die Geschwindigkeit des zweiten Fahrzeugs 101 anzupassen. Der Computer 110 ist dazu programmiert, die Anweisung auf Grundlage des bestimmten Kurses 230 des ersten Fahrzeugs 100, einer Position des zweiten Fahrzeugs 101 und einer Geschwindigkeit des zweiten Fahrzeugs 101 zu bestimmen.
  • Der Computer 110 kann dazu programmiert sein, die Anweisung zu senden, wobei die Anweisung ferner auf einer Geschwindigkeit des ersten Fahrzeugs 100 und einer Position des ersten Fahrzeugs 100 beruht.
  • Der Computer 110 kann ferner dazu programmiert sein, die Geschwindigkeit des zweiten Fahrzeugs 101 und die Position des zweiten Fahrzeugs 101 auf Grundlage von Daten, die er von Sensoren des ersten Fahrzeugs 100 empfängt, zu bestimmen.
  • Der Computer 110 kann dazu programmiert sein, den Kurs 230 des ersten Fahrzeugs 100 zu bestimmen, wobei der bestimmte Kurs 230 einen seitlichen Wechsel der Spur 210 beinhaltet.
  • Der Computer 110 kann dazu programmiert sein, den Kurs 230 zu bestimmen, wobei der bestimmte Kurs 230 des ersten Fahrzeugs 100 eine Krümmung beinhaltet, die mindestens eine Markierung 220 der Spur 210 der Straße 250 schneidet.
  • Der Computer 110 kann dazu programmiert sein, den Kurs 230 auf Grundlage einer vorgegebenen Route zu bestimmen.
  • Der Computer 110 kann dazu programmiert sein, den Kurs 230 auf Grundlage eines Aktivierens eines Fahrtrichtungssignals des ersten Fahrzeugs 100 zu bestimmen.
  • Der Computer 110 kann dazu programmiert sein, bei Empfang einer Ablehnung vom zweiten Fahrzeug 101, seine Geschwindigkeit zu modifizieren, einen zweiten Kurs 230 des ersten Fahrzeugs 100 zu bestimmen. Der Computer 110 kann dazu programmiert sein, ein drittes Fahrzeug 101 zu identifizieren, das den zweiten Kurs 230 versperrt, und eine zweite Anweisung an das dritte Fahrzeug 101 zu senden, auf Grundlage des zweiten Kurses 230, einer Position des zweiten Fahrzeugs 101 und einer Geschwindigkeit des zweiten Fahrzeugs 101 eine Geschwindigkeit des dritten Fahrzeugs 101 anzupassen.
  • Der Computer 110 kann dazu programmiert sein, eine Vielzahl von Anweisungen an eine Vielzahl zweiter Fahrzeuge 101 zu senden, wobei jede der Anweisungen mit einem aus der Vielzahl zweiter Fahrzeuge 101 verbunden ist und zumindest auf einer Geschwindigkeit und einer Position des jeweiligen zweiten Fahrzeugs 101 beruht.
  • Vorliegend wird ein Verfahren offenbart, das ein Bestimmen eines Kurses 230 einer Bewegung eines ersten Fahrzeugs 100 umfasst. Das Verfahren kann ferner beinhalten: wenn bestimmt wird, dass ein zweites Fahrzeug 101 den bestimmten Kurs 230 versperrt, Senden einer Anweisung an das zweite Fahrzeug 101, auf Grundlage des bestimmten Kurses 230 des ersten Fahrzeugs 100, einer Position des zweiten Fahrzeugs 101 und einer Geschwindigkeit des zweiten Fahrzeugs 101 eine Geschwindigkeit des zweiten Fahrzeugs 101 anzupassen. Das Verfahren kann ferner beinhalten: Empfangen, im zweiten Fahrzeug 101, der Anweisung, die Geschwindigkeit des zweiten Fahrzeugs 101 auf eine Sollgeschwindigkeit anzupassen, und Umsetzen der empfangenen Anweisung durch Ansteuern von Operationen des zweiten Fahrzeugs 101 zumindest teilweise auf Grundlage der empfangenen Anweisung.
  • Das Verfahren kann umfassen: Bestimmen eines Kurses 230 eines ersten Fahrzeugs 100 und, wenn bestimmt wird, dass ein zweites Fahrzeug 101 den bestimmten Kurs 230 versperrt, Senden einer Anweisung an das zweite Fahrzeug 101, auf Grundlage des bestimmten Kurses 230 des ersten Fahrzeugs 100, einer Position des zweiten Fahrzeugs 101 und einer Geschwindigkeit des zweiten Fahrzeugs 101, die Geschwindigkeit des zweiten Fahrzeugs 101 anzupassen.
  • Das Verfahren kann ferner ein Senden der Anweisung umfassen, die auf einer Geschwindigkeit des ersten Fahrzeugs 100 und einer Position des ersten Fahrzeugs 100 beruht.
  • Das Verfahren kann ferner ein Bestimmen der Geschwindigkeit des zweiten Fahrzeugs 101 und der Position des zweiten Fahrzeugs 101 auf Grundlage von Daten, die von Sensoren des ersten Fahrzeugs 100 empfangen werden, umfassen.
  • Das Verfahren kann ein Bestimmen des Kurses 230 des ersten Fahrzeugs 100 umfassen, wobei der bestimmte Kurs 230 des ersten Fahrzeugs 100 einen seitlichen Spurwechsel beinhaltet.
  • Das Verfahren kann ein Bestimmen des Kurses 230 des ersten Fahrzeugs 100 umfassen, wobei der bestimmte Kurs 230 des ersten Fahrzeugs 100 eine Krümmung beinhaltet, die mindestens eine Spurmarkierung 220 der Straße 250 schneidet.
  • Das Verfahren kann ferner ein Bestimmen des Kurses 230 auf Grundlage einer vorgegebenen Route umfassen.
  • Das Verfahren kann ferner ein Bestimmen des Kurses 230 auf Grundlage eines Aktivierens eines Fahrtrichtungssignals des ersten Fahrzeugs 100 umfassen.
  • Das Verfahren kann ferner umfassen: bei Empfang einer Ablehnung vom zweiten Fahrzeug 101, seine Geschwindigkeit zu modifizieren - Bestimmen eines zweiten Kurses 230 des ersten Fahrzeugs 100, Identifizieren eines dritten Fahrzeugs 101, das den zweiten Kurs 230 versperrt, und Senden einer zweiten Anweisung an das dritte Fahrzeug 101, auf Grundlage des zweiten Kurses 230, einer Position des zweiten Fahrzeugs 101 und einer Geschwindigkeit des zweiten Fahrzeugs 101 eine Geschwindigkeit des dritten Fahrzeugs 101 anzupassen.
  • Das Verfahren kann ferner umfassen: Senden einer Vielzahl von Anweisungen an eine Vielzahl zweiter Fahrzeuge 101, wobei jede der Anweisungen mit einem der zweiten Fahrzeuge 101 verbunden ist und zumindest auf einer Geschwindigkeit und einer Position des jeweiligen zweiten Fahrzeugs 101 beruht.
  • Das Verfahren kann ferner umfassen: Empfangen, im zweiten Fahrzeug 101, der Anweisung vom ersten Fahrzeug 100, Bestimmen, im zweiten Fahrzeug 101, ob die empfangene Anweisung zu akzeptieren ist, auf Grundlage zumindest einer von einer Sollgeschwindigkeit des zweiten Fahrzeugs 101 und einer Zeit bis zur Kollision des ersten Fahrzeugs 100. Das Verfahren kann ferner umfassen: wenn bestimmt wird, dass die empfangene Anweisung akzeptabel ist - Ansteuern eines Aktors des zweiten Fahrzeugs 101 auf Grundlage der empfangenen Anweisung.
  • Der Einfachheit halber kann das Fahrzeug 100 hier als erstes oder Host-Fahrzeug 100 bezeichnet werden, und das zweite Fahrzeug 101 kann als zweites oder Client-Fahrzeug 101 bezeichnet werden. 1 stellt Elemente dar, die im Host-Fahrzeug 100 beinhaltet sind. Dabei können ein Host-Fahrzeug 100 und ein Client-Fahrzeug 101 ähnliche Elemente aufweisen, und um Wiederholungen zu vermeiden, wird kein einzelnes Blockdiagramm des Fahrzeugs 101 bereitgestellt, es versteht sich jedoch, dass die in 1 gezeigten Elemente auch in einem Fahrzeug 101 beinhaltet sein können, darunter ein Computer 110, Aktoren 120, Sensoren 130, eine Mensch-Maschine-Schnittstelle (Human Machine Interface - HMI) 140 und/oder eine drahtlose Kommunikationsschnittstelle 160, die nachfolgend jeweils ausführlicher erläutert werden.
  • BEISPIELHAFTE SYSTEMELEMENTE
  • 1 stellt ein Fahrzeug 100 dar. Das Fahrzeug 100 kann auf viele verschiedene Weisen angetrieben werden, z. B. mithilfe eines Elektromotors und/oder Verbrennungsmotors. Das Fahrzeug 100, 101 ist ein Landfahrzeug wie etwa ein Auto, Lastwagen usw. Zusätzlich oder alternativ kann zu dem Fahrzeug 100, 101 ein Zweirad, bspw. ein Motorrad, zählen. Ein Fahrzeug 100, 101 kann einen Computer 110, Aktor(en) 120, Sensor(en) 130, eine HMI 140 und eine drahtlose Kommunikationsschnittstelle 160 beinhalten. Ein Fahrzeug 100, 101 weist einen geometrischen Mittelpunkt 150 auf, z. B. Punkte, an denen sich jeweilige Mittellinien in longitudinaler und lateraler Richtung des Fahrzeugs 100 schneiden.
  • Der Computer 110 beinhaltet einen Prozessor und einen Speicher, wie sie bekannt sind. Der Speicher beinhaltet eine oder mehrere Arten computerlesbarer Medien und speichert Anweisungen, die durch den Computer 110 ausführbar sind, um unterschiedliche Operationen durchzuführen, einschließlich solcher, die hier offenbart werden.
  • Der Computer 110 kann das jeweilige Fahrzeug 100 in einem autonomen, einem halbautonomen Modus oder einem nicht autonomen (oder manuellen) Modus betreiben. Für die Zwecke dieser Offenbarung wird ein autonomer Modus als einer definiert, in dem jedes von Antrieb, Bremsen und Lenkung des Fahrzeugs 100 durch den Computer 110 gesteuert wird; in einem halbautonomen Modus steuert der Computer 110 eines oder zwei von Antrieb, Bremsen und Lenkung der Fahrzeuge 100; in einem nicht autonomen Modus steuert ein menschlicher Bediener jedes von Antrieb, Bremsen und Lenkung des Fahrzeugs 100.
  • Der Computer 110 kann eine Programmierung beinhalten, um eines oder mehrere von Bremsen, Antrieb (z. B. Steuerung der Beschleunigung in dem Fahrzeug durch Steuern von einem oder mehreren von einem Verbrennungsmotor, Elektromotor, Hybridmotor usw.), Lenkung, Klimatisierung, Innen- und/oder Außenbeleuchtung usw. eines Landfahrzeugs zu bedienen, sowie um zu bestimmen, ob und wann der Computer 110 im Gegensatz zu einem menschlichen Bediener derartige Operationen steuern soll. Zusätzlich kann der Computer 110 dazu programmiert sein, zu bestimmen, ob und wann ein menschlicher Bediener derartige Operationen steuern soll.
  • Der Computer 110 kann mehr als einen Prozessor, z. B. Steuerungen oder dergleichen, die in dem Fahrzeug zum Überwachen und/oder Steuern unterschiedlicher Fahrzeugsteuerungen, z. B. einer Antriebsstrangsteuerung, einer Bremssteuerung, einer Lenkungssteuerung usw., beinhaltet sind, beinhalten oder kommunikativ daran gekoppelt sein, z. B. über einen Kommunikationsbus des Fahrzeugs 100, wie er nachfolgend ausführlicher beschrieben wird. Der Computer 110 ist im Allgemeinen zur Kommunikation an einem Fahrzeugkommunikationsnetzwerk angeordnet, wie etwa einem Bus in dem Fahrzeug, wie beispielsweise einem Controller Area Network (CAN) oder dergleichen, und/oder drahtgebundenen und/oder drahtlosen Mechanismen.
  • Über das Netzwerk des Fahrzeugs 100 kann der Computer 110 Nachrichten an unterschiedliche Vorrichtungen in dem Fahrzeug übertragen und/oder Nachrichten von den unterschiedlichen Vorrichtungen, z. B. einem Aktor 120, einer HMI 140 usw., empfangen. Alternativ oder zusätzlich kann in den Fällen, in denen der Computer 110 tatsächlich eine Vielzahl von Vorrichtungen umfasst, das Kommunikationsnetzwerk des Fahrzeugs 100 für Kommunikationen zwischen Vorrichtungen verwendet werden, die in dieser Offenbarung als der Computer 110 dargestellt sind. Ferner können, wie nachstehend erwähnt, unterschiedliche Steuerungen und/oder Sensoren dem Computer 110 Daten über das Fahrzeugkommunikationsnetzwerk bereitstellen.
  • Zusätzlich dazu kann der Computer 110 zum Kommunizieren mit anderen Fahrzeugen 101 mittels einer drahtlosen Fahrzeug-zu-Fahrzeug-(Vehicle-to-Vehicle - V-to-V)-Kommunikationsschnittstelle 160, z. B. über ein Fahrzeug-zu-FahrzeugKommunikationsnetzwerk, konfiguriert sein. Das Fahrzeug-zu-FahrzeugKommunikationsnetzwerk stellt einen oder mehrere Mechanismen dar, durch welche die Computer 110 der Fahrzeugen100 mit anderen Fahrzeugen 101 kommunizieren können, und es kann einer oder mehrere von drahtlosen Kommunikationsmechanismen sein, einschließlich einer beliebigen gewünschten Kombination aus drahtlosen (z. B. Mobilfunk, drahtlos, Satellit, Mikrowelle und Funkfrequenz) Kommunikationsmechanismen und einer beliebigen gewünschten Netzwerktopologie (oder von Topologien, wenn eine Vielzahl von Kommunikationsmechanismen verwendet werden). Zu beispielhaften Fahrzeug-zu-Fahrzeug-Kommunikationsnetzwerken zählen zellulare, Bluetooth-, IEEE 802.11-, dedizierte Nahbereichskommunikations(Dedicated Short Range Communications - DSRC)- und/oder Weitverkehrsnetzwerke (Wide Area Networks - WAN), einschließlich des Internets, die Datenkommunikationsdienste bereitstellen.
  • Die Aktoren 120 des Fahrzeugs 100 sind über Schaltungen, Chips oder andere elektronische und/oder mechanische Komponenten umgesetzt, die unterschiedliche Fahrzeugteilsysteme gemäß geeigneten Steuersignalen, wie bekannt, ansteuern können. Die Aktoren 120 können verwendet werden, um Bremsen, Beschleunigen und Lenken der Fahrzeuge 100 zu steuern. Beispielsweise kann der Computer 110 in einem halbautonomen Modus einen Lenkaktor 120 ansteuern, um eine Fahrzeugspur zu wechseln, wenn eine Benutzeranforderung von einem menschlichen Bediener empfangen wird, die Spur zu wechseln (siehe 2).
  • Zu den Sensoren 130 kann eine Vielzahl von Vorrichtungen zählen, die dem Computer 110 bekanntermaßen Daten bereitstellen. Beispielsweise können einer oder mehrere Sensoren der Art Light Detection And Ranging (LIDAR) 130 zu den Sensoren 130 zählen, die auf dem Fahrzeug 100 angeordnet sind und relative Positionen, Größen und Formen der zweiten Fahrzeuge 101 bereitstellen, welche sich in der Umgebung des Fahrzeugs 100 befinden, einschließlich der zweiten Fahrzeuge 101, die neben oder hinter dem Fahrzeug 100 fahren (siehe 2A-2C). Um ein anderes Beispiel zu nennen, können ein oder mehrere Radarsensoren 130, die an Stoßfängern des Fahrzeugs 100 befestigt sind, Positionen der zweiten Fahrzeuge 101, die vor, neben und/oder hinter dem Fahrzeug 100 fahren, im Verhältnis zur Position des Fahrzeugs 100 bereitstellen. Alternativ oder zusätzlich können zu den Sensoren 130 ferner Kamerasensor(en) 130 zählen, die bspw. nach vorn gerichtet sind, zur Seite gerichtet sind usw., und die Bilder von einem Umgebungsbereich des Fahrzeugs 100 bereitstellen. Beispielsweise kann der Computer 110 dazu programmiert sein, Bilddaten von dem bzw. den Kamerasensor(en) 130 zu empfangen und Bildverarbeitungstechniken zu implementieren, um Spurmarkierungen 220, Spur(en) 210a, 210b, 210c und andere Objekte wie etwa Fahrzeuge 101 zu erkennen.
  • Der Computer 110 kann ferner dazu programmiert sein, eine aktuelle Fahrspur 210a des Fahrzeugs 100 zu bestimmen, bspw. auf Grundlage von Koordinaten eines globalen Positionsbestimmungssystems (GPS) und/oder erkannter Spurmarkierungen 220. Basierend auf von den Sensoren 130 empfangenen Daten kann der Computer 110 eine relative Distanz, Geschwindigkeit usw. anderer Fahrzeuge 101 im Verhältnis zu dem Fahrzeug 100 bestimmen. Um ein anderes Beispiel zu nennen, kann der Computer 110 dazu programmiert sein, Daten einschließlich der relativen Geschwindigkeit, Positionskoordinaten und/oder der Richtung anderer Fahrzeuge 101 über das drahtlose Kommunikationsnetz zu empfangen. Beispielsweise kann der Computer 110 solche Daten von GPS-Sensoren empfangen, die in anderen Fahrzeugen 101 angeordnet sind und geographische Koordinaten, die Bewegungsrichtung, Geschwindigkeit usw. der zweiten Fahrzeuge 101 bereitstellen.
  • Die HMI 140 kann dazu konfiguriert sein, Eingaben von einem menschlichen Bediener während des Betriebs des Fahrzeugs 100 zu empfangen. Darüber hinaus kann eine HMI 140 dazu konfiguriert sein, dem Benutzer Informationen anzuzeigen, bspw. über visuelle und/oder akustische Ausgaben. Daher kann sich eine HMI 140 in der Fahrgastzelle des Fahrzeugs 100 befinden und einen oder mehrere Mechanismen für Benutzereingaben aufweisen. Beispielsweise kann die HMI 140 einen Fahrtrichtungssignalschalter aufweisen. In einem beispielhaften nichtautonomen Modus kann der Computer 110 eine Anforderung für einen Wechsel der Spur 210 empfangen, bspw. ein Fahrtrichtungssignal nach links, um auf eine Absicht des Benutzers des Fahrzeugs 100 hinzuweisen, von einer aktuellen Spur 210a auf eine Zielspur 210b zu wechseln.
  • In einem beispielhaften halbautonomen Modus kann der Computer 110 dazu programmiert sein, den Spurwechsel bei Empfang einer Eingabe vom Benutzer, bspw. über den Fahrtrichtungssignalschalter, einen berührungsempfindlichen Bildschirm usw., durchzuführen. Anders formuliert, kann der Computer 110 dazu programmiert sein, einen Spurwechsel nur dann auszuführen, wenn ein Benutzer des Fahrzeugs 100 einen Wechsel der aktuellen Spur 210a bestätigt.
  • Der Computer 110 kann dazu programmiert sein, ein Fahrtziel, bspw. Positionskoordinaten, über die HMI 140 zu empfangen und eine Route von einer aktuellen Position des Fahrzeugs 100 zum empfangenen Fahrtziel zu bestimmen. Der Computer 110 kann dazu programmiert sein, das Fahrzeug 100 von der aktuellen Position zum empfangenen Fahrtziel auf Grundlage der empfangenen Route in einem autonomen Modus zu betreiben.
  • Beispielsweise kann der Computer 110 dazu programmiert sein, zu bestimmen, dass ein Spurwechsel notwendig ist, um von einer Fernstraße abzufahren und der bestimmten Route zu folgen. In einem anderen Beispiel kann der Benutzer des Fahrzeugs 100 einen Spurwechsel bewirken, während das Fahrzeug in einem nichtautonomen Modus betrieben wird, und zwar auf Grundlage von Daten, die an der HMI 140 des Fahrzeugs 100 ausgegeben werden, bspw. anhand einer visuellen und/oder akustischen Anforderung, nach rechts oder links zu fahren. In einem anderen Beispiel kann der Computer 110 dazu programmiert sein, zu bestimmen, dass ein Spurwechsel notwendig ist, um eine Kollision des Host-Fahrzeugs 100 mit einem Hindernis auf der aktuellen Spur 210 des Host-Fahrzeugs 100 zu verhüten. Beispielsweise kann der Computer 110 dazu programmiert sein, zu bestimmen, dass ein Spurwechsel notwendig ist, wenn bestimmt wird, dass eine Zeit bis zur Kollision mit einem Hindernis auf der aktuellen Spur 210 des Host-Fahrzeugs 100 kürzer ist als eine Zeit bis zum Stoppen des Fahrzeugs 100 durch Bremsen. In diesem Beispiel könnte der Computer 110 dazu programmiert sein, die Zeit bis zur Kollision auf Grundlage einer Geschwindigkeit und Beschleunigung des Host-Fahrzeugs 100 und einer Distanz zwischen dem Host-Fahrzeug 100 und dem Hindernis zu bestimmen. Der Computer 110 kann dazu programmiert sein, eine Zeit bis zum Stoppen des Host-Fahrzeugs 100 auf Grundlage der Geschwindigkeit und Beschleunigung des Host-Fahrzeugs 100 und einer vorgegebenen maximalen Abbremsung, welche durch den Bremsaktor 120 des Fahrzeugs 100 bereitgestellt wird, zu bestimmen.
  • Der Computer 110 des Fahrzeugs 100, unter Bezug auf Figur 2A-2C, kann dazu programmiert sein, bspw. einen Kurs 230 des ersten Fahrzeugs 100 zu bestimmen. Wenn bestimmt wird, dass bspw. ein zweites Fahrzeug 101a den bestimmten Kurs 230 versperrt, kann der Computer 110 eine Anweisung an das zweite Fahrzeug 101a senden, seine Geschwindigkeit anzupassen. Der Computer kann 110 ist dazu programmiert sein, die Anweisung auf Grundlage des bestimmten Kurses 230 des ersten Fahrzeugs 100, einer Position des zweiten Fahrzeugs 101a und/oder einer Geschwindigkeit des zweiten Fahrzeugs 101a zu bestimmen.
  • Im Kontext der vorliegenden Offenbarung bezeichnet ein Kurs, bspw. ein Kurs 230, 230a, 230b, 240, 240a, 240b, 240c, eine erwartete oder geplante Bewegungsbahn eines Fahrzeugs 100, 101, deren Ausgangspunkt eine aktuelle Position des Fahrzeugs 100, 101 ist und die sich zumindest über eine vorgegebene Distanz, bspw. 100 Meter, vor dem Fahrzeug 100, 101 erstreckt. Der Computer 110 kann dazu programmiert sein, Aktoren 120 des Fahrzeugs 100, 101 anzusteuern, um das Fahrzeug 100, 101 auf dem Kurs zu navigieren, bspw. durch Beschleunigen, Bremsen, Lenken. Die jeweiligen Kurse 230, 240 der Fahrzeuge 100, 101 können Kurven und/oder Geraden auf einer Bodenfläche, bspw. einer Straße 250, beinhalten.
  • Um ein anderes Beispiel zu nennen, kann ein Kurs 240a eines Fahrzeugs 101a, das sich auf einer Spur 210b bewegt, einer Krümmung einer Spur 210b folgen. Eine Bewegung eines Fahrzeugs 100, 101 auf einem Kurs kann eine Längs- und eine Seitenbewegung einschließen. Eine Längsbewegung kann eine Bewegung bezeichnen, die parallel zu einer geraden Kante einer Spur 210 verläuft oder parallel zu einer Tangente an einem am nächsten liegenden Punkt der Kante der Spur 210, an dem die Kante gekrümmt ist, verläuft. Eine Seitenbewegung verläuft senkrecht zu einer Längsbewegung. Eine Straße 250 kann unterschiedliche Anzahlen von Spuren 210 aufweisen. Ein Spurwechsel kann eine Seitenbewegung eines Fahrzeugs 100, 101 beinhalten.
  • Ein Kurs 230 kann einen Spurwechsel beinhalten, der dadurch bewirkt wird, dass eine Bewegung des Fahrzeugs 100 eine seitliche Komponente aufweist. Beispielsweise kann der Computer 110 dazu programmiert sein, den Kurs 230 auf Grundlage einer vorgegebenen Route des Fahrzeugs 100 zu bestimmen, die ein Abfahren von einer aktuellen mehrspurigen Straße 250 über eine Ausfahrt, die über eine Spur 210c zugänglich ist, beinhaltet. Somit kann der Computer 110 dazu programmiert sein, eine Vielzahl von Spurwechseln zu bewirken, um das Fahrzeug 100 von der Spur 210a auf die Spur 210c zu befördern. Somit kann ein Kurs 230 eine oder mehrere Spurmarkierungen 220 schneiden und bspw. in einer Zielspur 210c enden. Beispielsweise, wie in 2A gezeigt, schneidet der Kurs 230 zwei Spurmarkierungen, damit das Fahrzeug 100 von der Spur 210a auf die Zielspur 210c befördert wird.
  • Eine Bewegung des Fahrzeugs 100 auf dem Kurs 230, unter Bezug auf die Figuren 2A-2B, kann einen Zusammenstoß mit dem zweiten Fahrzeug 101b verursachen. 2B zeigt, dass, wenn das Fahrzeug 100 auf dem Kurs 230 beruhend auf die Spur 210b wechselt und an einer Stelle positioniert wird, die anhand eines angedeuteten Fahrzeugs 100' dargestellt ist, die Fahrzeuge 100, 101b zusammenstoßen können. Daher kann der Computer 110 des Host-Fahrzeugs 100 dazu programmiert sein, zu bestimmen, dass das zweite Fahrzeug 101b den Kurs 230 versperrt. Der Computer 110 kann dazu programmiert sein, eine Anweisung zur Geschwindigkeitsverringerung an das zweite Fahrzeug 101b zu senden. Der Computer 110 des zweiten Fahrzeugs 101b kann dazu programmiert sein, die Geschwindigkeit des zweiten Fahrzeugs 101b auf Grundlage der empfangenen Anweisung zu reduzieren. Die Verringerung der Geschwindigkeit des zweiten Fahrzeugs 101b kann verhindern, dass das zweite Fahrzeug 101b den Kurs 230 versperrt.
  • Als ein anderes Beispiel zeigt Figur 2C, dass, wenn das Fahrzeug 100 auf dem Kurs 230 beruhend von der Spur 210a auf die Spur 210b wechselt und an einer Stelle positioniert wird, die anhand des Fahrzeugs 100' dargestellt ist, die Fahrzeuge 100, 101a zusammenstoßen können. Beispielsweise kann das Fahrzeug 100 mit einem hinteren Ende und/oder einer Seite des Fahrzeugs 101a zusammenstoßen. Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, eine Anweisung zur Geschwindigkeitserhöhung an das zweite Fahrzeug 101a zu senden. Der Computer 110 des zweiten Fahrzeugs 101a kann dazu programmiert sein, die Geschwindigkeit des zweiten Fahrzeugs 101a auf Grundlage der empfangenen Anweisung zu erhöhen.
  • Der Computer 110 des Host-Fahrzeugs 100 kann dazu programmiert sein, die Anweisung auf Grundlage einer Geschwindigkeit und/oder Position des Host-Fahrzeugs 100, einer Geschwindigkeit und/oder Position der zweiten Fahrzeuge 101 wie etwa der Fahrzeuge 101a, 101b, 101c, die sich in der Nähe des Host-Fahrzeugs 100 befinden, wie unten erläutert, zu bestimmen. Im Kontext der vorliegenden Offenbarung bezeichnet „in der Nähe“ einen Bereich innerhalb einer vorgegebenen Erkennungsdistanz des Host-Fahrzeugs 100. Die vorgegebene Erkennungsdistanz kann konstant sein, bspw. 100 Meter, oder sie kann von einer maximalen zulässigen Geschwindigkeit der Fahrzeuge 100, 101 auf einer aktuellen Position des Host-Fahrzeugs 100 abhängen. Beispielsweise kann die vorgegebene Erkennungsdistanz auf einer Straße 250 mit einer Geschwindigkeitsbegrenzung von 130 km/h 100 Meter betragen, wohingegen eine vorgegebene Distanz auf einer Straße 250 mit einer Geschwindigkeitsbegrenzung von 30 km/h 25 Meter betragen kann.
  • In einem Beispiel ist der Computer 110 des Fahrzeugs 100 dazu programmiert, die Geschwindigkeit und/oder Position der zweiten Fahrzeuge 101 in der Nähe des Host-Fahrzeugs 100 auf Grundlage von Daten zu bestimmen, die er von den Sensoren 130 des Fahrzeugs 100 wie etwa einem LIDAR-Sensor 130 empfängt. Zusätzlich oder alternativ kann der Computer 110 des Fahrzeugs 100 die Geschwindigkeit und/oder Position der zweiten Fahrzeuge 101 auf Grundlage von Daten bestimmen, die er über die drahtlose Kommunikationsschnittstelle 160 empfängt, bspw. von Sensoren 130 der zweiten Fahrzeuge 101.
  • Wie in 2D gezeigt, kann das Fahrzeug 100, das sich auf dem Kurs 230 bewegt, auf eine anhand des Fahrzeugs 100' gezeigte Position in die zweite Spur 210b einfahren. Beim Einfahren des Fahrzeugs 100 in die Spur 210b kann das Fahrzeug 100 Distanzen d4, d5 von den zweiten Fahrzeugen 101a, 101b aufweisen. Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, die Anweisungen zum Erhöhen und/oder Reduzieren der Geschwindigkeit der zweiten Fahrzeuge 101a, 101b derart zu bestimmen, dass die Distanzen d4, d5 einen vorgegebenen Schwellenwert, bspw. 25 Meter, überschreiten. Beispielsweise kann der Computer 110 des Fahrzeugs 100 die Anweisungen zum Reduzieren der Geschwindigkeit des zweiten Fahrzeugs 101b derart bestimmen, dass die Distanz d3 den vorgegebenen Schwellenwert überschreitet.
  • Zusätzlich oder alternativ kann der Computer 110 des Fahrzeugs 100 die Geschwindigkeit des Fahrzeugs 100 derart erhöhen, dass die Distanz d3 den vorgegebenen Schwellenwert überschreitet, wenn das Fahrzeug 100 in die Spur 210b einfährt. Der Computer 110 des Fahrzeugs 100 kann die Anweisung auf Grundlage der Längsdistanzen d1, d2 des Fahrzeugs 100 und der zweiten Fahrzeuge 101 vor dem Einfahren in die zweite Spur 210b, der Geschwindigkeit und Position der Fahrzeuge 100, 101, des Kurses 230 usw. bestimmen.
  • Ferner kann der Computer 110 zusätzlich oder alternativ die Anweisung auf Grundlage einer geplanten Änderung bzw. geplanter Änderungen der Geschwindigkeit eines oder mehrerer zweiter Fahrzeuge 101 bestimmen. Wenn beispielsweise beim zweiten Fahrzeug 101b eine Erhöhung geplant ist (bspw. durch den Computer 110 des zweiten Fahrzeugs 101), dann kann eine Distanz d3 bei Einfahren des Fahrzeugs 100 in die zweite Spur 210b im Vergleich zu einem Szenario kürzer sein, in welchem beim zweiten Fahrzeug 101b keine Erhöhung geplant ist. In einem Beispiel kann der Computer 110 des Fahrzeugs 100 eine geplante Geschwindigkeit des zweiten Fahrzeugs 101 empfangen, bspw. über die drahtlose Kommunikationsschnittstelle 160. Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, den Schwellenwert auf Grundlage der Geschwindigkeit des Fahrzeugs 100 und/oder der zweiten Fahrzeuge 101 zu bestimmen, bspw. 50 Meter bei 100 km/h (Kilometern pro Stunde), 25 Meter bei 50 km/h usw.
  • Der Computer 110 kann dazu programmiert sein, eine Anweisung an das zweite Fahrzeug 101 zu senden, die Geschwindigkeit des zweiten Fahrzeugs 101 zu modifizieren, bspw. auf 20 km/h. Zusätzlich oder alternativ kann der Computer 110 des Fahrzeugs 100, wie in 3 gezeigt, dazu programmiert sein, eine Anweisung, die ein Sollgeschwindigkeitsschema beinhaltet, an das zweite Fahrzeug 101b zu senden, damit die Geschwindigkeit des zweiten Fahrzeugs 101b auf Grundlage des Musters geändert wird. Beispielsweise kann der Computer 110 eine Anweisung an das zweite Fahrzeug 101b senden, die angibt, dass die Geschwindigkeit des zweiten Fahrzeugs 101 zu Zeitpunkt t1 abzunehmen beginnen kann und zu Zeitpunkt t2 eine Geschwindigkeit v2 erreichen kann. Dies kann eine Vergrößerung des Raums (der Distanz) zwischen den Fahrzeugen 101a, 101b bewirken, wodurch der Kurs 230 freigegeben wird. Zusätzlich dazu kann der Computer 110 dazu programmiert sein, eine Anweisung, die ein Sollgeschwindigkeitsschema beinhaltet, an das zweite Fahrzeug 101b zu senden, die angibt, dass das zweite Fahrzeug 101b zu Zeitpunkt t3 die Geschwindigkeit v1 wieder aufnehmen kann. Zusätzlich dazu kann der Computer 110 dazu programmiert sein, eine oder mehrere Benachrichtigungen an andere zweite Fahrzeuge 101 in der Nähe des Host-Fahrzeugs 100 zu senden, die nicht angewiesen wurden, ihre Geschwindigkeit zu modifizieren, welche darauf hinweisen, dass die Geschwindigkeit eines oder mehrerer zweiter Fahrzeuge 101 auf Grundlage von Anweisungen modifiziert werden, die vom Computer 110 des Host-Fahrzeugs 100 übertragen wurden. Beispielsweise kann der Computer 110 Benachrichtigungen an die zweiten Fahrzeuge 101a, 101c senden, die darauf hinweisen, dass das Host-Fahrzeug 100 eine Modifikation der Geschwindigkeit des zweiten Fahrzeugs 101b angefordert hat. In einem anderen Beispiel kann der Computer 110 eine Nachricht übermitteln, die eine Benachrichtigung bezüglich des Modifizierens einer Geschwindigkeit eines ausgewählten zweiten Fahrzeugs 101b beinhaltet.
  • In einem anderen Beispiel kann der Computer 110 regelmäßig, bspw. alle 50 Millisekunden (ms), eine Anweisung senden, die eine Sollgeschwindigkeit auf Grundlage des in 3 gezeigten Graphen beinhaltet. In einem weiteren Beispiel kann der Computer 110 eine Liste mit Sollgeschwindigkeitswerten v1, v2, v1 senden, die mit den Zeitpunkten t1, t2, t3 verbunden sind und auf einem Sollgeschwindigkeitsschema beruhen. Der Computer 110 des zweiten Fahrzeugs 101 kann die Sollgeschwindigkeitswerte für Zeitpunkte zwischen den Zeitpunkten t1, t2, t3 auf Grundlage der empfangenen Liste der Sollgeschwindigkeiten v1, v2, v1 und Zeitpunkte t1, t2, t3 interpolieren. Ein Zeitintervall von t1 bis t3 kann als Kontrollperiode bezeichnet werden, d. h. ein Zeitintervall, in welchem eine Geschwindigkeit eines zweiten Fahrzeugs 101 durch einen Computer 110 des Host-Fahrzeugs 100 und nicht durch einen Computer 110 des zweiten Fahrzeugs 101 kontrolliert wird. Daher kann das zweite Fahrzeug 101 nach t3 die Kontrolle der Geschwindigkeit des zweiten Fahrzeugs 101 wieder aufnehmen. In einem Beispiel kann eine Kontrollperiode auf Grundlage einer Nachricht vom Host-Fahrzeug 100 an das zweite Fahrzeug 101 enden, die ein Ende der Kontrollperiode angibt.
  • Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, den Kurs 230 auf Grundlage einer vorgegebenen Route, bspw. auf Grundlage eines vorgegebenen Fahrtziels, zu bestimmen. Zusätzlich oder alternativ kann der Computer 110 dazu programmiert sein, einen Kurs auf Grundlage eines Aktivierens eines Fahrtrichtungssignals des Fahrzeugs 100, bspw. über die HMI 140, zu bestimmen. Beispielsweise kann der Computer 110 auf Grundlage des Aktivierens eines Fahrtrichtungssignals nach links einen Kurs 230 bestimmen. Der Computer 110 kann dazu programmiert sein, eine Vielzahl möglicher Kurse 230, 230a, 230b zu bestimmen und anschließend einen Kurs, bspw. den Kurs 230a, zu identifizieren, der nicht von einem zweiten Fahrzeug 101 versperrt wird. Konkret kann der Computer 110 dazu programmiert sein, eine Vielzahl von Kursen durch Ändern von Längs- und Seitenkomponenten der Geschwindigkeit des Fahrzeugs 100, die in einem Kurs beinhaltet sind, zu bestimmen.
  • Der Computer 110 kann ferner dazu programmiert sein, einen der möglichen Kurse auf Grundlage unterschiedlicher Auswahlkriterien auszuwählen. Anfangs ist der Computer 110 typischerweise dazu programmiert, jeglichen Kurs 230 zu ignorieren, der versperrt ist. Ferner kann der Computer 110 dazu programmiert sein, einen Kurs 230 auf Grundlage dessen auszuwählen, welcher Kurs 230 zum Modifizieren einer Geschwindigkeit einer geringsten Anzahl zweiter Fahrzeuge 101 führen kann und/oder welcher zu einer geringsten Geschwindigkeitsgesamtmodifikation für zweite Fahrzeuge 101 führt, wie weiter unten unter Bezug auf 4 beschrieben. Der Computer 110 navigiert das Fahrzeug 100 dann auf Grundlage des identifizierten Kurses 230a in einem autonomen, halbautonomen oder nichtautonomen Modus. In einem Beispiel kann das Bewegen des Fahrzeugs 100 auf einer Spur 230a eine seitliche Bewegung beinhalten, die es notwendig machen kann, die Geschwindigkeit des zweiten Fahrzeugs 101b zu reduzieren. In diesem Beispiel kann d3 5 Meter betragen, weshalb das zweite Fahrzeug 101b bei einer seitlichen Bewegung des Fahrzeugs 100 auf die Spur 210b angewiesen werden würde, seine Geschwindigkeit zu reduzieren, um zu gewährleisten, dass die Distanz d4 den Schwellenwert für die Distanz, bspw. 25 Meter, überschreitet (siehe 2D). Der Computer 110 könnte diese Geschwindigkeitsmodifikation des zweiten Fahrzeugs 101 beim Auswählen des Kurses 230a für das Host-Fahrzeug 100 heranziehen.
  • Der Computer 110, unter Bezug auf oben beschriebene Beispiele für Kurse 230, kann dazu programmiert sein, mögliche Kurse 230 auf Grundlage unterschiedlicher Eingaben zu bestimmen, darunter aktuelle Positionen der Fahrzeuge 100, 101, eine Planung der Geschwindigkeit der Fahrzeuge 101, eine Krümmung der Spur 210, die Zielspur 210 und/oder ein Zielort wie etwa eine Schnellstraßenausfahrt. Es können unterschiedliche Techniken verwendet werden, um mögliche Kurse auf Grundlage oben beschriebener Eingaben zu bestimmen. Um ein Beispiel zu nennen, kann der Computer 110 ein dynamisches Zustandsraummodell, wie sie bekannt sind, verwenden, um mögliche Kurse zu bestimmen. Ein Zustandsraummodell ist ein mathematisches Modell eines physikalischen Systems, bspw. der Fahrzeuge 100, 101, und beinhaltet einen Satz Eingaben, Ausgaben wie etwa mögliche Kurse und Zustandsvariablen. Zustandsvariablen können beispielsweise durch Differentialgleichungen erster Ordnung miteinander verknüpft sein.
  • Der Computer 110 kann dazu programmiert sein, mögliche Kurse zu bestimmen, indem er ein Zustandsraummodell der Fahrzeuge 100, 101, Kartendaten einschließlich der Krümmung der Straße 250 und der oben beschriebenen Eingaben empfängt. Zusätzlich kann der Computer 110 dazu programmiert sein, Anweisungen zu bestimmen, die das Fahrzeug 100 dazu veranlassen, sich auf jedem der bestimmten möglichen Kurse zu bewegen. Beispielsweise kann der Computer 110 dazu programmiert sein, Anweisungen zum Beschleunigen, Bremsen und/oder Lenken des Fahrzeugs 100 zu bestimmen, damit es auf einem jeweiligen Kurs bleibt.
  • Der Computer 110 kann dazu programmiert sein, mögliche Kurse auf Grundlage spezifischer Einschränkungen und/oder Optimierungskriterien zu bestimmen. Beispielsweise kann der Computer 110 auf einem Modell beruhend programmiert sein, das die Einschränkungen und/oder Optimierungskriterien implementiert. Zu möglichen Einschränkungen kann ein Schwellenwert für die maximale Zeit und/oder die maximale Distanz zum Vollenden eines Spurwechsels gehören. Zu den Einschränkungen kann eine maximale oder minimale zulässige Geschwindigkeit in der aktuellen Position gehören. Zu den Einschränkungen können physische Eigenschaften des Fahrzeugs 100, 101 wie etwa die maximal zulässige Längs-und/oder Seitenbeschleunigung gehören, die bspw. auf der Motorleistung des Fahrzeugs 100 beruhen. Zu den Einschränkungen kann eine maximal zulässige Abbremsung gehören, bspw. auf Grundlage von Eigenschaften der Bremsanlage. Zu den Einschränkungen können Umweltbedingungen, bspw. ein reduzierter Reibungskoeffizient der Oberfläche der Straße 250 aufgrund ungünstiger Witterung und/oder Beladungsbedingungen eines Fahrzeugs 100, 101 gehören. Zu möglichen Optimierungskriterien kann ein Minimieren spezifischer Parameter gehören, das durch Anweisungen des Host-Fahrzeugs 100 bewirkt wird. Zum Beispiel kann zu den Optimierungskriterien ein Minimieren der Beschleunigung und/oder Abbremsung zweiter Fahrzeuge 101 auf Grundlage der Anweisungen des zweiten Fahrzeugs 100 gehören. In einem anderen Beispiel kann für eine verbesserte Kraftstoffeffizienz ein Minimieren der Längsbeschleunigung zu den Optimierungskriterien gehören. In einem weiteren Beispiel kann für einen verbesserten Komfort ein Minimieren einer Seitenbeschleunigung, Abbremsung und/oder eines Schlingerns der Fahrzeuge 100, 101 zu den Optimierungskriterien gehören.
  • Um ein anderes Beispiel zu nennen, kann der Computer 110 dazu programmiert sein, eine Vielzahl von Anweisungen an eine Vielzahl zweiter Fahrzeuge 101 zu senden. Jede der Anweisungen kann mit einem der zweiten Fahrzeuge 101 verbunden sein und auf einer Geschwindigkeit und Position des jeweiligen zweiten Fahrzeugs 101 beruhen. Beispielsweise kann der Computer 110 Anweisungen an die zweiten Fahrzeuge 101b, 101c senden, die Geschwindigkeit zu verringern, um den Kurs 230 freizugeben. Der Computer 110 kann eine Geschwindigkeitsverringerungsanweisung an das zweite Fahrzeug 101b und eine Geschwindigkeitserhöhungsanweisung an das zweite Fahrzeug 101a senden, um zu gewährleisten, dass sowohl die Distanz d4 als auch d5 den vorgegebenen Schwellenwert für die Distanz überschreitet.
  • Bei Empfang einer Anweisung von dem Host-Fahrzeug 100 kann ein zweites Fahrzeug 101 akzeptieren, die empfangene Anweisung umzusetzen und eine Bestätigungsantwort senden, oder es kann das Modifizieren seiner Geschwindigkeit auf Grundlage der empfangenen Anweisung ablehnen und eine Ablehnungsantwort an das Host-Fahrzeug 100 senden. Der Computer 110 des Host-Fahrzeugs 100 kann bestimmen, dass das zweite Fahrzeug 101b ein Modifizieren seiner Geschwindigkeit ablehnt, was auf Grundlage der von dem zweiten Fahrzeug 101 empfangenen Antwort erfolgt oder auf Grundlage von Daten, die er von Sensoren 130 des Fahrzeugs 100 empfängt, die bspw. ein Ausbleiben einer erwarteten Änderung der Geschwindigkeit des zweiten Fahrzeugs 101 bestimmen. Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, bei Empfang einer Ablehnung vom zweiten Fahrzeug, seine Geschwindigkeit zu modifizieren, einen zweiten Kurs 230a, 230b des Host-Fahrzeugs 100 zu bestimmen. Der Computer 110 kann ferner dazu programmiert sein, ein zweites Fahrzeug 101a zu identifizieren, das den zweiten Kurs 230b versperrt, und eine zweite Anweisung zu senden, auf Grundlage des zweiten Kurses 230b, einer Position des zweiten Fahrzeugs 101a und einer Geschwindigkeit des zweiten Fahrzeugs 101a eine Geschwindigkeit des zweiten Fahrzeugs 101a anzupassen.
  • Der Computer 110 des zweiten Fahrzeugs 101 kann dazu programmiert sein, die empfangene Anweisung umzusetzen, wenn er bestimmt, dass die empfangene Anweisung akzeptabel ist. Der Computer 110 des zweiten Fahrzeugs 101 kann dazu programmiert sein, zu bestimmen, ob die empfangene Anweisung akzeptabel ist, indem er bestimmt, ob zu erwarten ist, dass das Ausführen der empfangenen Anweisung einen Aufprall mit einem anderen Fahrzeug 101 und/oder einem Hindernis verursachen wird, und/oder ob zu erwarten ist, dass es verursachen wird, dass das zweite Fahrzeug 101 von einer erwarteten Bahn abkommt. Beispielsweise kann der Computer 110 des zweiten Fahrzeugs 101 bestimmen, ob die empfangene Anweisung akzeptabel ist, indem er bestimmt, dass die Sollgeschwindigkeit innerhalb eines erwarteten Geschwindigkeitsbereichs liegt, bspw. einer maximal zulässigen Geschwindigkeit in der aktuellen Position des zweiten Fahrzeugs 101. Zusätzlich oder alternativ kann der erwartete Geschwindigkeitsbereich ferner auf aktuellen Witterungsbedingungen beruhen. Beispielsweise kann der erwartete Geschwindigkeitsbereich aufgrund ungünstiger Witterungsbedingungen auf weniger als eine normalerweise maximal zulässige Geschwindigkeitsbegrenzung, bspw. 100 km/h, eingeschränkt sein, bspw. auf 80 km/h.
  • Um ein anderes Beispiel zu nennen, kann der Computer 110 des zweiten Fahrzeugs 101 auf Grundlage eines Schwellenwerts für die maximal erwartete Beschleunigung bestimmen, ob die empfangene Anweisung akzeptabel ist. Beispielsweise kann der Computer 110 dazu programmiert sein, eine Anweisung mit einer Sollgeschwindigkeit abzulehnen, die eine Beschleunigung von mehr als 5 Metern pro Quadratsekunde (m/s2) bewirkt. Beispielsweise, unter Bezug auf 3, kann der Computer 110 des zweiten Fahrzeugs 101 eine Anweisung mit einer Sollgeschwindigkeit von 30 km/h ablehnen, wenn die Differenz zwischen t1 und t2 2 Sekunden beträgt und eine aktuelle Geschwindigkeit des zweiten Fahrzeugs 101 70 km/h beträgt.
  • Der Computer 110 des Fahrzeugs 100 kann dazu programmiert sein, die Anweisung, die eine Kennung, bspw. ein Autokennzeichen, des zweiten Fahrzeugs 101 und einen Wert für die Sollgeschwindigkeit des zweiten Fahrzeugs 101 beinhaltet, zu senden. Der Computer 110 des Fahrzeugs 101 kann dazu programmiert sein, auf Grundlage der in den empfangenen Anweisungen beinhalteten Kennung zu bestimmen, dass die empfangene Anweisung mit dem zweiten Fahrzeug 101 verbunden ist. Der Computer 110 des zweiten Fahrzeugs 101 kann dazu programmiert sein, die empfangene Anweisung durch Ansteuern von Operationen des zweiten Fahrzeugs 101 auf Grundlage der empfangenen Anweisung umzusetzen.
  • In einem Beispiel kann der Computer 110 des zweiten Fahrzeugs 101 regelmäßig, bspw. alle 50 ms, Anweisungen vom Host-Fahrzeug 100 empfangen, die Geschwindigkeit des zweiten Fahrzeugs 101 zu modifizieren. Anders formuliert, kann der Computer 110 des Host-Fahrzeugs 100 dazu programmiert sein, regelmäßig eine Anweisung an das zweite Fahrzeug 101b zu senden, bspw. ab einem Zeitpunkt, zu dem ein Spurwechsel auf die Spur 210b beginnt, bis sich das Host-Fahrzeug 100 auf der zweiten Spur 210b befindet und eine Distanz d4 zwischen den Fahrzeugen 100, 101b einen vorgegebenen Schwellenwert überschreitet.
  • VERARBEITUNG
  • Die 4A-4C zeigen einen Beispielprozess 400, in dem ein Host-Fahrzeug 100 Anweisungen an (ein) zweite(s) Fahrzeug(e) 101 sendet, damit ein Kurs 230 des Host-Fahrzeugs 100 freigegeben wird. In einem Beispiel kann der Computer 110 des Fahrzeugs 100 dazu programmiert sein, Blöcke des Prozesses 400 auszuführen.
  • Der Prozess 400 beginnt bei Block 405, bei dem der Computer 110 bestimmt, ob das Fahrzeug 100 in einem manuellen (oder nichtautonomen) Modus arbeitet. In einem Beispiel kann das Fahrzeug 100 in einem nichtautonomen, autonomen oder halbautonomen Modus betrieben werden. Wenn der Computer 110 bestimmt, dass das Fahrzeug 100 in einem nichtautonomen Modus arbeitet, dann geht der Prozess 400 zu Entscheidungsblock 410 über; andernfalls geht der Prozess 400 zu Block 415 über.
  • Bei Entscheidungsblock 410 bestimmt der Computer 110, ob ein Fahrtrichtungssignal erkannt wird. Beispielsweise kann der Computer 110 ein Fahrtrichtungssignal nach rechts oder links infolge einer Benutzereingabe an einem Fahrtrichtungssignalhebel oder dergleichen, was in einer HMI 140 beinhaltet ist, erkennen. Während ein Fahrzeug auf einer Schnellstraße fährt, gibt ein Fahrtrichtungssignal nach links oder rechts typischerweise eine Absicht eines Benutzers eines nichtautonom arbeitenden Fahrzeugs 100 an, auf eine rechte oder linke Spur 210 zu wechseln. Zusätzlich oder alternativ dazu kann der Computer 110 dazu programmiert sein, sonstige Eingaben von einem Benutzer des Fahrzeugs 100 in die HMI 140 zu empfangen, die auf eine Absicht, eine Spur 210 zu wechseln, hinweisen, bspw. über eine akustische Eingabe, Gestenerkennung usw. Zusätzlich oder alternativ kann der Computer 110 dazu programmiert sein, Eingaben zu empfangen, die eine Anforderung für eine Vielzahl von Spurwechseln beinhalten, bspw. einen akustischen Befehl wie etwa „zwei Spuren nach links wechseln“. Wenn der Computer 110 bestimmt, dass das Fahrtrichtungssignal empfangen wird, dann geht der Prozess 400 zu Block 430 über; andernfalls springt der Prozess 400 auf Entscheidungsblock 410 zurück.
  • Bei Block 415 empfängt der Computer 110 Routendaten wie etwa eine aktuelle Position des Fahrzeugs 100, ein Fahrtziel, Verkehrsdaten usw.
  • Anschließend, bei Block 420, identifiziert der Computer 110 eine Route für das Fahrzeug 100 zum empfangenen Fahrtziel. Beispielsweise kann der Computer 110 die Route auf Grundlage der aktuellen Position des Fahrzeugs 100, des empfangenen Fahrtziels, von Verkehrsdaten usw. unter Verwendung bekannter Routenplanungstechniken identifizieren. Der Computer 110 kann ferner dazu programmiert sein, Aktoren 120 des Fahrzeugs 100 anzusteuern, um das Fahrzeug 100 auf Grundlage der identifizierten Route, bspw. durch Beschleunigen auf einer Straße 250, zu betreiben.
  • Anschließend, bei Entscheidungsblock 425, bestimmt der Computer 110, ob ein Spurwechsel angebracht ist. Beispielsweise kann der Computer 110 auf Grundlage einer aktuellen Position des Fahrzeugs und der identifizierten Route bestimmen, dass ein Spurwechsel angebracht ist. Das Fahrzeug 100 kann die aktuelle Position des Fahrzeugs 100 vom GPS-Sensor 130 des Fahrzeugs 100 empfangen. Außerdem kann der Computer 110 dazu programmiert sein, auf Grundlage von Positionskoordinaten des Fahrzeugs 100 und von Daten, die er von einer oder mehreren Kamerasensoren 130 des Fahrzeugs 100 empfängt, zu bestimmen, ob ein Spurwechsel angebracht ist. Zusätzlich oder alternativ kann der Computer 110 dazu programmiert sein, zu bestimmen, dass ein Spurwechsel angebracht ist, wenn bestimmt wird, dass eine Zeit bis zur Kollision mit einem Hindernis auf der aktuellen Spur 210 des Host-Fahrzeugs 100 kürzer ist als eine Zeit bis zum Stoppen des Fahrzeugs 100 durch Bremsen. Anders formuliert, kann der Computer 110 dazu programmiert sein, zu bestimmen, dass ein Spurwechsel notwendig ist, um eine Kollision des Host-Fahrzeugs 100 mit einem Hindernis auf der aktuellen Spur 210 des Host-Fahrzeugs 100 zu verhüten. Wenn der Computer 110 bestimmt, dass der Spurwechsel angebracht ist, dann geht der Prozess 400 zu Block 430 über; andernfalls springt der Prozess 400 auf Entscheidungsblock 425 zurück.
  • Bei Block 430 bestimmt der Computer 110 einen oder mehrere Kurse 230 auf Grundlage einer Position und/oder Geschwindigkeit des Fahrzeugs 100, einer Position und/oder Geschwindigkeit anderer Fahrzeuge 101 in der Nähe des Fahrzeugs 100, der Zielspur 210 usw. Beispielsweise, wie in 2A gezeigt, kann der Computer 110 eine Vielzahl von Kursen 230, 230a, 230b bestimmen, indem er unterschiedliche Längs- und Seitenbewegungen bestimmt, mit denen das Fahrzeug 110 auf die Zielspur 210 fahren kann. In einem wie oben beschriebenen Beispiel kann eine Vielzahl möglicher Kurse zwischen einer aktuellen Position des Fahrzeugs 100 auf der aktuellen Spur 210a und einer Zielposition auf einer Zielspur 210c bestimmt werden, was bspw. davon abhängt, wie sich die Längs- und Seitenkomponenten der Geschwindigkeit des Fahrzeugs 100 ändern, während sich das Fahrzeug 100 von der aktuellen Spur 210a auf die Zielspur 210c bewegt.
  • Der Prozess 400 fährt wie in 4B fort, wobei der Computer 110 als nächstes, bei Entscheidungsblock 435, bestimmt, ob zumindest einer der möglichen bestimmten Kurse nicht versperrt ist. Der Computer 110 kann bestimmen, dass ein Kurs versperrt ist, wenn bestimmt wird, dass die Fahrzeuge 100, 101 ohne Modifikation einer Geschwindigkeit des zweiten Fahrzeugs 101 miteinander zusammenstoßen, d. h. kollidieren könnten (siehe 2B). In einem Beispiel, das in 2A gezeigt wird, kann der Computer 110 auf Grundlage der Geschwindigkeit des zweiten Fahrzeugs 101, der Geschwindigkeit des Fahrzeugs 100 und/oder des Kurses 230 bestimmen, dass sich das Fahrzeug 100 ohne Modifikation der Geschwindigkeit des zweiten Fahrzeugs 101 auf dem Kurs 230 bewegen darf. Daher kann der Computer 110 bestimmen, dass der Kurs 230 nicht versperrt ist. Gleichwohl kann der Computer 110 in einem Beispiel, das in 2B gezeigt wird, bestimmen, dass der Kurs 230a versperrt ist, weil die Fahrzeuge 100, 101b ohne Modifikation der Geschwindigkeit des zweiten Fahrzeugs 101b kollidieren können. Daher sollte eine Geschwindigkeit zumindest eines zweiten Fahrzeugs 101 modifiziert werden, um das Fahrzeug 100 auf einem blockierten Kurs zu bewegen. Wenn der Computer 110 bestimmt, dass zumindest einer der möglichen Kurse nicht versperrt ist, dann geht der Prozess 400 zu Block 470 über (siehe 4C); andernfalls geht der Prozess 400 zu Entscheidungsblock 440 über.
  • Anschließend, bei Block 440, wählt der Computer 110 einen zu folgenden Kurs 230 aus. Der Computer 110 kann dazu programmiert sein, einen Kurs auf Grundlage unterschiedlicher Kriterien auszuwählen. In einem Beispiel kann der Computer 110 dazu programmiert sein, einen Kurs auszuwählen, der ergibt, dass eine geringstmögliche Anzahl zweiter Fahrzeuge 101 angewiesen werden, ihre Geschwindigkeit zu modifizieren. Alternativ zu oder in Kombination mit dem oben genannten kann der Computer 110 dazu programmiert sein, einen Kurs auszuwählen, der zu einem geringsten Gesamtumfang der Geschwindigkeitsmodifikation zweiter Fahrzeuge 101 führt. Wenn es ein Kurs 230a beispielsweise notwendig macht, dass zwei Fahrzeuge 101 Anweisungen vom Host-Fahrzeug 100 empfangen, ihre Geschwindigkeit anzupassen, und es ein Kurs 230b notwendig macht, dass nur ein Fahrzeug 101 Anweisungen vom Host-Fahrzeug 100 empfängt, dann kann der Computer 110 dazu programmiert sein, den Kurs 230b auszuwählen. Zusätzlich oder alternativ kann der Computer 110 dazu programmiert sein, einen Kurs 230 auszuwählen, der minimiert, dass eine Geschwindigkeitsmodifikation von einem oder mehreren zweiten Fahrzeugen 101 angefordert wird. Beispielsweise kann ein Umfang der Geschwindigkeitsmodifikation auf der Distanz d3 beruhen. Wenn das Fahrzeug 100 eine Seitenbewegung auf die Spur 210b ausführt, während d3 5 Meter beträgt und ein Schwellenwert für die Distanz 25 Meter beträgt, dann kann das zweite Fahrzeug 101b angewiesen sein, im Vergleich dazu, dass die Distanz d3 20 Meter beträgt, eine umfangreichere Geschwindigkeitsreduktion vorzunehmen. Anders formuliert, um eine Distanz d5 zu erreichen, die den Schwellenwert für die Distanz überschreitet, kann die Geschwindigkeit des zweiten Fahrzeugs 101b, wenn die Distanz d3 5 Meter beträgt, stärker reduziert werden als in dem Fall, dass die Distanz d3 20 Meter beträgt. Wenn, mit diesem Beispiel fortfahrend, ein Kurs 230a eine Geschwindigkeitsreduktion eines zweiten Fahrzeugs 101 von 20 km/h bewirken kann und ein Kurs 230b eine Geschwindigkeitsreduktion für ein zweites Fahrzeug 101 von 30 km/h bewirkt, dann kann der Computer 110 dazu programmiert sein, den Kurs 230a auszuwählen.
  • Zusätzlich oder alternativ kann der Computer 110 dazu programmiert sein, auf Grundlage einer Optimierungsfunktion einen Kurs aus den möglichen Kursen auszuwählen. Beispielsweise kann eine Funktion wie etwa W = aN + bV verwendet werden, um eine Gewichtung eines Kurses darzustellen. W, N und V stehen in diesem Beispiel jeweils für eine Gewichtung eines Kurses, eine Anzahl zweiter Fahrzeuge 101, auf die sich der jeweilige Kurs 230 auswirkt (sprich, ihre Geschwindigkeit würde modifiziert werden) und einen Gesamtumfang der Geschwindigkeitsmodifikation des zweiten Fahrzeugs bzw. der zweiten Fahrzeuge 101, den der jeweilige Kurs 230 bewirkt. Die Parameter a und b können ein Verhältnis von einem Eingangswert, d. h. N und V, zum Ausgangswert W bestimmen. In einem Beispiel kann der Computer 110 dazu programmiert sein, einen der möglichen Kurse auszuwählen, der im Vergleich zu anderen möglichen Kursen mit der geringsten W verbunden ist. In einem Beispiel, wenn Block 440 über Entscheidungsblock 460 erreicht wird, kann der Computer 110 dazu programmiert sein, einen Kurs 230 auszuwählen, der bislang noch nicht ausgewählt wurde.
  • Wie unter Bezug auf die Blöcke 445, 450, 455 und 460 erläutert, kann der Computer 110 dazu programmiert sein, jeden der, bspw., Kurse 230, 230a, 230b nacheinander zu evaluieren, um auf Grundlage einer ablehnenden oder akzeptierenden Antwort der zweiten Fahrzeuge 101 zu bestimmen, welcher der Kurse 230, 230a, 230b freigegeben werden kann. Der Computer 110 kann dazu programmiert sein, wie oben erläutert, einen bevorzugten Kurs, bspw. den Kurs mit der geringsten W, auszuwählen, und, wenn es die zweiten Fahrzeuge 101, die mit dem Kurs verbunden sind (d.h. die zweiten Fahrzeuge 101, die angewiesen werden, ihre Geschwindigkeit zu modifizieren) ablehnen, der Anweisung zu folgen, dann kann der Computer 110 dazu programmiert sein, andere bestimmte Kurse 230, 230a, 230b auszuwählen.
  • Als Nächstes, bei einem Block 445, identifiziert der Computer 110 ein oder mehrere zweite Fahrzeuge 101, die auf Grundlage des ausgewählten Kurses 230 Anweisungen empfangen sollen. Beispielsweise kann der Computer 110 auf Grundlage des Auswählens des Kurses 230a dazu programmiert sein, das zweite Fahrzeug 101b zu identifizieren, das eine Anweisung, die Geschwindigkeit des zweiten Fahrzeugs 101b zu reduzieren, empfangen soll.
  • Anschließend, bei Block 450, sendet der Computer 110 eine oder mehrere Anweisungen an das bzw. die ausgewählte(n) zweite(n) Fahrzeug(e) 101. Beispielsweise, unter Bezug auf die Figuren 2A-2B, kann der Computer 110 dazu programmiert sein, eine Anweisung an das zweite Fahrzeug 101b zu senden, die Geschwindigkeit des zweiten Fahrzeugs 101b zu reduzieren. Die Anweisung kann eine Sollgeschwindigkeit, bspw. 35 km/h, und eine Kennung wie etwa eine Fahrzeug-Identifizierungsnummer (FIN), ein Autokennzeichen usw. des ausgewählten zweiten Fahrzeugs 101b beinhalten. Zusätzlich oder alternativ kann der Computer 110 dazu programmiert sein, ein Sollgeschwindigkeitsschema wie etwa ein in 3 gezeigtes Schema an das ausgewählte zweite Fahrzeug 101b zu senden.
  • Ferner kann der Computer 110 zusätzlich oder alternativ dazu programmiert sein, eine Zeit bis zur Kollision zwischen dem Host-Fahrzeug 100 und einem Hindernis auf der aktuellen Spur 210 des Host-Fahrzeugs 100 zu senden. Anders formuliert, kann der Computer 110 das zweite Fahrzeug 101 über eine Dringlichkeit der angeforderten Geschwindigkeitsmodifikation informieren. Beispielsweise kann das zweite Fahrzeug 101 dazu programmiert sein, einen oder mehrere Schwellenwerte zu ändern, die mit dem Bestimmen verbunden sind, ob eine Anweisung vom Fahrzeug 100 zu akzeptieren ist. Der Computer 110 des zweiten Fahrzeugs 100 kann dazu programmiert sein, eine Modifikation der Geschwindigkeit des zweiten Fahrzeugs 100 abzulehnen, wenn die modifizierte Geschwindigkeit eine maximal zulässige Geschwindigkeitsbegrenzung überschreitet und vom Fahrzeug 100 keine Dringlichkeit angegeben wird. Allerdings kann der Computer 110 des zweiten Fahrzeugs 101 dazu programmiert sein, eine Modifikation der Geschwindigkeit des zweiten Fahrzeug 101 selbst dann zu akzeptieren, wenn die Sollgeschwindigkeit die maximal zulässige Geschwindigkeitsbegrenzung überschreitet, wenn die empfangene Anweisung einen binären Statusindikator beinhaltet, der auf „Ja“ oder „1“ oder dergleichen eingestellt ist und eine Dringlichkeit dessen angibt, dass das Fahrzeug 100 von der Spur 210a auf die Spur 210b wechselt. In einem Beispiel kann die Anweisung eine Zeit bis zur Kollision und eine Zeit bis zum Stoppen des Fahrzeugs 100 beinhalten.
  • Im Anschluss daran bestimmt der Computer 110 bei einem Entscheidungsblock 455, ob das bzw. die ausgewählte(n) zweite(n) Fahrzeug(e) 101 die gesendete(n) Anweisung(en) akzeptiert hat bzw. haben, bspw. auf Grundlage von akzeptierenden oder ablehnenden Nachrichten, die über Fahrzeug-zu-Fahrzeug-Kommunikationen erhalten werden. In einem Beispiel kann der Computer 110 dazu programmiert sein, zu bestimmen, dass die Anweisung(en) akzeptiert wurde(n), wenn bestimmt wird, dass jedes der ausgewählten zweiten Fahrzeuge 101 die Anweisungen akzeptiert hat. Wenn es, anders formuliert, zumindest eines der ausgewählten zweiten Fahrzeuge 101 ablehnt, die empfangene Anweisung zu akzeptieren, dann kann der Computer 110 des Fahrzeugs 100, im Sinne von Block 455, dazu programmiert sein, zu bestimmen, dass alle der zweiten Fahrzeuge 101 die Anweisungen abgelehnt haben, d. h, die Bestimmung von Block 455 ist negativ. Wenn beispielsweise, unter Bezug auf Figur 2A, das zweite Fahrzeug 101c akzeptiert, wohingegen das zweite Fahrzeug 101b zu akzeptieren ablehnt, dann kann der Computer 110 des Fahrzeugs 100 bestimmen, dass die mit dem ausgewählten Kurs 230 verbundenen zweiten Fahrzeuge 101 die empfangenen Anweisungen kollektiv abgelehnt haben, bspw., weil sich das Fahrzeug 100 wegen einer Eventualität eines Zusammenstoßes mit dem ablehnenden zweiten Fahrzeug 101b nicht auf dem Kurs 230 bewegen kann. Wenn der Computer 110 des Fahrzeugs 100 bestimmt, dass die zweiten Fahrzeuge 101 die empfangenen Anweisungen akzeptiert haben, dann geht der Prozess 400 zu Entscheidungsblock 470 über (siehe 4C); andernfalls geht der Prozess 400 zu Entscheidungsblock 460 über.
  • Bei Entscheidungsblock 460 bestimmt der Computer 110, ob ein anderer Kurs 230 zur Verfügung steht. In einem Beispiel kann der Computer 110 dazu programmiert sein, zu bestimmen, dass ein anderer Kurs zur Verfügung steht, wenn bestimmt wird, dass zumindest einer der Kurse zuvor nicht einem oder mehreren zweiten Fahrzeugen 101 zum Akzeptieren oder Ablehnen bereitgestellt wurde. Beispielsweise kann der Computer 110 dazu programmiert sein, zu bestimmen, dass kein anderer Kurs 230 zur Verfügung steht, wenn bestimmt wird, dass alle der bestimmten Kurse 230 bereits abgelehnt worden sind (siehe Entscheidungsblock 455). Wenn der Computer 110 bestimmt, dass ein anderer Kurs 230 zur Verfügung steht, dann geht der Prozess 400 zu Block 440 über; andernfalls geht der Prozess 400 zu Block 465 über.
  • Bei Block 465 modifiziert der Computer 110 die Route des Fahrzeugs 100 auf Grundlage der Unmöglichkeit, einen Kurs für einen Spurwechsel auszuwählen. In einem nichtautonomen und/oder halbautonomen Modus kann der Computer 110 dazu programmiert sein, eine alternative Route zum empfangenen Fahrtziel zu identifizieren und das Fahrzeug 100 auf Grundlage der identifizierten alternativen Route zu betreiben. In einem anderen Beispiel, wenn das Fahrzeug 100 in einem halbautonomen und/oder autonomen Modus betrieben wird, kann eine Reduktion der Geschwindigkeit des Fahrzeugs 100 ein Bestimmen neuer möglicher Kurse ergeben, bspw., weil die zweiten Fahrzeuge 101, welche die Kurse versperren, eventuell vorbeifahren. Daher kann der Computer 110 in einem Beispiel dazu programmiert sein, ein Abbremsen zu veranlassen und zu Block 430 zurückspringen, wenngleich dies in 4B nicht gezeigt wird. In einem anderen Beispiel, in einem nichtautonomen Modus, kann der Computer 110 dazu programmiert sein, eine Nachricht über die HMI 140 des Fahrzeugs 100 auszugeben, die darauf hinweist, dass die Zielspur versperrt ist. Der Benutzer des Fahrzeugs 100 kann eine andere Route identifizieren. Im Anschluss an Block 465 endet der Prozess 400; oder er springt alternativ dazu zu Block 405 zurück, wenngleich dies in 4B nicht gezeigt wird.
  • Bei Entscheidungsblock 470, weiter in Figur 4C, bestimmt der Computer 110, ob das Fahrzeug 100 im autonomen Modus arbeitet. Wenn der Computer 110 bestimmt, dass das Fahrzeug 100 im autonomen Modus arbeitet, dann geht der Prozess 400 zu Block 475 über; andernfalls geht der Prozess 400 zu Entscheidungsblock 480 über.
  • Bei Block 475 führt der Computer 110 den Spurwechsel auf Grundlage des ausgewählten Kurses 230 durch, bspw. durch Ansteuern der Aktoren 120, bspw. zum Lenken, des Fahrzeugs 100. In einem Beispiel kann der Computer 110 ferner dazu programmiert sein, den Spurwechsel durchzuführen, wenn bspw. auf Grundlage der Geschwindigkeit des zweiten Fahrzeugs bzw. der zweiten Fahrzeuge 101 bestimmt wird, dass das bzw. die ausgewählte(n) zweite(n) Fahrzeug(e) 101 die Anweisungen durchgeführt hat bzw. haben.
  • Bei Entscheidungsblock 480 bestimmt der Computer 110, ob das Fahrzeug 100 in einem halbautonomen Modus arbeitet. Wenn der Computer 110 bestimmt, dass das Fahrzeug 100 in einem halbautonomen Modus arbeitet, dann geht der Prozess 400 zu Entscheidungsblock 485 über; andernfalls geht der Prozess 400 zu Block 490 über.
  • Bei Entscheidungsblock 485 bestimmt der Computer 110, ob ein Benutzer des Fahrzeugs 100 den Spurwechsel auf Grundlage des ausgewählten Kurses 230 akzeptiert hat. In einem Beispiel ist der Computer 110 dazu programmiert, Informationen über die HMI 140 des Fahrzeugs 100 auszugeben, die einen vorgeschlagenen Spurwechsel auf Grundlage des ausgewählten Kurses 230 beinhalten, bspw. über eine graphische Anzeige, die einen Pfeil in eine Richtung des ausgewählten Kurses 230 zeigt. Der Computer 110 kann dazu programmiert sein, eine Eingabe, bspw. über die HMI 140 des Fahrzeugs 100, zu empfangen, die eine Entscheidung des Benutzers beinhaltet, den vorgeschlagenen Spurwechsel zu akzeptieren oder abzulehnen. Wenn der Computer 110 bestimmt, dass der Benutzer des Fahrzeugs 100 den vorgeschlagenen Spurwechsel akzeptiert hat, dann geht der Prozess 400 zu Block 475 über; andernfalls springt der Prozess 400 zu Entscheidungsblock 485 zurück.
  • Bei Block 490 fordert der Computer 110 den Benutzer des Fahrzeugs 100 auf, die Spur zu wechseln, wenn bezüglich des Fahrzeugs 100 bestimmt wurde, dass es sich im manuellen Modus befindet. Beispielsweise kann der Computer 110 die HMI 140 des Fahrzeugs 100 ansteuern, um Informationen auszugeben, bspw. eine blinkende grüne Leuchte, um darauf hinzuweisen, dass der Benutzer die Spur 210 in der vorgeschlagenen Richtung wechseln kann, wie etwa der Richtung eines empfangenen Fahrtrichtungssignals. Block 490 kann erreicht werden, wenn das Fahrzeug 100 im nichtautonomen Modus betrieben wird. Somit kann der Benutzer des Fahrzeugs 100 einen Aktor 120 des Fahrzeugs 100 ansteuern, um die Spur 210 zu wechseln.
  • Daraufhin, bei Entscheidungsblock 495, bestimmt der Computer 110, ob der Spurwechsel vollendet ist oder der ausgewählte Kurs 230 vom Fahrzeug 100 befahren wurde, bspw., ob das Fahrzeug 100 die Spur 210c erreicht hat, in Bezug auf die in 2A gezeigte Spur 230. Der Computer 110 kann dazu programmiert sein, auf Grundlage von Daten zu bestimmen, ob der Spurwechsel vollendet ist, welche er von den Sensoren 130 des Fahrzeugs 100, bspw. dem GPS-Sensor 130, dem Kamerasensor 130 usw. empfangen hat. Wenn der Computer 110 bestimmt, dass der Spurwechsel vollendet ist und/oder der ausgewählte Kurs 230 befahren wird, dann geht der Prozess 400 zu Block 496 über; andernfalls springt der Prozess 400 zu Entscheidungsblock 495 zurück.
  • Bei Block 496 überträgt der Computer 110 eine Nachricht, die ein Ende der Kontrollperiode bestätigt. Beispielsweise kann der Computer 110 dazu programmiert sein, eine Nachricht über die drahtlose Kommunikationsschnittstelle 160 zu übertragen, die eine Kennung des bzw. der ausgewählten zweiten Fahrzeugs bzw. Fahrzeuge 101 und Informationen, die bestätigen, dass das Fahrzeug 100 eine Geschwindigkeitsmodifikation der ausgewählten zweiten Fahrzeuge 101 beendet, beinhaltet.
  • Im Anschluss an Block 496 endet der Prozess 400; oder er springt zu Block 405 zurück, wenngleich dies in 4C nicht gezeigt wird.
  • 5 zeigt einen Beispielprozess 500, bei dem ein zweites Fahrzeug 101 Anweisungen von einem Host-Fahrzeug 100 empfängt. Zum Beispiel kann ein Computer 110 des zweiten Fahrzeugs 101 dazu programmiert sein, Blöcke des Prozesses 500 auszuführen.
  • Der Prozess 500 beginnt bei Entscheidungsblock 505, bei dem der Computer 110 des zweiten Fahrzeugs 101 bestimmt, ob eine Anweisung von einem Host-Fahrzeug 100 empfangen wurde, bspw. über eine drahtlose Kommunikationsschnittstelle 160 des zweiten Fahrzeugs 101. Wenn der Computer 110 des zweiten Fahrzeugs 101 bestimmt, dass die Anweisung vom Host-Fahrzeug 100 empfangen wurde, dann geht der Prozess 500 zu Entscheidungsblock 510 über; andernfalls springt der Prozess 500 zu Entscheidungsblock 505 zurück.
  • Bei Entscheidungsblock 510 bestimmt der Computer 110 des Fahrzeugs 101, ob die empfangene Anweisung akzeptabel ist. Beispielsweise kann der Computer 110 des zweiten Fahrzeugs 101 dazu programmiert sein, auf Grundlage der Sollgeschwindigkeit, eines vorgegebenen Schwellenwerts für die Sollgeschwindigkeit, eines vorgegebenen Schwellenwerts für die Beschleunigung, einer Zeit bis zur Kollision des Host-Fahrzeugs 10 auf der aktuellen Spur 210 des Host-Fahrzeugs 100 usw., zu bestimmen, ob die empfangene Anweisung akzeptabel ist. Wenn der Computer 110 bestimmt, dass die empfangene Anweisung akzeptabel ist, dann geht der Prozess 500 zu Block 515 über; andernfalls geht der Prozess 500 zu Block 520 über.
  • Bei Block 515 sendet der Computer 110 eine akzeptierende Nachricht an das Host-Fahrzeug 100, bspw. über die drahtlose Kommunikationsschnittstelle 160 des zweiten Fahrzeugs 101.
  • Bei Block 520 überträgt der Computer 110 des zweiten Fahrzeugs 101 eine ablehnende Nachricht an das Host-Fahrzeug 100, bspw. über die drahtlose Kommunikationsschnittstelle 160 des zweiten Fahrzeugs 101. Im Anschluss an Block 520 endet der Prozess 500; oder er springt alternativ dazu zu Block 505 zurück (wenngleich dies in 5 nicht gezeigt wird).
  • Im Anschluss an Block 515 setzt der Computer 110 des zweiten Fahrzeugs 101 bei Block 525 die empfangene Anweisung um, bspw. durch Ansteuern der Aktoren 120 des zweiten Fahrzeugs 101. Beispielsweise steuert der Computer 110 des zweiten Fahrzeugs 101 die Antriebs- und/oder Bremsaktoren 120 des zweiten Fahrzeugs 101 an, um die Geschwindigkeit des zweiten Fahrzeugs 101 auf die empfangene Sollgeschwindigkeit und/oder das Sollgeschwindigkeitsschema zu modifizieren.
  • Anschließend, bei Entscheidungsblock 530, bestimmt der Computer 110 des zweiten Fahrzeugs 101, ob die Kontrollperiode abgeschlossen ist, d. h., ob das Host-Fahrzeug 100 beabsichtigt, die Geschwindigkeit des zweiten Fahrzeugs 101 weiter zu modifizieren. Beispielsweise kann der Computer 110 des zweiten Fahrzeugs 101 dazu programmiert sein, zu bestimmen, dass die Kontrollperiode abgeschlossen ist, wenn eine Nachricht, bspw. über Fahrzeug-zu-Fahrzeug-Kommunikationen, vom Host-Fahrzeug 100 empfangen wird, die bestätigt, dass die Kontrollperiode abgeschlossen ist. Wenn der Computer 110 bestimmt, dass die Kontrollperiode abgeschlossen ist, dann geht der Prozess 500 zu Block 535 über; andernfalls springt der Prozess 500 zu Entscheidungsblock 530 zurück; oder er springt alternativ dazu zu Block 505 zurück, wenngleich dies in 5 nicht gezeigt wird.
  • Bei Block 535 nimmt der Computer 110 den Betrieb des zweiten Fahrzeugs 101 wieder auf, bspw. auf Grundlage einer geplanten Geschwindigkeit des zweiten Fahrzeugs 101. Beispielsweise kann der Computer 110 des zweiten Fahrzeugs 101 dazu programmiert sein, die Geschwindigkeit des zweiten Fahrzeugs 101 zu modifizieren, damit es eine vom Computer 110 des zweiten Fahrzeugs 101 geplante Geschwindigkeit erreicht, die sich von der Sollgeschwindigkeit, welche durch das Host-Fahrzeug 100 angewiesen worden war, unterscheidet.
  • Im Anschluss an Block 535 endet der Prozess 500.
  • Der ein Nomen modifizierende Artikel „ein/e“ soll derart verstanden werden, dass er einen oder mehrere bezeichnet, es sei denn, es ist etwas anderes angegeben oder der Kontext gibt etwas anderes vor. Der Ausdruck „auf Grundlage“ schließt ein, dass etwas teilweise oder ganz auf etwas beruht.
  • Rechenvorrichtungen, wie sie in dieser Schrift erläutert wurden, beinhalten im Allgemeinen jeweils Anweisungen, die durch eine oder mehrere Rechenvorrichtungen, wie etwa die vorstehend identifizierten, und zum Ausführen von Blöcken oder Schritten oben beschriebener Prozessen ausgeführt werden können. Computerausführbare Anweisungen können von Computerprogrammen zusammengestellt oder interpretiert werden, die unter Verwendung einer Vielzahl von Programmiersprachen und/oder -technologien erstellt wurden, einschließlich unter anderem, entweder einzeln oder in Kombination, Java™, C, C++, Visual Basic, Java Script, Perl, HTML usw. Im Allgemeinen empfängt ein Prozessor (z. B. ein Mikroprozessor) Anweisungen, z. B. von einem Speicher, einem computerlesbaren Medium usw., und führt diese Anweisungen aus, wodurch er ein oder mehrere Prozesse durchführt, einschließlich eines oder mehrerer der hier beschriebenen Prozesse. Derartige Anweisungen und sonstige Daten können unter Verwendung einer Vielzahl computerlesbarer Medien gespeichert und gesendet werden. Eine Datei in der Rechenvorrichtung ist im Allgemeinen eine Sammlung von Daten, die auf einem computerlesbaren Medium, wie etwa einem Speichermedium, einem Direktzugriffsspeicher usw., gespeichert werden.
  • Ein computerlesbares Medium beinhaltet ein beliebiges Medium, das am Bereitstellen von Daten (z. B. Anweisungen) beteiligt ist, die durch einen Computer gelesen werden können. Ein derartiges Medium kann viele Formen annehmen, einschließlich unter anderem nichtflüchtiger Medien, flüchtiger Medien usw. Zu nichtflüchtigen Medien zählen zum Beispiel optische oder magnetische Platten und andere Dauerspeicher. Zu flüchtigen Medien gehört ein dynamischer Direktzugriffsspeicher (Dynamic Random Access Memory - DRAM), der in der Regel einen Hauptspeicher darstellt. Zu gängigen Formen computerlesbarer Medien gehören zum Beispiel eine Diskette, eine Folienspeicherplatte, eine Festplatte, ein Magnetband, ein beliebiges anderes magnetisches Medium, eine CD-ROM, eine DVD, ein beliebiges anderes optisches Medium, Lochkarten, Lochstreifen, ein beliebiges anderes physikalisches Medium mit Lochmustern, ein RAM, ein PROM, ein EPROM, ein FLASH, ein EEPROM, ein beliebiger anderer Speicherchip oder eine beliebige andere Speicherkassette oder ein beliebiges anderes Medium, welches von einem Computer gelesen werden kann.
  • Hinsichtlich der in der vorliegenden Schrift beschriebenen Medien, Vorgänge, Systeme, Verfahren usw. ist davon auszugehen, dass, obwohl die Schritte derartiger Vorgänge usw. als in einer entsprechenden Reihenfolge erfolgend beschrieben werden, derartige Vorgänge durchgeführt werden können, indem die beschriebenen Schritte in einer Reihenfolge durchgeführt werden, welche von der hier beschriebenen Reihenfolge abweicht. Es versteht sich ferner, dass bestimmte Schritte gleichzeitig ausgeführt, andere Schritte hinzugefügt oder bestimmte in der vorliegenden Schrift beschriebene Schritte weggelassen werden könnten. Mit anderen Worten sind die Beschreibungen von Systemen und/oder Prozessen in der vorliegenden Schrift zum Zwecke der Veranschaulichung bestimmter Ausführungsformen bereitgestellt und sollten keinesfalls so ausgelegt werden, dass sie den offenbarten Gegenstand einschränken.
  • Dementsprechend versteht es sich, dass die vorliegende Offenbarung, einschließlich der vorstehenden Beschreibung und der begleitenden Figuren und nachfolgenden Ansprüche, veranschaulichenden und nicht einschränkenden Charakters ist. Viele Ausführungsformen und Anwendungen, bei denen es sich nicht um die bereitgestellten Beispiele handelt, werden dem Fachmann beim Lesen der vorstehenden Beschreibung ersichtlich. Der Umfang der Erfindung sollte nicht unter Bezug auf die vorstehende Beschreibung ermittelt werden, sondern stattdessen unter Bezug auf Ansprüche, die hier beigefügt sind und/oder in einer hierauf basierenden, nichtvorläufigen Patentanmeldung enthalten sind, gemeinsam mit dem vollständigen Umfang von Äquivalenten, zu welchen derartige Ansprüche berechtigen. Es wird erwartet und ist beabsichtigt, dass es hinsichtlich der in der vorliegenden Schrift erläuterten Techniken künftige Entwicklungen geben wird und dass die offenbarten Systeme und Verfahren in solche künftige Ausführungsformen aufgenommen werden. Insgesamt versteht es sich, dass der offenbarte Gegenstand modifiziert und variiert werden kann.

Claims (13)

  1. Verfahren, umfassend: Bestimmen eines Kurses eines ersten Fahrzeugs; und wenn bestimmt wird, dass ein zweites Fahrzeug den bestimmten Kurs versperrt, Senden einer Anweisung an das zweite Fahrzeug auf Grundlage des bestimmten Kurses des ersten Fahrzeugs, einer Position des zweiten Fahrzeugs und einer Geschwindigkeit des zweiten Fahrzeugs, die Geschwindigkeit des zweiten Fahrzeugs anzupassen.
  2. Verfahren nach Anspruch 1, wobei die Anweisung ferner auf einer Geschwindigkeit des ersten Fahrzeugs und einer Position des ersten Fahrzeugs beruht.
  3. Verfahren nach Anspruch 1, ferner umfassend ein Bestimmen der Geschwindigkeit des zweiten Fahrzeugs und der Postion des zweiten Fahrzeugs auf Grundlage von Daten, die von Sensoren des ersten Fahrzeugs empfangen werden.
  4. Verfahren nach Anspruch 1, wobei der bestimmte Kurs des ersten Fahrzeugs einen seitlichen Spurwechsel beinhaltet.
  5. Verfahren nach Anspruch 1, wobei der bestimmte Kurs des ersten Fahrzeugs eine Krümmung, die zumindest eine Straßenspurmarkierung schneidet, beinhaltet.
  6. Verfahren nach Anspruch 1, ferner umfassend ein Bestimmen des Kurses auf Grundlage einer vorgegebenen Route.
  7. Verfahren nach Anspruch 1, ferner umfassend ein Bestimmen des Kurses auf Grundlage eines Aktivierens eines Fahrtrichtungssignals des ersten Fahrzeugs.
  8. Verfahren nach Anspruch 1, ferner umfassend: bei Empfang einer Ablehnung von dem zweiten Fahrzeug, seine Geschwindigkeit zu modifizieren, Bestimmen eines zweiten Kurses des ersten Fahrzeugs; Identifizieren eines dritten Fahrzeugs, das den zweiten Kurs versperrt; und Senden einer zweiten Anweisung an das dritte Fahrzeug, eine Geschwindigkeit des dritten Fahrzeugs auf Grundlage des zweiten Kurses, einer Position des zweiten Fahrzeugs und einer Geschwindigkeit des zweiten Fahrzeugs anzupassen.
  9. Verfahren nach Anspruch 1, ferner umfassend ein Senden einer Vielzahl von Anweisungen an eine Vielzahl zweiter Fahrzeuge, wobei jede der Anweisungen mit einem aus der Vielzahl zweiter Fahrzeuge verbunden ist und zumindest auf einer Geschwindigkeit und einer Position des jeweiligen zweiten Fahrzeugs beruht.
  10. Verfahren nach Anspruch 1, ferner umfassend: Bestimmen, im zweiten Fahrzeug, auf Grundlage von mindestens einer von einer Sollgeschwindigkeit des zweiten Fahrzeugs und einer Zeit bis zur Kollision des ersten Fahrzeugs, ob die empfangene Anweisung zu akzeptieren ist; Umsetzen der empfangenen Anweisung durch Ansteuern von Operationen des zweiten Fahrzeugs, wenn bestimmt wird, dass die empfangene Anweisung akzeptabel ist, Ansteuern eines Aktors des zweiten Fahrzeugs auf Grundlage der empfangenen Anweisung.
  11. Rechenvorrichtung, die dazu programmiert ist, das Verfahren nach einem der Ansprüche 1-9 auszuführen.
  12. Bodenfahrzeug, das die Rechenvorrichtung nach Anspruch 11 umfasst.
  13. Computerprogrammprodukt, das ein computerlesbares Medium umfasst, das Anweisungen speichert, die durch einen Computerprozessor ausführbar sind, um das Verfahren nach einem der Ansprüche 1-9 auszuführen.
DE102018103916.6A 2017-02-27 2018-02-21 Kooperative Fahrzeugnavigation Pending DE102018103916A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/442,900 2017-02-27
US15/442,900 US11142203B2 (en) 2017-02-27 2017-02-27 Cooperative vehicle navigation

Publications (1)

Publication Number Publication Date
DE102018103916A1 true DE102018103916A1 (de) 2018-08-30

Family

ID=61903239

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018103916.6A Pending DE102018103916A1 (de) 2017-02-27 2018-02-21 Kooperative Fahrzeugnavigation

Country Status (5)

Country Link
US (1) US11142203B2 (de)
CN (1) CN108510795B (de)
DE (1) DE102018103916A1 (de)
GB (1) GB2561962A (de)
RU (1) RU2018105265A (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110226078B (zh) * 2016-12-22 2024-04-26 日产北美公司 自动车辆服务系统
DE102017005967A1 (de) * 2017-06-23 2018-12-27 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Fahrerunterstützungsverfahren und -system
JP7116355B2 (ja) * 2017-09-28 2022-08-10 トヨタ自動車株式会社 運転支援装置
US10755579B2 (en) * 2017-11-03 2020-08-25 Cisco Technology, Inc. Autonomous vehicle control
US10377383B2 (en) * 2017-12-11 2019-08-13 Ford Global Technologies, Llc Vehicle lane change
US10818190B2 (en) * 2018-01-09 2020-10-27 Ford Global Technologies, Llc System and method for vehicle travelling in caravan mode
US10795367B2 (en) 2018-01-11 2020-10-06 Uatc, Llc Mapped driving paths for autonomous vehicle
CN116968731A (zh) * 2018-03-20 2023-10-31 御眼视觉技术有限公司 用于导航主车辆和制动主车辆的系统
GB2572373B (en) * 2018-03-28 2020-12-02 Auto Records Ltd Method and system for determining advanced driver assistance systems (ADAS) features
TWI674984B (zh) * 2018-11-15 2019-10-21 財團法人車輛研究測試中心 自動駕駛車輛之行駛軌跡規劃系統及方法
US10852746B2 (en) * 2018-12-12 2020-12-01 Waymo Llc Detecting general road weather conditions
DE102018221860A1 (de) * 2018-12-17 2020-07-02 Volkswagen Aktiengesellschaft Verfahren und Assistenzsystem zur Vorbereitung und/oder Durchführung eines Spurwechsels
US11449072B2 (en) 2018-12-21 2022-09-20 Qualcomm Incorporated Intelligent and adaptive traffic control system
JP7111022B2 (ja) * 2019-02-18 2022-08-02 トヨタ自動車株式会社 管制装置
CN109712421B (zh) * 2019-02-22 2021-06-04 百度在线网络技术(北京)有限公司 自动驾驶车辆的速度规划方法、装置和存储介质
KR102162646B1 (ko) * 2019-03-11 2020-10-07 주식회사 에스더블유엠 자율주행차의 주행 제어방법
DE102019205034A1 (de) * 2019-04-09 2020-10-15 Audi Ag Verfahren zum Durchführen eines Fahrmanövers, Steuervorrichtung für ein Fahrzeug sowie Kraftfahrzeug
GB202114202D0 (en) * 2019-05-07 2021-11-17 Motional Ad Llc Systems and methods for planning and updating a vehicle's trajectory
US11328599B2 (en) * 2020-02-07 2022-05-10 Micron Technology, Inc. Crowdsourcing road conditions from abnormal vehicle events
JP2023531652A (ja) * 2020-06-19 2023-07-25 グライドウェイズ、インコーポレイテッド 自律車両システムのための制動および信号伝達方式
CN111923910B (zh) * 2020-09-14 2021-01-26 福瑞泰克智能系统有限公司 车辆变道规划的方法、自动驾驶车辆和存储介质
CN114179815B (zh) * 2021-12-29 2023-08-18 阿波罗智联(北京)科技有限公司 确定车辆行驶轨迹的方法、装置、车辆、电子设备及介质
EP4375971A1 (de) * 2022-11-25 2024-05-29 Korea National University of Transportation Industry-Academic Cooperation Foundation Verfahren und vorrichtung zur gemeinsamen nutzung der absicht des fahrens zwischen autonomen und handgetriebenen fahrzeugen

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7418346B2 (en) * 1997-10-22 2008-08-26 Intelligent Technologies International, Inc. Collision avoidance methods and systems
US7629899B2 (en) * 1997-10-22 2009-12-08 Intelligent Technologies International, Inc. Vehicular communication arrangement and method
US7426437B2 (en) * 1997-10-22 2008-09-16 Intelligent Technologies International, Inc. Accident avoidance systems and methods
US8965677B2 (en) * 1998-10-22 2015-02-24 Intelligent Technologies International, Inc. Intra-vehicle information conveyance system and method
US8209120B2 (en) * 1997-10-22 2012-06-26 American Vehicular Sciences Llc Vehicular map database management techniques
US8255144B2 (en) * 1997-10-22 2012-08-28 Intelligent Technologies International, Inc. Intra-vehicle information conveyance system and method
JP3833845B2 (ja) 1999-04-21 2006-10-18 株式会社東芝 自動走行支援システム
GB0111979D0 (en) * 2001-05-17 2001-07-04 Lucas Industries Ltd Sensing apparatus for vehicles
JP3984523B2 (ja) 2002-09-27 2007-10-03 アルパイン株式会社 車車間通信方法
US7860639B2 (en) * 2003-02-27 2010-12-28 Shaoping Yang Road traffic control method and traffic facilities
JP4742547B2 (ja) 2004-09-13 2011-08-10 日産自動車株式会社 走行支援システム及び走行支援装置
US20080059015A1 (en) * 2006-06-09 2008-03-06 Whittaker William L Software architecture for high-speed traversal of prescribed routes
US8532862B2 (en) 2006-11-29 2013-09-10 Ryan A. Neff Driverless vehicle
US7843320B2 (en) * 2008-02-16 2010-11-30 Richard Louis Ponziani Turn signal appropritate use reminder system
JP5494332B2 (ja) * 2010-07-27 2014-05-14 トヨタ自動車株式会社 車両制御システム
US8744666B2 (en) * 2011-07-06 2014-06-03 Peloton Technology, Inc. Systems and methods for semi-autonomous vehicular convoys
DE102011111895A1 (de) * 2011-08-30 2013-02-28 Gm Global Technology Operations, Llc Vorrichtung und Verfahren zur Verhinderung einer Fahrzeugkollision, Fahrzeug
DE102012011994A1 (de) 2012-06-16 2013-12-19 Volkswagen Aktiengesellschaft Verfahren zur Unterstützung von Fahrerassistenz- und/oder Sicherheitsfunktionen von Kraftfahrzeugen
DE102012021282A1 (de) * 2012-10-29 2014-04-30 Audi Ag Verfahren zur Koordination des Betriebs von vollautomatisiert fahrenden Kraftfahrzeugen
US9047766B2 (en) 2013-04-09 2015-06-02 Here Global B.V. Method and apparatus for notifying drivers of space required for other vehicles
DE102013009860A1 (de) 2013-06-13 2014-12-18 Audi Ag Verfahren zur Koordination des Betriebs von Kraftfahrzeugen
DE102013215208A1 (de) 2013-08-02 2015-02-05 Ford Global Technologies, Llc Verfahren und Vorrichtung zur Einparkunterstützung eines Fahrzeuges
DE102013215260A1 (de) 2013-08-02 2015-02-05 Ford Global Technologies, Llc Verfahren und Vorrichtung zum Betreiben eines Kraftfahrzeuges
WO2015096878A1 (en) * 2013-12-24 2015-07-02 Volvo Truck Corporation Method and system for driver assistance for a vehicle
DE102014215980A1 (de) 2014-08-12 2016-02-18 Volkswagen Aktiengesellschaft Kraftfahrzeug mit kooperativem autonomen Fahrmodus
JP6037350B2 (ja) 2015-01-08 2016-12-07 三菱電機株式会社 車間距離調整支援装置
US9836056B2 (en) * 2015-06-05 2017-12-05 Bao Tran Smart vehicle
US9711050B2 (en) * 2015-06-05 2017-07-18 Bao Tran Smart vehicle
US20160357262A1 (en) * 2015-06-05 2016-12-08 Arafat M.A. ANSARI Smart vehicle
US20160357187A1 (en) * 2015-06-05 2016-12-08 Arafat M.A. ANSARI Smart vehicle
RU2752430C2 (ru) 2016-04-06 2021-07-28 АйПиКОМ ГМБХ УНД КО. КГ Способ обеспечения кооперативной осведомленности в интеллектуальных транспортных системах
US9878657B2 (en) * 2016-06-15 2018-01-30 Denso International America, Inc. Projected laser lines/graphics onto the road for indicating truck platooning/warning to other drivers of presence of truck platoon
US9928746B1 (en) 2016-09-16 2018-03-27 Ford Global Technologies, Llc Vehicle-to-vehicle cooperation to marshal traffic

Also Published As

Publication number Publication date
CN108510795A (zh) 2018-09-07
US11142203B2 (en) 2021-10-12
CN108510795B (zh) 2022-08-26
US20180244275A1 (en) 2018-08-30
RU2018105265A (ru) 2019-08-13
GB2561962A (en) 2018-10-31
GB201802993D0 (en) 2018-04-11

Similar Documents

Publication Publication Date Title
DE102018103916A1 (de) Kooperative Fahrzeugnavigation
DE102016203213B4 (de) Fahrzeugsteuerungsvorrichtung
DE102016112859B4 (de) Navigationsvorrichtung für ein autonom fahrendes Fahrzeug
DE102016204593B4 (de) Fahrzeugfahrregelungsvorrichtung
EP2881829B1 (de) Verfahren zum automatischen Steuern eines Fahrzeugs, Vorrichtung zum Erzeugen von Steuersignalen für ein Fahrzeug und Fahrzeug
DE112015001150B4 (de) Verfahren, Vorrichtung und System zur Unterstützung von Platooning
DE102018102513A1 (de) Fahrzeugkommunikationssystem und Fahrzeugsteuerungsvorrichtung
DE112018001277T5 (de) Informationsverarbeitungsvorrichtung und informationsverarbeitungsverfahren
DE102019108795A1 (de) Fahrzeugwegidentifikation
DE102016208282A1 (de) Fahrzeugsteuerungsvorrichtung
DE102016206458A1 (de) Fahrzeugfahrsteuervorrichtung
WO2015197353A2 (de) Verfahren zur erstellung eines umfeldmodells eines fahrzeugs
DE102018101114A1 (de) Fahrspurwechsel eines fahrzeugs
DE102015205133A1 (de) Verfahren und Vorrichtung zum Ermitteln einer Bewegungsplanung für ein zumindest teilweise automatisiertes Fahren eines Fahrzeugs
DE102019122757A1 (de) Fahrzeuggeschwindigkeitssteuerung
DE102018118458A1 (de) Fahrassistenzvorrichtung und speichermedium
DE102015015277A1 (de) Technik zum automatisierten Anhalten eines Fahrzeugs in einem Zielbereich
WO2020177958A1 (de) Verfahren und steuereinheit zur erkennung eines ein- bzw. ausscherenden fahrzeugs
DE102021101086A1 (de) Fahrzeugbetriebsmodi
DE102020100749A1 (de) Ermittlung von wegen für fahrzeuge
DE102015205135A1 (de) Verfahren zum Ermitteln eines für eine zumindest teilweise automatisierte Bewegung des Fahrzeugs nutzbaren Automatisierungsgrads
DE102020122090A1 (de) Verbesserte kollisionsvermeidung
DE102017126026A1 (de) Betrieb einer verkehrsampel
DE112019000352T5 (de) Bekannte spurabstände für automatisiertes fahren
DE102020131949A1 (de) System und verfahren zum erlernen einer fahrerpräferenz und zum anpassen einer spurzentrierungssteuerung an ein fahrerverhalten

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: BONSMANN - BONSMANN - FRANK PATENTANWAELTE, DE